@ui5/webcomponents 2.0.0-rc.3 → 2.0.0-rc.4
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/.env.testing +4 -0
- package/CHANGELOG.md +215 -0
- package/README.md +0 -33
- package/dist/.tsbuildinfo +1 -1
- package/dist/Avatar.d.ts +2 -2
- package/dist/AvatarGroup.d.ts +4 -4
- package/dist/Breadcrumbs.d.ts +1 -1
- package/dist/Breadcrumbs.js +10 -5
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/Button.d.ts +26 -13
- package/dist/Button.js +34 -18
- package/dist/Button.js.map +1 -1
- package/dist/Calendar.d.ts +10 -5
- package/dist/Calendar.js +81 -26
- package/dist/Calendar.js.map +1 -1
- package/dist/CalendarDate.d.ts +2 -1
- package/dist/CalendarDate.js +1 -0
- package/dist/CalendarDate.js.map +1 -1
- package/dist/CalendarDateRange.d.ts +31 -0
- package/dist/CalendarDateRange.js +36 -0
- package/dist/CalendarDateRange.js.map +1 -0
- package/dist/CalendarHeader.js +8 -8
- package/dist/CalendarHeader.js.map +1 -1
- package/dist/CheckBox.d.ts +8 -17
- package/dist/CheckBox.js +14 -22
- package/dist/CheckBox.js.map +1 -1
- package/dist/ColorPalette.d.ts +19 -0
- package/dist/ColorPalette.js +112 -13
- package/dist/ColorPalette.js.map +1 -1
- package/dist/ColorPaletteItem.d.ts +16 -0
- package/dist/ColorPaletteItem.js +10 -0
- package/dist/ColorPaletteItem.js.map +1 -1
- package/dist/ColorPalettePopover.d.ts +5 -0
- package/dist/ColorPalettePopover.js +15 -0
- package/dist/ColorPalettePopover.js.map +1 -1
- package/dist/ColorPicker.d.ts +13 -1
- package/dist/ColorPicker.js +10 -0
- package/dist/ColorPicker.js.map +1 -1
- package/dist/ComboBox.d.ts +23 -11
- package/dist/ComboBox.js +156 -58
- package/dist/ComboBox.js.map +1 -1
- package/dist/ComboBoxItem.d.ts +5 -5
- package/dist/ComboBoxItem.js +3 -7
- package/dist/ComboBoxItem.js.map +1 -1
- package/dist/{ComboBoxGroupItem.d.ts → ComboBoxItemGroup.d.ts} +11 -3
- package/dist/{ComboBoxGroupItem.js → ComboBoxItemGroup.js} +24 -9
- package/dist/ComboBoxItemGroup.js.map +1 -0
- package/dist/CustomListItem.d.ts +7 -0
- package/dist/CustomListItem.js +7 -2
- package/dist/CustomListItem.js.map +1 -1
- package/dist/DatePicker.d.ts +9 -18
- package/dist/DatePicker.js +19 -15
- package/dist/DatePicker.js.map +1 -1
- package/dist/DateRangePicker.d.ts +5 -1
- package/dist/DateRangePicker.js +21 -0
- package/dist/DateRangePicker.js.map +1 -1
- package/dist/DateTimePicker.d.ts +4 -1
- package/dist/DateTimePicker.js +14 -0
- package/dist/DateTimePicker.js.map +1 -1
- package/dist/DayPicker.js +6 -4
- package/dist/DayPicker.js.map +1 -1
- package/dist/Dialog.d.ts +0 -16
- package/dist/Dialog.js +0 -21
- package/dist/Dialog.js.map +1 -1
- package/dist/FileUploader.d.ts +6 -23
- package/dist/FileUploader.js +15 -46
- package/dist/FileUploader.js.map +1 -1
- package/dist/Form.d.ts +198 -0
- package/dist/Form.js +358 -0
- package/dist/Form.js.map +1 -0
- package/dist/FormGroup.d.ts +63 -0
- package/dist/FormGroup.js +86 -0
- package/dist/FormGroup.js.map +1 -0
- package/dist/FormItem.d.ts +62 -0
- package/dist/FormItem.js +76 -0
- package/dist/FormItem.js.map +1 -0
- package/dist/Input.d.ts +17 -30
- package/dist/Input.js +46 -48
- package/dist/Input.js.map +1 -1
- package/dist/Label.d.ts +1 -1
- package/dist/Label.js +1 -1
- package/dist/Label.js.map +1 -1
- package/dist/Link.d.ts +4 -3
- package/dist/Link.js +2 -1
- package/dist/Link.js.map +1 -1
- package/dist/List.d.ts +3 -2
- package/dist/List.js +45 -0
- package/dist/List.js.map +1 -1
- package/dist/ListItem.d.ts +8 -15
- package/dist/ListItem.js +25 -34
- package/dist/ListItem.js.map +1 -1
- package/dist/ListItemBase.d.ts +24 -2
- package/dist/ListItemBase.js +48 -13
- package/dist/ListItemBase.js.map +1 -1
- package/dist/ListItemGroup.d.ts +6 -1
- package/dist/ListItemGroup.js +4 -1
- package/dist/ListItemGroup.js.map +1 -1
- package/dist/ListItemGroupHeader.d.ts +2 -0
- package/dist/ListItemGroupHeader.js +9 -0
- package/dist/ListItemGroupHeader.js.map +1 -1
- package/dist/Menu.d.ts +11 -90
- package/dist/Menu.js +62 -324
- package/dist/Menu.js.map +1 -1
- package/dist/MenuItem.d.ts +57 -22
- package/dist/MenuItem.js +106 -24
- package/dist/MenuItem.js.map +1 -1
- package/dist/MonthPicker.d.ts +1 -0
- package/dist/MonthPicker.js +10 -6
- package/dist/MonthPicker.js.map +1 -1
- package/dist/MultiComboBox.d.ts +17 -3
- package/dist/MultiComboBox.js +63 -25
- package/dist/MultiComboBox.js.map +1 -1
- package/dist/MultiInput.d.ts +18 -4
- package/dist/MultiInput.js +56 -31
- package/dist/MultiInput.js.map +1 -1
- package/dist/NavigationMenu.d.ts +1 -6
- package/dist/NavigationMenu.js +3 -47
- package/dist/NavigationMenu.js.map +1 -1
- package/dist/NavigationMenuItem.d.ts +22 -3
- package/dist/NavigationMenuItem.js +29 -4
- package/dist/NavigationMenuItem.js.map +1 -1
- package/dist/Option.d.ts +20 -33
- package/dist/Option.js +31 -19
- package/dist/Option.js.map +1 -1
- package/dist/OptionCustom.d.ts +51 -0
- package/dist/OptionCustom.js +63 -0
- package/dist/OptionCustom.js.map +1 -0
- package/dist/Panel.d.ts +1 -1
- package/dist/Popover.d.ts +8 -21
- package/dist/Popover.js +32 -44
- package/dist/Popover.js.map +1 -1
- package/dist/Popup.d.ts +20 -23
- package/dist/Popup.js +53 -57
- package/dist/Popup.js.map +1 -1
- package/dist/RadioButton.d.ts +16 -27
- package/dist/RadioButton.js +19 -31
- package/dist/RadioButton.js.map +1 -1
- package/dist/RadioButtonGroup.js +6 -5
- package/dist/RadioButtonGroup.js.map +1 -1
- package/dist/RangeSlider.d.ts +3 -1
- package/dist/RangeSlider.js +7 -0
- package/dist/RangeSlider.js.map +1 -1
- package/dist/ResponsivePopover.d.ts +4 -16
- package/dist/ResponsivePopover.js +17 -30
- package/dist/ResponsivePopover.js.map +1 -1
- package/dist/SegmentedButtonItem.d.ts +6 -1
- package/dist/SegmentedButtonItem.js +7 -4
- package/dist/SegmentedButtonItem.js.map +1 -1
- package/dist/Select.d.ts +27 -82
- package/dist/Select.js +83 -231
- package/dist/Select.js.map +1 -1
- package/dist/Slider.d.ts +3 -1
- package/dist/Slider.js +4 -0
- package/dist/Slider.js.map +1 -1
- package/dist/SliderBase.d.ts +11 -1
- package/dist/SliderBase.js +6 -0
- package/dist/SliderBase.js.map +1 -1
- package/dist/StandardListItem.d.ts +7 -0
- package/dist/StandardListItem.js +3 -0
- package/dist/StandardListItem.js.map +1 -1
- package/dist/StepInput.d.ts +6 -15
- package/dist/StepInput.js +7 -11
- package/dist/StepInput.js.map +1 -1
- package/dist/Switch.d.ts +8 -17
- package/dist/Switch.js +13 -21
- package/dist/Switch.js.map +1 -1
- package/dist/TabContainer.js +11 -5
- package/dist/TabContainer.js.map +1 -1
- package/dist/Tag.d.ts +1 -1
- package/dist/Tag.js.map +1 -1
- package/dist/TextArea.d.ts +9 -18
- package/dist/TextArea.js +22 -15
- package/dist/TextArea.js.map +1 -1
- package/dist/TimePicker.d.ts +24 -24
- package/dist/TimePicker.js +32 -59
- package/dist/TimePicker.js.map +1 -1
- package/dist/TimeSelectionClocks.js +2 -0
- package/dist/TimeSelectionClocks.js.map +1 -1
- package/dist/TimeSelectionInputs.js +2 -0
- package/dist/TimeSelectionInputs.js.map +1 -1
- package/dist/Toast.d.ts +1 -1
- package/dist/Toast.js +2 -2
- package/dist/Toast.js.map +1 -1
- package/dist/ToggleSpinButton.d.ts +1 -1
- package/dist/ToggleSpinButton.js +1 -1
- package/dist/ToggleSpinButton.js.map +1 -1
- package/dist/Token.d.ts +5 -0
- package/dist/Token.js +3 -0
- package/dist/Token.js.map +1 -1
- package/dist/Tokenizer.d.ts +11 -5
- package/dist/Tokenizer.js +93 -71
- package/dist/Tokenizer.js.map +1 -1
- package/dist/Toolbar.d.ts +5 -0
- package/dist/Toolbar.js +16 -4
- package/dist/Toolbar.js.map +1 -1
- package/dist/ToolbarButton.d.ts +11 -3
- package/dist/ToolbarButton.js +2 -2
- package/dist/ToolbarButton.js.map +1 -1
- package/dist/TreeItemBase.d.ts +8 -1
- package/dist/TreeItemBase.js +3 -1
- package/dist/TreeItemBase.js.map +1 -1
- package/dist/TreeItemCustom.js +4 -2
- package/dist/TreeItemCustom.js.map +1 -1
- package/dist/bundle.esm.d.ts +0 -1
- package/dist/bundle.esm.js +5 -3
- package/dist/bundle.esm.js.map +1 -1
- package/dist/css/themes/Avatar.css +1 -1
- package/dist/css/themes/AvatarGroup.css +1 -1
- package/dist/css/themes/Bar.css +1 -1
- package/dist/css/themes/Breadcrumbs.css +1 -1
- package/dist/css/themes/BusyIndicator.css +1 -1
- package/dist/css/themes/Button.css +1 -1
- package/dist/css/themes/Calendar.css +1 -1
- package/dist/css/themes/CalendarHeader.css +1 -1
- package/dist/css/themes/CalendarLegend.css +1 -1
- package/dist/css/themes/CalendarLegendItem.css +1 -1
- package/dist/css/themes/Card.css +1 -1
- package/dist/css/themes/CardHeader.css +1 -1
- package/dist/css/themes/Carousel.css +1 -1
- package/dist/css/themes/CheckBox.css +1 -1
- package/dist/css/themes/ColorPalette.css +1 -1
- package/dist/css/themes/ColorPaletteItem.css +1 -1
- package/dist/css/themes/ColorPalettePopover.css +1 -1
- package/dist/css/themes/ColorPicker.css +1 -1
- package/dist/css/themes/ComboBox.css +1 -1
- package/dist/css/themes/CustomListItem.css +1 -1
- package/dist/css/themes/DatePicker.css +1 -1
- package/dist/css/themes/DateTimePickerPopover.css +1 -1
- package/dist/css/themes/DayPicker.css +1 -1
- package/dist/css/themes/Dialog.css +1 -1
- package/dist/css/themes/FileUploader.css +1 -1
- package/dist/css/themes/Form.css +1 -0
- package/dist/css/themes/FormItem.css +1 -0
- package/dist/css/themes/FormLabelSpan.css +1 -0
- package/dist/css/themes/FormLayout.css +1 -0
- package/dist/css/themes/GrowingButton.css +1 -1
- package/dist/css/themes/Icon.css +1 -1
- package/dist/css/themes/Input.css +1 -1
- package/dist/css/themes/InputIcon.css +1 -1
- package/dist/css/themes/InputSharedStyles.css +1 -1
- package/dist/css/themes/Label.css +1 -1
- package/dist/css/themes/Link.css +1 -1
- package/dist/css/themes/List.css +1 -1
- package/dist/css/themes/ListItem.css +1 -1
- package/dist/css/themes/ListItemAdditionalText.css +1 -0
- package/dist/css/themes/ListItemBase.css +1 -1
- package/dist/css/themes/ListItemGroup.css +1 -1
- package/dist/css/themes/ListItemGroupHeader.css +1 -1
- package/dist/css/themes/ListItemIcon.css +1 -0
- package/dist/css/themes/Menu.css +1 -1
- package/dist/css/themes/MenuItem.css +1 -0
- package/dist/css/themes/MessageStrip.css +1 -1
- package/dist/css/themes/MonthPicker.css +1 -1
- package/dist/css/themes/MultiComboBox.css +1 -1
- package/dist/css/themes/MultiComboBoxPopover.css +1 -1
- package/dist/css/themes/MultiInput.css +1 -1
- package/dist/css/themes/NavigationMenu.css +1 -1
- package/dist/css/themes/NavigationMenuItem.css +1 -0
- package/dist/css/themes/OptionBase.css +1 -0
- package/dist/css/themes/Panel.css +1 -1
- package/dist/css/themes/Popover.css +1 -1
- package/dist/css/themes/Popup.css +1 -1
- package/dist/css/themes/PopupsCommon.css +1 -1
- package/dist/css/themes/ProgressIndicator.css +1 -1
- package/dist/css/themes/RadioButton.css +1 -1
- package/dist/css/themes/RangeSlider.css +1 -1
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/ResponsivePopover.css +1 -1
- package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
- package/dist/css/themes/SegmentedButton.css +1 -1
- package/dist/css/themes/SegmentedButtonItem.css +1 -1
- package/dist/css/themes/Select.css +1 -1
- package/dist/css/themes/SelectPopover.css +1 -1
- package/dist/css/themes/SliderBase.css +1 -1
- package/dist/css/themes/SplitButton.css +1 -1
- package/dist/css/themes/StepInput.css +1 -1
- package/dist/css/themes/Switch.css +1 -1
- package/dist/css/themes/TabContainer.css +1 -1
- package/dist/css/themes/TabInOverflow.css +1 -1
- package/dist/css/themes/TabInStrip.css +1 -1
- package/dist/css/themes/TabSemanticIcon.css +1 -1
- package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
- package/dist/css/themes/Tag.css +1 -1
- package/dist/css/themes/Text.css +1 -1
- package/dist/css/themes/TextArea.css +1 -1
- package/dist/css/themes/TimePicker.css +1 -1
- package/dist/css/themes/Toast.css +1 -1
- package/dist/css/themes/ToggleButton.css +1 -1
- package/dist/css/themes/Token.css +1 -1
- package/dist/css/themes/Tokenizer.css +1 -1
- package/dist/css/themes/TokenizerPopover.css +1 -1
- package/dist/css/themes/Toolbar.css +1 -1
- package/dist/css/themes/ToolbarPopover.css +1 -1
- package/dist/css/themes/TreeItem.css +1 -1
- package/dist/css/themes/ValueStateMessage.css +1 -1
- package/dist/css/themes/YearPicker.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 +2414 -1795
- package/dist/custom-elements.json +1979 -1523
- package/dist/features/InputSuggestions.js +3 -1
- package/dist/features/InputSuggestions.js.map +1 -1
- package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.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 +6 -2
- package/dist/generated/i18n/i18n-defaults.js +6 -2
- package/dist/generated/i18n/i18n-defaults.js.map +1 -1
- package/dist/generated/templates/BusyIndicatorTemplate.lit.js +2 -2
- package/dist/generated/templates/BusyIndicatorTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ButtonTemplate.lit.js +3 -2
- package/dist/generated/templates/ButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CalendarTemplate.lit.js +1 -1
- package/dist/generated/templates/CalendarTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CheckBoxTemplate.lit.js +1 -1
- package/dist/generated/templates/CheckBoxTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ColorPaletteItemTemplate.lit.js +2 -2
- package/dist/generated/templates/ColorPaletteItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ColorPaletteTemplate.lit.js +1 -1
- package/dist/generated/templates/ColorPaletteTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +12 -9
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ComboBoxTemplate.lit.js +14 -11
- package/dist/generated/templates/ComboBoxTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DatePickerInputTemplate.lit.js +2 -2
- package/dist/generated/templates/DatePickerInputTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DatePickerTemplate.lit.js +2 -2
- package/dist/generated/templates/DatePickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DateRangePickerTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/DateRangePickerTemplate.lit.js +9 -0
- package/dist/generated/templates/DateRangePickerTemplate.lit.js.map +1 -0
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DateTimePickerTemplate.lit.js +2 -2
- package/dist/generated/templates/DateTimePickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/FileUploaderTemplate.lit.js +5 -7
- package/dist/generated/templates/FileUploaderTemplate.lit.js.map +1 -1
- package/dist/generated/templates/FormItemTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/FormItemTemplate.lit.js +6 -0
- package/dist/generated/templates/FormItemTemplate.lit.js.map +1 -0
- package/dist/generated/templates/FormTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/FormTemplate.lit.js +13 -0
- package/dist/generated/templates/FormTemplate.lit.js.map +1 -0
- package/dist/generated/templates/InputPopoverTemplate.lit.js +2 -2
- package/dist/generated/templates/InputPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/InputTemplate.lit.js +4 -4
- package/dist/generated/templates/InputTemplate.lit.js.map +1 -1
- package/dist/generated/templates/{MenuListItemTemplate.lit.d.ts → ListItemBaseTemplate.lit.d.ts} +2 -2
- package/dist/generated/templates/ListItemBaseTemplate.lit.js +5 -0
- package/dist/generated/templates/ListItemBaseTemplate.lit.js.map +1 -0
- package/dist/generated/templates/ListItemGroupHeaderTemplate.lit.js +1 -1
- package/dist/generated/templates/ListItemGroupHeaderTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListItemGroupTemplate.lit.js +1 -1
- package/dist/generated/templates/ListItemGroupTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MenuItemTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/{MenuListItemTemplate.lit.js → MenuItemTemplate.lit.js} +21 -15
- package/dist/generated/templates/MenuItemTemplate.lit.js.map +1 -0
- package/dist/generated/templates/MenuTemplate.lit.js +6 -8
- package/dist/generated/templates/MenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +2 -2
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MultiComboBoxTemplate.lit.js +4 -4
- package/dist/generated/templates/MultiComboBoxTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MultiInputTemplate.lit.js +28 -27
- package/dist/generated/templates/MultiInputTemplate.lit.js.map +1 -1
- package/dist/generated/templates/NavigationMenuItemTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/NavigationMenuItemTemplate.lit.js +57 -0
- package/dist/generated/templates/NavigationMenuItemTemplate.lit.js.map +1 -0
- package/dist/generated/templates/NavigationMenuTemplate.lit.js +6 -19
- package/dist/generated/templates/NavigationMenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/OptionCustomTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/OptionCustomTemplate.lit.js +5 -0
- package/dist/generated/templates/OptionCustomTemplate.lit.js.map +1 -0
- package/dist/generated/templates/OptionTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/OptionTemplate.lit.js +7 -0
- package/dist/generated/templates/OptionTemplate.lit.js.map +1 -0
- package/dist/generated/templates/RadioButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/RadioButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +2 -2
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +1 -1
- package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SelectPopoverTemplate.lit.js +6 -7
- package/dist/generated/templates/SelectPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SelectTemplate.lit.js +8 -9
- package/dist/generated/templates/SelectTemplate.lit.js.map +1 -1
- package/dist/generated/templates/StepInputTemplate.lit.js +3 -3
- package/dist/generated/templates/StepInputTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SwitchTemplate.lit.js +1 -1
- package/dist/generated/templates/SwitchTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabContainerTemplate.lit.js +2 -2
- package/dist/generated/templates/TabContainerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/TextAreaPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TextAreaTemplate.lit.js +2 -2
- package/dist/generated/templates/TextAreaTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +2 -2
- package/dist/generated/templates/TimePickerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TimePickerTemplate.lit.js +3 -3
- package/dist/generated/templates/TimePickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToggleButtonTemplate.lit.js +3 -2
- package/dist/generated/templates/ToggleButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToggleSpinButtonTemplate.lit.js +3 -2
- package/dist/generated/templates/ToggleSpinButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +4 -3
- package/dist/generated/templates/TokenizerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TokenizerTemplate.lit.js +4 -3
- package/dist/generated/templates/TokenizerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToolbarButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/ToolbarButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToolbarPopoverButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/ToolbarPopoverButtonTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToolbarPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/ToolbarPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToolbarTemplate.lit.js +1 -1
- package/dist/generated/templates/ToolbarTemplate.lit.js.map +1 -1
- package/dist/generated/themes/Avatar.css.js +1 -1
- package/dist/generated/themes/Avatar.css.js.map +1 -1
- package/dist/generated/themes/AvatarGroup.css.js +1 -1
- package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
- package/dist/generated/themes/Bar.css.js +1 -1
- package/dist/generated/themes/Bar.css.js.map +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
- package/dist/generated/themes/BusyIndicator.css.js +1 -1
- package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
- package/dist/generated/themes/Button.css.js +1 -1
- package/dist/generated/themes/Button.css.js.map +1 -1
- package/dist/generated/themes/Calendar.css.js +1 -1
- package/dist/generated/themes/Calendar.css.js.map +1 -1
- package/dist/generated/themes/CalendarHeader.css.js +1 -1
- package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
- package/dist/generated/themes/CalendarLegend.css.js +1 -1
- package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
- package/dist/generated/themes/Card.css.js +1 -1
- package/dist/generated/themes/Card.css.js.map +1 -1
- package/dist/generated/themes/CardHeader.css.js +1 -1
- package/dist/generated/themes/CardHeader.css.js.map +1 -1
- package/dist/generated/themes/Carousel.css.js +1 -1
- package/dist/generated/themes/Carousel.css.js.map +1 -1
- package/dist/generated/themes/CheckBox.css.js +1 -1
- package/dist/generated/themes/CheckBox.css.js.map +1 -1
- package/dist/generated/themes/ColorPalette.css.js +1 -1
- package/dist/generated/themes/ColorPalette.css.js.map +1 -1
- package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
- package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
- package/dist/generated/themes/ColorPicker.css.js +1 -1
- package/dist/generated/themes/ColorPicker.css.js.map +1 -1
- package/dist/generated/themes/ComboBox.css.js +1 -1
- package/dist/generated/themes/ComboBox.css.js.map +1 -1
- package/dist/generated/themes/CustomListItem.css.js +1 -1
- package/dist/generated/themes/CustomListItem.css.js.map +1 -1
- package/dist/generated/themes/DatePicker.css.js +1 -1
- package/dist/generated/themes/DatePicker.css.js.map +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
- package/dist/generated/themes/DayPicker.css.js +1 -1
- package/dist/generated/themes/DayPicker.css.js.map +1 -1
- package/dist/generated/themes/Dialog.css.js +1 -1
- package/dist/generated/themes/Dialog.css.js.map +1 -1
- package/dist/generated/themes/FileUploader.css.js +1 -1
- package/dist/generated/themes/FileUploader.css.js.map +1 -1
- package/dist/generated/themes/Form.css.js +9 -0
- package/dist/generated/themes/Form.css.js.map +1 -0
- package/dist/generated/themes/FormItem.css.js +9 -0
- package/dist/generated/themes/FormItem.css.js.map +1 -0
- package/dist/generated/themes/FormLabelSpan.css.js +9 -0
- package/dist/generated/themes/FormLabelSpan.css.js.map +1 -0
- package/dist/generated/themes/FormLayout.css.d.ts +3 -0
- package/dist/generated/themes/FormLayout.css.js +9 -0
- package/dist/generated/themes/FormLayout.css.js.map +1 -0
- package/dist/generated/themes/GrowingButton.css.js +1 -1
- package/dist/generated/themes/GrowingButton.css.js.map +1 -1
- package/dist/generated/themes/Icon.css.js +1 -1
- package/dist/generated/themes/Icon.css.js.map +1 -1
- package/dist/generated/themes/Input.css.js +1 -1
- package/dist/generated/themes/Input.css.js.map +1 -1
- package/dist/generated/themes/InputIcon.css.js +1 -1
- package/dist/generated/themes/InputIcon.css.js.map +1 -1
- package/dist/generated/themes/InputSharedStyles.css.js +1 -1
- package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
- package/dist/generated/themes/Label.css.js +1 -1
- package/dist/generated/themes/Label.css.js.map +1 -1
- package/dist/generated/themes/Link.css.js +1 -1
- package/dist/generated/themes/Link.css.js.map +1 -1
- package/dist/generated/themes/List.css.js +1 -1
- package/dist/generated/themes/List.css.js.map +1 -1
- package/dist/generated/themes/ListItem.css.js +1 -1
- package/dist/generated/themes/ListItem.css.js.map +1 -1
- package/dist/generated/themes/ListItemAdditionalText.css.d.ts +3 -0
- package/dist/generated/themes/{SelectMenu.css.js → ListItemAdditionalText.css.js} +2 -2
- package/dist/generated/themes/ListItemAdditionalText.css.js.map +1 -0
- package/dist/generated/themes/ListItemBase.css.js +1 -1
- package/dist/generated/themes/ListItemBase.css.js.map +1 -1
- package/dist/generated/themes/ListItemGroup.css.js +1 -1
- package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
- package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
- package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
- package/dist/generated/themes/ListItemIcon.css.d.ts +3 -0
- package/dist/generated/themes/ListItemIcon.css.js +9 -0
- package/dist/generated/themes/ListItemIcon.css.js.map +1 -0
- package/dist/generated/themes/Menu.css.js +1 -1
- package/dist/generated/themes/Menu.css.js.map +1 -1
- package/dist/generated/themes/MenuItem.css.d.ts +3 -0
- package/dist/generated/themes/MenuItem.css.js +9 -0
- package/dist/generated/themes/MenuItem.css.js.map +1 -0
- package/dist/generated/themes/MessageStrip.css.js +1 -1
- package/dist/generated/themes/MessageStrip.css.js.map +1 -1
- package/dist/generated/themes/MonthPicker.css.js +1 -1
- package/dist/generated/themes/MonthPicker.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBox.css.js +1 -1
- package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
- package/dist/generated/themes/MultiInput.css.js +1 -1
- package/dist/generated/themes/MultiInput.css.js.map +1 -1
- package/dist/generated/themes/NavigationMenu.css.js +1 -1
- package/dist/generated/themes/NavigationMenu.css.js.map +1 -1
- package/dist/generated/themes/NavigationMenuItem.css.d.ts +3 -0
- package/dist/generated/themes/NavigationMenuItem.css.js +9 -0
- package/dist/generated/themes/NavigationMenuItem.css.js.map +1 -0
- package/dist/generated/themes/OptionBase.css.d.ts +3 -0
- package/dist/generated/themes/{SelectMenuOption.css.js → OptionBase.css.js} +3 -2
- package/dist/generated/themes/{SelectMenu.css.js.map → OptionBase.css.js.map} +1 -1
- package/dist/generated/themes/Panel.css.js +1 -1
- package/dist/generated/themes/Panel.css.js.map +1 -1
- package/dist/generated/themes/Popover.css.js +1 -1
- package/dist/generated/themes/Popover.css.js.map +1 -1
- package/dist/generated/themes/Popup.css.js +1 -1
- package/dist/generated/themes/Popup.css.js.map +1 -1
- package/dist/generated/themes/PopupsCommon.css.js +1 -1
- package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
- package/dist/generated/themes/ProgressIndicator.css.js +1 -1
- package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
- package/dist/generated/themes/RadioButton.css.js +1 -1
- package/dist/generated/themes/RadioButton.css.js.map +1 -1
- package/dist/generated/themes/RangeSlider.css.js +1 -1
- package/dist/generated/themes/RangeSlider.css.js.map +1 -1
- package/dist/generated/themes/RatingIndicator.css.js +1 -1
- package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
- package/dist/generated/themes/ResponsivePopover.css.js +1 -1
- package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButton.css.js +1 -1
- package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
- package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
- package/dist/generated/themes/Select.css.js +1 -1
- package/dist/generated/themes/Select.css.js.map +1 -1
- package/dist/generated/themes/SelectPopover.css.js +1 -1
- package/dist/generated/themes/SelectPopover.css.js.map +1 -1
- package/dist/generated/themes/SliderBase.css.js +1 -1
- package/dist/generated/themes/SliderBase.css.js.map +1 -1
- package/dist/generated/themes/SplitButton.css.js +1 -1
- package/dist/generated/themes/SplitButton.css.js.map +1 -1
- package/dist/generated/themes/StepInput.css.js +1 -1
- package/dist/generated/themes/StepInput.css.js.map +1 -1
- package/dist/generated/themes/Switch.css.js +1 -1
- package/dist/generated/themes/Switch.css.js.map +1 -1
- package/dist/generated/themes/TabContainer.css.js +1 -1
- package/dist/generated/themes/TabContainer.css.js.map +1 -1
- package/dist/generated/themes/TabInOverflow.css.js +1 -1
- package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
- package/dist/generated/themes/TabInStrip.css.js +1 -1
- package/dist/generated/themes/TabInStrip.css.js.map +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
- package/dist/generated/themes/Tag.css.js +1 -1
- package/dist/generated/themes/Tag.css.js.map +1 -1
- package/dist/generated/themes/Text.css.js +1 -1
- package/dist/generated/themes/Text.css.js.map +1 -1
- package/dist/generated/themes/TextArea.css.js +1 -1
- package/dist/generated/themes/TextArea.css.js.map +1 -1
- package/dist/generated/themes/TimePicker.css.js +1 -1
- package/dist/generated/themes/TimePicker.css.js.map +1 -1
- package/dist/generated/themes/Toast.css.js +1 -1
- package/dist/generated/themes/Toast.css.js.map +1 -1
- package/dist/generated/themes/ToggleButton.css.js +1 -1
- package/dist/generated/themes/ToggleButton.css.js.map +1 -1
- package/dist/generated/themes/Token.css.js +1 -1
- package/dist/generated/themes/Token.css.js.map +1 -1
- package/dist/generated/themes/Tokenizer.css.js +1 -1
- package/dist/generated/themes/Tokenizer.css.js.map +1 -1
- package/dist/generated/themes/TokenizerPopover.css.js +1 -1
- package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
- package/dist/generated/themes/Toolbar.css.js +1 -1
- package/dist/generated/themes/Toolbar.css.js.map +1 -1
- package/dist/generated/themes/ToolbarPopover.css.js +1 -1
- package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
- package/dist/generated/themes/TreeItem.css.js +1 -1
- package/dist/generated/themes/TreeItem.css.js.map +1 -1
- package/dist/generated/themes/ValueStateMessage.css.js +1 -1
- package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
- package/dist/generated/themes/YearPicker.css.js +1 -1
- package/dist/generated/themes/YearPicker.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/popup-utils/OpenedPopupsRegistry.js +1 -1
- package/dist/popup-utils/OpenedPopupsRegistry.js.map +1 -1
- package/dist/popup-utils/PopoverRegistry.js +5 -4
- package/dist/popup-utils/PopoverRegistry.js.map +1 -1
- package/dist/styles/Icon.css +33 -0
- package/dist/styles/Icon.module.css +33 -0
- package/dist/types/FormItemSpacing.d.ts +19 -0
- package/dist/types/FormItemSpacing.js +21 -0
- package/dist/types/FormItemSpacing.js.map +1 -0
- package/dist/types/{HighlightTypes.d.ts → Highlight.d.ts} +3 -3
- package/dist/types/Highlight.js +30 -0
- package/dist/types/Highlight.js.map +1 -0
- package/dist/types/InputType.d.ts +7 -1
- package/dist/types/InputType.js +6 -0
- package/dist/types/InputType.js.map +1 -1
- package/dist/types/LinkAccessibleRole.d.ts +19 -0
- package/dist/types/LinkAccessibleRole.js +21 -0
- package/dist/types/LinkAccessibleRole.js.map +1 -0
- package/dist/vscode.html-custom-data.json +306 -157
- package/dist/web-types.json +698 -364
- package/package.json +10 -10
- package/src/BusyIndicator.hbs +1 -1
- package/src/Button.hbs +10 -1
- package/src/Calendar.hbs +2 -2
- package/src/CheckBox.hbs +0 -2
- package/src/ColorPalette.hbs +3 -1
- package/src/ColorPaletteItem.hbs +1 -1
- package/src/ColorPalettePopover.hbs +2 -1
- package/src/ComboBox.hbs +2 -2
- package/src/ComboBoxPopover.hbs +15 -4
- package/src/DatePickerInput.hbs +1 -3
- package/src/DatePickerPopover.hbs +3 -3
- package/src/DateRangePicker.hbs +23 -0
- package/src/DateTimePickerPopover.hbs +2 -2
- package/src/FileUploader.hbs +10 -16
- package/src/FileUploaderPopover.hbs +1 -1
- package/src/Form.hbs +37 -0
- package/src/FormItem.hbs +14 -0
- package/src/Input.hbs +1 -3
- package/src/InputPopover.hbs +5 -5
- package/src/ListItemBase.hbs +21 -0
- package/src/ListItemGroup.hbs +12 -12
- package/src/ListItemGroupHeader.hbs +0 -1
- package/src/Menu.hbs +17 -49
- package/src/MenuItem.hbs +109 -0
- package/src/MonthPicker.hbs +1 -1
- package/src/MultiComboBox.hbs +2 -2
- package/src/MultiComboBoxPopover.hbs +4 -4
- package/src/MultiInput.hbs +4 -2
- package/src/NavigationMenu.hbs +14 -101
- package/src/NavigationMenuItem.hbs +124 -0
- package/src/Option.hbs +15 -0
- package/src/OptionCustom.hbs +5 -0
- package/src/RadioButton.hbs +0 -1
- package/src/ResponsivePopover.hbs +6 -5
- package/src/SegmentedButtonItem.hbs +1 -1
- package/src/Select.hbs +2 -3
- package/src/SelectPopover.hbs +7 -20
- package/src/StepInput.hbs +2 -4
- package/src/Switch.hbs +0 -1
- package/src/TabContainer.hbs +4 -4
- package/src/TextArea.hbs +0 -2
- package/src/TextAreaPopover.hbs +1 -1
- package/src/TimePicker.hbs +4 -5
- package/src/TimePickerPopover.hbs +6 -5
- package/src/TokenizerPopover.hbs +9 -7
- package/src/ToolbarButton.hbs +1 -1
- package/src/ToolbarPopover.hbs +2 -2
- package/src/ToolbarPopoverButton.hbs +1 -1
- package/src/i18n/messagebundle.properties +11 -3
- package/src/i18n/messagebundle_en.properties +13 -3
- package/src/i18n/messagebundle_en_US_saprigi.properties +13 -3
- package/src/styles/Icon.module.css +1 -0
- package/src/themes/Button.css +7 -10
- package/src/themes/Calendar.css +1 -0
- package/src/themes/CalendarLegendItem.css +4 -1
- package/src/themes/ColorPalette.css +11 -6
- package/src/themes/ColorPaletteItem.css +55 -27
- package/src/themes/Form.css +50 -0
- package/src/themes/FormItem.css +65 -0
- package/src/themes/FormLabelSpan.css +267 -0
- package/src/themes/FormLayout.css +159 -0
- package/src/themes/GrowingButton.css +1 -1
- package/src/themes/Input.css +20 -20
- package/src/themes/InputIcon.css +6 -13
- package/src/themes/InputSharedStyles.css +15 -16
- package/src/themes/Label.css +7 -4
- package/src/themes/ListItem.css +6 -57
- package/src/themes/ListItemAdditionalText.css +10 -0
- package/src/themes/ListItemBase.css +61 -46
- package/src/themes/ListItemIcon.css +6 -0
- package/src/themes/Menu.css +0 -10
- package/src/themes/{MenuListItem.css → MenuItem.css} +12 -0
- package/src/themes/MonthPicker.css +23 -0
- package/src/themes/NavigationMenu.css +7 -65
- package/src/themes/NavigationMenuItem.css +54 -0
- package/src/themes/OptionBase.css +3 -0
- package/src/themes/Popover.css +1 -1
- package/src/themes/Popup.css +1 -1
- package/src/themes/ResponsivePopover.css +3 -3
- package/src/themes/ResponsivePopoverCommon.css +3 -3
- package/src/themes/SegmentedButton.css +2 -3
- package/src/themes/SegmentedButtonItem.css +0 -8
- package/src/themes/SelectPopover.css +1 -9
- package/src/themes/TimePicker.css +1 -24
- package/src/themes/base/ColorPalette-parameters.css +10 -4
- package/src/themes/base/Form-parameters.css +20 -0
- package/src/themes/base/sizes-parameters.css +25 -7
- package/src/themes/sap_fiori_3/parameters-bundle.css +2 -2
- package/src/themes/sap_fiori_3/sizes-parameters.css +6 -0
- package/src/themes/sap_fiori_3_dark/parameters-bundle.css +2 -2
- package/src/themes/sap_fiori_3_dark/sizes-parameters.css +6 -0
- package/src/themes/sap_fiori_3_hcb/Tag-parameters.css +102 -0
- package/src/themes/sap_fiori_3_hcw/Tag-parameters.css +102 -0
- package/src/themes/sap_horizon/ColorPalette-parameters.css +7 -4
- package/src/themes/sap_horizon/parameters-bundle.css +1 -0
- package/src/themes/sap_horizon/sizes-parameters.css +4 -2
- package/src/themes/sap_horizon_dark/ColorPalette-parameters.css +7 -4
- package/src/themes/sap_horizon_dark/sizes-parameters.css +4 -2
- package/src/themes/sap_horizon_dark_exp/ColorPalette-parameters.css +5 -4
- package/src/themes/sap_horizon_dark_exp/sizes-parameters.css +1 -2
- package/src/themes/sap_horizon_exp/ColorPalette-parameters.css +5 -4
- package/src/themes/sap_horizon_exp/parameters-bundle.css +1 -1
- package/src/themes/sap_horizon_exp/sizes-parameters.css +1 -2
- package/src/themes/sap_horizon_hcb/ColorPalette-parameters.css +8 -0
- package/src/themes/sap_horizon_hcb/Tag-parameters.css +9 -9
- package/src/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
- package/src/themes/sap_horizon_hcw/ColorPalette-parameters.css +8 -0
- package/src/themes/sap_horizon_hcw/Tag-parameters.css +9 -9
- package/src/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
- package/dist/ComboBoxGroupItem.js.map +0 -1
- package/dist/MenuListItem.d.ts +0 -61
- package/dist/MenuListItem.js +0 -71
- package/dist/MenuListItem.js.map +0 -1
- package/dist/SelectMenu.d.ts +0 -102
- package/dist/SelectMenu.js +0 -237
- package/dist/SelectMenu.js.map +0 -1
- package/dist/SelectMenuOption.d.ts +0 -94
- package/dist/SelectMenuOption.js +0 -78
- package/dist/SelectMenuOption.js.map +0 -1
- package/dist/css/themes/MenuListItem.css +0 -1
- package/dist/css/themes/SelectMenu.css +0 -1
- package/dist/css/themes/SelectMenuOption.css +0 -0
- package/dist/features/InputElementsFormSupport.d.ts +0 -41
- package/dist/features/InputElementsFormSupport.js +0 -134
- package/dist/features/InputElementsFormSupport.js.map +0 -1
- package/dist/generated/templates/MenuListItemTemplate.lit.js.map +0 -1
- package/dist/generated/templates/SelectMenuTemplate.lit.d.ts +0 -4
- package/dist/generated/templates/SelectMenuTemplate.lit.js +0 -15
- package/dist/generated/templates/SelectMenuTemplate.lit.js.map +0 -1
- package/dist/generated/themes/MenuListItem.css.js +0 -9
- package/dist/generated/themes/MenuListItem.css.js.map +0 -1
- package/dist/generated/themes/SelectMenuOption.css.js.map +0 -1
- package/dist/styles/Input.css +0 -0
- package/dist/styles/Input.module.css +0 -0
- package/dist/types/HighlightTypes.js +0 -30
- package/dist/types/HighlightTypes.js.map +0 -1
- package/src/MenuListItem.hbs +0 -35
- package/src/SelectMenu.hbs +0 -57
- package/src/styles/Input.module.css +0 -0
- package/src/themes/SelectMenu.css +0 -16
- package/src/themes/SelectMenuOption.css +0 -0
- /package/dist/generated/themes/{MenuListItem.css.d.ts → Form.css.d.ts} +0 -0
- /package/dist/generated/themes/{SelectMenu.css.d.ts → FormItem.css.d.ts} +0 -0
- /package/dist/generated/themes/{SelectMenuOption.css.d.ts → FormLabelSpan.css.d.ts} +0 -0
package/dist/Calendar.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
1
2
|
import type { ChangeInfo } from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
2
|
-
import CalendarDate from "./CalendarDate.js";
|
|
3
3
|
import CalendarPart from "./CalendarPart.js";
|
|
4
4
|
import type { DayPickerChangeEventDetail } from "./DayPicker.js";
|
|
5
5
|
import type { MonthPickerChangeEventDetail } from "./MonthPicker.js";
|
|
@@ -20,6 +20,11 @@ interface ICalendarPicker {
|
|
|
20
20
|
_firstYear?: number;
|
|
21
21
|
_lastYear?: number;
|
|
22
22
|
}
|
|
23
|
+
interface ICalendarSelectedDates extends UI5Element {
|
|
24
|
+
value?: string;
|
|
25
|
+
startValue?: string;
|
|
26
|
+
endValue?: string;
|
|
27
|
+
}
|
|
23
28
|
type CalendarSelectionChangeEventDetail = {
|
|
24
29
|
selectedValues: Array<string>;
|
|
25
30
|
selectedDates: Array<number>;
|
|
@@ -170,7 +175,7 @@ declare class Calendar extends CalendarPart {
|
|
|
170
175
|
* for this calendar as instances of `ui5-date`.
|
|
171
176
|
* @public
|
|
172
177
|
*/
|
|
173
|
-
dates: Array<
|
|
178
|
+
dates: Array<ICalendarSelectedDates>;
|
|
174
179
|
/**
|
|
175
180
|
* Defines the special dates, visually emphasized in the calendar.
|
|
176
181
|
* @public
|
|
@@ -182,11 +187,11 @@ declare class Calendar extends CalendarPart {
|
|
|
182
187
|
* @private
|
|
183
188
|
*/
|
|
184
189
|
_selectedItemType: `${CalendarLegendItemType}`;
|
|
190
|
+
constructor();
|
|
185
191
|
/**
|
|
186
192
|
* @private
|
|
187
193
|
*/
|
|
188
194
|
get _selectedDatesTimestamps(): Array<number>;
|
|
189
|
-
constructor();
|
|
190
195
|
/**
|
|
191
196
|
* @private
|
|
192
197
|
*/
|
|
@@ -247,7 +252,7 @@ declare class Calendar extends CalendarPart {
|
|
|
247
252
|
*/
|
|
248
253
|
get selectedDates(): Array<number>;
|
|
249
254
|
/**
|
|
250
|
-
* Creates instances of `ui5-date` inside this `ui5-calendar` with values, equal to the provided UTC timestamps
|
|
255
|
+
* Creates instances of `ui5-date` or `ui5-date-range` inside this `ui5-calendar` with values, equal to the provided UTC timestamps
|
|
251
256
|
* @protected
|
|
252
257
|
* @deprecated
|
|
253
258
|
* @param selectedDates Array of UTC timestamps
|
|
@@ -255,4 +260,4 @@ declare class Calendar extends CalendarPart {
|
|
|
255
260
|
set selectedDates(selectedDates: Array<number>);
|
|
256
261
|
}
|
|
257
262
|
export default Calendar;
|
|
258
|
-
export type { ICalendarPicker, CalendarSelectionChangeEventDetail, SpecialCalendarDateT, };
|
|
263
|
+
export type { ICalendarPicker, ICalendarSelectedDates, CalendarSelectionChangeEventDetail, SpecialCalendarDateT, };
|
package/dist/Calendar.js
CHANGED
|
@@ -5,6 +5,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
8
|
+
import "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
8
9
|
import event from "@ui5/webcomponents-base/dist/decorators/event.js";
|
|
9
10
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
10
11
|
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
@@ -18,6 +19,7 @@ import getLocale from "@ui5/webcomponents-base/dist/locale/getLocale.js";
|
|
|
18
19
|
import DateFormat from "@ui5/webcomponents-localization/dist/DateFormat.js";
|
|
19
20
|
import UI5Date from "@ui5/webcomponents-localization/dist/dates/UI5Date.js";
|
|
20
21
|
import CalendarDate from "./CalendarDate.js";
|
|
22
|
+
import CalendarDateRange from "./CalendarDateRange.js";
|
|
21
23
|
import CalendarPart from "./CalendarPart.js";
|
|
22
24
|
import CalendarHeader from "./CalendarHeader.js";
|
|
23
25
|
import DayPicker from "./DayPicker.js";
|
|
@@ -132,36 +134,86 @@ import calendarCSS from "./generated/themes/Calendar.css.js";
|
|
|
132
134
|
* @since 1.0.0-rc.11
|
|
133
135
|
*/
|
|
134
136
|
let Calendar = class Calendar extends CalendarPart {
|
|
137
|
+
constructor() {
|
|
138
|
+
super();
|
|
139
|
+
this._valueIsProcessed = false;
|
|
140
|
+
}
|
|
135
141
|
/**
|
|
136
142
|
* @private
|
|
137
143
|
*/
|
|
138
144
|
get _selectedDatesTimestamps() {
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
const
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
145
|
+
let selectedDates = [];
|
|
146
|
+
if (this.selectionMode === CalendarSelectionMode.Range) {
|
|
147
|
+
const range = this.dates.find(date => date.hasAttribute("ui5-date-range"));
|
|
148
|
+
const startDate = range && range.startValue && this.getFormat().parse(range.startValue, true);
|
|
149
|
+
const endDate = range && range.endValue && this.getFormat().parse(range.endValue, true);
|
|
150
|
+
if (startDate) {
|
|
151
|
+
selectedDates.push(startDate.getTime() / 1000);
|
|
152
|
+
}
|
|
153
|
+
if (endDate) {
|
|
154
|
+
selectedDates.push(endDate.getTime() / 1000);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
selectedDates = this.dates
|
|
159
|
+
.filter(dateElement => {
|
|
160
|
+
return dateElement.hasAttribute("ui5-date")
|
|
161
|
+
&& dateElement.value
|
|
162
|
+
&& this._isValidCalendarDate(dateElement.value)
|
|
163
|
+
&& this._getTimeStampFromString(dateElement.value);
|
|
164
|
+
})
|
|
165
|
+
.map(dateElement => Number(this._getTimeStampFromString(dateElement.value)) / 1000);
|
|
166
|
+
}
|
|
167
|
+
return selectedDates;
|
|
148
168
|
}
|
|
149
169
|
/**
|
|
150
170
|
* @private
|
|
151
171
|
*/
|
|
152
172
|
_setSelectedDates(selectedDates) {
|
|
153
|
-
const
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
173
|
+
const selectedUTCDates = selectedDates.map(timestamp => this.getFormat().format(UI5Date.getInstance(timestamp * 1000), true));
|
|
174
|
+
if (this.selectionMode === CalendarSelectionMode.Range) {
|
|
175
|
+
// Create tags for the selected dates that don't already exist in DOM
|
|
176
|
+
if (selectedUTCDates.length) {
|
|
177
|
+
let dateRange = this.dates.find(dateElement => dateElement.hasAttribute("ui5-date-range") && dateElement.startValue === selectedUTCDates[0]);
|
|
178
|
+
if (!dateRange) {
|
|
179
|
+
dateRange = document.createElement(CalendarDateRange.getMetadata().getTag());
|
|
180
|
+
dateRange.startValue = selectedUTCDates[0];
|
|
181
|
+
this.appendChild(dateRange);
|
|
182
|
+
}
|
|
183
|
+
else {
|
|
184
|
+
dateRange.endValue = selectedUTCDates[1];
|
|
185
|
+
}
|
|
186
|
+
// Remove all elements for dates that are no longer selected
|
|
187
|
+
this.dates
|
|
188
|
+
.filter(dateElement => {
|
|
189
|
+
return dateElement.hasAttribute("ui5-date")
|
|
190
|
+
|| (dateRange && dateElement.startValue !== dateRange.startValue);
|
|
191
|
+
})
|
|
192
|
+
.forEach(dateElement => {
|
|
193
|
+
this.removeChild(dateElement);
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
else {
|
|
198
|
+
const valuesInDOM = this._selectedDatesTimestamps.map(timestamp => this.getFormat().format(UI5Date.getInstance(timestamp * 1000)));
|
|
199
|
+
// Remove all elements for dates that are no longer selected
|
|
200
|
+
this.dates
|
|
201
|
+
.filter(dateElement => {
|
|
202
|
+
return dateElement.hasAttribute("ui5-date-range")
|
|
203
|
+
|| (dateElement.hasAttribute("ui5-date") && !selectedUTCDates.includes(dateElement.value));
|
|
204
|
+
})
|
|
205
|
+
.forEach(dateElement => {
|
|
206
|
+
this.removeChild(dateElement);
|
|
207
|
+
});
|
|
208
|
+
// Create tags for the selected dates that don't already exist in DOM
|
|
209
|
+
selectedUTCDates
|
|
210
|
+
.filter(value => !valuesInDOM.includes(value))
|
|
211
|
+
.forEach(value => {
|
|
212
|
+
const dateElement = document.createElement(CalendarDate.getMetadata().getTag());
|
|
213
|
+
dateElement.value = value;
|
|
214
|
+
this.appendChild(dateElement);
|
|
215
|
+
});
|
|
216
|
+
}
|
|
165
217
|
}
|
|
166
218
|
_isValidCalendarDate(dateString) {
|
|
167
219
|
const date = this.getFormat().parse(dateString);
|
|
@@ -245,7 +297,7 @@ let Calendar = class Calendar extends CalendarPart {
|
|
|
245
297
|
onHeaderShowMonthPress(e) {
|
|
246
298
|
this._currentPickerDOM._autoFocus = false;
|
|
247
299
|
this._currentPicker = "month";
|
|
248
|
-
this.fireEvent("show-month-
|
|
300
|
+
this.fireEvent("show-month-view", e);
|
|
249
301
|
}
|
|
250
302
|
/**
|
|
251
303
|
* The user clicked the "year" button in the header
|
|
@@ -253,7 +305,7 @@ let Calendar = class Calendar extends CalendarPart {
|
|
|
253
305
|
onHeaderShowYearPress(e) {
|
|
254
306
|
this._currentPickerDOM._autoFocus = false;
|
|
255
307
|
this._currentPicker = "year";
|
|
256
|
-
this.fireEvent("show-year-
|
|
308
|
+
this.fireEvent("show-year-view", e);
|
|
257
309
|
}
|
|
258
310
|
get _currentPickerDOM() {
|
|
259
311
|
// Calendar's shadowRoot and all the pickers are always present - the "!" is safe to be used.
|
|
@@ -368,9 +420,11 @@ let Calendar = class Calendar extends CalendarPart {
|
|
|
368
420
|
_onkeydown(e) {
|
|
369
421
|
if (isF4(e) && this._currentPicker !== "month") {
|
|
370
422
|
this._currentPicker = "month";
|
|
423
|
+
this.fireEvent("show-month-view", e);
|
|
371
424
|
}
|
|
372
425
|
if (isF4Shift(e) && this._currentPicker !== "year") {
|
|
373
426
|
this._currentPicker = "year";
|
|
427
|
+
this.fireEvent("show-year-view", e);
|
|
374
428
|
}
|
|
375
429
|
}
|
|
376
430
|
_onLegendFocusOut() {
|
|
@@ -388,7 +442,7 @@ let Calendar = class Calendar extends CalendarPart {
|
|
|
388
442
|
return this._selectedDatesTimestamps;
|
|
389
443
|
}
|
|
390
444
|
/**
|
|
391
|
-
* Creates instances of `ui5-date` inside this `ui5-calendar` with values, equal to the provided UTC timestamps
|
|
445
|
+
* Creates instances of `ui5-date` or `ui5-date-range` inside this `ui5-calendar` with values, equal to the provided UTC timestamps
|
|
392
446
|
* @protected
|
|
393
447
|
* @deprecated
|
|
394
448
|
* @param selectedDates Array of UTC timestamps
|
|
@@ -447,6 +501,7 @@ Calendar = __decorate([
|
|
|
447
501
|
styles: calendarCSS,
|
|
448
502
|
dependencies: [
|
|
449
503
|
CalendarDate,
|
|
504
|
+
CalendarDateRange,
|
|
450
505
|
CalendarHeader,
|
|
451
506
|
DayPicker,
|
|
452
507
|
MonthPicker,
|
|
@@ -478,8 +533,8 @@ Calendar = __decorate([
|
|
|
478
533
|
timestamp: { type: Number },
|
|
479
534
|
},
|
|
480
535
|
}),
|
|
481
|
-
event("show-month-
|
|
482
|
-
event("show-year-
|
|
536
|
+
event("show-month-view"),
|
|
537
|
+
event("show-year-view")
|
|
483
538
|
], Calendar);
|
|
484
539
|
Calendar.define();
|
|
485
540
|
export default Calendar;
|
package/dist/Calendar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Calendar.js","sourceRoot":"","sources":["../src/Calendar.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type { ChangeInfo } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport transformDateToSecondaryType from \"@ui5/webcomponents-localization/dist/dates/transformDateToSecondaryType.js\";\nimport convertMonthNumbersToMonthNames from \"@ui5/webcomponents-localization/dist/dates/convertMonthNumbersToMonthNames.js\";\nimport CalendarDateComponent from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport {\n\tisF4,\n\tisF4Shift,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\nimport CalendarDate from \"./CalendarDate.js\";\nimport CalendarPart from \"./CalendarPart.js\";\nimport CalendarHeader from \"./CalendarHeader.js\";\nimport DayPicker from \"./DayPicker.js\";\nimport type { DayPickerChangeEventDetail } from \"./DayPicker.js\";\nimport MonthPicker from \"./MonthPicker.js\";\nimport type { MonthPickerChangeEventDetail } from \"./MonthPicker.js\";\nimport YearPicker from \"./YearPicker.js\";\nimport type { YearPickerChangeEventDetail } from \"./YearPicker.js\";\nimport CalendarSelectionMode from \"./types/CalendarSelectionMode.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\nimport CalendarLegend from \"./CalendarLegend.js\";\nimport type { CalendarLegendItemSelectionChangeEventDetail } from \"./CalendarLegend.js\";\nimport SpecialCalendarDate from \"./SpecialCalendarDate.js\";\nimport CalendarLegendItemType from \"./types/CalendarLegendItemType.js\";\n\n// Default calendar for bundling\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\";\n\n// Template\nimport CalendarTemplate from \"./generated/templates/CalendarTemplate.lit.js\";\n\n// Styles\nimport calendarCSS from \"./generated/themes/Calendar.css.js\";\n\ninterface ICalendarPicker {\n\t_showPreviousPage: () => void,\n\t_showNextPage: () => void,\n\t_hasPreviousPage: () => boolean,\n\t_hasNextPage: () => boolean,\n\t_autoFocus?: boolean,\n\t_firstYear?: number,\n\t_lastYear?: number,\n}\n\ntype CalendarSelectionChangeEventDetail = {\n\tselectedValues: Array<string>,\n\tselectedDates: Array<number>,\n\ttimestamp: number | undefined,\n}\n\ntype SpecialCalendarDateT = {\n\tspecialDateTimestamp: number;\n\ttype: `${CalendarLegendItemType}`;\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-calendar` component allows users to select one or more dates.\n *\n * Currently selected dates are represented with instances of `ui5-date` as\n * children of the `ui5-calendar`. The value property of each `ui5-date` must be a\n * date string, correctly formatted according to the `ui5-calendar`'s `formatPattern` property.\n * Whenever the user changes the date selection, `ui5-calendar` will automatically create/remove instances\n * of `ui5-date` in itself, unless you prevent this behavior by calling `preventDefault()` for the\n * `selection-change` event. This is useful if you want to control the selected dates externally.\n *\n * ### Usage\n *\n * The user can navigate to a particular date by:\n *\n * - Pressing over a month inside the months view\n * - Pressing over an year inside the years view\n *\n * The user can confirm a date selection by pressing over a date inside the days view.\n *\n * ### Keyboard Handling\n * The `ui5-calendar` provides advanced keyboard handling.\n * When a picker is showed and focused the user can use the following keyboard\n * shortcuts in order to perform a navigation:\n *\n * - Day picker:\n *\n * - [F4] - Shows month picker\n * - [Shift] + [F4] - Shows year picker\n * - [Page Up] - Navigate to the previous month\n * - [Page Down] - Navigate to the next month\n * - [Shift] + [Page Up] - Navigate to the previous year\n * - [Shift] + [Page Down] - Navigate to the next year\n * - [Ctrl] + [Shift] + [Page Up] - Navigate ten years backwards\n * - [Ctrl] + [Shift] + [Page Down] - Navigate ten years forwards\n * - [Home] - Navigate to the first day of the week\n * - [End] - Navigate to the last day of the week\n * - [Ctrl] + [Home] - Navigate to the first day of the month\n * - [Ctrl] + [End] - Navigate to the last day of the month\n *\n * - Month picker:\n *\n * - [Page Up] - Navigate to the previous year\n * - [Page Down] - Navigate to the next year\n * - [Home] - Navigate to the first month of the current row\n * - [End] - Navigate to the last month of the current row\n * - [Ctrl] + [Home] - Navigate to the first month of the current year\n * - [Ctrl] + [End] - Navigate to the last month of the year\n *\n * - Year picker:\n *\n * - [Page Up] - Navigate to the previous year range\n * - [Page Down] - Navigate the next year range\n * - [Home] - Navigate to the first year of the current row\n * - [End] - Navigate to the last year of the current row\n * - [Ctrl] + [Home] - Navigate to the first year of the current year range\n * - [Ctrl] + [End] - Navigate to the last year of the current year range\n *\n * #### Fast Navigation\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n * ### Calendar types\n * The component supports several calendar types - Gregorian, Buddhist, Islamic, Japanese and Persian.\n * By default the Gregorian Calendar is used. In order to use the Buddhist, Islamic, Japanese or Persian calendar,\n * you need to set the `primaryCalendarType` property and import one or more of the following modules:\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Buddhist.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Islamic.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Japanese.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Persian.js\";`\n *\n * Or, you can use the global configuration and set the `calendarType` key:\n *\n * ```html\n * <script data-id=\"sap-ui-config\" type=\"application/json\">\n * \t{\n * \t\t\"calendarType\": \"Japanese\"\n * \t}\n * </script>\n * ```\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Calendar.js\";`\n * @constructor\n * @extends CalendarPart\n * @public\n * @since 1.0.0-rc.11\n */\n@customElement({\n\ttag: \"ui5-calendar\",\n\tfastNavigation: true,\n\ttemplate: CalendarTemplate,\n\tstyles: calendarCSS,\n\tdependencies: [\n\t\tCalendarDate,\n\t\tCalendarHeader,\n\t\tDayPicker,\n\t\tMonthPicker,\n\t\tYearPicker,\n\t\tCalendarLegend,\n\t],\n})\n/**\n * Fired when the selected dates change.\n *\n * **Note:** If you call `preventDefault()` for this event, the component will not\n * create instances of `ui5-date` for the newly selected dates. In that case you should do this manually.\n * @allowPreventDefault\n * @param {Array<string>} selectedValues The selected dates\n * @param {Array<number>} selectedDates The selected dates as UTC timestamps\n * @public\n */\n@event<CalendarSelectionChangeEventDetail>(\"selection-change\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tselectedDates: { type: Array },\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tselectedValues: { type: Array },\n\n\t\ttimestamp: { type: Number },\n\t},\n})\n\n@event(\"show-month-press\")\n@event(\"show-year-press\")\nclass Calendar extends CalendarPart {\n\t/**\n\t * Defines the type of selection used in the calendar component.\n\t * Accepted property values are:\n\t *\n\t * - `CalendarSelectionMode.Single` - enables a single date selection.(default value)\n\t * - `CalendarSelectionMode.Range` - enables selection of a date range.\n\t * - `CalendarSelectionMode.Multiple` - enables selection of multiple dates.\n\t * @default \"Single\"\n\t * @public\n\t */\n\t@property({\n\t\ttype: CalendarSelectionMode,\n\t\tdefaultValue: CalendarSelectionMode.Single,\n\t})\n\tselectionMode!: `${CalendarSelectionMode}`;\n\n\t/**\n\t * Defines the visibility of the week numbers column.\n\t *\n\t * **Note:** For calendars other than Gregorian,\n\t * the week numbers are not displayed regardless of what is set.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideWeekNumbers!: boolean;\n\n\t/**\n\t * Which picker is currently visible to the user: day/month/year\n\t * @private\n\t */\n\t@property({ defaultValue: \"day\" })\n\t_currentPicker!: string;\n\n\t@property({ type: Boolean })\n\t_previousButtonDisabled!: boolean;\n\n\t@property({ type: Boolean })\n\t_nextButtonDisabled!: boolean;\n\n\t@property()\n\t_headerMonthButtonText!: string;\n\n\t@property()\n\t_headerYearButtonText!: string;\n\n\t@property()\n\t_headerYearButtonTextSecType!: string;\n\n\t@property({ type: CalendarPickersMode, defaultValue: CalendarPickersMode.DAY_MONTH_YEAR, noAttribute: true })\n\t_pickersMode!: CalendarPickersMode;\n\n\t_valueIsProcessed!: boolean\n\n\t/**\n\t * Defines the calendar legend of the component.\n\t * @public\n\t * @since 1.23.0\n\t */\n\t@slot({ type: HTMLElement })\n\tcalendarLegend!: Array<CalendarLegend>;\n\n\t/**\n\t * Defines the selected date or dates (depending on the `selectionMode` property)\n\t * for this calendar as instances of `ui5-date`.\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n\tdates!: Array<CalendarDate>;\n\n\t/**\n\t * Defines the special dates, visually emphasized in the calendar.\n\t * @public\n\t * @since 1.23.0\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true })\n\tspecialDates!: Array<SpecialCalendarDate>;\n\n\t/**\n\t * Defines the selected item type of the calendar legend item (if such exists).\n\t * @private\n\t */\n\t@property({ type: CalendarLegendItemType, defaultValue: CalendarLegendItemType.None })\n\t_selectedItemType!: `${CalendarLegendItemType}`;\n\n\t/**\n\t * @private\n\t */\n\tget _selectedDatesTimestamps(): Array<number> {\n\t\treturn this.dates.map(date => {\n\t\t\tconst value = date.value;\n\t\t\tconst validValue = value && !!this.getFormat().parse(value);\n\t\t\treturn validValue ? this._getTimeStampFromString(value)! / 1000 : undefined;\n\t\t}).filter((date): date is number => !!date);\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._valueIsProcessed = false;\n\t}\n\n\t/**\n\t * @private\n\t */\n\t_setSelectedDates(selectedDates: Array<number>) {\n\t\tconst selectedValues = selectedDates.map(timestamp => this.getFormat().format(UI5Date.getInstance(timestamp * 1000), true)); // Format as UTC\n\t\tconst valuesInDOM = [...this.dates].map(dateElement => dateElement.value);\n\n\t\t// Remove all elements for dates that are no longer selected\n\t\tthis.dates.filter(dateElement => !selectedValues.includes(dateElement.value)).forEach(dateElement => {\n\t\t\tthis.removeChild(dateElement);\n\t\t});\n\n\t\t// Create tags for the selected dates that don't already exist in DOM\n\t\tselectedValues.filter(value => !valuesInDOM.includes(value)).forEach(value => {\n\t\t\tconst dateElement = document.createElement(CalendarDate.getMetadata().getTag()) as CalendarDate;\n\t\t\tdateElement.value = value;\n\t\t\tthis.appendChild(dateElement);\n\t\t});\n\t}\n\n\t_isValidCalendarDate(dateString: string): boolean {\n\t\tconst date = this.getFormat().parse(dateString);\n\t\treturn !!date;\n\t}\n\n\tget _specialCalendarDates() {\n\t\tconst validSpecialDates = this._specialDates.filter(date => {\n\t\t\tconst dateType = date.type;\n\t\t\tconst dateValue = date.value;\n\t\t\tconst isTypeMatch = this._selectedItemType !== \"None\" ? dateType === this._selectedItemType : true;\n\t\t\treturn isTypeMatch && dateValue && this._isValidCalendarDate(dateValue);\n\t\t});\n\n\t\tif (validSpecialDates.length === 0) {\n\t\t\tthis._selectedItemType = \"None\";\n\t\t}\n\n\t\tconst uniqueDates = new Set();\n\t\tconst uniqueSpecialDates: Array<SpecialCalendarDateT> = [];\n\n\t\tvalidSpecialDates.forEach(date => {\n\t\t\tconst dateFromValue = UI5Date.getInstance(date.value);\n\t\t\tconst timestamp = dateFromValue.getTime();\n\n\t\t\tif (!uniqueDates.has(timestamp)) {\n\t\t\t\tuniqueDates.add(timestamp);\n\t\t\t\tconst specialDateTimestamp = CalendarDateComponent.fromLocalJSDate(dateFromValue).valueOf() / 1000;\n\t\t\t\tconst type = date.type;\n\t\t\t\tuniqueSpecialDates.push({ specialDateTimestamp, type });\n\t\t\t}\n\t\t});\n\n\t\treturn uniqueSpecialDates;\n\t}\n\n\t_onCalendarLegendSelectionChange(e: CustomEvent<CalendarLegendItemSelectionChangeEventDetail>) {\n\t\tthis._selectedItemType = e.detail.item.type;\n\t\tthis._currentPickerDOM._autoFocus = false;\n\t}\n\n\t/**\n\t * Makes sure that _currentPicker is always set to a value, allowed by _pickersMode\n\t */\n\t_normalizeCurrentPicker() {\n\t\tif (this._currentPicker === \"day\" && this._pickersMode !== CalendarPickersMode.DAY_MONTH_YEAR) {\n\t\t\tthis._currentPicker = \"month\";\n\t\t}\n\n\t\tif (this._currentPicker === \"month\" && this._pickersMode === CalendarPickersMode.YEAR) {\n\t\t\tthis._currentPicker = \"year\";\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._normalizeCurrentPicker();\n\n\t\tif (!this._valueIsProcessed) {\n\t\t\tif (this._selectedDatesTimestamps) {\n\t\t\t\tthis.timestamp = this._selectedDatesTimestamps[0];\n\t\t\t}\n\n\t\t\tthis._valueIsProcessed = true;\n\t\t}\n\t}\n\n\tasync onAfterRendering() {\n\t\tawait renderFinished(); // Await for the current picker to render and then ask if it has previous/next pages\n\t\tthis._previousButtonDisabled = !this._currentPickerDOM._hasPreviousPage();\n\t\tthis._nextButtonDisabled = !this._currentPickerDOM._hasNextPage();\n\n\t\tconst yearFormat = DateFormat.getDateInstance({ format: \"y\", calendarType: this.primaryCalendarType });\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\tthis._headerMonthButtonText = localeData.getMonthsStandAlone(\"wide\", this.primaryCalendarType)[this._calendarDate.getMonth()];\n\n\t\tif (this._currentPicker === \"year\") {\n\t\t\tconst rangeStart = new CalendarDateComponent(this._calendarDate, this._primaryCalendarType);\n\t\t\tconst rangeEnd = new CalendarDateComponent(this._calendarDate, this._primaryCalendarType);\n\t\t\trangeStart.setYear(this._currentPickerDOM._firstYear!);\n\t\t\trangeEnd.setYear(this._currentPickerDOM._lastYear!);\n\n\t\t\tthis._headerYearButtonText = `${yearFormat.format(rangeStart.toLocalJSDate(), true)} - ${yearFormat.format(rangeEnd.toLocalJSDate(), true)}`;\n\t\t} else {\n\t\t\tthis._headerYearButtonText = String(yearFormat.format(this._localDate, true));\n\t\t}\n\n\t\tthis._secondaryCalendarType && this._setSecondaryCalendarTypeButtonText();\n\t}\n\n\tonInvalidation(changeInfo: ChangeInfo) {\n\t\tif (changeInfo.reason === \"childchange\") {\n\t\t\tthis._valueIsProcessed = false;\n\t\t}\n\t}\n\n\t/**\n\t * The user clicked the \"month\" button in the header\n\t */\n\tonHeaderShowMonthPress(e: CustomEvent) {\n\t\tthis._currentPickerDOM._autoFocus = false;\n\t\tthis._currentPicker = \"month\";\n\t\tthis.fireEvent(\"show-month-press\", e);\n\t}\n\n\t/**\n\t * The user clicked the \"year\" button in the header\n\t */\n\tonHeaderShowYearPress(e: CustomEvent) {\n\t\tthis._currentPickerDOM._autoFocus = false;\n\t\tthis._currentPicker = \"year\";\n\t\tthis.fireEvent(\"show-year-press\", e);\n\t}\n\n\tget _currentPickerDOM() {\n\t\t// Calendar's shadowRoot and all the pickers are always present - the \"!\" is safe to be used.\n\t\treturn this.shadowRoot!.querySelector(`[ui5-${this._currentPicker}picker]`)! as unknown as ICalendarPicker;\n\t}\n\n\t/**\n\t * The year clicked the \"Previous\" button in the header\n\t */\n\tonHeaderPreviousPress() {\n\t\tthis._currentPickerDOM._showPreviousPage();\n\n\t\tif (this.calendarLegend) {\n\t\t\tthis._currentPickerDOM._autoFocus = true;\n\t\t}\n\t}\n\n\t/**\n\t * The year clicked the \"Next\" button in the header\n\t */\n\tonHeaderNextPress() {\n\t\tthis._currentPickerDOM._showNextPage();\n\n\t\tif (this.calendarLegend) {\n\t\t\tthis._currentPickerDOM._autoFocus = true;\n\t\t}\n\t}\n\n\t_setSecondaryCalendarTypeButtonText() {\n\t\tconst yearFormatSecType = DateFormat.getDateInstance({ format: \"y\", calendarType: this._secondaryCalendarType });\n\n\t\tif (this._currentPicker === \"year\") {\n\t\t\tconst rangeStart = new CalendarDateComponent(this._calendarDate, this._primaryCalendarType);\n\t\t\tconst rangeEnd = new CalendarDateComponent(this._calendarDate, this._primaryCalendarType);\n\t\t\trangeStart.setYear(this._currentPickerDOM._firstYear!);\n\t\t\trangeEnd.setYear(this._currentPickerDOM._lastYear!);\n\n\t\t\tconst rangeStartSecType = transformDateToSecondaryType(this.primaryCalendarType, this._secondaryCalendarType, rangeStart.valueOf() / 1000, true)\n\t\t\t\t.firstDate;\n\t\t\tconst rangeEndSecType = transformDateToSecondaryType(this.primaryCalendarType, this._secondaryCalendarType, rangeEnd.valueOf() / 1000, true)\n\t\t\t\t.lastDate;\n\t\t\tthis._headerYearButtonTextSecType = `${yearFormatSecType.format(rangeStartSecType.toLocalJSDate(), true)} - ${yearFormatSecType.format(rangeEndSecType.toLocalJSDate(), true)}`;\n\t\t} else {\n\t\t\tthis._headerYearButtonTextSecType = String(yearFormatSecType.format(this._localDate, true));\n\t\t}\n\t}\n\n\tget secondaryCalendarTypeButtonText() {\n\t\tif (!this.hasSecondaryCalendarType) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst localDate = UI5Date.getInstance(this._timestamp * 1000);\n\t\tconst secondYearFormat = DateFormat.getDateInstance({ format: \"y\", calendarType: this._secondaryCalendarType });\n\t\tconst dateInSecType = transformDateToSecondaryType(this._primaryCalendarType, this._secondaryCalendarType, this._timestamp);\n\t\tconst secondMonthInfo = convertMonthNumbersToMonthNames(dateInSecType.firstDate.getMonth(), dateInSecType.lastDate.getMonth(), this._secondaryCalendarType);\n\t\tconst secondYearText = secondYearFormat.format(localDate, true);\n\n\t\treturn {\n\t\t\tyearButtonText: secondYearText,\n\t\t\tmonthButtonText: secondMonthInfo.text,\n\t\t\tmonthButtonInfo: secondMonthInfo.textInfo,\n\t\t};\n\t}\n\n\t/**\n\t * The month button is hidden when the month picker or year picker is shown\n\t * @private\n\t */\n\tget _isHeaderMonthButtonHidden(): boolean {\n\t\treturn this._currentPicker === \"month\" || this._currentPicker === \"year\";\n\t}\n\n\tget _isDayPickerHidden() {\n\t\treturn this._currentPicker !== \"day\";\n\t}\n\n\tget _isMonthPickerHidden() {\n\t\treturn this._currentPicker !== \"month\";\n\t}\n\n\tget _isYearPickerHidden() {\n\t\treturn this._currentPicker !== \"year\";\n\t}\n\n\t_fireEventAndUpdateSelectedDates(selectedDates: Array<number>) {\n\t\tconst datesValues = selectedDates.map(timestamp => {\n\t\t\tconst calendarDate = CalendarDateComponent.fromTimestamp(timestamp * 1000, this._primaryCalendarType);\n\t\t\treturn this.getFormat().format(calendarDate.toUTCJSDate(), true);\n\t\t});\n\n\t\tconst defaultPrevented = !this.fireEvent<CalendarSelectionChangeEventDetail>(\"selection-change\", { timestamp: this.timestamp, selectedDates: [...selectedDates], selectedValues: datesValues }, true);\n\t\tif (!defaultPrevented) {\n\t\t\tthis._setSelectedDates(selectedDates);\n\t\t}\n\t}\n\n\tonSelectedDatesChange(e: CustomEvent<DayPickerChangeEventDetail>) {\n\t\tthis.timestamp = e.detail.timestamp;\n\t\tthis._fireEventAndUpdateSelectedDates(e.detail.dates);\n\t}\n\n\tonSelectedMonthChange(e: CustomEvent<MonthPickerChangeEventDetail>) {\n\t\tthis.timestamp = e.detail.timestamp;\n\n\t\tif (this._pickersMode === CalendarPickersMode.DAY_MONTH_YEAR) {\n\t\t\tthis._currentPicker = \"day\";\n\t\t} else {\n\t\t\tthis._fireEventAndUpdateSelectedDates([this.timestamp]);\n\t\t}\n\n\t\tthis._currentPickerDOM._autoFocus = true;\n\t}\n\n\tonSelectedYearChange(e: CustomEvent<YearPickerChangeEventDetail>) {\n\t\tthis.timestamp = e.detail.timestamp;\n\n\t\tif (this._pickersMode === CalendarPickersMode.DAY_MONTH_YEAR) {\n\t\t\tthis._currentPicker = \"day\";\n\t\t} else if (this._pickersMode === CalendarPickersMode.MONTH_YEAR) {\n\t\t\tthis._currentPicker = \"month\";\n\t\t} else {\n\t\t\tthis._fireEventAndUpdateSelectedDates([this.timestamp]);\n\t\t}\n\n\t\tthis._currentPickerDOM._autoFocus = true;\n\t}\n\n\tonNavigate(e: CustomEvent) {\n\t\tthis.timestamp = e.detail.timestamp;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isF4(e) && this._currentPicker !== \"month\") {\n\t\t\tthis._currentPicker = \"month\";\n\t\t}\n\n\t\tif (isF4Shift(e) && this._currentPicker !== \"year\") {\n\t\t\tthis._currentPicker = \"year\";\n\t\t}\n\t}\n\n\t_onLegendFocusOut() {\n\t\tthis._selectedItemType = \"None\";\n\t}\n\n\tget _specialDates() {\n\t\treturn this.getSlottedNodes<SpecialCalendarDate>(\"specialDates\");\n\t}\n\n\t/**\n\t * Returns an array of UTC timestamps, representing the selected dates.\n\t * @protected\n\t * @deprecated\n\t */\n\tget selectedDates(): Array<number> {\n\t\treturn this._selectedDatesTimestamps;\n\t}\n\n\t/**\n\t * Creates instances of `ui5-date` inside this `ui5-calendar` with values, equal to the provided UTC timestamps\n\t * @protected\n\t * @deprecated\n\t * @param selectedDates Array of UTC timestamps\n\t */\n\tset selectedDates(selectedDates: Array<number>) {\n\t\tthis._setSelectedDates(selectedDates);\n\t}\n}\n\nCalendar.define();\n\nexport default Calendar;\nexport type {\n\tICalendarPicker,\n\tCalendarSelectionChangeEventDetail,\n\tSpecialCalendarDateT,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"Calendar.js","sourceRoot":"","sources":["../src/Calendar.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { ChangeInfo } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport transformDateToSecondaryType from \"@ui5/webcomponents-localization/dist/dates/transformDateToSecondaryType.js\";\nimport convertMonthNumbersToMonthNames from \"@ui5/webcomponents-localization/dist/dates/convertMonthNumbersToMonthNames.js\";\nimport CalendarDateComponent from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport {\n\tisF4,\n\tisF4Shift,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport UI5Date from \"@ui5/webcomponents-localization/dist/dates/UI5Date.js\";\nimport CalendarDate from \"./CalendarDate.js\";\nimport CalendarDateRange from \"./CalendarDateRange.js\";\nimport CalendarPart from \"./CalendarPart.js\";\nimport CalendarHeader from \"./CalendarHeader.js\";\nimport DayPicker from \"./DayPicker.js\";\nimport type { DayPickerChangeEventDetail } from \"./DayPicker.js\";\nimport MonthPicker from \"./MonthPicker.js\";\nimport type { MonthPickerChangeEventDetail } from \"./MonthPicker.js\";\nimport YearPicker from \"./YearPicker.js\";\nimport type { YearPickerChangeEventDetail } from \"./YearPicker.js\";\nimport CalendarSelectionMode from \"./types/CalendarSelectionMode.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\nimport CalendarLegend from \"./CalendarLegend.js\";\nimport type { CalendarLegendItemSelectionChangeEventDetail } from \"./CalendarLegend.js\";\nimport SpecialCalendarDate from \"./SpecialCalendarDate.js\";\nimport CalendarLegendItemType from \"./types/CalendarLegendItemType.js\";\n\n// Default calendar for bundling\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\";\n\n// Template\nimport CalendarTemplate from \"./generated/templates/CalendarTemplate.lit.js\";\n\n// Styles\nimport calendarCSS from \"./generated/themes/Calendar.css.js\";\n\ninterface ICalendarPicker {\n\t_showPreviousPage: () => void,\n\t_showNextPage: () => void,\n\t_hasPreviousPage: () => boolean,\n\t_hasNextPage: () => boolean,\n\t_autoFocus?: boolean,\n\t_firstYear?: number,\n\t_lastYear?: number,\n}\n\ninterface ICalendarSelectedDates extends UI5Element {\n\tvalue?: string,\n\tstartValue?: string,\n\tendValue?: string\n}\n\ntype CalendarSelectionChangeEventDetail = {\n\tselectedValues: Array<string>,\n\tselectedDates: Array<number>,\n\ttimestamp: number | undefined,\n}\n\ntype SpecialCalendarDateT = {\n\tspecialDateTimestamp: number;\n\ttype: `${CalendarLegendItemType}`;\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-calendar` component allows users to select one or more dates.\n *\n * Currently selected dates are represented with instances of `ui5-date` as\n * children of the `ui5-calendar`. The value property of each `ui5-date` must be a\n * date string, correctly formatted according to the `ui5-calendar`'s `formatPattern` property.\n * Whenever the user changes the date selection, `ui5-calendar` will automatically create/remove instances\n * of `ui5-date` in itself, unless you prevent this behavior by calling `preventDefault()` for the\n * `selection-change` event. This is useful if you want to control the selected dates externally.\n *\n * ### Usage\n *\n * The user can navigate to a particular date by:\n *\n * - Pressing over a month inside the months view\n * - Pressing over an year inside the years view\n *\n * The user can confirm a date selection by pressing over a date inside the days view.\n *\n * ### Keyboard Handling\n * The `ui5-calendar` provides advanced keyboard handling.\n * When a picker is showed and focused the user can use the following keyboard\n * shortcuts in order to perform a navigation:\n *\n * - Day picker:\n *\n * - [F4] - Shows month picker\n * - [Shift] + [F4] - Shows year picker\n * - [Page Up] - Navigate to the previous month\n * - [Page Down] - Navigate to the next month\n * - [Shift] + [Page Up] - Navigate to the previous year\n * - [Shift] + [Page Down] - Navigate to the next year\n * - [Ctrl] + [Shift] + [Page Up] - Navigate ten years backwards\n * - [Ctrl] + [Shift] + [Page Down] - Navigate ten years forwards\n * - [Home] - Navigate to the first day of the week\n * - [End] - Navigate to the last day of the week\n * - [Ctrl] + [Home] - Navigate to the first day of the month\n * - [Ctrl] + [End] - Navigate to the last day of the month\n *\n * - Month picker:\n *\n * - [Page Up] - Navigate to the previous year\n * - [Page Down] - Navigate to the next year\n * - [Home] - Navigate to the first month of the current row\n * - [End] - Navigate to the last month of the current row\n * - [Ctrl] + [Home] - Navigate to the first month of the current year\n * - [Ctrl] + [End] - Navigate to the last month of the year\n *\n * - Year picker:\n *\n * - [Page Up] - Navigate to the previous year range\n * - [Page Down] - Navigate the next year range\n * - [Home] - Navigate to the first year of the current row\n * - [End] - Navigate to the last year of the current row\n * - [Ctrl] + [Home] - Navigate to the first year of the current year range\n * - [Ctrl] + [End] - Navigate to the last year of the current year range\n *\n * #### Fast Navigation\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n * ### Calendar types\n * The component supports several calendar types - Gregorian, Buddhist, Islamic, Japanese and Persian.\n * By default the Gregorian Calendar is used. In order to use the Buddhist, Islamic, Japanese or Persian calendar,\n * you need to set the `primaryCalendarType` property and import one or more of the following modules:\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Buddhist.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Islamic.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Japanese.js\";`\n *\n * `import \"@ui5/webcomponents-localization/dist/features/calendar/Persian.js\";`\n *\n * Or, you can use the global configuration and set the `calendarType` key:\n *\n * ```html\n * <script data-id=\"sap-ui-config\" type=\"application/json\">\n * \t{\n * \t\t\"calendarType\": \"Japanese\"\n * \t}\n * </script>\n * ```\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Calendar.js\";`\n * @constructor\n * @extends CalendarPart\n * @public\n * @since 1.0.0-rc.11\n */\n@customElement({\n\ttag: \"ui5-calendar\",\n\tfastNavigation: true,\n\ttemplate: CalendarTemplate,\n\tstyles: calendarCSS,\n\tdependencies: [\n\t\tCalendarDate,\n\t\tCalendarDateRange,\n\t\tCalendarHeader,\n\t\tDayPicker,\n\t\tMonthPicker,\n\t\tYearPicker,\n\t\tCalendarLegend,\n\t],\n})\n/**\n * Fired when the selected dates change.\n *\n * **Note:** If you call `preventDefault()` for this event, the component will not\n * create instances of `ui5-date` for the newly selected dates. In that case you should do this manually.\n * @allowPreventDefault\n * @param {Array<string>} selectedValues The selected dates\n * @param {Array<number>} selectedDates The selected dates as UTC timestamps\n * @public\n */\n@event<CalendarSelectionChangeEventDetail>(\"selection-change\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tselectedDates: { type: Array },\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tselectedValues: { type: Array },\n\n\t\ttimestamp: { type: Number },\n\t},\n})\n\n@event(\"show-month-view\")\n@event(\"show-year-view\")\nclass Calendar extends CalendarPart {\n\t/**\n\t * Defines the type of selection used in the calendar component.\n\t * Accepted property values are:\n\t *\n\t * - `CalendarSelectionMode.Single` - enables a single date selection.(default value)\n\t * - `CalendarSelectionMode.Range` - enables selection of a date range.\n\t * - `CalendarSelectionMode.Multiple` - enables selection of multiple dates.\n\t * @default \"Single\"\n\t * @public\n\t */\n\t@property({\n\t\ttype: CalendarSelectionMode,\n\t\tdefaultValue: CalendarSelectionMode.Single,\n\t})\n\tselectionMode!: `${CalendarSelectionMode}`;\n\n\t/**\n\t * Defines the visibility of the week numbers column.\n\t *\n\t * **Note:** For calendars other than Gregorian,\n\t * the week numbers are not displayed regardless of what is set.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideWeekNumbers!: boolean;\n\n\t/**\n\t * Which picker is currently visible to the user: day/month/year\n\t * @private\n\t */\n\t@property({ defaultValue: \"day\" })\n\t_currentPicker!: string;\n\n\t@property({ type: Boolean })\n\t_previousButtonDisabled!: boolean;\n\n\t@property({ type: Boolean })\n\t_nextButtonDisabled!: boolean;\n\n\t@property()\n\t_headerMonthButtonText!: string;\n\n\t@property()\n\t_headerYearButtonText!: string;\n\n\t@property()\n\t_headerYearButtonTextSecType!: string;\n\n\t@property({ type: CalendarPickersMode, defaultValue: CalendarPickersMode.DAY_MONTH_YEAR, noAttribute: true })\n\t_pickersMode!: CalendarPickersMode;\n\n\t_valueIsProcessed!: boolean\n\n\t/**\n\t * Defines the calendar legend of the component.\n\t * @public\n\t * @since 1.23.0\n\t */\n\t@slot({ type: HTMLElement })\n\tcalendarLegend!: Array<CalendarLegend>;\n\n\t/**\n\t * Defines the selected date or dates (depending on the `selectionMode` property)\n\t * for this calendar as instances of `ui5-date`.\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n\tdates!: Array<ICalendarSelectedDates>;\n\n\t/**\n\t * Defines the special dates, visually emphasized in the calendar.\n\t * @public\n\t * @since 1.23.0\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true })\n\tspecialDates!: Array<SpecialCalendarDate>;\n\n\t/**\n\t * Defines the selected item type of the calendar legend item (if such exists).\n\t * @private\n\t */\n\t@property({ type: CalendarLegendItemType, defaultValue: CalendarLegendItemType.None })\n\t_selectedItemType!: `${CalendarLegendItemType}`;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._valueIsProcessed = false;\n\t}\n\n\t/**\n\t * @private\n\t */\n\tget _selectedDatesTimestamps(): Array<number> {\n\t\tlet selectedDates: Array<number> = [];\n\n\t\tif (this.selectionMode === CalendarSelectionMode.Range) {\n\t\t\tconst range = this.dates.find(date => date.hasAttribute(\"ui5-date-range\"));\n\t\t\tconst startDate = range && range.startValue && this.getFormat().parse(range.startValue, true) as Date;\n\t\t\tconst endDate = range && range.endValue && this.getFormat().parse(range.endValue, true) as Date;\n\n\t\t\tif (startDate) {\n\t\t\t\tselectedDates.push(startDate.getTime() / 1000);\n\t\t\t}\n\n\t\t\tif (endDate) {\n\t\t\t\tselectedDates.push(endDate.getTime() / 1000);\n\t\t\t}\n\t\t} else {\n\t\t\tselectedDates = this.dates\n\t\t\t\t.filter(dateElement => {\n\t\t\t\t\treturn dateElement.hasAttribute(\"ui5-date\")\n\t\t\t\t\t\t&& dateElement.value\n\t\t\t\t\t\t&& this._isValidCalendarDate(dateElement.value)\n\t\t\t\t\t\t&& this._getTimeStampFromString(dateElement.value);\n\t\t\t\t})\n\t\t\t\t.map(dateElement => Number(this._getTimeStampFromString(dateElement.value!)) / 1000);\n\t\t}\n\n\t\treturn selectedDates;\n\t}\n\n\t/**\n\t * @private\n\t */\n\t_setSelectedDates(selectedDates: Array<number>) {\n\t\tconst selectedUTCDates = selectedDates.map(timestamp => this.getFormat().format(UI5Date.getInstance(timestamp * 1000), true));\n\n\t\tif (this.selectionMode === CalendarSelectionMode.Range) {\n\t\t\t// Create tags for the selected dates that don't already exist in DOM\n\t\t\tif (selectedUTCDates.length) {\n\t\t\t\tlet dateRange = this.dates.find(dateElement => dateElement.hasAttribute(\"ui5-date-range\") && dateElement.startValue === selectedUTCDates[0]);\n\t\t\t\tif (!dateRange) {\n\t\t\t\t\tdateRange = document.createElement(CalendarDateRange.getMetadata().getTag()) as CalendarDateRange;\n\t\t\t\t\tdateRange.startValue = selectedUTCDates[0];\n\t\t\t\t\tthis.appendChild(dateRange);\n\t\t\t\t} else {\n\t\t\t\t\tdateRange.endValue = selectedUTCDates[1];\n\t\t\t\t}\n\t\t\t\t// Remove all elements for dates that are no longer selected\n\t\t\t\tthis.dates\n\t\t\t\t\t.filter(dateElement => {\n\t\t\t\t\t\treturn dateElement.hasAttribute(\"ui5-date\")\n\t\t\t\t\t\t\t|| (dateRange && dateElement.startValue !== dateRange.startValue);\n\t\t\t\t\t})\n\t\t\t\t\t.forEach(dateElement => {\n\t\t\t\t\t\tthis.removeChild(dateElement);\n\t\t\t\t\t});\n\t\t\t}\n\t\t} else {\n\t\t\tconst valuesInDOM = this._selectedDatesTimestamps.map(timestamp => this.getFormat().format(UI5Date.getInstance(timestamp * 1000)));\n\n\t\t\t// Remove all elements for dates that are no longer selected\n\t\t\tthis.dates\n\t\t\t\t.filter(dateElement => {\n\t\t\t\t\treturn dateElement.hasAttribute(\"ui5-date-range\")\n\t\t\t\t\t\t|| (dateElement.hasAttribute(\"ui5-date\") && !selectedUTCDates.includes(dateElement.value!));\n\t\t\t\t})\n\t\t\t\t.forEach(dateElement => {\n\t\t\t\t\tthis.removeChild(dateElement);\n\t\t\t\t});\n\n\t\t\t// Create tags for the selected dates that don't already exist in DOM\n\t\t\tselectedUTCDates\n\t\t\t\t.filter(value => !valuesInDOM.includes(value))\n\t\t\t\t.forEach(value => {\n\t\t\t\t\tconst dateElement = document.createElement(CalendarDate.getMetadata().getTag()) as CalendarDate;\n\t\t\t\t\tdateElement.value = value;\n\t\t\t\t\tthis.appendChild(dateElement);\n\t\t\t\t});\n\t\t}\n\t}\n\n\t_isValidCalendarDate(dateString: string): boolean {\n\t\tconst date = this.getFormat().parse(dateString);\n\t\treturn !!date;\n\t}\n\n\tget _specialCalendarDates() {\n\t\tconst validSpecialDates = this._specialDates.filter(date => {\n\t\t\tconst dateType = date.type;\n\t\t\tconst dateValue = date.value;\n\t\t\tconst isTypeMatch = this._selectedItemType !== \"None\" ? dateType === this._selectedItemType : true;\n\t\t\treturn isTypeMatch && dateValue && this._isValidCalendarDate(dateValue);\n\t\t});\n\n\t\tif (validSpecialDates.length === 0) {\n\t\t\tthis._selectedItemType = \"None\";\n\t\t}\n\n\t\tconst uniqueDates = new Set();\n\t\tconst uniqueSpecialDates: Array<SpecialCalendarDateT> = [];\n\n\t\tvalidSpecialDates.forEach(date => {\n\t\t\tconst dateFromValue = UI5Date.getInstance(date.value);\n\t\t\tconst timestamp = dateFromValue.getTime();\n\n\t\t\tif (!uniqueDates.has(timestamp)) {\n\t\t\t\tuniqueDates.add(timestamp);\n\t\t\t\tconst specialDateTimestamp = CalendarDateComponent.fromLocalJSDate(dateFromValue).valueOf() / 1000;\n\t\t\t\tconst type = date.type;\n\t\t\t\tuniqueSpecialDates.push({ specialDateTimestamp, type });\n\t\t\t}\n\t\t});\n\n\t\treturn uniqueSpecialDates;\n\t}\n\n\t_onCalendarLegendSelectionChange(e: CustomEvent<CalendarLegendItemSelectionChangeEventDetail>) {\n\t\tthis._selectedItemType = e.detail.item.type;\n\t\tthis._currentPickerDOM._autoFocus = false;\n\t}\n\n\t/**\n\t * Makes sure that _currentPicker is always set to a value, allowed by _pickersMode\n\t */\n\t_normalizeCurrentPicker() {\n\t\tif (this._currentPicker === \"day\" && this._pickersMode !== CalendarPickersMode.DAY_MONTH_YEAR) {\n\t\t\tthis._currentPicker = \"month\";\n\t\t}\n\n\t\tif (this._currentPicker === \"month\" && this._pickersMode === CalendarPickersMode.YEAR) {\n\t\t\tthis._currentPicker = \"year\";\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._normalizeCurrentPicker();\n\n\t\tif (!this._valueIsProcessed) {\n\t\t\tif (this._selectedDatesTimestamps) {\n\t\t\t\tthis.timestamp = this._selectedDatesTimestamps[0];\n\t\t\t}\n\n\t\t\tthis._valueIsProcessed = true;\n\t\t}\n\t}\n\n\tasync onAfterRendering() {\n\t\tawait renderFinished(); // Await for the current picker to render and then ask if it has previous/next pages\n\t\tthis._previousButtonDisabled = !this._currentPickerDOM._hasPreviousPage();\n\t\tthis._nextButtonDisabled = !this._currentPickerDOM._hasNextPage();\n\n\t\tconst yearFormat = DateFormat.getDateInstance({ format: \"y\", calendarType: this.primaryCalendarType });\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\tthis._headerMonthButtonText = localeData.getMonthsStandAlone(\"wide\", this.primaryCalendarType)[this._calendarDate.getMonth()];\n\n\t\tif (this._currentPicker === \"year\") {\n\t\t\tconst rangeStart = new CalendarDateComponent(this._calendarDate, this._primaryCalendarType);\n\t\t\tconst rangeEnd = new CalendarDateComponent(this._calendarDate, this._primaryCalendarType);\n\t\t\trangeStart.setYear(this._currentPickerDOM._firstYear!);\n\t\t\trangeEnd.setYear(this._currentPickerDOM._lastYear!);\n\n\t\t\tthis._headerYearButtonText = `${yearFormat.format(rangeStart.toLocalJSDate(), true)} - ${yearFormat.format(rangeEnd.toLocalJSDate(), true)}`;\n\t\t} else {\n\t\t\tthis._headerYearButtonText = String(yearFormat.format(this._localDate, true));\n\t\t}\n\n\t\tthis._secondaryCalendarType && this._setSecondaryCalendarTypeButtonText();\n\t}\n\n\tonInvalidation(changeInfo: ChangeInfo) {\n\t\tif (changeInfo.reason === \"childchange\") {\n\t\t\tthis._valueIsProcessed = false;\n\t\t}\n\t}\n\n\t/**\n\t * The user clicked the \"month\" button in the header\n\t */\n\tonHeaderShowMonthPress(e: CustomEvent) {\n\t\tthis._currentPickerDOM._autoFocus = false;\n\t\tthis._currentPicker = \"month\";\n\t\tthis.fireEvent(\"show-month-view\", e);\n\t}\n\n\t/**\n\t * The user clicked the \"year\" button in the header\n\t */\n\tonHeaderShowYearPress(e: CustomEvent) {\n\t\tthis._currentPickerDOM._autoFocus = false;\n\t\tthis._currentPicker = \"year\";\n\t\tthis.fireEvent(\"show-year-view\", e);\n\t}\n\n\tget _currentPickerDOM() {\n\t\t// Calendar's shadowRoot and all the pickers are always present - the \"!\" is safe to be used.\n\t\treturn this.shadowRoot!.querySelector(`[ui5-${this._currentPicker}picker]`)! as unknown as ICalendarPicker;\n\t}\n\n\t/**\n\t * The year clicked the \"Previous\" button in the header\n\t */\n\tonHeaderPreviousPress() {\n\t\tthis._currentPickerDOM._showPreviousPage();\n\n\t\tif (this.calendarLegend) {\n\t\t\tthis._currentPickerDOM._autoFocus = true;\n\t\t}\n\t}\n\n\t/**\n\t * The year clicked the \"Next\" button in the header\n\t */\n\tonHeaderNextPress() {\n\t\tthis._currentPickerDOM._showNextPage();\n\n\t\tif (this.calendarLegend) {\n\t\t\tthis._currentPickerDOM._autoFocus = true;\n\t\t}\n\t}\n\n\t_setSecondaryCalendarTypeButtonText() {\n\t\tconst yearFormatSecType = DateFormat.getDateInstance({ format: \"y\", calendarType: this._secondaryCalendarType });\n\n\t\tif (this._currentPicker === \"year\") {\n\t\t\tconst rangeStart = new CalendarDateComponent(this._calendarDate, this._primaryCalendarType);\n\t\t\tconst rangeEnd = new CalendarDateComponent(this._calendarDate, this._primaryCalendarType);\n\t\t\trangeStart.setYear(this._currentPickerDOM._firstYear!);\n\t\t\trangeEnd.setYear(this._currentPickerDOM._lastYear!);\n\n\t\t\tconst rangeStartSecType = transformDateToSecondaryType(this.primaryCalendarType, this._secondaryCalendarType, rangeStart.valueOf() / 1000, true)\n\t\t\t\t.firstDate;\n\t\t\tconst rangeEndSecType = transformDateToSecondaryType(this.primaryCalendarType, this._secondaryCalendarType, rangeEnd.valueOf() / 1000, true)\n\t\t\t\t.lastDate;\n\t\t\tthis._headerYearButtonTextSecType = `${yearFormatSecType.format(rangeStartSecType.toLocalJSDate(), true)} - ${yearFormatSecType.format(rangeEndSecType.toLocalJSDate(), true)}`;\n\t\t} else {\n\t\t\tthis._headerYearButtonTextSecType = String(yearFormatSecType.format(this._localDate, true));\n\t\t}\n\t}\n\n\tget secondaryCalendarTypeButtonText() {\n\t\tif (!this.hasSecondaryCalendarType) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst localDate = UI5Date.getInstance(this._timestamp * 1000);\n\t\tconst secondYearFormat = DateFormat.getDateInstance({ format: \"y\", calendarType: this._secondaryCalendarType });\n\t\tconst dateInSecType = transformDateToSecondaryType(this._primaryCalendarType, this._secondaryCalendarType, this._timestamp);\n\t\tconst secondMonthInfo = convertMonthNumbersToMonthNames(dateInSecType.firstDate.getMonth(), dateInSecType.lastDate.getMonth(), this._secondaryCalendarType);\n\t\tconst secondYearText = secondYearFormat.format(localDate, true);\n\n\t\treturn {\n\t\t\tyearButtonText: secondYearText,\n\t\t\tmonthButtonText: secondMonthInfo.text,\n\t\t\tmonthButtonInfo: secondMonthInfo.textInfo,\n\t\t};\n\t}\n\n\t/**\n\t * The month button is hidden when the month picker or year picker is shown\n\t * @private\n\t */\n\tget _isHeaderMonthButtonHidden(): boolean {\n\t\treturn this._currentPicker === \"month\" || this._currentPicker === \"year\";\n\t}\n\n\tget _isDayPickerHidden() {\n\t\treturn this._currentPicker !== \"day\";\n\t}\n\n\tget _isMonthPickerHidden() {\n\t\treturn this._currentPicker !== \"month\";\n\t}\n\n\tget _isYearPickerHidden() {\n\t\treturn this._currentPicker !== \"year\";\n\t}\n\n\t_fireEventAndUpdateSelectedDates(selectedDates: Array<number>) {\n\t\tconst datesValues = selectedDates.map(timestamp => {\n\t\t\tconst calendarDate = CalendarDateComponent.fromTimestamp(timestamp * 1000, this._primaryCalendarType);\n\t\t\treturn this.getFormat().format(calendarDate.toUTCJSDate(), true);\n\t\t});\n\n\t\tconst defaultPrevented = !this.fireEvent<CalendarSelectionChangeEventDetail>(\"selection-change\", { timestamp: this.timestamp, selectedDates: [...selectedDates], selectedValues: datesValues }, true);\n\t\tif (!defaultPrevented) {\n\t\t\tthis._setSelectedDates(selectedDates);\n\t\t}\n\t}\n\n\tonSelectedDatesChange(e: CustomEvent<DayPickerChangeEventDetail>) {\n\t\tthis.timestamp = e.detail.timestamp;\n\t\tthis._fireEventAndUpdateSelectedDates(e.detail.dates);\n\t}\n\n\tonSelectedMonthChange(e: CustomEvent<MonthPickerChangeEventDetail>) {\n\t\tthis.timestamp = e.detail.timestamp;\n\n\t\tif (this._pickersMode === CalendarPickersMode.DAY_MONTH_YEAR) {\n\t\t\tthis._currentPicker = \"day\";\n\t\t} else {\n\t\t\tthis._fireEventAndUpdateSelectedDates([this.timestamp]);\n\t\t}\n\n\t\tthis._currentPickerDOM._autoFocus = true;\n\t}\n\n\tonSelectedYearChange(e: CustomEvent<YearPickerChangeEventDetail>) {\n\t\tthis.timestamp = e.detail.timestamp;\n\n\t\tif (this._pickersMode === CalendarPickersMode.DAY_MONTH_YEAR) {\n\t\t\tthis._currentPicker = \"day\";\n\t\t} else if (this._pickersMode === CalendarPickersMode.MONTH_YEAR) {\n\t\t\tthis._currentPicker = \"month\";\n\t\t} else {\n\t\t\tthis._fireEventAndUpdateSelectedDates([this.timestamp]);\n\t\t}\n\n\t\tthis._currentPickerDOM._autoFocus = true;\n\t}\n\n\tonNavigate(e: CustomEvent) {\n\t\tthis.timestamp = e.detail.timestamp;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isF4(e) && this._currentPicker !== \"month\") {\n\t\t\tthis._currentPicker = \"month\";\n\t\t\tthis.fireEvent(\"show-month-view\", e);\n\t\t}\n\n\t\tif (isF4Shift(e) && this._currentPicker !== \"year\") {\n\t\t\tthis._currentPicker = \"year\";\n\t\t\tthis.fireEvent(\"show-year-view\", e);\n\t\t}\n\t}\n\n\t_onLegendFocusOut() {\n\t\tthis._selectedItemType = \"None\";\n\t}\n\n\tget _specialDates() {\n\t\treturn this.getSlottedNodes<SpecialCalendarDate>(\"specialDates\");\n\t}\n\n\t/**\n\t * Returns an array of UTC timestamps, representing the selected dates.\n\t * @protected\n\t * @deprecated\n\t */\n\tget selectedDates(): Array<number> {\n\t\treturn this._selectedDatesTimestamps;\n\t}\n\n\t/**\n\t * Creates instances of `ui5-date` or `ui5-date-range` inside this `ui5-calendar` with values, equal to the provided UTC timestamps\n\t * @protected\n\t * @deprecated\n\t * @param selectedDates Array of UTC timestamps\n\t */\n\tset selectedDates(selectedDates: Array<number>) {\n\t\tthis._setSelectedDates(selectedDates);\n\t}\n}\n\nCalendar.define();\n\nexport default Calendar;\nexport type {\n\tICalendarPicker,\n\tICalendarSelectedDates,\n\tCalendarSelectionChangeEventDetail,\n\tSpecialCalendarDateT,\n};\n"]}
|
package/dist/CalendarDate.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
2
|
+
import { ICalendarSelectedDates } from "./Calendar.js";
|
|
2
3
|
/**
|
|
3
4
|
* @class
|
|
4
5
|
*
|
|
@@ -10,7 +11,7 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
|
10
11
|
* @abstract
|
|
11
12
|
* @public
|
|
12
13
|
*/
|
|
13
|
-
declare class CalendarDate extends UI5Element {
|
|
14
|
+
declare class CalendarDate extends UI5Element implements ICalendarSelectedDates {
|
|
14
15
|
/**
|
|
15
16
|
* The date formatted according to the `formatPattern` property
|
|
16
17
|
* of the `ui5-calendar` that hosts the component.
|
package/dist/CalendarDate.js
CHANGED
|
@@ -7,6 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
8
8
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
9
9
|
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
10
|
+
import "./Calendar.js";
|
|
10
11
|
/**
|
|
11
12
|
* @class
|
|
12
13
|
*
|
package/dist/CalendarDate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarDate.js","sourceRoot":"","sources":["../src/CalendarDate.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,UAAU,MAAM,4CAA4C,CAAC;
|
|
1
|
+
{"version":3,"file":"CalendarDate.js","sourceRoot":"","sources":["../src/CalendarDate.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAuC,eAAe,CAAC;AAEvD;;;;;;;;;;GAUG;AAEH,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,UAAU;CASpC,CAAA;AADA;IADC,QAAQ,EAAE;2CACI;AARV,YAAY;IADjB,aAAa,CAAC,UAAU,CAAC;GACpB,YAAY,CASjB;AAED,YAAY,CAAC,MAAM,EAAE,CAAC;AAEtB,eAAe,YAAY,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport { ICalendarSelectedDates } from \"./Calendar.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-date` component defines a calendar date to be used inside `ui5-calendar`\n * @constructor\n * @extends UI5Element\n * @abstract\n * @public\n */\n@customElement(\"ui5-date\")\nclass CalendarDate extends UI5Element implements ICalendarSelectedDates {\n\t/**\n\t * The date formatted according to the `formatPattern` property\n\t * of the `ui5-calendar` that hosts the component.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tvalue!: string;\n}\n\nCalendarDate.define();\n\nexport default CalendarDate;\n"]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
2
|
+
import { ICalendarSelectedDates } from "./Calendar.js";
|
|
3
|
+
/**
|
|
4
|
+
* @class
|
|
5
|
+
*
|
|
6
|
+
* ### Overview
|
|
7
|
+
*
|
|
8
|
+
* The `ui5-date-range` component defines a range of dates to be used inside `ui5-calendar`
|
|
9
|
+
* @constructor
|
|
10
|
+
* @extends UI5Element
|
|
11
|
+
* @abstract
|
|
12
|
+
* @public
|
|
13
|
+
* @since 2.0
|
|
14
|
+
*/
|
|
15
|
+
declare class CalendarDateRange extends UI5Element implements ICalendarSelectedDates {
|
|
16
|
+
/**
|
|
17
|
+
* Start of date range formatted according to the `formatPattern` property
|
|
18
|
+
* of the `ui5-calendar` that hosts the component.
|
|
19
|
+
* @default ""
|
|
20
|
+
* @public
|
|
21
|
+
*/
|
|
22
|
+
startValue: string;
|
|
23
|
+
/**
|
|
24
|
+
* End of date range formatted according to the `formatPattern` property
|
|
25
|
+
* of the `ui5-calendar` that hosts the component.
|
|
26
|
+
* @default ""
|
|
27
|
+
* @public
|
|
28
|
+
*/
|
|
29
|
+
endValue: string;
|
|
30
|
+
}
|
|
31
|
+
export default CalendarDateRange;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
8
|
+
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
9
|
+
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
10
|
+
import "./Calendar.js";
|
|
11
|
+
/**
|
|
12
|
+
* @class
|
|
13
|
+
*
|
|
14
|
+
* ### Overview
|
|
15
|
+
*
|
|
16
|
+
* The `ui5-date-range` component defines a range of dates to be used inside `ui5-calendar`
|
|
17
|
+
* @constructor
|
|
18
|
+
* @extends UI5Element
|
|
19
|
+
* @abstract
|
|
20
|
+
* @public
|
|
21
|
+
* @since 2.0
|
|
22
|
+
*/
|
|
23
|
+
let CalendarDateRange = class CalendarDateRange extends UI5Element {
|
|
24
|
+
};
|
|
25
|
+
__decorate([
|
|
26
|
+
property()
|
|
27
|
+
], CalendarDateRange.prototype, "startValue", void 0);
|
|
28
|
+
__decorate([
|
|
29
|
+
property()
|
|
30
|
+
], CalendarDateRange.prototype, "endValue", void 0);
|
|
31
|
+
CalendarDateRange = __decorate([
|
|
32
|
+
customElement("ui5-date-range")
|
|
33
|
+
], CalendarDateRange);
|
|
34
|
+
CalendarDateRange.define();
|
|
35
|
+
export default CalendarDateRange;
|
|
36
|
+
//# sourceMappingURL=CalendarDateRange.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CalendarDateRange.js","sourceRoot":"","sources":["../src/CalendarDateRange.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAuC,eAAe,CAAC;AAEvD;;;;;;;;;;;GAWG;AAEH,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,UAAU;CAkBzC,CAAA;AAVA;IADC,QAAQ,EAAE;qDACS;AASpB;IADC,QAAQ,EAAE;mDACO;AAjBb,iBAAiB;IADtB,aAAa,CAAC,gBAAgB,CAAC;GAC1B,iBAAiB,CAkBtB;AAED,iBAAiB,CAAC,MAAM,EAAE,CAAC;AAE3B,eAAe,iBAAiB,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport { ICalendarSelectedDates } from \"./Calendar.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `ui5-date-range` component defines a range of dates to be used inside `ui5-calendar`\n * @constructor\n * @extends UI5Element\n * @abstract\n * @public\n * @since 2.0\n */\n@customElement(\"ui5-date-range\")\nclass CalendarDateRange extends UI5Element implements ICalendarSelectedDates {\n\t/**\n\t * Start of date range formatted according to the `formatPattern` property\n\t * of the `ui5-calendar` that hosts the component.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tstartValue!: string;\n\n\t/**\n\t * End of date range formatted according to the `formatPattern` property\n\t * of the `ui5-calendar` that hosts the component.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tendValue!: string;\n}\n\nCalendarDateRange.define();\n\nexport default CalendarDateRange;\n"]}
|
package/dist/CalendarHeader.js
CHANGED
|
@@ -53,37 +53,37 @@ let CalendarHeader = CalendarHeader_1 = class CalendarHeader extends UI5Element
|
|
|
53
53
|
e.preventDefault();
|
|
54
54
|
}
|
|
55
55
|
onMonthButtonClick(e) {
|
|
56
|
-
this.fireEvent("show-month-
|
|
56
|
+
this.fireEvent("show-month-view", e);
|
|
57
57
|
}
|
|
58
58
|
onMonthButtonKeyDown(e) {
|
|
59
59
|
if (isSpace(e)) {
|
|
60
60
|
e.preventDefault();
|
|
61
61
|
}
|
|
62
62
|
if (isEnter(e)) {
|
|
63
|
-
this.fireEvent("show-month-
|
|
63
|
+
this.fireEvent("show-month-view", e);
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
onMonthButtonKeyUp(e) {
|
|
67
67
|
if (isSpace(e)) {
|
|
68
68
|
e.preventDefault();
|
|
69
|
-
this.fireEvent("show-month-
|
|
69
|
+
this.fireEvent("show-month-view", e);
|
|
70
70
|
}
|
|
71
71
|
}
|
|
72
72
|
onYearButtonClick(e) {
|
|
73
|
-
this.fireEvent("show-year-
|
|
73
|
+
this.fireEvent("show-year-view", e);
|
|
74
74
|
}
|
|
75
75
|
onYearButtonKeyDown(e) {
|
|
76
76
|
if (isSpace(e)) {
|
|
77
77
|
e.preventDefault();
|
|
78
78
|
}
|
|
79
79
|
if (isEnter(e)) {
|
|
80
|
-
this.fireEvent("show-year-
|
|
80
|
+
this.fireEvent("show-year-view", e);
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
83
|
onYearButtonKeyUp(e) {
|
|
84
84
|
if (isSpace(e)) {
|
|
85
85
|
e.preventDefault();
|
|
86
|
-
this.fireEvent("show-year-
|
|
86
|
+
this.fireEvent("show-year-view", e);
|
|
87
87
|
}
|
|
88
88
|
}
|
|
89
89
|
get hasSecondaryCalendarType() {
|
|
@@ -152,8 +152,8 @@ CalendarHeader = CalendarHeader_1 = __decorate([
|
|
|
152
152
|
}),
|
|
153
153
|
event("next-press"),
|
|
154
154
|
event("previous-press"),
|
|
155
|
-
event("show-month-
|
|
156
|
-
event("show-year-
|
|
155
|
+
event("show-month-view"),
|
|
156
|
+
event("show-year-view")
|
|
157
157
|
], CalendarHeader);
|
|
158
158
|
CalendarHeader.define();
|
|
159
159
|
export default CalendarHeader;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarHeader.js","sourceRoot":"","sources":["../src/CalendarHeader.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,KAAK,MAAM,kDAAkD,CAAC;AACrE,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAE3E,OAAO,OAAO,MAAM,+CAA+C,CAAC;AACpE,OAAO,YAAY,MAAM,oDAAoD,CAAC;AAC9E,OAAO,kDAAkD,CAAC;AAC1D,OAAO,mDAAmD,CAAC;AAC3D,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,sBAAsB,MAAM,qDAAqD,CAAC;AACzF,OAAO,EACN,2BAA2B,EAC3B,+BAA+B,GAC/B,MAAM,mCAAmC,CAAC;AAE3C,SAAS;AACT,OAAO,oBAAoB,MAAM,0CAA0C,CAAC;AAoB5E,IAAM,cAAc,sBAApB,MAAM,cAAe,SAAQ,UAAU;IAmEtC,MAAM,CAAC,KAAK,CAAC,QAAQ;QACpB,gBAAc,CAAC,UAAU,GAAG,MAAM,aAAa,CAAC,oBAAoB,CAAC,CAAC;IACvE,CAAC;IAED;QACC,KAAK,EAAE,CAAC;IACT,CAAC;IAED,iBAAiB;QAChB,IAAI,CAAC,eAAe,GAAG,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;QAC1F,IAAI,CAAC,eAAe,GAAG,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;QAEtF,IAAI,IAAI,CAAC,wBAAwB,EAAE;YAClC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,kCAAkC,CAAC,eAAe,CAAC;YACtF,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,kCAAkC,CAAC,cAAc,CAAC;SACpF;IACF,CAAC;IAED,iBAAiB,CAAC,CAAa;QAC9B,IAAI,IAAI,CAAC,oBAAoB,EAAE;YAC9B,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,OAAO;SACP;QAED,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;QACpC,CAAC,CAAC,cAAc,EAAE,CAAC;IACpB,CAAC;IAED,iBAAiB,CAAC,CAAa;QAC9B,IAAI,IAAI,CAAC,oBAAoB,EAAE;YAC9B,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,OAAO;SACP;QAED,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAChC,CAAC,CAAC,cAAc,EAAE,CAAC;IACpB,CAAC;IAED,kBAAkB,CAAC,CAAa;QAC/B,IAAI,CAAC,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"CalendarHeader.js","sourceRoot":"","sources":["../src/CalendarHeader.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport CalendarType from \"@ui5/webcomponents-base/dist/types/CalendarType.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-left.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\nimport Icon from \"./Icon.js\";\nimport CalendarHeaderTemplate from \"./generated/templates/CalendarHeaderTemplate.lit.js\";\nimport {\n\tCALENDAR_HEADER_NEXT_BUTTON,\n\tCALENDAR_HEADER_PREVIOUS_BUTTON,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport calendarHeaderStyles from \"./generated/themes/CalendarHeader.css.js\";\n\ntype SecondaryCalendarButtonTexts = {\n\tmonthButtonText: string,\n\tmonthButtonInfo: string,\n\tyearButtonText: string,\n}\n\n@customElement({\n\ttag: \"ui5-calendar-header\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: CalendarHeaderTemplate,\n\tstyles: calendarHeaderStyles,\n\tdependencies: [Icon],\n})\n@event(\"next-press\")\n@event(\"previous-press\")\n@event(\"show-month-view\")\n@event(\"show-year-view\")\nclass CalendarHeader extends UI5Element {\n\t/**\n\t * Defines component's timestamp.\n\t *\n\t * **Note:** set by the Calendar component\n\t * @public\n\t * @default undefined\n\t */\n\t@property({ validator: Integer })\n\ttimestamp?: number;\n\n\t/**\n\t * Defines component's primary calendar type.\n\t *\n\t * **Note:** set by the Calendar component\n\t * @public\n\t * @default undefined\n\t */\n\t@property({ type: CalendarType })\n\tprimaryCalendarType?: `${CalendarType}`;\n\n\t/**\n\t * Defines component's secondary calendar type.\n\t *\n\t * **Note:** set by the Calendar component\n\t * @since 1.0.0-rc.16\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ type: CalendarType })\n\tsecondaryCalendarType?: `${CalendarType}`;\n\n\t/**\n\t * Stores information for month button for secondary calendar type\n\t * @private\n\t*/\n\t@property({ type: Object })\n\tbuttonTextForSecondaryCalendarType!: SecondaryCalendarButtonTexts;\n\n\t@property({ type: Boolean })\n\tisNextButtonDisabled!: boolean;\n\n\t@property({ type: Boolean })\n\tisPrevButtonDisabled!: boolean;\n\n\t@property({ type: Boolean })\n\tisMonthButtonHidden!: boolean;\n\n\t@property()\n\t_monthButtonText!: string;\n\n\t@property()\n\t_yearButtonText!: string;\n\n\t@property()\n\t_yearButtonTextSecType!: string;\n\n\t@property({ type: Boolean })\n\tisYearButtonHidden!: boolean;\n\n\t_prevButtonText?: string;\n\t_nextButtonText?: string;\n\t_secondMonthButtonText?: string;\n\t_secondYearButtonText?: string;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tstatic async onDefine() {\n\t\tCalendarHeader.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._prevButtonText = CalendarHeader.i18nBundle.getText(CALENDAR_HEADER_PREVIOUS_BUTTON);\n\t\tthis._nextButtonText = CalendarHeader.i18nBundle.getText(CALENDAR_HEADER_NEXT_BUTTON);\n\n\t\tif (this.hasSecondaryCalendarType) {\n\t\t\tthis._secondMonthButtonText = this.buttonTextForSecondaryCalendarType.monthButtonText;\n\t\t\tthis._secondYearButtonText = this.buttonTextForSecondaryCalendarType.yearButtonText;\n\t\t}\n\t}\n\n\tonPrevButtonClick(e: MouseEvent) {\n\t\tif (this.isPrevButtonDisabled) {\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.fireEvent(\"previous-press\", e);\n\t\te.preventDefault();\n\t}\n\n\tonNextButtonClick(e: MouseEvent) {\n\t\tif (this.isNextButtonDisabled) {\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.fireEvent(\"next-press\", e);\n\t\te.preventDefault();\n\t}\n\n\tonMonthButtonClick(e: MouseEvent) {\n\t\tthis.fireEvent(\"show-month-view\", e);\n\t}\n\n\tonMonthButtonKeyDown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.fireEvent(\"show-month-view\", e);\n\t\t}\n\t}\n\n\tonMonthButtonKeyUp(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.fireEvent(\"show-month-view\", e);\n\t\t}\n\t}\n\n\tonYearButtonClick(e: MouseEvent) {\n\t\tthis.fireEvent(\"show-year-view\", e);\n\t}\n\n\tonYearButtonKeyDown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.fireEvent(\"show-year-view\", e);\n\t\t}\n\t}\n\n\tonYearButtonKeyUp(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.fireEvent(\"show-year-view\", e);\n\t\t}\n\t}\n\n\tget hasSecondaryCalendarType() {\n\t\treturn !!this.secondaryCalendarType && this.secondaryCalendarType !== this.primaryCalendarType;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tprevButton: {\n\t\t\t\t\"ui5-calheader-arrowbtn\": true,\n\t\t\t\t\"ui5-calheader-arrowbtn-disabled\": this.isPrevButtonDisabled,\n\t\t\t},\n\t\t\tnextButton: {\n\t\t\t\t\"ui5-calheader-arrowbtn\": true,\n\t\t\t\t\"ui5-calheader-arrowbtn-disabled\": this.isNextButtonDisabled,\n\t\t\t},\n\t\t};\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\tariaLabelMonthButton: this.hasSecondaryCalendarType\n\t\t\t\t? `${this._monthButtonText}, ${this.buttonTextForSecondaryCalendarType.monthButtonInfo}` : `${this._monthButtonText}`,\n\t\t};\n\t}\n}\n\nCalendarHeader.define();\n\nexport default CalendarHeader;\n"]}
|