@ui5/webcomponents-fiori 2.28.0-rc.0 → 2.29.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (180) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/NavigationMenuItem.d.ts +3 -0
  4. package/dist/NavigationMenuItem.js +11 -2
  5. package/dist/NavigationMenuItem.js.map +1 -1
  6. package/dist/NavigationMenuItemTemplate.js +4 -3
  7. package/dist/NavigationMenuItemTemplate.js.map +1 -1
  8. package/dist/Search.d.ts +0 -1
  9. package/dist/Search.js +1 -9
  10. package/dist/Search.js.map +1 -1
  11. package/dist/ShellBar.js +2 -4
  12. package/dist/ShellBar.js.map +1 -1
  13. package/dist/SideNavigation.js +11 -0
  14. package/dist/SideNavigation.js.map +1 -1
  15. package/dist/SideNavigationItem.d.ts +2 -0
  16. package/dist/SideNavigationItem.js +8 -1
  17. package/dist/SideNavigationItem.js.map +1 -1
  18. package/dist/SideNavigationItemTemplate.js +4 -3
  19. package/dist/SideNavigationItemTemplate.js.map +1 -1
  20. package/dist/SideNavigationSearchFieldTemplate.js +1 -1
  21. package/dist/SideNavigationSearchFieldTemplate.js.map +1 -1
  22. package/dist/SideNavigationSelectableItemBase.d.ts +5 -0
  23. package/dist/SideNavigationSelectableItemBase.js +26 -0
  24. package/dist/SideNavigationSelectableItemBase.js.map +1 -1
  25. package/dist/SideNavigationSubItem.d.ts +5 -0
  26. package/dist/SideNavigationSubItem.js +17 -2
  27. package/dist/SideNavigationSubItem.js.map +1 -1
  28. package/dist/SideNavigationSubItemTemplate.js +5 -4
  29. package/dist/SideNavigationSubItemTemplate.js.map +1 -1
  30. package/dist/ViewSettingsDialog.js +15 -3
  31. package/dist/ViewSettingsDialog.js.map +1 -1
  32. package/dist/css/themes/NavigationMenuItem.css +1 -1
  33. package/dist/css/themes/ShellBarLegacy.css +1 -1
  34. package/dist/css/themes/SideNavigation.css +1 -1
  35. package/dist/css/themes/SideNavigationGroup.css +1 -1
  36. package/dist/css/themes/SideNavigationItem.css +1 -1
  37. package/dist/css/themes/SideNavigationItemBase.css +1 -1
  38. package/dist/css/themes/SideNavigationSubItem.css +1 -1
  39. package/dist/css/themes/UserSettingsNotificationsViewItem.css +1 -1
  40. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +2 -1
  41. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +2 -1
  42. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +2 -1
  43. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +2 -1
  44. package/dist/css/themes/sap_horizon/parameters-bundle.css +2 -1
  45. package/dist/css/themes/sap_horizon_auto/parameters-bundle.css +84 -121
  46. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +275 -1
  47. package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +202 -1
  48. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +208 -1
  49. package/dist/css/themes/sap_horizon_hc_auto/parameters-bundle.css +94 -131
  50. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +276 -1
  51. package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +208 -1
  52. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +276 -1
  53. package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +210 -1
  54. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
  55. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  56. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  57. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  58. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  59. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  60. package/dist/generated/assets/themes/sap_horizon_auto/parameters-bundle.css.json +1 -1
  61. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  62. package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
  63. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  64. package/dist/generated/assets/themes/sap_horizon_hc_auto/parameters-bundle.css.json +1 -1
  65. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  66. package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
  67. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  68. package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
  69. package/dist/generated/i18n/i18n-defaults.d.ts +2 -1
  70. package/dist/generated/i18n/i18n-defaults.js +2 -1
  71. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  72. package/dist/generated/themes/NavigationMenuItem.css.d.ts +1 -1
  73. package/dist/generated/themes/NavigationMenuItem.css.js +1 -1
  74. package/dist/generated/themes/NavigationMenuItem.css.js.map +1 -1
  75. package/dist/generated/themes/ShellBarLegacy.css.d.ts +1 -1
  76. package/dist/generated/themes/ShellBarLegacy.css.js +1 -1
  77. package/dist/generated/themes/ShellBarLegacy.css.js.map +1 -1
  78. package/dist/generated/themes/SideNavigation.css.d.ts +1 -1
  79. package/dist/generated/themes/SideNavigation.css.js +1 -1
  80. package/dist/generated/themes/SideNavigation.css.js.map +1 -1
  81. package/dist/generated/themes/SideNavigationGroup.css.d.ts +1 -1
  82. package/dist/generated/themes/SideNavigationGroup.css.js +1 -1
  83. package/dist/generated/themes/SideNavigationGroup.css.js.map +1 -1
  84. package/dist/generated/themes/SideNavigationItem.css.d.ts +1 -1
  85. package/dist/generated/themes/SideNavigationItem.css.js +1 -1
  86. package/dist/generated/themes/SideNavigationItem.css.js.map +1 -1
  87. package/dist/generated/themes/SideNavigationItemBase.css.d.ts +1 -1
  88. package/dist/generated/themes/SideNavigationItemBase.css.js +1 -1
  89. package/dist/generated/themes/SideNavigationItemBase.css.js.map +1 -1
  90. package/dist/generated/themes/SideNavigationSubItem.css.d.ts +1 -1
  91. package/dist/generated/themes/SideNavigationSubItem.css.js +1 -1
  92. package/dist/generated/themes/SideNavigationSubItem.css.js.map +1 -1
  93. package/dist/generated/themes/UserSettingsNotificationsViewItem.css.d.ts +1 -1
  94. package/dist/generated/themes/UserSettingsNotificationsViewItem.css.js +1 -1
  95. package/dist/generated/themes/UserSettingsNotificationsViewItem.css.js.map +1 -1
  96. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
  97. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +2 -1
  98. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  99. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +1 -1
  100. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +2 -1
  101. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  102. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +1 -1
  103. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +2 -1
  104. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  105. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +1 -1
  106. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +2 -1
  107. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  108. package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
  109. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +2 -1
  110. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  111. package/dist/generated/themes/sap_horizon_auto/parameters-bundle.css.d.ts +1 -1
  112. package/dist/generated/themes/sap_horizon_auto/parameters-bundle.css.js +84 -121
  113. package/dist/generated/themes/sap_horizon_auto/parameters-bundle.css.js.map +1 -1
  114. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +1 -1
  115. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +275 -1
  116. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  117. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.d.ts +1 -1
  118. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +202 -1
  119. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
  120. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.d.ts +1 -1
  121. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +208 -1
  122. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
  123. package/dist/generated/themes/sap_horizon_hc_auto/parameters-bundle.css.d.ts +1 -1
  124. package/dist/generated/themes/sap_horizon_hc_auto/parameters-bundle.css.js +94 -131
  125. package/dist/generated/themes/sap_horizon_hc_auto/parameters-bundle.css.js.map +1 -1
  126. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +1 -1
  127. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +276 -1
  128. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  129. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.d.ts +1 -1
  130. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +208 -1
  131. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
  132. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +1 -1
  133. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +276 -1
  134. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  135. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.d.ts +1 -1
  136. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +210 -1
  137. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
  138. package/dist/shellbar/ShellBarAccessibility.d.ts +1 -0
  139. package/dist/shellbar/ShellBarAccessibility.js +4 -0
  140. package/dist/shellbar/ShellBarAccessibility.js.map +1 -1
  141. package/dist/shellbar/ShellBarSearch.d.ts +3 -1
  142. package/dist/shellbar/ShellBarSearch.js +6 -1
  143. package/dist/shellbar/ShellBarSearch.js.map +1 -1
  144. package/dist/shellbar/templates/ShellBarSearchLegacyTemplate.js +5 -1
  145. package/dist/shellbar/templates/ShellBarSearchLegacyTemplate.js.map +1 -1
  146. package/dist/web-types.json +1 -1
  147. package/package.json +7 -7
  148. package/src/NavigationMenuItemTemplate.tsx +13 -6
  149. package/src/SideNavigationItemTemplate.tsx +11 -6
  150. package/src/SideNavigationSearchFieldTemplate.tsx +0 -1
  151. package/src/SideNavigationSubItemTemplate.tsx +11 -6
  152. package/src/i18n/messagebundle.properties +3 -0
  153. package/src/i18n/messagebundle_en_US_saprigi.properties +10 -0
  154. package/src/shellbar/templates/ShellBarSearchLegacyTemplate.tsx +6 -2
  155. package/src/themes/NavigationMenuItem.css +19 -2
  156. package/src/themes/ShellBarLegacy.css +2 -2
  157. package/src/themes/SideNavigationGroup.css +8 -1
  158. package/src/themes/SideNavigationItem.css +5 -2
  159. package/src/themes/SideNavigationItemBase.css +35 -15
  160. package/src/themes/UserSettingsNotificationsViewItem.css +3 -3
  161. package/src/themes/base/NotificationListItem-parameters.css +1 -1
  162. package/src/themes/base/Search-parameters.css +1 -1
  163. package/src/themes/base/SideNavigation-parameters.css +1 -3
  164. package/src/themes/base/TimelineGroupItem-parameters.css +1 -1
  165. package/src/themes/base/TimelineItem-parameters.css +1 -1
  166. package/src/themes/base/UserSettingsAppearanceViewItem-parameters.css +1 -1
  167. package/src/themes/base/ViewSettingsDialog-parameters.css +1 -1
  168. package/src/themes/sap_fiori_3/TimelineGroupItem-parameters.css +1 -1
  169. package/src/themes/sap_fiori_3/TimelineItem-parameters.css +1 -1
  170. package/src/themes/sap_fiori_3_dark/TimelineItem-parameters.css +1 -1
  171. package/src/themes/sap_fiori_3_hcb/TimelineItem-parameters.css +1 -1
  172. package/src/themes/sap_fiori_3_hcw/TimelineItem-parameters.css +1 -1
  173. package/src/themes/sap_horizon/SideNavigation-parameters.css +1 -1
  174. package/src/themes/sap_horizon_dark/SideNavigation-parameters.css +1 -1
  175. package/src/themes/sap_horizon_dark_exp/SideNavigation-parameters.css +1 -1
  176. package/src/themes/sap_horizon_exp/SideNavigation-parameters.css +1 -1
  177. package/src/themes/sap_horizon_hcb/SideNavigation-parameters.css +1 -1
  178. package/src/themes/sap_horizon_hcb_exp/SideNavigation-parameters.css +1 -1
  179. package/src/themes/sap_horizon_hcw/SideNavigation-parameters.css +1 -1
  180. package/src/themes/sap_horizon_hcw_exp/SideNavigation-parameters.css +1 -1
@@ -52,12 +52,14 @@ function ItemTemplate(this: SideNavigationItem) {
52
52
  :
53
53
  this.icon && <Icon class="ui5-sn-item-icon" name={this.icon}/>
54
54
  }
55
- <div class="ui5-sn-item-text" id={this._textId} dangerouslySetInnerHTML={{ __html: this._markupText }}></div>
56
- {this.hasTag &&
57
- <div id={this._tagId} class="ui5-sn-item-tag-slot">
58
- <slot name="tag"></slot>
59
- </div>
60
- }
55
+ <div class="ui5-sn-item-text-tag-container">
56
+ <div class="ui5-sn-item-text" id={this._textId} dangerouslySetInnerHTML={{ __html: this._markupText }}></div>
57
+ {this.hasTag &&
58
+ <div class="ui5-sn-item-tag-slot" aria-hidden="true">
59
+ <slot name="tag"></slot>
60
+ </div>
61
+ }
62
+ </div>
61
63
  {this.sideNavCollapsed ?
62
64
  !!this.items.length &&
63
65
  <Icon class="ui5-sn-item-toggle-icon"
@@ -90,6 +92,9 @@ function ItemTemplate(this: SideNavigationItem) {
90
92
  {this._selectableItemDescriptionText &&
91
93
  <span id={this._selectableItemDescriptionId} class="ui5-hidden-text">{this._selectableItemDescriptionText}</span>
92
94
  }
95
+ {this.hasTag &&
96
+ <span id={this._tagId} class="ui5-hidden-text">{this._tagDescriptionText}</span>
97
+ }
93
98
  </>
94
99
  );
95
100
  }
@@ -23,7 +23,6 @@ export default function SideNavigationSearchFieldTemplate(this: SideNavigationSe
23
23
  class="ui5-side-navigation-search-field-search-icon"
24
24
  name={search}
25
25
  accessibleName={this._translations.searchIcon}
26
- hideTooltip={true}
27
26
  onClick={this._handleSearchIconPress}
28
27
  />
29
28
  </Input>
@@ -29,18 +29,23 @@ export default function SideNavigationSubItemTemplate(this: SideNavigationSubIte
29
29
  {this.icon &&
30
30
  <Icon class="ui5-sn-item-icon" name={this.icon}/>
31
31
  }
32
- <div class="ui5-sn-item-text" id={this._textId} dangerouslySetInnerHTML={{ __html: this._markupText }}></div>
33
- {this.hasTag &&
34
- <div id={this._tagId} class="ui5-sn-item-tag-slot">
35
- <slot name="tag"></slot>
36
- </div>
37
- }
32
+ <div class="ui5-sn-item-text-tag-container">
33
+ <div class="ui5-sn-item-text" id={this._textId} dangerouslySetInnerHTML={{ __html: this._markupText }}></div>
34
+ {this.hasTag &&
35
+ <div class="ui5-sn-item-tag-slot" aria-hidden="true">
36
+ <slot name="tag"></slot>
37
+ </div>
38
+ }
39
+ </div>
38
40
  {this.isExternalLink &&
39
41
  <Icon class="ui5-sn-item-external-link-icon"
40
42
  name={arrowRight}
41
43
  />
42
44
  }
43
45
  </EffectiveTag>
46
+ {this.hasTag &&
47
+ <span id={this._tagId} class="ui5-hidden-text">{this._tagDescriptionText}</span>
48
+ }
44
49
  </li>
45
50
  );
46
51
  }
@@ -515,6 +515,9 @@ SIDE_NAVIGATION_SEARCH_FIELD_PLACEHOLDER=Find in Navigation
515
515
  #XACT: Default ARIA label for the side navigation search field
516
516
  SIDE_NAVIGATION_SEARCH_FIELD_LABEL=Side navigation filter
517
517
 
518
+ #XACT: Accessible description of a side navigation item's indication tag, where {0} is the tag text
519
+ SIDE_NAVIGATION_LIST_ITEM_TAG_TEXT=Tag {0}
520
+
518
521
  #XACT: Default ARIA description for the side navigation search field
519
522
  SIDE_NAVIGATION_SEARCH_DESCRIPTION=Results update as you type. Press Enter for the number of results
520
523
 
@@ -340,6 +340,12 @@ SEARCH_FIELD_LABEL=‍‌​‌‌‍‌​‍‍​‌‌‍‍‌‍
340
340
 
341
341
  SEARCH_FIELD_PLACEHOLDER_WITH_SCOPE=‌​‌‍​​​‌​‌‌​​​‌‌‌​‍‍​‍‌​​‍‌‌​‌‌‍‍‍‌‍​‍‌‍‌Search in: ​​​{0}‌‌‌
342
342
 
343
+ SIDE_NAVIGATION_SEARCH_FIELD_PLACEHOLDER=‍‍‌‍‍‌‌‍‍‍​‌​‍‌‍​​​‌‌​‌‌‌‌​​​‍​​‌‌‌‌‍​​​Find in Navigation
344
+
345
+ SIDE_NAVIGATION_SEARCH_FIELD_LABEL=‌‍‌‌‌‌‌‌​​‌‌‍‍​​​​‍‌​‍‌​‌‍‌‍​‌‍​‌‍‍‍‍‍Side navigation filter
346
+
347
+ SIDE_NAVIGATION_SEARCH_DESCRIPTION=‌​‍​‍‌‌​​‌​​‌‌‌‌​‌​‍​​​​‌‍‌​‌​‌​‍​‍‌‌​‍​‍Results update as you type. Press Enter for the number of results
348
+
343
349
  SEARCH_FIELD_CLEAR_ICON=‍‍​‍​​‍‌​‌‌‍​‍​‌‍‍‍‌‍​​​‍‍‌‌‌‌​​​‍​‌‌‍‌‌Clear Search
344
350
 
345
351
  SEARCH_FIELD_SEARCH_ICON=‌​‍‌​​‌‌‍‌‌​‌‍‌‍‌​‌‍‍​‌‍‍‌‌​‍‍‌‌​‍‌​‌‌‌‍‌Search
@@ -376,6 +382,10 @@ SIDE_NAVIGATION_FLEXIBLE_LIST_LABEL=‌‌‌‌​‌‍‌​​‌
376
382
 
377
383
  SIDE_NAVIGATION_FIXED_LIST_LABEL=‌​​​​​​‍​‍‍‍​​‌​‌​‌‌‌‍​‌​‌‍‍​​‍​​‌​‍​‌‍Footer Navigation Menu
378
384
 
385
+ SIDE_NAVIGATION_SEARCH_MATCH_COUNT_SINGULAR=‌​​‍​‌​​‌​​​‌‌‌‌​‌‌‌​‍​​‍​‍‍​​‍‌‌​‌​‌‌‍‍​​​​{0}‌‌‌ match found
386
+
387
+ SIDE_NAVIGATION_SEARCH_MATCH_COUNT_PLURAL=‌​​‌‌​‍‍​‍‍‌‌​‌​‍‍‍‌‌‌​‌​‌‌‌‌​​​‍​​‍‌‍​‌​​​​{0}‌‌‌ matches found
388
+
379
389
  SIDE_NAVIGATION_ICON_COLLAPSE=‌‌​‍‌‍‍‌‌‌‍‌‍‍‌‍‍‍‌‍‌‌‍‍‌‍​‍‍‌‌​​‍​​‍​​​‌Collapse
380
390
 
381
391
  SIDE_NAVIGATION_ICON_EXPAND=‍‌​‍‌‌​‍‌​‍‍​‌‌‍‍​‌‌‌‌​​‌​‍‌‍​​‌​‌‌‌‍​‍​Expand
@@ -6,9 +6,13 @@ function ShellBarSearchField(this: ShellBar) {
6
6
  return (
7
7
  // .ui5-shellbar-search-field-area is used to measure the width of
8
8
  // the search field. It must be present even if the search is in full-width mode.
9
- <div class="ui5-shellbar-search-field-area">
9
+ // The `ui5-shellbar-gap-start` lives on the area (always rendered) rather than on the
10
+ // inner field (rendered only in-bar), so the measured width stays identical whether the
11
+ // search is in the bar or in full-width mode - otherwise the 8px gap would be counted
12
+ // only in-bar, shifting the overflow measurement and causing a render loop.
13
+ <div class="ui5-shellbar-search-field-area ui5-shellbar-gap-start">
10
14
  {this.showSearchField && !this.showFullWidthSearch && (
11
- <div class="ui5-shellbar-search-field ui5-shellbar-gap-start">
15
+ <div class="ui5-shellbar-search-field">
12
16
  <slot name="searchField"></slot>
13
17
  </div>
14
18
  )}
@@ -1,3 +1,5 @@
1
+ @import "./InvisibleTextStyles.css";
2
+
1
3
  :host::part(native-li)::after {
2
4
  border-radius: 0.375rem;
3
5
  inset: 0;
@@ -92,10 +94,25 @@
92
94
  margin-block-end: var(--_ui5_side_navigation_item_bottom_margin);
93
95
  }
94
96
 
97
+ .ui5-navmenu-item-text-tag-container {
98
+ flex: 1;
99
+ min-width: 0;
100
+ display: flex;
101
+ align-items: center;
102
+ flex-wrap: wrap;
103
+ column-gap: 0.5rem;
104
+ row-gap: 0.25rem;
105
+ }
106
+
107
+ .ui5-navmenu-item-text {
108
+ min-width: 0;
109
+ overflow: hidden;
110
+ text-overflow: ellipsis;
111
+ }
112
+
95
113
  .ui5-navmenu-item-tag-container {
96
114
  display: inline-flex;
97
115
  align-items: center;
98
- margin-inline-start: 0.5rem;
99
- height: 1.375rem;
116
+ margin-inline-start: 0;
100
117
  min-width: 1.375rem;
101
118
  }
@@ -6,6 +6,8 @@
6
6
  cursor: pointer;
7
7
  display: flex;
8
8
  align-items: center;
9
+ padding-block: 0.0625rem;
10
+ padding-inline: 0.25rem;
9
11
  }
10
12
 
11
13
  .ui5-shellbar-logo-area,
@@ -43,8 +45,6 @@
43
45
 
44
46
  ::slotted([slot="logo"]) {
45
47
  max-height: 1.875rem;
46
- padding-block: 0.0625rem;
47
- padding-inline: 0.25rem;
48
48
  }
49
49
 
50
50
  ::slotted([slot="logo"]):active {
@@ -7,11 +7,18 @@
7
7
 
8
8
  .ui5-sn-item.ui5-sn-item-group {
9
9
  min-height: 2rem;
10
- padding-inline-start: var(--_ui5_side_navigation_group_padding);;
10
+ padding-inline-start: var(--_ui5_side_navigation_group_padding);
11
11
  font-family: var(--sapFontFamily);
12
12
  font-size: var(--sapFontSize);
13
13
  }
14
14
 
15
+ /* group has no text-tag container: the text fills the row (pushing the toggle icon to the end)
16
+ and carries the vertical margin that gives the group its height. */
17
+ .ui5-sn-item.ui5-sn-item-group .ui5-sn-item-text {
18
+ flex: 1;
19
+ margin-block: var(--_ui5_side_navigation_item_margin);
20
+ }
21
+
15
22
  .ui5-sn-item.ui5-sn-item-group:hover .ui5-sn-item-toggle-icon,
16
23
  .ui5-sn-item.ui5-sn-item-group:focus .ui5-sn-item-toggle-icon {
17
24
  display: block;
@@ -1,5 +1,4 @@
1
1
  @import "./SideNavigationItemBase.css";
2
- @import "./InvisibleTextStyles.css";
3
2
 
4
3
  :host {
5
4
  color: var(--sapList_TextColor);
@@ -17,10 +16,14 @@
17
16
  }
18
17
 
19
18
  :host([in-popover]) .ui5-sn-item-level1 .ui5-sn-item-text {
20
- margin: 0 0.375rem 0 0;
19
+ margin: 0;
21
20
  line-height: var(--_ui5_side_navigation_popup_title_line_height);
22
21
  }
23
22
 
23
+ :host([in-popover]) .ui5-sn-item-level1 .ui5-sn-item-text-tag-container {
24
+ padding-inline-end: 0.5rem;
25
+ }
26
+
24
27
  .ui5-sn-item.ui5-sn-item-level1.ui5-sn-item-overflow {
25
28
  margin-top: auto;
26
29
  }
@@ -1,3 +1,5 @@
1
+ @import "./InvisibleTextStyles.css";
2
+
1
3
  :host {
2
4
  display: block;
3
5
  }
@@ -212,7 +214,6 @@ and there is an additional border that appears on hover. */
212
214
  :host(:not([side-nav-collapsed])) .ui5-sn-item-toggle-icon {
213
215
  width: var(--_ui5_side_navigation_expand_icon_width);
214
216
  padding-inline-end: 0.375rem;
215
- padding-block: var(--_ui5_side_navigation_item_expand_arrow_padding);
216
217
  margin-inline-start: 0.5rem;
217
218
  height: var(--sapElement_Condensed_Height);
218
219
  }
@@ -336,9 +337,17 @@ and there is an additional border that appears on hover. */
336
337
  display: none;
337
338
  }
338
339
 
339
- .ui5-sn-item-text {
340
+ .ui5-sn-item-text-tag-container {
340
341
  flex: 1;
341
342
  min-width: 0;
343
+ display: flex;
344
+ align-items: center;
345
+ flex-wrap: wrap;
346
+ gap: 0.5rem;
347
+ }
348
+
349
+ .ui5-sn-item-text {
350
+ min-width: 0;
342
351
  }
343
352
 
344
353
  :host([side-nav-collapsed]) .ui5-sn-item-text,
@@ -354,28 +363,25 @@ and there is an additional border that appears on hover. */
354
363
  white-space: nowrap;
355
364
  }
356
365
 
357
- :host(:not([side-nav-collapsed]):not([in-popover])) .ui5-sn-item-text {
358
- margin: var(--_ui5_side_navigation_item_margin) 0;
366
+ :host(:not([side-nav-collapsed])) .ui5-sn-item-text {
367
+ margin: 0;
368
+ }
369
+
370
+ :host(:not([side-nav-collapsed]):not([design="Action"])) .ui5-sn-item:not(.ui5-sn-item-group) {
371
+ padding-block: var(--_ui5_side_navigation_item_margin);
359
372
  }
360
373
 
361
- :host(:not([side-nav-collapsed])) .ui5-sn-item:not(.ui5-sn-item-group):not(.ui5-sn-item-with-expander) .ui5-sn-item-text {
374
+ :host(:not([side-nav-collapsed]):not([in-popover])) .ui5-sn-item:not(.ui5-sn-item-group):not(.ui5-sn-item-with-expander) .ui5-sn-item-text-tag-container:not(:has(+ .ui5-sn-item-toggle-icon)):not(:has(+ .ui5-sn-item-external-link-icon)) {
362
375
  padding-inline-end: 0.375rem;
363
376
  }
364
377
 
365
378
  .ui5-sn-item-tag-slot {
366
- padding-inline-start: 0.5rem;
367
- padding-inline-end: 0.375rem;
368
379
  display: inline-flex;
369
380
  align-items: center;
370
381
  }
371
382
 
372
- .ui5-sn-item-tag-slot:has(+ .ui5-sn-item-toggle-icon),
373
- .ui5-sn-item-tag-slot:has(+ .ui5-sn-item-external-link-icon) {
374
- padding-inline-end: 0;
375
- }
376
-
377
- .ui5-sn-item-tag-slot + .ui5-sn-item-toggle-icon,
378
- .ui5-sn-item-tag-slot + .ui5-sn-item-external-link-icon {
383
+ .ui5-sn-item-text-tag-container + .ui5-sn-item-toggle-icon,
384
+ .ui5-sn-item-text-tag-container + .ui5-sn-item-external-link-icon {
379
385
  margin-inline-start: 0.375rem;
380
386
  }
381
387
 
@@ -390,7 +396,21 @@ and there is an additional border that appears on hover. */
390
396
 
391
397
  :host([in-popover]) .ui5-sn-item-tag-slot {
392
398
  display: inline-flex;
393
- padding-inline-end: 0.5rem;
399
+ }
400
+
401
+ /* Collapsed rail hover/focus flyout: tag stays on one line and truncates at 6rem.
402
+ The popover (in-popover) is NOT clamped - the tag shows full and the popover widens. */
403
+ :host([side-nav-collapsed]) .ui5-sn-item-text-tag-container {
404
+ flex-wrap: nowrap;
405
+ }
406
+
407
+ :host([side-nav-collapsed]) .ui5-sn-item-tag-slot {
408
+ max-width: 6rem;
409
+ overflow: hidden;
410
+ }
411
+
412
+ :host([side-nav-collapsed]) .ui5-sn-item-tag-slot ::slotted([slot="tag"]) {
413
+ max-width: 6rem;
394
414
  }
395
415
 
396
416
  :host([side-nav-collapsed]) .ui5-sn-item-with-expander .ui5-sn-item-icon::after {
@@ -58,7 +58,7 @@
58
58
  pointer-events: none;
59
59
  }
60
60
 
61
- @container style(--ui5_content_density: compact) {
61
+ @ui5-compact-size {
62
62
  :host {
63
63
  --_ui5_user_settings_notifications_item_end_margin: 1rem;
64
64
  min-height: var(--sapElement_Compact_LineHeight);
@@ -99,7 +99,7 @@
99
99
  text-overflow: ellipsis;
100
100
  }
101
101
 
102
- @container style(--ui5_content_density: compact) {
102
+ @ui5-compact-size {
103
103
  .ui5-user-settings-notifications-item-title {
104
104
  font-size: var(--sapFontSize);
105
105
  }
@@ -137,7 +137,7 @@
137
137
  min-height: 5rem;
138
138
  }
139
139
 
140
- @container style(--ui5_content_density: compact) {
140
+ @ui5-compact-size {
141
141
  .ui5-user-settings-notifications-item.has-byline {
142
142
  min-height: 4rem;
143
143
  }
@@ -23,7 +23,7 @@
23
23
  --_ui5-notification_item-growing-btn-background-color-active: var(--sapList_Active_Background);
24
24
  }
25
25
 
26
- @container style(--ui5_content_density: compact) {
26
+ @ui5-compact-size {
27
27
  :host {
28
28
  --_ui5-notification_item-description-margin-top: 0.5rem;
29
29
  --_ui5-notification_item-footer-margin-top: 0.5rem;
@@ -4,7 +4,7 @@
4
4
  --_ui5_search_popover_max_height: 39rem;
5
5
  }
6
6
 
7
- @container style(--ui5_content_density: compact) {
7
+ @ui5-compact-size {
8
8
  :host {
9
9
  --_ui5_search_item_vertical_padding: 0.5rem;
10
10
  }
@@ -24,7 +24,6 @@
24
24
  --_ui5_side_navigation_item_border_width: 0;
25
25
  --_ui5_side_navigation_item_height: 2.75rem;
26
26
  --_ui5_side_navigation_item_margin: 0.875rem;
27
- --_ui5_side_navigation_item_expand_arrow_padding: 0.6875rem;
28
27
  --_ui5_side_navigation_item_border_radius: 0;
29
28
  --_ui5_side_navigation_item_bottom_margin: 0;
30
29
  --_ui5_side_navigation_item_padding_start_in_popup: var(--_ui5_side_navigation_group_icon_width);
@@ -66,10 +65,9 @@
66
65
  --_ui5_side_navigation_active_text_color: var(--sapList_Active_TextColor);
67
66
  }
68
67
 
69
- @container style(--ui5_content_density: compact) {
68
+ @ui5-compact-size {
70
69
  :host {
71
70
  --_ui5_side_navigation_item_height: 2rem;
72
- --_ui5_side_navigation_item_expand_arrow_padding: 0.3125rem;
73
71
  --_ui5_side_navigation_item_margin: 0.5rem;
74
72
  }
75
73
  }
@@ -3,7 +3,7 @@
3
3
  --_ui5_timeline_tlgi_root_horizontal_height: 19.9375rem;
4
4
  }
5
5
 
6
- @container style(--ui5_content_density: compact) {
6
+ @ui5-compact-size {
7
7
  :host {
8
8
  --_ui5_timeline_tlgi_compact_icon_before_height: calc(100% + 1.5rem);
9
9
  --_ui5_timeline_tlgi_horizontal_line_placeholder_before_width: var(--_ui5_timeline_tlgi_compact_icon_before_height);
@@ -42,7 +42,7 @@
42
42
  --_ui5_timeline_tli_horizontal_indicator_short_after_width: 100%;
43
43
  }
44
44
 
45
- @container style(--ui5_content_density: compact) {
45
+ @ui5-compact-size {
46
46
  :host {
47
47
  /* Timeline (container) */
48
48
  --_ui5_tl_bubble_padding: .5rem;
@@ -4,7 +4,7 @@
4
4
  --_ui5_user_settings_item_title_font_size: var(--sapFontSize);
5
5
  }
6
6
 
7
- @container style(--ui5_content_density: compact) {
7
+ @ui5-compact-size {
8
8
  :host {
9
9
  --_ui5_user_settings_avatar_cozy_display: none;
10
10
  --_ui5_user_settings_avatar_compact_display: inline-block;
@@ -6,7 +6,7 @@
6
6
  --_ui5_vsd_expand_content_height: 26.1875rem;
7
7
  }
8
8
 
9
- @container style(--ui5_content_density: compact) {
9
+ @ui5-compact-size {
10
10
  :host {
11
11
  --_ui5_vsd_header_container: 2.5rem;
12
12
  --_ui5_vsd_sub_header_container_height: 2rem;
@@ -5,7 +5,7 @@
5
5
  --_ui5_timeline_tlgi_root_horizontal_height: 21.53125rem;
6
6
  }
7
7
 
8
- @container style(--ui5_content_density: compact) {
8
+ @ui5-compact-size {
9
9
  :host {
10
10
  --_ui5_timeline_tlgi_root_horizontal_height: 20.90625rem;
11
11
  }
@@ -1,6 +1,6 @@
1
1
  @import "../base/TimelineItem-parameters.css";
2
2
 
3
- @container style(--ui5_content_density: compact) {
3
+ @ui5-compact-size {
4
4
  :host {
5
5
  /* Timeline Item COMPACT - sap_fiori_3 specific values */
6
6
  --_ui5_timeline_tli_indicator_after_height: 50%;
@@ -1,6 +1,6 @@
1
1
  @import "../base/TimelineItem-parameters.css";
2
2
 
3
- @container style(--ui5_content_density: compact) {
3
+ @ui5-compact-size {
4
4
  :host {
5
5
  --_ui5_timeline_tli_indicator_after_height: 50%;
6
6
  --_ui5_timeline_tli_indicator_after_top: -50%;
@@ -5,7 +5,7 @@
5
5
  --_ui5_TimelineItem_bubble_rtl_right_offset: -0.6875rem;
6
6
  }
7
7
 
8
- @container style(--ui5_content_density: compact) {
8
+ @ui5-compact-size {
9
9
  :host {
10
10
  --_ui5_timeline_tli_indicator_after_height: 50%;
11
11
  --_ui5_timeline_tli_indicator_after_top: -50%;
@@ -5,7 +5,7 @@
5
5
  --_ui5_TimelineItem_bubble_rtl_right_offset: -0.6875rem;
6
6
  }
7
7
 
8
- @container style(--ui5_content_density: compact) {
8
+ @ui5-compact-size {
9
9
  :host {
10
10
  --_ui5_timeline_tli_indicator_after_height: 50%;
11
11
  --_ui5_timeline_tli_indicator_after_top: -50%;
@@ -46,7 +46,7 @@
46
46
  --_ui5_side_navigation_item_collapsed_padding: 3rem;
47
47
  }
48
48
 
49
- @container style(--ui5_content_density: compact) {
49
+ @ui5-compact-size {
50
50
  :host {
51
51
  --_ui5_side_navigation_item_height: 2rem;
52
52
  }
@@ -46,7 +46,7 @@
46
46
  --_ui5_side_navigation_item_collapsed_padding: 3rem;
47
47
  }
48
48
 
49
- @container style(--ui5_content_density: compact) {
49
+ @ui5-compact-size {
50
50
  :host {
51
51
  --_ui5_side_navigation_item_height: 2rem;
52
52
  }
@@ -10,7 +10,7 @@
10
10
  --_ui5_side_navigation_item_transition: background-color 0.3s ease-in-out;
11
11
  }
12
12
 
13
- @container style(--ui5_content_density: compact) {
13
+ @ui5-compact-size {
14
14
  :host {
15
15
  --_ui5_side_navigation_item_height: 2rem;
16
16
  }
@@ -10,7 +10,7 @@
10
10
  --_ui5_side_navigation_item_transition: background-color 0.3s ease-in-out;
11
11
  }
12
12
 
13
- @container style(--ui5_content_density: compact) {
13
+ @ui5-compact-size {
14
14
  :host {
15
15
  --_ui5_side_navigation_item_height: 2rem;
16
16
  }
@@ -44,7 +44,7 @@
44
44
  --_ui5_side_navigation_item_collapsed_padding: 3rem;
45
45
  }
46
46
 
47
- @container style(--ui5_content_density: compact) {
47
+ @ui5-compact-size {
48
48
  :host {
49
49
  --_ui5_side_navigation_item_height: 2rem;
50
50
  }
@@ -9,7 +9,7 @@
9
9
  --_ui5_side_navigation_item_height: 2.5rem;
10
10
  }
11
11
 
12
- @container style(--ui5_content_density: compact) {
12
+ @ui5-compact-size {
13
13
  :host {
14
14
  --_ui5_side_navigation_item_height: 2rem;
15
15
  }
@@ -44,7 +44,7 @@
44
44
  --_ui5_side_navigation_item_collapsed_padding: 3rem;
45
45
  }
46
46
 
47
- @container style(--ui5_content_density: compact) {
47
+ @ui5-compact-size {
48
48
  :host {
49
49
  --_ui5_side_navigation_item_height: 2rem;
50
50
  }
@@ -9,7 +9,7 @@
9
9
  --_ui5_side_navigation_item_height: 2.5rem;
10
10
  }
11
11
 
12
- @container style(--ui5_content_density: compact) {
12
+ @ui5-compact-size {
13
13
  :host {
14
14
  --_ui5_side_navigation_item_height: 2rem;
15
15
  }