@ui5/webcomponents 0.0.0-185851a98 → 0.0.0-1929d08ff

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