@ui5/webcomponents 1.9.3 → 1.10.0

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