@ui5/webcomponents 0.0.0-e7dd012d7 → 0.0.0-ec448881d

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 (1438) hide show
  1. package/CHANGELOG.md +848 -0
  2. package/README.md +150 -50
  3. package/customI18n.js +50 -0
  4. package/dist/Assets-static.js +6 -0
  5. package/dist/Assets.js +2 -1
  6. package/dist/Avatar.js +189 -49
  7. package/dist/AvatarGroup.js +603 -0
  8. package/dist/Badge.js +30 -19
  9. package/dist/Breadcrumbs.js +632 -0
  10. package/dist/BreadcrumbsItem.js +103 -0
  11. package/dist/BusyIndicator.js +122 -36
  12. package/dist/Button.js +170 -80
  13. package/dist/Calendar.js +331 -665
  14. package/dist/CalendarDate.js +45 -0
  15. package/dist/CalendarHeader.js +110 -59
  16. package/dist/CalendarPart.js +111 -0
  17. package/dist/Card.js +38 -198
  18. package/dist/CardHeader.js +283 -0
  19. package/dist/Carousel.js +262 -94
  20. package/dist/CheckBox.js +178 -65
  21. package/dist/ColorPalette.js +494 -0
  22. package/dist/ColorPaletteItem.js +137 -0
  23. package/dist/ColorPalettePopover.js +244 -0
  24. package/dist/ColorPicker.js +609 -0
  25. package/dist/ComboBox.js +441 -159
  26. package/dist/ComboBoxGroupItem.js +70 -0
  27. package/dist/ComboBoxItem.js +3 -25
  28. package/dist/CustomListItem.js +22 -4
  29. package/dist/DateComponentBase.js +168 -0
  30. package/dist/DatePicker.js +281 -532
  31. package/dist/DateRangePicker.js +183 -399
  32. package/dist/DateTimePicker.js +97 -413
  33. package/dist/DayPicker.js +442 -652
  34. package/dist/Dialog.js +229 -58
  35. package/dist/DurationPicker.js +109 -511
  36. package/dist/FileUploader.js +74 -36
  37. package/dist/Filters.js +28 -0
  38. package/dist/GroupHeaderListItem.js +22 -13
  39. package/dist/Icon.js +177 -58
  40. package/dist/Input.js +658 -171
  41. package/dist/Interfaces.js +202 -0
  42. package/dist/Label.js +34 -13
  43. package/dist/Link.js +134 -43
  44. package/dist/List.js +442 -119
  45. package/dist/ListItem.js +90 -18
  46. package/dist/ListItemBase.js +33 -4
  47. package/dist/Menu.js +500 -0
  48. package/dist/MenuItem.js +162 -0
  49. package/dist/MessageStrip.js +77 -47
  50. package/dist/MonthPicker.js +169 -232
  51. package/dist/MultiComboBox.js +756 -148
  52. package/dist/MultiComboBoxItem.js +6 -1
  53. package/dist/MultiInput.js +122 -33
  54. package/dist/Option.js +69 -5
  55. package/dist/Panel.js +77 -78
  56. package/dist/Popover.js +244 -105
  57. package/dist/Popup.js +203 -74
  58. package/dist/ProgressIndicator.js +33 -20
  59. package/dist/RadioButton.js +148 -44
  60. package/dist/RadioButtonGroup.js +53 -29
  61. package/dist/RangeSlider.js +423 -62
  62. package/dist/RatingIndicator.js +66 -44
  63. package/dist/ResponsivePopover.js +74 -51
  64. package/dist/SegmentedButton.js +116 -69
  65. package/dist/SegmentedButtonItem.js +114 -0
  66. package/dist/Select.js +297 -117
  67. package/dist/Slider.js +126 -20
  68. package/dist/SliderBase.js +230 -91
  69. package/dist/SplitButton.js +440 -0
  70. package/dist/StandardListItem.js +35 -9
  71. package/dist/StepInput.js +684 -0
  72. package/dist/SuggestionGroupItem.js +64 -0
  73. package/dist/SuggestionItem.js +13 -26
  74. package/dist/SuggestionListItem.js +17 -6
  75. package/dist/Switch.js +82 -32
  76. package/dist/Tab.js +152 -36
  77. package/dist/TabContainer.js +753 -135
  78. package/dist/TabSeparator.js +43 -3
  79. package/dist/Table.js +928 -26
  80. package/dist/TableCell.js +11 -9
  81. package/dist/TableColumn.js +13 -10
  82. package/dist/TableGroupRow.js +167 -0
  83. package/dist/TableRow.js +260 -13
  84. package/dist/TextArea.js +105 -54
  85. package/dist/TimePicker.js +25 -743
  86. package/dist/TimePickerBase.js +472 -0
  87. package/dist/TimeSelection.js +500 -0
  88. package/dist/Title.js +16 -9
  89. package/dist/Toast.js +19 -8
  90. package/dist/ToggleButton.js +26 -8
  91. package/dist/Token.js +34 -17
  92. package/dist/Tokenizer.js +295 -45
  93. package/dist/Tree.js +102 -42
  94. package/dist/TreeItem.js +67 -11
  95. package/dist/TreeListItem.js +98 -3
  96. package/dist/WheelSlider.js +65 -58
  97. package/dist/YearPicker.js +186 -293
  98. package/dist/api.json +7457 -1
  99. package/dist/css/themes/Avatar.css +1 -0
  100. package/dist/css/themes/AvatarGroup.css +1 -0
  101. package/dist/css/themes/Badge.css +1 -0
  102. package/dist/css/themes/Breadcrumbs.css +1 -0
  103. package/dist/css/themes/BreadcrumbsPopover.css +1 -0
  104. package/dist/css/themes/BrowserScrollbar.css +1 -0
  105. package/dist/css/themes/BusyIndicator.css +1 -0
  106. package/dist/css/themes/Button.css +1 -0
  107. package/dist/css/themes/Button.ie11.css +1 -0
  108. package/dist/css/themes/Calendar.css +1 -0
  109. package/dist/css/themes/CalendarHeader.css +1 -0
  110. package/dist/css/themes/Card.css +1 -0
  111. package/dist/css/themes/CardHeader.css +1 -0
  112. package/dist/css/themes/Carousel.css +1 -0
  113. package/dist/css/themes/CheckBox.css +1 -0
  114. package/dist/css/themes/ColorPalette.css +1 -0
  115. package/dist/css/themes/ColorPaletteItem.css +1 -0
  116. package/dist/css/themes/ColorPalettePopover.css +1 -0
  117. package/dist/css/themes/ColorPaletteStaticArea.css +1 -0
  118. package/dist/css/themes/ColorPicker.css +1 -0
  119. package/dist/css/themes/ComboBox.css +1 -0
  120. package/dist/css/themes/ComboBoxPopover.css +1 -0
  121. package/dist/css/themes/CustomListItem.css +1 -0
  122. package/dist/css/themes/DatePicker.css +1 -0
  123. package/dist/css/themes/DatePickerPopover.css +1 -0
  124. package/dist/css/themes/DateRangePicker.css +1 -0
  125. package/dist/css/themes/DateTimePicker.css +1 -0
  126. package/dist/css/themes/DateTimePickerPopover.css +1 -0
  127. package/dist/css/themes/DayPicker.css +1 -0
  128. package/dist/css/themes/Dialog.css +1 -0
  129. package/dist/css/themes/FileUploader.css +1 -0
  130. package/dist/css/themes/GroupHeaderListItem.css +1 -0
  131. package/dist/css/themes/GrowingButton.css +1 -0
  132. package/dist/css/themes/Icon.css +1 -0
  133. package/dist/css/themes/Input.css +1 -0
  134. package/dist/css/themes/InputIcon.css +1 -0
  135. package/dist/css/themes/InvisibleTextStyles.css +1 -0
  136. package/dist/css/themes/Label.css +1 -0
  137. package/dist/css/themes/Link.css +1 -0
  138. package/dist/css/themes/List.css +1 -0
  139. package/dist/css/themes/ListItem.css +1 -0
  140. package/dist/css/themes/ListItemBase.css +1 -0
  141. package/dist/css/themes/Menu.css +1 -0
  142. package/dist/css/themes/MessageStrip.css +1 -0
  143. package/dist/css/themes/MonthPicker.css +1 -0
  144. package/dist/css/themes/MultiComboBox.css +1 -0
  145. package/dist/css/themes/MultiComboBoxPopover.css +1 -0
  146. package/dist/css/themes/MultiInput.css +1 -0
  147. package/dist/css/themes/Panel.css +1 -0
  148. package/dist/css/themes/Popover.css +1 -0
  149. package/dist/css/themes/Popup.css +1 -0
  150. package/dist/css/themes/PopupGlobal.css +1 -0
  151. package/dist/css/themes/PopupStaticAreaStyles.css +1 -0
  152. package/dist/css/themes/PopupsCommon.css +1 -0
  153. package/dist/css/themes/ProgressIndicator.css +1 -0
  154. package/dist/css/themes/RadioButton.css +1 -0
  155. package/dist/css/themes/RangeSlider.css +1 -0
  156. package/dist/css/themes/RatingIndicator.css +1 -0
  157. package/dist/css/themes/ResponsivePopover.css +1 -0
  158. package/dist/css/themes/ResponsivePopoverCommon.css +1 -0
  159. package/dist/css/themes/SegmentedButton.css +1 -0
  160. package/dist/css/themes/Select.css +1 -0
  161. package/dist/css/themes/SelectPopover.css +1 -0
  162. package/dist/css/themes/SliderBase.css +1 -0
  163. package/dist/css/themes/SplitButton.css +1 -0
  164. package/dist/css/themes/StepInput.css +1 -0
  165. package/dist/css/themes/Suggestions.css +1 -0
  166. package/dist/css/themes/Switch.css +1 -0
  167. package/dist/css/themes/Tab.css +1 -0
  168. package/dist/css/themes/TabContainer.css +1 -0
  169. package/dist/css/themes/TabInOverflow.css +1 -0
  170. package/dist/css/themes/TabInStrip.css +1 -0
  171. package/dist/css/themes/TabSemanticIcon.css +1 -0
  172. package/dist/css/themes/TabSeparatorInOverflow.css +1 -0
  173. package/dist/css/themes/TabSeparatorInStrip.css +1 -0
  174. package/dist/css/themes/Table.css +1 -0
  175. package/dist/css/themes/TableCell.css +1 -0
  176. package/dist/css/themes/TableColumn.css +1 -0
  177. package/dist/css/themes/TableGroupRow.css +1 -0
  178. package/dist/css/themes/TableRow.css +1 -0
  179. package/dist/css/themes/TapHighlightColor.css +1 -0
  180. package/dist/css/themes/TextArea.css +1 -0
  181. package/dist/css/themes/TimePicker.css +1 -0
  182. package/dist/css/themes/TimePickerPopover.css +1 -0
  183. package/dist/css/themes/TimeSelection.css +1 -0
  184. package/dist/css/themes/Title.css +1 -0
  185. package/dist/css/themes/Toast.css +1 -0
  186. package/dist/css/themes/ToggleButton.css +1 -0
  187. package/dist/css/themes/ToggleButton.ie11.css +1 -0
  188. package/dist/css/themes/Token.css +1 -0
  189. package/dist/css/themes/Tokenizer.css +1 -0
  190. package/dist/css/themes/TokenizerPopover.css +1 -0
  191. package/dist/css/themes/Tree.css +1 -0
  192. package/dist/css/themes/TreeListItem.css +1 -0
  193. package/dist/css/themes/ValueStateMessage.css +1 -0
  194. package/dist/css/themes/WheelSlider.css +1 -0
  195. package/dist/css/themes/YearPicker.css +1 -0
  196. package/dist/css/themes/sap_belize/parameters-bundle.css +1 -0
  197. package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -0
  198. package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -0
  199. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -0
  200. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -0
  201. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -0
  202. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -0
  203. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -0
  204. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -0
  205. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -0
  206. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -0
  207. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -0
  208. package/dist/features/ColorPaletteMoreColors.js +42 -0
  209. package/dist/features/InputElementsFormSupport.js +8 -6
  210. package/dist/features/InputSuggestions.js +218 -48
  211. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  212. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  213. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  214. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  215. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -0
  216. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  217. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  218. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  219. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  220. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -0
  221. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -0
  222. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -0
  223. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -0
  224. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  225. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -0
  226. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  227. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  228. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  229. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -0
  230. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  231. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  232. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  233. package/dist/generated/assets/i18n/messagebundle_in.json +1 -0
  234. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  235. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  236. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  237. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  238. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  239. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  240. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  241. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  242. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  243. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  244. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  245. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  246. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -0
  247. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  248. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  249. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  250. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  251. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  252. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  253. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  254. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  255. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  256. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  257. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  258. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  259. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  260. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  261. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  262. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  263. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  264. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  265. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  266. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -0
  267. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -0
  268. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -0
  269. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -0
  270. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -0
  271. package/dist/generated/i18n/i18n-defaults.js +2 -2
  272. package/dist/generated/json-imports/Themes-static.js +41 -0
  273. package/dist/generated/json-imports/Themes.js +26 -19
  274. package/dist/generated/json-imports/i18n-static.js +162 -0
  275. package/dist/generated/json-imports/i18n.js +113 -89
  276. package/dist/generated/templates/AvatarGroupTemplate.lit.js +9 -0
  277. package/dist/generated/templates/AvatarTemplate.lit.js +9 -16
  278. package/dist/generated/templates/BadgeTemplate.lit.js +5 -13
  279. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +8 -0
  280. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +9 -0
  281. package/dist/generated/templates/BusyIndicatorTemplate.lit.js +7 -13
  282. package/dist/generated/templates/ButtonTemplate.lit.js +6 -13
  283. package/dist/generated/templates/CalendarHeaderTemplate.lit.js +6 -11
  284. package/dist/generated/templates/CalendarTemplate.lit.js +4 -11
  285. package/dist/generated/templates/CardHeaderTemplate.lit.js +12 -0
  286. package/dist/generated/templates/CardTemplate.lit.js +5 -17
  287. package/dist/generated/templates/CarouselTemplate.lit.js +13 -19
  288. package/dist/generated/templates/CheckBoxTemplate.lit.js +7 -14
  289. package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +7 -0
  290. package/dist/generated/templates/ColorPaletteItemTemplate.lit.js +7 -0
  291. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +8 -0
  292. package/dist/generated/templates/ColorPaletteTemplate.lit.js +12 -0
  293. package/dist/generated/templates/ColorPickerTemplate.lit.js +7 -0
  294. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +20 -25
  295. package/dist/generated/templates/ComboBoxTemplate.lit.js +7 -14
  296. package/dist/generated/templates/CustomListItemTemplate.lit.js +13 -20
  297. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +7 -13
  298. package/dist/generated/templates/DatePickerTemplate.lit.js +6 -13
  299. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +9 -19
  300. package/dist/generated/templates/DayPickerTemplate.lit.js +13 -19
  301. package/dist/generated/templates/DialogTemplate.lit.js +9 -15
  302. package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +8 -14
  303. package/dist/generated/templates/FileUploaderTemplate.lit.js +7 -14
  304. package/dist/generated/templates/GroupHeaderListItemTemplate.lit.js +4 -11
  305. package/dist/generated/templates/IconTemplate.lit.js +6 -13
  306. package/dist/generated/templates/InputPopoverTemplate.lit.js +24 -31
  307. package/dist/generated/templates/InputTemplate.lit.js +9 -15
  308. package/dist/generated/templates/LabelTemplate.lit.js +4 -11
  309. package/dist/generated/templates/LinkTemplate.lit.js +5 -12
  310. package/dist/generated/templates/ListItemTemplate.lit.js +13 -20
  311. package/dist/generated/templates/ListTemplate.lit.js +12 -16
  312. package/dist/generated/templates/MenuTemplate.lit.js +15 -0
  313. package/dist/generated/templates/MessageStripTemplate.lit.js +8 -15
  314. package/dist/generated/templates/MonthPickerTemplate.lit.js +6 -13
  315. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +23 -27
  316. package/dist/generated/templates/MultiComboBoxTemplate.lit.js +9 -16
  317. package/dist/generated/templates/MultiInputTemplate.lit.js +13 -19
  318. package/dist/generated/templates/PanelTemplate.lit.js +9 -14
  319. package/dist/generated/templates/PopoverTemplate.lit.js +9 -16
  320. package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +4 -11
  321. package/dist/generated/templates/PopupTemplate.lit.js +4 -11
  322. package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +14 -17
  323. package/dist/generated/templates/RadioButtonTemplate.lit.js +7 -14
  324. package/dist/generated/templates/RangeSliderTemplate.lit.js +13 -17
  325. package/dist/generated/templates/RatingIndicatorTemplate.lit.js +13 -16
  326. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +16 -21
  327. package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +8 -0
  328. package/dist/generated/templates/SegmentedButtonTemplate.lit.js +4 -11
  329. package/dist/generated/templates/SelectPopoverTemplate.lit.js +20 -27
  330. package/dist/generated/templates/SelectTemplate.lit.js +6 -12
  331. package/dist/generated/templates/SliderBaseTemplate.lit.js +11 -15
  332. package/dist/generated/templates/SliderTemplate.lit.js +12 -16
  333. package/dist/generated/templates/SplitButtonTemplate.lit.js +7 -0
  334. package/dist/generated/templates/StandardListItemTemplate.lit.js +21 -28
  335. package/dist/generated/templates/StepInputTemplate.lit.js +10 -0
  336. package/dist/generated/templates/SuggestionListItemTemplate.lit.js +24 -31
  337. package/dist/generated/templates/SwitchTemplate.lit.js +8 -13
  338. package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +5 -13
  339. package/dist/generated/templates/TabContainerTemplate.lit.js +13 -23
  340. package/dist/generated/templates/TabInOverflowTemplate.lit.js +8 -13
  341. package/dist/generated/templates/TabInStripTemplate.lit.js +11 -17
  342. package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js +7 -0
  343. package/dist/generated/templates/TabSeparatorInStripTemplate.lit.js +7 -0
  344. package/dist/generated/templates/TabTemplate.lit.js +5 -11
  345. package/dist/generated/templates/TableCellTemplate.lit.js +4 -11
  346. package/dist/generated/templates/TableColumnTemplate.lit.js +4 -11
  347. package/dist/generated/templates/TableGroupRowTemplate.lit.js +7 -0
  348. package/dist/generated/templates/TableRowTemplate.lit.js +12 -18
  349. package/dist/generated/templates/TableTemplate.lit.js +13 -15
  350. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +8 -15
  351. package/dist/generated/templates/TextAreaTemplate.lit.js +8 -15
  352. package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +4 -15
  353. package/dist/generated/templates/TimePickerTemplate.lit.js +6 -13
  354. package/dist/generated/templates/TimeSelectionTemplate.lit.js +11 -0
  355. package/dist/generated/templates/TitleTemplate.lit.js +10 -17
  356. package/dist/generated/templates/ToastTemplate.lit.js +5 -11
  357. package/dist/generated/templates/ToggleButtonTemplate.lit.js +6 -13
  358. package/dist/generated/templates/TokenTemplate.lit.js +7 -14
  359. package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +9 -16
  360. package/dist/generated/templates/TokenizerTemplate.lit.js +6 -13
  361. package/dist/generated/templates/TreeListItemTemplate.lit.js +18 -24
  362. package/dist/generated/templates/TreeTemplate.lit.js +5 -12
  363. package/dist/generated/templates/WheelSliderTemplate.lit.js +7 -14
  364. package/dist/generated/templates/YearPickerTemplate.lit.js +6 -13
  365. package/dist/generated/themes/Avatar.css.js +5 -5
  366. package/dist/generated/themes/AvatarGroup.css.js +8 -0
  367. package/dist/generated/themes/Badge.css.js +5 -5
  368. package/dist/generated/themes/Breadcrumbs.css.js +8 -0
  369. package/dist/generated/themes/BreadcrumbsPopover.css.js +8 -0
  370. package/dist/generated/themes/BrowserScrollbar.css.js +8 -0
  371. package/dist/generated/themes/BusyIndicator.css.js +5 -5
  372. package/dist/generated/themes/Button.css.js +5 -5
  373. package/dist/generated/themes/Button.ie11.css.js +8 -0
  374. package/dist/generated/themes/Calendar.css.js +5 -5
  375. package/dist/generated/themes/CalendarHeader.css.js +5 -5
  376. package/dist/generated/themes/Card.css.js +5 -5
  377. package/dist/generated/themes/CardHeader.css.js +8 -0
  378. package/dist/generated/themes/Carousel.css.js +5 -5
  379. package/dist/generated/themes/CheckBox.css.js +5 -5
  380. package/dist/generated/themes/ColorPalette.css.js +8 -0
  381. package/dist/generated/themes/ColorPaletteItem.css.js +8 -0
  382. package/dist/generated/themes/ColorPalettePopover.css.js +8 -0
  383. package/dist/generated/themes/ColorPaletteStaticArea.css.js +8 -0
  384. package/dist/generated/themes/ColorPicker.css.js +8 -0
  385. package/dist/generated/themes/ComboBox.css.js +5 -5
  386. package/dist/generated/themes/ComboBoxPopover.css.js +5 -5
  387. package/dist/generated/themes/CustomListItem.css.js +5 -5
  388. package/dist/generated/themes/DatePicker.css.js +5 -5
  389. package/dist/generated/themes/DatePickerPopover.css.js +5 -5
  390. package/dist/generated/themes/DateRangePicker.css.js +5 -5
  391. package/dist/generated/themes/DateTimePicker.css.js +5 -5
  392. package/dist/generated/themes/DateTimePickerPopover.css.js +5 -5
  393. package/dist/generated/themes/DayPicker.css.js +5 -5
  394. package/dist/generated/themes/Dialog.css.js +5 -5
  395. package/dist/generated/themes/FileUploader.css.js +5 -5
  396. package/dist/generated/themes/GroupHeaderListItem.css.js +5 -5
  397. package/dist/generated/themes/GrowingButton.css.js +8 -0
  398. package/dist/generated/themes/Icon.css.js +5 -5
  399. package/dist/generated/themes/Input.css.js +5 -5
  400. package/dist/generated/themes/InputIcon.css.js +5 -5
  401. package/dist/generated/themes/InvisibleTextStyles.css.js +5 -5
  402. package/dist/generated/themes/Label.css.js +5 -5
  403. package/dist/generated/themes/Link.css.js +5 -5
  404. package/dist/generated/themes/List.css.js +5 -5
  405. package/dist/generated/themes/ListItem.css.js +5 -5
  406. package/dist/generated/themes/ListItemBase.css.js +5 -5
  407. package/dist/generated/themes/Menu.css.js +8 -0
  408. package/dist/generated/themes/MessageStrip.css.js +5 -5
  409. package/dist/generated/themes/MonthPicker.css.js +5 -5
  410. package/dist/generated/themes/MultiComboBox.css.js +5 -5
  411. package/dist/generated/themes/MultiComboBoxPopover.css.js +8 -0
  412. package/dist/generated/themes/MultiInput.css.js +5 -5
  413. package/dist/generated/themes/Panel.css.js +5 -5
  414. package/dist/generated/themes/Popover.css.js +5 -5
  415. package/dist/generated/themes/Popup.css.js +5 -5
  416. package/dist/generated/themes/PopupGlobal.css.js +8 -0
  417. package/dist/generated/themes/PopupStaticAreaStyles.css.js +5 -5
  418. package/dist/generated/themes/PopupsCommon.css.js +5 -5
  419. package/dist/generated/themes/ProgressIndicator.css.js +5 -5
  420. package/dist/generated/themes/RadioButton.css.js +5 -5
  421. package/dist/generated/themes/RangeSlider.css.js +8 -0
  422. package/dist/generated/themes/RatingIndicator.css.js +5 -5
  423. package/dist/generated/themes/ResponsivePopover.css.js +5 -5
  424. package/dist/generated/themes/ResponsivePopoverCommon.css.js +5 -5
  425. package/dist/generated/themes/SegmentedButton.css.js +5 -5
  426. package/dist/generated/themes/Select.css.js +5 -5
  427. package/dist/generated/themes/SelectPopover.css.js +5 -5
  428. package/dist/generated/themes/SliderBase.css.js +5 -5
  429. package/dist/generated/themes/SplitButton.css.js +8 -0
  430. package/dist/generated/themes/StepInput.css.js +8 -0
  431. package/dist/generated/themes/Suggestions.css.js +8 -0
  432. package/dist/generated/themes/Switch.css.js +5 -5
  433. package/dist/generated/themes/Tab.css.js +5 -5
  434. package/dist/generated/themes/TabContainer.css.js +5 -5
  435. package/dist/generated/themes/TabInOverflow.css.js +5 -5
  436. package/dist/generated/themes/TabInStrip.css.js +5 -5
  437. package/dist/generated/themes/TabSemanticIcon.css.js +8 -0
  438. package/dist/generated/themes/TabSeparatorInOverflow.css.js +8 -0
  439. package/dist/generated/themes/TabSeparatorInStrip.css.js +8 -0
  440. package/dist/generated/themes/Table.css.js +5 -5
  441. package/dist/generated/themes/TableCell.css.js +5 -5
  442. package/dist/generated/themes/TableColumn.css.js +5 -5
  443. package/dist/generated/themes/TableGroupRow.css.js +8 -0
  444. package/dist/generated/themes/TableRow.css.js +5 -5
  445. package/dist/generated/themes/TapHighlightColor.css.js +8 -0
  446. package/dist/generated/themes/TextArea.css.js +5 -5
  447. package/dist/generated/themes/TimePicker.css.js +5 -5
  448. package/dist/generated/themes/TimePickerPopover.css.js +5 -5
  449. package/dist/generated/themes/TimeSelection.css.js +8 -0
  450. package/dist/generated/themes/Title.css.js +5 -5
  451. package/dist/generated/themes/Toast.css.js +5 -5
  452. package/dist/generated/themes/ToggleButton.css.js +5 -5
  453. package/dist/generated/themes/ToggleButton.ie11.css.js +8 -0
  454. package/dist/generated/themes/Token.css.js +5 -5
  455. package/dist/generated/themes/Tokenizer.css.js +5 -5
  456. package/dist/generated/themes/TokenizerPopover.css.js +8 -0
  457. package/dist/generated/themes/Tree.css.js +5 -5
  458. package/dist/generated/themes/TreeListItem.css.js +5 -5
  459. package/dist/generated/themes/ValueStateMessage.css.js +5 -5
  460. package/dist/generated/themes/WheelSlider.css.js +5 -5
  461. package/dist/generated/themes/YearPicker.css.js +5 -5
  462. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  463. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  464. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  465. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  466. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  467. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  468. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  469. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -0
  470. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -0
  471. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -0
  472. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -0
  473. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -0
  474. package/dist/i18n/messagebundle.properties +389 -0
  475. package/dist/i18n/messagebundle_ar.properties +246 -0
  476. package/dist/i18n/messagebundle_bg.properties +246 -0
  477. package/dist/i18n/messagebundle_ca.properties +246 -0
  478. package/dist/i18n/messagebundle_cs.properties +246 -0
  479. package/dist/i18n/messagebundle_cy.properties +246 -0
  480. package/dist/i18n/messagebundle_da.properties +246 -0
  481. package/dist/i18n/messagebundle_de.properties +246 -0
  482. package/dist/i18n/messagebundle_el.properties +246 -0
  483. package/dist/i18n/messagebundle_en.properties +246 -0
  484. package/dist/i18n/messagebundle_en_GB.properties +246 -0
  485. package/dist/i18n/messagebundle_en_US_sappsd.properties +246 -0
  486. package/dist/i18n/messagebundle_en_US_saprigi.properties +246 -0
  487. package/dist/i18n/messagebundle_en_US_saptrc.properties +246 -0
  488. package/dist/i18n/messagebundle_es.properties +246 -0
  489. package/dist/i18n/messagebundle_es_MX.properties +246 -0
  490. package/dist/i18n/messagebundle_et.properties +246 -0
  491. package/dist/i18n/messagebundle_fi.properties +246 -0
  492. package/dist/i18n/messagebundle_fr.properties +246 -0
  493. package/dist/i18n/messagebundle_fr_CA.properties +246 -0
  494. package/dist/i18n/messagebundle_hi.properties +246 -0
  495. package/dist/i18n/messagebundle_hr.properties +246 -0
  496. package/dist/i18n/messagebundle_hu.properties +246 -0
  497. package/dist/i18n/messagebundle_id.properties +246 -0
  498. package/dist/i18n/messagebundle_in.properties +172 -0
  499. package/dist/i18n/messagebundle_it.properties +246 -0
  500. package/dist/i18n/messagebundle_iw.properties +246 -0
  501. package/dist/i18n/messagebundle_ja.properties +246 -0
  502. package/dist/i18n/messagebundle_kk.properties +246 -0
  503. package/dist/i18n/messagebundle_ko.properties +246 -0
  504. package/dist/i18n/messagebundle_lt.properties +246 -0
  505. package/dist/i18n/messagebundle_lv.properties +246 -0
  506. package/dist/i18n/messagebundle_ms.properties +246 -0
  507. package/dist/i18n/messagebundle_nl.properties +246 -0
  508. package/dist/i18n/messagebundle_no.properties +246 -0
  509. package/dist/i18n/messagebundle_pl.properties +246 -0
  510. package/dist/i18n/messagebundle_pt.properties +246 -0
  511. package/dist/i18n/messagebundle_pt_PT.properties +246 -0
  512. package/dist/i18n/messagebundle_ro.properties +246 -0
  513. package/dist/i18n/messagebundle_ru.properties +246 -0
  514. package/dist/i18n/messagebundle_sh.properties +246 -0
  515. package/dist/i18n/messagebundle_sk.properties +246 -0
  516. package/dist/i18n/messagebundle_sl.properties +246 -0
  517. package/dist/i18n/messagebundle_sv.properties +246 -0
  518. package/dist/i18n/messagebundle_th.properties +246 -0
  519. package/dist/i18n/messagebundle_tr.properties +246 -0
  520. package/dist/i18n/messagebundle_uk.properties +246 -0
  521. package/dist/i18n/messagebundle_vi.properties +246 -0
  522. package/dist/i18n/messagebundle_zh_CN.properties +246 -0
  523. package/dist/i18n/messagebundle_zh_TW.properties +246 -0
  524. package/dist/popup-utils/OpenedPopupsRegistry.js +1 -1
  525. package/dist/popup-utils/PopoverRegistry.js +2 -4
  526. package/dist/timepicker-utils/TimeSlider.js +15 -13
  527. package/dist/types/{AvatarBackgroundColor.js → AvatarColorScheme.js} +9 -9
  528. package/dist/types/AvatarGroupType.js +43 -0
  529. package/dist/types/AvatarShape.js +1 -1
  530. package/dist/types/AvatarSize.js +1 -1
  531. package/dist/types/BreadcrumbsDesign.js +42 -0
  532. package/dist/types/BreadcrumbsSeparatorStyle.js +69 -0
  533. package/dist/types/BusyIndicatorSize.js +1 -1
  534. package/dist/types/ButtonDesign.js +8 -1
  535. package/dist/types/CalendarSelectionMode.js +47 -0
  536. package/dist/types/CarouselArrowsPlacement.js +3 -3
  537. package/dist/types/GrowingMode.js +48 -0
  538. package/dist/types/HasPopup.js +62 -0
  539. package/dist/types/InputType.js +7 -7
  540. package/dist/types/LinkDesign.js +1 -1
  541. package/dist/types/ListGrowingMode.js +48 -0
  542. package/dist/types/ListItemType.js +1 -1
  543. package/dist/types/ListMode.js +1 -1
  544. package/dist/types/ListSeparators.js +1 -1
  545. package/{src/types/MessageStripType.js → dist/types/MessageStripDesign.js} +7 -7
  546. package/dist/types/PanelAccessibleRole.js +1 -1
  547. package/dist/types/PopoverHorizontalAlign.js +1 -1
  548. package/dist/types/PopoverPlacementType.js +2 -2
  549. package/dist/types/PopoverVerticalAlign.js +1 -2
  550. package/dist/types/Priority.js +1 -1
  551. package/dist/types/SemanticColor.js +1 -1
  552. package/dist/types/SwitchDesign.js +40 -0
  553. package/dist/types/TabContainerTabsPlacement.js +5 -5
  554. package/dist/types/TabLayout.js +1 -1
  555. package/dist/types/TableGrowingMode.js +48 -0
  556. package/dist/types/TableMode.js +47 -0
  557. package/dist/types/TableRowType.js +40 -0
  558. package/dist/types/TabsOverflowMode.js +40 -0
  559. package/dist/types/TitleLevel.js +1 -1
  560. package/dist/types/ToastPlacement.js +1 -2
  561. package/dist/types/WrappingType.js +41 -0
  562. package/package-scripts.js +1 -0
  563. package/package.json +17 -7
  564. package/src/Assets-static.js +6 -0
  565. package/src/Assets.js +2 -1
  566. package/src/Avatar.hbs +14 -3
  567. package/src/Avatar.js +189 -49
  568. package/src/AvatarGroup.hbs +30 -0
  569. package/src/AvatarGroup.js +603 -0
  570. package/src/Badge.hbs +2 -4
  571. package/src/Badge.js +30 -19
  572. package/src/Breadcrumbs.hbs +44 -0
  573. package/src/Breadcrumbs.js +632 -0
  574. package/src/BreadcrumbsItem.js +103 -0
  575. package/src/BreadcrumbsPopover.hbs +28 -0
  576. package/src/BusyIndicator.hbs +28 -14
  577. package/src/BusyIndicator.js +122 -36
  578. package/src/Button.hbs +8 -7
  579. package/src/Button.js +170 -80
  580. package/src/Calendar.hbs +53 -48
  581. package/src/Calendar.js +331 -665
  582. package/src/CalendarDate.js +45 -0
  583. package/src/CalendarHeader.hbs +30 -40
  584. package/src/CalendarHeader.js +110 -59
  585. package/src/CalendarPart.js +111 -0
  586. package/src/Card.hbs +7 -40
  587. package/src/Card.js +38 -198
  588. package/src/CardHeader.hbs +45 -0
  589. package/src/CardHeader.js +283 -0
  590. package/src/Carousel.hbs +24 -16
  591. package/src/Carousel.js +262 -94
  592. package/src/CheckBox.hbs +11 -7
  593. package/src/CheckBox.js +178 -65
  594. package/src/ColorPalette.hbs +52 -0
  595. package/src/ColorPalette.js +494 -0
  596. package/src/ColorPaletteDialog.hbs +18 -0
  597. package/src/ColorPaletteItem.hbs +11 -0
  598. package/src/ColorPaletteItem.js +137 -0
  599. package/src/ColorPalettePopover.hbs +31 -0
  600. package/src/ColorPalettePopover.js +244 -0
  601. package/src/ColorPicker.hbs +106 -0
  602. package/src/ColorPicker.js +609 -0
  603. package/src/ComboBox.hbs +5 -4
  604. package/src/ComboBox.js +441 -159
  605. package/src/ComboBoxGroupItem.js +70 -0
  606. package/src/ComboBoxItem.js +3 -25
  607. package/src/ComboBoxPopover.hbs +29 -19
  608. package/src/CustomListItem.js +22 -4
  609. package/src/DateComponentBase.js +168 -0
  610. package/src/DatePicker.hbs +6 -6
  611. package/src/DatePicker.js +281 -532
  612. package/src/DatePickerPopover.hbs +21 -18
  613. package/src/DateRangePicker.js +183 -399
  614. package/src/DateTimePicker.js +97 -413
  615. package/src/DateTimePickerPopover.hbs +31 -53
  616. package/src/DayPicker.hbs +18 -12
  617. package/src/DayPicker.js +442 -652
  618. package/src/Dialog.hbs +17 -13
  619. package/src/Dialog.js +229 -58
  620. package/src/DurationPicker.js +109 -511
  621. package/src/FileUploader.hbs +3 -0
  622. package/src/FileUploader.js +74 -36
  623. package/src/FileUploaderPopover.hbs +4 -2
  624. package/src/Filters.js +28 -0
  625. package/src/GroupHeaderListItem.hbs +4 -4
  626. package/src/GroupHeaderListItem.js +22 -13
  627. package/src/Icon.hbs +4 -3
  628. package/src/Icon.js +177 -58
  629. package/src/Input.hbs +20 -9
  630. package/src/Input.js +658 -171
  631. package/src/InputPopover.hbs +17 -14
  632. package/src/Interfaces.js +202 -0
  633. package/src/Label.hbs +2 -3
  634. package/src/Label.js +34 -13
  635. package/src/Link.hbs +4 -2
  636. package/src/Link.js +134 -43
  637. package/src/List.hbs +77 -37
  638. package/src/List.js +442 -119
  639. package/src/ListItem.hbs +23 -9
  640. package/src/ListItem.js +90 -18
  641. package/src/ListItemBase.js +33 -4
  642. package/src/Menu.hbs +100 -0
  643. package/src/Menu.js +500 -0
  644. package/src/MenuItem.js +162 -0
  645. package/src/MessageStrip.hbs +10 -12
  646. package/src/MessageStrip.js +77 -47
  647. package/src/MonthPicker.hbs +6 -6
  648. package/src/MonthPicker.js +169 -232
  649. package/src/MultiComboBox.hbs +9 -9
  650. package/src/MultiComboBox.js +756 -148
  651. package/src/MultiComboBoxItem.js +6 -1
  652. package/src/MultiComboBoxPopover.hbs +42 -19
  653. package/src/MultiInput.hbs +3 -2
  654. package/src/MultiInput.js +122 -33
  655. package/src/Option.js +69 -5
  656. package/src/Panel.hbs +30 -19
  657. package/src/Panel.js +77 -78
  658. package/src/Popover.hbs +2 -2
  659. package/src/Popover.js +244 -105
  660. package/src/Popup.hbs +5 -2
  661. package/src/Popup.js +203 -74
  662. package/src/PopupBlockLayer.hbs +1 -1
  663. package/src/ProgressIndicator.hbs +7 -2
  664. package/src/ProgressIndicator.js +33 -20
  665. package/src/RadioButton.hbs +8 -6
  666. package/src/RadioButton.js +148 -44
  667. package/src/RadioButtonGroup.js +53 -29
  668. package/src/RangeSlider.hbs +54 -2
  669. package/src/RangeSlider.js +423 -62
  670. package/src/RatingIndicator.hbs +28 -10
  671. package/src/RatingIndicator.js +66 -44
  672. package/src/ResponsivePopover.hbs +19 -12
  673. package/src/ResponsivePopover.js +74 -51
  674. package/src/SegmentedButton.hbs +13 -6
  675. package/src/SegmentedButton.js +116 -69
  676. package/src/SegmentedButtonItem.hbs +41 -0
  677. package/src/SegmentedButtonItem.js +114 -0
  678. package/src/Select.hbs +27 -19
  679. package/src/Select.js +297 -117
  680. package/src/SelectPopover.hbs +30 -25
  681. package/src/Slider.hbs +32 -1
  682. package/src/Slider.js +126 -20
  683. package/src/SliderBase.hbs +22 -6
  684. package/src/SliderBase.js +230 -91
  685. package/src/SplitButton.hbs +53 -0
  686. package/src/SplitButton.js +440 -0
  687. package/src/StandardListItem.hbs +9 -7
  688. package/src/StandardListItem.js +35 -9
  689. package/src/StepInput.hbs +81 -0
  690. package/src/StepInput.js +684 -0
  691. package/src/SuggestionGroupItem.js +64 -0
  692. package/src/SuggestionItem.js +13 -26
  693. package/src/SuggestionListItem.hbs +4 -4
  694. package/src/SuggestionListItem.js +17 -6
  695. package/src/Switch.hbs +22 -7
  696. package/src/Switch.js +82 -32
  697. package/src/Tab.hbs +5 -1
  698. package/src/Tab.js +152 -36
  699. package/src/TabContainer.hbs +60 -58
  700. package/src/TabContainer.js +753 -135
  701. package/src/TabContainerPopover.hbs +7 -9
  702. package/src/TabInOverflow.hbs +18 -9
  703. package/src/TabInStrip.hbs +26 -15
  704. package/src/TabSeparator.js +43 -3
  705. package/src/TabSeparatorInOverflow.hbs +9 -0
  706. package/src/TabSeparatorInStrip.hbs +6 -0
  707. package/src/Table.hbs +110 -25
  708. package/src/Table.js +928 -26
  709. package/src/TableCell.hbs +1 -0
  710. package/src/TableCell.js +11 -9
  711. package/src/TableColumn.hbs +1 -0
  712. package/src/TableColumn.js +13 -10
  713. package/src/TableGroupRow.hbs +12 -0
  714. package/src/TableGroupRow.js +167 -0
  715. package/src/TableRow.hbs +31 -2
  716. package/src/TableRow.js +260 -13
  717. package/src/TextArea.hbs +2 -4
  718. package/src/TextArea.js +105 -54
  719. package/src/TextAreaPopover.hbs +3 -3
  720. package/src/TimePicker.hbs +6 -3
  721. package/src/TimePicker.js +25 -743
  722. package/src/TimePickerBase.js +472 -0
  723. package/src/TimePickerPopover.hbs +27 -52
  724. package/src/TimeSelection.hbs +60 -0
  725. package/src/TimeSelection.js +500 -0
  726. package/src/Title.js +16 -9
  727. package/src/Toast.hbs +12 -11
  728. package/src/Toast.js +19 -8
  729. package/src/ToggleButton.js +26 -8
  730. package/src/Token.hbs +2 -1
  731. package/src/Token.js +34 -17
  732. package/src/Tokenizer.hbs +4 -5
  733. package/src/Tokenizer.js +295 -45
  734. package/src/TokenizerPopover.hbs +18 -18
  735. package/src/Tree.hbs +12 -2
  736. package/src/Tree.js +102 -42
  737. package/src/TreeItem.js +67 -11
  738. package/src/TreeListItem.hbs +17 -4
  739. package/src/TreeListItem.js +98 -3
  740. package/src/WheelSlider.hbs +17 -10
  741. package/src/WheelSlider.js +65 -58
  742. package/src/YearPicker.hbs +9 -7
  743. package/src/YearPicker.js +186 -293
  744. package/src/features/ColorPaletteMoreColors.js +42 -0
  745. package/src/features/InputElementsFormSupport.js +8 -6
  746. package/src/features/InputSuggestions.js +218 -48
  747. package/src/i18n/messagebundle.properties +196 -181
  748. package/src/i18n/messagebundle_ar.properties +106 -110
  749. package/src/i18n/messagebundle_bg.properties +106 -110
  750. package/src/i18n/messagebundle_ca.properties +106 -110
  751. package/src/i18n/messagebundle_cs.properties +106 -110
  752. package/src/i18n/messagebundle_cy.properties +246 -0
  753. package/src/i18n/messagebundle_da.properties +106 -110
  754. package/src/i18n/messagebundle_de.properties +106 -110
  755. package/src/i18n/messagebundle_el.properties +106 -110
  756. package/src/i18n/messagebundle_en.properties +106 -110
  757. package/src/i18n/messagebundle_en_GB.properties +106 -112
  758. package/src/i18n/messagebundle_en_US_sappsd.properties +106 -112
  759. package/src/i18n/messagebundle_en_US_saprigi.properties +106 -110
  760. package/src/i18n/messagebundle_en_US_saptrc.properties +106 -112
  761. package/src/i18n/messagebundle_es.properties +106 -110
  762. package/src/i18n/messagebundle_es_MX.properties +106 -112
  763. package/src/i18n/messagebundle_et.properties +106 -110
  764. package/src/i18n/messagebundle_fi.properties +106 -110
  765. package/src/i18n/messagebundle_fr.properties +106 -110
  766. package/src/i18n/messagebundle_fr_CA.properties +246 -0
  767. package/src/i18n/messagebundle_hi.properties +106 -110
  768. package/src/i18n/messagebundle_hr.properties +106 -110
  769. package/src/i18n/messagebundle_hu.properties +106 -110
  770. package/src/i18n/messagebundle_id.properties +246 -0
  771. package/src/i18n/messagebundle_in.properties +172 -0
  772. package/src/i18n/messagebundle_it.properties +106 -110
  773. package/src/i18n/messagebundle_iw.properties +106 -110
  774. package/src/i18n/messagebundle_ja.properties +108 -112
  775. package/src/i18n/messagebundle_kk.properties +106 -110
  776. package/src/i18n/messagebundle_ko.properties +106 -110
  777. package/src/i18n/messagebundle_lt.properties +106 -110
  778. package/src/i18n/messagebundle_lv.properties +106 -110
  779. package/src/i18n/messagebundle_ms.properties +106 -110
  780. package/src/i18n/messagebundle_nl.properties +106 -110
  781. package/src/i18n/messagebundle_no.properties +106 -110
  782. package/src/i18n/messagebundle_pl.properties +106 -110
  783. package/src/i18n/messagebundle_pt.properties +106 -110
  784. package/src/i18n/messagebundle_pt_PT.properties +246 -0
  785. package/src/i18n/messagebundle_ro.properties +105 -109
  786. package/src/i18n/messagebundle_ru.properties +106 -110
  787. package/src/i18n/messagebundle_sh.properties +106 -110
  788. package/src/i18n/messagebundle_sk.properties +106 -110
  789. package/src/i18n/messagebundle_sl.properties +106 -110
  790. package/src/i18n/messagebundle_sv.properties +106 -110
  791. package/src/i18n/messagebundle_th.properties +106 -110
  792. package/src/i18n/messagebundle_tr.properties +106 -110
  793. package/src/i18n/messagebundle_uk.properties +109 -113
  794. package/src/i18n/messagebundle_vi.properties +106 -110
  795. package/src/i18n/messagebundle_zh_CN.properties +106 -110
  796. package/src/i18n/messagebundle_zh_TW.properties +106 -110
  797. package/src/popup-utils/OpenedPopupsRegistry.js +1 -1
  798. package/src/popup-utils/PopoverRegistry.js +2 -4
  799. package/src/themes/Avatar.css +213 -0
  800. package/src/themes/AvatarGroup.css +83 -0
  801. package/src/themes/Badge.css +139 -0
  802. package/src/themes/Breadcrumbs.css +104 -0
  803. package/src/themes/BreadcrumbsPopover.css +10 -0
  804. package/src/themes/BrowserScrollbar.css +25 -0
  805. package/src/themes/BusyIndicator.css +143 -0
  806. package/src/themes/Button.css +281 -0
  807. package/src/themes/Button.ie11.css +48 -0
  808. package/src/themes/Calendar.css +23 -0
  809. package/src/themes/CalendarHeader.css +134 -0
  810. package/src/themes/Card.css +45 -0
  811. package/src/themes/CardHeader.css +131 -0
  812. package/src/themes/Carousel.css +144 -0
  813. package/src/themes/CheckBox.css +273 -0
  814. package/src/themes/ColorPalette.css +77 -0
  815. package/src/themes/ColorPaletteItem.css +107 -0
  816. package/src/themes/ColorPalettePopover.css +21 -0
  817. package/src/themes/ColorPaletteStaticArea.css +17 -0
  818. package/src/themes/ColorPicker.css +235 -0
  819. package/src/themes/ComboBox.css +10 -0
  820. package/src/themes/ComboBoxPopover.css +17 -0
  821. package/src/themes/CustomListItem.css +31 -0
  822. package/src/themes/DatePicker.css +46 -0
  823. package/src/themes/DatePickerPopover.css +9 -0
  824. package/src/themes/DateRangePicker.css +16 -0
  825. package/src/themes/DateTimePicker.css +11 -0
  826. package/src/themes/DateTimePickerPopover.css +82 -0
  827. package/src/themes/DayPicker.css +280 -0
  828. package/src/themes/Dialog.css +74 -0
  829. package/src/themes/FileUploader.css +62 -0
  830. package/src/themes/GroupHeaderListItem.css +27 -0
  831. package/src/themes/GrowingButton.css +68 -0
  832. package/src/themes/Icon.css +50 -0
  833. package/src/themes/Input.css +450 -0
  834. package/src/themes/InputIcon.css +41 -0
  835. package/src/themes/InvisibleTextStyles.css +9 -0
  836. package/src/themes/Label.css +79 -0
  837. package/src/themes/Link.css +94 -0
  838. package/src/themes/List.css +117 -0
  839. package/src/themes/ListItem.css +202 -0
  840. package/src/themes/ListItemBase.css +86 -0
  841. package/src/themes/Menu.css +88 -0
  842. package/src/themes/MessageStrip.css +93 -0
  843. package/src/themes/MonthPicker.css +82 -0
  844. package/src/themes/MultiComboBox.css +41 -0
  845. package/src/themes/MultiComboBoxPopover.css +3 -0
  846. package/src/themes/MultiInput.css +18 -0
  847. package/src/themes/Panel.css +135 -0
  848. package/src/themes/Popover.css +85 -0
  849. package/src/themes/Popup.css +5 -0
  850. package/src/themes/PopupGlobal.css +3 -0
  851. package/src/themes/PopupStaticAreaStyles.css +17 -0
  852. package/src/themes/PopupsCommon.css +128 -0
  853. package/src/themes/ProgressIndicator.css +214 -0
  854. package/src/themes/RadioButton.css +300 -0
  855. package/src/themes/RangeSlider.css +89 -0
  856. package/src/themes/RatingIndicator.css +96 -0
  857. package/src/themes/ResponsivePopover.css +25 -0
  858. package/src/themes/ResponsivePopoverCommon.css +208 -0
  859. package/src/themes/SegmentedButton.css +81 -0
  860. package/src/themes/Select.css +39 -0
  861. package/src/themes/SelectPopover.css +8 -0
  862. package/src/themes/SliderBase.css +246 -0
  863. package/src/themes/SplitButton.css +209 -0
  864. package/src/themes/StepInput.css +271 -0
  865. package/src/themes/Suggestions.css +17 -0
  866. package/src/themes/Switch.css +378 -0
  867. package/src/themes/Tab.css +9 -0
  868. package/src/themes/TabContainer.css +129 -0
  869. package/src/themes/TabInOverflow.css +68 -0
  870. package/src/themes/TabInStrip.css +398 -0
  871. package/src/themes/TabSemanticIcon.css +18 -0
  872. package/src/themes/TabSeparatorInOverflow.css +10 -0
  873. package/src/themes/TabSeparatorInStrip.css +5 -0
  874. package/src/themes/Table.css +96 -0
  875. package/src/themes/TableCell.css +24 -0
  876. package/src/themes/TableColumn.css +23 -0
  877. package/src/themes/TableGroupRow.css +32 -0
  878. package/src/themes/TableRow.css +93 -0
  879. package/src/themes/TapHighlightColor.css +3 -0
  880. package/src/themes/TextArea.css +369 -0
  881. package/src/themes/TimePicker.css +50 -0
  882. package/src/themes/TimePickerPopover.css +15 -0
  883. package/src/themes/TimeSelection.css +27 -0
  884. package/src/themes/Title.css +65 -0
  885. package/src/themes/Toast.css +93 -0
  886. package/src/themes/ToggleButton.css +128 -0
  887. package/src/themes/ToggleButton.ie11.css +48 -0
  888. package/src/themes/Token.css +108 -0
  889. package/src/themes/Tokenizer.css +68 -0
  890. package/src/themes/TokenizerPopover.css +4 -0
  891. package/src/themes/Tree.css +11 -0
  892. package/src/themes/TreeListItem.css +101 -0
  893. package/src/themes/ValueStateMessage.css +83 -0
  894. package/src/themes/WheelSlider.css +203 -0
  895. package/src/themes/YearPicker.css +83 -0
  896. package/src/themes/base/Avatar-parameters.css +57 -0
  897. package/src/themes/base/AvatarGroup-parameters.css +3 -0
  898. package/src/themes/base/Badge-parameters.css +43 -0
  899. package/src/themes/base/BrowserScrollbar-parameters.css +4 -0
  900. package/src/themes/base/BusyIndicator-parameters.css +5 -0
  901. package/src/themes/base/Button-parameters.css +35 -0
  902. package/src/themes/base/CalendarHeader-parameters.css +20 -0
  903. package/src/themes/base/Card-parameters.css +19 -0
  904. package/src/themes/base/Carousel-parameters.css +10 -0
  905. package/src/themes/base/CheckBox-parameters.css +56 -0
  906. package/src/themes/base/ColorPalette-parameters.css +21 -0
  907. package/src/themes/base/ColorPicker-parameters.css +13 -0
  908. package/src/themes/base/DatePicker-parameters.css +6 -0
  909. package/src/themes/base/DayPicker-parameters.css +41 -0
  910. package/src/themes/base/Dialog-parameters.css +10 -0
  911. package/src/themes/base/FileUploader-parameters.css +4 -0
  912. package/src/themes/base/GroupHeaderListItem-parameters.css +3 -0
  913. package/src/themes/base/GrowingButton-parameters.css +6 -0
  914. package/src/themes/base/Input-parameters.css +63 -0
  915. package/src/themes/base/InputIcon-parameters.css +19 -0
  916. package/src/themes/base/Link-parameters.css +14 -0
  917. package/src/themes/base/List-parameters.css +3 -0
  918. package/src/themes/base/ListItemBase-parameters.css +10 -0
  919. package/src/themes/base/Menu-parameters.css +4 -0
  920. package/src/themes/base/MessageStrip-parameters.css +18 -0
  921. package/src/themes/base/MonthPicker-parameters.css +16 -0
  922. package/src/themes/base/MultiComboBox-parameters.css +3 -0
  923. package/src/themes/base/Panel-parameters.css +18 -0
  924. package/src/themes/base/PopupsCommon-parameters.css +11 -0
  925. package/src/themes/base/ProgressIndicator-parameters.css +38 -0
  926. package/src/themes/base/RadioButton-parameters.css +46 -0
  927. package/src/themes/base/RatingIndicator-parameters.css +20 -0
  928. package/src/themes/base/SegmentedButtton-parameters.css +9 -0
  929. package/src/themes/base/Select-parameters.css +9 -0
  930. package/src/themes/base/SelectPopover-parameters.css +4 -0
  931. package/src/themes/base/SliderBase-parameters.css +101 -0
  932. package/src/themes/base/SplitButton-parameters.css +17 -0
  933. package/src/themes/base/StepInput-parameters.css +24 -0
  934. package/src/themes/base/Switch-parameters.css +158 -0
  935. package/src/themes/base/TabContainer-parameters.css +100 -0
  936. package/src/themes/base/Table-parameters.css +8 -0
  937. package/src/themes/base/TableColumn-parameters.css +3 -0
  938. package/src/themes/base/TableGroupRow-parameters.css +4 -0
  939. package/src/themes/base/TableRow-parameters.css +3 -0
  940. package/src/themes/base/TextArea-parameters.css +26 -0
  941. package/src/themes/base/TimePicker-parameters.css +4 -0
  942. package/src/themes/base/TimelineItem-parameters.css +10 -0
  943. package/src/themes/base/Toast-parameters.css +6 -0
  944. package/src/themes/base/ToggleButton-parameters.css +8 -0
  945. package/src/themes/base/Token-parameters.css +24 -0
  946. package/src/themes/base/Tokenizer-parameters.css +3 -0
  947. package/src/themes/base/ValueStateMessage-parameters.css +12 -0
  948. package/src/themes/base/WheelSlider-parameters.css +15 -0
  949. package/src/themes/base/YearPicker-parameters.css +16 -0
  950. package/src/themes/base/rtl-parameters.css +43 -0
  951. package/src/themes/base/sizes-parameters.css +395 -0
  952. package/src/themes/sap_belize/BrowserScrollbar-parameters.css +4 -0
  953. package/src/themes/sap_belize/Card-parameters.css +5 -0
  954. package/src/themes/sap_belize/Carousel-parameters.css +9 -0
  955. package/src/themes/sap_belize/DayPicker-parameters.css +23 -0
  956. package/src/themes/sap_belize/Dialog-parameters.css +5 -0
  957. package/src/themes/sap_belize/Input-parameters.css +21 -0
  958. package/src/themes/sap_belize/InputIcon-parameters.css +5 -0
  959. package/src/themes/sap_belize/Panel-parameters.css +12 -0
  960. package/src/themes/sap_belize/PopupsCommon-parameters.css +5 -0
  961. package/src/themes/sap_belize/ProgressIndicator-parameters.css +8 -0
  962. package/src/themes/sap_belize/SliderBase-parameters.css +25 -0
  963. package/src/themes/sap_belize/SplitButton-parameters.css +6 -0
  964. package/src/themes/sap_belize/TabContainer-parameters.css +6 -0
  965. package/src/themes/sap_belize/Table-parameters.css +7 -0
  966. package/src/themes/sap_belize/TableRow-parameters.css +5 -0
  967. package/src/themes/sap_belize/TimePicker-parameters.css +5 -0
  968. package/src/themes/sap_belize/Token-parameters.css +8 -0
  969. package/src/themes/sap_belize/Tokenizer-parameters.css +5 -0
  970. package/src/themes/sap_belize/WheelSlider-parameters.css +17 -0
  971. package/src/themes/sap_belize/parameters-bundle.css +54 -0
  972. package/src/themes/sap_belize/sizes-parameters.css +15 -0
  973. package/src/themes/sap_belize_hcb/Avatar-parameters.css +18 -0
  974. package/src/themes/sap_belize_hcb/Badge-parameters.css +43 -0
  975. package/src/themes/sap_belize_hcb/BrowserScrollbar-parameters.css +4 -0
  976. package/src/themes/sap_belize_hcb/Button-parameters.css +12 -0
  977. package/src/themes/sap_belize_hcb/CalendarHeader-parameters.css +11 -0
  978. package/src/themes/sap_belize_hcb/Card-parameters.css +7 -0
  979. package/src/themes/sap_belize_hcb/Carousel-parameters.css +9 -0
  980. package/src/themes/sap_belize_hcb/CheckBox-parameters.css +12 -0
  981. package/src/themes/sap_belize_hcb/DatePicker-parameters.css +6 -0
  982. package/src/themes/sap_belize_hcb/DayPicker-parameters.css +13 -0
  983. package/src/themes/sap_belize_hcb/FileUploader-parameters.css +5 -0
  984. package/src/themes/sap_belize_hcb/GrowingButton-parameters.css +8 -0
  985. package/src/themes/sap_belize_hcb/Input-parameters.css +33 -0
  986. package/src/themes/sap_belize_hcb/InputIcon-parameters.css +5 -0
  987. package/src/themes/sap_belize_hcb/Link-parameters.css +8 -0
  988. package/src/themes/sap_belize_hcb/MessageStrip-parameters.css +9 -0
  989. package/src/themes/sap_belize_hcb/MonthPicker-parameters.css +10 -0
  990. package/src/themes/sap_belize_hcb/Panel-parameters.css +13 -0
  991. package/src/themes/sap_belize_hcb/PopupsCommon-parameters.css +5 -0
  992. package/src/themes/sap_belize_hcb/ProgressIndicator-parameters.css +11 -0
  993. package/src/themes/sap_belize_hcb/RadioButton-parameters.css +14 -0
  994. package/src/themes/sap_belize_hcb/Select-parameters.css +10 -0
  995. package/src/themes/sap_belize_hcb/SliderBase-parameters.css +19 -0
  996. package/src/themes/sap_belize_hcb/SplitButton-parameters.css +10 -0
  997. package/src/themes/sap_belize_hcb/Switch-parameters.css +16 -0
  998. package/src/themes/sap_belize_hcb/TabContainer-parameters.css +45 -0
  999. package/src/themes/sap_belize_hcb/Table-parameters.css +7 -0
  1000. package/src/themes/sap_belize_hcb/TableRow-parameters.css +6 -0
  1001. package/src/themes/sap_belize_hcb/TextArea-parameters.css +13 -0
  1002. package/src/themes/sap_belize_hcb/ToggleButton-parameters.css +7 -0
  1003. package/src/themes/sap_belize_hcb/Token-parameters.css +10 -0
  1004. package/src/themes/sap_belize_hcb/ValueStateMessage-parameters.css +7 -0
  1005. package/src/themes/sap_belize_hcb/WheelSlider-parameters.css +17 -0
  1006. package/src/themes/sap_belize_hcb/YearPicker-parameters.css +10 -0
  1007. package/src/themes/sap_belize_hcb/parameters-bundle.css +53 -0
  1008. package/src/themes/sap_belize_hcb/sizes-parameters.css +15 -0
  1009. package/src/themes/sap_belize_hcw/Avatar-parameters.css +18 -0
  1010. package/src/themes/sap_belize_hcw/Badge-parameters.css +43 -0
  1011. package/src/themes/sap_belize_hcw/BrowserScrollbar-parameters.css +4 -0
  1012. package/src/themes/sap_belize_hcw/Button-parameters.css +12 -0
  1013. package/src/themes/sap_belize_hcw/CalendarHeader-parameters.css +11 -0
  1014. package/src/themes/sap_belize_hcw/Card-parameters.css +7 -0
  1015. package/src/themes/sap_belize_hcw/Carousel-parameters.css +9 -0
  1016. package/src/themes/sap_belize_hcw/CheckBox-parameters.css +12 -0
  1017. package/src/themes/sap_belize_hcw/DatePicker-parameters.css +5 -0
  1018. package/src/themes/sap_belize_hcw/DayPicker-parameters.css +14 -0
  1019. package/src/themes/sap_belize_hcw/FileUploader-parameters.css +5 -0
  1020. package/src/themes/sap_belize_hcw/GrowingButton-parameters.css +8 -0
  1021. package/src/themes/sap_belize_hcw/Input-parameters.css +33 -0
  1022. package/src/themes/sap_belize_hcw/InputIcon-parameters.css +5 -0
  1023. package/src/themes/sap_belize_hcw/Link-parameters.css +8 -0
  1024. package/src/themes/sap_belize_hcw/MessageStrip-parameters.css +9 -0
  1025. package/src/themes/sap_belize_hcw/MonthPicker-parameters.css +10 -0
  1026. package/src/themes/sap_belize_hcw/Panel-parameters.css +13 -0
  1027. package/src/themes/sap_belize_hcw/PopupsCommon-parameters.css +5 -0
  1028. package/src/themes/sap_belize_hcw/ProgressIndicator-parameters.css +11 -0
  1029. package/src/themes/sap_belize_hcw/RadioButton-parameters.css +14 -0
  1030. package/src/themes/sap_belize_hcw/Select-parameters.css +10 -0
  1031. package/src/themes/sap_belize_hcw/SliderBase-parameters.css +19 -0
  1032. package/src/themes/sap_belize_hcw/SplitButton-parameters.css +10 -0
  1033. package/src/themes/sap_belize_hcw/Switch-parameters.css +16 -0
  1034. package/src/themes/sap_belize_hcw/TabContainer-parameters.css +45 -0
  1035. package/src/themes/sap_belize_hcw/Table-parameters.css +7 -0
  1036. package/src/themes/sap_belize_hcw/TableRow-parameters.css +6 -0
  1037. package/src/themes/sap_belize_hcw/TextArea-parameters.css +13 -0
  1038. package/src/themes/sap_belize_hcw/ToggleButton-parameters.css +6 -0
  1039. package/src/themes/sap_belize_hcw/Token-parameters.css +10 -0
  1040. package/src/themes/sap_belize_hcw/ValueStateMessage-parameters.css +7 -0
  1041. package/src/themes/sap_belize_hcw/WheelSlider-parameters.css +17 -0
  1042. package/src/themes/sap_belize_hcw/YearPicker-parameters.css +10 -0
  1043. package/src/themes/sap_belize_hcw/parameters-bundle.css +53 -0
  1044. package/src/themes/sap_belize_hcw/sizes-parameters.css +15 -0
  1045. package/src/themes/sap_fiori_3/Avatar-parameters.css +9 -0
  1046. package/src/themes/sap_fiori_3/Button-parameters.css +15 -0
  1047. package/src/themes/sap_fiori_3/CalendarHeader-parameters.css +8 -0
  1048. package/src/themes/sap_fiori_3/CheckBox-parameters.css +13 -0
  1049. package/src/themes/sap_fiori_3/DayPicker-parameters.css +23 -0
  1050. package/src/themes/sap_fiori_3/Input-parameters.css +5 -0
  1051. package/src/themes/sap_fiori_3/Link-parameters.css +6 -0
  1052. package/src/themes/sap_fiori_3/List-parameters.css +5 -0
  1053. package/src/themes/sap_fiori_3/MonthPicker-parameters.css +5 -0
  1054. package/src/themes/sap_fiori_3/MultiComboBox-parameters.css +5 -0
  1055. package/src/themes/sap_fiori_3/Panel-parameters.css +5 -0
  1056. package/src/themes/sap_fiori_3/SliderBase-parameters.css +19 -0
  1057. package/src/themes/sap_fiori_3/TabContainer-parameters.css +13 -0
  1058. package/src/themes/sap_fiori_3/TimePicker-parameters.css +5 -0
  1059. package/src/themes/sap_fiori_3/Token-parameters.css +6 -0
  1060. package/src/themes/sap_fiori_3/WheelSlider-parameters.css +16 -0
  1061. package/src/themes/sap_fiori_3/YearPicker-parameters.css +5 -0
  1062. package/src/themes/sap_fiori_3/parameters-bundle.css +54 -0
  1063. package/src/themes/sap_fiori_3_dark/Avatar-parameters.css +9 -0
  1064. package/src/themes/sap_fiori_3_dark/Button-parameters.css +15 -0
  1065. package/src/themes/sap_fiori_3_dark/CalendarHeader-parameters.css +8 -0
  1066. package/src/themes/sap_fiori_3_dark/CheckBox-parameters.css +13 -0
  1067. package/src/themes/sap_fiori_3_dark/DayPicker-parameters.css +23 -0
  1068. package/src/themes/sap_fiori_3_dark/Input-parameters.css +5 -0
  1069. package/src/themes/sap_fiori_3_dark/Link-parameters.css +6 -0
  1070. package/src/themes/sap_fiori_3_dark/List-parameters.css +5 -0
  1071. package/src/themes/sap_fiori_3_dark/MonthPicker-parameters.css +5 -0
  1072. package/src/themes/sap_fiori_3_dark/MultiComboBox-parameters.css +5 -0
  1073. package/src/themes/sap_fiori_3_dark/Panel-parameters.css +5 -0
  1074. package/src/themes/sap_fiori_3_dark/SliderBase-parameters.css +5 -0
  1075. package/src/themes/sap_fiori_3_dark/TabContainer-parameters.css +13 -0
  1076. package/src/themes/sap_fiori_3_dark/Token-parameters.css +5 -0
  1077. package/src/themes/sap_fiori_3_dark/WheelSlider-parameters.css +15 -0
  1078. package/src/themes/sap_fiori_3_dark/YearPicker-parameters.css +5 -0
  1079. package/src/themes/sap_fiori_3_dark/parameters-bundle.css +53 -0
  1080. package/src/themes/sap_fiori_3_hcb/Avatar-parameters.css +24 -0
  1081. package/src/themes/sap_fiori_3_hcb/Badge-parameters.css +43 -0
  1082. package/src/themes/sap_fiori_3_hcb/Button-parameters.css +11 -0
  1083. package/src/themes/sap_fiori_3_hcb/CalendarHeader-parameters.css +11 -0
  1084. package/src/themes/sap_fiori_3_hcb/Card-parameters.css +6 -0
  1085. package/src/themes/sap_fiori_3_hcb/Carousel-parameters.css +9 -0
  1086. package/src/themes/sap_fiori_3_hcb/CheckBox-parameters.css +13 -0
  1087. package/src/themes/sap_fiori_3_hcb/ColorPicker-parameters.css +5 -0
  1088. package/src/themes/sap_fiori_3_hcb/DatePicker-parameters.css +5 -0
  1089. package/src/themes/sap_fiori_3_hcb/DayPicker-parameters.css +24 -0
  1090. package/src/themes/sap_fiori_3_hcb/FileUploader-parameters.css +5 -0
  1091. package/src/themes/sap_fiori_3_hcb/GrowingButton-parameters.css +8 -0
  1092. package/src/themes/sap_fiori_3_hcb/Input-parameters.css +28 -0
  1093. package/src/themes/sap_fiori_3_hcb/Link-parameters.css +10 -0
  1094. package/src/themes/sap_fiori_3_hcb/ListItem-parameters.css +3 -0
  1095. package/src/themes/sap_fiori_3_hcb/MessageStrip-parameters.css +9 -0
  1096. package/src/themes/sap_fiori_3_hcb/MonthPicker-parameters.css +11 -0
  1097. package/src/themes/sap_fiori_3_hcb/Panel-parameters.css +5 -0
  1098. package/src/themes/sap_fiori_3_hcb/ProgressIndicator-parameters.css +11 -0
  1099. package/src/themes/sap_fiori_3_hcb/RadioButton-parameters.css +14 -0
  1100. package/src/themes/sap_fiori_3_hcb/Select-parameters.css +10 -0
  1101. package/src/themes/sap_fiori_3_hcb/SliderBase-parameters.css +16 -0
  1102. package/src/themes/sap_fiori_3_hcb/SplitButton-parameters.css +12 -0
  1103. package/src/themes/sap_fiori_3_hcb/Switch-parameters.css +16 -0
  1104. package/src/themes/sap_fiori_3_hcb/TabContainer-parameters.css +45 -0
  1105. package/src/themes/sap_fiori_3_hcb/Table-parameters.css +5 -0
  1106. package/src/themes/sap_fiori_3_hcb/TableRow-parameters.css +5 -0
  1107. package/src/themes/sap_fiori_3_hcb/TextArea-parameters.css +18 -0
  1108. package/src/themes/sap_fiori_3_hcb/TimePicker-parameters.css +5 -0
  1109. package/src/themes/sap_fiori_3_hcb/ToggleButton-parameters.css +6 -0
  1110. package/src/themes/sap_fiori_3_hcb/Token-parameters.css +7 -0
  1111. package/src/themes/sap_fiori_3_hcb/ValueStateMessage-parameters.css +7 -0
  1112. package/src/themes/sap_fiori_3_hcb/WheelSlider-parameters.css +17 -0
  1113. package/src/themes/sap_fiori_3_hcb/YearPicker-parameters.css +11 -0
  1114. package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +55 -0
  1115. package/src/themes/sap_fiori_3_hcb/sizes-parameters.css +8 -0
  1116. package/src/themes/sap_fiori_3_hcw/Avatar-parameters.css +24 -0
  1117. package/src/themes/sap_fiori_3_hcw/Badge-parameters.css +43 -0
  1118. package/src/themes/sap_fiori_3_hcw/Button-parameters.css +11 -0
  1119. package/src/themes/sap_fiori_3_hcw/CalendarHeader-parameters.css +11 -0
  1120. package/src/themes/sap_fiori_3_hcw/Card-parameters.css +6 -0
  1121. package/src/themes/sap_fiori_3_hcw/Carousel-parameters.css +9 -0
  1122. package/src/themes/sap_fiori_3_hcw/CheckBox-parameters.css +13 -0
  1123. package/src/themes/sap_fiori_3_hcw/ColorPicker-parameters.css +5 -0
  1124. package/src/themes/sap_fiori_3_hcw/DatePicker-parameters.css +5 -0
  1125. package/src/themes/sap_fiori_3_hcw/DayPicker-parameters.css +23 -0
  1126. package/src/themes/sap_fiori_3_hcw/FileUploader-parameters.css +5 -0
  1127. package/src/themes/sap_fiori_3_hcw/GrowingButton-parameters.css +8 -0
  1128. package/src/themes/sap_fiori_3_hcw/Input-parameters.css +28 -0
  1129. package/src/themes/sap_fiori_3_hcw/Link-parameters.css +10 -0
  1130. package/src/themes/sap_fiori_3_hcw/ListItem-parameters.css +3 -0
  1131. package/src/themes/sap_fiori_3_hcw/MessageStrip-parameters.css +9 -0
  1132. package/src/themes/sap_fiori_3_hcw/MonthPicker-parameters.css +11 -0
  1133. package/src/themes/sap_fiori_3_hcw/Panel-parameters.css +5 -0
  1134. package/src/themes/sap_fiori_3_hcw/ProgressIndicator-parameters.css +11 -0
  1135. package/src/themes/sap_fiori_3_hcw/RadioButton-parameters.css +14 -0
  1136. package/src/themes/sap_fiori_3_hcw/Select-parameters.css +10 -0
  1137. package/src/themes/sap_fiori_3_hcw/SliderBase-parameters.css +15 -0
  1138. package/src/themes/sap_fiori_3_hcw/SplitButton-parameters.css +12 -0
  1139. package/src/themes/sap_fiori_3_hcw/Switch-parameters.css +16 -0
  1140. package/src/themes/sap_fiori_3_hcw/TabContainer-parameters.css +45 -0
  1141. package/src/themes/sap_fiori_3_hcw/Table-parameters.css +5 -0
  1142. package/src/themes/sap_fiori_3_hcw/TableRow-parameters.css +5 -0
  1143. package/src/themes/sap_fiori_3_hcw/TextArea-parameters.css +18 -0
  1144. package/src/themes/sap_fiori_3_hcw/TimePicker-parameters.css +5 -0
  1145. package/src/themes/sap_fiori_3_hcw/ToggleButton-parameters.css +6 -0
  1146. package/src/themes/sap_fiori_3_hcw/Token-parameters.css +7 -0
  1147. package/src/themes/sap_fiori_3_hcw/ValueStateMessage-parameters.css +7 -0
  1148. package/src/themes/sap_fiori_3_hcw/WheelSlider-parameters.css +17 -0
  1149. package/src/themes/sap_fiori_3_hcw/YearPicker-parameters.css +11 -0
  1150. package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +55 -0
  1151. package/src/themes/sap_fiori_3_hcw/sizes-parameters.css +8 -0
  1152. package/src/themes/sap_horizon/Avatar-parameters.css +53 -0
  1153. package/src/themes/sap_horizon/AvatarGroup-parameters.css +5 -0
  1154. package/src/themes/sap_horizon/Badge-parameters.css +43 -0
  1155. package/src/themes/sap_horizon/Breadcrumbs-parameters.css +3 -0
  1156. package/src/themes/sap_horizon/BusyIndicator-parameters.css +7 -0
  1157. package/src/themes/sap_horizon/Button-parameters.css +19 -0
  1158. package/src/themes/sap_horizon/CalendarHeader-parameters.css +19 -0
  1159. package/src/themes/sap_horizon/Card-parameters.css +15 -0
  1160. package/src/themes/sap_horizon/CheckBox-parameters.css +49 -0
  1161. package/src/themes/sap_horizon/ColorPalette-parameters.css +21 -0
  1162. package/src/themes/sap_horizon/ColorPicker-parameters.css +12 -0
  1163. package/src/themes/sap_horizon/DatePicker-parameters.css +6 -0
  1164. package/src/themes/sap_horizon/DayPicker-parameters.css +34 -0
  1165. package/src/themes/sap_horizon/Dialog-parameters.css +11 -0
  1166. package/src/themes/sap_horizon/FileUploader-parameters.css +5 -0
  1167. package/src/themes/sap_horizon/GrowingButton-parameters.css +6 -0
  1168. package/src/themes/sap_horizon/Icon-parameters.css +3 -0
  1169. package/src/themes/sap_horizon/Input-parameters.css +34 -0
  1170. package/src/themes/sap_horizon/InputIcon-parameters.css +24 -0
  1171. package/src/themes/sap_horizon/Link-parameters.css +14 -0
  1172. package/src/themes/sap_horizon/List-parameters.css +5 -0
  1173. package/src/themes/sap_horizon/ListItemBase-parameters.css +5 -0
  1174. package/src/themes/sap_horizon/Menu-parameters.css +5 -0
  1175. package/src/themes/sap_horizon/MessageStrip-parameters.css +5 -0
  1176. package/src/themes/sap_horizon/MonthPicker-parameters.css +16 -0
  1177. package/src/themes/sap_horizon/MultiComboBox-parameters.css +5 -0
  1178. package/src/themes/sap_horizon/Panel-parameters.css +11 -0
  1179. package/src/themes/sap_horizon/ProgressIndicator-parameters.css +38 -0
  1180. package/src/themes/sap_horizon/ProgressIndicatorLayout-parameters.css +39 -0
  1181. package/src/themes/sap_horizon/RadioButton-parameters.css +15 -0
  1182. package/src/themes/sap_horizon/RatingIndicator-parameters.css +17 -0
  1183. package/src/themes/sap_horizon/SegmentedButtton-parameters.css +10 -0
  1184. package/src/themes/sap_horizon/Select-parameters.css +5 -0
  1185. package/src/themes/sap_horizon/SelectPopover-parameters.css +4 -0
  1186. package/src/themes/sap_horizon/SliderBase-parameters.css +81 -0
  1187. package/src/themes/sap_horizon/SplitButton-parameters.css +17 -0
  1188. package/src/themes/sap_horizon/StepInput-parameters.css +25 -0
  1189. package/src/themes/sap_horizon/Switch-parameters.css +144 -0
  1190. package/src/themes/sap_horizon/TabContainer-parameters.css +31 -0
  1191. package/src/themes/sap_horizon/Table-parameters.css +9 -0
  1192. package/src/themes/sap_horizon/TableColumn-parameters.css +5 -0
  1193. package/src/themes/sap_horizon/TableGroupRow-parameters.css +6 -0
  1194. package/src/themes/sap_horizon/TableRow-parameters.css +5 -0
  1195. package/src/themes/sap_horizon/TextArea-parameters.css +17 -0
  1196. package/src/themes/sap_horizon/TimePicker-parameters.css +6 -0
  1197. package/src/themes/sap_horizon/ToggleButton-parameters.css +1 -0
  1198. package/src/themes/sap_horizon/Token-parameters.css +19 -0
  1199. package/src/themes/sap_horizon/ValueStateMessage-parameters.css +11 -0
  1200. package/src/themes/sap_horizon/WheelSlider-parameters.css +19 -0
  1201. package/src/themes/sap_horizon/YearPicker-parameters.css +15 -0
  1202. package/src/themes/sap_horizon/parameters-bundle.css +62 -0
  1203. package/src/themes/sap_horizon/sizes-parameters.css +42 -0
  1204. package/src/themes/sap_horizon_dark/Avatar-parameters.css +53 -0
  1205. package/src/themes/sap_horizon_dark/Badge-parameters.css +43 -0
  1206. package/src/themes/sap_horizon_dark/Breadcrumbs-parameters.css +3 -0
  1207. package/src/themes/sap_horizon_dark/BusyIndicator-parameters.css +7 -0
  1208. package/src/themes/sap_horizon_dark/Button-parameters.css +19 -0
  1209. package/src/themes/sap_horizon_dark/CalendarHeader-parameters.css +19 -0
  1210. package/src/themes/sap_horizon_dark/Card-parameters.css +15 -0
  1211. package/src/themes/sap_horizon_dark/CheckBox-parameters.css +49 -0
  1212. package/src/themes/sap_horizon_dark/ColorPalette-parameters.css +21 -0
  1213. package/src/themes/sap_horizon_dark/ColorPicker-parameters.css +12 -0
  1214. package/src/themes/sap_horizon_dark/DatePicker-parameters.css +6 -0
  1215. package/src/themes/sap_horizon_dark/DayPicker-parameters.css +34 -0
  1216. package/src/themes/sap_horizon_dark/Dialog-parameters.css +11 -0
  1217. package/src/themes/sap_horizon_dark/FileUploader-parameters.css +5 -0
  1218. package/src/themes/sap_horizon_dark/GrowingButton-parameters.css +6 -0
  1219. package/src/themes/sap_horizon_dark/Icon-parameters.css +3 -0
  1220. package/src/themes/sap_horizon_dark/Input-parameters.css +34 -0
  1221. package/src/themes/sap_horizon_dark/InputIcon-parameters.css +24 -0
  1222. package/src/themes/sap_horizon_dark/Link-parameters.css +14 -0
  1223. package/src/themes/sap_horizon_dark/List-parameters.css +5 -0
  1224. package/src/themes/sap_horizon_dark/ListItemBase-parameters.css +6 -0
  1225. package/src/themes/sap_horizon_dark/Menu-parameters.css +5 -0
  1226. package/src/themes/sap_horizon_dark/MessageStrip-parameters.css +5 -0
  1227. package/src/themes/sap_horizon_dark/MonthPicker-parameters.css +16 -0
  1228. package/src/themes/sap_horizon_dark/MultiComboBox-parameters.css +5 -0
  1229. package/src/themes/sap_horizon_dark/Panel-parameters.css +11 -0
  1230. package/src/themes/sap_horizon_dark/RadioButton-parameters.css +15 -0
  1231. package/src/themes/sap_horizon_dark/RatingIndicator-parameters.css +17 -0
  1232. package/src/themes/sap_horizon_dark/SegmentedButtton-parameters.css +10 -0
  1233. package/src/themes/sap_horizon_dark/Select-parameters.css +5 -0
  1234. package/src/themes/sap_horizon_dark/SelectPopover-parameters.css +4 -0
  1235. package/src/themes/sap_horizon_dark/SliderBase-parameters.css +79 -0
  1236. package/src/themes/sap_horizon_dark/SplitButton-parameters.css +17 -0
  1237. package/src/themes/sap_horizon_dark/StepInput-parameters.css +25 -0
  1238. package/src/themes/sap_horizon_dark/Switch-parameters.css +144 -0
  1239. package/src/themes/sap_horizon_dark/TabContainer-parameters.css +22 -0
  1240. package/src/themes/sap_horizon_dark/Table-parameters.css +9 -0
  1241. package/src/themes/sap_horizon_dark/TableColumn-parameters.css +5 -0
  1242. package/src/themes/sap_horizon_dark/TableGroupRow-parameters.css +6 -0
  1243. package/src/themes/sap_horizon_dark/TableRow-parameters.css +5 -0
  1244. package/src/themes/sap_horizon_dark/TextArea-parameters.css +17 -0
  1245. package/src/themes/sap_horizon_dark/TimePicker-parameters.css +6 -0
  1246. package/src/themes/sap_horizon_dark/ToggleButton-parameters.css +1 -0
  1247. package/src/themes/sap_horizon_dark/Token-parameters.css +19 -0
  1248. package/src/themes/sap_horizon_dark/ValueStateMessage-parameters.css +11 -0
  1249. package/src/themes/sap_horizon_dark/WheelSlider-parameters.css +19 -0
  1250. package/src/themes/sap_horizon_dark/YearPicker-parameters.css +15 -0
  1251. package/src/themes/sap_horizon_dark/parameters-bundle.css +63 -0
  1252. package/src/themes/sap_horizon_dark/sizes-parameters.css +40 -0
  1253. package/src/themes/sap_horizon_exp/Badge-parameters.css +91 -0
  1254. package/src/themes/sap_horizon_exp/Button-parameters.css +12 -0
  1255. package/src/themes/sap_horizon_exp/CalendarHeader-parameters.css +8 -0
  1256. package/src/themes/sap_horizon_exp/CheckBox-parameters.css +35 -0
  1257. package/src/themes/sap_horizon_exp/DatePicker-parameters.css +5 -0
  1258. package/src/themes/sap_horizon_exp/DayPicker-parameters.css +6 -0
  1259. package/src/themes/sap_horizon_exp/Input-parameters.css +43 -0
  1260. package/src/themes/sap_horizon_exp/InputIcon-parameters.css +13 -0
  1261. package/src/themes/sap_horizon_exp/Link-parameters.css +7 -0
  1262. package/src/themes/sap_horizon_exp/List-parameters.css +5 -0
  1263. package/src/themes/sap_horizon_exp/MonthPicker-parameters.css +5 -0
  1264. package/src/themes/sap_horizon_exp/MultiComboBox-parameters.css +7 -0
  1265. package/src/themes/sap_horizon_exp/Panel-parameters.css +5 -0
  1266. package/src/themes/sap_horizon_exp/Popover-parameters.css +4 -0
  1267. package/src/themes/sap_horizon_exp/RadioButton-parameters.css +29 -0
  1268. package/src/themes/sap_horizon_exp/RatingIndicator-parameters.css +16 -0
  1269. package/src/themes/sap_horizon_exp/Select-parameters.css +5 -0
  1270. package/src/themes/sap_horizon_exp/SliderBase-parameters.css +30 -0
  1271. package/src/themes/sap_horizon_exp/Switch-parameters.css +46 -0
  1272. package/src/themes/sap_horizon_exp/TabContainer-parameters.css +40 -0
  1273. package/src/themes/sap_horizon_exp/TimePicker-parameters.css +5 -0
  1274. package/src/themes/sap_horizon_exp/Token-parameters.css +7 -0
  1275. package/src/themes/sap_horizon_exp/WheelSlider-parameters.css +16 -0
  1276. package/src/themes/sap_horizon_exp/YearPicker-parameters.css +5 -0
  1277. package/src/themes/sap_horizon_exp/parameters-bundle.css +47 -0
  1278. package/src/themes/sap_horizon_hcb/Avatar-parameters.css +53 -0
  1279. package/src/themes/sap_horizon_hcb/Badge-parameters.css +43 -0
  1280. package/src/themes/sap_horizon_hcb/BusyIndicator-parameters.css +5 -0
  1281. package/src/themes/sap_horizon_hcb/Button-parameters.css +10 -0
  1282. package/src/themes/sap_horizon_hcb/CalendarHeader-parameters.css +11 -0
  1283. package/src/themes/sap_horizon_hcb/Card-parameters.css +11 -0
  1284. package/src/themes/sap_horizon_hcb/Carousel-parameters.css +9 -0
  1285. package/src/themes/sap_horizon_hcb/CheckBox-parameters.css +49 -0
  1286. package/src/themes/sap_horizon_hcb/ColorPicker-parameters.css +10 -0
  1287. package/src/themes/sap_horizon_hcb/DatePicker-parameters.css +5 -0
  1288. package/src/themes/sap_horizon_hcb/DayPicker-parameters.css +31 -0
  1289. package/src/themes/sap_horizon_hcb/Dialog-parameters.css +6 -0
  1290. package/src/themes/sap_horizon_hcb/FileUploader-parameters.css +6 -0
  1291. package/src/themes/sap_horizon_hcb/GrowingButton-parameters.css +8 -0
  1292. package/src/themes/sap_horizon_hcb/Input-parameters.css +31 -0
  1293. package/src/themes/sap_horizon_hcb/InputIcon-parameters.css +11 -0
  1294. package/src/themes/sap_horizon_hcb/Link-parameters.css +10 -0
  1295. package/src/themes/sap_horizon_hcb/ListItem-parameters.css +3 -0
  1296. package/src/themes/sap_horizon_hcb/Menu-parameters.css +5 -0
  1297. package/src/themes/sap_horizon_hcb/MessageStrip-parameters.css +10 -0
  1298. package/src/themes/sap_horizon_hcb/MonthPicker-parameters.css +12 -0
  1299. package/src/themes/sap_horizon_hcb/Panel-parameters.css +8 -0
  1300. package/src/themes/sap_horizon_hcb/ProgressIndicator-parameters.css +21 -0
  1301. package/src/themes/sap_horizon_hcb/RadioButton-parameters.css +16 -0
  1302. package/src/themes/sap_horizon_hcb/RatingIndicator-parameters.css +16 -0
  1303. package/src/themes/sap_horizon_hcb/SegmentedButtton-parameters.css +9 -0
  1304. package/src/themes/sap_horizon_hcb/Select-parameters.css +10 -0
  1305. package/src/themes/sap_horizon_hcb/SliderBase-parameters.css +77 -0
  1306. package/src/themes/sap_horizon_hcb/SplitButton-parameters.css +12 -0
  1307. package/src/themes/sap_horizon_hcb/Switch-parameters.css +144 -0
  1308. package/src/themes/sap_horizon_hcb/TabContainer-parameters.css +45 -0
  1309. package/src/themes/sap_horizon_hcb/Table-parameters.css +9 -0
  1310. package/src/themes/sap_horizon_hcb/TableGroupRow-parameters.css +6 -0
  1311. package/src/themes/sap_horizon_hcb/TableRow-parameters.css +5 -0
  1312. package/src/themes/sap_horizon_hcb/TextArea-parameters.css +19 -0
  1313. package/src/themes/sap_horizon_hcb/TimePicker-parameters.css +5 -0
  1314. package/src/themes/sap_horizon_hcb/ToggleButton-parameters.css +1 -0
  1315. package/src/themes/sap_horizon_hcb/Token-parameters.css +19 -0
  1316. package/src/themes/sap_horizon_hcb/ValueStateMessage-parameters.css +13 -0
  1317. package/src/themes/sap_horizon_hcb/WheelSlider-parameters.css +17 -0
  1318. package/src/themes/sap_horizon_hcb/YearPicker-parameters.css +12 -0
  1319. package/src/themes/sap_horizon_hcb/parameters-bundle.css +55 -0
  1320. package/src/themes/sap_horizon_hcb/sizes-parameters.css +9 -0
  1321. package/src/themes/sap_horizon_hcw/Avatar-parameters.css +53 -0
  1322. package/src/themes/sap_horizon_hcw/Badge-parameters.css +43 -0
  1323. package/src/themes/sap_horizon_hcw/BusyIndicator-parameters.css +5 -0
  1324. package/src/themes/sap_horizon_hcw/Button-parameters.css +10 -0
  1325. package/src/themes/sap_horizon_hcw/CalendarHeader-parameters.css +11 -0
  1326. package/src/themes/sap_horizon_hcw/Card-parameters.css +11 -0
  1327. package/src/themes/sap_horizon_hcw/Carousel-parameters.css +9 -0
  1328. package/src/themes/sap_horizon_hcw/CheckBox-parameters.css +49 -0
  1329. package/src/themes/sap_horizon_hcw/ColorPicker-parameters.css +10 -0
  1330. package/src/themes/sap_horizon_hcw/DatePicker-parameters.css +5 -0
  1331. package/src/themes/sap_horizon_hcw/DayPicker-parameters.css +25 -0
  1332. package/src/themes/sap_horizon_hcw/Dialog-parameters.css +6 -0
  1333. package/src/themes/sap_horizon_hcw/FileUploader-parameters.css +6 -0
  1334. package/src/themes/sap_horizon_hcw/GrowingButton-parameters.css +8 -0
  1335. package/src/themes/sap_horizon_hcw/Input-parameters.css +31 -0
  1336. package/src/themes/sap_horizon_hcw/InputIcon-parameters.css +11 -0
  1337. package/src/themes/sap_horizon_hcw/Link-parameters.css +10 -0
  1338. package/src/themes/sap_horizon_hcw/ListItem-parameters.css +3 -0
  1339. package/src/themes/sap_horizon_hcw/Menu-parameters.css +5 -0
  1340. package/src/themes/sap_horizon_hcw/MessageStrip-parameters.css +10 -0
  1341. package/src/themes/sap_horizon_hcw/MonthPicker-parameters.css +12 -0
  1342. package/src/themes/sap_horizon_hcw/Panel-parameters.css +9 -0
  1343. package/src/themes/sap_horizon_hcw/RadioButton-parameters.css +20 -0
  1344. package/src/themes/sap_horizon_hcw/RatingIndicator-parameters.css +16 -0
  1345. package/src/themes/sap_horizon_hcw/SegmentedButtton-parameters.css +9 -0
  1346. package/src/themes/sap_horizon_hcw/Select-parameters.css +10 -0
  1347. package/src/themes/sap_horizon_hcw/SliderBase-parameters.css +78 -0
  1348. package/src/themes/sap_horizon_hcw/SplitButton-parameters.css +12 -0
  1349. package/src/themes/sap_horizon_hcw/Switch-parameters.css +144 -0
  1350. package/src/themes/sap_horizon_hcw/TabContainer-parameters.css +45 -0
  1351. package/src/themes/sap_horizon_hcw/Table-parameters.css +9 -0
  1352. package/src/themes/sap_horizon_hcw/TableGroupRow-parameters.css +6 -0
  1353. package/src/themes/sap_horizon_hcw/TableRow-parameters.css +5 -0
  1354. package/src/themes/sap_horizon_hcw/TextArea-parameters.css +19 -0
  1355. package/src/themes/sap_horizon_hcw/TimePicker-parameters.css +5 -0
  1356. package/src/themes/sap_horizon_hcw/ToggleButton-parameters.css +1 -0
  1357. package/src/themes/sap_horizon_hcw/Token-parameters.css +19 -0
  1358. package/src/themes/sap_horizon_hcw/ValueStateMessage-parameters.css +13 -0
  1359. package/src/themes/sap_horizon_hcw/WheelSlider-parameters.css +17 -0
  1360. package/src/themes/sap_horizon_hcw/YearPicker-parameters.css +12 -0
  1361. package/src/themes/sap_horizon_hcw/parameters-bundle.css +55 -0
  1362. package/src/themes/sap_horizon_hcw/sizes-parameters.css +9 -0
  1363. package/src/timepicker-utils/TimeSlider.js +15 -13
  1364. package/src/types/{AvatarBackgroundColor.js → AvatarColorScheme.js} +9 -9
  1365. package/src/types/AvatarGroupType.js +43 -0
  1366. package/src/types/AvatarShape.js +1 -1
  1367. package/src/types/AvatarSize.js +1 -1
  1368. package/src/types/BreadcrumbsDesign.js +42 -0
  1369. package/src/types/BreadcrumbsSeparatorStyle.js +69 -0
  1370. package/src/types/BusyIndicatorSize.js +1 -1
  1371. package/src/types/ButtonDesign.js +8 -1
  1372. package/src/types/CalendarSelectionMode.js +47 -0
  1373. package/src/types/CarouselArrowsPlacement.js +3 -3
  1374. package/src/types/GrowingMode.js +48 -0
  1375. package/src/types/HasPopup.js +62 -0
  1376. package/src/types/InputType.js +7 -7
  1377. package/src/types/LinkDesign.js +1 -1
  1378. package/src/types/ListGrowingMode.js +48 -0
  1379. package/src/types/ListItemType.js +1 -1
  1380. package/src/types/ListMode.js +1 -1
  1381. package/src/types/ListSeparators.js +1 -1
  1382. package/{dist/types/MessageStripType.js → src/types/MessageStripDesign.js} +7 -7
  1383. package/src/types/PanelAccessibleRole.js +1 -1
  1384. package/src/types/PopoverHorizontalAlign.js +1 -1
  1385. package/src/types/PopoverPlacementType.js +2 -2
  1386. package/src/types/PopoverVerticalAlign.js +1 -2
  1387. package/src/types/Priority.js +1 -1
  1388. package/src/types/SemanticColor.js +1 -1
  1389. package/src/types/SwitchDesign.js +40 -0
  1390. package/src/types/TabContainerTabsPlacement.js +5 -5
  1391. package/src/types/TabLayout.js +1 -1
  1392. package/src/types/TableGrowingMode.js +48 -0
  1393. package/src/types/TableMode.js +47 -0
  1394. package/src/types/TableRowType.js +40 -0
  1395. package/src/types/TabsOverflowMode.js +40 -0
  1396. package/src/types/TitleLevel.js +1 -1
  1397. package/src/types/ToastPlacement.js +1 -2
  1398. package/src/types/WrappingType.js +41 -0
  1399. package/dist/ComboBoxFilters.js +0 -40
  1400. package/dist/generated/templates/ComboBoxItemTemplate.lit.js +0 -14
  1401. package/dist/generated/templates/DateRangePickerTemplate.lit.js +0 -16
  1402. package/dist/generated/templates/DurationPickerPopoverTemplate.lit.js +0 -17
  1403. package/dist/generated/templates/DurationPickerTemplate.lit.js +0 -16
  1404. package/dist/generated/templates/TabSeparatorTemplate.lit.js +0 -14
  1405. package/dist/generated/themes/ComboBoxItem.css.js +0 -8
  1406. package/dist/generated/themes/DurationPicker.css.js +0 -8
  1407. package/dist/generated/themes/DurationPickerPopover.css.js +0 -8
  1408. package/dist/popup-utils/PopupUtils.js +0 -84
  1409. package/dist/types/AvatarFitType.js +0 -40
  1410. package/dist/webcomponentsjs/LICENSE.md +0 -19
  1411. package/dist/webcomponentsjs/README.md +0 -229
  1412. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +0 -63
  1413. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +0 -1
  1414. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +0 -297
  1415. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +0 -1
  1416. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +0 -208
  1417. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +0 -1
  1418. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +0 -166
  1419. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +0 -1
  1420. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +0 -15
  1421. package/dist/webcomponentsjs/package.json +0 -46
  1422. package/dist/webcomponentsjs/src/entrypoints/custom-elements-es5-adapter-index.js +0 -16
  1423. package/dist/webcomponentsjs/src/entrypoints/webcomponents-bundle-index.js +0 -53
  1424. package/dist/webcomponentsjs/src/entrypoints/webcomponents-ce-index.js +0 -17
  1425. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-index.js +0 -19
  1426. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-pf-index.js +0 -28
  1427. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-index.js +0 -18
  1428. package/dist/webcomponentsjs/webcomponents-bundle.js +0 -298
  1429. package/dist/webcomponentsjs/webcomponents-bundle.js.map +0 -1
  1430. package/dist/webcomponentsjs/webcomponents-loader.js +0 -185
  1431. package/src/ComboBoxFilters.js +0 -40
  1432. package/src/ComboBoxItem.hbs +0 -0
  1433. package/src/DateRangePicker.hbs +0 -1
  1434. package/src/DurationPicker.hbs +0 -29
  1435. package/src/DurationPickerPopover.hbs +0 -48
  1436. package/src/TabSeparator.hbs +0 -1
  1437. package/src/popup-utils/PopupUtils.js +0 -84
  1438. package/src/types/AvatarFitType.js +0 -40
package/dist/DayPicker.js CHANGED
@@ -1,125 +1,76 @@
1
- import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
- import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
3
- import { fetchCldr } from "@ui5/webcomponents-base/dist/asset-registries/LocaleData.js";
4
1
  import getLocale from "@ui5/webcomponents-base/dist/locale/getLocale.js";
5
2
  import { getFirstDayOfWeek } from "@ui5/webcomponents-base/dist/config/FormatSettings.js";
6
- import DateFormat from "@ui5/webcomponents-localization/dist/DateFormat.js";
7
3
  import getCachedLocaleDataInstance from "@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js";
8
- import { getCalendarType } from "@ui5/webcomponents-base/dist/config/CalendarType.js";
9
- import ItemNavigation from "@ui5/webcomponents-base/dist/delegate/ItemNavigation.js";
10
4
  import {
11
5
  isSpace,
6
+ isSpaceShift,
12
7
  isEnter,
8
+ isEnterShift,
13
9
  isUp,
14
10
  isDown,
15
11
  isLeft,
16
12
  isRight,
13
+ isHome,
14
+ isEnd,
17
15
  isHomeCtrl,
18
16
  isEndCtrl,
19
17
  isPageUp,
20
18
  isPageDown,
21
19
  isPageUpShift,
20
+ isPageUpAlt,
22
21
  isPageUpShiftCtrl,
23
22
  isPageDownShift,
23
+ isPageDownAlt,
24
24
  isPageDownShiftCtrl,
25
25
  } from "@ui5/webcomponents-base/dist/Keys.js";
26
26
  import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
27
27
  import CalendarDate from "@ui5/webcomponents-localization/dist/dates/CalendarDate.js";
28
28
  import calculateWeekNumber from "@ui5/webcomponents-localization/dist/dates/calculateWeekNumber.js";
29
29
  import CalendarType from "@ui5/webcomponents-base/dist/types/CalendarType.js";
30
- import ItemNavigationBehavior from "@ui5/webcomponents-base/dist/types/ItemNavigationBehavior.js";
31
- import { fetchI18nBundle, getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
32
- import RenderScheduler from "@ui5/webcomponents-base/dist/RenderScheduler.js";
30
+ import CalendarSelectionMode from "./types/CalendarSelectionMode.js";
31
+ import CalendarPart from "./CalendarPart.js";
33
32
  import DayPickerTemplate from "./generated/templates/DayPickerTemplate.lit.js";
34
33
 
35
34
  import {
36
35
  DAY_PICKER_WEEK_NUMBER_TEXT,
37
36
  DAY_PICKER_NON_WORKING_DAY,
37
+ DAY_PICKER_TODAY,
38
38
  } from "./generated/i18n/i18n-defaults.js";
39
39
 
40
- // Styles
41
40
  import dayPickerCSS from "./generated/themes/DayPicker.css.js";
42
41
 
43
- const monthDiff = (startDate, endDate) => {
44
- let months;
45
- const _startDate = CalendarDate.fromTimestamp(startDate).toLocalJSDate(),
46
- _endDate = CalendarDate.fromTimestamp(endDate).toLocalJSDate();
47
-
48
- months = (_endDate.getFullYear() - _startDate.getFullYear()) * 12;
49
- months -= _startDate.getMonth();
50
- months += _endDate.getMonth();
51
- return months;
52
- };
53
-
54
42
  /**
55
43
  * @public
56
44
  */
57
45
  const metadata = {
58
46
  tag: "ui5-daypicker",
59
- languageAware: true,
60
47
  properties: /** @lends sap.ui.webcomponents.main.DayPicker.prototype */ {
61
48
  /**
62
- * A UNIX timestamp - seconds since 00:00:00 UTC on Jan 1, 1970.
63
- * @type {number}
64
- * @public
65
- */
66
- timestamp: {
67
- type: Integer,
68
- },
69
-
70
- /**
71
- * Sets a calendar type used for display.
72
- * If not set, the calendar type of the global configuration is used.
73
- * @type {CalendarType}
74
- * @public
75
- */
76
- primaryCalendarType: {
77
- type: CalendarType,
78
- },
79
-
80
- /**
81
- * Sets the selected dates as UTC timestamps.
49
+ * An array of UTC timestamps representing the selected date or dates depending on the capabilities of the picker component.
82
50
  * @type {Array}
83
51
  * @public
84
52
  */
85
53
  selectedDates: {
86
54
  type: Integer,
87
55
  multiple: true,
56
+ compareValues: true,
88
57
  },
89
58
 
90
59
  /**
91
- * Determines the minimum date available for selection.
92
- *
93
- * @type {string}
94
- * @defaultvalue ""
95
- * @since 1.0.0-rc.6
96
- * @public
97
- */
98
- minDate: {
99
- type: String,
100
- },
101
-
102
- /**
103
- * Determines the maximum date available for selection.
104
- *
105
- * @type {string}
106
- * @defaultvalue ""
107
- * @since 1.0.0-rc.6
60
+ * Defines the type of selection used in the day picker component.
61
+ * Accepted property values are:<br>
62
+ * <ul>
63
+ * <li><code>CalendarSelectionMode.Single</code> - enables a single date selection.(default value)</li>
64
+ * <li><code>CalendarSelectionMode.Range</code> - enables selection of a date range.</li>
65
+ * <li><code>CalendarSelectionMode.Multiple</code> - enables selection of multiple dates.</li>
66
+ * </ul>
67
+ * @type {CalendarSelectionMode}
68
+ * @defaultvalue "Single"
108
69
  * @public
109
70
  */
110
- maxDate: {
111
- type: String,
112
- },
113
-
114
- /**
115
- * Determines the format, displayed in the input field.
116
- *
117
- * @type {string}
118
- * @defaultvalue ""
119
- * @public
120
- */
121
- formatPattern: {
122
- type: String,
71
+ selectionMode: {
72
+ type: CalendarSelectionMode,
73
+ defaultValue: CalendarSelectionMode.Single,
123
74
  },
124
75
 
125
76
  /**
@@ -138,16 +89,6 @@ const metadata = {
138
89
  type: Boolean,
139
90
  },
140
91
 
141
- /**
142
- * Defines the effective weeks numbers visibility,
143
- * based on the <code>primaryCalendarType</code> and <code>hideWeekNumbers</code> property.
144
- * @type {boolean}
145
- * @private
146
- */
147
- _hideWeekNumbers: {
148
- type: Boolean,
149
- },
150
-
151
92
  /**
152
93
  * @type {Object}
153
94
  * @private
@@ -157,7 +98,13 @@ const metadata = {
157
98
  multiple: true,
158
99
  },
159
100
 
101
+ _dayNames: {
102
+ type: Object,
103
+ multiple: true,
104
+ },
105
+
160
106
  /**
107
+ * When set, the component will skip all work in onBeforeRendering and will not automatically set the focus on itself
161
108
  * @type {boolean}
162
109
  * @private
163
110
  */
@@ -165,16 +112,24 @@ const metadata = {
165
112
  type: Boolean,
166
113
  noAttribute: true,
167
114
  },
115
+
116
+ /**
117
+ * When selectionMode="Range" and the first day in the range is selected, this is the currently hovered (when using mouse) or focused (when using keyboard) day by the user
118
+ * @private
119
+ */
120
+ _secondTimestamp: {
121
+ type: String,
122
+ },
168
123
  },
169
124
  events: /** @lends sap.ui.webcomponents.main.DayPicker.prototype */ {
170
125
  /**
171
- * Fired when the user selects a new Date on the Web Component.
126
+ * Fired when the selected date(s) change
172
127
  * @public
173
128
  * @event
174
129
  */
175
130
  change: {},
176
131
  /**
177
- * Fired when month, year has changed due to item navigation.
132
+ * Fired when the timestamp changes (user navigates with the keyboard) or clicks with the mouse
178
133
  * @public
179
134
  * @event
180
135
  */
@@ -182,6 +137,10 @@ const metadata = {
182
137
  },
183
138
  };
184
139
 
140
+ const isBetween = (x, num1, num2) => x > Math.min(num1, num2) && x < Math.max(num1, num2);
141
+
142
+ const DAYS_IN_WEEK = 7;
143
+
185
144
  /**
186
145
  * @class
187
146
  *
@@ -190,19 +149,15 @@ const metadata = {
190
149
  * @constructor
191
150
  * @author SAP SE
192
151
  * @alias sap.ui.webcomponents.main.DayPicker
193
- * @extends sap.ui.webcomponents.base.UI5Element
152
+ * @extends CalendarPart
194
153
  * @tagname ui5-daypicker
195
154
  * @public
196
155
  */
197
- class DayPicker extends UI5Element {
156
+ class DayPicker extends CalendarPart {
198
157
  static get metadata() {
199
158
  return metadata;
200
159
  }
201
160
 
202
- static get render() {
203
- return litRender;
204
- }
205
-
206
161
  static get template() {
207
162
  return DayPickerTemplate;
208
163
  }
@@ -211,173 +166,158 @@ class DayPicker extends UI5Element {
211
166
  return dayPickerCSS;
212
167
  }
213
168
 
214
- constructor() {
215
- super();
216
-
217
- this._itemNav = new ItemNavigation(this, {
218
- rowSize: 7,
219
- pageSize: 42,
220
- behavior: ItemNavigationBehavior.Paging,
221
- });
222
-
223
- this._itemNav.getItemsCallback = function getItemsCallback() {
224
- return this.focusableDays;
225
- }.bind(this);
226
-
227
- this._itemNav.attachEvent(
228
- ItemNavigation.BORDER_REACH,
229
- this._handleItemNavigationBorderReach.bind(this)
230
- );
231
-
232
- this._itemNav.attachEvent(
233
- ItemNavigation.AFTER_FOCUS,
234
- this._handleItemNavigationAfterFocus.bind(this)
235
- );
236
-
237
- this._itemNav.attachEvent(
238
- "PageBottom",
239
- this._handleMonthBottomOverflow.bind(this)
240
- );
241
-
242
- this._itemNav.attachEvent(
243
- "PageTop",
244
- this._handleMonthTopOverflow.bind(this)
245
- );
246
-
247
- this.i18nBundle = getI18nBundle("@ui5/webcomponents");
248
- }
249
-
250
169
  onBeforeRendering() {
251
170
  const localeData = getCachedLocaleDataInstance(getLocale());
171
+ this._buildWeeks(localeData);
172
+ this._buildDayNames(localeData);
173
+ }
252
174
 
253
- let oCalDate,
254
- day,
255
- timestamp,
256
- lastWeekNumber = -1,
257
- isDaySelected = false,
258
- todayIndex = 0;
175
+ /**
176
+ * Builds the _weeks object that represents the month
177
+ * @param localeData
178
+ * @private
179
+ */
180
+ _buildWeeks(localeData) {
181
+ if (this._hidden) {
182
+ return; // Optimization to not do any work unless the current picker
183
+ }
259
184
 
260
- const _aVisibleDays = this._getVisibleDays(this._calendarDate);
261
185
  this._weeks = [];
186
+
187
+ const firstDayOfWeek = this._getFirstDayOfWeek();
188
+ const monthsNames = localeData.getMonths("wide", this._primaryCalendarType);
189
+ const secondaryMonthsNames = this.hasSecondaryCalendarType && localeData.getMonths("wide", this.secondaryCalendarType);
190
+ const nonWorkingDayLabel = DayPicker.i18nBundle.getText(DAY_PICKER_NON_WORKING_DAY);
191
+ const todayLabel = DayPicker.i18nBundle.getText(DAY_PICKER_TODAY);
192
+ const tempDate = this._getFirstDay(); // date that will be changed by 1 day 42 times
193
+ const todayDate = CalendarDate.fromLocalJSDate(new Date(), this._primaryCalendarType); // current day date - calculate once
194
+ const calendarDate = this._calendarDate; // store the _calendarDate value as this getter is expensive and degrades IE11 perf
195
+ const minDate = this._minDate; // store the _minDate (expensive getter)
196
+ const maxDate = this._maxDate; // store the _maxDate (expensive getter)
197
+
198
+ const tempSecondDate = this.hasSecondaryCalendarType && this._getSecondaryDay(tempDate);
199
+
262
200
  let week = [];
263
- this._weekNumbers = [];
264
- let weekday;
265
- const _monthsNameWide = localeData.getMonths("wide", this._calendarDate._oUDate.sCalendarType);
266
-
267
- this._minDateObject = new Date(this._minDate);
268
- this._maxDateObject = new Date(this._maxDate);
269
-
270
- /* eslint-disable no-loop-func */
271
- for (let i = 0; i < _aVisibleDays.length; i++) {
272
- oCalDate = _aVisibleDays[i];
273
- timestamp = oCalDate.valueOf() / 1000; // no need to round because CalendarDate does it
274
-
275
- // day of the week
276
- weekday = oCalDate.getDay() - this._getFirstDayOfWeek();
277
- if (weekday < 0) {
278
- weekday += 7;
279
- }
201
+ for (let i = 0; i < DAYS_IN_WEEK * 6; i++) { // always show 6 weeks total, 42 days to avoid jumping
202
+ const timestamp = tempDate.valueOf() / 1000; // no need to round because CalendarDate does it
280
203
 
281
- const nonWorkingAriaLabel = this._isWeekend(oCalDate) ? `${this._dayPickerNonWorkingDay} ` : "";
204
+ let dayOfTheWeek = tempDate.getDay() - firstDayOfWeek;
205
+ if (dayOfTheWeek < 0) {
206
+ dayOfTheWeek += DAYS_IN_WEEK;
207
+ }
282
208
 
283
- day = {
209
+ const isFocused = tempDate.getMonth() === calendarDate.getMonth() && tempDate.getDate() === calendarDate.getDate();
210
+ const isSelected = this._isDaySelected(timestamp);
211
+ const isSelectedBetween = this._isDayInsideSelectionRange(timestamp);
212
+ const isOtherMonth = tempDate.getMonth() !== calendarDate.getMonth();
213
+ const isWeekend = this._isWeekend(tempDate);
214
+ const isDisabled = tempDate.valueOf() < minDate.valueOf() || tempDate.valueOf() > maxDate.valueOf();
215
+ const isToday = tempDate.isSame(todayDate);
216
+ const isFirstDayOfWeek = tempDate.getDay() === firstDayOfWeek;
217
+
218
+ const nonWorkingAriaLabel = isWeekend ? `${nonWorkingDayLabel} ` : "";
219
+ const todayAriaLabel = isToday ? `${todayLabel} ` : "";
220
+ const ariaLabel = this.hasSecondaryCalendarType
221
+ ? `${todayAriaLabel}${nonWorkingAriaLabel}${monthsNames[tempDate.getMonth()]} ${tempDate.getDate()}, ${tempDate.getYear()}; ${secondaryMonthsNames[tempSecondDate.getMonth()]} ${tempSecondDate.getDate()}, ${tempSecondDate.getYear()}`
222
+ : `${todayAriaLabel}${nonWorkingAriaLabel}${monthsNames[tempDate.getMonth()]} ${tempDate.getDate()}, ${tempDate.getYear()}`;
223
+
224
+ const day = {
284
225
  timestamp: timestamp.toString(),
285
- selected: this._selectedDates.some(d => {
286
- return d === timestamp;
287
- }),
288
- selectedBetween: this._selectedDates.slice(1, this._selectedDates.length - 1).some(d => {
289
- return d === timestamp;
290
- }),
291
- iDay: oCalDate.getDate(),
292
- _index: i.toString(),
293
- classes: `ui5-dp-item ui5-dp-wday${weekday}`,
294
- ariaLabel: `${nonWorkingAriaLabel}${_monthsNameWide[oCalDate.getMonth()]} ${oCalDate.getDate()}, ${oCalDate.getYear()}`,
226
+ focusRef: isFocused,
227
+ _tabIndex: isFocused ? "0" : "-1",
228
+ selected: isSelected,
229
+ day: tempDate.getDate(),
230
+ secondDay: this.hasSecondaryCalendarType && tempSecondDate.getDate(),
231
+ _isSecondaryCalendarType: this.hasSecondaryCalendarType,
232
+ classes: `ui5-dp-item ui5-dp-wday${dayOfTheWeek}`,
233
+ ariaLabel,
234
+ ariaSelected: isSelected ? "true" : "false",
235
+ ariaDisabled: isOtherMonth ? "true" : undefined,
236
+ disabled: isDisabled,
295
237
  };
296
238
 
297
- const isToday = oCalDate.isSame(CalendarDate.fromLocalJSDate(new Date(), this._primaryCalendarType));
298
-
299
- week.push(day);
300
-
301
- if (oCalDate.getDay() === this._getFirstDayOfWeek()) {
239
+ if (isFirstDayOfWeek) {
302
240
  day.classes += " ui5-dp-firstday";
303
241
  }
304
242
 
305
- if (day.selected) {
243
+ if (isSelected) {
306
244
  day.classes += " ui5-dp-item--selected";
307
- isDaySelected = true;
308
245
  }
309
246
 
310
- if (day.selectedBetween) {
247
+ if (isSelectedBetween) {
311
248
  day.classes += " ui5-dp-item--selected-between";
312
249
  }
313
250
 
314
251
  if (isToday) {
315
252
  day.classes += " ui5-dp-item--now";
316
- todayIndex = i;
317
- day.ariaLabel = `today ${day.ariaLabel}`;
318
253
  }
319
254
 
320
- if (oCalDate.getMonth() !== this._month) {
255
+ if (isOtherMonth) {
321
256
  day.classes += " ui5-dp-item--othermonth";
322
- day.ariaDisabled = "true";
323
257
  }
324
258
 
325
- day.id = `${this._id}-${timestamp}`;
326
-
327
- if (this._isWeekend(oCalDate)) {
259
+ if (isWeekend) {
328
260
  day.classes += " ui5-dp-item--weeekend";
329
261
  }
330
- if ((this.minDate || this.maxDate) && this._isOutOfSelectableRange(oCalDate)) {
262
+
263
+ if (isDisabled) {
331
264
  day.classes += " ui5-dp-item--disabled";
332
- day.disabled = true;
333
265
  }
334
266
 
335
- this._hideWeekNumbers = this.shouldHideWeekNumbers;
336
-
337
- if (day.classes.indexOf("ui5-dp-wday6") !== -1
338
- || _aVisibleDays.length - 1 === i) {
339
- const weekNumber = calculateWeekNumber(getFirstDayOfWeek(), oCalDate.toUTCJSDate(), oCalDate.getYear(), getLocale(), localeData);
340
- if (lastWeekNumber !== weekNumber) {
341
- const weekNum = {
342
- weekNum: weekNumber,
343
- isHidden: this._hideWeekNumbers,
344
- };
345
- week.unshift(weekNum);
346
- lastWeekNumber = weekNumber;
347
- }
267
+ if (this.hasSecondaryCalendarType) {
268
+ day.classes += " ui5-dp-item--withsecondtype";
269
+ }
348
270
 
271
+ week.push(day);
272
+
273
+ if (dayOfTheWeek === DAYS_IN_WEEK - 1) { // 0-indexed so 6 is the last day of the week
274
+ week.unshift({
275
+ weekNum: calculateWeekNumber(getFirstDayOfWeek(), tempDate.toUTCJSDate(), tempDate.getYear(), getLocale(), localeData),
276
+ isHidden: this.shouldHideWeekNumbers,
277
+ });
278
+ }
279
+
280
+ if (week.length === DAYS_IN_WEEK + 1) { // 7 entries for each day + 1 for the week numbers
349
281
  this._weeks.push(week);
350
282
  week = [];
351
283
  }
284
+
285
+ tempDate.setDate(tempDate.getDate() + 1);
286
+ if (this.hasSecondaryCalendarType) {
287
+ tempSecondDate.setDate(tempSecondDate.getDate() + 1);
288
+ }
352
289
  }
353
- while (this._weeks.length < 6) {
354
- this._weeks.push([]);
355
- }
356
- /* eslint-enable no-loop-func */
290
+ }
357
291
 
358
- if (!isDaySelected && todayIndex && this._itemNav.current === 0) {
359
- this._itemNav.current = todayIndex;
292
+ /**
293
+ * Builds the dayNames object (header of the month)
294
+ * @param localeData
295
+ * @private
296
+ */
297
+ _buildDayNames(localeData) {
298
+ if (this._hidden) {
299
+ return; // Optimization to not do any work unless the current picker
360
300
  }
361
301
 
302
+ let dayOfTheWeek;
303
+
362
304
  const aDayNamesWide = localeData.getDays("wide", this._primaryCalendarType);
363
305
  const aDayNamesAbbreviated = localeData.getDays("abbreviated", this._primaryCalendarType);
364
- const aUltraShortNames = aDayNamesAbbreviated.map(n => n);
365
306
  let dayName;
366
307
 
367
308
  this._dayNames = [];
368
309
  this._dayNames.push({
369
310
  classes: "ui5-dp-dayname",
370
- name: this._dayPickerWeekNumberText,
311
+ name: DayPicker.i18nBundle.getText(DAY_PICKER_WEEK_NUMBER_TEXT),
371
312
  });
372
- for (let i = 0; i < 7; i++) {
373
- weekday = i + this._getFirstDayOfWeek();
374
- if (weekday > 6) {
375
- weekday -= 7;
313
+ for (let i = 0; i < DAYS_IN_WEEK; i++) {
314
+ dayOfTheWeek = i + this._getFirstDayOfWeek();
315
+ if (dayOfTheWeek > DAYS_IN_WEEK - 1) { // 0-indexed so index of 6 is the maximum allowed
316
+ dayOfTheWeek -= DAYS_IN_WEEK;
376
317
  }
377
318
  dayName = {
378
- id: `${this._id}-WH${i.toString()}`,
379
- name: aDayNamesWide[weekday],
380
- ultraShortName: aUltraShortNames[weekday],
319
+ name: aDayNamesWide[dayOfTheWeek],
320
+ ultraShortName: aDayNamesAbbreviated[dayOfTheWeek],
381
321
  classes: "ui5-dp-dayname",
382
322
  };
383
323
 
@@ -385,418 +325,363 @@ class DayPicker extends UI5Element {
385
325
  }
386
326
 
387
327
  this._dayNames[1].classes += " ui5-dp-firstday";
328
+
329
+ if (this.shouldHideWeekNumbers) {
330
+ this._dayNames.shift();
331
+ }
388
332
  }
389
333
 
390
334
  onAfterRendering() {
391
- this._fireDayPickerRendered();
392
- if (this._inputLiveChangeTrigger) {
393
- this._inputLiveChangeTrigger = false;
394
- } else {
395
- this._itemNav.focusCurrent();
335
+ if (this._autoFocus && !this._hidden) {
336
+ this.focus();
396
337
  }
397
338
  }
398
339
 
399
- _onmousedown(event) {
400
- const target = event.target;
401
- const dayPressed = this._isDayPressed(target);
402
-
403
- if (dayPressed) {
404
- const targetDate = parseInt(target.getAttribute("data-sap-timestamp"));
405
-
406
- // findIndex, give it to item navigation
407
- for (let i = 0; i < this._weeks.length; i++) {
408
- for (let j = 0; j < this._weeks[i].length; j++) {
409
- if (parseInt(this._weeks[i][j].timestamp) === targetDate) {
410
- let index = parseInt(target.getAttribute("data-sap-index"));
411
- if (this.minDate || this.maxDate) {
412
- const focusableItem = this.focusableDays.find(item => parseInt(item._index) === index);
413
- index = focusableItem ? this.focusableDays.indexOf(focusableItem) : index;
414
- }
415
-
416
- this._itemNav.current = index;
417
- this._itemNav.update();
418
- break;
419
- }
420
- }
421
- }
340
+ _onfocusin() {
341
+ this._autoFocus = true;
342
+ }
422
343
 
423
- this.targetDate = targetDate;
424
- }
344
+ _onfocusout() {
345
+ this._autoFocus = false;
425
346
  }
426
347
 
427
- _onmouseup(event) {
428
- const dayPressed = this._isDayPressed(event.target);
429
- if (this.targetDate) {
430
- this._modifySelectionAndNotifySubscribers(this.targetDate, event.ctrlKey);
431
- this.targetDate = null;
348
+ /**
349
+ * Tells if the day is selected (dark blue)
350
+ * @param timestamp
351
+ * @returns {boolean}
352
+ * @private
353
+ */
354
+ _isDaySelected(timestamp) {
355
+ if (this.selectionMode === CalendarSelectionMode.Single) {
356
+ return timestamp === this.selectedDates[0];
432
357
  }
433
358
 
434
- if (!dayPressed) {
435
- this._itemNav.focusCurrent();
436
- }
359
+ // Multiple, Range
360
+ return this.selectedDates.includes(timestamp);
437
361
  }
438
362
 
439
- _onitemmouseover(event) {
440
- if (this.selectedDates.length === 1) {
441
- this.fireEvent("item-mouseover", event);
363
+ /**
364
+ * Tells if the day is inside a selection range (light blue)
365
+ * @param timestamp
366
+ * @returns {*}
367
+ * @private
368
+ */
369
+ _isDayInsideSelectionRange(timestamp) {
370
+ // No selection at all (or not in range selection mode)
371
+ if (this.selectionMode !== CalendarSelectionMode.Range || !this.selectedDates.length) {
372
+ return false;
442
373
  }
443
- }
444
374
 
445
- _onitemkeydown(event) {
446
- if (this.selectedDates.length === 1) {
447
- this.fireEvent("item-keydown", event);
375
+ // Only one date selected - the user is hovering with the mouse or navigating with the keyboard to select the second one
376
+ if (this.selectedDates.length === 1 && this._secondTimestamp) {
377
+ return isBetween(timestamp, this.selectedDates[0], this._secondTimestamp);
448
378
  }
379
+
380
+ // Two dates selected - stable range
381
+ return isBetween(timestamp, this.selectedDates[0], this.selectedDates[1]);
449
382
  }
450
383
 
451
- _onkeydown(event) {
452
- if (isEnter(event)) {
453
- return this._handleEnter(event);
454
- }
384
+ /**
385
+ * Selects/deselects a day
386
+ * @param event
387
+ * @param isShift true if the user did Click+Shift or Enter+Shift (but not Space+Shift)
388
+ * @private
389
+ */
390
+ _selectDate(event, isShift) {
391
+ const target = event.target;
455
392
 
456
- if (isSpace(event)) {
457
- event.preventDefault();
393
+ if (!this._isDayPressed(target)) {
458
394
  return;
459
395
  }
460
396
 
461
- if (isHomeCtrl(event)) {
462
- this._navToStartEndDayOfTheMonth(event, true);
463
- }
397
+ const timestamp = this._getTimestampFromDom(target);
464
398
 
465
- if (isEndCtrl(event)) {
466
- this._navToStartEndDayOfTheMonth(event, false);
467
- }
468
-
469
- if (isPageUpShift(event)) {
470
- this._changeYears(event, false, 1);
471
- }
472
-
473
- if (isPageUpShiftCtrl(event)) {
474
- this._changeYears(event, false, 10);
475
- }
399
+ this._safelySetTimestamp(timestamp);
400
+ this._updateSecondTimestamp();
476
401
 
477
- if (isPageDownShift(event)) {
478
- this._changeYears(event, true, 1);
402
+ if (this.selectionMode === CalendarSelectionMode.Single) {
403
+ this.selectedDates = [timestamp];
404
+ } else if (this.selectionMode === CalendarSelectionMode.Multiple) {
405
+ if (this.selectedDates.length > 0 && isShift) {
406
+ this._multipleSelection(timestamp);
407
+ } else {
408
+ this._toggleTimestampInSelection(timestamp);
409
+ }
410
+ } else {
411
+ this.selectedDates = (this.selectedDates.length === 1) ? [...this.selectedDates, timestamp] : [timestamp];
479
412
  }
480
413
 
481
- if (isPageDownShiftCtrl(event)) {
482
- this._changeYears(event, true, 10);
483
- }
414
+ this.fireEvent("change", {
415
+ timestamp: this.timestamp,
416
+ dates: this.selectedDates,
417
+ });
484
418
  }
485
419
 
486
- _onkeyup(event) {
487
- if (isSpace(event)) {
488
- this._handleSpace(event);
489
- }
490
- }
420
+ /**
421
+ * Selects/deselects the whole row (week)
422
+ * @param event
423
+ * @private
424
+ */
425
+ _selectWeek(event) {
426
+ this._weeks.forEach(week => {
427
+ const dayInThisWeek = week.findIndex(item => {
428
+ const date = CalendarDate.fromTimestamp(parseInt(item.timestamp) * 1000);
429
+ return date.getMonth() === this._calendarDate.getMonth() && date.getDate() === this._calendarDate.getDate();
430
+ }) !== -1;
431
+ if (dayInThisWeek) { // The current day is in this week
432
+ const notAllDaysOfThisWeekSelected = week.some(item => item.timestamp && !this.selectedDates.includes(parseInt(item.timestamp)));
433
+ if (notAllDaysOfThisWeekSelected) { // even if one day is not selected, select the whole week
434
+ week.filter(item => item.timestamp).forEach(item => {
435
+ this._addTimestampToSelection(parseInt(item.timestamp));
436
+ });
437
+ } else { // only if all days of this week are selected, deselect them
438
+ week.filter(item => item.timestamp).forEach(item => {
439
+ this._removeTimestampFromSelection(parseInt(item.timestamp));
440
+ });
441
+ }
442
+ }
443
+ });
491
444
 
492
- _handleEnter(event) {
493
- event.preventDefault();
494
- if (event.target.className.indexOf("ui5-dp-item") > -1) {
495
- const targetDate = parseInt(event.target.getAttribute("data-sap-timestamp"));
496
- this._modifySelectionAndNotifySubscribers(targetDate, event.ctrlKey);
497
- }
445
+ this.fireEvent("change", {
446
+ timestamp: this.timestamp,
447
+ dates: this.selectedDates,
448
+ });
498
449
  }
499
450
 
500
- _handleSpace(event) {
501
- event.preventDefault();
502
- if (event.target.className.indexOf("ui5-dp-item") > -1) {
503
- const targetDate = parseInt(event.target.getAttribute("data-sap-timestamp"));
504
- this._modifySelectionAndNotifySubscribers(targetDate, event.ctrlKey);
451
+ _toggleTimestampInSelection(timestamp) {
452
+ if (this.selectedDates.includes(timestamp)) {
453
+ this._removeTimestampFromSelection(timestamp);
454
+ } else {
455
+ this._addTimestampToSelection(timestamp);
505
456
  }
506
457
  }
507
458
 
508
- _navToStartEndDayOfTheMonth(event, start) {
509
- event.preventDefault();
510
-
511
- const currentItem = this._itemNav._getCurrentItem();
512
- let currentTimestamp = parseInt(currentItem.getAttribute("data-sap-timestamp")) * 1000;
513
- let calDate = CalendarDate.fromTimestamp(currentTimestamp, this._primaryCalendarType);
514
-
515
- if (currentItem.classList.contains("ui5-dp-item--othermonth")) {
516
- return;
517
- }
518
-
519
- calDate.setDate(1);
520
- if (!start) {
521
- // set the day to be the last day of the current month
522
- calDate.setMonth(calDate.getMonth() + 1, 0);
523
- }
524
-
525
- if (calDate.valueOf() < this._minDate) {
526
- calDate = CalendarDate.fromLocalJSDate(new Date(this._minDate), this._primaryCalendarType);
527
- } else if (calDate.valueOf() > this._maxDate) {
528
- calDate = CalendarDate.fromLocalJSDate(new Date(this._maxDate), this._primaryCalendarType);
459
+ _addTimestampToSelection(timestamp) {
460
+ if (!this.selectedDates.includes(timestamp)) {
461
+ this.selectedDates = [...this.selectedDates, timestamp];
529
462
  }
463
+ }
530
464
 
531
- currentTimestamp = calDate.valueOf() / 1000;
532
- const newItemIndex = this._itemNav._getItems().findIndex(item => parseInt(item.timestamp) === currentTimestamp);
533
-
534
- this._itemNav.currentIndex = newItemIndex;
535
- this._itemNav.focusCurrent();
465
+ _removeTimestampFromSelection(timestamp) {
466
+ this.selectedDates = this.selectedDates.filter(value => value !== timestamp);
536
467
  }
537
468
 
538
469
  /**
539
- * Converts "timestamp" property value into a Java Script Date object and
540
- * adds or extracts a given number of years from it
541
- *
542
- * @param {object} event used to prevent the default browser behavior
543
- * @param {boolean} forward if true indicates addition
544
- * @param {int} step for year number to substract or add
470
+ * When at least one day is selected and the user pressed shift
471
+ * @param timestamp
472
+ * @private
545
473
  */
546
- _changeYears(event, forward, step) {
547
- const currentItem = this._itemNav._getCurrentItem();
548
- let currentTimestamp = parseInt(currentItem.getAttribute("data-sap-timestamp") * 1000);
549
- const currentDate = CalendarDate.fromTimestamp(currentTimestamp, this._primaryCalendarType);
550
- let newDate = new CalendarDate(currentDate, this._primaryCalendarType);
551
-
552
- if (forward) {
553
- newDate.setYear(newDate.getYear() + step);
474
+ _multipleSelection(timestamp) {
475
+ const min = Math.min(...this.selectedDates);
476
+ const max = Math.max(...this.selectedDates);
477
+ let start;
478
+ let end;
479
+ let toggle = false;
480
+
481
+ if (timestamp < min) {
482
+ start = timestamp;
483
+ end = min;
484
+ } else if (timestamp >= min && timestamp <= max) { // inside the current range - toggle all between the selected and focused
485
+ const distanceToMin = Math.abs(timestamp - min);
486
+ const distanceToMax = Math.abs(timestamp - max);
487
+
488
+ if (distanceToMin < distanceToMax) {
489
+ start = timestamp;
490
+ end = max;
491
+ } else {
492
+ start = min;
493
+ end = timestamp;
494
+ }
495
+ toggle = true;
554
496
  } else {
555
- newDate.setYear(newDate.getYear() - step);
497
+ start = max;
498
+ end = timestamp;
556
499
  }
557
500
 
558
- if (currentDate.getMonth() !== newDate.getMonth()) {
559
- newDate.setDate(0);
560
- }
501
+ const startDate = CalendarDate.fromTimestamp(start * 1000);
502
+ const endDate = CalendarDate.fromTimestamp(end * 1000);
561
503
 
562
- if (newDate.valueOf() < this._minDate) {
563
- newDate = CalendarDate.fromLocalJSDate(new Date(this._minDate), this._primaryCalendarType);
564
- } else if (newDate.valueOf() > this._maxDate) {
565
- newDate = CalendarDate.fromLocalJSDate(new Date(this._maxDate), this._primaryCalendarType);
504
+ while (startDate.valueOf() <= endDate.valueOf()) {
505
+ this[toggle ? "_toggleTimestampInSelection" : "_addTimestampToSelection"](startDate.valueOf() / 1000);
506
+ startDate.setDate(startDate.getDate() + 1);
566
507
  }
567
-
568
- currentTimestamp = (newDate.valueOf() / 1000);
569
-
570
- this._navigateAndWaitRerender(currentTimestamp);
571
-
572
- event.preventDefault();
573
508
  }
574
509
 
575
- get shouldHideWeekNumbers() {
576
- if (this._primaryCalendarType !== CalendarType.Gregorian) {
577
- return true;
510
+ /**
511
+ * Set the hovered day as the _secondTimestamp
512
+ * @param event
513
+ * @private
514
+ */
515
+ _onmouseover(event) {
516
+ const hoveredItem = event.target.closest(".ui5-dp-item");
517
+ if (hoveredItem && this.selectionMode === CalendarSelectionMode.Range && this.selectedDates.length === 1) {
518
+ this._secondTimestamp = this._getTimestampFromDom(hoveredItem);
578
519
  }
579
-
580
- return this.hideWeekNumbers;
581
520
  }
582
521
 
583
- get _timestamp() {
584
- return this.timestamp !== undefined ? this.timestamp : Math.floor(new Date().getTime() / 1000);
585
- }
586
-
587
- get _localDate() {
588
- return new Date(this._timestamp * 1000);
589
- }
590
-
591
- get _calendarDate() {
592
- return CalendarDate.fromTimestamp(this._localDate.getTime(), this._primaryCalendarType);
593
- }
522
+ _onkeydown(event) {
523
+ let preventDefault = true;
594
524
 
595
- get _formatPattern() {
596
- return this.formatPattern || "medium"; // get from config
597
- }
525
+ if (isEnter(event) || isEnterShift(event)) {
526
+ this._selectDate(event, isEnterShift(event));
527
+ } else if (isSpace(event) || isSpaceShift(event)) {
528
+ event.preventDefault();
529
+ } else if (isLeft(event)) {
530
+ this._modifyTimestampBy(-1, "day");
531
+ } else if (isRight(event)) {
532
+ this._modifyTimestampBy(1, "day");
533
+ } else if (isUp(event)) {
534
+ this._modifyTimestampBy(-7, "day");
535
+ } else if (isDown(event)) {
536
+ this._modifyTimestampBy(7, "day");
537
+ } else if (isPageUp(event)) {
538
+ this._modifyTimestampBy(-1, "month");
539
+ } else if (isPageDown(event)) {
540
+ this._modifyTimestampBy(1, "month");
541
+ } else if (isPageUpShift(event) || isPageUpAlt(event)) {
542
+ this._modifyTimestampBy(-1, "year");
543
+ } else if (isPageDownShift(event) || isPageDownAlt(event)) {
544
+ this._modifyTimestampBy(1, "year");
545
+ } else if (isPageUpShiftCtrl(event)) {
546
+ this._modifyTimestampBy(-10, "year");
547
+ } else if (isPageDownShiftCtrl(event)) {
548
+ this._modifyTimestampBy(10, "year");
549
+ } else if (isHome(event) || isEnd(event)) {
550
+ this._onHomeOrEnd(isHome(event));
551
+ } else if (isHomeCtrl(event)) {
552
+ const tempDate = new CalendarDate(this._calendarDate, this._primaryCalendarType);
553
+ tempDate.setDate(1); // Set the first day of the month
554
+ this._setTimestamp(tempDate.valueOf() / 1000);
555
+ } else if (isEndCtrl(event)) {
556
+ const tempDate = new CalendarDate(this._calendarDate, this._primaryCalendarType);
557
+ tempDate.setMonth(tempDate.getMonth() + 1);
558
+ tempDate.setDate(0); // Set the last day of the month (0th day of next month)
559
+ this._setTimestamp(tempDate.valueOf() / 1000);
560
+ } else {
561
+ preventDefault = false;
562
+ }
598
563
 
599
- get _month() {
600
- return this._calendarDate.getMonth();
564
+ if (preventDefault) {
565
+ event.preventDefault();
566
+ }
601
567
  }
602
568
 
603
- get _year() {
604
- return this._calendarDate.getYear();
569
+ _onkeyup(event) {
570
+ // Even if Space+Shift was pressed, ignore the shift unless in Multiple selection
571
+ if (isSpace(event) || (isSpaceShift(event) && this.selectionMode !== CalendarSelectionMode.Multiple)) {
572
+ this._selectDate(event, false);
573
+ } else if (isSpaceShift(event)) {
574
+ this._selectWeek(event);
575
+ }
605
576
  }
606
577
 
607
- get _currentCalendarDate() {
608
- return CalendarDate.fromTimestamp(new Date().getTime(), this._primaryCalendarType);
578
+ /**
579
+ * Click is the same as Enter: Click+Shift has the same effect as Enter+Shift
580
+ * @param event
581
+ * @private
582
+ */
583
+ _onclick(event) {
584
+ this._selectDate(event, event.shiftKey);
609
585
  }
610
586
 
611
- get _selectedDates() {
612
- return this.selectedDates || [];
587
+ /**
588
+ * One Home or End, move the focus to the first or last item in the row
589
+ * @param homePressed
590
+ * @private
591
+ */
592
+ _onHomeOrEnd(homePressed) {
593
+ this._weeks.forEach(week => {
594
+ const dayInThisWeek = week.findIndex(item => {
595
+ const date = CalendarDate.fromTimestamp(parseInt(item.timestamp) * 1000);
596
+ return date.getMonth() === this._calendarDate.getMonth() && date.getDate() === this._calendarDate.getDate();
597
+ }) !== -1;
598
+ if (dayInThisWeek) { // The current day is in this week
599
+ const index = homePressed ? 1 : 7; // select the first (if Home) or last (if End) day of the week
600
+ this._setTimestamp(parseInt(week[index].timestamp));
601
+ }
602
+ });
613
603
  }
614
604
 
615
- get _primaryCalendarType() {
616
- const localeData = getCachedLocaleDataInstance(getLocale());
617
- return this.primaryCalendarType || getCalendarType() || localeData.getPreferredCalendarType();
605
+ /**
606
+ * Called from Calendar.js
607
+ * @protected
608
+ */
609
+ _hasPreviousPage() {
610
+ return !(this._calendarDate.getMonth() === this._minDate.getMonth() && this._calendarDate.getYear() === this._minDate.getYear());
618
611
  }
619
612
 
620
- get focusableDays() {
621
- const focusableDays = [];
622
-
623
- for (let i = 0; i < this._weeks.length; i++) {
624
- const week = this._weeks[i].slice(1).filter(x => !x.disabled);
625
- focusableDays.push(week);
626
- }
627
-
628
- return [].concat(...focusableDays);
613
+ /**
614
+ * Called from Calendar.js
615
+ * @protected
616
+ */
617
+ _hasNextPage() {
618
+ return !(this._calendarDate.getMonth() === this._maxDate.getMonth() && this._calendarDate.getYear() === this._maxDate.getYear());
629
619
  }
630
620
 
631
- get _dayPickerWeekNumberText() {
632
- return this.i18nBundle.getText(DAY_PICKER_WEEK_NUMBER_TEXT);
621
+ /**
622
+ * Called from Calendar.js
623
+ * Same as PageUp
624
+ * @protected
625
+ */
626
+ _showPreviousPage() {
627
+ this._modifyTimestampBy(-1, "month");
633
628
  }
634
629
 
635
- get _dayPickerNonWorkingDay() {
636
- return this.i18nBundle.getText(DAY_PICKER_NON_WORKING_DAY);
630
+ /**
631
+ * Called from Calendar.js
632
+ * Same as PageDown
633
+ * @protected
634
+ */
635
+ _showNextPage() {
636
+ this._modifyTimestampBy(1, "month");
637
637
  }
638
638
 
639
- _modifySelectionAndNotifySubscribers(sNewDate, bAdd) {
640
- if (bAdd) {
641
- this.selectedDates = [...this._selectedDates, sNewDate];
642
- } else {
643
- this.selectedDates = [sNewDate];
644
- }
645
-
646
- this.fireEvent("change", { dates: [...this._selectedDates] });
647
- }
639
+ /**
640
+ * Modifies the timestamp by a certain amount of days/months/years
641
+ * @param amount
642
+ * @param unit
643
+ * @private
644
+ */
645
+ _modifyTimestampBy(amount, unit) {
646
+ // Modify the current timestamp
647
+ this._safelyModifyTimestampBy(amount, unit);
648
+ this._updateSecondTimestamp();
648
649
 
649
- _handleMonthBottomOverflow(event) {
650
- this._itemNav.hasNextPage = this._hasNextMonth();
650
+ // Notify the calendar to update its timestamp
651
+ this.fireEvent("navigate", { timestamp: this.timestamp });
651
652
  }
652
653
 
653
- _handleMonthTopOverflow(event) {
654
- this._itemNav.hasPrevPage = this._hasPrevMonth();
654
+ /**
655
+ * Sets the timestamp to an absolute value
656
+ * @param value
657
+ * @private
658
+ */
659
+ _setTimestamp(value) {
660
+ this._safelySetTimestamp(value);
661
+ this._updateSecondTimestamp();
662
+ this.fireEvent("navigate", { timestamp: this.timestamp });
655
663
  }
656
664
 
657
- _hasNextMonth() {
658
- let newMonth = this._month + 1;
659
- let newYear = this._year;
660
- const maxCalendarYear = CalendarDate.fromTimestamp(this._getMaxCalendarDate(), this._primaryCalendarType).getYear();
661
-
662
- if (newMonth > 11) {
663
- newMonth = 0;
664
- newYear++;
665
- }
666
-
667
- if (newYear > maxCalendarYear && newMonth === 0) {
668
- return false;
669
- }
670
-
671
- if (!this.maxDate) {
672
- return true;
673
- }
674
-
675
- const oNewDate = this._calendarDate;
676
- oNewDate.setDate(oNewDate.getDate());
677
- oNewDate.setYear(newYear);
678
- oNewDate.setMonth(newMonth);
679
-
680
- const monthsBetween = monthDiff(oNewDate.valueOf(), this._maxDate);
681
- if (monthsBetween < 0) {
682
- return false;
683
- }
684
-
685
- const lastFocusableDay = this.focusableDays[this.focusableDays.length - 1].iDay;
686
- if (monthsBetween === 0 && CalendarDate.fromTimestamp(this._maxDate).toLocalJSDate().getDate() === lastFocusableDay) {
687
- return false;
665
+ /**
666
+ * During range selection, when the user is navigating with the keyboard, the currently focused day is considered the "second day"
667
+ * @private
668
+ */
669
+ _updateSecondTimestamp() {
670
+ if (this.selectionMode === CalendarSelectionMode.Range && this.selectedDates.length === 1) {
671
+ this._secondTimestamp = this.timestamp;
688
672
  }
689
-
690
- return true;
691
673
  }
692
674
 
693
- _hasPrevMonth() {
694
- let newMonth = this._month - 1;
695
- let newYear = this._year;
696
- const minCalendarYear = CalendarDate.fromTimestamp(this._getMinCalendarDate(), this._primaryCalendarType).getYear();
697
-
698
- if (newMonth < 0) {
699
- newMonth = 11;
700
- newYear--;
701
- }
702
-
703
- if (newYear < minCalendarYear && newMonth === 11) {
704
- return false;
705
- }
706
-
707
- if (!this.minDate) {
675
+ get shouldHideWeekNumbers() {
676
+ if (this._primaryCalendarType !== CalendarType.Gregorian) {
708
677
  return true;
709
678
  }
710
679
 
711
- const oNewDate = this._calendarDate;
712
- oNewDate.setDate(oNewDate.getDate());
713
- oNewDate.setYear(newYear);
714
- oNewDate.setMonth(newMonth);
715
-
716
- const monthsBetween = monthDiff(this._minDate, oNewDate.valueOf());
717
- if (this.minDate && monthsBetween < 0) {
718
- return false;
719
- }
720
-
721
- return true;
722
- }
723
-
724
- _handleItemNavigationBorderReach(event) {
725
- const currentItem = this._itemNav._getCurrentItem();
726
- let newDate;
727
- let currentDate;
728
- let currentTimestamp;
729
-
730
- if (isUp(event.originalEvent) || isLeft(event.originalEvent)) {
731
- currentTimestamp = this._weeks[0][event.offset + 1].timestamp * 1000;
732
- newDate = CalendarDate.fromTimestamp(currentTimestamp, this._primaryCalendarType);
733
- newDate.setDate(newDate.getDate() - 7);
734
- }
735
-
736
- if (isDown(event.originalEvent) || isRight(event.originalEvent)) {
737
- currentTimestamp = this._weeks[this._weeks.length - 1][event.offset + 1].timestamp * 1000;
738
- newDate = CalendarDate.fromTimestamp(currentTimestamp, this._primaryCalendarType);
739
- newDate.setDate(newDate.getDate() + 7);
740
- }
741
-
742
- if (isPageUp(event.originalEvent)) {
743
- currentTimestamp = parseInt(currentItem.getAttribute("data-sap-timestamp") * 1000);
744
- currentDate = CalendarDate.fromTimestamp(currentTimestamp, this._primaryCalendarType);
745
- newDate = new CalendarDate(currentDate, this._primaryCalendarType);
746
- newDate.setMonth(newDate.getMonth() - 1);
747
- if (currentDate.getMonth() === newDate.getMonth()) {
748
- newDate.setDate(0);
749
- }
750
- }
751
-
752
- if (isPageDown(event.originalEvent)) {
753
- currentTimestamp = parseInt(currentItem.getAttribute("data-sap-timestamp") * 1000);
754
- currentDate = CalendarDate.fromTimestamp(currentTimestamp, this._primaryCalendarType);
755
- newDate = new CalendarDate(currentDate, this._primaryCalendarType);
756
- newDate.setMonth(newDate.getMonth() + 1);
757
- if (newDate.getMonth() - currentDate.getMonth() > 1) {
758
- newDate.setDate(0);
759
- }
760
- }
761
-
762
- if (!newDate) {
763
- return;
764
- }
765
-
766
- if (newDate.valueOf() < this._minDate) {
767
- newDate = CalendarDate.fromLocalJSDate(new Date(this._minDate), this._primaryCalendarType);
768
- } else if (newDate.valueOf() > this._maxDate) {
769
- newDate = CalendarDate.fromLocalJSDate(new Date(this._maxDate), this._primaryCalendarType);
770
- }
771
-
772
- currentTimestamp = (newDate.valueOf() / 1000);
773
-
774
- this._navigateAndWaitRerender(currentTimestamp);
775
- }
776
-
777
- _handleItemNavigationAfterFocus() {
778
- const currentItem = this._itemNav._getCurrentItem();
779
- const currentTimestamp = parseInt(currentItem.getAttribute("data-sap-timestamp"));
780
-
781
- if (currentItem.classList.contains("ui5-dp-item--othermonth")) {
782
- this._navigateAndWaitRerender(currentTimestamp);
783
- }
784
- }
785
-
786
- async _navigateAndWaitRerender(timestamp) {
787
- this.fireEvent("navigate", { timestamp });
788
- await RenderScheduler.whenFinished();
789
-
790
- const newItemIndex = this._itemNav._getItems().findIndex(item => parseInt(item.timestamp) === timestamp);
791
- this._itemNav.currentIndex = newItemIndex;
792
- this._itemNav.focusCurrent();
793
- this._fireDayPickerRendered();
680
+ return this.hideWeekNumbers;
794
681
  }
795
682
 
796
- _fireDayPickerRendered() {
797
- if (this.selectedDates.length === 1) {
798
- this.fireEvent("daypickerrendered", { focusedItemIndex: this._itemNav.currentIndex });
799
- }
683
+ get hasSecondaryCalendarType() {
684
+ return !!this.secondaryCalendarType;
800
685
  }
801
686
 
802
687
  _isWeekend(oDate) {
@@ -812,126 +697,31 @@ class DayPicker extends UI5Element {
812
697
 
813
698
  _isDayPressed(target) {
814
699
  const targetParent = target.parentNode;
815
- return (target.className.indexOf("ui5-dp-item") > -1) || (targetParent && target.parentNode.classList.contains("ui5-dp-item"));
700
+ return (target.className.indexOf("ui5-dp-item") > -1) || (targetParent && targetParent.classList && targetParent.classList.contains("ui5-dp-item"));
816
701
  }
817
702
 
818
- _isOutOfSelectableRange(date) {
819
- const currentDate = date._oUDate ? date.toLocalJSDate() : CalendarDate.fromTimestamp(date).toLocalJSDate();
820
- const minDate = this._minDateObject;
821
- const maxDate = this._maxDateObject;
822
-
823
- currentDate.setHours(0);
824
- if (minDate) {
825
- minDate.setHours(0);
826
- }
827
- if (maxDate) {
828
- maxDate.setHours(0);
829
- }
830
-
831
- return currentDate > maxDate || currentDate < minDate;
703
+ _getSecondaryDay(tempDate) {
704
+ return new CalendarDate(tempDate, this.secondaryCalendarType);
832
705
  }
833
706
 
834
- get _maxDate() {
835
- return this.maxDate ? this._getTimeStampFromString(this.maxDate) : this._getMaxCalendarDate();
836
- }
707
+ _getFirstDay() {
708
+ let daysFromPreviousMonth;
837
709
 
838
- get _minDate() {
839
- return this.minDate ? this._getTimeStampFromString(this.minDate) : this._getMinCalendarDate();
840
- }
841
-
842
- _getTimeStampFromString(value) {
843
- const jsDate = this.getFormat().parse(value);
844
- if (jsDate) {
845
- const calDate = CalendarDate.fromLocalJSDate(jsDate, this._primaryCalendarType);
846
- return calDate.toUTCJSDate().valueOf();
847
- }
848
- return undefined;
849
- }
850
-
851
- _getMinCalendarDate() {
852
- const minDate = new CalendarDate(1, 0, 1, this._primaryCalendarType);
853
- minDate.setYear(1);
854
- minDate.setMonth(0);
855
- minDate.setDate(1);
856
- return minDate.toUTCJSDate().valueOf();
857
- }
858
-
859
- _getMaxCalendarDate() {
860
- const maxDate = new CalendarDate(1, 0, 1, this._primaryCalendarType);
861
- maxDate.setYear(9999);
862
- maxDate.setMonth(11);
863
- const tempDate = new CalendarDate(maxDate, this._primaryCalendarType);
864
- tempDate.setDate(1);
865
- tempDate.setMonth(tempDate.getMonth() + 1, 0);
866
- maxDate.setDate(tempDate.getDate());// 31st for Gregorian Calendar
867
- return maxDate.toUTCJSDate().valueOf();
868
- }
869
-
870
- getFormat() {
871
- if (this._isPattern) {
872
- this._oDateFormat = DateFormat.getInstance({
873
- pattern: this._formatPattern,
874
- calendarType: this._primaryCalendarType,
875
- });
876
- } else {
877
- this._oDateFormat = DateFormat.getInstance({
878
- style: this._formatPattern,
879
- calendarType: this._primaryCalendarType,
880
- });
881
- }
882
- return this._oDateFormat;
883
- }
884
-
885
- get _isPattern() {
886
- return this._formatPattern !== "medium" && this._formatPattern !== "short" && this._formatPattern !== "long";
887
- }
888
-
889
- _getVisibleDays(oStartDate, bIncludeBCDates) {
890
- let oCalDate,
891
- iDaysOldMonth,
892
- iYear;
893
-
894
- const minCalendarDateYear = CalendarDate.fromTimestamp(this._getMinCalendarDate(), this._primaryCalendarType).getYear();
895
- const maxCalendarDateYear = CalendarDate.fromTimestamp(this._getMaxCalendarDate(), this._primaryCalendarType).getYear();
896
- const _aVisibleDays = [];
897
-
898
- // If date passed generate days for new start date else return the current one
899
- if (!oStartDate) {
900
- return _aVisibleDays;
901
- }
902
-
903
- const iFirstDayOfWeek = this._getFirstDayOfWeek();
710
+ const firstDayOfWeek = this._getFirstDayOfWeek();
904
711
 
905
712
  // determine weekday of first day in month
906
- const oFirstDay = new CalendarDate(oStartDate, this._primaryCalendarType);
907
- oFirstDay.setDate(1);
908
- iDaysOldMonth = oFirstDay.getDay() - iFirstDayOfWeek;
909
- if (iDaysOldMonth < 0) {
910
- iDaysOldMonth = 7 + iDaysOldMonth;
911
- }
912
-
913
- if (iDaysOldMonth > 0) {
914
- // determine first day for display
915
- oFirstDay.setDate(1 - iDaysOldMonth);
713
+ const firstDay = new CalendarDate(this._calendarDate, this._primaryCalendarType);
714
+ firstDay.setDate(1);
715
+ daysFromPreviousMonth = firstDay.getDay() - firstDayOfWeek;
716
+ if (daysFromPreviousMonth < 0) {
717
+ daysFromPreviousMonth = 7 + daysFromPreviousMonth;
916
718
  }
917
719
 
918
- const oDay = new CalendarDate(oFirstDay);
919
- for (let i = 0; i < 42; i++) {
920
- iYear = oDay.getYear();
921
- oCalDate = new CalendarDate(oDay, this._primaryCalendarType);
922
- if (bIncludeBCDates && iYear < minCalendarDateYear) {
923
- // For dates before 0001-01-01 we should render only empty squares to keep
924
- // the month square matrix correct.
925
- oCalDate._bBeforeFirstYear = true;
926
- _aVisibleDays.push(oCalDate);
927
- } else if (iYear >= minCalendarDateYear && iYear <= maxCalendarDateYear) {
928
- // Days before 0001-01-01 or after 9999-12-31 should not be rendered.
929
- _aVisibleDays.push(oCalDate);
930
- }
931
- oDay.setDate(oDay.getDate() + 1);
720
+ if (daysFromPreviousMonth > 0) {
721
+ firstDay.setDate(1 - daysFromPreviousMonth);
932
722
  }
933
723
 
934
- return _aVisibleDays;
724
+ return firstDay;
935
725
  }
936
726
 
937
727
  _getFirstDayOfWeek() {
@@ -944,6 +734,7 @@ class DayPicker extends UI5Element {
944
734
  return {
945
735
  wrapper: {
946
736
  display: this._hidden ? "none" : "flex",
737
+ "justify-content": "center",
947
738
  },
948
739
  main: {
949
740
  width: "100%",
@@ -951,11 +742,10 @@ class DayPicker extends UI5Element {
951
742
  };
952
743
  }
953
744
 
954
- static async onDefine() {
955
- await Promise.all([
956
- fetchCldr(getLocale().getLanguage(), getLocale().getRegion(), getLocale().getScript()),
957
- fetchI18nBundle("@ui5/webcomponents"),
958
- ]);
745
+ get ariaRoledescription() {
746
+ return this.hasSecondaryCalendarType
747
+ ? `${this._primaryCalendarType} calendar with secondary ${this.secondaryCalendarType} calendar`
748
+ : `${this._primaryCalendarType} calendar`;
959
749
  }
960
750
  }
961
751