@ui5/webcomponents 0.0.0-c6d8872f3 → 0.0.0-cf069fb29

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 (1237) hide show
  1. package/CHANGELOG.md +1049 -1
  2. package/README.md +144 -41
  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 +223 -37
  7. package/dist/AvatarGroup.js +603 -0
  8. package/dist/Badge.js +44 -22
  9. package/dist/Breadcrumbs.js +575 -0
  10. package/dist/BreadcrumbsItem.js +103 -0
  11. package/dist/BusyIndicator.js +171 -17
  12. package/dist/Button.js +179 -37
  13. package/dist/Calendar.js +349 -546
  14. package/dist/CalendarDate.js +45 -0
  15. package/dist/CalendarHeader.js +133 -62
  16. package/dist/CalendarPart.js +111 -0
  17. package/dist/Card.js +45 -158
  18. package/dist/CardHeader.js +288 -0
  19. package/dist/Carousel.js +454 -76
  20. package/dist/CheckBox.js +186 -51
  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 +524 -0
  25. package/dist/ComboBox.js +726 -104
  26. package/dist/ComboBoxFilters.js +8 -1
  27. package/dist/ComboBoxGroupItem.js +70 -0
  28. package/dist/ComboBoxItem.js +12 -24
  29. package/dist/CustomListItem.js +38 -9
  30. package/dist/DateComponentBase.js +168 -0
  31. package/dist/DatePicker.js +471 -376
  32. package/dist/DateRangePicker.js +350 -0
  33. package/dist/DateTimePicker.js +430 -0
  34. package/dist/DayPicker.js +509 -431
  35. package/dist/Dialog.js +481 -51
  36. package/dist/DurationPicker.js +312 -0
  37. package/dist/FileUploader.js +237 -32
  38. package/dist/GroupHeaderListItem.js +36 -8
  39. package/dist/Icon.js +202 -36
  40. package/dist/Input.js +884 -124
  41. package/dist/Interfaces.js +192 -0
  42. package/dist/Label.js +27 -12
  43. package/dist/Link.js +160 -32
  44. package/dist/List.js +530 -115
  45. package/dist/ListItem.js +139 -30
  46. package/dist/ListItemBase.js +52 -8
  47. package/dist/MessageStrip.js +95 -70
  48. package/dist/MonthPicker.js +180 -182
  49. package/dist/MultiComboBox.js +621 -195
  50. package/dist/MultiComboBoxItem.js +8 -5
  51. package/dist/MultiInput.js +348 -0
  52. package/dist/Option.js +59 -5
  53. package/dist/Panel.js +129 -37
  54. package/dist/Popover.js +378 -252
  55. package/dist/Popup.js +394 -282
  56. package/dist/ProgressIndicator.js +235 -0
  57. package/dist/RadioButton.js +162 -61
  58. package/dist/RadioButtonGroup.js +53 -29
  59. package/dist/RangeSlider.js +769 -0
  60. package/dist/RatingIndicator.js +321 -0
  61. package/dist/ResponsivePopover.js +83 -40
  62. package/dist/SegmentedButton.js +151 -52
  63. package/dist/SegmentedButtonItem.js +109 -0
  64. package/dist/Select.js +496 -107
  65. package/dist/Slider.js +320 -0
  66. package/dist/SliderBase.js +846 -0
  67. package/dist/SplitButton.js +425 -0
  68. package/dist/StandardListItem.js +46 -22
  69. package/dist/StepInput.js +684 -0
  70. package/dist/SuggestionGroupItem.js +64 -0
  71. package/dist/SuggestionItem.js +146 -0
  72. package/dist/SuggestionListItem.js +76 -0
  73. package/dist/Switch.js +72 -38
  74. package/dist/Tab.js +190 -17
  75. package/dist/TabContainer.js +726 -283
  76. package/dist/TabSeparator.js +44 -4
  77. package/dist/Table.js +496 -39
  78. package/dist/TableCell.js +13 -15
  79. package/dist/TableColumn.js +18 -7
  80. package/dist/TableGroupRow.js +160 -0
  81. package/dist/TableRow.js +246 -19
  82. package/dist/TextArea.js +322 -38
  83. package/dist/TimePicker.js +166 -0
  84. package/dist/TimePickerBase.js +463 -0
  85. package/dist/TimeSelection.js +493 -0
  86. package/dist/Title.js +18 -10
  87. package/dist/Toast.js +43 -37
  88. package/dist/ToggleButton.js +26 -13
  89. package/dist/Token.js +85 -45
  90. package/dist/Tokenizer.js +376 -63
  91. package/dist/Tree.js +443 -0
  92. package/dist/TreeItem.js +189 -0
  93. package/dist/TreeListItem.js +340 -0
  94. package/dist/WheelSlider.js +435 -0
  95. package/dist/YearPicker.js +199 -255
  96. package/dist/api.json +7144 -1
  97. package/dist/css/themes/Avatar.css +1 -0
  98. package/dist/css/themes/AvatarGroup.css +1 -0
  99. package/dist/css/themes/Badge.css +1 -0
  100. package/dist/css/themes/Breadcrumbs.css +1 -0
  101. package/dist/css/themes/BreadcrumbsPopover.css +1 -0
  102. package/dist/css/themes/BrowserScrollbar.css +1 -0
  103. package/dist/css/themes/BusyIndicator.css +1 -0
  104. package/dist/css/themes/Button.css +1 -0
  105. package/dist/css/themes/Button.ie11.css +1 -0
  106. package/dist/css/themes/Calendar.css +1 -0
  107. package/dist/css/themes/CalendarHeader.css +1 -0
  108. package/dist/css/themes/Card.css +1 -0
  109. package/dist/css/themes/CardHeader.css +1 -0
  110. package/dist/css/themes/Carousel.css +1 -0
  111. package/dist/css/themes/CheckBox.css +1 -0
  112. package/dist/css/themes/ColorPalette.css +1 -0
  113. package/dist/css/themes/ColorPaletteItem.css +1 -0
  114. package/dist/css/themes/ColorPalettePopover.css +1 -0
  115. package/dist/css/themes/ColorPaletteStaticArea.css +1 -0
  116. package/dist/css/themes/ColorPicker.css +1 -0
  117. package/dist/css/themes/ComboBox.css +1 -0
  118. package/dist/css/themes/ComboBoxPopover.css +1 -0
  119. package/dist/css/themes/CustomListItem.css +1 -0
  120. package/dist/css/themes/DatePicker.css +1 -0
  121. package/dist/css/themes/DatePickerPopover.css +1 -0
  122. package/dist/css/themes/DateRangePicker.css +1 -0
  123. package/dist/css/themes/DateTimePicker.css +1 -0
  124. package/dist/css/themes/DateTimePickerPopover.css +1 -0
  125. package/dist/css/themes/DayPicker.css +1 -0
  126. package/dist/css/themes/Dialog.css +1 -0
  127. package/dist/css/themes/FileUploader.css +1 -0
  128. package/dist/css/themes/GroupHeaderListItem.css +1 -0
  129. package/dist/css/themes/GrowingButton.css +1 -0
  130. package/dist/css/themes/Icon.css +1 -0
  131. package/dist/css/themes/Input.css +1 -0
  132. package/dist/css/themes/InputIcon.css +1 -0
  133. package/dist/css/themes/InvisibleTextStyles.css +1 -0
  134. package/dist/css/themes/Label.css +1 -0
  135. package/dist/css/themes/Link.css +1 -0
  136. package/dist/css/themes/List.css +1 -0
  137. package/dist/css/themes/ListItem.css +1 -0
  138. package/dist/css/themes/ListItemBase.css +1 -0
  139. package/dist/css/themes/MessageStrip.css +1 -0
  140. package/dist/css/themes/MonthPicker.css +1 -0
  141. package/dist/css/themes/MultiComboBox.css +1 -0
  142. package/dist/css/themes/MultiInput.css +1 -0
  143. package/dist/css/themes/Panel.css +1 -0
  144. package/dist/css/themes/Popover.css +1 -0
  145. package/dist/css/themes/Popup.css +1 -0
  146. package/dist/css/themes/PopupGlobal.css +1 -0
  147. package/dist/css/themes/PopupStaticAreaStyles.css +1 -0
  148. package/dist/css/themes/PopupsCommon.css +1 -0
  149. package/dist/css/themes/ProgressIndicator.css +1 -0
  150. package/dist/css/themes/RadioButton.css +1 -0
  151. package/dist/css/themes/RatingIndicator.css +1 -0
  152. package/dist/css/themes/ResponsivePopover.css +1 -0
  153. package/dist/css/themes/ResponsivePopoverCommon.css +1 -0
  154. package/dist/css/themes/SegmentedButton.css +1 -0
  155. package/dist/css/themes/Select.css +1 -0
  156. package/dist/css/themes/SelectPopover.css +1 -0
  157. package/dist/css/themes/SliderBase.css +1 -0
  158. package/dist/css/themes/SplitButton.css +1 -0
  159. package/dist/css/themes/StepInput.css +1 -0
  160. package/dist/css/themes/Suggestions.css +1 -0
  161. package/dist/css/themes/Switch.css +1 -0
  162. package/dist/css/themes/Tab.css +1 -0
  163. package/dist/css/themes/TabContainer.css +1 -0
  164. package/dist/css/themes/TabInOverflow.css +1 -0
  165. package/dist/css/themes/TabInStrip.css +1 -0
  166. package/dist/css/themes/TabSeparatorInOverflow.css +1 -0
  167. package/dist/css/themes/TabSeparatorInStrip.css +1 -0
  168. package/dist/css/themes/Table.css +1 -0
  169. package/dist/css/themes/TableCell.css +1 -0
  170. package/dist/css/themes/TableColumn.css +1 -0
  171. package/dist/css/themes/TableGroupRow.css +1 -0
  172. package/dist/css/themes/TableRow.css +1 -0
  173. package/dist/css/themes/TapHighlightColor.css +1 -0
  174. package/dist/css/themes/TextArea.css +1 -0
  175. package/dist/css/themes/TimePicker.css +1 -0
  176. package/dist/css/themes/TimePickerPopover.css +1 -0
  177. package/dist/css/themes/TimeSelection.css +1 -0
  178. package/dist/css/themes/Title.css +1 -0
  179. package/dist/css/themes/Toast.css +1 -0
  180. package/dist/css/themes/ToggleButton.css +1 -0
  181. package/dist/css/themes/ToggleButton.ie11.css +1 -0
  182. package/dist/css/themes/Token.css +1 -0
  183. package/dist/css/themes/Tokenizer.css +1 -0
  184. package/dist/css/themes/Tree.css +1 -0
  185. package/dist/css/themes/TreeListItem.css +1 -0
  186. package/dist/css/themes/ValueStateMessage.css +1 -0
  187. package/dist/css/themes/WheelSlider.css +1 -0
  188. package/dist/css/themes/YearPicker.css +1 -0
  189. package/dist/css/themes/sap_belize/parameters-bundle.css +1 -0
  190. package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -0
  191. package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -0
  192. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -0
  193. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -0
  194. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -0
  195. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -0
  196. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -0
  197. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -0
  198. package/dist/features/ColorPaletteMoreColors.js +42 -0
  199. package/dist/features/InputElementsFormSupport.js +0 -1
  200. package/dist/features/InputSuggestions.js +358 -56
  201. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
  202. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
  203. package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
  204. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
  205. package/dist/generated/assets/i18n/messagebundle_cy.json +1 -0
  206. package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
  207. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  208. package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
  209. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  210. package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -0
  211. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -0
  212. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -0
  213. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -0
  214. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  215. package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -0
  216. package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
  217. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
  218. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  219. package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -0
  220. package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
  221. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
  222. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
  223. package/dist/generated/assets/i18n/messagebundle_in.json +1 -0
  224. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  225. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
  226. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  227. package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
  228. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  229. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  230. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  231. package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
  232. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
  233. package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
  234. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
  235. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
  236. package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -0
  237. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
  238. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  239. package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
  240. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  241. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  242. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  243. package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
  244. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
  245. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
  246. package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
  247. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
  248. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
  249. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  250. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  251. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  252. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  253. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  254. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -0
  255. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -0
  256. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -0
  257. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -0
  258. package/dist/generated/i18n/i18n-defaults.js +2 -2
  259. package/dist/generated/json-imports/Themes-static.js +35 -0
  260. package/dist/generated/json-imports/Themes.js +23 -15
  261. package/dist/generated/json-imports/i18n-static.js +162 -0
  262. package/dist/generated/json-imports/i18n.js +113 -89
  263. package/dist/generated/templates/AvatarGroupTemplate.lit.js +9 -0
  264. package/dist/generated/templates/AvatarTemplate.lit.js +9 -9
  265. package/dist/generated/templates/BadgeTemplate.lit.js +5 -6
  266. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +8 -0
  267. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +9 -0
  268. package/dist/generated/templates/BusyIndicatorTemplate.lit.js +7 -5
  269. package/dist/generated/templates/ButtonTemplate.lit.js +6 -6
  270. package/dist/generated/templates/CalendarHeaderTemplate.lit.js +6 -4
  271. package/dist/generated/templates/CalendarTemplate.lit.js +4 -4
  272. package/dist/generated/templates/CardHeaderTemplate.lit.js +12 -0
  273. package/dist/generated/templates/CardTemplate.lit.js +5 -8
  274. package/dist/generated/templates/CarouselTemplate.lit.js +13 -14
  275. package/dist/generated/templates/CheckBoxTemplate.lit.js +7 -7
  276. package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +7 -0
  277. package/dist/generated/templates/ColorPaletteItemTemplate.lit.js +7 -0
  278. package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +8 -0
  279. package/dist/generated/templates/ColorPaletteTemplate.lit.js +12 -0
  280. package/dist/generated/templates/ColorPickerTemplate.lit.js +7 -0
  281. package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +20 -5
  282. package/dist/generated/templates/ComboBoxTemplate.lit.js +8 -5
  283. package/dist/generated/templates/CustomListItemTemplate.lit.js +13 -12
  284. package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +7 -4
  285. package/dist/generated/templates/DatePickerTemplate.lit.js +6 -5
  286. package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +12 -0
  287. package/dist/generated/templates/DayPickerTemplate.lit.js +13 -11
  288. package/dist/generated/templates/DialogTemplate.lit.js +9 -8
  289. package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +10 -0
  290. package/dist/generated/templates/FileUploaderTemplate.lit.js +7 -7
  291. package/dist/generated/templates/GroupHeaderListItemTemplate.lit.js +4 -4
  292. package/dist/generated/templates/IconTemplate.lit.js +6 -6
  293. package/dist/generated/templates/InputPopoverTemplate.lit.js +24 -6
  294. package/dist/generated/templates/InputTemplate.lit.js +9 -8
  295. package/dist/generated/templates/LabelTemplate.lit.js +4 -4
  296. package/dist/generated/templates/LinkTemplate.lit.js +5 -5
  297. package/dist/generated/templates/ListItemTemplate.lit.js +13 -12
  298. package/dist/generated/templates/ListTemplate.lit.js +12 -9
  299. package/dist/generated/templates/MessageStripTemplate.lit.js +6 -27
  300. package/dist/generated/templates/MonthPickerTemplate.lit.js +6 -6
  301. package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +23 -7
  302. package/dist/generated/templates/MultiComboBoxTemplate.lit.js +10 -8
  303. package/dist/generated/templates/MultiInputTemplate.lit.js +16 -0
  304. package/dist/generated/templates/PanelTemplate.lit.js +9 -6
  305. package/dist/generated/templates/PopoverTemplate.lit.js +9 -9
  306. package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +7 -0
  307. package/dist/generated/templates/PopupTemplate.lit.js +4 -4
  308. package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +17 -0
  309. package/dist/generated/templates/RadioButtonTemplate.lit.js +7 -7
  310. package/dist/generated/templates/RangeSliderTemplate.lit.js +13 -0
  311. package/dist/generated/templates/RatingIndicatorTemplate.lit.js +14 -0
  312. package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +16 -11
  313. package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +8 -0
  314. package/dist/generated/templates/SegmentedButtonTemplate.lit.js +4 -9
  315. package/dist/generated/templates/SelectPopoverTemplate.lit.js +20 -6
  316. package/dist/generated/templates/SelectTemplate.lit.js +6 -4
  317. package/dist/generated/templates/SliderBaseTemplate.lit.js +11 -0
  318. package/dist/generated/templates/SliderTemplate.lit.js +12 -0
  319. package/dist/generated/templates/SplitButtonTemplate.lit.js +7 -0
  320. package/dist/generated/templates/StandardListItemTemplate.lit.js +21 -18
  321. package/dist/generated/templates/StepInputTemplate.lit.js +10 -0
  322. package/dist/generated/templates/SuggestionListItemTemplate.lit.js +27 -0
  323. package/dist/generated/templates/SwitchTemplate.lit.js +8 -6
  324. package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +8 -8
  325. package/dist/generated/templates/TabContainerTemplate.lit.js +15 -18
  326. package/dist/generated/templates/TabInOverflowTemplate.lit.js +9 -0
  327. package/dist/generated/templates/TabInStripTemplate.lit.js +11 -0
  328. package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js +7 -0
  329. package/dist/generated/templates/TabSeparatorInStripTemplate.lit.js +7 -0
  330. package/dist/generated/templates/TabTemplate.lit.js +4 -4
  331. package/dist/generated/templates/TableCellTemplate.lit.js +4 -4
  332. package/dist/generated/templates/TableColumnTemplate.lit.js +4 -4
  333. package/dist/generated/templates/TableGroupRowTemplate.lit.js +7 -0
  334. package/dist/generated/templates/TableRowTemplate.lit.js +12 -10
  335. package/dist/generated/templates/TableTemplate.lit.js +13 -8
  336. package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +11 -0
  337. package/dist/generated/templates/TextAreaTemplate.lit.js +8 -8
  338. package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +7 -0
  339. package/dist/generated/templates/TimePickerTemplate.lit.js +9 -0
  340. package/dist/generated/templates/TimeSelectionTemplate.lit.js +11 -0
  341. package/dist/generated/templates/TitleTemplate.lit.js +10 -10
  342. package/dist/generated/templates/ToastTemplate.lit.js +5 -4
  343. package/dist/generated/templates/ToggleButtonTemplate.lit.js +6 -6
  344. package/dist/generated/templates/TokenTemplate.lit.js +7 -5
  345. package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +12 -0
  346. package/dist/generated/templates/TokenizerTemplate.lit.js +6 -6
  347. package/dist/generated/templates/TreeListItemTemplate.lit.js +21 -0
  348. package/dist/generated/templates/TreeTemplate.lit.js +8 -0
  349. package/dist/generated/templates/WheelSliderTemplate.lit.js +10 -0
  350. package/dist/generated/templates/YearPickerTemplate.lit.js +6 -6
  351. package/dist/generated/themes/Avatar.css.js +6 -7
  352. package/dist/generated/themes/AvatarGroup.css.js +8 -0
  353. package/dist/generated/themes/Badge.css.js +6 -7
  354. package/dist/generated/themes/Breadcrumbs.css.js +8 -0
  355. package/dist/generated/themes/BreadcrumbsPopover.css.js +8 -0
  356. package/dist/generated/themes/BrowserScrollbar.css.js +8 -0
  357. package/dist/generated/themes/BusyIndicator.css.js +6 -7
  358. package/dist/generated/themes/Button.css.js +6 -7
  359. package/dist/generated/themes/Button.ie11.css.js +8 -0
  360. package/dist/generated/themes/Calendar.css.js +6 -7
  361. package/dist/generated/themes/CalendarHeader.css.js +6 -7
  362. package/dist/generated/themes/Card.css.js +6 -7
  363. package/dist/generated/themes/CardHeader.css.js +8 -0
  364. package/dist/generated/themes/Carousel.css.js +6 -7
  365. package/dist/generated/themes/CheckBox.css.js +6 -7
  366. package/dist/generated/themes/ColorPalette.css.js +8 -0
  367. package/dist/generated/themes/ColorPaletteItem.css.js +8 -0
  368. package/dist/generated/themes/ColorPalettePopover.css.js +8 -0
  369. package/dist/generated/themes/ColorPaletteStaticArea.css.js +8 -0
  370. package/dist/generated/themes/ColorPicker.css.js +8 -0
  371. package/dist/generated/themes/ComboBox.css.js +6 -7
  372. package/dist/generated/themes/ComboBoxPopover.css.js +6 -7
  373. package/dist/generated/themes/CustomListItem.css.js +6 -7
  374. package/dist/generated/themes/DatePicker.css.js +6 -7
  375. package/dist/generated/themes/DatePickerPopover.css.js +6 -7
  376. package/dist/generated/themes/DateRangePicker.css.js +8 -0
  377. package/dist/generated/themes/DateTimePicker.css.js +8 -0
  378. package/dist/generated/themes/DateTimePickerPopover.css.js +8 -0
  379. package/dist/generated/themes/DayPicker.css.js +6 -7
  380. package/dist/generated/themes/Dialog.css.js +6 -7
  381. package/dist/generated/themes/FileUploader.css.js +6 -7
  382. package/dist/generated/themes/GroupHeaderListItem.css.js +6 -7
  383. package/dist/generated/themes/GrowingButton.css.js +8 -0
  384. package/dist/generated/themes/Icon.css.js +6 -7
  385. package/dist/generated/themes/Input.css.js +6 -7
  386. package/dist/generated/themes/InputIcon.css.js +6 -7
  387. package/dist/generated/themes/InvisibleTextStyles.css.js +6 -7
  388. package/dist/generated/themes/Label.css.js +6 -7
  389. package/dist/generated/themes/Link.css.js +6 -7
  390. package/dist/generated/themes/List.css.js +6 -7
  391. package/dist/generated/themes/ListItem.css.js +6 -7
  392. package/dist/generated/themes/ListItemBase.css.js +6 -7
  393. package/dist/generated/themes/MessageStrip.css.js +6 -7
  394. package/dist/generated/themes/MonthPicker.css.js +6 -7
  395. package/dist/generated/themes/MultiComboBox.css.js +6 -7
  396. package/dist/generated/themes/MultiInput.css.js +8 -0
  397. package/dist/generated/themes/Panel.css.js +6 -7
  398. package/dist/generated/themes/Popover.css.js +6 -7
  399. package/dist/generated/themes/Popup.css.js +6 -7
  400. package/dist/generated/themes/PopupGlobal.css.js +8 -0
  401. package/dist/generated/themes/PopupStaticAreaStyles.css.js +8 -0
  402. package/dist/generated/themes/PopupsCommon.css.js +8 -0
  403. package/dist/generated/themes/ProgressIndicator.css.js +8 -0
  404. package/dist/generated/themes/RadioButton.css.js +6 -7
  405. package/dist/generated/themes/RatingIndicator.css.js +8 -0
  406. package/dist/generated/themes/ResponsivePopover.css.js +6 -7
  407. package/dist/generated/themes/ResponsivePopoverCommon.css.js +6 -7
  408. package/dist/generated/themes/SegmentedButton.css.js +6 -7
  409. package/dist/generated/themes/Select.css.js +6 -7
  410. package/dist/generated/themes/SelectPopover.css.js +8 -0
  411. package/dist/generated/themes/SliderBase.css.js +8 -0
  412. package/dist/generated/themes/SplitButton.css.js +8 -0
  413. package/dist/generated/themes/StepInput.css.js +8 -0
  414. package/dist/generated/themes/Suggestions.css.js +8 -0
  415. package/dist/generated/themes/Switch.css.js +6 -7
  416. package/dist/generated/themes/Tab.css.js +6 -7
  417. package/dist/generated/themes/TabContainer.css.js +6 -7
  418. package/dist/generated/themes/TabInOverflow.css.js +8 -0
  419. package/dist/generated/themes/TabInStrip.css.js +8 -0
  420. package/dist/generated/themes/TabSeparatorInOverflow.css.js +8 -0
  421. package/dist/generated/themes/TabSeparatorInStrip.css.js +8 -0
  422. package/dist/generated/themes/Table.css.js +6 -7
  423. package/dist/generated/themes/TableCell.css.js +6 -7
  424. package/dist/generated/themes/TableColumn.css.js +6 -7
  425. package/dist/generated/themes/TableGroupRow.css.js +8 -0
  426. package/dist/generated/themes/TableRow.css.js +6 -7
  427. package/dist/generated/themes/TapHighlightColor.css.js +8 -0
  428. package/dist/generated/themes/TextArea.css.js +6 -7
  429. package/dist/generated/themes/TimePicker.css.js +8 -0
  430. package/dist/generated/themes/TimePickerPopover.css.js +8 -0
  431. package/dist/generated/themes/TimeSelection.css.js +8 -0
  432. package/dist/generated/themes/Title.css.js +6 -7
  433. package/dist/generated/themes/Toast.css.js +6 -7
  434. package/dist/generated/themes/ToggleButton.css.js +6 -7
  435. package/dist/generated/themes/ToggleButton.ie11.css.js +8 -0
  436. package/dist/generated/themes/Token.css.js +6 -7
  437. package/dist/generated/themes/Tokenizer.css.js +6 -7
  438. package/dist/generated/themes/Tree.css.js +8 -0
  439. package/dist/generated/themes/TreeListItem.css.js +8 -0
  440. package/dist/generated/themes/ValueStateMessage.css.js +8 -0
  441. package/dist/generated/themes/WheelSlider.css.js +8 -0
  442. package/dist/generated/themes/YearPicker.css.js +6 -7
  443. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  444. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  445. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  446. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  447. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  448. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -0
  449. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -0
  450. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -0
  451. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -0
  452. package/dist/i18n/messagebundle.properties +360 -0
  453. package/dist/i18n/messagebundle_ar.properties +241 -0
  454. package/dist/i18n/messagebundle_bg.properties +241 -0
  455. package/dist/i18n/messagebundle_ca.properties +241 -0
  456. package/dist/i18n/messagebundle_cs.properties +241 -0
  457. package/dist/i18n/messagebundle_cy.properties +241 -0
  458. package/dist/i18n/messagebundle_da.properties +241 -0
  459. package/dist/i18n/messagebundle_de.properties +241 -0
  460. package/dist/i18n/messagebundle_el.properties +241 -0
  461. package/dist/i18n/messagebundle_en.properties +241 -0
  462. package/dist/i18n/messagebundle_en_GB.properties +241 -0
  463. package/dist/i18n/messagebundle_en_US_sappsd.properties +241 -0
  464. package/dist/i18n/messagebundle_en_US_saprigi.properties +241 -0
  465. package/dist/i18n/messagebundle_en_US_saptrc.properties +241 -0
  466. package/dist/i18n/messagebundle_es.properties +241 -0
  467. package/dist/i18n/messagebundle_es_MX.properties +241 -0
  468. package/dist/i18n/messagebundle_et.properties +241 -0
  469. package/dist/i18n/messagebundle_fi.properties +241 -0
  470. package/dist/i18n/messagebundle_fr.properties +241 -0
  471. package/dist/i18n/messagebundle_fr_CA.properties +241 -0
  472. package/dist/i18n/messagebundle_hi.properties +241 -0
  473. package/dist/i18n/messagebundle_hr.properties +241 -0
  474. package/dist/i18n/messagebundle_hu.properties +241 -0
  475. package/dist/i18n/messagebundle_id.properties +241 -0
  476. package/dist/i18n/messagebundle_in.properties +172 -0
  477. package/dist/i18n/messagebundle_it.properties +241 -0
  478. package/dist/i18n/messagebundle_iw.properties +241 -0
  479. package/dist/i18n/messagebundle_ja.properties +241 -0
  480. package/dist/i18n/messagebundle_kk.properties +241 -0
  481. package/dist/i18n/messagebundle_ko.properties +241 -0
  482. package/dist/i18n/messagebundle_lt.properties +241 -0
  483. package/dist/i18n/messagebundle_lv.properties +241 -0
  484. package/dist/i18n/messagebundle_ms.properties +241 -0
  485. package/dist/i18n/messagebundle_nl.properties +241 -0
  486. package/dist/i18n/messagebundle_no.properties +241 -0
  487. package/dist/i18n/messagebundle_pl.properties +241 -0
  488. package/dist/i18n/messagebundle_pt.properties +241 -0
  489. package/dist/i18n/messagebundle_pt_PT.properties +241 -0
  490. package/dist/i18n/messagebundle_ro.properties +241 -0
  491. package/dist/i18n/messagebundle_ru.properties +241 -0
  492. package/dist/i18n/messagebundle_sh.properties +241 -0
  493. package/dist/i18n/messagebundle_sk.properties +241 -0
  494. package/dist/i18n/messagebundle_sl.properties +241 -0
  495. package/dist/i18n/messagebundle_sv.properties +241 -0
  496. package/dist/i18n/messagebundle_th.properties +241 -0
  497. package/dist/i18n/messagebundle_tr.properties +241 -0
  498. package/dist/i18n/messagebundle_uk.properties +241 -0
  499. package/dist/i18n/messagebundle_vi.properties +241 -0
  500. package/dist/i18n/messagebundle_zh_CN.properties +241 -0
  501. package/dist/i18n/messagebundle_zh_TW.properties +241 -0
  502. package/dist/popup-utils/OpenedPopupsRegistry.js +18 -13
  503. package/dist/popup-utils/PopoverRegistry.js +55 -21
  504. package/dist/timepicker-utils/TimeSlider.js +103 -0
  505. package/dist/types/{AvatarBackgroundColor.js → AvatarColorScheme.js} +9 -9
  506. package/dist/types/AvatarGroupType.js +43 -0
  507. package/dist/types/AvatarShape.js +1 -1
  508. package/dist/types/AvatarSize.js +1 -1
  509. package/dist/types/BreadcrumbsDesign.js +42 -0
  510. package/dist/types/BreadcrumbsSeparatorStyle.js +69 -0
  511. package/dist/types/BusyIndicatorSize.js +1 -1
  512. package/dist/types/ButtonDesign.js +8 -1
  513. package/dist/types/CalendarSelectionMode.js +47 -0
  514. package/dist/types/CarouselArrowsPlacement.js +3 -3
  515. package/dist/types/GrowingMode.js +48 -0
  516. package/dist/types/HasPopup.js +62 -0
  517. package/dist/types/InputType.js +7 -7
  518. package/dist/types/LinkDesign.js +1 -1
  519. package/dist/types/ListGrowingMode.js +15 -0
  520. package/dist/types/ListItemType.js +8 -1
  521. package/dist/types/ListMode.js +9 -1
  522. package/dist/types/ListSeparators.js +1 -1
  523. package/dist/types/{MessageStripType.js → MessageStripDesign.js} +7 -7
  524. package/dist/types/PanelAccessibleRole.js +1 -1
  525. package/dist/types/PopoverHorizontalAlign.js +1 -1
  526. package/dist/types/PopoverPlacementType.js +2 -2
  527. package/dist/types/PopoverVerticalAlign.js +1 -2
  528. package/dist/types/Priority.js +55 -0
  529. package/dist/types/SemanticColor.js +1 -1
  530. package/dist/types/SwitchDesign.js +40 -0
  531. package/dist/types/TabContainerTabsPlacement.js +40 -0
  532. package/dist/types/TabLayout.js +1 -1
  533. package/dist/types/TableGrowingMode.js +15 -0
  534. package/dist/types/TableMode.js +47 -0
  535. package/dist/types/TableRowType.js +40 -0
  536. package/dist/types/TabsOverflowMode.js +40 -0
  537. package/dist/types/TitleLevel.js +1 -1
  538. package/dist/types/ToastPlacement.js +1 -2
  539. package/dist/types/WrappingType.js +41 -0
  540. package/dist/webcomponentsjs/CHANGELOG.md +61 -0
  541. package/dist/webcomponentsjs/README.md +64 -47
  542. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +38 -38
  543. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +1 -1
  544. package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js +60 -0
  545. package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js.map +1 -0
  546. package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js +95 -0
  547. package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js.map +1 -0
  548. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +292 -229
  549. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +1 -1
  550. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +190 -170
  551. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +1 -1
  552. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +151 -132
  553. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +1 -1
  554. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +2 -2
  555. package/dist/webcomponentsjs/webcomponents-bundle.js +302 -230
  556. package/dist/webcomponentsjs/webcomponents-bundle.js.map +1 -1
  557. package/dist/webcomponentsjs/webcomponents-loader.js +49 -28
  558. package/package-scripts.js +1 -0
  559. package/package.json +23 -6
  560. package/src/Assets-static.js +6 -0
  561. package/src/Assets.js +7 -0
  562. package/src/Avatar.hbs +20 -0
  563. package/src/Avatar.js +392 -0
  564. package/src/AvatarGroup.hbs +30 -0
  565. package/src/AvatarGroup.js +603 -0
  566. package/src/Badge.hbs +14 -0
  567. package/src/Badge.js +165 -0
  568. package/src/Breadcrumbs.hbs +43 -0
  569. package/src/Breadcrumbs.js +575 -0
  570. package/src/BreadcrumbsItem.js +103 -0
  571. package/src/BreadcrumbsPopover.hbs +28 -0
  572. package/src/BusyIndicator.hbs +32 -0
  573. package/src/BusyIndicator.js +268 -0
  574. package/src/Button.hbs +45 -0
  575. package/src/Button.js +490 -0
  576. package/src/Calendar.hbs +69 -0
  577. package/src/Calendar.js +496 -0
  578. package/src/CalendarDate.js +45 -0
  579. package/src/CalendarHeader.hbs +54 -0
  580. package/src/CalendarHeader.js +209 -0
  581. package/src/CalendarPart.js +111 -0
  582. package/src/Card.hbs +14 -0
  583. package/src/Card.js +160 -0
  584. package/src/CardHeader.hbs +42 -0
  585. package/src/CardHeader.js +288 -0
  586. package/src/Carousel.hbs +86 -0
  587. package/src/Carousel.js +690 -0
  588. package/src/CheckBox.hbs +45 -0
  589. package/src/CheckBox.js +457 -0
  590. package/src/ColorPalette.hbs +52 -0
  591. package/src/ColorPalette.js +494 -0
  592. package/src/ColorPaletteDialog.hbs +18 -0
  593. package/src/ColorPaletteItem.hbs +11 -0
  594. package/src/ColorPaletteItem.js +137 -0
  595. package/src/ColorPalettePopover.hbs +31 -0
  596. package/src/ColorPalettePopover.js +244 -0
  597. package/src/ColorPicker.hbs +98 -0
  598. package/src/ColorPicker.js +524 -0
  599. package/src/ComboBox.hbs +50 -0
  600. package/src/ComboBox.js +1109 -0
  601. package/src/ComboBoxFilters.js +40 -0
  602. package/src/ComboBoxGroupItem.js +70 -0
  603. package/src/ComboBoxItem.js +49 -0
  604. package/src/ComboBoxPopover.hbs +126 -0
  605. package/src/CustomListItem.hbs +5 -0
  606. package/src/CustomListItem.js +99 -0
  607. package/src/DateComponentBase.js +168 -0
  608. package/src/DatePicker.hbs +44 -0
  609. package/src/DatePicker.js +831 -0
  610. package/src/DatePickerPopover.hbs +63 -0
  611. package/src/DateRangePicker.js +350 -0
  612. package/src/DateTimePicker.js +430 -0
  613. package/src/DateTimePickerPopover.hbs +74 -0
  614. package/src/DayPicker.hbs +66 -0
  615. package/src/DayPicker.js +754 -0
  616. package/src/Dialog.hbs +35 -0
  617. package/src/Dialog.js +584 -0
  618. package/src/DurationPicker.js +312 -0
  619. package/src/FileUploader.hbs +40 -0
  620. package/src/FileUploader.js +530 -0
  621. package/src/FileUploaderPopover.hbs +25 -0
  622. package/src/GroupHeaderListItem.hbs +15 -0
  623. package/src/GroupHeaderListItem.js +94 -0
  624. package/src/Icon.hbs +25 -0
  625. package/src/Icon.js +376 -0
  626. package/src/Input.hbs +78 -0
  627. package/src/Input.js +1473 -0
  628. package/src/InputPopover.hbs +117 -0
  629. package/src/Interfaces.js +192 -0
  630. package/src/Label.hbs +13 -0
  631. package/src/Label.js +152 -0
  632. package/src/Link.hbs +21 -0
  633. package/src/Link.js +367 -0
  634. package/src/List.hbs +89 -0
  635. package/src/List.js +1066 -0
  636. package/src/ListItem.hbs +103 -0
  637. package/src/ListItem.js +371 -0
  638. package/src/ListItemBase.js +179 -0
  639. package/src/MessageStrip.hbs +34 -0
  640. package/src/MessageStrip.js +264 -0
  641. package/src/MonthPicker.hbs +29 -0
  642. package/src/MonthPicker.js +299 -0
  643. package/src/MultiComboBox.hbs +78 -0
  644. package/src/MultiComboBox.js +1095 -0
  645. package/src/MultiComboBoxItem.js +43 -0
  646. package/src/MultiComboBoxPopover.hbs +133 -0
  647. package/src/MultiInput.hbs +41 -0
  648. package/src/MultiInput.js +348 -0
  649. package/src/Option.js +126 -0
  650. package/src/Panel.hbs +63 -0
  651. package/src/Panel.js +471 -0
  652. package/src/Popover.hbs +25 -0
  653. package/src/Popover.js +835 -0
  654. package/src/Popup.hbs +34 -0
  655. package/src/Popup.js +581 -0
  656. package/src/PopupBlockLayer.hbs +7 -0
  657. package/src/ProgressIndicator.hbs +35 -0
  658. package/src/ProgressIndicator.js +235 -0
  659. package/src/RadioButton.hbs +33 -0
  660. package/src/RadioButton.js +506 -0
  661. package/src/RadioButtonGroup.js +205 -0
  662. package/src/RangeSlider.hbs +70 -0
  663. package/src/RangeSlider.js +769 -0
  664. package/src/RatingIndicator.hbs +33 -0
  665. package/src/RatingIndicator.js +321 -0
  666. package/src/ResponsivePopover.hbs +41 -0
  667. package/src/ResponsivePopover.js +207 -0
  668. package/src/SegmentedButton.hbs +18 -0
  669. package/src/SegmentedButton.js +303 -0
  670. package/src/SegmentedButtonItem.hbs +42 -0
  671. package/src/SegmentedButtonItem.js +109 -0
  672. package/src/Select.hbs +45 -0
  673. package/src/Select.js +835 -0
  674. package/src/SelectPopover.hbs +90 -0
  675. package/src/Slider.hbs +42 -0
  676. package/src/Slider.js +320 -0
  677. package/src/SliderBase.hbs +38 -0
  678. package/src/SliderBase.js +846 -0
  679. package/src/SplitButton.hbs +53 -0
  680. package/src/SplitButton.js +425 -0
  681. package/src/StandardListItem.hbs +44 -0
  682. package/src/StandardListItem.js +191 -0
  683. package/src/StepInput.hbs +80 -0
  684. package/src/StepInput.js +684 -0
  685. package/src/SuggestionGroupItem.js +64 -0
  686. package/src/SuggestionItem.js +146 -0
  687. package/src/SuggestionListItem.hbs +33 -0
  688. package/src/SuggestionListItem.js +76 -0
  689. package/src/Switch.hbs +51 -0
  690. package/src/Switch.js +280 -0
  691. package/src/Tab.hbs +3 -0
  692. package/src/Tab.js +338 -0
  693. package/src/TabContainer.hbs +83 -0
  694. package/src/TabContainer.js +1051 -0
  695. package/src/TabContainerPopover.hbs +27 -0
  696. package/src/TabInOverflow.hbs +21 -0
  697. package/src/TabInStrip.hbs +38 -0
  698. package/src/TabSeparator.js +83 -0
  699. package/src/TabSeparatorInOverflow.hbs +8 -0
  700. package/src/TabSeparatorInStrip.hbs +6 -0
  701. package/src/Table.hbs +99 -0
  702. package/src/Table.js +771 -0
  703. package/src/TableCell.hbs +7 -0
  704. package/src/TableCell.js +88 -0
  705. package/src/TableColumn.hbs +8 -0
  706. package/src/TableColumn.js +136 -0
  707. package/src/TableGroupRow.hbs +12 -0
  708. package/src/TableGroupRow.js +160 -0
  709. package/src/TableRow.hbs +61 -0
  710. package/src/TableRow.js +388 -0
  711. package/src/TextArea.hbs +50 -0
  712. package/src/TextArea.js +697 -0
  713. package/src/TextAreaPopover.hbs +28 -0
  714. package/src/TimePicker.hbs +35 -0
  715. package/src/TimePicker.js +166 -0
  716. package/src/TimePickerBase.js +463 -0
  717. package/src/TimePickerPopover.hbs +34 -0
  718. package/src/TimeSelection.hbs +60 -0
  719. package/src/TimeSelection.js +493 -0
  720. package/src/Title.hbs +47 -0
  721. package/src/Title.js +132 -0
  722. package/src/Toast.hbs +13 -0
  723. package/src/Toast.js +243 -0
  724. package/src/ToggleButton.hbs +5 -0
  725. package/src/ToggleButton.js +89 -0
  726. package/src/Token.hbs +30 -0
  727. package/src/Token.js +219 -0
  728. package/src/Tokenizer.hbs +27 -0
  729. package/src/Tokenizer.js +541 -0
  730. package/src/TokenizerPopover.hbs +50 -0
  731. package/src/Tree.hbs +43 -0
  732. package/src/Tree.js +443 -0
  733. package/src/TreeItem.js +189 -0
  734. package/src/TreeListItem.hbs +48 -0
  735. package/src/TreeListItem.js +340 -0
  736. package/src/WheelSlider.hbs +48 -0
  737. package/src/WheelSlider.js +435 -0
  738. package/src/YearPicker.hbs +27 -0
  739. package/src/YearPicker.js +324 -0
  740. package/src/features/ColorPaletteMoreColors.js +42 -0
  741. package/src/features/InputElementsFormSupport.js +88 -0
  742. package/src/features/InputSuggestions.js +594 -0
  743. package/src/i18n/messagebundle.properties +360 -0
  744. package/src/i18n/messagebundle_ar.properties +241 -0
  745. package/src/i18n/messagebundle_bg.properties +241 -0
  746. package/src/i18n/messagebundle_ca.properties +241 -0
  747. package/src/i18n/messagebundle_cs.properties +241 -0
  748. package/src/i18n/messagebundle_cy.properties +241 -0
  749. package/src/i18n/messagebundle_da.properties +241 -0
  750. package/src/i18n/messagebundle_de.properties +241 -0
  751. package/src/i18n/messagebundle_el.properties +241 -0
  752. package/src/i18n/messagebundle_en.properties +241 -0
  753. package/src/i18n/messagebundle_en_GB.properties +241 -0
  754. package/src/i18n/messagebundle_en_US_sappsd.properties +241 -0
  755. package/src/i18n/messagebundle_en_US_saprigi.properties +241 -0
  756. package/src/i18n/messagebundle_en_US_saptrc.properties +241 -0
  757. package/src/i18n/messagebundle_es.properties +241 -0
  758. package/src/i18n/messagebundle_es_MX.properties +241 -0
  759. package/src/i18n/messagebundle_et.properties +241 -0
  760. package/src/i18n/messagebundle_fi.properties +241 -0
  761. package/src/i18n/messagebundle_fr.properties +241 -0
  762. package/src/i18n/messagebundle_fr_CA.properties +241 -0
  763. package/src/i18n/messagebundle_hi.properties +241 -0
  764. package/src/i18n/messagebundle_hr.properties +241 -0
  765. package/src/i18n/messagebundle_hu.properties +241 -0
  766. package/src/i18n/messagebundle_id.properties +241 -0
  767. package/src/i18n/messagebundle_in.properties +172 -0
  768. package/src/i18n/messagebundle_it.properties +241 -0
  769. package/src/i18n/messagebundle_iw.properties +241 -0
  770. package/src/i18n/messagebundle_ja.properties +241 -0
  771. package/src/i18n/messagebundle_kk.properties +241 -0
  772. package/src/i18n/messagebundle_ko.properties +241 -0
  773. package/src/i18n/messagebundle_lt.properties +241 -0
  774. package/src/i18n/messagebundle_lv.properties +241 -0
  775. package/src/i18n/messagebundle_ms.properties +241 -0
  776. package/src/i18n/messagebundle_nl.properties +241 -0
  777. package/src/i18n/messagebundle_no.properties +241 -0
  778. package/src/i18n/messagebundle_pl.properties +241 -0
  779. package/src/i18n/messagebundle_pt.properties +241 -0
  780. package/src/i18n/messagebundle_pt_PT.properties +241 -0
  781. package/src/i18n/messagebundle_ro.properties +241 -0
  782. package/src/i18n/messagebundle_ru.properties +241 -0
  783. package/src/i18n/messagebundle_sh.properties +241 -0
  784. package/src/i18n/messagebundle_sk.properties +241 -0
  785. package/src/i18n/messagebundle_sl.properties +241 -0
  786. package/src/i18n/messagebundle_sv.properties +241 -0
  787. package/src/i18n/messagebundle_th.properties +241 -0
  788. package/src/i18n/messagebundle_tr.properties +241 -0
  789. package/src/i18n/messagebundle_uk.properties +241 -0
  790. package/src/i18n/messagebundle_vi.properties +241 -0
  791. package/src/i18n/messagebundle_zh_CN.properties +241 -0
  792. package/src/i18n/messagebundle_zh_TW.properties +241 -0
  793. package/src/popup-utils/OpenedPopupsRegistry.js +50 -0
  794. package/src/popup-utils/PopoverRegistry.js +145 -0
  795. package/src/themes/Avatar.css +227 -0
  796. package/src/themes/AvatarGroup.css +82 -0
  797. package/src/themes/Badge.css +247 -0
  798. package/src/themes/Breadcrumbs.css +100 -0
  799. package/src/themes/BreadcrumbsPopover.css +6 -0
  800. package/src/themes/BrowserScrollbar.css +25 -0
  801. package/src/themes/BusyIndicator.css +143 -0
  802. package/src/themes/Button.css +306 -0
  803. package/src/themes/Button.ie11.css +48 -0
  804. package/src/themes/Calendar.css +18 -0
  805. package/src/themes/CalendarHeader.css +137 -0
  806. package/src/themes/Card.css +42 -0
  807. package/src/themes/CardHeader.css +133 -0
  808. package/src/themes/Carousel.css +140 -0
  809. package/src/themes/CheckBox.css +289 -0
  810. package/src/themes/ColorPalette.css +70 -0
  811. package/src/themes/ColorPaletteItem.css +70 -0
  812. package/src/themes/ColorPalettePopover.css +16 -0
  813. package/src/themes/ColorPaletteStaticArea.css +17 -0
  814. package/src/themes/ColorPicker.css +190 -0
  815. package/src/themes/ComboBox.css +9 -0
  816. package/src/themes/ComboBoxPopover.css +17 -0
  817. package/src/themes/CustomListItem.css +31 -0
  818. package/src/themes/DatePicker.css +46 -0
  819. package/src/themes/DatePickerPopover.css +5 -0
  820. package/src/themes/DateRangePicker.css +16 -0
  821. package/src/themes/DateTimePicker.css +11 -0
  822. package/src/themes/DateTimePickerPopover.css +78 -0
  823. package/src/themes/DayPicker.css +269 -0
  824. package/src/themes/Dialog.css +70 -0
  825. package/src/themes/FileUploader.css +40 -0
  826. package/src/themes/GroupHeaderListItem.css +24 -0
  827. package/src/themes/GrowingButton.css +67 -0
  828. package/src/themes/Icon.css +38 -0
  829. package/src/themes/Input.css +406 -0
  830. package/src/themes/InputIcon.css +53 -0
  831. package/src/themes/InvisibleTextStyles.css +9 -0
  832. package/src/themes/Label.css +85 -0
  833. package/src/themes/Link.css +77 -0
  834. package/src/themes/List.css +116 -0
  835. package/src/themes/ListItem.css +231 -0
  836. package/src/themes/ListItemBase.css +79 -0
  837. package/src/themes/MessageStrip.css +123 -0
  838. package/src/themes/MonthPicker.css +86 -0
  839. package/src/themes/MultiComboBox.css +37 -0
  840. package/src/themes/MultiInput.css +14 -0
  841. package/src/themes/Panel.css +100 -0
  842. package/src/themes/Popover.css +102 -0
  843. package/src/themes/Popup.css +5 -0
  844. package/src/themes/PopupGlobal.css +6 -0
  845. package/src/themes/PopupStaticAreaStyles.css +17 -0
  846. package/src/themes/PopupsCommon.css +87 -0
  847. package/src/themes/ProgressIndicator.css +158 -0
  848. package/src/themes/RadioButton.css +249 -0
  849. package/src/themes/RatingIndicator.css +52 -0
  850. package/src/themes/ResponsivePopover.css +34 -0
  851. package/src/themes/ResponsivePopoverCommon.css +207 -0
  852. package/src/themes/SegmentedButton.css +88 -0
  853. package/src/themes/Select.css +53 -0
  854. package/src/themes/SelectPopover.css +10 -0
  855. package/src/themes/SliderBase.css +253 -0
  856. package/src/themes/SplitButton.css +98 -0
  857. package/src/themes/StepInput.css +269 -0
  858. package/src/themes/Suggestions.css +14 -0
  859. package/src/themes/Switch.css +370 -0
  860. package/src/themes/Tab.css +9 -0
  861. package/src/themes/TabContainer.css +128 -0
  862. package/src/themes/TabInOverflow.css +61 -0
  863. package/src/themes/TabInStrip.css +374 -0
  864. package/src/themes/TabSeparatorInOverflow.css +8 -0
  865. package/src/themes/TabSeparatorInStrip.css +5 -0
  866. package/src/themes/Table.css +91 -0
  867. package/src/themes/TableCell.css +28 -0
  868. package/src/themes/TableColumn.css +29 -0
  869. package/src/themes/TableGroupRow.css +34 -0
  870. package/src/themes/TableRow.css +84 -0
  871. package/src/themes/TapHighlightColor.css +3 -0
  872. package/src/themes/TextArea.css +309 -0
  873. package/src/themes/TimePicker.css +50 -0
  874. package/src/themes/TimePickerPopover.css +11 -0
  875. package/src/themes/TimeSelection.css +27 -0
  876. package/src/themes/Title.css +65 -0
  877. package/src/themes/Toast.css +93 -0
  878. package/src/themes/ToggleButton.css +88 -0
  879. package/src/themes/ToggleButton.ie11.css +48 -0
  880. package/src/themes/Token.css +117 -0
  881. package/src/themes/Tokenizer.css +84 -0
  882. package/src/themes/Tree.css +11 -0
  883. package/src/themes/TreeListItem.css +107 -0
  884. package/src/themes/ValueStateMessage.css +76 -0
  885. package/src/themes/WheelSlider.css +203 -0
  886. package/src/themes/YearPicker.css +86 -0
  887. package/src/themes/base/Avatar-parameters.css +38 -0
  888. package/src/themes/base/AvatarGroup-parameter.css +6 -0
  889. package/src/themes/base/Badge-parameters.css +61 -0
  890. package/src/themes/base/BrowserScrollbar-parameters.css +4 -0
  891. package/src/themes/base/BusyIndicator-parameters.css +5 -0
  892. package/src/themes/base/Button-parameters.css +30 -0
  893. package/src/themes/base/CalendarHeader-parameters.css +20 -0
  894. package/src/themes/base/Card-parameters.css +17 -0
  895. package/src/themes/base/Carousel-parameters.css +9 -0
  896. package/src/themes/base/CheckBox-parameters.css +53 -0
  897. package/src/themes/base/ColorPalette-parameters.css +14 -0
  898. package/src/themes/base/ColorPicker-parameters.css +8 -0
  899. package/src/themes/base/DatePicker-parameters.css +6 -0
  900. package/src/themes/base/DayPicker-parameters.css +41 -0
  901. package/src/themes/base/Dialog-parameters.css +9 -0
  902. package/src/themes/base/GroupHeaderListItem-parameters.css +3 -0
  903. package/src/themes/base/GrowingButton-parameters.css +6 -0
  904. package/src/themes/base/Input-parameters.css +63 -0
  905. package/src/themes/base/InputIcon-parameters.css +11 -0
  906. package/src/themes/base/Link-parameters.css +8 -0
  907. package/src/themes/base/List-parameters.css +3 -0
  908. package/src/themes/base/ListItemBase-parameters.css +9 -0
  909. package/src/themes/base/MessageStrip-parameters.css +21 -0
  910. package/src/themes/base/MonthPicker-parameters.css +16 -0
  911. package/src/themes/base/MultiComboBox-parameters.css +3 -0
  912. package/src/themes/base/Panel-parameters.css +11 -0
  913. package/src/themes/base/PopupsCommon-parameters.css +8 -0
  914. package/src/themes/base/ProgressIndicator-parameters.css +21 -0
  915. package/src/themes/base/RadioButton-parameters.css +32 -0
  916. package/src/themes/base/RatingIndicator-parameters.css +3 -0
  917. package/src/themes/base/SegmentedButtton-parameters.css +8 -0
  918. package/src/themes/base/Select-parameters.css +11 -0
  919. package/src/themes/base/SelectPopover-parameters.css +4 -0
  920. package/src/themes/base/SliderBase-parameters.css +57 -0
  921. package/src/themes/base/StepInput-parameters.css +23 -0
  922. package/src/themes/base/Suggestions-parameters.css +3 -0
  923. package/src/themes/base/Switch-parameters.css +107 -0
  924. package/src/themes/base/TabContainer-parameters.css +84 -0
  925. package/src/themes/base/Table-parameters.css +6 -0
  926. package/src/themes/base/TableColumn-parameters.css +3 -0
  927. package/src/themes/base/TableRow-parameters.css +3 -0
  928. package/src/themes/base/TextArea-parameters.css +22 -0
  929. package/src/themes/base/TimePicker-parameters.css +4 -0
  930. package/src/themes/base/TimelineItem-parameters.css +10 -0
  931. package/src/themes/base/Title-parameters.css +8 -0
  932. package/src/themes/base/Toast-parameters.css +6 -0
  933. package/src/themes/base/ToggleButton-parameters.css +8 -0
  934. package/src/themes/base/Token-parameters.css +19 -0
  935. package/src/themes/base/Tokenizer-parameters.css +4 -0
  936. package/src/themes/base/ValueStateMessage-parameters.css +7 -0
  937. package/src/themes/base/WheelSlider-parameters.css +15 -0
  938. package/src/themes/base/YearPicker-parameters.css +16 -0
  939. package/src/themes/base/sizes-parameters.css +302 -0
  940. package/src/themes/sap_belize/BrowserScrollbar-parameters.css +4 -0
  941. package/src/themes/sap_belize/Carousel-parameters.css +9 -0
  942. package/src/themes/sap_belize/Dialog-parameters.css +5 -0
  943. package/src/themes/sap_belize/Input-parameters.css +6 -0
  944. package/src/themes/sap_belize/InputIcon-parameters.css +5 -0
  945. package/src/themes/sap_belize/ProgressIndicator-parameters.css +8 -0
  946. package/src/themes/sap_belize/SliderBase-parameters.css +22 -0
  947. package/src/themes/sap_belize/TabContainer-parameters.css +6 -0
  948. package/src/themes/sap_belize/Table-parameters.css +7 -0
  949. package/src/themes/sap_belize/TimePicker-parameters.css +5 -0
  950. package/src/themes/sap_belize/WheelSlider-parameters.css +17 -0
  951. package/src/themes/sap_belize/parameters-bundle.css +48 -0
  952. package/src/themes/sap_belize_hcb/Avatar-parameters.css +18 -0
  953. package/src/themes/sap_belize_hcb/Badge-parameters.css +43 -0
  954. package/src/themes/sap_belize_hcb/BrowserScrollbar-parameters.css +4 -0
  955. package/src/themes/sap_belize_hcb/Button-parameters.css +12 -0
  956. package/src/themes/sap_belize_hcb/CalendarHeader-parameters.css +11 -0
  957. package/src/themes/sap_belize_hcb/Card-parameters.css +6 -0
  958. package/src/themes/sap_belize_hcb/Carousel-parameters.css +9 -0
  959. package/src/themes/sap_belize_hcb/CheckBox-parameters.css +12 -0
  960. package/src/themes/sap_belize_hcb/DatePicker-parameters.css +6 -0
  961. package/src/themes/sap_belize_hcb/DayPicker-parameters.css +13 -0
  962. package/src/themes/sap_belize_hcb/Dialog-parameters.css +7 -0
  963. package/src/themes/sap_belize_hcb/GrowingButton-parameters.css +8 -0
  964. package/src/themes/sap_belize_hcb/Input-parameters.css +14 -0
  965. package/src/themes/sap_belize_hcb/InputIcon-parameters.css +5 -0
  966. package/src/themes/sap_belize_hcb/Link-parameters.css +7 -0
  967. package/src/themes/sap_belize_hcb/MessageStrip-parameters.css +10 -0
  968. package/src/themes/sap_belize_hcb/MonthPicker-parameters.css +10 -0
  969. package/src/themes/sap_belize_hcb/Panel-parameters.css +5 -0
  970. package/src/themes/sap_belize_hcb/ProgressIndicator-parameters.css +11 -0
  971. package/src/themes/sap_belize_hcb/RadioButton-parameters.css +10 -0
  972. package/src/themes/sap_belize_hcb/Select-parameters.css +12 -0
  973. package/src/themes/sap_belize_hcb/SliderBase-parameters.css +17 -0
  974. package/src/themes/sap_belize_hcb/Switch-parameters.css +46 -0
  975. package/src/themes/sap_belize_hcb/TabContainer-parameters.css +44 -0
  976. package/src/themes/sap_belize_hcb/Table-parameters.css +7 -0
  977. package/src/themes/sap_belize_hcb/TableRow-parameters.css +5 -0
  978. package/src/themes/sap_belize_hcb/TextArea-parameters.css +6 -0
  979. package/src/themes/sap_belize_hcb/ToggleButton-parameters.css +7 -0
  980. package/src/themes/sap_belize_hcb/Token-parameters.css +6 -0
  981. package/src/themes/sap_belize_hcb/ValueStateMessage-parameters.css +5 -0
  982. package/src/themes/sap_belize_hcb/WheelSlider-parameters.css +17 -0
  983. package/src/themes/sap_belize_hcb/YearPicker-parameters.css +10 -0
  984. package/src/themes/sap_belize_hcb/parameters-bundle.css +47 -0
  985. package/src/themes/sap_belize_hcw/Avatar-parameters.css +18 -0
  986. package/src/themes/sap_belize_hcw/Badge-parameters.css +43 -0
  987. package/src/themes/sap_belize_hcw/BrowserScrollbar-parameters.css +4 -0
  988. package/src/themes/sap_belize_hcw/Button-parameters.css +12 -0
  989. package/src/themes/sap_belize_hcw/CalendarHeader-parameters.css +11 -0
  990. package/src/themes/sap_belize_hcw/Card-parameters.css +6 -0
  991. package/src/themes/sap_belize_hcw/Carousel-parameters.css +9 -0
  992. package/src/themes/sap_belize_hcw/CheckBox-parameters.css +12 -0
  993. package/src/themes/sap_belize_hcw/DatePicker-parameters.css +5 -0
  994. package/src/themes/sap_belize_hcw/DayPicker-parameters.css +14 -0
  995. package/src/themes/sap_belize_hcw/Dialog-parameters.css +7 -0
  996. package/src/themes/sap_belize_hcw/GrowingButton-parameters.css +8 -0
  997. package/src/themes/sap_belize_hcw/Input-parameters.css +14 -0
  998. package/src/themes/sap_belize_hcw/InputIcon-parameters.css +5 -0
  999. package/src/themes/sap_belize_hcw/Link-parameters.css +7 -0
  1000. package/src/themes/sap_belize_hcw/MessageStrip-parameters.css +10 -0
  1001. package/src/themes/sap_belize_hcw/MonthPicker-parameters.css +10 -0
  1002. package/src/themes/sap_belize_hcw/Panel-parameters.css +5 -0
  1003. package/src/themes/sap_belize_hcw/ProgressIndicator-parameters.css +11 -0
  1004. package/src/themes/sap_belize_hcw/RadioButton-parameters.css +10 -0
  1005. package/src/themes/sap_belize_hcw/Select-parameters.css +12 -0
  1006. package/src/themes/sap_belize_hcw/SliderBase-parameters.css +17 -0
  1007. package/src/themes/sap_belize_hcw/Switch-parameters.css +45 -0
  1008. package/src/themes/sap_belize_hcw/TabContainer-parameters.css +44 -0
  1009. package/src/themes/sap_belize_hcw/Table-parameters.css +7 -0
  1010. package/src/themes/sap_belize_hcw/TableRow-parameters.css +5 -0
  1011. package/src/themes/sap_belize_hcw/TextArea-parameters.css +6 -0
  1012. package/src/themes/sap_belize_hcw/ToggleButton-parameters.css +6 -0
  1013. package/src/themes/sap_belize_hcw/Token-parameters.css +6 -0
  1014. package/src/themes/sap_belize_hcw/ValueStateMessage-parameters.css +5 -0
  1015. package/src/themes/sap_belize_hcw/WheelSlider-parameters.css +17 -0
  1016. package/src/themes/sap_belize_hcw/YearPicker-parameters.css +10 -0
  1017. package/src/themes/sap_belize_hcw/parameters-bundle.css +47 -0
  1018. package/src/themes/sap_fiori_3/Avatar-parameters.css +9 -0
  1019. package/src/themes/sap_fiori_3/Button-parameters.css +14 -0
  1020. package/src/themes/sap_fiori_3/CalendarHeader-parameters.css +8 -0
  1021. package/src/themes/sap_fiori_3/CheckBox-parameters.css +13 -0
  1022. package/src/themes/sap_fiori_3/DayPicker-parameters.css +6 -0
  1023. package/src/themes/sap_fiori_3/Input-parameters.css +7 -0
  1024. package/src/themes/sap_fiori_3/Link-parameters.css +7 -0
  1025. package/src/themes/sap_fiori_3/List-parameters.css +5 -0
  1026. package/src/themes/sap_fiori_3/MonthPicker-parameters.css +5 -0
  1027. package/src/themes/sap_fiori_3/MultiComboBox-parameters.css +5 -0
  1028. package/src/themes/sap_fiori_3/Panel-parameters.css +6 -0
  1029. package/src/themes/sap_fiori_3/SliderBase-parameters.css +5 -0
  1030. package/src/themes/sap_fiori_3/TabContainer-parameters.css +12 -0
  1031. package/src/themes/sap_fiori_3/TimePicker-parameters.css +5 -0
  1032. package/src/themes/sap_fiori_3/Token-parameters.css +9 -0
  1033. package/src/themes/sap_fiori_3/WheelSlider-parameters.css +16 -0
  1034. package/src/themes/sap_fiori_3/YearPicker-parameters.css +5 -0
  1035. package/src/themes/sap_fiori_3/parameters-bundle.css +48 -0
  1036. package/src/themes/sap_fiori_3_dark/Avatar-parameters.css +9 -0
  1037. package/src/themes/sap_fiori_3_dark/Button-parameters.css +14 -0
  1038. package/src/themes/sap_fiori_3_dark/CalendarHeader-parameters.css +8 -0
  1039. package/src/themes/sap_fiori_3_dark/CheckBox-parameters.css +13 -0
  1040. package/src/themes/sap_fiori_3_dark/DayPicker-parameters.css +6 -0
  1041. package/src/themes/sap_fiori_3_dark/Input-parameters.css +7 -0
  1042. package/src/themes/sap_fiori_3_dark/Link-parameters.css +7 -0
  1043. package/src/themes/sap_fiori_3_dark/List-parameters.css +5 -0
  1044. package/src/themes/sap_fiori_3_dark/MonthPicker-parameters.css +5 -0
  1045. package/src/themes/sap_fiori_3_dark/MultiComboBox-parameters.css +5 -0
  1046. package/src/themes/sap_fiori_3_dark/Panel-parameters.css +6 -0
  1047. package/src/themes/sap_fiori_3_dark/SliderBase-parameters.css +5 -0
  1048. package/src/themes/sap_fiori_3_dark/TabContainer-parameters.css +12 -0
  1049. package/src/themes/sap_fiori_3_dark/Token-parameters.css +8 -0
  1050. package/src/themes/sap_fiori_3_dark/WheelSlider-parameters.css +15 -0
  1051. package/src/themes/sap_fiori_3_dark/YearPicker-parameters.css +5 -0
  1052. package/src/themes/sap_fiori_3_dark/parameters-bundle.css +47 -0
  1053. package/src/themes/sap_fiori_3_hcb/Avatar-parameters.css +24 -0
  1054. package/src/themes/sap_fiori_3_hcb/Badge-parameters.css +43 -0
  1055. package/src/themes/sap_fiori_3_hcb/Button-parameters.css +10 -0
  1056. package/src/themes/sap_fiori_3_hcb/CalendarHeader-parameters.css +11 -0
  1057. package/src/themes/sap_fiori_3_hcb/Card-parameters.css +6 -0
  1058. package/src/themes/sap_fiori_3_hcb/Carousel-parameters.css +9 -0
  1059. package/src/themes/sap_fiori_3_hcb/CheckBox-parameters.css +13 -0
  1060. package/src/themes/sap_fiori_3_hcb/DatePicker-parameters.css +5 -0
  1061. package/src/themes/sap_fiori_3_hcb/DayPicker-parameters.css +19 -0
  1062. package/src/themes/sap_fiori_3_hcb/Dialog-parameters.css +7 -0
  1063. package/src/themes/sap_fiori_3_hcb/GrowingButton-parameters.css +8 -0
  1064. package/src/themes/sap_fiori_3_hcb/Input-parameters.css +21 -0
  1065. package/src/themes/sap_fiori_3_hcb/InputIcon-parameters.css +5 -0
  1066. package/src/themes/sap_fiori_3_hcb/Link-parameters.css +7 -0
  1067. package/src/themes/sap_fiori_3_hcb/MessageStrip-parameters.css +10 -0
  1068. package/src/themes/sap_fiori_3_hcb/MonthPicker-parameters.css +11 -0
  1069. package/src/themes/sap_fiori_3_hcb/Panel-parameters.css +5 -0
  1070. package/src/themes/sap_fiori_3_hcb/ProgressIndicator-parameters.css +11 -0
  1071. package/src/themes/sap_fiori_3_hcb/RadioButton-parameters.css +10 -0
  1072. package/src/themes/sap_fiori_3_hcb/Select-parameters.css +12 -0
  1073. package/src/themes/sap_fiori_3_hcb/SliderBase-parameters.css +14 -0
  1074. package/src/themes/sap_fiori_3_hcb/Switch-parameters.css +45 -0
  1075. package/src/themes/sap_fiori_3_hcb/TabContainer-parameters.css +44 -0
  1076. package/src/themes/sap_fiori_3_hcb/Table-parameters.css +5 -0
  1077. package/src/themes/sap_fiori_3_hcb/TableRow-parameters.css +5 -0
  1078. package/src/themes/sap_fiori_3_hcb/TextArea-parameters.css +10 -0
  1079. package/src/themes/sap_fiori_3_hcb/TimePicker-parameters.css +5 -0
  1080. package/src/themes/sap_fiori_3_hcb/ToggleButton-parameters.css +6 -0
  1081. package/src/themes/sap_fiori_3_hcb/Token-parameters.css +7 -0
  1082. package/src/themes/sap_fiori_3_hcb/ValueStateMessage-parameters.css +5 -0
  1083. package/src/themes/sap_fiori_3_hcb/WheelSlider-parameters.css +17 -0
  1084. package/src/themes/sap_fiori_3_hcb/YearPicker-parameters.css +11 -0
  1085. package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +48 -0
  1086. package/src/themes/sap_fiori_3_hcw/Avatar-parameters.css +24 -0
  1087. package/src/themes/sap_fiori_3_hcw/Badge-parameters.css +43 -0
  1088. package/src/themes/sap_fiori_3_hcw/Button-parameters.css +10 -0
  1089. package/src/themes/sap_fiori_3_hcw/CalendarHeader-parameters.css +11 -0
  1090. package/src/themes/sap_fiori_3_hcw/Card-parameters.css +6 -0
  1091. package/src/themes/sap_fiori_3_hcw/Carousel-parameters.css +9 -0
  1092. package/src/themes/sap_fiori_3_hcw/CheckBox-parameters.css +13 -0
  1093. package/src/themes/sap_fiori_3_hcw/DatePicker-parameters.css +5 -0
  1094. package/src/themes/sap_fiori_3_hcw/DayPicker-parameters.css +19 -0
  1095. package/src/themes/sap_fiori_3_hcw/Dialog-parameters.css +7 -0
  1096. package/src/themes/sap_fiori_3_hcw/GrowingButton-parameters.css +8 -0
  1097. package/src/themes/sap_fiori_3_hcw/Input-parameters.css +21 -0
  1098. package/src/themes/sap_fiori_3_hcw/InputIcon-parameters.css +5 -0
  1099. package/src/themes/sap_fiori_3_hcw/Link-parameters.css +7 -0
  1100. package/src/themes/sap_fiori_3_hcw/MessageStrip-parameters.css +10 -0
  1101. package/src/themes/sap_fiori_3_hcw/MonthPicker-parameters.css +11 -0
  1102. package/src/themes/sap_fiori_3_hcw/Panel-parameters.css +5 -0
  1103. package/src/themes/sap_fiori_3_hcw/ProgressIndicator-parameters.css +11 -0
  1104. package/src/themes/sap_fiori_3_hcw/RadioButton-parameters.css +10 -0
  1105. package/src/themes/sap_fiori_3_hcw/Select-parameters.css +12 -0
  1106. package/src/themes/sap_fiori_3_hcw/SliderBase-parameters.css +13 -0
  1107. package/src/themes/sap_fiori_3_hcw/Switch-parameters.css +45 -0
  1108. package/src/themes/sap_fiori_3_hcw/TabContainer-parameters.css +44 -0
  1109. package/src/themes/sap_fiori_3_hcw/Table-parameters.css +5 -0
  1110. package/src/themes/sap_fiori_3_hcw/TableRow-parameters.css +5 -0
  1111. package/src/themes/sap_fiori_3_hcw/TextArea-parameters.css +10 -0
  1112. package/src/themes/sap_fiori_3_hcw/TimePicker-parameters.css +5 -0
  1113. package/src/themes/sap_fiori_3_hcw/ToggleButton-parameters.css +6 -0
  1114. package/src/themes/sap_fiori_3_hcw/Token-parameters.css +7 -0
  1115. package/src/themes/sap_fiori_3_hcw/ValueStateMessage-parameters.css +5 -0
  1116. package/src/themes/sap_fiori_3_hcw/WheelSlider-parameters.css +17 -0
  1117. package/src/themes/sap_fiori_3_hcw/YearPicker-parameters.css +11 -0
  1118. package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +48 -0
  1119. package/src/themes/sap_horizon/Avatar-parameters.css +33 -0
  1120. package/src/themes/sap_horizon/BusyIndicator-parameters.css +7 -0
  1121. package/src/themes/sap_horizon/Button-parameters.css +20 -0
  1122. package/src/themes/sap_horizon/CalendarHeader-parameters.css +19 -0
  1123. package/src/themes/sap_horizon/Card-parameters.css +10 -0
  1124. package/src/themes/sap_horizon/CheckBox-parameters.css +34 -0
  1125. package/src/themes/sap_horizon/ColorPalette-parameters.css +16 -0
  1126. package/src/themes/sap_horizon/ColorPicker-parameters.css +10 -0
  1127. package/src/themes/sap_horizon/DatePicker-parameters.css +6 -0
  1128. package/src/themes/sap_horizon/DayPicker-parameters.css +31 -0
  1129. package/src/themes/sap_horizon/Dialog-parameters.css +11 -0
  1130. package/src/themes/sap_horizon/GrowingButton-parameters.css +5 -0
  1131. package/src/themes/sap_horizon/Input-parameters.css +35 -0
  1132. package/src/themes/sap_horizon/InputIcon-parameters.css +17 -0
  1133. package/src/themes/sap_horizon/Link-parameters.css +10 -0
  1134. package/src/themes/sap_horizon/List-parameters.css +5 -0
  1135. package/src/themes/sap_horizon/ListItemBase-parameters.css +7 -0
  1136. package/src/themes/sap_horizon/MessageStrip-parameters.css +9 -0
  1137. package/src/themes/sap_horizon/MonthPicker-parameters.css +17 -0
  1138. package/src/themes/sap_horizon/MultiComboBox-parameters.css +5 -0
  1139. package/src/themes/sap_horizon/Panel-parameters.css +12 -0
  1140. package/src/themes/sap_horizon/PopupsCommon-parameters.css +10 -0
  1141. package/src/themes/sap_horizon/ProgressIndicator-parameters.css +23 -0
  1142. package/src/themes/sap_horizon/RadioButton-parameters.css +9 -0
  1143. package/src/themes/sap_horizon/RatingIndicator-parameters.css +3 -0
  1144. package/src/themes/sap_horizon/SegmentedButtton-parameters.css +10 -0
  1145. package/src/themes/sap_horizon/Select-parameters.css +5 -0
  1146. package/src/themes/sap_horizon/SelectPopover-parameters.css +4 -0
  1147. package/src/themes/sap_horizon/SliderBase-parameters.css +44 -0
  1148. package/src/themes/sap_horizon/StepInput-parameters.css +25 -0
  1149. package/src/themes/sap_horizon/Suggestions-parameters.css +5 -0
  1150. package/src/themes/sap_horizon/Switch-parameters.css +31 -0
  1151. package/src/themes/sap_horizon/TabContainer-parameters.css +25 -0
  1152. package/src/themes/sap_horizon/Table-parameters.css +8 -0
  1153. package/src/themes/sap_horizon/TableColumn-parameters.css +5 -0
  1154. package/src/themes/sap_horizon/TableRow-parameters.css +5 -0
  1155. package/src/themes/sap_horizon/TextArea-parameters.css +22 -0
  1156. package/src/themes/sap_horizon/TimePicker-parameters.css +6 -0
  1157. package/src/themes/sap_horizon/ToggleButton-parameters.css +11 -0
  1158. package/src/themes/sap_horizon/Token-parameters.css +28 -0
  1159. package/src/themes/sap_horizon/Tokenizer-parameters.css +6 -0
  1160. package/src/themes/sap_horizon/ValueStateMessage-parameters.css +8 -0
  1161. package/src/themes/sap_horizon/WheelSlider-parameters.css +19 -0
  1162. package/src/themes/sap_horizon/YearPicker-parameters.css +16 -0
  1163. package/src/themes/sap_horizon/parameters-bundle.css +57 -0
  1164. package/src/themes/sap_horizon/sizes-parameters.css +8 -0
  1165. package/src/themes/sap_horizon_exp/Badge-parameters.css +91 -0
  1166. package/src/themes/sap_horizon_exp/Button-parameters.css +12 -0
  1167. package/src/themes/sap_horizon_exp/CalendarHeader-parameters.css +8 -0
  1168. package/src/themes/sap_horizon_exp/CheckBox-parameters.css +35 -0
  1169. package/src/themes/sap_horizon_exp/DatePicker-parameters.css +5 -0
  1170. package/src/themes/sap_horizon_exp/DayPicker-parameters.css +6 -0
  1171. package/src/themes/sap_horizon_exp/Input-parameters.css +46 -0
  1172. package/src/themes/sap_horizon_exp/InputIcon-parameters.css +9 -0
  1173. package/src/themes/sap_horizon_exp/Link-parameters.css +7 -0
  1174. package/src/themes/sap_horizon_exp/List-parameters.css +5 -0
  1175. package/src/themes/sap_horizon_exp/MonthPicker-parameters.css +5 -0
  1176. package/src/themes/sap_horizon_exp/MultiComboBox-parameters.css +7 -0
  1177. package/src/themes/sap_horizon_exp/Panel-parameters.css +6 -0
  1178. package/src/themes/sap_horizon_exp/Popover-parameters.css +5 -0
  1179. package/src/themes/sap_horizon_exp/RadioButton-parameters.css +30 -0
  1180. package/src/themes/sap_horizon_exp/Select-parameters.css +5 -0
  1181. package/src/themes/sap_horizon_exp/SliderBase-parameters.css +30 -0
  1182. package/src/themes/sap_horizon_exp/Switch-parameters.css +46 -0
  1183. package/src/themes/sap_horizon_exp/TabContainer-parameters.css +40 -0
  1184. package/src/themes/sap_horizon_exp/TimePicker-parameters.css +5 -0
  1185. package/src/themes/sap_horizon_exp/Token-parameters.css +9 -0
  1186. package/src/themes/sap_horizon_exp/WheelSlider-parameters.css +16 -0
  1187. package/src/themes/sap_horizon_exp/YearPicker-parameters.css +5 -0
  1188. package/src/themes/sap_horizon_exp/parameters-bundle.css +46 -0
  1189. package/src/timepicker-utils/TimeSlider.js +103 -0
  1190. package/src/types/AvatarColorScheme.js +104 -0
  1191. package/src/types/AvatarGroupType.js +43 -0
  1192. package/src/types/AvatarShape.js +41 -0
  1193. package/src/types/AvatarSize.js +67 -0
  1194. package/src/types/BreadcrumbsDesign.js +42 -0
  1195. package/src/types/BreadcrumbsSeparatorStyle.js +69 -0
  1196. package/src/types/BusyIndicatorSize.js +47 -0
  1197. package/src/types/ButtonDesign.js +68 -0
  1198. package/src/types/CalendarSelectionMode.js +47 -0
  1199. package/src/types/CarouselArrowsPlacement.js +40 -0
  1200. package/src/types/GrowingMode.js +48 -0
  1201. package/src/types/HasPopup.js +62 -0
  1202. package/src/types/InputType.js +68 -0
  1203. package/src/types/LinkDesign.js +47 -0
  1204. package/src/types/ListGrowingMode.js +15 -0
  1205. package/src/types/ListItemType.js +47 -0
  1206. package/src/types/ListMode.js +77 -0
  1207. package/src/types/ListSeparators.js +46 -0
  1208. package/src/types/MessageStripDesign.js +54 -0
  1209. package/src/types/PanelAccessibleRole.js +48 -0
  1210. package/src/types/PopoverHorizontalAlign.js +54 -0
  1211. package/src/types/PopoverPlacementType.js +54 -0
  1212. package/src/types/PopoverVerticalAlign.js +54 -0
  1213. package/src/types/Priority.js +55 -0
  1214. package/src/types/SemanticColor.js +61 -0
  1215. package/src/types/SwitchDesign.js +40 -0
  1216. package/src/types/TabContainerTabsPlacement.js +40 -0
  1217. package/src/types/TabLayout.js +40 -0
  1218. package/src/types/TableGrowingMode.js +15 -0
  1219. package/src/types/TableMode.js +47 -0
  1220. package/src/types/TableRowType.js +40 -0
  1221. package/src/types/TabsOverflowMode.js +40 -0
  1222. package/src/types/TitleLevel.js +68 -0
  1223. package/src/types/ToastPlacement.js +91 -0
  1224. package/src/types/WrappingType.js +41 -0
  1225. package/dist/Timeline.js +0 -82
  1226. package/dist/TimelineItem.js +0 -161
  1227. package/dist/generated/templates/ComboBoxItemTemplate.lit.js +0 -7
  1228. package/dist/generated/templates/TabSeparatorTemplate.lit.js +0 -7
  1229. package/dist/generated/templates/TimelineItemTemplate.lit.js +0 -12
  1230. package/dist/generated/templates/TimelineTemplate.lit.js +0 -8
  1231. package/dist/generated/themes/ComboBoxItem.css.js +0 -9
  1232. package/dist/generated/themes/TabContainerPopup.css.js +0 -9
  1233. package/dist/generated/themes/Timeline.css.js +0 -9
  1234. package/dist/generated/themes/TimelineItem.css.js +0 -9
  1235. package/dist/popup-utils/PopupUtils.js +0 -55
  1236. package/dist/types/AvatarFitType.js +0 -40
  1237. package/dist/webcomponentsjs/package.json +0 -46
@@ -1,23 +1,31 @@
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
- import { getCalendarType } from "@ui5/webcomponents-base/dist/config/CalendarType.js";
5
- import getLocale from "@ui5/webcomponents-base/dist/locale/getLocale.js";
6
1
  import { getFeature } from "@ui5/webcomponents-base/dist/FeaturesRegistry.js";
7
- import LocaleData from "@ui5/webcomponents-localization/dist/LocaleData.js";
8
- import DateFormat from "@ui5/webcomponents-localization/dist/DateFormat.js";
9
- import CalendarType from "@ui5/webcomponents-base/dist/types/CalendarType.js";
10
2
  import CalendarDate from "@ui5/webcomponents-localization/dist/dates/CalendarDate.js";
3
+ import modifyDateBy from "@ui5/webcomponents-localization/dist/dates/modifyDateBy.js";
4
+ import getRoundedTimestamp from "@ui5/webcomponents-localization/dist/dates/getRoundedTimestamp.js";
5
+ import getTodayUTCTimestamp from "@ui5/webcomponents-localization/dist/dates/getTodayUTCTimestamp.js";
11
6
  import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
12
- import { isShow } from "@ui5/webcomponents-base/dist/Keys.js";
13
- import { getRTL } from "@ui5/webcomponents-base/dist/config/RTL.js";
14
- import { isPhone } from "@ui5/webcomponents-base/dist/Device.js";
15
- import { fetchI18nBundle, getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
16
- import "@ui5/webcomponents-icons/dist/icons/appointment-2.js";
17
- import { DATEPICKER_OPEN_ICON_TITLE, DATEPICKER_DATE_ACC_TEXT, INPUT_SUGGESTIONS_TITLE } from "./generated/i18n/i18n-defaults.js";
7
+ import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AriaLabelHelper.js";
8
+ import {
9
+ isPageUp,
10
+ isPageDown,
11
+ isPageUpShift,
12
+ isPageDownShift,
13
+ isPageUpShiftCtrl,
14
+ isPageDownShiftCtrl,
15
+ isShow,
16
+ isF4,
17
+ isEnter,
18
+ } from "@ui5/webcomponents-base/dist/Keys.js";
19
+ import { isPhone, isIE } from "@ui5/webcomponents-base/dist/Device.js";
20
+ import "@ui5/webcomponents-icons/dist/appointment-2.js";
21
+ import "@ui5/webcomponents-icons/dist/decline.js";
22
+ import { DATEPICKER_OPEN_ICON_TITLE, DATEPICKER_DATE_DESCRIPTION, INPUT_SUGGESTIONS_TITLE } from "./generated/i18n/i18n-defaults.js";
23
+ import DateComponentBase from "./DateComponentBase.js";
18
24
  import Icon from "./Icon.js";
25
+ import Button from "./Button.js";
19
26
  import ResponsivePopover from "./ResponsivePopover.js";
20
27
  import Calendar from "./Calendar.js";
28
+ import * as CalendarDateComponent from "./CalendarDate.js";
21
29
  import Input from "./Input.js";
22
30
  import InputType from "./types/InputType.js";
23
31
  import DatePickerTemplate from "./generated/templates/DatePickerTemplate.lit.js";
@@ -35,7 +43,9 @@ import ResponsivePopoverCommonCss from "./generated/themes/ResponsivePopoverComm
35
43
  * @public
36
44
  */
37
45
  const metadata = {
38
- tag: "ui5-datepicker",
46
+ tag: "ui5-date-picker",
47
+ altTag: "ui5-datepicker",
48
+ managedSlots: true,
39
49
  properties: /** @lends sap.ui.webcomponents.main.DatePicker.prototype */ {
40
50
  /**
41
51
  * Defines a formatted date value.
@@ -49,11 +59,18 @@ const metadata = {
49
59
  },
50
60
 
51
61
  /**
52
- * Visualizes the validation state of the Web Component, for example
53
- * <code>Error</code>, <code>Warning</code>, or
54
- * <code>Success</code>.
62
+ * Defines the value state of the component.
63
+ * <br><br>
64
+ * Available options are:
65
+ * <ul>
66
+ * <li><code>None</code></li>
67
+ * <li><code>Error</code></li>
68
+ * <li><code>Warning</code></li>
69
+ * <li><code>Success</code></li>
70
+ * <li><code>Information</code></li>
71
+ * </ul>
55
72
  *
56
- * @type {string}
73
+ * @type {ValueState}
57
74
  * @defaultvalue "None"
58
75
  * @public
59
76
  */
@@ -63,54 +80,19 @@ const metadata = {
63
80
  },
64
81
 
65
82
  /**
66
- * Determines the format, displayed in the input field.
83
+ * Defines whether the component is required.
67
84
  *
68
- * @type {string}
69
- * @defaultvalue ""
70
- * @public
71
- */
72
- formatPattern: {
73
- type: String,
74
- },
75
-
76
- /**
77
- * Determines the minimum date available for selection.
78
- *
79
- * @type {String}
80
- * @defaultvalue ""
81
- * @since 1.0.0-rc.6
82
- * @public
83
- */
84
- minDate: {
85
- type: String,
86
- },
87
-
88
- /**
89
- * Determines the maximum date available for selection.
90
- *
91
- * @type {String}
92
- * @defaultvalue ""
93
- * @since 1.0.0-rc.6
94
- * @public
95
- */
96
- maxDate: {
97
- type: String,
98
- },
99
-
100
- /**
101
- * Determines the calendar type.
102
- * The input value is formated according to the calendar type and the picker shows
103
- * months and years from the specified calendar. Available options are: "Gregorian", "Islamic", "Japanese", "Buddhist", and "Persian".
104
- *
105
- * @type {string}
85
+ * @since 1.0.0-rc.9
86
+ * @type {boolean}
87
+ * @defaultvalue false
106
88
  * @public
107
89
  */
108
- primaryCalendarType: {
109
- type: CalendarType,
90
+ required: {
91
+ type: Boolean,
110
92
  },
111
93
 
112
94
  /**
113
- * Determines whether the <code>ui5-datepicker</code> is displayed as disabled.
95
+ * Determines whether the component is displayed as disabled.
114
96
  *
115
97
  * @type {boolean}
116
98
  * @defaultvalue false
@@ -121,7 +103,7 @@ const metadata = {
121
103
  },
122
104
 
123
105
  /**
124
- * Determines whether the <code>ui5-datepicker</code> is displayed as read-only.
106
+ * Determines whether the component is displayed as read-only.
125
107
  *
126
108
  * @type {boolean}
127
109
  * @defaultvalue false
@@ -133,10 +115,11 @@ const metadata = {
133
115
 
134
116
  /**
135
117
  * Defines a short hint, intended to aid the user with data entry when the
136
- * <code>ui5-datepicker</code> has no value.
118
+ * component has no value.
137
119
  *
120
+ * <br><br>
138
121
  * <b>Note:</b> When no placeholder is set, the format pattern is displayed as a placeholder.
139
- * Passing an empty string as the value of this property will make the <code>ui5-datepicker</code> appear empty - without placeholder or format pattern.
122
+ * Passing an empty string as the value of this property will make the component appear empty - without placeholder or format pattern.
140
123
  *
141
124
  * @type {string}
142
125
  * @defaultvalue undefined
@@ -148,13 +131,15 @@ const metadata = {
148
131
  },
149
132
 
150
133
  /**
151
- * Determines the name with which the <code>ui5-datepicker</code> will be submitted in an HTML form.
134
+ * Determines the name with which the component will be submitted in an HTML form.
152
135
  *
136
+ * <br><br>
153
137
  * <b>Important:</b> For the <code>name</code> property to have effect, you must add the following import to your project:
154
138
  * <code>import "@ui5/webcomponents/dist/features/InputElementsFormSupport.js";</code>
155
139
  *
140
+ * <br><br>
156
141
  * <b>Note:</b> When set, a native <code>input</code> HTML element
157
- * will be created inside the <code>ui5-datepicker</code> so that it can be submitted as
142
+ * will be created inside the component so that it can be submitted as
158
143
  * part of an HTML form. Do not use this property unless you need to submit a form.
159
144
  *
160
145
  * @type {string}
@@ -165,6 +150,46 @@ const metadata = {
165
150
  type: String,
166
151
  },
167
152
 
153
+ /**
154
+ * Defines the visibility of the week numbers column.
155
+ * <br><br>
156
+ *
157
+ * <b>Note:</b> For calendars other than Gregorian,
158
+ * the week numbers are not displayed regardless of what is set.
159
+ *
160
+ * @type {boolean}
161
+ * @defaultvalue false
162
+ * @public
163
+ * @since 1.0.0-rc.8
164
+ */
165
+ hideWeekNumbers: {
166
+ type: Boolean,
167
+ },
168
+
169
+ /**
170
+ * Defines the aria-label attribute for the component.
171
+ *
172
+ * @type {String}
173
+ * @public
174
+ * @since 1.0.0-rc.15
175
+ */
176
+ accessibleName: {
177
+ type: String,
178
+ },
179
+
180
+ /**
181
+ * Receives id(or many ids) of the elements that label the component.
182
+ *
183
+ * @type {String}
184
+ * @defaultvalue ""
185
+ * @public
186
+ * @since 1.0.0-rc.15
187
+ */
188
+ accessibleNameRef: {
189
+ type: String,
190
+ defaultValue: "",
191
+ },
192
+
168
193
  _isPickerOpen: {
169
194
  type: Boolean,
170
195
  noAttribute: true,
@@ -174,27 +199,83 @@ const metadata = {
174
199
  type: Object,
175
200
  },
176
201
 
177
- _calendar: {
178
- type: Object,
202
+ _calendarCurrentPicker: {
203
+ type: String,
204
+ defaultValue: "day",
205
+ },
206
+ },
207
+
208
+ slots: /** @lends sap.ui.webcomponents.main.DatePicker.prototype */ {
209
+ /**
210
+ * Defines the value state message that will be displayed as pop up under the component.
211
+ * <br><br>
212
+ *
213
+ * <b>Note:</b> If not specified, a default text (in the respective language) will be displayed.
214
+ * <br>
215
+ * <b>Note:</b> The <code>valueStateMessage</code> would be displayed,
216
+ * when the component is in <code>Information</code>, <code>Warning</code> or <code>Error</code> value state.
217
+ * @type {HTMLElement}
218
+ * @since 1.0.0-rc.7
219
+ * @slot
220
+ * @public
221
+ */
222
+ valueStateMessage: {
223
+ type: HTMLElement,
224
+ },
225
+
226
+ /**
227
+ * The slot is used to render native <code>input</code> HTML element within Light DOM to enable form submit,
228
+ * when <code>name</code> property is set.
229
+ * @type {HTMLElement[]}
230
+ * @slot
231
+ * @private
232
+ */
233
+ formSupport: {
234
+ type: HTMLElement,
179
235
  },
180
236
  },
237
+
181
238
  events: /** @lends sap.ui.webcomponents.main.DatePicker.prototype */ {
182
239
 
183
240
  /**
184
241
  * Fired when the input operation has finished by pressing Enter or on focusout.
185
242
  *
186
243
  * @event
244
+ * @allowPreventDefault
187
245
  * @public
246
+ * @param {String} value The submitted value.
247
+ * @param {Boolean} valid Indicator if the value is in correct format pattern and in valid range.
188
248
  */
189
- change: {},
249
+ change: {
250
+ details: {
251
+ value: {
252
+ type: String,
253
+ },
254
+ valid: {
255
+ type: Boolean,
256
+ },
257
+ },
258
+ },
190
259
 
191
260
  /**
192
- * Fired when the value of the <code>ui5-datepicker</code> is changed at each key stroke.
261
+ * Fired when the value of the component is changed at each key stroke.
193
262
  *
194
263
  * @event
264
+ * @allowPreventDefault
195
265
  * @public
266
+ * @param {String} value The submitted value.
267
+ * @param {Boolean} valid Indicator if the value is in correct format pattern and in valid range.
196
268
  */
197
- input: {},
269
+ input: {
270
+ details: {
271
+ value: {
272
+ type: String,
273
+ },
274
+ valid: {
275
+ type: Boolean,
276
+ },
277
+ },
278
+ },
198
279
  },
199
280
  };
200
281
 
@@ -203,8 +284,8 @@ const metadata = {
203
284
  *
204
285
  * <h3 class="comment-api-title">Overview</h3>
205
286
  *
206
- * The <code>ui5-datepicker</code> component provides an input field with assigned calendar which opens on user action.
207
- * The <code>ui5-datepicker</code> allows users to select a localized date using touch,
287
+ * The <code>ui5-date-picker</code> component provides an input field with assigned calendar which opens on user action.
288
+ * The <code>ui5-date-picker</code> allows users to select a localized date using touch,
208
289
  * mouse, or keyboard input. It consists of two parts: the date input field and the
209
290
  * date picker.
210
291
  *
@@ -216,7 +297,7 @@ const metadata = {
216
297
  * <li>Typing it in directly in the input field</li>
217
298
  * </ul>
218
299
  * <br><br>
219
- * When the user makes an entry and chooses the enter key, the calendar shows the corresponding date.
300
+ * When the user makes an entry and presses the enter key, the calendar shows the corresponding date.
220
301
  * When the user directly triggers the calendar display, the actual date is displayed.
221
302
  *
222
303
  * <h3>Formatting</h3>
@@ -231,14 +312,50 @@ const metadata = {
231
312
  * a valid value string is "2015-07-30" and the same is displayed in the input.
232
313
  *
233
314
  * <h3>Keyboard Handling</h3>
234
- * The <code>ui5-datepicker</code> provides advanced keyboard handling.
235
- * If the <code>ui5-datepicker</code> is focused,
315
+ * The <code>ui5-date-picker</code> provides advanced keyboard handling.
316
+ * If the <code>ui5-date-picker</code> is focused,
236
317
  * you can open or close the drop-down by pressing <code>F4</code>, <code>ALT+UP</code> or <code>ALT+DOWN</code> keys.
237
318
  * Once the drop-down is opened, you can use the <code>UP</code>, <code>DOWN</code>, <code>LEFT</code>, <code>RIGHT</code> arrow keys
238
319
  * to navigate through the dates and select one by pressing the <code>Space</code> or <code>Enter</code> keys. Moreover you can
239
320
  * use TAB to reach the buttons for changing month and year.
240
321
  * <br>
241
322
  *
323
+ * If the <code>ui5-date-picker</code> input field is focused and its corresponding picker dialog is not opened,
324
+ * then users can increment or decrement the date referenced by <code>dateValue</code> property
325
+ * by using the following shortcuts:
326
+ * <br>
327
+ * <ul>
328
+ * <li>[PAGEDOWN] - Decrements the corresponding day of the month by one</li>
329
+ * <li>[SHIFT] + [PAGEDOWN] - Decrements the corresponding month by one</li>
330
+ * <li>[SHIFT] + [CTRL] + [PAGEDOWN] - Decrements the corresponding year by one</li>
331
+ * <li>[PAGEUP] - Increments the corresponding day of the month by one</li>
332
+ * <li>[SHIFT] + [PAGEUP] - Increments the corresponding month by one</li>
333
+ * <li>[SHIFT] + [CTRL] + [PAGEUP] - Increments the corresponding year by one</li>
334
+ * </ul>
335
+ *
336
+ * <h3>Calendar types</h3>
337
+ * The component supports several calendar types - Gregorian, Buddhist, Islamic, Japanese and Persian.
338
+ * By default the Gregorian Calendar is used. In order to use the Buddhist, Islamic, Japanese or Persian calendar,
339
+ * you need to set the <code>primaryCalendarType</code> property and import one or more of the following modules:
340
+ * <br><br>
341
+ *
342
+ * <code>import "@ui5/webcomponents-localization/dist/features/calendar/Buddhist.js";</code>
343
+ * <br>
344
+ * <code>import "@ui5/webcomponents-localization/dist/features/calendar/Islamic.js";</code>
345
+ * <br>
346
+ * <code>import "@ui5/webcomponents-localization/dist/features/calendar/Japanese.js";</code>
347
+ * <br>
348
+ * <code>import "@ui5/webcomponents-localization/dist/features/calendar/Persian.js";</code>
349
+ * <br><br>
350
+ *
351
+ * Or, you can use the global configuration and set the <code>calendarType</code> key:
352
+ * <br>
353
+ * <pre><code>&lt;script data-id="sap-ui-config" type="application/json"&gt;
354
+ * {
355
+ * "calendarType": "Japanese"
356
+ * }
357
+ * &lt;/script&gt;</code></pre>
358
+ *
242
359
  * <h3>ES6 Module Import</h3>
243
360
  *
244
361
  * <code>import "@ui5/webcomponents/dist/DatePicker";</code>
@@ -246,19 +363,15 @@ const metadata = {
246
363
  * @constructor
247
364
  * @author SAP SE
248
365
  * @alias sap.ui.webcomponents.main.DatePicker
249
- * @extends sap.ui.webcomponents.base.UI5Element
250
- * @tagname ui5-datepicker
366
+ * @extends DateComponentBase
367
+ * @tagname ui5-date-picker
251
368
  * @public
252
369
  */
253
- class DatePicker extends UI5Element {
370
+ class DatePicker extends DateComponentBase {
254
371
  static get metadata() {
255
372
  return metadata;
256
373
  }
257
374
 
258
- static get render() {
259
- return litRender;
260
- }
261
-
262
375
  static get template() {
263
376
  return DatePickerTemplate;
264
377
  }
@@ -272,159 +385,214 @@ class DatePicker extends UI5Element {
272
385
  }
273
386
 
274
387
  static get staticAreaStyles() {
275
- return [datePickerPopoverCss, ResponsivePopoverCommonCss];
388
+ return [ResponsivePopoverCommonCss, datePickerPopoverCss];
276
389
  }
277
390
 
278
- constructor() {
279
- super();
280
-
281
- this._respPopoverConfig = {
282
- allowTargetOverlap: true,
283
- stayOpenOnScroll: true,
284
- afterClose: () => {
285
- const calendar = this._respPopover.querySelector(`#${this._id}-calendar`);
391
+ /**
392
+ * @protected
393
+ */
394
+ onResponsivePopoverAfterClose() {
395
+ this._isPickerOpen = false;
396
+ if (isPhone()) {
397
+ this.blur(); // close device's keyboard and prevent further typing
398
+ } else {
399
+ this._getInput().focus();
400
+ }
401
+ }
286
402
 
287
- this._isPickerOpen = false;
403
+ onBeforeRendering() {
404
+ ["minDate", "maxDate"].forEach(prop => {
405
+ if (this[prop] && !this.isValid(this[prop])) {
406
+ console.warn(`Invalid value for property "${prop}": ${this[prop]} is not compatible with the configured format pattern: "${this._displayFormat}"`); // eslint-disable-line
407
+ }
408
+ });
288
409
 
289
- if (isPhone()) {
290
- // close device's keyboard and prevent further typing
291
- this.blur();
292
- } else if (this._focusInputAfterClose) {
293
- this._getInput().focus();
294
- this._focusInputAfterClose = false;
295
- }
410
+ const FormSupport = getFeature("FormSupport");
411
+ if (FormSupport) {
412
+ FormSupport.syncNativeHiddenInput(this);
413
+ } else if (this.name) {
414
+ console.warn(`In order for the "name" property to have effect, you should also: import "@ui5/webcomponents/dist/features/InputElementsFormSupport.js";`); // eslint-disable-line
415
+ }
296
416
 
297
- calendar._hideMonthPicker();
298
- calendar._hideYearPicker();
299
- },
300
- afterOpen: () => {
301
- const calendar = this._respPopover.querySelector(`#${this._id}-calendar`);
302
- const dayPicker = calendar.shadowRoot.querySelector(`#${calendar._id}-daypicker`);
303
-
304
- const selectedDay = dayPicker.shadowRoot.querySelector(".ui5-dp-item--selected");
305
- const today = dayPicker.shadowRoot.querySelector(".ui5-dp-item--now");
306
- let focusableDay = selectedDay || today;
307
- if (!selectedDay && (this.minDate || this.maxDate) && !this.isInValidRange((new Date().getTime()))) {
308
- focusableDay = this.findFirstFocusableDay(dayPicker);
309
- }
417
+ this.liveValue = this.value;
418
+ }
310
419
 
311
- if (this._focusInputAfterOpen) {
312
- this._focusInputAfterOpen = false;
313
- this._getInput().focus();
314
- } else if (focusableDay) {
315
- focusableDay.focus();
420
+ /**
421
+ * Override in derivatives to change calendar selection mode
422
+ * @returns {string}
423
+ * @protected
424
+ */
425
+ get _calendarSelectionMode() {
426
+ return "Single";
427
+ }
316
428
 
317
- let focusableDayIdx = parseInt(focusableDay.getAttribute("data-sap-index"));
318
- const focusableItem = dayPicker.focusableDays.find(item => parseInt(item._index) === focusableDayIdx);
319
- focusableDayIdx = focusableItem ? dayPicker.focusableDays.indexOf(focusableItem) : focusableDayIdx;
429
+ /**
430
+ * Used to provide a timestamp to the Calendar (to focus it to a relevant date when open) based on the component's state
431
+ * Override in derivatives to provide the calendar a timestamp based on their properties
432
+ * By default focus the calendar on the selected date if set, or the current day otherwise
433
+ * @protected
434
+ */
435
+ get _calendarTimestamp() {
436
+ if (this.value && this._checkValueValidity(this.value)) {
437
+ const millisecondsUTC = this.dateValueUTC.getTime();
438
+ return getRoundedTimestamp(millisecondsUTC);
439
+ }
320
440
 
321
- dayPicker._itemNav.current = focusableDayIdx;
322
- dayPicker._itemNav.update();
323
- }
324
- },
325
- };
441
+ return getTodayUTCTimestamp(this._primaryCalendarType);
442
+ }
326
443
 
327
- this._calendar = {
328
- onSelectedDatesChange: this._handleCalendarSelectedDatesChange.bind(this),
329
- selectedDates: [],
330
- };
444
+ /**
445
+ * Used to provide selectedDates to the calendar based on the component's state
446
+ * Override in derivatives to provide different rules for setting the calendar's selected dates
447
+ * @protected
448
+ */
449
+ get _calendarSelectedDates() {
450
+ if (this.value && this._checkValueValidity(this.value)) {
451
+ return [this.value];
452
+ }
331
453
 
332
- this.i18nBundle = getI18nBundle("@ui5/webcomponents");
454
+ return [];
333
455
  }
334
456
 
335
- findFirstFocusableDay(daypicker) {
336
- const today = new Date();
337
- if (!this.isInValidRange(today.getTime())) {
338
- const focusableItems = Array.from(daypicker.shadowRoot.querySelectorAll(".ui5-dp-item"));
339
- return focusableItems.filter(x => !x.classList.contains("ui5-dp-item--disabled"))[0];
457
+ _onkeydown(event) {
458
+ if (isShow(event)) {
459
+ event.preventDefault(); // Prevent scroll on Alt/Option + Arrow Up/Down
460
+ if (this.isOpen()) {
461
+ if (!isF4(event)) {
462
+ this._toggleAndFocusInput();
463
+ }
464
+ } else {
465
+ this._toggleAndFocusInput();
466
+ }
340
467
  }
341
- }
342
468
 
343
- onBeforeRendering() {
344
- this._calendar.primaryCalendarType = this._primaryCalendarType;
345
- this._calendar.formatPattern = this._formatPattern;
469
+ if (this.isOpen()) {
470
+ return;
471
+ }
346
472
 
347
- if (this.minDate && !this.isValid(this.minDate)) {
348
- this.minDate = null;
349
- console.warn(`In order for the "minDate" property to have effect, you should enter valid date format`); // eslint-disable-line
473
+ if (isEnter(event)) {
474
+ this._updateValueAndFireEvents(event.target.value, true, ["change", "value-changed"]);
350
475
  }
351
476
 
352
- if (this.maxDate && !this.isValid(this.maxDate)) {
353
- this.maxDate = null;
354
- console.warn(`In order for the "maxDate" property to have effect, you should enter valid date format`); // eslint-disable-line
477
+ if (isPageUpShiftCtrl(event)) {
478
+ event.preventDefault();
479
+ this._modifyDateValue(1, "year");
480
+ } else if (isPageUpShift(event)) {
481
+ event.preventDefault();
482
+ this._modifyDateValue(1, "month");
483
+ } else if (isPageUp(event)) {
484
+ event.preventDefault();
485
+ this._modifyDateValue(1, "day");
486
+ } else if (isPageDownShiftCtrl(event)) {
487
+ event.preventDefault();
488
+ this._modifyDateValue(-1, "year");
489
+ } else if (isPageDownShift(event)) {
490
+ event.preventDefault();
491
+ this._modifyDateValue(-1, "month");
492
+ } else if (isPageDown(event)) {
493
+ event.preventDefault();
494
+ this._modifyDateValue(-1, "day");
355
495
  }
356
- if (this.isValid(this.value) && this.isInValidRange(this._getTimeStampFromString(this.value))) {
357
- this._changeCalendarSelection();
358
- } else {
359
- this._calendar.selectedDates = [];
496
+ }
497
+
498
+ /**
499
+ *
500
+ * @param amount
501
+ * @param unit
502
+ * @protected
503
+ */
504
+ _modifyDateValue(amount, unit) {
505
+ if (!this.dateValue) {
506
+ return;
360
507
  }
361
508
 
362
- const FormSupport = getFeature("FormSupport");
363
- if (FormSupport) {
364
- FormSupport.syncNativeHiddenInput(this);
365
- } else if (this.name) {
366
- console.warn(`In order for the "name" property to have effect, you should also: import "@ui5/webcomponents/dist/features/InputElementsFormSupport.js";`); // eslint-disable-line
509
+ const modifiedDate = modifyDateBy(CalendarDate.fromLocalJSDate(this.dateValue), amount, unit, this._minDate, this._maxDate);
510
+ const newValue = this.formatValue(modifiedDate.toUTCJSDate());
511
+ this._updateValueAndFireEvents(newValue, true, ["change", "value-changed"]);
512
+ }
513
+
514
+ _updateValueAndFireEvents(value, normalizeValue, events, updateValue = true) {
515
+ const valid = this._checkValueValidity(value);
516
+
517
+ if (valid && normalizeValue) {
518
+ value = this.normalizeValue(value); // transform valid values (in any format) to the correct format
367
519
  }
368
520
 
369
- if (this.minDate) {
370
- this._calendar.minDate = this.minDate;
521
+ let executeEvent = true;
522
+ this.liveValue = value;
523
+
524
+ events.forEach(event => {
525
+ if (!this.fireEvent(event, { value, valid }, true)) {
526
+ executeEvent = false;
527
+ }
528
+ });
529
+
530
+ if (!executeEvent) {
531
+ return;
371
532
  }
372
533
 
373
- if (this.maxDate) {
374
- this._calendar.maxDate = this.maxDate;
534
+ if (updateValue) {
535
+ this._getInput().getInputDOMRef().then(innnerInput => {
536
+ innnerInput.value = value;
537
+ });
538
+ this.value = value;
539
+ this._updateValueState(); // Change the value state to Error/None, but only if needed
375
540
  }
376
541
  }
377
542
 
378
- _getTimeStampFromString(value) {
379
- if (this.getFormat().parse(value)) {
380
- const jsDate = new Date(this.getFormat().parse(value).getFullYear(), this.getFormat().parse(value).getMonth(), this.getFormat().parse(value).getDate());
381
- const oCalDate = CalendarDate.fromTimestamp(jsDate.getTime(), this._primaryCalendarType);
382
- return oCalDate.valueOf();
543
+ _updateValueState() {
544
+ const isValid = this._checkValueValidity(this.value);
545
+ if (!isValid) { // If not valid - always set Error regardless of the current value state
546
+ this.valueState = ValueState.Error;
547
+ } else if (isValid && this.valueState === ValueState.Error) { // However if valid, change only Error (but not the others) to None
548
+ this.valueState = ValueState.None;
383
549
  }
384
- return undefined;
385
550
  }
386
551
 
387
- _onkeydown(event) {
388
- if (isShow(event)) {
389
- this.togglePicker();
390
- this._getInput().focus();
391
- }
552
+ _toggleAndFocusInput() {
553
+ this.togglePicker();
554
+ this._getInput().focus();
392
555
  }
393
556
 
394
557
  _getInput() {
395
- return this.shadowRoot.querySelector("ui5-input");
558
+ return this.shadowRoot.querySelector("[ui5-input]");
396
559
  }
397
560
 
398
- _handleInputChange() {
399
- let nextValue = this._getInput().getInputValue();
400
- const isValid = this.isValid(nextValue);
401
- const isInValidRange = this.isInValidRange(this._getTimeStampFromString(nextValue));
402
-
403
- if (isValid && isInValidRange) {
404
- nextValue = this.normalizeValue(nextValue);
405
- this.valueState = ValueState.None;
406
- } else {
407
- this.valueState = ValueState.Error;
408
- }
409
-
561
+ /**
562
+ * The ui5-input "submit" event handler - fire change event when the user presses enter
563
+ * @protected
564
+ */
565
+ _onInputSubmit(event) {}
410
566
 
411
- this.value = nextValue;
412
- this.fireEvent("change", { value: nextValue, valid: isValid });
413
- // Angular two way data binding
414
- this.fireEvent("value-changed", { value: nextValue, valid: isValid });
567
+ /**
568
+ * The ui5-input "change" event handler - fire change event when the user focuses out of the input
569
+ * @protected
570
+ */
571
+ _onInputChange(event) {
572
+ this._updateValueAndFireEvents(event.target.value, true, ["change", "value-changed"]);
415
573
  }
416
574
 
417
- _handleInputLiveChange() {
418
- const nextValue = this._getInput().getInputValue();
419
- const isValid = this.isValid(nextValue) && this.isInValidRange(this._getTimeStampFromString(nextValue));
575
+ /**
576
+ * The ui5-input "input" event handler - fire input even when the user types
577
+ * @protected
578
+ */
579
+ async _onInputInput(event) {
580
+ this._updateValueAndFireEvents(event.target.value, false, ["input"], false);
581
+ }
420
582
 
421
- this.value = nextValue;
422
- this.fireEvent("input", { value: nextValue, valid: isValid });
583
+ /**
584
+ * @protected
585
+ */
586
+ _checkValueValidity(value) {
587
+ if (value === "") {
588
+ return true;
589
+ }
590
+ return this.isValid(value) && this.isInValidRange(value);
423
591
  }
424
592
 
425
593
  _click(event) {
426
594
  if (isPhone()) {
427
- this._respPopover.open(this);
595
+ this.responsivePopover.showAt(this);
428
596
  event.preventDefault(); // prevent immediate selection of any item
429
597
  }
430
598
  }
@@ -435,174 +603,149 @@ class DatePicker extends UI5Element {
435
603
  * @public
436
604
  */
437
605
  isValid(value = "") {
438
- return !!(value && this.getFormat().parse(value));
606
+ if (value === "") {
607
+ return true;
608
+ }
609
+
610
+ return !!this.getFormat().parse(value);
439
611
  }
440
612
 
441
613
  /**
442
- * Checks if a date is in range between minimum and maximum date.
443
- * @param {object} value
614
+ * Checks if a date is between the minimum and maximum date.
615
+ * @param {string} value A value to be checked
616
+ * @returns {boolean}
444
617
  * @public
445
618
  */
446
619
  isInValidRange(value = "") {
447
- const pickedDate = new Date(value),
448
- minDate = this._minDate && new Date(this._minDate),
449
- maxDate = this._maxDate && new Date(this._maxDate);
450
-
451
- if (minDate && maxDate) {
452
- if (minDate <= pickedDate && maxDate >= pickedDate) {
453
- return true;
454
- }
455
- } else if (minDate && !maxDate) {
456
- if (minDate <= pickedDate) {
457
- return true;
458
- }
459
- } else if (maxDate && !minDate) {
460
- if (maxDate >= pickedDate) {
461
- return true;
462
- }
463
- } else if (!maxDate && !minDate) {
620
+ if (value === "") {
464
621
  return true;
465
622
  }
466
623
 
467
- return false;
468
- }
469
-
470
- // because the parser understands more than one format
471
- // but we need values in one format
472
- normalizeValue(sValue) {
473
- return this.getFormat().format(this.getFormat().parse(sValue));
624
+ const calendarDate = this._getCalendarDateFromString(value);
625
+ return calendarDate.valueOf() >= this._minDate.valueOf() && calendarDate.valueOf() <= this._maxDate.valueOf();
474
626
  }
475
627
 
476
- get validValue() {
477
- if (this.isValid(this.value)) {
478
- return this.value;
628
+ /**
629
+ * The parser understands many formats, but we need one format
630
+ * @protected
631
+ */
632
+ normalizeValue(value) {
633
+ if (value === "") {
634
+ return value;
479
635
  }
480
- return this.getFormat().format(new Date());
481
- }
482
636
 
483
- get _calendarDate() {
484
- const millisecondsUTC = this.getFormat().parse(this.validValue, true).getTime();
485
- const oCalDate = CalendarDate.fromTimestamp(
486
- millisecondsUTC - (millisecondsUTC % (24 * 60 * 60 * 1000)),
487
- this._primaryCalendarType
488
- );
489
- return oCalDate;
637
+ return this.getFormat().format(this.getFormat().parse(value, true), true); // it is important to both parse and format the date as UTC
490
638
  }
491
639
 
492
- get _primaryCalendarType() {
493
- return this.primaryCalendarType || getCalendarType() || LocaleData.getInstance(getLocale()).getPreferredCalendarType();
640
+ get _displayFormat() {
641
+ return this.getFormat().oFormatOptions.pattern;
494
642
  }
495
643
 
496
- get _formatPattern() {
497
- return this.formatPattern || "medium"; // get from config
644
+ /**
645
+ * @protected
646
+ */
647
+ get _placeholder() {
648
+ return this.placeholder !== undefined ? this.placeholder : this._displayFormat;
498
649
  }
499
650
 
500
- get _isPattern() {
501
- return this._formatPattern !== "medium" && this._formatPattern !== "short" && this._formatPattern !== "long";
651
+ get _headerTitleText() {
652
+ return DatePicker.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);
502
653
  }
503
654
 
504
- get _displayFormat() {
505
- return this.getFormat().oFormatOptions.pattern;
655
+ get phone() {
656
+ return isPhone();
506
657
  }
507
658
 
508
- get _placeholder() {
509
- return this.placeholder !== undefined ? this.placeholder : this._displayFormat;
659
+ get showHeader() {
660
+ return this.phone;
510
661
  }
511
662
 
512
- get _headerTitleText() {
513
- return this.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);
663
+ get showFooter() {
664
+ return this.phone;
514
665
  }
515
666
 
516
- getFormat() {
517
- if (this._isPattern) {
518
- this._oDateFormat = DateFormat.getInstance({
519
- pattern: this._formatPattern,
520
- calendarType: this._primaryCalendarType,
521
- });
522
- } else {
523
- this._oDateFormat = DateFormat.getInstance({
524
- style: this._formatPattern,
525
- calendarType: this._primaryCalendarType,
526
- });
527
- }
528
- return this._oDateFormat;
667
+ get _isIE() {
668
+ return isIE();
529
669
  }
530
670
 
531
671
  get accInfo() {
532
672
  return {
533
- "ariaDescribedBy": `${this._id}-date`,
673
+ "ariaRoledescription": this.dateAriaDescription,
534
674
  "ariaHasPopup": "true",
535
675
  "ariaAutoComplete": "none",
536
676
  "role": "combobox",
537
- "ariaOwns": `${this._id}-responsive-popover`,
677
+ "ariaControls": `${this._id}-responsive-popover`,
538
678
  "ariaExpanded": this.isOpen(),
539
- "ariaDescription": this.dateAriaDescription,
679
+ "ariaRequired": this.required,
680
+ "ariaLabel": getEffectiveAriaLabelText(this),
540
681
  };
541
682
  }
542
683
 
543
- get _maxDate() {
544
- if (this.maxDate) {
545
- return this._getTimeStampFromString(this.maxDate);
546
- }
547
- return this.maxDate;
548
- }
549
-
550
- get _minDate() {
551
- if (this.minDate) {
552
- return this._getTimeStampFromString(this.minDate);
553
- }
554
- return this.minDate;
684
+ get openIconTitle() {
685
+ return DatePicker.i18nBundle.getText(DATEPICKER_OPEN_ICON_TITLE);
555
686
  }
556
687
 
557
- get openIconTitle() {
558
- return this.i18nBundle.getText(DATEPICKER_OPEN_ICON_TITLE);
688
+ get openIconName() {
689
+ return "appointment-2";
559
690
  }
560
691
 
561
692
  get dateAriaDescription() {
562
- return this.i18nBundle.getText(DATEPICKER_DATE_ACC_TEXT);
693
+ return DatePicker.i18nBundle.getText(DATEPICKER_DATE_DESCRIPTION);
563
694
  }
564
695
 
565
- get dir() {
566
- return getRTL() ? "rtl" : "ltr";
696
+ /**
697
+ * Defines whether the dialog on mobile should have header
698
+ * @private
699
+ */
700
+ get _shouldHideHeader() {
701
+ return false;
567
702
  }
568
703
 
569
- get _respPopover() {
570
- return this.getStaticAreaItemDomRef().querySelector("ui5-responsive-popover");
704
+ async _respPopover() {
705
+ const staticAreaItem = await this.getStaticAreaItemDomRef();
706
+ return staticAreaItem.querySelector("[ui5-responsive-popover]");
571
707
  }
572
708
 
573
709
  _canOpenPicker() {
574
710
  return !this.disabled && !this.readonly;
575
711
  }
576
712
 
577
- _handleCalendarSelectedDatesChange(event) {
578
- const iNewValue = event.detail.dates && event.detail.dates[0];
579
-
580
- if (this._calendar.selectedDates.indexOf(iNewValue) !== -1) {
581
- this.closePicker();
582
- return;
583
- }
713
+ /**
714
+ * The user selected a new date in the calendar
715
+ * @param event
716
+ * @protected
717
+ */
718
+ onSelectedDatesChange(event) {
719
+ event.preventDefault();
720
+ const newValue = event.detail.values && event.detail.values[0];
721
+ this._updateValueAndFireEvents(newValue, true, ["change", "value-changed"]);
584
722
 
585
- this.value = this.getFormat().format(
586
- new Date(CalendarDate.fromTimestamp(
587
- iNewValue * 1000,
588
- this._primaryCalendarType
589
- ).valueOf()),
590
- true
591
- );
592
- this._calendar.timestamp = iNewValue;
593
- this._calendar.selectedDates = event.detail.dates;
594
- this._focusInputAfterClose = true;
595
723
  this.closePicker();
724
+ }
596
725
 
597
- if (this.isInValidRange(this._getTimeStampFromString(this.value))) {
598
- this.valueState = ValueState.None;
599
- } else {
600
- this.valueState = ValueState.Error;
601
- }
726
+ /**
727
+ * The user clicked the "month" button in the header
728
+ */
729
+ onHeaderShowMonthPress() {
730
+ this._calendarCurrentPicker = "month";
731
+ }
732
+
733
+ /**
734
+ * The user clicked the "year" button in the header
735
+ */
736
+ onHeaderShowYearPress() {
737
+ this._calendarCurrentPicker = "year";
738
+ }
602
739
 
603
- this.fireEvent("change", { value: this.value, valid: true });
604
- // Angular two way data binding
605
- this.fireEvent("value-changed", { value: this.value, valid: true });
740
+ /**
741
+ * Formats a Java Script date object into a string representing a locale date
742
+ * according to the <code>formatPattern</code> property of the DatePicker instance
743
+ * @param {object} date A Java Script date object to be formatted as string
744
+ * @returns {string} The date as string
745
+ * @public
746
+ */
747
+ formatValue(date) {
748
+ return this.getFormat().format(date);
606
749
  }
607
750
 
608
751
  /**
@@ -610,55 +753,34 @@ class DatePicker extends UI5Element {
610
753
  * @public
611
754
  */
612
755
  closePicker() {
613
- this._respPopover.close();
756
+ this.responsivePopover.close();
614
757
  }
615
758
 
616
759
  /**
617
760
  * Opens the picker.
618
- * @param {object} options A JSON object with additional configuration.<br>
619
- * <code>{ focusInput: true }</code> By default, the focus goes in the picker after opening it.
620
- * Specify this option to focus the input field.
621
761
  * @public
762
+ * @async
763
+ * @returns {Promise} Resolves when the picker is open
622
764
  */
623
- openPicker(options) {
624
- this._changeCalendarSelection();
625
-
626
- if (options && options.focusInput) {
627
- this._focusInputAfterOpen = true;
628
- }
629
-
630
- this._respPopover.open(this);
765
+ async openPicker() {
631
766
  this._isPickerOpen = true;
767
+ this._calendarCurrentPicker = "day";
768
+ this.responsivePopover = await this._respPopover();
769
+
770
+ this.responsivePopover.showAt(this);
632
771
  }
633
772
 
634
773
  togglePicker() {
635
774
  if (this.isOpen()) {
636
775
  this.closePicker();
637
776
  } else if (this._canOpenPicker()) {
638
- this.updateStaticAreaItemContentDensity();
639
777
  this.openPicker();
640
778
  }
641
779
  }
642
780
 
643
- _changeCalendarSelection(focusTimestamp) {
644
- if (this._calendarDate.getYear() < 1) {
645
- // 0 is a valid year, but we cannot display it
646
- return;
647
- }
648
-
649
- const oCalDate = this._calendarDate;
650
- const timestamp = focusTimestamp || oCalDate.valueOf() / 1000;
651
-
652
- this._calendar = Object.assign({}, this._calendar);
653
- this._calendar.timestamp = timestamp;
654
- if (this.value) {
655
- this._calendar.selectedDates = [timestamp];
656
- }
657
- }
658
-
659
781
  /**
660
782
  * Checks if the picker is open.
661
- * @returns {Boolean} true if the picker is open, false otherwise
783
+ * @returns {boolean} true if the picker is open, false otherwise
662
784
  * @public
663
785
  */
664
786
  isOpen() {
@@ -666,30 +788,18 @@ class DatePicker extends UI5Element {
666
788
  }
667
789
 
668
790
  /**
669
- * Gets some semantic details about an event originated in the control.
670
- * @param {*} event An event object
671
- * @returns {Object} Semantic details
672
- */
673
- getSemanticTargetInfo(event) {
674
- const oDomTarget = getDomTarget(event);
675
- let isInput = false;
676
-
677
- if (oDomTarget && oDomTarget.className.indexOf("ui5-input-inner") > -1) {
678
- isInput = true;
679
- }
680
-
681
- return { isInput };
682
- }
683
-
684
- /**
685
- * Currently selected date represented as JavaScript Date instance.
791
+ * Currently selected date represented as a Local JavaScript Date instance.
686
792
  *
687
793
  * @readonly
688
794
  * @type { Date }
689
795
  * @public
690
796
  */
691
797
  get dateValue() {
692
- return this.getFormat().parse(this.value);
798
+ return this.liveValue ? this.getFormat().parse(this.liveValue) : this.getFormat().parse(this.value);
799
+ }
800
+
801
+ get dateValueUTC() {
802
+ return this.liveValue ? this.getFormat().parse(this.liveValue, true) : this.getFormat().parse(this.value);
693
803
  }
694
804
 
695
805
  get styles() {
@@ -704,33 +814,18 @@ class DatePicker extends UI5Element {
704
814
  return InputType.Text;
705
815
  }
706
816
 
707
- static async onDefine() {
708
- await Promise.all([
709
- fetchCldr(getLocale().getLanguage(), getLocale().getRegion(), getLocale().getScript()),
710
- Icon.define(),
711
- ResponsivePopover.define(),
712
- Calendar.define(),
713
- Input.define(),
714
- fetchI18nBundle("@ui5/webcomponents"),
715
- ]);
817
+ static get dependencies() {
818
+ return [
819
+ Icon,
820
+ ResponsivePopover,
821
+ Calendar,
822
+ CalendarDateComponent.default,
823
+ Input,
824
+ Button,
825
+ ];
716
826
  }
717
827
  }
718
828
 
719
- const getDomTarget = event => {
720
- let target,
721
- composedPath;
722
-
723
- if (typeof event.composedPath === "function") {
724
- composedPath = event.composedPath();
725
- }
726
-
727
- if (Array.isArray(composedPath) && composedPath.length) {
728
- target = composedPath[0];
729
- }
730
-
731
- return target;
732
- };
733
-
734
829
  DatePicker.define();
735
830
 
736
831
  export default DatePicker;