@sapudex/web-components 0.147.0 → 0.172.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 (471) hide show
  1. package/.eslintignore +1 -0
  2. package/bundle.esm.js +9 -0
  3. package/dist/Badge.d.ts +21 -14
  4. package/dist/Badge.js +20 -26
  5. package/dist/Badge.js.map +1 -1
  6. package/dist/Breadcrumbs.d.ts +23 -21
  7. package/dist/Breadcrumbs.js +58 -40
  8. package/dist/Breadcrumbs.js.map +1 -1
  9. package/dist/BreadcrumbsItem.js +0 -1
  10. package/dist/BreadcrumbsItem.js.map +1 -1
  11. package/dist/Checkbox.js +0 -1
  12. package/dist/Checkbox.js.map +1 -1
  13. package/dist/CountrySelector.d.ts +2 -2
  14. package/dist/CountrySelector.js +20 -12
  15. package/dist/CountrySelector.js.map +1 -1
  16. package/dist/DatePicker.d.ts +2 -2
  17. package/dist/DatePicker.js.map +1 -1
  18. package/dist/Dropdown.js +0 -3
  19. package/dist/Dropdown.js.map +1 -1
  20. package/dist/Footer.d.ts +53 -10
  21. package/dist/Footer.js +41 -11
  22. package/dist/Footer.js.map +1 -1
  23. package/dist/Link.d.ts +2 -5
  24. package/dist/Link.js +4 -8
  25. package/dist/Link.js.map +1 -1
  26. package/dist/List.d.ts +16 -1
  27. package/dist/List.js +154 -100
  28. package/dist/List.js.map +1 -1
  29. package/dist/ListItem.d.ts +1 -0
  30. package/dist/ListItem.js +3 -0
  31. package/dist/ListItem.js.map +1 -1
  32. package/dist/MastheadItem.d.ts +12 -2
  33. package/dist/MastheadItem.js +34 -7
  34. package/dist/MastheadItem.js.map +1 -1
  35. package/dist/MastheadMenu.d.ts +1 -0
  36. package/dist/MastheadMenu.js +13 -4
  37. package/dist/MastheadMenu.js.map +1 -1
  38. package/dist/MastheadMenuItem.d.ts +10 -0
  39. package/dist/MastheadMenuItem.js +24 -3
  40. package/dist/MastheadMenuItem.js.map +1 -1
  41. package/dist/MastheadMobileMenu.js +2 -2
  42. package/dist/MastheadMobileMenu.js.map +1 -1
  43. package/dist/MastheadProfileMenu.js +2 -2
  44. package/dist/MastheadProfileMenu.js.map +1 -1
  45. package/dist/MastheadShell.d.ts +4 -0
  46. package/dist/MastheadShell.js +21 -5
  47. package/dist/MastheadShell.js.map +1 -1
  48. package/dist/Pagination.d.ts +13 -3
  49. package/dist/Pagination.js +90 -57
  50. package/dist/Pagination.js.map +1 -1
  51. package/dist/PhoneNumberField.d.ts +3 -0
  52. package/dist/PhoneNumberField.js +9 -4
  53. package/dist/PhoneNumberField.js.map +1 -1
  54. package/dist/RangeSlider.js +0 -1
  55. package/dist/RangeSlider.js.map +1 -1
  56. package/dist/Search.d.ts +5 -4
  57. package/dist/Search.js +12 -12
  58. package/dist/Search.js.map +1 -1
  59. package/dist/SearchableListBase.d.ts +7 -1
  60. package/dist/SearchableListBase.js +47 -4
  61. package/dist/SearchableListBase.js.map +1 -1
  62. package/dist/SecondaryNavigation.d.ts +2 -2
  63. package/dist/SecondaryNavigation.js +20 -10
  64. package/dist/SecondaryNavigation.js.map +1 -1
  65. package/dist/SecondaryNavigationItem.d.ts +6 -3
  66. package/dist/SecondaryNavigationItem.js +50 -26
  67. package/dist/SecondaryNavigationItem.js.map +1 -1
  68. package/dist/SecondaryNavigationSubItem.d.ts +1 -0
  69. package/dist/SecondaryNavigationSubItem.js +3 -0
  70. package/dist/SecondaryNavigationSubItem.js.map +1 -1
  71. package/dist/SegmentedButton.d.ts +2 -2
  72. package/dist/SegmentedButton.js.map +1 -1
  73. package/dist/SelectBox.js.map +1 -1
  74. package/dist/SideNavigationGroup.js +0 -1
  75. package/dist/SideNavigationGroup.js.map +1 -1
  76. package/dist/SideNavigationItem.js +0 -1
  77. package/dist/SideNavigationItem.js.map +1 -1
  78. package/dist/SideNavigationSubItem.js +0 -1
  79. package/dist/SideNavigationSubItem.js.map +1 -1
  80. package/dist/Slider.js +0 -1
  81. package/dist/Slider.js.map +1 -1
  82. package/dist/TabNavigation.js +2 -2
  83. package/dist/TabNavigation.js.map +1 -1
  84. package/dist/Tag.d.ts +1 -4
  85. package/dist/Tag.js +1 -5
  86. package/dist/Tag.js.map +1 -1
  87. package/dist/Tile.d.ts +1 -1
  88. package/dist/Tile.js +1 -1
  89. package/dist/Tile.js.map +1 -1
  90. package/dist/Toast.d.ts +0 -1
  91. package/dist/Toast.js +4 -3
  92. package/dist/Toast.js.map +1 -1
  93. package/dist/Wizard.js +1 -1
  94. package/dist/Wizard.js.map +1 -1
  95. package/dist/WizardTab.js +0 -1
  96. package/dist/WizardTab.js.map +1 -1
  97. package/dist/assets/{bundle.esm-6e8e301d.js → bundle.esm-981c5cbb.js} +187 -189
  98. package/dist/assets/messagebundle_ar-bb470511.js +1 -0
  99. package/dist/assets/messagebundle_bg-a533dfab.js +1 -0
  100. package/dist/assets/messagebundle_cs-c70a7f36.js +1 -0
  101. package/dist/assets/messagebundle_da-e292cac5.js +1 -0
  102. package/dist/assets/messagebundle_de-5c108de6.js +1 -0
  103. package/dist/assets/messagebundle_el-44746e0b.js +1 -0
  104. package/dist/assets/messagebundle_en-4997b226.js +1 -0
  105. package/dist/assets/messagebundle_es-c0c1060f.js +1 -0
  106. package/dist/assets/messagebundle_et-a5f15d3b.js +1 -0
  107. package/dist/assets/messagebundle_fi-f4b8eb82.js +1 -0
  108. package/dist/assets/messagebundle_fr-af18ac46.js +1 -0
  109. package/dist/assets/messagebundle_hr-d893e46d.js +1 -0
  110. package/dist/assets/messagebundle_hu-230c58c9.js +1 -0
  111. package/dist/assets/messagebundle_it-5bf1436c.js +1 -0
  112. package/dist/assets/messagebundle_iw-dd60afc4.js +1 -0
  113. package/dist/assets/messagebundle_ko-c450bda3.js +1 -0
  114. package/dist/assets/messagebundle_lt-87ab0529.js +1 -0
  115. package/dist/assets/messagebundle_lv-fc413852.js +1 -0
  116. package/dist/assets/messagebundle_nl-34d7e236.js +1 -0
  117. package/dist/assets/messagebundle_no-f22648fb.js +1 -0
  118. package/dist/assets/messagebundle_pl-10303f09.js +1 -0
  119. package/dist/assets/messagebundle_pt-b7a40c67.js +1 -0
  120. package/dist/assets/messagebundle_ro-94628623.js +1 -0
  121. package/dist/assets/messagebundle_ru-1f6595ba.js +1 -0
  122. package/dist/assets/messagebundle_sk-89eabac1.js +1 -0
  123. package/dist/assets/messagebundle_sl-d56532f1.js +1 -0
  124. package/dist/assets/messagebundle_sr-cf7f3b32.js +1 -0
  125. package/dist/assets/messagebundle_sv-3a3b20d3.js +1 -0
  126. package/dist/assets/messagebundle_tr-33b16d09.js +1 -0
  127. package/dist/assets/messagebundle_uk-82e1f2c1.js +1 -0
  128. package/dist/assets/messagebundle_zh_CN-15ca05aa.js +1 -0
  129. package/dist/assets/messagebundle_zh_TW-ad6445e7.js +1 -0
  130. package/dist/css/themes/Badge.css +1 -1
  131. package/dist/css/themes/BreadcrumbsPopover.css +1 -1
  132. package/dist/css/themes/DatePickerPopover.css +1 -1
  133. package/dist/css/themes/FilterMenu.css +1 -1
  134. package/dist/css/themes/Footer.css +1 -1
  135. package/dist/css/themes/MastheadItem.css +1 -1
  136. package/dist/css/themes/MastheadMenu.css +1 -1
  137. package/dist/css/themes/MastheadMenuItem.css +1 -1
  138. package/dist/css/themes/MastheadShell.css +1 -1
  139. package/dist/css/themes/MediaPlayer.css +1 -1
  140. package/dist/css/themes/Modal.css +1 -1
  141. package/dist/css/themes/RatingIndicator.css +1 -1
  142. package/dist/css/themes/Slider.css +1 -1
  143. package/dist/css/themes/TableCell.css +1 -1
  144. package/dist/css/themes/TableCellBase.css +1 -1
  145. package/dist/css/themes/TextArea.css +1 -1
  146. package/dist/custom-elements-internal.json +232 -31
  147. package/dist/custom-elements.json +224 -30
  148. package/dist/features/SearchSuggestionsPopover.d.ts +16 -0
  149. package/dist/features/SearchSuggestionsPopover.js +49 -0
  150. package/dist/features/SearchSuggestionsPopover.js.map +1 -1
  151. package/dist/generated/assets/i18n/messagebundle_ar.json +1 -0
  152. package/dist/generated/assets/i18n/messagebundle_bg.json +1 -0
  153. package/dist/generated/assets/i18n/messagebundle_cs.json +1 -0
  154. package/dist/generated/assets/i18n/messagebundle_da.json +1 -0
  155. package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
  156. package/dist/generated/assets/i18n/messagebundle_el.json +1 -0
  157. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  158. package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
  159. package/dist/generated/assets/i18n/messagebundle_et.json +1 -0
  160. package/dist/generated/assets/i18n/messagebundle_fi.json +1 -0
  161. package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
  162. package/dist/generated/assets/i18n/messagebundle_hr.json +1 -0
  163. package/dist/generated/assets/i18n/messagebundle_hu.json +1 -0
  164. package/dist/generated/assets/i18n/messagebundle_it.json +1 -0
  165. package/dist/generated/assets/i18n/messagebundle_iw.json +1 -0
  166. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -0
  167. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -0
  168. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -0
  169. package/dist/generated/assets/i18n/messagebundle_nl.json +1 -0
  170. package/dist/generated/assets/i18n/messagebundle_no.json +1 -0
  171. package/dist/generated/assets/i18n/messagebundle_pl.json +1 -0
  172. package/dist/generated/assets/i18n/messagebundle_pt.json +1 -0
  173. package/dist/generated/assets/i18n/messagebundle_ro.json +1 -0
  174. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -0
  175. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -0
  176. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -0
  177. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -0
  178. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -0
  179. package/dist/generated/assets/i18n/messagebundle_tr.json +1 -0
  180. package/dist/generated/assets/i18n/messagebundle_uk.json +1 -0
  181. package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -0
  182. package/dist/generated/assets/i18n/messagebundle_zh_TW.json +1 -0
  183. package/dist/generated/i18n/i18n-defaults.d.ts +7 -1
  184. package/dist/generated/i18n/i18n-defaults.js +7 -1
  185. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  186. package/dist/generated/json-imports/i18n-static.js +86 -2
  187. package/dist/generated/json-imports/i18n-static.js.map +1 -1
  188. package/dist/generated/json-imports/i18n.js +58 -2
  189. package/dist/generated/json-imports/i18n.js.map +1 -1
  190. package/dist/generated/templates/BadgeTemplate.lit.js +4 -4
  191. package/dist/generated/templates/BadgeTemplate.lit.js.map +1 -1
  192. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +3 -3
  193. package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js.map +1 -1
  194. package/dist/generated/templates/CountrySelectorTemplate.lit.js +1 -1
  195. package/dist/generated/templates/CountrySelectorTemplate.lit.js.map +1 -1
  196. package/dist/generated/templates/FooterTemplate.lit.js +12 -11
  197. package/dist/generated/templates/FooterTemplate.lit.js.map +1 -1
  198. package/dist/generated/templates/ListItemTemplate.lit.js +2 -2
  199. package/dist/generated/templates/ListItemTemplate.lit.js.map +1 -1
  200. package/dist/generated/templates/ListTemplate.lit.js +3 -3
  201. package/dist/generated/templates/ListTemplate.lit.js.map +1 -1
  202. package/dist/generated/templates/MastheadItemTemplate.lit.js +17 -16
  203. package/dist/generated/templates/MastheadItemTemplate.lit.js.map +1 -1
  204. package/dist/generated/templates/MastheadMenuItemTemplate.lit.js +15 -14
  205. package/dist/generated/templates/MastheadMenuItemTemplate.lit.js.map +1 -1
  206. package/dist/generated/templates/MastheadMenuTemplate.lit.js +3 -3
  207. package/dist/generated/templates/MastheadMenuTemplate.lit.js.map +1 -1
  208. package/dist/generated/templates/MastheadProfileMenuTemplate.lit.js +1 -1
  209. package/dist/generated/templates/MastheadProfileMenuTemplate.lit.js.map +1 -1
  210. package/dist/generated/templates/MastheadShellTemplate.lit.js +10 -9
  211. package/dist/generated/templates/MastheadShellTemplate.lit.js.map +1 -1
  212. package/dist/generated/templates/PaginationTemplate.lit.js +3 -3
  213. package/dist/generated/templates/PaginationTemplate.lit.js.map +1 -1
  214. package/dist/generated/templates/PhoneNumberFieldTemplate.lit.js +1 -1
  215. package/dist/generated/templates/PhoneNumberFieldTemplate.lit.js.map +1 -1
  216. package/dist/generated/templates/SearchSuggestionsTemplate.lit.js +1 -1
  217. package/dist/generated/templates/SearchSuggestionsTemplate.lit.js.map +1 -1
  218. package/dist/generated/templates/SearchableListBaseTemplate.lit.js +2 -2
  219. package/dist/generated/templates/SearchableListBaseTemplate.lit.js.map +1 -1
  220. package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js +3 -3
  221. package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js.map +1 -1
  222. package/dist/generated/templates/SecondaryNavigationSubItemTemplate.lit.js +3 -3
  223. package/dist/generated/templates/SecondaryNavigationSubItemTemplate.lit.js.map +1 -1
  224. package/dist/generated/templates/SecondaryNavigationTemplate.lit.js +1 -1
  225. package/dist/generated/templates/SecondaryNavigationTemplate.lit.js.map +1 -1
  226. package/dist/generated/templates/StepInputTemplate.lit.js +1 -1
  227. package/dist/generated/templates/StepInputTemplate.lit.js.map +1 -1
  228. package/dist/generated/templates/WizardTemplate.lit.js +1 -1
  229. package/dist/generated/templates/WizardTemplate.lit.js.map +1 -1
  230. package/dist/generated/themes/Badge.css.js +1 -1
  231. package/dist/generated/themes/Badge.css.js.map +1 -1
  232. package/dist/generated/themes/BreadcrumbsPopover.css.js +1 -1
  233. package/dist/generated/themes/BreadcrumbsPopover.css.js.map +1 -1
  234. package/dist/generated/themes/DatePickerPopover.css.js +1 -1
  235. package/dist/generated/themes/DatePickerPopover.css.js.map +1 -1
  236. package/dist/generated/themes/FilterMenu.css.js +1 -1
  237. package/dist/generated/themes/FilterMenu.css.js.map +1 -1
  238. package/dist/generated/themes/Footer.css.js +1 -1
  239. package/dist/generated/themes/Footer.css.js.map +1 -1
  240. package/dist/generated/themes/MastheadItem.css.js +1 -1
  241. package/dist/generated/themes/MastheadItem.css.js.map +1 -1
  242. package/dist/generated/themes/MastheadMenu.css.js +1 -1
  243. package/dist/generated/themes/MastheadMenu.css.js.map +1 -1
  244. package/dist/generated/themes/MastheadMenuItem.css.js +1 -1
  245. package/dist/generated/themes/MastheadMenuItem.css.js.map +1 -1
  246. package/dist/generated/themes/MastheadShell.css.js +1 -1
  247. package/dist/generated/themes/MastheadShell.css.js.map +1 -1
  248. package/dist/generated/themes/MediaPlayer.css.js +1 -1
  249. package/dist/generated/themes/MediaPlayer.css.js.map +1 -1
  250. package/dist/generated/themes/Modal.css.js +1 -1
  251. package/dist/generated/themes/Modal.css.js.map +1 -1
  252. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  253. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  254. package/dist/generated/themes/Slider.css.js +1 -1
  255. package/dist/generated/themes/Slider.css.js.map +1 -1
  256. package/dist/generated/themes/TableCell.css.js +1 -1
  257. package/dist/generated/themes/TableCell.css.js.map +1 -1
  258. package/dist/generated/themes/TableCellBase.css.js +1 -1
  259. package/dist/generated/themes/TableCellBase.css.js.map +1 -1
  260. package/dist/generated/themes/TextArea.css.js +1 -1
  261. package/dist/generated/themes/TextArea.css.js.map +1 -1
  262. package/dist/i18n/messagebundle.properties +10 -0
  263. package/dist/i18n/messagebundle_ar.properties +1 -0
  264. package/dist/i18n/messagebundle_bg.properties +1 -0
  265. package/dist/i18n/messagebundle_cs.properties +1 -0
  266. package/dist/i18n/messagebundle_da.properties +1 -0
  267. package/dist/i18n/messagebundle_de.properties +1 -0
  268. package/dist/i18n/messagebundle_el.properties +1 -0
  269. package/dist/i18n/messagebundle_en.properties +4 -0
  270. package/dist/i18n/messagebundle_es.properties +1 -0
  271. package/dist/i18n/messagebundle_et.properties +1 -0
  272. package/dist/i18n/messagebundle_fi.properties +1 -0
  273. package/dist/i18n/messagebundle_fr.properties +1 -0
  274. package/dist/i18n/messagebundle_hr.properties +1 -0
  275. package/dist/i18n/messagebundle_hu.properties +1 -0
  276. package/dist/i18n/messagebundle_it.properties +1 -0
  277. package/dist/i18n/messagebundle_iw.properties +2 -0
  278. package/dist/i18n/messagebundle_ko.properties +1 -0
  279. package/dist/i18n/messagebundle_lt.properties +1 -0
  280. package/dist/i18n/messagebundle_lv.properties +1 -0
  281. package/dist/i18n/messagebundle_nl.properties +1 -0
  282. package/dist/i18n/messagebundle_no.properties +1 -0
  283. package/dist/i18n/messagebundle_pl.properties +1 -0
  284. package/dist/i18n/messagebundle_pt.properties +1 -0
  285. package/dist/i18n/messagebundle_pt_BR.properties +1 -0
  286. package/dist/i18n/messagebundle_ro.properties +1 -0
  287. package/dist/i18n/messagebundle_ru.properties +1 -0
  288. package/dist/i18n/messagebundle_sk.properties +1 -0
  289. package/dist/i18n/messagebundle_sl.properties +1 -0
  290. package/dist/i18n/messagebundle_sr.properties +2 -0
  291. package/dist/i18n/messagebundle_sv.properties +1 -0
  292. package/dist/i18n/messagebundle_tr.properties +1 -0
  293. package/dist/i18n/messagebundle_uk.properties +1 -0
  294. package/dist/i18n/messagebundle_zh_CN.properties +4 -0
  295. package/dist/i18n/messagebundle_zh_TW.properties +1 -0
  296. package/dist/types/BadgeDesign.d.ts +15 -0
  297. package/dist/types/BadgeDesign.js +18 -0
  298. package/dist/types/BadgeDesign.js.map +1 -0
  299. package/dist/types/IconPlacement.d.ts +5 -0
  300. package/dist/types/IconPlacement.js +7 -0
  301. package/dist/types/IconPlacement.js.map +1 -0
  302. package/dist/types/List.d.ts +8 -0
  303. package/dist/types/List.js.map +1 -1
  304. package/dist/utils/isLetterKeyPressed.d.ts +2 -0
  305. package/dist/utils/isLetterKeyPressed.js +5 -0
  306. package/dist/utils/isLetterKeyPressed.js.map +1 -0
  307. package/dist/utils/listItemLabelStartsWithKeyFocus.d.ts +3 -0
  308. package/dist/utils/listItemLabelStartsWithKeyFocus.js +55 -0
  309. package/dist/utils/listItemLabelStartsWithKeyFocus.js.map +1 -0
  310. package/dist/utils/listItemLabelUtils.d.ts +7 -0
  311. package/dist/utils/listItemLabelUtils.js +36 -0
  312. package/dist/utils/listItemLabelUtils.js.map +1 -0
  313. package/dist/vscode.html-custom-data.json +63 -26
  314. package/dist/web-types.json +113 -38
  315. package/package.json +1 -1
  316. package/src/Badge.hbs +16 -5
  317. package/src/Badge.ts +36 -19
  318. package/src/Breadcrumbs.ts +92 -66
  319. package/src/BreadcrumbsItem.ts +0 -1
  320. package/src/BreadcrumbsPopover.hbs +11 -9
  321. package/src/Checkbox.ts +0 -1
  322. package/src/CountrySelector.hbs +0 -1
  323. package/src/CountrySelector.ts +30 -16
  324. package/src/DatePicker.ts +2 -2
  325. package/src/Dropdown.ts +0 -2
  326. package/src/Footer.hbs +52 -28
  327. package/src/Footer.ts +81 -22
  328. package/src/Link.ts +5 -9
  329. package/src/List.hbs +2 -2
  330. package/src/List.ts +182 -112
  331. package/src/ListItem.hbs +2 -2
  332. package/src/ListItem.ts +4 -0
  333. package/src/MastheadItem.hbs +14 -4
  334. package/src/MastheadItem.ts +42 -9
  335. package/src/MastheadMenu.hbs +4 -4
  336. package/src/MastheadMenu.ts +20 -8
  337. package/src/MastheadMenuItem.hbs +10 -2
  338. package/src/MastheadMenuItem.ts +28 -1
  339. package/src/MastheadMobileMenu.ts +2 -2
  340. package/src/MastheadProfileMenu.hbs +1 -0
  341. package/src/MastheadProfileMenu.ts +3 -2
  342. package/src/MastheadShell.hbs +25 -19
  343. package/src/MastheadShell.ts +25 -5
  344. package/src/Pagination.hbs +3 -2
  345. package/src/Pagination.ts +110 -60
  346. package/src/PhoneNumberField.hbs +3 -3
  347. package/src/PhoneNumberField.ts +16 -8
  348. package/src/RangeSlider.ts +0 -1
  349. package/src/Search.hbs +10 -10
  350. package/src/Search.ts +17 -17
  351. package/src/SearchSuggestions.hbs +1 -0
  352. package/src/SearchableListBase.hbs +3 -1
  353. package/src/SearchableListBase.ts +57 -6
  354. package/src/SecondaryNavigation.hbs +1 -0
  355. package/src/SecondaryNavigation.ts +23 -16
  356. package/src/SecondaryNavigationItem.hbs +10 -7
  357. package/src/SecondaryNavigationItem.ts +58 -28
  358. package/src/SecondaryNavigationSubItem.hbs +3 -0
  359. package/src/SecondaryNavigationSubItem.ts +3 -0
  360. package/src/SegmentedButton.ts +2 -2
  361. package/src/SelectBox.ts +1 -1
  362. package/src/SideNavigationGroup.ts +0 -1
  363. package/src/SideNavigationItem.ts +0 -1
  364. package/src/SideNavigationSubItem.ts +0 -1
  365. package/src/Slider.ts +0 -1
  366. package/src/StepInput.hbs +16 -16
  367. package/src/TabNavigation.ts +2 -2
  368. package/src/Tag.ts +1 -5
  369. package/src/Tile.ts +2 -2
  370. package/src/Toast.ts +4 -3
  371. package/src/Wizard.hbs +1 -0
  372. package/src/Wizard.ts +1 -1
  373. package/src/WizardTab.ts +0 -1
  374. package/src/features/SearchSuggestionsPopover.ts +67 -1
  375. package/src/generated/i18n/i18n-defaults.ts +2 -2
  376. package/src/generated/json-imports/i18n-static.ts +86 -2
  377. package/src/generated/json-imports/i18n.ts +59 -3
  378. package/src/generated/templates/BadgeTemplate.lit.ts +3 -3
  379. package/src/generated/templates/BreadcrumbsPopoverTemplate.lit.ts +3 -3
  380. package/src/generated/templates/CountrySelectorTemplate.lit.ts +1 -1
  381. package/src/generated/templates/FooterTemplate.lit.ts +12 -11
  382. package/src/generated/templates/ListItemTemplate.lit.ts +2 -2
  383. package/src/generated/templates/ListTemplate.lit.ts +3 -3
  384. package/src/generated/templates/MastheadItemTemplate.lit.ts +17 -16
  385. package/src/generated/templates/MastheadMenuItemTemplate.lit.ts +15 -14
  386. package/src/generated/templates/MastheadMenuTemplate.lit.ts +3 -3
  387. package/src/generated/templates/MastheadProfileMenuTemplate.lit.ts +1 -1
  388. package/src/generated/templates/MastheadShellTemplate.lit.ts +10 -9
  389. package/src/generated/templates/PaginationTemplate.lit.ts +3 -3
  390. package/src/generated/templates/PhoneNumberFieldTemplate.lit.ts +1 -1
  391. package/src/generated/templates/SearchSuggestionsTemplate.lit.ts +1 -1
  392. package/src/generated/templates/SearchableListBaseTemplate.lit.ts +2 -2
  393. package/src/generated/templates/SecondaryNavigationItemTemplate.lit.ts +3 -3
  394. package/src/generated/templates/SecondaryNavigationSubItemTemplate.lit.ts +3 -3
  395. package/src/generated/templates/SecondaryNavigationTemplate.lit.ts +1 -1
  396. package/src/generated/templates/StepInputTemplate.lit.ts +1 -1
  397. package/src/generated/templates/WizardTemplate.lit.ts +1 -1
  398. package/src/generated/themes/Badge.css.ts +1 -1
  399. package/src/generated/themes/BreadcrumbsPopover.css.ts +1 -1
  400. package/src/generated/themes/DatePickerPopover.css.ts +1 -1
  401. package/src/generated/themes/FilterMenu.css.ts +1 -1
  402. package/src/generated/themes/Footer.css.ts +1 -1
  403. package/src/generated/themes/MastheadItem.css.ts +1 -1
  404. package/src/generated/themes/MastheadMenu.css.ts +1 -1
  405. package/src/generated/themes/MastheadMenuItem.css.ts +1 -1
  406. package/src/generated/themes/MastheadShell.css.ts +1 -1
  407. package/src/generated/themes/MediaPlayer.css.ts +1 -1
  408. package/src/generated/themes/Modal.css.ts +1 -1
  409. package/src/generated/themes/RatingIndicator.css.ts +1 -1
  410. package/src/generated/themes/Slider.css.ts +1 -1
  411. package/src/generated/themes/TableCell.css.ts +1 -1
  412. package/src/generated/themes/TableCellBase.css.ts +1 -1
  413. package/src/generated/themes/TextArea.css.ts +1 -1
  414. package/src/i18n/messagebundle.properties +10 -0
  415. package/src/i18n/messagebundle_ar.properties +1 -0
  416. package/src/i18n/messagebundle_bg.properties +1 -0
  417. package/src/i18n/messagebundle_cs.properties +1 -0
  418. package/src/i18n/messagebundle_da.properties +1 -0
  419. package/src/i18n/messagebundle_de.properties +1 -0
  420. package/src/i18n/messagebundle_el.properties +1 -0
  421. package/src/i18n/messagebundle_en.properties +4 -0
  422. package/src/i18n/messagebundle_es.properties +1 -0
  423. package/src/i18n/messagebundle_et.properties +1 -0
  424. package/src/i18n/messagebundle_fi.properties +1 -0
  425. package/src/i18n/messagebundle_fr.properties +1 -0
  426. package/src/i18n/messagebundle_hr.properties +1 -0
  427. package/src/i18n/messagebundle_hu.properties +1 -0
  428. package/src/i18n/messagebundle_it.properties +1 -0
  429. package/src/i18n/messagebundle_iw.properties +2 -0
  430. package/src/i18n/messagebundle_ko.properties +1 -0
  431. package/src/i18n/messagebundle_lt.properties +1 -0
  432. package/src/i18n/messagebundle_lv.properties +1 -0
  433. package/src/i18n/messagebundle_nl.properties +1 -0
  434. package/src/i18n/messagebundle_no.properties +1 -0
  435. package/src/i18n/messagebundle_pl.properties +1 -0
  436. package/src/i18n/messagebundle_pt.properties +1 -0
  437. package/src/i18n/messagebundle_pt_BR.properties +1 -0
  438. package/src/i18n/messagebundle_ro.properties +1 -0
  439. package/src/i18n/messagebundle_ru.properties +1 -0
  440. package/src/i18n/messagebundle_sk.properties +1 -0
  441. package/src/i18n/messagebundle_sl.properties +1 -0
  442. package/src/i18n/messagebundle_sr.properties +2 -0
  443. package/src/i18n/messagebundle_sv.properties +1 -0
  444. package/src/i18n/messagebundle_tr.properties +1 -0
  445. package/src/i18n/messagebundle_uk.properties +1 -0
  446. package/src/i18n/messagebundle_zh_CN.properties +4 -0
  447. package/src/i18n/messagebundle_zh_TW.properties +1 -0
  448. package/src/themes/Badge.css +48 -52
  449. package/src/themes/BreadcrumbsPopover.css +1 -0
  450. package/src/themes/DatePickerPopover.css +9 -0
  451. package/src/themes/FilterMenu.css +6 -6
  452. package/src/themes/Footer.css +22 -3
  453. package/src/themes/MastheadItem.css +4 -0
  454. package/src/themes/MastheadMenu.css +1 -1
  455. package/src/themes/MastheadMenuItem.css +4 -0
  456. package/src/themes/MastheadShell.css +5 -0
  457. package/src/themes/MediaPlayer.css +2 -1
  458. package/src/themes/Modal.css +1 -0
  459. package/src/themes/TableCell.css +0 -2
  460. package/src/themes/TableCellBase.css +1 -0
  461. package/src/themes/TextArea.css +1 -1
  462. package/src/types/BadgeDesign.ts +17 -0
  463. package/src/types/IconPlacement.ts +6 -0
  464. package/src/types/List.ts +9 -0
  465. package/src/utils/isLetterKeyPressed.ts +5 -0
  466. package/src/utils/listItemLabelStartsWithKeyFocus.ts +74 -0
  467. package/src/utils/listItemLabelUtils.ts +50 -0
  468. package/dist/assets/messagebundle_de-8158912e.js +0 -1
  469. package/dist/assets/messagebundle_en-c677773a.js +0 -1
  470. package/dist/assets/messagebundle_es-8dab6565.js +0 -1
  471. package/dist/assets/messagebundle_fr-669aca6d.js +0 -1
@@ -14,6 +14,8 @@ import MastheadMenuTemplate from "./generated/templates/MastheadMenuTemplate.lit
14
14
  // Styles
15
15
  import MastheadMenuCss from "./generated/themes/MastheadMenu.css.js";
16
16
 
17
+ const rowClass = "udex-masthead-menu_with-one-column";
18
+
17
19
  export type Item = {
18
20
  title: string;
19
21
  url: string;
@@ -21,6 +23,7 @@ export type Item = {
21
23
  };
22
24
 
23
25
  export type SubMenuLinkItem = {
26
+ categoryId: string;
24
27
  category: string;
25
28
  url: string;
26
29
  items: Item[];
@@ -72,7 +75,7 @@ export type MenuItemClickEventDetail = {
72
75
  type: HTMLElement,
73
76
  },
74
77
  originalEvent: {
75
- type: PointerEvent,
78
+ type: Event,
76
79
  },
77
80
  },
78
81
  })
@@ -84,7 +87,7 @@ class UDExMastheadMenu extends UI5Element {
84
87
  * @default ""
85
88
  * @public
86
89
  */
87
- @property({ type: String, defaultValue: "" })
90
+ @property({ type: String })
88
91
  menuTitle!: string;
89
92
 
90
93
  /**
@@ -96,12 +99,12 @@ class UDExMastheadMenu extends UI5Element {
96
99
  @property({ type: String, defaultValue: "[]" })
97
100
  subItems!: string;
98
101
 
99
- handleKeyDown(e: KeyboardEvent) {
102
+ handleKeyDown(e: KeyboardEvent): void {
100
103
  this.handleUpArrow(e);
101
104
  this.handleDownArrow(e);
102
105
  }
103
106
 
104
- handleUpArrow(e: KeyboardEvent) {
107
+ handleUpArrow(e: KeyboardEvent): void {
105
108
  if (isUp(e)) {
106
109
  e.preventDefault();
107
110
  const currentItem = e.target as UDExMastheadMenuItem;
@@ -109,7 +112,7 @@ class UDExMastheadMenu extends UI5Element {
109
112
  }
110
113
  }
111
114
 
112
- handleDownArrow(e: KeyboardEvent) {
115
+ handleDownArrow(e: KeyboardEvent): void {
113
116
  if (isDown(e)) {
114
117
  e.preventDefault();
115
118
  const currentItem = e.target as UDExMastheadMenuItem;
@@ -117,7 +120,7 @@ class UDExMastheadMenu extends UI5Element {
117
120
  }
118
121
  }
119
122
 
120
- handleMenuItemClick(e: Event) {
123
+ handleMenuItemClick(e: Event): void {
121
124
  this.fireEvent<MenuItemClickEventDetail>("menu-item-click", {
122
125
  item: e.target as UDExMastheadMenuItem,
123
126
  originalEvent: e,
@@ -151,12 +154,21 @@ class UDExMastheadMenu extends UI5Element {
151
154
  }
152
155
 
153
156
  get itemsList(): Array<MenuItem> {
154
- return this.parseArrayFromString(this.subItems);
157
+ let id = 1;
158
+ const parsedItems: Array<MenuItem> = this.parseArrayFromString(this.subItems);
159
+ return parsedItems.map((mainItem: MenuItem) => {
160
+ mainItem.subMenuLinkItems = mainItem.subMenuLinkItems.map((category: SubMenuLinkItem) => {
161
+ category.categoryId = `${id++}`;
162
+ return category;
163
+ });
164
+
165
+ return mainItem;
166
+ });
155
167
  }
156
168
 
157
169
  get oneRowClass(): string {
158
170
  const hasOneColumn = this.itemsList.length === 1 && this.itemsList[0].subMenuLinkItems.length === 1;
159
- return hasOneColumn ? "udex-masthead-menu_with-one-column" : "";
171
+ return hasOneColumn ? rowClass : "";
160
172
  }
161
173
  }
162
174
 
@@ -1,7 +1,15 @@
1
1
  {{#if isActive}}
2
+ {{#if externalLink}}
3
+ <span
4
+ id="new-win-desc"
5
+ class="udex-masthead-hidden-text">
6
+ {{openInNewWindowText}}
7
+ </span>
8
+ {{/if}}
2
9
  <a
3
10
  class="udex-masthead-menu-item {{rootClass}}"
4
- role="{{accessibleRole}}"
11
+ aria-describedby="{{ariaDescribedby}}"
12
+ role="{{accessibleRoleText}}"
5
13
  href="{{url}}"
6
14
  part="menu-item-link"
7
15
  target="{{target}}">
@@ -30,7 +38,7 @@
30
38
  _id="{{id}}"
31
39
  class="udex-masthead-menu-item {{rootClass}}"
32
40
  part="menu-item-button"
33
- role="{{accessibleRole}}">
41
+ role="button">
34
42
  {{#if iconStart}}
35
43
  {{>arrow-left}}
36
44
  {{/if}}
@@ -4,8 +4,11 @@ import property from "@ui5/webcomponents-base/dist/decorators/property.js";
4
4
  import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
5
5
  import Icon from "@ui5/webcomponents/dist/Icon.js";
6
6
  import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
7
+ import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
8
+ import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
7
9
  import "@ui5/webcomponents-icons/dist/slim-arrow-right.js";
8
10
  import "@ui5/webcomponents-icons/dist/slim-arrow-left.js";
11
+ import { OPENS_IN_A_NEW_WINDOW } from "./generated/i18n/i18n-defaults.js";
9
12
 
10
13
  import MastheadMenuItemTemplate from "./generated/templates/MastheadMenuItemTemplate.lit.js";
11
14
 
@@ -17,6 +20,11 @@ export enum ItemType {
17
20
  Button = "Button",
18
21
  Link = "Link"
19
22
  }
23
+
24
+ export enum Target {
25
+ _blank = "_blank",
26
+ _self = "_self",
27
+ }
20
28
  /**
21
29
  * @class
22
30
  *
@@ -36,6 +44,7 @@ export enum ItemType {
36
44
  */
37
45
  @customElement({
38
46
  tag: "udex-masthead-menu-item",
47
+ languageAware: true,
39
48
  renderer: litRender,
40
49
  styles: MastheadMenuItemCss,
41
50
  template: MastheadMenuItemTemplate,
@@ -128,6 +137,12 @@ class UDExMastheadMenuItem extends UI5Element {
128
137
  @property({ type: Boolean })
129
138
  iconEnd?: boolean;
130
139
 
140
+ static i18nBundle: I18nBundle;
141
+
142
+ static async onDefine(): Promise<void> {
143
+ UDExMastheadMenuItem.i18nBundle = await getI18nBundle("@udex/web-components");
144
+ }
145
+
131
146
  onEnterDOM() {
132
147
  if (isDesktop()) {
133
148
  this.setAttribute("desktop", "");
@@ -158,7 +173,7 @@ class UDExMastheadMenuItem extends UI5Element {
158
173
  }
159
174
 
160
175
  get target(): string {
161
- return this.externalLink ? "_blank" : "_self";
176
+ return this.externalLink ? Target._blank : Target._self;
162
177
  }
163
178
 
164
179
  get lastWordOfLabel(): string | undefined {
@@ -169,6 +184,18 @@ class UDExMastheadMenuItem extends UI5Element {
169
184
  const leadingWords = this.label.split(" ").slice(0, -1).join(" ");
170
185
  return `${leadingWords} `;
171
186
  }
187
+
188
+ get openInNewWindowText(): string {
189
+ return UDExMastheadMenuItem.i18nBundle.getText(OPENS_IN_A_NEW_WINDOW);
190
+ }
191
+
192
+ get ariaDescribedby(): string | null {
193
+ return this.externalLink ? "new-win-desc" : null;
194
+ }
195
+
196
+ get accessibleRoleText(): string | null {
197
+ return this.accessibleRole ? this.accessibleRole : null;
198
+ }
172
199
  }
173
200
 
174
201
  UDExMastheadMenuItem.define();
@@ -60,7 +60,7 @@ export type MobileItemClickEventDetail = {
60
60
  type: HTMLElement,
61
61
  },
62
62
  originalEvent: {
63
- type: PointerEvent,
63
+ type: Event,
64
64
  },
65
65
  },
66
66
  })
@@ -236,7 +236,7 @@ class UDExMastheadMobileMenu extends UI5Element {
236
236
 
237
237
  handleMenuMode() {
238
238
  if (this.isCategoriesOpen) {
239
- if (this.isNoMenuItemsMode) {
239
+ if (this.isNoMenuItemsMode && this.hasExploreBtnSlot) {
240
240
  this.openCategories(this.exploreItem);
241
241
  }
242
242
 
@@ -2,6 +2,7 @@
2
2
  <div class="udex-masthead-profile-menu__header">
3
3
  {{#if userData}}
4
4
  <udex-avatar
5
+ aria-hidden="true"
5
6
  size="L"
6
7
  initials="{{userData.avatarInitials}}">
7
8
  {{#if userData.avatarUrl}}
@@ -63,7 +63,7 @@ export type ProfileMenuItemClickEventDetail = {
63
63
  @event("logout", {
64
64
  detail: {
65
65
  originalEvent: {
66
- type: PointerEvent,
66
+ type: Event,
67
67
  },
68
68
  },
69
69
  })
@@ -79,7 +79,7 @@ export type ProfileMenuItemClickEventDetail = {
79
79
  type: HTMLElement,
80
80
  },
81
81
  originalEvent: {
82
- type: PointerEvent,
82
+ type: Event,
83
83
  },
84
84
  },
85
85
  })
@@ -119,6 +119,7 @@ class UDExMastheadProfileMenu extends UI5Element {
119
119
  */
120
120
  @slot({ type: Node, "default": false })
121
121
  message!: Array<Node>;
122
+
122
123
  static i18nBundle: I18nBundle;
123
124
 
124
125
  static async onDefine(): Promise<void> {
@@ -9,14 +9,15 @@
9
9
  {{/if}}
10
10
 
11
11
  {{#if isMainMenuVisible}}
12
- <div
13
- class="udex-masthead-shell__main-menu"
14
- data-menubar-item-expanded="true"
15
- role="menubar">
16
- {{#each menuItems}}
17
- {{>item}}
18
- {{/each}}
19
- </div>
12
+ <nav aria-label="{{mainNavigationAriaLabel}}">
13
+ <ul
14
+ class="udex-masthead-shell__main-menu"
15
+ aria-label="{{mainNavigationAriaLabel}}">
16
+ {{#each menuItems}}
17
+ {{>item}}
18
+ {{/each}}
19
+ </ul>
20
+ </nav>
20
21
  {{/if}}
21
22
  </div>
22
23
 
@@ -30,6 +31,7 @@
30
31
  class="udex-masthead-shell__close-search-btn"
31
32
  size="Small"
32
33
  icon="decline"
34
+ tooltip="{{closeButtonAccessibleName}}"
33
35
  accessible-name="{{closeButtonAccessibleName}}"
34
36
  @click={{hideSearch}}>
35
37
  </udex-control-button>
@@ -39,6 +41,17 @@
39
41
 
40
42
  {{#if isRightMenuVisible}}
41
43
  <div class="udex-masthead-shell__right-menu">
44
+ {{#if hasMobileMenuButtons}}
45
+ <udex-masthead-item
46
+ @ui5-item-click="{{handleMobileMenuClick}}"
47
+ class="udex-masthead-shell__menu-btn"
48
+ accessible-role="button"
49
+ icon="menu2"
50
+ part="menu-open-btn"
51
+ accessible-name="menu">
52
+ <slot slot="dropdown" name="mobileMenu"></slot>
53
+ </udex-masthead-item>
54
+ {{/if}}
42
55
  {{#if hasExploreSAP}}
43
56
  <div
44
57
  class="udex-masthead-shell__explore"
@@ -73,15 +86,6 @@
73
86
  </div>
74
87
  {{/if}}
75
88
  {{#if hasMobileMenuButtons}}
76
- <udex-masthead-item
77
- @ui5-item-click="{{handleMobileMenuClick}}"
78
- class="udex-masthead-shell__menu-btn"
79
- accessible-role="button"
80
- icon="menu2"
81
- part="menu-open-btn"
82
- accessible-name="menu">
83
- <slot slot="dropdown" name="mobileMenu"></slot>
84
- </udex-masthead-item>
85
89
  <udex-masthead-item
86
90
  @keydown="{{handleEnterAndSpaceOnCloseBtn}}"
87
91
  @ui5-item-click="{{handleMobileCloseClick}}"
@@ -98,9 +102,11 @@
98
102
  </div>
99
103
 
100
104
  {{#*inline "item"}}
101
- <div @ui5-item-click="{{../setSelectedItem}}" class="udex-masthead-shell__item" role="menuitem">
105
+ <li
106
+ class="udex-masthead-shell__item"
107
+ @ui5-item-click="{{../setSelectedItem}}">
102
108
  <slot name="{{_individualSlot}}"></slot>
103
- </div>
109
+ </li>
104
110
  {{/inline}}
105
111
 
106
112
  {{#*inline "logo"}}
@@ -13,6 +13,8 @@ import "@ui5/webcomponents-icons/dist/decline.js";
13
13
  import "@ui5/webcomponents-icons/dist/menu2.js";
14
14
  import "@ui5/webcomponents-icons/dist/search.js";
15
15
  import "@ui5/webcomponents-icons/dist/cart.js";
16
+ import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
17
+ import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
16
18
  import UDExMastheadItem from "./MastheadItem.js";
17
19
  import UDExMastheadMenu from "./MastheadMenu.js";
18
20
  import UDExControlButton from "./ControlButton.js";
@@ -23,6 +25,7 @@ import MastheadShellTemplate from "./generated/templates/MastheadShellTemplate.l
23
25
 
24
26
  // Styles
25
27
  import MastheadShellCss from "./generated/themes/MastheadShell.css.js";
28
+ import { MAIN_LINKS } from "./generated/i18n/i18n-defaults.js";
26
29
 
27
30
  const breakpointSizeM: number = 1279;
28
31
  /**
@@ -44,6 +47,7 @@ const breakpointSizeM: number = 1279;
44
47
  */
45
48
  @customElement({
46
49
  tag: "udex-masthead-shell",
50
+ languageAware: true,
47
51
  renderer: litRender,
48
52
  styles: MastheadShellCss,
49
53
  template: MastheadShellTemplate,
@@ -85,7 +89,7 @@ const breakpointSizeM: number = 1279;
85
89
  @event("logo-click", {
86
90
  detail: {
87
91
  originalEvent: {
88
- type: PointerEvent,
92
+ type: Event,
89
93
  },
90
94
  },
91
95
  })
@@ -98,7 +102,7 @@ const breakpointSizeM: number = 1279;
98
102
  @event("site-label-click", {
99
103
  detail: {
100
104
  originalEvent: {
101
- type: PointerEvent,
105
+ type: Event,
102
106
  },
103
107
  },
104
108
  })
@@ -289,6 +293,12 @@ class UDExMastheadShell extends UI5Element {
289
293
  _rootHolder!: HTMLElement | null | undefined;
290
294
  _shouldHandleResize!: boolean;
291
295
 
296
+ static i18nBundle: I18nBundle;
297
+
298
+ static async onDefine(): Promise<void> {
299
+ UDExMastheadShell.i18nBundle = await getI18nBundle("@udex/web-components");
300
+ }
301
+
292
302
  constructor() {
293
303
  super();
294
304
  this._handleResizeBound = this._handleResize.bind(this);
@@ -331,7 +341,7 @@ class UDExMastheadShell extends UI5Element {
331
341
  this._shouldHandleResize = true;
332
342
  }
333
343
 
334
- handleKeyDown(e: KeyboardEvent) {
344
+ handleKeyDown(e: KeyboardEvent): void {
335
345
  e.stopPropagation();
336
346
  this.handleLeftArrow(e);
337
347
  this.handleRightArrow(e);
@@ -341,6 +351,9 @@ class UDExMastheadShell extends UI5Element {
341
351
  if (isLeft(e)) {
342
352
  const currentItem = e.target as UDExMastheadItem;
343
353
  if (this.isNavigationItem(currentItem)) {
354
+ if (currentItem.selected) {
355
+ currentItem.closeDropdown();
356
+ }
344
357
  this.focusPreviousMenuItem(currentItem);
345
358
  }
346
359
  }
@@ -350,6 +363,9 @@ class UDExMastheadShell extends UI5Element {
350
363
  if (isRight(e)) {
351
364
  const currentItem = e.target as UDExMastheadItem;
352
365
  if (this.isNavigationItem(currentItem)) {
366
+ if (currentItem.selected) {
367
+ currentItem.closeDropdown();
368
+ }
353
369
  this.focusNextMenuItem(currentItem);
354
370
  }
355
371
  }
@@ -399,15 +415,15 @@ class UDExMastheadShell extends UI5Element {
399
415
  }
400
416
 
401
417
  handleEnterAndSpaceOnCloseBtn(e: KeyboardEvent) {
402
- e.preventDefault();
403
418
  if (isSpace(e) || isEnter(e)) {
419
+ e.preventDefault();
404
420
  this.closeMobileMenu();
405
421
  this.mobileBtn?.focus();
406
422
  }
407
423
  }
408
424
 
409
425
  handleOutsideClick(): void {
410
- document.addEventListener("click", (e: MouseEvent) => {
426
+ document.addEventListener("click", (e: Event) => {
411
427
  const el = e.target as UDExMastheadItem;
412
428
  const isMobile = window.innerWidth < 1280;
413
429
  const isDropdownSlot = el.getAttribute("slot") === "dropdown";
@@ -565,6 +581,10 @@ class UDExMastheadShell extends UI5Element {
565
581
  get isSearchVisible(): boolean {
566
582
  return this.showSearchByDefault || this._isSearchOpened;
567
583
  }
584
+
585
+ get mainNavigationAriaLabel(): string {
586
+ return UDExMastheadShell.i18nBundle.getText(MAIN_LINKS);
587
+ }
568
588
  }
569
589
 
570
590
  UDExMastheadShell.define();
@@ -1,6 +1,6 @@
1
1
  {{#if pages}}
2
2
  <nav aria-label="pagination" class="{{paginationClass}}">
3
- <ul class="udex-pagination__list">
3
+ <ul class="udex-pagination__list" role="navigation" aria-label="{{paginationAccessibleName}}">
4
4
  {{#if absoluteNavigation}}
5
5
  <li class="udex-pagination__item--first udex-pagination__item">
6
6
  <udex-button
@@ -31,6 +31,7 @@
31
31
  aria-label="{{accessibleName}}"
32
32
  @click="{{../onPageClick}}"
33
33
  ?active="{{active}}"
34
+ aria-current="{{ariaCurrent}}"
34
35
  index="{{index}}">
35
36
  <span class="udex-pagination__page--value">{{value}}</span>
36
37
  </a>
@@ -38,7 +39,7 @@
38
39
  {{/each}}
39
40
  {{/if}}
40
41
  {{#if typeShort}}
41
- <li class="udex-pagination__item udex-pagination__item--short" tabindex="0" aria-label="{{paginationShortAccessibleName}}">
42
+ <li class="udex-pagination__item udex-pagination__item--short" tabindex="-1" aria-label="{{paginationShortAccessibleName}}">
42
43
  <span class="udex-pagination__item--short-value">{{shortTextStart}}</span>
43
44
  <span class="udex-pagination__item--short-separator">{{shortTextSeparator}}</span>
44
45
  <span class="udex-pagination__item--short-value">{{shortTextEnd}}</span>