@ui5/webcomponents 0.0.0-d849bec2c → 0.0.0-dc3ccac50
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 +552 -1
- 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 +197 -46
- package/dist/AvatarGroup.js +603 -0
- package/dist/Badge.js +44 -22
- package/dist/Breadcrumbs.js +563 -0
- package/dist/BreadcrumbsItem.js +109 -0
- package/dist/BusyIndicator.js +141 -37
- package/dist/Button.js +120 -68
- package/dist/Calendar.js +341 -545
- package/dist/CalendarDate.js +45 -0
- package/dist/CalendarHeader.js +127 -56
- package/dist/CalendarPart.js +111 -0
- package/dist/Card.js +44 -158
- package/dist/CardHeader.js +288 -0
- package/dist/Carousel.js +267 -98
- package/dist/CheckBox.js +146 -58
- 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 +599 -94
- package/dist/ComboBoxFilters.js +8 -1
- package/dist/ComboBoxGroupItem.js +70 -0
- package/dist/ComboBoxItem.js +12 -24
- package/dist/CustomListItem.js +38 -4
- package/dist/DateComponentBase.js +170 -0
- package/dist/DatePicker.js +392 -409
- package/dist/DateRangePicker.js +328 -0
- package/dist/DateTimePicker.js +106 -384
- package/dist/DayPicker.js +508 -430
- package/dist/Dialog.js +496 -44
- package/dist/DurationPicker.js +135 -400
- package/dist/FileUploader.js +208 -26
- package/dist/GroupHeaderListItem.js +24 -14
- package/dist/Icon.js +140 -46
- package/dist/Input.js +613 -162
- package/dist/Interfaces.js +192 -0
- package/dist/Label.js +27 -17
- package/dist/Link.js +123 -29
- package/dist/List.js +425 -94
- package/dist/ListItem.js +88 -19
- package/dist/ListItemBase.js +27 -5
- package/dist/MessageStrip.js +50 -65
- package/dist/MonthPicker.js +180 -182
- package/dist/MultiComboBox.js +569 -156
- package/dist/MultiComboBoxItem.js +8 -2
- package/dist/MultiInput.js +301 -0
- package/dist/Option.js +48 -5
- package/dist/Panel.js +100 -37
- package/dist/Popover.js +252 -139
- package/dist/Popup.js +364 -90
- package/dist/ProgressIndicator.js +235 -0
- package/dist/RadioButton.js +131 -51
- package/dist/RadioButtonGroup.js +53 -29
- package/dist/RangeSlider.js +769 -0
- package/dist/RatingIndicator.js +291 -0
- package/dist/ResponsivePopover.js +67 -53
- package/dist/SegmentedButton.js +109 -73
- package/dist/SegmentedButtonItem.js +109 -0
- package/dist/Select.js +441 -108
- package/dist/Slider.js +320 -0
- package/dist/SliderBase.js +842 -0
- package/dist/StandardListItem.js +44 -13
- package/dist/StepInput.js +681 -0
- package/dist/SuggestionGroupItem.js +64 -0
- package/dist/SuggestionItem.js +37 -31
- package/dist/SuggestionListItem.js +76 -0
- package/dist/Switch.js +59 -42
- package/dist/Tab.js +55 -24
- package/dist/TabContainer.js +142 -62
- package/dist/TabSeparator.js +1 -0
- package/dist/Table.js +475 -22
- package/dist/TableCell.js +11 -9
- package/dist/TableColumn.js +13 -3
- package/dist/TableGroupRow.js +160 -0
- package/dist/TableRow.js +235 -10
- package/dist/TextArea.js +139 -41
- package/dist/TimePicker.js +55 -675
- package/dist/TimePickerBase.js +463 -0
- package/dist/TimeSelection.js +493 -0
- package/dist/Title.js +16 -9
- package/dist/Toast.js +24 -13
- package/dist/ToggleButton.js +21 -8
- package/dist/Token.js +84 -47
- package/dist/Tokenizer.js +242 -60
- package/dist/Tree.js +137 -51
- package/dist/TreeItem.js +44 -9
- package/dist/TreeListItem.js +127 -7
- package/dist/WheelSlider.js +76 -56
- package/dist/YearPicker.js +198 -254
- 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 +247 -53
- 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 -0
- package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -0
- 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 -15
- package/dist/generated/json-imports/i18n-static.js +162 -0
- package/dist/generated/json-imports/i18n.js +113 -87
- package/dist/generated/templates/AvatarGroupTemplate.lit.js +9 -0
- package/dist/generated/templates/AvatarTemplate.lit.js +9 -9
- package/dist/generated/templates/BadgeTemplate.lit.js +5 -6
- 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 -6
- package/dist/generated/templates/ButtonTemplate.lit.js +6 -6
- package/dist/generated/templates/CalendarHeaderTemplate.lit.js +6 -4
- package/dist/generated/templates/CalendarTemplate.lit.js +4 -4
- package/dist/generated/templates/CardHeaderTemplate.lit.js +12 -0
- package/dist/generated/templates/CardTemplate.lit.js +5 -8
- package/dist/generated/templates/CarouselTemplate.lit.js +13 -12
- package/dist/generated/templates/CheckBoxTemplate.lit.js +7 -7
- 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 -5
- package/dist/generated/templates/ComboBoxTemplate.lit.js +8 -6
- package/dist/generated/templates/CustomListItemTemplate.lit.js +13 -13
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +7 -6
- package/dist/generated/templates/DatePickerTemplate.lit.js +6 -6
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +9 -12
- package/dist/generated/templates/DayPickerTemplate.lit.js +13 -11
- package/dist/generated/templates/DialogTemplate.lit.js +9 -9
- package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +10 -0
- package/dist/generated/templates/FileUploaderTemplate.lit.js +7 -7
- package/dist/generated/templates/GroupHeaderListItemTemplate.lit.js +4 -4
- package/dist/generated/templates/IconTemplate.lit.js +6 -6
- package/dist/generated/templates/InputPopoverTemplate.lit.js +24 -23
- package/dist/generated/templates/InputTemplate.lit.js +9 -8
- package/dist/generated/templates/LabelTemplate.lit.js +4 -4
- package/dist/generated/templates/LinkTemplate.lit.js +5 -5
- package/dist/generated/templates/ListItemTemplate.lit.js +13 -13
- package/dist/generated/templates/ListTemplate.lit.js +12 -9
- package/dist/generated/templates/MessageStripTemplate.lit.js +8 -17
- package/dist/generated/templates/MonthPickerTemplate.lit.js +6 -6
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +23 -5
- package/dist/generated/templates/MultiComboBoxTemplate.lit.js +10 -8
- package/dist/generated/templates/MultiInputTemplate.lit.js +16 -0
- package/dist/generated/templates/PanelTemplate.lit.js +9 -6
- package/dist/generated/templates/PopoverTemplate.lit.js +9 -9
- package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +4 -4
- package/dist/generated/templates/PopupTemplate.lit.js +4 -9
- package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +17 -0
- package/dist/generated/templates/RadioButtonTemplate.lit.js +7 -7
- package/dist/generated/templates/RangeSliderTemplate.lit.js +13 -0
- package/dist/generated/templates/RatingIndicatorTemplate.lit.js +14 -0
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +16 -14
- package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +8 -0
- package/dist/generated/templates/SegmentedButtonTemplate.lit.js +4 -9
- package/dist/generated/templates/SelectPopoverTemplate.lit.js +20 -6
- package/dist/generated/templates/SelectTemplate.lit.js +6 -5
- 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 -20
- package/dist/generated/templates/StepInputTemplate.lit.js +8 -0
- package/dist/generated/templates/SuggestionListItemTemplate.lit.js +27 -0
- package/dist/generated/templates/SwitchTemplate.lit.js +8 -6
- package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +6 -6
- package/dist/generated/templates/TabContainerTemplate.lit.js +16 -14
- package/dist/generated/templates/TabInOverflowTemplate.lit.js +6 -13
- package/dist/generated/templates/TabInStripTemplate.lit.js +8 -21
- package/dist/generated/templates/TabSeparatorTemplate.lit.js +4 -4
- package/dist/generated/templates/TabTemplate.lit.js +4 -4
- package/dist/generated/templates/TableCellTemplate.lit.js +4 -4
- package/dist/generated/templates/TableColumnTemplate.lit.js +4 -4
- package/dist/generated/templates/TableGroupRowTemplate.lit.js +7 -0
- package/dist/generated/templates/TableRowTemplate.lit.js +12 -11
- package/dist/generated/templates/TableTemplate.lit.js +13 -8
- package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +8 -8
- package/dist/generated/templates/TextAreaTemplate.lit.js +8 -7
- package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +4 -8
- package/dist/generated/templates/TimePickerTemplate.lit.js +6 -6
- package/dist/generated/templates/TimeSelectionTemplate.lit.js +11 -0
- package/dist/generated/templates/TitleTemplate.lit.js +10 -10
- package/dist/generated/templates/ToastTemplate.lit.js +5 -4
- package/dist/generated/templates/ToggleButtonTemplate.lit.js +6 -6
- package/dist/generated/templates/TokenTemplate.lit.js +7 -5
- package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +12 -0
- package/dist/generated/templates/TokenizerTemplate.lit.js +6 -6
- package/dist/generated/templates/TreeListItemTemplate.lit.js +18 -16
- package/dist/generated/templates/TreeTemplate.lit.js +5 -5
- package/dist/generated/templates/WheelSliderTemplate.lit.js +7 -7
- package/dist/generated/templates/YearPickerTemplate.lit.js +6 -6
- 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 +8 -0
- 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 +8 -0
- 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 +8 -0
- package/dist/generated/themes/ProgressIndicator.css.js +8 -0
- package/dist/generated/themes/RadioButton.css.js +5 -5
- package/dist/generated/themes/RatingIndicator.css.js +8 -0
- 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 +8 -0
- 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 -0
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -0
- 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 +18 -13
- package/dist/popup-utils/PopoverRegistry.js +49 -15
- package/dist/timepicker-utils/TimeSlider.js +15 -13
- package/dist/types/{AvatarBackgroundColor.js → 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 +9 -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 +23 -7
- package/src/Assets-static.js +6 -0
- package/src/Assets.js +7 -0
- package/src/Avatar.hbs +20 -0
- package/src/Avatar.js +392 -0
- package/src/AvatarGroup.hbs +30 -0
- package/src/AvatarGroup.js +603 -0
- package/src/Badge.hbs +14 -0
- package/src/Badge.js +165 -0
- 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 +32 -0
- package/src/BusyIndicator.js +269 -0
- package/src/Button.hbs +45 -0
- package/src/Button.js +463 -0
- package/src/Calendar.hbs +69 -0
- package/src/Calendar.js +489 -0
- package/src/CalendarDate.js +45 -0
- package/src/CalendarHeader.hbs +54 -0
- package/src/CalendarHeader.js +209 -0
- package/src/CalendarPart.js +111 -0
- package/src/Card.hbs +14 -0
- package/src/Card.js +160 -0
- package/src/CardHeader.hbs +35 -0
- package/src/CardHeader.js +288 -0
- package/src/Carousel.hbs +85 -0
- package/src/Carousel.js +681 -0
- package/src/CheckBox.hbs +44 -0
- package/src/CheckBox.js +424 -0
- 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 +49 -0
- package/src/ComboBox.js +1041 -0
- package/src/ComboBoxFilters.js +40 -0
- package/src/ComboBoxGroupItem.js +70 -0
- package/src/ComboBoxItem.js +49 -0
- package/src/ComboBoxPopover.hbs +125 -0
- package/src/CustomListItem.hbs +5 -0
- package/src/CustomListItem.js +99 -0
- package/src/DateComponentBase.js +170 -0
- package/src/DatePicker.hbs +44 -0
- package/src/DatePicker.js +823 -0
- package/src/DatePickerPopover.hbs +63 -0
- package/src/DateRangePicker.js +328 -0
- package/src/DateTimePicker.js +430 -0
- package/src/DateTimePickerPopover.hbs +74 -0
- package/src/DayPicker.hbs +66 -0
- package/src/DayPicker.js +754 -0
- package/src/Dialog.hbs +35 -0
- package/src/Dialog.js +601 -0
- package/src/DurationPicker.js +312 -0
- package/src/FileUploader.hbs +40 -0
- package/src/FileUploader.js +532 -0
- package/src/FileUploaderPopover.hbs +25 -0
- package/src/GroupHeaderListItem.hbs +15 -0
- package/src/GroupHeaderListItem.js +94 -0
- package/src/Icon.hbs +25 -0
- package/src/Icon.js +373 -0
- package/src/Input.hbs +78 -0
- package/src/Input.js +1381 -0
- package/src/InputPopover.hbs +118 -0
- package/src/Interfaces.js +192 -0
- package/src/Label.hbs +13 -0
- package/src/Label.js +152 -0
- package/src/Link.hbs +20 -0
- package/src/Link.js +349 -0
- package/src/List.hbs +89 -0
- package/src/List.js +1056 -0
- package/src/ListItem.hbs +102 -0
- package/src/ListItem.js +371 -0
- package/src/ListItemBase.js +179 -0
- package/src/MessageStrip.hbs +34 -0
- package/src/MessageStrip.js +226 -0
- package/src/MonthPicker.hbs +29 -0
- package/src/MonthPicker.js +299 -0
- package/src/MultiComboBox.hbs +78 -0
- package/src/MultiComboBox.js +1091 -0
- package/src/MultiComboBoxItem.js +43 -0
- package/src/MultiComboBoxPopover.hbs +133 -0
- package/src/MultiInput.hbs +41 -0
- package/src/MultiInput.js +301 -0
- package/src/Option.js +115 -0
- package/src/Panel.hbs +63 -0
- package/src/Panel.js +462 -0
- package/src/Popover.hbs +25 -0
- package/src/Popover.js +786 -0
- package/src/Popup.hbs +34 -0
- package/src/Popup.js +567 -0
- package/src/PopupBlockLayer.hbs +7 -0
- package/src/ProgressIndicator.hbs +35 -0
- package/src/ProgressIndicator.js +235 -0
- package/src/RadioButton.hbs +33 -0
- package/src/RadioButton.js +494 -0
- package/src/RadioButtonGroup.js +205 -0
- package/src/RangeSlider.hbs +70 -0
- package/src/RangeSlider.js +769 -0
- package/src/RatingIndicator.hbs +33 -0
- package/src/RatingIndicator.js +291 -0
- package/src/ResponsivePopover.hbs +39 -0
- package/src/ResponsivePopover.js +206 -0
- package/src/SegmentedButton.hbs +17 -0
- package/src/SegmentedButton.js +290 -0
- package/src/SegmentedButtonItem.hbs +42 -0
- package/src/SegmentedButtonItem.js +109 -0
- package/src/Select.hbs +45 -0
- package/src/Select.js +834 -0
- package/src/SelectPopover.hbs +89 -0
- 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 +44 -0
- package/src/StandardListItem.js +191 -0
- package/src/StepInput.hbs +77 -0
- package/src/StepInput.js +681 -0
- package/src/SuggestionGroupItem.js +64 -0
- package/src/SuggestionItem.js +146 -0
- package/src/SuggestionListItem.hbs +33 -0
- package/src/SuggestionListItem.js +76 -0
- package/src/Switch.hbs +50 -0
- package/src/Switch.js +261 -0
- package/src/Tab.hbs +3 -0
- package/src/Tab.js +334 -0
- package/src/TabContainer.hbs +93 -0
- package/src/TabContainer.js +679 -0
- package/src/TabContainerPopover.hbs +24 -0
- package/src/TabInOverflow.hbs +22 -0
- package/src/TabInStrip.hbs +43 -0
- package/src/TabSeparator.hbs +1 -0
- package/src/TabSeparator.js +44 -0
- package/src/Table.hbs +99 -0
- package/src/Table.js +761 -0
- package/src/TableCell.hbs +7 -0
- package/src/TableCell.js +88 -0
- package/src/TableColumn.hbs +8 -0
- package/src/TableColumn.js +136 -0
- package/src/TableGroupRow.hbs +12 -0
- package/src/TableGroupRow.js +160 -0
- package/src/TableRow.hbs +61 -0
- package/src/TableRow.js +388 -0
- package/src/TextArea.hbs +50 -0
- package/src/TextArea.js +691 -0
- package/src/TextAreaPopover.hbs +28 -0
- package/src/TimePicker.hbs +35 -0
- package/src/TimePicker.js +166 -0
- package/src/TimePickerBase.js +463 -0
- package/src/TimePickerPopover.hbs +34 -0
- package/src/TimeSelection.hbs +60 -0
- package/src/TimeSelection.js +493 -0
- package/src/Title.hbs +47 -0
- package/src/Title.js +132 -0
- package/src/Toast.hbs +13 -0
- package/src/Toast.js +243 -0
- package/src/ToggleButton.hbs +5 -0
- package/src/ToggleButton.js +84 -0
- package/src/Token.hbs +30 -0
- package/src/Token.js +219 -0
- package/src/Tokenizer.hbs +27 -0
- package/src/Tokenizer.js +414 -0
- package/src/TokenizerPopover.hbs +50 -0
- package/src/Tree.hbs +42 -0
- package/src/Tree.js +443 -0
- package/src/TreeItem.js +168 -0
- package/src/TreeListItem.hbs +48 -0
- package/src/TreeListItem.js +332 -0
- package/src/WheelSlider.hbs +48 -0
- package/src/WheelSlider.js +435 -0
- package/src/YearPicker.hbs +27 -0
- package/src/YearPicker.js +324 -0
- package/src/features/ColorPaletteMoreColors.js +42 -0
- package/src/features/InputElementsFormSupport.js +88 -0
- package/src/features/InputSuggestions.js +530 -0
- package/src/i18n/messagebundle.properties +335 -0
- package/src/i18n/messagebundle_ar.properties +224 -0
- package/src/i18n/messagebundle_bg.properties +224 -0
- package/src/i18n/messagebundle_ca.properties +224 -0
- package/src/i18n/messagebundle_cs.properties +224 -0
- package/src/i18n/messagebundle_cy.properties +224 -0
- package/src/i18n/messagebundle_da.properties +224 -0
- package/src/i18n/messagebundle_de.properties +224 -0
- package/src/i18n/messagebundle_el.properties +224 -0
- package/src/i18n/messagebundle_en.properties +224 -0
- package/src/i18n/messagebundle_en_GB.properties +224 -0
- package/src/i18n/messagebundle_en_US_sappsd.properties +224 -0
- package/src/i18n/messagebundle_en_US_saprigi.properties +224 -0
- package/src/i18n/messagebundle_en_US_saptrc.properties +224 -0
- package/src/i18n/messagebundle_es.properties +224 -0
- package/src/i18n/messagebundle_es_MX.properties +224 -0
- package/src/i18n/messagebundle_et.properties +224 -0
- package/src/i18n/messagebundle_fi.properties +224 -0
- package/src/i18n/messagebundle_fr.properties +224 -0
- package/src/i18n/messagebundle_fr_CA.properties +224 -0
- package/src/i18n/messagebundle_hi.properties +224 -0
- package/src/i18n/messagebundle_hr.properties +224 -0
- package/src/i18n/messagebundle_hu.properties +224 -0
- package/src/i18n/messagebundle_id.properties +224 -0
- package/src/i18n/messagebundle_in.properties +172 -0
- package/src/i18n/messagebundle_it.properties +224 -0
- package/src/i18n/messagebundle_iw.properties +224 -0
- package/src/i18n/messagebundle_ja.properties +224 -0
- package/src/i18n/messagebundle_kk.properties +224 -0
- package/src/i18n/messagebundle_ko.properties +224 -0
- package/src/i18n/messagebundle_lt.properties +224 -0
- package/src/i18n/messagebundle_lv.properties +224 -0
- package/src/i18n/messagebundle_ms.properties +224 -0
- package/src/i18n/messagebundle_nl.properties +224 -0
- package/src/i18n/messagebundle_no.properties +224 -0
- package/src/i18n/messagebundle_pl.properties +224 -0
- package/src/i18n/messagebundle_pt.properties +224 -0
- package/src/i18n/messagebundle_pt_PT.properties +224 -0
- package/src/i18n/messagebundle_ro.properties +224 -0
- package/src/i18n/messagebundle_ru.properties +224 -0
- package/src/i18n/messagebundle_sh.properties +224 -0
- package/src/i18n/messagebundle_sk.properties +224 -0
- package/src/i18n/messagebundle_sl.properties +224 -0
- package/src/i18n/messagebundle_sv.properties +224 -0
- package/src/i18n/messagebundle_th.properties +224 -0
- package/src/i18n/messagebundle_tr.properties +224 -0
- package/src/i18n/messagebundle_uk.properties +224 -0
- package/src/i18n/messagebundle_vi.properties +224 -0
- package/src/i18n/messagebundle_zh_CN.properties +224 -0
- package/src/i18n/messagebundle_zh_TW.properties +224 -0
- package/src/popup-utils/OpenedPopupsRegistry.js +50 -0
- package/src/popup-utils/PopoverRegistry.js +145 -0
- package/src/timepicker-utils/TimeSlider.js +103 -0
- package/src/types/AvatarColorScheme.js +104 -0
- package/src/types/AvatarGroupType.js +43 -0
- package/src/types/AvatarShape.js +41 -0
- package/src/types/AvatarSize.js +67 -0
- package/src/types/BreadcrumbsDesign.js +42 -0
- package/src/types/BreadcrumbsSeparatorStyle.js +69 -0
- package/src/types/BusyIndicatorSize.js +47 -0
- package/src/types/ButtonDesign.js +68 -0
- package/src/types/CalendarSelectionMode.js +47 -0
- package/src/types/CarouselArrowsPlacement.js +40 -0
- package/src/types/GrowingMode.js +48 -0
- package/src/types/InputType.js +68 -0
- package/src/types/LinkDesign.js +47 -0
- package/src/types/ListGrowingMode.js +15 -0
- package/src/types/ListItemType.js +47 -0
- package/src/types/ListMode.js +77 -0
- package/src/types/ListSeparators.js +46 -0
- package/src/types/MessageStripDesign.js +54 -0
- package/src/types/PanelAccessibleRole.js +48 -0
- package/src/types/PopoverHorizontalAlign.js +54 -0
- package/src/types/PopoverPlacementType.js +54 -0
- package/src/types/PopoverVerticalAlign.js +54 -0
- package/src/types/Priority.js +55 -0
- package/src/types/SemanticColor.js +61 -0
- package/src/types/SwitchDesign.js +40 -0
- package/src/types/TabContainerTabsPlacement.js +40 -0
- package/src/types/TabLayout.js +40 -0
- 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 +68 -0
- package/src/types/ToastPlacement.js +91 -0
- package/src/types/WrappingType.js +41 -0
- package/dist/Timeline.js +0 -97
- package/dist/TimelineItem.js +0 -161
- package/dist/generated/templates/ComboBoxItemTemplate.lit.js +0 -7
- package/dist/generated/templates/DurationPickerPopoverTemplate.lit.js +0 -10
- package/dist/generated/templates/DurationPickerTemplate.lit.js +0 -8
- package/dist/generated/templates/TimelineItemTemplate.lit.js +0 -12
- package/dist/generated/templates/TimelineTemplate.lit.js +0 -8
- 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 -55
- package/dist/types/AvatarFitType.js +0 -40
- package/dist/webcomponentsjs/package.json +0 -46
package/dist/Popup.js
CHANGED
|
@@ -1,13 +1,19 @@
|
|
|
1
|
+
import { renderFinished } from "@ui5/webcomponents-base/dist/Render.js";
|
|
1
2
|
import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
|
|
2
3
|
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
4
|
+
import { isChrome } from "@ui5/webcomponents-base/dist/Device.js";
|
|
3
5
|
import { getFirstFocusableElement, getLastFocusableElement } from "@ui5/webcomponents-base/dist/util/FocusableElements.js";
|
|
6
|
+
import { hasStyle, createStyle } from "@ui5/webcomponents-base/dist/ManagedStyles.js";
|
|
7
|
+
import { isTabPrevious } from "@ui5/webcomponents-base/dist/Keys.js";
|
|
8
|
+
import { getNextZIndex, getFocusedElement, isFocusedElementWithinNode } from "@ui5/webcomponents-base/dist/util/PopupUtils.js";
|
|
4
9
|
import PopupTemplate from "./generated/templates/PopupTemplate.lit.js";
|
|
5
10
|
import PopupBlockLayer from "./generated/templates/PopupBlockLayerTemplate.lit.js";
|
|
6
|
-
import {
|
|
11
|
+
import { addOpenedPopup, removeOpenedPopup } from "./popup-utils/OpenedPopupsRegistry.js";
|
|
7
12
|
|
|
8
13
|
// Styles
|
|
9
14
|
import styles from "./generated/themes/Popup.css.js";
|
|
10
15
|
import staticAreaStyles from "./generated/themes/PopupStaticAreaStyles.css.js";
|
|
16
|
+
import globalStyles from "./generated/themes/PopupGlobal.css.js";
|
|
11
17
|
|
|
12
18
|
/**
|
|
13
19
|
* @public
|
|
@@ -17,35 +23,14 @@ const metadata = {
|
|
|
17
23
|
slots: /** @lends sap.ui.webcomponents.main.Popup.prototype */ {
|
|
18
24
|
|
|
19
25
|
/**
|
|
20
|
-
* Defines the content of the
|
|
21
|
-
* @type {Node[]}
|
|
22
|
-
* @slot
|
|
23
|
-
* @public
|
|
24
|
-
*/
|
|
25
|
-
"default": {
|
|
26
|
-
type: HTMLElement,
|
|
27
|
-
},
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* Defines the header HTML Element.
|
|
31
|
-
*
|
|
26
|
+
* Defines the content of the Popup.
|
|
32
27
|
* @type {HTMLElement[]}
|
|
33
28
|
* @slot
|
|
34
29
|
* @public
|
|
35
30
|
*/
|
|
36
|
-
|
|
37
|
-
type: HTMLElement,
|
|
38
|
-
},
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* Defines the footer HTML Element.
|
|
42
|
-
*
|
|
43
|
-
* @type {HTMLElement[]}
|
|
44
|
-
* @slot
|
|
45
|
-
* @public
|
|
46
|
-
*/
|
|
47
|
-
footer: {
|
|
31
|
+
"default": {
|
|
48
32
|
type: HTMLElement,
|
|
33
|
+
propertyName: "content",
|
|
49
34
|
},
|
|
50
35
|
},
|
|
51
36
|
properties: /** @lends sap.ui.webcomponents.main.Popup.prototype */ {
|
|
@@ -61,26 +46,40 @@ const metadata = {
|
|
|
61
46
|
},
|
|
62
47
|
|
|
63
48
|
/**
|
|
64
|
-
* Defines the
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
* @type {string}
|
|
69
|
-
* @defaultvalue ""
|
|
49
|
+
* Defines if the focus should be returned to the previously focused element,
|
|
50
|
+
* when the popup closes.
|
|
51
|
+
* @type {boolean}
|
|
52
|
+
* @defaultvalue false
|
|
70
53
|
* @public
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
54
|
+
* @since 1.0.0-rc.8
|
|
55
|
+
*/
|
|
56
|
+
preventFocusRestore: {
|
|
57
|
+
type: Boolean,
|
|
74
58
|
},
|
|
75
59
|
|
|
76
60
|
/**
|
|
77
|
-
* Indicates if the
|
|
61
|
+
* Indicates if the element is open
|
|
78
62
|
* @private
|
|
63
|
+
* @type {boolean}
|
|
64
|
+
* @defaultvalue false
|
|
79
65
|
*/
|
|
80
66
|
opened: {
|
|
81
67
|
type: Boolean,
|
|
82
68
|
},
|
|
83
69
|
|
|
70
|
+
/**
|
|
71
|
+
* Sets the accessible aria name of the component.
|
|
72
|
+
*
|
|
73
|
+
* @type {String}
|
|
74
|
+
* @defaultvalue ""
|
|
75
|
+
* @public
|
|
76
|
+
* @since 1.0.0-rc.15
|
|
77
|
+
*/
|
|
78
|
+
accessibleName: {
|
|
79
|
+
type: String,
|
|
80
|
+
defaultValue: undefined,
|
|
81
|
+
},
|
|
82
|
+
|
|
84
83
|
/**
|
|
85
84
|
* @private
|
|
86
85
|
*/
|
|
@@ -95,72 +94,90 @@ const metadata = {
|
|
|
95
94
|
events: /** @lends sap.ui.webcomponents.main.Popup.prototype */ {
|
|
96
95
|
|
|
97
96
|
/**
|
|
98
|
-
* Fired before the component is opened.
|
|
97
|
+
* Fired before the component is opened. This event can be cancelled, which will prevent the popup from opening. <b>This event does not bubble.</b>
|
|
99
98
|
*
|
|
100
99
|
* @public
|
|
101
100
|
* @event sap.ui.webcomponents.main.Popup#before-open
|
|
101
|
+
* @allowPreventDefault
|
|
102
102
|
*/
|
|
103
|
-
|
|
104
103
|
"before-open": {},
|
|
104
|
+
|
|
105
105
|
/**
|
|
106
|
-
* Fired after the component is opened.
|
|
106
|
+
* Fired after the component is opened. <b>This event does not bubble.</b>
|
|
107
107
|
*
|
|
108
108
|
* @public
|
|
109
109
|
* @event sap.ui.webcomponents.main.Popup#after-open
|
|
110
110
|
*/
|
|
111
|
-
|
|
112
111
|
"after-open": {},
|
|
112
|
+
|
|
113
113
|
/**
|
|
114
|
-
* Fired before the component is closed.
|
|
114
|
+
* Fired before the component is closed. This event can be cancelled, which will prevent the popup from closing. <b>This event does not bubble.</b>
|
|
115
115
|
*
|
|
116
116
|
* @public
|
|
117
117
|
* @event sap.ui.webcomponents.main.Popup#before-close
|
|
118
|
-
* @
|
|
118
|
+
* @allowPreventDefault
|
|
119
|
+
* @param {boolean} escPressed Indicates that <code>ESC</code> key has triggered the event.
|
|
119
120
|
*/
|
|
120
|
-
|
|
121
121
|
"before-close": {
|
|
122
|
-
|
|
122
|
+
detail: {
|
|
123
|
+
escPressed: { type: Boolean },
|
|
124
|
+
},
|
|
123
125
|
},
|
|
124
126
|
|
|
125
127
|
/**
|
|
126
|
-
* Fired after the component is closed.
|
|
128
|
+
* Fired after the component is closed. <b>This event does not bubble.</b>
|
|
127
129
|
*
|
|
128
130
|
* @public
|
|
129
131
|
* @event sap.ui.webcomponents.main.Popup#after-close
|
|
130
132
|
*/
|
|
131
133
|
"after-close": {},
|
|
134
|
+
|
|
135
|
+
/**
|
|
136
|
+
* Fired whenever the popup content area is scrolled
|
|
137
|
+
*
|
|
138
|
+
* @private
|
|
139
|
+
* @event sap.ui.webcomponents.main.Popup#scroll
|
|
140
|
+
*/
|
|
141
|
+
"scroll": {},
|
|
132
142
|
},
|
|
133
143
|
};
|
|
134
144
|
|
|
135
|
-
let customBlockingStyleInserted = false;
|
|
136
|
-
|
|
137
145
|
const createBlockingStyle = () => {
|
|
138
|
-
if (
|
|
139
|
-
|
|
146
|
+
if (!hasStyle("data-ui5-popup-scroll-blocker")) {
|
|
147
|
+
createStyle(globalStyles, "data-ui5-popup-scroll-blocker");
|
|
140
148
|
}
|
|
141
|
-
|
|
142
|
-
const styleTag = document.createElement("style");
|
|
143
|
-
|
|
144
|
-
styleTag.innerHTML = `
|
|
145
|
-
.ui5-dialog-scroll-blocker {
|
|
146
|
-
width: 100%;
|
|
147
|
-
height: 100%;
|
|
148
|
-
position: fixed;
|
|
149
|
-
overflow: hidden;
|
|
150
|
-
}
|
|
151
|
-
`;
|
|
152
|
-
|
|
153
|
-
customBlockingStyleInserted = true;
|
|
154
|
-
|
|
155
|
-
document.head.appendChild(styleTag);
|
|
156
149
|
};
|
|
157
150
|
|
|
158
151
|
createBlockingStyle();
|
|
159
152
|
|
|
153
|
+
const bodyScrollingBlockers = new Set();
|
|
154
|
+
|
|
160
155
|
/**
|
|
161
156
|
* @class
|
|
162
157
|
* <h3 class="comment-api-title">Overview</h3>
|
|
163
|
-
*
|
|
158
|
+
* Base class for all popup Web Components.
|
|
159
|
+
*
|
|
160
|
+
* If you need to create your own popup-like custom UI5 Web Components, it is highly recommended that you extend
|
|
161
|
+
* at least Popup in order to have consistency with other popups in terms of modal behavior and z-index management.
|
|
162
|
+
*
|
|
163
|
+
* 1. The Popup class handles modality:
|
|
164
|
+
* - The "isModal" getter can be overridden by derivatives to provide their own conditions when they are modal or not
|
|
165
|
+
* - Derivatives may call the "blockBodyScrolling" and "unblockBodyScrolling" static methods to temporarily remove scrollbars on the body
|
|
166
|
+
* - Derivatives may call the "open" and "close" methods which handle focus, manage the popup registry and for modal popups, manage the blocking layer
|
|
167
|
+
*
|
|
168
|
+
* 2. Provides blocking layer (relevant for modal popups only):
|
|
169
|
+
* - It is in the static area
|
|
170
|
+
* - Controlled by the "open" and "close" methods
|
|
171
|
+
*
|
|
172
|
+
* 3. The Popup class "traps" focus:
|
|
173
|
+
* - Derivatives may call the "applyInitialFocus" method (usually when opening, to transfer focus inside the popup)
|
|
174
|
+
*
|
|
175
|
+
* 4. The Popup class automatically assigns "z-index"
|
|
176
|
+
* - Each time a popup is opened, it gets a higher than the previously opened popup z-index
|
|
177
|
+
*
|
|
178
|
+
* 5. The template of this component exposes two inline partials you can override in derivatives:
|
|
179
|
+
* - beforeContent (upper part of the box, useful for header/title/close button)
|
|
180
|
+
* - afterContent (lower part, useful for footer/action buttons)
|
|
164
181
|
*
|
|
165
182
|
* @constructor
|
|
166
183
|
* @author SAP SE
|
|
@@ -193,101 +210,358 @@ class Popup extends UI5Element {
|
|
|
193
210
|
return staticAreaStyles;
|
|
194
211
|
}
|
|
195
212
|
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
213
|
+
onEnterDOM() {
|
|
214
|
+
if (!this.isOpen()) {
|
|
215
|
+
this._blockLayerHidden = true;
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
onExitDOM() {
|
|
220
|
+
if (this.isOpen()) {
|
|
221
|
+
Popup.unblockBodyScrolling(this);
|
|
222
|
+
this._removeOpenedPopup();
|
|
223
|
+
}
|
|
199
224
|
}
|
|
200
225
|
|
|
201
|
-
|
|
202
|
-
|
|
226
|
+
get _displayProp() {
|
|
227
|
+
return "block";
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
/**
|
|
231
|
+
* Prevents the user from interacting with the content under the block layer
|
|
232
|
+
*/
|
|
233
|
+
_preventBlockLayerFocus(event) {
|
|
234
|
+
event.preventDefault();
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
/**
|
|
238
|
+
* Temporarily removes scrollbars from the body
|
|
239
|
+
* @protected
|
|
240
|
+
*/
|
|
241
|
+
static blockBodyScrolling(popup) {
|
|
242
|
+
bodyScrollingBlockers.add(popup);
|
|
243
|
+
|
|
244
|
+
if (bodyScrollingBlockers.size !== 1) {
|
|
245
|
+
return;
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
if (window.pageYOffset > 0) {
|
|
249
|
+
document.body.style.top = `-${window.pageYOffset}px`;
|
|
250
|
+
}
|
|
251
|
+
document.body.classList.add("ui5-popup-scroll-blocker");
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
/**
|
|
255
|
+
* Restores scrollbars on the body, if needed
|
|
256
|
+
* @protected
|
|
257
|
+
*/
|
|
258
|
+
static unblockBodyScrolling(popup) {
|
|
259
|
+
bodyScrollingBlockers.delete(popup);
|
|
260
|
+
|
|
261
|
+
if (bodyScrollingBlockers.size !== 0) {
|
|
262
|
+
return;
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
document.body.classList.remove("ui5-popup-scroll-blocker");
|
|
203
266
|
window.scrollTo(0, -parseFloat(document.body.style.top));
|
|
204
267
|
document.body.style.top = "";
|
|
205
268
|
}
|
|
206
269
|
|
|
207
|
-
|
|
208
|
-
|
|
270
|
+
_scroll(e) {
|
|
271
|
+
this.fireEvent("scroll", {
|
|
272
|
+
scrollTop: e.target.scrollTop,
|
|
273
|
+
targetRef: e.target,
|
|
274
|
+
});
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
_onkeydown(e) {
|
|
278
|
+
if (e.target === this._root && isTabPrevious(e)) {
|
|
279
|
+
e.preventDefault();
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
_onfocusout(e) {
|
|
284
|
+
// relatedTarget is the element, which will get focus. If no such element exists, focus the root.
|
|
285
|
+
// This happens after the mouse is released in order to not interrupt text selection.
|
|
286
|
+
if (!e.relatedTarget) {
|
|
287
|
+
this._shouldFocusRoot = true;
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
_onmousedown(e) {
|
|
292
|
+
this._root.removeAttribute("tabindex");
|
|
293
|
+
|
|
294
|
+
if (this.shadowRoot.contains(e.target)) {
|
|
295
|
+
this._shouldFocusRoot = true;
|
|
296
|
+
} else {
|
|
297
|
+
this._shouldFocusRoot = false;
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
_onmouseup() {
|
|
302
|
+
this._root.tabIndex = -1;
|
|
303
|
+
if (this._shouldFocusRoot) {
|
|
304
|
+
if (isChrome()) {
|
|
305
|
+
this._root.focus();
|
|
306
|
+
}
|
|
307
|
+
this._shouldFocusRoot = false;
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
/**
|
|
312
|
+
* Focus trapping
|
|
313
|
+
* @private
|
|
314
|
+
*/
|
|
315
|
+
async forwardToFirst() {
|
|
316
|
+
const firstFocusable = await getFirstFocusableElement(this);
|
|
209
317
|
|
|
210
318
|
if (firstFocusable) {
|
|
211
319
|
firstFocusable.focus();
|
|
320
|
+
} else {
|
|
321
|
+
this._root.focus();
|
|
212
322
|
}
|
|
213
323
|
}
|
|
214
324
|
|
|
215
|
-
|
|
216
|
-
|
|
325
|
+
/**
|
|
326
|
+
* Focus trapping
|
|
327
|
+
* @private
|
|
328
|
+
*/
|
|
329
|
+
async forwardToLast() {
|
|
330
|
+
const lastFocusable = await getLastFocusableElement(this);
|
|
217
331
|
|
|
218
332
|
if (lastFocusable) {
|
|
219
333
|
lastFocusable.focus();
|
|
334
|
+
} else {
|
|
335
|
+
this._root.focus();
|
|
220
336
|
}
|
|
221
337
|
}
|
|
222
338
|
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
339
|
+
/**
|
|
340
|
+
* Use this method to focus the element denoted by "initialFocus", if provided, or the first focusable element otherwise.
|
|
341
|
+
* @protected
|
|
342
|
+
*/
|
|
343
|
+
async applyInitialFocus() {
|
|
344
|
+
await this.applyFocus();
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
/**
|
|
348
|
+
* Focuses the element denoted by <code>initialFocus</code>, if provided,
|
|
349
|
+
* or the first focusable element otherwise.
|
|
350
|
+
* @public
|
|
351
|
+
* @async
|
|
352
|
+
* @returns {Promise} Promise that resolves when the focus is applied
|
|
353
|
+
*/
|
|
354
|
+
async applyFocus() {
|
|
355
|
+
await this._waitForDomRef();
|
|
227
356
|
|
|
228
357
|
const element = this.getRootNode().getElementById(this.initialFocus)
|
|
229
358
|
|| document.getElementById(this.initialFocus)
|
|
230
|
-
|| getFirstFocusableElement(this)
|
|
359
|
+
|| await getFirstFocusableElement(this)
|
|
360
|
+
|| this._root; // in case of no focusable content focus the root
|
|
231
361
|
|
|
232
362
|
if (element) {
|
|
363
|
+
if (element === this._root) {
|
|
364
|
+
element.tabIndex = -1;
|
|
365
|
+
}
|
|
233
366
|
element.focus();
|
|
234
367
|
}
|
|
235
368
|
}
|
|
236
369
|
|
|
370
|
+
/**
|
|
371
|
+
* Tells if the component is opened
|
|
372
|
+
* @public
|
|
373
|
+
* @returns {boolean}
|
|
374
|
+
*/
|
|
237
375
|
isOpen() {
|
|
238
376
|
return this.opened;
|
|
239
377
|
}
|
|
240
378
|
|
|
241
|
-
|
|
242
|
-
|
|
379
|
+
isFocusWithin() {
|
|
380
|
+
return isFocusedElementWithinNode(this.shadowRoot.querySelector(".ui5-popup-root"));
|
|
381
|
+
}
|
|
382
|
+
|
|
383
|
+
/**
|
|
384
|
+
* Shows the block layer (for modal popups only) and sets the correct z-index for the purpose of popup stacking
|
|
385
|
+
* @protected
|
|
386
|
+
*/
|
|
387
|
+
async _open(preventInitialFocus) {
|
|
388
|
+
const prevented = !this.fireEvent("before-open", {}, true, false);
|
|
389
|
+
if (prevented) {
|
|
390
|
+
return;
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
if (this.isModal && !this.shouldHideBackdrop) {
|
|
243
394
|
// create static area item ref for block layer
|
|
244
395
|
this.getStaticAreaItemDomRef();
|
|
396
|
+
this._blockLayerHidden = false;
|
|
397
|
+
Popup.blockBodyScrolling(this);
|
|
245
398
|
}
|
|
246
399
|
|
|
247
400
|
this._zIndex = getNextZIndex();
|
|
248
401
|
this.style.zIndex = this._zIndex;
|
|
402
|
+
this._focusedElementBeforeOpen = getFocusedElement();
|
|
403
|
+
|
|
404
|
+
this._show();
|
|
405
|
+
|
|
406
|
+
if (!this._disableInitialFocus && !preventInitialFocus) {
|
|
407
|
+
this.applyInitialFocus();
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
this._addOpenedPopup();
|
|
411
|
+
|
|
412
|
+
this.opened = true;
|
|
249
413
|
|
|
250
|
-
|
|
414
|
+
await renderFinished();
|
|
415
|
+
this.fireEvent("after-open", {}, false, false);
|
|
251
416
|
}
|
|
252
417
|
|
|
253
|
-
|
|
418
|
+
/**
|
|
419
|
+
* Adds the popup to the "opened popups registry"
|
|
420
|
+
* @protected
|
|
421
|
+
*/
|
|
422
|
+
_addOpenedPopup() {
|
|
423
|
+
addOpenedPopup(this);
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
/**
|
|
427
|
+
* Hides the block layer (for modal popups only)
|
|
428
|
+
* @public
|
|
429
|
+
*/
|
|
430
|
+
close(escPressed = false, preventRegistryUpdate = false, preventFocusRestore = false) {
|
|
431
|
+
if (!this.opened) {
|
|
432
|
+
return;
|
|
433
|
+
}
|
|
434
|
+
|
|
435
|
+
const prevented = !this.fireEvent("before-close", { escPressed }, true, false);
|
|
436
|
+
if (prevented) {
|
|
437
|
+
return;
|
|
438
|
+
}
|
|
439
|
+
|
|
254
440
|
if (this.isModal) {
|
|
255
441
|
this._blockLayerHidden = true;
|
|
442
|
+
Popup.unblockBodyScrolling(this);
|
|
443
|
+
}
|
|
444
|
+
|
|
445
|
+
this.hide();
|
|
446
|
+
this.opened = false;
|
|
447
|
+
|
|
448
|
+
if (!preventRegistryUpdate) {
|
|
449
|
+
this._removeOpenedPopup();
|
|
450
|
+
}
|
|
451
|
+
|
|
452
|
+
if (!this.preventFocusRestore && !preventFocusRestore) {
|
|
453
|
+
this.resetFocus();
|
|
256
454
|
}
|
|
455
|
+
|
|
456
|
+
this.fireEvent("after-close", {}, false, false);
|
|
257
457
|
}
|
|
258
458
|
|
|
259
459
|
/**
|
|
260
|
-
*
|
|
261
|
-
*
|
|
460
|
+
* Removes the popup from the "opened popups registry"
|
|
461
|
+
* @protected
|
|
462
|
+
*/
|
|
463
|
+
_removeOpenedPopup() {
|
|
464
|
+
removeOpenedPopup(this);
|
|
465
|
+
}
|
|
466
|
+
|
|
467
|
+
/**
|
|
468
|
+
* Returns the focus to the previously focused element
|
|
262
469
|
* @protected
|
|
263
470
|
*/
|
|
264
|
-
|
|
265
|
-
this.
|
|
471
|
+
resetFocus() {
|
|
472
|
+
if (!this._focusedElementBeforeOpen) {
|
|
473
|
+
return;
|
|
474
|
+
}
|
|
475
|
+
|
|
476
|
+
this._focusedElementBeforeOpen.focus();
|
|
477
|
+
this._focusedElementBeforeOpen = null;
|
|
266
478
|
}
|
|
267
479
|
|
|
480
|
+
/**
|
|
481
|
+
* Sets "block" display to the popup. The property can be overriden by derivatives of Popup.
|
|
482
|
+
* @protected
|
|
483
|
+
*/
|
|
484
|
+
_show() {
|
|
485
|
+
this.style.display = this._displayProp;
|
|
486
|
+
}
|
|
268
487
|
|
|
269
488
|
/**
|
|
270
489
|
* Sets "none" display to the popup
|
|
271
|
-
*
|
|
272
490
|
* @protected
|
|
273
491
|
*/
|
|
274
492
|
hide() {
|
|
275
493
|
this.style.display = "none";
|
|
276
494
|
}
|
|
277
495
|
|
|
278
|
-
|
|
279
|
-
|
|
496
|
+
/**
|
|
497
|
+
* Implement this getter with relevant logic regarding the modality of the popup (e.g. based on a public property)
|
|
498
|
+
*
|
|
499
|
+
* @protected
|
|
500
|
+
* @abstract
|
|
501
|
+
* @returns {boolean}
|
|
502
|
+
*/
|
|
503
|
+
get isModal() {} // eslint-disable-line
|
|
504
|
+
|
|
505
|
+
/**
|
|
506
|
+
* Implement this getter with relevant logic in order to hide the block layer (f.e. based on a public property)
|
|
507
|
+
*
|
|
508
|
+
* @protected
|
|
509
|
+
* @abstract
|
|
510
|
+
* @returns {boolean}
|
|
511
|
+
*/
|
|
512
|
+
get shouldHideBackdrop() {} // eslint-disable-line
|
|
513
|
+
|
|
514
|
+
/**
|
|
515
|
+
* Return the ID of an element in the shadow DOM that is going to label this popup
|
|
516
|
+
*
|
|
517
|
+
* @protected
|
|
518
|
+
* @abstract
|
|
519
|
+
* @returns {String}
|
|
520
|
+
*/
|
|
521
|
+
get _ariaLabelledBy() {} // eslint-disable-line
|
|
522
|
+
|
|
523
|
+
/**
|
|
524
|
+
* Return the value for aria-modal for this popup
|
|
525
|
+
*
|
|
526
|
+
* @protected
|
|
527
|
+
* @abstract
|
|
528
|
+
* @returns {String}
|
|
529
|
+
*/
|
|
530
|
+
get _ariaModal() {} // eslint-disable-line
|
|
531
|
+
|
|
532
|
+
/**
|
|
533
|
+
* Ensures ariaLabel is never null or empty string
|
|
534
|
+
* @returns {String|undefined}
|
|
535
|
+
* @protected
|
|
536
|
+
*/
|
|
537
|
+
get _ariaLabel() {
|
|
538
|
+
return this.accessibleName || undefined;
|
|
539
|
+
}
|
|
540
|
+
|
|
541
|
+
get _root() {
|
|
542
|
+
return this.shadowRoot.querySelector(".ui5-popup-root");
|
|
280
543
|
}
|
|
281
544
|
|
|
282
545
|
get styles() {
|
|
283
546
|
return {
|
|
284
|
-
content: {},
|
|
285
547
|
root: {},
|
|
548
|
+
content: {},
|
|
286
549
|
blockLayer: {
|
|
287
550
|
"zIndex": (this._zIndex - 1),
|
|
288
551
|
},
|
|
289
552
|
};
|
|
290
553
|
}
|
|
554
|
+
|
|
555
|
+
get classes() {
|
|
556
|
+
return {
|
|
557
|
+
root: {
|
|
558
|
+
"ui5-popup-root": true,
|
|
559
|
+
},
|
|
560
|
+
content: {
|
|
561
|
+
"ui5-popup-content": true,
|
|
562
|
+
},
|
|
563
|
+
};
|
|
564
|
+
}
|
|
291
565
|
}
|
|
292
566
|
|
|
293
567
|
export default Popup;
|