@ui5/webcomponents 1.21.2 → 1.22.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (833) hide show
  1. package/CHANGELOG.md +19 -4
  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 +7 -19
  36. package/dist/Card.js +3 -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 +30 -49
  45. package/dist/CheckBox.js +24 -18
  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 +116 -129
  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 +12 -39
  114. package/dist/ListItem.js +3 -12
  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 +20 -70
  132. package/dist/MultiComboBox.js +12 -25
  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 +41 -0
  144. package/dist/NavigationMenu.js +120 -0
  145. package/dist/NavigationMenu.js.map +1 -0
  146. package/dist/NavigationMenuItem.d.ts +59 -0
  147. package/dist/NavigationMenuItem.js +47 -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 +13 -18
  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 +7 -34
  311. package/dist/TreeItem.js +5 -20
  312. package/dist/TreeItem.js.map +1 -1
  313. package/dist/TreeItemBase.d.ts +11 -51
  314. package/dist/TreeItemBase.js +2 -16
  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 +20954 -0
  422. package/dist/custom-elements.json +16076 -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/i18n/messagebundle_en.json +1 -1
  427. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  428. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  429. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  430. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  431. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  432. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  433. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  434. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  435. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  436. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  437. package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
  438. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  439. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  440. package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
  441. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  442. package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
  443. package/dist/generated/i18n/i18n-defaults.d.ts +10 -2
  444. package/dist/generated/i18n/i18n-defaults.js +10 -2
  445. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  446. package/dist/generated/templates/BadgeTemplate.lit.js +8 -3
  447. package/dist/generated/templates/BadgeTemplate.lit.js.map +1 -1
  448. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +1 -1
  449. package/dist/generated/templates/BreadcrumbsTemplate.lit.js.map +1 -1
  450. package/dist/generated/templates/CardTemplate.lit.js +1 -1
  451. package/dist/generated/templates/CardTemplate.lit.js.map +1 -1
  452. package/dist/generated/templates/CheckBoxTemplate.lit.js +6 -4
  453. package/dist/generated/templates/CheckBoxTemplate.lit.js.map +1 -1
  454. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +1 -1
  455. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js.map +1 -1
  456. package/dist/generated/templates/NavigationMenuTemplate.lit.d.ts +4 -0
  457. package/dist/generated/templates/NavigationMenuTemplate.lit.js +21 -0
  458. package/dist/generated/templates/NavigationMenuTemplate.lit.js.map +1 -0
  459. package/dist/generated/templates/SplitButtonTemplate.lit.js +1 -1
  460. package/dist/generated/templates/SplitButtonTemplate.lit.js.map +1 -1
  461. package/dist/generated/themes/Avatar.css.js +1 -1
  462. package/dist/generated/themes/Avatar.css.js.map +1 -1
  463. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  464. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  465. package/dist/generated/themes/Badge.css.js +1 -1
  466. package/dist/generated/themes/Badge.css.js.map +1 -1
  467. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  468. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  469. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  470. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  471. package/dist/generated/themes/Button.css.js +1 -1
  472. package/dist/generated/themes/Button.css.js.map +1 -1
  473. package/dist/generated/themes/Calendar.css.js +1 -1
  474. package/dist/generated/themes/Calendar.css.js.map +1 -1
  475. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  476. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  477. package/dist/generated/themes/Card.css.js +1 -1
  478. package/dist/generated/themes/Card.css.js.map +1 -1
  479. package/dist/generated/themes/CardHeader.css.js +1 -1
  480. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  481. package/dist/generated/themes/Carousel.css.js +1 -1
  482. package/dist/generated/themes/Carousel.css.js.map +1 -1
  483. package/dist/generated/themes/CheckBox.css.js +1 -1
  484. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  485. package/dist/generated/themes/ColorPalette.css.js +1 -1
  486. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  487. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  488. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  489. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  490. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  491. package/dist/generated/themes/ColorPicker.css.js +1 -1
  492. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  493. package/dist/generated/themes/ComboBox.css.js +1 -1
  494. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  495. package/dist/generated/themes/CustomListItem.css.js +1 -1
  496. package/dist/generated/themes/CustomListItem.css.js.map +1 -1
  497. package/dist/generated/themes/DatePicker.css.js +1 -1
  498. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  499. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  500. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  501. package/dist/generated/themes/DayPicker.css.js +1 -1
  502. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  503. package/dist/generated/themes/Dialog.css.js +1 -1
  504. package/dist/generated/themes/Dialog.css.js.map +1 -1
  505. package/dist/generated/themes/FileUploader.css.js +1 -1
  506. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  507. package/dist/generated/themes/GroupHeaderListItem.css.js +1 -1
  508. package/dist/generated/themes/GroupHeaderListItem.css.js.map +1 -1
  509. package/dist/generated/themes/GrowingButton.css.js +1 -1
  510. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  511. package/dist/generated/themes/Icon.css.js +1 -1
  512. package/dist/generated/themes/Icon.css.js.map +1 -1
  513. package/dist/generated/themes/Input.css.js +1 -1
  514. package/dist/generated/themes/Input.css.js.map +1 -1
  515. package/dist/generated/themes/InputIcon.css.js +1 -1
  516. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  517. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  518. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  519. package/dist/generated/themes/Link.css.js +1 -1
  520. package/dist/generated/themes/Link.css.js.map +1 -1
  521. package/dist/generated/themes/List.css.js +1 -1
  522. package/dist/generated/themes/List.css.js.map +1 -1
  523. package/dist/generated/themes/ListItem.css.js +1 -1
  524. package/dist/generated/themes/ListItem.css.js.map +1 -1
  525. package/dist/generated/themes/ListItemBase.css.js +1 -1
  526. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  527. package/dist/generated/themes/Menu.css.js +1 -1
  528. package/dist/generated/themes/Menu.css.js.map +1 -1
  529. package/dist/generated/themes/MessageStrip.css.js +1 -1
  530. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  531. package/dist/generated/themes/MonthPicker.css.js +1 -1
  532. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  533. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  534. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  535. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  536. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  537. package/dist/generated/themes/MultiInput.css.js +1 -1
  538. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  539. package/dist/generated/themes/NavigationMenu.css.d.ts +3 -0
  540. package/dist/generated/themes/NavigationMenu.css.js +9 -0
  541. package/dist/generated/themes/NavigationMenu.css.js.map +1 -0
  542. package/dist/generated/themes/Panel.css.js +1 -1
  543. package/dist/generated/themes/Panel.css.js.map +1 -1
  544. package/dist/generated/themes/Popover.css.js +1 -1
  545. package/dist/generated/themes/Popover.css.js.map +1 -1
  546. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  547. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  548. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  549. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  550. package/dist/generated/themes/RadioButton.css.js +1 -1
  551. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  552. package/dist/generated/themes/RangeSlider.css.js +1 -1
  553. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  554. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  555. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  556. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  557. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  558. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  559. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  560. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  561. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  562. package/dist/generated/themes/Select.css.js +1 -1
  563. package/dist/generated/themes/Select.css.js.map +1 -1
  564. package/dist/generated/themes/SelectMenu.css.js +1 -1
  565. package/dist/generated/themes/SelectMenu.css.js.map +1 -1
  566. package/dist/generated/themes/SelectPopover.css.js +1 -1
  567. package/dist/generated/themes/SelectPopover.css.js.map +1 -1
  568. package/dist/generated/themes/SliderBase.css.js +1 -1
  569. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  570. package/dist/generated/themes/SplitButton.css.js +1 -1
  571. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  572. package/dist/generated/themes/StepInput.css.js +1 -1
  573. package/dist/generated/themes/StepInput.css.js.map +1 -1
  574. package/dist/generated/themes/Switch.css.js +1 -1
  575. package/dist/generated/themes/Switch.css.js.map +1 -1
  576. package/dist/generated/themes/TabContainer.css.js +1 -1
  577. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  578. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  579. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  580. package/dist/generated/themes/TabInStrip.css.js +1 -1
  581. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  582. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  583. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  584. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  585. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  586. package/dist/generated/themes/Table.css.js +1 -1
  587. package/dist/generated/themes/Table.css.js.map +1 -1
  588. package/dist/generated/themes/TableCell.css.js +1 -1
  589. package/dist/generated/themes/TableCell.css.js.map +1 -1
  590. package/dist/generated/themes/TableColumn.css.js +1 -1
  591. package/dist/generated/themes/TableColumn.css.js.map +1 -1
  592. package/dist/generated/themes/TableGroupRow.css.js +1 -1
  593. package/dist/generated/themes/TableGroupRow.css.js.map +1 -1
  594. package/dist/generated/themes/TableRow.css.js +1 -1
  595. package/dist/generated/themes/TableRow.css.js.map +1 -1
  596. package/dist/generated/themes/TextArea.css.js +1 -1
  597. package/dist/generated/themes/TextArea.css.js.map +1 -1
  598. package/dist/generated/themes/TimePicker.css.js +1 -1
  599. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  600. package/dist/generated/themes/Toast.css.js +1 -1
  601. package/dist/generated/themes/Toast.css.js.map +1 -1
  602. package/dist/generated/themes/ToggleButton.css.js +1 -1
  603. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  604. package/dist/generated/themes/Token.css.js +1 -1
  605. package/dist/generated/themes/Token.css.js.map +1 -1
  606. package/dist/generated/themes/Tokenizer.css.js +1 -1
  607. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  608. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  609. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  610. package/dist/generated/themes/Toolbar.css.js +1 -1
  611. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  612. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  613. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  614. package/dist/generated/themes/TreeItem.css.js +1 -1
  615. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  616. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  617. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  618. package/dist/generated/themes/WheelSlider.css.js +1 -1
  619. package/dist/generated/themes/WheelSlider.css.js.map +1 -1
  620. package/dist/generated/themes/YearPicker.css.js +1 -1
  621. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  622. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  623. package/dist/generated/themes/sap_belize/parameters-bundle.css.js.map +1 -1
  624. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  625. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js.map +1 -1
  626. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  627. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js.map +1 -1
  628. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  629. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  630. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  631. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  632. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  633. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  634. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  635. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  636. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  637. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  638. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  639. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  640. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
  641. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
  642. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  643. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
  644. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  645. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  646. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
  647. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
  648. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  649. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  650. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
  651. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
  652. package/dist/types/AvatarColorScheme.d.ts +0 -15
  653. package/dist/types/AvatarColorScheme.js +0 -15
  654. package/dist/types/AvatarColorScheme.js.map +1 -1
  655. package/dist/types/AvatarGroupType.d.ts +0 -6
  656. package/dist/types/AvatarGroupType.js +0 -6
  657. package/dist/types/AvatarGroupType.js.map +1 -1
  658. package/dist/types/AvatarShape.d.ts +0 -6
  659. package/dist/types/AvatarShape.js +0 -6
  660. package/dist/types/AvatarShape.js.map +1 -1
  661. package/dist/types/AvatarSize.d.ts +0 -9
  662. package/dist/types/AvatarSize.js +0 -9
  663. package/dist/types/AvatarSize.js.map +1 -1
  664. package/dist/types/BackgroundDesign.d.ts +0 -7
  665. package/dist/types/BackgroundDesign.js +0 -7
  666. package/dist/types/BackgroundDesign.js.map +1 -1
  667. package/dist/types/BadgeDesign.d.ts +49 -0
  668. package/dist/types/BadgeDesign.js +51 -0
  669. package/dist/types/BadgeDesign.js.map +1 -0
  670. package/dist/types/BorderDesign.d.ts +0 -6
  671. package/dist/types/BorderDesign.js +0 -6
  672. package/dist/types/BorderDesign.js.map +1 -1
  673. package/dist/types/BreadcrumbsDesign.d.ts +0 -6
  674. package/dist/types/BreadcrumbsDesign.js +0 -6
  675. package/dist/types/BreadcrumbsDesign.js.map +1 -1
  676. package/dist/types/BreadcrumbsSeparatorStyle.d.ts +0 -10
  677. package/dist/types/BreadcrumbsSeparatorStyle.js +0 -10
  678. package/dist/types/BreadcrumbsSeparatorStyle.js.map +1 -1
  679. package/dist/types/BusyIndicatorSize.d.ts +0 -7
  680. package/dist/types/BusyIndicatorSize.js +0 -7
  681. package/dist/types/BusyIndicatorSize.js.map +1 -1
  682. package/dist/types/ButtonDesign.d.ts +0 -10
  683. package/dist/types/ButtonDesign.js +0 -10
  684. package/dist/types/ButtonDesign.js.map +1 -1
  685. package/dist/types/ButtonType.d.ts +0 -7
  686. package/dist/types/ButtonType.js +0 -7
  687. package/dist/types/ButtonType.js.map +1 -1
  688. package/dist/types/CalendarPickersMode.d.ts +6 -10
  689. package/dist/types/CalendarPickersMode.js +6 -10
  690. package/dist/types/CalendarPickersMode.js.map +1 -1
  691. package/dist/types/CalendarSelectionMode.d.ts +0 -7
  692. package/dist/types/CalendarSelectionMode.js +0 -7
  693. package/dist/types/CalendarSelectionMode.js.map +1 -1
  694. package/dist/types/CarouselArrowsPlacement.d.ts +0 -6
  695. package/dist/types/CarouselArrowsPlacement.js +0 -6
  696. package/dist/types/CarouselArrowsPlacement.js.map +1 -1
  697. package/dist/types/CarouselPageIndicatorStyle.d.ts +0 -6
  698. package/dist/types/CarouselPageIndicatorStyle.js +0 -6
  699. package/dist/types/CarouselPageIndicatorStyle.js.map +1 -1
  700. package/dist/types/ComboBoxFilter.d.ts +0 -8
  701. package/dist/types/ComboBoxFilter.js +0 -8
  702. package/dist/types/ComboBoxFilter.js.map +1 -1
  703. package/dist/types/HasPopup.d.ts +0 -9
  704. package/dist/types/HasPopup.js +0 -9
  705. package/dist/types/HasPopup.js.map +1 -1
  706. package/dist/types/IconDesign.d.ts +0 -12
  707. package/dist/types/IconDesign.js +0 -12
  708. package/dist/types/IconDesign.js.map +1 -1
  709. package/dist/types/InputType.d.ts +0 -10
  710. package/dist/types/InputType.js +0 -10
  711. package/dist/types/InputType.js.map +1 -1
  712. package/dist/types/LinkDesign.d.ts +0 -7
  713. package/dist/types/LinkDesign.js +0 -7
  714. package/dist/types/LinkDesign.js.map +1 -1
  715. package/dist/types/ListGrowingMode.d.ts +0 -7
  716. package/dist/types/ListGrowingMode.js +0 -7
  717. package/dist/types/ListGrowingMode.js.map +1 -1
  718. package/dist/types/ListItemType.d.ts +0 -8
  719. package/dist/types/ListItemType.js +0 -8
  720. package/dist/types/ListItemType.js.map +1 -1
  721. package/dist/types/ListMode.d.ts +0 -11
  722. package/dist/types/ListMode.js +0 -11
  723. package/dist/types/ListMode.js.map +1 -1
  724. package/dist/types/ListSeparators.d.ts +0 -7
  725. package/dist/types/ListSeparators.js +0 -7
  726. package/dist/types/ListSeparators.js.map +1 -1
  727. package/dist/types/MessageStripDesign.d.ts +0 -8
  728. package/dist/types/MessageStripDesign.js +0 -8
  729. package/dist/types/MessageStripDesign.js.map +1 -1
  730. package/dist/types/PanelAccessibleRole.d.ts +0 -7
  731. package/dist/types/PanelAccessibleRole.js +0 -7
  732. package/dist/types/PanelAccessibleRole.js.map +1 -1
  733. package/dist/types/PopoverHorizontalAlign.d.ts +0 -8
  734. package/dist/types/PopoverHorizontalAlign.js +0 -8
  735. package/dist/types/PopoverHorizontalAlign.js.map +1 -1
  736. package/dist/types/PopoverPlacementType.d.ts +0 -8
  737. package/dist/types/PopoverPlacementType.js +0 -8
  738. package/dist/types/PopoverPlacementType.js.map +1 -1
  739. package/dist/types/PopoverVerticalAlign.d.ts +0 -8
  740. package/dist/types/PopoverVerticalAlign.js +0 -8
  741. package/dist/types/PopoverVerticalAlign.js.map +1 -1
  742. package/dist/types/PopupAccessibleRole.d.ts +0 -7
  743. package/dist/types/PopupAccessibleRole.js +0 -7
  744. package/dist/types/PopupAccessibleRole.js.map +1 -1
  745. package/dist/types/Priority.d.ts +0 -8
  746. package/dist/types/Priority.js +0 -8
  747. package/dist/types/Priority.js.map +1 -1
  748. package/dist/types/SegmentedButtonMode.d.ts +0 -6
  749. package/dist/types/SegmentedButtonMode.js +0 -6
  750. package/dist/types/SegmentedButtonMode.js.map +1 -1
  751. package/dist/types/SemanticColor.d.ts +0 -9
  752. package/dist/types/SemanticColor.js +0 -9
  753. package/dist/types/SemanticColor.js.map +1 -1
  754. package/dist/types/SwitchDesign.d.ts +0 -6
  755. package/dist/types/SwitchDesign.js +0 -6
  756. package/dist/types/SwitchDesign.js.map +1 -1
  757. package/dist/types/TabContainerBackgroundDesign.d.ts +0 -7
  758. package/dist/types/TabContainerBackgroundDesign.js +0 -7
  759. package/dist/types/TabContainerBackgroundDesign.js.map +1 -1
  760. package/dist/types/TabContainerTabsPlacement.d.ts +0 -6
  761. package/dist/types/TabContainerTabsPlacement.js +0 -6
  762. package/dist/types/TabContainerTabsPlacement.js.map +1 -1
  763. package/dist/types/TabLayout.d.ts +0 -6
  764. package/dist/types/TabLayout.js +0 -6
  765. package/dist/types/TabLayout.js.map +1 -1
  766. package/dist/types/TableColumnPopinDisplay.d.ts +0 -6
  767. package/dist/types/TableColumnPopinDisplay.js +0 -6
  768. package/dist/types/TableColumnPopinDisplay.js.map +1 -1
  769. package/dist/types/TableGrowingMode.d.ts +0 -7
  770. package/dist/types/TableGrowingMode.js +0 -7
  771. package/dist/types/TableGrowingMode.js.map +1 -1
  772. package/dist/types/TableMode.d.ts +0 -7
  773. package/dist/types/TableMode.js +0 -7
  774. package/dist/types/TableMode.js.map +1 -1
  775. package/dist/types/TableRowType.d.ts +0 -6
  776. package/dist/types/TableRowType.js +0 -6
  777. package/dist/types/TableRowType.js.map +1 -1
  778. package/dist/types/TabsOverflowMode.d.ts +0 -6
  779. package/dist/types/TabsOverflowMode.js +0 -6
  780. package/dist/types/TabsOverflowMode.js.map +1 -1
  781. package/dist/types/TitleLevel.d.ts +0 -10
  782. package/dist/types/TitleLevel.js +0 -10
  783. package/dist/types/TitleLevel.js.map +1 -1
  784. package/dist/types/ToastPlacement.d.ts +0 -13
  785. package/dist/types/ToastPlacement.js +0 -13
  786. package/dist/types/ToastPlacement.js.map +1 -1
  787. package/dist/types/ToolbarAlign.d.ts +2 -9
  788. package/dist/types/ToolbarAlign.js +2 -9
  789. package/dist/types/ToolbarAlign.js.map +1 -1
  790. package/dist/types/ToolbarItemOverflowBehavior.d.ts +1 -9
  791. package/dist/types/ToolbarItemOverflowBehavior.js +1 -9
  792. package/dist/types/ToolbarItemOverflowBehavior.js.map +1 -1
  793. package/dist/types/WrappingType.d.ts +0 -6
  794. package/dist/types/WrappingType.js +0 -6
  795. package/dist/types/WrappingType.js.map +1 -1
  796. package/package.json +9 -9
  797. package/src/Badge.hbs +26 -5
  798. package/src/Breadcrumbs.hbs +2 -0
  799. package/src/Card.hbs +3 -2
  800. package/src/CheckBox.hbs +25 -18
  801. package/src/MultiComboBoxPopover.hbs +2 -1
  802. package/src/NavigationMenu.hbs +159 -0
  803. package/src/SplitButton.hbs +1 -7
  804. package/src/i18n/messagebundle.properties +25 -1
  805. package/src/i18n/messagebundle_en.properties +15 -1
  806. package/src/i18n/messagebundle_en_US_saprigi.properties +15 -1
  807. package/src/themes/Badge.css +505 -39
  808. package/src/themes/Breadcrumbs.css +22 -22
  809. package/src/themes/CheckBox.css +18 -1
  810. package/src/themes/NavigationMenu.css +69 -0
  811. package/src/themes/SplitButton.css +62 -162
  812. package/src/themes/base/Badge-parameters.css +106 -3
  813. package/src/themes/base/SplitButton-parameters.css +3 -24
  814. package/src/themes/base/rtl-parameters.css +0 -14
  815. package/src/themes/base/sizes-parameters.css +1 -2
  816. package/src/themes/sap_belize/BusyIndicator-parameters.css +5 -0
  817. package/src/themes/sap_belize/parameters-bundle.css +1 -1
  818. package/src/themes/sap_fiori_3_hcb/SplitButton-parameters.css +10 -11
  819. package/src/themes/sap_fiori_3_hcw/SplitButton-parameters.css +10 -10
  820. package/src/themes/sap_horizon/Badge-parameters.css +3 -5
  821. package/src/themes/sap_horizon/SplitButton-parameters.css +1 -14
  822. package/src/themes/sap_horizon_dark/Badge-parameters.css +3 -5
  823. package/src/themes/sap_horizon_dark/SplitButton-parameters.css +1 -15
  824. package/src/themes/sap_horizon_dark_exp/SplitButton-parameters.css +0 -15
  825. package/src/themes/sap_horizon_exp/SplitButton-parameters.css +0 -15
  826. package/src/themes/sap_horizon_hcb/Badge-parameters.css +108 -5
  827. package/src/themes/sap_horizon_hcb/SplitButton-parameters.css +10 -10
  828. package/src/themes/sap_horizon_hcb_exp/SplitButton-parameters.css +10 -10
  829. package/src/themes/sap_horizon_hcw/Badge-parameters.css +108 -2
  830. package/src/themes/sap_horizon_hcw/SplitButton-parameters.css +10 -10
  831. package/src/themes/sap_horizon_hcw_exp/SplitButton-parameters.css +10 -10
  832. package/tsconfig.json +1 -0
  833. package/dist/api.json +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"TimePickerClock.js","sourceRoot":"","sources":["../src/TimePickerClock.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 type { ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\n\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\n\n// Template\nimport TimePickerClockTemplate from \"./generated/templates/TimePickerClockTemplate.lit.js\";\n\n// Styles\nimport TimePickerClockCss from \"./generated/themes/TimePickerClock.css.js\";\n\ntype TimePickerClockChangeEventDetail = {\n\tvalue: number,\n\tstringValue: string,\n\tfinalChange: boolean,\n}\n\ntype TimePickerClockItem = {\n\tangle?: number,\n\titem?: string,\n\tinnerItem?: string,\n\touterStyles?: object,\n\tinnerStyles?: object,\n}\n\ntype TimePickerClockSelection = {\n\tshowMarker: boolean,\n\titemClasses?: string,\n\tinnerItemClasses?: string,\n}\n\ntype TimePickerClockDimensions = {\n\tradius: number,\n\tcenterX: number,\n\tcenterY: number,\n\tdotHeight: number,\n\tnumberHeight: number,\n\touterMax: number,\n\touterMin: number,\n\tinnerMax: number,\n\tinnerMin: number,\n\toffsetX: number,\n\toffsetY: number,\n}\n\ntype TimePickerClockSelectedItem = TimePickerClockItem & TimePickerClockSelection;\n\nconst ANIMATION_DURATION_MAX = 200; // total animation duration, without the delay before firing the event\nconst ANIMATION_DELAY_EVENT = 100; // delay before firing the event\nconst CLOCK_ANGLE_STEP = 6;\nconst CLOCK_NUMBER_CLASS = \"ui5-tp-clock-number\";\nconst CLOCK_NUMBER_HOVER_CLASS = \"ui5-tp-clock-number-hover\";\nconst CLOCK_NUMBER_SELECTED_CLASS = \"ui5-tp-clock-selected\";\nconst CLOCK_MIDDOT_CLASS = \"ui5-tp-clock-mid-dot\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * <code>ui5-time-picker-clock</code> allows selecting of hours,minutes or seconds (depending on property set).\n * The component supports interactions with mouse, touch and mouse wheel.\n * Depending on settings, the clock can display only outer set of items (when the clock displays hours in 12-hour mode,\n * minutes or seconds), or outer and inner sets of items (when the clock displays hours in 24-hours mode).\n * The step for displaying or selecting of items can be configured.\n *\n * <code>ui5-time-picker-clock</code> is used as part of <code>ui5-time-selection-clocks</code> component, which\n * is used in <code>ui5-time-picker</code> component respectively.\n *\n * <h3>Usage</h3>\n *\n * <code>ui5-time-picker-clock</code> can display hours, minutes or seconds\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/TimePickerClock.js\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.TimePickerClock\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-time-picker-clock\n * @since 1.15.0\n * @private\n */\n@customElement({\n\ttag: \"ui5-time-picker-clock\",\n\trenderer: litRender,\n\tstyles: TimePickerClockCss,\n\ttemplate: TimePickerClockTemplate,\n})\n\n/**\n * Fired when a value of clock is changed.\n *\n * @event sap.ui.webc.main.TimePickerClock#change\n * @param { integer } value The new <code>value</code> of the clock.\n * @param { string } stringValue The new <code>value</code> of the clock, as string, zero-prepended when necessary.\n * @param { boolean } finalChange <code>true</code> when a value is selected and confirmed, <code>false</code> when a value is only selected but not confirmed.\n */\n@event(\"change\", {\n\tdetail: {\n\t\tvalue: { type: Integer },\n\t\tstringValue: { type: String },\n\t\tfinalChange: { type: Boolean },\n\t},\n})\n\nclass TimePickerClock extends UI5Element {\n\t/**\n\t * Determines whether the component is displayed as disabled.\n\t *\n\t * @name sap.ui.webc.main.TimePickerClock.prototype.disabled\n\t * @type {boolean}\n\t * @defaultvalue false\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Determines whether the component is active (visible).\n\t *\n\t * @name sap.ui.webc.main.TimePickerClock.prototype.active\n\t * @type {boolean}\n\t * @defaultvalue false\n\t */\n\t@property({ type: Boolean })\n\tactive!: boolean;\n\n\t/**\n\t * Minimum item value for the outer circle of the clock.\n\t *\n\t * @name sap.ui.webc.main.TimePickerClock.prototype.itemMin\n\t * @type {integer}\n\t * @defaultvalue -1\n\t */\n\t@property({ validator: Integer, defaultValue: -1 })\n\titemMin!: number;\n\n\t/**\n\t * Maximum item value for the outer circle of the clock.\n\t *\n\t * @name sap.ui.webc.main.TimePickerClock.prototype.itemMax\n\t * @type {integer}\n\t * @defaultvalue -1\n\t */\n\t@property({ validator: Integer, defaultValue: -1 })\n\titemMax!: number;\n\n\t/**\n\t * If set to <code>true</code>, an inner circle is displayed.\n\t * The first item value of the inner circle will be itemMax + 1\n\t *\n\t * @name sap.ui.webc.main.TimePickerClock.prototype.showInnerCircle\n\t * @type {boolean}\n\t * @defaultvalue false\n\t */\n\t@property({ type: Boolean })\n\tshowInnerCircle!: boolean;\n\n\t/**\n\t * Label of the clock dial - for example, 'Hours', 'Minutes', or 'Seconds'.\n\t *\n\t * @name sap.ui.webc.main.TimePickerClock.prototype.label\n\t * @type {string}\n\t * @defaultvalue undefined\n\t */\n\t@property({ type: String, defaultValue: undefined })\n\tlabel?: string;\n\n\t/**\n\t * If set to <code>true</code>, a surrounding circle with markers (dots) will be hidden.\n\t * (for example, on the 'Minutes' clock-dial, markers represent minutes).\n\t *\n\t * @name sap.ui.webc.main.TimePickerClock.prototype.hideFractions\n\t * @type {boolean}\n\t * @defaultvalue false\n\t */\n\t@property({ type: Boolean })\n\thideFractions!: boolean;\n\n\t/**\n\t * If provided, this will replace the last item displayed. If there is only one (outer) circle,\n\t * the last item from outer circle will be replaced; if there is an inner circle too, the last\n\t * item of inner circle will be replaced. Usually, the last item '24' is replaced with '0'.\n\t *\n\t * @name sap.ui.webc.main.TimePickerClock.prototype.lastItemReplacement\n\t * @type {integer}\n\t * @defaultvalue -1\n\t */\n\t@property({ validator: Integer, defaultValue: -1 })\n\tlastItemReplacement!: number;\n\n\t/**\n\t * Prepend with zero flag. If <code>true</code>, values less than 10 will be prepend with 0.\n\t *\n\t * @name sap.ui.webc.main.TimePickerClock.prototype.prependZero\n\t * @type {boolean}\n\t * @defaultvalue false\n\t */\n\t@property({ type: Boolean })\n\tprependZero!: boolean;\n\n\t/**\n\t * The currently selected value of the clock.\n\t *\n\t * @name sap.ui.webc.main.TimePickerClock.prototype.selectedValue\n\t * @type {integer}\n\t * @defaultvalue -1\n\t */\n\t@property({ validator: Integer, defaultValue: -1 })\n\tselectedValue!: number;\n\n\t/**\n\t * The step for displaying of one unit of items.\n\t * 1 means 1/60 of the circle.\n\t * The default display step is 5 which means minutes and seconds are displayed as \"0\", \"5\", \"10\", etc.\n\t * For hours the display step must be set to 1.\n\t *\n\t * @name sap.ui.webc.main.TimePickerClock.prototype.displayStep\n\t * @type {integer}\n\t * @defaultvalue 5\n\t */\n\t@property({ validator: Integer, defaultValue: 5 })\n\tdisplayStep!: number;\n\n\t/**\n\t * The step for selection of items.\n\t * 1 means 1 unit:\n\t * - if the clock displays hours - 1 unit = 1 hour\n\t * - if the clock displays minutes/seconds - 1 unit = 1 minute/second\n\t *\n\t * @name sap.ui.webc.main.TimePickerClock.prototype.valueStep\n\t * @type {integer}\n\t * @defaultvalue 1\n\t */\n\t@property({ validator: Integer, defaultValue: 1 })\n\tvalueStep!: number;\n\n\t/**\n\t * Defines the currently available Time Picker Clock items depending on Clock setup.\n\t *\n\t * @type {Array}\n\t */\n\t@property({ type: Object, multiple: true })\n\t_items!: Array<TimePickerClockItem>;\n\n\t/**\n\t * Defines the currently selected Time Picker Clock item.\n\t *\n\t * @type {TimePickerClockSelectedItem}\n\t */\n\t@property({ type: Object })\n\t_selectedItem!: TimePickerClockSelectedItem;\n\n\t/**\n\t * Keeps variables used in interaction calculations.\n\t *\n\t * @type {TimePickerClockDimensions}\n\t */\n\t@property({ type: Object })\n\t_dimensionParameters!: TimePickerClockDimensions;\n\n\t/**\n\t * Mousedown or Touchstart event flag.\n\t *\n\t * @type {boolean}\n\t * @defaultvalue false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_mouseOrTouchDown!: boolean;\n\n\t/**\n\t * Cancel Mouseout flag.\n\t *\n\t * @type {boolean}\n\t * @defaultvalue false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_cancelTouchOut!: boolean;\n\n\t/**\n\t * Calculated selected value of the clock during interactions.\n\t *\n\t * @type {integer}\n\t * @defaultvalue -1\n\t */\n\t@property({ validator: Integer, defaultValue: -1, noAttribute: true })\n\t_selectedValue!: number;\n\n\t/**\n\t * Selected value of the clock during interactions.\n\t *\n\t * @type {integer}\n\t * @defaultvalue -1\n\t */\n\t@property({ validator: Integer, defaultValue: -1, noAttribute: true })\n\t_movSelectedValue!: number;\n\n\t/**\n\t * Hovered value of the clock during interactions.\n\t *\n\t * @type {integer}\n\t * @defaultvalue -1\n\t */\n\t@property({ validator: Integer, defaultValue: -1, noAttribute: true })\n\t_hoveredValue!: number;\n\n\t/**\n\t * Previously hovered value of the clock during interactions.\n\t *\n\t * @type {integer}\n\t * @defaultvalue -1\n\t */\n\t@property({ validator: Integer, defaultValue: -1, noAttribute: true })\n\t_prevHoveredValue!: number;\n\n\t/**\n\t * Animation in progress flag.\n\t *\n\t * @type {boolean}\n\t * @defaultvalue false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_animationInProgress!: boolean;\n\n\t_fnOnMouseOutUp: () => void;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._fnOnMouseOutUp = () => {\n\t\t\tthis._mouseOrTouchDown = false;\n\t\t};\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn <ClassMap>{\n\t\t\tclock: {\n\t\t\t\t\"ui5-tp-clock\": true,\n\t\t\t\t\"ui5-tp-clock-inner\": this.showInnerCircle,\n\t\t\t\t\"ui5-tp-clock-active\": this.active,\n\t\t\t},\n\t\t};\n\t}\n\n\tonEnterDOM() {\n\t\tdocument.addEventListener(\"mouseup\", this._fnOnMouseOutUp, false);\n\t}\n\n\tonExitDOM() {\n\t\tdocument.removeEventListener(\"mouseup\", this._fnOnMouseOutUp, false);\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._prepareClockItems();\n\t\tconst value: number = this._fixReplacementValue(this.selectedValue);\n\t\tthis._updateSelectedValueObject(value);\n\t}\n\n\t/**\n\t * Returns the real value of the passed clock item, if the replacement must be done, returns the replaced value.\n\t *\n\t * @param {number} value The value of the clock item\n\t * @returns {number} The real/replaced value\n\t */\n\t_fixReplacementValue(value: number) {\n\t\tlet realValue = value;\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\n\t\tif (realValue === 0) {\n\t\t\trealValue = maxValue;\n\t\t}\n\t\tif (realValue === maxValue && this.lastItemReplacement !== -1) {\n\t\t\trealValue = this.lastItemReplacement;\n\t\t}\n\n\t\treturn realValue;\n\t}\n\n\t/**\n\t * Updates internal selected value object constructed for rendering purposes.\n\t *\n\t * @param {number} value currently selected value.\n\t */\n\t_updateSelectedValueObject(value: number) {\n\t\tif (value === -1) {\n\t\t\tthis._selectedItem = {\n\t\t\t\tshowMarker: false,\n\t\t\t};\n\t\t\treturn;\n\t\t}\n\n\t\tconst selectedOuter = (value >= this.itemMin && value <= this.itemMax) || (!this.showInnerCircle && value === this.lastItemReplacement);\n\t\tconst selectedInner = ((value >= this.itemMin + this.itemMax && value <= this.itemMax * 2) || value === this.lastItemReplacement) && this.showInnerCircle;\n\t\tconst stepAngle = 360 / (this.itemMax - this.itemMin + 1);\n\t\tconst innerValue = this.lastItemReplacement === -1 || !this.prependZero ? value.toString() : value.toString().padStart(2, \"0\");\n\t\tlet currentAngle: number | undefined = selectedOuter || selectedInner ? value * stepAngle : undefined;\n\n\t\tif (currentAngle !== undefined) {\n\t\t\tcurrentAngle %= 360;\n\t\t}\n\n\t\tthis._selectedItem = {\n\t\t\t\"angle\": currentAngle,\n\t\t\t\"item\": selectedOuter ? value.toString() : \"\",\n\t\t\t\"innerItem\": selectedInner ? innerValue : \"\",\n\t\t\t\"showMarker\": selectedOuter || selectedInner,\n\t\t\t\"itemClasses\": CLOCK_NUMBER_CLASS + (selectedOuter ? ` ${CLOCK_NUMBER_SELECTED_CLASS}` : \"\"),\n\t\t\t\"innerItemClasses\": CLOCK_NUMBER_CLASS + (selectedInner ? ` ${CLOCK_NUMBER_SELECTED_CLASS}` : \"\"),\n\t\t\t\"outerStyles\": {\n\t\t\t\ttransform: `translate(-50%) rotate(${currentAngle || 0}deg)`,\n\t\t\t},\n\t\t\t\"innerStyles\": {\n\t\t\t\ttransform: `rotate(-${currentAngle || 0}deg)`,\n\t\t\t},\n\t\t};\n\t}\n\n\t/**\n\t * Prepares clock items objects according to current clock settings. Item objects are used for rendering purposes.\n\t */\n\t_prepareClockItems() {\n\t\tconst values = [];\n\t\tlet displayStep = this.displayStep;\n\t\tlet item: TimePickerClockItem;\n\t\tlet valueIndex;\n\t\tlet i;\n\n\t\tthis._items = [];\n\n\t\tfor (i = this.itemMin; i <= this.itemMax; i++) {\n\t\t\tvalues.push({\n\t\t\t\t\"item\": i.toString(),\n\t\t\t\t\"innerItem\": this.showInnerCircle ? (i + this.itemMax).toString() : undefined,\n\t\t\t});\n\t\t}\n\t\tif (this.lastItemReplacement !== -1) {\n\t\t\tif (this.showInnerCircle && this.prependZero) {\n\t\t\t\tvalues[values.length - 1].innerItem = this.lastItemReplacement.toString().padStart(2, \"0\");\n\t\t\t} else {\n\t\t\t\tvalues[values.length - 1].item = this.lastItemReplacement.toString();\n\t\t\t}\n\t\t}\n\n\t\t// determines angle step for values display\n\t\tconst itemStep = 360 / CLOCK_ANGLE_STEP / values.length;\n\n\t\t// determines step for values display in units\n\t\tif (this.valueStep * itemStep > displayStep) {\n\t\t\tdisplayStep = this.valueStep * itemStep;\n\t\t}\n\n\t\tfor (i = 1; i <= 60; i++) {\n\t\t\tvalueIndex = i / itemStep - 1;\n\t\t\titem = i % displayStep !== 0 ? {} : values[valueIndex];\n\t\t\titem.angle = i * CLOCK_ANGLE_STEP;\n\t\t\titem.outerStyles = {\n\t\t\t\ttransform: `translate(-50%) rotate(${i * 6}deg)`,\n\t\t\t};\n\t\t\titem.innerStyles = {\n\t\t\t\ttransform: `rotate(-${i * 6}deg)`,\n\t\t\t};\n\t\t\tthis._items.push(item);\n\t\t}\n\t}\n\n\t/**\n\t * Returns the DOM Reference of the clock cover element\n\t *\n\t * @returns {HTMLElement} the DOM Reference\n\t */\n\t_getClockCoverContainerDomRef() {\n\t\tconst domRef = this.getDomRef();\n\t\treturn domRef && domRef.querySelector(\".ui5-tp-clock-cover\");\n\t}\n\n\t/**\n\t * Returns the real max value of clock items, taking in count if there is inner circle or not.\n\t *\n\t * @returns {number} max value\n\t */\n\t_getMaxValue() {\n\t\treturn this.showInnerCircle ? this.itemMax * 2 : this.itemMax;\n\t}\n\n\t/**\n\t * Calculates the outer height of a HTML element.\n\t *\n\t * @param {HTMLElement} element The element which outer height to be calculated\n\t * @returns {number} Outer height of the passed HTML element\n\t */\n\t_outerHeight(element: HTMLElement) {\n\t\tif (!element) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tconst style = window.getComputedStyle(element);\n\n\t\treturn element.offsetHeight + parseInt(style.marginTop) + parseInt(style.marginBottom);\n\t}\n\n\t/**\n\t * Returns the Id of the DOM element of the clock item that display specific value.\n\t *\n\t * @param {number} value The value of the clock item\n\t * @returns {string} Id of the clock item element\n\t */\n\t_hoveredId(value: number) {\n\t\tif (value === this._getMaxValue() && this.lastItemReplacement !== -1) {\n\t\t\tvalue = this.lastItemReplacement;\n\t\t}\n\n\t\tconst valueString = this.showInnerCircle && value === this.lastItemReplacement && this.prependZero ? value.toString().padStart(2, \"0\") : value.toString();\n\n\t\treturn `#${this._id}-${valueString}`;\n\t}\n\n\t/**\n\t * Returns provided value as string. Padding with additional zero is applied if necessary.\n\t *\n\t * @param {number} value The value that should be returned as string\n\t * @returns {string} The value as string\n\t */\n\t_getStringValue(value: number) {\n\t\treturn this.prependZero ? value.toString().padStart(2, \"0\") : value.toString();\n\t}\n\n\t/**\n\t * Calculates dimension variables necessary for determining of item selection.\n\t *\n\t * @returns {TimePickerClockDimensions} Dimensions object\n\t */\n\t_calculateDimensions() {\n\t\tconst cover = this.getDomRef() as HTMLElement;\n\t\tconst scrollLeft = window.pageXOffset || document.documentElement.scrollLeft;\n\t\tconst scrollTop = window.pageYOffset || document.documentElement.scrollTop;\n\n\t\tif (!cover) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst domRef = this.getDomRef() as HTMLElement;\n\t\tconst dotElement = domRef.querySelector(`.${CLOCK_MIDDOT_CLASS}`) as HTMLElement;\n\t\tconst numberElement = domRef.querySelector(`.${CLOCK_NUMBER_CLASS}`) as HTMLElement;\n\t\tconst radius = Math.round(cover.offsetHeight / 2);\n\t\tconst dotHeight = this._outerHeight(dotElement);\n\t\tconst numberHeight = this._outerHeight(numberElement);\n\t\tconst offset = cover.getBoundingClientRect();\n\n\t\tthis._dimensionParameters = {\n\t\t\t\"radius\": radius,\n\t\t\t\"centerX\": radius,\n\t\t\t\"centerY\": radius,\n\t\t\t\"dotHeight\": dotHeight,\n\t\t\t\"numberHeight\": numberHeight,\n\t\t\t\"outerMax\": radius,\n\t\t\t\"outerMin\": radius - numberHeight,\n\t\t\t\"innerMax\": radius - numberHeight - 1,\n\t\t\t\"innerMin\": radius - numberHeight * 2 - 1,\n\t\t\t\"offsetX\": offset.left + scrollLeft,\n\t\t\t\"offsetY\": offset.top + scrollTop,\n\t\t};\n\t}\n\n\t/**\n\t * Calculates selected and hovered values based on click/touch position.\n\t *\n\t * @param {number} x X position of click/touch returned by the event\n\t * @param {number} y Y position of click/touch returned by the event\n\t */\n\t_calculatePosition(x: number, y: number) {\n\t\tconst dX = x - this._dimensionParameters.offsetX + 1 - this._dimensionParameters.radius;\n\t\tconst dY = y - this._dimensionParameters.offsetY + 1 - this._dimensionParameters.radius;\n\t\tconst mod = dX >= 0 ? 0 : 180;\n\t\tconst angle = ((Math.atan(dY / dX) * 180) / Math.PI) + 90 + mod;\n\t\tconst angleStep = (360 / this.itemMax) * this.valueStep;\n\t\tconst radius = Math.sqrt(dX * dX + dY * dY);\n\t\tconst isOuter = radius <= this._dimensionParameters.outerMax && radius > (this.showInnerCircle ? this._dimensionParameters.outerMin : this._dimensionParameters.innerMin);\n\t\tconst isInner = this.showInnerCircle && radius <= this._dimensionParameters.innerMax && radius > this._dimensionParameters.innerMin;\n\t\tconst isOuterHover = radius <= this._dimensionParameters.outerMax && radius > this._dimensionParameters.outerMin;\n\t\tconst isInnerHover = isInner;\n\t\tlet finalAngle = Math.round((angle === 0 ? 360 : angle) / angleStep) * angleStep;\n\n\t\tif (finalAngle === 0) {\n\t\t\tfinalAngle = 360;\n\t\t}\n\n\t\t// selected item calculations\n\t\tif (isInner || isOuter) {\n\t\t\tthis._selectedValue = (finalAngle / angleStep) * this.valueStep;\n\t\t\tif (isInner) {\n\t\t\t\tthis._selectedValue += this.itemMax;\n\t\t\t}\n\t\t} else {\n\t\t\tthis._selectedValue = -1;\n\t\t}\n\n\t\t// hover simulation calculations\n\t\tthis._hoveredValue = isInnerHover || isOuterHover ? this._selectedValue : -1;\n\n\t\tif (this._selectedValue === this._getMaxValue() && this.lastItemReplacement !== -1) {\n\t\t\tthis._selectedValue = this.lastItemReplacement;\n\t\t}\n\t}\n\n\t/**\n\t * Does the animation between the old and the new value of the clock. Can be skipped with setting the second parameter to true.\n\t *\n\t * @param {number} newValue the new value that must be set\n\t * @param {boolean} skipAnimation whether to skip the animation\n\t */\n\t_changeValueAnimation(newValue: number, skipAnimation = false) {\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\t\tlet firstSelected = this._movSelectedValue;\n\t\tlet\tlastSelected = newValue;\n\t\tlet direction = 1;\n\t\tlet\tpath1;\n\t\tlet path2;\n\t\tlet delay;\n\n\t\tif (!skipAnimation) {\n\t\t\t// do the animation here\n\n\t\t\tpath1 = Math.abs(firstSelected - lastSelected);\n\t\t\tpath2 = maxValue - path1;\n\n\t\t\tif (firstSelected < lastSelected) {\n\t\t\t\tif (path2 < path1) {\n\t\t\t\t\tfirstSelected += maxValue;\n\t\t\t\t\tdirection = -1;\n\t\t\t\t}\n\t\t\t} else if (path2 < path1) {\n\t\t\t\tlastSelected += maxValue;\n\t\t\t} else {\n\t\t\t\tdirection = -1;\n\t\t\t}\n\n\t\t\tdelay = firstSelected === lastSelected ? 0 : Math.ceil(ANIMATION_DURATION_MAX / Math.abs(firstSelected - lastSelected));\n\t\t\tthis._animationInProgress = true;\n\t\t\tthis._selectNextNumber(firstSelected, lastSelected, direction, maxValue, newValue, delay);\n\t\t} else {\n\t\t\tthis._setSelectedValue(newValue);\n\t\t}\n\t}\n\n\t/**\n\t * Does the animation step between old and new selected values.\n\t *\n\t * @param {number} firstSelected first/current value to move from\n\t * @param {number} lastSelected last value to move to\n\t * @param {number} direction direction of the animation\n\t * @param {number} maxValue max clock value\n\t * @param {number} newValue new value\n\t * @param {number} delay delay of the single step\n\t */\n\t_selectNextNumber(firstSelected: number, lastSelected: number, direction: number, maxValue: number, newValue: number, delay: number) {\n\t\tconst current = firstSelected > maxValue ? firstSelected - maxValue : firstSelected;\n\n\t\tif (firstSelected === lastSelected) {\n\t\t\tthis._animationInProgress = false;\n\t\t}\n\t\tthis._setSelectedValue(current);\n\t\tif (firstSelected !== lastSelected) {\n\t\t\tfirstSelected += direction;\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis._selectNextNumber(firstSelected, lastSelected, direction, maxValue, newValue, delay);\n\t\t\t}, delay);\n\t\t} else {\n\t\t\t// the new value is set, fire event\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.fireEvent<TimePickerClockChangeEventDetail>(\"change\", {\n\t\t\t\t\t\"value\": newValue,\n\t\t\t\t\t\"stringValue\": this._getStringValue(newValue),\n\t\t\t\t\t\"finalChange\": true,\n\t\t\t\t});\n\t\t\t}, ANIMATION_DELAY_EVENT);\n\t\t}\n\t}\n\n\t/**\n\t * Mousewheel handler. Increases/decreases value of the clock.\n\t *\n\t * @param {boolean} increase whether to increase or decrease the value\n\t */\n\t_modifyValue(increase: boolean) {\n\t\tlet selectedValue = this.selectedValue;\n\t\tconst replacementValue = this.lastItemReplacement;\n\t\tconst minValue = this.itemMin;\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\t\tlet step = this.valueStep;\n\t\tlet newValue;\n\n\t\t// fix step in order to change value to the nearest possible if step is > 1\n\t\tif (selectedValue % step !== 0) {\n\t\t\tnewValue = increase ? Math.ceil(selectedValue / step) * step : Math.floor(selectedValue / step) * step;\n\t\t\tstep = Math.abs(selectedValue - newValue);\n\t\t}\n\n\t\tif (selectedValue === replacementValue) {\n\t\t\tselectedValue = maxValue;\n\t\t}\n\t\tif (increase) {\n\t\t\tselectedValue += step;\n\t\t\tif (selectedValue > maxValue) {\n\t\t\t\tselectedValue -= maxValue;\n\t\t\t}\n\t\t} else {\n\t\t\tselectedValue -= step;\n\t\t\tif (selectedValue < minValue) {\n\t\t\t\tselectedValue = maxValue;\n\t\t\t}\n\t\t}\n\n\t\tthis._setSelectedValue(selectedValue);\n\t}\n\n\t/**\n\t * Sets new selected value, fires change event and updates selected value object used for rendering purposes.\n\t *\n\t * @param {number} value\n\t */\n\t_setSelectedValue(value: number) {\n\t\tconst realValue: number = this._fixReplacementValue(value);\n\t\tthis.selectedValue = realValue;\n\t\tthis.fireEvent<TimePickerClockChangeEventDetail>(\"change\", {\n\t\t\t\"value\": realValue,\n\t\t\t\"stringValue\": this._getStringValue(realValue),\n\t\t\t\"finalChange\": false,\n\t\t});\n\t\tthis._updateSelectedValueObject(realValue);\n\t}\n\n\t/**\n\t * TouchStart/MouseDown event handler.\n\t *\n\t * @param {event} evt Event object\n\t */\n\t_onTouchStart(evt: Event) {\n\t\tthis._cancelTouchOut = false;\n\t\tif (this.disabled || this._mouseOrTouchDown) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst x = evt.type === \"touchstart\" ? (evt as TouchEvent).touches[0].pageX : (evt as MouseEvent).pageX;\n\t\tconst y = evt.type === \"touchstart\" ? (evt as TouchEvent).touches[0].pageY : (evt as MouseEvent).pageY;\n\n\t\tthis._movSelectedValue = this.selectedValue;\n\t\tthis._calculateDimensions();\n\t\tthis._calculatePosition(x, y);\n\t\tthis._mouseOrTouchDown = true;\n\t}\n\n\t/**\n\t * TouchMove/MouseMove event handler.\n\t *\n\t * @param {event} evt Event object\n\t */\n\t_onTouchMove(evt: Event) {\n\t\tlet\thoveredNumber;\n\t\tconst domRef = this.getDomRef();\n\n\t\tevt.preventDefault();\n\t\tif (this._mouseOrTouchDown) {\n\t\t\tconst x = evt.type === \"touchmove\" ? (evt as TouchEvent).touches[0].pageX : (evt as MouseEvent).pageX;\n\t\t\tconst y = evt.type === \"touchmove\" ? (evt as TouchEvent).touches[0].pageY : (evt as MouseEvent).pageY;\n\t\t\tthis._calculatePosition(x, y);\n\t\t\tif (!this.disabled && this._selectedValue !== -1 && this._selectedValue !== this._movSelectedValue) {\n\t\t\t\tthis._setSelectedValue(this._selectedValue);\n\t\t\t\tthis._movSelectedValue = 0 + this._selectedValue;\n\t\t\t}\n\t\t} else if (evt.type === \"mousemove\") {\n\t\t\tif (!this._dimensionParameters.radius) {\n\t\t\t\tthis._calculateDimensions();\n\t\t\t}\n\t\t\tthis._calculatePosition((evt as MouseEvent).pageX, (evt as MouseEvent).pageY);\n\t\t\tif (this.displayStep > 1 && this._hoveredValue !== -1) {\n\t\t\t\tthis._hoveredValue = Math.round(this._hoveredValue / this.displayStep) * this.displayStep;\n\t\t\t}\n\n\t\t\tif (!this.disabled && this._hoveredValue !== this._prevHoveredValue) {\n\t\t\t\thoveredNumber = (domRef as HTMLElement).querySelector(this._hoveredId(this._prevHoveredValue));\n\t\t\t\thoveredNumber && hoveredNumber.classList.remove(CLOCK_NUMBER_HOVER_CLASS);\n\t\t\t\tthis._prevHoveredValue = this._hoveredValue;\n\t\t\t\thoveredNumber = (domRef as HTMLElement).querySelector(this._hoveredId(this._prevHoveredValue));\n\t\t\t\thoveredNumber && hoveredNumber.classList.add(CLOCK_NUMBER_HOVER_CLASS);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * TouchEnd/MouseUp event handler.\n\t *\n\t * @param {event} evt Event object\n\t */\n\t_onTouchEnd(evt: Event) {\n\t\tif (!this._mouseOrTouchDown) {\n\t\t\treturn;\n\t\t}\n\t\tthis._mouseOrTouchDown = false;\n\t\tevt.preventDefault();\n\t\tif (this.disabled || this._selectedValue === -1) {\n\t\t\treturn;\n\t\t}\n\t\tif (!this._cancelTouchOut) {\n\t\t\tthis._changeValueAnimation(this._selectedValue);\n\t\t}\n\t}\n\n\t/**\n\t * Mouse Wheel event handler.\n\t *\n\t * @param {WheelEvent} evt Event object\n\t */\n\t_onMouseWheel(evt: WheelEvent) {\n\t\tconst increase = evt.detail ? (evt.detail > 0) : (evt.deltaY > 0 || evt.deltaX > 0);\n\n\t\tevt.preventDefault();\n\t\tif (!this._mouseOrTouchDown) {\n\t\t\tthis._modifyValue(increase);\n\t\t}\n\t}\n\n\t/**\n\t * MouseOut event handler.\n\t */\n\t_onMouseOut() {\n\t\tconst hoveredNumber = (this.getDomRef() as HTMLElement).querySelector(this._hoveredId(this._hoveredValue));\n\n\t\thoveredNumber && hoveredNumber.classList.remove(CLOCK_NUMBER_HOVER_CLASS);\n\t\tthis._hoveredValue = -1;\n\t\tthis._prevHoveredValue = -1;\n\t}\n}\n\nTimePickerClock.define();\n\nexport default TimePickerClock;\nexport type { TimePickerClockChangeEventDetail };\n"]}
1
+ {"version":3,"file":"TimePickerClock.js","sourceRoot":"","sources":["../src/TimePickerClock.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 type { ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\n\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\n\n// Template\nimport TimePickerClockTemplate from \"./generated/templates/TimePickerClockTemplate.lit.js\";\n\n// Styles\nimport TimePickerClockCss from \"./generated/themes/TimePickerClock.css.js\";\n\ntype TimePickerClockChangeEventDetail = {\n\tvalue: number,\n\tstringValue: string,\n\tfinalChange: boolean,\n}\n\ntype TimePickerClockItem = {\n\tangle?: number,\n\titem?: string,\n\tinnerItem?: string,\n\touterStyles?: object,\n\tinnerStyles?: object,\n}\n\ntype TimePickerClockSelection = {\n\tshowMarker: boolean,\n\titemClasses?: string,\n\tinnerItemClasses?: string,\n}\n\ntype TimePickerClockDimensions = {\n\tradius: number,\n\tcenterX: number,\n\tcenterY: number,\n\tdotHeight: number,\n\tnumberHeight: number,\n\touterMax: number,\n\touterMin: number,\n\tinnerMax: number,\n\tinnerMin: number,\n\toffsetX: number,\n\toffsetY: number,\n}\n\ntype TimePickerClockSelectedItem = TimePickerClockItem & TimePickerClockSelection;\n\nconst ANIMATION_DURATION_MAX = 200; // total animation duration, without the delay before firing the event\nconst ANIMATION_DELAY_EVENT = 100; // delay before firing the event\nconst CLOCK_ANGLE_STEP = 6;\nconst CLOCK_NUMBER_CLASS = \"ui5-tp-clock-number\";\nconst CLOCK_NUMBER_HOVER_CLASS = \"ui5-tp-clock-number-hover\";\nconst CLOCK_NUMBER_SELECTED_CLASS = \"ui5-tp-clock-selected\";\nconst CLOCK_MIDDOT_CLASS = \"ui5-tp-clock-mid-dot\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * <code>ui5-time-picker-clock</code> allows selecting of hours,minutes or seconds (depending on property set).\n * The component supports interactions with mouse, touch and mouse wheel.\n * Depending on settings, the clock can display only outer set of items (when the clock displays hours in 12-hour mode,\n * minutes or seconds), or outer and inner sets of items (when the clock displays hours in 24-hours mode).\n * The step for displaying or selecting of items can be configured.\n *\n * <code>ui5-time-picker-clock</code> is used as part of <code>ui5-time-selection-clocks</code> component, which\n * is used in <code>ui5-time-picker</code> component respectively.\n *\n * <h3>Usage</h3>\n *\n * <code>ui5-time-picker-clock</code> can display hours, minutes or seconds\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/TimePickerClock.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @since 1.15.0\n * @private\n */\n@customElement({\n\ttag: \"ui5-time-picker-clock\",\n\trenderer: litRender,\n\tstyles: TimePickerClockCss,\n\ttemplate: TimePickerClockTemplate,\n})\n\n/**\n * Fired when a value of clock is changed.\n *\n * @param { integer } value The new <code>value</code> of the clock.\n * @param { string } stringValue The new <code>value</code> of the clock, as string, zero-prepended when necessary.\n * @param { boolean } finalChange <code>true</code> when a value is selected and confirmed, <code>false</code> when a value is only selected but not confirmed.\n */\n@event(\"change\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalue: { type: Integer },\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tstringValue: { type: String },\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tfinalChange: { type: Boolean },\n\t},\n})\n\nclass TimePickerClock extends UI5Element {\n\t/**\n\t * Determines whether the component is displayed as disabled.\n\t *\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Determines whether the component is active (visible).\n\t *\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tactive!: boolean;\n\n\t/**\n\t * Minimum item value for the outer circle of the clock.\n\t *\n\t * @default -1\n\t */\n\t@property({ validator: Integer, defaultValue: -1 })\n\titemMin!: number;\n\n\t/**\n\t * Maximum item value for the outer circle of the clock.\n\t *\n\t * @default -1\n\t */\n\t@property({ validator: Integer, defaultValue: -1 })\n\titemMax!: number;\n\n\t/**\n\t * If set to <code>true</code>, an inner circle is displayed.\n\t * The first item value of the inner circle will be itemMax + 1\n\t *\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tshowInnerCircle!: boolean;\n\n\t/**\n\t * Label of the clock dial - for example, 'Hours', 'Minutes', or 'Seconds'.\n\t *\n\t * @default undefined\n\t */\n\t@property({ type: String, defaultValue: undefined })\n\tlabel?: string;\n\n\t/**\n\t * If set to <code>true</code>, a surrounding circle with markers (dots) will be hidden.\n\t * (for example, on the 'Minutes' clock-dial, markers represent minutes).\n\t *\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\thideFractions!: boolean;\n\n\t/**\n\t * If provided, this will replace the last item displayed. If there is only one (outer) circle,\n\t * the last item from outer circle will be replaced; if there is an inner circle too, the last\n\t * item of inner circle will be replaced. Usually, the last item '24' is replaced with '0'.\n\t *\n\t * @default -1\n\t */\n\t@property({ validator: Integer, defaultValue: -1 })\n\tlastItemReplacement!: number;\n\n\t/**\n\t * Prepend with zero flag. If <code>true</code>, values less than 10 will be prepend with 0.\n\t *\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tprependZero!: boolean;\n\n\t/**\n\t * The currently selected value of the clock.\n\t *\n\t * @default -1\n\t */\n\t@property({ validator: Integer, defaultValue: -1 })\n\tselectedValue!: number;\n\n\t/**\n\t * The step for displaying of one unit of items.\n\t * 1 means 1/60 of the circle.\n\t * The default display step is 5 which means minutes and seconds are displayed as \"0\", \"5\", \"10\", etc.\n\t * For hours the display step must be set to 1.\n\t *\n\t * @default 5\n\t */\n\t@property({ validator: Integer, defaultValue: 5 })\n\tdisplayStep!: number;\n\n\t/**\n\t * The step for selection of items.\n\t * 1 means 1 unit:\n\t * - if the clock displays hours - 1 unit = 1 hour\n\t * - if the clock displays minutes/seconds - 1 unit = 1 minute/second\n\t *\n\t * @default 1\n\t */\n\t@property({ validator: Integer, defaultValue: 1 })\n\tvalueStep!: number;\n\n\t/**\n\t * Defines the currently available Time Picker Clock items depending on Clock setup.\n\t */\n\t@property({ type: Object, multiple: true })\n\t_items!: Array<TimePickerClockItem>;\n\n\t/**\n\t * Defines the currently selected Time Picker Clock item.\n\t */\n\t@property({ type: Object })\n\t_selectedItem!: TimePickerClockSelectedItem;\n\n\t/**\n\t * Keeps variables used in interaction calculations.\n\t */\n\t@property({ type: Object })\n\t_dimensionParameters!: TimePickerClockDimensions;\n\n\t/**\n\t * Mousedown or Touchstart event flag.\n\t *\n\t * @default false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_mouseOrTouchDown!: boolean;\n\n\t/**\n\t * Cancel Mouseout flag.\n\t *\n\t * @default false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_cancelTouchOut!: boolean;\n\n\t/**\n\t * Calculated selected value of the clock during interactions.\n\t *\n\t * @default -1\n\t */\n\t@property({ validator: Integer, defaultValue: -1, noAttribute: true })\n\t_selectedValue!: number;\n\n\t/**\n\t * Selected value of the clock during interactions.\n\t *\n\t * @default -1\n\t */\n\t@property({ validator: Integer, defaultValue: -1, noAttribute: true })\n\t_movSelectedValue!: number;\n\n\t/**\n\t * Hovered value of the clock during interactions.\n\t *\n\t * @default -1\n\t */\n\t@property({ validator: Integer, defaultValue: -1, noAttribute: true })\n\t_hoveredValue!: number;\n\n\t/**\n\t * Previously hovered value of the clock during interactions.\n\t *\n\t * @default -1\n\t */\n\t@property({ validator: Integer, defaultValue: -1, noAttribute: true })\n\t_prevHoveredValue!: number;\n\n\t/**\n\t * Animation in progress flag.\n\t *\n\t * @default false\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_animationInProgress!: boolean;\n\n\t_fnOnMouseOutUp: () => void;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._fnOnMouseOutUp = () => {\n\t\t\tthis._mouseOrTouchDown = false;\n\t\t};\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn <ClassMap>{\n\t\t\tclock: {\n\t\t\t\t\"ui5-tp-clock\": true,\n\t\t\t\t\"ui5-tp-clock-inner\": this.showInnerCircle,\n\t\t\t\t\"ui5-tp-clock-active\": this.active,\n\t\t\t},\n\t\t};\n\t}\n\n\tonEnterDOM() {\n\t\tdocument.addEventListener(\"mouseup\", this._fnOnMouseOutUp, false);\n\t}\n\n\tonExitDOM() {\n\t\tdocument.removeEventListener(\"mouseup\", this._fnOnMouseOutUp, false);\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._prepareClockItems();\n\t\tconst value: number = this._fixReplacementValue(this.selectedValue);\n\t\tthis._updateSelectedValueObject(value);\n\t}\n\n\t/**\n\t * Returns the real value of the passed clock item, if the replacement must be done, returns the replaced value.\n\t *\n\t * @param value The value of the clock item\n\t * @returns The real/replaced value\n\t */\n\t_fixReplacementValue(value: number): number {\n\t\tlet realValue = value;\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\n\t\tif (realValue === 0) {\n\t\t\trealValue = maxValue;\n\t\t}\n\t\tif (realValue === maxValue && this.lastItemReplacement !== -1) {\n\t\t\trealValue = this.lastItemReplacement;\n\t\t}\n\n\t\treturn realValue;\n\t}\n\n\t/**\n\t * Updates internal selected value object constructed for rendering purposes.\n\t *\n\t * @param value currently selected value.\n\t */\n\t_updateSelectedValueObject(value: number) {\n\t\tif (value === -1) {\n\t\t\tthis._selectedItem = {\n\t\t\t\tshowMarker: false,\n\t\t\t};\n\t\t\treturn;\n\t\t}\n\n\t\tconst selectedOuter = (value >= this.itemMin && value <= this.itemMax) || (!this.showInnerCircle && value === this.lastItemReplacement);\n\t\tconst selectedInner = ((value >= this.itemMin + this.itemMax && value <= this.itemMax * 2) || value === this.lastItemReplacement) && this.showInnerCircle;\n\t\tconst stepAngle = 360 / (this.itemMax - this.itemMin + 1);\n\t\tconst innerValue = this.lastItemReplacement === -1 || !this.prependZero ? value.toString() : value.toString().padStart(2, \"0\");\n\t\tlet currentAngle: number | undefined = selectedOuter || selectedInner ? value * stepAngle : undefined;\n\n\t\tif (currentAngle !== undefined) {\n\t\t\tcurrentAngle %= 360;\n\t\t}\n\n\t\tthis._selectedItem = {\n\t\t\t\"angle\": currentAngle,\n\t\t\t\"item\": selectedOuter ? value.toString() : \"\",\n\t\t\t\"innerItem\": selectedInner ? innerValue : \"\",\n\t\t\t\"showMarker\": selectedOuter || selectedInner,\n\t\t\t\"itemClasses\": CLOCK_NUMBER_CLASS + (selectedOuter ? ` ${CLOCK_NUMBER_SELECTED_CLASS}` : \"\"),\n\t\t\t\"innerItemClasses\": CLOCK_NUMBER_CLASS + (selectedInner ? ` ${CLOCK_NUMBER_SELECTED_CLASS}` : \"\"),\n\t\t\t\"outerStyles\": {\n\t\t\t\ttransform: `translate(-50%) rotate(${currentAngle || 0}deg)`,\n\t\t\t},\n\t\t\t\"innerStyles\": {\n\t\t\t\ttransform: `rotate(-${currentAngle || 0}deg)`,\n\t\t\t},\n\t\t};\n\t}\n\n\t/**\n\t * Prepares clock items objects according to current clock settings. Item objects are used for rendering purposes.\n\t */\n\t_prepareClockItems() {\n\t\tconst values = [];\n\t\tlet displayStep = this.displayStep;\n\t\tlet item: TimePickerClockItem;\n\t\tlet valueIndex;\n\t\tlet i;\n\n\t\tthis._items = [];\n\n\t\tfor (i = this.itemMin; i <= this.itemMax; i++) {\n\t\t\tvalues.push({\n\t\t\t\t\"item\": i.toString(),\n\t\t\t\t\"innerItem\": this.showInnerCircle ? (i + this.itemMax).toString() : undefined,\n\t\t\t});\n\t\t}\n\t\tif (this.lastItemReplacement !== -1) {\n\t\t\tif (this.showInnerCircle && this.prependZero) {\n\t\t\t\tvalues[values.length - 1].innerItem = this.lastItemReplacement.toString().padStart(2, \"0\");\n\t\t\t} else {\n\t\t\t\tvalues[values.length - 1].item = this.lastItemReplacement.toString();\n\t\t\t}\n\t\t}\n\n\t\t// determines angle step for values display\n\t\tconst itemStep = 360 / CLOCK_ANGLE_STEP / values.length;\n\n\t\t// determines step for values display in units\n\t\tif (this.valueStep * itemStep > displayStep) {\n\t\t\tdisplayStep = this.valueStep * itemStep;\n\t\t}\n\n\t\tfor (i = 1; i <= 60; i++) {\n\t\t\tvalueIndex = i / itemStep - 1;\n\t\t\titem = i % displayStep !== 0 ? {} : values[valueIndex];\n\t\t\titem.angle = i * CLOCK_ANGLE_STEP;\n\t\t\titem.outerStyles = {\n\t\t\t\ttransform: `translate(-50%) rotate(${i * 6}deg)`,\n\t\t\t};\n\t\t\titem.innerStyles = {\n\t\t\t\ttransform: `rotate(-${i * 6}deg)`,\n\t\t\t};\n\t\t\tthis._items.push(item);\n\t\t}\n\t}\n\n\t/**\n\t * Returns the DOM Reference of the clock cover element\n\t *\n\t * @returns the DOM Reference\n\t */\n\t_getClockCoverContainerDomRef(): Element | null | undefined {\n\t\tconst domRef = this.getDomRef();\n\t\treturn domRef && domRef.querySelector(\".ui5-tp-clock-cover\");\n\t}\n\n\t/**\n\t * Returns the real max value of clock items, taking in count if there is inner circle or not.\n\t *\n\t * @returns max value\n\t */\n\t_getMaxValue(): number {\n\t\treturn this.showInnerCircle ? this.itemMax * 2 : this.itemMax;\n\t}\n\n\t/**\n\t * Calculates the outer height of a HTML element.\n\t *\n\t * @param element The element which outer height to be calculated\n\t * @returns Outer height of the passed HTML element\n\t */\n\t_outerHeight(element: HTMLElement): number {\n\t\tif (!element) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tconst style = window.getComputedStyle(element);\n\n\t\treturn element.offsetHeight + parseInt(style.marginTop) + parseInt(style.marginBottom);\n\t}\n\n\t/**\n\t * Returns the Id of the DOM element of the clock item that display specific value.\n\t *\n\t * @param value The value of the clock item\n\t * @returns Id of the clock item element\n\t */\n\t_hoveredId(value: number): string {\n\t\tif (value === this._getMaxValue() && this.lastItemReplacement !== -1) {\n\t\t\tvalue = this.lastItemReplacement;\n\t\t}\n\n\t\tconst valueString = this.showInnerCircle && value === this.lastItemReplacement && this.prependZero ? value.toString().padStart(2, \"0\") : value.toString();\n\n\t\treturn `#${this._id}-${valueString}`;\n\t}\n\n\t/**\n\t * Returns provided value as string. Padding with additional zero is applied if necessary.\n\t *\n\t * @param value The value that should be returned as string\n\t * @returns The value as string\n\t */\n\t_getStringValue(value: number): string {\n\t\treturn this.prependZero ? value.toString().padStart(2, \"0\") : value.toString();\n\t}\n\n\t/**\n\t * Calculates dimension variables necessary for determining of item selection.\n\t *\n\t * @returns Dimensions object\n\t */\n\t_calculateDimensions(): TimePickerClockDimensions | undefined {\n\t\tconst cover = this.getDomRef() as HTMLElement;\n\t\tconst scrollLeft = window.pageXOffset || document.documentElement.scrollLeft;\n\t\tconst scrollTop = window.pageYOffset || document.documentElement.scrollTop;\n\n\t\tif (!cover) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst domRef = this.getDomRef() as HTMLElement;\n\t\tconst dotElement = domRef.querySelector(`.${CLOCK_MIDDOT_CLASS}`) as HTMLElement;\n\t\tconst numberElement = domRef.querySelector(`.${CLOCK_NUMBER_CLASS}`) as HTMLElement;\n\t\tconst radius = Math.round(cover.offsetHeight / 2);\n\t\tconst dotHeight = this._outerHeight(dotElement);\n\t\tconst numberHeight = this._outerHeight(numberElement);\n\t\tconst offset = cover.getBoundingClientRect();\n\n\t\tthis._dimensionParameters = {\n\t\t\t\"radius\": radius,\n\t\t\t\"centerX\": radius,\n\t\t\t\"centerY\": radius,\n\t\t\t\"dotHeight\": dotHeight,\n\t\t\t\"numberHeight\": numberHeight,\n\t\t\t\"outerMax\": radius,\n\t\t\t\"outerMin\": radius - numberHeight,\n\t\t\t\"innerMax\": radius - numberHeight - 1,\n\t\t\t\"innerMin\": radius - numberHeight * 2 - 1,\n\t\t\t\"offsetX\": offset.left + scrollLeft,\n\t\t\t\"offsetY\": offset.top + scrollTop,\n\t\t};\n\t}\n\n\t/**\n\t * Calculates selected and hovered values based on click/touch position.\n\t *\n\t * @param x X position of click/touch returned by the event\n\t * @param y Y position of click/touch returned by the event\n\t */\n\t_calculatePosition(x: number, y: number) {\n\t\tconst dX = x - this._dimensionParameters.offsetX + 1 - this._dimensionParameters.radius;\n\t\tconst dY = y - this._dimensionParameters.offsetY + 1 - this._dimensionParameters.radius;\n\t\tconst mod = dX >= 0 ? 0 : 180;\n\t\tconst angle = ((Math.atan(dY / dX) * 180) / Math.PI) + 90 + mod;\n\t\tconst angleStep = (360 / this.itemMax) * this.valueStep;\n\t\tconst radius = Math.sqrt(dX * dX + dY * dY);\n\t\tconst isOuter = radius <= this._dimensionParameters.outerMax && radius > (this.showInnerCircle ? this._dimensionParameters.outerMin : this._dimensionParameters.innerMin);\n\t\tconst isInner = this.showInnerCircle && radius <= this._dimensionParameters.innerMax && radius > this._dimensionParameters.innerMin;\n\t\tconst isOuterHover = radius <= this._dimensionParameters.outerMax && radius > this._dimensionParameters.outerMin;\n\t\tconst isInnerHover = isInner;\n\t\tlet finalAngle = Math.round((angle === 0 ? 360 : angle) / angleStep) * angleStep;\n\n\t\tif (finalAngle === 0) {\n\t\t\tfinalAngle = 360;\n\t\t}\n\n\t\t// selected item calculations\n\t\tif (isInner || isOuter) {\n\t\t\tthis._selectedValue = (finalAngle / angleStep) * this.valueStep;\n\t\t\tif (isInner) {\n\t\t\t\tthis._selectedValue += this.itemMax;\n\t\t\t}\n\t\t} else {\n\t\t\tthis._selectedValue = -1;\n\t\t}\n\n\t\t// hover simulation calculations\n\t\tthis._hoveredValue = isInnerHover || isOuterHover ? this._selectedValue : -1;\n\n\t\tif (this._selectedValue === this._getMaxValue() && this.lastItemReplacement !== -1) {\n\t\t\tthis._selectedValue = this.lastItemReplacement;\n\t\t}\n\t}\n\n\t/**\n\t * Does the animation between the old and the new value of the clock. Can be skipped with setting the second parameter to true.\n\t *\n\t * @param newValue the new value that must be set\n\t * @param skipAnimation whether to skip the animation\n\t */\n\t_changeValueAnimation(newValue: number, skipAnimation = false) {\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\t\tlet firstSelected = this._movSelectedValue;\n\t\tlet\tlastSelected = newValue;\n\t\tlet direction = 1;\n\t\tlet\tpath1;\n\t\tlet path2;\n\t\tlet delay;\n\n\t\tif (!skipAnimation) {\n\t\t\t// do the animation here\n\n\t\t\tpath1 = Math.abs(firstSelected - lastSelected);\n\t\t\tpath2 = maxValue - path1;\n\n\t\t\tif (firstSelected < lastSelected) {\n\t\t\t\tif (path2 < path1) {\n\t\t\t\t\tfirstSelected += maxValue;\n\t\t\t\t\tdirection = -1;\n\t\t\t\t}\n\t\t\t} else if (path2 < path1) {\n\t\t\t\tlastSelected += maxValue;\n\t\t\t} else {\n\t\t\t\tdirection = -1;\n\t\t\t}\n\n\t\t\tdelay = firstSelected === lastSelected ? 0 : Math.ceil(ANIMATION_DURATION_MAX / Math.abs(firstSelected - lastSelected));\n\t\t\tthis._animationInProgress = true;\n\t\t\tthis._selectNextNumber(firstSelected, lastSelected, direction, maxValue, newValue, delay);\n\t\t} else {\n\t\t\tthis._setSelectedValue(newValue);\n\t\t}\n\t}\n\n\t/**\n\t * Does the animation step between old and new selected values.\n\t *\n\t * @param firstSelected first/current value to move from\n\t * @param lastSelected last value to move to\n\t * @param direction direction of the animation\n\t * @param maxValue max clock value\n\t * @param newValue new value\n\t * @param delay delay of the single step\n\t */\n\t_selectNextNumber(firstSelected: number, lastSelected: number, direction: number, maxValue: number, newValue: number, delay: number) {\n\t\tconst current = firstSelected > maxValue ? firstSelected - maxValue : firstSelected;\n\n\t\tif (firstSelected === lastSelected) {\n\t\t\tthis._animationInProgress = false;\n\t\t}\n\t\tthis._setSelectedValue(current);\n\t\tif (firstSelected !== lastSelected) {\n\t\t\tfirstSelected += direction;\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis._selectNextNumber(firstSelected, lastSelected, direction, maxValue, newValue, delay);\n\t\t\t}, delay);\n\t\t} else {\n\t\t\t// the new value is set, fire event\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.fireEvent<TimePickerClockChangeEventDetail>(\"change\", {\n\t\t\t\t\t\"value\": newValue,\n\t\t\t\t\t\"stringValue\": this._getStringValue(newValue),\n\t\t\t\t\t\"finalChange\": true,\n\t\t\t\t});\n\t\t\t}, ANIMATION_DELAY_EVENT);\n\t\t}\n\t}\n\n\t/**\n\t * Mousewheel handler. Increases/decreases value of the clock.\n\t *\n\t * @param increase whether to increase or decrease the value\n\t */\n\t_modifyValue(increase: boolean) {\n\t\tlet selectedValue = this.selectedValue;\n\t\tconst replacementValue = this.lastItemReplacement;\n\t\tconst minValue = this.itemMin;\n\t\tconst maxValue = this.itemMax * (this.showInnerCircle ? 2 : 1);\n\t\tlet step = this.valueStep;\n\t\tlet newValue;\n\n\t\t// fix step in order to change value to the nearest possible if step is > 1\n\t\tif (selectedValue % step !== 0) {\n\t\t\tnewValue = increase ? Math.ceil(selectedValue / step) * step : Math.floor(selectedValue / step) * step;\n\t\t\tstep = Math.abs(selectedValue - newValue);\n\t\t}\n\n\t\tif (selectedValue === replacementValue) {\n\t\t\tselectedValue = maxValue;\n\t\t}\n\t\tif (increase) {\n\t\t\tselectedValue += step;\n\t\t\tif (selectedValue > maxValue) {\n\t\t\t\tselectedValue -= maxValue;\n\t\t\t}\n\t\t} else {\n\t\t\tselectedValue -= step;\n\t\t\tif (selectedValue < minValue) {\n\t\t\t\tselectedValue = maxValue;\n\t\t\t}\n\t\t}\n\n\t\tthis._setSelectedValue(selectedValue);\n\t}\n\n\t/**\n\t * Sets new selected value, fires change event and updates selected value object used for rendering purposes.\n\t *\n\t * @param value\n\t */\n\t_setSelectedValue(value: number) {\n\t\tconst realValue: number = this._fixReplacementValue(value);\n\t\tthis.selectedValue = realValue;\n\t\tthis.fireEvent<TimePickerClockChangeEventDetail>(\"change\", {\n\t\t\t\"value\": realValue,\n\t\t\t\"stringValue\": this._getStringValue(realValue),\n\t\t\t\"finalChange\": false,\n\t\t});\n\t\tthis._updateSelectedValueObject(realValue);\n\t}\n\n\t/**\n\t * TouchStart/MouseDown event handler.\n\t *\n\t * @param evt Event object\n\t */\n\t_onTouchStart(evt: Event) {\n\t\tthis._cancelTouchOut = false;\n\t\tif (this.disabled || this._mouseOrTouchDown) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst x = evt.type === \"touchstart\" ? (evt as TouchEvent).touches[0].pageX : (evt as MouseEvent).pageX;\n\t\tconst y = evt.type === \"touchstart\" ? (evt as TouchEvent).touches[0].pageY : (evt as MouseEvent).pageY;\n\n\t\tthis._movSelectedValue = this.selectedValue;\n\t\tthis._calculateDimensions();\n\t\tthis._calculatePosition(x, y);\n\t\tthis._mouseOrTouchDown = true;\n\t}\n\n\t/**\n\t * TouchMove/MouseMove event handler.\n\t *\n\t * @param evt Event object\n\t */\n\t_onTouchMove(evt: Event) {\n\t\tlet\thoveredNumber;\n\t\tconst domRef = this.getDomRef();\n\n\t\tevt.preventDefault();\n\t\tif (this._mouseOrTouchDown) {\n\t\t\tconst x = evt.type === \"touchmove\" ? (evt as TouchEvent).touches[0].pageX : (evt as MouseEvent).pageX;\n\t\t\tconst y = evt.type === \"touchmove\" ? (evt as TouchEvent).touches[0].pageY : (evt as MouseEvent).pageY;\n\t\t\tthis._calculatePosition(x, y);\n\t\t\tif (!this.disabled && this._selectedValue !== -1 && this._selectedValue !== this._movSelectedValue) {\n\t\t\t\tthis._setSelectedValue(this._selectedValue);\n\t\t\t\tthis._movSelectedValue = 0 + this._selectedValue;\n\t\t\t}\n\t\t} else if (evt.type === \"mousemove\") {\n\t\t\tif (!this._dimensionParameters.radius) {\n\t\t\t\tthis._calculateDimensions();\n\t\t\t}\n\t\t\tthis._calculatePosition((evt as MouseEvent).pageX, (evt as MouseEvent).pageY);\n\t\t\tif (this.displayStep > 1 && this._hoveredValue !== -1) {\n\t\t\t\tthis._hoveredValue = Math.round(this._hoveredValue / this.displayStep) * this.displayStep;\n\t\t\t}\n\n\t\t\tif (!this.disabled && this._hoveredValue !== this._prevHoveredValue) {\n\t\t\t\thoveredNumber = (domRef as HTMLElement).querySelector(this._hoveredId(this._prevHoveredValue));\n\t\t\t\thoveredNumber && hoveredNumber.classList.remove(CLOCK_NUMBER_HOVER_CLASS);\n\t\t\t\tthis._prevHoveredValue = this._hoveredValue;\n\t\t\t\thoveredNumber = (domRef as HTMLElement).querySelector(this._hoveredId(this._prevHoveredValue));\n\t\t\t\thoveredNumber && hoveredNumber.classList.add(CLOCK_NUMBER_HOVER_CLASS);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * TouchEnd/MouseUp event handler.\n\t *\n\t * @param evt Event object\n\t */\n\t_onTouchEnd(evt: Event) {\n\t\tif (!this._mouseOrTouchDown) {\n\t\t\treturn;\n\t\t}\n\t\tthis._mouseOrTouchDown = false;\n\t\tevt.preventDefault();\n\t\tif (this.disabled || this._selectedValue === -1) {\n\t\t\treturn;\n\t\t}\n\t\tif (!this._cancelTouchOut) {\n\t\t\tthis._changeValueAnimation(this._selectedValue);\n\t\t}\n\t}\n\n\t/**\n\t * Mouse Wheel event handler.\n\t *\n\t * @param evt Event object\n\t */\n\t_onMouseWheel(evt: WheelEvent) {\n\t\tconst increase = evt.detail ? (evt.detail > 0) : (evt.deltaY > 0 || evt.deltaX > 0);\n\n\t\tevt.preventDefault();\n\t\tif (!this._mouseOrTouchDown) {\n\t\t\tthis._modifyValue(increase);\n\t\t}\n\t}\n\n\t/**\n\t * MouseOut event handler.\n\t */\n\t_onMouseOut() {\n\t\tconst hoveredNumber = (this.getDomRef() as HTMLElement).querySelector(this._hoveredId(this._hoveredValue));\n\n\t\thoveredNumber && hoveredNumber.classList.remove(CLOCK_NUMBER_HOVER_CLASS);\n\t\tthis._hoveredValue = -1;\n\t\tthis._prevHoveredValue = -1;\n\t}\n}\n\nTimePickerClock.define();\n\nexport default TimePickerClock;\nexport type { TimePickerClockChangeEventDetail };\n"]}
@@ -48,11 +48,8 @@ type TimePickerEntityProperties = {
48
48
  * and <ui5-time-selection-inputs> components and should not be used separately.
49
49
  *
50
50
  * @constructor
51
- * @author SAP SE
52
- * @alias sap.ui.webc.main.TimePickerInternals
53
- * @extends sap.ui.webc.base.UI5Element
51
+ * @extends UI5Element
54
52
  * @abstract
55
- * @tagname ui5-time-picker-internals
56
53
  * @since 1.15.0
57
54
  * @private
58
55
  */
@@ -60,9 +57,7 @@ declare class TimePickerInternals extends UI5Element {
60
57
  /**
61
58
  * Defines a formatted time value.
62
59
  *
63
- * @type {string}
64
- * @name sap.ui.webc.main.TimePickerInternals.prototype.value
65
- * @defaultvalue undefined
60
+ * @default undefined
66
61
  * @public
67
62
  */
68
63
  value?: string;
@@ -74,63 +69,57 @@ declare class TimePickerInternals extends UI5Element {
74
69
  * hh:mm:ss a -> 2:23:15 PM
75
70
  * mm:ss -> 12:04 (only minutes and seconds)
76
71
 
77
- * @type {string}
78
- * @name sap.ui.webc.main.TimePickerInternals.prototype.formatPattern
79
- * @defaultvalue ""
72
+ * @default ""
80
73
  * @public
81
74
  */
82
75
  formatPattern: string;
83
76
  /**
84
77
  * The index of the active Clock/TogleSpinButton.
85
78
  *
86
- * @type {integer}
87
- * @defaultvalue 0
79
+ * @default 0
88
80
  * @private
89
81
  */
90
82
  _activeIndex: number;
91
83
  /**
92
84
  * Contains calendar type.
93
85
  *
94
- * @type {CalendarType}
95
86
  * @private
96
87
  */
97
88
  _calendarType: CalendarType;
98
89
  /**
99
90
  * Contains currently available Time Picker components depending on time format.
100
91
  *
101
- * @type {Array}
92
+ * @private
102
93
  */
103
94
  _entities: Array<TimePickerEntityProperties>;
104
95
  /**
105
96
  * Contains component-to-index map.
106
97
  *
107
- * @type {TimePickerComponentIndexMap}
108
98
  * @private
109
99
  */
110
100
  _componentMap: TimePickerComponentIndexMap;
111
101
  /**
112
102
  * Contains currently available Button components depending on time format.
113
103
  *
114
- * @type {Array}
115
104
  * @private
116
105
  */
117
106
  _periods: Array<TimeSelectionPeriodProperties>;
118
107
  /**
119
108
  * Id of the cooldown interval
120
109
  *
121
- * @type {ReturnType}
110
+ * @private
122
111
  */
123
112
  _typeCooldownId?: ReturnType<typeof setTimeout>;
124
113
  /**
125
114
  * Exact match number buffer
126
115
  *
127
- * @type {integer}
116
+ * @private
128
117
  */
129
118
  _exactMatch?: number;
130
119
  /**
131
120
  * Buffer for entered by keyboard numbers
132
121
  *
133
- * @type {string}
122
+ * @private
134
123
  */
135
124
  _keyboardBuffer: string;
136
125
  static i18nBundle: I18nBundle;
@@ -165,31 +154,31 @@ declare class TimePickerInternals extends UI5Element {
165
154
  /**
166
155
  * Returns name of the clock or button from the id of the event target.
167
156
  *
168
- * @returns {string | undefined} name of the clock/button
157
+ * @returns name of the clock/button
169
158
  */
170
159
  _getNameFromId(id: string): string | undefined;
171
160
  /**
172
161
  * Returns index of the clock or button from the id of the event target.
173
162
  *
174
- * @returns {number} index of the clock/button
163
+ * @returns index of the clock/button
175
164
  */
176
165
  _getIndexFromId(id: string): number;
177
166
  /**
178
167
  * Changes hours value.
179
168
  *
180
- * @param {hours} number new hours value
169
+ * @param hours new hours value
181
170
  */
182
171
  _hoursChange(hours: number): void;
183
172
  /**
184
173
  * Changes minutes value.
185
174
  *
186
- * @param {minutes} number new minutes value
175
+ * @param minutes new minutes value
187
176
  */
188
177
  _minutesChange(minutes: number): void;
189
178
  /**
190
179
  * Changes seconds value.
191
180
  *
192
- * @param {seconds} number new seconds value
181
+ * @param seconds new seconds value
193
182
  */
194
183
  _secondsChange(seconds: number): void;
195
184
  _buttonAmPm(): SegmentedButton | null | undefined;
@@ -199,14 +188,14 @@ declare class TimePickerInternals extends UI5Element {
199
188
  /**
200
189
  * Shifts hours value with +/- 12 depending on hour value and day period.
201
190
  *
202
- * @param {number} hours current hours
203
- * @returns {number} shifted hours
191
+ * @param hours current hours
192
+ * @returns shifted hours
204
193
  */
205
194
  _shiftHours(hours: number): number;
206
195
  /**
207
196
  * Clears the currently existing cooldown period and starts new one if requested.
208
197
  *
209
- * @param {boolean} startNewCooldown whether to start new cooldown period after clearing previous one
198
+ * @param startNewCooldown whether to start new cooldown period after clearing previous one
210
199
  */
211
200
  _resetCooldown(startNewCooldown: boolean): void;
212
201
  /**
@@ -30,11 +30,8 @@ const TYPE_COOLDOWN_DELAY = 1000; // Cooldown delay; 0 = disabled cooldown
30
30
  * and <ui5-time-selection-inputs> components and should not be used separately.
31
31
  *
32
32
  * @constructor
33
- * @author SAP SE
34
- * @alias sap.ui.webc.main.TimePickerInternals
35
- * @extends sap.ui.webc.base.UI5Element
33
+ * @extends UI5Element
36
34
  * @abstract
37
- * @tagname ui5-time-picker-internals
38
35
  * @since 1.15.0
39
36
  * @private
40
37
  */
@@ -191,7 +188,7 @@ let TimePickerInternals = TimePickerInternals_1 = class TimePickerInternals exte
191
188
  /**
192
189
  * Returns name of the clock or button from the id of the event target.
193
190
  *
194
- * @returns {string | undefined} name of the clock/button
191
+ * @returns name of the clock/button
195
192
  */
196
193
  _getNameFromId(id) {
197
194
  const parts = id.split("_");
@@ -200,7 +197,7 @@ let TimePickerInternals = TimePickerInternals_1 = class TimePickerInternals exte
200
197
  /**
201
198
  * Returns index of the clock or button from the id of the event target.
202
199
  *
203
- * @returns {number} index of the clock/button
200
+ * @returns index of the clock/button
204
201
  */
205
202
  _getIndexFromId(id) {
206
203
  const name = this._getNameFromId(id);
@@ -209,7 +206,7 @@ let TimePickerInternals = TimePickerInternals_1 = class TimePickerInternals exte
209
206
  /**
210
207
  * Changes hours value.
211
208
  *
212
- * @param {hours} number new hours value
209
+ * @param hours new hours value
213
210
  */
214
211
  _hoursChange(hours) {
215
212
  if (this._hoursConfiguration.isTwelveHoursFormat) {
@@ -222,7 +219,7 @@ let TimePickerInternals = TimePickerInternals_1 = class TimePickerInternals exte
222
219
  /**
223
220
  * Changes minutes value.
224
221
  *
225
- * @param {minutes} number new minutes value
222
+ * @param minutes new minutes value
226
223
  */
227
224
  _minutesChange(minutes) {
228
225
  const date = this.validDateValue;
@@ -232,7 +229,7 @@ let TimePickerInternals = TimePickerInternals_1 = class TimePickerInternals exte
232
229
  /**
233
230
  * Changes seconds value.
234
231
  *
235
- * @param {seconds} number new seconds value
232
+ * @param seconds new seconds value
236
233
  */
237
234
  _secondsChange(seconds) {
238
235
  const date = this.validDateValue;
@@ -273,8 +270,8 @@ let TimePickerInternals = TimePickerInternals_1 = class TimePickerInternals exte
273
270
  /**
274
271
  * Shifts hours value with +/- 12 depending on hour value and day period.
275
272
  *
276
- * @param {number} hours current hours
277
- * @returns {number} shifted hours
273
+ * @param hours current hours
274
+ * @returns shifted hours
278
275
  */
279
276
  _shiftHours(hours) {
280
277
  if (this._period === this.periodsArray[0]) { // AM
@@ -288,7 +285,7 @@ let TimePickerInternals = TimePickerInternals_1 = class TimePickerInternals exte
288
285
  /**
289
286
  * Clears the currently existing cooldown period and starts new one if requested.
290
287
  *
291
- * @param {boolean} startNewCooldown whether to start new cooldown period after clearing previous one
288
+ * @param startNewCooldown whether to start new cooldown period after clearing previous one
292
289
  */
293
290
  _resetCooldown(startNewCooldown) {
294
291
  if (!TYPE_COOLDOWN_DELAY) {
@@ -1 +1 @@
1
- {"version":3,"file":"TimePickerInternals.js","sourceRoot":"","sources":["../src/TimePickerInternals.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 { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\"; // default calendar for bundling\nimport CalendarType from \"@ui5/webcomponents-base/dist/types/CalendarType.js\";\nimport { fetchCldr } from \"@ui5/webcomponents-base/dist/asset-registries/LocaleData.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport SegmentedButton from \"./SegmentedButton.js\";\nimport {\n\tgetHoursConfigByFormat,\n\tgetTimeControlsByFormat,\n\tHourType,\n} from \"./timepicker-utils/TimeSlider.js\";\nimport {\n\tTIMEPICKER_HOURS_LABEL,\n\tTIMEPICKER_MINUTES_LABEL,\n\tTIMEPICKER_SECONDS_LABEL,\n\tTIMEPICKER_CLOCK_DIAL_LABEL,\n} from \"./generated/i18n/i18n-defaults.js\";\n\ntype TimePickerComponentIndexMap = {\n\thours: number,\n\tminutes: number,\n\tseconds: number,\n}\n\ntype TimeSelectionPeriodProperties = {\n\tlabel: string,\n\tpressed: boolean,\n}\n\ntype TimeSelectionChangeEventDetail = {\n\tvalue: string | undefined,\n\tvalid: boolean,\n}\n\ntype TimePickerEntityAttributes = {\n\tmin: number,\n\tmax: number,\n\tstep: number,\n}\n\ntype TimePickerEntityProperties = {\n\tlabel: string,\n\tentity?: string,\n\titemMin?: number,\n\titemMax?: number,\n\tvalue: number,\n\tstringValue?: string,\n\ttextValue?: string,\n\tdisplayStep?: number,\n\tlastItemReplacement?: number,\n\tshowInnerCircle?: boolean,\n\tprependZero: boolean,\n\tactive?: boolean,\n\thasSeparator?: boolean,\n\tattributes?: TimePickerEntityAttributes,\n}\n\nconst TYPE_COOLDOWN_DELAY = 1000; // Cooldown delay; 0 = disabled cooldown\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * <code>ui5-time-picker-internals</code> is helper component that contains shared methods used in <code>ui5-time-selection-clocks</code>\n * and <ui5-time-selection-inputs> components and should not be used separately.\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.TimePickerInternals\n * @extends sap.ui.webc.base.UI5Element\n * @abstract\n * @tagname ui5-time-picker-internals\n * @since 1.15.0\n * @private\n */\n@customElement({\n\ttag: \"ui5-time-picker-internals\",\n})\n\n/**\n * Fired when the value changes due to user interaction with the sliders.\n */\n@event(\"change\", {\n\tdetail: {\n\t\tvalue: { type: String },\n\t\tvalid: { type: Boolean },\n\t},\n})\n\nclass TimePickerInternals extends UI5Element {\n\t/**\n\t * Defines a formatted time value.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.TimePickerInternals.prototype.value\n\t * @defaultvalue undefined\n\t * @public\n\t */\n\t@property({ defaultValue: undefined })\n\tvalue?: string;\n\n\t/**\n\t * Determines the format, displayed in the input field.\n\t *\n\t * Example:\n\t * HH:mm:ss -> 11:42:35\n\t * hh:mm:ss a -> 2:23:15 PM\n\t * mm:ss -> 12:04 (only minutes and seconds)\n\n\t * @type {string}\n\t * @name sap.ui.webc.main.TimePickerInternals.prototype.formatPattern\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\tformatPattern!: string;\n\n\t/**\n\t * The index of the active Clock/TogleSpinButton.\n\t *\n\t * @type {integer}\n\t * @defaultvalue 0\n\t * @private\n\t */\n\t@property({ validator: Integer, defaultValue: 0, noAttribute: true })\n\t_activeIndex!: number;\n\n\t/**\n\t * Contains calendar type.\n\t *\n\t * @type {CalendarType}\n\t * @private\n\t */\n\t@property({ type: CalendarType })\n\t_calendarType!: CalendarType;\n\n\t/**\n\t * Contains currently available Time Picker components depending on time format.\n\t *\n\t * @type {Array}\n\t */\n\t@property({ type: Object, multiple: true })\n\t_entities!: Array<TimePickerEntityProperties>;\n\n\t/**\n\t * Contains component-to-index map.\n\t *\n\t * @type {TimePickerComponentIndexMap}\n\t * @private\n\t */\n\t@property({ type: Object })\n\t_componentMap!: TimePickerComponentIndexMap;\n\n\t/**\n\t * Contains currently available Button components depending on time format.\n\t *\n\t * @type {Array}\n\t * @private\n\t */\n\t@property({ type: Object, multiple: true })\n\t_periods!: Array<TimeSelectionPeriodProperties>;\n\n\t/**\n\t * Id of the cooldown interval\n\t *\n\t * @type {ReturnType}\n\t */\n\t@property({ validator: Integer, noAttribute: true })\n\t_typeCooldownId?: ReturnType<typeof setTimeout>;\n\n\t/**\n\t * Exact match number buffer\n\t *\n\t * @type {integer}\n\t */\n\t@property({ validator: Integer, noAttribute: true })\n\t_exactMatch?: number;\n\n\t/**\n\t * Buffer for entered by keyboard numbers\n\t *\n\t * @type {string}\n\t */\n\t@property({ defaultValue: \"\", noAttribute: true })\n\t_keyboardBuffer!: string;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tstatic async onDefine() {\n\t\t[TimePickerInternals.i18nBundle] = await Promise.all([\n\t\t\tgetI18nBundle(\"@ui5/webcomponents\"),\n\t\t\tfetchCldr(getLocale().getLanguage(), getLocale().getRegion(), getLocale().getScript()),\n\t\t]);\n\t}\n\n\tget _hoursConfiguration() {\n\t\t// @ts-ignore aFormatArray is a private API of DateFormat\n\t\tconst formatArray = this.getFormat().aFormatArray as Array<{ type: HourType }>;\n\t\tconst hourFormat = formatArray.find(item => item.type.startsWith(\"hour\")); // try to find an entry for the hours\n\t\treturn getHoursConfigByFormat(hourFormat ? hourFormat.type : \"hour0_23\");\n\t}\n\n\tget _zeroPaddedHours() {\n\t\t// @ts-ignore aFormatArray is a private API of DateFormat\n\t\tconst formatArray = this.getFormat().aFormatArray as Array<{ type: HourType }>;\n\t\tconst hourFormat = formatArray.find(item => item.type.startsWith(\"hour\")); // try to find an entry for the hours\n\t\t// @ts-ignore digits is a private API of aFormatArray\n\t\treturn !(hourFormat.digits && (hourFormat.digits as Integer) === 1);\n\t}\n\n\tget _neededComponents() {\n\t\t// @ts-ignore aFormatArray is a private API of DateFormat\n\t\tconst formatArray = this.getFormat().aFormatArray as Array<{ type: HourType }>;\n\t\treturn getTimeControlsByFormat(formatArray, this._hoursConfiguration);\n\t}\n\n\tget _hasHoursComponent() {\n\t\treturn this._neededComponents[0];\n\t}\n\n\tget _hasMinutesComponent() {\n\t\treturn this._neededComponents[1];\n\t}\n\n\tget _hasSecondsComponent() {\n\t\treturn this._neededComponents[2];\n\t}\n\n\tget _hasPeriodsComponent() {\n\t\treturn this._neededComponents[3];\n\t}\n\n\tget dateValue() {\n\t\treturn this.value ? this.getFormat().parse(this.value, undefined as unknown as boolean, undefined as unknown as boolean) as Date : new Date();\n\t}\n\n\tget validDateValue() {\n\t\treturn this.value !== undefined && this.isValid(this.value) ? this.dateValue : new Date();\n\t}\n\n\tget periodsArray() {\n\t\t// @ts-ignore aDayPeriodsAbbrev is a private API of DateFormat\n\t\tconst dayPeriodsAbbrev = this.getFormat().aDayPeriodsAbbrev as Array<string>;\n\t\treturn dayPeriodsAbbrev.map((x: string) => x.toUpperCase());\n\t}\n\n\tget _hours() {\n\t\tlet hours;\n\t\tconst dateValue = this.validDateValue;\n\t\tif (this._hoursConfiguration.isTwelveHoursFormat && dateValue.getHours() > this._hoursConfiguration.maxHour) {\n\t\t\thours = dateValue.getHours() - 12;\n\t\t} else if (this._hoursConfiguration.isTwelveHoursFormat && dateValue.getHours() < this._hoursConfiguration.minHour) {\n\t\t\thours = dateValue.getHours() + 12;\n\t\t} else {\n\t\t\thours = dateValue.getHours();\n\t\t}\n\t\tif (hours.toString().length === 1 && this._zeroPaddedHours) {\n\t\t\thours = `0${hours}`;\n\t\t}\n\t\treturn hours.toString();\n\t}\n\n\tget _minutes() {\n\t\tconst minutes = this.validDateValue.getMinutes().toString();\n\t\treturn minutes.length === 1 ? `0${minutes}` : minutes;\n\t}\n\n\tget _seconds() {\n\t\tconst seconds = this.validDateValue.getSeconds().toString();\n\t\treturn seconds.length === 1 ? `0${seconds}` : seconds;\n\t}\n\n\tget _period() {\n\t\tlet period;\n\t\tconst dateValue = this.validDateValue;\n\n\t\tif (!this._hoursConfiguration.isTwelveHoursFormat) {\n\t\t\treturn undefined;\n\t\t}\n\t\tif (this._hoursConfiguration.minHour === 1) {\n\t\t\tperiod = dateValue.getHours() >= this._hoursConfiguration.maxHour ? this.periodsArray[1] : this.periodsArray[0];\n\t\t} else {\n\t\t\tperiod = (dateValue.getHours() > this._hoursConfiguration.maxHour || dateValue.getHours() === this._hoursConfiguration.minHour) ? this.periodsArray[1] : this.periodsArray[0];\n\t\t}\n\t\treturn period;\n\t}\n\n\tget _formatPattern() {\n\t\tconst pattern = this.formatPattern;\n\t\tconst hasHours = !!pattern.match(/H/i);\n\t\tconst fallback = !pattern || !hasHours;\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\n\t\treturn fallback ? localeData.getCombinedDateTimePattern(\"medium\", \"medium\", undefined) : pattern;\n\t}\n\n\tget _isPattern() {\n\t\treturn this._formatPattern !== \"medium\" && this._formatPattern !== \"short\" && this._formatPattern !== \"long\";\n\t}\n\n\tget hoursLabel() {\n\t\treturn TimePickerInternals.i18nBundle.getText(TIMEPICKER_HOURS_LABEL);\n\t}\n\n\tget minutesLabel() {\n\t\treturn TimePickerInternals.i18nBundle.getText(TIMEPICKER_MINUTES_LABEL);\n\t}\n\n\tget secondsLabel() {\n\t\treturn TimePickerInternals.i18nBundle.getText(TIMEPICKER_SECONDS_LABEL);\n\t}\n\n\tget clockDialAriaLabel() {\n\t\treturn TimePickerInternals.i18nBundle.getText(TIMEPICKER_CLOCK_DIAL_LABEL);\n\t}\n\n\tsetValue(date: Date) {\n\t\tconst value = this.formatValue(date);\n\n\t\tif (this.isValid(value)) {\n\t\t\tthis.value = this.normalizeValue(value);\n\t\t\tthis.fireEvent<TimeSelectionChangeEventDetail>(\"change\", { value: this.value, valid: true });\n\t\t}\n\t}\n\n\tisValid(value: string) {\n\t\treturn value === \"\" || this.getFormat().parse(value, undefined as unknown as boolean, undefined as unknown as boolean);\n\t}\n\n\tnormalizeValue(value: string) {\n\t\tif (value === \"\") {\n\t\t\treturn value;\n\t\t}\n\t\treturn this.getFormat().format(this.getFormat().parse(value, undefined as unknown as boolean, undefined as unknown as boolean));\n\t}\n\n\tgetFormat() {\n\t\tlet dateFormat: DateFormat;\n\t\tif (this._isPattern) {\n\t\t\tdateFormat = DateFormat.getDateInstance({\n\t\t\t\tcalendarType: this._calendarType,\n\t\t\t\tpattern: this._formatPattern,\n\t\t\t});\n\t\t} else {\n\t\t\tdateFormat = DateFormat.getDateInstance({\n\t\t\t\tcalendarType: this._calendarType,\n\t\t\t\tstyle: this._formatPattern,\n\t\t\t});\n\t\t}\n\t\treturn dateFormat;\n\t}\n\n\tformatValue(date: Date) {\n\t\treturn this.getFormat().format(date);\n\t}\n\n\t_componentKey(name: string) {\n\t\ttype ComponentKey = keyof typeof this._componentMap;\n\t\treturn name as ComponentKey;\n\t}\n\n\t_indexFromName(name: string) {\n\t\treturn this._componentMap[this._componentKey(name)];\n\t}\n\n\t/**\n\t * Returns name of the clock or button from the id of the event target.\n\t *\n\t * @returns {string | undefined} name of the clock/button\n\t */\n\t_getNameFromId(id: string) {\n\t\tconst parts = id.split(\"_\");\n\n\t\treturn parts.length ? parts[parts.length - 1] : undefined;\n\t}\n\n\t/**\n\t * Returns index of the clock or button from the id of the event target.\n\t *\n\t * @returns {number} index of the clock/button\n\t */\n\t_getIndexFromId(id: string) {\n\t\tconst name = this._getNameFromId(id);\n\n\t\treturn name ? this._indexFromName(name) : 0;\n\t}\n\n\t/**\n\t * Changes hours value.\n\t *\n\t * @param {hours} number new hours value\n\t */\n\t_hoursChange(hours: number) {\n\t\tif (this._hoursConfiguration.isTwelveHoursFormat) {\n\t\t\thours = this._shiftHours(hours);\n\t\t}\n\n\t\tconst date = this.validDateValue;\n\n\t\tdate.setHours(hours);\n\t\tthis.setValue(date);\n\t}\n\n\t/**\n\t * Changes minutes value.\n\t *\n\t * @param {minutes} number new minutes value\n\t */\n\t_minutesChange(minutes: number) {\n\t\tconst date = this.validDateValue;\n\n\t\tdate.setMinutes(minutes);\n\t\tthis.setValue(date);\n\t}\n\n\t/**\n\t * Changes seconds value.\n\t *\n\t * @param {seconds} number new seconds value\n\t */\n\t_secondsChange(seconds: number) {\n\t\tconst date = this.validDateValue;\n\n\t\tdate.setSeconds(seconds);\n\t\tthis.setValue(date);\n\t}\n\n\t_buttonAmPm() {\n\t\treturn this._hasPeriodsComponent ? this.shadowRoot?.querySelector<SegmentedButton>(`#${this._id}_AmPm`) : undefined;\n\t}\n\n\t_createPeriodComponent() {\n\t\tif (this._hasPeriodsComponent) {\n\t\t\t// add period item\n\t\t\tthis.periodsArray.forEach(item => {\n\t\t\t\tthis._periods.push({\n\t\t\t\t\t\"label\": item,\n\t\t\t\t\t\"pressed\": this._period === item,\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\t}\n\n\t_periodChange(evt: PointerEvent) {\n\t\tconst periodItem = evt.target;\n\n\t\tif (periodItem) {\n\t\t\tconst period = (periodItem as HTMLElement).textContent;\n\t\t\tthis._calculatePeriodChange(period as string);\n\t\t}\n\t}\n\n\t_calculatePeriodChange(period: string) {\n\t\tconst date = this.validDateValue;\n\n\t\tif (period === this._periods[0].label && date.getHours() >= 12) {\n\t\t\tdate.setHours(date.getHours() - 12);\n\t\t} if (period === this._periods[1].label && date.getHours() < 12) {\n\t\t\tdate.setHours(date.getHours() + 12);\n\t\t}\n\t\tthis.setValue(date);\n\t}\n\n\t/**\n\t * Shifts hours value with +/- 12 depending on hour value and day period.\n\t *\n\t * @param {number} hours current hours\n\t * @returns {number} shifted hours\n\t */\n\t_shiftHours(hours: number) {\n\t\tif (this._period === this.periodsArray[0]) { // AM\n\t\t\thours = hours === 12 ? 0 : hours;\n\t\t} else if (this._period === this.periodsArray[1]) { // PM\n\t\t\thours = hours === 12 ? hours : hours + 12;\n\t\t}\n\t\treturn hours;\n\t}\n\n\t/**\n\t * Clears the currently existing cooldown period and starts new one if requested.\n\t *\n\t * @param {boolean} startNewCooldown whether to start new cooldown period after clearing previous one\n\t */\n\t_resetCooldown(startNewCooldown: boolean) {\n\t\tif (!TYPE_COOLDOWN_DELAY) {\n\t\t\treturn; // if delay is 0, cooldown is disabled\n\t\t}\n\t\tif (this._typeCooldownId) {\n\t\t\tclearTimeout(this._typeCooldownId);\n\t\t}\n\t\tif (startNewCooldown) {\n\t\t\tthis._startCooldown();\n\t\t}\n\t}\n\n\t/**\n\t * Starts new cooldown period.\n\t */\n\t_startCooldown() {\n\t\tif (!TYPE_COOLDOWN_DELAY) {\n\t\t\treturn; // if delay is 0, cooldown is disabled\n\t\t}\n\t\tthis._typeCooldownId = setTimeout(() => {\n\t\t\tthis._keyboardBuffer = \"\";\n\t\t\tthis._typeCooldownId = undefined;\n\t\t\tif (this._exactMatch) {\n\t\t\t\tthis._setExactMatch();\n\t\t\t\tthis._exactMatch = undefined;\n\t\t\t}\n\t\t}, TYPE_COOLDOWN_DELAY);\n\t}\n\n\t/**\n\t * Sets the exact match value. Override if necessary.\n\t */\n\t_setExactMatch() {}\n}\n\nTimePickerInternals.define();\n\nexport default TimePickerInternals;\nexport type {\n\tTimePickerComponentIndexMap,\n\tTimeSelectionChangeEventDetail,\n};\n"]}
1
+ {"version":3,"file":"TimePickerInternals.js","sourceRoot":"","sources":["../src/TimePickerInternals.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 { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\"; // default calendar for bundling\nimport CalendarType from \"@ui5/webcomponents-base/dist/types/CalendarType.js\";\nimport { fetchCldr } from \"@ui5/webcomponents-base/dist/asset-registries/LocaleData.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport SegmentedButton from \"./SegmentedButton.js\";\nimport {\n\tgetHoursConfigByFormat,\n\tgetTimeControlsByFormat,\n\tHourType,\n} from \"./timepicker-utils/TimeSlider.js\";\nimport {\n\tTIMEPICKER_HOURS_LABEL,\n\tTIMEPICKER_MINUTES_LABEL,\n\tTIMEPICKER_SECONDS_LABEL,\n\tTIMEPICKER_CLOCK_DIAL_LABEL,\n} from \"./generated/i18n/i18n-defaults.js\";\n\ntype TimePickerComponentIndexMap = {\n\thours: number,\n\tminutes: number,\n\tseconds: number,\n}\n\ntype TimeSelectionPeriodProperties = {\n\tlabel: string,\n\tpressed: boolean,\n}\n\ntype TimeSelectionChangeEventDetail = {\n\tvalue: string | undefined,\n\tvalid: boolean,\n}\n\ntype TimePickerEntityAttributes = {\n\tmin: number,\n\tmax: number,\n\tstep: number,\n}\n\ntype TimePickerEntityProperties = {\n\tlabel: string,\n\tentity?: string,\n\titemMin?: number,\n\titemMax?: number,\n\tvalue: number,\n\tstringValue?: string,\n\ttextValue?: string,\n\tdisplayStep?: number,\n\tlastItemReplacement?: number,\n\tshowInnerCircle?: boolean,\n\tprependZero: boolean,\n\tactive?: boolean,\n\thasSeparator?: boolean,\n\tattributes?: TimePickerEntityAttributes,\n}\n\nconst TYPE_COOLDOWN_DELAY = 1000; // Cooldown delay; 0 = disabled cooldown\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * <code>ui5-time-picker-internals</code> is helper component that contains shared methods used in <code>ui5-time-selection-clocks</code>\n * and <ui5-time-selection-inputs> components and should not be used separately.\n *\n * @constructor\n * @extends UI5Element\n * @abstract\n * @since 1.15.0\n * @private\n */\n@customElement({\n\ttag: \"ui5-time-picker-internals\",\n})\n\n/**\n * Fired when the value changes due to user interaction with the sliders.\n */\n@event(\"change\", {\n\tdetail: {\n\t\tvalue: { type: String },\n\t\tvalid: { type: Boolean },\n\t},\n})\n\nclass TimePickerInternals extends UI5Element {\n\t/**\n\t * Defines a formatted time value.\n\t *\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ defaultValue: undefined })\n\tvalue?: string;\n\n\t/**\n\t * Determines the format, displayed in the input field.\n\t *\n\t * Example:\n\t * HH:mm:ss -> 11:42:35\n\t * hh:mm:ss a -> 2:23:15 PM\n\t * mm:ss -> 12:04 (only minutes and seconds)\n\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tformatPattern!: string;\n\n\t/**\n\t * The index of the active Clock/TogleSpinButton.\n\t *\n\t * @default 0\n\t * @private\n\t */\n\t@property({ validator: Integer, defaultValue: 0, noAttribute: true })\n\t_activeIndex!: number;\n\n\t/**\n\t * Contains calendar type.\n\t *\n\t * @private\n\t */\n\t@property({ type: CalendarType })\n\t_calendarType!: CalendarType;\n\n\t/**\n\t * Contains currently available Time Picker components depending on time format.\n\t *\n\t * @private\n\t */\n\t@property({ type: Object, multiple: true })\n\t_entities!: Array<TimePickerEntityProperties>;\n\n\t/**\n\t * Contains component-to-index map.\n\t *\n\t * @private\n\t */\n\t@property({ type: Object })\n\t_componentMap!: TimePickerComponentIndexMap;\n\n\t/**\n\t * Contains currently available Button components depending on time format.\n\t *\n\t * @private\n\t */\n\t@property({ type: Object, multiple: true })\n\t_periods!: Array<TimeSelectionPeriodProperties>;\n\n\t/**\n\t * Id of the cooldown interval\n\t *\n\t * @private\n\t */\n\t@property({ validator: Integer, noAttribute: true })\n\t_typeCooldownId?: ReturnType<typeof setTimeout>;\n\n\t/**\n\t * Exact match number buffer\n\t *\n\t * @private\n\t */\n\t@property({ validator: Integer, noAttribute: true })\n\t_exactMatch?: number;\n\n\t/**\n\t * Buffer for entered by keyboard numbers\n\t *\n\t * @private\n\t */\n\t@property({ defaultValue: \"\", noAttribute: true })\n\t_keyboardBuffer!: string;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tstatic async onDefine() {\n\t\t[TimePickerInternals.i18nBundle] = await Promise.all([\n\t\t\tgetI18nBundle(\"@ui5/webcomponents\"),\n\t\t\tfetchCldr(getLocale().getLanguage(), getLocale().getRegion(), getLocale().getScript()),\n\t\t]);\n\t}\n\n\tget _hoursConfiguration() {\n\t\t// @ts-ignore aFormatArray is a private API of DateFormat\n\t\tconst formatArray = this.getFormat().aFormatArray as Array<{ type: HourType }>;\n\t\tconst hourFormat = formatArray.find(item => item.type.startsWith(\"hour\")); // try to find an entry for the hours\n\t\treturn getHoursConfigByFormat(hourFormat ? hourFormat.type : \"hour0_23\");\n\t}\n\n\tget _zeroPaddedHours() {\n\t\t// @ts-ignore aFormatArray is a private API of DateFormat\n\t\tconst formatArray = this.getFormat().aFormatArray as Array<{ type: HourType }>;\n\t\tconst hourFormat = formatArray.find(item => item.type.startsWith(\"hour\")); // try to find an entry for the hours\n\t\t// @ts-ignore digits is a private API of aFormatArray\n\t\treturn !(hourFormat.digits && (hourFormat.digits as Integer) === 1);\n\t}\n\n\tget _neededComponents() {\n\t\t// @ts-ignore aFormatArray is a private API of DateFormat\n\t\tconst formatArray = this.getFormat().aFormatArray as Array<{ type: HourType }>;\n\t\treturn getTimeControlsByFormat(formatArray, this._hoursConfiguration);\n\t}\n\n\tget _hasHoursComponent() {\n\t\treturn this._neededComponents[0];\n\t}\n\n\tget _hasMinutesComponent() {\n\t\treturn this._neededComponents[1];\n\t}\n\n\tget _hasSecondsComponent() {\n\t\treturn this._neededComponents[2];\n\t}\n\n\tget _hasPeriodsComponent() {\n\t\treturn this._neededComponents[3];\n\t}\n\n\tget dateValue() {\n\t\treturn this.value ? this.getFormat().parse(this.value, undefined as unknown as boolean, undefined as unknown as boolean) as Date : new Date();\n\t}\n\n\tget validDateValue() {\n\t\treturn this.value !== undefined && this.isValid(this.value) ? this.dateValue : new Date();\n\t}\n\n\tget periodsArray() {\n\t\t// @ts-ignore aDayPeriodsAbbrev is a private API of DateFormat\n\t\tconst dayPeriodsAbbrev = this.getFormat().aDayPeriodsAbbrev as Array<string>;\n\t\treturn dayPeriodsAbbrev.map((x: string) => x.toUpperCase());\n\t}\n\n\tget _hours() {\n\t\tlet hours;\n\t\tconst dateValue = this.validDateValue;\n\t\tif (this._hoursConfiguration.isTwelveHoursFormat && dateValue.getHours() > this._hoursConfiguration.maxHour) {\n\t\t\thours = dateValue.getHours() - 12;\n\t\t} else if (this._hoursConfiguration.isTwelveHoursFormat && dateValue.getHours() < this._hoursConfiguration.minHour) {\n\t\t\thours = dateValue.getHours() + 12;\n\t\t} else {\n\t\t\thours = dateValue.getHours();\n\t\t}\n\t\tif (hours.toString().length === 1 && this._zeroPaddedHours) {\n\t\t\thours = `0${hours}`;\n\t\t}\n\t\treturn hours.toString();\n\t}\n\n\tget _minutes() {\n\t\tconst minutes = this.validDateValue.getMinutes().toString();\n\t\treturn minutes.length === 1 ? `0${minutes}` : minutes;\n\t}\n\n\tget _seconds() {\n\t\tconst seconds = this.validDateValue.getSeconds().toString();\n\t\treturn seconds.length === 1 ? `0${seconds}` : seconds;\n\t}\n\n\tget _period() {\n\t\tlet period;\n\t\tconst dateValue = this.validDateValue;\n\n\t\tif (!this._hoursConfiguration.isTwelveHoursFormat) {\n\t\t\treturn undefined;\n\t\t}\n\t\tif (this._hoursConfiguration.minHour === 1) {\n\t\t\tperiod = dateValue.getHours() >= this._hoursConfiguration.maxHour ? this.periodsArray[1] : this.periodsArray[0];\n\t\t} else {\n\t\t\tperiod = (dateValue.getHours() > this._hoursConfiguration.maxHour || dateValue.getHours() === this._hoursConfiguration.minHour) ? this.periodsArray[1] : this.periodsArray[0];\n\t\t}\n\t\treturn period;\n\t}\n\n\tget _formatPattern() {\n\t\tconst pattern = this.formatPattern;\n\t\tconst hasHours = !!pattern.match(/H/i);\n\t\tconst fallback = !pattern || !hasHours;\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\n\t\treturn fallback ? localeData.getCombinedDateTimePattern(\"medium\", \"medium\", undefined) : pattern;\n\t}\n\n\tget _isPattern() {\n\t\treturn this._formatPattern !== \"medium\" && this._formatPattern !== \"short\" && this._formatPattern !== \"long\";\n\t}\n\n\tget hoursLabel() {\n\t\treturn TimePickerInternals.i18nBundle.getText(TIMEPICKER_HOURS_LABEL);\n\t}\n\n\tget minutesLabel() {\n\t\treturn TimePickerInternals.i18nBundle.getText(TIMEPICKER_MINUTES_LABEL);\n\t}\n\n\tget secondsLabel() {\n\t\treturn TimePickerInternals.i18nBundle.getText(TIMEPICKER_SECONDS_LABEL);\n\t}\n\n\tget clockDialAriaLabel() {\n\t\treturn TimePickerInternals.i18nBundle.getText(TIMEPICKER_CLOCK_DIAL_LABEL);\n\t}\n\n\tsetValue(date: Date) {\n\t\tconst value = this.formatValue(date);\n\n\t\tif (this.isValid(value)) {\n\t\t\tthis.value = this.normalizeValue(value);\n\t\t\tthis.fireEvent<TimeSelectionChangeEventDetail>(\"change\", { value: this.value, valid: true });\n\t\t}\n\t}\n\n\tisValid(value: string) {\n\t\treturn value === \"\" || this.getFormat().parse(value, undefined as unknown as boolean, undefined as unknown as boolean);\n\t}\n\n\tnormalizeValue(value: string) {\n\t\tif (value === \"\") {\n\t\t\treturn value;\n\t\t}\n\t\treturn this.getFormat().format(this.getFormat().parse(value, undefined as unknown as boolean, undefined as unknown as boolean));\n\t}\n\n\tgetFormat() {\n\t\tlet dateFormat: DateFormat;\n\t\tif (this._isPattern) {\n\t\t\tdateFormat = DateFormat.getDateInstance({\n\t\t\t\tcalendarType: this._calendarType,\n\t\t\t\tpattern: this._formatPattern,\n\t\t\t});\n\t\t} else {\n\t\t\tdateFormat = DateFormat.getDateInstance({\n\t\t\t\tcalendarType: this._calendarType,\n\t\t\t\tstyle: this._formatPattern,\n\t\t\t});\n\t\t}\n\t\treturn dateFormat;\n\t}\n\n\tformatValue(date: Date) {\n\t\treturn this.getFormat().format(date);\n\t}\n\n\t_componentKey(name: string) {\n\t\ttype ComponentKey = keyof typeof this._componentMap;\n\t\treturn name as ComponentKey;\n\t}\n\n\t_indexFromName(name: string) {\n\t\treturn this._componentMap[this._componentKey(name)];\n\t}\n\n\t/**\n\t * Returns name of the clock or button from the id of the event target.\n\t *\n\t * @returns name of the clock/button\n\t */\n\t_getNameFromId(id: string): string | undefined {\n\t\tconst parts = id.split(\"_\");\n\n\t\treturn parts.length ? parts[parts.length - 1] : undefined;\n\t}\n\n\t/**\n\t * Returns index of the clock or button from the id of the event target.\n\t *\n\t * @returns index of the clock/button\n\t */\n\t_getIndexFromId(id: string): number {\n\t\tconst name = this._getNameFromId(id);\n\n\t\treturn name ? this._indexFromName(name) : 0;\n\t}\n\n\t/**\n\t * Changes hours value.\n\t *\n\t * @param hours new hours value\n\t */\n\t_hoursChange(hours: number) {\n\t\tif (this._hoursConfiguration.isTwelveHoursFormat) {\n\t\t\thours = this._shiftHours(hours);\n\t\t}\n\n\t\tconst date = this.validDateValue;\n\n\t\tdate.setHours(hours);\n\t\tthis.setValue(date);\n\t}\n\n\t/**\n\t * Changes minutes value.\n\t *\n\t * @param minutes new minutes value\n\t */\n\t_minutesChange(minutes: number) {\n\t\tconst date = this.validDateValue;\n\n\t\tdate.setMinutes(minutes);\n\t\tthis.setValue(date);\n\t}\n\n\t/**\n\t * Changes seconds value.\n\t *\n\t * @param seconds new seconds value\n\t */\n\t_secondsChange(seconds: number) {\n\t\tconst date = this.validDateValue;\n\n\t\tdate.setSeconds(seconds);\n\t\tthis.setValue(date);\n\t}\n\n\t_buttonAmPm() {\n\t\treturn this._hasPeriodsComponent ? this.shadowRoot?.querySelector<SegmentedButton>(`#${this._id}_AmPm`) : undefined;\n\t}\n\n\t_createPeriodComponent() {\n\t\tif (this._hasPeriodsComponent) {\n\t\t\t// add period item\n\t\t\tthis.periodsArray.forEach(item => {\n\t\t\t\tthis._periods.push({\n\t\t\t\t\t\"label\": item,\n\t\t\t\t\t\"pressed\": this._period === item,\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\t}\n\n\t_periodChange(evt: PointerEvent) {\n\t\tconst periodItem = evt.target;\n\n\t\tif (periodItem) {\n\t\t\tconst period = (periodItem as HTMLElement).textContent;\n\t\t\tthis._calculatePeriodChange(period as string);\n\t\t}\n\t}\n\n\t_calculatePeriodChange(period: string) {\n\t\tconst date = this.validDateValue;\n\n\t\tif (period === this._periods[0].label && date.getHours() >= 12) {\n\t\t\tdate.setHours(date.getHours() - 12);\n\t\t} if (period === this._periods[1].label && date.getHours() < 12) {\n\t\t\tdate.setHours(date.getHours() + 12);\n\t\t}\n\t\tthis.setValue(date);\n\t}\n\n\t/**\n\t * Shifts hours value with +/- 12 depending on hour value and day period.\n\t *\n\t * @param hours current hours\n\t * @returns shifted hours\n\t */\n\t_shiftHours(hours: number): number {\n\t\tif (this._period === this.periodsArray[0]) { // AM\n\t\t\thours = hours === 12 ? 0 : hours;\n\t\t} else if (this._period === this.periodsArray[1]) { // PM\n\t\t\thours = hours === 12 ? hours : hours + 12;\n\t\t}\n\t\treturn hours;\n\t}\n\n\t/**\n\t * Clears the currently existing cooldown period and starts new one if requested.\n\t *\n\t * @param startNewCooldown whether to start new cooldown period after clearing previous one\n\t */\n\t_resetCooldown(startNewCooldown: boolean) {\n\t\tif (!TYPE_COOLDOWN_DELAY) {\n\t\t\treturn; // if delay is 0, cooldown is disabled\n\t\t}\n\t\tif (this._typeCooldownId) {\n\t\t\tclearTimeout(this._typeCooldownId);\n\t\t}\n\t\tif (startNewCooldown) {\n\t\t\tthis._startCooldown();\n\t\t}\n\t}\n\n\t/**\n\t * Starts new cooldown period.\n\t */\n\t_startCooldown() {\n\t\tif (!TYPE_COOLDOWN_DELAY) {\n\t\t\treturn; // if delay is 0, cooldown is disabled\n\t\t}\n\t\tthis._typeCooldownId = setTimeout(() => {\n\t\t\tthis._keyboardBuffer = \"\";\n\t\t\tthis._typeCooldownId = undefined;\n\t\t\tif (this._exactMatch) {\n\t\t\t\tthis._setExactMatch();\n\t\t\t\tthis._exactMatch = undefined;\n\t\t\t}\n\t\t}, TYPE_COOLDOWN_DELAY);\n\t}\n\n\t/**\n\t * Sets the exact match value. Override if necessary.\n\t */\n\t_setExactMatch() {}\n}\n\nTimePickerInternals.define();\n\nexport default TimePickerInternals;\nexport type {\n\tTimePickerComponentIndexMap,\n\tTimeSelectionChangeEventDetail,\n};\n"]}