@ui5/webcomponents-fiori 2.25.0 → 2.26.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +33 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/ProductSwitch.js +12 -1
- package/dist/ProductSwitch.js.map +1 -1
- package/dist/SearchItemShowMore.js +1 -1
- package/dist/SearchItemShowMore.js.map +1 -1
- package/dist/ShellBar.js +1 -0
- package/dist/ShellBar.js.map +1 -1
- package/dist/ShellBarTemplate.js +1 -1
- package/dist/ShellBarTemplate.js.map +1 -1
- package/dist/SideNavigation.d.ts +5 -1
- package/dist/SideNavigation.js +16 -0
- package/dist/SideNavigation.js.map +1 -1
- package/dist/SideNavigationGroup.d.ts +10 -1
- package/dist/SideNavigationGroup.js +21 -8
- package/dist/SideNavigationGroup.js.map +1 -1
- package/dist/SideNavigationItem.d.ts +10 -1
- package/dist/SideNavigationItem.js +22 -9
- package/dist/SideNavigationItem.js.map +1 -1
- package/dist/UserMenuTemplate.js +2 -2
- package/dist/UserMenuTemplate.js.map +1 -1
- package/dist/UserSettingsAccountView.d.ts +8 -0
- package/dist/UserSettingsAccountView.js +11 -0
- package/dist/UserSettingsAccountView.js.map +1 -1
- package/dist/UserSettingsAccountViewTemplate.js +4 -4
- package/dist/UserSettingsAccountViewTemplate.js.map +1 -1
- package/dist/UserSettingsAppearanceViewItem.d.ts +2 -0
- package/dist/UserSettingsAppearanceViewItem.js +6 -0
- package/dist/UserSettingsAppearanceViewItem.js.map +1 -1
- package/dist/UserSettingsDialog.js +2 -0
- package/dist/UserSettingsDialog.js.map +1 -1
- package/dist/UserSettingsDialogTemplate.js +1 -1
- package/dist/UserSettingsDialogTemplate.js.map +1 -1
- package/dist/UserSettingsItem.d.ts +1 -0
- package/dist/UserSettingsItem.js +6 -2
- package/dist/UserSettingsItem.js.map +1 -1
- package/dist/UserSettingsItemTemplate.js +1 -1
- package/dist/UserSettingsItemTemplate.js.map +1 -1
- package/dist/Wizard.d.ts +14 -0
- package/dist/Wizard.js +10 -0
- package/dist/Wizard.js.map +1 -1
- package/dist/css/themes/Page.css +1 -1
- package/dist/css/themes/ProductSwitch.css +1 -1
- package/dist/css/themes/ProductSwitchItem.css +1 -1
- package/dist/css/themes/SearchItem.css +1 -1
- package/dist/css/themes/UserSettingsItem.css +1 -1
- package/dist/custom-elements-internal.json +96 -0
- package/dist/custom-elements.json +71 -0
- package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cnr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_id.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_mk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -1
- package/dist/generated/i18n/i18n-defaults.js +6 -6
- package/dist/generated/i18n/i18n-defaults.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/ProductSwitch.css.d.ts +1 -1
- package/dist/generated/themes/ProductSwitch.css.js +1 -1
- package/dist/generated/themes/ProductSwitch.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/SearchItem.css.d.ts +1 -1
- package/dist/generated/themes/SearchItem.css.js +1 -1
- package/dist/generated/themes/SearchItem.css.js.map +1 -1
- package/dist/generated/themes/UserSettingsItem.css.d.ts +1 -1
- package/dist/generated/themes/UserSettingsItem.css.js +1 -1
- package/dist/generated/themes/UserSettingsItem.css.js.map +1 -1
- package/dist/shellbar/ShellBarAccessibility.d.ts +1 -0
- package/dist/shellbar/ShellBarAccessibility.js +2 -1
- package/dist/shellbar/ShellBarAccessibility.js.map +1 -1
- package/dist/shellbar/templates/ShellBarSearchLegacyTemplate.js +1 -1
- package/dist/shellbar/templates/ShellBarSearchLegacyTemplate.js.map +1 -1
- package/dist/vscode.html-custom-data.json +16 -1
- package/dist/web-types.json +40 -2
- package/package.json +7 -7
- package/src/ShellBarTemplate.tsx +2 -1
- package/src/UserMenuTemplate.tsx +2 -4
- package/src/UserSettingsAccountViewTemplate.tsx +14 -13
- package/src/UserSettingsDialogTemplate.tsx +1 -1
- package/src/UserSettingsItemTemplate.tsx +1 -1
- package/src/i18n/messagebundle_ar.properties +7 -3
- package/src/i18n/messagebundle_bg.properties +7 -3
- package/src/i18n/messagebundle_ca.properties +7 -3
- package/src/i18n/messagebundle_cnr.properties +7 -3
- package/src/i18n/messagebundle_cs.properties +7 -3
- package/src/i18n/messagebundle_cy.properties +7 -3
- package/src/i18n/messagebundle_da.properties +7 -3
- package/src/i18n/messagebundle_de.properties +6 -2
- package/src/i18n/messagebundle_el.properties +7 -3
- package/src/i18n/messagebundle_en.properties +10 -6
- package/src/i18n/messagebundle_en_GB.properties +7 -3
- package/src/i18n/messagebundle_en_US_sappsd.properties +7 -3
- package/src/i18n/messagebundle_en_US_saptrc.properties +7 -3
- package/src/i18n/messagebundle_es.properties +7 -3
- package/src/i18n/messagebundle_es_MX.properties +7 -3
- package/src/i18n/messagebundle_et.properties +7 -3
- package/src/i18n/messagebundle_fi.properties +8 -4
- package/src/i18n/messagebundle_fr.properties +6 -2
- package/src/i18n/messagebundle_fr_CA.properties +5 -1
- package/src/i18n/messagebundle_hi.properties +6 -2
- package/src/i18n/messagebundle_hr.properties +7 -3
- package/src/i18n/messagebundle_hu.properties +7 -3
- package/src/i18n/messagebundle_id.properties +7 -3
- package/src/i18n/messagebundle_it.properties +7 -3
- package/src/i18n/messagebundle_iw.properties +7 -3
- package/src/i18n/messagebundle_ja.properties +7 -3
- package/src/i18n/messagebundle_kk.properties +7 -3
- package/src/i18n/messagebundle_ko.properties +6 -2
- package/src/i18n/messagebundle_lt.properties +7 -3
- package/src/i18n/messagebundle_lv.properties +7 -3
- package/src/i18n/messagebundle_mk.properties +7 -3
- package/src/i18n/messagebundle_ms.properties +7 -3
- package/src/i18n/messagebundle_nl.properties +7 -3
- package/src/i18n/messagebundle_no.properties +7 -3
- package/src/i18n/messagebundle_pl.properties +7 -3
- package/src/i18n/messagebundle_pt.properties +7 -3
- package/src/i18n/messagebundle_pt_PT.properties +6 -2
- package/src/i18n/messagebundle_ro.properties +7 -3
- package/src/i18n/messagebundle_ru.properties +7 -3
- package/src/i18n/messagebundle_sh.properties +7 -3
- package/src/i18n/messagebundle_sk.properties +7 -3
- package/src/i18n/messagebundle_sl.properties +7 -3
- package/src/i18n/messagebundle_sr.properties +7 -3
- package/src/i18n/messagebundle_sv.properties +7 -3
- package/src/i18n/messagebundle_th.properties +4 -0
- package/src/i18n/messagebundle_tr.properties +7 -3
- package/src/i18n/messagebundle_uk.properties +7 -3
- package/src/i18n/messagebundle_vi.properties +7 -3
- package/src/i18n/messagebundle_zh_CN.properties +7 -3
- package/src/i18n/messagebundle_zh_TW.properties +7 -3
- package/src/shellbar/templates/ShellBarSearchLegacyTemplate.tsx +0 -1
- package/src/themes/Page.css +14 -16
- package/src/themes/ProductSwitch.css +6 -1
- package/src/themes/ProductSwitchItem.css +5 -12
- package/src/themes/SearchItem.css +9 -10
- package/src/themes/UserSettingsItem.css +10 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SideNavigation.js","sourceRoot":"","sources":["../src/SideNavigation.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { Slot, DefaultSlot, ChangeInfo } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport { createMultiInstanceChecker } from \"@ui5/webcomponents-base/dist/util/createMultiInstanceChecker.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport jsxRender from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport type ResponsivePopover from \"@ui5/webcomponents/dist/ResponsivePopover.js\";\nimport type NavigationMenu from \"./NavigationMenu.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport ItemNavigation from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport { isPhone } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport createInstanceChecker from \"@ui5/webcomponents-base/dist/util/createInstanceChecker.js\";\n\nimport NavigationMode from \"@ui5/webcomponents-base/dist/types/NavigationMode.js\";\nimport type SideNavigationItemBase from \"./SideNavigationItemBase.js\";\nimport { isInstanceOfSideNavigationSelectableItemBase } from \"./SideNavigationSelectableItemBase.js\";\nimport { isInstanceOfSideNavigationItemBase } from \"./SideNavigationItemBase.js\";\nimport type SideNavigationSelectableItemBase from \"./SideNavigationSelectableItemBase.js\";\nimport { isInstanceOfSideNavigationItem } from \"./SideNavigationItem.js\";\nimport { isInstanceOfSideNavigationGroup } from \"./SideNavigationGroup.js\";\nimport type SideNavigationItem from \"./SideNavigationItem.js\";\nimport type SideNavigationSubItem from \"./SideNavigationSubItem.js\";\nimport type SideNavigationGroup from \"./SideNavigationGroup.js\";\nimport SideNavigationTemplate from \"./SideNavigationTemplate.js\";\n\nimport {\n\tSIDE_NAVIGATION_POPOVER_HIDDEN_TEXT,\n\tSIDE_NAVIGATION_COLLAPSED_LIST_ARIA_ROLE_DESC,\n\tSIDE_NAVIGATION_LIST_ARIA_ROLE_DESC,\n\tSIDE_NAVIGATION_OVERFLOW_ACCESSIBLE_NAME,\n\tSIDE_NAVIGATION_FLEXIBLE_LIST_LABEL,\n\tSIDE_NAVIGATION_FIXED_LIST_LABEL,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport SideNavigationCss from \"./generated/themes/SideNavigation.css.js\";\nimport SideNavigationPopoverCss from \"./generated/themes/SideNavigationPopover.css.js\";\n\nconst PAGE_UP_DOWN_SIZE = 10;\nconst SCREEN_WIDTH_BREAKPOINT = 600;\n\ntype SideNavigationPopoverContents = {\n\titem: SideNavigationItem,\n\tsubItems: Array<SideNavigationSubItem>,\n};\n\ntype SideNavigationSelectionChangeEventDetail = {\n\titem: SideNavigationItemBase,\n};\n\ntype SideNavigationItemClickEventDetail = {\n\titem: SideNavigationSelectableItemBase,\n};\n\ntype PopupSideNavigationItem = SideNavigationItem & { associatedItem: SideNavigationSelectableItemBase };\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `SideNavigation` is used as a standard menu in applications.\n * It consists of three containers: header (top-aligned), main navigation section (top-aligned) and the secondary section (bottom-aligned).\n *\n * - The header is meant for displaying user related information - profile data, avatar, etc.\n * - The main navigation section is related to the user's current work context.\n * - The secondary section is mostly used to link additional information that may be of interest (legal information, developer communities, external help, contact information and so on).\n *\n * ### Usage\n *\n * Use the available `ui5-side-navigation-group`, `ui5-side-navigation-item`\n * and `ui5-side-navigation-sub-item` components to build your menu.\n * The items can consist of text only or an icon with text. The use or non-use of icons must be consistent for all items on one level.\n * You must not combine entries with and without icons on the same level. We strongly recommend that you do not use icons on the second level.\n *\n * The `ui5-side-navigation` component is designed to be used within a `ui5-navigation-layout` component to ensure an optimal user experience.\n *\n * Using it standalone may not match the intended design and functionality.\n * For example, the side navigation may not exhibit the correct behavior on smaller screens.\n * Additionally, the padding of the `ui5-shellbar` will not match the padding of the side navigation.\n *\n * ### Keyboard Handling\n *\n * ### Fast Navigation\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigation.js\"`\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigationGroup.js\";` (for `ui5-side-navigation-group`)\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigationItem.js\";` (for `ui5-side-navigation-item`)\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigationSubItem.js\";` (for `ui5-side-navigation-sub-item`)\n * @constructor\n * @extends UI5Element\n * @since 1.0.0-rc.8\n * @public\n */\n\n@customElement({\n\ttag: \"ui5-side-navigation\",\n\tfastNavigation: true,\n\trenderer: jsxRender,\n\ttemplate: SideNavigationTemplate,\n\tstyles: [SideNavigationCss, SideNavigationPopoverCss],\n})\n\n/**\n * Fired when the selection has changed via user interaction.\n *\n * @param {SideNavigationSelectableItemBase} item The selected item.\n * @public\n */\n@event(\"selection-change\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n\n/**\n * Fired when an item is clicked.\n *\n * @param {SideNavigationSelectableItemBase} item The clicked item.\n * @since 2.20.0\n * @public\n */\n@event(\"item-click\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n\nclass SideNavigation extends UI5Element {\n\teventDetails!: {\n\t\t\"selection-change\": SideNavigationSelectionChangeEventDetail,\n\t\t\"item-click\": SideNavigationItemClickEventDetail\n\t}\n\n\t/**\n\t * Defines whether the `ui5-side-navigation` is expanded or collapsed.\n\t *\n\t * **Note:** On small screens (screen width of 599px or less) the collapsed mode is not supported, and in\n\t * expanded mode the side navigation will take the whole width of the screen.\n\t * The `ui5-side-navigation` component is intended to be used within a `ui5-navigation-layout`\n\t * component to ensure proper responsive behavior. If you choose not to use the\n\t * `ui5-navigation-layout`, you will need to implement the appropriate responsive patterns yourself,\n\t * particularly for smaller screens where the collapsed mode should not be used.\n\t *\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tcollapsed = false;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.9.0\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines the main items of the component.\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n\titems!: DefaultSlot<SideNavigationItemBase>;\n\n\t/**\n\t * Defines the fixed items at the bottom of the component.\n\t *\n\t * **Note:** In order to achieve the best user experience, it is recommended that you keep the fixed items \"flat\" (do not pass sub-items)\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true })\n\tfixedItems!: Slot<SideNavigationItemBase>;\n\n\t/**\n\t * Defines the header of the `ui5-side-navigation`.\n\t *\n\t * **Note:** The header is displayed when the component is expanded - the property `collapsed` is false;\n\t *\n\t * @public\n\t * @since 1.0.0-rc.11\n\t */\n\t@slot()\n\theader!: Slot<HTMLElement>;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Object })\n\t_popoverContents!: SideNavigationPopoverContents;\n\n\t@property({ type: Boolean })\n\tinPopover = false;\n\n\t@property({ type: Object })\n\t_menuPopoverItems: Array<SideNavigationItem> = [];\n\n\t_isOverflow = false;\n\t_flexibleItemNavigation: ItemNavigation;\n\t_fixedItemNavigation: ItemNavigation;\n\n\t@i18n(\"@ui5/webcomponents-fiori\")\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._flexibleItemNavigation = new ItemNavigation(this, {\n\t\t\tskipItemsSize: PAGE_UP_DOWN_SIZE, // PAGE_UP and PAGE_DOWN will skip trough 10 items\n\t\t\tnavigationMode: NavigationMode.Vertical,\n\t\t\tgetItemsCallback: () => this.getEnabledFlexibleItems(),\n\t\t});\n\n\t\tthis._fixedItemNavigation = new ItemNavigation(this, {\n\t\t\tskipItemsSize: PAGE_UP_DOWN_SIZE, // PAGE_UP and PAGE_DOWN will skip trough 10 items\n\t\t\tnavigationMode: NavigationMode.Vertical,\n\t\t\tgetItemsCallback: () => this.getEnabledFixedItems(),\n\t\t});\n\n\t\tthis._handleResizeBound = this.handleResize.bind(this);\n\t\tthis._isOverflow = false;\n\t}\n\n\t_handleResizeBound: () => void;\n\t_fnTransitionEnd?: (event: TransitionEvent) => void;\n\t_animationTimeoutId?: ReturnType<typeof setTimeout>;\n\t_bAnimating = false;\n\n\tonInvalidation(changeInfo: ChangeInfo) {\n\t\tif (changeInfo.type === \"property\" && changeInfo.name === \"collapsed\") {\n\t\t\tif (this.getDomRef()) {\n\t\t\t\tthis._bAnimating = true;\n\t\t\t}\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tsuper.onBeforeRendering();\n\n\t\tthis._getAllItems(this.items)\n\t\t\t.concat(this._getAllItems(this.fixedItems))\n\t\t\t.forEach(item => {\n\t\t\t\titem.sideNavCollapsed = this.collapsed;\n\t\t\t\titem.inPopover = this.inPopover;\n\t\t\t\titem.sideNavigation = this;\n\t\t\t\titem.sideNavAnimating = this._bAnimating;\n\t\t\t});\n\n\t\tthis.initGroupsSettings(this.items);\n\t\tthis.initGroupsSettings(this.fixedItems);\n\t}\n\n\tinitGroupsSettings(items: Array<SideNavigationItemBase>) {\n\t\tlet isPreviousItemGroup = false;\n\n\t\titems.forEach(item => {\n\t\t\tconst isGroup = isInstanceOfSideNavigationGroup(item);\n\n\t\t\tif (isGroup) {\n\t\t\t\titem.belowGroup = isPreviousItemGroup;\n\t\t\t}\n\n\t\t\tisPreviousItemGroup = isGroup;\n\t\t});\n\t}\n\n\t_onAfterPopoverOpen() {\n\t\t// as the tree/list inside the popover is never destroyed,\n\t\t// item navigation index should be managed, because items are\n\t\t// dynamically recreated and tabIndexes are not updated\n\t\tconst tree = this.getPickerTree();\n\t\tconst selectedItem = tree._findSelectedItem(tree.items);\n\t\tif (selectedItem) {\n\t\t\tselectedItem.focus();\n\t\t} else {\n\t\t\ttree.items[0]?.applyInitialFocusInPopover();\n\t\t}\n\t}\n\n\t_onBeforePopoverOpen() {\n\t\tconst popover = this.getPicker();\n\t\t(popover?.opener as HTMLElement)?.classList.add(\"ui5-sn-item-active\");\n\t}\n\n\t_onBeforePopoverClose() {\n\t\tconst popover = this.getPicker();\n\t\t(popover?.opener as HTMLElement)?.classList.remove(\"ui5-sn-item-active\");\n\t}\n\n\t_onBeforeMenuOpen() {\n\t\tconst popover = this.getOverflowPopover();\n\t\tpopover._popover.preventFocusRestore = false;\n\t\t(popover?.opener as HTMLElement)?.classList.add(\"ui5-sn-item-active\");\n\t}\n\n\t_onBeforeMenuClose() {\n\t\tconst popover = this.getOverflowPopover();\n\t\t(popover?.opener as HTMLElement)?.classList.remove(\"ui5-sn-item-active\");\n\t}\n\n\t_bn?: SideNavigationSelectableItemBase;\n\n\t_onMenuClose() {\n\t\tconst menu = this.getOverflowPopover();\n\t\tif (!menu._popover.preventFocusRestore) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst selectedItem = this._findSelectedItem(this.items);\n\n\t\tif (selectedItem) {\n\t\t\tthis.focusItem(selectedItem);\n\t\t\tselectedItem.focus();\n\t\t}\n\t}\n\n\tget accSideNavigationPopoverHiddenText() {\n\t\treturn SideNavigation.i18nBundle.getText(SIDE_NAVIGATION_POPOVER_HIDDEN_TEXT);\n\t}\n\n\tget ariaRoleDescNavigationList() {\n\t\tlet key = SIDE_NAVIGATION_LIST_ARIA_ROLE_DESC;\n\t\tif (this.collapsed) {\n\t\t\tkey = SIDE_NAVIGATION_COLLAPSED_LIST_ARIA_ROLE_DESC;\n\t\t}\n\n\t\treturn SideNavigation.i18nBundle.getText(key);\n\t}\n\n\tget navigationMenuPrimaryHiddenText() {\n\t\treturn SideNavigation.i18nBundle.getText(SIDE_NAVIGATION_FLEXIBLE_LIST_LABEL);\n\t}\n\n\tget navigationMenuFooterHiddenText() {\n\t\treturn SideNavigation.i18nBundle.getText(SIDE_NAVIGATION_FIXED_LIST_LABEL);\n\t}\n\n\tget overflowAccessibleName() {\n\t\treturn SideNavigation.i18nBundle.getText(SIDE_NAVIGATION_OVERFLOW_ACCESSIBLE_NAME);\n\t}\n\n\tget _effectiveCollapsed() {\n\t\treturn this.collapsed && !this._isSmallScreen();\n\t}\n\n\thandlePopupItemClick(e: KeyboardEvent | PointerEvent) {\n\t\tconst associatedItem = (e.target as PopupSideNavigationItem).associatedItem;\n\n\t\tif (associatedItem.effectiveDisabled) {\n\t\t\te.stopPropagation();\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tif (isInstanceOfSideNavigationItem(associatedItem) && associatedItem.unselectable) {\n\t\t\treturn;\n\t\t}\n\n\t\te.stopPropagation();\n\n\t\tconst altKey = (e.detail as any)?.altKey,\n\t\t\tctrlKey = (e.detail as any)?.ctrlKey,\n\t\t\tmetaKey = (e.detail as any)?.metaKey,\n\t\t\tshiftKey = (e.detail as any)?.shiftKey;\n\n\t\tconst executeEvent = associatedItem.fireDecoratorEvent(\"click\", {\n\t\t\taltKey,\n\t\t\tctrlKey,\n\t\t\tmetaKey,\n\t\t\tshiftKey,\n\t\t});\n\n\t\tif (!executeEvent) {\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tif (associatedItem.selected) {\n\t\t\tthis.closePicker();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._selectItem(associatedItem);\n\n\t\tthis.closePicker();\n\t\tthis._popoverContents.item?.getDomRef()!.classList.add(\"ui5-sn-item-no-hover-effect\");\n\t}\n\n\tgetOverflowPopover() {\n\t\treturn this.shadowRoot!.querySelector<NavigationMenu>(\".ui5-side-navigation-overflow-menu\")!;\n\t}\n\n\tgetPicker() {\n\t\treturn this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\topenPicker(opener: HTMLElement) {\n\t\topener.classList.add(\"ui5-sn-item-active\");\n\n\t\tconst responsivePopover = this.getPicker();\n\t\tresponsivePopover.opener = opener;\n\t\tresponsivePopover.open = true;\n\t}\n\n\topenOverflowMenu(opener: HTMLElement) {\n\t\topener.classList.add(\"ui5-sn-item-active\");\n\n\t\tconst menu = this.getOverflowPopover();\n\t\tmenu.opener = opener;\n\t\tmenu.open = true;\n\t}\n\n\tclosePicker() {\n\t\tconst responsivePopover = this.getPicker();\n\t\tresponsivePopover.open = false;\n\t}\n\n\tcloseMenu(preventFocusRestore: boolean = false) {\n\t\tconst menu = this.getOverflowPopover();\n\t\tmenu._popover.preventFocusRestore = preventFocusRestore;\n\t\tmenu.open = false;\n\t}\n\n\tgetPickerTree() {\n\t\tconst picker = this.getPicker();\n\t\treturn picker.querySelector<SideNavigation>(\"[ui5-side-navigation]\")!;\n\t}\n\n\tget hasHeader() {\n\t\treturn !!this.header.length;\n\t}\n\n\tget showHeader() {\n\t\treturn this.hasHeader && !this.collapsed;\n\t}\n\n\tget hasFixedItems() {\n\t\treturn !!this.fixedItems.length;\n\t}\n\n\tget _rootRole() {\n\t\treturn this.inPopover ? \"none\" : undefined;\n\t}\n\n\tgetEnabledFixedItems(): Array<ITabbable> {\n\t\treturn this.getEnabledItems(this.fixedItems);\n\t}\n\n\tgetEnabledFlexibleItems(): Array<ITabbable> {\n\t\tconst items = this.getEnabledItems(this.items);\n\n\t\tif (this._overflowItem) {\n\t\t\titems.push(this._overflowItem);\n\t\t}\n\n\t\treturn items;\n\t}\n\n\tgetEnabledItems(items: Array<SideNavigationItemBase>): Array<ITabbable> {\n\t\tconst result = new Array<ITabbable>();\n\n\t\tthis._getFocusableItems(items).forEach(item => {\n\t\t\tif (this.collapsed && item.classList.contains(\"ui5-sn-item-hidden\")) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tresult.push(item);\n\t\t});\n\n\t\treturn result;\n\t}\n\n\tfocusItem(item: SideNavigationItemBase) {\n\t\tif (item.isFixedItem) {\n\t\t\tthis._fixedItemNavigation.setCurrentItem(item);\n\t\t} else {\n\t\t\tthis._flexibleItemNavigation.setCurrentItem(item);\n\t\t}\n\t}\n\n\tonAfterRendering() {\n\t\tif (!this.getDomRef()?.matches(\":focus-within\")) {\n\t\t\tlet selectedItem = this._findSelectedItem(this.items);\n\t\t\tif (selectedItem) {\n\t\t\t\tthis._flexibleItemNavigation.setCurrentItem(selectedItem);\n\t\t\t}\n\n\t\t\tselectedItem = this._findSelectedItem(this.fixedItems);\n\t\t\tif (selectedItem) {\n\t\t\t\tthis._fixedItemNavigation.setCurrentItem(selectedItem);\n\t\t\t}\n\t\t}\n\n\t\tif (this.collapsed) {\n\t\t\tthis.handleResize();\n\t\t}\n\n\t\tthis._handleExpandCollapseAnimation();\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._handleResizeBound);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._handleResizeBound);\n\t\tif (this._fnTransitionEnd) {\n\t\t\tthis.removeEventListener(\"transitionend\", this._fnTransitionEnd);\n\t\t\tthis._fnTransitionEnd = undefined;\n\t\t}\n\t\tif (this._animationTimeoutId) {\n\t\t\tclearTimeout(this._animationTimeoutId);\n\t\t\tthis._animationTimeoutId = undefined;\n\t\t}\n\t\tthis._bAnimating = false;\n\t}\n\n\thandleResize() {\n\t\t// In smaller screen the side navigation hidden when collapsed and there is no overflow items\n\t\tif (window.innerWidth > SCREEN_WIDTH_BREAKPOINT) {\n\t\t\tthis._updateOverflowItems();\n\t\t}\n\t}\n\n\t_updateOverflowItems() {\n\t\tconst domRef = this.getDomRef();\n\t\tif (!this.collapsed || !domRef) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst overflowItem = this._overflowItem!;\n\t\tconst flexibleContentDomRef: HTMLElement = domRef.querySelector(\".ui5-sn-flexible\")!;\n\t\tif (!overflowItem) {\n\t\t\treturn null;\n\t\t}\n\n\t\toverflowItem.classList.add(\"ui5-sn-item-hidden\");\n\n\t\tconst overflowItems = this.overflowItems;\n\n\t\tlet itemsHeight = overflowItems.reduce<number>((sum, itemRef) => {\n\t\t\tif (!itemRef) {\n\t\t\t\treturn sum;\n\t\t\t}\n\t\t\titemRef.classList.remove(\"ui5-sn-item-hidden\");\n\t\t\treturn sum + itemRef.offsetHeight;\n\t\t}, 0);\n\n\t\tconst { paddingTop, paddingBottom } = window.getComputedStyle(flexibleContentDomRef);\n\t\tconst listHeight = flexibleContentDomRef?.offsetHeight - parseInt(paddingTop) - parseInt(paddingBottom);\n\n\t\tif (itemsHeight <= listHeight) {\n\t\t\treturn;\n\t\t}\n\n\t\toverflowItem.classList.remove(\"ui5-sn-item-hidden\");\n\n\t\titemsHeight = overflowItem.offsetHeight;\n\n\t\tconst selectedItem = overflowItems.filter(isInstanceOfSideNavigationSelectableItemBase).find(item => item._selected);\n\n\t\tif (selectedItem) {\n\t\t\tconst selectedItemDomRef = selectedItem.getDomRef();\n\n\t\t\tif (selectedItemDomRef) {\n\t\t\t\tconst { marginTop, marginBottom } = window.getComputedStyle(selectedItemDomRef);\n\t\t\t\titemsHeight += selectedItemDomRef.offsetHeight + parseFloat(marginTop) + parseFloat(marginBottom);\n\t\t\t}\n\t\t}\n\n\t\toverflowItems.forEach(item => {\n\t\t\tif (!item || item === selectedItem) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet itemDomRef;\n\n\t\t\tif (isInstanceOfSideNavigationItemBase(item) && item.getDomRef()) {\n\t\t\t\titemDomRef = item.getDomRef();\n\t\t\t} else {\n\t\t\t\titemDomRef = item;\n\t\t\t}\n\n\t\t\tif (itemDomRef) {\n\t\t\t\tconst { marginTop, marginBottom } = window.getComputedStyle(itemDomRef);\n\t\t\t\titemsHeight += itemDomRef.offsetHeight + parseFloat(marginTop) + parseFloat(marginBottom);\n\n\t\t\t\tif (itemsHeight > listHeight) {\n\t\t\t\t\titem.classList.add(\"ui5-sn-item-hidden\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tthis._flexibleItemNavigation._init();\n\t}\n\n\t_findFocusedItem(items: Array<SideNavigationItemBase>): SideNavigationItemBase | undefined {\n\t\treturn this._getFocusableItems(items).find(item => item.forcedTabIndex === \"0\");\n\t}\n\n\t_getSelectableItems(items: Array<SideNavigationItemBase>): Array<SideNavigationSelectableItemBase> {\n\t\treturn items.filter(instanceOfItemOrGroup).reduce((result, item) => {\n\t\t\treturn result.concat(item.selectableItems);\n\t\t}, new Array<SideNavigationSelectableItemBase>());\n\t}\n\n\t_getFocusableItems(items: Array<SideNavigationItemBase>): Array<SideNavigationItemBase> {\n\t\treturn items.filter(instanceOfItemOrGroup).reduce((result, item) => {\n\t\t\treturn result.concat(item.focusableItems);\n\t\t}, new Array<SideNavigationItemBase>());\n\t}\n\n\t_getAllItems(items: Array<SideNavigationItemBase>): Array<SideNavigationItemBase> {\n\t\treturn items.filter(instanceOfItemOrGroup).reduce((result, item) => {\n\t\t\treturn result.concat(item.allItems);\n\t\t}, new Array<SideNavigationItemBase>());\n\t}\n\n\t_findSelectedItem(items: Array<SideNavigationItemBase>): SideNavigationSelectableItemBase | undefined {\n\t\treturn this._getSelectableItems(items).find(item => item._selected);\n\t}\n\n\tget overflowItems(): Array<HTMLElement> {\n\t\treturn this.items.filter(instanceOfItemOrGroup).reduce((result, item) => {\n\t\t\treturn result.concat(item.overflowItems);\n\t\t}, new Array<HTMLElement>());\n\t}\n\n\tprivate _isSmallScreen(): boolean {\n\t\treturn isPhone() || window.innerWidth < SCREEN_WIDTH_BREAKPOINT;\n\t}\n\n\t_handleExpandCollapseAnimation() {\n\t\tif (!this._bAnimating) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst oDomRef = this.getDomRef();\n\t\tif (!oDomRef) {\n\t\t\treturn;\n\t\t}\n\n\t\toDomRef.classList.add(\"ui5-sn-animating\");\n\n\t\tif (this._fnTransitionEnd) {\n\t\t\tthis.removeEventListener(\"transitionend\", this._fnTransitionEnd);\n\t\t}\n\n\t\tif (this._animationTimeoutId) {\n\t\t\tclearTimeout(this._animationTimeoutId);\n\t\t}\n\n\t\tconst cleanupAnimation = () => {\n\t\t\toDomRef.classList.remove(\"ui5-sn-animating\");\n\t\t\tif (this._fnTransitionEnd) {\n\t\t\t\tthis.removeEventListener(\"transitionend\", this._fnTransitionEnd);\n\t\t\t\tthis._fnTransitionEnd = undefined;\n\t\t\t}\n\t\t\tif (this._animationTimeoutId) {\n\t\t\t\tclearTimeout(this._animationTimeoutId);\n\t\t\t\tthis._animationTimeoutId = undefined;\n\t\t\t}\n\t\t\tthis._bAnimating = false;\n\n\t\t\tthis._getAllItems(this.items)\n\t\t\t\t.concat(this._getAllItems(this.fixedItems))\n\t\t\t\t.forEach(item => {\n\t\t\t\t\titem.sideNavAnimating = false;\n\t\t\t\t});\n\t\t};\n\n\t\tthis._fnTransitionEnd = (oEvent: TransitionEvent) => {\n\t\t\tif (oEvent.propertyName !== \"width\" && oEvent.propertyName !== \"min-width\") {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tcleanupAnimation();\n\t\t};\n\n\t\tthis.addEventListener(\"transitionend\", this._fnTransitionEnd);\n\n\t\t// Fallback timeout in case transitionend doesn't fire\n\t\tthis._animationTimeoutId = setTimeout(() => {\n\t\t\tcleanupAnimation();\n\t\t}, 500);\n\t}\n\n\t_handleItemClick(e: KeyboardEvent | MouseEvent, item: SideNavigationSelectableItemBase) {\n\t\tthis.fireDecoratorEvent(\"item-click\", { item });\n\n\t\tif (item.effectiveDisabled) {\n\t\t\te.stopPropagation();\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tif (item.selected && !this.collapsed) {\n\t\t\tconst {\n\t\t\t\taltKey,\n\t\t\t\tctrlKey,\n\t\t\t\tmetaKey,\n\t\t\t\tshiftKey,\n\t\t\t} = e;\n\n\t\t\tconst executeEvent = item.fireDecoratorEvent(\"click\", {\n\t\t\t\taltKey,\n\t\t\t\tctrlKey,\n\t\t\t\tmetaKey,\n\t\t\t\tshiftKey,\n\t\t\t});\n\n\t\t\tif (!executeEvent) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._effectiveCollapsed && isInstanceOfSideNavigationItem(item) && item.items.length) {\n\t\t\te.preventDefault();\n\t\t\tthis._isOverflow = false;\n\n\t\t\tthis._popoverContents = {\n\t\t\t\titem,\n\t\t\t\tsubItems: item.items,\n\t\t\t};\n\n\t\t\tthis.openPicker(item.getFocusDomRef() as HTMLElement);\n\t\t} else {\n\t\t\tconst {\n\t\t\t\taltKey,\n\t\t\t\tctrlKey,\n\t\t\t\tmetaKey,\n\t\t\t\tshiftKey,\n\t\t\t} = e;\n\n\t\t\tconst executeEvent = item.fireDecoratorEvent(\"click\", {\n\t\t\t\taltKey,\n\t\t\t\tctrlKey,\n\t\t\t\tmetaKey,\n\t\t\t\tshiftKey,\n\t\t\t});\n\n\t\t\tif (!executeEvent) {\n\t\t\t\te.preventDefault();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (!item.selected) {\n\t\t\t\tthis._selectItem(item);\n\t\t\t}\n\t\t}\n\t}\n\n\t_handleOverflowClick() {\n\t\tthis._isOverflow = true;\n\t\tthis._menuPopoverItems = this._getOverflowItems();\n\n\t\tthis.openOverflowMenu(this._overflowItem!);\n\t}\n\n\t_getOverflowItems(): Array<SideNavigationItem> {\n\t\tconst overflowClass = \"ui5-sn-item-hidden\";\n\t\tconst result: Array<SideNavigationItem> = [];\n\n\t\tthis.overflowItems.forEach(item => {\n\t\t\tif (item && isInstanceOfSideNavigationItem(item) && item.classList.contains(overflowClass)) {\n\t\t\t\tresult.push(item);\n\t\t\t}\n\t\t});\n\n\t\treturn result;\n\t}\n\n\t_selectItem(item: SideNavigationSelectableItemBase) {\n\t\tif (!item.isSelectable) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this.fireDecoratorEvent(\"selection-change\", { item })) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet items = this._getSelectableItems(this.items);\n\t\titems = items.concat(this._getSelectableItems(this.fixedItems));\n\n\t\titems.forEach(current => {\n\t\t\tcurrent.selected = false;\n\t\t});\n\n\t\titem.selected = true;\n\t}\n\n\tget _overflowItem() {\n\t\tconst overflowItem = this.shadowRoot!.querySelector<SideNavigationItem>(\".ui5-sn-item-overflow\");\n\t\tif (overflowItem) {\n\t\t\toverflowItem.sideNavigation = this;\n\t\t}\n\n\t\treturn overflowItem;\n\t}\n\n\tget isOverflow() {\n\t\treturn this._isOverflow;\n\t}\n\n\tget isSideNavigation() {\n\t\treturn true;\n\t}\n\n\tcaptureRef(ref: HTMLElement & { associatedItem?: UI5Element } | null) {\n\t\tif (!ref) {\n\t\t\treturn;\n\t\t}\n\n\t\tref.associatedItem = this;\n\n\t\tconst item = this as unknown as SideNavigationItem | SideNavigationSubItem;\n\t\tif (item.tag?.length > 0) {\n\t\t\tconst existingTags = Array.from(ref.children).filter(child => child.getAttribute(\"slot\") === \"tag\");\n\t\t\texistingTags.forEach(tag => tag.remove());\n\n\t\t\titem.tag.forEach((tagEl: HTMLElement) => {\n\t\t\t\tconst clonedTag = tagEl.cloneNode(true) as HTMLElement;\n\t\t\t\tclonedTag.setAttribute(\"slot\", \"tag\");\n\t\t\t\tref.appendChild(clonedTag);\n\t\t\t});\n\t\t}\n\t}\n}\n\nconst instanceOfItemOrGroup = createMultiInstanceChecker<SideNavigationItem | SideNavigationGroup>([\"isSideNavigationItem\", \"isSideNavigationGroup\"]);\n\nSideNavigation.define();\n\nexport const isInstanceOfSideNavigation = createInstanceChecker<SideNavigation>(\"isSideNavigation\");\nexport default SideNavigation;\n\nexport type {\n\tSideNavigationSelectionChangeEventDetail,\n\tSideNavigationItemClickEventDetail,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"SideNavigation.js","sourceRoot":"","sources":["../src/SideNavigation.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport type { Slot, DefaultSlot, ChangeInfo } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport { createMultiInstanceChecker } from \"@ui5/webcomponents-base/dist/util/createMultiInstanceChecker.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport jsxRender from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport type ResponsivePopover from \"@ui5/webcomponents/dist/ResponsivePopover.js\";\nimport type NavigationMenu from \"./NavigationMenu.js\";\nimport ResizeHandler from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport ItemNavigation from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport { isPhone } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport createInstanceChecker from \"@ui5/webcomponents-base/dist/util/createInstanceChecker.js\";\n\nimport NavigationMode from \"@ui5/webcomponents-base/dist/types/NavigationMode.js\";\nimport type SideNavigationItemBase from \"./SideNavigationItemBase.js\";\nimport { isInstanceOfSideNavigationSelectableItemBase } from \"./SideNavigationSelectableItemBase.js\";\nimport { isInstanceOfSideNavigationItemBase } from \"./SideNavigationItemBase.js\";\nimport type SideNavigationSelectableItemBase from \"./SideNavigationSelectableItemBase.js\";\nimport { isInstanceOfSideNavigationItem } from \"./SideNavigationItem.js\";\nimport { isInstanceOfSideNavigationGroup } from \"./SideNavigationGroup.js\";\nimport type SideNavigationItem from \"./SideNavigationItem.js\";\nimport type SideNavigationSubItem from \"./SideNavigationSubItem.js\";\nimport type SideNavigationGroup from \"./SideNavigationGroup.js\";\nimport SideNavigationTemplate from \"./SideNavigationTemplate.js\";\n\nimport {\n\tSIDE_NAVIGATION_POPOVER_HIDDEN_TEXT,\n\tSIDE_NAVIGATION_COLLAPSED_LIST_ARIA_ROLE_DESC,\n\tSIDE_NAVIGATION_LIST_ARIA_ROLE_DESC,\n\tSIDE_NAVIGATION_OVERFLOW_ACCESSIBLE_NAME,\n\tSIDE_NAVIGATION_FLEXIBLE_LIST_LABEL,\n\tSIDE_NAVIGATION_FIXED_LIST_LABEL,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport SideNavigationCss from \"./generated/themes/SideNavigation.css.js\";\nimport SideNavigationPopoverCss from \"./generated/themes/SideNavigationPopover.css.js\";\n\nconst PAGE_UP_DOWN_SIZE = 10;\nconst SCREEN_WIDTH_BREAKPOINT = 600;\n\ntype SideNavigationPopoverContents = {\n\titem: SideNavigationItem,\n\tsubItems: Array<SideNavigationSubItem>,\n};\n\ntype SideNavigationSelectionChangeEventDetail = {\n\titem: SideNavigationItemBase,\n};\n\ntype SideNavigationItemClickEventDetail = {\n\titem: SideNavigationSelectableItemBase,\n};\n\ntype SideNavigationItemToggleEventDetail = {\n\titem: SideNavigationItemBase,\n};\n\ntype PopupSideNavigationItem = SideNavigationItem & { associatedItem: SideNavigationSelectableItemBase };\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `SideNavigation` is used as a standard menu in applications.\n * It consists of three containers: header (top-aligned), main navigation section (top-aligned) and the secondary section (bottom-aligned).\n *\n * - The header is meant for displaying user related information - profile data, avatar, etc.\n * - The main navigation section is related to the user's current work context.\n * - The secondary section is mostly used to link additional information that may be of interest (legal information, developer communities, external help, contact information and so on).\n *\n * ### Usage\n *\n * Use the available `ui5-side-navigation-group`, `ui5-side-navigation-item`\n * and `ui5-side-navigation-sub-item` components to build your menu.\n * The items can consist of text only or an icon with text. The use or non-use of icons must be consistent for all items on one level.\n * You must not combine entries with and without icons on the same level. We strongly recommend that you do not use icons on the second level.\n *\n * The `ui5-side-navigation` component is designed to be used within a `ui5-navigation-layout` component to ensure an optimal user experience.\n *\n * Using it standalone may not match the intended design and functionality.\n * For example, the side navigation may not exhibit the correct behavior on smaller screens.\n * Additionally, the padding of the `ui5-shellbar` will not match the padding of the side navigation.\n *\n * ### Keyboard Handling\n *\n * ### Fast Navigation\n * This component provides a build in fast navigation group which can be used via [F6] / [Shift] + [F6] / [Ctrl] + [Alt/Option] / [Down] or [Ctrl] + [Alt/Option] + [Up].\n * In order to use this functionality, you need to import the following module:\n * `import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"`\n *\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigation.js\"`\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigationGroup.js\";` (for `ui5-side-navigation-group`)\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigationItem.js\";` (for `ui5-side-navigation-item`)\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigationSubItem.js\";` (for `ui5-side-navigation-sub-item`)\n * @constructor\n * @extends UI5Element\n * @since 1.0.0-rc.8\n * @public\n */\n\n@customElement({\n\ttag: \"ui5-side-navigation\",\n\tfastNavigation: true,\n\trenderer: jsxRender,\n\ttemplate: SideNavigationTemplate,\n\tstyles: [SideNavigationCss, SideNavigationPopoverCss],\n})\n\n/**\n * Fired when the selection has changed via user interaction.\n *\n * @param {SideNavigationSelectableItemBase} item The selected item.\n * @public\n */\n@event(\"selection-change\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n\n/**\n * Fired when an item is clicked.\n *\n * @param {SideNavigationSelectableItemBase} item The clicked item.\n * @since 2.20.0\n * @public\n */\n@event(\"item-click\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n\n/**\n * Fired when a `ui5-side-navigation-item` or `ui5-side-navigation-group` is expanded or collapsed.\n *\n * **Note:** You can call `preventDefault()` on the event to suppress the expand/collapse.\n * The `expanded` state stays unchanged. This is handy, for example, if you want to\n * dynamically load child items before allowing a parent item to expand.\n *\n * @param {SideNavigationItemBase} item The toggled item.\n * @since 2.26.0\n * @public\n */\n@event(\"item-toggle\", {\n\tbubbles: true,\n\tcancelable: true,\n})\n\nclass SideNavigation extends UI5Element {\n\teventDetails!: {\n\t\t\"selection-change\": SideNavigationSelectionChangeEventDetail,\n\t\t\"item-click\": SideNavigationItemClickEventDetail,\n\t\t\"item-toggle\": SideNavigationItemToggleEventDetail\n\t}\n\n\t/**\n\t * Defines whether the `ui5-side-navigation` is expanded or collapsed.\n\t *\n\t * **Note:** On small screens (screen width of 599px or less) the collapsed mode is not supported, and in\n\t * expanded mode the side navigation will take the whole width of the screen.\n\t * The `ui5-side-navigation` component is intended to be used within a `ui5-navigation-layout`\n\t * component to ensure proper responsive behavior. If you choose not to use the\n\t * `ui5-navigation-layout`, you will need to implement the appropriate responsive patterns yourself,\n\t * particularly for smaller screens where the collapsed mode should not be used.\n\t *\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tcollapsed = false;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t * @default undefined\n\t * @public\n\t * @since 2.9.0\n\t */\n\t@property()\n\taccessibleName?: string;\n\n\t/**\n\t * Defines the main items of the component.\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n\titems!: DefaultSlot<SideNavigationItemBase>;\n\n\t/**\n\t * Defines the fixed items at the bottom of the component.\n\t *\n\t * **Note:** In order to achieve the best user experience, it is recommended that you keep the fixed items \"flat\" (do not pass sub-items)\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true })\n\tfixedItems!: Slot<SideNavigationItemBase>;\n\n\t/**\n\t * Defines the header of the `ui5-side-navigation`.\n\t *\n\t * **Note:** The header is displayed when the component is expanded - the property `collapsed` is false;\n\t *\n\t * @public\n\t * @since 1.0.0-rc.11\n\t */\n\t@slot()\n\theader!: Slot<HTMLElement>;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Object })\n\t_popoverContents!: SideNavigationPopoverContents;\n\n\t@property({ type: Boolean })\n\tinPopover = false;\n\n\t@property({ type: Object })\n\t_menuPopoverItems: Array<SideNavigationItem> = [];\n\n\t_isOverflow = false;\n\t_flexibleItemNavigation: ItemNavigation;\n\t_fixedItemNavigation: ItemNavigation;\n\n\t@i18n(\"@ui5/webcomponents-fiori\")\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._flexibleItemNavigation = new ItemNavigation(this, {\n\t\t\tskipItemsSize: PAGE_UP_DOWN_SIZE, // PAGE_UP and PAGE_DOWN will skip trough 10 items\n\t\t\tnavigationMode: NavigationMode.Vertical,\n\t\t\tgetItemsCallback: () => this.getEnabledFlexibleItems(),\n\t\t});\n\n\t\tthis._fixedItemNavigation = new ItemNavigation(this, {\n\t\t\tskipItemsSize: PAGE_UP_DOWN_SIZE, // PAGE_UP and PAGE_DOWN will skip trough 10 items\n\t\t\tnavigationMode: NavigationMode.Vertical,\n\t\t\tgetItemsCallback: () => this.getEnabledFixedItems(),\n\t\t});\n\n\t\tthis._handleResizeBound = this.handleResize.bind(this);\n\t\tthis._isOverflow = false;\n\t}\n\n\t_handleResizeBound: () => void;\n\t_fnTransitionEnd?: (event: TransitionEvent) => void;\n\t_animationTimeoutId?: ReturnType<typeof setTimeout>;\n\t_bAnimating = false;\n\n\tonInvalidation(changeInfo: ChangeInfo) {\n\t\tif (changeInfo.type === \"property\" && changeInfo.name === \"collapsed\") {\n\t\t\tif (this.getDomRef()) {\n\t\t\t\tthis._bAnimating = true;\n\t\t\t}\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tsuper.onBeforeRendering();\n\n\t\tthis._getAllItems(this.items)\n\t\t\t.concat(this._getAllItems(this.fixedItems))\n\t\t\t.forEach(item => {\n\t\t\t\titem.sideNavCollapsed = this.collapsed;\n\t\t\t\titem.inPopover = this.inPopover;\n\t\t\t\titem.sideNavigation = this;\n\t\t\t\titem.sideNavAnimating = this._bAnimating;\n\t\t\t});\n\n\t\tthis.initGroupsSettings(this.items);\n\t\tthis.initGroupsSettings(this.fixedItems);\n\t}\n\n\tinitGroupsSettings(items: Array<SideNavigationItemBase>) {\n\t\tlet isPreviousItemGroup = false;\n\n\t\titems.forEach(item => {\n\t\t\tconst isGroup = isInstanceOfSideNavigationGroup(item);\n\n\t\t\tif (isGroup) {\n\t\t\t\titem.belowGroup = isPreviousItemGroup;\n\t\t\t}\n\n\t\t\tisPreviousItemGroup = isGroup;\n\t\t});\n\t}\n\n\t_onAfterPopoverOpen() {\n\t\t// as the tree/list inside the popover is never destroyed,\n\t\t// item navigation index should be managed, because items are\n\t\t// dynamically recreated and tabIndexes are not updated\n\t\tconst tree = this.getPickerTree();\n\t\tconst selectedItem = tree._findSelectedItem(tree.items);\n\t\tif (selectedItem) {\n\t\t\tselectedItem.focus();\n\t\t} else {\n\t\t\ttree.items[0]?.applyInitialFocusInPopover();\n\t\t}\n\t}\n\n\t_onBeforePopoverOpen() {\n\t\tconst popover = this.getPicker();\n\t\t(popover?.opener as HTMLElement)?.classList.add(\"ui5-sn-item-active\");\n\t}\n\n\t_onBeforePopoverClose() {\n\t\tconst popover = this.getPicker();\n\t\t(popover?.opener as HTMLElement)?.classList.remove(\"ui5-sn-item-active\");\n\t}\n\n\t_onBeforeMenuOpen() {\n\t\tconst popover = this.getOverflowPopover();\n\t\tpopover._popover.preventFocusRestore = false;\n\t\t(popover?.opener as HTMLElement)?.classList.add(\"ui5-sn-item-active\");\n\t}\n\n\t_onBeforeMenuClose() {\n\t\tconst popover = this.getOverflowPopover();\n\t\t(popover?.opener as HTMLElement)?.classList.remove(\"ui5-sn-item-active\");\n\t}\n\n\t_bn?: SideNavigationSelectableItemBase;\n\n\t_onMenuClose() {\n\t\tconst menu = this.getOverflowPopover();\n\t\tif (!menu._popover.preventFocusRestore) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst selectedItem = this._findSelectedItem(this.items);\n\n\t\tif (selectedItem) {\n\t\t\tthis.focusItem(selectedItem);\n\t\t\tselectedItem.focus();\n\t\t}\n\t}\n\n\tget accSideNavigationPopoverHiddenText() {\n\t\treturn SideNavigation.i18nBundle.getText(SIDE_NAVIGATION_POPOVER_HIDDEN_TEXT);\n\t}\n\n\tget ariaRoleDescNavigationList() {\n\t\tlet key = SIDE_NAVIGATION_LIST_ARIA_ROLE_DESC;\n\t\tif (this.collapsed) {\n\t\t\tkey = SIDE_NAVIGATION_COLLAPSED_LIST_ARIA_ROLE_DESC;\n\t\t}\n\n\t\treturn SideNavigation.i18nBundle.getText(key);\n\t}\n\n\tget navigationMenuPrimaryHiddenText() {\n\t\treturn SideNavigation.i18nBundle.getText(SIDE_NAVIGATION_FLEXIBLE_LIST_LABEL);\n\t}\n\n\tget navigationMenuFooterHiddenText() {\n\t\treturn SideNavigation.i18nBundle.getText(SIDE_NAVIGATION_FIXED_LIST_LABEL);\n\t}\n\n\tget overflowAccessibleName() {\n\t\treturn SideNavigation.i18nBundle.getText(SIDE_NAVIGATION_OVERFLOW_ACCESSIBLE_NAME);\n\t}\n\n\tget _effectiveCollapsed() {\n\t\treturn this.collapsed && !this._isSmallScreen();\n\t}\n\n\thandlePopupItemClick(e: KeyboardEvent | PointerEvent) {\n\t\tconst associatedItem = (e.target as PopupSideNavigationItem).associatedItem;\n\n\t\tif (associatedItem.effectiveDisabled) {\n\t\t\te.stopPropagation();\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tif (isInstanceOfSideNavigationItem(associatedItem) && associatedItem.unselectable) {\n\t\t\treturn;\n\t\t}\n\n\t\te.stopPropagation();\n\n\t\tconst altKey = (e.detail as any)?.altKey,\n\t\t\tctrlKey = (e.detail as any)?.ctrlKey,\n\t\t\tmetaKey = (e.detail as any)?.metaKey,\n\t\t\tshiftKey = (e.detail as any)?.shiftKey;\n\n\t\tconst executeEvent = associatedItem.fireDecoratorEvent(\"click\", {\n\t\t\taltKey,\n\t\t\tctrlKey,\n\t\t\tmetaKey,\n\t\t\tshiftKey,\n\t\t});\n\n\t\tif (!executeEvent) {\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tif (associatedItem.selected) {\n\t\t\tthis.closePicker();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._selectItem(associatedItem);\n\n\t\tthis.closePicker();\n\t\tthis._popoverContents.item?.getDomRef()!.classList.add(\"ui5-sn-item-no-hover-effect\");\n\t}\n\n\tgetOverflowPopover() {\n\t\treturn this.shadowRoot!.querySelector<NavigationMenu>(\".ui5-side-navigation-overflow-menu\")!;\n\t}\n\n\tgetPicker() {\n\t\treturn this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t}\n\n\topenPicker(opener: HTMLElement) {\n\t\topener.classList.add(\"ui5-sn-item-active\");\n\n\t\tconst responsivePopover = this.getPicker();\n\t\tresponsivePopover.opener = opener;\n\t\tresponsivePopover.open = true;\n\t}\n\n\topenOverflowMenu(opener: HTMLElement) {\n\t\topener.classList.add(\"ui5-sn-item-active\");\n\n\t\tconst menu = this.getOverflowPopover();\n\t\tmenu.opener = opener;\n\t\tmenu.open = true;\n\t}\n\n\tclosePicker() {\n\t\tconst responsivePopover = this.getPicker();\n\t\tresponsivePopover.open = false;\n\t}\n\n\tcloseMenu(preventFocusRestore: boolean = false) {\n\t\tconst menu = this.getOverflowPopover();\n\t\tmenu._popover.preventFocusRestore = preventFocusRestore;\n\t\tmenu.open = false;\n\t}\n\n\tgetPickerTree() {\n\t\tconst picker = this.getPicker();\n\t\treturn picker.querySelector<SideNavigation>(\"[ui5-side-navigation]\")!;\n\t}\n\n\tget hasHeader() {\n\t\treturn !!this.header.length;\n\t}\n\n\tget showHeader() {\n\t\treturn this.hasHeader && !this.collapsed;\n\t}\n\n\tget hasFixedItems() {\n\t\treturn !!this.fixedItems.length;\n\t}\n\n\tget _rootRole() {\n\t\treturn this.inPopover ? \"none\" : undefined;\n\t}\n\n\tgetEnabledFixedItems(): Array<ITabbable> {\n\t\treturn this.getEnabledItems(this.fixedItems);\n\t}\n\n\tgetEnabledFlexibleItems(): Array<ITabbable> {\n\t\tconst items = this.getEnabledItems(this.items);\n\n\t\tif (this._overflowItem) {\n\t\t\titems.push(this._overflowItem);\n\t\t}\n\n\t\treturn items;\n\t}\n\n\tgetEnabledItems(items: Array<SideNavigationItemBase>): Array<ITabbable> {\n\t\tconst result = new Array<ITabbable>();\n\n\t\tthis._getFocusableItems(items).forEach(item => {\n\t\t\tif (this.collapsed && item.classList.contains(\"ui5-sn-item-hidden\")) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tresult.push(item);\n\t\t});\n\n\t\treturn result;\n\t}\n\n\tfocusItem(item: SideNavigationItemBase) {\n\t\tif (item.isFixedItem) {\n\t\t\tthis._fixedItemNavigation.setCurrentItem(item);\n\t\t} else {\n\t\t\tthis._flexibleItemNavigation.setCurrentItem(item);\n\t\t}\n\t}\n\n\tonAfterRendering() {\n\t\tif (!this.getDomRef()?.matches(\":focus-within\")) {\n\t\t\tlet selectedItem = this._findSelectedItem(this.items);\n\t\t\tif (selectedItem) {\n\t\t\t\tthis._flexibleItemNavigation.setCurrentItem(selectedItem);\n\t\t\t}\n\n\t\t\tselectedItem = this._findSelectedItem(this.fixedItems);\n\t\t\tif (selectedItem) {\n\t\t\t\tthis._fixedItemNavigation.setCurrentItem(selectedItem);\n\t\t\t}\n\t\t}\n\n\t\tif (this.collapsed) {\n\t\t\tthis.handleResize();\n\t\t}\n\n\t\tthis._handleExpandCollapseAnimation();\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._handleResizeBound);\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._handleResizeBound);\n\t\tif (this._fnTransitionEnd) {\n\t\t\tthis.removeEventListener(\"transitionend\", this._fnTransitionEnd);\n\t\t\tthis._fnTransitionEnd = undefined;\n\t\t}\n\t\tif (this._animationTimeoutId) {\n\t\t\tclearTimeout(this._animationTimeoutId);\n\t\t\tthis._animationTimeoutId = undefined;\n\t\t}\n\t\tthis._bAnimating = false;\n\t}\n\n\thandleResize() {\n\t\t// In smaller screen the side navigation hidden when collapsed and there is no overflow items\n\t\tif (window.innerWidth > SCREEN_WIDTH_BREAKPOINT) {\n\t\t\tthis._updateOverflowItems();\n\t\t}\n\t}\n\n\t_updateOverflowItems() {\n\t\tconst domRef = this.getDomRef();\n\t\tif (!this.collapsed || !domRef) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst overflowItem = this._overflowItem!;\n\t\tconst flexibleContentDomRef: HTMLElement = domRef.querySelector(\".ui5-sn-flexible\")!;\n\t\tif (!overflowItem) {\n\t\t\treturn null;\n\t\t}\n\n\t\toverflowItem.classList.add(\"ui5-sn-item-hidden\");\n\n\t\tconst overflowItems = this.overflowItems;\n\n\t\tlet itemsHeight = overflowItems.reduce<number>((sum, itemRef) => {\n\t\t\tif (!itemRef) {\n\t\t\t\treturn sum;\n\t\t\t}\n\t\t\titemRef.classList.remove(\"ui5-sn-item-hidden\");\n\t\t\treturn sum + itemRef.offsetHeight;\n\t\t}, 0);\n\n\t\tconst { paddingTop, paddingBottom } = window.getComputedStyle(flexibleContentDomRef);\n\t\tconst listHeight = flexibleContentDomRef?.offsetHeight - parseInt(paddingTop) - parseInt(paddingBottom);\n\n\t\tif (itemsHeight <= listHeight) {\n\t\t\treturn;\n\t\t}\n\n\t\toverflowItem.classList.remove(\"ui5-sn-item-hidden\");\n\n\t\titemsHeight = overflowItem.offsetHeight;\n\n\t\tconst selectedItem = overflowItems.filter(isInstanceOfSideNavigationSelectableItemBase).find(item => item._selected);\n\n\t\tif (selectedItem) {\n\t\t\tconst selectedItemDomRef = selectedItem.getDomRef();\n\n\t\t\tif (selectedItemDomRef) {\n\t\t\t\tconst { marginTop, marginBottom } = window.getComputedStyle(selectedItemDomRef);\n\t\t\t\titemsHeight += selectedItemDomRef.offsetHeight + parseFloat(marginTop) + parseFloat(marginBottom);\n\t\t\t}\n\t\t}\n\n\t\toverflowItems.forEach(item => {\n\t\t\tif (!item || item === selectedItem) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet itemDomRef;\n\n\t\t\tif (isInstanceOfSideNavigationItemBase(item) && item.getDomRef()) {\n\t\t\t\titemDomRef = item.getDomRef();\n\t\t\t} else {\n\t\t\t\titemDomRef = item;\n\t\t\t}\n\n\t\t\tif (itemDomRef) {\n\t\t\t\tconst { marginTop, marginBottom } = window.getComputedStyle(itemDomRef);\n\t\t\t\titemsHeight += itemDomRef.offsetHeight + parseFloat(marginTop) + parseFloat(marginBottom);\n\n\t\t\t\tif (itemsHeight > listHeight) {\n\t\t\t\t\titem.classList.add(\"ui5-sn-item-hidden\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tthis._flexibleItemNavigation._init();\n\t}\n\n\t_findFocusedItem(items: Array<SideNavigationItemBase>): SideNavigationItemBase | undefined {\n\t\treturn this._getFocusableItems(items).find(item => item.forcedTabIndex === \"0\");\n\t}\n\n\t_getSelectableItems(items: Array<SideNavigationItemBase>): Array<SideNavigationSelectableItemBase> {\n\t\treturn items.filter(instanceOfItemOrGroup).reduce((result, item) => {\n\t\t\treturn result.concat(item.selectableItems);\n\t\t}, new Array<SideNavigationSelectableItemBase>());\n\t}\n\n\t_getFocusableItems(items: Array<SideNavigationItemBase>): Array<SideNavigationItemBase> {\n\t\treturn items.filter(instanceOfItemOrGroup).reduce((result, item) => {\n\t\t\treturn result.concat(item.focusableItems);\n\t\t}, new Array<SideNavigationItemBase>());\n\t}\n\n\t_getAllItems(items: Array<SideNavigationItemBase>): Array<SideNavigationItemBase> {\n\t\treturn items.filter(instanceOfItemOrGroup).reduce((result, item) => {\n\t\t\treturn result.concat(item.allItems);\n\t\t}, new Array<SideNavigationItemBase>());\n\t}\n\n\t_findSelectedItem(items: Array<SideNavigationItemBase>): SideNavigationSelectableItemBase | undefined {\n\t\treturn this._getSelectableItems(items).find(item => item._selected);\n\t}\n\n\tget overflowItems(): Array<HTMLElement> {\n\t\treturn this.items.filter(instanceOfItemOrGroup).reduce((result, item) => {\n\t\t\treturn result.concat(item.overflowItems);\n\t\t}, new Array<HTMLElement>());\n\t}\n\n\tprivate _isSmallScreen(): boolean {\n\t\treturn isPhone() || window.innerWidth < SCREEN_WIDTH_BREAKPOINT;\n\t}\n\n\t_handleExpandCollapseAnimation() {\n\t\tif (!this._bAnimating) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst oDomRef = this.getDomRef();\n\t\tif (!oDomRef) {\n\t\t\treturn;\n\t\t}\n\n\t\toDomRef.classList.add(\"ui5-sn-animating\");\n\n\t\tif (this._fnTransitionEnd) {\n\t\t\tthis.removeEventListener(\"transitionend\", this._fnTransitionEnd);\n\t\t}\n\n\t\tif (this._animationTimeoutId) {\n\t\t\tclearTimeout(this._animationTimeoutId);\n\t\t}\n\n\t\tconst cleanupAnimation = () => {\n\t\t\toDomRef.classList.remove(\"ui5-sn-animating\");\n\t\t\tif (this._fnTransitionEnd) {\n\t\t\t\tthis.removeEventListener(\"transitionend\", this._fnTransitionEnd);\n\t\t\t\tthis._fnTransitionEnd = undefined;\n\t\t\t}\n\t\t\tif (this._animationTimeoutId) {\n\t\t\t\tclearTimeout(this._animationTimeoutId);\n\t\t\t\tthis._animationTimeoutId = undefined;\n\t\t\t}\n\t\t\tthis._bAnimating = false;\n\n\t\t\tthis._getAllItems(this.items)\n\t\t\t\t.concat(this._getAllItems(this.fixedItems))\n\t\t\t\t.forEach(item => {\n\t\t\t\t\titem.sideNavAnimating = false;\n\t\t\t\t});\n\t\t};\n\n\t\tthis._fnTransitionEnd = (oEvent: TransitionEvent) => {\n\t\t\tif (oEvent.propertyName !== \"width\" && oEvent.propertyName !== \"min-width\") {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tcleanupAnimation();\n\t\t};\n\n\t\tthis.addEventListener(\"transitionend\", this._fnTransitionEnd);\n\n\t\t// Fallback timeout in case transitionend doesn't fire\n\t\tthis._animationTimeoutId = setTimeout(() => {\n\t\t\tcleanupAnimation();\n\t\t}, 500);\n\t}\n\n\t_handleItemClick(e: KeyboardEvent | MouseEvent, item: SideNavigationSelectableItemBase) {\n\t\tthis.fireDecoratorEvent(\"item-click\", { item });\n\n\t\tif (item.effectiveDisabled) {\n\t\t\te.stopPropagation();\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tif (item.selected && !this.collapsed) {\n\t\t\tconst {\n\t\t\t\taltKey,\n\t\t\t\tctrlKey,\n\t\t\t\tmetaKey,\n\t\t\t\tshiftKey,\n\t\t\t} = e;\n\n\t\t\tconst executeEvent = item.fireDecoratorEvent(\"click\", {\n\t\t\t\taltKey,\n\t\t\t\tctrlKey,\n\t\t\t\tmetaKey,\n\t\t\t\tshiftKey,\n\t\t\t});\n\n\t\t\tif (!executeEvent) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._effectiveCollapsed && isInstanceOfSideNavigationItem(item) && item.items.length) {\n\t\t\te.preventDefault();\n\t\t\tthis._isOverflow = false;\n\n\t\t\tthis._popoverContents = {\n\t\t\t\titem,\n\t\t\t\tsubItems: item.items,\n\t\t\t};\n\n\t\t\tthis.openPicker(item.getFocusDomRef() as HTMLElement);\n\t\t} else {\n\t\t\tconst {\n\t\t\t\taltKey,\n\t\t\t\tctrlKey,\n\t\t\t\tmetaKey,\n\t\t\t\tshiftKey,\n\t\t\t} = e;\n\n\t\t\tconst executeEvent = item.fireDecoratorEvent(\"click\", {\n\t\t\t\taltKey,\n\t\t\t\tctrlKey,\n\t\t\t\tmetaKey,\n\t\t\t\tshiftKey,\n\t\t\t});\n\n\t\t\tif (!executeEvent) {\n\t\t\t\te.preventDefault();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (!item.selected) {\n\t\t\t\tthis._selectItem(item);\n\t\t\t}\n\t\t}\n\t}\n\n\t_handleOverflowClick() {\n\t\tthis._isOverflow = true;\n\t\tthis._menuPopoverItems = this._getOverflowItems();\n\n\t\tthis.openOverflowMenu(this._overflowItem!);\n\t}\n\n\t_getOverflowItems(): Array<SideNavigationItem> {\n\t\tconst overflowClass = \"ui5-sn-item-hidden\";\n\t\tconst result: Array<SideNavigationItem> = [];\n\n\t\tthis.overflowItems.forEach(item => {\n\t\t\tif (item && isInstanceOfSideNavigationItem(item) && item.classList.contains(overflowClass)) {\n\t\t\t\tresult.push(item);\n\t\t\t}\n\t\t});\n\n\t\treturn result;\n\t}\n\n\t_selectItem(item: SideNavigationSelectableItemBase) {\n\t\tif (!item.isSelectable) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this.fireDecoratorEvent(\"selection-change\", { item })) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet items = this._getSelectableItems(this.items);\n\t\titems = items.concat(this._getSelectableItems(this.fixedItems));\n\n\t\titems.forEach(current => {\n\t\t\tcurrent.selected = false;\n\t\t});\n\n\t\titem.selected = true;\n\t}\n\n\tget _overflowItem() {\n\t\tconst overflowItem = this.shadowRoot!.querySelector<SideNavigationItem>(\".ui5-sn-item-overflow\");\n\t\tif (overflowItem) {\n\t\t\toverflowItem.sideNavigation = this;\n\t\t}\n\n\t\treturn overflowItem;\n\t}\n\n\tget isOverflow() {\n\t\treturn this._isOverflow;\n\t}\n\n\tget isSideNavigation() {\n\t\treturn true;\n\t}\n\n\tcaptureRef(ref: HTMLElement & { associatedItem?: UI5Element } | null) {\n\t\tif (!ref) {\n\t\t\treturn;\n\t\t}\n\n\t\tref.associatedItem = this;\n\n\t\tconst item = this as unknown as SideNavigationItem | SideNavigationSubItem;\n\t\tif (item.tag?.length > 0) {\n\t\t\tconst existingTags = Array.from(ref.children).filter(child => child.getAttribute(\"slot\") === \"tag\");\n\t\t\texistingTags.forEach(tag => tag.remove());\n\n\t\t\titem.tag.forEach((tagEl: HTMLElement) => {\n\t\t\t\tconst clonedTag = tagEl.cloneNode(true) as HTMLElement;\n\t\t\t\tclonedTag.setAttribute(\"slot\", \"tag\");\n\t\t\t\tref.appendChild(clonedTag);\n\t\t\t});\n\t\t}\n\t}\n}\n\nconst instanceOfItemOrGroup = createMultiInstanceChecker<SideNavigationItem | SideNavigationGroup>([\"isSideNavigationItem\", \"isSideNavigationGroup\"]);\n\nSideNavigation.define();\n\nexport const isInstanceOfSideNavigation = createInstanceChecker<SideNavigation>(\"isSideNavigation\");\nexport default SideNavigation;\n\nexport type {\n\tSideNavigationSelectionChangeEventDetail,\n\tSideNavigationItemClickEventDetail,\n\tSideNavigationItemToggleEventDetail,\n};\n"]}
|
|
@@ -49,7 +49,16 @@ declare class SideNavigationGroup extends SideNavigationItemBase {
|
|
|
49
49
|
_onkeydown(e: KeyboardEvent): void;
|
|
50
50
|
_onclick(): void;
|
|
51
51
|
_onfocusin(e: FocusEvent): void;
|
|
52
|
-
|
|
52
|
+
/**
|
|
53
|
+
* Handles the user-driven expand/collapse of the group.
|
|
54
|
+
*
|
|
55
|
+
* Fires the cancelable `item-toggle` event and, unless it is prevented, applies the
|
|
56
|
+
* new `expanded` value. The event is only fired for user interaction - programmatic
|
|
57
|
+
* changes to `expanded` stay silent.
|
|
58
|
+
*
|
|
59
|
+
* @private
|
|
60
|
+
*/
|
|
61
|
+
_toggle(expanded: boolean): void;
|
|
53
62
|
get isSideNavigationGroup(): boolean;
|
|
54
63
|
}
|
|
55
64
|
export declare const isInstanceOfSideNavigationGroup: (object: any) => object is SideNavigationGroup;
|
|
@@ -110,33 +110,46 @@ let SideNavigationGroup = SideNavigationGroup_1 = class SideNavigationGroup exte
|
|
|
110
110
|
const isRTL = this.effectiveDir === "rtl";
|
|
111
111
|
if (isLeft(e)) {
|
|
112
112
|
e.preventDefault();
|
|
113
|
-
this.
|
|
113
|
+
this._toggle(isRTL);
|
|
114
114
|
return;
|
|
115
115
|
}
|
|
116
116
|
if (isRight(e)) {
|
|
117
117
|
e.preventDefault();
|
|
118
|
-
this.
|
|
118
|
+
this._toggle(!isRTL);
|
|
119
119
|
}
|
|
120
120
|
if (isMinus(e)) {
|
|
121
121
|
e.preventDefault();
|
|
122
|
-
this.
|
|
122
|
+
this._toggle(false);
|
|
123
123
|
return;
|
|
124
124
|
}
|
|
125
125
|
if (isPlus(e)) {
|
|
126
126
|
e.preventDefault();
|
|
127
|
-
this.
|
|
127
|
+
this._toggle(true);
|
|
128
128
|
}
|
|
129
129
|
}
|
|
130
130
|
_onclick() {
|
|
131
|
-
this._toggle();
|
|
131
|
+
this._toggle(!this.expanded);
|
|
132
132
|
}
|
|
133
133
|
_onfocusin(e) {
|
|
134
134
|
e.stopPropagation();
|
|
135
135
|
this.sideNavigation?.focusItem(this);
|
|
136
136
|
}
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
137
|
+
/**
|
|
138
|
+
* Handles the user-driven expand/collapse of the group.
|
|
139
|
+
*
|
|
140
|
+
* Fires the cancelable `item-toggle` event and, unless it is prevented, applies the
|
|
141
|
+
* new `expanded` value. The event is only fired for user interaction - programmatic
|
|
142
|
+
* changes to `expanded` stay silent.
|
|
143
|
+
*
|
|
144
|
+
* @private
|
|
145
|
+
*/
|
|
146
|
+
_toggle(expanded) {
|
|
147
|
+
if (this.disabled || this.expanded === expanded) {
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
// The event was prevented - keep the old value, suppressing the toggle.
|
|
151
|
+
if (this.sideNavigation?.fireDecoratorEvent("item-toggle", { item: this })) {
|
|
152
|
+
this.expanded = expanded;
|
|
140
153
|
}
|
|
141
154
|
}
|
|
142
155
|
get isSideNavigationGroup() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SideNavigationGroup.js","sourceRoot":"","sources":["../src/SideNavigationGroup.ts"],"names":[],"mappings":"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","sourcesContent":["import property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport jsxRender from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport {\n\tisSpace,\n\tisLeft,\n\tisRight,\n\tisMinus,\n\tisPlus,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport SideNavigationItemBase from \"./SideNavigationItemBase.js\";\nimport type SideNavigationSelectableItemBase from \"./SideNavigationSelectableItemBase.js\";\nimport type SideNavigationItem from \"./SideNavigationItem.js\";\nimport SideNavigationGroupTemplate from \"./SideNavigationGroupTemplate.js\";\nimport type { DefaultSlot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\n\nimport {\n\tSIDE_NAVIGATION_ICON_COLLAPSE,\n\tSIDE_NAVIGATION_ICON_EXPAND,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport SideNavigationGroupCss from \"./generated/themes/SideNavigationGroup.css.js\";\nimport createInstanceChecker from \"@ui5/webcomponents-base/dist/util/createInstanceChecker.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * Represents a group of navigation actions within `ui5-side-navigation`.\n * The `ui5-side-navigation-group` can only be used inside a `ui5-side-navigation`.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigationGroup.js\";`\n *\n * @constructor\n * @extends SideNavigationItemBase\n * @public\n * @abstract\n * @since 1.24.0\n */\n@customElement({\n\ttag: \"ui5-side-navigation-group\",\n\trenderer: jsxRender,\n\ttemplate: SideNavigationGroupTemplate,\n\tstyles: SideNavigationGroupCss,\n})\nclass SideNavigationGroup extends SideNavigationItemBase {\n\t/**\n\t * Defines if the item is expanded\n\t *\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\texpanded = false;\n\n\tbelowGroup = false;\n\n\t/**\n\t * Defines nested items by passing `ui5-side-navigation-item` to the default slot.\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n\titems!: DefaultSlot<SideNavigationItem>;\n\n\t@i18n(\"@ui5/webcomponents-fiori\")\n\tstatic i18nBundle: I18nBundle;\n\n\tonBeforeRendering() {\n\t\tthis.allItems.forEach(item => {\n\t\t\titem._groupDisabled = this.disabled;\n\t\t});\n\t}\n\n\tget overflowItems() : Array<HTMLElement> {\n\t\tconst separator1 = this.shadowRoot!.querySelector<HTMLElement>(\".ui5-sn-item-separator:first-child\")!;\n\t\tconst separator2 = this.shadowRoot!.querySelector<HTMLElement>(\".ui5-sn-item-separator:last-child\")!;\n\n\t\tconst overflowItems = this.items.reduce((result, item) => {\n\t\t\treturn result.concat(item.overflowItems);\n\t\t}, new Array<SideNavigationItem>());\n\n\t\treturn [separator1, ...overflowItems, separator2];\n\t}\n\n\tget selectableItems() : Array<SideNavigationSelectableItemBase> {\n\t\treturn this.items.reduce((result, item) => {\n\t\t\treturn result.concat(item.selectableItems);\n\t\t}, new Array<SideNavigationSelectableItemBase>());\n\t}\n\n\tget focusableItems() : Array<SideNavigationItemBase> {\n\t\tif (this.sideNavCollapsed) {\n\t\t\treturn this.items;\n\t\t}\n\n\t\tif (this.expanded) {\n\t\t\treturn this.items.reduce((result, item) => {\n\t\t\t\treturn result.concat(item.focusableItems);\n\t\t\t}, new Array<SideNavigationItemBase>(this));\n\t\t}\n\n\t\treturn [this];\n\t}\n\n\tget allItems() : Array<SideNavigationItemBase> {\n\t\treturn this.items.reduce((result, item) => {\n\t\t\treturn result.concat(item.allItems);\n\t\t}, new Array<SideNavigationItemBase>(this));\n\t}\n\n\tget _groupId() {\n\t\tif (!this.items.length) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn `${this._id}-group`;\n\t}\n\n\tget _expanded() {\n\t\tif (!this.items.length) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn this.expanded;\n\t}\n\n\tget belowGroupClassName() {\n\t\treturn this.belowGroup ? \"ui5-sn-item-group-below-group\" : \"\";\n\t}\n\n\tget _arrowTooltip() {\n\t\treturn this.expanded ? SideNavigationGroup.i18nBundle.getText(SIDE_NAVIGATION_ICON_COLLAPSE)\n\t\t\t: SideNavigationGroup.i18nBundle.getText(SIDE_NAVIGATION_ICON_EXPAND);\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tconst isRTL = this.effectiveDir === \"rtl\";\n\n\t\tif (isLeft(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.expanded = isRTL;\n\t\t\treturn;\n\t\t}\n\n\t\tif (isRight(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.expanded = !isRTL;\n\t\t}\n\n\t\tif (isMinus(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.expanded = false;\n\t\t\treturn;\n\t\t}\n\n\t\tif (isPlus(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.expanded = true;\n\t\t}\n\t}\n\n\t_onclick() {\n\t\tthis._toggle();\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\te.stopPropagation();\n\n\t\tthis.sideNavigation?.focusItem(this);\n\t}\n\n\t_toggle() {\n\t\tif (!this.disabled) {\n\t\t\tthis.expanded = !this.expanded;\n\t\t}\n\t}\n\n\tget isSideNavigationGroup() {\n\t\treturn true;\n\t}\n}\n\nSideNavigationGroup.define();\n\nexport const isInstanceOfSideNavigationGroup = createInstanceChecker<SideNavigationGroup>(\"isSideNavigationGroup\");\nexport default SideNavigationGroup;\n"]}
|
|
1
|
+
{"version":3,"file":"SideNavigationGroup.js","sourceRoot":"","sources":["../src/SideNavigationGroup.ts"],"names":[],"mappings":"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","sourcesContent":["import property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport jsxRender from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport {\n\tisSpace,\n\tisLeft,\n\tisRight,\n\tisMinus,\n\tisPlus,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport SideNavigationItemBase from \"./SideNavigationItemBase.js\";\nimport type SideNavigationSelectableItemBase from \"./SideNavigationSelectableItemBase.js\";\nimport type SideNavigationItem from \"./SideNavigationItem.js\";\nimport SideNavigationGroupTemplate from \"./SideNavigationGroupTemplate.js\";\nimport type { DefaultSlot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\n\nimport {\n\tSIDE_NAVIGATION_ICON_COLLAPSE,\n\tSIDE_NAVIGATION_ICON_EXPAND,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport SideNavigationGroupCss from \"./generated/themes/SideNavigationGroup.css.js\";\nimport createInstanceChecker from \"@ui5/webcomponents-base/dist/util/createInstanceChecker.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * Represents a group of navigation actions within `ui5-side-navigation`.\n * The `ui5-side-navigation-group` can only be used inside a `ui5-side-navigation`.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigationGroup.js\";`\n *\n * @constructor\n * @extends SideNavigationItemBase\n * @public\n * @abstract\n * @since 1.24.0\n */\n@customElement({\n\ttag: \"ui5-side-navigation-group\",\n\trenderer: jsxRender,\n\ttemplate: SideNavigationGroupTemplate,\n\tstyles: SideNavigationGroupCss,\n})\nclass SideNavigationGroup extends SideNavigationItemBase {\n\t/**\n\t * Defines if the item is expanded\n\t *\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\texpanded = false;\n\n\tbelowGroup = false;\n\n\t/**\n\t * Defines nested items by passing `ui5-side-navigation-item` to the default slot.\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n\titems!: DefaultSlot<SideNavigationItem>;\n\n\t@i18n(\"@ui5/webcomponents-fiori\")\n\tstatic i18nBundle: I18nBundle;\n\n\tonBeforeRendering() {\n\t\tthis.allItems.forEach(item => {\n\t\t\titem._groupDisabled = this.disabled;\n\t\t});\n\t}\n\n\tget overflowItems() : Array<HTMLElement> {\n\t\tconst separator1 = this.shadowRoot!.querySelector<HTMLElement>(\".ui5-sn-item-separator:first-child\")!;\n\t\tconst separator2 = this.shadowRoot!.querySelector<HTMLElement>(\".ui5-sn-item-separator:last-child\")!;\n\n\t\tconst overflowItems = this.items.reduce((result, item) => {\n\t\t\treturn result.concat(item.overflowItems);\n\t\t}, new Array<SideNavigationItem>());\n\n\t\treturn [separator1, ...overflowItems, separator2];\n\t}\n\n\tget selectableItems() : Array<SideNavigationSelectableItemBase> {\n\t\treturn this.items.reduce((result, item) => {\n\t\t\treturn result.concat(item.selectableItems);\n\t\t}, new Array<SideNavigationSelectableItemBase>());\n\t}\n\n\tget focusableItems() : Array<SideNavigationItemBase> {\n\t\tif (this.sideNavCollapsed) {\n\t\t\treturn this.items;\n\t\t}\n\n\t\tif (this.expanded) {\n\t\t\treturn this.items.reduce((result, item) => {\n\t\t\t\treturn result.concat(item.focusableItems);\n\t\t\t}, new Array<SideNavigationItemBase>(this));\n\t\t}\n\n\t\treturn [this];\n\t}\n\n\tget allItems() : Array<SideNavigationItemBase> {\n\t\treturn this.items.reduce((result, item) => {\n\t\t\treturn result.concat(item.allItems);\n\t\t}, new Array<SideNavigationItemBase>(this));\n\t}\n\n\tget _groupId() {\n\t\tif (!this.items.length) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn `${this._id}-group`;\n\t}\n\n\tget _expanded() {\n\t\tif (!this.items.length) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn this.expanded;\n\t}\n\n\tget belowGroupClassName() {\n\t\treturn this.belowGroup ? \"ui5-sn-item-group-below-group\" : \"\";\n\t}\n\n\tget _arrowTooltip() {\n\t\treturn this.expanded ? SideNavigationGroup.i18nBundle.getText(SIDE_NAVIGATION_ICON_COLLAPSE)\n\t\t\t: SideNavigationGroup.i18nBundle.getText(SIDE_NAVIGATION_ICON_EXPAND);\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (this.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tconst isRTL = this.effectiveDir === \"rtl\";\n\n\t\tif (isLeft(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._toggle(isRTL);\n\t\t\treturn;\n\t\t}\n\n\t\tif (isRight(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._toggle(!isRTL);\n\t\t}\n\n\t\tif (isMinus(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._toggle(false);\n\t\t\treturn;\n\t\t}\n\n\t\tif (isPlus(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._toggle(true);\n\t\t}\n\t}\n\n\t_onclick() {\n\t\tthis._toggle(!this.expanded);\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\te.stopPropagation();\n\n\t\tthis.sideNavigation?.focusItem(this);\n\t}\n\n\t/**\n\t * Handles the user-driven expand/collapse of the group.\n\t *\n\t * Fires the cancelable `item-toggle` event and, unless it is prevented, applies the\n\t * new `expanded` value. The event is only fired for user interaction - programmatic\n\t * changes to `expanded` stay silent.\n\t *\n\t * @private\n\t */\n\t_toggle(expanded: boolean) {\n\t\tif (this.disabled || this.expanded === expanded) {\n\t\t\treturn;\n\t\t}\n\n\t\t// The event was prevented - keep the old value, suppressing the toggle.\n\t\tif (this.sideNavigation?.fireDecoratorEvent(\"item-toggle\", { item: this })) {\n\t\t\tthis.expanded = expanded;\n\t\t}\n\t}\n\n\tget isSideNavigationGroup() {\n\t\treturn true;\n\t}\n}\n\nSideNavigationGroup.define();\n\nexport const isInstanceOfSideNavigationGroup = createInstanceChecker<SideNavigationGroup>(\"isSideNavigationGroup\");\nexport default SideNavigationGroup;\n"]}
|
|
@@ -94,7 +94,16 @@ declare class SideNavigationItem extends SideNavigationSelectableItemBase {
|
|
|
94
94
|
_onfocusout(): void;
|
|
95
95
|
_onmouseenter(): void;
|
|
96
96
|
_onmouseleave(): void;
|
|
97
|
-
|
|
97
|
+
/**
|
|
98
|
+
* Handles the user-driven expand/collapse of the item.
|
|
99
|
+
*
|
|
100
|
+
* Fires the cancelable `item-toggle` event and, unless it is prevented, applies the
|
|
101
|
+
* new `expanded` value. The event is only fired for user interaction - programmatic
|
|
102
|
+
* changes to `expanded` stay silent.
|
|
103
|
+
*
|
|
104
|
+
* @private
|
|
105
|
+
*/
|
|
106
|
+
_toggle(expanded: boolean): void;
|
|
98
107
|
get isSideNavigationItem(): boolean;
|
|
99
108
|
}
|
|
100
109
|
export default SideNavigationItem;
|
|
@@ -194,7 +194,7 @@ let SideNavigationItem = SideNavigationItem_1 = class SideNavigationItem extends
|
|
|
194
194
|
}
|
|
195
195
|
_onToggleClick(e) {
|
|
196
196
|
e.stopPropagation();
|
|
197
|
-
this._toggle();
|
|
197
|
+
this._toggle(!this.expanded);
|
|
198
198
|
}
|
|
199
199
|
_onkeydown(e) {
|
|
200
200
|
if (this.effectiveDisabled) {
|
|
@@ -207,22 +207,22 @@ let SideNavigationItem = SideNavigationItem_1 = class SideNavigationItem extends
|
|
|
207
207
|
}
|
|
208
208
|
if (isLeft(e)) {
|
|
209
209
|
e.preventDefault();
|
|
210
|
-
this.
|
|
210
|
+
this._toggle(isRTL);
|
|
211
211
|
return;
|
|
212
212
|
}
|
|
213
213
|
if (isRight(e)) {
|
|
214
214
|
e.preventDefault();
|
|
215
|
-
this.
|
|
215
|
+
this._toggle(!isRTL);
|
|
216
216
|
return;
|
|
217
217
|
}
|
|
218
218
|
if (isMinus(e)) {
|
|
219
219
|
e.preventDefault();
|
|
220
|
-
this.
|
|
220
|
+
this._toggle(false);
|
|
221
221
|
return;
|
|
222
222
|
}
|
|
223
223
|
if (isPlus(e)) {
|
|
224
224
|
e.preventDefault();
|
|
225
|
-
this.
|
|
225
|
+
this._toggle(true);
|
|
226
226
|
return;
|
|
227
227
|
}
|
|
228
228
|
if (isEnter(e)) {
|
|
@@ -245,7 +245,7 @@ let SideNavigationItem = SideNavigationItem_1 = class SideNavigationItem extends
|
|
|
245
245
|
}
|
|
246
246
|
_onclick(e) {
|
|
247
247
|
if (!this.inPopover && this.unselectable) {
|
|
248
|
-
this._toggle();
|
|
248
|
+
this._toggle(!this.expanded);
|
|
249
249
|
}
|
|
250
250
|
super._onclick(e);
|
|
251
251
|
}
|
|
@@ -267,9 +267,22 @@ let SideNavigationItem = SideNavigationItem_1 = class SideNavigationItem extends
|
|
|
267
267
|
}
|
|
268
268
|
this.getDomRef().classList.add("ui5-sn-item-no-hover-effect");
|
|
269
269
|
}
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
270
|
+
/**
|
|
271
|
+
* Handles the user-driven expand/collapse of the item.
|
|
272
|
+
*
|
|
273
|
+
* Fires the cancelable `item-toggle` event and, unless it is prevented, applies the
|
|
274
|
+
* new `expanded` value. The event is only fired for user interaction - programmatic
|
|
275
|
+
* changes to `expanded` stay silent.
|
|
276
|
+
*
|
|
277
|
+
* @private
|
|
278
|
+
*/
|
|
279
|
+
_toggle(expanded) {
|
|
280
|
+
if (!this.items.length || this.effectiveDisabled || this.expanded === expanded) {
|
|
281
|
+
return;
|
|
282
|
+
}
|
|
283
|
+
// The event was prevented - keep the old value, suppressing the toggle.
|
|
284
|
+
if (this.sideNavigation?.fireDecoratorEvent("item-toggle", { item: this })) {
|
|
285
|
+
this.expanded = expanded;
|
|
273
286
|
}
|
|
274
287
|
}
|
|
275
288
|
get isSideNavigationItem() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SideNavigationItem.js","sourceRoot":"","sources":["../src/SideNavigationItem.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport jsxRender from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n\tisLeft,\n\tisRight,\n\tisMinus,\n\tisPlus,\n\tisEnter,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport type SideNavigationItemBase from \"./SideNavigationItemBase.js\";\nimport SideNavigationSelectableItemBase from \"./SideNavigationSelectableItemBase.js\";\nimport type SideNavigationSubItem from \"./SideNavigationSubItem.js\";\nimport {\n\tSIDE_NAVIGATION_ICON_COLLAPSE,\n\tSIDE_NAVIGATION_ICON_EXPAND,\n\tSIDE_NAVIGATION_OVERFLOW_ITEM_LABEL,\n\tSIDE_NAVIGATION_PARENT_ITEM_SELECTABLE_DESCRIPTION,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport type { DefaultSlot, Slot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport \"@ui5/webcomponents/dist/Tag.js\";\n\n// Templates\nimport SideNavigationItemTemplate from \"./SideNavigationItemTemplate.js\";\n\n// Styles\nimport SideNavigationItemCss from \"./generated/themes/SideNavigationItem.css.js\";\nimport createInstanceChecker from \"@ui5/webcomponents-base/dist/util/createInstanceChecker.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * Represents a navigation action. It can provide sub items.\n * The `ui5-side-navigation-item` is used within `ui5-side-navigation` or `ui5-side-navigation-group` only.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigationItem.js\";`\n *\n * @constructor\n * @extends SideNavigationSelectableItemBase\n * @abstract\n * @public\n * @since 1.0.0-rc.8\n */\n@customElement({\n\ttag: \"ui5-side-navigation-item\",\n\trenderer: jsxRender,\n\ttemplate: SideNavigationItemTemplate,\n\tstyles: SideNavigationItemCss,\n})\nclass SideNavigationItem extends SideNavigationSelectableItemBase {\n\t/**\n\t * Defines if the item is expanded\n\t *\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\texpanded = false;\n\n\t/**\n\t * Defines if the item should be collapsible or not.\n\t * It is true, for example, for the items inside the Popover of the Side Navigation\n\t * @private\n\t * @default false\n\t * @since 1.10.0\n\t */\n\t@property({ type: Boolean })\n\t_fixed = false;\n\n\t/**\n\t * Defines nested items by passing `ui5-side-navigation-sub-item` to the default slot.\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n\titems!: DefaultSlot<SideNavigationSubItem>;\n\n\t/**\n\t * Defines the tag to be displayed.\n\t *\n\t * **Note:** Tags are visible when the <code>NavigationList</code> is in expanded mode,\n\t * and hidden when collapsed, but they are visible in the overflow of the collapsed mode.\n\t *\n\t * **Note:** Only one `ui5-tag` is allowed. The tag should use `design=\"Set2\"`, `hide-state-icon`,\n\t * and `colorScheme` values 5-10 to avoid confusion with semantic colors (1-4).\n\t *\n\t * **Note:** It is recommended to limit tag width to 64px (4rem). If tag text exceeds this,\n\t * use shortened forms or abbreviations (e.g., \"Experimental\" → \"Exp\").\n\t *\n\t * **Important:** The <code>ui5-tag</code> must never be interactive (i.e., <code>active</code> must not be set to <code>true</code>),\n\t * as this would lead to nesting of interactive elements, which is not allowed.\n\t *\n\t * @public\n\t * @since 2.23.0\n\t */\n\t@slot({ type: HTMLElement })\n\ttag!: Slot<HTMLElement>;\n\n\t@i18n(\"@ui5/webcomponents-fiori\")\n\tstatic i18nBundle: I18nBundle;\n\n\tonBeforeRendering() {\n\t\tthis.items.forEach(item => {\n\t\t\titem._parentDisabled = this.effectiveDisabled;\n\t\t});\n\t}\n\n\tget overflowItems() : Array<SideNavigationItem> {\n\t\treturn [this];\n\t}\n\n\tget hasSubItems() {\n\t\treturn this.items.length > 0;\n\t}\n\n\tget effectiveDisabled() {\n\t\treturn this.disabled || this._groupDisabled;\n\t}\n\n\tget selectableItems() : Array<SideNavigationSelectableItemBase> {\n\t\tif (this.inPopover && this.unselectable && this.items.length) {\n\t\t\treturn [...this.items];\n\t\t}\n\n\t\treturn [this, ...this.items];\n\t}\n\n\tget focusableItems() : Array<SideNavigationItemBase> {\n\t\tif (this.sideNavCollapsed) {\n\t\t\treturn [this];\n\t\t}\n\n\t\tif (this.inPopover && this.unselectable && this.items.length) {\n\t\t\treturn [...this.items];\n\t\t}\n\n\t\tif (this.expanded) {\n\t\t\treturn [this, ...this.items];\n\t\t}\n\n\t\treturn [this];\n\t}\n\n\tget allItems() : Array<SideNavigationItemBase> {\n\t\treturn [this, ...this.items];\n\t}\n\n\tget effectiveTabIndex() {\n\t\tif (this.inPopover && this.unselectable) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn super.effectiveTabIndex;\n\t}\n\n\tget _ariaHasPopup() {\n\t\tif (this.inPopover && this.accessibilityAttributes?.hasPopup) {\n\t\t\treturn this.accessibilityAttributes.hasPopup;\n\t\t}\n\n\t\tif (!this.effectiveDisabled && this.sideNavCollapsed && this.items.length) {\n\t\t\treturn \"tree\";\n\t\t}\n\n\t\tif (this.accessibilityAttributes?.hasPopup) {\n\t\t\treturn this.accessibilityAttributes.hasPopup;\n\t\t}\n\n\t\tif (this.isOverflow) {\n\t\t\treturn \"menu\";\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget _ariaChecked() {\n\t\tif (this.isOverflow || this.unselectable || !this.sideNavCollapsed) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn this.selected;\n\t}\n\n\tget _groupId() {\n\t\tif (!this.items.length || this.sideNavCollapsed) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn `${this._id}-group`;\n\t}\n\n\tget _expanded() {\n\t\tif (!this.items.length || this.sideNavCollapsed) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn this.expanded;\n\t}\n\n\tget _describedBy() {\n\t\tconst parts: string[] = [];\n\n\t\tif (this.hasTag) {\n\t\t\tparts.push(this._tagId);\n\t\t}\n\n\t\tif (!this.effectiveDisabled && this.items.length && !this.unselectable) {\n\t\t\tparts.push(this._selectableItemDescriptionId);\n\t\t}\n\n\t\treturn parts.length > 0 ? parts.join(\" \") : undefined;\n\t}\n\n\tget _selectableItemDescriptionId() {\n\t\treturn `${this._id}-selectable-description`;\n\t}\n\n\tget _selectableItemDescriptionText() {\n\t\tif (!this.effectiveDisabled && this.items.length && !this.unselectable) {\n\t\t\treturn SideNavigationItem.i18nBundle.getText(SIDE_NAVIGATION_PARENT_ITEM_SELECTABLE_DESCRIPTION, this.text ?? \"\");\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tget hasTag() {\n\t\treturn !!this.tag.length;\n\t}\n\n\tget _textId() {\n\t\treturn `${this._id}-text`;\n\t}\n\n\tget classesArray() {\n\t\tconst classes = super.classesArray;\n\n\t\tif (!this.effectiveDisabled && this.items.length) {\n\t\t\tclasses.push(\"ui5-sn-item-with-expander\");\n\t\t}\n\n\t\tif (this._fixed) {\n\t\t\tclasses.push(\"ui5-sn-item-fixed\");\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tget _selected() {\n\t\tif (this.sideNavCollapsed || !this.expanded) {\n\t\t\treturn this.selected || this.items.some(item => item.selected);\n\t\t}\n\n\t\treturn this.selected;\n\t}\n\n\tget _arrowTooltip() {\n\t\treturn this.expanded ? SideNavigationItem.i18nBundle.getText(SIDE_NAVIGATION_ICON_COLLAPSE)\n\t\t\t: SideNavigationItem.i18nBundle.getText(SIDE_NAVIGATION_ICON_EXPAND);\n\t}\n\n\tget _ariaLabel() {\n\t\tif (this.accessibleName) {\n\t\t\treturn this.accessibleName;\n\t\t}\n\n\t\tif (this.isOverflow) {\n\t\t\treturn SideNavigationItem.i18nBundle.getText(SIDE_NAVIGATION_OVERFLOW_ITEM_LABEL);\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tapplyInitialFocusInPopover() {\n\t\tif (this.unselectable && this.items.length) {\n\t\t\tthis.items[0]?.focus();\n\t\t} else {\n\t\t\tthis.focus();\n\t\t}\n\t}\n\n\t_onToggleClick(e: CustomEvent) {\n\t\te.stopPropagation();\n\n\t\tthis._toggle();\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (this.effectiveDisabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst isRTL = this.effectiveDir === \"rtl\";\n\n\t\tif (this.sideNavigation.classList.contains(\"ui5-side-navigation-in-popover\") || this.sideNavCollapsed) {\n\t\t\tsuper._onkeydown(e);\n\t\t\treturn;\n\t\t}\n\n\t\tif (isLeft(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.expanded = isRTL;\n\t\t\treturn;\n\t\t}\n\n\t\tif (isRight(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.expanded = !isRTL;\n\t\t\treturn;\n\t\t}\n\n\t\tif (isMinus(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.expanded = false;\n\t\t\treturn;\n\t\t}\n\n\t\tif (isPlus(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.expanded = true;\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tif (!this.inPopover && this.unselectable && !this.isExternalLink) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t}\n\n\t\tsuper._onkeydown(e);\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tsuper._onkeyup(e);\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tif (this.inPopover && this.unselectable && this.items.length) {\n\t\t\tthis.sideNavigation?.focusItem(this.items[0]);\n\t\t} else {\n\t\t\tsuper._onfocusin(e);\n\t\t}\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\tif (!this.inPopover && this.unselectable) {\n\t\t\tthis._toggle();\n\t\t}\n\n\t\tsuper._onclick(e);\n\t}\n\n\t_onfocusout() {\n\t\tif (!this.sideNavCollapsed) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.getDomRef()!.classList.remove(\"ui5-sn-item-no-hover-effect\");\n\t}\n\n\t_onmouseenter() {\n\t\tif (!this.sideNavCollapsed) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.getDomRef()!.classList.remove(\"ui5-sn-item-no-hover-effect\");\n\t}\n\n\t_onmouseleave() {\n\t\tif (!this.sideNavCollapsed || !this._selected) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.getDomRef()!.classList.add(\"ui5-sn-item-no-hover-effect\");\n\t}\n\n\t_toggle() {\n\t\tif (this.items.length && !this.effectiveDisabled) {\n\t\t\tthis.expanded = !this.expanded;\n\t\t}\n\t}\n\n\tget isSideNavigationItem() {\n\t\treturn true;\n\t}\n}\n\nSideNavigationItem.define();\n\nexport default SideNavigationItem;\nexport const isInstanceOfSideNavigationItem = createInstanceChecker<SideNavigationItem>(\"isSideNavigationItem\");\n"]}
|
|
1
|
+
{"version":3,"file":"SideNavigationItem.js","sourceRoot":"","sources":["../src/SideNavigationItem.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport jsxRender from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n\tisLeft,\n\tisRight,\n\tisMinus,\n\tisPlus,\n\tisEnter,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport type SideNavigationItemBase from \"./SideNavigationItemBase.js\";\nimport SideNavigationSelectableItemBase from \"./SideNavigationSelectableItemBase.js\";\nimport type SideNavigationSubItem from \"./SideNavigationSubItem.js\";\nimport {\n\tSIDE_NAVIGATION_ICON_COLLAPSE,\n\tSIDE_NAVIGATION_ICON_EXPAND,\n\tSIDE_NAVIGATION_OVERFLOW_ITEM_LABEL,\n\tSIDE_NAVIGATION_PARENT_ITEM_SELECTABLE_DESCRIPTION,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport type { DefaultSlot, Slot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport \"@ui5/webcomponents/dist/Tag.js\";\n\n// Templates\nimport SideNavigationItemTemplate from \"./SideNavigationItemTemplate.js\";\n\n// Styles\nimport SideNavigationItemCss from \"./generated/themes/SideNavigationItem.css.js\";\nimport createInstanceChecker from \"@ui5/webcomponents-base/dist/util/createInstanceChecker.js\";\n\n/**\n * @class\n *\n * ### Overview\n *\n * Represents a navigation action. It can provide sub items.\n * The `ui5-side-navigation-item` is used within `ui5-side-navigation` or `ui5-side-navigation-group` only.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents-fiori/dist/SideNavigationItem.js\";`\n *\n * @constructor\n * @extends SideNavigationSelectableItemBase\n * @abstract\n * @public\n * @since 1.0.0-rc.8\n */\n@customElement({\n\ttag: \"ui5-side-navigation-item\",\n\trenderer: jsxRender,\n\ttemplate: SideNavigationItemTemplate,\n\tstyles: SideNavigationItemCss,\n})\nclass SideNavigationItem extends SideNavigationSelectableItemBase {\n\t/**\n\t * Defines if the item is expanded\n\t *\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\texpanded = false;\n\n\t/**\n\t * Defines if the item should be collapsible or not.\n\t * It is true, for example, for the items inside the Popover of the Side Navigation\n\t * @private\n\t * @default false\n\t * @since 1.10.0\n\t */\n\t@property({ type: Boolean })\n\t_fixed = false;\n\n\t/**\n\t * Defines nested items by passing `ui5-side-navigation-sub-item` to the default slot.\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n\titems!: DefaultSlot<SideNavigationSubItem>;\n\n\t/**\n\t * Defines the tag to be displayed.\n\t *\n\t * **Note:** Tags are visible when the <code>NavigationList</code> is in expanded mode,\n\t * and hidden when collapsed, but they are visible in the overflow of the collapsed mode.\n\t *\n\t * **Note:** Only one `ui5-tag` is allowed. The tag should use `design=\"Set2\"`, `hide-state-icon`,\n\t * and `colorScheme` values 5-10 to avoid confusion with semantic colors (1-4).\n\t *\n\t * **Note:** It is recommended to limit tag width to 64px (4rem). If tag text exceeds this,\n\t * use shortened forms or abbreviations (e.g., \"Experimental\" → \"Exp\").\n\t *\n\t * **Important:** The <code>ui5-tag</code> must never be interactive (i.e., <code>active</code> must not be set to <code>true</code>),\n\t * as this would lead to nesting of interactive elements, which is not allowed.\n\t *\n\t * @public\n\t * @since 2.23.0\n\t */\n\t@slot({ type: HTMLElement })\n\ttag!: Slot<HTMLElement>;\n\n\t@i18n(\"@ui5/webcomponents-fiori\")\n\tstatic i18nBundle: I18nBundle;\n\n\tonBeforeRendering() {\n\t\tthis.items.forEach(item => {\n\t\t\titem._parentDisabled = this.effectiveDisabled;\n\t\t});\n\t}\n\n\tget overflowItems() : Array<SideNavigationItem> {\n\t\treturn [this];\n\t}\n\n\tget hasSubItems() {\n\t\treturn this.items.length > 0;\n\t}\n\n\tget effectiveDisabled() {\n\t\treturn this.disabled || this._groupDisabled;\n\t}\n\n\tget selectableItems() : Array<SideNavigationSelectableItemBase> {\n\t\tif (this.inPopover && this.unselectable && this.items.length) {\n\t\t\treturn [...this.items];\n\t\t}\n\n\t\treturn [this, ...this.items];\n\t}\n\n\tget focusableItems() : Array<SideNavigationItemBase> {\n\t\tif (this.sideNavCollapsed) {\n\t\t\treturn [this];\n\t\t}\n\n\t\tif (this.inPopover && this.unselectable && this.items.length) {\n\t\t\treturn [...this.items];\n\t\t}\n\n\t\tif (this.expanded) {\n\t\t\treturn [this, ...this.items];\n\t\t}\n\n\t\treturn [this];\n\t}\n\n\tget allItems() : Array<SideNavigationItemBase> {\n\t\treturn [this, ...this.items];\n\t}\n\n\tget effectiveTabIndex() {\n\t\tif (this.inPopover && this.unselectable) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn super.effectiveTabIndex;\n\t}\n\n\tget _ariaHasPopup() {\n\t\tif (this.inPopover && this.accessibilityAttributes?.hasPopup) {\n\t\t\treturn this.accessibilityAttributes.hasPopup;\n\t\t}\n\n\t\tif (!this.effectiveDisabled && this.sideNavCollapsed && this.items.length) {\n\t\t\treturn \"tree\";\n\t\t}\n\n\t\tif (this.accessibilityAttributes?.hasPopup) {\n\t\t\treturn this.accessibilityAttributes.hasPopup;\n\t\t}\n\n\t\tif (this.isOverflow) {\n\t\t\treturn \"menu\";\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget _ariaChecked() {\n\t\tif (this.isOverflow || this.unselectable || !this.sideNavCollapsed) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn this.selected;\n\t}\n\n\tget _groupId() {\n\t\tif (!this.items.length || this.sideNavCollapsed) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn `${this._id}-group`;\n\t}\n\n\tget _expanded() {\n\t\tif (!this.items.length || this.sideNavCollapsed) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn this.expanded;\n\t}\n\n\tget _describedBy() {\n\t\tconst parts: string[] = [];\n\n\t\tif (this.hasTag) {\n\t\t\tparts.push(this._tagId);\n\t\t}\n\n\t\tif (!this.effectiveDisabled && this.items.length && !this.unselectable) {\n\t\t\tparts.push(this._selectableItemDescriptionId);\n\t\t}\n\n\t\treturn parts.length > 0 ? parts.join(\" \") : undefined;\n\t}\n\n\tget _selectableItemDescriptionId() {\n\t\treturn `${this._id}-selectable-description`;\n\t}\n\n\tget _selectableItemDescriptionText() {\n\t\tif (!this.effectiveDisabled && this.items.length && !this.unselectable) {\n\t\t\treturn SideNavigationItem.i18nBundle.getText(SIDE_NAVIGATION_PARENT_ITEM_SELECTABLE_DESCRIPTION, this.text ?? \"\");\n\t\t}\n\t\treturn undefined;\n\t}\n\n\tget hasTag() {\n\t\treturn !!this.tag.length;\n\t}\n\n\tget _textId() {\n\t\treturn `${this._id}-text`;\n\t}\n\n\tget classesArray() {\n\t\tconst classes = super.classesArray;\n\n\t\tif (!this.effectiveDisabled && this.items.length) {\n\t\t\tclasses.push(\"ui5-sn-item-with-expander\");\n\t\t}\n\n\t\tif (this._fixed) {\n\t\t\tclasses.push(\"ui5-sn-item-fixed\");\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tget _selected() {\n\t\tif (this.sideNavCollapsed || !this.expanded) {\n\t\t\treturn this.selected || this.items.some(item => item.selected);\n\t\t}\n\n\t\treturn this.selected;\n\t}\n\n\tget _arrowTooltip() {\n\t\treturn this.expanded ? SideNavigationItem.i18nBundle.getText(SIDE_NAVIGATION_ICON_COLLAPSE)\n\t\t\t: SideNavigationItem.i18nBundle.getText(SIDE_NAVIGATION_ICON_EXPAND);\n\t}\n\n\tget _ariaLabel() {\n\t\tif (this.accessibleName) {\n\t\t\treturn this.accessibleName;\n\t\t}\n\n\t\tif (this.isOverflow) {\n\t\t\treturn SideNavigationItem.i18nBundle.getText(SIDE_NAVIGATION_OVERFLOW_ITEM_LABEL);\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tapplyInitialFocusInPopover() {\n\t\tif (this.unselectable && this.items.length) {\n\t\t\tthis.items[0]?.focus();\n\t\t} else {\n\t\t\tthis.focus();\n\t\t}\n\t}\n\n\t_onToggleClick(e: CustomEvent) {\n\t\te.stopPropagation();\n\n\t\tthis._toggle(!this.expanded);\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (this.effectiveDisabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst isRTL = this.effectiveDir === \"rtl\";\n\n\t\tif (this.sideNavigation.classList.contains(\"ui5-side-navigation-in-popover\") || this.sideNavCollapsed) {\n\t\t\tsuper._onkeydown(e);\n\t\t\treturn;\n\t\t}\n\n\t\tif (isLeft(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._toggle(isRTL);\n\t\t\treturn;\n\t\t}\n\n\t\tif (isRight(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._toggle(!isRTL);\n\t\t\treturn;\n\t\t}\n\n\t\tif (isMinus(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._toggle(false);\n\t\t\treturn;\n\t\t}\n\n\t\tif (isPlus(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis._toggle(true);\n\t\t\treturn;\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tif (!this.inPopover && this.unselectable && !this.isExternalLink) {\n\t\t\t\te.preventDefault();\n\t\t\t}\n\t\t}\n\n\t\tsuper._onkeydown(e);\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tsuper._onkeyup(e);\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tif (this.inPopover && this.unselectable && this.items.length) {\n\t\t\tthis.sideNavigation?.focusItem(this.items[0]);\n\t\t} else {\n\t\t\tsuper._onfocusin(e);\n\t\t}\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\tif (!this.inPopover && this.unselectable) {\n\t\t\tthis._toggle(!this.expanded);\n\t\t}\n\n\t\tsuper._onclick(e);\n\t}\n\n\t_onfocusout() {\n\t\tif (!this.sideNavCollapsed) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.getDomRef()!.classList.remove(\"ui5-sn-item-no-hover-effect\");\n\t}\n\n\t_onmouseenter() {\n\t\tif (!this.sideNavCollapsed) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.getDomRef()!.classList.remove(\"ui5-sn-item-no-hover-effect\");\n\t}\n\n\t_onmouseleave() {\n\t\tif (!this.sideNavCollapsed || !this._selected) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.getDomRef()!.classList.add(\"ui5-sn-item-no-hover-effect\");\n\t}\n\n\t/**\n\t * Handles the user-driven expand/collapse of the item.\n\t *\n\t * Fires the cancelable `item-toggle` event and, unless it is prevented, applies the\n\t * new `expanded` value. The event is only fired for user interaction - programmatic\n\t * changes to `expanded` stay silent.\n\t *\n\t * @private\n\t */\n\t_toggle(expanded: boolean) {\n\t\tif (!this.items.length || this.effectiveDisabled || this.expanded === expanded) {\n\t\t\treturn;\n\t\t}\n\n\t\t// The event was prevented - keep the old value, suppressing the toggle.\n\t\tif (this.sideNavigation?.fireDecoratorEvent(\"item-toggle\", { item: this })) {\n\t\t\tthis.expanded = expanded;\n\t\t}\n\t}\n\n\tget isSideNavigationItem() {\n\t\treturn true;\n\t}\n}\n\nSideNavigationItem.define();\n\nexport default SideNavigationItem;\nexport const isInstanceOfSideNavigationItem = createInstanceChecker<SideNavigationItem>(\"isSideNavigationItem\");\n"]}
|
package/dist/UserMenuTemplate.js
CHANGED
|
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "@ui5/webcompo
|
|
|
2
2
|
import Avatar from "@ui5/webcomponents/dist/Avatar.js";
|
|
3
3
|
import Button from "@ui5/webcomponents/dist/Button.js";
|
|
4
4
|
import Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
5
|
-
import
|
|
5
|
+
import AvatarBadge from "@ui5/webcomponents/dist/AvatarBadge.js";
|
|
6
6
|
import Title from "@ui5/webcomponents/dist/Title.js";
|
|
7
7
|
import Text from "@ui5/webcomponents/dist/Text.js";
|
|
8
8
|
import Label from "@ui5/webcomponents/dist/Label.js";
|
|
@@ -33,7 +33,7 @@ function headerContent() {
|
|
|
33
33
|
return (_jsx(_Fragment, { children: this._selectedAccount &&
|
|
34
34
|
_jsxs("div", { class: "ui5-user-menu-selected-account", "aria-label": this._ariaLabelledByAccountInformationText, children: [_jsx("span", { title: this.showEditButton ? this._editAvatarTooltip : undefined, children: _jsxs(Avatar, { size: "L", onClick: this._isAvatarInteractive ? this._handleAvatarClick : undefined, initials: this._selectedAccount._initials, colorScheme: this._selectedAccount.avatarColorScheme, fallbackIcon: personPlaceholder, class: "ui5-user-menu-selected-account-avatar", mode: this._isAvatarInteractive ? "Interactive" : "Image", children: [this._selectedAccount.avatarSrc &&
|
|
35
35
|
_jsx("img", { src: this._selectedAccount.avatarSrc }), this.showEditButton &&
|
|
36
|
-
_jsx(
|
|
36
|
+
_jsx(AvatarBadge, { slot: "badge", icon: edit })] }) }), this._selectedAccount.titleText &&
|
|
37
37
|
_jsx(Text, { id: "selected-account-title", class: "ui5-user-menu-selected-account-title", children: this._selectedAccount.titleText }), this._selectedAccount.subtitleText &&
|
|
38
38
|
_jsx(Text, { class: "ui5-user-menu-selected-account-subtitleText", children: this._selectedAccount.subtitleText }), this._selectedAccount.description &&
|
|
39
39
|
_jsx(Text, { class: "ui5-user-menu-selected-account-description", children: this._selectedAccount.description }), this._selectedAccount.additionalInfo &&
|