@sapudex/web-components 2.14.0 → 2.16.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 +77 -0
- package/cypress/specs/FilterMenu.cy.tsx +19 -43
- package/cypress/specs/HeroBanner.cy.tsx +6 -6
- package/cypress/specs/InputGroup.cy.tsx +47 -0
- package/cypress/specs/RatingBar.cy.tsx +41 -0
- package/cypress/specs/Tooltip.cy.tsx +6 -11
- package/cypress/support/component-imports.instrumented.ts +4 -0
- package/cypress/support/component-imports.src.ts +4 -0
- package/dist/Accordion.js +44 -30
- package/dist/Accordion.js.map +1 -1
- package/dist/Breadcrumbs.d.ts +2 -0
- package/dist/Breadcrumbs.js +8 -7
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/BreadcrumbsItem.d.ts +1 -2
- package/dist/BreadcrumbsItem.js.map +1 -1
- package/dist/BreadcrumbsPopoverTemplate.d.ts +2 -0
- package/dist/BreadcrumbsPopoverTemplate.js +8 -0
- package/dist/BreadcrumbsPopoverTemplate.js.map +1 -0
- package/dist/BreadcrumbsTemplate.d.ts +2 -0
- package/dist/BreadcrumbsTemplate.js +10 -0
- package/dist/BreadcrumbsTemplate.js.map +1 -0
- package/dist/FilterMenu.js +1 -2
- package/dist/FilterMenu.js.map +1 -1
- package/dist/FilterMenuSelectAll.d.ts +0 -1
- package/dist/FilterMenuSelectAll.js +0 -3
- package/dist/FilterMenuSelectAll.js.map +1 -1
- package/dist/Footer.d.ts +17 -21
- package/dist/Footer.js +5 -11
- package/dist/Footer.js.map +1 -1
- package/dist/FooterTemplate.d.ts +2 -0
- package/dist/FooterTemplate.js +27 -0
- package/dist/FooterTemplate.js.map +1 -0
- package/dist/HeroBanner.js +4 -4
- package/dist/HeroBanner.js.map +1 -1
- package/dist/HeroBannerTemplate.d.ts +2 -0
- package/dist/HeroBannerTemplate.js +10 -0
- package/dist/HeroBannerTemplate.js.map +1 -0
- package/dist/InputGroup.d.ts +0 -1
- package/dist/InputGroup.js +3 -6
- package/dist/InputGroup.js.map +1 -1
- package/dist/InputGroupTemplate.d.ts +2 -0
- package/dist/InputGroupTemplate.js +7 -0
- package/dist/InputGroupTemplate.js.map +1 -0
- package/dist/MastheadMobileMenu.js +1 -1
- package/dist/MastheadMobileMenu.js.map +1 -1
- package/dist/RatingBar.js +3 -3
- package/dist/RatingBar.js.map +1 -1
- package/dist/RatingBarTemplate.d.ts +2 -0
- package/dist/RatingBarTemplate.js +8 -0
- package/dist/RatingBarTemplate.js.map +1 -0
- package/dist/Search.js +5 -4
- package/dist/Search.js.map +1 -1
- package/dist/SearchableListBase.d.ts +2 -1
- package/dist/SearchableListBase.js +13 -23
- package/dist/SearchableListBase.js.map +1 -1
- package/dist/SelectBox.js +1 -2
- package/dist/SelectBox.js.map +1 -1
- package/dist/StatusBadge.js +3 -3
- package/dist/StatusBadge.js.map +1 -1
- package/dist/StatusBadgeTemplate.d.ts +2 -0
- package/dist/StatusBadgeTemplate.js +7 -0
- package/dist/StatusBadgeTemplate.js.map +1 -0
- package/dist/StatusMessage.js +3 -3
- package/dist/StatusMessage.js.map +1 -1
- package/dist/StatusMessageTemplate.d.ts +2 -0
- package/dist/StatusMessageTemplate.js +8 -0
- package/dist/StatusMessageTemplate.js.map +1 -0
- package/dist/Switch.d.ts +1 -4
- package/dist/Switch.js +4 -8
- package/dist/Switch.js.map +1 -1
- package/dist/SwitchTemplate.d.ts +2 -0
- package/dist/SwitchTemplate.js +12 -0
- package/dist/SwitchTemplate.js.map +1 -0
- package/dist/TagGroup.d.ts +2 -0
- package/dist/TagGroup.js +10 -3
- package/dist/TagGroup.js.map +1 -1
- package/dist/TruncatedText.d.ts +0 -1
- package/dist/TruncatedText.js +5 -6
- package/dist/TruncatedText.js.map +1 -1
- package/dist/TruncatedTextTemplate.d.ts +2 -0
- package/dist/TruncatedTextTemplate.js +9 -0
- package/dist/TruncatedTextTemplate.js.map +1 -0
- package/dist/assets/{InputSuggestions-AxcsfuTc.js → InputSuggestions-lpqKgn1j.js} +1 -1
- package/dist/assets/{ListItemStandardExpandableTextTemplate-CaS49yZt.js → ListItemStandardExpandableTextTemplate-BPs3CyVq.js} +1 -1
- package/dist/assets/{bundle.esm-DzkSPQ0p.js → bundle.esm-C3RAGF4b.js} +211 -211
- package/dist/css/themes/AccordionItem.css +1 -1
- package/dist/css/themes/CountrySelector.css +1 -1
- package/dist/css/themes/Link.css +1 -1
- package/dist/css/themes/MediaPlayer.css +1 -1
- package/dist/css/themes/PhoneNumberField.css +1 -1
- package/dist/css/themes/RatingBar.css +1 -1
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/Search.css +1 -1
- package/dist/css/themes/SelectBox.css +1 -1
- package/dist/css/themes/Slider.css +1 -1
- package/dist/css/themes/TextArea.css +1 -1
- package/dist/css/themes/TextField.css +1 -1
- package/dist/custom-elements-internal.json +148 -133
- package/dist/custom-elements.json +133 -118
- 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/CountrySelector.css.d.ts +1 -1
- package/dist/generated/themes/CountrySelector.css.js +1 -1
- package/dist/generated/themes/CountrySelector.css.js.map +1 -1
- package/dist/generated/themes/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/MediaPlayer.css.d.ts +1 -1
- package/dist/generated/themes/MediaPlayer.css.js +1 -1
- package/dist/generated/themes/MediaPlayer.css.js.map +1 -1
- package/dist/generated/themes/PhoneNumberField.css.d.ts +1 -1
- package/dist/generated/themes/PhoneNumberField.css.js +1 -1
- package/dist/generated/themes/PhoneNumberField.css.js.map +1 -1
- package/dist/generated/themes/RatingBar.css.d.ts +1 -1
- package/dist/generated/themes/RatingBar.css.js +1 -1
- package/dist/generated/themes/RatingBar.css.js.map +1 -1
- package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
- package/dist/generated/themes/RatingIndicator.css.js +1 -1
- package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
- package/dist/generated/themes/Search.css.d.ts +1 -1
- package/dist/generated/themes/Search.css.js +1 -1
- package/dist/generated/themes/Search.css.js.map +1 -1
- package/dist/generated/themes/SelectBox.css.d.ts +1 -1
- package/dist/generated/themes/SelectBox.css.js +1 -1
- package/dist/generated/themes/SelectBox.css.js.map +1 -1
- package/dist/generated/themes/Slider.css.d.ts +1 -1
- package/dist/generated/themes/Slider.css.js +1 -1
- package/dist/generated/themes/Slider.css.js.map +1 -1
- package/dist/generated/themes/TextArea.css.d.ts +1 -1
- package/dist/generated/themes/TextArea.css.js +1 -1
- package/dist/generated/themes/TextArea.css.js.map +1 -1
- package/dist/generated/themes/TextField.css.d.ts +1 -1
- package/dist/generated/themes/TextField.css.js +1 -1
- package/dist/generated/themes/TextField.css.js.map +1 -1
- package/dist/utils/sanitizeString.d.ts +2 -0
- package/dist/utils/sanitizeString.js +12 -0
- package/dist/utils/sanitizeString.js.map +1 -0
- package/dist/web-types.json +2 -2
- package/package.json +2 -2
- package/src/Accordion.ts +56 -26
- package/src/Breadcrumbs.ts +12 -7
- package/src/BreadcrumbsItem.ts +2 -2
- package/src/BreadcrumbsPopoverTemplate.tsx +60 -0
- package/src/BreadcrumbsTemplate.tsx +53 -0
- package/src/FilterMenu.ts +1 -2
- package/src/FilterMenuSelectAll.ts +0 -4
- package/src/Footer.ts +28 -35
- package/src/FooterTemplate.tsx +410 -0
- package/src/HeroBanner.ts +4 -4
- package/src/HeroBannerTemplate.tsx +101 -0
- package/src/InputGroup.ts +3 -7
- package/src/InputGroupTemplate.tsx +31 -0
- package/src/MastheadMobileMenu.ts +1 -1
- package/src/RatingBar.ts +3 -3
- package/src/RatingBarTemplate.tsx +38 -0
- package/src/Search.ts +5 -4
- package/src/SearchableListBase.ts +15 -26
- package/src/SelectBox.ts +1 -2
- package/src/StatusBadge.ts +5 -4
- package/src/StatusBadgeTemplate.tsx +18 -0
- package/src/StatusMessage.ts +3 -3
- package/src/StatusMessageTemplate.tsx +20 -0
- package/src/Switch.ts +5 -11
- package/src/SwitchTemplate.tsx +50 -0
- package/src/TagGroup.ts +13 -3
- package/src/TruncatedText.ts +8 -14
- package/src/TruncatedTextTemplate.tsx +21 -0
- package/src/generated/themes/AccordionItem.css.ts +1 -1
- package/src/generated/themes/CountrySelector.css.ts +1 -1
- package/src/generated/themes/Link.css.ts +1 -1
- package/src/generated/themes/MediaPlayer.css.ts +1 -1
- package/src/generated/themes/PhoneNumberField.css.ts +1 -1
- package/src/generated/themes/RatingBar.css.ts +1 -1
- package/src/generated/themes/RatingIndicator.css.ts +1 -1
- package/src/generated/themes/Search.css.ts +1 -1
- package/src/generated/themes/SelectBox.css.ts +1 -1
- package/src/generated/themes/Slider.css.ts +1 -1
- package/src/generated/themes/TextArea.css.ts +1 -1
- package/src/generated/themes/TextField.css.ts +1 -1
- package/src/themes/AccordionItem.css +0 -1
- package/src/themes/CountrySelector.css +1 -7
- package/src/themes/Link.css +11 -4
- package/src/themes/MediaPlayer.css +133 -186
- package/src/themes/PhoneNumberField.css +25 -7
- package/src/themes/RatingBar.css +2 -2
- package/src/themes/Search.css +7 -3
- package/src/themes/SelectBox.css +4 -0
- package/src/themes/TextArea.css +31 -7
- package/src/themes/TextField.css +15 -5
- package/src/utils/sanitizeString.ts +13 -0
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +0 -12
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js.map +0 -1
- package/dist/generated/templates/BreadcrumbsTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js +0 -14
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js.map +0 -1
- package/dist/generated/templates/FooterTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/FooterTemplate.lit.js +0 -39
- package/dist/generated/templates/FooterTemplate.lit.js.map +0 -1
- package/dist/generated/templates/InputGroupTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/InputGroupTemplate.lit.js +0 -9
- package/dist/generated/templates/InputGroupTemplate.lit.js.map +0 -1
- package/dist/generated/templates/RatingBarTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/RatingBarTemplate.lit.js +0 -8
- package/dist/generated/templates/RatingBarTemplate.lit.js.map +0 -1
- package/dist/generated/templates/StatusBadgeTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/StatusBadgeTemplate.lit.js +0 -7
- package/dist/generated/templates/StatusBadgeTemplate.lit.js.map +0 -1
- package/dist/generated/templates/StatusMessageTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/StatusMessageTemplate.lit.js +0 -8
- package/dist/generated/templates/StatusMessageTemplate.lit.js.map +0 -1
- package/dist/generated/templates/SwitchTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/SwitchTemplate.lit.js +0 -14
- package/dist/generated/templates/SwitchTemplate.lit.js.map +0 -1
- package/dist/generated/templates/TruncatedTextTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/TruncatedTextTemplate.lit.js +0 -7
- package/dist/generated/templates/TruncatedTextTemplate.lit.js.map +0 -1
- package/src/Breadcrumbs.hbs +0 -38
- package/src/BreadcrumbsPopover.hbs +0 -48
- package/src/Footer.hbs +0 -296
- package/src/InputGroup.hbs +0 -20
- package/src/RatingBar.hbs +0 -11
- package/src/StatusBadge.hbs +0 -9
- package/src/StatusMessage.hbs +0 -6
- package/src/Switch.hbs +0 -35
- package/src/TruncatedText.hbs +0 -11
- package/src/generated/templates/BreadcrumbsPopoverTemplate.lit.ts +0 -16
- package/src/generated/templates/BreadcrumbsTemplate.lit.ts +0 -18
- package/src/generated/templates/FooterTemplate.lit.ts +0 -43
- package/src/generated/templates/InputGroupTemplate.lit.ts +0 -13
- package/src/generated/templates/RatingBarTemplate.lit.ts +0 -12
- package/src/generated/templates/StatusBadgeTemplate.lit.ts +0 -11
- package/src/generated/templates/StatusMessageTemplate.lit.ts +0 -12
- package/src/generated/templates/SwitchTemplate.lit.ts +0 -18
- package/src/generated/templates/TruncatedTextTemplate.lit.ts +0 -11
package/dist/Breadcrumbs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Breadcrumbs.js","sourceRoot":"","sources":["../src/Breadcrumbs.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 litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport { isTabNext, isTabPrevious, isEscape } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport UI5Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport type { LinkClickEventDetail } from \"@ui5/webcomponents/dist/Link.js\";\nimport NavigationMode from \"@ui5/webcomponents-base/dist/types/NavigationMode.js\";\nimport ItemNavigation from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport UI5BreadcrumbsCss from \"@ui5/webcomponents/dist/generated/themes/Breadcrumbs.css.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-down.js\";\nimport \"@ui5/webcomponents-icons/dist/home.js\";\nimport BreadcrumbsTemplate from \"./generated/templates/BreadcrumbsTemplate.lit.js\";\nimport UDExBreadcrumbsItem from \"./BreadcrumbsItem.js\";\nimport UDExDropdown from \"./Dropdown.js\";\nimport UDExLink from \"./Link.js\";\nimport { BREADCRUMBS_ARIA_LABEL, BREADCRUMBS_OVERFLOW_ARIA_LABEL } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport BreadcrumbsCss from \"./generated/themes/Breadcrumbs.css.js\";\nimport BreadcrumbsPopoverCss from \"./generated/themes/BreadcrumbsPopover.css.js\";\n\nconst triggerActiveClass = \"udex-breadcrumbs__trigger--opened\";\n\ntype UDExBreadcrumbsItemClickEventDetail = {\n item: UDExBreadcrumbsItem;\n altKey?: boolean;\n ctrlKey?: boolean;\n metaKey?: boolean;\n shiftKey?: 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-breadcrumbs</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/Breadcrumbs.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n tag: \"udex-breadcrumbs\",\n renderer: litRender,\n styles: [UI5BreadcrumbsCss, BreadcrumbsCss, BreadcrumbsPopoverCss],\n template: BreadcrumbsTemplate,\n dependencies: [UDExBreadcrumbsItem, UDExLink, UDExDropdown, UI5Icon],\n})\n/**\n * @public\n */\n@event(\"item-click\", { cancelable: true, bubbles: true })\n\n/**\n * Fired after the dropdown is opened.\n *\n * @public\n */\n@event(\"open\", { bubbles: true })\n\n/**\n * Fired after the dropdown is closed.\n *\n * @public\n */\n@event(\"close\", { bubbles: true })\n\nclass UDExBreadcrumbs extends UI5Element {\n eventDetails!: {\n \"item-click\": UDExBreadcrumbsItemClickEventDetail,\n \"open\": void,\n \"close\": void,\n };\n /**\n * Defines how many breadcrumb items should be visible\n *\n * @default 3\n * @public\n */\n @property({ type: Number })\n showItems: number = 3;\n\n /**\n * Indicates if dropdown is opened\n *\n * @default false\n * @private\n */\n @property({ noAttribute: true, type: Boolean })\n _dropdownOpened!: boolean;\n\n /**\n * Defines the component items.\n *\n * **Note:** Use the `udex-breadcrumbs-item` component to define the desired items.\n * @public\n */\n @slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n items!: Array<UDExBreadcrumbsItem>;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n _responsivePopover?: UDExDropdown;\n _itemNavigation?: ItemNavigation;\n _shouldFocusFirstVisibleItem!: boolean;\n\n onBeforeRendering(): void {\n this._preprocessItems();\n }\n\n onAfterRendering(): void {\n this._responsivePopover = this._getResponsePopover();\n this._initItemNavigation();\n this._dropdownArrowLink.forcedTabIndex = \"0\";\n this._handleOutsideClick();\n\n if (this._shouldFocusFirstVisibleItem) {\n this._getFocusableItems()[1].focus();\n this._shouldFocusFirstVisibleItem = false;\n }\n }\n\n _preprocessItems(): void {\n this.items.forEach(item => {\n item._getRealDomRef = () => this.getDomRef()!.querySelector(`[data-ui5-stable*=${item.stableDomRef}]`)!;\n });\n }\n\n _getResponsePopover(): UDExDropdown {\n return this.shadowRoot!.querySelector<UDExDropdown>(`#udex-${this.__id!}-breadcrumbs__popover`)!;\n }\n\n _getFocusableItems(): Array<UDExLink> {\n const items = this._links;\n items.unshift(this._dropdownArrowLink);\n\n return items;\n }\n\n _initItemNavigation(): void {\n if (!this._itemNavigation) {\n this._itemNavigation = new ItemNavigation(this, {\n navigationMode: NavigationMode.Horizontal,\n getItemsCallback: () => this._getFocusableItems(),\n });\n }\n }\n\n _getItems(): Array<UDExBreadcrumbsItem> {\n return this.getSlottedNodes<UDExBreadcrumbsItem>(\"items\");\n }\n\n _onDropdownLinkPress(e: CustomEvent<LinkClickEventDetail>): void {\n const listItem = e.target as HTMLElement,\n items = this._getItems(),\n item = items.find(x => `${x._id}-li` === listItem.id)!;\n\n if (item._isCurrentPageItem) {\n return;\n }\n\n if (this.fireDecoratorEvent(\"item-click\", { item })) {\n window.open(item.href, item.target || \"_self\", \"noopener,noreferrer\");\n this._toggleDropdown();\n }\n\n this.setDropdownCloseState();\n }\n\n _onLinkPress(e: CustomEvent<LinkClickEventDetail>): void {\n const link = e.target as UDExLink,\n items = this._getItems(),\n item = items.find(x => `${x._id}-link` === link.id)!,\n {\n altKey,\n ctrlKey,\n metaKey,\n shiftKey,\n } = e.detail;\n\n if (!this.fireDecoratorEvent(\"item-click\", {\n item,\n altKey,\n ctrlKey,\n metaKey,\n shiftKey,\n })) {\n e.preventDefault();\n }\n\n this.setDropdownCloseState();\n }\n\n _isItemVisible(item: UDExBreadcrumbsItem): boolean {\n return !item.hidden;\n }\n\n _afterDropdownOpen(): void {\n this._dropdownOpened = true;\n this.fireDecoratorEvent(\"open\");\n }\n\n _afterDropdownClose(): void {\n this._dropdownOpened = false;\n this.fireDecoratorEvent(\"close\");\n }\n\n _toggleDropdown(): void {\n if (this._responsivePopover) {\n this._responsivePopover.open = !this._responsivePopover.open;\n this._dropdownOpened = !this._dropdownOpened;\n }\n }\n\n _onfocusin(e: FocusEvent): void {\n const currentItem = e.target as UDExLink;\n\n this._itemNavigation?.setCurrentItem(currentItem);\n }\n\n _handleKeydown(e: KeyboardEvent): void {\n const itemIndex = (e.target as HTMLElement).getAttribute(\"index\");\n const isLastItem = itemIndex === (this.items.length - 2).toString();\n const isFirstItem = itemIndex === \"0\";\n\n if (isTabNext(e) && isLastItem) {\n this._shouldFocusFirstVisibleItem = true;\n this._toggleDropdown();\n return;\n }\n\n if ((isTabNext(e) && isLastItem) || (isTabPrevious(e) && isFirstItem) || isEscape(e)) {\n this._toggleDropdown();\n }\n }\n\n _handleOutsideClick(): void {\n document.addEventListener(\"mousedown\", (e: Event) => {\n if (e.target !== this) {\n this.setDropdownCloseState();\n }\n });\n }\n\n setDropdownCloseState(): void {\n if (this._responsivePopover) {\n this._dropdownOpened = false;\n }\n }\n\n /**\n * Getter for the interactive element that opens the overflow\n * @private\n */\n get _dropdownArrowLink(): UDExLink {\n return this.shadowRoot!.querySelector<UDExLink>(\".udex-breadcrumbs__trigger\")!;\n }\n\n /**\n * Getter for the list of links corresponding to the abstract breadcrumb items\n */\n get _links(): Array<UDExLink> {\n return Array.from(this.shadowRoot!.querySelectorAll<UDExLink>(\".udex-breadcrumbs__link-wrapper [udex-link]\"));\n }\n\n /**\n * Getter for the list of abstract breadcrumb items to be rendered as links outside the overflow\n */\n get _linksData(): Array<UDExBreadcrumbsItem> {\n const items = this._visibleItems;\n const itemsCount = items.length;\n\n return items\n .map((item, index) => {\n item._isCurrentPageItem = index === (itemsCount - 1);\n return item;\n });\n }\n\n get _visibleItems(): Array<UDExBreadcrumbsItem> {\n const items = this._getItems();\n const itemsLength = this.showItems ?? 0;\n\n return this._getItems()\n .slice(Math.max(items.length - itemsLength - 1, 0))\n .filter(i => this._isItemVisible(i));\n }\n\n get _dropdownItems(): Array<UDExBreadcrumbsItem> {\n return this._getItems().filter(i => this._isItemVisible(i));\n }\n\n get _triggerClass(): string {\n return this._dropdownOpened ? triggerActiveClass : \"\";\n }\n\n get _accessibleNameText(): string {\n return UDExBreadcrumbs.i18nBundle.getText(BREADCRUMBS_ARIA_LABEL);\n }\n\n get _dropdownArrowAccessibleNameText(): string {\n return UDExBreadcrumbs.i18nBundle.getText(BREADCRUMBS_OVERFLOW_ARIA_LABEL);\n }\n}\n\nUDExBreadcrumbs.define();\n\nexport default UDExBreadcrumbs;\nexport type { UDExBreadcrumbsItemClickEventDetail };\n"]}
|
|
1
|
+
{"version":3,"file":"Breadcrumbs.js","sourceRoot":"","sources":["../src/Breadcrumbs.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 jsxRenderer from \"@ui5/webcomponents-base/renderer/JsxRenderer.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport { isTabNext, isTabPrevious, isEscape } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport UI5Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport type { LinkClickEventDetail } from \"@ui5/webcomponents/dist/Link.js\";\nimport NavigationMode from \"@ui5/webcomponents-base/dist/types/NavigationMode.js\";\nimport ItemNavigation from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport UI5BreadcrumbsCss from \"@ui5/webcomponents/dist/generated/themes/Breadcrumbs.css.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-down.js\";\nimport \"@ui5/webcomponents-icons/dist/home.js\";\nimport BreadcrumbsTemplate from \"./BreadcrumbsTemplate.js\";\nimport UDExBreadcrumbsItem from \"./BreadcrumbsItem.js\";\nimport UDExDropdown from \"./Dropdown.js\";\nimport UDExLink from \"./Link.js\";\nimport { BREADCRUMBS_ARIA_LABEL, BREADCRUMBS_OVERFLOW_ARIA_LABEL } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport BreadcrumbsCss from \"./generated/themes/Breadcrumbs.css.js\";\nimport BreadcrumbsPopoverCss from \"./generated/themes/BreadcrumbsPopover.css.js\";\n\ntype UDExBreadcrumbsItemClickEventDetail = {\n item: UDExBreadcrumbsItem;\n altKey?: boolean;\n ctrlKey?: boolean;\n metaKey?: boolean;\n shiftKey?: 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-breadcrumbs</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/Breadcrumbs.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n tag: \"udex-breadcrumbs\",\n renderer: jsxRenderer,\n styles: [UI5BreadcrumbsCss, BreadcrumbsCss, BreadcrumbsPopoverCss],\n template: BreadcrumbsTemplate,\n dependencies: [UDExBreadcrumbsItem, UDExLink, UDExDropdown, UI5Icon],\n})\n/**\n * @public\n */\n@event(\"item-click\", { cancelable: true, bubbles: true })\n\n/**\n * Fired after the dropdown is opened.\n *\n * @public\n */\n@event(\"open\", { bubbles: true })\n\n/**\n * Fired after the dropdown is closed.\n *\n * @public\n */\n@event(\"close\", { bubbles: true })\n\nclass UDExBreadcrumbs extends UI5Element {\n eventDetails!: {\n \"item-click\": UDExBreadcrumbsItemClickEventDetail,\n \"open\": void,\n \"close\": void,\n };\n /**\n * Defines how many breadcrumb items should be visible\n *\n * @default 3\n * @public\n */\n @property({ type: Number })\n showItems: number = 3;\n\n /**\n * Indicates if dropdown is opened\n *\n * @default false\n * @private\n */\n @property({ noAttribute: true, type: Boolean })\n _dropdownOpened!: boolean;\n\n /**\n * Defines the component items.\n *\n * **Note:** Use the `udex-breadcrumbs-item` component to define the desired items.\n * @public\n */\n @slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n items!: Array<UDExBreadcrumbsItem>;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n _responsivePopover?: UDExDropdown;\n _itemNavigation?: ItemNavigation;\n _shouldFocusFirstVisibleItem!: boolean;\n _rootClass: string;\n\n constructor() {\n super();\n this._rootClass = \"udex-breadcrumbs\";\n }\n\n onBeforeRendering(): void {\n this._preprocessItems();\n }\n\n onAfterRendering(): void {\n this._responsivePopover = this._getResponsePopover();\n this._initItemNavigation();\n this._dropdownArrowLink.forcedTabIndex = \"0\";\n this._handleOutsideClick();\n\n if (this._shouldFocusFirstVisibleItem) {\n this._getFocusableItems()[1].focus();\n this._shouldFocusFirstVisibleItem = false;\n }\n }\n\n _preprocessItems(): void {\n this.items.forEach(item => {\n item._getRealDomRef = () => this.getDomRef()!.querySelector(`[data-ui5-stable*=${item.stableDomRef}]`)!;\n });\n }\n\n _getResponsePopover(): UDExDropdown {\n return this.shadowRoot!.querySelector<UDExDropdown>(`#udex-${this.__id!}-breadcrumbs__popover`)!;\n }\n\n _getFocusableItems(): Array<UDExLink> {\n const items = this._links;\n items.unshift(this._dropdownArrowLink);\n\n return items;\n }\n\n _initItemNavigation(): void {\n if (!this._itemNavigation) {\n this._itemNavigation = new ItemNavigation(this, {\n navigationMode: NavigationMode.Horizontal,\n getItemsCallback: () => this._getFocusableItems(),\n });\n }\n }\n\n _getItems(): Array<UDExBreadcrumbsItem> {\n return this.getSlottedNodes<UDExBreadcrumbsItem>(\"items\");\n }\n\n _onDropdownLinkPress(e: CustomEvent<LinkClickEventDetail>): void {\n const listItem = e.target as HTMLElement,\n items = this._getItems(),\n item = items.find(x => `${x._id}-li` === listItem.id)!;\n\n if (item._isCurrentPageItem) {\n return;\n }\n\n if (this.fireDecoratorEvent(\"item-click\", { item })) {\n window.open(item.href, item.target || \"_self\", \"noopener,noreferrer\");\n this._toggleDropdown();\n }\n\n this.setDropdownCloseState();\n }\n\n _onLinkPress(e: CustomEvent<LinkClickEventDetail>): void {\n const link = e.target as UDExLink,\n items = this._getItems(),\n item = items.find(x => `${x._id}-link` === link.id)!,\n {\n altKey,\n ctrlKey,\n metaKey,\n shiftKey,\n } = e.detail;\n\n if (!this.fireDecoratorEvent(\"item-click\", {\n item,\n altKey,\n ctrlKey,\n metaKey,\n shiftKey,\n })) {\n e.preventDefault();\n }\n\n this.setDropdownCloseState();\n }\n\n _isItemVisible(item: UDExBreadcrumbsItem): boolean {\n return !item.hidden;\n }\n\n _afterDropdownOpen(): void {\n this._dropdownOpened = true;\n this.fireDecoratorEvent(\"open\");\n }\n\n _afterDropdownClose(): void {\n this._dropdownOpened = false;\n this.fireDecoratorEvent(\"close\");\n }\n\n _toggleDropdown(): void {\n if (this._responsivePopover) {\n this._responsivePopover.open = !this._responsivePopover.open;\n this._dropdownOpened = !this._dropdownOpened;\n }\n }\n\n _onfocusin(e: FocusEvent): void {\n const currentItem = e.target as UDExLink;\n\n this._itemNavigation?.setCurrentItem(currentItem);\n }\n\n _handleKeydown(e: KeyboardEvent): void {\n const itemIndex = (e.target as HTMLElement).getAttribute(\"data-index\");\n const isLastItem = itemIndex === (this.items.length - 2).toString();\n const isFirstItem = itemIndex === \"0\";\n\n if (isTabNext(e) && isLastItem) {\n this._shouldFocusFirstVisibleItem = true;\n this._toggleDropdown();\n return;\n }\n\n if ((isTabNext(e) && isLastItem) || (isTabPrevious(e) && isFirstItem) || isEscape(e)) {\n this._toggleDropdown();\n }\n }\n\n _handleOutsideClick(): void {\n document.addEventListener(\"mousedown\", (e: Event) => {\n if (e.target !== this) {\n this.setDropdownCloseState();\n }\n });\n }\n\n setDropdownCloseState(): void {\n if (this._responsivePopover) {\n this._dropdownOpened = false;\n }\n }\n\n /**\n * Getter for the interactive element that opens the overflow\n * @private\n */\n get _dropdownArrowLink(): UDExLink {\n return this.shadowRoot!.querySelector<UDExLink>(\".udex-breadcrumbs__trigger\")!;\n }\n\n /**\n * Getter for the list of links corresponding to the abstract breadcrumb items\n */\n get _links(): Array<UDExLink> {\n return Array.from(this.shadowRoot!.querySelectorAll<UDExLink>(\".udex-breadcrumbs__link-wrapper [udex-link]\"));\n }\n\n /**\n * Getter for the list of abstract breadcrumb items to be rendered as links outside the overflow\n */\n get _linksData(): Array<UDExBreadcrumbsItem> {\n const items = this._visibleItems;\n const itemsCount = items.length;\n\n return items\n .map((item, index) => {\n item._isCurrentPageItem = index === (itemsCount - 1);\n return item;\n });\n }\n\n get _visibleItems(): Array<UDExBreadcrumbsItem> {\n const items = this._getItems();\n const itemsLength = this.showItems ?? 0;\n\n return this._getItems()\n .slice(Math.max(items.length - itemsLength - 1, 0))\n .filter(i => this._isItemVisible(i));\n }\n\n get _dropdownItems(): Array<UDExBreadcrumbsItem> {\n return this._getItems().filter(i => this._isItemVisible(i));\n }\n\n get _triggerClass(): string {\n const rootClass = \"udex-breadcrumbs\";\n return this._dropdownOpened ? `${rootClass} ${rootClass}__trigger--opened` : rootClass;\n }\n\n get _accessibleNameText(): string {\n return UDExBreadcrumbs.i18nBundle.getText(BREADCRUMBS_ARIA_LABEL);\n }\n\n get _dropdownArrowAccessibleNameText(): string {\n return UDExBreadcrumbs.i18nBundle.getText(BREADCRUMBS_OVERFLOW_ARIA_LABEL);\n }\n}\n\nUDExBreadcrumbs.define();\n\nexport default UDExBreadcrumbs;\nexport type { UDExBreadcrumbsItemClickEventDetail };\n"]}
|
|
@@ -19,8 +19,7 @@ import BreadcrumbsItem from "@ui5/webcomponents/dist/BreadcrumbsItem.js";
|
|
|
19
19
|
declare class UDExBreadcrumbsItem extends BreadcrumbsItem {
|
|
20
20
|
/**
|
|
21
21
|
* Defines item icon to be displayed before the item name.
|
|
22
|
-
*
|
|
23
|
-
* @default ""
|
|
22
|
+
* @default undefined
|
|
24
23
|
* @public
|
|
25
24
|
*/
|
|
26
25
|
icon?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BreadcrumbsItem.js","sourceRoot":"","sources":["../src/BreadcrumbsItem.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,WAAW,MAAM,sDAAsD,CAAC;AAC/E,OAAO,eAAe,MAAM,4CAA4C,CAAC;AAEzE;;;;;;;;;;;;;;;;GAgBG;
|
|
1
|
+
{"version":3,"file":"BreadcrumbsItem.js","sourceRoot":"","sources":["../src/BreadcrumbsItem.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,WAAW,MAAM,sDAAsD,CAAC;AAC/E,OAAO,eAAe,MAAM,4CAA4C,CAAC;AAEzE;;;;;;;;;;;;;;;;GAgBG;AAMH,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,eAAe;CAQhD,CAAA;AADG;IADD,QAAQ,EAAE;iDACK;AAPZ,mBAAmB;IALxB,aAAa,CAAC;QACb,GAAG,EAAE,uBAAuB;QAC5B,QAAQ,EAAE,WAAW;KACtB,CAAC;GAEI,mBAAmB,CAQxB;AAED,mBAAmB,CAAC,MAAM,EAAE,CAAC;AAE7B,eAAe,mBAAmB,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport BreadcrumbsItem from \"@ui5/webcomponents/dist/BreadcrumbsItem.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-breadcrumbs-item</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/BreadcrumbsItem.js\";</code>\n *\n * @constructor\n * @extends BreadcrumbsItem\n * @public\n */\n@customElement({\n tag: \"udex-breadcrumbs-item\",\n renderer: jsxRenderer,\n})\n\nclass UDExBreadcrumbsItem extends BreadcrumbsItem {\n /**\n * Defines item icon to be displayed before the item name.\n * @default undefined\n * @public\n */\n @property()\n icon?: string;\n}\n\nUDExBreadcrumbsItem.define();\n\nexport default UDExBreadcrumbsItem;\n"]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { jsx as _jsx } from "@ui5/webcomponents-base/jsx-runtime";
|
|
2
|
+
import UDExDropdown from "./Dropdown.js";
|
|
3
|
+
import UDExLink from "./Link.js";
|
|
4
|
+
import { Placement, HorizontalAlign } from "./types/Dropdown.js";
|
|
5
|
+
export default function BreadcrumbsPopoverTemplate() {
|
|
6
|
+
return (_jsx(UDExDropdown, { id: `udex-${this._id}-breadcrumbs__popover`, opener: `udex-${this._id}-breadcrumbs__opener`, class: `${this._rootClass}__popover ui5-breadcrumbs-popover`, placement: Placement.Bottom, horizontalAlign: HorizontalAlign.Start, onKeyDown: this._handleKeydown, onClose: this._afterDropdownClose, onOpen: this._afterDropdownOpen, children: _jsx("div", { className: `${this._rootClass}__popover-content`, children: this._dropdownItems.map((item, index) => (item.icon ? (_jsx(UDExLink, { "data-index": index, id: `${item._id}-li`, onClick: this._onDropdownLinkPress, href: item.href, target: item.target, class: `${this._rootClass}__item ${this._rootClass}__item--with-icon ${this._rootClass}__item--hidden ${this._rootClass}__item--${index}`, icon: item.icon, accessibleName: item.textContent ?? undefined, "data-ui5-stable": item.stableDomRef, children: item.textContent }, index)) : item._isCurrentPageItem ? (_jsx("span", { id: `${item._id}-li`, className: `${this._rootClass}__item ${this._rootClass}__item--current ${this._rootClass}__item--hidden ${this._rootClass}__item--${index}`, "accessible-name": item.accessibleName, "data-ui5-stable": item.stableDomRef, children: item.textContent }, index)) : (_jsx(UDExLink, { "data-index": index, id: `${item._id}-li`, onClick: this._onDropdownLinkPress, href: item.href, target: item.target, class: `${this._rootClass}__item ${this._rootClass}__item--hidden ${this._rootClass}__item--${index}`, accessibleName: item.accessibleName, "data-ui5-stable": item.stableDomRef, children: item.textContent }, index)))) }) }));
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=BreadcrumbsPopoverTemplate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BreadcrumbsPopoverTemplate.js","sourceRoot":"","sources":["../src/BreadcrumbsPopoverTemplate.tsx"],"names":[],"mappings":";AACA,OAAO,YAAY,MAAM,eAAe,CAAC;AACzC,OAAO,QAAQ,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEjE,MAAM,CAAC,OAAO,UAAU,0BAA0B;IAChD,OAAO,CACL,KAAC,YAAY,IACX,EAAE,EAAE,QAAQ,IAAI,CAAC,GAAG,uBAAuB,EAC3C,MAAM,EAAE,QAAQ,IAAI,CAAC,GAAG,sBAAsB,EAC9C,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,mCAAmC,EAC5D,SAAS,EAAE,SAAS,CAAC,MAAM,EAC3B,eAAe,EAAE,eAAe,CAAC,KAAK,EACtC,SAAS,EAAE,IAAI,CAAC,cAAc,EAC9B,OAAO,EAAE,IAAI,CAAC,mBAAmB,EACjC,MAAM,EAAE,IAAI,CAAC,kBAAkB,YAC/B,cAAK,SAAS,EAAE,GAAG,IAAI,CAAC,UAAU,mBAAmB,YAClD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CACxC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACV,KAAC,QAAQ,kBAEK,KAAK,EACjB,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,EACpB,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAClC,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,UAAU,IAAI,CAAC,UAAU,qBAAqB,IAAI,CAAC,UAAU,kBAAkB,IAAI,CAAC,UAAU,WAAW,KAAK,EAAE,EACzI,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,cAAc,EAAE,IAAI,CAAC,WAAW,IAAI,SAAS,qBAC5B,IAAI,CAAC,YAAY,YACjC,IAAI,CAAC,WAAW,IAVZ,KAAK,CAWD,CACZ,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAC5B,eAEE,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,EACpB,SAAS,EAAE,GAAG,IAAI,CAAC,UAAU,UAAU,IAAI,CAAC,UAAU,mBAAmB,IAAI,CAAC,UAAU,kBAAkB,IAAI,CAAC,UAAU,WAAW,KAAK,EAAE,qBAC1H,IAAI,CAAC,cAAc,qBACnB,IAAI,CAAC,YAAY,YACjC,IAAI,CAAC,WAAW,IALZ,KAAK,CAML,CACR,CAAC,CAAC,CAAC,CACF,KAAC,QAAQ,kBAEK,KAAK,EACjB,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,EACpB,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAClC,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,UAAU,IAAI,CAAC,UAAU,kBAAkB,IAAI,CAAC,UAAU,WAAW,KAAK,EAAE,EACrG,cAAc,EAAE,IAAI,CAAC,cAAc,qBAClB,IAAI,CAAC,YAAY,YACjC,IAAI,CAAC,WAAW,IATZ,KAAK,CAUD,CACZ,CACF,CAAC,GACE,GACO,CAChB,CAAC;AACJ,CAAC","sourcesContent":["import type Breadcrumbs from \"./Breadcrumbs.js\";\nimport UDExDropdown from \"./Dropdown.js\";\nimport UDExLink from \"./Link.js\";\nimport { Placement, HorizontalAlign } from \"./types/Dropdown.js\";\n\nexport default function BreadcrumbsPopoverTemplate(this: Breadcrumbs) {\n return (\n <UDExDropdown\n id={`udex-${this._id}-breadcrumbs__popover`}\n opener={`udex-${this._id}-breadcrumbs__opener`}\n class={`${this._rootClass}__popover ui5-breadcrumbs-popover`}\n placement={Placement.Bottom}\n horizontalAlign={HorizontalAlign.Start}\n onKeyDown={this._handleKeydown}\n onClose={this._afterDropdownClose}\n onOpen={this._afterDropdownOpen}>\n <div className={`${this._rootClass}__popover-content`}>\n {this._dropdownItems.map((item, index) => (\n item.icon ? (\n <UDExLink\n key={index}\n data-index={index}\n id={`${item._id}-li`}\n onClick={this._onDropdownLinkPress}\n href={item.href}\n target={item.target}\n class={`${this._rootClass}__item ${this._rootClass}__item--with-icon ${this._rootClass}__item--hidden ${this._rootClass}__item--${index}`}\n icon={item.icon}\n accessibleName={item.textContent ?? undefined}\n data-ui5-stable={item.stableDomRef}>\n {item.textContent}\n </UDExLink>\n ) : item._isCurrentPageItem ? (\n <span\n key={index}\n id={`${item._id}-li`}\n className={`${this._rootClass}__item ${this._rootClass}__item--current ${this._rootClass}__item--hidden ${this._rootClass}__item--${index}`}\n accessible-name={item.accessibleName}\n data-ui5-stable={item.stableDomRef}>\n {item.textContent}\n </span>\n ) : (\n <UDExLink\n key={index}\n data-index={index}\n id={`${item._id}-li`}\n onClick={this._onDropdownLinkPress}\n href={item.href}\n target={item.target}\n class={`${this._rootClass}__item ${this._rootClass}__item--hidden ${this._rootClass}__item--${index}`}\n accessibleName={item.accessibleName}\n data-ui5-stable={item.stableDomRef}>\n {item.textContent}\n </UDExLink>\n )\n ))}\n </div>\n </UDExDropdown>\n );\n}\n"]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "@ui5/webcomponents-base/jsx-runtime";
|
|
2
|
+
import UDExLink from "./Link.js";
|
|
3
|
+
import UDExButtonAccessibleRole from "./types/ButtonAccessibleRole.js";
|
|
4
|
+
import slimArrowDown from "@ui5/webcomponents-icons/dist/slim-arrow-down.js";
|
|
5
|
+
import BreadcrumbsPopoverTemplate from "./BreadcrumbsPopoverTemplate.js";
|
|
6
|
+
export default function BreadcrumbsTemplate() {
|
|
7
|
+
const rootClass = "udex-breadcrumbs";
|
|
8
|
+
return (_jsxs(_Fragment, { children: [_jsx("nav", { class: `${this._rootClass} ui5-breadcrumbs-root`, "aria-label": this._accessibleNameText, children: _jsxs("ol", { onFocusIn: this._onfocusin, children: [_jsx("li", { class: `${this._rootClass}__arrow-wrapper ui5-breadcrumbs-dropdown-arrow-link-wrapper`, children: _jsx(UDExLink, { id: `udex-${this._id}-breadcrumbs__opener`, class: `${this._rootClass}__trigger ${this._triggerClass}`, onClick: this._toggleDropdown, "aria-label": this._dropdownArrowAccessibleNameText, accessibleRole: UDExButtonAccessibleRole.Button, icon: slimArrowDown, "aria-haspopup": "true" }) }), this._linksData.map(linkData => _jsx("li", { class: `${this._rootClass}__link-wrapper ui5-breadcrumbs-link-wrapper`, id: `${linkData._id}-link-wrapper`, children: !linkData._isCurrentPageItem && (_jsxs(_Fragment, { children: [_jsx("span", { className: `${this._rootClass}__separator`, "aria-hidden": "true" }), _jsx(UDExLink, { onClick: this._onLinkPress, id: `${linkData._id}-link`, class: `${rootClass}__item ${this._rootClass}__item--visible`, href: linkData.href, target: linkData.target, accessibleName: linkData._accessibleNameText, "data-ui5-stable": linkData.stableDomRef, children: linkData.innerText })] })) }))] }) }), BreadcrumbsPopoverTemplate.call(this)] }));
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=BreadcrumbsTemplate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BreadcrumbsTemplate.js","sourceRoot":"","sources":["../src/BreadcrumbsTemplate.tsx"],"names":[],"mappings":";AACA,OAAO,QAAQ,MAAM,WAAW,CAAC;AACjC,OAAO,wBAAwB,MAAM,iCAAiC,CAAC;AACvE,OAAO,aAAa,MAAM,kDAAkD,CAAC;AAC7E,OAAO,0BAA0B,MAAM,iCAAiC,CAAC;AAEzE,MAAM,CAAC,OAAO,UAAU,mBAAmB;IACzC,MAAM,SAAS,GAAG,kBAAkB,CAAC;IAErC,OAAO,CACL,8BACE,cACE,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,uBAAuB,gBACpC,IAAI,CAAC,mBAAmB,YACpC,cAAI,SAAS,EAAE,IAAI,CAAC,UAAU,aAC5B,aAAI,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,6DAA6D,YACxF,KAAC,QAAQ,IACP,EAAE,EAAE,QAAQ,IAAI,CAAC,GAAG,sBAAsB,EAC1C,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,aAAa,IAAI,CAAC,aAAa,EAAE,EAC1D,OAAO,EAAE,IAAI,CAAC,eAAe,gBACjB,IAAI,CAAC,gCAAgC,EACjD,cAAc,EAAE,wBAAwB,CAAC,MAAM,EAC/C,IAAI,EAAE,aAAa,mBACL,MAAM,GACX,GACR,EACJ,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAC9B,aACE,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,6CAA6C,EACtE,EAAE,EAAE,GAAG,QAAQ,CAAC,GAAG,eAAe,YACjC,CAAC,QAAQ,CAAC,kBAAkB,IAAI,CAC/B,8BACE,eAAM,SAAS,EAAE,GAAG,IAAI,CAAC,UAAU,aAAa,iBAAc,MAAM,GAAQ,EAC5E,KAAC,QAAQ,IACP,OAAO,EAAE,IAAI,CAAC,YAAY,EAC1B,EAAE,EAAE,GAAG,QAAQ,CAAC,GAAG,OAAO,EAC1B,KAAK,EAAE,GAAG,SAAS,UAAU,IAAI,CAAC,UAAU,iBAAiB,EAC7D,IAAI,EAAE,QAAQ,CAAC,IAAI,EACnB,MAAM,EAAE,QAAQ,CAAC,MAAM,EACvB,cAAc,EAAE,QAAQ,CAAC,mBAAmB,qBAC3B,QAAQ,CAAC,YAAY,YACrC,QAAQ,CAAC,SAAS,GACV,IACV,CACJ,GACE,CACN,IACE,GACD,EACL,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,IACrC,CACJ,CAAC;AACJ,CAAC","sourcesContent":["import type Breadcrumbs from \"./Breadcrumbs.js\";\nimport UDExLink from \"./Link.js\";\nimport UDExButtonAccessibleRole from \"./types/ButtonAccessibleRole.js\";\nimport slimArrowDown from \"@ui5/webcomponents-icons/dist/slim-arrow-down.js\";\nimport BreadcrumbsPopoverTemplate from \"./BreadcrumbsPopoverTemplate.js\";\n\nexport default function BreadcrumbsTemplate(this: Breadcrumbs) {\n const rootClass = \"udex-breadcrumbs\";\n\n return (\n <>\n <nav\n class={`${this._rootClass} ui5-breadcrumbs-root`}\n aria-label={this._accessibleNameText}>\n <ol onFocusIn={this._onfocusin}>\n <li class={`${this._rootClass}__arrow-wrapper ui5-breadcrumbs-dropdown-arrow-link-wrapper`}>\n <UDExLink\n id={`udex-${this._id}-breadcrumbs__opener`}\n class={`${this._rootClass}__trigger ${this._triggerClass}`}\n onClick={this._toggleDropdown}\n aria-label={this._dropdownArrowAccessibleNameText}\n accessibleRole={UDExButtonAccessibleRole.Button}\n icon={slimArrowDown}\n aria-haspopup=\"true\">\n </UDExLink>\n </li>\n {this._linksData.map(linkData =>\n <li\n class={`${this._rootClass}__link-wrapper ui5-breadcrumbs-link-wrapper`}\n id={`${linkData._id}-link-wrapper`}>\n {!linkData._isCurrentPageItem && (\n <>\n <span className={`${this._rootClass}__separator`} aria-hidden=\"true\"></span>\n <UDExLink\n onClick={this._onLinkPress}\n id={`${linkData._id}-link`}\n class={`${rootClass}__item ${this._rootClass}__item--visible`}\n href={linkData.href}\n target={linkData.target}\n accessibleName={linkData._accessibleNameText}\n data-ui5-stable={linkData.stableDomRef}>\n {linkData.innerText}\n </UDExLink>\n </>\n )}\n </li>\n )}\n </ol>\n </nav>\n {BreadcrumbsPopoverTemplate.call(this)}\n </>\n );\n}\n"]}
|
package/dist/FilterMenu.js
CHANGED
|
@@ -141,8 +141,7 @@ let UDExFilterMenu = UDExFilterMenu_1 = class UDExFilterMenu extends UDExSearcha
|
|
|
141
141
|
this._trigger = this.getTriggerButton();
|
|
142
142
|
}
|
|
143
143
|
handleSelectAll(e) {
|
|
144
|
-
this.
|
|
145
|
-
this.fireDecoratorEvent("select-all");
|
|
144
|
+
this.onSelectAllHeaderPress(e);
|
|
146
145
|
}
|
|
147
146
|
handleItemPress(e) {
|
|
148
147
|
this.onItemPress(e);
|
package/dist/FilterMenu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterMenu.js","sourceRoot":"","sources":["../src/FilterMenu.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport executeTemplate from \"@ui5/webcomponents-base/dist/renderer/executeTemplate.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport {\n isTabPrevious, isTabNext, isEscape, isSpace, isEnter,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport PopupAccessibleRole from \"@ui5/webcomponents/dist/types/PopupAccessibleRole.js\";\nimport Popover from \"@ui5/webcomponents/dist/Popover.js\";\nimport BusyIndicator from \"@ui5/webcomponents/dist/BusyIndicator.js\";\nimport Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport UDExList from \"./List.js\";\nimport UDExListItem from \"./ListItem.js\";\nimport UDExListGroupHeader from \"./ListGroupHeader.js\";\nimport UDExFilterMenuItem from \"./FilterMenuItem.js\";\nimport UDExFilterMenuGroupHeader from \"./FilterMenuGroupHeader.js\";\nimport type { UDExSearchKeydownEventDetail } from \"./Search.js\";\nimport UDExSearch from \"./Search.js\";\nimport UDExButton from \"./Button.js\";\nimport type { UDExSearchableListBaseEvents } from \"./SearchableListBase.js\";\nimport UDExSearchableListBase from \"./SearchableListBase.js\";\nimport { UDExPopoverPart } from \"./types/SearchableListBase.js\";\nimport { Placement, HorizontalAlign } from \"./types/Dropdown.js\";\nimport { UDExListMode } from \"./types/List.js\";\nimport UDExFilterMenuSelectAll from \"./FilterMenuSelectAll.js\";\nimport UDExListSelectAll from \"./ListSelectAll.js\";\nimport UDExBadge from \"./Badge.js\";\nimport type UDExListItemBase from \"./ListItemBase.js\";\nimport { RESET, SHOW_RESULTS, SELECT_OPTIONS } from \"./generated/i18n/i18n-defaults.js\";\nimport \"@ui5/webcomponents-icons/dist/navigation-down-arrow.js\";\nimport FilterMenuTemplate from \"./generated/templates/FilterMenuTemplate.lit.js\";\nimport SearchableListBaseTemplate from \"./generated/templates/SearchableListBaseTemplate.lit.js\";\nimport type UDExListGroupHeaderBase from \"./ListGroupHeaderBase.js\";\n\n// Styles\nimport FilterMenuCss from \"./generated/themes/FilterMenu.css.js\";\nimport SearchableListCss from \"./generated/themes/SearchableList.css.js\";\nimport getEffectiveScrollbarStyle from \"./utils/getEffectiveScrollbarStyle.js\";\n\nexport type initialItemState = {\n id: string,\n selected: boolean,\n indeterminate?: boolean,\n}\n\ntype UDExFilterMenuResultClickEventDetail = {\n selectedItems: Array<UDExListItemBase>,\n}\n\ntype UDExFilterMenuResetClickEventDetail = {\n restoredItems: Array<UDExListItemBase>,\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-filter-menu</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/UDExFilterMenu.js\";</code>\n *\n * @constructor\n * @extends UDExSearchableListBase\n * @tagname udex-filter-menu\n * @public\n */\n@customElement({\n tag: \"udex-filter-menu\",\n renderer: litRender,\n styles: [FilterMenuCss, SearchableListCss, getEffectiveScrollbarStyle()],\n template: FilterMenuTemplate,\n dependencies: [\n Popover,\n Icon,\n BusyIndicator,\n UDExFilterMenuItem,\n UDExFilterMenuGroupHeader,\n UDExFilterMenuSelectAll,\n UDExList,\n UDExListSelectAll,\n UDExListItem,\n UDExListGroupHeader,\n UDExBadge,\n UDExSearch,\n UDExButton,\n ],\n})\n\n/**\n * Fired event when the user click on a reset button on the footer.\n *\n * @public\n */\n@event(\"reset-click\", { bubbles: true })\n\n/**\n * Fired event when the user click on a result button on the footer.\n *\n * @public\n */\n@event(\"result-click\", { bubbles: true })\n\n/**\n * Fired event when the user click on Select All header item.\n *\n * @public\n */\n@event(\"select-all\", { bubbles: true })\n\n/**\n * Fired before the dropdown pane is opened.\n *\n * @public\n */\n@event(\"before-open\", { bubbles: true })\n\n/**\n * Fired after the dropdown pane is opened.\n *\n * @public\n */\n@event(\"after-open\", { bubbles: true })\n\n/**\n * Fired before the dropdown pane is closed.\n *\n * @public\n */\n@event(\"before-close\", { bubbles: true })\n\n/**\n * Fired after the dropdown pane is closed.\n *\n * @public\n */\n@event(\"after-close\", { bubbles: true })\n\nclass UDExFilterMenu extends UDExSearchableListBase {\n eventDetails!: {\n \"result-click\": UDExFilterMenuResultClickEventDetail,\n \"reset-click\": UDExFilterMenuResetClickEventDetail,\n \"before-open\": void,\n \"after-open\": void,\n \"before-close\": void,\n \"after-close\": void,\n } & UDExSearchableListBaseEvents;\n /**\n * Determines the value of the badge.\n *\n * @public\n */\n @property({ type: Number })\n badgeValue?: number;\n\n /**\n * Determines if there is no enough space, the component can be placed\n * over the target.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n disableTargetOverlap?: boolean;\n\n /**\n * Determines on which side the component is placed at.\n *\n * @default \"Bottom\"\n * @public\n */\n @property()\n placement: `${Placement}` = Placement.Bottom;\n\n /**\n * Determines the horizontal alignment of the component.\n *\n * @default \"Left\"\n * @public\n */\n @property()\n horizontalAlign: `${HorizontalAlign}` = HorizontalAlign.Start;\n\n /**\n * Defines the mode of the component.\n *\n * @default \"SingleSelect\"\n * @public\n */\n @property()\n mode: `${UDExListMode}` = UDExListMode.SingleSelect;\n\n /**\n * Defines the label of the button reset in the footer.\n *\n * @default \"Reset\"\n * @public\n */\n @property()\n resetBtnLabel?: string;\n\n /**\n * Defines the label of the button result in the footer.\n *\n * @default \"Show Result\"\n * @public\n */\n @property()\n resultBtnLabel?: string;\n\n /**\n * Defines the filter name of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n filterName!: string;\n\n /**\n * Defines the filter name prefix of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n filterNamePrefix!: string;\n\n /**\n * Defines whether the component is in disabled state.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n disabled: boolean = false;\n\n /**\n * Defines whether the dropdown is open or not.\n *\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _open: boolean = false;\n\n /**\n * Hides the result button in the footer.\n *\n * @type {boolean}\n * @default false\n * @public\n */\n @property({ type: Boolean })\n hideResultBtn: boolean = false;\n\n /**\n * Hides the reset button in the footer.\n *\n * @type {boolean}\n * @default false\n * @public\n */\n @property({ type: Boolean })\n hideResetBtn: boolean = false;\n\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 id (or many ids) of the elements that contain the ARIA name of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n accessibleNameRef!: string;\n /**\n * Allows setting a custom role.\n * @default \"None\"\n * @public\n */\n @property()\n accessibleRole: `${PopupAccessibleRole}` = PopupAccessibleRole.None;\n\n /**\n * Allows setting a custom role for dropdown trigger.\n * @default \"combobox\"\n * @public\n */\n @property({ type: String })\n triggerAccessibleRole: string = \"combobox\";\n\n @property({ type: Boolean })\n _shouldApplyFilter: boolean = false;\n\n @property({ type: Boolean, noAttribute: true })\n _requestRender = false;\n\n _trigger!: UDExButton;\n _search!: UDExSearch;\n _popover!: Popover;\n _breakpointSizeXS = 640;\n _initialState: Array<initialItemState> = [];\n\n onEnterDOM(): void {\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n }\n\n onBeforeRendering() {\n super.onBeforeRendering();\n }\n\n onAfterRendering() {\n this._search = this.getSearch();\n this._popover = this.getPopover();\n this._trigger = this.getTriggerButton();\n }\n\n handleSelectAll(e:CustomEvent): void {\n this.onFilterSelectAllHeaderPress(e);\n this.fireDecoratorEvent(\"select-all\");\n }\n\n handleItemPress(e:CustomEvent): void {\n this.onItemPress(e);\n\n if (this.modeSingleSelect) {\n this.onDropdownClose();\n }\n }\n\n handleHeaderPress(e:CustomEvent): void {\n this.onHeaderPress(e);\n }\n\n handleValueSearch(e:CustomEvent): void {\n this.onSearch(e);\n }\n\n handleSubmitSearch(): void {\n this.onDropdownClose();\n this.onSubmitSearch();\n }\n\n handleResetSearch(): void {\n this.onResetSearch();\n }\n\n handleReset(): void {\n this.onDropdownClose();\n this.fireDecoratorEvent(\"reset-click\", {\n restoredItems: this.selectedItems,\n });\n this.onReset();\n }\n\n handleResult(): void {\n this._shouldApplyFilter = true;\n this.onDropdownClose();\n this.fireDecoratorEvent(\"result-click\", {\n selectedItems: this.selectedItems,\n });\n }\n\n handleKeyDownList(e: KeyboardEvent): void {\n const isTabNextPress = isTabNext(e) && !this.hasFooterButtons;\n const isTabPrevPress = isTabPrevious(e) && !this._search;\n const target = e.target as HTMLElement;\n const isSearchResetTrigger = target === this._search;\n if ((isTabNextPress && (!isSearchResetTrigger || this.isListEmpty)) || isTabPrevPress) {\n this.onDropdownClose(e);\n }\n }\n\n handleKeyDownSearch(keyEvent: CustomEvent<UDExSearchKeydownEventDetail>): void {\n const { detail: { e } } = keyEvent;\n if (isTabPrevious(e) || isEscape(e)) {\n this.onDropdownClose(e);\n }\n }\n\n handleKeyDownResultBtn(e: KeyboardEvent): void {\n e.stopPropagation();\n if (isTabNext(e) && !this.hasResetBtn) {\n this.onDropdownClose();\n }\n }\n\n handleKeyDownResetBtn(e: KeyboardEvent): void {\n e.stopPropagation();\n if (isTabNext(e)) {\n this.onDropdownClose();\n }\n }\n\n handleTriggerClick(): void {\n this.toggleDropdown();\n }\n\n handleTriggerKeydown(e: KeyboardEvent): void {\n if (isSpace(e) || isEnter(e)) {\n e.preventDefault();\n this.toggleDropdown();\n }\n }\n\n toggleDropdown(): void {\n this._open = !this._open;\n\n if (this._open) {\n this._trigger.classList.add(\"udex-filter-menu__trigger-active\");\n this._popover.opener = this._trigger;\n this._popover.open = true;\n } else {\n this.onDropdownClose();\n }\n }\n\n onDropdownClose(e?: KeyboardEvent): void {\n if (this._popover.open) {\n if (e && (isTabPrevious(e) || isEscape(e))) {\n e.preventDefault();\n this._popover.open = false;\n } else {\n this._popover.open = false;\n }\n }\n }\n\n _dropdownBeforeOpen(): void {\n if (this.preventPageScroll) {\n this._managePopupListeners(UDExPopoverPart.Header, \"addEventListener\");\n this._managePopupListeners(UDExPopoverPart.Footer, \"addEventListener\");\n }\n\n if (this.height) {\n this._setContentHeight();\n }\n\n this._initialState = this._getInitialState(this.items);\n this.fireDecoratorEvent(\"before-open\");\n }\n\n _dropdownAfterOpen(): void {\n const popoverLeftOffset = +this._popover.style.left.split(\"px\")[0];\n if (this._popover.offsetWidth + popoverLeftOffset < this._breakpointSizeXS) {\n this.style.setProperty(\"--udex-filter-menu-popover-left-offset\", `${this._popover.style.left}`);\n }\n this.fireDecoratorEvent(\"after-open\");\n }\n\n _getInitialState(items: Array<UDExListItemBase | UDExListGroupHeaderBase>): Array<initialItemState> {\n return items.flatMap(item => {\n if (item.isGroup) {\n const groupState: initialItemState = {\n id: item._id,\n selected: item.selected,\n indeterminate: item.indeterminate,\n };\n const subItemsState = (item as UDExListGroupHeaderBase).getItems().map(subItem => ({\n id: subItem._id,\n selected: subItem.selected,\n }));\n return [groupState, ...subItemsState];\n }\n return {\n id: item._id,\n selected: item.selected,\n };\n });\n }\n\n _setInitialListState(): void {\n this.getSlottedItems(this.items).forEach((item, index) => {\n const initialState = this._initialState[index];\n if (item._id === initialState?.id) {\n item.selected = initialState.selected;\n if (item.isGroup) {\n item.indeterminate = initialState.indeterminate;\n }\n }\n });\n }\n\n _setInitialState(): void {\n this._setInitialListState();\n this._requestRender = true;\n }\n\n _dropdownBeforeClose(): void {\n this.fireDecoratorEvent(\"before-close\");\n }\n\n _dropdownAfterClose(): void {\n if (this.preventPageScroll) {\n this._managePopupListeners(UDExPopoverPart.Header, \"removeEventListener\");\n this._managePopupListeners(UDExPopoverPart.Footer, \"removeEventListener\");\n }\n\n if (!this._shouldApplyFilter && this.modeMultiSelect && !this.modeSelectAll) {\n this._setInitialState();\n }\n\n this._shouldApplyFilter = false;\n this._open = false;\n this._trigger.classList.remove(\"udex-filter-menu__trigger-active\");\n this.fireDecoratorEvent(\"after-close\");\n }\n\n /**\n * Close the dropdown.\n * @public\n */\n close(): void {\n this.onDropdownClose();\n }\n\n get disableAllowTargetOverlap(): boolean {\n return !this.disableTargetOverlap;\n }\n\n get hasFilterNamePrefix(): boolean {\n return !!this.filterNamePrefix?.length;\n }\n\n get getResultLabelText(): string {\n return this.resultBtnLabel !== undefined && this.resultBtnLabel.length > 0 && this.resultBtnLabel ? this.resultBtnLabel : UDExFilterMenu.i18nBundle.getText(SHOW_RESULTS);\n }\n\n get getResetLabelText(): string {\n return this.resetBtnLabel !== undefined && this.resetBtnLabel.length > 0 ? this.resetBtnLabel : UDExFilterMenu.i18nBundle.getText(RESET);\n }\n\n get _iconAccessibleNameText(): string {\n return UDExFilterMenu.i18nBundle.getText(SELECT_OPTIONS);\n }\n\n get triggerButtonAccessibleName(): string {\n return this.accessibleName || UDExFilterMenu.i18nBundle.getText(SELECT_OPTIONS);\n }\n\n get searchableList() {\n return executeTemplate(UDExFilterMenu.searchableListBaseTemplate, this);\n }\n\n get hideActionBar(): boolean {\n return this.hideResultBtn && this.hideResetBtn;\n }\n\n get hasFooterButtons(): boolean {\n return !!this.shadowRoot!.querySelector(\"[udex-button]\");\n }\n\n get hasResetBtn(): boolean {\n return !this.hideResetBtn;\n }\n\n get modeSelectAll(): boolean {\n return !!this.querySelector<UDExFilterMenuSelectAll>(\"[udex-filter-menu-select-all]\");\n }\n\n getTriggerButton(): UDExButton {\n return this.shadowRoot!.querySelector<UDExButton>(\"#filterMenuTrigger\")!;\n }\n\n getItems(): Array<UDExListItemBase> {\n return this.getSlottedNodes<UDExListItemBase>(\"items\");\n }\n\n static get searchableListBaseTemplate() {\n return SearchableListBaseTemplate;\n }\n}\n\nUDExFilterMenu.define();\n\nexport default UDExFilterMenu;\nexport type { UDExFilterMenuResetClickEventDetail, UDExFilterMenuResultClickEventDetail };\n"]}
|
|
1
|
+
{"version":3,"file":"FilterMenu.js","sourceRoot":"","sources":["../src/FilterMenu.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport executeTemplate from \"@ui5/webcomponents-base/dist/renderer/executeTemplate.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport {\n isTabPrevious, isTabNext, isEscape, isSpace, isEnter,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport PopupAccessibleRole from \"@ui5/webcomponents/dist/types/PopupAccessibleRole.js\";\nimport Popover from \"@ui5/webcomponents/dist/Popover.js\";\nimport BusyIndicator from \"@ui5/webcomponents/dist/BusyIndicator.js\";\nimport Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport UDExList from \"./List.js\";\nimport UDExListItem from \"./ListItem.js\";\nimport UDExListGroupHeader from \"./ListGroupHeader.js\";\nimport UDExFilterMenuItem from \"./FilterMenuItem.js\";\nimport UDExFilterMenuGroupHeader from \"./FilterMenuGroupHeader.js\";\nimport type { UDExSearchKeydownEventDetail } from \"./Search.js\";\nimport UDExSearch from \"./Search.js\";\nimport UDExButton from \"./Button.js\";\nimport type { UDExSearchableListBaseEvents } from \"./SearchableListBase.js\";\nimport UDExSearchableListBase from \"./SearchableListBase.js\";\nimport { UDExPopoverPart } from \"./types/SearchableListBase.js\";\nimport { Placement, HorizontalAlign } from \"./types/Dropdown.js\";\nimport { UDExListMode } from \"./types/List.js\";\nimport UDExFilterMenuSelectAll from \"./FilterMenuSelectAll.js\";\nimport UDExListSelectAll from \"./ListSelectAll.js\";\nimport UDExBadge from \"./Badge.js\";\nimport type UDExListItemBase from \"./ListItemBase.js\";\nimport { RESET, SHOW_RESULTS, SELECT_OPTIONS } from \"./generated/i18n/i18n-defaults.js\";\nimport \"@ui5/webcomponents-icons/dist/navigation-down-arrow.js\";\nimport FilterMenuTemplate from \"./generated/templates/FilterMenuTemplate.lit.js\";\nimport SearchableListBaseTemplate from \"./generated/templates/SearchableListBaseTemplate.lit.js\";\nimport type UDExListGroupHeaderBase from \"./ListGroupHeaderBase.js\";\n\n// Styles\nimport FilterMenuCss from \"./generated/themes/FilterMenu.css.js\";\nimport SearchableListCss from \"./generated/themes/SearchableList.css.js\";\nimport getEffectiveScrollbarStyle from \"./utils/getEffectiveScrollbarStyle.js\";\n\nexport type initialItemState = {\n id: string,\n selected: boolean,\n indeterminate?: boolean,\n}\n\ntype UDExFilterMenuResultClickEventDetail = {\n selectedItems: Array<UDExListItemBase>,\n}\n\ntype UDExFilterMenuResetClickEventDetail = {\n restoredItems: Array<UDExListItemBase>,\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-filter-menu</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/UDExFilterMenu.js\";</code>\n *\n * @constructor\n * @extends UDExSearchableListBase\n * @tagname udex-filter-menu\n * @public\n */\n@customElement({\n tag: \"udex-filter-menu\",\n renderer: litRender,\n styles: [FilterMenuCss, SearchableListCss, getEffectiveScrollbarStyle()],\n template: FilterMenuTemplate,\n dependencies: [\n Popover,\n Icon,\n BusyIndicator,\n UDExFilterMenuItem,\n UDExFilterMenuGroupHeader,\n UDExFilterMenuSelectAll,\n UDExList,\n UDExListSelectAll,\n UDExListItem,\n UDExListGroupHeader,\n UDExBadge,\n UDExSearch,\n UDExButton,\n ],\n})\n\n/**\n * Fired event when the user click on a reset button on the footer.\n *\n * @public\n */\n@event(\"reset-click\", { bubbles: true })\n\n/**\n * Fired event when the user click on a result button on the footer.\n *\n * @public\n */\n@event(\"result-click\", { bubbles: true })\n\n/**\n * Fired event when the user click on Select All header item.\n *\n * @public\n */\n@event(\"select-all\", { bubbles: true })\n\n/**\n * Fired before the dropdown pane is opened.\n *\n * @public\n */\n@event(\"before-open\", { bubbles: true })\n\n/**\n * Fired after the dropdown pane is opened.\n *\n * @public\n */\n@event(\"after-open\", { bubbles: true })\n\n/**\n * Fired before the dropdown pane is closed.\n *\n * @public\n */\n@event(\"before-close\", { bubbles: true })\n\n/**\n * Fired after the dropdown pane is closed.\n *\n * @public\n */\n@event(\"after-close\", { bubbles: true })\n\nclass UDExFilterMenu extends UDExSearchableListBase {\n eventDetails!: {\n \"result-click\": UDExFilterMenuResultClickEventDetail,\n \"reset-click\": UDExFilterMenuResetClickEventDetail,\n \"before-open\": void,\n \"after-open\": void,\n \"before-close\": void,\n \"after-close\": void,\n } & UDExSearchableListBaseEvents;\n /**\n * Determines the value of the badge.\n *\n * @public\n */\n @property({ type: Number })\n badgeValue?: number;\n\n /**\n * Determines if there is no enough space, the component can be placed\n * over the target.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n disableTargetOverlap?: boolean;\n\n /**\n * Determines on which side the component is placed at.\n *\n * @default \"Bottom\"\n * @public\n */\n @property()\n placement: `${Placement}` = Placement.Bottom;\n\n /**\n * Determines the horizontal alignment of the component.\n *\n * @default \"Left\"\n * @public\n */\n @property()\n horizontalAlign: `${HorizontalAlign}` = HorizontalAlign.Start;\n\n /**\n * Defines the mode of the component.\n *\n * @default \"SingleSelect\"\n * @public\n */\n @property()\n mode: `${UDExListMode}` = UDExListMode.SingleSelect;\n\n /**\n * Defines the label of the button reset in the footer.\n *\n * @default \"Reset\"\n * @public\n */\n @property()\n resetBtnLabel?: string;\n\n /**\n * Defines the label of the button result in the footer.\n *\n * @default \"Show Result\"\n * @public\n */\n @property()\n resultBtnLabel?: string;\n\n /**\n * Defines the filter name of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n filterName!: string;\n\n /**\n * Defines the filter name prefix of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n filterNamePrefix!: string;\n\n /**\n * Defines whether the component is in disabled state.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n disabled: boolean = false;\n\n /**\n * Defines whether the dropdown is open or not.\n *\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _open: boolean = false;\n\n /**\n * Hides the result button in the footer.\n *\n * @type {boolean}\n * @default false\n * @public\n */\n @property({ type: Boolean })\n hideResultBtn: boolean = false;\n\n /**\n * Hides the reset button in the footer.\n *\n * @type {boolean}\n * @default false\n * @public\n */\n @property({ type: Boolean })\n hideResetBtn: boolean = false;\n\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 id (or many ids) of the elements that contain the ARIA name of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n accessibleNameRef!: string;\n /**\n * Allows setting a custom role.\n * @default \"None\"\n * @public\n */\n @property()\n accessibleRole: `${PopupAccessibleRole}` = PopupAccessibleRole.None;\n\n /**\n * Allows setting a custom role for dropdown trigger.\n * @default \"combobox\"\n * @public\n */\n @property({ type: String })\n triggerAccessibleRole: string = \"combobox\";\n\n @property({ type: Boolean })\n _shouldApplyFilter: boolean = false;\n\n @property({ type: Boolean, noAttribute: true })\n _requestRender = false;\n\n _trigger!: UDExButton;\n _search!: UDExSearch;\n _popover!: Popover;\n _breakpointSizeXS = 640;\n _initialState: Array<initialItemState> = [];\n\n onEnterDOM(): void {\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n }\n\n onBeforeRendering() {\n super.onBeforeRendering();\n }\n\n onAfterRendering() {\n this._search = this.getSearch();\n this._popover = this.getPopover();\n this._trigger = this.getTriggerButton();\n }\n\n handleSelectAll(e:CustomEvent): void {\n this.onSelectAllHeaderPress(e);\n }\n\n handleItemPress(e:CustomEvent): void {\n this.onItemPress(e);\n\n if (this.modeSingleSelect) {\n this.onDropdownClose();\n }\n }\n\n handleHeaderPress(e:CustomEvent): void {\n this.onHeaderPress(e);\n }\n\n handleValueSearch(e:CustomEvent): void {\n this.onSearch(e);\n }\n\n handleSubmitSearch(): void {\n this.onDropdownClose();\n this.onSubmitSearch();\n }\n\n handleResetSearch(): void {\n this.onResetSearch();\n }\n\n handleReset(): void {\n this.onDropdownClose();\n this.fireDecoratorEvent(\"reset-click\", {\n restoredItems: this.selectedItems,\n });\n this.onReset();\n }\n\n handleResult(): void {\n this._shouldApplyFilter = true;\n this.onDropdownClose();\n this.fireDecoratorEvent(\"result-click\", {\n selectedItems: this.selectedItems,\n });\n }\n\n handleKeyDownList(e: KeyboardEvent): void {\n const isTabNextPress = isTabNext(e) && !this.hasFooterButtons;\n const isTabPrevPress = isTabPrevious(e) && !this._search;\n const target = e.target as HTMLElement;\n const isSearchResetTrigger = target === this._search;\n if ((isTabNextPress && (!isSearchResetTrigger || this.isListEmpty)) || isTabPrevPress) {\n this.onDropdownClose(e);\n }\n }\n\n handleKeyDownSearch(keyEvent: CustomEvent<UDExSearchKeydownEventDetail>): void {\n const { detail: { e } } = keyEvent;\n if (isTabPrevious(e) || isEscape(e)) {\n this.onDropdownClose(e);\n }\n }\n\n handleKeyDownResultBtn(e: KeyboardEvent): void {\n e.stopPropagation();\n if (isTabNext(e) && !this.hasResetBtn) {\n this.onDropdownClose();\n }\n }\n\n handleKeyDownResetBtn(e: KeyboardEvent): void {\n e.stopPropagation();\n if (isTabNext(e)) {\n this.onDropdownClose();\n }\n }\n\n handleTriggerClick(): void {\n this.toggleDropdown();\n }\n\n handleTriggerKeydown(e: KeyboardEvent): void {\n if (isSpace(e) || isEnter(e)) {\n e.preventDefault();\n this.toggleDropdown();\n }\n }\n\n toggleDropdown(): void {\n this._open = !this._open;\n\n if (this._open) {\n this._trigger.classList.add(\"udex-filter-menu__trigger-active\");\n this._popover.opener = this._trigger;\n this._popover.open = true;\n } else {\n this.onDropdownClose();\n }\n }\n\n onDropdownClose(e?: KeyboardEvent): void {\n if (this._popover.open) {\n if (e && (isTabPrevious(e) || isEscape(e))) {\n e.preventDefault();\n this._popover.open = false;\n } else {\n this._popover.open = false;\n }\n }\n }\n\n _dropdownBeforeOpen(): void {\n if (this.preventPageScroll) {\n this._managePopupListeners(UDExPopoverPart.Header, \"addEventListener\");\n this._managePopupListeners(UDExPopoverPart.Footer, \"addEventListener\");\n }\n\n if (this.height) {\n this._setContentHeight();\n }\n\n this._initialState = this._getInitialState(this.items);\n this.fireDecoratorEvent(\"before-open\");\n }\n\n _dropdownAfterOpen(): void {\n const popoverLeftOffset = +this._popover.style.left.split(\"px\")[0];\n if (this._popover.offsetWidth + popoverLeftOffset < this._breakpointSizeXS) {\n this.style.setProperty(\"--udex-filter-menu-popover-left-offset\", `${this._popover.style.left}`);\n }\n this.fireDecoratorEvent(\"after-open\");\n }\n\n _getInitialState(items: Array<UDExListItemBase | UDExListGroupHeaderBase>): Array<initialItemState> {\n return items.flatMap(item => {\n if (item.isGroup) {\n const groupState: initialItemState = {\n id: item._id,\n selected: item.selected,\n indeterminate: item.indeterminate,\n };\n const subItemsState = (item as UDExListGroupHeaderBase).getItems().map(subItem => ({\n id: subItem._id,\n selected: subItem.selected,\n }));\n return [groupState, ...subItemsState];\n }\n return {\n id: item._id,\n selected: item.selected,\n };\n });\n }\n\n _setInitialListState(): void {\n this.getSlottedItems(this.items).forEach((item, index) => {\n const initialState = this._initialState[index];\n if (item._id === initialState?.id) {\n item.selected = initialState.selected;\n if (item.isGroup) {\n item.indeterminate = initialState.indeterminate;\n }\n }\n });\n }\n\n _setInitialState(): void {\n this._setInitialListState();\n this._requestRender = true;\n }\n\n _dropdownBeforeClose(): void {\n this.fireDecoratorEvent(\"before-close\");\n }\n\n _dropdownAfterClose(): void {\n if (this.preventPageScroll) {\n this._managePopupListeners(UDExPopoverPart.Header, \"removeEventListener\");\n this._managePopupListeners(UDExPopoverPart.Footer, \"removeEventListener\");\n }\n\n if (!this._shouldApplyFilter && this.modeMultiSelect && !this.modeSelectAll) {\n this._setInitialState();\n }\n\n this._shouldApplyFilter = false;\n this._open = false;\n this._trigger.classList.remove(\"udex-filter-menu__trigger-active\");\n this.fireDecoratorEvent(\"after-close\");\n }\n\n /**\n * Close the dropdown.\n * @public\n */\n close(): void {\n this.onDropdownClose();\n }\n\n get disableAllowTargetOverlap(): boolean {\n return !this.disableTargetOverlap;\n }\n\n get hasFilterNamePrefix(): boolean {\n return !!this.filterNamePrefix?.length;\n }\n\n get getResultLabelText(): string {\n return this.resultBtnLabel !== undefined && this.resultBtnLabel.length > 0 && this.resultBtnLabel ? this.resultBtnLabel : UDExFilterMenu.i18nBundle.getText(SHOW_RESULTS);\n }\n\n get getResetLabelText(): string {\n return this.resetBtnLabel !== undefined && this.resetBtnLabel.length > 0 ? this.resetBtnLabel : UDExFilterMenu.i18nBundle.getText(RESET);\n }\n\n get _iconAccessibleNameText(): string {\n return UDExFilterMenu.i18nBundle.getText(SELECT_OPTIONS);\n }\n\n get triggerButtonAccessibleName(): string {\n return this.accessibleName || UDExFilterMenu.i18nBundle.getText(SELECT_OPTIONS);\n }\n\n get searchableList() {\n return executeTemplate(UDExFilterMenu.searchableListBaseTemplate, this);\n }\n\n get hideActionBar(): boolean {\n return this.hideResultBtn && this.hideResetBtn;\n }\n\n get hasFooterButtons(): boolean {\n return !!this.shadowRoot!.querySelector(\"[udex-button]\");\n }\n\n get hasResetBtn(): boolean {\n return !this.hideResetBtn;\n }\n\n get modeSelectAll(): boolean {\n return !!this.querySelector<UDExFilterMenuSelectAll>(\"[udex-filter-menu-select-all]\");\n }\n\n getTriggerButton(): UDExButton {\n return this.shadowRoot!.querySelector<UDExButton>(\"#filterMenuTrigger\")!;\n }\n\n getItems(): Array<UDExListItemBase> {\n return this.getSlottedNodes<UDExListItemBase>(\"items\");\n }\n\n static get searchableListBaseTemplate() {\n return SearchableListBaseTemplate;\n }\n}\n\nUDExFilterMenu.define();\n\nexport default UDExFilterMenu;\nexport type { UDExFilterMenuResetClickEventDetail, UDExFilterMenuResultClickEventDetail };\n"]}
|
|
@@ -18,6 +18,5 @@ import UDExListGroupHeaderBase from "./ListGroupHeaderBase.js";
|
|
|
18
18
|
*/
|
|
19
19
|
declare class UDExFilterMenuSelectAll extends UDExListGroupHeaderBase {
|
|
20
20
|
get isSelectAllHeader(): boolean;
|
|
21
|
-
get isFilterMenuSelectAllHeader(): boolean;
|
|
22
21
|
}
|
|
23
22
|
export default UDExFilterMenuSelectAll;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterMenuSelectAll.js","sourceRoot":"","sources":["../src/FilterMenuSelectAll.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,uBAAuB,MAAM,0BAA0B,CAAC;AAE/D;;;;;;;;;;;;;;;;GAgBG;AAMH,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,uBAAuB;IAC3D,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;
|
|
1
|
+
{"version":3,"file":"FilterMenuSelectAll.js","sourceRoot":"","sources":["../src/FilterMenuSelectAll.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,uBAAuB,MAAM,0BAA0B,CAAC;AAE/D;;;;;;;;;;;;;;;;GAgBG;AAMH,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,uBAAuB;IAC3D,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAJK,uBAAuB;IAL5B,aAAa,CAAC;QACb,GAAG,EAAE,6BAA6B;QAClC,QAAQ,EAAE,SAAS;KACpB,CAAC;GAEI,uBAAuB,CAI5B;AAED,uBAAuB,CAAC,MAAM,EAAE,CAAC;AAEjC,eAAe,uBAAuB,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport UDExListGroupHeaderBase from \"./ListGroupHeaderBase.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>udex-filter-menu-select-all</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/FilterMenuSelectAll.js\";</code>\n *\n * @constructor\n * @extends UDExListGroupHeaderBase\n * @public\n */\n@customElement({\n tag: \"udex-filter-menu-select-all\",\n renderer: litRender,\n})\n\nclass UDExFilterMenuSelectAll extends UDExListGroupHeaderBase {\n get isSelectAllHeader() {\n return true;\n }\n}\n\nUDExFilterMenuSelectAll.define();\n\nexport default UDExFilterMenuSelectAll;\n"]}
|
package/dist/Footer.d.ts
CHANGED
|
@@ -1,15 +1,11 @@
|
|
|
1
1
|
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
2
2
|
import type { ResizeObserverCallback } from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
3
|
+
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
3
4
|
import type { UDExSocialMediaButtonType } from "./types/SocialMediaButtonType.js";
|
|
4
5
|
import type { UDExTarget } from "./types/common.js";
|
|
5
|
-
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
6
|
-
import "@ui5/webcomponents-icons/dist/headset.js";
|
|
7
|
-
import "@ui5/webcomponents-icons/dist/email.js";
|
|
8
|
-
import "@ui5/webcomponents-icons/dist/back-to-top.js";
|
|
9
|
-
import "@ui5/webcomponents-icons/dist/discussion-2.js";
|
|
10
|
-
import "@ui5/webcomponents-icons/dist/navigation-right-arrow.js";
|
|
11
6
|
export declare const chineseICPDefaultLink = "https://beian.miit.gov.cn/";
|
|
12
7
|
export type FooterLink = {
|
|
8
|
+
id: string;
|
|
13
9
|
title: string;
|
|
14
10
|
url: string;
|
|
15
11
|
target: UDExTarget;
|
|
@@ -26,13 +22,13 @@ export type FooterContactNumber = {
|
|
|
26
22
|
country: string;
|
|
27
23
|
};
|
|
28
24
|
type UDExFooterDetailedClickEventDetail = {
|
|
29
|
-
originalEvent:
|
|
25
|
+
originalEvent: MouseEvent;
|
|
30
26
|
name: string | undefined;
|
|
31
27
|
id?: string;
|
|
32
28
|
sourceNode: HTMLElement;
|
|
33
29
|
};
|
|
34
30
|
type UDExFooterBaseEventDetail = {
|
|
35
|
-
originalEvent:
|
|
31
|
+
originalEvent: MouseEvent | Event;
|
|
36
32
|
};
|
|
37
33
|
type BaseEvents = "contact-chat-click" | "contact-phone-local-numbers-click" | "contact-email-click" | "contact-phone-click" | "logo-click" | "back-to-top-click";
|
|
38
34
|
type DetailedEvents = "quick-links-click" | "trending-click" | "about-sap-click" | "site-information-click" | "social-media-link-click";
|
|
@@ -245,7 +241,7 @@ declare class UDExFooter extends UI5Element {
|
|
|
245
241
|
onExitDOM(): void;
|
|
246
242
|
onEnterDOM(): void;
|
|
247
243
|
_handleResize(): void;
|
|
248
|
-
onBackToTopClick(e:
|
|
244
|
+
onBackToTopClick(e: Event): void;
|
|
249
245
|
get quickLinksArray(): FooterLink[];
|
|
250
246
|
get trendingLinksArray(): FooterLink[];
|
|
251
247
|
get aboutLinksArray(): FooterLink[];
|
|
@@ -276,18 +272,18 @@ declare class UDExFooter extends UI5Element {
|
|
|
276
272
|
get currentTaglineUrl(): string | undefined;
|
|
277
273
|
get taglineClass(): string;
|
|
278
274
|
get logoClass(): string;
|
|
279
|
-
_onLogoClick(e:
|
|
280
|
-
_onContactPhoneClick(e:
|
|
281
|
-
_onContactPhoneLocalNumbersClick(e:
|
|
282
|
-
_onContactEmailClick(e:
|
|
283
|
-
_onContactChatClick(e:
|
|
284
|
-
_onQuickLinksClick(e:
|
|
285
|
-
_onTrendingClick(e:
|
|
286
|
-
_onAboutSapClick(e:
|
|
287
|
-
_onSiteInformationClick(e:
|
|
288
|
-
_onSocialMediaLinkClick(e:
|
|
289
|
-
fireFooterBaseEvent(e:
|
|
290
|
-
fireFooterDetailedClickEvent(e:
|
|
275
|
+
_onLogoClick(e: MouseEvent): void;
|
|
276
|
+
_onContactPhoneClick(e: MouseEvent): void;
|
|
277
|
+
_onContactPhoneLocalNumbersClick(e: Event): void;
|
|
278
|
+
_onContactEmailClick(e: MouseEvent): void;
|
|
279
|
+
_onContactChatClick(e: MouseEvent): void;
|
|
280
|
+
_onQuickLinksClick(e: MouseEvent): void;
|
|
281
|
+
_onTrendingClick(e: MouseEvent): void;
|
|
282
|
+
_onAboutSapClick(e: MouseEvent): void;
|
|
283
|
+
_onSiteInformationClick(e: MouseEvent): void;
|
|
284
|
+
_onSocialMediaLinkClick(e: MouseEvent): void;
|
|
285
|
+
fireFooterBaseEvent(e: MouseEvent | Event, eventName: BaseEvents): void;
|
|
286
|
+
fireFooterDetailedClickEvent(e: MouseEvent, eventName: DetailedEvents): void;
|
|
291
287
|
}
|
|
292
288
|
export default UDExFooter;
|
|
293
289
|
export type { UDExFooterBaseEventDetail, UDExFooterDetailedClickEventDetail };
|
package/dist/Footer.js
CHANGED
|
@@ -6,13 +6,14 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
var UDExFooter_1;
|
|
8
8
|
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
9
|
-
import
|
|
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
12
|
import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
|
|
13
13
|
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
14
14
|
import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
|
|
15
15
|
import { getLanguage } from "@ui5/webcomponents-base/dist/config/Language.js";
|
|
16
|
+
import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
|
|
16
17
|
import Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
17
18
|
import UDExAccordionItem from "./AccordionItem.js";
|
|
18
19
|
import UDExButton from "./Button.js";
|
|
@@ -22,17 +23,10 @@ import UDExDivider from "./Divider.js";
|
|
|
22
23
|
import UDExSocialMediaButton from "./SocialMediaButton.js";
|
|
23
24
|
import { BreakpointUtils } from "./utils/Breakpoints.js";
|
|
24
25
|
import parseArrayFromString from "./utils/parseArrayFromString.js";
|
|
25
|
-
|
|
26
|
-
import
|
|
26
|
+
import FooterTemplate from "./FooterTemplate.js";
|
|
27
|
+
import { ABOUT_SAP, CHAT_WITH_US, CONTACT_US, EMAIL, LOCAL_COUNTRY_NAMES, PHONE_NUMBER, QUICK_LINKS, SEE_COMPLETE_LIST, SITE_INFORMATION, TRENDING, COPYRIGHT, PUBLIC_SECURITY_NETWORK_NUMBER, ICP_NUMBER, } from "./generated/i18n/i18n-defaults.js";
|
|
27
28
|
// Styles
|
|
28
29
|
import FooterCss from "./generated/themes/Footer.css.js";
|
|
29
|
-
import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
|
|
30
|
-
import { ABOUT_SAP, CHAT_WITH_US, CONTACT_US, EMAIL, LOCAL_COUNTRY_NAMES, PHONE_NUMBER, QUICK_LINKS, SEE_COMPLETE_LIST, SITE_INFORMATION, TRENDING, COPYRIGHT, PUBLIC_SECURITY_NETWORK_NUMBER, ICP_NUMBER, } from "./generated/i18n/i18n-defaults.js";
|
|
31
|
-
import "@ui5/webcomponents-icons/dist/headset.js";
|
|
32
|
-
import "@ui5/webcomponents-icons/dist/email.js";
|
|
33
|
-
import "@ui5/webcomponents-icons/dist/back-to-top.js";
|
|
34
|
-
import "@ui5/webcomponents-icons/dist/discussion-2.js";
|
|
35
|
-
import "@ui5/webcomponents-icons/dist/navigation-right-arrow.js";
|
|
36
30
|
export const chineseICPDefaultLink = "https://beian.miit.gov.cn/";
|
|
37
31
|
/**
|
|
38
32
|
* @class
|
|
@@ -385,7 +379,7 @@ UDExFooter = UDExFooter_1 = __decorate([
|
|
|
385
379
|
customElement({
|
|
386
380
|
languageAware: true,
|
|
387
381
|
tag: "udex-footer",
|
|
388
|
-
renderer:
|
|
382
|
+
renderer: jsxRenderer,
|
|
389
383
|
styles: [FooterCss],
|
|
390
384
|
template: FooterTemplate,
|
|
391
385
|
dependencies: [UDExAccordion, UDExAccordionItem, Icon, UDExButton, UDExDivider, UDExLink, UDExSocialMediaButton],
|
package/dist/Footer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Footer.js","sourceRoot":"","sources":["../src/Footer.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.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 type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\n\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport { getLanguage } from \"@ui5/webcomponents-base/dist/config/Language.js\";\nimport Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport UDExAccordionItem from \"./AccordionItem.js\";\nimport UDExButton from \"./Button.js\";\nimport UDExAccordion from \"./Accordion.js\";\nimport UDExLink from \"./Link.js\";\nimport UDExDivider from \"./Divider.js\";\nimport UDExSocialMediaButton from \"./SocialMediaButton.js\";\nimport type { UDExSocialMediaButtonType } from \"./types/SocialMediaButtonType.js\";\nimport type { UDExTarget } from \"./types/common.js\";\nimport { BreakpointUtils } from \"./utils/Breakpoints.js\";\nimport parseArrayFromString from \"./utils/parseArrayFromString.js\";\n\n// Template\nimport FooterTemplate from \"./generated/templates/FooterTemplate.lit.js\";\n\n// Styles\nimport FooterCss from \"./generated/themes/Footer.css.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n ABOUT_SAP,\n CHAT_WITH_US,\n CONTACT_US,\n EMAIL,\n LOCAL_COUNTRY_NAMES,\n PHONE_NUMBER,\n QUICK_LINKS,\n SEE_COMPLETE_LIST,\n SITE_INFORMATION,\n TRENDING,\n COPYRIGHT,\n PUBLIC_SECURITY_NETWORK_NUMBER,\n ICP_NUMBER,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport \"@ui5/webcomponents-icons/dist/headset.js\";\nimport \"@ui5/webcomponents-icons/dist/email.js\";\nimport \"@ui5/webcomponents-icons/dist/back-to-top.js\";\nimport \"@ui5/webcomponents-icons/dist/discussion-2.js\";\nimport \"@ui5/webcomponents-icons/dist/navigation-right-arrow.js\";\n\nexport const chineseICPDefaultLink = \"https://beian.miit.gov.cn/\";\n\nexport type FooterLink = {\n title: string;\n url: string;\n target: UDExTarget;\n};\n\nexport type FooterSocialLink = {\n name?: UDExSocialMediaButtonType;\n url: string;\n target?: UDExTarget;\n accessibleName?: string;\n id? : string;\n};\n\nexport type FooterContactNumber = {\n number: string;\n country: string;\n};\n\ntype UDExFooterDetailedClickEventDetail = {\n originalEvent: PointerEvent,\n name: string | undefined;\n id?: string;\n sourceNode: HTMLElement;\n}\n\ntype UDExFooterBaseEventDetail = {\n originalEvent: PointerEvent,\n}\n\ntype BaseEvents = \"contact-chat-click\" | \"contact-phone-local-numbers-click\" | \"contact-email-click\" | \"contact-phone-click\" | \"logo-click\" | \"back-to-top-click\";\n\ntype DetailedEvents = \"quick-links-click\" | \"trending-click\" | \"about-sap-click\" | \"site-information-click\" | \"social-media-link-click\";\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-footer</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/Footer.js\";</code>\n *\n * @constructor\n * @author SAP SE\n * @extends UI5Element\n * @tagname udex-footer\n * @public\n */\n@customElement({\n languageAware: true,\n tag: \"udex-footer\",\n renderer: litRender,\n styles: [FooterCss],\n template: FooterTemplate,\n dependencies: [UDExAccordion, UDExAccordionItem, Icon, UDExButton, UDExDivider, UDExLink, UDExSocialMediaButton],\n})\n/**\n * Triggered on click interaction with logo in footer\n * @public\n * @allowPreventDefault\n */\n@event(\"logo-click\", { bubbles: true })\n/**\n * Triggered on click interaction with \"Back to Top\" button\n * @public\n * @allowPreventDefault\n */\n@event(\"back-to-top-click\", { bubbles: true })\n/**\n * Triggered on click interaction with phone number link in footer\n * @public\n * @allowPreventDefault\n */\n@event(\"contact-phone-click\", { bubbles: true })\n/**\n * Triggered on click interaction with local country numbers list link\n * @public\n * @allowPreventDefault\n */\n@event(\"contact-phone-local-numbers-click\", { bubbles: true })\n/**\n * Triggered on click interaction with \"Contact us by email\" link\n * @public\n * @allowPreventDefault\n */\n@event(\"contact-email-click\", { bubbles: true })\n/**\n * Triggered on click interaction with \"Contact us by chat\" link\n * @public\n * @allowPreventDefault\n */\n@event(\"contact-chat-click\", { bubbles: true })\n/**\n * Triggered on click interaction with a link within \"Quick Links\" category\n * @public\n * @allowPreventDefault\n */\n@event(\"quick-links-click\", { bubbles: true })\n/**\n * Triggered on click interaction with a link within \"Trending\" category\n * @public\n * @allowPreventDefault\n */\n@event(\"trending-click\", { bubbles: true })\n/**\n * Triggered on click interaction with a link within \"About SAP\" category\n * @public\n * @allowPreventDefault\n */\n@event(\"about-sap-click\", { bubbles: true })\n/**\n * Triggered on click interaction with a link within \"Site Information\" category\n * @public\n * @allowPreventDefault\n */\n@event(\"site-information-click\", { bubbles: true })\n/**\n * Triggered on click interaction with any of the social media links within footer\n * @public\n * @allowPreventDefault\n */\n@event(\"social-media-link-click\", { bubbles: true })\n\nclass UDExFooter extends UI5Element {\n eventDetails!: {\n \"logo-click\": UDExFooterBaseEventDetail,\n \"back-to-top-click\": UDExFooterBaseEventDetail,\n \"contact-chat-click\": UDExFooterBaseEventDetail,\n \"contact-phone-local-numbers-click\": UDExFooterBaseEventDetail,\n \"contact-email-click\": UDExFooterBaseEventDetail,\n \"contact-phone-click\": UDExFooterBaseEventDetail,\n \"quick-links-click\": UDExFooterDetailedClickEventDetail,\n \"trending-click\": UDExFooterDetailedClickEventDetail,\n \"about-sap-click\": UDExFooterDetailedClickEventDetail,\n \"site-information-click\":UDExFooterDetailedClickEventDetail,\n \"social-media-link-click\": UDExFooterDetailedClickEventDetail,\n };\n /**\n * Defines the Logo default title\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n logoTitle?: string;\n\n /**\n * Defines the Logo URL\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n logoUrl?: string;\n\n /**\n * Defines the optional component href link for the logo.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n logoLink: string = \"\";\n\n /**\n * Defines the tagline alt text.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n taglineAlt?: string;\n\n /**\n * Defines the tagline url.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n taglineUrl?: string;\n\n /**\n * Defines the chinese tagline url.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n chineseTaglineUrl?: string;\n\n /**\n * Defines the chinese logo url\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n chineseLogoUrl?: string;\n\n /**\n * Defines the optional component href link for the chinese logo.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n chineseLogoLink?: string;\n\n /**\n * List of the Quick links\n *\n * @default \"[]\"\n * @public\n */\n @property({ type: String })\n quickLinks: string = \"[]\";\n\n /**\n * List of the Trending links\n *\n * @default \"[]\"\n * @public\n */\n @property({ type: String })\n trendingLinks: string = \"[]\";\n\n /**\n * List of the About SAP links\n *\n * @default \"[]\"\n * @public\n */\n @property({ type: String })\n aboutLinks: string = \"[]\";\n\n /**\n * List of the Site Information links\n *\n * @default \"[]\"\n * @public\n */\n @property({ type: String })\n siteInformationLinks: string = \"[]\";\n\n /**\n * List of the contact numbers\n *\n * @default \"[]\"\n * @public\n */\n @property({ type: String })\n contactNumbersList: string = \"[]\";\n\n /**\n * Defines the local country numbers link's href\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n localCountryNumbersLink: string = \"\";\n\n /**\n * Defines the Contact us link's href\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n contactUsLink: string = \"\";\n\n /**\n * Defines the Chat with us link's href\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n chatWithUsLink: string = \"\";\n\n /**\n * List of the Social links and their icons\n *\n * @default \"[]\"\n * @public\n */\n @property({ type: String })\n socialLinks: string = \"[]\";\n\n /**\n * Alt for Logo\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n logoAlt: string = \"\";\n\n /**\n * Defines an aria label for the logo link\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n logoAriaLabel: string = \"\";\n\n /**\n * Defines an quick links column title\n *\n * @public\n */\n @property({ type: String })\n quickLinksTitle?: string;\n\n /**\n * Defines a trending column title\n *\n * @public\n */\n @property({ type: String })\n trendingTitle?: string;\n\n /**\n * Defines an \"about Sap\" column title\n *\n * @public\n */\n @property({ type: String })\n aboutSapTitle?: string;\n\n /**\n * Defines a site information column title\n *\n * @public\n */\n @property({ type: String })\n siteInformationTitle?: string;\n\n /**\n * Defines a href for the chinese ICP Number link\n *\n * @public\n */\n @property({ type: String })\n chineseIcpNumberLink: string = chineseICPDefaultLink;\n\n /**\n * Defines should render the mobile navigation.\n *\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _shouldRenderMobileMenu!: boolean;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n _handleResizeBound: ResizeObserverCallback;\n\n constructor() {\n super();\n this._handleResizeBound = this._handleResize.bind(this);\n }\n\n onExitDOM(): void {\n ResizeHandler.deregister(this, this._handleResizeBound);\n }\n\n onEnterDOM(): void {\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n ResizeHandler.register(this, this._handleResizeBound);\n }\n\n _handleResize(): void {\n this._shouldRenderMobileMenu = this.isMobile;\n }\n\n onBackToTopClick(e: PointerEvent): void {\n this.fireFooterBaseEvent(e, \"back-to-top-click\");\n\n window.scrollTo(0, 0);\n }\n\n get quickLinksArray(): FooterLink[] {\n return parseArrayFromString<FooterLink>(this.quickLinks);\n }\n\n get trendingLinksArray(): FooterLink[] {\n return parseArrayFromString<FooterLink>(this.trendingLinks);\n }\n\n get aboutLinksArray(): FooterLink[] {\n return parseArrayFromString<FooterLink>(this.aboutLinks);\n }\n\n get siteInformationLinksArray(): FooterLink[] {\n return parseArrayFromString<FooterLink>(this.siteInformationLinks);\n }\n\n get contactNumbersArray(): FooterContactNumber[] {\n return parseArrayFromString<FooterContactNumber>(this.contactNumbersList);\n }\n\n get socialLinksArray(): FooterSocialLink[] {\n return parseArrayFromString<FooterSocialLink>(this.socialLinks);\n }\n\n get isContactContainerVisible(): boolean {\n return !!this.contactNumbersArray.length || !!this.contactUsLink || !!this.chatWithUsLink;\n }\n\n get phoneNumberAccessibleName(): string {\n return `${UDExFooter.i18nBundle.getText(PHONE_NUMBER)} `;\n }\n\n get contactUsAccessibleName(): string {\n return UDExFooter.i18nBundle.getText(CONTACT_US);\n }\n\n get contactUsAccessibleLabel(): string {\n if (this.contactUsLink.includes(\"mailto:\")) {\n return `${this.contactUsAccessibleName} ${UDExFooter.i18nBundle.getText(EMAIL)}`;\n }\n return `${this.contactUsAccessibleName}`;\n }\n\n get chatWithUsAccessibleName(): string {\n return UDExFooter.i18nBundle.getText(CHAT_WITH_US);\n }\n\n get _quickLinksTitle() {\n return this.quickLinksTitle || UDExFooter.i18nBundle.getText(QUICK_LINKS);\n }\n\n get _trendingTitle() {\n return this.trendingTitle || UDExFooter.i18nBundle.getText(TRENDING);\n }\n\n get _aboutSapTitle() {\n return this.aboutSapTitle || UDExFooter.i18nBundle.getText(ABOUT_SAP);\n }\n\n get _siteInformationTitle() {\n return this.siteInformationTitle || UDExFooter.i18nBundle.getText(SITE_INFORMATION);\n }\n\n get completeListTitle(): string {\n return `${UDExFooter.i18nBundle.getText(SEE_COMPLETE_LIST)} `;\n }\n\n get localCountryTitle(): string {\n return UDExFooter.i18nBundle.getText(LOCAL_COUNTRY_NAMES);\n }\n\n get copyrightText(): string {\n return UDExFooter.i18nBundle.getText(COPYRIGHT, new Date().getFullYear());\n }\n\n get chineseICPNumber(): string {\n return `${UDExFooter.i18nBundle.getText(ICP_NUMBER)} `;\n }\n\n get chineseSecurityNetworkNumber(): string {\n return UDExFooter.i18nBundle.getText(PUBLIC_SECURITY_NETWORK_NUMBER);\n }\n\n get isMobile(): boolean {\n return BreakpointUtils.isAtMost(\"S\");\n }\n\n get isChineseLang(): boolean {\n return getLanguage()?.toLowerCase() === \"zh_cn\";\n }\n\n get hasLogo(): boolean {\n return !!(this.logoUrl || this.chineseLogoUrl);\n }\n\n get hasLogoLink(): boolean {\n return !!(this.logoLink || this.chineseLogoLink);\n }\n\n get currentLogoUrl(): string | undefined {\n return this.isChineseLang && this.chineseLogoUrl ? this.chineseLogoUrl : this.logoUrl;\n }\n\n get logoHref(): string {\n return this.isChineseLang && this.chineseLogoLink ? this.chineseLogoLink : this.logoLink;\n }\n\n get hasTagline(): boolean {\n return !!(this.taglineUrl || this.chineseTaglineUrl);\n }\n\n get currentTaglineUrl(): string | undefined {\n return this.isChineseLang && this.chineseTaglineUrl ? this.chineseTaglineUrl : this.taglineUrl;\n }\n\n get taglineClass(): string {\n const root = \"udex-footer__tagline-image\";\n return this.isChineseLang && this.chineseTaglineUrl ? `${root}-chinese` : root;\n }\n\n get logoClass(): string {\n const root = \"udex-footer__logo-image\";\n return this.isChineseLang && this.chineseLogoUrl ? `${root}-chinese` : root;\n }\n\n _onLogoClick(e: PointerEvent): void {\n this.fireFooterBaseEvent(e, \"logo-click\");\n }\n\n _onContactPhoneClick(e: PointerEvent): void {\n this.fireFooterBaseEvent(e, \"contact-phone-click\");\n }\n _onContactPhoneLocalNumbersClick(e: PointerEvent): void {\n this.fireFooterBaseEvent(e, \"contact-phone-local-numbers-click\");\n }\n _onContactEmailClick(e: PointerEvent): void {\n this.fireFooterBaseEvent(e, \"contact-email-click\");\n }\n _onContactChatClick(e: PointerEvent): void {\n this.fireFooterBaseEvent(e, \"contact-chat-click\");\n }\n\n _onQuickLinksClick(e: PointerEvent): void {\n this.fireFooterDetailedClickEvent(e, \"quick-links-click\");\n }\n\n _onTrendingClick(e: PointerEvent): void {\n this.fireFooterDetailedClickEvent(e, \"trending-click\");\n }\n\n _onAboutSapClick(e: PointerEvent): void {\n this.fireFooterDetailedClickEvent(e, \"about-sap-click\");\n }\n\n _onSiteInformationClick(e: PointerEvent): void {\n this.fireFooterDetailedClickEvent(e, \"site-information-click\");\n }\n\n _onSocialMediaLinkClick(e: PointerEvent): void {\n this.fireFooterDetailedClickEvent(e, \"social-media-link-click\");\n }\n\n fireFooterBaseEvent(e: PointerEvent, eventName: BaseEvents): void {\n this.fireDecoratorEvent(eventName, { originalEvent: e });\n }\n\n fireFooterDetailedClickEvent(e: PointerEvent, eventName: DetailedEvents): void {\n const sourceNode = e.composedPath()[0] as HTMLElement;\n const { innerText, dataset: { id, name } } = sourceNode;\n\n this.fireDecoratorEvent(eventName, {\n ...(!!id?.length && { id }),\n name: innerText.length ? innerText : name,\n originalEvent: e,\n sourceNode,\n });\n }\n}\n\nUDExFooter.define();\n\nexport default UDExFooter;\nexport type { UDExFooterBaseEventDetail, UDExFooterDetailedClickEventDetail };\n"]}
|
|
1
|
+
{"version":3,"file":"Footer.js","sourceRoot":"","sources":["../src/Footer.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element 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 event from \"@ui5/webcomponents-base/dist/decorators/event-strict.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/dist/Device.js\";\nimport { getLanguage } from \"@ui5/webcomponents-base/dist/config/Language.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport UDExAccordionItem from \"./AccordionItem.js\";\nimport UDExButton from \"./Button.js\";\nimport UDExAccordion from \"./Accordion.js\";\nimport UDExLink from \"./Link.js\";\nimport UDExDivider from \"./Divider.js\";\nimport UDExSocialMediaButton from \"./SocialMediaButton.js\";\nimport type { UDExSocialMediaButtonType } from \"./types/SocialMediaButtonType.js\";\nimport type { UDExTarget } from \"./types/common.js\";\nimport { BreakpointUtils } from \"./utils/Breakpoints.js\";\nimport parseArrayFromString from \"./utils/parseArrayFromString.js\";\nimport FooterTemplate from \"./FooterTemplate.js\";\nimport {\n ABOUT_SAP,\n CHAT_WITH_US,\n CONTACT_US,\n EMAIL,\n LOCAL_COUNTRY_NAMES,\n PHONE_NUMBER,\n QUICK_LINKS,\n SEE_COMPLETE_LIST,\n SITE_INFORMATION,\n TRENDING,\n COPYRIGHT,\n PUBLIC_SECURITY_NETWORK_NUMBER,\n ICP_NUMBER,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport FooterCss from \"./generated/themes/Footer.css.js\";\n\nexport const chineseICPDefaultLink = \"https://beian.miit.gov.cn/\";\n\nexport type FooterLink = {\n id: string;\n title: string;\n url: string;\n target: UDExTarget;\n};\n\nexport type FooterSocialLink = {\n name?: UDExSocialMediaButtonType;\n url: string;\n target?: UDExTarget;\n accessibleName?: string;\n id? : string;\n};\n\nexport type FooterContactNumber = {\n number: string;\n country: string;\n};\n\ntype UDExFooterDetailedClickEventDetail = {\n originalEvent: MouseEvent,\n name: string | undefined;\n id?: string;\n sourceNode: HTMLElement;\n}\n\ntype UDExFooterBaseEventDetail = {\n originalEvent: MouseEvent | Event,\n}\n\ntype BaseEvents = \"contact-chat-click\" | \"contact-phone-local-numbers-click\" | \"contact-email-click\" | \"contact-phone-click\" | \"logo-click\" | \"back-to-top-click\";\n\ntype DetailedEvents = \"quick-links-click\" | \"trending-click\" | \"about-sap-click\" | \"site-information-click\" | \"social-media-link-click\";\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-footer</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/Footer.js\";</code>\n *\n * @constructor\n * @author SAP SE\n * @extends UI5Element\n * @tagname udex-footer\n * @public\n */\n@customElement({\n languageAware: true,\n tag: \"udex-footer\",\n renderer: jsxRenderer,\n styles: [FooterCss],\n template: FooterTemplate,\n dependencies: [UDExAccordion, UDExAccordionItem, Icon, UDExButton, UDExDivider, UDExLink, UDExSocialMediaButton],\n})\n/**\n * Triggered on click interaction with logo in footer\n * @public\n * @allowPreventDefault\n */\n@event(\"logo-click\", { bubbles: true })\n/**\n * Triggered on click interaction with \"Back to Top\" button\n * @public\n * @allowPreventDefault\n */\n@event(\"back-to-top-click\", { bubbles: true })\n/**\n * Triggered on click interaction with phone number link in footer\n * @public\n * @allowPreventDefault\n */\n@event(\"contact-phone-click\", { bubbles: true })\n/**\n * Triggered on click interaction with local country numbers list link\n * @public\n * @allowPreventDefault\n */\n@event(\"contact-phone-local-numbers-click\", { bubbles: true })\n/**\n * Triggered on click interaction with \"Contact us by email\" link\n * @public\n * @allowPreventDefault\n */\n@event(\"contact-email-click\", { bubbles: true })\n/**\n * Triggered on click interaction with \"Contact us by chat\" link\n * @public\n * @allowPreventDefault\n */\n@event(\"contact-chat-click\", { bubbles: true })\n/**\n * Triggered on click interaction with a link within \"Quick Links\" category\n * @public\n * @allowPreventDefault\n */\n@event(\"quick-links-click\", { bubbles: true })\n/**\n * Triggered on click interaction with a link within \"Trending\" category\n * @public\n * @allowPreventDefault\n */\n@event(\"trending-click\", { bubbles: true })\n/**\n * Triggered on click interaction with a link within \"About SAP\" category\n * @public\n * @allowPreventDefault\n */\n@event(\"about-sap-click\", { bubbles: true })\n/**\n * Triggered on click interaction with a link within \"Site Information\" category\n * @public\n * @allowPreventDefault\n */\n@event(\"site-information-click\", { bubbles: true })\n/**\n * Triggered on click interaction with any of the social media links within footer\n * @public\n * @allowPreventDefault\n */\n@event(\"social-media-link-click\", { bubbles: true })\n\nclass UDExFooter extends UI5Element {\n eventDetails!: {\n \"logo-click\": UDExFooterBaseEventDetail,\n \"back-to-top-click\": UDExFooterBaseEventDetail,\n \"contact-chat-click\": UDExFooterBaseEventDetail,\n \"contact-phone-local-numbers-click\": UDExFooterBaseEventDetail,\n \"contact-email-click\": UDExFooterBaseEventDetail,\n \"contact-phone-click\": UDExFooterBaseEventDetail,\n \"quick-links-click\": UDExFooterDetailedClickEventDetail,\n \"trending-click\": UDExFooterDetailedClickEventDetail,\n \"about-sap-click\": UDExFooterDetailedClickEventDetail,\n \"site-information-click\":UDExFooterDetailedClickEventDetail,\n \"social-media-link-click\": UDExFooterDetailedClickEventDetail,\n };\n /**\n * Defines the Logo default title\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n logoTitle?: string;\n\n /**\n * Defines the Logo URL\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n logoUrl?: string;\n\n /**\n * Defines the optional component href link for the logo.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n logoLink: string = \"\";\n\n /**\n * Defines the tagline alt text.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n taglineAlt?: string;\n\n /**\n * Defines the tagline url.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n taglineUrl?: string;\n\n /**\n * Defines the chinese tagline url.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n chineseTaglineUrl?: string;\n\n /**\n * Defines the chinese logo url\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n chineseLogoUrl?: string;\n\n /**\n * Defines the optional component href link for the chinese logo.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n chineseLogoLink?: string;\n\n /**\n * List of the Quick links\n *\n * @default \"[]\"\n * @public\n */\n @property({ type: String })\n quickLinks: string = \"[]\";\n\n /**\n * List of the Trending links\n *\n * @default \"[]\"\n * @public\n */\n @property({ type: String })\n trendingLinks: string = \"[]\";\n\n /**\n * List of the About SAP links\n *\n * @default \"[]\"\n * @public\n */\n @property({ type: String })\n aboutLinks: string = \"[]\";\n\n /**\n * List of the Site Information links\n *\n * @default \"[]\"\n * @public\n */\n @property({ type: String })\n siteInformationLinks: string = \"[]\";\n\n /**\n * List of the contact numbers\n *\n * @default \"[]\"\n * @public\n */\n @property({ type: String })\n contactNumbersList: string = \"[]\";\n\n /**\n * Defines the local country numbers link's href\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n localCountryNumbersLink: string = \"\";\n\n /**\n * Defines the Contact us link's href\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n contactUsLink: string = \"\";\n\n /**\n * Defines the Chat with us link's href\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n chatWithUsLink: string = \"\";\n\n /**\n * List of the Social links and their icons\n *\n * @default \"[]\"\n * @public\n */\n @property({ type: String })\n socialLinks: string = \"[]\";\n\n /**\n * Alt for Logo\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n logoAlt: string = \"\";\n\n /**\n * Defines an aria label for the logo link\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n logoAriaLabel: string = \"\";\n\n /**\n * Defines an quick links column title\n *\n * @public\n */\n @property({ type: String })\n quickLinksTitle?: string;\n\n /**\n * Defines a trending column title\n *\n * @public\n */\n @property({ type: String })\n trendingTitle?: string;\n\n /**\n * Defines an \"about Sap\" column title\n *\n * @public\n */\n @property({ type: String })\n aboutSapTitle?: string;\n\n /**\n * Defines a site information column title\n *\n * @public\n */\n @property({ type: String })\n siteInformationTitle?: string;\n\n /**\n * Defines a href for the chinese ICP Number link\n *\n * @public\n */\n @property({ type: String })\n chineseIcpNumberLink: string = chineseICPDefaultLink;\n\n /**\n * Defines should render the mobile navigation.\n *\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _shouldRenderMobileMenu!: boolean;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n _handleResizeBound: ResizeObserverCallback;\n\n constructor() {\n super();\n this._handleResizeBound = this._handleResize.bind(this);\n }\n\n onExitDOM(): void {\n ResizeHandler.deregister(this, this._handleResizeBound);\n }\n\n onEnterDOM(): void {\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n ResizeHandler.register(this, this._handleResizeBound);\n }\n\n _handleResize(): void {\n this._shouldRenderMobileMenu = this.isMobile;\n }\n\n onBackToTopClick(e: Event): void {\n this.fireFooterBaseEvent(e, \"back-to-top-click\");\n\n window.scrollTo(0, 0);\n }\n\n get quickLinksArray(): FooterLink[] {\n return parseArrayFromString<FooterLink>(this.quickLinks);\n }\n\n get trendingLinksArray(): FooterLink[] {\n return parseArrayFromString<FooterLink>(this.trendingLinks);\n }\n\n get aboutLinksArray(): FooterLink[] {\n return parseArrayFromString<FooterLink>(this.aboutLinks);\n }\n\n get siteInformationLinksArray(): FooterLink[] {\n return parseArrayFromString<FooterLink>(this.siteInformationLinks);\n }\n\n get contactNumbersArray(): FooterContactNumber[] {\n return parseArrayFromString<FooterContactNumber>(this.contactNumbersList);\n }\n\n get socialLinksArray(): FooterSocialLink[] {\n return parseArrayFromString<FooterSocialLink>(this.socialLinks);\n }\n\n get isContactContainerVisible(): boolean {\n return !!this.contactNumbersArray.length || !!this.contactUsLink || !!this.chatWithUsLink;\n }\n\n get phoneNumberAccessibleName(): string {\n return `${UDExFooter.i18nBundle.getText(PHONE_NUMBER)} `;\n }\n\n get contactUsAccessibleName(): string {\n return UDExFooter.i18nBundle.getText(CONTACT_US);\n }\n\n get contactUsAccessibleLabel(): string {\n if (this.contactUsLink.includes(\"mailto:\")) {\n return `${this.contactUsAccessibleName} ${UDExFooter.i18nBundle.getText(EMAIL)}`;\n }\n return `${this.contactUsAccessibleName}`;\n }\n\n get chatWithUsAccessibleName(): string {\n return UDExFooter.i18nBundle.getText(CHAT_WITH_US);\n }\n\n get _quickLinksTitle(): string {\n return this.quickLinksTitle || UDExFooter.i18nBundle.getText(QUICK_LINKS);\n }\n\n get _trendingTitle(): string {\n return this.trendingTitle || UDExFooter.i18nBundle.getText(TRENDING);\n }\n\n get _aboutSapTitle(): string {\n return this.aboutSapTitle || UDExFooter.i18nBundle.getText(ABOUT_SAP);\n }\n\n get _siteInformationTitle(): string {\n return this.siteInformationTitle || UDExFooter.i18nBundle.getText(SITE_INFORMATION);\n }\n\n get completeListTitle(): string {\n return `${UDExFooter.i18nBundle.getText(SEE_COMPLETE_LIST)} `;\n }\n\n get localCountryTitle(): string {\n return UDExFooter.i18nBundle.getText(LOCAL_COUNTRY_NAMES);\n }\n\n get copyrightText(): string {\n return UDExFooter.i18nBundle.getText(COPYRIGHT, new Date().getFullYear());\n }\n\n get chineseICPNumber(): string {\n return `${UDExFooter.i18nBundle.getText(ICP_NUMBER)} `;\n }\n\n get chineseSecurityNetworkNumber(): string {\n return UDExFooter.i18nBundle.getText(PUBLIC_SECURITY_NETWORK_NUMBER);\n }\n\n get isMobile(): boolean {\n return BreakpointUtils.isAtMost(\"S\");\n }\n\n get isChineseLang(): boolean {\n return getLanguage()?.toLowerCase() === \"zh_cn\";\n }\n\n get hasLogo(): boolean {\n return !!(this.logoUrl || this.chineseLogoUrl);\n }\n\n get hasLogoLink(): boolean {\n return !!(this.logoLink || this.chineseLogoLink);\n }\n\n get currentLogoUrl(): string | undefined {\n return this.isChineseLang && this.chineseLogoUrl ? this.chineseLogoUrl : this.logoUrl;\n }\n\n get logoHref(): string {\n return this.isChineseLang && this.chineseLogoLink ? this.chineseLogoLink : this.logoLink;\n }\n\n get hasTagline(): boolean {\n return !!(this.taglineUrl || this.chineseTaglineUrl);\n }\n\n get currentTaglineUrl(): string | undefined {\n return this.isChineseLang && this.chineseTaglineUrl ? this.chineseTaglineUrl : this.taglineUrl;\n }\n\n get taglineClass(): string {\n const root = \"udex-footer__tagline-image\";\n return this.isChineseLang && this.chineseTaglineUrl ? `${root}-chinese` : root;\n }\n\n get logoClass(): string {\n const root = \"udex-footer__logo-image\";\n return this.isChineseLang && this.chineseLogoUrl ? `${root}-chinese` : root;\n }\n\n _onLogoClick(e: MouseEvent): void {\n this.fireFooterBaseEvent(e, \"logo-click\");\n }\n\n _onContactPhoneClick(e: MouseEvent): void {\n this.fireFooterBaseEvent(e, \"contact-phone-click\");\n }\n _onContactPhoneLocalNumbersClick(e: Event): void {\n this.fireFooterBaseEvent(e, \"contact-phone-local-numbers-click\");\n }\n _onContactEmailClick(e: MouseEvent): void {\n this.fireFooterBaseEvent(e, \"contact-email-click\");\n }\n _onContactChatClick(e: MouseEvent): void {\n this.fireFooterBaseEvent(e, \"contact-chat-click\");\n }\n\n _onQuickLinksClick(e: MouseEvent): void {\n this.fireFooterDetailedClickEvent(e, \"quick-links-click\");\n }\n\n _onTrendingClick(e: MouseEvent): void {\n this.fireFooterDetailedClickEvent(e, \"trending-click\");\n }\n\n _onAboutSapClick(e: MouseEvent): void {\n this.fireFooterDetailedClickEvent(e, \"about-sap-click\");\n }\n\n _onSiteInformationClick(e: MouseEvent): void {\n this.fireFooterDetailedClickEvent(e, \"site-information-click\");\n }\n\n _onSocialMediaLinkClick(e: MouseEvent): void {\n this.fireFooterDetailedClickEvent(e, \"social-media-link-click\");\n }\n\n fireFooterBaseEvent(e: MouseEvent | Event, eventName: BaseEvents): void {\n this.fireDecoratorEvent(eventName, { originalEvent: e });\n }\n\n fireFooterDetailedClickEvent(e: MouseEvent, eventName: DetailedEvents): void {\n const sourceNode = e.composedPath()[0] as HTMLElement;\n const { innerText, dataset: { id, name } } = sourceNode;\n\n this.fireDecoratorEvent(eventName, {\n ...(!!id?.length && { id }),\n name: innerText.length ? innerText : name,\n originalEvent: e,\n sourceNode,\n });\n }\n}\n\nUDExFooter.define();\n\nexport default UDExFooter;\nexport type { UDExFooterBaseEventDetail, UDExFooterDetailedClickEventDetail };\n"]}
|