@ui5/webcomponents 1.9.2 → 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 (1150) hide show
  1. package/dist/Avatar.d.ts +251 -0
  2. package/dist/Avatar.js +203 -406
  3. package/dist/Avatar.js.map +1 -0
  4. package/dist/AvatarGroup.js +8 -8
  5. package/dist/Badge.d.ts +82 -0
  6. package/dist/Badge.js +65 -117
  7. package/dist/Badge.js.map +1 -0
  8. package/dist/Breadcrumbs.d.ts +200 -0
  9. package/dist/Breadcrumbs.js +438 -584
  10. package/dist/Breadcrumbs.js.map +1 -0
  11. package/dist/BreadcrumbsItem.d.ts +73 -0
  12. package/dist/BreadcrumbsItem.js +33 -87
  13. package/dist/BreadcrumbsItem.js.map +1 -0
  14. package/dist/BusyIndicator.js +6 -7
  15. package/dist/Button.d.ts +257 -0
  16. package/dist/Button.js +236 -456
  17. package/dist/Button.js.map +1 -0
  18. package/dist/Calendar.d.ts +251 -0
  19. package/dist/Calendar.js +266 -350
  20. package/dist/Calendar.js.map +1 -0
  21. package/dist/CalendarDate.d.ts +28 -0
  22. package/dist/CalendarDate.js +20 -30
  23. package/dist/CalendarDate.js.map +1 -0
  24. package/dist/CalendarHeader.d.ts +87 -0
  25. package/dist/CalendarHeader.js +144 -198
  26. package/dist/CalendarHeader.js.map +1 -0
  27. package/dist/CalendarPart.d.ts +53 -0
  28. package/dist/CalendarPart.js +71 -92
  29. package/dist/CalendarPart.js.map +1 -0
  30. package/dist/Card.d.ts +91 -0
  31. package/dist/Card.js +68 -123
  32. package/dist/Card.js.map +1 -0
  33. package/dist/CardHeader.d.ts +123 -0
  34. package/dist/CardHeader.js +152 -240
  35. package/dist/CardHeader.js.map +1 -0
  36. package/dist/Carousel.js +33 -11
  37. package/dist/CheckBox.d.ts +256 -0
  38. package/dist/CheckBox.js +219 -410
  39. package/dist/CheckBox.js.map +1 -0
  40. package/dist/ColorPalette.d.ts +140 -0
  41. package/dist/ColorPalette.js +362 -455
  42. package/dist/ColorPalette.js.map +1 -0
  43. package/dist/ColorPaletteItem.d.ts +68 -0
  44. package/dist/ColorPaletteItem.js +66 -114
  45. package/dist/ColorPaletteItem.js.map +1 -0
  46. package/dist/ColorPalettePopover.d.ts +127 -0
  47. package/dist/ColorPalettePopover.js +144 -203
  48. package/dist/ColorPalettePopover.js.map +1 -0
  49. package/dist/ColorPicker.d.ts +147 -0
  50. package/dist/ColorPicker.js +371 -556
  51. package/dist/ColorPicker.js.map +1 -0
  52. package/dist/ComboBox.js +9 -9
  53. package/dist/ComboBoxGroupItem.js +6 -6
  54. package/dist/ComboBoxItem.js +4 -4
  55. package/dist/CustomListItem.d.ts +44 -0
  56. package/dist/CustomListItem.js +52 -79
  57. package/dist/CustomListItem.js.map +1 -0
  58. package/dist/DateComponentBase.d.ts +83 -0
  59. package/dist/DateComponentBase.js +101 -143
  60. package/dist/DateComponentBase.js.map +1 -0
  61. package/dist/DatePicker.d.ts +452 -0
  62. package/dist/DatePicker.js +540 -737
  63. package/dist/DatePicker.js.map +1 -0
  64. package/dist/DateRangePicker.d.ts +169 -0
  65. package/dist/DateRangePicker.js +269 -315
  66. package/dist/DateRangePicker.js.map +1 -0
  67. package/dist/DateTimePicker.d.ts +207 -0
  68. package/dist/DateTimePicker.js +254 -339
  69. package/dist/DateTimePicker.js.map +1 -0
  70. package/dist/DayPicker.d.ts +243 -0
  71. package/dist/DayPicker.js +605 -730
  72. package/dist/DayPicker.js.map +1 -0
  73. package/dist/Dialog.d.ts +238 -0
  74. package/dist/Dialog.js +380 -606
  75. package/dist/Dialog.js.map +1 -0
  76. package/dist/DurationPicker.js +5 -5
  77. package/dist/FileUploader.d.ts +238 -0
  78. package/dist/FileUploader.js +305 -489
  79. package/dist/FileUploader.js.map +1 -0
  80. package/dist/Filters.d.ts +5 -0
  81. package/dist/Filters.js +10 -21
  82. package/dist/Filters.js.map +1 -0
  83. package/dist/GroupHeaderListItem.d.ts +45 -0
  84. package/dist/GroupHeaderListItem.js +42 -76
  85. package/dist/GroupHeaderListItem.js.map +1 -0
  86. package/dist/Icon.d.ts +252 -0
  87. package/dist/Icon.js +179 -306
  88. package/dist/Icon.js.map +1 -0
  89. package/dist/Input.d.ts +607 -0
  90. package/dist/Input.js +1095 -1627
  91. package/dist/Input.js.map +1 -0
  92. package/dist/Interfaces.d.ts +161 -0
  93. package/dist/Interfaces.js +45 -85
  94. package/dist/Interfaces.js.map +1 -0
  95. package/dist/Label.d.ts +98 -0
  96. package/dist/Label.js +63 -124
  97. package/dist/Label.js.map +1 -0
  98. package/dist/Link.d.ts +222 -0
  99. package/dist/Link.js +177 -358
  100. package/dist/Link.js.map +1 -0
  101. package/dist/List.d.ts +383 -0
  102. package/dist/List.js +706 -1029
  103. package/dist/List.js.map +1 -0
  104. package/dist/ListItem.d.ts +201 -0
  105. package/dist/ListItem.js +298 -407
  106. package/dist/ListItem.js.map +1 -0
  107. package/dist/ListItemBase.d.ts +61 -0
  108. package/dist/ListItemBase.js +114 -167
  109. package/dist/ListItemBase.js.map +1 -0
  110. package/dist/Menu.d.ts +187 -0
  111. package/dist/Menu.js +428 -453
  112. package/dist/Menu.js.map +1 -0
  113. package/dist/MenuItem.d.ts +124 -0
  114. package/dist/MenuItem.js +66 -166
  115. package/dist/MenuItem.js.map +1 -0
  116. package/dist/MessageStrip.d.ts +135 -0
  117. package/dist/MessageStrip.js +119 -207
  118. package/dist/MessageStrip.js.map +1 -0
  119. package/dist/MonthPicker.d.ts +109 -0
  120. package/dist/MonthPicker.js +260 -285
  121. package/dist/MonthPicker.js.map +1 -0
  122. package/dist/MultiComboBox.js +13 -11
  123. package/dist/MultiComboBoxGroupItem.js +6 -6
  124. package/dist/MultiComboBoxItem.js +4 -4
  125. package/dist/MultiInput.js +13 -10
  126. package/dist/Option.js +6 -6
  127. package/dist/Panel.d.ts +238 -0
  128. package/dist/Panel.js +230 -405
  129. package/dist/Panel.js.map +1 -0
  130. package/dist/Popover.d.ts +332 -0
  131. package/dist/Popover.js +520 -766
  132. package/dist/Popover.js.map +1 -0
  133. package/dist/Popup.d.ts +293 -0
  134. package/dist/Popup.js +404 -576
  135. package/dist/Popup.js.map +1 -0
  136. package/dist/ProgressIndicator.d.ts +121 -0
  137. package/dist/ProgressIndicator.js +121 -207
  138. package/dist/ProgressIndicator.js.map +1 -0
  139. package/dist/RadioButton.js +7 -8
  140. package/dist/RadioButtonGroup.js +1 -1
  141. package/dist/RangeSlider.d.ts +363 -0
  142. package/dist/RangeSlider.js +682 -757
  143. package/dist/RangeSlider.js.map +1 -0
  144. package/dist/RatingIndicator.js +7 -7
  145. package/dist/ResponsivePopover.d.ts +108 -0
  146. package/dist/ResponsivePopover.js +148 -174
  147. package/dist/ResponsivePopover.js.map +1 -0
  148. package/dist/SegmentedButton.js +24 -11
  149. package/dist/SegmentedButtonItem.js +5 -5
  150. package/dist/Select.js +8 -8
  151. package/dist/Slider.d.ts +163 -0
  152. package/dist/Slider.js +241 -261
  153. package/dist/Slider.js.map +1 -0
  154. package/dist/SliderBase.d.ts +357 -0
  155. package/dist/SliderBase.js +588 -794
  156. package/dist/SliderBase.js.map +1 -0
  157. package/dist/SplitButton.d.ts +220 -0
  158. package/dist/SplitButton.js +211 -382
  159. package/dist/SplitButton.js.map +1 -0
  160. package/dist/StandardListItem.d.ts +158 -0
  161. package/dist/StandardListItem.js +79 -174
  162. package/dist/StandardListItem.js.map +1 -0
  163. package/dist/StepInput.d.ts +301 -0
  164. package/dist/StepInput.js +378 -615
  165. package/dist/StepInput.js.map +1 -0
  166. package/dist/SuggestionGroupItem.d.ts +35 -0
  167. package/dist/SuggestionGroupItem.js +35 -51
  168. package/dist/SuggestionGroupItem.js.map +1 -0
  169. package/dist/SuggestionItem.d.ts +104 -0
  170. package/dist/SuggestionItem.js +49 -131
  171. package/dist/SuggestionItem.js.map +1 -0
  172. package/dist/SuggestionListItem.d.ts +47 -0
  173. package/dist/SuggestionListItem.js +38 -52
  174. package/dist/SuggestionListItem.js.map +1 -0
  175. package/dist/Switch.d.ts +167 -0
  176. package/dist/Switch.js +136 -251
  177. package/dist/Switch.js.map +1 -0
  178. package/dist/Tab.js +13 -8
  179. package/dist/TabContainer.js +20 -19
  180. package/dist/TabSeparator.js +3 -3
  181. package/dist/Table.d.ts +426 -0
  182. package/dist/Table.js +792 -1107
  183. package/dist/Table.js.map +1 -0
  184. package/dist/TableCell.d.ts +51 -0
  185. package/dist/TableCell.js +43 -60
  186. package/dist/TableCell.js.map +1 -0
  187. package/dist/TableColumn.d.ts +101 -0
  188. package/dist/TableColumn.js +53 -99
  189. package/dist/TableColumn.js.map +1 -0
  190. package/dist/TableGroupRow.d.ts +79 -0
  191. package/dist/TableGroupRow.js +97 -134
  192. package/dist/TableGroupRow.js.map +1 -0
  193. package/dist/TableRow.d.ts +160 -0
  194. package/dist/TableRow.js +315 -429
  195. package/dist/TableRow.js.map +1 -0
  196. package/dist/TextArea.js +11 -11
  197. package/dist/TimePicker.d.ts +116 -0
  198. package/dist/TimePicker.js +61 -96
  199. package/dist/TimePicker.js.map +1 -0
  200. package/dist/TimePickerBase.d.ts +188 -0
  201. package/dist/TimePickerBase.js +350 -453
  202. package/dist/TimePickerBase.js.map +1 -0
  203. package/dist/TimeSelection.d.ts +162 -0
  204. package/dist/TimeSelection.js +358 -468
  205. package/dist/TimeSelection.js.map +1 -0
  206. package/dist/Title.d.ts +69 -0
  207. package/dist/Title.js +62 -105
  208. package/dist/Title.js.map +1 -0
  209. package/dist/Toast.js +6 -6
  210. package/dist/ToggleButton.js +3 -4
  211. package/dist/Token.js +24 -7
  212. package/dist/Tokenizer.js +12 -8
  213. package/dist/Tree.js +28 -14
  214. package/dist/TreeItemBase.js +1 -1
  215. package/dist/TreeList.js +9 -4
  216. package/dist/WheelSlider.d.ts +122 -0
  217. package/dist/WheelSlider.js +302 -410
  218. package/dist/WheelSlider.js.map +1 -0
  219. package/dist/YearPicker.d.ts +105 -0
  220. package/dist/YearPicker.js +298 -328
  221. package/dist/YearPicker.js.map +1 -0
  222. package/dist/api.json +1 -1
  223. package/dist/assets/HT-1000.59a0ea5a.jpg +0 -0
  224. package/dist/assets/HT-1010.7b05e4f5.jpg +0 -0
  225. package/dist/assets/HT-1022.6fa171f0.jpg +0 -0
  226. package/dist/assets/ar.76457d6b.js +1 -0
  227. package/dist/assets/ar_EG.facab575.js +1 -0
  228. package/dist/assets/ar_SA.037c760a.js +1 -0
  229. package/dist/assets/bg.eb54e36a.js +1 -0
  230. package/dist/assets/ca.1047c043.js +1 -0
  231. package/dist/assets/cs.47109072.js +1 -0
  232. package/dist/assets/da.1562c279.js +1 -0
  233. package/dist/assets/de.3397b9d2.js +1 -0
  234. package/dist/assets/de_AT.fb777626.js +1 -0
  235. package/dist/assets/de_CH.c4011bf2.js +1 -0
  236. package/dist/assets/el.52a181c7.js +1 -0
  237. package/dist/assets/el_CY.065e8a48.js +1 -0
  238. package/dist/assets/en.8b571af2.js +1 -0
  239. package/dist/assets/en_AU.29f5e0e2.js +1 -0
  240. package/dist/assets/en_GB.b0afb274.js +1 -0
  241. package/dist/assets/en_HK.188c8a39.js +1 -0
  242. package/dist/assets/en_IE.b52bdf4f.js +1 -0
  243. package/dist/assets/en_IN.5925f501.js +1 -0
  244. package/dist/assets/en_NZ.adc1b6af.js +1 -0
  245. package/dist/assets/en_PG.2e475ab9.js +1 -0
  246. package/dist/assets/en_SG.400dc7e5.js +1 -0
  247. package/dist/assets/en_ZA.06de0b73.js +1 -0
  248. package/dist/assets/es.d137c08c.js +1 -0
  249. package/dist/assets/es_AR.a719c078.js +1 -0
  250. package/dist/assets/es_BO.ba051d49.js +1 -0
  251. package/dist/assets/es_CL.876855d2.js +1 -0
  252. package/dist/assets/es_CO.51c37c4d.js +1 -0
  253. package/dist/assets/es_MX.c11d012e.js +1 -0
  254. package/dist/assets/es_PE.1a5de4db.js +1 -0
  255. package/dist/assets/es_UY.29036823.js +1 -0
  256. package/dist/assets/es_VE.22e2164a.js +1 -0
  257. package/dist/assets/et.d802827f.js +1 -0
  258. package/dist/assets/fa.59b6aa5f.js +1 -0
  259. package/dist/assets/fi.2cc79303.js +1 -0
  260. package/dist/assets/fr.055c2d0d.js +1 -0
  261. package/dist/assets/fr_BE.79a4448b.js +1 -0
  262. package/dist/assets/fr_CA.0c4a98e4.js +1 -0
  263. package/dist/assets/fr_CH.ba0db8bd.js +1 -0
  264. package/dist/assets/fr_LU.21a6bcea.js +1 -0
  265. package/dist/assets/he.e187c6df.js +1 -0
  266. package/dist/assets/hi.cb35adb1.js +1 -0
  267. package/dist/assets/hr.24bc905c.js +1 -0
  268. package/dist/assets/hu.aadbd74c.js +1 -0
  269. package/dist/assets/id.b9bd26e5.js +1 -0
  270. package/dist/assets/it.36ffae4a.js +1 -0
  271. package/dist/assets/{it.bcf089f4.js → it_CH.7ef1e2bf.js} +1 -1
  272. package/dist/assets/ja.a08af783.js +1 -0
  273. package/dist/assets/kk.5d3dddbe.js +1 -0
  274. package/dist/assets/ko.264fdf35.js +1 -0
  275. package/dist/assets/lt.b967d42b.js +1 -0
  276. package/dist/assets/lv.9c0f8206.js +1 -0
  277. package/dist/assets/{messagebundle_ar.dec7510d.js → messagebundle_ar.7f1e385c.js} +1 -1
  278. package/dist/assets/{messagebundle_bg.39183011.js → messagebundle_bg.67505cb7.js} +1 -1
  279. package/dist/assets/messagebundle_ca.64fb370c.js +1 -0
  280. package/dist/assets/messagebundle_cs.ce8b8a69.js +1 -0
  281. package/dist/assets/messagebundle_cy.3dad0e1d.js +1 -0
  282. package/dist/assets/messagebundle_da.ff79429b.js +1 -0
  283. package/dist/assets/messagebundle_de.e9f4d979.js +1 -0
  284. package/dist/assets/{messagebundle_el.d41a6312.js → messagebundle_el.50666070.js} +1 -1
  285. package/dist/assets/messagebundle_en.edda053c.js +1 -0
  286. package/dist/assets/messagebundle_en_GB.9eb5f8cf.js +1 -0
  287. package/dist/assets/{messagebundle_en_US_sappsd.86cc73b7.js → messagebundle_en_US_sappsd.c97ca89f.js} +1 -1
  288. package/dist/assets/{messagebundle_en_US_saprigi.a7b06ef5.js → messagebundle_en_US_saprigi.d0b577b7.js} +1 -1
  289. package/dist/assets/messagebundle_en_US_saptrc.7da9b71b.js +1 -0
  290. package/dist/assets/messagebundle_es.3b0d6da4.js +1 -0
  291. package/dist/assets/messagebundle_es_MX.da0228db.js +1 -0
  292. package/dist/assets/messagebundle_et.2cfc3295.js +1 -0
  293. package/dist/assets/messagebundle_fi.f62f59fc.js +1 -0
  294. package/dist/assets/messagebundle_fr.7d7c418f.js +1 -0
  295. package/dist/assets/messagebundle_fr_CA.a4592fb9.js +1 -0
  296. package/dist/assets/{messagebundle_hi.b968aad6.js → messagebundle_hi.2f3db639.js} +1 -1
  297. package/dist/assets/messagebundle_hr.f8282341.js +1 -0
  298. package/dist/assets/messagebundle_hu.2589bdb3.js +1 -0
  299. package/dist/assets/messagebundle_it.146c4b3c.js +1 -0
  300. package/dist/assets/messagebundle_iw.2766f5a1.js +1 -0
  301. package/dist/assets/messagebundle_ja.b0b6d3d0.js +1 -0
  302. package/dist/assets/{messagebundle_kk.24effffd.js → messagebundle_kk.f9132ede.js} +1 -1
  303. package/dist/assets/messagebundle_ko.d23a9de8.js +1 -0
  304. package/dist/assets/messagebundle_lt.e2f6f5b0.js +1 -0
  305. package/dist/assets/messagebundle_lv.6b0ad93c.js +1 -0
  306. package/dist/assets/messagebundle_ms.8d8ac7f1.js +1 -0
  307. package/dist/assets/messagebundle_nl.1bb5da42.js +1 -0
  308. package/dist/assets/messagebundle_no.c7ee6784.js +1 -0
  309. package/dist/assets/messagebundle_pl.0d1b3dd1.js +1 -0
  310. package/dist/assets/messagebundle_pt.33ff9d42.js +1 -0
  311. package/dist/assets/messagebundle_pt_PT.a91f6468.js +1 -0
  312. package/dist/assets/messagebundle_ro.bd2e01e0.js +1 -0
  313. package/dist/assets/{messagebundle_ru.e7ffdb7d.js → messagebundle_ru.388e4272.js} +1 -1
  314. package/dist/assets/messagebundle_sh.122ca47b.js +1 -0
  315. package/dist/assets/messagebundle_sk.66d70983.js +1 -0
  316. package/dist/assets/messagebundle_sl.3f1a077f.js +1 -0
  317. package/dist/assets/messagebundle_sv.71f16a40.js +1 -0
  318. package/dist/assets/{messagebundle_th.4f145df6.js → messagebundle_th.700d6a4a.js} +1 -1
  319. package/dist/assets/messagebundle_tr.6f267da9.js +1 -0
  320. package/dist/assets/{messagebundle_uk.fc20aaae.js → messagebundle_uk.52e9f0c8.js} +1 -1
  321. package/dist/assets/messagebundle_vi.e9fe4caa.js +1 -0
  322. package/dist/assets/messagebundle_zh_CN.8ff0766b.js +1 -0
  323. package/dist/assets/messagebundle_zh_TW.25b49650.js +1 -0
  324. package/dist/assets/ms.5a523fbe.js +1 -0
  325. package/dist/assets/nb.6e98bbca.js +1 -0
  326. package/dist/assets/nl.84e9e6df.js +1 -0
  327. package/dist/assets/nl_BE.0f374ea5.js +1 -0
  328. package/dist/assets/parameters-bundle.css.09fdcedf.js +1 -0
  329. package/dist/assets/parameters-bundle.css.0c16556f.js +1 -0
  330. package/dist/assets/parameters-bundle.css.1d5159c7.js +1 -0
  331. package/dist/assets/parameters-bundle.css.3d586108.js +1 -0
  332. package/dist/assets/parameters-bundle.css.3fe96be2.js +1 -0
  333. package/dist/assets/parameters-bundle.css.44ff7825.js +1 -0
  334. package/dist/assets/parameters-bundle.css.58325286.js +1 -0
  335. package/dist/assets/parameters-bundle.css.5c29069a.js +1 -0
  336. package/dist/assets/parameters-bundle.css.759ff23e.js +1 -0
  337. package/dist/assets/parameters-bundle.css.7ad77620.js +1 -0
  338. package/dist/assets/parameters-bundle.css.ab7cc9c4.js +1 -0
  339. package/dist/assets/parameters-bundle.css.e7002fc1.js +1 -0
  340. package/dist/assets/pl.c8acba9e.js +1 -0
  341. package/dist/assets/pt.676d5650.js +1 -0
  342. package/dist/assets/pt_PT.0bbc2da6.js +1 -0
  343. package/dist/assets/ro.10993af2.js +1 -0
  344. package/dist/assets/ru.4aba168e.js +1 -0
  345. package/dist/assets/ru_UA.334d6613.js +1 -0
  346. package/dist/assets/sk.3183c85e.js +1 -0
  347. package/dist/assets/sl.edad6042.js +1 -0
  348. package/dist/assets/sr.3e293379.js +1 -0
  349. package/dist/assets/sr_Latn.0f4a03c3.js +1 -0
  350. package/dist/assets/sv.e76e14e4.js +1 -0
  351. package/dist/assets/th.f5491ec1.js +1 -0
  352. package/dist/assets/tr.3b838818.js +1 -0
  353. package/dist/assets/uk.ebbd81a0.js +1 -0
  354. package/dist/assets/vi.87616fa0.js +1 -0
  355. package/dist/assets/zh_CN.de478ef9.js +1 -0
  356. package/dist/assets/zh_HK.834c3161.js +1 -0
  357. package/dist/assets/zh_SG.13241ee3.js +1 -0
  358. package/dist/assets/zh_TW.8f4a16b5.js +1 -0
  359. package/dist/css/themes/Avatar.css +1 -1
  360. package/dist/css/themes/BusyIndicator.css +1 -1
  361. package/dist/css/themes/Button.css +1 -1
  362. package/dist/css/themes/CardHeader.css +1 -1
  363. package/dist/css/themes/Carousel.css +1 -1
  364. package/dist/css/themes/ComboBox.css +1 -1
  365. package/dist/css/themes/DatePicker.css +1 -1
  366. package/dist/css/themes/Dialog.css +1 -1
  367. package/dist/css/themes/Icon.css +1 -1
  368. package/dist/css/themes/Input.css +1 -1
  369. package/dist/css/themes/ListItem.css +1 -1
  370. package/dist/css/themes/MultiComboBox.css +1 -1
  371. package/dist/css/themes/MultiInput.css +1 -1
  372. package/dist/css/themes/RadioButton.css +1 -1
  373. package/dist/css/themes/Select.css +1 -1
  374. package/dist/css/themes/TabInStrip.css +1 -1
  375. package/dist/css/themes/Table.css +1 -1
  376. package/dist/css/themes/TableCell.css +1 -1
  377. package/dist/css/themes/TableRow.css +1 -1
  378. package/dist/css/themes/TextArea.css +1 -1
  379. package/dist/css/themes/Tokenizer.css +1 -1
  380. package/dist/css/themes/ValueStateMessage.css +1 -1
  381. package/dist/css/themes/sap_belize/parameters-bundle.css +1 -1
  382. package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -1
  383. package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -1
  384. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  385. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  386. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  387. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  388. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  389. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  390. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  391. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  392. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  393. package/dist/features/ColorPaletteMoreColors.d.ts +13 -0
  394. package/dist/features/ColorPaletteMoreColors.js +23 -33
  395. package/dist/features/ColorPaletteMoreColors.js.map +1 -0
  396. package/dist/features/InputElementsFormSupport.d.ts +31 -0
  397. package/dist/features/InputElementsFormSupport.js +95 -101
  398. package/dist/features/InputElementsFormSupport.js.map +1 -0
  399. package/dist/features/InputSuggestions.d.ts +130 -0
  400. package/dist/features/InputSuggestions.js +457 -590
  401. package/dist/features/InputSuggestions.js.map +1 -0
  402. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  403. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  404. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  405. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  406. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
  407. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  408. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  409. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  410. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  411. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
  412. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
  413. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  414. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
  415. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  416. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
  417. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  418. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  419. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  420. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
  421. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  422. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  423. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  424. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  425. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  426. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  427. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  428. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  429. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  430. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  431. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  432. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  433. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  434. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  435. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  436. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
  437. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  438. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  439. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  440. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  441. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  442. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  443. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  444. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  445. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  446. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  447. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  448. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  449. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  450. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  451. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  452. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  453. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  454. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  455. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  456. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  457. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  458. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  459. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  460. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  461. package/dist/generated/i18n/i18n-defaults.js +2 -2
  462. package/dist/generated/templates/CardHeaderTemplate.lit.js +1 -1
  463. package/dist/generated/templates/CardTemplate.lit.js +1 -1
  464. package/dist/generated/templates/CheckBoxTemplate.lit.js +1 -1
  465. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +19 -17
  466. package/dist/generated/templates/CustomListItemTemplate.lit.js +9 -7
  467. package/dist/generated/templates/DialogTemplate.lit.js +1 -1
  468. package/dist/generated/templates/IconTemplate.lit.js +1 -1
  469. package/dist/generated/templates/InputTemplate.lit.js +1 -1
  470. package/dist/generated/templates/LinkTemplate.lit.js +1 -1
  471. package/dist/generated/templates/ListItemTemplate.lit.js +9 -7
  472. package/dist/generated/templates/ListTemplate.lit.js +3 -3
  473. package/dist/generated/templates/MenuTemplate.lit.js +1 -1
  474. package/dist/generated/templates/MonthPickerTemplate.lit.js +1 -1
  475. package/dist/generated/templates/MultiInputTemplate.lit.js +1 -1
  476. package/dist/generated/templates/PopoverTemplate.lit.js +1 -1
  477. package/dist/generated/templates/RangeSliderTemplate.lit.js +1 -1
  478. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +1 -1
  479. package/dist/generated/templates/SegmentedButtonTemplate.lit.js +1 -1
  480. package/dist/generated/templates/SliderTemplate.lit.js +1 -1
  481. package/dist/generated/templates/StandardListItemTemplate.lit.js +20 -16
  482. package/dist/generated/templates/SuggestionListItemTemplate.lit.js +23 -19
  483. package/dist/generated/templates/SwitchTemplate.lit.js +1 -1
  484. package/dist/generated/templates/TabInStripTemplate.lit.js +1 -1
  485. package/dist/generated/templates/TableRowTemplate.lit.js +5 -2
  486. package/dist/generated/templates/TableTemplate.lit.js +1 -1
  487. package/dist/generated/templates/TokenTemplate.lit.js +1 -1
  488. package/dist/generated/templates/TreeItemBaseTemplate.lit.js +10 -8
  489. package/dist/generated/templates/TreeItemCustomTemplate.lit.js +10 -8
  490. package/dist/generated/templates/TreeItemTemplate.lit.js +10 -8
  491. package/dist/generated/templates/TreeTemplate.lit.js +1 -1
  492. package/dist/generated/templates/YearPickerTemplate.lit.js +1 -1
  493. package/dist/generated/themes/Avatar.css.js +1 -1
  494. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  495. package/dist/generated/themes/Button.css.js +1 -1
  496. package/dist/generated/themes/CardHeader.css.js +1 -1
  497. package/dist/generated/themes/Carousel.css.js +1 -1
  498. package/dist/generated/themes/ComboBox.css.js +1 -1
  499. package/dist/generated/themes/DatePicker.css.js +1 -1
  500. package/dist/generated/themes/Dialog.css.js +1 -1
  501. package/dist/generated/themes/Icon.css.js +1 -1
  502. package/dist/generated/themes/Input.css.js +1 -1
  503. package/dist/generated/themes/ListItem.css.js +1 -1
  504. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  505. package/dist/generated/themes/MultiInput.css.js +1 -1
  506. package/dist/generated/themes/RadioButton.css.js +1 -1
  507. package/dist/generated/themes/Select.css.js +1 -1
  508. package/dist/generated/themes/TabInStrip.css.js +1 -1
  509. package/dist/generated/themes/Table.css.js +1 -1
  510. package/dist/generated/themes/TableCell.css.js +1 -1
  511. package/dist/generated/themes/TableRow.css.js +1 -1
  512. package/dist/generated/themes/TextArea.css.js +1 -1
  513. package/dist/generated/themes/Tokenizer.css.js +1 -1
  514. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  515. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  516. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  517. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  518. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  519. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  520. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  521. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  522. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  523. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  524. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  525. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  526. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  527. package/dist/i18n/messagebundle.properties +6 -0
  528. package/dist/i18n/messagebundle_ar.properties +4 -0
  529. package/dist/i18n/messagebundle_bg.properties +4 -0
  530. package/dist/i18n/messagebundle_ca.properties +4 -0
  531. package/dist/i18n/messagebundle_cs.properties +4 -0
  532. package/dist/i18n/messagebundle_cy.properties +4 -0
  533. package/dist/i18n/messagebundle_da.properties +4 -0
  534. package/dist/i18n/messagebundle_de.properties +4 -0
  535. package/dist/i18n/messagebundle_el.properties +4 -0
  536. package/dist/i18n/messagebundle_en.properties +4 -0
  537. package/dist/i18n/messagebundle_en_GB.properties +4 -0
  538. package/dist/i18n/messagebundle_en_US_sappsd.properties +4 -0
  539. package/dist/i18n/messagebundle_en_US_saprigi.properties +4 -0
  540. package/dist/i18n/messagebundle_en_US_saptrc.properties +4 -0
  541. package/dist/i18n/messagebundle_es.properties +4 -0
  542. package/dist/i18n/messagebundle_es_MX.properties +4 -0
  543. package/dist/i18n/messagebundle_et.properties +4 -0
  544. package/dist/i18n/messagebundle_fi.properties +4 -0
  545. package/dist/i18n/messagebundle_fr.properties +4 -0
  546. package/dist/i18n/messagebundle_fr_CA.properties +4 -0
  547. package/dist/i18n/messagebundle_hi.properties +4 -0
  548. package/dist/i18n/messagebundle_hr.properties +4 -0
  549. package/dist/i18n/messagebundle_hu.properties +4 -0
  550. package/dist/i18n/messagebundle_id.properties +4 -0
  551. package/dist/i18n/messagebundle_it.properties +4 -0
  552. package/dist/i18n/messagebundle_iw.properties +4 -0
  553. package/dist/i18n/messagebundle_ja.properties +4 -0
  554. package/dist/i18n/messagebundle_kk.properties +4 -0
  555. package/dist/i18n/messagebundle_ko.properties +4 -0
  556. package/dist/i18n/messagebundle_lt.properties +4 -0
  557. package/dist/i18n/messagebundle_lv.properties +4 -0
  558. package/dist/i18n/messagebundle_ms.properties +4 -0
  559. package/dist/i18n/messagebundle_nl.properties +4 -0
  560. package/dist/i18n/messagebundle_no.properties +5 -1
  561. package/dist/i18n/messagebundle_pl.properties +4 -0
  562. package/dist/i18n/messagebundle_pt.properties +4 -0
  563. package/dist/i18n/messagebundle_pt_PT.properties +4 -0
  564. package/dist/i18n/messagebundle_ro.properties +4 -0
  565. package/dist/i18n/messagebundle_ru.properties +4 -0
  566. package/dist/i18n/messagebundle_sh.properties +4 -0
  567. package/dist/i18n/messagebundle_sk.properties +4 -0
  568. package/dist/i18n/messagebundle_sl.properties +4 -0
  569. package/dist/i18n/messagebundle_sv.properties +4 -0
  570. package/dist/i18n/messagebundle_th.properties +4 -0
  571. package/dist/i18n/messagebundle_tr.properties +4 -0
  572. package/dist/i18n/messagebundle_uk.properties +4 -0
  573. package/dist/i18n/messagebundle_vi.properties +4 -0
  574. package/dist/i18n/messagebundle_zh_CN.properties +4 -0
  575. package/dist/i18n/messagebundle_zh_TW.properties +4 -0
  576. package/dist/popup-utils/OpenedPopupsRegistry.d.ts +9 -0
  577. package/dist/popup-utils/OpenedPopupsRegistry.js +43 -37
  578. package/dist/popup-utils/OpenedPopupsRegistry.js.map +1 -0
  579. package/dist/popup-utils/PopoverRegistry.d.ts +9 -0
  580. package/dist/popup-utils/PopoverRegistry.js +103 -123
  581. package/dist/popup-utils/PopoverRegistry.js.map +1 -0
  582. package/dist/timepicker-utils/TimeSlider.d.ts +15 -0
  583. package/dist/timepicker-utils/TimeSlider.js +80 -92
  584. package/dist/timepicker-utils/TimeSlider.js.map +1 -0
  585. package/dist/types/AvatarColorScheme.d.ts +78 -0
  586. package/dist/types/AvatarColorScheme.js +75 -99
  587. package/dist/types/AvatarColorScheme.js.map +1 -0
  588. package/dist/types/AvatarGroupType.d.ts +26 -0
  589. package/dist/types/AvatarGroupType.js +22 -37
  590. package/dist/types/AvatarGroupType.js.map +1 -0
  591. package/dist/types/AvatarShape.d.ts +24 -0
  592. package/dist/types/AvatarShape.js +20 -35
  593. package/dist/types/AvatarShape.js.map +1 -0
  594. package/dist/types/AvatarSize.d.ts +47 -0
  595. package/dist/types/AvatarSize.js +43 -61
  596. package/dist/types/AvatarSize.js.map +1 -0
  597. package/dist/types/BreadcrumbsDesign.d.ts +26 -0
  598. package/dist/types/BreadcrumbsDesign.js +23 -37
  599. package/dist/types/BreadcrumbsDesign.js.map +1 -0
  600. package/dist/types/BreadcrumbsSeparatorStyle.d.ts +48 -0
  601. package/dist/types/BreadcrumbsSeparatorStyle.js +45 -64
  602. package/dist/types/BreadcrumbsSeparatorStyle.js.map +1 -0
  603. package/dist/types/BusyIndicatorSize.d.ts +30 -0
  604. package/dist/types/BusyIndicatorSize.js +27 -42
  605. package/dist/types/BusyIndicatorSize.js.map +1 -0
  606. package/dist/types/ButtonDesign.d.ts +48 -0
  607. package/dist/types/ButtonDesign.js +45 -63
  608. package/dist/types/ButtonDesign.js.map +1 -0
  609. package/dist/types/CalendarSelectionMode.d.ts +30 -0
  610. package/dist/types/CalendarSelectionMode.js +27 -42
  611. package/dist/types/CalendarSelectionMode.js.map +1 -0
  612. package/dist/types/CarouselArrowsPlacement.d.ts +24 -0
  613. package/dist/types/CarouselArrowsPlacement.js +21 -35
  614. package/dist/types/CarouselArrowsPlacement.js.map +1 -0
  615. package/dist/types/CarouselPageIndicatorStyle.d.ts +25 -0
  616. package/dist/types/CarouselPageIndicatorStyle.js +27 -0
  617. package/dist/types/CarouselPageIndicatorStyle.js.map +1 -0
  618. package/dist/types/HasPopup.d.ts +42 -0
  619. package/dist/types/HasPopup.js +38 -56
  620. package/dist/types/HasPopup.js.map +1 -0
  621. package/dist/types/IconDesign.d.ts +60 -0
  622. package/dist/types/IconDesign.js +62 -0
  623. package/dist/types/IconDesign.js.map +1 -0
  624. package/dist/types/InputType.d.ts +48 -0
  625. package/dist/types/InputType.js +45 -63
  626. package/dist/types/InputType.js.map +1 -0
  627. package/dist/types/LinkDesign.d.ts +30 -0
  628. package/dist/types/LinkDesign.js +27 -42
  629. package/dist/types/LinkDesign.js.map +1 -0
  630. package/dist/types/ListGrowingMode.d.ts +31 -0
  631. package/dist/types/ListGrowingMode.js +28 -43
  632. package/dist/types/ListGrowingMode.js.map +1 -0
  633. package/dist/types/ListItemType.d.ts +36 -0
  634. package/dist/types/ListItemType.js +33 -42
  635. package/dist/types/ListItemType.js.map +1 -0
  636. package/dist/types/ListMode.d.ts +56 -0
  637. package/dist/types/ListMode.js +53 -72
  638. package/dist/types/ListMode.js.map +1 -0
  639. package/dist/types/ListSeparators.d.ts +31 -0
  640. package/dist/types/ListSeparators.js +28 -41
  641. package/dist/types/ListSeparators.js.map +1 -0
  642. package/dist/types/MessageStripDesign.d.ts +36 -0
  643. package/dist/types/MessageStripDesign.js +33 -49
  644. package/dist/types/MessageStripDesign.js.map +1 -0
  645. package/dist/types/PanelAccessibleRole.d.ts +33 -0
  646. package/dist/types/PanelAccessibleRole.js +30 -43
  647. package/dist/types/PanelAccessibleRole.js.map +1 -0
  648. package/dist/types/PopoverHorizontalAlign.d.ts +36 -0
  649. package/dist/types/PopoverHorizontalAlign.js +33 -49
  650. package/dist/types/PopoverHorizontalAlign.js.map +1 -0
  651. package/dist/types/PopoverPlacementType.d.ts +36 -0
  652. package/dist/types/PopoverPlacementType.js +33 -49
  653. package/dist/types/PopoverPlacementType.js.map +1 -0
  654. package/dist/types/PopoverVerticalAlign.d.ts +36 -0
  655. package/dist/types/PopoverVerticalAlign.js +33 -49
  656. package/dist/types/PopoverVerticalAlign.js.map +1 -0
  657. package/dist/types/Priority.d.ts +36 -0
  658. package/dist/types/Priority.js +32 -49
  659. package/dist/types/Priority.js.map +1 -0
  660. package/dist/types/SemanticColor.d.ts +42 -0
  661. package/dist/types/SemanticColor.js +39 -56
  662. package/dist/types/SemanticColor.js.map +1 -0
  663. package/dist/types/SwitchDesign.d.ts +24 -0
  664. package/dist/types/SwitchDesign.js +21 -35
  665. package/dist/types/SwitchDesign.js.map +1 -0
  666. package/dist/types/TabContainerBackgroundDesign.d.ts +30 -0
  667. package/dist/types/TabContainerBackgroundDesign.js +27 -43
  668. package/dist/types/TabContainerBackgroundDesign.js.map +1 -0
  669. package/dist/types/TabContainerTabsPlacement.d.ts +24 -0
  670. package/dist/types/TabContainerTabsPlacement.js +21 -35
  671. package/dist/types/TabContainerTabsPlacement.js.map +1 -0
  672. package/dist/types/TabLayout.d.ts +24 -0
  673. package/dist/types/TabLayout.js +21 -35
  674. package/dist/types/TabLayout.js.map +1 -0
  675. package/dist/types/TableColumnPopinDisplay.d.ts +24 -0
  676. package/dist/types/TableColumnPopinDisplay.js +26 -0
  677. package/dist/types/TableColumnPopinDisplay.js.map +1 -0
  678. package/dist/types/TableGrowingMode.d.ts +31 -0
  679. package/dist/types/TableGrowingMode.js +28 -43
  680. package/dist/types/TableGrowingMode.js.map +1 -0
  681. package/dist/types/TableMode.d.ts +30 -0
  682. package/dist/types/TableMode.js +27 -42
  683. package/dist/types/TableMode.js.map +1 -0
  684. package/dist/types/TableRowType.d.ts +24 -0
  685. package/dist/types/TableRowType.js +21 -35
  686. package/dist/types/TableRowType.js.map +1 -0
  687. package/dist/types/TabsOverflowMode.d.ts +24 -0
  688. package/dist/types/TabsOverflowMode.js +21 -35
  689. package/dist/types/TabsOverflowMode.js.map +1 -0
  690. package/dist/types/TitleLevel.d.ts +48 -0
  691. package/dist/types/TitleLevel.js +45 -63
  692. package/dist/types/TitleLevel.js.map +1 -0
  693. package/dist/types/ToastPlacement.d.ts +67 -0
  694. package/dist/types/ToastPlacement.js +64 -86
  695. package/dist/types/ToastPlacement.js.map +1 -0
  696. package/dist/types/WrappingType.d.ts +24 -0
  697. package/dist/types/WrappingType.js +20 -35
  698. package/dist/types/WrappingType.js.map +1 -0
  699. package/global.d.ts +12 -0
  700. package/package-scripts.js +1 -0
  701. package/package.json +7 -7
  702. package/src/Avatar.ts +435 -0
  703. package/src/AvatarGroup.js +8 -8
  704. package/src/Badge.ts +143 -0
  705. package/src/Breadcrumbs.hbs +41 -38
  706. package/src/{Breadcrumbs.js → Breadcrumbs.ts} +228 -187
  707. package/src/BreadcrumbsItem.ts +92 -0
  708. package/src/BusyIndicator.js +6 -7
  709. package/src/Button.ts +503 -0
  710. package/src/{Calendar.js → Calendar.ts} +152 -142
  711. package/src/CalendarDate.ts +36 -0
  712. package/src/CalendarHeader.ts +218 -0
  713. package/src/{CalendarPart.js → CalendarPart.ts} +15 -26
  714. package/src/Card.hbs +1 -1
  715. package/src/{Card.js → Card.ts} +67 -75
  716. package/src/CardHeader.hbs +1 -1
  717. package/src/CardHeader.ts +275 -0
  718. package/src/Carousel.hbs +72 -72
  719. package/src/Carousel.js +33 -11
  720. package/src/CheckBox.hbs +3 -3
  721. package/src/CheckBox.ts +466 -0
  722. package/src/{ColorPalette.js → ColorPalette.ts} +184 -165
  723. package/src/ColorPaletteItem.ts +124 -0
  724. package/src/{ColorPalettePopover.js → ColorPalettePopover.ts} +99 -97
  725. package/src/ColorPicker.ts +536 -0
  726. package/src/ComboBox.js +9 -9
  727. package/src/ComboBoxGroupItem.js +6 -6
  728. package/src/ComboBoxItem.js +4 -4
  729. package/src/ComboBoxPopover.hbs +45 -42
  730. package/src/CustomListItem.ts +89 -0
  731. package/src/DateComponentBase.ts +174 -0
  732. package/src/{DatePicker.js → DatePicker.ts} +355 -330
  733. package/src/{DateRangePicker.js → DateRangePicker.ts} +65 -61
  734. package/src/{DateTimePicker.js → DateTimePicker.ts} +82 -80
  735. package/src/{DayPicker.js → DayPicker.ts} +274 -218
  736. package/src/Dialog.hbs +1 -1
  737. package/src/{Dialog.js → Dialog.ts} +208 -195
  738. package/src/DurationPicker.js +5 -5
  739. package/src/FileUploader.ts +526 -0
  740. package/src/Filters.ts +28 -0
  741. package/src/GroupHeaderListItem.ts +86 -0
  742. package/src/Icon.hbs +1 -1
  743. package/src/{Icon.js → Icon.ts} +204 -182
  744. package/src/Input.hbs +3 -1
  745. package/src/{Input.js → Input.ts} +738 -706
  746. package/src/{Interfaces.js → Interfaces.ts} +40 -40
  747. package/src/Label.ts +143 -0
  748. package/src/Link.hbs +1 -1
  749. package/src/Link.ts +406 -0
  750. package/src/List.hbs +11 -2
  751. package/src/List.ts +1143 -0
  752. package/src/ListItem.hbs +12 -2
  753. package/src/ListItem.ts +497 -0
  754. package/src/ListItemBase.ts +168 -0
  755. package/src/Menu.hbs +4 -1
  756. package/src/Menu.ts +609 -0
  757. package/src/MenuItem.ts +168 -0
  758. package/src/MessageStrip.ts +245 -0
  759. package/src/MonthPicker.hbs +1 -0
  760. package/src/{MonthPicker.js → MonthPicker.ts} +147 -104
  761. package/src/MultiComboBox.js +13 -11
  762. package/src/MultiComboBoxGroupItem.js +6 -6
  763. package/src/MultiComboBoxItem.js +4 -4
  764. package/src/MultiInput.js +13 -10
  765. package/src/Option.js +6 -6
  766. package/src/{Panel.js → Panel.ts} +179 -219
  767. package/src/Popover.hbs +1 -1
  768. package/src/{Popover.js → Popover.ts} +293 -268
  769. package/src/{Popup.js → Popup.ts} +227 -210
  770. package/src/{ProgressIndicator.js → ProgressIndicator.ts} +91 -95
  771. package/src/RadioButton.js +7 -8
  772. package/src/RadioButtonGroup.js +1 -1
  773. package/src/RangeSlider.hbs +11 -5
  774. package/src/{RangeSlider.js → RangeSlider.ts} +248 -173
  775. package/src/RatingIndicator.js +7 -7
  776. package/src/{ResponsivePopover.js → ResponsivePopover.ts} +84 -62
  777. package/src/SegmentedButton.hbs +1 -0
  778. package/src/SegmentedButton.js +24 -11
  779. package/src/SegmentedButtonItem.js +5 -5
  780. package/src/Select.js +8 -8
  781. package/src/Slider.hbs +2 -2
  782. package/src/{Slider.js → Slider.ts} +94 -62
  783. package/src/{SliderBase.js → SliderBase.ts} +238 -270
  784. package/src/{SplitButton.js → SplitButton.ts} +217 -235
  785. package/src/StandardListItem.hbs +10 -4
  786. package/src/StandardListItem.ts +217 -0
  787. package/src/StepInput.hbs +1 -1
  788. package/src/{StepInput.js → StepInput.ts} +275 -314
  789. package/src/SuggestionGroupItem.ts +51 -0
  790. package/src/SuggestionItem.ts +134 -0
  791. package/src/{SuggestionListItem.js → SuggestionListItem.ts} +30 -32
  792. package/src/Switch.hbs +2 -2
  793. package/src/Switch.ts +299 -0
  794. package/src/Tab.js +13 -8
  795. package/src/TabContainer.js +20 -19
  796. package/src/TabInStrip.hbs +2 -1
  797. package/src/TabSeparator.js +3 -3
  798. package/src/Table.hbs +7 -1
  799. package/src/Table.ts +1303 -0
  800. package/src/{TableCell.js → TableCell.ts} +32 -42
  801. package/src/TableColumn.ts +135 -0
  802. package/src/TableGroupRow.ts +159 -0
  803. package/src/TableRow.hbs +17 -5
  804. package/src/TableRow.ts +505 -0
  805. package/src/TextArea.js +11 -11
  806. package/src/{TimePicker.js → TimePicker.ts} +43 -50
  807. package/src/{TimePickerBase.js → TimePickerBase.ts} +154 -145
  808. package/src/{TimeSelection.js → TimeSelection.ts} +198 -170
  809. package/src/Title.ts +117 -0
  810. package/src/Toast.js +6 -6
  811. package/src/ToggleButton.js +3 -4
  812. package/src/Token.hbs +1 -0
  813. package/src/Token.js +24 -7
  814. package/src/Tokenizer.js +12 -8
  815. package/src/Tree.hbs +2 -1
  816. package/src/Tree.js +28 -14
  817. package/src/TreeItemBase.js +1 -1
  818. package/src/TreeList.js +9 -4
  819. package/src/{WheelSlider.js → WheelSlider.ts} +120 -126
  820. package/src/YearPicker.hbs +1 -0
  821. package/src/{YearPicker.js → YearPicker.ts} +146 -101
  822. package/src/features/{ColorPaletteMoreColors.js → ColorPaletteMoreColors.ts} +8 -3
  823. package/src/features/{InputElementsFormSupport.js → InputElementsFormSupport.ts} +49 -17
  824. package/src/features/{InputSuggestions.js → InputSuggestions.ts} +154 -99
  825. package/src/i18n/messagebundle.properties +6 -0
  826. package/src/i18n/messagebundle_ar.properties +4 -0
  827. package/src/i18n/messagebundle_bg.properties +4 -0
  828. package/src/i18n/messagebundle_ca.properties +4 -0
  829. package/src/i18n/messagebundle_cs.properties +4 -0
  830. package/src/i18n/messagebundle_cy.properties +4 -0
  831. package/src/i18n/messagebundle_da.properties +4 -0
  832. package/src/i18n/messagebundle_de.properties +4 -0
  833. package/src/i18n/messagebundle_el.properties +4 -0
  834. package/src/i18n/messagebundle_en.properties +4 -0
  835. package/src/i18n/messagebundle_en_GB.properties +4 -0
  836. package/src/i18n/messagebundle_en_US_sappsd.properties +4 -0
  837. package/src/i18n/messagebundle_en_US_saprigi.properties +4 -0
  838. package/src/i18n/messagebundle_en_US_saptrc.properties +4 -0
  839. package/src/i18n/messagebundle_es.properties +4 -0
  840. package/src/i18n/messagebundle_es_MX.properties +4 -0
  841. package/src/i18n/messagebundle_et.properties +4 -0
  842. package/src/i18n/messagebundle_fi.properties +4 -0
  843. package/src/i18n/messagebundle_fr.properties +4 -0
  844. package/src/i18n/messagebundle_fr_CA.properties +4 -0
  845. package/src/i18n/messagebundle_hi.properties +4 -0
  846. package/src/i18n/messagebundle_hr.properties +4 -0
  847. package/src/i18n/messagebundle_hu.properties +4 -0
  848. package/src/i18n/messagebundle_id.properties +4 -0
  849. package/src/i18n/messagebundle_it.properties +4 -0
  850. package/src/i18n/messagebundle_iw.properties +4 -0
  851. package/src/i18n/messagebundle_ja.properties +4 -0
  852. package/src/i18n/messagebundle_kk.properties +4 -0
  853. package/src/i18n/messagebundle_ko.properties +4 -0
  854. package/src/i18n/messagebundle_lt.properties +4 -0
  855. package/src/i18n/messagebundle_lv.properties +4 -0
  856. package/src/i18n/messagebundle_ms.properties +4 -0
  857. package/src/i18n/messagebundle_nl.properties +4 -0
  858. package/src/i18n/messagebundle_no.properties +5 -1
  859. package/src/i18n/messagebundle_pl.properties +4 -0
  860. package/src/i18n/messagebundle_pt.properties +4 -0
  861. package/src/i18n/messagebundle_pt_PT.properties +4 -0
  862. package/src/i18n/messagebundle_ro.properties +4 -0
  863. package/src/i18n/messagebundle_ru.properties +4 -0
  864. package/src/i18n/messagebundle_sh.properties +4 -0
  865. package/src/i18n/messagebundle_sk.properties +4 -0
  866. package/src/i18n/messagebundle_sl.properties +4 -0
  867. package/src/i18n/messagebundle_sv.properties +4 -0
  868. package/src/i18n/messagebundle_th.properties +4 -0
  869. package/src/i18n/messagebundle_tr.properties +4 -0
  870. package/src/i18n/messagebundle_uk.properties +4 -0
  871. package/src/i18n/messagebundle_vi.properties +4 -0
  872. package/src/i18n/messagebundle_zh_CN.properties +4 -0
  873. package/src/i18n/messagebundle_zh_TW.properties +4 -0
  874. package/src/popup-utils/{OpenedPopupsRegistry.js → OpenedPopupsRegistry.ts} +31 -5
  875. package/src/popup-utils/{PopoverRegistry.js → PopoverRegistry.ts} +50 -29
  876. package/src/themes/Avatar.css +5 -2
  877. package/src/themes/BusyIndicator.css +1 -1
  878. package/src/themes/Button.css +14 -13
  879. package/src/themes/CardHeader.css +19 -2
  880. package/src/themes/Carousel.css +4 -4
  881. package/src/themes/DatePicker.css +7 -1
  882. package/src/themes/Dialog.css +2 -2
  883. package/src/themes/Icon.css +37 -0
  884. package/src/themes/Input.css +26 -2
  885. package/src/themes/ListItem.css +20 -2
  886. package/src/themes/MultiComboBox.css +0 -4
  887. package/src/themes/MultiInput.css +1 -5
  888. package/src/themes/RadioButton.css +6 -6
  889. package/src/themes/Select.css +1 -1
  890. package/src/themes/TabInStrip.css +10 -10
  891. package/src/themes/Table.css +1 -1
  892. package/src/themes/TableCell.css +4 -0
  893. package/src/themes/TableRow.css +9 -0
  894. package/src/themes/TextArea.css +16 -23
  895. package/src/themes/Tokenizer.css +1 -1
  896. package/src/themes/ValueStateMessage.css +9 -1
  897. package/src/themes/base/Avatar-parameters.css +1 -0
  898. package/src/themes/base/Input-parameters.css +11 -1
  899. package/src/themes/base/Select-parameters.css +1 -1
  900. package/src/themes/base/TextArea-parameters.css +18 -0
  901. package/src/themes/base/Tokenizer-parameters.css +1 -0
  902. package/src/themes/base/sizes-parameters.css +1 -9
  903. package/src/themes/sap_belize/TextArea-parameters.css +8 -0
  904. package/src/themes/sap_belize_hcb/TextArea-parameters.css +8 -0
  905. package/src/themes/sap_belize_hcw/TextArea-parameters.css +8 -0
  906. package/src/themes/sap_fiori_3_hcb/TextArea-parameters.css +13 -3
  907. package/src/themes/sap_fiori_3_hcw/TextArea-parameters.css +13 -3
  908. package/src/themes/sap_horizon/CheckBox-parameters.css +1 -0
  909. package/src/themes/sap_horizon/Input-parameters.css +3 -0
  910. package/src/themes/sap_horizon/TextArea-parameters.css +14 -0
  911. package/src/themes/sap_horizon/Tokenizer-parameters.css +5 -0
  912. package/src/themes/sap_horizon/parameters-bundle.css +1 -1
  913. package/src/themes/sap_horizon_dark/Input-parameters.css +3 -0
  914. package/src/themes/sap_horizon_dark/ListItemBase-parameters.css +0 -1
  915. package/src/themes/sap_horizon_dark/TextArea-parameters.css +14 -0
  916. package/src/themes/sap_horizon_dark/Tokenizer-parameters.css +5 -0
  917. package/src/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  918. package/src/themes/sap_horizon_exp/Select-parameters.css +1 -1
  919. package/src/themes/sap_horizon_hcb/Input-parameters.css +1 -0
  920. package/src/themes/sap_horizon_hcb/TextArea-parameters.css +15 -6
  921. package/src/themes/sap_horizon_hcw/Input-parameters.css +1 -0
  922. package/src/themes/sap_horizon_hcw/TextArea-parameters.css +15 -6
  923. package/src/timepicker-utils/{TimeSlider.js → TimeSlider.ts} +26 -9
  924. package/src/types/AvatarColorScheme.ts +89 -0
  925. package/src/types/AvatarGroupType.ts +28 -0
  926. package/src/types/AvatarShape.ts +26 -0
  927. package/src/types/AvatarSize.ts +52 -0
  928. package/src/types/BreadcrumbsDesign.ts +28 -0
  929. package/src/types/BreadcrumbsSeparatorStyle.ts +55 -0
  930. package/src/types/BusyIndicatorSize.ts +33 -0
  931. package/src/types/ButtonDesign.ts +54 -0
  932. package/src/types/CalendarSelectionMode.ts +33 -0
  933. package/src/types/CarouselArrowsPlacement.ts +26 -0
  934. package/src/types/CarouselPageIndicatorStyle.ts +27 -0
  935. package/src/types/HasPopup.ts +47 -0
  936. package/src/types/IconDesign.ts +68 -0
  937. package/src/types/{InputType.js → InputType.ts} +13 -27
  938. package/src/types/LinkDesign.ts +33 -0
  939. package/src/types/ListGrowingMode.ts +34 -0
  940. package/src/types/ListItemType.ts +40 -0
  941. package/src/types/{ListMode.js → ListMode.ts} +14 -28
  942. package/src/types/ListSeparators.ts +32 -0
  943. package/src/types/MessageStripDesign.ts +40 -0
  944. package/src/types/PanelAccessibleRole.ts +37 -0
  945. package/src/types/PopoverHorizontalAlign.ts +40 -0
  946. package/src/types/PopoverPlacementType.ts +40 -0
  947. package/src/types/PopoverVerticalAlign.ts +40 -0
  948. package/src/types/Priority.ts +40 -0
  949. package/src/types/SemanticColor.ts +47 -0
  950. package/src/types/SwitchDesign.ts +26 -0
  951. package/src/types/TabContainerBackgroundDesign.ts +33 -0
  952. package/src/types/TabContainerTabsPlacement.ts +26 -0
  953. package/src/types/TabLayout.ts +26 -0
  954. package/src/types/TableColumnPopinDisplay.ts +26 -0
  955. package/src/types/TableGrowingMode.ts +34 -0
  956. package/src/types/TableMode.ts +33 -0
  957. package/src/types/TableRowType.ts +26 -0
  958. package/src/types/TabsOverflowMode.ts +26 -0
  959. package/src/types/{TitleLevel.js → TitleLevel.ts} +13 -27
  960. package/src/types/ToastPlacement.ts +77 -0
  961. package/src/types/WrappingType.ts +26 -0
  962. package/tsconfig.json +14 -0
  963. package/dist/assets/ar.7fd1011b.js +0 -1
  964. package/dist/assets/ar_EG.4dd5f305.js +0 -1
  965. package/dist/assets/ar_SA.8c5a937a.js +0 -1
  966. package/dist/assets/bg.a4d82c03.js +0 -1
  967. package/dist/assets/ca.0021f734.js +0 -1
  968. package/dist/assets/cs.0e585b65.js +0 -1
  969. package/dist/assets/da.521611de.js +0 -1
  970. package/dist/assets/de.63fdffdf.js +0 -1
  971. package/dist/assets/de_AT.ea95f993.js +0 -1
  972. package/dist/assets/de_CH.90d5e701.js +0 -1
  973. package/dist/assets/el.3e1beb01.js +0 -1
  974. package/dist/assets/el_CY.209073e0.js +0 -1
  975. package/dist/assets/en.1af5f31c.js +0 -1
  976. package/dist/assets/en_AU.25e8cf38.js +0 -1
  977. package/dist/assets/en_GB.43297e37.js +0 -1
  978. package/dist/assets/en_HK.0da1e0b5.js +0 -1
  979. package/dist/assets/en_IE.c4988873.js +0 -1
  980. package/dist/assets/en_IN.96d721e2.js +0 -1
  981. package/dist/assets/en_NZ.1091e526.js +0 -1
  982. package/dist/assets/en_PG.f028e345.js +0 -1
  983. package/dist/assets/en_SG.8d370bdb.js +0 -1
  984. package/dist/assets/en_ZA.0cbf9d6e.js +0 -1
  985. package/dist/assets/es.37dda275.js +0 -1
  986. package/dist/assets/es_AR.da796f99.js +0 -1
  987. package/dist/assets/es_BO.2b15333c.js +0 -1
  988. package/dist/assets/es_CL.048ca1f2.js +0 -1
  989. package/dist/assets/es_CO.257ed3d6.js +0 -1
  990. package/dist/assets/es_MX.061e6bbb.js +0 -1
  991. package/dist/assets/es_PE.f7c17b7a.js +0 -1
  992. package/dist/assets/es_UY.73781c0c.js +0 -1
  993. package/dist/assets/es_VE.fe0f3310.js +0 -1
  994. package/dist/assets/et.fbe81c9d.js +0 -1
  995. package/dist/assets/fa.acfcfa4d.js +0 -1
  996. package/dist/assets/fi.0379b5fc.js +0 -1
  997. package/dist/assets/fr.f6c58c06.js +0 -1
  998. package/dist/assets/fr_BE.c6e52c3f.js +0 -1
  999. package/dist/assets/fr_CA.e3c92112.js +0 -1
  1000. package/dist/assets/fr_CH.fc89bdfc.js +0 -1
  1001. package/dist/assets/fr_LU.4fffec47.js +0 -1
  1002. package/dist/assets/he.ca2cb3e0.js +0 -1
  1003. package/dist/assets/hi.82a0ad5b.js +0 -1
  1004. package/dist/assets/hr.ab15877f.js +0 -1
  1005. package/dist/assets/hu.c3d72d24.js +0 -1
  1006. package/dist/assets/id.163ccc8d.js +0 -1
  1007. package/dist/assets/it_CH.69227571.js +0 -1
  1008. package/dist/assets/ja.18f39a5b.js +0 -1
  1009. package/dist/assets/kk.a697e741.js +0 -1
  1010. package/dist/assets/ko.ebe1e5db.js +0 -1
  1011. package/dist/assets/lt.775927de.js +0 -1
  1012. package/dist/assets/lv.d7e9d5e6.js +0 -1
  1013. package/dist/assets/messagebundle_ca.0d94d392.js +0 -1
  1014. package/dist/assets/messagebundle_cs.fd5eaccc.js +0 -1
  1015. package/dist/assets/messagebundle_cy.ff1e6c97.js +0 -1
  1016. package/dist/assets/messagebundle_da.5ff8a1f1.js +0 -1
  1017. package/dist/assets/messagebundle_de.bff2fc47.js +0 -1
  1018. package/dist/assets/messagebundle_en.fdb7abce.js +0 -1
  1019. package/dist/assets/messagebundle_en_GB.4a95abfb.js +0 -1
  1020. package/dist/assets/messagebundle_en_US_saptrc.71435964.js +0 -1
  1021. package/dist/assets/messagebundle_es.04498029.js +0 -1
  1022. package/dist/assets/messagebundle_es_MX.a39214a3.js +0 -1
  1023. package/dist/assets/messagebundle_et.d2e7cd16.js +0 -1
  1024. package/dist/assets/messagebundle_fi.1aa86ded.js +0 -1
  1025. package/dist/assets/messagebundle_fr.d651062e.js +0 -1
  1026. package/dist/assets/messagebundle_fr_CA.5a066480.js +0 -1
  1027. package/dist/assets/messagebundle_hr.51d15b46.js +0 -1
  1028. package/dist/assets/messagebundle_hu.f66f6bd4.js +0 -1
  1029. package/dist/assets/messagebundle_it.fc18db7c.js +0 -1
  1030. package/dist/assets/messagebundle_iw.61cc9591.js +0 -1
  1031. package/dist/assets/messagebundle_ja.9d222bf0.js +0 -1
  1032. package/dist/assets/messagebundle_ko.c1f9bbe4.js +0 -1
  1033. package/dist/assets/messagebundle_lt.68cc1270.js +0 -1
  1034. package/dist/assets/messagebundle_lv.45ee5e9b.js +0 -1
  1035. package/dist/assets/messagebundle_ms.5c238d83.js +0 -1
  1036. package/dist/assets/messagebundle_nl.42d4c6f9.js +0 -1
  1037. package/dist/assets/messagebundle_no.040efcc2.js +0 -1
  1038. package/dist/assets/messagebundle_pl.180e5190.js +0 -1
  1039. package/dist/assets/messagebundle_pt.8c0b8aa8.js +0 -1
  1040. package/dist/assets/messagebundle_pt_PT.08badb3a.js +0 -1
  1041. package/dist/assets/messagebundle_ro.dc736139.js +0 -1
  1042. package/dist/assets/messagebundle_sh.06513aad.js +0 -1
  1043. package/dist/assets/messagebundle_sk.f8c93117.js +0 -1
  1044. package/dist/assets/messagebundle_sl.e321cf3f.js +0 -1
  1045. package/dist/assets/messagebundle_sv.7c70049d.js +0 -1
  1046. package/dist/assets/messagebundle_tr.b1de509f.js +0 -1
  1047. package/dist/assets/messagebundle_vi.39c09ada.js +0 -1
  1048. package/dist/assets/messagebundle_zh_CN.cb6c2fc4.js +0 -1
  1049. package/dist/assets/messagebundle_zh_TW.38b9d6a7.js +0 -1
  1050. package/dist/assets/ms.d6569411.js +0 -1
  1051. package/dist/assets/nb.e08266d5.js +0 -1
  1052. package/dist/assets/nl.9999541e.js +0 -1
  1053. package/dist/assets/nl_BE.10b9e463.js +0 -1
  1054. package/dist/assets/parameters-bundle.css.1f15a001.js +0 -1
  1055. package/dist/assets/parameters-bundle.css.2c92b83f.js +0 -1
  1056. package/dist/assets/parameters-bundle.css.37d45e6a.js +0 -1
  1057. package/dist/assets/parameters-bundle.css.43cfec9f.js +0 -1
  1058. package/dist/assets/parameters-bundle.css.6ac2a3ec.js +0 -1
  1059. package/dist/assets/parameters-bundle.css.8156fdfe.js +0 -1
  1060. package/dist/assets/parameters-bundle.css.9ff9d4cd.js +0 -1
  1061. package/dist/assets/parameters-bundle.css.abcd1057.js +0 -1
  1062. package/dist/assets/parameters-bundle.css.b58e1801.js +0 -1
  1063. package/dist/assets/parameters-bundle.css.d4817fb4.js +0 -1
  1064. package/dist/assets/parameters-bundle.css.dd8f8072.js +0 -1
  1065. package/dist/assets/parameters-bundle.css.feee54fa.js +0 -1
  1066. package/dist/assets/pl.896f748a.js +0 -1
  1067. package/dist/assets/pt.9282da43.js +0 -1
  1068. package/dist/assets/pt_PT.8de6f4a2.js +0 -1
  1069. package/dist/assets/ro.f27aab0d.js +0 -1
  1070. package/dist/assets/ru.925a56df.js +0 -1
  1071. package/dist/assets/ru_UA.066d9903.js +0 -1
  1072. package/dist/assets/sk.cea36c4c.js +0 -1
  1073. package/dist/assets/sl.00e904c8.js +0 -1
  1074. package/dist/assets/sr.5ffa8a72.js +0 -1
  1075. package/dist/assets/sr_Latn.37760dd7.js +0 -1
  1076. package/dist/assets/sv.e8d71660.js +0 -1
  1077. package/dist/assets/th.9c7b50b0.js +0 -1
  1078. package/dist/assets/tr.0a0fb3ee.js +0 -1
  1079. package/dist/assets/uk.7ee1da23.js +0 -1
  1080. package/dist/assets/vi.b1f74e9c.js +0 -1
  1081. package/dist/assets/zh_CN.a1d71c11.js +0 -1
  1082. package/dist/assets/zh_HK.a47dd921.js +0 -1
  1083. package/dist/assets/zh_SG.1cd17a31.js +0 -1
  1084. package/dist/assets/zh_TW.b03069d7.js +0 -1
  1085. package/dist/types/GrowingMode.js +0 -48
  1086. package/src/Avatar.js +0 -451
  1087. package/src/Badge.js +0 -151
  1088. package/src/BreadcrumbsItem.js +0 -103
  1089. package/src/Button.js +0 -513
  1090. package/src/CalendarDate.js +0 -45
  1091. package/src/CalendarHeader.js +0 -213
  1092. package/src/CardHeader.js +0 -283
  1093. package/src/CheckBox.js +0 -471
  1094. package/src/ColorPaletteItem.js +0 -137
  1095. package/src/ColorPicker.js +0 -600
  1096. package/src/CustomListItem.js +0 -99
  1097. package/src/DateComponentBase.js +0 -168
  1098. package/src/FileUploader.js +0 -533
  1099. package/src/Filters.js +0 -28
  1100. package/src/GroupHeaderListItem.js +0 -94
  1101. package/src/Label.js +0 -158
  1102. package/src/Link.js +0 -410
  1103. package/src/List.js +0 -1120
  1104. package/src/ListItem.js +0 -428
  1105. package/src/ListItemBase.js +0 -181
  1106. package/src/Menu.js +0 -502
  1107. package/src/MenuItem.js +0 -193
  1108. package/src/MessageStrip.js +0 -256
  1109. package/src/StandardListItem.js +0 -207
  1110. package/src/SuggestionGroupItem.js +0 -64
  1111. package/src/SuggestionItem.js +0 -146
  1112. package/src/Switch.js +0 -306
  1113. package/src/Table.js +0 -1200
  1114. package/src/TableColumn.js +0 -129
  1115. package/src/TableGroupRow.js +0 -167
  1116. package/src/TableRow.js +0 -464
  1117. package/src/Title.js +0 -132
  1118. package/src/types/AvatarColorScheme.js +0 -104
  1119. package/src/types/AvatarGroupType.js +0 -43
  1120. package/src/types/AvatarShape.js +0 -41
  1121. package/src/types/AvatarSize.js +0 -67
  1122. package/src/types/BreadcrumbsDesign.js +0 -42
  1123. package/src/types/BreadcrumbsSeparatorStyle.js +0 -69
  1124. package/src/types/BusyIndicatorSize.js +0 -47
  1125. package/src/types/ButtonDesign.js +0 -68
  1126. package/src/types/CalendarSelectionMode.js +0 -47
  1127. package/src/types/CarouselArrowsPlacement.js +0 -40
  1128. package/src/types/GrowingMode.js +0 -48
  1129. package/src/types/HasPopup.js +0 -62
  1130. package/src/types/LinkDesign.js +0 -47
  1131. package/src/types/ListGrowingMode.js +0 -48
  1132. package/src/types/ListItemType.js +0 -47
  1133. package/src/types/ListSeparators.js +0 -46
  1134. package/src/types/MessageStripDesign.js +0 -54
  1135. package/src/types/PanelAccessibleRole.js +0 -48
  1136. package/src/types/PopoverHorizontalAlign.js +0 -54
  1137. package/src/types/PopoverPlacementType.js +0 -54
  1138. package/src/types/PopoverVerticalAlign.js +0 -54
  1139. package/src/types/Priority.js +0 -55
  1140. package/src/types/SemanticColor.js +0 -61
  1141. package/src/types/SwitchDesign.js +0 -40
  1142. package/src/types/TabContainerBackgroundDesign.js +0 -48
  1143. package/src/types/TabContainerTabsPlacement.js +0 -40
  1144. package/src/types/TabLayout.js +0 -40
  1145. package/src/types/TableGrowingMode.js +0 -48
  1146. package/src/types/TableMode.js +0 -47
  1147. package/src/types/TableRowType.js +0 -40
  1148. package/src/types/TabsOverflowMode.js +0 -40
  1149. package/src/types/ToastPlacement.js +0 -91
  1150. 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