@ui5/webcomponents 0.0.0-e818f286e → 0.0.0-ee3bbe46b

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 (1173) hide show
  1. package/.dev-server-port +1 -0
  2. package/CHANGELOG.md +155 -0
  3. package/dist/Avatar.js +50 -16
  4. package/dist/AvatarGroup.js +30 -12
  5. package/dist/Badge.js +8 -7
  6. package/dist/Breadcrumbs.js +10 -10
  7. package/dist/BreadcrumbsItem.js +6 -6
  8. package/dist/BusyIndicator.js +6 -7
  9. package/dist/Button.d.ts +257 -0
  10. package/dist/Button.js +236 -456
  11. package/dist/Button.js.map +1 -0
  12. package/dist/Calendar.d.ts +246 -0
  13. package/dist/Calendar.js +266 -350
  14. package/dist/Calendar.js.map +1 -0
  15. package/dist/CalendarDate.d.ts +28 -0
  16. package/dist/CalendarDate.js +20 -30
  17. package/dist/CalendarDate.js.map +1 -0
  18. package/dist/CalendarHeader.d.ts +87 -0
  19. package/dist/CalendarHeader.js +144 -198
  20. package/dist/CalendarHeader.js.map +1 -0
  21. package/dist/CalendarPart.d.ts +53 -0
  22. package/dist/CalendarPart.js +71 -92
  23. package/dist/CalendarPart.js.map +1 -0
  24. package/dist/Card.js +5 -5
  25. package/dist/CardHeader.js +10 -7
  26. package/dist/Carousel.js +19 -10
  27. package/dist/CheckBox.js +10 -8
  28. package/dist/ColorPalette.js +10 -10
  29. package/dist/ColorPaletteItem.js +7 -7
  30. package/dist/ColorPalettePopover.js +8 -8
  31. package/dist/ColorPicker.d.ts +144 -0
  32. package/dist/ColorPicker.js +373 -556
  33. package/dist/ColorPicker.js.map +1 -0
  34. package/dist/ComboBox.js +13 -12
  35. package/dist/ComboBoxGroupItem.js +6 -6
  36. package/dist/ComboBoxItem.js +4 -4
  37. package/dist/CustomListItem.d.ts +44 -0
  38. package/dist/CustomListItem.js +52 -79
  39. package/dist/CustomListItem.js.map +1 -0
  40. package/dist/DateComponentBase.d.ts +83 -0
  41. package/dist/DateComponentBase.js +101 -143
  42. package/dist/DateComponentBase.js.map +1 -0
  43. package/dist/DatePicker.d.ts +444 -0
  44. package/dist/DatePicker.js +540 -727
  45. package/dist/DatePicker.js.map +1 -0
  46. package/dist/DateRangePicker.js +15 -9
  47. package/dist/DateTimePicker.js +4 -4
  48. package/dist/DayPicker.d.ts +240 -0
  49. package/dist/DayPicker.js +605 -730
  50. package/dist/DayPicker.js.map +1 -0
  51. package/dist/Dialog.js +63 -5
  52. package/dist/DurationPicker.js +5 -5
  53. package/dist/FileUploader.d.ts +235 -0
  54. package/dist/FileUploader.js +306 -487
  55. package/dist/FileUploader.js.map +1 -0
  56. package/dist/GroupHeaderListItem.js +6 -6
  57. package/dist/Icon.d.ts +227 -0
  58. package/dist/Icon.js +179 -303
  59. package/dist/Icon.js.map +1 -0
  60. package/dist/Input.js +100 -79
  61. package/dist/Interfaces.d.ts +161 -0
  62. package/dist/Interfaces.js +45 -85
  63. package/dist/Interfaces.js.map +1 -0
  64. package/dist/Label.d.ts +98 -0
  65. package/dist/Label.js +63 -122
  66. package/dist/Label.js.map +1 -0
  67. package/dist/Link.d.ts +214 -0
  68. package/dist/Link.js +177 -351
  69. package/dist/Link.js.map +1 -0
  70. package/dist/List.d.ts +376 -0
  71. package/dist/List.js +704 -1014
  72. package/dist/List.js.map +1 -0
  73. package/dist/ListItem.d.ts +196 -0
  74. package/dist/ListItem.js +298 -385
  75. package/dist/ListItem.js.map +1 -0
  76. package/dist/ListItemBase.d.ts +62 -0
  77. package/dist/ListItemBase.js +113 -166
  78. package/dist/ListItemBase.js.map +1 -0
  79. package/dist/Menu.js +130 -20
  80. package/dist/MenuItem.js +43 -11
  81. package/dist/MessageStrip.js +8 -9
  82. package/dist/MonthPicker.d.ts +106 -0
  83. package/dist/MonthPicker.js +260 -285
  84. package/dist/MonthPicker.js.map +1 -0
  85. package/dist/MultiComboBox.js +15 -11
  86. package/dist/MultiComboBoxGroupItem.js +6 -6
  87. package/dist/MultiComboBoxItem.js +4 -4
  88. package/dist/MultiInput.js +27 -10
  89. package/dist/Option.js +7 -7
  90. package/dist/Panel.d.ts +238 -0
  91. package/dist/Panel.js +230 -393
  92. package/dist/Panel.js.map +1 -0
  93. package/dist/Popover.js +13 -12
  94. package/dist/Popup.js +40 -19
  95. package/dist/ProgressIndicator.d.ts +121 -0
  96. package/dist/ProgressIndicator.js +121 -207
  97. package/dist/ProgressIndicator.js.map +1 -0
  98. package/dist/RadioButton.js +33 -15
  99. package/dist/RadioButtonGroup.js +1 -1
  100. package/dist/RangeSlider.js +14 -10
  101. package/dist/RatingIndicator.js +7 -7
  102. package/dist/ResponsivePopover.js +12 -4
  103. package/dist/SegmentedButton.js +8 -9
  104. package/dist/SegmentedButtonItem.js +5 -5
  105. package/dist/Select.js +9 -11
  106. package/dist/Slider.js +7 -5
  107. package/dist/SliderBase.js +11 -11
  108. package/dist/SplitButton.d.ts +220 -0
  109. package/dist/SplitButton.js +211 -382
  110. package/dist/SplitButton.js.map +1 -0
  111. package/dist/StandardListItem.d.ts +156 -0
  112. package/dist/StandardListItem.js +79 -174
  113. package/dist/StandardListItem.js.map +1 -0
  114. package/dist/StepInput.js +11 -11
  115. package/dist/SuggestionGroupItem.js +6 -6
  116. package/dist/SuggestionItem.js +9 -9
  117. package/dist/SuggestionListItem.js +4 -3
  118. package/dist/Switch.d.ts +167 -0
  119. package/dist/Switch.js +136 -236
  120. package/dist/Switch.js.map +1 -0
  121. package/dist/Tab.js +61 -18
  122. package/dist/TabContainer.js +219 -164
  123. package/dist/TabSeparator.js +11 -4
  124. package/dist/Table.js +23 -19
  125. package/dist/TableCell.js +14 -6
  126. package/dist/TableColumn.d.ts +101 -0
  127. package/dist/TableColumn.js +53 -99
  128. package/dist/TableColumn.js.map +1 -0
  129. package/dist/TableGroupRow.js +7 -7
  130. package/dist/TableRow.js +52 -18
  131. package/dist/TextArea.js +55 -46
  132. package/dist/TimePicker.js +4 -5
  133. package/dist/TimePickerBase.js +16 -6
  134. package/dist/TimeSelection.js +6 -7
  135. package/dist/Title.d.ts +69 -0
  136. package/dist/Title.js +62 -105
  137. package/dist/Title.js.map +1 -0
  138. package/dist/Toast.js +6 -6
  139. package/dist/ToggleButton.js +3 -4
  140. package/dist/Token.js +24 -7
  141. package/dist/Tokenizer.js +42 -18
  142. package/dist/Tree.js +122 -58
  143. package/dist/TreeItem.js +34 -119
  144. package/dist/TreeItemBase.js +431 -0
  145. package/dist/TreeItemCustom.js +102 -0
  146. package/dist/TreeList.js +43 -0
  147. package/dist/WheelSlider.js +5 -5
  148. package/dist/YearPicker.d.ts +102 -0
  149. package/dist/YearPicker.js +298 -328
  150. package/dist/YearPicker.js.map +1 -0
  151. package/dist/api.json +1 -1
  152. package/dist/assets/HT-1000.59a0ea5a.jpg +0 -0
  153. package/dist/assets/HT-1010.7b05e4f5.jpg +0 -0
  154. package/dist/assets/HT-1022.6fa171f0.jpg +0 -0
  155. package/dist/assets/SAP-icons-business-suite.7cff1fd8.js +1 -0
  156. package/dist/assets/SAP-icons.7f154911.js +1 -0
  157. package/dist/assets/SAP-icons.e76c8241.js +1 -0
  158. package/dist/assets/ar.76457d6b.js +1 -0
  159. package/dist/assets/ar_EG.facab575.js +1 -0
  160. package/dist/assets/ar_SA.037c760a.js +1 -0
  161. package/dist/assets/bg.eb54e36a.js +1 -0
  162. package/dist/assets/ca.1047c043.js +1 -0
  163. package/dist/assets/cs.47109072.js +1 -0
  164. package/dist/assets/da.1562c279.js +1 -0
  165. package/dist/assets/de.3397b9d2.js +1 -0
  166. package/dist/assets/de_AT.fb777626.js +1 -0
  167. package/dist/assets/de_CH.c4011bf2.js +1 -0
  168. package/dist/assets/el.52a181c7.js +1 -0
  169. package/dist/assets/el_CY.065e8a48.js +1 -0
  170. package/dist/assets/en.8b571af2.js +1 -0
  171. package/dist/assets/en_AU.29f5e0e2.js +1 -0
  172. package/dist/assets/en_GB.b0afb274.js +1 -0
  173. package/dist/assets/en_HK.188c8a39.js +1 -0
  174. package/dist/assets/en_IE.b52bdf4f.js +1 -0
  175. package/dist/assets/en_IN.5925f501.js +1 -0
  176. package/dist/assets/en_NZ.adc1b6af.js +1 -0
  177. package/dist/assets/en_PG.2e475ab9.js +1 -0
  178. package/dist/assets/en_SG.400dc7e5.js +1 -0
  179. package/dist/assets/en_ZA.06de0b73.js +1 -0
  180. package/dist/assets/es.d137c08c.js +1 -0
  181. package/dist/assets/es_AR.a719c078.js +1 -0
  182. package/dist/assets/es_BO.ba051d49.js +1 -0
  183. package/dist/assets/es_CL.876855d2.js +1 -0
  184. package/dist/assets/es_CO.51c37c4d.js +1 -0
  185. package/dist/assets/es_MX.c11d012e.js +1 -0
  186. package/dist/assets/es_PE.1a5de4db.js +1 -0
  187. package/dist/assets/es_UY.29036823.js +1 -0
  188. package/dist/assets/es_VE.22e2164a.js +1 -0
  189. package/dist/assets/et.d802827f.js +1 -0
  190. package/dist/assets/fa.59b6aa5f.js +1 -0
  191. package/dist/assets/fi.2cc79303.js +1 -0
  192. package/dist/assets/fr.055c2d0d.js +1 -0
  193. package/dist/assets/fr_BE.79a4448b.js +1 -0
  194. package/dist/assets/fr_CA.0c4a98e4.js +1 -0
  195. package/dist/assets/fr_CH.ba0db8bd.js +1 -0
  196. package/dist/assets/fr_LU.21a6bcea.js +1 -0
  197. package/dist/assets/he.e187c6df.js +1 -0
  198. package/dist/assets/hi.cb35adb1.js +1 -0
  199. package/dist/assets/hr.24bc905c.js +1 -0
  200. package/dist/assets/hu.aadbd74c.js +1 -0
  201. package/dist/assets/id.b9bd26e5.js +1 -0
  202. package/dist/assets/it.36ffae4a.js +1 -0
  203. package/dist/assets/{it.bcf089f4.js → it_CH.7ef1e2bf.js} +1 -1
  204. package/dist/assets/ja.a08af783.js +1 -0
  205. package/dist/assets/kk.5d3dddbe.js +1 -0
  206. package/dist/assets/ko.264fdf35.js +1 -0
  207. package/dist/assets/lt.b967d42b.js +1 -0
  208. package/dist/assets/lv.9c0f8206.js +1 -0
  209. package/dist/assets/messagebundle_ar.243172a0.js +1 -0
  210. package/dist/assets/messagebundle_bg.b6be9a8f.js +1 -0
  211. package/dist/assets/messagebundle_ca.81554b85.js +1 -0
  212. package/dist/assets/messagebundle_cs.887ffd78.js +1 -0
  213. package/dist/assets/messagebundle_cy.4f36e832.js +1 -0
  214. package/dist/assets/messagebundle_da.7126eff9.js +1 -0
  215. package/dist/assets/messagebundle_de.491bc0ba.js +1 -0
  216. package/dist/assets/messagebundle_el.641b2b16.js +1 -0
  217. package/dist/assets/messagebundle_en.edda053c.js +1 -0
  218. package/dist/assets/messagebundle_en_GB.9eb5f8cf.js +1 -0
  219. package/dist/assets/messagebundle_en_US_sappsd.c97ca89f.js +1 -0
  220. package/dist/assets/messagebundle_en_US_saprigi.d0b577b7.js +1 -0
  221. package/dist/assets/messagebundle_en_US_saptrc.7da9b71b.js +1 -0
  222. package/dist/assets/messagebundle_es.43b904e0.js +1 -0
  223. package/dist/assets/messagebundle_es_MX.c3e53ac7.js +1 -0
  224. package/dist/assets/messagebundle_et.64fe6467.js +1 -0
  225. package/dist/assets/messagebundle_fi.1ba77cee.js +1 -0
  226. package/dist/assets/messagebundle_fr.45f120f8.js +1 -0
  227. package/dist/assets/messagebundle_fr_CA.dcda1e70.js +1 -0
  228. package/dist/assets/messagebundle_hi.31540f17.js +1 -0
  229. package/dist/assets/messagebundle_hr.988e29a7.js +1 -0
  230. package/dist/assets/messagebundle_hu.d761b93f.js +1 -0
  231. package/dist/assets/messagebundle_it.a50fb069.js +1 -0
  232. package/dist/assets/messagebundle_iw.53470cd7.js +1 -0
  233. package/dist/assets/messagebundle_ja.b71fa0ff.js +1 -0
  234. package/dist/assets/messagebundle_kk.7d294cd5.js +1 -0
  235. package/dist/assets/messagebundle_ko.eb72ee8f.js +1 -0
  236. package/dist/assets/messagebundle_lt.41fd3bc7.js +1 -0
  237. package/dist/assets/messagebundle_lv.3456c55c.js +1 -0
  238. package/dist/assets/messagebundle_ms.64f8147e.js +1 -0
  239. package/dist/assets/messagebundle_nl.d1605730.js +1 -0
  240. package/dist/assets/messagebundle_no.968da9b7.js +1 -0
  241. package/dist/assets/messagebundle_pl.248f53c6.js +1 -0
  242. package/dist/assets/messagebundle_pt.3efbbd12.js +1 -0
  243. package/dist/assets/messagebundle_pt_PT.02cdeaf2.js +1 -0
  244. package/dist/assets/messagebundle_ro.b4b7732d.js +1 -0
  245. package/dist/assets/messagebundle_ru.ce589132.js +1 -0
  246. package/dist/assets/messagebundle_sh.5787c000.js +1 -0
  247. package/dist/assets/messagebundle_sk.8cb7067a.js +1 -0
  248. package/dist/assets/messagebundle_sl.c23909a7.js +1 -0
  249. package/dist/assets/messagebundle_sv.6c59b918.js +1 -0
  250. package/dist/assets/messagebundle_th.bd390511.js +1 -0
  251. package/dist/assets/messagebundle_tr.d15617a8.js +1 -0
  252. package/dist/assets/messagebundle_uk.f2dddb56.js +1 -0
  253. package/dist/assets/messagebundle_vi.9adb9f15.js +1 -0
  254. package/dist/assets/messagebundle_zh_CN.7c80ff86.js +1 -0
  255. package/dist/assets/messagebundle_zh_TW.cd2b7fea.js +1 -0
  256. package/dist/assets/ms.5a523fbe.js +1 -0
  257. package/dist/assets/nb.6e98bbca.js +1 -0
  258. package/dist/assets/nl.84e9e6df.js +1 -0
  259. package/dist/assets/nl_BE.0f374ea5.js +1 -0
  260. package/dist/assets/parameters-bundle.css.06e5f6af.js +1 -0
  261. package/dist/assets/parameters-bundle.css.1024d408.js +1 -0
  262. package/dist/assets/parameters-bundle.css.128bc009.js +1 -0
  263. package/dist/assets/parameters-bundle.css.12ef5553.js +1 -0
  264. package/dist/assets/parameters-bundle.css.2ca52e42.js +1 -0
  265. package/dist/assets/parameters-bundle.css.2ce25938.js +1 -0
  266. package/dist/assets/parameters-bundle.css.2ff57cb9.js +1 -0
  267. package/dist/assets/parameters-bundle.css.44b2e174.js +1 -0
  268. package/dist/assets/parameters-bundle.css.50f83b44.js +1 -0
  269. package/dist/assets/parameters-bundle.css.76e1994f.js +1 -0
  270. package/dist/assets/parameters-bundle.css.76ee50df.js +1 -0
  271. package/dist/assets/parameters-bundle.css.7e4cc88c.js +1 -0
  272. package/dist/assets/parameters-bundle.css.828caf0e.js +1 -0
  273. package/dist/assets/parameters-bundle.css.89d7ea85.js +1 -0
  274. package/dist/assets/parameters-bundle.css.95b1212b.js +1 -0
  275. package/dist/assets/parameters-bundle.css.9d0c7b1a.js +1 -0
  276. package/dist/assets/parameters-bundle.css.9d7025d0.js +1 -0
  277. package/dist/assets/parameters-bundle.css.a1f2b381.js +1 -0
  278. package/dist/assets/parameters-bundle.css.a9042929.js +1 -0
  279. package/dist/assets/parameters-bundle.css.ad51785f.js +1 -0
  280. package/dist/assets/parameters-bundle.css.c3acfe91.js +1 -0
  281. package/dist/assets/parameters-bundle.css.d587faf5.js +1 -0
  282. package/dist/assets/parameters-bundle.css.fe4c8069.js +1 -0
  283. package/dist/assets/parameters-bundle.css.fe6ed418.js +1 -0
  284. package/dist/assets/pl.c8acba9e.js +1 -0
  285. package/dist/assets/pt.676d5650.js +1 -0
  286. package/dist/assets/pt_PT.0bbc2da6.js +1 -0
  287. package/dist/assets/ro.10993af2.js +1 -0
  288. package/dist/assets/ru.4aba168e.js +1 -0
  289. package/dist/assets/ru_UA.334d6613.js +1 -0
  290. package/dist/assets/sk.3183c85e.js +1 -0
  291. package/dist/assets/sl.edad6042.js +1 -0
  292. package/dist/assets/sr.3e293379.js +1 -0
  293. package/dist/assets/sr_Latn.0f4a03c3.js +1 -0
  294. package/dist/assets/sv.e76e14e4.js +1 -0
  295. package/dist/assets/th.f5491ec1.js +1 -0
  296. package/dist/assets/tr.3b838818.js +1 -0
  297. package/dist/assets/uk.ebbd81a0.js +1 -0
  298. package/dist/assets/vi.87616fa0.js +1 -0
  299. package/dist/assets/zh_CN.de478ef9.js +1 -0
  300. package/dist/assets/zh_HK.834c3161.js +1 -0
  301. package/dist/assets/zh_SG.13241ee3.js +1 -0
  302. package/dist/assets/zh_TW.8f4a16b5.js +1 -0
  303. package/dist/css/themes/Avatar.css +1 -1
  304. package/dist/css/themes/AvatarGroup.css +1 -1
  305. package/dist/css/themes/Breadcrumbs.css +1 -1
  306. package/dist/css/themes/BreadcrumbsPopover.css +1 -1
  307. package/dist/css/themes/BrowserScrollbar.css +1 -1
  308. package/dist/css/themes/BusyIndicator.css +1 -1
  309. package/dist/css/themes/Button.css +1 -1
  310. package/dist/css/themes/CardHeader.css +1 -1
  311. package/dist/css/themes/Carousel.css +1 -1
  312. package/dist/css/themes/ComboBox.css +1 -1
  313. package/dist/css/themes/DatePicker.css +1 -1
  314. package/dist/css/themes/DayPicker.css +1 -1
  315. package/dist/css/themes/Dialog.css +1 -1
  316. package/dist/css/themes/GroupHeaderListItem.css +1 -1
  317. package/dist/css/themes/Icon.css +1 -1
  318. package/dist/css/themes/Input.css +1 -1
  319. package/dist/css/themes/ListItem.css +1 -1
  320. package/dist/css/themes/Menu.css +1 -1
  321. package/dist/css/themes/MonthPicker.css +1 -1
  322. package/dist/css/themes/MultiComboBox.css +1 -1
  323. package/dist/css/themes/Panel.css +1 -1
  324. package/dist/css/themes/RadioButton.css +1 -1
  325. package/dist/css/themes/Select.css +1 -1
  326. package/dist/css/themes/StepInput.css +1 -1
  327. package/dist/css/themes/TabContainer.css +1 -1
  328. package/dist/css/themes/TabInOverflow.css +1 -1
  329. package/dist/css/themes/TabInStrip.css +1 -1
  330. package/dist/css/themes/Table.css +1 -1
  331. package/dist/css/themes/TableCell.css +1 -1
  332. package/dist/css/themes/TableColumn.css +1 -1
  333. package/dist/css/themes/TableRow.css +1 -1
  334. package/dist/css/themes/TextArea.css +1 -1
  335. package/dist/css/themes/TimePicker.css +1 -1
  336. package/dist/css/themes/TreeItem.css +1 -0
  337. package/dist/css/themes/ValueStateMessage.css +1 -1
  338. package/dist/css/themes/YearPicker.css +1 -1
  339. package/dist/css/themes/sap_belize/parameters-bundle.css +1 -1
  340. package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -1
  341. package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -1
  342. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  343. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  344. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  345. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  346. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  347. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  348. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  349. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  350. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  351. package/dist/features/ColorPaletteMoreColors.d.ts +10 -0
  352. package/dist/features/ColorPaletteMoreColors.js +25 -33
  353. package/dist/features/ColorPaletteMoreColors.js.map +1 -0
  354. package/dist/features/InputElementsFormSupport.d.ts +30 -0
  355. package/dist/features/InputElementsFormSupport.js +95 -100
  356. package/dist/features/InputElementsFormSupport.js.map +1 -0
  357. package/dist/features/InputSuggestions.js +22 -8
  358. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  359. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  360. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  361. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  362. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  363. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  364. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  365. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  366. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  367. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  368. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  369. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  370. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  371. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  372. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  373. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  374. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  375. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  376. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  377. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  378. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  379. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  380. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  381. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  382. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  383. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  384. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  385. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  386. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  387. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  388. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  389. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  390. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  391. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  392. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  393. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  394. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  395. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  396. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  397. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  398. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  399. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  400. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  401. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  402. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  403. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  404. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  405. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  406. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  407. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  408. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  409. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  410. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  411. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  412. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  413. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  414. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  415. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  416. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  417. package/dist/generated/i18n/i18n-defaults.js +2 -2
  418. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +1 -1
  419. package/dist/generated/templates/CalendarHeaderTemplate.lit.js +1 -1
  420. package/dist/generated/templates/CardHeaderTemplate.lit.js +1 -1
  421. package/dist/generated/templates/CarouselTemplate.lit.js +1 -1
  422. package/dist/generated/templates/CustomListItemTemplate.lit.js +13 -7
  423. package/dist/generated/templates/DialogTemplate.lit.js +7 -6
  424. package/dist/generated/templates/IconTemplate.lit.js +4 -2
  425. package/dist/generated/templates/InputTemplate.lit.js +2 -2
  426. package/dist/generated/templates/LabelTemplate.lit.js +1 -1
  427. package/dist/generated/templates/LinkTemplate.lit.js +1 -1
  428. package/dist/generated/templates/ListItemTemplate.lit.js +13 -7
  429. package/dist/generated/templates/ListTemplate.lit.js +3 -3
  430. package/dist/generated/templates/MenuTemplate.lit.js +2 -2
  431. package/dist/generated/templates/MonthPickerTemplate.lit.js +1 -1
  432. package/dist/generated/templates/MultiComboBoxTemplate.lit.js +1 -1
  433. package/dist/generated/templates/MultiInputTemplate.lit.js +2 -2
  434. package/dist/generated/templates/PanelTemplate.lit.js +2 -2
  435. package/dist/generated/templates/PopoverTemplate.lit.js +1 -1
  436. package/dist/generated/templates/PopupTemplate.lit.js +1 -1
  437. package/dist/generated/templates/RadioButtonTemplate.lit.js +1 -1
  438. package/dist/generated/templates/RangeSliderTemplate.lit.js +1 -1
  439. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +1 -1
  440. package/dist/generated/templates/SliderTemplate.lit.js +1 -1
  441. package/dist/generated/templates/StandardListItemTemplate.lit.js +23 -15
  442. package/dist/generated/templates/SuggestionListItemTemplate.lit.js +26 -18
  443. package/dist/generated/templates/SwitchTemplate.lit.js +1 -1
  444. package/dist/generated/templates/TabContainerTemplate.lit.js +1 -1
  445. package/dist/generated/templates/TabInOverflowTemplate.lit.js +3 -2
  446. package/dist/generated/templates/TabInStripTemplate.lit.js +9 -8
  447. package/dist/generated/templates/TableGroupRowTemplate.lit.js +1 -1
  448. package/dist/generated/templates/TableRowTemplate.lit.js +6 -3
  449. package/dist/generated/templates/TableTemplate.lit.js +2 -2
  450. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +1 -1
  451. package/dist/generated/templates/TextAreaTemplate.lit.js +2 -2
  452. package/dist/generated/templates/TokenTemplate.lit.js +1 -1
  453. package/dist/generated/templates/TreeItemBaseTemplate.lit.js +26 -0
  454. package/dist/generated/templates/{TreeListItemTemplate.lit.js → TreeItemCustomTemplate.lit.js} +14 -9
  455. package/dist/generated/templates/TreeItemTemplate.lit.js +28 -0
  456. package/dist/generated/templates/TreeTemplate.lit.js +1 -2
  457. package/dist/generated/templates/YearPickerTemplate.lit.js +1 -1
  458. package/dist/generated/themes/Avatar.css.js +1 -1
  459. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  460. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  461. package/dist/generated/themes/BreadcrumbsPopover.css.js +1 -1
  462. package/dist/generated/themes/BrowserScrollbar.css.js +1 -1
  463. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  464. package/dist/generated/themes/Button.css.js +1 -1
  465. package/dist/generated/themes/CardHeader.css.js +1 -1
  466. package/dist/generated/themes/Carousel.css.js +1 -1
  467. package/dist/generated/themes/ComboBox.css.js +1 -1
  468. package/dist/generated/themes/DatePicker.css.js +1 -1
  469. package/dist/generated/themes/DayPicker.css.js +1 -1
  470. package/dist/generated/themes/Dialog.css.js +1 -1
  471. package/dist/generated/themes/GroupHeaderListItem.css.js +1 -1
  472. package/dist/generated/themes/Icon.css.js +1 -1
  473. package/dist/generated/themes/Input.css.js +1 -1
  474. package/dist/generated/themes/ListItem.css.js +1 -1
  475. package/dist/generated/themes/Menu.css.js +1 -1
  476. package/dist/generated/themes/MonthPicker.css.js +1 -1
  477. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  478. package/dist/generated/themes/Panel.css.js +1 -1
  479. package/dist/generated/themes/RadioButton.css.js +1 -1
  480. package/dist/generated/themes/Select.css.js +1 -1
  481. package/dist/generated/themes/StepInput.css.js +1 -1
  482. package/dist/generated/themes/TabContainer.css.js +1 -1
  483. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  484. package/dist/generated/themes/TabInStrip.css.js +1 -1
  485. package/dist/generated/themes/Table.css.js +1 -1
  486. package/dist/generated/themes/TableCell.css.js +1 -1
  487. package/dist/generated/themes/TableColumn.css.js +1 -1
  488. package/dist/generated/themes/TableRow.css.js +1 -1
  489. package/dist/generated/themes/TextArea.css.js +1 -1
  490. package/dist/generated/themes/TimePicker.css.js +1 -1
  491. package/dist/generated/themes/TreeItem.css.js +8 -0
  492. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  493. package/dist/generated/themes/YearPicker.css.js +1 -1
  494. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  495. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  496. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  497. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  498. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  499. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  500. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  501. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  502. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  503. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  504. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  505. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  506. package/dist/i18n/messagebundle.properties +20 -5
  507. package/dist/i18n/messagebundle_ar.properties +13 -3
  508. package/dist/i18n/messagebundle_bg.properties +15 -5
  509. package/dist/i18n/messagebundle_ca.properties +13 -3
  510. package/dist/i18n/messagebundle_cs.properties +13 -3
  511. package/dist/i18n/messagebundle_cy.properties +13 -3
  512. package/dist/i18n/messagebundle_da.properties +13 -3
  513. package/dist/i18n/messagebundle_de.properties +14 -4
  514. package/dist/i18n/messagebundle_el.properties +13 -3
  515. package/dist/i18n/messagebundle_en.properties +13 -3
  516. package/dist/i18n/messagebundle_en_GB.properties +13 -3
  517. package/dist/i18n/messagebundle_en_US_sappsd.properties +14 -4
  518. package/dist/i18n/messagebundle_en_US_saprigi.properties +14 -4
  519. package/dist/i18n/messagebundle_en_US_saptrc.properties +14 -4
  520. package/dist/i18n/messagebundle_es.properties +13 -3
  521. package/dist/i18n/messagebundle_es_MX.properties +13 -3
  522. package/dist/i18n/messagebundle_et.properties +13 -3
  523. package/dist/i18n/messagebundle_fi.properties +13 -3
  524. package/dist/i18n/messagebundle_fr.properties +13 -3
  525. package/dist/i18n/messagebundle_fr_CA.properties +14 -4
  526. package/dist/i18n/messagebundle_hi.properties +13 -3
  527. package/dist/i18n/messagebundle_hr.properties +13 -3
  528. package/dist/i18n/messagebundle_hu.properties +13 -3
  529. package/dist/i18n/messagebundle_id.properties +13 -3
  530. package/dist/i18n/messagebundle_it.properties +13 -3
  531. package/dist/i18n/messagebundle_iw.properties +13 -3
  532. package/dist/i18n/messagebundle_ja.properties +13 -3
  533. package/dist/i18n/messagebundle_kk.properties +13 -3
  534. package/dist/i18n/messagebundle_ko.properties +13 -3
  535. package/dist/i18n/messagebundle_lt.properties +13 -3
  536. package/dist/i18n/messagebundle_lv.properties +13 -3
  537. package/dist/i18n/messagebundle_ms.properties +13 -3
  538. package/dist/i18n/messagebundle_nl.properties +15 -5
  539. package/dist/i18n/messagebundle_no.properties +13 -3
  540. package/dist/i18n/messagebundle_pl.properties +13 -3
  541. package/dist/i18n/messagebundle_pt.properties +13 -3
  542. package/dist/i18n/messagebundle_pt_PT.properties +13 -3
  543. package/dist/i18n/messagebundle_ro.properties +13 -3
  544. package/dist/i18n/messagebundle_ru.properties +13 -3
  545. package/dist/i18n/messagebundle_sh.properties +13 -3
  546. package/dist/i18n/messagebundle_sk.properties +13 -3
  547. package/dist/i18n/messagebundle_sl.properties +13 -3
  548. package/dist/i18n/messagebundle_sv.properties +13 -3
  549. package/dist/i18n/messagebundle_th.properties +13 -3
  550. package/dist/i18n/messagebundle_tr.properties +13 -3
  551. package/dist/i18n/messagebundle_uk.properties +13 -3
  552. package/dist/i18n/messagebundle_vi.properties +13 -3
  553. package/dist/i18n/messagebundle_zh_CN.properties +15 -5
  554. package/dist/i18n/messagebundle_zh_TW.properties +13 -3
  555. package/dist/popup-utils/OpenedPopupsRegistry.js +20 -0
  556. package/dist/popup-utils/PopoverRegistry.js +23 -15
  557. package/dist/types/AvatarColorScheme.d.ts +78 -0
  558. package/dist/types/AvatarColorScheme.js +75 -99
  559. package/dist/types/AvatarColorScheme.js.map +1 -0
  560. package/dist/types/AvatarGroupType.d.ts +26 -0
  561. package/dist/types/AvatarGroupType.js +22 -37
  562. package/dist/types/AvatarGroupType.js.map +1 -0
  563. package/dist/types/AvatarShape.d.ts +24 -0
  564. package/dist/types/AvatarShape.js +20 -35
  565. package/dist/types/AvatarShape.js.map +1 -0
  566. package/dist/types/AvatarSize.d.ts +47 -0
  567. package/dist/types/AvatarSize.js +43 -61
  568. package/dist/types/AvatarSize.js.map +1 -0
  569. package/dist/types/BreadcrumbsDesign.d.ts +26 -0
  570. package/dist/types/BreadcrumbsDesign.js +23 -37
  571. package/dist/types/BreadcrumbsDesign.js.map +1 -0
  572. package/dist/types/BreadcrumbsSeparatorStyle.d.ts +48 -0
  573. package/dist/types/BreadcrumbsSeparatorStyle.js +45 -64
  574. package/dist/types/BreadcrumbsSeparatorStyle.js.map +1 -0
  575. package/dist/types/BusyIndicatorSize.d.ts +30 -0
  576. package/dist/types/BusyIndicatorSize.js +27 -42
  577. package/dist/types/BusyIndicatorSize.js.map +1 -0
  578. package/dist/types/ButtonDesign.d.ts +48 -0
  579. package/dist/types/ButtonDesign.js +45 -63
  580. package/dist/types/ButtonDesign.js.map +1 -0
  581. package/dist/types/CalendarSelectionMode.d.ts +30 -0
  582. package/dist/types/CalendarSelectionMode.js +27 -42
  583. package/dist/types/CalendarSelectionMode.js.map +1 -0
  584. package/dist/types/CarouselArrowsPlacement.d.ts +24 -0
  585. package/dist/types/CarouselArrowsPlacement.js +21 -35
  586. package/dist/types/CarouselArrowsPlacement.js.map +1 -0
  587. package/dist/types/HasPopup.d.ts +42 -0
  588. package/dist/types/HasPopup.js +38 -56
  589. package/dist/types/HasPopup.js.map +1 -0
  590. package/dist/types/InputType.d.ts +48 -0
  591. package/dist/types/InputType.js +45 -63
  592. package/dist/types/InputType.js.map +1 -0
  593. package/dist/types/LinkDesign.d.ts +30 -0
  594. package/dist/types/LinkDesign.js +27 -42
  595. package/dist/types/LinkDesign.js.map +1 -0
  596. package/dist/types/ListGrowingMode.d.ts +31 -0
  597. package/dist/types/ListGrowingMode.js +28 -43
  598. package/dist/types/ListGrowingMode.js.map +1 -0
  599. package/dist/types/ListItemType.d.ts +36 -0
  600. package/dist/types/ListItemType.js +33 -42
  601. package/dist/types/ListItemType.js.map +1 -0
  602. package/dist/types/ListMode.d.ts +56 -0
  603. package/dist/types/ListMode.js +53 -72
  604. package/dist/types/ListMode.js.map +1 -0
  605. package/dist/types/ListSeparators.d.ts +31 -0
  606. package/dist/types/ListSeparators.js +28 -41
  607. package/dist/types/ListSeparators.js.map +1 -0
  608. package/dist/types/MessageStripDesign.d.ts +36 -0
  609. package/dist/types/MessageStripDesign.js +33 -49
  610. package/dist/types/MessageStripDesign.js.map +1 -0
  611. package/dist/types/PanelAccessibleRole.d.ts +33 -0
  612. package/dist/types/PanelAccessibleRole.js +30 -43
  613. package/dist/types/PanelAccessibleRole.js.map +1 -0
  614. package/dist/types/PopoverHorizontalAlign.d.ts +36 -0
  615. package/dist/types/PopoverHorizontalAlign.js +33 -49
  616. package/dist/types/PopoverHorizontalAlign.js.map +1 -0
  617. package/dist/types/PopoverPlacementType.d.ts +36 -0
  618. package/dist/types/PopoverPlacementType.js +33 -49
  619. package/dist/types/PopoverPlacementType.js.map +1 -0
  620. package/dist/types/PopoverVerticalAlign.d.ts +36 -0
  621. package/dist/types/PopoverVerticalAlign.js +33 -49
  622. package/dist/types/PopoverVerticalAlign.js.map +1 -0
  623. package/dist/types/Priority.d.ts +36 -0
  624. package/dist/types/Priority.js +32 -49
  625. package/dist/types/Priority.js.map +1 -0
  626. package/dist/types/SemanticColor.d.ts +42 -0
  627. package/dist/types/SemanticColor.js +39 -56
  628. package/dist/types/SemanticColor.js.map +1 -0
  629. package/dist/types/SwitchDesign.d.ts +24 -0
  630. package/dist/types/SwitchDesign.js +21 -35
  631. package/dist/types/SwitchDesign.js.map +1 -0
  632. package/dist/types/TabContainerBackgroundDesign.d.ts +30 -0
  633. package/dist/types/TabContainerBackgroundDesign.js +32 -0
  634. package/dist/types/TabContainerBackgroundDesign.js.map +1 -0
  635. package/dist/types/TabContainerTabsPlacement.d.ts +24 -0
  636. package/dist/types/TabContainerTabsPlacement.js +21 -35
  637. package/dist/types/TabContainerTabsPlacement.js.map +1 -0
  638. package/dist/types/TabLayout.d.ts +24 -0
  639. package/dist/types/TabLayout.js +21 -35
  640. package/dist/types/TabLayout.js.map +1 -0
  641. package/dist/types/TableColumnPopinDisplay.d.ts +24 -0
  642. package/dist/types/TableColumnPopinDisplay.js +26 -0
  643. package/dist/types/TableColumnPopinDisplay.js.map +1 -0
  644. package/dist/types/TableGrowingMode.d.ts +31 -0
  645. package/dist/types/TableGrowingMode.js +28 -43
  646. package/dist/types/TableGrowingMode.js.map +1 -0
  647. package/dist/types/TableMode.d.ts +30 -0
  648. package/dist/types/TableMode.js +27 -42
  649. package/dist/types/TableMode.js.map +1 -0
  650. package/dist/types/TableRowType.d.ts +24 -0
  651. package/dist/types/TableRowType.js +21 -35
  652. package/dist/types/TableRowType.js.map +1 -0
  653. package/dist/types/TabsOverflowMode.d.ts +24 -0
  654. package/dist/types/TabsOverflowMode.js +21 -35
  655. package/dist/types/TabsOverflowMode.js.map +1 -0
  656. package/dist/types/TitleLevel.d.ts +48 -0
  657. package/dist/types/TitleLevel.js +45 -63
  658. package/dist/types/TitleLevel.js.map +1 -0
  659. package/dist/types/ToastPlacement.d.ts +67 -0
  660. package/dist/types/ToastPlacement.js +64 -86
  661. package/dist/types/ToastPlacement.js.map +1 -0
  662. package/dist/types/WrappingType.d.ts +24 -0
  663. package/dist/types/WrappingType.js +20 -35
  664. package/dist/types/WrappingType.js.map +1 -0
  665. package/global.d.ts +12 -0
  666. package/package-scripts.js +1 -0
  667. package/package.json +8 -7
  668. package/src/Avatar.js +50 -16
  669. package/src/AvatarGroup.js +30 -12
  670. package/src/Badge.js +8 -7
  671. package/src/Breadcrumbs.hbs +1 -1
  672. package/src/Breadcrumbs.js +10 -10
  673. package/src/BreadcrumbsItem.js +6 -6
  674. package/src/BusyIndicator.js +6 -7
  675. package/src/Button.ts +503 -0
  676. package/src/{Calendar.js → Calendar.ts} +144 -141
  677. package/src/CalendarDate.ts +36 -0
  678. package/src/CalendarHeader.hbs +4 -0
  679. package/src/CalendarHeader.ts +218 -0
  680. package/src/{CalendarPart.js → CalendarPart.ts} +15 -26
  681. package/src/Card.js +5 -5
  682. package/src/CardHeader.hbs +1 -0
  683. package/src/CardHeader.js +10 -7
  684. package/src/Carousel.hbs +1 -1
  685. package/src/Carousel.js +19 -10
  686. package/src/CheckBox.js +10 -8
  687. package/src/ColorPalette.js +10 -10
  688. package/src/ColorPaletteItem.js +7 -7
  689. package/src/ColorPalettePopover.js +8 -8
  690. package/src/ColorPicker.ts +538 -0
  691. package/src/ComboBox.js +13 -12
  692. package/src/ComboBoxGroupItem.js +6 -6
  693. package/src/ComboBoxItem.js +4 -4
  694. package/src/CustomListItem.ts +89 -0
  695. package/src/DateComponentBase.ts +174 -0
  696. package/src/{DatePicker.js → DatePicker.ts} +350 -320
  697. package/src/DateRangePicker.js +15 -9
  698. package/src/DateTimePicker.js +4 -4
  699. package/src/{DayPicker.js → DayPicker.ts} +267 -216
  700. package/src/Dialog.hbs +5 -1
  701. package/src/Dialog.js +63 -5
  702. package/src/DurationPicker.js +5 -5
  703. package/src/FileUploader.ts +527 -0
  704. package/src/GroupHeaderListItem.js +6 -6
  705. package/src/Icon.hbs +9 -3
  706. package/src/{Icon.js → Icon.ts} +184 -182
  707. package/src/Input.hbs +4 -2
  708. package/src/Input.js +100 -79
  709. package/src/{Interfaces.js → Interfaces.ts} +40 -40
  710. package/src/Label.hbs +0 -1
  711. package/src/Label.ts +143 -0
  712. package/src/Link.hbs +1 -1
  713. package/src/Link.ts +396 -0
  714. package/src/List.hbs +12 -3
  715. package/src/List.ts +1131 -0
  716. package/src/ListItem.hbs +21 -2
  717. package/src/ListItem.ts +492 -0
  718. package/src/ListItemBase.ts +169 -0
  719. package/src/Menu.hbs +7 -2
  720. package/src/Menu.js +130 -20
  721. package/src/MenuItem.js +43 -11
  722. package/src/MessageStrip.js +8 -9
  723. package/src/MonthPicker.hbs +1 -0
  724. package/src/{MonthPicker.js → MonthPicker.ts} +142 -104
  725. package/src/MultiComboBox.hbs +1 -0
  726. package/src/MultiComboBox.js +15 -11
  727. package/src/MultiComboBoxGroupItem.js +6 -6
  728. package/src/MultiComboBoxItem.js +4 -4
  729. package/src/MultiInput.js +27 -10
  730. package/src/Option.js +7 -7
  731. package/src/Panel.hbs +51 -47
  732. package/src/{Panel.js → Panel.ts} +190 -218
  733. package/src/Popover.js +13 -12
  734. package/src/Popup.hbs +1 -1
  735. package/src/Popup.js +40 -19
  736. package/src/{ProgressIndicator.js → ProgressIndicator.ts} +91 -95
  737. package/src/RadioButton.hbs +3 -3
  738. package/src/RadioButton.js +33 -15
  739. package/src/RadioButtonGroup.js +1 -1
  740. package/src/RangeSlider.hbs +2 -2
  741. package/src/RangeSlider.js +14 -10
  742. package/src/RatingIndicator.js +7 -7
  743. package/src/ResponsivePopover.js +12 -4
  744. package/src/SegmentedButton.js +8 -9
  745. package/src/SegmentedButtonItem.js +5 -5
  746. package/src/Select.js +9 -11
  747. package/src/Slider.hbs +1 -1
  748. package/src/Slider.js +7 -5
  749. package/src/SliderBase.js +11 -11
  750. package/src/{SplitButton.js → SplitButton.ts} +217 -235
  751. package/src/StandardListItem.hbs +10 -4
  752. package/src/StandardListItem.ts +217 -0
  753. package/src/StepInput.js +11 -11
  754. package/src/SuggestionGroupItem.js +6 -6
  755. package/src/SuggestionItem.js +9 -9
  756. package/src/SuggestionListItem.js +4 -3
  757. package/src/Switch.hbs +3 -2
  758. package/src/Switch.ts +299 -0
  759. package/src/Tab.js +61 -18
  760. package/src/TabContainer.hbs +5 -1
  761. package/src/TabContainer.js +219 -164
  762. package/src/TabInOverflow.hbs +6 -4
  763. package/src/TabInStrip.hbs +10 -3
  764. package/src/TabSeparator.js +11 -4
  765. package/src/Table.hbs +2 -2
  766. package/src/Table.js +23 -19
  767. package/src/TableCell.js +14 -6
  768. package/src/TableColumn.ts +135 -0
  769. package/src/TableGroupRow.hbs +0 -1
  770. package/src/TableGroupRow.js +7 -7
  771. package/src/TableRow.hbs +33 -10
  772. package/src/TableRow.js +52 -18
  773. package/src/TextArea.hbs +30 -29
  774. package/src/TextArea.js +55 -46
  775. package/src/TextAreaPopover.hbs +1 -1
  776. package/src/TimePicker.js +4 -5
  777. package/src/TimePickerBase.js +16 -6
  778. package/src/TimeSelection.js +6 -7
  779. package/src/Title.ts +117 -0
  780. package/src/Toast.js +6 -6
  781. package/src/ToggleButton.js +3 -4
  782. package/src/Token.hbs +1 -0
  783. package/src/Token.js +24 -7
  784. package/src/Tokenizer.js +42 -18
  785. package/src/Tree.hbs +10 -32
  786. package/src/Tree.js +122 -58
  787. package/src/TreeItem.hbs +13 -0
  788. package/src/TreeItem.js +34 -119
  789. package/src/{TreeListItem.hbs → TreeItemBase.hbs} +17 -10
  790. package/src/TreeItemBase.js +431 -0
  791. package/src/TreeItemCustom.hbs +7 -0
  792. package/src/TreeItemCustom.js +102 -0
  793. package/src/TreeList.js +43 -0
  794. package/src/WheelSlider.js +5 -5
  795. package/src/YearPicker.hbs +1 -0
  796. package/src/{YearPicker.js → YearPicker.ts} +141 -101
  797. package/src/features/{ColorPaletteMoreColors.js → ColorPaletteMoreColors.ts} +10 -3
  798. package/src/features/{InputElementsFormSupport.js → InputElementsFormSupport.ts} +49 -17
  799. package/src/features/InputSuggestions.js +22 -8
  800. package/src/i18n/messagebundle.properties +20 -5
  801. package/src/i18n/messagebundle_ar.properties +13 -3
  802. package/src/i18n/messagebundle_bg.properties +15 -5
  803. package/src/i18n/messagebundle_ca.properties +13 -3
  804. package/src/i18n/messagebundle_cs.properties +13 -3
  805. package/src/i18n/messagebundle_cy.properties +13 -3
  806. package/src/i18n/messagebundle_da.properties +13 -3
  807. package/src/i18n/messagebundle_de.properties +14 -4
  808. package/src/i18n/messagebundle_el.properties +13 -3
  809. package/src/i18n/messagebundle_en.properties +13 -3
  810. package/src/i18n/messagebundle_en_GB.properties +13 -3
  811. package/src/i18n/messagebundle_en_US_sappsd.properties +14 -4
  812. package/src/i18n/messagebundle_en_US_saprigi.properties +14 -4
  813. package/src/i18n/messagebundle_en_US_saptrc.properties +14 -4
  814. package/src/i18n/messagebundle_es.properties +13 -3
  815. package/src/i18n/messagebundle_es_MX.properties +13 -3
  816. package/src/i18n/messagebundle_et.properties +13 -3
  817. package/src/i18n/messagebundle_fi.properties +13 -3
  818. package/src/i18n/messagebundle_fr.properties +13 -3
  819. package/src/i18n/messagebundle_fr_CA.properties +14 -4
  820. package/src/i18n/messagebundle_hi.properties +13 -3
  821. package/src/i18n/messagebundle_hr.properties +13 -3
  822. package/src/i18n/messagebundle_hu.properties +13 -3
  823. package/src/i18n/messagebundle_id.properties +13 -3
  824. package/src/i18n/messagebundle_it.properties +13 -3
  825. package/src/i18n/messagebundle_iw.properties +13 -3
  826. package/src/i18n/messagebundle_ja.properties +13 -3
  827. package/src/i18n/messagebundle_kk.properties +13 -3
  828. package/src/i18n/messagebundle_ko.properties +13 -3
  829. package/src/i18n/messagebundle_lt.properties +13 -3
  830. package/src/i18n/messagebundle_lv.properties +13 -3
  831. package/src/i18n/messagebundle_ms.properties +13 -3
  832. package/src/i18n/messagebundle_nl.properties +15 -5
  833. package/src/i18n/messagebundle_no.properties +13 -3
  834. package/src/i18n/messagebundle_pl.properties +13 -3
  835. package/src/i18n/messagebundle_pt.properties +13 -3
  836. package/src/i18n/messagebundle_pt_PT.properties +13 -3
  837. package/src/i18n/messagebundle_ro.properties +13 -3
  838. package/src/i18n/messagebundle_ru.properties +13 -3
  839. package/src/i18n/messagebundle_sh.properties +13 -3
  840. package/src/i18n/messagebundle_sk.properties +13 -3
  841. package/src/i18n/messagebundle_sl.properties +13 -3
  842. package/src/i18n/messagebundle_sv.properties +13 -3
  843. package/src/i18n/messagebundle_th.properties +13 -3
  844. package/src/i18n/messagebundle_tr.properties +13 -3
  845. package/src/i18n/messagebundle_uk.properties +13 -3
  846. package/src/i18n/messagebundle_vi.properties +13 -3
  847. package/src/i18n/messagebundle_zh_CN.properties +15 -5
  848. package/src/i18n/messagebundle_zh_TW.properties +13 -3
  849. package/src/popup-utils/OpenedPopupsRegistry.js +20 -0
  850. package/src/popup-utils/PopoverRegistry.js +23 -15
  851. package/src/themes/Avatar.css +5 -2
  852. package/src/themes/AvatarGroup.css +1 -0
  853. package/src/themes/Badge.css +2 -2
  854. package/src/themes/Breadcrumbs.css +3 -0
  855. package/src/themes/BreadcrumbsPopover.css +1 -0
  856. package/src/themes/BrowserScrollbar.css +6 -6
  857. package/src/themes/BusyIndicator.css +1 -1
  858. package/src/themes/Button.css +19 -13
  859. package/src/themes/CardHeader.css +19 -2
  860. package/src/themes/Carousel.css +4 -4
  861. package/src/themes/DatePicker.css +19 -1
  862. package/src/themes/DayPicker.css +4 -4
  863. package/src/themes/Dialog.css +41 -2
  864. package/src/themes/GroupHeaderListItem.css +1 -0
  865. package/src/themes/Icon.css +7 -0
  866. package/src/themes/Input.css +46 -18
  867. package/src/themes/ListItem.css +20 -2
  868. package/src/themes/Menu.css +26 -2
  869. package/src/themes/MonthPicker.css +1 -1
  870. package/src/themes/Panel.css +12 -4
  871. package/src/themes/RadioButton.css +6 -6
  872. package/src/themes/StepInput.css +9 -0
  873. package/src/themes/TabContainer.css +19 -3
  874. package/src/themes/TabInOverflow.css +1 -0
  875. package/src/themes/TabInStrip.css +12 -11
  876. package/src/themes/Table.css +10 -0
  877. package/src/themes/TableCell.css +4 -0
  878. package/src/themes/TableColumn.css +1 -1
  879. package/src/themes/TableRow.css +34 -4
  880. package/src/themes/TextArea.css +244 -148
  881. package/src/themes/TimePicker.css +12 -0
  882. package/src/themes/{TreeListItem.css → TreeItem.css} +49 -2
  883. package/src/themes/ValueStateMessage.css +1 -0
  884. package/src/themes/YearPicker.css +1 -1
  885. package/src/themes/base/Avatar-parameters.css +1 -0
  886. package/src/themes/base/DayPicker-parameters.css +3 -0
  887. package/src/themes/base/Dialog-parameters.css +8 -0
  888. package/src/themes/base/Input-parameters.css +11 -1
  889. package/src/themes/base/Menu-parameters.css +2 -0
  890. package/src/themes/base/Panel-parameters.css +1 -0
  891. package/src/themes/base/TabContainer-parameters.css +4 -0
  892. package/src/themes/base/Table-parameters.css +1 -0
  893. package/src/themes/base/TextArea-parameters.css +35 -17
  894. package/src/themes/base/ValueStateMessage-parameters.css +2 -1
  895. package/src/themes/base/sizes-parameters.css +10 -3
  896. package/src/themes/sap_belize/DayPicker-parameters.css +1 -1
  897. package/src/themes/sap_belize/TabContainer-parameters.css +4 -0
  898. package/src/themes/sap_belize/TextArea-parameters.css +15 -0
  899. package/src/themes/sap_belize/parameters-bundle.css +2 -2
  900. package/src/themes/sap_belize/sizes-parameters.css +2 -0
  901. package/src/themes/sap_belize_hcb/Button-parameters.css +1 -0
  902. package/src/themes/sap_belize_hcb/DayPicker-parameters.css +7 -0
  903. package/src/themes/sap_belize_hcb/TextArea-parameters.css +22 -4
  904. package/src/themes/sap_belize_hcw/Button-parameters.css +1 -0
  905. package/src/themes/sap_belize_hcw/DayPicker-parameters.css +7 -0
  906. package/src/themes/sap_belize_hcw/TextArea-parameters.css +22 -4
  907. package/src/themes/sap_fiori_3_hcb/Button-parameters.css +1 -0
  908. package/src/themes/sap_fiori_3_hcb/Dialog-parameters.css +8 -0
  909. package/src/themes/sap_fiori_3_hcb/TextArea-parameters.css +18 -8
  910. package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  911. package/src/themes/sap_fiori_3_hcw/Button-parameters.css +1 -0
  912. package/src/themes/sap_fiori_3_hcw/Dialog-parameters.css +8 -0
  913. package/src/themes/sap_fiori_3_hcw/TextArea-parameters.css +18 -8
  914. package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  915. package/src/themes/sap_horizon/CheckBox-parameters.css +1 -0
  916. package/src/themes/sap_horizon/Input-parameters.css +3 -0
  917. package/src/themes/sap_horizon/Panel-parameters.css +1 -0
  918. package/src/themes/sap_horizon/Table-parameters.css +0 -1
  919. package/src/themes/sap_horizon/TextArea-parameters.css +31 -12
  920. package/src/themes/sap_horizon/ValueStateMessage-parameters.css +1 -0
  921. package/src/themes/sap_horizon/parameters-bundle.css +1 -1
  922. package/src/themes/sap_horizon/sizes-parameters.css +4 -0
  923. package/src/themes/sap_horizon_dark/Input-parameters.css +3 -0
  924. package/src/themes/sap_horizon_dark/ListItemBase-parameters.css +0 -1
  925. package/src/themes/sap_horizon_dark/Panel-parameters.css +1 -0
  926. package/src/themes/sap_horizon_dark/Table-parameters.css +0 -1
  927. package/src/themes/sap_horizon_dark/TextArea-parameters.css +31 -12
  928. package/src/themes/sap_horizon_dark/ValueStateMessage-parameters.css +1 -0
  929. package/src/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  930. package/src/themes/sap_horizon_dark/sizes-parameters.css +6 -0
  931. package/src/themes/sap_horizon_hcb/Dialog-parameters.css +4 -0
  932. package/src/themes/sap_horizon_hcb/Input-parameters.css +1 -0
  933. package/src/themes/sap_horizon_hcb/TextArea-parameters.css +24 -10
  934. package/src/themes/sap_horizon_hcw/Dialog-parameters.css +4 -0
  935. package/src/themes/sap_horizon_hcw/Input-parameters.css +1 -0
  936. package/src/themes/sap_horizon_hcw/TextArea-parameters.css +25 -11
  937. package/src/types/AvatarColorScheme.ts +89 -0
  938. package/src/types/AvatarGroupType.ts +28 -0
  939. package/src/types/AvatarShape.ts +26 -0
  940. package/src/types/AvatarSize.ts +52 -0
  941. package/src/types/BreadcrumbsDesign.ts +28 -0
  942. package/src/types/BreadcrumbsSeparatorStyle.ts +55 -0
  943. package/src/types/BusyIndicatorSize.ts +33 -0
  944. package/src/types/ButtonDesign.ts +54 -0
  945. package/src/types/CalendarSelectionMode.ts +33 -0
  946. package/src/types/CarouselArrowsPlacement.ts +26 -0
  947. package/src/types/HasPopup.ts +47 -0
  948. package/src/types/{InputType.js → InputType.ts} +13 -27
  949. package/src/types/LinkDesign.ts +33 -0
  950. package/src/types/ListGrowingMode.ts +34 -0
  951. package/src/types/ListItemType.ts +40 -0
  952. package/src/types/{ListMode.js → ListMode.ts} +14 -28
  953. package/src/types/ListSeparators.ts +32 -0
  954. package/src/types/MessageStripDesign.ts +40 -0
  955. package/src/types/PanelAccessibleRole.ts +37 -0
  956. package/src/types/PopoverHorizontalAlign.ts +40 -0
  957. package/src/types/PopoverPlacementType.ts +40 -0
  958. package/src/types/PopoverVerticalAlign.ts +40 -0
  959. package/src/types/Priority.ts +40 -0
  960. package/src/types/SemanticColor.ts +47 -0
  961. package/src/types/SwitchDesign.ts +26 -0
  962. package/src/types/TabContainerBackgroundDesign.ts +33 -0
  963. package/src/types/TabContainerTabsPlacement.ts +26 -0
  964. package/src/types/TabLayout.ts +26 -0
  965. package/src/types/TableColumnPopinDisplay.ts +26 -0
  966. package/src/types/TableGrowingMode.ts +34 -0
  967. package/src/types/TableMode.ts +33 -0
  968. package/src/types/TableRowType.ts +26 -0
  969. package/src/types/TabsOverflowMode.ts +26 -0
  970. package/src/types/{TitleLevel.js → TitleLevel.ts} +13 -27
  971. package/src/types/ToastPlacement.ts +77 -0
  972. package/src/types/WrappingType.ts +26 -0
  973. package/tsconfig.json +14 -0
  974. package/dist/TreeListItem.js +0 -342
  975. package/dist/assets/SAP-icons-business-suite.60260cdf.js +0 -1
  976. package/dist/assets/SAP-icons.09567bd9.js +0 -1
  977. package/dist/assets/SAP-icons.1f482d05.js +0 -1
  978. package/dist/assets/ar.7fd1011b.js +0 -1
  979. package/dist/assets/ar_EG.4dd5f305.js +0 -1
  980. package/dist/assets/ar_SA.8c5a937a.js +0 -1
  981. package/dist/assets/bg.a4d82c03.js +0 -1
  982. package/dist/assets/ca.0021f734.js +0 -1
  983. package/dist/assets/cs.0e585b65.js +0 -1
  984. package/dist/assets/da.521611de.js +0 -1
  985. package/dist/assets/de.63fdffdf.js +0 -1
  986. package/dist/assets/de_AT.ea95f993.js +0 -1
  987. package/dist/assets/de_CH.90d5e701.js +0 -1
  988. package/dist/assets/el.3e1beb01.js +0 -1
  989. package/dist/assets/el_CY.209073e0.js +0 -1
  990. package/dist/assets/en.1af5f31c.js +0 -1
  991. package/dist/assets/en_AU.25e8cf38.js +0 -1
  992. package/dist/assets/en_GB.43297e37.js +0 -1
  993. package/dist/assets/en_HK.0da1e0b5.js +0 -1
  994. package/dist/assets/en_IE.c4988873.js +0 -1
  995. package/dist/assets/en_IN.96d721e2.js +0 -1
  996. package/dist/assets/en_NZ.1091e526.js +0 -1
  997. package/dist/assets/en_PG.f028e345.js +0 -1
  998. package/dist/assets/en_SG.8d370bdb.js +0 -1
  999. package/dist/assets/en_ZA.0cbf9d6e.js +0 -1
  1000. package/dist/assets/es.37dda275.js +0 -1
  1001. package/dist/assets/es_AR.da796f99.js +0 -1
  1002. package/dist/assets/es_BO.2b15333c.js +0 -1
  1003. package/dist/assets/es_CL.048ca1f2.js +0 -1
  1004. package/dist/assets/es_CO.257ed3d6.js +0 -1
  1005. package/dist/assets/es_MX.061e6bbb.js +0 -1
  1006. package/dist/assets/es_PE.f7c17b7a.js +0 -1
  1007. package/dist/assets/es_UY.73781c0c.js +0 -1
  1008. package/dist/assets/es_VE.fe0f3310.js +0 -1
  1009. package/dist/assets/et.fbe81c9d.js +0 -1
  1010. package/dist/assets/fa.acfcfa4d.js +0 -1
  1011. package/dist/assets/fi.0379b5fc.js +0 -1
  1012. package/dist/assets/fr.f6c58c06.js +0 -1
  1013. package/dist/assets/fr_BE.c6e52c3f.js +0 -1
  1014. package/dist/assets/fr_CA.e3c92112.js +0 -1
  1015. package/dist/assets/fr_CH.fc89bdfc.js +0 -1
  1016. package/dist/assets/fr_LU.4fffec47.js +0 -1
  1017. package/dist/assets/he.ca2cb3e0.js +0 -1
  1018. package/dist/assets/hi.82a0ad5b.js +0 -1
  1019. package/dist/assets/hr.ab15877f.js +0 -1
  1020. package/dist/assets/hu.c3d72d24.js +0 -1
  1021. package/dist/assets/id.163ccc8d.js +0 -1
  1022. package/dist/assets/it_CH.69227571.js +0 -1
  1023. package/dist/assets/ja.18f39a5b.js +0 -1
  1024. package/dist/assets/kk.a697e741.js +0 -1
  1025. package/dist/assets/ko.ebe1e5db.js +0 -1
  1026. package/dist/assets/lt.775927de.js +0 -1
  1027. package/dist/assets/lv.d7e9d5e6.js +0 -1
  1028. package/dist/assets/messagebundle_ar.f3e988df.js +0 -1
  1029. package/dist/assets/messagebundle_bg.a3f6fdd8.js +0 -1
  1030. package/dist/assets/messagebundle_ca.5e72bf09.js +0 -1
  1031. package/dist/assets/messagebundle_cs.5720e069.js +0 -1
  1032. package/dist/assets/messagebundle_cy.51ed6118.js +0 -1
  1033. package/dist/assets/messagebundle_da.d83f1df6.js +0 -1
  1034. package/dist/assets/messagebundle_de.4d53d415.js +0 -1
  1035. package/dist/assets/messagebundle_el.54337d1a.js +0 -1
  1036. package/dist/assets/messagebundle_en.46c4c8b4.js +0 -1
  1037. package/dist/assets/messagebundle_en_GB.d9037cba.js +0 -1
  1038. package/dist/assets/messagebundle_en_US_sappsd.2f342e46.js +0 -1
  1039. package/dist/assets/messagebundle_en_US_saprigi.58918baa.js +0 -1
  1040. package/dist/assets/messagebundle_en_US_saptrc.a358bbc3.js +0 -1
  1041. package/dist/assets/messagebundle_es.6edd9aac.js +0 -1
  1042. package/dist/assets/messagebundle_es_MX.b9a235b1.js +0 -1
  1043. package/dist/assets/messagebundle_et.2f95fbc0.js +0 -1
  1044. package/dist/assets/messagebundle_fi.e408238f.js +0 -1
  1045. package/dist/assets/messagebundle_fr.023ec658.js +0 -1
  1046. package/dist/assets/messagebundle_fr_CA.700b3003.js +0 -1
  1047. package/dist/assets/messagebundle_hi.e54398ec.js +0 -1
  1048. package/dist/assets/messagebundle_hr.87a5cf12.js +0 -1
  1049. package/dist/assets/messagebundle_hu.11f04021.js +0 -1
  1050. package/dist/assets/messagebundle_it.aa33f57d.js +0 -1
  1051. package/dist/assets/messagebundle_iw.876a2de2.js +0 -1
  1052. package/dist/assets/messagebundle_ja.8e38b3b9.js +0 -1
  1053. package/dist/assets/messagebundle_kk.16201d64.js +0 -1
  1054. package/dist/assets/messagebundle_ko.efd3d190.js +0 -1
  1055. package/dist/assets/messagebundle_lt.8df3235f.js +0 -1
  1056. package/dist/assets/messagebundle_lv.1485b0dd.js +0 -1
  1057. package/dist/assets/messagebundle_ms.2801cf14.js +0 -1
  1058. package/dist/assets/messagebundle_nl.fbaa57e5.js +0 -1
  1059. package/dist/assets/messagebundle_no.aed62d2d.js +0 -1
  1060. package/dist/assets/messagebundle_pl.ec09771e.js +0 -1
  1061. package/dist/assets/messagebundle_pt.2ba5f988.js +0 -1
  1062. package/dist/assets/messagebundle_pt_PT.f26a67f1.js +0 -1
  1063. package/dist/assets/messagebundle_ro.71197951.js +0 -1
  1064. package/dist/assets/messagebundle_ru.0bc1939f.js +0 -1
  1065. package/dist/assets/messagebundle_sh.097c2c2b.js +0 -1
  1066. package/dist/assets/messagebundle_sk.79a87686.js +0 -1
  1067. package/dist/assets/messagebundle_sl.9d602bfb.js +0 -1
  1068. package/dist/assets/messagebundle_sv.efb6e0ef.js +0 -1
  1069. package/dist/assets/messagebundle_th.94c0d1ab.js +0 -1
  1070. package/dist/assets/messagebundle_tr.b3a571be.js +0 -1
  1071. package/dist/assets/messagebundle_uk.8d0551a9.js +0 -1
  1072. package/dist/assets/messagebundle_vi.6819ccf0.js +0 -1
  1073. package/dist/assets/messagebundle_zh_CN.0c604a5d.js +0 -1
  1074. package/dist/assets/messagebundle_zh_TW.4659173f.js +0 -1
  1075. package/dist/assets/ms.d6569411.js +0 -1
  1076. package/dist/assets/nb.e08266d5.js +0 -1
  1077. package/dist/assets/nl.9999541e.js +0 -1
  1078. package/dist/assets/nl_BE.10b9e463.js +0 -1
  1079. package/dist/assets/parameters-bundle.css.15bec13d.js +0 -1
  1080. package/dist/assets/parameters-bundle.css.16d388d6.js +0 -1
  1081. package/dist/assets/parameters-bundle.css.278628a2.js +0 -1
  1082. package/dist/assets/parameters-bundle.css.31ea3347.js +0 -1
  1083. package/dist/assets/parameters-bundle.css.3db3a626.js +0 -1
  1084. package/dist/assets/parameters-bundle.css.4f500511.js +0 -1
  1085. package/dist/assets/parameters-bundle.css.572a1598.js +0 -1
  1086. package/dist/assets/parameters-bundle.css.5a6e960a.js +0 -1
  1087. package/dist/assets/parameters-bundle.css.5c8d3b46.js +0 -1
  1088. package/dist/assets/parameters-bundle.css.608c209a.js +0 -1
  1089. package/dist/assets/parameters-bundle.css.780c6a0b.js +0 -1
  1090. package/dist/assets/parameters-bundle.css.7be18144.js +0 -1
  1091. package/dist/assets/parameters-bundle.css.95d13129.js +0 -1
  1092. package/dist/assets/parameters-bundle.css.9a4a59b6.js +0 -1
  1093. package/dist/assets/parameters-bundle.css.c269a39b.js +0 -1
  1094. package/dist/assets/parameters-bundle.css.c65b0aec.js +0 -1
  1095. package/dist/assets/parameters-bundle.css.c967e7ef.js +0 -1
  1096. package/dist/assets/parameters-bundle.css.cd453338.js +0 -1
  1097. package/dist/assets/parameters-bundle.css.d35c9c32.js +0 -1
  1098. package/dist/assets/parameters-bundle.css.d4f504ed.js +0 -1
  1099. package/dist/assets/parameters-bundle.css.e9339a13.js +0 -1
  1100. package/dist/assets/parameters-bundle.css.e9998509.js +0 -1
  1101. package/dist/assets/parameters-bundle.css.f0eeb6a4.js +0 -1
  1102. package/dist/assets/parameters-bundle.css.f6aea851.js +0 -1
  1103. package/dist/assets/pl.896f748a.js +0 -1
  1104. package/dist/assets/pt.9282da43.js +0 -1
  1105. package/dist/assets/pt_PT.8de6f4a2.js +0 -1
  1106. package/dist/assets/ro.f27aab0d.js +0 -1
  1107. package/dist/assets/ru.925a56df.js +0 -1
  1108. package/dist/assets/ru_UA.066d9903.js +0 -1
  1109. package/dist/assets/sk.cea36c4c.js +0 -1
  1110. package/dist/assets/sl.00e904c8.js +0 -1
  1111. package/dist/assets/sr.5ffa8a72.js +0 -1
  1112. package/dist/assets/sr_Latn.37760dd7.js +0 -1
  1113. package/dist/assets/sv.e8d71660.js +0 -1
  1114. package/dist/assets/th.9c7b50b0.js +0 -1
  1115. package/dist/assets/tr.0a0fb3ee.js +0 -1
  1116. package/dist/assets/uk.7ee1da23.js +0 -1
  1117. package/dist/assets/vi.b1f74e9c.js +0 -1
  1118. package/dist/assets/zh_CN.a1d71c11.js +0 -1
  1119. package/dist/assets/zh_HK.a47dd921.js +0 -1
  1120. package/dist/assets/zh_SG.1cd17a31.js +0 -1
  1121. package/dist/assets/zh_TW.b03069d7.js +0 -1
  1122. package/dist/css/themes/TreeListItem.css +0 -1
  1123. package/dist/generated/themes/TreeListItem.css.js +0 -8
  1124. package/dist/types/GrowingMode.js +0 -48
  1125. package/src/Button.js +0 -513
  1126. package/src/CalendarDate.js +0 -45
  1127. package/src/CalendarHeader.js +0 -213
  1128. package/src/ColorPicker.js +0 -600
  1129. package/src/CustomListItem.js +0 -99
  1130. package/src/DateComponentBase.js +0 -168
  1131. package/src/FileUploader.js +0 -531
  1132. package/src/Label.js +0 -156
  1133. package/src/Link.js +0 -403
  1134. package/src/List.js +0 -1104
  1135. package/src/ListItem.js +0 -406
  1136. package/src/ListItemBase.js +0 -181
  1137. package/src/StandardListItem.js +0 -207
  1138. package/src/Switch.js +0 -291
  1139. package/src/TableColumn.js +0 -129
  1140. package/src/Title.js +0 -132
  1141. package/src/TreeListItem.js +0 -342
  1142. package/src/types/AvatarColorScheme.js +0 -104
  1143. package/src/types/AvatarGroupType.js +0 -43
  1144. package/src/types/AvatarShape.js +0 -41
  1145. package/src/types/AvatarSize.js +0 -67
  1146. package/src/types/BreadcrumbsDesign.js +0 -42
  1147. package/src/types/BreadcrumbsSeparatorStyle.js +0 -69
  1148. package/src/types/BusyIndicatorSize.js +0 -47
  1149. package/src/types/ButtonDesign.js +0 -68
  1150. package/src/types/CalendarSelectionMode.js +0 -47
  1151. package/src/types/CarouselArrowsPlacement.js +0 -40
  1152. package/src/types/GrowingMode.js +0 -48
  1153. package/src/types/HasPopup.js +0 -62
  1154. package/src/types/LinkDesign.js +0 -47
  1155. package/src/types/ListGrowingMode.js +0 -48
  1156. package/src/types/ListItemType.js +0 -47
  1157. package/src/types/ListSeparators.js +0 -46
  1158. package/src/types/MessageStripDesign.js +0 -54
  1159. package/src/types/PanelAccessibleRole.js +0 -48
  1160. package/src/types/PopoverHorizontalAlign.js +0 -54
  1161. package/src/types/PopoverPlacementType.js +0 -54
  1162. package/src/types/PopoverVerticalAlign.js +0 -54
  1163. package/src/types/Priority.js +0 -55
  1164. package/src/types/SemanticColor.js +0 -61
  1165. package/src/types/SwitchDesign.js +0 -40
  1166. package/src/types/TabContainerTabsPlacement.js +0 -40
  1167. package/src/types/TabLayout.js +0 -40
  1168. package/src/types/TableGrowingMode.js +0 -48
  1169. package/src/types/TableMode.js +0 -47
  1170. package/src/types/TableRowType.js +0 -40
  1171. package/src/types/TabsOverflowMode.js +0 -40
  1172. package/src/types/ToastPlacement.js +0 -91
  1173. package/src/types/WrappingType.js +0 -41
package/src/List.ts ADDED
@@ -0,0 +1,1131 @@
1
+ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
+ import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
3
+ import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
4
+ import ItemNavigation from "@ui5/webcomponents-base/dist/delegate/ItemNavigation.js";
5
+ import property from "@ui5/webcomponents-base/dist/decorators/property.js";
6
+ import fastNavigation from "@ui5/webcomponents-base/dist/decorators/fastNavigation.js";
7
+ import event from "@ui5/webcomponents-base/dist/decorators/event.js";
8
+ import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
9
+ import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
10
+ import type { ClassMap, ComponentStylesData } from "@ui5/webcomponents-base/dist/types.js";
11
+ import { renderFinished } from "@ui5/webcomponents-base/dist/Render.js";
12
+ import {
13
+ isTabNext,
14
+ isSpace,
15
+ isEnter,
16
+ isTabPrevious,
17
+ } from "@ui5/webcomponents-base/dist/Keys.js";
18
+ import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
19
+ import NavigationMode from "@ui5/webcomponents-base/dist/types/NavigationMode.js";
20
+ import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AriaLabelHelper.js";
21
+ import getNormalizedTarget from "@ui5/webcomponents-base/dist/util/getNormalizedTarget.js";
22
+ import getEffectiveScrollbarStyle from "@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js";
23
+ import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
24
+ import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
25
+ import type { I18nText } from "@ui5/webcomponents-base/dist/i18nBundle.js";
26
+ import debounce from "@ui5/webcomponents-base/dist/util/debounce.js";
27
+ import isElementInView from "@ui5/webcomponents-base/dist/util/isElementInView.js";
28
+ import ListMode from "./types/ListMode.js";
29
+ import ListGrowingMode from "./types/ListGrowingMode.js";
30
+ import ListItemBase from "./ListItemBase.js";
31
+ import type ListItem from "./ListItem.js";
32
+ import type {
33
+ SelectionRequestEventDetail,
34
+ PressEventDetail,
35
+ } from "./ListItem.js";
36
+ import ListSeparators from "./types/ListSeparators.js";
37
+ // @ts-ignore
38
+ import BusyIndicator from "./BusyIndicator.js";
39
+
40
+ // Template
41
+ import ListTemplate from "./generated/templates/ListTemplate.lit.js";
42
+
43
+ // Styles
44
+ import listCss from "./generated/themes/List.css.js";
45
+ import browserScrollbarCSS from "./generated/themes/BrowserScrollbar.css.js";
46
+
47
+ // Texts
48
+ import {
49
+ LOAD_MORE_TEXT, ARIA_LABEL_LIST_SELECTABLE,
50
+ ARIA_LABEL_LIST_MULTISELECTABLE,
51
+ ARIA_LABEL_LIST_DELETABLE,
52
+ // @ts-ignore
53
+ } from "./generated/i18n/i18n-defaults.js";
54
+
55
+ const INFINITE_SCROLL_DEBOUNCE_RATE = 250; // ms
56
+
57
+ const PAGE_UP_DOWN_SIZE = 10;
58
+
59
+ // ListItemBase-based events
60
+ type FocusEventDetail = {
61
+ item: ListItemBase,
62
+ }
63
+ type DeleteEventDetail = FocusEventDetail;
64
+
65
+ // ListItem-based events
66
+ type CloseEventDetail = {
67
+ item: ListItem,
68
+ }
69
+ type ToggleEventDetail = CloseEventDetail;
70
+ type ClickEventDetail = CloseEventDetail;
71
+
72
+ /**
73
+ * @class
74
+ *
75
+ * <h3 class="comment-api-title">Overview</h3>
76
+ *
77
+ * The <code>ui5-list</code> component allows displaying a list of items, advanced keyboard
78
+ * handling support for navigating between items, and predefined modes to improve the development efficiency.
79
+ * <br><br>
80
+ * The <code>ui5-list</code> is a container for the available list items:
81
+ * <ul>
82
+ * <li><code>ui5-li</code></li>
83
+ * <li><code>ui5-li-custom</code></li>
84
+ * <li><code>ui5-li-groupheader</code></li>
85
+ * </ul>
86
+ * <br><br>
87
+ * To benefit from the built-in selection mechanism, you can use the available
88
+ * selection modes, such as
89
+ * <code>SingleSelect</code>, <code>MultiSelect</code> and <code>Delete</code>.
90
+ * <br><br>
91
+ * Additionally, the <code>ui5-list</code> provides header, footer, and customization for the list item separators.
92
+ *
93
+ * <br><br>
94
+ * <h3>Keyboard Handling</h3>
95
+ *
96
+ * <h4>Basic Navigation</h4>
97
+ * The <code>ui5-list</code> provides advanced keyboard handling.
98
+ * When a list is focused the user can use the following keyboard
99
+ * shortcuts in order to perform a navigation:
100
+ * <br>
101
+ *
102
+ * <ul>
103
+ * <li>[UP/DOWN] - Navigates up and down the items</li>
104
+ * <li>[HOME] - Navigates to first item</li>
105
+ * <li>[END] - Navigates to the last item</li>
106
+ * </ul>
107
+ *
108
+ * The user can use the following keyboard shortcuts to perform actions (such as select, delete),
109
+ * when the <code>mode</code> property is in use:
110
+ * <ul>
111
+ * <li>[SPACE] - Select an item (if <code>type</code> is 'Active') when <code>mode</code> is selection</li>
112
+ * <li>[DELETE] - Delete an item if <code>mode</code> property is <code>Delete</code></li>
113
+ * </ul>
114
+ *
115
+ * <h4>Fast Navigation</h4>
116
+ * This component provides a build in fast navigation group which can be used via <code>F6 / Shift + F6</code> or <code> Ctrl + Alt(Option) + Down / Ctrl + Alt(Option) + Up</code>.
117
+ * In order to use this functionality, you need to import the following module:
118
+ * <code>import "@ui5/webcomponents-base/dist/features/F6Navigation.js"</code>
119
+ * <br><br>
120
+ *
121
+ * <h3>ES6 Module Import</h3>
122
+ *
123
+ * <code>import "@ui5/webcomponents/dist/List.js";</code>
124
+ * <br>
125
+ * <code>import "@ui5/webcomponents/dist/StandardListItem.js";</code> (for <code>ui5-li</code>)
126
+ * <br>
127
+ * <code>import "@ui5/webcomponents/dist/CustomListItem.js";</code> (for <code>ui5-li-custom</code>)
128
+ * <br>
129
+ * <code>import "@ui5/webcomponents/dist/GroupHeaderListItem.js";</code> (for <code>ui5-li-groupheader</code>)
130
+ *
131
+ * @constructor
132
+ * @author SAP SE
133
+ * @alias sap.ui.webc.main.List
134
+ * @extends sap.ui.webc.base.UI5Element
135
+ * @tagname ui5-list
136
+ * @appenddocs StandardListItem CustomListItem GroupHeaderListItem
137
+ * @public
138
+ */
139
+ @customElement("ui5-list")
140
+ @fastNavigation
141
+
142
+ /**
143
+ * Fired when an item is activated, unless the item's <code>type</code> property
144
+ * is set to <code>Inactive</code>.
145
+ *
146
+ * @event sap.ui.webc.main.List#item-click
147
+ * @allowPreventDefault
148
+ * @param {HTMLElement} item The clicked item.
149
+ * @public
150
+ */
151
+ @event("item-click", {
152
+ detail: {
153
+ item: { type: HTMLElement },
154
+ },
155
+ })
156
+
157
+ /**
158
+ * Fired when the <code>Close</code> button of any item is clicked
159
+ * <br><br>
160
+ * <b>Note:</b> This event is only applicable to list items that can be closed (such as notification list items),
161
+ * not to be confused with <code>item-delete</code>.
162
+ *
163
+ * @event sap.ui.webc.main.List#item-close
164
+ * @param {HTMLElement} item the item about to be closed.
165
+ * @public
166
+ * @since 1.0.0-rc.8
167
+ */
168
+ @event("item-close", {
169
+ detail: {
170
+ item: { type: HTMLElement },
171
+ },
172
+ })
173
+
174
+ /**
175
+ * Fired when the <code>Toggle</code> button of any item is clicked.
176
+ * <br><br>
177
+ * <b>Note:</b> This event is only applicable to list items that can be toggled (such as notification group list items).
178
+ *
179
+ * @event sap.ui.webc.main.List#item-toggle
180
+ * @param {HTMLElement} item the toggled item.
181
+ * @public
182
+ * @since 1.0.0-rc.8
183
+ */
184
+ @event("item-toggle", {
185
+ detail: {
186
+ item: { type: HTMLElement },
187
+ },
188
+ })
189
+
190
+ /**
191
+ * Fired when the Delete button of any item is pressed.
192
+ * <br><br>
193
+ * <b>Note:</b> A Delete button is displayed on each item,
194
+ * when the component <code>mode</code> property is set to <code>Delete</code>.
195
+ *
196
+ * @event sap.ui.webc.main.List#item-delete
197
+ * @param {HTMLElement} item the deleted item.
198
+ * @public
199
+ */
200
+ @event("item-delete", {
201
+ detail: {
202
+ item: { type: HTMLElement },
203
+ },
204
+ })
205
+
206
+ /**
207
+ * Fired when selection is changed by user interaction
208
+ * in <code>SingleSelect</code>, <code>SingleSelectBegin</code>, <code>SingleSelectEnd</code> and <code>MultiSelect</code> modes.
209
+ *
210
+ * @event sap.ui.webc.main.List#selection-change
211
+ * @param {Array} selectedItems An array of the selected items.
212
+ * @param {Array} previouslySelectedItems An array of the previously selected items.
213
+ * @public
214
+ */
215
+ @event("selection-change", {
216
+ detail: {
217
+ selectedItems: { type: Array },
218
+ previouslySelectedItems: { type: Array },
219
+ targetItem: { type: HTMLElement }, // protected, holds the event target item
220
+ selectionComponentPressed: { type: Boolean }, // protected, indicates if the user used the selection components to change the selection
221
+ },
222
+ })
223
+
224
+ /**
225
+ * Fired when the user scrolls to the bottom of the list.
226
+ * <br><br>
227
+ * <b>Note:</b> The event is fired when the <code>growing='Scroll'</code> property is enabled.
228
+ *
229
+ * @event sap.ui.webc.main.List#load-more
230
+ * @public
231
+ * @since 1.0.0-rc.6
232
+ */
233
+ @event("load-more")
234
+
235
+ /**
236
+ * @private
237
+ */
238
+ @event("item-focused", {
239
+ detail: {
240
+ item: { type: HTMLElement },
241
+ },
242
+ })
243
+ class List extends UI5Element {
244
+ /**
245
+ * Defines the component header text.
246
+ * <br><br>
247
+ * <b>Note:</b> If <code>header</code> is set this property is ignored.
248
+ *
249
+ * @type {string}
250
+ * @name sap.ui.webc.main.List.prototype.headerText
251
+ * @defaultvalue ""
252
+ * @public
253
+ */
254
+ @property()
255
+ headerText!: string;
256
+
257
+ /**
258
+ * Defines the footer text.
259
+ *
260
+ * @type {string}
261
+ * @name sap.ui.webc.main.List.prototype.footerText
262
+ * @defaultvalue ""
263
+ * @public
264
+ */
265
+ @property()
266
+ footerText!: string;
267
+
268
+ /**
269
+ * Determines whether the component is indented.
270
+ *
271
+ * @type {boolean}
272
+ * @name sap.ui.webc.main.List.prototype.indent
273
+ * @defaultvalue false
274
+ * @public
275
+ */
276
+ @property({ type: Boolean })
277
+ indent!: boolean;
278
+
279
+ /**
280
+ * Defines the mode of the component.
281
+ * <br><br>
282
+ * <b>Note:</b> Available options are <code>None</code>, <code>SingleSelect</code>, <code>SingleSelectBegin</code>,
283
+ * <code>SingleSelectEnd</code>, <code>MultiSelect</code>, and <code>Delete</code>.
284
+ *
285
+ * @type {sap.ui.webc.main.types.ListMode}
286
+ * @name sap.ui.webc.main.List.prototype.mode
287
+ * @defaultvalue "None"
288
+ * @public
289
+ */
290
+ @property({ type: ListMode, defaultValue: ListMode.None })
291
+ mode!: ListMode;
292
+
293
+ /**
294
+ * Defines the text that is displayed when the component contains no items.
295
+ *
296
+ * @type {string}
297
+ * @name sap.ui.webc.main.List.prototype.noDataText
298
+ * @defaultvalue ""
299
+ * @public
300
+ */
301
+ @property()
302
+ noDataText!: string;
303
+
304
+ /**
305
+ * Defines the item separator style that is used.
306
+ * <br><br>
307
+ * <b>Notes:</b>
308
+ * <ul>
309
+ * <li>Avalaible options are <code>All</code>, <code>Inner</code>, and <code>None</code>.</li>
310
+ * <li>When set to <code>None</code>, none of the items are separated by horizontal lines.</li>
311
+ * <li>When set to <code>Inner</code>, the first item doesn't have a top separator and the last
312
+ * item doesn't have a bottom separator.</li>
313
+ * </ul>
314
+ *
315
+ * @type {sap.ui.webc.main.types.ListSeparators}
316
+ * @name sap.ui.webc.main.List.prototype.separators
317
+ * @defaultvalue "All"
318
+ * @public
319
+ */
320
+ @property({ type: ListSeparators, defaultValue: ListSeparators.All })
321
+ separators!: ListSeparators;
322
+
323
+ /**
324
+ * Defines whether the component will have growing capability either by pressing a <code>More</code> button,
325
+ * or via user scroll. In both cases <code>load-more</code> event is fired.
326
+ * <br><br>
327
+ *
328
+ * Available options:
329
+ * <br><br>
330
+ * <code>Button</code> - Shows a <code>More</code> button at the bottom of the list,
331
+ * pressing of which triggers the <code>load-more</code> event.
332
+ * <br>
333
+ * <code>Scroll</code> - The <code>load-more</code> event is triggered when the user scrolls to the bottom of the list;
334
+ * <br>
335
+ * <code>None</code> (default) - The growing is off.
336
+ * <br><br>
337
+ *
338
+ * <b>Restrictions:</b> <code>growing="Scroll"</code> is not supported for Internet Explorer,
339
+ * on IE the component will fallback to <code>growing="Button"</code>.
340
+ * @type {sap.ui.webc.main.types.ListGrowingMode}
341
+ * @name sap.ui.webc.main.List.prototype.growing
342
+ * @defaultvalue "None"
343
+ * @since 1.0.0-rc.13
344
+ * @public
345
+ */
346
+ @property({ type: ListGrowingMode, defaultValue: ListGrowingMode.None })
347
+ growing!: ListGrowingMode;
348
+
349
+ /**
350
+ * Defines if the component would display a loading indicator over the list.
351
+ *
352
+ * @type {boolean}
353
+ * @name sap.ui.webc.main.List.prototype.busy
354
+ * @defaultvalue false
355
+ * @public
356
+ * @since 1.0.0-rc.6
357
+ */
358
+ @property({ type: Boolean })
359
+ busy!: boolean;
360
+
361
+ /**
362
+ * Defines the delay in milliseconds, after which the busy indicator will show up for this component.
363
+ *
364
+ * @type {sap.ui.webc.base.types.Integer}
365
+ * @name sap.ui.webc.main.List.prototype.busyDelay
366
+ * @defaultValue 1000
367
+ * @public
368
+ */
369
+ @property({ validator: Integer, defaultValue: 1000 })
370
+ busyDelay!: number;
371
+
372
+ /**
373
+ * Defines the accessible name of the component.
374
+ *
375
+ * @type {string}
376
+ * @name sap.ui.webc.main.List.prototype.accessibleName
377
+ * @defaultvalue ""
378
+ * @public
379
+ * @since 1.0.0-rc.15
380
+ */
381
+ @property()
382
+ accessibleName!: string;
383
+
384
+ /**
385
+ * Defines the IDs of the elements that label the input.
386
+ *
387
+ * @type {string}
388
+ * @name sap.ui.webc.main.List.prototype.accessibleNameRef
389
+ * @defaultvalue ""
390
+ * @public
391
+ * @since 1.0.0-rc.15
392
+ */
393
+ @property({ defaultValue: "" })
394
+ accessibleNameRef!: string;
395
+
396
+ /**
397
+ * Defines the accessible role of the component.
398
+ * <br><br>
399
+ * @public
400
+ * @type {string}
401
+ * @name sap.ui.webc.main.List.prototype.accessibleRole
402
+ * @defaultvalue "list"
403
+ * @since 1.0.0-rc.15
404
+ */
405
+ @property({ defaultValue: "list" })
406
+ accessibleRole!: string;
407
+
408
+ /**
409
+ * Defines the description for the accessible role of the component.
410
+ * @protected
411
+ * @type {string}
412
+ * @name sap.ui.webc.main.List.prototype.accessibleRoleDescription
413
+ * @defaultvalue undefined
414
+ * @since 1.10.0
415
+ */
416
+ @property({ defaultValue: undefined, noAttribute: true })
417
+ accessibleRoleDescription?: string;
418
+
419
+ /**
420
+ * Defines if the entire list is in view port.
421
+ * @private
422
+ */
423
+ @property({ type: Boolean })
424
+ _inViewport!: boolean;
425
+
426
+ /**
427
+ * Defines the active state of the <code>More</code> button.
428
+ * @private
429
+ */
430
+ @property({ type: Boolean })
431
+ _loadMoreActive!: boolean;
432
+
433
+ /**
434
+ * Defines the items of the component.
435
+ * <br><br>
436
+ * <b>Note:</b> Use <code>ui5-li</code>, <code>ui5-li-custom</code>, and <code>ui5-li-groupheader</code> for the intended design.
437
+ *
438
+ * @type {sap.ui.webc.main.IListItem[]}
439
+ * @name sap.ui.webc.main.List.prototype.default
440
+ * @slot items
441
+ * @public
442
+ */
443
+ @slot({ type: HTMLElement, "default": true })
444
+ items!: Array<ListItemBase>;
445
+
446
+ /**
447
+ * Defines the component header.
448
+ * <br><br>
449
+ * <b>Note:</b> When <code>header</code> is set, the
450
+ * <code>headerText</code> property is ignored.
451
+ *
452
+ * @type {HTMLElement[]}
453
+ * @name sap.ui.webc.main.List.prototype.header
454
+ * @slot
455
+ * @public
456
+ */
457
+ @slot()
458
+ header!: Array<HTMLElement>;
459
+
460
+ static i18nBundle: I18nBundle;
461
+ _previouslyFocusedItem: ListItemBase | null;
462
+ _forwardingFocus: boolean;
463
+ resizeListenerAttached: boolean;
464
+ listEndObserved: boolean;
465
+ _handleResize: () => void;
466
+ initialIntersection: boolean;
467
+ _selectionRequested?: boolean;
468
+ growingIntersectionObserver?: IntersectionObserver | null;
469
+ _itemNavigation: ItemNavigation;
470
+ _beforeElement?: HTMLElement | null;
471
+ _afterElement?: HTMLElement | null;
472
+
473
+ static get render() {
474
+ return litRender;
475
+ }
476
+
477
+ static get template() {
478
+ return ListTemplate;
479
+ }
480
+
481
+ static get styles(): ComponentStylesData {
482
+ return [browserScrollbarCSS, listCss];
483
+ }
484
+
485
+ static async onDefine() {
486
+ List.i18nBundle = await getI18nBundle("@ui5/webcomponents");
487
+ }
488
+
489
+ static get dependencies() {
490
+ return [BusyIndicator];
491
+ }
492
+
493
+ constructor() {
494
+ super();
495
+
496
+ this._previouslyFocusedItem = null;
497
+
498
+ // Indicates that the List is forwarding the focus before or after the internal ul.
499
+ this._forwardingFocus = false;
500
+
501
+ // Indicates that the List has already subscribed for resize.
502
+ this.resizeListenerAttached = false;
503
+
504
+ // Indicates if the IntersectionObserver started observing the List
505
+ this.listEndObserved = false;
506
+
507
+ this._itemNavigation = new ItemNavigation(this, {
508
+ skipItemsSize: PAGE_UP_DOWN_SIZE, // PAGE_UP and PAGE_DOWN will skip trough 10 items
509
+ navigationMode: NavigationMode.Vertical,
510
+ getItemsCallback: () => this.getEnabledItems(),
511
+ });
512
+
513
+ this._handleResize = this.checkListInViewport.bind(this);
514
+
515
+ this._handleResize = this.checkListInViewport.bind(this);
516
+
517
+ // Indicates the List bottom most part has been detected by the IntersectionObserver
518
+ // for the first time.
519
+ this.initialIntersection = true;
520
+ }
521
+
522
+ onExitDOM() {
523
+ this.unobserveListEnd();
524
+ this.resizeListenerAttached = false;
525
+ ResizeHandler.deregister(this.getDomRef()!, this._handleResize);
526
+ }
527
+
528
+ onBeforeRendering() {
529
+ this.prepareListItems();
530
+ }
531
+
532
+ onAfterRendering() {
533
+ if (this.growsOnScroll) {
534
+ this.observeListEnd();
535
+ } else if (this.listEndObserved) {
536
+ this.unobserveListEnd();
537
+ }
538
+
539
+ if (this.grows) {
540
+ this.checkListInViewport();
541
+ this.attachForResize();
542
+ }
543
+ }
544
+
545
+ attachForResize() {
546
+ if (!this.resizeListenerAttached) {
547
+ this.resizeListenerAttached = true;
548
+ ResizeHandler.register(this.getDomRef()!, this._handleResize);
549
+ }
550
+ }
551
+
552
+ get shouldRenderH1() {
553
+ return !this.header.length && this.headerText;
554
+ }
555
+
556
+ get headerID() {
557
+ return `${this._id}-header`;
558
+ }
559
+
560
+ get modeLabelID() {
561
+ return `${this._id}-modeLabel`;
562
+ }
563
+
564
+ get listEndDOM() {
565
+ return this.shadowRoot!.querySelector(".ui5-list-end-marker");
566
+ }
567
+
568
+ get hasData() {
569
+ return this.getItems().length !== 0;
570
+ }
571
+
572
+ get showNoDataText() {
573
+ return !this.hasData && this.noDataText;
574
+ }
575
+
576
+ get isDelete() {
577
+ return this.mode === ListMode.Delete;
578
+ }
579
+
580
+ get isSingleSelect() {
581
+ return [
582
+ ListMode.SingleSelect,
583
+ ListMode.SingleSelectBegin,
584
+ ListMode.SingleSelectEnd,
585
+ ListMode.SingleSelectAuto,
586
+ ].includes(this.mode);
587
+ }
588
+
589
+ get isMultiSelect() {
590
+ return this.mode === ListMode.MultiSelect;
591
+ }
592
+
593
+ get ariaLabelledBy() {
594
+ if (this.accessibleNameRef || this.accessibleName) {
595
+ return undefined;
596
+ }
597
+ const ids = [];
598
+
599
+ if (this.isMultiSelect || this.isSingleSelect || this.isDelete) {
600
+ ids.push(this.modeLabelID);
601
+ }
602
+
603
+ if (this.shouldRenderH1) {
604
+ ids.push(this.headerID);
605
+ }
606
+
607
+ return ids.length ? ids.join(" ") : undefined;
608
+ }
609
+
610
+ get ariaLabelTxt() {
611
+ return getEffectiveAriaLabelText(this);
612
+ }
613
+
614
+ get ariaLabelModeText(): string {
615
+ if (this.isMultiSelect) {
616
+ return List.i18nBundle.getText(ARIA_LABEL_LIST_MULTISELECTABLE as I18nText);
617
+ }
618
+ if (this.isSingleSelect) {
619
+ return List.i18nBundle.getText(ARIA_LABEL_LIST_SELECTABLE as I18nText);
620
+ }
621
+ if (this.isDelete) {
622
+ return List.i18nBundle.getText(ARIA_LABEL_LIST_DELETABLE as I18nText);
623
+ }
624
+
625
+ return "";
626
+ }
627
+
628
+ get grows() {
629
+ return this.growing !== ListGrowingMode.None;
630
+ }
631
+
632
+ get growsOnScroll() {
633
+ return this.growing === ListGrowingMode.Scroll;
634
+ }
635
+
636
+ get growsWithButton() {
637
+ return this.growing === ListGrowingMode.Button;
638
+ }
639
+
640
+ get _growingButtonText(): string {
641
+ return List.i18nBundle.getText(LOAD_MORE_TEXT as I18nText);
642
+ }
643
+
644
+ get busyIndPosition() {
645
+ if (!this.grows) {
646
+ return "absolute";
647
+ }
648
+
649
+ return this._inViewport ? "absolute" : "sticky";
650
+ }
651
+
652
+ get styles() {
653
+ return {
654
+ busyInd: {
655
+ position: this.busyIndPosition,
656
+ },
657
+ };
658
+ }
659
+
660
+ get classes(): ClassMap {
661
+ return {
662
+ root: {
663
+ "ui5-list-root": true,
664
+ "ui5-content-native-scrollbars": getEffectiveScrollbarStyle(),
665
+ },
666
+ };
667
+ }
668
+
669
+ prepareListItems() {
670
+ const slottedItems = this.getItems();
671
+
672
+ slottedItems.forEach((item, key) => {
673
+ const isLastChild = key === slottedItems.length - 1;
674
+ const showBottomBorder = this.separators === ListSeparators.All
675
+ || (this.separators === ListSeparators.Inner && !isLastChild);
676
+
677
+ if (item.hasConfigurableMode) {
678
+ (item as ListItem)._mode = this.mode;
679
+ }
680
+ item.hasBorder = showBottomBorder;
681
+ });
682
+ }
683
+
684
+ async observeListEnd() {
685
+ if (!this.listEndObserved) {
686
+ await renderFinished();
687
+ this.getIntersectionObserver().observe(this.listEndDOM!);
688
+ this.listEndObserved = true;
689
+ }
690
+ }
691
+
692
+ unobserveListEnd() {
693
+ if (this.growingIntersectionObserver) {
694
+ this.growingIntersectionObserver.disconnect();
695
+ this.growingIntersectionObserver = null;
696
+ this.listEndObserved = false;
697
+ }
698
+ }
699
+
700
+ onInteresection(entries: Array<IntersectionObserverEntry>) {
701
+ if (this.initialIntersection) {
702
+ this.initialIntersection = false;
703
+ return;
704
+ }
705
+ entries.forEach(entry => {
706
+ if (entry.isIntersecting) {
707
+ debounce(this.loadMore.bind(this), INFINITE_SCROLL_DEBOUNCE_RATE);
708
+ }
709
+ });
710
+ }
711
+
712
+ /*
713
+ * ITEM SELECTION BASED ON THE CURRENT MODE
714
+ */
715
+ onSelectionRequested(e: CustomEvent<SelectionRequestEventDetail>) {
716
+ const previouslySelectedItems = this.getSelectedItems();
717
+ let selectionChange = false;
718
+ this._selectionRequested = true;
719
+
720
+ if (this.mode !== ListMode.None && this[`handle${this.mode}`]) {
721
+ selectionChange = this[`handle${this.mode}`](e.detail.item, !!e.detail.selected);
722
+ }
723
+
724
+ if (selectionChange) {
725
+ this.fireEvent("selection-change", {
726
+ selectedItems: this.getSelectedItems(),
727
+ previouslySelectedItems,
728
+ selectionComponentPressed: e.detail.selectionComponentPressed,
729
+ targetItem: e.detail.item,
730
+ key: e.detail.key,
731
+ });
732
+ }
733
+ }
734
+
735
+ handleSingleSelect(item: ListItemBase): boolean {
736
+ if (item.selected) {
737
+ return false;
738
+ }
739
+
740
+ this.deselectSelectedItems();
741
+ item.selected = true;
742
+
743
+ return true;
744
+ }
745
+
746
+ handleSingleSelectBegin(item: ListItemBase): boolean {
747
+ return this.handleSingleSelect(item);
748
+ }
749
+
750
+ handleSingleSelectEnd(item: ListItemBase): boolean {
751
+ return this.handleSingleSelect(item);
752
+ }
753
+
754
+ handleSingleSelectAuto(item: ListItemBase): boolean {
755
+ return this.handleSingleSelect(item);
756
+ }
757
+
758
+ handleMultiSelect(item: ListItemBase, selected: boolean): boolean {
759
+ item.selected = selected;
760
+ return true;
761
+ }
762
+
763
+ handleDelete(item: ListItemBase): boolean {
764
+ this.fireEvent<DeleteEventDetail>("item-delete", { item });
765
+
766
+ return true;
767
+ }
768
+
769
+ deselectSelectedItems() {
770
+ this.getSelectedItems().forEach(item => { item.selected = false; });
771
+ }
772
+
773
+ getSelectedItems(): Array<ListItemBase> {
774
+ return this.getItems().filter(item => item.selected);
775
+ }
776
+
777
+ getEnabledItems(): Array<ListItemBase> {
778
+ return this.getItems().filter(item => !item.disabled);
779
+ }
780
+
781
+ getItems(): Array<ListItemBase> {
782
+ return this.getSlottedNodes("items") as Array<ListItemBase>;
783
+ }
784
+
785
+ _onkeydown(e: KeyboardEvent) {
786
+ if (isTabNext(e)) {
787
+ this._handleTabNext(e);
788
+ }
789
+ }
790
+
791
+ _onLoadMoreKeydown(e: KeyboardEvent) {
792
+ if (isSpace(e)) {
793
+ e.preventDefault();
794
+ this._loadMoreActive = true;
795
+ }
796
+
797
+ if (isEnter(e)) {
798
+ this._onLoadMoreClick();
799
+ this._loadMoreActive = true;
800
+ }
801
+
802
+ if (isTabNext(e)) {
803
+ this.focusAfterElement();
804
+ }
805
+
806
+ if (isTabPrevious(e)) {
807
+ if (this.getPreviouslyFocusedItem()) {
808
+ this.focusPreviouslyFocusedItem();
809
+ } else {
810
+ this.focusFirstItem();
811
+ }
812
+ e.preventDefault();
813
+ }
814
+ }
815
+
816
+ _onLoadMoreKeyup(e: KeyboardEvent) {
817
+ if (isSpace(e)) {
818
+ this._onLoadMoreClick();
819
+ }
820
+ this._loadMoreActive = false;
821
+ }
822
+
823
+ _onLoadMoreMousedown() {
824
+ this._loadMoreActive = true;
825
+ }
826
+
827
+ _onLoadMoreMouseup() {
828
+ this._loadMoreActive = false;
829
+ }
830
+
831
+ _onLoadMoreClick() {
832
+ this.loadMore();
833
+ }
834
+
835
+ checkListInViewport() {
836
+ this._inViewport = isElementInView(this.getDomRef()!);
837
+ }
838
+
839
+ loadMore() {
840
+ this.fireEvent("load-more");
841
+ }
842
+
843
+ /*
844
+ * KEYBOARD SUPPORT
845
+ */
846
+ _handleTabNext(e: KeyboardEvent) {
847
+ let lastTabbableEl;
848
+ const target = getNormalizedTarget(e.target as HTMLElement);
849
+
850
+ if (!lastTabbableEl) {
851
+ return;
852
+ }
853
+
854
+ if (lastTabbableEl === target) {
855
+ if (this.getFirstItem(x => x.selected && !x.disabled)) {
856
+ this.focusFirstSelectedItem();
857
+ } else if (this.getPreviouslyFocusedItem()) {
858
+ this.focusPreviouslyFocusedItem();
859
+ } else {
860
+ this.focusFirstItem();
861
+ }
862
+
863
+ e.stopImmediatePropagation();
864
+ e.preventDefault();
865
+ }
866
+ }
867
+
868
+ _onfocusin(e: FocusEvent) {
869
+ const target = getNormalizedTarget(e.target as HTMLElement);
870
+ // If the focusin event does not origin from one of the 'triggers' - ignore it.
871
+ if (!this.isForwardElement(target)) {
872
+ e.stopImmediatePropagation();
873
+ return;
874
+ }
875
+
876
+ // The focus arrives in the List for the first time.
877
+ // If there is selected item - focus it or focus the first item.
878
+ if (!this.getPreviouslyFocusedItem()) {
879
+ if (this.growsWithButton && this.isForwardAfterElement(target)) {
880
+ this.focusGrowingButton();
881
+ } else {
882
+ this.focusFirstItem();
883
+ }
884
+ e.stopImmediatePropagation();
885
+ return;
886
+ }
887
+
888
+ // The focus returns to the List,
889
+ // focus the first selected item or the previously focused element.
890
+ if (!this.getForwardingFocus()) {
891
+ if (this.growsWithButton && this.isForwardAfterElement(target)) {
892
+ this.focusGrowingButton();
893
+ e.stopImmediatePropagation();
894
+ return;
895
+ }
896
+
897
+ this.focusPreviouslyFocusedItem();
898
+ e.stopImmediatePropagation();
899
+ }
900
+
901
+ this.setForwardingFocus(false);
902
+ }
903
+
904
+ isForwardElement(element: HTMLElement) {
905
+ const elementId = element.id;
906
+ const beforeElement = this.getBeforeElement();
907
+
908
+ if (this._id === elementId || (beforeElement && beforeElement.id === elementId)) {
909
+ return true;
910
+ }
911
+
912
+ return this.isForwardAfterElement(element);
913
+ }
914
+
915
+ isForwardAfterElement(element: HTMLElement) {
916
+ const elementId = element.id;
917
+ const afterElement = this.getAfterElement();
918
+
919
+ return afterElement && afterElement.id === elementId;
920
+ }
921
+
922
+ onItemFocused(e: CustomEvent) {
923
+ const target = e.target as ListItemBase;
924
+
925
+ e.stopPropagation();
926
+
927
+ this._itemNavigation.setCurrentItem(target);
928
+ this.fireEvent<FocusEventDetail>("item-focused", { item: target });
929
+
930
+ if (this.mode === ListMode.SingleSelectAuto) {
931
+ const detail: SelectionRequestEventDetail = {
932
+ item: target,
933
+ selectionComponentPressed: false,
934
+ selected: true,
935
+ key: e.detail.key,
936
+ };
937
+
938
+ this.onSelectionRequested({ detail } as CustomEvent<SelectionRequestEventDetail>);
939
+ }
940
+ }
941
+
942
+ onItemPress(e: CustomEvent<PressEventDetail>) {
943
+ const pressedItem = e.detail.item;
944
+
945
+ if (!this.fireEvent<ClickEventDetail>("item-click", { item: pressedItem }, true)) {
946
+ return;
947
+ }
948
+
949
+ if (!this._selectionRequested && this.mode !== ListMode.Delete) {
950
+ this._selectionRequested = true;
951
+ const detail: SelectionRequestEventDetail = {
952
+ item: pressedItem,
953
+ selectionComponentPressed: false,
954
+ selected: !pressedItem.selected,
955
+ key: e.detail.key,
956
+ };
957
+
958
+ this.onSelectionRequested({ detail } as CustomEvent<SelectionRequestEventDetail>);
959
+ }
960
+
961
+ this._selectionRequested = false;
962
+ }
963
+
964
+ // This is applicable to NotificationListItem
965
+ onItemClose(e: CustomEvent<CloseEventDetail>) {
966
+ this.fireEvent<CloseEventDetail>("item-close", { item: e.detail.item });
967
+ }
968
+
969
+ onItemToggle(e: CustomEvent<ToggleEventDetail>) {
970
+ this.fireEvent<ToggleEventDetail>("item-toggle", { item: e.detail.item });
971
+ }
972
+
973
+ onForwardBefore(e: CustomEvent) {
974
+ this.setPreviouslyFocusedItem(e.target as ListItemBase);
975
+ this.focusBeforeElement();
976
+ e.stopPropagation();
977
+ }
978
+
979
+ onForwardAfter(e: CustomEvent) {
980
+ this.setPreviouslyFocusedItem(e.target as ListItemBase);
981
+
982
+ if (!this.growsWithButton) {
983
+ this.focusAfterElement();
984
+ } else {
985
+ this.focusGrowingButton();
986
+ e.preventDefault();
987
+ }
988
+
989
+ e.stopPropagation();
990
+ }
991
+
992
+ focusBeforeElement() {
993
+ this.setForwardingFocus(true);
994
+ this.getBeforeElement().focus();
995
+ }
996
+
997
+ focusAfterElement() {
998
+ this.setForwardingFocus(true);
999
+ this.getAfterElement().focus();
1000
+ }
1001
+
1002
+ focusGrowingButton() {
1003
+ const growingBtn = this.getGrowingButton();
1004
+
1005
+ if (growingBtn) {
1006
+ growingBtn.focus();
1007
+ }
1008
+ }
1009
+
1010
+ getGrowingButton() {
1011
+ return this.shadowRoot!.querySelector(`#${this._id}-growing-btn`) as HTMLElement;
1012
+ }
1013
+
1014
+ /**
1015
+ * Focuses the first list item and sets its tabindex to "0" via the ItemNavigation
1016
+ * @protected
1017
+ */
1018
+ focusFirstItem() {
1019
+ // only enabled items are focusable
1020
+ const firstItem = this.getFirstItem(x => !x.disabled);
1021
+
1022
+ if (firstItem) {
1023
+ firstItem.focus();
1024
+ }
1025
+ }
1026
+
1027
+ focusPreviouslyFocusedItem() {
1028
+ const previouslyFocusedItem = this.getPreviouslyFocusedItem();
1029
+
1030
+ if (previouslyFocusedItem) {
1031
+ previouslyFocusedItem.focus();
1032
+ }
1033
+ }
1034
+
1035
+ focusFirstSelectedItem() {
1036
+ // only enabled items are focusable
1037
+ const firstSelectedItem = this.getFirstItem(x => x.selected && !x.disabled);
1038
+
1039
+ if (firstSelectedItem) {
1040
+ firstSelectedItem.focus();
1041
+ }
1042
+ }
1043
+
1044
+ /**
1045
+ * Focuses a list item and sets its tabindex to "0" via the ItemNavigation
1046
+ * @protected
1047
+ * @param item
1048
+ */
1049
+ focusItem(item: ListItemBase) {
1050
+ this._itemNavigation.setCurrentItem(item);
1051
+ item.focus();
1052
+ }
1053
+
1054
+ onFocusRequested(e: CustomEvent) {
1055
+ setTimeout(() => {
1056
+ this.setPreviouslyFocusedItem(e.target as ListItemBase);
1057
+ this.focusPreviouslyFocusedItem();
1058
+ }, 0);
1059
+ }
1060
+
1061
+ setForwardingFocus(forwardingFocus: boolean) {
1062
+ this._forwardingFocus = forwardingFocus;
1063
+ }
1064
+
1065
+ getForwardingFocus() {
1066
+ return this._forwardingFocus;
1067
+ }
1068
+
1069
+ setPreviouslyFocusedItem(item: ListItemBase) {
1070
+ this._previouslyFocusedItem = item;
1071
+ }
1072
+
1073
+ getPreviouslyFocusedItem() {
1074
+ return this._previouslyFocusedItem;
1075
+ }
1076
+
1077
+ getFirstItem(filter: (item: ListItemBase) => boolean): ListItemBase | null {
1078
+ const slottedItems = this.getItems();
1079
+ let firstItem = null;
1080
+
1081
+ if (!filter) {
1082
+ return slottedItems.length ? slottedItems[0] : null;
1083
+ }
1084
+
1085
+ for (let i = 0; i < slottedItems.length; i++) {
1086
+ if (filter(slottedItems[i])) {
1087
+ firstItem = slottedItems[i];
1088
+ break;
1089
+ }
1090
+ }
1091
+
1092
+ return firstItem;
1093
+ }
1094
+
1095
+ getAfterElement() {
1096
+ if (!this._afterElement) {
1097
+ this._afterElement = this.shadowRoot!.querySelector(`#${this._id}-after`) as HTMLElement;
1098
+ }
1099
+ return this._afterElement;
1100
+ }
1101
+
1102
+ getBeforeElement() {
1103
+ if (!this._beforeElement) {
1104
+ this._beforeElement = this.shadowRoot!.querySelector(`#${this._id}-before`) as HTMLElement;
1105
+ }
1106
+ return this._beforeElement;
1107
+ }
1108
+
1109
+ getIntersectionObserver() {
1110
+ if (!this.growingIntersectionObserver) {
1111
+ this.growingIntersectionObserver = new IntersectionObserver(this.onInteresection.bind(this), {
1112
+ root: null,
1113
+ rootMargin: "0px",
1114
+ threshold: 1.0,
1115
+ });
1116
+ }
1117
+
1118
+ return this.growingIntersectionObserver;
1119
+ }
1120
+ }
1121
+
1122
+ List.define();
1123
+
1124
+ export default List;
1125
+ export type {
1126
+ ClickEventDetail,
1127
+ FocusEventDetail,
1128
+ DeleteEventDetail,
1129
+ CloseEventDetail,
1130
+ ToggleEventDetail,
1131
+ };