@sapudex/web-components 2.29.0 → 2.31.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 (270) hide show
  1. package/cypress/specs/FilterMenu.cy.tsx +39 -1
  2. package/cypress/specs/List.cy.tsx +171 -0
  3. package/cypress/specs/ListItem.cy.tsx +22 -26
  4. package/cypress/specs/PromoTile.cy.tsx +10 -0
  5. package/cypress/specs/ReviewItem.cy.tsx +48 -14
  6. package/cypress/specs/SecondaryNavigationDesktop.cy.tsx +12 -12
  7. package/cypress/specs/SelectBox.cy.tsx +76 -0
  8. package/cypress/support/component-imports.instrumented.ts +4 -0
  9. package/cypress/support/component-imports.src.ts +5 -1
  10. package/dist/Avatar.d.ts +1 -0
  11. package/dist/Avatar.js +9 -0
  12. package/dist/Avatar.js.map +1 -1
  13. package/dist/Breadcrumbs.d.ts +0 -4
  14. package/dist/Breadcrumbs.js +7 -16
  15. package/dist/Breadcrumbs.js.map +1 -1
  16. package/dist/BreadcrumbsTemplate.js +1 -1
  17. package/dist/BreadcrumbsTemplate.js.map +1 -1
  18. package/dist/FilterMenu.d.ts +2 -0
  19. package/dist/FilterMenu.js +2 -0
  20. package/dist/FilterMenu.js.map +1 -1
  21. package/dist/ImageGridTickerTemplate.js +2 -1
  22. package/dist/ImageGridTickerTemplate.js.map +1 -1
  23. package/dist/List.d.ts +4 -2
  24. package/dist/List.js +45 -12
  25. package/dist/List.js.map +1 -1
  26. package/dist/ListGroupHeader.d.ts +4 -0
  27. package/dist/ListGroupHeader.js +26 -1
  28. package/dist/ListGroupHeader.js.map +1 -1
  29. package/dist/ListGroupHeaderBase.js +1 -1
  30. package/dist/ListGroupHeaderBase.js.map +1 -1
  31. package/dist/ListItem.js +1 -1
  32. package/dist/ListItem.js.map +1 -1
  33. package/dist/ListItemBase.d.ts +40 -3
  34. package/dist/ListItemBase.js +70 -9
  35. package/dist/ListItemBase.js.map +1 -1
  36. package/dist/MastheadCountrySelector.d.ts +3 -15
  37. package/dist/MastheadCountrySelector.js +28 -72
  38. package/dist/MastheadCountrySelector.js.map +1 -1
  39. package/dist/MastheadItem.d.ts +10 -2
  40. package/dist/MastheadItem.js +26 -15
  41. package/dist/MastheadItem.js.map +1 -1
  42. package/dist/MastheadMenu.d.ts +2 -2
  43. package/dist/MastheadMenu.js +9 -9
  44. package/dist/MastheadMenu.js.map +1 -1
  45. package/dist/MastheadMenuItem.d.ts +7 -0
  46. package/dist/MastheadMenuItem.js +3 -0
  47. package/dist/MastheadMenuItem.js.map +1 -1
  48. package/dist/MastheadMobileMenu.d.ts +2 -12
  49. package/dist/MastheadMobileMenu.js +31 -116
  50. package/dist/MastheadMobileMenu.js.map +1 -1
  51. package/dist/MastheadProfileMenu.js +1 -1
  52. package/dist/MastheadProfileMenu.js.map +1 -1
  53. package/dist/MastheadShell.d.ts +1 -6
  54. package/dist/MastheadShell.js +7 -44
  55. package/dist/MastheadShell.js.map +1 -1
  56. package/dist/Pagination.d.ts +14 -1
  57. package/dist/Pagination.js +40 -7
  58. package/dist/Pagination.js.map +1 -1
  59. package/dist/PromoTile.d.ts +8 -0
  60. package/dist/PromoTile.js +4 -0
  61. package/dist/PromoTile.js.map +1 -1
  62. package/dist/PromoTileTemplate.js +3 -1
  63. package/dist/PromoTileTemplate.js.map +1 -1
  64. package/dist/ReviewItem.d.ts +8 -7
  65. package/dist/ReviewItem.js +35 -36
  66. package/dist/ReviewItem.js.map +1 -1
  67. package/dist/ReviewItemTemplate.js +3 -1
  68. package/dist/ReviewItemTemplate.js.map +1 -1
  69. package/dist/SearchableListBase.d.ts +3 -0
  70. package/dist/SearchableListBase.js +37 -1
  71. package/dist/SearchableListBase.js.map +1 -1
  72. package/dist/SecondaryNavigationItem.js +7 -1
  73. package/dist/SecondaryNavigationItem.js.map +1 -1
  74. package/dist/SelectBase.js +28 -7
  75. package/dist/SelectBase.js.map +1 -1
  76. package/dist/SelectBox.js +0 -1
  77. package/dist/SelectBox.js.map +1 -1
  78. package/dist/TextField.d.ts +1 -1
  79. package/dist/TextField.js.map +1 -1
  80. package/dist/assets/{InputSuggestions-GMbG8xQ2.js → InputSuggestions-i2kFpCfC.js} +1 -1
  81. package/dist/assets/{ListItemStandardExpandableTextTemplate-IyZB_qzJ.js → ListItemStandardExpandableTextTemplate-C1ceDaxu.js} +1 -1
  82. package/dist/assets/{bundle.esm-Dg7j0PXg.js → bundle.esm-DQ3cxywT.js} +216 -216
  83. package/dist/assets/messagebundle_en-DWAgV5VH.js +1 -0
  84. package/dist/css/themes/BreadcrumbsPopover.css +1 -1
  85. package/dist/css/themes/Dropdown.css +1 -1
  86. package/dist/css/themes/FilterMenu.css +1 -1
  87. package/dist/css/themes/ImageGridTicker.css +1 -1
  88. package/dist/css/themes/Link.css +1 -1
  89. package/dist/css/themes/ListGroupHeader.css +1 -1
  90. package/dist/css/themes/ListItem.css +1 -1
  91. package/dist/css/themes/MastheadCountrySelector.css +1 -1
  92. package/dist/css/themes/MastheadItem.css +1 -1
  93. package/dist/css/themes/MastheadProfileMenu.css +1 -1
  94. package/dist/css/themes/MastheadShell.css +1 -1
  95. package/dist/css/themes/Modal.css +1 -1
  96. package/dist/css/themes/RatingIndicator.css +1 -1
  97. package/dist/css/themes/ReviewItem.css +1 -1
  98. package/dist/css/themes/SecondaryNavigation.css +1 -1
  99. package/dist/css/themes/SecondaryNavigationItem.css +1 -1
  100. package/dist/css/themes/SecondaryNavigationSubItem.css +1 -1
  101. package/dist/css/themes/Slider.css +1 -1
  102. package/dist/custom-elements-internal.json +986 -19
  103. package/dist/custom-elements.json +734 -13
  104. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  105. package/dist/generated/i18n/i18n-defaults.d.ts +6 -1
  106. package/dist/generated/i18n/i18n-defaults.js +6 -1
  107. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  108. package/dist/generated/templates/ListGroupHeaderTemplate.lit.js +17 -10
  109. package/dist/generated/templates/ListGroupHeaderTemplate.lit.js.map +1 -1
  110. package/dist/generated/templates/ListItemTemplate.lit.js +32 -34
  111. package/dist/generated/templates/ListItemTemplate.lit.js.map +1 -1
  112. package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.js +3 -3
  113. package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.js.map +1 -1
  114. package/dist/generated/templates/MastheadItemTemplate.lit.js +33 -25
  115. package/dist/generated/templates/MastheadItemTemplate.lit.js.map +1 -1
  116. package/dist/generated/templates/MastheadMenuItemTemplate.lit.js +1 -1
  117. package/dist/generated/templates/MastheadMenuItemTemplate.lit.js.map +1 -1
  118. package/dist/generated/templates/MastheadMobileMenuTemplate.lit.js +5 -5
  119. package/dist/generated/templates/MastheadMobileMenuTemplate.lit.js.map +1 -1
  120. package/dist/generated/templates/MastheadShellTemplate.lit.js +9 -10
  121. package/dist/generated/templates/MastheadShellTemplate.lit.js.map +1 -1
  122. package/dist/generated/templates/SearchableListBaseTemplate.lit.js +1 -1
  123. package/dist/generated/templates/SearchableListBaseTemplate.lit.js.map +1 -1
  124. package/dist/generated/themes/BreadcrumbsPopover.css.d.ts +1 -1
  125. package/dist/generated/themes/BreadcrumbsPopover.css.js +1 -1
  126. package/dist/generated/themes/BreadcrumbsPopover.css.js.map +1 -1
  127. package/dist/generated/themes/Dropdown.css.d.ts +1 -1
  128. package/dist/generated/themes/Dropdown.css.js +1 -1
  129. package/dist/generated/themes/Dropdown.css.js.map +1 -1
  130. package/dist/generated/themes/FilterMenu.css.d.ts +1 -1
  131. package/dist/generated/themes/FilterMenu.css.js +1 -1
  132. package/dist/generated/themes/FilterMenu.css.js.map +1 -1
  133. package/dist/generated/themes/ImageGridTicker.css.d.ts +1 -1
  134. package/dist/generated/themes/ImageGridTicker.css.js +1 -1
  135. package/dist/generated/themes/ImageGridTicker.css.js.map +1 -1
  136. package/dist/generated/themes/Link.css.d.ts +1 -1
  137. package/dist/generated/themes/Link.css.js +1 -1
  138. package/dist/generated/themes/Link.css.js.map +1 -1
  139. package/dist/generated/themes/ListGroupHeader.css.d.ts +1 -1
  140. package/dist/generated/themes/ListGroupHeader.css.js +1 -1
  141. package/dist/generated/themes/ListGroupHeader.css.js.map +1 -1
  142. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  143. package/dist/generated/themes/ListItem.css.js +1 -1
  144. package/dist/generated/themes/ListItem.css.js.map +1 -1
  145. package/dist/generated/themes/MastheadCountrySelector.css.d.ts +1 -1
  146. package/dist/generated/themes/MastheadCountrySelector.css.js +1 -1
  147. package/dist/generated/themes/MastheadCountrySelector.css.js.map +1 -1
  148. package/dist/generated/themes/MastheadItem.css.d.ts +1 -1
  149. package/dist/generated/themes/MastheadItem.css.js +1 -1
  150. package/dist/generated/themes/MastheadItem.css.js.map +1 -1
  151. package/dist/generated/themes/MastheadProfileMenu.css.d.ts +1 -1
  152. package/dist/generated/themes/MastheadProfileMenu.css.js +1 -1
  153. package/dist/generated/themes/MastheadProfileMenu.css.js.map +1 -1
  154. package/dist/generated/themes/MastheadShell.css.d.ts +1 -1
  155. package/dist/generated/themes/MastheadShell.css.js +1 -1
  156. package/dist/generated/themes/MastheadShell.css.js.map +1 -1
  157. package/dist/generated/themes/Modal.css.d.ts +1 -1
  158. package/dist/generated/themes/Modal.css.js +1 -1
  159. package/dist/generated/themes/Modal.css.js.map +1 -1
  160. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  161. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  162. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  163. package/dist/generated/themes/ReviewItem.css.d.ts +1 -1
  164. package/dist/generated/themes/ReviewItem.css.js +1 -1
  165. package/dist/generated/themes/ReviewItem.css.js.map +1 -1
  166. package/dist/generated/themes/SecondaryNavigation.css.d.ts +1 -1
  167. package/dist/generated/themes/SecondaryNavigation.css.js +1 -1
  168. package/dist/generated/themes/SecondaryNavigation.css.js.map +1 -1
  169. package/dist/generated/themes/SecondaryNavigationItem.css.d.ts +1 -1
  170. package/dist/generated/themes/SecondaryNavigationItem.css.js +1 -1
  171. package/dist/generated/themes/SecondaryNavigationItem.css.js.map +1 -1
  172. package/dist/generated/themes/SecondaryNavigationSubItem.css.d.ts +1 -1
  173. package/dist/generated/themes/SecondaryNavigationSubItem.css.js +1 -1
  174. package/dist/generated/themes/SecondaryNavigationSubItem.css.js.map +1 -1
  175. package/dist/generated/themes/Slider.css.d.ts +1 -1
  176. package/dist/generated/themes/Slider.css.js +1 -1
  177. package/dist/generated/themes/Slider.css.js.map +1 -1
  178. package/dist/messagebundle.properties +9 -0
  179. package/dist/messagebundle_en.properties +3 -0
  180. package/dist/types/List.d.ts +0 -2
  181. package/dist/types/List.js +0 -2
  182. package/dist/types/List.js.map +1 -1
  183. package/dist/types/SearchableListBase.d.ts +1 -0
  184. package/dist/types/SearchableListBase.js.map +1 -1
  185. package/dist/vscode.html-custom-data.json +144 -85
  186. package/dist/web-types.json +303 -83
  187. package/package.json +2 -1
  188. package/src/Avatar.ts +9 -0
  189. package/src/Breadcrumbs.ts +8 -20
  190. package/src/BreadcrumbsTemplate.tsx +1 -1
  191. package/src/FilterMenu.ts +4 -0
  192. package/src/ImageGridTickerTemplate.tsx +3 -1
  193. package/src/List.ts +51 -14
  194. package/src/ListGroupHeader.hbs +128 -17
  195. package/src/ListGroupHeader.ts +31 -1
  196. package/src/ListGroupHeaderBase.ts +1 -1
  197. package/src/ListItem.hbs +15 -2
  198. package/src/ListItem.ts +1 -1
  199. package/src/ListItemBase.ts +105 -7
  200. package/src/MastheadCountrySelector.hbs +6 -3
  201. package/src/MastheadCountrySelector.ts +31 -85
  202. package/src/MastheadItem.hbs +31 -23
  203. package/src/MastheadItem.ts +28 -18
  204. package/src/MastheadMenu.ts +10 -9
  205. package/src/MastheadMenuItem.hbs +1 -0
  206. package/src/MastheadMenuItem.ts +9 -0
  207. package/src/MastheadMobileMenu.hbs +5 -6
  208. package/src/MastheadMobileMenu.ts +34 -130
  209. package/src/MastheadProfileMenu.ts +1 -1
  210. package/src/MastheadShell.hbs +9 -11
  211. package/src/MastheadShell.ts +8 -50
  212. package/src/Pagination.ts +52 -8
  213. package/src/PromoTile.ts +10 -0
  214. package/src/PromoTileTemplate.tsx +4 -1
  215. package/src/ReviewItem.ts +45 -35
  216. package/src/ReviewItemTemplate.tsx +16 -14
  217. package/src/SearchableListBase.hbs +3 -0
  218. package/src/SearchableListBase.ts +52 -1
  219. package/src/SecondaryNavigationItem.ts +1 -2
  220. package/src/SelectBase.ts +33 -7
  221. package/src/SelectBox.ts +0 -1
  222. package/src/TextField.ts +1 -1
  223. package/src/generated/i18n/i18n-defaults.ts +2 -2
  224. package/src/generated/templates/ListGroupHeaderTemplate.lit.ts +17 -10
  225. package/src/generated/templates/ListItemTemplate.lit.ts +32 -34
  226. package/src/generated/templates/MastheadCountrySelectorTemplate.lit.ts +3 -3
  227. package/src/generated/templates/MastheadItemTemplate.lit.ts +33 -25
  228. package/src/generated/templates/MastheadMenuItemTemplate.lit.ts +1 -1
  229. package/src/generated/templates/MastheadMobileMenuTemplate.lit.ts +5 -5
  230. package/src/generated/templates/MastheadShellTemplate.lit.ts +9 -10
  231. package/src/generated/templates/SearchableListBaseTemplate.lit.ts +1 -1
  232. package/src/generated/themes/BreadcrumbsPopover.css.ts +1 -1
  233. package/src/generated/themes/Dropdown.css.ts +1 -1
  234. package/src/generated/themes/FilterMenu.css.ts +1 -1
  235. package/src/generated/themes/ImageGridTicker.css.ts +1 -1
  236. package/src/generated/themes/Link.css.ts +1 -1
  237. package/src/generated/themes/ListGroupHeader.css.ts +1 -1
  238. package/src/generated/themes/ListItem.css.ts +1 -1
  239. package/src/generated/themes/MastheadCountrySelector.css.ts +1 -1
  240. package/src/generated/themes/MastheadItem.css.ts +1 -1
  241. package/src/generated/themes/MastheadProfileMenu.css.ts +1 -1
  242. package/src/generated/themes/MastheadShell.css.ts +1 -1
  243. package/src/generated/themes/Modal.css.ts +1 -1
  244. package/src/generated/themes/RatingIndicator.css.ts +1 -1
  245. package/src/generated/themes/ReviewItem.css.ts +1 -1
  246. package/src/generated/themes/SecondaryNavigation.css.ts +1 -1
  247. package/src/generated/themes/SecondaryNavigationItem.css.ts +1 -1
  248. package/src/generated/themes/SecondaryNavigationSubItem.css.ts +1 -1
  249. package/src/generated/themes/Slider.css.ts +1 -1
  250. package/src/i18n/messagebundle.properties +9 -0
  251. package/src/i18n/messagebundle_en.properties +3 -0
  252. package/src/themes/BreadcrumbsPopover.css +2 -0
  253. package/src/themes/Dropdown.css +5 -1
  254. package/src/themes/FilterMenu.css +2 -2
  255. package/src/themes/ImageGridTicker.css +2 -26
  256. package/src/themes/Link.css +2 -3
  257. package/src/themes/ListGroupHeader.css +102 -15
  258. package/src/themes/ListItem.css +67 -15
  259. package/src/themes/MastheadCountrySelector.css +3 -1
  260. package/src/themes/MastheadItem.css +88 -3
  261. package/src/themes/MastheadProfileMenu.css +1 -9
  262. package/src/themes/MastheadShell.css +0 -2
  263. package/src/themes/Modal.css +2 -1
  264. package/src/themes/ReviewItem.css +18 -1
  265. package/src/themes/SecondaryNavigation.css +6 -3
  266. package/src/themes/SecondaryNavigationItem.css +11 -10
  267. package/src/themes/SecondaryNavigationSubItem.css +3 -2
  268. package/src/types/List.ts +0 -2
  269. package/src/types/SearchableListBase.ts +1 -0
  270. package/dist/assets/messagebundle_en-DfoXjU7o.js +0 -1
package/src/ReviewItem.ts CHANGED
@@ -8,7 +8,7 @@ import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
8
8
  import type { ResizeObserverCallback } from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
9
9
  import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
10
10
  import ReviewItemTemplate from "./ReviewItemTemplate.js";
11
- import { READ_LESS, READ_MORE } from "./generated/i18n/i18n-defaults.js";
11
+ import { SHOW_LESS, SHOW_MORE } from "./generated/i18n/i18n-defaults.js";
12
12
  import translate from "./utils/translate.js";
13
13
 
14
14
  // Styles
@@ -73,14 +73,6 @@ class UDExReviewItem extends UI5Element {
73
73
  @property({ type: String })
74
74
  text!: string;
75
75
 
76
- /**
77
- * Defines whether button for showing truncated text is shown.
78
- * @default 2
79
- * @private
80
- */
81
- @property({ type: Number })
82
- _textLineLimit: number = 2;
83
-
84
76
  /**
85
77
  * Defines whether the text is expanded.
86
78
  * @default false
@@ -123,23 +115,30 @@ class UDExReviewItem extends UI5Element {
123
115
  @slot()
124
116
  date!: Array<HTMLElement>;
125
117
 
118
+ /**
119
+ * Slot for custom content.
120
+ *
121
+ * @slot
122
+ */
123
+ @slot()
124
+ content?: Array<HTMLElement>;
125
+
126
126
  @i18n("@sapudex/web-components")
127
127
  static i18nBundle: I18nBundle;
128
128
 
129
129
  _handleResizeBound: ResizeObserverCallback;
130
130
  _textElement!: HTMLElement;
131
131
  _visibleText!: string;
132
- _maxHeight: number = 48;
132
+ _maxHeight: number = 90;
133
133
  _maxRating: number = 5;
134
134
  _minRating: number = 0;
135
135
 
136
136
  constructor() {
137
137
  super();
138
- this._handleResizeBound = this._checkTextOverflow.bind(this);
138
+ this._handleResizeBound = this._handleResize.bind(this);
139
139
  }
140
140
 
141
141
  onEnterDOM(): void {
142
- this._maxHeight = 48;
143
142
  this._completeText = this.text;
144
143
  ResizeHandler.register(this, this._handleResizeBound);
145
144
  }
@@ -149,19 +148,22 @@ class UDExReviewItem extends UI5Element {
149
148
  }
150
149
 
151
150
  onAfterRendering(): void {
152
- this._textElement = this.getTextElement();
153
- this._checkTextOverflow();
151
+ this._textElement = this.textElement;
152
+ if (this.text) {
153
+ this._checkTextOverflow();
154
+ }
155
+ }
156
+
157
+ _handleResize(): void {
158
+ if (this.text) {
159
+ this._checkTextOverflow();
160
+ }
154
161
  }
155
162
 
156
163
  _toggleText() {
157
164
  this._textExpanded = !this._textExpanded;
158
- if (this._textExpanded) {
159
- this._completeText = this.text;
160
- this._textElement.classList.add("udex-review-item__text-expanded");
161
- } else {
162
- this._textElement.classList.remove("udex-review-item__text-expanded");
163
- this._completeText = this._visibleText;
164
- }
165
+ this._completeText = this._textExpanded ? this.text : this._visibleText;
166
+ this._textElement.classList.toggle("udex-review-item__text-expanded", this._textExpanded);
165
167
  }
166
168
 
167
169
  _checkTextOverflow() {
@@ -169,18 +171,26 @@ class UDExReviewItem extends UI5Element {
169
171
 
170
172
  const canvas = document.createElement("canvas");
171
173
  const context = canvas.getContext("2d")!;
172
- context.font = `16px sans-serif`;
174
+ context.font = "16px sans-serif";
173
175
 
174
- let currentLineWidth = 0;
176
+ const maxWidth = this._textElement.offsetWidth;
175
177
  let visibleText = "";
178
+ const lineHeight = 22; // Approximate line height for 16px font
179
+
180
+ for (let i = 0; i < words.length; i++) {
181
+ const testText = visibleText + (visibleText ? " " : "") + words[i];
182
+ const metrics = context.measureText(testText);
183
+ const textWidth = metrics.width;
184
+
185
+ const estimatedLines = Math.ceil(textWidth / maxWidth);
186
+ const estimatedHeight = estimatedLines * lineHeight;
176
187
 
177
- words.forEach(word => {
178
- const wordWidth = context.measureText(`${word} `).width;
179
- if (currentLineWidth + wordWidth <= 2 * this._textElement.offsetWidth) {
180
- visibleText += `${word} `;
181
- currentLineWidth += wordWidth;
188
+ if (estimatedHeight > this._maxHeight) {
189
+ break;
182
190
  }
183
- });
191
+
192
+ visibleText = testText;
193
+ }
184
194
 
185
195
  this._visibleText = visibleText;
186
196
  if (!this._textExpanded) {
@@ -190,8 +200,13 @@ class UDExReviewItem extends UI5Element {
190
200
  this._showTextExpander = (!this._textExpanded && this._completeText.length < this.text.length) || (this._textExpanded && visibleText.length < this.text.length);
191
201
  }
192
202
 
203
+ get textElement(): HTMLElement {
204
+ const textElement = this.shadowRoot?.getElementById("udex-review-item__text");
205
+ return textElement!;
206
+ }
207
+
193
208
  get buttonText(): string {
194
- return this._textExpanded ? translate(UDExReviewItem, READ_LESS) : translate(UDExReviewItem, READ_MORE);
209
+ return this._textExpanded ? translate(UDExReviewItem, SHOW_LESS) : translate(UDExReviewItem, SHOW_MORE);
195
210
  }
196
211
 
197
212
  get reviewItemClasses(): string {
@@ -210,11 +225,6 @@ class UDExReviewItem extends UI5Element {
210
225
  }
211
226
  return this.rating;
212
227
  }
213
-
214
- getTextElement(): HTMLElement {
215
- const textElement = this.shadowRoot?.getElementById("udex-review-item__text");
216
- return textElement!;
217
- }
218
228
  }
219
229
 
220
230
  UDExReviewItem.define();
@@ -24,21 +24,23 @@ export default function ReviewItemTemplate(this: ReviewItem) {
24
24
  )}
25
25
  </div>
26
26
  <div className={`${rootClass}__text-container`}>
27
- <div className={`${rootClass}__title`}>{this.reviewTitle}</div>
27
+ {this.reviewTitle &&
28
+ <div className={`${rootClass}__title`}>{this.reviewTitle}</div>
29
+ }
28
30
  <div className={`${rootClass}__text-wrapper`}>
29
- <p className={`${rootClass}__text`} id={`${rootClass}__text`}>
30
- {this._completeText}
31
- </p>
32
- {this._showTextExpander && (
33
- <UDExButton
34
- id="reviewExpander"
35
- class={`${rootClass}__text-expander`}
36
- design={UDExButtonDesign.Invisible}
37
- size={UDExButtonSize.Large}
38
- onClick={this._toggleText.bind(this)}>
39
- {this.buttonText}
40
- </UDExButton>
41
- )}
31
+ <slot slot="content" name="content">
32
+ <p className={`${rootClass}__text`} id={`${rootClass}__text`}>{this._completeText}</p>
33
+ {this._showTextExpander &&
34
+ <UDExButton
35
+ id="reviewExpander"
36
+ class={`${rootClass}__text-expander`}
37
+ design={UDExButtonDesign.Invisible}
38
+ size={UDExButtonSize.Large}
39
+ onClick={this._toggleText.bind(this)}>
40
+ {this.buttonText}
41
+ </UDExButton>
42
+ }
43
+ </slot>
42
44
  </div>
43
45
  {this.author && (
44
46
  <slot slot="author" name="author" className={`${rootClass}__author`}></slot>
@@ -77,6 +77,9 @@
77
77
  label="{{this.item.label}}"
78
78
  supporting-text="{{this.item.supportingText}}"
79
79
  ?controlled="{{this.item.controlled}}"
80
+ ?collapsible="{{this.item.collapsible}}"
81
+ ?collapsed="{{this.item.collapsed}}"
82
+ ?_filtered="{{../_shouldFilterItems}}"
80
83
  ?disabled="{{this.item.disabled}}"
81
84
  ?selected="{{this.item.selected}}"
82
85
  @ui5-first-icon-click="{{../fireFirstIconClickEvent}}"
@@ -252,11 +252,13 @@ class UDExSearchableListBase extends UI5Element {
252
252
 
253
253
  _shouldFilterItems?: boolean;
254
254
  _accSearchResultInfo?: string;
255
+ _groupCollapseStateBeforeSearch: Map<string, boolean>;
255
256
 
256
257
  constructor() {
257
258
  super();
258
259
  this._shouldFilterItems = false;
259
260
  this._filteredItems = [];
261
+ this._groupCollapseStateBeforeSearch = new Map();
260
262
  }
261
263
 
262
264
  onBeforeRendering() {
@@ -332,7 +334,17 @@ class UDExSearchableListBase extends UI5Element {
332
334
 
333
335
  onSearch(value: string) {
334
336
  const searchValue: string = value;
335
- this._shouldFilterItems = true;
337
+ const hasSearchQuery = searchValue !== "";
338
+
339
+ if (hasSearchQuery && !this._shouldFilterItems) {
340
+ this.saveGroupCollapseState();
341
+ }
342
+
343
+ if (!hasSearchQuery && this._shouldFilterItems) {
344
+ this.restoreGroupCollapseState();
345
+ }
346
+
347
+ this._shouldFilterItems = hasSearchQuery;
336
348
  this._filteredItems = this.filterItems(this.getProcessedItems(), searchValue);
337
349
  const items = this.getFlattenItemsArray(this._filteredItems);
338
350
  this._accSearchResultInfo = items.length ? `${items.length} ${this.resultReturnedText}` : this.noMatchesFoundText;
@@ -361,16 +373,27 @@ class UDExSearchableListBase extends UI5Element {
361
373
  resetSearch() {
362
374
  const search = this.getSearch();
363
375
  search.value = "";
376
+ this._shouldFilterItems = false;
377
+ this.restoreGroupCollapseState();
364
378
  this._filteredItems = this.filterItems(this.getProcessedItems(), "");
365
379
  }
366
380
 
367
381
  filterItems(items: Array<UDExProcessedItem>, str: string): Array<UDExProcessedItem> {
382
+ const hasSearchQuery = str !== "";
383
+
368
384
  return items.filter(preparedItem => {
369
385
  const { isGroup, item } = preparedItem;
386
+
370
387
  if (isGroup) {
371
388
  preparedItem.groupItems = this.filterItemsForLabel(preparedItem.groupItems, str);
389
+
390
+ if (hasSearchQuery && preparedItem.groupItems.length > 0) {
391
+ item.collapsed = false;
392
+ }
393
+
372
394
  return preparedItem.groupItems.length > 0;
373
395
  }
396
+
374
397
  return this.checkAndUpdateLabel(item, str);
375
398
  });
376
399
  }
@@ -422,6 +445,34 @@ class UDExSearchableListBase extends UI5Element {
422
445
  }
423
446
  }
424
447
 
448
+ saveGroupCollapseState(): void {
449
+ this._groupCollapseStateBeforeSearch.clear();
450
+
451
+ this.items.forEach(item => {
452
+ if (item.isGroup) {
453
+ this._groupCollapseStateBeforeSearch.set(item._id, Boolean(item.collapsed));
454
+ }
455
+ });
456
+ }
457
+
458
+ restoreGroupCollapseState(): void {
459
+ if (!this._groupCollapseStateBeforeSearch.size) {
460
+ return;
461
+ }
462
+
463
+ this.items.forEach(item => {
464
+ if (item.isGroup) {
465
+ const collapsed = this._groupCollapseStateBeforeSearch.get(item._id);
466
+
467
+ if (collapsed !== undefined) {
468
+ item.collapsed = collapsed;
469
+ }
470
+ }
471
+ });
472
+
473
+ this._groupCollapseStateBeforeSearch.clear();
474
+ }
475
+
425
476
  getSlottedItems(items: Array<UDExListItemBase | UDExListGroupHeaderBase>): Array<UDExListItemBase | UDExListGroupHeaderBase> {
426
477
  const arr: Array<UDExListItemBase | UDExListGroupHeaderBase> = [];
427
478
  items.forEach(item => {
@@ -127,7 +127,7 @@ class UDExSecondaryNavigationItem extends UDExSecondaryNavigationItemBase {
127
127
  * @default false
128
128
  */
129
129
  @property({ type: Boolean })
130
- isOpen!: boolean;
130
+ isOpen: boolean = false;
131
131
 
132
132
  /**
133
133
  * Defines the length of items in the secondary navigation.
@@ -220,7 +220,6 @@ class UDExSecondaryNavigationItem extends UDExSecondaryNavigationItemBase {
220
220
  if (this.hasNestedItems) {
221
221
  this.setDropdownItems();
222
222
  this.isOpen = !this.isOpen;
223
- this._shouldResetTabIndex = true;
224
223
  this.onShouldFocusFirstSubItem();
225
224
  }
226
225
 
package/src/SelectBase.ts CHANGED
@@ -286,16 +286,28 @@ class UDExSelectBase extends UDExSearchableListBase {
286
286
  }
287
287
 
288
288
  handleHomeKeyPress(items: UDExListItemBase[]) {
289
- this._selectedOption = items[0].label;
289
+ const firstIndex = (items[0]?.nonInteractive && !items[0]?.collapsible) ? 1 : 0;
290
+ this._selectedOption = items[firstIndex].label;
290
291
 
291
292
  if (this.showImageFlags) {
292
- this.handleImagePosition(items, 0);
293
+ this.handleImagePosition(items, firstIndex);
293
294
  }
294
295
  }
295
296
 
296
297
  handleDownKeyPress(items: UDExListItemBase[], currentSelectedIndex: number, lastItemIndex: number) {
297
298
  const nextIndex = currentSelectedIndex + 1;
298
299
  const nextSelectIndex = nextIndex > lastItemIndex ? 0 : nextIndex;
300
+ const isNonInteractive = items[nextSelectIndex].nonInteractive && !items[nextSelectIndex].collapsible;
301
+
302
+ if (isNonInteractive) {
303
+ const skipIndex = nextSelectIndex + 1 > lastItemIndex ? 0 : nextSelectIndex + 1;
304
+ this._selectedOption = items[skipIndex].label;
305
+ if (this.showImageFlags) {
306
+ this.handleImagePosition(items, skipIndex);
307
+ }
308
+ return;
309
+ }
310
+
299
311
  this._selectedOption = items[nextSelectIndex].label;
300
312
 
301
313
  if (this.showImageFlags) {
@@ -306,6 +318,17 @@ class UDExSelectBase extends UDExSearchableListBase {
306
318
  handleUpKeyPress(items: UDExListItemBase[], currentSelectedIndex: number, lastItemIndex: number) {
307
319
  const prevIndex = currentSelectedIndex - 1;
308
320
  const previousSelectIndex = prevIndex < 0 ? lastItemIndex : prevIndex;
321
+ const isNonInteractive = items[previousSelectIndex].nonInteractive && !items[previousSelectIndex].collapsible;
322
+
323
+ if (isNonInteractive) {
324
+ const skipIndex = previousSelectIndex === 0 ? lastItemIndex : previousSelectIndex - 1;
325
+ this._selectedOption = items[skipIndex].label;
326
+ if (this.showImageFlags) {
327
+ this.handleImagePosition(items, skipIndex);
328
+ }
329
+ return;
330
+ }
331
+
309
332
  this._selectedOption = items[previousSelectIndex].label;
310
333
 
311
334
  if (this.showImageFlags) {
@@ -381,15 +404,18 @@ class UDExSelectBase extends UDExSearchableListBase {
381
404
  }
382
405
 
383
406
  focusFirstItem(items: UDExListItemBase[]): void {
384
- this._list.setTabIndexByIndex(items, 0);
407
+ const firstIndex = (items[0]?.nonInteractive && !items[0]?.collapsible) ? 1 : 0;
408
+ const firstItem = items[firstIndex];
409
+ this._list.setTabIndexByIndex(items, firstIndex);
410
+
385
411
  if (!this.tabNavigationEnabled) {
386
- this._selectedOption = items[0].label;
412
+ this._selectedOption = firstItem.label;
387
413
  }
388
414
 
389
- if (items[0].isGroup) {
390
- this._list.focusHeader(items[0]);
415
+ if (firstItem.isGroup) {
416
+ this._list.focusHeader(firstItem);
391
417
  } else {
392
- items[0].focus();
418
+ firstItem.focus();
393
419
  }
394
420
  }
395
421
 
package/src/SelectBox.ts CHANGED
@@ -179,7 +179,6 @@ class UDExSelectBox extends UDExSelectBase {
179
179
  }
180
180
 
181
181
  handleHeaderPress(e:CustomEvent) {
182
- this._search.focus();
183
182
  this.onHeaderPress(e);
184
183
  }
185
184
 
package/src/TextField.ts CHANGED
@@ -357,7 +357,7 @@ class UDExTextField extends UI5Element {
357
357
  ariaDescribedBy?: string;
358
358
 
359
359
  /**
360
- * Defines the aria-has-popup attribute of the input.
360
+ * Defines the aria-haspopup attribute of the input.
361
361
  * @private
362
362
  */
363
363
  @property({ type: String })
@@ -1,3 +1,3 @@
1
1
  import type { I18nText } from "@ui5/webcomponents-base/dist/i18nBundle.js";
2
- const COUNT: I18nText = {key: "COUNT", defaultText: "Count"};const OF: I18nText = {key: "OF", defaultText: "of"};const PAGINATION_PAGE: I18nText = {key: "PAGINATION_PAGE", defaultText: "Pagination page"};const SELECTED: I18nText = {key: "SELECTED", defaultText: "Selected"};const FIRST_PAGE: I18nText = {key: "FIRST_PAGE", defaultText: "First page"};const LAST_PAGE: I18nText = {key: "LAST_PAGE", defaultText: "Last page"};const PREVIOUS_PAGE: I18nText = {key: "PREVIOUS_PAGE", defaultText: "Previous page"};const NEXT_PAGE: I18nText = {key: "NEXT_PAGE", defaultText: "Next page"};const CURRENT_PAGE: I18nText = {key: "CURRENT_PAGE", defaultText: "Current page"};const ACTIVATE_PAGE: I18nText = {key: "ACTIVATE_PAGE", defaultText: "Activate page number"};const BUTTON_ARIA_TYPE_PRIMARY: I18nText = {key: "BUTTON_ARIA_TYPE_PRIMARY", defaultText: "Primary"};const BUTTON_ARIA_TYPE_SECONDARY: I18nText = {key: "BUTTON_ARIA_TYPE_SECONDARY", defaultText: "Secondary"};const BUTTON_ARIA_TYPE_TERTIARY: I18nText = {key: "BUTTON_ARIA_TYPE_TERTIARY", defaultText: "Tertiary"};const BUTTON_ARIA_TYPE_WARNING: I18nText = {key: "BUTTON_ARIA_TYPE_WARNING", defaultText: "Warning"};const BUTTON_ARIA_TYPE_POSITIVE: I18nText = {key: "BUTTON_ARIA_TYPE_POSITIVE", defaultText: "Positive"};const BUTTON_ARIA_TYPE_NEGATIVE: I18nText = {key: "BUTTON_ARIA_TYPE_NEGATIVE", defaultText: "Negative"};const BUTTON_ARIA_EMPHASIZED: I18nText = {key: "BUTTON_ARIA_EMPHASIZED", defaultText: "Emphasized"};const BUTTON_ARIA_DEFAULT: I18nText = {key: "BUTTON_ARIA_DEFAULT", defaultText: "Default"};const BUTTON_ARIA_TRANSPARENT: I18nText = {key: "BUTTON_ARIA_TRANSPARENT", defaultText: "Transparent"};const BUTTON_ARIA_ATTENTION: I18nText = {key: "BUTTON_ARIA_ATTENTION", defaultText: "Attention"};const TOGGLED: I18nText = {key: "TOGGLED", defaultText: "Toggled"};const SUGGESTED_TEXT: I18nText = {key: "SUGGESTED_TEXT", defaultText: "Suggested searches"};const ACCESSIBLE_NAME_RESET_ICON: I18nText = {key: "ACCESSIBLE_NAME_RESET_ICON", defaultText: "Clear"};const ACCESSIBLE_NAME_SEARCH_ICON: I18nText = {key: "ACCESSIBLE_NAME_SEARCH_ICON", defaultText: "Search"};const TOOLTIP_RESET_BUTTON: I18nText = {key: "TOOLTIP_RESET_BUTTON", defaultText: "Clear"};const TOOLTIP_VOICE_BUTTON: I18nText = {key: "TOOLTIP_VOICE_BUTTON", defaultText: "Voice"};const TOOLTIP_SUBMIT_BUTTON: I18nText = {key: "TOOLTIP_SUBMIT_BUTTON", defaultText: "Submit"};const LISTENING: I18nText = {key: "LISTENING", defaultText: "Listening"};const AVAILABLE_VALUES: I18nText = {key: "AVAILABLE_VALUES", defaultText: "Available Values"};const RECOMMENDED_TEXT: I18nText = {key: "RECOMMENDED_TEXT", defaultText: "Recommended pages"};const EXPAND_ALL: I18nText = {key: "EXPAND_ALL", defaultText: "Expand All"};const COLLAPSE_ALL: I18nText = {key: "COLLAPSE_ALL", defaultText: "Collapse All"};const MORE: I18nText = {key: "MORE", defaultText: "More"};const ATTENTION_BADGE: I18nText = {key: "ATTENTION_BADGE", defaultText: "Attention badge"};const REVIEWS: I18nText = {key: "REVIEWS", defaultText: "reviews"};const STARS: I18nText = {key: "STARS", defaultText: "stars"};const READ_MORE: I18nText = {key: "READ_MORE", defaultText: "Read more"};const READ_LESS: I18nText = {key: "READ_LESS", defaultText: "Read less"};const RATING_INDICATOR_TEXT: I18nText = {key: "RATING_INDICATOR_TEXT", defaultText: "Rating Indicator"};const RATING_INDICATOR_TOOLTIP_TEXT: I18nText = {key: "RATING_INDICATOR_TOOLTIP_TEXT", defaultText: "Rating"};const RATING_INDICATOR_ARIA_DESCRIPTION: I18nText = {key: "RATING_INDICATOR_ARIA_DESCRIPTION", defaultText: "Required"};const TOTAL: I18nText = {key: "TOTAL", defaultText: "Total"};const RATING_COUNT_TITLE: I18nText = {key: "RATING_COUNT_TITLE", defaultText: "Rating"};const MESSAGE_STRIP_CLOSE_BUTTON: I18nText = {key: "MESSAGE_STRIP_CLOSE_BUTTON", defaultText: "Message Strip Close Button"};const MESSAGE_STRIP_INFORMATION: I18nText = {key: "MESSAGE_STRIP_INFORMATION", defaultText: "Information Bar"};const MESSAGE_STRIP_SUCCESS: I18nText = {key: "MESSAGE_STRIP_SUCCESS", defaultText: "Positive Bar"};const MESSAGE_STRIP_WARNING: I18nText = {key: "MESSAGE_STRIP_WARNING", defaultText: "Warning Bar"};const MESSAGE_STRIP_ERROR: I18nText = {key: "MESSAGE_STRIP_ERROR", defaultText: "Negative Bar"};const MESSAGE_STRIP_ACTION: I18nText = {key: "MESSAGE_STRIP_ACTION", defaultText: "Action Bar"};const ARIA_LABEL_LIST_MULTISELECTABLE: I18nText = {key: "ARIA_LABEL_LIST_MULTISELECTABLE", defaultText: "Contains Multi-Selectable Items"};const ARIA_LABEL_LIST_SELECTABLE: I18nText = {key: "ARIA_LABEL_LIST_SELECTABLE", defaultText: "Contains Selectable Items"};const UNSELECTED: I18nText = {key: "UNSELECTED", defaultText: "Unselected"};const INDETERMINATE: I18nText = {key: "INDETERMINATE", defaultText: "Indeterminate"};const EDIT_BUTTON: I18nText = {key: "EDIT_BUTTON", defaultText: "Edit"};const DELETE_BUTTON: I18nText = {key: "DELETE_BUTTON", defaultText: "Delete"};const TEXTAREA_CHARACTERS_LEFT: I18nText = {key: "TEXTAREA_CHARACTERS_LEFT", defaultText: "{0} characters remaining"};const VALUE_STATE_TYPE_ERROR: I18nText = {key: "VALUE_STATE_TYPE_ERROR", defaultText: "Field State Error"};const VALUE_STATE_TYPE_WARNING: I18nText = {key: "VALUE_STATE_TYPE_WARNING", defaultText: "Field State Warning"};const VALUE_STATE_TYPE_SUCCESS: I18nText = {key: "VALUE_STATE_TYPE_SUCCESS", defaultText: "Field State Success"};const VALUE_STATE_TYPE_STANDARD: I18nText = {key: "VALUE_STATE_TYPE_STANDARD", defaultText: "Field State Standard"};const TEXT_FIELD: I18nText = {key: "TEXT_FIELD", defaultText: "Text field"};const CAROUSEL_PREVIOUS_ARROW_TEXT: I18nText = {key: "CAROUSEL_PREVIOUS_ARROW_TEXT", defaultText: "Previous Page"};const CAROUSEL_NEXT_ARROW_TEXT: I18nText = {key: "CAROUSEL_NEXT_ARROW_TEXT", defaultText: "Next Page"};const SHOW_RESULTS: I18nText = {key: "SHOW_RESULTS", defaultText: "Show Results"};const RESET: I18nText = {key: "RESET", defaultText: "Reset"};const LOCATION: I18nText = {key: "LOCATION", defaultText: "Location"};const SELECT_OPTIONS: I18nText = {key: "SELECT_OPTIONS", defaultText: "Select Options"};const SELECT_ALL: I18nText = {key: "SELECT_ALL", defaultText: "Select All"};const BREADCRUMBS_ARIA_LABEL: I18nText = {key: "BREADCRUMBS_ARIA_LABEL", defaultText: "Breadcrumb Trail"};const BREADCRUMBS_OVERFLOW_ARIA_LABEL: I18nText = {key: "BREADCRUMBS_OVERFLOW_ARIA_LABEL", defaultText: "More"};const STEPINPUT_INC_ICON_TITLE: I18nText = {key: "STEPINPUT_INC_ICON_TITLE", defaultText: "Increase by"};const STEPINPUT_DEC_ICON_TITLE: I18nText = {key: "STEPINPUT_DEC_ICON_TITLE", defaultText: "Decrease by"};const NO_MATCHES_FOUND: I18nText = {key: "NO_MATCHES_FOUND", defaultText: "No matches found."};const RESULT_RETURNED: I18nText = {key: "RESULT_RETURNED", defaultText: "results returned."};const VALUE_STATE_ERROR: I18nText = {key: "VALUE_STATE_ERROR", defaultText: "Invalid entry"};const VALUE_STATE_WARNING: I18nText = {key: "VALUE_STATE_WARNING", defaultText: "Warning issued"};const VALUE_STATE_INFORMATION: I18nText = {key: "VALUE_STATE_INFORMATION", defaultText: "Informative entry"};const VALUE_STATE_SUCCESS: I18nText = {key: "VALUE_STATE_SUCCESS", defaultText: "Entry successfully validated"};const READ_ONLY: I18nText = {key: "READ_ONLY", defaultText: "Read only"};const MAIN_LINKS: I18nText = {key: "MAIN_LINKS", defaultText: "main links"};const OPENS_IN_A_NEW_WINDOW: I18nText = {key: "OPENS_IN_A_NEW_WINDOW", defaultText: "opens in a new window"};const LOGOUT: I18nText = {key: "LOGOUT", defaultText: "Logout"};const PROFILE: I18nText = {key: "PROFILE", defaultText: "Profile"};const SWITCH_ACCOUNT: I18nText = {key: "SWITCH_ACCOUNT", defaultText: "Switch account"};const BACK: I18nText = {key: "BACK", defaultText: "Back"};const OTHER_IDENTITIES: I18nText = {key: "OTHER_IDENTITIES", defaultText: "Other identities"};const ADD_OR_REMOVE_ACCOUNT: I18nText = {key: "ADD_OR_REMOVE_ACCOUNT", defaultText: "Add or remove account"};const COUNTRY_SELECT: I18nText = {key: "COUNTRY_SELECT", defaultText: "Select country"};const OVERVIEW: I18nText = {key: "OVERVIEW", defaultText: "Overview"};const CART: I18nText = {key: "CART", defaultText: "Cart"};const COUNTRY_SELECTOR: I18nText = {key: "COUNTRY_SELECTOR", defaultText: "Country Selector"};const SUPPORT: I18nText = {key: "SUPPORT", defaultText: "Support"};const SEARCH: I18nText = {key: "SEARCH", defaultText: "Search"};const SHOW_HIDE_PASSWORD: I18nText = {key: "SHOW_HIDE_PASSWORD", defaultText: "Show/Hide Password Button"};const PHONE_NUMBER: I18nText = {key: "PHONE_NUMBER", defaultText: "Phone number"};const CONTACT_US: I18nText = {key: "CONTACT_US", defaultText: "Contact us"};const EMAIL: I18nText = {key: "EMAIL", defaultText: "Email"};const CHAT_WITH_US: I18nText = {key: "CHAT_WITH_US", defaultText: "Chat with us"};const QUICK_LINKS: I18nText = {key: "QUICK_LINKS", defaultText: "Quick Links"};const TRENDING: I18nText = {key: "TRENDING", defaultText: "Trending"};const ABOUT_SAP: I18nText = {key: "ABOUT_SAP", defaultText: "About SAP"};const SITE_INFORMATION: I18nText = {key: "SITE_INFORMATION", defaultText: "Site Information"};const SEE_COMPLETE_LIST: I18nText = {key: "SEE_COMPLETE_LIST", defaultText: "Or see our complete list of"};const LOCAL_COUNTRY_NAMES: I18nText = {key: "LOCAL_COUNTRY_NAMES", defaultText: "local country numbers"};const COPYRIGHT: I18nText = {key: "COPYRIGHT", defaultText: "© {0} SAP SE or an SAP affiliate company. All rights reserved."};const BACK_TO_TOP: I18nText = {key: "BACK_TO_TOP", defaultText: "Back to top"};const PUBLIC_SECURITY_NETWORK_NUMBER: I18nText = {key: "PUBLIC_SECURITY_NETWORK_NUMBER", defaultText: ""};const ICP_NUMBER: I18nText = {key: "ICP_NUMBER", defaultText: ""};const AVATAR_TEXT: I18nText = {key: "AVATAR_TEXT", defaultText: "Avatar"};const DISABLED: I18nText = {key: "DISABLED", defaultText: "Disabled"};const STATUS_BADGE_TEXT: I18nText = {key: "STATUS_BADGE_TEXT", defaultText: "Status Badge"};const STATUS_BADGE_EDIT_TITLE: I18nText = {key: "STATUS_BADGE_EDIT_TITLE", defaultText: "Click to edit profile"};const STATUS_BADGE_INFORMATION_TITLE: I18nText = {key: "STATUS_BADGE_INFORMATION_TITLE", defaultText: "Click to open profile information"};const STATUS_BADGE_WARNING_TITLE: I18nText = {key: "STATUS_BADGE_WARNING_TITLE", defaultText: "Warning, potential risk with the profile"};const STATUS_BADGE_ERROR_TITLE: I18nText = {key: "STATUS_BADGE_ERROR_TITLE", defaultText: "There is an error with the profile"};const STATUS_BADGE_SUCCESS_TITLE: I18nText = {key: "STATUS_BADGE_SUCCESS_TITLE", defaultText: "Successfully verified profile"};const CALENDAR_ICON: I18nText = {key: "CALENDAR_ICON", defaultText: "Open Calendar icon"};const DATEPICKER_DATE_DESCRIPTION: I18nText = {key: "DATEPICKER_DATE_DESCRIPTION", defaultText: "Date Input"};const TABLE_NO_DATA_FOUND: I18nText = {key: "TABLE_NO_DATA_FOUND", defaultText: "No data found"};const LIST_ITEM_EDIT_ICON: I18nText = {key: "LIST_ITEM_EDIT_ICON", defaultText: "Edit list item entry"};const LIST_ITEM_DELETE_ICON: I18nText = {key: "LIST_ITEM_DELETE_ICON", defaultText: "Delete list item entry"};const BACK_BUTTON_LABEL: I18nText = {key: "BACK_BUTTON_LABEL", defaultText: "back button label"};const TRIGGER: I18nText = {key: "TRIGGER", defaultText: "Dropdown trigger"};const UPLOADING_FILE_STATUS_TEXT: I18nText = {key: "UPLOADING_FILE_STATUS_TEXT", defaultText: "Uploading"};const TERMINATED_FILE_STATUS_TEXT: I18nText = {key: "TERMINATED_FILE_STATUS_TEXT", defaultText: "Terminated"};const REMOVE_FILE_TEXT: I18nText = {key: "REMOVE_FILE_TEXT", defaultText: "Remove file"};const UPLOAD_BUTTON_LABEL: I18nText = {key: "UPLOAD_BUTTON_LABEL", defaultText: "Upload file"};const COMPLETE_LIST_OF: I18nText = {key: "COMPLETE_LIST_OF", defaultText: "Complete list of"};const CALL_US_TODAY: I18nText = {key: "CALL_US_TODAY", defaultText: "Call us today!"};const SOCIAL_MEDIA_BUTTON: I18nText = {key: "SOCIAL_MEDIA_BUTTON", defaultText: "Social Media Button"};const PROMO_TILE: I18nText = {key: "PROMO_TILE", defaultText: "Promo Tile"};const PROMO_TILE_ICON: I18nText = {key: "PROMO_TILE_ICON", defaultText: "Promo Tile Icon"};const PLAY_BUTTON_ACCESSIBLE_NAME: I18nText = {key: "PLAY_BUTTON_ACCESSIBLE_NAME", defaultText: "Start button to begin customer logos rotation"};const PAUSE_BUTTON_ACCESSIBLE_NAME: I18nText = {key: "PAUSE_BUTTON_ACCESSIBLE_NAME", defaultText: "Pause button to stop customer logos rotation"};const TOAST_CLOSE_ACCESSIBLE_NAME: I18nText = {key: "TOAST_CLOSE_ACCESSIBLE_NAME", defaultText: "Close"};
3
- export {COUNT,OF,PAGINATION_PAGE,SELECTED,FIRST_PAGE,LAST_PAGE,PREVIOUS_PAGE,NEXT_PAGE,CURRENT_PAGE,ACTIVATE_PAGE,BUTTON_ARIA_TYPE_PRIMARY,BUTTON_ARIA_TYPE_SECONDARY,BUTTON_ARIA_TYPE_TERTIARY,BUTTON_ARIA_TYPE_WARNING,BUTTON_ARIA_TYPE_POSITIVE,BUTTON_ARIA_TYPE_NEGATIVE,BUTTON_ARIA_EMPHASIZED,BUTTON_ARIA_DEFAULT,BUTTON_ARIA_TRANSPARENT,BUTTON_ARIA_ATTENTION,TOGGLED,SUGGESTED_TEXT,ACCESSIBLE_NAME_RESET_ICON,ACCESSIBLE_NAME_SEARCH_ICON,TOOLTIP_RESET_BUTTON,TOOLTIP_VOICE_BUTTON,TOOLTIP_SUBMIT_BUTTON,LISTENING,AVAILABLE_VALUES,RECOMMENDED_TEXT,EXPAND_ALL,COLLAPSE_ALL,MORE,ATTENTION_BADGE,REVIEWS,STARS,READ_MORE,READ_LESS,RATING_INDICATOR_TEXT,RATING_INDICATOR_TOOLTIP_TEXT,RATING_INDICATOR_ARIA_DESCRIPTION,TOTAL,RATING_COUNT_TITLE,MESSAGE_STRIP_CLOSE_BUTTON,MESSAGE_STRIP_INFORMATION,MESSAGE_STRIP_SUCCESS,MESSAGE_STRIP_WARNING,MESSAGE_STRIP_ERROR,MESSAGE_STRIP_ACTION,ARIA_LABEL_LIST_MULTISELECTABLE,ARIA_LABEL_LIST_SELECTABLE,UNSELECTED,INDETERMINATE,EDIT_BUTTON,DELETE_BUTTON,TEXTAREA_CHARACTERS_LEFT,VALUE_STATE_TYPE_ERROR,VALUE_STATE_TYPE_WARNING,VALUE_STATE_TYPE_SUCCESS,VALUE_STATE_TYPE_STANDARD,TEXT_FIELD,CAROUSEL_PREVIOUS_ARROW_TEXT,CAROUSEL_NEXT_ARROW_TEXT,SHOW_RESULTS,RESET,LOCATION,SELECT_OPTIONS,SELECT_ALL,BREADCRUMBS_ARIA_LABEL,BREADCRUMBS_OVERFLOW_ARIA_LABEL,STEPINPUT_INC_ICON_TITLE,STEPINPUT_DEC_ICON_TITLE,NO_MATCHES_FOUND,RESULT_RETURNED,VALUE_STATE_ERROR,VALUE_STATE_WARNING,VALUE_STATE_INFORMATION,VALUE_STATE_SUCCESS,READ_ONLY,MAIN_LINKS,OPENS_IN_A_NEW_WINDOW,LOGOUT,PROFILE,SWITCH_ACCOUNT,BACK,OTHER_IDENTITIES,ADD_OR_REMOVE_ACCOUNT,COUNTRY_SELECT,OVERVIEW,CART,COUNTRY_SELECTOR,SUPPORT,SEARCH,SHOW_HIDE_PASSWORD,PHONE_NUMBER,CONTACT_US,EMAIL,CHAT_WITH_US,QUICK_LINKS,TRENDING,ABOUT_SAP,SITE_INFORMATION,SEE_COMPLETE_LIST,LOCAL_COUNTRY_NAMES,COPYRIGHT,BACK_TO_TOP,PUBLIC_SECURITY_NETWORK_NUMBER,ICP_NUMBER,AVATAR_TEXT,DISABLED,STATUS_BADGE_TEXT,STATUS_BADGE_EDIT_TITLE,STATUS_BADGE_INFORMATION_TITLE,STATUS_BADGE_WARNING_TITLE,STATUS_BADGE_ERROR_TITLE,STATUS_BADGE_SUCCESS_TITLE,CALENDAR_ICON,DATEPICKER_DATE_DESCRIPTION,TABLE_NO_DATA_FOUND,LIST_ITEM_EDIT_ICON,LIST_ITEM_DELETE_ICON,BACK_BUTTON_LABEL,TRIGGER,UPLOADING_FILE_STATUS_TEXT,TERMINATED_FILE_STATUS_TEXT,REMOVE_FILE_TEXT,UPLOAD_BUTTON_LABEL,COMPLETE_LIST_OF,CALL_US_TODAY,SOCIAL_MEDIA_BUTTON,PROMO_TILE,PROMO_TILE_ICON,PLAY_BUTTON_ACCESSIBLE_NAME,PAUSE_BUTTON_ACCESSIBLE_NAME,TOAST_CLOSE_ACCESSIBLE_NAME};
2
+ const COUNT: I18nText = {key: "COUNT", defaultText: "Count"};const OF: I18nText = {key: "OF", defaultText: "of"};const PAGINATION_PAGE: I18nText = {key: "PAGINATION_PAGE", defaultText: "Pagination page"};const SELECTED: I18nText = {key: "SELECTED", defaultText: "Selected"};const FIRST_PAGE: I18nText = {key: "FIRST_PAGE", defaultText: "First page"};const LAST_PAGE: I18nText = {key: "LAST_PAGE", defaultText: "Last page"};const PREVIOUS_PAGE: I18nText = {key: "PREVIOUS_PAGE", defaultText: "Previous page"};const NEXT_PAGE: I18nText = {key: "NEXT_PAGE", defaultText: "Next page"};const CURRENT_PAGE: I18nText = {key: "CURRENT_PAGE", defaultText: "Current page"};const ACTIVATE_PAGE: I18nText = {key: "ACTIVATE_PAGE", defaultText: "Activate page number"};const BUTTON_ARIA_TYPE_PRIMARY: I18nText = {key: "BUTTON_ARIA_TYPE_PRIMARY", defaultText: "Primary"};const BUTTON_ARIA_TYPE_SECONDARY: I18nText = {key: "BUTTON_ARIA_TYPE_SECONDARY", defaultText: "Secondary"};const BUTTON_ARIA_TYPE_TERTIARY: I18nText = {key: "BUTTON_ARIA_TYPE_TERTIARY", defaultText: "Tertiary"};const BUTTON_ARIA_TYPE_WARNING: I18nText = {key: "BUTTON_ARIA_TYPE_WARNING", defaultText: "Warning"};const BUTTON_ARIA_TYPE_POSITIVE: I18nText = {key: "BUTTON_ARIA_TYPE_POSITIVE", defaultText: "Positive"};const BUTTON_ARIA_TYPE_NEGATIVE: I18nText = {key: "BUTTON_ARIA_TYPE_NEGATIVE", defaultText: "Negative"};const BUTTON_ARIA_EMPHASIZED: I18nText = {key: "BUTTON_ARIA_EMPHASIZED", defaultText: "Emphasized"};const BUTTON_ARIA_DEFAULT: I18nText = {key: "BUTTON_ARIA_DEFAULT", defaultText: "Default"};const BUTTON_ARIA_TRANSPARENT: I18nText = {key: "BUTTON_ARIA_TRANSPARENT", defaultText: "Transparent"};const BUTTON_ARIA_ATTENTION: I18nText = {key: "BUTTON_ARIA_ATTENTION", defaultText: "Attention"};const TOGGLED: I18nText = {key: "TOGGLED", defaultText: "Toggled"};const SUGGESTED_TEXT: I18nText = {key: "SUGGESTED_TEXT", defaultText: "Suggested searches"};const ACCESSIBLE_NAME_RESET_ICON: I18nText = {key: "ACCESSIBLE_NAME_RESET_ICON", defaultText: "Clear"};const ACCESSIBLE_NAME_SEARCH_ICON: I18nText = {key: "ACCESSIBLE_NAME_SEARCH_ICON", defaultText: "Search"};const TOOLTIP_RESET_BUTTON: I18nText = {key: "TOOLTIP_RESET_BUTTON", defaultText: "Clear"};const TOOLTIP_VOICE_BUTTON: I18nText = {key: "TOOLTIP_VOICE_BUTTON", defaultText: "Voice"};const TOOLTIP_SUBMIT_BUTTON: I18nText = {key: "TOOLTIP_SUBMIT_BUTTON", defaultText: "Submit"};const LISTENING: I18nText = {key: "LISTENING", defaultText: "Listening"};const AVAILABLE_VALUES: I18nText = {key: "AVAILABLE_VALUES", defaultText: "Available Values"};const RECOMMENDED_TEXT: I18nText = {key: "RECOMMENDED_TEXT", defaultText: "Recommended pages"};const EXPAND_ALL: I18nText = {key: "EXPAND_ALL", defaultText: "Expand All"};const COLLAPSE_ALL: I18nText = {key: "COLLAPSE_ALL", defaultText: "Collapse All"};const MORE: I18nText = {key: "MORE", defaultText: "More"};const ATTENTION_BADGE: I18nText = {key: "ATTENTION_BADGE", defaultText: "Attention badge"};const REVIEWS: I18nText = {key: "REVIEWS", defaultText: "reviews"};const STARS: I18nText = {key: "STARS", defaultText: "stars"};const READ_MORE: I18nText = {key: "READ_MORE", defaultText: "Read more"};const READ_LESS: I18nText = {key: "READ_LESS", defaultText: "Read less"};const SHOW_MORE: I18nText = {key: "SHOW_MORE", defaultText: "Show more"};const SHOW_LESS: I18nText = {key: "SHOW_LESS", defaultText: "Show less"};const RATING_INDICATOR_TEXT: I18nText = {key: "RATING_INDICATOR_TEXT", defaultText: "Rating Indicator"};const RATING_INDICATOR_TOOLTIP_TEXT: I18nText = {key: "RATING_INDICATOR_TOOLTIP_TEXT", defaultText: "Rating"};const RATING_INDICATOR_ARIA_DESCRIPTION: I18nText = {key: "RATING_INDICATOR_ARIA_DESCRIPTION", defaultText: "Required"};const TOTAL: I18nText = {key: "TOTAL", defaultText: "Total"};const RATING_COUNT_TITLE: I18nText = {key: "RATING_COUNT_TITLE", defaultText: "Rating"};const MESSAGE_STRIP_CLOSE_BUTTON: I18nText = {key: "MESSAGE_STRIP_CLOSE_BUTTON", defaultText: "Message Strip Close Button"};const MESSAGE_STRIP_INFORMATION: I18nText = {key: "MESSAGE_STRIP_INFORMATION", defaultText: "Information Bar"};const MESSAGE_STRIP_SUCCESS: I18nText = {key: "MESSAGE_STRIP_SUCCESS", defaultText: "Positive Bar"};const MESSAGE_STRIP_WARNING: I18nText = {key: "MESSAGE_STRIP_WARNING", defaultText: "Warning Bar"};const MESSAGE_STRIP_ERROR: I18nText = {key: "MESSAGE_STRIP_ERROR", defaultText: "Negative Bar"};const MESSAGE_STRIP_ACTION: I18nText = {key: "MESSAGE_STRIP_ACTION", defaultText: "Action Bar"};const ARIA_LABEL_LIST_MULTISELECTABLE: I18nText = {key: "ARIA_LABEL_LIST_MULTISELECTABLE", defaultText: "Contains Multi-Selectable Items"};const ARIA_LABEL_LIST_SELECTABLE: I18nText = {key: "ARIA_LABEL_LIST_SELECTABLE", defaultText: "Contains Selectable Items"};const UNSELECTED: I18nText = {key: "UNSELECTED", defaultText: "Unselected"};const INDETERMINATE: I18nText = {key: "INDETERMINATE", defaultText: "Indeterminate"};const EDIT_BUTTON: I18nText = {key: "EDIT_BUTTON", defaultText: "Edit"};const DELETE_BUTTON: I18nText = {key: "DELETE_BUTTON", defaultText: "Delete"};const TEXTAREA_CHARACTERS_LEFT: I18nText = {key: "TEXTAREA_CHARACTERS_LEFT", defaultText: "{0} characters remaining"};const VALUE_STATE_TYPE_ERROR: I18nText = {key: "VALUE_STATE_TYPE_ERROR", defaultText: "Field State Error"};const VALUE_STATE_TYPE_WARNING: I18nText = {key: "VALUE_STATE_TYPE_WARNING", defaultText: "Field State Warning"};const VALUE_STATE_TYPE_SUCCESS: I18nText = {key: "VALUE_STATE_TYPE_SUCCESS", defaultText: "Field State Success"};const VALUE_STATE_TYPE_STANDARD: I18nText = {key: "VALUE_STATE_TYPE_STANDARD", defaultText: "Field State Standard"};const TEXT_FIELD: I18nText = {key: "TEXT_FIELD", defaultText: "Text field"};const CAROUSEL_PREVIOUS_ARROW_TEXT: I18nText = {key: "CAROUSEL_PREVIOUS_ARROW_TEXT", defaultText: "Previous Page"};const CAROUSEL_NEXT_ARROW_TEXT: I18nText = {key: "CAROUSEL_NEXT_ARROW_TEXT", defaultText: "Next Page"};const SHOW_RESULTS: I18nText = {key: "SHOW_RESULTS", defaultText: "Show Results"};const RESET: I18nText = {key: "RESET", defaultText: "Reset"};const LOCATION: I18nText = {key: "LOCATION", defaultText: "Location"};const SELECT_OPTIONS: I18nText = {key: "SELECT_OPTIONS", defaultText: "Select Options"};const SELECT_ALL: I18nText = {key: "SELECT_ALL", defaultText: "Select All"};const BREADCRUMBS_ARIA_LABEL: I18nText = {key: "BREADCRUMBS_ARIA_LABEL", defaultText: "Breadcrumb Trail"};const BREADCRUMBS_OVERFLOW_ARIA_LABEL: I18nText = {key: "BREADCRUMBS_OVERFLOW_ARIA_LABEL", defaultText: "More"};const STEPINPUT_INC_ICON_TITLE: I18nText = {key: "STEPINPUT_INC_ICON_TITLE", defaultText: "Increase by"};const STEPINPUT_DEC_ICON_TITLE: I18nText = {key: "STEPINPUT_DEC_ICON_TITLE", defaultText: "Decrease by"};const NO_MATCHES_FOUND: I18nText = {key: "NO_MATCHES_FOUND", defaultText: "No matches found."};const RESULT_RETURNED: I18nText = {key: "RESULT_RETURNED", defaultText: "results returned."};const VALUE_STATE_ERROR: I18nText = {key: "VALUE_STATE_ERROR", defaultText: "Invalid entry"};const VALUE_STATE_WARNING: I18nText = {key: "VALUE_STATE_WARNING", defaultText: "Warning issued"};const VALUE_STATE_INFORMATION: I18nText = {key: "VALUE_STATE_INFORMATION", defaultText: "Informative entry"};const VALUE_STATE_SUCCESS: I18nText = {key: "VALUE_STATE_SUCCESS", defaultText: "Entry successfully validated"};const READ_ONLY: I18nText = {key: "READ_ONLY", defaultText: "Read only"};const MAIN_LINKS: I18nText = {key: "MAIN_LINKS", defaultText: "main links"};const BACK_TO_REGION_LIST: I18nText = {key: "BACK_TO_REGION_LIST", defaultText: "back to region list"};const OPENS_IN_A_NEW_WINDOW: I18nText = {key: "OPENS_IN_A_NEW_WINDOW", defaultText: "opens in a new window"};const LOGOUT: I18nText = {key: "LOGOUT", defaultText: "Logout"};const PROFILE: I18nText = {key: "PROFILE", defaultText: "Profile"};const SWITCH_ACCOUNT: I18nText = {key: "SWITCH_ACCOUNT", defaultText: "Switch account"};const BACK: I18nText = {key: "BACK", defaultText: "Back"};const OTHER_IDENTITIES: I18nText = {key: "OTHER_IDENTITIES", defaultText: "Other identities"};const ADD_OR_REMOVE_ACCOUNT: I18nText = {key: "ADD_OR_REMOVE_ACCOUNT", defaultText: "Add or remove account"};const COUNTRY_SELECT: I18nText = {key: "COUNTRY_SELECT", defaultText: "Select country"};const OVERVIEW: I18nText = {key: "OVERVIEW", defaultText: "Overview"};const CART: I18nText = {key: "CART", defaultText: "Cart"};const COUNTRY_SELECTOR: I18nText = {key: "COUNTRY_SELECTOR", defaultText: "Country Selector"};const SUPPORT: I18nText = {key: "SUPPORT", defaultText: "Support"};const SEARCH: I18nText = {key: "SEARCH", defaultText: "Search"};const SHOW_HIDE_PASSWORD: I18nText = {key: "SHOW_HIDE_PASSWORD", defaultText: "Show/Hide Password Button"};const PHONE_NUMBER: I18nText = {key: "PHONE_NUMBER", defaultText: "Phone number"};const CONTACT_US: I18nText = {key: "CONTACT_US", defaultText: "Contact us"};const EMAIL: I18nText = {key: "EMAIL", defaultText: "Email"};const CHAT_WITH_US: I18nText = {key: "CHAT_WITH_US", defaultText: "Chat with us"};const QUICK_LINKS: I18nText = {key: "QUICK_LINKS", defaultText: "Quick Links"};const TRENDING: I18nText = {key: "TRENDING", defaultText: "Trending"};const ABOUT_SAP: I18nText = {key: "ABOUT_SAP", defaultText: "About SAP"};const SITE_INFORMATION: I18nText = {key: "SITE_INFORMATION", defaultText: "Site Information"};const SEE_COMPLETE_LIST: I18nText = {key: "SEE_COMPLETE_LIST", defaultText: "Or see our complete list of"};const LOCAL_COUNTRY_NAMES: I18nText = {key: "LOCAL_COUNTRY_NAMES", defaultText: "local country numbers"};const COPYRIGHT: I18nText = {key: "COPYRIGHT", defaultText: "© {0} SAP SE or an SAP affiliate company. All rights reserved."};const BACK_TO_TOP: I18nText = {key: "BACK_TO_TOP", defaultText: "Back to top"};const PUBLIC_SECURITY_NETWORK_NUMBER: I18nText = {key: "PUBLIC_SECURITY_NETWORK_NUMBER", defaultText: ""};const ICP_NUMBER: I18nText = {key: "ICP_NUMBER", defaultText: ""};const AVATAR_TEXT: I18nText = {key: "AVATAR_TEXT", defaultText: "Avatar"};const DISABLED: I18nText = {key: "DISABLED", defaultText: "Disabled"};const STATUS_BADGE_TEXT: I18nText = {key: "STATUS_BADGE_TEXT", defaultText: "Status Badge"};const STATUS_BADGE_EDIT_TITLE: I18nText = {key: "STATUS_BADGE_EDIT_TITLE", defaultText: "Click to edit profile"};const STATUS_BADGE_INFORMATION_TITLE: I18nText = {key: "STATUS_BADGE_INFORMATION_TITLE", defaultText: "Click to open profile information"};const STATUS_BADGE_WARNING_TITLE: I18nText = {key: "STATUS_BADGE_WARNING_TITLE", defaultText: "Warning, potential risk with the profile"};const STATUS_BADGE_ERROR_TITLE: I18nText = {key: "STATUS_BADGE_ERROR_TITLE", defaultText: "There is an error with the profile"};const STATUS_BADGE_SUCCESS_TITLE: I18nText = {key: "STATUS_BADGE_SUCCESS_TITLE", defaultText: "Successfully verified profile"};const CALENDAR_ICON: I18nText = {key: "CALENDAR_ICON", defaultText: "Open Calendar icon"};const DATEPICKER_DATE_DESCRIPTION: I18nText = {key: "DATEPICKER_DATE_DESCRIPTION", defaultText: "Date Input"};const TABLE_NO_DATA_FOUND: I18nText = {key: "TABLE_NO_DATA_FOUND", defaultText: "No data found"};const LIST_ITEM_EDIT_ICON: I18nText = {key: "LIST_ITEM_EDIT_ICON", defaultText: "Edit list item entry"};const LIST_ITEM_DELETE_ICON: I18nText = {key: "LIST_ITEM_DELETE_ICON", defaultText: "Delete list item entry"};const EXPAND: I18nText = {key: "EXPAND", defaultText: "Expand"};const COLLAPSE: I18nText = {key: "COLLAPSE", defaultText: "Collapse"};const BACK_BUTTON_LABEL: I18nText = {key: "BACK_BUTTON_LABEL", defaultText: "back button label"};const TRIGGER: I18nText = {key: "TRIGGER", defaultText: "Dropdown trigger"};const UPLOADING_FILE_STATUS_TEXT: I18nText = {key: "UPLOADING_FILE_STATUS_TEXT", defaultText: "Uploading"};const TERMINATED_FILE_STATUS_TEXT: I18nText = {key: "TERMINATED_FILE_STATUS_TEXT", defaultText: "Terminated"};const REMOVE_FILE_TEXT: I18nText = {key: "REMOVE_FILE_TEXT", defaultText: "Remove file"};const UPLOAD_BUTTON_LABEL: I18nText = {key: "UPLOAD_BUTTON_LABEL", defaultText: "Upload file"};const COMPLETE_LIST_OF: I18nText = {key: "COMPLETE_LIST_OF", defaultText: "Complete list of"};const CALL_US_TODAY: I18nText = {key: "CALL_US_TODAY", defaultText: "Call us today!"};const SOCIAL_MEDIA_BUTTON: I18nText = {key: "SOCIAL_MEDIA_BUTTON", defaultText: "Social Media Button"};const PROMO_TILE: I18nText = {key: "PROMO_TILE", defaultText: "Promo Tile"};const PROMO_TILE_ICON: I18nText = {key: "PROMO_TILE_ICON", defaultText: "Promo Tile Icon"};const PLAY_BUTTON_ACCESSIBLE_NAME: I18nText = {key: "PLAY_BUTTON_ACCESSIBLE_NAME", defaultText: "Start button to begin customer logos rotation"};const PAUSE_BUTTON_ACCESSIBLE_NAME: I18nText = {key: "PAUSE_BUTTON_ACCESSIBLE_NAME", defaultText: "Pause button to stop customer logos rotation"};const TOAST_CLOSE_ACCESSIBLE_NAME: I18nText = {key: "TOAST_CLOSE_ACCESSIBLE_NAME", defaultText: "Close"};
3
+ export {COUNT,OF,PAGINATION_PAGE,SELECTED,FIRST_PAGE,LAST_PAGE,PREVIOUS_PAGE,NEXT_PAGE,CURRENT_PAGE,ACTIVATE_PAGE,BUTTON_ARIA_TYPE_PRIMARY,BUTTON_ARIA_TYPE_SECONDARY,BUTTON_ARIA_TYPE_TERTIARY,BUTTON_ARIA_TYPE_WARNING,BUTTON_ARIA_TYPE_POSITIVE,BUTTON_ARIA_TYPE_NEGATIVE,BUTTON_ARIA_EMPHASIZED,BUTTON_ARIA_DEFAULT,BUTTON_ARIA_TRANSPARENT,BUTTON_ARIA_ATTENTION,TOGGLED,SUGGESTED_TEXT,ACCESSIBLE_NAME_RESET_ICON,ACCESSIBLE_NAME_SEARCH_ICON,TOOLTIP_RESET_BUTTON,TOOLTIP_VOICE_BUTTON,TOOLTIP_SUBMIT_BUTTON,LISTENING,AVAILABLE_VALUES,RECOMMENDED_TEXT,EXPAND_ALL,COLLAPSE_ALL,MORE,ATTENTION_BADGE,REVIEWS,STARS,READ_MORE,READ_LESS,SHOW_MORE,SHOW_LESS,RATING_INDICATOR_TEXT,RATING_INDICATOR_TOOLTIP_TEXT,RATING_INDICATOR_ARIA_DESCRIPTION,TOTAL,RATING_COUNT_TITLE,MESSAGE_STRIP_CLOSE_BUTTON,MESSAGE_STRIP_INFORMATION,MESSAGE_STRIP_SUCCESS,MESSAGE_STRIP_WARNING,MESSAGE_STRIP_ERROR,MESSAGE_STRIP_ACTION,ARIA_LABEL_LIST_MULTISELECTABLE,ARIA_LABEL_LIST_SELECTABLE,UNSELECTED,INDETERMINATE,EDIT_BUTTON,DELETE_BUTTON,TEXTAREA_CHARACTERS_LEFT,VALUE_STATE_TYPE_ERROR,VALUE_STATE_TYPE_WARNING,VALUE_STATE_TYPE_SUCCESS,VALUE_STATE_TYPE_STANDARD,TEXT_FIELD,CAROUSEL_PREVIOUS_ARROW_TEXT,CAROUSEL_NEXT_ARROW_TEXT,SHOW_RESULTS,RESET,LOCATION,SELECT_OPTIONS,SELECT_ALL,BREADCRUMBS_ARIA_LABEL,BREADCRUMBS_OVERFLOW_ARIA_LABEL,STEPINPUT_INC_ICON_TITLE,STEPINPUT_DEC_ICON_TITLE,NO_MATCHES_FOUND,RESULT_RETURNED,VALUE_STATE_ERROR,VALUE_STATE_WARNING,VALUE_STATE_INFORMATION,VALUE_STATE_SUCCESS,READ_ONLY,MAIN_LINKS,BACK_TO_REGION_LIST,OPENS_IN_A_NEW_WINDOW,LOGOUT,PROFILE,SWITCH_ACCOUNT,BACK,OTHER_IDENTITIES,ADD_OR_REMOVE_ACCOUNT,COUNTRY_SELECT,OVERVIEW,CART,COUNTRY_SELECTOR,SUPPORT,SEARCH,SHOW_HIDE_PASSWORD,PHONE_NUMBER,CONTACT_US,EMAIL,CHAT_WITH_US,QUICK_LINKS,TRENDING,ABOUT_SAP,SITE_INFORMATION,SEE_COMPLETE_LIST,LOCAL_COUNTRY_NAMES,COPYRIGHT,BACK_TO_TOP,PUBLIC_SECURITY_NETWORK_NUMBER,ICP_NUMBER,AVATAR_TEXT,DISABLED,STATUS_BADGE_TEXT,STATUS_BADGE_EDIT_TITLE,STATUS_BADGE_INFORMATION_TITLE,STATUS_BADGE_WARNING_TITLE,STATUS_BADGE_ERROR_TITLE,STATUS_BADGE_SUCCESS_TITLE,CALENDAR_ICON,DATEPICKER_DATE_DESCRIPTION,TABLE_NO_DATA_FOUND,LIST_ITEM_EDIT_ICON,LIST_ITEM_DELETE_ICON,EXPAND,COLLAPSE,BACK_BUTTON_LABEL,TRIGGER,UPLOADING_FILE_STATUS_TEXT,TERMINATED_FILE_STATUS_TEXT,REMOVE_FILE_TEXT,UPLOAD_BUTTON_LABEL,COMPLETE_LIST_OF,CALL_US_TODAY,SOCIAL_MEDIA_BUTTON,PROMO_TILE,PROMO_TILE_ICON,PLAY_BUTTON_ACCESSIBLE_NAME,PAUSE_BUTTON_ACCESSIBLE_NAME,TOAST_CLOSE_ACCESSIBLE_NAME};
@@ -5,16 +5,23 @@ import type UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
5
5
  import type ListGroupHeader from "../../ListGroupHeader.js";
6
6
  import type { ClassMapValue } from "@ui5/webcomponents-base/dist/types.js";
7
7
 
8
- function block0 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<div part="item" class="udex-list__group" role="group" aria-labelledby="group-heading"><div role="listbox" class="udex-list__group-list" name="group" aria-label="group" @ui5-item-press="${ifDefined(this.getHandleGroupItemsClick)}">${ this.modeMultiSelectOrRadioGroup ? block1.call(this, context, tags, suffix) : block5.call(this, context, tags, suffix) }<slot></slot></div></div> `;}
9
- function block1 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`${ this.isNonActiveHeader ? block2.call(this, context, tags, suffix) : block4.call(this, context, tags, suffix) }`;}
10
- function block2 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<header id="group-heading" class="udex-list__inactive-header"><span class="udex-list__header-title">${ifDefined(this.label)}</span>${ this.supportingText ? block3.call(this, context, tags, suffix) : undefined }</header>`;}
11
- function block3 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<span class="udex-list__supporting-text ">${ifDefined(this.supportingText)}</span>`;}
12
- function block4 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("udex-list-item", tags, suffix)} id="group-heading" _additional-class-name="${ifDefined(this._additionalClassName)}" ?selected="${this.selected}" _tab-index="${ifDefined(this._effectiveTabIndex)}" ?indeterminate="${this.indeterminate}" part="group-item" role="none" class="${ifDefined(this.className)}" mode="${ifDefined(this.mode)}" ?controlled="${this.controlled}" supporting-text="${ifDefined(this.supportingText)}" @click="${this.handleHeaderPress}" @keydown="${this.handleKeyDownPress}" type="${ifDefined(this.type)}" label="${ifDefined(this.label)}" _icon="${ifDefined(this._icon)}" size="${ifDefined(this.size)}"></${scopeTag("udex-list-item", tags, suffix)}>` : html`<udex-list-item id="group-heading" _additional-class-name="${ifDefined(this._additionalClassName)}" ?selected="${this.selected}" _tab-index="${ifDefined(this._effectiveTabIndex)}" ?indeterminate="${this.indeterminate}" part="group-item" role="none" class="${ifDefined(this.className)}" mode="${ifDefined(this.mode)}" ?controlled="${this.controlled}" supporting-text="${ifDefined(this.supportingText)}" @click="${this.handleHeaderPress}" @keydown="${this.handleKeyDownPress}" type="${ifDefined(this.type)}" label="${ifDefined(this.label)}" _icon="${ifDefined(this._icon)}" size="${ifDefined(this.size)}"></udex-list-item>`;}
13
- function block5 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<div class="udex-list__group-content ${ifDefined(this.sizeClass)}" part="group-item">${ this.typeNumber ? block6.call(this, context, tags, suffix) : undefined }${ this.typeCircle ? block7.call(this, context, tags, suffix) : undefined }${ this.typeIcon ? block8.call(this, context, tags, suffix) : undefined }<div class="udex-list__header"><span id="group-heading" class="udex-list__header-title">${ifDefined(this.label)}</span>${ this.supportingText ? block9.call(this, context, tags, suffix) : undefined }</div></div>`;}
14
- function block6 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<span class="udex-list__number">${ifDefined(this.numberOfItem)}.</span>`;}
15
- function block7 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<span class="udex-list__circle">&#x2022;</span>`;}
16
- function block8 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("ui5-icon", tags, suffix)} class="udex-list__icon" name="${ifDefined(this._icon)}" accessible-role="presentation" aria-hidden="true" part="icon"></${scopeTag("ui5-icon", tags, suffix)}>` : html`<ui5-icon class="udex-list__icon" name="${ifDefined(this._icon)}" accessible-role="presentation" aria-hidden="true" part="icon"></ui5-icon>`;}
17
- function block9 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<span class="udex-list__supporting-text ${ifDefined(this.sizeClass)}">${ifDefined(this.supportingText)}</span>`;}
8
+ function block0 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<div part="item" class="udex-list__group" role="group" aria-labelledby="group-heading">${ this.collapsible ? block1.call(this, context, tags, suffix) : block9.call(this, context, tags, suffix) }</div> `;}
9
+ function block1 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<div class="udex-list__group-list" name="group" @ui5-item-press="${ifDefined(this.getHandleGroupItemsClick)}">${ this.modeMultiSelectOrRadioGroup ? block2.call(this, context, tags, suffix) : block6.call(this, context, tags, suffix) }<div id="${ifDefined(this.ariaControlsId)}" role="region" class="udex-list__group-list__content"><div role="listbox" aria-label="group"><slot></slot></div></div></div>`;}
10
+ function block2 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`${ this.isNonActiveHeader ? block3.call(this, context, tags, suffix) : block5.call(this, context, tags, suffix) }`;}
11
+ function block3 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<header role="button" id="group-heading" class="udex-list__inactive-header udex-list__group-header-wrap " tabindex="${ifDefined(this._effectiveTabIndex)}" aria-expanded="${ifDefined(this.expanded)}" aria-controls="${ifDefined(this.ariaControlsId)}"><div class="udex-list__inactive-header-content"><span class="udex-list__header-title">${ifDefined(this.label)}</span>${ this.supportingText ? block4.call(this, context, tags, suffix) : undefined }</div><div class="udex-list__group-heading__icon-wrapper"><${scopeTag("udex-button", tags, suffix)} size="Small" design="Tertiary" class="udex-list__group-heading__icon" @click="${this.handleCollapseIconClick}" tabindex="-1" accessible-name="${ifDefined(this.expandButtonAccessibleName)}" mode="Interactive" icon="slim-arrow-right"></${scopeTag("udex-button", tags, suffix)}></div></header>` : html`<header role="button" id="group-heading" class="udex-list__inactive-header udex-list__group-header-wrap " tabindex="${ifDefined(this._effectiveTabIndex)}" aria-expanded="${ifDefined(this.expanded)}" aria-controls="${ifDefined(this.ariaControlsId)}"><div class="udex-list__inactive-header-content"><span class="udex-list__header-title">${ifDefined(this.label)}</span>${ this.supportingText ? block4.call(this, context, tags, suffix) : undefined }</div><div class="udex-list__group-heading__icon-wrapper"><udex-button size="Small" design="Tertiary" class="udex-list__group-heading__icon" @click="${this.handleCollapseIconClick}" tabindex="-1" accessible-name="${ifDefined(this.expandButtonAccessibleName)}" mode="Interactive" icon="slim-arrow-right"></udex-button></div></header>`;}
12
+ function block4 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<span class="udex-list__supporting-text ">${ifDefined(this.supportingText)}</span>`;}
13
+ function block5 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("udex-list-item", tags, suffix)} id="group-heading" aria-expanded="${ifDefined(this.expanded)}" aria-controls="${ifDefined(this.ariaControlsId)}" accessible-role="button" _additional-class-name="${ifDefined(this._additionalClassName)}" ?selected="${this.selected}" _tab-index="${ifDefined(this._effectiveTabIndex)}" ?indeterminate="${this.indeterminate}" collapsible=${ifDefined(this.collapsible)} ?collapsed=${this.collapsed} ?_filtered="${ifDefined(this._filtered)}" part="group-item" role="none" class="${ifDefined(this.className)}" mode="${ifDefined(this.mode)}" ?controlled="${this.controlled}" supporting-text="${ifDefined(this.supportingText)}" @click="${this.handleHeaderPress}" @keydown="${this.handleKeyDownPress}" @accordion-icon-click="${this.handleCollapseIconClick}" type="${ifDefined(this.type)}" label="${ifDefined(this.label)}" _icon="${ifDefined(this._icon)}" size="${ifDefined(this.size)}"></${scopeTag("udex-list-item", tags, suffix)}>` : html`<udex-list-item id="group-heading" aria-expanded="${ifDefined(this.expanded)}" aria-controls="${ifDefined(this.ariaControlsId)}" accessible-role="button" _additional-class-name="${ifDefined(this._additionalClassName)}" ?selected="${this.selected}" _tab-index="${ifDefined(this._effectiveTabIndex)}" ?indeterminate="${this.indeterminate}" collapsible=${ifDefined(this.collapsible)} ?collapsed=${this.collapsed} ?_filtered="${ifDefined(this._filtered)}" part="group-item" role="none" class="${ifDefined(this.className)}" mode="${ifDefined(this.mode)}" ?controlled="${this.controlled}" supporting-text="${ifDefined(this.supportingText)}" @click="${this.handleHeaderPress}" @keydown="${this.handleKeyDownPress}" @accordion-icon-click="${this.handleCollapseIconClick}" type="${ifDefined(this.type)}" label="${ifDefined(this.label)}" _icon="${ifDefined(this._icon)}" size="${ifDefined(this.size)}"></udex-list-item>`;}
14
+ function block6 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<div class="udex-list__group-content udex-list__group-header-wrap ${ifDefined(this.sizeClass)}" part="group-item" id="${ifDefined(this._id)}_group-content__focusable" role="button" tabindex="0" @keydown="${this.handleKeyDown}" _tab-index="${ifDefined(this._effectiveTabIndex)}" aria-expanded="${ifDefined(this.expanded)}" aria-controls="${ifDefined(this.ariaControlsId)}">${ this.typeIcon ? block7.call(this, context, tags, suffix) : undefined }<div class="udex-list__header"><span id="group-heading" class="udex-list__header-title">${ifDefined(this.label)}</span>${ this.supportingText ? block8.call(this, context, tags, suffix) : undefined }</div><div class="udex-list__group-heading__icon-wrapper"><${scopeTag("udex-button", tags, suffix)} size="Small" design="Tertiary" class="udex-list__group-heading__icon" @click="${this.handleCollapseIconClick}" tabindex="-1" accessible-name="${ifDefined(this.expandButtonAccessibleName)}" mode="Interactive" icon="slim-arrow-right"></${scopeTag("udex-button", tags, suffix)}></div></div>` : html`<div class="udex-list__group-content udex-list__group-header-wrap ${ifDefined(this.sizeClass)}" part="group-item" id="${ifDefined(this._id)}_group-content__focusable" role="button" tabindex="0" @keydown="${this.handleKeyDown}" _tab-index="${ifDefined(this._effectiveTabIndex)}" aria-expanded="${ifDefined(this.expanded)}" aria-controls="${ifDefined(this.ariaControlsId)}">${ this.typeIcon ? block7.call(this, context, tags, suffix) : undefined }<div class="udex-list__header"><span id="group-heading" class="udex-list__header-title">${ifDefined(this.label)}</span>${ this.supportingText ? block8.call(this, context, tags, suffix) : undefined }</div><div class="udex-list__group-heading__icon-wrapper"><udex-button size="Small" design="Tertiary" class="udex-list__group-heading__icon" @click="${this.handleCollapseIconClick}" tabindex="-1" accessible-name="${ifDefined(this.expandButtonAccessibleName)}" mode="Interactive" icon="slim-arrow-right"></udex-button></div></div>`;}
15
+ function block7 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("ui5-icon", tags, suffix)} class="udex-list__icon" name="${ifDefined(this._icon)}" accessible-role="presentation" aria-hidden="true" part="icon"></${scopeTag("ui5-icon", tags, suffix)}>` : html`<ui5-icon class="udex-list__icon" name="${ifDefined(this._icon)}" accessible-role="presentation" aria-hidden="true" part="icon"></ui5-icon>`;}
16
+ function block8 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<span class="udex-list__supporting-text ${ifDefined(this.sizeClass)}">${ifDefined(this.supportingText)}</span>`;}
17
+ function block9 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<div role="listbox" class="udex-list__group-list" name="group" aria-label="group" @ui5-item-press="${ifDefined(this.getHandleGroupItemsClick)}">${ this.modeMultiSelectOrRadioGroup ? block10.call(this, context, tags, suffix) : block14.call(this, context, tags, suffix) }<slot></slot></div>`;}
18
+ function block10 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`${ this.isNonActiveHeader ? block11.call(this, context, tags, suffix) : block13.call(this, context, tags, suffix) }`;}
19
+ function block11 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<header id="group-heading" class="udex-list__inactive-header udex-list__group-header-wrap"><div class="udex-list__inactive-header-content"><span class="udex-list__header-title">${ifDefined(this.label)}</span>${ this.supportingText ? block12.call(this, context, tags, suffix) : undefined }</div></header>`;}
20
+ function block12 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<span class="udex-list__supporting-text">${ifDefined(this.supportingText)}</span>`;}
21
+ function block13 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("udex-list-item", tags, suffix)} id="group-heading" _additional-class-name="${ifDefined(this._additionalClassName)}" ?selected="${this.selected}" _tab-index="${ifDefined(this._effectiveTabIndex)}" ?indeterminate="${this.indeterminate}" ?_filtered="${ifDefined(this._filtered)}" part="group-item" role="none" class="${ifDefined(this.className)}" mode="${ifDefined(this.mode)}" ?controlled="${this.controlled}" supporting-text="${ifDefined(this.supportingText)}" @click="${this.handleHeaderPress}" @keydown="${this.handleKeyDownPress}" type="${ifDefined(this.type)}" label="${ifDefined(this.label)}" _icon="${ifDefined(this._icon)}" size="${ifDefined(this.size)}"></${scopeTag("udex-list-item", tags, suffix)}>` : html`<udex-list-item id="group-heading" _additional-class-name="${ifDefined(this._additionalClassName)}" ?selected="${this.selected}" _tab-index="${ifDefined(this._effectiveTabIndex)}" ?indeterminate="${this.indeterminate}" ?_filtered="${ifDefined(this._filtered)}" part="group-item" role="none" class="${ifDefined(this.className)}" mode="${ifDefined(this.mode)}" ?controlled="${this.controlled}" supporting-text="${ifDefined(this.supportingText)}" @click="${this.handleHeaderPress}" @keydown="${this.handleKeyDownPress}" type="${ifDefined(this.type)}" label="${ifDefined(this.label)}" _icon="${ifDefined(this._icon)}" size="${ifDefined(this.size)}"></udex-list-item>`;}
22
+ function block14 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<div class="udex-list__group-content udex-list__group-header-wrap ${ifDefined(this.sizeClass)}" part="group-item">${ this.typeIcon ? block15.call(this, context, tags, suffix) : undefined }<div class="udex-list__header"><span id="group-heading" class="udex-list__header-title">${ifDefined(this.label)}</span>${ this.supportingText ? block16.call(this, context, tags, suffix) : undefined }</div></div>`;}
23
+ function block15 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("ui5-icon", tags, suffix)} class="udex-list__icon" name="${ifDefined(this._icon)}" accessible-role="presentation" aria-hidden="true" part="icon"></${scopeTag("ui5-icon", tags, suffix)}>` : html`<ui5-icon class="udex-list__icon" name="${ifDefined(this._icon)}" accessible-role="presentation" aria-hidden="true" part="icon"></ui5-icon>`;}
24
+ function block16 (this: ListGroupHeader, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<span class="udex-list__supporting-text ${ifDefined(this.sizeClass)}">${ifDefined(this.supportingText)}</span>`;}
18
25
 
19
26
  function template(this: ListGroupHeader) { return block0.call(this, this, (this.constructor as typeof UI5Element).tagsToScope, getCustomElementsScopingSuffix()); }
20
27
  export default template;