@sapudex/web-components 2.42.0 → 2.44.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 (442) hide show
  1. package/cypress/specs/Checkbox.cy.tsx +1 -1
  2. package/cypress/specs/FilterMenu.cy.tsx +277 -0
  3. package/cypress/specs/Search.cy.tsx +20 -0
  4. package/cypress/specs/SelectBox.cy.tsx +531 -1
  5. package/cypress/specs/TagGroup.cy.tsx +11 -0
  6. package/cypress/specs/Toast.cy.tsx +6 -9
  7. package/dist/FilterMenu.d.ts +4 -0
  8. package/dist/FilterMenu.js +19 -0
  9. package/dist/FilterMenu.js.map +1 -1
  10. package/dist/ListItemBase.js +2 -2
  11. package/dist/ListItemBase.js.map +1 -1
  12. package/dist/MastheadCountrySelector.d.ts +5 -7
  13. package/dist/MastheadCountrySelector.js +17 -64
  14. package/dist/MastheadCountrySelector.js.map +1 -1
  15. package/dist/Search.d.ts +6 -0
  16. package/dist/Search.js +3 -0
  17. package/dist/Search.js.map +1 -1
  18. package/dist/SearchTemplate.js +1 -1
  19. package/dist/SearchTemplate.js.map +1 -1
  20. package/dist/SearchableListBase.d.ts +21 -2
  21. package/dist/SearchableListBase.js +75 -7
  22. package/dist/SearchableListBase.js.map +1 -1
  23. package/dist/SearchableListBaseTemplate.js +3 -3
  24. package/dist/SearchableListBaseTemplate.js.map +1 -1
  25. package/dist/SelectBase.d.ts +3 -1
  26. package/dist/SelectBase.js +20 -15
  27. package/dist/SelectBase.js.map +1 -1
  28. package/dist/SelectBox.d.ts +1 -1
  29. package/dist/SelectBox.js +17 -13
  30. package/dist/SelectBox.js.map +1 -1
  31. package/dist/SelectBoxItem.d.ts +53 -0
  32. package/dist/SelectBoxItem.js +40 -1
  33. package/dist/SelectBoxItem.js.map +1 -1
  34. package/dist/SelectBoxTemplate.js +1 -1
  35. package/dist/SelectBoxTemplate.js.map +1 -1
  36. package/dist/Tag.d.ts +1 -0
  37. package/dist/Tag.js +6 -0
  38. package/dist/Tag.js.map +1 -1
  39. package/dist/TagGroup.d.ts +8 -0
  40. package/dist/TagGroup.js +3 -0
  41. package/dist/TagGroup.js.map +1 -1
  42. package/dist/TagGroupTemplate.js +1 -1
  43. package/dist/TagGroupTemplate.js.map +1 -1
  44. package/dist/TagTemplate.js +1 -1
  45. package/dist/TagTemplate.js.map +1 -1
  46. package/dist/assets/{InputSuggestions-DVRXb_CJ.js → InputSuggestions-B3D8lxAS.js} +2 -2
  47. package/dist/assets/ListItemStandardExpandableTextTemplate-Is8_hDTt.js +3 -0
  48. package/dist/assets/{bundle.esm-CjF11YUZ.js → bundle.esm-6rH7NAG7.js} +305 -304
  49. package/dist/assets/messagebundle_ar-BUmieu9B.js +1 -0
  50. package/dist/assets/messagebundle_ar-DcH18L3h.js +1 -0
  51. package/dist/assets/messagebundle_ar-Ic4ckTUt.js +1 -0
  52. package/dist/assets/messagebundle_bg-BOgOglXh.js +1 -0
  53. package/dist/assets/messagebundle_bg-CADHX0Gg.js +1 -0
  54. package/dist/assets/messagebundle_bg-dZrlFeKZ.js +1 -0
  55. package/dist/assets/messagebundle_ca-2bFyG5Ty.js +1 -0
  56. package/dist/assets/messagebundle_ca-B2inwHsb.js +1 -0
  57. package/dist/assets/messagebundle_ca-hDpK1GqB.js +1 -0
  58. package/dist/assets/messagebundle_cnr-CSmWG9_V.js +1 -0
  59. package/dist/assets/messagebundle_cnr-DZsc1R1r.js +1 -0
  60. package/dist/assets/messagebundle_cnr-luAWCJP0.js +1 -0
  61. package/dist/assets/messagebundle_cs-BL77wptv.js +1 -0
  62. package/dist/assets/messagebundle_cs-BZXuIszN.js +1 -0
  63. package/dist/assets/messagebundle_cs-Dso9kSig.js +1 -0
  64. package/dist/assets/messagebundle_cy-B66O9oBx.js +1 -0
  65. package/dist/assets/messagebundle_cy-BSiMgZtA.js +1 -0
  66. package/dist/assets/messagebundle_cy-ZlqQuGUz.js +1 -0
  67. package/dist/assets/messagebundle_da-C1CzvcXW.js +1 -0
  68. package/dist/assets/messagebundle_da-CAPY9nnT.js +1 -0
  69. package/dist/assets/messagebundle_da-DTOADw3Y.js +1 -0
  70. package/dist/assets/messagebundle_de-CSl05u5u.js +1 -0
  71. package/dist/assets/messagebundle_de-DHBsUEIt.js +1 -0
  72. package/dist/assets/messagebundle_de-DWsuh-jj.js +1 -0
  73. package/dist/assets/messagebundle_el-ByL7ikpl.js +1 -0
  74. package/dist/assets/messagebundle_el-CwjQKEGb.js +1 -0
  75. package/dist/assets/messagebundle_el-rU4RAHJr.js +1 -0
  76. package/dist/assets/messagebundle_en-4Wpx2jqf.js +1 -0
  77. package/dist/assets/messagebundle_en-Bi068VCa.js +1 -0
  78. package/dist/assets/messagebundle_en-C3jnlBnZ.js +1 -0
  79. package/dist/assets/messagebundle_en_GB-BEZ3LbT5.js +1 -0
  80. package/dist/assets/messagebundle_en_GB-DKEddq_J.js +1 -0
  81. package/dist/assets/messagebundle_en_GB-DgUUCHvU.js +1 -0
  82. package/dist/assets/messagebundle_en_US_sappsd-BN4GAQFk.js +1 -0
  83. package/dist/assets/messagebundle_en_US_sappsd-Bc-vQnEr.js +1 -0
  84. package/dist/assets/messagebundle_en_US_sappsd-CEGC_XRQ.js +1 -0
  85. package/dist/assets/messagebundle_en_US_saprigi--hAUIdWq.js +1 -0
  86. package/dist/assets/messagebundle_en_US_saprigi-C7t8yAP4.js +1 -0
  87. package/dist/assets/messagebundle_en_US_saprigi-C_gnMw05.js +1 -0
  88. package/dist/assets/messagebundle_en_US_saptrc-CIbQNg_d.js +1 -0
  89. package/dist/assets/messagebundle_en_US_saptrc-DY0WM5Yp.js +1 -0
  90. package/dist/assets/messagebundle_en_US_saptrc-aeJaPF-Z.js +1 -0
  91. package/dist/assets/messagebundle_es-BHY_U2xi.js +1 -0
  92. package/dist/assets/messagebundle_es-CjAQjgPh.js +1 -0
  93. package/dist/assets/messagebundle_es-vhzI0nML.js +1 -0
  94. package/dist/assets/messagebundle_es_MX-BsU5E2lt.js +1 -0
  95. package/dist/assets/messagebundle_es_MX-DjJ15Ns4.js +1 -0
  96. package/dist/assets/messagebundle_es_MX-DmINMi1e.js +1 -0
  97. package/dist/assets/messagebundle_et-CGVYNV2t.js +1 -0
  98. package/dist/assets/messagebundle_et-CpVk1Xin.js +1 -0
  99. package/dist/assets/messagebundle_et-DLssZHh4.js +1 -0
  100. package/dist/assets/messagebundle_fi-DTWy4DwI.js +1 -0
  101. package/dist/assets/messagebundle_fi-DmGIB0sc.js +1 -0
  102. package/dist/assets/messagebundle_fi-YfxQ0aOR.js +1 -0
  103. package/dist/assets/messagebundle_fr-BFMaF4AX.js +1 -0
  104. package/dist/assets/messagebundle_fr-BZ-VJ002.js +1 -0
  105. package/dist/assets/messagebundle_fr-CQZYkI8Y.js +1 -0
  106. package/dist/assets/messagebundle_fr_CA-B5jFryz1.js +1 -0
  107. package/dist/assets/messagebundle_fr_CA-BPZVCoKy.js +1 -0
  108. package/dist/assets/messagebundle_fr_CA-hZ2LGeU2.js +1 -0
  109. package/dist/assets/messagebundle_hi-92qX3F1U.js +1 -0
  110. package/dist/assets/messagebundle_hi-B-Bg9gCp.js +1 -0
  111. package/dist/assets/messagebundle_hi-DFXk6QGw.js +1 -0
  112. package/dist/assets/messagebundle_hr-CUaLQBjG.js +1 -0
  113. package/dist/assets/messagebundle_hr-DZwNzpwV.js +1 -0
  114. package/dist/assets/messagebundle_hr-selqadPV.js +1 -0
  115. package/dist/assets/messagebundle_hu-BtupF5BC.js +1 -0
  116. package/dist/assets/messagebundle_hu-CJuQbTfi.js +1 -0
  117. package/dist/assets/messagebundle_hu-D_rF_cCp.js +1 -0
  118. package/dist/assets/messagebundle_id-8SuSwuaC.js +1 -0
  119. package/dist/assets/messagebundle_id-Bvmpblmf.js +1 -0
  120. package/dist/assets/messagebundle_id-P3JSHcmu.js +1 -0
  121. package/dist/assets/messagebundle_it-BINon06x.js +1 -0
  122. package/dist/assets/messagebundle_it-CXnIcrL4.js +1 -0
  123. package/dist/assets/messagebundle_it-CkVp56-y.js +1 -0
  124. package/dist/assets/messagebundle_iw-BzixLMjm.js +1 -0
  125. package/dist/assets/messagebundle_iw-C2PtOYbW.js +1 -0
  126. package/dist/assets/messagebundle_iw-Cb6M5XGj.js +1 -0
  127. package/dist/assets/messagebundle_ja-DKtRR53-.js +1 -0
  128. package/dist/assets/messagebundle_ja-DQ5MCYLw.js +1 -0
  129. package/dist/assets/messagebundle_ja-J8eqPj7N.js +1 -0
  130. package/dist/assets/messagebundle_kk-B-ayCgR1.js +1 -0
  131. package/dist/assets/messagebundle_kk-BIeQLfxu.js +1 -0
  132. package/dist/assets/messagebundle_kk-DIOzUeHN.js +1 -0
  133. package/dist/assets/messagebundle_ko-B9_Ss1b5.js +1 -0
  134. package/dist/assets/messagebundle_ko-BLMVyKh5.js +1 -0
  135. package/dist/assets/messagebundle_ko-iA71apTw.js +1 -0
  136. package/dist/assets/messagebundle_lt-CbB2wq2X.js +1 -0
  137. package/dist/assets/messagebundle_lt-DFh-jl0O.js +1 -0
  138. package/dist/assets/messagebundle_lt-RzsUvi_1.js +1 -0
  139. package/dist/assets/messagebundle_lv-6quK3a4e.js +1 -0
  140. package/dist/assets/messagebundle_lv-BQO-79MM.js +1 -0
  141. package/dist/assets/messagebundle_lv-C3DWg_wu.js +1 -0
  142. package/dist/assets/messagebundle_mk-2lJhEAgI.js +1 -0
  143. package/dist/assets/messagebundle_mk-Cv-rDpUc.js +1 -0
  144. package/dist/assets/messagebundle_mk-o-SATTof.js +1 -0
  145. package/dist/assets/messagebundle_ms-3Zupz0mA.js +1 -0
  146. package/dist/assets/messagebundle_ms-BOQc8ZIR.js +1 -0
  147. package/dist/assets/messagebundle_ms-DnacCQys.js +1 -0
  148. package/dist/assets/messagebundle_nl-BVNQuB_K.js +1 -0
  149. package/dist/assets/messagebundle_nl-C2lsDY4p.js +1 -0
  150. package/dist/assets/messagebundle_nl-DTnHMKsv.js +1 -0
  151. package/dist/assets/messagebundle_no-BQMw-opH.js +1 -0
  152. package/dist/assets/messagebundle_no-CsErf2Px.js +1 -0
  153. package/dist/assets/messagebundle_no-OUP0Fraw.js +1 -0
  154. package/dist/assets/messagebundle_pl-BQW6qi8p.js +1 -0
  155. package/dist/assets/messagebundle_pl-Cc6OWGyn.js +1 -0
  156. package/dist/assets/messagebundle_pl-PZiQh0Xy.js +1 -0
  157. package/dist/assets/messagebundle_pt-BlqCbnEN.js +1 -0
  158. package/dist/assets/messagebundle_pt-DEVzhHU_.js +1 -0
  159. package/dist/assets/messagebundle_pt-DKJk4Ohl.js +1 -0
  160. package/dist/assets/messagebundle_pt_PT-BV1ec-3v.js +1 -0
  161. package/dist/assets/messagebundle_pt_PT-CL5hgi4Q.js +1 -0
  162. package/dist/assets/messagebundle_pt_PT-DekHH4S1.js +1 -0
  163. package/dist/assets/messagebundle_ro-D3lrScIy.js +1 -0
  164. package/dist/assets/messagebundle_ro-fp3znc96.js +1 -0
  165. package/dist/assets/messagebundle_ro-mHJ-r7ez.js +1 -0
  166. package/dist/assets/messagebundle_ru-BD3A7Zsx.js +1 -0
  167. package/dist/assets/messagebundle_ru-BTDmH8CB.js +1 -0
  168. package/dist/assets/messagebundle_ru-CJECAckd.js +1 -0
  169. package/dist/assets/messagebundle_ru-D7z2G7DP.js +1 -0
  170. package/dist/assets/messagebundle_sh-BoaW1EWP.js +1 -0
  171. package/dist/assets/messagebundle_sh-C4BjzhRr.js +1 -0
  172. package/dist/assets/messagebundle_sh-DXM15u1O.js +1 -0
  173. package/dist/assets/messagebundle_sk-Bjnhb-_D.js +1 -0
  174. package/dist/assets/messagebundle_sk-BxDvjXxb.js +1 -0
  175. package/dist/assets/messagebundle_sk-Clc7AaEc.js +1 -0
  176. package/dist/assets/messagebundle_sk-Lb4jvtpc.js +1 -0
  177. package/dist/assets/messagebundle_sl-BZi2bKSy.js +1 -0
  178. package/dist/assets/messagebundle_sl-Bi9mgI6m.js +1 -0
  179. package/dist/assets/messagebundle_sl-Bn5tocYe.js +1 -0
  180. package/dist/assets/messagebundle_sl-DJj-8V96.js +1 -0
  181. package/dist/assets/messagebundle_sr-B9TYgxO1.js +1 -0
  182. package/dist/assets/messagebundle_sr-Dsio4Srd.js +1 -0
  183. package/dist/assets/messagebundle_sr-SCdbG5fp.js +1 -0
  184. package/dist/assets/messagebundle_sr-w0tnyPzk.js +1 -0
  185. package/dist/assets/messagebundle_sv-B-KDauoz.js +1 -0
  186. package/dist/assets/messagebundle_sv-DCsGSCfn.js +1 -0
  187. package/dist/assets/messagebundle_sv-DQ0kE9XJ.js +1 -0
  188. package/dist/assets/messagebundle_sv-DWlY9RTQ.js +1 -0
  189. package/dist/assets/messagebundle_th-BmHTcbhR.js +1 -0
  190. package/dist/assets/messagebundle_th-D8qcTN_b.js +1 -0
  191. package/dist/assets/messagebundle_th-rPoqCsGu.js +1 -0
  192. package/dist/assets/messagebundle_tr-CyN3jcUR.js +1 -0
  193. package/dist/assets/messagebundle_tr-DIqpdL9d.js +1 -0
  194. package/dist/assets/{messagebundle_tr-CKXLfeIL.js → messagebundle_tr-Dw7toCgs.js} +1 -1
  195. package/dist/assets/messagebundle_uk-C7_nVJ9T.js +1 -0
  196. package/dist/assets/messagebundle_uk-CycQpntH.js +1 -0
  197. package/dist/assets/messagebundle_uk-L4kmWPZY.js +1 -0
  198. package/dist/assets/messagebundle_vi-CKYiMebw.js +1 -0
  199. package/dist/assets/messagebundle_vi-D1-iiI56.js +1 -0
  200. package/dist/assets/messagebundle_vi-wJJaYHj7.js +1 -0
  201. package/dist/assets/messagebundle_zh_CN-CIR_auXr.js +1 -0
  202. package/dist/assets/messagebundle_zh_CN-D3UfRQq7.js +1 -0
  203. package/dist/assets/messagebundle_zh_CN-Dv1_J1hu.js +1 -0
  204. package/dist/assets/messagebundle_zh_TW-CG9O1F7p.js +1 -0
  205. package/dist/assets/messagebundle_zh_TW-CQChC5zV.js +1 -0
  206. package/dist/assets/{messagebundle_zh_TW-Bok4mzbM.js → messagebundle_zh_TW-qc8ADbuf.js} +1 -1
  207. package/dist/assets/{parameters-bundle.css-B89Fdm1T.js → parameters-bundle.css-1rRun2sT.js} +8 -0
  208. package/dist/assets/parameters-bundle.css-BA_cQYjH.js +2 -0
  209. package/dist/assets/parameters-bundle.css-BBLk8nbD.js +3 -0
  210. package/dist/assets/{parameters-bundle.css-BRUthQQI.js → parameters-bundle.css-BBdTemt8.js} +15 -15
  211. package/dist/assets/parameters-bundle.css-BCB-2TTY.js +2 -0
  212. package/dist/assets/parameters-bundle.css-BQB0pxRT.js +2 -0
  213. package/dist/assets/parameters-bundle.css-BVXLOlqR.js +2 -0
  214. package/dist/assets/parameters-bundle.css-B_rCq3Nc.js +3 -0
  215. package/dist/assets/{parameters-bundle.css-BWPCcnui.js → parameters-bundle.css-BiSP-Gf0.js} +10 -2
  216. package/dist/assets/parameters-bundle.css-C90ijvPq.js +2 -0
  217. package/dist/assets/{parameters-bundle.css-CXAGQb2_.js → parameters-bundle.css-CKNWL0nG.js} +10 -2
  218. package/dist/assets/parameters-bundle.css-CTIq7sCI.js +2 -0
  219. package/dist/assets/parameters-bundle.css-CTw0R0y7.js +2 -0
  220. package/dist/assets/parameters-bundle.css-CV2FCAf_.js +3 -0
  221. package/dist/assets/parameters-bundle.css-CWfGvXBZ.js +2 -0
  222. package/dist/assets/parameters-bundle.css-CX7V5RGm.js +3 -0
  223. package/dist/assets/parameters-bundle.css-D9AHurfl.js +2 -0
  224. package/dist/assets/parameters-bundle.css-DENVM9pb.js +3 -0
  225. package/dist/assets/parameters-bundle.css-DHLZEUsz.js +3 -0
  226. package/dist/assets/{parameters-bundle.css-CaKlToMx.js → parameters-bundle.css-DH_wndOj.js} +6 -6
  227. package/dist/assets/parameters-bundle.css-DUAp19rB.js +3 -0
  228. package/dist/assets/{parameters-bundle.css-Bbpzo3n0.js → parameters-bundle.css-DUGC7SPT.js} +8 -0
  229. package/dist/assets/parameters-bundle.css-DXuX1n-u.js +2 -0
  230. package/dist/assets/{parameters-bundle.css-DICk53PA.js → parameters-bundle.css-Dd5ajhZR.js} +10 -2
  231. package/dist/assets/parameters-bundle.css-Dp55UvXM.js +3 -0
  232. package/dist/assets/parameters-bundle.css-DpJfefgg.js +3 -0
  233. package/dist/assets/{parameters-bundle.css-DD29SCx8.js → parameters-bundle.css-DuHP0Q5Y.js} +13 -12
  234. package/dist/assets/parameters-bundle.css-YNYQDxyY.js +2 -0
  235. package/dist/assets/parameters-bundle.css-tevTlrPX.js +2 -0
  236. package/dist/assets/{parameters-bundle.css-DPvcwVIm.js → parameters-bundle.css-yvuwi247.js} +5 -5
  237. package/dist/css/themes/List.css +1 -1
  238. package/dist/css/themes/ListGroupHeader.css +1 -1
  239. package/dist/css/themes/ListItem.css +1 -1
  240. package/dist/css/themes/RadioButton.css +1 -1
  241. package/dist/css/themes/SearchableList.css +1 -1
  242. package/dist/css/themes/TextField.css +1 -1
  243. package/dist/custom-elements-internal.json +488 -0
  244. package/dist/custom-elements.json +494 -4
  245. package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
  246. package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
  247. package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
  248. package/dist/generated/assets/i18n/messagebundle_sr.json +1 -1
  249. package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
  250. package/dist/generated/templates/ListGroupHeaderTemplate.lit.js +5 -5
  251. package/dist/generated/templates/ListGroupHeaderTemplate.lit.js.map +1 -1
  252. package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.js +1 -1
  253. package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.js.map +1 -1
  254. package/dist/generated/themes/List.css.d.ts +1 -1
  255. package/dist/generated/themes/List.css.js +1 -1
  256. package/dist/generated/themes/List.css.js.map +1 -1
  257. package/dist/generated/themes/ListGroupHeader.css.d.ts +1 -1
  258. package/dist/generated/themes/ListGroupHeader.css.js +1 -1
  259. package/dist/generated/themes/ListGroupHeader.css.js.map +1 -1
  260. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  261. package/dist/generated/themes/ListItem.css.js +1 -1
  262. package/dist/generated/themes/ListItem.css.js.map +1 -1
  263. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  264. package/dist/generated/themes/RadioButton.css.js +1 -1
  265. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  266. package/dist/generated/themes/SearchableList.css.d.ts +1 -1
  267. package/dist/generated/themes/SearchableList.css.js +1 -1
  268. package/dist/generated/themes/SearchableList.css.js.map +1 -1
  269. package/dist/generated/themes/TextField.css.d.ts +1 -1
  270. package/dist/generated/themes/TextField.css.js +1 -1
  271. package/dist/generated/themes/TextField.css.js.map +1 -1
  272. package/dist/messagebundle_ru.properties +128 -0
  273. package/dist/messagebundle_sk.properties +125 -0
  274. package/dist/messagebundle_sl.properties +126 -1
  275. package/dist/messagebundle_sr.properties +128 -0
  276. package/dist/messagebundle_sv.properties +126 -0
  277. package/dist/vscode.html-custom-data.json +122 -0
  278. package/dist/web-types.json +187 -1
  279. package/package.json +8 -8
  280. package/src/FilterMenu.ts +23 -0
  281. package/src/ListGroupHeader.hbs +4 -4
  282. package/src/ListItemBase.ts +2 -2
  283. package/src/MastheadCountrySelector.hbs +1 -1
  284. package/src/MastheadCountrySelector.ts +20 -80
  285. package/src/Search.ts +9 -0
  286. package/src/SearchTemplate.tsx +1 -0
  287. package/src/SearchableListBase.ts +76 -8
  288. package/src/SearchableListBaseTemplate.tsx +13 -1
  289. package/src/SelectBase.ts +23 -16
  290. package/src/SelectBox.ts +19 -14
  291. package/src/SelectBoxItem.ts +70 -1
  292. package/src/SelectBoxTemplate.tsx +1 -1
  293. package/src/Tag.ts +8 -0
  294. package/src/TagGroup.ts +10 -0
  295. package/src/TagGroupTemplate.tsx +1 -0
  296. package/src/TagTemplate.tsx +1 -0
  297. package/src/generated/templates/ListGroupHeaderTemplate.lit.ts +4 -4
  298. package/src/generated/templates/MastheadCountrySelectorTemplate.lit.ts +1 -1
  299. package/src/generated/themes/List.css.ts +1 -1
  300. package/src/generated/themes/ListGroupHeader.css.ts +1 -1
  301. package/src/generated/themes/ListItem.css.ts +1 -1
  302. package/src/generated/themes/RadioButton.css.ts +1 -1
  303. package/src/generated/themes/SearchableList.css.ts +1 -1
  304. package/src/generated/themes/TextField.css.ts +1 -1
  305. package/src/i18n/messagebundle_ru.properties +128 -0
  306. package/src/i18n/messagebundle_sk.properties +125 -0
  307. package/src/i18n/messagebundle_sl.properties +126 -1
  308. package/src/i18n/messagebundle_sr.properties +128 -0
  309. package/src/i18n/messagebundle_sv.properties +126 -0
  310. package/src/themes/List.css +1 -2
  311. package/src/themes/ListGroupHeader.css +10 -12
  312. package/src/themes/ListItem.css +4 -0
  313. package/src/themes/RadioButton.css +9 -6
  314. package/src/themes/SearchableList.css +0 -1
  315. package/src/themes/TextField.css +2 -1
  316. package/dist/assets/ListItemStandardExpandableTextTemplate-DhmGlKzk.js +0 -3
  317. package/dist/assets/messagebundle_ar-B_vGELqE.js +0 -1
  318. package/dist/assets/messagebundle_ar-ql9y8H7i.js +0 -1
  319. package/dist/assets/messagebundle_bg-DahjEq9-.js +0 -1
  320. package/dist/assets/messagebundle_bg-DirTSiBs.js +0 -1
  321. package/dist/assets/messagebundle_ca-CLoGjgOQ.js +0 -1
  322. package/dist/assets/messagebundle_ca-Dt0eXv4b.js +0 -1
  323. package/dist/assets/messagebundle_cnr-CIT4FdxK.js +0 -1
  324. package/dist/assets/messagebundle_cnr-DcKjQBC2.js +0 -1
  325. package/dist/assets/messagebundle_cs-D6Ept3aZ.js +0 -1
  326. package/dist/assets/messagebundle_cs-JybtcHQz.js +0 -1
  327. package/dist/assets/messagebundle_cy-CBJcBetc.js +0 -1
  328. package/dist/assets/messagebundle_cy-D6EaO2mc.js +0 -1
  329. package/dist/assets/messagebundle_da-DP_Ld_m4.js +0 -1
  330. package/dist/assets/messagebundle_da-DXFv9LbY.js +0 -1
  331. package/dist/assets/messagebundle_de-C6CVo61I.js +0 -1
  332. package/dist/assets/messagebundle_de-De1WNx1Z.js +0 -1
  333. package/dist/assets/messagebundle_el-DjFg6Pxj.js +0 -1
  334. package/dist/assets/messagebundle_el-x7EAub0z.js +0 -1
  335. package/dist/assets/messagebundle_en-52Fg7l8z.js +0 -1
  336. package/dist/assets/messagebundle_en-CAn74huH.js +0 -1
  337. package/dist/assets/messagebundle_en_GB-BNvEFdpW.js +0 -1
  338. package/dist/assets/messagebundle_en_GB-mPq0tjYl.js +0 -1
  339. package/dist/assets/messagebundle_en_US_sappsd-BJo2KiPa.js +0 -1
  340. package/dist/assets/messagebundle_en_US_sappsd-DynRbkUr.js +0 -1
  341. package/dist/assets/messagebundle_en_US_saprigi-BQWYyoHW.js +0 -1
  342. package/dist/assets/messagebundle_en_US_saprigi-D92s1ZRa.js +0 -1
  343. package/dist/assets/messagebundle_en_US_saptrc-B2DXKZNZ.js +0 -1
  344. package/dist/assets/messagebundle_en_US_saptrc-hfAEC4kd.js +0 -1
  345. package/dist/assets/messagebundle_es-BwPFGD9Z.js +0 -1
  346. package/dist/assets/messagebundle_es-jLk5s13n.js +0 -1
  347. package/dist/assets/messagebundle_es_MX-C4GAmGhU.js +0 -1
  348. package/dist/assets/messagebundle_es_MX-D8t2Deqr.js +0 -1
  349. package/dist/assets/messagebundle_et-BTaXAVVc.js +0 -1
  350. package/dist/assets/messagebundle_et-Bjo0Et5r.js +0 -1
  351. package/dist/assets/messagebundle_fi-ChYfzxXr.js +0 -1
  352. package/dist/assets/messagebundle_fi-CntiBCQA.js +0 -1
  353. package/dist/assets/messagebundle_fr-BdRWqZJC.js +0 -1
  354. package/dist/assets/messagebundle_fr-CaZExNBp.js +0 -1
  355. package/dist/assets/messagebundle_fr_CA-BKRP61J_.js +0 -1
  356. package/dist/assets/messagebundle_fr_CA-DAzfdGd5.js +0 -1
  357. package/dist/assets/messagebundle_hi-BcOtK4GQ.js +0 -1
  358. package/dist/assets/messagebundle_hi-C7UcqZdw.js +0 -1
  359. package/dist/assets/messagebundle_hr-BLF-FOD0.js +0 -1
  360. package/dist/assets/messagebundle_hr-Dk6M01RL.js +0 -1
  361. package/dist/assets/messagebundle_hu-DpIoRnup.js +0 -1
  362. package/dist/assets/messagebundle_hu-VbDHbZG7.js +0 -1
  363. package/dist/assets/messagebundle_id-DIBxH6fi.js +0 -1
  364. package/dist/assets/messagebundle_id-lZaxXrdJ.js +0 -1
  365. package/dist/assets/messagebundle_it-BhsMY7So.js +0 -1
  366. package/dist/assets/messagebundle_it-DG7xbfea.js +0 -1
  367. package/dist/assets/messagebundle_iw-Cc803Nmd.js +0 -1
  368. package/dist/assets/messagebundle_iw-O_evnbhY.js +0 -1
  369. package/dist/assets/messagebundle_ja-BQJaLzhD.js +0 -1
  370. package/dist/assets/messagebundle_ja-DA6u0p66.js +0 -1
  371. package/dist/assets/messagebundle_kk-D5CooIqJ.js +0 -1
  372. package/dist/assets/messagebundle_kk-DNvxdh_N.js +0 -1
  373. package/dist/assets/messagebundle_ko-D8xqECx2.js +0 -1
  374. package/dist/assets/messagebundle_ko-wbi_wfM_.js +0 -1
  375. package/dist/assets/messagebundle_lt-DpI4T_Fm.js +0 -1
  376. package/dist/assets/messagebundle_lt-ln5fzwxi.js +0 -1
  377. package/dist/assets/messagebundle_lv-CYWgsGbN.js +0 -1
  378. package/dist/assets/messagebundle_lv-l0vb-OwI.js +0 -1
  379. package/dist/assets/messagebundle_mk-DIl_j3HQ.js +0 -1
  380. package/dist/assets/messagebundle_mk-t_B9kLHP.js +0 -1
  381. package/dist/assets/messagebundle_ms-BFy7Zha3.js +0 -1
  382. package/dist/assets/messagebundle_ms-DZQm3zbR.js +0 -1
  383. package/dist/assets/messagebundle_nl-C1aSfvr4.js +0 -1
  384. package/dist/assets/messagebundle_nl-TRrPBmQF.js +0 -1
  385. package/dist/assets/messagebundle_no-CLhgj0EG.js +0 -1
  386. package/dist/assets/messagebundle_no-aR0S5fgl.js +0 -1
  387. package/dist/assets/messagebundle_pl-BSUgMNBu.js +0 -1
  388. package/dist/assets/messagebundle_pl-CET5Ib58.js +0 -1
  389. package/dist/assets/messagebundle_pt-BbXdBcA1.js +0 -1
  390. package/dist/assets/messagebundle_pt-DkZyB3LQ.js +0 -1
  391. package/dist/assets/messagebundle_pt_PT-C_oLd5Iw.js +0 -1
  392. package/dist/assets/messagebundle_pt_PT-DCKLQCBx.js +0 -1
  393. package/dist/assets/messagebundle_ro-CsDFuVns.js +0 -1
  394. package/dist/assets/messagebundle_ro-D2wg4wzH.js +0 -1
  395. package/dist/assets/messagebundle_ru-BT7zyn7i.js +0 -1
  396. package/dist/assets/messagebundle_ru-C2C4gC1g.js +0 -1
  397. package/dist/assets/messagebundle_ru-DE3o7RU0.js +0 -1
  398. package/dist/assets/messagebundle_sh-B7wYluE7.js +0 -1
  399. package/dist/assets/messagebundle_sh-DKD7IPLY.js +0 -1
  400. package/dist/assets/messagebundle_sk-BqNiKvir.js +0 -1
  401. package/dist/assets/messagebundle_sk-CQANpP_i.js +0 -1
  402. package/dist/assets/messagebundle_sk-gmWb_4Wo.js +0 -1
  403. package/dist/assets/messagebundle_sl-B4p3OqyZ.js +0 -1
  404. package/dist/assets/messagebundle_sl-D-C5Ql-U.js +0 -1
  405. package/dist/assets/messagebundle_sl-Dg8gsTrL.js +0 -1
  406. package/dist/assets/messagebundle_sr-BrfbPkvb.js +0 -1
  407. package/dist/assets/messagebundle_sr-CiPp4mnW.js +0 -1
  408. package/dist/assets/messagebundle_sr-D8Lxl5cz.js +0 -1
  409. package/dist/assets/messagebundle_sv-DCluCru8.js +0 -1
  410. package/dist/assets/messagebundle_sv-DZNyuq7Z.js +0 -1
  411. package/dist/assets/messagebundle_sv-Ip_fKK1p.js +0 -1
  412. package/dist/assets/messagebundle_th-DwzFsAOp.js +0 -1
  413. package/dist/assets/messagebundle_th-HY1lYjoi.js +0 -1
  414. package/dist/assets/messagebundle_tr-B-M7HjSs.js +0 -1
  415. package/dist/assets/messagebundle_uk-Bh3hLYnV.js +0 -1
  416. package/dist/assets/messagebundle_uk-gYNrr26j.js +0 -1
  417. package/dist/assets/messagebundle_vi-CmDSDhxv.js +0 -1
  418. package/dist/assets/messagebundle_vi-yAL9JrWb.js +0 -1
  419. package/dist/assets/messagebundle_zh_CN-DOWro3p4.js +0 -1
  420. package/dist/assets/messagebundle_zh_CN-DRPasXpL.js +0 -1
  421. package/dist/assets/messagebundle_zh_TW-DCsIDAoN.js +0 -1
  422. package/dist/assets/parameters-bundle.css-B-LoL5pn.js +0 -2
  423. package/dist/assets/parameters-bundle.css-B44zldkY.js +0 -2
  424. package/dist/assets/parameters-bundle.css-B9cNNkge.js +0 -2
  425. package/dist/assets/parameters-bundle.css-BM3cv0NX.js +0 -3
  426. package/dist/assets/parameters-bundle.css-BaYJ1Sh3.js +0 -3
  427. package/dist/assets/parameters-bundle.css-BnDd81m-.js +0 -2
  428. package/dist/assets/parameters-bundle.css-Bpp5SPIo.js +0 -2
  429. package/dist/assets/parameters-bundle.css-BxF9_xcQ.js +0 -3
  430. package/dist/assets/parameters-bundle.css-CIS8Sge3.js +0 -2
  431. package/dist/assets/parameters-bundle.css-CkZZXcub.js +0 -3
  432. package/dist/assets/parameters-bundle.css-CqlwqyiK.js +0 -3
  433. package/dist/assets/parameters-bundle.css-D5iBjAlb.js +0 -2
  434. package/dist/assets/parameters-bundle.css-DFLKYdpf.js +0 -3
  435. package/dist/assets/parameters-bundle.css-Df8B8yQY.js +0 -2
  436. package/dist/assets/parameters-bundle.css-DfFxBNVP.js +0 -3
  437. package/dist/assets/parameters-bundle.css-DgrQXZRd.js +0 -2
  438. package/dist/assets/parameters-bundle.css-Dt5cIEI8.js +0 -2
  439. package/dist/assets/parameters-bundle.css-Wj-Qo16j.js +0 -3
  440. package/dist/assets/parameters-bundle.css-X9m6S2In.js +0 -2
  441. package/dist/assets/parameters-bundle.css-defUEOJD.js +0 -2
  442. package/dist/assets/parameters-bundle.css-oytHmScC.js +0 -3
@@ -34,7 +34,7 @@ describe("Checkbox", () => {
34
34
 
35
35
  it("renders displayonly corectly", () => {
36
36
  cy.mount(<UDExCheckbox displayOnly></UDExCheckbox>)
37
- cy.get("[udex-checkbox]").shadow().find("ui5-icon").should("be.visible")
37
+ cy.get("[udex-checkbox]").shadow().find("[ui5-icon]").should("exist")
38
38
  });
39
39
 
40
40
  it("correctly sets aria-checked", () => {
@@ -964,4 +964,281 @@ describe("Filter Menu component", () => {
964
964
  .should("have.attr", "data-selected", "true");
965
965
  });
966
966
  });
967
+
968
+ // Added: covers SearchableListBase.filterItems group-header label matching.
969
+ // When the search query matches a group header's label, the header label is
970
+ // highlighted with <b> tags and ALL children of that group are shown.
971
+ // When only some children match, the header label is left intact (no <b>)
972
+ // and only the matching children are rendered.
973
+ describe("Filter Menu group header search highlighting", () => {
974
+ // Helper selector — the header's label is rendered inside the inner
975
+ // udex-list-item's shadow DOM as <span part="title">{{{label}}}</span>.
976
+ const titleSelector = "[part='title']";
977
+
978
+ // A stale document-level 'ui5-change-search' listener registered by the
979
+ // "emit change-search" test above references #changeSearch which doesn't
980
+ // exist in the filterMenuGroupWithSearch fixture, causing an app crash.
981
+ // Suppress it so it doesn't bleed into these tests.
982
+ beforeEach(() => {
983
+ cy.on("uncaught:exception", (err) => {
984
+ if (err.message.includes("Cannot set properties of null (setting 'innerText')")) {
985
+ return false;
986
+ }
987
+ });
988
+ });
989
+
990
+ const typeIntoSearch = (query: string) => {
991
+ cy.get("[udex-filter-menu]").shadow()
992
+ .find("udex-search").shadow()
993
+ .find(".udex-search__field")
994
+ .click().type(query);
995
+ };
996
+
997
+ // Updated: covers Fix 1 — when the header label matches, children whose
998
+ // labels also contain the query now get <b> highlights too. Query "P"
999
+ // matches header "Programming Languages" AND children Python, Perl, PHP.
1000
+ it("highlights the group header label with <b> tags when the search query matches the header label", () => {
1001
+ cy.mount(filterMenuGroupWithSearch);
1002
+ cy.get("[udex-filter-menu]").shadow()
1003
+ .find(".udex-filter-menu__trigger").click();
1004
+
1005
+ typeIntoSearch("P");
1006
+
1007
+ cy.get("[udex-filter-menu]").shadow()
1008
+ .find("udex-list-group-header").should("exist");
1009
+
1010
+ // Header "Programming Languages" starts with "P" — it must be highlighted.
1011
+ cy.get("[udex-filter-menu]").shadow()
1012
+ .find("udex-list-group-header").shadow()
1013
+ .find("udex-list-item").shadow()
1014
+ .find(titleSelector)
1015
+ .find("b")
1016
+ .should("exist")
1017
+ .and("have.text", "P");
1018
+
1019
+ // Fix 1: child "Python" (index 1) also contains "P" and must be highlighted.
1020
+ cy.get("[udex-filter-menu]").shadow()
1021
+ .find("udex-list-group-header")
1022
+ .find("udex-list-item").eq(1).shadow()
1023
+ .find(titleSelector)
1024
+ .find("b")
1025
+ .should("exist")
1026
+ .and("have.text", "P");
1027
+ });
1028
+
1029
+ // Updated: covers Fix 1 — children matching the query DO get <b>; children
1030
+ // that do not contain the query do NOT get <b>. Highlighting is selective,
1031
+ // not all-or-nothing, even when the header match keeps every child visible.
1032
+ it("shows ALL children of the group when the search query matches the group header label", () => {
1033
+ cy.mount(filterMenuGroupWithSearch);
1034
+ cy.get("[udex-filter-menu]").shadow()
1035
+ .find(".udex-filter-menu__trigger").click();
1036
+
1037
+ typeIntoSearch("P");
1038
+
1039
+ // The fixture has 14 children. Header match means none are filtered out.
1040
+ cy.get("[udex-filter-menu]").shadow()
1041
+ .find("udex-list-group-header")
1042
+ .find("udex-list-item")
1043
+ .should("have.length", 14);
1044
+
1045
+ // "Python" (index 1) contains "P" — its label gets a <b> highlight.
1046
+ cy.get("[udex-filter-menu]").shadow()
1047
+ .find("udex-list-group-header")
1048
+ .find("udex-list-item").eq(1).shadow()
1049
+ .find(titleSelector)
1050
+ .find("b")
1051
+ .should("exist");
1052
+
1053
+ // "Java" (index 2) does NOT contain "P" — its label has no <b>.
1054
+ cy.get("[udex-filter-menu]").shadow()
1055
+ .find("udex-list-group-header")
1056
+ .find("udex-list-item").eq(2).shadow()
1057
+ .find(titleSelector)
1058
+ .find("b")
1059
+ .should("not.exist");
1060
+ });
1061
+
1062
+ // Added: covers Fix 2 — checkAndUpdateLabel now resets item.label to its
1063
+ // clean form before deciding whether to add a new <b>, so a header that
1064
+ // matched a previous query is cleaned up when the new query no longer
1065
+ // matches it.
1066
+ it("clears stale highlight on header when query changes", () => {
1067
+ cy.mount(filterMenuGroupWithSearch);
1068
+ cy.get("[udex-filter-menu]").shadow()
1069
+ .find(".udex-filter-menu__trigger").click();
1070
+
1071
+ // First search matches the header — header label is highlighted.
1072
+ typeIntoSearch("Programming");
1073
+
1074
+ cy.get("[udex-filter-menu]").shadow()
1075
+ .find("udex-list-group-header").shadow()
1076
+ .find("udex-list-item").shadow()
1077
+ .find(titleSelector)
1078
+ .find("b")
1079
+ .should("exist");
1080
+
1081
+ // Replace the search with one that does NOT match the header label.
1082
+ // "Java" matches children but not "Programming Languages".
1083
+ cy.get("[udex-filter-menu]").shadow()
1084
+ .find("udex-search").shadow()
1085
+ .find(".udex-search__field")
1086
+ .clear().type("Java");
1087
+
1088
+ // Fix 2: stale <b> from the previous "Programming" match must be gone.
1089
+ cy.get("[udex-filter-menu]").shadow()
1090
+ .find("udex-list-group-header").shadow()
1091
+ .find("udex-list-item").shadow()
1092
+ .find(titleSelector)
1093
+ .find("b")
1094
+ .should("not.exist");
1095
+ });
1096
+
1097
+ it("does NOT highlight the group header label when only child items match the query", () => {
1098
+ cy.mount(filterMenuGroupWithSearch);
1099
+ cy.get("[udex-filter-menu]").shadow()
1100
+ .find(".udex-filter-menu__trigger").click();
1101
+
1102
+ // "Java" matches both "Java" and "JavaScript" in the children list, but
1103
+ // not the header label "Programming Languages".
1104
+ typeIntoSearch("Java");
1105
+
1106
+ // Only matching children are rendered.
1107
+ cy.get("[udex-filter-menu]").shadow()
1108
+ .find("udex-list-group-header")
1109
+ .find("udex-list-item")
1110
+ .should("have.length", 2);
1111
+
1112
+ // Header label has no <b> tag because the header label itself does not
1113
+ // contain "Java" — only the children do.
1114
+ cy.get("[udex-filter-menu]").shadow()
1115
+ .find("udex-list-group-header").shadow()
1116
+ .find("udex-list-item").shadow()
1117
+ .find(titleSelector)
1118
+ .find("b")
1119
+ .should("not.exist");
1120
+
1121
+ // The matching children themselves DO have <b> highlighting in their labels.
1122
+ cy.get("[udex-filter-menu]").shadow()
1123
+ .find("udex-list-group-header")
1124
+ .find("udex-list-item").first().shadow()
1125
+ .find(titleSelector)
1126
+ .find("b")
1127
+ .should("exist");
1128
+ });
1129
+
1130
+ it("hides the group entirely when neither the header nor any child matches the query", () => {
1131
+ cy.mount(filterMenuGroupWithSearch);
1132
+ cy.get("[udex-filter-menu]").shadow()
1133
+ .find(".udex-filter-menu__trigger").click();
1134
+
1135
+ typeIntoSearch("zzznomatch");
1136
+
1137
+ // The whole group is filtered out — group header is not rendered in shadow.
1138
+ cy.get("[udex-filter-menu]").shadow()
1139
+ .find("udex-list-group-header")
1140
+ .should("not.exist");
1141
+
1142
+ // The empty-state message is shown instead.
1143
+ cy.get("[udex-filter-menu]").shadow()
1144
+ .find(".udex-no-result")
1145
+ .should("have.text", "No matches found.");
1146
+ });
1147
+ });
1148
+
1149
+ describe("Dropdown scroll on close", () => {
1150
+ const filterMenuSingleSelectScrollFixture = <UDExFilterMenu
1151
+ id="filter-menu"
1152
+ filter-name="Languages"
1153
+ height="200px">
1154
+ <UDExFilterMenuItem label="A"></UDExFilterMenuItem>
1155
+ <UDExFilterMenuItem label="B"></UDExFilterMenuItem>
1156
+ <UDExFilterMenuItem label="C"></UDExFilterMenuItem>
1157
+ <UDExFilterMenuItem label="D"></UDExFilterMenuItem>
1158
+ <UDExFilterMenuItem label="E"></UDExFilterMenuItem>
1159
+ <UDExFilterMenuItem label="F"></UDExFilterMenuItem>
1160
+ <UDExFilterMenuItem label="G"></UDExFilterMenuItem>
1161
+ <UDExFilterMenuItem label="H"></UDExFilterMenuItem>
1162
+ <UDExFilterMenuItem label="I"></UDExFilterMenuItem>
1163
+ <UDExFilterMenuItem label="J"></UDExFilterMenuItem>
1164
+ <UDExFilterMenuItem selected label="K"></UDExFilterMenuItem>
1165
+ </UDExFilterMenu>
1166
+
1167
+ const filterMenuScrollFixture = <UDExFilterMenu
1168
+ id="filter-menu"
1169
+ filter-name="Filter Name"
1170
+ mode={UDExListMode.MultiSelect}
1171
+ height="200px">
1172
+ <UDExFilterMenuItem label="JavaScript" supporting-text="Frontend web development"></UDExFilterMenuItem>
1173
+ <UDExFilterMenuItem label="Python" supporting-text="Used in data analysis"></UDExFilterMenuItem>
1174
+ <UDExFilterMenuItem label="Java" supporting-text="Building large-scale applications"></UDExFilterMenuItem>
1175
+ <UDExFilterMenuItem label="Swift" supporting-text="iOS app development"></UDExFilterMenuItem>
1176
+ <UDExFilterMenuItem label="C#" supporting-text="Object-oriented language"></UDExFilterMenuItem>
1177
+ <UDExFilterMenuItem label="Perl" supporting-text="General-purpose scripting language"></UDExFilterMenuItem>
1178
+ <UDExFilterMenuItem label="Rust" supporting-text="Focused on safety and speed"></UDExFilterMenuItem>
1179
+ <UDExFilterMenuItem label="PHP" supporting-text="Server-side scripting language"></UDExFilterMenuItem>
1180
+ <UDExFilterMenuItem label="Go" supporting-text="Statically typed language"></UDExFilterMenuItem>
1181
+ <UDExFilterMenuItem label="Kotlin" supporting-text="For Android development"></UDExFilterMenuItem>
1182
+ <UDExFilterMenuItem label="TypeScript" supporting-text="Super set of JS with static typing"></UDExFilterMenuItem>
1183
+ <UDExFilterMenuItem label="Ruby" supporting-text="Readable and easy-to-use"></UDExFilterMenuItem>
1184
+ <UDExFilterMenuItem label="C++" supporting-text="Efficient and flexible language"></UDExFilterMenuItem>
1185
+ <UDExFilterMenuItem label="R" supporting-text="Language for statistical computing"></UDExFilterMenuItem>
1186
+ </UDExFilterMenu>
1187
+
1188
+ it("SingleSelect mode - selected item is scrolled into view after closing and reopening the dropdown", () => {
1189
+ cy.mount(filterMenuSingleSelectScrollFixture);
1190
+ cy.get("[udex-filter-menu]").shadow().find(".udex-filter-menu__trigger").as("trigger");
1191
+
1192
+ cy.get("@trigger").click();
1193
+
1194
+ cy.get("[udex-filter-menu]").shadow()
1195
+ .find(".udex-filter-menu__list")
1196
+ .find("udex-list-item").last()
1197
+ .shadow().find(".udex-list__item")
1198
+ .click();
1199
+
1200
+ cy.get("@trigger").should("have.attr", "aria-expanded", "false");
1201
+
1202
+ cy.get("@trigger").click();
1203
+
1204
+ cy.get("@trigger").should("have.attr", "aria-expanded", "true");
1205
+
1206
+ cy.get("#filter-menu").shadow()
1207
+ .find("ui5-popover").shadow()
1208
+ .find("[part=content]")
1209
+ .invoke("prop", "scrollTop")
1210
+ .should("be.greaterThan", 0);
1211
+ });
1212
+
1213
+ it("MultiSelect mode - scroll position resets to top after closing and reopening the dropdown", () => {
1214
+ cy.mount(filterMenuScrollFixture);
1215
+ cy.get("[udex-filter-menu]").shadow().find(".udex-filter-menu__trigger").as("trigger");
1216
+
1217
+ cy.get("@trigger").click();
1218
+
1219
+ cy.get("#filter-menu").shadow()
1220
+ .find("ui5-popover").shadow()
1221
+ .find("[part=content]").as("content");
1222
+
1223
+ cy.get("@content").then($el => {
1224
+ $el[0].scrollTop = 9999;
1225
+ });
1226
+
1227
+ cy.get("@content").invoke("prop", "scrollTop").should("be.greaterThan", 0);
1228
+
1229
+ cy.get("@trigger").click();
1230
+
1231
+ cy.get("@trigger").should("have.attr", "aria-expanded", "false");
1232
+
1233
+ cy.get("@trigger").click();
1234
+
1235
+ cy.get("@trigger").should("have.attr", "aria-expanded", "true");
1236
+
1237
+ cy.get("#filter-menu").shadow()
1238
+ .find("ui5-popover").shadow()
1239
+ .find("[part=content]")
1240
+ .invoke("prop", "scrollTop")
1241
+ .should("equal", 0);
1242
+ });
1243
+ });
967
1244
  });
@@ -383,4 +383,24 @@ describe("UDExSearch — keyboard focus management (rewritten)", () => {
383
383
  });
384
384
  });
385
385
  });
386
+
387
+ describe("maxlength property", () => {
388
+ it("forwards the maxLength property onto the inner #search-input as a maxlength attribute", () => {
389
+ cy.mount(<UDExSearch id="search" maxlength={10} />);
390
+
391
+ cy.get(SEARCH_SHADOW)
392
+ .shadow()
393
+ .find(SEARCH_INPUT)
394
+ .should("have.attr", "maxlength", "10");
395
+ });
396
+
397
+ it("does not set a maxlength attribute on the inner #search-input when maxLength is not provided", () => {
398
+ cy.mount(<UDExSearch id="search" />);
399
+
400
+ cy.get(SEARCH_SHADOW)
401
+ .shadow()
402
+ .find(SEARCH_INPUT)
403
+ .should("not.have.attr", "maxlength");
404
+ });
405
+ });
386
406
  });