@sapudex/web-components 0.127.6 → 0.143.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 (434) hide show
  1. package/bundle.esm.js +2 -0
  2. package/dist/Accordion.d.ts +1 -1
  3. package/dist/Accordion.js +2 -2
  4. package/dist/Accordion.js.map +1 -1
  5. package/dist/AccordionItem.d.ts +1 -1
  6. package/dist/AccordionItem.js +2 -2
  7. package/dist/AccordionItem.js.map +1 -1
  8. package/dist/Avatar.js +1 -1
  9. package/dist/Avatar.js.map +1 -1
  10. package/dist/Breadcrumbs.js +1 -1
  11. package/dist/Breadcrumbs.js.map +1 -1
  12. package/dist/Carousel.js +1 -1
  13. package/dist/Carousel.js.map +1 -1
  14. package/dist/Checkbox.d.ts +1 -1
  15. package/dist/Checkbox.js +1 -1
  16. package/dist/Checkbox.js.map +1 -1
  17. package/dist/CountrySelector.d.ts +24 -6
  18. package/dist/CountrySelector.js +32 -10
  19. package/dist/CountrySelector.js.map +1 -1
  20. package/dist/DatePicker.d.ts +1 -0
  21. package/dist/DatePicker.js +5 -2
  22. package/dist/DatePicker.js.map +1 -1
  23. package/dist/Dropdown.d.ts +2 -1
  24. package/dist/Dropdown.js +16 -4
  25. package/dist/Dropdown.js.map +1 -1
  26. package/dist/FilterMenu.d.ts +21 -6
  27. package/dist/FilterMenu.js +66 -21
  28. package/dist/FilterMenu.js.map +1 -1
  29. package/dist/Footer.d.ts +9 -1
  30. package/dist/Footer.js +9 -2
  31. package/dist/Footer.js.map +1 -1
  32. package/dist/InputGroup.js +1 -1
  33. package/dist/InputGroup.js.map +1 -1
  34. package/dist/Link.d.ts +1 -1
  35. package/dist/Link.js +1 -1
  36. package/dist/Link.js.map +1 -1
  37. package/dist/List.d.ts +1 -1
  38. package/dist/List.js +18 -2
  39. package/dist/List.js.map +1 -1
  40. package/dist/ListGroupHeader.d.ts +2 -2
  41. package/dist/ListGroupHeader.js +2 -2
  42. package/dist/ListGroupHeader.js.map +1 -1
  43. package/dist/ListItem.d.ts +3 -3
  44. package/dist/ListItem.js +7 -8
  45. package/dist/ListItem.js.map +1 -1
  46. package/dist/ListItemBase.d.ts +2 -2
  47. package/dist/ListItemBase.js.map +1 -1
  48. package/dist/ListSelectAll.d.ts +1 -1
  49. package/dist/ListSelectAll.js +2 -2
  50. package/dist/ListSelectAll.js.map +1 -1
  51. package/dist/MastheadItem.d.ts +9 -1
  52. package/dist/MastheadItem.js +28 -16
  53. package/dist/MastheadItem.js.map +1 -1
  54. package/dist/MastheadMenu.d.ts +5 -0
  55. package/dist/MastheadMenu.js +24 -0
  56. package/dist/MastheadMenu.js.map +1 -1
  57. package/dist/MastheadMenuItem.d.ts +2 -3
  58. package/dist/MastheadMenuItem.js +2 -17
  59. package/dist/MastheadMenuItem.js.map +1 -1
  60. package/dist/MastheadMobileMenu.d.ts +25 -5
  61. package/dist/MastheadMobileMenu.js +136 -22
  62. package/dist/MastheadMobileMenu.js.map +1 -1
  63. package/dist/MastheadProfileMenu.d.ts +13 -4
  64. package/dist/MastheadProfileMenu.js +41 -10
  65. package/dist/MastheadProfileMenu.js.map +1 -1
  66. package/dist/MastheadShell.d.ts +24 -5
  67. package/dist/MastheadShell.js +77 -29
  68. package/dist/MastheadShell.js.map +1 -1
  69. package/dist/MediaPlayer.d.ts +3 -3
  70. package/dist/MediaPlayer.js +115 -25
  71. package/dist/MediaPlayer.js.map +1 -1
  72. package/dist/MessageStrip.js +1 -1
  73. package/dist/MessageStrip.js.map +1 -1
  74. package/dist/Pagination.js +1 -1
  75. package/dist/Pagination.js.map +1 -1
  76. package/dist/PasswordField.js +1 -1
  77. package/dist/PasswordField.js.map +1 -1
  78. package/dist/PhoneNumberField.d.ts +26 -0
  79. package/dist/PhoneNumberField.js +47 -3
  80. package/dist/PhoneNumberField.js.map +1 -1
  81. package/dist/RatingBar.js +1 -1
  82. package/dist/RatingBar.js.map +1 -1
  83. package/dist/Review.js +1 -1
  84. package/dist/Review.js.map +1 -1
  85. package/dist/ReviewItem.d.ts +105 -0
  86. package/dist/ReviewItem.js +157 -0
  87. package/dist/ReviewItem.js.map +1 -0
  88. package/dist/Search.d.ts +15 -1
  89. package/dist/Search.js +31 -6
  90. package/dist/Search.js.map +1 -1
  91. package/dist/SearchableListBase.d.ts +5 -0
  92. package/dist/SearchableListBase.js +11 -4
  93. package/dist/SearchableListBase.js.map +1 -1
  94. package/dist/SecondaryNavigation.d.ts +2 -0
  95. package/dist/SecondaryNavigation.js +19 -12
  96. package/dist/SecondaryNavigation.js.map +1 -1
  97. package/dist/SecondaryNavigationItem.d.ts +8 -0
  98. package/dist/SecondaryNavigationItem.js +20 -1
  99. package/dist/SecondaryNavigationItem.js.map +1 -1
  100. package/dist/SecondaryNavigationItemBase.js +1 -1
  101. package/dist/SecondaryNavigationItemBase.js.map +1 -1
  102. package/dist/SecondaryNavigationSubItem.js +1 -1
  103. package/dist/SecondaryNavigationSubItem.js.map +1 -1
  104. package/dist/SelectBox.d.ts +33 -9
  105. package/dist/SelectBox.js +119 -60
  106. package/dist/SelectBox.js.map +1 -1
  107. package/dist/StatusBadge.js +1 -1
  108. package/dist/StatusBadge.js.map +1 -1
  109. package/dist/StepInput.js +1 -1
  110. package/dist/StepInput.js.map +1 -1
  111. package/dist/Switch.d.ts +19 -0
  112. package/dist/Switch.js +19 -0
  113. package/dist/Switch.js.map +1 -1
  114. package/dist/Tab.d.ts +1 -1
  115. package/dist/Tab.js +2 -2
  116. package/dist/Tab.js.map +1 -1
  117. package/dist/TabNavigation.d.ts +1 -1
  118. package/dist/TabNavigation.js +2 -2
  119. package/dist/TabNavigation.js.map +1 -1
  120. package/dist/Table.js +1 -1
  121. package/dist/Table.js.map +1 -1
  122. package/dist/Tag.d.ts +9 -1
  123. package/dist/Tag.js +20 -3
  124. package/dist/Tag.js.map +1 -1
  125. package/dist/TagGroup.d.ts +94 -0
  126. package/dist/TagGroup.js +174 -0
  127. package/dist/TagGroup.js.map +1 -0
  128. package/dist/TextArea.d.ts +13 -0
  129. package/dist/TextArea.js +16 -1
  130. package/dist/TextArea.js.map +1 -1
  131. package/dist/TextField.d.ts +23 -13
  132. package/dist/TextField.js +17 -4
  133. package/dist/TextField.js.map +1 -1
  134. package/dist/Tooltip.d.ts +1 -1
  135. package/dist/Tooltip.js +1 -1
  136. package/dist/Tooltip.js.map +1 -1
  137. package/dist/TruncatedText.js +1 -1
  138. package/dist/TruncatedText.js.map +1 -1
  139. package/dist/assets/{bundle.esm-7d53f4f2.js → bundle.esm-8623b7b1.js} +190 -188
  140. package/dist/assets/messagebundle_en-c677773a.js +1 -0
  141. package/dist/assets/parameters-bundle.css-c897ae23.js +2 -0
  142. package/dist/assets/video.es-60bfb78c.js +228 -0
  143. package/dist/css/themes/Button.css +1 -1
  144. package/dist/css/themes/CountrySelector.css +1 -1
  145. package/dist/css/themes/Dropdown.css +1 -1
  146. package/dist/css/themes/FilterMenu.css +1 -1
  147. package/dist/css/themes/ListItem.css +1 -1
  148. package/dist/css/themes/MastheadItem.css +1 -1
  149. package/dist/css/themes/MastheadMobileMenu.css +1 -1
  150. package/dist/css/themes/MastheadShell.css +1 -1
  151. package/dist/css/themes/PhoneNumberField.css +1 -1
  152. package/dist/css/themes/RatingIndicator.css +1 -1
  153. package/dist/css/themes/ReviewItem.css +1 -0
  154. package/dist/css/themes/Search.css +1 -1
  155. package/dist/css/themes/SecondaryNavigation.css +1 -1
  156. package/dist/css/themes/SecondaryNavigationItem.css +1 -1
  157. package/dist/css/themes/SecondaryNavigationSubItem.css +1 -1
  158. package/dist/css/themes/SelectBox.css +1 -1
  159. package/dist/css/themes/Slider.css +1 -1
  160. package/dist/css/themes/Tag.css +1 -1
  161. package/dist/css/themes/TagGroup.css +1 -0
  162. package/dist/css/themes/TextArea.css +1 -1
  163. package/dist/css/themes/TextField.css +1 -1
  164. package/dist/css/themes/Toast.css +1 -1
  165. package/dist/css/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css +1 -1
  166. package/dist/custom-elements-internal.json +881 -404
  167. package/dist/custom-elements.json +787 -350
  168. package/dist/data/CountryListISO3166.js +1 -1
  169. package/dist/data/CountryListISO3166.js.map +1 -1
  170. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  171. package/dist/generated/assets/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.json +1 -1
  172. package/dist/generated/i18n/i18n-defaults.d.ts +3 -1
  173. package/dist/generated/i18n/i18n-defaults.js +6 -4
  174. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  175. package/dist/generated/templates/CountrySelectorTemplate.lit.js +3 -3
  176. package/dist/generated/templates/CountrySelectorTemplate.lit.js.map +1 -1
  177. package/dist/generated/templates/DatePickerTemplate.lit.js +1 -1
  178. package/dist/generated/templates/DatePickerTemplate.lit.js.map +1 -1
  179. package/dist/generated/templates/DropdownTemplate.lit.js +2 -2
  180. package/dist/generated/templates/DropdownTemplate.lit.js.map +1 -1
  181. package/dist/generated/templates/FilterMenuTemplate.lit.js +1 -1
  182. package/dist/generated/templates/FilterMenuTemplate.lit.js.map +1 -1
  183. package/dist/generated/templates/FooterTemplate.lit.js +9 -9
  184. package/dist/generated/templates/FooterTemplate.lit.js.map +1 -1
  185. package/dist/generated/templates/HeroBannerTemplate.lit.js +7 -8
  186. package/dist/generated/templates/HeroBannerTemplate.lit.js.map +1 -1
  187. package/dist/generated/templates/ListItemTemplate.lit.js +6 -6
  188. package/dist/generated/templates/ListItemTemplate.lit.js.map +1 -1
  189. package/dist/generated/templates/ListSelectAllTemplate.lit.js +1 -1
  190. package/dist/generated/templates/ListSelectAllTemplate.lit.js.map +1 -1
  191. package/dist/generated/templates/MastheadItemTemplate.lit.js +3 -3
  192. package/dist/generated/templates/MastheadItemTemplate.lit.js.map +1 -1
  193. package/dist/generated/templates/MastheadMenuItemTemplate.lit.js +1 -1
  194. package/dist/generated/templates/MastheadMenuItemTemplate.lit.js.map +1 -1
  195. package/dist/generated/templates/MastheadMenuTemplate.lit.js +2 -2
  196. package/dist/generated/templates/MastheadMenuTemplate.lit.js.map +1 -1
  197. package/dist/generated/templates/MastheadMobileMenuTemplate.lit.js +16 -12
  198. package/dist/generated/templates/MastheadMobileMenuTemplate.lit.js.map +1 -1
  199. package/dist/generated/templates/MastheadProfileMenuTemplate.lit.js +2 -2
  200. package/dist/generated/templates/MastheadProfileMenuTemplate.lit.js.map +1 -1
  201. package/dist/generated/templates/MastheadShellTemplate.lit.js +13 -11
  202. package/dist/generated/templates/MastheadShellTemplate.lit.js.map +1 -1
  203. package/dist/generated/templates/MediaPlayerTemplate.lit.js +2 -2
  204. package/dist/generated/templates/MediaPlayerTemplate.lit.js.map +1 -1
  205. package/dist/generated/templates/PhoneNumberFieldTemplate.lit.js +5 -2
  206. package/dist/generated/templates/PhoneNumberFieldTemplate.lit.js.map +1 -1
  207. package/dist/generated/templates/ReviewItemTemplate.lit.d.ts +4 -0
  208. package/dist/generated/templates/ReviewItemTemplate.lit.js +8 -0
  209. package/dist/generated/templates/ReviewItemTemplate.lit.js.map +1 -0
  210. package/dist/generated/templates/SecondaryNavigationTemplate.lit.js +7 -6
  211. package/dist/generated/templates/SecondaryNavigationTemplate.lit.js.map +1 -1
  212. package/dist/generated/templates/SelectBoxTemplate.lit.js +2 -2
  213. package/dist/generated/templates/SelectBoxTemplate.lit.js.map +1 -1
  214. package/dist/generated/templates/TabHeaderTemplate.lit.js +2 -2
  215. package/dist/generated/templates/TabHeaderTemplate.lit.js.map +1 -1
  216. package/dist/generated/templates/TabInOverflowTemplate.lit.js +6 -6
  217. package/dist/generated/templates/TabInOverflowTemplate.lit.js.map +1 -1
  218. package/dist/generated/templates/TabNavigationTemplate.lit.js +3 -1
  219. package/dist/generated/templates/TabNavigationTemplate.lit.js.map +1 -1
  220. package/dist/generated/templates/TagGroupTemplate.lit.d.ts +4 -0
  221. package/dist/generated/templates/TagGroupTemplate.lit.js +8 -0
  222. package/dist/generated/templates/TagGroupTemplate.lit.js.map +1 -0
  223. package/dist/generated/templates/TagTemplate.lit.js +11 -7
  224. package/dist/generated/templates/TagTemplate.lit.js.map +1 -1
  225. package/dist/generated/templates/TextAreaTemplate.lit.js +1 -1
  226. package/dist/generated/templates/TextAreaTemplate.lit.js.map +1 -1
  227. package/dist/generated/templates/TextFieldTemplate.lit.js +1 -1
  228. package/dist/generated/templates/TextFieldTemplate.lit.js.map +1 -1
  229. package/dist/generated/themes/Button.css.js +1 -1
  230. package/dist/generated/themes/Button.css.js.map +1 -1
  231. package/dist/generated/themes/CountrySelector.css.js +1 -1
  232. package/dist/generated/themes/CountrySelector.css.js.map +1 -1
  233. package/dist/generated/themes/Dropdown.css.js +1 -1
  234. package/dist/generated/themes/Dropdown.css.js.map +1 -1
  235. package/dist/generated/themes/FilterMenu.css.js +1 -1
  236. package/dist/generated/themes/FilterMenu.css.js.map +1 -1
  237. package/dist/generated/themes/ListItem.css.js +1 -1
  238. package/dist/generated/themes/ListItem.css.js.map +1 -1
  239. package/dist/generated/themes/MastheadItem.css.js +1 -1
  240. package/dist/generated/themes/MastheadItem.css.js.map +1 -1
  241. package/dist/generated/themes/MastheadMobileMenu.css.js +1 -1
  242. package/dist/generated/themes/MastheadMobileMenu.css.js.map +1 -1
  243. package/dist/generated/themes/MastheadShell.css.js +1 -1
  244. package/dist/generated/themes/MastheadShell.css.js.map +1 -1
  245. package/dist/generated/themes/PhoneNumberField.css.js +1 -1
  246. package/dist/generated/themes/PhoneNumberField.css.js.map +1 -1
  247. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  248. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  249. package/dist/generated/themes/ReviewItem.css.d.ts +3 -0
  250. package/dist/generated/themes/ReviewItem.css.js +9 -0
  251. package/dist/generated/themes/ReviewItem.css.js.map +1 -0
  252. package/dist/generated/themes/Search.css.js +1 -1
  253. package/dist/generated/themes/Search.css.js.map +1 -1
  254. package/dist/generated/themes/SecondaryNavigation.css.js +1 -1
  255. package/dist/generated/themes/SecondaryNavigation.css.js.map +1 -1
  256. package/dist/generated/themes/SecondaryNavigationItem.css.js +1 -1
  257. package/dist/generated/themes/SecondaryNavigationItem.css.js.map +1 -1
  258. package/dist/generated/themes/SecondaryNavigationSubItem.css.js +1 -1
  259. package/dist/generated/themes/SecondaryNavigationSubItem.css.js.map +1 -1
  260. package/dist/generated/themes/SelectBox.css.js +1 -1
  261. package/dist/generated/themes/SelectBox.css.js.map +1 -1
  262. package/dist/generated/themes/Slider.css.js +1 -1
  263. package/dist/generated/themes/Slider.css.js.map +1 -1
  264. package/dist/generated/themes/Tag.css.js +1 -1
  265. package/dist/generated/themes/Tag.css.js.map +1 -1
  266. package/dist/generated/themes/TagGroup.css.d.ts +3 -0
  267. package/dist/generated/themes/TagGroup.css.js +9 -0
  268. package/dist/generated/themes/TagGroup.css.js.map +1 -0
  269. package/dist/generated/themes/TextArea.css.js +1 -1
  270. package/dist/generated/themes/TextArea.css.js.map +1 -1
  271. package/dist/generated/themes/TextField.css.js +1 -1
  272. package/dist/generated/themes/TextField.css.js.map +1 -1
  273. package/dist/generated/themes/Toast.css.js +1 -1
  274. package/dist/generated/themes/Toast.css.js.map +1 -1
  275. package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.js +1 -1
  276. package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.js.map +1 -1
  277. package/dist/i18n/messagebundle.properties +7 -3
  278. package/dist/i18n/messagebundle_en.properties +5 -3
  279. package/dist/vscode.html-custom-data.json +156 -81
  280. package/dist/web-types.json +394 -144
  281. package/package.json +8 -8
  282. package/src/Accordion.ts +2 -2
  283. package/src/AccordionItem.ts +2 -2
  284. package/src/Avatar.ts +1 -1
  285. package/src/Breadcrumbs.ts +1 -1
  286. package/src/Carousel.ts +1 -1
  287. package/src/Checkbox.ts +1 -1
  288. package/src/CountrySelector.hbs +19 -15
  289. package/src/CountrySelector.ts +50 -13
  290. package/src/DatePicker.hbs +7 -8
  291. package/src/DatePicker.ts +15 -11
  292. package/src/Dropdown.hbs +3 -0
  293. package/src/Dropdown.ts +12 -4
  294. package/src/FilterMenu.hbs +58 -59
  295. package/src/FilterMenu.ts +101 -42
  296. package/src/Footer.hbs +9 -0
  297. package/src/Footer.ts +11 -2
  298. package/src/HeroBanner.hbs +4 -1
  299. package/src/InputGroup.ts +1 -1
  300. package/src/Link.ts +1 -1
  301. package/src/List.ts +44 -24
  302. package/src/ListGroupHeader.ts +2 -2
  303. package/src/ListItem.hbs +4 -2
  304. package/src/ListItem.ts +9 -11
  305. package/src/ListItemBase.ts +1 -1
  306. package/src/ListSelectAll.hbs +1 -1
  307. package/src/ListSelectAll.ts +2 -2
  308. package/src/MastheadItem.hbs +5 -3
  309. package/src/MastheadItem.ts +39 -17
  310. package/src/MastheadMenu.hbs +4 -2
  311. package/src/MastheadMenu.ts +30 -0
  312. package/src/MastheadMenuItem.hbs +0 -2
  313. package/src/MastheadMenuItem.ts +2 -16
  314. package/src/MastheadMobileMenu.hbs +36 -10
  315. package/src/MastheadMobileMenu.ts +163 -23
  316. package/src/MastheadProfileMenu.hbs +6 -2
  317. package/src/MastheadProfileMenu.ts +67 -21
  318. package/src/MastheadShell.hbs +33 -20
  319. package/src/MastheadShell.ts +101 -32
  320. package/src/MediaPlayer.hbs +1 -3
  321. package/src/MediaPlayer.ts +122 -26
  322. package/src/MessageStrip.ts +1 -3
  323. package/src/Pagination.ts +1 -1
  324. package/src/PasswordField.ts +1 -1
  325. package/src/PhoneNumberField.hbs +18 -3
  326. package/src/PhoneNumberField.ts +68 -3
  327. package/src/RatingBar.ts +1 -1
  328. package/src/Review.ts +1 -1
  329. package/src/ReviewItem.hbs +20 -0
  330. package/src/ReviewItem.ts +227 -0
  331. package/src/Search.ts +42 -5
  332. package/src/SearchableListBase.ts +15 -7
  333. package/src/SecondaryNavigation.hbs +11 -7
  334. package/src/SecondaryNavigation.ts +22 -13
  335. package/src/SecondaryNavigationItem.ts +30 -1
  336. package/src/SecondaryNavigationItemBase.ts +1 -1
  337. package/src/SecondaryNavigationSubItem.ts +1 -1
  338. package/src/SelectBox.hbs +9 -7
  339. package/src/SelectBox.ts +153 -72
  340. package/src/StatusBadge.ts +1 -1
  341. package/src/StepInput.ts +1 -1
  342. package/src/Switch.ts +21 -0
  343. package/src/Tab.ts +2 -2
  344. package/src/TabHeader.hbs +3 -1
  345. package/src/TabInOverflow.hbs +16 -4
  346. package/src/TabNavigation.hbs +15 -7
  347. package/src/TabNavigation.ts +2 -2
  348. package/src/Table.ts +1 -1
  349. package/src/Tag.hbs +28 -12
  350. package/src/Tag.ts +25 -4
  351. package/src/TagGroup.hbs +48 -0
  352. package/src/TagGroup.ts +222 -0
  353. package/src/TextArea.hbs +36 -33
  354. package/src/TextArea.ts +26 -1
  355. package/src/TextField.hbs +8 -6
  356. package/src/TextField.ts +51 -20
  357. package/src/Tooltip.ts +1 -1
  358. package/src/TruncatedText.ts +1 -1
  359. package/src/data/CountryListISO3166.ts +1 -1
  360. package/src/generated/i18n/i18n-defaults.ts +2 -2
  361. package/src/generated/templates/CountrySelectorTemplate.lit.ts +3 -3
  362. package/src/generated/templates/DatePickerTemplate.lit.ts +1 -1
  363. package/src/generated/templates/DropdownTemplate.lit.ts +2 -2
  364. package/src/generated/templates/FilterMenuTemplate.lit.ts +1 -1
  365. package/src/generated/templates/FooterTemplate.lit.ts +9 -9
  366. package/src/generated/templates/HeroBannerTemplate.lit.ts +7 -8
  367. package/src/generated/templates/ListItemTemplate.lit.ts +6 -6
  368. package/src/generated/templates/ListSelectAllTemplate.lit.ts +1 -1
  369. package/src/generated/templates/MastheadItemTemplate.lit.ts +3 -3
  370. package/src/generated/templates/MastheadMenuItemTemplate.lit.ts +1 -1
  371. package/src/generated/templates/MastheadMenuTemplate.lit.ts +2 -2
  372. package/src/generated/templates/MastheadMobileMenuTemplate.lit.ts +16 -12
  373. package/src/generated/templates/MastheadProfileMenuTemplate.lit.ts +2 -2
  374. package/src/generated/templates/MastheadShellTemplate.lit.ts +13 -11
  375. package/src/generated/templates/MediaPlayerTemplate.lit.ts +2 -2
  376. package/src/generated/templates/PhoneNumberFieldTemplate.lit.ts +5 -2
  377. package/src/generated/templates/ReviewItemTemplate.lit.ts +13 -0
  378. package/src/generated/templates/SecondaryNavigationTemplate.lit.ts +7 -6
  379. package/src/generated/templates/SelectBoxTemplate.lit.ts +2 -2
  380. package/src/generated/templates/TabHeaderTemplate.lit.ts +2 -2
  381. package/src/generated/templates/TabInOverflowTemplate.lit.ts +6 -6
  382. package/src/generated/templates/TabNavigationTemplate.lit.ts +3 -1
  383. package/src/generated/templates/TagGroupTemplate.lit.ts +13 -0
  384. package/src/generated/templates/TagTemplate.lit.ts +11 -7
  385. package/src/generated/templates/TextAreaTemplate.lit.ts +1 -1
  386. package/src/generated/templates/TextFieldTemplate.lit.ts +1 -1
  387. package/src/generated/themes/Button.css.ts +1 -1
  388. package/src/generated/themes/CountrySelector.css.ts +1 -1
  389. package/src/generated/themes/Dropdown.css.ts +1 -1
  390. package/src/generated/themes/FilterMenu.css.ts +1 -1
  391. package/src/generated/themes/ListItem.css.ts +1 -1
  392. package/src/generated/themes/MastheadItem.css.ts +1 -1
  393. package/src/generated/themes/MastheadMobileMenu.css.ts +1 -1
  394. package/src/generated/themes/MastheadShell.css.ts +1 -1
  395. package/src/generated/themes/PhoneNumberField.css.ts +1 -1
  396. package/src/generated/themes/RatingIndicator.css.ts +1 -1
  397. package/src/generated/themes/ReviewItem.css.ts +13 -0
  398. package/src/generated/themes/Search.css.ts +1 -1
  399. package/src/generated/themes/SecondaryNavigation.css.ts +1 -1
  400. package/src/generated/themes/SecondaryNavigationItem.css.ts +1 -1
  401. package/src/generated/themes/SecondaryNavigationSubItem.css.ts +1 -1
  402. package/src/generated/themes/SelectBox.css.ts +1 -1
  403. package/src/generated/themes/Slider.css.ts +1 -1
  404. package/src/generated/themes/Tag.css.ts +1 -1
  405. package/src/generated/themes/TagGroup.css.ts +13 -0
  406. package/src/generated/themes/TextArea.css.ts +1 -1
  407. package/src/generated/themes/TextField.css.ts +1 -1
  408. package/src/generated/themes/Toast.css.ts +1 -1
  409. package/src/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.ts +1 -1
  410. package/src/i18n/messagebundle.properties +7 -3
  411. package/src/i18n/messagebundle_en.properties +5 -3
  412. package/src/themes/Button.css +10 -0
  413. package/src/themes/CountrySelector.css +60 -35
  414. package/src/themes/Dropdown.css +10 -0
  415. package/src/themes/FilterMenu.css +65 -15
  416. package/src/themes/ListItem.css +4 -0
  417. package/src/themes/MastheadItem.css +18 -4
  418. package/src/themes/MastheadMobileMenu.css +4 -0
  419. package/src/themes/MastheadShell.css +88 -9
  420. package/src/themes/PhoneNumberField.css +36 -21
  421. package/src/themes/ReviewItem.css +121 -0
  422. package/src/themes/Search.css +13 -0
  423. package/src/themes/SecondaryNavigation.css +13 -14
  424. package/src/themes/SecondaryNavigationItem.css +11 -3
  425. package/src/themes/SecondaryNavigationSubItem.css +5 -5
  426. package/src/themes/SelectBox.css +42 -0
  427. package/src/themes/Tag.css +20 -0
  428. package/src/themes/TagGroup.css +90 -0
  429. package/src/themes/TextArea.css +13 -0
  430. package/src/themes/TextField.css +25 -8
  431. package/src/themes/Toast.css +4 -0
  432. package/dist/assets/messagebundle_en-6dcc9ab4.js +0 -1
  433. package/dist/assets/parameters-bundle.css-de55cf62.js +0 -2
  434. package/dist/assets/video.es-17aecf95.js +0 -219
package/src/SelectBox.ts CHANGED
@@ -15,13 +15,14 @@ import {
15
15
  isUp,
16
16
  isEscape,
17
17
  isBackSpace,
18
+ isShift,
18
19
  } from "@ui5/webcomponents-base/dist/Keys.js";
19
20
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
20
21
  import Tokenizer from "@ui5/webcomponents/dist/Tokenizer.js";
21
22
  import Icon from "@ui5/webcomponents/dist/Icon.js";
22
23
  import Token from "@ui5/webcomponents/dist/Token.js";
23
24
  import ResizeHandler, { ResizeObserverCallback } from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
24
- import UDExDropdown from "./Dropdown.js";
25
+ import ResponsivePopover from "@ui5/webcomponents/dist/ResponsivePopover.js";
25
26
  import UDExList from "./List.js";
26
27
  import UDExListItem from "./ListItem.js";
27
28
  import UDExListGroupHeader from "./ListGroupHeader.js";
@@ -76,7 +77,6 @@ import UDExControlButton from "./ControlButton.js";
76
77
  UDExListSelectAll,
77
78
  UDExSelectBoxItem,
78
79
  UDExList,
79
- UDExDropdown,
80
80
  UDExTooltip,
81
81
  UDExSearch,
82
82
  UDExButton,
@@ -86,6 +86,7 @@ import UDExControlButton from "./ControlButton.js";
86
86
  Icon,
87
87
  UDExStatusMessage,
88
88
  UDExControlButton,
89
+ ResponsivePopover,
89
90
  ],
90
91
  })
91
92
 
@@ -222,20 +223,37 @@ class UDExSelectBox extends UDExSearchableListBase {
222
223
  @property({ type: String, noAttribute: true })
223
224
  _direction?: string;
224
225
 
226
+ /**
227
+ * @default false
228
+ * @private
229
+ */
225
230
  @property({ type: Boolean })
226
231
  _focused!: boolean;
227
232
 
233
+ /**
234
+ * @default false
235
+ * @private
236
+ */
228
237
  @property({ type: Boolean })
229
- _open?: boolean = false;
238
+ _open!: boolean;
230
239
 
240
+ /**
241
+ * @default false
242
+ * @private
243
+ */
231
244
  @property({ type: Boolean })
232
- _showTagsDropdownContent: boolean = false;
245
+ _showTagsDropdownContent!: boolean;
233
246
 
234
- _dropdown!: UDExDropdown;
247
+ _trigger!: HTMLElement;
248
+ _popover!: ResponsivePopover;
235
249
  _tokenizer!: Tokenizer;
236
250
  _search!: UDExSearch;
237
251
  _singleSelectedOption!: string;
238
252
  _truncatableTag!: UDExTag;
253
+ _tags!: Array<UDExTag>;
254
+ _inactiveTabIndex: number = -1;
255
+ _activeTabIndex: number = 0;
256
+ _openedByTrigger: boolean = true;
239
257
 
240
258
  _handleResizeBound: ResizeObserverCallback;
241
259
 
@@ -246,22 +264,24 @@ class UDExSelectBox extends UDExSearchableListBase {
246
264
  this._filteredItems = [];
247
265
  }
248
266
 
249
- onEnterDOM(): void {
267
+ onEnterDOM() {
250
268
  ResizeHandler.register(this, this._handleResizeBound);
251
269
  }
252
270
 
253
- onExitDOM(): void {
271
+ onExitDOM() {
254
272
  ResizeHandler.deregister(this, this._handleResizeBound);
255
273
  }
256
274
 
257
275
  onAfterRendering() {
258
- this._tokenizer = this.tokenizer;
259
- this._dropdown = this.dropdown;
260
- this._search = this.search;
276
+ this._tokenizer = this.getTokenizer();
277
+ this._popover = this.getPopover();
278
+ this._search = this.getSearch();
279
+ this._trigger = this.getTrigger();
280
+ this._tags = this.getTags();
261
281
  this.handleDirection();
262
-
263
282
  if (this._tokenizer?.tokens.length > 0) {
264
283
  this.handleOutsideClick();
284
+ this.resetTagsTabIndexes();
265
285
  }
266
286
  }
267
287
 
@@ -274,7 +294,7 @@ class UDExSelectBox extends UDExSearchableListBase {
274
294
  }
275
295
 
276
296
  _handleResize() {
277
- this._dropdown.style.setProperty("--udex-dropdown-pane-width", `${this.offsetWidth}px`);
297
+ this._popover.style.setProperty("--udex-dropdown-pane-width", `${this.offsetWidth}px`);
278
298
  }
279
299
 
280
300
  handleItemPress(e:CustomEvent) {
@@ -324,7 +344,11 @@ class UDExSelectBox extends UDExSearchableListBase {
324
344
  }
325
345
 
326
346
  handleDropdownBeforeOpen() {
327
- this._open = true;
347
+ if (this.height) {
348
+ const content = this._popover.shadowRoot!.querySelector("[part=content]") as HTMLElement;
349
+ content.style.maxHeight = this.height;
350
+ }
351
+ this.fireEvent("before-open");
328
352
  }
329
353
 
330
354
  handleDropdownAfterClose() {
@@ -366,13 +390,7 @@ class UDExSelectBox extends UDExSearchableListBase {
366
390
  handleTagPress(e: CustomEvent) {
367
391
  const tag = e.target as UDExTag;
368
392
  tag.selected = false;
369
-
370
- if (tag.isTruncatable && !this._tokenizer.expanded) {
371
- this._truncatableTag = tag;
372
- this._truncatableTag.selected = true;
373
- this._showTagsDropdownContent = true;
374
- this.openDropdown();
375
- }
393
+ this.toggleTruncatedPopover(tag);
376
394
  }
377
395
 
378
396
  handleUnselectTruncatableTag() {
@@ -383,11 +401,13 @@ class UDExSelectBox extends UDExSearchableListBase {
383
401
 
384
402
  handleKeydownTokenizer(e: KeyboardEvent) {
385
403
  e.stopPropagation();
404
+ this.getTagContent(this._tags[0]).tabIndex = this._inactiveTabIndex;
405
+
386
406
  const target = e.target as Token;
387
407
  const activeIndex = this._tokenizer.tokens?.indexOf(target);
388
408
  const tagsCount = this._tokenizer._tokensCount;
389
- const isTabPreviousFirstTag = isTabPrevious(e) && activeIndex === 0;
390
- const isTabNextLastTag = isTabNext(e) && this._tokenizer._tokensCount === activeIndex + 1;
409
+ const shouldNavigateTags = (isLeft(e) || isRight(e) || isBackSpace(e) || isDelete(e)) && tagsCount > 0;
410
+ this._tokenizer.expanded = shouldNavigateTags;
391
411
 
392
412
  if (isLeft(e) && activeIndex !== 0) {
393
413
  this.focusTag(activeIndex - 1);
@@ -399,35 +419,33 @@ class UDExSelectBox extends UDExSearchableListBase {
399
419
  this.scrollToTag(activeIndex + 1);
400
420
  }
401
421
 
402
- if (isTabNextLastTag || isTabPreviousFirstTag) {
403
- this._tokenizer.expanded = false;
404
- }
405
-
406
- if (isDown(e) || isUp(e)) {
422
+ if ((isDown(e) || isUp(e))) {
423
+ this._openedByTrigger = false;
407
424
  this.openDropdown();
408
425
  }
409
426
  }
410
427
 
411
428
  handleKeyDownTrigger(e: KeyboardEvent) {
412
- if (isSpace(e)) {
413
- e.preventDefault();
414
- }
415
-
416
429
  if (isSpace(e) || isEnter(e)) {
430
+ e.preventDefault();
431
+ e.stopPropagation();
432
+ this._showTagsDropdownContent = false;
433
+ this._openedByTrigger = true;
417
434
  this.openDropdown();
418
435
  }
419
-
420
- if (isTabNext(e) && this._tokenizer?._tokensCount > 0) {
421
- this._tokenizer.expanded = true;
422
- setTimeout(() => {
423
- this.focusTag(this._tokenizer._tokensCount - 1);
424
- });
425
- }
426
436
  }
427
437
 
428
438
  handleKeyDownTag(e: KeyboardEvent) {
429
- if (isSpace(e)) {
439
+ const tag = e.target as UDExTag;
440
+ if (isSpace(e) || isShift(e) || isEnter(e)) {
430
441
  e.preventDefault();
442
+ e.stopPropagation();
443
+ }
444
+
445
+ if (tag.isTruncatable && this.validTruncatableKey(e)) {
446
+ this.toggleTruncatedPopover(tag);
447
+ } else {
448
+ this._showTagsDropdownContent = false;
431
449
  }
432
450
 
433
451
  if (isDelete(e) || isBackSpace(e)) {
@@ -435,32 +453,37 @@ class UDExSelectBox extends UDExSearchableListBase {
435
453
  const target = e.target as Token;
436
454
  const tags = this._tokenizer.tokens;
437
455
  const deletedTagIndex = tags.indexOf(target);
438
- const nextTokenIndex = deletedTagIndex === tags.length - 1 ? deletedTagIndex - 1 : deletedTagIndex + 1;
456
+ let nextTokenIndex = deletedTagIndex + 1;
439
457
  if (this._tokenizer.tokens.length !== 1) {
440
- this.focusTag(nextTokenIndex);
458
+ if (deletedTagIndex === tags.length - 1) {
459
+ nextTokenIndex = deletedTagIndex - 1;
460
+ this.focusTag(nextTokenIndex);
461
+ } else {
462
+ this.focusTag(nextTokenIndex);
463
+ }
441
464
  this.scrollToTag(nextTokenIndex);
442
465
  } else {
443
- this.trigger.focus();
466
+ this._trigger.focus();
444
467
  }
445
468
  }
446
469
  }
447
470
 
448
471
  handleKeyDownDropdown(e: KeyboardEvent) {
449
472
  const isTabPrevPress = isTabPrevious(e) && !this._search;
473
+ const isTabNextPress = isTabNext(e);
474
+ const isEscapePress = isEscape(e);
475
+ const isSearchResetTrigger = e.target === this._search;
450
476
 
451
- if (isEscape(e)) {
452
- this.trigger.focus();
453
- }
454
-
455
- if (isTabNext(e) || isTabPrevPress) {
456
- this.closeDropdown();
477
+ if ((isTabNextPress && (!isSearchResetTrigger || this.isListEmpty)) || isTabPrevPress || isEscapePress) {
478
+ this.closeDropdown(e);
457
479
  }
458
480
  }
459
481
 
460
482
  handleKeyDownSearch(e: CustomEvent) {
461
483
  const keyEvent = e.detail as KeyboardEvent;
484
+
462
485
  if (isTabPrevious(keyEvent) || isEscape(keyEvent)) {
463
- this.closeDropdown();
486
+ this.closeDropdown(keyEvent);
464
487
  }
465
488
  }
466
489
 
@@ -473,12 +496,41 @@ class UDExSelectBox extends UDExSearchableListBase {
473
496
  }
474
497
 
475
498
  openDropdown() {
476
- this._dropdown.onOpen(this.trigger);
499
+ this._popover.showAt(this._trigger);
500
+ this._open = true;
501
+ if (this.showMultiSelectedOptions) {
502
+ this._tokenizer.expanded = true;
503
+ }
477
504
  }
478
505
 
479
- closeDropdown() {
480
- if (this._dropdown.open) {
481
- this._dropdown.onClose();
506
+ closeDropdown(e?: KeyboardEvent) {
507
+ if (this._popover.open) {
508
+ if (this._tokenizer) {
509
+ this._tokenizer.expanded = false;
510
+ }
511
+
512
+ if (e && (isEscape(e) || isTabPrevious(e))) {
513
+ e.preventDefault();
514
+ if (this._openedByTrigger) {
515
+ this._trigger.focus();
516
+ } else {
517
+ this.focusTag(0);
518
+ }
519
+ }
520
+ this._popover.close();
521
+ }
522
+ }
523
+
524
+ toggleTruncatedPopover(tag: UDExTag) {
525
+ if (!tag.isTruncatable) {
526
+ this._showTagsDropdownContent = false;
527
+ }
528
+
529
+ if (tag.isTruncatable && !this._open) {
530
+ this._truncatableTag = tag;
531
+ this._truncatableTag.selected = true;
532
+ this._showTagsDropdownContent = true;
533
+ this.openDropdown();
482
534
  }
483
535
  }
484
536
 
@@ -498,7 +550,7 @@ class UDExSelectBox extends UDExSearchableListBase {
498
550
  }
499
551
 
500
552
  handleOpenMultiSelect() {
501
- if (this._dropdown.open) {
553
+ if (this._popover.open) {
502
554
  this.closeDropdown();
503
555
  } else {
504
556
  this._showTagsDropdownContent = false;
@@ -507,7 +559,7 @@ class UDExSelectBox extends UDExSearchableListBase {
507
559
  }
508
560
 
509
561
  handleOpenSingleSelect() {
510
- if (this._dropdown.open) {
562
+ if (this._popover.open) {
511
563
  this.closeDropdown();
512
564
  } else {
513
565
  this.openDropdown();
@@ -526,6 +578,30 @@ class UDExSelectBox extends UDExSearchableListBase {
526
578
  return this.displayonly ? this.showMoreReadOnlyItems() : this.showMoreItems();
527
579
  }
528
580
 
581
+ getPopover(): ResponsivePopover {
582
+ return this.shadowRoot!.querySelector<ResponsivePopover>("[ui5-popover]")!;
583
+ }
584
+
585
+ getSearch(): UDExSearch {
586
+ return this.shadowRoot!.querySelector<UDExSearch>("udex-search")!;
587
+ }
588
+
589
+ getTrigger(): HTMLElement {
590
+ return this.shadowRoot!.querySelector(".udex-text-field__input")!;
591
+ }
592
+
593
+ getTokenizer(): Tokenizer {
594
+ return this.shadowRoot!.querySelector<Tokenizer>("[ui5-tokenizer]")!;
595
+ }
596
+
597
+ getTags(): Array<UDExTag> {
598
+ return Array.from(this.shadowRoot!.querySelectorAll<UDExTag>("udex-tag"));
599
+ }
600
+
601
+ getTagContent(tag: UDExTag): HTMLElement {
602
+ return tag.shadowRoot!.querySelector(".udex-tag")!;
603
+ }
604
+
529
605
  handleDirection() {
530
606
  const directionStyles: string = window
531
607
  .getComputedStyle(this)
@@ -538,6 +614,18 @@ class UDExSelectBox extends UDExSearchableListBase {
538
614
  }
539
615
  }
540
616
 
617
+ validTruncatableKey(e: KeyboardEvent): boolean {
618
+ return isSpace(e) || isEnter(e);
619
+ }
620
+
621
+ resetTagsTabIndexes() {
622
+ this._tags.forEach((tag, i) => { this.getTagContent(tag).tabIndex = (i === 0 && !this.isDisabled) ? this._activeTabIndex : this._inactiveTabIndex; });
623
+ }
624
+
625
+ get allowTargetOverlap(): boolean {
626
+ return !this.disableTargetOverlap;
627
+ }
628
+
541
629
  get isDisabled(): boolean {
542
630
  return this.readonly || this.displayonly || this.disabled;
543
631
  }
@@ -558,22 +646,6 @@ class UDExSelectBox extends UDExSearchableListBase {
558
646
  return this.hasSelectedItems && this.modeMultiSelect;
559
647
  }
560
648
 
561
- get dropdown(): UDExDropdown {
562
- return this.shadowRoot!.querySelector<UDExDropdown>("udex-dropdown")!;
563
- }
564
-
565
- get search(): UDExSearch {
566
- return this.shadowRoot!.querySelector<UDExSearch>("udex-search")!;
567
- }
568
-
569
- get trigger(): UDExDropdown {
570
- return this.shadowRoot!.querySelector(".udex-text-field__input")!;
571
- }
572
-
573
- get tokenizer(): Tokenizer {
574
- return this.shadowRoot!.querySelector<Tokenizer>("[ui5-tokenizer]")!;
575
- }
576
-
577
649
  get labelClass(): string {
578
650
  const baseClass = "udex-text-field__label";
579
651
  const isActive = this._open || this._singleSelectedOption || this.hasSelectedItems;
@@ -594,6 +666,11 @@ class UDExSelectBox extends UDExSearchableListBase {
594
666
  if (this._showTagsDropdownContent && this._truncatableTag) {
595
667
  return false;
596
668
  }
669
+
670
+ if (this._tokenizer) {
671
+ return this._tokenizer.expanded;
672
+ }
673
+
597
674
  return this._open;
598
675
  }
599
676
 
@@ -607,7 +684,11 @@ class UDExSelectBox extends UDExSearchableListBase {
607
684
 
608
685
  get effectiveTabIndex(): string {
609
686
  const tabindex = this.getAttribute("tabindex");
610
- return this.disabled ? "-1" : tabindex || "0";
687
+ return this.disabled ? `${this._inactiveTabIndex}` : tabindex || `${this._inactiveTabIndex}`;
688
+ }
689
+
690
+ get triggerTabIndex(): string {
691
+ return this.disabled || this.readonly ? `${this._inactiveTabIndex}` : "";
611
692
  }
612
693
 
613
694
  get iconAccessibleNameText(): string {
@@ -94,7 +94,7 @@ class UDExStatusBadge extends UI5Element {
94
94
  static i18nBundle: I18nBundle;
95
95
 
96
96
  static async onDefine(): Promise<void> {
97
- UDExStatusBadge.i18nBundle = await getI18nBundle("sap-ui-webcomponents-bundle");
97
+ UDExStatusBadge.i18nBundle = await getI18nBundle("@udex/web-components");
98
98
  }
99
99
 
100
100
  get iconFieldName(): string {
package/src/StepInput.ts CHANGED
@@ -263,7 +263,7 @@ class UDExStepInput extends UI5Element {
263
263
  _keyDownHandlerBound: (e: KeyboardEvent) => void;
264
264
 
265
265
  static async onDefine() {
266
- UDExStepInput.i18nBundle = await getI18nBundle("@ui5/webcomponents");
266
+ UDExStepInput.i18nBundle = await getI18nBundle("@udex/web-components");
267
267
  }
268
268
 
269
269
  constructor() {
package/src/Switch.ts CHANGED
@@ -22,6 +22,26 @@ export enum SwitchColor {
22
22
  Semantic = "Semantic",
23
23
  }
24
24
 
25
+ /**
26
+ * @class
27
+ *
28
+ * <h3 class="comment-api-title">Overview</h3>
29
+ *
30
+ *
31
+ * <h3>Usage</h3>
32
+ *
33
+ * For the <code>udex-switch</code>
34
+ * <h3>ES6 Module Import</h3>
35
+ *
36
+ * <code>import "@udex/web-components/dist/Switch.js";</code>
37
+ *
38
+ * @constructor
39
+ * @author SAP SE
40
+ * @extends UI5Element
41
+ * @tagname udex-switch
42
+ * @public
43
+ */
44
+
25
45
  @customElement({
26
46
  tag: "udex-switch",
27
47
  renderer: litRender,
@@ -29,6 +49,7 @@ export enum SwitchColor {
29
49
  template: SwitchTemplate,
30
50
  dependencies: [Icon],
31
51
  })
52
+
32
53
  /**
33
54
  * Fired when the component checked state changes.
34
55
  *
package/src/Tab.ts CHANGED
@@ -67,7 +67,7 @@ interface ITab extends UI5Element {
67
67
  * For the <code>udex-tab</code>
68
68
  * <h3>ES6 Module Import</h3>
69
69
  *
70
- * <code>import @udex/web-components/dist/Tab.js";</code>
70
+ * <code>import "@udex/web-components/dist/Tab.js";</code>
71
71
  *
72
72
  * @constructor
73
73
  * @author SAP SE
@@ -215,7 +215,7 @@ class UDExTab extends UI5Element implements ITab {
215
215
  static i18nBundle: I18nBundle;
216
216
 
217
217
  static async onDefine(): Promise<void> {
218
- UDExTab.i18nBundle = await getI18nBundle("sap-ui-webcomponents-bundle");
218
+ UDExTab.i18nBundle = await getI18nBundle("@udex/web-components");
219
219
  }
220
220
 
221
221
  get isOnSelectedTab(): boolean {
package/src/TabHeader.hbs CHANGED
@@ -33,7 +33,9 @@
33
33
 
34
34
  {{#*inline "tab-content"}}
35
35
  {{#if hasIcon}}
36
- <span class="udex-tab-navigation__button-icon-outer">
36
+ <span class="udex-tab-navigation__button-icon-outer"
37
+ role="presentation"
38
+ aria-hidden="true">
37
39
  <ui5-icon
38
40
  class="udex-tab-navigation__button-icon"
39
41
  name="{{icon}}"
@@ -3,9 +3,12 @@
3
3
  id="{{this._id}}"
4
4
  class="udex-tab-overflow__button"
5
5
  role="tab"
6
+ aria-selected="{{this.effectiveSelected}}"
6
7
  tabindex="{{_tabIndex}}">
7
8
  {{#if hasIcon}}
8
- <span class="udex-tab-overflow__button-icon">
9
+ <span class="udex-tab-overflow__button-icon"
10
+ role="presentation"
11
+ aria-hidden="true">
9
12
  <ui5-icon
10
13
  name="{{icon}}"
11
14
  ></ui5-icon>
@@ -16,7 +19,10 @@
16
19
  {{/if}}
17
20
  {{text}}
18
21
  {{#if hasNotIcon}}
19
- <span class="udex-tab-overflow__button-badge"></span>
22
+ <span class="udex-tab-overflow__button-badge"
23
+ role="presentation"
24
+ aria-hidden="true">
25
+ </span>
20
26
  {{/if}}
21
27
  </button>
22
28
  {{else}}
@@ -26,9 +32,12 @@
26
32
  target="{{this.target}}"
27
33
  class="udex-tab-overflow__button"
28
34
  role="tab"
35
+ aria-selected="{{this.effectiveSelected}}"
29
36
  tabindex="{{_tabIndex}}">
30
37
  {{#if hasIcon}}
31
- <span class="udex-tab-overflow__button-icon">
38
+ <span class="udex-tab-overflow__button-icon"
39
+ role="presentation"
40
+ aria-hidden="true">
32
41
  <ui5-icon
33
42
  name="{{icon}}"
34
43
  ></ui5-icon>
@@ -39,7 +48,10 @@
39
48
  {{/if}}
40
49
  {{text}}
41
50
  {{#if hasNotIcon}}
42
- <span class="udex-tab-overflow__button-badge"></span>
51
+ <span class="udex-tab-overflow__button-badge"
52
+ role="presentation"
53
+ aria-hidden="true">
54
+ </span>
43
55
  {{/if}}
44
56
  </a>
45
57
  {{/if}}
@@ -37,13 +37,21 @@
37
37
  id="udex-{{__id}}-content"
38
38
  part="tab-navigation-content">
39
39
  {{#each items}}
40
- <div
41
- class="udex-tab-navigation__content-item"
42
- id="{{_contentId}}"
43
- aria-labelledby="{{_id}}"
44
- tabindex="{{_contentTabIndex}}">
45
- <slot name="{{this._slotName}}"></slot>
46
- </div>
40
+ {{#if this.selected}}
41
+ <div
42
+ class="udex-tab-navigation__content-item"
43
+ id="{{_contentId}}"
44
+ aria-labelledby="{{_id}}"
45
+ tabindex="{{_contentTabIndex}}">
46
+ <slot name="{{this._slotName}}"></slot>
47
+ </div>
48
+ {{else}}
49
+ <div
50
+ class="udex-tab-navigation__content-item"
51
+ id="{{_contentId}}">
52
+ <slot name="{{this._slotName}}"></slot>
53
+ </div>
54
+ {{/if}}
47
55
  {{/each}}
48
56
  </div>
49
57
  </div>
@@ -59,7 +59,7 @@ export enum Mode {
59
59
  * For the <code>udex-tab-navigation</code>
60
60
  * <h3>ES6 Module Import</h3>
61
61
  *
62
- * <code>import @udex/web-components/dist/TabNavigation.js";</code>
62
+ * <code>import "@udex/web-components/dist/TabNavigation.js";</code>
63
63
  *
64
64
  * @constructor
65
65
  * @author SAP SE
@@ -169,7 +169,7 @@ class UDExTabNavigation extends UI5Element {
169
169
  }
170
170
 
171
171
  static async onDefine(): Promise<void> {
172
- UDExTabNavigation.i18nBundle = await getI18nBundle("udex-tab-navigation");
172
+ UDExTabNavigation.i18nBundle = await getI18nBundle("@udex/web-components");
173
173
  }
174
174
 
175
175
  onEnterDOM(): void {
package/src/Table.ts CHANGED
@@ -175,7 +175,7 @@ class UDExTable extends UI5Element {
175
175
  static i18nBundle: I18nBundle;
176
176
 
177
177
  static async onDefine() {
178
- UDExTable.i18nBundle = await getI18nBundle("sap-ui-webcomponents-bundle");
178
+ UDExTable.i18nBundle = await getI18nBundle("@udex/web-components");
179
179
  }
180
180
 
181
181
  onAfterRendering() {
package/src/Tag.hbs CHANGED
@@ -2,30 +2,46 @@
2
2
  <div class="{{tagClasses}}">
3
3
  <span class="udex-tag__text">{{{text}}}</span>
4
4
  </div>
5
+ {{else if href}}
6
+ <a role="{{accessibleRole}}" class="{{tagClasses}}" @click="{{tagLinkClickHandler}}" href="{{href}}">
7
+ {{#if startIcon}}
8
+ <ui5-icon
9
+ class="udex-tag__icon udex-tag__icon--start"
10
+ name="{{icon}}">
11
+ </ui5-icon>
12
+ {{/if}}
13
+ <span class="udex-tag__text">{{{text}}}</span>
14
+ {{#if endIcon}}
15
+ <ui5-icon
16
+ class="udex-tag__icon udex-tag__icon--end"
17
+ name="{{icon}}">
18
+ </ui5-icon>
19
+ {{/if}}
20
+ </a>
5
21
  {{else if nonSelectable}}
6
22
  <div class="{{tagClasses}}">
7
23
  {{#if startIcon}}
8
24
  <button
9
- class="udex-tag__btn-icon"
10
- @click="{{iconClickHandler}}"
11
- role="{{accessibleRole}}"
12
- aria-label="{{iconAccessibleName}}">
25
+ class="udex-tag__btn-icon"
26
+ @click="{{iconClickHandler}}"
27
+ role="{{accessibleRole}}"
28
+ aria-label="{{iconAccessibleName}}">
13
29
  <ui5-icon
14
- class="udex-tag__icon udex-tag__icon--start"
15
- name="{{icon}}">
30
+ class="udex-tag__icon udex-tag__icon--start"
31
+ name="{{icon}}">
16
32
  </ui5-icon>
17
33
  </button>
18
34
  {{/if}}
19
35
  <span class="udex-tag__text">{{{text}}}</span>
20
36
  {{#if endIcon}}
21
37
  <button
22
- class="udex-tag__btn-icon"
23
- @click="{{iconClickHandler}}"
24
- role="{{accessibleRole}}"
25
- aria-label="{{iconAccessibleName}}">
38
+ class="udex-tag__btn-icon"
39
+ @click="{{iconClickHandler}}"
40
+ role="{{accessibleRole}}"
41
+ aria-label="{{iconAccessibleName}}">
26
42
  <ui5-icon
27
- class="udex-tag__icon udex-tag__icon--end"
28
- name="{{icon}}">
43
+ class="udex-tag__icon udex-tag__icon--end"
44
+ name="{{icon}}">
29
45
  </ui5-icon>
30
46
  </button>
31
47
  {{/if}}