@ui5/webcomponents 0.0.0-aeb93167c → 0.0.0-b053ad005
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +343 -0
- package/README.md +144 -52
- package/csp.js +7 -0
- package/customI18n.js +50 -0
- package/dist/Assets-static.js +6 -0
- package/dist/Assets.js +2 -1
- package/dist/Avatar.js +189 -49
- package/dist/AvatarGroup.js +603 -0
- package/dist/Badge.js +45 -19
- package/dist/Breadcrumbs.js +563 -0
- package/dist/BreadcrumbsItem.js +109 -0
- package/dist/BusyIndicator.js +121 -34
- package/dist/Button.js +110 -66
- package/dist/Calendar.js +324 -648
- package/dist/CalendarDate.js +45 -0
- package/dist/CalendarHeader.js +110 -59
- package/dist/CalendarPart.js +111 -0
- package/dist/Card.js +38 -198
- package/dist/CardHeader.js +288 -0
- package/dist/Carousel.js +253 -94
- package/dist/CheckBox.js +138 -70
- package/dist/ColorPalette.js +493 -0
- package/dist/ColorPaletteItem.js +137 -0
- package/dist/ColorPalettePopover.js +219 -0
- package/dist/ColorPicker.js +524 -0
- package/dist/ComboBox.js +348 -144
- package/dist/ComboBoxFilters.js +8 -1
- package/dist/ComboBoxGroupItem.js +70 -0
- package/dist/ComboBoxItem.js +11 -24
- package/dist/CustomListItem.js +36 -2
- package/dist/DateComponentBase.js +170 -0
- package/dist/DatePicker.js +264 -519
- package/dist/DateRangePicker.js +162 -426
- package/dist/DateTimePicker.js +94 -413
- package/dist/DayPicker.js +443 -648
- package/dist/Dialog.js +220 -58
- package/dist/DurationPicker.js +109 -511
- package/dist/FileUploader.js +70 -31
- package/dist/GroupHeaderListItem.js +22 -13
- package/dist/Icon.js +103 -41
- package/dist/Input.js +346 -155
- package/dist/Interfaces.js +192 -0
- package/dist/Label.js +27 -12
- package/dist/Link.js +105 -43
- package/dist/List.js +377 -104
- package/dist/ListItem.js +60 -13
- package/dist/ListItemBase.js +29 -2
- package/dist/MessageStrip.js +47 -46
- package/dist/MonthPicker.js +171 -225
- package/dist/MultiComboBox.js +356 -135
- package/dist/MultiComboBoxItem.js +7 -2
- package/dist/MultiInput.js +55 -24
- package/dist/Option.js +48 -5
- package/dist/Panel.js +63 -73
- package/dist/Popover.js +195 -80
- package/dist/Popup.js +151 -61
- package/dist/ProgressIndicator.js +28 -20
- package/dist/RadioButton.js +126 -43
- package/dist/RadioButtonGroup.js +53 -29
- package/dist/RangeSlider.js +769 -0
- package/dist/RatingIndicator.js +27 -37
- package/dist/ResponsivePopover.js +56 -42
- package/dist/SegmentedButton.js +102 -68
- package/dist/SegmentedButtonItem.js +109 -0
- package/dist/Select.js +275 -116
- package/dist/Slider.js +320 -0
- package/dist/SliderBase.js +842 -0
- package/dist/StandardListItem.js +35 -9
- package/dist/StepInput.js +681 -0
- package/dist/SuggestionGroupItem.js +64 -0
- package/dist/SuggestionItem.js +13 -26
- package/dist/SuggestionListItem.js +17 -6
- package/dist/Switch.js +52 -32
- package/dist/Tab.js +47 -26
- package/dist/TabContainer.js +94 -34
- package/dist/TabSeparator.js +1 -0
- package/dist/Table.js +474 -22
- package/dist/TableCell.js +11 -9
- package/dist/TableColumn.js +13 -3
- package/dist/TableGroupRow.js +160 -0
- package/dist/TableRow.js +210 -11
- package/dist/TextArea.js +86 -46
- package/dist/TimePicker.js +27 -743
- package/dist/TimePickerBase.js +463 -0
- package/dist/TimeSelection.js +493 -0
- package/dist/Title.js +16 -9
- package/dist/Toast.js +19 -8
- package/dist/ToggleButton.js +21 -8
- package/dist/Token.js +32 -16
- package/dist/Tokenizer.js +75 -42
- package/dist/Tree.js +97 -41
- package/dist/TreeItem.js +44 -9
- package/dist/TreeListItem.js +86 -2
- package/dist/WheelSlider.js +58 -58
- package/dist/YearPicker.js +188 -284
- package/dist/api.json +6877 -1
- package/dist/features/ColorPaletteMoreColors.js +42 -0
- package/dist/features/InputElementsFormSupport.js +0 -1
- package/dist/features/InputSuggestions.js +131 -30
- package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cy.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_in.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
- package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -0
- package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -0
- package/dist/generated/i18n/i18n-defaults.js +2 -2
- package/dist/generated/json-imports/Themes-static.js +35 -0
- package/dist/generated/json-imports/Themes.js +23 -19
- package/dist/generated/json-imports/i18n-static.js +162 -0
- package/dist/generated/json-imports/i18n.js +113 -89
- package/dist/generated/templates/AvatarGroupTemplate.lit.js +9 -0
- package/dist/generated/templates/AvatarTemplate.lit.js +9 -16
- package/dist/generated/templates/BadgeTemplate.lit.js +5 -13
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +8 -0
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js +9 -0
- package/dist/generated/templates/BusyIndicatorTemplate.lit.js +7 -13
- package/dist/generated/templates/ButtonTemplate.lit.js +6 -13
- package/dist/generated/templates/CalendarHeaderTemplate.lit.js +6 -11
- package/dist/generated/templates/CalendarTemplate.lit.js +4 -11
- package/dist/generated/templates/CardHeaderTemplate.lit.js +12 -0
- package/dist/generated/templates/CardTemplate.lit.js +5 -17
- package/dist/generated/templates/CarouselTemplate.lit.js +13 -19
- package/dist/generated/templates/CheckBoxTemplate.lit.js +7 -14
- package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +7 -0
- package/dist/generated/templates/ColorPaletteItemTemplate.lit.js +7 -0
- package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +8 -0
- package/dist/generated/templates/ColorPaletteTemplate.lit.js +12 -0
- package/dist/generated/templates/ColorPickerTemplate.lit.js +7 -0
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +20 -25
- package/dist/generated/templates/ComboBoxTemplate.lit.js +8 -14
- package/dist/generated/templates/CustomListItemTemplate.lit.js +13 -20
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +7 -13
- package/dist/generated/templates/DatePickerTemplate.lit.js +6 -13
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +9 -19
- package/dist/generated/templates/DayPickerTemplate.lit.js +13 -19
- package/dist/generated/templates/DialogTemplate.lit.js +9 -15
- package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +7 -14
- package/dist/generated/templates/FileUploaderTemplate.lit.js +7 -14
- package/dist/generated/templates/GroupHeaderListItemTemplate.lit.js +4 -11
- package/dist/generated/templates/IconTemplate.lit.js +6 -13
- package/dist/generated/templates/InputPopoverTemplate.lit.js +24 -31
- package/dist/generated/templates/InputTemplate.lit.js +9 -15
- package/dist/generated/templates/LabelTemplate.lit.js +4 -11
- package/dist/generated/templates/LinkTemplate.lit.js +5 -12
- package/dist/generated/templates/ListItemTemplate.lit.js +13 -20
- package/dist/generated/templates/ListTemplate.lit.js +12 -16
- package/dist/generated/templates/MessageStripTemplate.lit.js +8 -15
- package/dist/generated/templates/MonthPickerTemplate.lit.js +6 -13
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +23 -27
- package/dist/generated/templates/MultiComboBoxTemplate.lit.js +10 -16
- package/dist/generated/templates/MultiInputTemplate.lit.js +13 -19
- package/dist/generated/templates/PanelTemplate.lit.js +9 -14
- package/dist/generated/templates/PopoverTemplate.lit.js +9 -16
- package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +4 -11
- package/dist/generated/templates/PopupTemplate.lit.js +4 -11
- package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +14 -17
- package/dist/generated/templates/RadioButtonTemplate.lit.js +7 -14
- package/dist/generated/templates/RangeSliderTemplate.lit.js +13 -0
- package/dist/generated/templates/RatingIndicatorTemplate.lit.js +11 -16
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +16 -21
- package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +8 -0
- package/dist/generated/templates/SegmentedButtonTemplate.lit.js +4 -11
- package/dist/generated/templates/SelectPopoverTemplate.lit.js +20 -27
- package/dist/generated/templates/SelectTemplate.lit.js +6 -12
- package/dist/generated/templates/SliderBaseTemplate.lit.js +11 -0
- package/dist/generated/templates/SliderTemplate.lit.js +12 -0
- package/dist/generated/templates/StandardListItemTemplate.lit.js +21 -28
- package/dist/generated/templates/StepInputTemplate.lit.js +8 -0
- package/dist/generated/templates/SuggestionListItemTemplate.lit.js +24 -31
- package/dist/generated/templates/SwitchTemplate.lit.js +8 -13
- package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +6 -13
- package/dist/generated/templates/TabContainerTemplate.lit.js +16 -23
- package/dist/generated/templates/TabInOverflowTemplate.lit.js +6 -13
- package/dist/generated/templates/TabInStripTemplate.lit.js +8 -17
- package/dist/generated/templates/TabSeparatorTemplate.lit.js +4 -11
- package/dist/generated/templates/TabTemplate.lit.js +4 -11
- package/dist/generated/templates/TableCellTemplate.lit.js +4 -11
- package/dist/generated/templates/TableColumnTemplate.lit.js +4 -11
- package/dist/generated/templates/TableGroupRowTemplate.lit.js +7 -0
- package/dist/generated/templates/TableRowTemplate.lit.js +12 -18
- package/dist/generated/templates/TableTemplate.lit.js +13 -15
- package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +8 -15
- package/dist/generated/templates/TextAreaTemplate.lit.js +8 -15
- package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +4 -15
- package/dist/generated/templates/TimePickerTemplate.lit.js +6 -13
- package/dist/generated/templates/TimeSelectionTemplate.lit.js +11 -0
- package/dist/generated/templates/TitleTemplate.lit.js +10 -17
- package/dist/generated/templates/ToastTemplate.lit.js +5 -11
- package/dist/generated/templates/ToggleButtonTemplate.lit.js +6 -13
- package/dist/generated/templates/TokenTemplate.lit.js +7 -14
- package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +9 -16
- package/dist/generated/templates/TokenizerTemplate.lit.js +6 -13
- package/dist/generated/templates/TreeListItemTemplate.lit.js +18 -24
- package/dist/generated/templates/TreeTemplate.lit.js +5 -12
- package/dist/generated/templates/WheelSliderTemplate.lit.js +7 -14
- package/dist/generated/templates/YearPickerTemplate.lit.js +6 -13
- package/dist/generated/themes/Avatar.css.js +5 -5
- package/dist/generated/themes/AvatarGroup.css.js +8 -0
- package/dist/generated/themes/Badge.css.js +5 -5
- package/dist/generated/themes/Breadcrumbs.css.js +8 -0
- package/dist/generated/themes/BreadcrumbsPopover.css.js +8 -0
- package/dist/generated/themes/BrowserScrollbar.css.js +8 -0
- package/dist/generated/themes/BusyIndicator.css.js +5 -5
- package/dist/generated/themes/Button.css.js +5 -5
- package/dist/generated/themes/Button.ie11.css.js +8 -0
- package/dist/generated/themes/Calendar.css.js +5 -5
- package/dist/generated/themes/CalendarHeader.css.js +5 -5
- package/dist/generated/themes/Card.css.js +5 -5
- package/dist/generated/themes/CardHeader.css.js +8 -0
- package/dist/generated/themes/Carousel.css.js +5 -5
- package/dist/generated/themes/CheckBox.css.js +5 -5
- package/dist/generated/themes/ColorPalette.css.js +8 -0
- package/dist/generated/themes/ColorPaletteItem.css.js +8 -0
- package/dist/generated/themes/ColorPalettePopover.css.js +8 -0
- package/dist/generated/themes/ColorPaletteStaticArea.css.js +8 -0
- package/dist/generated/themes/ColorPicker.css.js +8 -0
- package/dist/generated/themes/ComboBox.css.js +5 -5
- package/dist/generated/themes/ComboBoxPopover.css.js +5 -5
- package/dist/generated/themes/CustomListItem.css.js +5 -5
- package/dist/generated/themes/DatePicker.css.js +5 -5
- package/dist/generated/themes/DatePickerPopover.css.js +5 -5
- package/dist/generated/themes/DateRangePicker.css.js +5 -5
- package/dist/generated/themes/DateTimePicker.css.js +5 -5
- package/dist/generated/themes/DateTimePickerPopover.css.js +5 -5
- package/dist/generated/themes/DayPicker.css.js +5 -5
- package/dist/generated/themes/Dialog.css.js +5 -5
- package/dist/generated/themes/FileUploader.css.js +5 -5
- package/dist/generated/themes/GroupHeaderListItem.css.js +5 -5
- package/dist/generated/themes/GrowingButton.css.js +8 -0
- package/dist/generated/themes/Icon.css.js +5 -5
- package/dist/generated/themes/Input.css.js +5 -5
- package/dist/generated/themes/InputIcon.css.js +5 -5
- package/dist/generated/themes/InvisibleTextStyles.css.js +5 -5
- package/dist/generated/themes/Label.css.js +5 -5
- package/dist/generated/themes/Link.css.js +5 -5
- package/dist/generated/themes/List.css.js +5 -5
- package/dist/generated/themes/ListItem.css.js +5 -5
- package/dist/generated/themes/ListItemBase.css.js +5 -5
- package/dist/generated/themes/MessageStrip.css.js +5 -5
- package/dist/generated/themes/MonthPicker.css.js +5 -5
- package/dist/generated/themes/MultiComboBox.css.js +5 -5
- package/dist/generated/themes/MultiInput.css.js +5 -5
- package/dist/generated/themes/Panel.css.js +5 -5
- package/dist/generated/themes/Popover.css.js +5 -5
- package/dist/generated/themes/Popup.css.js +5 -5
- package/dist/generated/themes/PopupGlobal.css.js +8 -0
- package/dist/generated/themes/PopupStaticAreaStyles.css.js +5 -5
- package/dist/generated/themes/PopupsCommon.css.js +5 -5
- package/dist/generated/themes/ProgressIndicator.css.js +5 -5
- package/dist/generated/themes/RadioButton.css.js +5 -5
- package/dist/generated/themes/RatingIndicator.css.js +5 -5
- package/dist/generated/themes/ResponsivePopover.css.js +5 -5
- package/dist/generated/themes/ResponsivePopoverCommon.css.js +5 -5
- package/dist/generated/themes/SegmentedButton.css.js +5 -5
- package/dist/generated/themes/Select.css.js +5 -5
- package/dist/generated/themes/SelectPopover.css.js +5 -5
- package/dist/generated/themes/SliderBase.css.js +8 -0
- package/dist/generated/themes/StepInput.css.js +8 -0
- package/dist/generated/themes/Suggestions.css.js +8 -0
- package/dist/generated/themes/Switch.css.js +5 -5
- package/dist/generated/themes/Tab.css.js +5 -5
- package/dist/generated/themes/TabContainer.css.js +5 -5
- package/dist/generated/themes/TabInOverflow.css.js +5 -5
- package/dist/generated/themes/TabInStrip.css.js +5 -5
- package/dist/generated/themes/Table.css.js +5 -5
- package/dist/generated/themes/TableCell.css.js +5 -5
- package/dist/generated/themes/TableColumn.css.js +5 -5
- package/dist/generated/themes/TableGroupRow.css.js +8 -0
- package/dist/generated/themes/TableRow.css.js +5 -5
- package/dist/generated/themes/TapHighlightColor.css.js +8 -0
- package/dist/generated/themes/TextArea.css.js +5 -5
- package/dist/generated/themes/TimePicker.css.js +5 -5
- package/dist/generated/themes/TimePickerPopover.css.js +5 -5
- package/dist/generated/themes/TimeSelection.css.js +8 -0
- package/dist/generated/themes/Title.css.js +5 -5
- package/dist/generated/themes/Toast.css.js +5 -5
- package/dist/generated/themes/ToggleButton.css.js +5 -5
- package/dist/generated/themes/ToggleButton.ie11.css.js +8 -0
- package/dist/generated/themes/Token.css.js +5 -5
- package/dist/generated/themes/Tokenizer.css.js +5 -5
- package/dist/generated/themes/Tree.css.js +5 -5
- package/dist/generated/themes/TreeListItem.css.js +5 -5
- package/dist/generated/themes/ValueStateMessage.css.js +5 -5
- package/dist/generated/themes/WheelSlider.css.js +5 -5
- package/dist/generated/themes/YearPicker.css.js +5 -5
- package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -0
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -0
- package/dist/i18n/messagebundle.properties +335 -0
- package/dist/i18n/messagebundle_ar.properties +224 -0
- package/dist/i18n/messagebundle_bg.properties +224 -0
- package/dist/i18n/messagebundle_ca.properties +224 -0
- package/dist/i18n/messagebundle_cs.properties +224 -0
- package/dist/i18n/messagebundle_cy.properties +224 -0
- package/dist/i18n/messagebundle_da.properties +224 -0
- package/dist/i18n/messagebundle_de.properties +224 -0
- package/dist/i18n/messagebundle_el.properties +224 -0
- package/dist/i18n/messagebundle_en.properties +224 -0
- package/dist/i18n/messagebundle_en_GB.properties +224 -0
- package/dist/i18n/messagebundle_en_US_sappsd.properties +224 -0
- package/dist/i18n/messagebundle_en_US_saprigi.properties +224 -0
- package/dist/i18n/messagebundle_en_US_saptrc.properties +224 -0
- package/dist/i18n/messagebundle_es.properties +224 -0
- package/dist/i18n/messagebundle_es_MX.properties +224 -0
- package/dist/i18n/messagebundle_et.properties +224 -0
- package/dist/i18n/messagebundle_fi.properties +224 -0
- package/dist/i18n/messagebundle_fr.properties +224 -0
- package/dist/i18n/messagebundle_fr_CA.properties +224 -0
- package/dist/i18n/messagebundle_hi.properties +224 -0
- package/dist/i18n/messagebundle_hr.properties +224 -0
- package/dist/i18n/messagebundle_hu.properties +224 -0
- package/dist/i18n/messagebundle_id.properties +224 -0
- package/dist/i18n/messagebundle_in.properties +172 -0
- package/dist/i18n/messagebundle_it.properties +224 -0
- package/dist/i18n/messagebundle_iw.properties +224 -0
- package/dist/i18n/messagebundle_ja.properties +224 -0
- package/dist/i18n/messagebundle_kk.properties +224 -0
- package/dist/i18n/messagebundle_ko.properties +224 -0
- package/dist/i18n/messagebundle_lt.properties +224 -0
- package/dist/i18n/messagebundle_lv.properties +224 -0
- package/dist/i18n/messagebundle_ms.properties +224 -0
- package/dist/i18n/messagebundle_nl.properties +224 -0
- package/dist/i18n/messagebundle_no.properties +224 -0
- package/dist/i18n/messagebundle_pl.properties +224 -0
- package/dist/i18n/messagebundle_pt.properties +224 -0
- package/dist/i18n/messagebundle_pt_PT.properties +224 -0
- package/dist/i18n/messagebundle_ro.properties +224 -0
- package/dist/i18n/messagebundle_ru.properties +224 -0
- package/dist/i18n/messagebundle_sh.properties +224 -0
- package/dist/i18n/messagebundle_sk.properties +224 -0
- package/dist/i18n/messagebundle_sl.properties +224 -0
- package/dist/i18n/messagebundle_sv.properties +224 -0
- package/dist/i18n/messagebundle_th.properties +224 -0
- package/dist/i18n/messagebundle_tr.properties +224 -0
- package/dist/i18n/messagebundle_uk.properties +224 -0
- package/dist/i18n/messagebundle_vi.properties +224 -0
- package/dist/i18n/messagebundle_zh_CN.properties +224 -0
- package/dist/i18n/messagebundle_zh_TW.properties +224 -0
- package/dist/popup-utils/OpenedPopupsRegistry.js +1 -1
- package/dist/popup-utils/PopoverRegistry.js +2 -4
- package/dist/timepicker-utils/TimeSlider.js +15 -13
- package/{src/types/AvatarBackgroundColor.js → dist/types/AvatarColorScheme.js} +9 -9
- package/dist/types/AvatarGroupType.js +43 -0
- package/dist/types/AvatarShape.js +1 -1
- package/dist/types/AvatarSize.js +1 -1
- package/dist/types/BreadcrumbsDesign.js +42 -0
- package/dist/types/BreadcrumbsSeparatorStyle.js +69 -0
- package/dist/types/BusyIndicatorSize.js +1 -1
- package/dist/types/ButtonDesign.js +8 -1
- package/dist/types/CalendarSelectionMode.js +47 -0
- package/dist/types/CarouselArrowsPlacement.js +3 -3
- package/dist/types/GrowingMode.js +48 -0
- package/dist/types/InputType.js +7 -7
- package/dist/types/LinkDesign.js +1 -1
- package/dist/types/ListGrowingMode.js +15 -0
- package/dist/types/ListItemType.js +1 -1
- package/dist/types/ListMode.js +1 -1
- package/dist/types/ListSeparators.js +1 -1
- package/dist/types/{MessageStripType.js → MessageStripDesign.js} +7 -7
- package/dist/types/PanelAccessibleRole.js +1 -1
- package/dist/types/PopoverHorizontalAlign.js +1 -1
- package/dist/types/PopoverPlacementType.js +2 -2
- package/dist/types/PopoverVerticalAlign.js +1 -2
- package/dist/types/Priority.js +1 -1
- package/dist/types/SemanticColor.js +1 -1
- package/dist/types/SwitchDesign.js +40 -0
- package/dist/types/TabContainerTabsPlacement.js +5 -5
- package/dist/types/TabLayout.js +1 -1
- package/dist/types/TableGrowingMode.js +15 -0
- package/dist/types/TableMode.js +47 -0
- package/dist/types/TableRowType.js +40 -0
- package/dist/types/TitleLevel.js +1 -1
- package/dist/types/ToastPlacement.js +1 -2
- package/dist/types/WrappingType.js +41 -0
- package/dist/webcomponentsjs/CHANGELOG.md +61 -0
- package/dist/webcomponentsjs/README.md +64 -47
- package/dist/webcomponentsjs/bundles/webcomponents-ce.js +38 -38
- package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +1 -1
- package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js +60 -0
- package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js.map +1 -0
- package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js +95 -0
- package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js.map +1 -0
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +292 -229
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +1 -1
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +190 -170
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +1 -1
- package/dist/webcomponentsjs/bundles/webcomponents-sd.js +151 -132
- package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +1 -1
- package/dist/webcomponentsjs/custom-elements-es5-adapter.js +2 -2
- package/dist/webcomponentsjs/webcomponents-bundle.js +302 -230
- package/dist/webcomponentsjs/webcomponents-bundle.js.map +1 -1
- package/dist/webcomponentsjs/webcomponents-loader.js +49 -28
- package/package-scripts.js +1 -0
- package/package.json +18 -7
- package/src/Assets-static.js +6 -0
- package/src/Assets.js +2 -1
- package/src/Avatar.hbs +14 -3
- package/src/Avatar.js +189 -49
- package/src/AvatarGroup.hbs +30 -0
- package/src/AvatarGroup.js +603 -0
- package/src/Badge.hbs +7 -4
- package/src/Badge.js +45 -19
- package/src/Breadcrumbs.hbs +42 -0
- package/src/Breadcrumbs.js +563 -0
- package/src/BreadcrumbsItem.js +109 -0
- package/src/BreadcrumbsPopover.hbs +28 -0
- package/src/BusyIndicator.hbs +28 -14
- package/src/BusyIndicator.js +121 -34
- package/src/Button.hbs +5 -3
- package/src/Button.js +110 -66
- package/src/Calendar.hbs +53 -48
- package/src/Calendar.js +324 -648
- package/src/CalendarDate.js +45 -0
- package/src/CalendarHeader.hbs +29 -36
- package/src/CalendarHeader.js +110 -59
- package/src/CalendarPart.js +111 -0
- package/src/Card.hbs +7 -39
- package/src/Card.js +38 -198
- package/src/CardHeader.hbs +35 -0
- package/src/CardHeader.js +288 -0
- package/src/Carousel.hbs +23 -16
- package/src/Carousel.js +253 -94
- package/src/CheckBox.hbs +10 -7
- package/src/CheckBox.js +138 -70
- package/src/ColorPalette.hbs +52 -0
- package/src/ColorPalette.js +493 -0
- package/src/ColorPaletteDialog.hbs +18 -0
- package/src/ColorPaletteItem.hbs +11 -0
- package/src/ColorPaletteItem.js +137 -0
- package/src/ColorPalettePopover.hbs +29 -0
- package/src/ColorPalettePopover.js +219 -0
- package/src/ColorPicker.hbs +98 -0
- package/src/ColorPicker.js +524 -0
- package/src/ComboBox.hbs +7 -2
- package/src/ComboBox.js +348 -144
- package/src/ComboBoxFilters.js +8 -1
- package/src/ComboBoxGroupItem.js +70 -0
- package/src/ComboBoxItem.js +11 -24
- package/src/ComboBoxPopover.hbs +26 -16
- package/src/CustomListItem.js +36 -2
- package/src/DateComponentBase.js +170 -0
- package/src/DatePicker.hbs +5 -4
- package/src/DatePicker.js +264 -519
- package/src/DatePickerPopover.hbs +22 -17
- package/src/DateRangePicker.js +162 -426
- package/src/DateTimePicker.js +94 -413
- package/src/DateTimePickerPopover.hbs +28 -52
- package/src/DayPicker.hbs +18 -12
- package/src/DayPicker.js +443 -648
- package/src/Dialog.hbs +14 -10
- package/src/Dialog.js +220 -58
- package/src/DurationPicker.js +109 -511
- package/src/FileUploader.hbs +3 -0
- package/src/FileUploader.js +70 -31
- package/src/FileUploaderPopover.hbs +2 -1
- package/src/GroupHeaderListItem.hbs +4 -4
- package/src/GroupHeaderListItem.js +22 -13
- package/src/Icon.hbs +4 -3
- package/src/Icon.js +103 -41
- package/src/Input.hbs +17 -6
- package/src/Input.js +346 -155
- package/src/InputPopover.hbs +11 -7
- package/src/Interfaces.js +192 -0
- package/src/Label.hbs +1 -1
- package/src/Label.js +27 -12
- package/src/Link.hbs +3 -2
- package/src/Link.js +105 -43
- package/src/List.hbs +76 -37
- package/src/List.js +377 -104
- package/src/ListItem.hbs +20 -7
- package/src/ListItem.js +60 -13
- package/src/ListItemBase.js +29 -2
- package/src/MessageStrip.hbs +10 -11
- package/src/MessageStrip.js +47 -46
- package/src/MonthPicker.hbs +6 -6
- package/src/MonthPicker.js +171 -225
- package/src/MultiComboBox.hbs +10 -6
- package/src/MultiComboBox.js +356 -135
- package/src/MultiComboBoxItem.js +7 -2
- package/src/MultiComboBoxPopover.hbs +42 -18
- package/src/MultiInput.hbs +2 -1
- package/src/MultiInput.js +55 -24
- package/src/Option.js +48 -5
- package/src/Panel.hbs +23 -16
- package/src/Panel.js +63 -73
- package/src/Popover.js +195 -80
- package/src/Popup.hbs +5 -0
- package/src/Popup.js +151 -61
- package/src/ProgressIndicator.hbs +7 -1
- package/src/ProgressIndicator.js +28 -20
- package/src/RadioButton.hbs +7 -4
- package/src/RadioButton.js +126 -43
- package/src/RadioButtonGroup.js +53 -29
- package/src/RangeSlider.hbs +70 -0
- package/src/RangeSlider.js +769 -0
- package/src/RatingIndicator.hbs +5 -3
- package/src/RatingIndicator.js +27 -37
- package/src/ResponsivePopover.hbs +13 -8
- package/src/ResponsivePopover.js +56 -42
- package/src/SegmentedButton.hbs +12 -5
- package/src/SegmentedButton.js +102 -68
- package/src/SegmentedButtonItem.hbs +42 -0
- package/src/SegmentedButtonItem.js +109 -0
- package/src/Select.hbs +26 -17
- package/src/Select.js +275 -116
- package/src/SelectPopover.hbs +27 -24
- package/src/Slider.hbs +42 -0
- package/src/Slider.js +320 -0
- package/src/SliderBase.hbs +38 -0
- package/src/SliderBase.js +842 -0
- package/src/StandardListItem.hbs +7 -5
- package/src/StandardListItem.js +35 -9
- package/src/StepInput.hbs +77 -0
- package/src/StepInput.js +681 -0
- package/src/SuggestionGroupItem.js +64 -0
- package/src/SuggestionItem.js +13 -26
- package/src/SuggestionListItem.hbs +4 -4
- package/src/SuggestionListItem.js +17 -6
- package/src/Switch.hbs +19 -3
- package/src/Switch.js +52 -32
- package/src/Tab.js +47 -26
- package/src/TabContainer.hbs +43 -26
- package/src/TabContainer.js +94 -34
- package/src/TabContainerPopover.hbs +2 -1
- package/src/TabInStrip.hbs +1 -6
- package/src/TabSeparator.hbs +1 -1
- package/src/TabSeparator.js +1 -0
- package/src/Table.hbs +95 -25
- package/src/Table.js +474 -22
- package/src/TableCell.hbs +1 -0
- package/src/TableCell.js +11 -9
- package/src/TableColumn.hbs +2 -0
- package/src/TableColumn.js +13 -3
- package/src/TableGroupRow.hbs +12 -0
- package/src/TableGroupRow.js +160 -0
- package/src/TableRow.hbs +29 -2
- package/src/TableRow.js +210 -11
- package/src/TextArea.hbs +1 -3
- package/src/TextArea.js +86 -46
- package/src/TextAreaPopover.hbs +2 -1
- package/src/TimePicker.hbs +6 -3
- package/src/TimePicker.js +27 -743
- package/src/TimePickerBase.js +463 -0
- package/src/TimePickerPopover.hbs +28 -52
- package/src/TimeSelection.hbs +60 -0
- package/src/TimeSelection.js +493 -0
- package/src/Title.js +16 -9
- package/src/Toast.hbs +13 -11
- package/src/Toast.js +19 -8
- package/src/ToggleButton.js +21 -8
- package/src/Token.hbs +2 -0
- package/src/Token.js +32 -16
- package/src/Tokenizer.hbs +1 -0
- package/src/Tokenizer.js +75 -42
- package/src/TokenizerPopover.hbs +1 -1
- package/src/Tree.hbs +10 -2
- package/src/Tree.js +97 -41
- package/src/TreeItem.js +44 -9
- package/src/TreeListItem.hbs +15 -4
- package/src/TreeListItem.js +86 -2
- package/src/WheelSlider.hbs +17 -10
- package/src/WheelSlider.js +58 -58
- package/src/YearPicker.hbs +9 -7
- package/src/YearPicker.js +188 -284
- package/src/features/ColorPaletteMoreColors.js +42 -0
- package/src/features/InputElementsFormSupport.js +0 -1
- package/src/features/InputSuggestions.js +131 -30
- package/src/i18n/messagebundle.properties +144 -189
- package/src/i18n/messagebundle_ar.properties +99 -115
- package/src/i18n/messagebundle_bg.properties +99 -115
- package/src/i18n/messagebundle_ca.properties +99 -115
- package/src/i18n/messagebundle_cs.properties +99 -115
- package/src/i18n/messagebundle_cy.properties +224 -0
- package/src/i18n/messagebundle_da.properties +99 -115
- package/src/i18n/messagebundle_de.properties +99 -115
- package/src/i18n/messagebundle_el.properties +99 -115
- package/src/i18n/messagebundle_en.properties +99 -115
- package/src/i18n/messagebundle_en_GB.properties +224 -0
- package/src/i18n/messagebundle_en_US_sappsd.properties +99 -115
- package/src/i18n/messagebundle_en_US_saprigi.properties +224 -0
- package/src/i18n/messagebundle_en_US_saptrc.properties +99 -115
- package/src/i18n/messagebundle_es.properties +99 -115
- package/src/i18n/messagebundle_es_MX.properties +224 -0
- package/src/i18n/messagebundle_et.properties +99 -115
- package/src/i18n/messagebundle_fi.properties +99 -115
- package/src/i18n/messagebundle_fr.properties +99 -115
- package/src/i18n/messagebundle_fr_CA.properties +224 -0
- package/src/i18n/messagebundle_hi.properties +99 -115
- package/src/i18n/messagebundle_hr.properties +99 -115
- package/src/i18n/messagebundle_hu.properties +99 -115
- package/src/i18n/messagebundle_id.properties +224 -0
- package/src/i18n/messagebundle_in.properties +172 -0
- package/src/i18n/messagebundle_it.properties +99 -115
- package/src/i18n/messagebundle_iw.properties +99 -115
- package/src/i18n/messagebundle_ja.properties +100 -116
- package/src/i18n/messagebundle_kk.properties +99 -115
- package/src/i18n/messagebundle_ko.properties +99 -115
- package/src/i18n/messagebundle_lt.properties +99 -115
- package/src/i18n/messagebundle_lv.properties +99 -115
- package/src/i18n/messagebundle_ms.properties +99 -115
- package/src/i18n/messagebundle_nl.properties +99 -115
- package/src/i18n/messagebundle_no.properties +99 -115
- package/src/i18n/messagebundle_pl.properties +99 -115
- package/src/i18n/messagebundle_pt.properties +99 -115
- package/src/i18n/messagebundle_pt_PT.properties +224 -0
- package/src/i18n/messagebundle_ro.properties +98 -114
- package/src/i18n/messagebundle_ru.properties +99 -115
- package/src/i18n/messagebundle_sh.properties +99 -115
- package/src/i18n/messagebundle_sk.properties +99 -115
- package/src/i18n/messagebundle_sl.properties +99 -115
- package/src/i18n/messagebundle_sv.properties +99 -115
- package/src/i18n/messagebundle_th.properties +99 -115
- package/src/i18n/messagebundle_tr.properties +99 -115
- package/src/i18n/messagebundle_uk.properties +101 -117
- package/src/i18n/messagebundle_vi.properties +99 -115
- package/src/i18n/messagebundle_zh_CN.properties +99 -115
- package/src/i18n/messagebundle_zh_TW.properties +99 -115
- package/src/popup-utils/OpenedPopupsRegistry.js +1 -1
- package/src/popup-utils/PopoverRegistry.js +2 -4
- package/src/timepicker-utils/TimeSlider.js +15 -13
- package/{dist/types/AvatarBackgroundColor.js → src/types/AvatarColorScheme.js} +9 -9
- package/src/types/AvatarGroupType.js +43 -0
- package/src/types/AvatarShape.js +1 -1
- package/src/types/AvatarSize.js +1 -1
- package/src/types/BreadcrumbsDesign.js +42 -0
- package/src/types/BreadcrumbsSeparatorStyle.js +69 -0
- package/src/types/BusyIndicatorSize.js +1 -1
- package/src/types/ButtonDesign.js +8 -1
- package/src/types/CalendarSelectionMode.js +47 -0
- package/src/types/CarouselArrowsPlacement.js +3 -3
- package/src/types/GrowingMode.js +48 -0
- package/src/types/InputType.js +7 -7
- package/src/types/LinkDesign.js +1 -1
- package/src/types/ListGrowingMode.js +15 -0
- package/src/types/ListItemType.js +1 -1
- package/src/types/ListMode.js +1 -1
- package/src/types/ListSeparators.js +1 -1
- package/src/types/{MessageStripType.js → MessageStripDesign.js} +7 -7
- package/src/types/PanelAccessibleRole.js +1 -1
- package/src/types/PopoverHorizontalAlign.js +1 -1
- package/src/types/PopoverPlacementType.js +2 -2
- package/src/types/PopoverVerticalAlign.js +1 -2
- package/src/types/Priority.js +1 -1
- package/src/types/SemanticColor.js +1 -1
- package/src/types/SwitchDesign.js +40 -0
- package/src/types/TabContainerTabsPlacement.js +5 -5
- package/src/types/TabLayout.js +1 -1
- package/src/types/TableGrowingMode.js +15 -0
- package/src/types/TableMode.js +47 -0
- package/src/types/TableRowType.js +40 -0
- package/src/types/TitleLevel.js +1 -1
- package/src/types/ToastPlacement.js +1 -2
- package/src/types/WrappingType.js +41 -0
- package/dist/Timeline.js +0 -99
- package/dist/TimelineItem.js +0 -156
- package/dist/generated/templates/ComboBoxItemTemplate.lit.js +0 -14
- package/dist/generated/templates/DateRangePickerTemplate.lit.js +0 -16
- package/dist/generated/templates/DurationPickerPopoverTemplate.lit.js +0 -17
- package/dist/generated/templates/DurationPickerTemplate.lit.js +0 -16
- package/dist/generated/templates/TimelineItemTemplate.lit.js +0 -19
- package/dist/generated/templates/TimelineTemplate.lit.js +0 -15
- package/dist/generated/themes/ComboBoxItem.css.js +0 -8
- package/dist/generated/themes/DurationPicker.css.js +0 -8
- package/dist/generated/themes/DurationPickerPopover.css.js +0 -8
- package/dist/generated/themes/Timeline.css.js +0 -8
- package/dist/generated/themes/TimelineItem.css.js +0 -8
- package/dist/popup-utils/PopupUtils.js +0 -84
- package/dist/types/AvatarFitType.js +0 -40
- package/dist/webcomponentsjs/package.json +0 -46
- package/dist/webcomponentsjs/src/entrypoints/custom-elements-es5-adapter-index.js +0 -16
- package/dist/webcomponentsjs/src/entrypoints/webcomponents-bundle-index.js +0 -53
- package/dist/webcomponentsjs/src/entrypoints/webcomponents-ce-index.js +0 -17
- package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-index.js +0 -19
- package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-pf-index.js +0 -28
- package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-index.js +0 -18
- package/src/ComboBoxItem.hbs +0 -0
- package/src/DateRangePicker.hbs +0 -1
- package/src/DurationPicker.hbs +0 -29
- package/src/DurationPickerPopover.hbs +0 -48
- package/src/Timeline.hbs +0 -9
- package/src/Timeline.js +0 -99
- package/src/TimelineItem.hbs +0 -39
- package/src/TimelineItem.js +0 -156
- package/src/popup-utils/PopupUtils.js +0 -84
- package/src/types/AvatarFitType.js +0 -40
package/dist/RatingIndicator.js
CHANGED
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
isSpace,
|
|
9
9
|
isEnter,
|
|
10
10
|
} from "@ui5/webcomponents-base/dist/Keys.js";
|
|
11
|
-
import {
|
|
11
|
+
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
12
12
|
import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
|
|
13
13
|
import Float from "@ui5/webcomponents-base/dist/types/Float.js";
|
|
14
14
|
import {
|
|
@@ -29,7 +29,7 @@ const metadata = {
|
|
|
29
29
|
properties: /** @lends sap.ui.webcomponents.main.RatingIndicator.prototype */ {
|
|
30
30
|
|
|
31
31
|
/**
|
|
32
|
-
* The indicated value of the rating
|
|
32
|
+
* The indicated value of the rating.
|
|
33
33
|
* <br><br>
|
|
34
34
|
* <b>Note:</b> If you set a number which is not round, it would be shown as follows:
|
|
35
35
|
* <ul>
|
|
@@ -47,21 +47,22 @@ const metadata = {
|
|
|
47
47
|
},
|
|
48
48
|
|
|
49
49
|
/**
|
|
50
|
-
* The number of displayed rating symbols
|
|
50
|
+
* The number of displayed rating symbols.
|
|
51
51
|
* @type {Integer}
|
|
52
52
|
* @defaultvalue 5
|
|
53
53
|
* @public
|
|
54
|
+
* @since 1.0.0-rc.15
|
|
54
55
|
*/
|
|
55
|
-
|
|
56
|
+
max: {
|
|
56
57
|
type: Integer,
|
|
57
58
|
defaultValue: 5,
|
|
58
59
|
},
|
|
59
60
|
|
|
60
61
|
/**
|
|
61
|
-
* Defines whether the
|
|
62
|
+
* Defines whether the component is disabled.
|
|
62
63
|
*
|
|
63
64
|
* <br><br>
|
|
64
|
-
* <b>Note:</b> A disabled
|
|
65
|
+
* <b>Note:</b> A disabled component is completely noninteractive.
|
|
65
66
|
* @type {boolean}
|
|
66
67
|
* @defaultvalue false
|
|
67
68
|
* @public
|
|
@@ -71,9 +72,9 @@ const metadata = {
|
|
|
71
72
|
},
|
|
72
73
|
|
|
73
74
|
/**
|
|
74
|
-
* Defines whether the
|
|
75
|
+
* Defines whether the component is read-only.
|
|
75
76
|
* <br><br>
|
|
76
|
-
* <b>Note:</b> A read-only
|
|
77
|
+
* <b>Note:</b> A read-only component is not editable,
|
|
77
78
|
* but still provides visual feedback upon user interaction.
|
|
78
79
|
*
|
|
79
80
|
* @type {boolean}
|
|
@@ -85,25 +86,14 @@ const metadata = {
|
|
|
85
86
|
},
|
|
86
87
|
|
|
87
88
|
/**
|
|
88
|
-
*
|
|
89
|
-
*
|
|
90
|
-
* @defaultvalue: undefined
|
|
91
|
-
* @private
|
|
92
|
-
* @since 1.0.0-rc.8
|
|
93
|
-
*/
|
|
94
|
-
ariaLabel: {
|
|
95
|
-
type: String,
|
|
96
|
-
defaultValue: undefined,
|
|
97
|
-
},
|
|
98
|
-
|
|
99
|
-
/**
|
|
100
|
-
* Defines the tooltip for the rating indicator.
|
|
89
|
+
* Sets the accessible aria name of the component.
|
|
90
|
+
*
|
|
101
91
|
* @type {String}
|
|
102
92
|
* @defaultvalue: undefined
|
|
103
|
-
* @
|
|
104
|
-
* @since 1.0.0-rc.
|
|
93
|
+
* @public
|
|
94
|
+
* @since 1.0.0-rc.15
|
|
105
95
|
*/
|
|
106
|
-
|
|
96
|
+
accessibleName: {
|
|
107
97
|
type: String,
|
|
108
98
|
defaultValue: undefined,
|
|
109
99
|
},
|
|
@@ -142,23 +132,20 @@ const metadata = {
|
|
|
142
132
|
* @class
|
|
143
133
|
*
|
|
144
134
|
* <h3 class="comment-api-title">Overview</h3>
|
|
145
|
-
* The
|
|
135
|
+
* The Rating Indicator is used to display a specific number of icons that are used to rate an item.
|
|
146
136
|
* Additionally, it is also used to display the average and overall ratings.
|
|
147
137
|
*
|
|
148
138
|
* <h3>Usage</h3>
|
|
149
|
-
* The
|
|
139
|
+
* The recommended number of icons is between 5 and 7.
|
|
150
140
|
*
|
|
151
141
|
* <h3>Responsive Behavior</h3>
|
|
152
142
|
* You can change the size of the Rating Indicator by changing its <code>font-size</code> CSS property.
|
|
153
143
|
* <br>
|
|
154
144
|
* Example: <code><ui5-rating-indicator style="font-size: 3rem;"></ui5-rating-indicator></code>
|
|
155
145
|
*
|
|
156
|
-
* <h3>Usage</h3>
|
|
157
|
-
*
|
|
158
|
-
* For the <code>ui5-rating-indicator</code>
|
|
159
146
|
* <h3>ES6 Module Import</h3>
|
|
160
147
|
*
|
|
161
|
-
* <code>import @ui5/webcomponents/dist/RatingIndicator.js";</code>
|
|
148
|
+
* <code>import "@ui5/webcomponents/dist/RatingIndicator.js";</code>
|
|
162
149
|
*
|
|
163
150
|
* @constructor
|
|
164
151
|
* @author SAP SE
|
|
@@ -186,14 +173,13 @@ class RatingIndicator extends UI5Element {
|
|
|
186
173
|
}
|
|
187
174
|
|
|
188
175
|
static async onDefine() {
|
|
189
|
-
await
|
|
176
|
+
RatingIndicator.i18nBundle = await getI18nBundle("@ui5/webcomponents");
|
|
190
177
|
}
|
|
191
178
|
|
|
192
179
|
constructor() {
|
|
193
180
|
super();
|
|
194
181
|
|
|
195
182
|
this._liveValue = null; // stores the value to determine when to fire change
|
|
196
|
-
this.i18nBundle = getI18nBundle("@ui5/webcomponents");
|
|
197
183
|
}
|
|
198
184
|
|
|
199
185
|
onBeforeRendering() {
|
|
@@ -203,7 +189,7 @@ class RatingIndicator extends UI5Element {
|
|
|
203
189
|
calcState() {
|
|
204
190
|
this._stars = [];
|
|
205
191
|
|
|
206
|
-
for (let i = 1; i < this.
|
|
192
|
+
for (let i = 1; i < this.max + 1; i++) {
|
|
207
193
|
const remainder = Math.round((this.value - Math.floor(this.value)) * 10);
|
|
208
194
|
let halfStar = false,
|
|
209
195
|
tempValue = this.value;
|
|
@@ -255,7 +241,7 @@ class RatingIndicator extends UI5Element {
|
|
|
255
241
|
if (down && this.value > 0) {
|
|
256
242
|
this.value = Math.round(this.value - 1);
|
|
257
243
|
this.fireEvent("change");
|
|
258
|
-
} else if (up && this.value < this.
|
|
244
|
+
} else if (up && this.value < this.max) {
|
|
259
245
|
this.value = Math.round(this.value + 1);
|
|
260
246
|
this.fireEvent("change");
|
|
261
247
|
}
|
|
@@ -280,20 +266,24 @@ class RatingIndicator extends UI5Element {
|
|
|
280
266
|
}
|
|
281
267
|
|
|
282
268
|
get tooltip() {
|
|
283
|
-
return this.title || this.defaultTooltip;
|
|
269
|
+
return this.getAttribute("title") || this.defaultTooltip;
|
|
284
270
|
}
|
|
285
271
|
|
|
286
272
|
get defaultTooltip() {
|
|
287
|
-
return
|
|
273
|
+
return RatingIndicator.i18nBundle.getText(RATING_INDICATOR_TOOLTIP_TEXT);
|
|
288
274
|
}
|
|
289
275
|
|
|
290
276
|
get _ariaRoleDescription() {
|
|
291
|
-
return
|
|
277
|
+
return RatingIndicator.i18nBundle.getText(RATING_INDICATOR_TEXT);
|
|
292
278
|
}
|
|
293
279
|
|
|
294
280
|
get _ariaDisabled() {
|
|
295
281
|
return this.disabled || undefined;
|
|
296
282
|
}
|
|
283
|
+
|
|
284
|
+
get ariaReadonly() {
|
|
285
|
+
return this.readonly ? "true" : undefined;
|
|
286
|
+
}
|
|
297
287
|
}
|
|
298
288
|
|
|
299
289
|
RatingIndicator.define();
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { isPhone } from "@ui5/webcomponents-base/dist/Device.js";
|
|
2
|
-
import {
|
|
2
|
+
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
3
|
+
import { getNextZIndex } from "@ui5/webcomponents-base/dist/util/PopupUtils.js";
|
|
4
|
+
import { RESPONSIVE_POPOVER_CLOSE_DIALOG_BUTTON } from "./generated/i18n/i18n-defaults.js";
|
|
3
5
|
import ResponsivePopoverTemplate from "./generated/templates/ResponsivePopoverTemplate.lit.js";
|
|
4
6
|
import Popover from "./Popover.js";
|
|
5
7
|
import Dialog from "./Dialog.js";
|
|
@@ -10,8 +12,6 @@ import "@ui5/webcomponents-icons/dist/decline.js";
|
|
|
10
12
|
// Styles
|
|
11
13
|
import ResponsivePopoverCss from "./generated/themes/ResponsivePopover.css.js";
|
|
12
14
|
|
|
13
|
-
const POPOVER_MIN_WIDTH = 100;
|
|
14
|
-
|
|
15
15
|
/**
|
|
16
16
|
* @public
|
|
17
17
|
*/
|
|
@@ -19,16 +19,6 @@ const metadata = {
|
|
|
19
19
|
tag: "ui5-responsive-popover",
|
|
20
20
|
properties: /** @lends sap.ui.webcomponents.main.ResponsivePopover.prototype */ {
|
|
21
21
|
|
|
22
|
-
/**
|
|
23
|
-
* Defines whether the component will stretch to fit its content.
|
|
24
|
-
* <br/><b>Note:</b> by default the popover will be as wide as its opener component and will grow if the content is not fitting.
|
|
25
|
-
* <br/><b>Note:</b> if set to true, it will take only as much space as it needs.
|
|
26
|
-
* @private
|
|
27
|
-
*/
|
|
28
|
-
noStretch: {
|
|
29
|
-
type: Boolean,
|
|
30
|
-
},
|
|
31
|
-
|
|
32
22
|
/**
|
|
33
23
|
* Defines if padding would be added around the content.
|
|
34
24
|
* @private
|
|
@@ -53,6 +43,19 @@ const metadata = {
|
|
|
53
43
|
_hideHeader: {
|
|
54
44
|
type: Boolean,
|
|
55
45
|
},
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Defines whether a close button will be rendered in the header of the component
|
|
49
|
+
* <b>Note:</b> If you are using the <code>header</code> slot, this property will have no effect
|
|
50
|
+
*
|
|
51
|
+
* @private
|
|
52
|
+
* @type {Boolean}
|
|
53
|
+
* @defaultvalue false
|
|
54
|
+
* @since 1.0.0-rc.16
|
|
55
|
+
*/
|
|
56
|
+
_hideCloseButton: {
|
|
57
|
+
type: Boolean,
|
|
58
|
+
},
|
|
56
59
|
},
|
|
57
60
|
};
|
|
58
61
|
|
|
@@ -75,6 +78,10 @@ const metadata = {
|
|
|
75
78
|
* @public
|
|
76
79
|
*/
|
|
77
80
|
class ResponsivePopover extends Popover {
|
|
81
|
+
constructor() {
|
|
82
|
+
super();
|
|
83
|
+
}
|
|
84
|
+
|
|
78
85
|
static get metadata() {
|
|
79
86
|
return metadata;
|
|
80
87
|
}
|
|
@@ -83,6 +90,17 @@ class ResponsivePopover extends Popover {
|
|
|
83
90
|
return [Popover.styles, ResponsivePopoverCss];
|
|
84
91
|
}
|
|
85
92
|
|
|
93
|
+
get classes() {
|
|
94
|
+
const allClasses = super.classes;
|
|
95
|
+
|
|
96
|
+
allClasses.header = {
|
|
97
|
+
"ui5-responsive-popover-header": true,
|
|
98
|
+
"ui5-responsive-popover-header-no-title": !this.headerText,
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
return allClasses;
|
|
102
|
+
}
|
|
103
|
+
|
|
86
104
|
static get template() {
|
|
87
105
|
return ResponsivePopoverTemplate;
|
|
88
106
|
}
|
|
@@ -96,27 +114,20 @@ class ResponsivePopover extends Popover {
|
|
|
96
114
|
}
|
|
97
115
|
|
|
98
116
|
/**
|
|
99
|
-
*
|
|
100
|
-
* @param {HTMLElement} opener the element that the popover is
|
|
117
|
+
* Shows popover on desktop and dialog on mobile.
|
|
118
|
+
* @param {HTMLElement} opener the element that the popover is shown at
|
|
119
|
+
* @param {boolean} preventInitialFocus Prevents applying the focus inside the popup
|
|
101
120
|
* @public
|
|
121
|
+
* @async
|
|
122
|
+
* @returns {Promise} Resolves when the responsive popover is open
|
|
102
123
|
*/
|
|
103
|
-
|
|
104
|
-
this.style.display = this._isPhone ? "contents" : "";
|
|
105
|
-
|
|
106
|
-
if (this.isOpen() || (this._dialog && this._dialog.isOpen())) {
|
|
107
|
-
return;
|
|
108
|
-
}
|
|
109
|
-
|
|
124
|
+
async showAt(opener, preventInitialFocus = false) {
|
|
110
125
|
if (!isPhone()) {
|
|
111
|
-
|
|
112
|
-
if (!this.noStretch) {
|
|
113
|
-
this._minWidth = Math.max(POPOVER_MIN_WIDTH, opener.getBoundingClientRect().width);
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
this.openBy(opener);
|
|
126
|
+
await super.showAt(opener, preventInitialFocus);
|
|
117
127
|
} else {
|
|
128
|
+
this.style.display = "contents";
|
|
118
129
|
this.style.zIndex = getNextZIndex();
|
|
119
|
-
this._dialog.
|
|
130
|
+
await this._dialog.show(preventInitialFocus);
|
|
120
131
|
}
|
|
121
132
|
}
|
|
122
133
|
|
|
@@ -128,7 +139,7 @@ class ResponsivePopover extends Popover {
|
|
|
128
139
|
if (!isPhone()) {
|
|
129
140
|
super.close(escPressed, preventRegistryUpdate, preventFocusRestore);
|
|
130
141
|
} else {
|
|
131
|
-
this._dialog.close();
|
|
142
|
+
this._dialog.close(escPressed, preventRegistryUpdate, preventFocusRestore);
|
|
132
143
|
}
|
|
133
144
|
}
|
|
134
145
|
|
|
@@ -137,23 +148,18 @@ class ResponsivePopover extends Popover {
|
|
|
137
148
|
return this.close();
|
|
138
149
|
}
|
|
139
150
|
|
|
140
|
-
this.
|
|
151
|
+
this.showAt(opener);
|
|
141
152
|
}
|
|
142
153
|
|
|
154
|
+
/**
|
|
155
|
+
* Tells if the responsive popover is open
|
|
156
|
+
* @public
|
|
157
|
+
* @returns {boolean}
|
|
158
|
+
*/
|
|
143
159
|
isOpen() {
|
|
144
160
|
return isPhone() ? this._dialog.isOpen() : super.isOpen();
|
|
145
161
|
}
|
|
146
162
|
|
|
147
|
-
get styles() {
|
|
148
|
-
const popoverStyles = super.styles;
|
|
149
|
-
|
|
150
|
-
popoverStyles.root = {
|
|
151
|
-
"min-width": `${this._minWidth}px`,
|
|
152
|
-
};
|
|
153
|
-
|
|
154
|
-
return popoverStyles;
|
|
155
|
-
}
|
|
156
|
-
|
|
157
163
|
get _dialog() {
|
|
158
164
|
return this.shadowRoot.querySelector("[ui5-dialog]");
|
|
159
165
|
}
|
|
@@ -163,13 +169,17 @@ class ResponsivePopover extends Popover {
|
|
|
163
169
|
}
|
|
164
170
|
|
|
165
171
|
get _displayHeader() {
|
|
166
|
-
return this._isPhone || !this.contentOnlyOnDesktop;
|
|
172
|
+
return (this._isPhone || !this.contentOnlyOnDesktop) && super._displayHeader;
|
|
167
173
|
}
|
|
168
174
|
|
|
169
175
|
get _displayFooter() {
|
|
170
176
|
return this._isPhone || !this.contentOnlyOnDesktop;
|
|
171
177
|
}
|
|
172
178
|
|
|
179
|
+
get _closeDialogAriaLabel() {
|
|
180
|
+
return ResponsivePopover.i18nBundle.getText(RESPONSIVE_POPOVER_CLOSE_DIALOG_BUTTON);
|
|
181
|
+
}
|
|
182
|
+
|
|
173
183
|
_afterDialogOpen(event) {
|
|
174
184
|
this.opened = true;
|
|
175
185
|
this._propagateDialogEvent(event);
|
|
@@ -185,6 +195,10 @@ class ResponsivePopover extends Popover {
|
|
|
185
195
|
|
|
186
196
|
this.fireEvent(type, event.detail);
|
|
187
197
|
}
|
|
198
|
+
|
|
199
|
+
static async onDefine() {
|
|
200
|
+
ResponsivePopover.i18nBundle = await getI18nBundle("@ui5/webcomponents");
|
|
201
|
+
}
|
|
188
202
|
}
|
|
189
203
|
|
|
190
204
|
ResponsivePopover.define();
|
package/dist/SegmentedButton.js
CHANGED
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
2
2
|
import ItemNavigation from "@ui5/webcomponents-base/dist/delegate/ItemNavigation.js";
|
|
3
3
|
import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
|
|
4
|
-
import {
|
|
4
|
+
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
5
5
|
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
6
|
-
import
|
|
6
|
+
import { renderFinished } from "@ui5/webcomponents-base/dist/Render.js";
|
|
7
7
|
import { isIE } from "@ui5/webcomponents-base/dist/Device.js";
|
|
8
|
-
import {
|
|
9
|
-
|
|
8
|
+
import {
|
|
9
|
+
isSpace,
|
|
10
|
+
isEnter,
|
|
11
|
+
} from "@ui5/webcomponents-base/dist/Keys.js";
|
|
12
|
+
import { SEGMENTEDBUTTON_ARIA_DESCRIPTION, SEGMENTEDBUTTON_ARIA_DESCRIBEDBY } from "./generated/i18n/i18n-defaults.js";
|
|
13
|
+
import SegmentedButtonItem from "./SegmentedButtonItem.js";
|
|
10
14
|
|
|
11
15
|
// Template
|
|
12
16
|
import SegmentedButtonTemplate from "./generated/templates/SegmentedButtonTemplate.lit.js";
|
|
@@ -18,39 +22,40 @@ import SegmentedButtonCss from "./generated/themes/SegmentedButton.css.js";
|
|
|
18
22
|
* @public
|
|
19
23
|
*/
|
|
20
24
|
const metadata = {
|
|
21
|
-
tag: "ui5-
|
|
25
|
+
tag: "ui5-segmented-button",
|
|
26
|
+
altTag: "ui5-segmentedbutton",
|
|
22
27
|
languageAware: true,
|
|
23
28
|
properties: /** @lends sap.ui.webcomponents.main.SegmentedButton.prototype */ {},
|
|
24
29
|
managedSlots: true,
|
|
25
30
|
slots: /** @lends sap.ui.webcomponents.main.SegmentedButton.prototype */ {
|
|
26
31
|
|
|
27
32
|
/**
|
|
28
|
-
* Defines the
|
|
33
|
+
* Defines the items of <code>ui5-segmented-button</code>.
|
|
29
34
|
* <br><br>
|
|
30
|
-
* <b>Note:</b> Multiple
|
|
35
|
+
* <b>Note:</b> Multiple items are allowed.
|
|
31
36
|
* <br><br>
|
|
32
|
-
* <b>Note:</b> Use the <code>ui5-
|
|
33
|
-
* @type {
|
|
34
|
-
* @slot
|
|
37
|
+
* <b>Note:</b> Use the <code>ui5-segmented-button-item</code> for the intended design.
|
|
38
|
+
* @type {sap.ui.webcomponents.main.ISegmentedButtonItem[]}
|
|
39
|
+
* @slot items
|
|
35
40
|
* @public
|
|
36
41
|
*/
|
|
37
42
|
"default": {
|
|
38
|
-
propertyName: "
|
|
43
|
+
propertyName: "items",
|
|
39
44
|
type: HTMLElement,
|
|
40
45
|
},
|
|
41
46
|
},
|
|
42
47
|
events: /** @lends sap.ui.webcomponents.main.SegmentedButton.prototype */ {
|
|
43
48
|
|
|
44
49
|
/**
|
|
45
|
-
* Fired when the selected
|
|
50
|
+
* Fired when the selected item changes.
|
|
46
51
|
*
|
|
47
52
|
* @event sap.ui.webcomponents.main.SegmentedButton#selection-change
|
|
48
|
-
* @param {HTMLElement}
|
|
53
|
+
* @param {HTMLElement} selectedItem the pressed item.
|
|
49
54
|
* @public
|
|
50
55
|
*/
|
|
51
56
|
"selection-change": {
|
|
52
57
|
detail: {
|
|
53
|
-
|
|
58
|
+
selectedItem: { type: HTMLElement },
|
|
54
59
|
},
|
|
55
60
|
},
|
|
56
61
|
},
|
|
@@ -61,11 +66,11 @@ const metadata = {
|
|
|
61
66
|
*
|
|
62
67
|
* <h3 class="comment-api-title">Overview</h3>
|
|
63
68
|
*
|
|
64
|
-
* The <code>ui5-
|
|
65
|
-
* one of the
|
|
69
|
+
* The <code>ui5-segmented-button</code> shows a group of items. When the user clicks or taps
|
|
70
|
+
* one of the items, it stays in a pressed state. It automatically resizes the items
|
|
66
71
|
* to fit proportionally within the component. When no width is set, the component uses the available width.
|
|
67
72
|
* <br><br>
|
|
68
|
-
* <b>Note:</b> There can be just one selected <code>
|
|
73
|
+
* <b>Note:</b> There can be just one selected <code>item</code> at a time.
|
|
69
74
|
*
|
|
70
75
|
* <h3>ES6 Module Import</h3>
|
|
71
76
|
*
|
|
@@ -75,8 +80,9 @@ const metadata = {
|
|
|
75
80
|
* @author SAP SE
|
|
76
81
|
* @alias sap.ui.webcomponents.main.SegmentedButton
|
|
77
82
|
* @extends sap.ui.webcomponents.base.UI5Element
|
|
78
|
-
* @tagname ui5-
|
|
83
|
+
* @tagname ui5-segmented-button
|
|
79
84
|
* @since 1.0.0-rc.6
|
|
85
|
+
* @appenddocs SegmentedButtonItem
|
|
80
86
|
* @public
|
|
81
87
|
*/
|
|
82
88
|
class SegmentedButton extends UI5Element {
|
|
@@ -97,23 +103,25 @@ class SegmentedButton extends UI5Element {
|
|
|
97
103
|
}
|
|
98
104
|
|
|
99
105
|
static get dependencies() {
|
|
100
|
-
return [
|
|
106
|
+
return [SegmentedButtonItem];
|
|
101
107
|
}
|
|
102
108
|
|
|
103
109
|
static async onDefine() {
|
|
104
|
-
await
|
|
110
|
+
SegmentedButton.i18nBundle = await getI18nBundle("@ui5/webcomponents");
|
|
105
111
|
}
|
|
106
112
|
|
|
107
113
|
constructor() {
|
|
108
114
|
super();
|
|
109
|
-
|
|
115
|
+
|
|
116
|
+
this._itemNavigation = new ItemNavigation(this, {
|
|
117
|
+
getItemsCallback: () => this.getSlottedNodes("items"),
|
|
118
|
+
});
|
|
110
119
|
|
|
111
120
|
this.absoluteWidthSet = false; // set to true whenever we set absolute width to the component
|
|
112
121
|
this.percentageWidthSet = false; // set to true whenever we set 100% width to the component
|
|
113
122
|
this.hasPreviouslyFocusedItem = false;
|
|
114
123
|
|
|
115
124
|
this._handleResizeBound = this._doLayout.bind(this);
|
|
116
|
-
this.i18nBundle = getI18nBundle("@ui5/webcomponents");
|
|
117
125
|
}
|
|
118
126
|
|
|
119
127
|
onEnterDOM() {
|
|
@@ -121,10 +129,19 @@ class SegmentedButton extends UI5Element {
|
|
|
121
129
|
}
|
|
122
130
|
|
|
123
131
|
onExitDOM() {
|
|
124
|
-
|
|
132
|
+
if (this.parentNode) {
|
|
133
|
+
ResizeHandler.deregister(this.parentNode, this._handleResizeBound);
|
|
134
|
+
}
|
|
125
135
|
}
|
|
126
136
|
|
|
127
137
|
onBeforeRendering() {
|
|
138
|
+
const items = this.getSlottedNodes("items");
|
|
139
|
+
|
|
140
|
+
items.forEach((item, index, arr) => {
|
|
141
|
+
item.posInSet = index + 1;
|
|
142
|
+
item.sizeOfSet = arr.length;
|
|
143
|
+
});
|
|
144
|
+
|
|
128
145
|
this.normalizeSelection();
|
|
129
146
|
}
|
|
130
147
|
|
|
@@ -132,24 +149,24 @@ class SegmentedButton extends UI5Element {
|
|
|
132
149
|
await this._doLayout();
|
|
133
150
|
}
|
|
134
151
|
|
|
135
|
-
|
|
152
|
+
prepareToMeasureItems() {
|
|
136
153
|
this.style.width = "";
|
|
137
|
-
this.
|
|
138
|
-
|
|
154
|
+
this.items.forEach(item => {
|
|
155
|
+
item.style.width = "";
|
|
139
156
|
});
|
|
140
157
|
}
|
|
141
158
|
|
|
142
|
-
async
|
|
143
|
-
await
|
|
144
|
-
this.
|
|
159
|
+
async measureItemsWidth() {
|
|
160
|
+
await renderFinished();
|
|
161
|
+
this.prepareToMeasureItems();
|
|
145
162
|
|
|
146
|
-
this.widths = this.
|
|
163
|
+
this.widths = this.items.map(item => {
|
|
147
164
|
// +1 is added because for width 100.44px the offsetWidth property returns 100px and not 101px
|
|
148
|
-
let width =
|
|
165
|
+
let width = item.offsetWidth + 1;
|
|
149
166
|
|
|
150
167
|
if (isIE()) {
|
|
151
|
-
// in IE we are adding 1 one px beacause the width of the border on
|
|
152
|
-
// longest
|
|
168
|
+
// in IE we are adding 1 one px beacause the width of the border on an item in the middle is not calculated and if the
|
|
169
|
+
// longest item is in the middle, it truncates
|
|
153
170
|
width += 1;
|
|
154
171
|
}
|
|
155
172
|
|
|
@@ -157,76 +174,89 @@ class SegmentedButton extends UI5Element {
|
|
|
157
174
|
});
|
|
158
175
|
}
|
|
159
176
|
|
|
160
|
-
initItemNavigation() {
|
|
161
|
-
this._itemNavigation = new ItemNavigation(this);
|
|
162
|
-
|
|
163
|
-
this._itemNavigation.getItemsCallback = () => this.getSlottedNodes("buttons");
|
|
164
|
-
}
|
|
165
|
-
|
|
166
177
|
normalizeSelection() {
|
|
167
|
-
this.
|
|
178
|
+
this._selectedItem = this.items.filter(item => item.pressed).pop();
|
|
168
179
|
|
|
169
|
-
if (this.
|
|
170
|
-
this.
|
|
171
|
-
|
|
180
|
+
if (this._selectedItem) {
|
|
181
|
+
this.items.forEach(item => {
|
|
182
|
+
item.pressed = false;
|
|
172
183
|
});
|
|
173
|
-
this.
|
|
184
|
+
this._selectedItem.pressed = true;
|
|
174
185
|
}
|
|
175
186
|
}
|
|
176
187
|
|
|
177
|
-
|
|
188
|
+
_selectItem(event) {
|
|
178
189
|
if (event.target.disabled || event.target === this.getDomRef()) {
|
|
179
190
|
return;
|
|
180
191
|
}
|
|
181
192
|
|
|
182
|
-
if (event.target !== this.
|
|
183
|
-
if (this.
|
|
184
|
-
this.
|
|
193
|
+
if (event.target !== this._selectedItem) {
|
|
194
|
+
if (this._selectedItem) {
|
|
195
|
+
this._selectedItem.pressed = false;
|
|
185
196
|
}
|
|
186
|
-
this.
|
|
197
|
+
this._selectedItem = event.target;
|
|
187
198
|
this.fireEvent("selection-change", {
|
|
188
|
-
|
|
199
|
+
selectedItem: this._selectedItem,
|
|
189
200
|
});
|
|
190
201
|
}
|
|
191
202
|
|
|
192
|
-
this.
|
|
193
|
-
this._itemNavigation.
|
|
203
|
+
this._selectedItem.pressed = true;
|
|
204
|
+
this._itemNavigation.setCurrentItem(this._selectedItem);
|
|
194
205
|
|
|
195
206
|
return this;
|
|
196
207
|
}
|
|
197
208
|
|
|
209
|
+
_onclick(event) {
|
|
210
|
+
this._selectItem(event);
|
|
211
|
+
this.selectedItem.focus();
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
_onkeydown(event) {
|
|
215
|
+
if (isEnter(event)) {
|
|
216
|
+
this._selectItem(event);
|
|
217
|
+
} else if (isSpace(event)) {
|
|
218
|
+
event.preventDefault();
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
_onkeyup(event) {
|
|
223
|
+
if (isSpace(event)) {
|
|
224
|
+
this._selectItem(event);
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
|
|
198
228
|
_onfocusin(event) {
|
|
199
229
|
// If the component was previously focused,
|
|
200
230
|
// update the ItemNavigation to sync butons` tabindex values
|
|
201
231
|
if (this.hasPreviouslyFocusedItem) {
|
|
202
|
-
this._itemNavigation.
|
|
232
|
+
this._itemNavigation.setCurrentItem(event.target);
|
|
203
233
|
return;
|
|
204
234
|
}
|
|
205
235
|
|
|
206
236
|
// If the component is focused for the first time
|
|
207
237
|
// focus the selected item if such present
|
|
208
|
-
if (this.
|
|
209
|
-
this.
|
|
210
|
-
this._itemNavigation.
|
|
238
|
+
if (this.selectedItem) {
|
|
239
|
+
this.selectedItem.focus();
|
|
240
|
+
this._itemNavigation.setCurrentItem(this._selectedItem);
|
|
211
241
|
this.hasPreviouslyFocusedItem = true;
|
|
212
242
|
}
|
|
213
243
|
}
|
|
214
244
|
|
|
215
245
|
async _doLayout() {
|
|
216
|
-
const
|
|
217
|
-
if (!
|
|
218
|
-
await this.
|
|
246
|
+
const itemsHaveWidth = this.widths && this.widths.some(item => item.offsetWidth > 2); // 2 are the pixel's added for rounding & IE
|
|
247
|
+
if (!itemsHaveWidth) {
|
|
248
|
+
await this.measureItemsWidth();
|
|
219
249
|
}
|
|
220
250
|
|
|
221
|
-
const parentWidth = this.parentNode.offsetWidth;
|
|
251
|
+
const parentWidth = this.parentNode ? this.parentNode.offsetWidth : 0;
|
|
222
252
|
|
|
223
253
|
if (!this.style.width || this.percentageWidthSet) {
|
|
224
|
-
this.style.width = `${Math.max(...this.widths) * this.
|
|
254
|
+
this.style.width = `${Math.max(...this.widths) * this.items.length}px`;
|
|
225
255
|
this.absoluteWidthSet = true;
|
|
226
256
|
}
|
|
227
257
|
|
|
228
|
-
this.
|
|
229
|
-
|
|
258
|
+
this.items.forEach(item => {
|
|
259
|
+
item.style.width = "100%";
|
|
230
260
|
});
|
|
231
261
|
|
|
232
262
|
if (parentWidth <= this.offsetWidth && this.absoluteWidthSet) {
|
|
@@ -236,18 +266,22 @@ class SegmentedButton extends UI5Element {
|
|
|
236
266
|
}
|
|
237
267
|
|
|
238
268
|
/**
|
|
239
|
-
* Currently selected
|
|
269
|
+
* Currently selected item.
|
|
240
270
|
*
|
|
241
271
|
* @readonly
|
|
242
|
-
* @type { ui5-
|
|
272
|
+
* @type { ui5-segmented-button-item }
|
|
243
273
|
* @public
|
|
244
274
|
*/
|
|
245
|
-
get
|
|
246
|
-
return this.
|
|
275
|
+
get selectedItem() {
|
|
276
|
+
return this._selectedItem;
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
get ariaDescribedBy() {
|
|
280
|
+
return SegmentedButton.i18nBundle.getText(SEGMENTEDBUTTON_ARIA_DESCRIBEDBY);
|
|
247
281
|
}
|
|
248
282
|
|
|
249
283
|
get ariaDescription() {
|
|
250
|
-
return
|
|
284
|
+
return SegmentedButton.i18nBundle.getText(SEGMENTEDBUTTON_ARIA_DESCRIPTION);
|
|
251
285
|
}
|
|
252
286
|
}
|
|
253
287
|
|