@sapudex/web-components 2.62.0 → 2.63.1
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/FilterMenu.cy.tsx +43 -22
- package/cypress/specs/FilterMenuAccessibility.cy.tsx +1017 -0
- package/cypress/specs/ListItem.cy.tsx +234 -6
- package/cypress/specs/MastheadCountrySelector.cy.tsx +177 -0
- package/cypress/specs/SelectBox.cy.tsx +7 -2
- package/cypress/specs/SelectBoxAccessibility.cy.tsx +5 -5
- package/cypress/specs/SideNavigation.cy.tsx +49 -0
- package/cypress/specs/SideNavigationMobile.cy.tsx +69 -0
- package/cypress/support/component-imports.instrumented.ts +4 -0
- package/cypress/support/component-imports.src.ts +4 -0
- package/dist/AccordionItemTemplate.js +1 -1
- package/dist/AccordionItemTemplate.js.map +1 -1
- package/dist/FilterMenu.d.ts +2 -2
- package/dist/FilterMenu.js +6 -4
- package/dist/FilterMenu.js.map +1 -1
- package/dist/FilterMenuTemplate.js +2 -2
- package/dist/FilterMenuTemplate.js.map +1 -1
- package/dist/List.d.ts +1 -8
- package/dist/List.js +4 -12
- package/dist/List.js.map +1 -1
- package/dist/ListGroupHeaderTemplate.js +8 -7
- package/dist/ListGroupHeaderTemplate.js.map +1 -1
- package/dist/ListItem.js +12 -1
- package/dist/ListItem.js.map +1 -1
- package/dist/ListItemBase.d.ts +5 -0
- package/dist/ListItemBase.js +3 -0
- package/dist/ListItemBase.js.map +1 -1
- package/dist/ListItemTemplate.js +2 -2
- package/dist/ListItemTemplate.js.map +1 -1
- package/dist/ListSelectAllTemplate.js +1 -1
- package/dist/ListSelectAllTemplate.js.map +1 -1
- package/dist/MastheadCountrySelector.d.ts +14 -0
- package/dist/MastheadCountrySelector.js +6 -0
- package/dist/MastheadCountrySelector.js.map +1 -1
- package/dist/MastheadCountrySelectorTemplate.js +1 -1
- package/dist/MastheadCountrySelectorTemplate.js.map +1 -1
- package/dist/MessageStrip.d.ts +1 -0
- package/dist/MessageStrip.js +6 -0
- package/dist/MessageStrip.js.map +1 -1
- package/dist/SearchTemplate.js +1 -1
- package/dist/SearchTemplate.js.map +1 -1
- package/dist/SearchableListBaseTemplate.js +8 -10
- package/dist/SearchableListBaseTemplate.js.map +1 -1
- package/dist/SideNavigation.d.ts +9 -0
- package/dist/SideNavigation.js +9 -0
- package/dist/SideNavigation.js.map +1 -1
- package/dist/SideNavigationMobile.d.ts +19 -0
- package/dist/SideNavigationMobile.js +32 -1
- package/dist/SideNavigationMobile.js.map +1 -1
- package/dist/SideNavigationMobileTemplate.js +1 -2
- package/dist/SideNavigationMobileTemplate.js.map +1 -1
- package/dist/SideNavigationSubItem.d.ts +4 -1
- package/dist/SideNavigationSubItem.js +20 -9
- package/dist/SideNavigationSubItem.js.map +1 -1
- package/dist/SideNavigationSubItemTemplate.js +1 -1
- package/dist/SideNavigationSubItemTemplate.js.map +1 -1
- package/dist/SideNavigationTemplate.d.ts +2 -0
- package/dist/SideNavigationTemplate.js +6 -0
- package/dist/SideNavigationTemplate.js.map +1 -0
- package/dist/assets/{InputSuggestions-BPKrPqPb.js → InputSuggestions-DSPGFWZq.js} +2 -2
- package/dist/assets/{ListItemStandardExpandableTextTemplate-DkdOcCxC.js → ListItemStandardExpandableTextTemplate-hSNo3Xyr.js} +2 -2
- package/dist/assets/{bundle.esm-17Yt5gDr.js → bundle.esm-qSu0eWiH.js} +237 -238
- package/dist/assets/messagebundle_ar-22dGHdkl.js +1 -0
- package/dist/assets/messagebundle_ar-DbxuUDUB.js +1 -0
- package/dist/assets/messagebundle_bg-CaaOz5e4.js +1 -0
- package/dist/assets/messagebundle_bg-QOUvq6-8.js +1 -0
- package/dist/assets/messagebundle_ca-D-8eSg1w.js +1 -0
- package/dist/assets/messagebundle_ca-jsUpFfNJ.js +1 -0
- package/dist/assets/messagebundle_cnr-BdSolJRo.js +1 -0
- package/dist/assets/messagebundle_cnr-rtr9Ox4O.js +1 -0
- package/dist/assets/messagebundle_cs-CbM7zJ23.js +1 -0
- package/dist/assets/messagebundle_cy-D5E7e9o1.js +1 -0
- package/dist/assets/messagebundle_cy-hajQLyoj.js +1 -0
- package/dist/assets/messagebundle_da-C3PD-hWQ.js +1 -0
- package/dist/assets/messagebundle_da-DFzvQYW2.js +1 -0
- package/dist/assets/messagebundle_de-C106E9io.js +1 -0
- package/dist/assets/messagebundle_de-C36z5lgV.js +1 -0
- package/dist/assets/messagebundle_el-BLHqa1_J.js +1 -0
- package/dist/assets/messagebundle_el-k8W9FVQI.js +1 -0
- package/dist/assets/messagebundle_en-ClXds397.js +1 -0
- package/dist/assets/messagebundle_en-DgPtAFO8.js +1 -0
- package/dist/assets/messagebundle_en_GB-DxulA9qE.js +1 -0
- package/dist/assets/messagebundle_en_GB-LxAIZigF.js +1 -0
- package/dist/assets/{messagebundle_en_US_sappsd-Se8GgI58.js → messagebundle_en_US_sappsd-TZz2y4pV.js} +1 -1
- package/dist/assets/messagebundle_en_US_sappsd-oE0A2op2.js +1 -0
- package/dist/assets/messagebundle_en_US_saprigi-C6FsbpF8.js +1 -0
- package/dist/assets/{messagebundle_en_US_saprigi-CbfvaHUL.js → messagebundle_en_US_saprigi-CkPhuOLS.js} +1 -1
- package/dist/assets/messagebundle_en_US_saptrc-CFSYKuS7.js +1 -0
- package/dist/assets/messagebundle_en_US_saptrc-CNZe1wPP.js +1 -0
- package/dist/assets/messagebundle_es-C3ijAvKG.js +1 -0
- package/dist/assets/messagebundle_es-wi4P-8Bo.js +1 -0
- package/dist/assets/messagebundle_es_MX-JEoOD2AD.js +1 -0
- package/dist/assets/messagebundle_es_MX-qDQ65ei9.js +1 -0
- package/dist/assets/messagebundle_et-C3wgDmm9.js +1 -0
- package/dist/assets/messagebundle_et-D4r4iubd.js +1 -0
- package/dist/assets/messagebundle_fi-BjyQcbRb.js +1 -0
- package/dist/assets/messagebundle_fi-CivJKH9k.js +1 -0
- package/dist/assets/messagebundle_fr-BxDSBfD5.js +1 -0
- package/dist/assets/messagebundle_fr-JN2VAe-b.js +1 -0
- package/dist/assets/messagebundle_fr_CA-FkrcsWH5.js +1 -0
- package/dist/assets/messagebundle_fr_CA-phd0XOeR.js +1 -0
- package/dist/assets/messagebundle_hi-B_pehoTp.js +1 -0
- package/dist/assets/messagebundle_hi-CVOoC3dA.js +1 -0
- package/dist/assets/messagebundle_hr-BYS-ya62.js +1 -0
- package/dist/assets/messagebundle_hr-DHuCJjK8.js +1 -0
- package/dist/assets/messagebundle_hu-Crn0Y1hl.js +1 -0
- package/dist/assets/messagebundle_hu-DJL3QHT4.js +1 -0
- package/dist/assets/messagebundle_id-BJEG-7Up.js +1 -0
- package/dist/assets/messagebundle_id-CgbG2IVb.js +1 -0
- package/dist/assets/messagebundle_it-B-E3gO1k.js +1 -0
- package/dist/assets/messagebundle_it-DHwy0JuE.js +1 -0
- package/dist/assets/messagebundle_iw-BFfL9nZy.js +1 -0
- package/dist/assets/messagebundle_iw-BgyHu_0a.js +1 -0
- package/dist/assets/messagebundle_ja-BDNEwBMO.js +1 -0
- package/dist/assets/messagebundle_ja-eyoqeb4r.js +1 -0
- package/dist/assets/messagebundle_kk-BA_1qhYv.js +1 -0
- package/dist/assets/messagebundle_kk-CTAXqbPN.js +1 -0
- package/dist/assets/messagebundle_ko-C1tsjQMn.js +1 -0
- package/dist/assets/messagebundle_ko-CkiNi7iV.js +1 -0
- package/dist/assets/messagebundle_lt-Dp0c8r7p.js +1 -0
- package/dist/assets/{messagebundle_lt-BGK5mpcm.js → messagebundle_lt-bNum-ekg.js} +1 -1
- package/dist/assets/messagebundle_lv-B9UWTGX9.js +1 -0
- package/dist/assets/messagebundle_lv-D02PBhtR.js +1 -0
- package/dist/assets/messagebundle_mk--Xt_Ciey.js +1 -0
- package/dist/assets/messagebundle_mk-D6s2Tr95.js +1 -0
- package/dist/assets/messagebundle_ms-BAqsvtp5.js +1 -0
- package/dist/assets/messagebundle_ms-BobJaFPp.js +1 -0
- package/dist/assets/messagebundle_nl-BJCykHj1.js +1 -0
- package/dist/assets/messagebundle_nl-Dj7LaMyb.js +1 -0
- package/dist/assets/messagebundle_no-CR_uQXUz.js +1 -0
- package/dist/assets/messagebundle_no-CnwJbEW8.js +1 -0
- package/dist/assets/messagebundle_pl-D6FQ-6EC.js +1 -0
- package/dist/assets/messagebundle_pl-eJC2NE6N.js +1 -0
- package/dist/assets/messagebundle_pt-CbdPbTKR.js +1 -0
- package/dist/assets/messagebundle_pt-n8LcOyWG.js +1 -0
- package/dist/assets/messagebundle_pt_PT-B17ziKL9.js +1 -0
- package/dist/assets/messagebundle_pt_PT-BVpS4lrC.js +1 -0
- package/dist/assets/messagebundle_ro-C0jrNva4.js +1 -0
- package/dist/assets/messagebundle_ro-ixITTbJt.js +1 -0
- package/dist/assets/messagebundle_ru-Bh6RMNe2.js +1 -0
- package/dist/assets/messagebundle_ru-Dbxms1Xm.js +1 -0
- package/dist/assets/messagebundle_sh-CMDXUWge.js +1 -0
- package/dist/assets/messagebundle_sh-Cb-sVI_0.js +1 -0
- package/dist/assets/messagebundle_sk-DZkkgRSd.js +1 -0
- package/dist/assets/{messagebundle_sk-CXOF1RuF.js → messagebundle_sk-Dqb_XwMg.js} +1 -1
- package/dist/assets/messagebundle_sl-DIl-2Lb1.js +1 -0
- package/dist/assets/messagebundle_sl-Dx6UWXni.js +1 -0
- package/dist/assets/messagebundle_sr-DstlyDjZ.js +1 -0
- package/dist/assets/messagebundle_sr-yQWBd9jR.js +1 -0
- package/dist/assets/messagebundle_sv-Dr2hDyEO.js +1 -0
- package/dist/assets/messagebundle_sv-iHKWgaRg.js +1 -0
- package/dist/assets/messagebundle_th-DbWfCb5y.js +1 -0
- package/dist/assets/messagebundle_th-yLU2SE6L.js +1 -0
- package/dist/assets/messagebundle_tr-CIoGg6uY.js +1 -0
- package/dist/assets/messagebundle_tr-lAQvvdUi.js +1 -0
- package/dist/assets/messagebundle_uk-DIBItAKu.js +1 -0
- package/dist/assets/messagebundle_uk-j_sqGY4D.js +1 -0
- package/dist/assets/messagebundle_vi-C40OW2eC.js +1 -0
- package/dist/assets/messagebundle_vi-xWTpoKPI.js +1 -0
- package/dist/assets/messagebundle_zh_CN-CmeOlVfl.js +1 -0
- package/dist/assets/messagebundle_zh_CN-U8Z0kuQb.js +1 -0
- package/dist/assets/messagebundle_zh_TW-B_1_vc8O.js +1 -0
- package/dist/assets/messagebundle_zh_TW-hwHN6ElU.js +1 -0
- package/dist/assets/{parameters-bundle.css-Cv89y49I.js → parameters-bundle.css-2ZsUlBNO.js} +299 -151
- package/dist/assets/parameters-bundle.css-31Bw5XOG.js +2 -0
- package/dist/assets/parameters-bundle.css-BJp4ZvSQ.js +2 -0
- package/dist/assets/{parameters-bundle.css-vNsSPPU5.js → parameters-bundle.css-BKlkVfkE.js} +742 -494
- package/dist/assets/parameters-bundle.css-BMOU75LU.js +2 -0
- package/dist/assets/parameters-bundle.css-BZF5sWSb.js +1 -0
- package/dist/assets/{parameters-bundle.css-DmEWEk0u.js → parameters-bundle.css-Bf1GOISM.js} +786 -513
- package/dist/assets/parameters-bundle.css-BpWLGMCI.js +2 -0
- package/dist/assets/parameters-bundle.css-BsoxE2UF.js +2 -0
- package/dist/assets/parameters-bundle.css-CAhrGUcA.js +2 -0
- package/dist/assets/{parameters-bundle.css-C3eDVARm.js → parameters-bundle.css-CDJt5bvS.js} +176 -89
- package/dist/assets/parameters-bundle.css-CIr3BQBD.js +2 -0
- package/dist/assets/parameters-bundle.css-CVUmNgQM.js +2 -0
- package/dist/assets/parameters-bundle.css-C_pu3Dce.js +2 -0
- package/dist/assets/parameters-bundle.css-ChtqHIDX.js +2 -0
- package/dist/assets/parameters-bundle.css-CvaMQVtq.js +1 -0
- package/dist/assets/parameters-bundle.css-Cwz89dEH.js +2 -0
- package/dist/assets/parameters-bundle.css-CyCovTbK.js +2 -0
- package/dist/assets/parameters-bundle.css-Cyf5K2-Q.js +2 -0
- package/dist/assets/parameters-bundle.css-DdDLbfHl.js +2 -0
- package/dist/assets/{parameters-bundle.css-C5V2Zp_F.js → parameters-bundle.css-Dfz9lgd6.js} +131 -95
- package/dist/assets/{parameters-bundle.css-K-MvKimD.js → parameters-bundle.css-DjW0INFD.js} +139 -88
- package/dist/assets/parameters-bundle.css-JyFiyY-_.js +2 -0
- package/dist/assets/parameters-bundle.css-tf-z7jv9.js +2 -0
- package/dist/css/themes/MastheadShell.css +1 -1
- package/dist/css/themes/PromoTile.css +1 -1
- package/dist/css/themes/SideNavigation.css +1 -1
- package/dist/css/themes/SideNavigationMobile.css +1 -1
- package/dist/css/themes/Slider.css +1 -1
- package/dist/css/themes/sap_fiori_3/parameters-bundle.css +0 -1
- package/dist/css/themes/sap_glow/parameters-bundle.css +0 -1
- package/dist/css/themes/sap_horizon/parameters-bundle.css +0 -1
- package/dist/custom-elements-internal.json +1436 -0
- package/dist/custom-elements.json +1490 -21
- package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_glow/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
- package/dist/generated/themes/MastheadShell.css.d.ts +1 -1
- package/dist/generated/themes/MastheadShell.css.js +1 -1
- package/dist/generated/themes/MastheadShell.css.js.map +1 -1
- package/dist/generated/themes/PromoTile.css.d.ts +1 -1
- package/dist/generated/themes/PromoTile.css.js +1 -1
- package/dist/generated/themes/PromoTile.css.js.map +1 -1
- package/dist/generated/themes/SideNavigation.css.d.ts +1 -1
- package/dist/generated/themes/SideNavigation.css.js +1 -1
- package/dist/generated/themes/SideNavigation.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationMobile.css.d.ts +1 -1
- package/dist/generated/themes/SideNavigationMobile.css.js +1 -1
- package/dist/generated/themes/SideNavigationMobile.css.js.map +1 -1
- package/dist/generated/themes/Slider.css.d.ts +1 -1
- package/dist/generated/themes/Slider.css.js +1 -1
- package/dist/generated/themes/Slider.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_glow/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_glow/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_glow/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
- package/dist/vscode.html-custom-data.json +12 -2
- package/dist/web-types.json +33 -3
- package/package.json +8 -8
- package/src/AccordionItemTemplate.tsx +1 -0
- package/src/FilterMenu.ts +6 -4
- package/src/FilterMenuTemplate.tsx +12 -8
- package/src/List.ts +4 -12
- package/src/ListGroupHeaderTemplate.tsx +9 -3
- package/src/ListItem.ts +12 -1
- package/src/ListItemBase.ts +7 -0
- package/src/ListItemTemplate.tsx +6 -1
- package/src/ListSelectAllTemplate.tsx +11 -12
- package/src/MastheadCountrySelector.ts +18 -0
- package/src/MastheadCountrySelectorTemplate.tsx +2 -0
- package/src/MessageStrip.ts +7 -0
- package/src/SearchTemplate.tsx +3 -1
- package/src/SearchableListBaseTemplate.tsx +12 -12
- package/src/SideNavigation.ts +17 -0
- package/src/SideNavigationMobile.ts +52 -0
- package/src/SideNavigationMobileTemplate.tsx +3 -5
- package/src/SideNavigationSubItem.ts +17 -5
- package/src/SideNavigationSubItemTemplate.tsx +3 -1
- package/src/SideNavigationTemplate.tsx +17 -0
- package/src/generated/themes/MastheadShell.css.ts +1 -1
- package/src/generated/themes/PromoTile.css.ts +1 -1
- package/src/generated/themes/SideNavigation.css.ts +1 -1
- package/src/generated/themes/SideNavigationMobile.css.ts +1 -1
- package/src/generated/themes/Slider.css.ts +1 -1
- package/src/generated/themes/sap_fiori_3/parameters-bundle.css.ts +1 -1
- package/src/generated/themes/sap_glow/parameters-bundle.css.ts +1 -1
- package/src/generated/themes/sap_horizon/parameters-bundle.css.ts +1 -1
- package/src/themes/MastheadShell.css +14 -2
- package/src/themes/PromoTile.css +5 -0
- package/src/themes/SideNavigation.css +43 -8
- package/src/themes/SideNavigationMobile.css +1 -0
- package/src/themes/Slider.css +25 -11
- package/dist/assets/messagebundle_ar-C3EXytoC.js +0 -1
- package/dist/assets/messagebundle_ar-DmZrrjEF.js +0 -1
- package/dist/assets/messagebundle_bg-BaZ97Q_b.js +0 -1
- package/dist/assets/messagebundle_bg-CgU7GPvK.js +0 -1
- package/dist/assets/messagebundle_ca-BwjVUbUA.js +0 -1
- package/dist/assets/messagebundle_ca-YiUGbO_8.js +0 -1
- package/dist/assets/messagebundle_cnr-CN2hPZIN.js +0 -1
- package/dist/assets/messagebundle_cnr-zdEdPJvc.js +0 -1
- package/dist/assets/messagebundle_cs-CGbnEjza.js +0 -1
- package/dist/assets/messagebundle_cy-BF0YH9Iz.js +0 -1
- package/dist/assets/messagebundle_cy-CUiGsjO6.js +0 -1
- package/dist/assets/messagebundle_da-CWKLQJiq.js +0 -1
- package/dist/assets/messagebundle_da-bTkr4pUc.js +0 -1
- package/dist/assets/messagebundle_de-BmnClk4G.js +0 -1
- package/dist/assets/messagebundle_de-vB6qhgvG.js +0 -1
- package/dist/assets/messagebundle_el-DKdItEgW.js +0 -1
- package/dist/assets/messagebundle_el-Gv1Ly8aj.js +0 -1
- package/dist/assets/messagebundle_en-DbKo-Dkl.js +0 -1
- package/dist/assets/messagebundle_en-DcV886MF.js +0 -1
- package/dist/assets/messagebundle_en_GB-Be93_Z4H.js +0 -1
- package/dist/assets/messagebundle_en_GB-CFh7e8hQ.js +0 -1
- package/dist/assets/messagebundle_en_US_sappsd-HCarC-Yr.js +0 -1
- package/dist/assets/messagebundle_en_US_saprigi-CCHFk7YZ.js +0 -1
- package/dist/assets/messagebundle_en_US_saptrc-B8AIRzlo.js +0 -1
- package/dist/assets/messagebundle_en_US_saptrc-yJ3PcdEm.js +0 -1
- package/dist/assets/messagebundle_es-BH-a8BxO.js +0 -1
- package/dist/assets/messagebundle_es-Dt93wbGV.js +0 -1
- package/dist/assets/messagebundle_es_MX-BedlYlF3.js +0 -1
- package/dist/assets/messagebundle_es_MX-COPqooo9.js +0 -1
- package/dist/assets/messagebundle_et-BsYgDw46.js +0 -1
- package/dist/assets/messagebundle_et-UwpqUE-p.js +0 -1
- package/dist/assets/messagebundle_fi-BN3UWEz0.js +0 -1
- package/dist/assets/messagebundle_fi-Cwf7Puui.js +0 -1
- package/dist/assets/messagebundle_fr-43w09LAE.js +0 -1
- package/dist/assets/messagebundle_fr-CVRaf9_H.js +0 -1
- package/dist/assets/messagebundle_fr_CA-BM04X6xU.js +0 -1
- package/dist/assets/messagebundle_fr_CA-CdnVYumi.js +0 -1
- package/dist/assets/messagebundle_hi-DfeonbAH.js +0 -1
- package/dist/assets/messagebundle_hi-JRJlP9Uh.js +0 -1
- package/dist/assets/messagebundle_hr-CKOnn34q.js +0 -1
- package/dist/assets/messagebundle_hr-CbyIBlH3.js +0 -1
- package/dist/assets/messagebundle_hu-DF1gQudE.js +0 -1
- package/dist/assets/messagebundle_hu-D_IQ9kTy.js +0 -1
- package/dist/assets/messagebundle_id-B0K1usj4.js +0 -1
- package/dist/assets/messagebundle_id-gDJYoaGq.js +0 -1
- package/dist/assets/messagebundle_it-B80_R2Ih.js +0 -1
- package/dist/assets/messagebundle_it-CVqU4g6t.js +0 -1
- package/dist/assets/messagebundle_iw-BoelOIS4.js +0 -1
- package/dist/assets/messagebundle_iw-iMDtLxaa.js +0 -1
- package/dist/assets/messagebundle_ja-BlRbv4vb.js +0 -1
- package/dist/assets/messagebundle_ja-BrDH-19-.js +0 -1
- package/dist/assets/messagebundle_kk-C7VPek1-.js +0 -1
- package/dist/assets/messagebundle_kk-DhAT_bim.js +0 -1
- package/dist/assets/messagebundle_ko-CIqP8x6n.js +0 -1
- package/dist/assets/messagebundle_ko-DgD6uyZ5.js +0 -1
- package/dist/assets/messagebundle_lt-BV0kKrY0.js +0 -1
- package/dist/assets/messagebundle_lv-5IcjoxWD.js +0 -1
- package/dist/assets/messagebundle_lv-DDBi7iKe.js +0 -1
- package/dist/assets/messagebundle_mk-BUrn04sZ.js +0 -1
- package/dist/assets/messagebundle_mk-P5veRdg2.js +0 -1
- package/dist/assets/messagebundle_ms-9VDLR5en.js +0 -1
- package/dist/assets/messagebundle_ms-CB8sQUg2.js +0 -1
- package/dist/assets/messagebundle_nl-BaAgPO7h.js +0 -1
- package/dist/assets/messagebundle_nl-f1Up3dB9.js +0 -1
- package/dist/assets/messagebundle_no-C-_ldp7o.js +0 -1
- package/dist/assets/messagebundle_no-DRSqWQ-C.js +0 -1
- package/dist/assets/messagebundle_pl-BQoPaokq.js +0 -1
- package/dist/assets/messagebundle_pl-DBO1atMe.js +0 -1
- package/dist/assets/messagebundle_pt-BNEglYxa.js +0 -1
- package/dist/assets/messagebundle_pt-DgAMHmW-.js +0 -1
- package/dist/assets/messagebundle_pt_PT-BtYzp9KB.js +0 -1
- package/dist/assets/messagebundle_pt_PT-D1Ef8kUU.js +0 -1
- package/dist/assets/messagebundle_ro-CuDPp2fe.js +0 -1
- package/dist/assets/messagebundle_ro-D591wJ6f.js +0 -1
- package/dist/assets/messagebundle_ru-D0NridWi.js +0 -1
- package/dist/assets/messagebundle_ru-I8YLCfrn.js +0 -1
- package/dist/assets/messagebundle_sh-BswdbSRi.js +0 -1
- package/dist/assets/messagebundle_sh-Dw2y_oct.js +0 -1
- package/dist/assets/messagebundle_sk-BG4S4ZVk.js +0 -1
- package/dist/assets/messagebundle_sl-CAnJO_8X.js +0 -1
- package/dist/assets/messagebundle_sl-kpVWxIp_.js +0 -1
- package/dist/assets/messagebundle_sr-BTWvO8VQ.js +0 -1
- package/dist/assets/messagebundle_sr-VJmRSdj4.js +0 -1
- package/dist/assets/messagebundle_sv-B-RCgnW_.js +0 -1
- package/dist/assets/messagebundle_sv-Bd4wCcDb.js +0 -1
- package/dist/assets/messagebundle_th-CMHmLdI3.js +0 -1
- package/dist/assets/messagebundle_th-CZ1imsCy.js +0 -1
- package/dist/assets/messagebundle_tr-BfWAYIdW.js +0 -1
- package/dist/assets/messagebundle_tr-D-BnBirv.js +0 -1
- package/dist/assets/messagebundle_uk-DhxIThVl.js +0 -1
- package/dist/assets/messagebundle_uk-HU8hI0yj.js +0 -1
- package/dist/assets/messagebundle_vi-BUTqUKd4.js +0 -1
- package/dist/assets/messagebundle_vi-D1El4_Wj.js +0 -1
- package/dist/assets/messagebundle_zh_CN-Dt0azUea.js +0 -1
- package/dist/assets/messagebundle_zh_CN-Ofgx2uXY.js +0 -1
- package/dist/assets/messagebundle_zh_TW-5lv7yYS1.js +0 -1
- package/dist/assets/messagebundle_zh_TW-LSErOAsd.js +0 -1
- package/dist/assets/parameters-bundle.css-B68EyCuR.js +0 -278
- package/dist/assets/parameters-bundle.css-BkJSEiFx.js +0 -278
- package/dist/assets/parameters-bundle.css-CI4HNvFw.js +0 -1
- package/dist/assets/parameters-bundle.css-COeynv6D.js +0 -277
- package/dist/assets/parameters-bundle.css-CRa5DITh.js +0 -1
- package/dist/assets/parameters-bundle.css-CnIzAMdG.js +0 -3
- package/dist/assets/parameters-bundle.css-CsV5qbZp.js +0 -3
- package/dist/assets/parameters-bundle.css-DCvHNL3s.js +0 -3
- package/dist/assets/parameters-bundle.css-DK40uKOQ.js +0 -3
- package/dist/assets/parameters-bundle.css-DMfTAqMv.js +0 -2
- package/dist/assets/parameters-bundle.css-DO35k9r0.js +0 -2
- package/dist/assets/parameters-bundle.css-Df7wtRW4.js +0 -2
- package/dist/assets/parameters-bundle.css-DvAfqdlT.js +0 -3
- package/dist/assets/parameters-bundle.css-KoXGNyLG.js +0 -3
- package/dist/assets/parameters-bundle.css-P_M_rm9z.js +0 -3
- package/dist/assets/parameters-bundle.css-UJIxXHL5.js +0 -2
- package/dist/assets/parameters-bundle.css-co26r5Nz.js +0 -3
- package/dist/assets/parameters-bundle.css-uT62L0va.js +0 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MastheadCountrySelector.js","sourceRoot":"","sources":["../src/MastheadCountrySelector.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/renderer/JsxRenderer.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport UI5Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\nimport UDExMastheadMenuItem from \"./MastheadMenuItem.js\";\nimport { Mode as UDExSearchMode } from \"./Search.js\";\nimport MastheadCountrySelectorTemplate from \"./MastheadCountrySelectorTemplate.js\";\nimport AnalyticsName from \"./types/AnalyticsName.js\";\nimport { BreakpointUtils } from \"./utils/Breakpoints.js\";\nimport type UDExMastheadShell from \"./MastheadShell.js\";\nimport { NO_MATCHES_FOUND, RESULT_RETURNED, BACK_TO_REGION_LIST } from \"./generated/i18n/i18n-defaults.js\";\nimport translate from \"./utils/translate.js\";\n\n// Styles\nimport MastheadCountrySelectorCss from \"./generated/themes/MastheadCountrySelector.css.js\";\n\nexport type Region = {\n title: string,\n countries: Array<Country>,\n};\n\nexport type Country = {\n displayTitle: string,\n countryCode: string,\n url: string,\n active: boolean,\n};\n\ntype UDExMastheadCountrySelectorRegionClickEventDetail = {\n item: {\n title: string,\n countries: Array<Country>,\n },\n originalEvent: Event,\n analyticsName: AnalyticsName,\n sourceNode: HTMLElement,\n}\n\ntype UDExMastheadCountrySelectorItemClickEventDetail = {\n item: {\n displayTitle: string,\n countryCode: string,\n url: string,\n },\n originalEvent: Event,\n analyticsName: AnalyticsName,\n sourceNode: HTMLElement,\n}\n\ntype UDExMastheadCountrySelectorSearchEventDetail = {\n value: string,\n analyticsName: AnalyticsName,\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>masthead-country-selector</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/MastheadCountrySelector.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n tag: \"udex-masthead-country-selector\",\n renderer: jsxRenderer,\n styles: MastheadCountrySelectorCss,\n template: MastheadCountrySelectorTemplate,\n dependencies: [UI5Icon, UDExMastheadMenuItem],\n})\n\n/**\n * Fires when region item is clicked\n *\n * @public\n * @param {Event} originalEvent the original event object\n * @param {Object} item the clicked region item\n * @param {string} item.title the title of the region\n * @param {Array} item.countries the countries of the region\n * @param {AnalyticsName} analyticsName The analytics name for the event\n * @param {HTMLElement} sourceNode The source node which triggered the event\n */\n@event(\"region-item-click\", { bubbles: true })\n\n/**\n * Fires when region item is clicked\n *\n * @public\n * @param {Event} originalEvent the original event object\n * @param {Object} item the clicked country item\n * @param {string} item.displayTitle the display title of the country\n * @param {string} item.countryCode the country code of the country\n * @param {string} item.url the url of the country\n * @param {AnalyticsName} analyticsName The analytics name for the event\n * @param {HTMLElement} sourceNode The source node which triggered the event\n */\n@event(\"country-item-click\", { bubbles: true })\n\n/**\n * Fired event when the user typed to search field.\n *\n * @public\n * @param {string} value The search value\n * @param {AnalyticsName} analyticsName The analytics name for the event\n */\n@event(\"country-selector-search\", { bubbles: true })\n\nclass UDExMastheadCountrySelector extends UI5Element {\n eventDetails!: {\n \"country-item-click\": UDExMastheadCountrySelectorItemClickEventDetail,\n \"country-selector-search\": UDExMastheadCountrySelectorSearchEventDetail,\n \"region-item-click\": UDExMastheadCountrySelectorRegionClickEventDetail\n };\n\n /**\n * Defines active country code of the regions menu\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n activeCountryCode !: string;\n\n /**\n * Defines active country url of the regions menu\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n activeCountryUrl!: string;\n\n /**\n * Defines title of the regions menu\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n regionTitle!: string;\n\n /**\n * Defines title of the countries menu\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n countryTitle!: string;\n\n /**\n * Defines the object of the regions\n *\n * @default \"\"\n * @public\n */\n @property()\n regions!: string;\n\n /**\n * Defines the label of the search\n *\n * @default \"en-US\"\n * @public\n */\n @property()\n searchLabel!: string;\n\n /**\n * Defines display the voice button for the search field.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n showSearchVoiceButton!: boolean;\n\n /**\n * Hides the search field in the country list view.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n hideSearch!: boolean;\n\n /**\n * Defines the language voice of the search\n *\n * @default \"\"\n * @public\n */\n @property()\n languageVoice!: string;\n\n /**\n * Defines the country list of the region is opened\n *\n * @private\n */\n @property({ type: Boolean })\n _isActiveRegionOpen!: boolean;\n\n /**\n * Defines the mobile mode for component\n *\n * @private\n */\n @property({ type: Boolean })\n _isMobileMode!: boolean;\n\n @property({ type: Boolean, noAttribute: true })\n _requestRender = false;\n\n _activeRegion!: Region | null;\n _activeCountries!: Array<Country>;\n _shouldFocusBackBtn!: boolean;\n _shouldFocusRegionByIndex!: boolean;\n _accSearchResultInfo?: string;\n _activeRegionIndex!: number;\n _mastheadShell!: UDExMastheadShell;\n _countriesListHolderClassName = \"udex-masthead-country-selector__list-wrap\";\n _itemClassName = \"udex-masthead-country-selector__item\";\n _boundHandleActiveRegionClose!: () => void;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n constructor() {\n super();\n this._activeCountries = [];\n this._boundHandleActiveRegionClose = this.handleActiveRegionClose.bind(this);\n }\n\n onEnterDOM(): void {\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n this.closest(\"[udex-masthead-item]\")?.addEventListener(\"dropdown-closed\", this._boundHandleActiveRegionClose);\n }\n\n onExitDOM(): void {\n this.closest(\"[udex-masthead-item]\")?.removeEventListener(\"dropdown-closed\", this._boundHandleActiveRegionClose);\n }\n\n onAfterRendering(): void {\n this._mastheadShell = this.mastheadShell;\n this.handleFocusItem();\n this.handleOutsideClick();\n\n if (this.isSingleMode) {\n this.handleSingleRegionMode();\n }\n\n if (this._activeCountries) {\n this.checkScrollableCountriesList();\n }\n }\n\n handleActiveRegionClose(): void {\n if (!this.isSingleMode) {\n this.handleSearchReset();\n this._isActiveRegionOpen = false;\n this.setActiveRegion(null);\n }\n }\n\n handleRegionClick(e: CustomEvent): void {\n this.openCountriesByRegion(e);\n this.fireEventRegionItemClick(e);\n }\n\n handleCountryClick(e: CustomEvent): void {\n this.fireEventCountryItemClick(e);\n if (this._mastheadShell && this.isMobile) {\n this.closeMenu();\n }\n }\n\n handleSearch(e: CustomEvent): void {\n const searchTerm = e.detail.value.toLowerCase().trim() as string;\n\n if (!this._activeRegion || !this._activeRegion.countries) {\n this.setActiveCountries([]);\n return;\n }\n\n if (!searchTerm) {\n this.setActiveCountries([...this._activeRegion.countries]);\n } else {\n this.setActiveCountries(this._activeRegion.countries.filter(country => country.displayTitle.toLowerCase().includes(searchTerm)));\n }\n\n this._accSearchResultInfo = this._activeCountries.length\n ? `${this._activeCountries.length} ${this.resultReturnedText}`\n : this.noMatchesFoundText;\n\n this._shouldFocusBackBtn = false;\n this.fireDecoratorEvent(\"country-selector-search\", {\n value: e.detail.value,\n analyticsName: AnalyticsName.Header,\n });\n this.refreshRendering();\n }\n\n handleSearchReset(): void {\n this.setActiveCountries([...this._activeRegion?.countries || []]);\n this.refreshRendering();\n }\n\n handleFocusItem(): void {\n if (this._shouldFocusBackBtn) {\n this.focusBackBtn();\n }\n\n if (this._shouldFocusRegionByIndex) {\n this.focusRegionByIndex();\n }\n }\n\n refreshRendering(): void {\n this._requestRender = !this._requestRender;\n }\n\n handleOutsideClick(): void {\n document.addEventListener(\"mousedown\", (e: Event): void => {\n if (e.target !== this && !this.isMobile) {\n this.handleActiveRegionClose();\n }\n });\n }\n\n openCountriesByRegion(e: CustomEvent | KeyboardEvent): void {\n const item = e.target as UDExMastheadMenuItem;\n const activeRegion = this.regionsData[item.index];\n this.setActiveRegion(activeRegion);\n this.setActiveCountries(activeRegion.countries);\n this._isActiveRegionOpen = true;\n this._activeRegionIndex = item.index;\n this._shouldFocusBackBtn = true;\n this._shouldFocusRegionByIndex = false;\n }\n\n backToRegions(): void {\n this._isActiveRegionOpen = false;\n this.setActiveRegion(null);\n this._shouldFocusRegionByIndex = true;\n }\n\n focusNextItem(currentItem: UDExMastheadMenuItem): void {\n const currentIndex = currentItem.index;\n const nextIndex = currentIndex + 1;\n const nextItem = this.items[nextIndex];\n this.items[currentIndex]._tabIndex = \"-1\";\n nextItem._tabIndex = \"0\";\n nextItem.scrollIntoView({ block: \"center\" });\n nextItem.focus({ preventScroll: true });\n }\n\n focusPreviousItem(currentItem: UDExMastheadMenuItem): void {\n const currentIndex = currentItem.index;\n const prevIndex = currentIndex - 1;\n const prevItem = this.items[prevIndex];\n this.items[currentIndex]._tabIndex = \"-1\";\n prevItem._tabIndex = \"0\";\n prevItem.scrollIntoView({ block: \"center\" });\n prevItem.focus({ preventScroll: true });\n }\n\n focusFirstItem(): void {\n const firstItem = this.items[0];\n firstItem._tabIndex = \"0\";\n firstItem.focus();\n }\n\n handleSingleRegionMode(): void {\n this.setActiveRegion(this.regionsData[0]);\n this.setActiveCountries([...this.regionsData[0].countries]);\n this._isActiveRegionOpen = true;\n }\n\n focusBackBtn(): void {\n const backBtn = this.shadowRoot?.querySelector<HTMLElement>(\".udex-masthead-country-selector__region-back-item\") || null;\n backBtn?.focus();\n }\n\n focusRegionByIndex(): void {\n const regionItems = this.shadowRoot?.querySelectorAll<HTMLElement>(\".udex-masthead-country-selector__item_region\") || [];\n regionItems[this._activeRegionIndex].focus();\n }\n\n fireEventRegionItemClick(e: CustomEvent | KeyboardEvent): void {\n const item = e.target as UDExMastheadMenuItem;\n\n this.fireDecoratorEvent(\"region-item-click\", {\n item: {\n title: item.label,\n countries: this._activeRegion?.countries || [],\n },\n originalEvent: e,\n analyticsName: AnalyticsName.Header,\n sourceNode: item.shadowRoot?.querySelector(\".udex-masthead-menu-item\") as HTMLElement,\n });\n }\n\n fireEventCountryItemClick(e: CustomEvent | KeyboardEvent): void {\n const item = e.target as UDExMastheadMenuItem;\n const { label, url } = item;\n\n this.fireDecoratorEvent(\"country-item-click\", {\n item: {\n displayTitle: label,\n countryCode: item.getAttribute(\"_country-code\") || \"\",\n url: url || \"\",\n },\n originalEvent: e,\n analyticsName: AnalyticsName.Header,\n sourceNode: item.shadowRoot?.querySelector(\".udex-masthead-menu-item\") as HTMLElement,\n });\n }\n\n setActiveRegion(region: Region | null): void {\n this._activeRegion = region;\n }\n\n setActiveCountries(countries: Array<Country>): void {\n this._activeCountries = countries;\n }\n\n closeMenu():void {\n this._mastheadShell.closeMobileMenu();\n this._mastheadShell.mobileBtn?.focus();\n }\n\n checkScrollableCountriesList(): void {\n if (this.countryListHolder) {\n requestAnimationFrame(() => {\n if (this.isScrollableCountriesList) {\n this.addScrollableClassToCountryList();\n } else {\n this.removeScrollableClassInCountryList();\n }\n });\n }\n }\n\n handleCountryListShadowVisible(): void {\n if (this.scrollBottomCountriesList <= 1) {\n this.removeScrollableClassInCountryList();\n } else {\n this.addScrollableClassToCountryList();\n }\n }\n\n addScrollableClassToCountryList(): void {\n this.countryListHolder.classList.add(`${this._countriesListHolderClassName}_scrollable`);\n }\n\n removeScrollableClassInCountryList(): void {\n this.countryListHolder.classList.remove(`${this._countriesListHolderClassName}_scrollable`);\n }\n\n isActiveCountry(countryCode: string, url: string): boolean {\n const matchedURL = this.activeCountryUrl?.toUpperCase() === url.toUpperCase();\n const matchedCode = this.activeCountryCode?.toUpperCase() === countryCode.toUpperCase();\n return matchedURL && matchedCode;\n }\n\n get scrollBottomCountriesList(): number {\n const countriesList = this.countryListHolder;\n return countriesList.scrollHeight - countriesList.scrollTop - countriesList.clientHeight;\n }\n\n get isScrollableCountriesList(): boolean {\n const countriesList = this.countryListHolder;\n return countriesList ? countriesList.scrollHeight > countriesList.clientHeight : false;\n }\n\n get countryListHolder(): HTMLElement {\n return this.shadowRoot?.querySelector<HTMLElement>(`.${this._countriesListHolderClassName}`) as HTMLElement;\n }\n\n get noMatchesFoundText(): string {\n return translate(UDExMastheadCountrySelector, NO_MATCHES_FOUND);\n }\n\n get resultReturnedText(): string {\n return translate(UDExMastheadCountrySelector, RESULT_RETURNED);\n }\n\n get items(): Array<UDExMastheadMenuItem> {\n const items = this.shadowRoot?.querySelectorAll<UDExMastheadMenuItem>(`.${this._itemClassName}`);\n return items ? Array.from(items) : [];\n }\n\n get regionsData(): Array<Region> {\n const regions: Array<Region> = this.regions ? JSON.parse(this.regions) as Array<Region> : [];\n return regions.map(region => ({\n ...region,\n countries: region.countries.map(country => ({\n ...country,\n active: this.isActiveCountry(country.countryCode, country.url),\n })),\n }));\n }\n\n get homeSearchMode(): UDExSearchMode {\n return UDExSearchMode.HomeSearch;\n }\n\n get isSingleMode(): boolean {\n return this.regionsData.length === 1;\n }\n\n get isMobile(): boolean {\n return BreakpointUtils.isAtMost(\"M\") || this.mastheadShell?._isMobileMode;\n }\n\n get mastheadShell(): UDExMastheadShell {\n return document.querySelector<UDExMastheadShell>(\"[udex-masthead-shell]\")!;\n }\n\n get backToRegionListAccessibleName(): string {\n return `${this._activeRegion?.title} ${translate(UDExMastheadCountrySelector, BACK_TO_REGION_LIST)}`;\n }\n}\n\nUDExMastheadCountrySelector.define();\n\nexport default UDExMastheadCountrySelector;\nexport type { UDExMastheadCountrySelectorSearchEventDetail, UDExMastheadCountrySelectorItemClickEventDetail, UDExMastheadCountrySelectorRegionClickEventDetail };\n"]}
|
|
1
|
+
{"version":3,"file":"MastheadCountrySelector.js","sourceRoot":"","sources":["../src/MastheadCountrySelector.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/renderer/JsxRenderer.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport UI5Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\nimport UDExMastheadMenuItem from \"./MastheadMenuItem.js\";\nimport { Mode as UDExSearchMode } from \"./Search.js\";\nimport MastheadCountrySelectorTemplate from \"./MastheadCountrySelectorTemplate.js\";\nimport AnalyticsName from \"./types/AnalyticsName.js\";\nimport { BreakpointUtils } from \"./utils/Breakpoints.js\";\nimport type UDExMastheadShell from \"./MastheadShell.js\";\nimport { NO_MATCHES_FOUND, RESULT_RETURNED, BACK_TO_REGION_LIST } from \"./generated/i18n/i18n-defaults.js\";\nimport translate from \"./utils/translate.js\";\n\n// Styles\nimport MastheadCountrySelectorCss from \"./generated/themes/MastheadCountrySelector.css.js\";\n\nexport type Region = {\n title: string,\n countries: Array<Country>,\n};\n\nexport type Country = {\n displayTitle: string,\n countryCode: string,\n url: string,\n active: boolean,\n};\n\ntype UDExMastheadCountrySelectorRegionClickEventDetail = {\n item: {\n title: string,\n countries: Array<Country>,\n },\n originalEvent: Event,\n analyticsName: AnalyticsName,\n sourceNode: HTMLElement,\n}\n\ntype UDExMastheadCountrySelectorItemClickEventDetail = {\n item: {\n displayTitle: string,\n countryCode: string,\n url: string,\n },\n originalEvent: Event,\n analyticsName: AnalyticsName,\n sourceNode: HTMLElement,\n}\n\ntype UDExMastheadCountrySelectorSearchEventDetail = {\n value: string,\n analyticsName: AnalyticsName,\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>masthead-country-selector</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/MastheadCountrySelector.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n tag: \"udex-masthead-country-selector\",\n renderer: jsxRenderer,\n styles: MastheadCountrySelectorCss,\n template: MastheadCountrySelectorTemplate,\n dependencies: [UI5Icon, UDExMastheadMenuItem],\n})\n\n/**\n * Fires when region item is clicked\n *\n * @public\n * @param {Event} originalEvent the original event object\n * @param {Object} item the clicked region item\n * @param {string} item.title the title of the region\n * @param {Array} item.countries the countries of the region\n * @param {AnalyticsName} analyticsName The analytics name for the event\n * @param {HTMLElement} sourceNode The source node which triggered the event\n */\n@event(\"region-item-click\", { bubbles: true })\n\n/**\n * Fires when region item is clicked\n *\n * @public\n * @param {Event} originalEvent the original event object\n * @param {Object} item the clicked country item\n * @param {string} item.displayTitle the display title of the country\n * @param {string} item.countryCode the country code of the country\n * @param {string} item.url the url of the country\n * @param {AnalyticsName} analyticsName The analytics name for the event\n * @param {HTMLElement} sourceNode The source node which triggered the event\n */\n@event(\"country-item-click\", { bubbles: true })\n\n/**\n * Fired event when the user typed to search field.\n *\n * @public\n * @param {string} value The search value\n * @param {AnalyticsName} analyticsName The analytics name for the event\n */\n@event(\"country-selector-search\", { bubbles: true })\n\nclass UDExMastheadCountrySelector extends UI5Element {\n eventDetails!: {\n \"country-item-click\": UDExMastheadCountrySelectorItemClickEventDetail,\n \"country-selector-search\": UDExMastheadCountrySelectorSearchEventDetail,\n \"region-item-click\": UDExMastheadCountrySelectorRegionClickEventDetail\n };\n\n /**\n * Defines active country code of the regions menu\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n activeCountryCode !: string;\n\n /**\n * Defines active country url of the regions menu\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n activeCountryUrl!: string;\n\n /**\n * Defines title of the regions menu\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n regionTitle!: string;\n\n /**\n * Defines title of the countries menu\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n countryTitle!: string;\n\n /**\n * Defines the object of the regions\n *\n * @default \"\"\n * @public\n */\n @property()\n regions!: string;\n\n /**\n * Defines the label of the search\n *\n * @default \"en-US\"\n * @public\n */\n @property()\n searchLabel!: string;\n\n /**\n * Defines display the voice button for the search field.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n showSearchVoiceButton!: boolean;\n\n /**\n * Hides the search field in the country list view.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n hideSearch!: boolean;\n\n /**\n * Defines the language voice of the search\n *\n * @default \"\"\n * @public\n */\n @property()\n languageVoice!: string;\n\n /**\n * Defines the accessible ARIA name of the search field.\n *\n * @default \"\"\n * @public\n */\n @property()\n accessibleNameSearch!: string;\n\n /**\n * Defines the accessible ARIA name of the search reset icon.\n *\n * @default \"\"\n * @public\n */\n @property()\n accessibleNameSearchResetIcon!: string;\n\n /**\n * Defines the country list of the region is opened\n *\n * @private\n */\n @property({ type: Boolean })\n _isActiveRegionOpen!: boolean;\n\n /**\n * Defines the mobile mode for component\n *\n * @private\n */\n @property({ type: Boolean })\n _isMobileMode!: boolean;\n\n @property({ type: Boolean, noAttribute: true })\n _requestRender = false;\n\n _activeRegion!: Region | null;\n _activeCountries!: Array<Country>;\n _shouldFocusBackBtn!: boolean;\n _shouldFocusRegionByIndex!: boolean;\n _accSearchResultInfo?: string;\n _activeRegionIndex!: number;\n _mastheadShell!: UDExMastheadShell;\n _countriesListHolderClassName = \"udex-masthead-country-selector__list-wrap\";\n _itemClassName = \"udex-masthead-country-selector__item\";\n _boundHandleActiveRegionClose!: () => void;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n constructor() {\n super();\n this._activeCountries = [];\n this._boundHandleActiveRegionClose = this.handleActiveRegionClose.bind(this);\n }\n\n onEnterDOM(): void {\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n this.closest(\"[udex-masthead-item]\")?.addEventListener(\"dropdown-closed\", this._boundHandleActiveRegionClose);\n }\n\n onExitDOM(): void {\n this.closest(\"[udex-masthead-item]\")?.removeEventListener(\"dropdown-closed\", this._boundHandleActiveRegionClose);\n }\n\n onAfterRendering(): void {\n this._mastheadShell = this.mastheadShell;\n this.handleFocusItem();\n this.handleOutsideClick();\n\n if (this.isSingleMode) {\n this.handleSingleRegionMode();\n }\n\n if (this._activeCountries) {\n this.checkScrollableCountriesList();\n }\n }\n\n handleActiveRegionClose(): void {\n if (!this.isSingleMode) {\n this.handleSearchReset();\n this._isActiveRegionOpen = false;\n this.setActiveRegion(null);\n }\n }\n\n handleRegionClick(e: CustomEvent): void {\n this.openCountriesByRegion(e);\n this.fireEventRegionItemClick(e);\n }\n\n handleCountryClick(e: CustomEvent): void {\n this.fireEventCountryItemClick(e);\n if (this._mastheadShell && this.isMobile) {\n this.closeMenu();\n }\n }\n\n handleSearch(e: CustomEvent): void {\n const searchTerm = e.detail.value.toLowerCase().trim() as string;\n\n if (!this._activeRegion || !this._activeRegion.countries) {\n this.setActiveCountries([]);\n return;\n }\n\n if (!searchTerm) {\n this.setActiveCountries([...this._activeRegion.countries]);\n } else {\n this.setActiveCountries(this._activeRegion.countries.filter(country => country.displayTitle.toLowerCase().includes(searchTerm)));\n }\n\n this._accSearchResultInfo = this._activeCountries.length\n ? `${this._activeCountries.length} ${this.resultReturnedText}`\n : this.noMatchesFoundText;\n\n this._shouldFocusBackBtn = false;\n this.fireDecoratorEvent(\"country-selector-search\", {\n value: e.detail.value,\n analyticsName: AnalyticsName.Header,\n });\n this.refreshRendering();\n }\n\n handleSearchReset(): void {\n this.setActiveCountries([...this._activeRegion?.countries || []]);\n this.refreshRendering();\n }\n\n handleFocusItem(): void {\n if (this._shouldFocusBackBtn) {\n this.focusBackBtn();\n }\n\n if (this._shouldFocusRegionByIndex) {\n this.focusRegionByIndex();\n }\n }\n\n refreshRendering(): void {\n this._requestRender = !this._requestRender;\n }\n\n handleOutsideClick(): void {\n document.addEventListener(\"mousedown\", (e: Event): void => {\n if (e.target !== this && !this.isMobile) {\n this.handleActiveRegionClose();\n }\n });\n }\n\n openCountriesByRegion(e: CustomEvent | KeyboardEvent): void {\n const item = e.target as UDExMastheadMenuItem;\n const activeRegion = this.regionsData[item.index];\n this.setActiveRegion(activeRegion);\n this.setActiveCountries(activeRegion.countries);\n this._isActiveRegionOpen = true;\n this._activeRegionIndex = item.index;\n this._shouldFocusBackBtn = true;\n this._shouldFocusRegionByIndex = false;\n }\n\n backToRegions(): void {\n this._isActiveRegionOpen = false;\n this.setActiveRegion(null);\n this._shouldFocusRegionByIndex = true;\n }\n\n focusNextItem(currentItem: UDExMastheadMenuItem): void {\n const currentIndex = currentItem.index;\n const nextIndex = currentIndex + 1;\n const nextItem = this.items[nextIndex];\n this.items[currentIndex]._tabIndex = \"-1\";\n nextItem._tabIndex = \"0\";\n nextItem.scrollIntoView({ block: \"center\" });\n nextItem.focus({ preventScroll: true });\n }\n\n focusPreviousItem(currentItem: UDExMastheadMenuItem): void {\n const currentIndex = currentItem.index;\n const prevIndex = currentIndex - 1;\n const prevItem = this.items[prevIndex];\n this.items[currentIndex]._tabIndex = \"-1\";\n prevItem._tabIndex = \"0\";\n prevItem.scrollIntoView({ block: \"center\" });\n prevItem.focus({ preventScroll: true });\n }\n\n focusFirstItem(): void {\n const firstItem = this.items[0];\n firstItem._tabIndex = \"0\";\n firstItem.focus();\n }\n\n handleSingleRegionMode(): void {\n this.setActiveRegion(this.regionsData[0]);\n this.setActiveCountries([...this.regionsData[0].countries]);\n this._isActiveRegionOpen = true;\n }\n\n focusBackBtn(): void {\n const backBtn = this.shadowRoot?.querySelector<HTMLElement>(\".udex-masthead-country-selector__region-back-item\") || null;\n backBtn?.focus();\n }\n\n focusRegionByIndex(): void {\n const regionItems = this.shadowRoot?.querySelectorAll<HTMLElement>(\".udex-masthead-country-selector__item_region\") || [];\n regionItems[this._activeRegionIndex].focus();\n }\n\n fireEventRegionItemClick(e: CustomEvent | KeyboardEvent): void {\n const item = e.target as UDExMastheadMenuItem;\n\n this.fireDecoratorEvent(\"region-item-click\", {\n item: {\n title: item.label,\n countries: this._activeRegion?.countries || [],\n },\n originalEvent: e,\n analyticsName: AnalyticsName.Header,\n sourceNode: item.shadowRoot?.querySelector(\".udex-masthead-menu-item\") as HTMLElement,\n });\n }\n\n fireEventCountryItemClick(e: CustomEvent | KeyboardEvent): void {\n const item = e.target as UDExMastheadMenuItem;\n const { label, url } = item;\n\n this.fireDecoratorEvent(\"country-item-click\", {\n item: {\n displayTitle: label,\n countryCode: item.getAttribute(\"_country-code\") || \"\",\n url: url || \"\",\n },\n originalEvent: e,\n analyticsName: AnalyticsName.Header,\n sourceNode: item.shadowRoot?.querySelector(\".udex-masthead-menu-item\") as HTMLElement,\n });\n }\n\n setActiveRegion(region: Region | null): void {\n this._activeRegion = region;\n }\n\n setActiveCountries(countries: Array<Country>): void {\n this._activeCountries = countries;\n }\n\n closeMenu():void {\n this._mastheadShell.closeMobileMenu();\n this._mastheadShell.mobileBtn?.focus();\n }\n\n checkScrollableCountriesList(): void {\n if (this.countryListHolder) {\n requestAnimationFrame(() => {\n if (this.isScrollableCountriesList) {\n this.addScrollableClassToCountryList();\n } else {\n this.removeScrollableClassInCountryList();\n }\n });\n }\n }\n\n handleCountryListShadowVisible(): void {\n if (this.scrollBottomCountriesList <= 1) {\n this.removeScrollableClassInCountryList();\n } else {\n this.addScrollableClassToCountryList();\n }\n }\n\n addScrollableClassToCountryList(): void {\n this.countryListHolder.classList.add(`${this._countriesListHolderClassName}_scrollable`);\n }\n\n removeScrollableClassInCountryList(): void {\n this.countryListHolder.classList.remove(`${this._countriesListHolderClassName}_scrollable`);\n }\n\n isActiveCountry(countryCode: string, url: string): boolean {\n const matchedURL = this.activeCountryUrl?.toUpperCase() === url.toUpperCase();\n const matchedCode = this.activeCountryCode?.toUpperCase() === countryCode.toUpperCase();\n return matchedURL && matchedCode;\n }\n\n get scrollBottomCountriesList(): number {\n const countriesList = this.countryListHolder;\n return countriesList.scrollHeight - countriesList.scrollTop - countriesList.clientHeight;\n }\n\n get isScrollableCountriesList(): boolean {\n const countriesList = this.countryListHolder;\n return countriesList ? countriesList.scrollHeight > countriesList.clientHeight : false;\n }\n\n get countryListHolder(): HTMLElement {\n return this.shadowRoot?.querySelector<HTMLElement>(`.${this._countriesListHolderClassName}`) as HTMLElement;\n }\n\n get noMatchesFoundText(): string {\n return translate(UDExMastheadCountrySelector, NO_MATCHES_FOUND);\n }\n\n get resultReturnedText(): string {\n return translate(UDExMastheadCountrySelector, RESULT_RETURNED);\n }\n\n get items(): Array<UDExMastheadMenuItem> {\n const items = this.shadowRoot?.querySelectorAll<UDExMastheadMenuItem>(`.${this._itemClassName}`);\n return items ? Array.from(items) : [];\n }\n\n get regionsData(): Array<Region> {\n const regions: Array<Region> = this.regions ? JSON.parse(this.regions) as Array<Region> : [];\n return regions.map(region => ({\n ...region,\n countries: region.countries.map(country => ({\n ...country,\n active: this.isActiveCountry(country.countryCode, country.url),\n })),\n }));\n }\n\n get homeSearchMode(): UDExSearchMode {\n return UDExSearchMode.HomeSearch;\n }\n\n get isSingleMode(): boolean {\n return this.regionsData.length === 1;\n }\n\n get isMobile(): boolean {\n return BreakpointUtils.isAtMost(\"M\") || this.mastheadShell?._isMobileMode;\n }\n\n get mastheadShell(): UDExMastheadShell {\n return document.querySelector<UDExMastheadShell>(\"[udex-masthead-shell]\")!;\n }\n\n get backToRegionListAccessibleName(): string {\n return `${this._activeRegion?.title} ${translate(UDExMastheadCountrySelector, BACK_TO_REGION_LIST)}`;\n }\n}\n\nUDExMastheadCountrySelector.define();\n\nexport default UDExMastheadCountrySelector;\nexport type { UDExMastheadCountrySelectorSearchEventDetail, UDExMastheadCountrySelectorItemClickEventDetail, UDExMastheadCountrySelectorRegionClickEventDetail };\n"]}
|
|
@@ -5,7 +5,7 @@ export default function MastheadCountrySelectorTemplate() {
|
|
|
5
5
|
return (_jsx("div", { class: "udex-masthead-country-selector", children: this._isActiveRegionOpen ? activeRegionView.call(this) : regionsView.call(this) }));
|
|
6
6
|
}
|
|
7
7
|
function activeRegionView() {
|
|
8
|
-
return (_jsxs(_Fragment, { children: [_jsx("span", { class: "udex-masthead-country-selector__title", children: this.countryTitle }), !this.isSingleMode && (_jsx(UDExMastheadMenuItem, { class: "udex-masthead-country-selector__region-back-item", "accessible-role": "button", onClick: this.backToRegions, label: this._activeRegion?.title, type: "Button", part: "menu-item", "icon-start": true, "_accessible-name": this.backToRegionListAccessibleName, "is-back": "" })), !this.hideSearch && (_jsxs(_Fragment, { children: [_jsx(UDExSearch, { class: "udex-masthead-country-selector__search", "onui5-handle-value-search": this.handleSearch, "onui5-handle-value-reset": this.handleSearchReset, "onui5-submit-search-value": this.handleSearch, "language-voice": this.languageVoice, label: this.searchLabel, mode: this.homeSearchMode, "show-voice-button": this.showSearchVoiceButton, "non-interactive-submit-button": true, "show-submit-button": true }), _jsx("span", { "aria-live": "polite", "aria-atomic": "true", class: "hidden", children: this._accSearchResultInfo })] })), _jsx("div", { class: "udex-masthead-country-selector__list-container", children: _jsx("div", { class: "udex-masthead-country-selector__list-wrap", onScroll: this.handleCountryListShadowVisible, children: _jsx("ul", { class: "udex-masthead-country-selector__list udex-masthead-country-selector__list_countries", children: this._activeCountries.map((country, index) => (_jsx("li", { children: _jsx(UDExMastheadMenuItem, { class: "udex-masthead-country-selector__item udex-masthead-country-selector__item_countries", onClick: this.handleCountryClick, "accessible-role": "link", url: country.url, label: country.displayTitle, index: index, part: "menu-item", "_country-code": country.countryCode,
|
|
8
|
+
return (_jsxs(_Fragment, { children: [_jsx("span", { class: "udex-masthead-country-selector__title", children: this.countryTitle }), !this.isSingleMode && (_jsx(UDExMastheadMenuItem, { class: "udex-masthead-country-selector__region-back-item", "accessible-role": "button", onClick: this.backToRegions, label: this._activeRegion?.title, type: "Button", part: "menu-item", "icon-start": true, "_accessible-name": this.backToRegionListAccessibleName, "is-back": "" })), !this.hideSearch && (_jsxs(_Fragment, { children: [_jsx(UDExSearch, { class: "udex-masthead-country-selector__search", "onui5-handle-value-search": this.handleSearch, "onui5-handle-value-reset": this.handleSearchReset, "onui5-submit-search-value": this.handleSearch, "language-voice": this.languageVoice, label: this.searchLabel, "accessible-name": this.accessibleNameSearch, "accessible-name-reset-icon": this.accessibleNameSearchResetIcon, mode: this.homeSearchMode, "show-voice-button": this.showSearchVoiceButton, "non-interactive-submit-button": true, "show-submit-button": true }), _jsx("span", { "aria-live": "polite", "aria-atomic": "true", class: "hidden", children: this._accSearchResultInfo })] })), _jsx("div", { class: "udex-masthead-country-selector__list-container", children: _jsx("div", { class: "udex-masthead-country-selector__list-wrap", onScroll: this.handleCountryListShadowVisible, children: _jsx("ul", { class: "udex-masthead-country-selector__list udex-masthead-country-selector__list_countries", children: this._activeCountries.map((country, index) => (_jsx("li", { children: _jsx(UDExMastheadMenuItem, { class: "udex-masthead-country-selector__item udex-masthead-country-selector__item_countries", onClick: this.handleCountryClick, "accessible-role": "link", url: country.url, label: country.displayTitle, index: index, part: "menu-item", "_country-code": country.countryCode,
|
|
9
9
|
"is-nav-item": "",
|
|
10
10
|
...(country.active ? { "_is-active-country": "" } : {}) }) }, index))) }) }) })] }));
|
|
11
11
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MastheadCountrySelectorTemplate.js","sourceRoot":"","sources":["../src/MastheadCountrySelectorTemplate.tsx"],"names":[],"mappings":";AACA,OAAO,oBAAoB,MAAM,uBAAuB,CAAC;AACzD,OAAO,UAAU,MAAM,aAAa,CAAC;AAErC,MAAM,CAAC,OAAO,UAAU,+BAA+B;IACrD,OAAO,CACL,cAAK,KAAK,EAAC,gCAAgC,YACxC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAC5E,CACP,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB;IACvB,OAAO,CACL,8BACE,eAAM,KAAK,EAAC,uCAAuC,YAAE,IAAI,CAAC,YAAY,GAAQ,EAC7E,CAAC,IAAI,CAAC,YAAY,IAAI,CACrB,KAAC,oBAAoB,IACnB,KAAK,EAAC,kDAAkD,qBACxC,QAAQ,EACxB,OAAO,EAAE,IAAI,CAAC,aAAa,EAC3B,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,EAChC,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,WAAW,gBACJ,IAAI,EACV,kBAAkB,EAAE,IAAI,CAAC,8BAA8B,EAAE,SAAS,EAAE,EAAE,GACvD,CACxB,EACA,CAAC,IAAI,CAAC,UAAU,IAAI,CACnB,8BACE,KAAC,UAAU,IACT,KAAK,EAAC,wCAAwC,+BACnB,IAAI,CAAC,YAAY,8BAClB,IAAI,CAAC,iBAAiB,+BACrB,IAAI,CAAC,YAAY,oBAC5B,IAAI,CAAC,aAAa,EAClC,KAAK,EAAE,IAAI,CAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"MastheadCountrySelectorTemplate.js","sourceRoot":"","sources":["../src/MastheadCountrySelectorTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import type UDExMastheadCountrySelector from \"./MastheadCountrySelector.js\";\nimport UDExMastheadMenuItem from \"./MastheadMenuItem.js\";\nimport UDExSearch from \"./Search.js\";\n\nexport default function MastheadCountrySelectorTemplate(this: UDExMastheadCountrySelector) {\n return (\n <div class=\"udex-masthead-country-selector\">\n {this._isActiveRegionOpen ? activeRegionView.call(this) : regionsView.call(this)}\n </div>\n );\n}\n\nfunction activeRegionView(this: UDExMastheadCountrySelector) {\n return (\n <>\n <span class=\"udex-masthead-country-selector__title\">{this.countryTitle}</span>\n {!this.isSingleMode && (\n <UDExMastheadMenuItem\n class=\"udex-masthead-country-selector__region-back-item\"\n accessible-role=\"button\"\n onClick={this.backToRegions}\n label={this._activeRegion?.title}\n type=\"Button\"\n part=\"menu-item\"\n icon-start={true}\n {...{ \"_accessible-name\": this.backToRegionListAccessibleName, \"is-back\": \"\" }}>\n </UDExMastheadMenuItem>\n )}\n {!this.hideSearch && (\n <>\n <UDExSearch\n class=\"udex-masthead-country-selector__search\"\n onui5-handle-value-search={this.handleSearch}\n onui5-handle-value-reset={this.handleSearchReset}\n onui5-submit-search-value={this.handleSearch}\n language-voice={this.languageVoice}\n label={this.searchLabel}\n accessible-name={this.accessibleNameSearch}\n accessible-name-reset-icon={this.accessibleNameSearchResetIcon}\n mode={this.homeSearchMode}\n show-voice-button={this.showSearchVoiceButton}\n non-interactive-submit-button={true}\n show-submit-button={true}>\n </UDExSearch>\n <span aria-live=\"polite\" aria-atomic=\"true\" class=\"hidden\">{this._accSearchResultInfo}</span>\n </>\n )}\n <div class=\"udex-masthead-country-selector__list-container\">\n <div class=\"udex-masthead-country-selector__list-wrap\" onScroll={this.handleCountryListShadowVisible}>\n <ul class=\"udex-masthead-country-selector__list udex-masthead-country-selector__list_countries\">\n {this._activeCountries.map((country, index) => (\n <li key={index}>\n <UDExMastheadMenuItem\n class=\"udex-masthead-country-selector__item udex-masthead-country-selector__item_countries\"\n onClick={this.handleCountryClick as any}\n accessible-role=\"link\"\n url={country.url}\n label={country.displayTitle}\n index={index}\n part=\"menu-item\"\n {...{\n \"_country-code\": country.countryCode,\n \"is-nav-item\": \"\",\n ...(country.active ? { \"_is-active-country\": \"\" } : {}),\n }}>\n </UDExMastheadMenuItem>\n </li>\n ))}\n </ul>\n </div>\n </div>\n </>\n );\n}\n\nfunction regionsView(this: UDExMastheadCountrySelector) {\n return (\n <>\n <span class=\"udex-masthead-country-selector__title\">{this.regionTitle}</span>\n <ul class=\"udex-masthead-country-selector__list\">\n {this.regionsData.map((region, index) => (\n <li key={index}>\n <UDExMastheadMenuItem\n onClick={this.handleRegionClick as any}\n index={index}\n accessible-role=\"button\"\n class=\"udex-masthead-country-selector__item udex-masthead-country-selector__item_region\"\n aria-haspopup=\"true\"\n type=\"Button\"\n part=\"menu-item\"\n has-border={true}\n icon-end={true}\n label={region.title}\n {...{ \"is-nav-item\": \"\" }}>\n </UDExMastheadMenuItem>\n </li>\n ))}\n </ul>\n </>\n );\n}\n"]}
|
package/dist/MessageStrip.d.ts
CHANGED
|
@@ -94,6 +94,7 @@ declare class UDExMessageStrip extends MessageStrip {
|
|
|
94
94
|
get isNotIconStatusType(): boolean;
|
|
95
95
|
get hasIcon(): boolean;
|
|
96
96
|
get isDesignActionOrIsNotIconType(): boolean;
|
|
97
|
+
get _closableText(): string;
|
|
97
98
|
get hiddenText(): string;
|
|
98
99
|
}
|
|
99
100
|
export default UDExMessageStrip;
|
package/dist/MessageStrip.js
CHANGED
|
@@ -125,6 +125,12 @@ let UDExMessageStrip = UDExMessageStrip_1 = class UDExMessageStrip extends Messa
|
|
|
125
125
|
get isDesignActionOrIsNotIconType() {
|
|
126
126
|
return this.isDecorativeDesign || this.isNotIconStatusType;
|
|
127
127
|
}
|
|
128
|
+
get _closableText() {
|
|
129
|
+
if (!MessageStrip.i18nBundle) {
|
|
130
|
+
return "";
|
|
131
|
+
}
|
|
132
|
+
return super._closableText;
|
|
133
|
+
}
|
|
128
134
|
get hiddenText() {
|
|
129
135
|
const statusText = this.isDecorativeDesign ? (this.textStatusTypeMapping()[this.design] ?? "") : this.textStatusTypeMapping()[this.design];
|
|
130
136
|
return `${statusText} ${this.hideCloseButton ? "" : this._closableText}`.trim();
|
package/dist/MessageStrip.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageStrip.js","sourceRoot":"","sources":["../src/MessageStrip.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport type { Slot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport MessageStrip from \"@ui5/webcomponents/dist/MessageStrip.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { I18nText } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n MESSAGE_STRIP_ERROR,\n MESSAGE_STRIP_INFORMATION,\n MESSAGE_STRIP_SUCCESS,\n MESSAGE_STRIP_WARNING,\n MESSAGE_STRIP_ACTION,\n MESSAGE_STRIP_CLOSE_BUTTON,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport { UDExMessageStripDesign, UDExMessageStripStatusType } from \"./types/MessageStrip.js\";\nimport translate from \"./utils/translate.js\";\n\n// Template\nimport MessageStripTemplate from \"./MessageStripTemplate.js\";\n\n// Styles\nimport MessageStripCss from \"./generated/themes/MessageStrip.css.js\";\n\n/**\n * @class\n *\n * @constructor\n * @extends MessageStrip\n * @tagname udex-message-strip\n * @public\n */\n@customElement({\n tag: \"udex-message-strip\",\n renderer: jsxRenderer,\n styles: [MessageStrip.styles, MessageStripCss],\n template: MessageStripTemplate,\n})\n\nclass UDExMessageStrip extends MessageStrip {\n /**\n * Defines the component type.\n *\n * @public\n */\n @property()\n /** @ts-expect-error */\n design!: `${UDExMessageStripDesign}` = UDExMessageStripDesign.Neutral;\n\n /**\n * Defines the component Status Type.\n *\n * `Text` value is DEPRECATED! Use `Icon` instead.\n *\n * @public\n */\n @property()\n statusType: `${UDExMessageStripStatusType}` = UDExMessageStripStatusType.Icon;\n\n /**\n * Defines whether the MessageStrip renders close button.\n *\n * @public\n */\n @property({ type: Boolean })\n hideCloseButton!: boolean;\n\n /**\n * Defines custom status text for information type\n *\n * @default \"\"\n * @public\n */\n @property()\n statusInformationText!: string;\n\n /**\n * Defines custom status text for success type\n * @default \"\"\n * @public\n */\n @property()\n statusSuccessText!: string;\n\n /**\n * Defines custom status text for error type\n * @default \"\"\n * @public\n */\n @property()\n statusErrorText!: string;\n\n /**\n * Defines custom status text for warning type\n * @default \"\"\n * @public\n */\n @property()\n statusWarningText!: string;\n\n /**\n * Defines accessible name for close icon\n *\n * @default \"\"\n * @public\n */\n @property()\n closeIconAccessibleName!: string;\n\n /**\n * Defines tooltip for close icon\n *\n * @default \"\"\n * @public\n */\n @property()\n closeIconTooltip!: string;\n\n /**\n * Defines the content of the component.\n *\n * @slot\n * @public\n */\n @slot({ type: Node }) default!: Slot<Node>;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n onBeforeRendering() {\n if (this.isNotIconStatusType || (this.isDecorativeDesign && this.icon.length === 0)) {\n this.hideIcon = true;\n }\n }\n\n getTranslation(text: I18nText): string {\n return translate(UDExMessageStrip, text);\n }\n\n textStatusTypeMapping(): Record<string, string> {\n return {\n [UDExMessageStripDesign.Information]: this.statusInformationText || this.getTranslation(MESSAGE_STRIP_INFORMATION),\n [UDExMessageStripDesign.Positive]: this.statusSuccessText || this.getTranslation(MESSAGE_STRIP_SUCCESS),\n [UDExMessageStripDesign.Negative]: this.statusErrorText || this.getTranslation(MESSAGE_STRIP_ERROR),\n [UDExMessageStripDesign.Warning]: this.statusWarningText || this.getTranslation(MESSAGE_STRIP_WARNING),\n [UDExMessageStripDesign.Action]: this.getTranslation(MESSAGE_STRIP_ACTION),\n [UDExMessageStripDesign.Neutral]: this.getTranslation(MESSAGE_STRIP_ACTION),\n };\n }\n\n isDesignAction(): boolean {\n return this.design === UDExMessageStripDesign.Action || this.design === UDExMessageStripDesign.Neutral;\n }\n\n get isDecorativeDesign(): boolean {\n const decorativeDesigns: string[] = [\n UDExMessageStripDesign.Action,\n UDExMessageStripDesign.Neutral,\n UDExMessageStripDesign.GreyLight,\n UDExMessageStripDesign.GreyDark,\n UDExMessageStripDesign.RedLight,\n UDExMessageStripDesign.RedDark,\n UDExMessageStripDesign.MangoLight,\n UDExMessageStripDesign.MangoDark,\n UDExMessageStripDesign.GreenLight,\n UDExMessageStripDesign.GreenDark,\n UDExMessageStripDesign.TealLight,\n UDExMessageStripDesign.TealDark,\n UDExMessageStripDesign.BlueLight,\n UDExMessageStripDesign.BlueDark,\n UDExMessageStripDesign.IndigoLight,\n UDExMessageStripDesign.IndigoDark,\n UDExMessageStripDesign.PinkLight,\n UDExMessageStripDesign.PinkDark,\n UDExMessageStripDesign.RaspberryLight,\n UDExMessageStripDesign.RaspberryDark,\n ];\n return decorativeDesigns.includes(this.design);\n }\n\n get isDesignWarning(): boolean {\n return this.design === UDExMessageStripDesign.Warning;\n }\n\n _closeClick(): void {\n this.fireDecoratorEvent(\"close\");\n }\n\n get shouldHideIcon(): boolean {\n if (this.isDecorativeDesign) {\n return this.icon.length === 0;\n }\n if (this.isNotIconStatusType) {\n return this.hideIcon || this.icon.length === 0;\n }\n return this.hideIcon;\n }\n\n get hideTextStatus(): boolean {\n return this.statusType !== UDExMessageStripStatusType.Text || this.isDecorativeDesign;\n }\n\n get textStatus(): string | undefined {\n if (!this.isDecorativeDesign) {\n return this.textStatusTypeMapping()[this.design];\n }\n }\n\n get _closeButtonText(): string {\n return this.closeIconTooltip || `${this.textStatus ?? \"\"} ${this.getTranslation(MESSAGE_STRIP_CLOSE_BUTTON)}`;\n }\n\n get isNotIconStatusType(): boolean {\n return this.statusType !== UDExMessageStripStatusType.Icon;\n }\n\n get hasIcon(): boolean {\n return this.icon.length > 0;\n }\n\n get isDesignActionOrIsNotIconType(): boolean {\n return this.isDecorativeDesign || this.isNotIconStatusType;\n }\n\n get hiddenText(): string {\n const statusText = this.isDecorativeDesign ? (this.textStatusTypeMapping()[this.design] ?? \"\") : this.textStatusTypeMapping()[this.design];\n return `${statusText} ${this.hideCloseButton ? \"\" : this._closableText}`.trim();\n }\n}\n\nUDExMessageStrip.define();\n\nexport default UDExMessageStrip;\n"]}
|
|
1
|
+
{"version":3,"file":"MessageStrip.js","sourceRoot":"","sources":["../src/MessageStrip.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot-strict.js\";\nimport type { Slot } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/dist/renderer/JsxRenderer.js\";\nimport MessageStrip from \"@ui5/webcomponents/dist/MessageStrip.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { I18nText } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n MESSAGE_STRIP_ERROR,\n MESSAGE_STRIP_INFORMATION,\n MESSAGE_STRIP_SUCCESS,\n MESSAGE_STRIP_WARNING,\n MESSAGE_STRIP_ACTION,\n MESSAGE_STRIP_CLOSE_BUTTON,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport { UDExMessageStripDesign, UDExMessageStripStatusType } from \"./types/MessageStrip.js\";\nimport translate from \"./utils/translate.js\";\n\n// Template\nimport MessageStripTemplate from \"./MessageStripTemplate.js\";\n\n// Styles\nimport MessageStripCss from \"./generated/themes/MessageStrip.css.js\";\n\n/**\n * @class\n *\n * @constructor\n * @extends MessageStrip\n * @tagname udex-message-strip\n * @public\n */\n@customElement({\n tag: \"udex-message-strip\",\n renderer: jsxRenderer,\n styles: [MessageStrip.styles, MessageStripCss],\n template: MessageStripTemplate,\n})\n\nclass UDExMessageStrip extends MessageStrip {\n /**\n * Defines the component type.\n *\n * @public\n */\n @property()\n /** @ts-expect-error */\n design!: `${UDExMessageStripDesign}` = UDExMessageStripDesign.Neutral;\n\n /**\n * Defines the component Status Type.\n *\n * `Text` value is DEPRECATED! Use `Icon` instead.\n *\n * @public\n */\n @property()\n statusType: `${UDExMessageStripStatusType}` = UDExMessageStripStatusType.Icon;\n\n /**\n * Defines whether the MessageStrip renders close button.\n *\n * @public\n */\n @property({ type: Boolean })\n hideCloseButton!: boolean;\n\n /**\n * Defines custom status text for information type\n *\n * @default \"\"\n * @public\n */\n @property()\n statusInformationText!: string;\n\n /**\n * Defines custom status text for success type\n * @default \"\"\n * @public\n */\n @property()\n statusSuccessText!: string;\n\n /**\n * Defines custom status text for error type\n * @default \"\"\n * @public\n */\n @property()\n statusErrorText!: string;\n\n /**\n * Defines custom status text for warning type\n * @default \"\"\n * @public\n */\n @property()\n statusWarningText!: string;\n\n /**\n * Defines accessible name for close icon\n *\n * @default \"\"\n * @public\n */\n @property()\n closeIconAccessibleName!: string;\n\n /**\n * Defines tooltip for close icon\n *\n * @default \"\"\n * @public\n */\n @property()\n closeIconTooltip!: string;\n\n /**\n * Defines the content of the component.\n *\n * @slot\n * @public\n */\n @slot({ type: Node }) default!: Slot<Node>;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n onBeforeRendering() {\n if (this.isNotIconStatusType || (this.isDecorativeDesign && this.icon.length === 0)) {\n this.hideIcon = true;\n }\n }\n\n getTranslation(text: I18nText): string {\n return translate(UDExMessageStrip, text);\n }\n\n textStatusTypeMapping(): Record<string, string> {\n return {\n [UDExMessageStripDesign.Information]: this.statusInformationText || this.getTranslation(MESSAGE_STRIP_INFORMATION),\n [UDExMessageStripDesign.Positive]: this.statusSuccessText || this.getTranslation(MESSAGE_STRIP_SUCCESS),\n [UDExMessageStripDesign.Negative]: this.statusErrorText || this.getTranslation(MESSAGE_STRIP_ERROR),\n [UDExMessageStripDesign.Warning]: this.statusWarningText || this.getTranslation(MESSAGE_STRIP_WARNING),\n [UDExMessageStripDesign.Action]: this.getTranslation(MESSAGE_STRIP_ACTION),\n [UDExMessageStripDesign.Neutral]: this.getTranslation(MESSAGE_STRIP_ACTION),\n };\n }\n\n isDesignAction(): boolean {\n return this.design === UDExMessageStripDesign.Action || this.design === UDExMessageStripDesign.Neutral;\n }\n\n get isDecorativeDesign(): boolean {\n const decorativeDesigns: string[] = [\n UDExMessageStripDesign.Action,\n UDExMessageStripDesign.Neutral,\n UDExMessageStripDesign.GreyLight,\n UDExMessageStripDesign.GreyDark,\n UDExMessageStripDesign.RedLight,\n UDExMessageStripDesign.RedDark,\n UDExMessageStripDesign.MangoLight,\n UDExMessageStripDesign.MangoDark,\n UDExMessageStripDesign.GreenLight,\n UDExMessageStripDesign.GreenDark,\n UDExMessageStripDesign.TealLight,\n UDExMessageStripDesign.TealDark,\n UDExMessageStripDesign.BlueLight,\n UDExMessageStripDesign.BlueDark,\n UDExMessageStripDesign.IndigoLight,\n UDExMessageStripDesign.IndigoDark,\n UDExMessageStripDesign.PinkLight,\n UDExMessageStripDesign.PinkDark,\n UDExMessageStripDesign.RaspberryLight,\n UDExMessageStripDesign.RaspberryDark,\n ];\n return decorativeDesigns.includes(this.design);\n }\n\n get isDesignWarning(): boolean {\n return this.design === UDExMessageStripDesign.Warning;\n }\n\n _closeClick(): void {\n this.fireDecoratorEvent(\"close\");\n }\n\n get shouldHideIcon(): boolean {\n if (this.isDecorativeDesign) {\n return this.icon.length === 0;\n }\n if (this.isNotIconStatusType) {\n return this.hideIcon || this.icon.length === 0;\n }\n return this.hideIcon;\n }\n\n get hideTextStatus(): boolean {\n return this.statusType !== UDExMessageStripStatusType.Text || this.isDecorativeDesign;\n }\n\n get textStatus(): string | undefined {\n if (!this.isDecorativeDesign) {\n return this.textStatusTypeMapping()[this.design];\n }\n }\n\n get _closeButtonText(): string {\n return this.closeIconTooltip || `${this.textStatus ?? \"\"} ${this.getTranslation(MESSAGE_STRIP_CLOSE_BUTTON)}`;\n }\n\n get isNotIconStatusType(): boolean {\n return this.statusType !== UDExMessageStripStatusType.Icon;\n }\n\n get hasIcon(): boolean {\n return this.icon.length > 0;\n }\n\n get isDesignActionOrIsNotIconType(): boolean {\n return this.isDecorativeDesign || this.isNotIconStatusType;\n }\n\n get _closableText(): string {\n if (!MessageStrip.i18nBundle) {\n return \"\";\n }\n return super._closableText;\n }\n\n get hiddenText(): string {\n const statusText = this.isDecorativeDesign ? (this.textStatusTypeMapping()[this.design] ?? \"\") : this.textStatusTypeMapping()[this.design];\n return `${statusText} ${this.hideCloseButton ? \"\" : this._closableText}`.trim();\n }\n}\n\nUDExMessageStrip.define();\n\nexport default UDExMessageStrip;\n"]}
|
package/dist/SearchTemplate.js
CHANGED
|
@@ -16,7 +16,7 @@ import UDExControlButtonDesign from "./types/ControlButtonDesign.js";
|
|
|
16
16
|
import UI5Button from "@ui5/webcomponents/dist/Button.js";
|
|
17
17
|
import UI5ButtonDesign from "@ui5/webcomponents/dist/types/ButtonDesign.js";
|
|
18
18
|
export default function SearchTemplate() {
|
|
19
|
-
return (_jsxs(_Fragment, { children: [_jsxs("div", { class: `udex-search__root ${this.searchClasses}`, children: [this.isShowSearchHomePrefix ? renderSearchHomePrefix.call(this) : "", _jsxs("form", { class: `udex-search__container ${this.focusClasses} ${this.isNotEmptyClass}`, children: [this.labelAnimationDisabled ? renderInputWithStaticLabel.call(this) : renderInputWithAnimatedLabel.call(this), this.open ? (_jsx("span", { "aria-live": "polite", "aria-atomic": "true", id: "search-description", class: "hidden", "aria-hidden": "true", children: this.suggestionsDescription })) : "", _jsxs("div", { class: "udex-search__icons", children: [this.isShowHomeResetButton ? (_jsx(UDExButton, { id: "reset-button", class: "udex-search__button udex-search__reset-button", size: UDExButtonSize.Small, design: UDExButtonDesign.Default, tooltip: this.tooltipInfo.tooltipResetButton, onClick: this.onReset, onKeyDown: this.handleKeyDownReset, children: _jsx(UI5Icon, { class: "udex-search__button-icon", "accessible-
|
|
19
|
+
return (_jsxs(_Fragment, { children: [_jsxs("div", { class: `udex-search__root ${this.searchClasses}`, children: [this.isShowSearchHomePrefix ? renderSearchHomePrefix.call(this) : "", _jsxs("form", { class: `udex-search__container ${this.focusClasses} ${this.isNotEmptyClass}`, children: [this.labelAnimationDisabled ? renderInputWithStaticLabel.call(this) : renderInputWithAnimatedLabel.call(this), this.open ? (_jsx("span", { "aria-live": "polite", "aria-atomic": "true", id: "search-description", class: "hidden", "aria-hidden": "true", children: this.suggestionsDescription })) : "", _jsxs("div", { class: "udex-search__icons", children: [this.isShowHomeResetButton ? (_jsx(UDExButton, { id: "reset-button", class: "udex-search__button udex-search__reset-button", size: UDExButtonSize.Small, design: UDExButtonDesign.Default, tooltip: this.tooltipInfo.tooltipResetButton, "accessible-name": this.accInfo.accessibleNameResetIcon, onClick: this.onReset, onKeyDown: this.handleKeyDownReset, children: _jsx(UI5Icon, { class: "udex-search__button-icon", "accessible-role": "presentation", name: decline }) })) : "", this.isShowResetButton ? (_jsx(UDExControlButton, { id: "reset-button", class: "udex-search__reset-button", design: UDExControlButtonDesign.Default, tooltip: this.tooltipInfo.tooltipResetButton, icon: decline, size: UDExButtonSize.Large, "accessible-name": this.accInfo.accessibleNameResetIcon, onClick: this.onReset, onKeyDown: this.handleKeyDownReset })) : "", this.isVoiceButton ? (_jsx(UDExButton, { id: "voice-button", class: `udex-search__button udex-search__voice-button ${this.voiceActiveClass}`, design: UDExButtonDesign.Default, size: UDExButtonSize.Small, icon: microphone, tooltip: this.tooltipInfo.tooltipVoiceButton, onClick: this.onVoice })) : "", this.showNonInteractiveButton ? (_jsx(UI5Icon, { class: "udex-search__icon", "aria-hidden": "true", "accessible-name": this.accInfo.accessibleNameSearchIcon, name: search })) : "", this.showSubmitHomeButton ? (_jsx(UDExButton, { id: "submit-button", class: `udex-search__button udex-search__submit-button ${this.searchButtonActiveClass}`, design: UDExButtonDesign.Default, icon: search, size: UDExButtonSize.Small, "accessible-name": this.accInfo.accessibleNameSearchIcon, tooltip: this.tooltipInfo.tooltipSubmitButton, onClick: this.onSubmit })) : "", this.showSubmitStandardButton ? (_jsx(UDExControlButton, { id: "submit-button", class: "udex-search__submit-button", size: UDExButtonSize.Large, design: UDExControlButtonDesign.Default, icon: search, tooltip: this.tooltipInfo.tooltipSubmitButton, onClick: this.onSubmit, "accessible-name": this.accInfo.accessibleNameSearchIcon })) : ""] })] })] }), renderSearchSuggestionPopover.call(this)] }));
|
|
20
20
|
}
|
|
21
21
|
function renderSearchHomePrefix() {
|
|
22
22
|
return (_jsxs("div", { class: `udex-search__prefix ${this.prefixWrapperClasses}`, children: [_jsxs("button", { type: "button", role: "combobox", "aria-expanded": this._prefixDropdownExpanded, "aria-label": this.labelPrefix, "aria-haspopup": "true", "aria-controls": "udex-search-prefix", class: "udex-search__prefix-button", onClick: this.handleDropdownClick, children: [_jsx("span", { class: "udex-search__prefix-label", children: this.labelPrefix }), _jsx(UI5Icon, { class: "udex-search__prefix-icon", name: slimArrowDown, mode: UI5IconMode.Decorative })] }), _jsx(UI5Popover, { id: "udex-search-prefix", class: this.prefixPopoverClasses, "hide-arrow": true, placement: UI5PopoverPlacement.Bottom, "horizontal-align": UI5PopoverHAlign.Start, style: this.prefixPopoverStyles, onClose: this.handleAfterClosePrefixPopover, children: _jsx("slot", {}) })] }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchTemplate.js","sourceRoot":"","sources":["../src/SearchTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import type UDExSearch from \"./Search.js\";\nimport type { SuggestionList } from \"./Search.js\";\nimport slimArrowDown from \"@ui5/webcomponents-icons/dist/slim-arrow-down.js\";\nimport search from \"@ui5/webcomponents-icons/dist/search.js\";\nimport decline from \"@ui5/webcomponents-icons/dist/decline.js\";\nimport microphone from \"@ui5/webcomponents-icons/dist/microphone.js\";\nimport UDExButton from \"./Button.js\";\nimport UDExButtonDesign from \"./types/ButtonDesign.js\";\nimport UDExButtonSize from \"./types/ButtonSize.js\";\nimport UI5Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport UI5IconMode from \"@ui5/webcomponents/dist/types/IconMode.js\";\nimport UI5Popover from \"@ui5/webcomponents/dist/Popover.js\";\nimport UI5PopoverPlacement from \"@ui5/webcomponents/dist/types/PopoverPlacement.js\";\nimport UI5PopoverHAlign from \"@ui5/webcomponents/dist/types/PopoverHorizontalAlign.js\";\nimport UDExControlButton from \"./ControlButton.js\";\nimport UDExControlButtonDesign from \"./types/ControlButtonDesign.js\";\nimport UI5Button from \"@ui5/webcomponents/dist/Button.js\";\nimport UI5ButtonDesign from \"@ui5/webcomponents/dist/types/ButtonDesign.js\";\n\nexport default function SearchTemplate(this: UDExSearch) {\n return (\n <>\n <div class={`udex-search__root ${this.searchClasses}`}>\n { this.isShowSearchHomePrefix ? renderSearchHomePrefix.call(this) : \"\" }\n\n <form class={`udex-search__container ${this.focusClasses} ${this.isNotEmptyClass}`}>\n { this.labelAnimationDisabled ? renderInputWithStaticLabel.call(this) : renderInputWithAnimatedLabel.call(this) }\n\n {\n this.open ? (\n <span\n aria-live=\"polite\"\n aria-atomic=\"true\"\n id=\"search-description\"\n class=\"hidden\"\n aria-hidden=\"true\"\n >\n {this.suggestionsDescription}\n </span>\n ) : \"\"\n }\n\n <div class=\"udex-search__icons\">\n {\n this.isShowHomeResetButton ? (\n <UDExButton\n id=\"reset-button\"\n class=\"udex-search__button udex-search__reset-button\"\n size={UDExButtonSize.Small}\n design={UDExButtonDesign.Default}\n tooltip={this.tooltipInfo.tooltipResetButton}\n onClick={this.onReset as any}\n onKeyDown={this.handleKeyDownReset}\n >\n <UI5Icon\n class=\"udex-search__button-icon\"\n accessible-name={this.accInfo.accessibleNameResetIcon}\n accessible-role=\"presentation\"\n name={decline}\n ></UI5Icon>\n </UDExButton>\n ) : \"\"\n }\n\n {\n this.isShowResetButton ? (\n <UDExControlButton\n id=\"reset-button\"\n class=\"udex-search__reset-button\"\n design={UDExControlButtonDesign.Default}\n tooltip={this.tooltipInfo.tooltipResetButton}\n icon={decline}\n size={UDExButtonSize.Large}\n accessible-name={this.accInfo.accessibleNameResetIcon}\n onClick={this.onReset as any}\n onKeyDown={this.handleKeyDownReset}\n ></UDExControlButton>\n ) : \"\"\n }\n\n {\n this.isVoiceButton ? (\n <UDExButton\n id=\"voice-button\"\n class={`udex-search__button udex-search__voice-button ${this.voiceActiveClass}`}\n design={UDExButtonDesign.Default}\n size={UDExButtonSize.Small}\n icon={microphone}\n tooltip={this.tooltipInfo.tooltipVoiceButton}\n onClick={this.onVoice as any}\n ></UDExButton>\n ) : \"\"\n }\n\n {\n this.showNonInteractiveButton ? (\n <UI5Icon\n class=\"udex-search__icon\"\n aria-hidden=\"true\"\n accessible-name={this.accInfo.accessibleNameSearchIcon}\n name={search}\n ></UI5Icon>\n ) : \"\"\n }\n\n {\n this.showSubmitHomeButton ? (\n <UDExButton\n id=\"submit-button\"\n class={`udex-search__button udex-search__submit-button ${this.searchButtonActiveClass}`}\n design={UDExButtonDesign.Default}\n icon={search}\n size={UDExButtonSize.Small}\n tooltip={this.tooltipInfo.tooltipSubmitButton}\n onClick={this.onSubmit as any}\n ></UDExButton>\n ) : \"\"\n }\n\n {\n this.showSubmitStandardButton ? (\n <UDExControlButton\n id=\"submit-button\"\n class=\"udex-search__submit-button\"\n size={UDExButtonSize.Large}\n design={UDExControlButtonDesign.Default}\n icon={search}\n tooltip={this.tooltipInfo.tooltipSubmitButton}\n onClick={this.onSubmit as any}\n ></UDExControlButton>\n ) : \"\"\n }\n </div>\n </form>\n </div>\n\n { renderSearchSuggestionPopover.call(this) }\n </>\n );\n}\n\nfunction renderSearchHomePrefix(this: UDExSearch) {\n return (\n <div class={`udex-search__prefix ${this.prefixWrapperClasses}`}>\n <button\n type=\"button\"\n role=\"combobox\"\n aria-expanded={this._prefixDropdownExpanded}\n aria-label={this.labelPrefix}\n aria-haspopup=\"true\"\n aria-controls=\"udex-search-prefix\"\n class=\"udex-search__prefix-button\"\n onClick={this.handleDropdownClick}\n >\n <span class=\"udex-search__prefix-label\">{this.labelPrefix}</span>\n <UI5Icon\n class=\"udex-search__prefix-icon\"\n name={slimArrowDown}\n mode={UI5IconMode.Decorative}\n ></UI5Icon>\n </button>\n\n <UI5Popover\n id=\"udex-search-prefix\"\n class={this.prefixPopoverClasses}\n hide-arrow\n placement={UI5PopoverPlacement.Bottom}\n horizontal-align={UI5PopoverHAlign.Start}\n style={this.prefixPopoverStyles}\n onClose={this.handleAfterClosePrefixPopover}\n >\n <slot></slot>\n </UI5Popover>\n </div>\n );\n}\n\nfunction renderSearchInput(this: UDExSearch, placeholder: boolean = false) {\n return (\n <input\n role=\"searchbox\"\n id=\"search-input\"\n type=\"search\"\n name=\"search\"\n class=\"udex-search__field\"\n autocomplete=\"off\"\n aria-autocomplete=\"list\"\n aria-haspopup={this.getAriaHasPopup}\n aria-label={this.accInfo.ariaLabel}\n aria-describedby=\"search-description\"\n {...(placeholder ? { placeholder: this.effectivePlaceholder } : {})}\n maxlength={this.maxlength}\n value={this.value}\n onInput={this.handleSearchChange}\n onKeyDown={this.handleKeyDown}\n onFocus={this.handleFocus}\n onFocusOut={this.handleFocusout}\n onBlur={this.handleBlur}\n onClick={this.handleInputClick}\n />\n );\n}\n\nfunction renderInputWithStaticLabel(this: UDExSearch) {\n return renderSearchInput.call(this, true);\n}\n\nfunction renderInputWithAnimatedLabel(this: UDExSearch) {\n return (\n <>\n {\n this.label ? (\n <label for=\"search-input\" class={this.labelClasses}>\n {this.label}\n </label>\n ) : \"\"\n }\n\n { renderSearchInput.call(this, false) }\n </>\n );\n}\n\nfunction renderSearchSuggestionPopover(this: UDExSearch) {\n return (\n <UI5Popover\n class={`udex-search-suggestions__root ${this.homeSearchPopoverClass}`}\n hide-arrow\n prevent-initial-focus\n prevent-focus-restore\n placement={UI5PopoverPlacement.Bottom}\n horizontal-align={UI5PopoverHAlign.End}\n style={this.popoverStyles}\n id={this.getSuggestionsPopoverId}\n aria-orientation=\"vertical\"\n onKeyDown={this.handleKeyPressSuggestionList}\n accessible-name={this.suggestionsAccessibleName}\n >\n {\n this.showNoResultMessage ? (\n <span class=\"udex-search-suggestions__message\">{this.noResultMessage}</span>\n ) : renderSearchSuggestionPopoverResults.call(this)\n }\n </UI5Popover>\n );\n}\n\nfunction renderSearchSuggestionPopoverResults(this: UDExSearch) {\n return (\n <div role=\"tree\">\n {\n this.isShowSuggestedList ? (\n renderSearchSuggestionPopoverResultsSuggestedList.call(this)\n ) : \"\"\n }\n\n {\n this.isShowRecommendedList ? (\n renderSearchSuggestionPopoverResultsRecommendedList.call(this)\n ) : \"\"\n }\n </div>\n );\n}\n\nfunction renderSearchSuggestionPopoverResultsSuggestedList(this: UDExSearch) {\n return (\n <div class=\"udex-search-suggestions__block\" role=\"treeitem\">\n {\n this.suggestedHeading ? (\n <span class=\"udex-search-suggestions__heading\" id=\"suggested-heading\">\n {this.suggestedHeading}\n </span>\n ) : \"\"\n }\n\n <div class=\"udex-search-suggestions__list\"\n role=\"listbox\"\n aria-labelledby=\"suggested-heading\"\n onKeyDown={this.handleKeyDownPopover}\n >\n {\n this.suggestedList.map((item, i) => (\n <UI5Button\n key={i}\n id={item.id}\n icon={item.icon}\n type=\"Button\"\n design={UI5ButtonDesign.Default}\n accessible-name={item.suggestionDescription}\n class=\"udex-search-suggestions__item-button\"\n title={item.title}\n tabindex={-1}\n role=\"option\"\n onClick={item.handleSelectItem}\n dangerouslySetInnerHTML={{ __html: item.text }}\n ></UI5Button>\n ))\n }\n </div>\n </div>\n );\n}\n\nfunction renderSearchSuggestionPopoverResultsRecommendedList(this: UDExSearch) {\n return (\n <div class=\"udex-search-suggestions__block\" role=\"treeitem\">\n {\n this.recommendedHeading ? (\n <span class=\"udex-search-suggestions__heading\" id=\"recommended-heading\">\n {this.recommendedHeading}\n </span>\n ) : \"\"\n }\n\n <div class=\"udex-search-suggestions__list\"\n role=\"listbox\"\n aria-labelledby=\"recommended-heading\"\n onKeyDown={this.handleKeyDownPopover}\n >\n {\n this.recommendedList.map((item, i) => (\n item.hasCustomIcon ? (\n renderSearchSuggestionPopoverResultsRecommendedListButton(item, i, item.icon)\n ) : (\n renderSearchSuggestionPopoverResultsRecommendedListButton(item, i)\n )\n ))\n }\n </div>\n </div>\n );\n}\n\nfunction renderSearchSuggestionPopoverResultsRecommendedListButton(button: SuggestionList, key: number, icon: string | undefined = undefined) {\n return (\n <UI5Button\n key={key}\n id={button.id}\n {...(icon ? { \"icon\": icon } : {})}\n type=\"Button\"\n design={UI5ButtonDesign.Default}\n class=\"udex-search-suggestions__item-button\"\n accessible-name={button.suggestionDescription}\n title={button.title}\n tabindex={-1}\n role=\"option\"\n onClick={button.handleSelectItem}\n dangerouslySetInnerHTML={{ __html: button.text }}\n ></UI5Button>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"SearchTemplate.js","sourceRoot":"","sources":["../src/SearchTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import type UDExSearch from \"./Search.js\";\nimport type { SuggestionList } from \"./Search.js\";\nimport slimArrowDown from \"@ui5/webcomponents-icons/dist/slim-arrow-down.js\";\nimport search from \"@ui5/webcomponents-icons/dist/search.js\";\nimport decline from \"@ui5/webcomponents-icons/dist/decline.js\";\nimport microphone from \"@ui5/webcomponents-icons/dist/microphone.js\";\nimport UDExButton from \"./Button.js\";\nimport UDExButtonDesign from \"./types/ButtonDesign.js\";\nimport UDExButtonSize from \"./types/ButtonSize.js\";\nimport UI5Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport UI5IconMode from \"@ui5/webcomponents/dist/types/IconMode.js\";\nimport UI5Popover from \"@ui5/webcomponents/dist/Popover.js\";\nimport UI5PopoverPlacement from \"@ui5/webcomponents/dist/types/PopoverPlacement.js\";\nimport UI5PopoverHAlign from \"@ui5/webcomponents/dist/types/PopoverHorizontalAlign.js\";\nimport UDExControlButton from \"./ControlButton.js\";\nimport UDExControlButtonDesign from \"./types/ControlButtonDesign.js\";\nimport UI5Button from \"@ui5/webcomponents/dist/Button.js\";\nimport UI5ButtonDesign from \"@ui5/webcomponents/dist/types/ButtonDesign.js\";\n\nexport default function SearchTemplate(this: UDExSearch) {\n return (\n <>\n <div class={`udex-search__root ${this.searchClasses}`}>\n { this.isShowSearchHomePrefix ? renderSearchHomePrefix.call(this) : \"\" }\n\n <form class={`udex-search__container ${this.focusClasses} ${this.isNotEmptyClass}`}>\n { this.labelAnimationDisabled ? renderInputWithStaticLabel.call(this) : renderInputWithAnimatedLabel.call(this) }\n\n {\n this.open ? (\n <span\n aria-live=\"polite\"\n aria-atomic=\"true\"\n id=\"search-description\"\n class=\"hidden\"\n aria-hidden=\"true\"\n >\n {this.suggestionsDescription}\n </span>\n ) : \"\"\n }\n\n <div class=\"udex-search__icons\">\n {\n this.isShowHomeResetButton ? (\n <UDExButton\n id=\"reset-button\"\n class=\"udex-search__button udex-search__reset-button\"\n size={UDExButtonSize.Small}\n design={UDExButtonDesign.Default}\n tooltip={this.tooltipInfo.tooltipResetButton}\n accessible-name={this.accInfo.accessibleNameResetIcon}\n onClick={this.onReset as any}\n onKeyDown={this.handleKeyDownReset}\n >\n <UI5Icon\n class=\"udex-search__button-icon\"\n accessible-role=\"presentation\"\n name={decline}\n ></UI5Icon>\n </UDExButton>\n ) : \"\"\n }\n\n {\n this.isShowResetButton ? (\n <UDExControlButton\n id=\"reset-button\"\n class=\"udex-search__reset-button\"\n design={UDExControlButtonDesign.Default}\n tooltip={this.tooltipInfo.tooltipResetButton}\n icon={decline}\n size={UDExButtonSize.Large}\n accessible-name={this.accInfo.accessibleNameResetIcon}\n onClick={this.onReset as any}\n onKeyDown={this.handleKeyDownReset}\n ></UDExControlButton>\n ) : \"\"\n }\n\n {\n this.isVoiceButton ? (\n <UDExButton\n id=\"voice-button\"\n class={`udex-search__button udex-search__voice-button ${this.voiceActiveClass}`}\n design={UDExButtonDesign.Default}\n size={UDExButtonSize.Small}\n icon={microphone}\n tooltip={this.tooltipInfo.tooltipVoiceButton}\n onClick={this.onVoice as any}\n ></UDExButton>\n ) : \"\"\n }\n\n {\n this.showNonInteractiveButton ? (\n <UI5Icon\n class=\"udex-search__icon\"\n aria-hidden=\"true\"\n accessible-name={this.accInfo.accessibleNameSearchIcon}\n name={search}\n ></UI5Icon>\n ) : \"\"\n }\n\n {\n this.showSubmitHomeButton ? (\n <UDExButton\n id=\"submit-button\"\n class={`udex-search__button udex-search__submit-button ${this.searchButtonActiveClass}`}\n design={UDExButtonDesign.Default}\n icon={search}\n size={UDExButtonSize.Small}\n accessible-name={this.accInfo.accessibleNameSearchIcon}\n tooltip={this.tooltipInfo.tooltipSubmitButton}\n onClick={this.onSubmit as any}\n ></UDExButton>\n ) : \"\"\n }\n\n {\n this.showSubmitStandardButton ? (\n <UDExControlButton\n id=\"submit-button\"\n class=\"udex-search__submit-button\"\n size={UDExButtonSize.Large}\n design={UDExControlButtonDesign.Default}\n icon={search}\n tooltip={this.tooltipInfo.tooltipSubmitButton}\n onClick={this.onSubmit as any}\n accessible-name={this.accInfo.accessibleNameSearchIcon}\n ></UDExControlButton>\n ) : \"\"\n }\n </div>\n </form>\n </div>\n\n { renderSearchSuggestionPopover.call(this) }\n </>\n );\n}\n\nfunction renderSearchHomePrefix(this: UDExSearch) {\n return (\n <div class={`udex-search__prefix ${this.prefixWrapperClasses}`}>\n <button\n type=\"button\"\n role=\"combobox\"\n aria-expanded={this._prefixDropdownExpanded}\n aria-label={this.labelPrefix}\n aria-haspopup=\"true\"\n aria-controls=\"udex-search-prefix\"\n class=\"udex-search__prefix-button\"\n onClick={this.handleDropdownClick}\n >\n <span class=\"udex-search__prefix-label\">{this.labelPrefix}</span>\n <UI5Icon\n class=\"udex-search__prefix-icon\"\n name={slimArrowDown}\n mode={UI5IconMode.Decorative}\n ></UI5Icon>\n </button>\n\n <UI5Popover\n id=\"udex-search-prefix\"\n class={this.prefixPopoverClasses}\n hide-arrow\n placement={UI5PopoverPlacement.Bottom}\n horizontal-align={UI5PopoverHAlign.Start}\n style={this.prefixPopoverStyles}\n onClose={this.handleAfterClosePrefixPopover}\n >\n <slot></slot>\n </UI5Popover>\n </div>\n );\n}\n\nfunction renderSearchInput(this: UDExSearch, placeholder: boolean = false) {\n return (\n <input\n role=\"searchbox\"\n id=\"search-input\"\n type=\"search\"\n name=\"search\"\n class=\"udex-search__field\"\n autocomplete=\"off\"\n aria-autocomplete=\"list\"\n aria-haspopup={this.getAriaHasPopup}\n aria-label={this.accInfo.ariaLabel}\n aria-describedby=\"search-description\"\n {...(placeholder ? { placeholder: this.effectivePlaceholder } : {})}\n maxlength={this.maxlength}\n value={this.value}\n onInput={this.handleSearchChange}\n onKeyDown={this.handleKeyDown}\n onFocus={this.handleFocus}\n onFocusOut={this.handleFocusout}\n onBlur={this.handleBlur}\n onClick={this.handleInputClick}\n />\n );\n}\n\nfunction renderInputWithStaticLabel(this: UDExSearch) {\n return renderSearchInput.call(this, true);\n}\n\nfunction renderInputWithAnimatedLabel(this: UDExSearch) {\n return (\n <>\n {\n this.label ? (\n <label for=\"search-input\" class={this.labelClasses}>\n {this.label}\n </label>\n ) : \"\"\n }\n\n { renderSearchInput.call(this, false) }\n </>\n );\n}\n\nfunction renderSearchSuggestionPopover(this: UDExSearch) {\n return (\n <UI5Popover\n class={`udex-search-suggestions__root ${this.homeSearchPopoverClass}`}\n hide-arrow\n prevent-initial-focus\n prevent-focus-restore\n placement={UI5PopoverPlacement.Bottom}\n horizontal-align={UI5PopoverHAlign.End}\n style={this.popoverStyles}\n id={this.getSuggestionsPopoverId}\n aria-orientation=\"vertical\"\n onKeyDown={this.handleKeyPressSuggestionList}\n accessible-name={this.suggestionsAccessibleName}\n >\n {\n this.showNoResultMessage ? (\n <span class=\"udex-search-suggestions__message\">{this.noResultMessage}</span>\n ) : renderSearchSuggestionPopoverResults.call(this)\n }\n </UI5Popover>\n );\n}\n\nfunction renderSearchSuggestionPopoverResults(this: UDExSearch) {\n return (\n <div role=\"tree\">\n {\n this.isShowSuggestedList ? (\n renderSearchSuggestionPopoverResultsSuggestedList.call(this)\n ) : \"\"\n }\n\n {\n this.isShowRecommendedList ? (\n renderSearchSuggestionPopoverResultsRecommendedList.call(this)\n ) : \"\"\n }\n </div>\n );\n}\n\nfunction renderSearchSuggestionPopoverResultsSuggestedList(this: UDExSearch) {\n return (\n <div class=\"udex-search-suggestions__block\" role=\"treeitem\">\n {\n this.suggestedHeading ? (\n <span class=\"udex-search-suggestions__heading\" id=\"suggested-heading\">\n {this.suggestedHeading}\n </span>\n ) : \"\"\n }\n\n <div class=\"udex-search-suggestions__list\"\n role=\"listbox\"\n aria-labelledby=\"suggested-heading\"\n onKeyDown={this.handleKeyDownPopover}\n >\n {\n this.suggestedList.map((item, i) => (\n <UI5Button\n key={i}\n id={item.id}\n icon={item.icon}\n type=\"Button\"\n design={UI5ButtonDesign.Default}\n accessible-name={item.suggestionDescription}\n class=\"udex-search-suggestions__item-button\"\n title={item.title}\n tabindex={-1}\n role=\"option\"\n onClick={item.handleSelectItem}\n dangerouslySetInnerHTML={{ __html: item.text }}\n ></UI5Button>\n ))\n }\n </div>\n </div>\n );\n}\n\nfunction renderSearchSuggestionPopoverResultsRecommendedList(this: UDExSearch) {\n return (\n <div class=\"udex-search-suggestions__block\" role=\"treeitem\">\n {\n this.recommendedHeading ? (\n <span class=\"udex-search-suggestions__heading\" id=\"recommended-heading\">\n {this.recommendedHeading}\n </span>\n ) : \"\"\n }\n\n <div class=\"udex-search-suggestions__list\"\n role=\"listbox\"\n aria-labelledby=\"recommended-heading\"\n onKeyDown={this.handleKeyDownPopover}\n >\n {\n this.recommendedList.map((item, i) => (\n item.hasCustomIcon ? (\n renderSearchSuggestionPopoverResultsRecommendedListButton(item, i, item.icon)\n ) : (\n renderSearchSuggestionPopoverResultsRecommendedListButton(item, i)\n )\n ))\n }\n </div>\n </div>\n );\n}\n\nfunction renderSearchSuggestionPopoverResultsRecommendedListButton(button: SuggestionList, key: number, icon: string | undefined = undefined) {\n return (\n <UI5Button\n key={key}\n id={button.id}\n {...(icon ? { \"icon\": icon } : {})}\n type=\"Button\"\n design={UI5ButtonDesign.Default}\n class=\"udex-search-suggestions__item-button\"\n accessible-name={button.suggestionDescription}\n title={button.title}\n tabindex={-1}\n role=\"option\"\n onClick={button.handleSelectItem}\n dangerouslySetInnerHTML={{ __html: button.text }}\n ></UI5Button>\n );\n}\n"]}
|
|
@@ -11,12 +11,12 @@ import { cleanLabel } from "./utils/listItemLabelUtils.js";
|
|
|
11
11
|
import { INDETERMINATE, SELECT_ALL } from "./generated/i18n/i18n-defaults.js";
|
|
12
12
|
import translate from "./utils/translate.js";
|
|
13
13
|
export default function SearchableListBaseTemplate() {
|
|
14
|
-
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: [
|
|
14
|
+
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: [_jsxs(IllustratedMessage, { name: "NoSearchResults", design: "Dot", children: [_jsx("div", { slot: "title" }), _jsx("div", { slot: "subtitle" })] }), _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, ...(this._activeDescendantMode ? {
|
|
15
15
|
"aria-label": this.listAccessibleName,
|
|
16
16
|
accessibleName: this.listAccessibleName,
|
|
17
17
|
} : {}), accessibleRole: this._activeDescendantMode ? "" : this.accessibleRoleForList, ...((this.isTreeStructure || this._activeDescendantMode) && 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
|
|
18
18
|
? renderGroup.call(this, processedItem, index)
|
|
19
|
-
: renderListItem(processedItem.item, index, "none", this.listItemRole, this.fireFirstIconClickEvent, this.fireSecondIconClickEvent, this._activeDescendantMode, this.isTreeStructure, this._activeDescendantMode ? index + 1 : undefined, this._activeDescendantMode ? this._filteredItems.length : undefined))) }))] }));
|
|
19
|
+
: renderListItem(processedItem.item, index, "none", this.listItemRole, this.fireFirstIconClickEvent, this.fireSecondIconClickEvent, this._activeDescendantMode, this.isTreeStructure, this._activeDescendantMode || this.isTreeStructure ? index + 1 : undefined, this._activeDescendantMode || this.isTreeStructure ? this._filteredItems.length : undefined))) }))] }));
|
|
20
20
|
}
|
|
21
21
|
function renderGroup(processedItem, index) {
|
|
22
22
|
return processedItem.item.isSelectAllHeader
|
|
@@ -27,7 +27,7 @@ function renderSelectAll(processedItem, index) {
|
|
|
27
27
|
const { item, groupItems } = processedItem;
|
|
28
28
|
const header = item;
|
|
29
29
|
const label = item.label && item.label !== "undefined" ? item.label : translate(UDExListSelectAll, SELECT_ALL);
|
|
30
|
-
return (_jsx(UDExListSelectAll, { id: item._id, ...UDExGroupHostAria.call(this, header, index, label), mode: this.mode, _treeMode: this.isTreeStructure, "_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,
|
|
30
|
+
return (_jsx(UDExListSelectAll, { id: item._id, ...UDExGroupHostAria.call(this, header, index, label), mode: this.mode, _treeMode: this.isTreeStructure, _ariaPosInSet: !this._activeDescendantMode && this.isTreeStructure ? index + 1 : undefined, _ariaSetSize: !this._activeDescendantMode && this.isTreeStructure ? this._filteredItems.length : undefined, "_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, "none", this.isTreeStructure ? "treeitem" : undefined, this.fireFirstIconClickEvent, this.fireSecondIconClickEvent, this._activeDescendantMode, this.isTreeStructure, i + 1, groupItems.length)) }, index));
|
|
31
31
|
}
|
|
32
32
|
function UDExGroupHostAria(header, index, label = header.label) {
|
|
33
33
|
return this._activeDescendantMode ? {
|
|
@@ -49,14 +49,11 @@ function renderGroupHeader(processedItem, index) {
|
|
|
49
49
|
const { item, groupItems } = processedItem;
|
|
50
50
|
const header = item;
|
|
51
51
|
const childAccessibleRole = this.isTreeStructure ? "treeitem" : undefined;
|
|
52
|
-
//
|
|
53
|
-
|
|
54
|
-
const groupPosInSet = treeGroups.indexOf(processedItem) + 1;
|
|
55
|
-
const groupSetSize = treeGroups.length;
|
|
56
|
-
// Keep the existing real-focus position overrides separate from host-owned ARIA.
|
|
52
|
+
// Every root participates in the same set, including ordinary root leaves and Select All.
|
|
53
|
+
// Keep real-focus position overrides separate from host-owned ARIA.
|
|
57
54
|
const treePositionAttrs = (!this._activeDescendantMode && this.isTreeStructure && this.modeMultiSelect) ? {
|
|
58
|
-
"_aria-pos-in-set":
|
|
59
|
-
"_aria-set-size":
|
|
55
|
+
"_aria-pos-in-set": index + 1,
|
|
56
|
+
"_aria-set-size": this._filteredItems.length,
|
|
60
57
|
} : {};
|
|
61
58
|
// In aria-activedescendant mode (SelectBox), each group header host element
|
|
62
59
|
// must carry role + ARIA state so screen readers can reach them via the pointer.
|
|
@@ -93,6 +90,7 @@ function renderListItem(item, index, role, accessibleRole, onFirstIconClick, onS
|
|
|
93
90
|
const treePositionAttrs = (!activeDescendantMode && posInSet != null && setSize != null) ? {
|
|
94
91
|
"_aria-pos-in-set": posInSet,
|
|
95
92
|
"_aria-set-size": setSize,
|
|
93
|
+
"_aria-level": isTreeStructure ? (item.parentElement?.isGroup ? 2 : 1) : undefined,
|
|
96
94
|
} : {};
|
|
97
95
|
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, ...treePositionAttrs, ...(item.innerHTML ? { dangerouslySetInnerHTML: { __html: item.innerHTML } } : {}) }, index));
|
|
98
96
|
}
|
|
@@ -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 { UDExListMode } from \"./types/List.js\";\nimport type { AriaRole } from \"@ui5/webcomponents-base/dist/types.js\";\nimport { cleanLabel } from \"./utils/listItemLabelUtils.js\";\nimport { INDETERMINATE, SELECT_ALL } from \"./generated/i18n/i18n-defaults.js\";\nimport translate from \"./utils/translate.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 {...(this._activeDescendantMode ? {\n \"aria-label\": this.listAccessibleName,\n accessibleName: this.listAccessibleName,\n } : {})}\n accessibleRole={this._activeDescendantMode ? \"\" : this.accessibleRoleForList}\n {...((this.isTreeStructure || this._activeDescendantMode) && 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._activeDescendantMode ? index + 1 : undefined, this._activeDescendantMode ? this._filteredItems.length : undefined)\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 const label = item.label && item.label !== \"undefined\" ? item.label : translate(UDExListSelectAll, SELECT_ALL);\n return (\n <UDExListSelectAll\n key={index}\n id={item._id}\n {...UDExGroupHostAria.call(this, header, index, label)}\n mode={this.mode}\n _treeMode={this.isTreeStructure}\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, this._activeDescendantMode && this.isTreeStructure ? \"treeitem\" : undefined, this.fireFirstIconClickEvent, this.fireSecondIconClickEvent, this._activeDescendantMode, this.isTreeStructure, this._activeDescendantMode ? i + 1 : undefined, this._activeDescendantMode ? groupItems.length : undefined)\n )}\n </UDExListSelectAll>\n );\n}\n\nfunction UDExGroupHostAria(this: UDExSearchableListBase, header: UDExListGroupHeaderBase, index: number, label = header.label) {\n return this._activeDescendantMode ? {\n role: (this.isTreeStructure ? \"treeitem\" : \"option\") as AriaRole,\n \"aria-label\": [label, header.supportingText].filter(Boolean).map(UDExText => cleanLabel(UDExText)).join(\" \"),\n \"aria-level\": this.isTreeStructure ? 1 : undefined,\n \"aria-posinset\": index + 1,\n \"aria-setsize\": this._filteredItems.length,\n \"aria-selected\": this.modeSingleSelect || this.modeMultiSelect ? String(header.selected && !header.indeterminate) : undefined,\n // aria-selected is Boolean, not tri-state. Describe partial group selection\n // separately rather than exposing the same selection as both checked and selected.\n \"aria-description\": this.modeMultiSelect && header.indeterminate ? translate(UDExListSelectAll, INDETERMINATE) : undefined,\n \"aria-disabled\": header.disabled ? \"true\" : undefined,\n \"aria-expanded\": header.collapsible ? String(header.expanded) : undefined,\n \"_use-host-aria-role\": true,\n } : { role: \"none\" as AriaRole };\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 // Explicit positions for real-focus MultiSelect group headers.\n const treeGroups = this.isTreeStructure ? this._filteredItems.filter(p => p.isGroup) : [];\n const groupPosInSet = treeGroups.indexOf(processedItem) + 1;\n const groupSetSize = treeGroups.length;\n // Keep the existing real-focus position overrides separate from host-owned ARIA.\n const treePositionAttrs = (!this._activeDescendantMode && this.isTreeStructure && this.modeMultiSelect) ? {\n \"_aria-pos-in-set\": groupPosInSet,\n \"_aria-set-size\": groupSetSize,\n } : {};\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 // In real-focus mode (FilterMenu) the host is always transparent (role=\"none\"):\n // the shadow DOM's div.udex-list__group provides the single role=\"group\" with\n // aria-labelledby=\"group-heading\" in non-tree mode; in tree mode the treeitem is\n // on the focusable div inside the shadow.\n const hostAriaAttrs = UDExGroupHostAria.call(this, header, index);\n return (\n <UDExListGroupHeader\n key={index}\n id={item._id}\n {...hostAriaAttrs}\n {...treePositionAttrs}\n _treeMode={this.isTreeStructure}\n _groupAsListbox={this.isPerGroupListbox}\n mode={this.mode}\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 onAccordionIconClick={this.handleAccordionIconClick}\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, i + 1, groupItems.length)\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 posInSet?: number,\n setSize?: number,\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 selectable = item.mode !== UDExListMode.SingleContent;\n const hostRole = activeDescendantMode ? (effectiveRole as AriaRole) : (role as AriaRole);\n const hostAriaAttrs = activeDescendantMode ? {\n // Rating-only options need a host name too, rather than a name derived from\n // descendants that can include the decorative checkbox's selection label.\n \"aria-label\": [item.label, item.supportingText, item.additionalText, item.hasRating ? item.ratingAriaLabel : undefined]\n .filter(Boolean).map(UDExText => cleanLabel(UDExText!)).join(\" \") || undefined,\n // Native position metadata replaces the duplicate spoken live-region summary.\n \"aria-level\": isTreeStructure ? ((item.parentElement as UDExListGroupHeaderBase | null)?.isGroup ? 2 : 1) : undefined,\n \"aria-posinset\": posInSet,\n \"aria-setsize\": setSize,\n \"aria-selected\": selectable && (effectiveRole === \"option\" || effectiveRole === \"treeitem\") ? String(item.selected) : 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 // Real-focus grouped children keep their position on the inner focusable row.\n const treePositionAttrs = (!activeDescendantMode && posInSet != null && setSize != null) ? {\n \"_aria-pos-in-set\": posInSet,\n \"_aria-set-size\": setSize,\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 {...treePositionAttrs}\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 { UDExListMode } from \"./types/List.js\";\nimport type { AriaRole } from \"@ui5/webcomponents-base/dist/types.js\";\nimport { cleanLabel } from \"./utils/listItemLabelUtils.js\";\nimport { INDETERMINATE, SELECT_ALL } from \"./generated/i18n/i18n-defaults.js\";\nimport translate from \"./utils/translate.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 <div slot=\"title\"></div>\n <div slot=\"subtitle\"></div>\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 {...(this._activeDescendantMode ? {\n \"aria-label\": this.listAccessibleName,\n accessibleName: this.listAccessibleName,\n } : {})}\n accessibleRole={this._activeDescendantMode ? \"\" : this.accessibleRoleForList}\n {...((this.isTreeStructure || this._activeDescendantMode) && 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._activeDescendantMode || this.isTreeStructure ? index + 1 : undefined, this._activeDescendantMode || this.isTreeStructure ? this._filteredItems.length : undefined)\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 const label = item.label && item.label !== \"undefined\" ? item.label : translate(UDExListSelectAll, SELECT_ALL);\n return (\n <UDExListSelectAll\n key={index}\n id={item._id}\n {...UDExGroupHostAria.call(this, header, index, label)}\n mode={this.mode}\n _treeMode={this.isTreeStructure}\n _ariaPosInSet={!this._activeDescendantMode && this.isTreeStructure ? index + 1 : undefined}\n _ariaSetSize={!this._activeDescendantMode && this.isTreeStructure ? this._filteredItems.length : undefined}\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, \"none\", this.isTreeStructure ? \"treeitem\" : undefined, this.fireFirstIconClickEvent, this.fireSecondIconClickEvent, this._activeDescendantMode, this.isTreeStructure, i + 1, groupItems.length)\n )}\n </UDExListSelectAll>\n );\n}\n\nfunction UDExGroupHostAria(this: UDExSearchableListBase, header: UDExListGroupHeaderBase, index: number, label = header.label) {\n return this._activeDescendantMode ? {\n role: (this.isTreeStructure ? \"treeitem\" : \"option\") as AriaRole,\n \"aria-label\": [label, header.supportingText].filter(Boolean).map(UDExText => cleanLabel(UDExText)).join(\" \"),\n \"aria-level\": this.isTreeStructure ? 1 : undefined,\n \"aria-posinset\": index + 1,\n \"aria-setsize\": this._filteredItems.length,\n \"aria-selected\": this.modeSingleSelect || this.modeMultiSelect ? String(header.selected && !header.indeterminate) : undefined,\n // aria-selected is Boolean, not tri-state. Describe partial group selection\n // separately rather than exposing the same selection as both checked and selected.\n \"aria-description\": this.modeMultiSelect && header.indeterminate ? translate(UDExListSelectAll, INDETERMINATE) : undefined,\n \"aria-disabled\": header.disabled ? \"true\" : undefined,\n \"aria-expanded\": header.collapsible ? String(header.expanded) : undefined,\n \"_use-host-aria-role\": true,\n } : { role: \"none\" as AriaRole };\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 // Every root participates in the same set, including ordinary root leaves and Select All.\n // Keep real-focus position overrides separate from host-owned ARIA.\n const treePositionAttrs = (!this._activeDescendantMode && this.isTreeStructure && this.modeMultiSelect) ? {\n \"_aria-pos-in-set\": index + 1,\n \"_aria-set-size\": this._filteredItems.length,\n } : {};\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 // In real-focus mode (FilterMenu) the host is always transparent (role=\"none\"):\n // the shadow DOM's div.udex-list__group provides the single role=\"group\" with\n // aria-labelledby=\"group-heading\" in non-tree mode; in tree mode the treeitem is\n // on the focusable div inside the shadow.\n const hostAriaAttrs = UDExGroupHostAria.call(this, header, index);\n return (\n <UDExListGroupHeader\n key={index}\n id={item._id}\n {...hostAriaAttrs}\n {...treePositionAttrs}\n _treeMode={this.isTreeStructure}\n _groupAsListbox={this.isPerGroupListbox}\n mode={this.mode}\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 onAccordionIconClick={this.handleAccordionIconClick}\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, i + 1, groupItems.length)\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 posInSet?: number,\n setSize?: number,\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 selectable = item.mode !== UDExListMode.SingleContent;\n const hostRole = activeDescendantMode ? (effectiveRole as AriaRole) : (role as AriaRole);\n const hostAriaAttrs = activeDescendantMode ? {\n // Rating-only options need a host name too, rather than a name derived from\n // descendants that can include the decorative checkbox's selection label.\n \"aria-label\": [item.label, item.supportingText, item.additionalText, item.hasRating ? item.ratingAriaLabel : undefined]\n .filter(Boolean).map(UDExText => cleanLabel(UDExText!)).join(\" \") || undefined,\n // Native position metadata replaces the duplicate spoken live-region summary.\n \"aria-level\": isTreeStructure ? ((item.parentElement as UDExListGroupHeaderBase | null)?.isGroup ? 2 : 1) : undefined,\n \"aria-posinset\": posInSet,\n \"aria-setsize\": setSize,\n \"aria-selected\": selectable && (effectiveRole === \"option\" || effectiveRole === \"treeitem\") ? String(item.selected) : 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 // Real-focus grouped children keep their position on the inner focusable row.\n const treePositionAttrs = (!activeDescendantMode && posInSet != null && setSize != null) ? {\n \"_aria-pos-in-set\": posInSet,\n \"_aria-set-size\": setSize,\n \"_aria-level\": isTreeStructure ? ((item.parentElement as UDExListGroupHeaderBase | null)?.isGroup ? 2 : 1) : undefined,\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 {...treePositionAttrs}\n {...((item as any).innerHTML ? { dangerouslySetInnerHTML: { __html: (item as any).innerHTML } } : {})}>\n </UDExListItem>\n );\n}\n"]}
|
package/dist/SideNavigation.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { Slot } from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
1
2
|
import SideNavigation from "@ui5/webcomponents-fiori/dist/SideNavigation.js";
|
|
2
3
|
export declare enum UDExSideNavigationVariant {
|
|
3
4
|
Full = "Full",
|
|
@@ -46,6 +47,14 @@ declare class UDExSideNavigation extends SideNavigation {
|
|
|
46
47
|
* @public
|
|
47
48
|
*/
|
|
48
49
|
placement: `${UDExSideNavigationPlacement}`;
|
|
50
|
+
/**
|
|
51
|
+
* Defines additional free-form content rendered in a dedicated area at the bottom
|
|
52
|
+
* of the component, below the navigation items.
|
|
53
|
+
*
|
|
54
|
+
* @public
|
|
55
|
+
*/
|
|
56
|
+
additionalContent: Slot<HTMLElement>;
|
|
49
57
|
onBeforeRendering(): void;
|
|
58
|
+
get hasAdditionalContent(): boolean;
|
|
50
59
|
}
|
|
51
60
|
export default UDExSideNavigation;
|