@sapudex/web-components 2.53.0 → 2.55.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/Breadcrumbs.cy.tsx +3 -1
- package/cypress/specs/FilterMenu.cy.tsx +68 -2
- package/cypress/specs/Footer.cy.tsx +59 -0
- package/cypress/specs/MediaPlayer.cy.tsx +58 -0
- package/cypress/specs/SecondaryNavigationDesktop.cy.tsx +2 -2
- package/cypress/specs/SelectBox.cy.tsx +117 -0
- package/dist/Accordion.js +1 -1
- package/dist/Accordion.js.map +1 -1
- package/dist/AccordionItem.js +1 -1
- package/dist/AccordionItem.js.map +1 -1
- package/dist/Avatar.d.ts +2 -2
- package/dist/Avatar.js +1 -1
- package/dist/Avatar.js.map +1 -1
- package/dist/Badge.js +1 -1
- package/dist/Badge.js.map +1 -1
- package/dist/Breadcrumbs.js +1 -1
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/BreadcrumbsTemplate.js +1 -1
- package/dist/BreadcrumbsTemplate.js.map +1 -1
- package/dist/Carousel.js +1 -1
- package/dist/Carousel.js.map +1 -1
- package/dist/Contact.js +1 -1
- package/dist/Contact.js.map +1 -1
- package/dist/ContactItem.js +1 -1
- package/dist/ContactItem.js.map +1 -1
- package/dist/Feed.d.ts +2 -1
- package/dist/Feed.js +1 -1
- package/dist/Feed.js.map +1 -1
- package/dist/FeedItem.d.ts +2 -1
- package/dist/FeedItem.js +1 -1
- package/dist/FeedItem.js.map +1 -1
- package/dist/FilterMenu.d.ts +1 -1
- package/dist/FilterMenu.js +6 -6
- package/dist/FilterMenu.js.map +1 -1
- package/dist/FilterMenuGroupHeader.js +1 -1
- package/dist/FilterMenuGroupHeader.js.map +1 -1
- package/dist/Footer.d.ts +22 -2
- package/dist/Footer.js +41 -4
- package/dist/Footer.js.map +1 -1
- package/dist/FooterTemplate.js +7 -2
- package/dist/FooterTemplate.js.map +1 -1
- package/dist/ImageGridCloud.js +1 -1
- package/dist/ImageGridCloud.js.map +1 -1
- package/dist/ImageGridTable.js +1 -1
- package/dist/ImageGridTable.js.map +1 -1
- package/dist/ImageGridTableItem.js +1 -1
- package/dist/ImageGridTableItem.js.map +1 -1
- package/dist/ImageGridTicker.js +1 -1
- package/dist/ImageGridTicker.js.map +1 -1
- package/dist/InputGroup.js +1 -1
- package/dist/InputGroup.js.map +1 -1
- package/dist/LinkList.js +1 -1
- package/dist/LinkList.js.map +1 -1
- package/dist/List.js +7 -7
- package/dist/List.js.map +1 -1
- package/dist/ListGroupHeader.js +12 -5
- package/dist/ListGroupHeader.js.map +1 -1
- package/dist/ListGroupHeaderBase.d.ts +1 -1
- package/dist/ListGroupHeaderBase.js +3 -3
- package/dist/ListGroupHeaderBase.js.map +1 -1
- package/dist/ListGroupHeaderTemplate.d.ts +2 -0
- package/dist/ListGroupHeaderTemplate.js +33 -0
- package/dist/ListGroupHeaderTemplate.js.map +1 -0
- package/dist/ListItem.d.ts +3 -3
- package/dist/ListItem.js +5 -4
- package/dist/ListItem.js.map +1 -1
- package/dist/ListItemBase.d.ts +1 -0
- package/dist/ListItemBase.js +8 -4
- package/dist/ListItemBase.js.map +1 -1
- package/dist/ListItemTemplate.d.ts +2 -0
- package/dist/ListItemTemplate.js +18 -0
- package/dist/ListItemTemplate.js.map +1 -0
- package/dist/ListSelectAll.js +4 -5
- package/dist/ListSelectAll.js.map +1 -1
- package/dist/ListSelectAllTemplate.d.ts +2 -0
- package/dist/ListSelectAllTemplate.js +6 -0
- package/dist/ListSelectAllTemplate.js.map +1 -0
- package/dist/ListTemplate.d.ts +2 -0
- package/dist/ListTemplate.js +11 -0
- package/dist/ListTemplate.js.map +1 -0
- package/dist/MastheadItem.d.ts +3 -3
- package/dist/MastheadItem.js +1 -1
- package/dist/MastheadItem.js.map +1 -1
- package/dist/MastheadMobileMenu.d.ts +3 -3
- package/dist/MastheadMobileMenu.js +1 -1
- package/dist/MastheadMobileMenu.js.map +1 -1
- package/dist/MastheadProfileMenu.d.ts +3 -2
- package/dist/MastheadProfileMenu.js +1 -1
- package/dist/MastheadProfileMenu.js.map +1 -1
- package/dist/MastheadShell.d.ts +9 -9
- package/dist/MastheadShell.js +1 -1
- package/dist/MastheadShell.js.map +1 -1
- package/dist/MediaPlayer.d.ts +1 -1
- package/dist/MediaPlayer.js +11 -3
- package/dist/MediaPlayer.js.map +1 -1
- package/dist/MediaPlayerVimeo.d.ts +6 -0
- package/dist/MediaPlayerVimeo.js +27 -6
- package/dist/MediaPlayerVimeo.js.map +1 -1
- package/dist/MediaPlayerYoutube.d.ts +3 -0
- package/dist/MediaPlayerYoutube.js +24 -5
- package/dist/MediaPlayerYoutube.js.map +1 -1
- package/dist/MessageStrip.d.ts +2 -1
- package/dist/MessageStrip.js +1 -1
- package/dist/MessageStrip.js.map +1 -1
- package/dist/Modal.d.ts +2 -0
- package/dist/Modal.js +10 -3
- package/dist/Modal.js.map +1 -1
- package/dist/PromoTile.d.ts +2 -2
- package/dist/PromoTile.js +1 -1
- package/dist/PromoTile.js.map +1 -1
- package/dist/Quote.d.ts +4 -4
- package/dist/Quote.js +1 -1
- package/dist/Quote.js.map +1 -1
- package/dist/Review.d.ts +3 -3
- package/dist/Review.js +1 -1
- package/dist/Review.js.map +1 -1
- package/dist/ReviewItem.d.ts +4 -3
- package/dist/ReviewItem.js +1 -1
- package/dist/ReviewItem.js.map +1 -1
- package/dist/Search.js +1 -1
- package/dist/Search.js.map +1 -1
- package/dist/SearchableListBase.js +5 -1
- package/dist/SearchableListBase.js.map +1 -1
- package/dist/SecondaryNavigation.d.ts +3 -3
- package/dist/SecondaryNavigation.js +1 -1
- package/dist/SecondaryNavigation.js.map +1 -1
- package/dist/SecondaryNavigationItem.d.ts +2 -1
- package/dist/SecondaryNavigationItem.js +1 -1
- package/dist/SecondaryNavigationItem.js.map +1 -1
- package/dist/SelectBase.js +1 -1
- package/dist/SelectBase.js.map +1 -1
- package/dist/SelectBox.js +31 -0
- package/dist/SelectBox.js.map +1 -1
- package/dist/SelectBoxGroupHeader.js +1 -1
- package/dist/SelectBoxGroupHeader.js.map +1 -1
- package/dist/SelectBoxItem.d.ts +3 -3
- package/dist/SelectBoxItem.js +1 -1
- package/dist/SelectBoxItem.js.map +1 -1
- package/dist/SelectBoxTemplate.js +2 -1
- package/dist/SelectBoxTemplate.js.map +1 -1
- package/dist/SideNavigationMobile.d.ts +2 -2
- package/dist/SideNavigationMobile.js +1 -1
- package/dist/SideNavigationMobile.js.map +1 -1
- package/dist/SocialMediaButton.js +1 -1
- package/dist/SocialMediaButton.js.map +1 -1
- package/dist/Tab.d.ts +2 -2
- package/dist/Tab.js +1 -1
- package/dist/Tab.js.map +1 -1
- package/dist/TabNavigation.d.ts +2 -2
- package/dist/TabNavigation.js +1 -1
- package/dist/TabNavigation.js.map +1 -1
- package/dist/Table.d.ts +5 -5
- package/dist/Table.js +1 -1
- package/dist/Table.js.map +1 -1
- package/dist/TableCellBase.js +1 -1
- package/dist/TableCellBase.js.map +1 -1
- package/dist/TableGroupRow.js +1 -1
- package/dist/TableGroupRow.js.map +1 -1
- package/dist/TableRowBase.js +1 -1
- package/dist/TableRowBase.js.map +1 -1
- package/dist/TagGroup.js +1 -1
- package/dist/TagGroup.js.map +1 -1
- package/dist/Tile.d.ts +2 -1
- package/dist/Tile.js +1 -1
- package/dist/Tile.js.map +1 -1
- package/dist/Tooltip.d.ts +2 -1
- package/dist/Tooltip.js +1 -1
- package/dist/Tooltip.js.map +1 -1
- package/dist/Wizard.js +1 -1
- package/dist/Wizard.js.map +1 -1
- package/dist/assets/{InputSuggestions-0yCPXAmq.js → InputSuggestions-DPiJnNLn.js} +1 -1
- package/dist/assets/{ListItemStandardExpandableTextTemplate-DjZEnCXN.js → ListItemStandardExpandableTextTemplate-B-v72jL6.js} +1 -1
- package/dist/assets/{bundle.esm-DJuMR5ko.js → bundle.esm-DPppjwN7.js} +260 -260
- package/dist/assets/messagebundle_en-B0P3kkb6.js +1 -0
- package/dist/assets/messagebundle_it-BML2SC0W.js +1 -0
- package/dist/assets/messagebundle_ja-zyFfZHcj.js +1 -0
- package/dist/assets/messagebundle_ko-BCPaSqNp.js +1 -0
- package/dist/assets/messagebundle_lt-DB4b6FVx.js +1 -0
- package/dist/assets/messagebundle_lv-tAOia5tU.js +1 -0
- package/dist/css/themes/AccordionItem.css +1 -1
- package/dist/css/themes/Breadcrumbs.css +1 -1
- package/dist/css/themes/BreadcrumbsPopover.css +1 -1
- package/dist/css/themes/Footer.css +1 -1
- package/dist/css/themes/Link.css +1 -1
- package/dist/css/themes/ListGroupHeader.css +1 -1
- package/dist/custom-elements-internal.json +267 -157
- package/dist/custom-elements.json +221 -133
- package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
- package/dist/generated/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/AccordionItem.css.d.ts +1 -1
- package/dist/generated/themes/AccordionItem.css.js +1 -1
- package/dist/generated/themes/AccordionItem.css.js.map +1 -1
- package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
- package/dist/generated/themes/BreadcrumbsPopover.css.d.ts +1 -1
- package/dist/generated/themes/BreadcrumbsPopover.css.js +1 -1
- package/dist/generated/themes/BreadcrumbsPopover.css.js.map +1 -1
- package/dist/generated/themes/Footer.css.d.ts +1 -1
- package/dist/generated/themes/Footer.css.js +1 -1
- package/dist/generated/themes/Footer.css.js.map +1 -1
- package/dist/generated/themes/Link.css.d.ts +1 -1
- package/dist/generated/themes/Link.css.js +1 -1
- package/dist/generated/themes/Link.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/messagebundle.properties +1 -0
- package/dist/messagebundle_en.properties +1 -0
- package/dist/messagebundle_it.properties +123 -0
- package/dist/messagebundle_ja.properties +127 -1
- package/dist/messagebundle_ko.properties +126 -0
- package/dist/messagebundle_lt.properties +126 -0
- package/dist/messagebundle_lv.properties +9 -0
- package/dist/types/FooterAskJoulePosition.d.ts +5 -0
- package/dist/types/FooterAskJoulePosition.js +7 -0
- package/dist/types/FooterAskJoulePosition.js.map +1 -0
- package/dist/vscode.html-custom-data.json +13 -3
- package/dist/web-types.json +56 -9
- package/package.json +1 -1
- package/src/Accordion.ts +1 -1
- package/src/AccordionItem.ts +1 -1
- package/src/Avatar.ts +3 -3
- package/src/Badge.ts +1 -1
- package/src/Breadcrumbs.ts +1 -1
- package/src/BreadcrumbsTemplate.tsx +12 -10
- package/src/Carousel.ts +1 -1
- package/src/Contact.ts +1 -1
- package/src/ContactItem.ts +1 -1
- package/src/Feed.ts +3 -2
- package/src/FeedItem.ts +3 -2
- package/src/FilterMenu.ts +6 -6
- package/src/FilterMenuGroupHeader.ts +1 -1
- package/src/Footer.ts +44 -5
- package/src/FooterTemplate.tsx +28 -4
- package/src/ImageGridCloud.ts +1 -1
- package/src/ImageGridTable.ts +1 -1
- package/src/ImageGridTableItem.ts +1 -1
- package/src/ImageGridTicker.ts +1 -1
- package/src/InputGroup.ts +1 -1
- package/src/LinkList.ts +1 -1
- package/src/List.ts +9 -9
- package/src/ListGroupHeader.ts +12 -5
- package/src/ListGroupHeaderBase.ts +4 -4
- package/src/ListGroupHeaderTemplate.tsx +228 -0
- package/src/ListItem.ts +8 -7
- package/src/ListItemBase.ts +9 -4
- package/src/ListItemTemplate.tsx +193 -0
- package/src/ListSelectAll.ts +4 -5
- package/src/ListSelectAllTemplate.tsx +38 -0
- package/src/ListTemplate.tsx +60 -0
- package/src/MastheadItem.ts +4 -4
- package/src/MastheadMobileMenu.ts +4 -4
- package/src/MastheadProfileMenu.ts +4 -3
- package/src/MastheadShell.ts +10 -10
- package/src/MediaPlayer.ts +11 -4
- package/src/MediaPlayerVimeo.ts +31 -6
- package/src/MediaPlayerYoutube.ts +24 -5
- package/src/MessageStrip.ts +3 -2
- package/src/Modal.ts +18 -3
- package/src/PromoTile.ts +3 -3
- package/src/Quote.ts +5 -5
- package/src/Review.ts +4 -4
- package/src/ReviewItem.ts +5 -4
- package/src/Search.ts +1 -1
- package/src/SearchableListBase.ts +6 -1
- package/src/SecondaryNavigation.ts +4 -4
- package/src/SecondaryNavigationItem.ts +3 -2
- package/src/SelectBase.ts +1 -1
- package/src/SelectBox.ts +34 -0
- package/src/SelectBoxGroupHeader.ts +1 -1
- package/src/SelectBoxItem.ts +4 -4
- package/src/SelectBoxTemplate.tsx +2 -0
- package/src/SideNavigationMobile.ts +3 -3
- package/src/SocialMediaButton.ts +1 -1
- package/src/Tab.ts +3 -3
- package/src/TabNavigation.ts +3 -3
- package/src/Table.ts +6 -6
- package/src/TableCellBase.ts +1 -1
- package/src/TableGroupRow.ts +1 -1
- package/src/TableRowBase.ts +1 -1
- package/src/TagGroup.ts +1 -1
- package/src/Tile.ts +3 -2
- package/src/Tooltip.ts +3 -2
- package/src/Wizard.ts +1 -1
- package/src/generated/i18n/i18n-defaults.ts +2 -2
- package/src/generated/themes/AccordionItem.css.ts +1 -1
- package/src/generated/themes/Breadcrumbs.css.ts +1 -1
- package/src/generated/themes/BreadcrumbsPopover.css.ts +1 -1
- package/src/generated/themes/Footer.css.ts +1 -1
- package/src/generated/themes/Link.css.ts +1 -1
- package/src/generated/themes/ListGroupHeader.css.ts +1 -1
- package/src/i18n/messagebundle.properties +1 -0
- package/src/i18n/messagebundle_en.properties +1 -0
- package/src/i18n/messagebundle_it.properties +123 -0
- package/src/i18n/messagebundle_ja.properties +127 -1
- package/src/i18n/messagebundle_ko.properties +126 -0
- package/src/i18n/messagebundle_lt.properties +126 -0
- package/src/i18n/messagebundle_lv.properties +9 -0
- package/src/themes/AccordionItem.css +2 -2
- package/src/themes/Breadcrumbs.css +46 -5
- package/src/themes/BreadcrumbsPopover.css +65 -0
- package/src/themes/Footer.css +99 -2
- package/src/themes/Link.css +127 -8
- package/src/themes/ListGroupHeader.css +6 -3
- package/src/types/FooterAskJoulePosition.ts +6 -0
- package/dist/assets/messagebundle_en-DoNTK1BE.js +0 -1
- package/dist/assets/messagebundle_it-BhrBdOd4.js +0 -1
- package/dist/assets/messagebundle_ja-5P5L7sQ1.js +0 -1
- package/dist/assets/messagebundle_ko-B9H5YQlC.js +0 -1
- package/dist/assets/messagebundle_lt-BJ5gr_LF.js +0 -1
- package/dist/assets/messagebundle_lv-D06tlATH.js +0 -1
- package/dist/generated/templates/ListGroupHeaderTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/ListGroupHeaderTemplate.lit.js +0 -30
- package/dist/generated/templates/ListGroupHeaderTemplate.lit.js.map +0 -1
- package/dist/generated/templates/ListItemTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/ListItemTemplate.lit.js +0 -49
- package/dist/generated/templates/ListItemTemplate.lit.js.map +0 -1
- package/dist/generated/templates/ListSelectAllTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/ListSelectAllTemplate.lit.js +0 -7
- package/dist/generated/templates/ListSelectAllTemplate.lit.js.map +0 -1
- package/dist/generated/templates/ListTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/ListTemplate.lit.js +0 -11
- package/dist/generated/templates/ListTemplate.lit.js.map +0 -1
- package/src/List.hbs +0 -38
- package/src/ListGroupHeader.hbs +0 -188
- package/src/ListItem.hbs +0 -166
- package/src/ListSelectAll.hbs +0 -31
- package/src/generated/templates/ListGroupHeaderTemplate.lit.ts +0 -34
- package/src/generated/templates/ListItemTemplate.lit.ts +0 -53
- package/src/generated/templates/ListSelectAllTemplate.lit.ts +0 -11
- package/src/generated/templates/ListTemplate.lit.ts +0 -15
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FooterTemplate.js","sourceRoot":"","sources":["../src/FooterTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import IconMode from \"@ui5/webcomponents/dist/types/IconMode.js\";\nimport UI5Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport UI5LinkDesign from \"@ui5/webcomponents/dist/types/LinkDesign.js\";\n\nimport headset from \"@ui5/webcomponents-icons/dist/headset.js\";\nimport email from \"@ui5/webcomponents-icons/dist/email.js\";\nimport backToTop from \"@ui5/webcomponents-icons/dist/back-to-top.js\";\nimport discussion from \"@ui5/webcomponents-icons/dist/discussion-2.js\";\n\nimport type Footer from \"./Footer.js\";\nimport UDExLink from \"./Link.js\";\nimport UDExDivider from \"./Divider.js\";\nimport UDExSocialMediaButton from \"./SocialMediaButton.js\";\nimport UDExAccordion from \"./Accordion.js\";\nimport UDExAccordionItem from \"./AccordionItem.js\";\nimport UDExButton from \"./Button.js\";\nimport UDExButtonDesign from \"./types/ButtonDesign.js\";\nimport UDExButtonSize from \"./types/ButtonSize.js\";\nimport type { AriaRole } from \"@ui5/webcomponents-base\";\n\nexport default function FooterTemplate(this: Footer) {\n const rootClass = \"udex-footer\";\n\n return (\n <footer className={rootClass}>\n <div className={`${rootClass}__content`}>\n <div className={`${rootClass}__contact-social`}>\n {this.hasLogo && (\n <div className={`${rootClass}__logo`}>\n {this.hasLogoLink ? (\n <a\n href={this.logoHref}\n onClick={this._onLogoClick}\n title={this.logoTitle}\n aria-label={this.logoAriaLabel}>\n <img\n id={`${rootClass}__logo-image`}\n src={this.currentLogoUrl}\n className={this.logoClass}\n alt={this.logoAlt}\n />\n </a>\n ) : (\n <img\n id={`${rootClass}__logo-image`}\n src={this.currentLogoUrl}\n className={this.logoClass}\n alt={this.logoAlt}\n />\n )}\n {this.hasTagline && (\n <img\n id={`${rootClass}__tagline-image`}\n src={this.currentTaglineUrl}\n className={this.taglineClass}\n alt={this.taglineAlt}\n />\n )}\n </div>\n )}\n {this.isContactContainerVisible && (\n <div className={`${rootClass}__contact`}>\n {this.contactNumbersArray.length > 0 && (\n <div className={`${rootClass}__numbers`}>\n <div className={`${rootClass}__icon-container`}>\n <UI5Icon\n class={`${rootClass}__icon`}\n name={headset}\n mode={IconMode.Decorative}\n ></UI5Icon>\n </div>\n <div>\n <div className={`${rootClass}__numbers-wrapper`}>\n {this.contactNumbersArray.map((contact, index) => (\n <div key={index}>\n <span\n className=\"hidden\"\n aria-hidden\n id={`${rootClass}__${index}_phone-label`}>\n {`${this.phoneNumberAccessibleName} ${contact.country} : ${contact.number}`}\n </span>\n <p className={`${rootClass}__country`}>{contact.country}</p>\n <a\n href={`tel:${contact.number}`}\n className={`${rootClass}__number`}\n onClick={this._onContactPhoneClick}\n aria-labelledby={`${rootClass}__${index}_phone-label`}>\n {contact.number}\n </a>\n </div>\n ))}\n </div>\n {this.localCountryNumbersLink && (\n <p className={`${rootClass}__remark`}>\n {this.completeListTitle}\n <UDExLink\n class={`${rootClass}__remark-link`}\n onClick={this._onContactPhoneLocalNumbersClick}\n href={this.localCountryNumbersLink}\n design={UI5LinkDesign.Subtle}>\n {this.localCountryTitle}.\n </UDExLink>\n </p>\n )}\n </div>\n </div>\n )}\n {this.contactUsLink && (\n <div className={`${rootClass}__contact-us`}>\n <div className={`${rootClass}__icon-container`}>\n <UI5Icon\n class={`${rootClass}__icon`}\n name={email}\n mode={IconMode.Decorative}>\n </UI5Icon>\n </div>\n <span\n className=\"hidden\"\n aria-hidden\n id={`${rootClass}__contact-us-label`}>\n {this.contactUsAccessibleLabel}\n </span>\n <a\n href={this.contactUsLink}\n className={`${rootClass}__contact-us-link`}\n aria-labelledby={`${rootClass}__contact-us-label`}\n onClick={this._onContactEmailClick}>\n {this.contactUsAccessibleName}\n </a>\n </div>\n )}\n {this.chatWithUsLink && (\n <div className={`${rootClass}__chat-with-us`}>\n <div className={`${rootClass}__icon-container`}>\n <UI5Icon\n class={`${rootClass}__icon`}\n name={discussion}\n mode={IconMode.Decorative}>\n </UI5Icon>\n </div>\n <a\n href={this.chatWithUsLink}\n className={`${rootClass}__chat-with-us-link`}\n onClick={this._onContactChatClick}>\n {this.chatWithUsAccessibleName}\n </a>\n </div>\n )}\n </div>\n )}\n </div>\n\n <UDExDivider class={`${rootClass}__divider`} accessibleRole=\"none\"></UDExDivider>\n\n {this._shouldRenderMobileMenu ? (\n mobileNavigation.call(this, rootClass)\n ) : (\n desktopNavigation.call(this, rootClass)\n )}\n\n <UDExDivider class={`${rootClass}__divider`} accessibleRole=\"none\"></UDExDivider>\n\n <div className={`${rootClass}__copyright`}>\n {this.isChineseLang && (\n <span className={`${rootClass}__copyright-chinese-text`}>\n <UDExLink\n href={this.chineseIcpNumberLink}\n title={this.chineseICPNumberText}\n design=\"Subtle\"\n class={`${rootClass}__copyright-chinese-link`}\n target=\"_blank\"\n >\n {this.chineseICPNumberText}\n </UDExLink>\n {this.chineseSecurityNetworkNumberText}\n </span>\n )}\n <span className={`${rootClass}__copyright-text`}>{this.copyrightText}</span>\n </div>\n\n {(this.socialLinksArray.length > 0 || this.hasSocialLinksSlot) && (\n <ul className={`${rootClass}__social-container`}>\n {this.socialLinksArray.map((social, index) => (\n <UDExSocialMediaButton\n {...{ role: \"listitem\" }}\n key={index}\n type={social.name}\n url={social.url}\n target={social.target}\n accessible-name={social.accessibleName}\n data-name={social.name}\n data-id={social.id}\n onui5-click={this._onSocialMediaLinkClick}>\n </UDExSocialMediaButton>\n ))}\n {this.hasSocialLinksSlot && (\n <>\n {this.customSocialLinks.map(link =>\n <slot name={link._individualSlot}></slot>\n )}\n </>\n )}\n </ul>\n )}\n </div>\n\n <UDExButton\n class={`${rootClass}__back-to-top-button`}\n icon={backToTop}\n onClick={this.onBackToTopClick}\n design={UDExButtonDesign.Tertiary}\n size={UDExButtonSize.Large}\n tooltip={this.backToTopTitle}>\n </UDExButton>\n </footer>\n );\n}\n\nfunction mobileNavigation(this: Footer, rootClass: string) {\n return (\n <UDExAccordion class={`${rootClass}__accordion`}>\n {this.quickLinksArray.length > 0 && (\n <>\n <UDExAccordionItem onAccordionItemClick={this.handleAccordionItemClick} label={this._quickLinksTitle} class={`${rootClass}__action-item`}>\n <ul className={`${rootClass}__links-list udex-footer__links-list--mobile`}>\n {this.quickLinksArray.map((link, index) => (\n <li key={index}>\n <a\n target={link.target}\n href={link.url}\n data-id={link.id}\n onClick={this._onQuickLinksClick}\n {...(link.role ? { \"role\": link.role as AriaRole } : {})}>\n {link.title}\n </a>\n </li>\n ))}\n </ul>\n <h6 className={`${rootClass}__links-item hidden`} aria-hidden=\"true\" id={`${rootClass}__quick-links`}>\n {this._quickLinksTitle}\n </h6>\n </UDExAccordionItem>\n </>\n )}\n\n {this.trendingLinksArray.length > 0 && (\n <>\n <UDExAccordionItem onAccordionItemClick={this.handleAccordionItemClick} label={this._trendingTitle} class={`${rootClass}__action-item`}>\n <ul className={`${rootClass}__links-list ${rootClass}__links-list--mobile`}>\n {this.trendingLinksArray.map((link, index) => (\n <li key={index}>\n <a\n target={link.target}\n href={link.url}\n data-id={link.id}\n onClick={this._onTrendingClick}\n {...(link.role ? { \"role\": link.role as AriaRole } : {})}>\n {link.title}\n </a>\n </li>\n ))}\n </ul>\n <h6 className={`${rootClass}__links-item hidden`} aria-hidden=\"true\" id={`${rootClass}__trending`}>\n {this._trendingTitle}\n </h6>\n </UDExAccordionItem>\n </>\n )}\n\n {this.aboutLinksArray.length > 0 && (\n <>\n <UDExAccordionItem onAccordionItemClick={this.handleAccordionItemClick} label={this._aboutSapTitle} class={`${rootClass}__action-item`}>\n <ul className={`${rootClass}__links-list ${rootClass}__links-list--mobile`}>\n {this.aboutLinksArray.map((link, index) => (\n <li key={index}>\n <a\n target={link.target}\n href={link.url}\n data-id={link.id}\n onClick={this._onAboutSapClick}\n {...(link.role ? { \"role\": link.role as AriaRole } : {})}>\n {link.title}\n </a>\n </li>\n ))}\n </ul>\n <h6 className={`${rootClass}__links-item hidden`} aria-hidden=\"true\" id={`${rootClass}__about`}>\n {this._aboutSapTitle}\n </h6>\n </UDExAccordionItem>\n </>\n )}\n\n {this.siteInformationLinksArray.length > 0 && (\n <>\n <UDExAccordionItem onAccordionItemClick={this.handleAccordionItemClick} label={this._siteInformationTitle} class={`${rootClass}__action-item`}>\n <ul className={`${rootClass}__links-list rootClass__links-list--mobile`}>\n {this.siteInformationLinksArray.map((link, index) => (\n <li key={index}>\n <a\n target={link.target}\n href={link.url}\n data-id={link.id}\n onClick={this._onSiteInformationClick}\n {...(link.role ? { \"role\": link.role as AriaRole } : {})}>\n {link.title}\n </a>\n </li>\n ))}\n </ul>\n <h6 className={`${rootClass}__links-item hidden`} aria-hidden=\"true\" id={`${rootClass}__site-information`}>\n {this._siteInformationTitle}\n </h6>\n </UDExAccordionItem>\n </>\n )}\n </UDExAccordion>\n );\n}\n\nfunction desktopNavigation(this: Footer, rootClass: string) {\n return (\n <div className={`${rootClass}__links`}>\n {this.quickLinksArray.length > 0 && (\n <div className={`${rootClass}__links-group ${rootClass}__quick-links`}>\n <h6 className={`${rootClass}__links-item`} id={`${rootClass}__quick-links`}>\n {this._quickLinksTitle}\n </h6>\n <nav>\n <ul aria-labelledby={`${rootClass}__quick-links`} className={`${rootClass}__links-list ${rootClass}__links-list--desktop`}>\n {this.quickLinksArray.map((link, index) => (\n <li key={index}>\n <a\n target={link.target}\n data-id={link.id}\n href={link.url}\n onClick={this._onQuickLinksClick}\n {...(link.role ? { \"role\": link.role as AriaRole } : {})}>\n {link.title}\n </a>\n </li>\n ))}\n </ul>\n </nav>\n </div>\n )}\n {this.trendingLinksArray.length > 0 && (\n <div className={`${rootClass}__links-group ${rootClass}__trending-links`}>\n <h6 className={`${rootClass}__links-item`} id={`${rootClass}__trending`}>\n {this._trendingTitle}\n </h6>\n <nav>\n <ul aria-labelledby={`${rootClass}__trending`} className={`${rootClass}__links-list ${rootClass}__links-list--desktop`}>\n {this.trendingLinksArray.map((link, index) => (\n <li key={index}>\n <a\n target={link.target}\n data-id={link.id}\n href={link.url}\n onClick={this._onTrendingClick}\n {...(link.role ? { \"role\": link.role as AriaRole } : {})}>\n {link.title}\n </a>\n </li>\n ))}\n </ul>\n </nav>\n </div>\n )}\n {this.aboutLinksArray.length > 0 && (\n <div className={`${rootClass}__links-group ${rootClass}__about-links`}>\n <h6 className={`${rootClass}__links-item`} id={`${rootClass}__about`}>\n {this._aboutSapTitle}\n </h6>\n <nav>\n <ul aria-labelledby={`${rootClass}__about`} className={`${rootClass}__links-list ${rootClass}__links-list--desktop`}>\n {this.aboutLinksArray.map((link, index) => (\n <li key={index}>\n <a\n target={link.target}\n data-id={link.id}\n href={link.url}\n onClick={this._onAboutSapClick}\n {...(link.role ? { \"role\": link.role as AriaRole } : {})}>\n {link.title}\n </a>\n </li>\n ))}\n </ul>\n </nav>\n </div>\n )}\n {this.siteInformationLinksArray.length > 0 && (\n <div className={`${rootClass}__links-group ${rootClass}__site-information-links`}>\n <h6 className={`${rootClass}__links-item`} id={`${rootClass}__site-information`}>\n {this._siteInformationTitle}\n </h6>\n <nav>\n <ul aria-labelledby={`${rootClass}__site-information`} className={`${rootClass}__links-list ${rootClass}__links-list--desktop`}>\n {this.siteInformationLinksArray.map((link, index) => (\n <li key={index}>\n <a\n target={link.target}\n data-id={link.id}\n href={link.url}\n onClick={this._onSiteInformationClick}\n {...(link.role ? { \"role\": link.role as AriaRole } : {})}>\n {link.title}\n </a>\n </li>\n ))}\n </ul>\n </nav>\n </div>\n )}\n </div>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"FooterTemplate.js","sourceRoot":"","sources":["../src/FooterTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import IconMode from \"@ui5/webcomponents/dist/types/IconMode.js\";\nimport UI5Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport UI5LinkDesign from \"@ui5/webcomponents/dist/types/LinkDesign.js\";\n\nimport headset from \"@ui5/webcomponents-icons/dist/headset.js\";\nimport email from \"@ui5/webcomponents-icons/dist/email.js\";\nimport backToTop from \"@ui5/webcomponents-icons/dist/back-to-top.js\";\nimport discussion from \"@ui5/webcomponents-icons/dist/discussion-2.js\";\nimport da from \"@ui5/webcomponents-icons/dist/da.js\";\n\nimport type Footer from \"./Footer.js\";\nimport UDExLink from \"./Link.js\";\nimport UDExDivider from \"./Divider.js\";\nimport UDExSocialMediaButton from \"./SocialMediaButton.js\";\nimport UDExAccordion from \"./Accordion.js\";\nimport UDExAccordionItem from \"./AccordionItem.js\";\nimport UDExButton from \"./Button.js\";\nimport UDExButtonDesign from \"./types/ButtonDesign.js\";\nimport UDExButtonSize from \"./types/ButtonSize.js\";\nimport UDExFooterAskJoulePosition from \"./types/FooterAskJoulePosition.js\";\nimport type { AriaRole } from \"@ui5/webcomponents-base\";\n\nexport default function FooterTemplate(this: Footer) {\n const rootClass = \"udex-footer\";\n\n return (\n <footer className={rootClass}>\n <div className={`${rootClass}__content`}>\n <div className={`${rootClass}__contact-social`}>\n {this.hasLogo && (\n <div className={`${rootClass}__logo`}>\n {this.hasLogoLink ? (\n <a\n href={this.logoHref}\n onClick={this._onLogoClick}\n title={this.logoTitle}\n aria-label={this.logoAriaLabel}>\n <img\n id={`${rootClass}__logo-image`}\n src={this.currentLogoUrl}\n className={this.logoClass}\n alt={this.logoAlt}\n />\n </a>\n ) : (\n <img\n id={`${rootClass}__logo-image`}\n src={this.currentLogoUrl}\n className={this.logoClass}\n alt={this.logoAlt}\n />\n )}\n {this.hasTagline && (\n <img\n id={`${rootClass}__tagline-image`}\n src={this.currentTaglineUrl}\n className={this.taglineClass}\n alt={this.taglineAlt}\n />\n )}\n </div>\n )}\n {this.isContactContainerVisible && (\n <div className={`${rootClass}__contact`}>\n {this.askJouleLink && this.askJoulePosition === UDExFooterAskJoulePosition.Start && askJouleBlock.call(this, rootClass)}\n {this.contactNumbersArray.length > 0 && (\n <div className={`${rootClass}__numbers`}>\n <div className={`${rootClass}__icon-container`}>\n <UI5Icon\n class={`${rootClass}__icon`}\n name={headset}\n mode={IconMode.Decorative}\n ></UI5Icon>\n </div>\n <div>\n <div className={`${rootClass}__numbers-wrapper`}>\n {this.contactNumbersArray.map((contact, index) => (\n <div key={index}>\n <span\n className=\"hidden\"\n aria-hidden\n id={`${rootClass}__${index}_phone-label`}>\n {`${this.phoneNumberAccessibleName} ${contact.country} : ${contact.number}`}\n </span>\n <p className={`${rootClass}__country`}>{contact.country}</p>\n <a\n href={`tel:${contact.number}`}\n className={`${rootClass}__number`}\n onClick={this._onContactPhoneClick}\n aria-labelledby={`${rootClass}__${index}_phone-label`}>\n {contact.number}\n </a>\n </div>\n ))}\n </div>\n {this.localCountryNumbersLink && (\n <p className={`${rootClass}__remark`}>\n {this.completeListTitle}\n <UDExLink\n class={`${rootClass}__remark-link`}\n onClick={this._onContactPhoneLocalNumbersClick}\n href={this.localCountryNumbersLink}\n design={UI5LinkDesign.Subtle}>\n {this.localCountryTitle}.\n </UDExLink>\n </p>\n )}\n </div>\n </div>\n )}\n {this.contactUsLink && (\n <div className={`${rootClass}__contact-us`}>\n <div className={`${rootClass}__icon-container`}>\n <UI5Icon\n class={`${rootClass}__icon`}\n name={email}\n mode={IconMode.Decorative}>\n </UI5Icon>\n </div>\n <span\n className=\"hidden\"\n aria-hidden\n id={`${rootClass}__contact-us-label`}>\n {this.contactUsAccessibleLabel}\n </span>\n <a\n href={this.contactUsLink}\n className={`${rootClass}__contact-us-link`}\n aria-labelledby={`${rootClass}__contact-us-label`}\n onClick={this._onContactEmailClick}>\n {this.contactUsAccessibleName}\n </a>\n </div>\n )}\n {this.chatWithUsLink && (\n <div className={`${rootClass}__chat-with-us`}>\n <div className={`${rootClass}__icon-container`}>\n <UI5Icon\n class={`${rootClass}__icon`}\n name={discussion}\n mode={IconMode.Decorative}>\n </UI5Icon>\n </div>\n <a\n href={this.chatWithUsLink}\n className={`${rootClass}__chat-with-us-link`}\n onClick={this._onContactChatClick}>\n {this.chatWithUsAccessibleName}\n </a>\n </div>\n )}\n {this.askJouleLink && this.askJoulePosition === UDExFooterAskJoulePosition.End && askJouleBlock.call(this, rootClass)}\n </div>\n )}\n </div>\n\n <UDExDivider class={`${rootClass}__divider`} accessibleRole=\"none\"></UDExDivider>\n\n {this._shouldRenderMobileMenu ? (\n mobileNavigation.call(this, rootClass)\n ) : (\n desktopNavigation.call(this, rootClass)\n )}\n\n <UDExDivider class={`${rootClass}__divider`} accessibleRole=\"none\"></UDExDivider>\n\n <div className={`${rootClass}__copyright`}>\n {this.isChineseLang && (\n <span className={`${rootClass}__copyright-chinese-text`}>\n <UDExLink\n href={this.chineseIcpNumberLink}\n title={this.chineseICPNumberText}\n design=\"Subtle\"\n class={`${rootClass}__copyright-chinese-link`}\n target=\"_blank\"\n >\n {this.chineseICPNumberText}\n </UDExLink>\n {this.chineseSecurityNetworkNumberText}\n </span>\n )}\n <span className={`${rootClass}__copyright-text`}>{this.copyrightText}</span>\n </div>\n\n {(this.socialLinksArray.length > 0 || this.hasSocialLinksSlot) && (\n <ul className={`${rootClass}__social-container`}>\n {this.socialLinksArray.map((social, index) => (\n <UDExSocialMediaButton\n {...{ role: \"listitem\" }}\n key={index}\n type={social.name}\n url={social.url}\n target={social.target}\n accessible-name={social.accessibleName}\n data-name={social.name}\n data-id={social.id}\n onui5-click={this._onSocialMediaLinkClick}>\n </UDExSocialMediaButton>\n ))}\n {this.hasSocialLinksSlot && (\n <>\n {this.customSocialLinks.map(link =>\n <slot name={link._individualSlot}></slot>\n )}\n </>\n )}\n </ul>\n )}\n </div>\n\n <UDExButton\n class={`${rootClass}__back-to-top-button`}\n icon={backToTop}\n onClick={this.onBackToTopClick}\n design={UDExButtonDesign.Tertiary}\n size={UDExButtonSize.Large}\n tooltip={this.backToTopTitle}>\n </UDExButton>\n </footer>\n );\n}\n\nfunction mobileNavigation(this: Footer, rootClass: string) {\n return (\n <UDExAccordion class={`${rootClass}__accordion`}>\n {this.quickLinksArray.length > 0 && (\n <>\n <UDExAccordionItem onAccordionItemClick={this.handleAccordionItemClick} label={this._quickLinksTitle} class={`${rootClass}__action-item`}>\n <ul className={`${rootClass}__links-list udex-footer__links-list--mobile`}>\n {this.quickLinksArray.map((link, index) => (\n <li key={index}>\n <a\n target={link.target}\n href={link.url}\n data-id={link.id}\n onClick={this._onQuickLinksClick}\n {...(link.role ? { \"role\": link.role as AriaRole } : {})}>\n {link.title}\n </a>\n </li>\n ))}\n </ul>\n <h6 className={`${rootClass}__links-item hidden`} aria-hidden=\"true\" id={`${rootClass}__quick-links`}>\n {this._quickLinksTitle}\n </h6>\n </UDExAccordionItem>\n </>\n )}\n\n {this.trendingLinksArray.length > 0 && (\n <>\n <UDExAccordionItem onAccordionItemClick={this.handleAccordionItemClick} label={this._trendingTitle} class={`${rootClass}__action-item`}>\n <ul className={`${rootClass}__links-list ${rootClass}__links-list--mobile`}>\n {this.trendingLinksArray.map((link, index) => (\n <li key={index}>\n <a\n target={link.target}\n href={link.url}\n data-id={link.id}\n onClick={this._onTrendingClick}\n {...(link.role ? { \"role\": link.role as AriaRole } : {})}>\n {link.title}\n </a>\n </li>\n ))}\n </ul>\n <h6 className={`${rootClass}__links-item hidden`} aria-hidden=\"true\" id={`${rootClass}__trending`}>\n {this._trendingTitle}\n </h6>\n </UDExAccordionItem>\n </>\n )}\n\n {this.aboutLinksArray.length > 0 && (\n <>\n <UDExAccordionItem onAccordionItemClick={this.handleAccordionItemClick} label={this._aboutSapTitle} class={`${rootClass}__action-item`}>\n <ul className={`${rootClass}__links-list ${rootClass}__links-list--mobile`}>\n {this.aboutLinksArray.map((link, index) => (\n <li key={index}>\n <a\n target={link.target}\n href={link.url}\n data-id={link.id}\n onClick={this._onAboutSapClick}\n {...(link.role ? { \"role\": link.role as AriaRole } : {})}>\n {link.title}\n </a>\n </li>\n ))}\n </ul>\n <h6 className={`${rootClass}__links-item hidden`} aria-hidden=\"true\" id={`${rootClass}__about`}>\n {this._aboutSapTitle}\n </h6>\n </UDExAccordionItem>\n </>\n )}\n\n {this.siteInformationLinksArray.length > 0 && (\n <>\n <UDExAccordionItem onAccordionItemClick={this.handleAccordionItemClick} label={this._siteInformationTitle} class={`${rootClass}__action-item`}>\n <ul className={`${rootClass}__links-list rootClass__links-list--mobile`}>\n {this.siteInformationLinksArray.map((link, index) => (\n <li key={index}>\n <a\n target={link.target}\n href={link.url}\n data-id={link.id}\n onClick={this._onSiteInformationClick}\n {...(link.role ? { \"role\": link.role as AriaRole } : {})}>\n {link.title}\n </a>\n </li>\n ))}\n </ul>\n <h6 className={`${rootClass}__links-item hidden`} aria-hidden=\"true\" id={`${rootClass}__site-information`}>\n {this._siteInformationTitle}\n </h6>\n </UDExAccordionItem>\n </>\n )}\n </UDExAccordion>\n );\n}\n\nfunction desktopNavigation(this: Footer, rootClass: string) {\n return (\n <div className={`${rootClass}__links`}>\n {this.quickLinksArray.length > 0 && (\n <div className={`${rootClass}__links-group ${rootClass}__quick-links`}>\n <h6 className={`${rootClass}__links-item`} id={`${rootClass}__quick-links`}>\n {this._quickLinksTitle}\n </h6>\n <nav>\n <ul aria-labelledby={`${rootClass}__quick-links`} className={`${rootClass}__links-list ${rootClass}__links-list--desktop`}>\n {this.quickLinksArray.map((link, index) => (\n <li key={index}>\n <a\n target={link.target}\n data-id={link.id}\n href={link.url}\n onClick={this._onQuickLinksClick}\n {...(link.role ? { \"role\": link.role as AriaRole } : {})}>\n <span className=\"udex-footer__nav-link-text\">{link.title}</span>\n </a>\n </li>\n ))}\n </ul>\n </nav>\n </div>\n )}\n {this.trendingLinksArray.length > 0 && (\n <div className={`${rootClass}__links-group ${rootClass}__trending-links`}>\n <h6 className={`${rootClass}__links-item`} id={`${rootClass}__trending`}>\n {this._trendingTitle}\n </h6>\n <nav>\n <ul aria-labelledby={`${rootClass}__trending`} className={`${rootClass}__links-list ${rootClass}__links-list--desktop`}>\n {this.trendingLinksArray.map((link, index) => (\n <li key={index}>\n <a\n target={link.target}\n data-id={link.id}\n href={link.url}\n onClick={this._onTrendingClick}\n {...(link.role ? { \"role\": link.role as AriaRole } : {})}>\n <span className=\"udex-footer__nav-link-text\">{link.title}</span>\n </a>\n </li>\n ))}\n </ul>\n </nav>\n </div>\n )}\n {this.aboutLinksArray.length > 0 && (\n <div className={`${rootClass}__links-group ${rootClass}__about-links`}>\n <h6 className={`${rootClass}__links-item`} id={`${rootClass}__about`}>\n {this._aboutSapTitle}\n </h6>\n <nav>\n <ul aria-labelledby={`${rootClass}__about`} className={`${rootClass}__links-list ${rootClass}__links-list--desktop`}>\n {this.aboutLinksArray.map((link, index) => (\n <li key={index}>\n <a\n target={link.target}\n data-id={link.id}\n href={link.url}\n onClick={this._onAboutSapClick}\n {...(link.role ? { \"role\": link.role as AriaRole } : {})}>\n <span className=\"udex-footer__nav-link-text\">{link.title}</span>\n </a>\n </li>\n ))}\n </ul>\n </nav>\n </div>\n )}\n {this.siteInformationLinksArray.length > 0 && (\n <div className={`${rootClass}__links-group ${rootClass}__site-information-links`}>\n <h6 className={`${rootClass}__links-item`} id={`${rootClass}__site-information`}>\n {this._siteInformationTitle}\n </h6>\n <nav>\n <ul aria-labelledby={`${rootClass}__site-information`} className={`${rootClass}__links-list ${rootClass}__links-list--desktop`}>\n {this.siteInformationLinksArray.map((link, index) => (\n <li key={index}>\n <a\n target={link.target}\n data-id={link.id}\n href={link.url}\n onClick={this._onSiteInformationClick}\n {...(link.role ? { \"role\": link.role as AriaRole } : {})}>\n <span className=\"udex-footer__nav-link-text\">{link.title}</span>\n </a>\n </li>\n ))}\n </ul>\n </nav>\n </div>\n )}\n </div>\n );\n}\n\nfunction askJouleBlock(this: Footer, rootClass: string) {\n return (\n <div className={`${rootClass}__ask-joule`}>\n <div className={`${rootClass}__icon-container`}>\n <UI5Icon\n class={`${rootClass}__icon`}\n name={da}\n mode={IconMode.Decorative}>\n </UI5Icon>\n </div>\n <a\n href={this.askJouleLink}\n className={`${rootClass}__ask-joule-link`}\n onClick={this._onAskJouleClick}>\n {this.askJouleAccessibleName}\n </a>\n </div>\n );\n}\n"]}
|
package/dist/ImageGridCloud.js
CHANGED
|
@@ -8,7 +8,7 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
|
8
8
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
9
9
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
10
10
|
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
11
|
-
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
11
|
+
import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
|
|
12
12
|
import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
|
|
13
13
|
import ImageGridCloudTemplate from "./ImageGridCloudTemplate.js";
|
|
14
14
|
// Styles
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ImageGridCloud.js","sourceRoot":"","sources":["../src/ImageGridCloud.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AAEpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAE3E,OAAO,aAAa,MAAM,wDAAwD,CAAC;AACnF,OAAO,IAAI,MAAM,
|
|
1
|
+
{"version":3,"file":"ImageGridCloud.js","sourceRoot":"","sources":["../src/ImageGridCloud.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { DefaultSlot } 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 type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport ImageGridCloudTemplate from \"./ImageGridCloudTemplate.js\";\nimport type UDExImageGridCloudItem from \"./ImageGridCloudItem.js\";\n\n// Styles\nimport ImageGridCloudCss from \"./generated/themes/ImageGridCloud.css.js\";\nimport { BreakpointUtils } from \"./utils/Breakpoints.js\";\n\nexport enum UDExImageGridCloudVariable {\n itemGapL = \"--udex-image-grid-cloud-item-gap-l\",\n itemGapS = \"--udex-image-grid-cloud-item-gap-s\",\n itemWidthL = \"--udex-image-grid-cloud-item-width-l\",\n itemWidthS = \"--udex-image-grid-cloud-item-width-s\",\n itemBorderWidth = \"--udex-image-grid-cloud-item-border-width\",\n}\n\nexport enum UDExImageGridCloudSize {\n Small = \"Small\",\n Large = \"Large\",\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>udex-image-grid-cloud</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/ImageGridCloud.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n tag: \"udex-image-grid-cloud\",\n renderer: jsxRenderer,\n styles: ImageGridCloudCss,\n template: ImageGridCloudTemplate,\n})\n\nclass UDExImageGridCloud extends UI5Element {\n /**\n * Grayscale mode enhances visual harmony and can be used for minimal,\n * professional layouts or to de-emphasize logos.\n *\n * @default undefined\n * @public\n */\n @property({ type: Boolean })\n grayscale?: boolean;\n\n /**\n * Defines the size of the items.\n *\n * @default \"Large\"\n * @private\n */\n @property({ type: String })\n size: `${UDExImageGridCloudSize}` = UDExImageGridCloudSize.Large;\n\n /**\n * Slot for image grid cloud items.\n *\n * @slot\n * @public\n */\n @slot({ type: HTMLElement, \"default\": true })\n items!: DefaultSlot<UDExImageGridCloudItem>;\n\n _rootId = \"udex-image-grid-cloud\";\n _rowClassName = \"udex-image-grid-cloud__row\";\n _container!: HTMLElement;\n _items: Array<Element> = [];\n\n _handleResizeBound: ResizeObserverCallback;\n\n constructor() {\n super();\n this._handleResizeBound = this.handleResize.bind(this);\n }\n\n onEnterDOM(): void {\n ResizeHandler.register(this, this._handleResizeBound);\n }\n\n onExitDOM(): void {\n ResizeHandler.deregister(this, this._handleResizeBound);\n }\n\n onAfterRendering() {\n this._container = this.containerElement;\n this._items = this.itemsElements;\n this.renderLayout();\n }\n\n handleResize(): void {\n this.renderLayout();\n }\n\n renderLayout() {\n if (this.isContainerEmpty) {\n return;\n }\n\n const ITEM_WIDTH = this.itemWidth + this.itemHorizontalBorderWidth;\n const GAP = this.itemGap;\n\n const existingRows = Array.from(this._container.querySelectorAll(`.${this._rowClassName}`));\n existingRows.forEach(row => row.remove());\n\n const containerWidth = this._container.clientWidth;\n const itemsPerRow = Math.max(Math.floor((containerWidth + GAP) / (ITEM_WIDTH + GAP)) || 0, 1);\n\n let index = 0;\n let rowIndex = 0;\n\n while (index < this._items.length) {\n const count = rowIndex % 2 === 0 ? itemsPerRow : Math.max(itemsPerRow - 1, 1);\n const row = document.createElement(\"div\");\n row.className = this._rowClassName;\n\n for (let i = 0; i < count && index < this._items.length; i++, index++) {\n row.appendChild(this._items[index]);\n }\n\n this._container.appendChild(row);\n rowIndex++;\n }\n }\n\n _getVariableValue(variableName: string): string {\n return window.getComputedStyle(this).getPropertyValue(`${variableName}`);\n }\n\n get itemWidth(): number {\n const variableName = this.isSmallSize || this.isMobile\n ? UDExImageGridCloudVariable.itemWidthS\n : UDExImageGridCloudVariable.itemWidthL;\n return parseInt(this._getVariableValue(variableName));\n }\n\n get itemGap(): number {\n const variableName = this.isSmallSize || this.isMobile\n ? UDExImageGridCloudVariable.itemGapS\n : UDExImageGridCloudVariable.itemGapL;\n return parseInt(this._getVariableValue(variableName));\n }\n\n get itemHorizontalBorderWidth(): number {\n const border = parseInt(this._getVariableValue(UDExImageGridCloudVariable.itemBorderWidth));\n return border * 2;\n }\n\n get isSmallSize(): boolean {\n return this.size === UDExImageGridCloudSize.Small;\n }\n\n get containerElement(): HTMLElement {\n return this.shadowRoot!.getElementById(this._rootId)!;\n }\n\n get itemsElements(): Array<Element> {\n return Array.from(this.containerElement.children);\n }\n\n get isMobile(): boolean {\n return BreakpointUtils.isAtMost(\"S\");\n }\n\n get isContainerEmpty(): boolean {\n return !this._container || this._items.length === 0;\n }\n}\n\nUDExImageGridCloud.define();\n\nexport default UDExImageGridCloud;\n"]}
|
package/dist/ImageGridTable.js
CHANGED
|
@@ -7,7 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
8
8
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
9
9
|
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
10
|
-
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
10
|
+
import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
|
|
11
11
|
import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
|
|
12
12
|
import ImageGridTableTemplate from "./ImageGridTableTemplate.js";
|
|
13
13
|
import { Breakpoints } from "./utils/Breakpoints.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ImageGridTable.js","sourceRoot":"","sources":["../src/ImageGridTable.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AAEpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AAErF,OAAO,aAAa,MAAM,wDAAwD,CAAC;AACnF,OAAO,IAAI,MAAM,
|
|
1
|
+
{"version":3,"file":"ImageGridTable.js","sourceRoot":"","sources":["../src/ImageGridTable.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { DefaultSlot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport type UDExImageGridTableItem from \"./ImageGridTableItem.js\";\nimport ImageGridTableTemplate from \"./ImageGridTableTemplate.js\";\nimport { Breakpoints } from \"./utils/Breakpoints.js\";\n\n// Styles\nimport ImageGridTableCss from \"./generated/themes/ImageGridTable.css.js\";\nimport property from \"@ui5/webcomponents-base/decorators/property.js\";\n\nexport enum UDExImageGridTableVariable {\n columns = \"--udex-image-grid-table-columns\",\n gapDesktop = \"--udex-image-grid-table-gap-xl-m\",\n gapMobile = \"--udex-image-grid-table-gap-s\",\n minWidth = \"--udex-image-grid-table-item-min-width\",\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>udex-image-grid-table</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/ImageGridTable.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n tag: \"udex-image-grid-table\",\n renderer: jsxRenderer,\n styles: ImageGridTableCss,\n template: ImageGridTableTemplate,\n})\n\nclass UDExImageGridTable extends UI5Element {\n /**\n * Slot for image grid table items.\n *\n * @slot\n * @public\n */\n @slot({ type: HTMLElement, \"default\": true })\n items!: DefaultSlot<UDExImageGridTableItem>;\n\n /**\n * Grayscale mode enhances visual harmony and can be used for minimal,\n * professional layouts or to de-emphasize logos.\n *\n * @default undefined\n * @public\n */\n @property({ type: Boolean })\n grayscale?: boolean;\n\n _handleResizeBound: ResizeObserverCallback;\n\n constructor() {\n super();\n this._handleResizeBound = this.handleResize.bind(this);\n }\n\n onAfterRendering(): void {\n if (!this.isSmallComponentSize) {\n this._renderGrid();\n }\n }\n\n onBeforeRendering(): void {\n if (this.grayscale) {\n this._setGrayscaleMode();\n }\n }\n\n onEnterDOM(): void {\n ResizeHandler.register(this, this._handleResizeBound);\n }\n\n onExitDOM(): void {\n ResizeHandler.deregister(this, this._handleResizeBound);\n }\n\n handleResize(): void {\n if (!this.isSmallComponentSize) {\n this._renderGrid();\n }\n }\n\n _renderGrid(): void {\n const containerWidth = this.offsetWidth;\n const itemCount = this.items.length;\n const minWidth = this.itemMinWidth;\n const gap = this.itemGap;\n\n if (!containerWidth || itemCount === 0) {\n return;\n }\n\n let columns = Math.floor((containerWidth - gap) / (minWidth + gap));\n columns = Math.max(1, columns);\n\n if (itemCount % columns === 1 && columns > 1) {\n columns -= 1;\n }\n\n this.style.setProperty(\n UDExImageGridTableVariable.columns,\n String(columns),\n );\n }\n\n _setGrayscaleMode(): void {\n this.items.forEach(item => {\n item._grayscale = true;\n });\n }\n\n get itemMinWidth(): number {\n const variableName = UDExImageGridTableVariable.minWidth;\n return parseInt(this.getVariableValue(variableName));\n }\n\n get itemGap(): number {\n const variableName = this.isSmallComponentSize\n ? UDExImageGridTableVariable.gapMobile\n : UDExImageGridTableVariable.gapDesktop;\n return parseInt(this.getVariableValue(variableName));\n }\n\n get isSmallComponentSize(): boolean {\n return this.offsetWidth <= Breakpoints.S.max;\n }\n\n getVariableValue(variableName: string): string {\n return window.getComputedStyle(this).getPropertyValue(`${variableName}`);\n }\n}\n\nUDExImageGridTable.define();\n\nexport default UDExImageGridTable;\n"]}
|
|
@@ -9,7 +9,7 @@ import { isDesktop } from "@ui5/webcomponents-base/Device.js";
|
|
|
9
9
|
import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
|
|
10
10
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
11
11
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
12
|
-
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
12
|
+
import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
|
|
13
13
|
import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
|
|
14
14
|
import { UDExTarget } from "./types/common.js";
|
|
15
15
|
import ImageGridTableItemTemplate from "./ImageGridTableItemTemplate.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ImageGridTableItem.js","sourceRoot":"","sources":["../src/ImageGridTableItem.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,KAAK,MAAM,yDAAyD,CAAC;AAC5E,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,
|
|
1
|
+
{"version":3,"file":"ImageGridTableItem.js","sourceRoot":"","sources":["../src/ImageGridTableItem.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,KAAK,MAAM,yDAAyD,CAAC;AAC5E,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,wDAAwD,CAAC;AAC1E,OAAO,WAAW,MAAM,sDAAsD,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,0BAA0B,MAAM,iCAAiC,CAAC;AAEzE,SAAS;AACT,OAAO,qBAAqB,MAAM,8CAA8C,CAAC;AAEjF;;;;;;;;;;;;;;;;GAgBG;AAeH,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,UAAU;IAA/C;;QAoEE;;;;WAIG;QAED,WAAM,GAAoB,UAAU,CAAC,KAAK,CAAC;QAE7C;;;;;WAKG;QAED,eAAU,GAAG,KAAK,CAAC;IAevB,CAAC;IAbC,UAAU;QACR,IAAI,SAAS,EAAE,EAAE,CAAC;YAChB,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,sBAAsB,CAAC,CAAQ;QAC7B,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAE3D,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,CAAC,CAAC,cAAc,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;CACF,CAAA;AAtFG;IADD,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;uDACR;AASnC;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;wDACP;AASlB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;yDACN;AASnB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;oDACX;AASd;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;mDACZ;AASb;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;mDACZ;AASb;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;uDACR;AAQjB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;sDACkB;AAS3C;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;0DACP;AAnFjB,sBAAsB;IAd3B,aAAa,CAAC;QACb,GAAG,EAAE,4BAA4B;QACjC,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,qBAAqB;QAC7B,QAAQ,EAAE,0BAA0B;KACrC,CAAC;IAEF;;;;OAIG;;IACF,KAAK,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;GAEnD,sBAAsB,CAkG3B;AAED,sBAAsB,CAAC,MAAM,EAAE,CAAC;AAEhC,eAAe,sBAAsB,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { DefaultSlot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/Device.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport { UDExTarget } from \"./types/common.js\";\n\nimport ImageGridTableItemTemplate from \"./ImageGridTableItemTemplate.js\";\n\n// Styles\nimport ImageGridTableItemCss from \"./generated/themes/ImageGridTableItem.css.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>udex-image-grid-table-item</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/ImageGridTableItem.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n tag: \"udex-image-grid-table-item\",\n renderer: jsxRenderer,\n styles: ImageGridTableItemCss,\n template: ImageGridTableItemTemplate,\n})\n\n/**\n * Fired event when the user clicks on the item link.\n *\n * @public\n */\n@event(\"item-click\", { cancelable: true, bubbles: true })\n\nclass UDExImageGridTableItem extends UI5Element {\n eventDetails!: {\n \"item-click\": void,\n };\n\n /**\n * Defines the text content of the component.\n *\n * @slot content\n * @public\n */\n @slot({ type: HTMLElement, \"default\": true })\n content!: DefaultSlot<HTMLElement>;\n\n /**\n * Defines the header text of the component.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n headline?: string;\n\n /**\n * Defines the link label of the component.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n linkLabel?: string;\n\n /**\n * Defines link URL\n *\n * @default undefined\n * @public\n */\n @property({ type: String })\n href?: string;\n\n /**\n * Defines the source URL of the image\n *\n * @default undefined\n * @public\n */\n @property({ type: String })\n src?: string;\n\n /**\n * Defines image alt text\n *\n * @default undefined\n * @public\n */\n @property({ type: String })\n alt?: string;\n\n /**\n * Defines tooltip on hover\n *\n * @default undefined\n * @public\n */\n @property({ type: String })\n tooltip?: string;\n\n /**\n * Defines target for the mage grid table item.\n *\n * @public\n */\n @property({ type: String })\n target: `${UDExTarget}` = UDExTarget._self;\n\n /**\n * Indicates whether the image grid table item is grayscale.\n *\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _grayscale = false;\n\n onEnterDOM(): void {\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n }\n\n fireLinkItemClickEvent(e: Event): void {\n const executeEvent = this.fireDecoratorEvent(\"item-click\");\n\n if (!executeEvent) {\n e.preventDefault();\n }\n }\n}\n\nUDExImageGridTableItem.define();\n\nexport default UDExImageGridTableItem;\n"]}
|
package/dist/ImageGridTicker.js
CHANGED
|
@@ -9,7 +9,7 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
|
9
9
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
10
10
|
import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
|
|
11
11
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
12
|
-
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
12
|
+
import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
|
|
13
13
|
import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
|
|
14
14
|
import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
|
|
15
15
|
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ImageGridTicker.js","sourceRoot":"","sources":["../src/ImageGridTicker.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { DefaultSlot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/Device.js\";\nimport { isLeft, isRight } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { PAUSE_BUTTON_ACCESSIBLE_NAME, PLAY_BUTTON_ACCESSIBLE_NAME } from \"./generated/i18n/i18n-defaults.js\";\nimport { BreakpointUtils } from \"./utils/Breakpoints.js\";\nimport type UDExImageGridTickerItem from \"./ImageGridTickerItem.js\";\nimport ImageGridTickerItem from \"./ImageGridTickerItem.js\";\nimport ImageGridTickerTemplate from \"./ImageGridTickerTemplate.js\";\nimport translate from \"./utils/translate.js\";\n\n// Styles\nimport ImageGridTickerCss from \"./generated/themes/ImageGridTicker.css.js\";\n\nexport enum UDExImageGridTickerVariable {\n itemGaps = \"--udex-image-grid-ticker-item-gaps\",\n itemWidth = \"--udex-image-grid-ticker-item-width\",\n}\n\ntype UDExImageGridTickerPlayBtnClickEventDetail = {\n isPaused: boolean;\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>udex-image-grid-ticker</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/ImageGridTicker.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n tag: \"udex-image-grid-ticker\",\n renderer: jsxRenderer,\n styles: ImageGridTickerCss,\n template: ImageGridTickerTemplate,\n dependencies: [ImageGridTickerItem],\n})\n\n/**\n * Fired event when the user click on a play/paused button.\n *\n * @public\n * @param {boolean} isPaused - Indicates whether the animation is paused.\n */\n@event(\"play-button-click\", { bubbles: true })\n\nclass UDExImageGridTicker extends UI5Element {\n eventDetails!: {\n \"play-button-click\": UDExImageGridTickerPlayBtnClickEventDetail;\n };\n\n /**\n * Slot for image grid ticker items.\n *\n * @slot\n * @public\n */\n @slot({ type: HTMLElement, \"default\": true, individualSlots: true })\n items!: DefaultSlot<UDExImageGridTickerItem>;\n\n /**\n * Grayscale mode enhances visual harmony and can be used for minimal,\n * professional layouts or to de-emphasize logos.\n *\n * @default undefined\n * @public\n */\n @property({ type: Boolean })\n grayscale?: boolean;\n\n /**\n * Indicates whether the image grid ticker is scrollable.\n *\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _isScrollable = false;\n\n /**\n * Indicates whether the screen size is small.\n *\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _isSmallScreen = false;\n\n /**\n * Indicates whether the animation is paused.\n *\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _isPaused = false;\n\n /**\n * Indicates focus in state.\n *\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _isFocusIn: boolean = false;\n\n /**\n * Indicates mobile view.\n *\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _isMobileView: boolean = false;\n\n /**\n * Defines direction of the component.\n *\n * @default undefined\n * @private\n */\n @property({ type: String })\n _direction!: string;\n\n _isPlayBtnClicked: boolean = false;\n _isMouseDown: boolean = false;\n _handleResizeBound: ResizeObserverCallback;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n constructor() {\n super();\n this._isMobileView = !this.isAtLeastBreakpointM;\n this._handleResizeBound = this._handleResize.bind(this);\n }\n\n onAfterRendering(): void {\n if (this._isMobileView) {\n this._handleMobileView();\n return;\n }\n\n this._handleDesktopView();\n }\n\n onEnterDOM(): void {\n ResizeHandler.register(this, this._handleResizeBound);\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n }\n\n onExitDOM(): void {\n ResizeHandler.deregister(this, this._handleResizeBound);\n }\n\n _handleResize(): void {\n this._isMobileView = !this.isAtLeastBreakpointM;\n this._checkScrollable();\n }\n\n _checkScrollable(): void {\n if (!this.grid || !this.track || this._isMobileView) {\n this._isScrollable = false;\n return;\n }\n\n const { width: itemWidth, gaps: itemGaps } = this.itemDimensions;\n const totalItemWidth = itemWidth + itemGaps;\n const totalWidth = this.items.length * totalItemWidth;\n\n this._isScrollable = totalWidth > this.grid.offsetWidth;\n }\n\n _startAnimation(): void {\n if (this._isScrollable && !this._isPlayBtnClicked && !this._isMobileView) {\n this._isPaused = false;\n }\n }\n\n _stopAnimation(): void {\n if (this._isScrollable && !this._isMobileView) {\n this._isPaused = true;\n }\n }\n\n _toggleAnimation(): void {\n this._isPlayBtnClicked = !this._isPlayBtnClicked;\n if (this._isPaused) {\n this._startAnimation();\n } else {\n this._stopAnimation();\n }\n }\n\n _onFocusIn(): void {\n if (this._isMouseDown || !this._isScrollable) {\n return;\n }\n\n this._isFocusIn = true;\n this._stopAnimation();\n\n const focusedItem = this.trackItems[this.focusedIndex];\n const isLastItem = this.focusedIndex === this.trackItems.length - 1;\n const { right, left } = focusedItem.getBoundingClientRect();\n const windowWidth = window.innerWidth || document.documentElement.clientWidth;\n const isPartiallyVisible = right > 0 && left < windowWidth;\n\n if (isPartiallyVisible) {\n focusedItem.scrollIntoView({\n behavior: \"smooth\",\n block: \"nearest\",\n inline: \"center\",\n });\n }\n\n if (isLastItem) {\n this._focusLastItem();\n }\n }\n\n _onFocusOut(): void {\n this._isFocusIn = false;\n this._startAnimation();\n }\n\n _onKeyDown(e: KeyboardEvent): void {\n if (isLeft(e) || isRight(e)) {\n e.preventDefault();\n const direction = (isLeft(e) && !this.isRtl) || (isRight(e) && this.isRtl) ? -1 : 1;\n const index = this.focusedIndex + direction;\n\n if (index >= 0 && index < this.trackItems.length) {\n this._focusItem(this.trackItems[index]);\n }\n }\n }\n\n _onMouseDown(): void {\n this._isMouseDown = true;\n }\n\n _onMouseUp(): void {\n this._isMouseDown = false;\n }\n\n _focusLastItem(): void {\n const lastItem = this.trackItems[this.items.length - 1];\n this._focusItem(lastItem);\n lastItem.scrollIntoView({\n behavior: \"smooth\",\n block: \"nearest\",\n });\n }\n\n _handleMobileView(): void {\n this._isScrollable = false;\n this._stopAnimation();\n }\n\n _handleDesktopView(): void {\n this._handleDirection();\n this._checkScrollable();\n if (this._isScrollable && !this._isPaused && !this._isMobileView) {\n this._startAnimation();\n } else {\n this._stopAnimation();\n }\n }\n\n _focusItem(item: HTMLElement): void {\n const link = item.shadowRoot?.querySelector(\".udex-image-grid-ticker-item__link\") as HTMLElement;\n link.focus();\n }\n\n _handleDirection(): void {\n const directionStyles = window.getComputedStyle(this).getPropertyValue(\"direction\");\n this._direction = directionStyles || \"ltr\";\n }\n\n _onPlayButtonClick(): void {\n this._toggleAnimation();\n this._firePlayButtonClickEvent();\n }\n\n _firePlayButtonClickEvent(): void {\n this.fireDecoratorEvent(\"play-button-click\", {\n isPaused: this._isPaused,\n });\n }\n\n _getPropertyValues(variable: string): number {\n const itemStyles = window.getComputedStyle(this.items[0]);\n return parseInt(itemStyles.getPropertyValue(variable));\n }\n\n get itemDimensions(): { width: number; gaps: number } {\n const width = this._getPropertyValues(UDExImageGridTickerVariable.itemWidth);\n const gaps = this._getPropertyValues(UDExImageGridTickerVariable.itemGaps) * 2;\n return { width, gaps };\n }\n\n get trackItems(): HTMLElement[] {\n return Array.from(this.track.children) as HTMLElement[];\n }\n\n get focusedIndex(): number {\n return this.trackItems.findIndex(item => item.matches(\":focus\"));\n }\n\n get isAtLeastBreakpointM(): boolean {\n return BreakpointUtils.isAtLeast(\"M\");\n }\n\n get track(): HTMLElement {\n return this.shadowRoot?.querySelector(\".udex-image-grid-ticker__track\") as HTMLElement;\n }\n\n get grid(): HTMLElement {\n return this.shadowRoot?.querySelector(\".udex-image-grid-ticker\") as HTMLElement;\n }\n\n get isRtl(): boolean {\n return this._direction === \"rtl\";\n }\n\n get playBtnTooltipText(): string {\n return this._isPaused\n ? translate(UDExImageGridTicker, PLAY_BUTTON_ACCESSIBLE_NAME)\n : translate(UDExImageGridTicker, PAUSE_BUTTON_ACCESSIBLE_NAME);\n }\n}\n\nUDExImageGridTicker.define();\n\nexport default UDExImageGridTicker;\nexport type { UDExImageGridTickerPlayBtnClickEventDetail };\n"]}
|
|
1
|
+
{"version":3,"file":"ImageGridTicker.js","sourceRoot":"","sources":["../src/ImageGridTicker.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { DefaultSlot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/Device.js\";\nimport { isLeft, isRight } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { PAUSE_BUTTON_ACCESSIBLE_NAME, PLAY_BUTTON_ACCESSIBLE_NAME } from \"./generated/i18n/i18n-defaults.js\";\nimport { BreakpointUtils } from \"./utils/Breakpoints.js\";\nimport type UDExImageGridTickerItem from \"./ImageGridTickerItem.js\";\nimport ImageGridTickerItem from \"./ImageGridTickerItem.js\";\nimport ImageGridTickerTemplate from \"./ImageGridTickerTemplate.js\";\nimport translate from \"./utils/translate.js\";\n\n// Styles\nimport ImageGridTickerCss from \"./generated/themes/ImageGridTicker.css.js\";\n\nexport enum UDExImageGridTickerVariable {\n itemGaps = \"--udex-image-grid-ticker-item-gaps\",\n itemWidth = \"--udex-image-grid-ticker-item-width\",\n}\n\ntype UDExImageGridTickerPlayBtnClickEventDetail = {\n isPaused: boolean;\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>udex-image-grid-ticker</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/ImageGridTicker.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n tag: \"udex-image-grid-ticker\",\n renderer: jsxRenderer,\n styles: ImageGridTickerCss,\n template: ImageGridTickerTemplate,\n dependencies: [ImageGridTickerItem],\n})\n\n/**\n * Fired event when the user click on a play/paused button.\n *\n * @public\n * @param {boolean} isPaused - Indicates whether the animation is paused.\n */\n@event(\"play-button-click\", { bubbles: true })\n\nclass UDExImageGridTicker extends UI5Element {\n eventDetails!: {\n \"play-button-click\": UDExImageGridTickerPlayBtnClickEventDetail;\n };\n\n /**\n * Slot for image grid ticker items.\n *\n * @slot\n * @public\n */\n @slot({ type: HTMLElement, \"default\": true, individualSlots: true })\n items!: DefaultSlot<UDExImageGridTickerItem>;\n\n /**\n * Grayscale mode enhances visual harmony and can be used for minimal,\n * professional layouts or to de-emphasize logos.\n *\n * @default undefined\n * @public\n */\n @property({ type: Boolean })\n grayscale?: boolean;\n\n /**\n * Indicates whether the image grid ticker is scrollable.\n *\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _isScrollable = false;\n\n /**\n * Indicates whether the screen size is small.\n *\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _isSmallScreen = false;\n\n /**\n * Indicates whether the animation is paused.\n *\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _isPaused = false;\n\n /**\n * Indicates focus in state.\n *\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _isFocusIn: boolean = false;\n\n /**\n * Indicates mobile view.\n *\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _isMobileView: boolean = false;\n\n /**\n * Defines direction of the component.\n *\n * @default undefined\n * @private\n */\n @property({ type: String })\n _direction!: string;\n\n _isPlayBtnClicked: boolean = false;\n _isMouseDown: boolean = false;\n _handleResizeBound: ResizeObserverCallback;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n constructor() {\n super();\n this._isMobileView = !this.isAtLeastBreakpointM;\n this._handleResizeBound = this._handleResize.bind(this);\n }\n\n onAfterRendering(): void {\n if (this._isMobileView) {\n this._handleMobileView();\n return;\n }\n\n this._handleDesktopView();\n }\n\n onEnterDOM(): void {\n ResizeHandler.register(this, this._handleResizeBound);\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n }\n\n onExitDOM(): void {\n ResizeHandler.deregister(this, this._handleResizeBound);\n }\n\n _handleResize(): void {\n this._isMobileView = !this.isAtLeastBreakpointM;\n this._checkScrollable();\n }\n\n _checkScrollable(): void {\n if (!this.grid || !this.track || this._isMobileView) {\n this._isScrollable = false;\n return;\n }\n\n const { width: itemWidth, gaps: itemGaps } = this.itemDimensions;\n const totalItemWidth = itemWidth + itemGaps;\n const totalWidth = this.items.length * totalItemWidth;\n\n this._isScrollable = totalWidth > this.grid.offsetWidth;\n }\n\n _startAnimation(): void {\n if (this._isScrollable && !this._isPlayBtnClicked && !this._isMobileView) {\n this._isPaused = false;\n }\n }\n\n _stopAnimation(): void {\n if (this._isScrollable && !this._isMobileView) {\n this._isPaused = true;\n }\n }\n\n _toggleAnimation(): void {\n this._isPlayBtnClicked = !this._isPlayBtnClicked;\n if (this._isPaused) {\n this._startAnimation();\n } else {\n this._stopAnimation();\n }\n }\n\n _onFocusIn(): void {\n if (this._isMouseDown || !this._isScrollable) {\n return;\n }\n\n this._isFocusIn = true;\n this._stopAnimation();\n\n const focusedItem = this.trackItems[this.focusedIndex];\n const isLastItem = this.focusedIndex === this.trackItems.length - 1;\n const { right, left } = focusedItem.getBoundingClientRect();\n const windowWidth = window.innerWidth || document.documentElement.clientWidth;\n const isPartiallyVisible = right > 0 && left < windowWidth;\n\n if (isPartiallyVisible) {\n focusedItem.scrollIntoView({\n behavior: \"smooth\",\n block: \"nearest\",\n inline: \"center\",\n });\n }\n\n if (isLastItem) {\n this._focusLastItem();\n }\n }\n\n _onFocusOut(): void {\n this._isFocusIn = false;\n this._startAnimation();\n }\n\n _onKeyDown(e: KeyboardEvent): void {\n if (isLeft(e) || isRight(e)) {\n e.preventDefault();\n const direction = (isLeft(e) && !this.isRtl) || (isRight(e) && this.isRtl) ? -1 : 1;\n const index = this.focusedIndex + direction;\n\n if (index >= 0 && index < this.trackItems.length) {\n this._focusItem(this.trackItems[index]);\n }\n }\n }\n\n _onMouseDown(): void {\n this._isMouseDown = true;\n }\n\n _onMouseUp(): void {\n this._isMouseDown = false;\n }\n\n _focusLastItem(): void {\n const lastItem = this.trackItems[this.items.length - 1];\n this._focusItem(lastItem);\n lastItem.scrollIntoView({\n behavior: \"smooth\",\n block: \"nearest\",\n });\n }\n\n _handleMobileView(): void {\n this._isScrollable = false;\n this._stopAnimation();\n }\n\n _handleDesktopView(): void {\n this._handleDirection();\n this._checkScrollable();\n if (this._isScrollable && !this._isPaused && !this._isMobileView) {\n this._startAnimation();\n } else {\n this._stopAnimation();\n }\n }\n\n _focusItem(item: HTMLElement): void {\n const link = item.shadowRoot?.querySelector(\".udex-image-grid-ticker-item__link\") as HTMLElement;\n link.focus();\n }\n\n _handleDirection(): void {\n const directionStyles = window.getComputedStyle(this).getPropertyValue(\"direction\");\n this._direction = directionStyles || \"ltr\";\n }\n\n _onPlayButtonClick(): void {\n this._toggleAnimation();\n this._firePlayButtonClickEvent();\n }\n\n _firePlayButtonClickEvent(): void {\n this.fireDecoratorEvent(\"play-button-click\", {\n isPaused: this._isPaused,\n });\n }\n\n _getPropertyValues(variable: string): number {\n const itemStyles = window.getComputedStyle(this.items[0]);\n return parseInt(itemStyles.getPropertyValue(variable));\n }\n\n get itemDimensions(): { width: number; gaps: number } {\n const width = this._getPropertyValues(UDExImageGridTickerVariable.itemWidth);\n const gaps = this._getPropertyValues(UDExImageGridTickerVariable.itemGaps) * 2;\n return { width, gaps };\n }\n\n get trackItems(): HTMLElement[] {\n return Array.from(this.track.children) as HTMLElement[];\n }\n\n get focusedIndex(): number {\n return this.trackItems.findIndex(item => item.matches(\":focus\"));\n }\n\n get isAtLeastBreakpointM(): boolean {\n return BreakpointUtils.isAtLeast(\"M\");\n }\n\n get track(): HTMLElement {\n return this.shadowRoot?.querySelector(\".udex-image-grid-ticker__track\") as HTMLElement;\n }\n\n get grid(): HTMLElement {\n return this.shadowRoot?.querySelector(\".udex-image-grid-ticker\") as HTMLElement;\n }\n\n get isRtl(): boolean {\n return this._direction === \"rtl\";\n }\n\n get playBtnTooltipText(): string {\n return this._isPaused\n ? translate(UDExImageGridTicker, PLAY_BUTTON_ACCESSIBLE_NAME)\n : translate(UDExImageGridTicker, PAUSE_BUTTON_ACCESSIBLE_NAME);\n }\n}\n\nUDExImageGridTicker.define();\n\nexport default UDExImageGridTicker;\nexport type { UDExImageGridTickerPlayBtnClickEventDetail };\n"]}
|
package/dist/InputGroup.js
CHANGED
|
@@ -9,7 +9,7 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
|
9
9
|
import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
|
|
10
10
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
11
11
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
12
|
-
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
12
|
+
import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
|
|
13
13
|
import Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
14
14
|
import UDExStatusMessage from "./StatusMessage.js";
|
|
15
15
|
import InputGroupTemplate from "./InputGroupTemplate.js";
|
package/dist/InputGroup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputGroup.js","sourceRoot":"","sources":["../src/InputGroup.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AAEpE,OAAO,WAAW,MAAM,iDAAiD,CAAC;AAC1E,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,
|
|
1
|
+
{"version":3,"file":"InputGroup.js","sourceRoot":"","sources":["../src/InputGroup.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AAEpE,OAAO,WAAW,MAAM,iDAAiD,CAAC;AAC1E,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,wDAAwD,CAAC;AAC1E,OAAO,IAAI,MAAM,iCAAiC,CAAC;AAGnD,OAAO,iBAAiB,MAAM,oBAAoB,CAAC;AACnD,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AACzD,OAAO,IAAI,MAAM,iDAAiD,CAAC;AAEnE,OAAO,EACL,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,SAAS,MAAM,sBAAsB,CAAC;AAE7C,SAAS;AACT,OAAO,aAAa,MAAM,sCAAsC,CAAC;AAEjE,MAAM,CAAN,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,4CAAqB,CAAA;IACrB,sCAAe,CAAA;IACf,0CAAmB,CAAA;AACrB,CAAC,EAJW,mBAAmB,KAAnB,mBAAmB,QAI9B;AAED,MAAM,CAAN,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,wCAAqB,CAAA;IACrB,4CAAyB,CAAA;AAC3B,CAAC,EAHW,eAAe,KAAf,eAAe,QAG1B;AAED;;;;;;;;;;;;;;;;GAgBG;AAUH,IAAM,cAAc,sBAApB,MAAM,cAAe,SAAQ,UAAU;IAAvC;;QASE;;;;;WAKG;QAED,gBAAW,GAAyB,eAAe,CAAC,QAAQ,CAAC;QAE/D;;;;;WAKG;QAED,eAAU,GAA6B,UAAU,CAAC;IA0CtD,CAAC;IAnBC,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;YACzB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBAAC,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;YAAC,CAAC;YACjD,OAAO;gBACL,IAAI,EAAE,EAAE;aACT,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,sBAAsB;QACxB,OAAO;YACL,SAAS,EAAE,SAAS,CAAC,gBAAc,EAAE,mBAAmB,CAAC;YACzD,OAAO,EAAE,SAAS,CAAC,gBAAc,EAAE,iBAAiB,CAAC;SACtD,CAAC;IACJ,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC7E,CAAC;CACF,CAAA;AA5DG;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;iDACN;AASnB;IADD,QAAQ,EAAE;mDACoD;AAS7D;IADD,QAAQ,EAAE;kDACyC;AASlD;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;sDACD;AASxB;IADD,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;6CACd;AAG/C;IADN,IAAI,CAAC,yBAAyB,CAAC;wCACF;AA9C1B,cAAc;IARnB,aAAa,CAAC;QACb,GAAG,EAAE,kBAAkB;QACvB,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,aAAa;QACrB,QAAQ,EAAE,kBAAkB;QAC5B,YAAY,EAAE,CAAC,IAAI,EAAE,iBAAiB,CAAC;KACxC,CAAC;GAEI,cAAc,CAmEnB;AAED,cAAc,CAAC,MAAM,EAAE,CAAC;AAExB,eAAe,cAAc,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { DefaultSlot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/renderer/JsxRenderer.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport type UDExCheckbox from \"./Checkbox.js\";\nimport type UDExRadioButton from \"./RadioButton.js\";\nimport UDExStatusMessage from \"./StatusMessage.js\";\nimport InputGroupTemplate from \"./InputGroupTemplate.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n VALUE_STATE_ERROR,\n VALUE_STATE_SUCCESS,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport translate from \"./utils/translate.js\";\n\n// Styles\nimport InputGroupCss from \"./generated/themes/InputGroup.css.js\";\n\nexport enum UDExGroupValueState {\n Standard = \"Standard\",\n Error = \"Error\",\n Success = \"Success\",\n}\n\nexport enum UDExOrientation {\n Vertical = \"Vertical\",\n Horizontal = \"Horizontal\",\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>udex-input-group</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/InputGroup.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n */\n\n@customElement({\n tag: \"udex-input-group\",\n renderer: jsxRenderer,\n styles: InputGroupCss,\n template: InputGroupTemplate,\n dependencies: [Icon, UDExStatusMessage],\n})\n\nclass UDExInputGroup extends UI5Element {\n /**\n * Defines the group name of the component.\n *\n * @public\n */\n @property({ type: String })\n groupName?: string;\n\n /**\n * Defines the orientation of the component.\n *\n * @default \"Vertical\"\n * @public\n */\n @property()\n orientation: `${UDExOrientation}` = UDExOrientation.Vertical;\n\n /**\n * Defines the value state of the component.\n *\n * @default \"Standard\"\n * @public\n */\n @property()\n valueState: `${UDExGroupValueState}` = \"Standard\";\n\n /**\n * Defines supporting text under the Input Group.\n *\n * @default undefined\n * @public\n */\n @property({ type: String })\n supportingText?: string;\n\n /**\n * Slot for input elements items.\n *\n * @slot\n * @public\n */\n @slot({ type: HTMLElement, \"default\": true, individualSlots: true })\n items!: DefaultSlot<UDExCheckbox | UDExRadioButton>;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n get _items() {\n return this.items.map(el => {\n if (this.groupName) { el.name = this.groupName; }\n return {\n item: el,\n };\n });\n }\n\n get valueStateTypeMappings(): Record<string, string> {\n return {\n \"Success\": translate(UDExInputGroup, VALUE_STATE_SUCCESS),\n \"Error\": translate(UDExInputGroup, VALUE_STATE_ERROR),\n };\n }\n\n get valueStateText(): string | undefined {\n return this.supportingText || this.valueStateTypeMappings[this.valueState];\n }\n}\n\nUDExInputGroup.define();\n\nexport default UDExInputGroup;\n"]}
|
package/dist/LinkList.js
CHANGED
|
@@ -7,7 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
8
8
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
9
9
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
10
|
-
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
10
|
+
import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
|
|
11
11
|
import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
|
|
12
12
|
import LinkListTemplate from "./LinkListTemplate.js";
|
|
13
13
|
// Styles
|
package/dist/LinkList.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LinkList.js","sourceRoot":"","sources":["../src/LinkList.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AAEpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,
|
|
1
|
+
{"version":3,"file":"LinkList.js","sourceRoot":"","sources":["../src/LinkList.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AAEpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,wDAAwD,CAAC;AAC1E,OAAO,WAAW,MAAM,sDAAsD,CAAC;AAE/E,OAAO,gBAAgB,MAAM,uBAAuB,CAAC;AAErD,SAAS;AACT,OAAO,WAAW,MAAM,oCAAoC,CAAC;AAE7D,MAAM,CAAN,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,iCAAa,CAAA;IACb,mCAAe,CAAA;IACf,mCAAe,CAAA;AACjB,CAAC,EAJW,gBAAgB,KAAhB,gBAAgB,QAI3B;AAED;;;;;;;;;;;;;;;;;GAiBG;AAQH,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,UAAU;IAArC;;QAUE;;;;;WAKG;QAED,mBAAc,GAAG,MAAM,CAAC;QAW1B;;;;;WAKG;QAED,SAAI,GAA0B,gBAAgB,CAAC,IAAI,CAAC;IAYxD,CAAC;IAVC,iBAAiB;QACf,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACxB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACtB,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC;QACpC,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAvCG;IADD,QAAQ,EAAE;oDACe;AASxB;IADD,QAAQ,EAAE;oDACe;AASxB;IADD,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;2CACL;AAStC;IADD,QAAQ,EAAE;0CAC2C;AAnClD,YAAY;IAPjB,aAAa,CAAC;QACb,GAAG,EAAE,gBAAgB;QACrB,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,WAAW;QACnB,QAAQ,EAAE,gBAAgB;KAC3B,CAAC;GAEI,YAAY,CA+CjB;AAED,YAAY,CAAC,MAAM,EAAE,CAAC;AAEtB,eAAe,YAAY,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { DefaultSlot } 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 slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport type UDExLinkListItem from \"./LinkListItem.js\";\nimport LinkListTemplate from \"./LinkListTemplate.js\";\n\n// Styles\nimport LinkListCss from \"./generated/themes/LinkList.css.js\";\n\nexport enum UDExLinkListType {\n Link = \"Link\",\n TileS = \"TileS\",\n TileL = \"TileL\",\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>udex-link-list</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/LinkList.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @tagname udex-link-list\n * @public\n */\n@customElement({\n tag: \"udex-link-list\",\n renderer: jsxRenderer,\n styles: LinkListCss,\n template: LinkListTemplate,\n})\n\nclass UDExLinkList extends UI5Element {\n /**\n * Defines the accessible ARIA name of the component.\n *\n * @default undefined\n * @public\n */\n @property()\n accessibleName?: string;\n\n /**\n * Defines the role of the item.\n * @public\n * @default \"list\"\n *\n */\n @property()\n accessibleRole = \"list\";\n\n /**\n * Slot for list items.\n *\n * @slot items\n * @public\n */\n @slot({ type: HTMLElement, \"default\": true })\n items!: DefaultSlot<UDExLinkListItem>;\n\n /**\n * Defines the type of the item.\n *\n * @default \"link-based\"\n * @public\n */\n @property()\n type: `${UDExLinkListType}` = UDExLinkListType.Link;\n\n onBeforeRendering(): void {\n this.prepareListItems();\n }\n\n prepareListItems(): void {\n this.items.forEach(item => {\n item.type = this.type;\n item._accessibleRole = \"listitem\";\n });\n }\n}\n\nUDExLinkList.define();\n\nexport default UDExLinkList;\n"]}
|
package/dist/List.js
CHANGED
|
@@ -8,20 +8,20 @@ var UDExList_1;
|
|
|
8
8
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
9
9
|
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
10
10
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
11
|
-
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
11
|
+
import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
|
|
12
12
|
import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
|
|
13
|
-
import
|
|
13
|
+
import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
|
|
14
14
|
import { isUp, isDown, isHome, isEnd, isRight, isLeft, } from "@ui5/webcomponents-base/dist/Keys.js";
|
|
15
15
|
import { UDExListStyleType, UDExListMode } from "./types/List.js";
|
|
16
16
|
import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
|
|
17
17
|
import { ARIA_LABEL_LIST_MULTISELECTABLE, ARIA_LABEL_LIST_SELECTABLE } from "./generated/i18n/i18n-defaults.js";
|
|
18
|
-
import ListTemplate from "./generated/templates/ListTemplate.lit.js";
|
|
19
18
|
import translate from "./utils/translate.js";
|
|
20
|
-
// Styles
|
|
21
|
-
import ListCss from "./generated/themes/List.css.js";
|
|
22
19
|
import isLetterKey from "./utils/isLetterKeyPressed.js";
|
|
23
20
|
import UDExFirstLetterFocusHandler from "./utils/ListWithFirstLetterFocus.js";
|
|
24
21
|
import getEffectiveScrollbarStyle from "./utils/getEffectiveScrollbarStyle.js";
|
|
22
|
+
import ListTemplate from "./ListTemplate.js";
|
|
23
|
+
// Styles
|
|
24
|
+
import ListCss from "./generated/themes/List.css.js";
|
|
25
25
|
/**
|
|
26
26
|
* @class
|
|
27
27
|
*
|
|
@@ -490,11 +490,11 @@ __decorate([
|
|
|
490
490
|
], UDExList, "i18nBundle", void 0);
|
|
491
491
|
UDExList = UDExList_1 = __decorate([
|
|
492
492
|
customElement({
|
|
493
|
+
languageAware: true,
|
|
493
494
|
tag: "udex-list",
|
|
494
|
-
renderer:
|
|
495
|
+
renderer: jsxRenderer,
|
|
495
496
|
styles: [ListCss, getEffectiveScrollbarStyle()],
|
|
496
497
|
template: ListTemplate,
|
|
497
|
-
dependencies: [],
|
|
498
498
|
})
|
|
499
499
|
/**
|
|
500
500
|
* Fired when selection is changed by user interaction
|