@sapudex/web-components 2.53.0 → 2.55.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 (339) hide show
  1. package/cypress/specs/Breadcrumbs.cy.tsx +3 -1
  2. package/cypress/specs/FilterMenu.cy.tsx +68 -2
  3. package/cypress/specs/Footer.cy.tsx +59 -0
  4. package/cypress/specs/MediaPlayer.cy.tsx +58 -0
  5. package/cypress/specs/SecondaryNavigationDesktop.cy.tsx +2 -2
  6. package/cypress/specs/SelectBox.cy.tsx +117 -0
  7. package/dist/Accordion.js +1 -1
  8. package/dist/Accordion.js.map +1 -1
  9. package/dist/AccordionItem.js +1 -1
  10. package/dist/AccordionItem.js.map +1 -1
  11. package/dist/Avatar.d.ts +2 -2
  12. package/dist/Avatar.js +1 -1
  13. package/dist/Avatar.js.map +1 -1
  14. package/dist/Badge.js +1 -1
  15. package/dist/Badge.js.map +1 -1
  16. package/dist/Breadcrumbs.js +1 -1
  17. package/dist/Breadcrumbs.js.map +1 -1
  18. package/dist/BreadcrumbsTemplate.js +1 -1
  19. package/dist/BreadcrumbsTemplate.js.map +1 -1
  20. package/dist/Carousel.js +1 -1
  21. package/dist/Carousel.js.map +1 -1
  22. package/dist/Contact.js +1 -1
  23. package/dist/Contact.js.map +1 -1
  24. package/dist/ContactItem.js +1 -1
  25. package/dist/ContactItem.js.map +1 -1
  26. package/dist/Feed.d.ts +2 -1
  27. package/dist/Feed.js +1 -1
  28. package/dist/Feed.js.map +1 -1
  29. package/dist/FeedItem.d.ts +2 -1
  30. package/dist/FeedItem.js +1 -1
  31. package/dist/FeedItem.js.map +1 -1
  32. package/dist/FilterMenu.d.ts +1 -1
  33. package/dist/FilterMenu.js +6 -6
  34. package/dist/FilterMenu.js.map +1 -1
  35. package/dist/FilterMenuGroupHeader.js +1 -1
  36. package/dist/FilterMenuGroupHeader.js.map +1 -1
  37. package/dist/Footer.d.ts +22 -2
  38. package/dist/Footer.js +41 -4
  39. package/dist/Footer.js.map +1 -1
  40. package/dist/FooterTemplate.js +7 -2
  41. package/dist/FooterTemplate.js.map +1 -1
  42. package/dist/ImageGridCloud.js +1 -1
  43. package/dist/ImageGridCloud.js.map +1 -1
  44. package/dist/ImageGridTable.js +1 -1
  45. package/dist/ImageGridTable.js.map +1 -1
  46. package/dist/ImageGridTableItem.js +1 -1
  47. package/dist/ImageGridTableItem.js.map +1 -1
  48. package/dist/ImageGridTicker.js +1 -1
  49. package/dist/ImageGridTicker.js.map +1 -1
  50. package/dist/InputGroup.js +1 -1
  51. package/dist/InputGroup.js.map +1 -1
  52. package/dist/LinkList.js +1 -1
  53. package/dist/LinkList.js.map +1 -1
  54. package/dist/List.js +7 -7
  55. package/dist/List.js.map +1 -1
  56. package/dist/ListGroupHeader.js +12 -5
  57. package/dist/ListGroupHeader.js.map +1 -1
  58. package/dist/ListGroupHeaderBase.d.ts +1 -1
  59. package/dist/ListGroupHeaderBase.js +3 -3
  60. package/dist/ListGroupHeaderBase.js.map +1 -1
  61. package/dist/ListGroupHeaderTemplate.d.ts +2 -0
  62. package/dist/ListGroupHeaderTemplate.js +33 -0
  63. package/dist/ListGroupHeaderTemplate.js.map +1 -0
  64. package/dist/ListItem.d.ts +3 -3
  65. package/dist/ListItem.js +5 -4
  66. package/dist/ListItem.js.map +1 -1
  67. package/dist/ListItemBase.d.ts +1 -0
  68. package/dist/ListItemBase.js +8 -4
  69. package/dist/ListItemBase.js.map +1 -1
  70. package/dist/ListItemTemplate.d.ts +2 -0
  71. package/dist/ListItemTemplate.js +18 -0
  72. package/dist/ListItemTemplate.js.map +1 -0
  73. package/dist/ListSelectAll.js +4 -5
  74. package/dist/ListSelectAll.js.map +1 -1
  75. package/dist/ListSelectAllTemplate.d.ts +2 -0
  76. package/dist/ListSelectAllTemplate.js +6 -0
  77. package/dist/ListSelectAllTemplate.js.map +1 -0
  78. package/dist/ListTemplate.d.ts +2 -0
  79. package/dist/ListTemplate.js +11 -0
  80. package/dist/ListTemplate.js.map +1 -0
  81. package/dist/MastheadItem.d.ts +3 -3
  82. package/dist/MastheadItem.js +1 -1
  83. package/dist/MastheadItem.js.map +1 -1
  84. package/dist/MastheadMobileMenu.d.ts +3 -3
  85. package/dist/MastheadMobileMenu.js +1 -1
  86. package/dist/MastheadMobileMenu.js.map +1 -1
  87. package/dist/MastheadProfileMenu.d.ts +3 -2
  88. package/dist/MastheadProfileMenu.js +1 -1
  89. package/dist/MastheadProfileMenu.js.map +1 -1
  90. package/dist/MastheadShell.d.ts +9 -9
  91. package/dist/MastheadShell.js +1 -1
  92. package/dist/MastheadShell.js.map +1 -1
  93. package/dist/MediaPlayer.d.ts +1 -1
  94. package/dist/MediaPlayer.js +11 -3
  95. package/dist/MediaPlayer.js.map +1 -1
  96. package/dist/MediaPlayerVimeo.d.ts +6 -0
  97. package/dist/MediaPlayerVimeo.js +27 -6
  98. package/dist/MediaPlayerVimeo.js.map +1 -1
  99. package/dist/MediaPlayerYoutube.d.ts +3 -0
  100. package/dist/MediaPlayerYoutube.js +24 -5
  101. package/dist/MediaPlayerYoutube.js.map +1 -1
  102. package/dist/MessageStrip.d.ts +2 -1
  103. package/dist/MessageStrip.js +1 -1
  104. package/dist/MessageStrip.js.map +1 -1
  105. package/dist/Modal.d.ts +2 -0
  106. package/dist/Modal.js +10 -3
  107. package/dist/Modal.js.map +1 -1
  108. package/dist/PromoTile.d.ts +2 -2
  109. package/dist/PromoTile.js +1 -1
  110. package/dist/PromoTile.js.map +1 -1
  111. package/dist/Quote.d.ts +4 -4
  112. package/dist/Quote.js +1 -1
  113. package/dist/Quote.js.map +1 -1
  114. package/dist/Review.d.ts +3 -3
  115. package/dist/Review.js +1 -1
  116. package/dist/Review.js.map +1 -1
  117. package/dist/ReviewItem.d.ts +4 -3
  118. package/dist/ReviewItem.js +1 -1
  119. package/dist/ReviewItem.js.map +1 -1
  120. package/dist/Search.js +1 -1
  121. package/dist/Search.js.map +1 -1
  122. package/dist/SearchableListBase.js +5 -1
  123. package/dist/SearchableListBase.js.map +1 -1
  124. package/dist/SecondaryNavigation.d.ts +3 -3
  125. package/dist/SecondaryNavigation.js +1 -1
  126. package/dist/SecondaryNavigation.js.map +1 -1
  127. package/dist/SecondaryNavigationItem.d.ts +2 -1
  128. package/dist/SecondaryNavigationItem.js +1 -1
  129. package/dist/SecondaryNavigationItem.js.map +1 -1
  130. package/dist/SelectBase.js +1 -1
  131. package/dist/SelectBase.js.map +1 -1
  132. package/dist/SelectBox.js +31 -0
  133. package/dist/SelectBox.js.map +1 -1
  134. package/dist/SelectBoxGroupHeader.js +1 -1
  135. package/dist/SelectBoxGroupHeader.js.map +1 -1
  136. package/dist/SelectBoxItem.d.ts +3 -3
  137. package/dist/SelectBoxItem.js +1 -1
  138. package/dist/SelectBoxItem.js.map +1 -1
  139. package/dist/SelectBoxTemplate.js +2 -1
  140. package/dist/SelectBoxTemplate.js.map +1 -1
  141. package/dist/SideNavigationMobile.d.ts +2 -2
  142. package/dist/SideNavigationMobile.js +1 -1
  143. package/dist/SideNavigationMobile.js.map +1 -1
  144. package/dist/SocialMediaButton.js +1 -1
  145. package/dist/SocialMediaButton.js.map +1 -1
  146. package/dist/Tab.d.ts +2 -2
  147. package/dist/Tab.js +1 -1
  148. package/dist/Tab.js.map +1 -1
  149. package/dist/TabNavigation.d.ts +2 -2
  150. package/dist/TabNavigation.js +1 -1
  151. package/dist/TabNavigation.js.map +1 -1
  152. package/dist/Table.d.ts +5 -5
  153. package/dist/Table.js +1 -1
  154. package/dist/Table.js.map +1 -1
  155. package/dist/TableCellBase.js +1 -1
  156. package/dist/TableCellBase.js.map +1 -1
  157. package/dist/TableGroupRow.js +1 -1
  158. package/dist/TableGroupRow.js.map +1 -1
  159. package/dist/TableRowBase.js +1 -1
  160. package/dist/TableRowBase.js.map +1 -1
  161. package/dist/TagGroup.js +1 -1
  162. package/dist/TagGroup.js.map +1 -1
  163. package/dist/Tile.d.ts +2 -1
  164. package/dist/Tile.js +1 -1
  165. package/dist/Tile.js.map +1 -1
  166. package/dist/Tooltip.d.ts +2 -1
  167. package/dist/Tooltip.js +1 -1
  168. package/dist/Tooltip.js.map +1 -1
  169. package/dist/Wizard.js +1 -1
  170. package/dist/Wizard.js.map +1 -1
  171. package/dist/assets/{InputSuggestions-0yCPXAmq.js → InputSuggestions-DPiJnNLn.js} +1 -1
  172. package/dist/assets/{ListItemStandardExpandableTextTemplate-DjZEnCXN.js → ListItemStandardExpandableTextTemplate-B-v72jL6.js} +1 -1
  173. package/dist/assets/{bundle.esm-DJuMR5ko.js → bundle.esm-DPppjwN7.js} +260 -260
  174. package/dist/assets/messagebundle_en-B0P3kkb6.js +1 -0
  175. package/dist/assets/messagebundle_it-BML2SC0W.js +1 -0
  176. package/dist/assets/messagebundle_ja-zyFfZHcj.js +1 -0
  177. package/dist/assets/messagebundle_ko-BCPaSqNp.js +1 -0
  178. package/dist/assets/messagebundle_lt-DB4b6FVx.js +1 -0
  179. package/dist/assets/messagebundle_lv-tAOia5tU.js +1 -0
  180. package/dist/css/themes/AccordionItem.css +1 -1
  181. package/dist/css/themes/Breadcrumbs.css +1 -1
  182. package/dist/css/themes/BreadcrumbsPopover.css +1 -1
  183. package/dist/css/themes/Footer.css +1 -1
  184. package/dist/css/themes/Link.css +1 -1
  185. package/dist/css/themes/ListGroupHeader.css +1 -1
  186. package/dist/custom-elements-internal.json +267 -157
  187. package/dist/custom-elements.json +221 -133
  188. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  189. package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
  190. package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
  191. package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
  192. package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
  193. package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
  194. package/dist/generated/i18n/i18n-defaults.d.ts +2 -1
  195. package/dist/generated/i18n/i18n-defaults.js +2 -1
  196. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  197. package/dist/generated/themes/AccordionItem.css.d.ts +1 -1
  198. package/dist/generated/themes/AccordionItem.css.js +1 -1
  199. package/dist/generated/themes/AccordionItem.css.js.map +1 -1
  200. package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
  201. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  202. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  203. package/dist/generated/themes/BreadcrumbsPopover.css.d.ts +1 -1
  204. package/dist/generated/themes/BreadcrumbsPopover.css.js +1 -1
  205. package/dist/generated/themes/BreadcrumbsPopover.css.js.map +1 -1
  206. package/dist/generated/themes/Footer.css.d.ts +1 -1
  207. package/dist/generated/themes/Footer.css.js +1 -1
  208. package/dist/generated/themes/Footer.css.js.map +1 -1
  209. package/dist/generated/themes/Link.css.d.ts +1 -1
  210. package/dist/generated/themes/Link.css.js +1 -1
  211. package/dist/generated/themes/Link.css.js.map +1 -1
  212. package/dist/generated/themes/ListGroupHeader.css.d.ts +1 -1
  213. package/dist/generated/themes/ListGroupHeader.css.js +1 -1
  214. package/dist/generated/themes/ListGroupHeader.css.js.map +1 -1
  215. package/dist/messagebundle.properties +1 -0
  216. package/dist/messagebundle_en.properties +1 -0
  217. package/dist/messagebundle_it.properties +123 -0
  218. package/dist/messagebundle_ja.properties +127 -1
  219. package/dist/messagebundle_ko.properties +126 -0
  220. package/dist/messagebundle_lt.properties +126 -0
  221. package/dist/messagebundle_lv.properties +9 -0
  222. package/dist/types/FooterAskJoulePosition.d.ts +5 -0
  223. package/dist/types/FooterAskJoulePosition.js +7 -0
  224. package/dist/types/FooterAskJoulePosition.js.map +1 -0
  225. package/dist/vscode.html-custom-data.json +13 -3
  226. package/dist/web-types.json +56 -9
  227. package/package.json +1 -1
  228. package/src/Accordion.ts +1 -1
  229. package/src/AccordionItem.ts +1 -1
  230. package/src/Avatar.ts +3 -3
  231. package/src/Badge.ts +1 -1
  232. package/src/Breadcrumbs.ts +1 -1
  233. package/src/BreadcrumbsTemplate.tsx +12 -10
  234. package/src/Carousel.ts +1 -1
  235. package/src/Contact.ts +1 -1
  236. package/src/ContactItem.ts +1 -1
  237. package/src/Feed.ts +3 -2
  238. package/src/FeedItem.ts +3 -2
  239. package/src/FilterMenu.ts +6 -6
  240. package/src/FilterMenuGroupHeader.ts +1 -1
  241. package/src/Footer.ts +44 -5
  242. package/src/FooterTemplate.tsx +28 -4
  243. package/src/ImageGridCloud.ts +1 -1
  244. package/src/ImageGridTable.ts +1 -1
  245. package/src/ImageGridTableItem.ts +1 -1
  246. package/src/ImageGridTicker.ts +1 -1
  247. package/src/InputGroup.ts +1 -1
  248. package/src/LinkList.ts +1 -1
  249. package/src/List.ts +9 -9
  250. package/src/ListGroupHeader.ts +12 -5
  251. package/src/ListGroupHeaderBase.ts +4 -4
  252. package/src/ListGroupHeaderTemplate.tsx +228 -0
  253. package/src/ListItem.ts +8 -7
  254. package/src/ListItemBase.ts +9 -4
  255. package/src/ListItemTemplate.tsx +193 -0
  256. package/src/ListSelectAll.ts +4 -5
  257. package/src/ListSelectAllTemplate.tsx +38 -0
  258. package/src/ListTemplate.tsx +60 -0
  259. package/src/MastheadItem.ts +4 -4
  260. package/src/MastheadMobileMenu.ts +4 -4
  261. package/src/MastheadProfileMenu.ts +4 -3
  262. package/src/MastheadShell.ts +10 -10
  263. package/src/MediaPlayer.ts +11 -4
  264. package/src/MediaPlayerVimeo.ts +31 -6
  265. package/src/MediaPlayerYoutube.ts +24 -5
  266. package/src/MessageStrip.ts +3 -2
  267. package/src/Modal.ts +18 -3
  268. package/src/PromoTile.ts +3 -3
  269. package/src/Quote.ts +5 -5
  270. package/src/Review.ts +4 -4
  271. package/src/ReviewItem.ts +5 -4
  272. package/src/Search.ts +1 -1
  273. package/src/SearchableListBase.ts +6 -1
  274. package/src/SecondaryNavigation.ts +4 -4
  275. package/src/SecondaryNavigationItem.ts +3 -2
  276. package/src/SelectBase.ts +1 -1
  277. package/src/SelectBox.ts +34 -0
  278. package/src/SelectBoxGroupHeader.ts +1 -1
  279. package/src/SelectBoxItem.ts +4 -4
  280. package/src/SelectBoxTemplate.tsx +2 -0
  281. package/src/SideNavigationMobile.ts +3 -3
  282. package/src/SocialMediaButton.ts +1 -1
  283. package/src/Tab.ts +3 -3
  284. package/src/TabNavigation.ts +3 -3
  285. package/src/Table.ts +6 -6
  286. package/src/TableCellBase.ts +1 -1
  287. package/src/TableGroupRow.ts +1 -1
  288. package/src/TableRowBase.ts +1 -1
  289. package/src/TagGroup.ts +1 -1
  290. package/src/Tile.ts +3 -2
  291. package/src/Tooltip.ts +3 -2
  292. package/src/Wizard.ts +1 -1
  293. package/src/generated/i18n/i18n-defaults.ts +2 -2
  294. package/src/generated/themes/AccordionItem.css.ts +1 -1
  295. package/src/generated/themes/Breadcrumbs.css.ts +1 -1
  296. package/src/generated/themes/BreadcrumbsPopover.css.ts +1 -1
  297. package/src/generated/themes/Footer.css.ts +1 -1
  298. package/src/generated/themes/Link.css.ts +1 -1
  299. package/src/generated/themes/ListGroupHeader.css.ts +1 -1
  300. package/src/i18n/messagebundle.properties +1 -0
  301. package/src/i18n/messagebundle_en.properties +1 -0
  302. package/src/i18n/messagebundle_it.properties +123 -0
  303. package/src/i18n/messagebundle_ja.properties +127 -1
  304. package/src/i18n/messagebundle_ko.properties +126 -0
  305. package/src/i18n/messagebundle_lt.properties +126 -0
  306. package/src/i18n/messagebundle_lv.properties +9 -0
  307. package/src/themes/AccordionItem.css +2 -2
  308. package/src/themes/Breadcrumbs.css +46 -5
  309. package/src/themes/BreadcrumbsPopover.css +65 -0
  310. package/src/themes/Footer.css +99 -2
  311. package/src/themes/Link.css +127 -8
  312. package/src/themes/ListGroupHeader.css +6 -3
  313. package/src/types/FooterAskJoulePosition.ts +6 -0
  314. package/dist/assets/messagebundle_en-DoNTK1BE.js +0 -1
  315. package/dist/assets/messagebundle_it-BhrBdOd4.js +0 -1
  316. package/dist/assets/messagebundle_ja-5P5L7sQ1.js +0 -1
  317. package/dist/assets/messagebundle_ko-B9H5YQlC.js +0 -1
  318. package/dist/assets/messagebundle_lt-BJ5gr_LF.js +0 -1
  319. package/dist/assets/messagebundle_lv-D06tlATH.js +0 -1
  320. package/dist/generated/templates/ListGroupHeaderTemplate.lit.d.ts +0 -3
  321. package/dist/generated/templates/ListGroupHeaderTemplate.lit.js +0 -30
  322. package/dist/generated/templates/ListGroupHeaderTemplate.lit.js.map +0 -1
  323. package/dist/generated/templates/ListItemTemplate.lit.d.ts +0 -3
  324. package/dist/generated/templates/ListItemTemplate.lit.js +0 -49
  325. package/dist/generated/templates/ListItemTemplate.lit.js.map +0 -1
  326. package/dist/generated/templates/ListSelectAllTemplate.lit.d.ts +0 -3
  327. package/dist/generated/templates/ListSelectAllTemplate.lit.js +0 -7
  328. package/dist/generated/templates/ListSelectAllTemplate.lit.js.map +0 -1
  329. package/dist/generated/templates/ListTemplate.lit.d.ts +0 -3
  330. package/dist/generated/templates/ListTemplate.lit.js +0 -11
  331. package/dist/generated/templates/ListTemplate.lit.js.map +0 -1
  332. package/src/List.hbs +0 -38
  333. package/src/ListGroupHeader.hbs +0 -188
  334. package/src/ListItem.hbs +0 -166
  335. package/src/ListSelectAll.hbs +0 -31
  336. package/src/generated/templates/ListGroupHeaderTemplate.lit.ts +0 -34
  337. package/src/generated/templates/ListItemTemplate.lit.ts +0 -53
  338. package/src/generated/templates/ListSelectAllTemplate.lit.ts +0 -11
  339. package/src/generated/templates/ListTemplate.lit.ts +0 -15
@@ -1331,7 +1331,7 @@
1331
1331
  },
1332
1332
  {
1333
1333
  "name": "udex-footer",
1334
- "description": "<h3 class=\"comment-api-title\">Overview</h3>\n\n\n<h3>Usage</h3>\n\nFor the <code>udex-footer</code>\n<h3>ES6 Module Import</h3>\n\n<code>import \"@sapudex/web-components/dist/Footer.js\";</code>\n\n\n---\n\n\n\n\n### **Events:**\n - **about-sap-click** - Triggered on click interaction with a link within \"About SAP\" category\n- **accordion-item-click** - Triggered when the user clicks on an accordion item.\n- **back-to-top-click** - Triggered on click interaction with \"Back to Top\" button\n- **contact-chat-click** - Triggered on click interaction with \"Contact us by chat\" link\n- **contact-email-click** - Triggered on click interaction with \"Contact us by email\" link\n- **contact-phone-click** - Triggered on click interaction with phone number link in footer\n- **contact-phone-local-numbers-click** - Triggered on click interaction with local country numbers list link\n- **logo-click** - Triggered on click interaction with logo in footer\n- **quick-links-click** - Triggered on click interaction with a link within \"Quick Links\" category\n- **site-information-click** - Triggered on click interaction with a link within \"Site Information\" category\n- **social-media-link-click** - Triggered on click interaction with any of the social media links within footer\n- **trending-click** - Triggered on click interaction with a link within \"Trending\" category\n\n### **Slots:**\n - **customSocialLinks** - Defines the slot for custom Social Links.",
1334
+ "description": "<h3 class=\"comment-api-title\">Overview</h3>\n\n\n<h3>Usage</h3>\n\nFor the <code>udex-footer</code>\n<h3>ES6 Module Import</h3>\n\n<code>import \"@sapudex/web-components/dist/Footer.js\";</code>\n\n\n---\n\n\n\n\n### **Events:**\n - **about-sap-click** - Triggered on click interaction with a link within \"About SAP\" category\n- **accordion-item-click** - Triggered when the user clicks on an accordion item.\n- **ask-joule-click** - Triggered on click interaction with \"Ask Joule\" link\n- **back-to-top-click** - Triggered on click interaction with \"Back to Top\" button\n- **contact-chat-click** - Triggered on click interaction with \"Contact us by chat\" link\n- **contact-email-click** - Triggered on click interaction with \"Contact us by email\" link\n- **contact-phone-click** - Triggered on click interaction with phone number link in footer\n- **contact-phone-local-numbers-click** - Triggered on click interaction with local country numbers list link\n- **logo-click** - Triggered on click interaction with logo in footer\n- **quick-links-click** - Triggered on click interaction with a link within \"Quick Links\" category\n- **site-information-click** - Triggered on click interaction with a link within \"Site Information\" category\n- **social-media-link-click** - Triggered on click interaction with any of the social media links within footer\n- **trending-click** - Triggered on click interaction with a link within \"Trending\" category\n\n### **Slots:**\n - **customSocialLinks** - Defines the slot for custom Social Links.",
1335
1335
  "attributes": [
1336
1336
  {
1337
1337
  "name": "about-links",
@@ -1343,6 +1343,16 @@
1343
1343
  "description": "Defines an \"about Sap\" column title",
1344
1344
  "values": []
1345
1345
  },
1346
+ {
1347
+ "name": "ask-joule-link",
1348
+ "description": "Defines the Ask Joule link's href",
1349
+ "values": []
1350
+ },
1351
+ {
1352
+ "name": "ask-joule-position",
1353
+ "description": "Defines the position of the Ask Joule item within the contact section.\nCan be \"start\" (before phone/email/chat) or \"end\" (after phone/email/chat).",
1354
+ "values": [{ "name": "UDExFooterAskJoulePosition" }]
1355
+ },
1346
1356
  {
1347
1357
  "name": "chat-with-us-link",
1348
1358
  "description": "Defines the Chat with us link's href",
@@ -2800,7 +2810,7 @@
2800
2810
  },
2801
2811
  {
2802
2812
  "name": "udex-media-player-vimeo",
2803
- "description": "<h3 class=\"comment-api-title\">Overview</h3>\n\n\n<h3>Usage</h3>\n\nFor the <code>udex-media-player-vimeo</code>\n<h3>ES6 Module Import</h3>\n\n<code>import \"@sapudex/web-components/dist/MediaPlayerVimeo.js\";</code>\n\n\n---\n\n\n\n\n### **Events:**\n - **ended** - Fires when video play ended\n- **pause** - Fires when video is paused\n- **playing** - Fires when video watching progress changed\n- **ready** - Fires when video is ready\n\n### **Methods:**\n - **getPlayer(): _VimeoPlayer_** - Returns video element",
2813
+ "description": "<h3 class=\"comment-api-title\">Overview</h3>\n\n\n<h3>Usage</h3>\n\nFor the <code>udex-media-player-vimeo</code>\n<h3>ES6 Module Import</h3>\n\n<code>import \"@sapudex/web-components/dist/MediaPlayerVimeo.js\";</code>\n\n\n---\n\n\n\n\n### **Events:**\n - **ended** - Fires when video play ended\n- **pause** - Fires when video is paused\n- **playing** - Fires when video watching progress changed\n- **ready** - Fires when video is ready\n- **videoStart** - Fires when video starts playing for the first time or is replayed after ending\n\n### **Methods:**\n - **getPlayer(): _VimeoPlayer_** - Returns video element",
2804
2814
  "attributes": [
2805
2815
  {
2806
2816
  "name": "aspect-ratio-class",
@@ -2837,7 +2847,7 @@
2837
2847
  },
2838
2848
  {
2839
2849
  "name": "udex-media-player-youtube",
2840
- "description": "<h3 class=\"comment-api-title\">Overview</h3>\n\n\n<h3>Usage</h3>\n\nFor the <code>udex-media-player-youtube</code>\n<h3>ES6 Module Import</h3>\n\n<code>import \"@sapudex/web-components/dist/MediaPlayerYoutube.js\";</code>\n\n\n---\n\n\n\n\n### **Events:**\n - **ended** - Fires when video play ended\n- **pause** - Fires when video is paused\n- **playing** - Fires when video watching progress changed\n- **ready** - Fires when video is ready\n\n### **Methods:**\n - **getPlayer(): _YoutubePlayer | null_** - Returns video element",
2850
+ "description": "<h3 class=\"comment-api-title\">Overview</h3>\n\n\n<h3>Usage</h3>\n\nFor the <code>udex-media-player-youtube</code>\n<h3>ES6 Module Import</h3>\n\n<code>import \"@sapudex/web-components/dist/MediaPlayerYoutube.js\";</code>\n\n\n---\n\n\n\n\n### **Events:**\n - **ended** - Fires when video play ended\n- **pause** - Fires when video is paused\n- **playing** - Fires when video watching progress changed\n- **ready** - Fires when video is ready\n- **videoStart** - Fires when video starts playing for the first time or is replayed after ending\n\n### **Methods:**\n - **getPlayer(): _YoutubePlayer | null_** - Returns video element",
2841
2851
  "attributes": [
2842
2852
  {
2843
2853
  "name": "aspect-ratio",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://raw.githubusercontent.com/JetBrains/web-types/master/schema/web-types.json",
3
3
  "name": "@sapudex/web-components",
4
- "version": "2.53.0",
4
+ "version": "2.55.0",
5
5
  "description-markup": "markdown",
6
6
  "contributions": {
7
7
  "html": {
@@ -1898,7 +1898,7 @@
1898
1898
  "description": "Allows setting a custom role.",
1899
1899
  "value": {
1900
1900
  "type": "\"None\" | \"Dialog\" | \"AlertDialog\"",
1901
- "default": "\"Dialog\""
1901
+ "default": "\"None\""
1902
1902
  }
1903
1903
  },
1904
1904
  {
@@ -2973,7 +2973,7 @@
2973
2973
  },
2974
2974
  {
2975
2975
  "name": "udex-footer",
2976
- "description": "<h3 class=\"comment-api-title\">Overview</h3>\n\n\n<h3>Usage</h3>\n\nFor the <code>udex-footer</code>\n<h3>ES6 Module Import</h3>\n\n<code>import \"@sapudex/web-components/dist/Footer.js\";</code>\n---\n\n\n### **Events:**\n - **about-sap-click** - Triggered on click interaction with a link within \"About SAP\" category\n- **accordion-item-click** - Triggered when the user clicks on an accordion item.\n- **back-to-top-click** - Triggered on click interaction with \"Back to Top\" button\n- **contact-chat-click** - Triggered on click interaction with \"Contact us by chat\" link\n- **contact-email-click** - Triggered on click interaction with \"Contact us by email\" link\n- **contact-phone-click** - Triggered on click interaction with phone number link in footer\n- **contact-phone-local-numbers-click** - Triggered on click interaction with local country numbers list link\n- **logo-click** - Triggered on click interaction with logo in footer\n- **quick-links-click** - Triggered on click interaction with a link within \"Quick Links\" category\n- **site-information-click** - Triggered on click interaction with a link within \"Site Information\" category\n- **social-media-link-click** - Triggered on click interaction with any of the social media links within footer\n- **trending-click** - Triggered on click interaction with a link within \"Trending\" category\n\n### **Slots:**\n - **customSocialLinks** - Defines the slot for custom Social Links.",
2976
+ "description": "<h3 class=\"comment-api-title\">Overview</h3>\n\n\n<h3>Usage</h3>\n\nFor the <code>udex-footer</code>\n<h3>ES6 Module Import</h3>\n\n<code>import \"@sapudex/web-components/dist/Footer.js\";</code>\n---\n\n\n### **Events:**\n - **about-sap-click** - Triggered on click interaction with a link within \"About SAP\" category\n- **accordion-item-click** - Triggered when the user clicks on an accordion item.\n- **ask-joule-click** - Triggered on click interaction with \"Ask Joule\" link\n- **back-to-top-click** - Triggered on click interaction with \"Back to Top\" button\n- **contact-chat-click** - Triggered on click interaction with \"Contact us by chat\" link\n- **contact-email-click** - Triggered on click interaction with \"Contact us by email\" link\n- **contact-phone-click** - Triggered on click interaction with phone number link in footer\n- **contact-phone-local-numbers-click** - Triggered on click interaction with local country numbers list link\n- **logo-click** - Triggered on click interaction with logo in footer\n- **quick-links-click** - Triggered on click interaction with a link within \"Quick Links\" category\n- **site-information-click** - Triggered on click interaction with a link within \"Site Information\" category\n- **social-media-link-click** - Triggered on click interaction with any of the social media links within footer\n- **trending-click** - Triggered on click interaction with a link within \"Trending\" category\n\n### **Slots:**\n - **customSocialLinks** - Defines the slot for custom Social Links.",
2977
2977
  "doc-url": "",
2978
2978
  "attributes": [
2979
2979
  {
@@ -2986,6 +2986,19 @@
2986
2986
  "description": "Defines an \"about Sap\" column title",
2987
2987
  "value": { "type": "string | undefined" }
2988
2988
  },
2989
+ {
2990
+ "name": "ask-joule-link",
2991
+ "description": "Defines the Ask Joule link's href",
2992
+ "value": { "type": "string", "default": "\"\"" }
2993
+ },
2994
+ {
2995
+ "name": "ask-joule-position",
2996
+ "description": "Defines the position of the Ask Joule item within the contact section.\nCan be \"start\" (before phone/email/chat) or \"end\" (after phone/email/chat).",
2997
+ "value": {
2998
+ "type": "UDExFooterAskJoulePosition",
2999
+ "default": "\"start\""
3000
+ }
3001
+ },
2989
3002
  {
2990
3003
  "name": "chat-with-us-link",
2991
3004
  "description": "Defines the Chat with us link's href",
@@ -3122,6 +3135,10 @@
3122
3135
  "name": "accordion-item-click",
3123
3136
  "description": "Triggered when the user clicks on an accordion item."
3124
3137
  },
3138
+ {
3139
+ "name": "ask-joule-click",
3140
+ "description": "Triggered on click interaction with \"Ask Joule\" link"
3141
+ },
3125
3142
  {
3126
3143
  "name": "back-to-top-click",
3127
3144
  "description": "Triggered on click interaction with \"Back to Top\" button"
@@ -3175,6 +3192,16 @@
3175
3192
  "description": "Defines an \"about Sap\" column title",
3176
3193
  "value": { "type": "string | undefined" }
3177
3194
  },
3195
+ {
3196
+ "name": "ask-joule-link",
3197
+ "description": "Defines the Ask Joule link's href",
3198
+ "value": { "type": "string" }
3199
+ },
3200
+ {
3201
+ "name": "ask-joule-position",
3202
+ "description": "Defines the position of the Ask Joule item within the contact section.\nCan be \"start\" (before phone/email/chat) or \"end\" (after phone/email/chat).",
3203
+ "value": { "type": "UDExFooterAskJoulePosition" }
3204
+ },
3178
3205
  {
3179
3206
  "name": "chat-with-us-link",
3180
3207
  "description": "Defines the Chat with us link's href",
@@ -3305,6 +3332,10 @@
3305
3332
  "name": "accordion-item-click",
3306
3333
  "description": "Triggered when the user clicks on an accordion item."
3307
3334
  },
3335
+ {
3336
+ "name": "ask-joule-click",
3337
+ "description": "Triggered on click interaction with \"Ask Joule\" link"
3338
+ },
3308
3339
  {
3309
3340
  "name": "back-to-top-click",
3310
3341
  "description": "Triggered on click interaction with \"Back to Top\" button"
@@ -6107,7 +6138,7 @@
6107
6138
  },
6108
6139
  {
6109
6140
  "name": "udex-media-player-vimeo",
6110
- "description": "<h3 class=\"comment-api-title\">Overview</h3>\n\n\n<h3>Usage</h3>\n\nFor the <code>udex-media-player-vimeo</code>\n<h3>ES6 Module Import</h3>\n\n<code>import \"@sapudex/web-components/dist/MediaPlayerVimeo.js\";</code>\n---\n\n\n### **Events:**\n - **ended** - Fires when video play ended\n- **pause** - Fires when video is paused\n- **playing** - Fires when video watching progress changed\n- **ready** - Fires when video is ready\n\n### **Methods:**\n - **getPlayer(): _VimeoPlayer_** - Returns video element",
6141
+ "description": "<h3 class=\"comment-api-title\">Overview</h3>\n\n\n<h3>Usage</h3>\n\nFor the <code>udex-media-player-vimeo</code>\n<h3>ES6 Module Import</h3>\n\n<code>import \"@sapudex/web-components/dist/MediaPlayerVimeo.js\";</code>\n---\n\n\n### **Events:**\n - **ended** - Fires when video play ended\n- **pause** - Fires when video is paused\n- **playing** - Fires when video watching progress changed\n- **ready** - Fires when video is ready\n- **videoStart** - Fires when video starts playing for the first time or is replayed after ending\n\n### **Methods:**\n - **getPlayer(): _VimeoPlayer_** - Returns video element",
6111
6142
  "doc-url": "",
6112
6143
  "attributes": [
6113
6144
  {
@@ -6148,7 +6179,11 @@
6148
6179
  "name": "playing",
6149
6180
  "description": "Fires when video watching progress changed"
6150
6181
  },
6151
- { "name": "ready", "description": "Fires when video is ready" }
6182
+ { "name": "ready", "description": "Fires when video is ready" },
6183
+ {
6184
+ "name": "videoStart",
6185
+ "description": "Fires when video starts playing for the first time or is replayed after ending"
6186
+ }
6152
6187
  ],
6153
6188
  "js": {
6154
6189
  "properties": [
@@ -6190,13 +6225,17 @@
6190
6225
  "name": "playing",
6191
6226
  "description": "Fires when video watching progress changed"
6192
6227
  },
6193
- { "name": "ready", "description": "Fires when video is ready" }
6228
+ { "name": "ready", "description": "Fires when video is ready" },
6229
+ {
6230
+ "name": "videoStart",
6231
+ "description": "Fires when video starts playing for the first time or is replayed after ending"
6232
+ }
6194
6233
  ]
6195
6234
  }
6196
6235
  },
6197
6236
  {
6198
6237
  "name": "udex-media-player-youtube",
6199
- "description": "<h3 class=\"comment-api-title\">Overview</h3>\n\n\n<h3>Usage</h3>\n\nFor the <code>udex-media-player-youtube</code>\n<h3>ES6 Module Import</h3>\n\n<code>import \"@sapudex/web-components/dist/MediaPlayerYoutube.js\";</code>\n---\n\n\n### **Events:**\n - **ended** - Fires when video play ended\n- **pause** - Fires when video is paused\n- **playing** - Fires when video watching progress changed\n- **ready** - Fires when video is ready\n\n### **Methods:**\n - **getPlayer(): _YoutubePlayer | null_** - Returns video element",
6238
+ "description": "<h3 class=\"comment-api-title\">Overview</h3>\n\n\n<h3>Usage</h3>\n\nFor the <code>udex-media-player-youtube</code>\n<h3>ES6 Module Import</h3>\n\n<code>import \"@sapudex/web-components/dist/MediaPlayerYoutube.js\";</code>\n---\n\n\n### **Events:**\n - **ended** - Fires when video play ended\n- **pause** - Fires when video is paused\n- **playing** - Fires when video watching progress changed\n- **ready** - Fires when video is ready\n- **videoStart** - Fires when video starts playing for the first time or is replayed after ending\n\n### **Methods:**\n - **getPlayer(): _YoutubePlayer | null_** - Returns video element",
6200
6239
  "doc-url": "",
6201
6240
  "attributes": [
6202
6241
  {
@@ -6235,7 +6274,11 @@
6235
6274
  "name": "playing",
6236
6275
  "description": "Fires when video watching progress changed"
6237
6276
  },
6238
- { "name": "ready", "description": "Fires when video is ready" }
6277
+ { "name": "ready", "description": "Fires when video is ready" },
6278
+ {
6279
+ "name": "videoStart",
6280
+ "description": "Fires when video starts playing for the first time or is replayed after ending"
6281
+ }
6239
6282
  ],
6240
6283
  "js": {
6241
6284
  "properties": [
@@ -6274,7 +6317,11 @@
6274
6317
  "name": "playing",
6275
6318
  "description": "Fires when video watching progress changed"
6276
6319
  },
6277
- { "name": "ready", "description": "Fires when video is ready" }
6320
+ { "name": "ready", "description": "Fires when video is ready" },
6321
+ {
6322
+ "name": "videoStart",
6323
+ "description": "Fires when video starts playing for the first time or is replayed after ending"
6324
+ }
6278
6325
  ]
6279
6326
  }
6280
6327
  },
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "type": "module",
3
3
  "name": "@sapudex/web-components",
4
- "version": "2.53.0",
4
+ "version": "2.55.0",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
7
7
  },
package/src/Accordion.ts CHANGED
@@ -2,7 +2,7 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
2
  import type { DefaultSlot } from "@ui5/webcomponents-base/dist/UI5Element.js";
3
3
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
4
4
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
5
- import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
5
+ import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
6
6
  import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
7
7
  import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
8
8
  import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
@@ -2,7 +2,7 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
2
  import type { DefaultSlot } from "@ui5/webcomponents-base/dist/UI5Element.js";
3
3
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
4
4
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
5
- import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
5
+ import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
6
6
  import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
7
7
  import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
8
8
  import { isEnter, isSpace } from "@ui5/webcomponents-base/dist/Keys.js";
package/src/Avatar.ts CHANGED
@@ -1,9 +1,9 @@
1
1
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
- import type { DefaultSlot } from "@ui5/webcomponents-base/dist/UI5Element.js";
2
+ import type { DefaultSlot, Slot } from "@ui5/webcomponents-base/dist/UI5Element.js";
3
3
  import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
4
4
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
5
5
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
6
- import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
6
+ import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
7
7
  import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
8
8
  import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
9
9
  import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
@@ -207,7 +207,7 @@ class UDExAvatar extends UI5Element {
207
207
  * @public
208
208
  */
209
209
  @slot({ type: HTMLElement })
210
- badge!: Array<HTMLElement>;
210
+ badge!: Slot<HTMLElement>;
211
211
 
212
212
  /**
213
213
  * @private
package/src/Badge.ts CHANGED
@@ -2,7 +2,7 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
2
  import type { DefaultSlot } from "@ui5/webcomponents-base/dist/UI5Element.js";
3
3
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
4
4
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
5
- import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
5
+ import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
6
6
  import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
7
7
  import BadgeTemplate from "./BadgeTemplate.js";
8
8
  import UDExIconPlacement from "./types/IconPlacement.js";
@@ -3,7 +3,7 @@ import type { DefaultSlot } from "@ui5/webcomponents-base/dist/UI5Element.js";
3
3
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
4
4
  import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
5
5
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
6
- import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
6
+ import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
7
7
  import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
8
8
  import { isTabNext, isTabPrevious } from "@ui5/webcomponents-base/dist/Keys.js";
9
9
  import UI5Icon from "@ui5/webcomponents/dist/Icon.js";
@@ -44,16 +44,18 @@ export default function BreadcrumbsTemplate(this: Breadcrumbs) {
44
44
  ) : (
45
45
  <>
46
46
  <span className={`${this._rootClass}__separator`} aria-hidden="true"></span>
47
- <UDExLink
48
- onClick={this._onLinkPress}
49
- id={`${linkData._id}-link`}
50
- class={`${rootClass}__item ${this._rootClass}__item--visible`}
51
- href={linkData.href}
52
- target={linkData.target}
53
- accessibleName={linkData._accessibleNameText}
54
- data-ui5-stable={linkData.stableDomRef}>
55
- {linkData.textContent}
56
- </UDExLink>
47
+ <span class={`${this._rootClass}__link-wrap`}>
48
+ <UDExLink
49
+ onClick={this._onLinkPress}
50
+ id={`${linkData._id}-link`}
51
+ class={`${rootClass}__item ${this._rootClass}__item--visible`}
52
+ href={linkData.href}
53
+ target={linkData.target}
54
+ accessibleName={linkData._accessibleNameText}
55
+ data-ui5-stable={linkData.stableDomRef}>
56
+ {linkData.textContent}
57
+ </UDExLink>
58
+ </span>
57
59
  </>
58
60
  )}
59
61
  </li>
package/src/Carousel.ts CHANGED
@@ -2,7 +2,7 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
2
  import type { DefaultSlot } from "@ui5/webcomponents-base/dist/UI5Element.js";
3
3
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
4
4
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
5
- import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
5
+ import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
6
6
  import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
7
7
  import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
8
8
  import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
package/src/Contact.ts CHANGED
@@ -2,7 +2,7 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
2
  import type { DefaultSlot } from "@ui5/webcomponents-base/dist/UI5Element.js";
3
3
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
4
4
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
5
- import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
5
+ import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
6
6
  import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
7
7
  import ContactTemplate from "./ContactTemplate.js";
8
8
  import type UDExContactItem from "./ContactItem.js";
@@ -1,7 +1,7 @@
1
1
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
2
  import type { DefaultSlot } from "@ui5/webcomponents-base/dist/UI5Element.js";
3
3
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
4
- import slot from "@ui5/webcomponents-base/decorators/slot.js";
4
+ import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
5
5
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
6
6
  import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
7
7
  import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
package/src/Feed.ts CHANGED
@@ -1,8 +1,9 @@
1
1
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
+ import type { Slot } from "@ui5/webcomponents-base/dist/UI5Element.js";
2
3
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
3
4
  import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
4
5
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
5
- import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
6
+ import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
6
7
  import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
7
8
  import UDExButtonDesign from "./types/ButtonDesign.js";
8
9
  import FeedItem from "./FeedItem.js";
@@ -57,7 +58,7 @@ class UDExFeed extends UI5Element {
57
58
  * @public
58
59
  */
59
60
  @slot({ type: HTMLElement, individualSlots: true })
60
- items!: Array<UDExFeedItem>;
61
+ items!: Slot<UDExFeedItem>;
61
62
 
62
63
  /**
63
64
  * Defines the UI5 icon name in the pictogram section.
package/src/FeedItem.ts CHANGED
@@ -1,9 +1,10 @@
1
1
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
+ import type { Slot } from "@ui5/webcomponents-base/dist/UI5Element.js";
2
3
  import { UDExTarget } from "./types/common.js";
3
4
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
4
5
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
5
6
  import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
6
- import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
7
+ import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
7
8
  import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
8
9
  import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
9
10
  import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
@@ -149,7 +150,7 @@ class UDExFeedItem extends UI5Element {
149
150
  * @public
150
151
  */
151
152
  @slot({ type: HTMLElement })
152
- avatar!: Array<HTMLElement>;
153
+ avatar!: Slot<HTMLElement>;
153
154
 
154
155
  @i18n("@sapudex/web-components")
155
156
  static i18nBundle: I18nBundle;
package/src/FilterMenu.ts CHANGED
@@ -296,11 +296,11 @@ class UDExFilterMenu extends UDExSearchableListBase {
296
296
  accessibleNameRef!: string;
297
297
  /**
298
298
  * Allows setting a custom role.
299
- * @default "Dialog"
299
+ * @default "None"
300
300
  * @public
301
301
  */
302
302
  @property()
303
- accessibleRole: `${PopupAccessibleRole}` = PopupAccessibleRole.Dialog;
303
+ accessibleRole: `${PopupAccessibleRole}` = PopupAccessibleRole.None;
304
304
 
305
305
  /**
306
306
  * Allows setting a custom role for dropdown trigger.
@@ -414,15 +414,15 @@ class UDExFilterMenu extends UDExSearchableListBase {
414
414
 
415
415
  handleKeyDownResultBtn(e: KeyboardEvent): void {
416
416
  e.stopPropagation();
417
- if (isTabNext(e) && !this.hasResetBtn) {
418
- this.onDropdownClose();
417
+ if (isEscape(e) || (isTabNext(e) && !this.hasResetBtn)) {
418
+ this.onDropdownClose(e);
419
419
  }
420
420
  }
421
421
 
422
422
  handleKeyDownResetBtn(e: KeyboardEvent): void {
423
423
  e.stopPropagation();
424
- if (isTabNext(e)) {
425
- this.onDropdownClose();
424
+ if (isEscape(e) || isTabNext(e)) {
425
+ this.onDropdownClose(e);
426
426
  }
427
427
  }
428
428
 
@@ -1,5 +1,5 @@
1
1
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
2
- import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
2
+ import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
3
3
  import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
4
4
  import UDExListGroupHeaderBase from "./ListGroupHeaderBase.js";
5
5
  import UDExFilterMenuItem from "./FilterMenuItem.js";
package/src/Footer.ts CHANGED
@@ -1,9 +1,10 @@
1
1
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
+ import type { Slot } from "@ui5/webcomponents-base/dist/UI5Element.js";
2
3
  import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
3
4
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
4
5
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
5
6
  import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
6
- import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
7
+ import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
7
8
  import type { ResizeObserverCallback } from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
8
9
  import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
9
10
  import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
@@ -20,11 +21,13 @@ import UDExDivider from "./Divider.js";
20
21
  import UDExSocialMediaButton from "./SocialMediaButton.js";
21
22
  import type { UDExSocialMediaButtonType } from "./types/SocialMediaButtonType.js";
22
23
  import type { UDExTarget } from "./types/common.js";
24
+ import UDExFooterAskJoulePosition from "./types/FooterAskJoulePosition.js";
23
25
  import { BreakpointUtils } from "./utils/Breakpoints.js";
24
26
  import parseArrayFromString from "./utils/parseArrayFromString.js";
25
27
  import FooterTemplate from "./FooterTemplate.js";
26
28
  import {
27
29
  ABOUT_SAP,
30
+ ASK_JOULE,
28
31
  CHAT_WITH_US,
29
32
  CONTACT_US,
30
33
  EMAIL,
@@ -78,7 +81,7 @@ type UDExFooterBaseEventDetail = {
78
81
  originalEvent: MouseEvent | Event,
79
82
  }
80
83
 
81
- type BaseEvents = "contact-chat-click" | "contact-phone-local-numbers-click" | "contact-email-click" | "contact-phone-click" | "logo-click" | "back-to-top-click";
84
+ type BaseEvents = "contact-chat-click" | "contact-phone-local-numbers-click" | "contact-email-click" | "contact-phone-click" | "logo-click" | "back-to-top-click" | "ask-joule-click";
82
85
 
83
86
  type DetailedEvents = "quick-links-click" | "trending-click" | "about-sap-click" | "site-information-click" | "social-media-link-click";
84
87
 
@@ -151,6 +154,13 @@ type DetailedEvents = "quick-links-click" | "trending-click" | "about-sap-click"
151
154
  * @allowPreventDefault
152
155
  */
153
156
  @event("contact-chat-click", { bubbles: true })
157
+ /**
158
+ * Triggered on click interaction with "Ask Joule" link
159
+ * @public
160
+ * @param { MouseEvent | Event } originalEvent
161
+ * @allowPreventDefault
162
+ */
163
+ @event("ask-joule-click", { bubbles: true })
154
164
  /**
155
165
  * Triggered on click interaction with a link within "Quick Links" category
156
166
  * @public
@@ -217,6 +227,7 @@ class UDExFooter extends UI5Element {
217
227
  "contact-phone-local-numbers-click": UDExFooterBaseEventDetail,
218
228
  "contact-email-click": UDExFooterBaseEventDetail,
219
229
  "contact-phone-click": UDExFooterBaseEventDetail,
230
+ "ask-joule-click": UDExFooterBaseEventDetail,
220
231
  "quick-links-click": UDExFooterDetailedClickEventDetail,
221
232
  "trending-click": UDExFooterDetailedClickEventDetail,
222
233
  "about-sap-click": UDExFooterDetailedClickEventDetail,
@@ -232,7 +243,7 @@ class UDExFooter extends UI5Element {
232
243
  * @public
233
244
  */
234
245
  @slot({ type: HTMLElement, individualSlots: true })
235
- customSocialLinks!: Array<UDExSocialMediaButton>;
246
+ customSocialLinks!: Slot<UDExSocialMediaButton>;
236
247
 
237
248
  /**
238
249
  * Defines the Logo default title
@@ -378,6 +389,25 @@ class UDExFooter extends UI5Element {
378
389
  @property({ type: String })
379
390
  chatWithUsLink: string = "";
380
391
 
392
+ /**
393
+ * Defines the Ask Joule link's href
394
+ *
395
+ * @default ""
396
+ * @public
397
+ */
398
+ @property({ type: String })
399
+ askJouleLink: string = "";
400
+
401
+ /**
402
+ * Defines the position of the Ask Joule item within the contact section.
403
+ * Can be "start" (before phone/email/chat) or "end" (after phone/email/chat).
404
+ *
405
+ * @default "start"
406
+ * @public
407
+ */
408
+ @property({ type: String })
409
+ askJoulePosition: UDExFooterAskJoulePosition = UDExFooterAskJoulePosition.Start;
410
+
381
411
  /**
382
412
  * List of the Social links and their icons
383
413
  *
@@ -526,7 +556,7 @@ class UDExFooter extends UI5Element {
526
556
  }
527
557
 
528
558
  get isContactContainerVisible(): boolean {
529
- return !!this.contactNumbersArray.length || !!this.contactUsLink || !!this.chatWithUsLink;
559
+ return !!this.contactNumbersArray.length || !!this.contactUsLink || !!this.chatWithUsLink || !!this.askJouleLink;
530
560
  }
531
561
 
532
562
  get phoneNumberAccessibleName(): string {
@@ -548,6 +578,10 @@ class UDExFooter extends UI5Element {
548
578
  return translate(UDExFooter, CHAT_WITH_US);
549
579
  }
550
580
 
581
+ get askJouleAccessibleName(): string {
582
+ return translate(UDExFooter, ASK_JOULE);
583
+ }
584
+
551
585
  get _quickLinksTitle(): string {
552
586
  return this.quickLinksTitle || translate(UDExFooter, QUICK_LINKS);
553
587
  }
@@ -651,6 +685,10 @@ class UDExFooter extends UI5Element {
651
685
  this.fireFooterBaseEvent(e, "contact-chat-click");
652
686
  }
653
687
 
688
+ _onAskJouleClick(e: MouseEvent): void {
689
+ this.fireFooterBaseEvent(e, "ask-joule-click");
690
+ }
691
+
654
692
  _onQuickLinksClick(e: MouseEvent): void {
655
693
  this.fireFooterDetailedClickEvent(e, "quick-links-click");
656
694
  }
@@ -676,7 +714,8 @@ class UDExFooter extends UI5Element {
676
714
  }
677
715
 
678
716
  fireFooterDetailedClickEvent(e: MouseEvent, eventName: DetailedEvents): void {
679
- const sourceNode = e.composedPath()[0] as HTMLElement;
717
+ const target = e.composedPath()[0] as HTMLElement;
718
+ const sourceNode = (target.closest("a") ?? target);
680
719
  const { innerText, dataset: { id, name } } = sourceNode;
681
720
 
682
721
  this.fireDecoratorEvent(eventName, {