@ui5/webcomponents 0.0.0-32b659ddc → 0.0.0-35e2c9666

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 (1360) hide show
  1. package/CHANGELOG.md +1133 -1
  2. package/README.md +145 -41
  3. package/customI18n.js +50 -0
  4. package/dist/Assets-static.js +6 -0
  5. package/dist/Assets.js +3 -2
  6. package/dist/Avatar.js +223 -37
  7. package/dist/AvatarGroup.js +603 -0
  8. package/dist/Badge.js +44 -22
  9. package/dist/Breadcrumbs.js +632 -0
  10. package/dist/BreadcrumbsItem.js +103 -0
  11. package/dist/BusyIndicator.js +171 -17
  12. package/dist/Button.js +199 -43
  13. package/dist/Calendar.js +352 -551
  14. package/dist/CalendarDate.js +45 -0
  15. package/dist/CalendarHeader.js +134 -63
  16. package/dist/CalendarPart.js +111 -0
  17. package/dist/Card.js +43 -156
  18. package/dist/CardHeader.js +288 -0
  19. package/dist/Carousel.js +455 -77
  20. package/dist/CheckBox.js +187 -52
  21. package/dist/ColorPalette.js +494 -0
  22. package/dist/ColorPaletteItem.js +137 -0
  23. package/dist/ColorPalettePopover.js +244 -0
  24. package/dist/ColorPicker.js +562 -0
  25. package/dist/ComboBox.js +732 -104
  26. package/dist/ComboBoxFilters.js +8 -1
  27. package/dist/ComboBoxGroupItem.js +70 -0
  28. package/dist/ComboBoxItem.js +12 -24
  29. package/dist/CustomListItem.js +38 -9
  30. package/dist/DateComponentBase.js +168 -0
  31. package/dist/DatePicker.js +471 -381
  32. package/dist/DateRangePicker.js +356 -0
  33. package/dist/DateTimePicker.js +430 -0
  34. package/dist/DayPicker.js +513 -436
  35. package/dist/Dialog.js +514 -47
  36. package/dist/DurationPicker.js +312 -0
  37. package/dist/FileUploader.js +238 -32
  38. package/dist/GroupHeaderListItem.js +36 -8
  39. package/dist/Icon.js +224 -41
  40. package/dist/Input.js +955 -127
  41. package/dist/Interfaces.js +192 -0
  42. package/dist/Label.js +34 -13
  43. package/dist/Link.js +171 -32
  44. package/dist/List.js +575 -121
  45. package/dist/ListItem.js +139 -30
  46. package/dist/ListItemBase.js +55 -9
  47. package/dist/MessageStrip.js +87 -70
  48. package/dist/MonthPicker.js +181 -184
  49. package/dist/MultiComboBox.js +984 -198
  50. package/dist/MultiComboBoxItem.js +8 -5
  51. package/dist/MultiInput.js +348 -0
  52. package/dist/Option.js +59 -5
  53. package/dist/Panel.js +133 -42
  54. package/dist/Popover.js +413 -250
  55. package/dist/Popup.js +425 -278
  56. package/dist/ProgressIndicator.js +240 -0
  57. package/dist/RadioButton.js +163 -62
  58. package/dist/RadioButtonGroup.js +53 -29
  59. package/dist/RangeSlider.js +774 -0
  60. package/dist/RatingIndicator.js +321 -0
  61. package/dist/ResponsivePopover.js +90 -41
  62. package/dist/SegmentedButton.js +151 -52
  63. package/dist/SegmentedButtonItem.js +114 -0
  64. package/dist/Select.js +507 -109
  65. package/dist/Slider.js +325 -0
  66. package/dist/SliderBase.js +847 -0
  67. package/dist/SplitButton.js +431 -0
  68. package/dist/StandardListItem.js +46 -22
  69. package/dist/StepInput.js +684 -0
  70. package/dist/SuggestionGroupItem.js +64 -0
  71. package/dist/SuggestionItem.js +146 -0
  72. package/dist/SuggestionListItem.js +76 -0
  73. package/dist/Switch.js +84 -38
  74. package/dist/Tab.js +264 -19
  75. package/dist/TabContainer.js +923 -287
  76. package/dist/TabSeparator.js +44 -4
  77. package/dist/Table.js +735 -39
  78. package/dist/TableCell.js +13 -15
  79. package/dist/TableColumn.js +17 -13
  80. package/dist/TableGroupRow.js +164 -0
  81. package/dist/TableRow.js +327 -21
  82. package/dist/TextArea.js +327 -38
  83. package/dist/TimePicker.js +164 -0
  84. package/dist/TimePickerBase.js +463 -0
  85. package/dist/TimeSelection.js +493 -0
  86. package/dist/Title.js +18 -10
  87. package/dist/Toast.js +63 -37
  88. package/dist/ToggleButton.js +26 -13
  89. package/dist/Token.js +87 -46
  90. package/dist/Tokenizer.js +451 -62
  91. package/dist/Tree.js +447 -0
  92. package/dist/TreeItem.js +189 -0
  93. package/dist/TreeListItem.js +343 -0
  94. package/dist/WheelSlider.js +435 -0
  95. package/dist/YearPicker.js +201 -258
  96. package/dist/api.json +7259 -0
  97. package/dist/css/themes/Avatar.css +1 -0
  98. package/dist/css/themes/AvatarGroup.css +1 -0
  99. package/dist/css/themes/Badge.css +1 -0
  100. package/dist/css/themes/Breadcrumbs.css +1 -0
  101. package/dist/css/themes/BreadcrumbsPopover.css +1 -0
  102. package/dist/css/themes/BrowserScrollbar.css +1 -0
  103. package/dist/css/themes/BusyIndicator.css +1 -0
  104. package/dist/css/themes/Button.css +1 -0
  105. package/dist/css/themes/Button.ie11.css +1 -0
  106. package/dist/css/themes/Calendar.css +1 -0
  107. package/dist/css/themes/CalendarHeader.css +1 -0
  108. package/dist/css/themes/Card.css +1 -0
  109. package/dist/css/themes/CardHeader.css +1 -0
  110. package/dist/css/themes/Carousel.css +1 -0
  111. package/dist/css/themes/CheckBox.css +1 -0
  112. package/dist/css/themes/ColorPalette.css +1 -0
  113. package/dist/css/themes/ColorPaletteItem.css +1 -0
  114. package/dist/css/themes/ColorPalettePopover.css +1 -0
  115. package/dist/css/themes/ColorPaletteStaticArea.css +1 -0
  116. package/dist/css/themes/ColorPicker.css +1 -0
  117. package/dist/css/themes/ComboBox.css +1 -0
  118. package/dist/css/themes/ComboBoxPopover.css +1 -0
  119. package/dist/css/themes/CustomListItem.css +1 -0
  120. package/dist/css/themes/DatePicker.css +1 -0
  121. package/dist/css/themes/DatePickerPopover.css +1 -0
  122. package/dist/css/themes/DateRangePicker.css +1 -0
  123. package/dist/css/themes/DateTimePicker.css +1 -0
  124. package/dist/css/themes/DateTimePickerPopover.css +1 -0
  125. package/dist/css/themes/DayPicker.css +1 -0
  126. package/dist/css/themes/Dialog.css +1 -0
  127. package/dist/css/themes/FileUploader.css +1 -0
  128. package/dist/css/themes/GroupHeaderListItem.css +1 -0
  129. package/dist/css/themes/GrowingButton.css +1 -0
  130. package/dist/css/themes/Icon.css +1 -0
  131. package/dist/css/themes/Input.css +1 -0
  132. package/dist/css/themes/InputIcon.css +1 -0
  133. package/dist/css/themes/InvisibleTextStyles.css +1 -0
  134. package/dist/css/themes/Label.css +1 -0
  135. package/dist/css/themes/Link.css +1 -0
  136. package/dist/css/themes/List.css +1 -0
  137. package/dist/css/themes/ListItem.css +1 -0
  138. package/dist/css/themes/ListItemBase.css +1 -0
  139. package/dist/css/themes/MessageStrip.css +1 -0
  140. package/dist/css/themes/MonthPicker.css +1 -0
  141. package/dist/css/themes/MultiComboBox.css +1 -0
  142. package/dist/css/themes/MultiInput.css +1 -0
  143. package/dist/css/themes/Panel.css +1 -0
  144. package/dist/css/themes/Popover.css +1 -0
  145. package/dist/css/themes/Popup.css +1 -0
  146. package/dist/css/themes/PopupGlobal.css +1 -0
  147. package/dist/css/themes/PopupStaticAreaStyles.css +1 -0
  148. package/dist/css/themes/PopupsCommon.css +1 -0
  149. package/dist/css/themes/ProgressIndicator.css +1 -0
  150. package/dist/css/themes/RadioButton.css +1 -0
  151. package/dist/css/themes/RatingIndicator.css +1 -0
  152. package/dist/css/themes/ResponsivePopover.css +1 -0
  153. package/dist/css/themes/ResponsivePopoverCommon.css +1 -0
  154. package/dist/css/themes/SegmentedButton.css +1 -0
  155. package/dist/css/themes/Select.css +1 -0
  156. package/dist/css/themes/SelectPopover.css +1 -0
  157. package/dist/css/themes/SliderBase.css +1 -0
  158. package/dist/css/themes/SplitButton.css +1 -0
  159. package/dist/css/themes/StepInput.css +1 -0
  160. package/dist/css/themes/Suggestions.css +1 -0
  161. package/dist/css/themes/Switch.css +1 -0
  162. package/dist/css/themes/Tab.css +1 -0
  163. package/dist/css/themes/TabContainer.css +1 -0
  164. package/dist/css/themes/TabInOverflow.css +1 -0
  165. package/dist/css/themes/TabInStrip.css +1 -0
  166. package/dist/css/themes/TabSeparatorInOverflow.css +1 -0
  167. package/dist/css/themes/TabSeparatorInStrip.css +1 -0
  168. package/dist/css/themes/Table.css +1 -0
  169. package/dist/css/themes/TableCell.css +1 -0
  170. package/dist/css/themes/TableColumn.css +1 -0
  171. package/dist/css/themes/TableGroupRow.css +1 -0
  172. package/dist/css/themes/TableRow.css +1 -0
  173. package/dist/css/themes/TapHighlightColor.css +1 -0
  174. package/dist/css/themes/TextArea.css +1 -0
  175. package/dist/css/themes/TimePicker.css +1 -0
  176. package/dist/css/themes/TimePickerPopover.css +1 -0
  177. package/dist/css/themes/TimeSelection.css +1 -0
  178. package/dist/css/themes/Title.css +1 -0
  179. package/dist/css/themes/Toast.css +1 -0
  180. package/dist/css/themes/ToggleButton.css +1 -0
  181. package/dist/css/themes/ToggleButton.ie11.css +1 -0
  182. package/dist/css/themes/Token.css +1 -0
  183. package/dist/css/themes/Tokenizer.css +1 -0
  184. package/dist/css/themes/TokenizerPopover.css +1 -0
  185. package/dist/css/themes/Tree.css +1 -0
  186. package/dist/css/themes/TreeListItem.css +1 -0
  187. package/dist/css/themes/ValueStateMessage.css +1 -0
  188. package/dist/css/themes/WheelSlider.css +1 -0
  189. package/dist/css/themes/YearPicker.css +1 -0
  190. package/dist/css/themes/sap_belize/parameters-bundle.css +1 -0
  191. package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -0
  192. package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -0
  193. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -0
  194. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -0
  195. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -0
  196. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -0
  197. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -0
  198. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -0
  199. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -0
  200. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -0
  201. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -0
  202. package/dist/features/ColorPaletteMoreColors.js +42 -0
  203. package/dist/features/InputElementsFormSupport.js +0 -1
  204. package/dist/features/InputSuggestions.js +364 -54
  205. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  206. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  207. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  208. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  209. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -0
  210. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  211. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  212. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  213. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  214. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -0
  215. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -0
  216. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -0
  217. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -0
  218. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  219. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -0
  220. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  221. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  222. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  223. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -0
  224. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  225. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  226. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  227. package/dist/generated/assets/i18n/messagebundle_in.json +1 -0
  228. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  229. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  230. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  231. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  232. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  233. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  234. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  235. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  236. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  237. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  238. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  239. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  240. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -0
  241. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  242. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  243. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  244. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  245. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  246. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  247. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  248. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  249. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  250. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  251. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  252. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  253. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  254. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  255. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  256. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  257. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  258. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -0
  259. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -0
  260. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -0
  261. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -0
  262. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -0
  263. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -0
  264. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -0
  265. package/dist/generated/i18n/i18n-defaults.js +2 -2
  266. package/dist/generated/json-imports/Themes-static.js +41 -0
  267. package/dist/generated/json-imports/Themes.js +26 -15
  268. package/dist/generated/json-imports/i18n-static.js +162 -0
  269. package/dist/generated/json-imports/i18n.js +113 -89
  270. package/dist/generated/templates/AvatarGroupTemplate.lit.js +9 -0
  271. package/dist/generated/templates/AvatarTemplate.lit.js +9 -9
  272. package/dist/generated/templates/BadgeTemplate.lit.js +5 -6
  273. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +8 -0
  274. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +9 -0
  275. package/dist/generated/templates/BusyIndicatorTemplate.lit.js +7 -5
  276. package/dist/generated/templates/ButtonTemplate.lit.js +6 -6
  277. package/dist/generated/templates/CalendarHeaderTemplate.lit.js +6 -4
  278. package/dist/generated/templates/CalendarTemplate.lit.js +4 -4
  279. package/dist/generated/templates/CardHeaderTemplate.lit.js +12 -0
  280. package/dist/generated/templates/CardTemplate.lit.js +5 -8
  281. package/dist/generated/templates/CarouselTemplate.lit.js +13 -14
  282. package/dist/generated/templates/CheckBoxTemplate.lit.js +7 -7
  283. package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +7 -0
  284. package/dist/generated/templates/ColorPaletteItemTemplate.lit.js +7 -0
  285. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +8 -0
  286. package/dist/generated/templates/ColorPaletteTemplate.lit.js +12 -0
  287. package/dist/generated/templates/ColorPickerTemplate.lit.js +7 -0
  288. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +20 -5
  289. package/dist/generated/templates/ComboBoxTemplate.lit.js +8 -5
  290. package/dist/generated/templates/CustomListItemTemplate.lit.js +13 -12
  291. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +7 -4
  292. package/dist/generated/templates/DatePickerTemplate.lit.js +6 -5
  293. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +12 -0
  294. package/dist/generated/templates/DayPickerTemplate.lit.js +13 -11
  295. package/dist/generated/templates/DialogTemplate.lit.js +9 -8
  296. package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +11 -0
  297. package/dist/generated/templates/FileUploaderTemplate.lit.js +7 -7
  298. package/dist/generated/templates/GroupHeaderListItemTemplate.lit.js +4 -4
  299. package/dist/generated/templates/IconTemplate.lit.js +6 -6
  300. package/dist/generated/templates/InputPopoverTemplate.lit.js +24 -6
  301. package/dist/generated/templates/InputTemplate.lit.js +10 -8
  302. package/dist/generated/templates/LabelTemplate.lit.js +4 -4
  303. package/dist/generated/templates/LinkTemplate.lit.js +5 -5
  304. package/dist/generated/templates/ListItemTemplate.lit.js +13 -12
  305. package/dist/generated/templates/ListTemplate.lit.js +12 -9
  306. package/dist/generated/templates/MessageStripTemplate.lit.js +6 -27
  307. package/dist/generated/templates/MonthPickerTemplate.lit.js +6 -6
  308. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +23 -7
  309. package/dist/generated/templates/MultiComboBoxTemplate.lit.js +10 -8
  310. package/dist/generated/templates/MultiInputTemplate.lit.js +17 -0
  311. package/dist/generated/templates/PanelTemplate.lit.js +9 -6
  312. package/dist/generated/templates/PopoverTemplate.lit.js +9 -9
  313. package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +7 -0
  314. package/dist/generated/templates/PopupTemplate.lit.js +4 -4
  315. package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +17 -0
  316. package/dist/generated/templates/RadioButtonTemplate.lit.js +7 -7
  317. package/dist/generated/templates/RangeSliderTemplate.lit.js +13 -0
  318. package/dist/generated/templates/RatingIndicatorTemplate.lit.js +14 -0
  319. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +16 -11
  320. package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +8 -0
  321. package/dist/generated/templates/SegmentedButtonTemplate.lit.js +4 -9
  322. package/dist/generated/templates/SelectPopoverTemplate.lit.js +20 -6
  323. package/dist/generated/templates/SelectTemplate.lit.js +6 -4
  324. package/dist/generated/templates/SliderBaseTemplate.lit.js +11 -0
  325. package/dist/generated/templates/SliderTemplate.lit.js +12 -0
  326. package/dist/generated/templates/SplitButtonTemplate.lit.js +7 -0
  327. package/dist/generated/templates/StandardListItemTemplate.lit.js +21 -18
  328. package/dist/generated/templates/StepInputTemplate.lit.js +10 -0
  329. package/dist/generated/templates/SuggestionListItemTemplate.lit.js +27 -0
  330. package/dist/generated/templates/SwitchTemplate.lit.js +8 -6
  331. package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +5 -8
  332. package/dist/generated/templates/TabContainerTemplate.lit.js +13 -18
  333. package/dist/generated/templates/TabInOverflowTemplate.lit.js +10 -0
  334. package/dist/generated/templates/TabInStripTemplate.lit.js +13 -0
  335. package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js +7 -0
  336. package/dist/generated/templates/TabSeparatorInStripTemplate.lit.js +7 -0
  337. package/dist/generated/templates/TabTemplate.lit.js +5 -4
  338. package/dist/generated/templates/TableCellTemplate.lit.js +4 -4
  339. package/dist/generated/templates/TableColumnTemplate.lit.js +4 -4
  340. package/dist/generated/templates/TableGroupRowTemplate.lit.js +7 -0
  341. package/dist/generated/templates/TableRowTemplate.lit.js +12 -10
  342. package/dist/generated/templates/TableTemplate.lit.js +13 -8
  343. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +11 -0
  344. package/dist/generated/templates/TextAreaTemplate.lit.js +8 -8
  345. package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +7 -0
  346. package/dist/generated/templates/TimePickerTemplate.lit.js +9 -0
  347. package/dist/generated/templates/TimeSelectionTemplate.lit.js +11 -0
  348. package/dist/generated/templates/TitleTemplate.lit.js +10 -10
  349. package/dist/generated/templates/ToastTemplate.lit.js +5 -4
  350. package/dist/generated/templates/ToggleButtonTemplate.lit.js +6 -6
  351. package/dist/generated/templates/TokenTemplate.lit.js +7 -5
  352. package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +12 -0
  353. package/dist/generated/templates/TokenizerTemplate.lit.js +6 -6
  354. package/dist/generated/templates/TreeListItemTemplate.lit.js +21 -0
  355. package/dist/generated/templates/TreeTemplate.lit.js +8 -0
  356. package/dist/generated/templates/WheelSliderTemplate.lit.js +10 -0
  357. package/dist/generated/templates/YearPickerTemplate.lit.js +6 -6
  358. package/dist/generated/themes/Avatar.css.js +6 -7
  359. package/dist/generated/themes/AvatarGroup.css.js +8 -0
  360. package/dist/generated/themes/Badge.css.js +6 -7
  361. package/dist/generated/themes/Breadcrumbs.css.js +8 -0
  362. package/dist/generated/themes/BreadcrumbsPopover.css.js +8 -0
  363. package/dist/generated/themes/BrowserScrollbar.css.js +8 -0
  364. package/dist/generated/themes/BusyIndicator.css.js +6 -7
  365. package/dist/generated/themes/Button.css.js +6 -7
  366. package/dist/generated/themes/Button.ie11.css.js +8 -0
  367. package/dist/generated/themes/Calendar.css.js +6 -7
  368. package/dist/generated/themes/CalendarHeader.css.js +6 -7
  369. package/dist/generated/themes/Card.css.js +6 -7
  370. package/dist/generated/themes/CardHeader.css.js +8 -0
  371. package/dist/generated/themes/Carousel.css.js +6 -7
  372. package/dist/generated/themes/CheckBox.css.js +6 -7
  373. package/dist/generated/themes/ColorPalette.css.js +8 -0
  374. package/dist/generated/themes/ColorPaletteItem.css.js +8 -0
  375. package/dist/generated/themes/ColorPalettePopover.css.js +8 -0
  376. package/dist/generated/themes/ColorPaletteStaticArea.css.js +8 -0
  377. package/dist/generated/themes/ColorPicker.css.js +8 -0
  378. package/dist/generated/themes/ComboBox.css.js +6 -7
  379. package/dist/generated/themes/ComboBoxPopover.css.js +6 -7
  380. package/dist/generated/themes/CustomListItem.css.js +6 -7
  381. package/dist/generated/themes/DatePicker.css.js +6 -7
  382. package/dist/generated/themes/DatePickerPopover.css.js +6 -7
  383. package/dist/generated/themes/DateRangePicker.css.js +8 -0
  384. package/dist/generated/themes/DateTimePicker.css.js +8 -0
  385. package/dist/generated/themes/DateTimePickerPopover.css.js +8 -0
  386. package/dist/generated/themes/DayPicker.css.js +6 -7
  387. package/dist/generated/themes/Dialog.css.js +6 -7
  388. package/dist/generated/themes/FileUploader.css.js +6 -7
  389. package/dist/generated/themes/GroupHeaderListItem.css.js +6 -7
  390. package/dist/generated/themes/GrowingButton.css.js +8 -0
  391. package/dist/generated/themes/Icon.css.js +6 -7
  392. package/dist/generated/themes/Input.css.js +6 -7
  393. package/dist/generated/themes/InputIcon.css.js +6 -7
  394. package/dist/generated/themes/InvisibleTextStyles.css.js +6 -7
  395. package/dist/generated/themes/Label.css.js +6 -7
  396. package/dist/generated/themes/Link.css.js +6 -7
  397. package/dist/generated/themes/List.css.js +6 -7
  398. package/dist/generated/themes/ListItem.css.js +6 -7
  399. package/dist/generated/themes/ListItemBase.css.js +6 -7
  400. package/dist/generated/themes/MessageStrip.css.js +6 -7
  401. package/dist/generated/themes/MonthPicker.css.js +6 -7
  402. package/dist/generated/themes/MultiComboBox.css.js +6 -7
  403. package/dist/generated/themes/MultiInput.css.js +8 -0
  404. package/dist/generated/themes/Panel.css.js +6 -7
  405. package/dist/generated/themes/Popover.css.js +6 -7
  406. package/dist/generated/themes/Popup.css.js +6 -7
  407. package/dist/generated/themes/PopupGlobal.css.js +8 -0
  408. package/dist/generated/themes/PopupStaticAreaStyles.css.js +8 -0
  409. package/dist/generated/themes/PopupsCommon.css.js +8 -0
  410. package/dist/generated/themes/ProgressIndicator.css.js +8 -0
  411. package/dist/generated/themes/RadioButton.css.js +6 -7
  412. package/dist/generated/themes/RatingIndicator.css.js +8 -0
  413. package/dist/generated/themes/ResponsivePopover.css.js +6 -7
  414. package/dist/generated/themes/ResponsivePopoverCommon.css.js +6 -7
  415. package/dist/generated/themes/SegmentedButton.css.js +6 -7
  416. package/dist/generated/themes/Select.css.js +6 -7
  417. package/dist/generated/themes/SelectPopover.css.js +8 -0
  418. package/dist/generated/themes/SliderBase.css.js +8 -0
  419. package/dist/generated/themes/SplitButton.css.js +8 -0
  420. package/dist/generated/themes/StepInput.css.js +8 -0
  421. package/dist/generated/themes/Suggestions.css.js +8 -0
  422. package/dist/generated/themes/Switch.css.js +6 -7
  423. package/dist/generated/themes/Tab.css.js +6 -7
  424. package/dist/generated/themes/TabContainer.css.js +6 -7
  425. package/dist/generated/themes/TabInOverflow.css.js +8 -0
  426. package/dist/generated/themes/TabInStrip.css.js +8 -0
  427. package/dist/generated/themes/TabSeparatorInOverflow.css.js +8 -0
  428. package/dist/generated/themes/TabSeparatorInStrip.css.js +8 -0
  429. package/dist/generated/themes/Table.css.js +6 -7
  430. package/dist/generated/themes/TableCell.css.js +6 -7
  431. package/dist/generated/themes/TableColumn.css.js +6 -7
  432. package/dist/generated/themes/TableGroupRow.css.js +8 -0
  433. package/dist/generated/themes/TableRow.css.js +6 -7
  434. package/dist/generated/themes/TapHighlightColor.css.js +8 -0
  435. package/dist/generated/themes/TextArea.css.js +6 -7
  436. package/dist/generated/themes/TimePicker.css.js +8 -0
  437. package/dist/generated/themes/TimePickerPopover.css.js +8 -0
  438. package/dist/generated/themes/TimeSelection.css.js +8 -0
  439. package/dist/generated/themes/Title.css.js +6 -7
  440. package/dist/generated/themes/Toast.css.js +6 -7
  441. package/dist/generated/themes/ToggleButton.css.js +6 -7
  442. package/dist/generated/themes/ToggleButton.ie11.css.js +8 -0
  443. package/dist/generated/themes/Token.css.js +6 -7
  444. package/dist/generated/themes/Tokenizer.css.js +6 -7
  445. package/dist/generated/themes/TokenizerPopover.css.js +8 -0
  446. package/dist/generated/themes/Tree.css.js +8 -0
  447. package/dist/generated/themes/TreeListItem.css.js +8 -0
  448. package/dist/generated/themes/ValueStateMessage.css.js +8 -0
  449. package/dist/generated/themes/WheelSlider.css.js +8 -0
  450. package/dist/generated/themes/YearPicker.css.js +6 -7
  451. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  452. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  453. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  454. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  455. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  456. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -0
  457. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -0
  458. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -0
  459. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -0
  460. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -0
  461. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -0
  462. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -0
  463. package/dist/i18n/messagebundle.properties +369 -0
  464. package/dist/i18n/messagebundle_ar.properties +243 -0
  465. package/dist/i18n/messagebundle_bg.properties +243 -0
  466. package/dist/i18n/messagebundle_ca.properties +243 -0
  467. package/dist/i18n/messagebundle_cs.properties +243 -0
  468. package/dist/i18n/messagebundle_cy.properties +243 -0
  469. package/dist/i18n/messagebundle_da.properties +243 -0
  470. package/dist/i18n/messagebundle_de.properties +243 -0
  471. package/dist/i18n/messagebundle_el.properties +243 -0
  472. package/dist/i18n/messagebundle_en.properties +243 -0
  473. package/dist/i18n/messagebundle_en_GB.properties +243 -0
  474. package/dist/i18n/messagebundle_en_US_sappsd.properties +243 -0
  475. package/dist/i18n/messagebundle_en_US_saprigi.properties +245 -0
  476. package/dist/i18n/messagebundle_en_US_saptrc.properties +243 -0
  477. package/dist/i18n/messagebundle_es.properties +243 -0
  478. package/dist/i18n/messagebundle_es_MX.properties +243 -0
  479. package/dist/i18n/messagebundle_et.properties +243 -0
  480. package/dist/i18n/messagebundle_fi.properties +243 -0
  481. package/dist/i18n/messagebundle_fr.properties +243 -0
  482. package/dist/i18n/messagebundle_fr_CA.properties +243 -0
  483. package/dist/i18n/messagebundle_hi.properties +243 -0
  484. package/dist/i18n/messagebundle_hr.properties +243 -0
  485. package/dist/i18n/messagebundle_hu.properties +243 -0
  486. package/dist/i18n/messagebundle_id.properties +243 -0
  487. package/dist/i18n/messagebundle_in.properties +172 -0
  488. package/dist/i18n/messagebundle_it.properties +243 -0
  489. package/dist/i18n/messagebundle_iw.properties +243 -0
  490. package/dist/i18n/messagebundle_ja.properties +243 -0
  491. package/dist/i18n/messagebundle_kk.properties +243 -0
  492. package/dist/i18n/messagebundle_ko.properties +243 -0
  493. package/dist/i18n/messagebundle_lt.properties +243 -0
  494. package/dist/i18n/messagebundle_lv.properties +243 -0
  495. package/dist/i18n/messagebundle_ms.properties +243 -0
  496. package/dist/i18n/messagebundle_nl.properties +243 -0
  497. package/dist/i18n/messagebundle_no.properties +243 -0
  498. package/dist/i18n/messagebundle_pl.properties +243 -0
  499. package/dist/i18n/messagebundle_pt.properties +243 -0
  500. package/dist/i18n/messagebundle_pt_PT.properties +243 -0
  501. package/dist/i18n/messagebundle_ro.properties +243 -0
  502. package/dist/i18n/messagebundle_ru.properties +243 -0
  503. package/dist/i18n/messagebundle_sh.properties +243 -0
  504. package/dist/i18n/messagebundle_sk.properties +243 -0
  505. package/dist/i18n/messagebundle_sl.properties +243 -0
  506. package/dist/i18n/messagebundle_sv.properties +243 -0
  507. package/dist/i18n/messagebundle_th.properties +243 -0
  508. package/dist/i18n/messagebundle_tr.properties +243 -0
  509. package/dist/i18n/messagebundle_uk.properties +243 -0
  510. package/dist/i18n/messagebundle_vi.properties +243 -0
  511. package/dist/i18n/messagebundle_zh_CN.properties +243 -0
  512. package/dist/i18n/messagebundle_zh_TW.properties +243 -0
  513. package/dist/popup-utils/OpenedPopupsRegistry.js +18 -13
  514. package/dist/popup-utils/PopoverRegistry.js +55 -21
  515. package/dist/timepicker-utils/TimeSlider.js +103 -0
  516. package/dist/types/{AvatarBackgroundColor.js → AvatarColorScheme.js} +9 -9
  517. package/dist/types/AvatarGroupType.js +43 -0
  518. package/dist/types/AvatarShape.js +1 -1
  519. package/dist/types/AvatarSize.js +1 -1
  520. package/dist/types/BreadcrumbsDesign.js +42 -0
  521. package/dist/types/BreadcrumbsSeparatorStyle.js +69 -0
  522. package/dist/types/BusyIndicatorSize.js +1 -1
  523. package/dist/types/ButtonDesign.js +8 -1
  524. package/dist/types/CalendarSelectionMode.js +47 -0
  525. package/dist/types/CarouselArrowsPlacement.js +3 -3
  526. package/dist/types/GrowingMode.js +48 -0
  527. package/dist/types/HasPopup.js +62 -0
  528. package/dist/types/InputType.js +7 -7
  529. package/dist/types/LinkDesign.js +1 -1
  530. package/dist/types/ListGrowingMode.js +48 -0
  531. package/dist/types/ListItemType.js +8 -1
  532. package/dist/types/ListMode.js +9 -1
  533. package/dist/types/ListSeparators.js +1 -1
  534. package/dist/types/{MessageStripType.js → MessageStripDesign.js} +7 -7
  535. package/dist/types/PanelAccessibleRole.js +1 -1
  536. package/dist/types/PopoverHorizontalAlign.js +1 -1
  537. package/dist/types/PopoverPlacementType.js +2 -2
  538. package/dist/types/PopoverVerticalAlign.js +1 -2
  539. package/dist/types/Priority.js +55 -0
  540. package/dist/types/SemanticColor.js +1 -1
  541. package/dist/types/SwitchDesign.js +40 -0
  542. package/dist/types/TabContainerTabsPlacement.js +40 -0
  543. package/dist/types/TabLayout.js +1 -1
  544. package/dist/types/TableGrowingMode.js +48 -0
  545. package/dist/types/TableMode.js +47 -0
  546. package/dist/types/TableRowType.js +40 -0
  547. package/dist/types/TabsOverflowMode.js +40 -0
  548. package/dist/types/TitleLevel.js +1 -1
  549. package/dist/types/ToastPlacement.js +1 -2
  550. package/dist/types/WrappingType.js +41 -0
  551. package/dist/webcomponentsjs/CHANGELOG.md +61 -0
  552. package/dist/webcomponentsjs/README.md +64 -47
  553. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +38 -38
  554. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +1 -1
  555. package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js +60 -0
  556. package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js.map +1 -0
  557. package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js +95 -0
  558. package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js.map +1 -0
  559. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +292 -229
  560. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +1 -1
  561. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +190 -170
  562. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +1 -1
  563. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +151 -132
  564. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +1 -1
  565. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +2 -2
  566. package/dist/webcomponentsjs/webcomponents-bundle.js +302 -230
  567. package/dist/webcomponentsjs/webcomponents-bundle.js.map +1 -1
  568. package/dist/webcomponentsjs/webcomponents-loader.js +49 -28
  569. package/package-scripts.js +1 -0
  570. package/package.json +25 -6
  571. package/src/Assets-static.js +6 -0
  572. package/src/Assets.js +7 -0
  573. package/src/Avatar.hbs +20 -0
  574. package/src/Avatar.js +392 -0
  575. package/src/AvatarGroup.hbs +30 -0
  576. package/src/AvatarGroup.js +603 -0
  577. package/src/Badge.hbs +14 -0
  578. package/src/Badge.js +165 -0
  579. package/src/Breadcrumbs.hbs +45 -0
  580. package/src/Breadcrumbs.js +632 -0
  581. package/src/BreadcrumbsItem.js +103 -0
  582. package/src/BreadcrumbsPopover.hbs +28 -0
  583. package/src/BusyIndicator.hbs +32 -0
  584. package/src/BusyIndicator.js +268 -0
  585. package/src/Button.hbs +45 -0
  586. package/src/Button.js +504 -0
  587. package/src/Calendar.hbs +69 -0
  588. package/src/Calendar.js +496 -0
  589. package/src/CalendarDate.js +45 -0
  590. package/src/CalendarHeader.hbs +54 -0
  591. package/src/CalendarHeader.js +209 -0
  592. package/src/CalendarPart.js +111 -0
  593. package/src/Card.hbs +14 -0
  594. package/src/Card.js +160 -0
  595. package/src/CardHeader.hbs +42 -0
  596. package/src/CardHeader.js +288 -0
  597. package/src/Carousel.hbs +86 -0
  598. package/src/Carousel.js +690 -0
  599. package/src/CheckBox.hbs +45 -0
  600. package/src/CheckBox.js +457 -0
  601. package/src/ColorPalette.hbs +52 -0
  602. package/src/ColorPalette.js +494 -0
  603. package/src/ColorPaletteDialog.hbs +18 -0
  604. package/src/ColorPaletteItem.hbs +11 -0
  605. package/src/ColorPaletteItem.js +137 -0
  606. package/src/ColorPalettePopover.hbs +31 -0
  607. package/src/ColorPalettePopover.js +244 -0
  608. package/src/ColorPicker.hbs +99 -0
  609. package/src/ColorPicker.js +562 -0
  610. package/src/ComboBox.hbs +50 -0
  611. package/src/ComboBox.js +1115 -0
  612. package/src/ComboBoxFilters.js +40 -0
  613. package/src/ComboBoxGroupItem.js +70 -0
  614. package/src/ComboBoxItem.js +49 -0
  615. package/src/ComboBoxPopover.hbs +125 -0
  616. package/src/CustomListItem.hbs +5 -0
  617. package/src/CustomListItem.js +99 -0
  618. package/src/DateComponentBase.js +168 -0
  619. package/src/DatePicker.hbs +44 -0
  620. package/src/DatePicker.js +827 -0
  621. package/src/DatePickerPopover.hbs +61 -0
  622. package/src/DateRangePicker.js +356 -0
  623. package/src/DateTimePicker.js +430 -0
  624. package/src/DateTimePickerPopover.hbs +74 -0
  625. package/src/DayPicker.hbs +66 -0
  626. package/src/DayPicker.js +754 -0
  627. package/src/Dialog.hbs +36 -0
  628. package/src/Dialog.js +614 -0
  629. package/src/DurationPicker.js +312 -0
  630. package/src/FileUploader.hbs +40 -0
  631. package/src/FileUploader.js +531 -0
  632. package/src/FileUploaderPopover.hbs +26 -0
  633. package/src/GroupHeaderListItem.hbs +15 -0
  634. package/src/GroupHeaderListItem.js +94 -0
  635. package/src/Icon.hbs +25 -0
  636. package/src/Icon.js +376 -0
  637. package/src/Input.hbs +82 -0
  638. package/src/Input.js +1541 -0
  639. package/src/InputPopover.hbs +116 -0
  640. package/src/Interfaces.js +192 -0
  641. package/src/Label.hbs +13 -0
  642. package/src/Label.js +158 -0
  643. package/src/Link.hbs +21 -0
  644. package/src/Link.js +378 -0
  645. package/src/List.hbs +90 -0
  646. package/src/List.js +1105 -0
  647. package/src/ListItem.hbs +103 -0
  648. package/src/ListItem.js +371 -0
  649. package/src/ListItemBase.js +181 -0
  650. package/src/MessageStrip.hbs +34 -0
  651. package/src/MessageStrip.js +256 -0
  652. package/src/MonthPicker.hbs +29 -0
  653. package/src/MonthPicker.js +299 -0
  654. package/src/MultiComboBox.hbs +78 -0
  655. package/src/MultiComboBox.js +1455 -0
  656. package/src/MultiComboBoxItem.js +43 -0
  657. package/src/MultiComboBoxPopover.hbs +132 -0
  658. package/src/MultiInput.hbs +41 -0
  659. package/src/MultiInput.js +348 -0
  660. package/src/Option.js +126 -0
  661. package/src/Panel.hbs +64 -0
  662. package/src/Panel.js +470 -0
  663. package/src/Popover.hbs +25 -0
  664. package/src/Popover.js +872 -0
  665. package/src/Popup.hbs +34 -0
  666. package/src/Popup.js +616 -0
  667. package/src/PopupBlockLayer.hbs +7 -0
  668. package/src/ProgressIndicator.hbs +35 -0
  669. package/src/ProgressIndicator.js +240 -0
  670. package/src/RadioButton.hbs +33 -0
  671. package/src/RadioButton.js +506 -0
  672. package/src/RadioButtonGroup.js +205 -0
  673. package/src/RangeSlider.hbs +70 -0
  674. package/src/RangeSlider.js +774 -0
  675. package/src/RatingIndicator.hbs +35 -0
  676. package/src/RatingIndicator.js +321 -0
  677. package/src/ResponsivePopover.hbs +41 -0
  678. package/src/ResponsivePopover.js +211 -0
  679. package/src/SegmentedButton.hbs +18 -0
  680. package/src/SegmentedButton.js +303 -0
  681. package/src/SegmentedButtonItem.hbs +42 -0
  682. package/src/SegmentedButtonItem.js +114 -0
  683. package/src/Select.hbs +46 -0
  684. package/src/Select.js +844 -0
  685. package/src/SelectPopover.hbs +89 -0
  686. package/src/Slider.hbs +42 -0
  687. package/src/Slider.js +325 -0
  688. package/src/SliderBase.hbs +38 -0
  689. package/src/SliderBase.js +847 -0
  690. package/src/SplitButton.hbs +53 -0
  691. package/src/SplitButton.js +431 -0
  692. package/src/StandardListItem.hbs +44 -0
  693. package/src/StandardListItem.js +191 -0
  694. package/src/StepInput.hbs +81 -0
  695. package/src/StepInput.js +684 -0
  696. package/src/SuggestionGroupItem.js +64 -0
  697. package/src/SuggestionItem.js +146 -0
  698. package/src/SuggestionListItem.hbs +33 -0
  699. package/src/SuggestionListItem.js +76 -0
  700. package/src/Switch.hbs +51 -0
  701. package/src/Switch.js +292 -0
  702. package/src/Tab.hbs +7 -0
  703. package/src/Tab.js +410 -0
  704. package/src/TabContainer.hbs +81 -0
  705. package/src/TabContainer.js +1244 -0
  706. package/src/TabContainerPopover.hbs +21 -0
  707. package/src/TabInOverflow.hbs +28 -0
  708. package/src/TabInStrip.hbs +55 -0
  709. package/src/TabSeparator.js +83 -0
  710. package/src/TabSeparatorInOverflow.hbs +9 -0
  711. package/src/TabSeparatorInStrip.hbs +6 -0
  712. package/src/Table.hbs +109 -0
  713. package/src/Table.js +1010 -0
  714. package/src/TableCell.hbs +7 -0
  715. package/src/TableCell.js +88 -0
  716. package/src/TableColumn.hbs +8 -0
  717. package/src/TableColumn.js +129 -0
  718. package/src/TableGroupRow.hbs +13 -0
  719. package/src/TableGroupRow.js +164 -0
  720. package/src/TableRow.hbs +63 -0
  721. package/src/TableRow.js +467 -0
  722. package/src/TextArea.hbs +50 -0
  723. package/src/TextArea.js +702 -0
  724. package/src/TextAreaPopover.hbs +27 -0
  725. package/src/TimePicker.hbs +35 -0
  726. package/src/TimePicker.js +164 -0
  727. package/src/TimePickerBase.js +463 -0
  728. package/src/TimePickerPopover.hbs +33 -0
  729. package/src/TimeSelection.hbs +60 -0
  730. package/src/TimeSelection.js +493 -0
  731. package/src/Title.hbs +47 -0
  732. package/src/Title.js +132 -0
  733. package/src/Toast.hbs +13 -0
  734. package/src/Toast.js +243 -0
  735. package/src/ToggleButton.hbs +5 -0
  736. package/src/ToggleButton.js +89 -0
  737. package/src/Token.hbs +30 -0
  738. package/src/Token.js +220 -0
  739. package/src/Tokenizer.hbs +28 -0
  740. package/src/Tokenizer.js +617 -0
  741. package/src/TokenizerPopover.hbs +50 -0
  742. package/src/Tree.hbs +43 -0
  743. package/src/Tree.js +447 -0
  744. package/src/TreeItem.js +189 -0
  745. package/src/TreeListItem.hbs +48 -0
  746. package/src/TreeListItem.js +343 -0
  747. package/src/WheelSlider.hbs +48 -0
  748. package/src/WheelSlider.js +435 -0
  749. package/src/YearPicker.hbs +27 -0
  750. package/src/YearPicker.js +324 -0
  751. package/src/features/ColorPaletteMoreColors.js +42 -0
  752. package/src/features/InputElementsFormSupport.js +88 -0
  753. package/src/features/InputSuggestions.js +598 -0
  754. package/src/i18n/messagebundle.properties +369 -0
  755. package/src/i18n/messagebundle_ar.properties +243 -0
  756. package/src/i18n/messagebundle_bg.properties +243 -0
  757. package/src/i18n/messagebundle_ca.properties +243 -0
  758. package/src/i18n/messagebundle_cs.properties +243 -0
  759. package/src/i18n/messagebundle_cy.properties +243 -0
  760. package/src/i18n/messagebundle_da.properties +243 -0
  761. package/src/i18n/messagebundle_de.properties +243 -0
  762. package/src/i18n/messagebundle_el.properties +243 -0
  763. package/src/i18n/messagebundle_en.properties +243 -0
  764. package/src/i18n/messagebundle_en_GB.properties +243 -0
  765. package/src/i18n/messagebundle_en_US_sappsd.properties +243 -0
  766. package/src/i18n/messagebundle_en_US_saprigi.properties +245 -0
  767. package/src/i18n/messagebundle_en_US_saptrc.properties +243 -0
  768. package/src/i18n/messagebundle_es.properties +243 -0
  769. package/src/i18n/messagebundle_es_MX.properties +243 -0
  770. package/src/i18n/messagebundle_et.properties +243 -0
  771. package/src/i18n/messagebundle_fi.properties +243 -0
  772. package/src/i18n/messagebundle_fr.properties +243 -0
  773. package/src/i18n/messagebundle_fr_CA.properties +243 -0
  774. package/src/i18n/messagebundle_hi.properties +243 -0
  775. package/src/i18n/messagebundle_hr.properties +243 -0
  776. package/src/i18n/messagebundle_hu.properties +243 -0
  777. package/src/i18n/messagebundle_id.properties +243 -0
  778. package/src/i18n/messagebundle_in.properties +172 -0
  779. package/src/i18n/messagebundle_it.properties +243 -0
  780. package/src/i18n/messagebundle_iw.properties +243 -0
  781. package/src/i18n/messagebundle_ja.properties +243 -0
  782. package/src/i18n/messagebundle_kk.properties +243 -0
  783. package/src/i18n/messagebundle_ko.properties +243 -0
  784. package/src/i18n/messagebundle_lt.properties +243 -0
  785. package/src/i18n/messagebundle_lv.properties +243 -0
  786. package/src/i18n/messagebundle_ms.properties +243 -0
  787. package/src/i18n/messagebundle_nl.properties +243 -0
  788. package/src/i18n/messagebundle_no.properties +243 -0
  789. package/src/i18n/messagebundle_pl.properties +243 -0
  790. package/src/i18n/messagebundle_pt.properties +243 -0
  791. package/src/i18n/messagebundle_pt_PT.properties +243 -0
  792. package/src/i18n/messagebundle_ro.properties +243 -0
  793. package/src/i18n/messagebundle_ru.properties +243 -0
  794. package/src/i18n/messagebundle_sh.properties +243 -0
  795. package/src/i18n/messagebundle_sk.properties +243 -0
  796. package/src/i18n/messagebundle_sl.properties +243 -0
  797. package/src/i18n/messagebundle_sv.properties +243 -0
  798. package/src/i18n/messagebundle_th.properties +243 -0
  799. package/src/i18n/messagebundle_tr.properties +243 -0
  800. package/src/i18n/messagebundle_uk.properties +243 -0
  801. package/src/i18n/messagebundle_vi.properties +243 -0
  802. package/src/i18n/messagebundle_zh_CN.properties +243 -0
  803. package/src/i18n/messagebundle_zh_TW.properties +243 -0
  804. package/src/popup-utils/OpenedPopupsRegistry.js +50 -0
  805. package/src/popup-utils/PopoverRegistry.js +145 -0
  806. package/src/themes/Avatar.css +202 -0
  807. package/src/themes/AvatarGroup.css +82 -0
  808. package/src/themes/Badge.css +247 -0
  809. package/src/themes/Breadcrumbs.css +100 -0
  810. package/src/themes/BreadcrumbsPopover.css +10 -0
  811. package/src/themes/BrowserScrollbar.css +25 -0
  812. package/src/themes/BusyIndicator.css +143 -0
  813. package/src/themes/Button.css +306 -0
  814. package/src/themes/Button.ie11.css +48 -0
  815. package/src/themes/Calendar.css +23 -0
  816. package/src/themes/CalendarHeader.css +137 -0
  817. package/src/themes/Card.css +42 -0
  818. package/src/themes/CardHeader.css +133 -0
  819. package/src/themes/Carousel.css +140 -0
  820. package/src/themes/CheckBox.css +289 -0
  821. package/src/themes/ColorPalette.css +70 -0
  822. package/src/themes/ColorPaletteItem.css +70 -0
  823. package/src/themes/ColorPalettePopover.css +17 -0
  824. package/src/themes/ColorPaletteStaticArea.css +17 -0
  825. package/src/themes/ColorPicker.css +190 -0
  826. package/src/themes/ComboBox.css +9 -0
  827. package/src/themes/ComboBoxPopover.css +17 -0
  828. package/src/themes/CustomListItem.css +31 -0
  829. package/src/themes/DatePicker.css +46 -0
  830. package/src/themes/DatePickerPopover.css +9 -0
  831. package/src/themes/DateRangePicker.css +16 -0
  832. package/src/themes/DateTimePicker.css +11 -0
  833. package/src/themes/DateTimePickerPopover.css +78 -0
  834. package/src/themes/DayPicker.css +269 -0
  835. package/src/themes/Dialog.css +66 -0
  836. package/src/themes/FileUploader.css +40 -0
  837. package/src/themes/GroupHeaderListItem.css +24 -0
  838. package/src/themes/GrowingButton.css +67 -0
  839. package/src/themes/Icon.css +38 -0
  840. package/src/themes/Input.css +407 -0
  841. package/src/themes/InputIcon.css +53 -0
  842. package/src/themes/InvisibleTextStyles.css +9 -0
  843. package/src/themes/Label.css +85 -0
  844. package/src/themes/Link.css +77 -0
  845. package/src/themes/List.css +116 -0
  846. package/src/themes/ListItem.css +231 -0
  847. package/src/themes/ListItemBase.css +85 -0
  848. package/src/themes/MessageStrip.css +123 -0
  849. package/src/themes/MonthPicker.css +86 -0
  850. package/src/themes/MultiComboBox.css +36 -0
  851. package/src/themes/MultiInput.css +14 -0
  852. package/src/themes/Panel.css +100 -0
  853. package/src/themes/Popover.css +102 -0
  854. package/src/themes/Popup.css +5 -0
  855. package/src/themes/PopupGlobal.css +3 -0
  856. package/src/themes/PopupStaticAreaStyles.css +17 -0
  857. package/src/themes/PopupsCommon.css +127 -0
  858. package/src/themes/ProgressIndicator.css +158 -0
  859. package/src/themes/RadioButton.css +249 -0
  860. package/src/themes/RatingIndicator.css +52 -0
  861. package/src/themes/ResponsivePopover.css +29 -0
  862. package/src/themes/ResponsivePopoverCommon.css +208 -0
  863. package/src/themes/SegmentedButton.css +88 -0
  864. package/src/themes/Select.css +53 -0
  865. package/src/themes/SelectPopover.css +19 -0
  866. package/src/themes/SliderBase.css +253 -0
  867. package/src/themes/SplitButton.css +98 -0
  868. package/src/themes/StepInput.css +270 -0
  869. package/src/themes/Suggestions.css +28 -0
  870. package/src/themes/Switch.css +370 -0
  871. package/src/themes/Tab.css +9 -0
  872. package/src/themes/TabContainer.css +149 -0
  873. package/src/themes/TabInOverflow.css +74 -0
  874. package/src/themes/TabInStrip.css +385 -0
  875. package/src/themes/TabSeparatorInOverflow.css +9 -0
  876. package/src/themes/TabSeparatorInStrip.css +5 -0
  877. package/src/themes/Table.css +91 -0
  878. package/src/themes/TableCell.css +28 -0
  879. package/src/themes/TableColumn.css +29 -0
  880. package/src/themes/TableGroupRow.css +34 -0
  881. package/src/themes/TableRow.css +85 -0
  882. package/src/themes/TapHighlightColor.css +3 -0
  883. package/src/themes/TextArea.css +309 -0
  884. package/src/themes/TimePicker.css +50 -0
  885. package/src/themes/TimePickerPopover.css +15 -0
  886. package/src/themes/TimeSelection.css +27 -0
  887. package/src/themes/Title.css +65 -0
  888. package/src/themes/Toast.css +93 -0
  889. package/src/themes/ToggleButton.css +88 -0
  890. package/src/themes/ToggleButton.ie11.css +48 -0
  891. package/src/themes/Token.css +117 -0
  892. package/src/themes/Tokenizer.css +85 -0
  893. package/src/themes/TokenizerPopover.css +4 -0
  894. package/src/themes/Tree.css +11 -0
  895. package/src/themes/TreeListItem.css +107 -0
  896. package/src/themes/ValueStateMessage.css +86 -0
  897. package/src/themes/WheelSlider.css +203 -0
  898. package/src/themes/YearPicker.css +86 -0
  899. package/src/themes/base/Avatar-parameters.css +38 -0
  900. package/src/themes/base/AvatarGroup-parameter.css +6 -0
  901. package/src/themes/base/Badge-parameters.css +61 -0
  902. package/src/themes/base/BrowserScrollbar-parameters.css +4 -0
  903. package/src/themes/base/BusyIndicator-parameters.css +5 -0
  904. package/src/themes/base/Button-parameters.css +30 -0
  905. package/src/themes/base/CalendarHeader-parameters.css +20 -0
  906. package/src/themes/base/Card-parameters.css +17 -0
  907. package/src/themes/base/Carousel-parameters.css +9 -0
  908. package/src/themes/base/CheckBox-parameters.css +53 -0
  909. package/src/themes/base/ColorPalette-parameters.css +14 -0
  910. package/src/themes/base/ColorPicker-parameters.css +8 -0
  911. package/src/themes/base/DatePicker-parameters.css +6 -0
  912. package/src/themes/base/DayPicker-parameters.css +41 -0
  913. package/src/themes/base/Dialog-parameters.css +9 -0
  914. package/src/themes/base/GroupHeaderListItem-parameters.css +3 -0
  915. package/src/themes/base/GrowingButton-parameters.css +6 -0
  916. package/src/themes/base/Input-parameters.css +63 -0
  917. package/src/themes/base/InputIcon-parameters.css +11 -0
  918. package/src/themes/base/Link-parameters.css +8 -0
  919. package/src/themes/base/List-parameters.css +3 -0
  920. package/src/themes/base/ListItemBase-parameters.css +10 -0
  921. package/src/themes/base/MessageStrip-parameters.css +21 -0
  922. package/src/themes/base/MonthPicker-parameters.css +16 -0
  923. package/src/themes/base/MultiComboBox-parameters.css +3 -0
  924. package/src/themes/base/Panel-parameters.css +11 -0
  925. package/src/themes/base/PopupsCommon-parameters.css +13 -0
  926. package/src/themes/base/ProgressIndicator-parameters.css +21 -0
  927. package/src/themes/base/RadioButton-parameters.css +32 -0
  928. package/src/themes/base/RatingIndicator-parameters.css +3 -0
  929. package/src/themes/base/SegmentedButtton-parameters.css +8 -0
  930. package/src/themes/base/Select-parameters.css +11 -0
  931. package/src/themes/base/SelectPopover-parameters.css +4 -0
  932. package/src/themes/base/SliderBase-parameters.css +64 -0
  933. package/src/themes/base/StepInput-parameters.css +24 -0
  934. package/src/themes/base/Suggestions-parameters.css +3 -0
  935. package/src/themes/base/Switch-parameters.css +96 -0
  936. package/src/themes/base/TabContainer-parameters.css +84 -0
  937. package/src/themes/base/Table-parameters.css +6 -0
  938. package/src/themes/base/TableColumn-parameters.css +3 -0
  939. package/src/themes/base/TableRow-parameters.css +3 -0
  940. package/src/themes/base/TextArea-parameters.css +22 -0
  941. package/src/themes/base/TimePicker-parameters.css +4 -0
  942. package/src/themes/base/TimelineItem-parameters.css +10 -0
  943. package/src/themes/base/Toast-parameters.css +6 -0
  944. package/src/themes/base/ToggleButton-parameters.css +8 -0
  945. package/src/themes/base/Token-parameters.css +19 -0
  946. package/src/themes/base/Tokenizer-parameters.css +4 -0
  947. package/src/themes/base/ValueStateMessage-parameters.css +7 -0
  948. package/src/themes/base/WheelSlider-parameters.css +15 -0
  949. package/src/themes/base/YearPicker-parameters.css +16 -0
  950. package/src/themes/base/sizes-parameters.css +305 -0
  951. package/src/themes/sap_belize/BrowserScrollbar-parameters.css +4 -0
  952. package/src/themes/sap_belize/Carousel-parameters.css +9 -0
  953. package/src/themes/sap_belize/Dialog-parameters.css +5 -0
  954. package/src/themes/sap_belize/Input-parameters.css +6 -0
  955. package/src/themes/sap_belize/InputIcon-parameters.css +5 -0
  956. package/src/themes/sap_belize/ProgressIndicator-parameters.css +8 -0
  957. package/src/themes/sap_belize/SliderBase-parameters.css +22 -0
  958. package/src/themes/sap_belize/TabContainer-parameters.css +6 -0
  959. package/src/themes/sap_belize/Table-parameters.css +7 -0
  960. package/src/themes/sap_belize/TimePicker-parameters.css +5 -0
  961. package/src/themes/sap_belize/WheelSlider-parameters.css +17 -0
  962. package/src/themes/sap_belize/parameters-bundle.css +47 -0
  963. package/src/themes/sap_belize_hcb/Avatar-parameters.css +18 -0
  964. package/src/themes/sap_belize_hcb/Badge-parameters.css +43 -0
  965. package/src/themes/sap_belize_hcb/BrowserScrollbar-parameters.css +4 -0
  966. package/src/themes/sap_belize_hcb/Button-parameters.css +12 -0
  967. package/src/themes/sap_belize_hcb/CalendarHeader-parameters.css +11 -0
  968. package/src/themes/sap_belize_hcb/Card-parameters.css +6 -0
  969. package/src/themes/sap_belize_hcb/Carousel-parameters.css +9 -0
  970. package/src/themes/sap_belize_hcb/CheckBox-parameters.css +12 -0
  971. package/src/themes/sap_belize_hcb/DatePicker-parameters.css +6 -0
  972. package/src/themes/sap_belize_hcb/DayPicker-parameters.css +13 -0
  973. package/src/themes/sap_belize_hcb/Dialog-parameters.css +7 -0
  974. package/src/themes/sap_belize_hcb/GrowingButton-parameters.css +8 -0
  975. package/src/themes/sap_belize_hcb/Input-parameters.css +14 -0
  976. package/src/themes/sap_belize_hcb/InputIcon-parameters.css +5 -0
  977. package/src/themes/sap_belize_hcb/Link-parameters.css +7 -0
  978. package/src/themes/sap_belize_hcb/MessageStrip-parameters.css +10 -0
  979. package/src/themes/sap_belize_hcb/MonthPicker-parameters.css +10 -0
  980. package/src/themes/sap_belize_hcb/Panel-parameters.css +5 -0
  981. package/src/themes/sap_belize_hcb/ProgressIndicator-parameters.css +11 -0
  982. package/src/themes/sap_belize_hcb/RadioButton-parameters.css +10 -0
  983. package/src/themes/sap_belize_hcb/Select-parameters.css +12 -0
  984. package/src/themes/sap_belize_hcb/SliderBase-parameters.css +17 -0
  985. package/src/themes/sap_belize_hcb/Switch-parameters.css +44 -0
  986. package/src/themes/sap_belize_hcb/TabContainer-parameters.css +44 -0
  987. package/src/themes/sap_belize_hcb/Table-parameters.css +7 -0
  988. package/src/themes/sap_belize_hcb/TableRow-parameters.css +5 -0
  989. package/src/themes/sap_belize_hcb/TextArea-parameters.css +6 -0
  990. package/src/themes/sap_belize_hcb/ToggleButton-parameters.css +7 -0
  991. package/src/themes/sap_belize_hcb/Token-parameters.css +6 -0
  992. package/src/themes/sap_belize_hcb/ValueStateMessage-parameters.css +5 -0
  993. package/src/themes/sap_belize_hcb/WheelSlider-parameters.css +17 -0
  994. package/src/themes/sap_belize_hcb/YearPicker-parameters.css +10 -0
  995. package/src/themes/sap_belize_hcb/parameters-bundle.css +46 -0
  996. package/src/themes/sap_belize_hcw/Avatar-parameters.css +18 -0
  997. package/src/themes/sap_belize_hcw/Badge-parameters.css +43 -0
  998. package/src/themes/sap_belize_hcw/BrowserScrollbar-parameters.css +4 -0
  999. package/src/themes/sap_belize_hcw/Button-parameters.css +12 -0
  1000. package/src/themes/sap_belize_hcw/CalendarHeader-parameters.css +11 -0
  1001. package/src/themes/sap_belize_hcw/Card-parameters.css +6 -0
  1002. package/src/themes/sap_belize_hcw/Carousel-parameters.css +9 -0
  1003. package/src/themes/sap_belize_hcw/CheckBox-parameters.css +12 -0
  1004. package/src/themes/sap_belize_hcw/DatePicker-parameters.css +5 -0
  1005. package/src/themes/sap_belize_hcw/DayPicker-parameters.css +14 -0
  1006. package/src/themes/sap_belize_hcw/Dialog-parameters.css +7 -0
  1007. package/src/themes/sap_belize_hcw/GrowingButton-parameters.css +8 -0
  1008. package/src/themes/sap_belize_hcw/Input-parameters.css +14 -0
  1009. package/src/themes/sap_belize_hcw/InputIcon-parameters.css +5 -0
  1010. package/src/themes/sap_belize_hcw/Link-parameters.css +7 -0
  1011. package/src/themes/sap_belize_hcw/MessageStrip-parameters.css +10 -0
  1012. package/src/themes/sap_belize_hcw/MonthPicker-parameters.css +10 -0
  1013. package/src/themes/sap_belize_hcw/Panel-parameters.css +5 -0
  1014. package/src/themes/sap_belize_hcw/ProgressIndicator-parameters.css +11 -0
  1015. package/src/themes/sap_belize_hcw/RadioButton-parameters.css +10 -0
  1016. package/src/themes/sap_belize_hcw/Select-parameters.css +12 -0
  1017. package/src/themes/sap_belize_hcw/SliderBase-parameters.css +17 -0
  1018. package/src/themes/sap_belize_hcw/Switch-parameters.css +43 -0
  1019. package/src/themes/sap_belize_hcw/TabContainer-parameters.css +44 -0
  1020. package/src/themes/sap_belize_hcw/Table-parameters.css +7 -0
  1021. package/src/themes/sap_belize_hcw/TableRow-parameters.css +5 -0
  1022. package/src/themes/sap_belize_hcw/TextArea-parameters.css +6 -0
  1023. package/src/themes/sap_belize_hcw/ToggleButton-parameters.css +6 -0
  1024. package/src/themes/sap_belize_hcw/Token-parameters.css +6 -0
  1025. package/src/themes/sap_belize_hcw/ValueStateMessage-parameters.css +5 -0
  1026. package/src/themes/sap_belize_hcw/WheelSlider-parameters.css +17 -0
  1027. package/src/themes/sap_belize_hcw/YearPicker-parameters.css +10 -0
  1028. package/src/themes/sap_belize_hcw/parameters-bundle.css +46 -0
  1029. package/src/themes/sap_fiori_3/Avatar-parameters.css +9 -0
  1030. package/src/themes/sap_fiori_3/Button-parameters.css +14 -0
  1031. package/src/themes/sap_fiori_3/CalendarHeader-parameters.css +8 -0
  1032. package/src/themes/sap_fiori_3/CheckBox-parameters.css +13 -0
  1033. package/src/themes/sap_fiori_3/DayPicker-parameters.css +6 -0
  1034. package/src/themes/sap_fiori_3/Input-parameters.css +7 -0
  1035. package/src/themes/sap_fiori_3/Link-parameters.css +7 -0
  1036. package/src/themes/sap_fiori_3/List-parameters.css +5 -0
  1037. package/src/themes/sap_fiori_3/MonthPicker-parameters.css +5 -0
  1038. package/src/themes/sap_fiori_3/MultiComboBox-parameters.css +5 -0
  1039. package/src/themes/sap_fiori_3/Panel-parameters.css +6 -0
  1040. package/src/themes/sap_fiori_3/SliderBase-parameters.css +5 -0
  1041. package/src/themes/sap_fiori_3/TabContainer-parameters.css +12 -0
  1042. package/src/themes/sap_fiori_3/TimePicker-parameters.css +5 -0
  1043. package/src/themes/sap_fiori_3/Token-parameters.css +9 -0
  1044. package/src/themes/sap_fiori_3/WheelSlider-parameters.css +16 -0
  1045. package/src/themes/sap_fiori_3/YearPicker-parameters.css +5 -0
  1046. package/src/themes/sap_fiori_3/parameters-bundle.css +47 -0
  1047. package/src/themes/sap_fiori_3_dark/Avatar-parameters.css +9 -0
  1048. package/src/themes/sap_fiori_3_dark/Button-parameters.css +14 -0
  1049. package/src/themes/sap_fiori_3_dark/CalendarHeader-parameters.css +8 -0
  1050. package/src/themes/sap_fiori_3_dark/CheckBox-parameters.css +13 -0
  1051. package/src/themes/sap_fiori_3_dark/DayPicker-parameters.css +6 -0
  1052. package/src/themes/sap_fiori_3_dark/Input-parameters.css +7 -0
  1053. package/src/themes/sap_fiori_3_dark/Link-parameters.css +7 -0
  1054. package/src/themes/sap_fiori_3_dark/List-parameters.css +5 -0
  1055. package/src/themes/sap_fiori_3_dark/MonthPicker-parameters.css +5 -0
  1056. package/src/themes/sap_fiori_3_dark/MultiComboBox-parameters.css +5 -0
  1057. package/src/themes/sap_fiori_3_dark/Panel-parameters.css +6 -0
  1058. package/src/themes/sap_fiori_3_dark/SliderBase-parameters.css +5 -0
  1059. package/src/themes/sap_fiori_3_dark/TabContainer-parameters.css +12 -0
  1060. package/src/themes/sap_fiori_3_dark/Token-parameters.css +8 -0
  1061. package/src/themes/sap_fiori_3_dark/WheelSlider-parameters.css +15 -0
  1062. package/src/themes/sap_fiori_3_dark/YearPicker-parameters.css +5 -0
  1063. package/src/themes/sap_fiori_3_dark/parameters-bundle.css +46 -0
  1064. package/src/themes/sap_fiori_3_hcb/Avatar-parameters.css +24 -0
  1065. package/src/themes/sap_fiori_3_hcb/Badge-parameters.css +43 -0
  1066. package/src/themes/sap_fiori_3_hcb/Button-parameters.css +10 -0
  1067. package/src/themes/sap_fiori_3_hcb/CalendarHeader-parameters.css +11 -0
  1068. package/src/themes/sap_fiori_3_hcb/Card-parameters.css +6 -0
  1069. package/src/themes/sap_fiori_3_hcb/Carousel-parameters.css +9 -0
  1070. package/src/themes/sap_fiori_3_hcb/CheckBox-parameters.css +13 -0
  1071. package/src/themes/sap_fiori_3_hcb/DatePicker-parameters.css +5 -0
  1072. package/src/themes/sap_fiori_3_hcb/DayPicker-parameters.css +17 -0
  1073. package/src/themes/sap_fiori_3_hcb/Dialog-parameters.css +7 -0
  1074. package/src/themes/sap_fiori_3_hcb/GrowingButton-parameters.css +8 -0
  1075. package/src/themes/sap_fiori_3_hcb/Input-parameters.css +21 -0
  1076. package/src/themes/sap_fiori_3_hcb/InputIcon-parameters.css +5 -0
  1077. package/src/themes/sap_fiori_3_hcb/Link-parameters.css +7 -0
  1078. package/src/themes/sap_fiori_3_hcb/MessageStrip-parameters.css +10 -0
  1079. package/src/themes/sap_fiori_3_hcb/MonthPicker-parameters.css +11 -0
  1080. package/src/themes/sap_fiori_3_hcb/Panel-parameters.css +5 -0
  1081. package/src/themes/sap_fiori_3_hcb/ProgressIndicator-parameters.css +11 -0
  1082. package/src/themes/sap_fiori_3_hcb/RadioButton-parameters.css +10 -0
  1083. package/src/themes/sap_fiori_3_hcb/Select-parameters.css +12 -0
  1084. package/src/themes/sap_fiori_3_hcb/SliderBase-parameters.css +14 -0
  1085. package/src/themes/sap_fiori_3_hcb/Switch-parameters.css +43 -0
  1086. package/src/themes/sap_fiori_3_hcb/TabContainer-parameters.css +44 -0
  1087. package/src/themes/sap_fiori_3_hcb/Table-parameters.css +5 -0
  1088. package/src/themes/sap_fiori_3_hcb/TableRow-parameters.css +5 -0
  1089. package/src/themes/sap_fiori_3_hcb/TextArea-parameters.css +10 -0
  1090. package/src/themes/sap_fiori_3_hcb/TimePicker-parameters.css +5 -0
  1091. package/src/themes/sap_fiori_3_hcb/ToggleButton-parameters.css +6 -0
  1092. package/src/themes/sap_fiori_3_hcb/Token-parameters.css +7 -0
  1093. package/src/themes/sap_fiori_3_hcb/ValueStateMessage-parameters.css +5 -0
  1094. package/src/themes/sap_fiori_3_hcb/WheelSlider-parameters.css +17 -0
  1095. package/src/themes/sap_fiori_3_hcb/YearPicker-parameters.css +11 -0
  1096. package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +47 -0
  1097. package/src/themes/sap_fiori_3_hcw/Avatar-parameters.css +24 -0
  1098. package/src/themes/sap_fiori_3_hcw/Badge-parameters.css +43 -0
  1099. package/src/themes/sap_fiori_3_hcw/Button-parameters.css +10 -0
  1100. package/src/themes/sap_fiori_3_hcw/CalendarHeader-parameters.css +11 -0
  1101. package/src/themes/sap_fiori_3_hcw/Card-parameters.css +6 -0
  1102. package/src/themes/sap_fiori_3_hcw/Carousel-parameters.css +9 -0
  1103. package/src/themes/sap_fiori_3_hcw/CheckBox-parameters.css +13 -0
  1104. package/src/themes/sap_fiori_3_hcw/DatePicker-parameters.css +5 -0
  1105. package/src/themes/sap_fiori_3_hcw/DayPicker-parameters.css +17 -0
  1106. package/src/themes/sap_fiori_3_hcw/Dialog-parameters.css +7 -0
  1107. package/src/themes/sap_fiori_3_hcw/GrowingButton-parameters.css +8 -0
  1108. package/src/themes/sap_fiori_3_hcw/Input-parameters.css +21 -0
  1109. package/src/themes/sap_fiori_3_hcw/InputIcon-parameters.css +5 -0
  1110. package/src/themes/sap_fiori_3_hcw/Link-parameters.css +7 -0
  1111. package/src/themes/sap_fiori_3_hcw/MessageStrip-parameters.css +10 -0
  1112. package/src/themes/sap_fiori_3_hcw/MonthPicker-parameters.css +11 -0
  1113. package/src/themes/sap_fiori_3_hcw/Panel-parameters.css +5 -0
  1114. package/src/themes/sap_fiori_3_hcw/ProgressIndicator-parameters.css +11 -0
  1115. package/src/themes/sap_fiori_3_hcw/RadioButton-parameters.css +10 -0
  1116. package/src/themes/sap_fiori_3_hcw/Select-parameters.css +12 -0
  1117. package/src/themes/sap_fiori_3_hcw/SliderBase-parameters.css +13 -0
  1118. package/src/themes/sap_fiori_3_hcw/Switch-parameters.css +43 -0
  1119. package/src/themes/sap_fiori_3_hcw/TabContainer-parameters.css +44 -0
  1120. package/src/themes/sap_fiori_3_hcw/Table-parameters.css +5 -0
  1121. package/src/themes/sap_fiori_3_hcw/TableRow-parameters.css +5 -0
  1122. package/src/themes/sap_fiori_3_hcw/TextArea-parameters.css +10 -0
  1123. package/src/themes/sap_fiori_3_hcw/TimePicker-parameters.css +5 -0
  1124. package/src/themes/sap_fiori_3_hcw/ToggleButton-parameters.css +6 -0
  1125. package/src/themes/sap_fiori_3_hcw/Token-parameters.css +7 -0
  1126. package/src/themes/sap_fiori_3_hcw/ValueStateMessage-parameters.css +5 -0
  1127. package/src/themes/sap_fiori_3_hcw/WheelSlider-parameters.css +17 -0
  1128. package/src/themes/sap_fiori_3_hcw/YearPicker-parameters.css +11 -0
  1129. package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +47 -0
  1130. package/src/themes/sap_horizon/Avatar-parameters.css +33 -0
  1131. package/src/themes/sap_horizon/BusyIndicator-parameters.css +7 -0
  1132. package/src/themes/sap_horizon/Button-parameters.css +20 -0
  1133. package/src/themes/sap_horizon/CalendarHeader-parameters.css +19 -0
  1134. package/src/themes/sap_horizon/Card-parameters.css +10 -0
  1135. package/src/themes/sap_horizon/CheckBox-parameters.css +34 -0
  1136. package/src/themes/sap_horizon/ColorPalette-parameters.css +16 -0
  1137. package/src/themes/sap_horizon/ColorPicker-parameters.css +10 -0
  1138. package/src/themes/sap_horizon/DatePicker-parameters.css +6 -0
  1139. package/src/themes/sap_horizon/DayPicker-parameters.css +31 -0
  1140. package/src/themes/sap_horizon/Dialog-parameters.css +11 -0
  1141. package/src/themes/sap_horizon/GrowingButton-parameters.css +5 -0
  1142. package/src/themes/sap_horizon/Input-parameters.css +35 -0
  1143. package/src/themes/sap_horizon/InputIcon-parameters.css +17 -0
  1144. package/src/themes/sap_horizon/Link-parameters.css +10 -0
  1145. package/src/themes/sap_horizon/List-parameters.css +5 -0
  1146. package/src/themes/sap_horizon/ListItemBase-parameters.css +6 -0
  1147. package/src/themes/sap_horizon/MessageStrip-parameters.css +9 -0
  1148. package/src/themes/sap_horizon/MonthPicker-parameters.css +17 -0
  1149. package/src/themes/sap_horizon/MultiComboBox-parameters.css +5 -0
  1150. package/src/themes/sap_horizon/Panel-parameters.css +12 -0
  1151. package/src/themes/sap_horizon/PopupsCommon-parameters.css +9 -0
  1152. package/src/themes/sap_horizon/ProgressIndicator-parameters.css +23 -0
  1153. package/src/themes/sap_horizon/RadioButton-parameters.css +9 -0
  1154. package/src/themes/sap_horizon/RatingIndicator-parameters.css +3 -0
  1155. package/src/themes/sap_horizon/SegmentedButtton-parameters.css +10 -0
  1156. package/src/themes/sap_horizon/Select-parameters.css +5 -0
  1157. package/src/themes/sap_horizon/SelectPopover-parameters.css +4 -0
  1158. package/src/themes/sap_horizon/SliderBase-parameters.css +44 -0
  1159. package/src/themes/sap_horizon/StepInput-parameters.css +25 -0
  1160. package/src/themes/sap_horizon/Suggestions-parameters.css +5 -0
  1161. package/src/themes/sap_horizon/Switch-parameters.css +31 -0
  1162. package/src/themes/sap_horizon/TabContainer-parameters.css +25 -0
  1163. package/src/themes/sap_horizon/Table-parameters.css +8 -0
  1164. package/src/themes/sap_horizon/TableColumn-parameters.css +5 -0
  1165. package/src/themes/sap_horizon/TableRow-parameters.css +5 -0
  1166. package/src/themes/sap_horizon/TextArea-parameters.css +22 -0
  1167. package/src/themes/sap_horizon/TimePicker-parameters.css +6 -0
  1168. package/src/themes/sap_horizon/ToggleButton-parameters.css +11 -0
  1169. package/src/themes/sap_horizon/Token-parameters.css +28 -0
  1170. package/src/themes/sap_horizon/Tokenizer-parameters.css +6 -0
  1171. package/src/themes/sap_horizon/ValueStateMessage-parameters.css +8 -0
  1172. package/src/themes/sap_horizon/WheelSlider-parameters.css +19 -0
  1173. package/src/themes/sap_horizon/YearPicker-parameters.css +16 -0
  1174. package/src/themes/sap_horizon/parameters-bundle.css +56 -0
  1175. package/src/themes/sap_horizon/sizes-parameters.css +8 -0
  1176. package/src/themes/sap_horizon_dark/Avatar-parameters.css +33 -0
  1177. package/src/themes/sap_horizon_dark/BusyIndicator-parameters.css +7 -0
  1178. package/src/themes/sap_horizon_dark/Button-parameters.css +20 -0
  1179. package/src/themes/sap_horizon_dark/CalendarHeader-parameters.css +19 -0
  1180. package/src/themes/sap_horizon_dark/Card-parameters.css +10 -0
  1181. package/src/themes/sap_horizon_dark/CheckBox-parameters.css +34 -0
  1182. package/src/themes/sap_horizon_dark/ColorPalette-parameters.css +16 -0
  1183. package/src/themes/sap_horizon_dark/ColorPicker-parameters.css +10 -0
  1184. package/src/themes/sap_horizon_dark/DatePicker-parameters.css +6 -0
  1185. package/src/themes/sap_horizon_dark/DayPicker-parameters.css +31 -0
  1186. package/src/themes/sap_horizon_dark/Dialog-parameters.css +11 -0
  1187. package/src/themes/sap_horizon_dark/GrowingButton-parameters.css +5 -0
  1188. package/src/themes/sap_horizon_dark/Input-parameters.css +35 -0
  1189. package/src/themes/sap_horizon_dark/InputIcon-parameters.css +17 -0
  1190. package/src/themes/sap_horizon_dark/Link-parameters.css +10 -0
  1191. package/src/themes/sap_horizon_dark/List-parameters.css +5 -0
  1192. package/src/themes/sap_horizon_dark/ListItemBase-parameters.css +7 -0
  1193. package/src/themes/sap_horizon_dark/MessageStrip-parameters.css +9 -0
  1194. package/src/themes/sap_horizon_dark/MonthPicker-parameters.css +17 -0
  1195. package/src/themes/sap_horizon_dark/MultiComboBox-parameters.css +5 -0
  1196. package/src/themes/sap_horizon_dark/Panel-parameters.css +12 -0
  1197. package/src/themes/sap_horizon_dark/PopupsCommon-parameters.css +10 -0
  1198. package/src/themes/sap_horizon_dark/ProgressIndicator-parameters.css +23 -0
  1199. package/src/themes/sap_horizon_dark/RadioButton-parameters.css +9 -0
  1200. package/src/themes/sap_horizon_dark/RatingIndicator-parameters.css +3 -0
  1201. package/src/themes/sap_horizon_dark/SegmentedButtton-parameters.css +10 -0
  1202. package/src/themes/sap_horizon_dark/Select-parameters.css +5 -0
  1203. package/src/themes/sap_horizon_dark/SelectPopover-parameters.css +4 -0
  1204. package/src/themes/sap_horizon_dark/SliderBase-parameters.css +44 -0
  1205. package/src/themes/sap_horizon_dark/StepInput-parameters.css +25 -0
  1206. package/src/themes/sap_horizon_dark/Suggestions-parameters.css +5 -0
  1207. package/src/themes/sap_horizon_dark/Switch-parameters.css +31 -0
  1208. package/src/themes/sap_horizon_dark/TabContainer-parameters.css +25 -0
  1209. package/src/themes/sap_horizon_dark/Table-parameters.css +8 -0
  1210. package/src/themes/sap_horizon_dark/TableColumn-parameters.css +5 -0
  1211. package/src/themes/sap_horizon_dark/TableRow-parameters.css +5 -0
  1212. package/src/themes/sap_horizon_dark/TextArea-parameters.css +22 -0
  1213. package/src/themes/sap_horizon_dark/TimePicker-parameters.css +6 -0
  1214. package/src/themes/sap_horizon_dark/ToggleButton-parameters.css +11 -0
  1215. package/src/themes/sap_horizon_dark/Token-parameters.css +28 -0
  1216. package/src/themes/sap_horizon_dark/Tokenizer-parameters.css +6 -0
  1217. package/src/themes/sap_horizon_dark/ValueStateMessage-parameters.css +8 -0
  1218. package/src/themes/sap_horizon_dark/WheelSlider-parameters.css +19 -0
  1219. package/src/themes/sap_horizon_dark/YearPicker-parameters.css +16 -0
  1220. package/src/themes/sap_horizon_dark/parameters-bundle.css +56 -0
  1221. package/src/themes/sap_horizon_dark/sizes-parameters.css +8 -0
  1222. package/src/themes/sap_horizon_exp/Badge-parameters.css +91 -0
  1223. package/src/themes/sap_horizon_exp/Button-parameters.css +12 -0
  1224. package/src/themes/sap_horizon_exp/CalendarHeader-parameters.css +8 -0
  1225. package/src/themes/sap_horizon_exp/CheckBox-parameters.css +35 -0
  1226. package/src/themes/sap_horizon_exp/DatePicker-parameters.css +5 -0
  1227. package/src/themes/sap_horizon_exp/DayPicker-parameters.css +6 -0
  1228. package/src/themes/sap_horizon_exp/Input-parameters.css +46 -0
  1229. package/src/themes/sap_horizon_exp/InputIcon-parameters.css +9 -0
  1230. package/src/themes/sap_horizon_exp/Link-parameters.css +7 -0
  1231. package/src/themes/sap_horizon_exp/List-parameters.css +5 -0
  1232. package/src/themes/sap_horizon_exp/MonthPicker-parameters.css +5 -0
  1233. package/src/themes/sap_horizon_exp/MultiComboBox-parameters.css +7 -0
  1234. package/src/themes/sap_horizon_exp/Panel-parameters.css +6 -0
  1235. package/src/themes/sap_horizon_exp/Popover-parameters.css +5 -0
  1236. package/src/themes/sap_horizon_exp/RadioButton-parameters.css +30 -0
  1237. package/src/themes/sap_horizon_exp/Select-parameters.css +5 -0
  1238. package/src/themes/sap_horizon_exp/SliderBase-parameters.css +30 -0
  1239. package/src/themes/sap_horizon_exp/Switch-parameters.css +46 -0
  1240. package/src/themes/sap_horizon_exp/TabContainer-parameters.css +40 -0
  1241. package/src/themes/sap_horizon_exp/TimePicker-parameters.css +5 -0
  1242. package/src/themes/sap_horizon_exp/Token-parameters.css +9 -0
  1243. package/src/themes/sap_horizon_exp/WheelSlider-parameters.css +16 -0
  1244. package/src/themes/sap_horizon_exp/YearPicker-parameters.css +5 -0
  1245. package/src/themes/sap_horizon_exp/parameters-bundle.css +45 -0
  1246. package/src/themes/sap_horizon_hcb/Avatar-parameters.css +24 -0
  1247. package/src/themes/sap_horizon_hcb/Badge-parameters.css +43 -0
  1248. package/src/themes/sap_horizon_hcb/Button-parameters.css +10 -0
  1249. package/src/themes/sap_horizon_hcb/CalendarHeader-parameters.css +11 -0
  1250. package/src/themes/sap_horizon_hcb/Card-parameters.css +6 -0
  1251. package/src/themes/sap_horizon_hcb/Carousel-parameters.css +9 -0
  1252. package/src/themes/sap_horizon_hcb/CheckBox-parameters.css +13 -0
  1253. package/src/themes/sap_horizon_hcb/DatePicker-parameters.css +5 -0
  1254. package/src/themes/sap_horizon_hcb/DayPicker-parameters.css +17 -0
  1255. package/src/themes/sap_horizon_hcb/Dialog-parameters.css +7 -0
  1256. package/src/themes/sap_horizon_hcb/GrowingButton-parameters.css +8 -0
  1257. package/src/themes/sap_horizon_hcb/Input-parameters.css +21 -0
  1258. package/src/themes/sap_horizon_hcb/InputIcon-parameters.css +5 -0
  1259. package/src/themes/sap_horizon_hcb/Link-parameters.css +7 -0
  1260. package/src/themes/sap_horizon_hcb/MessageStrip-parameters.css +10 -0
  1261. package/src/themes/sap_horizon_hcb/MonthPicker-parameters.css +11 -0
  1262. package/src/themes/sap_horizon_hcb/Panel-parameters.css +5 -0
  1263. package/src/themes/sap_horizon_hcb/ProgressIndicator-parameters.css +11 -0
  1264. package/src/themes/sap_horizon_hcb/RadioButton-parameters.css +10 -0
  1265. package/src/themes/sap_horizon_hcb/Select-parameters.css +12 -0
  1266. package/src/themes/sap_horizon_hcb/SliderBase-parameters.css +14 -0
  1267. package/src/themes/sap_horizon_hcb/Switch-parameters.css +43 -0
  1268. package/src/themes/sap_horizon_hcb/TabContainer-parameters.css +44 -0
  1269. package/src/themes/sap_horizon_hcb/Table-parameters.css +5 -0
  1270. package/src/themes/sap_horizon_hcb/TableRow-parameters.css +5 -0
  1271. package/src/themes/sap_horizon_hcb/TextArea-parameters.css +10 -0
  1272. package/src/themes/sap_horizon_hcb/TimePicker-parameters.css +5 -0
  1273. package/src/themes/sap_horizon_hcb/ToggleButton-parameters.css +6 -0
  1274. package/src/themes/sap_horizon_hcb/Token-parameters.css +7 -0
  1275. package/src/themes/sap_horizon_hcb/ValueStateMessage-parameters.css +5 -0
  1276. package/src/themes/sap_horizon_hcb/WheelSlider-parameters.css +17 -0
  1277. package/src/themes/sap_horizon_hcb/YearPicker-parameters.css +11 -0
  1278. package/src/themes/sap_horizon_hcb/parameters-bundle.css +47 -0
  1279. package/src/themes/sap_horizon_hcw/Avatar-parameters.css +24 -0
  1280. package/src/themes/sap_horizon_hcw/Badge-parameters.css +43 -0
  1281. package/src/themes/sap_horizon_hcw/Button-parameters.css +10 -0
  1282. package/src/themes/sap_horizon_hcw/CalendarHeader-parameters.css +11 -0
  1283. package/src/themes/sap_horizon_hcw/Card-parameters.css +6 -0
  1284. package/src/themes/sap_horizon_hcw/Carousel-parameters.css +9 -0
  1285. package/src/themes/sap_horizon_hcw/CheckBox-parameters.css +13 -0
  1286. package/src/themes/sap_horizon_hcw/DatePicker-parameters.css +5 -0
  1287. package/src/themes/sap_horizon_hcw/DayPicker-parameters.css +17 -0
  1288. package/src/themes/sap_horizon_hcw/Dialog-parameters.css +7 -0
  1289. package/src/themes/sap_horizon_hcw/GrowingButton-parameters.css +8 -0
  1290. package/src/themes/sap_horizon_hcw/Input-parameters.css +21 -0
  1291. package/src/themes/sap_horizon_hcw/InputIcon-parameters.css +5 -0
  1292. package/src/themes/sap_horizon_hcw/Link-parameters.css +7 -0
  1293. package/src/themes/sap_horizon_hcw/MessageStrip-parameters.css +10 -0
  1294. package/src/themes/sap_horizon_hcw/MonthPicker-parameters.css +11 -0
  1295. package/src/themes/sap_horizon_hcw/Panel-parameters.css +5 -0
  1296. package/src/themes/sap_horizon_hcw/ProgressIndicator-parameters.css +11 -0
  1297. package/src/themes/sap_horizon_hcw/RadioButton-parameters.css +10 -0
  1298. package/src/themes/sap_horizon_hcw/Select-parameters.css +12 -0
  1299. package/src/themes/sap_horizon_hcw/SliderBase-parameters.css +13 -0
  1300. package/src/themes/sap_horizon_hcw/Switch-parameters.css +43 -0
  1301. package/src/themes/sap_horizon_hcw/TabContainer-parameters.css +44 -0
  1302. package/src/themes/sap_horizon_hcw/Table-parameters.css +5 -0
  1303. package/src/themes/sap_horizon_hcw/TableRow-parameters.css +5 -0
  1304. package/src/themes/sap_horizon_hcw/TextArea-parameters.css +10 -0
  1305. package/src/themes/sap_horizon_hcw/TimePicker-parameters.css +5 -0
  1306. package/src/themes/sap_horizon_hcw/ToggleButton-parameters.css +6 -0
  1307. package/src/themes/sap_horizon_hcw/Token-parameters.css +7 -0
  1308. package/src/themes/sap_horizon_hcw/ValueStateMessage-parameters.css +5 -0
  1309. package/src/themes/sap_horizon_hcw/WheelSlider-parameters.css +17 -0
  1310. package/src/themes/sap_horizon_hcw/YearPicker-parameters.css +11 -0
  1311. package/src/themes/sap_horizon_hcw/parameters-bundle.css +47 -0
  1312. package/src/timepicker-utils/TimeSlider.js +103 -0
  1313. package/src/types/AvatarColorScheme.js +104 -0
  1314. package/src/types/AvatarGroupType.js +43 -0
  1315. package/src/types/AvatarShape.js +41 -0
  1316. package/src/types/AvatarSize.js +67 -0
  1317. package/src/types/BreadcrumbsDesign.js +42 -0
  1318. package/src/types/BreadcrumbsSeparatorStyle.js +69 -0
  1319. package/src/types/BusyIndicatorSize.js +47 -0
  1320. package/src/types/ButtonDesign.js +68 -0
  1321. package/src/types/CalendarSelectionMode.js +47 -0
  1322. package/src/types/CarouselArrowsPlacement.js +40 -0
  1323. package/src/types/GrowingMode.js +48 -0
  1324. package/src/types/HasPopup.js +62 -0
  1325. package/src/types/InputType.js +68 -0
  1326. package/src/types/LinkDesign.js +47 -0
  1327. package/src/types/ListGrowingMode.js +48 -0
  1328. package/src/types/ListItemType.js +47 -0
  1329. package/src/types/ListMode.js +77 -0
  1330. package/src/types/ListSeparators.js +46 -0
  1331. package/src/types/MessageStripDesign.js +54 -0
  1332. package/src/types/PanelAccessibleRole.js +48 -0
  1333. package/src/types/PopoverHorizontalAlign.js +54 -0
  1334. package/src/types/PopoverPlacementType.js +54 -0
  1335. package/src/types/PopoverVerticalAlign.js +54 -0
  1336. package/src/types/Priority.js +55 -0
  1337. package/src/types/SemanticColor.js +61 -0
  1338. package/src/types/SwitchDesign.js +40 -0
  1339. package/src/types/TabContainerTabsPlacement.js +40 -0
  1340. package/src/types/TabLayout.js +40 -0
  1341. package/src/types/TableGrowingMode.js +48 -0
  1342. package/src/types/TableMode.js +47 -0
  1343. package/src/types/TableRowType.js +40 -0
  1344. package/src/types/TabsOverflowMode.js +40 -0
  1345. package/src/types/TitleLevel.js +68 -0
  1346. package/src/types/ToastPlacement.js +91 -0
  1347. package/src/types/WrappingType.js +41 -0
  1348. package/dist/Timeline.js +0 -82
  1349. package/dist/TimelineItem.js +0 -161
  1350. package/dist/generated/templates/ComboBoxItemTemplate.lit.js +0 -7
  1351. package/dist/generated/templates/TabSeparatorTemplate.lit.js +0 -7
  1352. package/dist/generated/templates/TimelineItemTemplate.lit.js +0 -12
  1353. package/dist/generated/templates/TimelineTemplate.lit.js +0 -8
  1354. package/dist/generated/themes/ComboBoxItem.css.js +0 -9
  1355. package/dist/generated/themes/TabContainerPopup.css.js +0 -9
  1356. package/dist/generated/themes/Timeline.css.js +0 -9
  1357. package/dist/generated/themes/TimelineItem.css.js +0 -9
  1358. package/dist/popup-utils/PopupUtils.js +0 -55
  1359. package/dist/types/AvatarFitType.js +0 -40
  1360. package/dist/webcomponentsjs/package.json +0 -46
package/dist/Input.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
2
  import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
3
- import { isIE, isPhone } from "@ui5/webcomponents-base/dist/Device.js";
3
+ import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
4
+ import { isIE, isPhone, isSafari } from "@ui5/webcomponents-base/dist/Device.js";
4
5
  import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
5
6
  import { getFeature } from "@ui5/webcomponents-base/dist/FeaturesRegistry.js";
6
7
  import {
@@ -8,39 +9,65 @@ import {
8
9
  isDown,
9
10
  isSpace,
10
11
  isEnter,
11
- } from "@ui5/webcomponents-base/dist/events/PseudoEvents.js";
12
+ isBackSpace,
13
+ isDelete,
14
+ isEscape,
15
+ isTabNext,
16
+ isPageUp,
17
+ isPageDown,
18
+ isHome,
19
+ isEnd,
20
+ } from "@ui5/webcomponents-base/dist/Keys.js";
12
21
  import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
13
- import { fetchI18nBundle, getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
14
- // import Icon from "./Icon.js";
22
+ import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
23
+ import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AriaLabelHelper.js";
24
+ import { getCaretPosition, setCaretPosition } from "@ui5/webcomponents-base/dist/util/Caret.js";
25
+ import "@ui5/webcomponents-icons/dist/decline.js";
26
+ import "@ui5/webcomponents-icons/dist/not-editable.js";
27
+ import "@ui5/webcomponents-icons/dist/error.js";
28
+ import "@ui5/webcomponents-icons/dist/alert.js";
29
+ import "@ui5/webcomponents-icons/dist/sys-enter-2.js";
30
+ import "@ui5/webcomponents-icons/dist/information.js";
15
31
  import InputType from "./types/InputType.js";
32
+ import Popover from "./Popover.js";
33
+ import Icon from "./Icon.js";
16
34
  // Templates
17
35
  import InputTemplate from "./generated/templates/InputTemplate.lit.js";
18
36
  import InputPopoverTemplate from "./generated/templates/InputPopoverTemplate.lit.js";
19
37
 
20
38
  import {
21
39
  VALUE_STATE_SUCCESS,
40
+ VALUE_STATE_INFORMATION,
22
41
  VALUE_STATE_ERROR,
23
42
  VALUE_STATE_WARNING,
24
43
  INPUT_SUGGESTIONS,
25
44
  INPUT_SUGGESTIONS_TITLE,
45
+ INPUT_SUGGESTIONS_ONE_HIT,
46
+ INPUT_SUGGESTIONS_MORE_HITS,
47
+ INPUT_SUGGESTIONS_NO_HIT,
26
48
  } from "./generated/i18n/i18n-defaults.js";
27
49
 
28
50
  // Styles
29
51
  import styles from "./generated/themes/Input.css.js";
30
52
  import ResponsivePopoverCommonCss from "./generated/themes/ResponsivePopoverCommon.css.js";
53
+ import ValueStateMessageCss from "./generated/themes/ValueStateMessage.css.js";
54
+ import SuggestionsCss from "./generated/themes/Suggestions.css.js";
55
+
56
+ const rgxFloat = new RegExp(/(\+|-)?\d+(\.|,)\d+/);
31
57
 
32
58
  /**
33
59
  * @public
34
60
  */
35
61
  const metadata = {
36
62
  tag: "ui5-input",
63
+ languageAware: true,
37
64
  managedSlots: true,
38
65
  slots: /** @lends sap.ui.webcomponents.main.Input.prototype */ {
39
66
 
40
67
  /**
41
- * Defines the icon to be displayed in the <code>ui5-input</code>.
68
+ * Defines the icon to be displayed in the component.
42
69
  *
43
- * @type {HTMLElement[]}
70
+ * @type {sap.ui.webcomponents.main.IIcon[]}
44
71
  * @slot
45
72
  * @public
46
73
  */
@@ -49,24 +76,37 @@ const metadata = {
49
76
  },
50
77
 
51
78
  /**
52
- * Defines the <code>ui5-input</code> suggestion items.
79
+ * Defines the suggestion items.
80
+ * <br><br>
81
+ * Example:
53
82
  * <br><br>
54
- * Example: <br>
55
83
  * &lt;ui5-input show-suggestions><br>
56
- * &nbsp;&nbsp;&nbsp;&nbsp;&lt;ui5-li>Item #1&lt;/ui5-li><br>
57
- * &nbsp;&nbsp;&nbsp;&nbsp;&lt;ui5-li>Item #2&lt;/ui5-li><br>
84
+ * &nbsp;&nbsp;&nbsp;&nbsp;&lt;ui5-suggestion-item text="Item #1">&lt;/ui5-suggestion-item><br>
85
+ * &nbsp;&nbsp;&nbsp;&nbsp;&lt;ui5-suggestion-item text="Item #2">&lt;/ui5-suggestion-item><br>
58
86
  * &lt;/ui5-input>
59
- * <ui5-input show-suggestions><ui5-li>Item #1</ui5-li><ui5-li>Item #2</ui5-li></ui5-input>
87
+ * <br>
88
+ * <ui5-input show-suggestions>
89
+ * <ui5-suggestion-group-item text="Group #1"></ui5-suggestion-group-item>
90
+ * <ui5-suggestion-item text="Item #1"></ui5-suggestion-item>
91
+ * <ui5-suggestion-item text="Item #2"></ui5-suggestion-item>
92
+ * <ui5-suggestion-group-item text="Group #2"></ui5-suggestion-group-item>
93
+ * <ui5-suggestion-item text="Item #3"></ui5-suggestion-item>
94
+ * <ui5-suggestion-item text="Item #4"></ui5-suggestion-item>
95
+ * </ui5-input>
60
96
  * <br><br>
61
- * <b>Note:</b> The suggestion would be displayed only if the <code>showSuggestions</code>
97
+ * <b>Note:</b> The suggestions would be displayed only if the <code>showSuggestions</code>
62
98
  * property is set to <code>true</code>.
63
99
  * <br><br>
64
- * <b>Note:</b> The &lt;ui5-li> and &lt;ui5-li-custom> are recommended to be used as suggestion items.
100
+ * <b>Note:</b> The <code>&lt;ui5-suggestion-item&gt;</code> and <code>&lt;ui5-suggestion-group-item&gt;</code> are recommended to be used as suggestion items.
101
+ * <br><br>
102
+ * <b>Note:</b> Importing the Input Suggestions Support feature:
103
+ * <br>
104
+ * <code>import "@ui5/webcomponents/dist/features/InputSuggestions.js";</code>
65
105
  * <br>
66
- * In order to use them, you need to import either <code>"@ui5/webcomponents/dist/StandardListItem"</code>, or <code>"@ui5/webcomponents/dist/CustomListItem"</code> module.
106
+ * automatically imports the <code>&lt;ui5-suggestion-item></code> and <code>&lt;ui5-suggestion-group-item></code> for your convenience.
67
107
  *
68
- * @type {HTMLElement[]}
69
- * @slot
108
+ * @type {sap.ui.webcomponents.main.IInputSuggestionItem[]}
109
+ * @slot suggestionItems
70
110
  * @public
71
111
  */
72
112
  "default": {
@@ -83,13 +123,33 @@ const metadata = {
83
123
  formSupport: {
84
124
  type: HTMLElement,
85
125
  },
126
+
127
+ /**
128
+ * Defines the value state message that will be displayed as pop up under the component.
129
+ * <br><br>
130
+ *
131
+ * <b>Note:</b> If not specified, a default text (in the respective language) will be displayed.
132
+ * <br><br>
133
+ * <b>Note:</b> The <code>valueStateMessage</code> would be displayed,
134
+ * when the component is in <code>Information</code>, <code>Warning</code> or <code>Error</code> value state.
135
+ * <br><br>
136
+ * <b>Note:</b> If the component has <code>suggestionItems</code>,
137
+ * the <code>valueStateMessage</code> would be displayed as part of the same popover, if used on desktop, or dialog - on phone.
138
+ * @type {HTMLElement[]}
139
+ * @since 1.0.0-rc.6
140
+ * @slot
141
+ * @public
142
+ */
143
+ valueStateMessage: {
144
+ type: HTMLElement,
145
+ },
86
146
  },
87
147
  properties: /** @lends sap.ui.webcomponents.main.Input.prototype */ {
88
148
 
89
149
  /**
90
- * Defines whether the <code>ui5-input</code> is in disabled state.
150
+ * Defines whether the component is in disabled state.
91
151
  * <br><br>
92
- * <b>Note:</b> A disabled <code>ui5-input</code> is completely noninteractive.
152
+ * <b>Note:</b> A disabled component is completely noninteractive.
93
153
  *
94
154
  * @type {boolean}
95
155
  * @defaultvalue false
@@ -99,9 +159,24 @@ const metadata = {
99
159
  type: Boolean,
100
160
  },
101
161
 
162
+ /**
163
+ * Defines if characters within the suggestions are to be highlighted
164
+ * in case the input value matches parts of the suggestions text.
165
+ * <br><br>
166
+ * <b>Note:</b> takes effect when <code>showSuggestions</code> is set to <code>true</code>
167
+ *
168
+ * @type {boolean}
169
+ * @defaultvalue false
170
+ * @private
171
+ * @sicne 1.0.0-rc.8
172
+ */
173
+ highlight: {
174
+ type: Boolean,
175
+ },
176
+
102
177
  /**
103
178
  * Defines a short hint intended to aid the user with data entry when the
104
- * <code>ui5-input</code> has no value.
179
+ * component has no value.
105
180
  * @type {string}
106
181
  * @defaultvalue ""
107
182
  * @public
@@ -111,9 +186,9 @@ const metadata = {
111
186
  },
112
187
 
113
188
  /**
114
- * Defines whether the <code>ui5-input</code> is read-only.
189
+ * Defines whether the component is read-only.
115
190
  * <br><br>
116
- * <b>Note:</b> A read-only <code>ui5-input</code> is not editable,
191
+ * <b>Note:</b> A read-only component is not editable,
117
192
  * but still provides visual feedback upon user interaction.
118
193
  *
119
194
  * @type {boolean}
@@ -125,7 +200,7 @@ const metadata = {
125
200
  },
126
201
 
127
202
  /**
128
- * Defines whether the <code>ui5-input</code> is required.
203
+ * Defines whether the component is required.
129
204
  *
130
205
  * @type {boolean}
131
206
  * @defaultvalue false
@@ -137,7 +212,7 @@ const metadata = {
137
212
  },
138
213
 
139
214
  /**
140
- * Defines the HTML type of the <code>ui5-input</code>.
215
+ * Defines the HTML type of the component.
141
216
  * Available options are: <code>Text</code>, <code>Email</code>,
142
217
  * <code>Number</code>, <code>Password</code>, <code>Tel</code>, and <code>URL</code>.
143
218
  * <br><br>
@@ -149,7 +224,7 @@ const metadata = {
149
224
  * that use different soft keyboard layouts depending on the given input type.</li>
150
225
  * </ul>
151
226
  *
152
- * @type {string}
227
+ * @type {InputType}
153
228
  * @defaultvalue "Text"
154
229
  * @public
155
230
  */
@@ -159,7 +234,7 @@ const metadata = {
159
234
  },
160
235
 
161
236
  /**
162
- * Defines the value of the <code>ui5-input</code>.
237
+ * Defines the value of the component.
163
238
  * <br><br>
164
239
  * <b>Note:</b> The property is updated upon typing.
165
240
  *
@@ -172,10 +247,18 @@ const metadata = {
172
247
  },
173
248
 
174
249
  /**
175
- * Defines the value state of the <code>ui5-input</code>.
176
- * Available options are: <code>None</code>, <code>Success</code>, <code>Warning</code>, and <code>Error</code>.
250
+ * Defines the value state of the component.
251
+ * <br><br>
252
+ * Available options are:
253
+ * <ul>
254
+ * <li><code>None</code></li>
255
+ * <li><code>Error</code></li>
256
+ * <li><code>Warning</code></li>
257
+ * <li><code>Success</code></li>
258
+ * <li><code>Information</code></li>
259
+ * </ul>
177
260
  *
178
- * @type {string}
261
+ * @type {ValueState}
179
262
  * @defaultvalue "None"
180
263
  * @public
181
264
  */
@@ -185,13 +268,15 @@ const metadata = {
185
268
  },
186
269
 
187
270
  /**
188
- * Determines the name with which the <code>ui5-input</code> will be submitted in an HTML form.
271
+ * Determines the name with which the component will be submitted in an HTML form.
189
272
  *
273
+ * <br><br>
190
274
  * <b>Important:</b> For the <code>name</code> property to have effect, you must add the following import to your project:
191
275
  * <code>import "@ui5/webcomponents/dist/features/InputElementsFormSupport.js";</code>
192
276
  *
277
+ * <br><br>
193
278
  * <b>Note:</b> When set, a native <code>input</code> HTML element
194
- * will be created inside the <code>ui5-input</code> so that it can be submitted as
279
+ * will be created inside the component so that it can be submitted as
195
280
  * part of an HTML form. Do not use this property unless you need to submit a form.
196
281
  *
197
282
  * @type {string}
@@ -203,11 +288,11 @@ const metadata = {
203
288
  },
204
289
 
205
290
  /**
206
- * Defines whether the <code>ui5-input</code> should show suggestions, if such are present.
291
+ * Defines whether the component should show suggestions, if such are present.
207
292
  * <br><br>
208
- * <b>Note:</b>
209
- * Don`t forget to import the <code>InputSuggestions</code> module from <code>"@ui5/webcomponents/dist/features/InputSuggestions.js"</code> to enable this functionality.
210
- * @type {Boolean}
293
+ * <b>Note:</b> You need to import the <code>InputSuggestions</code> module
294
+ * from <code>"@ui5/webcomponents/dist/features/InputSuggestions.js"</code> to enable this functionality.
295
+ * @type {boolean}
211
296
  * @defaultvalue false
212
297
  * @public
213
298
  */
@@ -226,6 +311,54 @@ const metadata = {
226
311
  type: Integer,
227
312
  },
228
313
 
314
+ /**
315
+ * Defines the accessible aria name of the component.
316
+ *
317
+ * @type {string}
318
+ * @public
319
+ * @since 1.0.0-rc.15
320
+ */
321
+ accessibleName: {
322
+ type: String,
323
+ },
324
+
325
+ /**
326
+ * Receives id(or many ids) of the elements that label the input.
327
+ *
328
+ * @type {string}
329
+ * @defaultvalue ""
330
+ * @public
331
+ * @since 1.0.0-rc.15
332
+ */
333
+ accessibleNameRef: {
334
+ type: String,
335
+ defaultValue: "",
336
+ },
337
+
338
+ /**
339
+ * Defines whether the clear icon of the input will be shown.
340
+ *
341
+ * @type {boolean}
342
+ * @defaultvalue false
343
+ * @public
344
+ * @since 1.2.0
345
+ */
346
+ showClearIcon: {
347
+ type: Boolean,
348
+ },
349
+
350
+ /**
351
+ * Defines whether the clear icon is visible.
352
+ *
353
+ * @type {boolean}
354
+ * @defaultvalue false
355
+ * @private
356
+ * @since 1.2.0
357
+ */
358
+ effectiveShowClearIcon: {
359
+ type: Boolean,
360
+ },
361
+
229
362
  /**
230
363
  * @private
231
364
  */
@@ -233,6 +366,22 @@ const metadata = {
233
366
  type: Boolean,
234
367
  },
235
368
 
369
+ openOnMobile: {
370
+ type: Boolean,
371
+ },
372
+
373
+ open: {
374
+ type: Boolean,
375
+ },
376
+
377
+ /**
378
+ * Indicates whether the visual focus is on the value state header
379
+ * @private
380
+ */
381
+ _isValueStateFocused: {
382
+ type: Boolean,
383
+ },
384
+
236
385
  _input: {
237
386
  type: Object,
238
387
  },
@@ -241,9 +390,27 @@ const metadata = {
241
390
  type: Object,
242
391
  },
243
392
 
244
- _wrapperAccInfo: {
393
+ _nativeInputAttributes: {
245
394
  type: Object,
246
395
  },
396
+
397
+ _inputWidth: {
398
+ type: Integer,
399
+ },
400
+
401
+ _listWidth: {
402
+ type: Integer,
403
+ },
404
+
405
+ _isPopoverOpen: {
406
+ type: Boolean,
407
+ noAttribute: true,
408
+ },
409
+
410
+ _inputIconFocused: {
411
+ type: Boolean,
412
+ noAttribute: true,
413
+ },
247
414
  },
248
415
  events: /** @lends sap.ui.webcomponents.main.Input.prototype */ {
249
416
  /**
@@ -255,7 +422,7 @@ const metadata = {
255
422
  change: {},
256
423
 
257
424
  /**
258
- * Fired when the value of the <code>ui5-input</code> changes at each keystroke,
425
+ * Fired when the value of the component changes at each keystroke,
259
426
  * and when a suggestion item has been selected.
260
427
  *
261
428
  * @event
@@ -264,27 +431,48 @@ const metadata = {
264
431
  input: {},
265
432
 
266
433
  /**
267
- * Fired when user presses Enter key on the <code>ui5-input</code>.
268
- * <br><br>
269
- * <b>Note:</b> The event is fired independent of whether there was a change before or not.
270
- * If change was performed, the event is fired after the change event.
271
- * The event is also fired when an item of the select list is selected by pressing Enter.
434
+ * Fired when a suggestion item, that is displayed in the suggestion popup, is selected.
272
435
  *
273
- * @event
436
+ * @event sap.ui.webcomponents.main.Input#suggestion-item-select
437
+ * @param {HTMLElement} item The selected item.
274
438
  * @public
275
439
  */
276
- submit: {},
440
+ "suggestion-item-select": {
441
+ detail: {
442
+ item: { type: HTMLElement },
443
+ },
444
+ },
277
445
 
278
446
  /**
279
- * Fired when a suggestion item, that is displayed in the suggestion popup, is selected.
447
+ * Fired when the user navigates to a suggestion item via the ARROW keys,
448
+ * as a preview, before the final selection.
280
449
  *
281
- * @event
282
- * @param {HTMLElement} item The selected item
450
+ * @event sap.ui.webcomponents.main.Input#suggestion-item-preview
451
+ * @param {HTMLElement} item The previewed suggestion item.
452
+ * @param {HTMLElement} targetRef The DOM ref of the suggestion item.
283
453
  * @public
454
+ * @since 1.0.0-rc.8
284
455
  */
285
- suggestionItemSelect: {
456
+ "suggestion-item-preview": {
286
457
  detail: {
287
458
  item: { type: HTMLElement },
459
+ targetRef: { type: HTMLElement },
460
+ },
461
+ },
462
+
463
+ /**
464
+ * Fired when the user scrolls the suggestion popover.
465
+ *
466
+ * @event sap.ui.webcomponents.main.Input#suggestion-scroll
467
+ * @param {Integer} scrollTop The current scroll position.
468
+ * @param {HTMLElement} scrollContainer The scroll container.
469
+ * @protected
470
+ * @since 1.0.0-rc.8
471
+ */
472
+ "suggestion-scroll": {
473
+ detail: {
474
+ scrollTop: { type: Integer },
475
+ scrollContainer: { type: HTMLElement },
288
476
  },
289
477
  },
290
478
  },
@@ -300,7 +488,7 @@ const metadata = {
300
488
  * that are displayed in a popover right under the input.
301
489
  * <br><br>
302
490
  * The text field can be editable or read-only (<code>readonly</code> property),
303
- * and it can be enabled or disabled (<code>enabled</code> property).
491
+ * and it can be enabled or disabled (<code>disabled</code> property).
304
492
  * To visualize semantic states, such as "error" or "warning", the <code>valueState</code> property is provided.
305
493
  * When the user makes changes to the text, the change event is fired,
306
494
  * which enables you to react on any text change.
@@ -310,6 +498,21 @@ const metadata = {
310
498
  * "@ui5/webcomponents/dist/features/InputSuggestions.js"
311
499
  * to enable the suggestions functionality.
312
500
  *
501
+ * <h3>Keyboard Handling</h3>
502
+ * The <code>ui5-input</code> provides the following keyboard shortcuts:
503
+ * <br>
504
+ *
505
+ * <ul>
506
+ * <li>[ESC] - Closes the suggestion list, if open. If closed or not enabled, cancels changes and reverts to the value which the Input field had when it got the focus.</li>
507
+ * <li>[ENTER] or [RETURN] - If suggestion list is open takes over the current matching item and closes it. If value state or group header is focused, does nothing.</li>
508
+ * <li>[DOWN] - Focuses the next matching item in the suggestion list.</li>
509
+ * <li>[UP] - Focuses the previous matching item in the suggestion list.</li>
510
+ * <li>[HOME] - If focus is in the text input, moves caret before the first character. If focus is in the list, highlights the first item and updates the input accordingly.</li>
511
+ * <li>[END] - If focus is in the text input, moves caret after the last character. If focus is in the list, highlights the last item and updates the input accordingly.</li>
512
+ * <li>[PAGEUP] - If focus is in the list, moves highlight up by page size (10 items by default). If focus is in the input, does nothing.</li>
513
+ * <li>[PAGEDOWN] - If focus is in the list, moves highlight down by page size (10 items by default). If focus is in the input, does nothing.</li>
514
+ * </ul>
515
+ *
313
516
  * <h3>ES6 Module Import</h3>
314
517
  *
315
518
  * <code>import "@ui5/webcomponents/dist/Input.js";</code>
@@ -321,6 +524,8 @@ const metadata = {
321
524
  * @alias sap.ui.webcomponents.main.Input
322
525
  * @extends sap.ui.webcomponents.base.UI5Element
323
526
  * @tagname ui5-input
527
+ * @appenddocs SuggestionItem SuggestionGroupItem
528
+ * @implements sap.ui.webcomponents.main.IInput
324
529
  * @public
325
530
  */
326
531
  class Input extends UI5Element {
@@ -345,7 +550,7 @@ class Input extends UI5Element {
345
550
  }
346
551
 
347
552
  static get staticAreaStyles() {
348
- return ResponsivePopoverCommonCss;
553
+ return [ResponsivePopoverCommonCss, ValueStateMessageCss, SuggestionsCss];
349
554
  }
350
555
 
351
556
  constructor() {
@@ -353,22 +558,45 @@ class Input extends UI5Element {
353
558
  // Indicates if there is selected suggestionItem.
354
559
  this.hasSuggestionItemSelected = false;
355
560
 
356
- // Represents the value before user moves selection between the suggestion items.
357
- // Used to register and fire "input" event upon [SPACE] or [ENTER].
358
- // Note: the property "value" is updated upon selection move and can`t be used.
561
+ // Represents the value before user moves selection from suggestion item to another
562
+ // and its value is updated after each move.
563
+ // Note: Used to register and fire "input" event upon [SPACE] or [ENTER].
564
+ // Note: The property "value" is updated upon selection move and can`t be used.
359
565
  this.valueBeforeItemSelection = "";
360
566
 
567
+ // Represents the value before user moves selection between the suggestion items
568
+ // and its value remains the same when the user navigates up or down the list.
569
+ // Note: Used to cancel selection upon [ESC].
570
+ this.valueBeforeItemPreview = "";
571
+
572
+ // Indicates if the user selection has been canceled with [ESC].
573
+ this.suggestionSelectionCanceled = false;
574
+
575
+ // Indicates if the change event has already been fired
576
+ this._changeFiredValue = null;
577
+
361
578
  // tracks the value between focus in and focus out to detect that change event should be fired.
362
579
  this.previousValue = undefined;
363
580
 
364
581
  // Indicates, if the component is rendering for first time.
365
582
  this.firstRendering = true;
366
583
 
584
+ // The value that should be highlited.
585
+ this.highlightValue = "";
586
+
587
+ // The last value confirmed by the user with "ENTER"
588
+ this.lastConfirmedValue = "";
589
+
590
+ // Indicates, if the user pressed the BACKSPACE key.
591
+ this._backspaceKeyDown = false;
592
+
593
+ // Indicates, if the user is typing. Gets reset once popup is closed
594
+ this.isTyping = false;
595
+
367
596
  // all sementic events
368
- this.EVENT_SUBMIT = "submit";
369
597
  this.EVENT_CHANGE = "change";
370
598
  this.EVENT_INPUT = "input";
371
- this.EVENT_SUGGESTION_ITEM_SELECT = "suggestionItemSelect";
599
+ this.EVENT_SUGGESTION_ITEM_SELECT = "suggestion-item-select";
372
600
 
373
601
  // all user interactions
374
602
  this.ACTION_ENTER = "enter";
@@ -377,16 +605,36 @@ class Input extends UI5Element {
377
605
  // Suggestions array initialization
378
606
  this.suggestionsTexts = [];
379
607
 
380
- this.i18nBundle = getI18nBundle("@ui5/webcomponents");
608
+ this._handleResizeBound = this._handleResize.bind(this);
609
+ }
610
+
611
+ onEnterDOM() {
612
+ ResizeHandler.register(this, this._handleResizeBound);
613
+ }
614
+
615
+ onExitDOM() {
616
+ ResizeHandler.deregister(this, this._handleResizeBound);
381
617
  }
382
618
 
383
619
  onBeforeRendering() {
384
620
  if (this.showSuggestions) {
385
621
  this.enableSuggestions();
386
- this.suggestionsTexts = this.Suggestions.defaultSlotProperties();
622
+ this.suggestionsTexts = this.Suggestions.defaultSlotProperties(this.highlightValue);
387
623
  }
388
624
 
625
+ this.effectiveShowClearIcon = (this.showClearIcon && !!this.value && !this.readonly && !this.disabled);
626
+
389
627
  const FormSupport = getFeature("FormSupport");
628
+ const hasItems = this.suggestionItems.length;
629
+ const hasValue = !!this.value;
630
+ const isFocused = this === document.activeElement;
631
+
632
+ if (this._isPhone) {
633
+ this.open = this.openOnMobile;
634
+ } else {
635
+ this.open = hasValue && hasItems && isFocused && this.isTyping;
636
+ }
637
+
390
638
  if (FormSupport) {
391
639
  FormSupport.syncNativeHiddenInput(this);
392
640
  } else if (this.name) {
@@ -394,20 +642,20 @@ class Input extends UI5Element {
394
642
  }
395
643
  }
396
644
 
397
- onAfterRendering() {
398
- if (!this.firstRendering && !isPhone() && this.Suggestions) {
399
- const shouldOpenSuggestions = this.shouldOpenSuggestions();
400
-
401
- this.updateStaticAreaItemContentDensity();
402
- this.Suggestions.toggle(shouldOpenSuggestions);
645
+ async onAfterRendering() {
646
+ if (this.Suggestions) {
647
+ this.Suggestions.toggle(this.open, {
648
+ preventFocusRestore: true,
649
+ });
403
650
 
404
- if (!isPhone() && shouldOpenSuggestions) {
405
- // Set initial focus to the native input
406
- this.getInputDOMRef().focus();
407
- }
651
+ this._listWidth = await this.Suggestions._getListWidth();
408
652
  }
409
653
 
410
- this.firstRendering = false;
654
+ if (this.shouldDisplayOnlyValueStateMessage) {
655
+ this.openPopover();
656
+ } else {
657
+ this.closePopover();
658
+ }
411
659
  }
412
660
 
413
661
  _onkeydown(event) {
@@ -423,26 +671,65 @@ class Input extends UI5Element {
423
671
  return this._handleSpace(event);
424
672
  }
425
673
 
674
+ if (isTabNext(event)) {
675
+ return this._handleTab(event);
676
+ }
677
+
426
678
  if (isEnter(event)) {
427
679
  return this._handleEnter(event);
428
680
  }
429
681
 
682
+ if (isPageUp(event)) {
683
+ return this._handlePageUp(event);
684
+ }
685
+
686
+ if (isPageDown(event)) {
687
+ return this._handlePageDown(event);
688
+ }
689
+
690
+ if (isHome(event)) {
691
+ return this._handleHome(event);
692
+ }
693
+
694
+ if (isEnd(event)) {
695
+ return this._handleEnd(event);
696
+ }
697
+
698
+ if (isEscape(event)) {
699
+ return this._handleEscape(event);
700
+ }
701
+
702
+ if (isBackSpace(event)) {
703
+ this._backspaceKeyDown = true;
704
+ this._selectedText = window.getSelection().toString();
705
+ }
706
+
707
+ if (this.showSuggestions) {
708
+ this._clearPopoverFocusAndSelection();
709
+ }
710
+
430
711
  this._keyDown = true;
431
712
  }
432
713
 
433
714
  _onkeyup(event) {
715
+ // The native Delete event does not update the value property "on time". So, the (native) change event is always fired with the old value
716
+ if (isDelete(event)) {
717
+ this.value = event.target.value;
718
+ }
719
+
434
720
  this._keyDown = false;
721
+ this._backspaceKeyDown = false;
435
722
  }
436
723
 
437
724
  /* Event handling */
438
725
  _handleUp(event) {
439
- if (this.Suggestions) {
726
+ if (this.Suggestions && this.Suggestions.isOpened()) {
440
727
  this.Suggestions.onUp(event);
441
728
  }
442
729
  }
443
730
 
444
731
  _handleDown(event) {
445
- if (this.Suggestions) {
732
+ if (this.Suggestions && this.Suggestions.isOpened()) {
446
733
  this.Suggestions.onDown(event);
447
734
  }
448
735
  }
@@ -453,42 +740,218 @@ class Input extends UI5Element {
453
740
  }
454
741
  }
455
742
 
743
+ _handleTab(event) {
744
+ if (this.Suggestions && (this.previousValue !== this.value)) {
745
+ this.Suggestions.onTab(event);
746
+ }
747
+ }
748
+
456
749
  _handleEnter(event) {
457
750
  const itemPressed = !!(this.Suggestions && this.Suggestions.onEnter(event));
751
+
458
752
  if (!itemPressed) {
459
753
  this.fireEventByAction(this.ACTION_ENTER);
754
+ this.lastConfirmedValue = this.value;
755
+ return;
756
+ }
757
+
758
+ this.focused = true;
759
+ }
760
+
761
+ _handlePageUp(event) {
762
+ if (this._isSuggestionsFocused) {
763
+ this.Suggestions.onPageUp(event);
764
+ } else {
765
+ event.preventDefault();
460
766
  }
461
767
  }
462
768
 
463
- _onfocusin(event) {
769
+ _handlePageDown(event) {
770
+ if (this._isSuggestionsFocused) {
771
+ this.Suggestions.onPageDown(event);
772
+ } else {
773
+ event.preventDefault();
774
+ }
775
+ }
776
+
777
+ _handleHome(event) {
778
+ if (this._isSuggestionsFocused) {
779
+ this.Suggestions.onHome(event);
780
+ }
781
+ }
782
+
783
+ _handleEnd(event) {
784
+ if (this._isSuggestionsFocused) {
785
+ this.Suggestions.onEnd(event);
786
+ }
787
+ }
788
+
789
+ _handleEscape() {
790
+ const hasSuggestions = this.showSuggestions && !!this.Suggestions;
791
+ const isOpen = hasSuggestions && this.open;
792
+
793
+ if (!isOpen) {
794
+ this.value = this.lastConfirmedValue ? this.lastConfirmedValue : this.previousValue;
795
+ return;
796
+ }
797
+
798
+ if (hasSuggestions && isOpen && this.Suggestions._isItemOnTarget()) {
799
+ // Restore the value.
800
+ this.value = this.valueBeforeItemPreview;
801
+
802
+ // Mark that the selection has been canceled, so the popover can close
803
+ // and not reopen, due to receiving focus.
804
+ this.suggestionSelectionCanceled = true;
805
+ this.focused = true;
806
+ }
807
+
808
+ if (this._isValueStateFocused) {
809
+ this._isValueStateFocused = false;
810
+ this.focused = true;
811
+ }
812
+ }
813
+
814
+ async _onfocusin(event) {
815
+ await this.getInputDOMRef();
816
+
464
817
  this.focused = true; // invalidating property
465
818
  this.previousValue = this.value;
819
+ this.valueBeforeItemPreview = this.value;
820
+
821
+ this._inputIconFocused = event.target && event.target === this.querySelector("[ui5-icon]");
466
822
  }
467
823
 
468
824
  _onfocusout(event) {
469
- // if focusout is triggered by pressing on suggestion item skip invalidation, because re-rendering
825
+ const focusedOutToSuggestions = this.Suggestions && event.relatedTarget && event.relatedTarget.shadowRoot && event.relatedTarget.shadowRoot.contains(this.Suggestions.responsivePopover);
826
+ const focusedOutToValueStateMessage = event.relatedTarget && event.relatedTarget.shadowRoot && event.relatedTarget.shadowRoot.querySelector(".ui5-valuestatemessage-root");
827
+
828
+ this._preventNextChange = this.effectiveShowClearIcon && this.shadowRoot.contains(event.relatedTarget);
829
+
830
+ // if focusout is triggered by pressing on suggestion item or value state message popover, skip invalidation, because re-rendering
470
831
  // will happen before "itemPress" event, which will make item "active" state not visualized
471
- if (this.Suggestions && event.relatedTarget && event.relatedTarget.shadowRoot.contains(this.Suggestions._respPopover)) {
832
+ if (focusedOutToSuggestions || focusedOutToValueStateMessage) {
833
+ event.stopImmediatePropagation();
834
+ return;
835
+ }
836
+
837
+ const toBeFocused = event.relatedTarget;
838
+
839
+ if (toBeFocused && toBeFocused.classList.contains(this._id)) {
472
840
  return;
473
841
  }
474
842
 
843
+ this.open = false;
844
+ this._clearPopoverFocusAndSelection();
845
+
475
846
  this.previousValue = "";
847
+ this.lastConfirmedValue = "";
476
848
  this.focused = false; // invalidating property
849
+ this.isTyping = false;
850
+ }
851
+
852
+ _clearPopoverFocusAndSelection() {
853
+ if (!this.showSuggestions || !this.Suggestions) {
854
+ return;
855
+ }
856
+
857
+ this._isValueStateFocused = false;
858
+ this.hasSuggestionItemSelected = false;
859
+
860
+ this.Suggestions._deselectItems();
861
+ this.Suggestions._clearItemFocus();
477
862
  }
478
863
 
479
864
  _click(event) {
480
865
  if (isPhone() && !this.readonly && this.Suggestions) {
481
- this.updateStaticAreaItemContentDensity();
482
- this.Suggestions.open(this);
866
+ this.blur();
867
+ this.openOnMobile = true;
868
+ }
869
+ }
870
+
871
+ _handleNativeInputChange() {
872
+ // The native change sometimes fires too early and getting input's value in the listener would return
873
+ // the previous value instead of the most recent one. This would make things consistent.
874
+ clearTimeout(this._nativeChangeDebounce);
875
+ this._nativeChangeDebounce = setTimeout(() => this._handleChange(), 100);
876
+ }
877
+
878
+ _handleChange() {
879
+ if (this._preventNextChange) {
880
+ this._preventNextChange = false;
881
+ return;
882
+ }
883
+
884
+ if (this._changeFiredValue !== this.value) {
885
+ this._changeFiredValue = this.value;
886
+ this.fireEvent(this.EVENT_CHANGE);
483
887
  }
484
888
  }
485
889
 
486
- _handleChange(event) {
487
- this.fireEvent(this.EVENT_CHANGE);
890
+ _clear() {
891
+ this.value = "";
892
+ this.fireEvent(this.EVENT_INPUT);
893
+ this._handleChange();
894
+
895
+ if (!this._isPhone) {
896
+ this.focus();
897
+ }
898
+ }
899
+
900
+ _scroll(event) {
901
+ const detail = event.detail;
902
+ this.fireEvent("suggestion-scroll", {
903
+ scrollTop: detail.scrollTop,
904
+ scrollContainer: detail.targetRef,
905
+ });
488
906
  }
489
907
 
490
908
  _handleInput(event) {
491
- if (event.target === this.getInputDOMRef()) {
909
+ const inputDomRef = this.getInputDOMRefSync();
910
+ const emptyValueFiredOnNumberInput = this.value && this.isTypeNumber && !inputDomRef.value;
911
+
912
+ this.suggestionSelectionCanceled = false;
913
+
914
+ if (emptyValueFiredOnNumberInput && !this._backspaceKeyDown) {
915
+ // For input with type="Number", if the delimiter is entered second time,
916
+ // the inner input is firing event with empty value
917
+ return;
918
+ }
919
+
920
+ if (emptyValueFiredOnNumberInput && this._backspaceKeyDown) {
921
+ // Issue: when the user removes the character(s) after the delimeter of numeric Input,
922
+ // the native input is firing event with an empty value and we have to manually handle this case,
923
+ // otherwise the entire input will be cleared as we sync the "value".
924
+
925
+ // There are tree scenarios:
926
+ // Example: type "123.4" and press BACKSPACE - the native input is firing event with empty value.
927
+ // Example: type "123.456", select/mark "456" and press BACKSPACE - the native input is firing event with empty value.
928
+ // Example: type "123.456", select/mark "123.456" and press BACKSPACE - the native input is firing event with empty value,
929
+ // but this time that's really the case.
930
+
931
+ // Perform manual handling in case of floating number
932
+ // and if the user did not select the entire input value
933
+ if (this._selectedText.indexOf(",") > -1) {
934
+ this._selectedText = this._selectedText.replace(",", ".");
935
+ }
936
+
937
+ if (rgxFloat.test(this.value) && this._selectedText !== this.value) {
938
+ const newValue = this.removeFractionalPart(this.value);
939
+
940
+ // update state
941
+ this.value = newValue;
942
+ this.highlightValue = newValue;
943
+ this.valueBeforeItemPreview = newValue;
944
+
945
+ // fire events
946
+ this.fireEvent(this.EVENT_INPUT);
947
+ this.fireEvent("value-changed");
948
+ return;
949
+ }
950
+ }
951
+
952
+ if (event.target === inputDomRef) {
953
+ this.focused = true;
954
+
492
955
  // stop the native event, as the semantic "input" would be fired.
493
956
  event.stopImmediatePropagation();
494
957
  }
@@ -497,86 +960,174 @@ class Input extends UI5Element {
497
960
  - value of the host and the internal input should be differnt in case of actual input
498
961
  - input is called when a key is pressed => keyup should not be called yet
499
962
  */
500
- const skipFiring = (this.getInputDOMRef().value === this.value) && isIE() && !this._keyDown && !!this.placeholder;
963
+ const skipFiring = (inputDomRef.value === this.value) && isIE() && !this._keyDown && !!this.placeholder;
501
964
 
502
965
  !skipFiring && this.fireEventByAction(this.ACTION_USER_INPUT);
503
966
 
504
967
  this.hasSuggestionItemSelected = false;
968
+ this._isValueStateFocused = false;
505
969
 
506
970
  if (this.Suggestions) {
507
971
  this.Suggestions.updateSelectedItemPosition(null);
508
972
  }
973
+
974
+ this.isTyping = true;
509
975
  }
510
976
 
511
- _closeRespPopover() {
512
- this.Suggestions.close();
977
+ _handleResize() {
978
+ this._inputWidth = this.offsetWidth;
513
979
  }
514
980
 
515
- _afterOpenPopover() {
981
+ _closeRespPopover(preventFocusRestore) {
982
+ this.Suggestions.close(preventFocusRestore);
983
+ }
984
+
985
+ async _afterOpenPopover() {
516
986
  // Set initial focus to the native input
517
987
  if (isPhone()) {
518
- this.getInputDOMRef().focus();
988
+ (await this.getInputDOMRef()).focus();
519
989
  }
520
990
  }
521
991
 
522
992
  _afterClosePopover() {
993
+ this.announceSelectedItem();
994
+
523
995
  // close device's keyboard and prevent further typing
524
996
  if (isPhone()) {
525
997
  this.blur();
998
+ this.focused = false;
999
+ }
1000
+
1001
+ this.isTyping = false;
1002
+ this.openOnMobile = false;
1003
+ this.open = false;
1004
+ }
1005
+
1006
+ /**
1007
+ * Checks if the value state popover is open.
1008
+ * @returns {boolean} true if the value state popover is open, false otherwise
1009
+ */
1010
+ isValueStateOpened() {
1011
+ return !!this._isPopoverOpen;
1012
+ }
1013
+
1014
+ async openPopover() {
1015
+ const popover = await this._getPopover();
1016
+
1017
+ if (popover) {
1018
+ this._isPopoverOpen = true;
1019
+ popover.showAt(this);
526
1020
  }
527
1021
  }
528
1022
 
1023
+ async closePopover() {
1024
+ const popover = await this._getPopover();
1025
+
1026
+ popover && popover.close();
1027
+ }
1028
+
1029
+ async _getPopover() {
1030
+ const staticAreaItem = await this.getStaticAreaItemDomRef();
1031
+ return staticAreaItem && staticAreaItem.querySelector("[ui5-popover]");
1032
+ }
1033
+
529
1034
  enableSuggestions() {
530
1035
  if (this.Suggestions) {
531
1036
  return;
532
1037
  }
533
1038
 
534
1039
  const Suggestions = getFeature("InputSuggestions");
1040
+
535
1041
  if (Suggestions) {
536
- this.Suggestions = new Suggestions(this, "suggestionItems");
1042
+ this.Suggestions = new Suggestions(this, "suggestionItems", true);
537
1043
  } else {
538
1044
  throw new Error(`You have to import "@ui5/webcomponents/dist/features/InputSuggestions.js" module to use ui5-input suggestions`);
539
1045
  }
540
1046
  }
541
1047
 
542
- shouldOpenSuggestions() {
543
- return !!(this.suggestionItems.length
544
- && this.focused
545
- && this.showSuggestions
546
- && !this.hasSuggestionItemSelected);
547
- }
548
-
549
1048
  selectSuggestion(item, keyboardUsed) {
550
- const itemText = item.textContent;
1049
+ if (item.group) {
1050
+ return;
1051
+ }
1052
+
1053
+ const itemText = item.text || item.textContent; // keep textContent for compatibility
551
1054
  const fireInput = keyboardUsed
552
1055
  ? this.valueBeforeItemSelection !== itemText : this.value !== itemText;
553
1056
 
554
1057
  this.hasSuggestionItemSelected = true;
555
- this.fireEvent(this.EVENT_SUGGESTION_ITEM_SELECT, { item });
556
1058
 
557
1059
  if (fireInput) {
558
1060
  this.value = itemText;
559
1061
  this.valueBeforeItemSelection = itemText;
1062
+ this.lastConfirmedValue = itemText;
560
1063
  this.fireEvent(this.EVENT_INPUT);
561
- this.fireEvent(this.EVENT_CHANGE);
1064
+ this._handleChange();
562
1065
  }
1066
+
1067
+ this.valueBeforeItemPreview = "";
1068
+ this.suggestionSelectionCanceled = false;
1069
+
1070
+ this.fireEvent(this.EVENT_SUGGESTION_ITEM_SELECT, { item });
1071
+
1072
+ this.isTyping = false;
1073
+ this.openOnMobile = false;
563
1074
  }
564
1075
 
565
1076
  previewSuggestion(item) {
566
1077
  this.valueBeforeItemSelection = this.value;
567
- this.value = item.textContent;
1078
+ this.updateValueOnPreview(item);
1079
+ this.announceSelectedItem();
1080
+ this._previewItem = item;
1081
+ }
1082
+
1083
+ /**
1084
+ * Updates the input value on item preview.
1085
+ * @param {Object} item The item that is on preview
1086
+ */
1087
+ updateValueOnPreview(item) {
1088
+ const noPreview = item.type === "Inactive" || item.group;
1089
+ const itemValue = noPreview ? this.valueBeforeItemPreview : (item.effectiveTitle || item.textContent);
1090
+ this.value = itemValue;
1091
+ }
1092
+
1093
+ /**
1094
+ * The suggestion item on preview.
1095
+ * @type { sap.ui.webcomponents.main.IInputSuggestionItem }
1096
+ * @readonly
1097
+ * @public
1098
+ */
1099
+ get previewItem() {
1100
+ if (!this._previewItem) {
1101
+ return null;
1102
+ }
1103
+
1104
+ return this.getSuggestionByListItem(this._previewItem);
568
1105
  }
569
1106
 
570
- fireEventByAction(action) {
1107
+ async fireEventByAction(action) {
1108
+ await this.getInputDOMRef();
1109
+
571
1110
  if (this.disabled || this.readonly) {
572
1111
  return;
573
1112
  }
574
1113
 
575
- const inputValue = this.getInputValue();
576
- const isSubmit = action === this.ACTION_ENTER;
1114
+ const inputValue = await this.getInputValue();
577
1115
  const isUserInput = action === this.ACTION_USER_INPUT;
578
1116
 
1117
+ const input = await this.getInputDOMRef();
1118
+ const cursorPosition = input.selectionStart;
1119
+
579
1120
  this.value = inputValue;
1121
+ this.highlightValue = inputValue;
1122
+ this.valueBeforeItemPreview = inputValue;
1123
+
1124
+ if (isSafari()) {
1125
+ // When setting the value by hand, Safari moves the cursor when typing in the middle of the text (See #1761)
1126
+ setTimeout(() => {
1127
+ input.selectionStart = cursorPosition;
1128
+ input.selectionEnd = cursorPosition;
1129
+ }, 0);
1130
+ }
580
1131
 
581
1132
  if (isUserInput) { // input
582
1133
  this.fireEvent(this.EVENT_INPUT);
@@ -585,44 +1136,74 @@ class Input extends UI5Element {
585
1136
  return;
586
1137
  }
587
1138
 
588
- if (isSubmit) { // submit
589
- this.fireEvent(this.EVENT_SUBMIT);
590
- }
591
-
592
1139
  // In IE, pressing the ENTER does not fire change
593
1140
  const valueChanged = (this.previousValue !== undefined) && (this.previousValue !== this.value);
594
- if (isIE() && isSubmit && valueChanged) {
595
- this.fireEvent(this.EVENT_CHANGE);
1141
+ if (isIE() && action === this.ACTION_ENTER && valueChanged) {
1142
+ this._handleChange();
596
1143
  }
597
1144
  }
598
1145
 
1146
+ async getInputValue() {
1147
+ const domRef = this.getDomRef();
599
1148
 
600
- getInputValue() {
601
- const inputDOM = this.getDomRef();
602
- if (inputDOM) {
603
- return this.getInputDOMRef().value;
1149
+ if (domRef) {
1150
+ return (await this.getInputDOMRef()).value;
604
1151
  }
605
1152
  return "";
606
1153
  }
607
1154
 
608
- getInputDOMRef() {
609
- let inputDomRef;
610
-
611
- if (isPhone()) {
612
- inputDomRef = this.getStaticAreaItemDomRef().querySelector(".ui5-input-inner-phone");
1155
+ async getInputDOMRef() {
1156
+ if (isPhone() && this.Suggestions) {
1157
+ await this.Suggestions._getSuggestionPopover();
1158
+ return this.Suggestions && this.Suggestions.responsivePopover.querySelector(".ui5-input-inner-phone");
613
1159
  }
614
1160
 
615
- if (!inputDomRef) {
616
- inputDomRef = this.getDomRef().querySelector(`#${this.getInputId()}`);
1161
+ return this.nativeInput;
1162
+ }
1163
+
1164
+ getInputDOMRefSync() {
1165
+ if (isPhone() && this.Suggestions) {
1166
+ return this.Suggestions && this.Suggestions.responsivePopover.querySelector(".ui5-input-inner-phone");
617
1167
  }
618
1168
 
619
- return inputDomRef;
1169
+ return this.nativeInput;
1170
+ }
1171
+
1172
+ /**
1173
+ * Returns a reference to the native input element
1174
+ * @protected
1175
+ */
1176
+ get nativeInput() {
1177
+ return this.getDomRef() && this.getDomRef().querySelector(`input`);
1178
+ }
1179
+
1180
+ get nativeInputWidth() {
1181
+ return this.nativeInput && this.nativeInput.offsetWidth;
620
1182
  }
621
1183
 
622
1184
  getLabelableElementId() {
623
1185
  return this.getInputId();
624
1186
  }
625
1187
 
1188
+ getSuggestionByListItem(item) {
1189
+ const key = parseInt(item.getAttribute("data-ui5-key"));
1190
+ return this.suggestionItems[key];
1191
+ }
1192
+
1193
+ /**
1194
+ * Returns if the suggestions popover is scrollable.
1195
+ * The method returns <code>Promise</code> that resolves to true,
1196
+ * if the popup is scrollable and false otherwise.
1197
+ * @returns {Promise}
1198
+ */
1199
+ isSuggestionsScrollable() {
1200
+ if (!this.Suggestions) {
1201
+ return Promise.resolve(false);
1202
+ }
1203
+
1204
+ return this.Suggestions._isScrollable();
1205
+ }
1206
+
626
1207
  getInputId() {
627
1208
  return `${this._id}-inner`;
628
1209
  }
@@ -630,12 +1211,38 @@ class Input extends UI5Element {
630
1211
  /* Suggestions interface */
631
1212
  onItemFocused() {}
632
1213
 
1214
+ onItemMouseOver(event) {
1215
+ const item = event.target;
1216
+ const suggestion = this.getSuggestionByListItem(item);
1217
+ suggestion && suggestion.fireEvent("mouseover", {
1218
+ item: suggestion,
1219
+ targetRef: item,
1220
+ });
1221
+ }
1222
+
1223
+ onItemMouseOut(event) {
1224
+ const item = event.target;
1225
+ const suggestion = this.getSuggestionByListItem(item);
1226
+ suggestion && suggestion.fireEvent("mouseout", {
1227
+ item: suggestion,
1228
+ targetRef: item,
1229
+ });
1230
+ }
1231
+
1232
+ onItemMouseDown(event) {
1233
+ event.preventDefault();
1234
+ }
1235
+
633
1236
  onItemSelected(item, keyboardUsed) {
634
1237
  this.selectSuggestion(item, keyboardUsed);
635
1238
  }
636
1239
 
637
1240
  onItemPreviewed(item) {
638
1241
  this.previewSuggestion(item);
1242
+ this.fireEvent("suggestion-item-preview", {
1243
+ item: this.getSuggestionByListItem(item),
1244
+ targetRef: item,
1245
+ });
639
1246
  }
640
1247
 
641
1248
  onOpen() {}
@@ -643,27 +1250,40 @@ class Input extends UI5Element {
643
1250
  onClose() {}
644
1251
 
645
1252
  valueStateTextMappings() {
646
- const i18nBundle = this.i18nBundle;
647
-
648
1253
  return {
649
- "Success": i18nBundle.getText(VALUE_STATE_SUCCESS),
650
- "Error": i18nBundle.getText(VALUE_STATE_ERROR),
651
- "Warning": i18nBundle.getText(VALUE_STATE_WARNING),
1254
+ "Success": Input.i18nBundle.getText(VALUE_STATE_SUCCESS),
1255
+ "Information": Input.i18nBundle.getText(VALUE_STATE_INFORMATION),
1256
+ "Error": Input.i18nBundle.getText(VALUE_STATE_ERROR),
1257
+ "Warning": Input.i18nBundle.getText(VALUE_STATE_WARNING),
652
1258
  };
653
1259
  }
654
1260
 
1261
+ announceSelectedItem() {
1262
+ const invisibleText = this.shadowRoot.querySelector(`#${this._id}-selectionText`);
1263
+
1264
+ if (this.Suggestions && this.Suggestions._isItemOnTarget()) {
1265
+ invisibleText.textContent = this.itemSelectionAnnounce;
1266
+ } else {
1267
+ invisibleText.textContent = "";
1268
+ }
1269
+ }
1270
+
655
1271
  get _readonly() {
656
1272
  return this.readonly && !this.disabled;
657
1273
  }
658
1274
 
659
1275
  get _headerTitleText() {
660
- return this.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);
1276
+ return Input.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);
661
1277
  }
662
1278
 
663
1279
  get inputType() {
664
1280
  return this.type.toLowerCase();
665
1281
  }
666
1282
 
1283
+ get isTypeNumber() {
1284
+ return this.type === InputType.Number;
1285
+ }
1286
+
667
1287
  get suggestionsTextId() {
668
1288
  return this.showSuggestions ? `${this._id}-suggestionsText` : "";
669
1289
  }
@@ -675,36 +1295,244 @@ class Input extends UI5Element {
675
1295
  get accInfo() {
676
1296
  const ariaHasPopupDefault = this.showSuggestions ? "true" : undefined;
677
1297
  const ariaAutoCompleteDefault = this.showSuggestions ? "list" : undefined;
1298
+ const ariaDescribedBy = this._inputAccInfo.ariaDescribedBy ? `${this.suggestionsTextId} ${this.valueStateTextId} ${this._inputAccInfo.ariaDescribedBy}`.trim() : `${this.suggestionsTextId} ${this.valueStateTextId}`.trim();
1299
+
678
1300
  return {
679
- "wrapper": {
680
- },
681
1301
  "input": {
682
- "ariaDescribedBy": this._inputAccInfo.ariaDescribedBy ? `${this.suggestionsTextId} ${this.valueStateTextId} ${this._inputAccInfo.ariaDescribedBy}`.trim() : `${this.suggestionsTextId} ${this.valueStateTextId}`.trim(),
1302
+ "ariaRoledescription": this._inputAccInfo && (this._inputAccInfo.ariaRoledescription || undefined),
1303
+ "ariaDescribedBy": ariaDescribedBy || undefined,
683
1304
  "ariaInvalid": this.valueState === ValueState.Error ? "true" : undefined,
684
1305
  "ariaHasPopup": this._inputAccInfo.ariaHasPopup ? this._inputAccInfo.ariaHasPopup : ariaHasPopupDefault,
685
1306
  "ariaAutoComplete": this._inputAccInfo.ariaAutoComplete ? this._inputAccInfo.ariaAutoComplete : ariaAutoCompleteDefault,
686
1307
  "role": this._inputAccInfo && this._inputAccInfo.role,
687
- "ariaOwns": this._inputAccInfo && this._inputAccInfo.ariaOwns,
1308
+ "ariaControls": this._inputAccInfo && this._inputAccInfo.ariaControls,
688
1309
  "ariaExpanded": this._inputAccInfo && this._inputAccInfo.ariaExpanded,
689
1310
  "ariaDescription": this._inputAccInfo && this._inputAccInfo.ariaDescription,
1311
+ "ariaLabel": (this._inputAccInfo && this._inputAccInfo.ariaLabel) || getEffectiveAriaLabelText(this),
1312
+ },
1313
+ };
1314
+ }
1315
+
1316
+ get nativeInputAttributes() {
1317
+ return {
1318
+ "min": this.isTypeNumber ? this._nativeInputAttributes.min : undefined,
1319
+ "max": this.isTypeNumber ? this._nativeInputAttributes.max : undefined,
1320
+ "step": this.isTypeNumber ? (this._nativeInputAttributes.step || "any") : undefined,
1321
+ };
1322
+ }
1323
+
1324
+ get ariaValueStateHiddenText() {
1325
+ if (!this.hasValueStateMessage) {
1326
+ return;
1327
+ }
1328
+
1329
+ if (this.shouldDisplayDefaultValueStateMessage) {
1330
+ return this.valueStateText;
1331
+ }
1332
+
1333
+ return this.valueStateMessageText.map(el => el.textContent).join(" ");
1334
+ }
1335
+
1336
+ get itemSelectionAnnounce() {
1337
+ return this.Suggestions ? this.Suggestions.itemSelectionAnnounce : undefined;
1338
+ }
1339
+
1340
+ get classes() {
1341
+ return {
1342
+ popover: {
1343
+ "ui5-suggestions-popover": !this.isPhone && this.showSuggestions,
1344
+ "ui5-suggestions-popover-with-value-state-header": !this.isPhone && this.showSuggestions && this.hasValueStateMessage,
1345
+ },
1346
+ popoverValueState: {
1347
+ "ui5-valuestatemessage-root": true,
1348
+ "ui5-valuestatemessage-header": true,
1349
+ "ui5-valuestatemessage--success": this.valueState === ValueState.Success,
1350
+ "ui5-valuestatemessage--error": this.valueState === ValueState.Error,
1351
+ "ui5-valuestatemessage--warning": this.valueState === ValueState.Warning,
1352
+ "ui5-valuestatemessage--information": this.valueState === ValueState.Information,
1353
+ },
1354
+ };
1355
+ }
1356
+
1357
+ get styles() {
1358
+ const remSizeIxPx = parseInt(getComputedStyle(document.documentElement).fontSize);
1359
+
1360
+ const stylesObject = {
1361
+ popoverHeader: {
1362
+ "max-width": `${this._inputWidth}px`,
690
1363
  },
1364
+ suggestionPopoverHeader: {
1365
+ "display": this._listWidth === 0 ? "none" : "inline-block",
1366
+ "width": `${this._listWidth}px`,
1367
+ },
1368
+ suggestionsPopover: {
1369
+ "min-width": `${this._inputWidth}px`,
1370
+ "max-width": (this._inputWidth / remSizeIxPx) > 40 ? `${this._inputWidth}px` : "40rem",
1371
+ },
1372
+ innerInput: {},
691
1373
  };
1374
+
1375
+ if (this.nativeInputWidth < 48) {
1376
+ stylesObject.innerInput.padding = "0";
1377
+ }
1378
+
1379
+ return stylesObject;
1380
+ }
1381
+
1382
+ get suggestionSeparators() {
1383
+ return "None";
1384
+ }
1385
+
1386
+ get valueStateMessageText() {
1387
+ return this.getSlottedNodes("valueStateMessage").map(el => el.cloneNode(true));
1388
+ }
1389
+
1390
+ get shouldDisplayOnlyValueStateMessage() {
1391
+ return this.hasValueStateMessage && !this.readonly && !this.open && this.focused;
1392
+ }
1393
+
1394
+ get shouldDisplayDefaultValueStateMessage() {
1395
+ return !this.valueStateMessage.length && this.hasValueStateMessage;
692
1396
  }
693
1397
 
694
1398
  get hasValueState() {
695
1399
  return this.valueState !== ValueState.None;
696
1400
  }
697
1401
 
1402
+ get hasValueStateMessage() {
1403
+ return this.hasValueState && this.valueState !== ValueState.Success
1404
+ && (!this._inputIconFocused // Handles the cases when valueStateMessage is forwarded (from datepicker e.g.)
1405
+ || (this._isPhone && this.Suggestions)); // Handles Input with suggestions on mobile
1406
+ }
1407
+
698
1408
  get valueStateText() {
699
1409
  return this.valueStateTextMappings()[this.valueState];
700
1410
  }
701
1411
 
702
1412
  get suggestionsText() {
703
- return this.i18nBundle.getText(INPUT_SUGGESTIONS);
1413
+ return Input.i18nBundle.getText(INPUT_SUGGESTIONS);
1414
+ }
1415
+
1416
+ get availableSuggestionsCount() {
1417
+ if (this.showSuggestions && (this.value || this.Suggestions.isOpened())) {
1418
+ switch (this.suggestionsTexts.length) {
1419
+ case 0:
1420
+ return Input.i18nBundle.getText(INPUT_SUGGESTIONS_NO_HIT);
1421
+
1422
+ case 1:
1423
+ return Input.i18nBundle.getText(INPUT_SUGGESTIONS_ONE_HIT);
1424
+
1425
+ default:
1426
+ return Input.i18nBundle.getText(INPUT_SUGGESTIONS_MORE_HITS, this.suggestionsTexts.length);
1427
+ }
1428
+ }
1429
+
1430
+ return undefined;
1431
+ }
1432
+
1433
+ get step() {
1434
+ return this.isTypeNumber ? "any" : undefined;
1435
+ }
1436
+
1437
+ get _isPhone() {
1438
+ return isPhone();
1439
+ }
1440
+
1441
+ get _isSuggestionsFocused() {
1442
+ return !this.focused && this.Suggestions && this.Suggestions.isOpened();
1443
+ }
1444
+
1445
+ /**
1446
+ * Returns the placeholder value.
1447
+ * @protected
1448
+ */
1449
+ get _placeholder() {
1450
+ return this.placeholder;
1451
+ }
1452
+
1453
+ /**
1454
+ * This method is relevant for sap_horizon theme only
1455
+ */
1456
+ get _valueStateInputIcon() {
1457
+ const iconPerValueState = {
1458
+ Error: `<path xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" d="M10 20C4.47715 20 0 15.5228 0 10C0 4.47715 4.47715 0 10 0C15.5228 0 20 4.47715 20 10C20 15.5228 15.5228 20 10 20ZM7.70711 13.7071C7.31658 14.0976 6.68342 14.0976 6.29289 13.7071C5.90237 13.3166 5.90237 12.6834 6.29289 12.2929L8.58579 10L6.29289 7.70711C5.90237 7.31658 5.90237 6.68342 6.29289 6.29289C6.68342 5.90237 7.31658 5.90237 7.70711 6.29289L10 8.58579L12.2929 6.29289C12.6834 5.90237 13.3166 5.90237 13.7071 6.29289C14.0976 6.68342 14.0976 7.31658 13.7071 7.70711L11.4142 10L13.7071 12.2929C14.0976 12.6834 14.0976 13.3166 13.7071 13.7071C13.3166 14.0976 12.6834 14.0976 12.2929 13.7071L10 11.4142L7.70711 13.7071Z" fill="#EE3939"/>`,
1459
+ Warning: `<path xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" d="M11.8619 0.49298C11.6823 0.187541 11.3544 0 11 0C10.6456 0 10.3177 0.187541 10.1381 0.49298L0.138066 17.493C-0.0438112 17.8022 -0.0461447 18.1851 0.13195 18.4965C0.310046 18.8079 0.641283 19 1 19H21C21.3587 19 21.69 18.8079 21.868 18.4965C22.0461 18.1851 22.0438 17.8022 21.8619 17.493L11.8619 0.49298ZM11 6C11.5523 6 12 6.44772 12 7V10C12 10.5523 11.5523 11 11 11C10.4477 11 10 10.5523 10 10V7C10 6.44772 10.4477 6 11 6ZM11 16C11.8284 16 12.5 15.3284 12.5 14.5C12.5 13.6716 11.8284 13 11 13C10.1716 13 9.5 13.6716 9.5 14.5C9.5 15.3284 10.1716 16 11 16Z" fill="#F58B00"/>`,
1460
+ Success: `<path xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" d="M0 10C0 15.5228 4.47715 20 10 20C15.5228 20 20 15.5228 20 10C20 4.47715 15.5228 0 10 0C4.47715 0 0 4.47715 0 10ZM14.7071 6.29289C14.3166 5.90237 13.6834 5.90237 13.2929 6.29289L8 11.5858L6.70711 10.2929C6.31658 9.90237 5.68342 9.90237 5.29289 10.2929C4.90237 10.6834 4.90237 11.3166 5.29289 11.7071L7.29289 13.7071C7.68342 14.0976 8.31658 14.0976 8.70711 13.7071L14.7071 7.70711C15.0976 7.31658 15.0976 6.68342 14.7071 6.29289Z" fill="#36A41D"/>`,
1461
+ Information: `<path xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" d="M3 0C1.34315 0 0 1.34315 0 3V15C0 16.6569 1.34315 18 3 18H15C16.6569 18 18 16.6569 18 15V3C18 1.34315 16.6569 0 15 0H3ZM9 6.5C9.82843 6.5 10.5 5.82843 10.5 5C10.5 4.17157 9.82843 3.5 9 3.5C8.17157 3.5 7.5 4.17157 7.5 5C7.5 5.82843 8.17157 6.5 9 6.5ZM9 8.5C9.55228 8.5 10 8.94772 10 9.5V13.5C10 14.0523 9.55228 14.5 9 14.5C8.44771 14.5 8 14.0523 8 13.5V9.5C8 8.94772 8.44771 8.5 9 8.5Z" fill="#1B90FF"/>`,
1462
+ };
1463
+
1464
+ const result = `
1465
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="20" viewBox="0 0 20 20" fill="none">
1466
+ ${iconPerValueState[this.valueState]};
1467
+ </svg>
1468
+ `;
1469
+
1470
+ return this.valueState !== ValueState.None ? result : "";
1471
+ }
1472
+
1473
+ get _valueStatePopoverHorizontalAlign() {
1474
+ return this.effectiveDir !== "rtl" ? "Left" : "Right";
1475
+ }
1476
+
1477
+ /**
1478
+ * This method is relevant for sap_horizon theme only
1479
+ */
1480
+ get _valueStateMessageInputIcon() {
1481
+ const iconPerValueState = {
1482
+ Error: "error",
1483
+ Warning: "alert",
1484
+ Success: "sys-enter-2",
1485
+ Information: "information",
1486
+ };
1487
+
1488
+ return this.valueState !== ValueState.None ? iconPerValueState[this.valueState] : "";
1489
+ }
1490
+
1491
+ /**
1492
+ * Returns the caret position inside the native input
1493
+ * @protected
1494
+ */
1495
+ getCaretPosition() {
1496
+ return getCaretPosition(this.nativeInput);
1497
+ }
1498
+
1499
+ /**
1500
+ * Sets the caret to a certain position inside the native input
1501
+ * @protected
1502
+ * @param pos
1503
+ */
1504
+ setCaretPosition(pos) {
1505
+ setCaretPosition(this.nativeInput, pos);
1506
+ }
1507
+
1508
+ /**
1509
+ * Removes the fractional part of floating-point number.
1510
+ * @param {string} value the numeric value of Input of type "Number"
1511
+ */
1512
+ removeFractionalPart(value) {
1513
+ if (value.includes(".")) {
1514
+ return value.slice(0, value.indexOf("."));
1515
+ }
1516
+ if (value.includes(",")) {
1517
+ return value.slice(0, value.indexOf(","));
1518
+ }
1519
+
1520
+ return value;
1521
+ }
1522
+
1523
+ static get dependencies() {
1524
+ const Suggestions = getFeature("InputSuggestions");
1525
+
1526
+ return [Popover, Icon].concat(Suggestions ? Suggestions.dependencies : []);
704
1527
  }
705
1528
 
706
1529
  static async onDefine() {
707
- await fetchI18nBundle("@ui5/webcomponents");
1530
+ const Suggestions = getFeature("InputSuggestions");
1531
+
1532
+ [Input.i18nBundle] = await Promise.all([
1533
+ getI18nBundle("@ui5/webcomponents"),
1534
+ Suggestions ? Suggestions.init() : Promise.resolve(),
1535
+ ]);
708
1536
  }
709
1537
  }
710
1538