@tylertech/forge 3.0.0-next.13 → 3.0.0-next.15
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 +48615 -40598
- package/dist/esm/accordion/index.js +1 -1
- package/dist/esm/app-bar/app-bar/index.js +7 -0
- 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 +1 -1
- 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.3KEXRSB5.js +7 -0
- package/dist/esm/chunks/{chunk.ZGRQDDHO.js.map → chunk.3KEXRSB5.js.map} +1 -1
- package/dist/esm/chunks/{chunk.U6FJJGO3.js → chunk.3PKNBYMG.js} +1 -1
- package/dist/esm/chunks/chunk.3PKNBYMG.js.map +7 -0
- package/dist/esm/chunks/chunk.3TKTJ3BY.js +7 -0
- package/dist/esm/chunks/chunk.3TKTJ3BY.js.map +7 -0
- package/dist/esm/chunks/{chunk.MKJCHUJH.js → chunk.42YDA5FH.js} +2 -2
- package/dist/esm/chunks/chunk.447QNYAZ.js +7 -0
- package/dist/esm/chunks/{chunk.PYR2OCCH.js.map → chunk.447QNYAZ.js.map} +1 -1
- package/dist/esm/chunks/chunk.4IMRT2B3.js +7 -0
- package/dist/esm/chunks/{chunk.RES7WDKH.js.map → chunk.4IMRT2B3.js.map} +1 -1
- package/dist/esm/chunks/chunk.4JDJ33IU.js +7 -0
- package/dist/esm/chunks/{chunk.ARQMMZJL.js.map → chunk.4JDJ33IU.js.map} +1 -1
- package/dist/esm/chunks/chunk.4QCGBFLU.js +7 -0
- package/dist/esm/chunks/chunk.4QCGBFLU.js.map +7 -0
- package/dist/esm/chunks/chunk.4XN2WGMP.js +7 -0
- package/dist/esm/chunks/chunk.4XN2WGMP.js.map +7 -0
- package/dist/esm/chunks/{chunk.G73KL7P2.js → chunk.5EGEZ4IY.js} +2 -2
- package/dist/esm/chunks/chunk.5FCUOZSU.js +7 -0
- package/dist/esm/chunks/{chunk.IHAHJPMB.js.map → chunk.5FCUOZSU.js.map} +1 -1
- package/dist/esm/chunks/chunk.5KYKGNGY.js +7 -0
- package/dist/esm/chunks/{chunk.MWYQRG5W.js.map → chunk.5KYKGNGY.js.map} +1 -1
- package/dist/esm/chunks/chunk.5QZPUOGG.js +7 -0
- package/dist/esm/chunks/{chunk.7VMJLHQY.js.map → chunk.5QZPUOGG.js.map} +1 -1
- package/dist/esm/chunks/chunk.5ZMM75CJ.js +7 -0
- package/dist/esm/chunks/chunk.5ZMM75CJ.js.map +7 -0
- package/dist/esm/chunks/chunk.6FUXTHO6.js +7 -0
- package/dist/esm/chunks/{chunk.AUBOJZQ7.js.map → chunk.6FUXTHO6.js.map} +1 -1
- package/dist/esm/chunks/chunk.6ORVPXNN.js +7 -0
- package/dist/esm/chunks/{chunk.IDMDBMBR.js.map → chunk.6ORVPXNN.js.map} +1 -1
- package/dist/esm/chunks/chunk.6ZJIHOIG.js +7 -0
- package/dist/esm/chunks/chunk.6ZJIHOIG.js.map +7 -0
- package/dist/esm/chunks/chunk.7LOMI6J3.js +7 -0
- package/dist/esm/chunks/chunk.7LOMI6J3.js.map +7 -0
- package/dist/esm/chunks/chunk.7PVVZC7P.js +7 -0
- package/dist/esm/chunks/chunk.7PVVZC7P.js.map +7 -0
- package/dist/esm/chunks/chunk.AEO2X5OZ.js +7 -0
- package/dist/esm/chunks/{chunk.LOG6GQOK.js.map → chunk.AEO2X5OZ.js.map} +1 -1
- package/dist/esm/chunks/chunk.AIPDMLJD.js +7 -0
- package/dist/esm/chunks/{chunk.AMZZKEAE.js.map → chunk.AIPDMLJD.js.map} +4 -4
- package/dist/esm/chunks/chunk.APFDK6YA.js +7 -0
- package/dist/esm/chunks/chunk.APFDK6YA.js.map +7 -0
- package/dist/esm/chunks/{chunk.W2LN45WY.js → chunk.AR6YUJUH.js} +2 -2
- package/dist/esm/chunks/chunk.AVRBHXDT.js +177 -0
- package/dist/esm/chunks/{chunk.R6LQBI42.js.map → chunk.AVRBHXDT.js.map} +1 -1
- package/dist/esm/chunks/chunk.BAQYPAUM.js +7 -0
- package/dist/esm/chunks/{chunk.BB4UF5RX.js → chunk.BC7WB5RG.js} +2 -2
- package/dist/esm/chunks/chunk.BIVQ4GTK.js +7 -0
- package/dist/esm/chunks/chunk.BIVQ4GTK.js.map +7 -0
- package/dist/esm/chunks/chunk.BJD6BKGC.js +31 -0
- package/dist/esm/chunks/chunk.BJD6BKGC.js.map +7 -0
- package/dist/esm/chunks/chunk.BS73Y6IN.js +7 -0
- package/dist/esm/chunks/{chunk.36C6SIPW.js.map → chunk.BS73Y6IN.js.map} +1 -1
- package/dist/esm/chunks/chunk.BTWJPE4Y.js +7 -0
- package/dist/esm/chunks/{chunk.HOLCNJXC.js.map → chunk.BTWJPE4Y.js.map} +1 -1
- package/dist/esm/chunks/chunk.BWGDZUJV.js +12 -0
- package/dist/esm/chunks/chunk.BWGDZUJV.js.map +7 -0
- package/dist/esm/chunks/{chunk.7XFU2W25.js → chunk.BX4AQRHB.js} +2 -2
- package/dist/esm/chunks/{chunk.7XFU2W25.js.map → chunk.BX4AQRHB.js.map} +3 -3
- package/dist/esm/chunks/chunk.CBY7M4X6.js +7 -0
- package/dist/esm/chunks/{chunk.TU74SREL.js.map → chunk.CBY7M4X6.js.map} +1 -1
- package/dist/esm/chunks/{chunk.YA3RDJCV.js → chunk.CZOABXEQ.js} +2 -2
- package/dist/esm/chunks/{chunk.YA3RDJCV.js.map → chunk.CZOABXEQ.js.map} +2 -2
- package/dist/esm/chunks/chunk.DLBAZD5X.js +7 -0
- package/dist/esm/chunks/{chunk.QLCVRJ3Q.js.map → chunk.DLBAZD5X.js.map} +1 -1
- package/dist/esm/chunks/chunk.DTWXICOY.js +7 -0
- package/dist/esm/chunks/chunk.DTWXICOY.js.map +7 -0
- package/dist/esm/chunks/{chunk.KV67JXOC.js → chunk.EMCY55MX.js} +2 -2
- package/dist/esm/chunks/chunk.ESQWFHCF.js +7 -0
- package/dist/esm/chunks/chunk.ESQWFHCF.js.map +7 -0
- package/dist/esm/chunks/{chunk.FYWPZFLJ.js → chunk.EWT2PBEP.js} +2 -2
- package/dist/esm/chunks/{chunk.FYWPZFLJ.js.map → chunk.EWT2PBEP.js.map} +2 -2
- package/dist/esm/chunks/chunk.FJ5VNWYK.js +7 -0
- package/dist/esm/chunks/chunk.FJ5VNWYK.js.map +7 -0
- package/dist/esm/chunks/chunk.FJRCWWE2.js +7 -0
- package/dist/esm/chunks/chunk.FJRCWWE2.js.map +7 -0
- package/dist/esm/chunks/chunk.FQUZWINF.js +7 -0
- package/dist/esm/chunks/{chunk.5WMYF27O.js.map → chunk.FQUZWINF.js.map} +2 -2
- package/dist/esm/chunks/chunk.FSILMO6U.js +7 -0
- package/dist/esm/chunks/{chunk.3R4BUIQP.js.map → chunk.FSILMO6U.js.map} +1 -1
- package/dist/esm/chunks/chunk.FXGY5IVK.js +7 -0
- package/dist/esm/chunks/chunk.FXGY5IVK.js.map +7 -0
- package/dist/esm/chunks/chunk.G67LO74A.js +7 -0
- package/dist/esm/chunks/chunk.G67LO74A.js.map +7 -0
- package/dist/esm/chunks/chunk.GGQL3OZB.js +7 -0
- package/dist/esm/chunks/{chunk.QJCNMYD3.js.map → chunk.GGQL3OZB.js.map} +1 -1
- package/dist/esm/chunks/{chunk.K7FPXAFS.js → chunk.HZUQXCOQ.js} +2 -2
- package/dist/esm/chunks/{chunk.K7FPXAFS.js.map → chunk.HZUQXCOQ.js.map} +2 -2
- package/dist/esm/chunks/chunk.I7OY43HW.js +7 -0
- package/dist/esm/chunks/chunk.I7OY43HW.js.map +7 -0
- package/dist/esm/chunks/{chunk.FXIWCHLW.js → chunk.I7X25KEB.js} +2 -2
- package/dist/esm/chunks/chunk.ICIGXLJW.js +7 -0
- package/dist/esm/chunks/{chunk.NUMKGUCK.js.map → chunk.ICIGXLJW.js.map} +1 -1
- package/dist/esm/chunks/chunk.IHIKIZIT.js +7 -0
- package/dist/esm/chunks/chunk.ILUXZNGY.js +7 -0
- package/dist/esm/chunks/{chunk.3ZPSN2QG.js.map → chunk.ILUXZNGY.js.map} +1 -1
- package/dist/esm/chunks/chunk.JEZR25US.js +7 -0
- package/dist/esm/chunks/{chunk.3HCYRDRI.js.map → chunk.JEZR25US.js.map} +1 -1
- package/dist/esm/chunks/{chunk.ZRSDTCSD.js → chunk.JHELTQKA.js} +2 -2
- package/dist/esm/chunks/{chunk.GNDKQPDV.js → chunk.JPI4XCQL.js} +2 -2
- package/dist/esm/chunks/chunk.JRSFCVYQ.js +7 -0
- package/dist/esm/chunks/chunk.JRSFCVYQ.js.map +7 -0
- package/dist/esm/chunks/chunk.JZ27GPZJ.js +7 -0
- package/dist/esm/chunks/{chunk.7ZROQ6D3.js.map → chunk.JZ27GPZJ.js.map} +1 -1
- package/dist/esm/chunks/chunk.K3TJMIKD.js +7 -0
- package/dist/esm/chunks/{chunk.IAWYYNUU.js.map → chunk.K3TJMIKD.js.map} +1 -1
- package/dist/esm/chunks/{chunk.FLWNOP42.js → chunk.KDJZN6EW.js} +2 -2
- package/dist/esm/chunks/chunk.KGHABAFA.js +7 -0
- package/dist/esm/chunks/{chunk.URJQNB3S.js.map → chunk.KGHABAFA.js.map} +1 -1
- package/dist/esm/chunks/chunk.KR4BNI6X.js +7 -0
- package/dist/esm/chunks/{chunk.G7SMCLHQ.js.map → chunk.KR4BNI6X.js.map} +1 -1
- package/dist/esm/chunks/chunk.KUNIEX72.js +7 -0
- package/dist/esm/chunks/{chunk.IISWKFCX.js.map → chunk.KUNIEX72.js.map} +1 -1
- package/dist/esm/chunks/{chunk.675V42JS.js → chunk.KWBYYSH3.js} +2 -2
- package/dist/esm/chunks/chunk.L27ANAIL.js +7 -0
- package/dist/esm/chunks/{chunk.XNFS7YIB.js.map → chunk.L27ANAIL.js.map} +1 -1
- package/dist/esm/chunks/{chunk.XEFWZKHQ.js → chunk.L45HXBDS.js} +2 -2
- package/dist/esm/chunks/chunk.L4UXWCVD.js +7 -0
- package/dist/esm/chunks/{chunk.V24M62MC.js.map → chunk.L4UXWCVD.js.map} +1 -1
- package/dist/esm/chunks/chunk.LK6QHLW2.js +7 -0
- package/dist/esm/chunks/{chunk.LCR4YH3O.js.map → chunk.LK6QHLW2.js.map} +1 -1
- package/dist/esm/chunks/chunk.LYZXJYTW.js +7 -0
- package/dist/esm/chunks/{chunk.YAERJVPL.js.map → chunk.LYZXJYTW.js.map} +1 -1
- package/dist/esm/chunks/chunk.LZ2YQYJA.js +7 -0
- package/dist/esm/chunks/chunk.LZ2YQYJA.js.map +7 -0
- package/dist/esm/chunks/chunk.M7RYU4HQ.js +7 -0
- package/dist/esm/chunks/chunk.M7RYU4HQ.js.map +7 -0
- package/dist/esm/chunks/{chunk.HRRJIFC5.js → chunk.MHH26REX.js} +2 -2
- package/dist/esm/chunks/chunk.MROUV35N.js +7 -0
- package/dist/esm/chunks/{chunk.SIRXAA3O.js.map → chunk.MROUV35N.js.map} +1 -1
- package/dist/esm/chunks/chunk.MTSWCXTY.js +7 -0
- package/dist/esm/chunks/chunk.NBLL7VAA.js +7 -0
- package/dist/esm/chunks/chunk.NM7FJISF.js +7 -0
- package/dist/esm/chunks/chunk.NM7FJISF.js.map +7 -0
- package/dist/esm/chunks/chunk.NVR6KN2B.js +7 -0
- package/dist/esm/chunks/{chunk.BTXY3XMJ.js.map → chunk.NVR6KN2B.js.map} +1 -1
- package/dist/esm/chunks/chunk.O6F4U4VY.js +7 -0
- package/dist/esm/chunks/{chunk.5N4N6DL6.js.map → chunk.O6F4U4VY.js.map} +1 -1
- package/dist/esm/chunks/chunk.O6MGA3XK.js +7 -0
- package/dist/esm/chunks/chunk.ONII3BV3.js +7 -0
- package/dist/esm/chunks/chunk.ONII3BV3.js.map +7 -0
- package/dist/esm/chunks/chunk.OTUEB7SD.js +7 -0
- package/dist/esm/chunks/{chunk.JVLJH6PR.js.map → chunk.OTUEB7SD.js.map} +1 -1
- package/dist/esm/chunks/{chunk.PADPL4L3.js → chunk.OUIWXKO2.js} +2 -2
- package/dist/esm/chunks/chunk.PMSCH6VK.js +7 -0
- package/dist/esm/chunks/{chunk.DTLZOIUQ.js.map → chunk.PMSCH6VK.js.map} +1 -1
- package/dist/esm/chunks/chunk.PRJHBUU2.js +7 -0
- package/dist/esm/chunks/chunk.PRJHBUU2.js.map +7 -0
- package/dist/esm/chunks/chunk.Q2Q626DG.js +7 -0
- package/dist/esm/chunks/{chunk.AMLT6XJP.js.map → chunk.Q2Q626DG.js.map} +1 -1
- package/dist/esm/chunks/chunk.Q4YL47ZL.js +7 -0
- package/dist/esm/chunks/{chunk.BQ2X5SBP.js.map → chunk.Q4YL47ZL.js.map} +1 -1
- package/dist/esm/chunks/chunk.Q54DACHS.js +7 -0
- package/dist/esm/chunks/{chunk.SLJ6HDK7.js.map → chunk.Q54DACHS.js.map} +1 -1
- package/dist/esm/chunks/chunk.Q74SG6BV.js +7 -0
- package/dist/esm/chunks/{chunk.2MSL7CYM.js.map → chunk.Q74SG6BV.js.map} +1 -1
- package/dist/esm/chunks/chunk.QG5EYBS3.js +7 -0
- package/dist/esm/chunks/chunk.QG5EYBS3.js.map +7 -0
- package/dist/esm/chunks/chunk.QGMWM7IT.js +7 -0
- package/dist/esm/chunks/{chunk.QQRPV4RN.js.map → chunk.QGMWM7IT.js.map} +2 -2
- package/dist/esm/chunks/chunk.RCPUTZON.js +7 -0
- package/dist/esm/chunks/{chunk.VFKHRAWD.js.map → chunk.RCPUTZON.js.map} +1 -1
- package/dist/esm/chunks/chunk.SBKKBQDX.js +7 -0
- package/dist/esm/chunks/chunk.SBKKBQDX.js.map +7 -0
- package/dist/esm/chunks/chunk.SVVF632P.js +7 -0
- package/dist/esm/chunks/chunk.SVVF632P.js.map +7 -0
- package/dist/esm/chunks/chunk.T4J66YX5.js +7 -0
- package/dist/esm/chunks/chunk.T4J66YX5.js.map +7 -0
- package/dist/esm/chunks/chunk.THNCYT3E.js +7 -0
- package/dist/esm/chunks/{chunk.72JVXGHF.js.map → chunk.THNCYT3E.js.map} +2 -2
- package/dist/esm/chunks/chunk.TPXXHX5J.js +7 -0
- package/dist/esm/chunks/{chunk.JAWV5Y5T.js.map → chunk.TPXXHX5J.js.map} +2 -2
- package/dist/esm/chunks/chunk.TSUAFZGY.js +7 -0
- package/dist/esm/chunks/{chunk.IT7XPDAV.js.map → chunk.TSUAFZGY.js.map} +1 -1
- package/dist/esm/chunks/chunk.U42I3PGF.js +7 -0
- package/dist/esm/chunks/chunk.U42I3PGF.js.map +7 -0
- package/dist/esm/chunks/{chunk.GHR7T6U2.js → chunk.U7S4DJTU.js} +2 -2
- package/dist/esm/chunks/chunk.UOEJCU6R.js +7 -0
- package/dist/esm/chunks/{chunk.KV5IKYG2.js.map → chunk.UOEJCU6R.js.map} +1 -1
- package/dist/esm/chunks/{chunk.Z5RROENA.js → chunk.URKQICJD.js} +2 -2
- package/dist/esm/chunks/chunk.VG452D3L.js +7 -0
- package/dist/esm/chunks/{chunk.STB2FEUA.js.map → chunk.VG452D3L.js.map} +2 -2
- package/dist/esm/chunks/chunk.VQPSP4HV.js +7 -0
- package/dist/esm/chunks/{chunk.VO6YJCEU.js.map → chunk.VQPSP4HV.js.map} +1 -1
- package/dist/esm/chunks/chunk.W7BP2DDU.js +7 -0
- package/dist/esm/chunks/{chunk.WY3E33CW.js.map → chunk.W7BP2DDU.js.map} +2 -2
- package/dist/esm/chunks/chunk.WARVAVAW.js +7 -0
- package/dist/esm/chunks/{chunk.2ZU6LWHE.js.map → chunk.WARVAVAW.js.map} +1 -1
- package/dist/esm/chunks/chunk.WEHQUUXJ.js +7 -0
- package/dist/esm/chunks/{chunk.5PG6WIIX.js.map → chunk.WEHQUUXJ.js.map} +1 -1
- package/dist/esm/chunks/chunk.WJCZJ6XD.js +7 -0
- package/dist/esm/chunks/{chunk.IMLJD35R.js.map → chunk.WJCZJ6XD.js.map} +1 -1
- package/dist/esm/chunks/{chunk.QLOYOZN3.js → chunk.WMP2OLMG.js} +2 -2
- package/dist/esm/chunks/chunk.X3QZY7V4.js +7 -0
- package/dist/esm/chunks/{chunk.5RM65QPN.js.map → chunk.X3QZY7V4.js.map} +1 -1
- package/dist/esm/chunks/chunk.XQLQ73NG.js +7 -0
- package/dist/esm/chunks/{chunk.7V4BDSA5.js.map → chunk.XQLQ73NG.js.map} +1 -1
- package/dist/esm/chunks/chunk.Y4ZS3A6F.js +7 -0
- package/dist/esm/chunks/{chunk.QN5T26HH.js.map → chunk.Y4ZS3A6F.js.map} +2 -2
- package/dist/esm/chunks/chunk.YA5OQD37.js +7 -0
- package/dist/esm/chunks/{chunk.TBGMJQYJ.js.map → chunk.YA5OQD37.js.map} +1 -1
- package/dist/esm/chunks/chunk.YMSX4F3J.js +7 -0
- package/dist/esm/chunks/{chunk.FYVDTZLF.js.map → chunk.YMSX4F3J.js.map} +1 -1
- package/dist/esm/chunks/{chunk.KVCDAZ6B.js → chunk.YTBNAGLS.js} +2 -2
- package/dist/esm/chunks/chunk.Z37CZMMR.js +7 -0
- package/dist/esm/chunks/{chunk.HAKF2T2D.js.map → chunk.Z37CZMMR.js.map} +1 -1
- package/dist/esm/chunks/chunk.ZIRA4PYV.js +7 -0
- package/dist/esm/chunks/chunk.ZIRA4PYV.js.map +7 -0
- package/dist/esm/chunks/chunk.ZT7U7WOX.js +7 -0
- package/dist/esm/chunks/{chunk.HDG2GHKC.js.map → chunk.ZT7U7WOX.js.map} +1 -1
- package/dist/esm/chunks/{chunk.BBCZNGT3.js → chunk.ZX3CGET2.js} +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/delegates/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/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/radio/radio/index.js +7 -0
- package/dist/esm/radio/radio/index.js.map +7 -0
- package/dist/esm/radio/radio-group/index.js +7 -0
- package/dist/esm/radio/radio-group/index.js.map +7 -0
- 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-button/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/esm/app-bar/app-bar/app-bar-adapter.d.ts +30 -0
- package/esm/app-bar/app-bar/app-bar-adapter.js +71 -0
- package/esm/app-bar/{app-bar-constants.d.ts → app-bar/app-bar-constants.d.ts} +7 -11
- package/esm/app-bar/app-bar/app-bar-constants.js +32 -0
- package/esm/app-bar/{app-bar-foundation.d.ts → app-bar/app-bar-foundation.d.ts} +17 -16
- package/esm/app-bar/app-bar/app-bar-foundation.js +71 -0
- package/esm/app-bar/app-bar/app-bar.d.ts +66 -0
- package/esm/app-bar/app-bar/app-bar.js +107 -0
- package/esm/app-bar/app-bar/index.d.ts +10 -0
- package/esm/app-bar/app-bar/index.js +14 -0
- package/esm/app-bar/help-button/app-bar-help-button-adapter.d.ts +8 -1
- package/esm/app-bar/help-button/app-bar-help-button-adapter.js +22 -1
- package/esm/app-bar/help-button/app-bar-help-button-constants.d.ts +7 -0
- package/esm/app-bar/help-button/app-bar-help-button-constants.js +11 -1
- package/esm/app-bar/help-button/app-bar-help-button-foundation.d.ts +4 -0
- package/esm/app-bar/help-button/app-bar-help-button-foundation.js +16 -0
- package/esm/app-bar/help-button/app-bar-help-button.d.ts +13 -2
- package/esm/app-bar/help-button/app-bar-help-button.js +26 -5
- package/esm/app-bar/index.d.ts +0 -4
- package/esm/app-bar/index.js +0 -8
- package/esm/app-bar/menu-button/app-bar-menu-button-constants.d.ts +7 -0
- package/esm/app-bar/menu-button/app-bar-menu-button-constants.js +9 -1
- package/esm/app-bar/menu-button/app-bar-menu-button.d.ts +19 -2
- package/esm/app-bar/menu-button/app-bar-menu-button.js +57 -8
- package/esm/app-bar/notification-button/app-bar-notification-button-adapter.d.ts +6 -2
- package/esm/app-bar/notification-button/app-bar-notification-button-adapter.js +17 -1
- package/esm/app-bar/notification-button/app-bar-notification-button-constants.d.ts +1 -0
- package/esm/app-bar/notification-button/app-bar-notification-button-constants.js +3 -1
- package/esm/app-bar/notification-button/app-bar-notification-button-foundation.d.ts +4 -4
- package/esm/app-bar/notification-button/app-bar-notification-button-foundation.js +9 -11
- package/esm/app-bar/notification-button/app-bar-notification-button.d.ts +17 -4
- package/esm/app-bar/notification-button/app-bar-notification-button.js +20 -5
- package/esm/app-bar/profile-button/app-bar-profile-button-adapter.d.ts +7 -1
- package/esm/app-bar/profile-button/app-bar-profile-button-adapter.js +26 -3
- package/esm/app-bar/profile-button/app-bar-profile-button-constants.d.ts +1 -3
- package/esm/app-bar/profile-button/app-bar-profile-button-constants.js +2 -4
- package/esm/app-bar/profile-button/app-bar-profile-button-foundation.d.ts +5 -2
- package/esm/app-bar/profile-button/app-bar-profile-button-foundation.js +20 -22
- package/esm/app-bar/profile-button/app-bar-profile-button.d.ts +31 -2
- package/esm/app-bar/profile-button/app-bar-profile-button.js +33 -6
- package/esm/app-bar/search/app-bar-search-adapter.d.ts +8 -43
- package/esm/app-bar/search/app-bar-search-adapter.js +23 -53
- package/esm/app-bar/search/app-bar-search-constants.d.ts +0 -15
- package/esm/app-bar/search/app-bar-search-constants.js +3 -20
- package/esm/app-bar/search/app-bar-search-foundation.d.ts +3 -37
- package/esm/app-bar/search/app-bar-search-foundation.js +27 -88
- package/esm/app-bar/search/app-bar-search.d.ts +1 -21
- package/esm/app-bar/search/app-bar-search.js +13 -39
- package/esm/button/base/base-button-adapter.d.ts +4 -10
- package/esm/button/base/base-button-adapter.js +18 -21
- package/esm/button/base/base-button-constants.d.ts +3 -0
- package/esm/button/base/base-button-foundation.d.ts +6 -7
- package/esm/button/base/base-button-foundation.js +18 -14
- package/esm/button/base/base-button.d.ts +10 -6
- package/esm/button/base/base-button.js +11 -2
- package/esm/button/button-constants.d.ts +2 -0
- package/esm/button/button-constants.js +2 -1
- package/esm/button/button-foundation.d.ts +4 -0
- package/esm/button/button-foundation.js +10 -0
- package/esm/button/button.d.ts +4 -0
- package/esm/button/button.js +11 -5
- package/esm/checkbox/checkbox.js +1 -1
- package/esm/circular-progress/circular-progress-adapter.d.ts +2 -2
- package/esm/circular-progress/circular-progress-adapter.js +15 -6
- package/esm/circular-progress/circular-progress-constants.d.ts +1 -2
- package/esm/circular-progress/circular-progress-constants.js +1 -2
- package/esm/circular-progress/circular-progress-foundation.d.ts +0 -1
- package/esm/circular-progress/circular-progress-foundation.js +3 -5
- package/esm/circular-progress/circular-progress.d.ts +1 -2
- package/esm/circular-progress/circular-progress.js +6 -11
- package/esm/constants.d.ts +23 -2
- package/esm/constants.js +11 -0
- package/esm/core/base/base-adapter.d.ts +4 -0
- package/esm/core/base/base-adapter.js +7 -1
- package/esm/core/base/base-component.d.ts +4 -0
- package/esm/core/base/base-element-internals-component.d.ts +41 -0
- package/esm/core/base/base-element-internals-component.js +47 -0
- package/esm/core/base/base-focusable-component.d.ts +11 -14
- package/esm/core/base/base-focusable-component.js +14 -15
- package/esm/core/base/base-form-associated-component.d.ts +122 -0
- package/esm/core/base/base-form-associated-component.js +71 -0
- package/esm/core/base/base-form-component.d.ts +0 -10
- package/esm/core/base/base-form-component.js +0 -6
- package/esm/core/base/base-label-aware-component.d.ts +33 -0
- package/esm/core/base/base-label-aware-component.js +17 -0
- package/esm/core/base/base-nullable-form-component.d.ts +0 -10
- package/esm/core/base/base-nullable-form-component.js +0 -6
- package/esm/core/base/index.d.ts +4 -0
- package/esm/core/base/index.js +4 -0
- package/esm/core/utils/a11y-utils.d.ts +156 -0
- package/esm/core/utils/a11y-utils.js +223 -0
- package/esm/core/utils/event-utils.d.ts +1 -0
- package/esm/core/utils/event-utils.js +3 -0
- package/esm/core/utils/feature-detection.d.ts +8 -0
- package/esm/core/utils/feature-detection.js +12 -0
- package/esm/core/utils/form-utils.d.ts +24 -0
- package/esm/core/utils/form-utils.js +6 -0
- package/esm/core/utils/index.d.ts +1 -0
- package/esm/core/utils/index.js +1 -0
- package/esm/core/utils/mixin-utils.d.ts +20 -0
- package/esm/core/utils/mixin-utils.js +15 -0
- package/esm/core/utils/reflect-utils.d.ts +1 -1
- package/esm/core/utils/reflect-utils.js +2 -2
- package/esm/core/utils/utils.d.ts +1 -1
- package/esm/date-picker/base/base-date-picker.d.ts +1 -1
- package/esm/date-picker/base/base-date-picker.js +4 -3
- package/esm/floating-action-button/floating-action-button-adapter.d.ts +20 -0
- package/esm/floating-action-button/floating-action-button-adapter.js +49 -0
- package/esm/floating-action-button/floating-action-button-component-delegate.d.ts +19 -3
- package/esm/floating-action-button/floating-action-button-component-delegate.js +62 -14
- package/esm/floating-action-button/floating-action-button-constants.d.ts +19 -14
- package/esm/floating-action-button/floating-action-button-constants.js +15 -15
- package/esm/floating-action-button/floating-action-button-foundation.d.ts +27 -0
- package/esm/floating-action-button/floating-action-button-foundation.js +48 -0
- package/esm/floating-action-button/floating-action-button.d.ts +86 -25
- package/esm/floating-action-button/floating-action-button.js +117 -104
- package/esm/floating-action-button/index.d.ts +3 -1
- package/esm/floating-action-button/index.js +5 -3
- package/esm/focus-indicator/focus-indicator.js +2 -2
- package/esm/icon-button/icon-button-constants.d.ts +3 -3
- package/esm/icon-button/icon-button.d.ts +51 -0
- package/esm/icon-button/icon-button.js +54 -5
- package/esm/icon-button/index.d.ts +3 -1
- package/esm/icon-button/index.js +3 -1
- package/esm/index.d.ts +4 -4
- package/esm/index.js +31 -30
- package/esm/label/label-adapter.d.ts +2 -0
- package/esm/label/label-adapter.js +5 -2
- package/esm/label/label-aware.js +2 -1
- package/esm/label/label-constants.d.ts +6 -2
- package/esm/label/label-constants.js +12 -5
- package/esm/label/label-foundation.d.ts +16 -0
- package/esm/label/label-foundation.js +73 -8
- package/esm/label/label.d.ts +8 -0
- package/esm/label/label.js +21 -3
- package/esm/linear-progress/linear-progress-adapter.d.ts +2 -2
- package/esm/linear-progress/linear-progress-adapter.js +14 -6
- package/esm/linear-progress/linear-progress-constants.d.ts +0 -1
- package/esm/linear-progress/linear-progress-constants.js +1 -2
- package/esm/linear-progress/linear-progress-foundation.d.ts +1 -1
- package/esm/linear-progress/linear-progress-foundation.js +2 -2
- package/esm/linear-progress/linear-progress.d.ts +1 -1
- package/esm/linear-progress/linear-progress.js +5 -7
- package/esm/list/list-item/list-item.js +2 -2
- package/esm/menu/menu-adapter.d.ts +3 -3
- package/esm/menu/menu-constants.d.ts +1 -1
- package/esm/menu/menu-constants.js +1 -1
- package/esm/menu/menu-foundation.d.ts +1 -0
- package/esm/menu/menu-foundation.js +11 -4
- package/esm/paginator/paginator-constants.d.ts +9 -0
- package/esm/paginator/paginator-foundation.d.ts +5 -2
- package/esm/paginator/paginator-foundation.js +29 -8
- package/esm/paginator/paginator.d.ts +3 -1
- package/esm/paginator/paginator.js +3 -0
- package/esm/profile-card/profile-card-adapter.d.ts +5 -8
- package/esm/profile-card/profile-card-adapter.js +5 -16
- package/esm/profile-card/profile-card-constants.js +3 -3
- package/esm/profile-card/profile-card-foundation.d.ts +4 -1
- package/esm/profile-card/profile-card-foundation.js +24 -13
- package/esm/profile-card/profile-card.d.ts +1 -2
- package/esm/profile-card/profile-card.js +11 -8
- package/esm/radio/core/radio-group-manager.d.ts +83 -0
- package/esm/radio/core/radio-group-manager.js +201 -0
- package/esm/radio/index.d.ts +1 -2
- package/esm/radio/index.js +1 -6
- package/esm/radio/radio/index.d.ts +10 -0
- package/esm/radio/radio/index.js +14 -0
- package/esm/radio/radio/radio-adapter.d.ts +41 -0
- package/esm/radio/radio/radio-adapter.js +81 -0
- package/esm/radio/radio/radio-component-delegate.d.ts +5 -0
- package/esm/radio/radio/radio-component-delegate.js +6 -0
- package/esm/radio/radio/radio-constants.d.ts +39 -0
- package/esm/radio/radio/radio-constants.js +53 -0
- package/esm/radio/radio/radio-foundation.d.ts +70 -0
- package/esm/radio/radio/radio-foundation.js +199 -0
- package/esm/radio/radio/radio.d.ts +110 -0
- package/esm/radio/radio/radio.js +202 -0
- package/esm/radio/radio-group/index.d.ts +10 -0
- package/esm/radio/radio-group/index.js +14 -0
- package/esm/radio/radio-group/radio-group-adapter.d.ts +18 -0
- package/esm/radio/radio-group/radio-group-adapter.js +28 -0
- package/esm/radio/radio-group/radio-group-constants.d.ts +13 -0
- package/esm/radio/radio-group/radio-group-constants.js +19 -0
- package/esm/radio/radio-group/radio-group-foundation.d.ts +20 -0
- package/esm/radio/radio-group/radio-group-foundation.js +32 -0
- package/esm/radio/radio-group/radio-group.d.ts +44 -0
- package/esm/radio/radio-group/radio-group.js +81 -0
- package/esm/slider/slider.js +1 -1
- package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
- package/esm/switch/switch.js +1 -1
- package/esm/tabs/tab/tab.js +1 -1
- package/esm/toolbar/toolbar.js +1 -1
- package/package.json +1 -2
- package/styles/app-bar/app-bar/_configuration.scss +16 -0
- package/styles/app-bar/app-bar/_core.scss +99 -0
- package/styles/app-bar/app-bar/_token-utils.scss +30 -0
- package/styles/app-bar/app-bar/app-bar.scss +156 -0
- package/styles/app-bar/app-bar/index.scss +8 -0
- package/styles/app-bar/search/_configuration.scss +10 -0
- package/styles/app-bar/search/_core.scss +73 -0
- package/styles/app-bar/search/_token-utils.scss +30 -0
- package/styles/app-bar/search/app-bar-search.scss +51 -4
- package/styles/app-bar/search/index.scss +8 -0
- package/styles/button/button.scss +27 -5
- package/styles/circular-progress/_core.scss +2 -0
- package/styles/circular-progress/circular-progress.scss +2 -2
- package/styles/core/styles/elevation/index.scss +10 -0
- package/styles/core/styles/spacing/index.scss +1 -1
- package/styles/core/styles/theme/index.scss +2 -0
- package/styles/core/styles/tokens/app-bar/app-bar/_tokens.scss +35 -0
- package/styles/core/styles/tokens/app-bar/search/_tokens.scss +35 -0
- package/styles/core/styles/tokens/circular-progress/_tokens.scss +2 -1
- package/styles/core/styles/tokens/floating-action-button/_tokens.scss +66 -0
- package/styles/core/styles/tokens/icon-button/_tokens.scss +1 -1
- package/styles/core/styles/tokens/profile-card/_tokens.scss +19 -0
- package/styles/core/styles/tokens/radio/_tokens.scss +66 -0
- package/styles/core/styles/tokens/shape/_tokens.scss +6 -0
- package/styles/core/styles/tokens/spacing/_tokens.scss +2 -0
- package/styles/core/styles/tokens/theme/_token-utils.scss +2 -2
- package/styles/core/styles/tokens/theme/_tokens.brand.scss +22 -0
- package/styles/core/styles/tokens/theme/_tokens.scss +3 -0
- package/styles/floating-action-button/_configuration.scss +16 -0
- package/styles/floating-action-button/_core.scss +103 -0
- package/styles/floating-action-button/_token-utils.scss +30 -0
- package/styles/floating-action-button/floating-action-button.scss +129 -0
- package/styles/floating-action-button/index.scss +8 -0
- package/styles/focus-indicator/focus-indicator.scss +11 -28
- package/styles/forge.scss +0 -1
- package/styles/icon-button/_core.scss +0 -4
- package/styles/icon-button/icon-button.scss +45 -11
- package/styles/label/_core.scss +2 -5
- package/styles/label/label.scss +1 -5
- package/styles/list/list-item/list-item.scss +2 -0
- package/styles/profile-card/_configuration.scss +10 -0
- package/styles/profile-card/_core.scss +58 -0
- package/styles/profile-card/_token-utils.scss +30 -0
- package/styles/profile-card/index.scss +8 -0
- package/styles/profile-card/profile-card.scss +55 -6
- package/styles/radio/index.scss +6 -0
- package/styles/radio/radio/_configuration.scss +10 -0
- package/styles/radio/radio/_core.scss +123 -0
- package/styles/radio/radio/_token-utils.scss +30 -0
- package/styles/radio/radio/index.scss +8 -0
- package/styles/radio/radio/radio.scss +102 -0
- package/styles/switch/_core.scss +6 -0
- package/styles/theme/_theme-dark.scss +0 -3
- package/styles/toolbar/_mixins.scss +0 -1
- package/dist/esm/chunks/chunk.2MSL7CYM.js +0 -7
- package/dist/esm/chunks/chunk.2ZU6LWHE.js +0 -7
- package/dist/esm/chunks/chunk.36C6SIPW.js +0 -7
- package/dist/esm/chunks/chunk.36F2GVWS.js +0 -7
- package/dist/esm/chunks/chunk.36F2GVWS.js.map +0 -7
- package/dist/esm/chunks/chunk.3HCYRDRI.js +0 -7
- package/dist/esm/chunks/chunk.3R4BUIQP.js +0 -7
- package/dist/esm/chunks/chunk.3ZPSN2QG.js +0 -7
- package/dist/esm/chunks/chunk.4SPEX2GJ.js +0 -7
- package/dist/esm/chunks/chunk.4SPEX2GJ.js.map +0 -7
- package/dist/esm/chunks/chunk.4YFJVHXN.js +0 -7
- package/dist/esm/chunks/chunk.4YFJVHXN.js.map +0 -7
- package/dist/esm/chunks/chunk.5A2PA7TL.js +0 -7
- package/dist/esm/chunks/chunk.5A2PA7TL.js.map +0 -7
- package/dist/esm/chunks/chunk.5CSXPRL3.js +0 -7
- package/dist/esm/chunks/chunk.5CSXPRL3.js.map +0 -7
- package/dist/esm/chunks/chunk.5LVZVQXB.js +0 -7
- package/dist/esm/chunks/chunk.5LVZVQXB.js.map +0 -7
- package/dist/esm/chunks/chunk.5N4N6DL6.js +0 -7
- package/dist/esm/chunks/chunk.5PG6WIIX.js +0 -7
- package/dist/esm/chunks/chunk.5RM65QPN.js +0 -7
- package/dist/esm/chunks/chunk.5WMYF27O.js +0 -7
- package/dist/esm/chunks/chunk.6M27ERWW.js +0 -12
- package/dist/esm/chunks/chunk.6M27ERWW.js.map +0 -7
- package/dist/esm/chunks/chunk.6NTYTHAL.js +0 -7
- package/dist/esm/chunks/chunk.6NTYTHAL.js.map +0 -7
- package/dist/esm/chunks/chunk.6ZNBFKNP.js +0 -7
- package/dist/esm/chunks/chunk.6ZNBFKNP.js.map +0 -7
- package/dist/esm/chunks/chunk.72JVXGHF.js +0 -7
- package/dist/esm/chunks/chunk.7V4BDSA5.js +0 -7
- package/dist/esm/chunks/chunk.7VMJLHQY.js +0 -7
- package/dist/esm/chunks/chunk.7ZROQ6D3.js +0 -7
- package/dist/esm/chunks/chunk.AMLT6XJP.js +0 -7
- package/dist/esm/chunks/chunk.AMZZKEAE.js +0 -7
- package/dist/esm/chunks/chunk.APPY5AYL.js +0 -7
- package/dist/esm/chunks/chunk.APPY5AYL.js.map +0 -7
- package/dist/esm/chunks/chunk.ARQMMZJL.js +0 -7
- package/dist/esm/chunks/chunk.AUBOJZQ7.js +0 -7
- package/dist/esm/chunks/chunk.AUCBR6CC.js +0 -7
- package/dist/esm/chunks/chunk.AUCBR6CC.js.map +0 -7
- package/dist/esm/chunks/chunk.BQ2X5SBP.js +0 -7
- package/dist/esm/chunks/chunk.BTXY3XMJ.js +0 -7
- package/dist/esm/chunks/chunk.DTLZOIUQ.js +0 -7
- package/dist/esm/chunks/chunk.EJX6RI4I.js +0 -7
- package/dist/esm/chunks/chunk.EJX6RI4I.js.map +0 -7
- package/dist/esm/chunks/chunk.EWK76SPH.js +0 -7
- package/dist/esm/chunks/chunk.EWK76SPH.js.map +0 -7
- package/dist/esm/chunks/chunk.FAXYCG55.js +0 -7
- package/dist/esm/chunks/chunk.FAXYCG55.js.map +0 -7
- package/dist/esm/chunks/chunk.FFHSUJFM.js +0 -7
- package/dist/esm/chunks/chunk.FFHSUJFM.js.map +0 -7
- package/dist/esm/chunks/chunk.FYVDTZLF.js +0 -7
- package/dist/esm/chunks/chunk.G7SMCLHQ.js +0 -7
- package/dist/esm/chunks/chunk.HAKF2T2D.js +0 -7
- package/dist/esm/chunks/chunk.HDG2GHKC.js +0 -7
- package/dist/esm/chunks/chunk.HOLCNJXC.js +0 -7
- package/dist/esm/chunks/chunk.HSI7B43D.js +0 -7
- package/dist/esm/chunks/chunk.HSI7B43D.js.map +0 -7
- package/dist/esm/chunks/chunk.IAWYYNUU.js +0 -7
- package/dist/esm/chunks/chunk.IDMDBMBR.js +0 -7
- package/dist/esm/chunks/chunk.IHAHJPMB.js +0 -7
- package/dist/esm/chunks/chunk.IISWKFCX.js +0 -7
- package/dist/esm/chunks/chunk.IMLJD35R.js +0 -7
- package/dist/esm/chunks/chunk.IT7XPDAV.js +0 -7
- package/dist/esm/chunks/chunk.JAWV5Y5T.js +0 -7
- package/dist/esm/chunks/chunk.JVLJH6PR.js +0 -7
- package/dist/esm/chunks/chunk.KPJWP77R.js +0 -7
- package/dist/esm/chunks/chunk.KV5IKYG2.js +0 -7
- package/dist/esm/chunks/chunk.LCR4YH3O.js +0 -7
- package/dist/esm/chunks/chunk.LOG6GQOK.js +0 -7
- package/dist/esm/chunks/chunk.LUIKMPQR.js +0 -7
- package/dist/esm/chunks/chunk.LUIKMPQR.js.map +0 -7
- package/dist/esm/chunks/chunk.LUNKNRRH.js +0 -7
- package/dist/esm/chunks/chunk.LUNKNRRH.js.map +0 -7
- package/dist/esm/chunks/chunk.MWYQRG5W.js +0 -7
- package/dist/esm/chunks/chunk.NUMKGUCK.js +0 -7
- package/dist/esm/chunks/chunk.O6V3YNMO.js +0 -7
- package/dist/esm/chunks/chunk.O6V3YNMO.js.map +0 -7
- package/dist/esm/chunks/chunk.OWZREAT6.js +0 -15
- package/dist/esm/chunks/chunk.OWZREAT6.js.map +0 -7
- package/dist/esm/chunks/chunk.PMYQY3D3.js +0 -7
- package/dist/esm/chunks/chunk.PMYQY3D3.js.map +0 -7
- package/dist/esm/chunks/chunk.PYR2OCCH.js +0 -7
- package/dist/esm/chunks/chunk.QJCNMYD3.js +0 -7
- package/dist/esm/chunks/chunk.QLCVRJ3Q.js +0 -7
- package/dist/esm/chunks/chunk.QN5T26HH.js +0 -7
- package/dist/esm/chunks/chunk.QQRPV4RN.js +0 -7
- package/dist/esm/chunks/chunk.R6LQBI42.js +0 -177
- package/dist/esm/chunks/chunk.RES7WDKH.js +0 -7
- package/dist/esm/chunks/chunk.RP674CRC.js +0 -7
- package/dist/esm/chunks/chunk.S5QL4SPT.js +0 -7
- package/dist/esm/chunks/chunk.S5QL4SPT.js.map +0 -7
- package/dist/esm/chunks/chunk.SIRXAA3O.js +0 -7
- package/dist/esm/chunks/chunk.SLJ6HDK7.js +0 -7
- package/dist/esm/chunks/chunk.STB2FEUA.js +0 -7
- package/dist/esm/chunks/chunk.TBGMJQYJ.js +0 -7
- package/dist/esm/chunks/chunk.TU74SREL.js +0 -7
- package/dist/esm/chunks/chunk.URJQNB3S.js +0 -7
- package/dist/esm/chunks/chunk.V24M62MC.js +0 -7
- package/dist/esm/chunks/chunk.VFKHRAWD.js +0 -7
- package/dist/esm/chunks/chunk.VO6YJCEU.js +0 -7
- package/dist/esm/chunks/chunk.WMVYRDUJ.js +0 -7
- package/dist/esm/chunks/chunk.WMVYRDUJ.js.map +0 -7
- package/dist/esm/chunks/chunk.WY3E33CW.js +0 -7
- package/dist/esm/chunks/chunk.XLL7L2UB.js +0 -7
- package/dist/esm/chunks/chunk.XLL7L2UB.js.map +0 -7
- package/dist/esm/chunks/chunk.XNFS7YIB.js +0 -7
- package/dist/esm/chunks/chunk.XYAZVLPR.js +0 -7
- package/dist/esm/chunks/chunk.YAERJVPL.js +0 -7
- package/dist/esm/chunks/chunk.YBZK6LJZ.js +0 -7
- package/dist/esm/chunks/chunk.YKIBREM5.js +0 -7
- package/dist/esm/chunks/chunk.YWAUEUAH.js +0 -7
- package/dist/esm/chunks/chunk.YWAUEUAH.js.map +0 -7
- package/dist/esm/chunks/chunk.Z5ZLKM7W.js +0 -7
- package/dist/esm/chunks/chunk.Z5ZLKM7W.js.map +0 -7
- package/dist/esm/chunks/chunk.ZGRQDDHO.js +0 -7
- package/dist/esm/chunks/chunk.ZKM667OT.js +0 -7
- package/dist/esm/chunks/chunk.ZKM667OT.js.map +0 -7
- package/dist/floating-action-button/forge-floating-action-button.css +0 -6
- package/esm/app-bar/app-bar-adapter.d.ts +0 -43
- package/esm/app-bar/app-bar-adapter.js +0 -60
- package/esm/app-bar/app-bar-constants.js +0 -37
- package/esm/app-bar/app-bar-foundation.js +0 -70
- package/esm/app-bar/app-bar.d.ts +0 -38
- package/esm/app-bar/app-bar.js +0 -75
- package/esm/radio/radio-adapter.d.ts +0 -71
- package/esm/radio/radio-adapter.js +0 -260
- package/esm/radio/radio-constants.d.ts +0 -30
- package/esm/radio/radio-constants.js +0 -36
- package/esm/radio/radio-foundation.d.ts +0 -31
- package/esm/radio/radio-foundation.js +0 -80
- package/esm/radio/radio.d.ts +0 -33
- package/esm/radio/radio.js +0 -75
- package/styles/app-bar/_mixins.scss +0 -254
- package/styles/app-bar/_variables.scss +0 -34
- package/styles/app-bar/app-bar.scss +0 -22
- package/styles/app-bar/search/_mixins.scss +0 -238
- package/styles/app-bar/search/_variables.scss +0 -18
- package/styles/floating-action-button/_extended-fab-theme.scss +0 -238
- package/styles/floating-action-button/_fab-custom-properties.scss +0 -29
- package/styles/floating-action-button/_fab-theme.scss +0 -541
- package/styles/floating-action-button/_fab.mixins.scss +0 -351
- package/styles/floating-action-button/forge-floating-action-button.scss +0 -16
- package/styles/profile-card/_mixins.scss +0 -83
- package/styles/radio/_mixins.scss +0 -309
- package/styles/radio/_radio-theme.scss +0 -314
- package/styles/radio/radio.scss +0 -19
- /package/dist/esm/{chunks/chunk.U6FJJGO3.js.map → app-bar/app-bar/index.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.MKJCHUJH.js.map → chunk.42YDA5FH.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.G73KL7P2.js.map → chunk.5EGEZ4IY.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.W2LN45WY.js.map → chunk.AR6YUJUH.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.KPJWP77R.js.map → chunk.BAQYPAUM.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.BB4UF5RX.js.map → chunk.BC7WB5RG.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.KV67JXOC.js.map → chunk.EMCY55MX.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.FXIWCHLW.js.map → chunk.I7X25KEB.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.RP674CRC.js.map → chunk.IHIKIZIT.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.ZRSDTCSD.js.map → chunk.JHELTQKA.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.GNDKQPDV.js.map → chunk.JPI4XCQL.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.FLWNOP42.js.map → chunk.KDJZN6EW.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.675V42JS.js.map → chunk.KWBYYSH3.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.XEFWZKHQ.js.map → chunk.L45HXBDS.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.HRRJIFC5.js.map → chunk.MHH26REX.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.YKIBREM5.js.map → chunk.MTSWCXTY.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.YBZK6LJZ.js.map → chunk.NBLL7VAA.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.XYAZVLPR.js.map → chunk.O6MGA3XK.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.PADPL4L3.js.map → chunk.OUIWXKO2.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.GHR7T6U2.js.map → chunk.U7S4DJTU.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.Z5RROENA.js.map → chunk.URKQICJD.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.QLOYOZN3.js.map → chunk.WMP2OLMG.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.KVCDAZ6B.js.map → chunk.YTBNAGLS.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.BBCZNGT3.js.map → chunk.ZX3CGET2.js.map} +0 -0
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { getValidationMessage, internals, isFocusable, setDefaultAria } from '../../constants';
|
|
7
|
+
import { task } from '../../core/utils/event-utils';
|
|
8
|
+
import { RADIO_CONSTANTS, tryCheck } from '../radio';
|
|
9
|
+
/**
|
|
10
|
+
* A class for coordinating the states of radio components within a radio group.
|
|
11
|
+
*/
|
|
12
|
+
export class RadioGroupManager {
|
|
13
|
+
/**
|
|
14
|
+
* Returns an array of IRadioComponents that belong to the same radio group as the given
|
|
15
|
+
* IRadioComponent.
|
|
16
|
+
* If the given IRadioComponent does not have an associated form element, it searches the root
|
|
17
|
+
* node for all IRadioComponents with the same name.
|
|
18
|
+
* If the given IRadioComponent has an associated form element, it gets all RadioComponents with
|
|
19
|
+
* the same name from the form element.
|
|
20
|
+
*
|
|
21
|
+
* @param el - The IRadioComponent to get the radio group for.
|
|
22
|
+
* @returns An array of IRadioComponents that belong to the same radio group as the given
|
|
23
|
+
* IRadioComponent.
|
|
24
|
+
*/
|
|
25
|
+
static getRadioGroup(el) {
|
|
26
|
+
// If there's no name, it's not part of a radio group
|
|
27
|
+
if (!el.name) {
|
|
28
|
+
return [el];
|
|
29
|
+
}
|
|
30
|
+
// If there's no associated form element search the root node
|
|
31
|
+
if (!el.form) {
|
|
32
|
+
const root = el.getRootNode();
|
|
33
|
+
const namedRadios = root.querySelectorAll(`${RADIO_CONSTANTS.elementName}[name=${el.name}]`);
|
|
34
|
+
return Array.from(namedRadios).filter(radio => !radio.form);
|
|
35
|
+
}
|
|
36
|
+
// When there is a form element, get all RadioComponents with the same name
|
|
37
|
+
const formRadios = el.form.elements.namedItem(el.name);
|
|
38
|
+
if (formRadios && Object.prototype.isPrototypeOf.call(RadioNodeList.prototype, formRadios)) {
|
|
39
|
+
return Array.from(formRadios)
|
|
40
|
+
.filter((radio) => radio.matches(RADIO_CONSTANTS.elementName));
|
|
41
|
+
}
|
|
42
|
+
return [el];
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Sets the validity of a radio group.
|
|
46
|
+
* If no radio is selected in the group and selection is required, it sets the validity to
|
|
47
|
+
* `valueMissing`.
|
|
48
|
+
*
|
|
49
|
+
* @param el A radio component within the group to set the validity for.
|
|
50
|
+
*/
|
|
51
|
+
static setRadioGroupValidity(el) {
|
|
52
|
+
const group = RadioGroupManager.getRadioGroup(el);
|
|
53
|
+
const invalid = RadioGroupManager._selectionIsRequired(group);
|
|
54
|
+
group.forEach(radio => {
|
|
55
|
+
const validationMessage = radio[getValidationMessage]({
|
|
56
|
+
required: invalid,
|
|
57
|
+
checked: radio.checked
|
|
58
|
+
});
|
|
59
|
+
radio[internals].setValidity({ valueMissing: invalid }, validationMessage);
|
|
60
|
+
radio[setDefaultAria]({ 'ariaInvalid': invalid ? 'true' : 'false' }, { overwrite: true });
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Sets the selected radio in a radio group.
|
|
65
|
+
*
|
|
66
|
+
* @param el - The radio component to set as selected.
|
|
67
|
+
*/
|
|
68
|
+
static setSelectedRadioInGroup(el) {
|
|
69
|
+
const group = RadioGroupManager.getRadioGroup(el);
|
|
70
|
+
group.forEach(radio => radio.checked = radio === el);
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Focuses the next radio in the radio group.
|
|
74
|
+
*
|
|
75
|
+
* @param el - The currently focused radio component.
|
|
76
|
+
*/
|
|
77
|
+
static focusNextRadioInGroup(el) {
|
|
78
|
+
RadioGroupManager._updateRadioGroupFocus(el, 1);
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Focuses the previous radio in the radio group.
|
|
82
|
+
*
|
|
83
|
+
* @param el - The currently focused radio component.
|
|
84
|
+
*/
|
|
85
|
+
static focusPreviousRadioInGroup(el) {
|
|
86
|
+
RadioGroupManager._updateRadioGroupFocus(el, -1);
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Adds or removes each radio in a radio group from the tab order. When no radio is selected and
|
|
90
|
+
* focus is not in the group, all radios are added to the tab order. Otherwise only the selected
|
|
91
|
+
* radio is added to the tab order.
|
|
92
|
+
*
|
|
93
|
+
* @param el - The focused or blurred radio component.
|
|
94
|
+
* @param event - The event type (`'focus'` or `'blur'`).
|
|
95
|
+
*/
|
|
96
|
+
static setUncheckedRadioGroupFocus(el, event) {
|
|
97
|
+
const group = RadioGroupManager.getRadioGroup(el);
|
|
98
|
+
if (event === 'focus') {
|
|
99
|
+
group.forEach(radio => radio[isFocusable] = radio === el);
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
if (!el.checked || group[0] === el || group[group.length - 1] === el) {
|
|
103
|
+
group.forEach(radio => radio[isFocusable] = true);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Resets a radio group to . This will run once each radio has a chance to
|
|
108
|
+
* update.
|
|
109
|
+
*
|
|
110
|
+
* @param el - The radio component requesting the reset.
|
|
111
|
+
* @returns A promise that resolves when the reset logic is complete.
|
|
112
|
+
*/
|
|
113
|
+
static async requestRadioGroupReset(el) {
|
|
114
|
+
this._radiosRequestingReset.add(el);
|
|
115
|
+
// Wait for any other radios in the group to request a reset. The reset logic should only run
|
|
116
|
+
// once per group
|
|
117
|
+
await task();
|
|
118
|
+
// If the radio has been removed from the set, its group has already been reset and we can
|
|
119
|
+
// skip it
|
|
120
|
+
if (!this._radiosRequestingReset.has(el)) {
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
const group = RadioGroupManager.getRadioGroup(el);
|
|
124
|
+
let checkedRadio = null;
|
|
125
|
+
// The first loop removes each radio in the group from the set and stores the radio that should
|
|
126
|
+
// be checked, if any
|
|
127
|
+
group.forEach(radio => {
|
|
128
|
+
this._radiosRequestingReset.delete(radio);
|
|
129
|
+
if (radio.defaultChecked) {
|
|
130
|
+
checkedRadio = radio;
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
// The second loop sets the checked radio and sets each radio to be focusable if there is a no
|
|
134
|
+
// selection, or only the selected radio if there is
|
|
135
|
+
group.forEach(radio => {
|
|
136
|
+
radio.checked = radio === checkedRadio;
|
|
137
|
+
radio[isFocusable] = !checkedRadio || radio.checked;
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Updates the focus and selection of a radio group based on the currently focused radio and the
|
|
142
|
+
* direction of the focus change.
|
|
143
|
+
*
|
|
144
|
+
* @param el - The currently focused radio element.
|
|
145
|
+
* @param increment - The direction of the focus change. 1 for forward, -1 for backward.
|
|
146
|
+
*/
|
|
147
|
+
static _updateRadioGroupFocus(el, increment) {
|
|
148
|
+
const group = RadioGroupManager.getRadioGroup(el);
|
|
149
|
+
// Get the next enabled and writable radio in the group
|
|
150
|
+
let index = group.indexOf(el);
|
|
151
|
+
let nextRadio = group[index];
|
|
152
|
+
do {
|
|
153
|
+
index += increment;
|
|
154
|
+
if (index < 0) {
|
|
155
|
+
index = group.length - 1;
|
|
156
|
+
}
|
|
157
|
+
else if (index >= group.length) {
|
|
158
|
+
index = 0;
|
|
159
|
+
}
|
|
160
|
+
nextRadio = group[index];
|
|
161
|
+
if (nextRadio === el) {
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
} while (nextRadio.disabled || nextRadio.readonly);
|
|
165
|
+
// Attempt to check the next radio, return if the event is cancelled
|
|
166
|
+
if (!nextRadio[tryCheck]()) {
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
// Add the next radio to the tab order, and focus it
|
|
170
|
+
nextRadio[isFocusable] = true;
|
|
171
|
+
nextRadio.focus();
|
|
172
|
+
// Remove every other radio from the tab order and deselect it
|
|
173
|
+
group.forEach(radio => {
|
|
174
|
+
if (radio === nextRadio) {
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
177
|
+
radio[isFocusable] = false;
|
|
178
|
+
radio.checked = false;
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Determines if a radio selection is required within a group.
|
|
183
|
+
*
|
|
184
|
+
* @param group - The radio components within a group.
|
|
185
|
+
* @returns True if the radio selection is required, false otherwise.
|
|
186
|
+
*/
|
|
187
|
+
static _selectionIsRequired(group) {
|
|
188
|
+
let required = false;
|
|
189
|
+
let selection = false;
|
|
190
|
+
group.forEach(radio => {
|
|
191
|
+
if (radio.required) {
|
|
192
|
+
required = true;
|
|
193
|
+
}
|
|
194
|
+
if (radio.checked) {
|
|
195
|
+
selection = true;
|
|
196
|
+
}
|
|
197
|
+
});
|
|
198
|
+
return required && !selection;
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
RadioGroupManager._radiosRequestingReset = new WeakSet();
|
package/esm/radio/index.d.ts
CHANGED
package/esm/radio/index.js
CHANGED
|
@@ -3,10 +3,5 @@
|
|
|
3
3
|
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { defineCustomElement } from '@tylertech/forge-core';
|
|
7
|
-
import { RadioComponent } from './radio';
|
|
8
|
-
export * from './radio-constants';
|
|
9
6
|
export * from './radio';
|
|
10
|
-
export
|
|
11
|
-
defineCustomElement(RadioComponent);
|
|
12
|
-
}
|
|
7
|
+
export * from './radio-group';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
export * from './radio-adapter';
|
|
7
|
+
export * from './radio-constants';
|
|
8
|
+
export * from './radio-foundation';
|
|
9
|
+
export * from './radio';
|
|
10
|
+
export declare function defineRadioComponent(): void;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { defineCustomElement } from '@tylertech/forge-core';
|
|
7
|
+
import { RadioComponent } from './radio';
|
|
8
|
+
export * from './radio-adapter';
|
|
9
|
+
export * from './radio-constants';
|
|
10
|
+
export * from './radio-foundation';
|
|
11
|
+
export * from './radio';
|
|
12
|
+
export function defineRadioComponent() {
|
|
13
|
+
defineCustomElement(RadioComponent);
|
|
14
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { BaseAdapter, IBaseAdapter } from '../../core/base/';
|
|
7
|
+
import { IRadioComponent } from './radio';
|
|
8
|
+
import { RadioLabelPosition } from './radio-constants';
|
|
9
|
+
export interface IRadioAdapter extends IBaseAdapter {
|
|
10
|
+
setChecked(checked: boolean, value: string): void;
|
|
11
|
+
trySetDisabled(value: boolean): boolean;
|
|
12
|
+
setRequired(value: boolean): void;
|
|
13
|
+
setReadonly(value: boolean): void;
|
|
14
|
+
setLabelPosition(value: RadioLabelPosition): void;
|
|
15
|
+
disableStateLayer(value: boolean): void;
|
|
16
|
+
setUncheckedRadioGroupFocus(event: 'focus' | 'blur'): void;
|
|
17
|
+
focusNext(): void;
|
|
18
|
+
focusPrevious(): void;
|
|
19
|
+
}
|
|
20
|
+
export declare class RadioAdapter extends BaseAdapter<IRadioComponent> implements IRadioAdapter {
|
|
21
|
+
private readonly _rootElement;
|
|
22
|
+
private readonly _labelElement;
|
|
23
|
+
private readonly _stateLayerElement;
|
|
24
|
+
constructor(component: IRadioComponent);
|
|
25
|
+
setChecked(checked: boolean, value: string): void;
|
|
26
|
+
/**
|
|
27
|
+
* Attempts to set the disabled state of the radio. If the radio is in a disabled radio group, it
|
|
28
|
+
* can't be enabled.
|
|
29
|
+
*
|
|
30
|
+
* @param value Whether the radio should be disabled.
|
|
31
|
+
* @returns Whether the disabled state was set.
|
|
32
|
+
*/
|
|
33
|
+
trySetDisabled(value: boolean): boolean;
|
|
34
|
+
setRequired(value: boolean): void;
|
|
35
|
+
setReadonly(value: boolean): void;
|
|
36
|
+
disableStateLayer(value: boolean): void;
|
|
37
|
+
setLabelPosition(value: RadioLabelPosition): void;
|
|
38
|
+
setUncheckedRadioGroupFocus(event: 'focus' | 'blur'): void;
|
|
39
|
+
focusNext(): void;
|
|
40
|
+
focusPrevious(): void;
|
|
41
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { getShadowElement } from '@tylertech/forge-core';
|
|
7
|
+
import { internals, isFocusable, setDefaultAria } from '../../constants';
|
|
8
|
+
import { BaseAdapter } from '../../core/base/';
|
|
9
|
+
import { RadioGroupManager } from '../core/radio-group-manager';
|
|
10
|
+
import { RADIO_CONSTANTS } from './radio-constants';
|
|
11
|
+
export class RadioAdapter extends BaseAdapter {
|
|
12
|
+
constructor(component) {
|
|
13
|
+
super(component);
|
|
14
|
+
this._rootElement = getShadowElement(component, RADIO_CONSTANTS.selectors.ROOT);
|
|
15
|
+
this._labelElement = getShadowElement(component, RADIO_CONSTANTS.selectors.LABEL);
|
|
16
|
+
this._stateLayerElement = getShadowElement(component, RADIO_CONSTANTS.selectors.STATE_LAYER);
|
|
17
|
+
}
|
|
18
|
+
setChecked(checked, value) {
|
|
19
|
+
this._component[setDefaultAria]({
|
|
20
|
+
ariaChecked: checked ? 'true' : 'false'
|
|
21
|
+
}, { overwrite: true });
|
|
22
|
+
if (checked) {
|
|
23
|
+
RadioGroupManager.setSelectedRadioInGroup(this._component);
|
|
24
|
+
}
|
|
25
|
+
// Update the form value, state, and validity
|
|
26
|
+
const formValue = checked ? value : null;
|
|
27
|
+
const formState = checked ? 'checked' : 'unchecked';
|
|
28
|
+
this._component[internals].setFormValue(formValue, formState);
|
|
29
|
+
RadioGroupManager.setRadioGroupValidity(this._component);
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Attempts to set the disabled state of the radio. If the radio is in a disabled radio group, it
|
|
33
|
+
* can't be enabled.
|
|
34
|
+
*
|
|
35
|
+
* @param value Whether the radio should be disabled.
|
|
36
|
+
* @returns Whether the disabled state was set.
|
|
37
|
+
*/
|
|
38
|
+
trySetDisabled(value) {
|
|
39
|
+
const group = this._component.closest('forge-radio-group');
|
|
40
|
+
if (!value && group && group.disabled) {
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
this._component[setDefaultAria]({
|
|
44
|
+
ariaDisabled: value ? 'true' : 'false'
|
|
45
|
+
}, { overwrite: true });
|
|
46
|
+
this._component[isFocusable] = !value;
|
|
47
|
+
return true;
|
|
48
|
+
}
|
|
49
|
+
setRequired(value) {
|
|
50
|
+
this._component[setDefaultAria]({
|
|
51
|
+
ariaRequired: value ? 'true' : 'false'
|
|
52
|
+
}, { overwrite: true });
|
|
53
|
+
RadioGroupManager.setRadioGroupValidity(this._component);
|
|
54
|
+
}
|
|
55
|
+
setReadonly(value) {
|
|
56
|
+
this._component[setDefaultAria]({
|
|
57
|
+
ariaDisabled: value ? 'true' : 'false'
|
|
58
|
+
}, { overwrite: true });
|
|
59
|
+
}
|
|
60
|
+
disableStateLayer(value) {
|
|
61
|
+
this._stateLayerElement.disabled = value;
|
|
62
|
+
}
|
|
63
|
+
setLabelPosition(value) {
|
|
64
|
+
this._labelElement.remove();
|
|
65
|
+
if (value === 'start') {
|
|
66
|
+
this._rootElement.prepend(this._labelElement);
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
this._rootElement.append(this._labelElement);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
setUncheckedRadioGroupFocus(event) {
|
|
73
|
+
RadioGroupManager.setUncheckedRadioGroupFocus(this._component, event);
|
|
74
|
+
}
|
|
75
|
+
focusNext() {
|
|
76
|
+
RadioGroupManager.focusNextRadioInGroup(this._component);
|
|
77
|
+
}
|
|
78
|
+
focusPrevious() {
|
|
79
|
+
RadioGroupManager.focusPreviousRadioInGroup(this._component);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { ARIAAttribute } from '../../core/utils/a11y-utils';
|
|
7
|
+
export declare const RADIO_CONSTANTS: {
|
|
8
|
+
elementName: "forge-radio";
|
|
9
|
+
attributes: {
|
|
10
|
+
CHECKED: string;
|
|
11
|
+
DEFAULT_CHECKED: string;
|
|
12
|
+
VALUE: string;
|
|
13
|
+
DENSE: string;
|
|
14
|
+
DISABLED: string;
|
|
15
|
+
REQUIRED: string;
|
|
16
|
+
READONLY: string;
|
|
17
|
+
LABEL_POSITION: string;
|
|
18
|
+
TABINDEX: string;
|
|
19
|
+
};
|
|
20
|
+
selectors: {
|
|
21
|
+
ROOT: string;
|
|
22
|
+
LABEL: string;
|
|
23
|
+
STATE_LAYER: string;
|
|
24
|
+
};
|
|
25
|
+
events: {
|
|
26
|
+
CHANGE: string;
|
|
27
|
+
INPUT: string;
|
|
28
|
+
};
|
|
29
|
+
observedAriaAttributes: ARIAAttribute[];
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* This symbol is used to attempt to check a radio while navigating between its siblings in a
|
|
33
|
+
* group. It differs from simply setting `checked` in that it causes the input/change events to
|
|
34
|
+
* emit and returns `false` if either was prevented. The radio group manager can then prevent a
|
|
35
|
+
* change in focus and selection state.
|
|
36
|
+
*/
|
|
37
|
+
export declare const tryCheck: unique symbol;
|
|
38
|
+
export type RadioState = 'checked' | 'unchecked';
|
|
39
|
+
export type RadioLabelPosition = 'start' | 'end';
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { COMPONENT_NAME_PREFIX } from '../../constants';
|
|
7
|
+
import { supportsElementInternalsAria } from '../../core/utils/feature-detection';
|
|
8
|
+
const elementName = `${COMPONENT_NAME_PREFIX}radio`;
|
|
9
|
+
const attributes = {
|
|
10
|
+
CHECKED: 'checked',
|
|
11
|
+
DEFAULT_CHECKED: 'default-checked',
|
|
12
|
+
VALUE: 'value',
|
|
13
|
+
DENSE: 'dense',
|
|
14
|
+
DISABLED: 'disabled',
|
|
15
|
+
REQUIRED: 'required',
|
|
16
|
+
READONLY: 'readonly',
|
|
17
|
+
LABEL_POSITION: 'label-position',
|
|
18
|
+
TABINDEX: 'tabindex'
|
|
19
|
+
};
|
|
20
|
+
const selectors = {
|
|
21
|
+
ROOT: '.forge-radio',
|
|
22
|
+
LABEL: '#label',
|
|
23
|
+
STATE_LAYER: 'forge-state-layer'
|
|
24
|
+
};
|
|
25
|
+
const events = {
|
|
26
|
+
CHANGE: 'change',
|
|
27
|
+
INPUT: 'input'
|
|
28
|
+
};
|
|
29
|
+
const observedAriaAttributes = supportsElementInternalsAria()
|
|
30
|
+
? []
|
|
31
|
+
: [
|
|
32
|
+
'role',
|
|
33
|
+
'aria-checked',
|
|
34
|
+
'aria-disabled',
|
|
35
|
+
'aria-invalid',
|
|
36
|
+
'aria-label',
|
|
37
|
+
'aria-readonly',
|
|
38
|
+
'aria-required'
|
|
39
|
+
];
|
|
40
|
+
export const RADIO_CONSTANTS = {
|
|
41
|
+
elementName,
|
|
42
|
+
attributes,
|
|
43
|
+
selectors,
|
|
44
|
+
events,
|
|
45
|
+
observedAriaAttributes
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* This symbol is used to attempt to check a radio while navigating between its siblings in a
|
|
49
|
+
* group. It differs from simply setting `checked` in that it causes the input/change events to
|
|
50
|
+
* emit and returns `false` if either was prevented. The radio group manager can then prevent a
|
|
51
|
+
* change in focus and selection state.
|
|
52
|
+
*/
|
|
53
|
+
export const tryCheck = Symbol('tryCheck');
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { ICustomElementFoundation } from '@tylertech/forge-core';
|
|
7
|
+
import { IRadioAdapter } from './radio-adapter';
|
|
8
|
+
import { RadioLabelPosition } from './radio-constants';
|
|
9
|
+
export interface IRadioFoundation extends ICustomElementFoundation {
|
|
10
|
+
checked: boolean;
|
|
11
|
+
defaultChecked: boolean;
|
|
12
|
+
value: string;
|
|
13
|
+
disabled: boolean;
|
|
14
|
+
required: boolean;
|
|
15
|
+
readonly: boolean;
|
|
16
|
+
dense: boolean;
|
|
17
|
+
labelPosition: RadioLabelPosition;
|
|
18
|
+
tryCheck(): boolean;
|
|
19
|
+
}
|
|
20
|
+
export declare class RadioFoundation implements IRadioFoundation {
|
|
21
|
+
private _adapter;
|
|
22
|
+
private _checked;
|
|
23
|
+
private _defaultChecked;
|
|
24
|
+
private _value;
|
|
25
|
+
private _disabled;
|
|
26
|
+
private _required;
|
|
27
|
+
private _readonly;
|
|
28
|
+
private _dense;
|
|
29
|
+
private _labelPosition;
|
|
30
|
+
private readonly _focusListener;
|
|
31
|
+
private readonly _blurListener;
|
|
32
|
+
private readonly _clickListener;
|
|
33
|
+
private readonly _keydownListener;
|
|
34
|
+
private readonly _keyupListener;
|
|
35
|
+
constructor(_adapter: IRadioAdapter);
|
|
36
|
+
initialize(): void;
|
|
37
|
+
tryCheck(): boolean;
|
|
38
|
+
private _handleFocus;
|
|
39
|
+
private _handleBlur;
|
|
40
|
+
private _handleClick;
|
|
41
|
+
private _handleKeydown;
|
|
42
|
+
private _handleKeyup;
|
|
43
|
+
/**
|
|
44
|
+
* Checks the radio button if it is not disabled or readonly. Exits early if the activating
|
|
45
|
+
* event is cancelled.
|
|
46
|
+
*/
|
|
47
|
+
private _activate;
|
|
48
|
+
/**
|
|
49
|
+
* Dispatches change and input events.
|
|
50
|
+
*
|
|
51
|
+
* @returns {boolean} - Returns true if neither event was cancelled.
|
|
52
|
+
*/
|
|
53
|
+
private _dispatchEvents;
|
|
54
|
+
get checked(): boolean;
|
|
55
|
+
set checked(value: boolean);
|
|
56
|
+
get defaultChecked(): boolean;
|
|
57
|
+
set defaultChecked(value: boolean);
|
|
58
|
+
get value(): string;
|
|
59
|
+
set value(value: string);
|
|
60
|
+
get disabled(): boolean;
|
|
61
|
+
set disabled(value: boolean);
|
|
62
|
+
get required(): boolean;
|
|
63
|
+
set required(value: boolean);
|
|
64
|
+
get readonly(): boolean;
|
|
65
|
+
set readonly(value: boolean);
|
|
66
|
+
get dense(): boolean;
|
|
67
|
+
set dense(value: boolean);
|
|
68
|
+
get labelPosition(): RadioLabelPosition;
|
|
69
|
+
set labelPosition(value: RadioLabelPosition);
|
|
70
|
+
}
|