@sapudex/web-components 2.50.0 → 2.52.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.
- package/cypress/specs/CountrySelector.cy.tsx +21 -0
- package/cypress/specs/List.cy.tsx +119 -10
- package/cypress/specs/SelectBox.cy.tsx +414 -70
- package/dist/CountrySelector.js +1 -0
- package/dist/CountrySelector.js.map +1 -1
- package/dist/List.d.ts +10 -0
- package/dist/List.js +35 -0
- package/dist/List.js.map +1 -1
- package/dist/ListGroupHeaderBase.js +3 -0
- package/dist/ListGroupHeaderBase.js.map +1 -1
- package/dist/ListItem.d.ts +1 -0
- package/dist/ListItem.js +11 -3
- package/dist/ListItem.js.map +1 -1
- package/dist/ListItemBase.d.ts +9 -0
- package/dist/ListItemBase.js +12 -0
- package/dist/ListItemBase.js.map +1 -1
- package/dist/ListSelectAll.js +1 -1
- package/dist/ListSelectAll.js.map +1 -1
- package/dist/MessageStrip.d.ts +3 -0
- package/dist/MessageStrip.js +40 -8
- package/dist/MessageStrip.js.map +1 -1
- package/dist/Modal.d.ts +1 -0
- package/dist/Modal.js +7 -0
- package/dist/Modal.js.map +1 -1
- package/dist/SearchableListBase.d.ts +10 -0
- package/dist/SearchableListBase.js +29 -6
- package/dist/SearchableListBase.js.map +1 -1
- package/dist/SearchableListBaseTemplate.js +32 -5
- package/dist/SearchableListBaseTemplate.js.map +1 -1
- package/dist/SelectBase.d.ts +65 -1
- package/dist/SelectBase.js +446 -59
- package/dist/SelectBase.js.map +1 -1
- package/dist/SelectBox.js +24 -2
- package/dist/SelectBox.js.map +1 -1
- package/dist/SelectBoxTemplate.js +2 -2
- package/dist/SelectBoxTemplate.js.map +1 -1
- package/dist/assets/{InputSuggestions-DZR626c7.js → InputSuggestions-0wafO-g3.js} +1 -1
- package/dist/assets/{ListItemStandardExpandableTextTemplate-D_5VXMzU.js → ListItemStandardExpandableTextTemplate-DoOYtqI8.js} +1 -1
- package/dist/assets/{bundle.esm-DuQLY8Jz.js → bundle.esm-DwHZ3nCW.js} +316 -318
- package/dist/assets/messagebundle_ar-BRkfjlVF.js +1 -0
- package/dist/assets/messagebundle_ar-D5A573iZ.js +1 -0
- package/dist/assets/messagebundle_bg-ByA8yRlQ.js +1 -0
- package/dist/assets/messagebundle_bg-CIVFOczQ.js +1 -0
- package/dist/assets/messagebundle_ca-BR3XuU9o.js +1 -0
- package/dist/assets/messagebundle_ca-CnMQ87v0.js +1 -0
- package/dist/assets/messagebundle_cnr-C6YhRiS7.js +1 -0
- package/dist/assets/messagebundle_cnr-CKZii51E.js +1 -0
- package/dist/assets/messagebundle_cs-DcOu8IOK.js +1 -0
- package/dist/assets/messagebundle_cs-I7yYpbsI.js +1 -0
- package/dist/assets/messagebundle_cy-BxrFUGJ9.js +1 -0
- package/dist/assets/messagebundle_cy-iXD_sJ-H.js +1 -0
- package/dist/assets/messagebundle_da-BVQHPgwf.js +1 -0
- package/dist/assets/messagebundle_da-CMGObFa5.js +1 -0
- package/dist/assets/messagebundle_de-Ca8NttFO.js +1 -0
- package/dist/assets/messagebundle_el-Cqfj_U5v.js +1 -0
- package/dist/assets/messagebundle_el-D9Zgq5tn.js +1 -0
- package/dist/assets/messagebundle_en-D0JTZvAf.js +1 -0
- package/dist/assets/messagebundle_en-DWqF0cay.js +1 -0
- package/dist/assets/messagebundle_en_GB-CGB_FKp4.js +1 -0
- package/dist/assets/messagebundle_en_GB-Cl7ekzz2.js +1 -0
- package/dist/assets/messagebundle_en_US_sappsd-7UdOh8vN.js +1 -0
- package/dist/assets/messagebundle_en_US_sappsd-B8rqsyFQ.js +1 -0
- package/dist/assets/messagebundle_en_US_saprigi-9VCo5QY0.js +1 -0
- package/dist/assets/messagebundle_en_US_saprigi-DfLzOCPY.js +1 -0
- package/dist/assets/messagebundle_en_US_saptrc-DZqYka05.js +1 -0
- package/dist/assets/messagebundle_en_US_saptrc-Wh_IysAB.js +1 -0
- package/dist/assets/messagebundle_es-DKn8EzzP.js +1 -0
- package/dist/assets/messagebundle_es-lf5AJZNW.js +1 -0
- package/dist/assets/messagebundle_es_MX-DyYZGjON.js +1 -0
- package/dist/assets/messagebundle_es_MX-yBTcvu7u.js +1 -0
- package/dist/assets/messagebundle_et-Dz8Ohhcp.js +1 -0
- package/dist/assets/messagebundle_et-rMWbS-Nu.js +1 -0
- package/dist/assets/messagebundle_fi-Bfbyhuuz.js +1 -0
- package/dist/assets/messagebundle_fi-DnXm7LPH.js +1 -0
- package/dist/assets/messagebundle_fr-BvbeCfZ-.js +1 -0
- package/dist/assets/messagebundle_fr-KQhoZEew.js +1 -0
- package/dist/assets/messagebundle_fr_CA-CE2lzYx5.js +1 -0
- package/dist/assets/messagebundle_fr_CA-CIhDzHAJ.js +1 -0
- package/dist/assets/messagebundle_hi-BRQ9tZ6F.js +1 -0
- package/dist/assets/messagebundle_hi-DPwH9vag.js +1 -0
- package/dist/assets/messagebundle_hr-BSKQ6zHT.js +1 -0
- package/dist/assets/messagebundle_hr-D3gQg5JN.js +1 -0
- package/dist/assets/messagebundle_hu-CAA4oM1C.js +1 -0
- package/dist/assets/messagebundle_hu-CZNs1K9T.js +1 -0
- package/dist/assets/messagebundle_id-9H0uJyXB.js +1 -0
- package/dist/assets/messagebundle_id-m6iosVVP.js +1 -0
- package/dist/assets/messagebundle_it-BWzxa-Mi.js +1 -0
- package/dist/assets/messagebundle_it-Cm_0HF21.js +1 -0
- package/dist/assets/messagebundle_iw-DpB2YXTa.js +1 -0
- package/dist/assets/messagebundle_iw-NfqePNtD.js +1 -0
- package/dist/assets/messagebundle_ja-BCSZcI8t.js +1 -0
- package/dist/assets/messagebundle_ja-C-qqwzFf.js +1 -0
- package/dist/assets/messagebundle_kk--PGqyTVS.js +1 -0
- package/dist/assets/messagebundle_kk-DAlCQkFU.js +1 -0
- package/dist/assets/messagebundle_ko-D8mIkPe1.js +1 -0
- package/dist/assets/messagebundle_ko-qoWc4ZGG.js +1 -0
- package/dist/assets/messagebundle_lt-BIEH02V4.js +1 -0
- package/dist/assets/messagebundle_lt-ruMxSuY-.js +1 -0
- package/dist/assets/messagebundle_lv-C2om7wu0.js +1 -0
- package/dist/assets/messagebundle_lv-Dfrbh1ci.js +1 -0
- package/dist/assets/messagebundle_mk-DHvZle6t.js +1 -0
- package/dist/assets/messagebundle_mk-l_Kubx1p.js +1 -0
- package/dist/assets/messagebundle_ms-CKCmj1p_.js +1 -0
- package/dist/assets/messagebundle_ms-IhSEK5ij.js +1 -0
- package/dist/assets/messagebundle_nl-BKUpVV-D.js +1 -0
- package/dist/assets/messagebundle_nl-BiIb6e5c.js +1 -0
- package/dist/assets/messagebundle_nl-DquG38Cj.js +1 -0
- package/dist/assets/messagebundle_no-CX23v_jg.js +1 -0
- package/dist/assets/messagebundle_no-DFdvykvP.js +1 -0
- package/dist/assets/messagebundle_pl-BAeue3mo.js +1 -0
- package/dist/assets/messagebundle_pl-iHE_prgN.js +1 -0
- package/dist/assets/messagebundle_pt-BpQnTLvl.js +1 -0
- package/dist/assets/messagebundle_pt-C_bG3Erm.js +1 -0
- package/dist/assets/messagebundle_pt_PT-CR7qXFK-.js +1 -0
- package/dist/assets/messagebundle_pt_PT-DyseXKQQ.js +1 -0
- package/dist/assets/messagebundle_ro-CHU1E6hv.js +1 -0
- package/dist/assets/messagebundle_ro-C_amsd63.js +1 -0
- package/dist/assets/messagebundle_ru-Cab4H6Ud.js +1 -0
- package/dist/assets/messagebundle_ru-D6JMraBp.js +1 -0
- package/dist/assets/messagebundle_sh-DusYn00L.js +1 -0
- package/dist/assets/messagebundle_sh-hThvw_lF.js +1 -0
- package/dist/assets/messagebundle_sk-BqiUMEcX.js +1 -0
- package/dist/assets/messagebundle_sk-CZHfFNQ_.js +1 -0
- package/dist/assets/{messagebundle_sl-Bn5tocYe.js → messagebundle_sl-B79d3kfY.js} +1 -1
- package/dist/assets/messagebundle_sl-SfAn6n6j.js +1 -0
- package/dist/assets/messagebundle_sr-4iz7n4Te.js +1 -0
- package/dist/assets/messagebundle_sr-DxELdG62.js +1 -0
- package/dist/assets/messagebundle_sv-CPOHCrxs.js +1 -0
- package/dist/assets/messagebundle_sv-i6GuWK0l.js +1 -0
- package/dist/assets/messagebundle_th-D-kPI3tt.js +1 -0
- package/dist/assets/messagebundle_th-D64J-JvN.js +1 -0
- package/dist/assets/messagebundle_tr-CuE9DqZT.js +1 -0
- package/dist/assets/messagebundle_tr-gTuGftNt.js +1 -0
- package/dist/assets/messagebundle_uk-C6JSX-jF.js +1 -0
- package/dist/assets/messagebundle_uk-IKxyo-LT.js +1 -0
- package/dist/assets/messagebundle_vi-BRdRT5L6.js +1 -0
- package/dist/assets/messagebundle_vi-rZGL12-x.js +1 -0
- package/dist/assets/messagebundle_zh_CN-L55Y4Dfs.js +1 -0
- package/dist/assets/messagebundle_zh_CN-ZalS15WG.js +1 -0
- package/dist/assets/messagebundle_zh_TW-BcMzZCW2.js +1 -0
- package/dist/assets/messagebundle_zh_TW-sRVDBYOx.js +1 -0
- package/dist/assets/parameters-bundle.css-8pAQYERs.js +3 -0
- package/dist/assets/{parameters-bundle.css-Dd5ajhZR.js → parameters-bundle.css-BXQ-0CBp.js} +1 -12
- package/dist/assets/parameters-bundle.css-B_KvbSAR.js +2 -0
- package/dist/assets/{parameters-bundle.css-BVXLOlqR.js → parameters-bundle.css-Bleiw2gk.js} +1 -1
- package/dist/assets/{parameters-bundle.css-DH_wndOj.js → parameters-bundle.css-C3eDVARm.js} +1 -1
- package/dist/assets/parameters-bundle.css-C7KCPeJ8.js +3 -0
- package/dist/assets/{parameters-bundle.css-CWfGvXBZ.js → parameters-bundle.css-CCL9q8h_.js} +1 -1
- package/dist/assets/{parameters-bundle.css-BCB-2TTY.js → parameters-bundle.css-CDc9A-MF.js} +1 -1
- package/dist/assets/parameters-bundle.css-CLLnzh9T.js +3 -0
- package/dist/assets/parameters-bundle.css-CQFZmxYm.js +3 -0
- package/dist/assets/parameters-bundle.css-CSUOmZKr.js +3 -0
- package/dist/assets/{parameters-bundle.css-CKNWL0nG.js → parameters-bundle.css-CT-eTeTy.js} +1 -12
- package/dist/assets/parameters-bundle.css-Ciey0vhA.js +2 -0
- package/dist/assets/{parameters-bundle.css-DuHP0Q5Y.js → parameters-bundle.css-Cmk27zY9.js} +6 -9
- package/dist/assets/{parameters-bundle.css-yvuwi247.js → parameters-bundle.css-Cv89y49I.js} +1 -1
- package/dist/assets/{parameters-bundle.css-BQB0pxRT.js → parameters-bundle.css-Cx9nDxJ1.js} +1 -1
- package/dist/assets/{parameters-bundle.css-BBdTemt8.js → parameters-bundle.css-CxjtOlRD.js} +7 -10
- package/dist/assets/{parameters-bundle.css-DXuX1n-u.js → parameters-bundle.css-D6dc2la8.js} +1 -1
- package/dist/assets/parameters-bundle.css-D7Hj83QD.js +2 -0
- package/dist/assets/{parameters-bundle.css-BiSP-Gf0.js → parameters-bundle.css-D7WciSOr.js} +1 -12
- package/dist/assets/{parameters-bundle.css-tevTlrPX.js → parameters-bundle.css-D9YZOKyE.js} +1 -1
- package/dist/assets/{parameters-bundle.css-CTIq7sCI.js → parameters-bundle.css-DE8FUbIS.js} +1 -1
- package/dist/assets/parameters-bundle.css-DJgsxqD8.js +2 -0
- package/dist/assets/parameters-bundle.css-DMVuljH3.js +3 -0
- package/dist/assets/{parameters-bundle.css-1rRun2sT.js → parameters-bundle.css-DPz62M1p.js} +3 -14
- package/dist/assets/parameters-bundle.css-DkHyiuRq.js +3 -0
- package/dist/assets/parameters-bundle.css-Dvgwa73x.js +3 -0
- package/dist/assets/parameters-bundle.css-V2I5eOdH.js +3 -0
- package/dist/assets/{parameters-bundle.css-DUGC7SPT.js → parameters-bundle.css-XYDTPt-n.js} +1 -12
- package/dist/assets/{parameters-bundle.css-C90ijvPq.js → parameters-bundle.css-tmGa6wuH.js} +1 -1
- package/dist/css/themes/AccordionItem.css +1 -1
- package/dist/css/themes/Divider.css +1 -1
- package/dist/css/themes/Link.css +1 -1
- package/dist/css/themes/ListGroupHeader.css +1 -1
- package/dist/css/themes/ListItem.css +1 -1
- package/dist/css/themes/MastheadProfileMenu.css +1 -1
- package/dist/css/themes/MessageStrip.css +1 -1
- package/dist/css/themes/Modal.css +1 -1
- package/dist/css/themes/Search.css +1 -1
- package/dist/css/themes/SelectBase.css +1 -1
- package/dist/css/themes/SelectBox.css +1 -1
- package/dist/custom-elements-internal.json +9 -9
- package/dist/custom-elements.json +28 -9
- package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
- package/dist/generated/templates/ListTemplate.lit.js +1 -1
- package/dist/generated/templates/ListTemplate.lit.js.map +1 -1
- package/dist/generated/themes/AccordionItem.css.d.ts +1 -1
- package/dist/generated/themes/AccordionItem.css.js +1 -1
- package/dist/generated/themes/AccordionItem.css.js.map +1 -1
- package/dist/generated/themes/Divider.css.d.ts +1 -1
- package/dist/generated/themes/Divider.css.js +1 -1
- package/dist/generated/themes/Divider.css.js.map +1 -1
- package/dist/generated/themes/Link.css.d.ts +1 -1
- package/dist/generated/themes/Link.css.js +1 -1
- package/dist/generated/themes/Link.css.js.map +1 -1
- package/dist/generated/themes/ListGroupHeader.css.d.ts +1 -1
- package/dist/generated/themes/ListGroupHeader.css.js +1 -1
- package/dist/generated/themes/ListGroupHeader.css.js.map +1 -1
- package/dist/generated/themes/ListItem.css.d.ts +1 -1
- package/dist/generated/themes/ListItem.css.js +1 -1
- package/dist/generated/themes/ListItem.css.js.map +1 -1
- package/dist/generated/themes/MastheadProfileMenu.css.d.ts +1 -1
- package/dist/generated/themes/MastheadProfileMenu.css.js +1 -1
- package/dist/generated/themes/MastheadProfileMenu.css.js.map +1 -1
- package/dist/generated/themes/MessageStrip.css.d.ts +1 -1
- package/dist/generated/themes/MessageStrip.css.js +1 -1
- package/dist/generated/themes/MessageStrip.css.js.map +1 -1
- package/dist/generated/themes/Modal.css.d.ts +1 -1
- package/dist/generated/themes/Modal.css.js +1 -1
- package/dist/generated/themes/Modal.css.js.map +1 -1
- package/dist/generated/themes/Search.css.d.ts +1 -1
- package/dist/generated/themes/Search.css.js +1 -1
- package/dist/generated/themes/Search.css.js.map +1 -1
- package/dist/generated/themes/SelectBase.css.d.ts +1 -1
- package/dist/generated/themes/SelectBase.css.js +1 -1
- package/dist/generated/themes/SelectBase.css.js.map +1 -1
- package/dist/generated/themes/SelectBox.css.d.ts +1 -1
- package/dist/generated/themes/SelectBox.css.js +1 -1
- package/dist/generated/themes/SelectBox.css.js.map +1 -1
- package/dist/messagebundle_nl.properties +126 -0
- package/dist/types/MessageStrip.d.ts +22 -1
- package/dist/types/MessageStrip.js +21 -0
- package/dist/types/MessageStrip.js.map +1 -1
- package/dist/vscode.html-custom-data.json +13 -2
- package/dist/web-types.json +5 -5
- package/package.json +8 -8
- package/src/CountrySelector.ts +1 -0
- package/src/List.hbs +2 -1
- package/src/List.ts +36 -0
- package/src/ListGroupHeaderBase.ts +3 -0
- package/src/ListItem.ts +12 -3
- package/src/ListItemBase.ts +11 -0
- package/src/ListSelectAll.ts +1 -1
- package/src/MessageStrip.ts +41 -9
- package/src/Modal.ts +8 -0
- package/src/SearchableListBase.ts +31 -8
- package/src/SearchableListBaseTemplate.tsx +38 -6
- package/src/SelectBase.ts +466 -69
- package/src/SelectBox.ts +27 -2
- package/src/SelectBoxTemplate.tsx +4 -3
- package/src/generated/templates/ListTemplate.lit.ts +1 -1
- package/src/generated/themes/AccordionItem.css.ts +1 -1
- package/src/generated/themes/Divider.css.ts +1 -1
- package/src/generated/themes/Link.css.ts +1 -1
- package/src/generated/themes/ListGroupHeader.css.ts +1 -1
- package/src/generated/themes/ListItem.css.ts +1 -1
- package/src/generated/themes/MastheadProfileMenu.css.ts +1 -1
- package/src/generated/themes/MessageStrip.css.ts +1 -1
- package/src/generated/themes/Modal.css.ts +1 -1
- package/src/generated/themes/Search.css.ts +1 -1
- package/src/generated/themes/SelectBase.css.ts +1 -1
- package/src/generated/themes/SelectBox.css.ts +1 -1
- package/src/i18n/messagebundle_nl.properties +126 -0
- package/src/themes/AccordionItem.css +8 -3
- package/src/themes/Divider.css +2 -0
- package/src/themes/Link.css +20 -2
- package/src/themes/ListGroupHeader.css +18 -1
- package/src/themes/ListItem.css +2 -1
- package/src/themes/MastheadProfileMenu.css +0 -4
- package/src/themes/MessageStrip.css +384 -10
- package/src/themes/Modal.css +2 -2
- package/src/themes/Search.css +6 -4
- package/src/themes/SelectBase.css +2 -1
- package/src/themes/SelectBox.css +10 -0
- package/src/types/MessageStrip.ts +21 -0
- package/dist/assets/messagebundle_ar-DcH18L3h.js +0 -1
- package/dist/assets/messagebundle_ar-Ic4ckTUt.js +0 -1
- package/dist/assets/messagebundle_bg-BOgOglXh.js +0 -1
- package/dist/assets/messagebundle_bg-dZrlFeKZ.js +0 -1
- package/dist/assets/messagebundle_ca-2bFyG5Ty.js +0 -1
- package/dist/assets/messagebundle_ca-B2inwHsb.js +0 -1
- package/dist/assets/messagebundle_cnr-CSmWG9_V.js +0 -1
- package/dist/assets/messagebundle_cnr-DZsc1R1r.js +0 -1
- package/dist/assets/messagebundle_cs-BZXuIszN.js +0 -1
- package/dist/assets/messagebundle_cs-Dso9kSig.js +0 -1
- package/dist/assets/messagebundle_cy-B66O9oBx.js +0 -1
- package/dist/assets/messagebundle_cy-BSiMgZtA.js +0 -1
- package/dist/assets/messagebundle_da-CAPY9nnT.js +0 -1
- package/dist/assets/messagebundle_da-DTOADw3Y.js +0 -1
- package/dist/assets/messagebundle_de-DWsuh-jj.js +0 -1
- package/dist/assets/messagebundle_el-ByL7ikpl.js +0 -1
- package/dist/assets/messagebundle_el-CwjQKEGb.js +0 -1
- package/dist/assets/messagebundle_en-4Wpx2jqf.js +0 -1
- package/dist/assets/messagebundle_en-Bi068VCa.js +0 -1
- package/dist/assets/messagebundle_en_GB-BEZ3LbT5.js +0 -1
- package/dist/assets/messagebundle_en_GB-DKEddq_J.js +0 -1
- package/dist/assets/messagebundle_en_US_sappsd-Bc-vQnEr.js +0 -1
- package/dist/assets/messagebundle_en_US_sappsd-CEGC_XRQ.js +0 -1
- package/dist/assets/messagebundle_en_US_saprigi--hAUIdWq.js +0 -1
- package/dist/assets/messagebundle_en_US_saprigi-C_gnMw05.js +0 -1
- package/dist/assets/messagebundle_en_US_saptrc-CIbQNg_d.js +0 -1
- package/dist/assets/messagebundle_en_US_saptrc-DY0WM5Yp.js +0 -1
- package/dist/assets/messagebundle_es-BHY_U2xi.js +0 -1
- package/dist/assets/messagebundle_es-vhzI0nML.js +0 -1
- package/dist/assets/messagebundle_es_MX-DjJ15Ns4.js +0 -1
- package/dist/assets/messagebundle_es_MX-DmINMi1e.js +0 -1
- package/dist/assets/messagebundle_et-CpVk1Xin.js +0 -1
- package/dist/assets/messagebundle_et-DLssZHh4.js +0 -1
- package/dist/assets/messagebundle_fi-DmGIB0sc.js +0 -1
- package/dist/assets/messagebundle_fi-YfxQ0aOR.js +0 -1
- package/dist/assets/messagebundle_fr-BFMaF4AX.js +0 -1
- package/dist/assets/messagebundle_fr-BZ-VJ002.js +0 -1
- package/dist/assets/messagebundle_fr_CA-B5jFryz1.js +0 -1
- package/dist/assets/messagebundle_fr_CA-hZ2LGeU2.js +0 -1
- package/dist/assets/messagebundle_hi-92qX3F1U.js +0 -1
- package/dist/assets/messagebundle_hi-DFXk6QGw.js +0 -1
- package/dist/assets/messagebundle_hr-CUaLQBjG.js +0 -1
- package/dist/assets/messagebundle_hr-selqadPV.js +0 -1
- package/dist/assets/messagebundle_hu-BtupF5BC.js +0 -1
- package/dist/assets/messagebundle_hu-D_rF_cCp.js +0 -1
- package/dist/assets/messagebundle_id-Bvmpblmf.js +0 -1
- package/dist/assets/messagebundle_id-P3JSHcmu.js +0 -1
- package/dist/assets/messagebundle_it-BINon06x.js +0 -1
- package/dist/assets/messagebundle_it-CXnIcrL4.js +0 -1
- package/dist/assets/messagebundle_iw-BzixLMjm.js +0 -1
- package/dist/assets/messagebundle_iw-Cb6M5XGj.js +0 -1
- package/dist/assets/messagebundle_ja-DQ5MCYLw.js +0 -1
- package/dist/assets/messagebundle_ja-J8eqPj7N.js +0 -1
- package/dist/assets/messagebundle_kk-BIeQLfxu.js +0 -1
- package/dist/assets/messagebundle_kk-DIOzUeHN.js +0 -1
- package/dist/assets/messagebundle_ko-B9_Ss1b5.js +0 -1
- package/dist/assets/messagebundle_ko-BLMVyKh5.js +0 -1
- package/dist/assets/messagebundle_lt-CbB2wq2X.js +0 -1
- package/dist/assets/messagebundle_lt-RzsUvi_1.js +0 -1
- package/dist/assets/messagebundle_lv-6quK3a4e.js +0 -1
- package/dist/assets/messagebundle_lv-BQO-79MM.js +0 -1
- package/dist/assets/messagebundle_mk-2lJhEAgI.js +0 -1
- package/dist/assets/messagebundle_mk-o-SATTof.js +0 -1
- package/dist/assets/messagebundle_ms-3Zupz0mA.js +0 -1
- package/dist/assets/messagebundle_ms-DnacCQys.js +0 -1
- package/dist/assets/messagebundle_nl-BVNQuB_K.js +0 -1
- package/dist/assets/messagebundle_nl-DTnHMKsv.js +0 -1
- package/dist/assets/messagebundle_nl-etaldyfo.js +0 -1
- package/dist/assets/messagebundle_no-BQMw-opH.js +0 -1
- package/dist/assets/messagebundle_no-OUP0Fraw.js +0 -1
- package/dist/assets/messagebundle_pl-BQW6qi8p.js +0 -1
- package/dist/assets/messagebundle_pl-PZiQh0Xy.js +0 -1
- package/dist/assets/messagebundle_pt-BlqCbnEN.js +0 -1
- package/dist/assets/messagebundle_pt-DEVzhHU_.js +0 -1
- package/dist/assets/messagebundle_pt_PT-BV1ec-3v.js +0 -1
- package/dist/assets/messagebundle_pt_PT-CL5hgi4Q.js +0 -1
- package/dist/assets/messagebundle_ro-D3lrScIy.js +0 -1
- package/dist/assets/messagebundle_ro-mHJ-r7ez.js +0 -1
- package/dist/assets/messagebundle_ru-BD3A7Zsx.js +0 -1
- package/dist/assets/messagebundle_ru-D7z2G7DP.js +0 -1
- package/dist/assets/messagebundle_sh-BoaW1EWP.js +0 -1
- package/dist/assets/messagebundle_sh-DXM15u1O.js +0 -1
- package/dist/assets/messagebundle_sk-Bjnhb-_D.js +0 -1
- package/dist/assets/messagebundle_sk-Clc7AaEc.js +0 -1
- package/dist/assets/messagebundle_sl-DJj-8V96.js +0 -1
- package/dist/assets/messagebundle_sr-Dsio4Srd.js +0 -1
- package/dist/assets/messagebundle_sr-w0tnyPzk.js +0 -1
- package/dist/assets/messagebundle_sv-B-KDauoz.js +0 -1
- package/dist/assets/messagebundle_sv-DCsGSCfn.js +0 -1
- package/dist/assets/messagebundle_th-D8qcTN_b.js +0 -1
- package/dist/assets/messagebundle_th-rPoqCsGu.js +0 -1
- package/dist/assets/messagebundle_tr-DIqpdL9d.js +0 -1
- package/dist/assets/messagebundle_tr-Dw7toCgs.js +0 -1
- package/dist/assets/messagebundle_uk-CycQpntH.js +0 -1
- package/dist/assets/messagebundle_uk-L4kmWPZY.js +0 -1
- package/dist/assets/messagebundle_vi-D1-iiI56.js +0 -1
- package/dist/assets/messagebundle_vi-wJJaYHj7.js +0 -1
- package/dist/assets/messagebundle_zh_CN-CIR_auXr.js +0 -1
- package/dist/assets/messagebundle_zh_CN-D3UfRQq7.js +0 -1
- package/dist/assets/messagebundle_zh_TW-CG9O1F7p.js +0 -1
- package/dist/assets/messagebundle_zh_TW-qc8ADbuf.js +0 -1
- package/dist/assets/parameters-bundle.css-BA_cQYjH.js +0 -2
- package/dist/assets/parameters-bundle.css-BBLk8nbD.js +0 -3
- package/dist/assets/parameters-bundle.css-B_rCq3Nc.js +0 -3
- package/dist/assets/parameters-bundle.css-CTw0R0y7.js +0 -2
- package/dist/assets/parameters-bundle.css-CV2FCAf_.js +0 -3
- package/dist/assets/parameters-bundle.css-CX7V5RGm.js +0 -3
- package/dist/assets/parameters-bundle.css-D9AHurfl.js +0 -2
- package/dist/assets/parameters-bundle.css-DENVM9pb.js +0 -3
- package/dist/assets/parameters-bundle.css-DHLZEUsz.js +0 -3
- package/dist/assets/parameters-bundle.css-DUAp19rB.js +0 -3
- package/dist/assets/parameters-bundle.css-Dp55UvXM.js +0 -3
- package/dist/assets/parameters-bundle.css-DpJfefgg.js +0 -3
- package/dist/assets/parameters-bundle.css-YNYQDxyY.js +0 -2
|
@@ -6,10 +6,11 @@ import UDExList from "./List.js";
|
|
|
6
6
|
import UDExListItem from "./ListItem.js";
|
|
7
7
|
import UDExListGroupHeader from "./ListGroupHeader.js";
|
|
8
8
|
import UDExListSelectAll from "./ListSelectAll.js";
|
|
9
|
+
import { cleanLabel } from "./utils/listItemLabelUtils.js";
|
|
9
10
|
export default function SearchableListBaseTemplate() {
|
|
10
11
|
return (_jsxs(_Fragment, { children: [this.showSearch && (_jsxs(_Fragment, { children: [_jsx(UDExSearch, { slot: "header", mode: UDExSearchMode.Standard, class: "udex-filter-menu__search", label: this.searchPlaceholder, "label-animation-disabled": true, "non-interactive-submit-button": true, "show-submit-button": true }), _jsx("span", { "aria-live": "polite", "aria-atomic": "true", class: "hidden", children: this._accSearchResultInfo })] })), this.isListEmpty ? (_jsxs("div", { class: "udex-no-result", children: [_jsx(IllustratedMessage, { name: "NoSearchResults", design: "Dot", "title-text": " ", "subtitle-text": " " }), _jsx("span", { children: this.getNoResultText })] })) : this.busy ? (_jsx(UDExBusyIndicator, { class: "udex-busy-indicator", size: "M", delay: this.busyDelay, active: true })) : (_jsx(UDExList, { id: "udex-list", role: this.roleForGroupList, "accessible-role": this.accessibleRoleForList, ...(this.isTreeStructure && this.modeMultiSelect ? { "aria-multiselectable": "true" } : {}), class: "udex-filter-menu__list", controlled: this.isControlled, mode: this.mode, type: this.type, "item-icon": this.itemIcon, children: this._filteredItems.map((processedItem, index) => (processedItem.isGroup
|
|
11
12
|
? renderGroup.call(this, processedItem, index)
|
|
12
|
-
: renderListItem(processedItem.item, index, "none", this.listItemRole, this.fireFirstIconClickEvent, this.fireSecondIconClickEvent))) }))] }));
|
|
13
|
+
: renderListItem(processedItem.item, index, "none", this.listItemRole, this.fireFirstIconClickEvent, this.fireSecondIconClickEvent, this._activeDescendantMode, this.isTreeStructure, this.modeMultiSelect))) }))] }));
|
|
13
14
|
}
|
|
14
15
|
function renderGroup(processedItem, index) {
|
|
15
16
|
return processedItem.item.isSelectAllHeader
|
|
@@ -19,15 +20,41 @@ function renderGroup(processedItem, index) {
|
|
|
19
20
|
function renderSelectAll(processedItem, index) {
|
|
20
21
|
const { item, groupItems } = processedItem;
|
|
21
22
|
const header = item;
|
|
22
|
-
return (_jsx(UDExListSelectAll, { "_additional-class-name": this.additionalClassName, "data-token-id": item._id, label: item.label, controlled: header.controlled, "supporting-text": item.supportingText, disabled: item.disabled, selected: item.selected, indeterminate: header.indeterminate, onFirstIconClick: this.fireFirstIconClickEvent, onSecondIconClick: this.fireSecondIconClickEvent, children: groupItems.map((child, i) => renderListItem(child, i, this.listItemRole, undefined, this.fireFirstIconClickEvent, this.fireSecondIconClickEvent)) }, index));
|
|
23
|
+
return (_jsx(UDExListSelectAll, { "_additional-class-name": this.additionalClassName, "data-token-id": item._id, label: item.label, controlled: header.controlled, "supporting-text": item.supportingText, disabled: item.disabled, selected: item.selected, indeterminate: header.indeterminate, onFirstIconClick: this.fireFirstIconClickEvent, onSecondIconClick: this.fireSecondIconClickEvent, children: groupItems.map((child, i) => renderListItem(child, i, this.listItemRole, undefined, this.fireFirstIconClickEvent, this.fireSecondIconClickEvent, this._activeDescendantMode, this.isTreeStructure, this.modeMultiSelect)) }, index));
|
|
23
24
|
}
|
|
24
25
|
function renderGroupHeader(processedItem, index) {
|
|
25
26
|
const { item, groupItems } = processedItem;
|
|
26
27
|
const header = item;
|
|
27
28
|
const childAccessibleRole = this.isTreeStructure ? "treeitem" : undefined;
|
|
28
|
-
|
|
29
|
+
// In aria-activedescendant mode (SelectBox), each group header host element
|
|
30
|
+
// must carry role + ARIA state so screen readers can reach them via the pointer.
|
|
31
|
+
const hostAriaAttrs = this._activeDescendantMode ? {
|
|
32
|
+
role: (this.isTreeStructure ? "treeitem" : "option"),
|
|
33
|
+
"aria-label": cleanLabel(item.label ?? ""),
|
|
34
|
+
"aria-selected": (this.modeMultiSelect ? undefined : (item.selected ? "true" : "false")),
|
|
35
|
+
"aria-checked": (this.modeMultiSelect ? (header.indeterminate ? "mixed" : (item.selected ? "true" : "false")) : undefined),
|
|
36
|
+
"aria-disabled": item.disabled ? "true" : undefined,
|
|
37
|
+
"aria-expanded": header.collapsible ? (header.expanded ? "true" : "false") : undefined,
|
|
38
|
+
"_use-host-aria-role": true,
|
|
39
|
+
} : { role: (this.isTreeStructure ? "none" : "group") };
|
|
40
|
+
return (_jsx(UDExListGroupHeader, { id: item._id, ...hostAriaAttrs, "_tree-mode": this.isTreeStructure || undefined, ...(index === 0 ? { "_no-border": "" } : {}), "_additional-class-name": "udex-searchable-list__header", class: this.groupClassName, "non-interactive": header.nonInteractive, "data-token-id": item._id, label: item.label, "supporting-text": item.supportingText, controlled: header.controlled, collapsible: header.collapsible, collapsed: header.collapsed, _filtered: this._shouldFilterItems, disabled: item.disabled, selected: item.selected, onFirstIconClick: this.fireFirstIconClickEvent, onSecondIconClick: this.fireSecondIconClickEvent, indeterminate: header.indeterminate, children: groupItems.map((child, i) => renderListItem(child, i, "none", childAccessibleRole, this.fireFirstIconClickEvent, this.fireSecondIconClickEvent, this._activeDescendantMode, this.isTreeStructure, this.modeMultiSelect)) }, index));
|
|
29
41
|
}
|
|
30
|
-
function renderListItem(item, index, role, accessibleRole, onFirstIconClick, onSecondIconClick) {
|
|
31
|
-
|
|
42
|
+
function renderListItem(item, index, role, accessibleRole, onFirstIconClick, onSecondIconClick, activeDescendantMode, isTreeStructure, modeMultiSelect) {
|
|
43
|
+
// In aria-activedescendant mode (SelectBox), role + ARIA state must be on the
|
|
44
|
+
// host element so screen readers can reach them via the aria-activedescendant pointer.
|
|
45
|
+
const effectiveRole = accessibleRole ?? (role !== "none" ? role : undefined) ?? "option";
|
|
46
|
+
const hostRole = activeDescendantMode ? effectiveRole : role;
|
|
47
|
+
const hostAriaAttrs = activeDescendantMode ? {
|
|
48
|
+
"aria-label": "test",
|
|
49
|
+
// option role (listbox): always aria-selected; treeitem + MultiSelect: aria-checked only
|
|
50
|
+
"aria-selected": (effectiveRole !== "treeitem" || !modeMultiSelect) ? (item.selected ? "true" : "false") : undefined,
|
|
51
|
+
"aria-checked": (effectiveRole === "treeitem" && !!modeMultiSelect) ? (item.indeterminate ? "mixed" : (item.selected ? "true" : "false")) : undefined,
|
|
52
|
+
"aria-disabled": item.disabled ? "true" : undefined,
|
|
53
|
+
"_use-host-aria-role": true,
|
|
54
|
+
...(accessibleRole ? { "accessible-role": accessibleRole } : {}),
|
|
55
|
+
} : {
|
|
56
|
+
...(accessibleRole ? { "accessible-role": accessibleRole } : {}),
|
|
57
|
+
};
|
|
58
|
+
return (_jsx(UDExListItem, { id: item._id, role: hostRole, "data-token-id": item._id, controlled: item.controlled, mode: item.mode, onFirstIconClick: onFirstIconClick, onSecondIconClick: onSecondIconClick, "supporting-text": item.supportingText, "additional-text": item.additionalText, "additional-text-state": item.additionalTextState, divider: item.divider, disabled: item.disabled, selected: item.selected, rating: item.rating, "total-count": item.totalCount, "rating-count": item.ratingCount, "rating-max": item.ratingMax, label: item.label, image: item.image, "image-alt": item.imageAlt, "image-badge-state": item.imageBadgeState, "image-shape": item.imageShape, "image-size": item.imageSize, flag: item.flag, "flag-position": item.flagPosition, size: item.size, type: item.type, ...hostAriaAttrs, ...(item.innerHTML ? { dangerouslySetInnerHTML: { __html: item.innerHTML } } : {}) }, index));
|
|
32
59
|
}
|
|
33
60
|
//# sourceMappingURL=SearchableListBaseTemplate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchableListBaseTemplate.js","sourceRoot":"","sources":["../src/SearchableListBaseTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import type UDExSearchableListBase from \"./SearchableListBase.js\";\nimport type { UDExProcessedItem } from \"./types/SearchableListBase.js\";\nimport type UDExListGroupHeaderBase from \"./ListGroupHeaderBase.js\";\nimport UDExSearch, { Mode as UDExSearchMode } from \"./Search.js\";\nimport IllustratedMessage from \"@ui5/webcomponents-fiori/dist/IllustratedMessage.js\";\nimport UDExBusyIndicator from \"./BusyIndicator.js\";\nimport UDExList from \"./List.js\";\nimport UDExListItem from \"./ListItem.js\";\nimport UDExListGroupHeader from \"./ListGroupHeader.js\";\nimport UDExListSelectAll from \"./ListSelectAll.js\";\nimport type { AriaRole } from \"@ui5/webcomponents-base/dist/types.js\";\n\nexport default function SearchableListBaseTemplate(this: UDExSearchableListBase) {\n return (\n <>\n {this.showSearch && (\n <>\n <UDExSearch\n slot=\"header\"\n mode={UDExSearchMode.Standard}\n class=\"udex-filter-menu__search\"\n label={this.searchPlaceholder}\n label-animation-disabled\n non-interactive-submit-button\n show-submit-button>\n </UDExSearch>\n <span aria-live=\"polite\" aria-atomic=\"true\" class=\"hidden\">{this._accSearchResultInfo}</span>\n </>\n )}\n {this.isListEmpty ? (\n <div class=\"udex-no-result\">\n <IllustratedMessage\n name=\"NoSearchResults\"\n design=\"Dot\"\n title-text=\" \"\n subtitle-text=\" \">\n </IllustratedMessage>\n <span>{this.getNoResultText}</span>\n </div>\n ) : this.busy ? (\n <UDExBusyIndicator\n class=\"udex-busy-indicator\"\n size=\"M\"\n delay={this.busyDelay}\n active>\n </UDExBusyIndicator>\n ) : (\n <UDExList\n id=\"udex-list\"\n role={this.roleForGroupList as AriaRole}\n accessible-role={this.accessibleRoleForList}\n {...(this.isTreeStructure && this.modeMultiSelect ? { \"aria-multiselectable\": \"true\" } : {})}\n class=\"udex-filter-menu__list\"\n controlled={this.isControlled}\n mode={this.mode}\n type={this.type}\n item-icon={this.itemIcon}>\n {this._filteredItems.map((processedItem, index) => (\n processedItem.isGroup\n ? renderGroup.call(this, processedItem, index)\n : renderListItem(processedItem.item as UDExListItem, index, \"none\", this.listItemRole, this.fireFirstIconClickEvent, this.fireSecondIconClickEvent)\n ))}\n </UDExList>\n )}\n </>\n );\n}\n\nfunction renderGroup(this: UDExSearchableListBase, processedItem: UDExProcessedItem, index: number) {\n return (processedItem.item as UDExListGroupHeaderBase).isSelectAllHeader\n ? renderSelectAll.call(this, processedItem, index)\n : renderGroupHeader.call(this, processedItem, index);\n}\n\nfunction renderSelectAll(this: UDExSearchableListBase, processedItem: UDExProcessedItem, index: number) {\n const { item, groupItems } = processedItem;\n const header = item as UDExListGroupHeaderBase;\n return (\n <UDExListSelectAll\n key={index}\n _additional-class-name={this.additionalClassName}\n data-token-id={item._id}\n label={item.label}\n controlled={header.controlled}\n supporting-text={item.supportingText}\n disabled={item.disabled}\n selected={item.selected}\n indeterminate={header.indeterminate}\n onFirstIconClick={this.fireFirstIconClickEvent}\n onSecondIconClick={this.fireSecondIconClickEvent}>\n {groupItems.map((child, i) =>\n renderListItem(child as UDExListItem, i, this.listItemRole, undefined, this.fireFirstIconClickEvent, this.fireSecondIconClickEvent)\n )}\n </UDExListSelectAll>\n );\n}\n\nfunction renderGroupHeader(this: UDExSearchableListBase, processedItem: UDExProcessedItem, index: number) {\n const { item, groupItems } = processedItem;\n const header = item as UDExListGroupHeaderBase;\n const childAccessibleRole = this.isTreeStructure ? \"treeitem\" : undefined;\n return (\n <UDExListGroupHeader\n key={index}\n role={this.isTreeStructure ? \"none\" : \"group\"}\n _tree-mode={this.isTreeStructure || undefined}\n {...(index === 0 ? { \"_no-border\": \"\" } : {})}\n _additional-class-name=\"udex-searchable-list__header\"\n class={this.groupClassName}\n non-interactive={header.nonInteractive}\n data-token-id={item._id}\n label={item.label}\n supporting-text={item.supportingText}\n controlled={header.controlled}\n collapsible={header.collapsible}\n collapsed={header.collapsed}\n _filtered={this._shouldFilterItems}\n disabled={item.disabled}\n selected={item.selected}\n onFirstIconClick={this.fireFirstIconClickEvent}\n onSecondIconClick={this.fireSecondIconClickEvent}\n indeterminate={header.indeterminate}>\n {groupItems.map((child, i) =>\n renderListItem(child as UDExListItem, i, \"none\", childAccessibleRole, this.fireFirstIconClickEvent, this.fireSecondIconClickEvent)\n )}\n </UDExListGroupHeader>\n );\n}\n\nfunction renderListItem(\n item: UDExListItem,\n index: number,\n role: string,\n accessibleRole: string | undefined,\n onFirstIconClick: (e: CustomEvent) => void,\n onSecondIconClick: (e: CustomEvent) => void,\n) {\n return (\n <UDExListItem\n key={index}\n role={role as AriaRole}\n data-token-id={item._id}\n controlled={item.controlled}\n mode={item.mode}\n onFirstIconClick={onFirstIconClick}\n onSecondIconClick={onSecondIconClick}\n supporting-text={item.supportingText}\n additional-text={item.additionalText}\n additional-text-state={item.additionalTextState}\n divider={item.divider}\n disabled={item.disabled}\n selected={item.selected}\n rating={item.rating}\n total-count={item.totalCount}\n rating-count={item.ratingCount}\n rating-max={item.ratingMax}\n label={item.label}\n image={item.image}\n image-alt={item.imageAlt}\n image-badge-state={item.imageBadgeState}\n image-shape={item.imageShape}\n image-size={item.imageSize}\n flag={item.flag}\n flag-position={item.flagPosition}\n size={item.size}\n type={item.type}\n {...(accessibleRole ? { \"accessible-role\": accessibleRole } : {})}\n {...((item as any).innerHTML ? { dangerouslySetInnerHTML: { __html: (item as any).innerHTML } } : {})}>\n </UDExListItem>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"SearchableListBaseTemplate.js","sourceRoot":"","sources":["../src/SearchableListBaseTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import type UDExSearchableListBase from \"./SearchableListBase.js\";\nimport type { UDExProcessedItem } from \"./types/SearchableListBase.js\";\nimport type UDExListGroupHeaderBase from \"./ListGroupHeaderBase.js\";\nimport UDExSearch, { Mode as UDExSearchMode } from \"./Search.js\";\nimport IllustratedMessage from \"@ui5/webcomponents-fiori/dist/IllustratedMessage.js\";\nimport UDExBusyIndicator from \"./BusyIndicator.js\";\nimport UDExList from \"./List.js\";\nimport UDExListItem from \"./ListItem.js\";\nimport UDExListGroupHeader from \"./ListGroupHeader.js\";\nimport UDExListSelectAll from \"./ListSelectAll.js\";\nimport type { AriaRole } from \"@ui5/webcomponents-base/dist/types.js\";\nimport { cleanLabel } from \"./utils/listItemLabelUtils.js\";\n\nexport default function SearchableListBaseTemplate(this: UDExSearchableListBase) {\n return (\n <>\n {this.showSearch && (\n <>\n <UDExSearch\n slot=\"header\"\n mode={UDExSearchMode.Standard}\n class=\"udex-filter-menu__search\"\n label={this.searchPlaceholder}\n label-animation-disabled\n non-interactive-submit-button\n show-submit-button>\n </UDExSearch>\n <span aria-live=\"polite\" aria-atomic=\"true\" class=\"hidden\">{this._accSearchResultInfo}</span>\n </>\n )}\n {this.isListEmpty ? (\n <div class=\"udex-no-result\">\n <IllustratedMessage\n name=\"NoSearchResults\"\n design=\"Dot\"\n title-text=\" \"\n subtitle-text=\" \">\n </IllustratedMessage>\n <span>{this.getNoResultText}</span>\n </div>\n ) : this.busy ? (\n <UDExBusyIndicator\n class=\"udex-busy-indicator\"\n size=\"M\"\n delay={this.busyDelay}\n active>\n </UDExBusyIndicator>\n ) : (\n <UDExList\n id=\"udex-list\"\n role={this.roleForGroupList as AriaRole}\n accessible-role={this.accessibleRoleForList}\n {...(this.isTreeStructure && this.modeMultiSelect ? { \"aria-multiselectable\": \"true\" } : {})}\n class=\"udex-filter-menu__list\"\n controlled={this.isControlled}\n mode={this.mode}\n type={this.type}\n item-icon={this.itemIcon}>\n {this._filteredItems.map((processedItem, index) => (\n processedItem.isGroup\n ? renderGroup.call(this, processedItem, index)\n : renderListItem(processedItem.item as UDExListItem, index, \"none\", this.listItemRole, this.fireFirstIconClickEvent, this.fireSecondIconClickEvent, this._activeDescendantMode, this.isTreeStructure, this.modeMultiSelect)\n ))}\n </UDExList>\n )}\n </>\n );\n}\n\nfunction renderGroup(this: UDExSearchableListBase, processedItem: UDExProcessedItem, index: number) {\n return (processedItem.item as UDExListGroupHeaderBase).isSelectAllHeader\n ? renderSelectAll.call(this, processedItem, index)\n : renderGroupHeader.call(this, processedItem, index);\n}\n\nfunction renderSelectAll(this: UDExSearchableListBase, processedItem: UDExProcessedItem, index: number) {\n const { item, groupItems } = processedItem;\n const header = item as UDExListGroupHeaderBase;\n return (\n <UDExListSelectAll\n key={index}\n _additional-class-name={this.additionalClassName}\n data-token-id={item._id}\n label={item.label}\n controlled={header.controlled}\n supporting-text={item.supportingText}\n disabled={item.disabled}\n selected={item.selected}\n indeterminate={header.indeterminate}\n onFirstIconClick={this.fireFirstIconClickEvent}\n onSecondIconClick={this.fireSecondIconClickEvent}>\n {groupItems.map((child, i) =>\n renderListItem(child as UDExListItem, i, this.listItemRole, undefined, this.fireFirstIconClickEvent, this.fireSecondIconClickEvent, this._activeDescendantMode, this.isTreeStructure, this.modeMultiSelect)\n )}\n </UDExListSelectAll>\n );\n}\n\nfunction renderGroupHeader(this: UDExSearchableListBase, processedItem: UDExProcessedItem, index: number) {\n const { item, groupItems } = processedItem;\n const header = item as UDExListGroupHeaderBase;\n const childAccessibleRole = this.isTreeStructure ? \"treeitem\" : undefined;\n // In aria-activedescendant mode (SelectBox), each group header host element\n // must carry role + ARIA state so screen readers can reach them via the pointer.\n const hostAriaAttrs = this._activeDescendantMode ? {\n role: (this.isTreeStructure ? \"treeitem\" : \"option\") as AriaRole,\n \"aria-label\": cleanLabel(item.label ?? \"\"),\n \"aria-selected\": (this.modeMultiSelect ? undefined : (item.selected ? \"true\" : \"false\")) as string | undefined,\n \"aria-checked\": (this.modeMultiSelect ? (header.indeterminate ? \"mixed\" : (item.selected ? \"true\" : \"false\")) : undefined) as string | undefined,\n \"aria-disabled\": item.disabled ? \"true\" as string : undefined,\n \"aria-expanded\": header.collapsible ? (header.expanded ? \"true\" as string : \"false\" as string) : undefined,\n \"_use-host-aria-role\": true,\n } : { role: (this.isTreeStructure ? \"none\" : \"group\") as AriaRole };\n return (\n <UDExListGroupHeader\n key={index}\n id={item._id}\n {...hostAriaAttrs}\n _tree-mode={this.isTreeStructure || undefined}\n {...(index === 0 ? { \"_no-border\": \"\" } : {})}\n _additional-class-name=\"udex-searchable-list__header\"\n class={this.groupClassName}\n non-interactive={header.nonInteractive}\n data-token-id={item._id}\n label={item.label}\n supporting-text={item.supportingText}\n controlled={header.controlled}\n collapsible={header.collapsible}\n collapsed={header.collapsed}\n _filtered={this._shouldFilterItems}\n disabled={item.disabled}\n selected={item.selected}\n onFirstIconClick={this.fireFirstIconClickEvent}\n onSecondIconClick={this.fireSecondIconClickEvent}\n indeterminate={header.indeterminate}>\n {groupItems.map((child, i) =>\n renderListItem(child as UDExListItem, i, \"none\", childAccessibleRole, this.fireFirstIconClickEvent, this.fireSecondIconClickEvent, this._activeDescendantMode, this.isTreeStructure, this.modeMultiSelect)\n )}\n </UDExListGroupHeader>\n );\n}\n\nfunction renderListItem(\n item: UDExListItem,\n index: number,\n role: string,\n accessibleRole: string | undefined,\n onFirstIconClick: (e: CustomEvent) => void,\n onSecondIconClick: (e: CustomEvent) => void,\n activeDescendantMode?: boolean,\n isTreeStructure?: boolean,\n modeMultiSelect?: boolean,\n) {\n // In aria-activedescendant mode (SelectBox), role + ARIA state must be on the\n // host element so screen readers can reach them via the aria-activedescendant pointer.\n const effectiveRole = accessibleRole ?? (role !== \"none\" ? role : undefined) ?? \"option\";\n const hostRole = activeDescendantMode ? (effectiveRole as AriaRole) : (role as AriaRole);\n const hostAriaAttrs = activeDescendantMode ? {\n \"aria-label\": \"test\",\n // option role (listbox): always aria-selected; treeitem + MultiSelect: aria-checked only\n \"aria-selected\": (effectiveRole !== \"treeitem\" || !modeMultiSelect) ? (item.selected ? \"true\" : \"false\") as string : undefined,\n \"aria-checked\": (effectiveRole === \"treeitem\" && !!modeMultiSelect) ? (item.indeterminate ? \"mixed\" : (item.selected ? \"true\" : \"false\")) as string : undefined,\n \"aria-disabled\": item.disabled ? \"true\" as string : undefined,\n \"_use-host-aria-role\": true,\n ...(accessibleRole ? { \"accessible-role\": accessibleRole } : {}),\n } : {\n ...(accessibleRole ? { \"accessible-role\": accessibleRole } : {}),\n };\n return (\n <UDExListItem\n key={index}\n id={item._id}\n role={hostRole}\n data-token-id={item._id}\n controlled={item.controlled}\n mode={item.mode}\n onFirstIconClick={onFirstIconClick}\n onSecondIconClick={onSecondIconClick}\n supporting-text={item.supportingText}\n additional-text={item.additionalText}\n additional-text-state={item.additionalTextState}\n divider={item.divider}\n disabled={item.disabled}\n selected={item.selected}\n rating={item.rating}\n total-count={item.totalCount}\n rating-count={item.ratingCount}\n rating-max={item.ratingMax}\n label={item.label}\n image={item.image}\n image-alt={item.imageAlt}\n image-badge-state={item.imageBadgeState}\n image-shape={item.imageShape}\n image-size={item.imageSize}\n flag={item.flag}\n flag-position={item.flagPosition}\n size={item.size}\n type={item.type}\n {...hostAriaAttrs}\n {...((item as any).innerHTML ? { dangerouslySetInnerHTML: { __html: (item as any).innerHTML } } : {})}>\n </UDExListItem>\n );\n}\n"]}
|
package/dist/SelectBase.d.ts
CHANGED
|
@@ -120,6 +120,22 @@ declare class UDExSelectBase extends UDExSearchableListBase {
|
|
|
120
120
|
* @private
|
|
121
121
|
*/
|
|
122
122
|
_requestRender: boolean;
|
|
123
|
+
/**
|
|
124
|
+
* True while keyboard list navigation is active (aria-activedescendant set).
|
|
125
|
+
* Used in CSS to suppress the input focus ring and show the active item ring.
|
|
126
|
+
*
|
|
127
|
+
* @private
|
|
128
|
+
*/
|
|
129
|
+
_navigating: boolean;
|
|
130
|
+
/**
|
|
131
|
+
* Text read by screen readers when the active item changes.
|
|
132
|
+
* Announced via an aria-live="assertive" region in the template.
|
|
133
|
+
* This works regardless of shadow DOM / popover teleportation because
|
|
134
|
+
* the live region lives inside SelectBox's own shadow root.
|
|
135
|
+
*
|
|
136
|
+
* @private
|
|
137
|
+
*/
|
|
138
|
+
_liveRegionText: string;
|
|
123
139
|
/**
|
|
124
140
|
* Defines the footer content for the component dropdown.
|
|
125
141
|
* Place any content (e.g. an action button) here. Clicking footer content does not close the dropdown —
|
|
@@ -144,14 +160,35 @@ declare class UDExSelectBase extends UDExSearchableListBase {
|
|
|
144
160
|
_handleResizeBound: ResizeObserverCallback;
|
|
145
161
|
_handleListKeyDownBound: (e: KeyboardEvent) => void;
|
|
146
162
|
_listKeyDownListenerAdded: boolean;
|
|
163
|
+
_activeDescendantItem: UDExListItemBase | null;
|
|
147
164
|
constructor();
|
|
148
165
|
onEnterDOM(): void;
|
|
149
166
|
onExitDOM(): void;
|
|
150
167
|
onInvalidation({ name }: ChangeInfo): void;
|
|
151
168
|
onAfterRendering(): void;
|
|
152
169
|
_handleResize(): void;
|
|
170
|
+
/**
|
|
171
|
+
* Given a candidate index, skips over a non-interactive non-collapsible header if needed.
|
|
172
|
+
* Returns the effective target index.
|
|
173
|
+
*/
|
|
174
|
+
_skipNonInteractive(items: UDExListItemBase[], raw: number, lastIndex: number, direction: "down" | "up"): number;
|
|
175
|
+
/**
|
|
176
|
+
* Sets or clears the aria-activedescendant on the combobox input and updates
|
|
177
|
+
* the aria-live region so JAWS/VoiceOver announce the item name and position.
|
|
178
|
+
* The live region is the primary announcement mechanism because aria-activedescendant
|
|
179
|
+
* across a UI5 Popover (which teleports content to document.body) is unreliable —
|
|
180
|
+
* screen readers cannot follow the ID reference across shadow root boundaries.
|
|
181
|
+
*/
|
|
182
|
+
_setActiveDescendant(item: UDExListItemBase | null, scroll?: boolean): void;
|
|
183
|
+
/**
|
|
184
|
+
* Activates the first navigable item as the aria-activedescendant without moving DOM focus.
|
|
185
|
+
*/
|
|
186
|
+
_activateFirstItem(): void;
|
|
187
|
+
/**
|
|
188
|
+
* Navigates to the item at the given index, updating aria-activedescendant and _selectedOption.
|
|
189
|
+
*/
|
|
190
|
+
_navigateToIndex(items: UDExListItemBase[], nextIndex: number): void;
|
|
153
191
|
handleKeyDownDropdown(e: KeyboardEvent): void;
|
|
154
|
-
handleListNavigationKeys(e: KeyboardEvent, items: UDExListItemBase[], effectiveTarget?: UDExListItemBase): void;
|
|
155
192
|
handleEndKeyPress(items: UDExListItemBase[], lastItemIndex: number): void;
|
|
156
193
|
handleHomeKeyPress(items: UDExListItemBase[]): void;
|
|
157
194
|
handleDownKeyPress(items: UDExListItemBase[], currentSelectedIndex: number, lastItemIndex: number): void;
|
|
@@ -161,10 +198,24 @@ declare class UDExSelectBase extends UDExSearchableListBase {
|
|
|
161
198
|
handleItemSelection(e: CustomEvent): void;
|
|
162
199
|
onKeyDownSearch(e: KeyboardEvent): void;
|
|
163
200
|
handleSearchChange(e: InputEvent): void;
|
|
201
|
+
onSearch(value: string): void;
|
|
164
202
|
handleDirection(): void;
|
|
165
203
|
handleDropdownBeforeClose(): void;
|
|
166
204
|
dropdownBeforeOpen(): void;
|
|
167
205
|
handleDropdownOpen(): void;
|
|
206
|
+
/**
|
|
207
|
+
* Announces the currently active descendant item (if set), or the first
|
|
208
|
+
* navigable item as a fallback. Used on open and after state changes.
|
|
209
|
+
*/
|
|
210
|
+
_announceCurrentOrFirst(): void;
|
|
211
|
+
/**
|
|
212
|
+
* Returns the positional announcement text for an item, tree-aware when the
|
|
213
|
+
* list has groups. Matches the JAWS reading pattern of FilterMenu:
|
|
214
|
+
* group header → "level 0, X of Y" (Y = total navigable groups)
|
|
215
|
+
* group child → "level 1, X of Y" (Y = siblings in that group)
|
|
216
|
+
* flat item → "X of Y" (Y = total items, no level prefix)
|
|
217
|
+
*/
|
|
218
|
+
_treePositionText(item: UDExListItemBase): string;
|
|
168
219
|
fireEventDropdownBeforeOClose(): void;
|
|
169
220
|
fireEventDropdownBeforeOpen(): void;
|
|
170
221
|
fireEventDropdownOpen(): void;
|
|
@@ -200,6 +251,16 @@ declare class UDExSelectBase extends UDExSearchableListBase {
|
|
|
200
251
|
_focusLastListItem(): void;
|
|
201
252
|
_firstFocusableIn(el: Element | undefined): HTMLElement | null;
|
|
202
253
|
_moveFocusAfterComponent(): void;
|
|
254
|
+
/**
|
|
255
|
+
* Builds the state portion of the live region announcement for a navigation item.
|
|
256
|
+
* Returns an array of state strings (e.g. ["collapsed", "Checked"]) to be joined
|
|
257
|
+
* with the label and position. Handles:
|
|
258
|
+
* - collapsible group headers: expanded / collapsed
|
|
259
|
+
* - MultiSelect: Checked / Unchecked / Indeterminate
|
|
260
|
+
* - SingleSelect (tree): Selected / Unselected
|
|
261
|
+
* - disabled: Disabled
|
|
262
|
+
*/
|
|
263
|
+
_itemStateLabels(item: UDExListItemBase): string[];
|
|
203
264
|
get ariaDescribedbyText(): string;
|
|
204
265
|
get trigger(): HTMLElement;
|
|
205
266
|
get isDisabled(): boolean;
|
|
@@ -212,6 +273,9 @@ declare class UDExSelectBase extends UDExSearchableListBase {
|
|
|
212
273
|
};
|
|
213
274
|
get popoverId(): string;
|
|
214
275
|
get listboxRole(): AriaHasPopup;
|
|
276
|
+
get listAriaControlsId(): string;
|
|
277
|
+
get _activeDescendantMode(): boolean;
|
|
278
|
+
get isTreeStructure(): boolean;
|
|
215
279
|
get hideDropdownSearch(): boolean;
|
|
216
280
|
get showImageFlags(): boolean;
|
|
217
281
|
get searchableList(): object;
|