@ui5/webcomponents 1.1.2 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (440) hide show
  1. package/CHANGELOG.md +66 -0
  2. package/README.md +1 -0
  3. package/dist/Avatar.js +1 -1
  4. package/dist/AvatarGroup.js +2 -2
  5. package/dist/Breadcrumbs.js +11 -4
  6. package/dist/BusyIndicator.js +1 -1
  7. package/dist/Button.js +42 -28
  8. package/dist/Calendar.js +1 -1
  9. package/dist/Card.js +2 -2
  10. package/dist/CheckBox.js +3 -3
  11. package/dist/ColorPalette.js +1 -1
  12. package/dist/ColorPaletteItem.js +2 -2
  13. package/dist/ColorPalettePopover.js +3 -3
  14. package/dist/ColorPicker.js +42 -4
  15. package/dist/ComboBox.js +10 -4
  16. package/dist/DatePicker.js +10 -8
  17. package/dist/DateRangePicker.js +7 -1
  18. package/dist/Dialog.js +35 -5
  19. package/dist/FileUploader.js +2 -1
  20. package/dist/Input.js +87 -19
  21. package/dist/Interfaces.js +1 -1
  22. package/dist/Label.js +7 -1
  23. package/dist/Link.js +16 -5
  24. package/dist/List.js +6 -16
  25. package/dist/ListItem.js +1 -1
  26. package/dist/MessageStrip.js +0 -8
  27. package/dist/MultiComboBox.js +166 -27
  28. package/dist/Panel.js +7 -8
  29. package/dist/Popover.js +39 -9
  30. package/dist/Popup.js +61 -26
  31. package/dist/ProgressIndicator.js +5 -0
  32. package/dist/RadioButton.js +1 -1
  33. package/dist/RangeSlider.js +6 -1
  34. package/dist/RatingIndicator.js +2 -2
  35. package/dist/ResponsivePopover.js +14 -10
  36. package/dist/SegmentedButton.js +2 -2
  37. package/dist/SegmentedButtonItem.js +7 -2
  38. package/dist/Select.js +9 -5
  39. package/dist/Slider.js +5 -0
  40. package/dist/SliderBase.js +4 -3
  41. package/dist/SplitButton.js +11 -5
  42. package/dist/StepInput.js +4 -4
  43. package/dist/Switch.js +13 -1
  44. package/dist/TabContainer.js +44 -3
  45. package/dist/Table.js +243 -4
  46. package/dist/TableColumn.js +0 -7
  47. package/dist/TableGroupRow.js +4 -0
  48. package/dist/TableRow.js +87 -8
  49. package/dist/TextArea.js +9 -4
  50. package/dist/Tokenizer.js +35 -6
  51. package/dist/Tree.js +5 -1
  52. package/dist/TreeItem.js +2 -2
  53. package/dist/TreeListItem.js +5 -2
  54. package/dist/api.json +129 -68
  55. package/dist/css/themes/Avatar.css +1 -1
  56. package/dist/css/themes/Button.css +1 -1
  57. package/dist/css/themes/Calendar.css +1 -1
  58. package/dist/css/themes/ColorPalettePopover.css +1 -1
  59. package/dist/css/themes/ComboBox.css +1 -1
  60. package/dist/css/themes/DatePickerPopover.css +1 -1
  61. package/dist/css/themes/Dialog.css +1 -1
  62. package/dist/css/themes/Input.css +1 -1
  63. package/dist/css/themes/ListItemBase.css +1 -1
  64. package/dist/css/themes/MultiComboBox.css +1 -1
  65. package/dist/css/themes/PopupGlobal.css +1 -1
  66. package/dist/css/themes/PopupsCommon.css +1 -1
  67. package/dist/css/themes/ResponsivePopover.css +1 -1
  68. package/dist/css/themes/SelectPopover.css +1 -1
  69. package/dist/css/themes/SplitButton.css +1 -1
  70. package/dist/css/themes/Suggestions.css +1 -1
  71. package/dist/css/themes/TabInOverflow.css +1 -1
  72. package/dist/css/themes/TableRow.css +1 -1
  73. package/dist/css/themes/TimePickerPopover.css +1 -1
  74. package/dist/css/themes/TokenizerPopover.css +1 -0
  75. package/dist/css/themes/ValueStateMessage.css +1 -1
  76. package/dist/css/themes/sap_belize/parameters-bundle.css +1 -1
  77. package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -1
  78. package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -1
  79. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  80. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  81. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  82. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  83. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  84. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  85. package/dist/features/InputSuggestions.js +4 -0
  86. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  87. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  88. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  89. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  90. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  91. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  92. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  93. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  94. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  95. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  96. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  97. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  98. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  99. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  100. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  101. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  102. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  103. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  104. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  105. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  106. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  107. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  108. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  109. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  110. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  111. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  112. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  113. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  114. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  115. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  116. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  117. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  118. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  119. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  120. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  121. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  122. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  123. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  124. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  125. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  126. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  127. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  128. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  129. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  130. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  131. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  132. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  133. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  134. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  135. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  136. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  137. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  138. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  139. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  140. package/dist/generated/i18n/i18n-defaults.js +2 -2
  141. package/dist/generated/templates/AvatarGroupTemplate.lit.js +1 -1
  142. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +1 -1
  143. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +1 -1
  144. package/dist/generated/templates/ButtonTemplate.lit.js +1 -1
  145. package/dist/generated/templates/CalendarTemplate.lit.js +1 -1
  146. package/dist/generated/templates/CarouselTemplate.lit.js +3 -3
  147. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +1 -1
  148. package/dist/generated/templates/ColorPickerTemplate.lit.js +1 -1
  149. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +1 -1
  150. package/dist/generated/templates/CustomListItemTemplate.lit.js +2 -2
  151. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +1 -1
  152. package/dist/generated/templates/DatePickerTemplate.lit.js +1 -1
  153. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +1 -1
  154. package/dist/generated/templates/DialogTemplate.lit.js +3 -3
  155. package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +5 -4
  156. package/dist/generated/templates/InputPopoverTemplate.lit.js +2 -2
  157. package/dist/generated/templates/InputTemplate.lit.js +6 -5
  158. package/dist/generated/templates/ListItemTemplate.lit.js +2 -2
  159. package/dist/generated/templates/ListTemplate.lit.js +1 -1
  160. package/dist/generated/templates/MessageStripTemplate.lit.js +1 -1
  161. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +1 -1
  162. package/dist/generated/templates/MultiInputTemplate.lit.js +7 -6
  163. package/dist/generated/templates/PanelTemplate.lit.js +2 -2
  164. package/dist/generated/templates/PopoverTemplate.lit.js +3 -3
  165. package/dist/generated/templates/PopupTemplate.lit.js +1 -1
  166. package/dist/generated/templates/RatingIndicatorTemplate.lit.js +1 -1
  167. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +5 -5
  168. package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +1 -1
  169. package/dist/generated/templates/SelectPopoverTemplate.lit.js +1 -1
  170. package/dist/generated/templates/StandardListItemTemplate.lit.js +2 -2
  171. package/dist/generated/templates/StepInputTemplate.lit.js +1 -1
  172. package/dist/generated/templates/SuggestionListItemTemplate.lit.js +2 -2
  173. package/dist/generated/templates/SwitchTemplate.lit.js +1 -1
  174. package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +1 -1
  175. package/dist/generated/templates/TabContainerTemplate.lit.js +4 -4
  176. package/dist/generated/templates/TableGroupRowTemplate.lit.js +1 -1
  177. package/dist/generated/templates/TableRowTemplate.lit.js +2 -2
  178. package/dist/generated/templates/TableTemplate.lit.js +3 -3
  179. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +1 -1
  180. package/dist/generated/templates/TextAreaTemplate.lit.js +1 -1
  181. package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +1 -1
  182. package/dist/generated/templates/ToggleButtonTemplate.lit.js +1 -1
  183. package/dist/generated/templates/TokenizerTemplate.lit.js +1 -1
  184. package/dist/generated/templates/TreeListItemTemplate.lit.js +2 -2
  185. package/dist/generated/themes/Avatar.css.js +1 -1
  186. package/dist/generated/themes/Button.css.js +1 -1
  187. package/dist/generated/themes/Calendar.css.js +1 -1
  188. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  189. package/dist/generated/themes/ComboBox.css.js +1 -1
  190. package/dist/generated/themes/DatePickerPopover.css.js +1 -1
  191. package/dist/generated/themes/Dialog.css.js +1 -1
  192. package/dist/generated/themes/Input.css.js +1 -1
  193. package/dist/generated/themes/ListItemBase.css.js +1 -1
  194. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  195. package/dist/generated/themes/PopupGlobal.css.js +1 -1
  196. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  197. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  198. package/dist/generated/themes/SelectPopover.css.js +1 -1
  199. package/dist/generated/themes/SplitButton.css.js +1 -1
  200. package/dist/generated/themes/Suggestions.css.js +1 -1
  201. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  202. package/dist/generated/themes/TableRow.css.js +1 -1
  203. package/dist/generated/themes/TimePickerPopover.css.js +1 -1
  204. package/dist/generated/themes/TokenizerPopover.css.js +8 -0
  205. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  206. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  207. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  208. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  209. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  210. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  211. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  212. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  213. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  214. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  215. package/dist/i18n/messagebundle.properties +3 -0
  216. package/dist/i18n/messagebundle_ar.properties +5 -0
  217. package/dist/i18n/messagebundle_bg.properties +5 -0
  218. package/dist/i18n/messagebundle_ca.properties +5 -0
  219. package/dist/i18n/messagebundle_cs.properties +5 -0
  220. package/dist/i18n/messagebundle_cy.properties +5 -0
  221. package/dist/i18n/messagebundle_da.properties +5 -0
  222. package/dist/i18n/messagebundle_de.properties +5 -0
  223. package/dist/i18n/messagebundle_el.properties +5 -0
  224. package/dist/i18n/messagebundle_en.properties +5 -0
  225. package/dist/i18n/messagebundle_en_GB.properties +5 -0
  226. package/dist/i18n/messagebundle_en_US_saprigi.properties +2 -0
  227. package/dist/i18n/messagebundle_es.properties +5 -0
  228. package/dist/i18n/messagebundle_es_MX.properties +5 -0
  229. package/dist/i18n/messagebundle_et.properties +5 -0
  230. package/dist/i18n/messagebundle_fi.properties +5 -0
  231. package/dist/i18n/messagebundle_fr.properties +5 -0
  232. package/dist/i18n/messagebundle_fr_CA.properties +5 -0
  233. package/dist/i18n/messagebundle_hi.properties +5 -0
  234. package/dist/i18n/messagebundle_hr.properties +5 -0
  235. package/dist/i18n/messagebundle_hu.properties +5 -0
  236. package/dist/i18n/messagebundle_id.properties +5 -0
  237. package/dist/i18n/messagebundle_it.properties +5 -0
  238. package/dist/i18n/messagebundle_iw.properties +5 -0
  239. package/dist/i18n/messagebundle_ja.properties +7 -2
  240. package/dist/i18n/messagebundle_kk.properties +5 -0
  241. package/dist/i18n/messagebundle_ko.properties +5 -0
  242. package/dist/i18n/messagebundle_lt.properties +5 -0
  243. package/dist/i18n/messagebundle_lv.properties +5 -0
  244. package/dist/i18n/messagebundle_ms.properties +5 -0
  245. package/dist/i18n/messagebundle_nl.properties +5 -0
  246. package/dist/i18n/messagebundle_no.properties +5 -0
  247. package/dist/i18n/messagebundle_pl.properties +5 -0
  248. package/dist/i18n/messagebundle_pt.properties +5 -0
  249. package/dist/i18n/messagebundle_pt_PT.properties +5 -0
  250. package/dist/i18n/messagebundle_ro.properties +5 -0
  251. package/dist/i18n/messagebundle_ru.properties +5 -0
  252. package/dist/i18n/messagebundle_sh.properties +5 -0
  253. package/dist/i18n/messagebundle_sk.properties +5 -0
  254. package/dist/i18n/messagebundle_sl.properties +5 -0
  255. package/dist/i18n/messagebundle_sv.properties +5 -0
  256. package/dist/i18n/messagebundle_th.properties +5 -0
  257. package/dist/i18n/messagebundle_tr.properties +5 -0
  258. package/dist/i18n/messagebundle_uk.properties +5 -0
  259. package/dist/i18n/messagebundle_vi.properties +5 -0
  260. package/dist/i18n/messagebundle_zh_CN.properties +5 -0
  261. package/dist/i18n/messagebundle_zh_TW.properties +5 -0
  262. package/package.json +11 -9
  263. package/src/Avatar.js +1 -1
  264. package/src/AvatarGroup.hbs +1 -1
  265. package/src/AvatarGroup.js +2 -2
  266. package/src/Breadcrumbs.hbs +2 -2
  267. package/src/Breadcrumbs.js +11 -4
  268. package/src/BreadcrumbsPopover.hbs +0 -1
  269. package/src/BusyIndicator.js +1 -1
  270. package/src/Button.hbs +4 -4
  271. package/src/Button.js +42 -28
  272. package/src/Calendar.hbs +1 -1
  273. package/src/Calendar.js +1 -1
  274. package/src/Card.js +2 -2
  275. package/src/Carousel.hbs +2 -2
  276. package/src/CheckBox.js +3 -3
  277. package/src/ColorPalette.js +1 -1
  278. package/src/ColorPaletteItem.js +2 -2
  279. package/src/ColorPalettePopover.hbs +1 -1
  280. package/src/ColorPalettePopover.js +3 -3
  281. package/src/ColorPicker.hbs +1 -0
  282. package/src/ColorPicker.js +42 -4
  283. package/src/ComboBox.js +10 -4
  284. package/src/ComboBoxPopover.hbs +0 -1
  285. package/src/DatePicker.hbs +1 -1
  286. package/src/DatePicker.js +10 -8
  287. package/src/DatePickerPopover.hbs +0 -2
  288. package/src/DateRangePicker.js +7 -1
  289. package/src/Dialog.hbs +3 -2
  290. package/src/Dialog.js +35 -5
  291. package/src/FileUploader.js +2 -1
  292. package/src/FileUploaderPopover.hbs +3 -2
  293. package/src/Input.hbs +5 -1
  294. package/src/Input.js +87 -19
  295. package/src/InputPopover.hbs +3 -4
  296. package/src/Interfaces.js +1 -1
  297. package/src/Label.js +7 -1
  298. package/src/Link.js +16 -5
  299. package/src/List.hbs +1 -1
  300. package/src/List.js +6 -16
  301. package/src/ListItem.hbs +1 -1
  302. package/src/ListItem.js +1 -1
  303. package/src/MessageStrip.hbs +1 -1
  304. package/src/MessageStrip.js +0 -8
  305. package/src/MultiComboBox.js +166 -27
  306. package/src/MultiComboBoxPopover.hbs +0 -1
  307. package/src/Panel.hbs +4 -3
  308. package/src/Panel.js +7 -8
  309. package/src/Popover.hbs +2 -2
  310. package/src/Popover.js +39 -9
  311. package/src/Popup.hbs +1 -1
  312. package/src/Popup.js +61 -26
  313. package/src/ProgressIndicator.js +5 -0
  314. package/src/RadioButton.js +1 -1
  315. package/src/RangeSlider.js +6 -1
  316. package/src/RatingIndicator.hbs +2 -0
  317. package/src/RatingIndicator.js +2 -2
  318. package/src/ResponsivePopover.hbs +3 -3
  319. package/src/ResponsivePopover.js +14 -10
  320. package/src/SegmentedButton.js +2 -2
  321. package/src/SegmentedButtonItem.hbs +1 -1
  322. package/src/SegmentedButtonItem.js +7 -2
  323. package/src/Select.js +9 -5
  324. package/src/SelectPopover.hbs +0 -1
  325. package/src/Slider.js +5 -0
  326. package/src/SliderBase.js +4 -3
  327. package/src/SplitButton.js +11 -5
  328. package/src/StepInput.hbs +4 -3
  329. package/src/StepInput.js +4 -4
  330. package/src/Switch.hbs +1 -1
  331. package/src/Switch.js +13 -1
  332. package/src/TabContainer.hbs +3 -3
  333. package/src/TabContainer.js +44 -3
  334. package/src/TabContainerPopover.hbs +1 -1
  335. package/src/Table.hbs +11 -1
  336. package/src/Table.js +243 -4
  337. package/src/TableColumn.js +0 -7
  338. package/src/TableGroupRow.hbs +1 -0
  339. package/src/TableGroupRow.js +4 -0
  340. package/src/TableRow.hbs +2 -0
  341. package/src/TableRow.js +87 -8
  342. package/src/TextArea.hbs +1 -1
  343. package/src/TextArea.js +9 -4
  344. package/src/TextAreaPopover.hbs +0 -1
  345. package/src/TimePickerPopover.hbs +0 -1
  346. package/src/Tokenizer.hbs +2 -1
  347. package/src/Tokenizer.js +35 -6
  348. package/src/Tree.js +5 -1
  349. package/src/TreeItem.js +2 -2
  350. package/src/TreeListItem.js +5 -2
  351. package/src/features/InputSuggestions.js +4 -0
  352. package/src/i18n/messagebundle.properties +3 -0
  353. package/src/i18n/messagebundle_ar.properties +5 -0
  354. package/src/i18n/messagebundle_bg.properties +5 -0
  355. package/src/i18n/messagebundle_ca.properties +5 -0
  356. package/src/i18n/messagebundle_cs.properties +5 -0
  357. package/src/i18n/messagebundle_cy.properties +5 -0
  358. package/src/i18n/messagebundle_da.properties +5 -0
  359. package/src/i18n/messagebundle_de.properties +5 -0
  360. package/src/i18n/messagebundle_el.properties +5 -0
  361. package/src/i18n/messagebundle_en.properties +5 -0
  362. package/src/i18n/messagebundle_en_GB.properties +5 -0
  363. package/src/i18n/messagebundle_en_US_saprigi.properties +2 -0
  364. package/src/i18n/messagebundle_es.properties +5 -0
  365. package/src/i18n/messagebundle_es_MX.properties +5 -0
  366. package/src/i18n/messagebundle_et.properties +5 -0
  367. package/src/i18n/messagebundle_fi.properties +5 -0
  368. package/src/i18n/messagebundle_fr.properties +5 -0
  369. package/src/i18n/messagebundle_fr_CA.properties +5 -0
  370. package/src/i18n/messagebundle_hi.properties +5 -0
  371. package/src/i18n/messagebundle_hr.properties +5 -0
  372. package/src/i18n/messagebundle_hu.properties +5 -0
  373. package/src/i18n/messagebundle_id.properties +5 -0
  374. package/src/i18n/messagebundle_it.properties +5 -0
  375. package/src/i18n/messagebundle_iw.properties +5 -0
  376. package/src/i18n/messagebundle_ja.properties +7 -2
  377. package/src/i18n/messagebundle_kk.properties +5 -0
  378. package/src/i18n/messagebundle_ko.properties +5 -0
  379. package/src/i18n/messagebundle_lt.properties +5 -0
  380. package/src/i18n/messagebundle_lv.properties +5 -0
  381. package/src/i18n/messagebundle_ms.properties +5 -0
  382. package/src/i18n/messagebundle_nl.properties +5 -0
  383. package/src/i18n/messagebundle_no.properties +5 -0
  384. package/src/i18n/messagebundle_pl.properties +5 -0
  385. package/src/i18n/messagebundle_pt.properties +5 -0
  386. package/src/i18n/messagebundle_pt_PT.properties +5 -0
  387. package/src/i18n/messagebundle_ro.properties +5 -0
  388. package/src/i18n/messagebundle_ru.properties +5 -0
  389. package/src/i18n/messagebundle_sh.properties +5 -0
  390. package/src/i18n/messagebundle_sk.properties +5 -0
  391. package/src/i18n/messagebundle_sl.properties +5 -0
  392. package/src/i18n/messagebundle_sv.properties +5 -0
  393. package/src/i18n/messagebundle_th.properties +5 -0
  394. package/src/i18n/messagebundle_tr.properties +5 -0
  395. package/src/i18n/messagebundle_uk.properties +5 -0
  396. package/src/i18n/messagebundle_vi.properties +5 -0
  397. package/src/i18n/messagebundle_zh_CN.properties +5 -0
  398. package/src/i18n/messagebundle_zh_TW.properties +5 -0
  399. package/src/themes/Avatar.css +1 -0
  400. package/src/themes/Button.css +1 -1
  401. package/src/themes/Calendar.css +6 -1
  402. package/src/themes/ColorPalettePopover.css +6 -5
  403. package/src/themes/DatePickerPopover.css +4 -0
  404. package/src/themes/Dialog.css +1 -5
  405. package/src/themes/Input.css +1 -0
  406. package/src/themes/ListItemBase.css +11 -5
  407. package/src/themes/MultiComboBox.css +0 -1
  408. package/src/themes/Popover.css +1 -1
  409. package/src/themes/PopupGlobal.css +1 -4
  410. package/src/themes/PopupsCommon.css +44 -4
  411. package/src/themes/ResponsivePopover.css +2 -7
  412. package/src/themes/ResponsivePopoverCommon.css +1 -0
  413. package/src/themes/SelectPopover.css +11 -2
  414. package/src/themes/SplitButton.css +1 -1
  415. package/src/themes/Suggestions.css +15 -1
  416. package/src/themes/TabInOverflow.css +5 -1
  417. package/src/themes/TableRow.css +1 -0
  418. package/src/themes/TimePickerPopover.css +4 -0
  419. package/src/themes/Tokenizer.css +1 -0
  420. package/src/themes/TokenizerPopover.css +4 -0
  421. package/src/themes/ValueStateMessage.css +10 -0
  422. package/src/themes/base/Badge-parameters.css +10 -10
  423. package/src/themes/base/DayPicker-parameters.css +2 -2
  424. package/src/themes/base/Dialog-parameters.css +1 -1
  425. package/src/themes/base/ListItemBase-parameters.css +1 -0
  426. package/src/themes/base/PopupsCommon-parameters.css +6 -1
  427. package/src/themes/base/SliderBase-parameters.css +7 -0
  428. package/src/themes/base/Switch-parameters.css +2 -13
  429. package/src/themes/base/sizes-parameters.css +7 -7
  430. package/src/themes/sap_belize_hcb/Switch-parameters.css +2 -4
  431. package/src/themes/sap_belize_hcw/Switch-parameters.css +2 -4
  432. package/src/themes/sap_fiori_3_hcb/DayPicker-parameters.css +0 -2
  433. package/src/themes/sap_fiori_3_hcb/Switch-parameters.css +2 -4
  434. package/src/themes/sap_fiori_3_hcw/DayPicker-parameters.css +0 -2
  435. package/src/themes/sap_fiori_3_hcw/Switch-parameters.css +2 -4
  436. package/src/themes/sap_horizon/Dialog-parameters.css +1 -1
  437. package/src/themes/sap_horizon/ListItemBase-parameters.css +1 -2
  438. package/src/themes/sap_horizon/PopupsCommon-parameters.css +0 -1
  439. package/src/themes/sap_horizon/Switch-parameters.css +7 -7
  440. package/src/themes/sap_horizon_exp/Switch-parameters.css +1 -1
@@ -6,12 +6,12 @@ import {
6
6
  isShow,
7
7
  isDown,
8
8
  isUp,
9
- isBackSpace,
10
9
  isSpace,
11
- isLeft,
12
10
  isRight,
13
- isEscape,
14
- isEnter,
11
+ isHome,
12
+ isTabNext,
13
+ isTabPrevious,
14
+ isCtrlA,
15
15
  } from "@ui5/webcomponents-base/dist/Keys.js";
16
16
  import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
17
17
  import "@ui5/webcomponents-icons/dist/slim-arrow-down.js";
@@ -20,6 +20,10 @@ import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
20
20
  import "@ui5/webcomponents-icons/dist/decline.js";
21
21
  import "@ui5/webcomponents-icons/dist/multiselect-all.js";
22
22
  import "@ui5/webcomponents-icons/dist/not-editable.js";
23
+ import "@ui5/webcomponents-icons/dist/error.js";
24
+ import "@ui5/webcomponents-icons/dist/alert.js";
25
+ import "@ui5/webcomponents-icons/dist/sys-enter-2.js";
26
+ import "@ui5/webcomponents-icons/dist/information.js";
23
27
  import MultiComboBoxItem from "./MultiComboBoxItem.js";
24
28
  import Tokenizer from "./Tokenizer.js";
25
29
  import Token from "./Token.js";
@@ -413,6 +417,7 @@ class MultiComboBox extends UI5Element {
413
417
  this._deleting = false;
414
418
  this._validationTimeout = null;
415
419
  this._handleResizeBound = this._handleResize.bind(this);
420
+ this.currentItemIdx = -1;
416
421
  }
417
422
 
418
423
  onEnterDOM() {
@@ -524,7 +529,7 @@ class MultiComboBox extends UI5Element {
524
529
  return this.placeholder;
525
530
  }
526
531
 
527
- _handleLeft() {
532
+ _handleArrowLeft() {
528
533
  const cursorPosition = this.getDomRef().querySelector(`input`).selectionStart;
529
534
 
530
535
  if (cursorPosition === 0) {
@@ -535,14 +540,17 @@ class MultiComboBox extends UI5Element {
535
540
  _tokenizerFocusOut(event) {
536
541
  this._tokenizerFocused = false;
537
542
 
538
- const tokensCount = this._tokenizer.tokens.length - 1;
543
+ const tokensCount = this._tokenizer.tokens.length;
544
+ const selectedTokens = this._selectedTokensCount;
545
+ const lastTokenBeingDeleted = tokensCount - 1 === 0 && this._deleting;
546
+ const allTokensAreBeingDeleted = selectedTokens === tokensCount && this._deleting;
539
547
 
540
548
  if (!event.relatedTarget || !event.relatedTarget.hasAttribute("ui5-token")) {
541
549
  this._tokenizer.tokens.forEach(token => { token.selected = false; });
542
550
  this._tokenizer.scrollToStart();
543
551
  }
544
552
 
545
- if (tokensCount === 0 && this._deleting) {
553
+ if (allTokensAreBeingDeleted || lastTokenBeingDeleted) {
546
554
  setTimeout(() => {
547
555
  if (!isPhone()) {
548
556
  this.shadowRoot.querySelector("input").focus();
@@ -563,41 +571,77 @@ class MultiComboBox extends UI5Element {
563
571
  }
564
572
 
565
573
  async _onkeydown(event) {
566
- if (isLeft(event)) {
567
- this._handleLeft(event);
568
- }
569
-
570
574
  if (isShow(event) && !this.readonly && !this.disabled) {
571
575
  event.preventDefault();
572
576
  this.togglePopover();
573
577
  }
574
578
 
575
- if (this.open && (isUp(event) || isDown(event))) {
579
+ if (isUp(event) || isDown(event)) {
576
580
  this._handleArrowNavigation(event);
581
+ return;
577
582
  }
578
583
 
579
- if (isBackSpace(event) && event.target.value === "") {
580
- event.preventDefault();
584
+ this._keyDown = true;
585
+ this[`_handle${event.key}`] && this[`_handle${event.key}`](event);
586
+ }
581
587
 
588
+ _handleBackspace(event) {
589
+ if (event.target.value === "") {
590
+ event.preventDefault();
582
591
  this._tokenizer._focusLastToken();
583
592
  }
593
+ }
584
594
 
585
- // Reset value on ESC
586
- if (isEscape(event) && (!this.allowCustomValues || (!this.open && this.allowCustomValues))) {
595
+ _handleEscape(event) {
596
+ if (!this.allowCustomValues || (!this.open && this.allowCustomValues)) {
587
597
  this.value = this._lastValue;
588
598
  }
599
+ }
600
+
601
+ _handleHome(event) {
602
+ const shouldFocusToken = this._isFocusInside && event.target.selectionStart === 0 && this._tokenizer.tokens.length > 0;
589
603
 
590
- if (isEnter(event)) {
591
- this.handleEnter();
604
+ if (shouldFocusToken) {
605
+ event.preventDefault();
606
+ this._tokenizer.tokens[0].focus();
592
607
  }
608
+ }
593
609
 
594
- this._keyDown = true;
610
+ _handleEnd(event) {
611
+ const tokens = this._tokenizer.tokens;
612
+ const lastTokenIdx = tokens.length - 1;
613
+ const shouldFocusInput = event.target === tokens[lastTokenIdx] && tokens[lastTokenIdx] === this.shadowRoot.activeElement;
614
+
615
+ if (shouldFocusInput) {
616
+ event.preventDefault();
617
+ this._inputDom.focus();
618
+ }
619
+ }
620
+
621
+ _handleTab(event) {
622
+ this.allItemsPopover.close();
623
+ }
624
+
625
+ _handleSelectAll(event) {
626
+ const filteredItems = this._filteredItems;
627
+ const allItemsSelected = filteredItems.every(item => item.selected);
628
+
629
+ filteredItems.forEach(item => {
630
+ item.selected = !allItemsSelected;
631
+ });
632
+
633
+ this.fireSelectionChange();
595
634
  }
596
635
 
597
636
  _onValueStateKeydown(event) {
598
637
  const isArrowDown = isDown(event);
599
638
  const isArrowUp = isUp(event);
600
639
 
640
+ if (isTabNext(event) || isTabPrevious(event)) {
641
+ this._onItemTab(event);
642
+ return;
643
+ }
644
+
601
645
  event.preventDefault();
602
646
 
603
647
  if (isArrowDown) {
@@ -612,23 +656,36 @@ class MultiComboBox extends UI5Element {
612
656
  _onItemKeydown(event) {
613
657
  const isFirstItem = this.list.items[0] === event.target;
614
658
 
659
+ if (isTabNext(event) || isTabPrevious(event)) {
660
+ this._onItemTab(event);
661
+ return;
662
+ }
663
+
615
664
  event.preventDefault();
616
665
 
617
- if (!isUp(event) || !isFirstItem) {
666
+ if (isCtrlA(event)) {
667
+ this._handleSelectAll(event);
618
668
  return;
619
669
  }
620
670
 
621
- if (this.valueStateHeader) {
671
+ if (((isUp(event) && isFirstItem) || isHome(event)) && this.valueStateHeader) {
622
672
  this.valueStateHeader.focus();
623
- return;
624
673
  }
625
674
 
675
+ if (!this.valueStateHeader && isUp(event) && isFirstItem) {
676
+ this._inputDom.focus();
677
+ }
678
+ }
679
+
680
+ _onItemTab(event) {
626
681
  this._inputDom.focus();
682
+ this.allItemsPopover.close();
627
683
  }
628
684
 
629
685
  async _handleArrowNavigation(event) {
630
686
  const isArrowDown = isDown(event);
631
- const hasSuggestions = this.allItemsPopover.opened && this.items.length;
687
+ const hasSuggestions = this.items.length;
688
+ const isOpen = this.allItemsPopover.opened;
632
689
 
633
690
  event.preventDefault();
634
691
 
@@ -636,7 +693,7 @@ class MultiComboBox extends UI5Element {
636
693
  await this._setValueStateHeader();
637
694
  }
638
695
 
639
- if (isArrowDown && this.focused && this.valueStateHeader) {
696
+ if (isArrowDown && isOpen && this.focused && this.valueStateHeader) {
640
697
  this.valueStateHeader.focus();
641
698
  return;
642
699
  }
@@ -644,16 +701,91 @@ class MultiComboBox extends UI5Element {
644
701
  if (isArrowDown && this.focused && hasSuggestions) {
645
702
  this._handleArrowDown(event);
646
703
  }
704
+
705
+ if (!isArrowDown && !isOpen && !this.readonly) {
706
+ this._navigateToPrevItem();
707
+ }
647
708
  }
648
709
 
649
710
  _handleArrowDown(event) {
711
+ const isOpen = this.allItemsPopover.opened;
650
712
  const firstListItem = this.list.items[0];
651
713
 
652
- this.list._itemNavigation.setCurrentItem(firstListItem);
653
- firstListItem.focus();
714
+ if (isOpen) {
715
+ this.list._itemNavigation.setCurrentItem(firstListItem);
716
+ firstListItem.focus();
717
+ } else if (!this.readonly) {
718
+ this._navigateToNextItem();
719
+ }
654
720
  }
655
721
 
656
- handleEnter() {
722
+ _navigateToNextItem() {
723
+ const items = this.items;
724
+ const itemsCount = items.length;
725
+ const previousItemIdx = this.currentItemIdx;
726
+
727
+ if (previousItemIdx > -1 && items[previousItemIdx].text !== this.value) {
728
+ this.currentItemIdx = -1;
729
+ }
730
+
731
+ if (previousItemIdx >= itemsCount - 1) {
732
+ return;
733
+ }
734
+
735
+ let currentItem = this.items[++this.currentItemIdx];
736
+
737
+ while (this.currentItemIdx < itemsCount - 1 && currentItem.selected) {
738
+ currentItem = this.items[++this.currentItemIdx];
739
+ }
740
+
741
+ if (currentItem.selected === true) {
742
+ this.currentItemIdx = previousItemIdx;
743
+ return;
744
+ }
745
+
746
+ this.value = currentItem.text;
747
+ this._innerInput.value = currentItem.text;
748
+ this._innerInput.setSelectionRange(0, currentItem.text.length);
749
+ }
750
+
751
+ _navigateToPrevItem() {
752
+ const items = this.items;
753
+ let previousItemIdx = this.currentItemIdx;
754
+
755
+ if ((!this.value && previousItemIdx !== -1) || (previousItemIdx !== -1 && this.value && this.value !== items[previousItemIdx].text)) {
756
+ previousItemIdx = -1;
757
+ }
758
+
759
+ if (previousItemIdx === -1) {
760
+ this.currentItemIdx = items.length;
761
+ }
762
+
763
+ if (previousItemIdx === 0) {
764
+ this.currentItemIdx = 0;
765
+ return;
766
+ }
767
+
768
+ let currentItem = this.items[--this.currentItemIdx];
769
+
770
+ while (currentItem && currentItem.selected && this.currentItemIdx > 0) {
771
+ currentItem = this.items[--this.currentItemIdx];
772
+ }
773
+
774
+ if (!currentItem) {
775
+ return;
776
+ }
777
+
778
+ if (currentItem.selected) {
779
+ this.currentItemIdx = previousItemIdx;
780
+ return;
781
+ }
782
+
783
+ this.value = currentItem.text;
784
+ this._innerInput.value = currentItem.text;
785
+ this._innerInput.setSelectionRange(0, currentItem.text.length);
786
+ }
787
+
788
+ _handleEnter() {
657
789
  const lowerCaseValue = this.value.toLowerCase();
658
790
  const matchingItem = this.items.find(item => item.text.toLowerCase() === lowerCaseValue);
659
791
  const oldValueState = this.valueState;
@@ -698,6 +830,8 @@ class MultiComboBox extends UI5Element {
698
830
  }, 0);
699
831
  }
700
832
  }
833
+
834
+ this[`_handle${event.key}`] && this[`_handle${event.key}`](event);
701
835
  }
702
836
 
703
837
  _filterItems(str) {
@@ -918,6 +1052,7 @@ class MultiComboBox extends UI5Element {
918
1052
  this._innerInput.blur();
919
1053
  }
920
1054
 
1055
+ !isPhone() && this._innerInput.setSelectionRange(0, this.value.length);
921
1056
  this._lastValue = this.value;
922
1057
  }
923
1058
 
@@ -1003,6 +1138,10 @@ class MultiComboBox extends UI5Element {
1003
1138
  return `${this._id}-hiddenText-nMore`;
1004
1139
  }
1005
1140
 
1141
+ get _selectedTokensCount() {
1142
+ return this._tokenizer.tokens.filter(token => token.selected).length;
1143
+ }
1144
+
1006
1145
  get ariaDescribedByText() {
1007
1146
  return this.valueStateTextId ? `${this._tokensCountTextId} ${this.valueStateTextId}` : `${this._tokensCountTextId}`;
1008
1147
  }
@@ -96,7 +96,6 @@
96
96
  skip-registry-update
97
97
  _disable-initial-focus
98
98
  prevent-focus-restore
99
- no-padding
100
99
  hide-arrow
101
100
  class="ui5-valuestatemessage-popover"
102
101
  placement-type="Bottom"
package/src/Panel.hbs CHANGED
@@ -4,7 +4,7 @@
4
4
  aria-label="{{effectiveAccessibleName}}"
5
5
  dir="{{effectiveDir}}"
6
6
  >
7
- <!-- header: either header or h1 with header text -->
7
+ {{! header: either header or h1 with header text}}
8
8
  <div
9
9
  @click="{{_headerClick}}"
10
10
  @keydown="{{_headerKeyDown}}"
@@ -24,7 +24,8 @@
24
24
  class="ui5-panel-header-button {{classes.headerBtn}}"
25
25
  icon="slim-arrow-right"
26
26
  @click="{{_toggleButtonClick}}"
27
- ._buttonAccInfo="{{accInfo.button}}"
27
+ .accessibilityAttributes={{accInfo.button.accessibilityAttributes}}
28
+ tooltip="{{accInfo.button.title}}"
28
29
  accessible-name="{{accInfo.button.ariaLabelButton}}"
29
30
  ></ui5-button>
30
31
  {{else}}
@@ -50,7 +51,7 @@
50
51
  {{/if}}
51
52
  </div>
52
53
 
53
- <!-- content area -->
54
+ {{! content area}}
54
55
  <div
55
56
  class="ui5-panel-content"
56
57
  id="{{_id}}-content"
package/src/Panel.js CHANGED
@@ -8,6 +8,7 @@ import { getAnimationMode } from "@ui5/webcomponents-base/dist/config/AnimationM
8
8
  import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
9
9
  import "@ui5/webcomponents-icons/dist/slim-arrow-right.js";
10
10
  import Button from "./Button.js";
11
+ import Icon from "./Icon.js";
11
12
  import TitleLevel from "./types/TitleLevel.js";
12
13
  import PanelAccessibleRole from "./types/PanelAccessibleRole.js";
13
14
  import PanelTemplate from "./generated/templates/PanelTemplate.lit.js";
@@ -132,7 +133,7 @@ const metadata = {
132
133
  },
133
134
 
134
135
  /**
135
- * Sets the accessible aria name of the component.
136
+ * Defines the accessible aria name of the component.
136
137
  *
137
138
  * @type {string}
138
139
  * @defaultvalue ""
@@ -175,10 +176,6 @@ const metadata = {
175
176
  type: Boolean,
176
177
  noAttribute: true,
177
178
  },
178
-
179
- _buttonAccInfo: {
180
- type: Object,
181
- },
182
179
  },
183
180
  events: /** @lends sap.ui.webcomponents.main.Panel.prototype */ {
184
181
 
@@ -409,8 +406,10 @@ class Panel extends UI5Element {
409
406
  get accInfo() {
410
407
  return {
411
408
  "button": {
412
- "ariaExpanded": this.expanded,
413
- "ariaControls": `${this._id}-content`,
409
+ "accessibilityAttributes": {
410
+ "expanded": this.expanded,
411
+ "controls": `${this._id}-content`,
412
+ },
414
413
  "title": this.toggleButtonTitle,
415
414
  "ariaLabelButton": !this.nonFocusableButton && this.useAccessibleNameForToggleButton ? this.effectiveAccessibleName : undefined,
416
415
  },
@@ -458,7 +457,7 @@ class Panel extends UI5Element {
458
457
  }
459
458
 
460
459
  static get dependencies() {
461
- return [Button];
460
+ return [Button, Icon];
462
461
  }
463
462
 
464
463
  static async onDefine() {
package/src/Popover.hbs CHANGED
@@ -4,7 +4,7 @@
4
4
  <span class="ui5-popover-arrow" style="{{styles.arrow}}"></span>
5
5
 
6
6
  {{#if _displayHeader}}
7
- <header class="ui5-popup-header-root" id="ui5-popup-header">
7
+ <header class="ui5-popup-header-root" id="ui5-popup-header" part="header">
8
8
  {{#if header.length }}
9
9
  <slot name="header"></slot>
10
10
  {{else}}
@@ -17,7 +17,7 @@
17
17
  {{#*inline "afterContent"}}
18
18
  {{#if _displayFooter}}
19
19
  {{#if footer.length }}
20
- <footer class="ui5-popup-footer-root">
20
+ <footer class="ui5-popup-footer-root" part="footer">
21
21
  <slot name="footer"></slot>
22
22
  </footer>
23
23
  {{/if}}
package/src/Popover.js CHANGED
@@ -1,6 +1,5 @@
1
1
  import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
2
2
  import { isIOS } from "@ui5/webcomponents-base/dist/Device.js";
3
- import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
4
3
  import { getClosedPopupParent } from "@ui5/webcomponents-base/dist/util/PopupUtils.js";
5
4
  import clamp from "@ui5/webcomponents-base/dist/util/clamp.js";
6
5
  import Popup from "./Popup.js";
@@ -145,6 +144,17 @@ const metadata = {
145
144
  type: Boolean,
146
145
  },
147
146
 
147
+ /**
148
+ * Defines the opener id of the element that the popover is shown at
149
+ * @public
150
+ * @type {String}
151
+ * @defaultvalue ""
152
+ * @since 1.2.0
153
+ */
154
+ opener: {
155
+ type: String,
156
+ },
157
+
148
158
  /**
149
159
  * Defines whether the content is scrollable.
150
160
  *
@@ -249,6 +259,17 @@ const metadata = {
249
259
  * or selects an action within the popover. You can prevent this with the
250
260
  * <code>modal</code> property.
251
261
  *
262
+ * <h3>CSS Shadow Parts</h3>
263
+ *
264
+ * <ui5-link target="_blank" href="https://developer.mozilla.org/en-US/docs/Web/CSS/::part">CSS Shadow Parts</ui5-link> allow developers to style elements inside the Shadow DOM.
265
+ * <br>
266
+ * The <code>ui5-popover</code> exposes the following CSS Shadow Parts:
267
+ * <ul>
268
+ * <li>header - Used to style the header of the component</li>
269
+ * <li>content - Used to style the content of the component</li>
270
+ * <li>footer - Used to style the footer of the component</li>
271
+ * </ul>
272
+ *
252
273
  * <h3>ES6 Module Import</h3>
253
274
  *
254
275
  * <code>import "@ui5/webcomponents/dist/Popover.js";</code>
@@ -264,8 +285,6 @@ const metadata = {
264
285
  class Popover extends Popup {
265
286
  constructor() {
266
287
  super();
267
-
268
- this._handleResize = this.handleResize.bind(this);
269
288
  }
270
289
 
271
290
  static get metadata() {
@@ -288,12 +307,18 @@ class Popover extends Popup {
288
307
  return 6; // px
289
308
  }
290
309
 
291
- onEnterDOM() {
292
- ResizeHandler.register(this, this._handleResize);
293
- }
310
+ onAfterRendering() {
311
+ if (!this.isOpen() && this.open) {
312
+ const opener = document.getElementById(this.opener);
313
+ if (!opener) {
314
+ console.warn("Valid opener id is required."); // eslint-disable-line
315
+ return;
316
+ }
294
317
 
295
- onExitDOM() {
296
- ResizeHandler.deregister(this, this._handleResize);
318
+ this.showAt(opener);
319
+ } else if (this.isOpen() && !this.open) {
320
+ this.close();
321
+ }
297
322
  }
298
323
 
299
324
  isOpenerClicked(event) {
@@ -365,7 +390,12 @@ class Popover extends Popup {
365
390
  && openerRect.right === 0;
366
391
  }
367
392
 
368
- handleResize() {
393
+ /**
394
+ * @override
395
+ */
396
+ _resize() {
397
+ super._resize();
398
+
369
399
  if (this.opened) {
370
400
  this.reposition();
371
401
  }
package/src/Popup.hbs CHANGED
@@ -16,7 +16,7 @@
16
16
 
17
17
  {{> beforeContent}}
18
18
 
19
- <div style="{{styles.content}}" class="{{classes.content}}" @scroll="{{_scroll}}">
19
+ <div style="{{styles.content}}" class="{{classes.content}}" @scroll="{{_scroll}}" part="content">
20
20
  <slot></slot>
21
21
  </div>
22
22