@ui5/webcomponents 1.21.1 → 1.22.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -2
- package/dist/.tsbuildinfo +1 -1
- package/dist/Avatar.d.ts +16 -47
- package/dist/Avatar.js +4 -12
- package/dist/Avatar.js.map +1 -1
- package/dist/AvatarGroup.d.ts +13 -30
- package/dist/AvatarGroup.js +11 -15
- package/dist/AvatarGroup.js.map +1 -1
- package/dist/Badge.d.ts +61 -20
- package/dist/Badge.js +98 -12
- package/dist/Badge.js.map +1 -1
- package/dist/Breadcrumbs.d.ts +4 -16
- package/dist/Breadcrumbs.js +16 -6
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/BreadcrumbsItem.d.ts +4 -18
- package/dist/BreadcrumbsItem.js +1 -6
- package/dist/BreadcrumbsItem.js.map +1 -1
- package/dist/BusyIndicator.d.ts +6 -24
- package/dist/BusyIndicator.js +2 -4
- package/dist/BusyIndicator.js.map +1 -1
- package/dist/Button.d.ts +20 -48
- package/dist/Button.js +3 -15
- package/dist/Button.js.map +1 -1
- package/dist/Calendar.d.ts +7 -18
- package/dist/Calendar.js +19 -19
- package/dist/Calendar.js.map +1 -1
- package/dist/CalendarDate.d.ts +2 -7
- package/dist/CalendarDate.js +1 -5
- package/dist/CalendarDate.js.map +1 -1
- package/dist/CalendarHeader.d.ts +8 -9
- package/dist/CalendarHeader.js.map +1 -1
- package/dist/CalendarPart.d.ts +1 -4
- package/dist/CalendarPart.js +7 -5
- package/dist/CalendarPart.js.map +1 -1
- package/dist/Card.d.ts +5 -19
- package/dist/Card.js +1 -5
- package/dist/Card.js.map +1 -1
- package/dist/CardHeader.d.ts +14 -38
- package/dist/CardHeader.js +6 -18
- package/dist/CardHeader.js.map +1 -1
- package/dist/Carousel.d.ts +17 -58
- package/dist/Carousel.js +7 -19
- package/dist/Carousel.js.map +1 -1
- package/dist/CheckBox.d.ts +14 -49
- package/dist/CheckBox.js +3 -15
- package/dist/CheckBox.js.map +1 -1
- package/dist/ColorPalette.d.ts +6 -18
- package/dist/ColorPalette.js +4 -6
- package/dist/ColorPalette.js.map +1 -1
- package/dist/ColorPaletteItem.d.ts +10 -14
- package/dist/ColorPaletteItem.js +2 -5
- package/dist/ColorPaletteItem.js.map +1 -1
- package/dist/ColorPalettePopover.d.ts +17 -32
- package/dist/ColorPalettePopover.js +8 -13
- package/dist/ColorPalettePopover.js.map +1 -1
- package/dist/ColorPicker.d.ts +6 -8
- package/dist/ColorPicker.js +1 -5
- package/dist/ColorPicker.js.map +1 -1
- package/dist/ComboBox.d.ts +16 -58
- package/dist/ComboBox.js +5 -9
- package/dist/ComboBox.js.map +1 -1
- package/dist/ComboBoxGroupItem.d.ts +3 -8
- package/dist/ComboBoxGroupItem.js +2 -5
- package/dist/ComboBoxGroupItem.js.map +1 -1
- package/dist/ComboBoxItem.d.ts +4 -11
- package/dist/ComboBoxItem.js +2 -5
- package/dist/ComboBoxItem.js.map +1 -1
- package/dist/CustomListItem.d.ts +9 -27
- package/dist/CustomListItem.js +8 -24
- package/dist/CustomListItem.js.map +1 -1
- package/dist/DateComponentBase.d.ts +9 -18
- package/dist/DateComponentBase.js +2 -3
- package/dist/DateComponentBase.js.map +1 -1
- package/dist/DatePicker.d.ts +44 -75
- package/dist/DatePicker.js +46 -44
- package/dist/DatePicker.js.map +1 -1
- package/dist/DateRangePicker.d.ts +10 -24
- package/dist/DateRangePicker.js +5 -16
- package/dist/DateRangePicker.js.map +1 -1
- package/dist/DateTimePicker.d.ts +7 -9
- package/dist/DateTimePicker.js +5 -5
- package/dist/DateTimePicker.js.map +1 -1
- package/dist/DayPicker.d.ts +42 -35
- package/dist/DayPicker.js +35 -27
- package/dist/DayPicker.js.map +1 -1
- package/dist/Dialog.d.ts +11 -40
- package/dist/Dialog.js +6 -19
- package/dist/Dialog.js.map +1 -1
- package/dist/FileUploader.d.ts +11 -39
- package/dist/FileUploader.js +7 -9
- package/dist/FileUploader.js.map +1 -1
- package/dist/GroupHeaderListItem.d.ts +6 -18
- package/dist/GroupHeaderListItem.js +5 -5
- package/dist/GroupHeaderListItem.js.map +1 -1
- package/dist/Icon.d.ts +12 -34
- package/dist/Icon.js +4 -15
- package/dist/Icon.js.map +1 -1
- package/dist/Input.d.ts +38 -84
- package/dist/Input.js +20 -22
- package/dist/Input.js.map +1 -1
- package/dist/Interfaces.d.ts +115 -133
- package/dist/Interfaces.js +1 -193
- package/dist/Interfaces.js.map +1 -1
- package/dist/Label.d.ts +8 -25
- package/dist/Label.js +4 -13
- package/dist/Label.js.map +1 -1
- package/dist/Link.d.ts +13 -42
- package/dist/Link.js +18 -9
- package/dist/Link.js.map +1 -1
- package/dist/List.d.ts +14 -50
- package/dist/List.js +21 -13
- package/dist/List.js.map +1 -1
- package/dist/ListItem.d.ts +10 -32
- package/dist/ListItem.js +2 -4
- package/dist/ListItem.js.map +1 -1
- package/dist/ListItemBase.d.ts +3 -9
- package/dist/ListItemBase.js +1 -3
- package/dist/ListItemBase.js.map +1 -1
- package/dist/Menu.d.ts +10 -33
- package/dist/Menu.js +21 -16
- package/dist/Menu.js.map +1 -1
- package/dist/MenuItem.d.ts +11 -32
- package/dist/MenuItem.js +1 -5
- package/dist/MenuItem.js.map +1 -1
- package/dist/MessageStrip.d.ts +10 -28
- package/dist/MessageStrip.js +5 -5
- package/dist/MessageStrip.js.map +1 -1
- package/dist/MonthPicker.d.ts +8 -13
- package/dist/MonthPicker.js +6 -13
- package/dist/MonthPicker.js.map +1 -1
- package/dist/MultiComboBox.d.ts +19 -70
- package/dist/MultiComboBox.js +8 -24
- package/dist/MultiComboBox.js.map +1 -1
- package/dist/MultiComboBoxGroupItem.d.ts +2 -8
- package/dist/MultiComboBoxGroupItem.js +1 -5
- package/dist/MultiComboBoxGroupItem.js.map +1 -1
- package/dist/MultiComboBoxItem.d.ts +4 -8
- package/dist/MultiComboBoxItem.js +2 -5
- package/dist/MultiComboBoxItem.js.map +1 -1
- package/dist/MultiInput.d.ts +9 -16
- package/dist/MultiInput.js +4 -7
- package/dist/MultiInput.js.map +1 -1
- package/dist/NavigationMenu.d.ts +36 -0
- package/dist/NavigationMenu.js +123 -0
- package/dist/NavigationMenu.js.map +1 -0
- package/dist/NavigationMenuItem.d.ts +67 -0
- package/dist/NavigationMenuItem.js +51 -0
- package/dist/NavigationMenuItem.js.map +1 -0
- package/dist/Option.d.ts +11 -28
- package/dist/Option.js +2 -6
- package/dist/Option.js.map +1 -1
- package/dist/Panel.d.ts +16 -52
- package/dist/Panel.js +4 -15
- package/dist/Panel.js.map +1 -1
- package/dist/Popover.d.ts +22 -62
- package/dist/Popover.js +12 -27
- package/dist/Popover.js.map +1 -1
- package/dist/Popup.d.ts +10 -46
- package/dist/Popup.js +10 -20
- package/dist/Popup.js.map +1 -1
- package/dist/ProgressIndicator.d.ts +8 -22
- package/dist/ProgressIndicator.js +2 -5
- package/dist/ProgressIndicator.js.map +1 -1
- package/dist/RadioButton.d.ts +13 -40
- package/dist/RadioButton.js +1 -5
- package/dist/RadioButton.js.map +1 -1
- package/dist/RangeSlider.d.ts +12 -27
- package/dist/RangeSlider.js +10 -21
- package/dist/RangeSlider.js.map +1 -1
- package/dist/RatingIndicator.d.ts +11 -27
- package/dist/RatingIndicator.js +1 -5
- package/dist/RatingIndicator.js.map +1 -1
- package/dist/ResponsivePopover.d.ts +8 -29
- package/dist/ResponsivePopover.js +7 -27
- package/dist/ResponsivePopover.js.map +1 -1
- package/dist/SegmentedButton.d.ts +13 -28
- package/dist/SegmentedButton.js +13 -14
- package/dist/SegmentedButton.js.map +1 -1
- package/dist/SegmentedButtonItem.d.ts +9 -19
- package/dist/SegmentedButtonItem.js +2 -5
- package/dist/SegmentedButtonItem.js.map +1 -1
- package/dist/Select.d.ts +15 -66
- package/dist/Select.js +13 -18
- package/dist/Select.js.map +1 -1
- package/dist/SelectMenu.d.ts +3 -10
- package/dist/SelectMenu.js +2 -4
- package/dist/SelectMenu.js.map +1 -1
- package/dist/SelectMenuOption.d.ts +12 -32
- package/dist/SelectMenuOption.js +11 -23
- package/dist/SelectMenuOption.js.map +1 -1
- package/dist/Slider.d.ts +5 -18
- package/dist/Slider.js +4 -15
- package/dist/Slider.js.map +1 -1
- package/dist/SliderBase.d.ts +11 -32
- package/dist/SliderBase.js +22 -17
- package/dist/SliderBase.js.map +1 -1
- package/dist/SplitButton.d.ts +25 -48
- package/dist/SplitButton.js +6 -14
- package/dist/SplitButton.js.map +1 -1
- package/dist/StandardListItem.d.ts +23 -58
- package/dist/StandardListItem.js +15 -22
- package/dist/StandardListItem.js.map +1 -1
- package/dist/StepInput.d.ts +20 -51
- package/dist/StepInput.js +7 -9
- package/dist/StepInput.js.map +1 -1
- package/dist/SuggestionGroupItem.d.ts +5 -9
- package/dist/SuggestionGroupItem.js +2 -5
- package/dist/SuggestionGroupItem.js.map +1 -1
- package/dist/SuggestionItem.d.ts +15 -27
- package/dist/SuggestionItem.js +2 -5
- package/dist/SuggestionItem.js.map +1 -1
- package/dist/SuggestionListItem.d.ts +7 -20
- package/dist/SuggestionListItem.js +4 -15
- package/dist/SuggestionListItem.js.map +1 -1
- package/dist/Switch.d.ts +16 -48
- package/dist/Switch.js +6 -17
- package/dist/Switch.js.map +1 -1
- package/dist/Tab.d.ts +10 -33
- package/dist/Tab.js +3 -7
- package/dist/Tab.js.map +1 -1
- package/dist/TabContainer.d.ts +21 -87
- package/dist/TabContainer.js +14 -23
- package/dist/TabContainer.js.map +1 -1
- package/dist/TabSeparator.d.ts +3 -8
- package/dist/TabSeparator.js +2 -7
- package/dist/TabSeparator.js.map +1 -1
- package/dist/Table.d.ts +18 -64
- package/dist/Table.js +13 -16
- package/dist/Table.js.map +1 -1
- package/dist/TableCell.d.ts +2 -17
- package/dist/TableCell.js +2 -14
- package/dist/TableCell.js.map +1 -1
- package/dist/TableColumn.d.ts +7 -26
- package/dist/TableColumn.js +3 -14
- package/dist/TableColumn.js.map +1 -1
- package/dist/TableGroupRow.d.ts +6 -28
- package/dist/TableGroupRow.js +3 -15
- package/dist/TableGroupRow.js.map +1 -1
- package/dist/TableRow.d.ts +11 -33
- package/dist/TableRow.js +4 -18
- package/dist/TableRow.js.map +1 -1
- package/dist/TextArea.d.ts +20 -61
- package/dist/TextArea.js +3 -16
- package/dist/TextArea.js.map +1 -1
- package/dist/TimePicker.d.ts +5 -15
- package/dist/TimePicker.js +2 -7
- package/dist/TimePicker.js.map +1 -1
- package/dist/TimePickerBase.d.ts +15 -51
- package/dist/TimePickerBase.js +23 -39
- package/dist/TimePickerBase.js.map +1 -1
- package/dist/TimePickerClock.d.ts +49 -89
- package/dist/TimePickerClock.js +38 -33
- package/dist/TimePickerClock.js.map +1 -1
- package/dist/TimePickerInternals.d.ts +16 -27
- package/dist/TimePickerInternals.js +9 -12
- package/dist/TimePickerInternals.js.map +1 -1
- package/dist/TimeSelection.d.ts +16 -23
- package/dist/TimeSelection.js +2 -5
- package/dist/TimeSelection.js.map +1 -1
- package/dist/TimeSelectionClocks.d.ts +16 -19
- package/dist/TimeSelectionClocks.js +14 -17
- package/dist/TimeSelectionClocks.js.map +1 -1
- package/dist/TimeSelectionInputs.d.ts +12 -16
- package/dist/TimeSelectionInputs.js +11 -15
- package/dist/TimeSelectionInputs.js.map +1 -1
- package/dist/Title.d.ts +7 -21
- package/dist/Title.js +5 -15
- package/dist/Title.js.map +1 -1
- package/dist/Toast.d.ts +12 -26
- package/dist/Toast.js +5 -5
- package/dist/Toast.js.map +1 -1
- package/dist/ToggleButton.d.ts +2 -7
- package/dist/ToggleButton.js +1 -4
- package/dist/ToggleButton.js.map +1 -1
- package/dist/ToggleSpinButton.d.ts +5 -15
- package/dist/ToggleSpinButton.js +1 -4
- package/dist/ToggleSpinButton.js.map +1 -1
- package/dist/Token.d.ts +13 -27
- package/dist/Token.js +2 -7
- package/dist/Token.js.map +1 -1
- package/dist/Tokenizer.d.ts +7 -11
- package/dist/Tokenizer.js +1 -5
- package/dist/Tokenizer.js.map +1 -1
- package/dist/Toolbar.d.ts +7 -26
- package/dist/Toolbar.js +4 -8
- package/dist/Toolbar.js.map +1 -1
- package/dist/ToolbarButton.d.ts +11 -34
- package/dist/ToolbarButton.js +1 -6
- package/dist/ToolbarButton.js.map +1 -1
- package/dist/ToolbarItem.d.ts +5 -28
- package/dist/ToolbarItem.js +1 -11
- package/dist/ToolbarItem.js.map +1 -1
- package/dist/ToolbarRegistry.d.ts +3 -3
- package/dist/ToolbarRegistry.js.map +1 -1
- package/dist/ToolbarSelect.d.ts +8 -27
- package/dist/ToolbarSelect.js +4 -10
- package/dist/ToolbarSelect.js.map +1 -1
- package/dist/ToolbarSelectOption.d.ts +2 -11
- package/dist/ToolbarSelectOption.js +1 -5
- package/dist/ToolbarSelectOption.js.map +1 -1
- package/dist/ToolbarSeparator.d.ts +1 -5
- package/dist/ToolbarSeparator.js +1 -5
- package/dist/ToolbarSeparator.js.map +1 -1
- package/dist/ToolbarSpacer.d.ts +2 -8
- package/dist/ToolbarSpacer.js +1 -5
- package/dist/ToolbarSpacer.js.map +1 -1
- package/dist/Tree.d.ts +12 -36
- package/dist/Tree.js +28 -14
- package/dist/Tree.js.map +1 -1
- package/dist/TreeItem.d.ts +8 -25
- package/dist/TreeItem.js +5 -16
- package/dist/TreeItem.js.map +1 -1
- package/dist/TreeItemBase.d.ts +12 -38
- package/dist/TreeItemBase.js +2 -9
- package/dist/TreeItemBase.js.map +1 -1
- package/dist/TreeItemCustom.d.ts +6 -22
- package/dist/TreeItemCustom.js +5 -16
- package/dist/TreeItemCustom.js.map +1 -1
- package/dist/WheelSlider.d.ts +9 -23
- package/dist/WheelSlider.js +11 -11
- package/dist/WheelSlider.js.map +1 -1
- package/dist/YearPicker.d.ts +14 -12
- package/dist/YearPicker.js +12 -12
- package/dist/YearPicker.js.map +1 -1
- package/dist/bundle.esm.js.map +1 -1
- package/dist/css/themes/Badge.css +1 -1
- package/dist/css/themes/NavigationMenu.css +1 -0
- package/dist/css/themes/sap_belize/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -1
- package/dist/custom-elements-internal.json +20999 -0
- package/dist/custom-elements.json +16118 -1
- package/dist/features/InputSuggestions.d.ts +10 -10
- package/dist/features/InputSuggestions.js +1 -2
- package/dist/features/InputSuggestions.js.map +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 -1
- package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/i18n/i18n-defaults.d.ts +9 -2
- package/dist/generated/i18n/i18n-defaults.js +9 -2
- package/dist/generated/i18n/i18n-defaults.js.map +1 -1
- package/dist/generated/templates/BadgeTemplate.lit.js +8 -3
- package/dist/generated/templates/BadgeTemplate.lit.js.map +1 -1
- package/dist/generated/templates/NavigationMenuTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/NavigationMenuTemplate.lit.js +21 -0
- package/dist/generated/templates/NavigationMenuTemplate.lit.js.map +1 -0
- package/dist/generated/themes/Badge.css.js +1 -1
- package/dist/generated/themes/Badge.css.js.map +1 -1
- package/dist/generated/themes/NavigationMenu.css.d.ts +3 -0
- package/dist/generated/themes/NavigationMenu.css.js +9 -0
- package/dist/generated/themes/NavigationMenu.css.js.map +1 -0
- package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
- package/dist/types/AvatarColorScheme.d.ts +0 -15
- package/dist/types/AvatarColorScheme.js +0 -15
- package/dist/types/AvatarColorScheme.js.map +1 -1
- package/dist/types/AvatarGroupType.d.ts +0 -6
- package/dist/types/AvatarGroupType.js +0 -6
- package/dist/types/AvatarGroupType.js.map +1 -1
- package/dist/types/AvatarShape.d.ts +0 -6
- package/dist/types/AvatarShape.js +0 -6
- package/dist/types/AvatarShape.js.map +1 -1
- package/dist/types/AvatarSize.d.ts +0 -9
- package/dist/types/AvatarSize.js +0 -9
- package/dist/types/AvatarSize.js.map +1 -1
- package/dist/types/BackgroundDesign.d.ts +0 -7
- package/dist/types/BackgroundDesign.js +0 -7
- package/dist/types/BackgroundDesign.js.map +1 -1
- package/dist/types/BadgeDesign.d.ts +49 -0
- package/dist/types/BadgeDesign.js +51 -0
- package/dist/types/BadgeDesign.js.map +1 -0
- package/dist/types/BorderDesign.d.ts +0 -6
- package/dist/types/BorderDesign.js +0 -6
- package/dist/types/BorderDesign.js.map +1 -1
- package/dist/types/BreadcrumbsDesign.d.ts +0 -6
- package/dist/types/BreadcrumbsDesign.js +0 -6
- package/dist/types/BreadcrumbsDesign.js.map +1 -1
- package/dist/types/BreadcrumbsSeparatorStyle.d.ts +0 -10
- package/dist/types/BreadcrumbsSeparatorStyle.js +0 -10
- package/dist/types/BreadcrumbsSeparatorStyle.js.map +1 -1
- package/dist/types/BusyIndicatorSize.d.ts +0 -7
- package/dist/types/BusyIndicatorSize.js +0 -7
- package/dist/types/BusyIndicatorSize.js.map +1 -1
- package/dist/types/ButtonDesign.d.ts +0 -10
- package/dist/types/ButtonDesign.js +0 -10
- package/dist/types/ButtonDesign.js.map +1 -1
- package/dist/types/ButtonType.d.ts +0 -7
- package/dist/types/ButtonType.js +0 -7
- package/dist/types/ButtonType.js.map +1 -1
- package/dist/types/CalendarPickersMode.d.ts +6 -10
- package/dist/types/CalendarPickersMode.js +6 -10
- package/dist/types/CalendarPickersMode.js.map +1 -1
- package/dist/types/CalendarSelectionMode.d.ts +0 -7
- package/dist/types/CalendarSelectionMode.js +0 -7
- package/dist/types/CalendarSelectionMode.js.map +1 -1
- package/dist/types/CarouselArrowsPlacement.d.ts +0 -6
- package/dist/types/CarouselArrowsPlacement.js +0 -6
- package/dist/types/CarouselArrowsPlacement.js.map +1 -1
- package/dist/types/CarouselPageIndicatorStyle.d.ts +0 -6
- package/dist/types/CarouselPageIndicatorStyle.js +0 -6
- package/dist/types/CarouselPageIndicatorStyle.js.map +1 -1
- package/dist/types/ComboBoxFilter.d.ts +0 -8
- package/dist/types/ComboBoxFilter.js +0 -8
- package/dist/types/ComboBoxFilter.js.map +1 -1
- package/dist/types/HasPopup.d.ts +0 -9
- package/dist/types/HasPopup.js +0 -9
- package/dist/types/HasPopup.js.map +1 -1
- package/dist/types/IconDesign.d.ts +0 -12
- package/dist/types/IconDesign.js +0 -12
- package/dist/types/IconDesign.js.map +1 -1
- package/dist/types/InputType.d.ts +0 -10
- package/dist/types/InputType.js +0 -10
- package/dist/types/InputType.js.map +1 -1
- package/dist/types/LinkDesign.d.ts +0 -7
- package/dist/types/LinkDesign.js +0 -7
- package/dist/types/LinkDesign.js.map +1 -1
- package/dist/types/ListGrowingMode.d.ts +0 -7
- package/dist/types/ListGrowingMode.js +0 -7
- package/dist/types/ListGrowingMode.js.map +1 -1
- package/dist/types/ListItemType.d.ts +0 -8
- package/dist/types/ListItemType.js +0 -8
- package/dist/types/ListItemType.js.map +1 -1
- package/dist/types/ListMode.d.ts +0 -11
- package/dist/types/ListMode.js +0 -11
- package/dist/types/ListMode.js.map +1 -1
- package/dist/types/ListSeparators.d.ts +0 -7
- package/dist/types/ListSeparators.js +0 -7
- package/dist/types/ListSeparators.js.map +1 -1
- package/dist/types/MessageStripDesign.d.ts +0 -8
- package/dist/types/MessageStripDesign.js +0 -8
- package/dist/types/MessageStripDesign.js.map +1 -1
- package/dist/types/PanelAccessibleRole.d.ts +0 -7
- package/dist/types/PanelAccessibleRole.js +0 -7
- package/dist/types/PanelAccessibleRole.js.map +1 -1
- package/dist/types/PopoverHorizontalAlign.d.ts +0 -8
- package/dist/types/PopoverHorizontalAlign.js +0 -8
- package/dist/types/PopoverHorizontalAlign.js.map +1 -1
- package/dist/types/PopoverPlacementType.d.ts +0 -8
- package/dist/types/PopoverPlacementType.js +0 -8
- package/dist/types/PopoverPlacementType.js.map +1 -1
- package/dist/types/PopoverVerticalAlign.d.ts +0 -8
- package/dist/types/PopoverVerticalAlign.js +0 -8
- package/dist/types/PopoverVerticalAlign.js.map +1 -1
- package/dist/types/PopupAccessibleRole.d.ts +0 -7
- package/dist/types/PopupAccessibleRole.js +0 -7
- package/dist/types/PopupAccessibleRole.js.map +1 -1
- package/dist/types/Priority.d.ts +0 -8
- package/dist/types/Priority.js +0 -8
- package/dist/types/Priority.js.map +1 -1
- package/dist/types/SegmentedButtonMode.d.ts +0 -6
- package/dist/types/SegmentedButtonMode.js +0 -6
- package/dist/types/SegmentedButtonMode.js.map +1 -1
- package/dist/types/SemanticColor.d.ts +0 -9
- package/dist/types/SemanticColor.js +0 -9
- package/dist/types/SemanticColor.js.map +1 -1
- package/dist/types/SwitchDesign.d.ts +0 -6
- package/dist/types/SwitchDesign.js +0 -6
- package/dist/types/SwitchDesign.js.map +1 -1
- package/dist/types/TabContainerBackgroundDesign.d.ts +0 -7
- package/dist/types/TabContainerBackgroundDesign.js +0 -7
- package/dist/types/TabContainerBackgroundDesign.js.map +1 -1
- package/dist/types/TabContainerTabsPlacement.d.ts +0 -6
- package/dist/types/TabContainerTabsPlacement.js +0 -6
- package/dist/types/TabContainerTabsPlacement.js.map +1 -1
- package/dist/types/TabLayout.d.ts +0 -6
- package/dist/types/TabLayout.js +0 -6
- package/dist/types/TabLayout.js.map +1 -1
- package/dist/types/TableColumnPopinDisplay.d.ts +0 -6
- package/dist/types/TableColumnPopinDisplay.js +0 -6
- package/dist/types/TableColumnPopinDisplay.js.map +1 -1
- package/dist/types/TableGrowingMode.d.ts +0 -7
- package/dist/types/TableGrowingMode.js +0 -7
- package/dist/types/TableGrowingMode.js.map +1 -1
- package/dist/types/TableMode.d.ts +0 -7
- package/dist/types/TableMode.js +0 -7
- package/dist/types/TableMode.js.map +1 -1
- package/dist/types/TableRowType.d.ts +0 -6
- package/dist/types/TableRowType.js +0 -6
- package/dist/types/TableRowType.js.map +1 -1
- package/dist/types/TabsOverflowMode.d.ts +0 -6
- package/dist/types/TabsOverflowMode.js +0 -6
- package/dist/types/TabsOverflowMode.js.map +1 -1
- package/dist/types/TitleLevel.d.ts +0 -10
- package/dist/types/TitleLevel.js +0 -10
- package/dist/types/TitleLevel.js.map +1 -1
- package/dist/types/ToastPlacement.d.ts +0 -13
- package/dist/types/ToastPlacement.js +0 -13
- package/dist/types/ToastPlacement.js.map +1 -1
- package/dist/types/ToolbarAlign.d.ts +2 -9
- package/dist/types/ToolbarAlign.js +2 -9
- package/dist/types/ToolbarAlign.js.map +1 -1
- package/dist/types/ToolbarItemOverflowBehavior.d.ts +1 -9
- package/dist/types/ToolbarItemOverflowBehavior.js +1 -9
- package/dist/types/ToolbarItemOverflowBehavior.js.map +1 -1
- package/dist/types/WrappingType.d.ts +0 -6
- package/dist/types/WrappingType.js +0 -6
- package/dist/types/WrappingType.js.map +1 -1
- package/package.json +9 -9
- package/src/Badge.hbs +26 -5
- package/src/NavigationMenu.hbs +159 -0
- package/src/i18n/messagebundle.properties +22 -1
- package/src/themes/Badge.css +505 -39
- package/src/themes/NavigationMenu.css +69 -0
- package/src/themes/base/Badge-parameters.css +106 -3
- package/src/themes/sap_belize/BusyIndicator-parameters.css +5 -0
- package/src/themes/sap_belize/parameters-bundle.css +1 -1
- package/src/themes/sap_horizon/Badge-parameters.css +3 -5
- package/src/themes/sap_horizon_dark/Badge-parameters.css +3 -5
- package/src/themes/sap_horizon_hcb/Badge-parameters.css +108 -5
- package/src/themes/sap_horizon_hcw/Badge-parameters.css +108 -2
- package/dist/api.json +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateRangePicker.js","sourceRoot":"","sources":["../src/DateRangePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport modifyDateBy from \"@ui5/webcomponents-localization/dist/dates/modifyDateBy.js\";\nimport getTodayUTCTimestamp from \"@ui5/webcomponents-localization/dist/dates/getTodayUTCTimestamp.js\";\nimport { DATERANGE_DESCRIPTION } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport DateRangePickerCss from \"./generated/themes/DateRangePicker.css.js\";\nimport DatePicker from \"./DatePicker.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\n\nimport type {\n\tDatePickerChangeEventDetail as DateRangePickerChangeEventDetail,\n\tDatePickerInputEventDetail as DateRangePickerInputEventDetail,\n} from \"./DatePicker.js\";\nimport type { CalendarSelectedDatesChangeEventDetail } from \"./Calendar.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n * The DateRangePicker enables the users to enter a localized date range using touch, mouse, keyboard input, or by selecting a date range in the calendar.\n *\n * <h3>Usage</h3>\n * The user can enter a date by:\n * Using the calendar that opens in a popup or typing it in directly in the input field (not available for mobile devices).\n * For the <code>ui5-daterange-picker</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/DateRangePicker.js\";</code>\n *\n * <h3>Keyboard Handling</h3>\n * The <code>ui5-daterange-picker</code> provides advanced keyboard handling.\n * <br>\n *\n * When the <code>ui5-daterange-picker</code> input field is focused the user can\n * increment or decrement respectively the range start or end date, depending on where the cursor is.\n * The following shortcuts are available:\n * <br>\n * <ul>\n * <li>[PAGEDOWN] - Decrements the corresponding day of the month by one</li>\n * <li>[SHIFT] + [PAGEDOWN] - Decrements the corresponding month by one</li>\n * <li>[SHIFT] + [CTRL] + [PAGEDOWN] - Decrements the corresponding year by one</li>\n * <li>[PAGEUP] - Increments the corresponding day of the month by one</li>\n * <li>[SHIFT] + [PAGEUP] - Increments the corresponding month by one</li>\n * <li>[SHIFT] + [CTRL] + [PAGEUP] - Increments the corresponding year by one</li>\n * </ul>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.DateRangePicker\n * @extends sap.ui.webc.main.DatePicker\n * @tagname ui5-daterange-picker\n * @since 1.0.0-rc.8\n * @public\n */\n@customElement({\n\ttag: \"ui5-daterange-picker\",\n\tstyles: [DatePicker.styles, DateRangePickerCss],\n})\nclass DateRangePicker extends DatePicker {\n\t /**\n\t * Determines the symbol which separates the dates.\n\t * If not supplied, the default time interval delimiter for the current locale will be used.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.DateRangePicker.prototype.delimiter\n\t * @defaultvalue \"-\"\n\t * @public\n\t */\n\t@property({ defaultValue: \"-\" })\n\tdelimiter!: string;\n\n\t /**\n\t * The first date in the range during selection (this is a temporary value, not the first date in the value range)\n\t *\n\t * @private\n\t */\n\t@property()\n\t_tempValue!: string;\n\n\tprivate _prevDelimiter: string | null;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._prevDelimiter = null;\n\t}\n\n\t/**\n\t * <b>Note:</b> The getter method is inherited and not supported. If called it will return an empty value.\n\t *\n\t * @readonly\n\t * @type {Date}\n\t * @public\n\t * @name sap.ui.webc.main.DateRangePicker.prototype.dateValue\n\t */\n\tget dateValue() {\n\t\treturn null;\n\t}\n\n\t/**\n\t * <b>Note:</b> The getter method is inherited and not supported. If called it will return an empty value.\n\t *\n\t * @readonly\n\t * @type {Date}\n\t * @public\n\t * @name sap.ui.webc.main.DateRangePicker.prototype.dateValueUTC\n\t */\n\tget dateValueUTC() {\n\t\treturn null;\n\t}\n\n\tget _startDateTimestamp() {\n\t\treturn this._extractFirstTimestamp(this.value);\n\t}\n\n\tget _endDateTimestamp() {\n\t\treturn this._extractLastTimestamp(this.value);\n\t}\n\n\tget _tempTimestamp() {\n\t\treturn this._tempValue && (this.getFormat().parse(this._tempValue, true) as Date).getTime() / 1000;\n\t}\n\n\t/**\n\t * Required by DatePicker.js\n\t * @override\n\t */\n\tget _calendarSelectionMode() {\n\t\treturn \"Range\";\n\t}\n\n\t/**\n\t * Required by DatePicker.js - set the calendar focus on the first selected date (or today if not set)\n\t * @override\n\t */\n\tget _calendarTimestamp() {\n\t\treturn this._tempTimestamp || this._startDateTimestamp || getTodayUTCTimestamp(this._primaryCalendarType);\n\t}\n\n\t/**\n\t * Required by DatePicker.js\n\t * @override\n\t */\n\tget _calendarSelectedDates() {\n\t\tif (this._tempValue) {\n\t\t\treturn [this._tempValue];\n\t\t}\n\t\tif (this.value && this._checkValueValidity(this.value)) {\n\t\t\treturn this._splitValueByDelimiter(this.value);\n\t\t}\n\t\treturn [];\n\t}\n\n\t/**\n\t * Returns the start date of the currently selected range as JavaScript Date instance.\n\t *\n\t * @readonly\n\t * @type {Date}\n\t * @public\n\t * @name sap.ui.webc.main.DateRangePicker.prototype.startDateValue\n\t */\n\tget startDateValue() {\n\t\treturn CalendarDate.fromTimestamp(this._startDateTimestamp! * 1000).toLocalJSDate();\n\t}\n\n\t/**\n\t * Returns the end date of the currently selected range as JavaScript Date instance.\n\t *\n\t * @readonly\n\t * @type {Date}\n\t * @public\n\t * @name sap.ui.webc.main.DateRangePicker.prototype.endDateValue\n\t */\n\tget endDateValue() {\n\t\treturn CalendarDate.fromTimestamp(this._endDateTimestamp! * 1000).toLocalJSDate();\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _placeholder() {\n\t\treturn this.placeholder !== undefined ? this.placeholder : `${this._displayFormat} ${this._effectiveDelimiter} ${this._displayFormat}`;\n\t}\n\n\tget dateAriaDescription() {\n\t\treturn DateRangePicker.i18nBundle.getText(DATERANGE_DESCRIPTION);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tasync _onInputSubmit() {\n\t\tconst input = this._getInput();\n\t\tconst caretPos = input.getCaretPosition();\n\t\tawait renderFinished();\n\t\tinput.setCaretPosition(caretPos); // Return the caret on the previous position after rendering\n\t}\n\n\t/**\n\t * @override\n\t */\n\t onResponsivePopoverAfterClose() {\n\t\tthis._tempValue = \"\"; // reset _tempValue on popover close\n\t\tsuper.onResponsivePopoverAfterClose();\n\t}\n\n\t/**\n\t * @override\n\t */\n\tisValid(value: string): boolean {\n\t\tconst parts = this._splitValueByDelimiter(value);\n\t\treturn parts.length <= 2 && parts.every(dateString => super.isValid(dateString)); // must be at most 2 dates and each must be valid\n\t}\n\n\t/**\n\t * @override\n\t */\n\tisInValidRange(value: string): boolean {\n\t\treturn this._splitValueByDelimiter(value).every(dateString => super.isInValidRange(dateString));\n\t}\n\n\t/**\n\t * Extract both dates as timestamps, flip if necessary, and build (which will use the desired format so we enforce the format too)\n\t * @override\n\t */\n\tnormalizeValue(value: string) {\n\t\tconst firstDateTimestamp = this._extractFirstTimestamp(value);\n\t\tconst lastDateTimestamp = this._extractLastTimestamp(value);\n\t\tif (firstDateTimestamp && lastDateTimestamp && firstDateTimestamp > lastDateTimestamp) { // if both are timestamps (not undefined), flip if necessary\n\t\t\treturn this._buildValue(lastDateTimestamp, firstDateTimestamp);\n\t\t}\n\t\treturn this._buildValue(firstDateTimestamp, lastDateTimestamp);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tonSelectedDatesChange(event: CustomEvent<CalendarSelectedDatesChangeEventDetail>) {\n\t\tevent.preventDefault(); // never let the calendar update its own dates, the parent component controls them\n\t\tconst values = event.detail.values;\n\n\t\tif (values.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (values.length === 1) { // Do nothing until the user selects 2 dates, we don't change any state at all for one date\n\t\t\tthis._tempValue = values[0];\n\t\t\treturn;\n\t\t}\n\t\tconst newValue = this._buildValue(event.detail.dates[0], event.detail.dates[1]); // the value will be normalized so we don't need to order them here\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t\tthis.closePicker();\n\t}\n\n\t/**\n\t * @override\n\t */\n\tasync _modifyDateValue(amount: number, unit: string, preserveDate?: boolean) {\n\t\tif (!this._endDateTimestamp) { // If empty or only one date -> treat as datepicker entirely\n\t\t\treturn super._modifyDateValue(amount, unit, preserveDate);\n\t\t}\n\n\t\tconst input = this._getInput();\n\t\tlet caretPos: number = input.getCaretPosition()!; // caret position is always number for input of type text;\n\t\tlet newValue: string;\n\n\t\tif (caretPos <= this.value.indexOf(this._effectiveDelimiter)) { // The user is focusing the first date -> change it and keep the second date\n\t\t\tconst startDateModified = modifyDateBy(CalendarDate.fromTimestamp(this._startDateTimestamp! * 1000), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\t\tconst newStartDateTimestamp = startDateModified.valueOf() / 1000;\n\t\t\tif (newStartDateTimestamp > this._endDateTimestamp) { // dates flipped -> move the caret to the same position but on the last date\n\t\t\t\tcaretPos += Math.ceil(this.value.length / 2);\n\t\t\t}\n\t\t\tnewValue = this._buildValue(newStartDateTimestamp, this._endDateTimestamp); // the value will be normalized so we don't try to order them here\n\t\t} else {\n\t\t\tconst endDateModified = modifyDateBy(CalendarDate.fromTimestamp(this._endDateTimestamp * 1000), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\t\tconst newEndDateTimestamp = endDateModified.valueOf() / 1000;\n\t\t\tnewValue = this._buildValue(this._startDateTimestamp, newEndDateTimestamp); // the value will be normalized so we don't try to order them here\n\t\t\tif (newEndDateTimestamp < this._startDateTimestamp!) { // dates flipped -> move the caret to the same position but on the first date\n\t\t\t\tcaretPos -= Math.ceil(this.value.length / 2);\n\t\t\t}\n\t\t}\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\n\t\tawait renderFinished();\n\t\tinput.setCaretPosition(caretPos); // Return the caret to the previous (or the adjusted, if dates flipped) position after rendering\n\t}\n\n\tget _effectiveDelimiter(): string {\n\t\tconst ctor = this.constructor as typeof DateRangePicker;\n\t\treturn this.delimiter || (ctor.getMetadata().getProperties().delimiter.defaultValue) as string;\n\t}\n\n\t_splitValueByDelimiter(value: string) {\n\t\tconst valuesArray: Array<string> = [];\n\t\tconst partsArray = value.split(this._prevDelimiter || this._effectiveDelimiter);\n\n\t\t// if format successfully parse the value, the value contains only single date\n\t\tif (this.getFormat().parse(value)) {\n\t\t\tvaluesArray[0] = partsArray.join(this._effectiveDelimiter);\n\t\t\tvaluesArray[1] = \"\";\n\t\t} else {\n\t\t\tvaluesArray[0] = partsArray.slice(0, partsArray.length / 2).join(this._effectiveDelimiter);\n\t\t\tvaluesArray[1] = partsArray.slice(partsArray.length / 2).join(this._effectiveDelimiter);\n\t\t}\n\n\t\treturn valuesArray;\n\t}\n\n\t/**\n\t * Returns a UTC timestamp, representing the first date in the value string or undefined if the value is empty\n\t * @private\n\t */\n\t_extractFirstTimestamp(value: string) {\n\t\tif (!value || !this._checkValueValidity(value)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst dateStrings = this._splitValueByDelimiter(value); // at least one item guaranteed due to the checks above (non-empty and valid)\n\n\t\tconst parsedDate = this.getFormat().parse(dateStrings[0], true) as Date;\n\t\treturn parsedDate.getTime() / 1000;\n\t}\n\n\t/**\n\t * Returns a UTC timestamp, representing the last date in the value string or undefined if the value is empty or there is just one date\n\t * @private\n\t */\n\t_extractLastTimestamp(value: string) {\n\t\tif (!value || !this._checkValueValidity(value)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst dateStrings = this._splitValueByDelimiter(value);\n\t\tif (dateStrings[1]) {\n\t\t\tconst parsedDate = this.getFormat().parse(dateStrings[1], true) as Date;\n\t\t\treturn parsedDate.getTime() / 1000;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\t/**\n\t * Builds a string value out of two UTC timestamps - this method is the counterpart to _extractFirstTimestamp/_extractLastTimestamp\n\t * @private\n\t */\n\t_buildValue(firstDateTimestamp: number | undefined, lastDateTimestamp: number | undefined) {\n\t\tthis._prevDelimiter = this._effectiveDelimiter;\n\t\tif (firstDateTimestamp) {\n\t\t\tconst firstDateString = this._getStringFromTimestamp(firstDateTimestamp * 1000);\n\n\t\t\tif (!lastDateTimestamp) {\n\t\t\t\treturn firstDateString;\n\t\t\t}\n\n\t\t\tconst lastDateString = this._getStringFromTimestamp(lastDateTimestamp * 1000);\n\t\t\treturn `${firstDateString} ${this._effectiveDelimiter} ${lastDateString}`;\n\t\t}\n\n\t\treturn \"\";\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _calendarPickersMode() {\n\t\treturn CalendarPickersMode.DAY_MONTH_YEAR;\n\t}\n}\n\nDateRangePicker.define();\n\nexport default DateRangePicker;\nexport type {\n\tDateRangePickerChangeEventDetail,\n\tDateRangePickerInputEventDetail,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"DateRangePicker.js","sourceRoot":"","sources":["../src/DateRangePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport modifyDateBy from \"@ui5/webcomponents-localization/dist/dates/modifyDateBy.js\";\nimport getTodayUTCTimestamp from \"@ui5/webcomponents-localization/dist/dates/getTodayUTCTimestamp.js\";\nimport { DATERANGE_DESCRIPTION } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport DateRangePickerCss from \"./generated/themes/DateRangePicker.css.js\";\nimport DatePicker from \"./DatePicker.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\n\nimport type {\n\tDatePickerChangeEventDetail as DateRangePickerChangeEventDetail,\n\tDatePickerInputEventDetail as DateRangePickerInputEventDetail,\n} from \"./DatePicker.js\";\nimport type { CalendarSelectedDatesChangeEventDetail } from \"./Calendar.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n * The DateRangePicker enables the users to enter a localized date range using touch, mouse, keyboard input, or by selecting a date range in the calendar.\n *\n * <h3>Usage</h3>\n * The user can enter a date by:\n * Using the calendar that opens in a popup or typing it in directly in the input field (not available for mobile devices).\n * For the <code>ui5-daterange-picker</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/DateRangePicker.js\";</code>\n *\n * <h3>Keyboard Handling</h3>\n * The <code>ui5-daterange-picker</code> provides advanced keyboard handling.\n * <br>\n *\n * When the <code>ui5-daterange-picker</code> input field is focused the user can\n * increment or decrement respectively the range start or end date, depending on where the cursor is.\n * The following shortcuts are available:\n * <br>\n * <ul>\n * <li>[PAGEDOWN] - Decrements the corresponding day of the month by one</li>\n * <li>[SHIFT] + [PAGEDOWN] - Decrements the corresponding month by one</li>\n * <li>[SHIFT] + [CTRL] + [PAGEDOWN] - Decrements the corresponding year by one</li>\n * <li>[PAGEUP] - Increments the corresponding day of the month by one</li>\n * <li>[SHIFT] + [PAGEUP] - Increments the corresponding month by one</li>\n * <li>[SHIFT] + [CTRL] + [PAGEUP] - Increments the corresponding year by one</li>\n * </ul>\n *\n * @constructor\n * @extends DatePicker\n * @since 1.0.0-rc.8\n * @public\n */\n@customElement({\n\ttag: \"ui5-daterange-picker\",\n\tstyles: [DatePicker.styles, DateRangePickerCss],\n})\nclass DateRangePicker extends DatePicker {\n\t /**\n\t * Determines the symbol which separates the dates.\n\t * If not supplied, the default time interval delimiter for the current locale will be used.\n\t *\n\t * @default \"-\"\n\t * @public\n\t */\n\t@property({ defaultValue: \"-\" })\n\tdelimiter!: string;\n\n\t /**\n\t * The first date in the range during selection (this is a temporary value, not the first date in the value range)\n\t *\n\t * @private\n\t */\n\t@property()\n\t_tempValue!: string;\n\n\tprivate _prevDelimiter: string | null;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._prevDelimiter = null;\n\t}\n\n\t/**\n\t * <b>Note:</b> The getter method is inherited and not supported. If called it will return an empty value.\n\t *\n\t * @public\n\t * @default null\n\t */\n\tget dateValue(): Date | null {\n\t\treturn null;\n\t}\n\n\t/**\n\t * <b>Note:</b> The getter method is inherited and not supported. If called it will return an empty value.\n\t *\n\t * @public\n\t * @default null\n\t */\n\tget dateValueUTC(): Date | null {\n\t\treturn null;\n\t}\n\n\tget _startDateTimestamp() {\n\t\treturn this._extractFirstTimestamp(this.value);\n\t}\n\n\tget _endDateTimestamp() {\n\t\treturn this._extractLastTimestamp(this.value);\n\t}\n\n\tget _tempTimestamp() {\n\t\treturn this._tempValue && (this.getFormat().parse(this._tempValue, true) as Date).getTime() / 1000;\n\t}\n\n\t/**\n\t * Required by DatePicker.js\n\t * @override\n\t */\n\tget _calendarSelectionMode() {\n\t\treturn \"Range\";\n\t}\n\n\t/**\n\t * Required by DatePicker.js - set the calendar focus on the first selected date (or today if not set)\n\t * @override\n\t */\n\tget _calendarTimestamp() {\n\t\treturn this._tempTimestamp || this._startDateTimestamp || getTodayUTCTimestamp(this._primaryCalendarType);\n\t}\n\n\t/**\n\t * Required by DatePicker.js\n\t * @override\n\t */\n\tget _calendarSelectedDates() {\n\t\tif (this._tempValue) {\n\t\t\treturn [this._tempValue];\n\t\t}\n\t\tif (this.value && this._checkValueValidity(this.value)) {\n\t\t\treturn this._splitValueByDelimiter(this.value);\n\t\t}\n\t\treturn [];\n\t}\n\n\t/**\n\t * Returns the start date of the currently selected range as JavaScript Date instance.\n\t *\n\t * @public\n\t * @default null\n\t */\n\tget startDateValue(): Date | null {\n\t\treturn CalendarDate.fromTimestamp(this._startDateTimestamp! * 1000).toLocalJSDate();\n\t}\n\n\t/**\n\t * Returns the end date of the currently selected range as JavaScript Date instance.\n\t *\n\t * @public\n\t * @default null\n\t */\n\tget endDateValue(): Date | null {\n\t\treturn CalendarDate.fromTimestamp(this._endDateTimestamp! * 1000).toLocalJSDate();\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _placeholder() {\n\t\treturn this.placeholder !== undefined ? this.placeholder : `${this._displayFormat} ${this._effectiveDelimiter} ${this._displayFormat}`;\n\t}\n\n\tget dateAriaDescription() {\n\t\treturn DateRangePicker.i18nBundle.getText(DATERANGE_DESCRIPTION);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tasync _onInputSubmit() {\n\t\tconst input = this._getInput();\n\t\tconst caretPos = input.getCaretPosition();\n\t\tawait renderFinished();\n\t\tinput.setCaretPosition(caretPos); // Return the caret on the previous position after rendering\n\t}\n\n\t/**\n\t * @override\n\t */\n\t onResponsivePopoverAfterClose() {\n\t\tthis._tempValue = \"\"; // reset _tempValue on popover close\n\t\tsuper.onResponsivePopoverAfterClose();\n\t}\n\n\t/**\n\t * @override\n\t */\n\tisValid(value: string): boolean {\n\t\tconst parts = this._splitValueByDelimiter(value);\n\t\treturn parts.length <= 2 && parts.every(dateString => super.isValid(dateString)); // must be at most 2 dates and each must be valid\n\t}\n\n\t/**\n\t * @override\n\t */\n\tisInValidRange(value: string): boolean {\n\t\treturn this._splitValueByDelimiter(value).every(dateString => super.isInValidRange(dateString));\n\t}\n\n\t/**\n\t * Extract both dates as timestamps, flip if necessary, and build (which will use the desired format so we enforce the format too)\n\t * @override\n\t */\n\tnormalizeValue(value: string) {\n\t\tconst firstDateTimestamp = this._extractFirstTimestamp(value);\n\t\tconst lastDateTimestamp = this._extractLastTimestamp(value);\n\t\tif (firstDateTimestamp && lastDateTimestamp && firstDateTimestamp > lastDateTimestamp) { // if both are timestamps (not undefined), flip if necessary\n\t\t\treturn this._buildValue(lastDateTimestamp, firstDateTimestamp);\n\t\t}\n\t\treturn this._buildValue(firstDateTimestamp, lastDateTimestamp);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tonSelectedDatesChange(event: CustomEvent<CalendarSelectedDatesChangeEventDetail>) {\n\t\tevent.preventDefault(); // never let the calendar update its own dates, the parent component controls them\n\t\tconst values = event.detail.values;\n\n\t\tif (values.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (values.length === 1) { // Do nothing until the user selects 2 dates, we don't change any state at all for one date\n\t\t\tthis._tempValue = values[0];\n\t\t\treturn;\n\t\t}\n\t\tconst newValue = this._buildValue(event.detail.dates[0], event.detail.dates[1]); // the value will be normalized so we don't need to order them here\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t\tthis.closePicker();\n\t}\n\n\t/**\n\t * @override\n\t */\n\tasync _modifyDateValue(amount: number, unit: string, preserveDate?: boolean) {\n\t\tif (!this._endDateTimestamp) { // If empty or only one date -> treat as datepicker entirely\n\t\t\treturn super._modifyDateValue(amount, unit, preserveDate);\n\t\t}\n\n\t\tconst input = this._getInput();\n\t\tlet caretPos: number = input.getCaretPosition()!; // caret position is always number for input of type text;\n\t\tlet newValue: string;\n\n\t\tif (caretPos <= this.value.indexOf(this._effectiveDelimiter)) { // The user is focusing the first date -> change it and keep the second date\n\t\t\tconst startDateModified = modifyDateBy(CalendarDate.fromTimestamp(this._startDateTimestamp! * 1000), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\t\tconst newStartDateTimestamp = startDateModified.valueOf() / 1000;\n\t\t\tif (newStartDateTimestamp > this._endDateTimestamp) { // dates flipped -> move the caret to the same position but on the last date\n\t\t\t\tcaretPos += Math.ceil(this.value.length / 2);\n\t\t\t}\n\t\t\tnewValue = this._buildValue(newStartDateTimestamp, this._endDateTimestamp); // the value will be normalized so we don't try to order them here\n\t\t} else {\n\t\t\tconst endDateModified = modifyDateBy(CalendarDate.fromTimestamp(this._endDateTimestamp * 1000), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\t\tconst newEndDateTimestamp = endDateModified.valueOf() / 1000;\n\t\t\tnewValue = this._buildValue(this._startDateTimestamp, newEndDateTimestamp); // the value will be normalized so we don't try to order them here\n\t\t\tif (newEndDateTimestamp < this._startDateTimestamp!) { // dates flipped -> move the caret to the same position but on the first date\n\t\t\t\tcaretPos -= Math.ceil(this.value.length / 2);\n\t\t\t}\n\t\t}\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\n\t\tawait renderFinished();\n\t\tinput.setCaretPosition(caretPos); // Return the caret to the previous (or the adjusted, if dates flipped) position after rendering\n\t}\n\n\tget _effectiveDelimiter(): string {\n\t\tconst ctor = this.constructor as typeof DateRangePicker;\n\t\treturn this.delimiter || (ctor.getMetadata().getProperties().delimiter.defaultValue) as string;\n\t}\n\n\t_splitValueByDelimiter(value: string) {\n\t\tconst valuesArray: Array<string> = [];\n\t\tconst partsArray = value.split(this._prevDelimiter || this._effectiveDelimiter);\n\n\t\t// if format successfully parse the value, the value contains only single date\n\t\tif (this.getFormat().parse(value)) {\n\t\t\tvaluesArray[0] = partsArray.join(this._effectiveDelimiter);\n\t\t\tvaluesArray[1] = \"\";\n\t\t} else {\n\t\t\tvaluesArray[0] = partsArray.slice(0, partsArray.length / 2).join(this._effectiveDelimiter);\n\t\t\tvaluesArray[1] = partsArray.slice(partsArray.length / 2).join(this._effectiveDelimiter);\n\t\t}\n\n\t\treturn valuesArray;\n\t}\n\n\t/**\n\t * Returns a UTC timestamp, representing the first date in the value string or undefined if the value is empty\n\t * @private\n\t */\n\t_extractFirstTimestamp(value: string) {\n\t\tif (!value || !this._checkValueValidity(value)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst dateStrings = this._splitValueByDelimiter(value); // at least one item guaranteed due to the checks above (non-empty and valid)\n\n\t\tconst parsedDate = this.getFormat().parse(dateStrings[0], true) as Date;\n\t\treturn parsedDate.getTime() / 1000;\n\t}\n\n\t/**\n\t * Returns a UTC timestamp, representing the last date in the value string or undefined if the value is empty or there is just one date\n\t * @private\n\t */\n\t_extractLastTimestamp(value: string) {\n\t\tif (!value || !this._checkValueValidity(value)) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst dateStrings = this._splitValueByDelimiter(value);\n\t\tif (dateStrings[1]) {\n\t\t\tconst parsedDate = this.getFormat().parse(dateStrings[1], true) as Date;\n\t\t\treturn parsedDate.getTime() / 1000;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\t/**\n\t * Builds a string value out of two UTC timestamps - this method is the counterpart to _extractFirstTimestamp/_extractLastTimestamp\n\t * @private\n\t */\n\t_buildValue(firstDateTimestamp: number | undefined, lastDateTimestamp: number | undefined) {\n\t\tthis._prevDelimiter = this._effectiveDelimiter;\n\t\tif (firstDateTimestamp) {\n\t\t\tconst firstDateString = this._getStringFromTimestamp(firstDateTimestamp * 1000);\n\n\t\t\tif (!lastDateTimestamp) {\n\t\t\t\treturn firstDateString;\n\t\t\t}\n\n\t\t\tconst lastDateString = this._getStringFromTimestamp(lastDateTimestamp * 1000);\n\t\t\treturn `${firstDateString} ${this._effectiveDelimiter} ${lastDateString}`;\n\t\t}\n\n\t\treturn \"\";\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _calendarPickersMode() {\n\t\treturn CalendarPickersMode.DAY_MONTH_YEAR;\n\t}\n}\n\nDateRangePicker.define();\n\nexport default DateRangePicker;\nexport type {\n\tDateRangePickerChangeEventDetail,\n\tDateRangePickerInputEventDetail,\n};\n"]}
|
package/dist/DateTimePicker.d.ts
CHANGED
|
@@ -75,10 +75,7 @@ type PreviewValues = {
|
|
|
75
75
|
* <code>import "@ui5/webcomponents/dist/DateTimePicker.js";</code>
|
|
76
76
|
*
|
|
77
77
|
* @constructor
|
|
78
|
-
* @
|
|
79
|
-
* @alias sap.ui.webc.main.DateTimePicker
|
|
80
|
-
* @extends sap.ui.webc.main.DatePicker
|
|
81
|
-
* @tagname ui5-datetime-picker
|
|
78
|
+
* @extends DatePicker
|
|
82
79
|
* @since 1.0.0-rc.7
|
|
83
80
|
* @public
|
|
84
81
|
*/
|
|
@@ -89,8 +86,7 @@ declare class DateTimePicker extends DatePicker {
|
|
|
89
86
|
*
|
|
90
87
|
* <br><br>
|
|
91
88
|
* <b>Note:</b> The date view would be displayed by default.
|
|
92
|
-
* @
|
|
93
|
-
* @defaultvalue false
|
|
89
|
+
* @default false
|
|
94
90
|
* @private
|
|
95
91
|
*/
|
|
96
92
|
_showTimeView: boolean;
|
|
@@ -99,8 +95,7 @@ declare class DateTimePicker extends DatePicker {
|
|
|
99
95
|
* The phone mode turns on when the component is used on small screens or phone devices.
|
|
100
96
|
* In phone mode the user can see either the calendar view, or the time view
|
|
101
97
|
* and can switch between the views via toggle buttons.
|
|
102
|
-
* @
|
|
103
|
-
* @defaultvalue false
|
|
98
|
+
* @default false
|
|
104
99
|
* @private
|
|
105
100
|
*/
|
|
106
101
|
_phoneMode: boolean;
|
|
@@ -129,6 +124,7 @@ declare class DateTimePicker extends DatePicker {
|
|
|
129
124
|
*/
|
|
130
125
|
/**
|
|
131
126
|
* Opens the picker.
|
|
127
|
+
*
|
|
132
128
|
* @public
|
|
133
129
|
*/
|
|
134
130
|
openPicker(): Promise<void>;
|
|
@@ -163,6 +159,7 @@ declare class DateTimePicker extends DatePicker {
|
|
|
163
159
|
get dateAriaDescription(): string;
|
|
164
160
|
/**
|
|
165
161
|
* Defines whether the dialog on mobile should have header
|
|
162
|
+
*
|
|
166
163
|
* @private
|
|
167
164
|
*/
|
|
168
165
|
get _shouldHideHeader(): boolean;
|
|
@@ -192,7 +189,8 @@ declare class DateTimePicker extends DatePicker {
|
|
|
192
189
|
/**
|
|
193
190
|
* Handles the date/time switch available in <code>phoneMode</code> to switch
|
|
194
191
|
* between the date and time views.
|
|
195
|
-
*
|
|
192
|
+
*
|
|
193
|
+
* @param e
|
|
196
194
|
*/
|
|
197
195
|
_dateTimeSwitchChange(e: CustomEvent): void;
|
|
198
196
|
/**
|
package/dist/DateTimePicker.js
CHANGED
|
@@ -92,10 +92,7 @@ const PHONE_MODE_BREAKPOINT = 640; // px
|
|
|
92
92
|
* <code>import "@ui5/webcomponents/dist/DateTimePicker.js";</code>
|
|
93
93
|
*
|
|
94
94
|
* @constructor
|
|
95
|
-
* @
|
|
96
|
-
* @alias sap.ui.webc.main.DateTimePicker
|
|
97
|
-
* @extends sap.ui.webc.main.DatePicker
|
|
98
|
-
* @tagname ui5-datetime-picker
|
|
95
|
+
* @extends DatePicker
|
|
99
96
|
* @since 1.0.0-rc.7
|
|
100
97
|
* @public
|
|
101
98
|
*/
|
|
@@ -126,6 +123,7 @@ let DateTimePicker = DateTimePicker_1 = class DateTimePicker extends DatePicker
|
|
|
126
123
|
*/
|
|
127
124
|
/**
|
|
128
125
|
* Opens the picker.
|
|
126
|
+
*
|
|
129
127
|
* @public
|
|
130
128
|
*/
|
|
131
129
|
async openPicker() {
|
|
@@ -197,6 +195,7 @@ let DateTimePicker = DateTimePicker_1 = class DateTimePicker extends DatePicker
|
|
|
197
195
|
}
|
|
198
196
|
/**
|
|
199
197
|
* Defines whether the dialog on mobile should have header
|
|
198
|
+
*
|
|
200
199
|
* @private
|
|
201
200
|
*/
|
|
202
201
|
get _shouldHideHeader() {
|
|
@@ -263,7 +262,8 @@ let DateTimePicker = DateTimePicker_1 = class DateTimePicker extends DatePicker
|
|
|
263
262
|
/**
|
|
264
263
|
* Handles the date/time switch available in <code>phoneMode</code> to switch
|
|
265
264
|
* between the date and time views.
|
|
266
|
-
*
|
|
265
|
+
*
|
|
266
|
+
* @param e
|
|
267
267
|
*/
|
|
268
268
|
_dateTimeSwitchChange(e) {
|
|
269
269
|
const target = e.target;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateTimePicker.js","sourceRoot":"","sources":["../src/DateTimePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport modifyDateBy from \"@ui5/webcomponents-localization/dist/dates/modifyDateBy.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport \"@ui5/webcomponents-icons/dist/date-time.js\";\nimport Button from \"./Button.js\";\nimport type ResponsivePopover from \"./ResponsivePopover.js\";\nimport ToggleButton from \"./ToggleButton.js\";\nimport SegmentedButton from \"./SegmentedButton.js\";\nimport Calendar from \"./Calendar.js\";\nimport type { CalendarSelectedDatesChangeEventDetail } from \"./Calendar.js\";\nimport DatePicker from \"./DatePicker.js\";\nimport type {\n\tDatePickerChangeEventDetail as DateTimePickerChangeEventDetail,\n\tDatePickerInputEventDetail as DateTimePickerInputEventDetail,\n} from \"./DatePicker.js\";\nimport TimeSelection from \"./TimeSelection.js\";\nimport type { TimeSelectionChangeEventDetail, TimeSelectionSliderChangeEventDetail } from \"./TimeSelection.js\";\n\n// i18n texts\nimport {\n\tTIMEPICKER_SUBMIT_BUTTON,\n\tTIMEPICKER_CANCEL_BUTTON,\n\tDATETIME_DESCRIPTION,\n\tDATETIME_PICKER_DATE_BUTTON,\n\tDATETIME_PICKER_TIME_BUTTON,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Template\nimport DateTimePickerPopoverTemplate from \"./generated/templates/DateTimePickerPopoverTemplate.lit.js\";\n\n// Styles\nimport DateTimePickerCss from \"./generated/themes/DateTimePicker.css.js\";\nimport DateTimePickerPopoverCss from \"./generated/themes/DateTimePickerPopover.css.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\n\nconst PHONE_MODE_BREAKPOINT = 640; // px\n\ntype PreviewValues = {\n\ttimeSelectionValue?: string,\n\tcalendarTimestamp?: number,\n\tcalendarValue?: string,\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n * The <code>DateTimePicker</code> component alows users to select both date (day, month and year) and time (hours, minutes and seconds)\n * and for the purpose it consists of input field and Date/Time picker.\n *\n * <h3>Usage</h3>\n *\n * Use the <code>DateTimePicker</code> if you need a combined date and time input component.\n * Don't use it if you want to use either date, or time value.\n * In this case, use the <code>DatePicker</code> or the <code>TimePicker</code> components instead.\n * <br><br>\n * The user can set date/time by:\n * <ul>\n * <li>using the calendar and the time selectors</li>\n * <li>typing in the input field</li>\n * </ul>\n *\n * Programmatically, to set date/time for the <code>DateTimePicker</code>, use the <code>value</code> property\n *\n * <h3>Formatting</h3>\n *\n * The value entered by typing into the input field must fit to the used date/time format.\n * <br><br>\n * Supported format options are pattern-based on Unicode LDML Date Format notation.\n * For more information, see <ui5-link target=\"_blank\" href=\"https://unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\">UTS #35: Unicode Locale Data Markup Language</ui5-link>.\n * <br><br>\n * <b>Example:</b> the following format <code>dd/MM/yyyy, hh:mm:ss aa</code>\n * corresponds the <code>13/04/2020, 03:16:16 AM</code> value.\n * <br>\n * The small 'h' defines \"12\" hours format and the \"aa\" symbols - \"AM/PM\" time periods.\n *\n * <br><br>\n * <b>Example:</b> the following format <code>dd/MM/yyyy, HH:mm:ss</code>\n * corresponds the <code>13/04/2020, 15:16:16</code> value.\n * <br>\n * The capital 'H' indicates \"24\" hours format.\n *\n * <br><br>\n * <b>Note:</b> If the <code>formatPattern</code> does NOT include time,\n * the <code>DateTimePicker</code> will fallback to the default time format according to the locale.\n *\n * <br><br>\n * <b>Note:</b> If no placeholder is set to the <code>DateTimePicker</code>,\n * the current <code>formatPattern</code> is displayed as a placeholder.\n * If another placeholder is needed, it must be set or in case no placeholder is needed - it can be set to an empty string.\n *\n * <br><br>\n * <b>Note:</b> If the user input does NOT match the <code>formatPattern</code>,\n * the <code>DateTimePicker</code> makes an attempt to parse it based on the\n * locale settings.\n *\n * <h3>Responsive behavior</h3>\n *\n * The <code>DateTimePicker</code> is responsive and fully adapts to all devices.\n * For larger screens, such as tablet or desktop, it is displayed as a popover, while\n * on phone devices, it is displayed full screen.\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/DateTimePicker.js\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.DateTimePicker\n * @extends sap.ui.webc.main.DatePicker\n * @tagname ui5-datetime-picker\n * @since 1.0.0-rc.7\n * @public\n */\n@customElement({\n\ttag: \"ui5-datetime-picker\",\n\tstaticAreaTemplate: DateTimePickerPopoverTemplate,\n\tstyles: [\n\t\tDateTimePicker.styles,\n\t\tDateTimePickerCss,\n\t],\n\tstaticAreaStyles: [\n\t\tDatePicker.staticAreaStyles,\n\t\tDateTimePickerPopoverCss,\n\t],\n\tdependencies: [\n\t\t...DatePicker.dependencies,\n\t\tCalendar,\n\t\tButton,\n\t\tToggleButton,\n\t\tSegmentedButton,\n\t\tTimeSelection,\n\t],\n})\nclass DateTimePicker extends DatePicker {\n\t/**\n\t * Defines the visibility of the time view in <code>phoneMode</code>.\n\t * For more information, see the <code>phoneMode</code> property.\n\t *\n\t * <br><br>\n\t * <b>Note:</b> The date view would be displayed by default.\n\t * @type {boolean}\n\t * @defaultvalue false\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_showTimeView!: boolean;\n\n\t/**\n\t * Defines if the <code>DateTimePicker</code> should be displayed in phone mode.\n\t * The phone mode turns on when the component is used on small screens or phone devices.\n\t * In phone mode the user can see either the calendar view, or the time view\n\t * and can switch between the views via toggle buttons.\n\t * @type {boolean}\n\t * @defaultvalue false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_phoneMode!: boolean;\n\n\t/**\n\t * Selected, but not yet confirmed date/time\n\t * @private\n\t */\n\t@property({ type: Object })\n\t_previewValues!: PreviewValues;\n\n\t/**\n\t * @private\n\t */\n\t@property({ defaultValue: \"hours\" })\n\t_currentTimeSlider!: string;\n\n\t_handleResizeBound: ResizeObserverCallback;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._handleResizeBound = this._handleResize.bind(this);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tonResponsivePopoverAfterClose() {\n\t\tsuper.onResponsivePopoverAfterClose();\n\t\tthis._showTimeView = false;\n\t\tthis._previewValues = {};\n\t}\n\n\t/**\n\t * LIFECYCLE METHODS\n\t */\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(document.body, this._handleResizeBound);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(document.body, this._handleResizeBound);\n\t}\n\n\t/**\n\t * PUBLIC METHODS\n\t */\n\n\t/**\n\t * Opens the picker.\n\t * @public\n\t */\n\tasync openPicker() {\n\t\tawait super.openPicker();\n\t\tthis._currentTimeSlider = \"hours\";\n\t\tthis._previewValues.timeSelectionValue = this.value || this.getFormat().format(new Date());\n\t}\n\n\t/**\n\t * Read-only getters\n\t */\n\n\tget classes() {\n\t\treturn {\n\t\t\tpicker: {\n\t\t\t\t\"ui5-dt-picker-content--phone\": this.phone,\n\t\t\t},\n\t\t\tdateTimeView: {\n\t\t\t\t\"ui5-dt-cal--hidden\": this.phone && this.showTimeView,\n\t\t\t\t\"ui5-dt-time--hidden\": this.phone && this.showDateView,\n\t\t\t},\n\t\t\tfooter: {\n\t\t\t\t\"ui5-dt-picker-footer-time-hidden\": (this.phone && this.showTimeView) || (this.phone && this.showDateView),\n\t\t\t},\n\t\t};\n\t}\n\n\tget _formatPattern() {\n\t\tconst hasHours = !!this.formatPattern.match(/H/i);\n\t\tconst fallback = !this.formatPattern || !hasHours;\n\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\treturn fallback ? localeData.getCombinedDateTimePattern(\"medium\", \"medium\", this._primaryCalendarType) : this.formatPattern;\n\t}\n\n\tget _calendarTimestamp() {\n\t\treturn this._previewValues.calendarTimestamp ? this._previewValues.calendarTimestamp : super._calendarTimestamp;\n\t}\n\n\tget _calendarSelectedDates() {\n\t\treturn this._previewValues.calendarValue ? [this._previewValues.calendarValue] : super._calendarSelectedDates;\n\t}\n\n\tget _timeSelectionValue() {\n\t\treturn this._previewValues.timeSelectionValue ? this._previewValues.timeSelectionValue : this.value;\n\t}\n\n\tget openIconName() {\n\t\treturn \"date-time\";\n\t}\n\n\tget btnOKLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(TIMEPICKER_SUBMIT_BUTTON);\n\t}\n\n\tget btnCancelLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(TIMEPICKER_CANCEL_BUTTON);\n\t}\n\n\tget btnDateLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_PICKER_DATE_BUTTON);\n\t}\n\n\tget btnTimeLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_PICKER_TIME_BUTTON);\n\t}\n\n\tget showFooter() {\n\t\treturn true;\n\t}\n\n\tget showDateView() {\n\t\treturn this.phone ? !this._showTimeView : true;\n\t}\n\n\tget showTimeView() {\n\t\treturn this.phone ? this._showTimeView : true;\n\t}\n\n\tget phone() {\n\t\treturn super.phone || this._phoneMode;\n\t}\n\n\tget dateAriaDescription() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_DESCRIPTION);\n\t}\n\n\t/**\n\t * Defines whether the dialog on mobile should have header\n\t * @private\n\t */\n\tget _shouldHideHeader() {\n\t\treturn true;\n\t}\n\n\t/**\n\t * EVENT HANDLERS\n\t */\n\n\t/**\n\t * @override\n\t */\n\tonSelectedDatesChange(e: CustomEvent<CalendarSelectedDatesChangeEventDetail>) {\n\t\te.preventDefault();\n\t\t// @ts-ignore Needed for FF\n\t\tconst dateTimePickerContent = e.path ? e.path[1] : e.composedPath()[1];\n\t\tthis._previewValues = {\n\t\t\t...this._previewValues,\n\t\t\tcalendarTimestamp: e.detail.timestamp,\n\t\t\tcalendarValue: e.detail.values[0],\n\t\t\ttimeSelectionValue: dateTimePickerContent.lastChild.value,\n\t\t};\n\t}\n\n\tonTimeSelectionChange(e: CustomEvent<TimeSelectionChangeEventDetail>) {\n\t\tthis._previewValues = {\n\t\t\t...this._previewValues,\n\t\t\ttimeSelectionValue: e.detail.value,\n\t\t};\n\t}\n\n\tonTimeSliderChange(e: CustomEvent<TimeSelectionSliderChangeEventDetail>) {\n\t\tthis._currentTimeSlider = e.detail.slider;\n\t}\n\n\t/**\n\t * Handles document resize to switch between <code>phoneMode</code> and normal appearance.\n\t */\n\t_handleResize() {\n\t\tconst documentWidth = document.body.offsetWidth;\n\t\tconst toPhoneMode = documentWidth <= PHONE_MODE_BREAKPOINT;\n\t\tconst modeChange = (toPhoneMode && !this._phoneMode) || (!toPhoneMode && this._phoneMode); // XOR not allowed by lint\n\n\t\tif (modeChange) {\n\t\t\tthis._phoneMode = toPhoneMode;\n\t\t}\n\t}\n\n\tget _submitDisabled() {\n\t\treturn !this._calendarSelectedDates || !this._calendarSelectedDates.length;\n\t}\n\n\t/**\n\t * Handles clicking on the <code>submit</code> button, within the picker`s footer.\n\t */\n\t_submitClick() {\n\t\tconst selectedDate = this.getSelectedDateTime();\n\n\t\tconst value = this.getFormat().format(selectedDate);\n\t\tif (this.value !== value) {\n\t\t\tthis._updateValueAndFireEvents(value, true, [\"change\", \"value-changed\"]);\n\t\t}\n\n\t\tthis.closePicker();\n\t}\n\n\t/**\n\t * Handles clicking on the <code>cancel</code> button, within the picker`s footer,\n\t * that would disregard the user selection.\n\t */\n\t_cancelClick() {\n\t\tthis.closePicker();\n\t}\n\n\t/**\n\t * Handles the date/time switch available in <code>phoneMode</code> to switch\n\t * between the date and time views.\n\t * @param {Event} e\n\t */\n\t_dateTimeSwitchChange(e: CustomEvent) { // Note: fix when SegmentedButton is implemented in TS\n\t\tconst target = e.target as HTMLElement;\n\t\tthis._showTimeView = target.getAttribute(\"key\") === \"Time\";\n\t\tif (this._showTimeView) {\n\t\t\tthis._currentTimeSlider = \"hours\";\n\t\t}\n\t}\n\n\t/**\n\t * @override\n\t */\n\t_modifyDateValue(amount: number, unit: string, preserveDate: boolean) {\n\t\tif (!this.dateValue) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst modifiedDate = modifyDateBy(CalendarDate.fromLocalJSDate(this.dateValue), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\tconst modifiedLocalDate = modifiedDate.toLocalJSDate();\n\t\tmodifiedLocalDate.setHours(this.dateValue.getHours());\n\t\tmodifiedLocalDate.setMinutes(this.dateValue.getMinutes());\n\t\tmodifiedLocalDate.setSeconds(this.dateValue.getSeconds());\n\n\t\tconst newValue = this.formatValue(modifiedLocalDate);\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t}\n\n\tasync getPicker() {\n\t\tconst staticAreaItem = await this.getStaticAreaItemDomRef();\n\t\treturn staticAreaItem!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\tgetSelectedDateTime() {\n\t\tconst selectedDate = this.getFormat().parse(this._calendarSelectedDates[0]) as Date;\n\t\tconst selectedTime = this.getFormat().parse(this._timeSelectionValue) as Date;\n\t\tif (selectedTime) {\n\t\t\tselectedDate.setHours(selectedTime.getHours());\n\t\t\tselectedDate.setMinutes(selectedTime.getMinutes());\n\t\t\tselectedDate.setSeconds(selectedTime.getSeconds());\n\t\t}\n\n\t\treturn selectedDate;\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _calendarPickersMode() {\n\t\treturn CalendarPickersMode.DAY_MONTH_YEAR;\n\t}\n}\n\nDateTimePicker.define();\n\nexport default DateTimePicker;\nexport type {\n\tDateTimePickerChangeEventDetail,\n\tDateTimePickerInputEventDetail,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"DateTimePicker.js","sourceRoot":"","sources":["../src/DateTimePicker.ts"],"names":[],"mappings":"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","sourcesContent":["import property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport modifyDateBy from \"@ui5/webcomponents-localization/dist/dates/modifyDateBy.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport \"@ui5/webcomponents-icons/dist/date-time.js\";\nimport Button from \"./Button.js\";\nimport type ResponsivePopover from \"./ResponsivePopover.js\";\nimport ToggleButton from \"./ToggleButton.js\";\nimport SegmentedButton from \"./SegmentedButton.js\";\nimport Calendar from \"./Calendar.js\";\nimport type { CalendarSelectedDatesChangeEventDetail } from \"./Calendar.js\";\nimport DatePicker from \"./DatePicker.js\";\nimport type {\n\tDatePickerChangeEventDetail as DateTimePickerChangeEventDetail,\n\tDatePickerInputEventDetail as DateTimePickerInputEventDetail,\n} from \"./DatePicker.js\";\nimport TimeSelection from \"./TimeSelection.js\";\nimport type { TimeSelectionChangeEventDetail, TimeSelectionSliderChangeEventDetail } from \"./TimeSelection.js\";\n\n// i18n texts\nimport {\n\tTIMEPICKER_SUBMIT_BUTTON,\n\tTIMEPICKER_CANCEL_BUTTON,\n\tDATETIME_DESCRIPTION,\n\tDATETIME_PICKER_DATE_BUTTON,\n\tDATETIME_PICKER_TIME_BUTTON,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Template\nimport DateTimePickerPopoverTemplate from \"./generated/templates/DateTimePickerPopoverTemplate.lit.js\";\n\n// Styles\nimport DateTimePickerCss from \"./generated/themes/DateTimePicker.css.js\";\nimport DateTimePickerPopoverCss from \"./generated/themes/DateTimePickerPopover.css.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\n\nconst PHONE_MODE_BREAKPOINT = 640; // px\n\ntype PreviewValues = {\n\ttimeSelectionValue?: string,\n\tcalendarTimestamp?: number,\n\tcalendarValue?: string,\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n * The <code>DateTimePicker</code> component alows users to select both date (day, month and year) and time (hours, minutes and seconds)\n * and for the purpose it consists of input field and Date/Time picker.\n *\n * <h3>Usage</h3>\n *\n * Use the <code>DateTimePicker</code> if you need a combined date and time input component.\n * Don't use it if you want to use either date, or time value.\n * In this case, use the <code>DatePicker</code> or the <code>TimePicker</code> components instead.\n * <br><br>\n * The user can set date/time by:\n * <ul>\n * <li>using the calendar and the time selectors</li>\n * <li>typing in the input field</li>\n * </ul>\n *\n * Programmatically, to set date/time for the <code>DateTimePicker</code>, use the <code>value</code> property\n *\n * <h3>Formatting</h3>\n *\n * The value entered by typing into the input field must fit to the used date/time format.\n * <br><br>\n * Supported format options are pattern-based on Unicode LDML Date Format notation.\n * For more information, see <ui5-link target=\"_blank\" href=\"https://unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\">UTS #35: Unicode Locale Data Markup Language</ui5-link>.\n * <br><br>\n * <b>Example:</b> the following format <code>dd/MM/yyyy, hh:mm:ss aa</code>\n * corresponds the <code>13/04/2020, 03:16:16 AM</code> value.\n * <br>\n * The small 'h' defines \"12\" hours format and the \"aa\" symbols - \"AM/PM\" time periods.\n *\n * <br><br>\n * <b>Example:</b> the following format <code>dd/MM/yyyy, HH:mm:ss</code>\n * corresponds the <code>13/04/2020, 15:16:16</code> value.\n * <br>\n * The capital 'H' indicates \"24\" hours format.\n *\n * <br><br>\n * <b>Note:</b> If the <code>formatPattern</code> does NOT include time,\n * the <code>DateTimePicker</code> will fallback to the default time format according to the locale.\n *\n * <br><br>\n * <b>Note:</b> If no placeholder is set to the <code>DateTimePicker</code>,\n * the current <code>formatPattern</code> is displayed as a placeholder.\n * If another placeholder is needed, it must be set or in case no placeholder is needed - it can be set to an empty string.\n *\n * <br><br>\n * <b>Note:</b> If the user input does NOT match the <code>formatPattern</code>,\n * the <code>DateTimePicker</code> makes an attempt to parse it based on the\n * locale settings.\n *\n * <h3>Responsive behavior</h3>\n *\n * The <code>DateTimePicker</code> is responsive and fully adapts to all devices.\n * For larger screens, such as tablet or desktop, it is displayed as a popover, while\n * on phone devices, it is displayed full screen.\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/DateTimePicker.js\";</code>\n *\n * @constructor\n * @extends DatePicker\n * @since 1.0.0-rc.7\n * @public\n */\n@customElement({\n\ttag: \"ui5-datetime-picker\",\n\tstaticAreaTemplate: DateTimePickerPopoverTemplate,\n\tstyles: [\n\t\tDateTimePicker.styles,\n\t\tDateTimePickerCss,\n\t],\n\tstaticAreaStyles: [\n\t\tDatePicker.staticAreaStyles,\n\t\tDateTimePickerPopoverCss,\n\t],\n\tdependencies: [\n\t\t...DatePicker.dependencies,\n\t\tCalendar,\n\t\tButton,\n\t\tToggleButton,\n\t\tSegmentedButton,\n\t\tTimeSelection,\n\t],\n})\nclass DateTimePicker extends DatePicker {\n\t/**\n\t * Defines the visibility of the time view in <code>phoneMode</code>.\n\t * For more information, see the <code>phoneMode</code> property.\n\t *\n\t * <br><br>\n\t * <b>Note:</b> The date view would be displayed by default.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_showTimeView!: boolean;\n\n\t/**\n\t * Defines if the <code>DateTimePicker</code> should be displayed in phone mode.\n\t * The phone mode turns on when the component is used on small screens or phone devices.\n\t * In phone mode the user can see either the calendar view, or the time view\n\t * and can switch between the views via toggle buttons.\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_phoneMode!: boolean;\n\n\t/**\n\t * Selected, but not yet confirmed date/time\n\t * @private\n\t */\n\t@property({ type: Object })\n\t_previewValues!: PreviewValues;\n\n\t/**\n\t * @private\n\t */\n\t@property({ defaultValue: \"hours\" })\n\t_currentTimeSlider!: string;\n\n\t_handleResizeBound: ResizeObserverCallback;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._handleResizeBound = this._handleResize.bind(this);\n\t}\n\n\t/**\n\t * @override\n\t */\n\tonResponsivePopoverAfterClose() {\n\t\tsuper.onResponsivePopoverAfterClose();\n\t\tthis._showTimeView = false;\n\t\tthis._previewValues = {};\n\t}\n\n\t/**\n\t * LIFECYCLE METHODS\n\t */\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(document.body, this._handleResizeBound);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(document.body, this._handleResizeBound);\n\t}\n\n\t/**\n\t * PUBLIC METHODS\n\t */\n\n\t/**\n\t * Opens the picker.\n\t *\n\t * @public\n\t */\n\tasync openPicker(): Promise<void> {\n\t\tawait super.openPicker();\n\t\tthis._currentTimeSlider = \"hours\";\n\t\tthis._previewValues.timeSelectionValue = this.value || this.getFormat().format(new Date());\n\t}\n\n\t/**\n\t * Read-only getters\n\t */\n\n\tget classes() {\n\t\treturn {\n\t\t\tpicker: {\n\t\t\t\t\"ui5-dt-picker-content--phone\": this.phone,\n\t\t\t},\n\t\t\tdateTimeView: {\n\t\t\t\t\"ui5-dt-cal--hidden\": this.phone && this.showTimeView,\n\t\t\t\t\"ui5-dt-time--hidden\": this.phone && this.showDateView,\n\t\t\t},\n\t\t\tfooter: {\n\t\t\t\t\"ui5-dt-picker-footer-time-hidden\": (this.phone && this.showTimeView) || (this.phone && this.showDateView),\n\t\t\t},\n\t\t};\n\t}\n\n\tget _formatPattern() {\n\t\tconst hasHours = !!this.formatPattern.match(/H/i);\n\t\tconst fallback = !this.formatPattern || !hasHours;\n\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\treturn fallback ? localeData.getCombinedDateTimePattern(\"medium\", \"medium\", this._primaryCalendarType) : this.formatPattern;\n\t}\n\n\tget _calendarTimestamp() {\n\t\treturn this._previewValues.calendarTimestamp ? this._previewValues.calendarTimestamp : super._calendarTimestamp;\n\t}\n\n\tget _calendarSelectedDates() {\n\t\treturn this._previewValues.calendarValue ? [this._previewValues.calendarValue] : super._calendarSelectedDates;\n\t}\n\n\tget _timeSelectionValue() {\n\t\treturn this._previewValues.timeSelectionValue ? this._previewValues.timeSelectionValue : this.value;\n\t}\n\n\tget openIconName() {\n\t\treturn \"date-time\";\n\t}\n\n\tget btnOKLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(TIMEPICKER_SUBMIT_BUTTON);\n\t}\n\n\tget btnCancelLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(TIMEPICKER_CANCEL_BUTTON);\n\t}\n\n\tget btnDateLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_PICKER_DATE_BUTTON);\n\t}\n\n\tget btnTimeLabel() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_PICKER_TIME_BUTTON);\n\t}\n\n\tget showFooter() {\n\t\treturn true;\n\t}\n\n\tget showDateView() {\n\t\treturn this.phone ? !this._showTimeView : true;\n\t}\n\n\tget showTimeView() {\n\t\treturn this.phone ? this._showTimeView : true;\n\t}\n\n\tget phone() {\n\t\treturn super.phone || this._phoneMode;\n\t}\n\n\tget dateAriaDescription() {\n\t\treturn DateTimePicker.i18nBundle.getText(DATETIME_DESCRIPTION);\n\t}\n\n\t/**\n\t * Defines whether the dialog on mobile should have header\n\t *\n\t * @private\n\t */\n\tget _shouldHideHeader() {\n\t\treturn true;\n\t}\n\n\t/**\n\t * EVENT HANDLERS\n\t */\n\n\t/**\n\t * @override\n\t */\n\tonSelectedDatesChange(e: CustomEvent<CalendarSelectedDatesChangeEventDetail>) {\n\t\te.preventDefault();\n\t\t// @ts-ignore Needed for FF\n\t\tconst dateTimePickerContent = e.path ? e.path[1] : e.composedPath()[1];\n\t\tthis._previewValues = {\n\t\t\t...this._previewValues,\n\t\t\tcalendarTimestamp: e.detail.timestamp,\n\t\t\tcalendarValue: e.detail.values[0],\n\t\t\ttimeSelectionValue: dateTimePickerContent.lastChild.value,\n\t\t};\n\t}\n\n\tonTimeSelectionChange(e: CustomEvent<TimeSelectionChangeEventDetail>) {\n\t\tthis._previewValues = {\n\t\t\t...this._previewValues,\n\t\t\ttimeSelectionValue: e.detail.value,\n\t\t};\n\t}\n\n\tonTimeSliderChange(e: CustomEvent<TimeSelectionSliderChangeEventDetail>) {\n\t\tthis._currentTimeSlider = e.detail.slider;\n\t}\n\n\t/**\n\t * Handles document resize to switch between <code>phoneMode</code> and normal appearance.\n\t */\n\t_handleResize() {\n\t\tconst documentWidth = document.body.offsetWidth;\n\t\tconst toPhoneMode = documentWidth <= PHONE_MODE_BREAKPOINT;\n\t\tconst modeChange = (toPhoneMode && !this._phoneMode) || (!toPhoneMode && this._phoneMode); // XOR not allowed by lint\n\n\t\tif (modeChange) {\n\t\t\tthis._phoneMode = toPhoneMode;\n\t\t}\n\t}\n\n\tget _submitDisabled() {\n\t\treturn !this._calendarSelectedDates || !this._calendarSelectedDates.length;\n\t}\n\n\t/**\n\t * Handles clicking on the <code>submit</code> button, within the picker`s footer.\n\t */\n\t_submitClick() {\n\t\tconst selectedDate = this.getSelectedDateTime();\n\n\t\tconst value = this.getFormat().format(selectedDate);\n\t\tif (this.value !== value) {\n\t\t\tthis._updateValueAndFireEvents(value, true, [\"change\", \"value-changed\"]);\n\t\t}\n\n\t\tthis.closePicker();\n\t}\n\n\t/**\n\t * Handles clicking on the <code>cancel</code> button, within the picker`s footer,\n\t * that would disregard the user selection.\n\t */\n\t_cancelClick() {\n\t\tthis.closePicker();\n\t}\n\n\t/**\n\t * Handles the date/time switch available in <code>phoneMode</code> to switch\n\t * between the date and time views.\n\t *\n\t * @param e\n\t */\n\t_dateTimeSwitchChange(e: CustomEvent) { // Note: fix when SegmentedButton is implemented in TS\n\t\tconst target = e.target as HTMLElement;\n\t\tthis._showTimeView = target.getAttribute(\"key\") === \"Time\";\n\t\tif (this._showTimeView) {\n\t\t\tthis._currentTimeSlider = \"hours\";\n\t\t}\n\t}\n\n\t/**\n\t * @override\n\t */\n\t_modifyDateValue(amount: number, unit: string, preserveDate: boolean) {\n\t\tif (!this.dateValue) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst modifiedDate = modifyDateBy(CalendarDate.fromLocalJSDate(this.dateValue), amount, unit, preserveDate, this._minDate, this._maxDate);\n\t\tconst modifiedLocalDate = modifiedDate.toLocalJSDate();\n\t\tmodifiedLocalDate.setHours(this.dateValue.getHours());\n\t\tmodifiedLocalDate.setMinutes(this.dateValue.getMinutes());\n\t\tmodifiedLocalDate.setSeconds(this.dateValue.getSeconds());\n\n\t\tconst newValue = this.formatValue(modifiedLocalDate);\n\t\tthis._updateValueAndFireEvents(newValue, true, [\"change\", \"value-changed\"]);\n\t}\n\n\tasync getPicker() {\n\t\tconst staticAreaItem = await this.getStaticAreaItemDomRef();\n\t\treturn staticAreaItem!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\tgetSelectedDateTime() {\n\t\tconst selectedDate = this.getFormat().parse(this._calendarSelectedDates[0]) as Date;\n\t\tconst selectedTime = this.getFormat().parse(this._timeSelectionValue) as Date;\n\t\tif (selectedTime) {\n\t\t\tselectedDate.setHours(selectedTime.getHours());\n\t\t\tselectedDate.setMinutes(selectedTime.getMinutes());\n\t\t\tselectedDate.setSeconds(selectedTime.getSeconds());\n\t\t}\n\n\t\treturn selectedDate;\n\t}\n\n\t/**\n\t * @override\n\t */\n\tget _calendarPickersMode() {\n\t\treturn CalendarPickersMode.DAY_MONTH_YEAR;\n\t}\n}\n\nDateTimePicker.define();\n\nexport default DateTimePicker;\nexport type {\n\tDateTimePickerChangeEventDetail,\n\tDateTimePickerInputEventDetail,\n};\n"]}
|
package/dist/DayPicker.d.ts
CHANGED
|
@@ -43,17 +43,14 @@ type DayPickerNavigateEventDetail = {
|
|
|
43
43
|
* Represents the days inside a single month view of the <code>ui5-calendar</code> component.
|
|
44
44
|
*
|
|
45
45
|
* @constructor
|
|
46
|
-
* @
|
|
47
|
-
* @
|
|
48
|
-
* @extends sap.ui.webc.main.CalendarPart
|
|
49
|
-
* @tagname ui5-daypicker
|
|
50
|
-
* @public
|
|
46
|
+
* @extends CalendarPart
|
|
47
|
+
* @private
|
|
51
48
|
*/
|
|
52
49
|
declare class DayPicker extends CalendarPart implements ICalendarPicker {
|
|
53
50
|
/**
|
|
54
51
|
* An array of UTC timestamps representing the selected date or dates depending on the capabilities of the picker component.
|
|
55
|
-
*
|
|
56
|
-
* @
|
|
52
|
+
*
|
|
53
|
+
* @default []
|
|
57
54
|
* @public
|
|
58
55
|
*/
|
|
59
56
|
selectedDates: Array<number>;
|
|
@@ -65,9 +62,8 @@ declare class DayPicker extends CalendarPart implements ICalendarPicker {
|
|
|
65
62
|
* <li><code>CalendarSelectionMode.Range</code> - enables selection of a date range.</li>
|
|
66
63
|
* <li><code>CalendarSelectionMode.Multiple</code> - enables selection of multiple dates.</li>
|
|
67
64
|
* </ul>
|
|
68
|
-
*
|
|
69
|
-
* @
|
|
70
|
-
* @defaultvalue "Single"
|
|
65
|
+
*
|
|
66
|
+
* @default "Single"
|
|
71
67
|
* @public
|
|
72
68
|
*/
|
|
73
69
|
selectionMode: `${CalendarSelectionMode}`;
|
|
@@ -78,27 +74,25 @@ declare class DayPicker extends CalendarPart implements ICalendarPicker {
|
|
|
78
74
|
* <b>Note:<b> For calendars other than Gregorian,
|
|
79
75
|
* the week numbers are not displayed regardless of what is set.
|
|
80
76
|
*
|
|
81
|
-
* @
|
|
82
|
-
* @name sap.ui.webc.main.DayPicker.prototype.hideWeekNumbers
|
|
83
|
-
* @defaultvalue false
|
|
77
|
+
* @default false
|
|
84
78
|
* @public
|
|
85
79
|
* @since 1.0.0-rc.8
|
|
86
80
|
*/
|
|
87
81
|
hideWeekNumbers: boolean;
|
|
88
82
|
/**
|
|
89
|
-
* @type {object}
|
|
90
83
|
* @private
|
|
91
84
|
*/
|
|
92
85
|
_weeks: Array<Week>;
|
|
93
86
|
_dayNames: Array<DayName>;
|
|
94
87
|
/**
|
|
95
88
|
* When set, the component will skip all work in onBeforeRendering and will not automatically set the focus on itself
|
|
96
|
-
*
|
|
89
|
+
*
|
|
97
90
|
* @private
|
|
98
91
|
*/
|
|
99
92
|
_hidden: boolean;
|
|
100
93
|
/**
|
|
101
94
|
* When selectionMode="Range" and the first day in the range is selected, this is the currently hovered (when using mouse) or focused (when using keyboard) day by the user
|
|
95
|
+
*
|
|
102
96
|
* @private
|
|
103
97
|
*/
|
|
104
98
|
_secondTimestamp?: number;
|
|
@@ -107,20 +101,22 @@ declare class DayPicker extends CalendarPart implements ICalendarPicker {
|
|
|
107
101
|
onBeforeRendering(): void;
|
|
108
102
|
/**
|
|
109
103
|
* Builds the "_weeks" object that represents the month.
|
|
110
|
-
*
|
|
104
|
+
*
|
|
105
|
+
* @param localeData
|
|
111
106
|
* @private
|
|
112
107
|
*/
|
|
113
108
|
_buildWeeks(localeData: LocaleData): void;
|
|
114
109
|
/**
|
|
115
110
|
* Builds the dayNames object (header of the month).
|
|
116
|
-
*
|
|
111
|
+
*
|
|
112
|
+
* @param localeData
|
|
117
113
|
* @private
|
|
118
114
|
*/
|
|
119
115
|
_buildDayNames(localeData: LocaleData): void;
|
|
120
116
|
/**
|
|
121
117
|
* Tells if any of the days is more than 4 characters(too long to render).
|
|
122
|
-
*
|
|
123
|
-
* @
|
|
118
|
+
*
|
|
119
|
+
* @param dayNames
|
|
124
120
|
* @private
|
|
125
121
|
*/
|
|
126
122
|
namesTooLong(dayNames: Array<string>): boolean;
|
|
@@ -129,27 +125,29 @@ declare class DayPicker extends CalendarPart implements ICalendarPicker {
|
|
|
129
125
|
_onfocusout(): void;
|
|
130
126
|
/**
|
|
131
127
|
* Tells if the day is selected (dark blue).
|
|
132
|
-
*
|
|
133
|
-
* @
|
|
128
|
+
*
|
|
129
|
+
* @param timestamp
|
|
134
130
|
* @private
|
|
135
131
|
*/
|
|
136
132
|
_isDaySelected(timestamp: number): boolean;
|
|
137
133
|
/**
|
|
138
134
|
* Tells if the day is inside a selection range (light blue).
|
|
139
|
-
*
|
|
140
|
-
* @
|
|
135
|
+
*
|
|
136
|
+
* @param timestamp
|
|
141
137
|
* @private
|
|
142
138
|
*/
|
|
143
139
|
_isDayInsideSelectionRange(timestamp: number): boolean;
|
|
144
140
|
/**
|
|
145
141
|
* Selects/deselects a day.
|
|
146
|
-
*
|
|
147
|
-
* @param
|
|
142
|
+
*
|
|
143
|
+
* @param e
|
|
144
|
+
* @param isShift true if the user did Click+Shift or Enter+Shift (but not Space+Shift)
|
|
148
145
|
* @private
|
|
149
146
|
*/
|
|
150
147
|
_selectDate(e: Event, isShift: boolean): void;
|
|
151
148
|
/**
|
|
152
149
|
* Selects/deselects the whole row (week).
|
|
150
|
+
*
|
|
153
151
|
* @private
|
|
154
152
|
*/
|
|
155
153
|
_selectWeek(): void;
|
|
@@ -158,13 +156,15 @@ declare class DayPicker extends CalendarPart implements ICalendarPicker {
|
|
|
158
156
|
_removeTimestampFromSelection(timestamp: number): void;
|
|
159
157
|
/**
|
|
160
158
|
* Called when at least one day is selected and the user presses "Shift".
|
|
161
|
-
*
|
|
159
|
+
*
|
|
160
|
+
* @param timestamp
|
|
162
161
|
* @private
|
|
163
162
|
*/
|
|
164
163
|
_multipleSelection(timestamp: number): void;
|
|
165
164
|
/**
|
|
166
165
|
* Set the hovered day as the "_secondTimestamp".
|
|
167
|
-
*
|
|
166
|
+
*
|
|
167
|
+
* @param e
|
|
168
168
|
* @private
|
|
169
169
|
*/
|
|
170
170
|
_onmouseover(e: MouseEvent): void;
|
|
@@ -173,55 +173,62 @@ declare class DayPicker extends CalendarPart implements ICalendarPicker {
|
|
|
173
173
|
/**
|
|
174
174
|
* Click is the same as "Enter".
|
|
175
175
|
* <b>Note:</b> "Click+Shift" has the same effect as "Enter+Shift".
|
|
176
|
-
*
|
|
176
|
+
*
|
|
177
|
+
* @param e
|
|
177
178
|
* @private
|
|
178
179
|
*/
|
|
179
180
|
_onclick(e: MouseEvent): void;
|
|
180
181
|
/**
|
|
181
182
|
* Called upon "Home" or "End" - moves the focus to the first or last item in the row.
|
|
182
|
-
*
|
|
183
|
+
*
|
|
184
|
+
* @param homePressed
|
|
183
185
|
* @private
|
|
184
186
|
*/
|
|
185
187
|
_onHomeOrEnd(homePressed: boolean): void;
|
|
186
188
|
/**
|
|
187
189
|
* Called by the Calendar component.
|
|
190
|
+
*
|
|
188
191
|
* @protected
|
|
189
|
-
* @returns { boolean }
|
|
190
192
|
*/
|
|
191
193
|
_hasPreviousPage(): boolean;
|
|
192
194
|
/**
|
|
193
195
|
* Called by the Calendar component.
|
|
196
|
+
*
|
|
194
197
|
* @protected
|
|
195
|
-
* @returns { boolean }
|
|
196
198
|
*/
|
|
197
199
|
_hasNextPage(): boolean;
|
|
198
200
|
/**
|
|
199
201
|
* Called by the Calendar component.
|
|
202
|
+
*
|
|
200
203
|
* @protected
|
|
201
204
|
*/
|
|
202
205
|
_showPreviousPage(): void;
|
|
203
206
|
/**
|
|
204
207
|
* Called by the Calendar component.
|
|
208
|
+
*
|
|
205
209
|
* @protected
|
|
206
210
|
*/
|
|
207
211
|
_showNextPage(): void;
|
|
208
212
|
/**
|
|
209
213
|
* Modifies the timestamp by a certain amount of days/months/years.
|
|
210
|
-
*
|
|
211
|
-
* @param
|
|
212
|
-
* @param
|
|
214
|
+
*
|
|
215
|
+
* @param amount
|
|
216
|
+
* @param unit
|
|
217
|
+
* @param preserveDate whether to preserve the day of the month (f.e. 15th of March + 1 month = 15th of April)
|
|
213
218
|
* @private
|
|
214
219
|
*/
|
|
215
220
|
_modifyTimestampBy(amount: number, unit: string, preserveDate?: boolean): void;
|
|
216
221
|
/**
|
|
217
222
|
* Sets the timestamp to an absolute value.
|
|
218
|
-
*
|
|
223
|
+
*
|
|
224
|
+
* @param value
|
|
219
225
|
* @private
|
|
220
226
|
*/
|
|
221
227
|
_setTimestamp(value: number): void;
|
|
222
228
|
/**
|
|
223
229
|
* During range selection, when the user is navigating with the keyboard,
|
|
224
230
|
* the currently focused day is considered the "second day".
|
|
231
|
+
*
|
|
225
232
|
* @private
|
|
226
233
|
*/
|
|
227
234
|
_updateSecondTimestamp(): void;
|