@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
@@ -1,67 +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 RangeSlider_1;
8
+ import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
9
+ import languageAware from "@ui5/webcomponents-base/dist/decorators/languageAware.js";
10
+ import property from "@ui5/webcomponents-base/dist/decorators/property.js";
1
11
  import Float from "@ui5/webcomponents-base/dist/types/Float.js";
2
12
  import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
3
- import {
4
- isEscape,
5
- isHome,
6
- isEnd,
7
- } from "@ui5/webcomponents-base/dist/Keys.js";
13
+ import { isEscape, isHome, isEnd, } from "@ui5/webcomponents-base/dist/Keys.js";
8
14
  import SliderBase from "./SliderBase.js";
9
15
  import Icon from "./Icon.js";
10
16
  import RangeSliderTemplate from "./generated/templates/RangeSliderTemplate.lit.js";
11
-
12
17
  // Texts
13
- import {
14
- RANGE_SLIDER_ARIA_DESCRIPTION,
15
- RANGE_SLIDER_START_HANDLE_DESCRIPTION,
16
- RANGE_SLIDER_END_HANDLE_DESCRIPTION,
17
- } from "./generated/i18n/i18n-defaults.js";
18
-
18
+ import { RANGE_SLIDER_ARIA_DESCRIPTION, RANGE_SLIDER_START_HANDLE_DESCRIPTION, RANGE_SLIDER_END_HANDLE_DESCRIPTION,
19
+ // @ts-ignore
20
+ } from "./generated/i18n/i18n-defaults.js";
19
21
  // Styles
20
22
  import rangeSliderStyles from "./generated/themes/RangeSlider.css.js";
21
-
22
- /**
23
- * @public
24
- */
25
- const metadata = {
26
- tag: "ui5-range-slider",
27
- languageAware: true,
28
- managedSlots: true,
29
- properties: /** @lends sap.ui.webcomponents.main.RangeSlider.prototype */ {
30
- /**
31
- * Defines start point of a selection - position of a first handle on the slider.
32
- * <br><br>
33
- *
34
- * @type {sap.ui.webcomponents.base.types.Float}
35
- * @defaultvalue 0
36
- * @formEvents change input
37
- * @formProperty
38
- * @public
39
- */
40
- startValue: {
41
- type: Float,
42
- defaultValue: 0,
43
- },
44
- /**
45
- * Defines end point of a selection - position of a second handle on the slider.
46
- * <br><br>
47
- *
48
- * @type {sap.ui.webcomponents.base.types.Float}
49
- * @defaultvalue 100
50
- * @formEvents change input
51
- * @formProperty
52
- * @public
53
- */
54
- endValue: {
55
- type: Float,
56
- defaultValue: 100,
57
- },
58
-
59
- rangePressed: {
60
- type: Boolean,
61
- },
62
- },
63
- };
64
-
65
23
  /**
66
24
  * @class
67
25
  *
@@ -91,6 +49,17 @@ const metadata = {
91
49
  * <h3>Responsive Behavior</h3>
92
50
  * You can move the currently selected range by clicking on it and dragging it along the interval.
93
51
  *
52
+ * <h3>CSS Shadow Parts</h3>
53
+ *
54
+ * <ui5-link target="_blank" href="https://developer.mozilla.org/en-US/docs/Web/CSS/::part">CSS Shadow Parts</ui5-link> allow developers to style elements inside the Shadow DOM.
55
+ * <br>
56
+ * The <code>ui5-range-slider</code> exposes the following CSS Shadow Parts:
57
+ * <ul>
58
+ * <li>progress-container - Used to style the progress container(the horizontal bar which visually represents the range between the minimum and maximum value) of the <code>ui5-range-slider</code>.</li>
59
+ * <li>progress-bar - Used to style the progress bar, which shows the progress of the <code>ui5-range-slider</code>.</li>
60
+ * <li>handle - Used to style the handles of the <code>ui5-range-slider</code>.</li>
61
+ * </ul>
62
+ *
94
63
  * <h3>Keyboard Handling</h3>
95
64
  *
96
65
  * <ul>
@@ -114,710 +83,666 @@ const metadata = {
114
83
  *
115
84
  * @constructor
116
85
  * @author SAP SE
117
- * @alias sap.ui.webcomponents.main.RangeSlider
118
- * @extends sap.ui.webcomponents.main.SliderBase
86
+ * @alias sap.ui.webc.main.RangeSlider
87
+ * @extends sap.ui.webc.main.SliderBase
119
88
  * @tagname ui5-range-slider
120
89
  * @since 1.0.0-rc.11
121
90
  * @public
122
91
  */
123
- class RangeSlider extends SliderBase {
124
- static get metadata() {
125
- return metadata;
126
- }
127
-
128
- static get template() {
129
- return RangeSliderTemplate;
130
- }
131
-
132
- static get VALUES() {
133
- return {
134
- start: "startValue",
135
- end: "endValue",
136
- };
137
- }
138
-
139
- static get dependencies() {
140
- return [Icon];
141
- }
142
-
143
- static get styles() {
144
- return [SliderBase.styles, rangeSliderStyles];
145
- }
146
-
147
- constructor() {
148
- super();
149
- this._stateStorage.startValue = null;
150
- this._stateStorage.endValue = null;
151
- }
152
-
153
- get tooltipStartValue() {
154
- const stepPrecision = this.constructor._getDecimalPrecisionOfNumber(this._effectiveStep);
155
- return this.startValue.toFixed(stepPrecision);
156
- }
157
-
158
- get tooltipEndValue() {
159
- const stepPrecision = this.constructor._getDecimalPrecisionOfNumber(this._effectiveStep);
160
- return this.endValue.toFixed(stepPrecision);
161
- }
162
-
163
- get _ariaDisabled() {
164
- return this.disabled || undefined;
165
- }
166
-
167
- get _ariaLabelledByText() {
168
- return RangeSlider.i18nBundle.getText(RANGE_SLIDER_ARIA_DESCRIPTION);
169
- }
170
-
171
- get _ariaHandlesText() {
172
- const isRTL = this.effectiveDir === "rtl";
173
- const isReversed = this._areValuesReversed();
174
- const ariaHandlesText = {};
175
-
176
- if ((isRTL && !isReversed) || (!isRTL && isReversed)) {
177
- ariaHandlesText.startHandleText = RangeSlider.i18nBundle.getText(RANGE_SLIDER_END_HANDLE_DESCRIPTION);
178
- ariaHandlesText.endHandleText = RangeSlider.i18nBundle.getText(RANGE_SLIDER_START_HANDLE_DESCRIPTION);
179
- } else {
180
- ariaHandlesText.startHandleText = RangeSlider.i18nBundle.getText(RANGE_SLIDER_START_HANDLE_DESCRIPTION);
181
- ariaHandlesText.endHandleText = RangeSlider.i18nBundle.getText(RANGE_SLIDER_END_HANDLE_DESCRIPTION);
182
- }
183
-
184
- return ariaHandlesText;
185
- }
186
-
187
- /**
188
- * Check if the previously saved state is outdated. That would mean
189
- * either it is the initial rendering or that a property has been changed
190
- * programmatically - because the previous state is always updated in
191
- * the interaction handlers.
192
- *
193
- * Normalize current properties, update the previously stored state.
194
- * Update the visual UI representation of the Slider.
195
- *
196
- */
197
- onBeforeRendering() {
198
- if (!this.isCurrentStateOutdated()) {
199
- return;
200
- }
201
-
202
- this.notResized = true;
203
- this.syncUIAndState("startValue", "endValue");
204
- this._updateHandlesAndRange(null);
205
- }
206
-
207
- _onfocusin(event) {
208
- // If this is the initial focusin of the component save its initial
209
- // value properties so they could be restored on ESC key press
210
- if (!this._getInitialValue("endValue")) {
211
- this._setInitialValue("startValue", this.startValue);
212
- this._setInitialValue("endValue", this.endValue);
213
- }
214
-
215
- if (this.showTooltip) {
216
- this._tooltipVisibility = SliderBase.TOOLTIP_VISIBILITY.VISIBLE;
217
- }
218
- }
219
-
220
- /**
221
- * Handles focus out event of the focusable components inner elements.
222
- * Prevent focusout when the focus is getting initially set within the slider before the
223
- * slider customElement itself is finished focusing.
224
- *
225
- * Prevents the focus from leaving the Range Slider when the focus is managed between
226
- * its inner elements in result of user interactions.
227
- *
228
- * Resets the stored Range Slider's initial values saved when it was first focused
229
- *
230
- * @private
231
- */
232
- _onfocusout(event) {
233
- if (this._isFocusing()) {
234
- this._preventFocusOut();
235
- return;
236
- }
237
-
238
- this._setAffectedValue(null);
239
- this._setInitialValue("startValue", null);
240
- this._setInitialValue("endValue", null);
241
-
242
- if (this.showTooltip) {
243
- this._tooltipVisibility = SliderBase.TOOLTIP_VISIBILITY.HIDDEN;
244
- }
245
- }
246
-
247
- /**
248
- * Handles keyup logic. If one of the handles came across the other
249
- * swap the start and end values. Reset the affected value by the finished
250
- * user interaction.
251
- *
252
- * @private
253
- */
254
- _onkeyup(event) {
255
- super._onkeyup(event);
256
-
257
- this._swapValues();
258
- this._setAffectedValue(null);
259
- }
260
-
261
- _handleActionKeyPress(event) {
262
- if (isEscape(event)) {
263
- this.update(null, this._getInitialValue("startValue"), this._getInitialValue("endValue"));
264
- return;
265
- }
266
-
267
- // Set the target of the interaction based on the focused inner element
268
- this._setAffectedValueByFocusedElement();
269
-
270
- const min = this._effectiveMin;
271
- const max = this._effectiveMax;
272
- const affectedValue = this._valueAffected;
273
-
274
- // If home/end key is pressed and no single handle is focused the active element
275
- // is the range selection - update both start and end values. Otherwise, if 'home'
276
- // is pressed the 'startValue'will be used for the start-handle offset calculation,
277
- // if 'End' is pressed - the 'endValue' will be used for the end-handle update.
278
- if ((isEnd(event) || isHome(event)) && !affectedValue) {
279
- this._homeEndForSelectedRange(event, isHome(event) ? "startValue" : "endValue", min, max);
280
- return;
281
- }
282
-
283
- // Calculate how much the value should be increased/decreased based on the action key
284
- const newValueOffset = this._handleActionKeyPressBase(event, affectedValue);
285
-
286
- if (!newValueOffset) {
287
- return;
288
- }
289
-
290
- // Update a single value if one of the handles is focused or the range if not already at min or max
291
- if (affectedValue && !this._isPressInCurrentRange) {
292
- const newValue = this.constructor.clipValue(newValueOffset + this[affectedValue], min, max);
293
- this.update(affectedValue, newValue, null);
294
- } else if ((newValueOffset < 0 && this.startValue > min) || (newValueOffset > 0 && this.endValue < max)) {
295
- const newStartValue = this.constructor.clipValue(newValueOffset + this.startValue, min, max);
296
- const newEndValue = this.constructor.clipValue(newValueOffset + this.endValue, min, max);
297
- this.update(affectedValue, newStartValue, newEndValue);
298
- }
299
- }
300
-
301
- /**
302
- * Determines affected value (start/end) depending on the currently
303
- * active inner element within the Range Slider - used in the keyboard handling.
304
- *
305
- * @private
306
- */
307
- _setAffectedValueByFocusedElement() {
308
- if (this.shadowRoot.activeElement === this._startHandle) {
309
- this._setAffectedValue(RangeSlider.VALUES.start);
310
- }
311
-
312
- if (this.shadowRoot.activeElement === this._endHandle) {
313
- this._setAffectedValue(RangeSlider.VALUES.end);
314
- }
315
-
316
- if (this.shadowRoot.activeElement === this._progressBar) {
317
- this._setAffectedValue(null);
318
- }
319
-
320
- this._setIsPressInCurrentRange(!this._valueAffected);
321
- }
322
-
323
- /**
324
- * Calculates the start and end values when the 'Home" or 'End' keys
325
- * are pressed on the selected range bar.
326
- *
327
- * @private
328
- */
329
- _homeEndForSelectedRange(event, affectedValue, min, max) {
330
- const newValueOffset = this._handleActionKeyPressBase(event, affectedValue);
331
- const newStartValue = this.constructor.clipValue(newValueOffset + this.startValue, min, max);
332
- const newEndValue = this.constructor.clipValue(newValueOffset + this.endValue, min, max);
333
-
334
- this.update(null, newStartValue, newEndValue);
335
- }
336
-
337
- /**
338
- * Update values, stored inner state and the visual UI representation of the component.
339
- * If no specific type of value property is passed - the range is selected - update both handles,
340
- * otherwise update the handle corresponding to the affected by the user interacton value prop.
341
- *
342
- * @private
343
- */
344
- update(affectedValue, startValue, endValue) {
345
- if (!affectedValue) {
346
- this.updateValue("startValue", startValue);
347
- this.updateValue("endValue", endValue);
348
- this._updateHandlesAndRange(null);
349
- } else {
350
- const newValue = startValue;
351
- this._updateHandlesAndRange(newValue);
352
- this.updateValue(affectedValue, newValue);
353
- }
354
- }
355
-
356
- /**
357
- * Called when the user starts interacting with the slider
358
- *
359
- * @private
360
- */
361
- _onmousedown(event) {
362
- // If step is 0 no interaction is available because there is no constant
363
- // (equal for all user environments) quantitative representation of the value
364
- if (this.disabled || this._effectiveStep === 0) {
365
- return;
366
- }
367
-
368
- // Calculate the new value from the press position of the event
369
- const newValue = this.handleDownBase(event);
370
-
371
- // Determine the rest of the needed details from the start of the interaction.
372
- this._saveInteractionStartData(event, newValue);
373
-
374
- this.rangePressed = this._isPressInCurrentRange;
375
-
376
- // Do not yet update the RangeSlider if press is in range or over a handle.
377
- if (this._isPressInCurrentRange || this._handeIsPressed) {
378
- this._handeIsPressed = false;
379
- return;
380
- }
381
-
382
- // Update Slider UI and internal state
383
- this.update(this._valueAffected, newValue, null);
384
- }
385
-
386
- /**
387
- * Determines and saves needed values from the start of the interaction:
388
- *
389
- * Is the value calculated is within the currently selected range;
390
- * Initial pageX position of the start handle affected by the interaction;
391
- * Initial pageX value of the pressed postion;
392
- * Affected value property by the action;
393
- *
394
- * @private
395
- */
396
- _saveInteractionStartData(event, newValue) {
397
- const progressBarDom = this.shadowRoot.querySelector(".ui5-slider-progress").getBoundingClientRect();
398
-
399
- // Save the state of the value properties on the start of the interaction
400
- this._startValueAtBeginningOfAction = this.startValue;
401
- this._endValueAtBeginningOfAction = this.endValue;
402
-
403
- // Save the initial press point coordinates (position)
404
- this._initialPageXPosition = this.constructor.getPageXValueFromEvent(event);
405
- // Which element of the Range Slider is pressed and which value property to be modified on further interaction
406
- this._pressTargetAndAffectedValue(this._initialPageXPosition, newValue);
407
- // Use the progress bar to save the initial coordinates of the start-handle when the interaction begins.
408
- this._initialStartHandlePageX = this.directionStart === "left" ? progressBarDom.left : progressBarDom.right;
409
- }
410
-
411
- /**
412
- * Called when the user moves the slider
413
- *
414
- * @private
415
- */
416
- _handleMove(event) {
417
- event.preventDefault();
418
-
419
- // If 'step' is 0 no interaction is available as there is no constant quantitative representation of the value
420
- if (this.disabled || this._effectiveStep === 0) {
421
- return;
422
- }
423
-
424
- // Update UI and state when dragging a single Range Slider handle
425
- if (!this._isPressInCurrentRange) {
426
- this._updateValueOnHandleDrag(event);
427
- return;
428
- }
429
-
430
- // Updates UI and state when dragging of the whole selected range
431
- this._updateValueOnRangeDrag(event);
432
- }
433
-
434
- /**
435
- * Updates UI and state when dragging a single Range Slider handle
436
- *
437
- * @private
438
- */
439
- _updateValueOnHandleDrag(event) {
440
- const newValue = this.constructor.getValueFromInteraction(event, this._effectiveStep, this._effectiveMin, this._effectiveMax, this.getBoundingClientRect(), this.directionStart);
441
- this.update(this._valueAffected, newValue, null);
442
- }
443
-
444
- /**
445
- * Updates UI and state when dragging of the whole selected range
446
- *
447
- * @private
448
- */
449
- _updateValueOnRangeDrag(event) {
450
- // Calculate the new 'start' and 'end' values from the offset between the original press point and the current position of the mouse
451
- const currentPageXPos = this.constructor.getPageXValueFromEvent(event);
452
- const newValues = this._calculateRangeOffset(currentPageXPos, this._initialStartHandlePageX);
453
-
454
- // No matter the which value is set as the one to be modified (by prev. user action) we want to modify both of them
455
- this._setAffectedValue(null);
456
-
457
- // Update the UI and the state acccording to the calculated new values
458
- this.update(null, newValues[0], newValues[1]);
459
- }
460
-
461
- _handleUp() {
462
- if (this.startValue !== this._startValueAtBeginningOfAction || this.endValue !== this._endValueAtBeginningOfAction) {
463
- this.fireEvent("change");
464
- }
465
-
466
- this._swapValues();
467
- this._setAffectedValueByFocusedElement();
468
- this._setAffectedValue(null);
469
-
470
- this._startValueAtBeginningOfAction = null;
471
- this._endValueAtBeginningOfAction = null;
472
- this._setIsPressInCurrentRange(false);
473
-
474
- this.handleUpBase();
475
-
476
- this.rangePressed = false;
477
- }
478
-
479
- /**
480
- * Determines where the press occured and which values of the Range Slider
481
- * handles should be updated on further interaction.
482
- *
483
- * If the press is not in the selected range or over one of the Range Slider handles
484
- * determines which one from the value/endValue properties has to be updated
485
- * after the user action (based on closest handle).
486
- *
487
- * Set flags if the press is over a handle or in the selected range,
488
- * in such cases no values are changed on interaction start, but could be
489
- * updated later when dragging.
490
- *
491
- * @private
492
- */
493
- _pressTargetAndAffectedValue(clientX, value) {
494
- const startHandle = this.shadowRoot.querySelector(".ui5-slider-handle--start");
495
- const endHandle = this.shadowRoot.querySelector(".ui5-slider-handle--end");
496
-
497
- // Check if the press point is in the bounds of any of the Range Slider handles
498
- const handleStartDomRect = startHandle.getBoundingClientRect();
499
- const handleEndDomRect = endHandle.getBoundingClientRect();
500
- const inHandleStartDom = clientX >= handleStartDomRect.left && clientX <= handleStartDomRect.right;
501
- const inHandleEndDom = clientX >= handleEndDomRect.left && clientX <= handleEndDomRect.right;
502
-
503
- // Remove the flag for value in current range if the press action is over one of the handles
504
- if (inHandleEndDom || inHandleStartDom) {
505
- this._handeIsPressed = true;
506
- }
507
-
508
- // Return that handle that is closer to the press point
509
- if (inHandleEndDom || value > this.endValue) {
510
- this._setAffectedValue(RangeSlider.VALUES.end);
511
- }
512
-
513
- // If one of the handle is pressed return that one
514
- if (inHandleStartDom || value < this.startValue) {
515
- this._setAffectedValue(RangeSlider.VALUES.start);
516
- }
517
-
518
- // Flag if press is in the current select range
519
- const isNewValueInCurrentRange = value >= this._startValueAtBeginningOfAction && value <= this._endValueAtBeginningOfAction;
520
- this._setIsPressInCurrentRange(!(this._valueAffected || this._handeIsPressed) ? isNewValueInCurrentRange : false);
521
- }
522
-
523
- /**
524
- * Sets the value property (start/end) that will get updated
525
- * by a user action depending on that user action's characteristics
526
- * - mouse press position - cursor coordinates relative to the start/end handles
527
- * - selected inner element via a keyboard navigation
528
- *
529
- * @param {string} valuePropAffectedByInteraction The value that will get modified by the interaction
530
- * @private
531
- */
532
- _setAffectedValue(valuePropAffectedByInteraction) {
533
- this._valueAffected = valuePropAffectedByInteraction;
534
-
535
- // If the values have been swapped reset the reversed flag
536
- if (this._areValuesReversed()) {
537
- this._setValuesAreReversed();
538
- }
539
- }
540
-
541
- /**
542
- * Flag if press action is made on the currently selected range of values
543
- *
544
- * @param {boolean} isPressInCurrentRange Did the current press action occur in the current range (between the two handles)
545
- * @private
546
- */
547
- _setIsPressInCurrentRange(isPressInCurrentRange) {
548
- this._isPressInCurrentRange = isPressInCurrentRange;
549
- }
550
-
551
- /**
552
- * Manage the focus between the focusable inner elements within the component.
553
- *
554
- * On initial focusin or if the whole range is affected by the user interaction
555
- * set the focus on the progress selection, otherwise on one of the Range Slider
556
- * handles based on the determined affected value by the user action.
557
- *
558
- * If one of the handles came across the other one in result of a user action
559
- * switch the focus between them to keep it visually consistent.
560
- *
561
- * Note:
562
- * In some cases this function is going to get called twice on one user action.
563
- *
564
- * 1. When the focus is initially set to an inner element it is done in the very beginning,
565
- * of an interaction - on 'mousedown' and 'keydown' events. The focus of the host custom element
566
- * is still not being received, causining an immediate focusout that we prevent by
567
- * calling this function once again.
568
- *
569
- * 2. When the focused is manually switched from one inner element to another.
570
- * The focusout handler is one and the same for all focusable parts within the
571
- * Range Slider and when is called it checks if it should keep the focus within
572
- * the component and which part of it should get focused if that is the case.
573
- *
574
- * @protected
575
- */
576
- focusInnerElement() {
577
- const isReversed = this._areValuesReversed();
578
- const affectedValue = this._valueAffected;
579
-
580
- if (this._isPressInCurrentRange || !affectedValue) {
581
- this._progressBar.focus();
582
- }
583
-
584
- if ((affectedValue === RangeSlider.VALUES.start && !isReversed) || (affectedValue === RangeSlider.VALUES.end && isReversed)) {
585
- this._startHandle.focus();
586
- }
587
-
588
- if ((affectedValue === RangeSlider.VALUES.end && !isReversed) || (affectedValue === RangeSlider.VALUES.start && isReversed)) {
589
- this._endHandle.focus();
590
- }
591
- }
592
-
593
- /**
594
- * Calculates startValue/endValue properties when the whole range is moved.
595
- *
596
- * Uses the change of the position of the start handle and adds the initially
597
- * selected range to it, to determine the whole range offset.
598
- *
599
- * @param {Integer} currentPageXPos The current horizontal position of the cursor/touch
600
- * @param {Integer} initialStartHandlePageXPos The initial horizontal position of the start handle
601
- *
602
- * @private
603
- */
604
- _calculateRangeOffset(currentPageXPos, initialStartHandlePageXPos) {
605
- // Return the current values if there is no difference in the
606
- // possitions of the initial press and the current pointer
607
- if (this._initialPageXPosition === currentPageXPos) {
608
- return [this.startValue, this.endValue];
609
- }
610
-
611
- const min = this._effectiveMin;
612
- const max = this._effectiveMax;
613
- const selectedRange = this.endValue - this.startValue;
614
-
615
- // Computes the new value based on the difference of the current cursor location from the start of the interaction
616
- let startValue = this._calculateStartValueByOffset(currentPageXPos, initialStartHandlePageXPos);
617
-
618
- // When the end handle reaches the max possible value prevent the start handle from moving
619
- // And the opposite - if the start handle reaches the beginning of the slider keep the initially selected range.
620
- startValue = this.constructor.clipValue(startValue, min, max - selectedRange);
621
-
622
- return [startValue, startValue + selectedRange];
623
- }
624
-
625
- /**
626
- * Computes the new value based on the difference of the current cursor location from the
627
- * start of the interaction.
628
- *
629
- * @param {Integer} currentPageXPos The current horizontal position of the cursor/touch
630
- * @param {Integer} initialStartHandlePageXPos The initial horizontal position of the start handle
631
- *
632
- * @private
633
- */
634
- _calculateStartValueByOffset(currentPageXPos, initialStartHandlePageXPos) {
635
- const min = this._effectiveMin;
636
- const max = this._effectiveMax;
637
- const step = this._effectiveStep;
638
- const dom = this.getBoundingClientRect();
639
-
640
- let startValue;
641
- let startValuePageX;
642
- let positionOffset;
643
-
644
- /* Depending on the dragging direction:
645
- - calculate the new position of the start handle from its old pageX value combined with the movement offset;
646
- - calculate the start value based on its new pageX coordinates;
647
- - 'stepify' the calculated value based on the specified step property; */
648
- if (currentPageXPos > this._initialPageXPosition) {
649
- // Difference between the new position of the pointer and when the press event initial occured
650
- positionOffset = currentPageXPos - this._initialPageXPosition;
651
-
652
- startValuePageX = initialStartHandlePageXPos + positionOffset;
653
- startValue = this.constructor.computedValueFromPageX(startValuePageX, min, max, dom, this.directionStart);
654
- startValue = this.constructor.getSteppedValue(startValue, step, min);
655
- } else {
656
- positionOffset = this._initialPageXPosition - currentPageXPos;
657
- startValuePageX = initialStartHandlePageXPos - positionOffset;
658
- startValue = this.constructor.computedValueFromPageX(startValuePageX, min, max, dom, this.directionStart);
659
- startValue = this.constructor.getSteppedValue(startValue, step, min);
660
- }
661
-
662
- return startValue;
663
- }
664
-
665
- /**
666
- * Updates the visual representation of the component by calculating
667
- * the styles of the handles and the range selection based on the new state.
668
- *
669
- * @private
670
- */
671
- _updateHandlesAndRange(newValue) {
672
- const max = this._effectiveMax;
673
- const min = this._effectiveMin;
674
- const prevStartValue = this.getStoredPropertyState("startValue");
675
- const prevEndValue = this.getStoredPropertyState("endValue");
676
- const affectedValue = this._valueAffected;
677
-
678
- // The value according to which we update the UI can be either the startValue
679
- // or the endValue property. It is determined in _getClosestHandle()
680
- // depending on to which handle is closer the user interaction.
681
- if (affectedValue === RangeSlider.VALUES.start) {
682
- this._selectedRange = (prevEndValue - newValue) / (max - min);
683
- this._firstHandlePositionFromStart = ((newValue - min) / (max - min)) * 100;
684
- } else if (affectedValue === RangeSlider.VALUES.end) {
685
- this._selectedRange = ((newValue - prevStartValue)) / (max - min);
686
- this._secondHandlePositionFromStart = ((newValue - min) / (max - min)) * 100;
687
- } else {
688
- // When both values are changed - UI sync or moving the whole selected range:
689
- this._selectedRange = ((this.endValue - this.startValue)) / (max - min);
690
- this._firstHandlePositionFromStart = ((this.startValue - min) / (max - min)) * 100;
691
- this._secondHandlePositionFromStart = ((this.endValue - min) / (max - min)) * 100;
692
- }
693
- }
694
-
695
- /**
696
- * Swaps the start and end values of the handles if one came accros the other:
697
- * - If the start value is greater than the endValue swap them and their handles
698
- * - If the endValue become less than the start value swap them and their handles
699
- *
700
- * Switches the focus to the opposite of the currently focused handle.
701
- *
702
- * Note: Only the property values are reversed, the DOM elements of the handles
703
- * corresponding to them are never switched.
704
- *
705
- * @private
706
- */
707
- _swapValues() {
708
- const affectedValue = this._valueAffected;
709
-
710
- if (affectedValue === RangeSlider.VALUES.start && this.startValue > this.endValue) {
711
- const prevEndValue = this.endValue;
712
- this.endValue = this.startValue;
713
- this.startValue = prevEndValue;
714
-
715
- this._setValuesAreReversed();
716
- this.focusInnerElement();
717
- }
718
-
719
- if (affectedValue === RangeSlider.VALUES.end && this.endValue < this.startValue) {
720
- const prevStartValue = this.startValue;
721
- this.startValue = this.endValue;
722
- this.endValue = prevStartValue;
723
-
724
- this._setValuesAreReversed();
725
- this.focusInnerElement();
726
- }
727
- }
728
-
729
- /**
730
- * Flag that we have swapped the values of the 'start' and 'end' properties,
731
- * to correctly switch the focus within the component from one handle to another
732
- * when the swapping is finished. As we only swap property values and not
733
- * the handle elements themselves, we must also swap their focus.
734
- *
735
- * @private
736
- */
737
- _setValuesAreReversed() {
738
- this._reversedValues = !this._reversedValues;
739
- }
740
-
741
- _areValuesReversed() {
742
- return this._reversedValues;
743
- }
744
-
745
- get tickmarksObject() {
746
- const count = this._tickmarksCount;
747
- const arr = [];
748
-
749
- if (this._hiddenTickmarks) {
750
- return [false, false];
751
- }
752
-
753
- for (let i = 0; i <= count; i++) {
754
- const isBiggerThanStartValue = this._effectiveMin + (i * this.step) >= this.startValue;
755
- const isBiggerThanEndValue = this._effectiveMin + (i * this.step) <= this.endValue;
756
-
757
- arr.push(isBiggerThanStartValue && isBiggerThanEndValue);
758
- }
759
-
760
- return arr;
761
- }
762
-
763
- get _startHandle() {
764
- return this.shadowRoot.querySelector(".ui5-slider-handle--start");
765
- }
766
-
767
- get _endHandle() {
768
- return this.shadowRoot.querySelector(".ui5-slider-handle--end");
769
- }
770
-
771
- get _progressBar() {
772
- return this.shadowRoot.querySelector(".ui5-slider-progress");
773
- }
774
-
775
- get _ariaLabelledByStartHandleRefs() {
776
- return [`${this._id}-accName`, `${this._id}-startHandleDesc`].join(" ").trim();
777
- }
778
-
779
- get _ariaLabelledByEndHandleRefs() {
780
- return [`${this._id}-accName`, `${this._id}-endHandleDesc`].join(" ").trim();
781
- }
782
-
783
- get _ariaLabelledByProgressBarRefs() {
784
- return [`${this._id}-accName`, `${this._id}-sliderDesc`].join(" ").trim();
785
- }
786
-
787
- get styles() {
788
- return {
789
- progress: {
790
- "width": `${this._selectedRange * 100}%`,
791
- "transform-origin": `${this.directionStart} top`,
792
- [this.directionStart]: `${this._firstHandlePositionFromStart}%`,
793
- },
794
- startHandle: {
795
- [this.directionStart]: `${this._firstHandlePositionFromStart}%`,
796
- },
797
- endHandle: {
798
- [this.directionStart]: `${this._secondHandlePositionFromStart}%`,
799
- },
800
- tickmarks: {
801
- "background": `${this._tickmarks}`,
802
- },
803
- label: {
804
- "width": `${this._labelWidth}%`,
805
- },
806
- labelContainer: {
807
- "width": `100%`,
808
- [this.directionStart]: `-${this._labelWidth / 2}%`,
809
- },
810
- tooltip: {
811
- "visibility": `${this._tooltipVisibility}`,
812
- },
813
- };
814
- }
815
-
816
- static async onDefine() {
817
- RangeSlider.i18nBundle = await getI18nBundle("@ui5/webcomponents");
818
- }
819
- }
820
-
92
+ let RangeSlider = RangeSlider_1 = class RangeSlider extends SliderBase {
93
+ static get template() {
94
+ return RangeSliderTemplate;
95
+ }
96
+ static get dependencies() {
97
+ return [Icon];
98
+ }
99
+ static get styles() {
100
+ return [SliderBase.styles, rangeSliderStyles];
101
+ }
102
+ constructor() {
103
+ super();
104
+ this._isPressInCurrentRange = false;
105
+ this._handeIsPressed = false;
106
+ this._reversedValues = false;
107
+ this._stateStorage.startValue = undefined;
108
+ this._stateStorage.endValue = undefined;
109
+ }
110
+ get tooltipStartValue() {
111
+ const ctor = this.constructor;
112
+ const stepPrecision = ctor._getDecimalPrecisionOfNumber(this._effectiveStep);
113
+ return this.startValue.toFixed(stepPrecision);
114
+ }
115
+ get tooltipEndValue() {
116
+ const ctor = this.constructor;
117
+ const stepPrecision = ctor._getDecimalPrecisionOfNumber(this._effectiveStep);
118
+ return this.endValue.toFixed(stepPrecision);
119
+ }
120
+ get _ariaDisabled() {
121
+ return this.disabled || undefined;
122
+ }
123
+ get _ariaLabelledByText() {
124
+ return RangeSlider_1.i18nBundle.getText(RANGE_SLIDER_ARIA_DESCRIPTION);
125
+ }
126
+ get _ariaHandlesText() {
127
+ const isRTL = this.effectiveDir === "rtl";
128
+ const isReversed = this._areValuesReversed();
129
+ const ariaHandlesText = {};
130
+ if ((isRTL && !isReversed) || (!isRTL && isReversed)) {
131
+ ariaHandlesText.startHandleText = RangeSlider_1.i18nBundle.getText(RANGE_SLIDER_END_HANDLE_DESCRIPTION);
132
+ ariaHandlesText.endHandleText = RangeSlider_1.i18nBundle.getText(RANGE_SLIDER_START_HANDLE_DESCRIPTION);
133
+ }
134
+ else {
135
+ ariaHandlesText.startHandleText = RangeSlider_1.i18nBundle.getText(RANGE_SLIDER_START_HANDLE_DESCRIPTION);
136
+ ariaHandlesText.endHandleText = RangeSlider_1.i18nBundle.getText(RANGE_SLIDER_END_HANDLE_DESCRIPTION);
137
+ }
138
+ return ariaHandlesText;
139
+ }
140
+ /**
141
+ * Check if the previously saved state is outdated. That would mean
142
+ * either it is the initial rendering or that a property has been changed
143
+ * programmatically - because the previous state is always updated in
144
+ * the interaction handlers.
145
+ *
146
+ * Normalize current properties, update the previously stored state.
147
+ * Update the visual UI representation of the Slider.
148
+ *
149
+ */
150
+ onBeforeRendering() {
151
+ if (!this.isCurrentStateOutdated()) {
152
+ return;
153
+ }
154
+ this.notResized = true;
155
+ this.syncUIAndState();
156
+ this._updateHandlesAndRange(0);
157
+ }
158
+ syncUIAndState() {
159
+ // Validate step and update the stored state for the step property.
160
+ if (this.isPropertyUpdated("step")) {
161
+ this._validateStep(this.step);
162
+ this.storePropertyState("step");
163
+ }
164
+ // Recalculate the tickmarks and labels and update the stored state.
165
+ if (this.isPropertyUpdated("min", "max", "startValue", "endValue")) {
166
+ this.storePropertyState("min", "max");
167
+ // Here the value props are changed programmatically (not by user interaction)
168
+ // and it won't be "stepified" (rounded to the nearest step). 'Clip' them within
169
+ // min and max bounderies and update the previous state reference.
170
+ const normalizedStartValue = SliderBase.clipValue(this.startValue, this._effectiveMin, this._effectiveMax);
171
+ this.startValue = normalizedStartValue;
172
+ this.updateStateStorageAndFireInputEvent("startValue");
173
+ this.storePropertyState("startValue");
174
+ const normalizedEndValue = SliderBase.clipValue(this.endValue, this._effectiveMin, this._effectiveMax);
175
+ this.endValue = normalizedEndValue;
176
+ this.updateStateStorageAndFireInputEvent("endValue");
177
+ this.storePropertyState("endValue");
178
+ }
179
+ // Labels must be updated if any of the min/max/step/labelInterval props are changed
180
+ if (this.labelInterval && this.showTickmarks) {
181
+ this._createLabels();
182
+ }
183
+ // Update the stored state for the labelInterval, if changed
184
+ if (this.isPropertyUpdated("labelInterval")) {
185
+ this.storePropertyState("labelInterval");
186
+ }
187
+ }
188
+ _onfocusin() {
189
+ // If this is the initial focusin of the component save its initial
190
+ // value properties so they could be restored on ESC key press
191
+ if (!this._endValueInitial) {
192
+ this._startValueInitial = this.startValue;
193
+ this._endValueInitial = this.endValue;
194
+ }
195
+ if (this.showTooltip) {
196
+ this._tooltipVisibility = SliderBase.TOOLTIP_VISIBILITY.VISIBLE;
197
+ }
198
+ }
199
+ /**
200
+ * Handles focus out event of the focusable components inner elements.
201
+ * Prevent focusout when the focus is getting initially set within the slider before the
202
+ * slider customElement itself is finished focusing.
203
+ *
204
+ * Prevents the focus from leaving the Range Slider when the focus is managed between
205
+ * its inner elements in result of user interactions.
206
+ *
207
+ * Resets the stored Range Slider's initial values saved when it was first focused
208
+ *
209
+ * @private
210
+ */
211
+ _onfocusout() {
212
+ if (this._isFocusing()) {
213
+ this._preventFocusOut();
214
+ return;
215
+ }
216
+ this._setAffectedValue(undefined);
217
+ this._startValueInitial = undefined;
218
+ this._endValueInitial = undefined;
219
+ if (this.showTooltip) {
220
+ this._tooltipVisibility = SliderBase.TOOLTIP_VISIBILITY.HIDDEN;
221
+ }
222
+ }
223
+ /**
224
+ * Handles keyup logic. If one of the handles came across the other
225
+ * swap the start and end values. Reset the affected value by the finished
226
+ * user interaction.
227
+ *
228
+ * @private
229
+ */
230
+ _onkeyup() {
231
+ super._onkeyup();
232
+ this._swapValues();
233
+ this._setAffectedValue(undefined);
234
+ }
235
+ _handleActionKeyPress(e) {
236
+ if (isEscape(e)) {
237
+ this.update(undefined, this._startValueInitial, this._endValueInitial);
238
+ return;
239
+ }
240
+ // Set the target of the interaction based on the focused inner element
241
+ this._setAffectedValueByFocusedElement();
242
+ const min = this._effectiveMin;
243
+ const max = this._effectiveMax;
244
+ const affectedValue = this._valueAffected;
245
+ // If home/end key is pressed and no single handle is focused the active element
246
+ // is the range selection - update both start and end values. Otherwise, if 'home'
247
+ // is pressed the 'startValue'will be used for the start-handle offset calculation,
248
+ // if 'End' is pressed - the 'endValue' will be used for the end-handle update.
249
+ if ((isEnd(e) || isHome(e)) && !affectedValue) {
250
+ this._homeEndForSelectedRange(e, isHome(e) ? "startValue" : "endValue", min, max);
251
+ return;
252
+ }
253
+ // Calculate how much the value should be increased/decreased based on the action key
254
+ const newValueOffset = this._handleActionKeyPressBase(e, affectedValue);
255
+ if (!newValueOffset) {
256
+ return;
257
+ }
258
+ // Update a single value if one of the handles is focused or the range if not already at min or max
259
+ const ctor = this.constructor;
260
+ if (affectedValue && !this._isPressInCurrentRange) {
261
+ const propValue = this[affectedValue];
262
+ const newValue = ctor.clipValue(newValueOffset + propValue, min, max);
263
+ this.update(affectedValue, newValue, undefined);
264
+ }
265
+ else if ((newValueOffset < 0 && this.startValue > min) || (newValueOffset > 0 && this.endValue < max)) {
266
+ const newStartValue = ctor.clipValue(newValueOffset + this.startValue, min, max);
267
+ const newEndValue = ctor.clipValue(newValueOffset + this.endValue, min, max);
268
+ this.update(affectedValue, newStartValue, newEndValue);
269
+ }
270
+ }
271
+ /**
272
+ * Determines affected value (start/end) depending on the currently
273
+ * active inner element within the Range Slider - used in the keyboard handling.
274
+ *
275
+ * @private
276
+ */
277
+ _setAffectedValueByFocusedElement() {
278
+ if (this.shadowRoot.activeElement === this._startHandle) {
279
+ this._setAffectedValue("startValue");
280
+ }
281
+ if (this.shadowRoot.activeElement === this._endHandle) {
282
+ this._setAffectedValue("endValue");
283
+ }
284
+ if (this.shadowRoot.activeElement === this._progressBar) {
285
+ this._setAffectedValue(undefined);
286
+ }
287
+ this._setIsPressInCurrentRange(!this._valueAffected);
288
+ }
289
+ /**
290
+ * Calculates the start and end values when the 'Home" or 'End' keys
291
+ * are pressed on the selected range bar.
292
+ *
293
+ * @private
294
+ */
295
+ _homeEndForSelectedRange(e, affectedValue, min, max) {
296
+ const newValueOffset = this._handleActionKeyPressBase(e, affectedValue);
297
+ const ctor = this.constructor;
298
+ const newStartValue = ctor.clipValue(newValueOffset + this.startValue, min, max);
299
+ const newEndValue = ctor.clipValue(newValueOffset + this.endValue, min, max);
300
+ this.update(undefined, newStartValue, newEndValue);
301
+ }
302
+ /**
303
+ * Update values, stored inner state and the visual UI representation of the component.
304
+ * If no specific type of value property is passed - the range is selected - update both handles,
305
+ * otherwise update the handle corresponding to the affected by the user interacton value prop.
306
+ *
307
+ * @private
308
+ */
309
+ update(affectedValue, startValue, endValue) {
310
+ if (!affectedValue) {
311
+ this.startValue = startValue;
312
+ this.updateStateStorageAndFireInputEvent("startValue");
313
+ this.endValue = endValue;
314
+ this.updateStateStorageAndFireInputEvent("endValue");
315
+ this._updateHandlesAndRange(0);
316
+ }
317
+ else {
318
+ const newValue = startValue;
319
+ this._updateHandlesAndRange(newValue || 0);
320
+ if (affectedValue === "startValue") {
321
+ this.startValue = newValue;
322
+ this.updateStateStorageAndFireInputEvent("startValue");
323
+ }
324
+ if (affectedValue === "endValue") {
325
+ this.endValue = newValue;
326
+ this.updateStateStorageAndFireInputEvent("endValue");
327
+ }
328
+ }
329
+ }
330
+ /**
331
+ * Called when the user starts interacting with the slider
332
+ *
333
+ * @private
334
+ */
335
+ _onmousedown(e) {
336
+ // If step is 0 no interaction is available because there is no constant
337
+ // (equal for all user environments) quantitative representation of the value
338
+ if (this.disabled || this._effectiveStep === 0) {
339
+ return;
340
+ }
341
+ // Calculate the new value from the press position of the event
342
+ const newValue = this.handleDownBase(e);
343
+ // Determine the rest of the needed details from the start of the interaction.
344
+ this._saveInteractionStartData(e, newValue);
345
+ this.rangePressed = this._isPressInCurrentRange;
346
+ // Do not yet update the RangeSlider if press is in range or over a handle.
347
+ if (this._isPressInCurrentRange || this._handeIsPressed) {
348
+ this._handeIsPressed = false;
349
+ return;
350
+ }
351
+ // Update Slider UI and internal state
352
+ this.update(this._valueAffected, newValue, undefined);
353
+ }
354
+ /**
355
+ * Determines and saves needed values from the start of the interaction:
356
+ *
357
+ * Is the value calculated is within the currently selected range;
358
+ * Initial pageX position of the start handle affected by the interaction;
359
+ * Initial pageX value of the pressed postion;
360
+ * Affected value property by the action;
361
+ *
362
+ * @private
363
+ */
364
+ _saveInteractionStartData(e, newValue) {
365
+ const progressBarDom = this.shadowRoot.querySelector(".ui5-slider-progress").getBoundingClientRect();
366
+ // Save the state of the value properties on the start of the interaction
367
+ this._startValueAtBeginningOfAction = this.startValue;
368
+ this._endValueAtBeginningOfAction = this.endValue;
369
+ // Save the initial press point coordinates (position)
370
+ const ctor = this.constructor;
371
+ this._initialPageXPosition = ctor.getPageXValueFromEvent(e);
372
+ // Which element of the Range Slider is pressed and which value property to be modified on further interaction
373
+ this._pressTargetAndAffectedValue(this._initialPageXPosition, newValue);
374
+ // Use the progress bar to save the initial coordinates of the start-handle when the interaction begins.
375
+ this._initialStartHandlePageX = this.directionStart === "left" ? progressBarDom.left : progressBarDom.right;
376
+ }
377
+ /**
378
+ * Called when the user moves the slider
379
+ *
380
+ * @private
381
+ */
382
+ _handleMove(e) {
383
+ e.preventDefault();
384
+ // If 'step' is 0 no interaction is available as there is no constant quantitative representation of the value
385
+ if (this.disabled || this._effectiveStep === 0) {
386
+ return;
387
+ }
388
+ // Update UI and state when dragging a single Range Slider handle
389
+ if (!this._isPressInCurrentRange) {
390
+ this._updateValueOnHandleDrag(e);
391
+ return;
392
+ }
393
+ // Updates UI and state when dragging of the whole selected range
394
+ this._updateValueOnRangeDrag(e);
395
+ }
396
+ /**
397
+ * Updates UI and state when dragging a single Range Slider handle
398
+ *
399
+ * @private
400
+ */
401
+ _updateValueOnHandleDrag(event) {
402
+ const ctor = this.constructor;
403
+ const newValue = ctor.getValueFromInteraction(event, this._effectiveStep, this._effectiveMin, this._effectiveMax, this.getBoundingClientRect(), this.directionStart);
404
+ this.update(this._valueAffected, newValue, undefined);
405
+ }
406
+ /**
407
+ * Updates UI and state when dragging of the whole selected range
408
+ *
409
+ * @private
410
+ */
411
+ _updateValueOnRangeDrag(event) {
412
+ // Calculate the new 'start' and 'end' values from the offset between the original press point and the current position of the mouse
413
+ const ctor = this.constructor;
414
+ const currentPageXPos = ctor.getPageXValueFromEvent(event);
415
+ const newValues = this._calculateRangeOffset(currentPageXPos, this._initialStartHandlePageX);
416
+ // No matter the which value is set as the one to be modified (by prev. user action) we want to modify both of them
417
+ this._setAffectedValue(undefined);
418
+ // Update the UI and the state according to the calculated new values
419
+ this.update(undefined, newValues[0], newValues[1]);
420
+ }
421
+ _handleUp() {
422
+ this._swapValues();
423
+ this._setAffectedValueByFocusedElement();
424
+ this._setAffectedValue(undefined);
425
+ this._startValueAtBeginningOfAction = undefined;
426
+ this._endValueAtBeginningOfAction = undefined;
427
+ this._setIsPressInCurrentRange(false);
428
+ this.handleUpBase();
429
+ this.rangePressed = false;
430
+ if (this.startValue !== this._startValueAtBeginningOfAction || this.endValue !== this._endValueAtBeginningOfAction) {
431
+ this.fireEvent("change");
432
+ }
433
+ }
434
+ /**
435
+ * Determines where the press occured and which values of the Range Slider
436
+ * handles should be updated on further interaction.
437
+ *
438
+ * If the press is not in the selected range or over one of the Range Slider handles
439
+ * determines which one from the value/endValue properties has to be updated
440
+ * after the user action (based on closest handle).
441
+ *
442
+ * Set flags if the press is over a handle or in the selected range,
443
+ * in such cases no values are changed on interaction start, but could be
444
+ * updated later when dragging.
445
+ *
446
+ * @private
447
+ */
448
+ _pressTargetAndAffectedValue(clientX, value) {
449
+ const startHandle = this.shadowRoot.querySelector(".ui5-slider-handle--start");
450
+ const endHandle = this.shadowRoot.querySelector(".ui5-slider-handle--end");
451
+ // Check if the press point is in the bounds of any of the Range Slider handles
452
+ const handleStartDomRect = startHandle.getBoundingClientRect();
453
+ const handleEndDomRect = endHandle.getBoundingClientRect();
454
+ const inHandleStartDom = clientX >= handleStartDomRect.left && clientX <= handleStartDomRect.right;
455
+ const inHandleEndDom = clientX >= handleEndDomRect.left && clientX <= handleEndDomRect.right;
456
+ // Remove the flag for value in current range if the press action is over one of the handles
457
+ if (inHandleEndDom || inHandleStartDom) {
458
+ this._handeIsPressed = true;
459
+ }
460
+ // Return that handle that is closer to the press point
461
+ if (inHandleEndDom || value > this.endValue) {
462
+ this._setAffectedValue("endValue");
463
+ }
464
+ // If one of the handle is pressed return that one
465
+ if (inHandleStartDom || value < this.startValue) {
466
+ this._setAffectedValue("startValue");
467
+ }
468
+ // Flag if press is in the current select range
469
+ const isNewValueInCurrentRange = this._startValueAtBeginningOfAction !== undefined && this._endValueAtBeginningOfAction !== undefined && value >= this._startValueAtBeginningOfAction && value <= this._endValueAtBeginningOfAction;
470
+ this._setIsPressInCurrentRange(!(this._valueAffected || this._handeIsPressed) ? isNewValueInCurrentRange : false);
471
+ }
472
+ /**
473
+ * Sets the value property (start/end) that will get updated
474
+ * by a user action depending on that user action's characteristics
475
+ * - mouse press position - cursor coordinates relative to the start/end handles
476
+ * - selected inner element via a keyboard navigation
477
+ *
478
+ * @param {string} affectedValue The value that will get modified by the interaction
479
+ * @private
480
+ */
481
+ _setAffectedValue(affectedValue) {
482
+ this._valueAffected = affectedValue;
483
+ // If the values have been swapped reset the reversed flag
484
+ if (this._areValuesReversed()) {
485
+ this._setValuesAreReversed();
486
+ }
487
+ }
488
+ /**
489
+ * Flag if press action is made on the currently selected range of values
490
+ *
491
+ * @param {boolean} isPressInCurrentRange Did the current press action occur in the current range (between the two handles)
492
+ * @private
493
+ */
494
+ _setIsPressInCurrentRange(isPressInCurrentRange) {
495
+ this._isPressInCurrentRange = isPressInCurrentRange;
496
+ }
497
+ /**
498
+ * Manage the focus between the focusable inner elements within the component.
499
+ *
500
+ * On initial focusin or if the whole range is affected by the user interaction
501
+ * set the focus on the progress selection, otherwise on one of the Range Slider
502
+ * handles based on the determined affected value by the user action.
503
+ *
504
+ * If one of the handles came across the other one in result of a user action
505
+ * switch the focus between them to keep it visually consistent.
506
+ *
507
+ * Note:
508
+ * In some cases this function is going to get called twice on one user action.
509
+ *
510
+ * 1. When the focus is initially set to an inner element it is done in the very beginning,
511
+ * of an interaction - on 'mousedown' and 'keydown' events. The focus of the host custom element
512
+ * is still not being received, causining an immediate focusout that we prevent by
513
+ * calling this function once again.
514
+ *
515
+ * 2. When the focused is manually switched from one inner element to another.
516
+ * The focusout handler is one and the same for all focusable parts within the
517
+ * Range Slider and when is called it checks if it should keep the focus within
518
+ * the component and which part of it should get focused if that is the case.
519
+ *
520
+ * @protected
521
+ */
522
+ focusInnerElement() {
523
+ const isReversed = this._areValuesReversed();
524
+ const affectedValue = this._valueAffected;
525
+ if (this._isPressInCurrentRange || !affectedValue) {
526
+ this._progressBar.focus();
527
+ }
528
+ if ((affectedValue === "startValue" && !isReversed) || (affectedValue === "endValue" && isReversed)) {
529
+ this._startHandle.focus();
530
+ }
531
+ if ((affectedValue === "endValue" && !isReversed) || (affectedValue === "startValue" && isReversed)) {
532
+ this._endHandle.focus();
533
+ }
534
+ }
535
+ /**
536
+ * Calculates startValue/endValue properties when the whole range is moved.
537
+ *
538
+ * Uses the change of the position of the start handle and adds the initially
539
+ * selected range to it, to determine the whole range offset.
540
+ *
541
+ * @param {Integer} currentPageXPos The current horizontal position of the cursor/touch
542
+ * @param {Integer} initialStartHandlePageXPos The initial horizontal position of the start handle
543
+ *
544
+ * @private
545
+ */
546
+ _calculateRangeOffset(currentPageXPos, initialStartHandlePageXPos) {
547
+ // Return the current values if there is no difference in the
548
+ // positions of the initial press and the current pointer
549
+ if (this._initialPageXPosition === currentPageXPos) {
550
+ return [this.startValue, this.endValue];
551
+ }
552
+ const min = this._effectiveMin;
553
+ const max = this._effectiveMax;
554
+ const selectedRange = this.endValue - this.startValue;
555
+ // Computes the new value based on the difference of the current cursor location from the start of the interaction
556
+ let startValue = this._calculateStartValueByOffset(currentPageXPos, initialStartHandlePageXPos);
557
+ // When the end handle reaches the max possible value prevent the start handle from moving
558
+ // And the opposite - if the start handle reaches the beginning of the slider keep the initially selected range.
559
+ const ctor = this.constructor;
560
+ startValue = ctor.clipValue(startValue, min, max - selectedRange);
561
+ return [startValue, startValue + selectedRange];
562
+ }
563
+ /**
564
+ * Computes the new value based on the difference of the current cursor location from the
565
+ * start of the interaction.
566
+ *
567
+ * @param {Integer} currentPageXPos The current horizontal position of the cursor/touch
568
+ * @param {Integer} initialStartHandlePageXPos The initial horizontal position of the start handle
569
+ *
570
+ * @private
571
+ */
572
+ _calculateStartValueByOffset(currentPageXPos, initialStartHandlePageXPos) {
573
+ const min = this._effectiveMin;
574
+ const max = this._effectiveMax;
575
+ const step = this._effectiveStep;
576
+ const dom = this.getBoundingClientRect();
577
+ let startValue;
578
+ let startValuePageX;
579
+ let positionOffset;
580
+ /* Depending on the dragging direction:
581
+ - calculate the new position of the start handle from its old pageX value combined with the movement offset;
582
+ - calculate the start value based on its new pageX coordinates;
583
+ - 'stepify' the calculated value based on the specified step property; */
584
+ const ctor = this.constructor;
585
+ if (currentPageXPos > this._initialPageXPosition) {
586
+ // Difference between the new position of the pointer and when the press event initial occured
587
+ positionOffset = currentPageXPos - this._initialPageXPosition;
588
+ startValuePageX = initialStartHandlePageXPos + positionOffset;
589
+ startValue = ctor.computedValueFromPageX(startValuePageX, min, max, dom, this.directionStart);
590
+ startValue = ctor.getSteppedValue(startValue, step, min);
591
+ }
592
+ else {
593
+ positionOffset = this._initialPageXPosition - currentPageXPos;
594
+ startValuePageX = initialStartHandlePageXPos - positionOffset;
595
+ startValue = ctor.computedValueFromPageX(startValuePageX, min, max, dom, this.directionStart);
596
+ startValue = ctor.getSteppedValue(startValue, step, min);
597
+ }
598
+ return startValue;
599
+ }
600
+ /**
601
+ * Updates the visual representation of the component by calculating
602
+ * the styles of the handles and the range selection based on the new state.
603
+ *
604
+ * @private
605
+ */
606
+ _updateHandlesAndRange(newValue) {
607
+ const max = this._effectiveMax;
608
+ const min = this._effectiveMin;
609
+ const prevStartValue = this.getStoredPropertyState("startValue") || 0;
610
+ const prevEndValue = this.getStoredPropertyState("endValue") || 0;
611
+ const affectedValue = this._valueAffected;
612
+ // The value according to which we update the UI can be either the startValue
613
+ // or the endValue property. It is determined in _getClosestHandle()
614
+ // depending on to which handle is closer the user interaction.
615
+ if (affectedValue === "startValue") {
616
+ this._selectedRange = (prevEndValue - newValue) / (max - min);
617
+ this._firstHandlePositionFromStart = ((newValue - min) / (max - min)) * 100;
618
+ }
619
+ else if (affectedValue === "endValue") {
620
+ this._selectedRange = ((newValue - prevStartValue)) / (max - min);
621
+ this._secondHandlePositionFromStart = ((newValue - min) / (max - min)) * 100;
622
+ }
623
+ else {
624
+ // When both values are changed - UI sync or moving the whole selected range:
625
+ this._selectedRange = ((this.endValue - this.startValue)) / (max - min);
626
+ this._firstHandlePositionFromStart = ((this.startValue - min) / (max - min)) * 100;
627
+ this._secondHandlePositionFromStart = ((this.endValue - min) / (max - min)) * 100;
628
+ }
629
+ }
630
+ /**
631
+ * Swaps the start and end values of the handles if one came accros the other:
632
+ * - If the start value is greater than the endValue swap them and their handles
633
+ * - If the endValue become less than the start value swap them and their handles
634
+ *
635
+ * Switches the focus to the opposite of the currently focused handle.
636
+ *
637
+ * Note: Only the property values are reversed, the DOM elements of the handles
638
+ * corresponding to them are never switched.
639
+ *
640
+ * @private
641
+ */
642
+ _swapValues() {
643
+ const affectedValue = this._valueAffected;
644
+ if (affectedValue === "startValue" && this.startValue > this.endValue) {
645
+ const prevEndValue = this.endValue;
646
+ this.endValue = this.startValue;
647
+ this.startValue = prevEndValue;
648
+ this._setValuesAreReversed();
649
+ this.focusInnerElement();
650
+ }
651
+ if (affectedValue === "endValue" && this.endValue < this.startValue) {
652
+ const prevStartValue = this.startValue;
653
+ this.startValue = this.endValue;
654
+ this.endValue = prevStartValue;
655
+ this._setValuesAreReversed();
656
+ this.focusInnerElement();
657
+ }
658
+ }
659
+ /**
660
+ * Flag that we have swapped the values of the 'start' and 'end' properties,
661
+ * to correctly switch the focus within the component from one handle to another
662
+ * when the swapping is finished. As we only swap property values and not
663
+ * the handle elements themselves, we must also swap their focus.
664
+ *
665
+ * @private
666
+ */
667
+ _setValuesAreReversed() {
668
+ this._reversedValues = !this._reversedValues;
669
+ }
670
+ _areValuesReversed() {
671
+ return this._reversedValues;
672
+ }
673
+ get tickmarksObject() {
674
+ const count = this._tickmarksCount;
675
+ const arr = [];
676
+ if (this._hiddenTickmarks) {
677
+ return [false, false];
678
+ }
679
+ for (let i = 0; i <= count; i++) {
680
+ const isBiggerThanStartValue = this._effectiveMin + (i * this.step) >= this.startValue;
681
+ const isBiggerThanEndValue = this._effectiveMin + (i * this.step) <= this.endValue;
682
+ arr.push(isBiggerThanStartValue && isBiggerThanEndValue);
683
+ }
684
+ return arr;
685
+ }
686
+ get _startHandle() {
687
+ return this.shadowRoot.querySelector(".ui5-slider-handle--start");
688
+ }
689
+ get _endHandle() {
690
+ return this.shadowRoot.querySelector(".ui5-slider-handle--end");
691
+ }
692
+ get _progressBar() {
693
+ return this.shadowRoot.querySelector(".ui5-slider-progress");
694
+ }
695
+ get _ariaLabelledByStartHandleRefs() {
696
+ return [`${this._id}-accName`, `${this._id}-startHandleDesc`].join(" ").trim();
697
+ }
698
+ get _ariaLabelledByEndHandleRefs() {
699
+ return [`${this._id}-accName`, `${this._id}-endHandleDesc`].join(" ").trim();
700
+ }
701
+ get _ariaLabelledByProgressBarRefs() {
702
+ return [`${this._id}-accName`, `${this._id}-sliderDesc`].join(" ").trim();
703
+ }
704
+ get styles() {
705
+ return {
706
+ progress: {
707
+ "width": `${this._selectedRange * 100}%`,
708
+ "transform-origin": `${this.directionStart} top`,
709
+ [this.directionStart]: `${this._firstHandlePositionFromStart}%`,
710
+ },
711
+ startHandle: {
712
+ [this.directionStart]: `${this._firstHandlePositionFromStart}%`,
713
+ },
714
+ endHandle: {
715
+ [this.directionStart]: `${this._secondHandlePositionFromStart}%`,
716
+ },
717
+ label: {
718
+ "width": `${this._labelWidth}%`,
719
+ },
720
+ labelContainer: {
721
+ "width": `100%`,
722
+ [this.directionStart]: `-${this._labelWidth / 2}%`,
723
+ },
724
+ tooltip: {
725
+ "visibility": `${this._tooltipVisibility}`,
726
+ },
727
+ };
728
+ }
729
+ static async onDefine() {
730
+ RangeSlider_1.i18nBundle = await getI18nBundle("@ui5/webcomponents");
731
+ }
732
+ };
733
+ __decorate([
734
+ property({ validator: Float, defaultValue: 0 })
735
+ ], RangeSlider.prototype, "startValue", void 0);
736
+ __decorate([
737
+ property({ validator: Float, defaultValue: 100 })
738
+ ], RangeSlider.prototype, "endValue", void 0);
739
+ __decorate([
740
+ property({ type: Boolean })
741
+ ], RangeSlider.prototype, "rangePressed", void 0);
742
+ RangeSlider = RangeSlider_1 = __decorate([
743
+ customElement("ui5-range-slider"),
744
+ languageAware
745
+ ], RangeSlider);
821
746
  RangeSlider.define();
822
-
823
747
  export default RangeSlider;
748
+ //# sourceMappingURL=RangeSlider.js.map