@sapudex/web-components 2.60.0 → 2.62.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/AccordionSpotlight.cy.tsx +43 -2
- package/cypress/specs/Carousel.cy.tsx +134 -0
- package/cypress/specs/CountrySelector.cy.tsx +233 -6
- package/cypress/specs/FilterMenu.cy.tsx +39 -45
- package/cypress/specs/List.cy.tsx +624 -10
- package/cypress/specs/ListItem.cy.tsx +50 -0
- package/cypress/specs/SecondaryNavigationDesktop.cy.tsx +52 -3
- package/cypress/specs/SelectBox.cy.tsx +276 -136
- package/cypress/specs/SelectBoxAccessibility.cy.tsx +3109 -0
- package/cypress/specs/SideNavigation.cy.tsx +509 -0
- package/cypress/specs/Table.cy.tsx +90 -0
- package/cypress/specs/TagGroup.cy.tsx +168 -0
- package/cypress/support/component-imports.instrumented.ts +6 -0
- package/cypress/support/component-imports.src.ts +6 -0
- package/dist/AccordionSpotlight.d.ts +7 -2
- package/dist/AccordionSpotlight.js +31 -6
- package/dist/AccordionSpotlight.js.map +1 -1
- package/dist/AccordionSpotlightItem.d.ts +3 -1
- package/dist/AccordionSpotlightItem.js +3 -1
- package/dist/AccordionSpotlightItem.js.map +1 -1
- package/dist/Carousel.d.ts +2 -0
- package/dist/Carousel.js +35 -4
- package/dist/Carousel.js.map +1 -1
- package/dist/CountrySelector.js +1 -3
- package/dist/CountrySelector.js.map +1 -1
- package/dist/List.d.ts +2 -0
- package/dist/List.js +22 -4
- package/dist/List.js.map +1 -1
- package/dist/ListGroupHeader.js +5 -1
- package/dist/ListGroupHeader.js.map +1 -1
- package/dist/ListGroupHeaderBase.d.ts +2 -0
- package/dist/ListGroupHeaderBase.js +15 -2
- package/dist/ListGroupHeaderBase.js.map +1 -1
- package/dist/ListGroupHeaderTemplate.js +14 -22
- package/dist/ListGroupHeaderTemplate.js.map +1 -1
- package/dist/ListItem.d.ts +1 -2
- package/dist/ListItem.js +14 -12
- package/dist/ListItem.js.map +1 -1
- package/dist/ListItemBase.d.ts +5 -0
- package/dist/ListItemBase.js +11 -1
- package/dist/ListItemBase.js.map +1 -1
- package/dist/ListItemTemplate.js +1 -1
- package/dist/ListItemTemplate.js.map +1 -1
- package/dist/ListSelectAllTemplate.js +1 -1
- package/dist/ListSelectAllTemplate.js.map +1 -1
- package/dist/ListTemplate.js +2 -1
- package/dist/ListTemplate.js.map +1 -1
- package/dist/Pagination.d.ts +0 -1
- package/dist/Pagination.js +2 -2
- package/dist/Pagination.js.map +1 -1
- package/dist/Search.d.ts +13 -3
- package/dist/Search.js +36 -11
- package/dist/Search.js.map +1 -1
- package/dist/SearchableListBase.d.ts +2 -0
- package/dist/SearchableListBase.js +13 -3
- package/dist/SearchableListBase.js.map +1 -1
- package/dist/SearchableListBaseTemplate.js +42 -34
- package/dist/SearchableListBaseTemplate.js.map +1 -1
- package/dist/SecondaryNavigation.d.ts +2 -1
- package/dist/SecondaryNavigation.js.map +1 -1
- package/dist/SecondaryNavigationItem.js +12 -6
- package/dist/SecondaryNavigationItem.js.map +1 -1
- package/dist/SecondaryNavigationTemplate.js +1 -2
- package/dist/SecondaryNavigationTemplate.js.map +1 -1
- package/dist/SelectBase.d.ts +18 -33
- package/dist/SelectBase.js +125 -140
- package/dist/SelectBase.js.map +1 -1
- package/dist/SelectBox.d.ts +3 -0
- package/dist/SelectBox.js +19 -7
- package/dist/SelectBox.js.map +1 -1
- package/dist/SelectBoxTemplate.js +3 -3
- package/dist/SelectBoxTemplate.js.map +1 -1
- package/dist/SideNavigation.d.ts +23 -0
- package/dist/SideNavigation.js +39 -0
- package/dist/SideNavigation.js.map +1 -1
- package/dist/SideNavigationItem.d.ts +10 -0
- package/dist/SideNavigationItem.js +69 -0
- package/dist/SideNavigationItem.js.map +1 -1
- package/dist/SideNavigationItemTemplate.d.ts +2 -0
- package/dist/SideNavigationItemTemplate.js +15 -0
- package/dist/SideNavigationItemTemplate.js.map +1 -0
- package/dist/SideNavigationMobile.js +1 -2
- package/dist/SideNavigationMobile.js.map +1 -1
- package/dist/SideNavigationMobileTemplate.js +1 -1
- package/dist/SideNavigationMobileTemplate.js.map +1 -1
- package/dist/SideNavigationSubItem.d.ts +23 -0
- package/dist/SideNavigationSubItem.js +105 -1
- package/dist/SideNavigationSubItem.js.map +1 -1
- package/dist/SideNavigationSubItemTemplate.d.ts +2 -0
- package/dist/SideNavigationSubItemTemplate.js +9 -0
- package/dist/SideNavigationSubItemTemplate.js.map +1 -0
- package/dist/Table.js +1 -1
- package/dist/Table.js.map +1 -1
- package/dist/TableCell.d.ts +8 -2
- package/dist/TableCell.js +13 -11
- package/dist/TableCell.js.map +1 -1
- package/dist/TableCellBase.d.ts +2 -1
- package/dist/TableCellBase.js +9 -0
- package/dist/TableCellBase.js.map +1 -1
- package/dist/TableHeaderCell.d.ts +0 -1
- package/dist/TableHeaderCell.js +0 -4
- package/dist/TableHeaderCell.js.map +1 -1
- package/dist/TableRow.d.ts +10 -0
- package/dist/TableRow.js +23 -0
- package/dist/TableRow.js.map +1 -1
- package/dist/TagGroup.d.ts +3 -0
- package/dist/TagGroup.js +31 -0
- package/dist/TagGroup.js.map +1 -1
- package/dist/TagGroupTemplate.js +1 -1
- package/dist/TagGroupTemplate.js.map +1 -1
- package/dist/UploadItem.js +3 -4
- package/dist/UploadItem.js.map +1 -1
- package/dist/assets/{InputSuggestions-DyNcKgip.js → InputSuggestions-BPKrPqPb.js} +1 -1
- package/dist/assets/{ListItemStandardExpandableTextTemplate-qdKPzaOQ.js → ListItemStandardExpandableTextTemplate-DkdOcCxC.js} +1 -1
- package/dist/assets/{bundle.esm-sUYwSJOp.js → bundle.esm-17Yt5gDr.js} +234 -235
- package/dist/css/themes/AccordionSpotlight.css +1 -1
- package/dist/css/themes/Contact.css +1 -1
- package/dist/css/themes/EventRibbon.css +1 -1
- package/dist/css/themes/Feed.css +1 -1
- package/dist/css/themes/HeroBanner.css +1 -1
- package/dist/css/themes/ImageGridCloud.css +1 -1
- package/dist/css/themes/ImageGridTicker.css +1 -1
- package/dist/css/themes/ImageGridTickerItem.css +1 -1
- package/dist/css/themes/LinkList.css +1 -1
- package/dist/css/themes/ListGroupHeader.css +1 -1
- package/dist/css/themes/MastheadCountrySelector.css +1 -1
- package/dist/css/themes/MastheadItem.css +1 -1
- package/dist/css/themes/MastheadMenu.css +1 -1
- package/dist/css/themes/MastheadMenuItem.css +1 -1
- package/dist/css/themes/MastheadMobileMenu.css +1 -1
- package/dist/css/themes/MastheadProfileMenu.css +1 -1
- package/dist/css/themes/MastheadShell.css +1 -1
- package/dist/css/themes/MessageStrip.css +1 -1
- package/dist/css/themes/Modal.css +1 -1
- package/dist/css/themes/PromoTile.css +1 -1
- package/dist/css/themes/Quote.css +1 -1
- package/dist/css/themes/Review.css +1 -1
- package/dist/css/themes/ReviewItem.css +1 -1
- package/dist/css/themes/SecondaryNavigation.css +1 -1
- package/dist/css/themes/SecondaryNavigationItem.css +1 -1
- package/dist/css/themes/SelectBase.css +1 -1
- package/dist/css/themes/SideNavigation.css +1 -1
- package/dist/css/themes/SideNavigationItem.css +1 -1
- package/dist/css/themes/SideNavigationMobile.css +1 -1
- package/dist/css/themes/SideNavigationSubItem.css +1 -1
- package/dist/css/themes/TabNavigation.css +1 -1
- package/dist/css/themes/Table.css +1 -1
- package/dist/css/themes/TableCellBase.css +1 -1
- package/dist/css/themes/Upload.css +1 -1
- package/dist/css/themes/UploadItem.css +1 -1
- package/dist/custom-elements-internal.json +162 -19
- package/dist/custom-elements.json +151 -26
- 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/themes/AccordionSpotlight.css.d.ts +1 -1
- package/dist/generated/themes/AccordionSpotlight.css.js +1 -1
- package/dist/generated/themes/AccordionSpotlight.css.js.map +1 -1
- package/dist/generated/themes/Contact.css.d.ts +1 -1
- package/dist/generated/themes/Contact.css.js +1 -1
- package/dist/generated/themes/Contact.css.js.map +1 -1
- package/dist/generated/themes/EventRibbon.css.d.ts +1 -1
- package/dist/generated/themes/EventRibbon.css.js +1 -1
- package/dist/generated/themes/EventRibbon.css.js.map +1 -1
- package/dist/generated/themes/Feed.css.d.ts +1 -1
- package/dist/generated/themes/Feed.css.js +1 -1
- package/dist/generated/themes/Feed.css.js.map +1 -1
- package/dist/generated/themes/HeroBanner.css.d.ts +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/ImageGridCloud.css.d.ts +1 -1
- package/dist/generated/themes/ImageGridCloud.css.js +1 -1
- package/dist/generated/themes/ImageGridCloud.css.js.map +1 -1
- package/dist/generated/themes/ImageGridTicker.css.d.ts +1 -1
- package/dist/generated/themes/ImageGridTicker.css.js +1 -1
- package/dist/generated/themes/ImageGridTicker.css.js.map +1 -1
- package/dist/generated/themes/ImageGridTickerItem.css.d.ts +1 -1
- package/dist/generated/themes/ImageGridTickerItem.css.js +1 -1
- package/dist/generated/themes/ImageGridTickerItem.css.js.map +1 -1
- package/dist/generated/themes/LinkList.css.d.ts +1 -1
- package/dist/generated/themes/LinkList.css.js +1 -1
- package/dist/generated/themes/LinkList.css.js.map +1 -1
- package/dist/generated/themes/ListGroupHeader.css.d.ts +1 -1
- package/dist/generated/themes/ListGroupHeader.css.js +1 -1
- package/dist/generated/themes/ListGroupHeader.css.js.map +1 -1
- package/dist/generated/themes/MastheadCountrySelector.css.d.ts +1 -1
- package/dist/generated/themes/MastheadCountrySelector.css.js +1 -1
- 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 +1 -1
- package/dist/generated/themes/MastheadItem.css.js.map +1 -1
- package/dist/generated/themes/MastheadMenu.css.d.ts +1 -1
- package/dist/generated/themes/MastheadMenu.css.js +1 -1
- 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 +1 -1
- 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 +1 -1
- package/dist/generated/themes/MastheadMobileMenu.css.js.map +1 -1
- package/dist/generated/themes/MastheadProfileMenu.css.d.ts +1 -1
- package/dist/generated/themes/MastheadProfileMenu.css.js +1 -1
- 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 +1 -1
- package/dist/generated/themes/MastheadShell.css.js.map +1 -1
- package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
- package/dist/generated/themes/MessageStrip.css.js +1 -1
- package/dist/generated/themes/MessageStrip.css.js.map +1 -1
- package/dist/generated/themes/Modal.css.d.ts +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/PromoTile.css.d.ts +1 -1
- package/dist/generated/themes/PromoTile.css.js +1 -1
- package/dist/generated/themes/PromoTile.css.js.map +1 -1
- package/dist/generated/themes/Quote.css.d.ts +1 -1
- package/dist/generated/themes/Quote.css.js +1 -1
- package/dist/generated/themes/Quote.css.js.map +1 -1
- package/dist/generated/themes/Review.css.d.ts +1 -1
- package/dist/generated/themes/Review.css.js +1 -1
- package/dist/generated/themes/Review.css.js.map +1 -1
- package/dist/generated/themes/ReviewItem.css.d.ts +1 -1
- package/dist/generated/themes/ReviewItem.css.js +1 -1
- package/dist/generated/themes/ReviewItem.css.js.map +1 -1
- package/dist/generated/themes/SecondaryNavigation.css.d.ts +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 +1 -1
- package/dist/generated/themes/SecondaryNavigationItem.css.js +1 -1
- package/dist/generated/themes/SecondaryNavigationItem.css.js.map +1 -1
- package/dist/generated/themes/SelectBase.css.d.ts +1 -1
- package/dist/generated/themes/SelectBase.css.js +1 -1
- package/dist/generated/themes/SelectBase.css.js.map +1 -1
- package/dist/generated/themes/SideNavigation.css.d.ts +1 -1
- package/dist/generated/themes/SideNavigation.css.js +1 -1
- package/dist/generated/themes/SideNavigation.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationItem.css.d.ts +1 -1
- package/dist/generated/themes/SideNavigationItem.css.js +1 -1
- package/dist/generated/themes/SideNavigationItem.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationMobile.css.d.ts +1 -1
- package/dist/generated/themes/SideNavigationMobile.css.js +1 -1
- package/dist/generated/themes/SideNavigationMobile.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationSubItem.css.d.ts +1 -1
- package/dist/generated/themes/SideNavigationSubItem.css.js +1 -1
- package/dist/generated/themes/SideNavigationSubItem.css.js.map +1 -1
- package/dist/generated/themes/TabNavigation.css.d.ts +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/Table.css.d.ts +1 -1
- package/dist/generated/themes/Table.css.js +1 -1
- package/dist/generated/themes/Table.css.js.map +1 -1
- package/dist/generated/themes/TableCellBase.css.d.ts +1 -1
- package/dist/generated/themes/TableCellBase.css.js +1 -1
- package/dist/generated/themes/TableCellBase.css.js.map +1 -1
- package/dist/generated/themes/Upload.css.d.ts +1 -1
- package/dist/generated/themes/Upload.css.js +1 -1
- package/dist/generated/themes/Upload.css.js.map +1 -1
- package/dist/generated/themes/UploadItem.css.d.ts +1 -1
- package/dist/generated/themes/UploadItem.css.js +1 -1
- package/dist/generated/themes/UploadItem.css.js.map +1 -1
- package/dist/messagebundle.properties +3 -0
- package/dist/types/Table.d.ts +6 -2
- package/dist/types/Table.js +7 -2
- package/dist/types/Table.js.map +1 -1
- package/dist/vscode.html-custom-data.json +48 -7
- package/dist/web-types.json +88 -14
- package/package.json +1 -1
- package/run-cypress.js +8 -1
- package/src/AccordionSpotlight.ts +35 -6
- package/src/AccordionSpotlightItem.ts +3 -1
- package/src/Carousel.ts +39 -4
- package/src/CountrySelector.ts +1 -3
- package/src/List.ts +21 -4
- package/src/ListGroupHeader.ts +5 -1
- package/src/ListGroupHeaderBase.ts +16 -2
- package/src/ListGroupHeaderTemplate.tsx +29 -47
- package/src/ListItem.ts +14 -13
- package/src/ListItemBase.ts +14 -1
- package/src/ListItemTemplate.tsx +4 -4
- package/src/ListSelectAllTemplate.tsx +10 -8
- package/src/ListTemplate.tsx +14 -10
- package/src/Pagination.ts +2 -3
- package/src/Search.ts +48 -13
- package/src/SearchableListBase.ts +15 -3
- package/src/SearchableListBaseTemplate.tsx +51 -37
- package/src/SecondaryNavigation.ts +2 -1
- package/src/SecondaryNavigationItem.ts +14 -6
- package/src/SecondaryNavigationTemplate.tsx +4 -6
- package/src/SelectBase.ts +131 -145
- package/src/SelectBox.ts +21 -7
- package/src/SelectBoxTemplate.tsx +10 -9
- package/src/SideNavigation.ts +35 -0
- package/src/SideNavigationItem.ts +77 -0
- package/src/SideNavigationItemTemplate.tsx +97 -0
- package/src/SideNavigationMobile.ts +1 -2
- package/src/SideNavigationMobileTemplate.tsx +2 -1
- package/src/SideNavigationSubItem.ts +119 -2
- package/src/SideNavigationSubItemTemplate.tsx +57 -0
- package/src/Table.ts +1 -2
- package/src/TableCell.ts +9 -12
- package/src/TableCellBase.ts +10 -1
- package/src/TableHeaderCell.ts +0 -5
- package/src/TableRow.ts +20 -0
- package/src/TagGroup.ts +32 -0
- package/src/TagGroupTemplate.tsx +1 -1
- package/src/UploadItem.ts +3 -5
- package/src/generated/i18n/i18n-defaults.ts +2 -2
- package/src/generated/themes/AccordionSpotlight.css.ts +1 -1
- package/src/generated/themes/Contact.css.ts +1 -1
- package/src/generated/themes/EventRibbon.css.ts +1 -1
- package/src/generated/themes/Feed.css.ts +1 -1
- package/src/generated/themes/HeroBanner.css.ts +1 -1
- package/src/generated/themes/ImageGridCloud.css.ts +1 -1
- package/src/generated/themes/ImageGridTicker.css.ts +1 -1
- package/src/generated/themes/ImageGridTickerItem.css.ts +1 -1
- package/src/generated/themes/LinkList.css.ts +1 -1
- package/src/generated/themes/ListGroupHeader.css.ts +1 -1
- package/src/generated/themes/MastheadCountrySelector.css.ts +1 -1
- package/src/generated/themes/MastheadItem.css.ts +1 -1
- package/src/generated/themes/MastheadMenu.css.ts +1 -1
- package/src/generated/themes/MastheadMenuItem.css.ts +1 -1
- package/src/generated/themes/MastheadMobileMenu.css.ts +1 -1
- package/src/generated/themes/MastheadProfileMenu.css.ts +1 -1
- package/src/generated/themes/MastheadShell.css.ts +1 -1
- package/src/generated/themes/MessageStrip.css.ts +1 -1
- package/src/generated/themes/Modal.css.ts +1 -1
- package/src/generated/themes/PromoTile.css.ts +1 -1
- package/src/generated/themes/Quote.css.ts +1 -1
- package/src/generated/themes/Review.css.ts +1 -1
- package/src/generated/themes/ReviewItem.css.ts +1 -1
- package/src/generated/themes/SecondaryNavigation.css.ts +1 -1
- package/src/generated/themes/SecondaryNavigationItem.css.ts +1 -1
- package/src/generated/themes/SelectBase.css.ts +1 -1
- package/src/generated/themes/SideNavigation.css.ts +1 -1
- package/src/generated/themes/SideNavigationItem.css.ts +1 -1
- package/src/generated/themes/SideNavigationMobile.css.ts +1 -1
- package/src/generated/themes/SideNavigationSubItem.css.ts +1 -1
- package/src/generated/themes/TabNavigation.css.ts +1 -1
- package/src/generated/themes/Table.css.ts +1 -1
- package/src/generated/themes/TableCellBase.css.ts +1 -1
- package/src/generated/themes/Upload.css.ts +1 -1
- package/src/generated/themes/UploadItem.css.ts +1 -1
- package/src/i18n/messagebundle.properties +3 -0
- package/src/themes/AccordionSpotlight.css +11 -8
- package/src/themes/Contact.css +1 -1
- package/src/themes/EventRibbon.css +4 -4
- package/src/themes/Feed.css +2 -2
- package/src/themes/HeroBanner.css +3 -3
- package/src/themes/ImageGridCloud.css +1 -1
- package/src/themes/ImageGridTicker.css +1 -1
- package/src/themes/ImageGridTickerItem.css +1 -1
- package/src/themes/LinkList.css +4 -4
- package/src/themes/ListGroupHeader.css +2 -43
- package/src/themes/MastheadCountrySelector.css +1 -1
- package/src/themes/MastheadItem.css +4 -4
- package/src/themes/MastheadMenu.css +1 -1
- package/src/themes/MastheadMenuItem.css +1 -1
- package/src/themes/MastheadMobileMenu.css +2 -2
- package/src/themes/MastheadProfileMenu.css +1 -1
- package/src/themes/MastheadShell.css +4 -4
- package/src/themes/MessageStrip.css +7 -2
- package/src/themes/Modal.css +1 -1
- package/src/themes/PromoTile.css +4 -3
- package/src/themes/Quote.css +2 -2
- package/src/themes/Review.css +2 -2
- package/src/themes/ReviewItem.css +2 -2
- package/src/themes/SecondaryNavigation.css +1 -2
- package/src/themes/SecondaryNavigationItem.css +3 -6
- package/src/themes/SelectBase.css +1 -1
- package/src/themes/SideNavigation.css +31 -8
- package/src/themes/SideNavigationItem.css +100 -22
- package/src/themes/SideNavigationMobile.css +65 -20
- package/src/themes/SideNavigationSubItem.css +15 -54
- package/src/themes/TabNavigation.css +2 -2
- package/src/themes/Table.css +7 -2
- package/src/themes/TableCellBase.css +8 -0
- package/src/themes/Upload.css +1 -1
- package/src/themes/UploadItem.css +1 -1
- package/src/types/Table.ts +6 -2
- package/dist/css/themes/SideNavigationMobileDropdown.css +0 -1
- package/dist/generated/themes/SideNavigationMobileDropdown.css.d.ts +0 -2
- package/dist/generated/themes/SideNavigationMobileDropdown.css.js +0 -8
- package/dist/generated/themes/SideNavigationMobileDropdown.css.js.map +0 -1
- package/src/generated/themes/SideNavigationMobileDropdown.css.ts +0 -9
- package/src/themes/SideNavigationMobileDropdown.css +0 -29
package/dist/ListItemTemplate.js
CHANGED
|
@@ -13,6 +13,6 @@ function ContentList() {
|
|
|
13
13
|
return (_jsxs("div", { class: "udex-list__content-wrap", ...{ "_id": this._id }, "aria-labelledby": `${this._id}-invisibleText`, "aria-label": this.accessibleListItemName, children: [this.flag && (_jsx("div", { class: "udex-list__flag-wrap", children: _jsx("span", { class: "udex-list__flag", style: { backgroundPosition: this.flagPosition } }) })), this.typeNumber && _jsxs("span", { class: "udex-list__number", children: [this.numberOfItem, "."] }), this.typeCircle && _jsx("span", { class: "udex-list__circle", children: "\u2022" }), this.typeIcon && (_jsx(Icon, { name: this._icon, class: "udex-list__icon", "accessible-role": "presentation", "aria-hidden": "true", part: "icon" })), this.image && (_jsxs(UDExAvatar, { class: "udex-list__avatar", part: "avatar", shape: this.imageShape, size: this.imageSize, children: [this.imageBadgeState && (_jsx(UDExStatusBadge, { slot: "badge", "value-state": this.imageBadgeState, size: this.imageSize })), _jsx("img", { src: this.image, alt: this.imageAlt })] })), _jsxs("div", { class: "udex-list__content", part: "content", children: [this.label ? (_jsxs(_Fragment, { children: [_jsxs("div", { class: "udex-list__text-holder", children: [_jsx("span", { part: "title", ...{ innerHTML: this.label } }), this.supportingText && (_jsx("span", { class: "udex-list__supporting-text", part: "supporting", children: this.supportingText })), _jsx("slot", { part: "content" }), this.hasRating && (_jsx(UDExRatingIndicator, { "aria-label": this.ratingAriaLabel, value: this.rating !== undefined ? Number(this.rating) : undefined, "rating-count": this.ratingCount, "total-count": this.totalCount, max: this.ratingMax, display: this._displayRating, disabled: true, readonly: true }))] }), this.additionalText && (_jsx("div", { class: "udex-list__add-text", part: "additional-text", children: this.additionalText })), _jsxs("div", { class: "udex-list__btn-wrap", children: [this.hasFirstIcon && _jsx("slot", { name: "firstIcon", onClick: this._fireIconClickEvent }), this.hasSecondIcon && _jsx("slot", { name: "secondIcon", onClick: this._fireIconClickEvent })] })] })) : (_jsxs(_Fragment, { children: [_jsxs("div", { class: "udex-list__text-holder", children: [_jsx("slot", { part: "content" }), this.supportingText && (_jsx("span", { class: "udex-list__supporting-text", part: "supporting", children: this.supportingText })), this.hasRating && (_jsx(UDExRatingIndicator, { "aria-label": this.ratingAriaLabel, value: this.rating !== undefined ? Number(this.rating) : undefined, "rating-count": this.ratingCount, "total-count": this.totalCount, max: this.ratingMax, display: this._displayRating, disabled: true, readonly: true }))] }), this.additionalText && (_jsx("div", { class: "udex-list__add-text", part: "additional-text", children: this.additionalText })), _jsxs("div", { class: "udex-list__btn-wrap", children: [this.hasFirstIcon && _jsx("slot", { name: "firstIcon", onClick: this._fireIconClickEvent }), this.hasSecondIcon && _jsx("slot", { name: "secondIcon", onClick: this._fireIconClickEvent })] })] })), this.collapsible && (_jsx("div", { class: "udex-list__group-heading__icon-wrapper", children: _jsx(UDExButton, { class: "udex-list__group-heading__icon", size: UDExButtonSize.Small, design: UDExButtonDesign.Tertiary, onMouseDown: this.handleCollapseIconMouseDown, onClick: this.handleCollapseIconClick, tabindex: -1, "accessible-name": this.expandButtonAccessibleName, ...{ "mode": "Interactive" }, icon: slimArrowRight }) }))] }), _jsx("div", { class: "hidden", id: `${this._id}-invisibleText`, children: this.accessibleListItemName })] }));
|
|
14
14
|
}
|
|
15
15
|
export default function ListItemTemplate() {
|
|
16
|
-
return (_jsxs(_Fragment, { children: [this.modeSelected && (_jsxs("div", { part: "item", tabIndex: Number(this._effectiveTabIndex), "aria-disabled": this._ariaDisabled, class: this.className, role: this.roleItem, "aria-checked": this.ariaCheckedValue, "aria-selected": this.ariaSelectedValue, "aria-expanded": this.ariaExpandedValue, "aria-posinset": this._ariaPosInSet || undefined, "aria-setsize": this._ariaSetSize || undefined, onFocusIn: this.handleFocusIn, onFocusOut: this.handleFocusOut, onClick: this.handleItemClick, onMouseDown: this.handleMouseDown, onMouseUp: this.handleMouseUp, onKeyUp: this.handleKeyUp, onKeyDown: this.handleKeyDown, ...{ divider: this.divider, "_id": this._id }, "data-selected": this.selected, children: [this.modeMultiSelect && (_jsx(UDExCheckbox, { class: "udex-list__checkbox", part: "checkbox", tabindex: -1, indeterminate: this.indeterminate, "accessible-name": `checkbox ${this.stateAccessibleName}`, checked: this.selected, disabled: this.disabled, "aria-hidden": "true" })), this.modeRadioGroup && (_jsx(UDExRadioButton, { class: "udex-list__radio", part: "radio", tabindex: -1, "accessible-name": `radio ${this.stateAccessibleName}`, checked: this.selected, disabled: this.disabled })), ContentList.call(this)] })), this.modeSingleContent && (_jsx("div", { part: "item", role: this.roleItem, "aria-selected": this.
|
|
16
|
+
return (_jsxs(_Fragment, { children: [this.modeSelected && (_jsxs("div", { part: "item", tabIndex: this._useHostAriaRole ? undefined : Number(this._effectiveTabIndex), "aria-disabled": this._useHostAriaRole ? undefined : this._ariaDisabled, class: this.className, role: this.roleItem, "aria-checked": this.ariaCheckedValue, "aria-selected": this.ariaSelectedValue, "aria-expanded": this.ariaExpandedValue, "aria-posinset": this._ariaPosInSet || undefined, "aria-setsize": this._ariaSetSize || undefined, onFocusIn: this.handleFocusIn, onFocusOut: this.handleFocusOut, onClick: this.handleItemClick, onMouseDown: this.handleMouseDown, onMouseUp: this.handleMouseUp, onKeyUp: this.handleKeyUp, onKeyDown: this.handleKeyDown, ...{ divider: this.divider, "_id": this._id }, "data-selected": this.selected, children: [this.modeMultiSelect && (_jsx(UDExCheckbox, { class: "udex-list__checkbox", part: "checkbox", tabindex: -1, indeterminate: this.indeterminate, "accessible-name": this._useHostAriaRole ? undefined : `checkbox ${this.stateAccessibleName}`, checked: this.selected, disabled: this.disabled, "aria-hidden": "true" })), this.modeRadioGroup && (_jsx(UDExRadioButton, { class: "udex-list__radio", part: "radio", tabindex: -1, "accessible-name": `radio ${this.stateAccessibleName}`, checked: this.selected, disabled: this.disabled })), ContentList.call(this)] })), this.modeSingleContent && (_jsx("div", { part: "item", role: this.roleItem, "aria-selected": this.ariaSelectedValue, class: this.className, children: ContentList.call(this) }))] }));
|
|
17
17
|
}
|
|
18
18
|
//# sourceMappingURL=ListItemTemplate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListItemTemplate.js","sourceRoot":"","sources":["../src/ListItemTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { AriaRole } from \"@ui5/webcomponents-base/dist/types.js\";\nimport type UDExListItem from \"./ListItem.js\";\nimport UDExCheckbox from \"./Checkbox.js\";\nimport UDExRadioButton from \"./RadioButton.js\";\nimport Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport UDExAvatar from \"./Avatar.js\";\nimport UDExStatusBadge from \"./StatusBadge.js\";\nimport UDExRatingIndicator from \"./RatingIndicator.js\";\nimport UDExButton from \"./Button.js\";\nimport UDExButtonSize from \"./types/ButtonSize.js\";\nimport UDExButtonDesign from \"./types/ButtonDesign.js\";\nimport slimArrowRight from \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\n\nfunction ContentList(this: UDExListItem) {\n return (\n <div\n class=\"udex-list__content-wrap\"\n {...({ \"_id\": this._id } as object)}\n aria-labelledby={`${this._id}-invisibleText`}\n aria-label={this.accessibleListItemName}>\n {this.flag && (\n <div class=\"udex-list__flag-wrap\">\n <span class=\"udex-list__flag\" style={{ backgroundPosition: this.flagPosition }}></span>\n </div>\n )}\n {this.typeNumber && <span class=\"udex-list__number\">{this.numberOfItem}.</span>}\n {this.typeCircle && <span class=\"udex-list__circle\">•</span>}\n {this.typeIcon && (\n <Icon\n name={this._icon}\n class=\"udex-list__icon\"\n accessible-role=\"presentation\"\n aria-hidden=\"true\"\n part=\"icon\"\n />\n )}\n {this.image && (\n <UDExAvatar\n class=\"udex-list__avatar\"\n part=\"avatar\"\n shape={this.imageShape}\n size={this.imageSize}>\n {this.imageBadgeState && (\n <UDExStatusBadge\n slot=\"badge\"\n value-state={this.imageBadgeState}\n size={this.imageSize}\n />\n )}\n <img src={this.image} alt={this.imageAlt} />\n </UDExAvatar>\n )}\n <div class=\"udex-list__content\" part=\"content\">\n {this.label ? (\n <>\n <div class=\"udex-list__text-holder\">\n <span part=\"title\" {...({ innerHTML: this.label } as object)}></span>\n {this.supportingText && (\n <span class=\"udex-list__supporting-text\" part=\"supporting\">{this.supportingText}</span>\n )}\n <slot part=\"content\"></slot>\n {this.hasRating && (\n <UDExRatingIndicator\n aria-label={this.ratingAriaLabel}\n value={this.rating !== undefined ? Number(this.rating) : undefined}\n rating-count={this.ratingCount}\n total-count={this.totalCount}\n max={this.ratingMax}\n display={this._displayRating}\n disabled\n readonly\n />\n )}\n </div>\n {this.additionalText && (\n <div class=\"udex-list__add-text\" part=\"additional-text\">{this.additionalText}</div>\n )}\n <div class=\"udex-list__btn-wrap\">\n {this.hasFirstIcon && <slot name=\"firstIcon\" onClick={this._fireIconClickEvent as EventListener}></slot>}\n {this.hasSecondIcon && <slot name=\"secondIcon\" onClick={this._fireIconClickEvent as EventListener}></slot>}\n </div>\n </>\n ) : (\n <>\n <div class=\"udex-list__text-holder\">\n <slot part=\"content\"></slot>\n {this.supportingText && (\n <span class=\"udex-list__supporting-text\" part=\"supporting\">{this.supportingText}</span>\n )}\n {this.hasRating && (\n <UDExRatingIndicator\n aria-label={this.ratingAriaLabel}\n value={this.rating !== undefined ? Number(this.rating) : undefined}\n rating-count={this.ratingCount}\n total-count={this.totalCount}\n max={this.ratingMax}\n display={this._displayRating}\n disabled\n readonly\n />\n )}\n </div>\n {this.additionalText && (\n <div class=\"udex-list__add-text\" part=\"additional-text\">{this.additionalText}</div>\n )}\n <div class=\"udex-list__btn-wrap\">\n {this.hasFirstIcon && <slot name=\"firstIcon\" onClick={this._fireIconClickEvent as EventListener}></slot>}\n {this.hasSecondIcon && <slot name=\"secondIcon\" onClick={this._fireIconClickEvent as EventListener}></slot>}\n </div>\n </>\n )}\n {this.collapsible && (\n <div class=\"udex-list__group-heading__icon-wrapper\">\n <UDExButton\n class=\"udex-list__group-heading__icon\"\n size={UDExButtonSize.Small}\n design={UDExButtonDesign.Tertiary}\n onMouseDown={this.handleCollapseIconMouseDown}\n onClick={this.handleCollapseIconClick as EventListener}\n tabindex={-1}\n accessible-name={this.expandButtonAccessibleName}\n {...({ \"mode\": \"Interactive\" } as object)}\n icon={slimArrowRight}\n />\n </div>\n )}\n </div>\n <div class=\"hidden\" id={`${this._id}-invisibleText`}>{this.accessibleListItemName}</div>\n </div>\n );\n}\n\nexport default function ListItemTemplate(this: UDExListItem) {\n return (\n <>\n {this.modeSelected && (\n <div\n part=\"item\"\n tabIndex={Number(this._effectiveTabIndex)}\n aria-disabled={this._ariaDisabled}\n class={this.className}\n role={this.roleItem as AriaRole}\n aria-checked={this.ariaCheckedValue}\n aria-selected={this.ariaSelectedValue}\n aria-expanded={this.ariaExpandedValue}\n aria-posinset={this._ariaPosInSet || undefined}\n aria-setsize={this._ariaSetSize || undefined}\n onFocusIn={this.handleFocusIn}\n onFocusOut={this.handleFocusOut}\n onClick={this.handleItemClick}\n onMouseDown={this.handleMouseDown}\n onMouseUp={this.handleMouseUp}\n onKeyUp={this.handleKeyUp}\n onKeyDown={this.handleKeyDown}\n {...({ divider: this.divider, \"_id\": this._id } as object)}\n data-selected={this.selected}>\n {this.modeMultiSelect && (\n <UDExCheckbox\n class=\"udex-list__checkbox\"\n part=\"checkbox\"\n tabindex={-1}\n indeterminate={this.indeterminate}\n accessible-name={`checkbox ${this.stateAccessibleName}`}\n checked={this.selected}\n disabled={this.disabled}\n aria-hidden=\"true\"\n />\n )}\n {this.modeRadioGroup && (\n <UDExRadioButton\n class=\"udex-list__radio\"\n part=\"radio\"\n tabindex={-1}\n accessible-name={`radio ${this.stateAccessibleName}`}\n checked={this.selected}\n disabled={this.disabled}\n />\n )}\n {ContentList.call(this)}\n </div>\n )}\n {this.modeSingleContent && (\n <div\n part=\"item\"\n role={this.roleItem as AriaRole}\n aria-selected={this.selected}\n class={this.className}>\n {ContentList.call(this)}\n </div>\n )}\n </>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"ListItemTemplate.js","sourceRoot":"","sources":["../src/ListItemTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { AriaRole } from \"@ui5/webcomponents-base/dist/types.js\";\nimport type UDExListItem from \"./ListItem.js\";\nimport UDExCheckbox from \"./Checkbox.js\";\nimport UDExRadioButton from \"./RadioButton.js\";\nimport Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport UDExAvatar from \"./Avatar.js\";\nimport UDExStatusBadge from \"./StatusBadge.js\";\nimport UDExRatingIndicator from \"./RatingIndicator.js\";\nimport UDExButton from \"./Button.js\";\nimport UDExButtonSize from \"./types/ButtonSize.js\";\nimport UDExButtonDesign from \"./types/ButtonDesign.js\";\nimport slimArrowRight from \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\n\nfunction ContentList(this: UDExListItem) {\n return (\n <div\n class=\"udex-list__content-wrap\"\n {...({ \"_id\": this._id } as object)}\n aria-labelledby={`${this._id}-invisibleText`}\n aria-label={this.accessibleListItemName}>\n {this.flag && (\n <div class=\"udex-list__flag-wrap\">\n <span class=\"udex-list__flag\" style={{ backgroundPosition: this.flagPosition }}></span>\n </div>\n )}\n {this.typeNumber && <span class=\"udex-list__number\">{this.numberOfItem}.</span>}\n {this.typeCircle && <span class=\"udex-list__circle\">•</span>}\n {this.typeIcon && (\n <Icon\n name={this._icon}\n class=\"udex-list__icon\"\n accessible-role=\"presentation\"\n aria-hidden=\"true\"\n part=\"icon\"\n />\n )}\n {this.image && (\n <UDExAvatar\n class=\"udex-list__avatar\"\n part=\"avatar\"\n shape={this.imageShape}\n size={this.imageSize}>\n {this.imageBadgeState && (\n <UDExStatusBadge\n slot=\"badge\"\n value-state={this.imageBadgeState}\n size={this.imageSize}\n />\n )}\n <img src={this.image} alt={this.imageAlt} />\n </UDExAvatar>\n )}\n <div class=\"udex-list__content\" part=\"content\">\n {this.label ? (\n <>\n <div class=\"udex-list__text-holder\">\n <span part=\"title\" {...({ innerHTML: this.label } as object)}></span>\n {this.supportingText && (\n <span class=\"udex-list__supporting-text\" part=\"supporting\">{this.supportingText}</span>\n )}\n <slot part=\"content\"></slot>\n {this.hasRating && (\n <UDExRatingIndicator\n aria-label={this.ratingAriaLabel}\n value={this.rating !== undefined ? Number(this.rating) : undefined}\n rating-count={this.ratingCount}\n total-count={this.totalCount}\n max={this.ratingMax}\n display={this._displayRating}\n disabled\n readonly\n />\n )}\n </div>\n {this.additionalText && (\n <div class=\"udex-list__add-text\" part=\"additional-text\">{this.additionalText}</div>\n )}\n <div class=\"udex-list__btn-wrap\">\n {this.hasFirstIcon && <slot name=\"firstIcon\" onClick={this._fireIconClickEvent as EventListener}></slot>}\n {this.hasSecondIcon && <slot name=\"secondIcon\" onClick={this._fireIconClickEvent as EventListener}></slot>}\n </div>\n </>\n ) : (\n <>\n <div class=\"udex-list__text-holder\">\n <slot part=\"content\"></slot>\n {this.supportingText && (\n <span class=\"udex-list__supporting-text\" part=\"supporting\">{this.supportingText}</span>\n )}\n {this.hasRating && (\n <UDExRatingIndicator\n aria-label={this.ratingAriaLabel}\n value={this.rating !== undefined ? Number(this.rating) : undefined}\n rating-count={this.ratingCount}\n total-count={this.totalCount}\n max={this.ratingMax}\n display={this._displayRating}\n disabled\n readonly\n />\n )}\n </div>\n {this.additionalText && (\n <div class=\"udex-list__add-text\" part=\"additional-text\">{this.additionalText}</div>\n )}\n <div class=\"udex-list__btn-wrap\">\n {this.hasFirstIcon && <slot name=\"firstIcon\" onClick={this._fireIconClickEvent as EventListener}></slot>}\n {this.hasSecondIcon && <slot name=\"secondIcon\" onClick={this._fireIconClickEvent as EventListener}></slot>}\n </div>\n </>\n )}\n {this.collapsible && (\n <div class=\"udex-list__group-heading__icon-wrapper\">\n <UDExButton\n class=\"udex-list__group-heading__icon\"\n size={UDExButtonSize.Small}\n design={UDExButtonDesign.Tertiary}\n onMouseDown={this.handleCollapseIconMouseDown}\n onClick={this.handleCollapseIconClick as EventListener}\n tabindex={-1}\n accessible-name={this.expandButtonAccessibleName}\n {...({ \"mode\": \"Interactive\" } as object)}\n icon={slimArrowRight}\n />\n </div>\n )}\n </div>\n <div class=\"hidden\" id={`${this._id}-invisibleText`}>{this.accessibleListItemName}</div>\n </div>\n );\n}\n\nexport default function ListItemTemplate(this: UDExListItem) {\n return (\n <>\n {this.modeSelected && (\n <div\n part=\"item\"\n tabIndex={this._useHostAriaRole ? undefined : Number(this._effectiveTabIndex)}\n aria-disabled={this._useHostAriaRole ? undefined : this._ariaDisabled}\n class={this.className}\n role={this.roleItem as AriaRole}\n aria-checked={this.ariaCheckedValue}\n aria-selected={this.ariaSelectedValue}\n aria-expanded={this.ariaExpandedValue}\n aria-posinset={this._ariaPosInSet || undefined}\n aria-setsize={this._ariaSetSize || undefined}\n onFocusIn={this.handleFocusIn}\n onFocusOut={this.handleFocusOut}\n onClick={this.handleItemClick}\n onMouseDown={this.handleMouseDown}\n onMouseUp={this.handleMouseUp}\n onKeyUp={this.handleKeyUp}\n onKeyDown={this.handleKeyDown}\n {...({ divider: this.divider, \"_id\": this._id } as object)}\n data-selected={this.selected}>\n {this.modeMultiSelect && (\n <UDExCheckbox\n class=\"udex-list__checkbox\"\n part=\"checkbox\"\n tabindex={-1}\n indeterminate={this.indeterminate}\n accessible-name={this._useHostAriaRole ? undefined : `checkbox ${this.stateAccessibleName}`}\n checked={this.selected}\n disabled={this.disabled}\n aria-hidden=\"true\"\n />\n )}\n {this.modeRadioGroup && (\n <UDExRadioButton\n class=\"udex-list__radio\"\n part=\"radio\"\n tabindex={-1}\n accessible-name={`radio ${this.stateAccessibleName}`}\n checked={this.selected}\n disabled={this.disabled}\n />\n )}\n {ContentList.call(this)}\n </div>\n )}\n {this.modeSingleContent && (\n <div\n part=\"item\"\n role={this.roleItem as AriaRole}\n aria-selected={this.ariaSelectedValue}\n class={this.className}>\n {ContentList.call(this)}\n </div>\n )}\n </>\n );\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "@ui5/webcomponents-base/jsx-runtime";
|
|
2
2
|
import UDExListItem from "./ListItem.js";
|
|
3
3
|
export default function ListSelectAllTemplate() {
|
|
4
|
-
return (_jsx("div", { part: "item", class: "udex-list__group", role: "group", "aria-labelledby": "group-select-all", children: _jsxs("div", { role: "listbox", "aria-label": "select-all-group", class: this.groupListClassName, "onui5-item-press": this.handleSelectAllGroupItemsPress, children: [_jsx(UDExListItem, { role: "group", part: "group-item", "accessible-role": "option", mode: this.multiselectMode, onClick: this.handleSelectAllPress, class: this.className, selected: this.selected, "aria-current": this.selected, indeterminate: this.indeterminate, controlled: this.controlled, onKeyDown: this.handleKeyDownPress, "_tab-index": Number(this._effectiveTabIndex), "_additional-class-name": this.additionalClassName, supportingText: this.supportingText, divider: true, children: this.selectAllLabel }), _jsx("slot", {})] }) }));
|
|
4
|
+
return (_jsx("div", { part: "item", class: "udex-list__group", role: this._useHostAriaRole ? "presentation" : "group", "aria-labelledby": this._useHostAriaRole ? undefined : "group-select-all", children: _jsxs("div", { role: this._useHostAriaRole ? "presentation" : "listbox", "aria-label": this._useHostAriaRole ? undefined : "select-all-group", class: this.groupListClassName, "onui5-item-press": this.handleSelectAllGroupItemsPress, children: [_jsx(UDExListItem, { role: this._useHostAriaRole ? "none" : "group", part: "group-item", "accessible-role": "option", _useHostAriaRole: this._useHostAriaRole, label: this._useHostAriaRole ? this.selectAllLabel : undefined, mode: this.multiselectMode, onClick: this.handleSelectAllPress, class: this.className, selected: this.selected, "aria-current": this._useHostAriaRole ? undefined : this.selected, indeterminate: this.indeterminate, controlled: this.controlled, onKeyDown: this.handleKeyDownPress, "_tab-index": Number(this._effectiveTabIndex), "_additional-class-name": this.additionalClassName, supportingText: this.supportingText, divider: true, children: !this._useHostAriaRole && this.selectAllLabel }), this._useHostAriaRole ? _jsx("div", { role: "group", children: _jsx("slot", {}) }) : _jsx("slot", {})] }) }));
|
|
5
5
|
}
|
|
6
6
|
//# sourceMappingURL=ListSelectAllTemplate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListSelectAllTemplate.js","sourceRoot":"","sources":["../src/ListSelectAllTemplate.tsx"],"names":[],"mappings":";AACA,OAAO,YAAY,MAAM,eAAe,CAAC;AAEzC,MAAM,CAAC,OAAO,UAAU,qBAAqB;IAC3C,OAAO,CACL,cACE,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,kBAAkB,EACxB,IAAI,
|
|
1
|
+
{"version":3,"file":"ListSelectAllTemplate.js","sourceRoot":"","sources":["../src/ListSelectAllTemplate.tsx"],"names":[],"mappings":";AACA,OAAO,YAAY,MAAM,eAAe,CAAC;AAEzC,MAAM,CAAC,OAAO,UAAU,qBAAqB;IAC3C,OAAO,CACL,cACE,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,kBAAkB,EACxB,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,qBACrC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB,YACvE,eACE,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,gBAC5C,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB,EAClE,KAAK,EAAE,IAAI,CAAC,kBAAkB,sBACZ,IAAI,CAAC,8BAA8B,aACrD,KAAC,YAAY,IACX,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAC9C,IAAI,EAAC,YAAY,qBACD,QAAQ,EACxB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EACvC,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,EAC9D,IAAI,EAAE,IAAI,CAAC,eAAe,EAC1B,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAClC,KAAK,EAAE,IAAI,CAAC,SAAS,EACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ,kBACT,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAC/D,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,SAAS,EAAE,IAAI,CAAC,kBAAkB,gBACtB,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,4BACnB,IAAI,CAAC,mBAAmB,EAChD,cAAc,EAAE,IAAI,CAAC,cAAc,EACnC,OAAO,kBACN,CAAC,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,cAAc,GACjC,EACd,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,cAAK,IAAI,EAAC,OAAO,YAAC,gBAAa,GAAM,CAAC,CAAC,CAAC,gBAAa,IAC1E,GACF,CACP,CAAC;AACJ,CAAC","sourcesContent":["import type UDExListSelectAll from \"./ListSelectAll.js\";\nimport UDExListItem from \"./ListItem.js\";\n\nexport default function ListSelectAllTemplate(this: UDExListSelectAll) {\n return (\n <div\n part=\"item\"\n class=\"udex-list__group\"\n role={this._useHostAriaRole ? \"presentation\" : \"group\"}\n aria-labelledby={this._useHostAriaRole ? undefined : \"group-select-all\"}>\n <div\n role={this._useHostAriaRole ? \"presentation\" : \"listbox\"}\n aria-label={this._useHostAriaRole ? undefined : \"select-all-group\"}\n class={this.groupListClassName}\n onui5-item-press={this.handleSelectAllGroupItemsPress}>\n <UDExListItem\n role={this._useHostAriaRole ? \"none\" : \"group\"}\n part=\"group-item\"\n accessible-role=\"option\"\n _useHostAriaRole={this._useHostAriaRole}\n label={this._useHostAriaRole ? this.selectAllLabel : undefined}\n mode={this.multiselectMode}\n onClick={this.handleSelectAllPress}\n class={this.className}\n selected={this.selected}\n aria-current={this._useHostAriaRole ? undefined : this.selected}\n indeterminate={this.indeterminate}\n controlled={this.controlled}\n onKeyDown={this.handleKeyDownPress}\n _tab-index={Number(this._effectiveTabIndex)}\n _additional-class-name={this.additionalClassName}\n supportingText={this.supportingText}\n divider>\n {!this._useHostAriaRole && this.selectAllLabel}\n </UDExListItem>\n {this._useHostAriaRole ? <div role=\"group\"><slot></slot></div> : <slot></slot>}\n </div>\n </div>\n );\n}\n"]}
|
package/dist/ListTemplate.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "@ui5/webcomponents-base/jsx-runtime";
|
|
2
2
|
export default function ListTemplate() {
|
|
3
|
-
|
|
3
|
+
const hasHostAriaRole = this._hasHostAriaRole;
|
|
4
|
+
return (_jsxs(_Fragment, { children: [this.modeSelected && (_jsx("div", { class: "udex-list-root", onKeyDown: this.handleKeyDown, style: { height: this.holderHeight }, "onui5-item-press": this.handleItemPress, "onui5-header-press": this.handleItemPress, children: _jsxs("div", { class: "udex-list__scroll-container", children: [HeaderText.call(this), !hasHostAriaRole && (_jsx("span", { id: this.ariaLabelledBy, class: "udex-list__hidden-text", children: this.ariaLabelModeText })), _jsx("div", { id: "udex-list", class: "udex-list", role: (hasHostAriaRole ? "none" : this.effectiveAccessibleRole), "aria-labelledby": hasHostAriaRole ? undefined : this.ariaLabelledBy, "aria-multiselectable": (hasHostAriaRole ? undefined : this._listAriaMultiSelectable), "aria-busy": (hasHostAriaRole ? undefined : this.ariaBusy ?? undefined), children: _jsx("slot", {}) })] }) })), this.modeSingleContent && (_jsxs(_Fragment, { children: [HeaderText.call(this), _jsx("div", { id: "udex-list", class: "udex-list", role: (hasHostAriaRole ? "none" : this.singleContentRole), "aria-label": hasHostAriaRole ? undefined : this.singleContentAriaLabel, "aria-busy": (hasHostAriaRole ? undefined : this.ariaBusy ?? undefined), children: _jsx("slot", {}) })] }))] }));
|
|
4
5
|
}
|
|
5
6
|
function HeaderText() {
|
|
6
7
|
if (!this.headerText) {
|
package/dist/ListTemplate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListTemplate.js","sourceRoot":"","sources":["../src/ListTemplate.tsx"],"names":[],"mappings":";AAGA,MAAM,CAAC,OAAO,UAAU,YAAY;IAClC,OAAO,CACL,8BACG,IAAI,CAAC,YAAY,IAAI,CACpB,cACE,KAAK,EAAC,gBAAgB,EACtB,SAAS,EAAE,IAAI,CAAC,aAAa,EAC7B,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,sBAClB,IAAI,CAAC,eAAe,wBAClB,IAAI,CAAC,eAAe,YACxC,eAAK,KAAK,EAAC,6BAA6B,aACrC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"ListTemplate.js","sourceRoot":"","sources":["../src/ListTemplate.tsx"],"names":[],"mappings":";AAGA,MAAM,CAAC,OAAO,UAAU,YAAY;IAClC,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC;IAE9C,OAAO,CACL,8BACG,IAAI,CAAC,YAAY,IAAI,CACpB,cACE,KAAK,EAAC,gBAAgB,EACtB,SAAS,EAAE,IAAI,CAAC,aAAa,EAC7B,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,sBAClB,IAAI,CAAC,eAAe,wBAClB,IAAI,CAAC,eAAe,YACxC,eAAK,KAAK,EAAC,6BAA6B,aACrC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EACrB,CAAC,eAAe,IAAI,CACnB,eAAM,EAAE,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,EAAC,wBAAwB,YAC1D,IAAI,CAAC,iBAAiB,GAClB,CACR,EACD,cACE,EAAE,EAAC,WAAW,EACd,KAAK,EAAC,WAAW,EACjB,IAAI,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAa,qBAC1D,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,0BAC5C,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAuB,eAC9F,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAiC,YACrG,gBAAa,GACT,IACF,GACF,CACP,EACA,IAAI,CAAC,iBAAiB,IAAI,CACzB,8BACG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EACtB,cACE,EAAE,EAAC,WAAW,EACd,KAAK,EAAC,WAAW,EACjB,IAAI,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAa,gBACzD,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,eAC1D,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAiC,YACrG,gBAAa,GACT,IACL,CACJ,IACA,CACJ,CAAC;AACJ,CAAC;AAED,SAAS,UAAU;IACjB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,CACL,iBACE,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,aAAa,EAC5B,KAAK,EAAC,wBAAwB,EAC9B,IAAI,EAAC,QAAQ,YACZ,IAAI,CAAC,UAAU,GACT,CACV,CAAC;AACJ,CAAC","sourcesContent":["import type UDExList from \"./List.js\";\nimport type { AriaRole } from \"@ui5/webcomponents-base/types.js\";\n\nexport default function ListTemplate(this: UDExList) {\n const hasHostAriaRole = this._hasHostAriaRole;\n\n return (\n <>\n {this.modeSelected && (\n <div\n class=\"udex-list-root\"\n onKeyDown={this.handleKeyDown}\n style={{ height: this.holderHeight }}\n onui5-item-press={this.handleItemPress}\n onui5-header-press={this.handleItemPress}>\n <div class=\"udex-list__scroll-container\">\n {HeaderText.call(this)}\n {!hasHostAriaRole && (\n <span id={this.ariaLabelledBy} class=\"udex-list__hidden-text\">\n {this.ariaLabelModeText}\n </span>\n )}\n <div\n id=\"udex-list\"\n class=\"udex-list\"\n role={(hasHostAriaRole ? \"none\" : this.effectiveAccessibleRole) as AriaRole}\n aria-labelledby={hasHostAriaRole ? undefined : this.ariaLabelledBy}\n aria-multiselectable={(hasHostAriaRole ? undefined : this._listAriaMultiSelectable) as \"true\" | undefined}\n aria-busy={(hasHostAriaRole ? undefined : this.ariaBusy ?? undefined) as \"true\" | \"false\" | undefined}>\n <slot></slot>\n </div>\n </div>\n </div>\n )}\n {this.modeSingleContent && (\n <>\n {HeaderText.call(this)}\n <div\n id=\"udex-list\"\n class=\"udex-list\"\n role={(hasHostAriaRole ? \"none\" : this.singleContentRole) as AriaRole}\n aria-label={hasHostAriaRole ? undefined : this.singleContentAriaLabel}\n aria-busy={(hasHostAriaRole ? undefined : this.ariaBusy ?? undefined) as \"true\" | \"false\" | undefined}>\n <slot></slot>\n </div>\n </>\n )}\n </>\n );\n}\n\nfunction HeaderText(this: UDExList) {\n if (!this.headerText) {\n return null;\n }\n return (\n <header\n id={`${this._id}-mode-label`}\n class=\"udex-list__header-text\"\n part=\"header\">\n {this.headerText}\n </header>\n );\n}\n"]}
|
package/dist/Pagination.d.ts
CHANGED
|
@@ -87,7 +87,6 @@ declare class UDExPagination extends UI5Element {
|
|
|
87
87
|
*/
|
|
88
88
|
_prevButtonPseudoDisabled: boolean;
|
|
89
89
|
static i18nBundle: I18nBundle;
|
|
90
|
-
static readonly AUTO_DISPLAY_BREAKPOINT = 980;
|
|
91
90
|
_pages: Page[];
|
|
92
91
|
_visiblePages: Page[];
|
|
93
92
|
_previousPageElement?: HTMLElement;
|
package/dist/Pagination.js
CHANGED
|
@@ -15,6 +15,7 @@ import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
|
|
|
15
15
|
import { OF, PAGINATION_PAGE, SELECTED, ACTIVATE_PAGE, PREVIOUS_PAGE, NEXT_PAGE, CURRENT_PAGE, DISABLED, } from "./generated/i18n/i18n-defaults.js";
|
|
16
16
|
import Button from "./Button.js";
|
|
17
17
|
import translate from "./utils/translate.js";
|
|
18
|
+
import { BreakpointUtils } from "./utils/Breakpoints.js";
|
|
18
19
|
// Template
|
|
19
20
|
import PaginationTemplate from "./PaginationTemplate.js";
|
|
20
21
|
// Styles
|
|
@@ -103,7 +104,7 @@ let UDExPagination = UDExPagination_1 = class UDExPagination extends UI5Element
|
|
|
103
104
|
}
|
|
104
105
|
}
|
|
105
106
|
get _displayType() {
|
|
106
|
-
return
|
|
107
|
+
return BreakpointUtils.isAbove("M")
|
|
107
108
|
? UDExDisplayType.desktop
|
|
108
109
|
: UDExDisplayType.mobile;
|
|
109
110
|
}
|
|
@@ -369,7 +370,6 @@ let UDExPagination = UDExPagination_1 = class UDExPagination extends UI5Element
|
|
|
369
370
|
}
|
|
370
371
|
}
|
|
371
372
|
};
|
|
372
|
-
UDExPagination.AUTO_DISPLAY_BREAKPOINT = 980;
|
|
373
373
|
__decorate([
|
|
374
374
|
property({ type: Number })
|
|
375
375
|
], UDExPagination.prototype, "pages", void 0);
|
package/dist/Pagination.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pagination.js","sourceRoot":"","sources":["../src/Pagination.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/renderer/JsxRenderer.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport {\n OF,\n PAGINATION_PAGE,\n SELECTED,\n ACTIVATE_PAGE,\n PREVIOUS_PAGE,\n NEXT_PAGE,\n CURRENT_PAGE,\n DISABLED,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport Button from \"./Button.js\";\nimport translate from \"./utils/translate.js\";\n\n// Template\nimport PaginationTemplate from \"./PaginationTemplate.js\";\n\n// Styles\nimport PaginationCss from \"./generated/themes/Pagination.css.js\";\n\nexport interface Page {\n index: number;\n value: number;\n active: boolean;\n accessibleName: string;\n ariaCurrent?: string\n}\n\nexport enum UDExPaginationType {\n full = \"full\",\n short = \"short\",\n}\n\nexport enum UDExDisplayType {\n desktop = \"desktop\",\n mobile = \"mobile\",\n auto = \"auto\"\n}\n\ntype UDExPaginationChangeEventDetail = {\n currentPage: number,\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>udex-pagination</code> component is a pagination component used to navigate thought the pages.\n *\n * @constructor\n * @extends UI5Element\n * @tagname udex-pagination\n * @public\n */\n@customElement({\n tag: \"udex-pagination\",\n renderer: jsxRenderer,\n styles: PaginationCss,\n template: PaginationTemplate,\n dependencies: [Button],\n})\n/**\n * Fires when pagination item was clicked.\n *\n * @allowPreventDefault\n * @param {number} currentPage The current page number.\n * @public\n */\n@event(\"change\", { bubbles: true })\nclass UDExPagination extends UI5Element {\n eventDetails!: {\n \"change\": UDExPaginationChangeEventDetail,\n };\n /**\n * Defines number of pages.\n *\n * @public\n * @default 0\n */\n @property({ type: Number })\n pages: number = 0;\n\n /**\n * Defines type of pagination.\n *\n * @public\n * @default \"full\"\n */\n @property()\n type: `${UDExPaginationType}` = UDExPaginationType.full;\n\n /**\n * Define display purpose.\n *\n * @public\n * @default \"desktop\"\n */\n @property()\n display: `${UDExDisplayType}` = UDExDisplayType.desktop;\n\n /**\n * Current index of pagination page.\n * @public\n * @default 0\n */\n @property({ type: Number })\n currentPageIndex: number = 0;\n\n /**\n * Defines direction of the input.\n *\n * @private\n */\n @property({ type: String })\n _direction?: string;\n\n /**\n * Tracks the resolved display mode for auto display.\n *\n * @private\n */\n @property({ noAttribute: true })\n _effectiveDisplay?: `${UDExDisplayType}`;\n\n /**\n * Defines if the previous button is in pseudo-disabled.\n *\n * @private\n */\n @property({ type: Boolean })\n _nextButtonPseudoDisabled!: boolean;\n\n /**\n * Defines if the previous button is in pseudo-disabled.\n *\n * @private\n */\n @property({ type: Boolean })\n _prevButtonPseudoDisabled!: boolean;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n static readonly AUTO_DISPLAY_BREAKPOINT = 980;\n\n _pages: Page[];\n _visiblePages: Page[];\n\n _previousPageElement?: HTMLElement;\n\n _mobileDisplayNumber: number;\n _desktopDisplayNumber: number;\n _firstPageIndex!: number;\n _lastPageIndex!: number;\n _pageFocusedManually!: boolean;\n _resizeHandler!: () => void;\n\n constructor() {\n super();\n this.pages = 0;\n this._pages = [];\n this._visiblePages = [];\n this.currentPageIndex = 0;\n this._mobileDisplayNumber = 5;\n this._desktopDisplayNumber = 10;\n this._pageFocusedManually = false;\n this._resizeHandler = this._handleResize.bind(this);\n }\n\n onEnterDOM() {\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n if (this.display === UDExDisplayType.auto) {\n this._effectiveDisplay = this._displayType;\n window.addEventListener(\"resize\", this._resizeHandler);\n }\n }\n\n onExitDOM() {\n window.removeEventListener(\"resize\", this._resizeHandler);\n }\n\n _handleResize(): void {\n if (this.display === UDExDisplayType.auto) {\n const newDisplay = this._displayType;\n if (this._effectiveDisplay !== newDisplay) {\n this._effectiveDisplay = newDisplay;\n this._pages = [];\n }\n }\n }\n\n get _displayType(): `${UDExDisplayType}` {\n return window.innerWidth > UDExPagination.AUTO_DISPLAY_BREAKPOINT\n ? UDExDisplayType.desktop\n : UDExDisplayType.mobile;\n }\n\n get effectiveDisplay(): `${UDExDisplayType}` {\n if (this.display === UDExDisplayType.auto) {\n return this._effectiveDisplay ?? (this._displayType);\n }\n return this.display;\n }\n\n onBeforeRendering(): void {\n this.setupPages(this.pages);\n }\n\n get nextButtonDisabled(): boolean {\n return this.currentPageIndex + 1 === this.pages;\n }\n\n get prevButtonDisabled(): boolean {\n return this.currentPageIndex === 0;\n }\n\n get typeFull(): boolean {\n return (\n this.type === UDExPaginationType.full || this.effectiveDisplay === UDExDisplayType.mobile\n );\n }\n\n get typeShort(): boolean {\n return (\n this.type === UDExPaginationType.short && this.effectiveDisplay !== UDExDisplayType.mobile\n );\n }\n\n get shortTextStart(): string {\n if (!this.pages) {\n return \"\";\n }\n return `${this.currentPageIndex + 1}`;\n }\n\n get shortTextEnd(): string {\n if (!this.pages) {\n return \"\";\n }\n return `${this.pages}`;\n }\n\n get shortTextSeparator(): string {\n if (!this.pages) {\n return \"\";\n }\n return ` ${translate(UDExPagination, OF)} `;\n }\n\n get paginationAccessibleName(): string {\n if (this.typeShort) {\n return this.paginationShortAccessibleName;\n }\n return `${translate(UDExPagination, CURRENT_PAGE)} ${this.currentPageIndex + 1}`;\n }\n\n get pageAccessibleName(): string {\n return translate(UDExPagination, PAGINATION_PAGE);\n }\n\n get paginationShortAccessibleName(): string {\n return `${this.pageAccessibleName} ${this.shortTextStart} ${this.shortTextSeparator} ${this.shortTextEnd}`;\n }\n\n get activatePageAccessibleText() {\n return translate(UDExPagination, ACTIVATE_PAGE);\n }\n\n get previousPageAccessibleName(): string {\n if (this._prevButtonPseudoDisabled || this.prevButtonDisabled) {\n const effectiveDisabledText = this._prevButtonPseudoDisabled ? `${translate(UDExPagination, DISABLED)}` : \"\";\n return `${translate(UDExPagination, PREVIOUS_PAGE)} ${effectiveDisabledText}`;\n }\n return `${this.typeShort && this.nextButtonDisabled ? this.paginationShortAccessibleName : \"\"} ${translate(UDExPagination, PREVIOUS_PAGE)}. ${this.activatePageAccessibleText} ${this.currentPageIndex}`;\n }\n\n get previousBtnTooltip(): string {\n return !this.prevButtonDisabled ? `${translate(UDExPagination, PREVIOUS_PAGE)}` : \"\";\n }\n\n get nextPageAccessibleName(): string {\n if (this._nextButtonPseudoDisabled || this.nextButtonDisabled) {\n const effectiveDisabledText = this._nextButtonPseudoDisabled ? `${translate(UDExPagination, DISABLED)}` : \"\";\n return `${translate(UDExPagination, NEXT_PAGE)} ${effectiveDisabledText}`;\n }\n return `${this.typeShort && this.prevButtonDisabled ? this.paginationShortAccessibleName : \"\"} ${translate(UDExPagination, NEXT_PAGE)}. ${this.activatePageAccessibleText} ${this.currentPageIndex + 2}`;\n }\n\n get nextBtnTooltip(): string {\n return !this.nextButtonDisabled ? `${translate(UDExPagination, NEXT_PAGE)}` : \"\";\n }\n\n get pagination(): Page[] {\n return this._visiblePages;\n }\n\n get paginationClass(): string {\n let classes = \"udex-pagination\";\n if (this._direction === \"rtl\") {\n classes = `${classes} udex-pagination--${this._direction}`;\n }\n if (!this.effectiveDisplay) {\n return classes;\n }\n return `${classes} udex-pagination--${this.effectiveDisplay} udex-pagination--${this.type}`;\n }\n\n get displayNumber(): number {\n const lastIndex = this.effectiveDisplay === UDExDisplayType.mobile ? this._mobileDisplayNumber : this._desktopDisplayNumber;\n return lastIndex;\n }\n\n get pageOffset(): number {\n if (this.effectiveDisplay === UDExDisplayType.mobile) {\n return Math.floor(this._mobileDisplayNumber / 2);\n }\n return this._desktopDisplayNumber / 2 - 1;\n }\n\n setActive(element: HTMLElement): void {\n const pageIndex = element.getAttribute(\"data-index\")\n ? parseInt(element.getAttribute(\"data-index\") || \"\")\n : null;\n if (pageIndex === null) {\n return;\n }\n\n this.currentPageIndex = pageIndex;\n this._pageFocusedManually = true;\n this._previousPageElement = element;\n }\n\n setNextPage(e: Event): void {\n e.preventDefault();\n const currentPage = this.currentPageIndex ?? 1;\n if (this.pages && currentPage >= this.pages - 1) {\n return;\n }\n\n this.currentPageIndex = currentPage + 1;\n const isLastPage = this.currentPageIndex === (this.pages - 1);\n this._pageFocusedManually = false;\n this._nextButtonPseudoDisabled = isLastPage;\n\n if (isLastPage) {\n if (this.typeShort) {\n this.focusActiveArrow();\n } else {\n this.focusActivePage();\n }\n }\n\n this.emitChangeEvent();\n }\n\n get effectiveNextButtonDisabled(): boolean {\n return !this._nextButtonPseudoDisabled && this.nextButtonDisabled;\n }\n\n get effectivePrevButtonDisabled(): boolean {\n return !this._prevButtonPseudoDisabled && this.prevButtonDisabled;\n }\n\n handlePrevFocusOut(): void {\n this._prevButtonPseudoDisabled = false;\n }\n\n handleNextFocusOut(): void {\n this._nextButtonPseudoDisabled = false;\n }\n\n setPrevPage(e: Event): void {\n e.preventDefault();\n const currentPage = this.currentPageIndex ?? 1;\n if (this.pages && currentPage <= 0) {\n return;\n }\n\n this.currentPageIndex -= 1;\n const isFirstPage = this.currentPageIndex === 0;\n this._pageFocusedManually = false;\n this._prevButtonPseudoDisabled = isFirstPage;\n\n if (isFirstPage) {\n if (this.typeShort) {\n this.focusActiveArrow();\n } else {\n this.focusActivePage();\n }\n }\n\n this.emitChangeEvent();\n }\n\n setupPages(pages: number) {\n if (!pages) {\n this._visiblePages = [];\n return;\n }\n\n if (!this._pages.length || this._visiblePages.length !== this.displayNumber) {\n this._firstPageIndex = 0;\n this._lastPageIndex = pages > this.displayNumber ? this.displayNumber : pages;\n this._pageFocusedManually = false;\n }\n\n this._pages = this.setupPagesData();\n\n if (this.currentPageIndex < this._firstPageIndex || this.currentPageIndex - this._firstPageIndex <= this.pageOffset) {\n this._visiblePages = this.shiftVisiblePages(true);\n return;\n }\n\n this._visiblePages = this.shiftVisiblePages();\n }\n\n setupPagesData(): Page[] {\n const updatedPages = [];\n if (this.pages) {\n this._previousPageElement?.removeAttribute(\"aria-current\");\n for (let index = 0; index < this.pages; index++) {\n const isCurrent = index === this.currentPageIndex;\n const ariaCurrent = \"page\";\n const accessibleName = this.getPageAccessibleName(index);\n updatedPages.push({\n index,\n value: index + 1,\n active: isCurrent,\n accessibleName,\n ...(isCurrent && { ariaCurrent }),\n });\n }\n }\n return updatedPages;\n }\n\n shiftVisiblePages(shiftBackwards: boolean = false): Page[] {\n if (shiftBackwards) {\n while (this.currentPageIndex - this._firstPageIndex < this.pageOffset && this._firstPageIndex > 0) {\n this._firstPageIndex--;\n this._lastPageIndex--;\n }\n } else {\n while (this._lastPageIndex - this.currentPageIndex - 1 < this.pageOffset && this._lastPageIndex < this.pages) {\n this._firstPageIndex++;\n this._lastPageIndex++;\n }\n }\n return this._pages.slice(this._firstPageIndex, this._lastPageIndex);\n }\n\n getPageAccessibleName(index: number): string {\n const isCurrent = index === this.currentPageIndex;\n\n const accessibleName = isCurrent ? `\n ${this.pageAccessibleName} ${index + 1} ${translate(UDExPagination, OF)} ${this.pages}, ${translate(UDExPagination, SELECTED)}` : `\n ${this.pageAccessibleName} ${index + 1} ${translate(UDExPagination, OF)} ${this.pages}`;\n\n return accessibleName;\n }\n\n onPageClick(e: Event) {\n e.preventDefault();\n const target = e.target as HTMLElement;\n const element = target !== e.currentTarget ? (target.parentNode as HTMLElement) : target;\n if (element.getAttribute(\"active\") !== null) {\n return;\n }\n this.setActive(element);\n this.emitChangeEvent();\n }\n\n emitChangeEvent() {\n this.fireDecoratorEvent(\"change\", { currentPage: this.currentPageIndex + 1 });\n }\n\n focusActivePage() {\n const activePageItem = this.shadowRoot?.querySelector<HTMLElement>(`.udex-pagination__page[data-index=\"${this.currentPageIndex}\"]`);\n activePageItem?.focus();\n }\n\n focusActiveArrow() {\n const activeArrow = this.shadowRoot?.querySelector(`.udex-pagination__arrow--${this.currentPageIndex === 0 ? \"next\" : \"prev\"}`);\n activeArrow?.shadowRoot?.querySelector<HTMLElement>(\"button\")?.focus();\n }\n\n onAfterRendering() {\n if (this._pageFocusedManually) {\n this._pageFocusedManually = false;\n this.focusActivePage();\n }\n\n if (this.type === UDExPaginationType.full) {\n return;\n }\n\n const shortPaginationElement = this.shadowRoot?.querySelector<HTMLElement>(\n \".udex-pagination__item--short\",\n );\n\n if (!shortPaginationElement) {\n return;\n }\n\n const directionStyles: string = window\n .getComputedStyle(shortPaginationElement)\n .getPropertyValue(\"direction\");\n if (!directionStyles) {\n this._direction = \"ltr\";\n } else {\n this._direction = directionStyles;\n }\n }\n}\n\nUDExPagination.define();\n\nexport default UDExPagination;\nexport type { UDExPaginationChangeEventDetail };\n"]}
|
|
1
|
+
{"version":3,"file":"Pagination.js","sourceRoot":"","sources":["../src/Pagination.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/renderer/JsxRenderer.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport {\n OF,\n PAGINATION_PAGE,\n SELECTED,\n ACTIVATE_PAGE,\n PREVIOUS_PAGE,\n NEXT_PAGE,\n CURRENT_PAGE,\n DISABLED,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport Button from \"./Button.js\";\nimport translate from \"./utils/translate.js\";\nimport { BreakpointUtils } from \"./utils/Breakpoints.js\";\n\n// Template\nimport PaginationTemplate from \"./PaginationTemplate.js\";\n\n// Styles\nimport PaginationCss from \"./generated/themes/Pagination.css.js\";\n\nexport interface Page {\n index: number;\n value: number;\n active: boolean;\n accessibleName: string;\n ariaCurrent?: string\n}\n\nexport enum UDExPaginationType {\n full = \"full\",\n short = \"short\",\n}\n\nexport enum UDExDisplayType {\n desktop = \"desktop\",\n mobile = \"mobile\",\n auto = \"auto\"\n}\n\ntype UDExPaginationChangeEventDetail = {\n currentPage: number,\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>udex-pagination</code> component is a pagination component used to navigate thought the pages.\n *\n * @constructor\n * @extends UI5Element\n * @tagname udex-pagination\n * @public\n */\n@customElement({\n tag: \"udex-pagination\",\n renderer: jsxRenderer,\n styles: PaginationCss,\n template: PaginationTemplate,\n dependencies: [Button],\n})\n/**\n * Fires when pagination item was clicked.\n *\n * @allowPreventDefault\n * @param {number} currentPage The current page number.\n * @public\n */\n@event(\"change\", { bubbles: true })\nclass UDExPagination extends UI5Element {\n eventDetails!: {\n \"change\": UDExPaginationChangeEventDetail,\n };\n /**\n * Defines number of pages.\n *\n * @public\n * @default 0\n */\n @property({ type: Number })\n pages: number = 0;\n\n /**\n * Defines type of pagination.\n *\n * @public\n * @default \"full\"\n */\n @property()\n type: `${UDExPaginationType}` = UDExPaginationType.full;\n\n /**\n * Define display purpose.\n *\n * @public\n * @default \"desktop\"\n */\n @property()\n display: `${UDExDisplayType}` = UDExDisplayType.desktop;\n\n /**\n * Current index of pagination page.\n * @public\n * @default 0\n */\n @property({ type: Number })\n currentPageIndex: number = 0;\n\n /**\n * Defines direction of the input.\n *\n * @private\n */\n @property({ type: String })\n _direction?: string;\n\n /**\n * Tracks the resolved display mode for auto display.\n *\n * @private\n */\n @property({ noAttribute: true })\n _effectiveDisplay?: `${UDExDisplayType}`;\n\n /**\n * Defines if the previous button is in pseudo-disabled.\n *\n * @private\n */\n @property({ type: Boolean })\n _nextButtonPseudoDisabled!: boolean;\n\n /**\n * Defines if the previous button is in pseudo-disabled.\n *\n * @private\n */\n @property({ type: Boolean })\n _prevButtonPseudoDisabled!: boolean;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n _pages: Page[];\n _visiblePages: Page[];\n\n _previousPageElement?: HTMLElement;\n\n _mobileDisplayNumber: number;\n _desktopDisplayNumber: number;\n _firstPageIndex!: number;\n _lastPageIndex!: number;\n _pageFocusedManually!: boolean;\n _resizeHandler!: () => void;\n\n constructor() {\n super();\n this.pages = 0;\n this._pages = [];\n this._visiblePages = [];\n this.currentPageIndex = 0;\n this._mobileDisplayNumber = 5;\n this._desktopDisplayNumber = 10;\n this._pageFocusedManually = false;\n this._resizeHandler = this._handleResize.bind(this);\n }\n\n onEnterDOM() {\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n if (this.display === UDExDisplayType.auto) {\n this._effectiveDisplay = this._displayType;\n window.addEventListener(\"resize\", this._resizeHandler);\n }\n }\n\n onExitDOM() {\n window.removeEventListener(\"resize\", this._resizeHandler);\n }\n\n _handleResize(): void {\n if (this.display === UDExDisplayType.auto) {\n const newDisplay = this._displayType;\n if (this._effectiveDisplay !== newDisplay) {\n this._effectiveDisplay = newDisplay;\n this._pages = [];\n }\n }\n }\n\n get _displayType(): `${UDExDisplayType}` {\n return BreakpointUtils.isAbove(\"M\")\n ? UDExDisplayType.desktop\n : UDExDisplayType.mobile;\n }\n\n get effectiveDisplay(): `${UDExDisplayType}` {\n if (this.display === UDExDisplayType.auto) {\n return this._effectiveDisplay ?? (this._displayType);\n }\n return this.display;\n }\n\n onBeforeRendering(): void {\n this.setupPages(this.pages);\n }\n\n get nextButtonDisabled(): boolean {\n return this.currentPageIndex + 1 === this.pages;\n }\n\n get prevButtonDisabled(): boolean {\n return this.currentPageIndex === 0;\n }\n\n get typeFull(): boolean {\n return (\n this.type === UDExPaginationType.full || this.effectiveDisplay === UDExDisplayType.mobile\n );\n }\n\n get typeShort(): boolean {\n return (\n this.type === UDExPaginationType.short && this.effectiveDisplay !== UDExDisplayType.mobile\n );\n }\n\n get shortTextStart(): string {\n if (!this.pages) {\n return \"\";\n }\n return `${this.currentPageIndex + 1}`;\n }\n\n get shortTextEnd(): string {\n if (!this.pages) {\n return \"\";\n }\n return `${this.pages}`;\n }\n\n get shortTextSeparator(): string {\n if (!this.pages) {\n return \"\";\n }\n return ` ${translate(UDExPagination, OF)} `;\n }\n\n get paginationAccessibleName(): string {\n if (this.typeShort) {\n return this.paginationShortAccessibleName;\n }\n return `${translate(UDExPagination, CURRENT_PAGE)} ${this.currentPageIndex + 1}`;\n }\n\n get pageAccessibleName(): string {\n return translate(UDExPagination, PAGINATION_PAGE);\n }\n\n get paginationShortAccessibleName(): string {\n return `${this.pageAccessibleName} ${this.shortTextStart} ${this.shortTextSeparator} ${this.shortTextEnd}`;\n }\n\n get activatePageAccessibleText() {\n return translate(UDExPagination, ACTIVATE_PAGE);\n }\n\n get previousPageAccessibleName(): string {\n if (this._prevButtonPseudoDisabled || this.prevButtonDisabled) {\n const effectiveDisabledText = this._prevButtonPseudoDisabled ? `${translate(UDExPagination, DISABLED)}` : \"\";\n return `${translate(UDExPagination, PREVIOUS_PAGE)} ${effectiveDisabledText}`;\n }\n return `${this.typeShort && this.nextButtonDisabled ? this.paginationShortAccessibleName : \"\"} ${translate(UDExPagination, PREVIOUS_PAGE)}. ${this.activatePageAccessibleText} ${this.currentPageIndex}`;\n }\n\n get previousBtnTooltip(): string {\n return !this.prevButtonDisabled ? `${translate(UDExPagination, PREVIOUS_PAGE)}` : \"\";\n }\n\n get nextPageAccessibleName(): string {\n if (this._nextButtonPseudoDisabled || this.nextButtonDisabled) {\n const effectiveDisabledText = this._nextButtonPseudoDisabled ? `${translate(UDExPagination, DISABLED)}` : \"\";\n return `${translate(UDExPagination, NEXT_PAGE)} ${effectiveDisabledText}`;\n }\n return `${this.typeShort && this.prevButtonDisabled ? this.paginationShortAccessibleName : \"\"} ${translate(UDExPagination, NEXT_PAGE)}. ${this.activatePageAccessibleText} ${this.currentPageIndex + 2}`;\n }\n\n get nextBtnTooltip(): string {\n return !this.nextButtonDisabled ? `${translate(UDExPagination, NEXT_PAGE)}` : \"\";\n }\n\n get pagination(): Page[] {\n return this._visiblePages;\n }\n\n get paginationClass(): string {\n let classes = \"udex-pagination\";\n if (this._direction === \"rtl\") {\n classes = `${classes} udex-pagination--${this._direction}`;\n }\n if (!this.effectiveDisplay) {\n return classes;\n }\n return `${classes} udex-pagination--${this.effectiveDisplay} udex-pagination--${this.type}`;\n }\n\n get displayNumber(): number {\n const lastIndex = this.effectiveDisplay === UDExDisplayType.mobile ? this._mobileDisplayNumber : this._desktopDisplayNumber;\n return lastIndex;\n }\n\n get pageOffset(): number {\n if (this.effectiveDisplay === UDExDisplayType.mobile) {\n return Math.floor(this._mobileDisplayNumber / 2);\n }\n return this._desktopDisplayNumber / 2 - 1;\n }\n\n setActive(element: HTMLElement): void {\n const pageIndex = element.getAttribute(\"data-index\")\n ? parseInt(element.getAttribute(\"data-index\") || \"\")\n : null;\n if (pageIndex === null) {\n return;\n }\n\n this.currentPageIndex = pageIndex;\n this._pageFocusedManually = true;\n this._previousPageElement = element;\n }\n\n setNextPage(e: Event): void {\n e.preventDefault();\n const currentPage = this.currentPageIndex ?? 1;\n if (this.pages && currentPage >= this.pages - 1) {\n return;\n }\n\n this.currentPageIndex = currentPage + 1;\n const isLastPage = this.currentPageIndex === (this.pages - 1);\n this._pageFocusedManually = false;\n this._nextButtonPseudoDisabled = isLastPage;\n\n if (isLastPage) {\n if (this.typeShort) {\n this.focusActiveArrow();\n } else {\n this.focusActivePage();\n }\n }\n\n this.emitChangeEvent();\n }\n\n get effectiveNextButtonDisabled(): boolean {\n return !this._nextButtonPseudoDisabled && this.nextButtonDisabled;\n }\n\n get effectivePrevButtonDisabled(): boolean {\n return !this._prevButtonPseudoDisabled && this.prevButtonDisabled;\n }\n\n handlePrevFocusOut(): void {\n this._prevButtonPseudoDisabled = false;\n }\n\n handleNextFocusOut(): void {\n this._nextButtonPseudoDisabled = false;\n }\n\n setPrevPage(e: Event): void {\n e.preventDefault();\n const currentPage = this.currentPageIndex ?? 1;\n if (this.pages && currentPage <= 0) {\n return;\n }\n\n this.currentPageIndex -= 1;\n const isFirstPage = this.currentPageIndex === 0;\n this._pageFocusedManually = false;\n this._prevButtonPseudoDisabled = isFirstPage;\n\n if (isFirstPage) {\n if (this.typeShort) {\n this.focusActiveArrow();\n } else {\n this.focusActivePage();\n }\n }\n\n this.emitChangeEvent();\n }\n\n setupPages(pages: number) {\n if (!pages) {\n this._visiblePages = [];\n return;\n }\n\n if (!this._pages.length || this._visiblePages.length !== this.displayNumber) {\n this._firstPageIndex = 0;\n this._lastPageIndex = pages > this.displayNumber ? this.displayNumber : pages;\n this._pageFocusedManually = false;\n }\n\n this._pages = this.setupPagesData();\n\n if (this.currentPageIndex < this._firstPageIndex || this.currentPageIndex - this._firstPageIndex <= this.pageOffset) {\n this._visiblePages = this.shiftVisiblePages(true);\n return;\n }\n\n this._visiblePages = this.shiftVisiblePages();\n }\n\n setupPagesData(): Page[] {\n const updatedPages = [];\n if (this.pages) {\n this._previousPageElement?.removeAttribute(\"aria-current\");\n for (let index = 0; index < this.pages; index++) {\n const isCurrent = index === this.currentPageIndex;\n const ariaCurrent = \"page\";\n const accessibleName = this.getPageAccessibleName(index);\n updatedPages.push({\n index,\n value: index + 1,\n active: isCurrent,\n accessibleName,\n ...(isCurrent && { ariaCurrent }),\n });\n }\n }\n return updatedPages;\n }\n\n shiftVisiblePages(shiftBackwards: boolean = false): Page[] {\n if (shiftBackwards) {\n while (this.currentPageIndex - this._firstPageIndex < this.pageOffset && this._firstPageIndex > 0) {\n this._firstPageIndex--;\n this._lastPageIndex--;\n }\n } else {\n while (this._lastPageIndex - this.currentPageIndex - 1 < this.pageOffset && this._lastPageIndex < this.pages) {\n this._firstPageIndex++;\n this._lastPageIndex++;\n }\n }\n return this._pages.slice(this._firstPageIndex, this._lastPageIndex);\n }\n\n getPageAccessibleName(index: number): string {\n const isCurrent = index === this.currentPageIndex;\n\n const accessibleName = isCurrent ? `\n ${this.pageAccessibleName} ${index + 1} ${translate(UDExPagination, OF)} ${this.pages}, ${translate(UDExPagination, SELECTED)}` : `\n ${this.pageAccessibleName} ${index + 1} ${translate(UDExPagination, OF)} ${this.pages}`;\n\n return accessibleName;\n }\n\n onPageClick(e: Event) {\n e.preventDefault();\n const target = e.target as HTMLElement;\n const element = target !== e.currentTarget ? (target.parentNode as HTMLElement) : target;\n if (element.getAttribute(\"active\") !== null) {\n return;\n }\n this.setActive(element);\n this.emitChangeEvent();\n }\n\n emitChangeEvent() {\n this.fireDecoratorEvent(\"change\", { currentPage: this.currentPageIndex + 1 });\n }\n\n focusActivePage() {\n const activePageItem = this.shadowRoot?.querySelector<HTMLElement>(`.udex-pagination__page[data-index=\"${this.currentPageIndex}\"]`);\n activePageItem?.focus();\n }\n\n focusActiveArrow() {\n const activeArrow = this.shadowRoot?.querySelector(`.udex-pagination__arrow--${this.currentPageIndex === 0 ? \"next\" : \"prev\"}`);\n activeArrow?.shadowRoot?.querySelector<HTMLElement>(\"button\")?.focus();\n }\n\n onAfterRendering() {\n if (this._pageFocusedManually) {\n this._pageFocusedManually = false;\n this.focusActivePage();\n }\n\n if (this.type === UDExPaginationType.full) {\n return;\n }\n\n const shortPaginationElement = this.shadowRoot?.querySelector<HTMLElement>(\n \".udex-pagination__item--short\",\n );\n\n if (!shortPaginationElement) {\n return;\n }\n\n const directionStyles: string = window\n .getComputedStyle(shortPaginationElement)\n .getPropertyValue(\"direction\");\n if (!directionStyles) {\n this._direction = \"ltr\";\n } else {\n this._direction = directionStyles;\n }\n }\n}\n\nUDExPagination.define();\n\nexport default UDExPagination;\nexport type { UDExPaginationChangeEventDetail };\n"]}
|
package/dist/Search.d.ts
CHANGED
|
@@ -180,7 +180,10 @@ declare class UDExSearch extends UI5Element {
|
|
|
180
180
|
*/
|
|
181
181
|
labelPrefix: string;
|
|
182
182
|
/**
|
|
183
|
-
*
|
|
183
|
+
* Enables the suggestion popover to open automatically as the user types.
|
|
184
|
+
* The popover opens when the input has 2 or more characters and closes when cleared.
|
|
185
|
+
* Use this property for automatic, input-driven popover management.
|
|
186
|
+
* For programmatic control from the host application, use <code>openSuggestionPopup</code> instead.
|
|
184
187
|
*
|
|
185
188
|
* @default false
|
|
186
189
|
* @public
|
|
@@ -210,7 +213,12 @@ declare class UDExSearch extends UI5Element {
|
|
|
210
213
|
*/
|
|
211
214
|
showPopoverWhenClickedIntoInput: boolean;
|
|
212
215
|
/**
|
|
213
|
-
*
|
|
216
|
+
* Programmatically controls the visibility of the suggestion popover.
|
|
217
|
+
* Set to <code>true</code> to open the popover; set to <code>false</code> to close it.
|
|
218
|
+
* Use this property when the host application needs to control the popover state manually,
|
|
219
|
+
* for example after receiving an asynchronous API response.
|
|
220
|
+
* The <code>suggestionList</code> property must be populated with data for suggestions to appear.
|
|
221
|
+
* Use either this property or <code>showSuggestedPopover</code> — avoid using both simultaneously.
|
|
214
222
|
*
|
|
215
223
|
* @default false
|
|
216
224
|
* @public
|
|
@@ -357,6 +365,8 @@ declare class UDExSearch extends UI5Element {
|
|
|
357
365
|
* @private
|
|
358
366
|
*/
|
|
359
367
|
_isTouched: boolean;
|
|
368
|
+
private _openSuggestionHandled;
|
|
369
|
+
private _intersectionObserver?;
|
|
360
370
|
static i18nBundle: I18nBundle;
|
|
361
371
|
constructor();
|
|
362
372
|
onEnterDOM(): void;
|
|
@@ -369,7 +379,7 @@ declare class UDExSearch extends UI5Element {
|
|
|
369
379
|
setPopoverState(changeInfo: ChangeInfo): void;
|
|
370
380
|
handlePopoverTrigger(isOpenPopover: boolean): void;
|
|
371
381
|
setNewSuggestionList(changeInfo: ChangeInfo): void;
|
|
372
|
-
setSuggestedRecommendedLists(value: string): void;
|
|
382
|
+
setSuggestedRecommendedLists(value: string, handleClose?: boolean): void;
|
|
373
383
|
private hasDataLabel;
|
|
374
384
|
private hasSuggestedLabel;
|
|
375
385
|
private hasRecommendedLabel;
|
package/dist/Search.js
CHANGED
|
@@ -163,6 +163,7 @@ let UDExSearch = UDExSearch_1 = class UDExSearch extends UI5Element {
|
|
|
163
163
|
* @private
|
|
164
164
|
*/
|
|
165
165
|
this._prefixDropdownExpanded = false;
|
|
166
|
+
this._openSuggestionHandled = false;
|
|
166
167
|
this.handleSelectItem = (itemValue, categoryName) => () => {
|
|
167
168
|
this.value = itemValue;
|
|
168
169
|
this.fireDropdownItemClick(itemValue, categoryName);
|
|
@@ -198,10 +199,21 @@ let UDExSearch = UDExSearch_1 = class UDExSearch extends UI5Element {
|
|
|
198
199
|
this.isNotMozillaFirefoxIOS = !this.isMozillaFirefox("FxiOS");
|
|
199
200
|
this.initSpeechRecognition();
|
|
200
201
|
ResizeHandler.register(this, this._handleResizeBound);
|
|
202
|
+
this._intersectionObserver = new IntersectionObserver(entries => {
|
|
203
|
+
entries.forEach(entry => {
|
|
204
|
+
if (entry.isIntersecting && this.openSuggestionPopup) {
|
|
205
|
+
this._openSuggestionHandled = false;
|
|
206
|
+
this.handleOpenSuggestionPopover();
|
|
207
|
+
}
|
|
208
|
+
});
|
|
209
|
+
});
|
|
210
|
+
this._intersectionObserver.observe(this);
|
|
201
211
|
}
|
|
202
212
|
onExitDOM() {
|
|
203
213
|
ResizeHandler.deregister(this, this._handleResizeBound);
|
|
204
214
|
this.removeEventListener("dropdown-trigger-event", () => { });
|
|
215
|
+
this._intersectionObserver?.disconnect();
|
|
216
|
+
this._intersectionObserver = undefined;
|
|
205
217
|
}
|
|
206
218
|
initSpeechRecognition() {
|
|
207
219
|
try {
|
|
@@ -248,6 +260,7 @@ let UDExSearch = UDExSearch_1 = class UDExSearch extends UI5Element {
|
|
|
248
260
|
}
|
|
249
261
|
setPopoverState(changeInfo) {
|
|
250
262
|
if (changeInfo.name === "openSuggestionPopup") {
|
|
263
|
+
this._openSuggestionHandled = false;
|
|
251
264
|
this.handlePopoverTrigger(changeInfo.newValue);
|
|
252
265
|
}
|
|
253
266
|
}
|
|
@@ -264,8 +277,8 @@ let UDExSearch = UDExSearch_1 = class UDExSearch extends UI5Element {
|
|
|
264
277
|
this.setSuggestedRecommendedLists(changeInfo.newValue);
|
|
265
278
|
}
|
|
266
279
|
}
|
|
267
|
-
setSuggestedRecommendedLists(value) {
|
|
268
|
-
if (this.showSuggestedPopover && value) {
|
|
280
|
+
setSuggestedRecommendedLists(value, handleClose = true) {
|
|
281
|
+
if ((this.showSuggestedPopover || this.openSuggestionPopup) && value) {
|
|
269
282
|
const parsedData = JSON.parse(value);
|
|
270
283
|
const hasDataLabels = this.hasDataLabel(parsedData);
|
|
271
284
|
if (this.shouldShowPopover(parsedData, hasDataLabels)) {
|
|
@@ -273,7 +286,7 @@ let UDExSearch = UDExSearch_1 = class UDExSearch extends UI5Element {
|
|
|
273
286
|
this.suggestedList = this.getListWithSuggestion(this.getSuggestedList(hasDataLabels, parsedData), "suggested");
|
|
274
287
|
this.recommendedList = this.getListWithSuggestion(this.getRecommendedList(hasDataLabels, parsedData), "recommended");
|
|
275
288
|
}
|
|
276
|
-
if (!this.shouldShowPopover(parsedData, hasDataLabels)) {
|
|
289
|
+
if (handleClose && !this.shouldShowPopover(parsedData, hasDataLabels)) {
|
|
277
290
|
this.onClosePopover();
|
|
278
291
|
this.resetSuggestedRecommendedLists();
|
|
279
292
|
}
|
|
@@ -434,7 +447,7 @@ let UDExSearch = UDExSearch_1 = class UDExSearch extends UI5Element {
|
|
|
434
447
|
this.getSearchInput()?.setAttribute("aria-expanded", value);
|
|
435
448
|
}
|
|
436
449
|
onOpenPopover() {
|
|
437
|
-
if (this.showSuggestedPopover) {
|
|
450
|
+
if (this.showSuggestedPopover || this.openSuggestionPopup) {
|
|
438
451
|
if (!this.Suggestion) {
|
|
439
452
|
retryUntilSuccessful(() => this.Suggestion, this.retryDelay, this.maxRetryAttempts, this.unsuccessfulRetryMessage)
|
|
440
453
|
.then(() => {
|
|
@@ -454,8 +467,8 @@ let UDExSearch = UDExSearch_1 = class UDExSearch extends UI5Element {
|
|
|
454
467
|
}
|
|
455
468
|
}
|
|
456
469
|
onClosePopover() {
|
|
457
|
-
if (this.showSuggestedPopover) {
|
|
458
|
-
this.Suggestion
|
|
470
|
+
if (this.showSuggestedPopover || this.open) {
|
|
471
|
+
this.Suggestion?.close();
|
|
459
472
|
this.handleAriaExpanded();
|
|
460
473
|
this.open = false;
|
|
461
474
|
this.fireDecoratorEvent("suggestion-popover-closed");
|
|
@@ -465,14 +478,17 @@ let UDExSearch = UDExSearch_1 = class UDExSearch extends UI5Element {
|
|
|
465
478
|
this.Suggestion?.handleKeyPress(e);
|
|
466
479
|
}
|
|
467
480
|
get rootClasses() {
|
|
468
|
-
if (this.mode === Mode.HomeSearch && this.showSuggestedPopover && this.open) {
|
|
481
|
+
if (this.mode === Mode.HomeSearch && (this.showSuggestedPopover) && this.open) {
|
|
469
482
|
return this.isSuggestionPopoverTop ? "udex-search__root--show-popover-top" : "udex-search__root--show-popover";
|
|
470
483
|
}
|
|
471
484
|
return "";
|
|
472
485
|
}
|
|
473
486
|
onBeforeRendering() {
|
|
474
|
-
if (this.showSuggestedPopover) {
|
|
487
|
+
if (this.showSuggestedPopover || this.openSuggestionPopup) {
|
|
475
488
|
this.enableSuggestions();
|
|
489
|
+
if (this.suggestionList && !this.suggestedList?.length && !this.recommendedList?.length) {
|
|
490
|
+
this.setSuggestedRecommendedLists(this.suggestionList, false);
|
|
491
|
+
}
|
|
476
492
|
}
|
|
477
493
|
if (this.isHomeSearchWithPrefixMode && this.dropdownPrefix.length) {
|
|
478
494
|
const dropdownItems = Array.from(this.dropdownPrefix[0].children);
|
|
@@ -528,7 +544,7 @@ let UDExSearch = UDExSearch_1 = class UDExSearch extends UI5Element {
|
|
|
528
544
|
});
|
|
529
545
|
}
|
|
530
546
|
onAfterRendering() {
|
|
531
|
-
if (this.showSuggestedPopover) {
|
|
547
|
+
if (this.showSuggestedPopover || this.openSuggestionPopup) {
|
|
532
548
|
const prefixPopover = this.getPrefixPopover();
|
|
533
549
|
if (this.Suggestion?.popover) {
|
|
534
550
|
const suggestionObserver = this._createObserver(this.Suggestion.popover);
|
|
@@ -546,9 +562,18 @@ let UDExSearch = UDExSearch_1 = class UDExSearch extends UI5Element {
|
|
|
546
562
|
}
|
|
547
563
|
}
|
|
548
564
|
handleOpenSuggestionPopover() {
|
|
549
|
-
if (this.openSuggestionPopup) {
|
|
565
|
+
if (this.openSuggestionPopup && !this._openSuggestionHandled) {
|
|
566
|
+
this._openSuggestionHandled = true;
|
|
550
567
|
this.Suggestion?._getSuggestionPopover();
|
|
551
|
-
|
|
568
|
+
// Defer to the next animation frame so the opener element has a resolved
|
|
569
|
+
// layout before UI5 Popover calculates its position. Without this, opening
|
|
570
|
+
// during onAfterRendering (which runs in a microtask, before layout) causes
|
|
571
|
+
// the popover to anchor at 0,0 — appearing detached from the search input.
|
|
572
|
+
requestAnimationFrame(() => {
|
|
573
|
+
if (this.openSuggestionPopup) {
|
|
574
|
+
this.handlePopoverTrigger(this.openSuggestionPopup);
|
|
575
|
+
}
|
|
576
|
+
});
|
|
552
577
|
}
|
|
553
578
|
}
|
|
554
579
|
handleBlur() {
|