@sapudex/web-components 0.114.2 → 0.127.6
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/bundle.esm.js +6 -0
- package/config/wdio.conf.js +19 -8
- package/dist/AccordionItem.d.ts +2 -1
- package/dist/AccordionItem.js +3 -3
- package/dist/AccordionItem.js.map +1 -1
- package/dist/Avatar.d.ts +20 -1
- package/dist/Avatar.js +26 -2
- package/dist/Avatar.js.map +1 -1
- package/dist/AvatarGroup.d.ts +28 -0
- package/dist/AvatarGroup.js +126 -0
- package/dist/AvatarGroup.js.map +1 -0
- package/dist/CountrySelector.d.ts +1 -0
- package/dist/CountrySelector.js +3 -0
- package/dist/CountrySelector.js.map +1 -1
- package/dist/Dropdown.d.ts +11 -1
- package/dist/Dropdown.js +15 -3
- package/dist/Dropdown.js.map +1 -1
- package/dist/FilterMenu.d.ts +21 -5
- package/dist/FilterMenu.js +50 -8
- package/dist/FilterMenu.js.map +1 -1
- package/dist/Footer.d.ts +27 -0
- package/dist/Footer.js +27 -36
- package/dist/Footer.js.map +1 -1
- package/dist/HeroBanner.js +3 -0
- package/dist/HeroBanner.js.map +1 -1
- package/dist/InputGroup.js.map +1 -1
- package/dist/List.d.ts +7 -0
- package/dist/List.js +78 -18
- package/dist/List.js.map +1 -1
- package/dist/ListItem.d.ts +0 -1
- package/dist/ListItem.js +0 -6
- package/dist/ListItem.js.map +1 -1
- package/dist/ListItemBase.d.ts +3 -0
- package/dist/ListItemBase.js +12 -0
- package/dist/ListItemBase.js.map +1 -1
- package/dist/MastheadItem.d.ts +1 -0
- package/dist/MastheadItem.js +5 -11
- package/dist/MastheadItem.js.map +1 -1
- package/dist/MastheadShell.d.ts +8 -0
- package/dist/MastheadShell.js +10 -0
- package/dist/MastheadShell.js.map +1 -1
- package/dist/MessageStrip.js +1 -1
- package/dist/MessageStrip.js.map +1 -1
- package/dist/Pagination.d.ts +3 -0
- package/dist/Pagination.js +16 -4
- package/dist/Pagination.js.map +1 -1
- package/dist/PasswordField.d.ts +14 -4
- package/dist/PasswordField.js +24 -15
- package/dist/PasswordField.js.map +1 -1
- package/dist/PhoneNumberField.d.ts +6 -0
- package/dist/PhoneNumberField.js +6 -1
- package/dist/PhoneNumberField.js.map +1 -1
- package/dist/RatingBar.d.ts +53 -0
- package/dist/RatingBar.js +96 -0
- package/dist/RatingBar.js.map +1 -0
- package/dist/Review.d.ts +71 -0
- package/dist/Review.js +108 -0
- package/dist/Review.js.map +1 -0
- package/dist/Search.d.ts +51 -0
- package/dist/Search.js +65 -11
- package/dist/Search.js.map +1 -1
- package/dist/SearchableListBase.d.ts +1 -1
- package/dist/SearchableListBase.js +1 -1
- package/dist/SearchableListBase.js.map +1 -1
- package/dist/SecondaryNavigation.d.ts +35 -47
- package/dist/SecondaryNavigation.js +158 -167
- package/dist/SecondaryNavigation.js.map +1 -1
- package/dist/SecondaryNavigationItem.d.ts +101 -0
- package/dist/SecondaryNavigationItem.js +297 -0
- package/dist/SecondaryNavigationItem.js.map +1 -0
- package/dist/SecondaryNavigationItemBase.d.ts +82 -0
- package/dist/SecondaryNavigationItemBase.js +104 -0
- package/dist/SecondaryNavigationItemBase.js.map +1 -0
- package/dist/SecondaryNavigationSubItem.d.ts +53 -0
- package/dist/SecondaryNavigationSubItem.js +105 -0
- package/dist/SecondaryNavigationSubItem.js.map +1 -0
- package/dist/SelectBox.d.ts +1 -0
- package/dist/SelectBox.js +15 -1
- package/dist/SelectBox.js.map +1 -1
- package/dist/StatusBadge.d.ts +67 -0
- package/dist/StatusBadge.js +104 -0
- package/dist/StatusBadge.js.map +1 -0
- package/dist/Switch.d.ts +1 -0
- package/dist/Switch.js +3 -0
- package/dist/Switch.js.map +1 -1
- package/dist/Tab.d.ts +8 -0
- package/dist/Tab.js +4 -1
- package/dist/Tab.js.map +1 -1
- package/dist/TabNavigation.d.ts +20 -20
- package/dist/TabNavigation.js +82 -101
- package/dist/TabNavigation.js.map +1 -1
- package/dist/Tag.d.ts +13 -6
- package/dist/Tag.js +34 -20
- package/dist/Tag.js.map +1 -1
- package/dist/TextArea.d.ts +1 -1
- package/dist/TextArea.js +3 -0
- package/dist/TextArea.js.map +1 -1
- package/dist/TextField.d.ts +9 -0
- package/dist/TextField.js +16 -0
- package/dist/TextField.js.map +1 -1
- package/dist/Tooltip.d.ts +2 -2
- package/dist/Tooltip.js +3 -3
- package/dist/Tooltip.js.map +1 -1
- package/dist/assets/bundle.esm-7d53f4f2.js +314 -0
- package/dist/assets/messagebundle_en-6dcc9ab4.js +1 -0
- package/dist/assets/parameters-bundle.css-de55cf62.js +2 -0
- package/dist/css/themes/AccordionItem.css +1 -1
- package/dist/css/themes/Avatar.css +1 -1
- package/dist/css/themes/Badge.css +1 -1
- package/dist/css/themes/Checkbox.css +1 -1
- package/dist/css/themes/CountrySelector.css +1 -1
- package/dist/css/themes/Divider.css +1 -1
- package/dist/css/themes/Dropdown.css +1 -1
- package/dist/css/themes/FilterMenu.css +1 -1
- package/dist/css/themes/Footer.css +1 -1
- package/dist/css/themes/HeroBanner.css +1 -1
- package/dist/css/themes/MastheadShell.css +1 -1
- package/dist/css/themes/MediaPlayer.css +1 -1
- package/dist/css/themes/Modal.css +1 -1
- package/dist/css/themes/Pagination.css +1 -1
- package/dist/css/themes/PhoneNumberField.css +1 -1
- package/dist/css/themes/RatingBar.css +1 -0
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/Review.css +1 -0
- package/dist/css/themes/Search.css +1 -1
- package/dist/css/themes/SecondaryNavigation.css +1 -1
- package/dist/css/themes/SecondaryNavigationItem.css +1 -0
- package/dist/css/themes/SecondaryNavigationSubItem.css +1 -0
- package/dist/css/themes/SelectBox.css +1 -1
- package/dist/css/themes/Slider.css +1 -1
- package/dist/css/themes/StatusBadge.css +1 -0
- package/dist/css/themes/StepInput.css +1 -1
- package/dist/css/themes/TabNavigation.css +1 -1
- package/dist/css/themes/Tag.css +1 -1
- package/dist/css/themes/TextField.css +1 -1
- package/dist/css/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css +1 -1
- package/dist/custom-elements-internal.json +1291 -119
- package/dist/custom-elements.json +1298 -199
- package/dist/data/CountryListISO3166.js +162 -162
- package/dist/data/CountryListISO3166.js.map +1 -1
- package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
- package/dist/generated/assets/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.json +1 -1
- package/dist/generated/i18n/i18n-defaults.d.ts +16 -1
- package/dist/generated/i18n/i18n-defaults.js +20 -5
- package/dist/generated/i18n/i18n-defaults.js.map +1 -1
- package/dist/generated/templates/AccordionItemTemplate.lit.js +1 -1
- package/dist/generated/templates/AccordionItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CountrySelectorTemplate.lit.js +1 -1
- package/dist/generated/templates/CountrySelectorTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DatePickerTemplate.lit.js +1 -1
- package/dist/generated/templates/DatePickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DropdownTemplate.lit.js +2 -2
- package/dist/generated/templates/DropdownTemplate.lit.js.map +1 -1
- package/dist/generated/templates/FilterMenuTemplate.lit.js +3 -3
- package/dist/generated/templates/FilterMenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/FooterTemplate.lit.js +26 -28
- package/dist/generated/templates/FooterTemplate.lit.js.map +1 -1
- package/dist/generated/templates/HeroBannerTemplate.lit.js +9 -8
- package/dist/generated/templates/HeroBannerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListGroupHeaderTemplate.lit.js +4 -4
- package/dist/generated/templates/ListGroupHeaderTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListItemTemplate.lit.js +1 -1
- package/dist/generated/templates/ListItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListSelectAllTemplate.lit.js +1 -1
- package/dist/generated/templates/ListSelectAllTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MastheadItemTemplate.lit.js +3 -3
- package/dist/generated/templates/MastheadItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MastheadShellTemplate.lit.js +2 -2
- package/dist/generated/templates/MastheadShellTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PaginationTemplate.lit.js +1 -1
- package/dist/generated/templates/PaginationTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PasswordFieldTemplate.lit.js +1 -2
- package/dist/generated/templates/PasswordFieldTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PhoneNumberFieldTemplate.lit.js +3 -3
- package/dist/generated/templates/PhoneNumberFieldTemplate.lit.js.map +1 -1
- package/dist/generated/templates/RatingBarTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/RatingBarTemplate.lit.js +6 -0
- package/dist/generated/templates/RatingBarTemplate.lit.js.map +1 -0
- package/dist/generated/templates/ReviewTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/ReviewTemplate.lit.js +10 -0
- package/dist/generated/templates/ReviewTemplate.lit.js.map +1 -0
- package/dist/generated/templates/SearchSuggestionsTemplate.lit.js +1 -1
- package/dist/generated/templates/SearchSuggestionsTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SearchTemplate.lit.js +7 -7
- package/dist/generated/templates/SearchTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SearchableListBaseTemplate.lit.js +2 -2
- package/dist/generated/templates/SearchableListBaseTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js +11 -0
- package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js.map +1 -0
- package/dist/generated/templates/SecondaryNavigationSubItemTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/SecondaryNavigationSubItemTemplate.lit.js +10 -0
- package/dist/generated/templates/SecondaryNavigationSubItemTemplate.lit.js.map +1 -0
- package/dist/generated/templates/SecondaryNavigationTemplate.lit.js +7 -10
- package/dist/generated/templates/SecondaryNavigationTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SelectBoxTemplate.lit.js +2 -2
- package/dist/generated/templates/SelectBoxTemplate.lit.js.map +1 -1
- package/dist/generated/templates/StatusBadgeTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/StatusBadgeTemplate.lit.js +5 -0
- package/dist/generated/templates/StatusBadgeTemplate.lit.js.map +1 -0
- package/dist/generated/templates/SwitchTemplate.lit.js +2 -2
- package/dist/generated/templates/SwitchTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabInOverflowTemplate.lit.js +2 -2
- package/dist/generated/templates/TabInOverflowTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabNavigationPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/TabNavigationPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabNavigationTemplate.lit.js +2 -2
- package/dist/generated/templates/TabNavigationTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TagTemplate.lit.js +9 -3
- package/dist/generated/templates/TagTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TextAreaTemplate.lit.js +1 -1
- package/dist/generated/templates/TextAreaTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TextFieldTemplate.lit.js +2 -2
- package/dist/generated/templates/TextFieldTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TooltipTemplate.lit.js +1 -1
- package/dist/generated/templates/TooltipTemplate.lit.js.map +1 -1
- package/dist/generated/themes/AccordionItem.css.js +1 -1
- package/dist/generated/themes/AccordionItem.css.js.map +1 -1
- package/dist/generated/themes/Avatar.css.js +1 -1
- package/dist/generated/themes/Avatar.css.js.map +1 -1
- package/dist/generated/themes/Badge.css.js +1 -1
- package/dist/generated/themes/Badge.css.js.map +1 -1
- package/dist/generated/themes/Checkbox.css.js +1 -1
- package/dist/generated/themes/Checkbox.css.js.map +1 -1
- package/dist/generated/themes/CountrySelector.css.js +1 -1
- package/dist/generated/themes/CountrySelector.css.js.map +1 -1
- package/dist/generated/themes/Divider.css.js +1 -1
- package/dist/generated/themes/Divider.css.js.map +1 -1
- package/dist/generated/themes/Dropdown.css.js +1 -1
- package/dist/generated/themes/Dropdown.css.js.map +1 -1
- package/dist/generated/themes/FilterMenu.css.js +1 -1
- package/dist/generated/themes/FilterMenu.css.js.map +1 -1
- package/dist/generated/themes/Footer.css.js +1 -1
- package/dist/generated/themes/Footer.css.js.map +1 -1
- package/dist/generated/themes/HeroBanner.css.js +1 -1
- package/dist/generated/themes/HeroBanner.css.js.map +1 -1
- package/dist/generated/themes/MastheadShell.css.js +1 -1
- package/dist/generated/themes/MastheadShell.css.js.map +1 -1
- package/dist/generated/themes/MediaPlayer.css.js +1 -1
- package/dist/generated/themes/MediaPlayer.css.js.map +1 -1
- package/dist/generated/themes/Modal.css.js +1 -1
- package/dist/generated/themes/Modal.css.js.map +1 -1
- package/dist/generated/themes/Pagination.css.js +1 -1
- package/dist/generated/themes/Pagination.css.js.map +1 -1
- package/dist/generated/themes/PhoneNumberField.css.js +1 -1
- package/dist/generated/themes/PhoneNumberField.css.js.map +1 -1
- package/dist/generated/themes/RatingBar.css.js +9 -0
- package/dist/generated/themes/RatingBar.css.js.map +1 -0
- package/dist/generated/themes/RatingIndicator.css.js +1 -1
- package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
- package/dist/generated/themes/Review.css.d.ts +3 -0
- package/dist/generated/themes/Review.css.js +9 -0
- package/dist/generated/themes/Review.css.js.map +1 -0
- package/dist/generated/themes/Search.css.js +1 -1
- package/dist/generated/themes/Search.css.js.map +1 -1
- package/dist/generated/themes/SecondaryNavigation.css.js +1 -1
- package/dist/generated/themes/SecondaryNavigation.css.js.map +1 -1
- package/dist/generated/themes/SecondaryNavigationItem.css.d.ts +3 -0
- package/dist/generated/themes/SecondaryNavigationItem.css.js +9 -0
- package/dist/generated/themes/SecondaryNavigationItem.css.js.map +1 -0
- package/dist/generated/themes/SecondaryNavigationSubItem.css.d.ts +3 -0
- package/dist/generated/themes/SecondaryNavigationSubItem.css.js +9 -0
- package/dist/generated/themes/SecondaryNavigationSubItem.css.js.map +1 -0
- package/dist/generated/themes/SelectBox.css.js +1 -1
- package/dist/generated/themes/SelectBox.css.js.map +1 -1
- package/dist/generated/themes/Slider.css.js +1 -1
- package/dist/generated/themes/Slider.css.js.map +1 -1
- package/dist/generated/themes/StatusBadge.css.d.ts +3 -0
- package/dist/generated/themes/StatusBadge.css.js +9 -0
- package/dist/generated/themes/StatusBadge.css.js.map +1 -0
- package/dist/generated/themes/StepInput.css.js +1 -1
- package/dist/generated/themes/StepInput.css.js.map +1 -1
- package/dist/generated/themes/TabNavigation.css.js +1 -1
- package/dist/generated/themes/TabNavigation.css.js.map +1 -1
- package/dist/generated/themes/Tag.css.js +1 -1
- package/dist/generated/themes/Tag.css.js.map +1 -1
- package/dist/generated/themes/TextField.css.js +1 -1
- package/dist/generated/themes/TextField.css.js.map +1 -1
- package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.js.map +1 -1
- package/dist/i18n/messagebundle.properties +40 -5
- package/dist/i18n/messagebundle_en.properties +20 -5
- package/dist/vscode.html-custom-data.json +239 -16
- package/dist/web-types.json +405 -25
- package/package.json +8 -8
- package/src/AccordionItem.hbs +1 -4
- package/src/AccordionItem.ts +5 -4
- package/src/Avatar.ts +35 -3
- package/src/AvatarGroup.ts +135 -0
- package/src/CountrySelector.hbs +2 -1
- package/src/CountrySelector.ts +4 -1
- package/src/DatePicker.hbs +0 -1
- package/src/Dropdown.hbs +5 -3
- package/src/Dropdown.ts +24 -3
- package/src/FilterMenu.hbs +8 -1
- package/src/FilterMenu.ts +70 -12
- package/src/Footer.hbs +12 -37
- package/src/Footer.ts +64 -51
- package/src/HeroBanner.hbs +28 -21
- package/src/HeroBanner.ts +3 -0
- package/src/InputGroup.ts +6 -5
- package/src/List.ts +92 -21
- package/src/ListGroupHeader.hbs +9 -5
- package/src/ListItem.hbs +2 -1
- package/src/ListItem.ts +0 -7
- package/src/ListItemBase.ts +14 -0
- package/src/ListSelectAll.hbs +1 -0
- package/src/MastheadItem.hbs +3 -3
- package/src/MastheadItem.ts +10 -4
- package/src/MastheadShell.hbs +4 -0
- package/src/MastheadShell.ts +18 -0
- package/src/MessageStrip.ts +1 -1
- package/src/Pagination.hbs +4 -2
- package/src/Pagination.ts +19 -4
- package/src/PasswordField.hbs +6 -17
- package/src/PasswordField.ts +31 -23
- package/src/PhoneNumberField.hbs +8 -3
- package/src/PhoneNumberField.ts +12 -2
- package/src/RatingBar.hbs +11 -0
- package/src/RatingBar.ts +113 -0
- package/src/Review.hbs +44 -0
- package/src/Review.ts +140 -0
- package/src/Search.hbs +20 -14
- package/src/Search.ts +107 -10
- package/src/SearchSuggestions.hbs +2 -1
- package/src/SearchableListBase.hbs +2 -0
- package/src/SearchableListBase.ts +1 -1
- package/src/SecondaryNavigation.hbs +53 -71
- package/src/SecondaryNavigation.ts +192 -198
- package/src/SecondaryNavigationItem.hbs +64 -0
- package/src/SecondaryNavigationItem.ts +368 -0
- package/src/SecondaryNavigationItemBase.ts +153 -0
- package/src/SecondaryNavigationSubItem.hbs +44 -0
- package/src/SecondaryNavigationSubItem.ts +127 -0
- package/src/SelectBox.hbs +76 -76
- package/src/SelectBox.ts +18 -1
- package/src/StatusBadge.hbs +9 -0
- package/src/StatusBadge.ts +129 -0
- package/src/Switch.hbs +3 -3
- package/src/Switch.ts +4 -0
- package/src/Tab.ts +11 -1
- package/src/TabInOverflow.hbs +3 -2
- package/src/TabNavigation.hbs +12 -10
- package/src/TabNavigation.ts +92 -116
- package/src/TabNavigationPopover.hbs +1 -0
- package/src/Tag.hbs +60 -26
- package/src/Tag.ts +54 -34
- package/src/TextArea.hbs +3 -4
- package/src/TextArea.ts +3 -0
- package/src/TextField.hbs +40 -36
- package/src/TextField.ts +24 -0
- package/src/Tooltip.hbs +2 -2
- package/src/Tooltip.ts +4 -4
- package/src/data/CountryListISO3166.ts +162 -162
- package/src/generated/i18n/i18n-defaults.ts +2 -2
- package/src/generated/templates/AccordionItemTemplate.lit.ts +1 -1
- package/src/generated/templates/CountrySelectorTemplate.lit.ts +1 -1
- package/src/generated/templates/DatePickerTemplate.lit.ts +1 -1
- package/src/generated/templates/DropdownTemplate.lit.ts +2 -2
- package/src/generated/templates/FilterMenuTemplate.lit.ts +3 -3
- package/src/generated/templates/FooterTemplate.lit.ts +26 -28
- package/src/generated/templates/HeroBannerTemplate.lit.ts +9 -8
- package/src/generated/templates/ListGroupHeaderTemplate.lit.ts +4 -4
- package/src/generated/templates/ListItemTemplate.lit.ts +1 -1
- package/src/generated/templates/ListSelectAllTemplate.lit.ts +1 -1
- package/src/generated/templates/MastheadItemTemplate.lit.ts +3 -3
- package/src/generated/templates/MastheadShellTemplate.lit.ts +2 -2
- package/src/generated/templates/PaginationTemplate.lit.ts +1 -1
- package/src/generated/templates/PasswordFieldTemplate.lit.ts +1 -2
- package/src/generated/templates/PhoneNumberFieldTemplate.lit.ts +3 -3
- package/src/generated/templates/RatingBarTemplate.lit.ts +11 -0
- package/src/generated/templates/ReviewTemplate.lit.ts +15 -0
- package/src/generated/templates/SearchSuggestionsTemplate.lit.ts +1 -1
- package/src/generated/templates/SearchTemplate.lit.ts +7 -7
- package/src/generated/templates/SearchableListBaseTemplate.lit.ts +2 -2
- package/src/generated/templates/SecondaryNavigationItemTemplate.lit.ts +16 -0
- package/src/generated/templates/SecondaryNavigationSubItemTemplate.lit.ts +15 -0
- package/src/generated/templates/SecondaryNavigationTemplate.lit.ts +7 -10
- package/src/generated/templates/SelectBoxTemplate.lit.ts +2 -2
- package/src/generated/templates/StatusBadgeTemplate.lit.ts +10 -0
- package/src/generated/templates/SwitchTemplate.lit.ts +2 -2
- package/src/generated/templates/TabInOverflowTemplate.lit.ts +2 -2
- package/src/generated/templates/TabNavigationPopoverTemplate.lit.ts +1 -1
- package/src/generated/templates/TabNavigationTemplate.lit.ts +2 -2
- package/src/generated/templates/TagTemplate.lit.ts +9 -3
- package/src/generated/templates/TextAreaTemplate.lit.ts +1 -1
- package/src/generated/templates/TextFieldTemplate.lit.ts +2 -2
- package/src/generated/templates/TooltipTemplate.lit.ts +1 -1
- package/src/generated/themes/AccordionItem.css.ts +1 -1
- package/src/generated/themes/Avatar.css.ts +1 -1
- package/src/generated/themes/Badge.css.ts +1 -1
- package/src/generated/themes/Checkbox.css.ts +1 -1
- package/src/generated/themes/CountrySelector.css.ts +1 -1
- package/src/generated/themes/Divider.css.ts +1 -1
- package/src/generated/themes/Dropdown.css.ts +1 -1
- package/src/generated/themes/FilterMenu.css.ts +1 -1
- package/src/generated/themes/Footer.css.ts +1 -1
- package/src/generated/themes/HeroBanner.css.ts +1 -1
- package/src/generated/themes/MastheadShell.css.ts +1 -1
- package/src/generated/themes/MediaPlayer.css.ts +1 -1
- package/src/generated/themes/Modal.css.ts +1 -1
- package/src/generated/themes/Pagination.css.ts +1 -1
- package/src/generated/themes/PhoneNumberField.css.ts +1 -1
- package/src/generated/themes/RatingBar.css.ts +13 -0
- package/src/generated/themes/RatingIndicator.css.ts +1 -1
- package/src/generated/themes/Review.css.ts +13 -0
- package/src/generated/themes/Search.css.ts +1 -1
- package/src/generated/themes/SecondaryNavigation.css.ts +1 -1
- package/src/generated/themes/SecondaryNavigationItem.css.ts +13 -0
- package/src/generated/themes/SecondaryNavigationSubItem.css.ts +13 -0
- package/src/generated/themes/SelectBox.css.ts +1 -1
- package/src/generated/themes/Slider.css.ts +1 -1
- package/src/generated/themes/StatusBadge.css.ts +13 -0
- package/src/generated/themes/StepInput.css.ts +1 -1
- package/src/generated/themes/TabNavigation.css.ts +1 -1
- package/src/generated/themes/Tag.css.ts +1 -1
- package/src/generated/themes/TextField.css.ts +1 -1
- package/src/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.ts +1 -1
- package/src/i18n/messagebundle.properties +40 -5
- package/src/i18n/messagebundle_en.properties +20 -5
- package/src/themes/AccordionItem.css +6 -4
- package/src/themes/Avatar.css +43 -6
- package/src/themes/Badge.css +1 -1
- package/src/themes/Checkbox.css +12 -0
- package/src/themes/CountrySelector.css +4 -0
- package/src/themes/Divider.css +6 -2
- package/src/themes/Dropdown.css +2 -0
- package/src/themes/FilterMenu.css +10 -0
- package/src/themes/Footer.css +93 -168
- package/src/themes/HeroBanner.css +84 -20
- package/src/themes/MastheadShell.css +25 -29
- package/src/themes/MediaPlayer.css +3 -2
- package/src/themes/Modal.css +6 -0
- package/src/themes/Pagination.css +7 -0
- package/src/themes/PhoneNumberField.css +5 -0
- package/src/themes/RatingBar.css +52 -0
- package/src/themes/Review.css +196 -0
- package/src/themes/Search.css +37 -21
- package/src/themes/SecondaryNavigation.css +64 -293
- package/src/themes/SecondaryNavigationItem.css +221 -0
- package/src/themes/SecondaryNavigationSubItem.css +118 -0
- package/src/themes/SelectBox.css +17 -24
- package/src/themes/StatusBadge.css +135 -0
- package/src/themes/StepInput.css +5 -2
- package/src/themes/TabNavigation.css +7 -1
- package/src/themes/Tag.css +180 -148
- package/src/themes/TextField.css +75 -55
- package/dist/assets/bundle.esm-ab45813e.js +0 -312
- package/dist/assets/messagebundle_en-26cd7a92.js +0 -1
- package/dist/assets/parameters-bundle.css-76ef62fa.js +0 -2
- package/dist/css/themes/PasswordField.css +0 -1
- package/dist/generated/themes/PasswordField.css.js +0 -9
- package/dist/generated/themes/PasswordField.css.js.map +0 -1
- package/src/generated/themes/PasswordField.css.ts +0 -13
- package/src/themes/PasswordField.css +0 -29
- /package/dist/generated/themes/{PasswordField.css.d.ts → RatingBar.css.d.ts} +0 -0
package/dist/Dropdown.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
2
2
|
import Popover from "@ui5/webcomponents/dist/Popover.js";
|
|
3
3
|
import PopupAccessibleRole from "@ui5/webcomponents/dist/types/PopupAccessibleRole.js";
|
|
4
|
+
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
4
5
|
import { PlacementType, HorizontalAlign } from "./types/Dropdown.js";
|
|
5
6
|
/**
|
|
6
7
|
* @class
|
|
@@ -51,10 +52,16 @@ declare class UDExDropdown extends UI5Element {
|
|
|
51
52
|
accessibleName: string;
|
|
52
53
|
/**
|
|
53
54
|
* Allows setting a custom role.
|
|
54
|
-
* @default "
|
|
55
|
+
* @default "None"
|
|
55
56
|
* @public
|
|
56
57
|
*/
|
|
57
58
|
accessibleRole: `${PopupAccessibleRole}`;
|
|
59
|
+
/**
|
|
60
|
+
* Allows setting a custom role for dropdown trigger.
|
|
61
|
+
* @default "combobox"
|
|
62
|
+
* @public
|
|
63
|
+
*/
|
|
64
|
+
triggerAccessibleRole: string;
|
|
58
65
|
/**
|
|
59
66
|
* Defines the content of the Dropdown.
|
|
60
67
|
*
|
|
@@ -103,6 +110,8 @@ declare class UDExDropdown extends UI5Element {
|
|
|
103
110
|
* @private
|
|
104
111
|
*/
|
|
105
112
|
_direction?: string;
|
|
113
|
+
static i18nBundle: I18nBundle;
|
|
114
|
+
static onDefine(): Promise<void>;
|
|
106
115
|
onAfterRendering(): void;
|
|
107
116
|
handleDirection(): void;
|
|
108
117
|
getDropdownPane(): Popover;
|
|
@@ -128,5 +137,6 @@ declare class UDExDropdown extends UI5Element {
|
|
|
128
137
|
get hasHeaderSlot(): boolean;
|
|
129
138
|
get hasFooterSlot(): boolean;
|
|
130
139
|
get disableAllowTargetOverlap(): boolean;
|
|
140
|
+
get triggerAccessibleName(): string;
|
|
131
141
|
}
|
|
132
142
|
export default UDExDropdown;
|
package/dist/Dropdown.js
CHANGED
|
@@ -4,6 +4,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
+
var UDExDropdown_1;
|
|
7
8
|
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
8
9
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
9
10
|
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
@@ -13,8 +14,10 @@ import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
|
13
14
|
import event from "@ui5/webcomponents-base/dist/decorators/event.js";
|
|
14
15
|
import getEffectiveScrollbarStyle from "@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js";
|
|
15
16
|
import PopupAccessibleRole from "@ui5/webcomponents/dist/types/PopupAccessibleRole.js";
|
|
17
|
+
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
16
18
|
import DropdownTemplate from "./generated/templates/DropdownTemplate.lit.js";
|
|
17
19
|
import { PlacementType, HorizontalAlign } from "./types/Dropdown.js";
|
|
20
|
+
import { TRIGGER } from "./generated/i18n/i18n-defaults.js";
|
|
18
21
|
// Styles
|
|
19
22
|
import DropdownCss from "./generated/themes/Dropdown.css";
|
|
20
23
|
/**
|
|
@@ -36,7 +39,10 @@ import DropdownCss from "./generated/themes/Dropdown.css";
|
|
|
36
39
|
* @tagname udex-dropdown
|
|
37
40
|
* @public
|
|
38
41
|
*/
|
|
39
|
-
let UDExDropdown = class UDExDropdown extends UI5Element {
|
|
42
|
+
let UDExDropdown = UDExDropdown_1 = class UDExDropdown extends UI5Element {
|
|
43
|
+
static async onDefine() {
|
|
44
|
+
UDExDropdown_1.i18nBundle = await getI18nBundle("sap-ui-webcomponents-bundle");
|
|
45
|
+
}
|
|
40
46
|
onAfterRendering() {
|
|
41
47
|
this.handleDirection();
|
|
42
48
|
}
|
|
@@ -119,6 +125,9 @@ let UDExDropdown = class UDExDropdown extends UI5Element {
|
|
|
119
125
|
get disableAllowTargetOverlap() {
|
|
120
126
|
return this.disableTargetOverlap?.toString() !== "true";
|
|
121
127
|
}
|
|
128
|
+
get triggerAccessibleName() {
|
|
129
|
+
return UDExDropdown_1.i18nBundle.getText(TRIGGER);
|
|
130
|
+
}
|
|
122
131
|
};
|
|
123
132
|
__decorate([
|
|
124
133
|
property({ type: String })
|
|
@@ -133,8 +142,11 @@ __decorate([
|
|
|
133
142
|
property()
|
|
134
143
|
], UDExDropdown.prototype, "accessibleName", void 0);
|
|
135
144
|
__decorate([
|
|
136
|
-
property({ type: PopupAccessibleRole, defaultValue: PopupAccessibleRole.
|
|
145
|
+
property({ type: PopupAccessibleRole, defaultValue: PopupAccessibleRole.None })
|
|
137
146
|
], UDExDropdown.prototype, "accessibleRole", void 0);
|
|
147
|
+
__decorate([
|
|
148
|
+
property({ type: String, defaultValue: "combobox" })
|
|
149
|
+
], UDExDropdown.prototype, "triggerAccessibleRole", void 0);
|
|
138
150
|
__decorate([
|
|
139
151
|
slot({ type: HTMLElement, "default": true })
|
|
140
152
|
], UDExDropdown.prototype, "content", void 0);
|
|
@@ -156,7 +168,7 @@ __decorate([
|
|
|
156
168
|
__decorate([
|
|
157
169
|
property({ type: String })
|
|
158
170
|
], UDExDropdown.prototype, "_direction", void 0);
|
|
159
|
-
UDExDropdown = __decorate([
|
|
171
|
+
UDExDropdown = UDExDropdown_1 = __decorate([
|
|
160
172
|
customElement({
|
|
161
173
|
tag: "udex-dropdown",
|
|
162
174
|
renderer: litRender,
|
package/dist/Dropdown.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dropdown.js","sourceRoot":"","sources":["../src/Dropdown.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport Popover from \"@ui5/webcomponents/dist/Popover.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport getEffectiveScrollbarStyle from \"@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js\";\nimport PopupAccessibleRole from \"@ui5/webcomponents/dist/types/PopupAccessibleRole.js\";\nimport DropdownTemplate from \"./generated/templates/DropdownTemplate.lit.js\";\nimport { PlacementType, HorizontalAlign } from \"./types/Dropdown.js\";\n\n// Styles\nimport DropdownCss from \"./generated/themes/Dropdown.css\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>udex-dropdown</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import @udex/web-components/dist/Dropdown.js\";</code>\n *\n * @constructor\n * @author SAP SE\n * @extends UI5Element\n * @tagname udex-dropdown\n * @public\n */\n@customElement({\n tag: \"udex-dropdown\",\n renderer: litRender,\n styles: [\n DropdownCss,\n getEffectiveScrollbarStyle(),\n ],\n template: DropdownTemplate,\n dependencies: [Popover],\n})\n\n/**\n * Fired event when the user clicks the trigger.\n *\n * @event sap.ui.webc.web-components.UDExDropdown#clickTrigger\n * @public\n */\n@event(\"click-trigger\")\n\n/**\n * Fired before the dropdown is opened.\n *\n * @event sap.ui.webc.web-components.UDExDropdown#beforeOpen\n * @public\n */\n@event(\"before-open\")\n\n/**\n * Fired after the dropdown is opened.\n *\n * @event sap.ui.webc.web-components.UDExDropdown#afterOpen\n * @public\n */\n@event(\"after-open\")\n\n/**\n * Fired before the menu is closed.\n *\n * @event sap.ui.webc.web-components.UDExDropdown#beforeClose\n * @public\n */\n@event(\"before-close\")\n\n/**\n * Fired after the menu is closed.\n *\n * @event sap.ui.webc.web-components.UDExDropdown#afterClose\n * @public\n */\n@event(\"after-close\")\nclass UDExDropdown extends UI5Element {\n /**\n * Allows control over the height.\n *\n * @public\n */\n @property({ type: String })\n height?: string;\n\n /**\n * Determines on which side the component is placed at.\n *\n * @default \"Bottom\"\n * @public\n */\n @property({ type: PlacementType, defaultValue: PlacementType.Bottom })\n placementType!: `${PlacementType}`;\n\n /**\n * Determines the horizontal alignment of the component.\n *\n * @default \"Left\"\n * @public\n */\n @property({ type: HorizontalAlign, defaultValue: HorizontalAlign.Left })\n horizontalAlign!: `${HorizontalAlign}`;\n\n /**\n * Defines the accessible ARIA name of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n accessibleName!: string;\n\n /**\n * Allows setting a custom role.\n * @default \"Dialog\"\n * @public\n */\n @property({ type: PopupAccessibleRole, defaultValue: PopupAccessibleRole.Dialog })\n accessibleRole!: `${PopupAccessibleRole}`;\n\n /**\n * Defines the content of the Dropdown.\n *\n * @slot content\n * @public\n */\n @slot({ type: HTMLElement, \"default\": true })\n content!: Array<HTMLElement>;\n\n /**\n * Defines the header HTML Element.\n *\n * @slot\n * @public\n */\n @slot({ type: HTMLElement })\n header!: Array<HTMLElement>;\n\n /**\n * Defines the footer HTML Element.\n *\n * @slot\n * @public\n */\n @slot({ type: HTMLElement })\n footer!: Array<HTMLElement>;\n\n /**\n * Defines the trigger HTML Element.\n *\n * @slot\n * @public\n */\n @slot({ type: HTMLElement })\n trigger!: Array<HTMLElement>;\n\n /**\n * Indicates if the dropdown pane is open\n *\n * @public\n * @default false\n */\n @property({ type: Boolean })\n open!: boolean;\n\n /**\n * Determines if there is no enough space, the component can be placed\n * over the target.\n * @default false\n * @public\n */\n @property({ type: Boolean })\n disableTargetOverlap?: boolean;\n\n /**\n * Defines direction of the component.\n *\n * @private\n */\n @property({ type: String })\n _direction?: string;\n\n onAfterRendering() {\n this.handleDirection();\n }\n\n handleDirection() {\n const filterMenu = this.shadowRoot?.querySelector(\".udex-dropdown\");\n if (filterMenu) {\n const directionStyles: string = window\n .getComputedStyle(filterMenu)\n .getPropertyValue(\"direction\");\n if (!directionStyles) {\n this._direction = \"ltr\";\n } else {\n this._direction = directionStyles;\n }\n }\n }\n\n getDropdownPane() {\n return this.shadowRoot!.querySelector<Popover>(\"[ui5-popover]\")!;\n }\n\n getTrigger() {\n return this.querySelector<HTMLElement>(\"[slot=trigger]\")!;\n }\n\n onTriggerClick() {\n const dropdown = this.getDropdownPane();\n const opener = this.getTrigger();\n const isOpenerDisabled = opener.hasAttribute(\"disabled\");\n\n if (!isOpenerDisabled) {\n dropdown.showAt(opener);\n this.fireEvent(\"click-trigger\");\n }\n }\n\n /**\n * Open dropdown\n *\n * @public\n */\n onOpen(opener: HTMLElement): void {\n const dropdown = this.getDropdownPane();\n dropdown.showAt(opener);\n }\n\n /**\n * Close dropdown\n *\n * @public\n */\n onClose():void {\n const dropdown = this.getDropdownPane();\n dropdown.close(true);\n }\n\n afterDropdownClose() {\n this.open = false;\n this.fireEvent(\"after-close\");\n }\n\n afterDropdownOpen() {\n this.open = true;\n this.fireEvent(\"after-open\");\n }\n\n beforeDropdownOpen() {\n const dropdown = this.getDropdownPane();\n const hasContentHeight = !!this?.height?.length;\n\n if (hasContentHeight) {\n const content = dropdown.shadowRoot!.querySelector(\"[part=content]\") as HTMLElement;\n content.style.maxHeight = <string> this.height;\n }\n\n this.fireEvent(\"before-open\");\n }\n\n beforeDropdownClose() {\n this.fireEvent(\"before-close\");\n }\n\n get hasTriggerSlot(): boolean {\n return !!this.trigger.length;\n }\n\n get hasHeaderSlot(): boolean {\n return !!this.header.length;\n }\n\n get hasFooterSlot(): boolean {\n return !!this.footer.length;\n }\n\n get disableAllowTargetOverlap() {\n return this.disableTargetOverlap?.toString() !== \"true\";\n }\n}\n\nUDExDropdown.define();\n\nexport default UDExDropdown;\n"]}
|
|
1
|
+
{"version":3,"file":"Dropdown.js","sourceRoot":"","sources":["../src/Dropdown.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport Popover from \"@ui5/webcomponents/dist/Popover.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport getEffectiveScrollbarStyle from \"@ui5/webcomponents-base/dist/util/getEffectiveScrollbarStyle.js\";\nimport PopupAccessibleRole from \"@ui5/webcomponents/dist/types/PopupAccessibleRole.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport DropdownTemplate from \"./generated/templates/DropdownTemplate.lit.js\";\nimport { PlacementType, HorizontalAlign } from \"./types/Dropdown.js\";\nimport { TRIGGER } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport DropdownCss from \"./generated/themes/Dropdown.css\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>udex-dropdown</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import @udex/web-components/dist/Dropdown.js\";</code>\n *\n * @constructor\n * @author SAP SE\n * @extends UI5Element\n * @tagname udex-dropdown\n * @public\n */\n@customElement({\n tag: \"udex-dropdown\",\n renderer: litRender,\n styles: [\n DropdownCss,\n getEffectiveScrollbarStyle(),\n ],\n template: DropdownTemplate,\n dependencies: [Popover],\n})\n\n/**\n * Fired event when the user clicks the trigger.\n *\n * @event sap.ui.webc.web-components.UDExDropdown#clickTrigger\n * @public\n */\n@event(\"click-trigger\")\n\n/**\n * Fired before the dropdown is opened.\n *\n * @event sap.ui.webc.web-components.UDExDropdown#beforeOpen\n * @public\n */\n@event(\"before-open\")\n\n/**\n * Fired after the dropdown is opened.\n *\n * @event sap.ui.webc.web-components.UDExDropdown#afterOpen\n * @public\n */\n@event(\"after-open\")\n\n/**\n * Fired before the menu is closed.\n *\n * @event sap.ui.webc.web-components.UDExDropdown#beforeClose\n * @public\n */\n@event(\"before-close\")\n\n/**\n * Fired after the menu is closed.\n *\n * @event sap.ui.webc.web-components.UDExDropdown#afterClose\n * @public\n */\n@event(\"after-close\")\nclass UDExDropdown extends UI5Element {\n /**\n * Allows control over the height.\n *\n * @public\n */\n @property({ type: String })\n height?: string;\n\n /**\n * Determines on which side the component is placed at.\n *\n * @default \"Bottom\"\n * @public\n */\n @property({ type: PlacementType, defaultValue: PlacementType.Bottom })\n placementType!: `${PlacementType}`;\n\n /**\n * Determines the horizontal alignment of the component.\n *\n * @default \"Left\"\n * @public\n */\n @property({ type: HorizontalAlign, defaultValue: HorizontalAlign.Left })\n horizontalAlign!: `${HorizontalAlign}`;\n\n /**\n * Defines the accessible ARIA name of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n accessibleName!: string;\n\n /**\n * Allows setting a custom role.\n * @default \"None\"\n * @public\n */\n @property({ type: PopupAccessibleRole, defaultValue: PopupAccessibleRole.None })\n accessibleRole!: `${PopupAccessibleRole}`;\n\n /**\n * Allows setting a custom role for dropdown trigger.\n * @default \"combobox\"\n * @public\n */\n @property({ type: String, defaultValue: \"combobox\" })\n triggerAccessibleRole!: string;\n\n /**\n * Defines the content of the Dropdown.\n *\n * @slot content\n * @public\n */\n @slot({ type: HTMLElement, \"default\": true })\n content!: Array<HTMLElement>;\n\n /**\n * Defines the header HTML Element.\n *\n * @slot\n * @public\n */\n @slot({ type: HTMLElement })\n header!: Array<HTMLElement>;\n\n /**\n * Defines the footer HTML Element.\n *\n * @slot\n * @public\n */\n @slot({ type: HTMLElement })\n footer!: Array<HTMLElement>;\n\n /**\n * Defines the trigger HTML Element.\n *\n * @slot\n * @public\n */\n @slot({ type: HTMLElement })\n trigger!: Array<HTMLElement>;\n\n /**\n * Indicates if the dropdown pane is open\n *\n * @public\n * @default false\n */\n @property({ type: Boolean })\n open!: boolean;\n\n /**\n * Determines if there is no enough space, the component can be placed\n * over the target.\n * @default false\n * @public\n */\n @property({ type: Boolean })\n disableTargetOverlap?: boolean;\n\n /**\n * Defines direction of the component.\n *\n * @private\n */\n @property({ type: String })\n _direction?: string;\n\n static i18nBundle: I18nBundle;\n\n static async onDefine(): Promise<void> {\n UDExDropdown.i18nBundle = await getI18nBundle(\"sap-ui-webcomponents-bundle\");\n }\n\n onAfterRendering() {\n this.handleDirection();\n }\n\n handleDirection() {\n const filterMenu = this.shadowRoot?.querySelector(\".udex-dropdown\");\n if (filterMenu) {\n const directionStyles: string = window\n .getComputedStyle(filterMenu)\n .getPropertyValue(\"direction\");\n if (!directionStyles) {\n this._direction = \"ltr\";\n } else {\n this._direction = directionStyles;\n }\n }\n }\n\n getDropdownPane() {\n return this.shadowRoot!.querySelector<Popover>(\"[ui5-popover]\")!;\n }\n\n getTrigger() {\n return this.querySelector<HTMLElement>(\"[slot=trigger]\")!;\n }\n\n onTriggerClick() {\n const dropdown = this.getDropdownPane();\n const opener = this.getTrigger();\n const isOpenerDisabled = opener.hasAttribute(\"disabled\");\n\n if (!isOpenerDisabled) {\n dropdown.showAt(opener);\n this.fireEvent(\"click-trigger\");\n }\n }\n\n /**\n * Open dropdown\n *\n * @public\n */\n onOpen(opener: HTMLElement): void {\n const dropdown = this.getDropdownPane();\n dropdown.showAt(opener);\n }\n\n /**\n * Close dropdown\n *\n * @public\n */\n onClose():void {\n const dropdown = this.getDropdownPane();\n dropdown.close(true);\n }\n\n afterDropdownClose() {\n this.open = false;\n this.fireEvent(\"after-close\");\n }\n\n afterDropdownOpen() {\n this.open = true;\n this.fireEvent(\"after-open\");\n }\n\n beforeDropdownOpen() {\n const dropdown = this.getDropdownPane();\n const hasContentHeight = !!this?.height?.length;\n\n if (hasContentHeight) {\n const content = dropdown.shadowRoot!.querySelector(\"[part=content]\") as HTMLElement;\n content.style.maxHeight = <string> this.height;\n }\n\n this.fireEvent(\"before-open\");\n }\n\n beforeDropdownClose() {\n this.fireEvent(\"before-close\");\n }\n\n get hasTriggerSlot(): boolean {\n return !!this.trigger.length;\n }\n\n get hasHeaderSlot(): boolean {\n return !!this.header.length;\n }\n\n get hasFooterSlot(): boolean {\n return !!this.footer.length;\n }\n\n get disableAllowTargetOverlap(): boolean {\n return this.disableTargetOverlap?.toString() !== \"true\";\n }\n\n get triggerAccessibleName(): string {\n return UDExDropdown.i18nBundle.getText(TRIGGER);\n }\n}\n\nUDExDropdown.define();\n\nexport default UDExDropdown;\n"]}
|
package/dist/FilterMenu.d.ts
CHANGED
|
@@ -2,10 +2,11 @@ import "@ui5/webcomponents/dist/Icon.js";
|
|
|
2
2
|
import "@ui5/webcomponents-icons/dist/navigation-down-arrow.js";
|
|
3
3
|
import PopupAccessibleRole from "@ui5/webcomponents/dist/types/PopupAccessibleRole.js";
|
|
4
4
|
import UDExDropdown from "./Dropdown.js";
|
|
5
|
-
import
|
|
5
|
+
import UDExSearch from "./Search.js";
|
|
6
6
|
import UDExSearchableListBase from "./SearchableListBase.js";
|
|
7
7
|
import { PlacementType, HorizontalAlign } from "./types/Dropdown.js";
|
|
8
8
|
import { ListMode } from "./types/List.js";
|
|
9
|
+
import UDExListItemBase from "./ListItemBase.js";
|
|
9
10
|
import SearchableListBaseTemplate from "./generated/templates/SearchableListBaseTemplate.lit.js";
|
|
10
11
|
/**
|
|
11
12
|
* @class
|
|
@@ -129,12 +130,19 @@ declare class UDExFilterMenu extends UDExSearchableListBase {
|
|
|
129
130
|
accessibleName: string;
|
|
130
131
|
/**
|
|
131
132
|
* Allows setting a custom role.
|
|
132
|
-
* @default "
|
|
133
|
+
* @default "None"
|
|
133
134
|
* @public
|
|
134
135
|
*/
|
|
135
136
|
accessibleRole: `${PopupAccessibleRole}`;
|
|
137
|
+
/**
|
|
138
|
+
* Allows setting a custom role for dropdown trigger.
|
|
139
|
+
* @default "combobox"
|
|
140
|
+
* @public
|
|
141
|
+
*/
|
|
142
|
+
triggerAccessibleRole: string;
|
|
136
143
|
_dropdown: UDExDropdown;
|
|
137
|
-
_search:
|
|
144
|
+
_search: UDExSearch;
|
|
145
|
+
_hasFooterButtons: boolean;
|
|
138
146
|
onAfterRendering(): void;
|
|
139
147
|
onEnterDOM(): void;
|
|
140
148
|
onBeforeRendering(): void;
|
|
@@ -146,9 +154,13 @@ declare class UDExFilterMenu extends UDExSearchableListBase {
|
|
|
146
154
|
handleResetSearch(): void;
|
|
147
155
|
handleReset(): void;
|
|
148
156
|
handleResult(): void;
|
|
149
|
-
|
|
157
|
+
handleKeyDownList(e: KeyboardEvent): void;
|
|
158
|
+
handleKeyDownSearch(e: CustomEvent): void;
|
|
159
|
+
handleKeyDownResultBtn(e: KeyboardEvent): void;
|
|
160
|
+
handleKeyDownResetBtn(e: KeyboardEvent): void;
|
|
161
|
+
onDropdownClose(): void;
|
|
150
162
|
getDropdown(): UDExDropdown;
|
|
151
|
-
getSearch():
|
|
163
|
+
getSearch(): UDExSearch;
|
|
152
164
|
_dropdownBeforeOpen(): void;
|
|
153
165
|
_dropdownAfterOpen(): void;
|
|
154
166
|
_dropdownBeforeClose(): void;
|
|
@@ -160,6 +172,10 @@ declare class UDExFilterMenu extends UDExSearchableListBase {
|
|
|
160
172
|
get _iconAccessibleNameText(): string;
|
|
161
173
|
get searchableList(): object;
|
|
162
174
|
get hideActionBar(): boolean;
|
|
175
|
+
get hasFooterButtons(): boolean;
|
|
176
|
+
get hasResultBtn(): boolean;
|
|
177
|
+
get hasResetBtn(): boolean;
|
|
178
|
+
getItems(): Array<UDExListItemBase>;
|
|
163
179
|
static get searchableListBaseTemplate(): typeof SearchableListBaseTemplate;
|
|
164
180
|
}
|
|
165
181
|
export default UDExFilterMenu;
|
package/dist/FilterMenu.js
CHANGED
|
@@ -14,6 +14,7 @@ import "@ui5/webcomponents/dist/Icon.js";
|
|
|
14
14
|
import "@ui5/webcomponents-icons/dist/navigation-down-arrow.js";
|
|
15
15
|
import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
|
|
16
16
|
import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
|
|
17
|
+
import { isTabPrevious, isTabNext, isEscape } from "@ui5/webcomponents-base/dist/Keys.js";
|
|
17
18
|
import PopupAccessibleRole from "@ui5/webcomponents/dist/types/PopupAccessibleRole.js";
|
|
18
19
|
import UDExDropdown from "./Dropdown.js";
|
|
19
20
|
import UDExList from "./List.js";
|
|
@@ -21,8 +22,8 @@ import UDExListItem from "./ListItem.js";
|
|
|
21
22
|
import UDExListGroupHeader from "./ListGroupHeader.js";
|
|
22
23
|
import UDExFilterMenuItem from "./FilterMenuItem.js";
|
|
23
24
|
import UDExFilterMenuGroupHeader from "./FilterMenuGroupHeader.js";
|
|
24
|
-
import
|
|
25
|
-
import
|
|
25
|
+
import UDExSearch from "./Search.js";
|
|
26
|
+
import UDEButton from "./Button.js";
|
|
26
27
|
import UDExSearchableListBase from "./SearchableListBase.js";
|
|
27
28
|
import { PlacementType, HorizontalAlign } from "./types/Dropdown.js";
|
|
28
29
|
import { ListMode } from "./types/List.js";
|
|
@@ -61,6 +62,7 @@ let UDExFilterMenu = UDExFilterMenu_1 = class UDExFilterMenu extends UDExSearcha
|
|
|
61
62
|
onAfterRendering() {
|
|
62
63
|
this._dropdown = this.getDropdown();
|
|
63
64
|
this._search = this.getSearch();
|
|
65
|
+
this._hasFooterButtons = this.hasFooterButtons;
|
|
64
66
|
}
|
|
65
67
|
onEnterDOM() {
|
|
66
68
|
if (isDesktop()) {
|
|
@@ -77,7 +79,7 @@ let UDExFilterMenu = UDExFilterMenu_1 = class UDExFilterMenu extends UDExSearcha
|
|
|
77
79
|
handleItemPress(e) {
|
|
78
80
|
this.onItemPress(e);
|
|
79
81
|
if (this.modeSingleSelect) {
|
|
80
|
-
this.
|
|
82
|
+
this.onDropdownClose();
|
|
81
83
|
}
|
|
82
84
|
}
|
|
83
85
|
handleHeaderPress(e) {
|
|
@@ -87,7 +89,7 @@ let UDExFilterMenu = UDExFilterMenu_1 = class UDExFilterMenu extends UDExSearcha
|
|
|
87
89
|
this.onSearch(e);
|
|
88
90
|
}
|
|
89
91
|
handleSubmitSearch() {
|
|
90
|
-
this.
|
|
92
|
+
this.onDropdownClose();
|
|
91
93
|
this.onSubmitSearch();
|
|
92
94
|
}
|
|
93
95
|
handleResetSearch() {
|
|
@@ -107,7 +109,32 @@ let UDExFilterMenu = UDExFilterMenu_1 = class UDExFilterMenu extends UDExSearcha
|
|
|
107
109
|
});
|
|
108
110
|
}
|
|
109
111
|
}
|
|
110
|
-
|
|
112
|
+
handleKeyDownList(e) {
|
|
113
|
+
const isTabNextPress = isTabNext(e) && !this._hasFooterButtons;
|
|
114
|
+
const isTabPrevPress = isTabPrevious(e) && !this._search;
|
|
115
|
+
if (isTabNextPress || isTabPrevPress) {
|
|
116
|
+
this.onDropdownClose();
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
handleKeyDownSearch(e) {
|
|
120
|
+
const keyEvent = e.detail;
|
|
121
|
+
if (isTabPrevious(keyEvent) || isEscape(keyEvent)) {
|
|
122
|
+
this.onDropdownClose();
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
handleKeyDownResultBtn(e) {
|
|
126
|
+
e.stopPropagation();
|
|
127
|
+
if (isTabNext(e) && !this.hasResetBtn) {
|
|
128
|
+
this.onDropdownClose();
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
handleKeyDownResetBtn(e) {
|
|
132
|
+
e.stopPropagation();
|
|
133
|
+
if (isTabNext(e)) {
|
|
134
|
+
this.onDropdownClose();
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
onDropdownClose() {
|
|
111
138
|
if (this._dropdown.open) {
|
|
112
139
|
this._dropdown.onClose();
|
|
113
140
|
}
|
|
@@ -155,6 +182,18 @@ let UDExFilterMenu = UDExFilterMenu_1 = class UDExFilterMenu extends UDExSearcha
|
|
|
155
182
|
get hideActionBar() {
|
|
156
183
|
return this.hideResultBtn && this.hideResetBtn;
|
|
157
184
|
}
|
|
185
|
+
get hasFooterButtons() {
|
|
186
|
+
return (this.hasResultBtn || this.hasResetBtn) && this.modeMultiSelect;
|
|
187
|
+
}
|
|
188
|
+
get hasResultBtn() {
|
|
189
|
+
return !this.hideResultBtn && !this.disabledResultBtn;
|
|
190
|
+
}
|
|
191
|
+
get hasResetBtn() {
|
|
192
|
+
return !this.hideResetBtn;
|
|
193
|
+
}
|
|
194
|
+
getItems() {
|
|
195
|
+
return this.getSlottedNodes("items");
|
|
196
|
+
}
|
|
158
197
|
static get searchableListBaseTemplate() {
|
|
159
198
|
return SearchableListBaseTemplate;
|
|
160
199
|
}
|
|
@@ -205,8 +244,11 @@ __decorate([
|
|
|
205
244
|
property()
|
|
206
245
|
], UDExFilterMenu.prototype, "accessibleName", void 0);
|
|
207
246
|
__decorate([
|
|
208
|
-
property({ type: PopupAccessibleRole, defaultValue: PopupAccessibleRole.
|
|
247
|
+
property({ type: PopupAccessibleRole, defaultValue: PopupAccessibleRole.None })
|
|
209
248
|
], UDExFilterMenu.prototype, "accessibleRole", void 0);
|
|
249
|
+
__decorate([
|
|
250
|
+
property({ type: String, defaultValue: "combobox" })
|
|
251
|
+
], UDExFilterMenu.prototype, "triggerAccessibleRole", void 0);
|
|
210
252
|
UDExFilterMenu = UDExFilterMenu_1 = __decorate([
|
|
211
253
|
customElement({
|
|
212
254
|
tag: "udex-filter-menu",
|
|
@@ -223,8 +265,8 @@ UDExFilterMenu = UDExFilterMenu_1 = __decorate([
|
|
|
223
265
|
UDExListItem,
|
|
224
266
|
UDExListGroupHeader,
|
|
225
267
|
UDExBadge,
|
|
226
|
-
|
|
227
|
-
|
|
268
|
+
UDExSearch,
|
|
269
|
+
UDEButton,
|
|
228
270
|
],
|
|
229
271
|
})
|
|
230
272
|
/**
|
package/dist/FilterMenu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterMenu.js","sourceRoot":"","sources":["../src/FilterMenu.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport executeTemplate from \"@ui5/webcomponents-base/dist/renderer/executeTemplate.js\";\nimport \"@ui5/webcomponents/dist/Icon.js\";\nimport \"@ui5/webcomponents-icons/dist/navigation-down-arrow.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport PopupAccessibleRole from \"@ui5/webcomponents/dist/types/PopupAccessibleRole.js\";\nimport UDExDropdown from \"./Dropdown.js\";\nimport UDExList from \"./List.js\";\nimport UDExListItem from \"./ListItem.js\";\nimport UDExListGroupHeader from \"./ListGroupHeader.js\";\nimport UDExFilterMenuItem from \"./FilterMenuItem.js\";\nimport UDExFilterMenuGroupHeader from \"./FilterMenuGroupHeader.js\";\nimport Search from \"./Search.js\";\nimport Button from \"./Button.js\";\nimport UDExSearchableListBase from \"./SearchableListBase.js\";\nimport { PlacementType, HorizontalAlign } from \"./types/Dropdown.js\";\nimport { ListMode } from \"./types/List.js\";\nimport UDExFilterMenuSelectAll from \"./FilterMenuSelectAll.js\";\nimport UDExListSelectAll from \"./ListSelectAll.js\";\nimport UDExBadge from \"./Badge.js\";\n\nimport { RESET, SHOW_RESULTS, SELECT_OPTIONS } from \"./generated/i18n/i18n-defaults.js\";\nimport FilterMenuTemplate from \"./generated/templates/FilterMenuTemplate.lit.js\";\nimport SearchableListBaseTemplate from \"./generated/templates/SearchableListBaseTemplate.lit.js\";\n\n// Styles\nimport FilterMenuCss from \"./generated/themes/FilterMenu.css.js\";\nimport SearchableListCss from \"./generated/themes/SearchableList.css.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>udex-filter-menu</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@udex/web-components/dist/UDExFilterMenu.js\";</code>\n *\n * @constructor\n * @extends UDExSearchableListBase\n * @tagname udex-filter-menu\n * @public\n */\n@customElement({\n tag: \"udex-filter-menu\",\n renderer: litRender,\n styles: [FilterMenuCss, SearchableListCss],\n template: FilterMenuTemplate,\n dependencies: [\n UDExFilterMenuItem,\n UDExFilterMenuGroupHeader,\n UDExFilterMenuSelectAll,\n UDExDropdown,\n UDExList,\n UDExListSelectAll,\n UDExListItem,\n UDExListGroupHeader,\n UDExBadge,\n Search,\n Button,\n ],\n})\n\n/**\n * Fired event when the user click on a reset button on the footer.\n *\n * @event sap.ui.webc.web-components.UDExFilterMenu#resetClick\n * @public\n */\n@event(\"reset-click\", {\n detail: {\n restoredItems: { type: Array },\n },\n})\n\n/**\n * Fired event when the user click on a result button on the footer.\n *\n * @event sap.ui.webc.web-components.UDExFilterMenu#resultClick\n * @public\n */\n@event(\"result-click\", {\n detail: {\n selectedItems: { type: Array },\n },\n})\n\n/**\n * Fired event when the user click on Select All header item.\n *\n * @event sap.ui.webc.web-components.UDExFilterMenu#selectAll\n * @public\n */\n@event(\"select-all\")\n\n/**\n * Fired before the dropdown pane is opened.\n *\n * @event sap.ui.webc.web-components.UDExFilterMenu#beforeOpen\n * @public\n */\n@event(\"before-open\")\n\n/**\n * Fired after the dropdown pane is opened.\n *\n * @event sap.ui.webc.web-components.UDExFilterMenu#afterOpen\n * @public\n */\n@event(\"after-open\")\n\n/**\n * Fired before the dropdown pane is closed.\n *\n * @event sap.ui.webc.web-components.UDExFilterMenu#beforeClose\n * @public\n */\n@event(\"before-close\")\n\n/**\n * Fired after the dropdown pane is closed.\n *\n * @event sap.ui.webc.web-components.UDExFilterMenu#afterClose\n * @public\n */\n@event(\"after-close\")\n\nclass UDExFilterMenu extends UDExSearchableListBase {\n /**\n * Determines the value of the badge.\n *\n * @public\n */\n @property({ validator: Integer })\n badgeValue?: number;\n\n /**\n * Determines if there is no enough space, the component can be placed\n * over the target.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n disableTargetOverlap?: boolean;\n\n /**\n * Allows control over the height.\n * @public\n */\n @property({ type: String })\n height?: string;\n\n /**\n * Determines on which side the component is placed at.\n *\n * @default \"Bottom\"\n * @public\n */\n @property({ type: PlacementType, defaultValue: PlacementType.Bottom })\n placementType!: `${PlacementType}`;\n\n /**\n * Determines the horizontal alignment of the component.\n *\n * @default \"Left\"\n * @public\n */\n @property({ type: HorizontalAlign, defaultValue: HorizontalAlign.Left })\n horizontalAlign!: `${HorizontalAlign}`;\n\n /**\n * Defines the mode of the component.\n *\n * @default \"SingleSelect\"\n * @public\n */\n @property({ type: ListMode, defaultValue: ListMode.SingleSelect })\n mode!: `${ListMode}`;\n\n /**\n * Defines the label of the button reset in the footer.\n *\n * @default \"Reset\"\n * @public\n */\n @property()\n resetBtnLabel!: string;\n\n /**\n * Defines the label of the button result in the footer.\n *\n * @default \"Show Result\"\n * @public\n */\n @property()\n resultBtnLabel!: string;\n\n /**\n * Defines the filter name of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n filterName!: string;\n\n /**\n * Defines the filter name prefix of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n filterNamePrefix!: string;\n\n /**\n * Defines whether the component is in disabled state.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n disabled!: boolean;\n\n @property({ type: Boolean })\n _open?: boolean = false;\n\n /**\n * Hides the result button in the footer.\n *\n * @type {boolean}\n * @name sap.ui.webc.web-components.UDExFilterMenu.prototype.hideResultBtn\n * @defaultvalue false\n * @public\n */\n @property({ type: Boolean })\n hideResultBtn!: boolean;\n\n /**\n * Hides the reset button in the footer.\n *\n * @type {boolean}\n * @name sap.ui.webc.web-components.UDExFilterMenu.prototype.hideResetBtn\n * @defaultvalue false\n * @public\n */\n @property({ type: Boolean })\n hideResetBtn!: boolean;\n\n /**\n * Defines the accessible ARIA name of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n accessibleName!: string;\n\n /**\n * Allows setting a custom role.\n * @default \"Dialog\"\n * @public\n */\n @property({ type: PopupAccessibleRole, defaultValue: PopupAccessibleRole.Dialog })\n accessibleRole!: `${PopupAccessibleRole}`;\n\n _dropdown!: UDExDropdown;\n _search!: Search;\n\n onAfterRendering() {\n this._dropdown = this.getDropdown();\n this._search = this.getSearch();\n }\n\n onEnterDOM(): void {\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n }\n\n onBeforeRendering() {\n super.onBeforeRendering();\n }\n\n handleSelectAll(e:CustomEvent) {\n this.onFilterSelectAllHeaderPress(e);\n this.fireEvent(\"select-all\");\n }\n\n handleItemPress(e:CustomEvent) {\n this.onItemPress(e);\n\n if (this.modeSingleSelect) {\n this._dropdown.onClose();\n }\n }\n\n handleHeaderPress(e:CustomEvent) {\n this.onHeaderPress(e);\n }\n\n handleValueSearch(e:CustomEvent) {\n this.onSearch(e);\n }\n\n handleSubmitSearch() {\n this._dropdown.onClose();\n this.onSubmitSearch();\n }\n\n handleResetSearch() {\n this.onResetSearch();\n }\n\n handleReset() {\n this.fireEvent(\"reset-click\", {\n restoredItems: this.selectedItems,\n });\n this.onReset();\n }\n\n handleResult() {\n if (!this.disabledResultBtn) {\n this._dropdown.onClose();\n this.fireEvent(\"result-click\", {\n selectedItems: this.selectedItems,\n });\n }\n }\n\n handleTriggerClick() {\n if (this._dropdown.open) {\n this._dropdown.onClose();\n }\n }\n\n getDropdown(): UDExDropdown {\n return this.shadowRoot!.querySelector<UDExDropdown>(\"udex-dropdown\")!;\n }\n\n getSearch(): Search {\n return this.shadowRoot!.querySelector<Search>(\"udex-search\")!;\n }\n\n _dropdownBeforeOpen() {\n this._open = true;\n this.fireEvent(\"before-open\");\n }\n\n _dropdownAfterOpen() {\n this.fireEvent(\"after-open\");\n }\n\n _dropdownBeforeClose() {\n this.fireEvent(\"before-close\");\n }\n\n _dropdownAfterClose() {\n this._open = false;\n this.fireEvent(\"after-close\");\n }\n\n get hasFilterNamePrefix(): boolean {\n return !!this.filterNamePrefix?.length;\n }\n\n get getResultLabelText(): string {\n const hasLabel = this.resultBtnLabel !== \"undefined\" && this.resultBtnLabel.length > 0;\n return hasLabel ? this.resultBtnLabel : UDExFilterMenu.i18nBundle.getText(SHOW_RESULTS);\n }\n\n get getResetLabelText(): string {\n const hasLabel = this.resetBtnLabel !== \"undefined\" && this.resetBtnLabel.length > 0;\n return hasLabel ? this.resetBtnLabel : UDExFilterMenu.i18nBundle.getText(RESET);\n }\n\n get disabledResultBtn() {\n return !this.selectedItems.length && !this.selectAll;\n }\n\n get _iconAccessibleNameText() {\n return UDExFilterMenu.i18nBundle.getText(SELECT_OPTIONS);\n }\n\n get searchableList() {\n return executeTemplate(UDExFilterMenu.searchableListBaseTemplate, this);\n }\n\n get hideActionBar(): boolean {\n return this.hideResultBtn && this.hideResetBtn;\n }\n\n static get searchableListBaseTemplate() {\n return SearchableListBaseTemplate;\n }\n}\n\nUDExFilterMenu.define();\n\nexport default UDExFilterMenu;\n"]}
|
|
1
|
+
{"version":3,"file":"FilterMenu.js","sourceRoot":"","sources":["../src/FilterMenu.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,KAAK,MAAM,kDAAkD,CAAC;AACrE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,eAAe,MAAM,0DAA0D,CAAC;AACvF,OAAO,iCAAiC,CAAC;AACzC,OAAO,wDAAwD,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AACnE,OAAO,OAAO,MAAM,+CAA+C,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAC1F,OAAO,mBAAmB,MAAM,sDAAsD,CAAC;AACvF,OAAO,YAAY,MAAM,eAAe,CAAC;AACzC,OAAO,QAAQ,MAAM,WAAW,CAAC;AACjC,OAAO,YAAY,MAAM,eAAe,CAAC;AACzC,OAAO,mBAAmB,MAAM,sBAAsB,CAAC;AACvD,OAAO,kBAAkB,MAAM,qBAAqB,CAAC;AACrD,OAAO,yBAAyB,MAAM,4BAA4B,CAAC;AACnE,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,sBAAsB,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,uBAAuB,MAAM,0BAA0B,CAAC;AAC/D,OAAO,iBAAiB,MAAM,oBAAoB,CAAC;AACnD,OAAO,SAAS,MAAM,YAAY,CAAC;AAGnC,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxF,OAAO,kBAAkB,MAAM,iDAAiD,CAAC;AACjF,OAAO,0BAA0B,MAAM,yDAAyD,CAAC;AAEjG,SAAS;AACT,OAAO,aAAa,MAAM,sCAAsC,CAAC;AACjE,OAAO,iBAAiB,MAAM,0CAA0C,CAAC;AAEzE;;;;;;;;;;;;;;;;;GAiBG;AAqFH,IAAM,cAAc,sBAApB,MAAM,cAAe,SAAQ,sBAAsB;IAAnD;;QAmGI,UAAK,GAAa,KAAK,CAAC;IAkO5B,CAAC;IA7KC,gBAAgB;QACd,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACpC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC;IACjD,CAAC;IAED,UAAU;QACR,IAAI,SAAS,EAAE,EAAE;YACf,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;SAClC;IACH,CAAC;IAED,iBAAiB;QACf,KAAK,CAAC,iBAAiB,EAAE,CAAC;IAC5B,CAAC;IAED,eAAe,CAAC,CAAa;QAC3B,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAC;QACrC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAC/B,CAAC;IAED,eAAe,CAAC,CAAa;QAC3B,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAEpB,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB;IACH,CAAC;IAED,iBAAiB,CAAC,CAAa;QAC7B,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;IAED,iBAAiB,CAAC,CAAa;QAC7B,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACnB,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED,WAAW;QACT,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE;YAC5B,aAAa,EAAE,IAAI,CAAC,aAAa;SAClC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,YAAY;QACV,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YAC3B,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YACzB,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE;gBAC7B,aAAa,EAAE,IAAI,CAAC,aAAa;aAClC,CAAC,CAAC;SACJ;IACH,CAAC;IAED,iBAAiB,CAAC,CAAgB;QAChC,MAAM,cAAc,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC;QAC/D,MAAM,cAAc,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;QAEzD,IAAI,cAAc,IAAI,cAAc,EAAE;YACpC,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB;IACH,CAAC;IAED,mBAAmB,CAAC,CAAc;QAChC,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAuB,CAAC;QAC3C,IAAI,aAAa,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACjD,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB;IACH,CAAC;IAED,sBAAsB,CAAC,CAAgB;QACrC,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrC,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB;IACH,CAAC;IAED,qBAAqB,CAAC,CAAgB;QACpC,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE;YAChB,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB;IACH,CAAC;IAED,eAAe;QACb,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;YACvB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;SAC1B;IACH,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,UAAW,CAAC,aAAa,CAAe,eAAe,CAAE,CAAC;IACxE,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,UAAW,CAAC,aAAa,CAAa,aAAa,CAAE,CAAC;IACpE,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAChC,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAC/B,CAAC;IAED,oBAAoB;QAClB,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IACjC,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,mBAAmB;QACrB,OAAO,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC;IACzC,CAAC;IAED,IAAI,kBAAkB;QACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,KAAK,WAAW,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;QACvF,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC1F,CAAC;IAED,IAAI,iBAAiB;QACnB,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,KAAK,WAAW,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;QACrF,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAClF,CAAC;IAED,IAAI,iBAAiB;QACnB,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;IACvD,CAAC;IAED,IAAI,uBAAuB;QACzB,OAAO,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,eAAe,CAAC,gBAAc,CAAC,0BAA0B,EAAE,IAAI,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,YAAY,CAAC;IACjD,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC;IACzE,CAAC;IAED,IAAI,YAAY;QACd,OAAO,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC;IACxD,CAAC;IAED,IAAI,WAAW;QACb,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC;IAC5B,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,eAAe,CAAmB,OAAO,CAAC,CAAC;IACzD,CAAC;IAED,MAAM,KAAK,0BAA0B;QACnC,OAAO,0BAA0B,CAAC;IACpC,CAAC;CACF,CAAA;AA9TG;IADD,QAAQ,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;kDACX;AAUpB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;4DACK;AAO/B;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;8CACT;AAShB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,CAAC,MAAM,EAAE,CAAC;qDACjC;AASnC;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,CAAC,IAAI,EAAE,CAAC;uDAC/B;AASvC;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE,CAAC;4CAC3C;AASrB;IADD,QAAQ,EAAE;qDACc;AASvB;IADD,QAAQ,EAAE;sDACe;AASxB;IADD,QAAQ,EAAE;kDACW;AASpB;IADD,QAAQ,EAAE;wDACiB;AAS1B;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gDACP;AAGnB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;6CACF;AAWxB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;qDACF;AAWxB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;oDACH;AASvB;IADD,QAAQ,EAAE;sDACe;AAQxB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,YAAY,EAAE,mBAAmB,CAAC,IAAI,EAAE,CAAC;sDACpC;AAQ1C;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;6DACpB;AAlJ7B,cAAc;IApFnB,aAAa,CAAC;QACb,GAAG,EAAE,kBAAkB;QACvB,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,CAAC,aAAa,EAAE,iBAAiB,CAAC;QAC1C,QAAQ,EAAE,kBAAkB;QAC5B,YAAY,EAAE;YACZ,kBAAkB;YAClB,yBAAyB;YACzB,uBAAuB;YACvB,YAAY;YACZ,QAAQ;YACR,iBAAiB;YACjB,YAAY;YACZ,mBAAmB;YACnB,SAAS;YACT,UAAU;YACV,SAAS;SACV;KACF,CAAC;IAEF;;;;;OAKG;;IACF,KAAK,CAAC,aAAa,EAAE;QACpB,MAAM,EAAE;YACN,aAAa,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;SAC/B;KACF,CAAC;IAEF;;;;;OAKG;;IACF,KAAK,CAAC,cAAc,EAAE;QACrB,MAAM,EAAE;YACN,aAAa,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;SAC/B;KACF,CAAC;IAEF;;;;;OAKG;;IACF,KAAK,CAAC,YAAY,CAAC;IAEpB;;;;;OAKG;;IACF,KAAK,CAAC,aAAa,CAAC;IAErB;;;;;OAKG;;IACF,KAAK,CAAC,YAAY,CAAC;IAEpB;;;;;OAKG;;IACF,KAAK,CAAC,cAAc,CAAC;IAEtB;;;;;OAKG;;IACF,KAAK,CAAC,aAAa,CAAC;GAEf,cAAc,CAqUnB;AAED,cAAc,CAAC,MAAM,EAAE,CAAC;AAExB,eAAe,cAAc,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport executeTemplate from \"@ui5/webcomponents-base/dist/renderer/executeTemplate.js\";\nimport \"@ui5/webcomponents/dist/Icon.js\";\nimport \"@ui5/webcomponents-icons/dist/navigation-down-arrow.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport { isTabPrevious, isTabNext, isEscape } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport PopupAccessibleRole from \"@ui5/webcomponents/dist/types/PopupAccessibleRole.js\";\nimport UDExDropdown from \"./Dropdown.js\";\nimport UDExList from \"./List.js\";\nimport UDExListItem from \"./ListItem.js\";\nimport UDExListGroupHeader from \"./ListGroupHeader.js\";\nimport UDExFilterMenuItem from \"./FilterMenuItem.js\";\nimport UDExFilterMenuGroupHeader from \"./FilterMenuGroupHeader.js\";\nimport UDExSearch from \"./Search.js\";\nimport UDEButton from \"./Button.js\";\nimport UDExSearchableListBase from \"./SearchableListBase.js\";\nimport { PlacementType, HorizontalAlign } from \"./types/Dropdown.js\";\nimport { ListMode } from \"./types/List.js\";\nimport UDExFilterMenuSelectAll from \"./FilterMenuSelectAll.js\";\nimport UDExListSelectAll from \"./ListSelectAll.js\";\nimport UDExBadge from \"./Badge.js\";\nimport UDExListItemBase from \"./ListItemBase.js\";\n\nimport { RESET, SHOW_RESULTS, SELECT_OPTIONS } from \"./generated/i18n/i18n-defaults.js\";\nimport FilterMenuTemplate from \"./generated/templates/FilterMenuTemplate.lit.js\";\nimport SearchableListBaseTemplate from \"./generated/templates/SearchableListBaseTemplate.lit.js\";\n\n// Styles\nimport FilterMenuCss from \"./generated/themes/FilterMenu.css.js\";\nimport SearchableListCss from \"./generated/themes/SearchableList.css.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>udex-filter-menu</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@udex/web-components/dist/UDExFilterMenu.js\";</code>\n *\n * @constructor\n * @extends UDExSearchableListBase\n * @tagname udex-filter-menu\n * @public\n */\n@customElement({\n tag: \"udex-filter-menu\",\n renderer: litRender,\n styles: [FilterMenuCss, SearchableListCss],\n template: FilterMenuTemplate,\n dependencies: [\n UDExFilterMenuItem,\n UDExFilterMenuGroupHeader,\n UDExFilterMenuSelectAll,\n UDExDropdown,\n UDExList,\n UDExListSelectAll,\n UDExListItem,\n UDExListGroupHeader,\n UDExBadge,\n UDExSearch,\n UDEButton,\n ],\n})\n\n/**\n * Fired event when the user click on a reset button on the footer.\n *\n * @event sap.ui.webc.web-components.UDExFilterMenu#resetClick\n * @public\n */\n@event(\"reset-click\", {\n detail: {\n restoredItems: { type: Array },\n },\n})\n\n/**\n * Fired event when the user click on a result button on the footer.\n *\n * @event sap.ui.webc.web-components.UDExFilterMenu#resultClick\n * @public\n */\n@event(\"result-click\", {\n detail: {\n selectedItems: { type: Array },\n },\n})\n\n/**\n * Fired event when the user click on Select All header item.\n *\n * @event sap.ui.webc.web-components.UDExFilterMenu#selectAll\n * @public\n */\n@event(\"select-all\")\n\n/**\n * Fired before the dropdown pane is opened.\n *\n * @event sap.ui.webc.web-components.UDExFilterMenu#beforeOpen\n * @public\n */\n@event(\"before-open\")\n\n/**\n * Fired after the dropdown pane is opened.\n *\n * @event sap.ui.webc.web-components.UDExFilterMenu#afterOpen\n * @public\n */\n@event(\"after-open\")\n\n/**\n * Fired before the dropdown pane is closed.\n *\n * @event sap.ui.webc.web-components.UDExFilterMenu#beforeClose\n * @public\n */\n@event(\"before-close\")\n\n/**\n * Fired after the dropdown pane is closed.\n *\n * @event sap.ui.webc.web-components.UDExFilterMenu#afterClose\n * @public\n */\n@event(\"after-close\")\n\nclass UDExFilterMenu extends UDExSearchableListBase {\n /**\n * Determines the value of the badge.\n *\n * @public\n */\n @property({ validator: Integer })\n badgeValue?: number;\n\n /**\n * Determines if there is no enough space, the component can be placed\n * over the target.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n disableTargetOverlap?: boolean;\n\n /**\n * Allows control over the height.\n * @public\n */\n @property({ type: String })\n height?: string;\n\n /**\n * Determines on which side the component is placed at.\n *\n * @default \"Bottom\"\n * @public\n */\n @property({ type: PlacementType, defaultValue: PlacementType.Bottom })\n placementType!: `${PlacementType}`;\n\n /**\n * Determines the horizontal alignment of the component.\n *\n * @default \"Left\"\n * @public\n */\n @property({ type: HorizontalAlign, defaultValue: HorizontalAlign.Left })\n horizontalAlign!: `${HorizontalAlign}`;\n\n /**\n * Defines the mode of the component.\n *\n * @default \"SingleSelect\"\n * @public\n */\n @property({ type: ListMode, defaultValue: ListMode.SingleSelect })\n mode!: `${ListMode}`;\n\n /**\n * Defines the label of the button reset in the footer.\n *\n * @default \"Reset\"\n * @public\n */\n @property()\n resetBtnLabel!: string;\n\n /**\n * Defines the label of the button result in the footer.\n *\n * @default \"Show Result\"\n * @public\n */\n @property()\n resultBtnLabel!: string;\n\n /**\n * Defines the filter name of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n filterName!: string;\n\n /**\n * Defines the filter name prefix of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n filterNamePrefix!: string;\n\n /**\n * Defines whether the component is in disabled state.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n disabled!: boolean;\n\n @property({ type: Boolean })\n _open?: boolean = false;\n\n /**\n * Hides the result button in the footer.\n *\n * @type {boolean}\n * @name sap.ui.webc.web-components.UDExFilterMenu.prototype.hideResultBtn\n * @defaultvalue false\n * @public\n */\n @property({ type: Boolean })\n hideResultBtn!: boolean;\n\n /**\n * Hides the reset button in the footer.\n *\n * @type {boolean}\n * @name sap.ui.webc.web-components.UDExFilterMenu.prototype.hideResetBtn\n * @defaultvalue false\n * @public\n */\n @property({ type: Boolean })\n hideResetBtn!: boolean;\n\n /**\n * Defines the accessible ARIA name of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n accessibleName!: string;\n\n /**\n * Allows setting a custom role.\n * @default \"None\"\n * @public\n */\n @property({ type: PopupAccessibleRole, defaultValue: PopupAccessibleRole.None })\n accessibleRole!: `${PopupAccessibleRole}`;\n\n /**\n * Allows setting a custom role for dropdown trigger.\n * @default \"combobox\"\n * @public\n */\n @property({ type: String, defaultValue: \"combobox\" })\n triggerAccessibleRole!: string;\n\n _dropdown!: UDExDropdown;\n _search!: UDExSearch;\n _hasFooterButtons!: boolean;\n\n onAfterRendering() {\n this._dropdown = this.getDropdown();\n this._search = this.getSearch();\n this._hasFooterButtons = this.hasFooterButtons;\n }\n\n onEnterDOM(): void {\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n }\n\n onBeforeRendering() {\n super.onBeforeRendering();\n }\n\n handleSelectAll(e:CustomEvent) {\n this.onFilterSelectAllHeaderPress(e);\n this.fireEvent(\"select-all\");\n }\n\n handleItemPress(e:CustomEvent) {\n this.onItemPress(e);\n\n if (this.modeSingleSelect) {\n this.onDropdownClose();\n }\n }\n\n handleHeaderPress(e:CustomEvent) {\n this.onHeaderPress(e);\n }\n\n handleValueSearch(e:CustomEvent) {\n this.onSearch(e);\n }\n\n handleSubmitSearch() {\n this.onDropdownClose();\n this.onSubmitSearch();\n }\n\n handleResetSearch() {\n this.onResetSearch();\n }\n\n handleReset() {\n this.fireEvent(\"reset-click\", {\n restoredItems: this.selectedItems,\n });\n this.onReset();\n }\n\n handleResult() {\n if (!this.disabledResultBtn) {\n this._dropdown.onClose();\n this.fireEvent(\"result-click\", {\n selectedItems: this.selectedItems,\n });\n }\n }\n\n handleKeyDownList(e: KeyboardEvent) {\n const isTabNextPress = isTabNext(e) && !this._hasFooterButtons;\n const isTabPrevPress = isTabPrevious(e) && !this._search;\n\n if (isTabNextPress || isTabPrevPress) {\n this.onDropdownClose();\n }\n }\n\n handleKeyDownSearch(e: CustomEvent) {\n const keyEvent = e.detail as KeyboardEvent;\n if (isTabPrevious(keyEvent) || isEscape(keyEvent)) {\n this.onDropdownClose();\n }\n }\n\n handleKeyDownResultBtn(e: KeyboardEvent) {\n e.stopPropagation();\n if (isTabNext(e) && !this.hasResetBtn) {\n this.onDropdownClose();\n }\n }\n\n handleKeyDownResetBtn(e: KeyboardEvent) {\n e.stopPropagation();\n if (isTabNext(e)) {\n this.onDropdownClose();\n }\n }\n\n onDropdownClose() {\n if (this._dropdown.open) {\n this._dropdown.onClose();\n }\n }\n\n getDropdown(): UDExDropdown {\n return this.shadowRoot!.querySelector<UDExDropdown>(\"udex-dropdown\")!;\n }\n\n getSearch(): UDExSearch {\n return this.shadowRoot!.querySelector<UDExSearch>(\"udex-search\")!;\n }\n\n _dropdownBeforeOpen() {\n this._open = true;\n this.fireEvent(\"before-open\");\n }\n\n _dropdownAfterOpen() {\n this.fireEvent(\"after-open\");\n }\n\n _dropdownBeforeClose() {\n this.fireEvent(\"before-close\");\n }\n\n _dropdownAfterClose() {\n this._open = false;\n this.fireEvent(\"after-close\");\n }\n\n get hasFilterNamePrefix(): boolean {\n return !!this.filterNamePrefix?.length;\n }\n\n get getResultLabelText(): string {\n const hasLabel = this.resultBtnLabel !== \"undefined\" && this.resultBtnLabel.length > 0;\n return hasLabel ? this.resultBtnLabel : UDExFilterMenu.i18nBundle.getText(SHOW_RESULTS);\n }\n\n get getResetLabelText(): string {\n const hasLabel = this.resetBtnLabel !== \"undefined\" && this.resetBtnLabel.length > 0;\n return hasLabel ? this.resetBtnLabel : UDExFilterMenu.i18nBundle.getText(RESET);\n }\n\n get disabledResultBtn() {\n return !this.selectedItems.length && !this.selectAll;\n }\n\n get _iconAccessibleNameText() {\n return UDExFilterMenu.i18nBundle.getText(SELECT_OPTIONS);\n }\n\n get searchableList() {\n return executeTemplate(UDExFilterMenu.searchableListBaseTemplate, this);\n }\n\n get hideActionBar(): boolean {\n return this.hideResultBtn && this.hideResetBtn;\n }\n\n get hasFooterButtons(): boolean {\n return (this.hasResultBtn || this.hasResetBtn) && this.modeMultiSelect;\n }\n\n get hasResultBtn(): boolean {\n return !this.hideResultBtn && !this.disabledResultBtn;\n }\n\n get hasResetBtn(): boolean {\n return !this.hideResetBtn;\n }\n\n getItems(): Array<UDExListItemBase> {\n return this.getSlottedNodes<UDExListItemBase>(\"items\");\n }\n\n static get searchableListBaseTemplate() {\n return SearchableListBaseTemplate;\n }\n}\n\nUDExFilterMenu.define();\n\nexport default UDExFilterMenu;\n"]}
|
package/dist/Footer.d.ts
CHANGED
|
@@ -18,6 +18,15 @@ export type FooterContactNumber = {
|
|
|
18
18
|
number: string;
|
|
19
19
|
country: string;
|
|
20
20
|
};
|
|
21
|
+
export type FooterDetailedClickEvent = {
|
|
22
|
+
originalEvent: PointerEvent;
|
|
23
|
+
name: string;
|
|
24
|
+
id?: string;
|
|
25
|
+
sourceNode: HTMLElement;
|
|
26
|
+
};
|
|
27
|
+
export type FooterBaseEventEvent = {
|
|
28
|
+
originalEvent: PointerEvent;
|
|
29
|
+
};
|
|
21
30
|
export declare const FooterBaseEvent: {
|
|
22
31
|
detail: {
|
|
23
32
|
originalEvent: {
|
|
@@ -39,6 +48,9 @@ export declare const FooterDetailedEvent: {
|
|
|
39
48
|
name: {
|
|
40
49
|
type: StringConstructor;
|
|
41
50
|
};
|
|
51
|
+
id: {
|
|
52
|
+
type: StringConstructor;
|
|
53
|
+
};
|
|
42
54
|
sourceNode: {
|
|
43
55
|
type: {
|
|
44
56
|
new (): HTMLElement;
|
|
@@ -67,6 +79,13 @@ export declare const FooterDetailedEvent: {
|
|
|
67
79
|
* @public
|
|
68
80
|
*/
|
|
69
81
|
declare class UDExFooter extends UI5Element {
|
|
82
|
+
/**
|
|
83
|
+
* Defines the Logo default title
|
|
84
|
+
*
|
|
85
|
+
* @default ""
|
|
86
|
+
* @public
|
|
87
|
+
*/
|
|
88
|
+
logoTitle: string;
|
|
70
89
|
/**
|
|
71
90
|
* Defines the Logo URL
|
|
72
91
|
*
|
|
@@ -151,6 +170,12 @@ declare class UDExFooter extends UI5Element {
|
|
|
151
170
|
* @public
|
|
152
171
|
*/
|
|
153
172
|
logoAlt: string;
|
|
173
|
+
/**
|
|
174
|
+
* Defines an aria label for the logo link
|
|
175
|
+
*
|
|
176
|
+
* @public
|
|
177
|
+
*/
|
|
178
|
+
logoAriaLabel: string;
|
|
154
179
|
/**
|
|
155
180
|
* Defines should render the mobile navigation.
|
|
156
181
|
*
|
|
@@ -197,5 +222,7 @@ declare class UDExFooter extends UI5Element {
|
|
|
197
222
|
_onAboutSapClick(e: Event): void;
|
|
198
223
|
_onSiteInformationClick(e: Event): void;
|
|
199
224
|
_onSocialMediaLinkClick(e: Event): void;
|
|
225
|
+
fireFooterBaseEvent(e: Event, eventName: string): void;
|
|
226
|
+
fireFooterDetailedClickEvent(e: Event, eventName: string): void;
|
|
200
227
|
}
|
|
201
228
|
export default UDExFooter;
|
package/dist/Footer.js
CHANGED
|
@@ -34,6 +34,7 @@ export const FooterDetailedEvent = {
|
|
|
34
34
|
detail: {
|
|
35
35
|
originalEvent: { type: PointerEvent },
|
|
36
36
|
name: { type: String },
|
|
37
|
+
id: { type: String },
|
|
37
38
|
sourceNode: { type: HTMLElement },
|
|
38
39
|
},
|
|
39
40
|
};
|
|
@@ -147,65 +148,52 @@ let UDExFooter = UDExFooter_1 = class UDExFooter extends UI5Element {
|
|
|
147
148
|
return window.innerWidth <= BreakpointSizeS;
|
|
148
149
|
}
|
|
149
150
|
_onLogoClick(e) {
|
|
150
|
-
this.
|
|
151
|
+
this.fireFooterBaseEvent(e, "logo-click");
|
|
151
152
|
}
|
|
152
153
|
_onContactPhoneClick(e) {
|
|
153
|
-
this.
|
|
154
|
+
this.fireFooterBaseEvent(e, "contact-phone-click");
|
|
154
155
|
}
|
|
155
156
|
_onContactPhoneLocalNumbersClick(e) {
|
|
156
|
-
this.
|
|
157
|
+
this.fireFooterBaseEvent(e, "contact-phone-local-numbers-click");
|
|
157
158
|
}
|
|
158
159
|
_onContactEmailClick(e) {
|
|
159
|
-
this.
|
|
160
|
+
this.fireFooterBaseEvent(e, "contact-email-click");
|
|
160
161
|
}
|
|
161
162
|
_onContactChatClick(e) {
|
|
162
|
-
this.
|
|
163
|
+
this.fireFooterBaseEvent(e, "contact-chat-click");
|
|
163
164
|
}
|
|
164
165
|
_onQuickLinksClick(e) {
|
|
165
|
-
|
|
166
|
-
this.fireEvent("quick-links-click", {
|
|
167
|
-
name: sourceNode.innerText,
|
|
168
|
-
originalEvent: e,
|
|
169
|
-
sourceNode,
|
|
170
|
-
}, true);
|
|
166
|
+
this.fireFooterDetailedClickEvent(e, "quick-links-click");
|
|
171
167
|
}
|
|
172
168
|
_onTrendingClick(e) {
|
|
173
|
-
|
|
174
|
-
this.fireEvent("trending-click", {
|
|
175
|
-
name: sourceNode.innerText,
|
|
176
|
-
originalEvent: e,
|
|
177
|
-
sourceNode,
|
|
178
|
-
}, true);
|
|
169
|
+
this.fireFooterDetailedClickEvent(e, "trending-click");
|
|
179
170
|
}
|
|
180
171
|
_onAboutSapClick(e) {
|
|
181
|
-
|
|
182
|
-
this.fireEvent("about-sap-click", {
|
|
183
|
-
name: sourceNode.innerText,
|
|
184
|
-
originalEvent: e,
|
|
185
|
-
sourceNode,
|
|
186
|
-
}, true);
|
|
172
|
+
this.fireFooterDetailedClickEvent(e, "about-sap-click");
|
|
187
173
|
}
|
|
188
174
|
_onSiteInformationClick(e) {
|
|
189
|
-
|
|
190
|
-
this.fireEvent("site-information-click", {
|
|
191
|
-
name: sourceNode.innerText,
|
|
192
|
-
originalEvent: e,
|
|
193
|
-
sourceNode,
|
|
194
|
-
}, true);
|
|
175
|
+
this.fireFooterDetailedClickEvent(e, "site-information-click");
|
|
195
176
|
}
|
|
196
177
|
_onSocialMediaLinkClick(e) {
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
178
|
+
this.fireFooterDetailedClickEvent(e, "social-media-link-click");
|
|
179
|
+
}
|
|
180
|
+
fireFooterBaseEvent(e, eventName) {
|
|
181
|
+
this.fireEvent(eventName, { originalEvent: e }, true);
|
|
182
|
+
}
|
|
183
|
+
fireFooterDetailedClickEvent(e, eventName) {
|
|
184
|
+
const sourceNode = e.composedPath()[0];
|
|
185
|
+
const { innerText, dataset: { id, name } } = sourceNode;
|
|
186
|
+
this.fireEvent(eventName, {
|
|
187
|
+
...(!!id?.length && { id }),
|
|
188
|
+
name: innerText.length ? innerText : name,
|
|
204
189
|
originalEvent: e,
|
|
205
190
|
sourceNode,
|
|
206
191
|
}, true);
|
|
207
192
|
}
|
|
208
193
|
};
|
|
194
|
+
__decorate([
|
|
195
|
+
property({ type: String, defaultValue: "" })
|
|
196
|
+
], UDExFooter.prototype, "logoTitle", void 0);
|
|
209
197
|
__decorate([
|
|
210
198
|
property({ type: String, defaultValue: "" })
|
|
211
199
|
], UDExFooter.prototype, "logoUrl", void 0);
|
|
@@ -242,6 +230,9 @@ __decorate([
|
|
|
242
230
|
__decorate([
|
|
243
231
|
property({ type: String, defaultValue: "" })
|
|
244
232
|
], UDExFooter.prototype, "logoAlt", void 0);
|
|
233
|
+
__decorate([
|
|
234
|
+
property({ type: String })
|
|
235
|
+
], UDExFooter.prototype, "logoAriaLabel", void 0);
|
|
245
236
|
__decorate([
|
|
246
237
|
property({ type: Boolean })
|
|
247
238
|
], UDExFooter.prototype, "_shouldRenderMobileMenu", void 0);
|