@sapudex/web-components 2.5.0 → 2.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cypress/specs/Accordion.cy.tsx +18 -10
- package/cypress/specs/Divider.cy.tsx +16 -0
- package/cypress/support/component-imports.instrumented.ts +2 -0
- package/cypress/support/component-imports.src.ts +4 -2
- package/dist/Accordion.d.ts +6 -5
- package/dist/Accordion.js +21 -20
- package/dist/Accordion.js.map +1 -1
- package/dist/AccordionItem.d.ts +1 -3
- package/dist/AccordionItem.js +17 -19
- package/dist/AccordionItem.js.map +1 -1
- package/dist/AccordionItemTemplate.d.ts +2 -0
- package/dist/AccordionItemTemplate.js +14 -0
- package/dist/AccordionItemTemplate.js.map +1 -0
- package/dist/AccordionTemplate.d.ts +2 -0
- package/dist/AccordionTemplate.js +11 -0
- package/dist/AccordionTemplate.js.map +1 -0
- package/dist/AssetsVariables.js +5 -1
- package/dist/AssetsVariables.js.map +1 -1
- package/dist/Avatar.d.ts +2 -1
- package/dist/Avatar.js +7 -9
- package/dist/Avatar.js.map +1 -1
- package/dist/AvatarTemplate.d.ts +2 -0
- package/dist/AvatarTemplate.js +6 -0
- package/dist/AvatarTemplate.js.map +1 -0
- package/dist/Badge.d.ts +1 -2
- package/dist/Badge.js +6 -9
- package/dist/Badge.js.map +1 -1
- package/dist/BadgeTemplate.d.ts +2 -0
- package/dist/BadgeTemplate.js +8 -0
- package/dist/BadgeTemplate.js.map +1 -0
- package/dist/Carousel.d.ts +16 -4
- package/dist/Carousel.js +21 -11
- package/dist/Carousel.js.map +1 -1
- package/dist/CarouselTemplate.d.ts +2 -0
- package/dist/CarouselTemplate.js +15 -0
- package/dist/CarouselTemplate.js.map +1 -0
- package/dist/ContactItemTemplate.js +2 -1
- package/dist/ContactItemTemplate.js.map +1 -1
- package/dist/CountrySelector.d.ts +1 -1
- package/dist/CountrySelector.js +6 -7
- package/dist/CountrySelector.js.map +1 -1
- package/dist/Divider.d.ts +10 -2
- package/dist/Divider.js +11 -4
- package/dist/Divider.js.map +1 -1
- package/dist/DividerTemplate.d.ts +2 -0
- package/dist/DividerTemplate.js +5 -0
- package/dist/DividerTemplate.js.map +1 -0
- package/dist/Dropdown.js +2 -1
- package/dist/Dropdown.js.map +1 -1
- package/dist/FilterMenu.d.ts +0 -7
- package/dist/FilterMenu.js +12 -12
- package/dist/FilterMenu.js.map +1 -1
- package/dist/List.js +1 -1
- package/dist/List.js.map +1 -1
- package/dist/MastheadCountrySelector.d.ts +5 -0
- package/dist/MastheadCountrySelector.js +17 -2
- package/dist/MastheadCountrySelector.js.map +1 -1
- package/dist/MastheadMenu.d.ts +1 -0
- package/dist/MastheadMenu.js +7 -3
- package/dist/MastheadMenu.js.map +1 -1
- package/dist/MastheadMobileMenu.js +6 -3
- package/dist/MastheadMobileMenu.js.map +1 -1
- package/dist/MastheadShell.d.ts +17 -0
- package/dist/MastheadShell.js +53 -15
- package/dist/MastheadShell.js.map +1 -1
- package/dist/Modal.js +2 -2
- package/dist/Modal.js.map +1 -1
- package/dist/Search.js +5 -4
- package/dist/Search.js.map +1 -1
- package/dist/SearchableListBase.d.ts +24 -2
- package/dist/SearchableListBase.js +50 -4
- package/dist/SearchableListBase.js.map +1 -1
- package/dist/SecondaryNavigation.js +1 -1
- package/dist/SecondaryNavigation.js.map +1 -1
- package/dist/SecondaryNavigationItem.js +1 -2
- package/dist/SecondaryNavigationItem.js.map +1 -1
- package/dist/SegmentedButton.js +6 -4
- package/dist/SegmentedButton.js.map +1 -1
- package/dist/SelectBox.d.ts +0 -7
- package/dist/SelectBox.js +10 -13
- package/dist/SelectBox.js.map +1 -1
- package/dist/TabNavigation.d.ts +5 -0
- package/dist/TabNavigation.js +8 -0
- package/dist/TabNavigation.js.map +1 -1
- package/dist/Table.js +1 -1
- package/dist/Table.js.map +1 -1
- package/dist/TextArea.js +1 -1
- package/dist/TextArea.js.map +1 -1
- package/dist/assets/InputSuggestions-D_DpCFML.js +2 -0
- package/dist/assets/{ListItemStandardExpandableTextTemplate-ClcY2jB2.js → ListItemStandardExpandableTextTemplate-Cd1WOyFc.js} +3 -3
- package/dist/assets/bundle-S1uYREqT.css +1 -0
- package/dist/assets/bundle.esm-B9JnRRJp.js +475 -0
- package/dist/assets/messagebundle_en-CKeTZNW3.js +1 -0
- package/dist/assets/parameters-bundle.css-B168-DcZ.js +2 -0
- package/dist/assets/parameters-bundle.css-B4OkERQ9.js +2 -0
- package/dist/assets/parameters-bundle.css-D1Mp0DP7.js +2 -0
- package/dist/assets/parameters-bundle.css-DPQMdjrz.js +2 -0
- package/dist/assets/parameters-bundle.css-DW-8EaO7.js +2 -0
- package/dist/assets/parameters-bundle.css-DpI130zX.js +2 -0
- package/dist/assets/parameters-bundle.css-DsEtCihj.js +2 -0
- package/dist/assets/parameters-bundle.css-y5CBgtzD.js +2 -0
- package/dist/css/themes/CountrySelector.css +1 -1
- package/dist/css/themes/MastheadCountrySelector.css +1 -1
- package/dist/css/themes/MastheadItem.css +1 -1
- package/dist/css/themes/MastheadMenuItem.css +1 -1
- package/dist/css/themes/MastheadMobileMenu.css +1 -1
- package/dist/css/themes/MastheadShell.css +1 -1
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/Search.css +1 -1
- package/dist/css/themes/SearchableList.css +1 -1
- package/dist/css/themes/SegmentedButtonItem.css +1 -1
- package/dist/css/themes/Slider.css +1 -1
- package/dist/css/themes/TextArea.css +1 -1
- package/dist/custom-elements-internal.json +219 -41
- package/dist/custom-elements.json +211 -41
- package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
- package/dist/generated/i18n/i18n-defaults.d.ts +2 -1
- package/dist/generated/i18n/i18n-defaults.js +2 -1
- package/dist/generated/i18n/i18n-defaults.js.map +1 -1
- package/dist/generated/json-imports/Themes-fetch.js +1 -1
- package/dist/generated/json-imports/Themes-fetch.js.map +1 -1
- package/dist/generated/json-imports/Themes-node.js +1 -1
- package/dist/generated/json-imports/Themes-node.js.map +1 -1
- package/dist/generated/json-imports/Themes.js +1 -1
- package/dist/generated/json-imports/Themes.js.map +1 -1
- package/dist/generated/json-imports/i18n-fetch.js +1 -1
- package/dist/generated/json-imports/i18n-fetch.js.map +1 -1
- package/dist/generated/json-imports/i18n-node.js +1 -1
- package/dist/generated/json-imports/i18n-node.js.map +1 -1
- package/dist/generated/json-imports/i18n.js +1 -1
- package/dist/generated/json-imports/i18n.js.map +1 -1
- package/dist/generated/templates/HeroBannerTemplate.lit.js +1 -1
- package/dist/generated/templates/HeroBannerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.js +3 -3
- package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MastheadMenuTemplate.lit.js +3 -3
- package/dist/generated/templates/MastheadMenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MastheadMobileMenuTemplate.lit.js +1 -1
- package/dist/generated/templates/MastheadMobileMenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MastheadShellTemplate.lit.js +1 -1
- package/dist/generated/templates/MastheadShellTemplate.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/themes/Accordion.css.js +2 -2
- package/dist/generated/themes/Accordion.css.js.map +1 -1
- package/dist/generated/themes/AccordionItem.css.js +2 -2
- package/dist/generated/themes/AccordionItem.css.js.map +1 -1
- package/dist/generated/themes/Avatar.css.js +2 -2
- package/dist/generated/themes/Avatar.css.js.map +1 -1
- package/dist/generated/themes/Badge.css.js +2 -2
- package/dist/generated/themes/Badge.css.js.map +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js +2 -2
- package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
- package/dist/generated/themes/BreadcrumbsPopover.css.js +2 -2
- package/dist/generated/themes/BreadcrumbsPopover.css.js.map +1 -1
- package/dist/generated/themes/Button.css.js +2 -2
- package/dist/generated/themes/Button.css.js.map +1 -1
- package/dist/generated/themes/Carousel.css.js +2 -2
- package/dist/generated/themes/Carousel.css.js.map +1 -1
- package/dist/generated/themes/Checkbox.css.js +2 -2
- package/dist/generated/themes/Checkbox.css.js.map +1 -1
- package/dist/generated/themes/Contact.css.js +2 -2
- package/dist/generated/themes/Contact.css.js.map +1 -1
- package/dist/generated/themes/ContactItem.css.js +2 -2
- package/dist/generated/themes/ContactItem.css.js.map +1 -1
- package/dist/generated/themes/ControlButton.css.js +2 -2
- package/dist/generated/themes/ControlButton.css.js.map +1 -1
- package/dist/generated/themes/CountrySelector.css.d.ts +1 -1
- package/dist/generated/themes/CountrySelector.css.js +3 -3
- package/dist/generated/themes/CountrySelector.css.js.map +1 -1
- package/dist/generated/themes/DatePicker.css.js +2 -2
- package/dist/generated/themes/DatePicker.css.js.map +1 -1
- package/dist/generated/themes/DatePickerPopover.css.js +2 -2
- package/dist/generated/themes/DatePickerPopover.css.js.map +1 -1
- package/dist/generated/themes/Divider.css.js +2 -2
- package/dist/generated/themes/Divider.css.js.map +1 -1
- package/dist/generated/themes/Dropdown.css.js +2 -2
- package/dist/generated/themes/Dropdown.css.js.map +1 -1
- package/dist/generated/themes/EventRibbon.css.js +2 -2
- package/dist/generated/themes/EventRibbon.css.js.map +1 -1
- package/dist/generated/themes/FilterMenu.css.js +2 -2
- package/dist/generated/themes/FilterMenu.css.js.map +1 -1
- package/dist/generated/themes/Footer.css.js +2 -2
- package/dist/generated/themes/Footer.css.js.map +1 -1
- package/dist/generated/themes/HeroBanner.css.js +2 -2
- package/dist/generated/themes/HeroBanner.css.js.map +1 -1
- package/dist/generated/themes/InputGroup.css.js +2 -2
- package/dist/generated/themes/InputGroup.css.js.map +1 -1
- package/dist/generated/themes/Link.css.js +2 -2
- package/dist/generated/themes/Link.css.js.map +1 -1
- package/dist/generated/themes/List.css.js +2 -2
- package/dist/generated/themes/List.css.js.map +1 -1
- package/dist/generated/themes/ListGroupHeader.css.js +2 -2
- package/dist/generated/themes/ListGroupHeader.css.js.map +1 -1
- package/dist/generated/themes/ListItem.css.js +2 -2
- package/dist/generated/themes/ListItem.css.js.map +1 -1
- package/dist/generated/themes/MastheadCountrySelector.css.d.ts +1 -1
- package/dist/generated/themes/MastheadCountrySelector.css.js +3 -3
- package/dist/generated/themes/MastheadCountrySelector.css.js.map +1 -1
- package/dist/generated/themes/MastheadItem.css.d.ts +1 -1
- package/dist/generated/themes/MastheadItem.css.js +3 -3
- package/dist/generated/themes/MastheadItem.css.js.map +1 -1
- package/dist/generated/themes/MastheadMenu.css.js +2 -2
- package/dist/generated/themes/MastheadMenu.css.js.map +1 -1
- package/dist/generated/themes/MastheadMenuItem.css.d.ts +1 -1
- package/dist/generated/themes/MastheadMenuItem.css.js +3 -3
- package/dist/generated/themes/MastheadMenuItem.css.js.map +1 -1
- package/dist/generated/themes/MastheadMobileMenu.css.d.ts +1 -1
- package/dist/generated/themes/MastheadMobileMenu.css.js +3 -3
- package/dist/generated/themes/MastheadMobileMenu.css.js.map +1 -1
- package/dist/generated/themes/MastheadProfileMenu.css.js +2 -2
- package/dist/generated/themes/MastheadProfileMenu.css.js.map +1 -1
- package/dist/generated/themes/MastheadShell.css.d.ts +1 -1
- package/dist/generated/themes/MastheadShell.css.js +3 -3
- package/dist/generated/themes/MastheadShell.css.js.map +1 -1
- package/dist/generated/themes/MediaPlayer.css.js +2 -2
- package/dist/generated/themes/MediaPlayer.css.js.map +1 -1
- package/dist/generated/themes/MediaPlayerYoutube.css.js +2 -2
- package/dist/generated/themes/MediaPlayerYoutube.css.js.map +1 -1
- package/dist/generated/themes/MessageStrip.css.js +2 -2
- package/dist/generated/themes/MessageStrip.css.js.map +1 -1
- package/dist/generated/themes/Modal.css.js +2 -2
- package/dist/generated/themes/Modal.css.js.map +1 -1
- package/dist/generated/themes/Pagination.css.js +2 -2
- package/dist/generated/themes/Pagination.css.js.map +1 -1
- package/dist/generated/themes/PhoneNumberField.css.js +2 -2
- package/dist/generated/themes/PhoneNumberField.css.js.map +1 -1
- package/dist/generated/themes/ProgressBar.css.js +2 -2
- package/dist/generated/themes/ProgressBar.css.js.map +1 -1
- package/dist/generated/themes/Quote.css.js +2 -2
- package/dist/generated/themes/Quote.css.js.map +1 -1
- package/dist/generated/themes/RadioButton.css.js +2 -2
- package/dist/generated/themes/RadioButton.css.js.map +1 -1
- package/dist/generated/themes/RatingBar.css.js +2 -2
- package/dist/generated/themes/RatingBar.css.js.map +1 -1
- package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
- package/dist/generated/themes/RatingIndicator.css.js +3 -3
- package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
- package/dist/generated/themes/Review.css.js +2 -2
- package/dist/generated/themes/Review.css.js.map +1 -1
- package/dist/generated/themes/ReviewItem.css.js +2 -2
- package/dist/generated/themes/ReviewItem.css.js.map +1 -1
- package/dist/generated/themes/Search.css.d.ts +1 -1
- package/dist/generated/themes/Search.css.js +3 -3
- package/dist/generated/themes/Search.css.js.map +1 -1
- package/dist/generated/themes/SearchSuggestions.css.js +2 -2
- package/dist/generated/themes/SearchSuggestions.css.js.map +1 -1
- package/dist/generated/themes/SearchableList.css.d.ts +1 -1
- package/dist/generated/themes/SearchableList.css.js +3 -3
- package/dist/generated/themes/SearchableList.css.js.map +1 -1
- package/dist/generated/themes/SecondaryNavigation.css.js +2 -2
- package/dist/generated/themes/SecondaryNavigation.css.js.map +1 -1
- package/dist/generated/themes/SecondaryNavigationItem.css.js +2 -2
- package/dist/generated/themes/SecondaryNavigationItem.css.js.map +1 -1
- package/dist/generated/themes/SecondaryNavigationSubItem.css.js +2 -2
- package/dist/generated/themes/SecondaryNavigationSubItem.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButton.css.js +2 -2
- package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButtonItem.css.d.ts +1 -1
- package/dist/generated/themes/SegmentedButtonItem.css.js +3 -3
- package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
- package/dist/generated/themes/SelectBox.css.js +2 -2
- package/dist/generated/themes/SelectBox.css.js.map +1 -1
- package/dist/generated/themes/SideNavigation.css.js +2 -2
- package/dist/generated/themes/SideNavigation.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationGroup.css.js +2 -2
- package/dist/generated/themes/SideNavigationGroup.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationItem.css.js +2 -2
- package/dist/generated/themes/SideNavigationItem.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationMobile.css.js +2 -2
- package/dist/generated/themes/SideNavigationMobile.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationMobileDropdown.css.js +2 -2
- package/dist/generated/themes/SideNavigationMobileDropdown.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationSubItem.css.js +2 -2
- package/dist/generated/themes/SideNavigationSubItem.css.js.map +1 -1
- package/dist/generated/themes/Slider.css.d.ts +1 -1
- package/dist/generated/themes/Slider.css.js +3 -3
- package/dist/generated/themes/Slider.css.js.map +1 -1
- package/dist/generated/themes/StatusBadge.css.js +2 -2
- package/dist/generated/themes/StatusBadge.css.js.map +1 -1
- package/dist/generated/themes/StatusMessage.css.js +2 -2
- package/dist/generated/themes/StatusMessage.css.js.map +1 -1
- package/dist/generated/themes/StepInput.css.js +2 -2
- package/dist/generated/themes/StepInput.css.js.map +1 -1
- package/dist/generated/themes/Switch.css.js +2 -2
- package/dist/generated/themes/Switch.css.js.map +1 -1
- package/dist/generated/themes/TabInOverflow.css.js +2 -2
- package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
- package/dist/generated/themes/TabNavigation.css.js +2 -2
- package/dist/generated/themes/TabNavigation.css.js.map +1 -1
- package/dist/generated/themes/Table.css.js +2 -2
- package/dist/generated/themes/Table.css.js.map +1 -1
- package/dist/generated/themes/TableCell.css.js +2 -2
- package/dist/generated/themes/TableCell.css.js.map +1 -1
- package/dist/generated/themes/TableCellBase.css.js +2 -2
- package/dist/generated/themes/TableCellBase.css.js.map +1 -1
- package/dist/generated/themes/TableGroupRow.css.js +2 -2
- package/dist/generated/themes/TableGroupRow.css.js.map +1 -1
- package/dist/generated/themes/TableHeaderCell.css.js +2 -2
- package/dist/generated/themes/TableHeaderCell.css.js.map +1 -1
- package/dist/generated/themes/TableRowBase.css.js +2 -2
- package/dist/generated/themes/TableRowBase.css.js.map +1 -1
- package/dist/generated/themes/Tag.css.js +2 -2
- package/dist/generated/themes/Tag.css.js.map +1 -1
- package/dist/generated/themes/TagGroup.css.js +2 -2
- package/dist/generated/themes/TagGroup.css.js.map +1 -1
- package/dist/generated/themes/TextArea.css.d.ts +1 -1
- package/dist/generated/themes/TextArea.css.js +3 -3
- package/dist/generated/themes/TextArea.css.js.map +1 -1
- package/dist/generated/themes/TextField.css.js +2 -2
- package/dist/generated/themes/TextField.css.js.map +1 -1
- package/dist/generated/themes/Tile.css.js +2 -2
- package/dist/generated/themes/Tile.css.js.map +1 -1
- package/dist/generated/themes/Toast.css.js +2 -2
- package/dist/generated/themes/Toast.css.js.map +1 -1
- package/dist/generated/themes/Tooltip.css.js +2 -2
- package/dist/generated/themes/Tooltip.css.js.map +1 -1
- package/dist/generated/themes/TruncatedText.css.js +2 -2
- package/dist/generated/themes/TruncatedText.css.js.map +1 -1
- package/dist/generated/themes/Upload.css.js +2 -2
- package/dist/generated/themes/Upload.css.js.map +1 -1
- package/dist/generated/themes/UploadItem.css.js +2 -2
- package/dist/generated/themes/UploadItem.css.js.map +1 -1
- package/dist/generated/themes/Wizard.css.js +2 -2
- package/dist/generated/themes/Wizard.css.js.map +1 -1
- package/dist/generated/themes/WizardTab.css.js +2 -2
- package/dist/generated/themes/WizardTab.css.js.map +1 -1
- package/dist/messagebundle.properties +3 -0
- package/dist/messagebundle_en.properties +1 -0
- package/dist/types/SearchableListBase.d.ts +5 -0
- package/dist/types/SearchableListBase.js +6 -0
- package/dist/types/SearchableListBase.js.map +1 -1
- package/dist/utils/getEffectiveScrollbarStyle.d.ts +4 -0
- package/dist/utils/getEffectiveScrollbarStyle.js +45 -0
- package/dist/utils/getEffectiveScrollbarStyle.js.map +1 -0
- package/dist/vscode.html-custom-data.json +40 -15
- package/dist/web-types.json +73 -27
- package/package.json +7 -7
- package/src/Accordion.ts +38 -31
- package/src/AccordionItem.ts +23 -27
- package/src/AccordionItemTemplate.tsx +54 -0
- package/src/AccordionTemplate.tsx +37 -0
- package/src/AssetsVariables.ts +5 -1
- package/src/Avatar.ts +9 -11
- package/src/AvatarTemplate.tsx +22 -0
- package/src/Badge.ts +8 -12
- package/src/BadgeTemplate.tsx +22 -0
- package/src/Carousel.ts +30 -24
- package/src/CarouselTemplate.tsx +56 -0
- package/src/ContactItemTemplate.tsx +2 -1
- package/src/CountrySelector.ts +9 -10
- package/src/Divider.ts +13 -5
- package/src/DividerTemplate.tsx +11 -0
- package/src/Dropdown.ts +2 -1
- package/src/FilterMenu.ts +15 -18
- package/src/HeroBanner.hbs +1 -0
- package/src/List.ts +1 -1
- package/src/MastheadCountrySelector.hbs +5 -9
- package/src/MastheadCountrySelector.ts +19 -0
- package/src/MastheadMenu.hbs +3 -3
- package/src/MastheadMenu.ts +10 -3
- package/src/MastheadMobileMenu.hbs +1 -2
- package/src/MastheadMobileMenu.ts +7 -3
- package/src/MastheadShell.hbs +29 -29
- package/src/MastheadShell.ts +65 -16
- package/src/Modal.ts +2 -2
- package/src/Search.hbs +1 -1
- package/src/Search.ts +5 -4
- package/src/SearchableListBase.hbs +7 -1
- package/src/SearchableListBase.ts +65 -9
- package/src/SecondaryNavigation.ts +1 -1
- package/src/SecondaryNavigationItem.ts +1 -2
- package/src/SegmentedButton.ts +7 -4
- package/src/SelectBox.ts +13 -19
- package/src/TabNavigation.ts +13 -0
- package/src/Table.ts +1 -1
- package/src/TextArea.ts +1 -1
- package/src/generated/i18n/i18n-defaults.ts +2 -2
- package/src/generated/json-imports/Themes-fetch.ts +1 -1
- package/src/generated/json-imports/Themes-node.ts +1 -1
- package/src/generated/json-imports/Themes.ts +1 -1
- package/src/generated/json-imports/i18n-fetch.ts +1 -1
- package/src/generated/json-imports/i18n-node.ts +1 -1
- package/src/generated/json-imports/i18n.ts +1 -1
- package/src/generated/templates/HeroBannerTemplate.lit.ts +1 -1
- package/src/generated/templates/MastheadCountrySelectorTemplate.lit.ts +3 -3
- package/src/generated/templates/MastheadMenuTemplate.lit.ts +3 -3
- package/src/generated/templates/MastheadMobileMenuTemplate.lit.ts +1 -1
- package/src/generated/templates/MastheadShellTemplate.lit.ts +1 -1
- package/src/generated/templates/SearchableListBaseTemplate.lit.ts +2 -2
- package/src/generated/themes/Accordion.css.ts +2 -2
- package/src/generated/themes/AccordionItem.css.ts +2 -2
- package/src/generated/themes/Avatar.css.ts +2 -2
- package/src/generated/themes/Badge.css.ts +2 -2
- package/src/generated/themes/Breadcrumbs.css.ts +2 -2
- package/src/generated/themes/BreadcrumbsPopover.css.ts +2 -2
- package/src/generated/themes/Button.css.ts +2 -2
- package/src/generated/themes/Carousel.css.ts +2 -2
- package/src/generated/themes/Checkbox.css.ts +2 -2
- package/src/generated/themes/Contact.css.ts +2 -2
- package/src/generated/themes/ContactItem.css.ts +2 -2
- package/src/generated/themes/ControlButton.css.ts +2 -2
- package/src/generated/themes/CountrySelector.css.ts +3 -3
- package/src/generated/themes/DatePicker.css.ts +2 -2
- package/src/generated/themes/DatePickerPopover.css.ts +2 -2
- package/src/generated/themes/Divider.css.ts +2 -2
- package/src/generated/themes/Dropdown.css.ts +2 -2
- package/src/generated/themes/EventRibbon.css.ts +2 -2
- package/src/generated/themes/FilterMenu.css.ts +2 -2
- package/src/generated/themes/Footer.css.ts +2 -2
- package/src/generated/themes/HeroBanner.css.ts +2 -2
- package/src/generated/themes/InputGroup.css.ts +2 -2
- package/src/generated/themes/Link.css.ts +2 -2
- package/src/generated/themes/List.css.ts +2 -2
- package/src/generated/themes/ListGroupHeader.css.ts +2 -2
- package/src/generated/themes/ListItem.css.ts +2 -2
- package/src/generated/themes/MastheadCountrySelector.css.ts +3 -3
- package/src/generated/themes/MastheadItem.css.ts +3 -3
- package/src/generated/themes/MastheadMenu.css.ts +2 -2
- package/src/generated/themes/MastheadMenuItem.css.ts +3 -3
- package/src/generated/themes/MastheadMobileMenu.css.ts +3 -3
- package/src/generated/themes/MastheadProfileMenu.css.ts +2 -2
- package/src/generated/themes/MastheadShell.css.ts +3 -3
- package/src/generated/themes/MediaPlayer.css.ts +2 -2
- package/src/generated/themes/MediaPlayerYoutube.css.ts +2 -2
- package/src/generated/themes/MessageStrip.css.ts +2 -2
- package/src/generated/themes/Modal.css.ts +2 -2
- package/src/generated/themes/Pagination.css.ts +2 -2
- package/src/generated/themes/PhoneNumberField.css.ts +2 -2
- package/src/generated/themes/ProgressBar.css.ts +2 -2
- package/src/generated/themes/Quote.css.ts +2 -2
- package/src/generated/themes/RadioButton.css.ts +2 -2
- package/src/generated/themes/RatingBar.css.ts +2 -2
- package/src/generated/themes/RatingIndicator.css.ts +3 -3
- package/src/generated/themes/Review.css.ts +2 -2
- package/src/generated/themes/ReviewItem.css.ts +2 -2
- package/src/generated/themes/Search.css.ts +3 -3
- package/src/generated/themes/SearchSuggestions.css.ts +2 -2
- package/src/generated/themes/SearchableList.css.ts +3 -3
- package/src/generated/themes/SecondaryNavigation.css.ts +2 -2
- package/src/generated/themes/SecondaryNavigationItem.css.ts +2 -2
- package/src/generated/themes/SecondaryNavigationSubItem.css.ts +2 -2
- package/src/generated/themes/SegmentedButton.css.ts +2 -2
- package/src/generated/themes/SegmentedButtonItem.css.ts +3 -3
- package/src/generated/themes/SelectBox.css.ts +2 -2
- package/src/generated/themes/SideNavigation.css.ts +2 -2
- package/src/generated/themes/SideNavigationGroup.css.ts +2 -2
- package/src/generated/themes/SideNavigationItem.css.ts +2 -2
- package/src/generated/themes/SideNavigationMobile.css.ts +2 -2
- package/src/generated/themes/SideNavigationMobileDropdown.css.ts +2 -2
- package/src/generated/themes/SideNavigationSubItem.css.ts +2 -2
- package/src/generated/themes/Slider.css.ts +3 -3
- package/src/generated/themes/StatusBadge.css.ts +2 -2
- package/src/generated/themes/StatusMessage.css.ts +2 -2
- package/src/generated/themes/StepInput.css.ts +2 -2
- package/src/generated/themes/Switch.css.ts +2 -2
- package/src/generated/themes/TabInOverflow.css.ts +2 -2
- package/src/generated/themes/TabNavigation.css.ts +2 -2
- package/src/generated/themes/Table.css.ts +2 -2
- package/src/generated/themes/TableCell.css.ts +2 -2
- package/src/generated/themes/TableCellBase.css.ts +2 -2
- package/src/generated/themes/TableGroupRow.css.ts +2 -2
- package/src/generated/themes/TableHeaderCell.css.ts +2 -2
- package/src/generated/themes/TableRowBase.css.ts +2 -2
- package/src/generated/themes/Tag.css.ts +2 -2
- package/src/generated/themes/TagGroup.css.ts +2 -2
- package/src/generated/themes/TextArea.css.ts +3 -3
- package/src/generated/themes/TextField.css.ts +2 -2
- package/src/generated/themes/Tile.css.ts +2 -2
- package/src/generated/themes/Toast.css.ts +2 -2
- package/src/generated/themes/Tooltip.css.ts +2 -2
- package/src/generated/themes/TruncatedText.css.ts +2 -2
- package/src/generated/themes/Upload.css.ts +2 -2
- package/src/generated/themes/UploadItem.css.ts +2 -2
- package/src/generated/themes/Wizard.css.ts +2 -2
- package/src/generated/themes/WizardTab.css.ts +2 -2
- package/src/i18n/messagebundle.properties +3 -0
- package/src/i18n/messagebundle_en.properties +1 -0
- package/src/themes/CountrySelector.css +11 -0
- package/src/themes/List.css +1 -0
- package/src/themes/MastheadCountrySelector.css +11 -0
- package/src/themes/MastheadItem.css +5 -2
- package/src/themes/MastheadMenuItem.css +5 -0
- package/src/themes/MastheadMobileMenu.css +1 -0
- package/src/themes/MastheadShell.css +4 -4
- package/src/themes/Search.css +3 -1
- package/src/themes/SearchableList.css +15 -0
- package/src/themes/SegmentedButtonItem.css +2 -2
- package/src/themes/TextArea.css +0 -7
- package/src/types/SearchableListBase.ts +6 -0
- package/src/utils/getEffectiveScrollbarStyle.ts +48 -0
- package/dist/assets/InputSuggestions-RQHqFxZ9.js +0 -2
- package/dist/assets/bundle-C9ZlnwwH.css +0 -1
- package/dist/assets/bundle.esm-DGH8Pvav.js +0 -399
- package/dist/assets/messagebundle_en-DXEe5nWA.js +0 -1
- package/dist/assets/parameters-bundle.css-1GGBOW8m.js +0 -2
- package/dist/assets/parameters-bundle.css-A9eeRg2R.js +0 -2
- package/dist/assets/parameters-bundle.css-COBI_9-U.js +0 -2
- package/dist/assets/parameters-bundle.css-CgAoZ-Ir.js +0 -2
- package/dist/assets/parameters-bundle.css-DuFHHRNK.js +0 -2
- package/dist/assets/parameters-bundle.css-Pf68NO0T.js +0 -2
- package/dist/assets/parameters-bundle.css-aX_t_-9o.js +0 -2
- package/dist/assets/parameters-bundle.css-rNSryFKH.js +0 -2
- package/dist/generated/templates/AccordionItemTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/AccordionItemTemplate.lit.js +0 -8
- package/dist/generated/templates/AccordionItemTemplate.lit.js.map +0 -1
- package/dist/generated/templates/AccordionTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/AccordionTemplate.lit.js +0 -10
- package/dist/generated/templates/AccordionTemplate.lit.js.map +0 -1
- package/dist/generated/templates/AvatarTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/AvatarTemplate.lit.js +0 -9
- package/dist/generated/templates/AvatarTemplate.lit.js.map +0 -1
- package/dist/generated/templates/BadgeTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/BadgeTemplate.lit.js +0 -9
- package/dist/generated/templates/BadgeTemplate.lit.js.map +0 -1
- package/dist/generated/templates/CarouselTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/CarouselTemplate.lit.js +0 -10
- package/dist/generated/templates/CarouselTemplate.lit.js.map +0 -1
- package/dist/generated/templates/DividerTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/DividerTemplate.lit.js +0 -7
- package/dist/generated/templates/DividerTemplate.lit.js.map +0 -1
- package/src/Accordion.hbs +0 -25
- package/src/AccordionItem.hbs +0 -37
- package/src/Avatar.hbs +0 -19
- package/src/Badge.hbs +0 -16
- package/src/Carousel.hbs +0 -45
- package/src/Divider.hbs +0 -1
- package/src/generated/templates/AccordionItemTemplate.lit.ts +0 -12
- package/src/generated/templates/AccordionTemplate.lit.ts +0 -14
- package/src/generated/templates/AvatarTemplate.lit.ts +0 -13
- package/src/generated/templates/BadgeTemplate.lit.ts +0 -13
- package/src/generated/templates/CarouselTemplate.lit.ts +0 -14
- package/src/generated/templates/DividerTemplate.lit.ts +0 -11
package/src/Accordion.ts
CHANGED
|
@@ -5,19 +5,15 @@ import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
|
5
5
|
import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
|
|
6
6
|
import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
|
|
7
7
|
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
8
|
-
import
|
|
8
|
+
import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
|
|
9
9
|
import "@ui5/webcomponents-icons/dist/feeder-arrow.js";
|
|
10
|
-
import {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
} from "@ui5/webcomponents-base/dist/Keys.js";
|
|
14
|
-
import AccordionTemplate from "./generated/templates/AccordionTemplate.lit.js";
|
|
10
|
+
import { isEnter, isSpace } from "@ui5/webcomponents-base/dist/Keys.js";
|
|
11
|
+
import AccordionTemplate from "./AccordionTemplate.js";
|
|
12
|
+
import type UDExAccordionItem from "./AccordionItem.js";
|
|
15
13
|
import { COLLAPSE_ALL, EXPAND_ALL } from "./generated/i18n/i18n-defaults.js";
|
|
16
|
-
import UDExButton from "./Button.js";
|
|
17
14
|
|
|
18
15
|
// Styles
|
|
19
16
|
import AccordionCss from "./generated/themes/Accordion.css.js";
|
|
20
|
-
import type UDExAccordionItem from "./AccordionItem.js";
|
|
21
17
|
|
|
22
18
|
type UDExAccordionToggleItemsEventDetail = {
|
|
23
19
|
isOpen: boolean
|
|
@@ -43,10 +39,9 @@ type UDExAccordionToggleItemsEventDetail = {
|
|
|
43
39
|
*/
|
|
44
40
|
@customElement({
|
|
45
41
|
tag: "udex-accordion",
|
|
46
|
-
renderer:
|
|
42
|
+
renderer: jsxRenderer,
|
|
47
43
|
styles: AccordionCss,
|
|
48
44
|
template: AccordionTemplate,
|
|
49
|
-
dependencies: [UDExButton],
|
|
50
45
|
})
|
|
51
46
|
|
|
52
47
|
/**
|
|
@@ -55,30 +50,36 @@ type UDExAccordionToggleItemsEventDetail = {
|
|
|
55
50
|
* @public
|
|
56
51
|
*/
|
|
57
52
|
@event("toggle-items", { bubbles: true })
|
|
53
|
+
|
|
58
54
|
class UDExAccordion extends UI5Element {
|
|
59
55
|
eventDetails!: {
|
|
60
56
|
"toggle-items": UDExAccordionToggleItemsEventDetail,
|
|
61
57
|
};
|
|
58
|
+
|
|
62
59
|
/**
|
|
63
60
|
* Used internally to store expand/collapse button state.
|
|
64
61
|
*
|
|
65
62
|
* @private
|
|
66
63
|
*/
|
|
67
|
-
@property({ type: Boolean, noAttribute: true })
|
|
64
|
+
@property({ type: Boolean, noAttribute: true })
|
|
65
|
+
_allExpanded!: boolean;
|
|
66
|
+
|
|
68
67
|
/**
|
|
69
68
|
* Defines if expandAll button should be displayed.
|
|
70
69
|
*
|
|
71
70
|
* @default false
|
|
72
71
|
* @public
|
|
73
72
|
*/
|
|
74
|
-
@property({ type: Boolean })
|
|
73
|
+
@property({ type: Boolean })
|
|
74
|
+
hideExpandButton!: boolean;
|
|
75
75
|
|
|
76
76
|
/**
|
|
77
77
|
* Defines direction of the accordion component.
|
|
78
78
|
*
|
|
79
79
|
* @private
|
|
80
80
|
*/
|
|
81
|
-
@property({ type: String })
|
|
81
|
+
@property({ type: String })
|
|
82
|
+
_direction?: string;
|
|
82
83
|
|
|
83
84
|
/**
|
|
84
85
|
* Defines the headline text of the accordion component.
|
|
@@ -86,7 +87,8 @@ class UDExAccordion extends UI5Element {
|
|
|
86
87
|
* @default ""
|
|
87
88
|
* @public
|
|
88
89
|
*/
|
|
89
|
-
@property({ type: String })
|
|
90
|
+
@property({ type: String })
|
|
91
|
+
headline!: string;
|
|
90
92
|
|
|
91
93
|
/**
|
|
92
94
|
* Slot for accordion items.
|
|
@@ -94,7 +96,8 @@ class UDExAccordion extends UI5Element {
|
|
|
94
96
|
* @slot
|
|
95
97
|
* @public
|
|
96
98
|
*/
|
|
97
|
-
@slot({ type: HTMLElement, "default": true, individualSlots: true })
|
|
99
|
+
@slot({ type: HTMLElement, "default": true, individualSlots: true })
|
|
100
|
+
_items!: Array<UDExAccordionItem>;
|
|
98
101
|
|
|
99
102
|
@i18n("@sapudex/web-components")
|
|
100
103
|
static i18nBundle: I18nBundle;
|
|
@@ -107,22 +110,8 @@ class UDExAccordion extends UI5Element {
|
|
|
107
110
|
this._activeItemIndex = -1;
|
|
108
111
|
}
|
|
109
112
|
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
? UDExAccordion.i18nBundle.getText(COLLAPSE_ALL)
|
|
113
|
-
: UDExAccordion.i18nBundle.getText(EXPAND_ALL);
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
get isExpanded(): boolean {
|
|
117
|
-
return this._allExpanded;
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
get items(): {item: HTMLElement}[] {
|
|
121
|
-
return this._items.map(el => {
|
|
122
|
-
return {
|
|
123
|
-
item: el,
|
|
124
|
-
};
|
|
125
|
-
});
|
|
113
|
+
onEnterDOM() {
|
|
114
|
+
this.updateAllExpandedStatus();
|
|
126
115
|
}
|
|
127
116
|
|
|
128
117
|
toggleAllHandler(e: Event) {
|
|
@@ -187,6 +176,24 @@ class UDExAccordion extends UI5Element {
|
|
|
187
176
|
this._activeItemIndex = this._items?.indexOf(target) ?? -1;
|
|
188
177
|
}
|
|
189
178
|
}
|
|
179
|
+
|
|
180
|
+
updateAllExpandedStatus() {
|
|
181
|
+
this._allExpanded = this._items.every(item => item.expanded);
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
get toggleAllText(): string {
|
|
185
|
+
return this._allExpanded
|
|
186
|
+
? UDExAccordion.i18nBundle.getText(COLLAPSE_ALL)
|
|
187
|
+
: UDExAccordion.i18nBundle.getText(EXPAND_ALL);
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
get items(): {item: UDExAccordionItem}[] {
|
|
191
|
+
return this._items.map(el => {
|
|
192
|
+
return {
|
|
193
|
+
item: el,
|
|
194
|
+
};
|
|
195
|
+
});
|
|
196
|
+
}
|
|
190
197
|
}
|
|
191
198
|
|
|
192
199
|
UDExAccordion.define();
|
package/src/AccordionItem.ts
CHANGED
|
@@ -3,14 +3,10 @@ import customElement from "@ui5/webcomponents-base/dist/decorators/customElement
|
|
|
3
3
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
4
4
|
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
5
5
|
import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
|
|
6
|
-
import
|
|
6
|
+
import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
|
|
7
7
|
import { isEnter, isSpace } from "@ui5/webcomponents-base/dist/Keys.js";
|
|
8
|
-
import Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
9
|
-
import "@ui5/webcomponents-icons/dist/slim-arrow-right.js";
|
|
10
8
|
import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
|
|
11
|
-
import
|
|
12
|
-
|
|
13
|
-
import AccordionItemTemplate from "./generated/templates/AccordionItemTemplate.lit.js";
|
|
9
|
+
import AccordionItemTemplate from "./AccordionItemTemplate.js";
|
|
14
10
|
|
|
15
11
|
// Styles
|
|
16
12
|
import AccordionItemCss from "./generated/themes/AccordionItem.css.js";
|
|
@@ -36,10 +32,9 @@ import AccordionItemCss from "./generated/themes/AccordionItem.css.js";
|
|
|
36
32
|
*/
|
|
37
33
|
@customElement({
|
|
38
34
|
tag: "udex-accordion-item",
|
|
39
|
-
renderer:
|
|
35
|
+
renderer: jsxRenderer,
|
|
40
36
|
styles: AccordionItemCss,
|
|
41
37
|
template: AccordionItemTemplate,
|
|
42
|
-
dependencies: [UDExBadge, Icon],
|
|
43
38
|
})
|
|
44
39
|
|
|
45
40
|
/**
|
|
@@ -48,9 +43,16 @@ import AccordionItemCss from "./generated/themes/AccordionItem.css.js";
|
|
|
48
43
|
*/
|
|
49
44
|
@event("accordion-item-focus", { bubbles: true })
|
|
50
45
|
|
|
46
|
+
/**
|
|
47
|
+
* Triggered when the user clicks on an accordion item.
|
|
48
|
+
* @public
|
|
49
|
+
*/
|
|
50
|
+
@event("accordion-item-click", { bubbles: true })
|
|
51
|
+
|
|
51
52
|
class UDExAccordionItem extends UI5Element {
|
|
52
53
|
eventDetails!: {
|
|
53
54
|
"accordion-item-focus": void,
|
|
55
|
+
"accordion-item-click": void,
|
|
54
56
|
};
|
|
55
57
|
/**
|
|
56
58
|
* Defines the Badge at the end of the label item.
|
|
@@ -58,7 +60,8 @@ class UDExAccordionItem extends UI5Element {
|
|
|
58
60
|
* @default ""
|
|
59
61
|
* @public
|
|
60
62
|
*/
|
|
61
|
-
@property()
|
|
63
|
+
@property()
|
|
64
|
+
numberBadge!: string;
|
|
62
65
|
|
|
63
66
|
/**
|
|
64
67
|
* Defines the label of the accordion item component.
|
|
@@ -66,7 +69,8 @@ class UDExAccordionItem extends UI5Element {
|
|
|
66
69
|
* @default ""
|
|
67
70
|
* @public
|
|
68
71
|
*/
|
|
69
|
-
@property()
|
|
72
|
+
@property()
|
|
73
|
+
label!: string;
|
|
70
74
|
|
|
71
75
|
/**
|
|
72
76
|
* Defines if the accordion item is expanded by default
|
|
@@ -74,7 +78,8 @@ class UDExAccordionItem extends UI5Element {
|
|
|
74
78
|
* @default false
|
|
75
79
|
* @public
|
|
76
80
|
*/
|
|
77
|
-
@property({ type: Boolean })
|
|
81
|
+
@property({ type: Boolean })
|
|
82
|
+
expanded = false;
|
|
78
83
|
|
|
79
84
|
/**
|
|
80
85
|
* Used internally to understand the component's open or closed state.
|
|
@@ -82,14 +87,16 @@ class UDExAccordionItem extends UI5Element {
|
|
|
82
87
|
* @default false
|
|
83
88
|
* @private
|
|
84
89
|
*/
|
|
85
|
-
@property({ type: Boolean, noAttribute: true })
|
|
90
|
+
@property({ type: Boolean, noAttribute: true })
|
|
91
|
+
isOpen = false;
|
|
86
92
|
|
|
87
93
|
/**
|
|
88
94
|
* Defines direction of the accordion item.
|
|
89
95
|
*
|
|
90
96
|
* @public
|
|
91
97
|
*/
|
|
92
|
-
@property({ type: String })
|
|
98
|
+
@property({ type: String })
|
|
99
|
+
_direction?: string;
|
|
93
100
|
|
|
94
101
|
/**
|
|
95
102
|
* Slot for accordion item content.
|
|
@@ -97,7 +104,8 @@ class UDExAccordionItem extends UI5Element {
|
|
|
97
104
|
* @slot
|
|
98
105
|
* @public
|
|
99
106
|
*/
|
|
100
|
-
@slot({ type: Node, "default": true })
|
|
107
|
+
@slot({ type: Node, "default": true })
|
|
108
|
+
content!: Array<Node>;
|
|
101
109
|
|
|
102
110
|
constructor() {
|
|
103
111
|
super();
|
|
@@ -119,20 +127,8 @@ class UDExAccordionItem extends UI5Element {
|
|
|
119
127
|
|
|
120
128
|
itemClickHandler(e: Event) {
|
|
121
129
|
e.preventDefault();
|
|
122
|
-
this.toggleItemState(e.currentTarget as HTMLElement, this.expanded);
|
|
123
|
-
this.toggleExpanded();
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
toggleItemState(el: HTMLElement, isActive: boolean) {
|
|
127
|
-
if (isActive) {
|
|
128
|
-
el.setAttribute("aria-expanded", "false");
|
|
129
|
-
} else {
|
|
130
|
-
el.setAttribute("aria-expanded", "true");
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
toggleExpanded(): void {
|
|
135
130
|
this.expanded = !this.expanded;
|
|
131
|
+
this.fireDecoratorEvent("accordion-item-click");
|
|
136
132
|
}
|
|
137
133
|
|
|
138
134
|
focusHandler() {
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import type AccordionItem from "./AccordionItem.js";
|
|
2
|
+
import UI5Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
3
|
+
import IconMode from "@ui5/webcomponents/dist/types/IconMode.js";
|
|
4
|
+
import slimArrowRight from "@ui5/webcomponents-icons/dist/slim-arrow-right.js";
|
|
5
|
+
import { UDExNumberBadgeDesign, UDExSizeBadgeDesign, UDExTypeBadgeDesign } from "./types/BadgeDesign.js";
|
|
6
|
+
import UDExBadge from "./Badge.js";
|
|
7
|
+
|
|
8
|
+
export default function AccordionItemTemplate(this: AccordionItem) {
|
|
9
|
+
const ariaControlsId = `udex-accordion-item__${this._id}-content`;
|
|
10
|
+
const ariaLabelledbyId = `udex-accordion-item__${this._id}`;
|
|
11
|
+
const rootClass = "udex-accordion-item";
|
|
12
|
+
|
|
13
|
+
return (
|
|
14
|
+
<>
|
|
15
|
+
<button
|
|
16
|
+
id={ariaLabelledbyId}
|
|
17
|
+
aria-controls={ariaControlsId}
|
|
18
|
+
className={`${rootClass}__header`}
|
|
19
|
+
onFocusIn={this.focusHandler}
|
|
20
|
+
onClick={this.itemClickHandler}
|
|
21
|
+
onKeyDown={this.keydownHandler}
|
|
22
|
+
aria-expanded={this.expanded}
|
|
23
|
+
type="button">
|
|
24
|
+
<div className={`${rootClass}__icon-wrapper`}>
|
|
25
|
+
<UI5Icon
|
|
26
|
+
class={`${rootClass}__icon`}
|
|
27
|
+
mode={IconMode.Decorative}
|
|
28
|
+
name={slimArrowRight}>
|
|
29
|
+
</UI5Icon>
|
|
30
|
+
</div>
|
|
31
|
+
<span className={`${rootClass}__title`}>
|
|
32
|
+
{this.label}
|
|
33
|
+
{this.numberBadge &&
|
|
34
|
+
<UDExBadge
|
|
35
|
+
class={`${rootClass}__badge`}
|
|
36
|
+
number-design={UDExNumberBadgeDesign.Blue}
|
|
37
|
+
type={UDExTypeBadgeDesign.Number}
|
|
38
|
+
size={UDExSizeBadgeDesign.Medium}>
|
|
39
|
+
{this.numberBadge}
|
|
40
|
+
</UDExBadge>
|
|
41
|
+
}
|
|
42
|
+
</span>
|
|
43
|
+
</button>
|
|
44
|
+
<div
|
|
45
|
+
id={ariaControlsId}
|
|
46
|
+
aria-labelledby={ariaLabelledbyId}
|
|
47
|
+
className={`${rootClass}__content`}
|
|
48
|
+
onKeyDown={this.contentKeydown}
|
|
49
|
+
role="region">
|
|
50
|
+
<slot></slot>
|
|
51
|
+
</div>
|
|
52
|
+
</>
|
|
53
|
+
);
|
|
54
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type Accordion from "./Accordion.js";
|
|
2
|
+
import UDExButton from "./Button.js";
|
|
3
|
+
import UDExButtonSize from "./types/ButtonSize.js";
|
|
4
|
+
import UDExButtonDesign from "./types/ButtonDesign.js";
|
|
5
|
+
|
|
6
|
+
export default function AccordionTemplate(this: Accordion) {
|
|
7
|
+
const rootClass = "udex-accordion";
|
|
8
|
+
|
|
9
|
+
return (
|
|
10
|
+
<div
|
|
11
|
+
className={rootClass}
|
|
12
|
+
onKeyDown={this.keydownHandler}
|
|
13
|
+
onui5-accordion-item-click={this.updateAllExpandedStatus}
|
|
14
|
+
onui5-accordion-item-focus={this.itemFocusHandler}>
|
|
15
|
+
<div className={`${rootClass}__head`} part="head">
|
|
16
|
+
{this.headline &&
|
|
17
|
+
<h3 className={`${rootClass}__headline`}>{this.headline}</h3>
|
|
18
|
+
}
|
|
19
|
+
{!this.hideExpandButton &&
|
|
20
|
+
<UDExButton class={`${rootClass}__btn`}
|
|
21
|
+
size={UDExButtonSize.Large}
|
|
22
|
+
design={UDExButtonDesign.Tertiary}
|
|
23
|
+
onClick={this.toggleAllHandler}
|
|
24
|
+
onKeyDown={this.toggleKeyAllHandler}
|
|
25
|
+
accessibleName={this.toggleAllText}>
|
|
26
|
+
{this.toggleAllText}
|
|
27
|
+
</UDExButton>
|
|
28
|
+
}
|
|
29
|
+
</div>
|
|
30
|
+
<div className={`${rootClass}__content`}>
|
|
31
|
+
{this.items.map(itemInfo =>
|
|
32
|
+
<slot name={itemInfo.item._individualSlot}></slot>
|
|
33
|
+
)}
|
|
34
|
+
</div>
|
|
35
|
+
</div>
|
|
36
|
+
);
|
|
37
|
+
}
|
package/src/AssetsVariables.ts
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import { getScopedVarName } from "@ui5/webcomponents-base/dist/CustomElementsScope.js";
|
|
2
|
+
import getEffectiveScrollbarStyle from "./utils/getEffectiveScrollbarStyle.js";
|
|
2
3
|
|
|
3
|
-
const variablesOverwrite =
|
|
4
|
+
const variablesOverwrite = `
|
|
5
|
+
${getEffectiveScrollbarStyle()}
|
|
6
|
+
|
|
7
|
+
:root {
|
|
4
8
|
/* Browser Scrollbar */
|
|
5
9
|
${getScopedVarName("--browser_scrollbar_border_radius")}: var(--udexRadiusM, 8px);
|
|
6
10
|
|
package/src/Avatar.ts
CHANGED
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
2
|
-
import
|
|
2
|
+
import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
|
|
3
3
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
4
4
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
5
5
|
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
6
6
|
import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
|
|
7
|
-
import Avatar from "@ui5/webcomponents/dist/Avatar.js";
|
|
8
7
|
import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
|
|
9
8
|
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
10
9
|
import { ATTENTION_BADGE, AVATAR_TEXT, DISABLED } from "./generated/i18n/i18n-defaults.js";
|
|
11
|
-
|
|
10
|
+
import type AvatarColorScheme from "@ui5/webcomponents/dist/types/AvatarColorScheme.js";
|
|
12
11
|
// Template
|
|
13
|
-
import AvatarTemplate from "./
|
|
12
|
+
import AvatarTemplate from "./AvatarTemplate.js";
|
|
14
13
|
|
|
15
14
|
// Styles
|
|
16
15
|
import AvatarCss from "./generated/themes/Avatar.css.js";
|
|
@@ -42,18 +41,18 @@ export enum UDExAvatarSize {
|
|
|
42
41
|
XL = "XL",
|
|
43
42
|
}
|
|
44
43
|
|
|
45
|
-
const
|
|
44
|
+
const UDExToUi5ColorSchemeMap = {
|
|
46
45
|
Mango: "Accent1",
|
|
47
46
|
Red: "Accent2",
|
|
48
47
|
Raspberry: "Accent3",
|
|
49
48
|
Pink: "Accent4",
|
|
50
49
|
Indigo: "Accent5",
|
|
51
50
|
Blue: "Accent6",
|
|
51
|
+
Transparent: "Accent6",
|
|
52
|
+
Neutral: "Accent6",
|
|
52
53
|
Teal: "Accent7",
|
|
53
54
|
Green: "Accent8",
|
|
54
55
|
Grey: "Accent10",
|
|
55
|
-
Transparent: "Accent6",
|
|
56
|
-
Neutral: "Accent6",
|
|
57
56
|
};
|
|
58
57
|
|
|
59
58
|
/**
|
|
@@ -75,10 +74,9 @@ const udexToUi5ColorSchemeMap = {
|
|
|
75
74
|
*/
|
|
76
75
|
@customElement({
|
|
77
76
|
tag: "udex-avatar",
|
|
78
|
-
renderer:
|
|
77
|
+
renderer: jsxRenderer,
|
|
79
78
|
styles: AvatarCss,
|
|
80
79
|
template: AvatarTemplate,
|
|
81
|
-
dependencies: [Avatar],
|
|
82
80
|
})
|
|
83
81
|
|
|
84
82
|
/**
|
|
@@ -233,8 +231,8 @@ class UDExAvatar extends UI5Element {
|
|
|
233
231
|
return this.getAttribute("color-scheme") as UDExAvatarColorScheme || this.colorScheme;
|
|
234
232
|
}
|
|
235
233
|
|
|
236
|
-
get getUDExAvatarColorScheme():
|
|
237
|
-
return
|
|
234
|
+
get getUDExAvatarColorScheme(): AvatarColorScheme {
|
|
235
|
+
return UDExToUi5ColorSchemeMap[this.colorScheme] as AvatarColorScheme;
|
|
238
236
|
}
|
|
239
237
|
|
|
240
238
|
get imageSlot(): boolean {
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type Avatar from "./Avatar.js";
|
|
2
|
+
import UI5Avatar from "@ui5/webcomponents/dist/Avatar.js";
|
|
3
|
+
|
|
4
|
+
export default function AvatarTemplate(this: Avatar) {
|
|
5
|
+
return (
|
|
6
|
+
<UI5Avatar
|
|
7
|
+
class={this.udexAvatarClass}
|
|
8
|
+
accessibleName={this.avatarAccessibleName}
|
|
9
|
+
colorScheme={this.getUDExAvatarColorScheme}
|
|
10
|
+
onClick={this.handleClick}
|
|
11
|
+
disabled={this.disabled}
|
|
12
|
+
initials={this.initials}
|
|
13
|
+
interactive={this.interactive}
|
|
14
|
+
fallbackIcon={this.fallbackIcon}
|
|
15
|
+
icon={this.icon}
|
|
16
|
+
shape={this.shape}
|
|
17
|
+
size={this.size}>
|
|
18
|
+
{this.imageSlot && <slot></slot>}
|
|
19
|
+
{this.badgeSlot && <slot name="badge" slot="badge"></slot>}
|
|
20
|
+
</UI5Avatar>
|
|
21
|
+
);
|
|
22
|
+
}
|
package/src/Badge.ts
CHANGED
|
@@ -2,25 +2,21 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
|
2
2
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
3
3
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
4
4
|
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
|
|
8
|
-
import BadgeTemplate from "./generated/templates/BadgeTemplate.lit.js";
|
|
9
|
-
|
|
10
|
-
// Styles
|
|
11
|
-
import BadgeCss from "./generated/themes/Badge.css.js";
|
|
5
|
+
import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
|
|
6
|
+
import BadgeTemplate from "./BadgeTemplate.js";
|
|
12
7
|
import UDExIconPlacement from "./types/IconPlacement.js";
|
|
13
|
-
|
|
14
8
|
import {
|
|
15
9
|
UDExNumberBadgeDesign, UDExSizeBadgeDesign, UDExTextBadgeDesign, UDExTypeBadgeDesign,
|
|
16
10
|
} from "./types/BadgeDesign.js";
|
|
17
11
|
|
|
12
|
+
// Styles
|
|
13
|
+
import BadgeCss from "./generated/themes/Badge.css.js";
|
|
14
|
+
|
|
18
15
|
/**
|
|
19
16
|
* @class
|
|
20
17
|
*
|
|
21
18
|
* <h3 class="comment-api-title">Overview</h3>
|
|
22
19
|
*
|
|
23
|
-
*
|
|
24
20
|
* <h3>Usage</h3>
|
|
25
21
|
*
|
|
26
22
|
* For the <code>udex-badge</code>
|
|
@@ -34,11 +30,11 @@ import {
|
|
|
34
30
|
*/
|
|
35
31
|
@customElement({
|
|
36
32
|
tag: "udex-badge",
|
|
37
|
-
renderer:
|
|
33
|
+
renderer: jsxRenderer,
|
|
38
34
|
styles: BadgeCss,
|
|
39
35
|
template: BadgeTemplate,
|
|
40
|
-
dependencies: [Icon],
|
|
41
36
|
})
|
|
37
|
+
|
|
42
38
|
class UDExBadge extends UI5Element {
|
|
43
39
|
/**
|
|
44
40
|
* Defines the type of the component.
|
|
@@ -61,7 +57,7 @@ class UDExBadge extends UI5Element {
|
|
|
61
57
|
/**
|
|
62
58
|
* Defines the design of text type component.
|
|
63
59
|
*
|
|
64
|
-
* @default "
|
|
60
|
+
* @default "Information"
|
|
65
61
|
* @public
|
|
66
62
|
*/
|
|
67
63
|
@property()
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type Badge from "./Badge.js";
|
|
2
|
+
import UI5Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
3
|
+
|
|
4
|
+
export default function BadgeTemplate(this: Badge) {
|
|
5
|
+
return (
|
|
6
|
+
<div className={this.badgeClasses}>
|
|
7
|
+
{this.startIcon &&
|
|
8
|
+
<UI5Icon
|
|
9
|
+
class="udex-badge__icon udex-badge__icon--start"
|
|
10
|
+
name={this.icon}>
|
|
11
|
+
</UI5Icon>
|
|
12
|
+
}
|
|
13
|
+
<slot></slot>
|
|
14
|
+
{this.endIcon &&
|
|
15
|
+
<UI5Icon
|
|
16
|
+
class="udex-badge__icon udex-badge__icon--end"
|
|
17
|
+
name={this.icon}>
|
|
18
|
+
</UI5Icon>
|
|
19
|
+
}
|
|
20
|
+
</div>
|
|
21
|
+
);
|
|
22
|
+
}
|
package/src/Carousel.ts
CHANGED
|
@@ -2,38 +2,44 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
|
2
2
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
3
3
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
4
4
|
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
5
|
-
import
|
|
5
|
+
import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
|
|
6
6
|
import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
|
|
7
7
|
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
8
8
|
import {
|
|
9
|
-
isUp,
|
|
10
|
-
isDown,
|
|
11
|
-
isRight,
|
|
12
|
-
isLeft,
|
|
9
|
+
isUp, isDown, isRight, isLeft,
|
|
13
10
|
} from "@ui5/webcomponents-base/dist/Keys.js";
|
|
14
|
-
import
|
|
15
|
-
import {
|
|
16
|
-
CAROUSEL_NEXT_ARROW_TEXT,
|
|
17
|
-
CAROUSEL_PREVIOUS_ARROW_TEXT,
|
|
18
|
-
} from "./generated/i18n/i18n-defaults.js";
|
|
19
|
-
import "@ui5/webcomponents-icons/dist/slim-arrow-left.js";
|
|
20
|
-
import "@ui5/webcomponents-icons/dist/slim-arrow-right.js";
|
|
11
|
+
import { CAROUSEL_NEXT_ARROW_TEXT, CAROUSEL_PREVIOUS_ARROW_TEXT } from "./generated/i18n/i18n-defaults.js";
|
|
21
12
|
import redirectAttributes from "./utils/redirectAttributes.js";
|
|
13
|
+
import type UI5Carousel from "@ui5/webcomponents/dist/Carousel.js";
|
|
22
14
|
|
|
23
|
-
import CarouselTemplate from "./
|
|
15
|
+
import CarouselTemplate from "./CarouselTemplate.js";
|
|
24
16
|
|
|
25
17
|
// Styles
|
|
26
18
|
import CarouselCss from "./generated/themes/Carousel.css.js";
|
|
27
|
-
import UDExButton from "./Button.js";
|
|
28
19
|
|
|
29
20
|
export enum UDExCarouselNavigationPosition {
|
|
30
21
|
top = "top",
|
|
31
22
|
bottom = "bottom",
|
|
32
23
|
}
|
|
33
24
|
|
|
25
|
+
export enum UDExCarouselButtonDesign {
|
|
26
|
+
Secondary = "Secondary",
|
|
27
|
+
Tertiary = "Tertiary",
|
|
28
|
+
}
|
|
29
|
+
|
|
34
30
|
/**
|
|
35
31
|
* @class
|
|
36
32
|
*
|
|
33
|
+
* <h3 class="comment-api-title">Overview</h3>
|
|
34
|
+
*
|
|
35
|
+
*
|
|
36
|
+
* <h3>Usage</h3>
|
|
37
|
+
*
|
|
38
|
+
* For the <code>udex-carousel</code>
|
|
39
|
+
* <h3>ES6 Module Import</h3>
|
|
40
|
+
*
|
|
41
|
+
* <code>import "@sapudex/web-components/dist/Carousel.js";</code>
|
|
42
|
+
*
|
|
37
43
|
* @constructor
|
|
38
44
|
* @extends UI5Element
|
|
39
45
|
* @tagname udex-carousel
|
|
@@ -41,11 +47,11 @@ export enum UDExCarouselNavigationPosition {
|
|
|
41
47
|
*/
|
|
42
48
|
@customElement({
|
|
43
49
|
tag: "udex-carousel",
|
|
44
|
-
renderer:
|
|
50
|
+
renderer: jsxRenderer,
|
|
45
51
|
styles: CarouselCss,
|
|
46
52
|
template: CarouselTemplate,
|
|
47
|
-
dependencies: [UI5Carousel, UDExButton],
|
|
48
53
|
})
|
|
54
|
+
|
|
49
55
|
class UDExCarousel extends UI5Element {
|
|
50
56
|
/**
|
|
51
57
|
* Defines the position of the navigation.
|
|
@@ -100,11 +106,11 @@ class UDExCarousel extends UI5Element {
|
|
|
100
106
|
@i18n("@sapudex/web-components")
|
|
101
107
|
static i18nBundle: I18nBundle;
|
|
102
108
|
|
|
103
|
-
get nextPageText() {
|
|
109
|
+
get nextPageText(): string {
|
|
104
110
|
return UDExCarousel.i18nBundle.getText(CAROUSEL_NEXT_ARROW_TEXT);
|
|
105
111
|
}
|
|
106
112
|
|
|
107
|
-
get previousPageText() {
|
|
113
|
+
get previousPageText(): string {
|
|
108
114
|
return UDExCarousel.i18nBundle.getText(CAROUSEL_PREVIOUS_ARROW_TEXT);
|
|
109
115
|
}
|
|
110
116
|
|
|
@@ -114,24 +120,24 @@ class UDExCarousel extends UI5Element {
|
|
|
114
120
|
return `${classes} udex-carousel__navigation--${this.navigationPlacement}`;
|
|
115
121
|
}
|
|
116
122
|
|
|
117
|
-
get buttonDesign() {
|
|
123
|
+
get buttonDesign(): UDExCarouselButtonDesign {
|
|
118
124
|
return this.navigationPlacement === UDExCarouselNavigationPosition.top
|
|
119
|
-
?
|
|
120
|
-
:
|
|
125
|
+
? UDExCarouselButtonDesign.Secondary
|
|
126
|
+
: UDExCarouselButtonDesign.Tertiary;
|
|
121
127
|
}
|
|
122
128
|
|
|
123
|
-
get showNavigationButtons() {
|
|
129
|
+
get showNavigationButtons(): { top: boolean; bottom: boolean } {
|
|
124
130
|
return {
|
|
125
131
|
top: this.navigationPlacement === UDExCarouselNavigationPosition.top,
|
|
126
132
|
bottom: this.navigationPlacement === UDExCarouselNavigationPosition.bottom,
|
|
127
133
|
};
|
|
128
134
|
}
|
|
129
135
|
|
|
130
|
-
get _hidePageIndicator() {
|
|
136
|
+
get _hidePageIndicator(): boolean {
|
|
131
137
|
return this.navigationPlacement === UDExCarouselNavigationPosition.top;
|
|
132
138
|
}
|
|
133
139
|
|
|
134
|
-
get _carousel() {
|
|
140
|
+
get _carousel(): UI5Carousel | null {
|
|
135
141
|
return this.shadowRoot!.querySelector<UI5Carousel>("[ui5-carousel]");
|
|
136
142
|
}
|
|
137
143
|
|