@ui5/webcomponents-fiori 2.6.0-rc.1 → 2.6.0-rc.3

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.
Files changed (204) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/cypress/specs/SideNavigation.cy.ts +38 -0
  3. package/cypress/specs/UserMenu.cy.ts +41 -0
  4. package/cypress/support/commands/UserMenu.commands.ts +29 -0
  5. package/cypress/support/commands.ts +10 -0
  6. package/dist/.tsbuildinfo +1 -1
  7. package/dist/SideNavigation.d.ts +1 -1
  8. package/dist/SideNavigation.js +4 -2
  9. package/dist/SideNavigation.js.map +1 -1
  10. package/dist/SideNavigationGroup.d.ts +1 -1
  11. package/dist/SideNavigationGroup.js.map +1 -1
  12. package/dist/SideNavigationItemTemplate.js +6 -2
  13. package/dist/SideNavigationItemTemplate.js.map +1 -1
  14. package/dist/SideNavigationPopoverTemplate.js +1 -5
  15. package/dist/SideNavigationPopoverTemplate.js.map +1 -1
  16. package/dist/SideNavigationSelectableItemBase.d.ts +3 -0
  17. package/dist/SideNavigationSelectableItemBase.js +7 -0
  18. package/dist/SideNavigationSelectableItemBase.js.map +1 -1
  19. package/dist/UserMenu.d.ts +4 -1
  20. package/dist/UserMenu.js +20 -1
  21. package/dist/UserMenu.js.map +1 -1
  22. package/dist/UserMenuTemplate.js +1 -1
  23. package/dist/UserMenuTemplate.js.map +1 -1
  24. package/dist/css/themes/DynamicPage.css +1 -1
  25. package/dist/css/themes/DynamicPageHeader.css +1 -1
  26. package/dist/css/themes/DynamicPageHeaderActions.css +1 -1
  27. package/dist/css/themes/DynamicPageTitle.css +1 -1
  28. package/dist/css/themes/FlexibleColumnLayout.css +1 -1
  29. package/dist/css/themes/MediaGallery.css +1 -1
  30. package/dist/css/themes/MediaGalleryItem.css +1 -1
  31. package/dist/css/themes/NotificationListGroupItem.css +1 -1
  32. package/dist/css/themes/NotificationListItem.css +1 -1
  33. package/dist/css/themes/NotificationListItemBase.css +1 -1
  34. package/dist/css/themes/NotificationStateIcon.css +1 -1
  35. package/dist/css/themes/Page.css +1 -1
  36. package/dist/css/themes/ProductSwitchItem.css +1 -1
  37. package/dist/css/themes/ShellBar.css +1 -1
  38. package/dist/css/themes/SideNavigation.css +1 -1
  39. package/dist/css/themes/SideNavigationGroup.css +1 -1
  40. package/dist/css/themes/SideNavigationItem.css +1 -1
  41. package/dist/css/themes/SideNavigationItemBase.css +1 -1
  42. package/dist/css/themes/SideNavigationPopover.css +1 -1
  43. package/dist/css/themes/SideNavigationSubItem.css +1 -1
  44. package/dist/css/themes/Timeline.css +1 -1
  45. package/dist/css/themes/TimelineGroupItem.css +1 -1
  46. package/dist/css/themes/TimelineItem.css +1 -1
  47. package/dist/css/themes/UploadCollection.css +1 -1
  48. package/dist/css/themes/UploadCollectionItem.css +1 -1
  49. package/dist/css/themes/ViewSettingsDialog.css +1 -1
  50. package/dist/css/themes/Wizard.css +1 -1
  51. package/dist/css/themes/WizardTab.css +1 -1
  52. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  53. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  54. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  55. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  56. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  57. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  58. package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -1
  59. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  60. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  61. package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -1
  62. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  63. package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -1
  64. package/dist/custom-elements-internal.json +26 -1
  65. package/dist/custom-elements.json +14 -0
  66. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  67. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  68. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  69. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  70. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  71. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  72. package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
  73. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  74. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  75. package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
  76. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  77. package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
  78. package/dist/generated/themes/DynamicPage.css.d.ts +1 -1
  79. package/dist/generated/themes/DynamicPage.css.js +1 -1
  80. package/dist/generated/themes/DynamicPage.css.js.map +1 -1
  81. package/dist/generated/themes/DynamicPageHeader.css.d.ts +1 -1
  82. package/dist/generated/themes/DynamicPageHeader.css.js +1 -1
  83. package/dist/generated/themes/DynamicPageHeader.css.js.map +1 -1
  84. package/dist/generated/themes/DynamicPageHeaderActions.css.d.ts +1 -1
  85. package/dist/generated/themes/DynamicPageHeaderActions.css.js +1 -1
  86. package/dist/generated/themes/DynamicPageHeaderActions.css.js.map +1 -1
  87. package/dist/generated/themes/DynamicPageTitle.css.d.ts +1 -1
  88. package/dist/generated/themes/DynamicPageTitle.css.js +1 -1
  89. package/dist/generated/themes/DynamicPageTitle.css.js.map +1 -1
  90. package/dist/generated/themes/FlexibleColumnLayout.css.d.ts +1 -1
  91. package/dist/generated/themes/FlexibleColumnLayout.css.js +1 -1
  92. package/dist/generated/themes/FlexibleColumnLayout.css.js.map +1 -1
  93. package/dist/generated/themes/MediaGallery.css.d.ts +1 -1
  94. package/dist/generated/themes/MediaGallery.css.js +1 -1
  95. package/dist/generated/themes/MediaGallery.css.js.map +1 -1
  96. package/dist/generated/themes/MediaGalleryItem.css.d.ts +1 -1
  97. package/dist/generated/themes/MediaGalleryItem.css.js +1 -1
  98. package/dist/generated/themes/MediaGalleryItem.css.js.map +1 -1
  99. package/dist/generated/themes/NotificationListGroupItem.css.d.ts +1 -1
  100. package/dist/generated/themes/NotificationListGroupItem.css.js +1 -1
  101. package/dist/generated/themes/NotificationListGroupItem.css.js.map +1 -1
  102. package/dist/generated/themes/NotificationListItem.css.d.ts +1 -1
  103. package/dist/generated/themes/NotificationListItem.css.js +1 -1
  104. package/dist/generated/themes/NotificationListItem.css.js.map +1 -1
  105. package/dist/generated/themes/NotificationListItemBase.css.d.ts +1 -1
  106. package/dist/generated/themes/NotificationListItemBase.css.js +1 -1
  107. package/dist/generated/themes/NotificationListItemBase.css.js.map +1 -1
  108. package/dist/generated/themes/NotificationStateIcon.css.d.ts +1 -1
  109. package/dist/generated/themes/NotificationStateIcon.css.js +1 -1
  110. package/dist/generated/themes/NotificationStateIcon.css.js.map +1 -1
  111. package/dist/generated/themes/Page.css.d.ts +1 -1
  112. package/dist/generated/themes/Page.css.js +1 -1
  113. package/dist/generated/themes/Page.css.js.map +1 -1
  114. package/dist/generated/themes/ProductSwitchItem.css.d.ts +1 -1
  115. package/dist/generated/themes/ProductSwitchItem.css.js +1 -1
  116. package/dist/generated/themes/ProductSwitchItem.css.js.map +1 -1
  117. package/dist/generated/themes/ShellBar.css.d.ts +1 -1
  118. package/dist/generated/themes/ShellBar.css.js +1 -1
  119. package/dist/generated/themes/ShellBar.css.js.map +1 -1
  120. package/dist/generated/themes/SideNavigation.css.d.ts +1 -1
  121. package/dist/generated/themes/SideNavigation.css.js +1 -1
  122. package/dist/generated/themes/SideNavigation.css.js.map +1 -1
  123. package/dist/generated/themes/SideNavigationGroup.css.d.ts +1 -1
  124. package/dist/generated/themes/SideNavigationGroup.css.js +1 -1
  125. package/dist/generated/themes/SideNavigationGroup.css.js.map +1 -1
  126. package/dist/generated/themes/SideNavigationItem.css.d.ts +1 -1
  127. package/dist/generated/themes/SideNavigationItem.css.js +1 -1
  128. package/dist/generated/themes/SideNavigationItem.css.js.map +1 -1
  129. package/dist/generated/themes/SideNavigationItemBase.css.d.ts +1 -1
  130. package/dist/generated/themes/SideNavigationItemBase.css.js +1 -1
  131. package/dist/generated/themes/SideNavigationItemBase.css.js.map +1 -1
  132. package/dist/generated/themes/SideNavigationPopover.css.d.ts +1 -1
  133. package/dist/generated/themes/SideNavigationPopover.css.js +1 -1
  134. package/dist/generated/themes/SideNavigationPopover.css.js.map +1 -1
  135. package/dist/generated/themes/SideNavigationSubItem.css.d.ts +1 -1
  136. package/dist/generated/themes/SideNavigationSubItem.css.js +1 -1
  137. package/dist/generated/themes/SideNavigationSubItem.css.js.map +1 -1
  138. package/dist/generated/themes/Timeline.css.d.ts +1 -1
  139. package/dist/generated/themes/Timeline.css.js +1 -1
  140. package/dist/generated/themes/Timeline.css.js.map +1 -1
  141. package/dist/generated/themes/TimelineGroupItem.css.d.ts +1 -1
  142. package/dist/generated/themes/TimelineGroupItem.css.js +1 -1
  143. package/dist/generated/themes/TimelineGroupItem.css.js.map +1 -1
  144. package/dist/generated/themes/TimelineItem.css.d.ts +1 -1
  145. package/dist/generated/themes/TimelineItem.css.js +1 -1
  146. package/dist/generated/themes/TimelineItem.css.js.map +1 -1
  147. package/dist/generated/themes/UploadCollection.css.d.ts +1 -1
  148. package/dist/generated/themes/UploadCollection.css.js +1 -1
  149. package/dist/generated/themes/UploadCollection.css.js.map +1 -1
  150. package/dist/generated/themes/UploadCollectionItem.css.d.ts +1 -1
  151. package/dist/generated/themes/UploadCollectionItem.css.js +1 -1
  152. package/dist/generated/themes/UploadCollectionItem.css.js.map +1 -1
  153. package/dist/generated/themes/ViewSettingsDialog.css.d.ts +1 -1
  154. package/dist/generated/themes/ViewSettingsDialog.css.js +1 -1
  155. package/dist/generated/themes/ViewSettingsDialog.css.js.map +1 -1
  156. package/dist/generated/themes/Wizard.css.d.ts +1 -1
  157. package/dist/generated/themes/Wizard.css.js +1 -1
  158. package/dist/generated/themes/Wizard.css.js.map +1 -1
  159. package/dist/generated/themes/WizardTab.css.d.ts +1 -1
  160. package/dist/generated/themes/WizardTab.css.js +1 -1
  161. package/dist/generated/themes/WizardTab.css.js.map +1 -1
  162. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  163. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  164. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  165. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  166. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  167. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  168. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  169. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  170. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  171. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  172. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  173. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  174. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  175. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  176. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  177. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  178. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  179. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  180. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.d.ts +1 -1
  181. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
  182. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
  183. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.d.ts +1 -1
  184. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  185. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
  186. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  187. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  188. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  189. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.d.ts +1 -1
  190. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
  191. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
  192. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  193. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  194. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  195. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.d.ts +1 -1
  196. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
  197. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
  198. package/dist/vscode.html-custom-data.json +1 -1
  199. package/dist/web-types.json +18 -2
  200. package/package.json +7 -7
  201. package/src/SideNavigationItemTemplate.tsx +4 -2
  202. package/src/SideNavigationPopoverTemplate.tsx +1 -2
  203. package/src/UserMenuTemplate.tsx +1 -0
  204. package/src/themes/DynamicPage.css +1 -1
@@ -153,7 +153,7 @@ declare class SideNavigation extends UI5Element {
153
153
  _getFocusableItems(items: Array<SideNavigationItem | SideNavigationGroup>): Array<SideNavigationItemBase>;
154
154
  _getAllItems(items: Array<SideNavigationItem | SideNavigationGroup>): Array<SideNavigationItemBase>;
155
155
  _findSelectedItem(items: Array<SideNavigationItem | SideNavigationGroup>): SideNavigationSelectableItemBase | undefined;
156
- get overflowItems(): Array<SideNavigationItem>;
156
+ get overflowItems(): Array<HTMLElement>;
157
157
  _handleItemClick(e: KeyboardEvent | MouseEvent, item: SideNavigationSelectableItemBase): void;
158
158
  _handleOverflowClick(): void;
159
159
  _getOverflowItems(): Array<SideNavigationItem>;
@@ -20,6 +20,7 @@ import ItemNavigation from "@ui5/webcomponents-base/dist/delegate/ItemNavigation
20
20
  import { isPhone, isTablet, isCombi, } from "@ui5/webcomponents-base/dist/Device.js";
21
21
  import { isSpace, isEnter, } from "@ui5/webcomponents-base/dist/Keys.js";
22
22
  import NavigationMode from "@ui5/webcomponents-base/dist/types/NavigationMode.js";
23
+ import { isInstanceOfSideNavigationSelectableItemBase } from "./SideNavigationSelectableItemBase.js";
23
24
  import { isInstanceOfSideNavigationItemBase } from "./SideNavigationItemBase.js";
24
25
  import SideNavigationItem, { isInstanceOfSideNavigationItem } from "./SideNavigationItem.js";
25
26
  import SideNavigationSubItem from "./SideNavigationSubItem.js";
@@ -159,6 +160,7 @@ let SideNavigation = SideNavigation_1 = class SideNavigation extends UI5Element
159
160
  }
160
161
  handlePopupItemClick(e) {
161
162
  const associatedItem = e.target.associatedItem;
163
+ e.stopPropagation();
162
164
  associatedItem.fireEvent("click");
163
165
  if (associatedItem.selected) {
164
166
  this.closePicker();
@@ -308,7 +310,7 @@ let SideNavigation = SideNavigation_1 = class SideNavigation extends UI5Element
308
310
  }
309
311
  overflowItem.classList.remove("ui5-sn-item-hidden");
310
312
  itemsHeight = overflowItem.offsetHeight;
311
- const selectedItem = overflowItems.find(item => item._selected);
313
+ const selectedItem = overflowItems.filter(isInstanceOfSideNavigationSelectableItemBase).find(item => item._selected);
312
314
  if (selectedItem) {
313
315
  const selectedItemDomRef = selectedItem.getDomRef();
314
316
  const { marginTop, marginBottom } = window.getComputedStyle(selectedItemDomRef);
@@ -389,7 +391,7 @@ let SideNavigation = SideNavigation_1 = class SideNavigation extends UI5Element
389
391
  const overflowClass = "ui5-sn-item-hidden";
390
392
  const result = [];
391
393
  this.overflowItems.forEach(item => {
392
- if (item.hasAttribute("ui5-side-navigation-item") && item.classList.contains(overflowClass)) {
394
+ if (isInstanceOfSideNavigationItem(item) && item.classList.contains(overflowClass)) {
393
395
  result.push(item);
394
396
  }
395
397
  });
@@ -1 +1 @@
1
- {"version":3,"file":"SideNavigation.js","sourceRoot":"","sources":["../src/SideNavigation.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport jsxRender from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport ResponsivePopover from \"@ui5/webcomponents/dist/ResponsivePopover.js\";\nimport NavigationMenu from \"@ui5/webcomponents/dist/NavigationMenu.js\";\nimport NavigationMenuItem from \"@ui5/webcomponents/dist/NavigationMenuItem.js\";\nimport type { MenuItemClickEventDetail } from \"@ui5/webcomponents/dist/Menu.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.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport ItemNavigation from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport {\n\tisPhone,\n\tisTablet,\n\tisCombi,\n} from \"@ui5/webcomponents-base/dist/Device.js\";\nimport {\n\tisSpace,\n\tisEnter,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport NavigationMode from \"@ui5/webcomponents-base/dist/types/NavigationMode.js\";\nimport type SideNavigationItemBase from \"./SideNavigationItemBase.js\";\nimport { isInstanceOfSideNavigationItemBase } from \"./SideNavigationItemBase.js\";\nimport type SideNavigationSelectableItemBase from \"./SideNavigationSelectableItemBase.js\";\nimport SideNavigationItem, { isInstanceOfSideNavigationItem } from \"./SideNavigationItem.js\";\nimport SideNavigationSubItem from \"./SideNavigationSubItem.js\";\nimport 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} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport SideNavigationCss from \"./generated/themes/SideNavigation.css.js\";\nimport SideNavigationPopoverCss from \"./generated/themes/SideNavigationPopover.css.js\";\n\nconst PAGE_UP_DOWN_SIZE = 10;\n\ntype SideNavigationPopoverContents = {\n\titem: SideNavigationItem,\n\tsubItems: Array<SideNavigationSubItem>,\n};\n\ntype SideNavigationSelectionChangeEventDetail = {\n\titem: SideNavigationItemBase,\n};\n\ntype PopupSideNavigationItem = SideNavigationItem & { associatedItem: SideNavigationSelectableItemBase };\n\n// used for the inner side navigation used in the SideNavigationPopoverTemplate\ntype NavigationMenuClickEventDetail = MenuItemClickEventDetail & {\n\titem: Pick<MenuItemClickEventDetail, \"item\"> & {\n\t\tassociatedItem: SideNavigationSelectableItemBase,\n\t}\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `SideNavigation` is used as a standard menu in applications.\n * It consists of three containers: header (top-aligned), main navigation section (top-aligned) and the secondary section (bottom-aligned).\n *\n * - The header is meant for displaying user related information - profile data, avatar, etc.\n * - The main navigation section is related to the user’s current work context\n * - The secondary section is mostly used to link additional information that may be of interest (legal information, developer communities, external help, contact information and so on).\n *\n * ### Usage\n *\n * Use the available `ui5-side-navigation-group`, `ui5-side-navigation-item`\n * and `ui5-side-navigation-sub-item` components to build your menu.\n * The items can consist of text only or an icon with text. The use or non-use of icons must be consistent for all items on one level.\n * You must not combine entries with and without icons on the same level. We strongly recommend that you do not use icons on the second level.\n *\n * The `ui5-side-navigation` component is intended for use within an `ui5-navigation-layout` component.\n * While it can function independently, it is recommended to use it with\n * the `ui5-navigation-layout` for optimal user experience.\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\tdependencies: [\n\t\tResponsivePopover,\n\t\tSideNavigationGroup,\n\t\tSideNavigationItem,\n\t\tSideNavigationSubItem,\n\t\tNavigationMenu,\n\t\tNavigationMenuItem,\n\t],\n})\n/**\n * Fired when the selection has changed via user interaction\n *\n * @param {SideNavigationSelectableItemBase} item the clicked item.\n * @public\n */\n@event(\"selection-change\", {\n\tbubbles: true,\n\tcancelable: true,\n})\nclass SideNavigation extends UI5Element {\n\teventDetails!: {\n\t\t\"selection-change\": SideNavigationSelectionChangeEventDetail\n\t}\n\n\t/**\n\t * Defines whether the `ui5-side-navigation` is expanded or collapsed.\n\t *\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tcollapsed = false;\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!: Array<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!: Array<SideNavigationItemBase>;\n\n\t/**\n\t * Defines the header of the `ui5-side-navigation`.\n\t *\n\t * **Note:** The header is displayed when the component is expanded - the property `collapsed` is false;\n\t *\n\t * @public\n\t * @since 1.0.0-rc.11\n\t */\n\t@slot()\n\theader!: Array<HTMLElement>;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Object })\n\t_popoverContents!: SideNavigationPopoverContents;\n\n\t@property({ type: Boolean })\n\tinPopover= 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/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tisTouchDevice = false;\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\n\tonBeforeRendering() {\n\t\tsuper.onBeforeRendering();\n\n\t\tthis._getAllItems(this.items as Array<SideNavigationItem | SideNavigationGroup>)\n\t\t\t.concat(this._getAllItems(this.fixedItems as Array<SideNavigationItem | SideNavigationGroup>))\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});\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 as Array<SideNavigationItem | SideNavigationGroup>);\n\t\tif (selectedItem) {\n\t\t\tselectedItem.focus();\n\t\t} else {\n\t\t\ttree.items[0]?.focus();\n\t\t}\n\t}\n\n\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\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\tget accSideNavigationPopoverHiddenText() {\n\t\treturn SideNavigation.i18nBundle.getText(SIDE_NAVIGATION_POPOVER_HIDDEN_TEXT);\n\t}\n\n\tget ariaRoleDescNavigationList() {\n\t\tlet key = SIDE_NAVIGATION_LIST_ARIA_ROLE_DESC;\n\t\tif (this.collapsed) {\n\t\t\tkey = SIDE_NAVIGATION_COLLAPSED_LIST_ARIA_ROLE_DESC;\n\t\t}\n\n\t\treturn SideNavigation.i18nBundle.getText(key);\n\t}\n\n\tget overflowAccessibleName() {\n\t\treturn SideNavigation.i18nBundle.getText(SIDE_NAVIGATION_OVERFLOW_ACCESSIBLE_NAME);\n\t}\n\n\thandlePopupItemClick(e: KeyboardEvent | PointerEvent) {\n\t\tconst associatedItem = (e.target as PopupSideNavigationItem).associatedItem;\n\n\t\tassociatedItem.fireEvent(\"click\");\n\t\tif (associatedItem.selected) {\n\t\t\tthis.closePicker();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._selectItem(associatedItem);\n\t\tthis.closePicker();\n\n\t\tthis._popoverContents.item?.getDomRef()!.classList.add(\"ui5-sn-item-no-hover-effect\");\n\t}\n\n\thandleOverflowItemClick(e: CustomEvent<NavigationMenuClickEventDetail>) {\n\t\tconst associatedItem = e.detail?.item.associatedItem;\n\n\t\tassociatedItem.fireEvent(\"click\");\n\t\tif (associatedItem.selected) {\n\t\t\tthis.closeMenu();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._selectItem(associatedItem);\n\n\t\tthis.closeMenu();\n\n\t\t// When subitem is selected in collapsed mode parent element should be focused\n\t\tif (associatedItem.nodeName.toLowerCase() === \"ui5-side-navigation-sub-item\") {\n\t\t\tconst parent = associatedItem.parentElement as SideNavigationItem;\n\t\t\tthis.focusItem(parent);\n\t\t\tparent?.focus();\n\t\t} else {\n\t\t\tthis.focusItem(associatedItem);\n\t\t\tassociatedItem?.focus();\n\t\t}\n\t}\n\n\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() {\n\t\tconst menu = this.getOverflowPopover();\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 as Array<SideNavigationItem | SideNavigationGroup>);\n\t}\n\n\tgetEnabledFlexibleItems() : Array<ITabbable> {\n\t\tconst items = this.getEnabledItems(this.items as Array<SideNavigationItem | SideNavigationGroup>);\n\n\t\tif (this._overflowItem) {\n\t\t\titems.push(this._overflowItem);\n\t\t}\n\n\t\treturn items;\n\t}\n\n\tgetEnabledItems(items: Array<SideNavigationItem | SideNavigationGroup>) : Array<ITabbable> {\n\t\tconst result = new Array<ITabbable>();\n\n\t\tthis._getFocusableItems(items).forEach(item => {\n\t\t\tif (item.classList.contains(\"ui5-sn-item-hidden\")) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (!item.disabled) {\n\t\t\t\tresult.push(item);\n\t\t\t}\n\t\t});\n\n\t\treturn result;\n\t}\n\n\tfocusItem(item: SideNavigationItemBase) {\n\t\tif (item.isFixedItem) {\n\t\t\tthis._fixedItemNavigation.setCurrentItem(item);\n\t\t} else {\n\t\t\tthis._flexibleItemNavigation.setCurrentItem(item);\n\t\t}\n\t}\n\n\tonAfterRendering() {\n\t\tif (!this.getDomRef()?.matches(\":focus-within\")) {\n\t\t\tlet selectedItem = this._findSelectedItem(this.items as Array<SideNavigationItem | SideNavigationGroup>);\n\t\t\tif (selectedItem) {\n\t\t\t\tthis._flexibleItemNavigation.setCurrentItem(selectedItem);\n\t\t\t}\n\n\t\t\tselectedItem = this._findSelectedItem(this.fixedItems as Array<SideNavigationItem | SideNavigationGroup>);\n\t\t\tif (selectedItem) {\n\t\t\t\tthis._fixedItemNavigation.setCurrentItem(selectedItem);\n\t\t\t}\n\t\t}\n\n\t\tif (this.collapsed) {\n\t\t\tthis.handleResize();\n\t\t}\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._handleResizeBound);\n\n\t\tthis.isTouchDevice = isPhone() || (isTablet() && !isCombi());\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._handleResizeBound);\n\t}\n\n\thandleResize() {\n\t\tthis._updateOverflowItems();\n\t}\n\n\t_updateOverflowItems() {\n\t\tconst domRef = this.getDomRef();\n\t\tif (!this.collapsed || !domRef) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst overflowItem = this._overflowItem!;\n\t\tconst flexibleContentDomRef : HTMLElement = domRef.querySelector(\".ui5-sn-flexible\")!;\n\t\tif (!overflowItem) {\n\t\t\treturn null;\n\t\t}\n\n\t\toverflowItem.classList.add(\"ui5-sn-item-hidden\");\n\n\t\tconst overflowItems = this.overflowItems;\n\n\t\tlet itemsHeight = overflowItems.reduce<number>((sum, itemRef) => {\n\t\t\titemRef.classList.remove(\"ui5-sn-item-hidden\");\n\t\t\treturn sum + itemRef.offsetHeight;\n\t\t}, 0);\n\n\t\tconst { paddingTop, paddingBottom } = window.getComputedStyle(flexibleContentDomRef);\n\t\tconst listHeight = flexibleContentDomRef?.offsetHeight - parseInt(paddingTop) - parseInt(paddingBottom);\n\n\t\tif (itemsHeight <= listHeight) {\n\t\t\treturn;\n\t\t}\n\n\t\toverflowItem.classList.remove(\"ui5-sn-item-hidden\");\n\n\t\titemsHeight = overflowItem.offsetHeight;\n\n\t\tconst selectedItem = overflowItems.find(item => item._selected);\n\n\t\tif (selectedItem) {\n\t\t\tconst selectedItemDomRef = selectedItem.getDomRef();\n\t\t\tconst { marginTop, marginBottom } = window.getComputedStyle(selectedItemDomRef!);\n\n\t\t\titemsHeight += selectedItemDomRef!.offsetHeight + parseFloat(marginTop) + parseFloat(marginBottom);\n\t\t}\n\n\t\toverflowItems.forEach(item => {\n\t\t\tif (item === selectedItem) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet itemDomRef;\n\n\t\t\tif (isInstanceOfSideNavigationItemBase(item)) {\n\t\t\t\titemDomRef = item.getDomRef()!;\n\t\t\t} else {\n\t\t\t\titemDomRef = item;\n\t\t\t}\n\n\t\t\tconst { marginTop, marginBottom } = window.getComputedStyle(itemDomRef);\n\t\t\titemsHeight += itemDomRef.offsetHeight + parseFloat(marginTop) + parseFloat(marginBottom);\n\n\t\t\tif (itemsHeight > listHeight) {\n\t\t\t\titem.classList.add(\"ui5-sn-item-hidden\");\n\t\t\t}\n\t\t});\n\n\t\tthis._flexibleItemNavigation._init();\n\t}\n\n\t_findFocusedItem(items: Array<SideNavigationItem | SideNavigationGroup>) : SideNavigationItemBase | undefined {\n\t\treturn this._getFocusableItems(items).find(item => item.forcedTabIndex === \"0\");\n\t}\n\n\t_getSelectableItems(items: Array<SideNavigationItem | SideNavigationGroup>) : Array<SideNavigationSelectableItemBase> {\n\t\treturn items.reduce((result, item) => {\n\t\t\treturn result.concat(item.selectableItems);\n\t\t}, new Array<SideNavigationSelectableItemBase>());\n\t}\n\n\t_getFocusableItems(items: Array<SideNavigationItem | SideNavigationGroup>) : Array<SideNavigationItemBase> {\n\t\treturn items.reduce((result, item) => {\n\t\t\treturn result.concat(item.focusableItems);\n\t\t}, new Array<SideNavigationItemBase>());\n\t}\n\n\t_getAllItems(items: Array<SideNavigationItem | SideNavigationGroup>) : Array<SideNavigationItemBase> {\n\t\treturn items.reduce((result, item) => {\n\t\t\treturn result.concat(item.allItems);\n\t\t}, new Array<SideNavigationItemBase>());\n\t}\n\n\t_findSelectedItem(items: Array<SideNavigationItem | SideNavigationGroup>) : SideNavigationSelectableItemBase | undefined {\n\t\treturn this._getSelectableItems(items).find(item => item._selected);\n\t}\n\n\tget overflowItems() : Array<SideNavigationItem> {\n\t\treturn (this.items as Array<SideNavigationItem | SideNavigationGroup>).reduce((result, item) => {\n\t\t\treturn result.concat(item.overflowItems);\n\t\t}, new Array<SideNavigationItem>());\n\t}\n\n\t_handleItemClick(e: KeyboardEvent | MouseEvent, item: SideNavigationSelectableItemBase) {\n\t\tif (item.selected && !this.collapsed) {\n\t\t\titem.fireDecoratorEvent(\"click\");\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.collapsed && 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\titem.fireDecoratorEvent(\"click\");\n\n\t\t\tif (!item.selected) {\n\t\t\t\tthis._selectItem(item);\n\t\t\t}\n\t\t}\n\t}\n\n\t_handleOverflowClick() {\n\t\tthis._isOverflow = true;\n\t\tthis._menuPopoverItems = this._getOverflowItems();\n\n\t\tthis.openOverflowMenu(this._overflowItem!.getFocusDomRef() as HTMLElement);\n\t}\n\n\t_getOverflowItems(): Array<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.hasAttribute(\"ui5-side-navigation-item\") && item.classList.contains(overflowClass)) {\n\t\t\t\t result.push(item);\n\t\t\t}\n\t\t});\n\n\t\treturn result;\n\t}\n\n\t_selectItem(item: SideNavigationSelectableItemBase) {\n\t\tif (item.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this.fireDecoratorEvent(\"selection-change\", { item })) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet items = this._getSelectableItems(this.items as Array<SideNavigationItem | SideNavigationGroup>);\n\t\titems = items.concat(this._getSelectableItems(this.fixedItems as Array<SideNavigationItem | SideNavigationGroup>));\n\n\t\titems.forEach(current => {\n\t\t\tcurrent.selected = false;\n\t\t});\n\n\t\titem.selected = true;\n\t}\n\n\tget _overflowItem() {\n\t\tconst overflowItem = this.shadowRoot!.querySelector<SideNavigationItem>(\".ui5-sn-item-overflow\");\n\t\tif (overflowItem) {\n\t\t\toverflowItem.sideNavigation = this;\n\t\t}\n\n\t\treturn overflowItem;\n\t}\n\n\tget isOverflow() {\n\t\treturn this._isOverflow;\n\t}\n\n\t_onkeydownOverflow(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis._handleOverflowClick();\n\t\t}\n\t}\n\n\t_onkeyupOverflow(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis._handleOverflowClick();\n\t\t}\n\t}\n\n\tcaptureRef(ref: HTMLElement & { associatedItem?: UI5Element} | null) {\n\t\tif (ref) {\n\t\t\tref.associatedItem = this;\n\t\t}\n\t}\n}\n\nSideNavigation.define();\n\nexport default SideNavigation;\n\nexport type {\n\tSideNavigationSelectionChangeEventDetail,\n};\n"]}
1
+ {"version":3,"file":"SideNavigation.js","sourceRoot":"","sources":["../src/SideNavigation.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport jsxRender from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport ResponsivePopover from \"@ui5/webcomponents/dist/ResponsivePopover.js\";\nimport NavigationMenu from \"@ui5/webcomponents/dist/NavigationMenu.js\";\nimport NavigationMenuItem from \"@ui5/webcomponents/dist/NavigationMenuItem.js\";\nimport type { MenuItemClickEventDetail } from \"@ui5/webcomponents/dist/Menu.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.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport ItemNavigation from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport type { ITabbable } from \"@ui5/webcomponents-base/dist/delegate/ItemNavigation.js\";\nimport {\n\tisPhone,\n\tisTablet,\n\tisCombi,\n} from \"@ui5/webcomponents-base/dist/Device.js\";\nimport {\n\tisSpace,\n\tisEnter,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport NavigationMode from \"@ui5/webcomponents-base/dist/types/NavigationMode.js\";\nimport type SideNavigationItemBase from \"./SideNavigationItemBase.js\";\nimport { isInstanceOfSideNavigationSelectableItemBase } from \"./SideNavigationSelectableItemBase.js\";\nimport { isInstanceOfSideNavigationItemBase } from \"./SideNavigationItemBase.js\";\nimport type SideNavigationSelectableItemBase from \"./SideNavigationSelectableItemBase.js\";\nimport SideNavigationItem, { isInstanceOfSideNavigationItem } from \"./SideNavigationItem.js\";\nimport SideNavigationSubItem from \"./SideNavigationSubItem.js\";\nimport 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} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport SideNavigationCss from \"./generated/themes/SideNavigation.css.js\";\nimport SideNavigationPopoverCss from \"./generated/themes/SideNavigationPopover.css.js\";\n\nconst PAGE_UP_DOWN_SIZE = 10;\n\ntype SideNavigationPopoverContents = {\n\titem: SideNavigationItem,\n\tsubItems: Array<SideNavigationSubItem>,\n};\n\ntype SideNavigationSelectionChangeEventDetail = {\n\titem: SideNavigationItemBase,\n};\n\ntype PopupSideNavigationItem = SideNavigationItem & { associatedItem: SideNavigationSelectableItemBase };\n\n// used for the inner side navigation used in the SideNavigationPopoverTemplate\ntype NavigationMenuClickEventDetail = MenuItemClickEventDetail & {\n\titem: Pick<MenuItemClickEventDetail, \"item\"> & {\n\t\tassociatedItem: SideNavigationSelectableItemBase,\n\t}\n};\n\n/**\n * @class\n *\n * ### Overview\n *\n * The `SideNavigation` is used as a standard menu in applications.\n * It consists of three containers: header (top-aligned), main navigation section (top-aligned) and the secondary section (bottom-aligned).\n *\n * - The header is meant for displaying user related information - profile data, avatar, etc.\n * - The main navigation section is related to the user’s current work context\n * - The secondary section is mostly used to link additional information that may be of interest (legal information, developer communities, external help, contact information and so on).\n *\n * ### Usage\n *\n * Use the available `ui5-side-navigation-group`, `ui5-side-navigation-item`\n * and `ui5-side-navigation-sub-item` components to build your menu.\n * The items can consist of text only or an icon with text. The use or non-use of icons must be consistent for all items on one level.\n * You must not combine entries with and without icons on the same level. We strongly recommend that you do not use icons on the second level.\n *\n * The `ui5-side-navigation` component is intended for use within an `ui5-navigation-layout` component.\n * While it can function independently, it is recommended to use it with\n * the `ui5-navigation-layout` for optimal user experience.\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\tdependencies: [\n\t\tResponsivePopover,\n\t\tSideNavigationGroup,\n\t\tSideNavigationItem,\n\t\tSideNavigationSubItem,\n\t\tNavigationMenu,\n\t\tNavigationMenuItem,\n\t],\n})\n/**\n * Fired when the selection has changed via user interaction\n *\n * @param {SideNavigationSelectableItemBase} item the clicked item.\n * @public\n */\n@event(\"selection-change\", {\n\tbubbles: true,\n\tcancelable: true,\n})\nclass SideNavigation extends UI5Element {\n\teventDetails!: {\n\t\t\"selection-change\": SideNavigationSelectionChangeEventDetail\n\t}\n\n\t/**\n\t * Defines whether the `ui5-side-navigation` is expanded or collapsed.\n\t *\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tcollapsed = false;\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!: Array<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!: Array<SideNavigationItemBase>;\n\n\t/**\n\t * Defines the header of the `ui5-side-navigation`.\n\t *\n\t * **Note:** The header is displayed when the component is expanded - the property `collapsed` is false;\n\t *\n\t * @public\n\t * @since 1.0.0-rc.11\n\t */\n\t@slot()\n\theader!: Array<HTMLElement>;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Object })\n\t_popoverContents!: SideNavigationPopoverContents;\n\n\t@property({ type: Boolean })\n\tinPopover= 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/**\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tisTouchDevice = false;\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\n\tonBeforeRendering() {\n\t\tsuper.onBeforeRendering();\n\n\t\tthis._getAllItems(this.items as Array<SideNavigationItem | SideNavigationGroup>)\n\t\t\t.concat(this._getAllItems(this.fixedItems as Array<SideNavigationItem | SideNavigationGroup>))\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});\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 as Array<SideNavigationItem | SideNavigationGroup>);\n\t\tif (selectedItem) {\n\t\t\tselectedItem.focus();\n\t\t} else {\n\t\t\ttree.items[0]?.focus();\n\t\t}\n\t}\n\n\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\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\tget accSideNavigationPopoverHiddenText() {\n\t\treturn SideNavigation.i18nBundle.getText(SIDE_NAVIGATION_POPOVER_HIDDEN_TEXT);\n\t}\n\n\tget ariaRoleDescNavigationList() {\n\t\tlet key = SIDE_NAVIGATION_LIST_ARIA_ROLE_DESC;\n\t\tif (this.collapsed) {\n\t\t\tkey = SIDE_NAVIGATION_COLLAPSED_LIST_ARIA_ROLE_DESC;\n\t\t}\n\n\t\treturn SideNavigation.i18nBundle.getText(key);\n\t}\n\n\tget overflowAccessibleName() {\n\t\treturn SideNavigation.i18nBundle.getText(SIDE_NAVIGATION_OVERFLOW_ACCESSIBLE_NAME);\n\t}\n\n\thandlePopupItemClick(e: KeyboardEvent | PointerEvent) {\n\t\tconst associatedItem = (e.target as PopupSideNavigationItem).associatedItem;\n\n\t\te.stopPropagation();\n\n\t\tassociatedItem.fireEvent(\"click\");\n\t\tif (associatedItem.selected) {\n\t\t\tthis.closePicker();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._selectItem(associatedItem);\n\t\tthis.closePicker();\n\n\t\tthis._popoverContents.item?.getDomRef()!.classList.add(\"ui5-sn-item-no-hover-effect\");\n\t}\n\n\thandleOverflowItemClick(e: CustomEvent<NavigationMenuClickEventDetail>) {\n\t\tconst associatedItem = e.detail?.item.associatedItem;\n\n\t\tassociatedItem.fireEvent(\"click\");\n\t\tif (associatedItem.selected) {\n\t\t\tthis.closeMenu();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._selectItem(associatedItem);\n\n\t\tthis.closeMenu();\n\n\t\t// When subitem is selected in collapsed mode parent element should be focused\n\t\tif (associatedItem.nodeName.toLowerCase() === \"ui5-side-navigation-sub-item\") {\n\t\t\tconst parent = associatedItem.parentElement as SideNavigationItem;\n\t\t\tthis.focusItem(parent);\n\t\t\tparent?.focus();\n\t\t} else {\n\t\t\tthis.focusItem(associatedItem);\n\t\t\tassociatedItem?.focus();\n\t\t}\n\t}\n\n\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() {\n\t\tconst menu = this.getOverflowPopover();\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 as Array<SideNavigationItem | SideNavigationGroup>);\n\t}\n\n\tgetEnabledFlexibleItems() : Array<ITabbable> {\n\t\tconst items = this.getEnabledItems(this.items as Array<SideNavigationItem | SideNavigationGroup>);\n\n\t\tif (this._overflowItem) {\n\t\t\titems.push(this._overflowItem);\n\t\t}\n\n\t\treturn items;\n\t}\n\n\tgetEnabledItems(items: Array<SideNavigationItem | SideNavigationGroup>) : Array<ITabbable> {\n\t\tconst result = new Array<ITabbable>();\n\n\t\tthis._getFocusableItems(items).forEach(item => {\n\t\t\tif (item.classList.contains(\"ui5-sn-item-hidden\")) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (!item.disabled) {\n\t\t\t\tresult.push(item);\n\t\t\t}\n\t\t});\n\n\t\treturn result;\n\t}\n\n\tfocusItem(item: SideNavigationItemBase) {\n\t\tif (item.isFixedItem) {\n\t\t\tthis._fixedItemNavigation.setCurrentItem(item);\n\t\t} else {\n\t\t\tthis._flexibleItemNavigation.setCurrentItem(item);\n\t\t}\n\t}\n\n\tonAfterRendering() {\n\t\tif (!this.getDomRef()?.matches(\":focus-within\")) {\n\t\t\tlet selectedItem = this._findSelectedItem(this.items as Array<SideNavigationItem | SideNavigationGroup>);\n\t\t\tif (selectedItem) {\n\t\t\t\tthis._flexibleItemNavigation.setCurrentItem(selectedItem);\n\t\t\t}\n\n\t\t\tselectedItem = this._findSelectedItem(this.fixedItems as Array<SideNavigationItem | SideNavigationGroup>);\n\t\t\tif (selectedItem) {\n\t\t\t\tthis._fixedItemNavigation.setCurrentItem(selectedItem);\n\t\t\t}\n\t\t}\n\n\t\tif (this.collapsed) {\n\t\t\tthis.handleResize();\n\t\t}\n\t}\n\n\tonEnterDOM() {\n\t\tResizeHandler.register(this, this._handleResizeBound);\n\n\t\tthis.isTouchDevice = isPhone() || (isTablet() && !isCombi());\n\t}\n\n\tonExitDOM() {\n\t\tResizeHandler.deregister(this, this._handleResizeBound);\n\t}\n\n\thandleResize() {\n\t\tthis._updateOverflowItems();\n\t}\n\n\t_updateOverflowItems() {\n\t\tconst domRef = this.getDomRef();\n\t\tif (!this.collapsed || !domRef) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst overflowItem = this._overflowItem!;\n\t\tconst flexibleContentDomRef : HTMLElement = domRef.querySelector(\".ui5-sn-flexible\")!;\n\t\tif (!overflowItem) {\n\t\t\treturn null;\n\t\t}\n\n\t\toverflowItem.classList.add(\"ui5-sn-item-hidden\");\n\n\t\tconst overflowItems = this.overflowItems;\n\n\t\tlet itemsHeight = overflowItems.reduce<number>((sum, itemRef) => {\n\t\t\titemRef.classList.remove(\"ui5-sn-item-hidden\");\n\t\t\treturn sum + itemRef.offsetHeight;\n\t\t}, 0);\n\n\t\tconst { paddingTop, paddingBottom } = window.getComputedStyle(flexibleContentDomRef);\n\t\tconst listHeight = flexibleContentDomRef?.offsetHeight - parseInt(paddingTop) - parseInt(paddingBottom);\n\n\t\tif (itemsHeight <= listHeight) {\n\t\t\treturn;\n\t\t}\n\n\t\toverflowItem.classList.remove(\"ui5-sn-item-hidden\");\n\n\t\titemsHeight = overflowItem.offsetHeight;\n\n\t\tconst selectedItem = overflowItems.filter(isInstanceOfSideNavigationSelectableItemBase).find(item => item._selected);\n\n\t\tif (selectedItem) {\n\t\t\tconst selectedItemDomRef = selectedItem.getDomRef();\n\t\t\tconst { marginTop, marginBottom } = window.getComputedStyle(selectedItemDomRef!);\n\n\t\t\titemsHeight += selectedItemDomRef!.offsetHeight + parseFloat(marginTop) + parseFloat(marginBottom);\n\t\t}\n\n\t\toverflowItems.forEach(item => {\n\t\t\tif (item === selectedItem) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet itemDomRef;\n\n\t\t\tif (isInstanceOfSideNavigationItemBase(item)) {\n\t\t\t\titemDomRef = item.getDomRef()!;\n\t\t\t} else {\n\t\t\t\titemDomRef = item;\n\t\t\t}\n\n\t\t\tconst { marginTop, marginBottom } = window.getComputedStyle(itemDomRef);\n\t\t\titemsHeight += itemDomRef.offsetHeight + parseFloat(marginTop) + parseFloat(marginBottom);\n\n\t\t\tif (itemsHeight > listHeight) {\n\t\t\t\titem.classList.add(\"ui5-sn-item-hidden\");\n\t\t\t}\n\t\t});\n\n\t\tthis._flexibleItemNavigation._init();\n\t}\n\n\t_findFocusedItem(items: Array<SideNavigationItem | SideNavigationGroup>) : SideNavigationItemBase | undefined {\n\t\treturn this._getFocusableItems(items).find(item => item.forcedTabIndex === \"0\");\n\t}\n\n\t_getSelectableItems(items: Array<SideNavigationItem | SideNavigationGroup>) : Array<SideNavigationSelectableItemBase> {\n\t\treturn items.reduce((result, item) => {\n\t\t\treturn result.concat(item.selectableItems);\n\t\t}, new Array<SideNavigationSelectableItemBase>());\n\t}\n\n\t_getFocusableItems(items: Array<SideNavigationItem | SideNavigationGroup>) : Array<SideNavigationItemBase> {\n\t\treturn items.reduce((result, item) => {\n\t\t\treturn result.concat(item.focusableItems);\n\t\t}, new Array<SideNavigationItemBase>());\n\t}\n\n\t_getAllItems(items: Array<SideNavigationItem | SideNavigationGroup>) : Array<SideNavigationItemBase> {\n\t\treturn items.reduce((result, item) => {\n\t\t\treturn result.concat(item.allItems);\n\t\t}, new Array<SideNavigationItemBase>());\n\t}\n\n\t_findSelectedItem(items: Array<SideNavigationItem | SideNavigationGroup>) : SideNavigationSelectableItemBase | undefined {\n\t\treturn this._getSelectableItems(items).find(item => item._selected);\n\t}\n\n\tget overflowItems() : Array<HTMLElement> {\n\t\treturn (this.items as Array<SideNavigationItem | SideNavigationGroup>).reduce((result, item) => {\n\t\t\treturn result.concat(item.overflowItems);\n\t\t}, new Array<HTMLElement>());\n\t}\n\n\t_handleItemClick(e: KeyboardEvent | MouseEvent, item: SideNavigationSelectableItemBase) {\n\t\tif (item.selected && !this.collapsed) {\n\t\t\titem.fireDecoratorEvent(\"click\");\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.collapsed && 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\titem.fireDecoratorEvent(\"click\");\n\n\t\t\tif (!item.selected) {\n\t\t\t\tthis._selectItem(item);\n\t\t\t}\n\t\t}\n\t}\n\n\t_handleOverflowClick() {\n\t\tthis._isOverflow = true;\n\t\tthis._menuPopoverItems = this._getOverflowItems();\n\n\t\tthis.openOverflowMenu(this._overflowItem!.getFocusDomRef() as HTMLElement);\n\t}\n\n\t_getOverflowItems(): Array<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 (isInstanceOfSideNavigationItem(item) && item.classList.contains(overflowClass)) {\n\t\t\t\t result.push(item);\n\t\t\t}\n\t\t});\n\n\t\treturn result;\n\t}\n\n\t_selectItem(item: SideNavigationSelectableItemBase) {\n\t\tif (item.disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this.fireDecoratorEvent(\"selection-change\", { item })) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet items = this._getSelectableItems(this.items as Array<SideNavigationItem | SideNavigationGroup>);\n\t\titems = items.concat(this._getSelectableItems(this.fixedItems as Array<SideNavigationItem | SideNavigationGroup>));\n\n\t\titems.forEach(current => {\n\t\t\tcurrent.selected = false;\n\t\t});\n\n\t\titem.selected = true;\n\t}\n\n\tget _overflowItem() {\n\t\tconst overflowItem = this.shadowRoot!.querySelector<SideNavigationItem>(\".ui5-sn-item-overflow\");\n\t\tif (overflowItem) {\n\t\t\toverflowItem.sideNavigation = this;\n\t\t}\n\n\t\treturn overflowItem;\n\t}\n\n\tget isOverflow() {\n\t\treturn this._isOverflow;\n\t}\n\n\t_onkeydownOverflow(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis._handleOverflowClick();\n\t\t}\n\t}\n\n\t_onkeyupOverflow(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis._handleOverflowClick();\n\t\t}\n\t}\n\n\tcaptureRef(ref: HTMLElement & { associatedItem?: UI5Element} | null) {\n\t\tif (ref) {\n\t\t\tref.associatedItem = this;\n\t\t}\n\t}\n}\n\nSideNavigation.define();\n\nexport default SideNavigation;\n\nexport type {\n\tSideNavigationSelectionChangeEventDetail,\n};\n"]}
@@ -35,7 +35,7 @@ declare class SideNavigationGroup extends SideNavigationItemBase {
35
35
  */
36
36
  items: Array<SideNavigationItem>;
37
37
  static i18nBundle: I18nBundle;
38
- get overflowItems(): Array<SideNavigationItem>;
38
+ get overflowItems(): Array<HTMLElement>;
39
39
  get selectableItems(): Array<SideNavigationSelectableItemBase>;
40
40
  get focusableItems(): Array<SideNavigationItemBase>;
41
41
  get allItems(): Array<SideNavigationItemBase>;
@@ -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.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport {\n\tisLeft,\n\tisRight,\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 Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport SideNavigationItemBase from \"./SideNavigationItemBase.js\";\nimport type SideNavigationSelectableItemBase from \"./SideNavigationSelectableItemBase.js\";\nimport type SideNavigationItem from \"./SideNavigationItem.js\";\nimport SideNavigationGroupTemplate from \"./SideNavigationGroupTemplate.js\";\n\nimport {\n\tSIDE_NAVIGATION_GROUP_HEADER_DESC,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport SideNavigationGroupCss from \"./generated/themes/SideNavigationGroup.css.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\tdependencies: [\n\t\tIcon,\n\t],\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\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!: Array<SideNavigationItem>;\n\n\t@i18n(\"@ui5/webcomponents-fiori\")\n\tstatic i18nBundle: I18nBundle;\n\n\tget overflowItems() : Array<SideNavigationItem> {\n\t\tconst separator1 = this.shadowRoot!.querySelector(\".ui5-sn-item-separator:first-child\") as SideNavigationItem;\n\t\tconst separator2 = this.shadowRoot!.querySelector(\".ui5-sn-item-separator:last-child\") as SideNavigationItem;\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\tif (isInstanceOfSideNavigationGroup(this.previousElementSibling)) {\n\t\t\treturn \"ui5-sn-item-group-below-group\";\n\t\t}\n\n\t\treturn \"\";\n\t}\n\n\tget accDescription() {\n\t\treturn SideNavigationGroup.i18nBundle.getText(SIDE_NAVIGATION_GROUP_HEADER_DESC);\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isLeft(e)) {\n\t\t\tthis.expanded = false;\n\t\t\treturn;\n\t\t}\n\n\t\tif (isRight(e)) {\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\tthis.expanded = !this.expanded;\n\t}\n\n\tget isSideNavigationGroup() {\n\t\treturn true;\n\t}\n}\n\nSideNavigationGroup.define();\n\nconst isInstanceOfSideNavigationGroup = (object: any): object is SideNavigationGroup => {\n\treturn \"isSideNavigationGroup\" in object;\n};\n\nexport default SideNavigationGroup;\nexport { isInstanceOfSideNavigationGroup };\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.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport {\n\tisLeft,\n\tisRight,\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 Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport SideNavigationItemBase from \"./SideNavigationItemBase.js\";\nimport type SideNavigationSelectableItemBase from \"./SideNavigationSelectableItemBase.js\";\nimport type SideNavigationItem from \"./SideNavigationItem.js\";\nimport SideNavigationGroupTemplate from \"./SideNavigationGroupTemplate.js\";\n\nimport {\n\tSIDE_NAVIGATION_GROUP_HEADER_DESC,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport SideNavigationGroupCss from \"./generated/themes/SideNavigationGroup.css.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\tdependencies: [\n\t\tIcon,\n\t],\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\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!: Array<SideNavigationItem>;\n\n\t@i18n(\"@ui5/webcomponents-fiori\")\n\tstatic i18nBundle: I18nBundle;\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\tif (isInstanceOfSideNavigationGroup(this.previousElementSibling)) {\n\t\t\treturn \"ui5-sn-item-group-below-group\";\n\t\t}\n\n\t\treturn \"\";\n\t}\n\n\tget accDescription() {\n\t\treturn SideNavigationGroup.i18nBundle.getText(SIDE_NAVIGATION_GROUP_HEADER_DESC);\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isLeft(e)) {\n\t\t\tthis.expanded = false;\n\t\t\treturn;\n\t\t}\n\n\t\tif (isRight(e)) {\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\tthis.expanded = !this.expanded;\n\t}\n\n\tget isSideNavigationGroup() {\n\t\treturn true;\n\t}\n}\n\nSideNavigationGroup.define();\n\nconst isInstanceOfSideNavigationGroup = (object: any): object is SideNavigationGroup => {\n\treturn \"isSideNavigationGroup\" in object;\n};\n\nexport default SideNavigationGroup;\nexport { isInstanceOfSideNavigationGroup };\n"]}
@@ -25,12 +25,16 @@ function TreeItemTemplate() {
25
25
  _jsxs("a", { class: `ui5-sn-item ui5-sn-item-level1 ${this._classes}`, role: this.ariaRole, "data-sap-focus-ref": true, onKeyDown: this._onkeydown, onKeyUp: this._onkeyup, onClick: this._onclick, onFocusIn: this._onfocusin, tabIndex: this.effectiveTabIndex !== undefined ? parseInt(this.effectiveTabIndex) : undefined, "aria-expanded": this._expanded, "aria-current": this._ariaCurrent, "aria-selected": this.selected, title: this._tooltip, "aria-owns": this._groupId, href: this._href, target: this._target, children: [this.icon &&
26
26
  _jsx(Icon, { class: "ui5-sn-item-icon", name: this.icon }), _jsx("div", { class: "ui5-sn-item-text", children: this.text }), _jsx(Icon, { class: "ui5-sn-item-selection-icon", name: circleTask }), this.isExternalLink &&
27
27
  _jsx(Icon, { class: "ui5-sn-item-external-link-icon", name: arrowRight }), !!this.items.length &&
28
- _jsx(Icon, { class: "ui5-sn-item-toggle-icon", name: this.expanded ? navDownArrow : navRightArrow, "onui5-click": this._onToggleClick })] })
28
+ _jsx(Icon, { class: "ui5-sn-item-toggle-icon", name: this.expanded ? navDownArrow : navRightArrow,
29
+ // @ts-expect-error
30
+ onClick: this._onToggleClick })] })
29
31
  :
30
32
  _jsxs("div", { class: `ui5-sn-item ui5-sn-item-level1 ${this._classes}`, role: this.ariaRole, "data-sap-focus-ref": true, onKeyDown: this._onkeydown, onKeyUp: this._onkeyup, onClick: this._onclick, onFocusIn: this._onfocusin, tabIndex: this.effectiveTabIndex !== undefined ? parseInt(this.effectiveTabIndex) : undefined, "aria-expanded": this._expanded, "aria-current": this._ariaCurrent, "aria-selected": this.selected, title: this._tooltip, "aria-owns": this._groupId, children: [this.icon &&
31
33
  _jsx(Icon, { class: "ui5-sn-item-icon", name: this.icon }), _jsx("div", { class: "ui5-sn-item-text", children: this.text }), _jsx(Icon, { class: "ui5-sn-item-selection-icon", name: circleTask }), this.isExternalLink &&
32
34
  _jsx(Icon, { class: "ui5-sn-item-external-link-icon", name: arrowRight }), !!this.items.length &&
33
- _jsx(Icon, { class: "ui5-sn-item-toggle-icon", name: this.expanded ? navDownArrow : navRightArrow, "onui5-click": this._onToggleClick })] }), !!this.items.length &&
35
+ _jsx(Icon, { class: "ui5-sn-item-toggle-icon", name: this.expanded ? navDownArrow : navRightArrow,
36
+ // @ts-expect-error
37
+ onClick: this._onToggleClick })] }), !!this.items.length &&
34
38
  _jsx("ul", { id: this._groupId, class: "ui5-sn-item-ul", role: "group", children: _jsx("slot", {}) })] }));
35
39
  }
36
40
  //# sourceMappingURL=SideNavigationItemTemplate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SideNavigationItemTemplate.js","sourceRoot":"","sources":["../src/SideNavigationItemTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport navRightArrow from \"@ui5/webcomponents-icons/dist/navigation-right-arrow.js\";\nimport navDownArrow from \"@ui5/webcomponents-icons/dist/navigation-down-arrow.js\";\nimport circleTask from \"@ui5/webcomponents-icons/dist/circle-task-2.js\";\nimport arrowRight from \"@ui5/webcomponents-icons/dist/arrow-right.js\";\nimport type SideNavigationItem from \"./SideNavigationItem.js\";\n\nexport default function SideNavigationItemTemplate(this: SideNavigationItem) {\n\tif (this.sideNavCollapsed) {\n\t\treturn MenuItemTemplate.call(this);\n\t}\n\treturn TreeItemTemplate.call(this);\n}\n\nfunction MenuItemTemplate(this: SideNavigationItem) {\n\treturn (<>\n\t\t{this._href ?\n\t\t\t<a id={this._id}\n\t\t\t\tclass={`ui5-sn-item ui5-sn-item-level1 ${this._classes}`}\n\t\t\t\trole={this.ariaRole}\n\t\t\t\tdata-sap-focus-ref\n\t\t\t\tonKeyDown={this._onkeydown}\n\t\t\t\tonKeyUp={this._onkeyup}\n\t\t\t\tonClick={this._onclick}\n\t\t\t\tonFocusIn={this._onfocusin}\n\t\t\t\tonFocusOut={this._onfocusout}\n\t\t\t\tonMouseEnter={this._onmouseenter}\n\t\t\t\tonMouseLeave={this._onmouseleave}\n\t\t\t\ttabIndex={this.effectiveTabIndex !== undefined ? parseInt(this.effectiveTabIndex) : undefined}\n\t\t\t\taria-haspopup={this._ariaHasPopup}\n\t\t\t\taria-checked={this._ariaChecked}\n\t\t\t\ttitle={this._tooltip}\n\t\t\t\thref={this._href}\n\t\t\t\ttarget={this._target}\n\t\t\t>\n\t\t\t\t<Icon class=\"ui5-sn-item-icon\" name={this.icon}/>\n\t\t\t\t<div class=\"ui5-sn-item-text\">{this.text}</div>\n\t\t\t\t{!!this.items.length &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-toggle-icon\"\n\t\t\t\t\t\tname={navRightArrow}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\t{this.isExternalLink &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-external-link-icon\"\n\t\t\t\t\t\tname={arrowRight}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t</a>\n\t\t\t:\n\t\t\t<div id={this._id}\n\t\t\t\tclass={`ui5-sn-item ui5-sn-item-level1 ${this._classes}`}\n\t\t\t\trole={this.ariaRole}\n\t\t\t\tdata-sap-focus-ref\n\t\t\t\tonKeyDown={this._onkeydown}\n\t\t\t\tonKeyUp={this._onkeyup}\n\t\t\t\tonClick={this._onclick}\n\t\t\t\tonFocusIn={this._onfocusin}\n\t\t\t\tonFocusOut={this._onfocusout}\n\t\t\t\tonMouseEnter={this._onmouseenter}\n\t\t\t\tonMouseLeave={this._onmouseleave}\n\t\t\t\ttabIndex={this.effectiveTabIndex !== undefined ? parseInt(this.effectiveTabIndex) : undefined}\n\t\t\t\taria-haspopup={this._ariaHasPopup}\n\t\t\t\taria-checked={this._ariaChecked}\n\t\t\t\ttitle={this._tooltip}\n\t\t\t>\n\t\t\t\t<Icon class=\"ui5-sn-item-icon\" name={this.icon}/>\n\t\t\t\t<div class=\"ui5-sn-item-text\">{this.text}</div>\n\t\t\t\t{!!this.items.length &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-toggle-icon\"\n\t\t\t\t\t\tname={navRightArrow}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\t{this.isExternalLink &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-external-link-icon\"\n\t\t\t\t\t\tname={arrowRight}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t</div>\n\t\t}\n\t</>);\n}\n\nfunction TreeItemTemplate(this: SideNavigationItem) {\n\treturn (\n\t\t<li id={this._id} class=\"ui5-sn-list-li\" role=\"none\">\n\t\t\t{this._href ?\n\t\t\t\t<a class={`ui5-sn-item ui5-sn-item-level1 ${this._classes}`}\n\t\t\t\t\trole={this.ariaRole}\n\t\t\t\t\tdata-sap-focus-ref\n\t\t\t\t\tonKeyDown={this._onkeydown}\n\t\t\t\t\tonKeyUp={this._onkeyup}\n\t\t\t\t\tonClick={this._onclick}\n\t\t\t\t\tonFocusIn={this._onfocusin}\n\t\t\t\t\ttabIndex={this.effectiveTabIndex !== undefined ? parseInt(this.effectiveTabIndex) : undefined}\n\t\t\t\t\taria-expanded={this._expanded}\n\t\t\t\t\taria-current={this._ariaCurrent}\n\t\t\t\t\taria-selected={this.selected}\n\t\t\t\t\ttitle={this._tooltip}\n\t\t\t\t\taria-owns={this._groupId}\n\t\t\t\t\thref={this._href}\n\t\t\t\t\ttarget={this._target}\n\t\t\t\t>\n\t\t\t\t\t{this.icon &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-icon\" name={this.icon}/>\n\t\t\t\t\t}\n\t\t\t\t\t<div class=\"ui5-sn-item-text\">{this.text}</div>\n\t\t\t\t\t<Icon class=\"ui5-sn-item-selection-icon\"\n\t\t\t\t\t\tname={circleTask}\n\t\t\t\t\t/>\n\t\t\t\t\t{this.isExternalLink &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-external-link-icon\"\n\t\t\t\t\t\tname={arrowRight}\n\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t\t{!!this.items.length &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-toggle-icon\"\n\t\t\t\t\t\tname={this.expanded ? navDownArrow : navRightArrow}\n\t\t\t\t\t\tonui5-click={this._onToggleClick}\n\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t</a>\n\t\t\t\t:\n\t\t\t\t<div class={`ui5-sn-item ui5-sn-item-level1 ${this._classes}`}\n\t\t\t\t\trole={this.ariaRole}\n\t\t\t\t\tdata-sap-focus-ref\n\t\t\t\t\tonKeyDown={this._onkeydown}\n\t\t\t\t\tonKeyUp={this._onkeyup}\n\t\t\t\t\tonClick={this._onclick}\n\t\t\t\t\tonFocusIn={this._onfocusin}\n\t\t\t\t\ttabIndex={this.effectiveTabIndex !== undefined ? parseInt(this.effectiveTabIndex) : undefined}\n\t\t\t\t\taria-expanded={this._expanded}\n\t\t\t\t\taria-current={this._ariaCurrent}\n\t\t\t\t\taria-selected={this.selected}\n\t\t\t\t\ttitle={this._tooltip}\n\t\t\t\t\taria-owns={this._groupId}\n\t\t\t\t>\n\t\t\t\t\t{this.icon &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-icon\" name={this.icon}/>\n\t\t\t\t\t}\n\t\t\t\t\t<div class=\"ui5-sn-item-text\">{this.text}</div>\n\t\t\t\t\t<Icon class=\"ui5-sn-item-selection-icon\"\n\t\t\t\t\t\tname={circleTask}\n\t\t\t\t\t/>\n\t\t\t\t\t{this.isExternalLink &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-external-link-icon\"\n\t\t\t\t\t\tname={arrowRight}\n\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t\t{!!this.items.length &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-toggle-icon\"\n\t\t\t\t\t\tname={this.expanded ? navDownArrow : navRightArrow}\n\t\t\t\t\t\tonui5-click={this._onToggleClick}\n\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t</div>\n\t\t\t}\n\t\t\t{!!this.items.length &&\n\t\t\t<ul id={this._groupId}\n\t\t\t\tclass=\"ui5-sn-item-ul\"\n\t\t\t\trole=\"group\"\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</ul>\n\t\t\t}\n\t\t</li>\n\t);\n}\n"]}
1
+ {"version":3,"file":"SideNavigationItemTemplate.js","sourceRoot":"","sources":["../src/SideNavigationItemTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport navRightArrow from \"@ui5/webcomponents-icons/dist/navigation-right-arrow.js\";\nimport navDownArrow from \"@ui5/webcomponents-icons/dist/navigation-down-arrow.js\";\nimport circleTask from \"@ui5/webcomponents-icons/dist/circle-task-2.js\";\nimport arrowRight from \"@ui5/webcomponents-icons/dist/arrow-right.js\";\nimport type SideNavigationItem from \"./SideNavigationItem.js\";\n\nexport default function SideNavigationItemTemplate(this: SideNavigationItem) {\n\tif (this.sideNavCollapsed) {\n\t\treturn MenuItemTemplate.call(this);\n\t}\n\treturn TreeItemTemplate.call(this);\n}\n\nfunction MenuItemTemplate(this: SideNavigationItem) {\n\treturn (<>\n\t\t{this._href ?\n\t\t\t<a id={this._id}\n\t\t\t\tclass={`ui5-sn-item ui5-sn-item-level1 ${this._classes}`}\n\t\t\t\trole={this.ariaRole}\n\t\t\t\tdata-sap-focus-ref\n\t\t\t\tonKeyDown={this._onkeydown}\n\t\t\t\tonKeyUp={this._onkeyup}\n\t\t\t\tonClick={this._onclick}\n\t\t\t\tonFocusIn={this._onfocusin}\n\t\t\t\tonFocusOut={this._onfocusout}\n\t\t\t\tonMouseEnter={this._onmouseenter}\n\t\t\t\tonMouseLeave={this._onmouseleave}\n\t\t\t\ttabIndex={this.effectiveTabIndex !== undefined ? parseInt(this.effectiveTabIndex) : undefined}\n\t\t\t\taria-haspopup={this._ariaHasPopup}\n\t\t\t\taria-checked={this._ariaChecked}\n\t\t\t\ttitle={this._tooltip}\n\t\t\t\thref={this._href}\n\t\t\t\ttarget={this._target}\n\t\t\t>\n\t\t\t\t<Icon class=\"ui5-sn-item-icon\" name={this.icon}/>\n\t\t\t\t<div class=\"ui5-sn-item-text\">{this.text}</div>\n\t\t\t\t{!!this.items.length &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-toggle-icon\"\n\t\t\t\t\t\tname={navRightArrow}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\t{this.isExternalLink &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-external-link-icon\"\n\t\t\t\t\t\tname={arrowRight}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t</a>\n\t\t\t:\n\t\t\t<div id={this._id}\n\t\t\t\tclass={`ui5-sn-item ui5-sn-item-level1 ${this._classes}`}\n\t\t\t\trole={this.ariaRole}\n\t\t\t\tdata-sap-focus-ref\n\t\t\t\tonKeyDown={this._onkeydown}\n\t\t\t\tonKeyUp={this._onkeyup}\n\t\t\t\tonClick={this._onclick}\n\t\t\t\tonFocusIn={this._onfocusin}\n\t\t\t\tonFocusOut={this._onfocusout}\n\t\t\t\tonMouseEnter={this._onmouseenter}\n\t\t\t\tonMouseLeave={this._onmouseleave}\n\t\t\t\ttabIndex={this.effectiveTabIndex !== undefined ? parseInt(this.effectiveTabIndex) : undefined}\n\t\t\t\taria-haspopup={this._ariaHasPopup}\n\t\t\t\taria-checked={this._ariaChecked}\n\t\t\t\ttitle={this._tooltip}\n\t\t\t>\n\t\t\t\t<Icon class=\"ui5-sn-item-icon\" name={this.icon}/>\n\t\t\t\t<div class=\"ui5-sn-item-text\">{this.text}</div>\n\t\t\t\t{!!this.items.length &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-toggle-icon\"\n\t\t\t\t\t\tname={navRightArrow}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\t{this.isExternalLink &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-external-link-icon\"\n\t\t\t\t\t\tname={arrowRight}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t</div>\n\t\t}\n\t</>);\n}\n\nfunction TreeItemTemplate(this: SideNavigationItem) {\n\treturn (\n\t\t<li id={this._id} class=\"ui5-sn-list-li\" role=\"none\">\n\t\t\t{this._href ?\n\t\t\t\t<a class={`ui5-sn-item ui5-sn-item-level1 ${this._classes}`}\n\t\t\t\t\trole={this.ariaRole}\n\t\t\t\t\tdata-sap-focus-ref\n\t\t\t\t\tonKeyDown={this._onkeydown}\n\t\t\t\t\tonKeyUp={this._onkeyup}\n\t\t\t\t\tonClick={this._onclick}\n\t\t\t\t\tonFocusIn={this._onfocusin}\n\t\t\t\t\ttabIndex={this.effectiveTabIndex !== undefined ? parseInt(this.effectiveTabIndex) : undefined}\n\t\t\t\t\taria-expanded={this._expanded}\n\t\t\t\t\taria-current={this._ariaCurrent}\n\t\t\t\t\taria-selected={this.selected}\n\t\t\t\t\ttitle={this._tooltip}\n\t\t\t\t\taria-owns={this._groupId}\n\t\t\t\t\thref={this._href}\n\t\t\t\t\ttarget={this._target}\n\t\t\t\t>\n\t\t\t\t\t{this.icon &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-icon\" name={this.icon}/>\n\t\t\t\t\t}\n\t\t\t\t\t<div class=\"ui5-sn-item-text\">{this.text}</div>\n\t\t\t\t\t<Icon class=\"ui5-sn-item-selection-icon\"\n\t\t\t\t\t\tname={circleTask}\n\t\t\t\t\t/>\n\t\t\t\t\t{this.isExternalLink &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-external-link-icon\"\n\t\t\t\t\t\tname={arrowRight}\n\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t\t{!!this.items.length &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-toggle-icon\"\n\t\t\t\t\t\tname={this.expanded ? navDownArrow : navRightArrow}\n\t\t\t\t\t\t// @ts-expect-error\n\t\t\t\t\t\tonClick={this._onToggleClick}\n\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t</a>\n\t\t\t\t:\n\t\t\t\t<div class={`ui5-sn-item ui5-sn-item-level1 ${this._classes}`}\n\t\t\t\t\trole={this.ariaRole}\n\t\t\t\t\tdata-sap-focus-ref\n\t\t\t\t\tonKeyDown={this._onkeydown}\n\t\t\t\t\tonKeyUp={this._onkeyup}\n\t\t\t\t\tonClick={this._onclick}\n\t\t\t\t\tonFocusIn={this._onfocusin}\n\t\t\t\t\ttabIndex={this.effectiveTabIndex !== undefined ? parseInt(this.effectiveTabIndex) : undefined}\n\t\t\t\t\taria-expanded={this._expanded}\n\t\t\t\t\taria-current={this._ariaCurrent}\n\t\t\t\t\taria-selected={this.selected}\n\t\t\t\t\ttitle={this._tooltip}\n\t\t\t\t\taria-owns={this._groupId}\n\t\t\t\t>\n\t\t\t\t\t{this.icon &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-icon\" name={this.icon}/>\n\t\t\t\t\t}\n\t\t\t\t\t<div class=\"ui5-sn-item-text\">{this.text}</div>\n\t\t\t\t\t<Icon class=\"ui5-sn-item-selection-icon\"\n\t\t\t\t\t\tname={circleTask}\n\t\t\t\t\t/>\n\t\t\t\t\t{this.isExternalLink &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-external-link-icon\"\n\t\t\t\t\t\tname={arrowRight}\n\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t\t{!!this.items.length &&\n\t\t\t\t\t<Icon class=\"ui5-sn-item-toggle-icon\"\n\t\t\t\t\t\tname={this.expanded ? navDownArrow : navRightArrow}\n\t\t\t\t\t\t// @ts-expect-error\n\t\t\t\t\t\tonClick={this._onToggleClick}\n\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t</div>\n\t\t\t}\n\t\t\t{!!this.items.length &&\n\t\t\t<ul id={this._groupId}\n\t\t\t\tclass=\"ui5-sn-item-ul\"\n\t\t\t\trole=\"group\"\n\t\t\t>\n\t\t\t\t<slot></slot>\n\t\t\t</ul>\n\t\t\t}\n\t\t</li>\n\t);\n}\n"]}
@@ -8,10 +8,6 @@ import SideNavigationSubItem from "./SideNavigationSubItem.js";
8
8
  export default function SideNavigationTemplate() {
9
9
  return (_jsxs(_Fragment, { children: [_jsx(NavigationMenu, { id: `${this._id}-side-navigation-overflow-menu`, onBeforeOpen: this._onBeforeMenuOpen, onBeforeClose: this._onBeforeMenuClose, "onui5-item-click": this.handleOverflowItemClick, class: "ui5-side-navigation-popover ui5-side-navigation-overflow-menu", children: this._menuPopoverItems.map(item => _jsx(NavigationMenuItem, { text: item.text, icon: item.icon, disabled: item.disabled,
10
10
  // expanded={true}
11
- href: item.href, target: item.target, title: item.title, ref: this.captureRef.bind(item), children: item.items.map(subItem => _jsx(NavigationMenuItem, { text: subItem.text, icon: subItem.icon, disabled: subItem.disabled, ref: this.captureRef.bind(subItem),
12
- // expanded={true}
13
- href: subItem.href, target: subItem.target, title: subItem.title })) })) }), _jsx(ResponsivePopover, { verticalAlign: "Top", class: "ui5-side-navigation-popover", accessibleNameRef: `${this._id}-sideNavigationPopoverText`, onOpen: this._onAfterPopoverOpen, onBeforeOpen: this._onBeforePopoverOpen, onBeforeClose: this._onBeforePopoverClose, children: this._popoverContents && _jsxs(_Fragment, { children: [_jsx("span", { id: `${this._id}-sideNavigationPopoverText`, class: "ui5-hidden-text", children: this.accSideNavigationPopoverHiddenText }), _jsx(SideNavigation, { inPopover: true, class: "ui5-side-navigation-in-popover", children: _jsx(SideNavigationItem, { text: this._popoverContents.item.text, tooltip: this._popoverContents.item._tooltip, href: this._popoverContents.item._href, target: this._popoverContents.item._target, disabled: this._popoverContents.item.disabled,
14
- // expanded={true}
15
- _fixed: true, selected: this._popoverContents.item.selected, "onui5-click": this.handlePopupItemClick, ref: this.captureRef.bind(this._popoverContents.item), children: this._popoverContents.subItems.map(item => _jsx(SideNavigationSubItem, { text: item.text, tooltip: item._tooltip, href: item._href, target: item._target, disabled: item.disabled, selected: item.selected, "onui5-click": this.handlePopupItemClick, ref: this.captureRef.bind(item) })) }) })] }) })] }));
11
+ href: item.href, target: item.target, title: item.title, ref: this.captureRef.bind(item), children: item.items.map(subItem => _jsx(NavigationMenuItem, { text: subItem.text, icon: subItem.icon, disabled: subItem.disabled, ref: this.captureRef.bind(subItem), href: subItem.href, target: subItem.target, title: subItem.title })) })) }), _jsx(ResponsivePopover, { verticalAlign: "Top", class: "ui5-side-navigation-popover", accessibleNameRef: `${this._id}-sideNavigationPopoverText`, onOpen: this._onAfterPopoverOpen, onBeforeOpen: this._onBeforePopoverOpen, onBeforeClose: this._onBeforePopoverClose, children: this._popoverContents && _jsxs(_Fragment, { children: [_jsx("span", { id: `${this._id}-sideNavigationPopoverText`, class: "ui5-hidden-text", children: this.accSideNavigationPopoverHiddenText }), _jsx(SideNavigation, { inPopover: true, class: "ui5-side-navigation-in-popover", children: _jsx(SideNavigationItem, { text: this._popoverContents.item.text, tooltip: this._popoverContents.item._tooltip, href: this._popoverContents.item._href, target: this._popoverContents.item._target, disabled: this._popoverContents.item.disabled, expanded: true, _fixed: true, selected: this._popoverContents.item.selected, "onui5-click": this.handlePopupItemClick, ref: this.captureRef.bind(this._popoverContents.item), children: this._popoverContents.subItems.map(item => _jsx(SideNavigationSubItem, { text: item.text, tooltip: item._tooltip, href: item._href, target: item._target, disabled: item.disabled, selected: item.selected, "onui5-click": this.handlePopupItemClick, ref: this.captureRef.bind(item) })) }) })] }) })] }));
16
12
  }
17
13
  //# sourceMappingURL=SideNavigationPopoverTemplate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SideNavigationPopoverTemplate.js","sourceRoot":"","sources":["../src/SideNavigationPopoverTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import NavigationMenu from \"@ui5/webcomponents/dist/NavigationMenu.js\";\nimport NavigationMenuItem from \"@ui5/webcomponents/dist/NavigationMenuItem.js\";\nimport ResponsivePopover from \"@ui5/webcomponents/dist/ResponsivePopover.js\";\nimport SideNavigation from \"./SideNavigation.js\";\nimport SideNavigationItem from \"./SideNavigationItem.js\";\nimport SideNavigationSubItem from \"./SideNavigationSubItem.js\";\n\nexport default function SideNavigationTemplate(this: SideNavigation) {\n\treturn (<>\n\t\t<NavigationMenu\n\t\t\tid={`${this._id}-side-navigation-overflow-menu`}\n\t\t\tonBeforeOpen={this._onBeforeMenuOpen}\n\t\t\tonBeforeClose={this._onBeforeMenuClose}\n\t\t\tonui5-item-click={this.handleOverflowItemClick} // TOFIX\n\t\t\tclass=\"ui5-side-navigation-popover ui5-side-navigation-overflow-menu\"\n\t\t>\n\t\t\t{this._menuPopoverItems.map(item =>\n\t\t\t\t<NavigationMenuItem\n\t\t\t\t\ttext={item.text}\n\t\t\t\t\ticon={item.icon}\n\t\t\t\t\tdisabled={item.disabled}\n\t\t\t\t\t// expanded={true}\n\t\t\t\t\thref={item.href}\n\t\t\t\t\ttarget={item.target}\n\t\t\t\t\ttitle={item.title}\n\t\t\t\t\tref={this.captureRef.bind(item)}\n\t\t\t\t>\n\t\t\t\t\t{item.items.map(subItem =>\n\t\t\t\t\t\t<NavigationMenuItem\n\t\t\t\t\t\t\ttext={subItem.text}\n\t\t\t\t\t\t\ticon={subItem.icon}\n\t\t\t\t\t\t\tdisabled={subItem.disabled}\n\t\t\t\t\t\t\tref={this.captureRef.bind(subItem)}\n\t\t\t\t\t\t\t// expanded={true}\n\t\t\t\t\t\t\thref={subItem.href}\n\t\t\t\t\t\t\ttarget={subItem.target}\n\t\t\t\t\t\t\ttitle={subItem.title}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</NavigationMenuItem>\n\t\t\t)}\n\t\t</NavigationMenu>\n\t\t<ResponsivePopover\n\t\t\tverticalAlign=\"Top\"\n\t\t\tclass=\"ui5-side-navigation-popover\"\n\t\t\taccessibleNameRef={`${this._id}-sideNavigationPopoverText`}\n\t\t\tonOpen={this._onAfterPopoverOpen}\n\t\t\tonBeforeOpen={this._onBeforePopoverOpen}\n\t\t\tonBeforeClose={this._onBeforePopoverClose}\n\t\t>\n\t\t\t{this._popoverContents && <>\n\t\t\t\t<span id={`${this._id}-sideNavigationPopoverText`}\n\t\t\t\t\tclass=\"ui5-hidden-text\"\n\t\t\t\t>{this.accSideNavigationPopoverHiddenText}</span>\n\t\t\t\t<SideNavigation\n\t\t\t\t\tinPopover={true}\n\t\t\t\t\tclass=\"ui5-side-navigation-in-popover\"\n\t\t\t\t>\n\t\t\t\t\t<SideNavigationItem\n\t\t\t\t\t\ttext={this._popoverContents.item.text}\n\t\t\t\t\t\ttooltip={this._popoverContents.item._tooltip}\n\t\t\t\t\t\thref={this._popoverContents.item._href}\n\t\t\t\t\t\ttarget={this._popoverContents.item._target}\n\t\t\t\t\t\tdisabled={this._popoverContents.item.disabled}\n\t\t\t\t\t\t// expanded={true}\n\t\t\t\t\t\t_fixed={true}\n\t\t\t\t\t\tselected={this._popoverContents.item.selected}\n\t\t\t\t\t\tonui5-click={this.handlePopupItemClick}\n\t\t\t\t\t\tref={this.captureRef.bind(this._popoverContents.item)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this._popoverContents.subItems.map(item =>\n\t\t\t\t\t\t\t<SideNavigationSubItem\n\t\t\t\t\t\t\t\ttext={item.text}\n\t\t\t\t\t\t\t\ttooltip={item._tooltip}\n\t\t\t\t\t\t\t\thref={item._href}\n\t\t\t\t\t\t\t\ttarget={item._target}\n\t\t\t\t\t\t\t\tdisabled={item.disabled}\n\t\t\t\t\t\t\t\tselected={item.selected}\n\t\t\t\t\t\t\t\tonui5-click={this.handlePopupItemClick}\n\t\t\t\t\t\t\t\tref={this.captureRef.bind(item)}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</SideNavigationItem>\n\t\t\t\t</SideNavigation>\n\t\t\t</>}\n\t\t</ResponsivePopover>\n\t</>);\n}\n"]}
1
+ {"version":3,"file":"SideNavigationPopoverTemplate.js","sourceRoot":"","sources":["../src/SideNavigationPopoverTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import NavigationMenu from \"@ui5/webcomponents/dist/NavigationMenu.js\";\nimport NavigationMenuItem from \"@ui5/webcomponents/dist/NavigationMenuItem.js\";\nimport ResponsivePopover from \"@ui5/webcomponents/dist/ResponsivePopover.js\";\nimport SideNavigation from \"./SideNavigation.js\";\nimport SideNavigationItem from \"./SideNavigationItem.js\";\nimport SideNavigationSubItem from \"./SideNavigationSubItem.js\";\n\nexport default function SideNavigationTemplate(this: SideNavigation) {\n\treturn (<>\n\t\t<NavigationMenu\n\t\t\tid={`${this._id}-side-navigation-overflow-menu`}\n\t\t\tonBeforeOpen={this._onBeforeMenuOpen}\n\t\t\tonBeforeClose={this._onBeforeMenuClose}\n\t\t\tonui5-item-click={this.handleOverflowItemClick} // TOFIX\n\t\t\tclass=\"ui5-side-navigation-popover ui5-side-navigation-overflow-menu\"\n\t\t>\n\t\t\t{this._menuPopoverItems.map(item =>\n\t\t\t\t<NavigationMenuItem\n\t\t\t\t\ttext={item.text}\n\t\t\t\t\ticon={item.icon}\n\t\t\t\t\tdisabled={item.disabled}\n\t\t\t\t\t// expanded={true}\n\t\t\t\t\thref={item.href}\n\t\t\t\t\ttarget={item.target}\n\t\t\t\t\ttitle={item.title}\n\t\t\t\t\tref={this.captureRef.bind(item)}\n\t\t\t\t>\n\t\t\t\t\t{item.items.map(subItem =>\n\t\t\t\t\t\t<NavigationMenuItem\n\t\t\t\t\t\t\ttext={subItem.text}\n\t\t\t\t\t\t\ticon={subItem.icon}\n\t\t\t\t\t\t\tdisabled={subItem.disabled}\n\t\t\t\t\t\t\tref={this.captureRef.bind(subItem)}\n\t\t\t\t\t\t\thref={subItem.href}\n\t\t\t\t\t\t\ttarget={subItem.target}\n\t\t\t\t\t\t\ttitle={subItem.title}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</NavigationMenuItem>\n\t\t\t)}\n\t\t</NavigationMenu>\n\t\t<ResponsivePopover\n\t\t\tverticalAlign=\"Top\"\n\t\t\tclass=\"ui5-side-navigation-popover\"\n\t\t\taccessibleNameRef={`${this._id}-sideNavigationPopoverText`}\n\t\t\tonOpen={this._onAfterPopoverOpen}\n\t\t\tonBeforeOpen={this._onBeforePopoverOpen}\n\t\t\tonBeforeClose={this._onBeforePopoverClose}\n\t\t>\n\t\t\t{this._popoverContents && <>\n\t\t\t\t<span id={`${this._id}-sideNavigationPopoverText`}\n\t\t\t\t\tclass=\"ui5-hidden-text\"\n\t\t\t\t>{this.accSideNavigationPopoverHiddenText}</span>\n\t\t\t\t<SideNavigation\n\t\t\t\t\tinPopover={true}\n\t\t\t\t\tclass=\"ui5-side-navigation-in-popover\"\n\t\t\t\t>\n\t\t\t\t\t<SideNavigationItem\n\t\t\t\t\t\ttext={this._popoverContents.item.text}\n\t\t\t\t\t\ttooltip={this._popoverContents.item._tooltip}\n\t\t\t\t\t\thref={this._popoverContents.item._href}\n\t\t\t\t\t\ttarget={this._popoverContents.item._target}\n\t\t\t\t\t\tdisabled={this._popoverContents.item.disabled}\n\t\t\t\t\t\texpanded={true}\n\t\t\t\t\t\t_fixed={true}\n\t\t\t\t\t\tselected={this._popoverContents.item.selected}\n\t\t\t\t\t\tonui5-click={this.handlePopupItemClick}\n\t\t\t\t\t\tref={this.captureRef.bind(this._popoverContents.item)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this._popoverContents.subItems.map(item =>\n\t\t\t\t\t\t\t<SideNavigationSubItem\n\t\t\t\t\t\t\t\ttext={item.text}\n\t\t\t\t\t\t\t\ttooltip={item._tooltip}\n\t\t\t\t\t\t\t\thref={item._href}\n\t\t\t\t\t\t\t\ttarget={item._target}\n\t\t\t\t\t\t\t\tdisabled={item.disabled}\n\t\t\t\t\t\t\t\tselected={item.selected}\n\t\t\t\t\t\t\t\tonui5-click={this.handlePopupItemClick}\n\t\t\t\t\t\t\t\tref={this.captureRef.bind(item)}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</SideNavigationItem>\n\t\t\t\t</SideNavigation>\n\t\t\t</>}\n\t\t</ResponsivePopover>\n\t</>);\n}\n"]}
@@ -73,5 +73,8 @@ declare class SideNavigationSelectableItemBase extends SideNavigationItemBase {
73
73
  _onclick(e: MouseEvent): void;
74
74
  _onfocusin(e: FocusEvent): void;
75
75
  _activate(e: KeyboardEvent | MouseEvent): void;
76
+ get isSideNavigationSelectableItemBase(): boolean;
76
77
  }
78
+ declare const isInstanceOfSideNavigationSelectableItemBase: (object: any) => object is SideNavigationSelectableItemBase;
77
79
  export default SideNavigationSelectableItemBase;
80
+ export { isInstanceOfSideNavigationSelectableItemBase, };
@@ -97,6 +97,9 @@ let SideNavigationSelectableItemBase = class SideNavigationSelectableItemBase ex
97
97
  this.sideNavigation?._handleItemClick(e, this);
98
98
  }
99
99
  }
100
+ get isSideNavigationSelectableItemBase() {
101
+ return true;
102
+ }
100
103
  };
101
104
  __decorate([
102
105
  property()
@@ -130,5 +133,9 @@ SideNavigationSelectableItemBase = __decorate([
130
133
  ,
131
134
  customElement()
132
135
  ], SideNavigationSelectableItemBase);
136
+ const isInstanceOfSideNavigationSelectableItemBase = (object) => {
137
+ return "isSideNavigationSelectableItemBase" in object;
138
+ };
133
139
  export default SideNavigationSelectableItemBase;
140
+ export { isInstanceOfSideNavigationSelectableItemBase, };
134
141
  //# sourceMappingURL=SideNavigationSelectableItemBase.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SideNavigationSelectableItemBase.js","sourceRoot":"","sources":["../src/SideNavigationSelectableItemBase.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport SideNavigationItemBase from \"./SideNavigationItemBase.js\";\n\n/**\n * Fired when the component is activated either with a\n * click/tap or by using the [Enter] or [Space] keys.\n *\n * @public\n */\n@event(\"click\", {\n\tbubbles: true,\n})\n\n/**\n * @class\n * Base class for the navigation items that support actions.\n *\n * @constructor\n * @extends SideNavigationItemBase\n * @abstract\n * @public\n * @since 1.24.0\n */\n@customElement()\nclass SideNavigationSelectableItemBase extends SideNavigationItemBase {\n\teventDetails!: SideNavigationItemBase[\"eventDetails\"] & {\n\t\t\"click\": void\n\t}\n\t/**\n\t * Defines the icon of the item.\n\t *\n\t * The SAP-icons font provides numerous options.\n\t *\n\t * See all the available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @public\n\t * @default undefined\n\t */\n\t@property()\n\ticon?: string;\n\n\t/**\n\t * Defines whether the item is selected\n\t *\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tselected = false;\n\n\t/**\n\t * Defines the link target URI. Supports standard hyperlink behavior.\n\t * If a JavaScript action should be triggered,\n\t * this should not be set, but instead an event handler\n\t * for the `click` event should be registered.\n\t *\n\t * @public\n\t * @default undefined\n\t * @since 1.19.0\n\t */\n\t@property()\n\thref?: string;\n\n\t/**\n\t * Defines the component target.\n\t *\n\t * **Notes:**\n\t *\n\t * - `_self`\n\t * - `_top`\n\t * - `_blank`\n\t * - `_parent`\n\t * - `_search`\n\t *\n\t * **This property must only be used when the `href` property is set.**\n\t *\n\t * @public\n\t * @default undefined\n\t * @since 1.19.0\n\t */\n\t@property()\n\ttarget?: string;\n\n\t/**\n\t * @private\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tisOverflow = false;\n\n\tget ariaRole() {\n\t\tif (this.sideNavCollapsed) {\n\t\t\treturn this.isOverflow ? \"menuitem\" : \"menuitemradio\";\n\t\t}\n\n\t\treturn \"treeitem\";\n\t}\n\n\tget _href() {\n\t\treturn (!this.disabled && this.href) ? this.href : undefined;\n\t}\n\n\tget _target() {\n\t\treturn (!this.disabled && this.target) ? this.target : undefined;\n\t}\n\n\tget isExternalLink() {\n\t\treturn this.href && this.target === \"_blank\";\n\t}\n\n\tget _selected() {\n\t\treturn this.selected;\n\t}\n\n\tget classesArray() {\n\t\tconst classes = [];\n\n\t\tif (this.disabled) {\n\t\t\tclasses.push(\"ui5-sn-item-disabled\");\n\t\t}\n\n\t\tif (this._selected) {\n\t\t\tclasses.push(\"ui5-sn-item-selected\");\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tget _classes() {\n\t\treturn this.classesArray.join(\" \");\n\t}\n\n\tget _ariaCurrent() {\n\t\tif (!this.selected) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn \"page\";\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis._activate(e);\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis._activate(e);\n\t\t}\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\tthis._activate(e);\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\te.stopPropagation();\n\n\t\tthis.sideNavigation?.focusItem(this);\n\t}\n\n\t_activate(e: KeyboardEvent | MouseEvent) {\n\t\te.stopPropagation();\n\n\t\tif (this.isOverflow) {\n\t\t\tthis.fireDecoratorEvent(\"click\");\n\t\t} else {\n\t\t\tthis.sideNavigation?._handleItemClick(e, this);\n\t\t}\n\t}\n}\n\nexport default SideNavigationSelectableItemBase;\n"]}
1
+ {"version":3,"file":"SideNavigationSelectableItemBase.js","sourceRoot":"","sources":["../src/SideNavigationSelectableItemBase.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport SideNavigationItemBase from \"./SideNavigationItemBase.js\";\n\n/**\n * Fired when the component is activated either with a\n * click/tap or by using the [Enter] or [Space] keys.\n *\n * @public\n */\n@event(\"click\", {\n\tbubbles: true,\n})\n\n/**\n * @class\n * Base class for the navigation items that support actions.\n *\n * @constructor\n * @extends SideNavigationItemBase\n * @abstract\n * @public\n * @since 1.24.0\n */\n@customElement()\nclass SideNavigationSelectableItemBase extends SideNavigationItemBase {\n\teventDetails!: SideNavigationItemBase[\"eventDetails\"] & {\n\t\t\"click\": void\n\t}\n\t/**\n\t * Defines the icon of the item.\n\t *\n\t * The SAP-icons font provides numerous options.\n\t *\n\t * See all the available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n\t * @public\n\t * @default undefined\n\t */\n\t@property()\n\ticon?: string;\n\n\t/**\n\t * Defines whether the item is selected\n\t *\n\t * @public\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tselected = false;\n\n\t/**\n\t * Defines the link target URI. Supports standard hyperlink behavior.\n\t * If a JavaScript action should be triggered,\n\t * this should not be set, but instead an event handler\n\t * for the `click` event should be registered.\n\t *\n\t * @public\n\t * @default undefined\n\t * @since 1.19.0\n\t */\n\t@property()\n\thref?: string;\n\n\t/**\n\t * Defines the component target.\n\t *\n\t * **Notes:**\n\t *\n\t * - `_self`\n\t * - `_top`\n\t * - `_blank`\n\t * - `_parent`\n\t * - `_search`\n\t *\n\t * **This property must only be used when the `href` property is set.**\n\t *\n\t * @public\n\t * @default undefined\n\t * @since 1.19.0\n\t */\n\t@property()\n\ttarget?: string;\n\n\t/**\n\t * @private\n\t * @default false\n\t */\n\t@property({ type: Boolean })\n\tisOverflow = false;\n\n\tget ariaRole() {\n\t\tif (this.sideNavCollapsed) {\n\t\t\treturn this.isOverflow ? \"menuitem\" : \"menuitemradio\";\n\t\t}\n\n\t\treturn \"treeitem\";\n\t}\n\n\tget _href() {\n\t\treturn (!this.disabled && this.href) ? this.href : undefined;\n\t}\n\n\tget _target() {\n\t\treturn (!this.disabled && this.target) ? this.target : undefined;\n\t}\n\n\tget isExternalLink() {\n\t\treturn this.href && this.target === \"_blank\";\n\t}\n\n\tget _selected() {\n\t\treturn this.selected;\n\t}\n\n\tget classesArray() {\n\t\tconst classes = [];\n\n\t\tif (this.disabled) {\n\t\t\tclasses.push(\"ui5-sn-item-disabled\");\n\t\t}\n\n\t\tif (this._selected) {\n\t\t\tclasses.push(\"ui5-sn-item-selected\");\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tget _classes() {\n\t\treturn this.classesArray.join(\" \");\n\t}\n\n\tget _ariaCurrent() {\n\t\tif (!this.selected) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn \"page\";\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis._activate(e);\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\tthis._activate(e);\n\t\t}\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\tthis._activate(e);\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\te.stopPropagation();\n\n\t\tthis.sideNavigation?.focusItem(this);\n\t}\n\n\t_activate(e: KeyboardEvent | MouseEvent) {\n\t\te.stopPropagation();\n\n\t\tif (this.isOverflow) {\n\t\t\tthis.fireDecoratorEvent(\"click\");\n\t\t} else {\n\t\t\tthis.sideNavigation?._handleItemClick(e, this);\n\t\t}\n\t}\n\n\tget isSideNavigationSelectableItemBase() {\n\t\treturn true;\n\t}\n}\n\nconst isInstanceOfSideNavigationSelectableItemBase = (object: any): object is SideNavigationSelectableItemBase => {\n\treturn \"isSideNavigationSelectableItemBase\" in object;\n};\n\nexport default SideNavigationSelectableItemBase;\nexport {\n\tisInstanceOfSideNavigationSelectableItemBase,\n};\n"]}
@@ -1,7 +1,7 @@
1
1
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
2
  import Title from "@ui5/webcomponents/dist/Title.js";
3
3
  import Button from "@ui5/webcomponents/dist/Button.js";
4
- import { type ListItemClickEventDetail } from "@ui5/webcomponents/dist/List.js";
4
+ import type { ListItemClickEventDetail } from "@ui5/webcomponents/dist/List.js";
5
5
  import ResponsivePopover from "@ui5/webcomponents/dist/ResponsivePopover.js";
6
6
  import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
7
7
  import type UserMenuAccount from "./UserMenuAccount.js";
@@ -39,6 +39,8 @@ declare class UserMenu extends UI5Element {
39
39
  "change-account": UserMenuOtherAccountClickEventDetail;
40
40
  "item-click": UserMenuItemClickEventDetail;
41
41
  "sign-out-click": void;
42
+ "open": void;
43
+ "close": void;
42
44
  };
43
45
  /**
44
46
  * Defines if the User Menu is opened.
@@ -131,6 +133,7 @@ declare class UserMenu extends UI5Element {
131
133
  _handleSignOutClick(): void;
132
134
  _handleMenuItemClick(e: CustomEvent<ListItemClickEventDetail>): void;
133
135
  _handleMenuItemClose(): void;
136
+ _handlePopoverAfterOpen(): void;
134
137
  _handlePopoverAfterClose(): void;
135
138
  _handleDeclineClick(): void;
136
139
  _openItemSubMenu(item: UserMenuItem): void;
package/dist/UserMenu.js CHANGED
@@ -18,7 +18,7 @@ import Label from "@ui5/webcomponents/dist/Label.js";
18
18
  import Panel from "@ui5/webcomponents/dist/Panel.js";
19
19
  import Icon from "@ui5/webcomponents/dist/Icon.js";
20
20
  import Bar from "@ui5/webcomponents/dist/Bar.js";
21
- import List, {} from "@ui5/webcomponents/dist/List.js";
21
+ import List from "@ui5/webcomponents/dist/List.js";
22
22
  import ListItemCustom from "@ui5/webcomponents/dist/ListItemCustom.js";
23
23
  import Tag from "@ui5/webcomponents/dist/Tag.js";
24
24
  import ResponsivePopover from "@ui5/webcomponents/dist/ResponsivePopover.js";
@@ -176,8 +176,12 @@ let UserMenu = UserMenu_1 = class UserMenu extends UI5Element {
176
176
  _handleMenuItemClose() {
177
177
  this._closeUserMenu();
178
178
  }
179
+ _handlePopoverAfterOpen() {
180
+ this.fireDecoratorEvent("open");
181
+ }
179
182
  _handlePopoverAfterClose() {
180
183
  this.open = false;
184
+ this.fireDecoratorEvent("close");
181
185
  }
182
186
  _handleDeclineClick() {
183
187
  this._closeUserMenu();
@@ -352,9 +356,24 @@ UserMenu = UserMenu_1 = __decorate([
352
356
  event("item-click", {
353
357
  cancelable: true,
354
358
  })
359
+ /**
360
+ * Fired when a user menu is open.
361
+ * @public
362
+ * @since 2.6.0
363
+ */
364
+ ,
365
+ event("open")
366
+ /**
367
+ * Fired when a user menu is close.
368
+ * @public
369
+ * @since 2.6.0
370
+ */
371
+ ,
372
+ event("close")
355
373
  /**
356
374
  * Fired when the "Sign Out" button is selected.
357
375
  * @public
376
+ * @since 2.6.0
358
377
  */
359
378
  ,
360
379
  event("sign-out-click", {