@sapudex/web-components 2.58.0 → 2.59.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cypress/specs/SelectBox.cy.tsx +1 -1
- package/cypress/specs/TabNavigation.cy.tsx +54 -0
- package/cypress/specs/TagGroup.cy.tsx +1 -1
- package/dist/RatingIndicatorTemplate.js +1 -1
- package/dist/RatingIndicatorTemplate.js.map +1 -1
- package/dist/SecondaryNavigation.js +3 -3
- package/dist/SecondaryNavigation.js.map +1 -1
- package/dist/SecondaryNavigationItem.d.ts +0 -1
- package/dist/SecondaryNavigationItem.js +4 -6
- package/dist/SecondaryNavigationItem.js.map +1 -1
- package/dist/SecondaryNavigationItemBase.js +2 -2
- package/dist/SecondaryNavigationItemBase.js.map +1 -1
- package/dist/SecondaryNavigationItemTemplate.d.ts +2 -0
- package/dist/SecondaryNavigationItemTemplate.js +12 -0
- package/dist/SecondaryNavigationItemTemplate.js.map +1 -0
- package/dist/SecondaryNavigationSubItem.d.ts +0 -2
- package/dist/SecondaryNavigationSubItem.js +3 -7
- package/dist/SecondaryNavigationSubItem.js.map +1 -1
- package/dist/SecondaryNavigationSubItemTemplate.d.ts +2 -0
- package/dist/SecondaryNavigationSubItemTemplate.js +16 -0
- package/dist/SecondaryNavigationSubItemTemplate.js.map +1 -0
- package/dist/SecondaryNavigationTemplate.d.ts +2 -0
- package/dist/SecondaryNavigationTemplate.js +7 -0
- package/dist/SecondaryNavigationTemplate.js.map +1 -0
- package/dist/SideNavigationMobile.d.ts +2 -3
- package/dist/SideNavigationMobile.js +22 -16
- package/dist/SideNavigationMobile.js.map +1 -1
- package/dist/SideNavigationMobileTemplate.d.ts +2 -0
- package/dist/SideNavigationMobileTemplate.js +11 -0
- package/dist/SideNavigationMobileTemplate.js.map +1 -0
- package/dist/TabNavigation.d.ts +12 -0
- package/dist/TabNavigation.js +17 -0
- package/dist/TabNavigation.js.map +1 -1
- package/dist/TabNavigationTemplate.js +1 -1
- package/dist/TabNavigationTemplate.js.map +1 -1
- package/dist/TagGroup.d.ts +2 -2
- package/dist/TagGroup.js +14 -3
- package/dist/TagGroup.js.map +1 -1
- package/dist/assets/InputSuggestions-CloTVyrf.js +2 -0
- package/dist/assets/{ListItemStandardExpandableTextTemplate-D2i8wWuR.js → ListItemStandardExpandableTextTemplate-DpquSMb2.js} +1 -1
- package/dist/assets/{ar-6UKwJun6.js → ar-CMU2PGtw.js} +1 -1
- package/dist/assets/{ar_EG-BTSal4jr.js → ar_EG-Bi2CIb24.js} +1 -1
- package/dist/assets/{ar_SA-Ck13AOrQ.js → ar_SA-BXTzBfWR.js} +1 -1
- package/dist/assets/{bg-fF9FXKHH.js → bg-B6_PMtzW.js} +1 -1
- package/dist/assets/{bundle.esm-BjN47C_y.js → bundle.esm-Cyz8a5IX.js} +244 -262
- package/dist/assets/{ca-ZuvXTynI.js → ca-DFP6ILMq.js} +1 -1
- package/dist/assets/{cnr-CiidS6E_.js → cnr-Grlu3JuX.js} +1 -1
- package/dist/assets/{cs-CKH0PBiM.js → cs-lgNqqL4u.js} +1 -1
- package/dist/assets/{da-DLJy-V4w.js → da-ZKggtzGq.js} +1 -1
- package/dist/assets/{de-0N92OkSB.js → de-DL1zgfsi.js} +1 -1
- package/dist/assets/{de_AT-D8g7Tth2.js → de_AT-CmarUHhe.js} +1 -1
- package/dist/assets/{de_CH-DYTcKEqU.js → de_CH-CFp86jVo.js} +1 -1
- package/dist/assets/{el-OYZuNIHv.js → el-FdvefiDT.js} +1 -1
- package/dist/assets/{el_CY-D79vuMAa.js → el_CY-BJPkkKi8.js} +1 -1
- package/dist/assets/{en-CllNN7YY.js → en-B1Q_JFFb.js} +1 -1
- package/dist/assets/{en_AU-Ddrviu44.js → en_AU-Bm6lcfFm.js} +1 -1
- package/dist/assets/{en_GB-B9eSErHy.js → en_GB-CCipb5dG.js} +1 -1
- package/dist/assets/{en_HK-FdAjB4tQ.js → en_HK-Bu8Js72H.js} +1 -1
- package/dist/assets/{en_IE-zdmtzUDu.js → en_IE-BZXJHeYM.js} +1 -1
- package/dist/assets/{en_IN-DJJRjMIF.js → en_IN-Dh3537uv.js} +1 -1
- package/dist/assets/{en_NZ-BY--qj4s.js → en_NZ-Bx3mG4fb.js} +1 -1
- package/dist/assets/{en_PG-RcJi2hvJ.js → en_PG-CyRO9VGd.js} +1 -1
- package/dist/assets/{en_SG-BUtJMBS2.js → en_SG-BEsuw651.js} +1 -1
- package/dist/assets/{en_ZA-D-uqJ4Za.js → en_ZA-i0tdkruX.js} +1 -1
- package/dist/assets/{es-DgitLRHt.js → es-BKtAFDBk.js} +1 -1
- package/dist/assets/{es_AR-7a81KXAl.js → es_AR-Cgh6Q2W_.js} +1 -1
- package/dist/assets/{es_BO-CdNGyTgv.js → es_BO-CaK9OOQC.js} +1 -1
- package/dist/assets/{es_CL-DuHBIVFo.js → es_CL-u6fJ6PPk.js} +1 -1
- package/dist/assets/{es_CO-C0CJWwB-.js → es_CO-DAO-13dw.js} +1 -1
- package/dist/assets/{es_MX-DtPgyxGD.js → es_MX-D1KhXUy4.js} +1 -1
- package/dist/assets/{es_PE-DGF7Yjrt.js → es_PE-DEUen4VG.js} +1 -1
- package/dist/assets/{es_UY-fD9lVhfR.js → es_UY-CPBMwHSz.js} +1 -1
- package/dist/assets/{es_VE-BX3pigg8.js → es_VE-CNZouG2K.js} +1 -1
- package/dist/assets/{et-BMj4rjsT.js → et-DNQPssPo.js} +1 -1
- package/dist/assets/{fa-CQhbGi8S.js → fa-4zj1zCg1.js} +1 -1
- package/dist/assets/{fi-DBKA9_K5.js → fi-C6HFNTL6.js} +1 -1
- package/dist/assets/{fr-CMQtkd4R.js → fr-BydrHZkq.js} +1 -1
- package/dist/assets/{fr_BE-Bl0FruWm.js → fr_BE-C8hcZNOL.js} +1 -1
- package/dist/assets/{fr_CA-DFlIL_d4.js → fr_CA-Cw2zy44G.js} +1 -1
- package/dist/assets/{fr_CH-C8lyCDBe.js → fr_CH-BbCQFx3s.js} +1 -1
- package/dist/assets/{fr_LU-CG5r3b1-.js → fr_LU-BpH6nMiI.js} +1 -1
- package/dist/assets/{he-D3P1Q9GQ.js → he-CfKmVVrF.js} +1 -1
- package/dist/assets/{hi-B3yky8gy.js → hi-D1WBUmI6.js} +1 -1
- package/dist/assets/{hr-cQ9G2h7E.js → hr-pnk2hlkB.js} +1 -1
- package/dist/assets/{hu-D0ywysYs.js → hu-CCzBj3iT.js} +1 -1
- package/dist/assets/{id-B-yAWgiT.js → id-BeGrqJpK.js} +1 -1
- package/dist/assets/{it-DLzjbv-9.js → it-B6Mz1czr.js} +1 -1
- package/dist/assets/{it_CH-DKz1oDNC.js → it_CH-CwPXoj3N.js} +1 -1
- package/dist/assets/{ja-C8zg_Zor.js → ja-BILluLT2.js} +1 -1
- package/dist/assets/{kk-DZZOQ4wh.js → kk-YSUtf5Jy.js} +1 -1
- package/dist/assets/{ko-BEJWYeL9.js → ko-DUlXl0QQ.js} +1 -1
- package/dist/assets/{lt-Cji-Zk_r.js → lt-Dn5sAAtt.js} +1 -1
- package/dist/assets/{lv-rjxWTRTn.js → lv-D_k8IElJ.js} +1 -1
- package/dist/assets/messagebundle_ar-C3EXytoC.js +1 -0
- package/dist/assets/messagebundle_ar-DmZrrjEF.js +1 -0
- package/dist/assets/messagebundle_bg-BaZ97Q_b.js +1 -0
- package/dist/assets/messagebundle_bg-CgU7GPvK.js +1 -0
- package/dist/assets/messagebundle_ca-BwjVUbUA.js +1 -0
- package/dist/assets/messagebundle_ca-YiUGbO_8.js +1 -0
- package/dist/assets/messagebundle_cnr-CN2hPZIN.js +1 -0
- package/dist/assets/messagebundle_cnr-zdEdPJvc.js +1 -0
- package/dist/assets/messagebundle_cs-CGbnEjza.js +1 -0
- package/dist/assets/messagebundle_cs-DmRWH--o.js +1 -0
- package/dist/assets/messagebundle_cy-BF0YH9Iz.js +1 -0
- package/dist/assets/messagebundle_cy-CUiGsjO6.js +1 -0
- package/dist/assets/messagebundle_da-CWKLQJiq.js +1 -0
- package/dist/assets/messagebundle_da-bTkr4pUc.js +1 -0
- package/dist/assets/messagebundle_de-BmnClk4G.js +1 -0
- package/dist/assets/messagebundle_de-vB6qhgvG.js +1 -0
- package/dist/assets/messagebundle_el-DKdItEgW.js +1 -0
- package/dist/assets/messagebundle_el-Gv1Ly8aj.js +1 -0
- package/dist/assets/messagebundle_en-DbKo-Dkl.js +1 -0
- package/dist/assets/messagebundle_en-DcV886MF.js +1 -0
- package/dist/assets/messagebundle_en_GB-Be93_Z4H.js +1 -0
- package/dist/assets/messagebundle_en_GB-CFh7e8hQ.js +1 -0
- package/dist/assets/messagebundle_en_US_sappsd-HCarC-Yr.js +1 -0
- package/dist/assets/messagebundle_en_US_sappsd-Se8GgI58.js +1 -0
- package/dist/assets/messagebundle_en_US_saprigi-CCHFk7YZ.js +1 -0
- package/dist/assets/messagebundle_en_US_saprigi-CbfvaHUL.js +1 -0
- package/dist/assets/messagebundle_en_US_saptrc-B8AIRzlo.js +1 -0
- package/dist/assets/messagebundle_en_US_saptrc-yJ3PcdEm.js +1 -0
- package/dist/assets/messagebundle_es-BH-a8BxO.js +1 -0
- package/dist/assets/messagebundle_es-Dt93wbGV.js +1 -0
- package/dist/assets/messagebundle_es_MX-BedlYlF3.js +1 -0
- package/dist/assets/messagebundle_es_MX-COPqooo9.js +1 -0
- package/dist/assets/messagebundle_et-BsYgDw46.js +1 -0
- package/dist/assets/messagebundle_et-UwpqUE-p.js +1 -0
- package/dist/assets/messagebundle_fi-BN3UWEz0.js +1 -0
- package/dist/assets/messagebundle_fi-Cwf7Puui.js +1 -0
- package/dist/assets/messagebundle_fr-43w09LAE.js +1 -0
- package/dist/assets/messagebundle_fr-CVRaf9_H.js +1 -0
- package/dist/assets/messagebundle_fr_CA-BM04X6xU.js +1 -0
- package/dist/assets/messagebundle_fr_CA-CdnVYumi.js +1 -0
- package/dist/assets/messagebundle_hi-DfeonbAH.js +1 -0
- package/dist/assets/messagebundle_hi-JRJlP9Uh.js +1 -0
- package/dist/assets/messagebundle_hr-CKOnn34q.js +1 -0
- package/dist/assets/messagebundle_hr-CbyIBlH3.js +1 -0
- package/dist/assets/messagebundle_hu-DF1gQudE.js +1 -0
- package/dist/assets/messagebundle_hu-D_IQ9kTy.js +1 -0
- package/dist/assets/messagebundle_id-B0K1usj4.js +1 -0
- package/dist/assets/messagebundle_id-gDJYoaGq.js +1 -0
- package/dist/assets/messagebundle_it-B80_R2Ih.js +1 -0
- package/dist/assets/messagebundle_it-CVqU4g6t.js +1 -0
- package/dist/assets/messagebundle_iw-BoelOIS4.js +1 -0
- package/dist/assets/messagebundle_iw-iMDtLxaa.js +1 -0
- package/dist/assets/messagebundle_ja-BlRbv4vb.js +1 -0
- package/dist/assets/messagebundle_ja-BrDH-19-.js +1 -0
- package/dist/assets/messagebundle_kk-C7VPek1-.js +1 -0
- package/dist/assets/messagebundle_kk-DhAT_bim.js +1 -0
- package/dist/assets/messagebundle_ko-CIqP8x6n.js +1 -0
- package/dist/assets/messagebundle_ko-DgD6uyZ5.js +1 -0
- package/dist/assets/messagebundle_lt-BGK5mpcm.js +1 -0
- package/dist/assets/messagebundle_lt-BV0kKrY0.js +1 -0
- package/dist/assets/messagebundle_lv-5IcjoxWD.js +1 -0
- package/dist/assets/messagebundle_lv-DDBi7iKe.js +1 -0
- package/dist/assets/messagebundle_mk-BUrn04sZ.js +1 -0
- package/dist/assets/messagebundle_mk-P5veRdg2.js +1 -0
- package/dist/assets/messagebundle_ms-9VDLR5en.js +1 -0
- package/dist/assets/messagebundle_ms-CB8sQUg2.js +1 -0
- package/dist/assets/messagebundle_nl-BaAgPO7h.js +1 -0
- package/dist/assets/messagebundle_nl-f1Up3dB9.js +1 -0
- package/dist/assets/messagebundle_no-C-_ldp7o.js +1 -0
- package/dist/assets/messagebundle_no-DRSqWQ-C.js +1 -0
- package/dist/assets/messagebundle_pl-BQoPaokq.js +1 -0
- package/dist/assets/messagebundle_pl-DBO1atMe.js +1 -0
- package/dist/assets/messagebundle_pt-BNEglYxa.js +1 -0
- package/dist/assets/messagebundle_pt-DgAMHmW-.js +1 -0
- package/dist/assets/messagebundle_pt_PT-BtYzp9KB.js +1 -0
- package/dist/assets/messagebundle_pt_PT-D1Ef8kUU.js +1 -0
- package/dist/assets/messagebundle_ro-CuDPp2fe.js +1 -0
- package/dist/assets/messagebundle_ro-D591wJ6f.js +1 -0
- package/dist/assets/messagebundle_ru-D0NridWi.js +1 -0
- package/dist/assets/messagebundle_ru-I8YLCfrn.js +1 -0
- package/dist/assets/messagebundle_sh-BswdbSRi.js +1 -0
- package/dist/assets/messagebundle_sh-Dw2y_oct.js +1 -0
- package/dist/assets/messagebundle_sk-BG4S4ZVk.js +1 -0
- package/dist/assets/messagebundle_sk-CXOF1RuF.js +1 -0
- package/dist/assets/messagebundle_sl-CAnJO_8X.js +1 -0
- package/dist/assets/messagebundle_sl-kpVWxIp_.js +1 -0
- package/dist/assets/messagebundle_sr-BTWvO8VQ.js +1 -0
- package/dist/assets/messagebundle_sr-VJmRSdj4.js +1 -0
- package/dist/assets/messagebundle_sv-B-RCgnW_.js +1 -0
- package/dist/assets/messagebundle_sv-Bd4wCcDb.js +1 -0
- package/dist/assets/messagebundle_th-CMHmLdI3.js +1 -0
- package/dist/assets/messagebundle_th-CZ1imsCy.js +1 -0
- package/dist/assets/messagebundle_tr-BfWAYIdW.js +1 -0
- package/dist/assets/messagebundle_tr-D-BnBirv.js +1 -0
- package/dist/assets/messagebundle_uk-DhxIThVl.js +1 -0
- package/dist/assets/messagebundle_uk-HU8hI0yj.js +1 -0
- package/dist/assets/messagebundle_vi-BUTqUKd4.js +1 -0
- package/dist/assets/messagebundle_vi-D1El4_Wj.js +1 -0
- package/dist/assets/messagebundle_zh_CN-Dt0azUea.js +1 -0
- package/dist/assets/messagebundle_zh_CN-Ofgx2uXY.js +1 -0
- package/dist/assets/messagebundle_zh_TW-5lv7yYS1.js +1 -0
- package/dist/assets/messagebundle_zh_TW-LSErOAsd.js +1 -0
- package/dist/assets/{mk-9_dtu4u_.js → mk-DTLhuyCG.js} +1 -1
- package/dist/assets/{ms-9b0nct8m.js → ms-BrLiVOVI.js} +1 -1
- package/dist/assets/{nb-CbGeVRux.js → nb-BeQEL0TR.js} +1 -1
- package/dist/assets/{nl-C0vlsmuT.js → nl-CGAh49hZ.js} +1 -1
- package/dist/assets/{nl_BE-Cteh34au.js → nl_BE-CxJbQu5q.js} +1 -1
- package/dist/assets/{parameters-bundle.css-D7WciSOr.js → parameters-bundle.css-B68EyCuR.js} +2 -0
- package/dist/assets/{parameters-bundle.css-CT-eTeTy.js → parameters-bundle.css-BkJSEiFx.js} +2 -0
- package/dist/assets/{parameters-bundle.css-BXQ-0CBp.js → parameters-bundle.css-C5V2Zp_F.js} +2 -0
- package/dist/assets/{parameters-bundle.css-XYDTPt-n.js → parameters-bundle.css-COeynv6D.js} +3 -1
- package/dist/assets/parameters-bundle.css-CnIzAMdG.js +3 -0
- package/dist/assets/parameters-bundle.css-CsV5qbZp.js +3 -0
- package/dist/assets/{parameters-bundle.css-C7KCPeJ8.js → parameters-bundle.css-DCvHNL3s.js} +1 -1
- package/dist/assets/{parameters-bundle.css-CQFZmxYm.js → parameters-bundle.css-DK40uKOQ.js} +1 -1
- package/dist/assets/parameters-bundle.css-DMfTAqMv.js +2 -0
- package/dist/assets/parameters-bundle.css-DO35k9r0.js +2 -0
- package/dist/assets/parameters-bundle.css-Df7wtRW4.js +2 -0
- package/dist/assets/{parameters-bundle.css-CxjtOlRD.js → parameters-bundle.css-DmEWEk0u.js} +36 -28
- package/dist/assets/{parameters-bundle.css-CSUOmZKr.js → parameters-bundle.css-DvAfqdlT.js} +1 -1
- package/dist/assets/{parameters-bundle.css-DPz62M1p.js → parameters-bundle.css-K-MvKimD.js} +3 -1
- package/dist/assets/parameters-bundle.css-KoXGNyLG.js +3 -0
- package/dist/assets/{parameters-bundle.css-CLLnzh9T.js → parameters-bundle.css-P_M_rm9z.js} +1 -1
- package/dist/assets/parameters-bundle.css-UJIxXHL5.js +2 -0
- package/dist/assets/{parameters-bundle.css-V2I5eOdH.js → parameters-bundle.css-co26r5Nz.js} +1 -1
- package/dist/assets/parameters-bundle.css-uT62L0va.js +3 -0
- package/dist/assets/{parameters-bundle.css-Cmk27zY9.js → parameters-bundle.css-vNsSPPU5.js} +38 -31
- package/dist/assets/{pl-CDjXMBDR.js → pl-DaZJCEN3.js} +1 -1
- package/dist/assets/{pt-BXklB5_T.js → pt-RxoGfR56.js} +1 -1
- package/dist/assets/{pt_PT-DEzSdlMb.js → pt_PT-CuC22O4H.js} +1 -1
- package/dist/assets/{ro-bFLE5ZuX.js → ro-kcCACdbI.js} +1 -1
- package/dist/assets/{ru-DuGdFJZn.js → ru-BQzoU2Gq.js} +1 -1
- package/dist/assets/{ru_UA-DujiLlPN.js → ru_UA-BtdbuqWW.js} +1 -1
- package/dist/assets/{sk-GkzEgQor.js → sk-D4C2H17S.js} +1 -1
- package/dist/assets/{sl-BhuoMxwQ.js → sl-7ESgddjQ.js} +1 -1
- package/dist/assets/{sr-Bb668mIq.js → sr-m2FCxV00.js} +1 -1
- package/dist/assets/{sr_Latn-C61cXg9o.js → sr_Latn-Dh8ru1_a.js} +1 -1
- package/dist/assets/{sv-yft9g0aL.js → sv-DkcDHqsr.js} +1 -1
- package/dist/assets/{th-BiAki51N.js → th-sJeg9F0h.js} +1 -1
- package/dist/assets/{tr-DDt0vBOs.js → tr-C2e7ABy0.js} +1 -1
- package/dist/assets/{uk-A-zqF2vZ.js → uk-Cdp63d6T.js} +1 -1
- package/dist/assets/{vi-Bleu1lwm.js → vi-DuFuMCO2.js} +1 -1
- package/dist/assets/{zh_CN-kJCGkFOs.js → zh_CN-BOAGYFIg.js} +1 -1
- package/dist/assets/{zh_HK-BJMkT2Ze.js → zh_HK-Bmft66uR.js} +1 -1
- package/dist/assets/{zh_SG-Lz9Li7LQ.js → zh_SG-ChcB0A9F.js} +1 -1
- package/dist/assets/{zh_TW-P8-QBSyv.js → zh_TW-C8FI5AC8.js} +1 -1
- package/dist/css/themes/AccordionSpotlight.css +1 -1
- package/dist/css/themes/Checkbox.css +1 -1
- package/dist/css/themes/Footer.css +1 -1
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/SecondaryNavigation.css +1 -1
- package/dist/css/themes/SecondaryNavigationItem.css +1 -1
- package/dist/css/themes/SecondaryNavigationSubItem.css +1 -1
- package/dist/css/themes/WizardTab.css +1 -1
- package/dist/custom-elements-internal.json +19 -0
- package/dist/custom-elements.json +52 -0
- package/dist/generated/themes/AccordionSpotlight.css.d.ts +1 -1
- package/dist/generated/themes/AccordionSpotlight.css.js +1 -1
- package/dist/generated/themes/AccordionSpotlight.css.js.map +1 -1
- package/dist/generated/themes/Checkbox.css.d.ts +1 -1
- package/dist/generated/themes/Checkbox.css.js +1 -1
- package/dist/generated/themes/Checkbox.css.js.map +1 -1
- package/dist/generated/themes/Footer.css.d.ts +1 -1
- package/dist/generated/themes/Footer.css.js +1 -1
- package/dist/generated/themes/Footer.css.js.map +1 -1
- package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
- package/dist/generated/themes/RatingIndicator.css.js +1 -1
- package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
- package/dist/generated/themes/SecondaryNavigation.css.d.ts +1 -1
- package/dist/generated/themes/SecondaryNavigation.css.js +1 -1
- package/dist/generated/themes/SecondaryNavigation.css.js.map +1 -1
- package/dist/generated/themes/SecondaryNavigationItem.css.d.ts +1 -1
- package/dist/generated/themes/SecondaryNavigationItem.css.js +1 -1
- package/dist/generated/themes/SecondaryNavigationItem.css.js.map +1 -1
- package/dist/generated/themes/SecondaryNavigationSubItem.css.d.ts +1 -1
- package/dist/generated/themes/SecondaryNavigationSubItem.css.js +1 -1
- package/dist/generated/themes/SecondaryNavigationSubItem.css.js.map +1 -1
- package/dist/generated/themes/WizardTab.css.d.ts +1 -1
- package/dist/generated/themes/WizardTab.css.js +1 -1
- package/dist/generated/themes/WizardTab.css.js.map +1 -1
- package/dist/utils/Breakpoints.d.ts +20 -1
- package/dist/utils/Breakpoints.js +38 -8
- package/dist/utils/Breakpoints.js.map +1 -1
- package/dist/vscode.html-custom-data.json +115 -456
- package/dist/web-types.json +11 -1
- package/package.json +8 -8
- package/src/RatingIndicatorTemplate.tsx +0 -1
- package/src/SecondaryNavigation.ts +3 -3
- package/src/SecondaryNavigationItem.ts +4 -6
- package/src/SecondaryNavigationItemBase.ts +2 -2
- package/src/SecondaryNavigationItemTemplate.tsx +80 -0
- package/src/SecondaryNavigationSubItem.ts +3 -7
- package/src/SecondaryNavigationSubItemTemplate.tsx +63 -0
- package/src/SecondaryNavigationTemplate.tsx +90 -0
- package/src/SideNavigationMobile.ts +24 -17
- package/src/SideNavigationMobileTemplate.tsx +59 -0
- package/src/TabNavigation.ts +17 -0
- package/src/TabNavigationTemplate.tsx +1 -1
- package/src/TagGroup.ts +16 -5
- package/src/generated/themes/AccordionSpotlight.css.ts +1 -1
- package/src/generated/themes/Checkbox.css.ts +1 -1
- package/src/generated/themes/Footer.css.ts +1 -1
- package/src/generated/themes/RatingIndicator.css.ts +1 -1
- package/src/generated/themes/SecondaryNavigation.css.ts +1 -1
- package/src/generated/themes/SecondaryNavigationItem.css.ts +1 -1
- package/src/generated/themes/SecondaryNavigationSubItem.css.ts +1 -1
- package/src/generated/themes/WizardTab.css.ts +1 -1
- package/src/themes/AccordionSpotlight.css +1 -1
- package/src/themes/Checkbox.css +5 -1
- package/src/themes/Footer.css +4 -4
- package/src/themes/RatingIndicator.css +6 -1
- package/src/themes/SecondaryNavigation.css +3 -3
- package/src/themes/SecondaryNavigationItem.css +2 -2
- package/src/themes/SecondaryNavigationSubItem.css +2 -2
- package/src/themes/WizardTab.css +6 -1
- package/src/utils/Breakpoints.ts +39 -8
- package/dist/assets/InputSuggestions-CMYjJsHw.js +0 -2
- package/dist/assets/messagebundle_ar-BRkfjlVF.js +0 -1
- package/dist/assets/messagebundle_ar-D5A573iZ.js +0 -1
- package/dist/assets/messagebundle_bg-ByA8yRlQ.js +0 -1
- package/dist/assets/messagebundle_bg-CIVFOczQ.js +0 -1
- package/dist/assets/messagebundle_ca-BR3XuU9o.js +0 -1
- package/dist/assets/messagebundle_ca-CnMQ87v0.js +0 -1
- package/dist/assets/messagebundle_cnr-C6YhRiS7.js +0 -1
- package/dist/assets/messagebundle_cnr-CKZii51E.js +0 -1
- package/dist/assets/messagebundle_cs-DcOu8IOK.js +0 -1
- package/dist/assets/messagebundle_cs-I7yYpbsI.js +0 -1
- package/dist/assets/messagebundle_cy-BxrFUGJ9.js +0 -1
- package/dist/assets/messagebundle_cy-iXD_sJ-H.js +0 -1
- package/dist/assets/messagebundle_da-BVQHPgwf.js +0 -1
- package/dist/assets/messagebundle_da-CMGObFa5.js +0 -1
- package/dist/assets/messagebundle_de-CSl05u5u.js +0 -1
- package/dist/assets/messagebundle_de-Ca8NttFO.js +0 -1
- package/dist/assets/messagebundle_el-Cqfj_U5v.js +0 -1
- package/dist/assets/messagebundle_el-D9Zgq5tn.js +0 -1
- package/dist/assets/messagebundle_en-D0JTZvAf.js +0 -1
- package/dist/assets/messagebundle_en-DWqF0cay.js +0 -1
- package/dist/assets/messagebundle_en_GB-CGB_FKp4.js +0 -1
- package/dist/assets/messagebundle_en_GB-Cl7ekzz2.js +0 -1
- package/dist/assets/messagebundle_en_US_sappsd-7UdOh8vN.js +0 -1
- package/dist/assets/messagebundle_en_US_sappsd-B8rqsyFQ.js +0 -1
- package/dist/assets/messagebundle_en_US_saprigi-9VCo5QY0.js +0 -1
- package/dist/assets/messagebundle_en_US_saprigi-DfLzOCPY.js +0 -1
- package/dist/assets/messagebundle_en_US_saptrc-DZqYka05.js +0 -1
- package/dist/assets/messagebundle_en_US_saptrc-Wh_IysAB.js +0 -1
- package/dist/assets/messagebundle_es-DKn8EzzP.js +0 -1
- package/dist/assets/messagebundle_es-lf5AJZNW.js +0 -1
- package/dist/assets/messagebundle_es_MX-DyYZGjON.js +0 -1
- package/dist/assets/messagebundle_es_MX-yBTcvu7u.js +0 -1
- package/dist/assets/messagebundle_et-Dz8Ohhcp.js +0 -1
- package/dist/assets/messagebundle_et-rMWbS-Nu.js +0 -1
- package/dist/assets/messagebundle_fi-Bfbyhuuz.js +0 -1
- package/dist/assets/messagebundle_fi-DnXm7LPH.js +0 -1
- package/dist/assets/messagebundle_fr-BvbeCfZ-.js +0 -1
- package/dist/assets/messagebundle_fr-KQhoZEew.js +0 -1
- package/dist/assets/messagebundle_fr_CA-CE2lzYx5.js +0 -1
- package/dist/assets/messagebundle_fr_CA-CIhDzHAJ.js +0 -1
- package/dist/assets/messagebundle_hi-BRQ9tZ6F.js +0 -1
- package/dist/assets/messagebundle_hi-DPwH9vag.js +0 -1
- package/dist/assets/messagebundle_hr-BSKQ6zHT.js +0 -1
- package/dist/assets/messagebundle_hr-D3gQg5JN.js +0 -1
- package/dist/assets/messagebundle_hu-CAA4oM1C.js +0 -1
- package/dist/assets/messagebundle_hu-CZNs1K9T.js +0 -1
- package/dist/assets/messagebundle_id-9H0uJyXB.js +0 -1
- package/dist/assets/messagebundle_id-m6iosVVP.js +0 -1
- package/dist/assets/messagebundle_it-BWzxa-Mi.js +0 -1
- package/dist/assets/messagebundle_it-Cm_0HF21.js +0 -1
- package/dist/assets/messagebundle_iw-DpB2YXTa.js +0 -1
- package/dist/assets/messagebundle_iw-NfqePNtD.js +0 -1
- package/dist/assets/messagebundle_ja-BCSZcI8t.js +0 -1
- package/dist/assets/messagebundle_ja-C-qqwzFf.js +0 -1
- package/dist/assets/messagebundle_kk--PGqyTVS.js +0 -1
- package/dist/assets/messagebundle_kk-DAlCQkFU.js +0 -1
- package/dist/assets/messagebundle_ko-D8mIkPe1.js +0 -1
- package/dist/assets/messagebundle_ko-qoWc4ZGG.js +0 -1
- package/dist/assets/messagebundle_lt-BIEH02V4.js +0 -1
- package/dist/assets/messagebundle_lt-ruMxSuY-.js +0 -1
- package/dist/assets/messagebundle_lv-C2om7wu0.js +0 -1
- package/dist/assets/messagebundle_lv-Dfrbh1ci.js +0 -1
- package/dist/assets/messagebundle_mk-DHvZle6t.js +0 -1
- package/dist/assets/messagebundle_mk-l_Kubx1p.js +0 -1
- package/dist/assets/messagebundle_ms-CKCmj1p_.js +0 -1
- package/dist/assets/messagebundle_ms-IhSEK5ij.js +0 -1
- package/dist/assets/messagebundle_nl-BiIb6e5c.js +0 -1
- package/dist/assets/messagebundle_nl-DquG38Cj.js +0 -1
- package/dist/assets/messagebundle_no-CX23v_jg.js +0 -1
- package/dist/assets/messagebundle_no-DFdvykvP.js +0 -1
- package/dist/assets/messagebundle_pl-BAeue3mo.js +0 -1
- package/dist/assets/messagebundle_pl-iHE_prgN.js +0 -1
- package/dist/assets/messagebundle_pt-BpQnTLvl.js +0 -1
- package/dist/assets/messagebundle_pt-C_bG3Erm.js +0 -1
- package/dist/assets/messagebundle_pt_PT-CR7qXFK-.js +0 -1
- package/dist/assets/messagebundle_pt_PT-DyseXKQQ.js +0 -1
- package/dist/assets/messagebundle_ro-CHU1E6hv.js +0 -1
- package/dist/assets/messagebundle_ro-C_amsd63.js +0 -1
- package/dist/assets/messagebundle_ru-Cab4H6Ud.js +0 -1
- package/dist/assets/messagebundle_ru-D6JMraBp.js +0 -1
- package/dist/assets/messagebundle_sh-DusYn00L.js +0 -1
- package/dist/assets/messagebundle_sh-hThvw_lF.js +0 -1
- package/dist/assets/messagebundle_sk-BqiUMEcX.js +0 -1
- package/dist/assets/messagebundle_sk-CZHfFNQ_.js +0 -1
- package/dist/assets/messagebundle_sl-B79d3kfY.js +0 -1
- package/dist/assets/messagebundle_sl-SfAn6n6j.js +0 -1
- package/dist/assets/messagebundle_sr-4iz7n4Te.js +0 -1
- package/dist/assets/messagebundle_sr-DxELdG62.js +0 -1
- package/dist/assets/messagebundle_sv-CPOHCrxs.js +0 -1
- package/dist/assets/messagebundle_sv-i6GuWK0l.js +0 -1
- package/dist/assets/messagebundle_th-D-kPI3tt.js +0 -1
- package/dist/assets/messagebundle_th-D64J-JvN.js +0 -1
- package/dist/assets/messagebundle_tr-CuE9DqZT.js +0 -1
- package/dist/assets/messagebundle_tr-gTuGftNt.js +0 -1
- package/dist/assets/messagebundle_uk-C6JSX-jF.js +0 -1
- package/dist/assets/messagebundle_uk-IKxyo-LT.js +0 -1
- package/dist/assets/messagebundle_vi-BRdRT5L6.js +0 -1
- package/dist/assets/messagebundle_vi-rZGL12-x.js +0 -1
- package/dist/assets/messagebundle_zh_CN-L55Y4Dfs.js +0 -1
- package/dist/assets/messagebundle_zh_CN-ZalS15WG.js +0 -1
- package/dist/assets/messagebundle_zh_TW-BcMzZCW2.js +0 -1
- package/dist/assets/messagebundle_zh_TW-sRVDBYOx.js +0 -1
- package/dist/assets/parameters-bundle.css-8pAQYERs.js +0 -3
- package/dist/assets/parameters-bundle.css-B_KvbSAR.js +0 -2
- package/dist/assets/parameters-bundle.css-Ciey0vhA.js +0 -2
- package/dist/assets/parameters-bundle.css-D7Hj83QD.js +0 -2
- package/dist/assets/parameters-bundle.css-DJgsxqD8.js +0 -2
- package/dist/assets/parameters-bundle.css-DMVuljH3.js +0 -3
- package/dist/assets/parameters-bundle.css-DkHyiuRq.js +0 -3
- package/dist/assets/parameters-bundle.css-Dvgwa73x.js +0 -3
- package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js +0 -13
- package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js.map +0 -1
- package/dist/generated/templates/SecondaryNavigationSubItemTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/SecondaryNavigationSubItemTemplate.lit.js +0 -12
- package/dist/generated/templates/SecondaryNavigationSubItemTemplate.lit.js.map +0 -1
- package/dist/generated/templates/SecondaryNavigationTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/SecondaryNavigationTemplate.lit.js +0 -15
- package/dist/generated/templates/SecondaryNavigationTemplate.lit.js.map +0 -1
- package/dist/generated/templates/SideNavigationMobileTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/SideNavigationMobileTemplate.lit.js +0 -10
- package/dist/generated/templates/SideNavigationMobileTemplate.lit.js.map +0 -1
- package/src/SecondaryNavigation.hbs +0 -87
- package/src/SecondaryNavigationItem.hbs +0 -68
- package/src/SecondaryNavigationSubItem.hbs +0 -47
- package/src/SideNavigationMobile.hbs +0 -41
- package/src/generated/templates/SecondaryNavigationItemTemplate.lit.ts +0 -17
- package/src/generated/templates/SecondaryNavigationSubItemTemplate.lit.ts +0 -16
- package/src/generated/templates/SecondaryNavigationTemplate.lit.ts +0 -19
- package/src/generated/templates/SideNavigationMobileTemplate.lit.ts +0 -14
package/dist/web-types.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://raw.githubusercontent.com/JetBrains/web-types/master/schema/web-types.json",
|
|
3
3
|
"name": "@sapudex/web-components",
|
|
4
|
-
"version": "2.
|
|
4
|
+
"version": "2.59.0",
|
|
5
5
|
"description-markup": "markdown",
|
|
6
6
|
"contributions": {
|
|
7
7
|
"html": {
|
|
@@ -9801,6 +9801,11 @@
|
|
|
9801
9801
|
"description": "<h3 class=\"comment-api-title\">Overview</h3>\n\n<h3>Usage</h3>\n\nFor the <code>udex-tab-navigation</code>\n<h3>ES6 Module Import</h3>\n\n<code>import \"@sapudex/web-components/dist/TabNavigation.js\";</code>\n---\n\n\n### **Events:**\n - **click** - Fires when the tab was clicked.\n- **tab-select** - Fired when a tab is selected.\n\n### **Slots:**\n - **default** - Defines the tabs and content.\n- **footer** - Defines optional content rendered below the tab list in Vertical orientation.\nUse to place a button or any action element beneath the tabs.",
|
|
9802
9802
|
"doc-url": "",
|
|
9803
9803
|
"attributes": [
|
|
9804
|
+
{
|
|
9805
|
+
"name": "accessible-name",
|
|
9806
|
+
"description": "Defines the accessible name of the tab list.\n\nWhen set, screen readers announce this text as the name of the tab group\n(e.g. \"Profile navigation\") as focus enters the tabs. When empty, the tab\nlist is exposed by its role only, with no accessible name.",
|
|
9807
|
+
"value": { "type": "string", "default": "\"\"" }
|
|
9808
|
+
},
|
|
9804
9809
|
{
|
|
9805
9810
|
"name": "auto-play",
|
|
9806
9811
|
"description": "Enables automatic tab switching for Vertical orientation.",
|
|
@@ -9878,6 +9883,11 @@
|
|
|
9878
9883
|
],
|
|
9879
9884
|
"js": {
|
|
9880
9885
|
"properties": [
|
|
9886
|
+
{
|
|
9887
|
+
"name": "accessible-name",
|
|
9888
|
+
"description": "Defines the accessible name of the tab list.\n\nWhen set, screen readers announce this text as the name of the tab group\n(e.g. \"Profile navigation\") as focus enters the tabs. When empty, the tab\nlist is exposed by its role only, with no accessible name.",
|
|
9889
|
+
"value": { "type": "string" }
|
|
9890
|
+
},
|
|
9881
9891
|
{
|
|
9882
9892
|
"name": "auto-play",
|
|
9883
9893
|
"description": "Enables automatic tab switching for Vertical orientation.",
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"type": "module",
|
|
3
3
|
"name": "@sapudex/web-components",
|
|
4
|
-
"version": "2.
|
|
4
|
+
"version": "2.59.0",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
7
7
|
},
|
|
@@ -37,19 +37,19 @@
|
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"@types/vimeo__player": "^2.18.3",
|
|
39
39
|
"@types/youtube": "^0.1.2",
|
|
40
|
-
"@ui5/webcomponents": "2.
|
|
41
|
-
"@ui5/webcomponents-base": "2.
|
|
42
|
-
"@ui5/webcomponents-fiori": "2.
|
|
43
|
-
"@ui5/webcomponents-icons": "2.
|
|
44
|
-
"@ui5/webcomponents-localization": "2.
|
|
45
|
-
"@ui5/webcomponents-theming": "2.
|
|
40
|
+
"@ui5/webcomponents": "2.27.0",
|
|
41
|
+
"@ui5/webcomponents-base": "2.27.0",
|
|
42
|
+
"@ui5/webcomponents-fiori": "2.27.0",
|
|
43
|
+
"@ui5/webcomponents-icons": "2.27.0",
|
|
44
|
+
"@ui5/webcomponents-localization": "2.27.0",
|
|
45
|
+
"@ui5/webcomponents-theming": "2.27.0",
|
|
46
46
|
"@vimeo/player": "^2.24.0",
|
|
47
47
|
"video.js": "^8.23.6"
|
|
48
48
|
},
|
|
49
49
|
"devDependencies": {
|
|
50
50
|
"@cypress/code-coverage": "^3.14.5",
|
|
51
51
|
"@ui5/cypress-ct-ui5-webc": "^0.0.4",
|
|
52
|
-
"@ui5/webcomponents-tools": "2.
|
|
52
|
+
"@ui5/webcomponents-tools": "2.27.0",
|
|
53
53
|
"chromedriver": "149.0.2",
|
|
54
54
|
"cross-env": "^7.0.3",
|
|
55
55
|
"cypress": "^14.3.3",
|
|
@@ -25,7 +25,6 @@ export default function RatingIndicatorTemplate(this: UDExRatingIndicator) {
|
|
|
25
25
|
aria-description={this._ariaDescription}
|
|
26
26
|
tabindex={this.effectiveTabIndex}
|
|
27
27
|
onFocusIn={this._onfocusin}
|
|
28
|
-
onFocusOut={this._onfocusout}
|
|
29
28
|
onClick={this._onclick}
|
|
30
29
|
onKeyDown={this._onkeydown}
|
|
31
30
|
title={this.ratingTooltip}
|
|
@@ -4,7 +4,7 @@ import customElement from "@ui5/webcomponents-base/dist/decorators/customElement
|
|
|
4
4
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
5
5
|
import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
|
|
6
6
|
import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
|
|
7
|
-
import
|
|
7
|
+
import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
|
|
8
8
|
import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
|
|
9
9
|
import { isEscape } from "@ui5/webcomponents-base/dist/Keys.js";
|
|
10
10
|
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
@@ -16,7 +16,7 @@ import type UDExSecondaryNavigationItemBase from "./SecondaryNavigationItemBase.
|
|
|
16
16
|
import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
|
|
17
17
|
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
18
18
|
import { MORE } from "./generated/i18n/i18n-defaults.js";
|
|
19
|
-
import SecondaryNavigationTemplate from "./
|
|
19
|
+
import SecondaryNavigationTemplate from "./SecondaryNavigationTemplate.js";
|
|
20
20
|
import { BreakpointUtils } from "./utils/Breakpoints.js";
|
|
21
21
|
import parseArrayFromString from "./utils/parseArrayFromString.js";
|
|
22
22
|
import AnalyticsName from "./types/AnalyticsName.js";
|
|
@@ -71,7 +71,7 @@ type UDExSecondaryNavigationMobileMenuOpenerClickEventDetail = {
|
|
|
71
71
|
*/
|
|
72
72
|
@customElement({
|
|
73
73
|
tag: "udex-secondary-navigation",
|
|
74
|
-
renderer:
|
|
74
|
+
renderer: jsxRenderer,
|
|
75
75
|
styles: [SecondaryNavigationCss],
|
|
76
76
|
template: SecondaryNavigationTemplate,
|
|
77
77
|
dependencies: [UDExSecondaryNavigationItem],
|
|
@@ -3,8 +3,7 @@ import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
|
3
3
|
import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
|
|
4
4
|
import type { Slot } from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
5
5
|
import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
|
|
6
|
-
import
|
|
7
|
-
import UI5Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
6
|
+
import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
|
|
8
7
|
import {
|
|
9
8
|
isEscape, isEnter, isSpace, isLeft, isRight, isUp, isDown, isHome, isEnd, isTabNext, isTabPrevious,
|
|
10
9
|
} from "@ui5/webcomponents-base/dist/Keys.js";
|
|
@@ -13,9 +12,8 @@ import parseRelativeUnits from "./utils/parseRelativeUnits.js";
|
|
|
13
12
|
import UDExSecondaryNavigationSubItem from "./SecondaryNavigationSubItem.js";
|
|
14
13
|
import type { NavItem } from "./SecondaryNavigationItemBase.js";
|
|
15
14
|
import UDExSecondaryNavigationItemBase from "./SecondaryNavigationItemBase.js";
|
|
16
|
-
import "@ui5/webcomponents-icons/dist/slim-arrow-down.js";
|
|
17
15
|
|
|
18
|
-
import SecondaryNavigationItemTemplate from "./
|
|
16
|
+
import SecondaryNavigationItemTemplate from "./SecondaryNavigationItemTemplate.js";
|
|
19
17
|
|
|
20
18
|
// Styles
|
|
21
19
|
import SecondaryNavigationItemCss from "./generated/themes/SecondaryNavigationItem.css.js";
|
|
@@ -54,10 +52,10 @@ type UDExSecondaryNavigationItemSubItemClickEventDetail = {
|
|
|
54
52
|
*/
|
|
55
53
|
@customElement({
|
|
56
54
|
tag: "udex-secondary-navigation-item",
|
|
57
|
-
renderer:
|
|
55
|
+
renderer: jsxRenderer,
|
|
58
56
|
styles: [SecondaryNavigationItemCss],
|
|
59
57
|
template: SecondaryNavigationItemTemplate,
|
|
60
|
-
dependencies: [
|
|
58
|
+
dependencies: [UDExSecondaryNavigationSubItem],
|
|
61
59
|
})
|
|
62
60
|
|
|
63
61
|
/**
|
|
@@ -2,7 +2,7 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
|
2
2
|
import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
|
|
3
3
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
4
4
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
5
|
-
import
|
|
5
|
+
import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
|
|
6
6
|
import type { ResizeObserverCallback } from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
7
7
|
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
8
8
|
import { UDExTarget } from "./types/common.js";
|
|
@@ -30,7 +30,7 @@ export type NavItem = {
|
|
|
30
30
|
* @public
|
|
31
31
|
*/
|
|
32
32
|
@customElement({
|
|
33
|
-
renderer:
|
|
33
|
+
renderer: jsxRenderer,
|
|
34
34
|
})
|
|
35
35
|
|
|
36
36
|
class UDExSecondaryNavigationItemBase extends UI5Element {
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import type UDExSecondaryNavigationItem from "./SecondaryNavigationItem.js";
|
|
2
|
+
import UDExSecondaryNavigationSubItem from "./SecondaryNavigationSubItem.js";
|
|
3
|
+
import UI5Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
4
|
+
import IconMode from "@ui5/webcomponents/dist/types/IconMode.js";
|
|
5
|
+
import slimArrowDownIcon from "@ui5/webcomponents-icons/dist/slim-arrow-down.js";
|
|
6
|
+
|
|
7
|
+
export default function SecondaryNavigationItemTemplate(this: UDExSecondaryNavigationItem) {
|
|
8
|
+
if (this.isLink) {
|
|
9
|
+
return (
|
|
10
|
+
<a
|
|
11
|
+
className="udex-secondary-navigation__item"
|
|
12
|
+
tabindex={0}
|
|
13
|
+
href={this.path}
|
|
14
|
+
target={this.target}
|
|
15
|
+
aria-current={(this.ariaCurrent || undefined) as "page" | undefined}
|
|
16
|
+
onKeyDown={this.handleItemLinkKeyDown}
|
|
17
|
+
onClick={this.fireNavItemClickEvent as any}
|
|
18
|
+
{...{ "active": this.isActive || undefined }}>
|
|
19
|
+
{this.itemLabel}
|
|
20
|
+
</a>
|
|
21
|
+
);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
return (
|
|
25
|
+
<>
|
|
26
|
+
<button
|
|
27
|
+
className="udex-secondary-navigation__item"
|
|
28
|
+
tabindex={0}
|
|
29
|
+
aria-haspopup={this.hasNestedItems}
|
|
30
|
+
aria-expanded={this.isOpen}
|
|
31
|
+
aria-label={this.ariaLabel || undefined}
|
|
32
|
+
onKeyDown={this.handleItemEnterOrSpaceKeys}
|
|
33
|
+
onClick={this.openDropdown as any}
|
|
34
|
+
{...{ "active": this.isActive || undefined }}>
|
|
35
|
+
<span className="udex-secondary-navigation__item-text-wrap">
|
|
36
|
+
{this.itemLabel}
|
|
37
|
+
{this._subTitle && (
|
|
38
|
+
<span className="udex-secondary-navigation__item-sub-title">
|
|
39
|
+
{this._subTitle}
|
|
40
|
+
</span>
|
|
41
|
+
)}
|
|
42
|
+
{this.hasNestedItems && (
|
|
43
|
+
<UI5Icon
|
|
44
|
+
class="udex-secondary-navigation__item-icon"
|
|
45
|
+
name={slimArrowDownIcon}
|
|
46
|
+
mode={IconMode.Decorative}>
|
|
47
|
+
</UI5Icon>
|
|
48
|
+
)}
|
|
49
|
+
</span>
|
|
50
|
+
</button>
|
|
51
|
+
{this.isOpen && (
|
|
52
|
+
<div className="udex-secondary-navigation__dropdown">
|
|
53
|
+
<ul
|
|
54
|
+
className="udex-secondary-navigation__dropdown-list"
|
|
55
|
+
onKeyDown={this.handleSubItemKeyDown}>
|
|
56
|
+
{this._processedItems.map((item, index) => (
|
|
57
|
+
<li>
|
|
58
|
+
<UDExSecondaryNavigationSubItem
|
|
59
|
+
index={index}
|
|
60
|
+
onui5-sub-item-click={this.handleSubItemClick}
|
|
61
|
+
onui5-back-item-click={this.onBackClick}
|
|
62
|
+
is-back={item.isBack || undefined}
|
|
63
|
+
label={item.title}
|
|
64
|
+
mobile-link-title={item.mobileLinkTitle}
|
|
65
|
+
nestedItems={item.items ?? []}
|
|
66
|
+
path={item.path}
|
|
67
|
+
target={item.target}
|
|
68
|
+
active={item.active}>
|
|
69
|
+
</UDExSecondaryNavigationSubItem>
|
|
70
|
+
</li>
|
|
71
|
+
))}
|
|
72
|
+
</ul>
|
|
73
|
+
<div onKeyDown={this.handleButtonsEscKey}>
|
|
74
|
+
<slot></slot>
|
|
75
|
+
</div>
|
|
76
|
+
</div>
|
|
77
|
+
)}
|
|
78
|
+
</>
|
|
79
|
+
);
|
|
80
|
+
}
|
|
@@ -1,16 +1,13 @@
|
|
|
1
1
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
2
2
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
3
3
|
import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
|
|
4
|
-
import
|
|
5
|
-
import UI5Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
4
|
+
import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
|
|
6
5
|
import type { NavItem } from "./SecondaryNavigationItemBase.js";
|
|
7
6
|
import UDExSecondaryNavigationItemBase from "./SecondaryNavigationItemBase.js";
|
|
8
7
|
import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
|
|
9
8
|
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
10
9
|
import { BACK_BUTTON_LABEL } from "./generated/i18n/i18n-defaults.js";
|
|
11
|
-
import "
|
|
12
|
-
import "@ui5/webcomponents-icons/dist/slim-arrow-right.js";
|
|
13
|
-
import SecondaryNavigationSubItemTemplate from "./generated/templates/SecondaryNavigationSubItemTemplate.lit.js";
|
|
10
|
+
import SecondaryNavigationSubItemTemplate from "./SecondaryNavigationSubItemTemplate.js";
|
|
14
11
|
import translate from "./utils/translate.js";
|
|
15
12
|
|
|
16
13
|
// Styles
|
|
@@ -45,10 +42,9 @@ type UDExSecondaryNavigationSubItemBackClickEventDetail = {
|
|
|
45
42
|
*/
|
|
46
43
|
@customElement({
|
|
47
44
|
tag: "udex-secondary-navigation-sub-item",
|
|
48
|
-
renderer:
|
|
45
|
+
renderer: jsxRenderer,
|
|
49
46
|
styles: SecondaryNavigationSubItemCss,
|
|
50
47
|
template: SecondaryNavigationSubItemTemplate,
|
|
51
|
-
dependencies: [UI5Icon],
|
|
52
48
|
})
|
|
53
49
|
|
|
54
50
|
/**
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import type UDExSecondaryNavigationSubItem from "./SecondaryNavigationSubItem.js";
|
|
2
|
+
import UI5Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
3
|
+
import IconMode from "@ui5/webcomponents/dist/types/IconMode.js";
|
|
4
|
+
import slimArrowLeftIcon from "@ui5/webcomponents-icons/dist/slim-arrow-left.js";
|
|
5
|
+
import slimArrowRightIcon from "@ui5/webcomponents-icons/dist/slim-arrow-right.js";
|
|
6
|
+
|
|
7
|
+
export default function SecondaryNavigationSubItemTemplate(this: UDExSecondaryNavigationSubItem) {
|
|
8
|
+
if (this.isBack) {
|
|
9
|
+
return (
|
|
10
|
+
<button
|
|
11
|
+
className="udex-secondary-navigation__dropdown-item"
|
|
12
|
+
onClick={this.onBackItemClick as any}
|
|
13
|
+
aria-label={this.backButtonAriaLabel}
|
|
14
|
+
tabindex={0}
|
|
15
|
+
{...{ "is-back": "" }}>
|
|
16
|
+
<UI5Icon
|
|
17
|
+
class="udex-secondary-navigation__dropdown-icon udex-secondary-navigation__dropdown-icon_back"
|
|
18
|
+
name={slimArrowLeftIcon}
|
|
19
|
+
mode={IconMode.Decorative}>
|
|
20
|
+
</UI5Icon>
|
|
21
|
+
{this.itemLabel}
|
|
22
|
+
</button>
|
|
23
|
+
);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
if (this.isButton) {
|
|
27
|
+
return (
|
|
28
|
+
<button
|
|
29
|
+
onClick={this.onItemClick as any}
|
|
30
|
+
aria-haspopup={this.hasItems || undefined}
|
|
31
|
+
{...{
|
|
32
|
+
"sub-active": this.isSubItemActive || undefined,
|
|
33
|
+
"active": this.active || undefined,
|
|
34
|
+
}}
|
|
35
|
+
aria-label={this.label || undefined}
|
|
36
|
+
tabindex={0}
|
|
37
|
+
aria-current={(this.ariaCurrent || undefined) as "page" | undefined}
|
|
38
|
+
className="udex-secondary-navigation__dropdown-item">
|
|
39
|
+
{this.itemLabel}
|
|
40
|
+
{this.hasItems && (
|
|
41
|
+
<UI5Icon
|
|
42
|
+
class="udex-secondary-navigation__dropdown-icon"
|
|
43
|
+
name={slimArrowRightIcon}
|
|
44
|
+
mode={IconMode.Decorative}>
|
|
45
|
+
</UI5Icon>
|
|
46
|
+
)}
|
|
47
|
+
</button>
|
|
48
|
+
);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
return (
|
|
52
|
+
<a
|
|
53
|
+
className="udex-secondary-navigation__dropdown-item"
|
|
54
|
+
onClick={this.onItemClick as any}
|
|
55
|
+
href={this.path}
|
|
56
|
+
target={this.target}
|
|
57
|
+
tabindex={0}
|
|
58
|
+
aria-current={(this.ariaCurrent || undefined) as "page" | undefined}
|
|
59
|
+
{...{ "active": this.active || undefined }}>
|
|
60
|
+
{this.itemLabel}
|
|
61
|
+
</a>
|
|
62
|
+
);
|
|
63
|
+
}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import type UDExSecondaryNavigation from "./SecondaryNavigation.js";
|
|
2
|
+
import UDExSecondaryNavigationItem from "./SecondaryNavigationItem.js";
|
|
3
|
+
|
|
4
|
+
export default function SecondaryNavigationTemplate(this: UDExSecondaryNavigation) {
|
|
5
|
+
return (
|
|
6
|
+
<div className={this.rootClass}>
|
|
7
|
+
{this.hasBreadcrumbsSlot && (
|
|
8
|
+
<div className="udex-secondary-navigation__breadcrumbs">
|
|
9
|
+
<slot name="breadcrumbs"></slot>
|
|
10
|
+
</div>
|
|
11
|
+
)}
|
|
12
|
+
<div className="udex-secondary-navigation__holder">
|
|
13
|
+
{this.heading.length > 0 && (
|
|
14
|
+
<div className="udex-secondary-navigation__heading">
|
|
15
|
+
{this.headingHref.length > 0 ? (
|
|
16
|
+
<a
|
|
17
|
+
className="udex-secondary-navigation__title"
|
|
18
|
+
tabindex={0}
|
|
19
|
+
onClick={this.handleHeadingClick as any}
|
|
20
|
+
href={this.headingHref}>
|
|
21
|
+
{this.heading}
|
|
22
|
+
</a>
|
|
23
|
+
) : (
|
|
24
|
+
<span className="udex-secondary-navigation__title">{this.heading}</span>
|
|
25
|
+
)}
|
|
26
|
+
</div>
|
|
27
|
+
)}
|
|
28
|
+
<nav className="udex-secondary-navigation__wrap">
|
|
29
|
+
<ul
|
|
30
|
+
className="udex-secondary-navigation__list"
|
|
31
|
+
onKeyDown={this.handleKeyDown}>
|
|
32
|
+
{this.visibleItems.map((item, index) => (
|
|
33
|
+
<li className="udex-secondary-navigation__list-item">
|
|
34
|
+
<UDExSecondaryNavigationItem
|
|
35
|
+
index={index}
|
|
36
|
+
active={item.active}
|
|
37
|
+
path={item.path}
|
|
38
|
+
label={item.title}
|
|
39
|
+
mobile-link-title={item.mobileLinkTitle}
|
|
40
|
+
target={item.target}
|
|
41
|
+
subItems={item.items ?? []}
|
|
42
|
+
onui5-sub-item-click={this.handleSubItemClick}
|
|
43
|
+
onui5-nav-item-click={this.handleItemClick}
|
|
44
|
+
{...{ "_nav-items-length": this.visibleItems.length }}>
|
|
45
|
+
</UDExSecondaryNavigationItem>
|
|
46
|
+
</li>
|
|
47
|
+
))}
|
|
48
|
+
{this._showMoreButton && (
|
|
49
|
+
<li className="udex-secondary-navigation__list-item">
|
|
50
|
+
<UDExSecondaryNavigationItem
|
|
51
|
+
index={this.visibleItems.length}
|
|
52
|
+
onui5-sub-item-click={this.handleSubItemClick}
|
|
53
|
+
onui5-nav-item-click={this.handleItemClick}
|
|
54
|
+
label={this.moreButtonText}
|
|
55
|
+
subItems={this._overflowItems}
|
|
56
|
+
{...{ "_nav-items-length": this.visibleItems.length }}>
|
|
57
|
+
</UDExSecondaryNavigationItem>
|
|
58
|
+
</li>
|
|
59
|
+
)}
|
|
60
|
+
</ul>
|
|
61
|
+
{this.hasDesktopButtonsSlot && (
|
|
62
|
+
<div className="udex-secondary-navigation__buttons">
|
|
63
|
+
<slot name="buttons"></slot>
|
|
64
|
+
</div>
|
|
65
|
+
)}
|
|
66
|
+
</nav>
|
|
67
|
+
</div>
|
|
68
|
+
<UDExSecondaryNavigationItem
|
|
69
|
+
class="udex-secondary-navigation__mobile-nav"
|
|
70
|
+
role="button"
|
|
71
|
+
aria-label={this.mobileMenuOpenerAriaLabel}
|
|
72
|
+
label={this.heading}
|
|
73
|
+
mobile-link-title={this.title}
|
|
74
|
+
onui5-nav-item-click={this.handleMobileMenuOpenerClick}
|
|
75
|
+
onui5-sub-item-click={this.handleSubItemClick}
|
|
76
|
+
onKeyDown={this.handleKeyDown}
|
|
77
|
+
subItems={this.parsedItems}
|
|
78
|
+
{...{
|
|
79
|
+
"_is-mobile-menu-opener": "",
|
|
80
|
+
"_max-height": this.maxDropdownHeight
|
|
81
|
+
}}>
|
|
82
|
+
{this.hasMobileButtonsSlot && (
|
|
83
|
+
<div className="udex-secondary-navigation__buttons" onClick={this.handleMobileButtonsClick}>
|
|
84
|
+
<slot name="buttons"></slot>
|
|
85
|
+
</div>
|
|
86
|
+
)}
|
|
87
|
+
</UDExSecondaryNavigationItem>
|
|
88
|
+
</div>
|
|
89
|
+
);
|
|
90
|
+
}
|
|
@@ -3,13 +3,9 @@ import type { DefaultSlot, Slot } from "@ui5/webcomponents-base/dist/UI5Element.
|
|
|
3
3
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
4
4
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
5
5
|
import slot from "@ui5/webcomponents-base/dist/decorators/slot-strict.js";
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import UDExDropdown from "./Dropdown.js";
|
|
10
|
-
import "@ui5/webcomponents-icons/dist/slim-arrow-down.js";
|
|
11
|
-
|
|
12
|
-
import SideNavigationMobileTemplate from "./generated/templates/SideNavigationMobileTemplate.lit.js";
|
|
6
|
+
import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
|
|
7
|
+
import SideNavigationMobileTemplate from "./SideNavigationMobileTemplate.js";
|
|
8
|
+
import type UDExDropdown from "./Dropdown.js";
|
|
13
9
|
import type UDExSideNavigationItem from "./SideNavigationItem.js";
|
|
14
10
|
import type UDExSideNavigationSubItem from "./SideNavigationSubItem.js";
|
|
15
11
|
import type UDExSideNavigationGroup from "./SideNavigationGroup.js";
|
|
@@ -39,10 +35,9 @@ export type SelectedItem = UDExSideNavigationItem | UDExSideNavigationSubItem |
|
|
|
39
35
|
*/
|
|
40
36
|
@customElement({
|
|
41
37
|
tag: "udex-side-navigation-mobile",
|
|
42
|
-
renderer:
|
|
38
|
+
renderer: jsxRenderer,
|
|
43
39
|
template: SideNavigationMobileTemplate,
|
|
44
40
|
styles: [SideNavigationMobileCss, SideNavigationMobileDropdownCss],
|
|
45
|
-
dependencies: [UDExSideNavigation, UDExDropdown, Icon],
|
|
46
41
|
})
|
|
47
42
|
|
|
48
43
|
class UDExSideNavigationMobile extends UI5Element {
|
|
@@ -86,23 +81,35 @@ class UDExSideNavigationMobile extends UI5Element {
|
|
|
86
81
|
_selectedItem!: SelectedItem;
|
|
87
82
|
|
|
88
83
|
_navItems!: Array<UDExSideNavigationItem | UDExSideNavigationGroup>;
|
|
89
|
-
_initialized = false;
|
|
90
84
|
_dropdown!: UDExDropdown;
|
|
91
85
|
|
|
92
86
|
onBeforeRendering() {
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
87
|
+
const items = this.getSlottedNodes<UDExSideNavigationItem | UDExSideNavigationGroup>("navItems");
|
|
88
|
+
const fixedItems = this.getSlottedNodes<UDExSideNavigationItem | UDExSideNavigationGroup>("fixedItems");
|
|
89
|
+
const allItems = items.concat(fixedItems);
|
|
90
|
+
if (allItems.length > 0) {
|
|
91
|
+
this._navItems = allItems;
|
|
92
|
+
}
|
|
93
|
+
if (!this._selectedItem && this._navItems?.length) {
|
|
97
94
|
this._selectedItem = this.getSelectedItem() || null;
|
|
98
95
|
}
|
|
99
|
-
this._initialized = true;
|
|
100
96
|
}
|
|
101
97
|
|
|
102
98
|
onAfterRendering() {
|
|
103
99
|
this._dropdown = this._getResponsePopover();
|
|
104
100
|
}
|
|
105
101
|
|
|
102
|
+
_setNavItems = (sideNavigation: HTMLElement | null) => {
|
|
103
|
+
if (!sideNavigation) {
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
this._navItems?.forEach(item => {
|
|
107
|
+
if (item.parentElement !== sideNavigation) {
|
|
108
|
+
sideNavigation.appendChild(item);
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
};
|
|
112
|
+
|
|
106
113
|
_getResponsePopover(): UDExDropdown {
|
|
107
114
|
return this.shadowRoot!.querySelector<UDExDropdown>(`[udex-dropdown]`)!;
|
|
108
115
|
}
|
|
@@ -133,9 +140,9 @@ class UDExSideNavigationMobile extends UI5Element {
|
|
|
133
140
|
|
|
134
141
|
getSelectedItem(): UDExSideNavigationItem | UDExSideNavigationSubItem | undefined {
|
|
135
142
|
const items = this._navItems.reduce((result, item) => {
|
|
136
|
-
return (result).concat(item.allItems as UDExSideNavigationSubItem[]);
|
|
143
|
+
return (result).concat((item.allItems as UDExSideNavigationSubItem[]) || []);
|
|
137
144
|
}, new Array<UDExSideNavigationItem | UDExSideNavigationSubItem>());
|
|
138
|
-
return items.find(item => item
|
|
145
|
+
return items.find(item => item?._selected);
|
|
139
146
|
}
|
|
140
147
|
}
|
|
141
148
|
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import type UDExSideNavigationMobile from "./SideNavigationMobile.js";
|
|
2
|
+
import Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
3
|
+
import UDExDropdown from "./Dropdown.js";
|
|
4
|
+
import UDExSideNavigation from "./SideNavigation.js";
|
|
5
|
+
import { PopoverActualHorizontalAlign, PopoverActualPlacement } from "@ui5/webcomponents/Popover.js";
|
|
6
|
+
import slimArrowDown from "@ui5/webcomponents-icons/dist/slim-arrow-down.js";
|
|
7
|
+
|
|
8
|
+
export default function SideNavigationMobileTemplate(this: UDExSideNavigationMobile) {
|
|
9
|
+
return (
|
|
10
|
+
<>
|
|
11
|
+
<div
|
|
12
|
+
id={`udex-${this._id}-side-navigation-mobile__opener`}
|
|
13
|
+
class="udex-side-navigation-mobile__trigger"
|
|
14
|
+
aria-haspopup="true"
|
|
15
|
+
tabindex={0}
|
|
16
|
+
onKeyDown={this.handleKeydown}
|
|
17
|
+
onClick={this.handleTriggerClick}
|
|
18
|
+
accessible-role="button"
|
|
19
|
+
{...{
|
|
20
|
+
"active": this._dropdownOpened || undefined,
|
|
21
|
+
}}>
|
|
22
|
+
<div class="udex-side-navigation-mobile__selected-item">
|
|
23
|
+
{this._selectedItem ? (
|
|
24
|
+
<>
|
|
25
|
+
{this._selectedItem.icon ? (
|
|
26
|
+
<Icon
|
|
27
|
+
class="udex-side-navigation-mobile__selected-item-icon"
|
|
28
|
+
name={this._selectedItem.icon}>
|
|
29
|
+
</Icon>
|
|
30
|
+
) : undefined}
|
|
31
|
+
<span>{this._selectedItem.text}</span>
|
|
32
|
+
</>
|
|
33
|
+
) : undefined}
|
|
34
|
+
</div>
|
|
35
|
+
<Icon
|
|
36
|
+
class="udex-side-navigation-mobile__trigger-toggle-icon"
|
|
37
|
+
name={slimArrowDown}>
|
|
38
|
+
</Icon>
|
|
39
|
+
</div>
|
|
40
|
+
<UDExDropdown
|
|
41
|
+
id={`udex-${this._id}-side-navigation-mobile__popover`}
|
|
42
|
+
class="udex-side-navigation-mobile__popover"
|
|
43
|
+
placement={PopoverActualPlacement.Bottom}
|
|
44
|
+
onOpen={this._afterDropdownOpen}
|
|
45
|
+
onClose={this._afterDropdownClose}
|
|
46
|
+
horizontalAlign={PopoverActualHorizontalAlign.Stretch}
|
|
47
|
+
height="none"
|
|
48
|
+
{...{
|
|
49
|
+
"opener": `udex-${this._id}-side-navigation-mobile__opener`,
|
|
50
|
+
"disable-target-overlap": "true",
|
|
51
|
+
}}>
|
|
52
|
+
<UDExSideNavigation
|
|
53
|
+
ref={this._setNavItems}
|
|
54
|
+
onSelectionChange={this._handleSelectionChanged as any}>
|
|
55
|
+
</UDExSideNavigation>
|
|
56
|
+
</UDExDropdown>
|
|
57
|
+
</>
|
|
58
|
+
);
|
|
59
|
+
}
|
package/src/TabNavigation.ts
CHANGED
|
@@ -218,6 +218,19 @@ class UDExTabNavigation extends UI5Element {
|
|
|
218
218
|
@property({ type: String })
|
|
219
219
|
tabWidth: string = "auto";
|
|
220
220
|
|
|
221
|
+
/**
|
|
222
|
+
* Defines the accessible name of the tab list.
|
|
223
|
+
*
|
|
224
|
+
* When set, screen readers announce this text as the name of the tab group
|
|
225
|
+
* (e.g. "Profile navigation") as focus enters the tabs. When empty, the tab
|
|
226
|
+
* list is exposed by its role only, with no accessible name.
|
|
227
|
+
*
|
|
228
|
+
* @public
|
|
229
|
+
* @default ""
|
|
230
|
+
*/
|
|
231
|
+
@property()
|
|
232
|
+
accessibleName: string = "";
|
|
233
|
+
|
|
221
234
|
/**
|
|
222
235
|
* Defines selected tab.
|
|
223
236
|
*
|
|
@@ -1039,6 +1052,10 @@ class UDExTabNavigation extends UI5Element {
|
|
|
1039
1052
|
return this.isVertical ? "vertical" : "horizontal";
|
|
1040
1053
|
}
|
|
1041
1054
|
|
|
1055
|
+
get tablistAriaLabel(): string | undefined {
|
|
1056
|
+
return this.accessibleName || undefined;
|
|
1057
|
+
}
|
|
1058
|
+
|
|
1042
1059
|
get isDesktop(): boolean {
|
|
1043
1060
|
return isDesktop();
|
|
1044
1061
|
}
|
|
@@ -27,7 +27,7 @@ export default function TabNavigationTemplate(this: UDExTabNavigation) {
|
|
|
27
27
|
id={`${this._id}-header-tabs`}
|
|
28
28
|
className="udex-tab-navigation__header-tabs"
|
|
29
29
|
role="tablist"
|
|
30
|
-
aria-
|
|
30
|
+
aria-label={this.tablistAriaLabel}
|
|
31
31
|
aria-orientation={this.ariaOrientationValue as "horizontal" | "vertical"}
|
|
32
32
|
part="tab-navigation-header-tabs"
|
|
33
33
|
onClick={this.onTabClick}
|
package/src/TagGroup.ts
CHANGED
|
@@ -2,6 +2,7 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
|
2
2
|
import type { DefaultSlot } from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
3
3
|
import Tokenizer from "@ui5/webcomponents/dist/Tokenizer.js";
|
|
4
4
|
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
5
|
+
import { renderFinished } from "@ui5/webcomponents-base/dist/Render.js";
|
|
5
6
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
6
7
|
import getActiveElement from "@ui5/webcomponents-base/dist/util/getActiveElement.js";
|
|
7
8
|
import {
|
|
@@ -301,13 +302,23 @@ class UDExTagGroup extends UI5Element {
|
|
|
301
302
|
this.fireDecoratorEvent("tag-keydown", { originalEvent: e });
|
|
302
303
|
}
|
|
303
304
|
|
|
304
|
-
showMoreItems(): void {
|
|
305
|
+
async showMoreItems(): Promise<void> {
|
|
305
306
|
if (this.fireDecoratorEvent("show-more-tags")) {
|
|
306
307
|
const moreBtn = this._tokenizer.moreLink;
|
|
307
308
|
if (moreBtn) {
|
|
308
309
|
this._tokenizer.expanded = false;
|
|
309
|
-
|
|
310
|
-
|
|
310
|
+
// The tooltip is only rendered while `_isHiddenTags` is true (see the
|
|
311
|
+
// template). Depending on resize timing (changed in @ui5/webcomponents
|
|
312
|
+
// 2.27) the flag can still be false when the "n more" button is clicked,
|
|
313
|
+
// so the presence of `moreBtn` is the authoritative signal that there
|
|
314
|
+
// are hidden tags. Set the flag and wait for the tooltip to render
|
|
315
|
+
// before opening it, otherwise `this.tooltip` is null.
|
|
316
|
+
this._isHiddenTags = true;
|
|
317
|
+
await renderFinished();
|
|
318
|
+
if (this.tooltip) {
|
|
319
|
+
this.tooltip.opener = moreBtn;
|
|
320
|
+
this.tooltip.open = true;
|
|
321
|
+
}
|
|
311
322
|
}
|
|
312
323
|
}
|
|
313
324
|
}
|
|
@@ -333,8 +344,8 @@ class UDExTagGroup extends UI5Element {
|
|
|
333
344
|
return this.shadowRoot!.querySelector<Tokenizer>(`#${this._id}-tag-group-tokenizer`)!;
|
|
334
345
|
}
|
|
335
346
|
|
|
336
|
-
get tooltip(): UDExTooltip {
|
|
337
|
-
return this.shadowRoot!.querySelector<UDExTooltip>(`#${this._id}-tag-group-tooltip`)
|
|
347
|
+
get tooltip(): UDExTooltip | null {
|
|
348
|
+
return this.shadowRoot!.querySelector<UDExTooltip>(`#${this._id}-tag-group-tooltip`);
|
|
338
349
|
}
|
|
339
350
|
}
|
|
340
351
|
|