@tylertech/forge 3.0.0-next.11 → 3.0.0-next.12
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/custom-elements.json +36275 -28495
- package/dist/esm/accordion/index.js +1 -1
- package/dist/esm/app-bar/help-button/index.js +1 -1
- package/dist/esm/app-bar/index.js +1 -1
- package/dist/esm/app-bar/menu-button/index.js +1 -1
- package/dist/esm/app-bar/notification-button/index.js +1 -1
- package/dist/esm/app-bar/profile-button/index.js +1 -1
- package/dist/esm/app-bar/search/index.js +1 -1
- package/dist/esm/autocomplete/index.js +1 -1
- package/dist/esm/avatar/index.js +1 -1
- package/dist/esm/backdrop/index.js +1 -1
- package/dist/esm/badge/index.js +1 -1
- package/dist/esm/banner/index.js +1 -1
- package/dist/esm/bottom-sheet/index.js +1 -1
- package/dist/esm/busy-indicator/index.js +1 -1
- package/dist/esm/button/index.js +1 -1
- package/dist/esm/button-area/index.js +7 -0
- package/dist/esm/button-area/index.js.map +7 -0
- package/dist/esm/button-toggle/button-toggle/index.js +1 -1
- package/dist/esm/button-toggle/button-toggle-group/index.js +1 -1
- package/dist/esm/button-toggle/index.js +1 -1
- package/dist/esm/calendar/calendar-dropdown/index.js +1 -1
- package/dist/esm/calendar/calendar-menu/index.js +1 -1
- package/dist/esm/calendar/index.js +1 -1
- package/dist/esm/card/index.js +1 -1
- package/dist/esm/checkbox/index.js +1 -1
- package/dist/esm/chip-field/index.js +1 -1
- package/dist/esm/chips/chip/index.js +1 -1
- package/dist/esm/chips/chip-set/index.js +1 -1
- package/dist/esm/chips/index.js +1 -1
- package/dist/esm/chunks/chunk.2LIWNFQK.js +7 -0
- package/dist/esm/chunks/{chunk.FWFOOQMA.js → chunk.2WSXSOYB.js} +2 -2
- package/dist/esm/chunks/{chunk.YWNCJ7XP.js → chunk.37JFBP4X.js} +2 -2
- package/dist/esm/chunks/{chunk.D5TAI6Q7.js → chunk.3X4N4ZPY.js} +2 -2
- package/dist/esm/chunks/{chunk.LK4AAUOP.js → chunk.436MTO6R.js} +2 -2
- package/dist/esm/chunks/{chunk.P2ZCNO63.js → chunk.4CXLGEJO.js} +2 -2
- package/dist/esm/chunks/{chunk.P2ZCNO63.js.map → chunk.4CXLGEJO.js.map} +1 -1
- package/dist/esm/chunks/{chunk.EK24Y56W.js → chunk.4JF54GDJ.js} +2 -2
- package/dist/esm/chunks/{chunk.SMGXXR6K.js → chunk.4USQ2AP6.js} +2 -2
- package/dist/esm/chunks/{chunk.MHBBMC6O.js → chunk.4XJYS5WH.js} +2 -2
- package/dist/esm/chunks/{chunk.7TMLILLW.js → chunk.5ASOX23Q.js} +2 -2
- package/dist/esm/chunks/{chunk.7TMLILLW.js.map → chunk.5ASOX23Q.js.map} +1 -1
- package/dist/esm/chunks/{chunk.624UKZFU.js → chunk.66X366TV.js} +2 -2
- package/dist/esm/chunks/chunk.6VSFLBZF.js +7 -0
- package/dist/esm/chunks/{chunk.7DB3XVPI.js.map → chunk.6VSFLBZF.js.map} +3 -3
- package/dist/esm/chunks/chunk.7L66GZDN.js +7 -0
- package/dist/esm/chunks/{chunk.4YFVG4KP.js → chunk.7M4HRJYP.js} +2 -2
- package/dist/esm/chunks/{chunk.CKW7KKDW.js → chunk.7PPBXNAD.js} +2 -2
- package/dist/esm/chunks/{chunk.A62DE5PD.js → chunk.7UJAI6P2.js} +2 -2
- package/dist/esm/chunks/{chunk.UJ2WQOLO.js → chunk.A3ZDCBLA.js} +2 -2
- package/dist/esm/chunks/{chunk.2QHD3DCR.js → chunk.AHAARGYM.js} +2 -2
- package/dist/esm/chunks/chunk.AQ7ROWO4.js +7 -0
- package/dist/esm/chunks/chunk.AQ7ROWO4.js.map +7 -0
- package/dist/esm/chunks/{chunk.Q7Z3SJ5F.js → chunk.AY43NTAK.js} +2 -2
- package/dist/esm/chunks/{chunk.AEKOP3XT.js → chunk.C2MQN7MI.js} +2 -2
- package/dist/esm/chunks/{chunk.AEKOP3XT.js.map → chunk.C2MQN7MI.js.map} +2 -2
- package/dist/esm/chunks/{chunk.K3KAM2PL.js → chunk.C5ZUGOOC.js} +2 -2
- package/dist/esm/chunks/{chunk.QOJESHEV.js → chunk.C7VEJINB.js} +2 -2
- package/dist/esm/chunks/{chunk.YLG6ZC5K.js → chunk.CBIHNCT5.js} +2 -2
- package/dist/esm/chunks/{chunk.JIKSKUDW.js → chunk.CLD75EBJ.js} +2 -2
- package/dist/esm/chunks/chunk.CMRVP4EA.js +7 -0
- package/dist/esm/chunks/chunk.CMRVP4EA.js.map +7 -0
- package/dist/esm/chunks/{chunk.TK5I4RHF.js → chunk.CQQSOTZ5.js} +2 -2
- package/dist/esm/chunks/chunk.CZEF72BG.js +12 -0
- package/dist/esm/chunks/chunk.CZEF72BG.js.map +7 -0
- package/dist/esm/chunks/chunk.D5ZHKPCL.js +7 -0
- package/dist/esm/chunks/chunk.D5ZHKPCL.js.map +7 -0
- package/dist/esm/chunks/{chunk.XKI46BH2.js → chunk.DABGA7I6.js} +2 -2
- package/dist/esm/chunks/{chunk.MTKSU2BV.js → chunk.DH76CMUT.js} +2 -2
- package/dist/esm/chunks/{chunk.MXEKIEJA.js → chunk.DLQSINSS.js} +2 -2
- package/dist/esm/chunks/{chunk.W4247Q2P.js → chunk.DQVYB55P.js} +2 -2
- package/dist/esm/chunks/chunk.E4TAHUQO.js +177 -0
- package/dist/esm/chunks/chunk.E4TAHUQO.js.map +7 -0
- package/dist/esm/chunks/{chunk.WPG7NNQX.js → chunk.EY37FYZ4.js} +2 -2
- package/dist/esm/chunks/chunk.FK6NNHXH.js +7 -0
- package/dist/esm/chunks/chunk.FK6NNHXH.js.map +7 -0
- package/dist/esm/chunks/chunk.G6JWSERI.js +7 -0
- package/dist/esm/chunks/{chunk.F74YURLV.js.map → chunk.G6JWSERI.js.map} +4 -4
- package/dist/esm/chunks/chunk.GHR7T6U2.js +7 -0
- package/dist/esm/chunks/chunk.GHR7T6U2.js.map +7 -0
- package/dist/esm/chunks/{chunk.LXPFG7MW.js → chunk.GWIXDVIA.js} +2 -2
- package/dist/esm/chunks/{chunk.Z6FCL3G3.js → chunk.HBCDD25D.js} +2 -2
- package/dist/esm/chunks/{chunk.M56LSSPW.js → chunk.HDO3WRH7.js} +2 -2
- package/dist/esm/chunks/{chunk.DXN7ZOH3.js → chunk.HGH6SSHZ.js} +2 -2
- package/dist/esm/chunks/chunk.HJ23XQDJ.js +7 -0
- package/dist/esm/chunks/chunk.HJ23XQDJ.js.map +7 -0
- package/dist/esm/chunks/{chunk.LFODKHUO.js → chunk.HKSXC5VK.js} +2 -2
- package/dist/esm/chunks/chunk.I5SFCLDD.js +7 -0
- package/dist/esm/chunks/{chunk.MVTBJPO2.js.map → chunk.I5SFCLDD.js.map} +3 -3
- package/dist/esm/chunks/{chunk.S3JMOOWC.js → chunk.IJ2I25V3.js} +2 -2
- package/dist/esm/chunks/{chunk.JUJGROHA.js → chunk.IURDWGLD.js} +2 -2
- package/dist/esm/chunks/chunk.IXGXASHQ.js +7 -0
- package/dist/esm/chunks/{chunk.YX7WLO5Y.js.map → chunk.IXGXASHQ.js.map} +2 -2
- package/dist/esm/chunks/{chunk.F5SY2D4B.js → chunk.JCO4M4PF.js} +2 -2
- package/dist/esm/chunks/{chunk.5565ZSTH.js → chunk.LNLO36U6.js} +2 -2
- package/dist/esm/chunks/chunk.LV7XF22P.js +7 -0
- package/dist/esm/chunks/chunk.LV7XF22P.js.map +7 -0
- package/dist/esm/chunks/{chunk.NR3MLTXF.js → chunk.MHU452GM.js} +2 -2
- package/dist/esm/chunks/chunk.MLTEGJH6.js +7 -0
- package/dist/esm/chunks/{chunk.N43BCJHN.js → chunk.MWWY5TX5.js} +2 -2
- package/dist/esm/chunks/chunk.NDJZYFRT.js +7 -0
- package/dist/esm/chunks/chunk.NDJZYFRT.js.map +7 -0
- package/dist/esm/chunks/chunk.O5GE3FFV.js +7 -0
- package/dist/esm/chunks/{chunk.VZWNNK7A.js.map → chunk.O5GE3FFV.js.map} +2 -2
- package/dist/esm/chunks/chunk.OQ75YGB6.js +7 -0
- package/dist/esm/chunks/{chunk.B4T3R53C.js.map → chunk.OQ75YGB6.js.map} +2 -2
- package/dist/esm/chunks/chunk.OQAD6MFL.js +7 -0
- package/dist/esm/chunks/chunk.OQAD6MFL.js.map +7 -0
- package/dist/esm/chunks/{chunk.COVTBIQQ.js → chunk.OXGOCF4L.js} +2 -2
- package/dist/esm/chunks/{chunk.BH2TUG2V.js → chunk.PCOOIP2H.js} +2 -2
- package/dist/esm/chunks/chunk.PDICDA2V.js +7 -0
- package/dist/esm/chunks/{chunk.VVXSELXX.js.map → chunk.PDICDA2V.js.map} +2 -2
- package/dist/esm/chunks/{chunk.CWTV3TB3.js → chunk.PDSOXEMY.js} +2 -2
- package/dist/esm/chunks/{chunk.OWCYRSI3.js → chunk.PLNLLKP2.js} +2 -2
- package/dist/esm/chunks/{chunk.MGLL67VO.js → chunk.Q7BWJCT5.js} +2 -2
- package/dist/esm/chunks/chunk.QNVVUUNQ.js +7 -0
- package/dist/esm/chunks/chunk.QNVVUUNQ.js.map +7 -0
- package/dist/esm/chunks/chunk.R2KOYHIZ.js +7 -0
- package/dist/esm/chunks/chunk.R2KOYHIZ.js.map +7 -0
- package/dist/esm/chunks/{chunk.XI3MJSIS.js → chunk.R6NA7SV2.js} +2 -2
- package/dist/esm/chunks/{chunk.6OW6Q3EW.js → chunk.RBFGJH3C.js} +2 -2
- package/dist/esm/chunks/{chunk.JLLHDJSO.js → chunk.RNUGVHZF.js} +2 -2
- package/dist/esm/chunks/{chunk.ULY4H76N.js → chunk.RWUJGZ3R.js} +2 -2
- package/dist/esm/chunks/{chunk.5MZ5SGMO.js → chunk.RXLORASN.js} +2 -2
- package/dist/esm/chunks/chunk.SEWAMWO6.js +7 -0
- package/dist/esm/chunks/chunk.SEWAMWO6.js.map +7 -0
- package/dist/esm/chunks/chunk.TCFKFKZW.js +7 -0
- package/dist/esm/chunks/chunk.TCFKFKZW.js.map +7 -0
- package/dist/esm/chunks/{chunk.VSQOTSAO.js → chunk.TGVLYX5F.js} +2 -2
- package/dist/esm/chunks/{chunk.TYLOAD7R.js → chunk.TSH7BTC3.js} +2 -2
- package/dist/esm/chunks/{chunk.BY25RT52.js → chunk.U5XNDTSZ.js} +2 -2
- package/dist/esm/chunks/chunk.UAKQY7QB.js +7 -0
- package/dist/esm/chunks/chunk.UAKQY7QB.js.map +7 -0
- package/dist/esm/chunks/{chunk.SFCGOCQK.js → chunk.UAVC4YLD.js} +2 -2
- package/dist/esm/chunks/{chunk.SJJS4LYN.js → chunk.URFSXQKR.js} +2 -2
- package/dist/esm/chunks/{chunk.4ZKX3SO5.js → chunk.UVJFHSMF.js} +2 -2
- package/dist/esm/chunks/chunk.UZPZ6KUN.js +7 -0
- package/dist/esm/chunks/chunk.UZPZ6KUN.js.map +7 -0
- package/dist/esm/chunks/{chunk.YRMR7IOS.js → chunk.V6443MP3.js} +2 -2
- package/dist/esm/chunks/chunk.V6443MP3.js.map +7 -0
- package/dist/esm/chunks/chunk.VAAID3SH.js +7 -0
- package/dist/esm/chunks/chunk.VAAID3SH.js.map +7 -0
- package/dist/esm/chunks/chunk.VDGJ4UDL.js +7 -0
- package/dist/esm/chunks/chunk.VDGJ4UDL.js.map +7 -0
- package/dist/esm/chunks/{chunk.KJP2VA6Q.js → chunk.VPNDAKM3.js} +2 -2
- package/dist/esm/chunks/{chunk.KJP2VA6Q.js.map → chunk.VPNDAKM3.js.map} +2 -2
- package/dist/esm/chunks/{chunk.DG4ZM3AW.js → chunk.W7H2ZYNR.js} +2 -2
- package/dist/esm/chunks/chunk.WCTSXMGU.js +7 -0
- package/dist/esm/chunks/chunk.WCTSXMGU.js.map +7 -0
- package/dist/esm/chunks/{chunk.FCATJM34.js → chunk.WJXDDQUK.js} +2 -2
- package/dist/esm/chunks/{chunk.SU4FU7GK.js → chunk.WK2L7BPJ.js} +2 -2
- package/dist/esm/chunks/{chunk.ZKGSQQGU.js → chunk.WOMYKBUG.js} +2 -2
- package/dist/esm/chunks/chunk.WOMYKBUG.js.map +7 -0
- package/dist/esm/chunks/{chunk.MACPUZC2.js → chunk.WVGIT7F7.js} +2 -2
- package/dist/esm/chunks/{chunk.MACPUZC2.js.map → chunk.WVGIT7F7.js.map} +2 -2
- package/dist/esm/chunks/{chunk.LTT67HTW.js → chunk.WWTQAN4G.js} +2 -2
- package/dist/esm/chunks/chunk.YA3RDJCV.js +7 -0
- package/dist/esm/chunks/chunk.YA3RDJCV.js.map +7 -0
- package/dist/esm/chunks/{chunk.6OUJSOJY.js → chunk.YIFI5D2X.js} +2 -2
- package/dist/esm/chunks/{chunk.6OUJSOJY.js.map → chunk.YIFI5D2X.js.map} +2 -2
- package/dist/esm/chunks/chunk.YOXZOPAC.js +7 -0
- package/dist/esm/chunks/chunk.YOXZOPAC.js.map +7 -0
- package/dist/esm/chunks/{chunk.CDGZYUQS.js → chunk.YP2NHWIW.js} +2 -2
- package/dist/esm/chunks/chunk.YPA27RX7.js +7 -0
- package/dist/esm/chunks/chunk.YXXKPT6P.js +7 -0
- package/dist/esm/chunks/{chunk.PEBT47AU.js.map → chunk.YXXKPT6P.js.map} +2 -2
- package/dist/esm/chunks/{chunk.2EWV2XBP.js → chunk.Z6AFASMO.js} +2 -2
- package/dist/esm/chunks/{chunk.6GC5AJPE.js → chunk.ZMUDT5UK.js} +2 -2
- package/dist/esm/chunks/{chunk.6GC5AJPE.js.map → chunk.ZMUDT5UK.js.map} +2 -2
- package/dist/esm/chunks/{chunk.ZJC2DSNM.js → chunk.ZREXLSAJ.js} +2 -2
- package/dist/esm/chunks/chunk.ZYVXIP42.js +7 -0
- package/dist/esm/chunks/{chunk.SBYX7VZ4.js.map → chunk.ZYVXIP42.js.map} +2 -2
- package/dist/esm/circular-progress/index.js +1 -1
- package/dist/esm/color-picker/index.js +1 -1
- package/dist/esm/core/base/index.js +1 -1
- package/dist/esm/core/index.js +1 -1
- package/dist/esm/core/utils/index.js +1 -1
- package/dist/esm/date-picker/index.js +1 -1
- package/dist/esm/date-range-picker/index.js +1 -1
- package/dist/esm/dialog/index.js +1 -1
- package/dist/esm/divider/index.js +1 -1
- package/dist/esm/drawer/base/index.js +1 -1
- package/dist/esm/drawer/drawer/index.js +1 -1
- package/dist/esm/drawer/index.js +1 -1
- package/dist/esm/drawer/mini-drawer/index.js +1 -1
- package/dist/esm/drawer/modal-drawer/index.js +1 -1
- package/dist/esm/expansion-panel/index.js +1 -1
- package/dist/esm/file-picker/index.js +1 -1
- package/dist/esm/floating-action-button/index.js +1 -1
- package/dist/esm/floating-label/index.js +1 -1
- package/dist/esm/focus-indicator/index.js +1 -1
- package/dist/esm/icon/index.js +1 -1
- package/dist/esm/icon-button/index.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/inline-message/index.js +1 -1
- package/dist/esm/keyboard-shortcut/index.js +1 -1
- package/dist/esm/label-value/index.js +1 -1
- package/dist/esm/linear-progress/index.js +1 -1
- package/dist/esm/list/index.js +1 -1
- package/dist/esm/list/list/index.js +1 -1
- package/dist/esm/list/list-item/index.js +1 -1
- package/dist/esm/list-dropdown/index.js +1 -1
- package/dist/esm/menu/index.js +1 -1
- package/dist/esm/open-icon/index.js +1 -1
- package/dist/esm/page-state/index.js +1 -1
- package/dist/esm/paginator/index.js +1 -1
- package/dist/esm/popup/index.js +1 -1
- package/dist/esm/product-icon/index.js +1 -1
- package/dist/esm/profile-card/index.js +1 -1
- package/dist/esm/quantity-field/index.js +1 -1
- package/dist/esm/radio/index.js +1 -1
- package/dist/esm/ripple/index.js +1 -1
- package/dist/esm/scaffold/index.js +1 -1
- package/dist/esm/select/core/index.js +1 -1
- package/dist/esm/select/index.js +1 -1
- package/dist/esm/select/option/index.js +1 -1
- package/dist/esm/select/option-group/index.js +1 -1
- package/dist/esm/select/select/index.js +1 -1
- package/dist/esm/select/select-dropdown/index.js +1 -1
- package/dist/esm/skeleton/index.js +1 -1
- package/dist/esm/slider/index.js +1 -1
- package/dist/esm/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view-panel/index.js +1 -1
- package/dist/esm/stack/index.js +1 -1
- package/dist/esm/state-layer/index.js +1 -1
- package/dist/esm/stepper/index.js +1 -1
- package/dist/esm/stepper/step/index.js +1 -1
- package/dist/esm/stepper/stepper/index.js +1 -1
- package/dist/esm/switch/index.js +1 -1
- package/dist/esm/table/index.js +1 -1
- package/dist/esm/tabs/index.js +1 -1
- package/dist/esm/tabs/tab/index.js +1 -1
- package/dist/esm/tabs/tab-bar/index.js +1 -1
- package/dist/esm/text-field/index.js +1 -1
- package/dist/esm/time-picker/index.js +1 -1
- package/dist/esm/toast/index.js +1 -1
- package/dist/esm/toolbar/index.js +1 -1
- package/dist/esm/tooltip/index.js +1 -1
- package/dist/esm/view-switcher/index.js +1 -1
- package/dist/esm/view-switcher/view/index.js +1 -1
- package/dist/forge-dark.css +1 -1
- package/dist/forge.css +1 -1
- package/dist/theme/forge-theme.css +1 -1
- package/dist/typography/forge-typography-legacy.css +1 -1
- package/dist/typography/forge-typography.css +1 -1
- package/esm/autocomplete/autocomplete-constants.d.ts +3 -0
- package/esm/autocomplete/autocomplete-foundation.d.ts +3 -1
- package/esm/autocomplete/autocomplete-foundation.js +14 -0
- package/esm/autocomplete/autocomplete.d.ts +7 -1
- package/esm/autocomplete/autocomplete.js +7 -0
- package/esm/banner/banner.js +1 -1
- package/esm/button-area/button-area-adapter.d.ts +48 -0
- package/esm/button-area/button-area-adapter.js +121 -0
- package/esm/button-area/button-area-constants.d.ts +24 -0
- package/esm/button-area/button-area-constants.js +30 -0
- package/esm/button-area/button-area-foundation.d.ts +29 -0
- package/esm/button-area/button-area-foundation.js +94 -0
- package/esm/button-area/button-area.d.ts +29 -0
- package/esm/button-area/button-area.js +55 -0
- package/esm/button-area/index.d.ts +10 -0
- package/esm/button-area/index.js +14 -0
- package/esm/calendar/calendar-foundation.js +6 -0
- package/esm/calendar/calendar-menu/calendar-menu.js +1 -1
- package/esm/chip-field/chip-field-adapter.js +1 -1
- package/esm/chip-field/chip-field.js +2 -2
- package/esm/circular-progress/circular-progress.js +1 -1
- package/esm/core/base/base-adapter.d.ts +5 -2
- package/esm/core/base/base-adapter.js +13 -2
- package/esm/core/base/base-component.d.ts +37 -0
- package/esm/core/base/base-component.js +3 -0
- package/esm/core/keyboard/key-manager.d.ts +18 -0
- package/esm/core/keyboard/key-manager.js +47 -0
- package/esm/core/utils/a11y-utils.d.ts +32 -0
- package/esm/core/utils/a11y-utils.js +111 -0
- package/esm/core/utils/index.d.ts +1 -0
- package/esm/core/utils/index.js +1 -0
- package/esm/core/utils/utils.d.ts +8 -0
- package/esm/core/utils/utils.js +15 -0
- package/esm/date-picker/base/base-date-picker-foundation.js +1 -1
- package/esm/date-range-picker/date-range-picker-foundation.js +2 -2
- package/esm/drawer/drawer/drawer.js +1 -1
- package/esm/drawer/mini-drawer/mini-drawer.js +1 -1
- package/esm/drawer/modal-drawer/modal-drawer.js +1 -1
- package/esm/expansion-panel/expansion-panel-adapter.d.ts +1 -0
- package/esm/expansion-panel/expansion-panel-adapter.js +7 -2
- package/esm/expansion-panel/expansion-panel.js +1 -1
- package/esm/field/field-foundation.d.ts +1 -0
- package/esm/field/field-foundation.js +17 -7
- package/esm/floating-label/floating-label-foundation.d.ts +4 -1
- package/esm/floating-label/floating-label-foundation.js +9 -6
- package/esm/floating-label/floating-label.d.ts +6 -2
- package/esm/floating-label/floating-label.js +2 -2
- package/esm/focus-indicator/focus-indicator-foundation.js +1 -1
- package/esm/focus-indicator/focus-indicator.js +1 -1
- package/esm/icon/icon-adapter.d.ts +0 -2
- package/esm/icon/icon-adapter.js +4 -5
- package/esm/icon/icon-foundation.js +0 -1
- package/esm/index.d.ts +1 -0
- package/esm/index.js +4 -1
- package/esm/keyboard-shortcut/keyboard-shortcut-constants.d.ts +1 -0
- package/esm/keyboard-shortcut/keyboard-shortcut-foundation.d.ts +6 -0
- package/esm/keyboard-shortcut/keyboard-shortcut-foundation.js +9 -0
- package/esm/keyboard-shortcut/keyboard-shortcut.d.ts +4 -0
- package/esm/keyboard-shortcut/keyboard-shortcut.js +3 -0
- package/esm/linear-progress/linear-progress.js +1 -1
- package/esm/list/list/list-adapter.d.ts +17 -41
- package/esm/list/list/list-adapter.js +43 -60
- package/esm/list/list/list-constants.d.ts +13 -5
- package/esm/list/list/list-constants.js +15 -7
- package/esm/list/list/list-foundation.d.ts +24 -16
- package/esm/list/list/list-foundation.js +84 -75
- package/esm/list/list/list.d.ts +47 -8
- package/esm/list/list/list.js +83 -11
- package/esm/list/list-item/list-item-adapter.d.ts +31 -90
- package/esm/list/list-item/list-item-adapter.js +124 -135
- package/esm/list/list-item/list-item-constants.d.ts +27 -27
- package/esm/list/list-item/list-item-constants.js +17 -32
- package/esm/list/list-item/list-item-foundation.d.ts +32 -56
- package/esm/list/list-item/list-item-foundation.js +111 -206
- package/esm/list/list-item/list-item.d.ts +109 -37
- package/esm/list/list-item/list-item.js +152 -88
- package/esm/list-dropdown/list-dropdown-adapter.js +1 -6
- package/esm/list-dropdown/list-dropdown-constants.d.ts +4 -0
- package/esm/list-dropdown/list-dropdown-utils.js +23 -24
- package/esm/paginator/paginator-adapter.d.ts +28 -24
- package/esm/paginator/paginator-adapter.js +55 -0
- package/esm/paginator/paginator-foundation.d.ts +33 -80
- package/esm/paginator/paginator-foundation.js +218 -255
- package/esm/paginator/paginator.d.ts +0 -2
- package/esm/paginator/paginator.js +0 -2
- package/esm/popup/popup-adapter.d.ts +3 -1
- package/esm/popup/popup-adapter.js +3 -0
- package/esm/popup/popup-foundation.js +5 -3
- package/esm/popup/popup.d.ts +4 -1
- package/esm/popup/popup.js +1 -1
- package/esm/select/core/base-select-adapter.js +3 -0
- package/esm/select/option/option-constants.d.ts +1 -0
- package/esm/select/option/option-constants.js +1 -0
- package/esm/select/option/option-foundation.d.ts +13 -0
- package/esm/select/option/option-foundation.js +28 -0
- package/esm/select/option/option.d.ts +7 -0
- package/esm/select/option/option.js +13 -0
- package/esm/slider/slider.js +2 -2
- package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
- package/esm/state-layer/state-layer.js +1 -1
- package/esm/switch/switch-adapter.d.ts +38 -0
- package/esm/switch/switch-adapter.js +69 -0
- package/esm/switch/switch-component-delegate.d.ts +2 -1
- package/esm/switch/switch-component-delegate.js +8 -8
- package/esm/switch/switch-constants.d.ts +14 -7
- package/esm/switch/switch-constants.js +17 -9
- package/esm/switch/switch-foundation.d.ts +46 -0
- package/esm/switch/switch-foundation.js +110 -0
- package/esm/switch/switch.d.ts +150 -33
- package/esm/switch/switch.js +226 -142
- package/esm/tabs/tab/tab.js +2 -2
- package/esm/tabs/tab-bar/tab-bar.js +1 -1
- package/esm/time-picker/time-picker-foundation.js +3 -3
- package/package.json +1 -6
- package/styles/button-area/_mixins.scss +47 -0
- package/styles/button-area/button-area.scss +16 -0
- package/styles/calendar/calendar-menu/_mixins.scss +48 -2
- package/styles/chip-field/_base.scss +1 -0
- package/styles/chip-field/_selector.scss +2 -2
- package/styles/core/styles/_utils.scss +85 -11
- package/styles/core/styles/scrollbar/index.scss +45 -0
- package/styles/core/styles/spacing/index.scss +1 -1
- package/styles/core/styles/theme/_color-utils.scss +63 -0
- package/styles/core/styles/theme/_utils.scss +82 -0
- package/styles/core/styles/theme/index.scss +39 -13
- package/styles/core/styles/tokens/circular-progress/_tokens.scss +1 -1
- package/styles/core/styles/tokens/color-palette/_extended-color-palette.scss +88 -0
- package/styles/core/styles/tokens/color-palette/index.scss +7 -0
- package/styles/core/styles/tokens/focus-indicator/_tokens.scss +2 -2
- package/styles/core/styles/tokens/linear-progress/_tokens.scss +1 -1
- package/styles/core/styles/tokens/list/list/_tokens.scss +16 -0
- package/styles/core/styles/tokens/list/list-item/_tokens.scss +77 -0
- package/styles/core/styles/tokens/scrollbar/_tokens.scss +26 -0
- package/styles/core/styles/tokens/slider/_tokens.scss +9 -11
- package/styles/core/styles/tokens/spacing/_tokens.scss +10 -10
- package/styles/core/styles/tokens/state-layer/_tokens.scss +5 -5
- package/styles/core/styles/tokens/switch/_tokens.scss +108 -0
- package/styles/core/styles/tokens/tabs/tab/_tokens.scss +3 -1
- package/styles/core/styles/tokens/tabs/tab-bar/_tokens.scss +1 -1
- package/styles/core/styles/tokens/theme/_color-emphasis.scss +38 -0
- package/styles/core/styles/tokens/theme/_token-utils.scss +46 -0
- package/styles/core/styles/tokens/theme/_tokens.core.scss +45 -0
- package/styles/core/styles/tokens/theme/_tokens.scss +62 -117
- package/styles/core/styles/tokens/theme/_tokens.status.scss +49 -0
- package/styles/core/styles/tokens/theme/_tokens.surface.scss +65 -0
- package/styles/core/styles/tokens/theme/_tokens.text.scss +38 -0
- package/styles/core/styles/tokens/theme/_tokens.utilities.scss +30 -0
- package/styles/core/styles/tokens/typography/_scale.scss +39 -0
- package/styles/core/styles/tokens/typography/_tokens.body.scss +41 -0
- package/styles/core/styles/tokens/typography/_tokens.core.scss +31 -0
- package/styles/core/styles/tokens/typography/_tokens.display.scss +67 -0
- package/styles/core/styles/tokens/typography/_tokens.heading.scss +70 -0
- package/styles/core/styles/tokens/typography/_tokens.label.scss +37 -0
- package/styles/core/styles/tokens/typography/_tokens.scss +16 -211
- package/styles/core/styles/tokens/typography/_tokens.subheading.scss +66 -0
- package/styles/core/styles/tokens/typography/_type-utils.scss +37 -0
- package/styles/core/styles/tokens/typography/_weight.scss +20 -0
- package/styles/core/styles/typography/index.scss +31 -6
- package/styles/list/list/_configuration.scss +12 -0
- package/styles/list/list/_core.scss +21 -0
- package/styles/list/list/index.scss +7 -0
- package/styles/list/list/list.scss +19 -4
- package/styles/list/list-item/_configuration.scss +72 -0
- package/styles/list/list-item/_core.scss +200 -0
- package/styles/list/list-item/index.scss +7 -0
- package/styles/list/list-item/list-item.scss +193 -13
- package/styles/slider/_core.scss +2 -8
- package/styles/slider/slider.scss +2 -2
- package/styles/switch/_configuration.scss +95 -0
- package/styles/switch/_core.scss +255 -0
- package/styles/switch/index.scss +7 -0
- package/styles/switch/switch.scss +136 -50
- package/styles/tabs/tab/_configuration.scss +5 -0
- package/styles/tabs/tab/_core.scss +7 -7
- package/styles/tabs/tab/tab.scss +3 -2
- package/styles/theme/_theme-dark.scss +0 -2
- package/styles/theme/_theme.scss +3 -45
- package/styles/theme/forge-theme.scss +21 -3
- package/styles/typography/_mixins.scss +0 -20
- package/dist/esm/chunks/chunk.2AJ7FFI6.js +0 -7
- package/dist/esm/chunks/chunk.2AJ7FFI6.js.map +0 -7
- package/dist/esm/chunks/chunk.3HB22HCX.js +0 -7
- package/dist/esm/chunks/chunk.4C6KHYUO.js +0 -7
- package/dist/esm/chunks/chunk.54OOOQ4R.js +0 -7
- package/dist/esm/chunks/chunk.54OOOQ4R.js.map +0 -7
- package/dist/esm/chunks/chunk.7CGKFRBK.js +0 -7
- package/dist/esm/chunks/chunk.7CGKFRBK.js.map +0 -7
- package/dist/esm/chunks/chunk.7DB3XVPI.js +0 -7
- package/dist/esm/chunks/chunk.ALIYGJXA.js +0 -129
- package/dist/esm/chunks/chunk.ALIYGJXA.js.map +0 -7
- package/dist/esm/chunks/chunk.B4T3R53C.js +0 -7
- package/dist/esm/chunks/chunk.BKL2BAYW.js +0 -7
- package/dist/esm/chunks/chunk.BKL2BAYW.js.map +0 -7
- package/dist/esm/chunks/chunk.CXY6K7EI.js +0 -7
- package/dist/esm/chunks/chunk.CXY6K7EI.js.map +0 -7
- package/dist/esm/chunks/chunk.DBNJHUYY.js +0 -7
- package/dist/esm/chunks/chunk.DBNJHUYY.js.map +0 -7
- package/dist/esm/chunks/chunk.DMCBAYQX.js +0 -7
- package/dist/esm/chunks/chunk.DMCBAYQX.js.map +0 -7
- package/dist/esm/chunks/chunk.F4VXEE76.js +0 -7
- package/dist/esm/chunks/chunk.F4VXEE76.js.map +0 -7
- package/dist/esm/chunks/chunk.F74YURLV.js +0 -7
- package/dist/esm/chunks/chunk.FG2GNAM2.js +0 -7
- package/dist/esm/chunks/chunk.FG2GNAM2.js.map +0 -7
- package/dist/esm/chunks/chunk.GNG64TXK.js +0 -7
- package/dist/esm/chunks/chunk.GNG64TXK.js.map +0 -7
- package/dist/esm/chunks/chunk.HHCO64F3.js +0 -7
- package/dist/esm/chunks/chunk.HHCO64F3.js.map +0 -7
- package/dist/esm/chunks/chunk.ISC7SZSP.js +0 -7
- package/dist/esm/chunks/chunk.ISC7SZSP.js.map +0 -7
- package/dist/esm/chunks/chunk.IX25DYIM.js +0 -7
- package/dist/esm/chunks/chunk.IX25DYIM.js.map +0 -7
- package/dist/esm/chunks/chunk.MVTBJPO2.js +0 -7
- package/dist/esm/chunks/chunk.P2CW5MQO.js +0 -12
- package/dist/esm/chunks/chunk.P2CW5MQO.js.map +0 -7
- package/dist/esm/chunks/chunk.PEBT47AU.js +0 -7
- package/dist/esm/chunks/chunk.PH3HUFJJ.js +0 -7
- package/dist/esm/chunks/chunk.PH3HUFJJ.js.map +0 -7
- package/dist/esm/chunks/chunk.Q7JUJNYD.js +0 -7
- package/dist/esm/chunks/chunk.QCRRHGBA.js +0 -7
- package/dist/esm/chunks/chunk.QCRRHGBA.js.map +0 -7
- package/dist/esm/chunks/chunk.SBYX7VZ4.js +0 -7
- package/dist/esm/chunks/chunk.VVXSELXX.js +0 -7
- package/dist/esm/chunks/chunk.VZWNNK7A.js +0 -7
- package/dist/esm/chunks/chunk.X3C3J5MH.js +0 -7
- package/dist/esm/chunks/chunk.X3C3J5MH.js.map +0 -7
- package/dist/esm/chunks/chunk.XGOAYMK2.js +0 -7
- package/dist/esm/chunks/chunk.XGOAYMK2.js.map +0 -7
- package/dist/esm/chunks/chunk.YRMR7IOS.js.map +0 -7
- package/dist/esm/chunks/chunk.YX7WLO5Y.js +0 -7
- package/dist/esm/chunks/chunk.YZLASVCK.js +0 -177
- package/dist/esm/chunks/chunk.YZLASVCK.js.map +0 -7
- package/dist/esm/chunks/chunk.ZDD2NLGP.js +0 -7
- package/dist/esm/chunks/chunk.ZKGSQQGU.js.map +0 -7
- package/dist/esm/chunks/chunk.ZVBZ3LGP.js +0 -7
- package/dist/esm/chunks/chunk.ZVBZ3LGP.js.map +0 -7
- package/styles/list/list/_mixins.scss +0 -45
- package/styles/list/list-item/_mixins.scss +0 -413
- package/styles/list/list-item/_variables.scss +0 -43
- package/styles/switch/_switch-mixins.scss +0 -301
- package/styles/switch/_switch-theme.scss +0 -701
- /package/dist/esm/chunks/{chunk.Q7JUJNYD.js.map → chunk.2LIWNFQK.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.FWFOOQMA.js.map → chunk.2WSXSOYB.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.YWNCJ7XP.js.map → chunk.37JFBP4X.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.D5TAI6Q7.js.map → chunk.3X4N4ZPY.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.LK4AAUOP.js.map → chunk.436MTO6R.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.EK24Y56W.js.map → chunk.4JF54GDJ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.SMGXXR6K.js.map → chunk.4USQ2AP6.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.MHBBMC6O.js.map → chunk.4XJYS5WH.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.624UKZFU.js.map → chunk.66X366TV.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.ZDD2NLGP.js.map → chunk.7L66GZDN.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.4YFVG4KP.js.map → chunk.7M4HRJYP.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.CKW7KKDW.js.map → chunk.7PPBXNAD.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.A62DE5PD.js.map → chunk.7UJAI6P2.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.UJ2WQOLO.js.map → chunk.A3ZDCBLA.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.2QHD3DCR.js.map → chunk.AHAARGYM.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.Q7Z3SJ5F.js.map → chunk.AY43NTAK.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.K3KAM2PL.js.map → chunk.C5ZUGOOC.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.QOJESHEV.js.map → chunk.C7VEJINB.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.YLG6ZC5K.js.map → chunk.CBIHNCT5.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.JIKSKUDW.js.map → chunk.CLD75EBJ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.TK5I4RHF.js.map → chunk.CQQSOTZ5.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.XKI46BH2.js.map → chunk.DABGA7I6.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.MTKSU2BV.js.map → chunk.DH76CMUT.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.MXEKIEJA.js.map → chunk.DLQSINSS.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.W4247Q2P.js.map → chunk.DQVYB55P.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.WPG7NNQX.js.map → chunk.EY37FYZ4.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.LXPFG7MW.js.map → chunk.GWIXDVIA.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.Z6FCL3G3.js.map → chunk.HBCDD25D.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.M56LSSPW.js.map → chunk.HDO3WRH7.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.DXN7ZOH3.js.map → chunk.HGH6SSHZ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.LFODKHUO.js.map → chunk.HKSXC5VK.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.S3JMOOWC.js.map → chunk.IJ2I25V3.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.JUJGROHA.js.map → chunk.IURDWGLD.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.F5SY2D4B.js.map → chunk.JCO4M4PF.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.5565ZSTH.js.map → chunk.LNLO36U6.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.NR3MLTXF.js.map → chunk.MHU452GM.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.4C6KHYUO.js.map → chunk.MLTEGJH6.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.N43BCJHN.js.map → chunk.MWWY5TX5.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.COVTBIQQ.js.map → chunk.OXGOCF4L.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.BH2TUG2V.js.map → chunk.PCOOIP2H.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.CWTV3TB3.js.map → chunk.PDSOXEMY.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.OWCYRSI3.js.map → chunk.PLNLLKP2.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.MGLL67VO.js.map → chunk.Q7BWJCT5.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.XI3MJSIS.js.map → chunk.R6NA7SV2.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.6OW6Q3EW.js.map → chunk.RBFGJH3C.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.JLLHDJSO.js.map → chunk.RNUGVHZF.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.ULY4H76N.js.map → chunk.RWUJGZ3R.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.5MZ5SGMO.js.map → chunk.RXLORASN.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.VSQOTSAO.js.map → chunk.TGVLYX5F.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.TYLOAD7R.js.map → chunk.TSH7BTC3.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.BY25RT52.js.map → chunk.U5XNDTSZ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.SFCGOCQK.js.map → chunk.UAVC4YLD.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.SJJS4LYN.js.map → chunk.URFSXQKR.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.4ZKX3SO5.js.map → chunk.UVJFHSMF.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.DG4ZM3AW.js.map → chunk.W7H2ZYNR.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.FCATJM34.js.map → chunk.WJXDDQUK.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.SU4FU7GK.js.map → chunk.WK2L7BPJ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.LTT67HTW.js.map → chunk.WWTQAN4G.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.CDGZYUQS.js.map → chunk.YP2NHWIW.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.3HB22HCX.js.map → chunk.YPA27RX7.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.2EWV2XBP.js.map → chunk.Z6AFASMO.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.ZJC2DSNM.js.map → chunk.ZREXLSAJ.js.map} +0 -0
- /package/styles/core/styles/tokens/{_color-palette.scss → color-palette/_material-color-palette.scss} +0 -0
|
@@ -4,54 +4,131 @@
|
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { __decorate } from "tslib";
|
|
7
|
-
import { CustomElement, attachShadowTemplate,
|
|
7
|
+
import { CustomElement, attachShadowTemplate, FoundationProperty, coerceBoolean } from '@tylertech/forge-core';
|
|
8
8
|
import { ListItemAdapter } from './list-item-adapter';
|
|
9
9
|
import { ListItemFoundation } from './list-item-foundation';
|
|
10
10
|
import { LIST_ITEM_CONSTANTS } from './list-item-constants';
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
const
|
|
14
|
-
const styles = '@-webkit-keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@-webkit-keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@-webkit-keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}@keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}.mdc-ripple-surface{--mdc-ripple-fg-size:0;--mdc-ripple-left:0;--mdc-ripple-top:0;--mdc-ripple-fg-scale:1;--mdc-ripple-fg-translate-end:0;--mdc-ripple-fg-translate-start:0;-webkit-tap-highlight-color:transparent;will-change:transform,opacity;position:relative;outline:0;overflow:hidden}.mdc-ripple-surface::after,.mdc-ripple-surface::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:\"\"}.mdc-ripple-surface::before{-webkit-transition:opacity 15ms linear,background-color 15ms linear;transition:opacity 15ms linear,background-color 15ms linear;z-index:1;z-index:var(--mdc-ripple-z-index,1)}.mdc-ripple-surface::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.mdc-ripple-surface.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.mdc-ripple-surface.mdc-ripple-upgraded::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.mdc-ripple-surface.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.mdc-ripple-surface.mdc-ripple-upgraded--foreground-activation::after{-webkit-animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards;animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards}.mdc-ripple-surface.mdc-ripple-upgraded--foreground-deactivation::after{-webkit-animation:mdc-ripple-fg-opacity-out 150ms;animation:mdc-ripple-fg-opacity-out 150ms;-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}.mdc-ripple-surface::after,.mdc-ripple-surface::before{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.mdc-ripple-surface.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded],.mdc-ripple-upgraded--unbounded{overflow:visible}.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::before,.mdc-ripple-upgraded--unbounded::after,.mdc-ripple-upgraded--unbounded::before{top:calc(50% - 50%);left:calc(50% - 50%);width:100%;height:100%}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::before,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::before{top:var(--mdc-ripple-top,calc(50% - 50%));left:var(--mdc-ripple-left,calc(50% - 50%));width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{background-color:#000;background-color:var(--mdc-ripple-color,#000)}.mdc-ripple-surface.mdc-ripple-surface--hover::before,.mdc-ripple-surface:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.mdc-ripple-surface.mdc-ripple-upgraded--background-focused::before,.mdc-ripple-surface:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.mdc-ripple-surface:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.mdc-ripple-surface:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.mdc-ripple-surface.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{--mdc-ripple-color:var(--mdc-theme-on-surface)}.forge-list-item{min-height:32px;min-height:var(--forge-list-item-min-height,32px);max-height:none;max-height:var(--forge-list-item-max-height,none);height:32px;height:var(--forge-list-item-height,32px);padding:8px 16px;padding:var(--forge-list-item-padding,8px 16px);margin-left:0;margin-left:var(--forge-list-item-indent,0);-webkit-box-align:center;align-items:center;-webkit-box-align:var(--forge-list-item-align-items,center);align-items:var(--forge-list-item-align-items,center);position:relative;display:-webkit-box;display:flex;-webkit-box-pack:start;justify-content:flex-start;overflow:hidden}.forge-list-item:focus{outline:0}.forge-list-item ::slotted([slot=leading]),.forge-list-item ::slotted([slot=trailing]){font-size:1.5rem}.forge-list-item ::slotted([slot=leading]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));margin-left:0;margin-left:var(--forge-list-item-leading-margin-left,0);margin-right:32px;margin-right:var(--forge-list-item-leading-margin-right,32px);display:-webkit-inline-box;display:inline-flex;flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;fill:currentColor}.forge-list-item ::slotted([slot=trailing]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-list-item ::slotted([slot=avatar]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));margin-left:0;margin-left:var(--forge-list-item-leading-margin-left,0);margin-right:32px;margin-right:var(--forge-list-item-leading-margin-right,32px);display:-webkit-inline-box;display:inline-flex;flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;fill:currentColor;margin-left:0;margin-right:16px;min-width:40px;min-height:40px;border-radius:50%;display:inline-flex;background-color:rgba(0,0,0,.54);background-color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));color:#fff;color:var(--mdc-theme-on-primary,#fff)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item{--mdc-ripple-fg-size:0;--mdc-ripple-left:0;--mdc-ripple-top:0;--mdc-ripple-fg-scale:1;--mdc-ripple-fg-translate-end:0;--mdc-ripple-fg-translate-start:0;-webkit-tap-highlight-color:transparent;will-change:transform,opacity}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:\"\"}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{-webkit-transition:opacity 15ms linear,background-color 15ms linear;transition:opacity 15ms linear,background-color 15ms linear;z-index:1;z-index:var(--mdc-ripple-z-index,1)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded--foreground-activation::after{-webkit-animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards;animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded--foreground-deactivation::after{-webkit-animation:mdc-ripple-fg-opacity-out 150ms;animation:mdc-ripple-fg-opacity-out 150ms;-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{background-color:#000;background-color:var(--mdc-ripple-color,var(--mdc-theme-on-surface,#000))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-surface--hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded--background-focused::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated::before{opacity:.12;opacity:var(--mdc-ripple-activated-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated::before{background-color:#6200ee;background-color:var(--mdc-ripple-color,var(--mdc-theme-primary,#6200ee))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated.mdc-ripple-surface--hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:hover::before{opacity:.16;opacity:var(--mdc-ripple-hover-opacity, .16)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated.mdc-ripple-upgraded--background-focused::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-focus-opacity, .24)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-press-opacity, .24)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.24)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected::before{opacity:.08;opacity:var(--mdc-ripple-selected-opacity, .08)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected::before{background-color:#6200ee;background-color:var(--mdc-ripple-color,var(--mdc-theme-primary,#6200ee))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected.mdc-ripple-surface--hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:hover::before{opacity:.12;opacity:var(--mdc-ripple-hover-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected.mdc-ripple-upgraded--background-focused::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.2;opacity:var(--mdc-ripple-focus-opacity, .2)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.2;opacity:var(--mdc-ripple-press-opacity, .2)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.2)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:focus:hover.mdc-ripple-upgraded--background-focused:not(.mdc-ripple-upgraded--foreground-activation)::before{opacity:.28}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before{opacity:.12}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation):hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation):hover::before{opacity:.16}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before{background-color:#000;background-color:var(--mdc-theme-on-surface,#000)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:focus.forge-list-item--selected.forge-list-item--activated:not(.mdc-ripple-upgraded--foreground-activation)::before{opacity:.24}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:focus.forge-list-item--selected.forge-list-item--activated:not(.mdc-ripple-upgraded--foreground-activation):hover::before{opacity:.28}.forge-list-item__text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:100%}.forge-list-item ::slotted([slot=title]){text-overflow:ellipsis;white-space:nowrap;overflow:hidden;display:block}.forge-list-item ::slotted([slot=subtitle]),.forge-list-item ::slotted([slot=tertiary-title]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit);text-overflow:ellipsis;white-space:nowrap;overflow:hidden;color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));display:block}.forge-list-item--two-line{min-height:56px;min-height:var(--forge-list-item-min-height,56px);height:56px;height:var(--forge-list-item-height,56px)}.forge-list-item--three-line{min-height:72px;min-height:var(--forge-list-item-min-height,72px);height:72px;height:var(--forge-list-item-height,72px)}.forge-list-item--dense{min-height:16px;min-height:var(--forge-list-item-min-height,16px);height:16px;height:var(--forge-list-item-height,16px)}.forge-list-item--dense ::slotted([slot=leading]),.forge-list-item--dense ::slotted([slot=trailing]){font-size:1.25rem}.forge-list-item--dense ::slotted([slot=leading]){margin-right:12px;margin-right:var(--forge-list-item-leading-margin-right,12px)}.forge-list-item--dense ::slotted(.forge-list-item__title){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit)}.forge-list-item--dense.forge-list-item--two-line{min-height:40px;min-height:var(--forge-list-item-min-height,40px)}.forge-list-item--dense.forge-list-item--three-line{min-height:56px;min-height:var(--forge-list-item-min-height,56px)}.forge-list-item--wrap{height:auto;height:var(--forge-list-item-height,auto)}.forge-list-item--wrap .forge-list-item__text,.forge-list-item--wrap ::slotted([slot=subtitle]),.forge-list-item--wrap ::slotted([slot=tertiary-title]),.forge-list-item--wrap ::slotted([slot=title]){text-overflow:clip;white-space:normal}.forge-list-item--indented{margin-left:56px;margin-left:var(--forge-list-item-indent,56px)}.forge-list-item--active.forge-list-item--activated:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before,.forge-list-item--active.forge-list-item--selected:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{opacity:.2}.forge-list-item--active.forge-list-item--activated:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:hover::before,.forge-list-item--active.forge-list-item--selected:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:hover::before{opacity:.24}.forge-list-item--activated,.forge-list-item--selected{color:#6200ee;color:var(--mdc-theme-primary,#6200ee)}.forge-list-item--activated .forge-list-item__text .forge-list-item__subtitle,.forge-list-item--activated .forge-list-item__text ::slotted(.forge-list-item__subtitle),.forge-list-item--selected .forge-list-item__text .forge-list-item__subtitle,.forge-list-item--selected .forge-list-item__text ::slotted(.forge-list-item__subtitle){color:#6200ee;color:var(--mdc-theme-primary,#6200ee);opacity:.87}.forge-list-item--activated .forge-list-item__text .forge-list-item__tertiary-title,.forge-list-item--activated .forge-list-item__text ::slotted(.forge-list-item__tertiary-title),.forge-list-item--selected .forge-list-item__text .forge-list-item__tertiary-title,.forge-list-item--selected .forge-list-item__text ::slotted(.forge-list-item__tertiary-title){color:#6200ee;color:var(--mdc-theme-primary,#6200ee);opacity:.87}.forge-list-item--activated ::slotted([slot=leading]),.forge-list-item--activated ::slotted([slot=trailing]),.forge-list-item--selected ::slotted([slot=leading]),.forge-list-item--selected ::slotted([slot=trailing]){color:#6200ee;color:var(--mdc-theme-primary,#6200ee)}.forge-list-item--activated ::slotted([slot=avatar].forge-list-item__avatar-icon),.forge-list-item--selected ::slotted([slot=avatar].forge-list-item__avatar-icon){background-color:rgba(0,0,0,.38);background-color:var(--mdc-theme-text-disabled-on-background,rgba(0,0,0,.38));color:#000;color:var(--mdc-theme-on-surface,#000)}.forge-list-item--disabled{cursor:not-allowed;cursor:var(--forge-list-item-cursor,not-allowed);color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38))}.forge-list-item--disabled ::slotted([slot=leading]),.forge-list-item--disabled ::slotted([slot=trailing]){cursor:not-allowed;cursor:var(--forge-list-item-cursor,not-allowed);color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38))}.forge-list-item[role=link]{cursor:pointer}:host{display:block;contain:content}:host([hidden]){display:none}:host([forge-drawer-context=true]) .forge-list-item{margin:8px;margin:var(--forge-list-item-margin,8px);padding:0 8px;padding:var(--forge-list-item-padding,0 8px);border-radius:4px;border-radius:var(--forge-list-item-border-radius,4px);cursor:pointer;cursor:var(--forge-list-item-cursor,pointer);height:40px;height:var(--forge-list-item-height,40px);font-size:.875rem;font-weight:500}:host([forge-drawer-context=true]) .forge-list-item--static{cursor:initial}:host([forge-drawer-context=true]) .forge-list-item--indented{margin-left:64px;margin-left:var(--forge-list-item-indent,64px)}:host([forge-drawer-context=true]) .forge-list-item--two-line{min-height:56px-8px;min-height:var(--forge-list-item-min-height,56px-8px);height:56px-8px;height:var(--forge-list-item-height,56px-8px)}:host([forge-drawer-context=true]) .forge-list-item--three-line{min-height:72px-8px;min-height:var(--forge-list-item-min-height,72px-8px);height:72px-8px;height:var(--forge-list-item-height,72px-8px)}:host([forge-drawer-context=true]) .forge-list-item:first-child{margin-top:4px;margin-bottom:4px}:host([forge-drawer-context=true]) .forge-list-item--dense{min-height:16px;min-height:var(--forge-list-item-min-height,16px);height:16px;height:var(--forge-list-item-height,16px)}:host([forge-drawer-context=true]) .forge-list-item--dense ::slotted([slot=leading]),:host([forge-drawer-context=true]) .forge-list-item--dense ::slotted([slot=trailing]){font-size:1.25rem}:host([forge-drawer-context=true]) .forge-list-item--dense .forge-list-item__text{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit)}:host([forge-drawer-context=true]) .forge-list-item--wrap{height:auto;height:var(--forge-list-item-height,auto);padding:4px 8px;padding:var(--forge-list-item-padding,4px 8px);min-height:40px;min-height:var(--forge-list-item-min-height,40px)}:host([forge-drawer-context=true]) .forge-list-item--disabled{cursor:not-allowed;cursor:var(--forge-list-item-cursor,not-allowed)}:host([dense]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit)}';
|
|
11
|
+
import { StateLayerComponent } from '../../state-layer';
|
|
12
|
+
import { FocusIndicatorComponent } from '../../focus-indicator';
|
|
13
|
+
const template = '<template><div class=\"forge-list-item\" tabindex=\"0\" part=\"root\"><slot name=\"leading\"></slot><slot name=\"avatar\"></slot><div class=\"text-container\" part=\"text-container\"><slot></slot><slot name=\"title\"></slot><slot name=\"primary-text\"></slot><slot name=\"subtitle\"></slot><slot name=\"secondary-text\"></slot><slot name=\"tertiary-text\"></slot><slot name=\"tertiary-title\"></slot></div><slot name=\"trailing\"></slot><forge-state-layer exportparts=\"surface:state-layer__surface\"></forge-state-layer><forge-focus-indicator exportparts=\"indicator:focus-indicator__indicator\" inward></forge-focus-indicator></div></template>';
|
|
14
|
+
const styles = ':host{--_indent:var(--forge-list-item-indent, 56px);--_dense-indent:var(--forge-list-item-dense-indent, 48px);display:block;outline:0}:host([hidden]){display:none}:host([non-interactive]) .forge-list-item{cursor:initial}:host([disabled]) .forge-list-item{cursor:var(--_disabled-cursor);opacity:var(--_disabled-opacity)}:host([two-line]) .forge-list-item{height:var(--_two-line-height);min-height:var(--_two-line-height)}:host([three-line]) .forge-list-item{height:var(--_three-line-height);min-height:var(--_three-line-height)}:host([dense]) .forge-list-item{height:var(--_dense-one-line-height);min-height:var(--_dense-one-line-height)}:host([dense]) .text-container{font-size:var(--_dense-font-size)}:host([dense][indented]){-webkit-margin-start:var(--_dense-indent);margin-inline-start:var(--_dense-indent)}:host([dense][two-line]) .forge-list-item{height:var(--_dense-two-line-height);min-height:var(--_dense-two-line-height)}:host([dense][three-line]) .forge-list-item{height:var(--_dense-three-line-height);min-height:var(--_dense-three-line-height)}:host([selected]) .forge-list-item{color:var(--_selected-color)}:host([selected]) .forge-list-item::before{content:\"\";position:absolute;inset:0;border-radius:inherit;opacity:var(--_selected-opacity);background-color:var(--_selected-color)}:host([selected]) .forge-list-item ::slotted([slot=leading]),:host([selected]) .forge-list-item ::slotted([slot=trailing]){color:var(--_selected-color)}:host([selected]) .forge-list-item ::slotted([slot=leading]){color:var(--_leading-selected-color)}:host([selected]) .forge-list-item ::slotted([slot=trailing]){color:var(--_trailing-selected-color)}:host([selected]) .text-container{color:var(--_selected-color)}:host([selected]) forge-state-layer{--forge-state-layer-color:var(--_selected-color)}:host([indented]){-webkit-margin-start:var(--_indent);margin-inline-start:var(--_indent)}.forge-list-item{--_background-color:var(--forge-list-item-background-color, transparent);--_shape:var(--forge-list-item-shape, 0);--_padding:var(--forge-list-item-padding, 8px 16px);--_margin:var(--forge-list-item-margin, 0);--_height:var(--forge-list-item-height, 48px);--_dense-height:var(--forge-list-item-dense-height, 32px);--_cursor:var(--forge-list-item-cursor, pointer);--_supporting-text-color:var(--forge-list-item-supporting-text-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.54)));--_supporting-text-font-size:var(--forge-list-item-supporting-text-font-size, var(--forge-typography-body2-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-font-size-scale, 1))));--_supporting-text-font-weight:var(--forge-list-item-supporting-text-font-weight, var(--forge-typography-body2-font-weight, 400));--_supporting-text-line-height:var(--forge-list-item-supporting-text-line-height, 1.5rem);--_selected-color:var(--forge-list-item-selected-color, var(--forge-theme-primary, #3f51b5));--_selected-opacity:var(--forge-list-item-selected-opacity, 0.08);--_selected-leading-color:var(--forge-list-item-selected-leading-color, var(--_selected-color));--_selected-trailing-color:var(--forge-list-item-selected-trailing-color, var(--_selected-color));--_selected-supporting-text-color:var(--forge-list-item-selected-supporting-text-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.54)));--_disabled-opacity:var(--forge-list-item-disabled-opacity, 0.38);--_disabled-cursor:var(--forge-list-item-disabled-cursor, not-allowed);--_one-line-height:var(--forge-list-item-one-line-height, var(--_height));--_two-line-height:var(--forge-list-item-two-line-height, var(--forge-list-item-height, 72px));--_three-line-height:var(--forge-list-item-three-line-height, var(--forge-list-item-height, 88px));--_dense-one-line-height:var(--forge-list-item-dense-one-line-height, var(--_dense-height));--_dense-two-line-height:var(--forge-list-item-dense-two-line-height, var(--forge-list-item-dense-height, 56px));--_dense-three-line-height:var(--forge-list-item-dense-three-line-height, var(--forge-list-item-dense-height, 72px));--_dense-font-size:var(--forge-list-item-dense-font-size, 0.875rem);--_dense-leading-margin-end:var(--forge-list-item-dense-leading-margin-end, var(--forge-list-item-leading-margin-end, 24px));--_dense-trailing-margin-start:var(--forge-list-item-dense-trailing-margin-start, var(--forge-list-item-trailing-margin-start, 24px));--_leading-margin-start:var(--forge-list-item-leading-margin-start, 0);--_leading-margin-end:var(--forge-list-item-leading-margin-end, 32px);--_leading-selected-color:var(--forge-list-item-leading-selected-color, var(--_selected-color));--_trailing-margin-start:var(--forge-list-item-trailing-margin-start, 32px);--_trailing-margin-end:var(--forge-list-item-trailing-margin-end, 0);--_trailing-selected-color:var(--forge-list-item-trailing-selected-color, var(--_selected-color));--_avatar-background-color:var(--forge-list-item-avatar-background-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.54)));--_avatar-color:var(--forge-list-item-avatar-color, var(--forge-theme-on-primary, #ffffff));--_avatar-shape:var(--forge-list-item-avatar-shape, var(--forge-shape-round, 50%));--_avatar-margin-start:var(--forge-list-item-avatar-margin-start, 0);--_avatar-margin-end:var(--forge-list-item-avatar-margin-end, 16px);--_avatar-size:var(--forge-list-item-avatar-size, 40px);position:relative;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;outline:0;text-decoration:none;background-color:var(--_background-color);border-radius:var(--_shape);-webkit-tap-highlight-color:transparent;height:var(--_height);min-height:var(--_height);padding:var(--_padding);margin:var(--_margin);cursor:var(--_cursor)}a.forge-list-item{color:inherit}.text-container{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-body2-font-family, var(--forge-typography-font-family, \"Roboto\", sans-serif));letter-spacing:var(--forge-typography-body2-letter-spacing, .015625em);text-transform:var(--forge-typography-body2-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-body2-text-decoration,inherit);text-decoration:var(--forge-typography-body2-text-decoration,inherit);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-box-sizing:border-box;box-sizing:border-box;font-size:var(--_supporting-text-font-size);font-weight:var(--_supporting-text-font-weight);line-height:var(--_supporting-text-line-height);-webkit-box-flex:1;flex:1}slot[name=secondary-text]::slotted(*),slot[name=subtitle]::slotted(*),slot[name=tertiary-text]::slotted(*),slot[name=tertiary-title]::slotted(*){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-body1-font-family, var(--forge-typography-font-family, \"Roboto\", sans-serif));font-size:var(--forge-typography-body1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-font-size-scale, .875)));font-weight:var(--forge-typography-body1-font-weight,400);line-height:var(--forge-typography-body1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-line-height-scale, 1.125)));letter-spacing:var(--forge-typography-body1-letter-spacing, .0357142857em);text-transform:var(--forge-typography-body1-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-body1-text-decoration,inherit);text-decoration:var(--forge-typography-body1-text-decoration,inherit);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--_supporting-text-color);display:block}:host([selected]) slot[name=secondary-text]::slotted(*),:host([selected]) slot[name=subtitle]::slotted(*),:host([selected]) slot[name=tertiary-text]::slotted(*),:host([selected]) slot[name=tertiary-title]::slotted(*){color:var(--_selected-supporting-text-color)}::slotted([slot=avatar]){background-color:var(--_avatar-background-color);color:var(--_avatar-color);display:-webkit-inline-box;display:inline-flex;flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;fill:currentColor;-webkit-margin-start:var(--_avatar-margin-start);margin-inline-start:var(--_avatar-margin-start);-webkit-margin-end:var(--_avatar-margin-end);margin-inline-end:var(--_avatar-margin-end);min-width:var(--_avatar-size);min-height:var(--_avatar-size);border-radius:var(--_avatar-shape)}::slotted([slot=leading]),::slotted([slot=trailing]){color:var(--_supporting-text-color);display:-webkit-inline-box;display:inline-flex;flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;fill:currentColor}::slotted([slot=leading]){-webkit-margin-start:var(--_leading-margin-start);margin-inline-start:var(--_leading-margin-start);-webkit-margin-end:var(--_leading-margin-end);margin-inline-end:var(--_leading-margin-end)}:host([selected]) ::slotted([slot=leading]){color:var(--_leading-selected-color)}:host([dense]) ::slotted([slot=leading]){-webkit-margin-end:var(--_dense-leading-margin-end);margin-inline-end:var(--_dense-leading-margin-end)}::slotted([slot=trailing]){-webkit-margin-start:var(--_trailing-margin-start);margin-inline-start:var(--_trailing-margin-start);-webkit-margin-end:var(--_trailing-margin-end);margin-inline-end:var(--_trailing-margin-end)}:host([selected]) ::slotted([slot=trailing]){color:var(--_trailing-selected-color)}:host([dense]) ::slotted([slot=trailing]){-webkit-margin-start:var(--_dense-trailing-margin-start);margin-inline-start:var(--_dense-trailing-margin-start)}:host([wrap]) .forge-list-item{height:auto}:host([wrap]) .text-container{white-space:normal;overflow:visible;text-overflow:clip}:host([wrap]) slot[name=secondary-text]::slotted(*),:host([wrap]) slot[name=subtitle]::slotted(*),:host([wrap]) slot[name=tertiary-text]::slotted(*),:host([wrap]) slot[name=tertiary-title]::slotted(*){white-space:normal;overflow:visible;text-overflow:clip}forge-focus-indicator{--forge-focus-indicator-shape:var(--forge-shape-medium, 4px)}forge-state-layer{border-radius:inherit}';
|
|
15
15
|
/**
|
|
16
|
-
* The custom element class behind the `<forge-list-item>` element.
|
|
17
|
-
*
|
|
18
16
|
* @tag forge-list-item
|
|
17
|
+
*
|
|
18
|
+
* @summary List items are individual rows of content inside of a list.
|
|
19
|
+
*
|
|
20
|
+
* @property {string} href - The href of the list item. This forces the list item to render as an anchor element.
|
|
21
|
+
* @property {string} target - The target of the list item when an `href` is set. Defaults to `'_blank'`.
|
|
22
|
+
* @property {boolean} nonInteractive - If true, the list item will not be interactive.
|
|
23
|
+
* @property {boolean} static - If true, the list item will not be interactive. Deprecated use `nonInteractive` instead.
|
|
24
|
+
* @property {boolean} disabled - Disables the list item.
|
|
25
|
+
* @property {boolean} selected - Applies the selected state to the list item.
|
|
26
|
+
* @property {boolean} active - Applies the active state to the list item by emulating its focused state.
|
|
27
|
+
* @property {unknown} value - The unique value of the list item.
|
|
28
|
+
* @property {boolean} dense - Applies the dense state to the list item.
|
|
29
|
+
* @property {boolean} propagateClick - If true, the list item will not propagate click events to itself and therefore cannot receive focus.
|
|
30
|
+
* @property {boolean} indented - Applies the indented state by adding margin to the start of the list item.
|
|
31
|
+
* @property {boolean} twoLine - Sets the list item height to support at least two lines of text.
|
|
32
|
+
* @property {boolean} threeLine - Sets the list item height to support at least three lines of text.
|
|
33
|
+
* @property {boolean} wrap - Sets the list item to wrap its text content.
|
|
34
|
+
*
|
|
35
|
+
* @attribute {string} href - The href of the list item. This forces the list item to render as an anchor element.
|
|
36
|
+
* @attribute {string} target - The target of the list item when an `href` is set. Defaults to `'_blank'`.
|
|
37
|
+
* @attribute {boolean} non-interactive - If true, the list item will not be interactive.
|
|
38
|
+
* @attribute {boolean} static - If true, the list item will not be interactive. Deprecated use `non-interactive` instead.
|
|
39
|
+
* @attribute {boolean} disabled - Disables the list item.
|
|
40
|
+
* @attribute {boolean} selected - Applies the selected state to the list item.
|
|
41
|
+
* @attribute {boolean} active - Applies the active state to the list item by emulating its focused state.
|
|
42
|
+
* @attribute {unknown} value - The unique value of the list item.
|
|
43
|
+
* @attribute {boolean} dense - Applies the dense state to the list item.
|
|
44
|
+
* @attribute {boolean} propagate-click - If applied, the list item will not propagate click events to itself and therefore cannot receive focus.
|
|
45
|
+
* @attribute {boolean} indented - Applies the indented state by adding margin to the start of the list item.
|
|
46
|
+
* @attribute {boolean} two-line - Sets the list item height to support at least two lines of text.
|
|
47
|
+
* @attribute {boolean} three-line - Sets the list item height to support at least three lines of text.
|
|
48
|
+
* @attribute {boolean} wrap - Sets the list item to wrap its text content.
|
|
49
|
+
*
|
|
50
|
+
* @event {CustomEvent<IListItemSelectEventData>} forge-list-item-select - Fires when the list item is selected.
|
|
51
|
+
*
|
|
52
|
+
* @slot - The primary text.
|
|
53
|
+
* @slot primary-text - The primary text. A named alias for the default slot.
|
|
54
|
+
* @slot secondary-text - The secondary text.
|
|
55
|
+
* @slot tertiary-text - The tertiary text.
|
|
56
|
+
* @slot title - The title element. An alias for the primary-text slot for backwards compatibility.
|
|
57
|
+
* @slot subtitle - The subtitle element. An alias for the secondary-text slot for backwards compatibility.
|
|
58
|
+
* @slot tertiary-title - The tertiary title element. An alias for the tertiary-text slot for backwards compatibility.
|
|
59
|
+
* @slot leading - The leading content.
|
|
60
|
+
* @slot trailing - The trailing element.
|
|
61
|
+
* @slot avatar - The avatar content.
|
|
62
|
+
*
|
|
63
|
+
* @csspart root - The root container element.
|
|
64
|
+
* @csspart text-container - The container for the text content.
|
|
65
|
+
* @csspart focus-indicator__indicator - The forwarded focus indicator's internal indicator element.
|
|
66
|
+
* @csspart state-layer__surface - The forwarded state layer's internal surface element.
|
|
67
|
+
*
|
|
68
|
+
* @cssprop --forge-list-item-background-color - The background color.
|
|
69
|
+
* @cssprop --forge-list-item-shape - The shape of the list item.
|
|
70
|
+
* @cssprop --forge-list-item-padding - The padding inside of the container element.
|
|
71
|
+
* @cssprop --forge-list-item-margin - The margin around the host element.
|
|
72
|
+
* @cssprop --forge-list-item-height - The height of the container.
|
|
73
|
+
* @cssprop --forge-list-item-dense-height - The height when in the dense state.
|
|
74
|
+
* @cssprop --forge-list-item-indent - The margin inline state when in the indented state.
|
|
75
|
+
* @cssprop --forge-list-item-supporting-text-color - The text color of the supporting text.
|
|
76
|
+
* @cssprop --forge-list-item-supporting-line-height - The line height of the supporting text.
|
|
77
|
+
* @cssprop --forge-list-item-selected-color - The color when in the selected state.
|
|
78
|
+
* @cssprop --forge-list-item-opacity - The opacity of the background color when in the disabled state.
|
|
79
|
+
* @cssprop --forge-list-item-selected-leading-color - The color of the leading content when in the selected state.
|
|
80
|
+
* @cssprop --forge-list-item-selected-trailing-color - The color of the trailing content when in the selected state.
|
|
81
|
+
* @cssprop --forge-list-item-selected-supporting-text-color - The color of the supporting text when in the selected state.
|
|
82
|
+
* @cssprop --forge-list-item-disabled-opacity - The opacity of the element when in the disabled state.
|
|
83
|
+
* @cssprop --forge-list-item-disabled-cursor - The cursor when in the disabled state.
|
|
84
|
+
* @cssprop --forge-list-item-one-line-height - The line height when in the one/single line state.
|
|
85
|
+
* @cssprop --forge-list-item-two-line-height - The line height when in the two line state.
|
|
86
|
+
* @cssprop --forge-list-item-three-line-height - The line height when in the three line state.
|
|
87
|
+
* @cssprop --forge-list-item-dense-one-line-height - The line height when in the dense one/single line state.
|
|
88
|
+
* @cssprop --forge-list-item-dense-two-line-height - The line height when in the dense two line state.
|
|
89
|
+
* @cssprop --forge-list-item-dense-three-line-height - The line height when in the dense three line state.
|
|
90
|
+
* @cssprop --forge-list-item-dense-font-size - The font size when in the dense state.
|
|
91
|
+
* @cssprop --forge-list-item-dense-indent - The margin inline state when in the dense indented state.
|
|
92
|
+
* @cssprop --forge-list-item-dense-leading-margin-end - The margin end of the leading content when in the dense state.
|
|
93
|
+
* @cssprop --forge-list-item-dense-trailing-margin-start - The margin start of the trailing content when in the dense state.
|
|
94
|
+
* @cssprop --forge-list-item-leading-margin-start - The margin start of the leading content.
|
|
95
|
+
* @cssprop --forge-list-item-leading-margin-end - The margin end of the leading content.
|
|
96
|
+
* @cssprop --forge-list-item-leading-selected-color - The color of the leading content when in the selected state.
|
|
97
|
+
* @cssprop --forge-list-item-trailing-margin-start - The margin start of the trailing content.
|
|
98
|
+
* @cssprop --forge-list-item-trailing-margin-end - The margin end of the trailing content.
|
|
99
|
+
* @cssprop --forge-list-item-trailing-selected-color - The color of the trailing content when in the selected state.
|
|
100
|
+
* @cssprop --forge-list-item-avatar-background-color - The background color of the avatar container.
|
|
101
|
+
* @cssprop --forge-list-item-avatar-color - The foreground color of the avatar container.
|
|
102
|
+
* @cssprop --forge-list-item-avatar-shape - The shape of the avatar container.
|
|
103
|
+
* @cssprop --forge-list-item-avatar-margin-start - The margin start of the avatar container.
|
|
104
|
+
* @cssprop --forge-list-item-avatar-margin-end - The margin end of the avatar container.
|
|
105
|
+
* @cssprop --forge-list-item-avatar-size - The height & width of the avatar container.
|
|
19
106
|
*/
|
|
20
|
-
let ListItemComponent = class ListItemComponent extends
|
|
107
|
+
let ListItemComponent = class ListItemComponent extends HTMLElement {
|
|
21
108
|
static get observedAttributes() {
|
|
22
109
|
return [
|
|
23
|
-
LIST_ITEM_CONSTANTS.
|
|
24
|
-
LIST_ITEM_CONSTANTS.
|
|
25
|
-
LIST_ITEM_CONSTANTS.
|
|
26
|
-
LIST_ITEM_CONSTANTS.
|
|
27
|
-
LIST_ITEM_CONSTANTS.
|
|
28
|
-
LIST_ITEM_CONSTANTS.
|
|
29
|
-
LIST_ITEM_CONSTANTS.
|
|
30
|
-
LIST_ITEM_CONSTANTS.
|
|
31
|
-
LIST_ITEM_CONSTANTS.
|
|
32
|
-
LIST_ITEM_CONSTANTS.
|
|
33
|
-
LIST_ITEM_CONSTANTS.
|
|
34
|
-
LIST_ITEM_CONSTANTS.
|
|
35
|
-
LIST_ITEM_CONSTANTS.
|
|
36
|
-
LIST_ITEM_CONSTANTS.
|
|
110
|
+
LIST_ITEM_CONSTANTS.observedAttributes.HREF,
|
|
111
|
+
LIST_ITEM_CONSTANTS.observedAttributes.TARGET,
|
|
112
|
+
LIST_ITEM_CONSTANTS.observedAttributes.STATIC,
|
|
113
|
+
LIST_ITEM_CONSTANTS.observedAttributes.NON_INTERACTIVE,
|
|
114
|
+
LIST_ITEM_CONSTANTS.observedAttributes.DISABLED,
|
|
115
|
+
LIST_ITEM_CONSTANTS.observedAttributes.SELECTED,
|
|
116
|
+
LIST_ITEM_CONSTANTS.observedAttributes.ACTIVE,
|
|
117
|
+
LIST_ITEM_CONSTANTS.observedAttributes.VALUE,
|
|
118
|
+
LIST_ITEM_CONSTANTS.observedAttributes.DENSE,
|
|
119
|
+
LIST_ITEM_CONSTANTS.observedAttributes.PROPAGATE_CLICK,
|
|
120
|
+
LIST_ITEM_CONSTANTS.observedAttributes.INDENTED,
|
|
121
|
+
LIST_ITEM_CONSTANTS.observedAttributes.TWO_LINE,
|
|
122
|
+
LIST_ITEM_CONSTANTS.observedAttributes.THREE_LINE,
|
|
123
|
+
LIST_ITEM_CONSTANTS.observedAttributes.WRAP
|
|
37
124
|
];
|
|
38
125
|
}
|
|
39
126
|
constructor() {
|
|
40
127
|
super();
|
|
41
|
-
attachShadowTemplate(this,
|
|
128
|
+
attachShadowTemplate(this, template, styles);
|
|
42
129
|
this._foundation = new ListItemFoundation(new ListItemAdapter(this));
|
|
43
130
|
}
|
|
44
131
|
connectedCallback() {
|
|
45
|
-
// To simulate the :host-context() selector for Firefox until they implement it, we need to determine if the
|
|
46
|
-
// list item is within a drawer for auto-styling the list item when included within a drawer. Check to see if
|
|
47
|
-
// any of the parents of this element are a drawer.
|
|
48
|
-
if (!this.hasAttribute(LIST_ITEM_CONSTANTS.attributes.DRAWER_CONTEXT) && elementParents(this).some(el => ['forge-drawer', 'forge-modal-drawer', 'forge-mini-drawer'].includes(el.tagName.toLowerCase()))) {
|
|
49
|
-
this.setAttribute(LIST_ITEM_CONSTANTS.attributes.DRAWER_CONTEXT, 'true');
|
|
50
|
-
}
|
|
51
|
-
const list = requireParent(this, LIST_CONSTANTS.elementName);
|
|
52
|
-
if (list) {
|
|
53
|
-
this._inheritParentListProps(list);
|
|
54
|
-
}
|
|
55
132
|
this._foundation.initialize();
|
|
56
133
|
}
|
|
57
134
|
disconnectedCallback() {
|
|
@@ -59,114 +136,101 @@ let ListItemComponent = class ListItemComponent extends BaseComponent {
|
|
|
59
136
|
}
|
|
60
137
|
attributeChangedCallback(name, oldValue, newValue) {
|
|
61
138
|
switch (name) {
|
|
62
|
-
case LIST_ITEM_CONSTANTS.
|
|
63
|
-
this.
|
|
139
|
+
case LIST_ITEM_CONSTANTS.observedAttributes.HREF:
|
|
140
|
+
this.href = newValue;
|
|
64
141
|
break;
|
|
65
|
-
case LIST_ITEM_CONSTANTS.
|
|
66
|
-
this.
|
|
142
|
+
case LIST_ITEM_CONSTANTS.observedAttributes.TARGET:
|
|
143
|
+
this.target = newValue;
|
|
67
144
|
break;
|
|
68
|
-
case LIST_ITEM_CONSTANTS.
|
|
69
|
-
|
|
145
|
+
case LIST_ITEM_CONSTANTS.observedAttributes.NON_INTERACTIVE:
|
|
146
|
+
case LIST_ITEM_CONSTANTS.observedAttributes.STATIC:
|
|
147
|
+
this.nonInteractive = coerceBoolean(newValue);
|
|
70
148
|
break;
|
|
71
|
-
case LIST_ITEM_CONSTANTS.
|
|
72
|
-
this.
|
|
149
|
+
case LIST_ITEM_CONSTANTS.observedAttributes.DISABLED:
|
|
150
|
+
this.disabled = coerceBoolean(newValue);
|
|
73
151
|
break;
|
|
74
|
-
case LIST_ITEM_CONSTANTS.
|
|
152
|
+
case LIST_ITEM_CONSTANTS.observedAttributes.SELECTED:
|
|
75
153
|
this.selected = coerceBoolean(newValue);
|
|
76
154
|
break;
|
|
77
|
-
case LIST_ITEM_CONSTANTS.
|
|
78
|
-
this.
|
|
79
|
-
break;
|
|
80
|
-
case LIST_ITEM_CONSTANTS.attributes.HREF:
|
|
81
|
-
this.href = newValue;
|
|
82
|
-
break;
|
|
83
|
-
case LIST_ITEM_CONSTANTS.attributes.TARGET:
|
|
84
|
-
this.target = newValue;
|
|
85
|
-
break;
|
|
86
|
-
case LIST_ITEM_CONSTANTS.attributes.RIPPLE:
|
|
87
|
-
this.ripple = coerceBoolean(newValue);
|
|
155
|
+
case LIST_ITEM_CONSTANTS.observedAttributes.ACTIVE:
|
|
156
|
+
this.active = coerceBoolean(newValue);
|
|
88
157
|
break;
|
|
89
|
-
case LIST_ITEM_CONSTANTS.
|
|
90
|
-
this.
|
|
158
|
+
case LIST_ITEM_CONSTANTS.observedAttributes.VALUE:
|
|
159
|
+
this.value = newValue;
|
|
91
160
|
break;
|
|
92
|
-
case LIST_ITEM_CONSTANTS.
|
|
161
|
+
case LIST_ITEM_CONSTANTS.observedAttributes.DENSE:
|
|
93
162
|
this.dense = coerceBoolean(newValue);
|
|
94
163
|
break;
|
|
95
|
-
case LIST_ITEM_CONSTANTS.
|
|
164
|
+
case LIST_ITEM_CONSTANTS.observedAttributes.PROPAGATE_CLICK:
|
|
96
165
|
this.propagateClick = coerceBoolean(newValue);
|
|
97
166
|
break;
|
|
98
|
-
case LIST_ITEM_CONSTANTS.
|
|
167
|
+
case LIST_ITEM_CONSTANTS.observedAttributes.INDENTED:
|
|
99
168
|
this.indented = coerceBoolean(newValue);
|
|
100
169
|
break;
|
|
101
|
-
case LIST_ITEM_CONSTANTS.
|
|
170
|
+
case LIST_ITEM_CONSTANTS.observedAttributes.TWO_LINE:
|
|
171
|
+
this.twoLine = coerceBoolean(newValue);
|
|
172
|
+
break;
|
|
173
|
+
case LIST_ITEM_CONSTANTS.observedAttributes.THREE_LINE:
|
|
174
|
+
this.threeLine = coerceBoolean(newValue);
|
|
175
|
+
break;
|
|
176
|
+
case LIST_ITEM_CONSTANTS.observedAttributes.WRAP:
|
|
102
177
|
this.wrap = coerceBoolean(newValue);
|
|
103
178
|
break;
|
|
104
179
|
}
|
|
105
180
|
}
|
|
106
|
-
_inheritParentListProps(list) {
|
|
107
|
-
if (list.hasAttribute(LIST_CONSTANTS.attributes.STATIC)) {
|
|
108
|
-
this.static = true;
|
|
109
|
-
}
|
|
110
|
-
if (list.hasAttribute(LIST_CONSTANTS.attributes.DENSE)) {
|
|
111
|
-
this.dense = true;
|
|
112
|
-
}
|
|
113
|
-
if (list.getAttribute(LIST_CONSTANTS.attributes.PROPAGATE_CLICK) === 'false') {
|
|
114
|
-
this.propagateClick = false;
|
|
115
|
-
}
|
|
116
|
-
if (list.hasAttribute(LIST_CONSTANTS.attributes.INDENTED)) {
|
|
117
|
-
this.indented = true;
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
/** Sets focus to this list item. */
|
|
121
181
|
focus() {
|
|
122
182
|
this._foundation.setFocus();
|
|
123
183
|
}
|
|
124
184
|
};
|
|
125
185
|
__decorate([
|
|
126
186
|
FoundationProperty()
|
|
127
|
-
], ListItemComponent.prototype, "
|
|
187
|
+
], ListItemComponent.prototype, "href", void 0);
|
|
128
188
|
__decorate([
|
|
129
189
|
FoundationProperty()
|
|
130
|
-
], ListItemComponent.prototype, "
|
|
190
|
+
], ListItemComponent.prototype, "target", void 0);
|
|
131
191
|
__decorate([
|
|
132
192
|
FoundationProperty()
|
|
133
|
-
], ListItemComponent.prototype, "
|
|
193
|
+
], ListItemComponent.prototype, "static", void 0);
|
|
134
194
|
__decorate([
|
|
135
195
|
FoundationProperty()
|
|
136
|
-
], ListItemComponent.prototype, "
|
|
196
|
+
], ListItemComponent.prototype, "nonInteractive", void 0);
|
|
137
197
|
__decorate([
|
|
138
198
|
FoundationProperty()
|
|
139
|
-
], ListItemComponent.prototype, "
|
|
199
|
+
], ListItemComponent.prototype, "disabled", void 0);
|
|
140
200
|
__decorate([
|
|
141
201
|
FoundationProperty()
|
|
142
|
-
], ListItemComponent.prototype, "
|
|
202
|
+
], ListItemComponent.prototype, "selected", void 0);
|
|
143
203
|
__decorate([
|
|
144
204
|
FoundationProperty()
|
|
145
|
-
], ListItemComponent.prototype, "
|
|
205
|
+
], ListItemComponent.prototype, "active", void 0);
|
|
146
206
|
__decorate([
|
|
147
207
|
FoundationProperty()
|
|
148
|
-
], ListItemComponent.prototype, "
|
|
208
|
+
], ListItemComponent.prototype, "value", void 0);
|
|
149
209
|
__decorate([
|
|
150
210
|
FoundationProperty()
|
|
151
|
-
], ListItemComponent.prototype, "
|
|
211
|
+
], ListItemComponent.prototype, "dense", void 0);
|
|
152
212
|
__decorate([
|
|
153
213
|
FoundationProperty()
|
|
154
|
-
], ListItemComponent.prototype, "
|
|
214
|
+
], ListItemComponent.prototype, "propagateClick", void 0);
|
|
155
215
|
__decorate([
|
|
156
216
|
FoundationProperty()
|
|
157
|
-
], ListItemComponent.prototype, "
|
|
217
|
+
], ListItemComponent.prototype, "indented", void 0);
|
|
158
218
|
__decorate([
|
|
159
219
|
FoundationProperty()
|
|
160
|
-
], ListItemComponent.prototype, "
|
|
220
|
+
], ListItemComponent.prototype, "twoLine", void 0);
|
|
161
221
|
__decorate([
|
|
162
222
|
FoundationProperty()
|
|
163
|
-
], ListItemComponent.prototype, "
|
|
223
|
+
], ListItemComponent.prototype, "threeLine", void 0);
|
|
164
224
|
__decorate([
|
|
165
225
|
FoundationProperty()
|
|
166
226
|
], ListItemComponent.prototype, "wrap", void 0);
|
|
167
227
|
ListItemComponent = __decorate([
|
|
168
228
|
CustomElement({
|
|
169
|
-
name: LIST_ITEM_CONSTANTS.elementName
|
|
229
|
+
name: LIST_ITEM_CONSTANTS.elementName,
|
|
230
|
+
dependencies: [
|
|
231
|
+
StateLayerComponent,
|
|
232
|
+
FocusIndicatorComponent
|
|
233
|
+
]
|
|
170
234
|
})
|
|
171
235
|
], ListItemComponent);
|
|
172
236
|
export { ListItemComponent };
|
|
@@ -240,17 +240,12 @@ export class ListDropdownAdapter {
|
|
|
240
240
|
const listItems = this._getListItemElements();
|
|
241
241
|
if (listItems.length) {
|
|
242
242
|
const activeItems = listItems.filter(li => li !== listItem && li.active);
|
|
243
|
-
|
|
244
|
-
activeItems.forEach(ai => ai.active = false);
|
|
245
|
-
}
|
|
243
|
+
activeItems.forEach(ai => ai.active = false);
|
|
246
244
|
}
|
|
247
245
|
// Now we can toggle the selected state and sync the active state
|
|
248
246
|
listItem.selected = isSelected;
|
|
249
247
|
listItem.setAttribute('aria-selected', `${isSelected}`);
|
|
250
248
|
listItem.setAttribute('aria-checked', `${isSelected}`);
|
|
251
|
-
if (isSelected) {
|
|
252
|
-
listItem.active = true;
|
|
253
|
-
}
|
|
254
249
|
// Toggle the checkbox icon based on the selected state
|
|
255
250
|
const checkboxElement = listItem.querySelector(`${ICON_CONSTANTS.elementName}[slot=leading]`);
|
|
256
251
|
if (checkboxElement) {
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
+
import { IIconComponent } from '../icon';
|
|
6
7
|
import { IPopupPosition, PopupPlacement } from '../popup';
|
|
7
8
|
export declare const LIST_DROPDOWN_CONSTANTS: {
|
|
8
9
|
attributes: {
|
|
@@ -29,15 +30,18 @@ export type ListDropdownIconType = 'font' | 'component';
|
|
|
29
30
|
export interface IBaseListDropdownOption<T = any> {
|
|
30
31
|
value: T;
|
|
31
32
|
label: string;
|
|
33
|
+
secondaryLabel?: string;
|
|
32
34
|
disabled?: boolean;
|
|
33
35
|
divider?: boolean;
|
|
34
36
|
optionClass?: string | string[];
|
|
35
37
|
leadingIcon?: string;
|
|
36
38
|
leadingIconClass?: string;
|
|
37
39
|
leadingIconType?: ListDropdownIconType;
|
|
40
|
+
leadingIconComponentProps?: Partial<IIconComponent>;
|
|
38
41
|
trailingIcon?: string;
|
|
39
42
|
trailingIconClass?: string;
|
|
40
43
|
trailingIconType?: ListDropdownIconType;
|
|
44
|
+
trailingIconComponentProps?: Partial<IIconComponent>;
|
|
41
45
|
leadingBuilder?: () => HTMLElement;
|
|
42
46
|
trailingBuilder?: () => HTMLElement;
|
|
43
47
|
}
|
|
@@ -37,15 +37,6 @@ export function createDropdown(config, targetElement) {
|
|
|
37
37
|
evt.preventDefault();
|
|
38
38
|
}
|
|
39
39
|
});
|
|
40
|
-
// Set roles and other attributes based on our type
|
|
41
|
-
switch (config.type) {
|
|
42
|
-
case ListDropdownType.Menu:
|
|
43
|
-
dropdownElement.setAttribute('role', 'menu');
|
|
44
|
-
dropdownElement.setAttribute('aria-orientation', 'vertical');
|
|
45
|
-
break;
|
|
46
|
-
default:
|
|
47
|
-
dropdownElement.setAttribute('role', 'listbox');
|
|
48
|
-
}
|
|
49
40
|
if (config.id) {
|
|
50
41
|
dropdownElement.id = dropdownId;
|
|
51
42
|
}
|
|
@@ -87,6 +78,15 @@ export function createList(config) {
|
|
|
87
78
|
const listElement = document.createElement(LIST_CONSTANTS.elementName);
|
|
88
79
|
listElement.id = `list-dropdown-list-${config.id}`;
|
|
89
80
|
listElement.propagateClick = false;
|
|
81
|
+
// Set roles and other attributes based on our type
|
|
82
|
+
switch (config.type) {
|
|
83
|
+
case ListDropdownType.Menu:
|
|
84
|
+
listElement.setAttribute('role', 'menu');
|
|
85
|
+
listElement.setAttribute('aria-orientation', 'vertical');
|
|
86
|
+
break;
|
|
87
|
+
default:
|
|
88
|
+
listElement.setAttribute('role', 'listbox');
|
|
89
|
+
}
|
|
90
90
|
return listElement;
|
|
91
91
|
}
|
|
92
92
|
/**
|
|
@@ -157,7 +157,6 @@ export function createListItems(config, listElement, options, startIndex = 0, re
|
|
|
157
157
|
let listItemElement = document.createElement('forge-list-item');
|
|
158
158
|
listItemElement.value = option.value;
|
|
159
159
|
listItemElement.id = `list-dropdown-option-${config.id}-${optionIdIndex++}`;
|
|
160
|
-
listItemElement.style.cursor = 'pointer';
|
|
161
160
|
if (config.wrapOptionText) {
|
|
162
161
|
listItemElement.wrap = true;
|
|
163
162
|
}
|
|
@@ -165,16 +164,6 @@ export function createListItems(config, listElement, options, startIndex = 0, re
|
|
|
165
164
|
if (option.optionClass && (typeof option.optionClass === 'string' || Array.isArray(option.optionClass) && option.optionClass.length)) {
|
|
166
165
|
addClass(option.optionClass, listItemElement);
|
|
167
166
|
}
|
|
168
|
-
// Set role based on type
|
|
169
|
-
switch (config.type) {
|
|
170
|
-
case ListDropdownType.Menu:
|
|
171
|
-
listItemElement.setAttribute('role', 'menuitem');
|
|
172
|
-
break;
|
|
173
|
-
case ListDropdownType.None:
|
|
174
|
-
break;
|
|
175
|
-
default:
|
|
176
|
-
listItemElement.setAttribute('role', 'option');
|
|
177
|
-
}
|
|
178
167
|
if (config.dense) {
|
|
179
168
|
listItemElement.dense = true;
|
|
180
169
|
}
|
|
@@ -204,6 +193,14 @@ export function createListItems(config, listElement, options, startIndex = 0, re
|
|
|
204
193
|
}
|
|
205
194
|
}
|
|
206
195
|
}
|
|
196
|
+
// Check for secondary (subtitle) text
|
|
197
|
+
if (option.secondaryLabel) {
|
|
198
|
+
const secondaryLabelElement = document.createElement('span');
|
|
199
|
+
secondaryLabelElement.slot = 'subtitle';
|
|
200
|
+
secondaryLabelElement.textContent = option.secondaryLabel;
|
|
201
|
+
listItemElement.twoLine = true;
|
|
202
|
+
listItemElement.appendChild(secondaryLabelElement);
|
|
203
|
+
}
|
|
207
204
|
// If multiple selections are enabled then we need to create and append a leading checkbox element
|
|
208
205
|
if (config.multiple) {
|
|
209
206
|
const checkboxElement = createCheckboxElement(isSelected);
|
|
@@ -225,7 +222,7 @@ export function createListItems(config, listElement, options, startIndex = 0, re
|
|
|
225
222
|
}
|
|
226
223
|
}
|
|
227
224
|
else if (option.leadingIcon) {
|
|
228
|
-
const leadingIconElement = createIconElement(option.leadingIconType, option.leadingIcon, option.leadingIconClass || config.iconClass);
|
|
225
|
+
const leadingIconElement = createIconElement(option.leadingIconType, option.leadingIcon, option.leadingIconClass || config.iconClass, option.leadingIconComponentProps);
|
|
229
226
|
leadingIconElement.slot = 'leading';
|
|
230
227
|
listItemElement.appendChild(leadingIconElement);
|
|
231
228
|
}
|
|
@@ -238,7 +235,7 @@ export function createListItems(config, listElement, options, startIndex = 0, re
|
|
|
238
235
|
}
|
|
239
236
|
}
|
|
240
237
|
else if (option.trailingIcon) {
|
|
241
|
-
const trailingIconElement = createIconElement(option.trailingIconType, option.trailingIcon, option.trailingIconClass || config.iconClass);
|
|
238
|
+
const trailingIconElement = createIconElement(option.trailingIconType, option.trailingIcon, option.trailingIconClass || config.iconClass, option.trailingIconComponentProps);
|
|
242
239
|
trailingIconElement.slot = 'trailing';
|
|
243
240
|
listItemElement.appendChild(trailingIconElement);
|
|
244
241
|
}
|
|
@@ -248,7 +245,6 @@ export function createListItems(config, listElement, options, startIndex = 0, re
|
|
|
248
245
|
listItemElement.setAttribute('aria-disabled', 'true');
|
|
249
246
|
}
|
|
250
247
|
else {
|
|
251
|
-
listItemElement.style.cursor = 'pointer';
|
|
252
248
|
listItemElement.setAttribute('aria-disabled', 'false');
|
|
253
249
|
}
|
|
254
250
|
// Update the selected state
|
|
@@ -292,7 +288,7 @@ function createDivider() {
|
|
|
292
288
|
divider.setAttribute('aria-hidden', 'true');
|
|
293
289
|
return divider;
|
|
294
290
|
}
|
|
295
|
-
function createIconElement(type = 'font', iconName, iconClass) {
|
|
291
|
+
function createIconElement(type = 'font', iconName, iconClass, componentProps) {
|
|
296
292
|
if (type === 'component') {
|
|
297
293
|
const icon = document.createElement('forge-icon');
|
|
298
294
|
if (iconClass) {
|
|
@@ -300,6 +296,9 @@ function createIconElement(type = 'font', iconName, iconClass) {
|
|
|
300
296
|
}
|
|
301
297
|
icon.setAttribute('aria-hidden', 'true');
|
|
302
298
|
icon.name = iconName;
|
|
299
|
+
if (componentProps) {
|
|
300
|
+
Object.assign(icon, componentProps);
|
|
301
|
+
}
|
|
303
302
|
return icon;
|
|
304
303
|
}
|
|
305
304
|
const iconElement = document.createElement('i');
|