@sapudex/web-components 2.1.1 → 2.2.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 (264) hide show
  1. package/cypress/specs/ListItem.cy.tsx +4 -4
  2. package/cypress/specs/SecondaryNavigationDesktop.cy.tsx +28 -37
  3. package/cypress/specs/Slider.cy.tsx +4 -3
  4. package/dist/Badge.d.ts +2 -2
  5. package/dist/Badge.js +4 -4
  6. package/dist/Badge.js.map +1 -1
  7. package/dist/Breadcrumbs.d.ts +1 -0
  8. package/dist/Breadcrumbs.js +11 -1
  9. package/dist/Breadcrumbs.js.map +1 -1
  10. package/dist/Button.d.ts +12 -1
  11. package/dist/Button.js +12 -1
  12. package/dist/Button.js.map +1 -1
  13. package/dist/Checkbox.d.ts +1 -0
  14. package/dist/Checkbox.js +3 -0
  15. package/dist/Checkbox.js.map +1 -1
  16. package/dist/ControlButton.d.ts +2 -1
  17. package/dist/ControlButton.js +2 -1
  18. package/dist/ControlButton.js.map +1 -1
  19. package/dist/DatePicker.d.ts +2 -2
  20. package/dist/DatePicker.js.map +1 -1
  21. package/dist/InputGroup.d.ts +5 -2
  22. package/dist/InputGroup.js +6 -0
  23. package/dist/InputGroup.js.map +1 -1
  24. package/dist/ListItem.d.ts +3 -2
  25. package/dist/ListItem.js +2 -2
  26. package/dist/ListItem.js.map +1 -1
  27. package/dist/MastheadItem.js +1 -1
  28. package/dist/MastheadItem.js.map +1 -1
  29. package/dist/MediaPlayer.d.ts +2 -1
  30. package/dist/MediaPlayer.js.map +1 -1
  31. package/dist/MediaPlayerYoutube.d.ts +2 -1
  32. package/dist/MediaPlayerYoutube.js.map +1 -1
  33. package/dist/Pagination.d.ts +1 -1
  34. package/dist/Pagination.js.map +1 -1
  35. package/dist/PhoneNumberField.d.ts +5 -2
  36. package/dist/PhoneNumberField.js +7 -1
  37. package/dist/PhoneNumberField.js.map +1 -1
  38. package/dist/ProgressBar.d.ts +2 -2
  39. package/dist/ProgressBar.js +6 -6
  40. package/dist/ProgressBar.js.map +1 -1
  41. package/dist/RadioButton.d.ts +2 -2
  42. package/dist/RadioButton.js +6 -6
  43. package/dist/RadioButton.js.map +1 -1
  44. package/dist/Search.d.ts +0 -1
  45. package/dist/Search.js +1 -3
  46. package/dist/Search.js.map +1 -1
  47. package/dist/SecondaryNavigation.d.ts +4 -1
  48. package/dist/SecondaryNavigation.js +38 -10
  49. package/dist/SecondaryNavigation.js.map +1 -1
  50. package/dist/SecondaryNavigationItem.d.ts +10 -0
  51. package/dist/SecondaryNavigationItem.js +19 -0
  52. package/dist/SecondaryNavigationItem.js.map +1 -1
  53. package/dist/SecondaryNavigationItemBase.d.ts +1 -0
  54. package/dist/SecondaryNavigationItemBase.js +4 -0
  55. package/dist/SecondaryNavigationItemBase.js.map +1 -1
  56. package/dist/SecondaryNavigationSubItem.d.ts +0 -1
  57. package/dist/SecondaryNavigationSubItem.js +0 -4
  58. package/dist/SecondaryNavigationSubItem.js.map +1 -1
  59. package/dist/SegmentedButton.d.ts +1 -1
  60. package/dist/SegmentedButton.js +1 -1
  61. package/dist/SegmentedButton.js.map +1 -1
  62. package/dist/SegmentedButtonItem.d.ts +1 -1
  63. package/dist/SegmentedButtonItem.js +2 -2
  64. package/dist/SegmentedButtonItem.js.map +1 -1
  65. package/dist/StatusBadge.d.ts +8 -3
  66. package/dist/StatusBadge.js +9 -1
  67. package/dist/StatusBadge.js.map +1 -1
  68. package/dist/StepInput.d.ts +3 -3
  69. package/dist/StepInput.js.map +1 -1
  70. package/dist/TableCellBase.d.ts +2 -2
  71. package/dist/TableCellBase.js.map +1 -1
  72. package/dist/Tag.d.ts +2 -2
  73. package/dist/Tag.js +4 -4
  74. package/dist/Tag.js.map +1 -1
  75. package/dist/TextArea.d.ts +2 -2
  76. package/dist/TextArea.js +9 -9
  77. package/dist/TextArea.js.map +1 -1
  78. package/dist/TextField.d.ts +2 -2
  79. package/dist/TextField.js +5 -5
  80. package/dist/TextField.js.map +1 -1
  81. package/dist/Toast.js +1 -1
  82. package/dist/Toast.js.map +1 -1
  83. package/dist/Upload.d.ts +1 -1
  84. package/dist/Upload.js +1 -1
  85. package/dist/Upload.js.map +1 -1
  86. package/dist/UploadItem.d.ts +3 -3
  87. package/dist/UploadItem.js +9 -9
  88. package/dist/UploadItem.js.map +1 -1
  89. package/dist/assets/InputSuggestions-KGCQrV_T.js +2 -0
  90. package/dist/assets/{ListItemStandardExpandableTextTemplate-CLBtdbBK.js → ListItemStandardExpandableTextTemplate-D4zLIdLd.js} +2 -2
  91. package/dist/assets/bundle.esm-Diw1zQ-o.js +384 -0
  92. package/dist/assets/parameters-bundle.css-1GGBOW8m.js +2 -0
  93. package/dist/assets/parameters-bundle.css-A9eeRg2R.js +2 -0
  94. package/dist/assets/parameters-bundle.css-COBI_9-U.js +2 -0
  95. package/dist/assets/parameters-bundle.css-CgAoZ-Ir.js +2 -0
  96. package/dist/assets/parameters-bundle.css-DuFHHRNK.js +2 -0
  97. package/dist/assets/parameters-bundle.css-Pf68NO0T.js +2 -0
  98. package/dist/assets/parameters-bundle.css-aX_t_-9o.js +2 -0
  99. package/dist/assets/parameters-bundle.css-rNSryFKH.js +2 -0
  100. package/dist/css/themes/Breadcrumbs.css +1 -1
  101. package/dist/css/themes/Button.css +1 -1
  102. package/dist/css/themes/ListItem.css +1 -1
  103. package/dist/css/themes/MastheadShell.css +1 -1
  104. package/dist/css/themes/Modal.css +1 -1
  105. package/dist/css/themes/RatingIndicator.css +1 -1
  106. package/dist/css/themes/Search.css +1 -1
  107. package/dist/css/themes/SideNavigationItem.css +1 -1
  108. package/dist/css/themes/SideNavigationSubItem.css +1 -1
  109. package/dist/css/themes/Slider.css +1 -1
  110. package/dist/custom-elements-internal.json +129 -37
  111. package/dist/custom-elements.json +101 -35
  112. package/dist/generated/json-imports/Themes-node.d.ts +1 -0
  113. package/dist/generated/json-imports/Themes-node.js +19 -0
  114. package/dist/generated/json-imports/Themes-node.js.map +1 -0
  115. package/dist/generated/json-imports/i18n-node.d.ts +1 -0
  116. package/dist/generated/json-imports/i18n-node.js +82 -0
  117. package/dist/generated/json-imports/i18n-node.js.map +1 -0
  118. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +1 -1
  119. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js.map +1 -1
  120. package/dist/generated/templates/BreadcrumbsTemplate.lit.js +1 -1
  121. package/dist/generated/templates/BreadcrumbsTemplate.lit.js.map +1 -1
  122. package/dist/generated/templates/SearchTemplate.lit.js +3 -3
  123. package/dist/generated/templates/SearchTemplate.lit.js.map +1 -1
  124. package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js +2 -2
  125. package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js.map +1 -1
  126. package/dist/generated/templates/SecondaryNavigationTemplate.lit.js +1 -1
  127. package/dist/generated/templates/SecondaryNavigationTemplate.lit.js.map +1 -1
  128. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  129. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  130. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  131. package/dist/generated/themes/Button.css.d.ts +1 -1
  132. package/dist/generated/themes/Button.css.js +1 -1
  133. package/dist/generated/themes/Button.css.js.map +1 -1
  134. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  135. package/dist/generated/themes/ListItem.css.js +1 -1
  136. package/dist/generated/themes/ListItem.css.js.map +1 -1
  137. package/dist/generated/themes/MastheadShell.css.d.ts +1 -1
  138. package/dist/generated/themes/MastheadShell.css.js +1 -1
  139. package/dist/generated/themes/MastheadShell.css.js.map +1 -1
  140. package/dist/generated/themes/Modal.css.d.ts +1 -1
  141. package/dist/generated/themes/Modal.css.js +1 -1
  142. package/dist/generated/themes/Modal.css.js.map +1 -1
  143. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  144. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  145. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  146. package/dist/generated/themes/Search.css.d.ts +1 -1
  147. package/dist/generated/themes/Search.css.js +1 -1
  148. package/dist/generated/themes/Search.css.js.map +1 -1
  149. package/dist/generated/themes/SideNavigationItem.css.d.ts +1 -1
  150. package/dist/generated/themes/SideNavigationItem.css.js +1 -1
  151. package/dist/generated/themes/SideNavigationItem.css.js.map +1 -1
  152. package/dist/generated/themes/SideNavigationSubItem.css.d.ts +1 -1
  153. package/dist/generated/themes/SideNavigationSubItem.css.js +1 -1
  154. package/dist/generated/themes/SideNavigationSubItem.css.js.map +1 -1
  155. package/dist/generated/themes/Slider.css.d.ts +1 -1
  156. package/dist/generated/themes/Slider.css.js +1 -1
  157. package/dist/generated/themes/Slider.css.js.map +1 -1
  158. package/dist/types/ButtonAccessibleRole.d.ts +8 -0
  159. package/dist/types/ButtonAccessibleRole.js +10 -0
  160. package/dist/types/ButtonAccessibleRole.js.map +1 -0
  161. package/dist/types/{Button.d.ts → ButtonDesign.d.ts} +1 -15
  162. package/dist/types/ButtonDesign.js +16 -0
  163. package/dist/types/ButtonDesign.js.map +1 -0
  164. package/dist/types/ButtonSize.d.ts +6 -0
  165. package/dist/types/ButtonSize.js +8 -0
  166. package/dist/types/ButtonSize.js.map +1 -0
  167. package/dist/types/ControlButtonDesign.d.ts +10 -0
  168. package/dist/types/ControlButtonDesign.js +12 -0
  169. package/dist/types/ControlButtonDesign.js.map +1 -0
  170. package/dist/types/ProgressBar.d.ts +1 -1
  171. package/dist/types/ProgressBar.js +1 -1
  172. package/dist/types/ProgressBar.js.map +1 -1
  173. package/dist/types/common.d.ts +1 -1
  174. package/dist/types/common.js +1 -1
  175. package/dist/types/common.js.map +1 -1
  176. package/dist/vscode.html-custom-data.json +11 -10
  177. package/dist/web-types.json +10 -13
  178. package/package.json +8 -8
  179. package/src/Badge.ts +4 -4
  180. package/src/Breadcrumbs.hbs +7 -10
  181. package/src/Breadcrumbs.ts +14 -1
  182. package/src/BreadcrumbsPopover.hbs +3 -1
  183. package/src/Button.ts +12 -1
  184. package/src/Checkbox.ts +4 -0
  185. package/src/ControlButton.ts +2 -1
  186. package/src/DatePicker.ts +2 -2
  187. package/src/InputGroup.ts +5 -2
  188. package/src/ListItem.ts +4 -4
  189. package/src/MastheadItem.ts +1 -1
  190. package/src/MediaPlayer.ts +3 -1
  191. package/src/MediaPlayerYoutube.ts +4 -2
  192. package/src/Pagination.ts +1 -1
  193. package/src/PhoneNumberField.ts +6 -3
  194. package/src/ProgressBar.ts +6 -6
  195. package/src/RadioButton.ts +6 -6
  196. package/src/Search.hbs +3 -2
  197. package/src/Search.ts +1 -3
  198. package/src/SecondaryNavigation.hbs +1 -0
  199. package/src/SecondaryNavigation.ts +41 -12
  200. package/src/SecondaryNavigationItem.hbs +2 -1
  201. package/src/SecondaryNavigationItem.ts +31 -0
  202. package/src/SecondaryNavigationItemBase.ts +3 -0
  203. package/src/SecondaryNavigationSubItem.ts +0 -3
  204. package/src/SegmentedButton.ts +1 -1
  205. package/src/SegmentedButtonItem.ts +2 -2
  206. package/src/StatusBadge.ts +8 -3
  207. package/src/StepInput.ts +3 -3
  208. package/src/TableCellBase.ts +2 -2
  209. package/src/Tag.ts +4 -4
  210. package/src/TextArea.ts +9 -9
  211. package/src/TextField.ts +5 -5
  212. package/src/Toast.ts +1 -1
  213. package/src/Upload.ts +1 -1
  214. package/src/UploadItem.ts +9 -9
  215. package/src/generated/json-imports/Themes-node.ts +21 -0
  216. package/src/generated/json-imports/i18n-node.ts +85 -0
  217. package/src/generated/templates/BreadcrumbsPopoverTemplate.lit.ts +1 -1
  218. package/src/generated/templates/BreadcrumbsTemplate.lit.ts +1 -1
  219. package/src/generated/templates/SearchTemplate.lit.ts +3 -3
  220. package/src/generated/templates/SecondaryNavigationItemTemplate.lit.ts +2 -2
  221. package/src/generated/templates/SecondaryNavigationTemplate.lit.ts +1 -1
  222. package/src/generated/themes/Breadcrumbs.css.ts +1 -1
  223. package/src/generated/themes/Button.css.ts +1 -1
  224. package/src/generated/themes/ListItem.css.ts +1 -1
  225. package/src/generated/themes/MastheadShell.css.ts +1 -1
  226. package/src/generated/themes/Modal.css.ts +1 -1
  227. package/src/generated/themes/RatingIndicator.css.ts +1 -1
  228. package/src/generated/themes/Search.css.ts +1 -1
  229. package/src/generated/themes/SideNavigationItem.css.ts +1 -1
  230. package/src/generated/themes/SideNavigationSubItem.css.ts +1 -1
  231. package/src/generated/themes/Slider.css.ts +1 -1
  232. package/src/themes/Breadcrumbs.css +3 -0
  233. package/src/themes/Button.css +2 -2
  234. package/src/themes/ListItem.css +4 -0
  235. package/src/themes/MastheadShell.css +2 -1
  236. package/src/themes/Modal.css +2 -1
  237. package/src/themes/Search.css +8 -1
  238. package/src/themes/SideNavigationItem.css +9 -1
  239. package/src/themes/SideNavigationSubItem.css +7 -0
  240. package/src/types/ButtonAccessibleRole.ts +9 -0
  241. package/src/types/{Button.ts → ButtonDesign.ts} +1 -17
  242. package/src/types/ButtonSize.ts +7 -0
  243. package/src/types/ControlButtonDesign.ts +11 -0
  244. package/src/types/ProgressBar.ts +1 -1
  245. package/src/types/common.ts +1 -1
  246. package/dist/assets/InputSuggestions-CP3cBQsh.js +0 -2
  247. package/dist/assets/bundle.esm-jHcdiVfj.js +0 -380
  248. package/dist/assets/parameters-bundle.css-BU4Bi-ho.js +0 -2
  249. package/dist/assets/parameters-bundle.css-Beilb2gS.js +0 -2
  250. package/dist/assets/parameters-bundle.css-BzQMaZUt.js +0 -2
  251. package/dist/assets/parameters-bundle.css-Bzfv_Fox.js +0 -2
  252. package/dist/assets/parameters-bundle.css-CLwmjytB.js +0 -2
  253. package/dist/assets/parameters-bundle.css-CU3plTdF.js +0 -2
  254. package/dist/assets/parameters-bundle.css-DRX-o-Cb.js +0 -2
  255. package/dist/assets/parameters-bundle.css-DhFMZJhW.js +0 -2
  256. package/dist/css/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css +0 -1
  257. package/dist/generated/assets/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.json +0 -1
  258. package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.d.ts +0 -2
  259. package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.js +0 -3
  260. package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.js.map +0 -1
  261. package/dist/types/Button.js +0 -33
  262. package/dist/types/Button.js.map +0 -1
  263. package/src/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.ts +0 -2
  264. package/src/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css +0 -195
@@ -157,9 +157,20 @@ class UDExSecondaryNavigationItem extends UDExSecondaryNavigationItemBase {
157
157
  @property({ type: Object })
158
158
  _processedItems: Array<NavItem> = [];
159
159
 
160
+ /**
161
+ * Defines if item is mobile menu opener.
162
+ *
163
+ * @private
164
+ * @default false
165
+ */
166
+ @property({ type: Boolean })
167
+ _isMobileMenuOpener!: boolean;
168
+
160
169
  _dropdownHistory: Array<Array<NavItem>> = [];
161
170
  _shouldFocusFirstSubItem!: boolean;
162
171
  _subTitle!: string | undefined;
172
+ _shouldResetTabIndex!: boolean;
173
+ _shouldSetTabIndex!: boolean;
163
174
 
164
175
  onAfterRendering(): void {
165
176
  if (this.isLastItem && this.isOpen && !this._isMobileView) {
@@ -174,6 +185,16 @@ class UDExSecondaryNavigationItem extends UDExSecondaryNavigationItemBase {
174
185
  if (this._isMobileView && this.isOpen) {
175
186
  this.setDropdownHeight();
176
187
  }
188
+
189
+ if (this._shouldSetTabIndex) {
190
+ this._tabIndex = "0";
191
+ this._shouldSetTabIndex = false;
192
+ }
193
+
194
+ if (this._shouldResetTabIndex) {
195
+ this._tabIndex = "-1";
196
+ this._shouldResetTabIndex = false;
197
+ }
177
198
  }
178
199
 
179
200
  onBeforeRendering() : void {
@@ -202,6 +223,7 @@ class UDExSecondaryNavigationItem extends UDExSecondaryNavigationItemBase {
202
223
  if (this.hasNestedItems) {
203
224
  this.setDropdownItems();
204
225
  this.isOpen = !this.isOpen;
226
+ this._shouldResetTabIndex = true;
205
227
  this.onShouldFocusFirstSubItem();
206
228
  }
207
229
 
@@ -210,6 +232,7 @@ class UDExSecondaryNavigationItem extends UDExSecondaryNavigationItemBase {
210
232
 
211
233
  closeDropdown(): void {
212
234
  this.isOpen = false;
235
+ this._shouldSetTabIndex = true;
213
236
  }
214
237
 
215
238
  handleItemLinkKeyDown(e: KeyboardEvent): void {
@@ -425,6 +448,14 @@ class UDExSecondaryNavigationItem extends UDExSecondaryNavigationItemBase {
425
448
  return this.shadowRoot!.querySelector<HTMLElement>(".udex-secondary-navigation__dropdown")!;
426
449
  }
427
450
 
451
+ get menuOpenerTabIndex(): string {
452
+ if (this._isMobileMenuOpener) {
453
+ return "0";
454
+ }
455
+
456
+ return this._tabIndex;
457
+ }
458
+
428
459
  get isLastItem(): boolean {
429
460
  return this._navItemsLength === this.index;
430
461
  }
@@ -94,6 +94,9 @@ class UDExSecondaryNavigationItemBase extends UI5Element {
94
94
  @property({ type: Boolean })
95
95
  _isMobileView!: boolean;
96
96
 
97
+ @property({ type: String })
98
+ _tabIndex: string = "-1";
99
+
97
100
  _handleResizeBound: ResizeObserverCallback;
98
101
 
99
102
  constructor() {
@@ -89,9 +89,6 @@ class UDExSecondaryNavigationSubItem extends UDExSecondaryNavigationItemBase {
89
89
  @property({ type: Object })
90
90
  nestedItems: Array<NavItem> = [];
91
91
 
92
- @property({ type: String })
93
- _tabIndex: string = "-1";
94
-
95
92
  @i18n("@sapudex/web-components")
96
93
  static i18nBundle: I18nBundle;
97
94
 
@@ -9,7 +9,7 @@ import { getScopedVarName } from "@ui5/webcomponents-base/dist/CustomElementsSco
9
9
  import SegmentedButtonSelectionMode from "@ui5/webcomponents/dist/types/SegmentedButtonSelectionMode.js";
10
10
  import SegmentedButtonCss from "./generated/themes/SegmentedButton.css.js";
11
11
  import UDExSegmentedButtonItem from "./SegmentedButtonItem.js";
12
- import { UDExButtonSize } from "./types/Button.js";
12
+ import UDExButtonSize from "./types/ButtonSize.js";
13
13
 
14
14
  /**
15
15
  * @class
@@ -5,7 +5,7 @@ import SegmentedButtonItem from "@ui5/webcomponents/dist/SegmentedButtonItem.js"
5
5
  // Styles
6
6
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
7
7
  import SegmentedButtonItemCss from "./generated/themes/SegmentedButtonItem.css.js";
8
- import { UDExButtonSize } from "./types/Button.js";
8
+ import UDExButtonSize from "./types/ButtonSize.js";
9
9
 
10
10
  /**
11
11
  * @class
@@ -44,7 +44,7 @@ class UDExSegmentedButtonItem extends SegmentedButtonItem {
44
44
  *
45
45
  * @private
46
46
  */
47
- @property()
47
+ @property({ type: Boolean })
48
48
  hasIcon: boolean = false;
49
49
 
50
50
  constructor() {
@@ -23,7 +23,6 @@ import StatusBadgeTemplate from "./generated/templates/StatusBadgeTemplate.lit.j
23
23
 
24
24
  // Styles
25
25
  import StatusBadgeCss from "./generated/themes/StatusBadge.css.js";
26
- import type UDExProgressBarValueState from "./types/ProgressBar.js";
27
26
 
28
27
  export enum IconMapping {
29
28
  Success = "sys-enter-2",
@@ -41,7 +40,13 @@ export enum BadgeSize {
41
40
  XL = "XL",
42
41
  }
43
42
 
44
- export type UDExStatusBadgeValueState = `${Exclude<UDExProgressBarValueState, "None">}` | "Edit";
43
+ export enum UDExStatusBadgeValueState {
44
+ Warning = "Warning",
45
+ Error = "Error",
46
+ Success = "Success",
47
+ Information = "Information",
48
+ Edit = "Edit"
49
+ }
45
50
 
46
51
  /**
47
52
  * @class
@@ -75,7 +80,7 @@ class UDExStatusBadge extends UI5Element {
75
80
  * @public
76
81
  */
77
82
  @property()
78
- valueState: UDExStatusBadgeValueState = "Information";
83
+ valueState: `${UDExStatusBadgeValueState}` = UDExStatusBadgeValueState.Information;
79
84
 
80
85
  /**
81
86
  * Defines predefined size of the component.
package/src/StepInput.ts CHANGED
@@ -28,7 +28,7 @@ import StepInputTemplate from "./StepInputTemplate.js";
28
28
 
29
29
  // Styles
30
30
  import StepInputCss from "./generated/themes/StepInput.css.js";
31
- import type { UDExControlButtonDesign } from "./types/Button.js";
31
+ import type UDExControlButtonDesign from "./types/ControlButtonDesign.js";
32
32
  import type { UDExTextFieldKeydownEventDetail } from "./TextField.js";
33
33
 
34
34
  // Spin variables
@@ -37,11 +37,11 @@ const ACCELERATION = 0.8;
37
37
  const MIN_WAIT_TIMEOUT = 50; // milliseconds
38
38
  const INITIAL_SPEED = 120; // milliseconds
39
39
 
40
- type UDExStepInputValueChangeEventDetail = {
40
+ export type UDExStepInputValueChangeEventDetail = {
41
41
  value: number,
42
42
  }
43
43
 
44
- type UDExStepInputValueStateChangeEventDetail = {
44
+ export type UDExStepInputValueStateChangeEventDetail = {
45
45
  valueState: `${UDExValueState}`,
46
46
  valid: boolean
47
47
  }
@@ -4,7 +4,7 @@ import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
4
4
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
5
5
  import Icon from "@ui5/webcomponents/dist/Icon.js";
6
6
  import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
7
- import type TableCellHorizontalAlign from "./types/Table.js";
7
+ import type UDExTableCellHorizontalAlign from "./types/Table.js";
8
8
 
9
9
  // Styles
10
10
  import TableCellBaseCss from "./generated/themes/TableCellBase.css.js";
@@ -32,7 +32,7 @@ abstract class UDExTableCellBase extends UI5Element {
32
32
  * @public
33
33
  */
34
34
  @property()
35
- horizontalAlign?: `${TableCellHorizontalAlign}`;
35
+ horizontalAlign?: `${UDExTableCellHorizontalAlign}`;
36
36
 
37
37
  /**
38
38
  * Defines the content of the component.
package/src/Tag.ts CHANGED
@@ -8,7 +8,7 @@ import type { ResizeObserverCallback } from "@ui5/webcomponents-base/dist/delega
8
8
  import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
9
9
  import { isEnter } from "@ui5/webcomponents-base/dist/Keys.js";
10
10
  import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
11
- import IconPlacement from "./types/IconPlacement.js";
11
+ import UDExIconPlacement from "./types/IconPlacement.js";
12
12
 
13
13
  import TagTemplate from "./generated/templates/TagTemplate.lit.js";
14
14
 
@@ -133,7 +133,7 @@ class UDExTag extends UI5Element {
133
133
  * @public
134
134
  */
135
135
  @property()
136
- iconPlacement : `${IconPlacement}` = IconPlacement.End;
136
+ iconPlacement : `${UDExIconPlacement}` = UDExIconPlacement.End;
137
137
 
138
138
  /**
139
139
  * Defines if tag is in readnly state
@@ -283,11 +283,11 @@ class UDExTag extends UI5Element {
283
283
  }
284
284
 
285
285
  get startIcon(): boolean {
286
- return this.hasIcon && this.iconPlacement === IconPlacement.Start;
286
+ return this.hasIcon && this.iconPlacement === UDExIconPlacement.Start;
287
287
  }
288
288
 
289
289
  get endIcon(): boolean {
290
- return this.hasIcon && this.iconPlacement === IconPlacement.End;
290
+ return this.hasIcon && this.iconPlacement === UDExIconPlacement.End;
291
291
  }
292
292
 
293
293
  get _tabIndex(): number {
package/src/TextArea.ts CHANGED
@@ -22,7 +22,7 @@ import "@ui5/webcomponents-icons/dist/error.js";
22
22
  import "@ui5/webcomponents-icons/dist/alert.js";
23
23
 
24
24
  import UDExStatusMessage from "./StatusMessage.js";
25
- import ValueState from "./types/common.js";
25
+ import UDExValueState from "./types/common.js";
26
26
  import TextAreaTemplate from "./generated/templates/TextAreaTemplate.lit.js";
27
27
 
28
28
  // Styles
@@ -129,7 +129,7 @@ class UDExTextArea extends UI5Element {
129
129
  * @public
130
130
  */
131
131
  @property()
132
- valueState: `${ValueState}` = ValueState.Standard;
132
+ valueState: UDExValueState = UDExValueState.Standard;
133
133
 
134
134
  /**
135
135
  * Defines whether the component is required.
@@ -314,19 +314,19 @@ class UDExTextArea extends UI5Element {
314
314
  };
315
315
 
316
316
  get ariaInvalid(): string | null {
317
- return this.valueState === ValueState.Error ? "true" : null;
317
+ return this.valueState === UDExValueState.Error ? "true" : null;
318
318
  }
319
319
 
320
320
  get hasValueState(): boolean {
321
- return this.valueState === ValueState.Error || this.valueState === ValueState.Warning || this.valueState === ValueState.Success;
321
+ return this.valueState === UDExValueState.Error || this.valueState === UDExValueState.Warning || this.valueState === UDExValueState.Success;
322
322
  }
323
323
 
324
324
  get valueStateTypeMappings() {
325
325
  return {
326
- [ValueState.Success]: UDExTextArea.i18nBundle.getText(VALUE_STATE_TYPE_SUCCESS),
327
- [ValueState.Standard]: UDExTextArea.i18nBundle.getText(VALUE_STATE_TYPE_STANDARD),
328
- [ValueState.Error]: UDExTextArea.i18nBundle.getText(VALUE_STATE_TYPE_ERROR),
329
- [ValueState.Warning]: UDExTextArea.i18nBundle.getText(VALUE_STATE_TYPE_WARNING),
326
+ [UDExValueState.Success]: UDExTextArea.i18nBundle.getText(VALUE_STATE_TYPE_SUCCESS),
327
+ [UDExValueState.Standard]: UDExTextArea.i18nBundle.getText(VALUE_STATE_TYPE_STANDARD),
328
+ [UDExValueState.Error]: UDExTextArea.i18nBundle.getText(VALUE_STATE_TYPE_ERROR),
329
+ [UDExValueState.Warning]: UDExTextArea.i18nBundle.getText(VALUE_STATE_TYPE_WARNING),
330
330
  };
331
331
  }
332
332
 
@@ -335,7 +335,7 @@ class UDExTextArea extends UI5Element {
335
335
  return;
336
336
  }
337
337
 
338
- if (this.valueState === ValueState.Standard) {
338
+ if (this.valueState === UDExValueState.Standard) {
339
339
  return;
340
340
  }
341
341
 
package/src/TextField.ts CHANGED
@@ -15,7 +15,7 @@ import {
15
15
  READ_ONLY,
16
16
  } from "./generated/i18n/i18n-defaults.js";
17
17
  import UDExControlButton from "./ControlButton.js";
18
- import ValueState from "./types/common.js";
18
+ import UDExValueState from "./types/common.js";
19
19
  import UDExStatusMessage from "./StatusMessage.js";
20
20
 
21
21
  // Template
@@ -195,7 +195,7 @@ class UDExTextField extends UI5Element {
195
195
  * @public
196
196
  */
197
197
  @property()
198
- valueState: `${ValueState}` = ValueState.Standard;
198
+ valueState: `${UDExValueState}` = UDExValueState.Standard;
199
199
 
200
200
  /**
201
201
  * Defines supporting text under the input field.
@@ -342,11 +342,11 @@ class UDExTextField extends UI5Element {
342
342
  }
343
343
 
344
344
  get hasValueState(): boolean {
345
- return this.valueState !== ValueState.Standard;
345
+ return this.valueState !== UDExValueState.Standard;
346
346
  }
347
347
 
348
348
  get valueStateText(): string | undefined {
349
- return this.valueState !== ValueState.Standard ? this.valueStateTypeMappings[this.valueState] : undefined;
349
+ return this.valueState !== UDExValueState.Standard ? this.valueStateTypeMappings[this.valueState] : undefined;
350
350
  }
351
351
 
352
352
  get readOnlyStateText(): string {
@@ -371,7 +371,7 @@ class UDExTextField extends UI5Element {
371
371
 
372
372
  get accInfo(): AccInfo {
373
373
  return {
374
- "ariaInvalid": this.valueState === ValueState.Error ? "true" : undefined,
374
+ "ariaInvalid": this.valueState === UDExValueState.Error ? "true" : undefined,
375
375
  "ariaDescribedBy": this.ariaDescribedBy ? this.ariaDescribedBy : this.ariaDescribedById || undefined,
376
376
  "ariaLabelledBy": this.accessibleNameRef || undefined,
377
377
  "ariaLabel": this.accessibleName || undefined,
package/src/Toast.ts CHANGED
@@ -62,7 +62,7 @@ class UDExToast extends Toast {
62
62
  * @public
63
63
  * @default false
64
64
  */
65
- @property()
65
+ @property({ type: Boolean })
66
66
  showCloseIcon!: boolean;
67
67
 
68
68
  /**
package/src/Upload.ts CHANGED
@@ -13,7 +13,7 @@ import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
13
13
  import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
14
14
  import { UPLOAD_BUTTON_LABEL } from "./generated/i18n/i18n-defaults.js";
15
15
  import UDExButton from "./Button.js";
16
- import { UDExButtonSize } from "./types/Button.js";
16
+ import UDExButtonSize from "./types/ButtonSize.js";
17
17
  import UDExList from "./List.js";
18
18
  import UDExUploadItem from "./UploadItem.js";
19
19
  import UploadTemplate from "./generated/templates/UploadTemplate.lit.js";
package/src/UploadItem.ts CHANGED
@@ -17,12 +17,12 @@ import UDExListItem from "./ListItem.js";
17
17
  import UDExProgressBar from "./ProgressBar.js";
18
18
  import UDExLink from "./Link.js";
19
19
  import UDExButton from "./Button.js";
20
- import { UDExButtonSize } from "./types/Button.js";
20
+ import UDExButtonSize from "./types/ButtonSize.js";
21
21
  import UploadItemTemplate from "./generated/templates/UploadItemTemplate.lit.js";
22
22
 
23
23
  // Styles
24
24
  import UploadItemCss from "./generated/themes/UploadItem.css.js";
25
- import FileUploadState from "./types/FileUploadState.js";
25
+ import UDExFileUploadState from "./types/FileUploadState.js";
26
26
 
27
27
  const BreakpointSizeS: number = 979;
28
28
  const BreakpointSizeM: number = 1279;
@@ -97,7 +97,7 @@ class UDExUploadItem extends UDExListItem {
97
97
  * @public
98
98
  */
99
99
  @property()
100
- uploadState: `${FileUploadState}` = FileUploadState.Uploaded;
100
+ uploadState: `${UDExFileUploadState}` = UDExFileUploadState.Uploaded;
101
101
 
102
102
  /**
103
103
  * Slot for information about the uploaded file.
@@ -178,7 +178,7 @@ class UDExUploadItem extends UDExListItem {
178
178
  _handleResize() {
179
179
  this._buttonSize = window.innerWidth <= BreakpointSizeS ? UDExButtonSize.Medium : UDExButtonSize.Large;
180
180
  this._breakpointL = window.innerWidth > BreakpointSizeM;
181
- this._breakpointM = !this._breakpointL ? true : !this._breakpointL && this.uploadState === FileUploadState.Uploaded;
181
+ this._breakpointM = !this._breakpointL ? true : !this._breakpointL && this.uploadState === UDExFileUploadState.Uploaded;
182
182
  }
183
183
 
184
184
  get fileLinkComponent(): UDExLink {
@@ -190,11 +190,11 @@ class UDExUploadItem extends UDExListItem {
190
190
  }
191
191
 
192
192
  get showUploadProgress(): boolean {
193
- return this.uploadState === FileUploadState.Error || this.uploadState === FileUploadState.Uploading;
193
+ return this.uploadState === UDExFileUploadState.Error || this.uploadState === UDExFileUploadState.Uploading;
194
194
  }
195
195
 
196
196
  get uploadProgressState(): ValueState {
197
- if (this.uploadState === FileUploadState.Uploading) {
197
+ if (this.uploadState === UDExFileUploadState.Uploading) {
198
198
  return ValueState.Information;
199
199
  }
200
200
 
@@ -202,7 +202,7 @@ class UDExUploadItem extends UDExListItem {
202
202
  }
203
203
 
204
204
  get uploadStatus(): string {
205
- if (this.uploadState === FileUploadState.Uploading) {
205
+ if (this.uploadState === UDExFileUploadState.Uploading) {
206
206
  return `${UDExUploadItem.i18nBundle.getText(UPLOADING_FILE_STATUS_TEXT)} ${this.uploadPercentage}%`;
207
207
  }
208
208
 
@@ -210,11 +210,11 @@ class UDExUploadItem extends UDExListItem {
210
210
  }
211
211
 
212
212
  get fileInteractive(): boolean {
213
- return this.uploadState === FileUploadState.Uploaded;
213
+ return this.uploadState === UDExFileUploadState.Uploaded;
214
214
  }
215
215
 
216
216
  get additionalInfoClasses(): string {
217
- return `udex-upload-item__info ${this.uploadState === FileUploadState.Error ? "udex-upload-item__error" : ""}`;
217
+ return `udex-upload-item__info ${this.uploadState === UDExFileUploadState.Error ? "udex-upload-item__error" : ""}`;
218
218
  }
219
219
 
220
220
  get uploadItemClasses(): string {
@@ -0,0 +1,21 @@
1
+ // @ts-nocheck
2
+ import { registerThemePropertiesLoader } from "@ui5/webcomponents-base/dist/asset-registries/Themes.js";
3
+
4
+ const loadThemeProperties = async (themeName) => {
5
+ switch (themeName) {
6
+ case "sap_fiori_3": return (await import(/* webpackChunkName: "sapudex-web-components-sap-fiori_3-parameters-bundle" */"../assets/themes/sap_fiori_3/parameters-bundle.css.json", {with: { type: 'json'}})).default;
7
+ case "sap_horizon": return (await import(/* webpackChunkName: "sapudex-web-components-sap-horizon-parameters-bundle" */"../assets/themes/sap_horizon/parameters-bundle.css.json", {with: { type: 'json'}})).default;
8
+ default: throw "unknown theme"
9
+ }
10
+ };
11
+
12
+ const loadAndCheck = async (themeName) => {
13
+ const data = await loadThemeProperties(themeName);
14
+ if (typeof data === "string" && data.endsWith(".json")) {
15
+ throw new Error(`[themes] Invalid bundling detected - dynamic JSON imports bundled as URLs. Switch to inlining JSON files from the build. Check the "Assets" documentation for more information.`);
16
+ }
17
+ return data;
18
+ };
19
+
20
+ ["sap_fiori_3", "sap_horizon"]
21
+ .forEach(themeName => registerThemePropertiesLoader("@sapudex/web-components", themeName, loadAndCheck));
@@ -0,0 +1,85 @@
1
+ // @ts-nocheck
2
+ import { registerI18nLoader } from "@ui5/webcomponents-base/dist/asset-registries/i18n.js";
3
+
4
+ const importMessageBundle = async (localeId) => {
5
+ switch (localeId) {
6
+ case "ar": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-ar" */ "../assets/i18n/messagebundle_ar.json", {with: { type: 'json'}})).default;
7
+ case "bg": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-bg" */ "../assets/i18n/messagebundle_bg.json", {with: { type: 'json'}})).default;
8
+ case "cs": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-cs" */ "../assets/i18n/messagebundle_cs.json", {with: { type: 'json'}})).default;
9
+ case "da": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-da" */ "../assets/i18n/messagebundle_da.json", {with: { type: 'json'}})).default;
10
+ case "de": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-de" */ "../assets/i18n/messagebundle_de.json", {with: { type: 'json'}})).default;
11
+ case "el": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-el" */ "../assets/i18n/messagebundle_el.json", {with: { type: 'json'}})).default;
12
+ case "en": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-en" */ "../assets/i18n/messagebundle_en.json", {with: { type: 'json'}})).default;
13
+ case "es": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-es" */ "../assets/i18n/messagebundle_es.json", {with: { type: 'json'}})).default;
14
+ case "et": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-et" */ "../assets/i18n/messagebundle_et.json", {with: { type: 'json'}})).default;
15
+ case "fi": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-fi" */ "../assets/i18n/messagebundle_fi.json", {with: { type: 'json'}})).default;
16
+ case "fr": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-fr" */ "../assets/i18n/messagebundle_fr.json", {with: { type: 'json'}})).default;
17
+ case "hr": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-hr" */ "../assets/i18n/messagebundle_hr.json", {with: { type: 'json'}})).default;
18
+ case "hu": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-hu" */ "../assets/i18n/messagebundle_hu.json", {with: { type: 'json'}})).default;
19
+ case "it": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-it" */ "../assets/i18n/messagebundle_it.json", {with: { type: 'json'}})).default;
20
+ case "iw": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-iw" */ "../assets/i18n/messagebundle_iw.json", {with: { type: 'json'}})).default;
21
+ case "ko": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-ko" */ "../assets/i18n/messagebundle_ko.json", {with: { type: 'json'}})).default;
22
+ case "lt": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-lt" */ "../assets/i18n/messagebundle_lt.json", {with: { type: 'json'}})).default;
23
+ case "lv": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-lv" */ "../assets/i18n/messagebundle_lv.json", {with: { type: 'json'}})).default;
24
+ case "nl": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-nl" */ "../assets/i18n/messagebundle_nl.json", {with: { type: 'json'}})).default;
25
+ case "no": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-no" */ "../assets/i18n/messagebundle_no.json", {with: { type: 'json'}})).default;
26
+ case "pl": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-pl" */ "../assets/i18n/messagebundle_pl.json", {with: { type: 'json'}})).default;
27
+ case "pt": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-pt" */ "../assets/i18n/messagebundle_pt.json", {with: { type: 'json'}})).default;
28
+ case "ro": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-ro" */ "../assets/i18n/messagebundle_ro.json", {with: { type: 'json'}})).default;
29
+ case "ru": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-ru" */ "../assets/i18n/messagebundle_ru.json", {with: { type: 'json'}})).default;
30
+ case "sk": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-sk" */ "../assets/i18n/messagebundle_sk.json", {with: { type: 'json'}})).default;
31
+ case "sl": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-sl" */ "../assets/i18n/messagebundle_sl.json", {with: { type: 'json'}})).default;
32
+ case "sr": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-sr" */ "../assets/i18n/messagebundle_sr.json", {with: { type: 'json'}})).default;
33
+ case "sv": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-sv" */ "../assets/i18n/messagebundle_sv.json", {with: { type: 'json'}})).default;
34
+ case "tr": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-tr" */ "../assets/i18n/messagebundle_tr.json", {with: { type: 'json'}})).default;
35
+ case "uk": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-uk" */ "../assets/i18n/messagebundle_uk.json", {with: { type: 'json'}})).default;
36
+ case "zh_CN": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-zh_CN" */ "../assets/i18n/messagebundle_zh_CN.json", {with: { type: 'json'}})).default;
37
+ case "zh_TW": return (await import(/* webpackChunkName: "sapudex-web-components-messagebundle-zh_TW" */ "../assets/i18n/messagebundle_zh_TW.json", {with: { type: 'json'}})).default;
38
+ default: throw "unknown locale"
39
+ }
40
+ }
41
+
42
+ const importAndCheck = async (localeId) => {
43
+ const data = await importMessageBundle(localeId);
44
+ if (typeof data === "string" && data.endsWith(".json")) {
45
+ throw new Error(`[i18n] Invalid bundling detected - dynamic JSON imports bundled as URLs. Switch to inlining JSON files from the build. Check the "Assets" documentation for more information.`);
46
+ }
47
+ return data;
48
+ }
49
+
50
+ const localeIds = ["ar",
51
+ "bg",
52
+ "cs",
53
+ "da",
54
+ "de",
55
+ "el",
56
+ "en",
57
+ "es",
58
+ "et",
59
+ "fi",
60
+ "fr",
61
+ "hr",
62
+ "hu",
63
+ "it",
64
+ "iw",
65
+ "ko",
66
+ "lt",
67
+ "lv",
68
+ "nl",
69
+ "no",
70
+ "pl",
71
+ "pt",
72
+ "ro",
73
+ "ru",
74
+ "sk",
75
+ "sl",
76
+ "sr",
77
+ "sv",
78
+ "tr",
79
+ "uk",
80
+ "zh_CN",
81
+ "zh_TW",];
82
+
83
+ localeIds.forEach(localeId => {
84
+ registerI18nLoader("@sapudex/web-components", localeId, importAndCheck);
85
+ });
@@ -5,7 +5,7 @@ import type UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
5
5
  type BreadcrumbsPopover = any;
6
6
  import type { ClassMapValue } from "@ui5/webcomponents-base/dist/types.js";
7
7
 
8
- function block0 (this: BreadcrumbsPopover, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("udex-dropdown", tags, suffix)} id="udex-${ifDefined(this._id)}-breadcrumbs__popover" opener="udex-${ifDefined(this._id)}-breadcrumbs__opener" class="udex-breadcrumbs__popover ui5-breadcrumbs-popover" placement="Bottom" horizontal-align="Start" @keydown="${this._handleKeydown}"><div class="udex-breadcrumbs__popover-content">${ repeat(this._dropdownItems, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</div></${scopeTag("udex-dropdown", tags, suffix)}>` : html`<udex-dropdown id="udex-${ifDefined(this._id)}-breadcrumbs__popover" opener="udex-${ifDefined(this._id)}-breadcrumbs__opener" class="udex-breadcrumbs__popover ui5-breadcrumbs-popover" placement="Bottom" horizontal-align="Start" @keydown="${this._handleKeydown}"><div class="udex-breadcrumbs__popover-content">${ repeat(this._dropdownItems, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</div></udex-dropdown>`;}
8
+ function block0 (this: BreadcrumbsPopover, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("udex-dropdown", tags, suffix)} id="udex-${ifDefined(this._id)}-breadcrumbs__popover" opener="udex-${ifDefined(this._id)}-breadcrumbs__opener" class="udex-breadcrumbs__popover ui5-breadcrumbs-popover" placement="Bottom" horizontal-align="Start" @keydown="${this._handleKeydown}" @close="${this._afterDropdownClose}" @open="${this._afterDropdownOpen}"><div class="udex-breadcrumbs__popover-content">${ repeat(this._dropdownItems, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</div></${scopeTag("udex-dropdown", tags, suffix)}>` : html`<udex-dropdown id="udex-${ifDefined(this._id)}-breadcrumbs__popover" opener="udex-${ifDefined(this._id)}-breadcrumbs__opener" class="udex-breadcrumbs__popover ui5-breadcrumbs-popover" placement="Bottom" horizontal-align="Start" @keydown="${this._handleKeydown}" @close="${this._afterDropdownClose}" @open="${this._afterDropdownOpen}"><div class="udex-breadcrumbs__popover-content">${ repeat(this._dropdownItems, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</div></udex-dropdown>`;}
9
9
  function block1 (this: BreadcrumbsPopover, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return html`${ item.icon ? block2.call(this, context, tags, suffix, item, index) : block3.call(this, context, tags, suffix, item, index) }`;}
10
10
  function block2 (this: BreadcrumbsPopover, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return suffix ? html`<${scopeTag("udex-link", tags, suffix)} index="${index}" id="${ifDefined(item._id)}-li" @ui5-click="${ifDefined(this._onDropdownLinkPress)}" href="${ifDefined(item.href)}" target="${ifDefined(item.target)}" class="udex-breadcrumbs__item udex-breadcrumbs__item--with-icon udex-breadcrumbs__item--hidden udex-breadcrumbs__item--${index}" icon="${ifDefined(item.icon)}" accessible-name="${ifDefined(item.textContent)}" data-ui5-stable="${ifDefined(item.stableDomRef)}">${ifDefined(item.textContent)}</${scopeTag("udex-link", tags, suffix)}>` : html`<udex-link index="${index}" id="${ifDefined(item._id)}-li" @ui5-click="${ifDefined(this._onDropdownLinkPress)}" href="${ifDefined(item.href)}" target="${ifDefined(item.target)}" class="udex-breadcrumbs__item udex-breadcrumbs__item--with-icon udex-breadcrumbs__item--hidden udex-breadcrumbs__item--${index}" icon="${ifDefined(item.icon)}" accessible-name="${ifDefined(item.textContent)}" data-ui5-stable="${ifDefined(item.stableDomRef)}">${ifDefined(item.textContent)}</udex-link>`;}
11
11
  function block3 (this: BreadcrumbsPopover, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return html`${ item._isCurrentPageItem ? block4.call(this, context, tags, suffix, item, index) : block5.call(this, context, tags, suffix, item, index) }`;}
@@ -5,7 +5,7 @@ import type UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
5
5
  import type Breadcrumbs from "../../Breadcrumbs.js";
6
6
  import type { ClassMapValue } from "@ui5/webcomponents-base/dist/types.js";
7
7
 
8
- function block0 (this: Breadcrumbs, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<nav class="udex-breadcrumbs ui5-breadcrumbs-root" aria-label="${ifDefined(this._accessibleNameText)}"><ol @focusin="${this._onfocusin}"><li class="udex-breadcrumbs__arrow-wrapper ui5-breadcrumbs-dropdown-arrow-link-wrapper"><button id="udex-${ifDefined(this._id)}-breadcrumbs__opener" @click="${this._toggleDropdown}" class="udex-breadcrumbs__trigger ${ifDefined(this._triggerClass)}" accessible-role="button" aria-label="${ifDefined(this._dropdownArrowAccessibleNameText)}" aria-haspopup="true"><${scopeTag("ui5-icon", tags, suffix)} name="slim-arrow-down" mode="Decorative" title="${ifDefined(this._dropdownArrowAccessibleNameText)}"></${scopeTag("ui5-icon", tags, suffix)}></button></li>${ repeat(this._linksData, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</ol></nav><${scopeTag("udex-dropdown", tags, suffix)} id="udex-${ifDefined(this._id)}-breadcrumbs__popover" opener="udex-${ifDefined(this._id)}-breadcrumbs__opener" class="udex-breadcrumbs__popover ui5-breadcrumbs-popover" placement="Bottom" horizontal-align="Start" @keydown="${this._handleKeydown}"><div class="udex-breadcrumbs__popover-content">${ repeat(this._dropdownItems, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block3.call(this, context, tags, suffix, item, index)) }</div></${scopeTag("udex-dropdown", tags, suffix)}>` : html`<nav class="udex-breadcrumbs ui5-breadcrumbs-root" aria-label="${ifDefined(this._accessibleNameText)}"><ol @focusin="${this._onfocusin}"><li class="udex-breadcrumbs__arrow-wrapper ui5-breadcrumbs-dropdown-arrow-link-wrapper"><button id="udex-${ifDefined(this._id)}-breadcrumbs__opener" @click="${this._toggleDropdown}" class="udex-breadcrumbs__trigger ${ifDefined(this._triggerClass)}" accessible-role="button" aria-label="${ifDefined(this._dropdownArrowAccessibleNameText)}" aria-haspopup="true"><ui5-icon name="slim-arrow-down" mode="Decorative" title="${ifDefined(this._dropdownArrowAccessibleNameText)}"></ui5-icon></button></li>${ repeat(this._linksData, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</ol></nav><udex-dropdown id="udex-${ifDefined(this._id)}-breadcrumbs__popover" opener="udex-${ifDefined(this._id)}-breadcrumbs__opener" class="udex-breadcrumbs__popover ui5-breadcrumbs-popover" placement="Bottom" horizontal-align="Start" @keydown="${this._handleKeydown}"><div class="udex-breadcrumbs__popover-content">${ repeat(this._dropdownItems, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block3.call(this, context, tags, suffix, item, index)) }</div></udex-dropdown>`;}
8
+ function block0 (this: Breadcrumbs, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<nav class="udex-breadcrumbs ui5-breadcrumbs-root" aria-label="${ifDefined(this._accessibleNameText)}"><ol @focusin="${this._onfocusin}"><li class="udex-breadcrumbs__arrow-wrapper ui5-breadcrumbs-dropdown-arrow-link-wrapper"><${scopeTag("udex-link", tags, suffix)} id="udex-${ifDefined(this._id)}-breadcrumbs__opener" @click="${this._toggleDropdown}" class="udex-breadcrumbs__trigger ${ifDefined(this._triggerClass)}" accessible-role="button" aria-label="${ifDefined(this._dropdownArrowAccessibleNameText)}" icon="slim-arrow-down" icon-placement="Start" aria-haspopup="true"></${scopeTag("udex-link", tags, suffix)}></li>${ repeat(this._linksData, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</ol></nav><${scopeTag("udex-dropdown", tags, suffix)} id="udex-${ifDefined(this._id)}-breadcrumbs__popover" opener="udex-${ifDefined(this._id)}-breadcrumbs__opener" class="udex-breadcrumbs__popover ui5-breadcrumbs-popover" placement="Bottom" horizontal-align="Start" @keydown="${this._handleKeydown}" @close="${this._afterDropdownClose}" @open="${this._afterDropdownOpen}"><div class="udex-breadcrumbs__popover-content">${ repeat(this._dropdownItems, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block3.call(this, context, tags, suffix, item, index)) }</div></${scopeTag("udex-dropdown", tags, suffix)}>` : html`<nav class="udex-breadcrumbs ui5-breadcrumbs-root" aria-label="${ifDefined(this._accessibleNameText)}"><ol @focusin="${this._onfocusin}"><li class="udex-breadcrumbs__arrow-wrapper ui5-breadcrumbs-dropdown-arrow-link-wrapper"><udex-link id="udex-${ifDefined(this._id)}-breadcrumbs__opener" @click="${this._toggleDropdown}" class="udex-breadcrumbs__trigger ${ifDefined(this._triggerClass)}" accessible-role="button" aria-label="${ifDefined(this._dropdownArrowAccessibleNameText)}" icon="slim-arrow-down" icon-placement="Start" aria-haspopup="true"></udex-link></li>${ repeat(this._linksData, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</ol></nav><udex-dropdown id="udex-${ifDefined(this._id)}-breadcrumbs__popover" opener="udex-${ifDefined(this._id)}-breadcrumbs__opener" class="udex-breadcrumbs__popover ui5-breadcrumbs-popover" placement="Bottom" horizontal-align="Start" @keydown="${this._handleKeydown}" @close="${this._afterDropdownClose}" @open="${this._afterDropdownOpen}"><div class="udex-breadcrumbs__popover-content">${ repeat(this._dropdownItems, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block3.call(this, context, tags, suffix, item, index)) }</div></udex-dropdown>`;}
9
9
  function block1 (this: Breadcrumbs, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return html`<li class="udex-breadcrumbs__link-wrapper ui5-breadcrumbs-link-wrapper" id="${ifDefined(item._id)}-link-wrapper">${ !item._isCurrentPageItem ? block2.call(this, context, tags, suffix, item, index) : undefined }</li>`;}
10
10
  function block2 (this: Breadcrumbs, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return suffix ? html`<span class="udex-breadcrumbs__separator" aria-hidden="true"></span><${scopeTag("udex-link", tags, suffix)} @ui5-click="${ifDefined(this._onLinkPress)}" class="udex-breadcrumbs__item udex-breadcrumbs__item--visible" href="${ifDefined(item.href)}" target="${ifDefined(item.target)}" id="${ifDefined(item._id)}-link" accessible-name="${ifDefined(item._accessibleNameText)}" data-ui5-stable="${ifDefined(item.stableDomRef)}">${ifDefined(item.innerText)}</${scopeTag("udex-link", tags, suffix)}>` : html`<span class="udex-breadcrumbs__separator" aria-hidden="true"></span><udex-link @ui5-click="${ifDefined(this._onLinkPress)}" class="udex-breadcrumbs__item udex-breadcrumbs__item--visible" href="${ifDefined(item.href)}" target="${ifDefined(item.target)}" id="${ifDefined(item._id)}-link" accessible-name="${ifDefined(item._accessibleNameText)}" data-ui5-stable="${ifDefined(item.stableDomRef)}">${ifDefined(item.innerText)}</udex-link>`;}
11
11
  function block3 (this: Breadcrumbs, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return html`${ item.icon ? block4.call(this, context, tags, suffix, item, index) : block5.call(this, context, tags, suffix, item, index) }`;}
@@ -5,16 +5,16 @@ import type UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
5
5
  import type Search from "../../Search.js";
6
6
  import type { ClassMapValue } from "@ui5/webcomponents-base/dist/types.js";
7
7
 
8
- function block0 (this: Search, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<div class="udex-search__root ${ifDefined(this.searchClasses)}">${ this.isShowSearchHomePrefix ? block1.call(this, context, tags, suffix) : undefined }<form role="search" class="udex-search__container ${ifDefined(this.focusClasses)}${ifDefined(this.isNotEmptyClass)}">${ this.labelAnimationDisabled ? block2.call(this, context, tags, suffix) : block3.call(this, context, tags, suffix) }${ this.accInfo.ariaDescription ? block5.call(this, context, tags, suffix) : undefined }<div class="udex-search__icons">${ this.isShowHomeResetButton ? block6.call(this, context, tags, suffix) : undefined }${ this.isShowResetButton ? block7.call(this, context, tags, suffix) : undefined }${ this.isVoiceButton ? block8.call(this, context, tags, suffix) : undefined }${ this.showNonInteractiveButton ? block9.call(this, context, tags, suffix) : undefined }${ this.showSubmitHomeButton ? block10.call(this, context, tags, suffix) : undefined }${ this.showSubmitStandardButton ? block11.call(this, context, tags, suffix) : undefined }</div></form></div><${scopeTag("ui5-popover", tags, suffix)} class="udex-search-suggestions__root ${ifDefined(this.homeSearchPopoverClass)}" hide-arrow prevent-initial-focus placement="Bottom" horizontal-align="End" style="${styleMap(this.popoverStyles)}" id="${ifDefined(this.getSuggestionsPopoverId)}" aria-orientation="vertical" accessible-role="Dialog" @keydown="${this.handleKeyPressSuggestionList}" accessible-name="${ifDefined(this.suggestionsAccessibleName)}">${ this.showNoResultMessage ? block12.call(this, context, tags, suffix) : block13.call(this, context, tags, suffix) }</${scopeTag("ui5-popover", tags, suffix)}>` : html`<div class="udex-search__root ${ifDefined(this.searchClasses)}">${ this.isShowSearchHomePrefix ? block1.call(this, context, tags, suffix) : undefined }<form role="search" class="udex-search__container ${ifDefined(this.focusClasses)}${ifDefined(this.isNotEmptyClass)}">${ this.labelAnimationDisabled ? block2.call(this, context, tags, suffix) : block3.call(this, context, tags, suffix) }${ this.accInfo.ariaDescription ? block5.call(this, context, tags, suffix) : undefined }<div class="udex-search__icons">${ this.isShowHomeResetButton ? block6.call(this, context, tags, suffix) : undefined }${ this.isShowResetButton ? block7.call(this, context, tags, suffix) : undefined }${ this.isVoiceButton ? block8.call(this, context, tags, suffix) : undefined }${ this.showNonInteractiveButton ? block9.call(this, context, tags, suffix) : undefined }${ this.showSubmitHomeButton ? block10.call(this, context, tags, suffix) : undefined }${ this.showSubmitStandardButton ? block11.call(this, context, tags, suffix) : undefined }</div></form></div><ui5-popover class="udex-search-suggestions__root ${ifDefined(this.homeSearchPopoverClass)}" hide-arrow prevent-initial-focus placement="Bottom" horizontal-align="End" style="${styleMap(this.popoverStyles)}" id="${ifDefined(this.getSuggestionsPopoverId)}" aria-orientation="vertical" accessible-role="Dialog" @keydown="${this.handleKeyPressSuggestionList}" accessible-name="${ifDefined(this.suggestionsAccessibleName)}">${ this.showNoResultMessage ? block12.call(this, context, tags, suffix) : block13.call(this, context, tags, suffix) }</ui5-popover>`;}
8
+ function block0 (this: Search, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<div class="udex-search__root ${ifDefined(this.searchClasses)}">${ this.isShowSearchHomePrefix ? block1.call(this, context, tags, suffix) : undefined }<form role="search" class="udex-search__container ${ifDefined(this.focusClasses)}${ifDefined(this.isNotEmptyClass)}">${ this.labelAnimationDisabled ? block2.call(this, context, tags, suffix) : block3.call(this, context, tags, suffix) }${ this.open ? block5.call(this, context, tags, suffix) : undefined }<div class="udex-search__icons">${ this.isShowHomeResetButton ? block6.call(this, context, tags, suffix) : undefined }${ this.isShowResetButton ? block7.call(this, context, tags, suffix) : undefined }${ this.isVoiceButton ? block8.call(this, context, tags, suffix) : undefined }${ this.showNonInteractiveButton ? block9.call(this, context, tags, suffix) : undefined }${ this.showSubmitHomeButton ? block10.call(this, context, tags, suffix) : undefined }${ this.showSubmitStandardButton ? block11.call(this, context, tags, suffix) : undefined }</div></form></div><${scopeTag("ui5-popover", tags, suffix)} class="udex-search-suggestions__root ${ifDefined(this.homeSearchPopoverClass)}" hide-arrow prevent-initial-focus placement="Bottom" horizontal-align="End" style="${styleMap(this.popoverStyles)}" id="${ifDefined(this.getSuggestionsPopoverId)}" aria-orientation="vertical" accessible-role="Dialog" @keydown="${this.handleKeyPressSuggestionList}" accessible-name="${ifDefined(this.suggestionsAccessibleName)}">${ this.showNoResultMessage ? block12.call(this, context, tags, suffix) : block13.call(this, context, tags, suffix) }</${scopeTag("ui5-popover", tags, suffix)}>` : html`<div class="udex-search__root ${ifDefined(this.searchClasses)}">${ this.isShowSearchHomePrefix ? block1.call(this, context, tags, suffix) : undefined }<form role="search" class="udex-search__container ${ifDefined(this.focusClasses)}${ifDefined(this.isNotEmptyClass)}">${ this.labelAnimationDisabled ? block2.call(this, context, tags, suffix) : block3.call(this, context, tags, suffix) }${ this.open ? block5.call(this, context, tags, suffix) : undefined }<div class="udex-search__icons">${ this.isShowHomeResetButton ? block6.call(this, context, tags, suffix) : undefined }${ this.isShowResetButton ? block7.call(this, context, tags, suffix) : undefined }${ this.isVoiceButton ? block8.call(this, context, tags, suffix) : undefined }${ this.showNonInteractiveButton ? block9.call(this, context, tags, suffix) : undefined }${ this.showSubmitHomeButton ? block10.call(this, context, tags, suffix) : undefined }${ this.showSubmitStandardButton ? block11.call(this, context, tags, suffix) : undefined }</div></form></div><ui5-popover class="udex-search-suggestions__root ${ifDefined(this.homeSearchPopoverClass)}" hide-arrow prevent-initial-focus placement="Bottom" horizontal-align="End" style="${styleMap(this.popoverStyles)}" id="${ifDefined(this.getSuggestionsPopoverId)}" aria-orientation="vertical" accessible-role="Dialog" @keydown="${this.handleKeyPressSuggestionList}" accessible-name="${ifDefined(this.suggestionsAccessibleName)}">${ this.showNoResultMessage ? block12.call(this, context, tags, suffix) : block13.call(this, context, tags, suffix) }</ui5-popover>`;}
9
9
  function block1 (this: Search, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<div class="udex-search__prefix ${ifDefined(this.prefixWrapperClasses)}"><button type="button" role="combobox" aria-expanded="${ifDefined(this._prefixDropdownExpanded)}" aria-label="${ifDefined(this.labelPrefix)}" aria-haspopup="true" aria-controls="udex-search-prefix" class="udex-search__prefix-button" @click="${this.handleDropdownClick}"><span class="udex-search__prefix-label">${ifDefined(this.labelPrefix)}</span><${scopeTag("ui5-icon", tags, suffix)} class="udex-search__prefix-icon" name="slim-arrow-down" mode="Decorative"></${scopeTag("ui5-icon", tags, suffix)}></button><${scopeTag("ui5-popover", tags, suffix)} id="udex-search-prefix" class="${ifDefined(this.prefixPopoverClasses)}" hide-arrow placement="Bottom" horizontal-align="Start" style="${styleMap(this.prefixPopoverStyles)}" @after-close="${this.handleAfterClosePrefixPopover}"><slot></slot></${scopeTag("ui5-popover", tags, suffix)}></div>` : html`<div class="udex-search__prefix ${ifDefined(this.prefixWrapperClasses)}"><button type="button" role="combobox" aria-expanded="${ifDefined(this._prefixDropdownExpanded)}" aria-label="${ifDefined(this.labelPrefix)}" aria-haspopup="true" aria-controls="udex-search-prefix" class="udex-search__prefix-button" @click="${this.handleDropdownClick}"><span class="udex-search__prefix-label">${ifDefined(this.labelPrefix)}</span><ui5-icon class="udex-search__prefix-icon" name="slim-arrow-down" mode="Decorative"></ui5-icon></button><ui5-popover id="udex-search-prefix" class="${ifDefined(this.prefixPopoverClasses)}" hide-arrow placement="Bottom" horizontal-align="Start" style="${styleMap(this.prefixPopoverStyles)}" @after-close="${this.handleAfterClosePrefixPopover}"><slot></slot></ui5-popover></div>`;}
10
10
  function block2 (this: Search, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<input role="searchbox" id="search-input" type="search" name="search" class="udex-search__field" autocomplete="off" aria-autocomplete="list" aria-haspopup="${ifDefined(this.getAriaHasPopup)}" aria-label="${ifDefined(this.accInfo.ariaLabel)}" aria-describedby="search-description" placeholder="${ifDefined(this.effectivePlaceholder)}" .value="${ifDefined(this.value)}" @input="${this.handleSearchChange}" @keydown="${this.handleKeyDown}" @focus="${this.handleFocus}" @focusout="${this.handleFocusout}" @blur="${this.handleBlur}" @click="${this.handleInputClick}" />`;}
11
11
  function block3 (this: Search, context: UI5Element, tags: string[], suffix: string | undefined) { return html`${ this.label ? block4.call(this, context, tags, suffix) : undefined }<input role="searchbox" id="search-input" type="search" name="search" class="udex-search__field" autocomplete="off" aria-autocomplete="list" aria-label="${ifDefined(this.accInfo.ariaLabel)}" aria-describedby="search-description" aria-haspopup="${ifDefined(this.getAriaHasPopup)}" .value="${ifDefined(this.value)}" @input="${this.handleSearchChange}" @keydown="${this.handleKeyDown}" @focus="${this.handleFocus}" @focusout="${this.handleFocusout}" @blur="${this.handleBlur}" @click="${this.handleInputClick}" />`;}
12
12
  function block4 (this: Search, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<label for="search-input" class="${ifDefined(this.labelClasses)}">${ifDefined(this.label)}</label>`;}
13
- function block5 (this: Search, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<span role="status" id="search-description" class="hidden" aria-hidden="true">${ifDefined(this.accInfo.ariaDescription)}</span>`;}
13
+ function block5 (this: Search, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<span aria-live="polite" aria-atomic="true" id="search-description" class="hidden" aria-hidden="true">${ifDefined(this.suggestionsDescription)}</span>`;}
14
14
  function block6 (this: Search, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("udex-button", tags, suffix)} id="reset-button" class="udex-search__button udex-search__reset-button" size="Small" design="Default" tooltip="${ifDefined(this.tooltipInfo.tooltipResetButton)}" @click="${this.onReset}" @keydown="${this.handleKeyDownReset}"><${scopeTag("ui5-icon", tags, suffix)} class="udex-search__button-icon" accessible-name="${ifDefined(this.accInfo.accessibleNameResetIcon)}" accessible-role="presentation" name="decline"></${scopeTag("ui5-icon", tags, suffix)}></${scopeTag("udex-button", tags, suffix)}>` : html`<udex-button id="reset-button" class="udex-search__button udex-search__reset-button" size="Small" design="Default" tooltip="${ifDefined(this.tooltipInfo.tooltipResetButton)}" @click="${this.onReset}" @keydown="${this.handleKeyDownReset}"><ui5-icon class="udex-search__button-icon" accessible-name="${ifDefined(this.accInfo.accessibleNameResetIcon)}" accessible-role="presentation" name="decline"></ui5-icon></udex-button>`;}
15
15
  function block7 (this: Search, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("udex-control-button", tags, suffix)} id="reset-button" class="udex-search__reset-button" design="Default" tooltip="${ifDefined(this.tooltipInfo.tooltipResetButton)}" icon="decline" size="Large" accessible-name="${ifDefined(this.accInfo.accessibleNameResetIcon)}" @click="${this.onReset}" @keydown="${this.handleKeyDownReset}"></${scopeTag("udex-control-button", tags, suffix)}>` : html`<udex-control-button id="reset-button" class="udex-search__reset-button" design="Default" tooltip="${ifDefined(this.tooltipInfo.tooltipResetButton)}" icon="decline" size="Large" accessible-name="${ifDefined(this.accInfo.accessibleNameResetIcon)}" @click="${this.onReset}" @keydown="${this.handleKeyDownReset}"></udex-control-button>`;}
16
16
  function block8 (this: Search, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("udex-button", tags, suffix)} id="voice-button" class="udex-search__button udex-search__voice-button ${ifDefined(this.voiceActiveClass)}" design="Default" size="Small" icon="microphone" tooltip="${ifDefined(this.tooltipInfo.tooltipVoiceButton)}" @click="${this.onVoice}"></${scopeTag("udex-button", tags, suffix)}>` : html`<udex-button id="voice-button" class="udex-search__button udex-search__voice-button ${ifDefined(this.voiceActiveClass)}" design="Default" size="Small" icon="microphone" tooltip="${ifDefined(this.tooltipInfo.tooltipVoiceButton)}" @click="${this.onVoice}"></udex-button>`;}
17
- function block9 (this: Search, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("ui5-icon", tags, suffix)} class="udex-search__icon" aria-hidden="true" accessible-name="${ifDefined(this.accInfo.accessibleNameSearchIcon)}" name="search"></${scopeTag("ui5-icon", tags, suffix)}>` : html`<ui5-icon class="udex-search__icon" aria-hidden="true" accessible-name="${ifDefined(this.accInfo.accessibleNameSearchIcon)}" name="search"></ui5-icon>`;}
17
+ function block9 (this: Search, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("ui5-icon", tags, suffix)} class="udex-search__icon" aria-hidden="true" accessible-name="${ifDefined(this.accInfo.accessibleNameSearchIcon)}" show-tooltip name="search"></${scopeTag("ui5-icon", tags, suffix)}>` : html`<ui5-icon class="udex-search__icon" aria-hidden="true" accessible-name="${ifDefined(this.accInfo.accessibleNameSearchIcon)}" show-tooltip name="search"></ui5-icon>`;}
18
18
  function block10 (this: Search, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("udex-button", tags, suffix)} id="submit-button" class="udex-search__button udex-search__submit-button ${ifDefined(this.searchButtonActiveClass)}" design="Default" icon="search" size="Small" tooltip="${ifDefined(this.tooltipInfo.tooltipSubmitButton)}" @click="${this.onSubmit}"></${scopeTag("udex-button", tags, suffix)}>` : html`<udex-button id="submit-button" class="udex-search__button udex-search__submit-button ${ifDefined(this.searchButtonActiveClass)}" design="Default" icon="search" size="Small" tooltip="${ifDefined(this.tooltipInfo.tooltipSubmitButton)}" @click="${this.onSubmit}"></udex-button>`;}
19
19
  function block11 (this: Search, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("udex-control-button", tags, suffix)} id="submit-button" class="udex-search__submit-button" size="Large" design="Default" icon="search" tooltip="${ifDefined(this.tooltipInfo.tooltipSubmitButton)}" @click="${this.onSubmit}"></${scopeTag("udex-control-button", tags, suffix)}>` : html`<udex-control-button id="submit-button" class="udex-search__submit-button" size="Large" design="Default" icon="search" tooltip="${ifDefined(this.tooltipInfo.tooltipSubmitButton)}" @click="${this.onSubmit}"></udex-control-button>`;}
20
20
  function block12 (this: Search, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<span class="udex-search-suggestions__message">${ifDefined(this.noResultMessage)}</span>`;}