@ui5/webcomponents 0.0.0-934b4df24 → 0.0.0-b053ad005

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 (732) hide show
  1. package/CHANGELOG.md +552 -1
  2. package/README.md +144 -52
  3. package/csp.js +7 -0
  4. package/customI18n.js +50 -0
  5. package/dist/Assets-static.js +6 -0
  6. package/dist/Assets.js +2 -1
  7. package/dist/Avatar.js +197 -46
  8. package/dist/AvatarGroup.js +603 -0
  9. package/dist/Badge.js +44 -22
  10. package/dist/Breadcrumbs.js +563 -0
  11. package/dist/BreadcrumbsItem.js +109 -0
  12. package/dist/BusyIndicator.js +141 -37
  13. package/dist/Button.js +124 -68
  14. package/dist/Calendar.js +342 -546
  15. package/dist/CalendarDate.js +45 -0
  16. package/dist/CalendarHeader.js +133 -62
  17. package/dist/CalendarPart.js +111 -0
  18. package/dist/Card.js +44 -158
  19. package/dist/CardHeader.js +288 -0
  20. package/dist/Carousel.js +267 -100
  21. package/dist/CheckBox.js +149 -49
  22. package/dist/ColorPalette.js +493 -0
  23. package/dist/ColorPaletteItem.js +137 -0
  24. package/dist/ColorPalettePopover.js +219 -0
  25. package/dist/ColorPicker.js +524 -0
  26. package/dist/ComboBox.js +599 -94
  27. package/dist/ComboBoxFilters.js +8 -1
  28. package/dist/ComboBoxGroupItem.js +70 -0
  29. package/dist/ComboBoxItem.js +12 -24
  30. package/dist/CustomListItem.js +38 -4
  31. package/dist/DateComponentBase.js +170 -0
  32. package/dist/DatePicker.js +392 -409
  33. package/dist/DateRangePicker.js +328 -0
  34. package/dist/DateTimePicker.js +111 -384
  35. package/dist/DayPicker.js +509 -431
  36. package/dist/Dialog.js +496 -44
  37. package/dist/DurationPicker.js +135 -400
  38. package/dist/FileUploader.js +213 -25
  39. package/dist/GroupHeaderListItem.js +24 -14
  40. package/dist/Icon.js +141 -49
  41. package/dist/Input.js +614 -163
  42. package/dist/Interfaces.js +192 -0
  43. package/dist/Label.js +27 -17
  44. package/dist/Link.js +123 -29
  45. package/dist/List.js +451 -117
  46. package/dist/ListItem.js +96 -26
  47. package/dist/ListItemBase.js +31 -8
  48. package/dist/MessageStrip.js +56 -70
  49. package/dist/MonthPicker.js +180 -182
  50. package/dist/MultiComboBox.js +574 -161
  51. package/dist/MultiComboBoxItem.js +8 -2
  52. package/dist/MultiInput.js +301 -0
  53. package/dist/Option.js +48 -5
  54. package/dist/Panel.js +100 -37
  55. package/dist/Popover.js +255 -169
  56. package/dist/Popup.js +370 -96
  57. package/dist/ProgressIndicator.js +235 -0
  58. package/dist/RadioButton.js +131 -51
  59. package/dist/RadioButtonGroup.js +53 -29
  60. package/dist/RangeSlider.js +769 -0
  61. package/dist/RatingIndicator.js +291 -0
  62. package/dist/ResponsivePopover.js +67 -53
  63. package/dist/SegmentedButton.js +112 -76
  64. package/dist/SegmentedButtonItem.js +109 -0
  65. package/dist/Select.js +441 -108
  66. package/dist/Slider.js +320 -0
  67. package/dist/SliderBase.js +842 -0
  68. package/dist/StandardListItem.js +44 -13
  69. package/dist/StepInput.js +681 -0
  70. package/dist/SuggestionGroupItem.js +64 -0
  71. package/dist/SuggestionItem.js +37 -31
  72. package/dist/SuggestionListItem.js +76 -0
  73. package/dist/Switch.js +59 -42
  74. package/dist/Tab.js +55 -24
  75. package/dist/TabContainer.js +145 -65
  76. package/dist/TabSeparator.js +1 -0
  77. package/dist/Table.js +480 -27
  78. package/dist/TableCell.js +11 -9
  79. package/dist/TableColumn.js +13 -3
  80. package/dist/TableGroupRow.js +160 -0
  81. package/dist/TableRow.js +243 -10
  82. package/dist/TextArea.js +139 -41
  83. package/dist/TimePicker.js +55 -675
  84. package/dist/TimePickerBase.js +463 -0
  85. package/dist/TimeSelection.js +493 -0
  86. package/dist/Title.js +16 -9
  87. package/dist/Toast.js +24 -13
  88. package/dist/ToggleButton.js +21 -8
  89. package/dist/Token.js +84 -47
  90. package/dist/Tokenizer.js +246 -64
  91. package/dist/Tree.js +150 -63
  92. package/dist/TreeItem.js +44 -9
  93. package/dist/TreeListItem.js +136 -14
  94. package/dist/WheelSlider.js +79 -59
  95. package/dist/YearPicker.js +199 -255
  96. package/dist/api.json +6877 -1
  97. package/dist/features/ColorPaletteMoreColors.js +42 -0
  98. package/dist/features/InputElementsFormSupport.js +0 -1
  99. package/dist/features/InputSuggestions.js +251 -57
  100. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  101. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  102. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  103. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  104. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -0
  105. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  106. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  107. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  108. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  109. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -0
  110. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -0
  111. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -0
  112. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -0
  113. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  114. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -0
  115. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  116. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  117. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  118. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -0
  119. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  120. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  121. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  122. package/dist/generated/assets/i18n/messagebundle_in.json +1 -0
  123. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  124. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  125. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  126. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  127. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  128. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  129. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  130. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  131. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  132. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  133. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  134. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  135. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -0
  136. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  137. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  138. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  139. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  140. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  141. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  142. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  143. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  144. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  145. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  146. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  147. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  148. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  149. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  150. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  151. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  152. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  153. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -0
  154. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -0
  155. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -0
  156. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -0
  157. package/dist/generated/i18n/i18n-defaults.js +2 -2
  158. package/dist/generated/json-imports/Themes-static.js +35 -0
  159. package/dist/generated/json-imports/Themes.js +23 -15
  160. package/dist/generated/json-imports/i18n-static.js +162 -0
  161. package/dist/generated/json-imports/i18n.js +113 -89
  162. package/dist/generated/templates/AvatarGroupTemplate.lit.js +9 -0
  163. package/dist/generated/templates/AvatarTemplate.lit.js +9 -9
  164. package/dist/generated/templates/BadgeTemplate.lit.js +5 -6
  165. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +8 -0
  166. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +9 -0
  167. package/dist/generated/templates/BusyIndicatorTemplate.lit.js +7 -6
  168. package/dist/generated/templates/ButtonTemplate.lit.js +6 -6
  169. package/dist/generated/templates/CalendarHeaderTemplate.lit.js +6 -4
  170. package/dist/generated/templates/CalendarTemplate.lit.js +4 -4
  171. package/dist/generated/templates/CardHeaderTemplate.lit.js +12 -0
  172. package/dist/generated/templates/CardTemplate.lit.js +5 -8
  173. package/dist/generated/templates/CarouselTemplate.lit.js +13 -12
  174. package/dist/generated/templates/CheckBoxTemplate.lit.js +7 -7
  175. package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +7 -0
  176. package/dist/generated/templates/ColorPaletteItemTemplate.lit.js +7 -0
  177. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +8 -0
  178. package/dist/generated/templates/ColorPaletteTemplate.lit.js +12 -0
  179. package/dist/generated/templates/ColorPickerTemplate.lit.js +7 -0
  180. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +20 -5
  181. package/dist/generated/templates/ComboBoxTemplate.lit.js +8 -6
  182. package/dist/generated/templates/CustomListItemTemplate.lit.js +13 -13
  183. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +7 -6
  184. package/dist/generated/templates/DatePickerTemplate.lit.js +6 -6
  185. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +9 -12
  186. package/dist/generated/templates/DayPickerTemplate.lit.js +13 -11
  187. package/dist/generated/templates/DialogTemplate.lit.js +9 -9
  188. package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +10 -0
  189. package/dist/generated/templates/FileUploaderTemplate.lit.js +7 -7
  190. package/dist/generated/templates/GroupHeaderListItemTemplate.lit.js +4 -4
  191. package/dist/generated/templates/IconTemplate.lit.js +6 -6
  192. package/dist/generated/templates/InputPopoverTemplate.lit.js +24 -23
  193. package/dist/generated/templates/InputTemplate.lit.js +9 -8
  194. package/dist/generated/templates/LabelTemplate.lit.js +4 -4
  195. package/dist/generated/templates/LinkTemplate.lit.js +5 -5
  196. package/dist/generated/templates/ListItemTemplate.lit.js +13 -13
  197. package/dist/generated/templates/ListTemplate.lit.js +12 -9
  198. package/dist/generated/templates/MessageStripTemplate.lit.js +8 -17
  199. package/dist/generated/templates/MonthPickerTemplate.lit.js +6 -6
  200. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +23 -5
  201. package/dist/generated/templates/MultiComboBoxTemplate.lit.js +10 -8
  202. package/dist/generated/templates/MultiInputTemplate.lit.js +16 -0
  203. package/dist/generated/templates/PanelTemplate.lit.js +9 -6
  204. package/dist/generated/templates/PopoverTemplate.lit.js +9 -9
  205. package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +4 -4
  206. package/dist/generated/templates/PopupTemplate.lit.js +4 -9
  207. package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +17 -0
  208. package/dist/generated/templates/RadioButtonTemplate.lit.js +7 -7
  209. package/dist/generated/templates/RangeSliderTemplate.lit.js +13 -0
  210. package/dist/generated/templates/RatingIndicatorTemplate.lit.js +14 -0
  211. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +16 -14
  212. package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +8 -0
  213. package/dist/generated/templates/SegmentedButtonTemplate.lit.js +4 -9
  214. package/dist/generated/templates/SelectPopoverTemplate.lit.js +20 -6
  215. package/dist/generated/templates/SelectTemplate.lit.js +6 -5
  216. package/dist/generated/templates/SliderBaseTemplate.lit.js +11 -0
  217. package/dist/generated/templates/SliderTemplate.lit.js +12 -0
  218. package/dist/generated/templates/StandardListItemTemplate.lit.js +21 -20
  219. package/dist/generated/templates/StepInputTemplate.lit.js +8 -0
  220. package/dist/generated/templates/SuggestionListItemTemplate.lit.js +27 -0
  221. package/dist/generated/templates/SwitchTemplate.lit.js +8 -6
  222. package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +6 -6
  223. package/dist/generated/templates/TabContainerTemplate.lit.js +16 -14
  224. package/dist/generated/templates/TabInOverflowTemplate.lit.js +6 -13
  225. package/dist/generated/templates/TabInStripTemplate.lit.js +8 -21
  226. package/dist/generated/templates/TabSeparatorTemplate.lit.js +4 -4
  227. package/dist/generated/templates/TabTemplate.lit.js +4 -4
  228. package/dist/generated/templates/TableCellTemplate.lit.js +4 -4
  229. package/dist/generated/templates/TableColumnTemplate.lit.js +4 -4
  230. package/dist/generated/templates/TableGroupRowTemplate.lit.js +7 -0
  231. package/dist/generated/templates/TableRowTemplate.lit.js +12 -11
  232. package/dist/generated/templates/TableTemplate.lit.js +13 -8
  233. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +8 -8
  234. package/dist/generated/templates/TextAreaTemplate.lit.js +8 -7
  235. package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +4 -8
  236. package/dist/generated/templates/TimePickerTemplate.lit.js +6 -6
  237. package/dist/generated/templates/TimeSelectionTemplate.lit.js +11 -0
  238. package/dist/generated/templates/TitleTemplate.lit.js +10 -10
  239. package/dist/generated/templates/ToastTemplate.lit.js +5 -4
  240. package/dist/generated/templates/ToggleButtonTemplate.lit.js +6 -6
  241. package/dist/generated/templates/TokenTemplate.lit.js +7 -5
  242. package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +12 -0
  243. package/dist/generated/templates/TokenizerTemplate.lit.js +6 -6
  244. package/dist/generated/templates/TreeListItemTemplate.lit.js +18 -16
  245. package/dist/generated/templates/TreeTemplate.lit.js +5 -5
  246. package/dist/generated/templates/WheelSliderTemplate.lit.js +7 -7
  247. package/dist/generated/templates/YearPickerTemplate.lit.js +6 -6
  248. package/dist/generated/themes/Avatar.css.js +5 -5
  249. package/dist/generated/themes/AvatarGroup.css.js +8 -0
  250. package/dist/generated/themes/Badge.css.js +5 -5
  251. package/dist/generated/themes/Breadcrumbs.css.js +8 -0
  252. package/dist/generated/themes/BreadcrumbsPopover.css.js +8 -0
  253. package/dist/generated/themes/BrowserScrollbar.css.js +8 -0
  254. package/dist/generated/themes/BusyIndicator.css.js +5 -5
  255. package/dist/generated/themes/Button.css.js +5 -5
  256. package/dist/generated/themes/Button.ie11.css.js +8 -0
  257. package/dist/generated/themes/Calendar.css.js +5 -5
  258. package/dist/generated/themes/CalendarHeader.css.js +5 -5
  259. package/dist/generated/themes/Card.css.js +5 -5
  260. package/dist/generated/themes/CardHeader.css.js +8 -0
  261. package/dist/generated/themes/Carousel.css.js +5 -5
  262. package/dist/generated/themes/CheckBox.css.js +5 -5
  263. package/dist/generated/themes/ColorPalette.css.js +8 -0
  264. package/dist/generated/themes/ColorPaletteItem.css.js +8 -0
  265. package/dist/generated/themes/ColorPalettePopover.css.js +8 -0
  266. package/dist/generated/themes/ColorPaletteStaticArea.css.js +8 -0
  267. package/dist/generated/themes/ColorPicker.css.js +8 -0
  268. package/dist/generated/themes/ComboBox.css.js +5 -5
  269. package/dist/generated/themes/ComboBoxPopover.css.js +5 -5
  270. package/dist/generated/themes/CustomListItem.css.js +5 -5
  271. package/dist/generated/themes/DatePicker.css.js +5 -5
  272. package/dist/generated/themes/DatePickerPopover.css.js +5 -5
  273. package/dist/generated/themes/DateRangePicker.css.js +8 -0
  274. package/dist/generated/themes/DateTimePicker.css.js +8 -0
  275. package/dist/generated/themes/DateTimePickerPopover.css.js +5 -5
  276. package/dist/generated/themes/DayPicker.css.js +5 -5
  277. package/dist/generated/themes/Dialog.css.js +5 -5
  278. package/dist/generated/themes/FileUploader.css.js +5 -5
  279. package/dist/generated/themes/GroupHeaderListItem.css.js +5 -5
  280. package/dist/generated/themes/GrowingButton.css.js +8 -0
  281. package/dist/generated/themes/Icon.css.js +5 -5
  282. package/dist/generated/themes/Input.css.js +5 -5
  283. package/dist/generated/themes/InputIcon.css.js +5 -5
  284. package/dist/generated/themes/InvisibleTextStyles.css.js +5 -5
  285. package/dist/generated/themes/Label.css.js +5 -5
  286. package/dist/generated/themes/Link.css.js +5 -5
  287. package/dist/generated/themes/List.css.js +5 -5
  288. package/dist/generated/themes/ListItem.css.js +5 -5
  289. package/dist/generated/themes/ListItemBase.css.js +5 -5
  290. package/dist/generated/themes/MessageStrip.css.js +5 -5
  291. package/dist/generated/themes/MonthPicker.css.js +5 -5
  292. package/dist/generated/themes/MultiComboBox.css.js +5 -5
  293. package/dist/generated/themes/MultiInput.css.js +8 -0
  294. package/dist/generated/themes/Panel.css.js +5 -5
  295. package/dist/generated/themes/Popover.css.js +5 -5
  296. package/dist/generated/themes/Popup.css.js +5 -5
  297. package/dist/generated/themes/PopupGlobal.css.js +8 -0
  298. package/dist/generated/themes/PopupStaticAreaStyles.css.js +5 -5
  299. package/dist/generated/themes/PopupsCommon.css.js +8 -0
  300. package/dist/generated/themes/ProgressIndicator.css.js +8 -0
  301. package/dist/generated/themes/RadioButton.css.js +5 -5
  302. package/dist/generated/themes/RatingIndicator.css.js +8 -0
  303. package/dist/generated/themes/ResponsivePopover.css.js +5 -5
  304. package/dist/generated/themes/ResponsivePopoverCommon.css.js +5 -5
  305. package/dist/generated/themes/SegmentedButton.css.js +5 -5
  306. package/dist/generated/themes/Select.css.js +5 -5
  307. package/dist/generated/themes/SelectPopover.css.js +8 -0
  308. package/dist/generated/themes/SliderBase.css.js +8 -0
  309. package/dist/generated/themes/StepInput.css.js +8 -0
  310. package/dist/generated/themes/Suggestions.css.js +8 -0
  311. package/dist/generated/themes/Switch.css.js +5 -5
  312. package/dist/generated/themes/Tab.css.js +5 -5
  313. package/dist/generated/themes/TabContainer.css.js +5 -5
  314. package/dist/generated/themes/TabInOverflow.css.js +5 -5
  315. package/dist/generated/themes/TabInStrip.css.js +5 -5
  316. package/dist/generated/themes/Table.css.js +5 -5
  317. package/dist/generated/themes/TableCell.css.js +5 -5
  318. package/dist/generated/themes/TableColumn.css.js +5 -5
  319. package/dist/generated/themes/TableGroupRow.css.js +8 -0
  320. package/dist/generated/themes/TableRow.css.js +5 -5
  321. package/dist/generated/themes/TapHighlightColor.css.js +8 -0
  322. package/dist/generated/themes/TextArea.css.js +5 -5
  323. package/dist/generated/themes/TimePicker.css.js +5 -5
  324. package/dist/generated/themes/TimePickerPopover.css.js +5 -5
  325. package/dist/generated/themes/TimeSelection.css.js +8 -0
  326. package/dist/generated/themes/Title.css.js +5 -5
  327. package/dist/generated/themes/Toast.css.js +5 -5
  328. package/dist/generated/themes/ToggleButton.css.js +5 -5
  329. package/dist/generated/themes/ToggleButton.ie11.css.js +8 -0
  330. package/dist/generated/themes/Token.css.js +5 -5
  331. package/dist/generated/themes/Tokenizer.css.js +5 -5
  332. package/dist/generated/themes/Tree.css.js +5 -5
  333. package/dist/generated/themes/TreeListItem.css.js +5 -5
  334. package/dist/generated/themes/ValueStateMessage.css.js +5 -5
  335. package/dist/generated/themes/WheelSlider.css.js +5 -5
  336. package/dist/generated/themes/YearPicker.css.js +5 -5
  337. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  338. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  339. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  340. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  341. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  342. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -0
  343. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -0
  344. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -0
  345. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -0
  346. package/dist/i18n/messagebundle.properties +335 -0
  347. package/dist/i18n/messagebundle_ar.properties +224 -0
  348. package/dist/i18n/messagebundle_bg.properties +224 -0
  349. package/dist/i18n/messagebundle_ca.properties +224 -0
  350. package/dist/i18n/messagebundle_cs.properties +224 -0
  351. package/dist/i18n/messagebundle_cy.properties +224 -0
  352. package/dist/i18n/messagebundle_da.properties +224 -0
  353. package/dist/i18n/messagebundle_de.properties +224 -0
  354. package/dist/i18n/messagebundle_el.properties +224 -0
  355. package/dist/i18n/messagebundle_en.properties +224 -0
  356. package/dist/i18n/messagebundle_en_GB.properties +224 -0
  357. package/dist/i18n/messagebundle_en_US_sappsd.properties +224 -0
  358. package/dist/i18n/messagebundle_en_US_saprigi.properties +224 -0
  359. package/dist/i18n/messagebundle_en_US_saptrc.properties +224 -0
  360. package/dist/i18n/messagebundle_es.properties +224 -0
  361. package/dist/i18n/messagebundle_es_MX.properties +224 -0
  362. package/dist/i18n/messagebundle_et.properties +224 -0
  363. package/dist/i18n/messagebundle_fi.properties +224 -0
  364. package/dist/i18n/messagebundle_fr.properties +224 -0
  365. package/dist/i18n/messagebundle_fr_CA.properties +224 -0
  366. package/dist/i18n/messagebundle_hi.properties +224 -0
  367. package/dist/i18n/messagebundle_hr.properties +224 -0
  368. package/dist/i18n/messagebundle_hu.properties +224 -0
  369. package/dist/i18n/messagebundle_id.properties +224 -0
  370. package/dist/i18n/messagebundle_in.properties +172 -0
  371. package/dist/i18n/messagebundle_it.properties +224 -0
  372. package/dist/i18n/messagebundle_iw.properties +224 -0
  373. package/dist/i18n/messagebundle_ja.properties +224 -0
  374. package/dist/i18n/messagebundle_kk.properties +224 -0
  375. package/dist/i18n/messagebundle_ko.properties +224 -0
  376. package/dist/i18n/messagebundle_lt.properties +224 -0
  377. package/dist/i18n/messagebundle_lv.properties +224 -0
  378. package/dist/i18n/messagebundle_ms.properties +224 -0
  379. package/dist/i18n/messagebundle_nl.properties +224 -0
  380. package/dist/i18n/messagebundle_no.properties +224 -0
  381. package/dist/i18n/messagebundle_pl.properties +224 -0
  382. package/dist/i18n/messagebundle_pt.properties +224 -0
  383. package/dist/i18n/messagebundle_pt_PT.properties +224 -0
  384. package/dist/i18n/messagebundle_ro.properties +224 -0
  385. package/dist/i18n/messagebundle_ru.properties +224 -0
  386. package/dist/i18n/messagebundle_sh.properties +224 -0
  387. package/dist/i18n/messagebundle_sk.properties +224 -0
  388. package/dist/i18n/messagebundle_sl.properties +224 -0
  389. package/dist/i18n/messagebundle_sv.properties +224 -0
  390. package/dist/i18n/messagebundle_th.properties +224 -0
  391. package/dist/i18n/messagebundle_tr.properties +224 -0
  392. package/dist/i18n/messagebundle_uk.properties +224 -0
  393. package/dist/i18n/messagebundle_vi.properties +224 -0
  394. package/dist/i18n/messagebundle_zh_CN.properties +224 -0
  395. package/dist/i18n/messagebundle_zh_TW.properties +224 -0
  396. package/dist/popup-utils/OpenedPopupsRegistry.js +18 -13
  397. package/dist/popup-utils/PopoverRegistry.js +49 -15
  398. package/dist/timepicker-utils/TimeSlider.js +15 -13
  399. package/dist/types/{AvatarBackgroundColor.js → AvatarColorScheme.js} +9 -9
  400. package/dist/types/AvatarGroupType.js +43 -0
  401. package/dist/types/AvatarShape.js +1 -1
  402. package/dist/types/AvatarSize.js +1 -1
  403. package/dist/types/BreadcrumbsDesign.js +42 -0
  404. package/dist/types/BreadcrumbsSeparatorStyle.js +69 -0
  405. package/dist/types/BusyIndicatorSize.js +1 -1
  406. package/dist/types/ButtonDesign.js +8 -1
  407. package/dist/types/CalendarSelectionMode.js +47 -0
  408. package/dist/types/CarouselArrowsPlacement.js +3 -3
  409. package/dist/types/GrowingMode.js +48 -0
  410. package/dist/types/InputType.js +7 -7
  411. package/dist/types/LinkDesign.js +1 -1
  412. package/dist/types/ListGrowingMode.js +15 -0
  413. package/dist/types/ListItemType.js +2 -2
  414. package/dist/types/ListMode.js +9 -1
  415. package/dist/types/ListSeparators.js +1 -1
  416. package/dist/types/{MessageStripType.js → MessageStripDesign.js} +7 -7
  417. package/dist/types/PanelAccessibleRole.js +1 -1
  418. package/dist/types/PopoverHorizontalAlign.js +1 -1
  419. package/dist/types/PopoverPlacementType.js +2 -2
  420. package/dist/types/PopoverVerticalAlign.js +1 -2
  421. package/dist/types/Priority.js +1 -1
  422. package/dist/types/SemanticColor.js +1 -1
  423. package/dist/types/SwitchDesign.js +40 -0
  424. package/dist/types/TabContainerTabsPlacement.js +5 -5
  425. package/dist/types/TabLayout.js +1 -1
  426. package/dist/types/TableGrowingMode.js +15 -0
  427. package/dist/types/TableMode.js +47 -0
  428. package/dist/types/TableRowType.js +40 -0
  429. package/dist/types/TitleLevel.js +1 -1
  430. package/dist/types/ToastPlacement.js +1 -2
  431. package/dist/types/WrappingType.js +41 -0
  432. package/dist/webcomponentsjs/CHANGELOG.md +61 -0
  433. package/dist/webcomponentsjs/README.md +64 -47
  434. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +38 -38
  435. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +1 -1
  436. package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js +60 -0
  437. package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js.map +1 -0
  438. package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js +95 -0
  439. package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js.map +1 -0
  440. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +292 -229
  441. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +1 -1
  442. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +190 -170
  443. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +1 -1
  444. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +151 -132
  445. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +1 -1
  446. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +2 -2
  447. package/dist/webcomponentsjs/webcomponents-bundle.js +302 -230
  448. package/dist/webcomponentsjs/webcomponents-bundle.js.map +1 -1
  449. package/dist/webcomponentsjs/webcomponents-loader.js +49 -28
  450. package/package-scripts.js +1 -0
  451. package/package.json +23 -7
  452. package/src/Assets-static.js +6 -0
  453. package/src/Assets.js +7 -0
  454. package/src/Avatar.hbs +20 -0
  455. package/src/Avatar.js +392 -0
  456. package/src/AvatarGroup.hbs +30 -0
  457. package/src/AvatarGroup.js +603 -0
  458. package/src/Badge.hbs +14 -0
  459. package/src/Badge.js +165 -0
  460. package/src/Breadcrumbs.hbs +42 -0
  461. package/src/Breadcrumbs.js +563 -0
  462. package/src/BreadcrumbsItem.js +109 -0
  463. package/src/BreadcrumbsPopover.hbs +28 -0
  464. package/src/BusyIndicator.hbs +32 -0
  465. package/src/BusyIndicator.js +269 -0
  466. package/src/Button.hbs +45 -0
  467. package/src/Button.js +463 -0
  468. package/src/Calendar.hbs +69 -0
  469. package/src/Calendar.js +489 -0
  470. package/src/CalendarDate.js +45 -0
  471. package/src/CalendarHeader.hbs +54 -0
  472. package/src/CalendarHeader.js +209 -0
  473. package/src/CalendarPart.js +111 -0
  474. package/src/Card.hbs +14 -0
  475. package/src/Card.js +160 -0
  476. package/src/CardHeader.hbs +35 -0
  477. package/src/CardHeader.js +288 -0
  478. package/src/Carousel.hbs +85 -0
  479. package/src/Carousel.js +681 -0
  480. package/src/CheckBox.hbs +44 -0
  481. package/src/CheckBox.js +424 -0
  482. package/src/ColorPalette.hbs +52 -0
  483. package/src/ColorPalette.js +493 -0
  484. package/src/ColorPaletteDialog.hbs +18 -0
  485. package/src/ColorPaletteItem.hbs +11 -0
  486. package/src/ColorPaletteItem.js +137 -0
  487. package/src/ColorPalettePopover.hbs +29 -0
  488. package/src/ColorPalettePopover.js +219 -0
  489. package/src/ColorPicker.hbs +98 -0
  490. package/src/ColorPicker.js +524 -0
  491. package/src/ComboBox.hbs +49 -0
  492. package/src/ComboBox.js +1041 -0
  493. package/src/ComboBoxFilters.js +40 -0
  494. package/src/ComboBoxGroupItem.js +70 -0
  495. package/src/ComboBoxItem.js +49 -0
  496. package/src/ComboBoxPopover.hbs +125 -0
  497. package/src/CustomListItem.hbs +5 -0
  498. package/src/CustomListItem.js +99 -0
  499. package/src/DateComponentBase.js +170 -0
  500. package/src/DatePicker.hbs +44 -0
  501. package/src/DatePicker.js +823 -0
  502. package/src/DatePickerPopover.hbs +63 -0
  503. package/src/DateRangePicker.js +328 -0
  504. package/src/DateTimePicker.js +430 -0
  505. package/src/DateTimePickerPopover.hbs +74 -0
  506. package/src/DayPicker.hbs +66 -0
  507. package/src/DayPicker.js +754 -0
  508. package/src/Dialog.hbs +35 -0
  509. package/src/Dialog.js +601 -0
  510. package/src/DurationPicker.js +312 -0
  511. package/src/FileUploader.hbs +40 -0
  512. package/src/FileUploader.js +532 -0
  513. package/src/FileUploaderPopover.hbs +25 -0
  514. package/src/GroupHeaderListItem.hbs +15 -0
  515. package/src/GroupHeaderListItem.js +94 -0
  516. package/src/Icon.hbs +25 -0
  517. package/src/Icon.js +373 -0
  518. package/src/Input.hbs +78 -0
  519. package/src/Input.js +1381 -0
  520. package/src/InputPopover.hbs +118 -0
  521. package/src/Interfaces.js +192 -0
  522. package/src/Label.hbs +13 -0
  523. package/src/Label.js +152 -0
  524. package/src/Link.hbs +20 -0
  525. package/src/Link.js +349 -0
  526. package/src/List.hbs +89 -0
  527. package/src/List.js +1056 -0
  528. package/src/ListItem.hbs +102 -0
  529. package/src/ListItem.js +371 -0
  530. package/src/ListItemBase.js +179 -0
  531. package/src/MessageStrip.hbs +34 -0
  532. package/src/MessageStrip.js +227 -0
  533. package/src/MonthPicker.hbs +29 -0
  534. package/src/MonthPicker.js +299 -0
  535. package/src/MultiComboBox.hbs +78 -0
  536. package/src/MultiComboBox.js +1091 -0
  537. package/src/MultiComboBoxItem.js +43 -0
  538. package/src/MultiComboBoxPopover.hbs +133 -0
  539. package/src/MultiInput.hbs +41 -0
  540. package/src/MultiInput.js +301 -0
  541. package/src/Option.js +115 -0
  542. package/src/Panel.hbs +63 -0
  543. package/src/Panel.js +462 -0
  544. package/src/Popover.hbs +25 -0
  545. package/src/Popover.js +786 -0
  546. package/src/Popup.hbs +34 -0
  547. package/src/Popup.js +567 -0
  548. package/src/PopupBlockLayer.hbs +7 -0
  549. package/src/ProgressIndicator.hbs +35 -0
  550. package/src/ProgressIndicator.js +235 -0
  551. package/src/RadioButton.hbs +33 -0
  552. package/src/RadioButton.js +494 -0
  553. package/src/RadioButtonGroup.js +205 -0
  554. package/src/RangeSlider.hbs +70 -0
  555. package/src/RangeSlider.js +769 -0
  556. package/src/RatingIndicator.hbs +33 -0
  557. package/src/RatingIndicator.js +291 -0
  558. package/src/ResponsivePopover.hbs +39 -0
  559. package/src/ResponsivePopover.js +206 -0
  560. package/src/SegmentedButton.hbs +17 -0
  561. package/src/SegmentedButton.js +290 -0
  562. package/src/SegmentedButtonItem.hbs +42 -0
  563. package/src/SegmentedButtonItem.js +109 -0
  564. package/src/Select.hbs +45 -0
  565. package/src/Select.js +834 -0
  566. package/src/SelectPopover.hbs +89 -0
  567. package/src/Slider.hbs +42 -0
  568. package/src/Slider.js +320 -0
  569. package/src/SliderBase.hbs +38 -0
  570. package/src/SliderBase.js +842 -0
  571. package/src/StandardListItem.hbs +44 -0
  572. package/src/StandardListItem.js +191 -0
  573. package/src/StepInput.hbs +77 -0
  574. package/src/StepInput.js +681 -0
  575. package/src/SuggestionGroupItem.js +64 -0
  576. package/src/SuggestionItem.js +146 -0
  577. package/src/SuggestionListItem.hbs +33 -0
  578. package/src/SuggestionListItem.js +76 -0
  579. package/src/Switch.hbs +50 -0
  580. package/src/Switch.js +261 -0
  581. package/src/Tab.hbs +3 -0
  582. package/src/Tab.js +334 -0
  583. package/src/TabContainer.hbs +93 -0
  584. package/src/TabContainer.js +679 -0
  585. package/src/TabContainerPopover.hbs +24 -0
  586. package/src/TabInOverflow.hbs +22 -0
  587. package/src/TabInStrip.hbs +43 -0
  588. package/src/TabSeparator.hbs +1 -0
  589. package/src/TabSeparator.js +44 -0
  590. package/src/Table.hbs +99 -0
  591. package/src/Table.js +761 -0
  592. package/src/TableCell.hbs +7 -0
  593. package/src/TableCell.js +88 -0
  594. package/src/TableColumn.hbs +8 -0
  595. package/src/TableColumn.js +136 -0
  596. package/src/TableGroupRow.hbs +12 -0
  597. package/src/TableGroupRow.js +160 -0
  598. package/src/TableRow.hbs +61 -0
  599. package/src/TableRow.js +388 -0
  600. package/src/TextArea.hbs +50 -0
  601. package/src/TextArea.js +691 -0
  602. package/src/TextAreaPopover.hbs +28 -0
  603. package/src/TimePicker.hbs +35 -0
  604. package/src/TimePicker.js +166 -0
  605. package/src/TimePickerBase.js +463 -0
  606. package/src/TimePickerPopover.hbs +34 -0
  607. package/src/TimeSelection.hbs +60 -0
  608. package/src/TimeSelection.js +493 -0
  609. package/src/Title.hbs +47 -0
  610. package/src/Title.js +132 -0
  611. package/src/Toast.hbs +13 -0
  612. package/src/Toast.js +243 -0
  613. package/src/ToggleButton.hbs +5 -0
  614. package/src/ToggleButton.js +84 -0
  615. package/src/Token.hbs +30 -0
  616. package/src/Token.js +219 -0
  617. package/src/Tokenizer.hbs +27 -0
  618. package/src/Tokenizer.js +414 -0
  619. package/src/TokenizerPopover.hbs +50 -0
  620. package/src/Tree.hbs +42 -0
  621. package/src/Tree.js +443 -0
  622. package/src/TreeItem.js +168 -0
  623. package/src/TreeListItem.hbs +48 -0
  624. package/src/TreeListItem.js +332 -0
  625. package/src/WheelSlider.hbs +48 -0
  626. package/src/WheelSlider.js +435 -0
  627. package/src/YearPicker.hbs +27 -0
  628. package/src/YearPicker.js +324 -0
  629. package/src/features/ColorPaletteMoreColors.js +42 -0
  630. package/src/features/InputElementsFormSupport.js +88 -0
  631. package/src/features/InputSuggestions.js +530 -0
  632. package/src/i18n/messagebundle.properties +335 -0
  633. package/src/i18n/messagebundle_ar.properties +224 -0
  634. package/src/i18n/messagebundle_bg.properties +224 -0
  635. package/src/i18n/messagebundle_ca.properties +224 -0
  636. package/src/i18n/messagebundle_cs.properties +224 -0
  637. package/src/i18n/messagebundle_cy.properties +224 -0
  638. package/src/i18n/messagebundle_da.properties +224 -0
  639. package/src/i18n/messagebundle_de.properties +224 -0
  640. package/src/i18n/messagebundle_el.properties +224 -0
  641. package/src/i18n/messagebundle_en.properties +224 -0
  642. package/src/i18n/messagebundle_en_GB.properties +224 -0
  643. package/src/i18n/messagebundle_en_US_sappsd.properties +224 -0
  644. package/src/i18n/messagebundle_en_US_saprigi.properties +224 -0
  645. package/src/i18n/messagebundle_en_US_saptrc.properties +224 -0
  646. package/src/i18n/messagebundle_es.properties +224 -0
  647. package/src/i18n/messagebundle_es_MX.properties +224 -0
  648. package/src/i18n/messagebundle_et.properties +224 -0
  649. package/src/i18n/messagebundle_fi.properties +224 -0
  650. package/src/i18n/messagebundle_fr.properties +224 -0
  651. package/src/i18n/messagebundle_fr_CA.properties +224 -0
  652. package/src/i18n/messagebundle_hi.properties +224 -0
  653. package/src/i18n/messagebundle_hr.properties +224 -0
  654. package/src/i18n/messagebundle_hu.properties +224 -0
  655. package/src/i18n/messagebundle_id.properties +224 -0
  656. package/src/i18n/messagebundle_in.properties +172 -0
  657. package/src/i18n/messagebundle_it.properties +224 -0
  658. package/src/i18n/messagebundle_iw.properties +224 -0
  659. package/src/i18n/messagebundle_ja.properties +224 -0
  660. package/src/i18n/messagebundle_kk.properties +224 -0
  661. package/src/i18n/messagebundle_ko.properties +224 -0
  662. package/src/i18n/messagebundle_lt.properties +224 -0
  663. package/src/i18n/messagebundle_lv.properties +224 -0
  664. package/src/i18n/messagebundle_ms.properties +224 -0
  665. package/src/i18n/messagebundle_nl.properties +224 -0
  666. package/src/i18n/messagebundle_no.properties +224 -0
  667. package/src/i18n/messagebundle_pl.properties +224 -0
  668. package/src/i18n/messagebundle_pt.properties +224 -0
  669. package/src/i18n/messagebundle_pt_PT.properties +224 -0
  670. package/src/i18n/messagebundle_ro.properties +224 -0
  671. package/src/i18n/messagebundle_ru.properties +224 -0
  672. package/src/i18n/messagebundle_sh.properties +224 -0
  673. package/src/i18n/messagebundle_sk.properties +224 -0
  674. package/src/i18n/messagebundle_sl.properties +224 -0
  675. package/src/i18n/messagebundle_sv.properties +224 -0
  676. package/src/i18n/messagebundle_th.properties +224 -0
  677. package/src/i18n/messagebundle_tr.properties +224 -0
  678. package/src/i18n/messagebundle_uk.properties +224 -0
  679. package/src/i18n/messagebundle_vi.properties +224 -0
  680. package/src/i18n/messagebundle_zh_CN.properties +224 -0
  681. package/src/i18n/messagebundle_zh_TW.properties +224 -0
  682. package/src/popup-utils/OpenedPopupsRegistry.js +50 -0
  683. package/src/popup-utils/PopoverRegistry.js +145 -0
  684. package/src/timepicker-utils/TimeSlider.js +103 -0
  685. package/src/types/AvatarColorScheme.js +104 -0
  686. package/src/types/AvatarGroupType.js +43 -0
  687. package/src/types/AvatarShape.js +41 -0
  688. package/src/types/AvatarSize.js +67 -0
  689. package/src/types/BreadcrumbsDesign.js +42 -0
  690. package/src/types/BreadcrumbsSeparatorStyle.js +69 -0
  691. package/src/types/BusyIndicatorSize.js +47 -0
  692. package/src/types/ButtonDesign.js +68 -0
  693. package/src/types/CalendarSelectionMode.js +47 -0
  694. package/src/types/CarouselArrowsPlacement.js +40 -0
  695. package/src/types/GrowingMode.js +48 -0
  696. package/src/types/InputType.js +68 -0
  697. package/src/types/LinkDesign.js +47 -0
  698. package/src/types/ListGrowingMode.js +15 -0
  699. package/src/types/ListItemType.js +47 -0
  700. package/src/types/ListMode.js +77 -0
  701. package/src/types/ListSeparators.js +46 -0
  702. package/src/types/MessageStripDesign.js +54 -0
  703. package/src/types/PanelAccessibleRole.js +48 -0
  704. package/src/types/PopoverHorizontalAlign.js +54 -0
  705. package/src/types/PopoverPlacementType.js +54 -0
  706. package/src/types/PopoverVerticalAlign.js +54 -0
  707. package/src/types/Priority.js +55 -0
  708. package/src/types/SemanticColor.js +61 -0
  709. package/src/types/SwitchDesign.js +40 -0
  710. package/src/types/TabContainerTabsPlacement.js +40 -0
  711. package/src/types/TabLayout.js +40 -0
  712. package/src/types/TableGrowingMode.js +15 -0
  713. package/src/types/TableMode.js +47 -0
  714. package/src/types/TableRowType.js +40 -0
  715. package/src/types/TitleLevel.js +68 -0
  716. package/src/types/ToastPlacement.js +91 -0
  717. package/src/types/WrappingType.js +41 -0
  718. package/dist/Timeline.js +0 -97
  719. package/dist/TimelineItem.js +0 -161
  720. package/dist/generated/templates/ComboBoxItemTemplate.lit.js +0 -7
  721. package/dist/generated/templates/DurationPickerPopoverTemplate.lit.js +0 -10
  722. package/dist/generated/templates/DurationPickerTemplate.lit.js +0 -8
  723. package/dist/generated/templates/TimelineItemTemplate.lit.js +0 -12
  724. package/dist/generated/templates/TimelineTemplate.lit.js +0 -8
  725. package/dist/generated/themes/ComboBoxItem.css.js +0 -8
  726. package/dist/generated/themes/DurationPicker.css.js +0 -8
  727. package/dist/generated/themes/DurationPickerPopover.css.js +0 -8
  728. package/dist/generated/themes/Timeline.css.js +0 -8
  729. package/dist/generated/themes/TimelineItem.css.js +0 -8
  730. package/dist/popup-utils/PopupUtils.js +0 -55
  731. package/dist/types/AvatarFitType.js +0 -40
  732. package/dist/webcomponentsjs/package.json +0 -46
package/src/Popup.hbs ADDED
@@ -0,0 +1,34 @@
1
+ <section
2
+ style="{{styles.root}}"
3
+ class="{{classes.root}}"
4
+ role="dialog"
5
+ aria-modal="{{_ariaModal}}"
6
+ aria-label="{{_ariaLabel}}"
7
+ aria-labelledby="{{_ariaLabelledBy}}"
8
+ dir="{{effectiveDir}}"
9
+ @keydown={{_onkeydown}}
10
+ @focusout={{_onfocusout}}
11
+ @mouseup={{_onmouseup}}
12
+ @mousedown={{_onmousedown}}
13
+ >
14
+
15
+ <span class="first-fe" data-ui5-focus-trap tabindex="0" @focusin={{forwardToLast}}></span>
16
+
17
+ {{> beforeContent}}
18
+
19
+ <div style="{{styles.content}}" class="{{classes.content}}" @scroll="{{_scroll}}">
20
+ <slot></slot>
21
+ </div>
22
+
23
+ {{> afterContent}}
24
+
25
+ <span class="last-fe" data-ui5-focus-trap tabindex="0" @focusin={{forwardToFirst}}></span>
26
+
27
+ </section>
28
+
29
+
30
+ {{#*inline "beforeContent"}}{{/inline}}
31
+
32
+ {{#*inline "afterContent"}}{{/inline}}
33
+
34
+
package/src/Popup.js ADDED
@@ -0,0 +1,567 @@
1
+ import { renderFinished } from "@ui5/webcomponents-base/dist/Render.js";
2
+ import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
3
+ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
4
+ import { isChrome } from "@ui5/webcomponents-base/dist/Device.js";
5
+ import { getFirstFocusableElement, getLastFocusableElement } from "@ui5/webcomponents-base/dist/util/FocusableElements.js";
6
+ import { hasStyle, createStyle } from "@ui5/webcomponents-base/dist/ManagedStyles.js";
7
+ import { isTabPrevious } from "@ui5/webcomponents-base/dist/Keys.js";
8
+ import { getNextZIndex, getFocusedElement, isFocusedElementWithinNode } from "@ui5/webcomponents-base/dist/util/PopupUtils.js";
9
+ import PopupTemplate from "./generated/templates/PopupTemplate.lit.js";
10
+ import PopupBlockLayer from "./generated/templates/PopupBlockLayerTemplate.lit.js";
11
+ import { addOpenedPopup, removeOpenedPopup } from "./popup-utils/OpenedPopupsRegistry.js";
12
+
13
+ // Styles
14
+ import styles from "./generated/themes/Popup.css.js";
15
+ import staticAreaStyles from "./generated/themes/PopupStaticAreaStyles.css.js";
16
+ import globalStyles from "./generated/themes/PopupGlobal.css.js";
17
+
18
+ /**
19
+ * @public
20
+ */
21
+ const metadata = {
22
+ managedSlots: true,
23
+ slots: /** @lends sap.ui.webcomponents.main.Popup.prototype */ {
24
+
25
+ /**
26
+ * Defines the content of the Popup.
27
+ * @type {HTMLElement[]}
28
+ * @slot
29
+ * @public
30
+ */
31
+ "default": {
32
+ type: HTMLElement,
33
+ propertyName: "content",
34
+ },
35
+ },
36
+ properties: /** @lends sap.ui.webcomponents.main.Popup.prototype */ {
37
+ /**
38
+ * Defines the ID of the HTML Element, which will get the initial focus.
39
+ *
40
+ * @type {string}
41
+ * @defaultvalue ""
42
+ * @public
43
+ */
44
+ initialFocus: {
45
+ type: String,
46
+ },
47
+
48
+ /**
49
+ * Defines if the focus should be returned to the previously focused element,
50
+ * when the popup closes.
51
+ * @type {boolean}
52
+ * @defaultvalue false
53
+ * @public
54
+ * @since 1.0.0-rc.8
55
+ */
56
+ preventFocusRestore: {
57
+ type: Boolean,
58
+ },
59
+
60
+ /**
61
+ * Indicates if the element is open
62
+ * @private
63
+ * @type {boolean}
64
+ * @defaultvalue false
65
+ */
66
+ opened: {
67
+ type: Boolean,
68
+ },
69
+
70
+ /**
71
+ * Sets the accessible aria name of the component.
72
+ *
73
+ * @type {String}
74
+ * @defaultvalue ""
75
+ * @public
76
+ * @since 1.0.0-rc.15
77
+ */
78
+ accessibleName: {
79
+ type: String,
80
+ defaultValue: undefined,
81
+ },
82
+
83
+ /**
84
+ * @private
85
+ */
86
+ _disableInitialFocus: {
87
+ type: Boolean,
88
+ },
89
+
90
+ _blockLayerHidden: {
91
+ type: Boolean,
92
+ },
93
+ },
94
+ events: /** @lends sap.ui.webcomponents.main.Popup.prototype */ {
95
+
96
+ /**
97
+ * Fired before the component is opened. This event can be cancelled, which will prevent the popup from opening. <b>This event does not bubble.</b>
98
+ *
99
+ * @public
100
+ * @event sap.ui.webcomponents.main.Popup#before-open
101
+ * @allowPreventDefault
102
+ */
103
+ "before-open": {},
104
+
105
+ /**
106
+ * Fired after the component is opened. <b>This event does not bubble.</b>
107
+ *
108
+ * @public
109
+ * @event sap.ui.webcomponents.main.Popup#after-open
110
+ */
111
+ "after-open": {},
112
+
113
+ /**
114
+ * Fired before the component is closed. This event can be cancelled, which will prevent the popup from closing. <b>This event does not bubble.</b>
115
+ *
116
+ * @public
117
+ * @event sap.ui.webcomponents.main.Popup#before-close
118
+ * @allowPreventDefault
119
+ * @param {boolean} escPressed Indicates that <code>ESC</code> key has triggered the event.
120
+ */
121
+ "before-close": {
122
+ detail: {
123
+ escPressed: { type: Boolean },
124
+ },
125
+ },
126
+
127
+ /**
128
+ * Fired after the component is closed. <b>This event does not bubble.</b>
129
+ *
130
+ * @public
131
+ * @event sap.ui.webcomponents.main.Popup#after-close
132
+ */
133
+ "after-close": {},
134
+
135
+ /**
136
+ * Fired whenever the popup content area is scrolled
137
+ *
138
+ * @private
139
+ * @event sap.ui.webcomponents.main.Popup#scroll
140
+ */
141
+ "scroll": {},
142
+ },
143
+ };
144
+
145
+ const createBlockingStyle = () => {
146
+ if (!hasStyle("data-ui5-popup-scroll-blocker")) {
147
+ createStyle(globalStyles, "data-ui5-popup-scroll-blocker");
148
+ }
149
+ };
150
+
151
+ createBlockingStyle();
152
+
153
+ const bodyScrollingBlockers = new Set();
154
+
155
+ /**
156
+ * @class
157
+ * <h3 class="comment-api-title">Overview</h3>
158
+ * Base class for all popup Web Components.
159
+ *
160
+ * If you need to create your own popup-like custom UI5 Web Components, it is highly recommended that you extend
161
+ * at least Popup in order to have consistency with other popups in terms of modal behavior and z-index management.
162
+ *
163
+ * 1. The Popup class handles modality:
164
+ * - The "isModal" getter can be overridden by derivatives to provide their own conditions when they are modal or not
165
+ * - Derivatives may call the "blockBodyScrolling" and "unblockBodyScrolling" static methods to temporarily remove scrollbars on the body
166
+ * - Derivatives may call the "open" and "close" methods which handle focus, manage the popup registry and for modal popups, manage the blocking layer
167
+ *
168
+ * 2. Provides blocking layer (relevant for modal popups only):
169
+ * - It is in the static area
170
+ * - Controlled by the "open" and "close" methods
171
+ *
172
+ * 3. The Popup class "traps" focus:
173
+ * - Derivatives may call the "applyInitialFocus" method (usually when opening, to transfer focus inside the popup)
174
+ *
175
+ * 4. The Popup class automatically assigns "z-index"
176
+ * - Each time a popup is opened, it gets a higher than the previously opened popup z-index
177
+ *
178
+ * 5. The template of this component exposes two inline partials you can override in derivatives:
179
+ * - beforeContent (upper part of the box, useful for header/title/close button)
180
+ * - afterContent (lower part, useful for footer/action buttons)
181
+ *
182
+ * @constructor
183
+ * @author SAP SE
184
+ * @alias sap.ui.webcomponents.main.Popup
185
+ * @extends sap.ui.webcomponents.base.UI5Element
186
+ * @public
187
+ */
188
+ class Popup extends UI5Element {
189
+ static get metadata() {
190
+ return metadata;
191
+ }
192
+
193
+ static get render() {
194
+ return litRender;
195
+ }
196
+
197
+ static get styles() {
198
+ return styles;
199
+ }
200
+
201
+ static get template() {
202
+ return PopupTemplate;
203
+ }
204
+
205
+ static get staticAreaTemplate() {
206
+ return PopupBlockLayer;
207
+ }
208
+
209
+ static get staticAreaStyles() {
210
+ return staticAreaStyles;
211
+ }
212
+
213
+ onEnterDOM() {
214
+ if (!this.isOpen()) {
215
+ this._blockLayerHidden = true;
216
+ }
217
+ }
218
+
219
+ onExitDOM() {
220
+ if (this.isOpen()) {
221
+ Popup.unblockBodyScrolling(this);
222
+ this._removeOpenedPopup();
223
+ }
224
+ }
225
+
226
+ get _displayProp() {
227
+ return "block";
228
+ }
229
+
230
+ /**
231
+ * Prevents the user from interacting with the content under the block layer
232
+ */
233
+ _preventBlockLayerFocus(event) {
234
+ event.preventDefault();
235
+ }
236
+
237
+ /**
238
+ * Temporarily removes scrollbars from the body
239
+ * @protected
240
+ */
241
+ static blockBodyScrolling(popup) {
242
+ bodyScrollingBlockers.add(popup);
243
+
244
+ if (bodyScrollingBlockers.size !== 1) {
245
+ return;
246
+ }
247
+
248
+ if (window.pageYOffset > 0) {
249
+ document.body.style.top = `-${window.pageYOffset}px`;
250
+ }
251
+ document.body.classList.add("ui5-popup-scroll-blocker");
252
+ }
253
+
254
+ /**
255
+ * Restores scrollbars on the body, if needed
256
+ * @protected
257
+ */
258
+ static unblockBodyScrolling(popup) {
259
+ bodyScrollingBlockers.delete(popup);
260
+
261
+ if (bodyScrollingBlockers.size !== 0) {
262
+ return;
263
+ }
264
+
265
+ document.body.classList.remove("ui5-popup-scroll-blocker");
266
+ window.scrollTo(0, -parseFloat(document.body.style.top));
267
+ document.body.style.top = "";
268
+ }
269
+
270
+ _scroll(e) {
271
+ this.fireEvent("scroll", {
272
+ scrollTop: e.target.scrollTop,
273
+ targetRef: e.target,
274
+ });
275
+ }
276
+
277
+ _onkeydown(e) {
278
+ if (e.target === this._root && isTabPrevious(e)) {
279
+ e.preventDefault();
280
+ }
281
+ }
282
+
283
+ _onfocusout(e) {
284
+ // relatedTarget is the element, which will get focus. If no such element exists, focus the root.
285
+ // This happens after the mouse is released in order to not interrupt text selection.
286
+ if (!e.relatedTarget) {
287
+ this._shouldFocusRoot = true;
288
+ }
289
+ }
290
+
291
+ _onmousedown(e) {
292
+ this._root.removeAttribute("tabindex");
293
+
294
+ if (this.shadowRoot.contains(e.target)) {
295
+ this._shouldFocusRoot = true;
296
+ } else {
297
+ this._shouldFocusRoot = false;
298
+ }
299
+ }
300
+
301
+ _onmouseup() {
302
+ this._root.tabIndex = -1;
303
+ if (this._shouldFocusRoot) {
304
+ if (isChrome()) {
305
+ this._root.focus();
306
+ }
307
+ this._shouldFocusRoot = false;
308
+ }
309
+ }
310
+
311
+ /**
312
+ * Focus trapping
313
+ * @private
314
+ */
315
+ async forwardToFirst() {
316
+ const firstFocusable = await getFirstFocusableElement(this);
317
+
318
+ if (firstFocusable) {
319
+ firstFocusable.focus();
320
+ } else {
321
+ this._root.focus();
322
+ }
323
+ }
324
+
325
+ /**
326
+ * Focus trapping
327
+ * @private
328
+ */
329
+ async forwardToLast() {
330
+ const lastFocusable = await getLastFocusableElement(this);
331
+
332
+ if (lastFocusable) {
333
+ lastFocusable.focus();
334
+ } else {
335
+ this._root.focus();
336
+ }
337
+ }
338
+
339
+ /**
340
+ * Use this method to focus the element denoted by "initialFocus", if provided, or the first focusable element otherwise.
341
+ * @protected
342
+ */
343
+ async applyInitialFocus() {
344
+ await this.applyFocus();
345
+ }
346
+
347
+ /**
348
+ * Focuses the element denoted by <code>initialFocus</code>, if provided,
349
+ * or the first focusable element otherwise.
350
+ * @public
351
+ * @async
352
+ * @returns {Promise} Promise that resolves when the focus is applied
353
+ */
354
+ async applyFocus() {
355
+ await this._waitForDomRef();
356
+
357
+ const element = this.getRootNode().getElementById(this.initialFocus)
358
+ || document.getElementById(this.initialFocus)
359
+ || await getFirstFocusableElement(this)
360
+ || this._root; // in case of no focusable content focus the root
361
+
362
+ if (element) {
363
+ if (element === this._root) {
364
+ element.tabIndex = -1;
365
+ }
366
+ element.focus();
367
+ }
368
+ }
369
+
370
+ /**
371
+ * Tells if the component is opened
372
+ * @public
373
+ * @returns {boolean}
374
+ */
375
+ isOpen() {
376
+ return this.opened;
377
+ }
378
+
379
+ isFocusWithin() {
380
+ return isFocusedElementWithinNode(this.shadowRoot.querySelector(".ui5-popup-root"));
381
+ }
382
+
383
+ /**
384
+ * Shows the block layer (for modal popups only) and sets the correct z-index for the purpose of popup stacking
385
+ * @protected
386
+ */
387
+ async _open(preventInitialFocus) {
388
+ const prevented = !this.fireEvent("before-open", {}, true, false);
389
+ if (prevented) {
390
+ return;
391
+ }
392
+
393
+ if (this.isModal && !this.shouldHideBackdrop) {
394
+ // create static area item ref for block layer
395
+ this.getStaticAreaItemDomRef();
396
+ this._blockLayerHidden = false;
397
+ Popup.blockBodyScrolling(this);
398
+ }
399
+
400
+ this._zIndex = getNextZIndex();
401
+ this.style.zIndex = this._zIndex;
402
+ this._focusedElementBeforeOpen = getFocusedElement();
403
+
404
+ this._show();
405
+
406
+ if (!this._disableInitialFocus && !preventInitialFocus) {
407
+ this.applyInitialFocus();
408
+ }
409
+
410
+ this._addOpenedPopup();
411
+
412
+ this.opened = true;
413
+
414
+ await renderFinished();
415
+ this.fireEvent("after-open", {}, false, false);
416
+ }
417
+
418
+ /**
419
+ * Adds the popup to the "opened popups registry"
420
+ * @protected
421
+ */
422
+ _addOpenedPopup() {
423
+ addOpenedPopup(this);
424
+ }
425
+
426
+ /**
427
+ * Hides the block layer (for modal popups only)
428
+ * @public
429
+ */
430
+ close(escPressed = false, preventRegistryUpdate = false, preventFocusRestore = false) {
431
+ if (!this.opened) {
432
+ return;
433
+ }
434
+
435
+ const prevented = !this.fireEvent("before-close", { escPressed }, true, false);
436
+ if (prevented) {
437
+ return;
438
+ }
439
+
440
+ if (this.isModal) {
441
+ this._blockLayerHidden = true;
442
+ Popup.unblockBodyScrolling(this);
443
+ }
444
+
445
+ this.hide();
446
+ this.opened = false;
447
+
448
+ if (!preventRegistryUpdate) {
449
+ this._removeOpenedPopup();
450
+ }
451
+
452
+ if (!this.preventFocusRestore && !preventFocusRestore) {
453
+ this.resetFocus();
454
+ }
455
+
456
+ this.fireEvent("after-close", {}, false, false);
457
+ }
458
+
459
+ /**
460
+ * Removes the popup from the "opened popups registry"
461
+ * @protected
462
+ */
463
+ _removeOpenedPopup() {
464
+ removeOpenedPopup(this);
465
+ }
466
+
467
+ /**
468
+ * Returns the focus to the previously focused element
469
+ * @protected
470
+ */
471
+ resetFocus() {
472
+ if (!this._focusedElementBeforeOpen) {
473
+ return;
474
+ }
475
+
476
+ this._focusedElementBeforeOpen.focus();
477
+ this._focusedElementBeforeOpen = null;
478
+ }
479
+
480
+ /**
481
+ * Sets "block" display to the popup. The property can be overriden by derivatives of Popup.
482
+ * @protected
483
+ */
484
+ _show() {
485
+ this.style.display = this._displayProp;
486
+ }
487
+
488
+ /**
489
+ * Sets "none" display to the popup
490
+ * @protected
491
+ */
492
+ hide() {
493
+ this.style.display = "none";
494
+ }
495
+
496
+ /**
497
+ * Implement this getter with relevant logic regarding the modality of the popup (e.g. based on a public property)
498
+ *
499
+ * @protected
500
+ * @abstract
501
+ * @returns {boolean}
502
+ */
503
+ get isModal() {} // eslint-disable-line
504
+
505
+ /**
506
+ * Implement this getter with relevant logic in order to hide the block layer (f.e. based on a public property)
507
+ *
508
+ * @protected
509
+ * @abstract
510
+ * @returns {boolean}
511
+ */
512
+ get shouldHideBackdrop() {} // eslint-disable-line
513
+
514
+ /**
515
+ * Return the ID of an element in the shadow DOM that is going to label this popup
516
+ *
517
+ * @protected
518
+ * @abstract
519
+ * @returns {String}
520
+ */
521
+ get _ariaLabelledBy() {} // eslint-disable-line
522
+
523
+ /**
524
+ * Return the value for aria-modal for this popup
525
+ *
526
+ * @protected
527
+ * @abstract
528
+ * @returns {String}
529
+ */
530
+ get _ariaModal() {} // eslint-disable-line
531
+
532
+ /**
533
+ * Ensures ariaLabel is never null or empty string
534
+ * @returns {String|undefined}
535
+ * @protected
536
+ */
537
+ get _ariaLabel() {
538
+ return this.accessibleName || undefined;
539
+ }
540
+
541
+ get _root() {
542
+ return this.shadowRoot.querySelector(".ui5-popup-root");
543
+ }
544
+
545
+ get styles() {
546
+ return {
547
+ root: {},
548
+ content: {},
549
+ blockLayer: {
550
+ "zIndex": (this._zIndex - 1),
551
+ },
552
+ };
553
+ }
554
+
555
+ get classes() {
556
+ return {
557
+ root: {
558
+ "ui5-popup-root": true,
559
+ },
560
+ content: {
561
+ "ui5-popup-content": true,
562
+ },
563
+ };
564
+ }
565
+ }
566
+
567
+ export default Popup;
@@ -0,0 +1,7 @@
1
+ <div class="ui5-block-layer"
2
+ ?hidden={{_blockLayerHidden}}
3
+ tabindex="1"
4
+ style="{{styles.blockLayer}}"
5
+ @keydown="{{_preventBlockLayerFocus}}"
6
+ @mousedown="{{_preventBlockLayerFocus}}">
7
+ </div>
@@ -0,0 +1,35 @@
1
+ <div class="ui5-progress-indicator-root {{classes.root}}"
2
+ dir="{{effectiveDir}}"
3
+ role="progressbar"
4
+ aria-valuemin="0"
5
+ aria-valuenow="{{validatedValue}}"
6
+ aria-valuemax="100"
7
+ aria-valuetext="{{valueStateText}}"
8
+ aria-disabled="{{_ariaDisabled}}"
9
+ >
10
+ <div class="ui5-progress-indicator-bar" style="{{styles.bar}}">
11
+ {{#unless showValueInRemainingBar}}
12
+ {{> valueLabel}}
13
+ {{/unless}}
14
+ </div>
15
+ <div class="ui5-progress-indicator-remaining-bar">
16
+ {{#if showValueInRemainingBar}}
17
+ {{> valueLabel}}
18
+ {{/if}}
19
+ </div>
20
+ </div>
21
+
22
+ {{#*inline "valueLabel"}}
23
+ {{#if showIcon}}
24
+ <ui5-icon name="{{valueStateIcon}}" class="ui5-progress-indicator-icon"></ui5-icon>
25
+ {{/if}}
26
+ {{#unless hideValue}}
27
+ <span class="ui5-progress-indicator-value">
28
+ {{#if displayValue}}
29
+ {{displayValue}}
30
+ {{else}}
31
+ {{validatedValue}}%
32
+ {{/if}}
33
+ </span>
34
+ {{/unless}}
35
+ {{/inline}}