@ui5/webcomponents 0.0.0-185851a98 → 0.0.0-1929d08ff

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 (1244) hide show
  1. package/CHANGELOG.md +942 -1
  2. package/README.md +145 -52
  3. package/customI18n.js +50 -0
  4. package/dist/Assets-static.js +6 -0
  5. package/dist/Assets.js +2 -1
  6. package/dist/Avatar.js +218 -35
  7. package/dist/AvatarGroup.js +603 -0
  8. package/dist/Badge.js +44 -22
  9. package/dist/Breadcrumbs.js +580 -0
  10. package/dist/BreadcrumbsItem.js +103 -0
  11. package/dist/BusyIndicator.js +170 -16
  12. package/dist/Button.js +187 -67
  13. package/dist/Calendar.js +349 -546
  14. package/dist/CalendarDate.js +45 -0
  15. package/dist/CalendarHeader.js +133 -62
  16. package/dist/CalendarPart.js +111 -0
  17. package/dist/Card.js +42 -156
  18. package/dist/CardHeader.js +288 -0
  19. package/dist/Carousel.js +382 -94
  20. package/dist/CheckBox.js +183 -50
  21. package/dist/ColorPalette.js +494 -0
  22. package/dist/ColorPaletteItem.js +137 -0
  23. package/dist/ColorPalettePopover.js +244 -0
  24. package/dist/ColorPicker.js +562 -0
  25. package/dist/ComboBox.js +698 -93
  26. package/dist/ComboBoxFilters.js +8 -1
  27. package/dist/ComboBoxGroupItem.js +70 -0
  28. package/dist/ComboBoxItem.js +12 -24
  29. package/dist/CustomListItem.js +38 -9
  30. package/dist/DateComponentBase.js +168 -0
  31. package/dist/DatePicker.js +436 -403
  32. package/dist/DateRangePicker.js +356 -0
  33. package/dist/DateTimePicker.js +119 -376
  34. package/dist/DayPicker.js +509 -431
  35. package/dist/Dialog.js +510 -50
  36. package/dist/DurationPicker.js +170 -317
  37. package/dist/FileUploader.js +219 -28
  38. package/dist/GroupHeaderListItem.js +24 -19
  39. package/dist/Icon.js +200 -36
  40. package/dist/Input.js +805 -167
  41. package/dist/Interfaces.js +192 -0
  42. package/dist/Label.js +34 -13
  43. package/dist/Link.js +169 -30
  44. package/dist/List.js +510 -109
  45. package/dist/ListItem.js +110 -28
  46. package/dist/ListItemBase.js +42 -8
  47. package/dist/MessageStrip.js +86 -71
  48. package/dist/MonthPicker.js +180 -182
  49. package/dist/MultiComboBox.js +714 -202
  50. package/dist/MultiComboBoxItem.js +8 -5
  51. package/dist/MultiInput.js +348 -0
  52. package/dist/Option.js +59 -5
  53. package/dist/Panel.js +128 -39
  54. package/dist/Popover.js +352 -242
  55. package/dist/Popup.js +426 -275
  56. package/dist/ProgressIndicator.js +235 -0
  57. package/dist/RadioButton.js +143 -51
  58. package/dist/RadioButtonGroup.js +53 -29
  59. package/dist/RangeSlider.js +769 -0
  60. package/dist/RatingIndicator.js +321 -0
  61. package/dist/ResponsivePopover.js +88 -41
  62. package/dist/SegmentedButton.js +147 -52
  63. package/dist/SegmentedButtonItem.js +109 -0
  64. package/dist/Select.js +481 -102
  65. package/dist/Slider.js +320 -0
  66. package/dist/SliderBase.js +847 -0
  67. package/dist/SplitButton.js +426 -0
  68. package/dist/StandardListItem.js +44 -22
  69. package/dist/StepInput.js +684 -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 +85 -37
  74. package/dist/Tab.js +182 -12
  75. package/dist/TabContainer.js +750 -276
  76. package/dist/TabSeparator.js +43 -3
  77. package/dist/Table.js +730 -36
  78. package/dist/TableCell.js +11 -13
  79. package/dist/TableColumn.js +13 -10
  80. package/dist/TableGroupRow.js +164 -0
  81. package/dist/TableRow.js +318 -18
  82. package/dist/TextArea.js +165 -57
  83. package/dist/TimePicker.js +55 -644
  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 +26 -13
  89. package/dist/Token.js +84 -45
  90. package/dist/Tokenizer.js +398 -64
  91. package/dist/Tree.js +447 -0
  92. package/dist/TreeItem.js +189 -0
  93. package/dist/TreeListItem.js +343 -0
  94. package/dist/WheelSlider.js +79 -59
  95. package/dist/YearPicker.js +199 -255
  96. package/dist/api.json +7203 -1
  97. package/dist/css/themes/Avatar.css +1 -0
  98. package/dist/css/themes/AvatarGroup.css +1 -0
  99. package/dist/css/themes/Badge.css +1 -0
  100. package/dist/css/themes/Breadcrumbs.css +1 -0
  101. package/dist/css/themes/BreadcrumbsPopover.css +1 -0
  102. package/dist/css/themes/BrowserScrollbar.css +1 -0
  103. package/dist/css/themes/BusyIndicator.css +1 -0
  104. package/dist/css/themes/Button.css +1 -0
  105. package/dist/css/themes/Button.ie11.css +1 -0
  106. package/dist/css/themes/Calendar.css +1 -0
  107. package/dist/css/themes/CalendarHeader.css +1 -0
  108. package/dist/css/themes/Card.css +1 -0
  109. package/dist/css/themes/CardHeader.css +1 -0
  110. package/dist/css/themes/Carousel.css +1 -0
  111. package/dist/css/themes/CheckBox.css +1 -0
  112. package/dist/css/themes/ColorPalette.css +1 -0
  113. package/dist/css/themes/ColorPaletteItem.css +1 -0
  114. package/dist/css/themes/ColorPalettePopover.css +1 -0
  115. package/dist/css/themes/ColorPaletteStaticArea.css +1 -0
  116. package/dist/css/themes/ColorPicker.css +1 -0
  117. package/dist/css/themes/ComboBox.css +1 -0
  118. package/dist/css/themes/ComboBoxPopover.css +1 -0
  119. package/dist/css/themes/CustomListItem.css +1 -0
  120. package/dist/css/themes/DatePicker.css +1 -0
  121. package/dist/css/themes/DatePickerPopover.css +1 -0
  122. package/dist/css/themes/DateRangePicker.css +1 -0
  123. package/dist/css/themes/DateTimePicker.css +1 -0
  124. package/dist/css/themes/DateTimePickerPopover.css +1 -0
  125. package/dist/css/themes/DayPicker.css +1 -0
  126. package/dist/css/themes/Dialog.css +1 -0
  127. package/dist/css/themes/FileUploader.css +1 -0
  128. package/dist/css/themes/GroupHeaderListItem.css +1 -0
  129. package/dist/css/themes/GrowingButton.css +1 -0
  130. package/dist/css/themes/Icon.css +1 -0
  131. package/dist/css/themes/Input.css +1 -0
  132. package/dist/css/themes/InputIcon.css +1 -0
  133. package/dist/css/themes/InvisibleTextStyles.css +1 -0
  134. package/dist/css/themes/Label.css +1 -0
  135. package/dist/css/themes/Link.css +1 -0
  136. package/dist/css/themes/List.css +1 -0
  137. package/dist/css/themes/ListItem.css +1 -0
  138. package/dist/css/themes/ListItemBase.css +1 -0
  139. package/dist/css/themes/MessageStrip.css +1 -0
  140. package/dist/css/themes/MonthPicker.css +1 -0
  141. package/dist/css/themes/MultiComboBox.css +1 -0
  142. package/dist/css/themes/MultiInput.css +1 -0
  143. package/dist/css/themes/Panel.css +1 -0
  144. package/dist/css/themes/Popover.css +1 -0
  145. package/dist/css/themes/Popup.css +1 -0
  146. package/dist/css/themes/PopupGlobal.css +1 -0
  147. package/dist/css/themes/PopupStaticAreaStyles.css +1 -0
  148. package/dist/css/themes/PopupsCommon.css +1 -0
  149. package/dist/css/themes/ProgressIndicator.css +1 -0
  150. package/dist/css/themes/RadioButton.css +1 -0
  151. package/dist/css/themes/RatingIndicator.css +1 -0
  152. package/dist/css/themes/ResponsivePopover.css +1 -0
  153. package/dist/css/themes/ResponsivePopoverCommon.css +1 -0
  154. package/dist/css/themes/SegmentedButton.css +1 -0
  155. package/dist/css/themes/Select.css +1 -0
  156. package/dist/css/themes/SelectPopover.css +1 -0
  157. package/dist/css/themes/SliderBase.css +1 -0
  158. package/dist/css/themes/SplitButton.css +1 -0
  159. package/dist/css/themes/StepInput.css +1 -0
  160. package/dist/css/themes/Suggestions.css +1 -0
  161. package/dist/css/themes/Switch.css +1 -0
  162. package/dist/css/themes/Tab.css +1 -0
  163. package/dist/css/themes/TabContainer.css +1 -0
  164. package/dist/css/themes/TabInOverflow.css +1 -0
  165. package/dist/css/themes/TabInStrip.css +1 -0
  166. package/dist/css/themes/TabSeparatorInOverflow.css +1 -0
  167. package/dist/css/themes/TabSeparatorInStrip.css +1 -0
  168. package/dist/css/themes/Table.css +1 -0
  169. package/dist/css/themes/TableCell.css +1 -0
  170. package/dist/css/themes/TableColumn.css +1 -0
  171. package/dist/css/themes/TableGroupRow.css +1 -0
  172. package/dist/css/themes/TableRow.css +1 -0
  173. package/dist/css/themes/TapHighlightColor.css +1 -0
  174. package/dist/css/themes/TextArea.css +1 -0
  175. package/dist/css/themes/TimePicker.css +1 -0
  176. package/dist/css/themes/TimePickerPopover.css +1 -0
  177. package/dist/css/themes/TimeSelection.css +1 -0
  178. package/dist/css/themes/Title.css +1 -0
  179. package/dist/css/themes/Toast.css +1 -0
  180. package/dist/css/themes/ToggleButton.css +1 -0
  181. package/dist/css/themes/ToggleButton.ie11.css +1 -0
  182. package/dist/css/themes/Token.css +1 -0
  183. package/dist/css/themes/Tokenizer.css +1 -0
  184. package/dist/css/themes/TokenizerPopover.css +1 -0
  185. package/dist/css/themes/Tree.css +1 -0
  186. package/dist/css/themes/TreeListItem.css +1 -0
  187. package/dist/css/themes/ValueStateMessage.css +1 -0
  188. package/dist/css/themes/WheelSlider.css +1 -0
  189. package/dist/css/themes/YearPicker.css +1 -0
  190. package/dist/css/themes/sap_belize/parameters-bundle.css +1 -0
  191. package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -0
  192. package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -0
  193. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -0
  194. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -0
  195. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -0
  196. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -0
  197. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -0
  198. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -0
  199. package/dist/features/ColorPaletteMoreColors.js +42 -0
  200. package/dist/features/InputElementsFormSupport.js +0 -1
  201. package/dist/features/InputSuggestions.js +342 -54
  202. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  203. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  204. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  205. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  206. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -0
  207. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  208. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  209. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  210. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  211. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -0
  212. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -0
  213. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -0
  214. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -0
  215. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  216. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -0
  217. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  218. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  219. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  220. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -0
  221. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  222. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  223. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  224. package/dist/generated/assets/i18n/messagebundle_in.json +1 -0
  225. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  226. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  227. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  228. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  229. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  230. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  231. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  232. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  233. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  234. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  235. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  236. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  237. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -0
  238. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  239. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  240. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  241. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  242. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  243. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  244. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  245. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  246. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  247. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  248. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  249. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  250. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  251. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  252. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  253. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  254. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  255. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -0
  256. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -0
  257. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -0
  258. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -0
  259. package/dist/generated/i18n/i18n-defaults.js +2 -2
  260. package/dist/generated/json-imports/Themes-static.js +35 -0
  261. package/dist/generated/json-imports/Themes.js +23 -15
  262. package/dist/generated/json-imports/i18n-static.js +162 -0
  263. package/dist/generated/json-imports/i18n.js +113 -89
  264. package/dist/generated/templates/AvatarGroupTemplate.lit.js +9 -0
  265. package/dist/generated/templates/AvatarTemplate.lit.js +9 -9
  266. package/dist/generated/templates/BadgeTemplate.lit.js +5 -6
  267. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +8 -0
  268. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +9 -0
  269. package/dist/generated/templates/BusyIndicatorTemplate.lit.js +7 -5
  270. package/dist/generated/templates/ButtonTemplate.lit.js +6 -6
  271. package/dist/generated/templates/CalendarHeaderTemplate.lit.js +6 -4
  272. package/dist/generated/templates/CalendarTemplate.lit.js +4 -4
  273. package/dist/generated/templates/CardHeaderTemplate.lit.js +12 -0
  274. package/dist/generated/templates/CardTemplate.lit.js +5 -8
  275. package/dist/generated/templates/CarouselTemplate.lit.js +13 -13
  276. package/dist/generated/templates/CheckBoxTemplate.lit.js +7 -7
  277. package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +7 -0
  278. package/dist/generated/templates/ColorPaletteItemTemplate.lit.js +7 -0
  279. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +8 -0
  280. package/dist/generated/templates/ColorPaletteTemplate.lit.js +12 -0
  281. package/dist/generated/templates/ColorPickerTemplate.lit.js +7 -0
  282. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +20 -5
  283. package/dist/generated/templates/ComboBoxTemplate.lit.js +8 -5
  284. package/dist/generated/templates/CustomListItemTemplate.lit.js +13 -13
  285. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +7 -6
  286. package/dist/generated/templates/DatePickerTemplate.lit.js +6 -5
  287. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +9 -12
  288. package/dist/generated/templates/DayPickerTemplate.lit.js +13 -11
  289. package/dist/generated/templates/DialogTemplate.lit.js +9 -8
  290. package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +11 -0
  291. package/dist/generated/templates/FileUploaderTemplate.lit.js +7 -7
  292. package/dist/generated/templates/GroupHeaderListItemTemplate.lit.js +4 -4
  293. package/dist/generated/templates/IconTemplate.lit.js +6 -6
  294. package/dist/generated/templates/InputPopoverTemplate.lit.js +24 -23
  295. package/dist/generated/templates/InputTemplate.lit.js +10 -8
  296. package/dist/generated/templates/LabelTemplate.lit.js +4 -4
  297. package/dist/generated/templates/LinkTemplate.lit.js +5 -5
  298. package/dist/generated/templates/ListItemTemplate.lit.js +13 -13
  299. package/dist/generated/templates/ListTemplate.lit.js +12 -9
  300. package/dist/generated/templates/MessageStripTemplate.lit.js +6 -27
  301. package/dist/generated/templates/MonthPickerTemplate.lit.js +6 -6
  302. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +23 -7
  303. package/dist/generated/templates/MultiComboBoxTemplate.lit.js +10 -8
  304. package/dist/generated/templates/MultiInputTemplate.lit.js +17 -0
  305. package/dist/generated/templates/PanelTemplate.lit.js +9 -6
  306. package/dist/generated/templates/PopoverTemplate.lit.js +9 -9
  307. package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +7 -0
  308. package/dist/generated/templates/PopupTemplate.lit.js +4 -4
  309. package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +17 -0
  310. package/dist/generated/templates/RadioButtonTemplate.lit.js +7 -7
  311. package/dist/generated/templates/RangeSliderTemplate.lit.js +13 -0
  312. package/dist/generated/templates/RatingIndicatorTemplate.lit.js +14 -0
  313. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +16 -11
  314. package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +8 -0
  315. package/dist/generated/templates/SegmentedButtonTemplate.lit.js +4 -9
  316. package/dist/generated/templates/SelectPopoverTemplate.lit.js +20 -6
  317. package/dist/generated/templates/SelectTemplate.lit.js +6 -4
  318. package/dist/generated/templates/SliderBaseTemplate.lit.js +11 -0
  319. package/dist/generated/templates/SliderTemplate.lit.js +12 -0
  320. package/dist/generated/templates/SplitButtonTemplate.lit.js +7 -0
  321. package/dist/generated/templates/StandardListItemTemplate.lit.js +21 -19
  322. package/dist/generated/templates/StepInputTemplate.lit.js +10 -0
  323. package/dist/generated/templates/SuggestionListItemTemplate.lit.js +27 -0
  324. package/dist/generated/templates/SwitchTemplate.lit.js +8 -6
  325. package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +8 -8
  326. package/dist/generated/templates/TabContainerTemplate.lit.js +15 -18
  327. package/dist/generated/templates/TabInOverflowTemplate.lit.js +9 -0
  328. package/dist/generated/templates/TabInStripTemplate.lit.js +11 -0
  329. package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js +7 -0
  330. package/dist/generated/templates/TabSeparatorInStripTemplate.lit.js +7 -0
  331. package/dist/generated/templates/TabTemplate.lit.js +4 -4
  332. package/dist/generated/templates/TableCellTemplate.lit.js +4 -4
  333. package/dist/generated/templates/TableColumnTemplate.lit.js +4 -4
  334. package/dist/generated/templates/TableGroupRowTemplate.lit.js +7 -0
  335. package/dist/generated/templates/TableRowTemplate.lit.js +12 -10
  336. package/dist/generated/templates/TableTemplate.lit.js +13 -8
  337. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +8 -8
  338. package/dist/generated/templates/TextAreaTemplate.lit.js +8 -8
  339. package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +4 -8
  340. package/dist/generated/templates/TimePickerTemplate.lit.js +6 -5
  341. package/dist/generated/templates/TimeSelectionTemplate.lit.js +11 -0
  342. package/dist/generated/templates/TitleTemplate.lit.js +10 -10
  343. package/dist/generated/templates/ToastTemplate.lit.js +5 -4
  344. package/dist/generated/templates/ToggleButtonTemplate.lit.js +6 -6
  345. package/dist/generated/templates/TokenTemplate.lit.js +7 -5
  346. package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +12 -0
  347. package/dist/generated/templates/TokenizerTemplate.lit.js +6 -6
  348. package/dist/generated/templates/TreeListItemTemplate.lit.js +21 -0
  349. package/dist/generated/templates/TreeTemplate.lit.js +8 -0
  350. package/dist/generated/templates/WheelSliderTemplate.lit.js +7 -7
  351. package/dist/generated/templates/YearPickerTemplate.lit.js +6 -6
  352. package/dist/generated/themes/Avatar.css.js +5 -5
  353. package/dist/generated/themes/AvatarGroup.css.js +8 -0
  354. package/dist/generated/themes/Badge.css.js +5 -5
  355. package/dist/generated/themes/Breadcrumbs.css.js +8 -0
  356. package/dist/generated/themes/BreadcrumbsPopover.css.js +8 -0
  357. package/dist/generated/themes/BrowserScrollbar.css.js +8 -0
  358. package/dist/generated/themes/BusyIndicator.css.js +5 -5
  359. package/dist/generated/themes/Button.css.js +5 -5
  360. package/dist/generated/themes/Button.ie11.css.js +8 -0
  361. package/dist/generated/themes/Calendar.css.js +5 -5
  362. package/dist/generated/themes/CalendarHeader.css.js +5 -5
  363. package/dist/generated/themes/Card.css.js +5 -5
  364. package/dist/generated/themes/CardHeader.css.js +8 -0
  365. package/dist/generated/themes/Carousel.css.js +5 -5
  366. package/dist/generated/themes/CheckBox.css.js +5 -5
  367. package/dist/generated/themes/ColorPalette.css.js +8 -0
  368. package/dist/generated/themes/ColorPaletteItem.css.js +8 -0
  369. package/dist/generated/themes/ColorPalettePopover.css.js +8 -0
  370. package/dist/generated/themes/ColorPaletteStaticArea.css.js +8 -0
  371. package/dist/generated/themes/ColorPicker.css.js +8 -0
  372. package/dist/generated/themes/ComboBox.css.js +5 -5
  373. package/dist/generated/themes/ComboBoxPopover.css.js +5 -5
  374. package/dist/generated/themes/CustomListItem.css.js +5 -5
  375. package/dist/generated/themes/DatePicker.css.js +5 -5
  376. package/dist/generated/themes/DatePickerPopover.css.js +5 -5
  377. package/dist/generated/themes/DateRangePicker.css.js +8 -0
  378. package/dist/generated/themes/DateTimePicker.css.js +8 -0
  379. package/dist/generated/themes/DateTimePickerPopover.css.js +5 -5
  380. package/dist/generated/themes/DayPicker.css.js +5 -5
  381. package/dist/generated/themes/Dialog.css.js +5 -5
  382. package/dist/generated/themes/FileUploader.css.js +5 -5
  383. package/dist/generated/themes/GroupHeaderListItem.css.js +5 -5
  384. package/dist/generated/themes/GrowingButton.css.js +8 -0
  385. package/dist/generated/themes/Icon.css.js +5 -5
  386. package/dist/generated/themes/Input.css.js +5 -5
  387. package/dist/generated/themes/InputIcon.css.js +5 -5
  388. package/dist/generated/themes/InvisibleTextStyles.css.js +5 -5
  389. package/dist/generated/themes/Label.css.js +5 -5
  390. package/dist/generated/themes/Link.css.js +5 -5
  391. package/dist/generated/themes/List.css.js +5 -5
  392. package/dist/generated/themes/ListItem.css.js +5 -5
  393. package/dist/generated/themes/ListItemBase.css.js +5 -5
  394. package/dist/generated/themes/MessageStrip.css.js +5 -5
  395. package/dist/generated/themes/MonthPicker.css.js +5 -5
  396. package/dist/generated/themes/MultiComboBox.css.js +5 -5
  397. package/dist/generated/themes/MultiInput.css.js +8 -0
  398. package/dist/generated/themes/Panel.css.js +5 -5
  399. package/dist/generated/themes/Popover.css.js +5 -5
  400. package/dist/generated/themes/Popup.css.js +5 -5
  401. package/dist/generated/themes/PopupGlobal.css.js +8 -0
  402. package/dist/generated/themes/PopupStaticAreaStyles.css.js +8 -0
  403. package/dist/generated/themes/PopupsCommon.css.js +8 -0
  404. package/dist/generated/themes/ProgressIndicator.css.js +8 -0
  405. package/dist/generated/themes/RadioButton.css.js +5 -5
  406. package/dist/generated/themes/RatingIndicator.css.js +8 -0
  407. package/dist/generated/themes/ResponsivePopover.css.js +5 -5
  408. package/dist/generated/themes/ResponsivePopoverCommon.css.js +5 -5
  409. package/dist/generated/themes/SegmentedButton.css.js +5 -5
  410. package/dist/generated/themes/Select.css.js +5 -5
  411. package/dist/generated/themes/SelectPopover.css.js +8 -0
  412. package/dist/generated/themes/SliderBase.css.js +8 -0
  413. package/dist/generated/themes/SplitButton.css.js +8 -0
  414. package/dist/generated/themes/StepInput.css.js +8 -0
  415. package/dist/generated/themes/Suggestions.css.js +8 -0
  416. package/dist/generated/themes/Switch.css.js +5 -5
  417. package/dist/generated/themes/Tab.css.js +5 -5
  418. package/dist/generated/themes/TabContainer.css.js +5 -5
  419. package/dist/generated/themes/TabInOverflow.css.js +8 -0
  420. package/dist/generated/themes/TabInStrip.css.js +8 -0
  421. package/dist/generated/themes/TabSeparatorInOverflow.css.js +8 -0
  422. package/dist/generated/themes/TabSeparatorInStrip.css.js +8 -0
  423. package/dist/generated/themes/Table.css.js +5 -5
  424. package/dist/generated/themes/TableCell.css.js +5 -5
  425. package/dist/generated/themes/TableColumn.css.js +5 -5
  426. package/dist/generated/themes/TableGroupRow.css.js +8 -0
  427. package/dist/generated/themes/TableRow.css.js +5 -5
  428. package/dist/generated/themes/TapHighlightColor.css.js +8 -0
  429. package/dist/generated/themes/TextArea.css.js +5 -5
  430. package/dist/generated/themes/TimePicker.css.js +5 -5
  431. package/dist/generated/themes/TimePickerPopover.css.js +5 -5
  432. package/dist/generated/themes/TimeSelection.css.js +8 -0
  433. package/dist/generated/themes/Title.css.js +5 -5
  434. package/dist/generated/themes/Toast.css.js +5 -5
  435. package/dist/generated/themes/ToggleButton.css.js +5 -5
  436. package/dist/generated/themes/ToggleButton.ie11.css.js +8 -0
  437. package/dist/generated/themes/Token.css.js +5 -5
  438. package/dist/generated/themes/Tokenizer.css.js +5 -5
  439. package/dist/generated/themes/TokenizerPopover.css.js +8 -0
  440. package/dist/generated/themes/Tree.css.js +8 -0
  441. package/dist/generated/themes/TreeListItem.css.js +8 -0
  442. package/dist/generated/themes/ValueStateMessage.css.js +5 -5
  443. package/dist/generated/themes/WheelSlider.css.js +5 -5
  444. package/dist/generated/themes/YearPicker.css.js +5 -5
  445. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  446. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  447. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  448. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  449. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  450. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -0
  451. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -0
  452. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -0
  453. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -0
  454. package/dist/i18n/messagebundle.properties +360 -0
  455. package/dist/i18n/messagebundle_ar.properties +241 -0
  456. package/dist/i18n/messagebundle_bg.properties +241 -0
  457. package/dist/i18n/messagebundle_ca.properties +241 -0
  458. package/dist/i18n/messagebundle_cs.properties +241 -0
  459. package/dist/i18n/messagebundle_cy.properties +241 -0
  460. package/dist/i18n/messagebundle_da.properties +241 -0
  461. package/dist/i18n/messagebundle_de.properties +241 -0
  462. package/dist/i18n/messagebundle_el.properties +241 -0
  463. package/dist/i18n/messagebundle_en.properties +241 -0
  464. package/dist/i18n/messagebundle_en_GB.properties +241 -0
  465. package/dist/i18n/messagebundle_en_US_sappsd.properties +241 -0
  466. package/dist/i18n/messagebundle_en_US_saprigi.properties +241 -0
  467. package/dist/i18n/messagebundle_en_US_saptrc.properties +241 -0
  468. package/dist/i18n/messagebundle_es.properties +241 -0
  469. package/dist/i18n/messagebundle_es_MX.properties +241 -0
  470. package/dist/i18n/messagebundle_et.properties +241 -0
  471. package/dist/i18n/messagebundle_fi.properties +241 -0
  472. package/dist/i18n/messagebundle_fr.properties +241 -0
  473. package/dist/i18n/messagebundle_fr_CA.properties +241 -0
  474. package/dist/i18n/messagebundle_hi.properties +241 -0
  475. package/dist/i18n/messagebundle_hr.properties +241 -0
  476. package/dist/i18n/messagebundle_hu.properties +241 -0
  477. package/dist/i18n/messagebundle_id.properties +241 -0
  478. package/dist/i18n/messagebundle_in.properties +172 -0
  479. package/dist/i18n/messagebundle_it.properties +241 -0
  480. package/dist/i18n/messagebundle_iw.properties +241 -0
  481. package/dist/i18n/messagebundle_ja.properties +241 -0
  482. package/dist/i18n/messagebundle_kk.properties +241 -0
  483. package/dist/i18n/messagebundle_ko.properties +241 -0
  484. package/dist/i18n/messagebundle_lt.properties +241 -0
  485. package/dist/i18n/messagebundle_lv.properties +241 -0
  486. package/dist/i18n/messagebundle_ms.properties +241 -0
  487. package/dist/i18n/messagebundle_nl.properties +241 -0
  488. package/dist/i18n/messagebundle_no.properties +241 -0
  489. package/dist/i18n/messagebundle_pl.properties +241 -0
  490. package/dist/i18n/messagebundle_pt.properties +241 -0
  491. package/dist/i18n/messagebundle_pt_PT.properties +241 -0
  492. package/dist/i18n/messagebundle_ro.properties +241 -0
  493. package/dist/i18n/messagebundle_ru.properties +241 -0
  494. package/dist/i18n/messagebundle_sh.properties +241 -0
  495. package/dist/i18n/messagebundle_sk.properties +241 -0
  496. package/dist/i18n/messagebundle_sl.properties +241 -0
  497. package/dist/i18n/messagebundle_sv.properties +241 -0
  498. package/dist/i18n/messagebundle_th.properties +241 -0
  499. package/dist/i18n/messagebundle_tr.properties +241 -0
  500. package/dist/i18n/messagebundle_uk.properties +241 -0
  501. package/dist/i18n/messagebundle_vi.properties +241 -0
  502. package/dist/i18n/messagebundle_zh_CN.properties +241 -0
  503. package/dist/i18n/messagebundle_zh_TW.properties +241 -0
  504. package/dist/popup-utils/OpenedPopupsRegistry.js +18 -13
  505. package/dist/popup-utils/PopoverRegistry.js +55 -21
  506. package/dist/timepicker-utils/TimeSlider.js +15 -13
  507. package/dist/types/{AvatarBackgroundColor.js → AvatarColorScheme.js} +9 -9
  508. package/dist/types/AvatarGroupType.js +43 -0
  509. package/dist/types/AvatarShape.js +1 -1
  510. package/dist/types/AvatarSize.js +1 -1
  511. package/dist/types/BreadcrumbsDesign.js +42 -0
  512. package/dist/types/BreadcrumbsSeparatorStyle.js +69 -0
  513. package/dist/types/BusyIndicatorSize.js +1 -1
  514. package/dist/types/ButtonDesign.js +8 -1
  515. package/dist/types/CalendarSelectionMode.js +47 -0
  516. package/dist/types/CarouselArrowsPlacement.js +3 -3
  517. package/dist/types/GrowingMode.js +48 -0
  518. package/dist/types/HasPopup.js +62 -0
  519. package/dist/types/InputType.js +7 -7
  520. package/dist/types/LinkDesign.js +1 -1
  521. package/dist/types/ListGrowingMode.js +15 -0
  522. package/dist/types/ListItemType.js +2 -2
  523. package/dist/types/ListMode.js +9 -1
  524. package/dist/types/ListSeparators.js +1 -1
  525. package/dist/types/{MessageStripType.js → MessageStripDesign.js} +7 -7
  526. package/dist/types/PanelAccessibleRole.js +1 -1
  527. package/dist/types/PopoverHorizontalAlign.js +1 -1
  528. package/dist/types/PopoverPlacementType.js +2 -2
  529. package/dist/types/PopoverVerticalAlign.js +1 -2
  530. package/dist/types/Priority.js +55 -0
  531. package/dist/types/SemanticColor.js +1 -1
  532. package/dist/types/SwitchDesign.js +40 -0
  533. package/dist/types/TabContainerTabsPlacement.js +40 -0
  534. package/dist/types/TabLayout.js +1 -1
  535. package/dist/types/TableGrowingMode.js +15 -0
  536. package/dist/types/TableMode.js +47 -0
  537. package/dist/types/TableRowType.js +40 -0
  538. package/dist/types/TabsOverflowMode.js +40 -0
  539. package/dist/types/TitleLevel.js +1 -1
  540. package/dist/types/ToastPlacement.js +1 -2
  541. package/dist/types/WrappingType.js +41 -0
  542. package/dist/webcomponentsjs/CHANGELOG.md +61 -0
  543. package/dist/webcomponentsjs/README.md +64 -47
  544. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +38 -38
  545. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +1 -1
  546. package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js +60 -0
  547. package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js.map +1 -0
  548. package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js +95 -0
  549. package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js.map +1 -0
  550. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +292 -229
  551. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +1 -1
  552. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +190 -170
  553. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +1 -1
  554. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +151 -132
  555. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +1 -1
  556. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +2 -2
  557. package/dist/webcomponentsjs/webcomponents-bundle.js +302 -230
  558. package/dist/webcomponentsjs/webcomponents-bundle.js.map +1 -1
  559. package/dist/webcomponentsjs/webcomponents-loader.js +49 -28
  560. package/package-scripts.js +1 -0
  561. package/package.json +25 -6
  562. package/src/Assets-static.js +6 -0
  563. package/src/Assets.js +7 -0
  564. package/src/Avatar.hbs +20 -0
  565. package/src/Avatar.js +392 -0
  566. package/src/AvatarGroup.hbs +30 -0
  567. package/src/AvatarGroup.js +603 -0
  568. package/src/Badge.hbs +14 -0
  569. package/src/Badge.js +165 -0
  570. package/src/Breadcrumbs.hbs +43 -0
  571. package/src/Breadcrumbs.js +580 -0
  572. package/src/BreadcrumbsItem.js +103 -0
  573. package/src/BreadcrumbsPopover.hbs +27 -0
  574. package/src/BusyIndicator.hbs +32 -0
  575. package/src/BusyIndicator.js +268 -0
  576. package/src/Button.hbs +45 -0
  577. package/src/Button.js +504 -0
  578. package/src/Calendar.hbs +69 -0
  579. package/src/Calendar.js +496 -0
  580. package/src/CalendarDate.js +45 -0
  581. package/src/CalendarHeader.hbs +54 -0
  582. package/src/CalendarHeader.js +209 -0
  583. package/src/CalendarPart.js +111 -0
  584. package/src/Card.hbs +14 -0
  585. package/src/Card.js +160 -0
  586. package/src/CardHeader.hbs +42 -0
  587. package/src/CardHeader.js +288 -0
  588. package/src/Carousel.hbs +86 -0
  589. package/src/Carousel.js +690 -0
  590. package/src/CheckBox.hbs +45 -0
  591. package/src/CheckBox.js +457 -0
  592. package/src/ColorPalette.hbs +52 -0
  593. package/src/ColorPalette.js +494 -0
  594. package/src/ColorPaletteDialog.hbs +18 -0
  595. package/src/ColorPaletteItem.hbs +11 -0
  596. package/src/ColorPaletteItem.js +137 -0
  597. package/src/ColorPalettePopover.hbs +31 -0
  598. package/src/ColorPalettePopover.js +244 -0
  599. package/src/ColorPicker.hbs +99 -0
  600. package/src/ColorPicker.js +562 -0
  601. package/src/ComboBox.hbs +50 -0
  602. package/src/ComboBox.js +1113 -0
  603. package/src/ComboBoxFilters.js +40 -0
  604. package/src/ComboBoxGroupItem.js +70 -0
  605. package/src/ComboBoxItem.js +49 -0
  606. package/src/ComboBoxPopover.hbs +125 -0
  607. package/src/CustomListItem.hbs +5 -0
  608. package/src/CustomListItem.js +99 -0
  609. package/src/DateComponentBase.js +168 -0
  610. package/src/DatePicker.hbs +44 -0
  611. package/src/DatePicker.js +833 -0
  612. package/src/DatePickerPopover.hbs +61 -0
  613. package/src/DateRangePicker.js +356 -0
  614. package/src/DateTimePicker.js +430 -0
  615. package/src/DateTimePickerPopover.hbs +74 -0
  616. package/src/DayPicker.hbs +66 -0
  617. package/src/DayPicker.js +754 -0
  618. package/src/Dialog.hbs +36 -0
  619. package/src/Dialog.js +614 -0
  620. package/src/DurationPicker.js +312 -0
  621. package/src/FileUploader.hbs +40 -0
  622. package/src/FileUploader.js +530 -0
  623. package/src/FileUploaderPopover.hbs +26 -0
  624. package/src/GroupHeaderListItem.hbs +15 -0
  625. package/src/GroupHeaderListItem.js +94 -0
  626. package/src/Icon.hbs +25 -0
  627. package/src/Icon.js +376 -0
  628. package/src/Input.hbs +82 -0
  629. package/src/Input.js +1522 -0
  630. package/src/InputPopover.hbs +116 -0
  631. package/src/Interfaces.js +192 -0
  632. package/src/Label.hbs +13 -0
  633. package/src/Label.js +158 -0
  634. package/src/Link.hbs +21 -0
  635. package/src/Link.js +378 -0
  636. package/src/List.hbs +89 -0
  637. package/src/List.js +1066 -0
  638. package/src/ListItem.hbs +103 -0
  639. package/src/ListItem.js +371 -0
  640. package/src/ListItemBase.js +179 -0
  641. package/src/MessageStrip.hbs +34 -0
  642. package/src/MessageStrip.js +256 -0
  643. package/src/MonthPicker.hbs +29 -0
  644. package/src/MonthPicker.js +299 -0
  645. package/src/MultiComboBox.hbs +78 -0
  646. package/src/MultiComboBox.js +1216 -0
  647. package/src/MultiComboBoxItem.js +43 -0
  648. package/src/MultiComboBoxPopover.hbs +132 -0
  649. package/src/MultiInput.hbs +41 -0
  650. package/src/MultiInput.js +348 -0
  651. package/src/Option.js +126 -0
  652. package/src/Panel.hbs +64 -0
  653. package/src/Panel.js +469 -0
  654. package/src/Popover.hbs +25 -0
  655. package/src/Popover.js +865 -0
  656. package/src/Popup.hbs +34 -0
  657. package/src/Popup.js +621 -0
  658. package/src/PopupBlockLayer.hbs +7 -0
  659. package/src/ProgressIndicator.hbs +35 -0
  660. package/src/ProgressIndicator.js +235 -0
  661. package/src/RadioButton.hbs +33 -0
  662. package/src/RadioButton.js +506 -0
  663. package/src/RadioButtonGroup.js +205 -0
  664. package/src/RangeSlider.hbs +70 -0
  665. package/src/RangeSlider.js +769 -0
  666. package/src/RatingIndicator.hbs +35 -0
  667. package/src/RatingIndicator.js +321 -0
  668. package/src/ResponsivePopover.hbs +41 -0
  669. package/src/ResponsivePopover.js +211 -0
  670. package/src/SegmentedButton.hbs +18 -0
  671. package/src/SegmentedButton.js +303 -0
  672. package/src/SegmentedButtonItem.hbs +42 -0
  673. package/src/SegmentedButtonItem.js +109 -0
  674. package/src/Select.hbs +45 -0
  675. package/src/Select.js +839 -0
  676. package/src/SelectPopover.hbs +89 -0
  677. package/src/Slider.hbs +42 -0
  678. package/src/Slider.js +320 -0
  679. package/src/SliderBase.hbs +38 -0
  680. package/src/SliderBase.js +847 -0
  681. package/src/SplitButton.hbs +53 -0
  682. package/src/SplitButton.js +426 -0
  683. package/src/StandardListItem.hbs +44 -0
  684. package/src/StandardListItem.js +191 -0
  685. package/src/StepInput.hbs +81 -0
  686. package/src/StepInput.js +684 -0
  687. package/src/SuggestionGroupItem.js +64 -0
  688. package/src/SuggestionItem.js +146 -0
  689. package/src/SuggestionListItem.hbs +33 -0
  690. package/src/SuggestionListItem.js +76 -0
  691. package/src/Switch.hbs +51 -0
  692. package/src/Switch.js +292 -0
  693. package/src/Tab.hbs +3 -0
  694. package/src/Tab.js +338 -0
  695. package/src/TabContainer.hbs +83 -0
  696. package/src/TabContainer.js +1087 -0
  697. package/src/TabContainerPopover.hbs +27 -0
  698. package/src/TabInOverflow.hbs +21 -0
  699. package/src/TabInStrip.hbs +38 -0
  700. package/src/TabSeparator.js +83 -0
  701. package/src/TabSeparatorInOverflow.hbs +8 -0
  702. package/src/TabSeparatorInStrip.hbs +6 -0
  703. package/src/Table.hbs +109 -0
  704. package/src/Table.js +1010 -0
  705. package/src/TableCell.hbs +7 -0
  706. package/src/TableCell.js +88 -0
  707. package/src/TableColumn.hbs +8 -0
  708. package/src/TableColumn.js +129 -0
  709. package/src/TableGroupRow.hbs +13 -0
  710. package/src/TableGroupRow.js +164 -0
  711. package/src/TableRow.hbs +63 -0
  712. package/src/TableRow.js +462 -0
  713. package/src/TextArea.hbs +50 -0
  714. package/src/TextArea.js +701 -0
  715. package/src/TextAreaPopover.hbs +27 -0
  716. package/src/TimePicker.hbs +35 -0
  717. package/src/TimePicker.js +166 -0
  718. package/src/TimePickerBase.js +463 -0
  719. package/src/TimePickerPopover.hbs +33 -0
  720. package/src/TimeSelection.hbs +60 -0
  721. package/src/TimeSelection.js +493 -0
  722. package/src/Title.hbs +47 -0
  723. package/src/Title.js +132 -0
  724. package/src/Toast.hbs +13 -0
  725. package/src/Toast.js +243 -0
  726. package/src/ToggleButton.hbs +5 -0
  727. package/src/ToggleButton.js +89 -0
  728. package/src/Token.hbs +30 -0
  729. package/src/Token.js +219 -0
  730. package/src/Tokenizer.hbs +28 -0
  731. package/src/Tokenizer.js +566 -0
  732. package/src/TokenizerPopover.hbs +50 -0
  733. package/src/Tree.hbs +43 -0
  734. package/src/Tree.js +447 -0
  735. package/src/TreeItem.js +189 -0
  736. package/src/TreeListItem.hbs +48 -0
  737. package/src/TreeListItem.js +343 -0
  738. package/src/WheelSlider.hbs +48 -0
  739. package/src/WheelSlider.js +435 -0
  740. package/src/YearPicker.hbs +27 -0
  741. package/src/YearPicker.js +324 -0
  742. package/src/features/ColorPaletteMoreColors.js +42 -0
  743. package/src/features/InputElementsFormSupport.js +88 -0
  744. package/src/features/InputSuggestions.js +594 -0
  745. package/src/i18n/messagebundle.properties +360 -0
  746. package/src/i18n/messagebundle_ar.properties +241 -0
  747. package/src/i18n/messagebundle_bg.properties +241 -0
  748. package/src/i18n/messagebundle_ca.properties +241 -0
  749. package/src/i18n/messagebundle_cs.properties +241 -0
  750. package/src/i18n/messagebundle_cy.properties +241 -0
  751. package/src/i18n/messagebundle_da.properties +241 -0
  752. package/src/i18n/messagebundle_de.properties +241 -0
  753. package/src/i18n/messagebundle_el.properties +241 -0
  754. package/src/i18n/messagebundle_en.properties +241 -0
  755. package/src/i18n/messagebundle_en_GB.properties +241 -0
  756. package/src/i18n/messagebundle_en_US_sappsd.properties +241 -0
  757. package/src/i18n/messagebundle_en_US_saprigi.properties +241 -0
  758. package/src/i18n/messagebundle_en_US_saptrc.properties +241 -0
  759. package/src/i18n/messagebundle_es.properties +241 -0
  760. package/src/i18n/messagebundle_es_MX.properties +241 -0
  761. package/src/i18n/messagebundle_et.properties +241 -0
  762. package/src/i18n/messagebundle_fi.properties +241 -0
  763. package/src/i18n/messagebundle_fr.properties +241 -0
  764. package/src/i18n/messagebundle_fr_CA.properties +241 -0
  765. package/src/i18n/messagebundle_hi.properties +241 -0
  766. package/src/i18n/messagebundle_hr.properties +241 -0
  767. package/src/i18n/messagebundle_hu.properties +241 -0
  768. package/src/i18n/messagebundle_id.properties +241 -0
  769. package/src/i18n/messagebundle_in.properties +172 -0
  770. package/src/i18n/messagebundle_it.properties +241 -0
  771. package/src/i18n/messagebundle_iw.properties +241 -0
  772. package/src/i18n/messagebundle_ja.properties +241 -0
  773. package/src/i18n/messagebundle_kk.properties +241 -0
  774. package/src/i18n/messagebundle_ko.properties +241 -0
  775. package/src/i18n/messagebundle_lt.properties +241 -0
  776. package/src/i18n/messagebundle_lv.properties +241 -0
  777. package/src/i18n/messagebundle_ms.properties +241 -0
  778. package/src/i18n/messagebundle_nl.properties +241 -0
  779. package/src/i18n/messagebundle_no.properties +241 -0
  780. package/src/i18n/messagebundle_pl.properties +241 -0
  781. package/src/i18n/messagebundle_pt.properties +241 -0
  782. package/src/i18n/messagebundle_pt_PT.properties +241 -0
  783. package/src/i18n/messagebundle_ro.properties +241 -0
  784. package/src/i18n/messagebundle_ru.properties +241 -0
  785. package/src/i18n/messagebundle_sh.properties +241 -0
  786. package/src/i18n/messagebundle_sk.properties +241 -0
  787. package/src/i18n/messagebundle_sl.properties +241 -0
  788. package/src/i18n/messagebundle_sv.properties +241 -0
  789. package/src/i18n/messagebundle_th.properties +241 -0
  790. package/src/i18n/messagebundle_tr.properties +241 -0
  791. package/src/i18n/messagebundle_uk.properties +241 -0
  792. package/src/i18n/messagebundle_vi.properties +241 -0
  793. package/src/i18n/messagebundle_zh_CN.properties +241 -0
  794. package/src/i18n/messagebundle_zh_TW.properties +241 -0
  795. package/src/popup-utils/OpenedPopupsRegistry.js +50 -0
  796. package/src/popup-utils/PopoverRegistry.js +145 -0
  797. package/src/themes/Avatar.css +227 -0
  798. package/src/themes/AvatarGroup.css +82 -0
  799. package/src/themes/Badge.css +247 -0
  800. package/src/themes/Breadcrumbs.css +100 -0
  801. package/src/themes/BreadcrumbsPopover.css +6 -0
  802. package/src/themes/BrowserScrollbar.css +25 -0
  803. package/src/themes/BusyIndicator.css +143 -0
  804. package/src/themes/Button.css +306 -0
  805. package/src/themes/Button.ie11.css +48 -0
  806. package/src/themes/Calendar.css +23 -0
  807. package/src/themes/CalendarHeader.css +137 -0
  808. package/src/themes/Card.css +42 -0
  809. package/src/themes/CardHeader.css +133 -0
  810. package/src/themes/Carousel.css +140 -0
  811. package/src/themes/CheckBox.css +289 -0
  812. package/src/themes/ColorPalette.css +70 -0
  813. package/src/themes/ColorPaletteItem.css +70 -0
  814. package/src/themes/ColorPalettePopover.css +17 -0
  815. package/src/themes/ColorPaletteStaticArea.css +17 -0
  816. package/src/themes/ColorPicker.css +190 -0
  817. package/src/themes/ComboBox.css +9 -0
  818. package/src/themes/ComboBoxPopover.css +17 -0
  819. package/src/themes/CustomListItem.css +31 -0
  820. package/src/themes/DatePicker.css +46 -0
  821. package/src/themes/DatePickerPopover.css +9 -0
  822. package/src/themes/DateRangePicker.css +16 -0
  823. package/src/themes/DateTimePicker.css +11 -0
  824. package/src/themes/DateTimePickerPopover.css +78 -0
  825. package/src/themes/DayPicker.css +269 -0
  826. package/src/themes/Dialog.css +66 -0
  827. package/src/themes/FileUploader.css +40 -0
  828. package/src/themes/GroupHeaderListItem.css +24 -0
  829. package/src/themes/GrowingButton.css +67 -0
  830. package/src/themes/Icon.css +38 -0
  831. package/src/themes/Input.css +407 -0
  832. package/src/themes/InputIcon.css +53 -0
  833. package/src/themes/InvisibleTextStyles.css +9 -0
  834. package/src/themes/Label.css +85 -0
  835. package/src/themes/Link.css +77 -0
  836. package/src/themes/List.css +116 -0
  837. package/src/themes/ListItem.css +231 -0
  838. package/src/themes/ListItemBase.css +79 -0
  839. package/src/themes/MessageStrip.css +123 -0
  840. package/src/themes/MonthPicker.css +86 -0
  841. package/src/themes/MultiComboBox.css +36 -0
  842. package/src/themes/MultiInput.css +14 -0
  843. package/src/themes/Panel.css +100 -0
  844. package/src/themes/Popover.css +102 -0
  845. package/src/themes/Popup.css +5 -0
  846. package/src/themes/PopupGlobal.css +6 -0
  847. package/src/themes/PopupStaticAreaStyles.css +17 -0
  848. package/src/themes/PopupsCommon.css +127 -0
  849. package/src/themes/ProgressIndicator.css +158 -0
  850. package/src/themes/RadioButton.css +249 -0
  851. package/src/themes/RatingIndicator.css +52 -0
  852. package/src/themes/ResponsivePopover.css +29 -0
  853. package/src/themes/ResponsivePopoverCommon.css +208 -0
  854. package/src/themes/SegmentedButton.css +88 -0
  855. package/src/themes/Select.css +53 -0
  856. package/src/themes/SelectPopover.css +19 -0
  857. package/src/themes/SliderBase.css +253 -0
  858. package/src/themes/SplitButton.css +98 -0
  859. package/src/themes/StepInput.css +269 -0
  860. package/src/themes/Suggestions.css +28 -0
  861. package/src/themes/Switch.css +370 -0
  862. package/src/themes/Tab.css +9 -0
  863. package/src/themes/TabContainer.css +128 -0
  864. package/src/themes/TabInOverflow.css +65 -0
  865. package/src/themes/TabInStrip.css +374 -0
  866. package/src/themes/TabSeparatorInOverflow.css +8 -0
  867. package/src/themes/TabSeparatorInStrip.css +5 -0
  868. package/src/themes/Table.css +91 -0
  869. package/src/themes/TableCell.css +28 -0
  870. package/src/themes/TableColumn.css +29 -0
  871. package/src/themes/TableGroupRow.css +34 -0
  872. package/src/themes/TableRow.css +85 -0
  873. package/src/themes/TapHighlightColor.css +3 -0
  874. package/src/themes/TextArea.css +309 -0
  875. package/src/themes/TimePicker.css +50 -0
  876. package/src/themes/TimePickerPopover.css +15 -0
  877. package/src/themes/TimeSelection.css +27 -0
  878. package/src/themes/Title.css +65 -0
  879. package/src/themes/Toast.css +93 -0
  880. package/src/themes/ToggleButton.css +88 -0
  881. package/src/themes/ToggleButton.ie11.css +48 -0
  882. package/src/themes/Token.css +117 -0
  883. package/src/themes/Tokenizer.css +85 -0
  884. package/src/themes/TokenizerPopover.css +4 -0
  885. package/src/themes/Tree.css +11 -0
  886. package/src/themes/TreeListItem.css +107 -0
  887. package/src/themes/ValueStateMessage.css +86 -0
  888. package/src/themes/WheelSlider.css +203 -0
  889. package/src/themes/YearPicker.css +86 -0
  890. package/src/themes/base/Avatar-parameters.css +38 -0
  891. package/src/themes/base/AvatarGroup-parameter.css +6 -0
  892. package/src/themes/base/Badge-parameters.css +61 -0
  893. package/src/themes/base/BrowserScrollbar-parameters.css +4 -0
  894. package/src/themes/base/BusyIndicator-parameters.css +5 -0
  895. package/src/themes/base/Button-parameters.css +30 -0
  896. package/src/themes/base/CalendarHeader-parameters.css +20 -0
  897. package/src/themes/base/Card-parameters.css +17 -0
  898. package/src/themes/base/Carousel-parameters.css +9 -0
  899. package/src/themes/base/CheckBox-parameters.css +53 -0
  900. package/src/themes/base/ColorPalette-parameters.css +14 -0
  901. package/src/themes/base/ColorPicker-parameters.css +8 -0
  902. package/src/themes/base/DatePicker-parameters.css +6 -0
  903. package/src/themes/base/DayPicker-parameters.css +41 -0
  904. package/src/themes/base/Dialog-parameters.css +9 -0
  905. package/src/themes/base/GroupHeaderListItem-parameters.css +3 -0
  906. package/src/themes/base/GrowingButton-parameters.css +6 -0
  907. package/src/themes/base/Input-parameters.css +63 -0
  908. package/src/themes/base/InputIcon-parameters.css +11 -0
  909. package/src/themes/base/Link-parameters.css +8 -0
  910. package/src/themes/base/List-parameters.css +3 -0
  911. package/src/themes/base/ListItemBase-parameters.css +9 -0
  912. package/src/themes/base/MessageStrip-parameters.css +21 -0
  913. package/src/themes/base/MonthPicker-parameters.css +16 -0
  914. package/src/themes/base/MultiComboBox-parameters.css +3 -0
  915. package/src/themes/base/Panel-parameters.css +11 -0
  916. package/src/themes/base/PopupsCommon-parameters.css +13 -0
  917. package/src/themes/base/ProgressIndicator-parameters.css +21 -0
  918. package/src/themes/base/RadioButton-parameters.css +32 -0
  919. package/src/themes/base/RatingIndicator-parameters.css +3 -0
  920. package/src/themes/base/SegmentedButtton-parameters.css +8 -0
  921. package/src/themes/base/Select-parameters.css +11 -0
  922. package/src/themes/base/SelectPopover-parameters.css +4 -0
  923. package/src/themes/base/SliderBase-parameters.css +64 -0
  924. package/src/themes/base/StepInput-parameters.css +23 -0
  925. package/src/themes/base/Suggestions-parameters.css +3 -0
  926. package/src/themes/base/Switch-parameters.css +96 -0
  927. package/src/themes/base/TabContainer-parameters.css +84 -0
  928. package/src/themes/base/Table-parameters.css +6 -0
  929. package/src/themes/base/TableColumn-parameters.css +3 -0
  930. package/src/themes/base/TableRow-parameters.css +3 -0
  931. package/src/themes/base/TextArea-parameters.css +22 -0
  932. package/src/themes/base/TimePicker-parameters.css +4 -0
  933. package/src/themes/base/TimelineItem-parameters.css +10 -0
  934. package/src/themes/base/Title-parameters.css +8 -0
  935. package/src/themes/base/Toast-parameters.css +6 -0
  936. package/src/themes/base/ToggleButton-parameters.css +8 -0
  937. package/src/themes/base/Token-parameters.css +19 -0
  938. package/src/themes/base/Tokenizer-parameters.css +4 -0
  939. package/src/themes/base/ValueStateMessage-parameters.css +7 -0
  940. package/src/themes/base/WheelSlider-parameters.css +15 -0
  941. package/src/themes/base/YearPicker-parameters.css +16 -0
  942. package/src/themes/base/sizes-parameters.css +302 -0
  943. package/src/themes/sap_belize/BrowserScrollbar-parameters.css +4 -0
  944. package/src/themes/sap_belize/Carousel-parameters.css +9 -0
  945. package/src/themes/sap_belize/Dialog-parameters.css +5 -0
  946. package/src/themes/sap_belize/Input-parameters.css +6 -0
  947. package/src/themes/sap_belize/InputIcon-parameters.css +5 -0
  948. package/src/themes/sap_belize/ProgressIndicator-parameters.css +8 -0
  949. package/src/themes/sap_belize/SliderBase-parameters.css +22 -0
  950. package/src/themes/sap_belize/TabContainer-parameters.css +6 -0
  951. package/src/themes/sap_belize/Table-parameters.css +7 -0
  952. package/src/themes/sap_belize/TimePicker-parameters.css +5 -0
  953. package/src/themes/sap_belize/WheelSlider-parameters.css +17 -0
  954. package/src/themes/sap_belize/parameters-bundle.css +48 -0
  955. package/src/themes/sap_belize_hcb/Avatar-parameters.css +18 -0
  956. package/src/themes/sap_belize_hcb/Badge-parameters.css +43 -0
  957. package/src/themes/sap_belize_hcb/BrowserScrollbar-parameters.css +4 -0
  958. package/src/themes/sap_belize_hcb/Button-parameters.css +12 -0
  959. package/src/themes/sap_belize_hcb/CalendarHeader-parameters.css +11 -0
  960. package/src/themes/sap_belize_hcb/Card-parameters.css +6 -0
  961. package/src/themes/sap_belize_hcb/Carousel-parameters.css +9 -0
  962. package/src/themes/sap_belize_hcb/CheckBox-parameters.css +12 -0
  963. package/src/themes/sap_belize_hcb/DatePicker-parameters.css +6 -0
  964. package/src/themes/sap_belize_hcb/DayPicker-parameters.css +13 -0
  965. package/src/themes/sap_belize_hcb/Dialog-parameters.css +7 -0
  966. package/src/themes/sap_belize_hcb/GrowingButton-parameters.css +8 -0
  967. package/src/themes/sap_belize_hcb/Input-parameters.css +14 -0
  968. package/src/themes/sap_belize_hcb/InputIcon-parameters.css +5 -0
  969. package/src/themes/sap_belize_hcb/Link-parameters.css +7 -0
  970. package/src/themes/sap_belize_hcb/MessageStrip-parameters.css +10 -0
  971. package/src/themes/sap_belize_hcb/MonthPicker-parameters.css +10 -0
  972. package/src/themes/sap_belize_hcb/Panel-parameters.css +5 -0
  973. package/src/themes/sap_belize_hcb/ProgressIndicator-parameters.css +11 -0
  974. package/src/themes/sap_belize_hcb/RadioButton-parameters.css +10 -0
  975. package/src/themes/sap_belize_hcb/Select-parameters.css +12 -0
  976. package/src/themes/sap_belize_hcb/SliderBase-parameters.css +17 -0
  977. package/src/themes/sap_belize_hcb/Switch-parameters.css +44 -0
  978. package/src/themes/sap_belize_hcb/TabContainer-parameters.css +44 -0
  979. package/src/themes/sap_belize_hcb/Table-parameters.css +7 -0
  980. package/src/themes/sap_belize_hcb/TableRow-parameters.css +5 -0
  981. package/src/themes/sap_belize_hcb/TextArea-parameters.css +6 -0
  982. package/src/themes/sap_belize_hcb/ToggleButton-parameters.css +7 -0
  983. package/src/themes/sap_belize_hcb/Token-parameters.css +6 -0
  984. package/src/themes/sap_belize_hcb/ValueStateMessage-parameters.css +5 -0
  985. package/src/themes/sap_belize_hcb/WheelSlider-parameters.css +17 -0
  986. package/src/themes/sap_belize_hcb/YearPicker-parameters.css +10 -0
  987. package/src/themes/sap_belize_hcb/parameters-bundle.css +47 -0
  988. package/src/themes/sap_belize_hcw/Avatar-parameters.css +18 -0
  989. package/src/themes/sap_belize_hcw/Badge-parameters.css +43 -0
  990. package/src/themes/sap_belize_hcw/BrowserScrollbar-parameters.css +4 -0
  991. package/src/themes/sap_belize_hcw/Button-parameters.css +12 -0
  992. package/src/themes/sap_belize_hcw/CalendarHeader-parameters.css +11 -0
  993. package/src/themes/sap_belize_hcw/Card-parameters.css +6 -0
  994. package/src/themes/sap_belize_hcw/Carousel-parameters.css +9 -0
  995. package/src/themes/sap_belize_hcw/CheckBox-parameters.css +12 -0
  996. package/src/themes/sap_belize_hcw/DatePicker-parameters.css +5 -0
  997. package/src/themes/sap_belize_hcw/DayPicker-parameters.css +14 -0
  998. package/src/themes/sap_belize_hcw/Dialog-parameters.css +7 -0
  999. package/src/themes/sap_belize_hcw/GrowingButton-parameters.css +8 -0
  1000. package/src/themes/sap_belize_hcw/Input-parameters.css +14 -0
  1001. package/src/themes/sap_belize_hcw/InputIcon-parameters.css +5 -0
  1002. package/src/themes/sap_belize_hcw/Link-parameters.css +7 -0
  1003. package/src/themes/sap_belize_hcw/MessageStrip-parameters.css +10 -0
  1004. package/src/themes/sap_belize_hcw/MonthPicker-parameters.css +10 -0
  1005. package/src/themes/sap_belize_hcw/Panel-parameters.css +5 -0
  1006. package/src/themes/sap_belize_hcw/ProgressIndicator-parameters.css +11 -0
  1007. package/src/themes/sap_belize_hcw/RadioButton-parameters.css +10 -0
  1008. package/src/themes/sap_belize_hcw/Select-parameters.css +12 -0
  1009. package/src/themes/sap_belize_hcw/SliderBase-parameters.css +17 -0
  1010. package/src/themes/sap_belize_hcw/Switch-parameters.css +43 -0
  1011. package/src/themes/sap_belize_hcw/TabContainer-parameters.css +44 -0
  1012. package/src/themes/sap_belize_hcw/Table-parameters.css +7 -0
  1013. package/src/themes/sap_belize_hcw/TableRow-parameters.css +5 -0
  1014. package/src/themes/sap_belize_hcw/TextArea-parameters.css +6 -0
  1015. package/src/themes/sap_belize_hcw/ToggleButton-parameters.css +6 -0
  1016. package/src/themes/sap_belize_hcw/Token-parameters.css +6 -0
  1017. package/src/themes/sap_belize_hcw/ValueStateMessage-parameters.css +5 -0
  1018. package/src/themes/sap_belize_hcw/WheelSlider-parameters.css +17 -0
  1019. package/src/themes/sap_belize_hcw/YearPicker-parameters.css +10 -0
  1020. package/src/themes/sap_belize_hcw/parameters-bundle.css +47 -0
  1021. package/src/themes/sap_fiori_3/Avatar-parameters.css +9 -0
  1022. package/src/themes/sap_fiori_3/Button-parameters.css +14 -0
  1023. package/src/themes/sap_fiori_3/CalendarHeader-parameters.css +8 -0
  1024. package/src/themes/sap_fiori_3/CheckBox-parameters.css +13 -0
  1025. package/src/themes/sap_fiori_3/DayPicker-parameters.css +6 -0
  1026. package/src/themes/sap_fiori_3/Input-parameters.css +7 -0
  1027. package/src/themes/sap_fiori_3/Link-parameters.css +7 -0
  1028. package/src/themes/sap_fiori_3/List-parameters.css +5 -0
  1029. package/src/themes/sap_fiori_3/MonthPicker-parameters.css +5 -0
  1030. package/src/themes/sap_fiori_3/MultiComboBox-parameters.css +5 -0
  1031. package/src/themes/sap_fiori_3/Panel-parameters.css +6 -0
  1032. package/src/themes/sap_fiori_3/SliderBase-parameters.css +5 -0
  1033. package/src/themes/sap_fiori_3/TabContainer-parameters.css +12 -0
  1034. package/src/themes/sap_fiori_3/TimePicker-parameters.css +5 -0
  1035. package/src/themes/sap_fiori_3/Token-parameters.css +9 -0
  1036. package/src/themes/sap_fiori_3/WheelSlider-parameters.css +16 -0
  1037. package/src/themes/sap_fiori_3/YearPicker-parameters.css +5 -0
  1038. package/src/themes/sap_fiori_3/parameters-bundle.css +48 -0
  1039. package/src/themes/sap_fiori_3_dark/Avatar-parameters.css +9 -0
  1040. package/src/themes/sap_fiori_3_dark/Button-parameters.css +14 -0
  1041. package/src/themes/sap_fiori_3_dark/CalendarHeader-parameters.css +8 -0
  1042. package/src/themes/sap_fiori_3_dark/CheckBox-parameters.css +13 -0
  1043. package/src/themes/sap_fiori_3_dark/DayPicker-parameters.css +6 -0
  1044. package/src/themes/sap_fiori_3_dark/Input-parameters.css +7 -0
  1045. package/src/themes/sap_fiori_3_dark/Link-parameters.css +7 -0
  1046. package/src/themes/sap_fiori_3_dark/List-parameters.css +5 -0
  1047. package/src/themes/sap_fiori_3_dark/MonthPicker-parameters.css +5 -0
  1048. package/src/themes/sap_fiori_3_dark/MultiComboBox-parameters.css +5 -0
  1049. package/src/themes/sap_fiori_3_dark/Panel-parameters.css +6 -0
  1050. package/src/themes/sap_fiori_3_dark/SliderBase-parameters.css +5 -0
  1051. package/src/themes/sap_fiori_3_dark/TabContainer-parameters.css +12 -0
  1052. package/src/themes/sap_fiori_3_dark/Token-parameters.css +8 -0
  1053. package/src/themes/sap_fiori_3_dark/WheelSlider-parameters.css +15 -0
  1054. package/src/themes/sap_fiori_3_dark/YearPicker-parameters.css +5 -0
  1055. package/src/themes/sap_fiori_3_dark/parameters-bundle.css +47 -0
  1056. package/src/themes/sap_fiori_3_hcb/Avatar-parameters.css +24 -0
  1057. package/src/themes/sap_fiori_3_hcb/Badge-parameters.css +43 -0
  1058. package/src/themes/sap_fiori_3_hcb/Button-parameters.css +10 -0
  1059. package/src/themes/sap_fiori_3_hcb/CalendarHeader-parameters.css +11 -0
  1060. package/src/themes/sap_fiori_3_hcb/Card-parameters.css +6 -0
  1061. package/src/themes/sap_fiori_3_hcb/Carousel-parameters.css +9 -0
  1062. package/src/themes/sap_fiori_3_hcb/CheckBox-parameters.css +13 -0
  1063. package/src/themes/sap_fiori_3_hcb/DatePicker-parameters.css +5 -0
  1064. package/src/themes/sap_fiori_3_hcb/DayPicker-parameters.css +17 -0
  1065. package/src/themes/sap_fiori_3_hcb/Dialog-parameters.css +7 -0
  1066. package/src/themes/sap_fiori_3_hcb/GrowingButton-parameters.css +8 -0
  1067. package/src/themes/sap_fiori_3_hcb/Input-parameters.css +21 -0
  1068. package/src/themes/sap_fiori_3_hcb/InputIcon-parameters.css +5 -0
  1069. package/src/themes/sap_fiori_3_hcb/Link-parameters.css +7 -0
  1070. package/src/themes/sap_fiori_3_hcb/MessageStrip-parameters.css +10 -0
  1071. package/src/themes/sap_fiori_3_hcb/MonthPicker-parameters.css +11 -0
  1072. package/src/themes/sap_fiori_3_hcb/Panel-parameters.css +5 -0
  1073. package/src/themes/sap_fiori_3_hcb/ProgressIndicator-parameters.css +11 -0
  1074. package/src/themes/sap_fiori_3_hcb/RadioButton-parameters.css +10 -0
  1075. package/src/themes/sap_fiori_3_hcb/Select-parameters.css +12 -0
  1076. package/src/themes/sap_fiori_3_hcb/SliderBase-parameters.css +14 -0
  1077. package/src/themes/sap_fiori_3_hcb/Switch-parameters.css +43 -0
  1078. package/src/themes/sap_fiori_3_hcb/TabContainer-parameters.css +44 -0
  1079. package/src/themes/sap_fiori_3_hcb/Table-parameters.css +5 -0
  1080. package/src/themes/sap_fiori_3_hcb/TableRow-parameters.css +5 -0
  1081. package/src/themes/sap_fiori_3_hcb/TextArea-parameters.css +10 -0
  1082. package/src/themes/sap_fiori_3_hcb/TimePicker-parameters.css +5 -0
  1083. package/src/themes/sap_fiori_3_hcb/ToggleButton-parameters.css +6 -0
  1084. package/src/themes/sap_fiori_3_hcb/Token-parameters.css +7 -0
  1085. package/src/themes/sap_fiori_3_hcb/ValueStateMessage-parameters.css +5 -0
  1086. package/src/themes/sap_fiori_3_hcb/WheelSlider-parameters.css +17 -0
  1087. package/src/themes/sap_fiori_3_hcb/YearPicker-parameters.css +11 -0
  1088. package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +48 -0
  1089. package/src/themes/sap_fiori_3_hcw/Avatar-parameters.css +24 -0
  1090. package/src/themes/sap_fiori_3_hcw/Badge-parameters.css +43 -0
  1091. package/src/themes/sap_fiori_3_hcw/Button-parameters.css +10 -0
  1092. package/src/themes/sap_fiori_3_hcw/CalendarHeader-parameters.css +11 -0
  1093. package/src/themes/sap_fiori_3_hcw/Card-parameters.css +6 -0
  1094. package/src/themes/sap_fiori_3_hcw/Carousel-parameters.css +9 -0
  1095. package/src/themes/sap_fiori_3_hcw/CheckBox-parameters.css +13 -0
  1096. package/src/themes/sap_fiori_3_hcw/DatePicker-parameters.css +5 -0
  1097. package/src/themes/sap_fiori_3_hcw/DayPicker-parameters.css +17 -0
  1098. package/src/themes/sap_fiori_3_hcw/Dialog-parameters.css +7 -0
  1099. package/src/themes/sap_fiori_3_hcw/GrowingButton-parameters.css +8 -0
  1100. package/src/themes/sap_fiori_3_hcw/Input-parameters.css +21 -0
  1101. package/src/themes/sap_fiori_3_hcw/InputIcon-parameters.css +5 -0
  1102. package/src/themes/sap_fiori_3_hcw/Link-parameters.css +7 -0
  1103. package/src/themes/sap_fiori_3_hcw/MessageStrip-parameters.css +10 -0
  1104. package/src/themes/sap_fiori_3_hcw/MonthPicker-parameters.css +11 -0
  1105. package/src/themes/sap_fiori_3_hcw/Panel-parameters.css +5 -0
  1106. package/src/themes/sap_fiori_3_hcw/ProgressIndicator-parameters.css +11 -0
  1107. package/src/themes/sap_fiori_3_hcw/RadioButton-parameters.css +10 -0
  1108. package/src/themes/sap_fiori_3_hcw/Select-parameters.css +12 -0
  1109. package/src/themes/sap_fiori_3_hcw/SliderBase-parameters.css +13 -0
  1110. package/src/themes/sap_fiori_3_hcw/Switch-parameters.css +43 -0
  1111. package/src/themes/sap_fiori_3_hcw/TabContainer-parameters.css +44 -0
  1112. package/src/themes/sap_fiori_3_hcw/Table-parameters.css +5 -0
  1113. package/src/themes/sap_fiori_3_hcw/TableRow-parameters.css +5 -0
  1114. package/src/themes/sap_fiori_3_hcw/TextArea-parameters.css +10 -0
  1115. package/src/themes/sap_fiori_3_hcw/TimePicker-parameters.css +5 -0
  1116. package/src/themes/sap_fiori_3_hcw/ToggleButton-parameters.css +6 -0
  1117. package/src/themes/sap_fiori_3_hcw/Token-parameters.css +7 -0
  1118. package/src/themes/sap_fiori_3_hcw/ValueStateMessage-parameters.css +5 -0
  1119. package/src/themes/sap_fiori_3_hcw/WheelSlider-parameters.css +17 -0
  1120. package/src/themes/sap_fiori_3_hcw/YearPicker-parameters.css +11 -0
  1121. package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +48 -0
  1122. package/src/themes/sap_horizon/Avatar-parameters.css +33 -0
  1123. package/src/themes/sap_horizon/BusyIndicator-parameters.css +7 -0
  1124. package/src/themes/sap_horizon/Button-parameters.css +20 -0
  1125. package/src/themes/sap_horizon/CalendarHeader-parameters.css +19 -0
  1126. package/src/themes/sap_horizon/Card-parameters.css +10 -0
  1127. package/src/themes/sap_horizon/CheckBox-parameters.css +34 -0
  1128. package/src/themes/sap_horizon/ColorPalette-parameters.css +16 -0
  1129. package/src/themes/sap_horizon/ColorPicker-parameters.css +10 -0
  1130. package/src/themes/sap_horizon/DatePicker-parameters.css +6 -0
  1131. package/src/themes/sap_horizon/DayPicker-parameters.css +31 -0
  1132. package/src/themes/sap_horizon/Dialog-parameters.css +11 -0
  1133. package/src/themes/sap_horizon/GrowingButton-parameters.css +5 -0
  1134. package/src/themes/sap_horizon/Input-parameters.css +35 -0
  1135. package/src/themes/sap_horizon/InputIcon-parameters.css +17 -0
  1136. package/src/themes/sap_horizon/Link-parameters.css +10 -0
  1137. package/src/themes/sap_horizon/List-parameters.css +5 -0
  1138. package/src/themes/sap_horizon/ListItemBase-parameters.css +7 -0
  1139. package/src/themes/sap_horizon/MessageStrip-parameters.css +9 -0
  1140. package/src/themes/sap_horizon/MonthPicker-parameters.css +17 -0
  1141. package/src/themes/sap_horizon/MultiComboBox-parameters.css +5 -0
  1142. package/src/themes/sap_horizon/Panel-parameters.css +12 -0
  1143. package/src/themes/sap_horizon/PopupsCommon-parameters.css +9 -0
  1144. package/src/themes/sap_horizon/ProgressIndicator-parameters.css +23 -0
  1145. package/src/themes/sap_horizon/RadioButton-parameters.css +9 -0
  1146. package/src/themes/sap_horizon/RatingIndicator-parameters.css +3 -0
  1147. package/src/themes/sap_horizon/SegmentedButtton-parameters.css +10 -0
  1148. package/src/themes/sap_horizon/Select-parameters.css +5 -0
  1149. package/src/themes/sap_horizon/SelectPopover-parameters.css +4 -0
  1150. package/src/themes/sap_horizon/SliderBase-parameters.css +44 -0
  1151. package/src/themes/sap_horizon/StepInput-parameters.css +25 -0
  1152. package/src/themes/sap_horizon/Suggestions-parameters.css +5 -0
  1153. package/src/themes/sap_horizon/Switch-parameters.css +31 -0
  1154. package/src/themes/sap_horizon/TabContainer-parameters.css +25 -0
  1155. package/src/themes/sap_horizon/Table-parameters.css +8 -0
  1156. package/src/themes/sap_horizon/TableColumn-parameters.css +5 -0
  1157. package/src/themes/sap_horizon/TableRow-parameters.css +5 -0
  1158. package/src/themes/sap_horizon/TextArea-parameters.css +22 -0
  1159. package/src/themes/sap_horizon/TimePicker-parameters.css +6 -0
  1160. package/src/themes/sap_horizon/ToggleButton-parameters.css +11 -0
  1161. package/src/themes/sap_horizon/Token-parameters.css +28 -0
  1162. package/src/themes/sap_horizon/Tokenizer-parameters.css +6 -0
  1163. package/src/themes/sap_horizon/ValueStateMessage-parameters.css +8 -0
  1164. package/src/themes/sap_horizon/WheelSlider-parameters.css +19 -0
  1165. package/src/themes/sap_horizon/YearPicker-parameters.css +16 -0
  1166. package/src/themes/sap_horizon/parameters-bundle.css +57 -0
  1167. package/src/themes/sap_horizon/sizes-parameters.css +8 -0
  1168. package/src/themes/sap_horizon_exp/Badge-parameters.css +91 -0
  1169. package/src/themes/sap_horizon_exp/Button-parameters.css +12 -0
  1170. package/src/themes/sap_horizon_exp/CalendarHeader-parameters.css +8 -0
  1171. package/src/themes/sap_horizon_exp/CheckBox-parameters.css +35 -0
  1172. package/src/themes/sap_horizon_exp/DatePicker-parameters.css +5 -0
  1173. package/src/themes/sap_horizon_exp/DayPicker-parameters.css +6 -0
  1174. package/src/themes/sap_horizon_exp/Input-parameters.css +46 -0
  1175. package/src/themes/sap_horizon_exp/InputIcon-parameters.css +9 -0
  1176. package/src/themes/sap_horizon_exp/Link-parameters.css +7 -0
  1177. package/src/themes/sap_horizon_exp/List-parameters.css +5 -0
  1178. package/src/themes/sap_horizon_exp/MonthPicker-parameters.css +5 -0
  1179. package/src/themes/sap_horizon_exp/MultiComboBox-parameters.css +7 -0
  1180. package/src/themes/sap_horizon_exp/Panel-parameters.css +6 -0
  1181. package/src/themes/sap_horizon_exp/Popover-parameters.css +5 -0
  1182. package/src/themes/sap_horizon_exp/RadioButton-parameters.css +30 -0
  1183. package/src/themes/sap_horizon_exp/Select-parameters.css +5 -0
  1184. package/src/themes/sap_horizon_exp/SliderBase-parameters.css +30 -0
  1185. package/src/themes/sap_horizon_exp/Switch-parameters.css +46 -0
  1186. package/src/themes/sap_horizon_exp/TabContainer-parameters.css +40 -0
  1187. package/src/themes/sap_horizon_exp/TimePicker-parameters.css +5 -0
  1188. package/src/themes/sap_horizon_exp/Token-parameters.css +9 -0
  1189. package/src/themes/sap_horizon_exp/WheelSlider-parameters.css +16 -0
  1190. package/src/themes/sap_horizon_exp/YearPicker-parameters.css +5 -0
  1191. package/src/themes/sap_horizon_exp/parameters-bundle.css +46 -0
  1192. package/src/timepicker-utils/TimeSlider.js +103 -0
  1193. package/src/types/AvatarColorScheme.js +104 -0
  1194. package/src/types/AvatarGroupType.js +43 -0
  1195. package/src/types/AvatarShape.js +41 -0
  1196. package/src/types/AvatarSize.js +67 -0
  1197. package/src/types/BreadcrumbsDesign.js +42 -0
  1198. package/src/types/BreadcrumbsSeparatorStyle.js +69 -0
  1199. package/src/types/BusyIndicatorSize.js +47 -0
  1200. package/src/types/ButtonDesign.js +68 -0
  1201. package/src/types/CalendarSelectionMode.js +47 -0
  1202. package/src/types/CarouselArrowsPlacement.js +40 -0
  1203. package/src/types/GrowingMode.js +48 -0
  1204. package/src/types/HasPopup.js +62 -0
  1205. package/src/types/InputType.js +68 -0
  1206. package/src/types/LinkDesign.js +47 -0
  1207. package/src/types/ListGrowingMode.js +15 -0
  1208. package/src/types/ListItemType.js +47 -0
  1209. package/src/types/ListMode.js +77 -0
  1210. package/src/types/ListSeparators.js +46 -0
  1211. package/src/types/MessageStripDesign.js +54 -0
  1212. package/src/types/PanelAccessibleRole.js +48 -0
  1213. package/src/types/PopoverHorizontalAlign.js +54 -0
  1214. package/src/types/PopoverPlacementType.js +54 -0
  1215. package/src/types/PopoverVerticalAlign.js +54 -0
  1216. package/src/types/Priority.js +55 -0
  1217. package/src/types/SemanticColor.js +61 -0
  1218. package/src/types/SwitchDesign.js +40 -0
  1219. package/src/types/TabContainerTabsPlacement.js +40 -0
  1220. package/src/types/TabLayout.js +40 -0
  1221. package/src/types/TableGrowingMode.js +15 -0
  1222. package/src/types/TableMode.js +47 -0
  1223. package/src/types/TableRowType.js +40 -0
  1224. package/src/types/TabsOverflowMode.js +40 -0
  1225. package/src/types/TitleLevel.js +68 -0
  1226. package/src/types/ToastPlacement.js +91 -0
  1227. package/src/types/WrappingType.js +41 -0
  1228. package/dist/Timeline.js +0 -93
  1229. package/dist/TimelineItem.js +0 -161
  1230. package/dist/generated/templates/ComboBoxItemTemplate.lit.js +0 -7
  1231. package/dist/generated/templates/DurationPickerPopoverTemplate.lit.js +0 -8
  1232. package/dist/generated/templates/DurationPickerTemplate.lit.js +0 -8
  1233. package/dist/generated/templates/TabSeparatorTemplate.lit.js +0 -7
  1234. package/dist/generated/templates/TimelineItemTemplate.lit.js +0 -12
  1235. package/dist/generated/templates/TimelineTemplate.lit.js +0 -8
  1236. package/dist/generated/themes/ComboBoxItem.css.js +0 -8
  1237. package/dist/generated/themes/DurationPicker.css.js +0 -8
  1238. package/dist/generated/themes/DurationPickerPopover.css.js +0 -8
  1239. package/dist/generated/themes/TabContainerPopup.css.js +0 -8
  1240. package/dist/generated/themes/Timeline.css.js +0 -8
  1241. package/dist/generated/themes/TimelineItem.css.js +0 -8
  1242. package/dist/popup-utils/PopupUtils.js +0 -55
  1243. package/dist/types/AvatarFitType.js +0 -40
  1244. package/dist/webcomponentsjs/package.json +0 -46
package/dist/Popup.js CHANGED
@@ -1,13 +1,22 @@
1
+ import { renderFinished } from "@ui5/webcomponents-base/dist/Render.js";
2
+ import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
1
3
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
4
+ import { isChrome } from "@ui5/webcomponents-base/dist/Device.js";
2
5
  import { getFirstFocusableElement, getLastFocusableElement } from "@ui5/webcomponents-base/dist/util/FocusableElements.js";
3
- import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
4
- import { isEscape } from "@ui5/webcomponents-base/dist/Keys.js";
6
+ import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AriaLabelHelper.js";
7
+ import { hasStyle, createStyle } from "@ui5/webcomponents-base/dist/ManagedStyles.js";
8
+ import { isTabPrevious } from "@ui5/webcomponents-base/dist/Keys.js";
9
+ import { getNextZIndex, getFocusedElement, isFocusedElementWithinNode } from "@ui5/webcomponents-base/dist/util/PopupUtils.js";
10
+ import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
11
+ import MediaRange from "@ui5/webcomponents-base/dist/MediaRange.js";
12
+ import PopupTemplate from "./generated/templates/PopupTemplate.lit.js";
13
+ import PopupBlockLayer from "./generated/templates/PopupBlockLayerTemplate.lit.js";
14
+ import { addOpenedPopup, removeOpenedPopup } from "./popup-utils/OpenedPopupsRegistry.js";
5
15
 
6
16
  // Styles
7
17
  import styles from "./generated/themes/Popup.css.js";
8
-
9
- import { addOpenedPopup, removeOpenedPopup } from "./popup-utils/OpenedPopupsRegistry.js";
10
- import { getNextZIndex } from "./popup-utils/PopupUtils.js";
18
+ import staticAreaStyles from "./generated/themes/PopupStaticAreaStyles.css.js";
19
+ import globalStyles from "./generated/themes/PopupGlobal.css.js";
11
20
 
12
21
  /**
13
22
  * @public
@@ -17,78 +26,96 @@ const metadata = {
17
26
  slots: /** @lends sap.ui.webcomponents.main.Popup.prototype */ {
18
27
 
19
28
  /**
20
- * Defines the content of the Web Component.
21
- * @type {Node[]}
29
+ * Defines the content of the Popup.
30
+ * @type {HTMLElement[]}
22
31
  * @slot
23
32
  * @public
24
33
  */
25
34
  "default": {
26
35
  type: HTMLElement,
36
+ propertyName: "content",
27
37
  },
28
-
38
+ },
39
+ properties: /** @lends sap.ui.webcomponents.main.Popup.prototype */ {
29
40
  /**
30
- * Defines the header HTML Element.
41
+ * Defines the ID of the HTML Element, which will get the initial focus.
31
42
  *
32
- * @type {HTMLElement[]}
33
- * @slot
43
+ * @type {string}
44
+ * @defaultvalue ""
34
45
  * @public
35
46
  */
36
- header: {
37
- type: HTMLElement,
47
+ initialFocus: {
48
+ type: String,
38
49
  },
39
50
 
40
51
  /**
41
- * Defines the footer HTML Element.
42
- *
43
- * @type {HTMLElement[]}
44
- * @slot
52
+ * Defines if the focus should be returned to the previously focused element,
53
+ * when the popup closes.
54
+ * @type {boolean}
55
+ * @defaultvalue false
45
56
  * @public
57
+ * @since 1.0.0-rc.8
58
+ */
59
+ preventFocusRestore: {
60
+ type: Boolean,
61
+ },
62
+
63
+ /**
64
+ * Indicates if the element is open
65
+ * @public
66
+ * @type {boolean}
67
+ * @defaultvalue false
68
+ * @since 1.2.0
46
69
  */
47
- footer: {
48
- type: HTMLElement,
70
+ open: {
71
+ type: Boolean,
49
72
  },
50
- },
51
- properties: /** @lends sap.ui.webcomponents.main.Popup.prototype */ {
73
+
52
74
  /**
53
- * Defines the ID of the HTML Element, which will get the initial focus.
75
+ * Indicates if the element is already open
76
+ * @private
77
+ * @type {boolean}
78
+ * @defaultvalue false
79
+ */
80
+ opened: {
81
+ type: Boolean,
82
+ noAttribute: true,
83
+ },
84
+
85
+ /**
86
+ * Defines the accessible name of the component.
54
87
  *
55
88
  * @type {string}
56
89
  * @defaultvalue ""
57
90
  * @public
91
+ * @since 1.0.0-rc.15
58
92
  */
59
- initialFocus: {
93
+ accessibleName: {
60
94
  type: String,
95
+ defaultValue: undefined,
61
96
  },
62
97
 
63
98
  /**
64
- * Defines the header text.
65
- * <br><br>
66
- * <b>Note:</b> If <code>header</code> slot is provided, the <code>headerText</code> is ignored.
99
+ * Defines the IDs of the elements that label the component.
67
100
  *
68
101
  * @type {string}
69
102
  * @defaultvalue ""
70
103
  * @public
104
+ * @since 1.1.0
71
105
  */
72
- headerText: {
106
+ accessibleNameRef: {
73
107
  type: String,
108
+ defaultValue: "",
74
109
  },
75
110
 
76
111
  /**
77
- * Indicates if the elements is on focus
112
+ * Defines the current media query size.
113
+ *
114
+ * @type {string}
78
115
  * @private
79
116
  */
80
- opened: {
81
- type: Boolean,
82
- },
83
-
84
- _zIndex: {
85
- type: Integer,
86
- noAttribute: true,
87
- },
88
-
89
- _hideBlockLayer: {
90
- type: Boolean,
91
- noAttribute: true,
117
+ mediaRange: {
118
+ type: String,
92
119
  },
93
120
 
94
121
  /**
@@ -97,129 +124,98 @@ const metadata = {
97
124
  _disableInitialFocus: {
98
125
  type: Boolean,
99
126
  },
127
+
128
+ _blockLayerHidden: {
129
+ type: Boolean,
130
+ },
100
131
  },
101
132
  events: /** @lends sap.ui.webcomponents.main.Popup.prototype */ {
102
133
 
103
134
  /**
104
- * Fired before the component is opened.
135
+ * 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>
105
136
  *
106
137
  * @public
107
- * @event
138
+ * @event sap.ui.webcomponents.main.Popup#before-open
139
+ * @allowPreventDefault
108
140
  */
141
+ "before-open": {},
109
142
 
110
- beforeOpen: {},
111
143
  /**
112
- * Fired after the component is opened.
144
+ * Fired after the component is opened. <b>This event does not bubble.</b>
113
145
  *
114
146
  * @public
115
- * @event
147
+ * @event sap.ui.webcomponents.main.Popup#after-open
116
148
  */
149
+ "after-open": {},
117
150
 
118
- afterOpen: {},
119
151
  /**
120
- * Fired before the component is closed.
152
+ * 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>
121
153
  *
122
154
  * @public
123
- * @event
124
- * @param {Boolean} escPressed Indicates that <code>ESC</code> key has triggered the event.
155
+ * @event sap.ui.webcomponents.main.Popup#before-close
156
+ * @allowPreventDefault
157
+ * @param {boolean} escPressed Indicates that <code>ESC</code> key has triggered the event.
125
158
  */
126
-
127
- beforeClose: {
128
- escPressed: { type: Boolean },
159
+ "before-close": {
160
+ detail: {
161
+ escPressed: { type: Boolean },
162
+ },
129
163
  },
130
164
 
131
165
  /**
132
- * Fired after the component is closed.
166
+ * Fired after the component is closed. <b>This event does not bubble.</b>
133
167
  *
134
168
  * @public
135
- * @event
169
+ * @event sap.ui.webcomponents.main.Popup#after-close
170
+ */
171
+ "after-close": {},
172
+
173
+ /**
174
+ * Fired whenever the popup content area is scrolled
175
+ *
176
+ * @private
177
+ * @event sap.ui.webcomponents.main.Popup#scroll
136
178
  */
137
- afterClose: {},
179
+ "scroll": {},
138
180
  },
139
181
  };
140
182
 
141
- const openedPopups = [];
142
- let isBodyScrollingDisabled = false;
143
- let customBLyBackStyleInserted = false;
144
-
145
- function getParentHost(node) {
146
- while (node && !node.host) {
147
- node = node.parentNode;
183
+ const createBlockingStyle = () => {
184
+ if (!hasStyle("data-ui5-popup-scroll-blocker")) {
185
+ createStyle(globalStyles, "data-ui5-popup-scroll-blocker");
148
186
  }
187
+ };
149
188
 
150
- return node && node.host;
151
- }
152
-
153
- function createBLyBackStyle() {
154
- if (customBLyBackStyleInserted) {
155
- return;
156
- }
157
-
158
- customBLyBackStyleInserted = true;
159
-
160
- const bodyStyleSheet = document.createElement("style");
161
- bodyStyleSheet.type = "text/css";
162
- bodyStyleSheet.innerHTML = `
163
- .ui5-popup-BLy--back {
164
- width: 100%;
165
- height: 100%;
166
- position: fixed;
167
- overflow: hidden;
168
- }
169
- `;
170
- document.head.appendChild(bodyStyleSheet);
171
- }
172
-
173
- function updateBlockLayers() {
174
- let popup,
175
- i,
176
- hasModal = false;
177
-
178
- for (i = openedPopups.length - 1; i >= 0; i--) {
179
- popup = openedPopups[i];
180
- if (hasModal) {
181
- popup._hideBlockLayer = true;
182
- } else {
183
- if (popup.isModal()) { // eslint-disable-line
184
- popup._hideBlockLayer = false;
185
- hasModal = true;
186
- }
187
- }
188
- }
189
-
190
- updateBodyScrolling(hasModal);
191
- }
192
-
193
- function updateBodyScrolling(hasModal) {
194
- if (isBodyScrollingDisabled === hasModal) {
195
- return;
196
- }
197
-
198
- createBLyBackStyle();
199
-
200
- if (hasModal) {
201
- addBodyStyles();
202
- } else {
203
- removeBodyStyles();
204
- }
205
- isBodyScrollingDisabled = hasModal;
206
- }
207
-
208
- function addBodyStyles() {
209
- document.body.style.top = `-${window.pageYOffset}px`;
210
- document.body.classList.add("ui5-popup-BLy--back");
211
- }
189
+ createBlockingStyle();
212
190
 
213
- function removeBodyStyles() {
214
- document.body.classList.remove("ui5-popup-BLy--back");
215
- window.scrollTo(0, -parseFloat(document.body.style.top));
216
- document.body.style.top = "";
217
- }
191
+ const bodyScrollingBlockers = new Set();
218
192
 
219
193
  /**
220
194
  * @class
221
195
  * <h3 class="comment-api-title">Overview</h3>
222
- * Represents a base class for all popup Web Components.
196
+ * Base class for all popup Web Components.
197
+ *
198
+ * If you need to create your own popup-like custom UI5 Web Components, it is highly recommended that you extend
199
+ * at least Popup in order to have consistency with other popups in terms of modal behavior and z-index management.
200
+ *
201
+ * 1. The Popup class handles modality:
202
+ * - The "isModal" getter can be overridden by derivatives to provide their own conditions when they are modal or not
203
+ * - Derivatives may call the "blockBodyScrolling" and "unblockBodyScrolling" static methods to temporarily remove scrollbars on the body
204
+ * - Derivatives may call the "open" and "close" methods which handle focus, manage the popup registry and for modal popups, manage the blocking layer
205
+ *
206
+ * 2. Provides blocking layer (relevant for modal popups only):
207
+ * - It is in the static area
208
+ * - Controlled by the "open" and "close" methods
209
+ *
210
+ * 3. The Popup class "traps" focus:
211
+ * - Derivatives may call the "applyInitialFocus" method (usually when opening, to transfer focus inside the popup)
212
+ *
213
+ * 4. The Popup class automatically assigns "z-index"
214
+ * - Each time a popup is opened, it gets a higher than the previously opened popup z-index
215
+ *
216
+ * 5. The template of this component exposes two inline partials you can override in derivatives:
217
+ * - beforeContent (upper part of the box, useful for header/title/close button)
218
+ * - afterContent (lower part, useful for footer/action buttons)
223
219
  *
224
220
  * @constructor
225
221
  * @author SAP SE
@@ -228,242 +224,397 @@ function removeBodyStyles() {
228
224
  * @public
229
225
  */
230
226
  class Popup extends UI5Element {
227
+ constructor() {
228
+ super();
229
+
230
+ this._resizeHandler = this._resize.bind(this);
231
+ }
232
+
231
233
  static get metadata() {
232
234
  return metadata;
233
235
  }
234
236
 
237
+ static get render() {
238
+ return litRender;
239
+ }
240
+
235
241
  static get styles() {
236
242
  return styles;
237
243
  }
238
244
 
239
- static hitTest(popup, event) {
240
- const indexOf = openedPopups.indexOf(popup);
241
- let openedPopup;
245
+ static get template() {
246
+ return PopupTemplate;
247
+ }
242
248
 
243
- for (let i = indexOf; i < openedPopups.length; i++) {
244
- openedPopup = openedPopups[i];
245
- if (openedPopup.hitTest(event)) {
246
- return true;
247
- }
248
- }
249
+ static get staticAreaTemplate() {
250
+ return PopupBlockLayer;
251
+ }
249
252
 
250
- return false;
253
+ static get staticAreaStyles() {
254
+ return staticAreaStyles;
251
255
  }
252
256
 
253
- static hasModalPopup() {
254
- for (let i = 0; i < openedPopups.length; i++) {
255
- if (openedPopups[i].isModal()) {
256
- return true;
257
- }
257
+ onEnterDOM() {
258
+ if (!this.isOpen()) {
259
+ this._blockLayerHidden = true;
258
260
  }
259
261
 
260
- return false;
262
+ ResizeHandler.register(this, this._resizeHandler);
261
263
  }
262
264
 
263
- constructor() {
264
- super();
265
-
266
- this._documentKeyDownHandler = this.documentKeyDown.bind(this);
267
- }
265
+ onExitDOM() {
266
+ if (this.isOpen()) {
267
+ Popup.unblockBodyScrolling(this);
268
+ this._removeOpenedPopup();
269
+ }
268
270
 
269
- isTopPopup() {
270
- return openedPopups.indexOf(this) === openedPopups.length - 1;
271
+ ResizeHandler.deregister(this, this._resizeHandler);
271
272
  }
272
273
 
273
- isModal() {
274
- return true;
274
+ get _displayProp() {
275
+ return "block";
275
276
  }
276
277
 
277
- documentKeyDown(event) {
278
- if (isEscape(event) && this.isTopPopup()) {
279
- this.escPressed = true;
280
- this.close();
281
- }
278
+ _resize() {
279
+ this.mediaRange = MediaRange.getCurrentRange(MediaRange.RANGESETS.RANGE_4STEPS, this.getDomRef().offsetWidth);
282
280
  }
283
281
 
284
- getPopupDomRef() {
285
- const domRef = this.getDomRef();
286
- return domRef && domRef.querySelector(".ui5-popup-root");
282
+ /**
283
+ * Prevents the user from interacting with the content under the block layer
284
+ */
285
+ _preventBlockLayerFocus(event) {
286
+ event.preventDefault();
287
287
  }
288
288
 
289
- hitTest(_event) {
290
- return true;
291
- }
289
+ /**
290
+ * Temporarily removes scrollbars from the body
291
+ * @protected
292
+ */
293
+ static blockBodyScrolling(popup) {
294
+ bodyScrollingBlockers.add(popup);
292
295
 
293
- open() {
294
- this.fireEvent("beforeOpen", { });
296
+ if (bodyScrollingBlockers.size !== 1) {
297
+ return;
298
+ }
295
299
 
296
- this._isFirstTimeRendered = false;
300
+ if (window.pageYOffset > 0) {
301
+ document.body.style.top = `-${window.pageYOffset}px`;
302
+ }
303
+ document.body.classList.add("ui5-popup-scroll-blocker");
304
+ }
297
305
 
298
- this._zIndex = getNextZIndex();
299
- openedPopups.push(this);
300
- addOpenedPopup(this);
306
+ /**
307
+ * Restores scrollbars on the body, if needed
308
+ * @protected
309
+ */
310
+ static unblockBodyScrolling(popup) {
311
+ bodyScrollingBlockers.delete(popup);
301
312
 
313
+ if (bodyScrollingBlockers.size !== 0) {
314
+ return;
315
+ }
302
316
 
303
- updateBlockLayers();
317
+ document.body.classList.remove("ui5-popup-scroll-blocker");
318
+ window.scrollTo(0, -parseFloat(document.body.style.top));
319
+ document.body.style.top = "";
304
320
  }
305
321
 
306
- close() {
307
- this.fireEvent("beforeClose", {
308
- escPressed: this.escPressed,
309
- }, true);
310
-
311
- this.escPressed = false;
312
-
313
- const index = openedPopups.indexOf(this);
314
- openedPopups.splice(index, 1);
322
+ _scroll(e) {
323
+ this.fireEvent("scroll", {
324
+ scrollTop: e.target.scrollTop,
325
+ targetRef: e.target,
326
+ });
327
+ }
315
328
 
316
- if (this.opened) {
317
- removeOpenedPopup(this);
329
+ _onkeydown(e) {
330
+ if (e.target === this._root && isTabPrevious(e)) {
331
+ e.preventDefault();
318
332
  }
333
+ }
319
334
 
320
- updateBlockLayers();
335
+ _onfocusout(e) {
336
+ // relatedTarget is the element, which will get focus. If no such element exists, focus the root.
337
+ // This happens after the mouse is released in order to not interrupt text selection.
338
+ if (!e.relatedTarget) {
339
+ this._shouldFocusRoot = true;
340
+ }
321
341
  }
322
342
 
323
- initInitialFocus() {
324
- const initialFocus = this.initialFocus;
325
- let initialFocusDomRef = this.initialFocus;
343
+ _onmousedown(e) {
344
+ this._root.removeAttribute("tabindex");
326
345
 
327
- if (initialFocus && typeof initialFocus === "string") {
328
- initialFocusDomRef = document.getElementById(initialFocus);
346
+ if (this.shadowRoot.contains(e.target)) {
347
+ this._shouldFocusRoot = true;
348
+ } else {
349
+ this._shouldFocusRoot = false;
350
+ }
351
+ }
329
352
 
330
- if (!initialFocusDomRef) {
331
- const parentHost = getParentHost(this);
332
- if (parentHost) {
333
- initialFocusDomRef = parentHost.shadowRoot.querySelector(`#${initialFocus}`);
334
- }
353
+ _onmouseup() {
354
+ this._root.tabIndex = -1;
355
+ if (this._shouldFocusRoot) {
356
+ if (isChrome()) {
357
+ this._root.focus();
335
358
  }
359
+ this._shouldFocusRoot = false;
336
360
  }
361
+ }
337
362
 
338
- this._initialFocusDomRef = initialFocusDomRef;
363
+ /**
364
+ * Focus trapping
365
+ * @private
366
+ */
367
+ async forwardToFirst() {
368
+ const firstFocusable = await getFirstFocusableElement(this);
369
+
370
+ if (firstFocusable) {
371
+ firstFocusable.focus();
372
+ } else {
373
+ this._root.focus();
374
+ }
339
375
  }
340
376
 
341
- onFirstTimeAfterRendering() {
342
- if (this.isTopPopup()) {
343
- this.initInitialFocus();
344
- this.setInitialFocus(this.getPopupDomRef());
377
+ /**
378
+ * Focus trapping
379
+ * @private
380
+ */
381
+ async forwardToLast() {
382
+ const lastFocusable = await getLastFocusableElement(this);
383
+
384
+ if (lastFocusable) {
385
+ lastFocusable.focus();
386
+ } else {
387
+ this._root.focus();
345
388
  }
389
+ }
346
390
 
347
- this.fireEvent("afterOpen", {});
391
+ /**
392
+ * Use this method to focus the element denoted by "initialFocus", if provided, or the first focusable element otherwise.
393
+ * @protected
394
+ */
395
+ async applyInitialFocus() {
396
+ await this.applyFocus();
348
397
  }
349
398
 
350
- onAfterRendering() {
351
- if (!this.opened) {
352
- return;
399
+ /**
400
+ * Focuses the element denoted by <code>initialFocus</code>, if provided,
401
+ * or the first focusable element otherwise.
402
+ * @public
403
+ * @async
404
+ * @returns {Promise} Promise that resolves when the focus is applied
405
+ */
406
+ async applyFocus() {
407
+ await this._waitForDomRef();
408
+
409
+ const element = this.getRootNode().getElementById(this.initialFocus)
410
+ || document.getElementById(this.initialFocus)
411
+ || await getFirstFocusableElement(this)
412
+ || this._root; // in case of no focusable content focus the root
413
+
414
+ if (element) {
415
+ if (element === this._root) {
416
+ element.tabIndex = -1;
417
+ }
418
+ element.focus();
353
419
  }
420
+ }
354
421
 
355
- if (!this._isFirstTimeRendered) {
356
- this.onFirstTimeAfterRendering();
357
- this._isFirstTimeRendered = true;
358
- }
422
+ /**
423
+ * Tells if the component is opened
424
+ * @public
425
+ * @returns {boolean}
426
+ */
427
+ isOpen() {
428
+ return this.opened;
359
429
  }
360
430
 
361
- setInitialFocus(container) {
362
- if (this._disableInitialFocus) {
363
- return;
364
- }
431
+ isFocusWithin() {
432
+ return isFocusedElementWithinNode(this.shadowRoot.querySelector(".ui5-popup-root"));
433
+ }
365
434
 
366
- if (this._initialFocusDomRef) {
367
- if (this._initialFocusDomRef !== document.activeElement) {
368
- this._initialFocusDomRef.focus();
369
- }
435
+ /**
436
+ * Shows the block layer (for modal popups only) and sets the correct z-index for the purpose of popup stacking
437
+ * @protected
438
+ */
439
+ async _open(preventInitialFocus) {
440
+ const prevented = !this.fireEvent("before-open", {}, true, false);
441
+ if (prevented) {
370
442
  return;
371
443
  }
372
444
 
373
- if (!container) {
374
- return;
445
+ if (this.isModal && !this.shouldHideBackdrop) {
446
+ // create static area item ref for block layer
447
+ this.getStaticAreaItemDomRef();
448
+ this._blockLayerHidden = false;
449
+ Popup.blockBodyScrolling(this);
375
450
  }
376
451
 
377
- const focusableElement = getFirstFocusableElement(container);
452
+ this._zIndex = getNextZIndex();
453
+ this.style.zIndex = this._zIndex;
454
+ this._focusedElementBeforeOpen = getFocusedElement();
378
455
 
379
- if (focusableElement) {
380
- focusableElement.focus();
381
- } else {
382
- container.focus();
456
+ this._show();
457
+
458
+ if (!this._disableInitialFocus && !preventInitialFocus) {
459
+ this.applyInitialFocus();
383
460
  }
461
+
462
+ this._addOpenedPopup();
463
+
464
+ this.opened = true;
465
+ this.open = true;
466
+
467
+ await renderFinished();
468
+ this.fireEvent("after-open", {}, false, false);
384
469
  }
385
470
 
386
- _onfocusin(event) {
387
- this.preserveFocus(event, this.getPopupDomRef());
471
+ /**
472
+ * Adds the popup to the "opened popups registry"
473
+ * @protected
474
+ */
475
+ _addOpenedPopup() {
476
+ addOpenedPopup(this);
388
477
  }
389
478
 
390
- preserveFocus(event, container) {
391
- if (!this.isTopPopup()) {
479
+ /**
480
+ * Hides the block layer (for modal popups only)
481
+ * @public
482
+ */
483
+ close(escPressed = false, preventRegistryUpdate = false, preventFocusRestore = false) {
484
+ if (!this.opened) {
392
485
  return;
393
486
  }
394
487
 
395
- let target = event.target;
488
+ const prevented = !this.fireEvent("before-close", { escPressed }, true, false);
489
+ if (prevented) {
490
+ return;
491
+ }
396
492
 
397
- while (target.shadowRoot && target.shadowRoot.activeElement) {
398
- target = target.shadowRoot.activeElement;
493
+ if (this.isModal) {
494
+ this._blockLayerHidden = true;
495
+ Popup.unblockBodyScrolling(this);
399
496
  }
400
497
 
401
- let focusableElement;
402
- let isSpecialCase = false;
403
-
404
- switch (target.id) {
405
- case `${this._id}-firstfe`:
406
- focusableElement = getLastFocusableElement(container);
407
- isSpecialCase = true;
408
- break;
409
- case `${this._id}-lastfe`:
410
- focusableElement = getFirstFocusableElement(container);
411
- isSpecialCase = true;
412
- break;
413
- case `${this._id}-blocklayer`:
414
- focusableElement = this._currentFocusedElement
415
- || getFirstFocusableElement(container);
416
- isSpecialCase = true;
417
- break;
498
+ this.hide();
499
+ this.opened = false;
500
+ this.open = false;
501
+
502
+ if (!preventRegistryUpdate) {
503
+ this._removeOpenedPopup();
418
504
  }
419
505
 
420
- if (focusableElement) {
421
- focusableElement.focus();
422
- } else if (isSpecialCase) {
423
- container.focus();
506
+ if (!this.preventFocusRestore && !preventFocusRestore) {
507
+ this.resetFocus();
424
508
  }
425
509
 
426
- this._currentFocusedElement = focusableElement || document.activeElement;
510
+ this.fireEvent("after-close", {}, false, false);
427
511
  }
428
512
 
429
- storeCurrentFocus() {
430
- let element = document.activeElement;
431
-
432
- while (element.shadowRoot && element.shadowRoot.activeElement) {
433
- element = element.shadowRoot.activeElement;
434
- }
435
-
436
- this._lastFocusableElement = (element && typeof element.focus === "function") ? element : null;
513
+ /**
514
+ * Removes the popup from the "opened popups registry"
515
+ * @protected
516
+ */
517
+ _removeOpenedPopup() {
518
+ removeOpenedPopup(this);
437
519
  }
438
520
 
521
+ /**
522
+ * Returns the focus to the previously focused element
523
+ * @protected
524
+ */
439
525
  resetFocus() {
440
- if (!this._lastFocusableElement) {
526
+ if (!this._focusedElementBeforeOpen) {
441
527
  return;
442
528
  }
443
529
 
444
- const lastFocusableElement = this._lastFocusableElement;
445
- if (lastFocusableElement) {
446
- lastFocusableElement.focus();
447
- }
530
+ this._focusedElementBeforeOpen.focus();
531
+ this._focusedElementBeforeOpen = null;
532
+ }
448
533
 
449
- this._lastFocusableElement = null;
534
+ /**
535
+ * Sets "block" display to the popup. The property can be overriden by derivatives of Popup.
536
+ * @protected
537
+ */
538
+ _show() {
539
+ this.style.display = this._displayProp;
450
540
  }
451
541
 
452
- onExitDOM() {
453
- removeBodyStyles();
542
+ /**
543
+ * Sets "none" display to the popup
544
+ * @protected
545
+ */
546
+ hide() {
547
+ this.style.display = "none";
548
+ }
549
+
550
+ /**
551
+ * Implement this getter with relevant logic regarding the modality of the popup (e.g. based on a public property)
552
+ *
553
+ * @protected
554
+ * @abstract
555
+ * @returns {boolean}
556
+ */
557
+ get isModal() {} // eslint-disable-line
558
+
559
+ /**
560
+ * Implement this getter with relevant logic in order to hide the block layer (f.e. based on a public property)
561
+ *
562
+ * @protected
563
+ * @abstract
564
+ * @returns {boolean}
565
+ */
566
+ get shouldHideBackdrop() {} // eslint-disable-line
567
+
568
+ /**
569
+ * Return the ID of an element in the shadow DOM that is going to label this popup
570
+ *
571
+ * @protected
572
+ * @abstract
573
+ * @returns {string}
574
+ */
575
+ get _ariaLabelledBy() {} // eslint-disable-line
576
+
577
+ /**
578
+ * Return the value for aria-modal for this popup
579
+ *
580
+ * @protected
581
+ * @abstract
582
+ * @returns {string}
583
+ */
584
+ get _ariaModal() {} // eslint-disable-line
585
+
586
+ /**
587
+ * Ensures ariaLabel is never null or empty string
588
+ * @returns {string|undefined}
589
+ * @protected
590
+ */
591
+ get _ariaLabel() {
592
+ return getEffectiveAriaLabelText(this);
454
593
  }
455
594
 
456
- get hasHeader() {
457
- const hasHeaderText = this.headerText && this.headerText.length;
458
- return !!(hasHeaderText || this.header.length);
595
+ get _root() {
596
+ return this.shadowRoot.querySelector(".ui5-popup-root");
459
597
  }
460
598
 
461
- get hasFooter() {
462
- return !!this.footer.length;
599
+ get styles() {
600
+ return {
601
+ root: {},
602
+ content: {},
603
+ blockLayer: {
604
+ "zIndex": (this._zIndex - 1),
605
+ },
606
+ };
463
607
  }
464
608
 
465
- get role() {
466
- return "heading";
609
+ get classes() {
610
+ return {
611
+ root: {
612
+ "ui5-popup-root": true,
613
+ },
614
+ content: {
615
+ "ui5-popup-content": true,
616
+ },
617
+ };
467
618
  }
468
619
  }
469
620