@ui5/webcomponents-fiori 2.8.0-rc.1 → 2.8.0-rc.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 +11 -0
- package/cypress/specs/ShellBar.cy.tsx +102 -44
- package/dist/.tsbuildinfo +1 -1
- package/dist/ShellBar.d.ts +45 -52
- package/dist/ShellBar.js +215 -256
- package/dist/ShellBar.js.map +1 -1
- package/dist/ShellBarTemplate.js +34 -16
- package/dist/ShellBarTemplate.js.map +1 -1
- package/dist/css/themes/DynamicPage.css +1 -1
- package/dist/css/themes/DynamicPageHeader.css +1 -1
- package/dist/css/themes/DynamicPageHeaderActions.css +1 -1
- package/dist/css/themes/DynamicPageTitle.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/NavigationMenu.css +1 -1
- package/dist/css/themes/NavigationMenuItem.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/NotificationStateIcon.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/ShellBarPopover.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/TimelineGroupItem.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_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 +1 -1
- package/dist/custom-elements.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/themes/DynamicPage.css.d.ts +1 -1
- package/dist/generated/themes/DynamicPage.css.js +1 -1
- package/dist/generated/themes/DynamicPage.css.js.map +1 -1
- package/dist/generated/themes/DynamicPageHeader.css.d.ts +1 -1
- package/dist/generated/themes/DynamicPageHeader.css.js +1 -1
- package/dist/generated/themes/DynamicPageHeader.css.js.map +1 -1
- package/dist/generated/themes/DynamicPageHeaderActions.css.d.ts +1 -1
- package/dist/generated/themes/DynamicPageHeaderActions.css.js +1 -1
- package/dist/generated/themes/DynamicPageHeaderActions.css.js.map +1 -1
- package/dist/generated/themes/DynamicPageTitle.css.d.ts +1 -1
- package/dist/generated/themes/DynamicPageTitle.css.js +1 -1
- package/dist/generated/themes/DynamicPageTitle.css.js.map +1 -1
- package/dist/generated/themes/FlexibleColumnLayout.css.d.ts +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.d.ts +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.d.ts +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/NavigationMenu.css.d.ts +1 -1
- package/dist/generated/themes/NavigationMenu.css.js +1 -1
- package/dist/generated/themes/NavigationMenu.css.js.map +1 -1
- package/dist/generated/themes/NavigationMenuItem.css.d.ts +1 -1
- package/dist/generated/themes/NavigationMenuItem.css.js +1 -1
- package/dist/generated/themes/NavigationMenuItem.css.js.map +1 -1
- package/dist/generated/themes/NotificationListGroupItem.css.d.ts +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.d.ts +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.d.ts +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/NotificationStateIcon.css.d.ts +1 -1
- package/dist/generated/themes/NotificationStateIcon.css.js +1 -1
- package/dist/generated/themes/NotificationStateIcon.css.js.map +1 -1
- package/dist/generated/themes/Page.css.d.ts +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.d.ts +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.d.ts +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/ShellBarPopover.css.d.ts +1 -1
- package/dist/generated/themes/ShellBarPopover.css.js +1 -1
- package/dist/generated/themes/ShellBarPopover.css.js.map +1 -1
- package/dist/generated/themes/SideNavigation.css.d.ts +1 -1
- package/dist/generated/themes/SideNavigation.css.js +1 -1
- package/dist/generated/themes/SideNavigation.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationGroup.css.d.ts +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.d.ts +1 -1
- package/dist/generated/themes/SideNavigationItem.css.js +1 -1
- package/dist/generated/themes/SideNavigationItem.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationItemBase.css.d.ts +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.d.ts +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.d.ts +1 -1
- package/dist/generated/themes/SideNavigationSubItem.css.js +1 -1
- package/dist/generated/themes/SideNavigationSubItem.css.js.map +1 -1
- package/dist/generated/themes/Timeline.css.d.ts +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/TimelineGroupItem.css.d.ts +1 -1
- package/dist/generated/themes/TimelineGroupItem.css.js +1 -1
- package/dist/generated/themes/TimelineGroupItem.css.js.map +1 -1
- package/dist/generated/themes/TimelineItem.css.d.ts +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.d.ts +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.d.ts +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.d.ts +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.d.ts +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.d.ts +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_fiori_3/parameters-bundle.css.d.ts +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.d.ts +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.d.ts +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.d.ts +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.d.ts +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.d.ts +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.d.ts +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.d.ts +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.d.ts +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.d.ts +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.d.ts +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.d.ts +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/vscode.html-custom-data.json +1 -1
- package/dist/web-types.json +3 -3
- package/package.json +8 -8
- package/src/ShellBarTemplate.tsx +145 -117
- package/src/themes/FlexibleColumnLayout.css +4 -3
- package/src/themes/ShellBar.css +26 -28
- package/src/themes/base/FlexibleColumnLayout-parameters.css +0 -1
- package/src/themes/base/ShellBar-parameters.css +1 -1
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 { renderFinished } from \"@ui5/webcomponents-base/dist/Render.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-strict.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport {\n\tisSpace,\n\tisEnter,\n\tisLeft,\n\tisRight,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport ListItemStandard from \"@ui5/webcomponents/dist/ListItemStandard.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 Menu from \"@ui5/webcomponents/dist/Menu.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 type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport search from \"@ui5/webcomponents-icons/dist/search.js\";\nimport da from \"@ui5/webcomponents-icons/dist/da.js\";\nimport bell from \"@ui5/webcomponents-icons/dist/bell.js\";\nimport overflow from \"@ui5/webcomponents-icons/dist/overflow.js\";\nimport grid from \"@ui5/webcomponents-icons/dist/grid.js\";\nimport type {\n\tClassMap,\n\tAccessibilityAttributes,\n\tAriaRole,\n} from \"@ui5/webcomponents-base\";\nimport type ListItemBase from \"@ui5/webcomponents/dist/ListItemBase.js\";\nimport type PopoverHorizontalAlign from \"@ui5/webcomponents/dist/types/PopoverHorizontalAlign.js\";\nimport throttle from \"@ui5/webcomponents-base/dist/util/throttle.js\";\nimport { getScopedVarName } from \"@ui5/webcomponents-base/dist/CustomElementsScope.js\";\nimport getActiveElement from \"@ui5/webcomponents-base/dist/util/getActiveElement.js\";\n\nimport type ShellBarItem from \"./ShellBarItem.js\";\n\n// Templates\nimport ShellBarTemplate from \"./ShellBarTemplate.js\";\n\n// Styles\nimport shellBarStyles from \"./generated/themes/ShellBar.css.js\";\nimport ShellBarPopoverCss from \"./generated/themes/ShellBarPopover.css.js\";\n\nimport {\n\tSHELLBAR_LABEL,\n\tSHELLBAR_LOGO,\n\tSHELLBAR_NOTIFICATIONS,\n\tSHELLBAR_NOTIFICATIONS_NO_COUNT,\n\tSHELLBAR_CANCEL,\n\tSHELLBAR_PROFILE,\n\tSHELLBAR_PRODUCTS,\n\tSHELLBAR_SEARCH,\n\tSHELLBAR_SEARCH_FIELD,\n\tSHELLBAR_OVERFLOW,\n\tSHELLBAR_LOGO_AREA,\n\tSHELLBAR_ADDITIONAL_CONTEXT,\n\tSHELLBAR_SEARCHFIELD_DESCRIPTION,\n\tSHELLBAR_SEARCH_BTN_OPEN,\n\tSHELLBAR_PRODUCT_SWITCH_BTN,\n} from \"./generated/i18n/i18n-defaults.js\";\n\ntype ShellBarLogoAccessibilityAttributes = {\n\trole?: Extract<AriaRole, \"button\" | \"link\">,\n\tname?: string,\n}\ntype ShellBarProfileAccessibilityAttributes = Pick<AccessibilityAttributes, \"name\" | \"expanded\" | \"hasPopup\">;\ntype ShellBarAreaAccessibilityAttributes = Pick<AccessibilityAttributes, \"hasPopup\" | \"expanded\">;\ntype ShellBarAccessibilityAttributes = {\n\tlogo?: ShellBarLogoAccessibilityAttributes\n\tnotifications?: ShellBarAreaAccessibilityAttributes\n\tprofile?: ShellBarProfileAccessibilityAttributes,\n\tproduct?: ShellBarAreaAccessibilityAttributes\n\tsearch?: ShellBarAreaAccessibilityAttributes\n\toverflow?: ShellBarAreaAccessibilityAttributes\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 ShellBarMenuItemClickEventDetail = {\n\titem: HTMLElement;\n};\n\ntype ShellBarContentItemVisibilityChangeEventDetail = {\n\titems: Array<HTMLElement>\n};\n\ntype ShellBarSearchButtonEventDetail = {\n\ttargetRef: HTMLElement;\n\tsearchFieldVisible: boolean;\n};\n\ninterface IShelBarItemInfo {\n\tid: string,\n\ticon?: string,\n\ttext?: string,\n\tshow: boolean,\n\tcount?: string,\n\tcustom?: boolean,\n\ttitle?: string,\n\tstableDomRef?: string,\n\trefItemid?: string,\n\tpress: (e: MouseEvent) => void,\n\tdomOrder: number,\n\tclasses: string,\n\torder?: number,\n\tprofile?: boolean,\n\ttooltip?: string,\n}\n\nconst RESIZE_THROTTLE_RATE = 40; // ms\n\n// actions always visible in lean mode, order is important\nconst PREDEFINED_PLACE_ACTIONS = [\"feedback\", \"sys-help\"];\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 * - 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: jsxRenderer,\n\ttemplate: ShellBarTemplate,\n\tstyles: [shellBarStyles, ShellBarPopoverCss],\n\tdependencies: [\n\t\tButton,\n\t\tIcon,\n\t\tList,\n\t\tPopover,\n\t\tListItemStandard,\n\t\tMenu,\n\t],\n})\n/**\n *\n * Fired, when the notification icon is activated.\n * @param {HTMLElement} targetRef dom ref of the activated element\n * @public\n */\n@event(\"notifications-click\", {\n\tcancelable: true,\n\tbubbles: true,\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(\"profile-click\", {\n\tbubbles: true,\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 * @param {HTMLElement} targetRef dom ref of the activated element\n * @public\n */\n@event(\"product-switch-click\", {\n\tcancelable: true,\n\tbubbles: true,\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(\"logo-click\", {\n\tbubbles: true,\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(\"menu-item-click\", {\n\tbubbles: true,\n\tcancelable: true,\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 * @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(\"search-button-click\", {\n\tcancelable: true,\n\tbubbles: true,\n})\n\n/**\n * Fired, when an item from the content slot is hidden or shown.\n * **Note:** The `content-item-visibility-change` event is in an experimental state and is a subject to change.\n *\n * @param {Array<HTMLElement>} array of all the items that are hidden\n * @public\n * @since 2.7.0\n */\n@event(\"content-item-visibility-change\", {\n\tbubbles: true,\n})\n\nclass ShellBar extends UI5Element {\n\teventDetails!: {\n\t\t\"notifications-click\": ShellBarNotificationsClickEventDetail,\n\t\t\"profile-click\": ShellBarProfileClickEventDetail,\n\t\t\"product-switch-click\": ShellBarProductSwitchClickEventDetail,\n\t\t\"logo-click\": ShellBarLogoClickEventDetail,\n\t\t\"menu-item-click\": ShellBarMenuItemClickEventDetail,\n\t\t\"search-button-click\": ShellBarSearchButtonEventDetail,\n\t\t\"content-item-visibility-change\": ShellBarContentItemVisibilityChangeEventDetail\n\t}\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 undefined\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 undefined\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 undefined\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 = false;\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 = false;\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 = false;\n\n\t/**\n\t * Defines additional accessibility attributes on different areas of the component.\n\t *\n\t * The accessibilityAttributes object has the following fields,\n\t * where each field is an object supporting one or more accessibility attributes:\n\t *\n\t * - **logo** - `logo.role` and `logo.name`.\n\t * - **notifications** - `notifications.expanded` and `notifications.hasPopup`.\n\t * - **profile** - `profile.expanded`, `profile.hasPopup` and `profile.name`.\n\t * - **product** - `product.expanded` and `product.hasPopup`.\n\t * - **search** - `search.hasPopup`.\n\t * - **overflow** - `overflow.expanded` and `overflow.hasPopup`.\n\t *\n\t * The accessibility attributes support the following values:\n\t *\n\t * - **role**: Defines the accessible ARIA role of the logo area.\n\t * Accepts the following string values: `button` or `link`.\n\t *\n\t * - **expanded**: Indicates whether the button, or another grouping element it controls,\n\t * is currently expanded or collapsed.\n\t * Accepts the following string values: `true` or `false`.\n\t *\n\t * - **hasPopup**: Indicates the availability and type of interactive popup element,\n\t * such as menu or dialog, that can be triggered by the button.\n\t *\n\t * Accepts the following string values: `dialog`, `grid`, `listbox`, `menu` or `tree`.\n\t * - **name**: Defines the accessible ARIA name of the area.\n\t * Accepts any string.\n\t *\n\t * @default {}\n\t * @public\n\t * @since 1.10.0\n\t */\n\t@property({ type: Object })\n\taccessibilityAttributes: ShellBarAccessibilityAttributes = {};\n\n\t/**\n\t * @private\n\t */\n\t@property()\n\tbreakpointSize = \"S\";\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\twithLogo = false;\n\n\t@property({ type: Object })\n\t_itemsInfo!: Array<IShelBarItemInfo>;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_menuPopoverExpanded = false;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_overflowPopoverExpanded = false;\n\n\t@property({ type: Boolean, noAttribute: true })\n\thasVisibleStartContent = false;\n\n\t@property({ type: Boolean, noAttribute: true })\n\thasVisibleEndContent = false;\n\n\t_cachedHiddenContent: Array<HTMLElement> = [];\n\n\t/**\n\t * Defines the assistant slot.\n\t *\n\t * @since 2.0.0\n\t * @public\n\t */\n\t@slot()\n\tassistant!: Array<IButton>;\n\n\t/**\n\t * Defines the `ui5-shellbar` additional 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 a start button.\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 menu 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\t/**\n\t * Define the items displayed in the additional content area.\n\t * **Note:** The `content` slot is in an experimental state and is a subject to change.\n\t *\n\t * @public\n\t * @since 2.7.0\n\t */\n\t@slot({ type: HTMLElement, individualSlots: true })\n\tcontent!: Array<UI5Element>;\n\n\t@i18n(\"@ui5/webcomponents-fiori\")\n\tstatic i18nBundle: I18nBundle;\n\toverflowPopover?: Popover | null;\n\tmenuPopover?: Popover | null;\n\t_isInitialRendering: boolean;\n\t_defaultItemPressPrevented: boolean;\n\tadditionalContextObserver: MutationObserver;\n\t_hiddenIcons: Array<IShelBarItemInfo>;\n\t_handleResize: ResizeObserverCallback;\n\t_overflowNotifications: string | null;\n\t_lastOffsetWidth = 0;\n\t_observableContent: Array<HTMLElement> = [];\n\t_searchBarAutoOpen: boolean = false;\n\t_searchBarAutoClosed: boolean = false;\n\t_searchIconPressed: boolean = false;\n\n\t_headerPress: () => void;\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._hiddenIcons = [];\n\t\tthis._itemsInfo = [];\n\t\tthis._isInitialRendering = true;\n\t\tthis._overflowNotifications = null;\n\n\t\t// marks if preventDefault() is called in item's press handler\n\t\tthis._defaultItemPressPrevented = false;\n\n\t\tthis.additionalContextObserver = new MutationObserver(() => {\n\t\t\tthis._updateAdditionalContextItems();\n\t\t});\n\n\t\tthis._headerPress = () => {\n\t\t\tif (this.hasMenuItems) {\n\t\t\t\tconst menuPopover = this._getMenuPopover();\n\t\t\t\tmenuPopover.opener = this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-menu-button\")!;\n\t\t\t\tmenuPopover.open = true;\n\t\t\t}\n\t\t};\n\n\t\tthis._handleResize = throttle(() => {\n\t\t\tthis.menuPopover = this._getMenuPopover();\n\t\t\tthis.overflowPopover = this._getOverflowPopover();\n\t\t\tthis.overflowPopover.open = false;\n\t\t\tif (this._lastOffsetWidth !== this.offsetWidth) {\n\t\t\t\tthis._overflowActions();\n\t\t\t\tif (this._searchBarAutoOpen) {\n\t\t\t\t\tthis._searchBarInitialState();\n\t\t\t\t}\n\t\t\t}\n\t\t}, RESIZE_THROTTLE_RATE);\n\t}\n\n\t_searchBarInitialState() {\n\t\tconst spacerWidth = this.shadowRoot!.querySelector(\".ui5-shellbar-spacer\") ? this.shadowRoot!.querySelector(\".ui5-shellbar-spacer\")!.getBoundingClientRect().width : 0;\n\t\tconst searchFieldWidth = this.domCalculatedValues(\"--_ui5_shellbar_search_field_width\");\n\t\tif (this._searchIconPressed || document.activeElement === this.searchField[0]) {\n\t\t\treturn;\n\t\t}\n\t\tif (this._showFullWidthSearch) {\n\t\t\tthis.showSearchField = false;\n\t\t\tthis._searchBarAutoClosed = true;\n\t\t\treturn;\n\t\t}\n\t\tif ((spacerWidth <= 0 || this.additionalContextHidden.length !== 0) && this.showSearchField === true) {\n\t\t\tthis.showSearchField = false;\n\t\t\tthis._searchBarAutoClosed = true;\n\t\t}\n\t\tif (spacerWidth > searchFieldWidth && this.additionalContextHidden.length === 0 && this.showSearchField === false) {\n\t\t\tthis.showSearchField = true;\n\t\t\tthis._searchBarAutoClosed = false;\n\t\t}\n\t}\n\n\t_onKeyDown(e: KeyboardEvent) {\n\t\tconst items = this._getVisibleAndInteractiveItems();\n\t\tconst activeElement = getActiveElement();\n\t\tconst currentIndex = items.findIndex(el => el === activeElement);\n\n\t\tif (isLeft(e) || isRight(e)) {\n\t\t\te.preventDefault();// Prevent the default behavior to avoid any further automatic focus movemen\n\n\t\t\t// Focus navigation based on the key pressed\n\t\t\tif (isLeft(e)) {\n\t\t\t\tthis._focusPreviousItem(items, currentIndex);\n\t\t\t} else if (isRight(e)) {\n\t\t\t\tthis._focusNextItem(items, currentIndex);\n\t\t\t}\n\t\t}\n\t}\n\n\t_focusNextItem(items: HTMLElement[], currentIndex: number) {\n\t\tif (currentIndex < items.length - 1) {\n\t\t\t(items[currentIndex + 1]).focus(); // Focus the next element\n\t\t}\n\t}\n\n\t_focusPreviousItem(items: HTMLElement[], currentIndex: number) {\n\t\tif (currentIndex > 0) {\n\t\t\t(items[currentIndex - 1]).focus(); // Focus the previous element\n\t\t}\n\t}\n\n\t_isVisible(element: HTMLElement): boolean {\n\t\tconst style = getComputedStyle(element);\n\n\t\treturn style.display !== \"none\" && style.visibility !== \"hidden\" && element.offsetWidth > 0 && element.offsetHeight > 0;\n\t}\n\n\t_isInteractive(element: HTMLElement | UI5Element): boolean {\n\t\tconst component = element as UI5Element;\n\t\tif (component.isUI5Element) {\n\t\t\tconst dom = component.getFocusDomRef();\n\t\t\treturn dom?.tabIndex === 0;\n\t\t}\n\t\treturn element.tabIndex === 0;\n\t}\n\n\t_getNavigableContent() {\n\t\treturn [\n\t\t\t...this.startButton,\n\t\t\t...this.logo,\n\t\t\t...this.shadowRoot!.querySelectorAll(\".ui5-shellbar-logo\"),\n\t\t\t...this.shadowRoot!.querySelectorAll(\".ui5-shellbar-logo-area\"),\n\t\t\t...this.shadowRoot!.querySelectorAll(\".ui5-shellbar-menu-button\"),\n\t\t\t...this.additionalContext,\n\t\t\t...this._getRightChildItems(),\n\t\t] as HTMLElement[];\n\t}\n\n\t_getRightChildItems() {\n\t\treturn [\n\t\t\t...this.searchField,\n\t\t\t...this.shadowRoot!.querySelectorAll(\".ui5-shellbar-search-item-for-arrow-nav\"),\n\t\t\t...this.assistant,\n\t\t\t...this.shadowRoot!.querySelectorAll(\".ui5-shellbar-items-for-arrow-nav\"),\n\t\t] as HTMLElement[];\n\t}\n\n\t_getVisibleAndInteractiveItems() {\n\t\tconst items = this._getNavigableContent();\n\t\tconst visibleAndInteractiveItems = items.filter(item => {\n\t\t\treturn this._isVisible(item) && this._isInteractive(item);\n\t\t});\n\n\t\treturn visibleAndInteractiveItems;\n\t}\n\n\t_menuItemPress(e: CustomEvent<ListSelectionChangeEventDetail>) {\n\t\tconst shouldContinue = this.fireDecoratorEvent(\"menu-item-click\", {\n\t\t\titem: e.detail.selectedItems[0],\n\t\t});\n\t\tif (shouldContinue) {\n\t\t\tthis.menuPopover!.open = false;\n\t\t}\n\t}\n\n\t_logoPress() {\n\t\tthis.fireDecoratorEvent(\"logo-click\", {\n\t\t\ttargetRef: this.shadowRoot!.querySelector<HTMLElement>(\".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_calculateCSSREMValue(styleSet: CSSStyleDeclaration, propertyName: string): number {\n\t\treturn Number(styleSet.getPropertyValue(propertyName).replace(\"rem\", \"\")) * parseInt(getComputedStyle(document.body).getPropertyValue(\"font-size\"));\n\t}\n\n\t_parsePxValue(styleSet: CSSStyleDeclaration, propertyName: string): number {\n\t\treturn Number(styleSet.getPropertyValue(propertyName).replace(\"px\", \"\"));\n\t}\n\n\tdomCalculatedValues(cssVar: string): number {\n\t\tconst shellbarComputerStyle = getComputedStyle(this.getDomRef()!);\n\t\treturn this._calculateCSSREMValue(shellbarComputerStyle, getScopedVarName(cssVar)); // px\n\t}\n\n\tonBeforeRendering() {\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._observeAdditionalContextItems();\n\t\tthis._updateSeparatorsVisibility();\n\t}\n\n\tget additionalContextSorted() {\n\t\treturn this.additionalContext.sort((a, b) => {\n\t\t\treturn parseInt(a.getAttribute(\"data-hide-order\") || \"0\") - parseInt(b.getAttribute(\"data-hide-order\") || \"0\");\n\t\t}).map(item => this.shadowRoot!.querySelector<HTMLElement>(`#${item.slot}`)).filter(item => item !== null);\n\t}\n\n\tget additionalContextContainer() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\".ui5-shellbar-overflow-container-additional-content\");\n\t}\n\n\tonAfterRendering() {\n\t\trequestAnimationFrame(() => {\n\t\t\tthis._lastOffsetWidth = this.offsetWidth;\n\t\t\tthis._overflowActions();\n\t\t});\n\t\tthis._searchBarAutoOpen = this._searchBarAutoClosed || (this.showSearchField && !this._searchIconPressed);\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.open = false;\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\t}\n\n\t_hideOverflowItems(hiddenItems: number, items: IShelBarItemInfo[]) {\n\t\tfor (let i = 0; hiddenItems > 0 && i < items.length; i++) {\n\t\t\t// start from last item\n\t\t\tconst item = items[items.length - 1 - i];\n\t\t\tif (item.classes.indexOf(\"ui5-shellbar-no-overflow-button\") === -1) {\n\t\t\t\titem.classes = `${item.classes} ui5-shellbar-hidden-button`;\n\t\t\t\thiddenItems--;\n\t\t\t}\n\t\t}\n\n\t\t// assistant is a slot, still described in the itemsInfo for the purpose of the overflow\n\t\t// so if marked as hidden, it should be hidden separately\n\t\tthis._updateAssistantIconVisibility(items);\n\n\t\treturn hiddenItems;\n\t}\n\n\t_hideAdditionalContext() {\n\t\tconst container = this.additionalContextContainer;\n\t\tconst totalWidth = container?.offsetWidth || 0;\n\n\t\tconst additionalContextSorted = this.additionalContextSorted.toReversed();\n\n\t\tlet usedWidth = 0;\n\n\t\tfor (let i = 0; i < additionalContextSorted.length; i++) {\n\t\t\tconst item = additionalContextSorted[i];\n\t\t\titem.classList.remove(\"ui5-shellbar-hidden-button\");\n\n\t\t\tconst itemWidth = item.offsetWidth + parseInt(getComputedStyle(item).getPropertyValue(\"margin-inline-start\"));\n\t\t\tusedWidth += itemWidth;\n\n\t\t\tif (usedWidth > totalWidth) {\n\t\t\t\titem.classList.add(\"ui5-shellbar-hidden-button\");\n\t\t\t}\n\t\t}\n\t}\n\n\t_handleActionsOverflow() {\n\t\tconst itemsToOverflow = this.itemsToOverflow;\n\t\tconst container = this.shadowRoot!.querySelector<HTMLElement>(\".ui5-shellbar-overflow-container-right\")!;\n\t\tconst searchFieldWidth = this.searchField[0] ? this.searchField[0].offsetWidth : 0;\n\t\tconst nonDisappearingItems = Array.from(container.querySelectorAll<HTMLElement>(\".ui5-shellbar-no-overflow-button\"));\n\t\tconst nonDisappearingItemsWidth = nonDisappearingItems.reduce((acc, el) => acc + el.offsetWidth + this.domCalculatedValues(\"--_ui5-shellbar-overflow-button-margin\"), 0);\n\t\tlet totalWidth = container.offsetWidth - nonDisappearingItemsWidth - this.separatorsWidth;\n\t\tif (this.additionalContext.length === 0) {\n\t\t\ttotalWidth -= searchFieldWidth;\n\t\t}\n\n\t\tlet usedWidth = 0;\n\t\tlet hiddenItems = 0;\n\t\tlet restoreVisibility = false;\n\n\t\t// first check how many items can fit without overflowing\n\t\tfor (let i = 0; i < itemsToOverflow.length; i++) {\n\t\t\t// reset item visibility before calculating\n\t\t\tconst item = itemsToOverflow[i];\n\t\t\tconst isAdditionalContext = this.additionalContextSorted.includes(item);\n\n\t\t\tif (item.classList.contains(\"ui5-shellbar-hidden-button\")) {\n\t\t\t\titem.classList.remove(\"ui5-shellbar-hidden-button\");\n\t\t\t\trestoreVisibility = true;\n\t\t\t}\n\t\t\t// exlcude the gap if an item is in the additional context as the wrapped element's width is already including the gap\n\t\t\tconst gap = isAdditionalContext ? 0 : parseInt(getComputedStyle(item).getPropertyValue(\"margin-inline-start\"));\n\t\t\tconst itemWidth = item.offsetWidth + gap;\n\t\t\tif (restoreVisibility) {\n\t\t\t\titem.classList.add(\"ui5-shellbar-hidden-button\");\n\t\t\t\trestoreVisibility = false;\n\t\t\t}\n\t\t\tusedWidth += itemWidth;\n\n\t\t\tif (usedWidth > totalWidth) {\n\t\t\t\t// as soon as we find an item that doesn't fit, we stop\n\t\t\t\t// and sum the rest of the items as hidden\n\t\t\t\thiddenItems = itemsToOverflow.length - i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\t// never show only one item in the overflow\n\t\tif (hiddenItems === 1) {\n\t\t\thiddenItems++;\n\t\t}\n\n\t\tconst showOverflowButton = hiddenItems > 0;\n\t\tconst items = this._getAllItems(showOverflowButton, hiddenItems === itemsToOverflow.length).filter(item => item.show && item.classes.indexOf(\"ui5-shellbar-no-overflow-button\") === -1);\n\t\t// start hiding the actions on the right (overflow actions) first\n\t\tthis._hideOverflowItems(hiddenItems, items);\n\t\t// last, start hiding the items that are in the additional context\n\t\tthis._hideAdditionalContext();\n\n\t\tif (JSON.stringify(this.additionalContextHidden) !== JSON.stringify(this._cachedHiddenContent)) {\n\t\t\tthis.fireDecoratorEvent(\"content-item-visibility-change\", { items: this.additionalContextHidden });\n\t\t}\n\n\t\tthis._cachedHiddenContent = this.additionalContextHidden;\n\n\t\treturn items;\n\t}\n\n\t_overflowActions() {\n\t\tthis._handleBarBreakpoints();\n\n\t\tconst newItems = this._handleActionsOverflow();\n\t\tthis._updateSeparatorsVisibility();\n\t\tthis._updateItemsInfo(newItems);\n\t\tthis._updateOverflowNotifications();\n\t}\n\n\t_updateAssistantIconVisibility(items: IShelBarItemInfo[]) {\n\t\tif (this.assistant.length) {\n\t\t\tconst assistantWrapper = this.shadowRoot!.getElementById(\"assistant\");\n\t\t\tconst assistantInfo = items.find(item => item.text === \"Assistant\");\n\t\t\tassistantWrapper && assistantWrapper.classList.remove(\"ui5-shellbar-hidden-button\");\n\t\t\tif (assistantInfo && assistantInfo.classes.indexOf(\"ui5-shellbar-hidden-button\") > 0) {\n\t\t\t\tassistantWrapper && assistantWrapper.classList.add(\"ui5-shellbar-hidden-button\");\n\t\t\t}\n\t\t}\n\t}\n\n\t_updateSeparatorsVisibility() {\n\t\tthis.hasVisibleStartContent = this._hasVisibleStartContent;\n\t\tthis.hasVisibleEndContent = this._hasVisibleEndContent;\n\t}\n\n\t_toggleActionPopover() {\n\t\tconst overflowButton = this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-overflow-button\")!;\n\t\tconst overflowPopover = this._getOverflowPopover();\n\t\toverflowPopover.opener = overflowButton;\n\t\toverflowPopover.open = true;\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._handleResize);\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t\tif (this._searchBarAutoOpen) {\n\t\t\tsetTimeout(() => this._searchBarInitialState(), 100);\n\t\t}\n\t}\n\n\tonExitDOM() {\n\t\tthis.additionalContextObserver.disconnect();\n\t\tthis._observableContent = [];\n\t\tResizeHandler.deregister(this, this._handleResize);\n\t}\n\n\t_handleSearchIconPress() {\n\t\tconst searchButtonRef = this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-search-button\")!;\n\t\tconst defaultPrevented = !this.fireDecoratorEvent(\"search-button-click\", {\n\t\t\ttargetRef: searchButtonRef,\n\t\t\tsearchFieldVisible: this.showSearchField,\n\t\t});\n\t\tthis._searchIconPressed = true;\n\t\tif (defaultPrevented) {\n\t\t\treturn;\n\t\t}\n\t\tthis.showSearchField = !this.showSearchField;\n\t\tthis._searchBarAutoOpen = 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.fireDecoratorEvent(\"notifications-click\", {\n\t\t\ttargetRef: notificationIconRef.classList.contains(\"ui5-shellbar-hidden-button\") ? target : notificationIconRef,\n\t\t});\n\t}\n\n\t_handleProfilePress() {\n\t\tthis.fireDecoratorEvent(\"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.fireDecoratorEvent(\"product-switch-click\", {\n\t\t\ttargetRef: buttonRef.classList.contains(\"ui5-shellbar-hidden-button\") ? target : buttonRef,\n\t\t});\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 `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, showSearchButton = true): Array<IShelBarItemInfo> {\n\t\tlet domOrder = -1;\n\n\t\tconst items: Array<IShelBarItemInfo> = [\n\t\t\t{\n\t\t\t\ticon: search,\n\t\t\t\ttext: this._searchText,\n\t\t\t\tclasses: `${this.searchField.length ? \"\" : \"ui5-shellbar-invisible-button\"} ${showSearchButton ? \"\" : \"ui5-shellbar-no-overflow-button\"} ui5-shellbar-search-button ui5-shellbar-button`,\n\t\t\t\tdomOrder: this.searchField.length ? (++domOrder) : -1,\n\t\t\t\tid: `${this._id}-item-${1}`,\n\t\t\t\tpress: this._handleSearchIconPress.bind(this),\n\t\t\t\tshow: !!this.searchField.length,\n\t\t\t\ttooltip: this._searchText,\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: da,\n\t\t\t\ttext: \"Assistant\",\n\t\t\t\tclasses: `${this.assistant.length ? \"\" : \"ui5-shellbar-invisible-button\"} ui5-shellbar-button`,\n\t\t\t\tid: `${this._id}-item-${4}`,\n\t\t\t\tshow: !!this.assistant.length,\n\t\t\t\tdomOrder: this.assistant.length ? (++domOrder) : -1,\n\t\t\t\tpress: () => { },\n\t\t\t\ttooltip: this.assistant.length ? (this.assistant[0].getAttribute(\"text\") || this.assistant[0].getAttribute(\"title\") || undefined) : undefined,\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: bell,\n\t\t\t\ttitle: this._notificationsText,\n\t\t\t\ttext: ShellBar.i18nBundle.getText(SHELLBAR_NOTIFICATIONS_NO_COUNT),\n\t\t\t\tcount: this.notificationsCount,\n\t\t\t\tclasses: `${this.showNotifications ? \"\" : \"ui5-shellbar-invisible-button\"} ui5-shellbar-bell-button ui5-shellbar-button`,\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\ttooltip: this._notificationsText,\n\t\t\t},\n\t\t\t// sort feedback and help to always be last\n\t\t\t...this.items.sort((a, b) => {\n\t\t\t\tconst aIndex = PREDEFINED_PLACE_ACTIONS.indexOf(a.icon || \"\");\n\t\t\t\tconst bIndex = PREDEFINED_PLACE_ACTIONS.indexOf(b.icon || \"\");\n\t\t\t\treturn aIndex - bIndex;\n\t\t\t}).map((item: ShellBarItem) => {\n\t\t\t\titem._getRealDomRef = () => this.getDomRef()!.querySelector(`*[data-ui5-stable=${item.stableDomRef}]`)!;\n\t\t\t\t// check if included for lean mode\n\t\t\t\tconst show = !!item.icon || false;\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\tdomOrder: (++domOrder),\n\t\t\t\t\tshow,\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\ttooltip: item.title || item.text,\n\t\t\t\t};\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-no-overflow-button ui5-shellbar-overflow-button ui5-shellbar-button`,\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\ttooltip: this._overflowText,\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-no-overflow-button ui5-shellbar-image-button ui5-shellbar-button`,\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\ttooltip: this._profileText,\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-no-overflow-button ui5-shellbar-button ui5-shellbar-image-button ui5-shellbar-button-product-switch`,\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\ttooltip: this._productsText,\n\t\t\t},\n\t\t];\n\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_updateOverflowNotifications() {\n\t\tconst notificationsArr: Array<string> = [];\n\t\tlet overflowNotifications = null;\n\n\t\tthis._itemsInfo.forEach(item => {\n\t\t\tif (item.count && this.isIconHidden(item.icon!)) {\n\t\t\t\tnotificationsArr.push(item.count);\n\t\t\t}\n\t\t});\n\n\t\tif (notificationsArr.length === 1) {\n\t\t\toverflowNotifications = notificationsArr[0];\n\t\t} else if (notificationsArr.length > 1) {\n\t\t\toverflowNotifications = \" \";\n\t\t}\n\n\t\tthis._overflowNotifications = overflowNotifications;\n\t}\n\n\t_updateAdditionalContextItems() {\n\t\tthis._handleActionsOverflow();\n\t}\n\n\t_observeAdditionalContextItems() {\n\t\tif (JSON.stringify(this.additionalContext) === JSON.stringify(this._observableContent)) {\n\t\t\treturn false;\n\t\t}\n\t\tthis.additionalContext.forEach(item => {\n\t\t\tif (!this._observableContent.includes(item)) {\n\t\t\t\tthis.additionalContextObserver.observe(item, {\n\t\t\t\t\tcharacterData: false,\n\t\t\t\t\tchildList: false,\n\t\t\t\t\tsubtree: false,\n\t\t\t\t\tattributes: true,\n\t\t\t\t\tattributeFilter: [\"data-hide-order\"],\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t\tthis._observableContent = this.additionalContext;\n\t}\n\n\t_getOverflowPopover() {\n\t\treturn this.shadowRoot!.querySelector<Popover>(\".ui5-shellbar-overflow-popover\")!;\n\t}\n\n\t_getMenuPopover() {\n\t\treturn this.shadowRoot!.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\t\"ui5-shellbar-with-full-searchfield\": this.hasSearchField && this.showSearchField && this._showFullWidthSearch,\n\t\t\t},\n\t\t\tbutton: {\n\t\t\t\t\"ui5-shellbar-menu-button--interactive\": this.hasMenuItems,\n\t\t\t},\n\t\t\tnotification: {\n\t\t\t\t\"ui5-shellbar-hidden-button\": this.isIconHidden(\"bell\"),\n\t\t\t},\n\t\t\tsearch: {\n\t\t\t\t\"ui5-shellbar-hidden-button\": this.isIconHidden(\"search\"),\n\t\t\t\t\"ui5-shellbar-no-overflow-button\": this.breakpointSize !== \"S\",\n\t\t\t},\n\t\t\toverflow: {\n\t\t\t\t\"ui5-shellbar-hidden-button\": this._hiddenIcons.length === 0,\n\t\t\t},\n\t\t\tassistant: {\n\t\t\t\t\"ui5-shellbar-hidden-button\": this.isIconHidden(\"assistant\"),\n\t\t\t},\n\t\t};\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\tsearchField: {\n\t\t\t\t\"display\": this.correctSearchFieldStyles,\n\t\t\t},\n\t\t\tadditionalContext: {\n\t\t\t\tstart: {\n\t\t\t\t\tseparator: {\n\t\t\t\t\t\t\"visibility\": this.hasVisibleStartContent ? \"\" : \"hidden\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tend: {\n\t\t\t\t\tseparator: {\n\t\t\t\t\t\t\"visibility\": this.hasVisibleEndContent ? \"\" : \"hidden\",\n\t\t\t\t\t},\n\t\t\t\t},\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(): `${PopoverHorizontalAlign}` {\n\t\treturn this.effectiveDir === \"rtl\" ? \"Start\" : \"End\";\n\t}\n\n\tget hasAssistant() {\n\t\treturn !!this.assistant.length;\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 imageBtnText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget _shellbarText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_LABEL);\n\t}\n\n\tget _logoText() {\n\t\treturn this.accessibilityAttributes.logo?.name || ShellBar.i18nBundle.getText(SHELLBAR_LOGO);\n\t}\n\n\tget _notificationsText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_NOTIFICATIONS, this.notificationsCount || 0);\n\t}\n\n\tget _cancelBtnText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_CANCEL);\n\t}\n\n\tget _logoAreaText() {\n\t\tconst primaryTitle = this.primaryTitle ?? \"\";\n\t\tconst secondaryTitle = this.secondaryTitle ?? \"\";\n\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_LOGO_AREA, primaryTitle, secondaryTitle);\n\t}\n\n\tget _additionalContextText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_ADDITIONAL_CONTEXT);\n\t}\n\n\tget _searchFieldDescription() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_SEARCHFIELD_DESCRIPTION);\n\t}\n\n\tget _additionalContextRole() {\n\t\tif (this.additionalContext.length === 1) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn \"group\";\n\t}\n\n\tget additionalContext() {\n\t\treturn [...this.startContent, ...this.endContent];\n\t}\n\n\tget startContent() {\n\t\t// return all items before the ui5-shellbar-spacer\n\t\tconst startContent = [];\n\t\tfor (let i = 0; i < this.content.length; i++) {\n\t\t\tconst child = this.content[i];\n\t\t\tif (child.hasAttribute(\"ui5-shellbar-spacer\")) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tstartContent.push(child);\n\t\t}\n\t\treturn startContent;\n\t}\n\n\tget endContent() {\n\t\t// return all items after the ui5-shellbar-spacer\n\t\tconst endContent = [];\n\t\tlet spacerFound = false;\n\t\tfor (let i = 0; i < this.content.length; i++) {\n\t\t\tconst child = this.content[i];\n\t\t\tif (spacerFound) {\n\t\t\t\tendContent.push(child);\n\t\t\t}\n\t\t\tif (child.hasAttribute(\"ui5-shellbar-spacer\")) {\n\t\t\t\tspacerFound = true;\n\t\t\t}\n\t\t}\n\t\treturn endContent;\n\t}\n\n\tget _rightChildRole() {\n\t\tconst items = this._getRightChildItems();\n\t\tconst visibleItems = items.filter(item => {\n\t\t\treturn this._isVisible(item);\n\t\t});\n\n\t\tif (visibleItems.length === 1) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn \"toolbar\";\n\t}\n\n\tget _searchFieldExpanded() {\n\t\treturn this.showSearchField;\n\t}\n\n\tget _searchFieldText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_SEARCH_FIELD);\n\t}\n\n\tget _searchBtnOpen() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_SEARCH_BTN_OPEN);\n\t}\n\n\tget _productSwitchBtnText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_PRODUCT_SWITCH_BTN);\n\t}\n\n\tget _showFullWidthSearch() {\n\t\tconst size = this.breakpointSize;\n\t\tconst searchBtnHidden = !!this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-search-button.ui5-shellbar-hidden-button\");\n\n\t\treturn size === \"S\" || searchBtnHidden || this._lessSearchSpace;\n\t}\n\n\tget isSearchFieldVisible() {\n\t\treturn this.searchField[0]?.offsetWidth || 0;\n\t}\n\n\tget _profileText() {\n\t\treturn this.accessibilityAttributes.profile?.name as string || 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 hasAdditionalContext() {\n\t\treturn this.additionalContext.length > 0;\n\t}\n\n\tget _hasVisibleStartContent() {\n\t\treturn this.startContent.some(item => this.shadowRoot!.getElementById(item.slot) && !this.shadowRoot!.getElementById(item.slot)!.classList.contains(\"ui5-shellbar-hidden-button\"));\n\t}\n\n\tget _hasVisibleEndContent() {\n\t\treturn this.endContent.some(item => this.shadowRoot!.getElementById(item.slot) && !this.shadowRoot!.getElementById(item.slot)!.classList.contains(\"ui5-shellbar-hidden-button\"));\n\t}\n\n\tget itemsToOverflow(): HTMLElement [] {\n\t\tconst overflowActions = Array.from(this.shadowRoot!.querySelectorAll<HTMLElement>(\".ui5-shellbar-button:not(.ui5-shellbar-overflow-button):not(.ui5-shellbar-invisible-button):not(.ui5-shellbar-cancel-button):not(.ui5-shellbar-no-overflow-button)\"));\n\t\treturn [...this.additionalContextSorted.toReversed(), this.assistant[0], ...overflowActions.toReversed()].filter(Boolean);\n\t}\n\n\tget separatorsWidth() {\n\t\tconst separatorsWidth = this.separators.reduce((acc, el) => acc + (el?.offsetWidth + this.domCalculatedValues(\"--_ui5-shellbar-content-margin-start\")) || 0, 0);\n\t\treturn separatorsWidth;\n\t}\n\n\tget searchFieldActualWidth() {\n\t\treturn this.shadowRoot!.querySelector<HTMLElement>(\"[ui5-input]\")?.offsetWidth || 0;\n\t}\n\n\tget separators() {\n\t\tconst start = this.shadowRoot!.querySelector<HTMLElement>(\".ui5-shellbar-separator-start\")!;\n\t\tconst end = this.shadowRoot!.querySelector<HTMLElement>(\".ui5-shellbar-separator-end\")!;\n\t\treturn [start, end];\n\t}\n\n\tget additionalContextHidden() {\n\t\treturn [...this.endContent, ...this.startContent].filter(item => this.shadowRoot!.getElementById(item.slot)! && this.shadowRoot!.getElementById(item.slot)!.classList.contains(\"ui5-shellbar-hidden-button\"));\n\t}\n\n\tget _lessSearchSpace() {\n\t\tconst targetContainer = this.shadowRoot!.querySelector<HTMLElement>(\".ui5-shellbar-spacer\");\n\t\tconst targetWidth = targetContainer?.offsetWidth || 0;\n\t\tconst searchFieldWidth = this.domCalculatedValues(\"--_ui5_shellbar_search_field_width\");\n\t\tconst isFullSearchOpen = this.classList.contains(\"ui5-shellbar-with-full-searchfield\");\n\t\treturn this.breakpointSize === \"M\" && ((this.hasAdditionalContext && targetWidth <= 0) || (!isFullSearchOpen && targetWidth <= searchFieldWidth));\n\t}\n\n\tget accInfo() {\n\t\tconst overflowExpanded = this.accessibilityAttributes.overflow?.expanded;\n\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\texpanded: this.accessibilityAttributes.notifications?.expanded,\n\t\t\t\t\thasPopup: this.accessibilityAttributes.notifications?.hasPopup,\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.accessibilityAttributes.profile?.hasPopup,\n\t\t\t\t\texpanded: this.accessibilityAttributes.profile?.expanded,\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.accessibilityAttributes.product?.hasPopup,\n\t\t\t\t\texpanded: this.accessibilityAttributes.product?.expanded,\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.accessibilityAttributes.search?.hasPopup,\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.accessibilityAttributes.overflow?.hasPopup || \"menu\" as const,\n\t\t\t\t\texpanded: overflowExpanded === undefined ? this._overflowPopoverExpanded : overflowExpanded,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tget accLogoRole() {\n\t\treturn this.accessibilityAttributes.logo?.role || \"link\";\n\t}\n\n\tget isSBreakPoint() {\n\t\treturn this.breakpointSize === \"S\";\n\t}\n}\n\nShellBar.define();\n\nexport default ShellBar;\n\nexport type {\n\tShellBarContentItemVisibilityChangeEventDetail,\n\tShellBarNotificationsClickEventDetail,\n\tShellBarProfileClickEventDetail,\n\tShellBarProductSwitchClickEventDetail,\n\tShellBarLogoClickEventDetail,\n\tShellBarMenuItemClickEventDetail,\n\tShellBarAccessibilityAttributes,\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 { renderFinished } from \"@ui5/webcomponents-base/dist/Render.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-strict.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport {\n\tisSpace,\n\tisEnter,\n\tisLeft,\n\tisRight,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport ListItemStandard from \"@ui5/webcomponents/dist/ListItemStandard.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 Menu from \"@ui5/webcomponents/dist/Menu.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 type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport search from \"@ui5/webcomponents-icons/dist/search.js\";\nimport da from \"@ui5/webcomponents-icons/dist/da.js\";\nimport bell from \"@ui5/webcomponents-icons/dist/bell.js\";\nimport overflow from \"@ui5/webcomponents-icons/dist/overflow.js\";\nimport grid from \"@ui5/webcomponents-icons/dist/grid.js\";\nimport type {\n\tClassMap,\n\tAccessibilityAttributes,\n\tAriaRole,\n} from \"@ui5/webcomponents-base\";\nimport type ListItemBase from \"@ui5/webcomponents/dist/ListItemBase.js\";\nimport type PopoverHorizontalAlign from \"@ui5/webcomponents/dist/types/PopoverHorizontalAlign.js\";\nimport throttle from \"@ui5/webcomponents-base/dist/util/throttle.js\";\nimport { getScopedVarName } from \"@ui5/webcomponents-base/dist/CustomElementsScope.js\";\nimport getActiveElement from \"@ui5/webcomponents-base/dist/util/getActiveElement.js\";\n\nimport type ShellBarItem from \"./ShellBarItem.js\";\n\n// Templates\nimport ShellBarTemplate from \"./ShellBarTemplate.js\";\n\n// Styles\nimport shellBarStyles from \"./generated/themes/ShellBar.css.js\";\nimport ShellBarPopoverCss from \"./generated/themes/ShellBarPopover.css.js\";\n\nimport {\n\tSHELLBAR_LABEL,\n\tSHELLBAR_LOGO,\n\tSHELLBAR_NOTIFICATIONS,\n\tSHELLBAR_NOTIFICATIONS_NO_COUNT,\n\tSHELLBAR_CANCEL,\n\tSHELLBAR_PROFILE,\n\tSHELLBAR_PRODUCTS,\n\tSHELLBAR_SEARCH,\n\tSHELLBAR_SEARCH_FIELD,\n\tSHELLBAR_OVERFLOW,\n\tSHELLBAR_LOGO_AREA,\n\tSHELLBAR_ADDITIONAL_CONTEXT,\n\tSHELLBAR_SEARCHFIELD_DESCRIPTION,\n\tSHELLBAR_SEARCH_BTN_OPEN,\n\tSHELLBAR_PRODUCT_SWITCH_BTN,\n} from \"./generated/i18n/i18n-defaults.js\";\n\ntype ShellBarLogoAccessibilityAttributes = {\n\trole?: Extract<AriaRole, \"button\" | \"link\">,\n\tname?: string,\n}\ntype ShellBarProfileAccessibilityAttributes = Pick<AccessibilityAttributes, \"name\" | \"expanded\" | \"hasPopup\">;\ntype ShellBarAreaAccessibilityAttributes = Pick<AccessibilityAttributes, \"hasPopup\" | \"expanded\">;\ntype ShellBarAccessibilityAttributes = {\n\tlogo?: ShellBarLogoAccessibilityAttributes\n\tnotifications?: ShellBarAreaAccessibilityAttributes\n\tprofile?: ShellBarProfileAccessibilityAttributes,\n\tproduct?: ShellBarAreaAccessibilityAttributes\n\tsearch?: ShellBarAreaAccessibilityAttributes\n\toverflow?: ShellBarAreaAccessibilityAttributes\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 ShellBarMenuItemClickEventDetail = {\n\titem: HTMLElement;\n};\n\ntype ShellBarContentItemVisibilityChangeEventDetail = {\n\titems: Array<HTMLElement>\n};\n\ntype ShellBarSearchButtonEventDetail = {\n\ttargetRef: HTMLElement;\n\tsearchFieldVisible: boolean;\n};\n\ninterface IShellBarHidableItem {\n\tclasses: string,\n\tid: string,\n\tshow: boolean,\n}\n\ninterface IShelBarItemInfo extends IShellBarHidableItem {\n\ticon?: string,\n\ttext?: string,\n\tcount?: string,\n\tcustom?: boolean,\n\ttitle?: string,\n\tstableDomRef?: string,\n\trefItemid?: string,\n\tpress: (e: MouseEvent) => void,\n\torder?: number,\n\tprofile?: boolean,\n\ttooltip?: string,\n}\n\ninterface IShellBarContentItem extends IShellBarHidableItem {\n\thideOrder: number,\n}\n\nconst RESIZE_THROTTLE_RATE = 200; // ms\n\n// actions always visible in lean mode, order is important\nconst PREDEFINED_PLACE_ACTIONS = [\"feedback\", \"sys-help\"];\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 * - 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: jsxRenderer,\n\ttemplate: ShellBarTemplate,\n\tstyles: [shellBarStyles, ShellBarPopoverCss],\n\tdependencies: [\n\t\tButton,\n\t\tIcon,\n\t\tList,\n\t\tPopover,\n\t\tListItemStandard,\n\t\tMenu,\n\t],\n})\n/**\n *\n * Fired, when the notification icon is activated.\n * @param {HTMLElement} targetRef dom ref of the activated element\n * @public\n */\n@event(\"notifications-click\", {\n\tcancelable: true,\n\tbubbles: true,\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(\"profile-click\", {\n\tbubbles: true,\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 * @param {HTMLElement} targetRef dom ref of the activated element\n * @public\n */\n@event(\"product-switch-click\", {\n\tcancelable: true,\n\tbubbles: true,\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(\"logo-click\", {\n\tbubbles: true,\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(\"menu-item-click\", {\n\tbubbles: true,\n\tcancelable: true,\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 * @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(\"search-button-click\", {\n\tcancelable: true,\n\tbubbles: true,\n})\n\n/**\n * Fired, when an item from the content slot is hidden or shown.\n * **Note:** The `content-item-visibility-change` event is in an experimental state and is a subject to change.\n *\n * @param {Array<HTMLElement>} array of all the items that are hidden\n * @public\n * @since 2.7.0\n */\n@event(\"content-item-visibility-change\", {\n\tbubbles: true,\n})\n\nclass ShellBar extends UI5Element {\n\teventDetails!: {\n\t\t\"notifications-click\": ShellBarNotificationsClickEventDetail,\n\t\t\"profile-click\": ShellBarProfileClickEventDetail,\n\t\t\"product-switch-click\": ShellBarProductSwitchClickEventDetail,\n\t\t\"logo-click\": ShellBarLogoClickEventDetail,\n\t\t\"menu-item-click\": ShellBarMenuItemClickEventDetail,\n\t\t\"search-button-click\": ShellBarSearchButtonEventDetail,\n\t\t\"content-item-visibility-change\": ShellBarContentItemVisibilityChangeEventDetail\n\t}\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 undefined\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 undefined\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 undefined\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 = false;\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 = false;\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 = false;\n\n\t/**\n\t * Defines additional accessibility attributes on different areas of the component.\n\t *\n\t * The accessibilityAttributes object has the following fields,\n\t * where each field is an object supporting one or more accessibility attributes:\n\t *\n\t * - **logo** - `logo.role` and `logo.name`.\n\t * - **notifications** - `notifications.expanded` and `notifications.hasPopup`.\n\t * - **profile** - `profile.expanded`, `profile.hasPopup` and `profile.name`.\n\t * - **product** - `product.expanded` and `product.hasPopup`.\n\t * - **search** - `search.hasPopup`.\n\t * - **overflow** - `overflow.expanded` and `overflow.hasPopup`.\n\t *\n\t * The accessibility attributes support the following values:\n\t *\n\t * - **role**: Defines the accessible ARIA role of the logo area.\n\t * Accepts the following string values: `button` or `link`.\n\t *\n\t * - **expanded**: Indicates whether the button, or another grouping element it controls,\n\t * is currently expanded or collapsed.\n\t * Accepts the following string values: `true` or `false`.\n\t *\n\t * - **hasPopup**: Indicates the availability and type of interactive popup element,\n\t * such as menu or dialog, that can be triggered by the button.\n\t *\n\t * Accepts the following string values: `dialog`, `grid`, `listbox`, `menu` or `tree`.\n\t * - **name**: Defines the accessible ARIA name of the area.\n\t * Accepts any string.\n\t *\n\t * @default {}\n\t * @public\n\t * @since 1.10.0\n\t */\n\t@property({ type: Object })\n\taccessibilityAttributes: ShellBarAccessibilityAttributes = {};\n\n\t/**\n\t * @private\n\t */\n\t@property()\n\tbreakpointSize = \"S\";\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\twithLogo = false;\n\n\t@property({ type: Object })\n\t_itemsInfo: Array<IShelBarItemInfo> = [];\n\n\t@property({ type: Object })\n\t_contentInfo: Array<IShellBarContentItem> = [];\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_menuPopoverExpanded = false;\n\n\t@property({ type: Boolean, noAttribute: true })\n\t_overflowPopoverExpanded = false;\n\n\t@property({ type: Boolean, noAttribute: true })\n\tshowFullWidthSearch = false;\n\n\t_cachedHiddenContent: Array<HTMLElement> = [];\n\n\t/**\n\t * Defines the assistant slot.\n\t *\n\t * @since 2.0.0\n\t * @public\n\t */\n\t@slot()\n\tassistant!: Array<IButton>;\n\n\t/**\n\t * Defines the `ui5-shellbar` additional 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 a start button.\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 menu 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\t/**\n\t * Define the items displayed in the content area.\n\t *\n\t * Use the `data-hide-order` attribute with numeric value to specify the order of the items to be hidden when the space is not enough.\n\t * Lower values will be hidden first.\n\t *\n\t * **Note:** The `content` slot is in an experimental state and is a subject to change.\n\t *\n\t * @public\n\t * @since 2.7.0\n\t */\n\t@slot({ type: HTMLElement, individualSlots: true })\n\tcontent!: Array<UI5Element>;\n\n\t@i18n(\"@ui5/webcomponents-fiori\")\n\tstatic i18nBundle: I18nBundle;\n\toverflowPopover?: Popover | null;\n\tmenuPopover?: Popover | null;\n\t_isInitialRendering: boolean;\n\t_defaultItemPressPrevented: boolean;\n\tcontentItemsObserver: MutationObserver;\n\t_hiddenIcons: Array<IShelBarItemInfo>;\n\t_handleResize: ResizeObserverCallback;\n\t_overflowNotifications: string | null;\n\t_lastOffsetWidth = 0;\n\t_observableContent: Array<HTMLElement> = [];\n\t_autoRestoreSearchField = false;\n\n\t_headerPress: () => void;\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._hiddenIcons = [];\n\t\tthis._isInitialRendering = true;\n\t\tthis._overflowNotifications = null;\n\n\t\t// marks if preventDefault() is called in item's press handler\n\t\tthis._defaultItemPressPrevented = false;\n\n\t\tthis.contentItemsObserver = new MutationObserver(() => {\n\t\t\tthis._handleActionsOverflow();\n\t\t});\n\n\t\tthis._headerPress = () => {\n\t\t\tif (this.hasMenuItems) {\n\t\t\t\tconst menuPopover = this._getMenuPopover();\n\t\t\t\tmenuPopover.opener = this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-menu-button\")!;\n\t\t\t\tmenuPopover.open = true;\n\t\t\t}\n\t\t};\n\n\t\tthis._handleResize = throttle(() => {\n\t\t\tthis.menuPopover = this._getMenuPopover();\n\t\t\tthis.overflowPopover = this._getOverflowPopover();\n\t\t\tthis.overflowPopover.open = false;\n\t\t\tif (this._lastOffsetWidth !== this.offsetWidth) {\n\t\t\t\tthis._overflowActions();\n\t\t\t\tif (this.autoSearchField) {\n\t\t\t\t\tthis._updateSearchFieldState();\n\t\t\t\t}\n\t\t\t}\n\t\t}, RESIZE_THROTTLE_RATE);\n\t}\n\n\t_updateSearchFieldState() {\n\t\tconst spacerWidth = this.shadowRoot!.querySelector(\".ui5-shellbar-spacer\") ? this.shadowRoot!.querySelector(\".ui5-shellbar-spacer\")!.getBoundingClientRect().width : 0;\n\t\tconst searchFieldWidth = this.domCalculatedValues(\"--_ui5_shellbar_search_field_width\");\n\t\tif (this.showFullWidthSearch) {\n\t\t\tthis.showSearchField = false;\n\t\t\treturn;\n\t\t}\n\t\tif ((spacerWidth <= searchFieldWidth && this.contentItemsHidden.length !== 0) && this.showSearchField) {\n\t\t\tthis.showSearchField = false;\n\t\t\tthis._autoRestoreSearchField = true;\n\t\t} else if (spacerWidth > searchFieldWidth && this._autoRestoreSearchField) {\n\t\t\tthis.showSearchField = true;\n\t\t\tthis._autoRestoreSearchField = false;\n\t\t}\n\t}\n\n\t_onKeyDown(e: KeyboardEvent) {\n\t\tconst items = this._getVisibleAndInteractiveItems();\n\t\tconst activeElement = getActiveElement();\n\t\tconst currentIndex = items.findIndex(el => el === activeElement);\n\n\t\tif (isLeft(e) || isRight(e)) {\n\t\t\te.preventDefault();// Prevent the default behavior to avoid any further automatic focus movemen\n\n\t\t\t// Focus navigation based on the key pressed\n\t\t\tif (isLeft(e)) {\n\t\t\t\tthis._focusPreviousItem(items, currentIndex);\n\t\t\t} else if (isRight(e)) {\n\t\t\t\tthis._focusNextItem(items, currentIndex);\n\t\t\t}\n\t\t}\n\t}\n\n\t_focusNextItem(items: HTMLElement[], currentIndex: number) {\n\t\tif (currentIndex < items.length - 1) {\n\t\t\t(items[currentIndex + 1]).focus(); // Focus the next element\n\t\t}\n\t}\n\n\t_focusPreviousItem(items: HTMLElement[], currentIndex: number) {\n\t\tif (currentIndex > 0) {\n\t\t\t(items[currentIndex - 1]).focus(); // Focus the previous element\n\t\t}\n\t}\n\n\t_isVisible(element: HTMLElement): boolean {\n\t\tconst style = getComputedStyle(element);\n\n\t\treturn style.display !== \"none\" && style.visibility !== \"hidden\" && element.offsetWidth > 0 && element.offsetHeight > 0;\n\t}\n\n\t_getNavigableContent() {\n\t\tconst elements = [\n\t\t\t...this.startButton,\n\t\t\t...this.logo,\n\t\t\t...this.shadowRoot!.querySelectorAll(\".ui5-shellbar-logo\"),\n\t\t\t...this.shadowRoot!.querySelectorAll(\".ui5-shellbar-logo-area\"),\n\t\t\t...this.shadowRoot!.querySelectorAll(\".ui5-shellbar-menu-button\"),\n\t\t\t...this.contentItems,\n\t\t\t...this._getRightChildItems(),\n\t\t] as HTMLElement[];\n\n\t\treturn elements.map((element: HTMLElement) => {\n\t\t\tconst component = element as UI5Element;\n\t\t\tif (component.isUI5Element) {\n\t\t\t\treturn component.getFocusDomRef();\n\t\t\t}\n\t\t\treturn element;\n\t\t}).filter(el => !!el);\n\t}\n\n\t_getRightChildItems() {\n\t\treturn [\n\t\t\t...this.searchField,\n\t\t\t...this.shadowRoot!.querySelectorAll(\".ui5-shellbar-search-item-for-arrow-nav\"),\n\t\t\t...this.assistant,\n\t\t\t...this.shadowRoot!.querySelectorAll(\".ui5-shellbar-items-for-arrow-nav\"),\n\t\t] as HTMLElement[];\n\t}\n\n\t_getVisibleAndInteractiveItems() {\n\t\tconst items = this._getNavigableContent();\n\t\tconst visibleAndInteractiveItems = items.filter(item => {\n\t\t\treturn this._isVisible(item) && item.tabIndex === 0;\n\t\t});\n\n\t\treturn visibleAndInteractiveItems;\n\t}\n\n\t_menuItemPress(e: CustomEvent<ListSelectionChangeEventDetail>) {\n\t\tconst shouldContinue = this.fireDecoratorEvent(\"menu-item-click\", {\n\t\t\titem: e.detail.selectedItems[0],\n\t\t});\n\t\tif (shouldContinue) {\n\t\t\tthis.menuPopover!.open = false;\n\t\t}\n\t}\n\n\t_logoPress() {\n\t\tthis.fireDecoratorEvent(\"logo-click\", {\n\t\t\ttargetRef: this.shadowRoot!.querySelector<HTMLElement>(\".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_calculateCSSREMValue(styleSet: CSSStyleDeclaration, propertyName: string): number {\n\t\treturn Number(styleSet.getPropertyValue(propertyName).replace(\"rem\", \"\")) * parseInt(getComputedStyle(document.body).getPropertyValue(\"font-size\"));\n\t}\n\n\t_parsePxValue(styleSet: CSSStyleDeclaration, propertyName: string): number {\n\t\treturn Number(styleSet.getPropertyValue(propertyName).replace(\"px\", \"\"));\n\t}\n\n\tdomCalculatedValues(cssVar: string): number {\n\t\tconst shellbarComputerStyle = getComputedStyle(this.getDomRef()!);\n\t\treturn this._calculateCSSREMValue(shellbarComputerStyle, getScopedVarName(cssVar)); // px\n\t}\n\n\tonBeforeRendering() {\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._observeContentItems();\n\t}\n\n\tonAfterRendering() {\n\t\tthis._lastOffsetWidth = this.offsetWidth;\n\t\tthis._overflowActions();\n\t\tthis.onInitialRendering();\n\t}\n\n\tasync onInitialRendering() {\n\t\tif (this._isInitialRendering) {\n\t\t\tawait renderFinished();\n\t\t\tif (this.autoSearchField) {\n\t\t\t\tthis._updateSearchFieldState();\n\t\t\t}\n\t\t}\n\t\tthis._isInitialRendering = false;\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.open = false;\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\t}\n\n\t_hideItems(items: IShellBarHidableItem[]) {\n\t\titems.forEach(item => {\n\t\t\tif (item.classes.indexOf(\"ui5-shellbar-no-overflow-button\") === -1) {\n\t\t\t\titem.classes = `${item.classes} ui5-shellbar-hidden-button`;\n\t\t\t}\n\t\t});\n\t\treturn items;\n\t}\n\n\t_resetItemsVisibility(items: Array<HTMLElement>) {\n\t\titems.forEach(item => {\n\t\t\titem.classList.remove(\"ui5-shellbar-hidden-button\");\n\t\t});\n\t}\n\n\t_handleActionsOverflow() {\n\t\tconst inner = this.overflowInner;\n\t\tconst wrapper = this.overflowWrapper;\n\t\tconst hidableDomElements = this.hidableDomElements;\n\t\tconst hiddenItems: string[] = [];\n\t\tlet lastHiddenIndex = 0;\n\n\t\tthis._resetItemsVisibility(hidableDomElements);\n\n\t\tfor (let i = 0; i < hidableDomElements.length; i++) {\n\t\t\tif (inner?.offsetWidth === wrapper?.offsetWidth) {\n\t\t\t\tlastHiddenIndex = i;\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tconst item = hidableDomElements[i];\n\t\t\thiddenItems.push(item.id);\n\t\t\titem.classList.add(\"ui5-shellbar-hidden-button\");\n\t\t}\n\n\t\tif (hiddenItems.length === 1 && !this.showSearchField) {\n\t\t\tconst nextItemToHide = hidableDomElements[++lastHiddenIndex];\n\t\t\tif (nextItemToHide) {\n\t\t\t\thiddenItems.push(nextItemToHide.id);\n\t\t\t}\n\t\t}\n\n\t\tconst itemsInfo = this._getItemsInfo().filter(item => item.show && item.classes.indexOf(\"ui5-shellbar-no-overflow-button\") === -1);\n\t\tconst contentInfo = this._getContentInfo().sort((a, b) => a.hideOrder - b.hideOrder);\n\t\tconst itemsToHide = [...itemsInfo, ...contentInfo].filter(item => hiddenItems.includes(item.id));\n\n\t\tthis._hideItems(itemsToHide);\n\n\t\treturn { itemsInfo, contentInfo };\n\t}\n\n\t_overflowActions() {\n\t\tthis._handleBarBreakpoints();\n\n\t\tconst { itemsInfo, contentInfo } = this._handleActionsOverflow();\n\t\tthis._updateItemsInfo(itemsInfo);\n\t\tthis._updateContentInfo(contentInfo);\n\t\tthis._updateOverflowNotifications();\n\t\tthis.showFullWidthSearch = this.overflowed;\n\t}\n\n\t_toggleActionPopover() {\n\t\tconst overflowButton = this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-overflow-button\")!;\n\t\tconst overflowPopover = this._getOverflowPopover();\n\t\toverflowPopover.opener = overflowButton;\n\t\toverflowPopover.open = true;\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._handleResize);\n\t\tif (isDesktop()) {\n\t\t\tthis.setAttribute(\"desktop\", \"\");\n\t\t}\n\t}\n\n\tonExitDOM() {\n\t\tthis.contentItemsObserver.disconnect();\n\t\tthis._observableContent = [];\n\t\tResizeHandler.deregister(this, this._handleResize);\n\t}\n\n\t_handleSearchIconPress() {\n\t\tconst searchButtonRef = this.shadowRoot!.querySelector<Button>(\".ui5-shellbar-search-button\")!;\n\t\tconst defaultPrevented = !this.fireDecoratorEvent(\"search-button-click\", {\n\t\t\ttargetRef: searchButtonRef,\n\t\t\tsearchFieldVisible: this.showSearchField,\n\t\t});\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.fireDecoratorEvent(\"notifications-click\", {\n\t\t\ttargetRef: notificationIconRef.classList.contains(\"ui5-shellbar-hidden-button\") ? target : notificationIconRef,\n\t\t});\n\t}\n\n\t_handleProfilePress() {\n\t\tthis.fireDecoratorEvent(\"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.fireDecoratorEvent(\"product-switch-click\", {\n\t\t\ttargetRef: buttonRef.classList.contains(\"ui5-shellbar-hidden-button\") ? target : buttonRef,\n\t\t});\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 `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_getContentInfo(): Array<IShellBarContentItem> {\n\t\treturn [\n\t\t\t...this.contentItemsSorted.map(item => {\n\t\t\t\treturn {\n\t\t\t\t\thideOrder: parseInt(item.getAttribute(\"data-hide-order\") || \"0\"),\n\t\t\t\t\tid: item.slot,\n\t\t\t\t\tclasses: \"ui5-shellbar-content-item\",\n\t\t\t\t\tshow: false,\n\t\t\t\t};\n\t\t\t}),\n\t\t];\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 */\n\t_getItemsInfo(): Array<IShelBarItemInfo> {\n\t\tconst items: Array<IShelBarItemInfo> = [\n\t\t\t{\n\t\t\t\ticon: search,\n\t\t\t\ttext: this._searchText,\n\t\t\t\tclasses: `${this.searchField.length ? \"\" : \"ui5-shellbar-invisible-button\"} ui5-shellbar-search-button ui5-shellbar-button`,\n\t\t\t\tid: `${this._id}-item-${1}`,\n\t\t\t\tpress: this._handleSearchIconPress.bind(this),\n\t\t\t\tshow: !!this.searchField.length,\n\t\t\t\ttooltip: this._searchText,\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: da,\n\t\t\t\ttext: \"Assistant\",\n\t\t\t\tclasses: `${this.assistant.length ? \"\" : \"ui5-shellbar-invisible-button\"} ui5-shellbar-assistant-button`,\n\t\t\t\tid: `${this._id}-assistant`,\n\t\t\t\tshow: !!this.assistant.length,\n\t\t\t\tpress: () => { },\n\t\t\t\ttooltip: this.assistant.length ? (this.assistant[0].getAttribute(\"text\") || this.assistant[0].getAttribute(\"title\") || undefined) : undefined,\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: bell,\n\t\t\t\ttitle: this._notificationsText,\n\t\t\t\ttext: ShellBar.i18nBundle.getText(SHELLBAR_NOTIFICATIONS_NO_COUNT),\n\t\t\t\tcount: this.notificationsCount,\n\t\t\t\tclasses: `${this.showNotifications ? \"\" : \"ui5-shellbar-invisible-button\"} ui5-shellbar-bell-button ui5-shellbar-button`,\n\t\t\t\tid: `${this._id}-item-${2}`,\n\t\t\t\tshow: this.showNotifications,\n\t\t\t\tpress: this._handleNotificationsPress.bind(this),\n\t\t\t\ttooltip: this._notificationsText,\n\t\t\t},\n\t\t\t// sort feedback and help to always be last\n\t\t\t...this.items.sort((a, b) => {\n\t\t\t\tconst aIndex = PREDEFINED_PLACE_ACTIONS.indexOf(a.icon || \"\");\n\t\t\t\tconst bIndex = PREDEFINED_PLACE_ACTIONS.indexOf(b.icon || \"\");\n\t\t\t\treturn aIndex - bIndex;\n\t\t\t}).map((item: ShellBarItem) => {\n\t\t\t\titem._getRealDomRef = () => this.getDomRef()!.querySelector(`*[data-ui5-stable=${item.stableDomRef}]`)!;\n\t\t\t\t// check if included for lean mode\n\t\t\t\tconst show = !!item.icon || false;\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\tshow,\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\ttooltip: item.title || item.text,\n\t\t\t\t};\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: \"ui5-shellbar-hidden-button ui5-shellbar-no-overflow-button ui5-shellbar-overflow-button ui5-shellbar-button\",\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\ttooltip: this._overflowText,\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-no-overflow-button ui5-shellbar-image-button ui5-shellbar-button`,\n\t\t\t\tprofile: true,\n\t\t\t\tid: `${this._id}-item-${3}`,\n\t\t\t\tshow: this.hasProfile,\n\t\t\t\tpress: this._handleProfilePress.bind(this),\n\t\t\t\ttooltip: this._profileText,\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-no-overflow-button ui5-shellbar-button ui5-shellbar-image-button ui5-shellbar-button-product-switch`,\n\t\t\t\tid: `${this._id}-item-${4}`,\n\t\t\t\tshow: this.showProductSwitch,\n\t\t\t\tpress: this._handleProductSwitchPress.bind(this),\n\t\t\t\ttooltip: this._productsText,\n\t\t\t},\n\t\t];\n\n\t\treturn items;\n\t}\n\n\t_updateItemsInfo(newItemsInfo: Array<IShelBarItemInfo>) {\n\t\tconst isDifferent = JSON.stringify(this._itemsInfo) !== JSON.stringify(newItemsInfo);\n\t\tif (isDifferent) {\n\t\t\tthis._itemsInfo = newItemsInfo;\n\t\t}\n\t}\n\n\t_updateContentInfo(newContentInfo: Array<IShellBarContentItem>) {\n\t\tconst isDifferent = JSON.stringify(this._contentInfo) !== JSON.stringify(newContentInfo);\n\t\tif (isDifferent) {\n\t\t\tthis._contentInfo = newContentInfo;\n\t\t\tthis._fireContentItemVisibilityChangeEvent();\n\t\t}\n\t}\n\n\t_fireContentItemVisibilityChangeEvent() {\n\t\tconst hiddenByClass = this._contentInfo\n\t\t\t.filter(item => item.classes.indexOf(\"ui5-shellbar-hidden-button\") !== -1)\n\t\t\t.map(item => item.id);\n\n\t\tthis.fireDecoratorEvent(\"content-item-visibility-change\", {\n\t\t\titems: this.contentItems.filter(item => hiddenByClass.includes(item.slot)),\n\t\t});\n\t}\n\n\t_updateOverflowNotifications() {\n\t\tconst notificationsArr: Array<string> = [];\n\t\tlet overflowNotifications = null;\n\n\t\tthis._itemsInfo.forEach(item => {\n\t\t\tif (item.count && this.isIconHidden(item.icon!)) {\n\t\t\t\tnotificationsArr.push(item.count);\n\t\t\t}\n\t\t});\n\n\t\tif (notificationsArr.length === 1) {\n\t\t\toverflowNotifications = notificationsArr[0];\n\t\t} else if (notificationsArr.length > 1) {\n\t\t\toverflowNotifications = \" \";\n\t\t}\n\n\t\tthis._overflowNotifications = overflowNotifications;\n\t}\n\n\t_observeContentItems() {\n\t\tif (JSON.stringify(this.contentItems) === JSON.stringify(this._observableContent)) {\n\t\t\treturn false;\n\t\t}\n\t\tthis.contentItems.forEach(item => {\n\t\t\tif (!this._observableContent.includes(item)) {\n\t\t\t\tthis.contentItemsObserver.observe(item, {\n\t\t\t\t\tcharacterData: false,\n\t\t\t\t\tchildList: false,\n\t\t\t\t\tsubtree: false,\n\t\t\t\t\tattributes: true,\n\t\t\t\t\tattributeFilter: [\"data-hide-order\"],\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t\tthis._observableContent = this.contentItems;\n\t}\n\n\t_getOverflowPopover() {\n\t\treturn this.shadowRoot!.querySelector<Popover>(\".ui5-shellbar-overflow-popover\")!;\n\t}\n\n\t_getMenuPopover() {\n\t\treturn this.shadowRoot!.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 contentItemsSorted() {\n\t\treturn this.contentItems.toReversed().sort((a, b) => {\n\t\t\treturn parseInt(a.getAttribute(\"data-hide-order\") || \"0\") - parseInt(b.getAttribute(\"data-hide-order\") || \"0\");\n\t\t});\n\t}\n\n\tget contentItemsWrappersSorted() {\n\t\treturn this.contentItemsSorted.map(item => this.shadowRoot!.querySelector<HTMLElement>(`#${item.slot}`)).filter(item => item !== null);\n\t}\n\n\tget autoSearchField() {\n\t\tconst onFocus = document.activeElement === this.searchField[0];\n\t\tconst isEmpty = this.searchField[0]?.value.length === 0;\n\t\treturn (this.showSearchField || this._autoRestoreSearchField) && !onFocus && isEmpty;\n\t}\n\n\tget showStartSeparatorInWrapper(): boolean {\n\t\t// show separator at the beginning of content if more than one\n\t\t// item is visible, otherwise, the separator is packed with the\n\t\t// first visible item to be calculated with the next overflow action\n\t\tconst starContent = this.startContent;\n\t\tconst hiddenStartContentItems = this._contentInfo.filter(item => {\n\t\t\tconst isHidden = item.classes.indexOf(\"ui5-shellbar-hidden-button\") !== -1;\n\t\t\tconst isInContent = starContent.find(contentItem => contentItem.slot === item.id);\n\t\t\treturn isHidden && isInContent;\n\t\t}).map(item => item.id);\n\n\t\treturn (starContent.length - hiddenStartContentItems.length) > 0;\n\t}\n\n\tget showEndSeparatorInWrapper(): boolean {\n\t\t// show separator at the end of content if more than one\n\t\t// item is visible, otherwise, the separator is packed with the\n\t\t// last visible item to be calculated with the next overflow\n\t\tconst endContent = this.endContent;\n\t\tconst hiddenEndContentItems = this._contentInfo.filter(item => {\n\t\t\tconst isHidden = item.classes.indexOf(\"ui5-shellbar-hidden-button\") !== -1;\n\t\t\tconst isInContent = endContent.find(contentItem => contentItem.slot === item.id);\n\t\t\treturn isHidden && isInContent;\n\t\t}).map(item => item.id);\n\n\t\treturn (endContent.length - hiddenEndContentItems.length) > 0;\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},\n\t\t\tnotification: {\n\t\t\t\t\"ui5-shellbar-hidden-button\": this.isIconHidden(\"bell\"),\n\t\t\t},\n\t\t\tsearch: {\n\t\t\t\t\"ui5-shellbar-hidden-button\": this.isIconHidden(\"search\"),\n\t\t\t},\n\t\t\toverflow: {\n\t\t\t\t\"ui5-shellbar-hidden-button\": this._hiddenIcons.length === 0,\n\t\t\t},\n\t\t\tassistant: {\n\t\t\t\t\"ui5-shellbar-hidden-button\": this.isIconHidden(\"assistant\"),\n\t\t\t\t\"ui5-shellbar-assistant-button\": true,\n\t\t\t},\n\t\t};\n\t}\n\n\tget styles() {\n\t\treturn {\n\t\t\tsearchField: {\n\t\t\t\t\"display\": this.showSearchField ? \"flex\" : \"none\",\n\t\t\t},\n\t\t};\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(): `${PopoverHorizontalAlign}` {\n\t\treturn this.effectiveDir === \"rtl\" ? \"Start\" : \"End\";\n\t}\n\n\tget hasAssistant() {\n\t\treturn !!this.assistant.length;\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 imageBtnText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget _shellbarText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_LABEL);\n\t}\n\n\tget _logoText() {\n\t\treturn this.accessibilityAttributes.logo?.name || ShellBar.i18nBundle.getText(SHELLBAR_LOGO);\n\t}\n\n\tget _notificationsText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_NOTIFICATIONS, this.notificationsCount || 0);\n\t}\n\n\tget _cancelBtnText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_CANCEL);\n\t}\n\n\tget _logoAreaText() {\n\t\tconst primaryTitle = this.primaryTitle ?? \"\";\n\t\tconst secondaryTitle = this.secondaryTitle ?? \"\";\n\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_LOGO_AREA, primaryTitle, secondaryTitle);\n\t}\n\n\tget _contentItemsText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_ADDITIONAL_CONTEXT);\n\t}\n\n\tget _searchFieldDescription() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_SEARCHFIELD_DESCRIPTION);\n\t}\n\n\tget _contentItemsRole() {\n\t\tif (this.contentItems.length === 1) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn \"group\";\n\t}\n\n\tget contentItems() {\n\t\treturn [...this.startContent, ...this.endContent];\n\t}\n\n\tget startContent() {\n\t\t// all items before the first spacer\n\t\tconst spacerIndex = this.content.findIndex(child => child.hasAttribute(\"ui5-shellbar-spacer\"));\n\t\treturn this.content.slice(0, spacerIndex);\n\t}\n\n\tget endContent() {\n\t\t// all items after the first spacer\n\t\tconst spacerIndex = this.content.findIndex(child => child.hasAttribute(\"ui5-shellbar-spacer\"));\n\t\treturn this.content.slice(spacerIndex + 1);\n\t}\n\n\tget _rightChildRole() {\n\t\tconst items = this._getRightChildItems();\n\t\tconst visibleItems = items.filter(item => {\n\t\t\treturn this._isVisible(item);\n\t\t});\n\n\t\tif (visibleItems.length === 1) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn \"toolbar\";\n\t}\n\n\tget _searchFieldText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_SEARCH_FIELD);\n\t}\n\n\tget _searchBtnOpen() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_SEARCH_BTN_OPEN);\n\t}\n\n\tget _productSwitchBtnText() {\n\t\treturn ShellBar.i18nBundle.getText(SHELLBAR_PRODUCT_SWITCH_BTN);\n\t}\n\n\tget isSearchFieldVisible() {\n\t\treturn this.searchField[0]?.offsetWidth || 0;\n\t}\n\n\tget _profileText() {\n\t\treturn this.accessibilityAttributes.profile?.name as string || 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 hasContentItems() {\n\t\treturn this.contentItems.length > 0;\n\t}\n\n\tget hidableDomElements(): HTMLElement [] {\n\t\tconst items = Array.from(this.shadowRoot!.querySelectorAll<HTMLElement>(\".ui5-shellbar-button:not(.ui5-shellbar-search-button):not(.ui5-shellbar-overflow-button):not(.ui5-shellbar-cancel-button):not(.ui5-shellbar-no-overflow-button)\"));\n\t\tconst assistant = this.shadowRoot!.querySelector<HTMLElement>(\".ui5-shellbar-assistant-button\");\n\t\tconst searchButton = this.shadowRoot!.querySelector<HTMLElement>(\".ui5-shellbar-search-button\");\n\t\tconst contentItems = this.contentItemsWrappersSorted;\n\t\tconst firstContentItem = contentItems.pop();\n\t\tconst prioritizeContent = this.showSearchField && this.hasSearchField;\n\n\t\t// order here is important for the responsive behavior, the items will be\n\t\t// measured and hidden in the order they are returned until no overlap is detected\n\t\tlet itemsToHide = [];\n\n\t\tif (prioritizeContent) {\n\t\t\t// search field was toggled, the content items should make space for it\n\t\t\tconst overflowItems = [...items, assistant];\n\t\t\tconst visibleItems = overflowItems.filter(item => item && !item.classList.contains(\"ui5-shellbar-hidden-button\"));\n\t\t\tconst hiddenItems = overflowItems.filter(item => item && item.classList.contains(\"ui5-shellbar-hidden-button\"));\n\t\t\titemsToHide = [\n\t\t\t\t...hiddenItems,\n\t\t\t\t...contentItems,\n\t\t\t\tfirstContentItem,\n\t\t\t\t...visibleItems,\n\t\t\t];\n\t\t} else {\n\t\t\t// search field is close, actions should go to the overflow first\n\t\t\titemsToHide = [\n\t\t\t\t...items.toReversed(),\n\t\t\t\tassistant,\n\t\t\t\t...contentItems,\n\t\t\t\tsearchButton,\n\t\t\t\tfirstContentItem,\n\t\t\t];\n\t\t}\n\t\treturn itemsToHide.filter(Boolean) as HTMLElement[];\n\t}\n\n\tget contentItemsHidden() {\n\t\treturn this.contentItemsWrappersSorted.filter(item => item.classList.contains(\"ui5-shellbar-hidden-button\"));\n\t}\n\n\tget overflowWrapper(): HTMLElement | null {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-shellbar-overflow-container-right\");\n\t}\n\n\tget overflowInner(): HTMLElement | null {\n\t\treturn this.shadowRoot!.querySelector(\".ui5-shellbar-overflow-container-right-inner\");\n\t}\n\n\tget overflowed() {\n\t\tconst wrapper = this.overflowWrapper;\n\t\tconst inner = this.overflowInner;\n\t\tif (!wrapper || !inner) {\n\t\t\treturn false;\n\t\t}\n\t\treturn inner.offsetWidth > wrapper.offsetWidth;\n\t}\n\n\tget accInfo() {\n\t\tconst overflowExpanded = this.accessibilityAttributes.overflow?.expanded;\n\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\texpanded: this.accessibilityAttributes.notifications?.expanded,\n\t\t\t\t\thasPopup: this.accessibilityAttributes.notifications?.hasPopup,\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.accessibilityAttributes.profile?.hasPopup,\n\t\t\t\t\texpanded: this.accessibilityAttributes.profile?.expanded,\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.accessibilityAttributes.product?.hasPopup,\n\t\t\t\t\texpanded: this.accessibilityAttributes.product?.expanded,\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.accessibilityAttributes.search?.hasPopup,\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.accessibilityAttributes.overflow?.hasPopup || \"menu\" as const,\n\t\t\t\t\texpanded: overflowExpanded === undefined ? this._overflowPopoverExpanded : overflowExpanded,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tget accLogoRole() {\n\t\treturn this.accessibilityAttributes.logo?.role || \"link\";\n\t}\n\n\tget isSBreakPoint() {\n\t\treturn this.breakpointSize === \"S\";\n\t}\n}\n\nShellBar.define();\n\nexport default ShellBar;\n\nexport type {\n\tShellBarContentItemVisibilityChangeEventDetail,\n\tShellBarNotificationsClickEventDetail,\n\tShellBarProfileClickEventDetail,\n\tShellBarProductSwitchClickEventDetail,\n\tShellBarLogoClickEventDetail,\n\tShellBarMenuItemClickEventDetail,\n\tShellBarAccessibilityAttributes,\n\tShellBarSearchButtonEventDetail,\n};\n"]}
|
package/dist/ShellBarTemplate.js
CHANGED
|
@@ -7,22 +7,40 @@ export default function ShellBarTemplate() {
|
|
|
7
7
|
return (_jsxs(_Fragment, { children: [_jsxs("header", { class: this.classes.wrapper, "aria-label": this._shellbarText, onKeyDown: this._onKeyDown, part: "root", children: [_jsxs("div", { class: "ui5-shellbar-overflow-container ui5-shellbar-overflow-container-left", children: [this.startButton.length > 0 && _jsx("slot", { name: "startButton" }), this.hasMenuItems && (_jsxs(_Fragment, { children: [!this.showLogoInMenuButton && this.hasLogo && singleLogo.call(this), this.showTitleInMenuButton && _jsx("h1", { class: "ui5-hidden-text", children: this.primaryTitle }), this.showMenuButton && (_jsxs(_Fragment, { children: [_jsxs("button", { class: {
|
|
8
8
|
"ui5-shellbar-menu-button": true,
|
|
9
9
|
...this.classes.button,
|
|
10
|
-
}, onClick: this._headerPress, "aria-haspopup": "menu", "aria-expanded": this._menuPopoverExpanded, "data-ui5-stable": "menu", tabIndex: 0, children: [this.showLogoInMenuButton && (_jsx("span", { class: "ui5-shellbar-logo", "aria-label": this._logoText, title: this._logoText, children: _jsx("slot", { name: "logo" }) })), this.showTitleInMenuButton && (_jsx("div", { class: "ui5-shellbar-menu-button-title", children: this.primaryTitle })), _jsx(Icon, { class: "ui5-shellbar-menu-button-arrow", name: slimArrowDown })] }), this.secondaryTitle && !this.isSBreakPoint && (_jsx("div", { style: { display: "block" }, class: "ui5-shellbar-secondary-title", "data-ui5-stable": "secondary-title", children: this.secondaryTitle }))] }))] })), !this.hasMenuItems && (_jsxs(_Fragment, { children: [this.isSBreakPoint && this.hasLogo && singleLogo.call(this), !this.isSBreakPoint && (_jsxs(_Fragment, { children: [combinedLogo.call(this), this.secondaryTitle && this.primaryTitle && (_jsx("h2", { class: "ui5-shellbar-secondary-title", "data-ui5-stable": "secondary-title", children: this.secondaryTitle }))] }))] }))] }), this.hasMidContent && (_jsx("div", { class: "ui5-shellbar-overflow-container ui5-shellbar-mid-content", children: _jsx("slot", { name: "midContent" }) })),
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
"
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}
|
|
10
|
+
}, onClick: this._headerPress, "aria-haspopup": "menu", "aria-expanded": this._menuPopoverExpanded, "data-ui5-stable": "menu", tabIndex: 0, children: [this.showLogoInMenuButton && (_jsx("span", { class: "ui5-shellbar-logo", "aria-label": this._logoText, title: this._logoText, children: _jsx("slot", { name: "logo" }) })), this.showTitleInMenuButton && (_jsx("div", { class: "ui5-shellbar-menu-button-title", children: this.primaryTitle })), _jsx(Icon, { class: "ui5-shellbar-menu-button-arrow", name: slimArrowDown })] }), this.secondaryTitle && !this.isSBreakPoint && (_jsx("div", { style: { display: "block" }, class: "ui5-shellbar-secondary-title", "data-ui5-stable": "secondary-title", children: this.secondaryTitle }))] }))] })), !this.hasMenuItems && (_jsxs(_Fragment, { children: [this.isSBreakPoint && this.hasLogo && singleLogo.call(this), !this.isSBreakPoint && (_jsxs(_Fragment, { children: [combinedLogo.call(this), this.secondaryTitle && this.primaryTitle && (_jsx("h2", { class: "ui5-shellbar-secondary-title", "data-ui5-stable": "secondary-title", children: this.secondaryTitle }))] }))] }))] }), this.hasMidContent && (_jsx("div", { class: "ui5-shellbar-overflow-container ui5-shellbar-mid-content", children: _jsx("slot", { name: "midContent" }) })), _jsx("div", { class: "ui5-shellbar-overflow-container ui5-shellbar-overflow-container-right", children: _jsxs("div", { class: "ui5-shellbar-overflow-container-right-inner", children: [this.hasContentItems && (_jsxs(_Fragment, { children: [this.showStartSeparatorInWrapper && (_jsx("div", { class: {
|
|
11
|
+
"ui5-shellbar-separator": true,
|
|
12
|
+
"ui5-shellbar-separator-start": true,
|
|
13
|
+
} })), this.startContent.map((item, index) => {
|
|
14
|
+
const itemInfo = this._contentInfo.find(info => info.id === item._individualSlot);
|
|
15
|
+
return (_jsxs("div", { id: item._individualSlot, class: itemInfo?.classes, children: [!this.showStartSeparatorInWrapper && index === 0 && (_jsx("div", { class: {
|
|
16
|
+
"ui5-shellbar-separator": true,
|
|
17
|
+
"ui5-shellbar-separator-start": true,
|
|
18
|
+
} })), _jsx("slot", { name: item._individualSlot })] }, item._individualSlot));
|
|
19
|
+
}), _jsx("div", { class: "ui5-shellbar-spacer" }), this.endContent.map((item, index) => {
|
|
20
|
+
const itemInfo = this._contentInfo.find(info => info.id === item._individualSlot);
|
|
21
|
+
return (_jsxs("div", { id: item._individualSlot, class: itemInfo?.classes, children: [_jsx("slot", { name: item._individualSlot }), !this.showEndSeparatorInWrapper && index === this.endContent.length - 1 && (_jsx("div", { class: {
|
|
22
|
+
"ui5-shellbar-separator": true,
|
|
23
|
+
"ui5-shellbar-separator-end": true,
|
|
24
|
+
} }))] }, item._individualSlot));
|
|
25
|
+
}), this.showEndSeparatorInWrapper && (_jsx("div", { class: {
|
|
26
|
+
"ui5-shellbar-separator": true,
|
|
27
|
+
"ui5-shellbar-separator-end": true,
|
|
28
|
+
} }))] })), !this.hasContentItems && _jsx("div", { class: "ui5-shellbar-spacer" }), _jsxs("div", { class: "ui5-shellbar-overflow-container-right-child", role: this._rightChildRole, children: [this.hasSearchField && (_jsxs(_Fragment, { children: [this.showFullWidthSearch && (_jsxs("div", { class: "ui5-shellbar-search-full-width-wrapper", style: this.styles.searchField, children: [_jsx("div", { class: "ui5-shellbar-search-full-field", children: _jsx("slot", { name: "searchField" }) }), _jsx(Button, { onClick: this._handleCancelButtonPress, class: "ui5-shellbar-button ui5-shellbar-cancel-button", "data-ui5-stable": "cancel-search", children: this._cancelBtnText })] })), _jsx("div", { class: "ui5-shellbar-search-field", style: this.styles.searchField, children: _jsx("slot", { name: "searchField" }) }), _jsx(Button, { id: `${this._id}-item-1`, class: {
|
|
29
|
+
"ui5-shellbar-button": true,
|
|
30
|
+
"ui5-shellbar-search-button": true,
|
|
31
|
+
"ui5-shellbar-search-item-for-arrow-nav": true,
|
|
32
|
+
...this.classes.search,
|
|
33
|
+
}, icon: "sap-icon://search", "data-ui5-text": "Search", "data-ui5-notifications-count": this.notificationsCount, "data-ui5-stable": "toggle-search", onClick: this._handleSearchIconPress, tooltip: this._searchBtnOpen, "aria-label": this._searchBtnOpen, "aria-expanded": this.showSearchField, accessibilityAttributes: this.accInfo.search.accessibilityAttributes })] })), this.hasAssistant && (_jsx("div", { id: `${this._id}-assistant`, class: this.classes.assistant, children: _jsx("slot", { name: "assistant" }) })), this.showNotifications && (_jsx(Button, { id: `${this._id}-item-2`, class: {
|
|
34
|
+
"ui5-shellbar-button": true,
|
|
35
|
+
"ui5-shellbar-bell-button": true,
|
|
36
|
+
"ui5-shellbar-items-for-arrow-nav": true,
|
|
37
|
+
...this.classes.notification,
|
|
38
|
+
}, icon: "sap-icon://bell", "data-ui5-text": "Notifications", "data-ui5-notifications-count": this.notificationsCount, onClick: this._handleNotificationsPress, tooltip: this._notificationsText, accessibilityAttributes: this.accInfo.notifications.accessibilityAttributes, "data-ui5-stable": "notifications" })), this.customItemsInfo.map(item => (_jsx(Button, { id: item.id, class: `${item.classes} ui5-shellbar-items-for-arrow-nav`, icon: item.icon, tooltip: item.tooltip, "data-count": item.count, "data-ui5-notifications-count": this.notificationsCount, "data-ui5-external-action-item-id": item.refItemid, "data-ui5-stable": item.stableDomRef, onClick: item.press }, item.id)))] })] }) }), _jsx(Button, { id: `${this._id}-item-5`, class: {
|
|
39
|
+
"ui5-shellbar-button": true,
|
|
40
|
+
"ui5-shellbar-overflow-button": true,
|
|
41
|
+
"ui5-shellbar-items-for-arrow-nav": true,
|
|
42
|
+
...this.classes.overflow,
|
|
43
|
+
}, icon: "sap-icon://overflow", "data-count": this._overflowNotifications, onClick: this._handleOverflowPress, tooltip: this._overflowText, accessibilityAttributes: this.accInfo.overflow.accessibilityAttributes, "data-ui5-stable": "overflow" }), this.hasProfile && profileButton.call(this), this.showProductSwitch && (_jsx(Button, { id: `${this._id}-item-4`, class: "ui5-shellbar-no-overflow-button ui5-shellbar-button ui5-shellbar-button-product-switch ui5-shellbar-items-for-arrow-nav", icon: "sap-icon://grid", "data-ui5-text": "Product Switch", onClick: this._handleProductSwitchPress, tooltip: this._productsText, "aria-label": this._productSwitchBtnText, "aria-haspopup": "dialog", "aria-expanded": this.accInfo.products.accessibilityAttributes.expanded, accessibilityAttributes: this.accInfo.products.accessibilityAttributes, "data-ui5-stable": "product-switch" }))] }), ShellBarPopoverTemplate.call(this)] }));
|
|
26
44
|
}
|
|
27
45
|
function profileButton() {
|
|
28
46
|
return (_jsx(Button, { "data-profile-btn": true, id: `${this._id}-item-3`, onClick: this._handleProfilePress, tooltip: this._profileText, class: "ui5-shellbar-button ui5-shellbar-image-button ui5-shellbar-no-overflow-button ui5-shellbar-items-for-arrow-nav", "aria-label": this.imageBtnText, "aria-haspopup": "dialog", accessibilityAttributes: this.accInfo.profile.accessibilityAttributes, "data-ui5-stable": "profile", children: _jsx("slot", { name: "profile" }) }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShellBarTemplate.js","sourceRoot":"","sources":["../src/ShellBarTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport Button from \"@ui5/webcomponents/dist/Button.js\";\nimport type ShellBar from \"./ShellBar.js\";\nimport ShellBarPopoverTemplate from \"./ShellBarPopoverTemplate.js\";\nimport slimArrowDown from \"@ui5/webcomponents-icons/dist/slim-arrow-down.js\";\n\nexport default function ShellBarTemplate(this: ShellBar) {\n\treturn (\n\t\t<>\n\t\t\t<header\n\t\t\t\tclass={this.classes.wrapper}\n\t\t\t\taria-label={this._shellbarText}\n\t\t\t\tonKeyDown={this._onKeyDown}\n\t\t\t\tpart=\"root\">\n\t\t\t\t<div class=\"ui5-shellbar-overflow-container ui5-shellbar-overflow-container-left\">\n\t\t\t\t\t{this.startButton.length > 0 && <slot name=\"startButton\"></slot>}\n\n\t\t\t\t\t{this.hasMenuItems && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{!this.showLogoInMenuButton && this.hasLogo && singleLogo.call(this)}\n\t\t\t\t\t\t\t{this.showTitleInMenuButton && <h1 class=\"ui5-hidden-text\">{this.primaryTitle}</h1>}\n\t\t\t\t\t\t\t{this.showMenuButton && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-menu-button\": true,\n\t\t\t\t\t\t\t\t\t\t\t...this.classes.button,\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tonClick={this._headerPress}\n\t\t\t\t\t\t\t\t\t\taria-haspopup=\"menu\"\n\t\t\t\t\t\t\t\t\t\taria-expanded={this._menuPopoverExpanded}\n\t\t\t\t\t\t\t\t\t\tdata-ui5-stable=\"menu\"\n\t\t\t\t\t\t\t\t\t\ttabIndex={0}>\n\t\t\t\t\t\t\t\t\t\t{this.showLogoInMenuButton && (\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"ui5-shellbar-logo\" aria-label={this._logoText} title={this._logoText}>\n\t\t\t\t\t\t\t\t\t\t\t\t<slot name=\"logo\"></slot>\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t{this.showTitleInMenuButton && (\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"ui5-shellbar-menu-button-title\">{this.primaryTitle}</div>\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t<Icon class=\"ui5-shellbar-menu-button-arrow\" name={slimArrowDown} />\n\t\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t\t\t{this.secondaryTitle && !this.isSBreakPoint && (\n\t\t\t\t\t\t\t\t\t\t<div style={{ display: \"block\" }} class=\"ui5-shellbar-secondary-title\" data-ui5-stable=\"secondary-title\">\n\t\t\t\t\t\t\t\t\t\t\t{this.secondaryTitle}\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{!this.hasMenuItems && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{this.isSBreakPoint && this.hasLogo && singleLogo.call(this)}\n\t\t\t\t\t\t\t{!this.isSBreakPoint && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{combinedLogo.call(this)}\n\t\t\t\t\t\t\t\t\t{this.secondaryTitle && this.primaryTitle && (\n\t\t\t\t\t\t\t\t\t\t<h2 class=\"ui5-shellbar-secondary-title\" data-ui5-stable=\"secondary-title\">\n\t\t\t\t\t\t\t\t\t\t\t{this.secondaryTitle}\n\t\t\t\t\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t{this.hasMidContent && (\n\t\t\t\t\t<div class=\"ui5-shellbar-overflow-container ui5-shellbar-mid-content\">\n\t\t\t\t\t\t<slot name=\"midContent\"></slot>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t\t<div class=\"ui5-shellbar-overflow-container ui5-shellbar-overflow-container-right\">\n\t\t\t\t\t{this.hasAdditionalContext && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<div style={this.styles.additionalContext.start.separator} class=\"ui5-shellbar-separator ui5-shellbar-separator-start\"></div>\n\t\t\t\t\t\t\t<div class=\"ui5-shellbar-overflow-container-additional-content\" aria-label={this._additionalContextText} role={this._additionalContextRole}>\n\t\t\t\t\t\t\t\t{this.startContent.map(item => (\n\t\t\t\t\t\t\t\t\t<div key={item._individualSlot} id={item._individualSlot} class=\"ui5-shellbar-additional-content-item\">\n\t\t\t\t\t\t\t\t\t\t<slot name={item._individualSlot}></slot>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t<div class=\"ui5-shellbar-spacer\"></div>\n\t\t\t\t\t\t\t\t{this.endContent.map(item => (\n\t\t\t\t\t\t\t\t\t<div key={item._individualSlot} id={item._individualSlot} class=\"ui5-shellbar-additional-content-item\">\n\t\t\t\t\t\t\t\t\t\t<slot name={item._individualSlot}></slot>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div style={this.styles.additionalContext.end.separator} class=\"ui5-shellbar-separator ui5-shellbar-separator-end\"></div>\n\t\t\t\t\t\t</>\n\t\t\t\t\t)}\n\t\t\t\t\t{!this.hasAdditionalContext && <div class=\"ui5-shellbar-spacer\"></div>}\n\t\t\t\t\t<div class=\"ui5-shellbar-overflow-container-right-child\" role={this._rightChildRole}>\n\t\t\t\t\t\t{this.hasSearchField && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{this._showFullWidthSearch && (\n\t\t\t\t\t\t\t\t\t<div class=\"ui5-shellbar-search-full-width-wrapper\" style={this.styles.searchField}>\n\t\t\t\t\t\t\t\t\t\t<div class=\"ui5-shellbar-search-full-field\">\n\t\t\t\t\t\t\t\t\t\t\t<slot name=\"searchField\"></slot>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\tonClick={this._handleCancelButtonPress}\n\t\t\t\t\t\t\t\t\t\t\tclass=\"ui5-shellbar-button ui5-shellbar-cancel-button\"\n\t\t\t\t\t\t\t\t\t\t\tdata-ui5-stable=\"cancel-search\">\n\t\t\t\t\t\t\t\t\t\t\t{this._cancelBtnText}\n\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t<div class=\"ui5-shellbar-search-field\" style={this.styles.searchField}>\n\t\t\t\t\t\t\t\t\t{!this._showFullWidthSearch && <slot name=\"searchField\"></slot>}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tid={`${this._id}-item-1`}\n\t\t\t\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-button\": true,\n\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-search-button\": true,\n\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-search-item-for-arrow-nav\": true,\n\t\t\t\t\t\t\t\t\t\t...this.classes.search,\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\ticon=\"sap-icon://search\"\n\t\t\t\t\t\t\t\t\tdata-ui5-text=\"Search\"\n\t\t\t\t\t\t\t\t\tdata-ui5-notifications-count={this.notificationsCount}\n\t\t\t\t\t\t\t\t\tdata-ui5-stable=\"toggle-search\"\n\t\t\t\t\t\t\t\t\tonClick={this._handleSearchIconPress}\n\t\t\t\t\t\t\t\t\ttooltip={this._searchBtnOpen}\n\t\t\t\t\t\t\t\t\taria-label={this._searchBtnOpen}\n\t\t\t\t\t\t\t\t\taria-expanded={this._searchFieldExpanded}\n\t\t\t\t\t\t\t\t\taccessibilityAttributes={this.accInfo.search.accessibilityAttributes}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{this.hasAssistant && (\n\t\t\t\t\t\t\t<div id=\"assistant\" class={this.classes.assistant}>\n\t\t\t\t\t\t\t\t<slot name=\"assistant\"></slot>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{this.showNotifications && (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tid={`${this._id}-item-2`}\n\t\t\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t\t\t\"ui5-shellbar-button\": true,\n\t\t\t\t\t\t\t\t\t\"ui5-shellbar-bell-button\": true,\n\t\t\t\t\t\t\t\t\t\"ui5-shellbar-items-for-arrow-nav\": true,\n\t\t\t\t\t\t\t\t\t...this.classes.notification,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\ticon=\"sap-icon://bell\"\n\t\t\t\t\t\t\t\tdata-ui5-text=\"Notifications\"\n\t\t\t\t\t\t\t\tdata-ui5-notifications-count={this.notificationsCount}\n\t\t\t\t\t\t\t\tonClick={this._handleNotificationsPress}\n\t\t\t\t\t\t\t\ttooltip={this._notificationsText}\n\t\t\t\t\t\t\t\taccessibilityAttributes={this.accInfo.notifications.accessibilityAttributes}\n\t\t\t\t\t\t\t\tdata-ui5-stable=\"notifications\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{this.customItemsInfo.map(item => (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tkey={item.id}\n\t\t\t\t\t\t\t\tid={item.id}\n\t\t\t\t\t\t\t\tclass={`${item.classes} ui5-shellbar-items-for-arrow-nav`}\n\t\t\t\t\t\t\t\ticon={item.icon}\n\t\t\t\t\t\t\t\ttooltip={item.tooltip}\n\t\t\t\t\t\t\t\tdata-count={item.count}\n\t\t\t\t\t\t\t\tdata-ui5-notifications-count={this.notificationsCount}\n\t\t\t\t\t\t\t\tdata-ui5-external-action-item-id={item.refItemid}\n\t\t\t\t\t\t\t\tdata-ui5-stable={item.stableDomRef}\n\t\t\t\t\t\t\t\tonClick={item.press}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tid={`${this._id}-item-5`}\n\t\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t\t\"ui5-shellbar-no-overflow-button\": true, // always visible\n\t\t\t\t\t\t\t\t\"ui5-shellbar-button\": true,\n\t\t\t\t\t\t\t\t\"ui5-shellbar-overflow-button\": true,\n\t\t\t\t\t\t\t\t...this.classes.overflow,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\ticon=\"sap-icon://overflow\"\n\t\t\t\t\t\t\tdata-count={this._overflowNotifications}\n\t\t\t\t\t\t\tonClick={this._handleOverflowPress}\n\t\t\t\t\t\t\ttooltip={this._overflowText}\n\t\t\t\t\t\t\taccessibilityAttributes={this.accInfo.overflow.accessibilityAttributes}\n\t\t\t\t\t\t\tdata-ui5-stable=\"overflow\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{this.hasProfile && profileButton.call(this)}\n\t\t\t\t\t\t{this.showProductSwitch && (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tid={`${this._id}-item-4`}\n\t\t\t\t\t\t\t\tclass={`ui5-shellbar-no-overflow-button ui5-shellbar-button ui5-shellbar-button-product-switch ui5-shellbar-items-for-arrow-nav`}\n\t\t\t\t\t\t\t\ticon=\"sap-icon://grid\"\n\t\t\t\t\t\t\t\tdata-ui5-text=\"Product Switch\"\n\t\t\t\t\t\t\t\tonClick={this._handleProductSwitchPress}\n\t\t\t\t\t\t\t\ttooltip={this._productsText}\n\t\t\t\t\t\t\t\taria-label={this._productSwitchBtnText}\n\t\t\t\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t\t\t\t\taria-expanded={this.accInfo.products.accessibilityAttributes.expanded}\n\t\t\t\t\t\t\t\taccessibilityAttributes={this.accInfo.products.accessibilityAttributes}\n\t\t\t\t\t\t\t\tdata-ui5-stable=\"product-switch\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</header>\n\t\t\t{ShellBarPopoverTemplate.call(this)}\n\t\t</>\n\t);\n}\n\nfunction profileButton(this: ShellBar) {\n\treturn (\n\t\t<Button\n\t\t\tdata-profile-btn\n\t\t\tid={`${this._id}-item-3`}\n\t\t\tonClick={this._handleProfilePress}\n\t\t\ttooltip={this._profileText}\n\t\t\tclass=\"ui5-shellbar-button ui5-shellbar-image-button ui5-shellbar-no-overflow-button ui5-shellbar-items-for-arrow-nav\"\n\t\t\taria-label={this.imageBtnText}\n\t\t\taria-haspopup=\"dialog\"\n\t\t\taccessibilityAttributes={this.accInfo.profile.accessibilityAttributes}\n\t\t\tdata-ui5-stable=\"profile\"\n\t\t>\n\t\t\t<slot name=\"profile\"></slot>\n\t\t</Button>\n\t);\n}\n\nfunction singleLogo(this: ShellBar) {\n\treturn (\n\t\t<span\n\t\t\trole={this.accLogoRole}\n\t\t\tclass=\"ui5-shellbar-logo\"\n\t\t\taria-label={this._logoText}\n\t\t\ttitle={this._logoText}\n\t\t\tonClick={this._logoPress}\n\t\t\tonKeyDown={this._logoKeydown}\n\t\t\tonKeyUp={this._logoKeyup}\n\t\t\ttabIndex={0}\n\t\t\tdata-ui5-stable=\"logo\">\n\t\t\t<slot name=\"logo\"></slot>\n\t\t</span>\n\t);\n}\n\nfunction combinedLogo(this: ShellBar) {\n\treturn (\n\t\t<div\n\t\t\trole={this.accLogoRole}\n\t\t\tclass=\"ui5-shellbar-logo-area\"\n\t\t\tonClick={this._logoPress}\n\t\t\ttabIndex={0}\n\t\t\tonKeyDown={this._logoKeydown}\n\t\t\tonKeyUp={this._logoKeyup}\n\t\t\taria-label={this._logoAreaText}>\n\t\t\t{this.hasLogo && (\n\t\t\t\t<span\n\t\t\t\t\tclass=\"ui5-shellbar-logo\"\n\t\t\t\t\ttitle={this._logoText}\n\t\t\t\t\tonClick={this._logoPress}\n\t\t\t\t\tonKeyDown={this._logoKeydown}\n\t\t\t\t\tonKeyUp={this._logoKeyup}\n\t\t\t\t\tdata-ui5-stable=\"logo\">\n\t\t\t\t\t<slot name=\"logo\"></slot>\n\t\t\t\t</span>\n\t\t\t)}\n\t\t\t<div class=\"ui5-shellbar-headings\">\n\t\t\t\t{this.primaryTitle && (\n\t\t\t\t\t<h1 class=\"ui5-shellbar-title\">\n\t\t\t\t\t\t<bdi>{this.primaryTitle}</bdi>\n\t\t\t\t\t</h1>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"file":"ShellBarTemplate.js","sourceRoot":"","sources":["../src/ShellBarTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport Button from \"@ui5/webcomponents/dist/Button.js\";\nimport type ShellBar from \"./ShellBar.js\";\nimport ShellBarPopoverTemplate from \"./ShellBarPopoverTemplate.js\";\nimport slimArrowDown from \"@ui5/webcomponents-icons/dist/slim-arrow-down.js\";\n\nexport default function ShellBarTemplate(this: ShellBar) {\n\treturn (\n\t\t<>\n\t\t\t<header\n\t\t\t\tclass={this.classes.wrapper}\n\t\t\t\taria-label={this._shellbarText}\n\t\t\t\tonKeyDown={this._onKeyDown}\n\t\t\t\tpart=\"root\">\n\t\t\t\t<div class=\"ui5-shellbar-overflow-container ui5-shellbar-overflow-container-left\">\n\t\t\t\t\t{this.startButton.length > 0 && <slot name=\"startButton\"></slot>}\n\n\t\t\t\t\t{this.hasMenuItems && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{!this.showLogoInMenuButton && this.hasLogo && singleLogo.call(this)}\n\t\t\t\t\t\t\t{this.showTitleInMenuButton && <h1 class=\"ui5-hidden-text\">{this.primaryTitle}</h1>}\n\t\t\t\t\t\t\t{this.showMenuButton && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-menu-button\": true,\n\t\t\t\t\t\t\t\t\t\t\t...this.classes.button,\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tonClick={this._headerPress}\n\t\t\t\t\t\t\t\t\t\taria-haspopup=\"menu\"\n\t\t\t\t\t\t\t\t\t\taria-expanded={this._menuPopoverExpanded}\n\t\t\t\t\t\t\t\t\t\tdata-ui5-stable=\"menu\"\n\t\t\t\t\t\t\t\t\t\ttabIndex={0}>\n\t\t\t\t\t\t\t\t\t\t{this.showLogoInMenuButton && (\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"ui5-shellbar-logo\" aria-label={this._logoText} title={this._logoText}>\n\t\t\t\t\t\t\t\t\t\t\t\t<slot name=\"logo\"></slot>\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t{this.showTitleInMenuButton && (\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"ui5-shellbar-menu-button-title\">{this.primaryTitle}</div>\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t<Icon class=\"ui5-shellbar-menu-button-arrow\" name={slimArrowDown} />\n\t\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t\t\t{this.secondaryTitle && !this.isSBreakPoint && (\n\t\t\t\t\t\t\t\t\t\t<div style={{ display: \"block\" }} class=\"ui5-shellbar-secondary-title\" data-ui5-stable=\"secondary-title\">\n\t\t\t\t\t\t\t\t\t\t\t{this.secondaryTitle}\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{!this.hasMenuItems && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{this.isSBreakPoint && this.hasLogo && singleLogo.call(this)}\n\t\t\t\t\t\t\t{!this.isSBreakPoint && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{combinedLogo.call(this)}\n\t\t\t\t\t\t\t\t\t{this.secondaryTitle && this.primaryTitle && (\n\t\t\t\t\t\t\t\t\t\t<h2 class=\"ui5-shellbar-secondary-title\" data-ui5-stable=\"secondary-title\">\n\t\t\t\t\t\t\t\t\t\t\t{this.secondaryTitle}\n\t\t\t\t\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t{this.hasMidContent && (\n\t\t\t\t\t<div class=\"ui5-shellbar-overflow-container ui5-shellbar-mid-content\">\n\t\t\t\t\t\t<slot name=\"midContent\"></slot>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t\t<div class=\"ui5-shellbar-overflow-container ui5-shellbar-overflow-container-right\">\n\t\t\t\t\t<div class=\"ui5-shellbar-overflow-container-right-inner\">\n\t\t\t\t\t\t{this.hasContentItems && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{this.showStartSeparatorInWrapper && (\n\t\t\t\t\t\t\t\t\t<div class={{\n\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-separator\": true,\n\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-separator-start\": true,\n\t\t\t\t\t\t\t\t\t}}></div>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{this.startContent.map((item, index) => {\n\t\t\t\t\t\t\t\t\tconst itemInfo = this._contentInfo.find(info => info.id === item._individualSlot);\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<div key={item._individualSlot} id={item._individualSlot} class={itemInfo?.classes}>\n\t\t\t\t\t\t\t\t\t\t\t{!this.showStartSeparatorInWrapper && index === 0 && (\n\t\t\t\t\t\t\t\t\t\t\t\t<div class={{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-separator\": true,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-separator-start\": true,\n\t\t\t\t\t\t\t\t\t\t\t\t}}></div>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t<slot name={item._individualSlot}></slot>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t<div class=\"ui5-shellbar-spacer\"></div>\n\t\t\t\t\t\t\t\t{this.endContent.map((item, index) => {\n\t\t\t\t\t\t\t\t\tconst itemInfo = this._contentInfo.find(info => info.id === item._individualSlot);\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<div key={item._individualSlot} id={item._individualSlot} class={itemInfo?.classes}>\n\t\t\t\t\t\t\t\t\t\t\t<slot name={item._individualSlot}></slot>\n\t\t\t\t\t\t\t\t\t\t\t{!this.showEndSeparatorInWrapper && index === this.endContent.length - 1 && (\n\t\t\t\t\t\t\t\t\t\t\t\t<div class={{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-separator\": true,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-separator-end\": true,\n\t\t\t\t\t\t\t\t\t\t\t\t}}></div>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t{this.showEndSeparatorInWrapper && (\n\t\t\t\t\t\t\t\t\t<div class={{\n\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-separator\": true,\n\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-separator-end\": true,\n\t\t\t\t\t\t\t\t\t}}></div>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{!this.hasContentItems && <div class=\"ui5-shellbar-spacer\"></div>}\n\t\t\t\t\t\t<div class=\"ui5-shellbar-overflow-container-right-child\" role={this._rightChildRole}>\n\t\t\t\t\t\t\t{this.hasSearchField && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{this.showFullWidthSearch && (\n\t\t\t\t\t\t\t\t\t\t<div class=\"ui5-shellbar-search-full-width-wrapper\" style={this.styles.searchField}>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"ui5-shellbar-search-full-field\">\n\t\t\t\t\t\t\t\t\t\t\t\t<slot name=\"searchField\"></slot>\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\t\tonClick={this._handleCancelButtonPress}\n\t\t\t\t\t\t\t\t\t\t\t\tclass=\"ui5-shellbar-button ui5-shellbar-cancel-button\"\n\t\t\t\t\t\t\t\t\t\t\t\tdata-ui5-stable=\"cancel-search\">\n\t\t\t\t\t\t\t\t\t\t\t\t{this._cancelBtnText}\n\t\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t<div class=\"ui5-shellbar-search-field\" style={this.styles.searchField}>\n\t\t\t\t\t\t\t\t\t\t<slot name=\"searchField\"></slot>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tid={`${this._id}-item-1`}\n\t\t\t\t\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-button\": true,\n\t\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-search-button\": true,\n\t\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-search-item-for-arrow-nav\": true,\n\t\t\t\t\t\t\t\t\t\t\t...this.classes.search,\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\ticon=\"sap-icon://search\"\n\t\t\t\t\t\t\t\t\t\tdata-ui5-text=\"Search\"\n\t\t\t\t\t\t\t\t\t\tdata-ui5-notifications-count={this.notificationsCount}\n\t\t\t\t\t\t\t\t\t\tdata-ui5-stable=\"toggle-search\"\n\t\t\t\t\t\t\t\t\t\tonClick={this._handleSearchIconPress}\n\t\t\t\t\t\t\t\t\t\ttooltip={this._searchBtnOpen}\n\t\t\t\t\t\t\t\t\t\taria-label={this._searchBtnOpen}\n\t\t\t\t\t\t\t\t\t\taria-expanded={this.showSearchField}\n\t\t\t\t\t\t\t\t\t\taccessibilityAttributes={this.accInfo.search.accessibilityAttributes}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{this.hasAssistant && (\n\t\t\t\t\t\t\t\t<div id={`${this._id}-assistant`} class={this.classes.assistant}>\n\t\t\t\t\t\t\t\t\t<slot name=\"assistant\"></slot>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{this.showNotifications && (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tid={`${this._id}-item-2`}\n\t\t\t\t\t\t\t\t\tclass={{\n\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-button\": true,\n\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-bell-button\": true,\n\t\t\t\t\t\t\t\t\t\t\"ui5-shellbar-items-for-arrow-nav\": true,\n\t\t\t\t\t\t\t\t\t\t...this.classes.notification,\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\ticon=\"sap-icon://bell\"\n\t\t\t\t\t\t\t\t\tdata-ui5-text=\"Notifications\"\n\t\t\t\t\t\t\t\t\tdata-ui5-notifications-count={this.notificationsCount}\n\t\t\t\t\t\t\t\t\tonClick={this._handleNotificationsPress}\n\t\t\t\t\t\t\t\t\ttooltip={this._notificationsText}\n\t\t\t\t\t\t\t\t\taccessibilityAttributes={this.accInfo.notifications.accessibilityAttributes}\n\t\t\t\t\t\t\t\t\tdata-ui5-stable=\"notifications\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{this.customItemsInfo.map(item => (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tkey={item.id}\n\t\t\t\t\t\t\t\t\tid={item.id}\n\t\t\t\t\t\t\t\t\tclass={`${item.classes} ui5-shellbar-items-for-arrow-nav`}\n\t\t\t\t\t\t\t\t\ticon={item.icon}\n\t\t\t\t\t\t\t\t\ttooltip={item.tooltip}\n\t\t\t\t\t\t\t\t\tdata-count={item.count}\n\t\t\t\t\t\t\t\t\tdata-ui5-notifications-count={this.notificationsCount}\n\t\t\t\t\t\t\t\t\tdata-ui5-external-action-item-id={item.refItemid}\n\t\t\t\t\t\t\t\t\tdata-ui5-stable={item.stableDomRef}\n\t\t\t\t\t\t\t\t\tonClick={item.press}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<Button\n\t\t\t\t\tid={`${this._id}-item-5`}\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t\"ui5-shellbar-button\": true,\n\t\t\t\t\t\t\"ui5-shellbar-overflow-button\": true,\n\t\t\t\t\t\t\"ui5-shellbar-items-for-arrow-nav\": true,\n\t\t\t\t\t\t...this.classes.overflow,\n\t\t\t\t\t}}\n\t\t\t\t\ticon=\"sap-icon://overflow\"\n\t\t\t\t\tdata-count={this._overflowNotifications}\n\t\t\t\t\tonClick={this._handleOverflowPress}\n\t\t\t\t\ttooltip={this._overflowText}\n\t\t\t\t\taccessibilityAttributes={this.accInfo.overflow.accessibilityAttributes}\n\t\t\t\t\tdata-ui5-stable=\"overflow\"\n\t\t\t\t/>\n\t\t\t\t{this.hasProfile && profileButton.call(this)}\n\t\t\t\t{this.showProductSwitch && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tid={`${this._id}-item-4`}\n\t\t\t\t\t\tclass=\"ui5-shellbar-no-overflow-button ui5-shellbar-button ui5-shellbar-button-product-switch ui5-shellbar-items-for-arrow-nav\"\n\t\t\t\t\t\ticon=\"sap-icon://grid\"\n\t\t\t\t\t\tdata-ui5-text=\"Product Switch\"\n\t\t\t\t\t\tonClick={this._handleProductSwitchPress}\n\t\t\t\t\t\ttooltip={this._productsText}\n\t\t\t\t\t\taria-label={this._productSwitchBtnText}\n\t\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t\t\taria-expanded={this.accInfo.products.accessibilityAttributes.expanded}\n\t\t\t\t\t\taccessibilityAttributes={this.accInfo.products.accessibilityAttributes}\n\t\t\t\t\t\tdata-ui5-stable=\"product-switch\"\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</header>\n\t\t\t{ShellBarPopoverTemplate.call(this)}\n\t\t</>\n\t);\n}\n\nfunction profileButton(this: ShellBar) {\n\treturn (\n\t\t<Button\n\t\t\tdata-profile-btn\n\t\t\tid={`${this._id}-item-3`}\n\t\t\tonClick={this._handleProfilePress}\n\t\t\ttooltip={this._profileText}\n\t\t\tclass=\"ui5-shellbar-button ui5-shellbar-image-button ui5-shellbar-no-overflow-button ui5-shellbar-items-for-arrow-nav\"\n\t\t\taria-label={this.imageBtnText}\n\t\t\taria-haspopup=\"dialog\"\n\t\t\taccessibilityAttributes={this.accInfo.profile.accessibilityAttributes}\n\t\t\tdata-ui5-stable=\"profile\"\n\t\t>\n\t\t\t<slot name=\"profile\"></slot>\n\t\t</Button>\n\t);\n}\n\nfunction singleLogo(this: ShellBar) {\n\treturn (\n\t\t<span\n\t\t\trole={this.accLogoRole}\n\t\t\tclass=\"ui5-shellbar-logo\"\n\t\t\taria-label={this._logoText}\n\t\t\ttitle={this._logoText}\n\t\t\tonClick={this._logoPress}\n\t\t\tonKeyDown={this._logoKeydown}\n\t\t\tonKeyUp={this._logoKeyup}\n\t\t\ttabIndex={0}\n\t\t\tdata-ui5-stable=\"logo\">\n\t\t\t<slot name=\"logo\"></slot>\n\t\t</span>\n\t);\n}\n\nfunction combinedLogo(this: ShellBar) {\n\treturn (\n\t\t<div\n\t\t\trole={this.accLogoRole}\n\t\t\tclass=\"ui5-shellbar-logo-area\"\n\t\t\tonClick={this._logoPress}\n\t\t\ttabIndex={0}\n\t\t\tonKeyDown={this._logoKeydown}\n\t\t\tonKeyUp={this._logoKeyup}\n\t\t\taria-label={this._logoAreaText}>\n\t\t\t{this.hasLogo && (\n\t\t\t\t<span\n\t\t\t\t\tclass=\"ui5-shellbar-logo\"\n\t\t\t\t\ttitle={this._logoText}\n\t\t\t\t\tonClick={this._logoPress}\n\t\t\t\t\tonKeyDown={this._logoKeydown}\n\t\t\t\t\tonKeyUp={this._logoKeyup}\n\t\t\t\t\tdata-ui5-stable=\"logo\">\n\t\t\t\t\t<slot name=\"logo\"></slot>\n\t\t\t\t</span>\n\t\t\t)}\n\t\t\t<div class=\"ui5-shellbar-headings\">\n\t\t\t\t{this.primaryTitle && (\n\t\t\t\t\t<h1 class=\"ui5-shellbar-title\">\n\t\t\t\t\t\t<bdi>{this.primaryTitle}</bdi>\n\t\t\t\t\t</h1>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"]}
|