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