@ui5/webcomponents 1.13.0-rc.2 → 1.13.0-rc.4

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 (633) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/dist/Avatar.d.ts +9 -3
  3. package/dist/Avatar.js +29 -10
  4. package/dist/Avatar.js.map +1 -1
  5. package/dist/AvatarGroup.d.ts +1 -1
  6. package/dist/AvatarGroup.js.map +1 -1
  7. package/dist/Button.d.ts +6 -2
  8. package/dist/Button.js.map +1 -1
  9. package/dist/Card.d.ts +5 -7
  10. package/dist/Card.js +3 -6
  11. package/dist/Card.js.map +1 -1
  12. package/dist/Carousel.d.ts +1 -0
  13. package/dist/Carousel.js +1 -0
  14. package/dist/Carousel.js.map +1 -1
  15. package/dist/CheckBox.d.ts +10 -0
  16. package/dist/CheckBox.js +10 -0
  17. package/dist/CheckBox.js.map +1 -1
  18. package/dist/ComboBoxItem.d.ts +1 -1
  19. package/dist/ComboBoxItem.js.map +1 -1
  20. package/dist/Icon.d.ts +11 -0
  21. package/dist/Icon.js +11 -0
  22. package/dist/Icon.js.map +1 -1
  23. package/dist/Input.d.ts +5 -0
  24. package/dist/Input.js +5 -0
  25. package/dist/Input.js.map +1 -1
  26. package/dist/Link.d.ts +4 -1
  27. package/dist/Link.js.map +1 -1
  28. package/dist/ListItem.d.ts +8 -0
  29. package/dist/ListItem.js.map +1 -1
  30. package/dist/Menu.d.ts +21 -0
  31. package/dist/Menu.js +26 -6
  32. package/dist/Menu.js.map +1 -1
  33. package/dist/MenuItem.d.ts +23 -1
  34. package/dist/MenuItem.js +10 -3
  35. package/dist/MenuItem.js.map +1 -1
  36. package/dist/Popup.js +3 -3
  37. package/dist/Popup.js.map +1 -1
  38. package/dist/SliderBase.d.ts +7 -1
  39. package/dist/SliderBase.js.map +1 -1
  40. package/dist/Tab.d.ts +10 -4
  41. package/dist/Tab.js +14 -1
  42. package/dist/Tab.js.map +1 -1
  43. package/dist/TabContainer.d.ts +10 -10
  44. package/dist/TabContainer.js +10 -10
  45. package/dist/TabContainer.js.map +1 -1
  46. package/dist/TabSeparator.d.ts +4 -2
  47. package/dist/Table.d.ts +1 -1
  48. package/dist/Table.js +1 -0
  49. package/dist/Table.js.map +1 -1
  50. package/dist/Title.d.ts +1 -0
  51. package/dist/Title.js +1 -0
  52. package/dist/Title.js.map +1 -1
  53. package/dist/api.json +1 -1
  54. package/dist/assets/Title.3d358ef7.css +1 -0
  55. package/dist/assets/parameters-bundle.css.067142cc.js +1 -0
  56. package/dist/assets/parameters-bundle.css.0910d303.js +1 -0
  57. package/dist/assets/parameters-bundle.css.0c80e05a.js +1 -0
  58. package/dist/assets/parameters-bundle.css.0d6c19c9.js +1 -0
  59. package/dist/assets/parameters-bundle.css.2280ce3e.js +1 -0
  60. package/dist/assets/parameters-bundle.css.2480d334.js +1 -0
  61. package/dist/assets/parameters-bundle.css.3e7079bc.js +1 -0
  62. package/dist/assets/parameters-bundle.css.472c33c9.js +1 -0
  63. package/dist/assets/parameters-bundle.css.4cf7b367.js +1 -0
  64. package/dist/assets/parameters-bundle.css.64a1fcb3.js +1 -0
  65. package/dist/assets/parameters-bundle.css.691f8760.js +1 -0
  66. package/dist/assets/parameters-bundle.css.731f329b.js +1 -0
  67. package/dist/assets/parameters-bundle.css.7bae430d.js +1 -0
  68. package/dist/assets/parameters-bundle.css.8a87377e.js +1 -0
  69. package/dist/assets/parameters-bundle.css.a0b1bee1.js +1 -0
  70. package/dist/assets/parameters-bundle.css.ab21e265.js +1 -0
  71. package/dist/assets/parameters-bundle.css.b06aacf3.js +1 -0
  72. package/dist/assets/parameters-bundle.css.b7a02c6d.js +1 -0
  73. package/dist/assets/parameters-bundle.css.b8686554.js +1 -0
  74. package/dist/assets/parameters-bundle.css.b8d253d9.js +1 -0
  75. package/dist/assets/parameters-bundle.css.bdbac4ec.js +1 -0
  76. package/dist/assets/parameters-bundle.css.e59780e1.js +1 -0
  77. package/dist/assets/parameters-bundle.css.ef6e66b9.js +1 -0
  78. package/dist/assets/parameters-bundle.css.f3164b8d.js +1 -0
  79. package/dist/css/themes/Avatar.css +1 -1
  80. package/dist/css/themes/Card.css +1 -1
  81. package/dist/css/themes/CheckBox.css +1 -1
  82. package/dist/css/themes/ComboBox.css +1 -1
  83. package/dist/css/themes/FileUploader.css +1 -1
  84. package/dist/css/themes/Input.css +1 -1
  85. package/dist/css/themes/Link.css +1 -1
  86. package/dist/css/themes/Menu.css +1 -1
  87. package/dist/css/themes/MultiComboBox.css +1 -1
  88. package/dist/css/themes/Select.css +1 -1
  89. package/dist/css/themes/StepInput.css +1 -1
  90. package/dist/css/themes/Suggestions.css +1 -1
  91. package/dist/css/themes/TabContainer.css +1 -1
  92. package/dist/css/themes/TabInStrip.css +1 -1
  93. package/dist/css/themes/Title.css +1 -1
  94. package/dist/css/themes/sap_belize/parameters-bundle.css +1 -1
  95. package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -1
  96. package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -1
  97. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  98. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  99. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  100. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  101. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  102. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  103. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  104. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  105. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  106. package/dist/custom-elements.json +1 -1
  107. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  108. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  109. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  110. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  111. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  112. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  113. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  114. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  115. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  116. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  117. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  118. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  119. package/dist/generated/templates/AvatarGroupTemplate.lit.d.ts +4 -0
  120. package/dist/generated/templates/AvatarGroupTemplate.lit.js +6 -8
  121. package/dist/generated/templates/AvatarGroupTemplate.lit.js.map +1 -0
  122. package/dist/generated/templates/AvatarTemplate.lit.d.ts +4 -0
  123. package/dist/generated/templates/AvatarTemplate.lit.js +8 -11
  124. package/dist/generated/templates/AvatarTemplate.lit.js.map +1 -0
  125. package/dist/generated/templates/BadgeTemplate.lit.d.ts +4 -0
  126. package/dist/generated/templates/BadgeTemplate.lit.js +5 -7
  127. package/dist/generated/templates/BadgeTemplate.lit.js.map +1 -0
  128. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.d.ts +4 -0
  129. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +5 -7
  130. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js.map +1 -0
  131. package/dist/generated/templates/BreadcrumbsTemplate.lit.d.ts +4 -0
  132. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +6 -8
  133. package/dist/generated/templates/BreadcrumbsTemplate.lit.js.map +1 -0
  134. package/dist/generated/templates/BusyIndicatorTemplate.lit.d.ts +4 -0
  135. package/dist/generated/templates/BusyIndicatorTemplate.lit.js +7 -9
  136. package/dist/generated/templates/BusyIndicatorTemplate.lit.js.map +1 -0
  137. package/dist/generated/templates/ButtonTemplate.lit.d.ts +4 -0
  138. package/dist/generated/templates/ButtonTemplate.lit.js +6 -8
  139. package/dist/generated/templates/ButtonTemplate.lit.js.map +1 -0
  140. package/dist/generated/templates/CalendarHeaderTemplate.lit.d.ts +4 -0
  141. package/dist/generated/templates/CalendarHeaderTemplate.lit.js +6 -8
  142. package/dist/generated/templates/CalendarHeaderTemplate.lit.js.map +1 -0
  143. package/dist/generated/templates/CalendarTemplate.lit.d.ts +4 -0
  144. package/dist/generated/templates/CalendarTemplate.lit.js +4 -6
  145. package/dist/generated/templates/CalendarTemplate.lit.js.map +1 -0
  146. package/dist/generated/templates/CardHeaderTemplate.lit.d.ts +4 -0
  147. package/dist/generated/templates/CardHeaderTemplate.lit.js +9 -11
  148. package/dist/generated/templates/CardHeaderTemplate.lit.js.map +1 -0
  149. package/dist/generated/templates/CardTemplate.lit.d.ts +4 -0
  150. package/dist/generated/templates/CardTemplate.lit.js +5 -7
  151. package/dist/generated/templates/CardTemplate.lit.js.map +1 -0
  152. package/dist/generated/templates/CarouselTemplate.lit.d.ts +4 -0
  153. package/dist/generated/templates/CarouselTemplate.lit.js +13 -15
  154. package/dist/generated/templates/CarouselTemplate.lit.js.map +1 -0
  155. package/dist/generated/templates/CheckBoxTemplate.lit.d.ts +4 -0
  156. package/dist/generated/templates/CheckBoxTemplate.lit.js +7 -9
  157. package/dist/generated/templates/CheckBoxTemplate.lit.js.map +1 -0
  158. package/dist/generated/templates/ColorPaletteDialogTemplate.lit.d.ts +4 -0
  159. package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +4 -6
  160. package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js.map +1 -0
  161. package/dist/generated/templates/ColorPaletteItemTemplate.lit.d.ts +4 -0
  162. package/dist/generated/templates/ColorPaletteItemTemplate.lit.js +4 -6
  163. package/dist/generated/templates/ColorPaletteItemTemplate.lit.js.map +1 -0
  164. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.d.ts +4 -0
  165. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +5 -7
  166. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js.map +1 -0
  167. package/dist/generated/templates/ColorPaletteTemplate.lit.d.ts +4 -0
  168. package/dist/generated/templates/ColorPaletteTemplate.lit.js +9 -11
  169. package/dist/generated/templates/ColorPaletteTemplate.lit.js.map +1 -0
  170. package/dist/generated/templates/ColorPickerTemplate.lit.d.ts +4 -0
  171. package/dist/generated/templates/ColorPickerTemplate.lit.js +4 -6
  172. package/dist/generated/templates/ColorPickerTemplate.lit.js.map +1 -0
  173. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.d.ts +4 -0
  174. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +22 -24
  175. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js.map +1 -0
  176. package/dist/generated/templates/ComboBoxTemplate.lit.d.ts +4 -0
  177. package/dist/generated/templates/ComboBoxTemplate.lit.js +7 -9
  178. package/dist/generated/templates/ComboBoxTemplate.lit.js.map +1 -0
  179. package/dist/generated/templates/CustomListItemTemplate.lit.d.ts +4 -0
  180. package/dist/generated/templates/CustomListItemTemplate.lit.js +19 -21
  181. package/dist/generated/templates/CustomListItemTemplate.lit.js.map +1 -0
  182. package/dist/generated/templates/DatePickerPopoverTemplate.lit.d.ts +4 -0
  183. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +7 -9
  184. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js.map +1 -0
  185. package/dist/generated/templates/DatePickerTemplate.lit.d.ts +4 -0
  186. package/dist/generated/templates/DatePickerTemplate.lit.js +6 -8
  187. package/dist/generated/templates/DatePickerTemplate.lit.js.map +1 -0
  188. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.d.ts +4 -0
  189. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +9 -11
  190. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js.map +1 -0
  191. package/dist/generated/templates/DayPickerTemplate.lit.d.ts +4 -0
  192. package/dist/generated/templates/DayPickerTemplate.lit.js +13 -15
  193. package/dist/generated/templates/DayPickerTemplate.lit.js.map +1 -0
  194. package/dist/generated/templates/DialogTemplate.lit.d.ts +4 -0
  195. package/dist/generated/templates/DialogTemplate.lit.js +10 -12
  196. package/dist/generated/templates/DialogTemplate.lit.js.map +1 -0
  197. package/dist/generated/templates/FileUploaderPopoverTemplate.lit.d.ts +4 -0
  198. package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +8 -10
  199. package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js.map +1 -0
  200. package/dist/generated/templates/FileUploaderTemplate.lit.d.ts +4 -0
  201. package/dist/generated/templates/FileUploaderTemplate.lit.js +7 -9
  202. package/dist/generated/templates/FileUploaderTemplate.lit.js.map +1 -0
  203. package/dist/generated/templates/GroupHeaderListItemTemplate.lit.d.ts +4 -0
  204. package/dist/generated/templates/GroupHeaderListItemTemplate.lit.js +4 -6
  205. package/dist/generated/templates/GroupHeaderListItemTemplate.lit.js.map +1 -0
  206. package/dist/generated/templates/IconTemplate.lit.d.ts +4 -0
  207. package/dist/generated/templates/IconTemplate.lit.js +11 -10
  208. package/dist/generated/templates/IconTemplate.lit.js.map +1 -0
  209. package/dist/generated/templates/InputPopoverTemplate.lit.d.ts +4 -0
  210. package/dist/generated/templates/InputPopoverTemplate.lit.js +24 -26
  211. package/dist/generated/templates/InputPopoverTemplate.lit.js.map +1 -0
  212. package/dist/generated/templates/InputTemplate.lit.d.ts +4 -0
  213. package/dist/generated/templates/InputTemplate.lit.js +9 -11
  214. package/dist/generated/templates/InputTemplate.lit.js.map +1 -0
  215. package/dist/generated/templates/LabelTemplate.lit.d.ts +4 -0
  216. package/dist/generated/templates/LabelTemplate.lit.js +4 -6
  217. package/dist/generated/templates/LabelTemplate.lit.js.map +1 -0
  218. package/dist/generated/templates/LinkTemplate.lit.d.ts +4 -0
  219. package/dist/generated/templates/LinkTemplate.lit.js +5 -7
  220. package/dist/generated/templates/LinkTemplate.lit.js.map +1 -0
  221. package/dist/generated/templates/ListItemTemplate.lit.d.ts +4 -0
  222. package/dist/generated/templates/ListItemTemplate.lit.js +19 -21
  223. package/dist/generated/templates/ListItemTemplate.lit.js.map +1 -0
  224. package/dist/generated/templates/ListTemplate.lit.d.ts +4 -0
  225. package/dist/generated/templates/ListTemplate.lit.js +12 -14
  226. package/dist/generated/templates/ListTemplate.lit.js.map +1 -0
  227. package/dist/generated/templates/MenuTemplate.lit.d.ts +4 -0
  228. package/dist/generated/templates/MenuTemplate.lit.js +14 -14
  229. package/dist/generated/templates/MenuTemplate.lit.js.map +1 -0
  230. package/dist/generated/templates/MessageStripTemplate.lit.d.ts +4 -0
  231. package/dist/generated/templates/MessageStripTemplate.lit.js +8 -10
  232. package/dist/generated/templates/MessageStripTemplate.lit.js.map +1 -0
  233. package/dist/generated/templates/MonthPickerTemplate.lit.d.ts +4 -0
  234. package/dist/generated/templates/MonthPickerTemplate.lit.js +7 -9
  235. package/dist/generated/templates/MonthPickerTemplate.lit.js.map +1 -0
  236. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.d.ts +4 -0
  237. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +27 -29
  238. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js.map +1 -0
  239. package/dist/generated/templates/MultiComboBoxTemplate.lit.d.ts +4 -0
  240. package/dist/generated/templates/MultiComboBoxTemplate.lit.js +9 -11
  241. package/dist/generated/templates/MultiComboBoxTemplate.lit.js.map +1 -0
  242. package/dist/generated/templates/MultiInputTemplate.lit.d.ts +4 -0
  243. package/dist/generated/templates/MultiInputTemplate.lit.js +13 -15
  244. package/dist/generated/templates/MultiInputTemplate.lit.js.map +1 -0
  245. package/dist/generated/templates/PanelTemplate.lit.d.ts +4 -0
  246. package/dist/generated/templates/PanelTemplate.lit.js +10 -12
  247. package/dist/generated/templates/PanelTemplate.lit.js.map +1 -0
  248. package/dist/generated/templates/PopoverTemplate.lit.d.ts +4 -0
  249. package/dist/generated/templates/PopoverTemplate.lit.js +9 -11
  250. package/dist/generated/templates/PopoverTemplate.lit.js.map +1 -0
  251. package/dist/generated/templates/PopupBlockLayerTemplate.lit.d.ts +4 -0
  252. package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +4 -6
  253. package/dist/generated/templates/PopupBlockLayerTemplate.lit.js.map +1 -0
  254. package/dist/generated/templates/PopupTemplate.lit.d.ts +4 -0
  255. package/dist/generated/templates/PopupTemplate.lit.js +4 -6
  256. package/dist/generated/templates/PopupTemplate.lit.js.map +1 -0
  257. package/dist/generated/templates/ProgressIndicatorTemplate.lit.d.ts +4 -0
  258. package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +14 -16
  259. package/dist/generated/templates/ProgressIndicatorTemplate.lit.js.map +1 -0
  260. package/dist/generated/templates/RadioButtonTemplate.lit.d.ts +4 -0
  261. package/dist/generated/templates/RadioButtonTemplate.lit.js +10 -9
  262. package/dist/generated/templates/RadioButtonTemplate.lit.js.map +1 -0
  263. package/dist/generated/templates/RangeSliderTemplate.lit.d.ts +4 -0
  264. package/dist/generated/templates/RangeSliderTemplate.lit.js +13 -15
  265. package/dist/generated/templates/RangeSliderTemplate.lit.js.map +1 -0
  266. package/dist/generated/templates/RatingIndicatorTemplate.lit.d.ts +4 -0
  267. package/dist/generated/templates/RatingIndicatorTemplate.lit.js +13 -15
  268. package/dist/generated/templates/RatingIndicatorTemplate.lit.js.map +1 -0
  269. package/dist/generated/templates/ResponsivePopoverTemplate.lit.d.ts +4 -0
  270. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +16 -18
  271. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js.map +1 -0
  272. package/dist/generated/templates/SegmentedButtonItemTemplate.lit.d.ts +4 -0
  273. package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +5 -7
  274. package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js.map +1 -0
  275. package/dist/generated/templates/SegmentedButtonTemplate.lit.d.ts +4 -0
  276. package/dist/generated/templates/SegmentedButtonTemplate.lit.js +4 -6
  277. package/dist/generated/templates/SegmentedButtonTemplate.lit.js.map +1 -0
  278. package/dist/generated/templates/SelectPopoverTemplate.lit.d.ts +4 -0
  279. package/dist/generated/templates/SelectPopoverTemplate.lit.js +20 -22
  280. package/dist/generated/templates/SelectPopoverTemplate.lit.js.map +1 -0
  281. package/dist/generated/templates/SelectTemplate.lit.d.ts +4 -0
  282. package/dist/generated/templates/SelectTemplate.lit.js +6 -8
  283. package/dist/generated/templates/SelectTemplate.lit.js.map +1 -0
  284. package/dist/generated/templates/SliderBaseTemplate.lit.d.ts +4 -0
  285. package/dist/generated/templates/SliderBaseTemplate.lit.js +11 -13
  286. package/dist/generated/templates/SliderBaseTemplate.lit.js.map +1 -0
  287. package/dist/generated/templates/SliderTemplate.lit.d.ts +4 -0
  288. package/dist/generated/templates/SliderTemplate.lit.js +12 -14
  289. package/dist/generated/templates/SliderTemplate.lit.js.map +1 -0
  290. package/dist/generated/templates/SplitButtonTemplate.lit.d.ts +4 -0
  291. package/dist/generated/templates/SplitButtonTemplate.lit.js +5 -7
  292. package/dist/generated/templates/SplitButtonTemplate.lit.js.map +1 -0
  293. package/dist/generated/templates/StandardListItemTemplate.lit.d.ts +4 -0
  294. package/dist/generated/templates/StandardListItemTemplate.lit.js +29 -31
  295. package/dist/generated/templates/StandardListItemTemplate.lit.js.map +1 -0
  296. package/dist/generated/templates/StepInputTemplate.lit.d.ts +4 -0
  297. package/dist/generated/templates/StepInputTemplate.lit.js +7 -9
  298. package/dist/generated/templates/StepInputTemplate.lit.js.map +1 -0
  299. package/dist/generated/templates/SuggestionListItemTemplate.lit.d.ts +4 -0
  300. package/dist/generated/templates/SuggestionListItemTemplate.lit.js +32 -34
  301. package/dist/generated/templates/SuggestionListItemTemplate.lit.js.map +1 -0
  302. package/dist/generated/templates/SwitchTemplate.lit.d.ts +4 -0
  303. package/dist/generated/templates/SwitchTemplate.lit.js +8 -10
  304. package/dist/generated/templates/SwitchTemplate.lit.js.map +1 -0
  305. package/dist/generated/templates/TabContainerPopoverTemplate.lit.d.ts +4 -0
  306. package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +5 -7
  307. package/dist/generated/templates/TabContainerPopoverTemplate.lit.js.map +1 -0
  308. package/dist/generated/templates/TabContainerTemplate.lit.d.ts +4 -0
  309. package/dist/generated/templates/TabContainerTemplate.lit.js +14 -16
  310. package/dist/generated/templates/TabContainerTemplate.lit.js.map +1 -0
  311. package/dist/generated/templates/TabInOverflowTemplate.lit.d.ts +4 -0
  312. package/dist/generated/templates/TabInOverflowTemplate.lit.js +9 -11
  313. package/dist/generated/templates/TabInOverflowTemplate.lit.js.map +1 -0
  314. package/dist/generated/templates/TabInStripTemplate.lit.d.ts +4 -0
  315. package/dist/generated/templates/TabInStripTemplate.lit.js +11 -14
  316. package/dist/generated/templates/TabInStripTemplate.lit.js.map +1 -0
  317. package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.d.ts +4 -0
  318. package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js +4 -6
  319. package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js.map +1 -0
  320. package/dist/generated/templates/TabSeparatorInStripTemplate.lit.d.ts +4 -0
  321. package/dist/generated/templates/TabSeparatorInStripTemplate.lit.js +4 -6
  322. package/dist/generated/templates/TabSeparatorInStripTemplate.lit.js.map +1 -0
  323. package/dist/generated/templates/TabTemplate.lit.d.ts +4 -0
  324. package/dist/generated/templates/TabTemplate.lit.js +5 -7
  325. package/dist/generated/templates/TabTemplate.lit.js.map +1 -0
  326. package/dist/generated/templates/TableCellTemplate.lit.d.ts +4 -0
  327. package/dist/generated/templates/TableCellTemplate.lit.js +4 -6
  328. package/dist/generated/templates/TableCellTemplate.lit.js.map +1 -0
  329. package/dist/generated/templates/TableColumnTemplate.lit.d.ts +4 -0
  330. package/dist/generated/templates/TableColumnTemplate.lit.js +4 -6
  331. package/dist/generated/templates/TableColumnTemplate.lit.js.map +1 -0
  332. package/dist/generated/templates/TableGroupRowTemplate.lit.d.ts +4 -0
  333. package/dist/generated/templates/TableGroupRowTemplate.lit.js +4 -6
  334. package/dist/generated/templates/TableGroupRowTemplate.lit.js.map +1 -0
  335. package/dist/generated/templates/TableRowTemplate.lit.d.ts +4 -0
  336. package/dist/generated/templates/TableRowTemplate.lit.js +15 -17
  337. package/dist/generated/templates/TableRowTemplate.lit.js.map +1 -0
  338. package/dist/generated/templates/TableTemplate.lit.d.ts +4 -0
  339. package/dist/generated/templates/TableTemplate.lit.js +14 -16
  340. package/dist/generated/templates/TableTemplate.lit.js.map +1 -0
  341. package/dist/generated/templates/TextAreaPopoverTemplate.lit.d.ts +4 -0
  342. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +8 -10
  343. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js.map +1 -0
  344. package/dist/generated/templates/TextAreaTemplate.lit.d.ts +4 -0
  345. package/dist/generated/templates/TextAreaTemplate.lit.js +8 -10
  346. package/dist/generated/templates/TextAreaTemplate.lit.js.map +1 -0
  347. package/dist/generated/templates/TimePickerPopoverTemplate.lit.d.ts +4 -0
  348. package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +4 -6
  349. package/dist/generated/templates/TimePickerPopoverTemplate.lit.js.map +1 -0
  350. package/dist/generated/templates/TimePickerTemplate.lit.d.ts +4 -0
  351. package/dist/generated/templates/TimePickerTemplate.lit.js +6 -8
  352. package/dist/generated/templates/TimePickerTemplate.lit.js.map +1 -0
  353. package/dist/generated/templates/TimeSelectionTemplate.lit.d.ts +4 -0
  354. package/dist/generated/templates/TimeSelectionTemplate.lit.js +8 -10
  355. package/dist/generated/templates/TimeSelectionTemplate.lit.js.map +1 -0
  356. package/dist/generated/templates/TitleTemplate.lit.d.ts +4 -0
  357. package/dist/generated/templates/TitleTemplate.lit.js +10 -12
  358. package/dist/generated/templates/TitleTemplate.lit.js.map +1 -0
  359. package/dist/generated/templates/ToastTemplate.lit.d.ts +4 -0
  360. package/dist/generated/templates/ToastTemplate.lit.js +5 -7
  361. package/dist/generated/templates/ToastTemplate.lit.js.map +1 -0
  362. package/dist/generated/templates/ToggleButtonTemplate.lit.d.ts +4 -0
  363. package/dist/generated/templates/ToggleButtonTemplate.lit.js +6 -8
  364. package/dist/generated/templates/ToggleButtonTemplate.lit.js.map +1 -0
  365. package/dist/generated/templates/TokenTemplate.lit.d.ts +4 -0
  366. package/dist/generated/templates/TokenTemplate.lit.js +7 -9
  367. package/dist/generated/templates/TokenTemplate.lit.js.map +1 -0
  368. package/dist/generated/templates/TokenizerPopoverTemplate.lit.d.ts +4 -0
  369. package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +9 -11
  370. package/dist/generated/templates/TokenizerPopoverTemplate.lit.js.map +1 -0
  371. package/dist/generated/templates/TokenizerTemplate.lit.d.ts +4 -0
  372. package/dist/generated/templates/TokenizerTemplate.lit.js +6 -8
  373. package/dist/generated/templates/TokenizerTemplate.lit.js.map +1 -0
  374. package/dist/generated/templates/TreeItemBaseTemplate.lit.d.ts +4 -0
  375. package/dist/generated/templates/TreeItemBaseTemplate.lit.js +23 -25
  376. package/dist/generated/templates/TreeItemBaseTemplate.lit.js.map +1 -0
  377. package/dist/generated/templates/TreeItemCustomTemplate.lit.d.ts +4 -0
  378. package/dist/generated/templates/TreeItemCustomTemplate.lit.js +23 -25
  379. package/dist/generated/templates/TreeItemCustomTemplate.lit.js.map +1 -0
  380. package/dist/generated/templates/TreeItemTemplate.lit.d.ts +4 -0
  381. package/dist/generated/templates/TreeItemTemplate.lit.js +25 -27
  382. package/dist/generated/templates/TreeItemTemplate.lit.js.map +1 -0
  383. package/dist/generated/templates/TreeTemplate.lit.d.ts +4 -0
  384. package/dist/generated/templates/TreeTemplate.lit.js +5 -7
  385. package/dist/generated/templates/TreeTemplate.lit.js.map +1 -0
  386. package/dist/generated/templates/WheelSliderTemplate.lit.d.ts +4 -0
  387. package/dist/generated/templates/WheelSliderTemplate.lit.js +7 -9
  388. package/dist/generated/templates/WheelSliderTemplate.lit.js.map +1 -0
  389. package/dist/generated/templates/YearPickerTemplate.lit.d.ts +4 -0
  390. package/dist/generated/templates/YearPickerTemplate.lit.js +7 -9
  391. package/dist/generated/templates/YearPickerTemplate.lit.js.map +1 -0
  392. package/dist/generated/themes/Avatar.css.js +1 -1
  393. package/dist/generated/themes/Avatar.css.js.map +1 -1
  394. package/dist/generated/themes/Card.css.js +1 -1
  395. package/dist/generated/themes/Card.css.js.map +1 -1
  396. package/dist/generated/themes/CheckBox.css.js +1 -1
  397. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  398. package/dist/generated/themes/ComboBox.css.js +1 -1
  399. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  400. package/dist/generated/themes/FileUploader.css.js +1 -1
  401. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  402. package/dist/generated/themes/Input.css.js +1 -1
  403. package/dist/generated/themes/Input.css.js.map +1 -1
  404. package/dist/generated/themes/Link.css.js +1 -1
  405. package/dist/generated/themes/Link.css.js.map +1 -1
  406. package/dist/generated/themes/Menu.css.js +1 -1
  407. package/dist/generated/themes/Menu.css.js.map +1 -1
  408. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  409. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  410. package/dist/generated/themes/Select.css.js +1 -1
  411. package/dist/generated/themes/Select.css.js.map +1 -1
  412. package/dist/generated/themes/StepInput.css.js +1 -1
  413. package/dist/generated/themes/StepInput.css.js.map +1 -1
  414. package/dist/generated/themes/Suggestions.css.js +1 -1
  415. package/dist/generated/themes/Suggestions.css.js.map +1 -1
  416. package/dist/generated/themes/TabContainer.css.js +1 -1
  417. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  418. package/dist/generated/themes/TabInStrip.css.js +1 -1
  419. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  420. package/dist/generated/themes/Title.css.js +1 -1
  421. package/dist/generated/themes/Title.css.js.map +1 -1
  422. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  423. package/dist/generated/themes/sap_belize/parameters-bundle.css.js.map +1 -1
  424. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  425. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js.map +1 -1
  426. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  427. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js.map +1 -1
  428. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  429. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  430. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  431. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  432. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  433. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  434. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  435. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  436. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  437. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  438. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  439. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  440. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  441. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
  442. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  443. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  444. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  445. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  446. package/package.json +7 -8
  447. package/src/Avatar.hbs +12 -6
  448. package/src/CheckBox.hbs +1 -0
  449. package/src/Icon.hbs +1 -0
  450. package/src/InputPopover.hbs +1 -1
  451. package/src/List.hbs +1 -1
  452. package/src/Menu.hbs +12 -1
  453. package/src/MonthPicker.hbs +0 -1
  454. package/src/MultiComboBox.hbs +0 -1
  455. package/src/TabInStrip.hbs +2 -4
  456. package/src/YearPicker.hbs +0 -1
  457. package/src/themes/Avatar.css +16 -0
  458. package/src/themes/Card.css +2 -2
  459. package/src/themes/CheckBox.css +13 -23
  460. package/src/themes/FileUploader.css +5 -5
  461. package/src/themes/Input.css +13 -8
  462. package/src/themes/Link.css +10 -3
  463. package/src/themes/Menu.css +4 -0
  464. package/src/themes/StepInput.css +5 -5
  465. package/src/themes/Suggestions.css +12 -0
  466. package/src/themes/TabContainer.css +2 -0
  467. package/src/themes/TabInStrip.css +6 -1
  468. package/src/themes/Title.css +8 -1
  469. package/src/themes/base/Input-parameters.css +1 -2
  470. package/src/themes/base/Link-parameters.css +2 -0
  471. package/src/themes/base/sizes-parameters.css +1 -1
  472. package/src/themes/sap_belize/Input-parameters.css +0 -1
  473. package/src/themes/sap_belize_hcb/Input-parameters.css +0 -1
  474. package/src/themes/sap_belize_hcw/Input-parameters.css +0 -1
  475. package/src/themes/sap_horizon/CheckBox-parameters.css +4 -9
  476. package/src/themes/sap_horizon/Input-parameters.css +0 -5
  477. package/src/themes/sap_horizon/Link-parameters.css +1 -0
  478. package/src/themes/sap_horizon_dark/CheckBox-parameters.css +4 -9
  479. package/src/themes/sap_horizon_dark/Input-parameters.css +0 -5
  480. package/src/themes/sap_horizon_dark/Link-parameters.css +1 -0
  481. package/src/themes/sap_horizon_exp/Input-parameters.css +0 -5
  482. package/src/themes/sap_horizon_hcb/CheckBox-parameters.css +2 -7
  483. package/src/themes/sap_horizon_hcb/Link-parameters.css +1 -0
  484. package/src/themes/sap_horizon_hcw/CheckBox-parameters.css +2 -7
  485. package/src/themes/sap_horizon_hcw/Link-parameters.css +1 -0
  486. package/LICENSE.txt +0 -201
  487. package/dist/assets/Title.d6aa17aa.css +0 -1
  488. package/dist/assets/parameters-bundle.css.040aa3dd.js +0 -1
  489. package/dist/assets/parameters-bundle.css.1b6e2478.js +0 -1
  490. package/dist/assets/parameters-bundle.css.21513a38.js +0 -1
  491. package/dist/assets/parameters-bundle.css.2c8496aa.js +0 -1
  492. package/dist/assets/parameters-bundle.css.3c25e356.js +0 -1
  493. package/dist/assets/parameters-bundle.css.4daa1648.js +0 -1
  494. package/dist/assets/parameters-bundle.css.52765351.js +0 -1
  495. package/dist/assets/parameters-bundle.css.699b96c0.js +0 -1
  496. package/dist/assets/parameters-bundle.css.6db4d34a.js +0 -1
  497. package/dist/assets/parameters-bundle.css.70a65e3a.js +0 -1
  498. package/dist/assets/parameters-bundle.css.71348be9.js +0 -1
  499. package/dist/assets/parameters-bundle.css.71c92b92.js +0 -1
  500. package/dist/assets/parameters-bundle.css.75b9ef28.js +0 -1
  501. package/dist/assets/parameters-bundle.css.7629e56e.js +0 -1
  502. package/dist/assets/parameters-bundle.css.91aaddc5.js +0 -1
  503. package/dist/assets/parameters-bundle.css.9bd22734.js +0 -1
  504. package/dist/assets/parameters-bundle.css.b7a262bf.js +0 -1
  505. package/dist/assets/parameters-bundle.css.b8f73a77.js +0 -1
  506. package/dist/assets/parameters-bundle.css.c565b624.js +0 -1
  507. package/dist/assets/parameters-bundle.css.cbd268df.js +0 -1
  508. package/dist/assets/parameters-bundle.css.d8251aad.js +0 -1
  509. package/dist/assets/parameters-bundle.css.f2cd40dd.js +0 -1
  510. package/dist/assets/parameters-bundle.css.f36b416c.js +0 -1
  511. package/dist/assets/parameters-bundle.css.f552e9e6.js +0 -1
  512. package/dist/assets/test/pages/ComboBox.html.8efde534.js +0 -1
  513. package/dist/assets/test/pages/Icon.html.2b52be1e.js +0 -1
  514. package/dist/assets/test/pages/Label.html.1a32d008.js +0 -4
  515. package/dist/assets/test/pages/Popups.html.11aeb74f.js +0 -1
  516. package/dist/test/pages/72override.html +0 -33
  517. package/dist/test/pages/AnimanitionOff.html +0 -52
  518. package/dist/test/pages/Avatar.html +0 -264
  519. package/dist/test/pages/AvatarGroup.html +0 -376
  520. package/dist/test/pages/Badge.html +0 -75
  521. package/dist/test/pages/Breadcrumbs.html +0 -239
  522. package/dist/test/pages/BusyIndicator.html +0 -278
  523. package/dist/test/pages/Button.html +0 -273
  524. package/dist/test/pages/Calendar.html +0 -98
  525. package/dist/test/pages/Card.html +0 -347
  526. package/dist/test/pages/Carousel.html +0 -584
  527. package/dist/test/pages/CheckBox.html +0 -90
  528. package/dist/test/pages/ColorPalette.html +0 -126
  529. package/dist/test/pages/ColorPalettePopover.html +0 -141
  530. package/dist/test/pages/ColorPicker.html +0 -66
  531. package/dist/test/pages/ComboBox.html +0 -292
  532. package/dist/test/pages/Components.html +0 -106
  533. package/dist/test/pages/CoreControls.html +0 -203
  534. package/dist/test/pages/CoreControls_exp.html +0 -203
  535. package/dist/test/pages/CustomCSS.html +0 -55
  536. package/dist/test/pages/DatePicker.html +0 -205
  537. package/dist/test/pages/DatePicker_test_page.html +0 -106
  538. package/dist/test/pages/DateRangePicker.html +0 -64
  539. package/dist/test/pages/DateTimePicker.html +0 -190
  540. package/dist/test/pages/DateTimePicker_Timezone.html +0 -72
  541. package/dist/test/pages/DayPicker.html +0 -37
  542. package/dist/test/pages/Dialog.html +0 -799
  543. package/dist/test/pages/DialogLifecycle.html +0 -62
  544. package/dist/test/pages/DialogSemantic.html +0 -58
  545. package/dist/test/pages/Eventing.html +0 -33
  546. package/dist/test/pages/F6Test1.html +0 -42
  547. package/dist/test/pages/F6Test2.html +0 -42
  548. package/dist/test/pages/F6Test3.html +0 -39
  549. package/dist/test/pages/F6Test4.html +0 -46
  550. package/dist/test/pages/F6Test5.html +0 -42
  551. package/dist/test/pages/F6Test6.html +0 -39
  552. package/dist/test/pages/F6Test7.html +0 -36
  553. package/dist/test/pages/FileUploader.html +0 -138
  554. package/dist/test/pages/FormComponents.html +0 -72
  555. package/dist/test/pages/FormSupport.html +0 -59
  556. package/dist/test/pages/HCB.html +0 -45
  557. package/dist/test/pages/Icon.html +0 -278
  558. package/dist/test/pages/Icon_and_theming.html +0 -67
  559. package/dist/test/pages/Icon_custom.html +0 -26
  560. package/dist/test/pages/Input.html +0 -731
  561. package/dist/test/pages/InputFieldLabels.html +0 -355
  562. package/dist/test/pages/InputFieldMinWidth.html +0 -230
  563. package/dist/test/pages/InputIcons.html +0 -80
  564. package/dist/test/pages/Input_quickview.html +0 -204
  565. package/dist/test/pages/InputsAlignment.html +0 -131
  566. package/dist/test/pages/InputsLazyLoading.html +0 -244
  567. package/dist/test/pages/ItemNavigation.html +0 -94
  568. package/dist/test/pages/Kitchen.html +0 -637
  569. package/dist/test/pages/Kitchen.openui5.html +0 -570
  570. package/dist/test/pages/Label.html +0 -161
  571. package/dist/test/pages/Link.html +0 -201
  572. package/dist/test/pages/List.html +0 -465
  573. package/dist/test/pages/ListGrowing_Button.html +0 -64
  574. package/dist/test/pages/ListGrowing_Scroll.html +0 -93
  575. package/dist/test/pages/List_keyboard_support.html +0 -130
  576. package/dist/test/pages/List_test_page.html +0 -371
  577. package/dist/test/pages/LitKeyFunction.html +0 -40
  578. package/dist/test/pages/MemoryLeak.html +0 -78
  579. package/dist/test/pages/Menu.html +0 -145
  580. package/dist/test/pages/MessagePage.html +0 -39
  581. package/dist/test/pages/MessageStrip.html +0 -55
  582. package/dist/test/pages/MultiComboBox.html +0 -489
  583. package/dist/test/pages/MultiInput.html +0 -451
  584. package/dist/test/pages/MultiInput_Suggestions.html +0 -161
  585. package/dist/test/pages/OpenUI5-second.html +0 -60
  586. package/dist/test/pages/OpenUI5.html +0 -83
  587. package/dist/test/pages/Panel.html +0 -226
  588. package/dist/test/pages/Popover.html +0 -624
  589. package/dist/test/pages/PopoverArrowBounds.html +0 -52
  590. package/dist/test/pages/Popups.html +0 -131
  591. package/dist/test/pages/ProgressIndicator.html +0 -151
  592. package/dist/test/pages/RTL.html +0 -118
  593. package/dist/test/pages/RadioButton.html +0 -201
  594. package/dist/test/pages/RangeSlider.html +0 -96
  595. package/dist/test/pages/RatingIndicator.html +0 -97
  596. package/dist/test/pages/ResizeHandler.html +0 -74
  597. package/dist/test/pages/ResponsivePopover.html +0 -267
  598. package/dist/test/pages/SegmentedButton.html +0 -151
  599. package/dist/test/pages/Select.html +0 -260
  600. package/dist/test/pages/Simple.html +0 -25
  601. package/dist/test/pages/Slider.html +0 -79
  602. package/dist/test/pages/SplitButton.html +0 -101
  603. package/dist/test/pages/StepInput.html +0 -189
  604. package/dist/test/pages/Switch.html +0 -97
  605. package/dist/test/pages/TabContainer.html +0 -904
  606. package/dist/test/pages/Table-perf-pure.html +0 -73
  607. package/dist/test/pages/Table-perf.html +0 -76
  608. package/dist/test/pages/Table.html +0 -2808
  609. package/dist/test/pages/Table2.html +0 -53
  610. package/dist/test/pages/TableAllPopin.html +0 -228
  611. package/dist/test/pages/TableCustomStyling.html +0 -89
  612. package/dist/test/pages/TableGrouping.html +0 -109
  613. package/dist/test/pages/TableGrowingWithButton.html +0 -805
  614. package/dist/test/pages/TableGrowingWithScroll.html +0 -801
  615. package/dist/test/pages/TableSelection.html +0 -445
  616. package/dist/test/pages/Test.html +0 -15
  617. package/dist/test/pages/TextArea.html +0 -222
  618. package/dist/test/pages/TimePicker.html +0 -81
  619. package/dist/test/pages/TimeSelection.html +0 -31
  620. package/dist/test/pages/Title.html +0 -37
  621. package/dist/test/pages/Toast.html +0 -111
  622. package/dist/test/pages/ToggleButton.html +0 -71
  623. package/dist/test/pages/Tree.html +0 -307
  624. package/dist/test/pages/WheelSlider_Test_Page.html +0 -26
  625. package/dist/test/pages/base/AriaLabelHelper.html +0 -334
  626. package/dist/test/pages/base/DOMObserver.html +0 -20
  627. package/dist/test/pages/base/IconCollection.html +0 -23
  628. package/dist/test/pages/base/IconCollectionInCustomTheme.html +0 -25
  629. package/dist/test/pages/base/InvisibleMessage.html +0 -44
  630. package/dist/test/pages/form.html +0 -123
  631. package/dist/test/pages/i18n-defaultLang.html +0 -31
  632. package/dist/test/pages/i18n-demo.html +0 -79
  633. package/global.d.ts +0 -12
package/dist/Input.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","sourceRoot":"","sources":["../src/Input.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport type { ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport {\n\tisPhone,\n\tisAndroid,\n} from \"@ui5/webcomponents-base/dist/Device.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getFeature } from \"@ui5/webcomponents-base/dist/FeaturesRegistry.js\";\nimport {\n\tisUp,\n\tisDown,\n\tisSpace,\n\tisEnter,\n\tisBackSpace,\n\tisDelete,\n\tisEscape,\n\tisTabNext,\n\tisPageUp,\n\tisPageDown,\n\tisHome,\n\tisEnd,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n\tgetAssociatedLabelForTexts,\n\tgetAllAccessibleNameRefTexts,\n\tregisterUI5Element,\n\tderegisterUI5Element,\n} from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport { getCaretPosition, setCaretPosition } from \"@ui5/webcomponents-base/dist/util/Caret.js\";\nimport getActiveElement from \"@ui5/webcomponents-base/dist/util/getActiveElement.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport \"@ui5/webcomponents-icons/dist/not-editable.js\";\nimport \"@ui5/webcomponents-icons/dist/error.js\";\nimport \"@ui5/webcomponents-icons/dist/alert.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-enter-2.js\";\nimport \"@ui5/webcomponents-icons/dist/information.js\";\nimport type SuggestionItem from \"./SuggestionItem.js\";\nimport type { InputSuggestionText, SuggestionComponent } from \"./features/InputSuggestions.js\";\nimport type InputSuggestions from \"./features/InputSuggestions.js\";\nimport type FormSupportT from \"./features/InputElementsFormSupport.js\";\nimport type { IFormElement } from \"./features/InputElementsFormSupport.js\";\nimport type SuggestionListItem from \"./SuggestionListItem.js\";\nimport type { PopupScrollEventDetail } from \"./Popup.js\";\nimport InputType from \"./types/InputType.js\";\nimport Popover from \"./Popover.js\";\nimport Icon from \"./Icon.js\";\n// Templates\nimport InputTemplate from \"./generated/templates/InputTemplate.lit.js\";\nimport InputPopoverTemplate from \"./generated/templates/InputPopoverTemplate.lit.js\";\nimport { StartsWith } from \"./Filters.js\";\n\nimport {\n\tVALUE_STATE_SUCCESS,\n\tVALUE_STATE_INFORMATION,\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tVALUE_STATE_TYPE_SUCCESS,\n\tVALUE_STATE_TYPE_INFORMATION,\n\tVALUE_STATE_TYPE_ERROR,\n\tVALUE_STATE_TYPE_WARNING,\n\tINPUT_SUGGESTIONS,\n\tINPUT_SUGGESTIONS_TITLE,\n\tINPUT_SUGGESTIONS_ONE_HIT,\n\tINPUT_SUGGESTIONS_MORE_HITS,\n\tINPUT_SUGGESTIONS_NO_HIT,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport inputStyles from \"./generated/themes/Input.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\nimport ValueStateMessageCss from \"./generated/themes/ValueStateMessage.css.js\";\nimport SuggestionsCss from \"./generated/themes/Suggestions.css.js\";\n\ntype NativeInputAttributes = {\n\tmin?: number,\n\tmax?: number,\n\tstep?: number\n}\n\ntype AccInfo = {\n\tariaRoledescription?: string,\n\tariaDescribedBy?: string,\n\tariaHasPopup?: string,\n\tariaAutoComplete?: string,\n\trole?: string,\n\tariaControls?: string,\n\tariaExpanded?: string,\n\tariaDescription?: string,\n\tariaLabel?: string,\n}\n\n// all sementic events\nenum INPUT_EVENTS {\n\tCHANGE = \"change\",\n\tINPUT = \"input\",\n\tSUGGESTION_ITEM_SELECT = \"suggestion-item-select\",\n}\n\n// all user interactions\nenum INPUT_ACTIONS {\n\tACTION_ENTER = \"enter\",\n\tACTION_USER_INPUT = \"input\",\n}\n\ntype InputEventDetail = {\n\tinputType?: string;\n}\n\ntype SuggestionItemSelectEventDetail = {\n\titem: SuggestionItem;\n}\n\ntype SuggestionItemPreviewEventDetail = {\n\titem: SuggestionItem;\n\ttargetRef: SuggestionListItem;\n}\n\ntype SuggestionScrollEventDetail = {\n\tscrollTop: number;\n\tscrollContainer: HTMLElement;\n}\n\n/**\n * @class\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>ui5-input</code> component allows the user to enter and edit text or numeric values in one line.\n * <br>\n * Additionally, you can provide <code>suggestionItems</code>,\n * that are displayed in a popover right under the input.\n * <br><br>\n * The text field can be editable or read-only (<code>readonly</code> property),\n * and it can be enabled or disabled (<code>disabled</code> property).\n * To visualize semantic states, such as \"error\" or \"warning\", the <code>valueState</code> property is provided.\n * When the user makes changes to the text, the change event is fired,\n * which enables you to react on any text change.\n * <br><br>\n * <b>Note:</b> If you are using the <code>ui5-input</code> as a single npm module,\n * don't forget to import the <code>InputSuggestions</code> module from\n * \"@ui5/webcomponents/dist/features/InputSuggestions.js\"\n * to enable the suggestions functionality.\n *\n * <h3>Keyboard Handling</h3>\n * The <code>ui5-input</code> provides the following keyboard shortcuts:\n * <br>\n *\n * <ul>\n * <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>\n * <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>\n * <li>[DOWN] - Focuses the next matching item in the suggestion list.</li>\n * <li>[UP] - Focuses the previous matching item in the suggestion list.</li>\n * <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>\n * <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>\n * <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>\n * <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>\n * </ul>\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Input.js\";</code>\n * <br>\n * <code>import \"@ui5/webcomponents/dist/features/InputSuggestions.js\";</code> (optional - for input suggestions support)\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.Input\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-input\n * @appenddocs sap.ui.webc.main.SuggestionItem sap.ui.webc.main.SuggestionGroupItem\n * @implements sap.ui.webc.main.IInput\n * @public\n */\n@customElement({\n\ttag: \"ui5-input\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: InputTemplate,\n\tstaticAreaTemplate: InputPopoverTemplate,\n\tstyles: inputStyles,\n\tstaticAreaStyles: [ResponsivePopoverCommonCss, ValueStateMessageCss, SuggestionsCss],\n\tget dependencies() {\n\t\tconst Suggestions = getFeature<typeof InputSuggestions>(\"InputSuggestions\");\n\t\treturn ([Popover, Icon] as Array<typeof UI5Element>).concat(Suggestions ? Suggestions.dependencies : []);\n\t},\n})\n\n/**\n * Fired when the input operation has finished by pressing Enter or on focusout.\n *\n * @event sap.ui.webc.main.Input#change\n * @public\n */\n@event(\"change\")\n\n/**\n * Fired when the value of the component changes at each keystroke,\n * and when a suggestion item has been selected.\n *\n * @event sap.ui.webc.main.Input#input\n * @public\n */\n@event(\"input\")\n\n/**\n * Fired when a suggestion item, that is displayed in the suggestion popup, is selected.\n *\n * @event sap.ui.webc.main.Input#suggestion-item-select\n * @param {HTMLElement} item The selected item.\n * @public\n */\n@event(\"suggestion-item-select\", {\n\tdetail: {\n\t\titem: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired when the user navigates to a suggestion item via the ARROW keys,\n * as a preview, before the final selection.\n *\n * @event sap.ui.webc.main.Input#suggestion-item-preview\n * @param {HTMLElement} item The previewed suggestion item.\n * @param {HTMLElement} targetRef The DOM ref of the suggestion item.\n * @public\n * @since 1.0.0-rc.8\n */\n@event(\"suggestion-item-preview\", {\n\tdetail: {\n\t\titem: { type: HTMLElement },\n\t\ttargetRef: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired when the user scrolls the suggestion popover.\n *\n * @event sap.ui.webc.main.Input#suggestion-scroll\n * @param {Integer} scrollTop The current scroll position.\n * @param {HTMLElement} scrollContainer The scroll container.\n * @protected\n * @since 1.0.0-rc.8\n */\n@event(\"suggestion-scroll\", {\n\tdetail: {\n\t\tscrollTop: { type: Integer },\n\t\tscrollContainer: { type: HTMLElement },\n\t},\n})\nclass Input extends UI5Element implements SuggestionComponent, IFormElement {\n\t/**\n\t * Defines whether the component is in disabled state.\n\t * <br><br>\n\t * <b>Note:</b> A disabled component is completely noninteractive.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Input.prototype.disabled\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines if characters within the suggestions are to be highlighted\n\t * in case the input value matches parts of the suggestions text.\n\t * <br><br>\n\t * <b>Note:</b> takes effect when <code>showSuggestions</code> is set to <code>true</code>\n\t *\n\t * @type {boolean}\n\t * @defaultvalue false\n\t * @private\n\t * @since 1.0.0-rc.8\n\t */\n\t@property({ type: Boolean })\n\thighlight!: boolean;\n\n\t/**\n\t * Defines a short hint intended to aid the user with data entry when the\n\t * component has no value.\n\t * @type {string}\n\t * @name sap.ui.webc.main.Input.prototype.placeholder\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\tplaceholder!: string;\n\n\t/**\n\t * Defines whether the component is read-only.\n\t * <br><br>\n\t * <b>Note:</b> A read-only component is not editable,\n\t * but still provides visual feedback upon user interaction.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Input.prototype.readonly\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly!: boolean;\n\n\t/**\n\t * Defines whether the component is required.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Input.prototype.required\n\t * @defaultvalue false\n\t * @public\n\t * @since 1.0.0-rc.3\n\t */\n\t@property({ type: Boolean })\n\trequired!: boolean;\n\n\t/**\n\t * Defines whether the value will be autcompleted to match an item\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Input.prototype.noTypeahead\n\t * @defaultvalue false\n\t * @public\n\t * @since 1.4.0\n\t */\n\t@property({ type: Boolean })\n\tnoTypeahead!: boolean;\n\n\t/**\n\t * Defines the HTML type of the component.\n\t * Available options are: <code>Text</code>, <code>Email</code>,\n\t * <code>Number</code>, <code>Password</code>, <code>Tel</code>, and <code>URL</code>.\n\t * <br><br>\n\t * <b>Notes:</b>\n\t * <ul>\n\t * <li>The particular effect of this property differs depending on the browser\n\t * and the current language settings, especially for type <code>Number</code>.</li>\n\t * <li>The property is mostly intended to be used with touch devices\n\t * that use different soft keyboard layouts depending on the given input type.</li>\n\t * </ul>\n\t *\n\t * @type {sap.ui.webc.main.types.InputType}\n\t * @name sap.ui.webc.main.Input.prototype.type\n\t * @defaultvalue \"Text\"\n\t * @public\n\t */\n\t@property({ type: InputType, defaultValue: InputType.Text })\n\ttype!: InputType;\n\n\t/**\n\t * Defines the value of the component.\n\t * <br><br>\n\t * <b>Note:</b> The property is updated upon typing.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Input.prototype.value\n\t * @defaultvalue \"\"\n\t * @formEvents change input\n\t * @formProperty\n\t * @public\n\t */\n\t@property()\n\tvalue!: string;\n\n\t/**\n\t * Defines the inner stored value of the component.\n\t * <br><br>\n\t * <b>Note:</b> The property is updated upon typing. In some special cases the old value is kept (e.g. deleting the value after the dot in a float)\n\t *\n\t * @type {string}\n\t * @defaultvalue \"\"\n\t * @private\n\t */\n\t@property({ noAttribute: true })\n\t_innerValue!: string;\n\n\t/**\n\t * Defines the value state of the component.\n\t * <br><br>\n\t * Available options are:\n\t * <ul>\n\t * <li><code>None</code></li>\n\t * <li><code>Error</code></li>\n\t * <li><code>Warning</code></li>\n\t * <li><code>Success</code></li>\n\t * <li><code>Information</code></li>\n\t * </ul>\n\t *\n\t * @type {sap.ui.webc.base.types.ValueState}\n\t * @name sap.ui.webc.main.Input.prototype.valueState\n\t * @defaultvalue \"None\"\n\t * @public\n\t */\n\t@property({ type: ValueState, defaultValue: ValueState.None })\n\tvalueState!: ValueState;\n\n\t/**\n\t * Determines the name with which the component will be submitted in an HTML form.\n\t *\n\t * <br><br>\n\t * <b>Important:</b> For the <code>name</code> property to have effect, you must add the following import to your project:\n\t * <code>import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";</code>\n\t *\n\t * <br><br>\n\t * <b>Note:</b> When set, a native <code>input</code> HTML element\n\t * will be created inside the component so that it can be submitted as\n\t * part of an HTML form. Do not use this property unless you need to submit a form.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Input.prototype.name\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\tname!: string;\n\n\t/**\n\t * Defines whether the component should show suggestions, if such are present.\n\t * <br><br>\n\t * <b>Note:</b> You need to import the <code>InputSuggestions</code> module\n\t * from <code>\"@ui5/webcomponents/dist/features/InputSuggestions.js\"</code> to enable this functionality.\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Input.prototype.showSuggestions\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowSuggestions!: boolean;\n\n\t/**\n\t * Sets the maximum number of characters available in the input field.\n\t * <br><br>\n\t * <b>Note:</b> This property is not compatible with the ui5-input type InputType.Number. If the ui5-input type is set to Number, the maxlength value is ignored.\n\t * @type {sap.ui.webc.base.types.Integer}\n\t * @name sap.ui.webc.main.Input.prototype.maxlength\n\t * @since 1.0.0-rc.5\n\t * @public\n\t */\n\t@property({ validator: Integer })\n\tmaxlength?: number;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Input.prototype.accessibleName\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the input.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Input.prototype.accessibleNameRef\n\t * @defaultvalue \"\"\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property({ defaultValue: \"\" })\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines whether the clear icon of the input will be shown.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Input.prototype.showClearIcon\n\t * @defaultvalue false\n\t * @public\n\t * @since 1.2.0\n\t */\n\t@property({ type: Boolean })\n\tshowClearIcon!: boolean;\n\n\t/**\n\t * Defines whether the clear icon is visible.\n\t *\n\t * @type {boolean}\n\t * @defaultvalue false\n\t * @private\n\t * @since 1.2.0\n\t */\n\t@property({ type: Boolean })\n\teffectiveShowClearIcon!: boolean;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused!: boolean;\n\n\t@property({ type: Boolean })\n\topenOnMobile!: boolean;\n\n\t@property({ type: Boolean })\n\topen!: boolean;\n\n\t/**\n\t * Determines whether to manually show the suggestions popover\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_forceOpen!: boolean;\n\n\t/**\n\t * Indicates whether the visual focus is on the value state header\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_isValueStateFocused!: boolean;\n\n\t@property({ type: Object, noAttribute: true })\n\t_inputAccInfo!: AccInfo;\n\n\t@property({ type: Object, noAttribute: true })\n\t_nativeInputAttributes!: NativeInputAttributes;\n\n\t@property({ validator: Integer })\n\t_inputWidth?: number;\n\n\t@property({ validator: Integer })\n\t_listWidth?: number;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_isPopoverOpen!: boolean;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_inputIconFocused!: boolean;\n\n\t/**\n\t * Constantly updated value of texts collected from the associated labels\n\t * @private\n\t */\n\t@property({ type: String, noAttribute: true, defaultValue: undefined })\n\t_associatedLabelsTexts?: string;\n\n\t/**\n\t * Constantly updated value of texts collected from the accessibleNameRef elements\n\t * @private\n\t */\n\t@property({ type: String, noAttribute: true, defaultValue: undefined })\n\t_accessibleLabelsRefTexts?: string;\n\n\t/**\n\t * Defines the suggestion items.\n\t * <br><br>\n\t * Example:\n\t * <br><br>\n\t * &lt;ui5-input show-suggestions><br>\n\t * &nbsp;&nbsp;&nbsp;&nbsp;&lt;ui5-suggestion-item text=\"Item #1\">&lt;/ui5-suggestion-item><br>\n\t * &nbsp;&nbsp;&nbsp;&nbsp;&lt;ui5-suggestion-item text=\"Item #2\">&lt;/ui5-suggestion-item><br>\n\t * &lt;/ui5-input>\n\t * <br>\n\t * <ui5-input show-suggestions>\n\t * <ui5-suggestion-group-item text=\"Group #1\"></ui5-suggestion-group-item>\n\t * <ui5-suggestion-item text=\"Item #1\"></ui5-suggestion-item>\n\t * <ui5-suggestion-item text=\"Item #2\"></ui5-suggestion-item>\n\t * <ui5-suggestion-group-item text=\"Group #2\"></ui5-suggestion-group-item>\n\t * <ui5-suggestion-item text=\"Item #3\"></ui5-suggestion-item>\n\t * <ui5-suggestion-item text=\"Item #4\"></ui5-suggestion-item>\n\t * </ui5-input>\n\t * <br><br>\n\t * <b>Note:</b> The suggestions would be displayed only if the <code>showSuggestions</code>\n\t * property is set to <code>true</code>.\n\t * <br><br>\n\t * <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.\n\t * <br><br>\n\t * <b>Note:</b> Importing the Input Suggestions Support feature:\n\t * <br>\n\t * <code>import \"@ui5/webcomponents/dist/features/InputSuggestions.js\";</code>\n\t * <br>\n\t * automatically imports the <code>&lt;ui5-suggestion-item></code> and <code>&lt;ui5-suggestion-group-item></code> for your convenience.\n\t *\n\t * @type {sap.ui.webc.main.IInputSuggestionItem[]}\n\t * @name sap.ui.webc.main.Input.prototype.default\n\t * @slot suggestionItems\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, \"default\": true })\n\tsuggestionItems!: Array<SuggestionItem>;\n\n\t/**\n\t * Defines the icon to be displayed in the component.\n\t *\n\t * @type {sap.ui.webc.main.IIcon[]}\n\t * @name sap.ui.webc.main.Input.prototype.icon\n\t * @slot\n\t * @public\n\t */\n\t@slot()\n\ticon!: Array<Icon>;\n\n\t/**\n\t * The slot is used for native <code>input</code> HTML element to enable form submit,\n\t * when <code>name</code> property is set.\n\t * @type {HTMLElement[]}\n\t * @private\n\t */\n\t@slot()\n\tformSupport!: Array<HTMLElement>;\n\n\t/**\n\t * Defines the value state message that will be displayed as pop up under the component.\n\t * <br><br>\n\t *\n\t * <b>Note:</b> If not specified, a default text (in the respective language) will be displayed.\n\t * <br><br>\n\t * <b>Note:</b> The <code>valueStateMessage</code> would be displayed,\n\t * when the component is in <code>Information</code>, <code>Warning</code> or <code>Error</code> value state.\n\t * <br><br>\n\t * <b>Note:</b> If the component has <code>suggestionItems</code>,\n\t * the <code>valueStateMessage</code> would be displayed as part of the same popover, if used on desktop, or dialog - on phone.\n\t * @type {HTMLElement[]}\n\t * @name sap.ui.webc.main.Input.prototype.valueStateMessage\n\t * @since 1.0.0-rc.6\n\t * @slot\n\t * @public\n\t */\n\t@slot()\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\thasSuggestionItemSelected: boolean;\n\tvalueBeforeItemSelection: string;\n\tvalueBeforeItemPreview: string\n\tsuggestionSelectionCanceled: boolean;\n\tpreviousValue: string;\n\tfirstRendering: boolean;\n\ttypedInValue: string;\n\tlastConfirmedValue: string\n\tisTyping: boolean\n\tsuggestionsTexts: Array<InputSuggestionText>;\n\t_handleResizeBound: ResizeObserverCallback;\n\t_keepInnerValue: boolean;\n\t_shouldAutocomplete?: boolean;\n\t_keyDown?: boolean;\n\t_isKeyNavigation?: boolean;\n\tSuggestions?: InputSuggestions;\n\tFormSupport?: typeof FormSupportT;\n\t_selectedText?: string;\n\t_clearIconClicked?: boolean;\n\t_focusedAfterClear: boolean;\n\t_performTextSelection?: boolean;\n\t_previewItem?: SuggestionListItem;\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\t\t// Indicates if there is selected suggestionItem.\n\t\tthis.hasSuggestionItemSelected = false;\n\n\t\t// Represents the value before user moves selection from suggestion item to another\n\t\t// and its value is updated after each move.\n\t\t// Note: Used to register and fire \"input\" event upon [SPACE] or [ENTER].\n\t\t// Note: The property \"value\" is updated upon selection move and can`t be used.\n\t\tthis.valueBeforeItemSelection = \"\";\n\n\t\t// Represents the value before user moves selection between the suggestion items\n\t\t// and its value remains the same when the user navigates up or down the list.\n\t\t// Note: Used to cancel selection upon [ESC].\n\t\tthis.valueBeforeItemPreview = \"\";\n\n\t\t// Indicates if the user selection has been canceled with [ESC].\n\t\tthis.suggestionSelectionCanceled = false;\n\n\t\t// tracks the value between focus in and focus out to detect that change event should be fired.\n\t\tthis.previousValue = \"\";\n\n\t\t// Indicates, if the component is rendering for first time.\n\t\tthis.firstRendering = true;\n\n\t\t// The typed in value.\n\t\tthis.typedInValue = \"\";\n\n\t\t// The last value confirmed by the user with \"ENTER\"\n\t\tthis.lastConfirmedValue = \"\";\n\n\t\t// Indicates, if the user is typing. Gets reset once popup is closed\n\t\tthis.isTyping = false;\n\n\t\t// Suggestions array initialization\n\t\tthis.suggestionsTexts = [];\n\n\t\tthis._handleResizeBound = this._handleResize.bind(this);\n\n\t\tthis._keepInnerValue = false;\n\t\tthis._focusedAfterClear = false;\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._handleResizeBound);\n\t\tregisterUI5Element(this, this._updateAssociatedLabelsTexts.bind(this));\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._handleResizeBound);\n\t\tderegisterUI5Element(this);\n\t}\n\n\tonBeforeRendering() {\n\t\tif (!this._keepInnerValue) {\n\t\t\tthis._innerValue = this.value;\n\t\t}\n\n\t\tif (this.showSuggestions) {\n\t\t\tthis.enableSuggestions();\n\t\t\tthis.suggestionsTexts = this.Suggestions!.defaultSlotProperties(this.typedInValue);\n\t\t}\n\n\t\tthis.effectiveShowClearIcon = (this.showClearIcon && !!this.value && !this.readonly && !this.disabled);\n\t\tthis.style.setProperty(\"--_ui5-input-icons-count\", `${this.iconsCount}`);\n\n\t\tthis.FormSupport = getFeature<typeof FormSupportT>(\"FormSupport\");\n\t\tconst hasItems = !!this.suggestionItems.length;\n\t\tconst hasValue = !!this.value;\n\t\tconst isFocused = this.shadowRoot!.querySelector(\"input\") === getActiveElement();\n\n\t\tif (this._isPhone) {\n\t\t\tthis.open = this.openOnMobile;\n\t\t} else if (this._forceOpen) {\n\t\t\tthis.open = true;\n\t\t} else {\n\t\t\tthis.open = hasValue && hasItems && isFocused && this.isTyping;\n\t\t}\n\n\t\tif (this.FormSupport) {\n\t\t\tthis.FormSupport.syncNativeHiddenInput(this);\n\t\t} else if (this.name) {\n\t\t\tconsole.warn(`In order for the \"name\" property to have effect, you should also: import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";`); // eslint-disable-line\n\t\t}\n\n\t\tconst value = this.value;\n\t\tconst innerInput = this.getInputDOMRefSync();\n\n\t\tif (!innerInput || !value) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst autoCompletedChars = innerInput.selectionEnd! - innerInput.selectionStart!;\n\n\t\t// Typehead causes issues on Android devices, so we disable it for now\n\t\t// If there is already a selection the autocomplete has already been performed\n\t\tif (this._shouldAutocomplete && !isAndroid() && !autoCompletedChars && !this._isKeyNavigation) {\n\t\t\tconst item = this._getFirstMatchingItem(value);\n\t\t\tif (item) {\n\t\t\t\tthis._handleTypeAhead(item);\n\t\t\t}\n\t\t}\n\t}\n\n\tasync onAfterRendering() {\n\t\tconst innerInput = this.getInputDOMRefSync()!;\n\n\t\tif (this.Suggestions && this.showSuggestions) {\n\t\t\tthis.Suggestions.toggle(this.open, {\n\t\t\t\tpreventFocusRestore: true,\n\t\t\t});\n\n\t\t\tthis._listWidth = await this.Suggestions._getListWidth();\n\t\t}\n\n\t\tif (this.shouldDisplayOnlyValueStateMessage) {\n\t\t\tthis.openPopover();\n\t\t} else {\n\t\t\tthis.closePopover();\n\t\t}\n\n\t\tif (this._performTextSelection) {\n\t\t\t// this is required to syncronize lit-html input's value and user's input\n\t\t\t// lit-html does not sync its stored value for the value property when the user is typing\n\t\t\tif (innerInput.value !== this._innerValue) {\n\t\t\t\tinnerInput.value = this._innerValue;\n\t\t\t}\n\n\t\t\tif (this.typedInValue.length && this.value.length) {\n\t\t\t\tinnerInput.setSelectionRange(this.typedInValue.length, this.value.length);\n\t\t\t}\n\t\t}\n\n\t\tthis._performTextSelection = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tthis._isKeyNavigation = true;\n\t\tthis._shouldAutocomplete = !this.noTypeahead && !(isBackSpace(e) || isDelete(e) || isEscape(e));\n\n\t\tif (isUp(e)) {\n\t\t\treturn this._handleUp(e);\n\t\t}\n\n\t\tif (isDown(e)) {\n\t\t\treturn this._handleDown(e);\n\t\t}\n\n\t\tif (isSpace(e)) {\n\t\t\treturn this._handleSpace(e);\n\t\t}\n\n\t\tif (isTabNext(e)) {\n\t\t\treturn this._handleTab();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\treturn this._handleEnter(e);\n\t\t}\n\n\t\tif (isPageUp(e)) {\n\t\t\treturn this._handlePageUp(e);\n\t\t}\n\n\t\tif (isPageDown(e)) {\n\t\t\treturn this._handlePageDown(e);\n\t\t}\n\n\t\tif (isHome(e)) {\n\t\t\treturn this._handleHome(e);\n\t\t}\n\n\t\tif (isEnd(e)) {\n\t\t\treturn this._handleEnd(e);\n\t\t}\n\n\t\tif (isEscape(e)) {\n\t\t\treturn this._handleEscape();\n\t\t}\n\n\t\tif (this.showSuggestions) {\n\t\t\tthis._clearPopoverFocusAndSelection();\n\t\t}\n\n\t\tthis._keyDown = true;\n\t\tthis._isKeyNavigation = false;\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\t// The native Delete event does not update the value property \"on time\".\n\t\t// So, the (native) change event is always fired with the old value\n\t\tif (isDelete(e)) {\n\t\t\tthis.value = (e.target as HTMLInputElement).value;\n\t\t}\n\n\t\tthis._keyDown = false;\n\t}\n\n\t_handleUp(e: KeyboardEvent) {\n\t\tif (this.Suggestions && this.Suggestions.isOpened()) {\n\t\t\tthis.Suggestions.onUp(e);\n\t\t}\n\t}\n\n\t_handleDown(e: KeyboardEvent) {\n\t\tif (this.Suggestions && this.Suggestions.isOpened()) {\n\t\t\tthis.Suggestions.onDown(e);\n\t\t}\n\t}\n\n\t_handleSpace(e: KeyboardEvent) {\n\t\tif (this.Suggestions) {\n\t\t\tthis.Suggestions.onSpace(e);\n\t\t}\n\t}\n\n\t_handleTab() {\n\t\tif (this.Suggestions && (this.previousValue !== this.value)) {\n\t\t\tthis.Suggestions.onTab();\n\t\t}\n\t}\n\n\t_handleEnter(e: KeyboardEvent) {\n\t\tconst itemPressed = !!(this.Suggestions && this.Suggestions.onEnter(e));\n\t\tconst innerInput = this.getInputDOMRefSync()!;\n\t\t// Check for autocompleted item\n\t\tconst matchingItem = this.suggestionItems.find(item => {\n\t\t\treturn (item.text && item.text === this.value) || (item.textContent === this.value);\n\t\t});\n\n\t\tif (matchingItem) {\n\t\t\tconst itemText = matchingItem.text ? matchingItem.text : (matchingItem.textContent || \"\");\n\n\t\t\tinnerInput.setSelectionRange(itemText.length, itemText.length);\n\t\t\tif (!itemPressed) {\n\t\t\t\tthis.selectSuggestion(matchingItem, true);\n\t\t\t\tthis.open = false;\n\t\t\t}\n\t\t}\n\n\t\tif (this._isPhone && !this.suggestionItems.length && !this.isTypeNumber) {\n\t\t\tinnerInput.setSelectionRange(this.value.length, this.value.length);\n\t\t}\n\n\t\tif (!itemPressed) {\n\t\t\tthis.lastConfirmedValue = this.value;\n\n\t\t\tif (this.FormSupport) {\n\t\t\t\tthis.FormSupport.triggerFormSubmit(this);\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tthis.focused = true;\n\t}\n\n\t_handlePageUp(e: KeyboardEvent) {\n\t\tif (this._isSuggestionsFocused) {\n\t\t\tthis.Suggestions!.onPageUp(e);\n\t\t} else {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_handlePageDown(e: KeyboardEvent) {\n\t\tif (this._isSuggestionsFocused) {\n\t\t\tthis.Suggestions!.onPageDown(e);\n\t\t} else {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_handleHome(e: KeyboardEvent) {\n\t\tif (this._isSuggestionsFocused) {\n\t\t\tthis.Suggestions!.onHome(e);\n\t\t}\n\t}\n\n\t_handleEnd(e: KeyboardEvent) {\n\t\tif (this._isSuggestionsFocused) {\n\t\t\tthis.Suggestions!.onEnd(e);\n\t\t}\n\t}\n\n\t_handleEscape() {\n\t\tconst hasSuggestions = this.showSuggestions && !!this.Suggestions;\n\t\tconst isOpen = hasSuggestions && this.open;\n\t\tconst innerInput = this.getInputDOMRefSync()!;\n\t\tconst isAutoCompleted = innerInput.selectionEnd! - innerInput.selectionStart! > 0;\n\n\t\tthis.isTyping = false;\n\n\t\tif (!isOpen) {\n\t\t\tthis.value = this.lastConfirmedValue ? this.lastConfirmedValue : this.previousValue;\n\t\t\treturn;\n\t\t}\n\n\t\tif (isOpen && this.Suggestions!._isItemOnTarget()) {\n\t\t\t// Restore the value.\n\t\t\tthis.value = this.typedInValue || this.valueBeforeItemPreview;\n\n\t\t\t// Mark that the selection has been canceled, so the popover can close\n\t\t\t// and not reopen, due to receiving focus.\n\t\t\tthis.suggestionSelectionCanceled = true;\n\t\t\tthis.focused = true;\n\n\t\t\treturn;\n\t\t}\n\n\t\tif (isAutoCompleted) {\n\t\t\tthis.value = this.typedInValue;\n\t\t}\n\n\t\tif (this._isValueStateFocused) {\n\t\t\tthis._isValueStateFocused = false;\n\t\t\tthis.focused = true;\n\t\t}\n\t}\n\n\tasync _onfocusin(e: FocusEvent) {\n\t\tawait this.getInputDOMRef();\n\n\t\tthis.focused = true; // invalidating property\n\n\t\tif (!this._focusedAfterClear) {\n\t\t\tthis.previousValue = this.value;\n\t\t}\n\n\t\tthis.valueBeforeItemPreview = this.value;\n\t\tthis._inputIconFocused = !!e.target && e.target === this.querySelector<Icon>(\"[ui5-icon]\");\n\t\tthis._focusedAfterClear = false;\n\t}\n\n\t_onfocusout(e: FocusEvent) {\n\t\tconst toBeFocused = e.relatedTarget as HTMLElement;\n\t\tconst focusedOutToSuggestions = this.Suggestions && toBeFocused && toBeFocused.shadowRoot && toBeFocused.shadowRoot.contains(this.Suggestions.responsivePopover as Node);\n\t\tconst focusedOutToValueStateMessage = toBeFocused && toBeFocused.shadowRoot && toBeFocused.shadowRoot.querySelector(\".ui5-valuestatemessage-root\");\n\n\t\tthis._keepInnerValue = false;\n\n\t\tif (this.showClearIcon && !this.effectiveShowClearIcon) {\n\t\t\tthis._clearIconClicked = false;\n\t\t\tthis._handleChange();\n\t\t}\n\n\t\t// if focusout is triggered by pressing on suggestion item or value state message popover, skip invalidation, because re-rendering\n\t\t// will happen before \"itemPress\" event, which will make item \"active\" state not visualized\n\t\tif (focusedOutToSuggestions || focusedOutToValueStateMessage) {\n\t\t\te.stopImmediatePropagation();\n\t\t\treturn;\n\t\t}\n\n\t\tif (toBeFocused && (toBeFocused).classList.contains(this._id)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.open = false;\n\t\tthis._clearPopoverFocusAndSelection();\n\n\t\tif (!this._clearIconClicked) {\n\t\t\tthis.previousValue = \"\";\n\t\t}\n\n\t\tthis.lastConfirmedValue = \"\";\n\t\tthis.focused = false; // invalidating property\n\t\tthis.isTyping = false;\n\t\tthis._forceOpen = false;\n\t}\n\n\t_clearPopoverFocusAndSelection() {\n\t\tif (!this.showSuggestions || !this.Suggestions) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._isValueStateFocused = false;\n\t\tthis.hasSuggestionItemSelected = false;\n\n\t\tthis.Suggestions._deselectItems();\n\t\tthis.Suggestions._clearItemFocus();\n\t}\n\n\t_click() {\n\t\tif (isPhone() && !this.readonly && this.Suggestions) {\n\t\t\tthis.blur();\n\t\t\tthis.openOnMobile = true;\n\t\t}\n\t}\n\n\t_handleChange() {\n\t\tif (this._clearIconClicked) {\n\t\t\tthis._clearIconClicked = false;\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.previousValue !== this.getInputDOMRefSync()!.value) {\n\t\t\tthis.fireEvent(INPUT_EVENTS.CHANGE);\n\t\t\tthis.previousValue = this.value;\n\t\t\tthis.typedInValue = this.value;\n\t\t}\n\t}\n\n\t_clear() {\n\t\tthis.value = \"\";\n\t\tthis.fireEvent<InputEventDetail>(INPUT_EVENTS.INPUT);\n\t\tif (!this._isPhone) {\n\t\t\tthis.focus();\n\t\t\tthis._focusedAfterClear = true;\n\t\t}\n\t}\n\n\t_iconMouseDown() {\n\t\tthis._clearIconClicked = true;\n\t}\n\n\t_scroll(e: CustomEvent<PopupScrollEventDetail>) {\n\t\tthis.fireEvent<SuggestionScrollEventDetail>(\"suggestion-scroll\", {\n\t\t\tscrollTop: e.detail.scrollTop,\n\t\t\tscrollContainer: e.detail.targetRef,\n\t\t});\n\t}\n\n\t_handleInput(e: InputEvent | CustomEvent<InputEventDetail>) {\n\t\tconst inputDomRef = this.getInputDOMRefSync();\n\t\tconst emptyValueFiredOnNumberInput = this.value && this.isTypeNumber && !inputDomRef!.value;\n\t\tconst eventType: string = (e as InputEvent).inputType\n\t\t\t|| (e.detail && (e as CustomEvent<InputEventDetail>).detail.inputType!)\n\t\t\t|| \"\";\n\t\tthis._keepInnerValue = false;\n\n\t\tconst allowedEventTypes = [\n\t\t\t\"deleteWordBackward\",\n\t\t\t\"deleteWordForward\",\n\t\t\t\"deleteSoftLineBackward\",\n\t\t\t\"deleteSoftLineForward\",\n\t\t\t\"deleteEntireSoftLine\",\n\t\t\t\"deleteHardLineBackward\",\n\t\t\t\"deleteHardLineForward\",\n\t\t\t\"deleteByDrag\",\n\t\t\t\"deleteByCut\",\n\t\t\t\"deleteContent\",\n\t\t\t\"deleteContentBackward\",\n\t\t\t\"deleteContentForward\",\n\t\t\t\"historyUndo\",\n\t\t];\n\n\t\tthis._shouldAutocomplete = !allowedEventTypes.includes(eventType) && !this.noTypeahead;\n\t\tthis.suggestionSelectionCanceled = false;\n\n\t\tif (e instanceof InputEvent) {\n\t\t\t// ---- Special cases of numeric Input ----\n\t\t\t// ---------------- Start -----------------\n\n\t\t\t// When the last character after the delimiter is removed.\n\t\t\t// In such cases, we want to skip the re-rendering of the\n\t\t\t// component as this leads to cursor repositioning and causes user experience issues.\n\n\t\t\t// There are few scenarios:\n\t\t\t// Example: type \"123.4\" and press BACKSPACE - the native input is firing event with the whole part as value (123).\n\t\t\t// Pressing BACKSPACE again will remove the delimiter and the native input will fire event with the whole part as value again (123).\n\t\t\t// Example: type \"123.456\", select/mark \"456\" and press BACKSPACE - the native input is firing event with the whole part as value (123).\n\t\t\t// Example: type \"123.456\", select/mark \"123.456\" and press BACKSPACE - the native input is firing event with empty value.\n\t\t\tconst delimiterCase = this.isTypeNumber\n\t\t\t\t&& (e.inputType === \"deleteContentForward\" || e.inputType === \"deleteContentBackward\")\n\t\t\t\t&& !(e.target as HTMLInputElement).value.includes(\".\")\n\t\t\t\t&& this.value.includes(\".\");\n\n\t\t\t// Handle special numeric notation with \"e\", example \"12.5e12\"\n\t\t\tconst eNotationCase = emptyValueFiredOnNumberInput && e.data === \"e\";\n\n\t\t\t// Handle special numeric notation with \"-\", example \"-3\"\n\t\t\t// When pressing BACKSPACE, the native input fires event with empty value\n\t\t\tconst minusRemovalCase = emptyValueFiredOnNumberInput\n\t\t\t\t&& this.value.startsWith(\"-\")\n\t\t\t\t&& this.value.length === 2\n\t\t\t\t&& (e.inputType === \"deleteContentForward\" || e.inputType === \"deleteContentBackward\");\n\n\t\t\tif (delimiterCase || eNotationCase || minusRemovalCase) {\n\t\t\t\tthis.value = (e.target as HTMLInputElement).value;\n\t\t\t\tthis._keepInnerValue = true;\n\t\t\t}\n\t\t\t// ----------------- End ------------------\n\t\t}\n\n\t\tif (e.target === inputDomRef) {\n\t\t\tthis.focused = true;\n\n\t\t\t// stop the native event, as the semantic \"input\" would be fired.\n\t\t\te.stopImmediatePropagation();\n\t\t}\n\n\t\tthis.fireEventByAction(INPUT_ACTIONS.ACTION_ENTER, e as InputEvent);\n\n\t\tthis.hasSuggestionItemSelected = false;\n\t\tthis._isValueStateFocused = false;\n\n\t\tif (this.Suggestions) {\n\t\t\tthis.Suggestions.updateSelectedItemPosition(-1);\n\t\t}\n\n\t\tthis.isTyping = true;\n\t}\n\n\t_startsWithMatchingItems(str: string): Array<SuggestionItem> {\n\t\tconst textProp = this.suggestionItems[0].text ? \"text\" : \"textContent\";\n\n\t\treturn StartsWith(str, this.suggestionItems, textProp);\n\t}\n\n\t_getFirstMatchingItem(current: string) {\n\t\tif (!this.suggestionItems.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst matchingItems = this._startsWithMatchingItems(current).filter(item => !item.groupItem);\n\n\t\tif (matchingItems.length) {\n\t\t\treturn matchingItems[0];\n\t\t}\n\t}\n\n\t_handleTypeAhead(item: SuggestionItem) {\n\t\tconst value = item.text ? item.text : item.textContent || \"\";\n\n\t\tthis._innerValue = value;\n\t\tthis.value = value;\n\t\tthis._performTextSelection = true;\n\n\t\tthis._shouldAutocomplete = false;\n\t}\n\n\t_handleResize() {\n\t\tthis._inputWidth = this.offsetWidth;\n\t}\n\n\t_updateAssociatedLabelsTexts() {\n\t\tthis._associatedLabelsTexts = getAssociatedLabelForTexts(this);\n\t\tthis._accessibleLabelsRefTexts = getAllAccessibleNameRefTexts(this);\n\t}\n\n\t_closeRespPopover() {\n\t\tthis.Suggestions!.close(true);\n\t}\n\n\tasync _afterOpenPopover() {\n\t\t// Set initial focus to the native input\n\t\tif (isPhone()) {\n\t\t\t(await this.getInputDOMRef())!.focus();\n\t\t}\n\t}\n\n\t_afterClosePopover() {\n\t\tthis.announceSelectedItem();\n\n\t\t// close device's keyboard and prevent further typing\n\t\tif (isPhone()) {\n\t\t\tthis.blur();\n\t\t\tthis.focused = false;\n\t\t}\n\n\t\tthis.openOnMobile = false;\n\t\tthis.open = false;\n\t\tthis._forceOpen = false;\n\n\t\tif (this.hasSuggestionItemSelected) {\n\t\t\tthis.focus();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the value state popover is open.\n\t * @returns {boolean} true if the value state popover is open, false otherwise\n\t */\n\tisValueStateOpened() {\n\t\treturn !!this._isPopoverOpen;\n\t}\n\n\tasync openPopover() {\n\t\tconst popover = await this._getPopover();\n\n\t\tif (popover) {\n\t\t\tthis._isPopoverOpen = true;\n\t\t\tpopover.showAt(this);\n\t\t}\n\t}\n\n\tasync closePopover() {\n\t\tconst popover = await this._getPopover();\n\n\t\tpopover && popover.close();\n\t}\n\n\tasync _getPopover() {\n\t\tconst staticAreaItem = await this.getStaticAreaItemDomRef();\n\t\treturn staticAreaItem!.querySelector<Popover>(\"[ui5-popover]\")!;\n\t}\n\n\t/**\n\t * Manually opens the suggestions popover, assuming suggestions are enabled. Items must be preloaded for it to open.\n\t * @public\n\t * @method\n\t * @name sap.ui.webc.main.Input#openPicker\n\t * @return {void}\n\t * @since 1.3.0\n\t */\n\topenPicker() {\n\t\tif (!this.suggestionItems.length || this.disabled || this.readonly) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._forceOpen = true;\n\t}\n\n\tenableSuggestions() {\n\t\tif (this.Suggestions) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst Suggestions = getFeature<typeof InputSuggestions>(\"InputSuggestions\");\n\n\t\tif (Suggestions) {\n\t\t\tthis.Suggestions = new Suggestions(this, \"suggestionItems\", true, false);\n\t\t} else {\n\t\t\tthrow new Error(`You have to import \"@ui5/webcomponents/dist/features/InputSuggestions.js\" module to use ui5-input suggestions`);\n\t\t}\n\t}\n\n\tselectSuggestion(item: SuggestionItem, keyboardUsed: boolean) {\n\t\tif (item.groupItem) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst value = this.typedInValue || this.value;\n\t\tconst itemText = item.text || item.textContent || \"\"; // keep textContent for compatibility\n\t\tconst fireInput = keyboardUsed\n\t\t\t? this.valueBeforeItemSelection !== itemText : value !== itemText;\n\n\t\tthis.hasSuggestionItemSelected = true;\n\n\t\tif (fireInput) {\n\t\t\tthis.value = itemText;\n\t\t\tthis.valueBeforeItemSelection = itemText;\n\t\t\tthis.lastConfirmedValue = itemText;\n\n\t\t\tthis._performTextSelection = true;\n\t\t\tthis.hasSuggestionItemSelected = true;\n\t\t\tthis.value = itemText;\n\n\t\t\tthis.fireEvent(INPUT_EVENTS.CHANGE);\n\n\t\t\tif (isPhone()) {\n\t\t\t\tthis.fireEvent(INPUT_EVENTS.INPUT);\n\t\t\t}\n\n\t\t\t// value might change in the change event handler\n\t\t\tthis.typedInValue = this.value;\n\t\t\tthis.previousValue = this.value;\n\t\t}\n\n\t\tthis.valueBeforeItemPreview = \"\";\n\t\tthis.suggestionSelectionCanceled = false;\n\n\t\tthis.fireEvent<SuggestionItemSelectEventDetail>(INPUT_EVENTS.SUGGESTION_ITEM_SELECT, { item });\n\n\t\tthis.isTyping = false;\n\t\tthis.openOnMobile = false;\n\t\tthis._forceOpen = false;\n\t}\n\n\tpreviewSuggestion(item: SuggestionListItem) {\n\t\tthis.valueBeforeItemSelection = this.value;\n\t\tthis.updateValueOnPreview(item);\n\t\tthis.announceSelectedItem();\n\t\tthis._previewItem = item;\n\t}\n\n\t/**\n\t * Updates the input value on item preview.\n\t * @param {Object} item The item that is on preview\n\t */\n\tupdateValueOnPreview(item: SuggestionListItem) {\n\t\tconst noPreview = item.type === \"Inactive\" || item.groupItem;\n\t\tconst itemValue = noPreview ? this.valueBeforeItemPreview : (item.effectiveTitle || item.textContent || \"\");\n\n\t\tthis.value = itemValue;\n\t\tthis._performTextSelection = true;\n\t}\n\n\t/**\n\t * The suggestion item on preview.\n\t * @type {sap.ui.webc.main.IInputSuggestionItem | null}\n\t * @name sap.ui.webc.main.Input.prototype.previewItem\n\t * @readonly\n\t * @public\n\t */\n\tget previewItem() {\n\t\tif (!this._previewItem) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn this.getSuggestionByListItem(this._previewItem);\n\t}\n\n\tasync fireEventByAction(action: INPUT_ACTIONS, e: InputEvent) {\n\t\tif (this.disabled || this.readonly) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst inputValue = await this.getInputValue();\n\t\tconst isUserInput = action === INPUT_ACTIONS.ACTION_ENTER;\n\n\t\tthis.value = inputValue;\n\t\tthis.typedInValue = inputValue;\n\t\tthis.valueBeforeItemPreview = inputValue;\n\n\t\tif (isUserInput) { // input\n\t\t\tthis.fireEvent<InputEventDetail>(INPUT_EVENTS.INPUT, { inputType: e.inputType });\n\t\t\t// Angular two way data binding\n\t\t\tthis.fireEvent(\"value-changed\");\n\t\t}\n\t}\n\n\tasync getInputValue() {\n\t\tconst domRef = this.getDomRef();\n\n\t\tif (domRef) {\n\t\t\treturn (await this.getInputDOMRef())!.value;\n\t\t}\n\t\treturn \"\";\n\t}\n\n\tasync getInputDOMRef() {\n\t\tif (isPhone() && this.Suggestions) {\n\t\t\tawait this.Suggestions._getSuggestionPopover();\n\t\t\treturn this.Suggestions.responsivePopover!.querySelector<Input>(\".ui5-input-inner-phone\")!;\n\t\t}\n\n\t\treturn this.nativeInput;\n\t}\n\n\tgetInputDOMRefSync() {\n\t\tif (isPhone() && this.Suggestions && this.Suggestions.responsivePopover) {\n\t\t\treturn this.Suggestions.responsivePopover.querySelector(\".ui5-input-inner-phone\")!.shadowRoot!.querySelector<HTMLInputElement>(\"input\")!;\n\t\t}\n\n\t\treturn this.nativeInput;\n\t}\n\n\t/**\n\t * Returns a reference to the native input element\n\t * @protected\n\t */\n\tget nativeInput() {\n\t\tconst domRef = this.getDomRef();\n\n\t\treturn domRef ? domRef.querySelector<HTMLInputElement>(`input`) : null;\n\t}\n\n\tget nativeInputWidth() {\n\t\treturn this.nativeInput ? this.nativeInput.offsetWidth : 0;\n\t}\n\n\tgetLabelableElementId() {\n\t\treturn this.getInputId();\n\t}\n\n\tgetSuggestionByListItem(item: SuggestionListItem): SuggestionItem {\n\t\tconst key = parseInt(item.getAttribute(\"data-ui5-key\")!);\n\t\treturn this.suggestionItems[key];\n\t}\n\n\t/**\n\t * Returns if the suggestions popover is scrollable.\n\t * The method returns <code>Promise</code> that resolves to true,\n\t * if the popup is scrollable and false otherwise.\n\t * @returns {Promise}\n\t */\n\tisSuggestionsScrollable() {\n\t\tif (!this.Suggestions) {\n\t\t\treturn Promise.resolve(false);\n\t\t}\n\n\t\treturn this.Suggestions._isScrollable();\n\t}\n\n\tgetInputId() {\n\t\treturn `${this._id}-inner`;\n\t}\n\n\t/* Suggestions interface */\n\tonItemMouseOver(e: MouseEvent) {\n\t\tconst item = e.target as SuggestionListItem;\n\t\tconst suggestion = this.getSuggestionByListItem(item);\n\t\tsuggestion && suggestion.fireEvent(\"mouseover\", {\n\t\t\titem: suggestion,\n\t\t\ttargetRef: item,\n\t\t});\n\t}\n\n\tonItemMouseOut(e: MouseEvent) {\n\t\tconst item = e.target as SuggestionListItem;\n\t\tconst suggestion = this.getSuggestionByListItem(item);\n\t\tsuggestion && suggestion.fireEvent(\"mouseout\", {\n\t\t\titem: suggestion,\n\t\t\ttargetRef: item,\n\t\t});\n\t}\n\n\tonItemMouseDown(e: MouseEvent) {\n\t\te.preventDefault();\n\t}\n\n\tonItemSelected(item: SuggestionItem, keyboardUsed: boolean) {\n\t\tthis.selectSuggestion(item, keyboardUsed);\n\t}\n\n\tonItemPreviewed(item: SuggestionListItem) {\n\t\tthis.previewSuggestion(item);\n\t\tthis.fireEvent<SuggestionItemPreviewEventDetail>(\"suggestion-item-preview\", {\n\t\t\titem: this.getSuggestionByListItem(item),\n\t\t\ttargetRef: item,\n\t\t});\n\t}\n\n\tget valueStateTypeMappings() {\n\t\treturn {\n\t\t\t\"Success\": Input.i18nBundle.getText(VALUE_STATE_TYPE_SUCCESS),\n\t\t\t\"Information\": Input.i18nBundle.getText(VALUE_STATE_TYPE_INFORMATION),\n\t\t\t\"Error\": Input.i18nBundle.getText(VALUE_STATE_TYPE_ERROR),\n\t\t\t\"Warning\": Input.i18nBundle.getText(VALUE_STATE_TYPE_WARNING),\n\t\t};\n\t}\n\n\tvalueStateTextMappings() {\n\t\treturn {\n\t\t\t\"Success\": Input.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t\t\"Information\": Input.i18nBundle.getText(VALUE_STATE_INFORMATION),\n\t\t\t\"Error\": Input.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t\"Warning\": Input.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t};\n\t}\n\n\tannounceSelectedItem() {\n\t\tconst invisibleText = this.shadowRoot!.querySelector(`#${this._id}-selectionText`)!;\n\n\t\tif (this.Suggestions && this.Suggestions._isItemOnTarget()) {\n\t\t\tinvisibleText.textContent = this.itemSelectionAnnounce;\n\t\t} else {\n\t\t\tinvisibleText.textContent = \"\";\n\t\t}\n\t}\n\n\tget _readonly() {\n\t\treturn this.readonly && !this.disabled;\n\t}\n\n\tget _headerTitleText() {\n\t\treturn Input.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);\n\t}\n\n\tget inputType() {\n\t\treturn this.type.toLowerCase();\n\t}\n\n\tget isTypeNumber() {\n\t\treturn this.type === InputType.Number;\n\t}\n\n\tget suggestionsTextId() {\n\t\treturn this.showSuggestions ? `${this._id}-suggestionsText` : \"\";\n\t}\n\n\tget valueStateTextId() {\n\t\treturn this.hasValueState ? `${this._id}-valueStateDesc` : \"\";\n\t}\n\n\tget accInfo() {\n\t\tconst ariaHasPopupDefault = this.showSuggestions ? \"true\" : undefined;\n\t\tconst ariaAutoCompleteDefault = this.showSuggestions ? \"list\" : undefined;\n\t\tconst ariaDescribedBy = this._inputAccInfo.ariaDescribedBy ? `${this.suggestionsTextId} ${this.valueStateTextId} ${this._inputAccInfo.ariaDescribedBy}`.trim() : `${this.suggestionsTextId} ${this.valueStateTextId}`.trim();\n\n\t\tconst info = {\n\t\t\t\"input\": {\n\t\t\t\t\"ariaRoledescription\": this._inputAccInfo && (this._inputAccInfo.ariaRoledescription || undefined),\n\t\t\t\t\"ariaDescribedBy\": ariaDescribedBy || undefined,\n\t\t\t\t\"ariaInvalid\": this.valueState === ValueState.Error ? \"true\" : undefined,\n\t\t\t\t\"ariaHasPopup\": this._inputAccInfo.ariaHasPopup ? this._inputAccInfo.ariaHasPopup : ariaHasPopupDefault,\n\t\t\t\t\"ariaAutoComplete\": this._inputAccInfo.ariaAutoComplete ? this._inputAccInfo.ariaAutoComplete : ariaAutoCompleteDefault,\n\t\t\t\t\"role\": this._inputAccInfo && this._inputAccInfo.role,\n\t\t\t\t\"ariaControls\": this._inputAccInfo && this._inputAccInfo.ariaControls,\n\t\t\t\t\"ariaExpanded\": this._inputAccInfo && this._inputAccInfo.ariaExpanded,\n\t\t\t\t\"ariaDescription\": this._inputAccInfo && this._inputAccInfo.ariaDescription,\n\t\t\t\t\"ariaLabel\": (this._inputAccInfo && this._inputAccInfo.ariaLabel) || this._accessibleLabelsRefTexts || this.accessibleName || this._associatedLabelsTexts || undefined,\n\t\t\t},\n\t\t};\n\t\treturn info;\n\t}\n\n\tget nativeInputAttributes() {\n\t\treturn {\n\t\t\t\"min\": this.isTypeNumber ? this._nativeInputAttributes.min : undefined,\n\t\t\t\"max\": this.isTypeNumber ? this._nativeInputAttributes.max : undefined,\n\t\t\t\"step\": this.isTypeNumber ? (this._nativeInputAttributes.step || \"any\") : undefined,\n\t\t};\n\t}\n\n\tget ariaValueStateHiddenText() {\n\t\tif (!this.hasValueState) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst valueState = this.valueState !== ValueState.None ? this.valueStateTypeMappings[this.valueState] : \"\";\n\n\t\tif (this.shouldDisplayDefaultValueStateMessage) {\n\t\t\treturn this.valueStateText ? `${valueState} ${this.valueStateText}` : valueState;\n\t\t}\n\n\t\treturn `${valueState}`.concat(\" \", this.valueStateMessageText.map(el => el.textContent).join(\" \"));\n\t}\n\n\tget itemSelectionAnnounce() {\n\t\treturn this.Suggestions ? this.Suggestions.itemSelectionAnnounce : \"\";\n\t}\n\n\tget iconsCount(): number {\n\t\tconst slottedIconsCount = this.icon ? this.icon.length : 0;\n\t\tconst clearIconCount = Number(this.effectiveShowClearIcon) ?? 0;\n\t\treturn slottedIconsCount + clearIconCount;\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn {\n\t\t\tpopover: {\n\t\t\t\t\"ui5-suggestions-popover\": !this._isPhone && this.showSuggestions,\n\t\t\t\t\"ui5-suggestions-popover-with-value-state-header\": !this._isPhone && this.showSuggestions && this.hasValueStateMessage,\n\t\t\t},\n\t\t\tpopoverValueState: {\n\t\t\t\t\"ui5-valuestatemessage-root\": true,\n\t\t\t\t\"ui5-valuestatemessage-header\": true,\n\t\t\t\t\"ui5-valuestatemessage--success\": this.valueState === ValueState.Success,\n\t\t\t\t\"ui5-valuestatemessage--error\": this.valueState === ValueState.Error,\n\t\t\t\t\"ui5-valuestatemessage--warning\": this.valueState === ValueState.Warning,\n\t\t\t\t\"ui5-valuestatemessage--information\": this.valueState === ValueState.Information,\n\t\t\t},\n\t\t};\n\t}\n\n\tget styles() {\n\t\tconst remSizeIxPx = parseInt(getComputedStyle(document.documentElement).fontSize);\n\n\t\tconst stylesObject = {\n\t\t\tpopoverHeader: {\n\t\t\t\t\"max-width\": this._inputWidth ? `${this._inputWidth}px` : \"\",\n\t\t\t},\n\t\t\tsuggestionPopoverHeader: {\n\t\t\t\t\"display\": this._listWidth === 0 ? \"none\" : \"inline-block\",\n\t\t\t\t\"width\": this._listWidth ? `${this._listWidth}px` : \"\",\n\t\t\t},\n\t\t\tsuggestionsPopover: {\n\t\t\t\t\"min-width\": this._inputWidth ? `${this._inputWidth}px` : \"\",\n\t\t\t\t\"max-width\": this._inputWidth && (this._inputWidth / remSizeIxPx) > 40 ? `${this._inputWidth}px` : \"40rem\",\n\t\t\t},\n\t\t\tinnerInput: {\n\t\t\t\t\"padding\": \"\",\n\t\t\t},\n\t\t};\n\n\t\treturn stylesObject;\n\t}\n\n\tget suggestionSeparators() {\n\t\treturn \"None\";\n\t}\n\n\tget valueStateMessageText() {\n\t\treturn this.getSlottedNodes(\"valueStateMessage\").map(el => el.cloneNode(true));\n\t}\n\n\tget shouldDisplayOnlyValueStateMessage() {\n\t\treturn this.hasValueStateMessage && !this.readonly && !this.open && this.focused;\n\t}\n\n\tget shouldDisplayDefaultValueStateMessage() {\n\t\treturn !this.valueStateMessage.length && this.hasValueStateMessage;\n\t}\n\n\tget hasValueState() {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget hasValueStateMessage() {\n\t\treturn this.hasValueState && this.valueState !== ValueState.Success\n\t\t\t&& (!this._inputIconFocused // Handles the cases when valueStateMessage is forwarded (from datepicker e.g.)\n\t\t\t\t|| !!(this._isPhone && this.Suggestions)); // Handles Input with suggestions on mobile\n\t}\n\n\tget valueStateText() {\n\t\treturn this.valueState !== ValueState.None ? this.valueStateTextMappings()[this.valueState] : undefined;\n\t}\n\n\tget suggestionsText() {\n\t\treturn Input.i18nBundle.getText(INPUT_SUGGESTIONS);\n\t}\n\n\tget availableSuggestionsCount() {\n\t\tif (this.showSuggestions && (this.value || this.Suggestions!.isOpened())) {\n\t\t\tswitch (this.suggestionsTexts.length) {\n\t\t\tcase 0:\n\t\t\t\treturn Input.i18nBundle.getText(INPUT_SUGGESTIONS_NO_HIT);\n\n\t\t\tcase 1:\n\t\t\t\treturn Input.i18nBundle.getText(INPUT_SUGGESTIONS_ONE_HIT);\n\n\t\t\tdefault:\n\t\t\t\treturn Input.i18nBundle.getText(INPUT_SUGGESTIONS_MORE_HITS, this.suggestionsTexts.length);\n\t\t\t}\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget step() {\n\t\treturn this.isTypeNumber ? \"any\" : undefined;\n\t}\n\n\tget _isPhone() {\n\t\treturn isPhone();\n\t}\n\n\tget _isSuggestionsFocused() {\n\t\treturn !this.focused && this.Suggestions && this.Suggestions.isOpened();\n\t}\n\n\t/**\n\t * Returns the placeholder value.\n\t * @protected\n\t */\n\tget _placeholder() {\n\t\treturn this.placeholder;\n\t}\n\n\t/**\n\t * This method is relevant for sap_horizon theme only\n\t */\n\tget _valueStateInputIcon() {\n\t\tconst iconPerValueState = {\n\t\t\tError: `<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\"/>`,\n\t\t\tWarning: `<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\"/>`,\n\t\t\tSuccess: `<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\"/>`,\n\t\t\tInformation: `<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\"/>`,\n\t\t};\n\n\t\tif (this.valueState !== ValueState.None) {\n\t\t\treturn `\n\t\t\t<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\n\t\t\t\t${iconPerValueState[this.valueState]};\n\t\t\t</svg>\n\t\t\t`;\n\t\t}\n\n\t\treturn \"\";\n\t}\n\n\tget _valueStatePopoverHorizontalAlign() {\n\t\treturn this.effectiveDir !== \"rtl\" ? \"Left\" : \"Right\";\n\t}\n\n\t/**\n\t * This method is relevant for sap_horizon theme only\n\t */\n\tget _valueStateMessageInputIcon() {\n\t\tconst iconPerValueState = {\n\t\t\tError: \"error\",\n\t\t\tWarning: \"alert\",\n\t\t\tSuccess: \"sys-enter-2\",\n\t\t\tInformation: \"information\",\n\t\t};\n\n\t\treturn this.valueState !== ValueState.None ? iconPerValueState[this.valueState] : \"\";\n\t}\n\n\t/**\n\t * Returns the caret position inside the native input\n\t * @protected\n\t */\n\tgetCaretPosition(): number | null {\n\t\treturn getCaretPosition(this.nativeInput!);\n\t}\n\n\t/**\n\t * Sets the caret to a certain position inside the native input\n\t * @protected\n\t * @param pos\n\t */\n\tsetCaretPosition(pos: number | null) {\n\t\tsetCaretPosition(this.nativeInput!, pos);\n\t}\n\n\t/**\n\t * Removes the fractional part of floating-point number.\n\t * @param {string} value the numeric value of Input of type \"Number\"\n\t */\n\tremoveFractionalPart(value: string) {\n\t\tif (value.includes(\".\")) {\n\t\t\treturn value.slice(0, value.indexOf(\".\"));\n\t\t}\n\t\tif (value.includes(\",\")) {\n\t\t\treturn value.slice(0, value.indexOf(\",\"));\n\t\t}\n\n\t\treturn value;\n\t}\n\n\tstatic async onDefine() {\n\t\tconst Suggestions = getFeature<typeof InputSuggestions>(\"InputSuggestions\");\n\n\t\t[Input.i18nBundle] = await Promise.all([\n\t\t\tgetI18nBundle(\"@ui5/webcomponents\"),\n\t\t\tSuggestions ? Suggestions.init() : Promise.resolve(),\n\t\t]);\n\t}\n}\n\nInput.define();\n\nexport default Input;\n"]}
1
+ {"version":3,"file":"Input.js","sourceRoot":"","sources":["../src/Input.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport type { ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport {\n\tisPhone,\n\tisAndroid,\n} from \"@ui5/webcomponents-base/dist/Device.js\";\nimport ValueState from \"@ui5/webcomponents-base/dist/types/ValueState.js\";\nimport { getFeature } from \"@ui5/webcomponents-base/dist/FeaturesRegistry.js\";\nimport {\n\tisUp,\n\tisDown,\n\tisSpace,\n\tisEnter,\n\tisBackSpace,\n\tisDelete,\n\tisEscape,\n\tisTabNext,\n\tisPageUp,\n\tisPageDown,\n\tisHome,\n\tisEnd,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n\tgetAssociatedLabelForTexts,\n\tgetAllAccessibleNameRefTexts,\n\tregisterUI5Element,\n\tderegisterUI5Element,\n} from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport { getCaretPosition, setCaretPosition } from \"@ui5/webcomponents-base/dist/util/Caret.js\";\nimport getActiveElement from \"@ui5/webcomponents-base/dist/util/getActiveElement.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport \"@ui5/webcomponents-icons/dist/not-editable.js\";\nimport \"@ui5/webcomponents-icons/dist/error.js\";\nimport \"@ui5/webcomponents-icons/dist/alert.js\";\nimport \"@ui5/webcomponents-icons/dist/sys-enter-2.js\";\nimport \"@ui5/webcomponents-icons/dist/information.js\";\nimport type SuggestionItem from \"./SuggestionItem.js\";\nimport type { InputSuggestionText, SuggestionComponent } from \"./features/InputSuggestions.js\";\nimport type InputSuggestions from \"./features/InputSuggestions.js\";\nimport type FormSupportT from \"./features/InputElementsFormSupport.js\";\nimport type { IFormElement } from \"./features/InputElementsFormSupport.js\";\nimport type SuggestionListItem from \"./SuggestionListItem.js\";\nimport type { PopupScrollEventDetail } from \"./Popup.js\";\nimport InputType from \"./types/InputType.js\";\nimport Popover from \"./Popover.js\";\nimport Icon from \"./Icon.js\";\n// Templates\nimport InputTemplate from \"./generated/templates/InputTemplate.lit.js\";\nimport InputPopoverTemplate from \"./generated/templates/InputPopoverTemplate.lit.js\";\nimport { StartsWith } from \"./Filters.js\";\n\nimport {\n\tVALUE_STATE_SUCCESS,\n\tVALUE_STATE_INFORMATION,\n\tVALUE_STATE_ERROR,\n\tVALUE_STATE_WARNING,\n\tVALUE_STATE_TYPE_SUCCESS,\n\tVALUE_STATE_TYPE_INFORMATION,\n\tVALUE_STATE_TYPE_ERROR,\n\tVALUE_STATE_TYPE_WARNING,\n\tINPUT_SUGGESTIONS,\n\tINPUT_SUGGESTIONS_TITLE,\n\tINPUT_SUGGESTIONS_ONE_HIT,\n\tINPUT_SUGGESTIONS_MORE_HITS,\n\tINPUT_SUGGESTIONS_NO_HIT,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport inputStyles from \"./generated/themes/Input.css.js\";\nimport ResponsivePopoverCommonCss from \"./generated/themes/ResponsivePopoverCommon.css.js\";\nimport ValueStateMessageCss from \"./generated/themes/ValueStateMessage.css.js\";\nimport SuggestionsCss from \"./generated/themes/Suggestions.css.js\";\n\ntype NativeInputAttributes = {\n\tmin?: number,\n\tmax?: number,\n\tstep?: number\n}\n\ntype AccInfo = {\n\tariaRoledescription?: string,\n\tariaDescribedBy?: string,\n\tariaHasPopup?: string,\n\tariaAutoComplete?: string,\n\trole?: string,\n\tariaControls?: string,\n\tariaExpanded?: string,\n\tariaDescription?: string,\n\tariaLabel?: string,\n}\n\n// all sementic events\nenum INPUT_EVENTS {\n\tCHANGE = \"change\",\n\tINPUT = \"input\",\n\tSUGGESTION_ITEM_SELECT = \"suggestion-item-select\",\n}\n\n// all user interactions\nenum INPUT_ACTIONS {\n\tACTION_ENTER = \"enter\",\n\tACTION_USER_INPUT = \"input\",\n}\n\ntype InputEventDetail = {\n\tinputType?: string;\n}\n\ntype SuggestionItemSelectEventDetail = {\n\titem: SuggestionItem;\n}\n\ntype SuggestionItemPreviewEventDetail = {\n\titem: SuggestionItem;\n\ttargetRef: SuggestionListItem;\n}\n\ntype SuggestionScrollEventDetail = {\n\tscrollTop: number;\n\tscrollContainer: HTMLElement;\n}\n\n/**\n * @class\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>ui5-input</code> component allows the user to enter and edit text or numeric values in one line.\n * <br>\n * Additionally, you can provide <code>suggestionItems</code>,\n * that are displayed in a popover right under the input.\n * <br><br>\n * The text field can be editable or read-only (<code>readonly</code> property),\n * and it can be enabled or disabled (<code>disabled</code> property).\n * To visualize semantic states, such as \"error\" or \"warning\", the <code>valueState</code> property is provided.\n * When the user makes changes to the text, the change event is fired,\n * which enables you to react on any text change.\n * <br><br>\n * <b>Note:</b> If you are using the <code>ui5-input</code> as a single npm module,\n * don't forget to import the <code>InputSuggestions</code> module from\n * \"@ui5/webcomponents/dist/features/InputSuggestions.js\"\n * to enable the suggestions functionality.\n *\n * <h3>Keyboard Handling</h3>\n * The <code>ui5-input</code> provides the following keyboard shortcuts:\n * <br>\n *\n * <ul>\n * <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>\n * <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>\n * <li>[DOWN] - Focuses the next matching item in the suggestion list.</li>\n * <li>[UP] - Focuses the previous matching item in the suggestion list.</li>\n * <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>\n * <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>\n * <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>\n * <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>\n * </ul>\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Input.js\";</code>\n * <br>\n * <code>import \"@ui5/webcomponents/dist/features/InputSuggestions.js\";</code> (optional - for input suggestions support)\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.Input\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-input\n * @appenddocs sap.ui.webc.main.SuggestionItem sap.ui.webc.main.SuggestionGroupItem\n * @implements sap.ui.webc.main.IInput\n * @public\n */\n@customElement({\n\ttag: \"ui5-input\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: InputTemplate,\n\tstaticAreaTemplate: InputPopoverTemplate,\n\tstyles: inputStyles,\n\tstaticAreaStyles: [ResponsivePopoverCommonCss, ValueStateMessageCss, SuggestionsCss],\n\tget dependencies() {\n\t\tconst Suggestions = getFeature<typeof InputSuggestions>(\"InputSuggestions\");\n\t\treturn ([Popover, Icon] as Array<typeof UI5Element>).concat(Suggestions ? Suggestions.dependencies : []);\n\t},\n})\n\n/**\n * Fired when the input operation has finished by pressing Enter or on focusout.\n *\n * @event sap.ui.webc.main.Input#change\n * @public\n */\n@event(\"change\")\n\n/**\n * Fired when the value of the component changes at each keystroke,\n * and when a suggestion item has been selected.\n *\n * @event sap.ui.webc.main.Input#input\n * @public\n */\n@event(\"input\")\n\n/**\n * Fired when a suggestion item, that is displayed in the suggestion popup, is selected.\n *\n * @event sap.ui.webc.main.Input#suggestion-item-select\n * @param {HTMLElement} item The selected item.\n * @public\n */\n@event(\"suggestion-item-select\", {\n\tdetail: {\n\t\titem: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired when the user navigates to a suggestion item via the ARROW keys,\n * as a preview, before the final selection.\n *\n * @event sap.ui.webc.main.Input#suggestion-item-preview\n * @param {HTMLElement} item The previewed suggestion item.\n * @param {HTMLElement} targetRef The DOM ref of the suggestion item.\n * @public\n * @since 1.0.0-rc.8\n */\n@event(\"suggestion-item-preview\", {\n\tdetail: {\n\t\titem: { type: HTMLElement },\n\t\ttargetRef: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired when the user scrolls the suggestion popover.\n *\n * @event sap.ui.webc.main.Input#suggestion-scroll\n * @param {Integer} scrollTop The current scroll position.\n * @param {HTMLElement} scrollContainer The scroll container.\n * @protected\n * @since 1.0.0-rc.8\n */\n@event(\"suggestion-scroll\", {\n\tdetail: {\n\t\tscrollTop: { type: Integer },\n\t\tscrollContainer: { type: HTMLElement },\n\t},\n})\nclass Input extends UI5Element implements SuggestionComponent, IFormElement {\n\t/**\n\t * Defines whether the component is in disabled state.\n\t * <br><br>\n\t * <b>Note:</b> A disabled component is completely noninteractive.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Input.prototype.disabled\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines if characters within the suggestions are to be highlighted\n\t * in case the input value matches parts of the suggestions text.\n\t * <br><br>\n\t * <b>Note:</b> takes effect when <code>showSuggestions</code> is set to <code>true</code>\n\t *\n\t * @type {boolean}\n\t * @defaultvalue false\n\t * @private\n\t * @since 1.0.0-rc.8\n\t */\n\t@property({ type: Boolean })\n\thighlight!: boolean;\n\n\t/**\n\t * Defines a short hint intended to aid the user with data entry when the\n\t * component has no value.\n\t * @type {string}\n\t * @name sap.ui.webc.main.Input.prototype.placeholder\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\tplaceholder!: string;\n\n\t/**\n\t * Defines whether the component is read-only.\n\t * <br><br>\n\t * <b>Note:</b> A read-only component is not editable,\n\t * but still provides visual feedback upon user interaction.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Input.prototype.readonly\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\treadonly!: boolean;\n\n\t/**\n\t * Defines whether the component is required.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Input.prototype.required\n\t * @defaultvalue false\n\t * @public\n\t * @since 1.0.0-rc.3\n\t */\n\t@property({ type: Boolean })\n\trequired!: boolean;\n\n\t/**\n\t * Defines whether the value will be autcompleted to match an item\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Input.prototype.noTypeahead\n\t * @defaultvalue false\n\t * @public\n\t * @since 1.4.0\n\t */\n\t@property({ type: Boolean })\n\tnoTypeahead!: boolean;\n\n\t/**\n\t * Defines the HTML type of the component.\n\t * Available options are: <code>Text</code>, <code>Email</code>,\n\t * <code>Number</code>, <code>Password</code>, <code>Tel</code>, and <code>URL</code>.\n\t * <br><br>\n\t * <b>Notes:</b>\n\t * <ul>\n\t * <li>The particular effect of this property differs depending on the browser\n\t * and the current language settings, especially for type <code>Number</code>.</li>\n\t * <li>The property is mostly intended to be used with touch devices\n\t * that use different soft keyboard layouts depending on the given input type.</li>\n\t * </ul>\n\t *\n\t * @type {sap.ui.webc.main.types.InputType}\n\t * @name sap.ui.webc.main.Input.prototype.type\n\t * @defaultvalue \"Text\"\n\t * @public\n\t */\n\t@property({ type: InputType, defaultValue: InputType.Text })\n\ttype!: InputType;\n\n\t/**\n\t * Defines the value of the component.\n\t * <br><br>\n\t * <b>Note:</b> The property is updated upon typing.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Input.prototype.value\n\t * @defaultvalue \"\"\n\t * @formEvents change input\n\t * @formProperty\n\t * @public\n\t */\n\t@property()\n\tvalue!: string;\n\n\t/**\n\t * Defines the inner stored value of the component.\n\t * <br><br>\n\t * <b>Note:</b> The property is updated upon typing. In some special cases the old value is kept (e.g. deleting the value after the dot in a float)\n\t *\n\t * @type {string}\n\t * @defaultvalue \"\"\n\t * @private\n\t */\n\t@property({ noAttribute: true })\n\t_innerValue!: string;\n\n\t/**\n\t * Defines the value state of the component.\n\t * <br><br>\n\t * Available options are:\n\t * <ul>\n\t * <li><code>None</code></li>\n\t * <li><code>Error</code></li>\n\t * <li><code>Warning</code></li>\n\t * <li><code>Success</code></li>\n\t * <li><code>Information</code></li>\n\t * </ul>\n\t *\n\t * @type {sap.ui.webc.base.types.ValueState}\n\t * @name sap.ui.webc.main.Input.prototype.valueState\n\t * @defaultvalue \"None\"\n\t * @public\n\t */\n\t@property({ type: ValueState, defaultValue: ValueState.None })\n\tvalueState!: ValueState;\n\n\t/**\n\t * Determines the name with which the component will be submitted in an HTML form.\n\t *\n\t * <br><br>\n\t * <b>Important:</b> For the <code>name</code> property to have effect, you must add the following import to your project:\n\t * <code>import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";</code>\n\t *\n\t * <br><br>\n\t * <b>Note:</b> When set, a native <code>input</code> HTML element\n\t * will be created inside the component so that it can be submitted as\n\t * part of an HTML form. Do not use this property unless you need to submit a form.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Input.prototype.name\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\tname!: string;\n\n\t/**\n\t * Defines whether the component should show suggestions, if such are present.\n\t * <br><br>\n\t * <b>Note:</b> You need to import the <code>InputSuggestions</code> module\n\t * from <code>\"@ui5/webcomponents/dist/features/InputSuggestions.js\"</code> to enable this functionality.\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Input.prototype.showSuggestions\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowSuggestions!: boolean;\n\n\t/**\n\t * Sets the maximum number of characters available in the input field.\n\t * <br><br>\n\t * <b>Note:</b> This property is not compatible with the ui5-input type InputType.Number. If the ui5-input type is set to Number, the maxlength value is ignored.\n\t * @type {sap.ui.webc.base.types.Integer}\n\t * @name sap.ui.webc.main.Input.prototype.maxlength\n\t * @since 1.0.0-rc.5\n\t * @public\n\t */\n\t@property({ validator: Integer })\n\tmaxlength?: number;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Input.prototype.accessibleName\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the input.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Input.prototype.accessibleNameRef\n\t * @defaultvalue \"\"\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property({ defaultValue: \"\" })\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines whether the clear icon of the input will be shown.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Input.prototype.showClearIcon\n\t * @defaultvalue false\n\t * @public\n\t * @since 1.2.0\n\t */\n\t@property({ type: Boolean })\n\tshowClearIcon!: boolean;\n\n\t/**\n\t * Defines whether the clear icon is visible.\n\t *\n\t * @type {boolean}\n\t * @defaultvalue false\n\t * @private\n\t * @since 1.2.0\n\t */\n\t@property({ type: Boolean })\n\teffectiveShowClearIcon!: boolean;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused!: boolean;\n\n\t@property({ type: Boolean })\n\topenOnMobile!: boolean;\n\n\t@property({ type: Boolean })\n\topen!: boolean;\n\n\t/**\n\t * Determines whether to manually show the suggestions popover\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_forceOpen!: boolean;\n\n\t/**\n\t * Indicates whether the visual focus is on the value state header\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_isValueStateFocused!: boolean;\n\n\t@property({ type: Object, noAttribute: true })\n\t_inputAccInfo!: AccInfo;\n\n\t@property({ type: Object, noAttribute: true })\n\t_nativeInputAttributes!: NativeInputAttributes;\n\n\t@property({ validator: Integer })\n\t_inputWidth?: number;\n\n\t@property({ validator: Integer })\n\t_listWidth?: number;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_isPopoverOpen!: boolean;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_inputIconFocused!: boolean;\n\n\t/**\n\t * Constantly updated value of texts collected from the associated labels\n\t * @private\n\t */\n\t@property({ type: String, noAttribute: true, defaultValue: undefined })\n\t_associatedLabelsTexts?: string;\n\n\t/**\n\t * Constantly updated value of texts collected from the accessibleNameRef elements\n\t * @private\n\t */\n\t@property({ type: String, noAttribute: true, defaultValue: undefined })\n\t_accessibleLabelsRefTexts?: string;\n\n\t/**\n\t * Defines the suggestion items.\n\t * <br><br>\n\t * Example:\n\t * <br><br>\n\t * &lt;ui5-input show-suggestions><br>\n\t * &nbsp;&nbsp;&nbsp;&nbsp;&lt;ui5-suggestion-item text=\"Item #1\">&lt;/ui5-suggestion-item><br>\n\t * &nbsp;&nbsp;&nbsp;&nbsp;&lt;ui5-suggestion-item text=\"Item #2\">&lt;/ui5-suggestion-item><br>\n\t * &lt;/ui5-input>\n\t * <br>\n\t * <ui5-input show-suggestions>\n\t * <ui5-suggestion-group-item text=\"Group #1\"></ui5-suggestion-group-item>\n\t * <ui5-suggestion-item text=\"Item #1\"></ui5-suggestion-item>\n\t * <ui5-suggestion-item text=\"Item #2\"></ui5-suggestion-item>\n\t * <ui5-suggestion-group-item text=\"Group #2\"></ui5-suggestion-group-item>\n\t * <ui5-suggestion-item text=\"Item #3\"></ui5-suggestion-item>\n\t * <ui5-suggestion-item text=\"Item #4\"></ui5-suggestion-item>\n\t * </ui5-input>\n\t * <br><br>\n\t * <b>Note:</b> The suggestions would be displayed only if the <code>showSuggestions</code>\n\t * property is set to <code>true</code>.\n\t * <br><br>\n\t * <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.\n\t * <br><br>\n\t * <b>Note:</b> Importing the Input Suggestions Support feature:\n\t * <br>\n\t * <code>import \"@ui5/webcomponents/dist/features/InputSuggestions.js\";</code>\n\t * <br>\n\t * automatically imports the <code>&lt;ui5-suggestion-item></code> and <code>&lt;ui5-suggestion-group-item></code> for your convenience.\n\t *\n\t * @type {sap.ui.webc.main.IInputSuggestionItem[]}\n\t * @name sap.ui.webc.main.Input.prototype.default\n\t * @slot suggestionItems\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, \"default\": true })\n\tsuggestionItems!: Array<SuggestionItem>;\n\n\t/**\n\t * Defines the icon to be displayed in the component.\n\t *\n\t * @type {sap.ui.webc.main.IIcon[]}\n\t * @name sap.ui.webc.main.Input.prototype.icon\n\t * @slot\n\t * @public\n\t */\n\t@slot()\n\ticon!: Array<Icon>;\n\n\t/**\n\t * The slot is used for native <code>input</code> HTML element to enable form submit,\n\t * when <code>name</code> property is set.\n\t * @type {HTMLElement[]}\n\t * @private\n\t */\n\t@slot()\n\tformSupport!: Array<HTMLElement>;\n\n\t/**\n\t * Defines the value state message that will be displayed as pop up under the component.\n\t * <br><br>\n\t *\n\t * <b>Note:</b> If not specified, a default text (in the respective language) will be displayed.\n\t * <br><br>\n\t * <b>Note:</b> The <code>valueStateMessage</code> would be displayed,\n\t * when the component is in <code>Information</code>, <code>Warning</code> or <code>Error</code> value state.\n\t * <br><br>\n\t * <b>Note:</b> If the component has <code>suggestionItems</code>,\n\t * the <code>valueStateMessage</code> would be displayed as part of the same popover, if used on desktop, or dialog - on phone.\n\t * @type {HTMLElement[]}\n\t * @name sap.ui.webc.main.Input.prototype.valueStateMessage\n\t * @since 1.0.0-rc.6\n\t * @slot\n\t * @public\n\t */\n\t@slot()\n\tvalueStateMessage!: Array<HTMLElement>;\n\n\thasSuggestionItemSelected: boolean;\n\tvalueBeforeItemSelection: string;\n\tvalueBeforeItemPreview: string\n\tsuggestionSelectionCanceled: boolean;\n\tpreviousValue: string;\n\tfirstRendering: boolean;\n\ttypedInValue: string;\n\tlastConfirmedValue: string\n\tisTyping: boolean\n\tsuggestionsTexts: Array<InputSuggestionText>;\n\t_handleResizeBound: ResizeObserverCallback;\n\t_keepInnerValue: boolean;\n\t_shouldAutocomplete?: boolean;\n\t_keyDown?: boolean;\n\t_isKeyNavigation?: boolean;\n\tSuggestions?: InputSuggestions;\n\tFormSupport?: typeof FormSupportT;\n\t_selectedText?: string;\n\t_clearIconClicked?: boolean;\n\t_focusedAfterClear: boolean;\n\t_performTextSelection?: boolean;\n\t_previewItem?: SuggestionListItem;\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\t\t// Indicates if there is selected suggestionItem.\n\t\tthis.hasSuggestionItemSelected = false;\n\n\t\t// Represents the value before user moves selection from suggestion item to another\n\t\t// and its value is updated after each move.\n\t\t// Note: Used to register and fire \"input\" event upon [SPACE] or [ENTER].\n\t\t// Note: The property \"value\" is updated upon selection move and can`t be used.\n\t\tthis.valueBeforeItemSelection = \"\";\n\n\t\t// Represents the value before user moves selection between the suggestion items\n\t\t// and its value remains the same when the user navigates up or down the list.\n\t\t// Note: Used to cancel selection upon [ESC].\n\t\tthis.valueBeforeItemPreview = \"\";\n\n\t\t// Indicates if the user selection has been canceled with [ESC].\n\t\tthis.suggestionSelectionCanceled = false;\n\n\t\t// tracks the value between focus in and focus out to detect that change event should be fired.\n\t\tthis.previousValue = \"\";\n\n\t\t// Indicates, if the component is rendering for first time.\n\t\tthis.firstRendering = true;\n\n\t\t// The typed in value.\n\t\tthis.typedInValue = \"\";\n\n\t\t// The last value confirmed by the user with \"ENTER\"\n\t\tthis.lastConfirmedValue = \"\";\n\n\t\t// Indicates, if the user is typing. Gets reset once popup is closed\n\t\tthis.isTyping = false;\n\n\t\t// Suggestions array initialization\n\t\tthis.suggestionsTexts = [];\n\n\t\tthis._handleResizeBound = this._handleResize.bind(this);\n\n\t\tthis._keepInnerValue = false;\n\t\tthis._focusedAfterClear = false;\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._handleResizeBound);\n\t\tregisterUI5Element(this, this._updateAssociatedLabelsTexts.bind(this));\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._handleResizeBound);\n\t\tderegisterUI5Element(this);\n\t}\n\n\tonBeforeRendering() {\n\t\tif (!this._keepInnerValue) {\n\t\t\tthis._innerValue = this.value;\n\t\t}\n\n\t\tif (this.showSuggestions) {\n\t\t\tthis.enableSuggestions();\n\t\t\tthis.suggestionsTexts = this.Suggestions!.defaultSlotProperties(this.typedInValue);\n\t\t}\n\n\t\tthis.effectiveShowClearIcon = (this.showClearIcon && !!this.value && !this.readonly && !this.disabled);\n\t\tthis.style.setProperty(\"--_ui5-input-icons-count\", `${this.iconsCount}`);\n\n\t\tthis.FormSupport = getFeature<typeof FormSupportT>(\"FormSupport\");\n\t\tconst hasItems = !!this.suggestionItems.length;\n\t\tconst hasValue = !!this.value;\n\t\tconst isFocused = this.shadowRoot!.querySelector(\"input\") === getActiveElement();\n\n\t\tif (this._isPhone) {\n\t\t\tthis.open = this.openOnMobile;\n\t\t} else if (this._forceOpen) {\n\t\t\tthis.open = true;\n\t\t} else {\n\t\t\tthis.open = hasValue && hasItems && isFocused && this.isTyping;\n\t\t}\n\n\t\tif (this.FormSupport) {\n\t\t\tthis.FormSupport.syncNativeHiddenInput(this);\n\t\t} else if (this.name) {\n\t\t\tconsole.warn(`In order for the \"name\" property to have effect, you should also: import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";`); // eslint-disable-line\n\t\t}\n\n\t\tconst value = this.value;\n\t\tconst innerInput = this.getInputDOMRefSync();\n\n\t\tif (!innerInput || !value) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst autoCompletedChars = innerInput.selectionEnd! - innerInput.selectionStart!;\n\n\t\t// Typehead causes issues on Android devices, so we disable it for now\n\t\t// If there is already a selection the autocomplete has already been performed\n\t\tif (this._shouldAutocomplete && !isAndroid() && !autoCompletedChars && !this._isKeyNavigation) {\n\t\t\tconst item = this._getFirstMatchingItem(value);\n\t\t\tif (item) {\n\t\t\t\tthis._handleTypeAhead(item);\n\t\t\t}\n\t\t}\n\t}\n\n\tasync onAfterRendering() {\n\t\tconst innerInput = this.getInputDOMRefSync()!;\n\n\t\tif (this.Suggestions && this.showSuggestions) {\n\t\t\tthis.Suggestions.toggle(this.open, {\n\t\t\t\tpreventFocusRestore: true,\n\t\t\t});\n\n\t\t\tthis._listWidth = await this.Suggestions._getListWidth();\n\t\t}\n\n\t\tif (this.shouldDisplayOnlyValueStateMessage) {\n\t\t\tthis.openPopover();\n\t\t} else {\n\t\t\tthis.closePopover();\n\t\t}\n\n\t\tif (this._performTextSelection) {\n\t\t\t// this is required to syncronize lit-html input's value and user's input\n\t\t\t// lit-html does not sync its stored value for the value property when the user is typing\n\t\t\tif (innerInput.value !== this._innerValue) {\n\t\t\t\tinnerInput.value = this._innerValue;\n\t\t\t}\n\n\t\t\tif (this.typedInValue.length && this.value.length) {\n\t\t\t\tinnerInput.setSelectionRange(this.typedInValue.length, this.value.length);\n\t\t\t}\n\t\t}\n\n\t\tthis._performTextSelection = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tthis._isKeyNavigation = true;\n\t\tthis._shouldAutocomplete = !this.noTypeahead && !(isBackSpace(e) || isDelete(e) || isEscape(e));\n\n\t\tif (isUp(e)) {\n\t\t\treturn this._handleUp(e);\n\t\t}\n\n\t\tif (isDown(e)) {\n\t\t\treturn this._handleDown(e);\n\t\t}\n\n\t\tif (isSpace(e)) {\n\t\t\treturn this._handleSpace(e);\n\t\t}\n\n\t\tif (isTabNext(e)) {\n\t\t\treturn this._handleTab();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\treturn this._handleEnter(e);\n\t\t}\n\n\t\tif (isPageUp(e)) {\n\t\t\treturn this._handlePageUp(e);\n\t\t}\n\n\t\tif (isPageDown(e)) {\n\t\t\treturn this._handlePageDown(e);\n\t\t}\n\n\t\tif (isHome(e)) {\n\t\t\treturn this._handleHome(e);\n\t\t}\n\n\t\tif (isEnd(e)) {\n\t\t\treturn this._handleEnd(e);\n\t\t}\n\n\t\tif (isEscape(e)) {\n\t\t\treturn this._handleEscape();\n\t\t}\n\n\t\tif (this.showSuggestions) {\n\t\t\tthis._clearPopoverFocusAndSelection();\n\t\t}\n\n\t\tthis._keyDown = true;\n\t\tthis._isKeyNavigation = false;\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\t// The native Delete event does not update the value property \"on time\".\n\t\t// So, the (native) change event is always fired with the old value\n\t\tif (isDelete(e)) {\n\t\t\tthis.value = (e.target as HTMLInputElement).value;\n\t\t}\n\n\t\tthis._keyDown = false;\n\t}\n\n\t_handleUp(e: KeyboardEvent) {\n\t\tif (this.Suggestions && this.Suggestions.isOpened()) {\n\t\t\tthis.Suggestions.onUp(e);\n\t\t}\n\t}\n\n\t_handleDown(e: KeyboardEvent) {\n\t\tif (this.Suggestions && this.Suggestions.isOpened()) {\n\t\t\tthis.Suggestions.onDown(e);\n\t\t}\n\t}\n\n\t_handleSpace(e: KeyboardEvent) {\n\t\tif (this.Suggestions) {\n\t\t\tthis.Suggestions.onSpace(e);\n\t\t}\n\t}\n\n\t_handleTab() {\n\t\tif (this.Suggestions && (this.previousValue !== this.value)) {\n\t\t\tthis.Suggestions.onTab();\n\t\t}\n\t}\n\n\t_handleEnter(e: KeyboardEvent) {\n\t\tconst itemPressed = !!(this.Suggestions && this.Suggestions.onEnter(e));\n\t\tconst innerInput = this.getInputDOMRefSync()!;\n\t\t// Check for autocompleted item\n\t\tconst matchingItem = this.suggestionItems.find(item => {\n\t\t\treturn (item.text && item.text === this.value) || (item.textContent === this.value);\n\t\t});\n\n\t\tif (matchingItem) {\n\t\t\tconst itemText = matchingItem.text ? matchingItem.text : (matchingItem.textContent || \"\");\n\n\t\t\tinnerInput.setSelectionRange(itemText.length, itemText.length);\n\t\t\tif (!itemPressed) {\n\t\t\t\tthis.selectSuggestion(matchingItem, true);\n\t\t\t\tthis.open = false;\n\t\t\t}\n\t\t}\n\n\t\tif (this._isPhone && !this.suggestionItems.length && !this.isTypeNumber) {\n\t\t\tinnerInput.setSelectionRange(this.value.length, this.value.length);\n\t\t}\n\n\t\tif (!itemPressed) {\n\t\t\tthis.lastConfirmedValue = this.value;\n\n\t\t\tif (this.FormSupport) {\n\t\t\t\tthis.FormSupport.triggerFormSubmit(this);\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tthis.focused = true;\n\t}\n\n\t_handlePageUp(e: KeyboardEvent) {\n\t\tif (this._isSuggestionsFocused) {\n\t\t\tthis.Suggestions!.onPageUp(e);\n\t\t} else {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_handlePageDown(e: KeyboardEvent) {\n\t\tif (this._isSuggestionsFocused) {\n\t\t\tthis.Suggestions!.onPageDown(e);\n\t\t} else {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_handleHome(e: KeyboardEvent) {\n\t\tif (this._isSuggestionsFocused) {\n\t\t\tthis.Suggestions!.onHome(e);\n\t\t}\n\t}\n\n\t_handleEnd(e: KeyboardEvent) {\n\t\tif (this._isSuggestionsFocused) {\n\t\t\tthis.Suggestions!.onEnd(e);\n\t\t}\n\t}\n\n\t_handleEscape() {\n\t\tconst hasSuggestions = this.showSuggestions && !!this.Suggestions;\n\t\tconst isOpen = hasSuggestions && this.open;\n\t\tconst innerInput = this.getInputDOMRefSync()!;\n\t\tconst isAutoCompleted = innerInput.selectionEnd! - innerInput.selectionStart! > 0;\n\n\t\tthis.isTyping = false;\n\n\t\tif (!isOpen) {\n\t\t\tthis.value = this.lastConfirmedValue ? this.lastConfirmedValue : this.previousValue;\n\t\t\treturn;\n\t\t}\n\n\t\tif (isOpen && this.Suggestions!._isItemOnTarget()) {\n\t\t\t// Restore the value.\n\t\t\tthis.value = this.typedInValue || this.valueBeforeItemPreview;\n\n\t\t\t// Mark that the selection has been canceled, so the popover can close\n\t\t\t// and not reopen, due to receiving focus.\n\t\t\tthis.suggestionSelectionCanceled = true;\n\t\t\tthis.focused = true;\n\n\t\t\treturn;\n\t\t}\n\n\t\tif (isAutoCompleted) {\n\t\t\tthis.value = this.typedInValue;\n\t\t}\n\n\t\tif (this._isValueStateFocused) {\n\t\t\tthis._isValueStateFocused = false;\n\t\t\tthis.focused = true;\n\t\t}\n\t}\n\n\tasync _onfocusin(e: FocusEvent) {\n\t\tawait this.getInputDOMRef();\n\n\t\tthis.focused = true; // invalidating property\n\n\t\tif (!this._focusedAfterClear) {\n\t\t\tthis.previousValue = this.value;\n\t\t}\n\n\t\tthis.valueBeforeItemPreview = this.value;\n\t\tthis._inputIconFocused = !!e.target && e.target === this.querySelector<Icon>(\"[ui5-icon]\");\n\t\tthis._focusedAfterClear = false;\n\t}\n\n\t/**\n\t * Called on \"focusin\" of the native input HTML Element.\n\t * <b>Note:</b> implemented in MultiInput, but used in the Input template.\n\t */\n\tinnerFocusIn(): void | undefined {}\n\n\t_onfocusout(e: FocusEvent) {\n\t\tconst toBeFocused = e.relatedTarget as HTMLElement;\n\t\tconst focusedOutToSuggestions = this.Suggestions && toBeFocused && toBeFocused.shadowRoot && toBeFocused.shadowRoot.contains(this.Suggestions.responsivePopover as Node);\n\t\tconst focusedOutToValueStateMessage = toBeFocused && toBeFocused.shadowRoot && toBeFocused.shadowRoot.querySelector(\".ui5-valuestatemessage-root\");\n\n\t\tthis._keepInnerValue = false;\n\n\t\tif (this.showClearIcon && !this.effectiveShowClearIcon) {\n\t\t\tthis._clearIconClicked = false;\n\t\t\tthis._handleChange();\n\t\t}\n\n\t\t// if focusout is triggered by pressing on suggestion item or value state message popover, skip invalidation, because re-rendering\n\t\t// will happen before \"itemPress\" event, which will make item \"active\" state not visualized\n\t\tif (focusedOutToSuggestions || focusedOutToValueStateMessage) {\n\t\t\te.stopImmediatePropagation();\n\t\t\treturn;\n\t\t}\n\n\t\tif (toBeFocused && (toBeFocused).classList.contains(this._id)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.open = false;\n\t\tthis._clearPopoverFocusAndSelection();\n\n\t\tif (!this._clearIconClicked) {\n\t\t\tthis.previousValue = \"\";\n\t\t}\n\n\t\tthis.lastConfirmedValue = \"\";\n\t\tthis.focused = false; // invalidating property\n\t\tthis.isTyping = false;\n\t\tthis._forceOpen = false;\n\t}\n\n\t_clearPopoverFocusAndSelection() {\n\t\tif (!this.showSuggestions || !this.Suggestions) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._isValueStateFocused = false;\n\t\tthis.hasSuggestionItemSelected = false;\n\n\t\tthis.Suggestions._deselectItems();\n\t\tthis.Suggestions._clearItemFocus();\n\t}\n\n\t_click() {\n\t\tif (isPhone() && !this.readonly && this.Suggestions) {\n\t\t\tthis.blur();\n\t\t\tthis.openOnMobile = true;\n\t\t}\n\t}\n\n\t_handleChange() {\n\t\tif (this._clearIconClicked) {\n\t\t\tthis._clearIconClicked = false;\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.previousValue !== this.getInputDOMRefSync()!.value) {\n\t\t\tthis.fireEvent(INPUT_EVENTS.CHANGE);\n\t\t\tthis.previousValue = this.value;\n\t\t\tthis.typedInValue = this.value;\n\t\t}\n\t}\n\n\t_clear() {\n\t\tthis.value = \"\";\n\t\tthis.fireEvent<InputEventDetail>(INPUT_EVENTS.INPUT);\n\t\tif (!this._isPhone) {\n\t\t\tthis.focus();\n\t\t\tthis._focusedAfterClear = true;\n\t\t}\n\t}\n\n\t_iconMouseDown() {\n\t\tthis._clearIconClicked = true;\n\t}\n\n\t_scroll(e: CustomEvent<PopupScrollEventDetail>) {\n\t\tthis.fireEvent<SuggestionScrollEventDetail>(\"suggestion-scroll\", {\n\t\t\tscrollTop: e.detail.scrollTop,\n\t\t\tscrollContainer: e.detail.targetRef,\n\t\t});\n\t}\n\n\t_handleInput(e: InputEvent | CustomEvent<InputEventDetail>) {\n\t\tconst inputDomRef = this.getInputDOMRefSync();\n\t\tconst emptyValueFiredOnNumberInput = this.value && this.isTypeNumber && !inputDomRef!.value;\n\t\tconst eventType: string = (e as InputEvent).inputType\n\t\t\t|| (e.detail && (e as CustomEvent<InputEventDetail>).detail.inputType!)\n\t\t\t|| \"\";\n\t\tthis._keepInnerValue = false;\n\n\t\tconst allowedEventTypes = [\n\t\t\t\"deleteWordBackward\",\n\t\t\t\"deleteWordForward\",\n\t\t\t\"deleteSoftLineBackward\",\n\t\t\t\"deleteSoftLineForward\",\n\t\t\t\"deleteEntireSoftLine\",\n\t\t\t\"deleteHardLineBackward\",\n\t\t\t\"deleteHardLineForward\",\n\t\t\t\"deleteByDrag\",\n\t\t\t\"deleteByCut\",\n\t\t\t\"deleteContent\",\n\t\t\t\"deleteContentBackward\",\n\t\t\t\"deleteContentForward\",\n\t\t\t\"historyUndo\",\n\t\t];\n\n\t\tthis._shouldAutocomplete = !allowedEventTypes.includes(eventType) && !this.noTypeahead;\n\t\tthis.suggestionSelectionCanceled = false;\n\n\t\tif (e instanceof InputEvent) {\n\t\t\t// ---- Special cases of numeric Input ----\n\t\t\t// ---------------- Start -----------------\n\n\t\t\t// When the last character after the delimiter is removed.\n\t\t\t// In such cases, we want to skip the re-rendering of the\n\t\t\t// component as this leads to cursor repositioning and causes user experience issues.\n\n\t\t\t// There are few scenarios:\n\t\t\t// Example: type \"123.4\" and press BACKSPACE - the native input is firing event with the whole part as value (123).\n\t\t\t// Pressing BACKSPACE again will remove the delimiter and the native input will fire event with the whole part as value again (123).\n\t\t\t// Example: type \"123.456\", select/mark \"456\" and press BACKSPACE - the native input is firing event with the whole part as value (123).\n\t\t\t// Example: type \"123.456\", select/mark \"123.456\" and press BACKSPACE - the native input is firing event with empty value.\n\t\t\tconst delimiterCase = this.isTypeNumber\n\t\t\t\t&& (e.inputType === \"deleteContentForward\" || e.inputType === \"deleteContentBackward\")\n\t\t\t\t&& !(e.target as HTMLInputElement).value.includes(\".\")\n\t\t\t\t&& this.value.includes(\".\");\n\n\t\t\t// Handle special numeric notation with \"e\", example \"12.5e12\"\n\t\t\tconst eNotationCase = emptyValueFiredOnNumberInput && e.data === \"e\";\n\n\t\t\t// Handle special numeric notation with \"-\", example \"-3\"\n\t\t\t// When pressing BACKSPACE, the native input fires event with empty value\n\t\t\tconst minusRemovalCase = emptyValueFiredOnNumberInput\n\t\t\t\t&& this.value.startsWith(\"-\")\n\t\t\t\t&& this.value.length === 2\n\t\t\t\t&& (e.inputType === \"deleteContentForward\" || e.inputType === \"deleteContentBackward\");\n\n\t\t\tif (delimiterCase || eNotationCase || minusRemovalCase) {\n\t\t\t\tthis.value = (e.target as HTMLInputElement).value;\n\t\t\t\tthis._keepInnerValue = true;\n\t\t\t}\n\t\t\t// ----------------- End ------------------\n\t\t}\n\n\t\tif (e.target === inputDomRef) {\n\t\t\tthis.focused = true;\n\n\t\t\t// stop the native event, as the semantic \"input\" would be fired.\n\t\t\te.stopImmediatePropagation();\n\t\t}\n\n\t\tthis.fireEventByAction(INPUT_ACTIONS.ACTION_ENTER, e as InputEvent);\n\n\t\tthis.hasSuggestionItemSelected = false;\n\t\tthis._isValueStateFocused = false;\n\n\t\tif (this.Suggestions) {\n\t\t\tthis.Suggestions.updateSelectedItemPosition(-1);\n\t\t}\n\n\t\tthis.isTyping = true;\n\t}\n\n\t_startsWithMatchingItems(str: string): Array<SuggestionItem> {\n\t\tconst textProp = this.suggestionItems[0].text ? \"text\" : \"textContent\";\n\n\t\treturn StartsWith(str, this.suggestionItems, textProp);\n\t}\n\n\t_getFirstMatchingItem(current: string) {\n\t\tif (!this.suggestionItems.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst matchingItems = this._startsWithMatchingItems(current).filter(item => !item.groupItem);\n\n\t\tif (matchingItems.length) {\n\t\t\treturn matchingItems[0];\n\t\t}\n\t}\n\n\t_handleTypeAhead(item: SuggestionItem) {\n\t\tconst value = item.text ? item.text : item.textContent || \"\";\n\n\t\tthis._innerValue = value;\n\t\tthis.value = value;\n\t\tthis._performTextSelection = true;\n\n\t\tthis._shouldAutocomplete = false;\n\t}\n\n\t_handleResize() {\n\t\tthis._inputWidth = this.offsetWidth;\n\t}\n\n\t_updateAssociatedLabelsTexts() {\n\t\tthis._associatedLabelsTexts = getAssociatedLabelForTexts(this);\n\t\tthis._accessibleLabelsRefTexts = getAllAccessibleNameRefTexts(this);\n\t}\n\n\t_closeRespPopover() {\n\t\tthis.Suggestions!.close(true);\n\t}\n\n\tasync _afterOpenPopover() {\n\t\t// Set initial focus to the native input\n\t\tif (isPhone()) {\n\t\t\t(await this.getInputDOMRef())!.focus();\n\t\t}\n\t}\n\n\t_afterClosePopover() {\n\t\tthis.announceSelectedItem();\n\n\t\t// close device's keyboard and prevent further typing\n\t\tif (isPhone()) {\n\t\t\tthis.blur();\n\t\t\tthis.focused = false;\n\t\t}\n\n\t\tthis.openOnMobile = false;\n\t\tthis.open = false;\n\t\tthis._forceOpen = false;\n\n\t\tif (this.hasSuggestionItemSelected) {\n\t\t\tthis.focus();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the value state popover is open.\n\t * @returns {boolean} true if the value state popover is open, false otherwise\n\t */\n\tisValueStateOpened() {\n\t\treturn !!this._isPopoverOpen;\n\t}\n\n\tasync openPopover() {\n\t\tconst popover = await this._getPopover();\n\n\t\tif (popover) {\n\t\t\tthis._isPopoverOpen = true;\n\t\t\tpopover.showAt(this);\n\t\t}\n\t}\n\n\tasync closePopover() {\n\t\tconst popover = await this._getPopover();\n\n\t\tpopover && popover.close();\n\t}\n\n\tasync _getPopover() {\n\t\tconst staticAreaItem = await this.getStaticAreaItemDomRef();\n\t\treturn staticAreaItem!.querySelector<Popover>(\"[ui5-popover]\")!;\n\t}\n\n\t/**\n\t * Manually opens the suggestions popover, assuming suggestions are enabled. Items must be preloaded for it to open.\n\t * @public\n\t * @method\n\t * @name sap.ui.webc.main.Input#openPicker\n\t * @return {void}\n\t * @since 1.3.0\n\t */\n\topenPicker() {\n\t\tif (!this.suggestionItems.length || this.disabled || this.readonly) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._forceOpen = true;\n\t}\n\n\tenableSuggestions() {\n\t\tif (this.Suggestions) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst Suggestions = getFeature<typeof InputSuggestions>(\"InputSuggestions\");\n\n\t\tif (Suggestions) {\n\t\t\tthis.Suggestions = new Suggestions(this, \"suggestionItems\", true, false);\n\t\t} else {\n\t\t\tthrow new Error(`You have to import \"@ui5/webcomponents/dist/features/InputSuggestions.js\" module to use ui5-input suggestions`);\n\t\t}\n\t}\n\n\tselectSuggestion(item: SuggestionItem, keyboardUsed: boolean) {\n\t\tif (item.groupItem) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst value = this.typedInValue || this.value;\n\t\tconst itemText = item.text || item.textContent || \"\"; // keep textContent for compatibility\n\t\tconst fireInput = keyboardUsed\n\t\t\t? this.valueBeforeItemSelection !== itemText : value !== itemText;\n\n\t\tthis.hasSuggestionItemSelected = true;\n\n\t\tif (fireInput) {\n\t\t\tthis.value = itemText;\n\t\t\tthis.valueBeforeItemSelection = itemText;\n\t\t\tthis.lastConfirmedValue = itemText;\n\n\t\t\tthis._performTextSelection = true;\n\t\t\tthis.hasSuggestionItemSelected = true;\n\t\t\tthis.value = itemText;\n\n\t\t\tthis.fireEvent(INPUT_EVENTS.CHANGE);\n\n\t\t\tif (isPhone()) {\n\t\t\t\tthis.fireEvent(INPUT_EVENTS.INPUT);\n\t\t\t}\n\n\t\t\t// value might change in the change event handler\n\t\t\tthis.typedInValue = this.value;\n\t\t\tthis.previousValue = this.value;\n\t\t}\n\n\t\tthis.valueBeforeItemPreview = \"\";\n\t\tthis.suggestionSelectionCanceled = false;\n\n\t\tthis.fireEvent<SuggestionItemSelectEventDetail>(INPUT_EVENTS.SUGGESTION_ITEM_SELECT, { item });\n\n\t\tthis.isTyping = false;\n\t\tthis.openOnMobile = false;\n\t\tthis._forceOpen = false;\n\t}\n\n\tpreviewSuggestion(item: SuggestionListItem) {\n\t\tthis.valueBeforeItemSelection = this.value;\n\t\tthis.updateValueOnPreview(item);\n\t\tthis.announceSelectedItem();\n\t\tthis._previewItem = item;\n\t}\n\n\t/**\n\t * Updates the input value on item preview.\n\t * @param {Object} item The item that is on preview\n\t */\n\tupdateValueOnPreview(item: SuggestionListItem) {\n\t\tconst noPreview = item.type === \"Inactive\" || item.groupItem;\n\t\tconst itemValue = noPreview ? this.valueBeforeItemPreview : (item.effectiveTitle || item.textContent || \"\");\n\n\t\tthis.value = itemValue;\n\t\tthis._performTextSelection = true;\n\t}\n\n\t/**\n\t * The suggestion item on preview.\n\t * @type {sap.ui.webc.main.IInputSuggestionItem | null}\n\t * @name sap.ui.webc.main.Input.prototype.previewItem\n\t * @readonly\n\t * @public\n\t */\n\tget previewItem() {\n\t\tif (!this._previewItem) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn this.getSuggestionByListItem(this._previewItem);\n\t}\n\n\tasync fireEventByAction(action: INPUT_ACTIONS, e: InputEvent) {\n\t\tif (this.disabled || this.readonly) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst inputValue = await this.getInputValue();\n\t\tconst isUserInput = action === INPUT_ACTIONS.ACTION_ENTER;\n\n\t\tthis.value = inputValue;\n\t\tthis.typedInValue = inputValue;\n\t\tthis.valueBeforeItemPreview = inputValue;\n\n\t\tif (isUserInput) { // input\n\t\t\tthis.fireEvent<InputEventDetail>(INPUT_EVENTS.INPUT, { inputType: e.inputType });\n\t\t\t// Angular two way data binding\n\t\t\tthis.fireEvent(\"value-changed\");\n\t\t}\n\t}\n\n\tasync getInputValue() {\n\t\tconst domRef = this.getDomRef();\n\n\t\tif (domRef) {\n\t\t\treturn (await this.getInputDOMRef())!.value;\n\t\t}\n\t\treturn \"\";\n\t}\n\n\tasync getInputDOMRef() {\n\t\tif (isPhone() && this.Suggestions) {\n\t\t\tawait this.Suggestions._getSuggestionPopover();\n\t\t\treturn this.Suggestions.responsivePopover!.querySelector<Input>(\".ui5-input-inner-phone\")!;\n\t\t}\n\n\t\treturn this.nativeInput;\n\t}\n\n\tgetInputDOMRefSync() {\n\t\tif (isPhone() && this.Suggestions && this.Suggestions.responsivePopover) {\n\t\t\treturn this.Suggestions.responsivePopover.querySelector(\".ui5-input-inner-phone\")!.shadowRoot!.querySelector<HTMLInputElement>(\"input\")!;\n\t\t}\n\n\t\treturn this.nativeInput;\n\t}\n\n\t/**\n\t * Returns a reference to the native input element\n\t * @protected\n\t */\n\tget nativeInput() {\n\t\tconst domRef = this.getDomRef();\n\n\t\treturn domRef ? domRef.querySelector<HTMLInputElement>(`input`) : null;\n\t}\n\n\tget nativeInputWidth() {\n\t\treturn this.nativeInput ? this.nativeInput.offsetWidth : 0;\n\t}\n\n\tgetLabelableElementId() {\n\t\treturn this.getInputId();\n\t}\n\n\tgetSuggestionByListItem(item: SuggestionListItem): SuggestionItem {\n\t\tconst key = parseInt(item.getAttribute(\"data-ui5-key\")!);\n\t\treturn this.suggestionItems[key];\n\t}\n\n\t/**\n\t * Returns if the suggestions popover is scrollable.\n\t * The method returns <code>Promise</code> that resolves to true,\n\t * if the popup is scrollable and false otherwise.\n\t * @returns {Promise}\n\t */\n\tisSuggestionsScrollable() {\n\t\tif (!this.Suggestions) {\n\t\t\treturn Promise.resolve(false);\n\t\t}\n\n\t\treturn this.Suggestions._isScrollable();\n\t}\n\n\tgetInputId() {\n\t\treturn `${this._id}-inner`;\n\t}\n\n\t/* Suggestions interface */\n\tonItemMouseOver(e: MouseEvent) {\n\t\tconst item = e.target as SuggestionListItem;\n\t\tconst suggestion = this.getSuggestionByListItem(item);\n\t\tsuggestion && suggestion.fireEvent(\"mouseover\", {\n\t\t\titem: suggestion,\n\t\t\ttargetRef: item,\n\t\t});\n\t}\n\n\tonItemMouseOut(e: MouseEvent) {\n\t\tconst item = e.target as SuggestionListItem;\n\t\tconst suggestion = this.getSuggestionByListItem(item);\n\t\tsuggestion && suggestion.fireEvent(\"mouseout\", {\n\t\t\titem: suggestion,\n\t\t\ttargetRef: item,\n\t\t});\n\t}\n\n\tonItemMouseDown(e: MouseEvent) {\n\t\te.preventDefault();\n\t}\n\n\tonItemSelected(item: SuggestionItem, keyboardUsed: boolean) {\n\t\tthis.selectSuggestion(item, keyboardUsed);\n\t}\n\n\tonItemPreviewed(item: SuggestionListItem) {\n\t\tthis.previewSuggestion(item);\n\t\tthis.fireEvent<SuggestionItemPreviewEventDetail>(\"suggestion-item-preview\", {\n\t\t\titem: this.getSuggestionByListItem(item),\n\t\t\ttargetRef: item,\n\t\t});\n\t}\n\n\tget valueStateTypeMappings() {\n\t\treturn {\n\t\t\t\"Success\": Input.i18nBundle.getText(VALUE_STATE_TYPE_SUCCESS),\n\t\t\t\"Information\": Input.i18nBundle.getText(VALUE_STATE_TYPE_INFORMATION),\n\t\t\t\"Error\": Input.i18nBundle.getText(VALUE_STATE_TYPE_ERROR),\n\t\t\t\"Warning\": Input.i18nBundle.getText(VALUE_STATE_TYPE_WARNING),\n\t\t};\n\t}\n\n\tvalueStateTextMappings() {\n\t\treturn {\n\t\t\t\"Success\": Input.i18nBundle.getText(VALUE_STATE_SUCCESS),\n\t\t\t\"Information\": Input.i18nBundle.getText(VALUE_STATE_INFORMATION),\n\t\t\t\"Error\": Input.i18nBundle.getText(VALUE_STATE_ERROR),\n\t\t\t\"Warning\": Input.i18nBundle.getText(VALUE_STATE_WARNING),\n\t\t};\n\t}\n\n\tannounceSelectedItem() {\n\t\tconst invisibleText = this.shadowRoot!.querySelector(`#${this._id}-selectionText`)!;\n\n\t\tif (this.Suggestions && this.Suggestions._isItemOnTarget()) {\n\t\t\tinvisibleText.textContent = this.itemSelectionAnnounce;\n\t\t} else {\n\t\t\tinvisibleText.textContent = \"\";\n\t\t}\n\t}\n\n\tget _readonly() {\n\t\treturn this.readonly && !this.disabled;\n\t}\n\n\tget _headerTitleText() {\n\t\treturn Input.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);\n\t}\n\n\tget inputType() {\n\t\treturn this.type.toLowerCase();\n\t}\n\n\tget isTypeNumber() {\n\t\treturn this.type === InputType.Number;\n\t}\n\n\tget suggestionsTextId() {\n\t\treturn this.showSuggestions ? `${this._id}-suggestionsText` : \"\";\n\t}\n\n\tget valueStateTextId() {\n\t\treturn this.hasValueState ? `${this._id}-valueStateDesc` : \"\";\n\t}\n\n\tget accInfo() {\n\t\tconst ariaHasPopupDefault = this.showSuggestions ? \"true\" : undefined;\n\t\tconst ariaAutoCompleteDefault = this.showSuggestions ? \"list\" : undefined;\n\t\tconst ariaDescribedBy = this._inputAccInfo.ariaDescribedBy ? `${this.suggestionsTextId} ${this.valueStateTextId} ${this._inputAccInfo.ariaDescribedBy}`.trim() : `${this.suggestionsTextId} ${this.valueStateTextId}`.trim();\n\n\t\tconst info = {\n\t\t\t\"input\": {\n\t\t\t\t\"ariaRoledescription\": this._inputAccInfo && (this._inputAccInfo.ariaRoledescription || undefined),\n\t\t\t\t\"ariaDescribedBy\": ariaDescribedBy || undefined,\n\t\t\t\t\"ariaInvalid\": this.valueState === ValueState.Error ? \"true\" : undefined,\n\t\t\t\t\"ariaHasPopup\": this._inputAccInfo.ariaHasPopup ? this._inputAccInfo.ariaHasPopup : ariaHasPopupDefault,\n\t\t\t\t\"ariaAutoComplete\": this._inputAccInfo.ariaAutoComplete ? this._inputAccInfo.ariaAutoComplete : ariaAutoCompleteDefault,\n\t\t\t\t\"role\": this._inputAccInfo && this._inputAccInfo.role,\n\t\t\t\t\"ariaControls\": this._inputAccInfo && this._inputAccInfo.ariaControls,\n\t\t\t\t\"ariaExpanded\": this._inputAccInfo && this._inputAccInfo.ariaExpanded,\n\t\t\t\t\"ariaDescription\": this._inputAccInfo && this._inputAccInfo.ariaDescription,\n\t\t\t\t\"ariaLabel\": (this._inputAccInfo && this._inputAccInfo.ariaLabel) || this._accessibleLabelsRefTexts || this.accessibleName || this._associatedLabelsTexts || undefined,\n\t\t\t},\n\t\t};\n\t\treturn info;\n\t}\n\n\tget nativeInputAttributes() {\n\t\treturn {\n\t\t\t\"min\": this.isTypeNumber ? this._nativeInputAttributes.min : undefined,\n\t\t\t\"max\": this.isTypeNumber ? this._nativeInputAttributes.max : undefined,\n\t\t\t\"step\": this.isTypeNumber ? (this._nativeInputAttributes.step || \"any\") : undefined,\n\t\t};\n\t}\n\n\tget ariaValueStateHiddenText() {\n\t\tif (!this.hasValueState) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst valueState = this.valueState !== ValueState.None ? this.valueStateTypeMappings[this.valueState] : \"\";\n\n\t\tif (this.shouldDisplayDefaultValueStateMessage) {\n\t\t\treturn this.valueStateText ? `${valueState} ${this.valueStateText}` : valueState;\n\t\t}\n\n\t\treturn `${valueState}`.concat(\" \", this.valueStateMessageText.map(el => el.textContent).join(\" \"));\n\t}\n\n\tget itemSelectionAnnounce() {\n\t\treturn this.Suggestions ? this.Suggestions.itemSelectionAnnounce : \"\";\n\t}\n\n\tget iconsCount(): number {\n\t\tconst slottedIconsCount = this.icon ? this.icon.length : 0;\n\t\tconst clearIconCount = Number(this.effectiveShowClearIcon) ?? 0;\n\t\treturn slottedIconsCount + clearIconCount;\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn {\n\t\t\tpopover: {\n\t\t\t\t\"ui5-suggestions-popover\": !this._isPhone && this.showSuggestions,\n\t\t\t\t\"ui5-suggestions-popover-with-value-state-header\": !this._isPhone && this.showSuggestions && this.hasValueStateMessage,\n\t\t\t},\n\t\t\tpopoverValueState: {\n\t\t\t\t\"ui5-valuestatemessage-root\": true,\n\t\t\t\t\"ui5-valuestatemessage-header\": true,\n\t\t\t\t\"ui5-valuestatemessage--success\": this.valueState === ValueState.Success,\n\t\t\t\t\"ui5-valuestatemessage--error\": this.valueState === ValueState.Error,\n\t\t\t\t\"ui5-valuestatemessage--warning\": this.valueState === ValueState.Warning,\n\t\t\t\t\"ui5-valuestatemessage--information\": this.valueState === ValueState.Information,\n\t\t\t},\n\t\t};\n\t}\n\n\tget styles() {\n\t\tconst remSizeIxPx = parseInt(getComputedStyle(document.documentElement).fontSize);\n\n\t\tconst stylesObject = {\n\t\t\tpopoverHeader: {\n\t\t\t\t\"max-width\": this._inputWidth ? `${this._inputWidth}px` : \"\",\n\t\t\t},\n\t\t\tsuggestionPopoverHeader: {\n\t\t\t\t\"display\": this._listWidth === 0 ? \"none\" : \"inline-block\",\n\t\t\t\t\"width\": this._listWidth ? `${this._listWidth}px` : \"\",\n\t\t\t},\n\t\t\tsuggestionsPopover: {\n\t\t\t\t\"min-width\": this._inputWidth ? `${this._inputWidth}px` : \"\",\n\t\t\t\t\"max-width\": this._inputWidth && (this._inputWidth / remSizeIxPx) > 40 ? `${this._inputWidth}px` : \"40rem\",\n\t\t\t},\n\t\t\tinnerInput: {\n\t\t\t\t\"padding\": \"\",\n\t\t\t},\n\t\t};\n\n\t\treturn stylesObject;\n\t}\n\n\tget suggestionSeparators() {\n\t\treturn \"None\";\n\t}\n\n\tget valueStateMessageText() {\n\t\treturn this.getSlottedNodes(\"valueStateMessage\").map(el => el.cloneNode(true));\n\t}\n\n\tget shouldDisplayOnlyValueStateMessage() {\n\t\treturn this.hasValueStateMessage && !this.readonly && !this.open && this.focused;\n\t}\n\n\tget shouldDisplayDefaultValueStateMessage() {\n\t\treturn !this.valueStateMessage.length && this.hasValueStateMessage;\n\t}\n\n\tget hasValueState() {\n\t\treturn this.valueState !== ValueState.None;\n\t}\n\n\tget hasValueStateMessage() {\n\t\treturn this.hasValueState && this.valueState !== ValueState.Success\n\t\t\t&& (!this._inputIconFocused // Handles the cases when valueStateMessage is forwarded (from datepicker e.g.)\n\t\t\t\t|| !!(this._isPhone && this.Suggestions)); // Handles Input with suggestions on mobile\n\t}\n\n\tget valueStateText() {\n\t\treturn this.valueState !== ValueState.None ? this.valueStateTextMappings()[this.valueState] : undefined;\n\t}\n\n\tget suggestionsText() {\n\t\treturn Input.i18nBundle.getText(INPUT_SUGGESTIONS);\n\t}\n\n\tget availableSuggestionsCount() {\n\t\tif (this.showSuggestions && (this.value || this.Suggestions!.isOpened())) {\n\t\t\tswitch (this.suggestionsTexts.length) {\n\t\t\tcase 0:\n\t\t\t\treturn Input.i18nBundle.getText(INPUT_SUGGESTIONS_NO_HIT);\n\n\t\t\tcase 1:\n\t\t\t\treturn Input.i18nBundle.getText(INPUT_SUGGESTIONS_ONE_HIT);\n\n\t\t\tdefault:\n\t\t\t\treturn Input.i18nBundle.getText(INPUT_SUGGESTIONS_MORE_HITS, this.suggestionsTexts.length);\n\t\t\t}\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget step() {\n\t\treturn this.isTypeNumber ? \"any\" : undefined;\n\t}\n\n\tget _isPhone() {\n\t\treturn isPhone();\n\t}\n\n\tget _isSuggestionsFocused() {\n\t\treturn !this.focused && this.Suggestions && this.Suggestions.isOpened();\n\t}\n\n\t/**\n\t * Returns the placeholder value.\n\t * @protected\n\t */\n\tget _placeholder() {\n\t\treturn this.placeholder;\n\t}\n\n\t/**\n\t * This method is relevant for sap_horizon theme only\n\t */\n\tget _valueStateInputIcon() {\n\t\tconst iconPerValueState = {\n\t\t\tError: `<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\"/>`,\n\t\t\tWarning: `<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\"/>`,\n\t\t\tSuccess: `<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\"/>`,\n\t\t\tInformation: `<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\"/>`,\n\t\t};\n\n\t\tif (this.valueState !== ValueState.None) {\n\t\t\treturn `\n\t\t\t<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\n\t\t\t\t${iconPerValueState[this.valueState]};\n\t\t\t</svg>\n\t\t\t`;\n\t\t}\n\n\t\treturn \"\";\n\t}\n\n\tget _valueStatePopoverHorizontalAlign() {\n\t\treturn this.effectiveDir !== \"rtl\" ? \"Left\" : \"Right\";\n\t}\n\n\t/**\n\t * This method is relevant for sap_horizon theme only\n\t */\n\tget _valueStateMessageInputIcon() {\n\t\tconst iconPerValueState = {\n\t\t\tError: \"error\",\n\t\t\tWarning: \"alert\",\n\t\t\tSuccess: \"sys-enter-2\",\n\t\t\tInformation: \"information\",\n\t\t};\n\n\t\treturn this.valueState !== ValueState.None ? iconPerValueState[this.valueState] : \"\";\n\t}\n\n\t/**\n\t * Returns the caret position inside the native input\n\t * @protected\n\t */\n\tgetCaretPosition(): number | null {\n\t\treturn getCaretPosition(this.nativeInput!);\n\t}\n\n\t/**\n\t * Sets the caret to a certain position inside the native input\n\t * @protected\n\t * @param pos\n\t */\n\tsetCaretPosition(pos: number | null) {\n\t\tsetCaretPosition(this.nativeInput!, pos);\n\t}\n\n\t/**\n\t * Removes the fractional part of floating-point number.\n\t * @param {string} value the numeric value of Input of type \"Number\"\n\t */\n\tremoveFractionalPart(value: string) {\n\t\tif (value.includes(\".\")) {\n\t\t\treturn value.slice(0, value.indexOf(\".\"));\n\t\t}\n\t\tif (value.includes(\",\")) {\n\t\t\treturn value.slice(0, value.indexOf(\",\"));\n\t\t}\n\n\t\treturn value;\n\t}\n\n\tstatic async onDefine() {\n\t\tconst Suggestions = getFeature<typeof InputSuggestions>(\"InputSuggestions\");\n\n\t\t[Input.i18nBundle] = await Promise.all([\n\t\t\tgetI18nBundle(\"@ui5/webcomponents\"),\n\t\t\tSuggestions ? Suggestions.init() : Promise.resolve(),\n\t\t]);\n\t}\n}\n\nInput.define();\n\nexport default Input;\n"]}
package/dist/Link.d.ts CHANGED
@@ -179,7 +179,10 @@ declare class Link extends UI5Element implements ITabbable {
179
179
  * @public
180
180
  * @since 1.1.0
181
181
  */
182
- accessibilityAttributes: object;
182
+ accessibilityAttributes: {
183
+ expanded: "true" | "false";
184
+ hasPopup: "Dialog" | "Grid" | "ListBox" | "Menu" | "Tree";
185
+ };
183
186
  _rel: string | undefined;
184
187
  _tabIndex: string;
185
188
  /**
package/dist/Link.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Link.js","sourceRoot":"","sources":["../src/Link.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { I18nText } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport { markEvent } from \"@ui5/webcomponents-base/dist/MarkedEvents.js\";\nimport LinkDesign from \"./types/LinkDesign.js\";\nimport WrappingType from \"./types/WrappingType.js\";\n\n// Template\nimport LinkTemplate from \"./generated/templates/LinkTemplate.lit.js\";\n\nimport { LINK_SUBTLE, LINK_EMPHASIZED } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport linkCss from \"./generated/themes/Link.css.js\";\n\ntype LinkClickEventDetail = {\n\taltKey: boolean;\n\tctrlKey: boolean;\n\tmetaKey: boolean;\n\tshiftKey: boolean;\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n * The <code>ui5-link</code> is a hyperlink component that is used to navigate to other\n * apps and web pages, or to trigger actions.\n * It is a clickable text element, visualized in such a way that it stands out\n * from the standard text.\n * On hover, it changes its style to an underlined text to provide additional feedback to the user.\n *\n *\n * <h3>Usage</h3>\n *\n * You can set the <code>ui5-link</code> to be enabled or disabled.\n * <br><br>\n * To create a visual hierarchy in large lists of links, you can set the less important links as\n * <code>Subtle</code> or the more important ones as <code>Emphasized</code>,\n * by using the <code>design</code> property.\n * <br><br>\n * If the <code>href</code> property is set, the link behaves as the HTML\n * anchor tag (<code>&lt;a&gt;&lt;a&#47;&gt;</code>) and opens the specified URL in the given target frame (<code>target</code> property).\n * To specify where the linked content is opened, you can use the <code>target</code> property.\n *\n * <h3>Responsive behavior</h3>\n *\n * If there is not enough space, the text of the <code>ui5-link</code> becomes truncated.\n * If the <code>wrappingType</code> property is set to <code>\"Normal\"</code>, the text is displayed\n * on several lines instead of being truncated.\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Link\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.Link\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-link\n * @public\n */\n@customElement({\n\ttag: \"ui5-link\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: LinkTemplate,\n\tstyles: linkCss,\n})\n/**\n * Fired when the component is triggered either with a mouse/tap\n * or by using the Enter key.\n *\n * @event sap.ui.webc.main.Link#click\n * @public\n * @allowPreventDefault\n * @param {Boolean} altKey Returns whether the \"ALT\" key was pressed when the event was triggered.\n * @param {Boolean} ctrlKey Returns whether the \"CTRL\" key was pressed when the event was triggered.\n * @param {Boolean} metaKey Returns whether the \"META\" key was pressed when the event was triggered.\n * @param {Boolean} shiftKey Returns whether the \"SHIFT\" key was pressed when the event was triggered.\n */\n@event(\"click\", {\n\tdetail: {\n\t\taltKey: { type: Boolean },\n\t\tctrlKey: { type: Boolean },\n\t\tmetaKey: { type: Boolean },\n\t\tshiftKey: { type: Boolean },\n\t},\n})\nclass Link extends UI5Element implements ITabbable {\n\t/**\n\t * Defines whether the component is disabled.\n\t * <br><br>\n\t * <b>Note:</b> When disabled, the click event cannot be triggered by the user.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Link.prototype.disabled\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines the component href.\n\t * <br><br>\n\t * <b>Note:</b> Standard hyperlink behavior is supported.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.href\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\thref!: string;\n\n\t/**\n\t * Defines the component target.\n\t * <br><br>\n\t * <b>Notes:</b>\n\t *\n\t * <ul>\n\t * <li><code>_self</code></li>\n\t * <li><code>_top</code></li>\n\t * <li><code>_blank</code></li>\n\t * <li><code>_parent</code></li>\n\t * <li><code>_search</code></li>\n\t * </ul>\n\t *\n\t * <b>This property must only be used when the <code>href</code> property is set.</b>\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.target\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\ttarget!: string;\n\n\t/**\n\t * Defines the component design.\n\t * <br><br>\n\t * <b>Note:</b> Avaialble options are <code>Default</code>, <code>Subtle</code>, and <code>Emphasized</code>.\n\t *\n\t * @type {sap.ui.webc.main.types.LinkDesign}\n\t * @name sap.ui.webc.main.Link.prototype.design\n\t * @defaultvalue \"Default\"\n\t * @public\n\t */\n\t@property({ type: LinkDesign, defaultValue: LinkDesign.Default })\n\tdesign!: LinkDesign;\n\n\t/**\n\t * Defines how the text of a component will be displayed when there is not enough space.\n\t * Available options are:\n\t * <ul>\n\t * <li><code>None</code> - The text will be truncated with an ellipsis.</li>\n\t * <li><code>Normal</code> - The text will wrap. The words will not be broken based on hyphenation.</li>\n\t * </ul>\n\t *\n\t * @type {sap.ui.webc.main.types.WrappingType}\n\t * @name sap.ui.webc.main.Link.prototype.wrappingType\n\t * @defaultvalue \"None\"\n\t * @public\n\t */\n\t@property({ type: WrappingType, defaultValue: WrappingType.None })\n\twrappingType!: WrappingType;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleName\n\t * @defaultvalue \"\"\n\t * @public\n\t * @since 1.2.0\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the input\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleNameRef\n\t * @defaultvalue \"\"\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines the ARIA role of the component.\n\t *\n\t * <b>Note:</b> Use the \"button\" role in cases when navigation is not expected to occur and the href property is not defined.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleRole\n\t * @defaultvalue \"link\"\n\t * @public\n\t * @since 1.9.0\n\t */\n\t@property({ defaultValue: \"link\" })\n\taccessibleRole!: string;\n\n\t/**\n\t * An object of strings that defines several additional accessibility attribute values\n\t * for customization depending on the use case.\n\t *\n\t * It supports the following fields:\n\t *\n\t * <ul>\n\t * \t\t<li><code>expanded</code>: Indicates whether the anchor element, or another grouping element it controls, is currently expanded or collapsed. Accepts the following string values:\n\t *\t\t\t<ul>\n\t *\t\t\t\t<li><code>true</code></li>\n\t *\t\t\t\t<li><code>false</code></li>\n\t *\t\t\t</ul>\n\t * \t\t</li>\n\t * \t\t<li><code>hasPopup</code>: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the anchor element. Accepts the following string values:\n\t * \t\t\t<ul>\n\t *\t\t\t\t<li><code>Dialog</code></li>\n\t *\t\t\t\t<li><code>Grid</code></li>\n\t *\t\t\t\t<li><code>ListBox</code></li>\n\t *\t\t\t\t<li><code>Menu</code></li>\n\t *\t\t\t\t<li><code>Tree</code></li>\n\t * \t\t\t</ul>\n\t * \t\t</li>\n\t * </ul>\n\t * @type {object}\n\t * @name sap.ui.webc.main.Link.prototype.accessibilityAttributes\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property({ type: Object })\n\taccessibilityAttributes!: object;\n\n\t@property({ noAttribute: true })\n\t_rel: string | undefined;\n\n\t@property({ noAttribute: true })\n\t_tabIndex!: string;\n\n\t/**\n\t * Indicates if the element is on focus.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused!: boolean\n\n\t/**\n\t * Defines the text of the component.\n\t * <br><b>Note:</b> Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n\t *\n\t * @type {Node[]}\n\t * @name sap.ui.webc.main.Link.prototype.default\n\t * @slot\n\t * @public\n\t */\n\n\t_dummyAnchor: HTMLAnchorElement;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._dummyAnchor = document.createElement(\"a\");\n\t}\n\n\tonBeforeRendering() {\n\t\tconst needsNoReferrer = this.target !== \"_self\"\n\t\t\t&& this.href\n\t\t\t&& this._isCrossOrigin();\n\n\t\tthis._rel = needsNoReferrer ? \"noreferrer noopener\" : undefined;\n\t}\n\n\t_isCrossOrigin() {\n\t\tconst loc = window.location;\n\n\t\tthis._dummyAnchor.href = this.href;\n\n\t\treturn !(this._dummyAnchor.hostname === loc.hostname\n\t\t\t&& this._dummyAnchor.port === loc.port\n\t\t\t&& this._dummyAnchor.protocol === loc.protocol);\n\t}\n\n\tget effectiveTabIndex() {\n\t\tif (this._tabIndex) {\n\t\t\treturn this._tabIndex;\n\t\t}\n\t\treturn (this.disabled || !this.textContent?.length) ? \"-1\" : \"0\";\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget hasLinkType() {\n\t\treturn this.design !== LinkDesign.Default;\n\t}\n\n\tstatic typeTextMappings(): Record<string, I18nText> {\n\t\treturn {\n\t\t\t\"Subtle\": LINK_SUBTLE,\n\t\t\t\"Emphasized\": LINK_EMPHASIZED,\n\t\t};\n\t}\n\n\tget linkTypeText() {\n\t\treturn Link.i18nBundle.getText(Link.typeTextMappings()[this.design]);\n\t}\n\n\tget parsedRef() {\n\t\treturn (this.href && this.href.length > 0) ? this.href : undefined;\n\t}\n\n\tget effectiveAccRole() {\n\t\treturn this.accessibleRole.toLowerCase();\n\t}\n\n\tstatic async onDefine() {\n\t\tLink.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\t_onclick(e: MouseEvent | KeyboardEvent) {\n\t\tconst {\n\t\t\taltKey,\n\t\t\tctrlKey,\n\t\t\tmetaKey,\n\t\t\tshiftKey,\n\t\t} = e;\n\n\t\te.stopImmediatePropagation();\n\t\tmarkEvent(e, \"link\");\n\n\t\tconst executeEvent = this.fireEvent<LinkClickEventDetail>(\"click\", {\n\t\t\taltKey,\n\t\t\tctrlKey,\n\t\t\tmetaKey,\n\t\t\tshiftKey,\n\t\t}, true);\n\n\t\tif (!executeEvent) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tmarkEvent(e, \"link\");\n\t\tthis.focused = true;\n\t}\n\n\t_onfocusout() {\n\t\tthis.focused = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isEnter(e) && !this.href) {\n\t\t\tthis._onclick(e);\n\t\t} else if (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tmarkEvent(e, \"link\");\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (!isSpace(e)) {\n\t\t\tmarkEvent(e, \"link\");\n\t\t\treturn;\n\t\t}\n\n\t\tthis._onclick(e);\n\n\t\tif (this.href && !e.defaultPrevented) {\n\t\t\tconst customEvent = new MouseEvent(\"click\");\n\n\t\t\tcustomEvent.stopImmediatePropagation();\n\t\t\tthis.getDomRef()!.dispatchEvent(customEvent);\n\t\t}\n\t}\n}\n\nLink.define();\n\nexport default Link;\n\nexport type { LinkClickEventDetail };\n"]}
1
+ {"version":3,"file":"Link.js","sourceRoot":"","sources":["../src/Link.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { I18nText } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport { markEvent } from \"@ui5/webcomponents-base/dist/MarkedEvents.js\";\nimport LinkDesign from \"./types/LinkDesign.js\";\nimport WrappingType from \"./types/WrappingType.js\";\n\n// Template\nimport LinkTemplate from \"./generated/templates/LinkTemplate.lit.js\";\n\nimport { LINK_SUBTLE, LINK_EMPHASIZED } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport linkCss from \"./generated/themes/Link.css.js\";\n\ntype LinkClickEventDetail = {\n\taltKey: boolean;\n\tctrlKey: boolean;\n\tmetaKey: boolean;\n\tshiftKey: boolean;\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n * The <code>ui5-link</code> is a hyperlink component that is used to navigate to other\n * apps and web pages, or to trigger actions.\n * It is a clickable text element, visualized in such a way that it stands out\n * from the standard text.\n * On hover, it changes its style to an underlined text to provide additional feedback to the user.\n *\n *\n * <h3>Usage</h3>\n *\n * You can set the <code>ui5-link</code> to be enabled or disabled.\n * <br><br>\n * To create a visual hierarchy in large lists of links, you can set the less important links as\n * <code>Subtle</code> or the more important ones as <code>Emphasized</code>,\n * by using the <code>design</code> property.\n * <br><br>\n * If the <code>href</code> property is set, the link behaves as the HTML\n * anchor tag (<code>&lt;a&gt;&lt;a&#47;&gt;</code>) and opens the specified URL in the given target frame (<code>target</code> property).\n * To specify where the linked content is opened, you can use the <code>target</code> property.\n *\n * <h3>Responsive behavior</h3>\n *\n * If there is not enough space, the text of the <code>ui5-link</code> becomes truncated.\n * If the <code>wrappingType</code> property is set to <code>\"Normal\"</code>, the text is displayed\n * on several lines instead of being truncated.\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Link\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.Link\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-link\n * @public\n */\n@customElement({\n\ttag: \"ui5-link\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: LinkTemplate,\n\tstyles: linkCss,\n})\n/**\n * Fired when the component is triggered either with a mouse/tap\n * or by using the Enter key.\n *\n * @event sap.ui.webc.main.Link#click\n * @public\n * @allowPreventDefault\n * @param {Boolean} altKey Returns whether the \"ALT\" key was pressed when the event was triggered.\n * @param {Boolean} ctrlKey Returns whether the \"CTRL\" key was pressed when the event was triggered.\n * @param {Boolean} metaKey Returns whether the \"META\" key was pressed when the event was triggered.\n * @param {Boolean} shiftKey Returns whether the \"SHIFT\" key was pressed when the event was triggered.\n */\n@event(\"click\", {\n\tdetail: {\n\t\taltKey: { type: Boolean },\n\t\tctrlKey: { type: Boolean },\n\t\tmetaKey: { type: Boolean },\n\t\tshiftKey: { type: Boolean },\n\t},\n})\nclass Link extends UI5Element implements ITabbable {\n\t/**\n\t * Defines whether the component is disabled.\n\t * <br><br>\n\t * <b>Note:</b> When disabled, the click event cannot be triggered by the user.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Link.prototype.disabled\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines the component href.\n\t * <br><br>\n\t * <b>Note:</b> Standard hyperlink behavior is supported.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.href\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\thref!: string;\n\n\t/**\n\t * Defines the component target.\n\t * <br><br>\n\t * <b>Notes:</b>\n\t *\n\t * <ul>\n\t * <li><code>_self</code></li>\n\t * <li><code>_top</code></li>\n\t * <li><code>_blank</code></li>\n\t * <li><code>_parent</code></li>\n\t * <li><code>_search</code></li>\n\t * </ul>\n\t *\n\t * <b>This property must only be used when the <code>href</code> property is set.</b>\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.target\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\ttarget!: string;\n\n\t/**\n\t * Defines the component design.\n\t * <br><br>\n\t * <b>Note:</b> Avaialble options are <code>Default</code>, <code>Subtle</code>, and <code>Emphasized</code>.\n\t *\n\t * @type {sap.ui.webc.main.types.LinkDesign}\n\t * @name sap.ui.webc.main.Link.prototype.design\n\t * @defaultvalue \"Default\"\n\t * @public\n\t */\n\t@property({ type: LinkDesign, defaultValue: LinkDesign.Default })\n\tdesign!: LinkDesign;\n\n\t/**\n\t * Defines how the text of a component will be displayed when there is not enough space.\n\t * Available options are:\n\t * <ul>\n\t * <li><code>None</code> - The text will be truncated with an ellipsis.</li>\n\t * <li><code>Normal</code> - The text will wrap. The words will not be broken based on hyphenation.</li>\n\t * </ul>\n\t *\n\t * @type {sap.ui.webc.main.types.WrappingType}\n\t * @name sap.ui.webc.main.Link.prototype.wrappingType\n\t * @defaultvalue \"None\"\n\t * @public\n\t */\n\t@property({ type: WrappingType, defaultValue: WrappingType.None })\n\twrappingType!: WrappingType;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleName\n\t * @defaultvalue \"\"\n\t * @public\n\t * @since 1.2.0\n\t */\n\t@property()\n\taccessibleName!: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the input\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleNameRef\n\t * @defaultvalue \"\"\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\taccessibleNameRef!: string;\n\n\t/**\n\t * Defines the ARIA role of the component.\n\t *\n\t * <b>Note:</b> Use the \"button\" role in cases when navigation is not expected to occur and the href property is not defined.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Link.prototype.accessibleRole\n\t * @defaultvalue \"link\"\n\t * @public\n\t * @since 1.9.0\n\t */\n\t@property({ defaultValue: \"link\" })\n\taccessibleRole!: string;\n\n\t/**\n\t * An object of strings that defines several additional accessibility attribute values\n\t * for customization depending on the use case.\n\t *\n\t * It supports the following fields:\n\t *\n\t * <ul>\n\t * \t\t<li><code>expanded</code>: Indicates whether the anchor element, or another grouping element it controls, is currently expanded or collapsed. Accepts the following string values:\n\t *\t\t\t<ul>\n\t *\t\t\t\t<li><code>true</code></li>\n\t *\t\t\t\t<li><code>false</code></li>\n\t *\t\t\t</ul>\n\t * \t\t</li>\n\t * \t\t<li><code>hasPopup</code>: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the anchor element. Accepts the following string values:\n\t * \t\t\t<ul>\n\t *\t\t\t\t<li><code>Dialog</code></li>\n\t *\t\t\t\t<li><code>Grid</code></li>\n\t *\t\t\t\t<li><code>ListBox</code></li>\n\t *\t\t\t\t<li><code>Menu</code></li>\n\t *\t\t\t\t<li><code>Tree</code></li>\n\t * \t\t\t</ul>\n\t * \t\t</li>\n\t * </ul>\n\t * @type {object}\n\t * @name sap.ui.webc.main.Link.prototype.accessibilityAttributes\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property({ type: Object })\n\taccessibilityAttributes!: { expanded: \"true\" | \"false\", hasPopup: \"Dialog\" | \"Grid\" | \"ListBox\" | \"Menu\" | \"Tree\" };\n\n\t@property({ noAttribute: true })\n\t_rel: string | undefined;\n\n\t@property({ noAttribute: true })\n\t_tabIndex!: string;\n\n\t/**\n\t * Indicates if the element is on focus.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused!: boolean\n\n\t/**\n\t * Defines the text of the component.\n\t * <br><b>Note:</b> Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n\t *\n\t * @type {Node[]}\n\t * @name sap.ui.webc.main.Link.prototype.default\n\t * @slot\n\t * @public\n\t */\n\n\t_dummyAnchor: HTMLAnchorElement;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._dummyAnchor = document.createElement(\"a\");\n\t}\n\n\tonBeforeRendering() {\n\t\tconst needsNoReferrer = this.target !== \"_self\"\n\t\t\t&& this.href\n\t\t\t&& this._isCrossOrigin();\n\n\t\tthis._rel = needsNoReferrer ? \"noreferrer noopener\" : undefined;\n\t}\n\n\t_isCrossOrigin() {\n\t\tconst loc = window.location;\n\n\t\tthis._dummyAnchor.href = this.href;\n\n\t\treturn !(this._dummyAnchor.hostname === loc.hostname\n\t\t\t&& this._dummyAnchor.port === loc.port\n\t\t\t&& this._dummyAnchor.protocol === loc.protocol);\n\t}\n\n\tget effectiveTabIndex() {\n\t\tif (this._tabIndex) {\n\t\t\treturn this._tabIndex;\n\t\t}\n\t\treturn (this.disabled || !this.textContent?.length) ? \"-1\" : \"0\";\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget hasLinkType() {\n\t\treturn this.design !== LinkDesign.Default;\n\t}\n\n\tstatic typeTextMappings(): Record<string, I18nText> {\n\t\treturn {\n\t\t\t\"Subtle\": LINK_SUBTLE,\n\t\t\t\"Emphasized\": LINK_EMPHASIZED,\n\t\t};\n\t}\n\n\tget linkTypeText() {\n\t\treturn Link.i18nBundle.getText(Link.typeTextMappings()[this.design]);\n\t}\n\n\tget parsedRef() {\n\t\treturn (this.href && this.href.length > 0) ? this.href : undefined;\n\t}\n\n\tget effectiveAccRole() {\n\t\treturn this.accessibleRole.toLowerCase();\n\t}\n\n\tstatic async onDefine() {\n\t\tLink.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\t_onclick(e: MouseEvent | KeyboardEvent) {\n\t\tconst {\n\t\t\taltKey,\n\t\t\tctrlKey,\n\t\t\tmetaKey,\n\t\t\tshiftKey,\n\t\t} = e;\n\n\t\te.stopImmediatePropagation();\n\t\tmarkEvent(e, \"link\");\n\n\t\tconst executeEvent = this.fireEvent<LinkClickEventDetail>(\"click\", {\n\t\t\taltKey,\n\t\t\tctrlKey,\n\t\t\tmetaKey,\n\t\t\tshiftKey,\n\t\t}, true);\n\n\t\tif (!executeEvent) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tmarkEvent(e, \"link\");\n\t\tthis.focused = true;\n\t}\n\n\t_onfocusout() {\n\t\tthis.focused = false;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isEnter(e) && !this.href) {\n\t\t\tthis._onclick(e);\n\t\t} else if (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tmarkEvent(e, \"link\");\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (!isSpace(e)) {\n\t\t\tmarkEvent(e, \"link\");\n\t\t\treturn;\n\t\t}\n\n\t\tthis._onclick(e);\n\n\t\tif (this.href && !e.defaultPrevented) {\n\t\t\tconst customEvent = new MouseEvent(\"click\");\n\n\t\t\tcustomEvent.stopImmediatePropagation();\n\t\t\tthis.getDomRef()!.dispatchEvent(customEvent);\n\t\t}\n\t}\n}\n\nLink.define();\n\nexport default Link;\n\nexport type { LinkClickEventDetail };\n"]}
@@ -30,6 +30,12 @@ type AccInfo = {
30
30
  ariaLabelRadioButton: string;
31
31
  ariaSelectedText?: string;
32
32
  ariaHaspopup?: HasPopup;
33
+ posinset?: number;
34
+ setsize?: number;
35
+ ariaSelected?: boolean;
36
+ ariaChecked?: boolean;
37
+ listItemAriaLabel?: string;
38
+ ariaOwns?: string;
33
39
  };
34
40
  /**
35
41
  * @class
@@ -152,6 +158,8 @@ declare abstract class ListItem extends ListItemBase {
152
158
  deactivateByKey: (e: KeyboardEvent) => void;
153
159
  deactivate: () => void;
154
160
  _ontouchstart: PassiveEventListenerObject;
161
+ accessibleName?: string;
162
+ indeterminate?: boolean;
155
163
  static i18nBundle: I18nBundle;
156
164
  constructor();
157
165
  onBeforeRendering(): void;