@ui5/webcomponents-fiori 1.24.0 → 1.24.2
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/CHANGELOG.md +16 -0
- package/dist/ShellBar.js +1 -0
- package/dist/ShellBar.js.map +1 -1
- package/dist/SideNavigation.d.ts +3 -2
- package/dist/SideNavigation.js +1 -0
- package/dist/SideNavigation.js.map +1 -1
- package/dist/css/themes/Bar.css +1 -1
- package/dist/css/themes/FlexibleColumnLayout.css +1 -1
- package/dist/css/themes/MediaGallery.css +1 -1
- package/dist/css/themes/MediaGalleryItem.css +1 -1
- package/dist/css/themes/NotificationListGroupItem.css +1 -1
- package/dist/css/themes/NotificationListItem.css +1 -1
- package/dist/css/themes/NotificationListItemBase.css +1 -1
- package/dist/css/themes/NotificationOverflowActionsPopover.css +1 -1
- package/dist/css/themes/Page.css +1 -1
- package/dist/css/themes/ProductSwitchItem.css +1 -1
- package/dist/css/themes/ShellBar.css +1 -1
- package/dist/css/themes/SideNavigation.css +1 -1
- package/dist/css/themes/SideNavigationGroup.css +1 -1
- package/dist/css/themes/SideNavigationItem.css +1 -1
- package/dist/css/themes/SideNavigationItemBase.css +1 -1
- package/dist/css/themes/SideNavigationPopover.css +1 -1
- package/dist/css/themes/SideNavigationSubItem.css +1 -1
- package/dist/css/themes/Timeline.css +1 -1
- package/dist/css/themes/TimelineItem.css +1 -1
- package/dist/css/themes/UploadCollection.css +1 -1
- package/dist/css/themes/UploadCollectionItem.css +1 -1
- package/dist/css/themes/ViewSettingsDialog.css +1 -1
- package/dist/css/themes/Wizard.css +1 -1
- package/dist/css/themes/WizardTab.css +1 -1
- package/dist/css/themes/sap_belize/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -1
- package/dist/custom-elements-internal.json +19 -5
- package/dist/custom-elements.json +3 -3
- package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/js-imports/IllustrationsV5TNT.js +6 -6
- package/dist/generated/js-imports/IllustrationsV5TNT.js.map +1 -1
- package/dist/generated/js-imports/IllustrationsV5TNTHC.js +6 -6
- package/dist/generated/js-imports/IllustrationsV5TNTHC.js.map +1 -1
- package/dist/generated/themes/Bar.css.js +1 -1
- package/dist/generated/themes/Bar.css.js.map +1 -1
- package/dist/generated/themes/FlexibleColumnLayout.css.js +1 -1
- package/dist/generated/themes/FlexibleColumnLayout.css.js.map +1 -1
- package/dist/generated/themes/MediaGallery.css.js +1 -1
- package/dist/generated/themes/MediaGallery.css.js.map +1 -1
- package/dist/generated/themes/MediaGalleryItem.css.js +1 -1
- package/dist/generated/themes/MediaGalleryItem.css.js.map +1 -1
- package/dist/generated/themes/NotificationListGroupItem.css.js +1 -1
- package/dist/generated/themes/NotificationListGroupItem.css.js.map +1 -1
- package/dist/generated/themes/NotificationListItem.css.js +1 -1
- package/dist/generated/themes/NotificationListItem.css.js.map +1 -1
- package/dist/generated/themes/NotificationListItemBase.css.js +1 -1
- package/dist/generated/themes/NotificationListItemBase.css.js.map +1 -1
- package/dist/generated/themes/NotificationOverflowActionsPopover.css.js +1 -1
- package/dist/generated/themes/NotificationOverflowActionsPopover.css.js.map +1 -1
- package/dist/generated/themes/Page.css.js +1 -1
- package/dist/generated/themes/Page.css.js.map +1 -1
- package/dist/generated/themes/ProductSwitchItem.css.js +1 -1
- package/dist/generated/themes/ProductSwitchItem.css.js.map +1 -1
- package/dist/generated/themes/ShellBar.css.js +1 -1
- package/dist/generated/themes/ShellBar.css.js.map +1 -1
- package/dist/generated/themes/SideNavigation.css.js +1 -1
- package/dist/generated/themes/SideNavigation.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationGroup.css.js +1 -1
- package/dist/generated/themes/SideNavigationGroup.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationItem.css.js +1 -1
- package/dist/generated/themes/SideNavigationItem.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationItemBase.css.js +1 -1
- package/dist/generated/themes/SideNavigationItemBase.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationPopover.css.js +1 -1
- package/dist/generated/themes/SideNavigationPopover.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationSubItem.css.js +1 -1
- package/dist/generated/themes/SideNavigationSubItem.css.js.map +1 -1
- package/dist/generated/themes/Timeline.css.js +1 -1
- package/dist/generated/themes/Timeline.css.js.map +1 -1
- package/dist/generated/themes/TimelineItem.css.js +1 -1
- package/dist/generated/themes/TimelineItem.css.js.map +1 -1
- package/dist/generated/themes/UploadCollection.css.js +1 -1
- package/dist/generated/themes/UploadCollection.css.js.map +1 -1
- package/dist/generated/themes/UploadCollectionItem.css.js +1 -1
- package/dist/generated/themes/UploadCollectionItem.css.js.map +1 -1
- package/dist/generated/themes/ViewSettingsDialog.css.js +1 -1
- package/dist/generated/themes/ViewSettingsDialog.css.js.map +1 -1
- package/dist/generated/themes/Wizard.css.js +1 -1
- package/dist/generated/themes/Wizard.css.js.map +1 -1
- package/dist/generated/themes/WizardTab.css.js +1 -1
- package/dist/generated/themes/WizardTab.css.js.map +1 -1
- package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
- package/dist/illustrations-v5/tnt/{UnSuccessfulAuth.d.ts → UnsuccessfulAuth.d.ts} +1 -1
- package/dist/illustrations-v5/tnt/{UnSuccessfulAuth.js → UnsuccessfulAuth.js} +6 -6
- package/dist/illustrations-v5/tnt/hc/{UnSuccessfulAuth.d.ts → UnsuccessfulAuth.d.ts} +1 -1
- package/dist/illustrations-v5/tnt/hc/{UnSuccessfulAuth.js → UnsuccessfulAuth.js} +6 -6
- package/dist/web-types.json +1 -1
- package/package.json +9 -10
- package/src/themes/ShellBar.css +5 -0
- package/src/themes/UploadCollection.css +6 -3
- package/src/themes/base/UploadCollection-parameters.css +4 -0
- package/src/themes/sap_horizon/UploadCollection-parameters.css +6 -0
- package/src/themes/sap_horizon_dark/UploadCollection-parameters.css +6 -0
- package/src/themes/sap_horizon_hcb/UploadCollection-parameters.css +6 -3
- package/src/themes/sap_horizon_hcw/UploadCollection-parameters.css +6 -2
- package/LICENSE.txt +0 -201
- /package/dist/illustrations-v5/tnt/hc/{tnt-Dialog-UnSuccessfulAuth.js → tnt-Dialog-UnsuccessfulAuth.js} +0 -0
- /package/dist/illustrations-v5/tnt/hc/{tnt-Dot-UnSuccessfulAuth.js → tnt-Dot-UnsuccessfulAuth.js} +0 -0
- /package/dist/illustrations-v5/tnt/hc/{tnt-Scene-UnSuccessfulAuth.js → tnt-Scene-UnsuccessfulAuth.js} +0 -0
- /package/dist/illustrations-v5/tnt/hc/{tnt-Spot-UnSuccessfulAuth.js → tnt-Spot-UnsuccessfulAuth.js} +0 -0
- /package/dist/illustrations-v5/tnt/{tnt-Dialog-UnSuccessfulAuth.js → tnt-Dialog-UnsuccessfulAuth.js} +0 -0
- /package/dist/illustrations-v5/tnt/{tnt-Dot-UnSuccessfulAuth.js → tnt-Dot-UnsuccessfulAuth.js} +0 -0
- /package/dist/illustrations-v5/tnt/{tnt-Scene-UnSuccessfulAuth.js → tnt-Scene-UnsuccessfulAuth.js} +0 -0
- /package/dist/illustrations-v5/tnt/{tnt-Spot-UnSuccessfulAuth.js → tnt-Spot-UnsuccessfulAuth.js} +0 -0
- /package/src/illustrations-v5/tnt/hc/{tnt-Dialog-UnSuccessfulAuth.svg → tnt-Dialog-UnsuccessfulAuth.svg} +0 -0
- /package/src/illustrations-v5/tnt/hc/{tnt-Dot-UnSuccessfulAuth.svg → tnt-Dot-UnsuccessfulAuth.svg} +0 -0
- /package/src/illustrations-v5/tnt/hc/{tnt-Scene-UnSuccessfulAuth.svg → tnt-Scene-UnsuccessfulAuth.svg} +0 -0
- /package/src/illustrations-v5/tnt/hc/{tnt-Spot-UnSuccessfulAuth.svg → tnt-Spot-UnsuccessfulAuth.svg} +0 -0
- /package/src/illustrations-v5/tnt/{tnt-Dialog-UnSuccessfulAuth.svg → tnt-Dialog-UnsuccessfulAuth.svg} +0 -0
- /package/src/illustrations-v5/tnt/{tnt-Dot-UnSuccessfulAuth.svg → tnt-Dot-UnsuccessfulAuth.svg} +0 -0
- /package/src/illustrations-v5/tnt/{tnt-Scene-UnSuccessfulAuth.svg → tnt-Scene-UnsuccessfulAuth.svg} +0 -0
- /package/src/illustrations-v5/tnt/{tnt-Spot-UnSuccessfulAuth.svg → tnt-Spot-UnsuccessfulAuth.svg} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,22 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [1.24.1](https://github.com/SAP/ui5-webcomponents/compare/v1.24.0...v1.24.1) (2024-05-13)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* **ui5-illustrated-message:** typo in the UnsuccessfulAuth name ([#8882](https://github.com/SAP/ui5-webcomponents/issues/8882)) ([bedbee1](https://github.com/SAP/ui5-webcomponents/commit/bedbee18d6612f81943abbe8cfedf7c1e46227e6)), closes [#8873](https://github.com/SAP/ui5-webcomponents/issues/8873)
|
|
12
|
+
* **ui5-multi-combobox:** remove value state header on validation reset ([#8836](https://github.com/SAP/ui5-webcomponents/issues/8836)) ([ae490b6](https://github.com/SAP/ui5-webcomponents/commit/ae490b61e645fa9893aafeac2e28cc459dea5db6)), closes [#8586](https://github.com/SAP/ui5-webcomponents/issues/8586)
|
|
13
|
+
* **ui5-shellbar:** assistant icon color fixed ([#8746](https://github.com/SAP/ui5-webcomponents/issues/8746)) ([ae0e430](https://github.com/SAP/ui5-webcomponents/commit/ae0e430530a6cb6ec78cd9b644613fa8dee083d0))
|
|
14
|
+
* **ui5-side-navigation:** import overflow icon ([#8861](https://github.com/SAP/ui5-webcomponents/issues/8861)) ([6bd9e39](https://github.com/SAP/ui5-webcomponents/commit/6bd9e39c887b23203feb9699bef0c12c96254856)), closes [#8242](https://github.com/SAP/ui5-webcomponents/issues/8242)
|
|
15
|
+
* **ui5-side-navigation:** replace items and fixedItems union type with SideNavigationItemBase ([#8862](https://github.com/SAP/ui5-webcomponents/issues/8862)) ([c542aae](https://github.com/SAP/ui5-webcomponents/commit/c542aaec7fca20cb43ca03b1b10264a8d2cd5197))
|
|
16
|
+
* **ui5-upload-collection:** correct drag and drop text and icon color ([#8863](https://github.com/SAP/ui5-webcomponents/issues/8863)) ([c208132](https://github.com/SAP/ui5-webcomponents/commit/c208132dea1ed199cb3041557254eb89a59589e1)), closes [#8616](https://github.com/SAP/ui5-webcomponents/issues/8616)
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
6
22
|
# [1.24.0](https://github.com/SAP/ui5-webcomponents/compare/v1.24.0-rc.4...v1.24.0) (2024-04-04)
|
|
7
23
|
|
|
8
24
|
**Note:** Version bump only for package @ui5/webcomponents-fiori
|
package/dist/ShellBar.js
CHANGED
|
@@ -606,6 +606,7 @@ let ShellBar = ShellBar_1 = class ShellBar extends UI5Element {
|
|
|
606
606
|
},
|
|
607
607
|
copilot: {
|
|
608
608
|
"ui5-shellbar-hidden-button": this.isIconHidden(this._coPilotIcon),
|
|
609
|
+
"ui5-shellbar-co-pilot-pressed": this._coPilotPressed,
|
|
609
610
|
},
|
|
610
611
|
overflow: {
|
|
611
612
|
"ui5-shellbar-hidden-button": this.isIconHidden("overflow"),
|
package/dist/ShellBar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShellBar.js","sourceRoot":"","sources":["../src/ShellBar.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { getFeature } from \"@ui5/webcomponents-base/dist/FeaturesRegistry.js\";\nimport AnimationMode from \"@ui5/webcomponents-base/dist/types/AnimationMode.js\";\nimport { getAnimationMode } from \"@ui5/webcomponents-base/dist/config/AnimationMode.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport StandardListItem from \"@ui5/webcomponents/dist/StandardListItem.js\";\nimport List from \"@ui5/webcomponents/dist/List.js\";\nimport type { ListSelectionChangeEventDetail } from \"@ui5/webcomponents/dist/List.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport Popover from \"@ui5/webcomponents/dist/Popover.js\";\nimport Button from \"@ui5/webcomponents/dist/Button.js\";\nimport ToggleButton from \"@ui5/webcomponents/dist/ToggleButton.js\";\nimport Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport type Input from \"@ui5/webcomponents/dist/Input.js\";\nimport type { IButton } from \"@ui5/webcomponents/dist/Button.js\";\nimport HasPopup from \"@ui5/webcomponents/dist/types/HasPopup.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport \"@ui5/webcomponents-icons/dist/search.js\";\nimport \"@ui5/webcomponents-icons/dist/bell.js\";\nimport \"@ui5/webcomponents-icons/dist/overflow.js\";\nimport \"@ui5/webcomponents-icons/dist/grid.js\";\nimport type { Timeout, ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport type ListItemBase from \"@ui5/webcomponents/dist/ListItemBase.js\";\nimport type ShellBarItem from \"./ShellBarItem.js\";\n\n// Templates\nimport ShellBarTemplate from \"./generated/templates/ShellBarTemplate.lit.js\";\nimport ShellBarPopoverTemplate from \"./generated/templates/ShellBarPopoverTemplate.lit.js\";\n\n// Styles\nimport shellBarStyles from \"./generated/themes/ShellBar.css.js\";\nimport ShellBarPopoverCss from \"./generated/themes/ShellBarPopover.css.js\";\n\n// Icons\nimport \"@ui5/webcomponents-icons/dist/da.js\";\nimport \"@ui5/webcomponents-icons/dist/da-2.js\";\n\nimport {\n\tSHELLBAR_LABEL,\n\tSHELLBAR_LOGO,\n\tSHELLBAR_COPILOT,\n\tSHELLBAR_NOTIFICATIONS,\n\tSHELLBAR_CANCEL,\n\tSHELLBAR_PROFILE,\n\tSHELLBAR_PRODUCTS,\n\tSHELLBAR_SEARCH,\n\tSHELLBAR_OVERFLOW,\n} from \"./generated/i18n/i18n-defaults.js\";\n\ntype ShellBarAccessibilityRoles = {\n\tlogoRole?: string;\n};\n\ntype ShellBarAccessibilityTexts = {\n\tlogoTitle?: string;\n\tprofileButtonTitle?: string;\n};\n\ntype ShellBarAccessibilityAttributesValue = {\n\texpanded?: \"true\" | \"false\" | boolean,\n\tariaHasPopup?: `${HasPopup}`,\n}\n\ntype ShellBarAccessibilityAttributes = {\n\tnotifications?: ShellBarAccessibilityAttributesValue;\n\tprofile?: ShellBarAccessibilityAttributesValue;\n\tproduct?: ShellBarAccessibilityAttributesValue;\n\tsearch?: ShellBarAccessibilityAttributesValue;\n\toverflow?: ShellBarAccessibilityAttributesValue;\n};\n\ntype ShellBarNotificationsClickEventDetail = {\n\ttargetRef: HTMLElement;\n};\n\ntype ShellBarProfileClickEventDetail = {\n\ttargetRef: HTMLElement;\n};\n\ntype ShellBarProductSwitchClickEventDetail = {\n\ttargetRef: HTMLElement;\n};\n\ntype ShellBarLogoClickEventDetail = {\n\ttargetRef: HTMLElement;\n};\n\ntype ShellBarCoPilotClickEventDetail = {\n\ttargetRef: HTMLElement;\n};\n\ntype ShellBarMenuItemClickEventDetail = {\n\titem: HTMLElement;\n};\n\ntype ShellBarSearchButtonEventDetail = {\n\ttargetRef: HTMLElement;\n\tsearchFieldVisible: boolean;\n};\n\ntype ShellBarCoPilot = {\n\tanimated?: boolean,\n\tanimationValues?: string,\n};\n\ninterface IShelBarItemInfo {\n\tid: string,\n\ticon?: string,\n\ttext: string,\n\tpriority: number,\n\tshow: boolean,\n\tcount?: string,\n\tcustom?: boolean,\n\ttitle?: string,\n\tstableDomRef?: string,\n\trefItemid?: string,\n\tpress: (e: MouseEvent) => void,\n\tstyles: object,\n\tdomOrder: number,\n\tclasses: string,\n\torder?: number,\n\tprofile?: boolean,\n}\n\nconst HANDLE_RESIZE_DEBOUNCE_RATE = 200; // ms\n\n/**\n * @class\n * ### Overview\n *\n * The `ui5-shellbar` is meant to serve as an application header\n * and includes numerous built-in features, such as: logo, profile image/icon, title, search field, notifications and so on.\n *\n * ### Stable DOM Refs\n *\n * You can use the following stable DOM refs for the `ui5-shellbar`:\n *\n * - logo\n * - copilot\n * - notifications\n * - overflow\n * - profile\n * - product-switch\n *\n * ### Keyboard Handling\n *\n * #### Fast Navigation\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents-fiori/dist/ShellBar.js\";`\n * @csspart root - Used to style the outermost wrapper of the `ui5-shellbar`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 0.8.0\n */\n\n@customElement({\n\ttag: \"ui5-shellbar\",\n\tfastNavigation: true,\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: ShellBarTemplate,\n\tstaticAreaTemplate: ShellBarPopoverTemplate,\n\tstyles: shellBarStyles,\n\tstaticAreaStyles: [ShellBarPopoverCss],\n\tdependencies: [\n\t\tButton,\n\t\tIcon,\n\t\tList,\n\t\tPopover,\n\t\tStandardListItem,\n\t],\n})\n/**\n *\n * Fired, when the notification icon is activated.\n * @allowPreventDefault\n * @param {HTMLElement} targetRef dom ref of the activated element\n * @public\n */\n@event<ShellBarNotificationsClickEventDetail>(\"notifications-click\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\ttargetRef: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired, when the profile slot is present.\n * @param {HTMLElement} targetRef dom ref of the activated element\n * @public\n */\n@event<ShellBarProfileClickEventDetail>(\"profile-click\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\ttargetRef: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired, when the product switch icon is activated.\n *\n * **Note:** You can prevent closing of overflow popover by calling `event.preventDefault()`.\n * @allowPreventDefault\n * @param {HTMLElement} targetRef dom ref of the activated element\n * @public\n */\n@event<ShellBarProductSwitchClickEventDetail>(\"product-switch-click\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\ttargetRef: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired, when the logo is activated.\n * @param {HTMLElement} targetRef dom ref of the activated element\n * @since 0.10\n * @public\n */\n@event<ShellBarLogoClickEventDetail>(\"logo-click\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\ttargetRef: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired, when the co pilot is activated.\n * @param {HTMLElement} targetRef dom ref of the activated element\n * @since 0.10\n * @public\n */\n@event<ShellBarCoPilotClickEventDetail>(\"co-pilot-click\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\ttargetRef: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired, when a menu item is activated\n *\n * **Note:** You can prevent closing of overflow popover by calling `event.preventDefault()`.\n * @param {HTMLElement} item DOM ref of the activated list item\n * @since 0.10\n * @public\n */\n@event<ShellBarMenuItemClickEventDetail>(\"menu-item-click\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\titem: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired, when the search button is activated.\n *\n * **Note:** You can prevent expanding/collapsing of the search field by calling `event.preventDefault()`.\n * @allowPreventDefault\n * @param {HTMLElement} targetRef dom ref of the activated element\n * @param {Boolean} searchFieldVisible whether the search field is visible\n * @public\n */\n\n@event<ShellBarSearchButtonEventDetail>(\"search-button-click\", {\n\tdetail: {\n\t\ttargetRef: { type: HTMLElement },\n\t\tsearchFieldVisible: { type: Boolean },\n\t},\n})\n\nclass ShellBar extends UI5Element {\n\t/**\n\t * Defines the `primaryTitle`.\n\t *\n\t * **Note:** The `primaryTitle` would be hidden on S screen size (less than approx. 700px).\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tprimaryTitle!: string;\n\n\t/**\n\t * Defines the `secondaryTitle`.\n\t *\n\t * **Note:** The `secondaryTitle` would be hidden on S and M screen sizes (less than approx. 1300px).\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tsecondaryTitle!: string;\n\n\t/**\n\t * Defines the `notificationsCount`,\n\t * displayed in the notification icon top-right corner.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tnotificationsCount!: string;\n\n\t/**\n\t * Defines, if the notification icon would be displayed.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowNotifications!: boolean;\n\n\t/**\n\t * Defines, if the product switch icon would be displayed.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowProductSwitch!: boolean;\n\n\t/**\n\t * Defines, if the product CoPilot icon would be displayed.\n\t *\n\t * **Note:** By default the co-pilot is displayed as static SVG.\n\t * If you need an animated co-pilot, you can import the `\"@ui5/webcomponents-fiori/dist/features/CoPilotAnimation.js\"` module as add-on feature.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowCoPilot!: boolean;\n\n\t/**\n\t * Defines, if the Search Field would be displayed when there is a valid `searchField` slot.\n\t *\n\t * **Note:** By default the Search Field is not displayed.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowSearchField!: boolean;\n\n\t/**\n\t * An object of strings that defines additional accessibility roles for further customization.\n\t *\n\t * It supports the following fields:\n\t * - `logoRole`: the accessibility role for the `logo`\n\t * @default {}\n\t * @public\n\t * @since 1.6.0\n\t */\n\t@property({ type: Object })\n\taccessibilityRoles!: ShellBarAccessibilityRoles;\n\n\t/**\n\t * An object of strings that defines several additional accessibility texts\n\t * for even further customization.\n\t *\n\t * It supports the following fields:\n\t * - `profileButtonTitle`: defines the tooltip for the profile button\n\t * - `logoTitle`: defines the tooltip for the logo\n\t * @default {}\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property({ type: Object })\n\taccessibilityTexts!: ShellBarAccessibilityTexts;\n\n\t/**\n\t * An object of strings that defines several additional accessibility attribute values\n\t * for customization depending on the use case.\n\t *\n\t * It supports the following fields:\n\t *\n\t * - `expanded`: Indicates whether the anchor element, or another grouping element it controls, is currently expanded or collapsed. Accepts the following string values:\n\t *\n\t *\t- `true`\n\t *\t- `false`\n\t *\n\t * - `hasPopup`: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the anchor element. Accepts the following string values:\n\t *\t- `Dialog`\n\t *\t- `Grid`\n\t *\t- `ListBox`\n\t *\t- `Menu`\n\t *\t- `Tree`\n\t * @default {}\n\t * @public\n\t * @since 1.10.0\n\t */\n\t @property({ type: Object })\n\t accessibilityAttributes!: ShellBarAccessibilityAttributes;\n\n\t/**\n\t * @private\n\t */\n\t@property()\n\tbreakpointSize!: string;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\twithLogo!: boolean;\n\n\t@property({ type: Object })\n\t_itemsInfo!: Array<IShelBarItemInfo>;\n\n\t@property({ type: Object, multiple: true })\n\t_menuPopoverItems!: Array<HTMLElement>;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_menuPopoverExpanded!: boolean;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_overflowPopoverExpanded!: boolean;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_fullWidthSearch!: boolean;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_coPilotPressed!: boolean;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_isXXLBreakpoint!: boolean;\n\n\t/**\n\t * Defines the `ui5-shellbar` aditional items.\n\t *\n\t * **Note:**\n\t * You can use the `<ui5-shellbar-item></ui5-shellbar-item>`.\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, \"default\": true, invalidateOnChildChange: true })\n\titems!: Array<ShellBarItem>;\n\n\t/**\n\t * You can pass `ui5-avatar` to set the profile image/icon.\n\t * If no profile slot is set - profile will be excluded from actions.\n\t *\n\t * **Note:** We recommend not using the `size` attribute of `ui5-avatar` because\n\t * it should have specific size by design in the context of `ui5-shellbar` profile.\n\t * @since 1.0.0-rc.6\n\t * @public\n\t */\n\t@slot()\n\tprofile!: Array<HTMLElement>;\n\n\t/**\n\t * Defines the logo of the `ui5-shellbar`.\n\t * For example, you can use `ui5-avatar` or `img` elements as logo.\n\t * @since 1.0.0-rc.8\n\t * @public\n\t */\n\t@slot()\n\tlogo!: Array<HTMLElement>;\n\n\t/**\n\t * Defines the items displayed in menu after a click on the primary title.\n\t *\n\t * **Note:** You can use the `<ui5-li></ui5-li>` and its ancestors.\n\t * @since 0.10\n\t * @public\n\t */\n\t@slot()\n\tmenuItems!: Array<ListItemBase>;\n\n\t/**\n\t * Defines the `ui5-input`, that will be used as a search field.\n\t * @public\n\t */\n\t@slot()\n\tsearchField!: Array<Input>;\n\n\t/**\n\t * Defines a `ui5-button` in the bar that will be placed in the beginning.\n\t * We encourage this slot to be used for a back or home button.\n\t * It gets overstyled to match ShellBar's styling.\n\t * @public\n\t */\n\t@slot()\n\tstartButton!: Array<IButton>;\n\n\t/**\n\t * The container is positioned in the center of the `ui5-shellbar` and occupies one-third of the total length of the `ui5-shellbar`.\n\t *\n\t * **Note:** If set, the `searchField` slot is not rendered.\n\t * @private\n\t */\n\t@slot()\n\tmidContent!: Array<HTMLElement>;\n\n\tstatic i18nBundle: I18nBundle;\n\toverflowPopover?: Popover | null;\n\tmenuPopover?: Popover | null;\n\t_isInitialRendering: boolean;\n\t_defaultItemPressPrevented: boolean;\n\tmenuItemsObserver: MutationObserver;\n\tcoPilot?: ShellBarCoPilot;\n\t_coPilotIcon: string;\n\t_debounceInterval?: Timeout | null;\n\t_hiddenIcons?: Array<IShelBarItemInfo>;\n\t_handleResize: ResizeObserverCallback;\n\t_headerPress: () => Promise<void>;\n\n\tstatic get CO_PILOT_ICON_PRESSED() {\n\t\treturn \"sap-icon://da-2\";\n\t}\n\n\tstatic get CO_PILOT_ICON_UNPRESSED() {\n\t\treturn \"sap-icon://da\";\n\t}\n\n\tstatic get FIORI_3_BREAKPOINTS() {\n\t\treturn [\n\t\t\t599,\n\t\t\t1023,\n\t\t\t1439,\n\t\t\t1919,\n\t\t\t10000,\n\t\t];\n\t}\n\n\tstatic get FIORI_3_BREAKPOINTS_MAP(): Record<string, string> {\n\t\treturn {\n\t\t\t\"599\": \"S\",\n\t\t\t\"1023\": \"M\",\n\t\t\t\"1439\": \"L\",\n\t\t\t\"1919\": \"XL\",\n\t\t\t\"10000\": \"XXL\",\n\t\t};\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._itemsInfo = [];\n\t\tthis._isInitialRendering = true;\n\t\tthis._coPilotIcon = ShellBar.CO_PILOT_ICON_UNPRESSED;\n\n\t\t// marks if preventDefault() is called in item's press handler\n\t\tthis._defaultItemPressPrevented = false;\n\n\t\tthis.menuItemsObserver = new MutationObserver(() => {\n\t\t\tthis._updateClonedMenuItems();\n\t\t});\n\n\t\tthis._headerPress = async () => {\n\t\t\tthis._updateClonedMenuItems();\n\n\t\t\tif (this.hasMenuItems) {\n\t\t\t\tconst menuPopover = await this._getMenuPopover();\n\t\t\t\tmenuPopover!.showAt(this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-menu-button\")!, true);\n\t\t\t}\n\t\t};\n\n\t\tthis._handleResize = () => {\n\t\t\tthis._debounce(async () => {\n\t\t\t\tawait this._getResponsivePopover();\n\t\t\t\tthis.overflowPopover!.close();\n\t\t\t\tthis._overflowActions();\n\t\t\t}, HANDLE_RESIZE_DEBOUNCE_RATE);\n\t\t};\n\t}\n\n\t_toggleCoPilotIcon(button: ToggleButton) {\n\t\tthis._coPilotIcon = !this._coPilotPressed ? ShellBar.CO_PILOT_ICON_PRESSED : ShellBar.CO_PILOT_ICON_UNPRESSED;\n\t\tbutton.icon = this._coPilotIcon;\n\t\tthis._coPilotPressed = !this._coPilotPressed;\n\t}\n\n\t_debounce(fn: () => Promise<void>, delay: number) {\n\t\tclearTimeout(this._debounceInterval!);\n\t\tthis._debounceInterval = setTimeout(() => {\n\t\t\tthis._debounceInterval = null;\n\t\t\tfn();\n\t\t}, delay);\n\t}\n\n\t_menuItemPress(e: CustomEvent<ListSelectionChangeEventDetail>) {\n\t\tconst shouldContinue = this.fireEvent<ShellBarMenuItemClickEventDetail>(\"menu-item-click\", {\n\t\t\titem: e.detail.selectedItems[0],\n\t\t}, true);\n\t\tif (shouldContinue) {\n\t\t\tthis.menuPopover!.close();\n\t\t}\n\t}\n\n\t_logoPress() {\n\t\tthis.fireEvent<ShellBarLogoClickEventDetail>(\"logo-click\", {\n\t\t\ttargetRef: this.shadowRoot!.querySelector(\".ui5-shellbar-logo\")!,\n\t\t});\n\t}\n\n\t_menuPopoverBeforeOpen() {\n\t\tthis._menuPopoverExpanded = true;\n\t\tif (this.menuPopover!.content && this.menuPopover!.content.length) {\n\t\t\t(<List> this.menuPopover!.content[0]).focusFirstItem();\n\t\t}\n\t}\n\n\t_menuPopoverAfterClose() {\n\t\tthis._menuPopoverExpanded = false;\n\t}\n\n\t_overflowPopoverBeforeOpen() {\n\t\tthis._overflowPopoverExpanded = true;\n\t\tif (this.overflowPopover!.content && this.overflowPopover!.content.length) {\n\t\t\t(<List> this.overflowPopover!.content[0]).focusFirstItem();\n\t\t}\n\t}\n\n\t_overflowPopoverAfterClose() {\n\t\tthis._overflowPopoverExpanded = false;\n\t}\n\n\t_logoKeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis._logoPress();\n\t\t}\n\t}\n\n\t_logoKeydown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis._logoPress();\n\t\t}\n\t}\n\n\t_fireCoPilotClick(e: Event) {\n\t\tthis.fireEvent<ShellBarCoPilotClickEventDetail>(\"co-pilot-click\", {\n\t\t\ttargetRef: this.shadowRoot!.querySelector(\".ui5-shellbar-coPilot\")!,\n\t\t});\n\t\tthis._toggleCoPilotIcon(e.target as ToggleButton);\n\t}\n\n\t_coPilotClick(e: MouseEvent) {\n\t\tthis._fireCoPilotClick(e);\n\t}\n\n\tonBeforeRendering() {\n\t\tconst animationsOn = getAnimationMode() === AnimationMode.Full;\n\t\tconst coPilotAnimation = getFeature(\"CoPilotAnimation\");\n\t\tthis.coPilot = coPilotAnimation && animationsOn ? coPilotAnimation : { animated: false };\n\t\tthis.withLogo = this.hasLogo;\n\n\t\tthis._hiddenIcons = this._itemsInfo.filter(info => {\n\t\t\tconst isHidden = (info.classes.indexOf(\"ui5-shellbar-hidden-button\") !== -1);\n\t\t\tconst isSet = info.classes.indexOf(\"ui5-shellbar-invisible-button\") === -1;\n\t\t\tconst isOverflowIcon = info.classes.indexOf(\"ui5-shellbar-overflow-button\") !== -1;\n\t\t\tconst isImageIcon = info.classes.indexOf(\"ui5-shellbar-image-button\") !== -1;\n\t\t\tconst shouldStayOnScreen = isOverflowIcon || (isImageIcon && this.hasProfile);\n\n\t\t\treturn isHidden && isSet && !shouldStayOnScreen;\n\t\t});\n\n\t\tthis._observeMenuItems();\n\t}\n\n\tonAfterRendering() {\n\t\tthis._overflowActions();\n\n\t\tthis._fullWidthSearch = this._showFullWidthSearch;\n\t}\n\n\t/**\n\t * Closes the overflow area.\n\t * Useful to manually close the overflow after having suppressed automatic closing with preventDefault() of ShellbarItem's press event\n\t * @public\n\t */\n\tcloseOverflow(): void {\n\t\tif (this.overflowPopover) {\n\t\t\tthis.overflowPopover.close();\n\t\t}\n\t}\n\n\t_handleBarBreakpoints() {\n\t\tconst width = this.getBoundingClientRect().width;\n\t\tconst breakpoints = ShellBar.FIORI_3_BREAKPOINTS;\n\n\t\tconst size = breakpoints.find(bp1 => width <= bp1) || ShellBar.FIORI_3_BREAKPOINTS[ShellBar.FIORI_3_BREAKPOINTS.length - 1];\n\t\tconst mappedSize = ShellBar.FIORI_3_BREAKPOINTS_MAP[size];\n\n\t\tif (this.breakpointSize !== mappedSize) {\n\t\t\tthis.breakpointSize = mappedSize;\n\t\t}\n\n\t\tthis._isXXLBreakpoint = this.breakpointSize === \"XXL\";\n\t\treturn mappedSize;\n\t}\n\n\t_handleSizeS() {\n\t\tconst hasIcons = this.showNotifications || this.showProductSwitch || !!this.searchField.length || !!this.items.length;\n\n\t\tconst newItems = this._getAllItems(hasIcons).map((info): IShelBarItemInfo => {\n\t\t\tconst isOverflowIcon = info.classes.indexOf(\"ui5-shellbar-overflow-button\") !== -1;\n\t\t\tconst isImageIcon = info.classes.indexOf(\"ui5-shellbar-image-button\") !== -1;\n\t\t\tconst shouldStayOnScreen = isOverflowIcon || (isImageIcon && this.hasProfile);\n\n\t\t\treturn {\n\t\t\t\t...info,\n\t\t\t\tclasses: `${info.classes} ${shouldStayOnScreen ? \"\" : \"ui5-shellbar-hidden-button\"} ui5-shellbar-button`,\n\t\t\t\tstyles: {\n\t\t\t\t\torder: shouldStayOnScreen ? 1 : -1,\n\t\t\t\t},\n\t\t\t};\n\t\t});\n\n\t\tthis._updateItemsInfo(newItems);\n\t}\n\n\t_handleActionsOverflow() {\n\t\tconst rightContainerRect = this.shadowRoot!.querySelector(\".ui5-shellbar-overflow-container-right\")!.getBoundingClientRect();\n\t\tlet overflowSelector = \".ui5-shellbar-button:not(.ui5-shellbar-overflow-button):not(.ui5-shellbar-invisible-button)\";\n\n\t\tif (this.showSearchField) {\n\t\t\toverflowSelector += \",.ui5-shellbar-search-field\";\n\t\t}\n\n\t\tconst elementsToOverflow = this.shadowRoot!.querySelectorAll<Button>(overflowSelector);\n\t\tconst isRTL = this.effectiveDir === \"rtl\";\n\n\t\tconst overflowButtons = [...elementsToOverflow].filter(icon => {\n\t\t\tconst iconRect = (icon).getBoundingClientRect();\n\n\t\t\tif (isRTL) {\n\t\t\t\treturn (iconRect.left + iconRect.width) > (rightContainerRect.left + rightContainerRect.width);\n\t\t\t}\n\n\t\t\treturn iconRect.left < rightContainerRect.left;\n\t\t});\n\t\tconst showOverflowButton = !!overflowButtons.length;\n\n\t\tconst items = this._getAllItems(showOverflowButton).filter(item => item.show);\n\n\t\tconst itemsByPriority = items.sort((item1, item2) => {\n\t\t\tif (item1.priority > item2.priority) {\n\t\t\t\treturn 1;\n\t\t\t}\n\n\t\t\tif (item1.priority < item2.priority) {\n\t\t\t\treturn -1;\n\t\t\t}\n\n\t\t\treturn 0;\n\t\t});\n\n\t\tfor (let i = 0; i < itemsByPriority.length; i++) {\n\t\t\tif (i < overflowButtons.length) {\n\t\t\t\titemsByPriority[i].classes = `${itemsByPriority[i].classes} ui5-shellbar-hidden-button`;\n\t\t\t\titemsByPriority[i].styles = {\n\t\t\t\t\torder: -1,\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\treturn itemsByPriority;\n\t}\n\n\t_overflowActions() {\n\t\tconst size = this._handleBarBreakpoints();\n\n\t\tif (size === \"S\") {\n\t\t\treturn this._handleSizeS();\n\t\t}\n\n\t\tconst newItems = this._handleActionsOverflow();\n\t\tthis._updateItemsInfo(newItems);\n\t}\n\n\tasync _toggleActionPopover() {\n\t\tconst overflowButton = this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-overflow-button\")!;\n\t\tconst overflowPopover = await this._getOverflowPopover();\n\t\toverflowPopover!.showAt(overflowButton, true);\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._handleResize);\n\t}\n\n\tonExitDOM() {\n\t\tthis.menuItemsObserver.disconnect();\n\t\tResizeHandler.deregister(this, this._handleResize);\n\t\tclearTimeout(this._debounceInterval!);\n\t\tthis._debounceInterval = null;\n\t}\n\n\t_handleSearchIconPress() {\n\t\tconst searchButtonRef = this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-search-button\")!;\n\t\tconst defaultPrevented = !this.fireEvent<ShellBarSearchButtonEventDetail>(\"search-button-click\", {\n\t\t\ttargetRef: searchButtonRef,\n\t\t\tsearchFieldVisible: this.showSearchField,\n\t\t}, true);\n\n\t\tif (defaultPrevented) {\n\t\t\treturn;\n\t\t}\n\t\tthis.showSearchField = !this.showSearchField;\n\n\t\tif (!this.showSearchField) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst input = this.searchField[0];\n\n\t\t// update the state immediately\n\t\tif (input) {\n\t\t\tinput.focused = true;\n\t\t}\n\n\t\t// move the focus later\n\t\tsetTimeout(() => {\n\t\t\tif (input) {\n\t\t\t\tinput.focus();\n\t\t\t}\n\t\t}, 100);\n\t}\n\n\tasync _handleActionListClick() {\n\t\tif (!this._defaultItemPressPrevented) {\n\t\t\tthis.closeOverflow();\n\t\t\t// wait for DOM to be updated when ui5-popover is closed, otherwise if Enter key is hold\n\t\t\t// there will be no visual indication that this has happened\n\t\t\tawait renderFinished();\n\t\t}\n\n\t\tthis._defaultItemPressPrevented = false;\n\t}\n\n\t_handleCustomActionPress(e: MouseEvent) {\n\t\tconst target = e.target as HTMLElement;\n\t\tconst refItemId = target.getAttribute(\"data-ui5-external-action-item-id\");\n\n\t\tif (refItemId) {\n\t\t\tconst shellbarItem = this.items.find(item => {\n\t\t\t\treturn item._id === refItemId;\n\t\t\t});\n\n\t\t\tconst prevented = shellbarItem!.fireClickEvent(e);\n\n\t\t\tthis._defaultItemPressPrevented = prevented;\n\t\t}\n\t}\n\n\t_handleOverflowPress() {\n\t\tthis._toggleActionPopover();\n\t}\n\n\t_handleNotificationsPress(e: MouseEvent) {\n\t\tconst notificationIconRef = this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-bell-button\")!,\n\t\t\ttarget = e.target as HTMLElement;\n\n\t\tthis._defaultItemPressPrevented = !this.fireEvent<ShellBarNotificationsClickEventDetail>(\"notifications-click\", {\n\t\t\ttargetRef: notificationIconRef.classList.contains(\"ui5-shellbar-hidden-button\") ? target : notificationIconRef,\n\t\t}, true);\n\t}\n\n\t_handleProfilePress() {\n\t\tthis.fireEvent<ShellBarProfileClickEventDetail>(\"profile-click\", {\n\t\t\ttargetRef: this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-image-button\")!,\n\t\t});\n\t}\n\n\t_handleCancelButtonPress() {\n\t\tthis.showSearchField = false;\n\t}\n\n\t_handleProductSwitchPress(e: MouseEvent) {\n\t\tconst buttonRef = this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-button-product-switch\")!,\n\t\t\ttarget = e.target as HTMLElement;\n\n\t\tthis._defaultItemPressPrevented = !this.fireEvent<ShellBarProductSwitchClickEventDetail>(\"product-switch-click\", {\n\t\t\ttargetRef: buttonRef.classList.contains(\"ui5-shellbar-hidden-button\") ? target : buttonRef,\n\t\t}, true);\n\t}\n\n\t/**\n\t * Returns the `logo` DOM ref.\n\t * @public\n\t * @default null\n\t * @since 1.0.0-rc.16\n\t */\n\tget logoDomRef(): HTMLElement | null {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(`*[data-ui5-stable=\"logo\"]`);\n\t}\n\n\t/**\n\t * Returns the `copilot` DOM ref.\n\t * @public\n\t * @default null\n\t * @since 1.0.0-rc.16\n\t */\n\tget copilotDomRef(): HTMLElement | null {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(`*[data-ui5-stable=\"copilot\"]`);\n\t}\n\n\t/**\n\t * Returns the `notifications` icon DOM ref.\n\t * @public\n\t * @default null\n\t * @since 1.0.0-rc.16\n\t */\n\tget notificationsDomRef(): HTMLElement | null {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(`*[data-ui5-stable=\"notifications\"]`);\n\t}\n\n\t/**\n\t * Returns the `overflow` icon DOM ref.\n\t * @public\n\t * @default null\n\t * @since 1.0.0-rc.16\n\t */\n\tget overflowDomRef(): HTMLElement | null {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(`*[data-ui5-stable=\"overflow\"]`);\n\t}\n\n\t/**\n\t * Returns the `profile` icon DOM ref.\n\t * @public\n\t * @default null\n\t * @since 1.0.0-rc.16\n\t */\n\tget profileDomRef(): HTMLElement | null {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(`*[data-ui5-stable=\"profile\"]`);\n\t}\n\n\t/**\n\t * Returns the `product-switch` icon DOM ref.\n\t * @public\n\t * @default null\n\t * @since 1.0.0-rc.16\n\t */\n\tget productSwitchDomRef(): HTMLElement | null {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(`*[data-ui5-stable=\"product-switch\"]`);\n\t}\n\n\t/**\n\t * Returns all items that will be placed in the right of the bar as icons / dom elements.\n\t * @param showOverflowButton Determines if overflow button should be visible (not overflowing)\n\t */\n\t_getAllItems(showOverflowButton: boolean) {\n\t\tlet domOrder = -1;\n\t\tconst search = {\n\t\t\ticon: \"search\",\n\t\t\ttext: this._searchText,\n\t\t\tclasses: `${this.searchField.length ? \"\" : \"ui5-shellbar-invisible-button\"} ui5-shellbar-search-button ui5-shellbar-button`,\n\t\t\tpriority: 4,\n\t\t\tdomOrder: this.searchField.length ? (++domOrder) : -1,\n\t\t\tstyles: {\n\t\t\t\torder: this.searchField.length ? 1 : -10,\n\t\t\t},\n\t\t\tid: `${this._id}-item-${1}`,\n\t\t\tpress: this._handleSearchIconPress.bind(this),\n\t\t\tshow: !!this.searchField.length,\n\t\t};\n\n\t\tconst items: Array<IShelBarItemInfo> = [\n\t\t\t{\n\t\t\t\ticon: this._coPilotIcon,\n\t\t\t\ttext: this._copilotText,\n\t\t\t\tclasses: `${this.showCoPilot ? \"\" : \"ui5-shellbar-invisible-button\"} ui5-shellbar-search-button ui5-shellbar-button`,\n\t\t\t\tpriority: 4,\n\t\t\t\tdomOrder: this.showCoPilot ? (++domOrder) : -1,\n\t\t\t\tstyles: {\n\t\t\t\t\torder: this.showCoPilot ? 1 : -10,\n\t\t\t\t},\n\t\t\t\tid: `${this.id}-item-coPilot`,\n\t\t\t\tpress: this._coPilotClick.bind(this),\n\t\t\t\tshow: !!this.showCoPilot,\n\t\t\t},\n\t\t\t...this.items.map((item: ShellBarItem) => {\n\t\t\t\titem._getRealDomRef = () => this.getDomRef()!.querySelector(`*[data-ui5-stable=${item.stableDomRef}]`)!;\n\t\t\t\treturn {\n\t\t\t\t\ticon: item.icon,\n\t\t\t\t\tid: item._id,\n\t\t\t\t\tcount: item.count || undefined,\n\t\t\t\t\trefItemid: item._id,\n\t\t\t\t\ttext: item.text,\n\t\t\t\t\tclasses: \"ui5-shellbar-custom-item ui5-shellbar-button\",\n\t\t\t\t\tpriority: 1,\n\t\t\t\t\tdomOrder: (++domOrder),\n\t\t\t\t\tstyles: {\n\t\t\t\t\t\torder: 2,\n\t\t\t\t\t},\n\t\t\t\t\tshow: true,\n\t\t\t\t\tpress: this._handleCustomActionPress.bind(this),\n\t\t\t\t\tcustom: true,\n\t\t\t\t\ttitle: item.title,\n\t\t\t\t\tstableDomRef: item.stableDomRef,\n\t\t\t\t};\n\t\t\t}),\n\t\t\t{\n\t\t\t\ticon: \"bell\",\n\t\t\t\ttext: this._notificationsText,\n\t\t\t\tclasses: `${this.showNotifications ? \"\" : \"ui5-shellbar-invisible-button\"} ui5-shellbar-bell-button ui5-shellbar-button`,\n\t\t\t\tpriority: 3,\n\t\t\t\tstyles: {\n\t\t\t\t\torder: this.showNotifications ? 3 : -10,\n\t\t\t\t},\n\t\t\t\tid: `${this._id}-item-${2}`,\n\t\t\t\tshow: this.showNotifications,\n\t\t\t\tdomOrder: this.showNotifications ? (++domOrder) : -1,\n\t\t\t\tpress: this._handleNotificationsPress.bind(this),\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: \"overflow\",\n\t\t\t\ttext: \"Overflow\",\n\t\t\t\tclasses: `${showOverflowButton ? \"\" : \"ui5-shellbar-hidden-button\"} ui5-shellbar-overflow-button-shown ui5-shellbar-overflow-button ui5-shellbar-button`,\n\t\t\t\tpriority: 5,\n\t\t\t\torder: 4,\n\t\t\t\tstyles: {\n\t\t\t\t\torder: showOverflowButton ? 4 : -1,\n\t\t\t\t},\n\t\t\t\tdomOrder: showOverflowButton ? (++domOrder) : -1,\n\t\t\t\tid: `${this.id}-item-${5}`,\n\t\t\t\tpress: this._handleOverflowPress.bind(this),\n\t\t\t\tshow: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Person\",\n\t\t\t\tclasses: `${this.hasProfile ? \"\" : \"ui5-shellbar-invisible-button\"} ui5-shellbar-image-button ui5-shellbar-button`,\n\t\t\t\tpriority: 4,\n\t\t\t\tstyles: {\n\t\t\t\t\torder: this.hasProfile ? 5 : -10,\n\t\t\t\t},\n\t\t\t\tprofile: true,\n\t\t\t\tid: `${this._id}-item-${3}`,\n\t\t\t\tdomOrder: this.hasProfile ? (++domOrder) : -1,\n\t\t\t\tshow: this.hasProfile,\n\t\t\t\tpress: this._handleProfilePress.bind(this),\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: \"grid\",\n\t\t\t\ttext: this._productsText,\n\t\t\t\tclasses: `${this.showProductSwitch ? \"\" : \"ui5-shellbar-invisible-button\"} ui5-shellbar-button ui5-shellbar-button-product-switch`,\n\t\t\t\tpriority: 2,\n\t\t\t\tstyles: {\n\t\t\t\t\torder: this.showProductSwitch ? 6 : -10,\n\t\t\t\t},\n\t\t\t\tid: `${this._id}-item-${4}`,\n\t\t\t\tshow: this.showProductSwitch,\n\t\t\t\tdomOrder: this.showProductSwitch ? (++domOrder) : -1,\n\t\t\t\tpress: this._handleProductSwitchPress.bind(this),\n\t\t\t},\n\t\t];\n\t\tif (this.midContent.length < 1 && items[0].text !== this._searchText) {\n\t\t\titems.unshift(search);\n\t\t}\n\t\treturn items;\n\t}\n\n\t_updateItemsInfo(newItems: Array<IShelBarItemInfo>) {\n\t\tconst isDifferent = JSON.stringify(this._itemsInfo) !== JSON.stringify(newItems);\n\t\tif (isDifferent) {\n\t\t\tthis._itemsInfo = newItems;\n\t\t}\n\t}\n\n\t_updateClonedMenuItems() {\n\t\tthis._menuPopoverItems = [];\n\n\t\tthis.menuItems.forEach(item => {\n\t\t\t// clone the menuItem and remove the slot=\"menuItems\",\n\t\t\t// otherwise would not be slotted in the internal ui5-li\n\t\t\tconst clonedItem = item.cloneNode(true) as HTMLElement;\n\t\t\tclonedItem.removeAttribute(\"slot\");\n\n\t\t\tthis._menuPopoverItems.push(clonedItem);\n\t\t});\n\t}\n\n\t_observeMenuItems() {\n\t\tthis.menuItems.forEach(item => {\n\t\t\tthis.menuItemsObserver.observe(item, {\n\t\t\t\tcharacterData: true,\n\t\t\t\tchildList: true,\n\t\t\t\tsubtree: true,\n\t\t\t\tattributes: true,\n\t\t\t});\n\t\t});\n\t}\n\n\tasync _getResponsivePopover() {\n\t\tconst staticAreaItem = await this.getStaticAreaItemDomRef();\n\t\tthis.overflowPopover = staticAreaItem!.querySelector<Popover>(\".ui5-shellbar-overflow-popover\");\n\t\tthis.menuPopover = staticAreaItem!.querySelector<Popover>(\".ui5-shellbar-menu-popover\");\n\t}\n\n\tasync _getOverflowPopover() {\n\t\tconst staticAreaItem = await this.getStaticAreaItemDomRef();\n\t\treturn staticAreaItem!.querySelector<Popover>(\".ui5-shellbar-overflow-popover\");\n\t}\n\n\tasync _getMenuPopover() {\n\t\tconst staticAreaItem = await this.getStaticAreaItemDomRef();\n\t\treturn staticAreaItem!.querySelector<Popover>(\".ui5-shellbar-menu-popover\");\n\t}\n\n\tisIconHidden(name: string) {\n\t\tconst itemInfo = this._itemsInfo.find(item => item.icon === name);\n\n\t\tif (!itemInfo) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn itemInfo.classes.indexOf(\"ui5-shellbar-hidden-button\") !== -1;\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn {\n\t\t\twrapper: {\n\t\t\t\t\"ui5-shellbar-root\": true,\n\t\t\t\t\"ui5-shellbar-with-searchfield\": this.hasSearchField,\n\t\t\t},\n\t\t\tbutton: {\n\t\t\t\t\"ui5-shellbar-menu-button--interactive\": this.hasMenuItems,\n\t\t\t\t\"ui5-shellbar-menu-button\": true,\n\t\t\t},\n\t\t\titems: {\n\t\t\t\tnotification: {\n\t\t\t\t\t\"ui5-shellbar-hidden-button\": this.isIconHidden(\"bell\"),\n\t\t\t\t},\n\t\t\t\tproduct: {\n\t\t\t\t\t\"ui5-shellbar-hidden-button\": this.isIconHidden(\"grid\"),\n\t\t\t\t},\n\t\t\t\tsearch: {\n\t\t\t\t\t\"ui5-shellbar-hidden-button\": this.isIconHidden(\"search\"),\n\t\t\t\t},\n\t\t\t\tcopilot: {\n\t\t\t\t\t\"ui5-shellbar-hidden-button\": this.isIconHidden(this._coPilotIcon),\n\t\t\t\t},\n\t\t\t\toverflow: {\n\t\t\t\t\t\"ui5-shellbar-hidden-button\": this.isIconHidden(\"overflow\"),\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\titems: {\n\t\t\t\tnotification: {\n\t\t\t\t\t\"order\": this.isIconHidden(\"bell\") ? \"-1\" : \"3\",\n\t\t\t\t},\n\t\t\t\toverflow: {\n\t\t\t\t\t\"order\": this.isIconHidden(\"overflow\") ? \"-1\" : \"4\",\n\t\t\t\t},\n\t\t\t\tprofile: {\n\t\t\t\t\t\"order\": this.hasProfile ? \"5\" : \"-1\",\n\t\t\t\t},\n\t\t\t\tproduct: {\n\t\t\t\t\t\"order\": this.isIconHidden(\"grid\") ? \"-1\" : \"6\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tsearchField: {\n\t\t\t\t\"display\": this.correctSearchFieldStyles,\n\t\t\t},\n\t\t};\n\t}\n\n\tget correctSearchFieldStyles() {\n\t\tif (this.showSearchField) {\n\t\t\treturn \"flex\";\n\t\t}\n\n\t\treturn \"none\";\n\t}\n\n\tget customItemsInfo() {\n\t\treturn this._itemsInfo.filter(itemInfo => !!itemInfo.custom);\n\t}\n\n\tget hasLogo() {\n\t\treturn !!this.logo.length;\n\t}\n\n\tget showLogoInMenuButton() {\n\t\treturn this.hasLogo && this.breakpointSize === \"S\";\n\t}\n\n\tget showTitleInMenuButton() {\n\t\treturn this.primaryTitle && !(this.showLogoInMenuButton);\n\t}\n\n\tget showMenuButton() {\n\t\treturn this.primaryTitle || this.showLogoInMenuButton;\n\t}\n\n\tget popoverHorizontalAlign() {\n\t\treturn this.effectiveDir === \"rtl\" ? \"Left\" : \"Right\";\n\t}\n\n\tget hasSearchField() {\n\t\treturn !!this.searchField.length;\n\t}\n\n\tget hasMidContent() {\n\t\treturn !!this.midContent.length;\n\t}\n\n\tget hasProfile() {\n\t\treturn !!this.profile.length;\n\t}\n\n\tget hasMenuItems() {\n\t\treturn this.menuItems.length > 0;\n\t}\n\n\tget _shellbarText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_LABEL);\n\t}\n\n\tget _logoText() {\n\t\treturn this.accessibilityTexts.logoTitle || ShellBar.i18nBundle.getText(SHELLBAR_LOGO);\n\t}\n\n\tget _copilotText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_COPILOT);\n\t}\n\n\tget _notificationsText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_NOTIFICATIONS, this.notificationsCount);\n\t}\n\n\tget _cancelBtnText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_CANCEL);\n\t}\n\n\tget _showFullWidthSearch() {\n\t\tconst size = this._handleBarBreakpoints();\n\t\tconst searchBtnHidden = !!this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-search-button.ui5-shellbar-hidden-button\");\n\n\t\treturn ((size === \"S\") || searchBtnHidden);\n\t}\n\n\tget _profileText() {\n\t\treturn this.accessibilityTexts.profileButtonTitle || ShellBar.i18nBundle.getText(SHELLBAR_PROFILE);\n\t}\n\n\tget _productsText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_PRODUCTS);\n\t}\n\n\tget _searchText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_SEARCH);\n\t}\n\n\tget _overflowText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_OVERFLOW);\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\tnotifications: {\n\t\t\t\t\"title\": this._notificationsText,\n\t\t\t\t\"accessibilityAttributes\": {\n\t\t\t\t\thasPopup: this._notificationsHasPopup,\n\t\t\t\t},\n\t\t\t},\n\t\t\tprofile: {\n\t\t\t\t\"title\": this._profileText,\n\t\t\t\t\"accessibilityAttributes\": {\n\t\t\t\t\thasPopup: this._profileHasPopup,\n\t\t\t\t},\n\t\t\t},\n\t\t\tproducts: {\n\t\t\t\t\"title\": this._productsText,\n\t\t\t\t\"accessibilityAttributes\": {\n\t\t\t\t\thasPopup: this._productsHasPopup,\n\t\t\t\t},\n\t\t\t},\n\t\t\tsearch: {\n\t\t\t\t\"title\": this._searchText,\n\t\t\t\t\"accessibilityAttributes\": {\n\t\t\t\t\thasPopup: this._searchHasPopup,\n\t\t\t\t\texpanded: this.showSearchField,\n\t\t\t\t},\n\t\t\t},\n\t\t\toverflow: {\n\t\t\t\t\"title\": this._overflowText,\n\t\t\t\t\"accessibilityAttributes\": {\n\t\t\t\t\thasPopup: this._overflowHasPopup,\n\t\t\t\t\texpanded: this._overflowPopoverExpanded,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tget _notificationsHasPopup() {\n\t\tconst notificationsAccAttributes = this.accessibilityAttributes.notifications;\n\t\treturn notificationsAccAttributes ? notificationsAccAttributes.ariaHasPopup?.toLowerCase() : null;\n\t}\n\n\tget _profileHasPopup() {\n\t\tconst profileAccAttributes = this.accessibilityAttributes.profile;\n\t\treturn profileAccAttributes ? profileAccAttributes.ariaHasPopup?.toLowerCase() : null;\n\t}\n\n\tget _productsHasPopup() {\n\t\tconst productsAccAttributes = this.accessibilityAttributes.product;\n\t\treturn productsAccAttributes ? productsAccAttributes.ariaHasPopup?.toLowerCase() : null;\n\t}\n\n\tget _searchHasPopup() {\n\t\tconst searcAccAttributes = this.accessibilityAttributes.search;\n\t\treturn searcAccAttributes ? searcAccAttributes.ariaHasPopup?.toLowerCase() : null;\n\t}\n\n\tget _overflowHasPopup() {\n\t\tconst overflowAccAttributes = this.accessibilityAttributes.overflow;\n\t\treturn overflowAccAttributes ? overflowAccAttributes.ariaHasPopup?.toLowerCase() : HasPopup.Menu.toLowerCase();\n\t}\n\n\tget accLogoRole() {\n\t\treturn this.accessibilityRoles.logoRole || \"button\";\n\t}\n\n\tstatic async onDefine() {\n\t\tShellBar.i18nBundle = await getI18nBundle(\"@ui5/webcomponents-fiori\");\n\t}\n}\n\nShellBar.define();\n\nexport default ShellBar;\n\nexport type {\n\tShellBarNotificationsClickEventDetail,\n\tShellBarProfileClickEventDetail,\n\tShellBarProductSwitchClickEventDetail,\n\tShellBarLogoClickEventDetail,\n\tShellBarCoPilotClickEventDetail,\n\tShellBarMenuItemClickEventDetail,\n\tShellBarAccessibilityAttributes,\n\tShellBarAccessibilityRoles,\n\tShellBarAccessibilityTexts,\n\tShellBarSearchButtonEventDetail,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"ShellBar.js","sourceRoot":"","sources":["../src/ShellBar.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { getFeature } from \"@ui5/webcomponents-base/dist/FeaturesRegistry.js\";\nimport AnimationMode from \"@ui5/webcomponents-base/dist/types/AnimationMode.js\";\nimport { getAnimationMode } from \"@ui5/webcomponents-base/dist/config/AnimationMode.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport StandardListItem from \"@ui5/webcomponents/dist/StandardListItem.js\";\nimport List from \"@ui5/webcomponents/dist/List.js\";\nimport type { ListSelectionChangeEventDetail } from \"@ui5/webcomponents/dist/List.js\";\nimport type { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport Popover from \"@ui5/webcomponents/dist/Popover.js\";\nimport Button from \"@ui5/webcomponents/dist/Button.js\";\nimport ToggleButton from \"@ui5/webcomponents/dist/ToggleButton.js\";\nimport Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport type Input from \"@ui5/webcomponents/dist/Input.js\";\nimport type { IButton } from \"@ui5/webcomponents/dist/Button.js\";\nimport HasPopup from \"@ui5/webcomponents/dist/types/HasPopup.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport \"@ui5/webcomponents-icons/dist/search.js\";\nimport \"@ui5/webcomponents-icons/dist/bell.js\";\nimport \"@ui5/webcomponents-icons/dist/overflow.js\";\nimport \"@ui5/webcomponents-icons/dist/grid.js\";\nimport type { Timeout, ClassMap } from \"@ui5/webcomponents-base/dist/types.js\";\nimport type ListItemBase from \"@ui5/webcomponents/dist/ListItemBase.js\";\nimport type ShellBarItem from \"./ShellBarItem.js\";\n\n// Templates\nimport ShellBarTemplate from \"./generated/templates/ShellBarTemplate.lit.js\";\nimport ShellBarPopoverTemplate from \"./generated/templates/ShellBarPopoverTemplate.lit.js\";\n\n// Styles\nimport shellBarStyles from \"./generated/themes/ShellBar.css.js\";\nimport ShellBarPopoverCss from \"./generated/themes/ShellBarPopover.css.js\";\n\n// Icons\nimport \"@ui5/webcomponents-icons/dist/da.js\";\nimport \"@ui5/webcomponents-icons/dist/da-2.js\";\n\nimport {\n\tSHELLBAR_LABEL,\n\tSHELLBAR_LOGO,\n\tSHELLBAR_COPILOT,\n\tSHELLBAR_NOTIFICATIONS,\n\tSHELLBAR_CANCEL,\n\tSHELLBAR_PROFILE,\n\tSHELLBAR_PRODUCTS,\n\tSHELLBAR_SEARCH,\n\tSHELLBAR_OVERFLOW,\n} from \"./generated/i18n/i18n-defaults.js\";\n\ntype ShellBarAccessibilityRoles = {\n\tlogoRole?: string;\n};\n\ntype ShellBarAccessibilityTexts = {\n\tlogoTitle?: string;\n\tprofileButtonTitle?: string;\n};\n\ntype ShellBarAccessibilityAttributesValue = {\n\texpanded?: \"true\" | \"false\" | boolean,\n\tariaHasPopup?: `${HasPopup}`,\n}\n\ntype ShellBarAccessibilityAttributes = {\n\tnotifications?: ShellBarAccessibilityAttributesValue;\n\tprofile?: ShellBarAccessibilityAttributesValue;\n\tproduct?: ShellBarAccessibilityAttributesValue;\n\tsearch?: ShellBarAccessibilityAttributesValue;\n\toverflow?: ShellBarAccessibilityAttributesValue;\n};\n\ntype ShellBarNotificationsClickEventDetail = {\n\ttargetRef: HTMLElement;\n};\n\ntype ShellBarProfileClickEventDetail = {\n\ttargetRef: HTMLElement;\n};\n\ntype ShellBarProductSwitchClickEventDetail = {\n\ttargetRef: HTMLElement;\n};\n\ntype ShellBarLogoClickEventDetail = {\n\ttargetRef: HTMLElement;\n};\n\ntype ShellBarCoPilotClickEventDetail = {\n\ttargetRef: HTMLElement;\n};\n\ntype ShellBarMenuItemClickEventDetail = {\n\titem: HTMLElement;\n};\n\ntype ShellBarSearchButtonEventDetail = {\n\ttargetRef: HTMLElement;\n\tsearchFieldVisible: boolean;\n};\n\ntype ShellBarCoPilot = {\n\tanimated?: boolean,\n\tanimationValues?: string,\n};\n\ninterface IShelBarItemInfo {\n\tid: string,\n\ticon?: string,\n\ttext: string,\n\tpriority: number,\n\tshow: boolean,\n\tcount?: string,\n\tcustom?: boolean,\n\ttitle?: string,\n\tstableDomRef?: string,\n\trefItemid?: string,\n\tpress: (e: MouseEvent) => void,\n\tstyles: object,\n\tdomOrder: number,\n\tclasses: string,\n\torder?: number,\n\tprofile?: boolean,\n}\n\nconst HANDLE_RESIZE_DEBOUNCE_RATE = 200; // ms\n\n/**\n * @class\n * ### Overview\n *\n * The `ui5-shellbar` is meant to serve as an application header\n * and includes numerous built-in features, such as: logo, profile image/icon, title, search field, notifications and so on.\n *\n * ### Stable DOM Refs\n *\n * You can use the following stable DOM refs for the `ui5-shellbar`:\n *\n * - logo\n * - copilot\n * - notifications\n * - overflow\n * - profile\n * - product-switch\n *\n * ### Keyboard Handling\n *\n * #### Fast Navigation\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n * ### ES6 Module Import\n * `import \"@ui5/webcomponents-fiori/dist/ShellBar.js\";`\n * @csspart root - Used to style the outermost wrapper of the `ui5-shellbar`\n * @constructor\n * @extends UI5Element\n * @public\n * @since 0.8.0\n */\n\n@customElement({\n\ttag: \"ui5-shellbar\",\n\tfastNavigation: true,\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: ShellBarTemplate,\n\tstaticAreaTemplate: ShellBarPopoverTemplate,\n\tstyles: shellBarStyles,\n\tstaticAreaStyles: [ShellBarPopoverCss],\n\tdependencies: [\n\t\tButton,\n\t\tIcon,\n\t\tList,\n\t\tPopover,\n\t\tStandardListItem,\n\t],\n})\n/**\n *\n * Fired, when the notification icon is activated.\n * @allowPreventDefault\n * @param {HTMLElement} targetRef dom ref of the activated element\n * @public\n */\n@event<ShellBarNotificationsClickEventDetail>(\"notifications-click\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\ttargetRef: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired, when the profile slot is present.\n * @param {HTMLElement} targetRef dom ref of the activated element\n * @public\n */\n@event<ShellBarProfileClickEventDetail>(\"profile-click\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\ttargetRef: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired, when the product switch icon is activated.\n *\n * **Note:** You can prevent closing of overflow popover by calling `event.preventDefault()`.\n * @allowPreventDefault\n * @param {HTMLElement} targetRef dom ref of the activated element\n * @public\n */\n@event<ShellBarProductSwitchClickEventDetail>(\"product-switch-click\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\ttargetRef: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired, when the logo is activated.\n * @param {HTMLElement} targetRef dom ref of the activated element\n * @since 0.10\n * @public\n */\n@event<ShellBarLogoClickEventDetail>(\"logo-click\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\ttargetRef: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired, when the co pilot is activated.\n * @param {HTMLElement} targetRef dom ref of the activated element\n * @since 0.10\n * @public\n */\n@event<ShellBarCoPilotClickEventDetail>(\"co-pilot-click\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\ttargetRef: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired, when a menu item is activated\n *\n * **Note:** You can prevent closing of overflow popover by calling `event.preventDefault()`.\n * @param {HTMLElement} item DOM ref of the activated list item\n * @since 0.10\n * @public\n */\n@event<ShellBarMenuItemClickEventDetail>(\"menu-item-click\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\titem: { type: HTMLElement },\n\t},\n})\n\n/**\n * Fired, when the search button is activated.\n *\n * **Note:** You can prevent expanding/collapsing of the search field by calling `event.preventDefault()`.\n * @allowPreventDefault\n * @param {HTMLElement} targetRef dom ref of the activated element\n * @param {Boolean} searchFieldVisible whether the search field is visible\n * @public\n */\n\n@event<ShellBarSearchButtonEventDetail>(\"search-button-click\", {\n\tdetail: {\n\t\ttargetRef: { type: HTMLElement },\n\t\tsearchFieldVisible: { type: Boolean },\n\t},\n})\n\nclass ShellBar extends UI5Element {\n\t/**\n\t * Defines the `primaryTitle`.\n\t *\n\t * **Note:** The `primaryTitle` would be hidden on S screen size (less than approx. 700px).\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tprimaryTitle!: string;\n\n\t/**\n\t * Defines the `secondaryTitle`.\n\t *\n\t * **Note:** The `secondaryTitle` would be hidden on S and M screen sizes (less than approx. 1300px).\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tsecondaryTitle!: string;\n\n\t/**\n\t * Defines the `notificationsCount`,\n\t * displayed in the notification icon top-right corner.\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tnotificationsCount!: string;\n\n\t/**\n\t * Defines, if the notification icon would be displayed.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowNotifications!: boolean;\n\n\t/**\n\t * Defines, if the product switch icon would be displayed.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowProductSwitch!: boolean;\n\n\t/**\n\t * Defines, if the product CoPilot icon would be displayed.\n\t *\n\t * **Note:** By default the co-pilot is displayed as static SVG.\n\t * If you need an animated co-pilot, you can import the `\"@ui5/webcomponents-fiori/dist/features/CoPilotAnimation.js\"` module as add-on feature.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowCoPilot!: boolean;\n\n\t/**\n\t * Defines, if the Search Field would be displayed when there is a valid `searchField` slot.\n\t *\n\t * **Note:** By default the Search Field is not displayed.\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tshowSearchField!: boolean;\n\n\t/**\n\t * An object of strings that defines additional accessibility roles for further customization.\n\t *\n\t * It supports the following fields:\n\t * - `logoRole`: the accessibility role for the `logo`\n\t * @default {}\n\t * @public\n\t * @since 1.6.0\n\t */\n\t@property({ type: Object })\n\taccessibilityRoles!: ShellBarAccessibilityRoles;\n\n\t/**\n\t * An object of strings that defines several additional accessibility texts\n\t * for even further customization.\n\t *\n\t * It supports the following fields:\n\t * - `profileButtonTitle`: defines the tooltip for the profile button\n\t * - `logoTitle`: defines the tooltip for the logo\n\t * @default {}\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property({ type: Object })\n\taccessibilityTexts!: ShellBarAccessibilityTexts;\n\n\t/**\n\t * An object of strings that defines several additional accessibility attribute values\n\t * for customization depending on the use case.\n\t *\n\t * It supports the following fields:\n\t *\n\t * - `expanded`: Indicates whether the anchor element, or another grouping element it controls, is currently expanded or collapsed. Accepts the following string values:\n\t *\n\t *\t- `true`\n\t *\t- `false`\n\t *\n\t * - `hasPopup`: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the anchor element. Accepts the following string values:\n\t *\t- `Dialog`\n\t *\t- `Grid`\n\t *\t- `ListBox`\n\t *\t- `Menu`\n\t *\t- `Tree`\n\t * @default {}\n\t * @public\n\t * @since 1.10.0\n\t */\n\t @property({ type: Object })\n\t accessibilityAttributes!: ShellBarAccessibilityAttributes;\n\n\t/**\n\t * @private\n\t */\n\t@property()\n\tbreakpointSize!: string;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\twithLogo!: boolean;\n\n\t@property({ type: Object })\n\t_itemsInfo!: Array<IShelBarItemInfo>;\n\n\t@property({ type: Object, multiple: true })\n\t_menuPopoverItems!: Array<HTMLElement>;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_menuPopoverExpanded!: boolean;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_overflowPopoverExpanded!: boolean;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_fullWidthSearch!: boolean;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_coPilotPressed!: boolean;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_isXXLBreakpoint!: boolean;\n\n\t/**\n\t * Defines the `ui5-shellbar` aditional items.\n\t *\n\t * **Note:**\n\t * You can use the `<ui5-shellbar-item></ui5-shellbar-item>`.\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, \"default\": true, invalidateOnChildChange: true })\n\titems!: Array<ShellBarItem>;\n\n\t/**\n\t * You can pass `ui5-avatar` to set the profile image/icon.\n\t * If no profile slot is set - profile will be excluded from actions.\n\t *\n\t * **Note:** We recommend not using the `size` attribute of `ui5-avatar` because\n\t * it should have specific size by design in the context of `ui5-shellbar` profile.\n\t * @since 1.0.0-rc.6\n\t * @public\n\t */\n\t@slot()\n\tprofile!: Array<HTMLElement>;\n\n\t/**\n\t * Defines the logo of the `ui5-shellbar`.\n\t * For example, you can use `ui5-avatar` or `img` elements as logo.\n\t * @since 1.0.0-rc.8\n\t * @public\n\t */\n\t@slot()\n\tlogo!: Array<HTMLElement>;\n\n\t/**\n\t * Defines the items displayed in menu after a click on the primary title.\n\t *\n\t * **Note:** You can use the `<ui5-li></ui5-li>` and its ancestors.\n\t * @since 0.10\n\t * @public\n\t */\n\t@slot()\n\tmenuItems!: Array<ListItemBase>;\n\n\t/**\n\t * Defines the `ui5-input`, that will be used as a search field.\n\t * @public\n\t */\n\t@slot()\n\tsearchField!: Array<Input>;\n\n\t/**\n\t * Defines a `ui5-button` in the bar that will be placed in the beginning.\n\t * We encourage this slot to be used for a back or home button.\n\t * It gets overstyled to match ShellBar's styling.\n\t * @public\n\t */\n\t@slot()\n\tstartButton!: Array<IButton>;\n\n\t/**\n\t * The container is positioned in the center of the `ui5-shellbar` and occupies one-third of the total length of the `ui5-shellbar`.\n\t *\n\t * **Note:** If set, the `searchField` slot is not rendered.\n\t * @private\n\t */\n\t@slot()\n\tmidContent!: Array<HTMLElement>;\n\n\tstatic i18nBundle: I18nBundle;\n\toverflowPopover?: Popover | null;\n\tmenuPopover?: Popover | null;\n\t_isInitialRendering: boolean;\n\t_defaultItemPressPrevented: boolean;\n\tmenuItemsObserver: MutationObserver;\n\tcoPilot?: ShellBarCoPilot;\n\t_coPilotIcon: string;\n\t_debounceInterval?: Timeout | null;\n\t_hiddenIcons?: Array<IShelBarItemInfo>;\n\t_handleResize: ResizeObserverCallback;\n\t_headerPress: () => Promise<void>;\n\n\tstatic get CO_PILOT_ICON_PRESSED() {\n\t\treturn \"sap-icon://da-2\";\n\t}\n\n\tstatic get CO_PILOT_ICON_UNPRESSED() {\n\t\treturn \"sap-icon://da\";\n\t}\n\n\tstatic get FIORI_3_BREAKPOINTS() {\n\t\treturn [\n\t\t\t599,\n\t\t\t1023,\n\t\t\t1439,\n\t\t\t1919,\n\t\t\t10000,\n\t\t];\n\t}\n\n\tstatic get FIORI_3_BREAKPOINTS_MAP(): Record<string, string> {\n\t\treturn {\n\t\t\t\"599\": \"S\",\n\t\t\t\"1023\": \"M\",\n\t\t\t\"1439\": \"L\",\n\t\t\t\"1919\": \"XL\",\n\t\t\t\"10000\": \"XXL\",\n\t\t};\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._itemsInfo = [];\n\t\tthis._isInitialRendering = true;\n\t\tthis._coPilotIcon = ShellBar.CO_PILOT_ICON_UNPRESSED;\n\n\t\t// marks if preventDefault() is called in item's press handler\n\t\tthis._defaultItemPressPrevented = false;\n\n\t\tthis.menuItemsObserver = new MutationObserver(() => {\n\t\t\tthis._updateClonedMenuItems();\n\t\t});\n\n\t\tthis._headerPress = async () => {\n\t\t\tthis._updateClonedMenuItems();\n\n\t\t\tif (this.hasMenuItems) {\n\t\t\t\tconst menuPopover = await this._getMenuPopover();\n\t\t\t\tmenuPopover!.showAt(this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-menu-button\")!, true);\n\t\t\t}\n\t\t};\n\n\t\tthis._handleResize = () => {\n\t\t\tthis._debounce(async () => {\n\t\t\t\tawait this._getResponsivePopover();\n\t\t\t\tthis.overflowPopover!.close();\n\t\t\t\tthis._overflowActions();\n\t\t\t}, HANDLE_RESIZE_DEBOUNCE_RATE);\n\t\t};\n\t}\n\n\t_toggleCoPilotIcon(button: ToggleButton) {\n\t\tthis._coPilotIcon = !this._coPilotPressed ? ShellBar.CO_PILOT_ICON_PRESSED : ShellBar.CO_PILOT_ICON_UNPRESSED;\n\t\tbutton.icon = this._coPilotIcon;\n\t\tthis._coPilotPressed = !this._coPilotPressed;\n\t}\n\n\t_debounce(fn: () => Promise<void>, delay: number) {\n\t\tclearTimeout(this._debounceInterval!);\n\t\tthis._debounceInterval = setTimeout(() => {\n\t\t\tthis._debounceInterval = null;\n\t\t\tfn();\n\t\t}, delay);\n\t}\n\n\t_menuItemPress(e: CustomEvent<ListSelectionChangeEventDetail>) {\n\t\tconst shouldContinue = this.fireEvent<ShellBarMenuItemClickEventDetail>(\"menu-item-click\", {\n\t\t\titem: e.detail.selectedItems[0],\n\t\t}, true);\n\t\tif (shouldContinue) {\n\t\t\tthis.menuPopover!.close();\n\t\t}\n\t}\n\n\t_logoPress() {\n\t\tthis.fireEvent<ShellBarLogoClickEventDetail>(\"logo-click\", {\n\t\t\ttargetRef: this.shadowRoot!.querySelector(\".ui5-shellbar-logo\")!,\n\t\t});\n\t}\n\n\t_menuPopoverBeforeOpen() {\n\t\tthis._menuPopoverExpanded = true;\n\t\tif (this.menuPopover!.content && this.menuPopover!.content.length) {\n\t\t\t(<List> this.menuPopover!.content[0]).focusFirstItem();\n\t\t}\n\t}\n\n\t_menuPopoverAfterClose() {\n\t\tthis._menuPopoverExpanded = false;\n\t}\n\n\t_overflowPopoverBeforeOpen() {\n\t\tthis._overflowPopoverExpanded = true;\n\t\tif (this.overflowPopover!.content && this.overflowPopover!.content.length) {\n\t\t\t(<List> this.overflowPopover!.content[0]).focusFirstItem();\n\t\t}\n\t}\n\n\t_overflowPopoverAfterClose() {\n\t\tthis._overflowPopoverExpanded = false;\n\t}\n\n\t_logoKeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis._logoPress();\n\t\t}\n\t}\n\n\t_logoKeydown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis._logoPress();\n\t\t}\n\t}\n\n\t_fireCoPilotClick(e: Event) {\n\t\tthis.fireEvent<ShellBarCoPilotClickEventDetail>(\"co-pilot-click\", {\n\t\t\ttargetRef: this.shadowRoot!.querySelector(\".ui5-shellbar-coPilot\")!,\n\t\t});\n\t\tthis._toggleCoPilotIcon(e.target as ToggleButton);\n\t}\n\n\t_coPilotClick(e: MouseEvent) {\n\t\tthis._fireCoPilotClick(e);\n\t}\n\n\tonBeforeRendering() {\n\t\tconst animationsOn = getAnimationMode() === AnimationMode.Full;\n\t\tconst coPilotAnimation = getFeature(\"CoPilotAnimation\");\n\t\tthis.coPilot = coPilotAnimation && animationsOn ? coPilotAnimation : { animated: false };\n\t\tthis.withLogo = this.hasLogo;\n\n\t\tthis._hiddenIcons = this._itemsInfo.filter(info => {\n\t\t\tconst isHidden = (info.classes.indexOf(\"ui5-shellbar-hidden-button\") !== -1);\n\t\t\tconst isSet = info.classes.indexOf(\"ui5-shellbar-invisible-button\") === -1;\n\t\t\tconst isOverflowIcon = info.classes.indexOf(\"ui5-shellbar-overflow-button\") !== -1;\n\t\t\tconst isImageIcon = info.classes.indexOf(\"ui5-shellbar-image-button\") !== -1;\n\t\t\tconst shouldStayOnScreen = isOverflowIcon || (isImageIcon && this.hasProfile);\n\n\t\t\treturn isHidden && isSet && !shouldStayOnScreen;\n\t\t});\n\n\t\tthis._observeMenuItems();\n\t}\n\n\tonAfterRendering() {\n\t\tthis._overflowActions();\n\n\t\tthis._fullWidthSearch = this._showFullWidthSearch;\n\t}\n\n\t/**\n\t * Closes the overflow area.\n\t * Useful to manually close the overflow after having suppressed automatic closing with preventDefault() of ShellbarItem's press event\n\t * @public\n\t */\n\tcloseOverflow(): void {\n\t\tif (this.overflowPopover) {\n\t\t\tthis.overflowPopover.close();\n\t\t}\n\t}\n\n\t_handleBarBreakpoints() {\n\t\tconst width = this.getBoundingClientRect().width;\n\t\tconst breakpoints = ShellBar.FIORI_3_BREAKPOINTS;\n\n\t\tconst size = breakpoints.find(bp1 => width <= bp1) || ShellBar.FIORI_3_BREAKPOINTS[ShellBar.FIORI_3_BREAKPOINTS.length - 1];\n\t\tconst mappedSize = ShellBar.FIORI_3_BREAKPOINTS_MAP[size];\n\n\t\tif (this.breakpointSize !== mappedSize) {\n\t\t\tthis.breakpointSize = mappedSize;\n\t\t}\n\n\t\tthis._isXXLBreakpoint = this.breakpointSize === \"XXL\";\n\t\treturn mappedSize;\n\t}\n\n\t_handleSizeS() {\n\t\tconst hasIcons = this.showNotifications || this.showProductSwitch || !!this.searchField.length || !!this.items.length;\n\n\t\tconst newItems = this._getAllItems(hasIcons).map((info): IShelBarItemInfo => {\n\t\t\tconst isOverflowIcon = info.classes.indexOf(\"ui5-shellbar-overflow-button\") !== -1;\n\t\t\tconst isImageIcon = info.classes.indexOf(\"ui5-shellbar-image-button\") !== -1;\n\t\t\tconst shouldStayOnScreen = isOverflowIcon || (isImageIcon && this.hasProfile);\n\n\t\t\treturn {\n\t\t\t\t...info,\n\t\t\t\tclasses: `${info.classes} ${shouldStayOnScreen ? \"\" : \"ui5-shellbar-hidden-button\"} ui5-shellbar-button`,\n\t\t\t\tstyles: {\n\t\t\t\t\torder: shouldStayOnScreen ? 1 : -1,\n\t\t\t\t},\n\t\t\t};\n\t\t});\n\n\t\tthis._updateItemsInfo(newItems);\n\t}\n\n\t_handleActionsOverflow() {\n\t\tconst rightContainerRect = this.shadowRoot!.querySelector(\".ui5-shellbar-overflow-container-right\")!.getBoundingClientRect();\n\t\tlet overflowSelector = \".ui5-shellbar-button:not(.ui5-shellbar-overflow-button):not(.ui5-shellbar-invisible-button)\";\n\n\t\tif (this.showSearchField) {\n\t\t\toverflowSelector += \",.ui5-shellbar-search-field\";\n\t\t}\n\n\t\tconst elementsToOverflow = this.shadowRoot!.querySelectorAll<Button>(overflowSelector);\n\t\tconst isRTL = this.effectiveDir === \"rtl\";\n\n\t\tconst overflowButtons = [...elementsToOverflow].filter(icon => {\n\t\t\tconst iconRect = (icon).getBoundingClientRect();\n\n\t\t\tif (isRTL) {\n\t\t\t\treturn (iconRect.left + iconRect.width) > (rightContainerRect.left + rightContainerRect.width);\n\t\t\t}\n\n\t\t\treturn iconRect.left < rightContainerRect.left;\n\t\t});\n\t\tconst showOverflowButton = !!overflowButtons.length;\n\n\t\tconst items = this._getAllItems(showOverflowButton).filter(item => item.show);\n\n\t\tconst itemsByPriority = items.sort((item1, item2) => {\n\t\t\tif (item1.priority > item2.priority) {\n\t\t\t\treturn 1;\n\t\t\t}\n\n\t\t\tif (item1.priority < item2.priority) {\n\t\t\t\treturn -1;\n\t\t\t}\n\n\t\t\treturn 0;\n\t\t});\n\n\t\tfor (let i = 0; i < itemsByPriority.length; i++) {\n\t\t\tif (i < overflowButtons.length) {\n\t\t\t\titemsByPriority[i].classes = `${itemsByPriority[i].classes} ui5-shellbar-hidden-button`;\n\t\t\t\titemsByPriority[i].styles = {\n\t\t\t\t\torder: -1,\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\treturn itemsByPriority;\n\t}\n\n\t_overflowActions() {\n\t\tconst size = this._handleBarBreakpoints();\n\n\t\tif (size === \"S\") {\n\t\t\treturn this._handleSizeS();\n\t\t}\n\n\t\tconst newItems = this._handleActionsOverflow();\n\t\tthis._updateItemsInfo(newItems);\n\t}\n\n\tasync _toggleActionPopover() {\n\t\tconst overflowButton = this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-overflow-button\")!;\n\t\tconst overflowPopover = await this._getOverflowPopover();\n\t\toverflowPopover!.showAt(overflowButton, true);\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._handleResize);\n\t}\n\n\tonExitDOM() {\n\t\tthis.menuItemsObserver.disconnect();\n\t\tResizeHandler.deregister(this, this._handleResize);\n\t\tclearTimeout(this._debounceInterval!);\n\t\tthis._debounceInterval = null;\n\t}\n\n\t_handleSearchIconPress() {\n\t\tconst searchButtonRef = this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-search-button\")!;\n\t\tconst defaultPrevented = !this.fireEvent<ShellBarSearchButtonEventDetail>(\"search-button-click\", {\n\t\t\ttargetRef: searchButtonRef,\n\t\t\tsearchFieldVisible: this.showSearchField,\n\t\t}, true);\n\n\t\tif (defaultPrevented) {\n\t\t\treturn;\n\t\t}\n\t\tthis.showSearchField = !this.showSearchField;\n\n\t\tif (!this.showSearchField) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst input = this.searchField[0];\n\n\t\t// update the state immediately\n\t\tif (input) {\n\t\t\tinput.focused = true;\n\t\t}\n\n\t\t// move the focus later\n\t\tsetTimeout(() => {\n\t\t\tif (input) {\n\t\t\t\tinput.focus();\n\t\t\t}\n\t\t}, 100);\n\t}\n\n\tasync _handleActionListClick() {\n\t\tif (!this._defaultItemPressPrevented) {\n\t\t\tthis.closeOverflow();\n\t\t\t// wait for DOM to be updated when ui5-popover is closed, otherwise if Enter key is hold\n\t\t\t// there will be no visual indication that this has happened\n\t\t\tawait renderFinished();\n\t\t}\n\n\t\tthis._defaultItemPressPrevented = false;\n\t}\n\n\t_handleCustomActionPress(e: MouseEvent) {\n\t\tconst target = e.target as HTMLElement;\n\t\tconst refItemId = target.getAttribute(\"data-ui5-external-action-item-id\");\n\n\t\tif (refItemId) {\n\t\t\tconst shellbarItem = this.items.find(item => {\n\t\t\t\treturn item._id === refItemId;\n\t\t\t});\n\n\t\t\tconst prevented = shellbarItem!.fireClickEvent(e);\n\n\t\t\tthis._defaultItemPressPrevented = prevented;\n\t\t}\n\t}\n\n\t_handleOverflowPress() {\n\t\tthis._toggleActionPopover();\n\t}\n\n\t_handleNotificationsPress(e: MouseEvent) {\n\t\tconst notificationIconRef = this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-bell-button\")!,\n\t\t\ttarget = e.target as HTMLElement;\n\n\t\tthis._defaultItemPressPrevented = !this.fireEvent<ShellBarNotificationsClickEventDetail>(\"notifications-click\", {\n\t\t\ttargetRef: notificationIconRef.classList.contains(\"ui5-shellbar-hidden-button\") ? target : notificationIconRef,\n\t\t}, true);\n\t}\n\n\t_handleProfilePress() {\n\t\tthis.fireEvent<ShellBarProfileClickEventDetail>(\"profile-click\", {\n\t\t\ttargetRef: this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-image-button\")!,\n\t\t});\n\t}\n\n\t_handleCancelButtonPress() {\n\t\tthis.showSearchField = false;\n\t}\n\n\t_handleProductSwitchPress(e: MouseEvent) {\n\t\tconst buttonRef = this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-button-product-switch\")!,\n\t\t\ttarget = e.target as HTMLElement;\n\n\t\tthis._defaultItemPressPrevented = !this.fireEvent<ShellBarProductSwitchClickEventDetail>(\"product-switch-click\", {\n\t\t\ttargetRef: buttonRef.classList.contains(\"ui5-shellbar-hidden-button\") ? target : buttonRef,\n\t\t}, true);\n\t}\n\n\t/**\n\t * Returns the `logo` DOM ref.\n\t * @public\n\t * @default null\n\t * @since 1.0.0-rc.16\n\t */\n\tget logoDomRef(): HTMLElement | null {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(`*[data-ui5-stable=\"logo\"]`);\n\t}\n\n\t/**\n\t * Returns the `copilot` DOM ref.\n\t * @public\n\t * @default null\n\t * @since 1.0.0-rc.16\n\t */\n\tget copilotDomRef(): HTMLElement | null {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(`*[data-ui5-stable=\"copilot\"]`);\n\t}\n\n\t/**\n\t * Returns the `notifications` icon DOM ref.\n\t * @public\n\t * @default null\n\t * @since 1.0.0-rc.16\n\t */\n\tget notificationsDomRef(): HTMLElement | null {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(`*[data-ui5-stable=\"notifications\"]`);\n\t}\n\n\t/**\n\t * Returns the `overflow` icon DOM ref.\n\t * @public\n\t * @default null\n\t * @since 1.0.0-rc.16\n\t */\n\tget overflowDomRef(): HTMLElement | null {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(`*[data-ui5-stable=\"overflow\"]`);\n\t}\n\n\t/**\n\t * Returns the `profile` icon DOM ref.\n\t * @public\n\t * @default null\n\t * @since 1.0.0-rc.16\n\t */\n\tget profileDomRef(): HTMLElement | null {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(`*[data-ui5-stable=\"profile\"]`);\n\t}\n\n\t/**\n\t * Returns the `product-switch` icon DOM ref.\n\t * @public\n\t * @default null\n\t * @since 1.0.0-rc.16\n\t */\n\tget productSwitchDomRef(): HTMLElement | null {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(`*[data-ui5-stable=\"product-switch\"]`);\n\t}\n\n\t/**\n\t * Returns all items that will be placed in the right of the bar as icons / dom elements.\n\t * @param showOverflowButton Determines if overflow button should be visible (not overflowing)\n\t */\n\t_getAllItems(showOverflowButton: boolean) {\n\t\tlet domOrder = -1;\n\t\tconst search = {\n\t\t\ticon: \"search\",\n\t\t\ttext: this._searchText,\n\t\t\tclasses: `${this.searchField.length ? \"\" : \"ui5-shellbar-invisible-button\"} ui5-shellbar-search-button ui5-shellbar-button`,\n\t\t\tpriority: 4,\n\t\t\tdomOrder: this.searchField.length ? (++domOrder) : -1,\n\t\t\tstyles: {\n\t\t\t\torder: this.searchField.length ? 1 : -10,\n\t\t\t},\n\t\t\tid: `${this._id}-item-${1}`,\n\t\t\tpress: this._handleSearchIconPress.bind(this),\n\t\t\tshow: !!this.searchField.length,\n\t\t};\n\n\t\tconst items: Array<IShelBarItemInfo> = [\n\t\t\t{\n\t\t\t\ticon: this._coPilotIcon,\n\t\t\t\ttext: this._copilotText,\n\t\t\t\tclasses: `${this.showCoPilot ? \"\" : \"ui5-shellbar-invisible-button\"} ui5-shellbar-search-button ui5-shellbar-button`,\n\t\t\t\tpriority: 4,\n\t\t\t\tdomOrder: this.showCoPilot ? (++domOrder) : -1,\n\t\t\t\tstyles: {\n\t\t\t\t\torder: this.showCoPilot ? 1 : -10,\n\t\t\t\t},\n\t\t\t\tid: `${this.id}-item-coPilot`,\n\t\t\t\tpress: this._coPilotClick.bind(this),\n\t\t\t\tshow: !!this.showCoPilot,\n\t\t\t},\n\t\t\t...this.items.map((item: ShellBarItem) => {\n\t\t\t\titem._getRealDomRef = () => this.getDomRef()!.querySelector(`*[data-ui5-stable=${item.stableDomRef}]`)!;\n\t\t\t\treturn {\n\t\t\t\t\ticon: item.icon,\n\t\t\t\t\tid: item._id,\n\t\t\t\t\tcount: item.count || undefined,\n\t\t\t\t\trefItemid: item._id,\n\t\t\t\t\ttext: item.text,\n\t\t\t\t\tclasses: \"ui5-shellbar-custom-item ui5-shellbar-button\",\n\t\t\t\t\tpriority: 1,\n\t\t\t\t\tdomOrder: (++domOrder),\n\t\t\t\t\tstyles: {\n\t\t\t\t\t\torder: 2,\n\t\t\t\t\t},\n\t\t\t\t\tshow: true,\n\t\t\t\t\tpress: this._handleCustomActionPress.bind(this),\n\t\t\t\t\tcustom: true,\n\t\t\t\t\ttitle: item.title,\n\t\t\t\t\tstableDomRef: item.stableDomRef,\n\t\t\t\t};\n\t\t\t}),\n\t\t\t{\n\t\t\t\ticon: \"bell\",\n\t\t\t\ttext: this._notificationsText,\n\t\t\t\tclasses: `${this.showNotifications ? \"\" : \"ui5-shellbar-invisible-button\"} ui5-shellbar-bell-button ui5-shellbar-button`,\n\t\t\t\tpriority: 3,\n\t\t\t\tstyles: {\n\t\t\t\t\torder: this.showNotifications ? 3 : -10,\n\t\t\t\t},\n\t\t\t\tid: `${this._id}-item-${2}`,\n\t\t\t\tshow: this.showNotifications,\n\t\t\t\tdomOrder: this.showNotifications ? (++domOrder) : -1,\n\t\t\t\tpress: this._handleNotificationsPress.bind(this),\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: \"overflow\",\n\t\t\t\ttext: \"Overflow\",\n\t\t\t\tclasses: `${showOverflowButton ? \"\" : \"ui5-shellbar-hidden-button\"} ui5-shellbar-overflow-button-shown ui5-shellbar-overflow-button ui5-shellbar-button`,\n\t\t\t\tpriority: 5,\n\t\t\t\torder: 4,\n\t\t\t\tstyles: {\n\t\t\t\t\torder: showOverflowButton ? 4 : -1,\n\t\t\t\t},\n\t\t\t\tdomOrder: showOverflowButton ? (++domOrder) : -1,\n\t\t\t\tid: `${this.id}-item-${5}`,\n\t\t\t\tpress: this._handleOverflowPress.bind(this),\n\t\t\t\tshow: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Person\",\n\t\t\t\tclasses: `${this.hasProfile ? \"\" : \"ui5-shellbar-invisible-button\"} ui5-shellbar-image-button ui5-shellbar-button`,\n\t\t\t\tpriority: 4,\n\t\t\t\tstyles: {\n\t\t\t\t\torder: this.hasProfile ? 5 : -10,\n\t\t\t\t},\n\t\t\t\tprofile: true,\n\t\t\t\tid: `${this._id}-item-${3}`,\n\t\t\t\tdomOrder: this.hasProfile ? (++domOrder) : -1,\n\t\t\t\tshow: this.hasProfile,\n\t\t\t\tpress: this._handleProfilePress.bind(this),\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: \"grid\",\n\t\t\t\ttext: this._productsText,\n\t\t\t\tclasses: `${this.showProductSwitch ? \"\" : \"ui5-shellbar-invisible-button\"} ui5-shellbar-button ui5-shellbar-button-product-switch`,\n\t\t\t\tpriority: 2,\n\t\t\t\tstyles: {\n\t\t\t\t\torder: this.showProductSwitch ? 6 : -10,\n\t\t\t\t},\n\t\t\t\tid: `${this._id}-item-${4}`,\n\t\t\t\tshow: this.showProductSwitch,\n\t\t\t\tdomOrder: this.showProductSwitch ? (++domOrder) : -1,\n\t\t\t\tpress: this._handleProductSwitchPress.bind(this),\n\t\t\t},\n\t\t];\n\t\tif (this.midContent.length < 1 && items[0].text !== this._searchText) {\n\t\t\titems.unshift(search);\n\t\t}\n\t\treturn items;\n\t}\n\n\t_updateItemsInfo(newItems: Array<IShelBarItemInfo>) {\n\t\tconst isDifferent = JSON.stringify(this._itemsInfo) !== JSON.stringify(newItems);\n\t\tif (isDifferent) {\n\t\t\tthis._itemsInfo = newItems;\n\t\t}\n\t}\n\n\t_updateClonedMenuItems() {\n\t\tthis._menuPopoverItems = [];\n\n\t\tthis.menuItems.forEach(item => {\n\t\t\t// clone the menuItem and remove the slot=\"menuItems\",\n\t\t\t// otherwise would not be slotted in the internal ui5-li\n\t\t\tconst clonedItem = item.cloneNode(true) as HTMLElement;\n\t\t\tclonedItem.removeAttribute(\"slot\");\n\n\t\t\tthis._menuPopoverItems.push(clonedItem);\n\t\t});\n\t}\n\n\t_observeMenuItems() {\n\t\tthis.menuItems.forEach(item => {\n\t\t\tthis.menuItemsObserver.observe(item, {\n\t\t\t\tcharacterData: true,\n\t\t\t\tchildList: true,\n\t\t\t\tsubtree: true,\n\t\t\t\tattributes: true,\n\t\t\t});\n\t\t});\n\t}\n\n\tasync _getResponsivePopover() {\n\t\tconst staticAreaItem = await this.getStaticAreaItemDomRef();\n\t\tthis.overflowPopover = staticAreaItem!.querySelector<Popover>(\".ui5-shellbar-overflow-popover\");\n\t\tthis.menuPopover = staticAreaItem!.querySelector<Popover>(\".ui5-shellbar-menu-popover\");\n\t}\n\n\tasync _getOverflowPopover() {\n\t\tconst staticAreaItem = await this.getStaticAreaItemDomRef();\n\t\treturn staticAreaItem!.querySelector<Popover>(\".ui5-shellbar-overflow-popover\");\n\t}\n\n\tasync _getMenuPopover() {\n\t\tconst staticAreaItem = await this.getStaticAreaItemDomRef();\n\t\treturn staticAreaItem!.querySelector<Popover>(\".ui5-shellbar-menu-popover\");\n\t}\n\n\tisIconHidden(name: string) {\n\t\tconst itemInfo = this._itemsInfo.find(item => item.icon === name);\n\n\t\tif (!itemInfo) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn itemInfo.classes.indexOf(\"ui5-shellbar-hidden-button\") !== -1;\n\t}\n\n\tget classes(): ClassMap {\n\t\treturn {\n\t\t\twrapper: {\n\t\t\t\t\"ui5-shellbar-root\": true,\n\t\t\t\t\"ui5-shellbar-with-searchfield\": this.hasSearchField,\n\t\t\t},\n\t\t\tbutton: {\n\t\t\t\t\"ui5-shellbar-menu-button--interactive\": this.hasMenuItems,\n\t\t\t\t\"ui5-shellbar-menu-button\": true,\n\t\t\t},\n\t\t\titems: {\n\t\t\t\tnotification: {\n\t\t\t\t\t\"ui5-shellbar-hidden-button\": this.isIconHidden(\"bell\"),\n\t\t\t\t},\n\t\t\t\tproduct: {\n\t\t\t\t\t\"ui5-shellbar-hidden-button\": this.isIconHidden(\"grid\"),\n\t\t\t\t},\n\t\t\t\tsearch: {\n\t\t\t\t\t\"ui5-shellbar-hidden-button\": this.isIconHidden(\"search\"),\n\t\t\t\t},\n\t\t\t\tcopilot: {\n\t\t\t\t\t\"ui5-shellbar-hidden-button\": this.isIconHidden(this._coPilotIcon),\n\t\t\t\t\t\"ui5-shellbar-co-pilot-pressed\": this._coPilotPressed,\n\t\t\t\t},\n\t\t\t\toverflow: {\n\t\t\t\t\t\"ui5-shellbar-hidden-button\": this.isIconHidden(\"overflow\"),\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\titems: {\n\t\t\t\tnotification: {\n\t\t\t\t\t\"order\": this.isIconHidden(\"bell\") ? \"-1\" : \"3\",\n\t\t\t\t},\n\t\t\t\toverflow: {\n\t\t\t\t\t\"order\": this.isIconHidden(\"overflow\") ? \"-1\" : \"4\",\n\t\t\t\t},\n\t\t\t\tprofile: {\n\t\t\t\t\t\"order\": this.hasProfile ? \"5\" : \"-1\",\n\t\t\t\t},\n\t\t\t\tproduct: {\n\t\t\t\t\t\"order\": this.isIconHidden(\"grid\") ? \"-1\" : \"6\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tsearchField: {\n\t\t\t\t\"display\": this.correctSearchFieldStyles,\n\t\t\t},\n\t\t};\n\t}\n\n\tget correctSearchFieldStyles() {\n\t\tif (this.showSearchField) {\n\t\t\treturn \"flex\";\n\t\t}\n\n\t\treturn \"none\";\n\t}\n\n\tget customItemsInfo() {\n\t\treturn this._itemsInfo.filter(itemInfo => !!itemInfo.custom);\n\t}\n\n\tget hasLogo() {\n\t\treturn !!this.logo.length;\n\t}\n\n\tget showLogoInMenuButton() {\n\t\treturn this.hasLogo && this.breakpointSize === \"S\";\n\t}\n\n\tget showTitleInMenuButton() {\n\t\treturn this.primaryTitle && !(this.showLogoInMenuButton);\n\t}\n\n\tget showMenuButton() {\n\t\treturn this.primaryTitle || this.showLogoInMenuButton;\n\t}\n\n\tget popoverHorizontalAlign() {\n\t\treturn this.effectiveDir === \"rtl\" ? \"Left\" : \"Right\";\n\t}\n\n\tget hasSearchField() {\n\t\treturn !!this.searchField.length;\n\t}\n\n\tget hasMidContent() {\n\t\treturn !!this.midContent.length;\n\t}\n\n\tget hasProfile() {\n\t\treturn !!this.profile.length;\n\t}\n\n\tget hasMenuItems() {\n\t\treturn this.menuItems.length > 0;\n\t}\n\n\tget _shellbarText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_LABEL);\n\t}\n\n\tget _logoText() {\n\t\treturn this.accessibilityTexts.logoTitle || ShellBar.i18nBundle.getText(SHELLBAR_LOGO);\n\t}\n\n\tget _copilotText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_COPILOT);\n\t}\n\n\tget _notificationsText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_NOTIFICATIONS, this.notificationsCount);\n\t}\n\n\tget _cancelBtnText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_CANCEL);\n\t}\n\n\tget _showFullWidthSearch() {\n\t\tconst size = this._handleBarBreakpoints();\n\t\tconst searchBtnHidden = !!this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-search-button.ui5-shellbar-hidden-button\");\n\n\t\treturn ((size === \"S\") || searchBtnHidden);\n\t}\n\n\tget _profileText() {\n\t\treturn this.accessibilityTexts.profileButtonTitle || ShellBar.i18nBundle.getText(SHELLBAR_PROFILE);\n\t}\n\n\tget _productsText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_PRODUCTS);\n\t}\n\n\tget _searchText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_SEARCH);\n\t}\n\n\tget _overflowText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_OVERFLOW);\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\tnotifications: {\n\t\t\t\t\"title\": this._notificationsText,\n\t\t\t\t\"accessibilityAttributes\": {\n\t\t\t\t\thasPopup: this._notificationsHasPopup,\n\t\t\t\t},\n\t\t\t},\n\t\t\tprofile: {\n\t\t\t\t\"title\": this._profileText,\n\t\t\t\t\"accessibilityAttributes\": {\n\t\t\t\t\thasPopup: this._profileHasPopup,\n\t\t\t\t},\n\t\t\t},\n\t\t\tproducts: {\n\t\t\t\t\"title\": this._productsText,\n\t\t\t\t\"accessibilityAttributes\": {\n\t\t\t\t\thasPopup: this._productsHasPopup,\n\t\t\t\t},\n\t\t\t},\n\t\t\tsearch: {\n\t\t\t\t\"title\": this._searchText,\n\t\t\t\t\"accessibilityAttributes\": {\n\t\t\t\t\thasPopup: this._searchHasPopup,\n\t\t\t\t\texpanded: this.showSearchField,\n\t\t\t\t},\n\t\t\t},\n\t\t\toverflow: {\n\t\t\t\t\"title\": this._overflowText,\n\t\t\t\t\"accessibilityAttributes\": {\n\t\t\t\t\thasPopup: this._overflowHasPopup,\n\t\t\t\t\texpanded: this._overflowPopoverExpanded,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tget _notificationsHasPopup() {\n\t\tconst notificationsAccAttributes = this.accessibilityAttributes.notifications;\n\t\treturn notificationsAccAttributes ? notificationsAccAttributes.ariaHasPopup?.toLowerCase() : null;\n\t}\n\n\tget _profileHasPopup() {\n\t\tconst profileAccAttributes = this.accessibilityAttributes.profile;\n\t\treturn profileAccAttributes ? profileAccAttributes.ariaHasPopup?.toLowerCase() : null;\n\t}\n\n\tget _productsHasPopup() {\n\t\tconst productsAccAttributes = this.accessibilityAttributes.product;\n\t\treturn productsAccAttributes ? productsAccAttributes.ariaHasPopup?.toLowerCase() : null;\n\t}\n\n\tget _searchHasPopup() {\n\t\tconst searcAccAttributes = this.accessibilityAttributes.search;\n\t\treturn searcAccAttributes ? searcAccAttributes.ariaHasPopup?.toLowerCase() : null;\n\t}\n\n\tget _overflowHasPopup() {\n\t\tconst overflowAccAttributes = this.accessibilityAttributes.overflow;\n\t\treturn overflowAccAttributes ? overflowAccAttributes.ariaHasPopup?.toLowerCase() : HasPopup.Menu.toLowerCase();\n\t}\n\n\tget accLogoRole() {\n\t\treturn this.accessibilityRoles.logoRole || \"button\";\n\t}\n\n\tstatic async onDefine() {\n\t\tShellBar.i18nBundle = await getI18nBundle(\"@ui5/webcomponents-fiori\");\n\t}\n}\n\nShellBar.define();\n\nexport default ShellBar;\n\nexport type {\n\tShellBarNotificationsClickEventDetail,\n\tShellBarProfileClickEventDetail,\n\tShellBarProductSwitchClickEventDetail,\n\tShellBarLogoClickEventDetail,\n\tShellBarCoPilotClickEventDetail,\n\tShellBarMenuItemClickEventDetail,\n\tShellBarAccessibilityAttributes,\n\tShellBarAccessibilityRoles,\n\tShellBarAccessibilityTexts,\n\tShellBarSearchButtonEventDetail,\n};\n"]}
|
package/dist/SideNavigation.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ import type { MenuItemClickEventDetail } from "@ui5/webcomponents/dist/Menu.js";
|
|
|
5
5
|
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
6
6
|
import ItemNavigation from "@ui5/webcomponents-base/dist/delegate/ItemNavigation.js";
|
|
7
7
|
import type { ITabbable } from "@ui5/webcomponents-base/dist/delegate/ItemNavigation.js";
|
|
8
|
+
import "@ui5/webcomponents-icons/dist/overflow.js";
|
|
8
9
|
import SideNavigationItemBase from "./SideNavigationItemBase.js";
|
|
9
10
|
import SideNavigationSelectableItemBase from "./SideNavigationSelectableItemBase.js";
|
|
10
11
|
import SideNavigationItem from "./SideNavigationItem.js";
|
|
@@ -78,7 +79,7 @@ declare class SideNavigation extends UI5Element {
|
|
|
78
79
|
*
|
|
79
80
|
* @public
|
|
80
81
|
*/
|
|
81
|
-
items: Array<
|
|
82
|
+
items: Array<SideNavigationItemBase>;
|
|
82
83
|
/**
|
|
83
84
|
* Defines the fixed items at the bottom of the `ui5-side-navigation`. Use the `ui5-side-navigation-item` component
|
|
84
85
|
* for the fixed items, and optionally the `ui5-side-navigation-sub-item` component to provide second-level items inside them.
|
|
@@ -87,7 +88,7 @@ declare class SideNavigation extends UI5Element {
|
|
|
87
88
|
*
|
|
88
89
|
* @public
|
|
89
90
|
*/
|
|
90
|
-
fixedItems: Array<
|
|
91
|
+
fixedItems: Array<SideNavigationItemBase>;
|
|
91
92
|
/**
|
|
92
93
|
* Defines the header of the `ui5-side-navigation`.
|
|
93
94
|
*
|
package/dist/SideNavigation.js
CHANGED
|
@@ -17,6 +17,7 @@ import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
|
17
17
|
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
18
18
|
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
19
19
|
import ItemNavigation from "@ui5/webcomponents-base/dist/delegate/ItemNavigation.js";
|
|
20
|
+
import "@ui5/webcomponents-icons/dist/overflow.js";
|
|
20
21
|
import { isPhone, isTablet, isCombi, } from "@ui5/webcomponents-base/dist/Device.js";
|
|
21
22
|
import { isSpace, isEnter, } from "@ui5/webcomponents-base/dist/Keys.js";
|
|
22
23
|
import NavigationMode from "@ui5/webcomponents-base/dist/types/NavigationMode.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SideNavigation.js","sourceRoot":"","sources":["../src/SideNavigation.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 ResponsivePopover from \"@ui5/webcomponents/dist/ResponsivePopover.js\";\nimport NavigationMenu from \"@ui5/webcomponents/dist/NavigationMenu.js\";\nimport type { MenuItemClickEventDetail } from \"@ui5/webcomponents/dist/Menu.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport ItemNavigation from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport {\n\tisPhone,\n\tisTablet,\n\tisCombi,\n} from \"@ui5/webcomponents-base/dist/Device.js\";\nimport {\n\tisSpace,\n\tisEnter,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport NavigationMode from \"@ui5/webcomponents-base/dist/types/NavigationMode.js\";\nimport SideNavigationItemBase from \"./SideNavigationItemBase.js\";\nimport SideNavigationSelectableItemBase from \"./SideNavigationSelectableItemBase.js\";\nimport SideNavigationItem from \"./SideNavigationItem.js\";\nimport SideNavigationSubItem from \"./SideNavigationSubItem.js\";\nimport SideNavigationGroup from \"./SideNavigationGroup.js\";\nimport SideNavigationTemplate from \"./generated/templates/SideNavigationTemplate.lit.js\";\nimport SideNavigationPopoverTemplate from \"./generated/templates/SideNavigationPopoverTemplate.lit.js\";\n\nimport {\n\tSIDE_NAVIGATION_POPOVER_HIDDEN_TEXT,\n\tSIDE_NAVIGATION_COLLAPSED_LIST_ARIA_ROLE_DESC,\n\tSIDE_NAVIGATION_LIST_ARIA_ROLE_DESC,\n\tSIDE_NAVIGATION_OVERFLOW_ACCESSIBLE_NAME,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport SideNavigationCss from \"./generated/themes/SideNavigation.css.js\";\nimport SideNavigationPopoverCss from \"./generated/themes/SideNavigationPopover.css.js\";\n\nconst PAGE_UP_DOWN_SIZE = 10;\n\ntype SideNavigationPopoverContents = {\n\titem: SideNavigationItem,\n\tsubItems: Array<SideNavigationSubItem>,\n};\n\ntype SideNavigationSelectionChangeEventDetail = {\n\titem: SideNavigationItemBase,\n};\n\ntype PopupSideNavigationItem = SideNavigationItem & { associatedItem: SideNavigationSelectableItemBase };\n\n// used for the inner side navigation used in the SideNavigationPopoverTemplate\ntype NavigationMenuClickEventDetail = MenuItemClickEventDetail & {\n\titem: Pick<MenuItemClickEventDetail, \"item\"> & {\n\t\tassociatedItem: SideNavigationSelectableItemBase,\n\t}\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `SideNavigation` is used as a standard menu in applications.\n * It consists of three containers: header (top-aligned), main navigation section (top-aligned) and the secondary section (bottom-aligned).\n *\n * - The header is meant for displaying user related information - profile data, avatar, etc.\n * - The main navigation section is related to the user’s current work context\n * - The secondary section is mostly used to link additional information that may be of interest (legal information, developer communities, external help, contact information and so on).\n *\n * ### Usage\n *\n * Use the available `ui5-side-navigation-group`, `ui5-side-navigation-item`\n * and `ui5-side-navigation-sub-item` components to build your menu.\n * The items can consist of text only or an icon with text. The use or non-use of icons must be consistent for all items on one level.\n * You must not combine entries with and without icons on the same level. We strongly recommend that you do not use icons on the second level.\n *\n * ### Keyboard Handling\n *\n * ### Fast Navigation\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigation.js\"`\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigationGroup.js\";` (for `ui5-side-navigation-group`)\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigationItem.js\";` (for `ui5-side-navigation-item`)\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigationSubItem.js\";` (for `ui5-side-navigation-sub-item`)\n * @constructor\n * @extends UI5Element\n * @since 1.0.0-rc.8\n * @public\n */\n\n@customElement({\n\ttag: \"ui5-side-navigation\",\n\tfastNavigation: true,\n\trenderer: litRender,\n\ttemplate: SideNavigationTemplate,\n\tstaticAreaTemplate: SideNavigationPopoverTemplate,\n\tstyles: SideNavigationCss,\n\tstaticAreaStyles: SideNavigationPopoverCss,\n\tdependencies: [\n\t\tResponsivePopover,\n\t\tSideNavigationGroup,\n\t\tSideNavigationItem,\n\t\tSideNavigationSubItem,\n\t\tNavigationMenu,\n\t],\n})\n/**\n * Fired when the selection has changed via user interaction\n *\n * @param {SideNavigationSelectableItemBase} item the clicked item.\n * @allowPreventDefault\n * @public\n */\n@event<SideNavigationSelectionChangeEventDetail>(\"selection-change\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\titem: { type: HTMLElement },\n\t},\n})\nclass SideNavigation extends UI5Element {\n\t/**\n\t * Defines whether the `ui5-side-navigation` is expanded or collapsed.\n\t *\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tcollapsed!: boolean;\n\n\t/**\n\t * Defines the main items of the `ui5-side-navigation`. Use the `ui5-side-navigation-item` component\n\t * for the top-level items, and the `ui5-side-navigation-sub-item` component for second-level items, nested\n\t * inside the items.\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n\titems!: Array<SideNavigationItem | SideNavigationGroup>;\n\n\t/**\n\t * Defines the fixed items at the bottom of the `ui5-side-navigation`. Use the `ui5-side-navigation-item` component\n\t * for the fixed items, and optionally the `ui5-side-navigation-sub-item` component to provide second-level items inside them.\n\t *\n\t * **Note:** In order to achieve the best user experience, it is recommended that you keep the fixed items \"flat\" (do not pass sub-items)\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true })\n\tfixedItems!: Array<SideNavigationItem | SideNavigationGroup>;\n\n\t/**\n\t * Defines the header of the `ui5-side-navigation`.\n\t *\n\t * **Note:** The header is displayed when the component is expanded - the property `collapsed` is false;\n\t *\n\t * @public\n\t * @since 1.0.0-rc.11\n\t */\n\t@slot()\n\theader!: Array<HTMLElement>;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Object })\n\t_popoverContents!: SideNavigationPopoverContents;\n\n\t@property({ type: Boolean })\n\tinPopover!: boolean;\n\t_isOverflow!: boolean;\n\t_flexibleItemNavigation: ItemNavigation;\n\t_fixedItemNavigation: ItemNavigation;\n\n\t@property({ type: Object, multiple: true })\n\t_menuPopoverItems!: Array<HTMLElement>;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tisTouchDevice!: boolean;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._flexibleItemNavigation = new ItemNavigation(this, {\n\t\t\tskipItemsSize: PAGE_UP_DOWN_SIZE, // PAGE_UP and PAGE_DOWN will skip trough 10 items\n\t\t\tnavigationMode: NavigationMode.Vertical,\n\t\t\tgetItemsCallback: () => this.getEnabledFlexibleItems(),\n\t\t});\n\n\t\tthis._fixedItemNavigation = new ItemNavigation(this, {\n\t\t\tskipItemsSize: PAGE_UP_DOWN_SIZE, // PAGE_UP and PAGE_DOWN will skip trough 10 items\n\t\t\tnavigationMode: NavigationMode.Vertical,\n\t\t\tgetItemsCallback: () => this.getEnabledFixedItems(),\n\t\t});\n\n\t\tthis._handleResizeBound = this.handleResize.bind(this);\n\t\tthis._isOverflow = false;\n\t}\n\n\t_handleResizeBound: () => void;\n\n\tonBeforeRendering() {\n\t\tsuper.onBeforeRendering();\n\n\t\tthis._getAllItems(this.items).concat(this._getAllItems(this.fixedItems)).forEach(item => {\n\t\t\titem.sideNavCollapsed = this.collapsed;\n\t\t\titem.inPopover = this.inPopover;\n\t\t\titem.sideNavigation = this;\n\t\t});\n\t}\n\n\tasync _onAfterPopoverOpen() {\n\t\t// as the tree/list inside the popover is never destroyed,\n\t\t// item navigation index should be managed, because items are\n\t\t// dynamically recreated and tabIndexes are not updated\n\t\tconst tree = await this.getPickerTree();\n\t\tconst selectedItem = tree._findSelectedItem(tree.items);\n\t\tif (selectedItem) {\n\t\t\tselectedItem.focus();\n\t\t} else {\n\t\t\ttree.items[0]?.focus();\n\t\t}\n\t}\n\n\tasync _onBeforePopoverOpen() {\n\t\tconst popover = await this.getPicker();\n\t\t(popover?.opener as HTMLElement)?.classList.add(\"ui5-sn-item-active\");\n\t}\n\n\tasync _onBeforePopoverClose() {\n\t\tconst popover = await this.getPicker();\n\t\t(popover?.opener as HTMLElement)?.classList.remove(\"ui5-sn-item-active\");\n\t}\n\n\tasync _onBeforeMenuOpen() {\n\t\tconst popover = await this.getOverflowPopover();\n\t\t(popover?.opener as HTMLElement)?.classList.add(\"ui5-sn-item-active\");\n\t}\n\n\tasync _onBeforeMenuClose() {\n\t\tconst popover = await this.getOverflowPopover();\n\t\t(popover?.opener as HTMLElement)?.classList.remove(\"ui5-sn-item-active\");\n\t}\n\n\tget accSideNavigationPopoverHiddenText() {\n\t\treturn SideNavigation.i18nBundle.getText(SIDE_NAVIGATION_POPOVER_HIDDEN_TEXT);\n\t}\n\n\tget ariaRoleDescNavigationList() {\n\t\tlet key = SIDE_NAVIGATION_LIST_ARIA_ROLE_DESC;\n\t\tif (this.collapsed) {\n\t\t\tkey = SIDE_NAVIGATION_COLLAPSED_LIST_ARIA_ROLE_DESC;\n\t\t}\n\n\t\treturn SideNavigation.i18nBundle.getText(key);\n\t}\n\n\tget overflowAccessibleName() {\n\t\treturn SideNavigation.i18nBundle.getText(SIDE_NAVIGATION_OVERFLOW_ACCESSIBLE_NAME);\n\t}\n\n\tasync handlePopupItemClick(e: KeyboardEvent | PointerEvent) {\n\t\tconst associatedItem = (e.target as PopupSideNavigationItem).associatedItem;\n\n\t\tassociatedItem.fireEvent(\"click\");\n\t\tif (associatedItem.selected) {\n\t\t\tthis.closePicker();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._selectItem(associatedItem);\n\t\tthis.closePicker();\n\n\t\tawait renderFinished();\n\t\tthis._popoverContents.item.getDomRef()!.classList.add(\"ui5-sn-item-no-hover-effect\");\n\t}\n\n\tasync handleOverflowItemClick(e: CustomEvent<NavigationMenuClickEventDetail>) {\n\t\tconst associatedItem = e.detail?.item.associatedItem;\n\n\t\tassociatedItem.fireEvent(\"click\");\n\t\tif (associatedItem.selected) {\n\t\t\tthis.closeMenu();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._selectItem(associatedItem);\n\n\t\tthis.closeMenu();\n\t\tawait renderFinished();\n\n\t\t// When subitem is selected in collapsed mode parent element should be focused\n\t\tif (associatedItem.nodeName.toLowerCase() === \"ui5-side-navigation-sub-item\") {\n\t\t\tconst parent = associatedItem.parentElement as SideNavigationItem;\n\t\t\tthis.focusItem(parent);\n\t\t\tparent?.focus();\n\t\t} else {\n\t\t\tthis.focusItem(associatedItem);\n\t\t\tassociatedItem?.focus();\n\t\t}\n\t}\n\n\tasync getOverflowPopover() {\n\t\treturn (await this.getStaticAreaItemDomRef())!.querySelector<NavigationMenu>(\".ui5-side-navigation-overflow-menu\")!;\n\t}\n\n\tasync getPicker() {\n\t\treturn (await this.getStaticAreaItemDomRef())!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\tasync openPicker(opener: HTMLElement) {\n\t\topener.classList.add(\"ui5-sn-item-active\");\n\n\t\tconst responsivePopover = await this.getPicker();\n\t\tresponsivePopover.opener = opener;\n\t\tresponsivePopover.showAt(opener);\n\t}\n\n\tasync openOverflowMenu(opener: HTMLElement) {\n\t\topener.classList.add(\"ui5-sn-item-active\");\n\n\t\tconst menu = await this.getOverflowPopover();\n\t\tmenu.opener = opener;\n\t\tmenu.showAt(opener);\n\t}\n\n\tasync closePicker() {\n\t\tconst responsivePopover = await this.getPicker();\n\t\tresponsivePopover.close();\n\t}\n\n\tasync closeMenu() {\n\t\tconst menu = await this.getOverflowPopover();\n\t\tmenu.close();\n\t}\n\n\tasync getPickerTree() {\n\t\tconst picker = await this.getPicker();\n\t\treturn picker.querySelector<SideNavigation>(\"[ui5-side-navigation]\")!;\n\t}\n\n\tget hasHeader() {\n\t\treturn !!this.header.length;\n\t}\n\n\tget showHeader() {\n\t\treturn this.hasHeader && !this.collapsed;\n\t}\n\n\tget hasFixedItems() {\n\t\treturn !!this.fixedItems.length;\n\t}\n\n\tget _rootRole() {\n\t\treturn this.inPopover ? \"none\" : undefined;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"ui5-sn-collapsed\": this.collapsed,\n\t\t\t},\n\t\t};\n\t}\n\n\tgetEnabledFixedItems() : Array<ITabbable> {\n\t\treturn this.getEnabledItems(this.fixedItems);\n\t}\n\n\tgetEnabledFlexibleItems() : Array<ITabbable> {\n\t\tconst items = this.getEnabledItems(this.items);\n\n\t\tif (this._overflowItem) {\n\t\t\titems.push(this._overflowItem);\n\t\t}\n\n\t\treturn items;\n\t}\n\n\tgetEnabledItems(items: Array<SideNavigationItem | SideNavigationGroup>) : Array<ITabbable> {\n\t\tconst result = new Array<ITabbable>();\n\n\t\tthis._getFocusableItems(items).forEach(item => {\n\t\t\tif (item.classList.contains(\"ui5-sn-item-hidden\")) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (!item.disabled) {\n\t\t\t\tresult.push(item);\n\t\t\t}\n\t\t});\n\n\t\treturn result;\n\t}\n\n\tfocusItem(item: SideNavigationItemBase) {\n\t\tif (item.isFixedItem) {\n\t\t\tthis._fixedItemNavigation.setCurrentItem(item);\n\t\t} else {\n\t\t\tthis._flexibleItemNavigation.setCurrentItem(item);\n\t\t}\n\t}\n\n\tonAfterRendering() {\n\t\tif (!this.getDomRef()?.matches(\":focus-within\")) {\n\t\t\tlet selectedItem = this._findSelectedItem(this.items);\n\t\t\tif (selectedItem) {\n\t\t\t\tthis._flexibleItemNavigation.setCurrentItem(selectedItem);\n\t\t\t}\n\n\t\t\tselectedItem = this._findSelectedItem(this.fixedItems);\n\t\t\tif (selectedItem) {\n\t\t\t\tthis._fixedItemNavigation.setCurrentItem(selectedItem);\n\t\t\t}\n\t\t}\n\n\t\tif (this.collapsed) {\n\t\t\tthis.handleResize();\n\t\t}\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._handleResizeBound);\n\n\t\tthis.isTouchDevice = isPhone() || (isTablet() && !isCombi());\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._handleResizeBound);\n\t}\n\n\thandleResize() {\n\t\tthis._updateOverflowItems();\n\t}\n\n\t_updateOverflowItems() {\n\t\tconst domRef = this.getDomRef();\n\t\tif (!this.collapsed || !domRef) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst overflowItem = this._overflowItem!;\n\t\tconst flexibleContentDomRef : HTMLElement = domRef.querySelector(\".ui5-sn-flexible\")!;\n\t\tif (!overflowItem) {\n\t\t\treturn null;\n\t\t}\n\n\t\toverflowItem.classList.add(\"ui5-sn-item-hidden\");\n\n\t\tconst overflowItems = this.overflowItems;\n\n\t\tlet itemsHeight = overflowItems.reduce<number>((sum, itemRef) => {\n\t\t\titemRef.classList.remove(\"ui5-sn-item-hidden\");\n\t\t\treturn sum + itemRef.offsetHeight;\n\t\t}, 0);\n\n\t\tconst { paddingTop, paddingBottom } = window.getComputedStyle(flexibleContentDomRef);\n\t\tconst listHeight = flexibleContentDomRef?.offsetHeight - parseInt(paddingTop) - parseInt(paddingBottom);\n\n\t\tif (itemsHeight <= listHeight) {\n\t\t\treturn;\n\t\t}\n\n\t\toverflowItem.classList.remove(\"ui5-sn-item-hidden\");\n\n\t\titemsHeight = overflowItem.offsetHeight;\n\n\t\tconst selectedItem = overflowItems.find(item => {\n\t\t\treturn item instanceof SideNavigationSelectableItemBase && item._selected;\n\t\t});\n\n\t\tif (selectedItem && selectedItem instanceof SideNavigationItemBase) {\n\t\t\tconst selectedItemDomRef = selectedItem.getDomRef();\n\t\t\tconst { marginTop, marginBottom } = window.getComputedStyle(selectedItemDomRef!);\n\n\t\t\titemsHeight += selectedItemDomRef!.offsetHeight + parseFloat(marginTop) + parseFloat(marginBottom);\n\t\t}\n\n\t\toverflowItems.forEach(item => {\n\t\t\tif (item === selectedItem) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet itemDomRef;\n\n\t\t\tif (item instanceof SideNavigationItemBase) {\n\t\t\t\titemDomRef = item.getDomRef()!;\n\t\t\t} else {\n\t\t\t\titemDomRef = item;\n\t\t\t}\n\n\t\t\tconst { marginTop, marginBottom } = window.getComputedStyle(itemDomRef);\n\t\t\titemsHeight += itemDomRef.offsetHeight + parseFloat(marginTop) + parseFloat(marginBottom);\n\n\t\t\tif (itemsHeight > listHeight) {\n\t\t\t\titem.classList.add(\"ui5-sn-item-hidden\");\n\t\t\t}\n\t\t});\n\n\t\tthis._flexibleItemNavigation._init();\n\t}\n\n\t_findFocusedItem(items: Array<SideNavigationItem | SideNavigationGroup>) : SideNavigationItemBase | undefined {\n\t\treturn this._getFocusableItems(items).find(item => item.forcedTabIndex === \"0\");\n\t}\n\n\t_getSelectableItems(items: Array<SideNavigationItem | SideNavigationGroup>) : Array<SideNavigationSelectableItemBase> {\n\t\treturn items.reduce((result, item) => {\n\t\t\treturn result.concat(item.selectableItems);\n\t\t}, new Array<SideNavigationSelectableItemBase>());\n\t}\n\n\t_getFocusableItems(items: Array<SideNavigationItem | SideNavigationGroup>) : Array<SideNavigationItemBase> {\n\t\treturn items.reduce((result, item) => {\n\t\t\treturn result.concat(item.focusableItems);\n\t\t}, new Array<SideNavigationItemBase>());\n\t}\n\n\t_getAllItems(items: Array<SideNavigationItem | SideNavigationGroup>) : Array<SideNavigationItemBase> {\n\t\treturn items.reduce((result, item) => {\n\t\t\treturn result.concat(item.allItems);\n\t\t}, new Array<SideNavigationItemBase>());\n\t}\n\n\t_findSelectedItem(items: Array<SideNavigationItem | SideNavigationGroup>) : SideNavigationSelectableItemBase | undefined {\n\t\treturn this._getSelectableItems(items).find(item => item._selected);\n\t}\n\n\tget overflowItems() : Array<HTMLElement> {\n\t\treturn this.items.reduce((result, item) => {\n\t\t\treturn result.concat(item.overflowItems);\n\t\t}, new Array<HTMLElement>());\n\t}\n\n\t_handleItemClick(e: KeyboardEvent | PointerEvent, item: SideNavigationSelectableItemBase) {\n\t\tif (item.selected && !this.collapsed) {\n\t\t\titem.fireEvent(\"click\");\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.collapsed && item instanceof SideNavigationItem && item.items.length) {\n\t\t\te.preventDefault();\n\t\t\tthis._isOverflow = false;\n\n\t\t\tthis._popoverContents = {\n\t\t\t\titem,\n\t\t\t\tsubItems: item.items,\n\t\t\t};\n\n\t\t\tthis.openPicker(item.getFocusDomRef() as HTMLElement);\n\t\t} else {\n\t\t\titem.fireEvent(\"click\");\n\n\t\t\tif (!item.selected) {\n\t\t\t\tthis._selectItem(item);\n\t\t\t}\n\t\t}\n\t}\n\n\t_handleOverflowClick() {\n\t\tthis._isOverflow = true;\n\t\tthis._menuPopoverItems = this._getOverflowItems();\n\n\t\tthis.openOverflowMenu(this._overflowItem!.getFocusDomRef() as HTMLElement);\n\t}\n\n\t_getOverflowItems(): Array<SideNavigationSelectableItemBase> {\n\t\tconst overflowClass = \"ui5-sn-item-hidden\";\n\t\tconst result: Array<SideNavigationSelectableItemBase> = [];\n\n\t\tthis.overflowItems.forEach(item => {\n\t\t\tif (item instanceof SideNavigationSelectableItemBase\n\t\t\t\t&& item.classList.contains(overflowClass)) {\n\t\t\t\t result.push(item);\n\t\t\t}\n\t\t});\n\n\t\treturn result;\n\t}\n\n\t_selectItem(item: SideNavigationSelectableItemBase) {\n\t\tif (item.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this.fireEvent<SideNavigationSelectionChangeEventDetail>(\"selection-change\", { item }, true)) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet items = this._getSelectableItems(this.items);\n\t\titems = items.concat(this._getSelectableItems(this.fixedItems));\n\n\t\titems.forEach(current => {\n\t\t\tcurrent.selected = false;\n\t\t});\n\n\t\titem.selected = true;\n\t}\n\n\tget _overflowItem() {\n\t\tconst overflowItem = this.shadowRoot!.querySelector<SideNavigationItem>(\".ui5-sn-item-overflow\");\n\t\tif (overflowItem) {\n\t\t\toverflowItem.sideNavigation = this;\n\t\t}\n\n\t\treturn overflowItem;\n\t}\n\n\tget isOverflow() {\n\t\treturn this._isOverflow;\n\t}\n\n\t_onkeydownOverflow(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis._handleOverflowClick();\n\t\t}\n\t}\n\n\t_onkeyupOverflow(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis._handleOverflowClick();\n\t\t}\n\t}\n\tstatic async onDefine() {\n\t\t[SideNavigation.i18nBundle] = await Promise.all([\n\t\t\tgetI18nBundle(\"@ui5/webcomponents-fiori\"),\n\t\t\tsuper.onDefine(),\n\t\t]);\n\t}\n}\n\nSideNavigation.define();\n\nexport default SideNavigation;\n\nexport type {\n\tSideNavigationSelectionChangeEventDetail,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"SideNavigation.js","sourceRoot":"","sources":["../src/SideNavigation.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 ResponsivePopover from \"@ui5/webcomponents/dist/ResponsivePopover.js\";\nimport NavigationMenu from \"@ui5/webcomponents/dist/NavigationMenu.js\";\nimport type { MenuItemClickEventDetail } from \"@ui5/webcomponents/dist/Menu.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport ItemNavigation from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport \"@ui5/webcomponents-icons/dist/overflow.js\";\nimport {\n\tisPhone,\n\tisTablet,\n\tisCombi,\n} from \"@ui5/webcomponents-base/dist/Device.js\";\nimport {\n\tisSpace,\n\tisEnter,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport NavigationMode from \"@ui5/webcomponents-base/dist/types/NavigationMode.js\";\nimport SideNavigationItemBase from \"./SideNavigationItemBase.js\";\nimport SideNavigationSelectableItemBase from \"./SideNavigationSelectableItemBase.js\";\nimport SideNavigationItem from \"./SideNavigationItem.js\";\nimport SideNavigationSubItem from \"./SideNavigationSubItem.js\";\nimport SideNavigationGroup from \"./SideNavigationGroup.js\";\nimport SideNavigationTemplate from \"./generated/templates/SideNavigationTemplate.lit.js\";\nimport SideNavigationPopoverTemplate from \"./generated/templates/SideNavigationPopoverTemplate.lit.js\";\n\nimport {\n\tSIDE_NAVIGATION_POPOVER_HIDDEN_TEXT,\n\tSIDE_NAVIGATION_COLLAPSED_LIST_ARIA_ROLE_DESC,\n\tSIDE_NAVIGATION_LIST_ARIA_ROLE_DESC,\n\tSIDE_NAVIGATION_OVERFLOW_ACCESSIBLE_NAME,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport SideNavigationCss from \"./generated/themes/SideNavigation.css.js\";\nimport SideNavigationPopoverCss from \"./generated/themes/SideNavigationPopover.css.js\";\n\nconst PAGE_UP_DOWN_SIZE = 10;\n\ntype SideNavigationPopoverContents = {\n\titem: SideNavigationItem,\n\tsubItems: Array<SideNavigationSubItem>,\n};\n\ntype SideNavigationSelectionChangeEventDetail = {\n\titem: SideNavigationItemBase,\n};\n\ntype PopupSideNavigationItem = SideNavigationItem & { associatedItem: SideNavigationSelectableItemBase };\n\n// used for the inner side navigation used in the SideNavigationPopoverTemplate\ntype NavigationMenuClickEventDetail = MenuItemClickEventDetail & {\n\titem: Pick<MenuItemClickEventDetail, \"item\"> & {\n\t\tassociatedItem: SideNavigationSelectableItemBase,\n\t}\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `SideNavigation` is used as a standard menu in applications.\n * It consists of three containers: header (top-aligned), main navigation section (top-aligned) and the secondary section (bottom-aligned).\n *\n * - The header is meant for displaying user related information - profile data, avatar, etc.\n * - The main navigation section is related to the user’s current work context\n * - The secondary section is mostly used to link additional information that may be of interest (legal information, developer communities, external help, contact information and so on).\n *\n * ### Usage\n *\n * Use the available `ui5-side-navigation-group`, `ui5-side-navigation-item`\n * and `ui5-side-navigation-sub-item` components to build your menu.\n * The items can consist of text only or an icon with text. The use or non-use of icons must be consistent for all items on one level.\n * You must not combine entries with and without icons on the same level. We strongly recommend that you do not use icons on the second level.\n *\n * ### Keyboard Handling\n *\n * ### Fast Navigation\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigation.js\"`\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigationGroup.js\";` (for `ui5-side-navigation-group`)\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigationItem.js\";` (for `ui5-side-navigation-item`)\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigationSubItem.js\";` (for `ui5-side-navigation-sub-item`)\n * @constructor\n * @extends UI5Element\n * @since 1.0.0-rc.8\n * @public\n */\n\n@customElement({\n\ttag: \"ui5-side-navigation\",\n\tfastNavigation: true,\n\trenderer: litRender,\n\ttemplate: SideNavigationTemplate,\n\tstaticAreaTemplate: SideNavigationPopoverTemplate,\n\tstyles: SideNavigationCss,\n\tstaticAreaStyles: SideNavigationPopoverCss,\n\tdependencies: [\n\t\tResponsivePopover,\n\t\tSideNavigationGroup,\n\t\tSideNavigationItem,\n\t\tSideNavigationSubItem,\n\t\tNavigationMenu,\n\t],\n})\n/**\n * Fired when the selection has changed via user interaction\n *\n * @param {SideNavigationSelectableItemBase} item the clicked item.\n * @allowPreventDefault\n * @public\n */\n@event<SideNavigationSelectionChangeEventDetail>(\"selection-change\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\titem: { type: HTMLElement },\n\t},\n})\nclass SideNavigation extends UI5Element {\n\t/**\n\t * Defines whether the `ui5-side-navigation` is expanded or collapsed.\n\t *\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tcollapsed!: boolean;\n\n\t/**\n\t * Defines the main items of the `ui5-side-navigation`. Use the `ui5-side-navigation-item` component\n\t * for the top-level items, and the `ui5-side-navigation-sub-item` component for second-level items, nested\n\t * inside the items.\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n\titems!: Array<SideNavigationItemBase>;\n\n\t/**\n\t * Defines the fixed items at the bottom of the `ui5-side-navigation`. Use the `ui5-side-navigation-item` component\n\t * for the fixed items, and optionally the `ui5-side-navigation-sub-item` component to provide second-level items inside them.\n\t *\n\t * **Note:** In order to achieve the best user experience, it is recommended that you keep the fixed items \"flat\" (do not pass sub-items)\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true })\n\tfixedItems!: Array<SideNavigationItemBase>;\n\n\t/**\n\t * Defines the header of the `ui5-side-navigation`.\n\t *\n\t * **Note:** The header is displayed when the component is expanded - the property `collapsed` is false;\n\t *\n\t * @public\n\t * @since 1.0.0-rc.11\n\t */\n\t@slot()\n\theader!: Array<HTMLElement>;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Object })\n\t_popoverContents!: SideNavigationPopoverContents;\n\n\t@property({ type: Boolean })\n\tinPopover!: boolean;\n\t_isOverflow!: boolean;\n\t_flexibleItemNavigation: ItemNavigation;\n\t_fixedItemNavigation: ItemNavigation;\n\n\t@property({ type: Object, multiple: true })\n\t_menuPopoverItems!: Array<HTMLElement>;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tisTouchDevice!: boolean;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._flexibleItemNavigation = new ItemNavigation(this, {\n\t\t\tskipItemsSize: PAGE_UP_DOWN_SIZE, // PAGE_UP and PAGE_DOWN will skip trough 10 items\n\t\t\tnavigationMode: NavigationMode.Vertical,\n\t\t\tgetItemsCallback: () => this.getEnabledFlexibleItems(),\n\t\t});\n\n\t\tthis._fixedItemNavigation = new ItemNavigation(this, {\n\t\t\tskipItemsSize: PAGE_UP_DOWN_SIZE, // PAGE_UP and PAGE_DOWN will skip trough 10 items\n\t\t\tnavigationMode: NavigationMode.Vertical,\n\t\t\tgetItemsCallback: () => this.getEnabledFixedItems(),\n\t\t});\n\n\t\tthis._handleResizeBound = this.handleResize.bind(this);\n\t\tthis._isOverflow = false;\n\t}\n\n\t_handleResizeBound: () => void;\n\n\tonBeforeRendering() {\n\t\tsuper.onBeforeRendering();\n\n\t\tthis._getAllItems(this.items as Array<SideNavigationItem | SideNavigationGroup>).concat(this._getAllItems(this.fixedItems as Array<SideNavigationItem | SideNavigationGroup>)).forEach(item => {\n\t\t\titem.sideNavCollapsed = this.collapsed;\n\t\t\titem.inPopover = this.inPopover;\n\t\t\titem.sideNavigation = this;\n\t\t});\n\t}\n\n\tasync _onAfterPopoverOpen() {\n\t\t// as the tree/list inside the popover is never destroyed,\n\t\t// item navigation index should be managed, because items are\n\t\t// dynamically recreated and tabIndexes are not updated\n\t\tconst tree = await this.getPickerTree();\n\t\tconst selectedItem = tree._findSelectedItem(tree.items as Array<SideNavigationItem | SideNavigationGroup>);\n\t\tif (selectedItem) {\n\t\t\tselectedItem.focus();\n\t\t} else {\n\t\t\ttree.items[0]?.focus();\n\t\t}\n\t}\n\n\tasync _onBeforePopoverOpen() {\n\t\tconst popover = await this.getPicker();\n\t\t(popover?.opener as HTMLElement)?.classList.add(\"ui5-sn-item-active\");\n\t}\n\n\tasync _onBeforePopoverClose() {\n\t\tconst popover = await this.getPicker();\n\t\t(popover?.opener as HTMLElement)?.classList.remove(\"ui5-sn-item-active\");\n\t}\n\n\tasync _onBeforeMenuOpen() {\n\t\tconst popover = await this.getOverflowPopover();\n\t\t(popover?.opener as HTMLElement)?.classList.add(\"ui5-sn-item-active\");\n\t}\n\n\tasync _onBeforeMenuClose() {\n\t\tconst popover = await this.getOverflowPopover();\n\t\t(popover?.opener as HTMLElement)?.classList.remove(\"ui5-sn-item-active\");\n\t}\n\n\tget accSideNavigationPopoverHiddenText() {\n\t\treturn SideNavigation.i18nBundle.getText(SIDE_NAVIGATION_POPOVER_HIDDEN_TEXT);\n\t}\n\n\tget ariaRoleDescNavigationList() {\n\t\tlet key = SIDE_NAVIGATION_LIST_ARIA_ROLE_DESC;\n\t\tif (this.collapsed) {\n\t\t\tkey = SIDE_NAVIGATION_COLLAPSED_LIST_ARIA_ROLE_DESC;\n\t\t}\n\n\t\treturn SideNavigation.i18nBundle.getText(key);\n\t}\n\n\tget overflowAccessibleName() {\n\t\treturn SideNavigation.i18nBundle.getText(SIDE_NAVIGATION_OVERFLOW_ACCESSIBLE_NAME);\n\t}\n\n\tasync handlePopupItemClick(e: KeyboardEvent | PointerEvent) {\n\t\tconst associatedItem = (e.target as PopupSideNavigationItem).associatedItem;\n\n\t\tassociatedItem.fireEvent(\"click\");\n\t\tif (associatedItem.selected) {\n\t\t\tthis.closePicker();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._selectItem(associatedItem);\n\t\tthis.closePicker();\n\n\t\tawait renderFinished();\n\t\tthis._popoverContents.item.getDomRef()!.classList.add(\"ui5-sn-item-no-hover-effect\");\n\t}\n\n\tasync handleOverflowItemClick(e: CustomEvent<NavigationMenuClickEventDetail>) {\n\t\tconst associatedItem = e.detail?.item.associatedItem;\n\n\t\tassociatedItem.fireEvent(\"click\");\n\t\tif (associatedItem.selected) {\n\t\t\tthis.closeMenu();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._selectItem(associatedItem);\n\n\t\tthis.closeMenu();\n\t\tawait renderFinished();\n\n\t\t// When subitem is selected in collapsed mode parent element should be focused\n\t\tif (associatedItem.nodeName.toLowerCase() === \"ui5-side-navigation-sub-item\") {\n\t\t\tconst parent = associatedItem.parentElement as SideNavigationItem;\n\t\t\tthis.focusItem(parent);\n\t\t\tparent?.focus();\n\t\t} else {\n\t\t\tthis.focusItem(associatedItem);\n\t\t\tassociatedItem?.focus();\n\t\t}\n\t}\n\n\tasync getOverflowPopover() {\n\t\treturn (await this.getStaticAreaItemDomRef())!.querySelector<NavigationMenu>(\".ui5-side-navigation-overflow-menu\")!;\n\t}\n\n\tasync getPicker() {\n\t\treturn (await this.getStaticAreaItemDomRef())!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\tasync openPicker(opener: HTMLElement) {\n\t\topener.classList.add(\"ui5-sn-item-active\");\n\n\t\tconst responsivePopover = await this.getPicker();\n\t\tresponsivePopover.opener = opener;\n\t\tresponsivePopover.showAt(opener);\n\t}\n\n\tasync openOverflowMenu(opener: HTMLElement) {\n\t\topener.classList.add(\"ui5-sn-item-active\");\n\n\t\tconst menu = await this.getOverflowPopover();\n\t\tmenu.opener = opener;\n\t\tmenu.showAt(opener);\n\t}\n\n\tasync closePicker() {\n\t\tconst responsivePopover = await this.getPicker();\n\t\tresponsivePopover.close();\n\t}\n\n\tasync closeMenu() {\n\t\tconst menu = await this.getOverflowPopover();\n\t\tmenu.close();\n\t}\n\n\tasync getPickerTree() {\n\t\tconst picker = await this.getPicker();\n\t\treturn picker.querySelector<SideNavigation>(\"[ui5-side-navigation]\")!;\n\t}\n\n\tget hasHeader() {\n\t\treturn !!this.header.length;\n\t}\n\n\tget showHeader() {\n\t\treturn this.hasHeader && !this.collapsed;\n\t}\n\n\tget hasFixedItems() {\n\t\treturn !!this.fixedItems.length;\n\t}\n\n\tget _rootRole() {\n\t\treturn this.inPopover ? \"none\" : undefined;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\troot: {\n\t\t\t\t\"ui5-sn-collapsed\": this.collapsed,\n\t\t\t},\n\t\t};\n\t}\n\n\tgetEnabledFixedItems() : Array<ITabbable> {\n\t\treturn this.getEnabledItems(this.fixedItems as Array<SideNavigationItem | SideNavigationGroup>);\n\t}\n\n\tgetEnabledFlexibleItems() : Array<ITabbable> {\n\t\tconst items = this.getEnabledItems(this.items as Array<SideNavigationItem | SideNavigationGroup>);\n\n\t\tif (this._overflowItem) {\n\t\t\titems.push(this._overflowItem);\n\t\t}\n\n\t\treturn items;\n\t}\n\n\tgetEnabledItems(items: Array<SideNavigationItem | SideNavigationGroup>) : Array<ITabbable> {\n\t\tconst result = new Array<ITabbable>();\n\n\t\tthis._getFocusableItems(items).forEach(item => {\n\t\t\tif (item.classList.contains(\"ui5-sn-item-hidden\")) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (!item.disabled) {\n\t\t\t\tresult.push(item);\n\t\t\t}\n\t\t});\n\n\t\treturn result;\n\t}\n\n\tfocusItem(item: SideNavigationItemBase) {\n\t\tif (item.isFixedItem) {\n\t\t\tthis._fixedItemNavigation.setCurrentItem(item);\n\t\t} else {\n\t\t\tthis._flexibleItemNavigation.setCurrentItem(item);\n\t\t}\n\t}\n\n\tonAfterRendering() {\n\t\tif (!this.getDomRef()?.matches(\":focus-within\")) {\n\t\t\tlet selectedItem = this._findSelectedItem(this.items as Array<SideNavigationItem | SideNavigationGroup>);\n\t\t\tif (selectedItem) {\n\t\t\t\tthis._flexibleItemNavigation.setCurrentItem(selectedItem);\n\t\t\t}\n\n\t\t\tselectedItem = this._findSelectedItem(this.fixedItems as Array<SideNavigationItem | SideNavigationGroup>);\n\t\t\tif (selectedItem) {\n\t\t\t\tthis._fixedItemNavigation.setCurrentItem(selectedItem);\n\t\t\t}\n\t\t}\n\n\t\tif (this.collapsed) {\n\t\t\tthis.handleResize();\n\t\t}\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._handleResizeBound);\n\n\t\tthis.isTouchDevice = isPhone() || (isTablet() && !isCombi());\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._handleResizeBound);\n\t}\n\n\thandleResize() {\n\t\tthis._updateOverflowItems();\n\t}\n\n\t_updateOverflowItems() {\n\t\tconst domRef = this.getDomRef();\n\t\tif (!this.collapsed || !domRef) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst overflowItem = this._overflowItem!;\n\t\tconst flexibleContentDomRef : HTMLElement = domRef.querySelector(\".ui5-sn-flexible\")!;\n\t\tif (!overflowItem) {\n\t\t\treturn null;\n\t\t}\n\n\t\toverflowItem.classList.add(\"ui5-sn-item-hidden\");\n\n\t\tconst overflowItems = this.overflowItems;\n\n\t\tlet itemsHeight = overflowItems.reduce<number>((sum, itemRef) => {\n\t\t\titemRef.classList.remove(\"ui5-sn-item-hidden\");\n\t\t\treturn sum + itemRef.offsetHeight;\n\t\t}, 0);\n\n\t\tconst { paddingTop, paddingBottom } = window.getComputedStyle(flexibleContentDomRef);\n\t\tconst listHeight = flexibleContentDomRef?.offsetHeight - parseInt(paddingTop) - parseInt(paddingBottom);\n\n\t\tif (itemsHeight <= listHeight) {\n\t\t\treturn;\n\t\t}\n\n\t\toverflowItem.classList.remove(\"ui5-sn-item-hidden\");\n\n\t\titemsHeight = overflowItem.offsetHeight;\n\n\t\tconst selectedItem = overflowItems.find(item => {\n\t\t\treturn item instanceof SideNavigationSelectableItemBase && item._selected;\n\t\t});\n\n\t\tif (selectedItem && selectedItem instanceof SideNavigationItemBase) {\n\t\t\tconst selectedItemDomRef = selectedItem.getDomRef();\n\t\t\tconst { marginTop, marginBottom } = window.getComputedStyle(selectedItemDomRef!);\n\n\t\t\titemsHeight += selectedItemDomRef!.offsetHeight + parseFloat(marginTop) + parseFloat(marginBottom);\n\t\t}\n\n\t\toverflowItems.forEach(item => {\n\t\t\tif (item === selectedItem) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet itemDomRef;\n\n\t\t\tif (item instanceof SideNavigationItemBase) {\n\t\t\t\titemDomRef = item.getDomRef()!;\n\t\t\t} else {\n\t\t\t\titemDomRef = item;\n\t\t\t}\n\n\t\t\tconst { marginTop, marginBottom } = window.getComputedStyle(itemDomRef);\n\t\t\titemsHeight += itemDomRef.offsetHeight + parseFloat(marginTop) + parseFloat(marginBottom);\n\n\t\t\tif (itemsHeight > listHeight) {\n\t\t\t\titem.classList.add(\"ui5-sn-item-hidden\");\n\t\t\t}\n\t\t});\n\n\t\tthis._flexibleItemNavigation._init();\n\t}\n\n\t_findFocusedItem(items: Array<SideNavigationItem | SideNavigationGroup>) : SideNavigationItemBase | undefined {\n\t\treturn this._getFocusableItems(items).find(item => item.forcedTabIndex === \"0\");\n\t}\n\n\t_getSelectableItems(items: Array<SideNavigationItem | SideNavigationGroup>) : Array<SideNavigationSelectableItemBase> {\n\t\treturn items.reduce((result, item) => {\n\t\t\treturn result.concat(item.selectableItems);\n\t\t}, new Array<SideNavigationSelectableItemBase>());\n\t}\n\n\t_getFocusableItems(items: Array<SideNavigationItem | SideNavigationGroup>) : Array<SideNavigationItemBase> {\n\t\treturn items.reduce((result, item) => {\n\t\t\treturn result.concat(item.focusableItems);\n\t\t}, new Array<SideNavigationItemBase>());\n\t}\n\n\t_getAllItems(items: Array<SideNavigationItem | SideNavigationGroup>) : Array<SideNavigationItemBase> {\n\t\treturn items.reduce((result, item) => {\n\t\t\treturn result.concat(item.allItems);\n\t\t}, new Array<SideNavigationItemBase>());\n\t}\n\n\t_findSelectedItem(items: Array<SideNavigationItem | SideNavigationGroup>) : SideNavigationSelectableItemBase | undefined {\n\t\treturn this._getSelectableItems(items).find(item => item._selected);\n\t}\n\n\tget overflowItems() : Array<HTMLElement> {\n\t\treturn (this.items as Array<SideNavigationItem | SideNavigationGroup>).reduce((result, item) => {\n\t\t\treturn result.concat(item.overflowItems);\n\t\t}, new Array<HTMLElement>());\n\t}\n\n\t_handleItemClick(e: KeyboardEvent | PointerEvent, item: SideNavigationSelectableItemBase) {\n\t\tif (item.selected && !this.collapsed) {\n\t\t\titem.fireEvent(\"click\");\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.collapsed && item instanceof SideNavigationItem && item.items.length) {\n\t\t\te.preventDefault();\n\t\t\tthis._isOverflow = false;\n\n\t\t\tthis._popoverContents = {\n\t\t\t\titem,\n\t\t\t\tsubItems: item.items,\n\t\t\t};\n\n\t\t\tthis.openPicker(item.getFocusDomRef() as HTMLElement);\n\t\t} else {\n\t\t\titem.fireEvent(\"click\");\n\n\t\t\tif (!item.selected) {\n\t\t\t\tthis._selectItem(item);\n\t\t\t}\n\t\t}\n\t}\n\n\t_handleOverflowClick() {\n\t\tthis._isOverflow = true;\n\t\tthis._menuPopoverItems = this._getOverflowItems();\n\n\t\tthis.openOverflowMenu(this._overflowItem!.getFocusDomRef() as HTMLElement);\n\t}\n\n\t_getOverflowItems(): Array<SideNavigationSelectableItemBase> {\n\t\tconst overflowClass = \"ui5-sn-item-hidden\";\n\t\tconst result: Array<SideNavigationSelectableItemBase> = [];\n\n\t\tthis.overflowItems.forEach(item => {\n\t\t\tif (item instanceof SideNavigationSelectableItemBase\n\t\t\t\t&& item.classList.contains(overflowClass)) {\n\t\t\t\t result.push(item);\n\t\t\t}\n\t\t});\n\n\t\treturn result;\n\t}\n\n\t_selectItem(item: SideNavigationSelectableItemBase) {\n\t\tif (item.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this.fireEvent<SideNavigationSelectionChangeEventDetail>(\"selection-change\", { item }, true)) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet items = this._getSelectableItems(this.items as Array<SideNavigationItem | SideNavigationGroup>);\n\t\titems = items.concat(this._getSelectableItems(this.fixedItems as Array<SideNavigationItem | SideNavigationGroup>));\n\n\t\titems.forEach(current => {\n\t\t\tcurrent.selected = false;\n\t\t});\n\n\t\titem.selected = true;\n\t}\n\n\tget _overflowItem() {\n\t\tconst overflowItem = this.shadowRoot!.querySelector<SideNavigationItem>(\".ui5-sn-item-overflow\");\n\t\tif (overflowItem) {\n\t\t\toverflowItem.sideNavigation = this;\n\t\t}\n\n\t\treturn overflowItem;\n\t}\n\n\tget isOverflow() {\n\t\treturn this._isOverflow;\n\t}\n\n\t_onkeydownOverflow(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis._handleOverflowClick();\n\t\t}\n\t}\n\n\t_onkeyupOverflow(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis._handleOverflowClick();\n\t\t}\n\t}\n\tstatic async onDefine() {\n\t\t[SideNavigation.i18nBundle] = await Promise.all([\n\t\t\tgetI18nBundle(\"@ui5/webcomponents-fiori\"),\n\t\t\tsuper.onDefine(),\n\t\t]);\n\t}\n}\n\nSideNavigation.define();\n\nexport default SideNavigation;\n\nexport type {\n\tSideNavigationSelectionChangeEventDetail,\n};\n"]}
|
package/dist/css/themes/Bar.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
:host{background-color:var(--sapPageHeader_Background);height:var(--_ui5-v1-24-
|
|
1
|
+
:host{background-color:var(--sapPageHeader_Background);height:var(--_ui5-v1-24-2_bar_base_height);width:100%;box-shadow:var(--sapContent_HeaderShadow);display:block}.ui5-bar-root{display:flex;align-items:center;justify-content:space-between;height:inherit;width:inherit;background-color:inherit;box-shadow:inherit;border-radius:inherit}.ui5-bar-root .ui5-bar-startcontent-container{padding-inline-start:var(--_ui5-v1-24-2_bar-start-container-padding-start);display:flex;flex-direction:row;align-items:center;justify-content:flex-start}.ui5-bar-root .ui5-bar-content-container{min-width:calc(30% - calc(var(--_ui5-v1-24-2_bar-start-container-padding-start) + var(--_ui5-v1-24-2_bar-end-container-padding-end) + (2*var(--_ui5-v1-24-2_bar-mid-container-padding-start-end))))}.ui5-bar-root.ui5-bar-root-shrinked .ui5-bar-content-container{min-width:0px;overflow:hidden;height:100%}.ui5-bar-root .ui5-bar-endcontent-container{padding-inline-end:var(--_ui5-v1-24-2_bar-end-container-padding-end);display:flex;flex-direction:row;align-items:center;justify-content:flex-end}.ui5-bar-root .ui5-bar-midcontent-container{padding:0 var(--_ui5-v1-24-2_bar-mid-container-padding-start-end);display:flex;flex-direction:row;align-items:center;justify-content:center}:host([design="Footer"]){background-color:var(--sapPageFooter_Background);border-top:.0625rem solid var(--sapPageFooter_BorderColor);box-shadow:none}:host([design="Subheader"]){height:var(--_ui5-v1-24-2_bar_subheader_height);margin-top:var(--_ui5-v1-24-2_bar_subheader_margin-top)}:host([design="FloatingFooter"]){border-radius:var(--sapElement_BorderCornerRadius);background-color:var(--sapPageFooter_Background);box-shadow:var(--sapContent_Shadow1);border:none}::slotted(*){margin:0 .25rem}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ui5-hidden-text{position:absolute;clip:rect(1px,1px,1px,1px);user-select:none;left:-1000px;top:-1000px;pointer-events:none;font-size:0}:host(:not([hidden])){display:block;background:var(--_ui5-v1-24-
|
|
1
|
+
.ui5-hidden-text{position:absolute;clip:rect(1px,1px,1px,1px);user-select:none;left:-1000px;top:-1000px;pointer-events:none;font-size:0}:host(:not([hidden])){display:block;background:var(--_ui5-v1-24-2_fcl_solid_bg)}.ui5-fcl-root{height:100%;display:flex;flex-direction:row}.ui5-fcl-column{background:inherit;box-sizing:border-box;will-change:width;overflow-y:auto}.ui5-fcl-column-animation{transition:width .56s cubic-bezier(.1,0,.05,1),visibility .56s ease-in}:host([_visible-columns="2"]) .ui5-fcl-column--start{border-inline-end:var(--_ui5-v1-24-2_fcl_column_border)}:host([_visible-columns="3"]) .ui5-fcl-column--start{border-inline-end:var(--_ui5-v1-24-2_fcl_column_border)}:host([_visible-columns="2"]) .ui5-fcl-column--middle{border-inline-start:var(--_ui5-v1-24-2_fcl_column_border)}:host([_visible-columns="3"]) .ui5-fcl-column--middle{border-inline-start:var(--_ui5-v1-24-2_fcl_column_border)}:host([_visible-columns="3"]) .ui5-fcl-column--middle{border-inline-end:var(--_ui5-v1-24-2_fcl_column_border)}:host([_visible-columns="3"]) .ui5-fcl-column--end{border-inline-start:var(--_ui5-v1-24-2_fcl_column_border)}.ui5-fcl-column--hidden{display:none}.ui5-fcl-arrow-container{display:flex;align-items:center;justify-content:center;width:1rem;background-color:var(--sapShell_Background)}.ui5-fcl-arrow{position:relative;width:1.5rem;height:1.5rem;min-width:1.5rem;will-change:transform;overflow:visible;z-index:1}.ui5-fcl-arrow:before{background-image:var(--_ui5-v1-24-2_fcl_decoration_top);background-position-y:-.3125rem;bottom:100%}.ui5-fcl-arrow:after{background-image:var(--_ui5-v1-24-2_fcl_decoration_bottom);background-position-y:.3125rem;top:100%}.ui5-fcl-arrow:before,.ui5-fcl-arrow:after{content:"";position:absolute;left:0;height:4rem;width:100%;transition:all .1s ease-in;background-repeat:no-repeat;background-size:.0625rem 100%;background-position-x:calc(50% - .03125rem)}.ui5-fcl-arrow:hover:before,.ui5-fcl-arrow:hover:after{height:7rem}[aria-hidden] ::slotted([slot="startColumn"]),[aria-hidden] ::slotted([slot="midColumn"]),[aria-hidden] ::slotted([slot="endColumn"]){visibility:hidden}
|