@tylertech/forge 3.0.0-next.15 → 3.0.0-next.16
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 +47415 -39475
- package/dist/esm/accordion/index.js +1 -1
- package/dist/esm/app-bar/app-bar/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 +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.24NQGTNU.js +7 -0
- package/dist/esm/chunks/chunk.24NQGTNU.js.map +7 -0
- package/dist/esm/chunks/chunk.2JCTFKCR.js +7 -0
- package/dist/esm/chunks/{chunk.Q54DACHS.js.map → chunk.2JCTFKCR.js.map} +1 -1
- package/dist/esm/chunks/chunk.2OZ2HVBZ.js +7 -0
- package/dist/esm/chunks/{chunk.PMSCH6VK.js.map → chunk.2OZ2HVBZ.js.map} +3 -3
- package/dist/esm/chunks/chunk.2YE556AM.js +7 -0
- package/dist/esm/chunks/{chunk.5KYKGNGY.js.map → chunk.2YE556AM.js.map} +1 -1
- package/dist/esm/chunks/chunk.3U6A353B.js +7 -0
- package/dist/esm/chunks/{chunk.ZT7U7WOX.js.map → chunk.3U6A353B.js.map} +1 -1
- package/dist/esm/chunks/chunk.3VHQPHQP.js +7 -0
- package/dist/esm/chunks/chunk.3VHQPHQP.js.map +7 -0
- package/dist/esm/chunks/chunk.436USWLL.js +7 -0
- package/dist/esm/chunks/{chunk.4JDJ33IU.js.map → chunk.436USWLL.js.map} +1 -1
- package/dist/esm/chunks/chunk.4GMGQZOW.js +7 -0
- package/dist/esm/chunks/{chunk.6FUXTHO6.js.map → chunk.4GMGQZOW.js.map} +1 -1
- package/dist/esm/chunks/chunk.4JB3SESQ.js +7 -0
- package/dist/esm/chunks/{chunk.AIPDMLJD.js.map → chunk.4JB3SESQ.js.map} +1 -1
- package/dist/esm/chunks/chunk.4JL5LW5J.js +7 -0
- package/dist/esm/chunks/{chunk.BS73Y6IN.js.map → chunk.4JL5LW5J.js.map} +1 -1
- package/dist/esm/chunks/chunk.4O6OEUGY.js +7 -0
- package/dist/esm/chunks/{chunk.4XN2WGMP.js.map → chunk.4O6OEUGY.js.map} +2 -2
- package/dist/esm/chunks/chunk.4OG3OGVO.js +7 -0
- package/dist/esm/chunks/chunk.4OG3OGVO.js.map +7 -0
- package/dist/esm/chunks/chunk.4QOXI2GM.js +7 -0
- package/dist/esm/chunks/chunk.4QOXI2GM.js.map +7 -0
- package/dist/esm/chunks/{chunk.MTSWCXTY.js → chunk.55D2BMXX.js} +2 -2
- package/dist/esm/chunks/chunk.5LCWC3A7.js +7 -0
- package/dist/esm/chunks/{chunk.VG452D3L.js.map → chunk.5LCWC3A7.js.map} +1 -1
- package/dist/esm/chunks/chunk.5T7TT3AB.js +7 -0
- package/dist/esm/chunks/{chunk.YMSX4F3J.js.map → chunk.5T7TT3AB.js.map} +1 -1
- package/dist/esm/chunks/{chunk.JHELTQKA.js → chunk.5WVOPPBY.js} +2 -2
- package/dist/esm/chunks/{chunk.JHELTQKA.js.map → chunk.5WVOPPBY.js.map} +2 -2
- package/dist/esm/chunks/chunk.5XLCY232.js +7 -0
- package/dist/esm/chunks/chunk.5XLCY232.js.map +7 -0
- package/dist/esm/chunks/chunk.65WE722H.js +7 -0
- package/dist/esm/chunks/chunk.65WE722H.js.map +7 -0
- package/dist/esm/chunks/chunk.6IPX5C4B.js +7 -0
- package/dist/esm/chunks/chunk.6IPX5C4B.js.map +7 -0
- package/dist/esm/chunks/chunk.6PB5OWMP.js +7 -0
- package/dist/esm/chunks/{chunk.ONII3BV3.js.map → chunk.6PB5OWMP.js.map} +2 -2
- package/dist/esm/chunks/chunk.74HZVSDM.js +7 -0
- package/dist/esm/chunks/chunk.74HZVSDM.js.map +7 -0
- package/dist/esm/chunks/chunk.74JHE77R.js +7 -0
- package/dist/esm/chunks/{chunk.Y4ZS3A6F.js.map → chunk.74JHE77R.js.map} +2 -2
- package/dist/esm/chunks/chunk.7SYU6KRU.js +15 -0
- package/dist/esm/chunks/chunk.7SYU6KRU.js.map +7 -0
- package/dist/esm/chunks/{chunk.BC7WB5RG.js → chunk.B53Q676I.js} +2 -2
- package/dist/esm/chunks/chunk.BKQSLDMK.js +7 -0
- package/dist/esm/chunks/{chunk.NVR6KN2B.js.map → chunk.BKQSLDMK.js.map} +1 -1
- package/dist/esm/chunks/chunk.BZG47SA5.js +7 -0
- package/dist/esm/chunks/{chunk.THNCYT3E.js.map → chunk.BZG47SA5.js.map} +2 -2
- package/dist/esm/chunks/chunk.BZVLSWZR.js +7 -0
- package/dist/esm/chunks/{chunk.4IMRT2B3.js.map → chunk.BZVLSWZR.js.map} +1 -1
- package/dist/esm/chunks/chunk.C72LM2AL.js +7 -0
- package/dist/esm/chunks/chunk.C72LM2AL.js.map +7 -0
- package/dist/esm/chunks/chunk.DGG5ABL3.js +7 -0
- package/dist/esm/chunks/{chunk.WARVAVAW.js.map → chunk.DGG5ABL3.js.map} +1 -1
- package/dist/esm/chunks/chunk.DPIWAXEW.js +7 -0
- package/dist/esm/chunks/{chunk.UOEJCU6R.js.map → chunk.DPIWAXEW.js.map} +1 -1
- package/dist/esm/chunks/chunk.E62ZPQSM.js +7 -0
- package/dist/esm/chunks/chunk.E62ZPQSM.js.map +7 -0
- package/dist/esm/chunks/chunk.ECJBVX3D.js +7 -0
- package/dist/esm/chunks/{chunk.DLBAZD5X.js.map → chunk.ECJBVX3D.js.map} +1 -1
- package/dist/esm/chunks/chunk.EN2HVFJ4.js +7 -0
- package/dist/esm/chunks/chunk.EN2HVFJ4.js.map +7 -0
- package/dist/esm/chunks/chunk.EPRRK33O.js +7 -0
- package/dist/esm/chunks/chunk.EPRRK33O.js.map +7 -0
- package/dist/esm/chunks/chunk.ETDUW5K2.js +7 -0
- package/dist/esm/chunks/{chunk.FSILMO6U.js.map → chunk.ETDUW5K2.js.map} +1 -1
- package/dist/esm/chunks/chunk.EWFNM4WO.js +7 -0
- package/dist/esm/chunks/chunk.EWFNM4WO.js.map +7 -0
- package/dist/esm/chunks/{chunk.U7S4DJTU.js → chunk.FGHSNC2V.js} +2 -2
- package/dist/esm/chunks/chunk.FPRBYGET.js +7 -0
- package/dist/esm/chunks/{chunk.LK6QHLW2.js.map → chunk.FPRBYGET.js.map} +1 -1
- package/dist/esm/chunks/chunk.FQVR2QNF.js +7 -0
- package/dist/esm/chunks/{chunk.X3QZY7V4.js.map → chunk.FQVR2QNF.js.map} +1 -1
- package/dist/esm/chunks/chunk.FWWBFNQA.js +7 -0
- package/dist/esm/chunks/{chunk.O6F4U4VY.js.map → chunk.FWWBFNQA.js.map} +1 -1
- package/dist/esm/chunks/{chunk.URKQICJD.js → chunk.FZELFLPE.js} +2 -2
- package/dist/esm/chunks/chunk.FZZUNYH5.js +7 -0
- package/dist/esm/chunks/{chunk.5QZPUOGG.js.map → chunk.FZZUNYH5.js.map} +1 -1
- package/dist/esm/chunks/chunk.GHMAI3SM.js +15 -0
- package/dist/esm/chunks/chunk.GHMAI3SM.js.map +7 -0
- package/dist/esm/chunks/{chunk.5EGEZ4IY.js → chunk.GLUKTMQU.js} +2 -2
- package/dist/esm/chunks/chunk.GTBCTNMI.js +7 -0
- package/dist/esm/chunks/{chunk.ICIGXLJW.js.map → chunk.GTBCTNMI.js.map} +1 -1
- package/dist/esm/chunks/chunk.GTGXHY4A.js +7 -0
- package/dist/esm/chunks/chunk.GTGXHY4A.js.map +7 -0
- package/dist/esm/chunks/chunk.GURV4TDZ.js +7 -0
- package/dist/esm/chunks/{chunk.TSUAFZGY.js.map → chunk.GURV4TDZ.js.map} +1 -1
- package/dist/esm/chunks/chunk.H6MMHAQI.js +15 -0
- package/dist/esm/chunks/chunk.H6MMHAQI.js.map +7 -0
- package/dist/esm/chunks/chunk.HJUFU2PV.js +7 -0
- package/dist/esm/chunks/{chunk.RCPUTZON.js.map → chunk.HJUFU2PV.js.map} +2 -2
- package/dist/esm/chunks/chunk.HPCXVNG6.js +7 -0
- package/dist/esm/chunks/{chunk.CZOABXEQ.js.map → chunk.HPCXVNG6.js.map} +3 -3
- package/dist/esm/chunks/chunk.IA27LU2O.js +7 -0
- package/dist/esm/chunks/{chunk.JEZR25US.js.map → chunk.IA27LU2O.js.map} +1 -1
- package/dist/esm/chunks/chunk.INQZNXG6.js +7 -0
- package/dist/esm/chunks/chunk.INQZNXG6.js.map +7 -0
- package/dist/esm/chunks/chunk.IO3TM653.js +7 -0
- package/dist/esm/chunks/chunk.IO3TM653.js.map +7 -0
- package/dist/esm/chunks/chunk.JXJVPJRO.js +177 -0
- package/dist/esm/chunks/{chunk.AVRBHXDT.js.map → chunk.JXJVPJRO.js.map} +1 -1
- package/dist/esm/chunks/chunk.K3STAW42.js +7 -0
- package/dist/esm/chunks/{chunk.XQLQ73NG.js.map → chunk.K3STAW42.js.map} +1 -1
- package/dist/esm/chunks/chunk.KM5XYTE3.js +7 -0
- package/dist/esm/chunks/chunk.KM5XYTE3.js.map +7 -0
- package/dist/esm/chunks/chunk.KPC6IS3C.js +7 -0
- package/dist/esm/chunks/{chunk.OTUEB7SD.js.map → chunk.KPC6IS3C.js.map} +1 -1
- package/dist/esm/chunks/{chunk.PRJHBUU2.js → chunk.KPNGLSCU.js} +1 -1
- package/dist/esm/chunks/chunk.KPNGLSCU.js.map +7 -0
- package/dist/esm/chunks/chunk.KV7PGQJ7.js +7 -0
- package/dist/esm/chunks/{chunk.KR4BNI6X.js.map → chunk.KV7PGQJ7.js.map} +1 -1
- package/dist/esm/chunks/chunk.LCS2O4Y7.js +7 -0
- package/dist/esm/chunks/chunk.LCS2O4Y7.js.map +7 -0
- package/dist/esm/chunks/chunk.M4KCRUKW.js +7 -0
- package/dist/esm/chunks/chunk.M4KCRUKW.js.map +7 -0
- package/dist/esm/chunks/{chunk.IHIKIZIT.js → chunk.M5JGYRH4.js} +2 -2
- package/dist/esm/chunks/{chunk.O6MGA3XK.js → chunk.N75VD4S4.js} +2 -2
- package/dist/esm/chunks/chunk.NHOGZDLN.js +7 -0
- package/dist/esm/chunks/chunk.NHOGZDLN.js.map +7 -0
- package/dist/esm/chunks/chunk.NKEAMFO4.js +7 -0
- package/dist/esm/chunks/{chunk.KUNIEX72.js.map → chunk.NKEAMFO4.js.map} +1 -1
- package/dist/esm/chunks/{chunk.KDJZN6EW.js → chunk.NW54VA4E.js} +2 -2
- package/dist/esm/chunks/chunk.OJGPKHHC.js +7 -0
- package/dist/esm/chunks/{chunk.EMCY55MX.js.map → chunk.OJGPKHHC.js.map} +2 -2
- package/dist/esm/chunks/chunk.OSCODMUG.js +7 -0
- package/dist/esm/chunks/chunk.OSCODMUG.js.map +7 -0
- package/dist/esm/chunks/chunk.OT3JZ6JO.js +7 -0
- package/dist/esm/chunks/{chunk.7PVVZC7P.js.map → chunk.OT3JZ6JO.js.map} +3 -3
- package/dist/esm/chunks/{chunk.BAQYPAUM.js → chunk.OXVCCHM5.js} +2 -2
- package/dist/esm/chunks/chunk.P5XHGSJY.js +7 -0
- package/dist/esm/chunks/{chunk.5FCUOZSU.js.map → chunk.P5XHGSJY.js.map} +1 -1
- package/dist/esm/chunks/chunk.Q5YXX4DU.js +7 -0
- package/dist/esm/chunks/{chunk.ZIRA4PYV.js.map → chunk.Q5YXX4DU.js.map} +1 -1
- package/dist/esm/chunks/{chunk.MHH26REX.js → chunk.QKTNCOVX.js} +2 -2
- package/dist/esm/chunks/chunk.QZ57WM3D.js +7 -0
- package/dist/esm/chunks/{chunk.Q2Q626DG.js.map → chunk.QZ57WM3D.js.map} +1 -1
- package/dist/esm/chunks/chunk.R2QENXIL.js +7 -0
- package/dist/esm/chunks/{chunk.LYZXJYTW.js.map → chunk.R2QENXIL.js.map} +1 -1
- package/dist/esm/chunks/chunk.R53VHVKB.js +12 -0
- package/dist/esm/chunks/chunk.R53VHVKB.js.map +7 -0
- package/dist/esm/chunks/{chunk.42YDA5FH.js → chunk.RDQ3QGWS.js} +2 -2
- package/dist/esm/chunks/chunk.RFKKHN7V.js +7 -0
- package/dist/esm/chunks/{chunk.KGHABAFA.js.map → chunk.RFKKHN7V.js.map} +1 -1
- package/dist/esm/chunks/{chunk.AR6YUJUH.js → chunk.RKG66YKS.js} +2 -2
- package/dist/esm/chunks/chunk.RRNSZCVJ.js +7 -0
- package/dist/esm/chunks/{chunk.T4J66YX5.js.map → chunk.RRNSZCVJ.js.map} +4 -4
- package/dist/esm/chunks/chunk.S32JKL3M.js +7 -0
- package/dist/esm/chunks/chunk.S32JKL3M.js.map +7 -0
- package/dist/esm/chunks/chunk.SJQPD3CO.js +7 -0
- package/dist/esm/chunks/chunk.SJQPD3CO.js.map +7 -0
- package/dist/esm/chunks/chunk.T235SNYZ.js +7 -0
- package/dist/esm/chunks/{chunk.CBY7M4X6.js.map → chunk.T235SNYZ.js.map} +1 -1
- package/dist/esm/chunks/chunk.T4N7KZHZ.js +7 -0
- package/dist/esm/chunks/chunk.T4N7KZHZ.js.map +7 -0
- package/dist/esm/chunks/chunk.TE6ZNUAM.js +7 -0
- package/dist/esm/chunks/{chunk.JZ27GPZJ.js.map → chunk.TE6ZNUAM.js.map} +2 -2
- package/dist/esm/chunks/{chunk.WMP2OLMG.js → chunk.TNEUDWZU.js} +2 -2
- package/dist/esm/chunks/{chunk.WMP2OLMG.js.map → chunk.TNEUDWZU.js.map} +2 -2
- package/dist/esm/chunks/{chunk.BTWJPE4Y.js → chunk.TZ67MC2N.js} +2 -2
- package/{styles/focus-indicator/_configuration.scss → dist/esm/chunks/chunk.U6FJJGO3.js} +1 -5
- package/dist/esm/chunks/chunk.U6FJJGO3.js.map +7 -0
- package/dist/esm/chunks/chunk.V3IHX6B2.js +7 -0
- package/dist/esm/chunks/{chunk.GGQL3OZB.js.map → chunk.V3IHX6B2.js.map} +1 -1
- package/dist/esm/chunks/chunk.V564JB6A.js +7 -0
- package/dist/esm/chunks/chunk.V564JB6A.js.map +7 -0
- package/dist/esm/chunks/{chunk.7LOMI6J3.js → chunk.VGIZJ32U.js} +2 -2
- package/dist/esm/chunks/chunk.VZTV4GXC.js +7 -0
- package/dist/esm/chunks/chunk.VZTV4GXC.js.map +7 -0
- package/dist/esm/chunks/chunk.W5TDBDVY.js +7 -0
- package/dist/esm/chunks/{chunk.BIVQ4GTK.js.map → chunk.W5TDBDVY.js.map} +1 -1
- package/dist/esm/chunks/chunk.WA2YP4NC.js +7 -0
- package/dist/esm/chunks/{chunk.MROUV35N.js.map → chunk.WA2YP4NC.js.map} +1 -1
- package/dist/esm/chunks/{chunk.U42I3PGF.js → chunk.WFQYTXCB.js} +2 -2
- package/dist/esm/chunks/chunk.WNH7EHZP.js +7 -0
- package/dist/esm/chunks/{chunk.FQUZWINF.js.map → chunk.WNH7EHZP.js.map} +2 -2
- package/dist/esm/chunks/{chunk.KWBYYSH3.js → chunk.WQHKUNR7.js} +2 -2
- package/dist/esm/chunks/chunk.WYSUQK6Z.js +7 -0
- package/dist/esm/chunks/{chunk.L27ANAIL.js.map → chunk.WYSUQK6Z.js.map} +2 -2
- package/dist/esm/chunks/{chunk.NBLL7VAA.js → chunk.X57DRPFB.js} +2 -2
- package/dist/esm/chunks/{chunk.L45HXBDS.js → chunk.X7YTDVNT.js} +2 -2
- package/dist/esm/chunks/chunk.XBFH6M72.js +7 -0
- package/dist/esm/chunks/{chunk.FXGY5IVK.js.map → chunk.XBFH6M72.js.map} +2 -2
- package/dist/esm/chunks/chunk.XOH2JCRS.js +7 -0
- package/dist/esm/chunks/{chunk.AEO2X5OZ.js.map → chunk.XOH2JCRS.js.map} +1 -1
- package/dist/esm/chunks/chunk.Y6D5Z56X.js +7 -0
- package/dist/esm/chunks/{chunk.3KEXRSB5.js.map → chunk.Y6D5Z56X.js.map} +2 -2
- package/dist/esm/chunks/chunk.YBPAGWVG.js +7 -0
- package/dist/esm/chunks/chunk.YBPAGWVG.js.map +7 -0
- package/dist/esm/chunks/chunk.YWDYBX3G.js +7 -0
- package/dist/esm/chunks/chunk.YWDYBX3G.js.map +7 -0
- package/dist/esm/chunks/chunk.ZHMV5SR4.js +7 -0
- package/dist/esm/chunks/{chunk.Z37CZMMR.js.map → chunk.ZHMV5SR4.js.map} +1 -1
- package/dist/esm/chunks/chunk.ZLACSRD4.js +7 -0
- package/dist/esm/chunks/{chunk.WJCZJ6XD.js.map → chunk.ZLACSRD4.js.map} +1 -1
- package/dist/esm/chunks/chunk.ZPVRRFT7.js +7 -0
- package/dist/esm/chunks/{chunk.W7BP2DDU.js.map → chunk.ZPVRRFT7.js.map} +2 -2
- package/dist/esm/chunks/chunk.ZS3T6MJS.js +7 -0
- package/dist/esm/chunks/{chunk.YA5OQD37.js.map → chunk.ZS3T6MJS.js.map} +2 -2
- package/dist/esm/chunks/chunk.ZUTQPJ2B.js +7 -0
- package/dist/esm/chunks/{chunk.Q74SG6BV.js.map → chunk.ZUTQPJ2B.js.map} +1 -1
- package/dist/esm/chunks/chunk.ZWIEYVZC.js +7 -0
- package/dist/esm/chunks/chunk.ZWIEYVZC.js.map +7 -0
- package/dist/esm/chunks/chunk.ZY3ETQ3D.js +7 -0
- package/dist/esm/chunks/chunk.ZY3ETQ3D.js.map +7 -0
- package/dist/esm/chunks/chunk.ZYCKD6K5.js +7 -0
- package/dist/esm/chunks/{chunk.447QNYAZ.js.map → chunk.ZYCKD6K5.js.map} +1 -1
- 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/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/overlay/index.js +7 -0
- package/dist/esm/overlay/index.js.map +7 -0
- package/dist/esm/page-state/index.js +1 -1
- package/dist/esm/paginator/index.js +1 -1
- package/dist/esm/popover/index.js +7 -0
- package/dist/esm/popover/index.js.map +7 -0
- 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 +1 -1
- package/dist/esm/radio/radio-group/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-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/help-button/app-bar-help-button-adapter.js +3 -3
- package/esm/app-bar/help-button/app-bar-help-button.js +1 -1
- package/esm/app-bar/menu-button/app-bar-menu-button.js +4 -4
- package/esm/app-bar/notification-button/app-bar-notification-button-adapter.js +3 -3
- package/esm/app-bar/notification-button/app-bar-notification-button.js +1 -1
- package/esm/app-bar/profile-button/app-bar-profile-button-adapter.js +3 -3
- package/esm/app-bar/profile-button/app-bar-profile-button-foundation.js +1 -0
- package/esm/app-bar/profile-button/app-bar-profile-button.js +1 -1
- package/esm/banner/banner.js +1 -1
- package/esm/button/base/base-button-adapter.d.ts +0 -3
- package/esm/button/base/base-button-adapter.js +5 -14
- package/esm/button/base/base-button-constants.d.ts +28 -28
- package/esm/button/base/base-button-foundation.d.ts +0 -2
- package/esm/button/base/base-button-foundation.js +1 -4
- package/esm/button/base/base-button.d.ts +8 -6
- package/esm/button/base/base-button.js +19 -15
- package/esm/button/button.js +2 -2
- package/esm/button-toggle/button-toggle/button-toggle-adapter.d.ts +6 -14
- package/esm/button-toggle/button-toggle/button-toggle-adapter.js +19 -45
- package/esm/button-toggle/button-toggle/button-toggle-constants.d.ts +11 -15
- package/esm/button-toggle/button-toggle/button-toggle-constants.js +6 -17
- package/esm/button-toggle/button-toggle/button-toggle-foundation.d.ts +18 -12
- package/esm/button-toggle/button-toggle/button-toggle-foundation.js +74 -30
- package/esm/button-toggle/button-toggle/button-toggle.d.ts +67 -14
- package/esm/button-toggle/button-toggle/button-toggle.js +82 -29
- package/esm/button-toggle/button-toggle-group/button-toggle-group-adapter.d.ts +7 -13
- package/esm/button-toggle/button-toggle-group/button-toggle-group-adapter.js +26 -91
- package/esm/button-toggle/button-toggle-group/button-toggle-group-constants.d.ts +20 -11
- package/esm/button-toggle/button-toggle-group/button-toggle-group-constants.js +8 -2
- package/esm/button-toggle/button-toggle-group/button-toggle-group-foundation.d.ts +20 -12
- package/esm/button-toggle/button-toggle-group/button-toggle-group-foundation.js +101 -97
- package/esm/button-toggle/button-toggle-group/button-toggle-group.d.ts +75 -9
- package/esm/button-toggle/button-toggle-group/button-toggle-group.js +134 -25
- package/esm/calendar/calendar-dom-utils.js +1 -2
- package/esm/calendar/calendar-foundation.d.ts +1 -1
- package/esm/calendar/calendar-foundation.js +13 -16
- package/esm/checkbox/checkbox.js +1 -1
- package/esm/circular-progress/circular-progress-adapter.js +8 -12
- package/esm/circular-progress/circular-progress.d.ts +7 -3
- package/esm/circular-progress/circular-progress.js +4 -2
- package/esm/color-picker/color-picker.js +1 -1
- package/esm/constants.d.ts +1 -0
- package/esm/constants.js +2 -0
- package/esm/core/base/base-adapter.d.ts +2 -0
- package/esm/core/base/base-adapter.js +7 -4
- package/esm/core/base/index.d.ts +0 -4
- package/esm/core/base/index.js +0 -4
- package/esm/core/{base/base-focusable-component.d.ts → mixins/focus/with-focusable.d.ts} +2 -2
- package/esm/core/{base/base-focusable-component.js → mixins/focus/with-focusable.js} +1 -1
- package/esm/core/{base/base-form-associated-component.d.ts → mixins/form/with-form-associated.d.ts} +4 -10
- package/esm/core/{base/base-form-associated-component.js → mixins/form/with-form-associated.js} +1 -1
- package/esm/core/mixins/form/with-form-validity.d.ts +35 -0
- package/esm/core/mixins/form/with-form-validity.js +43 -0
- package/esm/core/mixins/interactions/longpress/with-longpress-listener.d.ts +33 -0
- package/esm/core/mixins/interactions/longpress/with-longpress-listener.js +82 -0
- package/esm/core/mixins/internals/with-default-aria.d.ts +32 -0
- package/esm/core/mixins/internals/with-default-aria.js +22 -0
- package/esm/core/mixins/internals/with-element-internals.d.ts +26 -0
- package/esm/core/mixins/internals/with-element-internals.js +22 -0
- package/esm/core/{base/base-label-aware-component.d.ts → mixins/label/with-label-aware.d.ts} +2 -2
- package/esm/core/utils/a11y-utils.d.ts +4 -34
- package/esm/core/utils/a11y-utils.js +7 -61
- package/esm/core/utils/deferred.d.ts +29 -0
- package/esm/core/utils/deferred.js +32 -0
- package/esm/core/utils/dismissible-stack.d.ts +74 -0
- package/esm/core/utils/dismissible-stack.js +133 -0
- package/esm/core/utils/feature-detection.d.ts +5 -0
- package/esm/core/utils/feature-detection.js +12 -3
- package/esm/core/utils/form-utils.d.ts +1 -1
- package/esm/core/utils/position-utils.d.ts +78 -0
- package/esm/core/utils/position-utils.js +197 -0
- package/esm/core/utils/utils.d.ts +14 -0
- package/esm/core/utils/utils.js +25 -7
- package/esm/date-range-picker/date-range-picker-foundation.d.ts +1 -0
- package/esm/date-range-picker/date-range-picker-foundation.js +4 -0
- package/esm/dialog/dialog-constants.d.ts +1 -0
- package/esm/dialog/dialog-constants.js +2 -1
- package/esm/dialog/dialog-foundation.js +3 -6
- package/esm/dialog/dialog.js +1 -1
- package/esm/drawer/mini-drawer/mini-drawer.js +1 -1
- package/esm/expansion-panel/expansion-panel-adapter.js +0 -5
- package/esm/floating-action-button/floating-action-button.js +1 -1
- package/esm/icon-button/icon-button-component-delegate.js +1 -1
- package/esm/icon-button/icon-button.js +1 -1
- package/esm/index.d.ts +2 -0
- package/esm/index.js +7 -1
- package/esm/label/label-adapter.js +3 -3
- package/esm/label/label-constants.d.ts +1 -1
- package/esm/label/label-constants.js +3 -1
- package/esm/linear-progress/linear-progress-adapter.js +13 -12
- package/esm/linear-progress/linear-progress-constants.d.ts +6 -0
- package/esm/linear-progress/linear-progress-constants.js +4 -2
- package/esm/linear-progress/linear-progress-foundation.js +2 -1
- package/esm/linear-progress/linear-progress.d.ts +7 -3
- package/esm/linear-progress/linear-progress.js +8 -11
- package/esm/list/list/list.js +1 -1
- package/esm/list/list-item/list-item.js +1 -1
- package/esm/menu/menu.js +1 -5
- package/esm/open-icon/open-icon.js +2 -2
- package/esm/overlay/base/base-overlay-foundation.d.ts +50 -0
- package/esm/overlay/base/base-overlay-foundation.js +11 -0
- package/esm/overlay/base/base-overlay.d.ts +49 -0
- package/esm/overlay/base/base-overlay.js +106 -0
- package/esm/overlay/base/overlay-aware-adapter.d.ts +17 -0
- package/esm/overlay/base/overlay-aware-adapter.js +15 -0
- package/esm/overlay/base/overlay-aware-foundation.d.ts +53 -0
- package/esm/overlay/base/overlay-aware-foundation.js +158 -0
- package/esm/overlay/base/overlay-aware.d.ts +36 -0
- package/esm/overlay/base/overlay-aware.js +102 -0
- package/esm/overlay/index.d.ts +10 -0
- package/esm/overlay/index.js +14 -0
- package/esm/overlay/mixins/with-overlay-aware.d.ts +105 -0
- package/esm/overlay/mixins/with-overlay-aware.js +152 -0
- package/esm/overlay/overlay-adapter.d.ts +54 -0
- package/esm/overlay/overlay-adapter.js +182 -0
- package/esm/overlay/overlay-constants.d.ts +71 -0
- package/esm/overlay/overlay-constants.js +48 -0
- package/esm/overlay/overlay-foundation.d.ts +76 -0
- package/esm/overlay/overlay-foundation.js +288 -0
- package/esm/overlay/overlay.d.ts +90 -0
- package/esm/overlay/overlay.js +105 -0
- package/esm/paginator/paginator.js +1 -1
- package/esm/popover/index.d.ts +10 -0
- package/esm/popover/index.js +14 -0
- package/esm/popover/popover-adapter.d.ts +46 -0
- package/esm/popover/popover-adapter.js +105 -0
- package/esm/popover/popover-constants.d.ts +42 -0
- package/esm/popover/popover-constants.js +42 -0
- package/esm/popover/popover-foundation.d.ts +139 -0
- package/esm/popover/popover-foundation.js +458 -0
- package/esm/popover/popover.d.ts +96 -0
- package/esm/popover/popover.js +147 -0
- package/esm/popup/popup-constants.d.ts +1 -1
- package/esm/profile-card/profile-card.js +1 -1
- package/esm/radio/core/radio-group-manager.js +1 -1
- package/esm/radio/radio/radio-adapter.js +4 -10
- package/esm/radio/radio/radio-constants.d.ts +0 -2
- package/esm/radio/radio/radio-constants.js +1 -14
- package/esm/radio/radio/radio.d.ts +8 -3
- package/esm/radio/radio/radio.js +10 -8
- package/esm/radio/radio-group/radio-group-adapter.js +1 -3
- package/esm/radio/radio-group/radio-group-constants.d.ts +0 -2
- package/esm/radio/radio-group/radio-group-constants.js +1 -6
- package/esm/radio/radio-group/radio-group.d.ts +6 -3
- package/esm/radio/radio-group/radio-group.js +5 -3
- package/esm/slider/slider.d.ts +2 -2
- 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-foundation.js +9 -10
- package/esm/switch/switch.js +1 -1
- package/esm/table/table-utils.js +2 -3
- package/esm/tabs/tab/tab.js +1 -1
- package/esm/tabs/tab-bar/tab-bar-adapter.d.ts +1 -1
- package/esm/tabs/tab-bar/tab-bar-adapter.js +3 -3
- package/esm/tabs/tab-bar/tab-bar-constants.d.ts +1 -1
- package/esm/tabs/tab-bar/tab-bar-constants.js +1 -1
- package/esm/tabs/tab-bar/tab-bar.js +2 -2
- package/esm/toast/toast-constants.d.ts +1 -1
- package/esm/toolbar/toolbar.js +1 -1
- package/esm/tooltip/index.d.ts +0 -1
- package/esm/tooltip/index.js +0 -1
- package/esm/tooltip/tooltip-adapter.d.ts +30 -60
- package/esm/tooltip/tooltip-adapter.js +105 -97
- package/esm/tooltip/tooltip-constants.d.ts +44 -21
- package/esm/tooltip/tooltip-constants.js +27 -22
- package/esm/tooltip/tooltip-foundation.d.ts +72 -84
- package/esm/tooltip/tooltip-foundation.js +265 -192
- package/esm/tooltip/tooltip.d.ts +93 -26
- package/esm/tooltip/tooltip.js +129 -31
- package/package.json +2 -4
- package/styles/app-bar/app-bar/_core.scss +2 -0
- package/styles/app-bar/app-bar/app-bar.scss +17 -17
- package/styles/app-bar/app-bar/index.scss +0 -2
- package/styles/app-bar/search/_core.scss +2 -0
- package/styles/app-bar/search/app-bar-search.scss +5 -6
- package/styles/app-bar/search/index.scss +0 -2
- package/styles/button/_core.scss +2 -0
- package/styles/button/button.scss +31 -25
- package/styles/button/index.scss +0 -2
- package/styles/button-toggle/button-toggle/_core.scss +78 -0
- package/styles/button-toggle/button-toggle/_token-utils.scss +30 -0
- package/styles/button-toggle/button-toggle/button-toggle.scss +65 -11
- package/styles/{app-bar/search/_configuration.scss → button-toggle/button-toggle/index.scss} +1 -5
- package/styles/button-toggle/button-toggle-group/_core.scss +62 -0
- package/styles/button-toggle/button-toggle-group/_token-utils.scss +30 -0
- package/styles/button-toggle/button-toggle-group/button-toggle-group.scss +123 -3
- package/styles/button-toggle/button-toggle-group/index.scss +8 -0
- package/styles/checkbox/_core.scss +3 -0
- package/styles/checkbox/checkbox.scss +24 -26
- package/styles/checkbox/index.scss +0 -2
- package/styles/circular-progress/_core.scss +2 -0
- package/styles/circular-progress/circular-progress.scss +36 -27
- package/styles/circular-progress/index.scss +0 -2
- package/styles/core/styles/elevation/index.scss +1 -1
- package/styles/core/styles/tokens/_token-utils.scss +14 -5
- package/styles/core/styles/tokens/button/_tokens.scss +4 -4
- package/styles/core/styles/tokens/button-toggle/button-toggle/_tokens.scss +68 -0
- package/styles/core/styles/tokens/button-toggle/button-toggle-group/_tokens.scss +48 -0
- package/styles/core/styles/tokens/checkbox/_tokens.scss +6 -6
- package/styles/core/styles/tokens/floating-action-button/_tokens.scss +1 -1
- package/styles/core/styles/tokens/icon-button/_tokens.scss +3 -3
- package/styles/core/styles/tokens/overlay/_tokens.scss +23 -0
- package/styles/core/styles/tokens/popover/_tokens.scss +56 -0
- package/styles/core/styles/tokens/profile-card/_tokens.scss +1 -1
- package/styles/core/styles/tokens/radio/_tokens.scss +1 -1
- package/styles/core/styles/tokens/switch/_tokens.scss +3 -3
- package/styles/core/styles/tokens/tabs/tab/_tokens.scss +5 -5
- package/styles/core/styles/tokens/theme/_token-utils.scss +12 -11
- package/styles/core/styles/tokens/theme/_tokens.surface.scss +3 -0
- package/styles/core/styles/tokens/theme/_tokens.text.scss +4 -4
- package/styles/core/styles/tokens/theme/_tokens.utilities.scss +3 -0
- package/styles/core/styles/tokens/tooltip/_tokens.scss +53 -0
- package/styles/dialog/_mixins.scss +1 -1
- package/styles/drawer/mini-drawer/_mixins.scss +0 -2
- package/styles/floating-action-button/_core.scss +2 -0
- package/styles/floating-action-button/floating-action-button.scss +14 -14
- package/styles/floating-action-button/index.scss +0 -2
- package/styles/focus-indicator/_core.scss +2 -0
- package/styles/focus-indicator/focus-indicator.scss +7 -8
- package/styles/focus-indicator/index.scss +0 -2
- package/styles/forge.scss +0 -1
- package/styles/icon-button/_core.scss +2 -0
- package/styles/icon-button/icon-button.scss +29 -28
- package/styles/icon-button/index.scss +0 -2
- package/styles/label/label.scss +2 -2
- package/styles/linear-progress/_core.scss +2 -0
- package/styles/linear-progress/index.scss +0 -2
- package/styles/linear-progress/linear-progress.scss +29 -18
- package/styles/list/list/_core.scss +2 -0
- package/styles/list/list/index.scss +0 -2
- package/styles/list/list/list.scss +4 -4
- package/styles/list/list-item/_core.scss +2 -0
- package/styles/list/list-item/index.scss +0 -2
- package/styles/list/list-item/list-item.scss +50 -44
- package/styles/overlay/_core.scss +46 -0
- package/styles/overlay/_token-utils.scss +31 -0
- package/styles/{checkbox/_configuration.scss → overlay/index.scss} +1 -5
- package/styles/overlay/overlay.scss +66 -0
- package/styles/popover/_animations.scss +36 -0
- package/styles/popover/_core.scss +56 -0
- package/styles/popover/_token-utils.scss +31 -0
- package/styles/{list/list/_configuration.scss → popover/index.scss} +1 -5
- package/styles/popover/popover.scss +254 -0
- package/styles/profile-card/_core.scss +2 -0
- package/styles/profile-card/index.scss +0 -2
- package/styles/profile-card/profile-card.scss +9 -11
- package/styles/radio/radio/_core.scss +3 -0
- package/styles/radio/radio/index.scss +0 -2
- package/styles/radio/radio/radio.scss +12 -15
- package/styles/slider/_core.scss +2 -0
- package/styles/slider/index.scss +0 -2
- package/styles/slider/slider.scss +45 -41
- package/styles/split-button/index.scss +0 -1
- package/styles/split-button/split-button.scss +3 -2
- package/styles/state-layer/_core.scss +3 -2
- package/styles/state-layer/index.scss +0 -2
- package/styles/state-layer/state-layer.scss +7 -8
- package/styles/switch/_core.scss +3 -0
- package/styles/switch/index.scss +0 -2
- package/styles/switch/switch.scss +28 -30
- package/styles/tabs/tab/_core.scss +2 -0
- package/styles/tabs/tab/index.scss +0 -2
- package/styles/tabs/tab/tab.scss +27 -28
- package/styles/tabs/tab-bar/_core.scss +2 -0
- package/styles/tabs/tab-bar/index.scss +0 -2
- package/styles/tabs/tab-bar/tab-bar.scss +21 -23
- package/styles/theme/_theme-dark.scss +14 -2
- package/styles/theme/_theme-values.scss +2 -0
- package/styles/toolbar/_mixins.scss +2 -1
- package/styles/tooltip/_animations.scss +18 -0
- package/styles/tooltip/_core.scss +86 -0
- package/styles/tooltip/_token-utils.scss +31 -0
- package/styles/tooltip/index.scss +6 -0
- package/styles/tooltip/tooltip.scss +107 -0
- package/dist/esm/chunks/chunk.3KEXRSB5.js +0 -7
- package/dist/esm/chunks/chunk.3TKTJ3BY.js +0 -7
- package/dist/esm/chunks/chunk.3TKTJ3BY.js.map +0 -7
- package/dist/esm/chunks/chunk.447QNYAZ.js +0 -7
- package/dist/esm/chunks/chunk.4IMRT2B3.js +0 -7
- package/dist/esm/chunks/chunk.4JDJ33IU.js +0 -7
- package/dist/esm/chunks/chunk.4QCGBFLU.js +0 -7
- package/dist/esm/chunks/chunk.4QCGBFLU.js.map +0 -7
- package/dist/esm/chunks/chunk.4XN2WGMP.js +0 -7
- package/dist/esm/chunks/chunk.5FCUOZSU.js +0 -7
- package/dist/esm/chunks/chunk.5KYKGNGY.js +0 -7
- package/dist/esm/chunks/chunk.5QZPUOGG.js +0 -7
- package/dist/esm/chunks/chunk.5ZMM75CJ.js +0 -7
- package/dist/esm/chunks/chunk.5ZMM75CJ.js.map +0 -7
- package/dist/esm/chunks/chunk.6FUXTHO6.js +0 -7
- package/dist/esm/chunks/chunk.6ORVPXNN.js +0 -7
- package/dist/esm/chunks/chunk.6ORVPXNN.js.map +0 -7
- package/dist/esm/chunks/chunk.6ZJIHOIG.js +0 -7
- package/dist/esm/chunks/chunk.6ZJIHOIG.js.map +0 -7
- package/dist/esm/chunks/chunk.7PVVZC7P.js +0 -7
- package/dist/esm/chunks/chunk.AEO2X5OZ.js +0 -7
- package/dist/esm/chunks/chunk.AIPDMLJD.js +0 -7
- package/dist/esm/chunks/chunk.APFDK6YA.js +0 -7
- package/dist/esm/chunks/chunk.APFDK6YA.js.map +0 -7
- package/dist/esm/chunks/chunk.AVRBHXDT.js +0 -177
- package/dist/esm/chunks/chunk.BIVQ4GTK.js +0 -7
- package/dist/esm/chunks/chunk.BJD6BKGC.js +0 -31
- package/dist/esm/chunks/chunk.BJD6BKGC.js.map +0 -7
- package/dist/esm/chunks/chunk.BS73Y6IN.js +0 -7
- package/dist/esm/chunks/chunk.BWGDZUJV.js +0 -12
- package/dist/esm/chunks/chunk.BWGDZUJV.js.map +0 -7
- package/dist/esm/chunks/chunk.CBY7M4X6.js +0 -7
- package/dist/esm/chunks/chunk.CZOABXEQ.js +0 -7
- package/dist/esm/chunks/chunk.DLBAZD5X.js +0 -7
- package/dist/esm/chunks/chunk.DTWXICOY.js +0 -7
- package/dist/esm/chunks/chunk.DTWXICOY.js.map +0 -7
- package/dist/esm/chunks/chunk.EMCY55MX.js +0 -7
- package/dist/esm/chunks/chunk.ESQWFHCF.js +0 -7
- package/dist/esm/chunks/chunk.ESQWFHCF.js.map +0 -7
- package/dist/esm/chunks/chunk.FDZSLGIW.js +0 -7
- package/dist/esm/chunks/chunk.FDZSLGIW.js.map +0 -7
- package/dist/esm/chunks/chunk.FJ5VNWYK.js +0 -7
- package/dist/esm/chunks/chunk.FJ5VNWYK.js.map +0 -7
- package/dist/esm/chunks/chunk.FJRCWWE2.js +0 -7
- package/dist/esm/chunks/chunk.FJRCWWE2.js.map +0 -7
- package/dist/esm/chunks/chunk.FQUZWINF.js +0 -7
- package/dist/esm/chunks/chunk.FSILMO6U.js +0 -7
- package/dist/esm/chunks/chunk.FXGY5IVK.js +0 -7
- package/dist/esm/chunks/chunk.G67LO74A.js +0 -7
- package/dist/esm/chunks/chunk.G67LO74A.js.map +0 -7
- package/dist/esm/chunks/chunk.GGQL3OZB.js +0 -7
- package/dist/esm/chunks/chunk.I7OY43HW.js +0 -7
- package/dist/esm/chunks/chunk.I7OY43HW.js.map +0 -7
- package/dist/esm/chunks/chunk.I7X25KEB.js +0 -7
- package/dist/esm/chunks/chunk.I7X25KEB.js.map +0 -7
- package/dist/esm/chunks/chunk.ICIGXLJW.js +0 -7
- package/dist/esm/chunks/chunk.ILUXZNGY.js +0 -7
- package/dist/esm/chunks/chunk.ILUXZNGY.js.map +0 -7
- package/dist/esm/chunks/chunk.JEZR25US.js +0 -7
- package/dist/esm/chunks/chunk.JPI4XCQL.js +0 -7
- package/dist/esm/chunks/chunk.JPI4XCQL.js.map +0 -7
- package/dist/esm/chunks/chunk.JRSFCVYQ.js +0 -7
- package/dist/esm/chunks/chunk.JRSFCVYQ.js.map +0 -7
- package/dist/esm/chunks/chunk.JZ27GPZJ.js +0 -7
- package/dist/esm/chunks/chunk.K3TJMIKD.js +0 -7
- package/dist/esm/chunks/chunk.K3TJMIKD.js.map +0 -7
- package/dist/esm/chunks/chunk.KGHABAFA.js +0 -7
- package/dist/esm/chunks/chunk.KR4BNI6X.js +0 -7
- package/dist/esm/chunks/chunk.KUNIEX72.js +0 -7
- package/dist/esm/chunks/chunk.L27ANAIL.js +0 -7
- package/dist/esm/chunks/chunk.L4UXWCVD.js +0 -7
- package/dist/esm/chunks/chunk.L4UXWCVD.js.map +0 -7
- package/dist/esm/chunks/chunk.LK6QHLW2.js +0 -7
- package/dist/esm/chunks/chunk.LYZXJYTW.js +0 -7
- package/dist/esm/chunks/chunk.LZ2YQYJA.js +0 -7
- package/dist/esm/chunks/chunk.LZ2YQYJA.js.map +0 -7
- package/dist/esm/chunks/chunk.MROUV35N.js +0 -7
- package/dist/esm/chunks/chunk.NM7FJISF.js +0 -7
- package/dist/esm/chunks/chunk.NM7FJISF.js.map +0 -7
- package/dist/esm/chunks/chunk.NVR6KN2B.js +0 -7
- package/dist/esm/chunks/chunk.O6F4U4VY.js +0 -7
- package/dist/esm/chunks/chunk.ONII3BV3.js +0 -7
- package/dist/esm/chunks/chunk.OTUEB7SD.js +0 -7
- package/dist/esm/chunks/chunk.PMSCH6VK.js +0 -7
- package/dist/esm/chunks/chunk.PRJHBUU2.js.map +0 -7
- package/dist/esm/chunks/chunk.Q2Q626DG.js +0 -7
- package/dist/esm/chunks/chunk.Q4YL47ZL.js +0 -7
- package/dist/esm/chunks/chunk.Q4YL47ZL.js.map +0 -7
- package/dist/esm/chunks/chunk.Q54DACHS.js +0 -7
- package/dist/esm/chunks/chunk.Q74SG6BV.js +0 -7
- package/dist/esm/chunks/chunk.QGMWM7IT.js +0 -7
- package/dist/esm/chunks/chunk.QGMWM7IT.js.map +0 -7
- package/dist/esm/chunks/chunk.RCPUTZON.js +0 -7
- package/dist/esm/chunks/chunk.SBKKBQDX.js +0 -7
- package/dist/esm/chunks/chunk.SBKKBQDX.js.map +0 -7
- package/dist/esm/chunks/chunk.SVVF632P.js +0 -7
- package/dist/esm/chunks/chunk.SVVF632P.js.map +0 -7
- package/dist/esm/chunks/chunk.T4J66YX5.js +0 -7
- package/dist/esm/chunks/chunk.THNCYT3E.js +0 -7
- package/dist/esm/chunks/chunk.TSUAFZGY.js +0 -7
- package/dist/esm/chunks/chunk.UOEJCU6R.js +0 -7
- package/dist/esm/chunks/chunk.VG452D3L.js +0 -7
- package/dist/esm/chunks/chunk.VQPSP4HV.js +0 -7
- package/dist/esm/chunks/chunk.VQPSP4HV.js.map +0 -7
- package/dist/esm/chunks/chunk.W7BP2DDU.js +0 -7
- package/dist/esm/chunks/chunk.WARVAVAW.js +0 -7
- package/dist/esm/chunks/chunk.WEHQUUXJ.js +0 -7
- package/dist/esm/chunks/chunk.WEHQUUXJ.js.map +0 -7
- package/dist/esm/chunks/chunk.WJCZJ6XD.js +0 -7
- package/dist/esm/chunks/chunk.X3QZY7V4.js +0 -7
- package/dist/esm/chunks/chunk.XQLQ73NG.js +0 -7
- package/dist/esm/chunks/chunk.Y4ZS3A6F.js +0 -7
- package/dist/esm/chunks/chunk.YA5OQD37.js +0 -7
- package/dist/esm/chunks/chunk.YMSX4F3J.js +0 -7
- package/dist/esm/chunks/chunk.Z37CZMMR.js +0 -7
- package/dist/esm/chunks/chunk.ZIRA4PYV.js +0 -7
- package/dist/esm/chunks/chunk.ZT7U7WOX.js +0 -7
- package/dist/esm/chunks/chunk.ZX3CGET2.js +0 -7
- package/dist/esm/chunks/chunk.ZX3CGET2.js.map +0 -7
- package/dist/tooltip/forge-tooltip.css +0 -6
- package/esm/core/base/base-element-internals-component.d.ts +0 -41
- package/esm/core/base/base-element-internals-component.js +0 -47
- package/esm/tooltip/tooltip-utils.d.ts +0 -13
- package/esm/tooltip/tooltip-utils.js +0 -53
- package/styles/app-bar/app-bar/_configuration.scss +0 -16
- package/styles/button/_configuration.scss +0 -16
- package/styles/button-toggle/button-toggle/_mixins.scss +0 -117
- package/styles/button-toggle/button-toggle-group/_mixins.scss +0 -79
- package/styles/circular-progress/_configuration.scss +0 -16
- package/styles/floating-action-button/_configuration.scss +0 -16
- package/styles/icon-button/_configuration.scss +0 -16
- package/styles/linear-progress/_configuration.scss +0 -28
- package/styles/list/list-item/_configuration.scss +0 -16
- package/styles/radio/radio/_configuration.scss +0 -10
- package/styles/split-button/_configuration.scss +0 -12
- package/styles/state-layer/_configuration.scss +0 -10
- package/styles/switch/_configuration.scss +0 -10
- package/styles/tabs/tab/_configuration.scss +0 -27
- package/styles/tabs/tab-bar/_configuration.scss +0 -10
- package/styles/tooltip/_mixins.scss +0 -98
- package/styles/tooltip/_variables.scss +0 -18
- package/styles/tooltip/forge-tooltip.scss +0 -12
- /package/dist/esm/chunks/{chunk.MTSWCXTY.js.map → chunk.55D2BMXX.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.BC7WB5RG.js.map → chunk.B53Q676I.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.U7S4DJTU.js.map → chunk.FGHSNC2V.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.URKQICJD.js.map → chunk.FZELFLPE.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.5EGEZ4IY.js.map → chunk.GLUKTMQU.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.IHIKIZIT.js.map → chunk.M5JGYRH4.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.O6MGA3XK.js.map → chunk.N75VD4S4.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.KDJZN6EW.js.map → chunk.NW54VA4E.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.BAQYPAUM.js.map → chunk.OXVCCHM5.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.MHH26REX.js.map → chunk.QKTNCOVX.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.42YDA5FH.js.map → chunk.RDQ3QGWS.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.AR6YUJUH.js.map → chunk.RKG66YKS.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.BTWJPE4Y.js.map → chunk.TZ67MC2N.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.7LOMI6J3.js.map → chunk.VGIZJ32U.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.U42I3PGF.js.map → chunk.WFQYTXCB.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.KWBYYSH3.js.map → chunk.WQHKUNR7.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.NBLL7VAA.js.map → chunk.X57DRPFB.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.L45HXBDS.js.map → chunk.X7YTDVNT.js.map} +0 -0
- /package/esm/core/{base/base-label-aware-component.js → mixins/label/with-label-aware.js} +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/dialog/dialog-constants.ts", "../../src/dialog/dialog-foundation.ts", "../../src/dialog/dialog-adapter.ts", "../../src/dialog/dialog.ts", "../../src/dialog/index.ts"],
|
|
4
|
+
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\nimport { BACKDROP_CONSTANTS } from '../backdrop';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}dialog`;\n\nconst classes = {\n ANIMATING: 'forge-dialog--animating',\n OPEN: 'forge-dialog--open',\n ACTION_BUTTON: 'forge-dialog__action__button',\n BUTTON_TEXT: 'forge-button__text',\n SCROLLABLE: 'forge-dialog--scrollable',\n FULLSCREEN: 'forge-dialog--fullscreen',\n MOVEABLE: 'forge-dialog--moveable'\n};\n\nconst attributes = {\n BACKDROP_CLOSE: 'backdrop-close',\n ESCAPE_CLOSE: 'escape-close',\n FULLSCREEN: 'fullscreen',\n POSITION_TYPE: 'position-type',\n POSITION_X: 'position-x',\n POSITION_Y: 'position-y',\n MOVEABLE: 'moveable',\n MOVE_TARGET: 'move-target',\n OPEN: 'open',\n BODY_OPEN: 'forge-dialog-open',\n INITIAL_FOCUS: 'forge-dialog-focus',\n DFEAULT_MOVE_TARGET: 'forge-dialog-move-target'\n};\n\nconst selectors = {\n CONTAINER: '.forge-dialog',\n SURFACE: '.forge-dialog__surface',\n BACKDROP: BACKDROP_CONSTANTS.elementName,\n INITIAL_FOCUS: `[${attributes.INITIAL_FOCUS}]`,\n DFEAULT_MOVE_TARGET: `[${attributes.DFEAULT_MOVE_TARGET}]`,\n CONTENT: '.forge-dialog__body'\n};\n\nconst events = {\n BEFORE_CLOSE: `${elementName}-before-close`,\n OPEN: `${elementName}-open`,\n CLOSE: `${elementName}-close`,\n READY: `${elementName}-ready`,\n MOVE_START: `${elementName}-move-start`,\n MOVED: `${elementName}-move`,\n MOVE_END: `${elementName}-move-end`\n};\n\nconst numbers = {\n ANIMATION_DURATION: 150,\n BACKDROP_MAX_OPACITY: 0.3\n};\n\nexport const DIALOG_CONSTANTS = {\n elementName,\n classes,\n selectors,\n attributes,\n events,\n numbers\n};\n\nexport interface IDialogMoveEventData {\n x: number;\n y: number;\n}\n\nexport interface IDialogMoveContext {\n top: number;\n left: number;\n height: number;\n width: number;\n}\n\nexport interface IDialogMoveStartEventData extends IDialogMoveEventData {}\n\nexport type DialogPositionType = 'absolute' | 'relative';\nexport type DialogStateCallback = () => boolean | void | Promise<boolean | void>;\n", "import { ICustomElementFoundation, isDefined, isNumber, isString } from '@tylertech/forge-core';\nimport { IDialogAdapter } from './dialog-adapter';\nimport { DialogPositionType, DialogStateCallback, DIALOG_CONSTANTS, IDialogMoveContext, IDialogMoveStartEventData } from './dialog-constants';\n\nexport interface IDialogFoundation extends ICustomElementFoundation {\n backdropClose: boolean;\n escapeClose: boolean;\n open: boolean;\n fullscreen: boolean;\n openCallback: DialogStateCallback;\n closeCallback: DialogStateCallback;\n beforeCloseCallback: DialogStateCallback;\n positionType: DialogPositionType;\n positionX: number | string | null | undefined;\n positionY: number | string | null | undefined;\n moveable: boolean;\n moveTarget: string;\n initializeMoveTarget(): void;\n resetPosition(): void;\n show(parent?: HTMLElement): Promise<void>;\n hide(remove?: boolean): Promise<void>;\n}\n\nexport class DialogFoundation implements IDialogFoundation {\n // Private vars\n private _open = false;\n private _backdropClose = true;\n private _escapeClose = true;\n private _fullscreen = false;\n private _openCallback: DialogStateCallback;\n private _closeCallback: DialogStateCallback;\n private _beforeCloseCallback: DialogStateCallback;\n private _positionType: DialogPositionType = 'absolute';\n private _positionX: string | null = null;\n private _positionY: string | null = null;\n private _moveable = false;\n private _moveTarget = DIALOG_CONSTANTS.selectors.DFEAULT_MOVE_TARGET;\n private _isAnimating = false;\n private _isMoving = false;\n private _moveContext: IDialogMoveContext | undefined;\n private _lastPosition: { x: number; y: number } | undefined;\n\n // Event handlers\n private _transitionEndHandler: (evt: TransitionEvent) => void;\n private _documentKeydownHandler: (evt: KeyboardEvent) => void;\n private _backdropClickHandler: (evt: CustomEvent) => void;\n private _moveTargetMouseDownHandler: (evt: MouseEvent) => void;\n private _moveTargetMouseMoveHandler: (evt: MouseEvent) => void;\n private _moveTargetMouseUpHandler: (evt: MouseEvent) => void;\n\n constructor(public _adapter: IDialogAdapter) {\n this._transitionEndHandler = (evt: TransitionEvent) => this._onTransitionEnd();\n this._documentKeydownHandler = (evt: KeyboardEvent) => this._onDocumentKeydown(evt);\n this._backdropClickHandler = (evt: CustomEvent) => this._onBackdropClick(evt);\n this._moveTargetMouseDownHandler = (evt: MouseEvent) => this._onMoveTargetMouseDown(evt);\n this._moveTargetMouseMoveHandler = (evt: MouseEvent) => this._onMoveTargetMouseMove(evt);\n this._moveTargetMouseUpHandler = (evt: MouseEvent) => this._onMoveTargetMouseUp(evt);\n }\n\n public initialize(): void {\n this._adapter.initializeAccessibility();\n if (this._open) {\n if (this._moveable) {\n this._adapter.setMoveable(this._moveable);\n this._initMoveTarget();\n }\n }\n }\n\n public destroy(): void {\n if (this._open) {\n this._removeDragHandlers();\n this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler);\n this._adapter.removeDocumentListener('keydown', this._documentKeydownHandler);\n this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler);\n }\n }\n\n private async _applyOpen(value: boolean): Promise<void> {\n if (value) {\n if (typeof this._openCallback === 'function' && !await this._executeOpenCallback()) {\n return;\n }\n this._open = value;\n this._openDialog();\n } else {\n if (typeof this._closeCallback === 'function' && !await this._executeCloseCallback()) {\n return;\n }\n this._open = value;\n this._closeDialog();\n }\n\n this._adapter.toggleHostAttribute(DIALOG_CONSTANTS.attributes.OPEN, this._open);\n }\n\n private async _executeOpenCallback(): Promise<boolean> {\n try {\n return await Promise.resolve(this._openCallback()) !== false;\n } catch (e) {\n return false;\n }\n }\n\n private async _executeCloseCallback(): Promise<boolean> {\n try {\n return await Promise.resolve(this._closeCallback()) !== false;\n } catch (e) {\n return false;\n }\n }\n\n public initializeMoveTarget(): void {\n if (!this._moveTarget) {\n this._moveTarget = DIALOG_CONSTANTS.selectors.DFEAULT_MOVE_TARGET;\n }\n this._initMoveTarget();\n }\n\n public resetPosition(): void {\n this._adapter.setSurfacePosition(this._positionX, this._positionY, this._positionType);\n }\n\n public async show(parent?: HTMLElement): Promise<void> {\n if (this._open) {\n return;\n }\n \n this._open = true;\n if (!this._adapter.isConnected) {\n this._adapter.attach(parent);\n }\n await this._openDialog();\n }\n\n public async hide(remove?: boolean): Promise<void> {\n if (!this._open) {\n return;\n }\n\n this._open = false;\n await this._closeDialog();\n if (remove) {\n this._adapter.detach();\n }\n }\n\n private _normalizePositionValue(value: number | string | null | undefined): string | null {\n if (isNumber(value)) {\n return `${value}px`;\n } else if (isString(value)) {\n return value;\n }\n return null;\n }\n\n private _openDialog(): Promise<void> {\n if (!this._fullscreen) {\n if (this._moveable) {\n this._adapter.setMoveable(this._moveable);\n }\n if (this._positionX !== null || this._positionY !== null) {\n this._adapter.setSurfacePosition(this._positionX, this._positionY, this._positionType);\n }\n }\n\n this._adapter.setBodyAttribute(DIALOG_CONSTANTS.attributes.BODY_OPEN, 'true');\n this._adapter.registerTransitionEndHandler(this._transitionEndHandler);\n this._setDocumentKeydownListener(this._escapeClose);\n this._adapter.setAnimating(true);\n this._isAnimating = true;\n\n // Ensure transitions are triggered properly\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n this._adapter.setVisibility(true);\n this._setBackdropClickListener(this._backdropClose); // Must come after setting visibility because the backdrop may not yet exist\n this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.OPEN);\n this._adapter.trySetInitialFocus();\n if (this._adapter.isScrollable()) {\n this._adapter.addRootClass(DIALOG_CONSTANTS.classes.SCROLLABLE);\n }\n });\n });\n\n return new Promise<void>(resolve => {\n // Wait for the dialog to finish animating open, then emit the ready event and attach any listeners\n window.setTimeout(() => {\n window.requestAnimationFrame(() => {\n if (this._open && this._isAnimating) {\n this._onTransitionEnd();\n resolve();\n }\n });\n }, DIALOG_CONSTANTS.numbers.ANIMATION_DURATION);\n });\n }\n\n private _closeDialog(): Promise<void> {\n if (this._moveTarget) {\n this._removeDragHandlers();\n }\n\n this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler);\n\n if (this._escapeClose) {\n this._adapter.removeDocumentListener('keydown', this._documentKeydownHandler);\n }\n if (this._backdropClose) {\n this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler);\n }\n\n this._isAnimating = false;\n this._moveContext = undefined;\n this._lastPosition = undefined;\n this._adapter.setAnimating(true);\n this._adapter.setVisibility(false);\n this._adapter.setSurfacePosition(null, null, null);\n\n return new Promise<void>(resolve => {\n setTimeout(() => {\n this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.CLOSE);\n const openDialogs = this._adapter.getOpenDialogs(`${DIALOG_CONSTANTS.elementName}[${DIALOG_CONSTANTS.attributes.OPEN}]`);\n if (!openDialogs.length) {\n this._adapter.removeBodyAttribute(DIALOG_CONSTANTS.attributes.BODY_OPEN);\n }\n this._adapter.setAnimating(false);\n resolve();\n }, DIALOG_CONSTANTS.numbers.ANIMATION_DURATION);\n });\n }\n\n private _onTransitionEnd(): void {\n if (!this._isAnimating) {\n return;\n }\n\n this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler);\n this._adapter.setAnimating(false);\n this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.READY);\n\n if (this._moveable) {\n this._initMoveTarget();\n }\n \n this._isAnimating = false;\n }\n\n private _initMoveTarget(): void {\n if (!this._fullscreen && this._moveable && this._moveTarget && this._adapter.setMoveTarget(this._moveTarget)) {\n this._adapter.setMoveTargetHandler('mousedown', this._moveTargetMouseDownHandler);\n }\n }\n\n private _removeDragHandlers(): void {\n this._adapter.removeDragTargetHandler('mousedown', this._moveTargetMouseDownHandler);\n this._adapter.removeDocumentListener('mousemove', this._moveTargetMouseMoveHandler);\n this._adapter.removeDocumentListener('mouseup', this._moveTargetMouseUpHandler);\n }\n\n private _onMoveTargetMouseDown(evt: MouseEvent): void {\n evt.preventDefault();\n this._adapter.captureActiveElement();\n const bounds = this._adapter.getSurfaceBounds();\n this._moveContext = {\n top: evt.pageY - bounds.top,\n left: evt.pageX - bounds.left,\n height: bounds.height,\n width: bounds.width\n };\n this._adapter.setDocumentListener('mousemove', this._moveTargetMouseMoveHandler);\n this._adapter.setDocumentListener('mouseup', this._moveTargetMouseUpHandler);\n }\n\n private _onMoveTargetMouseMove(evt: MouseEvent): void {\n evt.preventDefault();\n const position = this._calculateOffsetPosition(evt.pageX, evt.pageY, this._moveContext);\n\n // If this is the beginning of the move sequence, we emit the start event (to allow for preventing default) and\n // then update the surface position if not prevented\n if (!this._isMoving) {\n this._isMoving = true;\n const canDrag = this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.MOVE_START, position as IDialogMoveStartEventData, true, true);\n if (!canDrag) {\n return;\n }\n }\n\n // Ensure that the surface position stays within the bounds of the screen\n const newPosition = this._clampPosition(position, this._moveContext);\n\n // Only update the position if it actually changed\n if (!this._lastPosition || newPosition.x !== this._lastPosition.x || newPosition.y !== this._lastPosition.y) {\n const canMove = this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.MOVED, newPosition as IDialogMoveStartEventData, true, true);\n if (canMove) {\n this._lastPosition = { ...newPosition };\n const newX = this._normalizePositionValue(newPosition.x);\n const newY = this._normalizePositionValue(newPosition.y);\n this._adapter.setSurfacePosition(newX, newY, 'absolute');\n }\n }\n }\n\n private _onMoveTargetMouseUp(evt: MouseEvent): void {\n if (this._isMoving) {\n this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.MOVE_END);\n }\n this._moveComplete();\n }\n\n private _moveComplete(): void {\n this._adapter.tryRestoreActiveElement();\n this._adapter.removeDocumentListener('mousemove', this._moveTargetMouseMoveHandler);\n this._adapter.removeDocumentListener('mouseup', this._moveTargetMouseUpHandler);\n this._lastPosition = undefined;\n this._moveContext = undefined;\n this._isMoving = false;\n }\n\n private _onDocumentKeydown(evt: KeyboardEvent): void {\n evt.stopPropagation();\n if (evt.key && (evt.key === 'Escape' || evt.key === 'Esc')) {\n this._tryClose();\n }\n }\n\n private _onBackdropClick(evt: CustomEvent): void {\n evt.stopPropagation();\n this._tryClose();\n }\n\n private async _tryClose(): Promise<void> {\n const isCancelled = !this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.BEFORE_CLOSE, undefined, undefined, true);\n if (isCancelled) {\n return;\n }\n\n if (!this._beforeCloseCallback) {\n this.open = false;\n return;\n }\n\n try {\n const shouldClose = await Promise.resolve(this._beforeCloseCallback()) !== false;\n if (shouldClose) {\n this.open = false;\n return;\n }\n } catch (err) {\n return;\n }\n }\n\n private _setBackdropClickListener(attach: boolean): void {\n if (!this._open) {\n return;\n }\n\n if (attach && this._backdropClose) {\n this._adapter.registerBackdropClickHandler(this._backdropClickHandler);\n } else if (!attach) {\n this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler);\n }\n }\n\n private _setDocumentKeydownListener(attach: boolean): void {\n if (!this._open) {\n return;\n }\n\n if (attach && this._escapeClose) {\n this._adapter.setDocumentListener('keydown', this._documentKeydownHandler);\n } else if (!attach) {\n this._adapter.removeDocumentListener('keydown', this._documentKeydownHandler);\n }\n }\n\n private _calculateOffsetPosition(pageX: number, pageY: number, context?: IDialogMoveContext): { x: number; y: number } {\n return {\n x: pageX - (context?.left || 0),\n y: pageY - (context?.top || 0)\n };\n }\n\n private _clampPosition({ x, y }: { x: number; y: number }, context?: IDialogMoveContext): { x: number; y: number } {\n let width = 0;\n let height = 0;\n\n if (context) {\n width = context.width;\n height = context.height;\n }\n\n if (x <= 0) {\n x = 0;\n } else if (x + width >= window.innerWidth) {\n x = window.innerWidth - width;\n }\n\n if (y <= 0) {\n y = 0;\n } else if (y + height >= window.innerHeight) {\n y = window.innerHeight - height;\n }\n\n return { x, y };\n }\n\n /** Controls whether clicking the backdrop closes the dialog or not. */\n public set backdropClose(value: boolean) {\n value = Boolean(value);\n if (this._backdropClose !== value) {\n this._backdropClose = value;\n this._setBackdropClickListener(this._backdropClose);\n this._adapter.toggleHostAttribute(DIALOG_CONSTANTS.attributes.BACKDROP_CLOSE, this._backdropClose);\n }\n }\n public get backdropClose(): boolean {\n return this._backdropClose;\n }\n\n /** Controls whether pressing the escape key closes the dialog or not. */\n public set escapeClose(value: boolean) {\n value = Boolean(value);\n if (this._escapeClose !== value) {\n this._escapeClose = !!value;\n this._setDocumentKeydownListener(this._escapeClose);\n this._adapter.toggleHostAttribute(DIALOG_CONSTANTS.attributes.ESCAPE_CLOSE, this._escapeClose);\n }\n }\n public get escapeClose(): boolean {\n return this._escapeClose;\n }\n\n public get open(): boolean {\n return this._open;\n }\n public set open(value: boolean) {\n if (this._open !== value) {\n this._applyOpen(!!value);\n }\n }\n\n public get fullscreen(): boolean {\n return this._fullscreen;\n }\n public set fullscreen(value: boolean) {\n if (this._fullscreen !== value) {\n this._fullscreen = !!value;\n this._adapter.setFullscreen(this._fullscreen);\n this._adapter.toggleHostAttribute(DIALOG_CONSTANTS.attributes.FULLSCREEN, this._fullscreen);\n }\n }\n\n public get openCallback(): DialogStateCallback {\n return this._openCallback;\n }\n public set openCallback(callback: DialogStateCallback) {\n this._openCallback = callback;\n }\n\n public get closeCallback(): DialogStateCallback {\n return this._closeCallback;\n }\n public set closeCallback(callback: DialogStateCallback) {\n this._closeCallback = callback;\n }\n\n public get beforeCloseCallback(): DialogStateCallback {\n return this._beforeCloseCallback;\n }\n public set beforeCloseCallback(callback: DialogStateCallback) {\n this._beforeCloseCallback = callback;\n }\n\n public get positionType(): DialogPositionType {\n return this._positionType;\n }\n public set positionType(value: DialogPositionType) {\n if (this._positionType !== value) {\n this._positionType = value;\n if (this._open) {\n this._adapter.setSurfacePosition(this._positionX, this._positionY, this._positionType);\n }\n }\n }\n\n public get positionX(): number | string | null | undefined {\n return this._positionX;\n }\n public set positionX(value: number | string | null | undefined) {\n if (this._positionX !== value) {\n this._positionX = this._normalizePositionValue(value);\n if (this._open) {\n this._adapter.setSurfacePosition(this._positionX, this._positionY, this._positionType);\n }\n }\n }\n\n public get positionY(): number | string | null | undefined {\n return this._positionY;\n }\n public set positionY(value: number | string | null | undefined) {\n if (this._positionY !== value) {\n this._positionY = this._normalizePositionValue(value);\n if (this._open) {\n this._adapter.setSurfacePosition(this._positionX, this._positionY, this._positionType);\n }\n }\n }\n\n public get moveable(): boolean {\n return this._moveable;\n }\n public set moveable(value: boolean) {\n if (this._moveable !== value) {\n this._moveable = !!value;\n\n if (this._open) {\n this._adapter.setMoveable(this._moveable);\n if (this._moveable) {\n this._initMoveTarget();\n } else {\n this._removeDragHandlers();\n this._isMoving = false;\n }\n }\n\n this._adapter.toggleHostAttribute(DIALOG_CONSTANTS.attributes.MOVEABLE, this._moveable);\n }\n }\n\n public get moveTarget(): string {\n return this._moveTarget;\n }\n public set moveTarget(value: string) {\n this._moveTarget = value;\n }\n}\n", "import { deepQuerySelectorAll, getActiveElement, getShadowElement, removeElement, toggleClass } from '@tylertech/forge-core';\nimport { BACKDROP_CONSTANTS, IBackdropComponent } from '../backdrop';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IDialogComponent } from './dialog';\nimport { DialogPositionType, DIALOG_CONSTANTS } from './dialog-constants';\n\nexport interface IDialogAdapter extends IBaseAdapter {\n initializeAccessibility(): void;\n setAnimating(animating: boolean): void;\n setVisibility(visible: boolean): void;\n attach(parent?: HTMLElement): void;\n detach(): void;\n setDocumentListener(type: string, listener: (evt: Event) => void): void;\n removeDocumentListener(type: string, listener: (evt: Event) => void): void;\n registerTransitionEndHandler: (handler: (evt: TransitionEvent) => void) => void;\n deregisterTransitionEndHandler: (handler: (evt: TransitionEvent) => void) => void;\n registerBackdropClickHandler: (handler: (evt: CustomEvent) => void) => void;\n deregisterBackdropClickHandler: (handler: (evt: CustomEvent) => void) => void;\n getOpenDialogs: (selector: string) => NodeListOf<HTMLElement>;\n setBodyAttribute: (name: string, value: string) => void;\n removeBodyAttribute: (name: string) => void;\n trySetInitialFocus: () => void;\n isScrollable(): boolean;\n addRootClass(name: string): void;\n setFullscreen(value: boolean): void;\n setMoveable(value: boolean): void;\n setMoveTarget(selector: string): boolean;\n setMoveTargetHandler(type: string, listener: (evt: MouseEvent) => void): void;\n removeDragTargetHandler(type: string, listener: (evt: MouseEvent) => void): void;\n getSurfaceBounds(): DOMRect;\n setSurfacePosition(x: string | null, y: string | null, positionType: DialogPositionType | null): void;\n captureActiveElement(): void;\n tryRestoreActiveElement(): void;\n}\n\n/**\n * Provides facilities for interacting with the internal DOM of `DialogComponent`.\n */\nexport class DialogAdapter extends BaseAdapter<IDialogComponent> implements IDialogAdapter {\n private _backdropElement?: IBackdropComponent;\n private _containerElement: HTMLElement;\n private _surfaceElement: HTMLElement;\n private _moveTargetElement: HTMLElement | null;\n private _activeElement: HTMLElement | undefined;\n\n constructor(component: IDialogComponent) {\n super(component);\n this._containerElement = getShadowElement(component, DIALOG_CONSTANTS.selectors.CONTAINER);\n this._surfaceElement = getShadowElement(component, DIALOG_CONSTANTS.selectors.SURFACE);\n }\n\n public initializeAccessibility(): void {\n if (!this._component.hasAttribute('role')) {\n this._component.setAttribute('role', 'dialog');\n }\n this._component.setAttribute('aria-modal', 'true');\n }\n\n public setAnimating(animating: boolean): void {\n toggleClass(this._containerElement, animating, DIALOG_CONSTANTS.classes.ANIMATING);\n }\n\n public setVisibility(visible: boolean): void {\n toggleClass(this._containerElement, visible, DIALOG_CONSTANTS.classes.OPEN);\n\n if (!this._backdropElement) {\n this._backdropElement = document.createElement('forge-backdrop');\n this._backdropElement.setAttribute('part', 'scrim');\n this._containerElement.appendChild(this._backdropElement);\n }\n \n if (visible) {\n this._backdropElement.fadeIn();\n } else {\n this._backdropElement.fadeOut();\n }\n }\n\n public attach(parent: HTMLElement = document.body): void {\n parent.appendChild(this._component);\n }\n\n public detach(): void {\n if (this._activeElement) {\n this._activeElement = undefined;\n }\n removeElement(this._component);\n }\n\n public registerTransitionEndHandler(handler: (evt: TransitionEvent) => void): void {\n this._surfaceElement.addEventListener('transitionend', handler);\n }\n\n public deregisterTransitionEndHandler(handler: (evt: TransitionEvent) => void): void {\n this._surfaceElement.removeEventListener('transitionend', handler);\n }\n\n public setDocumentListener(type: string, listener: (evt: Event) => void): void {\n document.addEventListener(type, listener);\n }\n\n public removeDocumentListener(type: string, listener: (evt: Event) => void): void {\n document.removeEventListener(type, listener);\n }\n\n public registerBackdropClickHandler(handler: (evt: CustomEvent) => void): void {\n this._backdropElement?.addEventListener(BACKDROP_CONSTANTS.events.BACKDROP_CLICK, handler);\n }\n\n public deregisterBackdropClickHandler(handler: (evt: CustomEvent) => void): void {\n this._backdropElement?.removeEventListener(BACKDROP_CONSTANTS.events.BACKDROP_CLICK, handler);\n }\n\n public getOpenDialogs(selector: string): NodeListOf<HTMLElement> {\n return document.querySelectorAll(selector);\n }\n\n public setBodyAttribute(name: string, value: string): void {\n document.body.setAttribute(name, value);\n }\n\n public removeBodyAttribute(name: string): void {\n document.body.removeAttribute(name);\n }\n\n public trySetInitialFocus(): void {\n const elements = deepQuerySelectorAll(this._component, DIALOG_CONSTANTS.selectors.INITIAL_FOCUS);\n if (elements && elements.length) {\n const initialElement = elements[elements.length - 1] as HTMLElement;\n initialElement.focus();\n }\n }\n\n public isScrollable(): boolean {\n const contentElement = this._component.querySelector(DIALOG_CONSTANTS.selectors.CONTENT) as HTMLElement;\n if (contentElement) {\n return contentElement.scrollHeight > contentElement.offsetHeight;\n }\n return false;\n }\n\n public addRootClass(name: string): void {\n this._component.classList.add(name);\n }\n\n public setFullscreen(value: boolean): void {\n toggleClass(this._containerElement, value, DIALOG_CONSTANTS.classes.FULLSCREEN);\n }\n\n public setMoveable(value: boolean): void {\n toggleClass(this._containerElement, value, DIALOG_CONSTANTS.classes.MOVEABLE);\n }\n\n public setMoveTarget(selector: string): boolean {\n if (!selector) {\n return false;\n }\n this._moveTargetElement = this._component.querySelector(selector);\n return !!this._moveTargetElement;\n }\n\n public setMoveTargetHandler(type: string, listener: (evt: MouseEvent) => void): void {\n this._moveTargetElement?.addEventListener(type, listener);\n }\n\n public removeDragTargetHandler(type: string, listener: (evt: MouseEvent) => void): void {\n this._moveTargetElement?.removeEventListener(type, listener);\n }\n\n public getSurfaceBounds(): DOMRect {\n return this._surfaceElement.getBoundingClientRect() as DOMRect;\n }\n\n public setSurfacePosition(x: string | null, y: string | null, positionType: DialogPositionType | null): void {\n if (positionType) {\n this._surfaceElement.style.position = positionType === 'absolute' ? positionType : 'relative';\n } else {\n this._surfaceElement.style.removeProperty('position');\n }\n\n if (y !== null) {\n this._surfaceElement.style.top = y;\n } else {\n this._surfaceElement.style.removeProperty('top');\n }\n\n if (x !== null) {\n this._surfaceElement.style.left = x;\n } else {\n this._surfaceElement.style.removeProperty('left');\n }\n }\n\n public captureActiveElement(): void {\n this._activeElement = getActiveElement(this._component.ownerDocument) as HTMLElement;\n this._activeElement?.blur();\n }\n\n public tryRestoreActiveElement(): void {\n if (this._activeElement) {\n if (this._activeElement.isConnected) {\n this._activeElement.focus();\n }\n this._activeElement = undefined;\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\n\nimport { DialogFoundation } from './dialog-foundation';\nimport { DialogAdapter } from './dialog-adapter';\nimport { DIALOG_CONSTANTS, DialogPositionType, IDialogMoveStartEventData, IDialogMoveEventData, DialogStateCallback } from './dialog-constants';\nimport { BackdropComponent } from '../backdrop';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\n\nconst template = '<template><div class=\\\"forge-dialog\\\" part=\\\"root\\\"><div class=\\\"forge-dialog__surface\\\" part=\\\"surface\\\"><slot></slot></div></div></template>';\nconst styles = '.forge-dialog{position:fixed;top:0;bottom:0;left:0;right:0;z-index:8;z-index:var(--forge-z-index-dialog,8);-webkit-box-align:center;align-items:center;-webkit-box-align:var(--forge-dialog-align-items,center);align-items:var(--forge-dialog-align-items,center);top:0;top:var(--forge-dialog-top,0);padding:24px;padding:var(--forge-dialog-padding,24px);display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;visibility:hidden}@media (max-width:599px){.forge-dialog{padding:0}}.forge-dialog--moveable:not(.forge-dialog--fullscreen) ::slotted([forge-dialog-move-target]){cursor:move}.forge-dialog--animating{visibility:visible}.forge-dialog--animating .forge-dialog--open .forge-dialog__surface{-webkit-transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1)}.forge-dialog--animating .forge-dialog__surface{-webkit-transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1)}.forge-dialog--scrollable .forge-dialog__footer,.forge-dialog--scrollable .forge-dialog__title{border-color:rgba(0,0,0,.12)}.forge-dialog--open{visibility:visible!important}.forge-dialog--open .forge-dialog__surface{-webkit-transform:scale(1);transform:scale(1);opacity:1}.forge-dialog__surface{-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);background-color:#fff;background-color:var(--mdc-theme-surface,#fff);width:auto;width:var(--forge-dialog-width,auto);height:auto;height:var(--forge-dialog-height,auto);min-width:280px;min-width:var(--forge-dialog-min-width,280px);max-width:100%;max-width:var(--forge-dialog-max-width,100%);max-height:100%;max-height:var(--forge-dialog-max-height,100%);border-radius:4px;border-radius:var(--forge-dialog-border-radius,var(--mdc-shape-medium,4px));overflow:visible;overflow:var(--forge-dialog-overflow,visible);display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transform:scale(.8);transform:scale(.8);opacity:0;z-index:inherit}.forge-dialog__header{margin:0;padding:0 24px 9px;border-bottom:1px solid transparent}.forge-dialog__title{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:1.25rem;font-size:var(--forge-typography-title-font-size, 1.25rem);line-height:2rem;line-height:var(--forge-typography-title-line-height, 2rem);font-weight:400;font-weight:var(--forge-typography-title-font-weight,400);letter-spacing:.0125em;letter-spacing:var(--forge-typography-title-letter-spacing, .0125em);text-decoration:inherit;-webkit-text-decoration:var(--forge-typography-title-text-decoration,inherit);text-decoration:var(--forge-typography-title-text-decoration,inherit);text-transform:inherit;text-transform:var(--forge-typography-title-text-transform,inherit);-webkit-box-sizing:border-box;box-sizing:border-box;margin:0}.forge-dialog__title::before{display:inline-block;width:0;height:40px;content:\\\"\\\";vertical-align:0}.forge-dialog__body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-body1-font-size, 1rem);line-height:1.5rem;line-height:var(--mdc-typography-body1-line-height, 1.5rem);font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);padding-top:20px;padding:0 24px 24px;overflow:auto}.forge-dialog__body--scrollable{max-height:195px;border-top:1px solid rgba(0,0,0,.1);border-bottom:1px solid rgba(0,0,0,.1);overflow-x:auto;overflow-y:scroll;-webkit-overflow-scrolling:touch}.forge-dialog__footer{display:-webkit-box;display:flex;position:relative;flex-shrink:0;flex-wrap:wrap;-webkit-box-align:center;align-items:center;-webkit-box-pack:end;justify-content:flex-end;-webkit-box-sizing:border-box;box-sizing:border-box;min-height:52px;margin:0;padding:8px;border-top:1px solid transparent}.forge-dialog--fullscreen{padding:0}.forge-dialog--fullscreen .forge-dialog__surface{height:100%;width:100%;min-width:auto;max-width:100%;border-radius:0}:host{display:block}:host([hidden]){display:none}';\n\nexport interface IDialogComponent extends IBaseComponent {\n backdropClose: boolean;\n escapeClose: boolean;\n open: boolean;\n fullscreen: boolean;\n openCallback: DialogStateCallback;\n closeCallback: DialogStateCallback;\n beforeCloseCallback: () => boolean | Promise<boolean>;\n positionType: DialogPositionType;\n positionX: number | string | null | undefined;\n positionY: number | string | null | undefined;\n moveable: boolean;\n moveTarget: string;\n initializeMoveTarget(): void;\n resetPosition(): void;\n show(parent?: HTMLElement): Promise<void>;\n hide(remove?: boolean): Promise<void>;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-dialog': IDialogComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-dialog-before-close': CustomEvent<void>;\n 'forge-dialog-open': CustomEvent<void>;\n 'forge-dialog-close': CustomEvent<void>;\n 'forge-dialog-ready': CustomEvent<void>;\n 'forge-dialog-move-start': CustomEvent<IDialogMoveStartEventData>;\n 'forge-dialog-move': CustomEvent<IDialogMoveEventData>;\n 'forge-dialog-move-end': CustomEvent<void>;\n }\n}\n\n/**\n * The web component class behind the `<forge-dialog>` custom element.\n * \n * @tag forge-dialog\n */\n@CustomElement({\n name: DIALOG_CONSTANTS.elementName,\n dependencies: [BackdropComponent]\n})\nexport class DialogComponent extends BaseComponent implements IDialogComponent {\n public static get observedAttributes(): string[] {\n return [\n DIALOG_CONSTANTS.attributes.BACKDROP_CLOSE,\n DIALOG_CONSTANTS.attributes.ESCAPE_CLOSE,\n DIALOG_CONSTANTS.attributes.OPEN,\n DIALOG_CONSTANTS.attributes.FULLSCREEN,\n DIALOG_CONSTANTS.attributes.POSITION_TYPE,\n DIALOG_CONSTANTS.attributes.POSITION_X,\n DIALOG_CONSTANTS.attributes.POSITION_Y,\n DIALOG_CONSTANTS.attributes.MOVEABLE,\n DIALOG_CONSTANTS.attributes.MOVE_TARGET\n ];\n }\n\n private _foundation: DialogFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new DialogFoundation(new DialogAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.destroy();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case DIALOG_CONSTANTS.attributes.BACKDROP_CLOSE:\n this.backdropClose = newValue === 'true';\n break;\n case DIALOG_CONSTANTS.attributes.ESCAPE_CLOSE:\n this.escapeClose = newValue === 'true';\n break;\n case DIALOG_CONSTANTS.attributes.OPEN:\n this.open = coerceBoolean(newValue);\n break;\n case DIALOG_CONSTANTS.attributes.FULLSCREEN:\n this.fullscreen = coerceBoolean(newValue);\n break;\n case DIALOG_CONSTANTS.attributes.POSITION_TYPE:\n this.positionType = newValue as DialogPositionType;\n break;\n case DIALOG_CONSTANTS.attributes.POSITION_X:\n this.positionX = newValue;\n break;\n case DIALOG_CONSTANTS.attributes.POSITION_Y:\n this.positionY = newValue;\n break;\n case DIALOG_CONSTANTS.attributes.MOVEABLE:\n this.moveable = coerceBoolean(newValue);\n break;\n case DIALOG_CONSTANTS.attributes.MOVE_TARGET:\n this.moveTarget = newValue;\n break;\n }\n }\n\n /** Controls whether clicking the backdrop closes the dialog or not. Default is true. */\n @FoundationProperty()\n public declare backdropClose: boolean;\n\n /** Controls whether pressing the escape key closes the dialog or not. Default is true. */\n @FoundationProperty()\n public declare escapeClose: boolean;\n\n /** Controls whether the dialog is open or not. Default is false. */\n @FoundationProperty()\n public declare open: boolean;\n\n /** Controls whether the dialog is full screen or not. Default is false. */\n @FoundationProperty()\n public declare fullscreen: boolean;\n\n /** The function to call when the dialog wants to open. */\n @FoundationProperty()\n public declare openCallback: DialogStateCallback;\n\n /** the function to call when the dialog wants to close. */\n @FoundationProperty()\n public declare closeCallback: DialogStateCallback;\n\n /** the function to call when the dialog wants to close. */\n @FoundationProperty()\n public declare beforeCloseCallback: () => boolean | Promise<boolean>;\n\n /** Gets/sets the position type when using custom positioning values. Default is 'absolute'. */\n @FoundationProperty()\n public declare positionType: DialogPositionType;\n\n /** Controls the horizontal position of the dialog surface. */\n @FoundationProperty()\n public declare positionX: number | string | null | undefined;\n\n /** Controls the vertical position of the dialog surface. */\n @FoundationProperty()\n public declare positionY: number | string | null | undefined;\n\n /** Gets/sets whether the dialog surface can be moved or not. */\n @FoundationProperty()\n public declare moveable: boolean;\n\n /** Gets/sets the selector used to target the element that is used as the drag target. */\n @FoundationProperty()\n public declare moveTarget: string;\n\n public initializeMoveTarget(): void {\n this._foundation.initializeMoveTarget();\n }\n\n public resetPosition(): void {\n this._foundation.resetPosition();\n }\n\n public show(parent?: HTMLElement): Promise<void> {\n return this._foundation.show(parent);\n }\n public hide(remove?: boolean): Promise<void> {\n return this._foundation.hide(remove);\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { DialogComponent } from './dialog';\n\nexport * from './dialog-adapter';\nexport * from './dialog-constants';\nexport * from './dialog-foundation';\nexport * from './dialog';\n\nexport function defineDialogComponent(): void {\n defineCustomElement(DialogComponent);\n}\n"],
|
|
5
|
+
"mappings": "6YAGA,IAAMA,EAA2C,GAAGC,UAE9CC,EAAU,CACd,UAAW,0BACX,KAAM,qBACN,cAAe,+BACf,YAAa,qBACb,WAAY,2BACZ,WAAY,2BACZ,SAAU,wBACZ,EAEMC,EAAa,CACjB,eAAgB,iBAChB,aAAc,eACd,WAAY,aACZ,cAAe,gBACf,WAAY,aACZ,WAAY,aACZ,SAAU,WACV,YAAa,cACb,KAAM,OACN,UAAW,oBACX,cAAe,qBACf,oBAAqB,0BACvB,EAEMC,EAAY,CAChB,UAAW,gBACX,QAAS,yBACT,SAAUC,EAAmB,YAC7B,cAAe,IAAIF,EAAW,iBAC9B,oBAAqB,IAAIA,EAAW,uBACpC,QAAS,qBACX,EAEMG,EAAS,CACb,aAAc,GAAGN,iBACjB,KAAM,GAAGA,SACT,MAAO,GAAGA,UACV,MAAO,GAAGA,UACV,WAAY,GAAGA,eACf,MAAO,GAAGA,SACV,SAAU,GAAGA,YACf,EAEMO,EAAU,CACd,mBAAoB,IACpB,qBAAsB,EACxB,EAEaC,EAAmB,CAC9B,YAAAR,EACA,QAAAE,EACA,UAAAE,EACA,WAAAD,EACA,OAAAG,EACA,QAAAC,CACF,ECtCO,IAAME,EAAN,KAAoD,CA2BzD,YAAmBC,EAA0B,CAA1B,cAAAA,EAzBnB,KAAQ,MAAQ,GAChB,KAAQ,eAAiB,GACzB,KAAQ,aAAe,GACvB,KAAQ,YAAc,GAItB,KAAQ,cAAoC,WAC5C,KAAQ,WAA4B,KACpC,KAAQ,WAA4B,KACpC,KAAQ,UAAY,GACpB,KAAQ,YAAcC,EAAiB,UAAU,oBACjD,KAAQ,aAAe,GACvB,KAAQ,UAAY,GAalB,KAAK,sBAAyBC,GAAyB,KAAK,iBAAiB,EAC7E,KAAK,wBAA2BA,GAAuB,KAAK,mBAAmBA,CAAG,EAClF,KAAK,sBAAyBA,GAAqB,KAAK,iBAAiBA,CAAG,EAC5E,KAAK,4BAA+BA,GAAoB,KAAK,uBAAuBA,CAAG,EACvF,KAAK,4BAA+BA,GAAoB,KAAK,uBAAuBA,CAAG,EACvF,KAAK,0BAA6BA,GAAoB,KAAK,qBAAqBA,CAAG,CACrF,CAEO,YAAmB,CACxB,KAAK,SAAS,wBAAwB,EAClC,KAAK,OACH,KAAK,YACP,KAAK,SAAS,YAAY,KAAK,SAAS,EACxC,KAAK,gBAAgB,EAG3B,CAEO,SAAgB,CACjB,KAAK,QACP,KAAK,oBAAoB,EACzB,KAAK,SAAS,+BAA+B,KAAK,qBAAqB,EACvE,KAAK,SAAS,uBAAuB,UAAW,KAAK,uBAAuB,EAC5E,KAAK,SAAS,+BAA+B,KAAK,qBAAqB,EAE3E,CAEA,MAAc,WAAWC,EAA+B,CACtD,GAAIA,EAAO,CACT,GAAI,OAAO,KAAK,eAAkB,YAAc,CAAC,MAAM,KAAK,qBAAqB,EAC/E,OAEF,KAAK,MAAQA,EACb,KAAK,YAAY,MACZ,CACL,GAAI,OAAO,KAAK,gBAAmB,YAAc,CAAC,MAAM,KAAK,sBAAsB,EACjF,OAEF,KAAK,MAAQA,EACb,KAAK,aAAa,EAGpB,KAAK,SAAS,oBAAoBF,EAAiB,WAAW,KAAM,KAAK,KAAK,CAChF,CAEA,MAAc,sBAAyC,CACrD,GAAI,CACF,OAAO,MAAM,QAAQ,QAAQ,KAAK,cAAc,CAAC,IAAM,EACzD,OAASG,EAAP,CACA,MAAO,EACT,CACF,CAEA,MAAc,uBAA0C,CACtD,GAAI,CACF,OAAO,MAAM,QAAQ,QAAQ,KAAK,eAAe,CAAC,IAAM,EAC1D,OAASA,EAAP,CACA,MAAO,EACT,CACF,CAEO,sBAA6B,CAC7B,KAAK,cACR,KAAK,YAAcH,EAAiB,UAAU,qBAEhD,KAAK,gBAAgB,CACvB,CAEO,eAAsB,CAC3B,KAAK,SAAS,mBAAmB,KAAK,WAAY,KAAK,WAAY,KAAK,aAAa,CACvF,CAEA,MAAa,KAAKI,EAAqC,CACjD,KAAK,QAIT,KAAK,MAAQ,GACR,KAAK,SAAS,aACjB,KAAK,SAAS,OAAOA,CAAM,EAE7B,MAAM,KAAK,YAAY,EACzB,CAEA,MAAa,KAAKC,EAAiC,CAC5C,KAAK,QAIV,KAAK,MAAQ,GACb,MAAM,KAAK,aAAa,EACpBA,GACF,KAAK,SAAS,OAAO,EAEzB,CAEQ,wBAAwBH,EAA0D,CACxF,OAAII,EAASJ,CAAK,EACT,GAAGA,MACDK,EAASL,CAAK,EAChBA,EAEF,IACT,CAEQ,aAA6B,CACnC,OAAK,KAAK,cACJ,KAAK,WACP,KAAK,SAAS,YAAY,KAAK,SAAS,GAEtC,KAAK,aAAe,MAAQ,KAAK,aAAe,OAClD,KAAK,SAAS,mBAAmB,KAAK,WAAY,KAAK,WAAY,KAAK,aAAa,GAIzF,KAAK,SAAS,iBAAiBF,EAAiB,WAAW,UAAW,MAAM,EAC5E,KAAK,SAAS,6BAA6B,KAAK,qBAAqB,EACrE,KAAK,4BAA4B,KAAK,YAAY,EAClD,KAAK,SAAS,aAAa,EAAI,EAC/B,KAAK,aAAe,GAGpB,OAAO,sBAAsB,IAAM,CACjC,OAAO,sBAAsB,IAAM,CACjC,KAAK,SAAS,cAAc,EAAI,EAChC,KAAK,0BAA0B,KAAK,cAAc,EAClD,KAAK,SAAS,cAAcA,EAAiB,OAAO,IAAI,EACxD,KAAK,SAAS,mBAAmB,EAC7B,KAAK,SAAS,aAAa,GAC7B,KAAK,SAAS,aAAaA,EAAiB,QAAQ,UAAU,CAElE,CAAC,CACH,CAAC,EAEM,IAAI,QAAcQ,GAAW,CAElC,OAAO,WAAW,IAAM,CACtB,OAAO,sBAAsB,IAAM,CAC7B,KAAK,OAAS,KAAK,eACrB,KAAK,iBAAiB,EACtBA,EAAQ,EAEZ,CAAC,CACH,EAAGR,EAAiB,QAAQ,kBAAkB,CAChD,CAAC,CACH,CAEQ,cAA8B,CACpC,OAAI,KAAK,aACP,KAAK,oBAAoB,EAG3B,KAAK,SAAS,+BAA+B,KAAK,qBAAqB,EAEnE,KAAK,cACP,KAAK,SAAS,uBAAuB,UAAW,KAAK,uBAAuB,EAE1E,KAAK,gBACP,KAAK,SAAS,+BAA+B,KAAK,qBAAqB,EAGzE,KAAK,aAAe,GACpB,KAAK,aAAe,OACpB,KAAK,cAAgB,OACrB,KAAK,SAAS,aAAa,EAAI,EAC/B,KAAK,SAAS,cAAc,EAAK,EACjC,KAAK,SAAS,mBAAmB,KAAM,KAAM,IAAI,EAE1C,IAAI,QAAcQ,GAAW,CAClC,WAAW,IAAM,CACf,KAAK,SAAS,cAAcR,EAAiB,OAAO,KAAK,EACrC,KAAK,SAAS,eAAe,GAAGA,EAAiB,eAAeA,EAAiB,WAAW,OAAO,EACtG,QACf,KAAK,SAAS,oBAAoBA,EAAiB,WAAW,SAAS,EAEzE,KAAK,SAAS,aAAa,EAAK,EAChCQ,EAAQ,CACV,EAAGR,EAAiB,QAAQ,kBAAkB,CAChD,CAAC,CACH,CAEQ,kBAAyB,CAC1B,KAAK,eAIV,KAAK,SAAS,+BAA+B,KAAK,qBAAqB,EACvE,KAAK,SAAS,aAAa,EAAK,EAChC,KAAK,SAAS,cAAcA,EAAiB,OAAO,KAAK,EAErD,KAAK,WACP,KAAK,gBAAgB,EAGvB,KAAK,aAAe,GACtB,CAEQ,iBAAwB,CAC1B,CAAC,KAAK,aAAe,KAAK,WAAa,KAAK,aAAe,KAAK,SAAS,cAAc,KAAK,WAAW,GACzG,KAAK,SAAS,qBAAqB,YAAa,KAAK,2BAA2B,CAEpF,CAEQ,qBAA4B,CAClC,KAAK,SAAS,wBAAwB,YAAa,KAAK,2BAA2B,EACnF,KAAK,SAAS,uBAAuB,YAAa,KAAK,2BAA2B,EAClF,KAAK,SAAS,uBAAuB,UAAW,KAAK,yBAAyB,CAChF,CAEQ,uBAAuBC,EAAuB,CACpDA,EAAI,eAAe,EACnB,KAAK,SAAS,qBAAqB,EACnC,IAAMQ,EAAS,KAAK,SAAS,iBAAiB,EAC9C,KAAK,aAAe,CAClB,IAAKR,EAAI,MAAQQ,EAAO,IACxB,KAAMR,EAAI,MAAQQ,EAAO,KACzB,OAAQA,EAAO,OACf,MAAOA,EAAO,KAChB,EACA,KAAK,SAAS,oBAAoB,YAAa,KAAK,2BAA2B,EAC/E,KAAK,SAAS,oBAAoB,UAAW,KAAK,yBAAyB,CAC7E,CAEQ,uBAAuBR,EAAuB,CACpDA,EAAI,eAAe,EACnB,IAAMS,EAAW,KAAK,yBAAyBT,EAAI,MAAOA,EAAI,MAAO,KAAK,YAAY,EAItF,GAAI,CAAC,KAAK,YACR,KAAK,UAAY,GAEb,CADY,KAAK,SAAS,cAAcD,EAAiB,OAAO,WAAYU,EAAuC,GAAM,EAAI,GAE/H,OAKJ,IAAMC,EAAc,KAAK,eAAeD,EAAU,KAAK,YAAY,EAGnE,IAAI,CAAC,KAAK,eAAiBC,EAAY,IAAM,KAAK,cAAc,GAAKA,EAAY,IAAM,KAAK,cAAc,IACxF,KAAK,SAAS,cAAcX,EAAiB,OAAO,MAAOW,EAA0C,GAAM,EAAI,EAClH,CACX,KAAK,cAAgBC,EAAA,GAAKD,GAC1B,IAAME,EAAO,KAAK,wBAAwBF,EAAY,CAAC,EACjDG,EAAO,KAAK,wBAAwBH,EAAY,CAAC,EACvD,KAAK,SAAS,mBAAmBE,EAAMC,EAAM,UAAU,EAG7D,CAEQ,qBAAqBb,EAAuB,CAC9C,KAAK,WACP,KAAK,SAAS,cAAcD,EAAiB,OAAO,QAAQ,EAE9D,KAAK,cAAc,CACrB,CAEQ,eAAsB,CAC5B,KAAK,SAAS,wBAAwB,EACtC,KAAK,SAAS,uBAAuB,YAAa,KAAK,2BAA2B,EAClF,KAAK,SAAS,uBAAuB,UAAW,KAAK,yBAAyB,EAC9E,KAAK,cAAgB,OACrB,KAAK,aAAe,OACpB,KAAK,UAAY,EACnB,CAEQ,mBAAmBC,EAA0B,CACnDA,EAAI,gBAAgB,EAChBA,EAAI,MAAQA,EAAI,MAAQ,UAAYA,EAAI,MAAQ,QAClD,KAAK,UAAU,CAEnB,CAEQ,iBAAiBA,EAAwB,CAC/CA,EAAI,gBAAgB,EACpB,KAAK,UAAU,CACjB,CAEA,MAAc,WAA2B,CAEvC,GADqB,KAAK,SAAS,cAAcD,EAAiB,OAAO,aAAc,OAAW,OAAW,EAAI,EAKjH,IAAI,CAAC,KAAK,qBAAsB,CAC9B,KAAK,KAAO,GACZ,OAGF,GAAI,CAEF,GADoB,MAAM,QAAQ,QAAQ,KAAK,qBAAqB,CAAC,IAAM,GAC1D,CACf,KAAK,KAAO,GACZ,OAEJ,OAASe,EAAP,CACA,MACF,EACF,CAEQ,0BAA0BC,EAAuB,CAClD,KAAK,QAINA,GAAU,KAAK,eACjB,KAAK,SAAS,6BAA6B,KAAK,qBAAqB,EAC3DA,GACV,KAAK,SAAS,+BAA+B,KAAK,qBAAqB,EAE3E,CAEQ,4BAA4BA,EAAuB,CACpD,KAAK,QAINA,GAAU,KAAK,aACjB,KAAK,SAAS,oBAAoB,UAAW,KAAK,uBAAuB,EAC/DA,GACV,KAAK,SAAS,uBAAuB,UAAW,KAAK,uBAAuB,EAEhF,CAEQ,yBAAyBC,EAAeC,EAAeC,EAAwD,CACrH,MAAO,CACL,EAAGF,IAASE,GAAA,YAAAA,EAAS,OAAQ,GAC7B,EAAGD,IAASC,GAAA,YAAAA,EAAS,MAAO,EAC9B,CACF,CAEQ,eAAe,CAAE,EAAAC,EAAG,EAAAC,CAAE,EAA6BF,EAAwD,CACjH,IAAIG,EAAQ,EACRC,EAAS,EAEb,OAAIJ,IACFG,EAAQH,EAAQ,MAChBI,EAASJ,EAAQ,QAGfC,GAAK,EACPA,EAAI,EACKA,EAAIE,GAAS,OAAO,aAC7BF,EAAI,OAAO,WAAaE,GAGtBD,GAAK,EACPA,EAAI,EACKA,EAAIE,GAAU,OAAO,cAC9BF,EAAI,OAAO,YAAcE,GAGpB,CAAE,EAAAH,EAAG,EAAAC,CAAE,CAChB,CAGA,IAAW,cAAcnB,EAAgB,CACvCA,EAAQ,EAAQA,EACZ,KAAK,iBAAmBA,IAC1B,KAAK,eAAiBA,EACtB,KAAK,0BAA0B,KAAK,cAAc,EAClD,KAAK,SAAS,oBAAoBF,EAAiB,WAAW,eAAgB,KAAK,cAAc,EAErG,CACA,IAAW,eAAyB,CAClC,OAAO,KAAK,cACd,CAGA,IAAW,YAAYE,EAAgB,CACrCA,EAAQ,EAAQA,EACZ,KAAK,eAAiBA,IACxB,KAAK,aAAe,CAAC,CAACA,EACtB,KAAK,4BAA4B,KAAK,YAAY,EAClD,KAAK,SAAS,oBAAoBF,EAAiB,WAAW,aAAc,KAAK,YAAY,EAEjG,CACA,IAAW,aAAuB,CAChC,OAAO,KAAK,YACd,CAEA,IAAW,MAAgB,CACzB,OAAO,KAAK,KACd,CACA,IAAW,KAAKE,EAAgB,CAC1B,KAAK,QAAUA,GACjB,KAAK,WAAW,CAAC,CAACA,CAAK,CAE3B,CAEA,IAAW,YAAsB,CAC/B,OAAO,KAAK,WACd,CACA,IAAW,WAAWA,EAAgB,CAChC,KAAK,cAAgBA,IACvB,KAAK,YAAc,CAAC,CAACA,EACrB,KAAK,SAAS,cAAc,KAAK,WAAW,EAC5C,KAAK,SAAS,oBAAoBF,EAAiB,WAAW,WAAY,KAAK,WAAW,EAE9F,CAEA,IAAW,cAAoC,CAC7C,OAAO,KAAK,aACd,CACA,IAAW,aAAawB,EAA+B,CACrD,KAAK,cAAgBA,CACvB,CAEA,IAAW,eAAqC,CAC9C,OAAO,KAAK,cACd,CACA,IAAW,cAAcA,EAA+B,CACtD,KAAK,eAAiBA,CACxB,CAEA,IAAW,qBAA2C,CACpD,OAAO,KAAK,oBACd,CACA,IAAW,oBAAoBA,EAA+B,CAC5D,KAAK,qBAAuBA,CAC9B,CAEA,IAAW,cAAmC,CAC5C,OAAO,KAAK,aACd,CACA,IAAW,aAAatB,EAA2B,CAC7C,KAAK,gBAAkBA,IACzB,KAAK,cAAgBA,EACjB,KAAK,OACP,KAAK,SAAS,mBAAmB,KAAK,WAAY,KAAK,WAAY,KAAK,aAAa,EAG3F,CAEA,IAAW,WAAgD,CACzD,OAAO,KAAK,UACd,CACA,IAAW,UAAUA,EAA2C,CAC1D,KAAK,aAAeA,IACtB,KAAK,WAAa,KAAK,wBAAwBA,CAAK,EAChD,KAAK,OACP,KAAK,SAAS,mBAAmB,KAAK,WAAY,KAAK,WAAY,KAAK,aAAa,EAG3F,CAEA,IAAW,WAAgD,CACzD,OAAO,KAAK,UACd,CACA,IAAW,UAAUA,EAA2C,CAC1D,KAAK,aAAeA,IACtB,KAAK,WAAa,KAAK,wBAAwBA,CAAK,EAChD,KAAK,OACP,KAAK,SAAS,mBAAmB,KAAK,WAAY,KAAK,WAAY,KAAK,aAAa,EAG3F,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SACd,CACA,IAAW,SAASA,EAAgB,CAC9B,KAAK,YAAcA,IACrB,KAAK,UAAY,CAAC,CAACA,EAEf,KAAK,QACP,KAAK,SAAS,YAAY,KAAK,SAAS,EACpC,KAAK,UACP,KAAK,gBAAgB,GAErB,KAAK,oBAAoB,EACzB,KAAK,UAAY,KAIrB,KAAK,SAAS,oBAAoBF,EAAiB,WAAW,SAAU,KAAK,SAAS,EAE1F,CAEA,IAAW,YAAqB,CAC9B,OAAO,KAAK,WACd,CACA,IAAW,WAAWE,EAAe,CACnC,KAAK,YAAcA,CACrB,CACF,ECpfO,IAAMuB,EAAN,cAA4BC,CAAwD,CAOzF,YAAYC,EAA6B,CACvC,MAAMA,CAAS,EACf,KAAK,kBAAoBC,EAAiBD,EAAWE,EAAiB,UAAU,SAAS,EACzF,KAAK,gBAAkBD,EAAiBD,EAAWE,EAAiB,UAAU,OAAO,CACvF,CAEO,yBAAgC,CAChC,KAAK,WAAW,aAAa,MAAM,GACtC,KAAK,WAAW,aAAa,OAAQ,QAAQ,EAE/C,KAAK,WAAW,aAAa,aAAc,MAAM,CACnD,CAEO,aAAaC,EAA0B,CAC5CC,EAAY,KAAK,kBAAmBD,EAAWD,EAAiB,QAAQ,SAAS,CACnF,CAEO,cAAcG,EAAwB,CAC3CD,EAAY,KAAK,kBAAmBC,EAASH,EAAiB,QAAQ,IAAI,EAErE,KAAK,mBACR,KAAK,iBAAmB,SAAS,cAAc,gBAAgB,EAC/D,KAAK,iBAAiB,aAAa,OAAQ,OAAO,EAClD,KAAK,kBAAkB,YAAY,KAAK,gBAAgB,GAGtDG,EACF,KAAK,iBAAiB,OAAO,EAE7B,KAAK,iBAAiB,QAAQ,CAElC,CAEO,OAAOC,EAAsB,SAAS,KAAY,CACvDA,EAAO,YAAY,KAAK,UAAU,CACpC,CAEO,QAAe,CAChB,KAAK,iBACP,KAAK,eAAiB,QAExBC,EAAc,KAAK,UAAU,CAC/B,CAEO,6BAA6BC,EAA+C,CACjF,KAAK,gBAAgB,iBAAiB,gBAAiBA,CAAO,CAChE,CAEO,+BAA+BA,EAA+C,CACnF,KAAK,gBAAgB,oBAAoB,gBAAiBA,CAAO,CACnE,CAEO,oBAAoBC,EAAcC,EAAsC,CAC7E,SAAS,iBAAiBD,EAAMC,CAAQ,CAC1C,CAEO,uBAAuBD,EAAcC,EAAsC,CAChF,SAAS,oBAAoBD,EAAMC,CAAQ,CAC7C,CAEO,6BAA6BF,EAA2C,CAzGjF,IAAAG,GA0GIA,EAAA,KAAK,mBAAL,MAAAA,EAAuB,iBAAiBC,EAAmB,OAAO,eAAgBJ,EACpF,CAEO,+BAA+BA,EAA2C,CA7GnF,IAAAG,GA8GIA,EAAA,KAAK,mBAAL,MAAAA,EAAuB,oBAAoBC,EAAmB,OAAO,eAAgBJ,EACvF,CAEO,eAAeK,EAA2C,CAC/D,OAAO,SAAS,iBAAiBA,CAAQ,CAC3C,CAEO,iBAAiBC,EAAcC,EAAqB,CACzD,SAAS,KAAK,aAAaD,EAAMC,CAAK,CACxC,CAEO,oBAAoBD,EAAoB,CAC7C,SAAS,KAAK,gBAAgBA,CAAI,CACpC,CAEO,oBAA2B,CAChC,IAAME,EAAWC,EAAqB,KAAK,WAAYf,EAAiB,UAAU,aAAa,EAC3Fc,GAAYA,EAAS,QACAA,EAASA,EAAS,OAAS,CAAC,EACpC,MAAM,CAEzB,CAEO,cAAwB,CAC7B,IAAME,EAAiB,KAAK,WAAW,cAAchB,EAAiB,UAAU,OAAO,EACvF,OAAIgB,EACKA,EAAe,aAAeA,EAAe,aAE/C,EACT,CAEO,aAAaJ,EAAoB,CACtC,KAAK,WAAW,UAAU,IAAIA,CAAI,CACpC,CAEO,cAAcC,EAAsB,CACzCX,EAAY,KAAK,kBAAmBW,EAAOb,EAAiB,QAAQ,UAAU,CAChF,CAEO,YAAYa,EAAsB,CACvCX,EAAY,KAAK,kBAAmBW,EAAOb,EAAiB,QAAQ,QAAQ,CAC9E,CAEO,cAAcW,EAA2B,CAC9C,OAAKA,GAGL,KAAK,mBAAqB,KAAK,WAAW,cAAcA,CAAQ,EACzD,CAAC,CAAC,KAAK,oBAHL,EAIX,CAEO,qBAAqBJ,EAAcC,EAA2C,CAjKvF,IAAAC,GAkKIA,EAAA,KAAK,qBAAL,MAAAA,EAAyB,iBAAiBF,EAAMC,EAClD,CAEO,wBAAwBD,EAAcC,EAA2C,CArK1F,IAAAC,GAsKIA,EAAA,KAAK,qBAAL,MAAAA,EAAyB,oBAAoBF,EAAMC,EACrD,CAEO,kBAA4B,CACjC,OAAO,KAAK,gBAAgB,sBAAsB,CACpD,CAEO,mBAAmBS,EAAkBC,EAAkBC,EAA+C,CACvGA,EACF,KAAK,gBAAgB,MAAM,SAAWA,IAAiB,WAAaA,EAAe,WAEnF,KAAK,gBAAgB,MAAM,eAAe,UAAU,EAGlDD,IAAM,KACR,KAAK,gBAAgB,MAAM,IAAMA,EAEjC,KAAK,gBAAgB,MAAM,eAAe,KAAK,EAG7CD,IAAM,KACR,KAAK,gBAAgB,MAAM,KAAOA,EAElC,KAAK,gBAAgB,MAAM,eAAe,MAAM,CAEpD,CAEO,sBAA6B,CAjMtC,IAAAR,EAkMI,KAAK,eAAiBW,EAAiB,KAAK,WAAW,aAAa,GACpEX,EAAA,KAAK,iBAAL,MAAAA,EAAqB,MACvB,CAEO,yBAAgC,CACjC,KAAK,iBACH,KAAK,eAAe,aACtB,KAAK,eAAe,MAAM,EAE5B,KAAK,eAAiB,OAE1B,CACF,ECtMA,IAAMY,EAAW,yIACXC,EAAS,4/JA8CFC,EAAN,cAA8BC,CAA0C,CAiB7E,aAAc,CACZ,MAAM,EACNC,EAAqB,KAAMJ,EAAUC,CAAM,EAC3C,KAAK,YAAc,IAAII,EAAiB,IAAIC,EAAc,IAAI,CAAC,CACjE,CApBA,WAAkB,oBAA+B,CAC/C,MAAO,CACLC,EAAiB,WAAW,eAC5BA,EAAiB,WAAW,aAC5BA,EAAiB,WAAW,KAC5BA,EAAiB,WAAW,WAC5BA,EAAiB,WAAW,cAC5BA,EAAiB,WAAW,WAC5BA,EAAiB,WAAW,WAC5BA,EAAiB,WAAW,SAC5BA,EAAiB,WAAW,WAC9B,CACF,CAUO,mBAA0B,CAC/B,KAAK,YAAY,WAAW,CAC9B,CAEO,sBAA6B,CAClC,KAAK,YAAY,QAAQ,CAC3B,CAEO,yBAAyBC,EAAcC,EAAkBC,EAAwB,CACtF,OAAQF,EAAM,CACZ,KAAKD,EAAiB,WAAW,eAC/B,KAAK,cAAgBG,IAAa,OAClC,MACF,KAAKH,EAAiB,WAAW,aAC/B,KAAK,YAAcG,IAAa,OAChC,MACF,KAAKH,EAAiB,WAAW,KAC/B,KAAK,KAAOI,EAAcD,CAAQ,EAClC,MACF,KAAKH,EAAiB,WAAW,WAC/B,KAAK,WAAaI,EAAcD,CAAQ,EACxC,MACF,KAAKH,EAAiB,WAAW,cAC/B,KAAK,aAAeG,EACpB,MACF,KAAKH,EAAiB,WAAW,WAC/B,KAAK,UAAYG,EACjB,MACF,KAAKH,EAAiB,WAAW,WAC/B,KAAK,UAAYG,EACjB,MACF,KAAKH,EAAiB,WAAW,SAC/B,KAAK,SAAWI,EAAcD,CAAQ,EACtC,MACF,KAAKH,EAAiB,WAAW,YAC/B,KAAK,WAAaG,EAClB,KACJ,CACF,CAkDO,sBAA6B,CAClC,KAAK,YAAY,qBAAqB,CACxC,CAEO,eAAsB,CAC3B,KAAK,YAAY,cAAc,CACjC,CAEO,KAAKE,EAAqC,CAC/C,OAAO,KAAK,YAAY,KAAKA,CAAM,CACrC,CACO,KAAKC,EAAiC,CAC3C,OAAO,KAAK,YAAY,KAAKA,CAAM,CACrC,CACF,EA5DiBC,EAAA,CADdC,EAAmB,GAhETb,EAiEI,6BAIAY,EAAA,CADdC,EAAmB,GApETb,EAqEI,2BAIAY,EAAA,CADdC,EAAmB,GAxETb,EAyEI,oBAIAY,EAAA,CADdC,EAAmB,GA5ETb,EA6EI,0BAIAY,EAAA,CADdC,EAAmB,GAhFTb,EAiFI,4BAIAY,EAAA,CADdC,EAAmB,GApFTb,EAqFI,6BAIAY,EAAA,CADdC,EAAmB,GAxFTb,EAyFI,mCAIAY,EAAA,CADdC,EAAmB,GA5FTb,EA6FI,4BAIAY,EAAA,CADdC,EAAmB,GAhGTb,EAiGI,yBAIAY,EAAA,CADdC,EAAmB,GApGTb,EAqGI,yBAIAY,EAAA,CADdC,EAAmB,GAxGTb,EAyGI,wBAIAY,EAAA,CADdC,EAAmB,GA5GTb,EA6GI,0BA7GJA,EAANY,EAAA,CAJNE,EAAc,CACb,KAAMT,EAAiB,YACvB,aAAc,CAACU,CAAiB,CAClC,CAAC,GACYf,GC9CN,SAASgB,IAA8B,CAC5CC,EAAoBC,CAAe,CACrC",
|
|
6
|
+
"names": ["elementName", "COMPONENT_NAME_PREFIX", "classes", "attributes", "selectors", "BACKDROP_CONSTANTS", "events", "numbers", "DIALOG_CONSTANTS", "DialogFoundation", "_adapter", "DIALOG_CONSTANTS", "evt", "value", "e", "parent", "remove", "isNumber", "isString", "resolve", "bounds", "position", "newPosition", "__spreadValues", "newX", "newY", "err", "attach", "pageX", "pageY", "context", "x", "y", "width", "height", "callback", "DialogAdapter", "BaseAdapter", "component", "getShadowElement", "DIALOG_CONSTANTS", "animating", "toggleClass", "visible", "parent", "removeElement", "handler", "type", "listener", "_a", "BACKDROP_CONSTANTS", "selector", "name", "value", "elements", "deepQuerySelectorAll", "contentElement", "x", "y", "positionType", "getActiveElement", "template", "styles", "DialogComponent", "BaseComponent", "attachShadowTemplate", "DialogFoundation", "DialogAdapter", "DIALOG_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "parent", "remove", "__decorateClass", "FoundationProperty", "CustomElement", "BackdropComponent", "defineDialogComponent", "defineCustomElement", "DialogComponent"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import{a as q}from"./chunk.7SYU6KRU.js";import{a as T}from"./chunk.INQZNXG6.js";import{a as z}from"./chunk.GHMAI3SM.js";import{d as N}from"./chunk.5LCWC3A7.js";import{p as P}from"./chunk.HJUFU2PV.js";import{a as F,b as H}from"./chunk.H6MMHAQI.js";import{c as _}from"./chunk.BX4AQRHB.js";import{a as I}from"./chunk.ZY3ETQ3D.js";import{a as u}from"./chunk.NVUMRW44.js";import{a as L,b as A,g as w,h as x,i as D,j as p,k as S,l as h,m as c}from"./chunk.RRNSZCVJ.js";import{a as E,e as R,f,k as C}from"./chunk.TPXXHX5J.js";import{k as b}from"./chunk.J2M2MXP2.js";import{d as l}from"./chunk.M3QDAYD2.js";var d=class d{static getRadioGroup(e){if(!e.name)return[e];if(!e.form){let a=e.getRootNode().querySelectorAll(`${i.elementName}[name=${e.name}]`);return Array.from(a).filter(o=>!o.form)}let t=e.form.elements.namedItem(e.name);return t&&Object.prototype.isPrototypeOf.call(RadioNodeList.prototype,t)?Array.from(t).filter(r=>r.matches(i.elementName)):[e]}static setRadioGroupValidity(e){let t=d.getRadioGroup(e),r=d._selectionIsRequired(t);t.forEach(a=>{let o=a[D]({required:r,checked:a.checked});a[p].setValidity({valueMissing:r},o),a[c]({ariaInvalid:r?"true":"false"})})}static setSelectedRadioInGroup(e){d.getRadioGroup(e).forEach(r=>r.checked=r===e)}static focusNextRadioInGroup(e){d._updateRadioGroupFocus(e,1)}static focusPreviousRadioInGroup(e){d._updateRadioGroupFocus(e,-1)}static setUncheckedRadioGroupFocus(e,t){let r=d.getRadioGroup(e);if(t==="focus"){r.forEach(a=>a[h]=a===e);return}(!e.checked||r[0]===e||r[r.length-1]===e)&&r.forEach(a=>a[h]=!0)}static async requestRadioGroupReset(e){if(this._radiosRequestingReset.add(e),await _(),!this._radiosRequestingReset.has(e))return;let t=d.getRadioGroup(e),r=null;t.forEach(a=>{this._radiosRequestingReset.delete(a),a.defaultChecked&&(r=a)}),t.forEach(a=>{a.checked=a===r,a[h]=!r||a.checked})}static _updateRadioGroupFocus(e,t){let r=d.getRadioGroup(e),a=r.indexOf(e),o=r[a];do if(a+=t,a<0?a=r.length-1:a>=r.length&&(a=0),o=r[a],o===e)return;while(o.disabled||o.readonly);o[m]()&&(o[h]=!0,o.focus(),r.forEach(k=>{k!==o&&(k[h]=!1,k.checked=!1)}))}static _selectionIsRequired(e){let t=!1,r=!1;return e.forEach(a=>{a.required&&(t=!0),a.checked&&(r=!0)}),t&&!r}};d._radiosRequestingReset=new WeakSet;var n=d;var O=`${A}radio`,G={CHECKED:"checked",DEFAULT_CHECKED:"default-checked",VALUE:"value",DENSE:"dense",DISABLED:"disabled",REQUIRED:"required",READONLY:"readonly",LABEL_POSITION:"label-position",TABINDEX:"tabindex"},U={ROOT:".forge-radio",LABEL:"#label",STATE_LAYER:"forge-state-layer"},B={CHANGE:"change",INPUT:"input"},i={elementName:O,attributes:G,selectors:U,events:B},m=Symbol("tryCheck");var v=class extends I{constructor(t){super(t);this._rootElement=f(t,i.selectors.ROOT),this._labelElement=f(t,i.selectors.LABEL),this._stateLayerElement=f(t,i.selectors.STATE_LAYER)}setChecked(t,r){this._component[c]({ariaChecked:t?"true":"false"}),t&&n.setSelectedRadioInGroup(this._component);let a=t?r:null,o=t?"checked":"unchecked";this._component[p].setFormValue(a,o),n.setRadioGroupValidity(this._component)}trySetDisabled(t){let r=this._component.closest("forge-radio-group");return!t&&r&&r.disabled?!1:(this._component[c]({ariaDisabled:`${!!t}`}),this._component[h]=!t,!0)}setRequired(t){this._component[c]({ariaRequired:t?"true":"false"},{setAttribute:!0}),n.setRadioGroupValidity(this._component)}setReadonly(t){this._component[c]({ariaDisabled:`${!!t}`})}disableStateLayer(t){this._stateLayerElement.disabled=t}setLabelPosition(t){this._labelElement.remove(),t==="start"?this._rootElement.prepend(this._labelElement):this._rootElement.append(this._labelElement)}setUncheckedRadioGroupFocus(t){n.setUncheckedRadioGroupFocus(this._component,t)}focusNext(){n.focusNextRadioInGroup(this._component)}focusPrevious(){n.focusPreviousRadioInGroup(this._component)}};var g=class{constructor(e){this._adapter=e;this._checked=!1;this._defaultChecked=!1;this._value="on";this._disabled=!1;this._required=!1;this._readonly=!1;this._dense=!1;this._labelPosition="end";this._focusListener=()=>this._handleFocus(),this._blurListener=()=>this._handleBlur(),this._clickListener=t=>this._handleClick(t),this._keydownListener=t=>this._handleKeydown(t),this._keyupListener=t=>this._handleKeyup(t)}initialize(){this._adapter.addHostListener("focus",this._focusListener),this._adapter.addHostListener("blur",this._blurListener),this._adapter.addHostListener("click",this._clickListener),this._adapter.addHostListener("keydown",this._keydownListener),this._adapter.addHostListener("keyup",this._keyupListener)}tryCheck(){return this._checked=!0,this._dispatchEvents()?(this._adapter.setChecked(this._checked,this._value),this._adapter.toggleHostAttribute(i.attributes.CHECKED,this._checked),!0):(this._checked=!1,!1)}_handleFocus(){this._checked||this._adapter.setUncheckedRadioGroupFocus("focus")}_handleBlur(){this._checked||this._adapter.setUncheckedRadioGroupFocus("blur")}_handleClick(e){this._activate(e)}_handleKeydown(e){switch(e.key){case"ArrowRight":case"ArrowDown":e.preventDefault(),this._adapter.focusNext();break;case"ArrowLeft":case"ArrowUp":e.preventDefault(),this._adapter.focusPrevious();break;case" ":e.preventDefault();break}}_handleKeyup(e){e.key===" "&&this._activate(e)}async _activate(e){if(!(this._checked||this._disabled||this._readonly)&&(await _(),!e.defaultPrevented)){if(this._checked=!0,!this._dispatchEvents()){this._checked=!1;return}this._adapter.setChecked(this._checked,this._value),this._adapter.toggleHostAttribute(i.attributes.CHECKED,this._checked)}}_dispatchEvents(){let e=new Event(i.events.CHANGE,{bubbles:!0,cancelable:!0}),t=new Event(i.events.INPUT,{bubbles:!0,cancelable:!0,composed:!0});return this._adapter.dispatchHostEvent(new Event(i.events.CHANGE,{bubbles:!0,cancelable:!0})),this._adapter.dispatchHostEvent(new Event(i.events.INPUT,{bubbles:!0,cancelable:!0,composed:!0})),!(e.defaultPrevented||t.defaultPrevented)}get checked(){return this._checked}set checked(e){this._checked!==e&&(this._checked=e,this._adapter.setChecked(this._checked,this._value),this._adapter.toggleHostAttribute(i.attributes.CHECKED,this._checked))}get defaultChecked(){return this._defaultChecked}set defaultChecked(e){this._defaultChecked!==e&&(this._defaultChecked=e,this._adapter.toggleHostAttribute(i.attributes.DEFAULT_CHECKED,this._defaultChecked))}get value(){return this._value}set value(e){this._value!==e&&(this._value=e,this._adapter.setHostAttribute(i.attributes.VALUE,this._value))}get disabled(){return this._disabled}set disabled(e){this._disabled!==e&&(this._disabled=e,this._adapter.trySetDisabled(this._disabled)?(this._adapter.disableStateLayer(this._disabled||this._readonly),this._adapter.toggleHostAttribute(i.attributes.DISABLED,this._disabled)):this._disabled=!this._disabled)}get required(){return this._required}set required(e){this._required!==e&&(this._required=e,this._adapter.setRequired(this._required),this._adapter.toggleHostAttribute(i.attributes.REQUIRED,this._required))}get readonly(){return this._readonly}set readonly(e){this._readonly!==e&&(this._readonly=e,this._adapter.setReadonly(this._readonly),this._adapter.disableStateLayer(this._disabled||this._readonly),this._adapter.toggleHostAttribute(i.attributes.READONLY,this._readonly))}get dense(){return this._dense}set dense(e){this._dense!==e&&(this._dense=e,this._adapter.toggleHostAttribute(i.attributes.DENSE,this._dense))}get labelPosition(){return this._labelPosition}set labelPosition(e){this._labelPosition!==e&&(this._labelPosition=e,this._adapter.setLabelPosition(this._labelPosition),this._adapter.setHostAttribute(i.attributes.LABEL_POSITION,this._labelPosition))}};var K='<template><div id="radio" class="forge-radio" part="radio"><div id="container" class="container" aria-hidden="true"><div id="background" class="background" part="background"></div><forge-focus-indicator target=":host" part="focus-indicator"></forge-focus-indicator><forge-state-layer exportparts="surface:state-layer"></forge-state-layer></div><span id="label" class="label" for="input" part="label"><slot></slot></span></div></template>',W=':host{display:inline-block;-webkit-tap-highlight-color:transparent}:host([hidden]){display:none}:host(:focus){outline:0}.forge-radio{--_radio-primary-color:var(--forge-radio-primary-color, var(--forge-theme-tertiary, #3d5afe));--_radio-inactive-color:var(--forge-radio-inactive-color, var(--forge-theme-surface-container-high, #9e9e9e));--_radio-size:var(--forge-radio-size, 20px);--_radio-mark-size:var(--forge-radio-mark-size, 12px);--_radio-state-layer-size:var(--forge-radio-state-layer-size, 40px);--_radio-state-layer-dense-size:var(--forge-radio-state-layer-dense-size, 24px);--_radio-width:var(--forge-radio-width, var(--_radio-size));--_radio-height:var(--forge-radio-height, var(--_radio-size));--_radio-border-width:var(--forge-radio-border-width, var(--forge-border-medium, 2px));--_radio-unchecked-border-color:var(--forge-radio-unchecked-border-color, var(--_radio-inactive-color));--_radio-checked-border-color:var(--forge-radio-checked-border-color, var(--_radio-primary-color));--_radio-background:var(--forge-radio-background, transparent);--_radio-shape:var(--forge-radio-shape, var(--forge-shape-round, 50%));--_radio-mark-width:var(--forge-radio-mark-width, var(--_radio-mark-size));--_radio-mark-height:var(--forge-radio-mark-height, var(--_radio-mark-size));--_radio-mark-unchecked-color:var(--forge-radio-mark-unchecked-color, var(--_radio-inactive-color));--_radio-mark-checked-color:var(--forge-radio-mark-checked-color, var(--_radio-primary-color));--_radio-mark-unchecked-background:var(--forge-radio-mark-unchecked-background, transparent);--_radio-mark-checked-background:var(--forge-radio-mark-checked-background, transparent);--_radio-gap:var(--forge-radio-gap, 0);--_radio-justify:var(--forge-radio-justify, space-between);--_radio-direction:var(--forge-radio-direction, initial);--_radio-state-layer-width:var(--forge-radio-state-layer-width, var(--_radio-state-layer-size));--_radio-state-layer-height:var(--forge-radio-state-layer-height, var(--_radio-state-layer-size));--_radio-state-layer-unchecked-color:var(--forge-radio-state-layer-unchecked-color, var(--_radio-color));--_radio-state-layer-checked-color:var(--forge-radio-state-layer-checked-color, var(--_radio-primary-color));--_radio-state-layer-shape:var(--forge-radio-state-layer-shape, var(--_radio-shape));--_radio-state-layer-dense-width:var(--forge-radio-state-layer-dense-width, var(--_radio-state-layer-dense-size));--_radio-state-layer-dense-height:var(--forge-radio-state-layer-dense-height, var(--_radio-state-layer-dense-size));--_radio-disabled-opacity:var(--forge-radio-disabled-opacity, 0.38);--_radio-animation-duration:var(--forge-radio-animation-duration, var(--forge-animation-duration-short4, 200ms));--_radio-animation-timing-function:var(--forge-radio-animation-timing-function, var(--forge-animation-easing-decelerate, cubic-bezier(0, 0, 0, 1)));--_radio-animation-delay:var(--forge-radio-animation-delay, 0ms)}.forge-radio{position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:var(--_radio-direction);flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:var(--_radio-justify);justify-content:var(--_radio-justify);gap:var(--_radio-gap);display:-webkit-box;display:flex}.forge-radio .container{position:relative;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;display:-webkit-box;display:flex;border-radius:var(--_radio-shape);inline-size:var(--_radio-state-layer-width);block-size:var(--_radio-state-layer-height);cursor:pointer}.forge-radio .background{position:relative;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;display:-webkit-box;display:flex;overflow:hidden;-webkit-transition-duration:var(--_radio-animation-duration);transition-duration:var(--_radio-animation-duration);-webkit-transition-delay:var(--_radio-animation-delay);transition-delay:var(--_radio-animation-delay);-webkit-transition-timing-function:var(--_radio-animation-timing-function);transition-timing-function:var(--_radio-animation-timing-function);-webkit-transition-property:border-color;transition-property:border-color;-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:var(--_radio-shape);border-width:var(--_radio-border-width);border-style:solid;border-color:var(--_radio-unchecked-border-color);inline-size:var(--_radio-width);block-size:var(--_radio-height);background:var(--_radio-background)}.forge-radio .background::after{content:"";position:absolute;contain:strict;-webkit-transition-duration:var(--_radio-animation-duration);transition-duration:var(--_radio-animation-duration);-webkit-transition-delay:var(--_radio-animation-delay);transition-delay:var(--_radio-animation-delay);-webkit-transition-timing-function:var(--_radio-animation-timing-function);transition-timing-function:var(--_radio-animation-timing-function);-webkit-transition-property:inline-size,block-size,border-color;transition-property:inline-size,block-size,border-color;border-radius:var(--_radio-shape);border-width:calc(var(--_radio-mark-height)/ 2) calc(var(--_radio-mark-width)/ 2);border-color:var(--_radio-mark-unchecked-color);border-style:solid;inline-size:calc(var(--_radio-width) - 2 * var(--_radio-border-width));block-size:calc(var(--_radio-height) - 2 * var(--_radio-border-width));background:var(--_radio-mark-unchecked-background)}.forge-radio .label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-label-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-label-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-font-size-scale, .75)));font-weight:var(--forge-typography-label-font-weight,400);line-height:var(--forge-typography-label-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-label-letter-spacing, .0357142857em);text-transform:var(--forge-typography-label-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-label-text-decoration,inherit);text-decoration:var(--forge-typography-label-text-decoration,inherit);cursor:default}.forge-radio .label:empty{display:none}:host([checked]) .forge-radio .background{border-color:var(--_radio-checked-border-color)}:host([checked]) .forge-radio .background::after{border-color:var(--_radio-mark-checked-color);inline-size:0px;block-size:0px;background:var(--_radio-mark-checked-background)}:host([checked]) forge-state-layer{--forge-state-layer-color:var(--_radio-state-layer-checked-color)}:host([dense]) .forge-radio .container{inline-size:var(--_radio-state-layer-dense-width);block-size:var(--_radio-state-layer-dense-height)}:host([disabled]) .forge-radio{opacity:var(--_radio-disabled-opacity)}:host([disabled]) .forge-radio .container{cursor:not-allowed}:host([readonly]) .forge-radio .container{cursor:not-allowed}forge-focus-indicator{--forge-focus-indicator-color:var(--_radio-primary-color);--forge-focus-indicator-outward-offset:0px;--forge-focus-indicator-shape:var(--_radio-state-layer-shape)}forge-state-layer{--forge-state-layer-color:var(--_radio-state-layer-unchecked-color)}',M=q(T(z(H(F(C))))),s=class extends M{constructor(){super();R(this,K,W),this[S]="radio",this._foundation=new g(new v(this))}static get observedAttributes(){return[i.attributes.CHECKED,i.attributes.DEFAULT_CHECKED,i.attributes.VALUE,i.attributes.DENSE,i.attributes.DISABLED,i.attributes.REQUIRED,i.attributes.READONLY,i.attributes.LABEL_POSITION,i.attributes.TABINDEX]}connectedCallback(){super.connectedCallback(),this[c]({role:"radio",ariaChecked:this.checked?"true":"false",ariaDisabled:this.disabled?"true":"false",ariaInvalid:this[p].validity.valid?"false":"true",ariaRequired:this.required?"true":"false"}),this._foundation.initialize()}attributeChangedCallback(t,r,a){switch(t){case i.attributes.CHECKED:this._foundation.checked=b(a);break;case i.attributes.DEFAULT_CHECKED:this._foundation.defaultChecked=b(a);break;case i.attributes.VALUE:this.value=a;break;case i.attributes.DENSE:this.dense=b(a);break;case i.attributes.DISABLED:this.disabled=b(a);break;case i.attributes.REQUIRED:this.required=b(a);break;case i.attributes.READONLY:this.readonly=b(a);break;case i.attributes.LABEL_POSITION:this.labelPosition=a;break}super.attributeChangedCallback(t,r,a)}[w](){return this.checked?this.value:null}[x](){return this.checked?"checked":"unchecked"}formResetCallback(){n.requestRadioGroupReset(this)}formStateRestoreCallback(t){this.checked=t==="checked"}labelClickedCallback(){this.click()}labelChangedCallback(t){this[c]({ariaLabel:t})}[m](){return this._foundation.tryCheck()}};l([u()],s.prototype,"checked",2),l([u()],s.prototype,"defaultChecked",2),l([u()],s.prototype,"value",2),l([u()],s.prototype,"dense",2),l([u()],s.prototype,"disabled",2),l([u()],s.prototype,"required",2),l([u()],s.prototype,"readonly",2),l([u()],s.prototype,"labelPosition",2),s=l([L({name:i.elementName,dependencies:[N,P]})],s);function He(){E(s)}export{i as a,m as b,v as c,g as d,s as e,He as f};
|
|
7
|
+
//# sourceMappingURL=chunk.6IPX5C4B.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/radio/core/radio-group-manager.ts", "../../src/radio/radio/radio-constants.ts", "../../src/radio/radio/radio-adapter.ts", "../../src/radio/radio/radio-foundation.ts", "../../src/radio/radio/radio.ts", "../../src/radio/radio/index.ts"],
|
|
4
|
+
"sourcesContent": ["import { getValidationMessage, internals, isFocusable, setDefaultAria } from '../../constants';\nimport { task } from '../../core/utils/event-utils';\nimport { IRadioComponent, RADIO_CONSTANTS, tryCheck } from '../radio';\n\n/**\n * A class for coordinating the states of radio components within a radio group.\n */\nexport class RadioGroupManager {\n private static _radiosRequestingReset = new WeakSet<IRadioComponent>();\n\n /**\n * Returns an array of IRadioComponents that belong to the same radio group as the given\n * IRadioComponent.\n * If the given IRadioComponent does not have an associated form element, it searches the root\n * node for all IRadioComponents with the same name.\n * If the given IRadioComponent has an associated form element, it gets all RadioComponents with\n * the same name from the form element.\n * \n * @param el - The IRadioComponent to get the radio group for.\n * @returns An array of IRadioComponents that belong to the same radio group as the given\n * IRadioComponent.\n */\n public static getRadioGroup(el: IRadioComponent): IRadioComponent[] {\n // If there's no name, it's not part of a radio group\n if (!el.name) {\n return [el];\n }\n\n // If there's no associated form element search the root node\n if (!el.form) {\n const root = el.getRootNode() as ShadowRoot | Document;\n const namedRadios = root.querySelectorAll<IRadioComponent>(`${RADIO_CONSTANTS.elementName}[name=${el.name}]`);\n return Array.from(namedRadios).filter(radio => !radio.form);\n }\n\n // When there is a form element, get all RadioComponents with the same name\n const formRadios = el.form.elements.namedItem(el.name);\n if (formRadios && Object.prototype.isPrototypeOf.call(RadioNodeList.prototype, formRadios)) {\n return Array.from(formRadios as RadioNodeList)\n .filter((radio: HTMLElement) => radio.matches(RADIO_CONSTANTS.elementName)) as IRadioComponent[];\n }\n return [el];\n }\n\n /**\n * Sets the validity of a radio group.\n * If no radio is selected in the group and selection is required, it sets the validity to\n * `valueMissing`.\n * \n * @param el A radio component within the group to set the validity for.\n */\n public static setRadioGroupValidity(el: IRadioComponent): void {\n const group = RadioGroupManager.getRadioGroup(el);\n const invalid = RadioGroupManager._selectionIsRequired(group);\n \n group.forEach(radio => {\n const validationMessage = radio[getValidationMessage]({\n required: invalid,\n checked: radio.checked\n });\n radio[internals].setValidity({ valueMissing: invalid }, validationMessage);\n radio[setDefaultAria]({ 'ariaInvalid': invalid ? 'true' : 'false' });\n });\n }\n\n /**\n * Sets the selected radio in a radio group.\n * \n * @param el - The radio component to set as selected.\n */\n public static setSelectedRadioInGroup(el: IRadioComponent): void {\n const group = RadioGroupManager.getRadioGroup(el);\n group.forEach(radio => radio.checked = radio === el);\n }\n\n /**\n * Focuses the next radio in the radio group.\n * \n * @param el - The currently focused radio component.\n */\n public static focusNextRadioInGroup(el: IRadioComponent): void {\n RadioGroupManager._updateRadioGroupFocus(el, 1);\n }\n\n /**\n * Focuses the previous radio in the radio group.\n * \n * @param el - The currently focused radio component.\n */\n public static focusPreviousRadioInGroup(el: IRadioComponent): void {\n RadioGroupManager._updateRadioGroupFocus(el, -1);\n }\n\n /**\n * Adds or removes each radio in a radio group from the tab order. When no radio is selected and\n * focus is not in the group, all radios are added to the tab order. Otherwise only the selected\n * radio is added to the tab order.\n * \n * @param el - The focused or blurred radio component.\n * @param event - The event type (`'focus'` or `'blur'`).\n */\n public static setUncheckedRadioGroupFocus(el: IRadioComponent, event: 'focus' | 'blur'): void {\n const group = RadioGroupManager.getRadioGroup(el);\n \n if (event === 'focus') {\n group.forEach(radio => radio[isFocusable] = radio === el);\n return;\n }\n\n if (!el.checked || group[0] === el || group[group.length - 1] === el) {\n group.forEach(radio => radio[isFocusable] = true);\n }\n }\n\n /**\n * Resets a radio group to . This will run once each radio has a chance to\n * update.\n * \n * @param el - The radio component requesting the reset.\n * @returns A promise that resolves when the reset logic is complete.\n */\n public static async requestRadioGroupReset(el: IRadioComponent): Promise<void> {\n this._radiosRequestingReset.add(el);\n\n // Wait for any other radios in the group to request a reset. The reset logic should only run\n // once per group\n await task();\n\n // If the radio has been removed from the set, its group has already been reset and we can\n // skip it\n if (!this._radiosRequestingReset.has(el)) {\n return;\n }\n \n const group = RadioGroupManager.getRadioGroup(el);\n let checkedRadio: IRadioComponent | null = null;\n\n // The first loop removes each radio in the group from the set and stores the radio that should\n // be checked, if any\n group.forEach(radio => {\n this._radiosRequestingReset.delete(radio);\n \n if (radio.defaultChecked) {\n checkedRadio = radio;\n }\n });\n\n // The second loop sets the checked radio and sets each radio to be focusable if there is a no\n // selection, or only the selected radio if there is\n group.forEach(radio => {\n radio.checked = radio === checkedRadio;\n radio[isFocusable] = !checkedRadio || radio.checked;\n });\n }\n\n /**\n * Updates the focus and selection of a radio group based on the currently focused radio and the\n * direction of the focus change.\n * \n * @param el - The currently focused radio element.\n * @param increment - The direction of the focus change. 1 for forward, -1 for backward.\n */\n private static _updateRadioGroupFocus(el: IRadioComponent, increment: 1 | -1): void {\n const group = RadioGroupManager.getRadioGroup(el);\n\n // Get the next enabled and writable radio in the group\n let index = group.indexOf(el);\n let nextRadio = group[index];\n do {\n index += increment;\n if (index < 0) {\n index = group.length - 1;\n } else if (index >= group.length) {\n index = 0;\n }\n\n nextRadio = group[index];\n if (nextRadio === el) {\n return;\n }\n } while (nextRadio.disabled || nextRadio.readonly);\n\n // Attempt to check the next radio, return if the event is cancelled\n if (!nextRadio[tryCheck]()) {\n return;\n }\n\n // Add the next radio to the tab order, and focus it\n nextRadio[isFocusable] = true;\n nextRadio.focus();\n\n // Remove every other radio from the tab order and deselect it\n group.forEach(radio => {\n if (radio === nextRadio) {\n return;\n }\n radio[isFocusable] = false;\n radio.checked = false;\n });\n }\n\n /**\n * Determines if a radio selection is required within a group.\n * \n * @param group - The radio components within a group.\n * @returns True if the radio selection is required, false otherwise.\n */\n private static _selectionIsRequired(group: IRadioComponent[]): boolean {\n let required = false;\n let selection = false;\n\n group.forEach(radio => {\n if (radio.required) {\n required = true;\n }\n if (radio.checked) {\n selection = true;\n }\n });\n\n return required && !selection;\n }\n}\n", "import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}radio`;\n\nconst attributes = {\n CHECKED: 'checked',\n DEFAULT_CHECKED: 'default-checked',\n VALUE: 'value',\n DENSE: 'dense',\n DISABLED: 'disabled',\n REQUIRED: 'required',\n READONLY: 'readonly',\n LABEL_POSITION: 'label-position',\n TABINDEX: 'tabindex'\n};\n\nconst selectors = {\n ROOT: '.forge-radio',\n LABEL: '#label',\n STATE_LAYER: 'forge-state-layer'\n};\n\nconst events = {\n CHANGE: 'change',\n INPUT: 'input'\n};\n\nexport const RADIO_CONSTANTS = {\n elementName,\n attributes,\n selectors,\n events\n};\n\n/**\n * This symbol is used to attempt to check a radio while navigating between its siblings in a\n * group. It differs from simply setting `checked` in that it causes the input/change events to\n * emit and returns `false` if either was prevented. The radio group manager can then prevent a\n * change in focus and selection state.\n */\nexport const tryCheck = Symbol('tryCheck');\n\nexport type RadioState = 'checked' | 'unchecked';\nexport type RadioLabelPosition = 'start' | 'end';\n", "import { getShadowElement } from '@tylertech/forge-core';\nimport { internals, isFocusable, setDefaultAria } from '../../constants';\nimport { BaseAdapter, IBaseAdapter } from '../../core/base/';\nimport { StateLayerComponent } from '../../state-layer';\nimport { RadioGroupManager } from '../core/radio-group-manager';\nimport { IRadioComponent } from './radio';\nimport { RADIO_CONSTANTS, RadioLabelPosition, RadioState } from './radio-constants';\n\nexport interface IRadioAdapter extends IBaseAdapter {\n setChecked(checked: boolean, value: string): void;\n trySetDisabled(value: boolean): boolean;\n setRequired(value: boolean): void;\n setReadonly(value: boolean): void;\n setLabelPosition(value: RadioLabelPosition): void;\n disableStateLayer(value: boolean): void;\n setUncheckedRadioGroupFocus(event: 'focus' | 'blur'): void;\n focusNext(): void;\n focusPrevious(): void;\n}\n\nexport class RadioAdapter extends BaseAdapter<IRadioComponent> implements IRadioAdapter {\n private readonly _rootElement: HTMLElement;\n private readonly _labelElement: HTMLElement;\n private readonly _stateLayerElement: StateLayerComponent;\n\n constructor(component: IRadioComponent) {\n super(component);\n\n this._rootElement = getShadowElement(component, RADIO_CONSTANTS.selectors.ROOT);\n this._labelElement = getShadowElement(component, RADIO_CONSTANTS.selectors.LABEL);\n this._stateLayerElement = getShadowElement(component, RADIO_CONSTANTS.selectors.STATE_LAYER) as StateLayerComponent;\n }\n\n public setChecked(checked: boolean, value: string): void {\n this._component[setDefaultAria]({ ariaChecked: checked ? 'true' : 'false' });\n if (checked) {\n RadioGroupManager.setSelectedRadioInGroup(this._component);\n }\n\n // Update the form value, state, and validity\n const formValue = checked ? value : null;\n const formState: RadioState = checked ? 'checked' : 'unchecked';\n this._component[internals].setFormValue(formValue, formState);\n RadioGroupManager.setRadioGroupValidity(this._component);\n }\n\n /**\n * Attempts to set the disabled state of the radio. If the radio is in a disabled radio group, it\n * can't be enabled.\n * \n * @param value Whether the radio should be disabled.\n * @returns Whether the disabled state was set.\n */\n public trySetDisabled(value: boolean): boolean {\n const group = this._component.closest('forge-radio-group');\n\n if (!value && group && group.disabled) {\n return false;\n }\n\n this._component[setDefaultAria]({ ariaDisabled: `${!!value}` });\n this._component[isFocusable] = !value;\n return true;\n }\n\n public setRequired(value: boolean): void {\n this._component[setDefaultAria]({\n ariaRequired: value ? 'true' : 'false'\n }, { setAttribute: true });\n RadioGroupManager.setRadioGroupValidity(this._component);\n }\n\n public setReadonly(value: boolean): void {\n this._component[setDefaultAria]({ ariaDisabled: `${!!value}` });\n }\n\n public disableStateLayer(value: boolean): void {\n this._stateLayerElement.disabled = value;\n }\n\n public setLabelPosition(value: RadioLabelPosition): void {\n this._labelElement.remove();\n\n if (value === 'start') {\n this._rootElement.prepend(this._labelElement);\n } else {\n this._rootElement.append(this._labelElement);\n }\n }\n\n public setUncheckedRadioGroupFocus(event: 'focus' | 'blur'): void {\n RadioGroupManager.setUncheckedRadioGroupFocus(this._component, event);\n }\n\n public focusNext(): void {\n RadioGroupManager.focusNextRadioInGroup(this._component);\n }\n\n public focusPrevious(): void {\n RadioGroupManager.focusPreviousRadioInGroup(this._component);\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { task } from '../../core/utils/event-utils';\nimport { IRadioAdapter } from './radio-adapter';\nimport { RADIO_CONSTANTS, RadioLabelPosition } from './radio-constants';\n\nexport interface IRadioFoundation extends ICustomElementFoundation {\n checked: boolean;\n defaultChecked: boolean;\n value: string;\n disabled: boolean;\n required: boolean;\n readonly: boolean;\n dense: boolean;\n labelPosition: RadioLabelPosition;\n tryCheck(): boolean;\n}\n\nexport class RadioFoundation implements IRadioFoundation {\n // State\n private _checked = false;\n private _defaultChecked = false;\n private _value = 'on';\n private _disabled = false;\n private _required = false;\n private _readonly = false;\n private _dense = false;\n private _labelPosition: RadioLabelPosition = 'end';\n\n // Listeners\n private readonly _focusListener: EventListener;\n private readonly _blurListener: EventListener;\n private readonly _clickListener: EventListener;\n private readonly _keydownListener: EventListener;\n private readonly _keyupListener: EventListener;\n\n constructor(private _adapter: IRadioAdapter) {\n this._focusListener = () => this._handleFocus();\n this._blurListener = () => this._handleBlur();\n this._clickListener = (evt: MouseEvent) => this._handleClick(evt);\n this._keydownListener = (evt: KeyboardEvent) => this._handleKeydown(evt);\n this._keyupListener = (evt: KeyboardEvent) => this._handleKeyup(evt);\n }\n\n public initialize(): void {\n this._adapter.addHostListener('focus', this._focusListener);\n this._adapter.addHostListener('blur', this._blurListener);\n this._adapter.addHostListener('click', this._clickListener);\n this._adapter.addHostListener('keydown', this._keydownListener);\n this._adapter.addHostListener('keyup', this._keyupListener);\n }\n\n // Public methods\n\n public tryCheck(): boolean {\n this._checked = true;\n\n if (!this._dispatchEvents()) {\n this._checked = false;\n return false;\n }\n \n this._adapter.setChecked(this._checked, this._value);\n this._adapter.toggleHostAttribute(RADIO_CONSTANTS.attributes.CHECKED, this._checked);\n return true;\n }\n\n // Event handlers\n\n private _handleFocus(): void {\n if (!this._checked) {\n this._adapter.setUncheckedRadioGroupFocus('focus');\n }\n }\n\n private _handleBlur(): void {\n if (!this._checked) {\n this._adapter.setUncheckedRadioGroupFocus('blur');\n }\n }\n\n private _handleClick(evt: MouseEvent): void {\n this._activate(evt);\n }\n\n private _handleKeydown(evt: KeyboardEvent): void {\n switch (evt.key) {\n case 'ArrowRight':\n case 'ArrowDown':\n evt.preventDefault();\n this._adapter.focusNext();\n break;\n case 'ArrowLeft':\n case 'ArrowUp':\n evt.preventDefault();\n this._adapter.focusPrevious();\n break;\n case ' ':\n // Prevent the spacebar from scrolling the page\n evt.preventDefault();\n break;\n }\n }\n\n private _handleKeyup(evt: KeyboardEvent): void {\n if (evt.key === ' ') {\n this._activate(evt);\n }\n }\n\n /**\n * Checks the radio button if it is not disabled or readonly. Exits early if the activating\n * event is cancelled.\n */\n private async _activate(evt: Event): Promise<void> {\n if (this._checked || this._disabled || this._readonly) {\n return;\n }\n\n // Wait a task to allow the event to propagate to user code.\n await task();\n if (evt.defaultPrevented) {\n return;\n }\n\n this._checked = true;\n\n if (!this._dispatchEvents()) {\n this._checked = false;\n return;\n }\n\n this._adapter.setChecked(this._checked, this._value);\n this._adapter.toggleHostAttribute(RADIO_CONSTANTS.attributes.CHECKED, this._checked);\n }\n\n /**\n * Dispatches change and input events.\n * \n * @returns {boolean} - Returns true if neither event was cancelled.\n */\n private _dispatchEvents(): boolean {\n // Emit both change and input events per the spec.\n const changeEvent = new Event(RADIO_CONSTANTS.events.CHANGE, { bubbles: true, cancelable: true });\n const inputEvent = new Event(RADIO_CONSTANTS.events.INPUT, { bubbles: true, cancelable: true, composed: true });\n this._adapter.dispatchHostEvent(new Event(RADIO_CONSTANTS.events.CHANGE, { bubbles: true, cancelable: true }));\n this._adapter.dispatchHostEvent(new Event(RADIO_CONSTANTS.events.INPUT, { bubbles: true, cancelable: true, composed: true }));\n return !(changeEvent.defaultPrevented || inputEvent.defaultPrevented);\n }\n\n public get checked(): boolean {\n return this._checked;\n }\n public set checked(value: boolean) {\n if (this._checked !== value) {\n this._checked = value;\n this._adapter.setChecked(this._checked, this._value);\n this._adapter.toggleHostAttribute(RADIO_CONSTANTS.attributes.CHECKED, this._checked);\n }\n }\n\n public get defaultChecked(): boolean {\n return this._defaultChecked;\n }\n public set defaultChecked(value: boolean) {\n if (this._defaultChecked !== value) {\n this._defaultChecked = value;\n this._adapter.toggleHostAttribute(RADIO_CONSTANTS.attributes.DEFAULT_CHECKED, this._defaultChecked);\n }\n }\n\n public get value(): string {\n return this._value;\n }\n public set value(value: string) {\n if (this._value !== value) {\n this._value = value;\n this._adapter.setHostAttribute(RADIO_CONSTANTS.attributes.VALUE, this._value);\n }\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n // Attempt to set disabled, restore if unsuccessful\n if (this._adapter.trySetDisabled(this._disabled)) {\n this._adapter.disableStateLayer(this._disabled || this._readonly);\n this._adapter.toggleHostAttribute(RADIO_CONSTANTS.attributes.DISABLED, this._disabled);\n } else {\n this._disabled = !this._disabled;\n }\n }\n }\n\n public get required(): boolean {\n return this._required;\n }\n public set required(value: boolean) {\n if (this._required !== value) {\n this._required = value;\n this._adapter.setRequired(this._required);\n this._adapter.toggleHostAttribute(RADIO_CONSTANTS.attributes.REQUIRED, this._required);\n }\n }\n\n public get readonly(): boolean {\n return this._readonly;\n }\n public set readonly(value: boolean) {\n if (this._readonly !== value) {\n this._readonly = value;\n this._adapter.setReadonly(this._readonly);\n this._adapter.disableStateLayer(this._disabled || this._readonly);\n this._adapter.toggleHostAttribute(RADIO_CONSTANTS.attributes.READONLY, this._readonly);\n }\n }\n\n public get dense(): boolean {\n return this._dense;\n }\n public set dense(value: boolean) {\n if (this._dense !== value) {\n this._dense = value;\n this._adapter.toggleHostAttribute(RADIO_CONSTANTS.attributes.DENSE, this._dense);\n }\n }\n\n public get labelPosition(): RadioLabelPosition {\n return this._labelPosition;\n }\n public set labelPosition(value: RadioLabelPosition) {\n if (this._labelPosition !== value) {\n this._labelPosition = value;\n this._adapter.setLabelPosition(this._labelPosition);\n this._adapter.setHostAttribute(RADIO_CONSTANTS.attributes.LABEL_POSITION, this._labelPosition);\n }\n }\n}\n", "import { CustomElement, FoundationProperty, attachShadowTemplate, coerceBoolean } from '@tylertech/forge-core';\nimport { getFormState, getFormValue, inputType, internals, setDefaultAria } from '../../constants';\nimport { BaseComponent } from '../../core/base/base-component';\nimport { IWithFocusable, WithFocusable } from '../../core/mixins/focus/with-focusable';\nimport { IWithElementInternals, WithElementInternals } from '../../core/mixins/internals/with-element-internals';\nimport { IWithFormAssociation, WithFormAssociation } from '../../core/mixins/form/with-form-associated';\nimport { IWithLabelAwareness, WithLabelAwareness } from '../../core/mixins/label/with-label-aware';\nimport { FormValue } from '../../core/utils/form-utils';\nimport { FocusIndicatorComponent } from '../../focus-indicator';\nimport { StateLayerComponent } from '../../state-layer';\nimport { RadioGroupManager } from '../core/radio-group-manager';\nimport { RadioAdapter } from './radio-adapter';\nimport { RADIO_CONSTANTS, RadioLabelPosition, RadioState, tryCheck } from './radio-constants';\nimport { RadioFoundation } from './radio-foundation';\nimport { IWithDefaultAria, WithDefaultAria } from '../../core/mixins/internals/with-default-aria';\n\nconst template = '<template><div id=\\\"radio\\\" class=\\\"forge-radio\\\" part=\\\"radio\\\"><div id=\\\"container\\\" class=\\\"container\\\" aria-hidden=\\\"true\\\"><div id=\\\"background\\\" class=\\\"background\\\" part=\\\"background\\\"></div><forge-focus-indicator target=\\\":host\\\" part=\\\"focus-indicator\\\"></forge-focus-indicator><forge-state-layer exportparts=\\\"surface:state-layer\\\"></forge-state-layer></div><span id=\\\"label\\\" class=\\\"label\\\" for=\\\"input\\\" part=\\\"label\\\"><slot></slot></span></div></template>';\nconst style = ':host{display:inline-block;-webkit-tap-highlight-color:transparent}:host([hidden]){display:none}:host(:focus){outline:0}.forge-radio{--_radio-primary-color:var(--forge-radio-primary-color, var(--forge-theme-tertiary, #3d5afe));--_radio-inactive-color:var(--forge-radio-inactive-color, var(--forge-theme-surface-container-high, #9e9e9e));--_radio-size:var(--forge-radio-size, 20px);--_radio-mark-size:var(--forge-radio-mark-size, 12px);--_radio-state-layer-size:var(--forge-radio-state-layer-size, 40px);--_radio-state-layer-dense-size:var(--forge-radio-state-layer-dense-size, 24px);--_radio-width:var(--forge-radio-width, var(--_radio-size));--_radio-height:var(--forge-radio-height, var(--_radio-size));--_radio-border-width:var(--forge-radio-border-width, var(--forge-border-medium, 2px));--_radio-unchecked-border-color:var(--forge-radio-unchecked-border-color, var(--_radio-inactive-color));--_radio-checked-border-color:var(--forge-radio-checked-border-color, var(--_radio-primary-color));--_radio-background:var(--forge-radio-background, transparent);--_radio-shape:var(--forge-radio-shape, var(--forge-shape-round, 50%));--_radio-mark-width:var(--forge-radio-mark-width, var(--_radio-mark-size));--_radio-mark-height:var(--forge-radio-mark-height, var(--_radio-mark-size));--_radio-mark-unchecked-color:var(--forge-radio-mark-unchecked-color, var(--_radio-inactive-color));--_radio-mark-checked-color:var(--forge-radio-mark-checked-color, var(--_radio-primary-color));--_radio-mark-unchecked-background:var(--forge-radio-mark-unchecked-background, transparent);--_radio-mark-checked-background:var(--forge-radio-mark-checked-background, transparent);--_radio-gap:var(--forge-radio-gap, 0);--_radio-justify:var(--forge-radio-justify, space-between);--_radio-direction:var(--forge-radio-direction, initial);--_radio-state-layer-width:var(--forge-radio-state-layer-width, var(--_radio-state-layer-size));--_radio-state-layer-height:var(--forge-radio-state-layer-height, var(--_radio-state-layer-size));--_radio-state-layer-unchecked-color:var(--forge-radio-state-layer-unchecked-color, var(--_radio-color));--_radio-state-layer-checked-color:var(--forge-radio-state-layer-checked-color, var(--_radio-primary-color));--_radio-state-layer-shape:var(--forge-radio-state-layer-shape, var(--_radio-shape));--_radio-state-layer-dense-width:var(--forge-radio-state-layer-dense-width, var(--_radio-state-layer-dense-size));--_radio-state-layer-dense-height:var(--forge-radio-state-layer-dense-height, var(--_radio-state-layer-dense-size));--_radio-disabled-opacity:var(--forge-radio-disabled-opacity, 0.38);--_radio-animation-duration:var(--forge-radio-animation-duration, var(--forge-animation-duration-short4, 200ms));--_radio-animation-timing-function:var(--forge-radio-animation-timing-function, var(--forge-animation-easing-decelerate, cubic-bezier(0, 0, 0, 1)));--_radio-animation-delay:var(--forge-radio-animation-delay, 0ms)}.forge-radio{position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:var(--_radio-direction);flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:var(--_radio-justify);justify-content:var(--_radio-justify);gap:var(--_radio-gap);display:-webkit-box;display:flex}.forge-radio .container{position:relative;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;display:-webkit-box;display:flex;border-radius:var(--_radio-shape);inline-size:var(--_radio-state-layer-width);block-size:var(--_radio-state-layer-height);cursor:pointer}.forge-radio .background{position:relative;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;display:-webkit-box;display:flex;overflow:hidden;-webkit-transition-duration:var(--_radio-animation-duration);transition-duration:var(--_radio-animation-duration);-webkit-transition-delay:var(--_radio-animation-delay);transition-delay:var(--_radio-animation-delay);-webkit-transition-timing-function:var(--_radio-animation-timing-function);transition-timing-function:var(--_radio-animation-timing-function);-webkit-transition-property:border-color;transition-property:border-color;-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:var(--_radio-shape);border-width:var(--_radio-border-width);border-style:solid;border-color:var(--_radio-unchecked-border-color);inline-size:var(--_radio-width);block-size:var(--_radio-height);background:var(--_radio-background)}.forge-radio .background::after{content:\\\"\\\";position:absolute;contain:strict;-webkit-transition-duration:var(--_radio-animation-duration);transition-duration:var(--_radio-animation-duration);-webkit-transition-delay:var(--_radio-animation-delay);transition-delay:var(--_radio-animation-delay);-webkit-transition-timing-function:var(--_radio-animation-timing-function);transition-timing-function:var(--_radio-animation-timing-function);-webkit-transition-property:inline-size,block-size,border-color;transition-property:inline-size,block-size,border-color;border-radius:var(--_radio-shape);border-width:calc(var(--_radio-mark-height)/ 2) calc(var(--_radio-mark-width)/ 2);border-color:var(--_radio-mark-unchecked-color);border-style:solid;inline-size:calc(var(--_radio-width) - 2 * var(--_radio-border-width));block-size:calc(var(--_radio-height) - 2 * var(--_radio-border-width));background:var(--_radio-mark-unchecked-background)}.forge-radio .label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-label-font-family, var(--forge-typography-font-family, \\\"Roboto\\\", sans-serif));font-size:var(--forge-typography-label-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-font-size-scale, .75)));font-weight:var(--forge-typography-label-font-weight,400);line-height:var(--forge-typography-label-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-label-letter-spacing, .0357142857em);text-transform:var(--forge-typography-label-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-label-text-decoration,inherit);text-decoration:var(--forge-typography-label-text-decoration,inherit);cursor:default}.forge-radio .label:empty{display:none}:host([checked]) .forge-radio .background{border-color:var(--_radio-checked-border-color)}:host([checked]) .forge-radio .background::after{border-color:var(--_radio-mark-checked-color);inline-size:0px;block-size:0px;background:var(--_radio-mark-checked-background)}:host([checked]) forge-state-layer{--forge-state-layer-color:var(--_radio-state-layer-checked-color)}:host([dense]) .forge-radio .container{inline-size:var(--_radio-state-layer-dense-width);block-size:var(--_radio-state-layer-dense-height)}:host([disabled]) .forge-radio{opacity:var(--_radio-disabled-opacity)}:host([disabled]) .forge-radio .container{cursor:not-allowed}:host([readonly]) .forge-radio .container{cursor:not-allowed}forge-focus-indicator{--forge-focus-indicator-color:var(--_radio-primary-color);--forge-focus-indicator-outward-offset:0px;--forge-focus-indicator-shape:var(--_radio-state-layer-shape)}forge-state-layer{--forge-state-layer-color:var(--_radio-state-layer-unchecked-color)}';\n\nexport interface IRadioComponent extends IWithFormAssociation, IWithFocusable, IWithLabelAwareness, IWithElementInternals, IWithDefaultAria {\n checked: boolean;\n defaultChecked: boolean;\n required: boolean;\n dense: boolean;\n labelPosition: RadioLabelPosition;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-radio': IRadioComponent;\n }\n}\n\nconst BaseRadioClass = WithFormAssociation(WithLabelAwareness(WithFocusable(WithDefaultAria(WithElementInternals(BaseComponent)))));\n\n/**\n * @tag forge-radio\n * \n * @summary The Forge Radio component is used to create a form input where only one out of a set of\n * values should be selected.\n * \n * @property {boolean} checked - Indicates whether the radio button is checked.\n * @property {boolean} defaultChecked - Indicates whether the radio button is checked by default.\n * @property {string} value - The value of the radio button when submitted.\n * @property {boolean} dense - Indicates whether the radio button should be displayed in a dense layout.\n * @property {boolean} disabled - Indicates whether the radio button is disabled.\n * @property {boolean} required - Indicates whether the radio button is required.\n * @property {boolean} readonly - Indicates whether the radio button is read-only.\n * @property {RadioLabelPosition} labelPosition - The position of the radio button's label.\n * \n * @attribute {boolean} checked - Indicates whether the radio button is checked.\n * @attribute {boolean} default-checked - Indicates whether the radio button is checked by default.\n * @attribute {string} value - The value of the radio button when submitted.\n * @attribute {boolean} dense - Indicates whether the radio button should be displayed in a dense layout.\n * @attribute {boolean} disabled - Indicates whether the radio button is disabled.\n * @attribute {boolean} required - Indicates whether the radio button is required.\n * @attribute {boolean} readonly - Indicates whether the radio button is read-only.\n * @attribute {RadioLabelPosition} label-position - The position of the radio button's label.\n * \n * @cssproperty --forge-radio-primary-color - The primary color of the radio button when checked.\n * @cssproperty --forge-radio-inactive-color - The color of the radio button when unchecked.\n * @cssproperty --forge-radio-size - The size of the radio button in the inline and block directions.\n * @cssproperty --forge-radio-width - The width of the radio button.\n * @cssproperty --forge-radio-height - The height of the radio button.\n * @cssproperty --forge-radio-border-width - The width of the radio button's border.\n * @cssproperty --forge-radio-unchecked-border-color - The color of the radio button's border when unchecked.\n * @cssproperty --forge-radio-checked-border-color - The color of the radio button's border when checked.\n * @cssproperty --forge-radio-background - The background of the radio button.\n * @cssproperty --forge-radio-shape - The shape of the radio button.\n * @cssproperty --forge-radio-mark-size - The size of the radio button's mark in the inline and block directions.\n * @cssproperty --forge-radio-mark-width - The width of the radio button's mark.\n * @cssproperty --forge-radio-mark-height - The height of the radio button's mark.\n * @cssproperty --forge-radio-mark-unchecked-color - The color of the radio button's mark when unchecked.\n * @cssproperty --forge-radio-mark-checked-color - The color of the radio button's mark when checked.\n * @cssproperty --forge-radio-mark-unchecked-background - The background of the radio button's mark when unchecked.\n * @cssproperty --forge-radio-mark-checked-background - The background of the radio button's mark when checked.\n * @cssproperty --forge-radio-gap - The gap between the radio button and its label.\n * @cssproperty --forge-radio-justify - The alignment of the radio button and its label in the inline direction.\n * @cssproperty --forge-radio-direction - The direction of the radio button and its label.\n * @cssproperty --forge-radio-state-layer-size - The size of the radio button's state layer in the inline and block directions.\n * @cssproperty --forge-radio-state-layer-width - The width of the radio button's state layer.\n * @cssproperty --forge-radio-state-layer-height - The height of the radio button's state layer.\n * @cssproperty --forge-radio-state-layer-unchecked-color - The color of the radio button's state layer when unchecked.\n * @cssproperty --forge-radio-state-layer-checked-color - The color of the radio button's state layer when checked.\n * @cssproperty --forge-radio-state-layer-shape - The shape of the radio button's state layer.\n * @cssproperty --forge-radio-state-layer-dense-size - The size of the radio button's state layer when dense.\n * @cssproperty --forge-radio-state-layer-dense-width - The width of the radio button's state layer when dense.\n * @cssproperty --forge-radio-state-layer-dense-height - The height of the radio button's state layer when dense.\n * @cssproperty --forge-radio-disabled-opacity - The opacity of the radio button when disabled.\n * @cssproperty --forge-radio-animation-duration - The duration of the radio button's animations.\n * @cssproperty --forge-radio-animation-timing-function - The timing function of the radio button's animations.\n * @cssproperty --forge-radio-animation-delay - The delay of the radio button's animations.\n * \n * @csspart radio - Styles the radio's root element.\n * @csspart background - Styles the border and background of the radio.\n * @csspart focus-indicator - Styles the focus indicator of the radio.\n * @csspart state-layer - Styles the state layer of the radio.\n * \n * @slot - This is a default/unnamed slot for the label text.\n */\n@CustomElement({\n name: RADIO_CONSTANTS.elementName,\n dependencies: [\n FocusIndicatorComponent,\n StateLayerComponent\n ]\n})\nexport class RadioComponent extends BaseRadioClass implements IRadioComponent {\n public static get observedAttributes(): string[] {\n return [\n RADIO_CONSTANTS.attributes.CHECKED,\n RADIO_CONSTANTS.attributes.DEFAULT_CHECKED,\n RADIO_CONSTANTS.attributes.VALUE,\n RADIO_CONSTANTS.attributes.DENSE,\n RADIO_CONSTANTS.attributes.DISABLED,\n RADIO_CONSTANTS.attributes.REQUIRED,\n RADIO_CONSTANTS.attributes.READONLY,\n RADIO_CONSTANTS.attributes.LABEL_POSITION,\n RADIO_CONSTANTS.attributes.TABINDEX\n ];\n }\n\n private _foundation: RadioFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, style);\n this[inputType] = 'radio';\n this._foundation = new RadioFoundation(new RadioAdapter(this));\n }\n\n public override connectedCallback(): void {\n super.connectedCallback();\n this[setDefaultAria]({\n role: 'radio',\n ariaChecked: this.checked ? 'true' : 'false',\n ariaDisabled: this.disabled ? 'true' : 'false',\n ariaInvalid: this[internals].validity.valid ? 'false' : 'true',\n ariaRequired: this.required ? 'true' : 'false'\n });\n this._foundation.initialize();\n }\n\n public override attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case RADIO_CONSTANTS.attributes.CHECKED:\n this._foundation.checked = coerceBoolean(newValue);\n break;\n case RADIO_CONSTANTS.attributes.DEFAULT_CHECKED:\n this._foundation.defaultChecked = coerceBoolean(newValue);\n break;\n case RADIO_CONSTANTS.attributes.VALUE:\n this.value = newValue;\n break;\n case RADIO_CONSTANTS.attributes.DENSE:\n this.dense = coerceBoolean(newValue);\n break;\n case RADIO_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case RADIO_CONSTANTS.attributes.REQUIRED:\n this.required = coerceBoolean(newValue);\n break;\n case RADIO_CONSTANTS.attributes.READONLY:\n this.readonly = coerceBoolean(newValue);\n break;\n case RADIO_CONSTANTS.attributes.LABEL_POSITION:\n this.labelPosition = newValue as RadioLabelPosition;\n break;\n }\n super.attributeChangedCallback(name, oldValue, newValue);\n }\n\n public override [getFormValue](): FormValue | null {\n return this.checked ? this.value : null;\n }\n\n public override [getFormState](): RadioState {\n return this.checked ? 'checked' : 'unchecked';\n }\n\n public formResetCallback(): void {\n RadioGroupManager.requestRadioGroupReset(this);\n }\n\n public formStateRestoreCallback(state: RadioState): void {\n this.checked = state === 'checked';\n }\n\n public labelClickedCallback(): void {\n this.click();\n }\n\n public labelChangedCallback(value: string | null): void {\n this[setDefaultAria]({ ariaLabel: value });\n }\n\n @FoundationProperty()\n public declare checked: boolean;\n\n @FoundationProperty()\n public declare defaultChecked: boolean;\n\n @FoundationProperty()\n public declare value: string;\n\n @FoundationProperty()\n public declare dense: boolean;\n\n @FoundationProperty()\n public declare disabled: boolean;\n\n @FoundationProperty()\n public declare required: boolean;\n\n @FoundationProperty()\n public declare readonly: boolean;\n\n @FoundationProperty()\n public declare labelPosition: RadioLabelPosition;\n\n public [tryCheck](): boolean {\n return this._foundation.tryCheck();\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { RadioComponent } from './radio';\n\nexport * from './radio-adapter';\nexport * from './radio-constants';\nexport * from './radio-foundation';\nexport * from './radio';\n\nexport function defineRadioComponent(): void {\n defineCustomElement(RadioComponent);\n}\n"],
|
|
5
|
+
"mappings": "ulBAOO,IAAMA,EAAN,MAAMA,CAAkB,CAe7B,OAAc,cAAcC,EAAwC,CAElE,GAAI,CAACA,EAAG,KACN,MAAO,CAACA,CAAE,EAIZ,GAAI,CAACA,EAAG,KAAM,CAEZ,IAAMC,EADOD,EAAG,YAAY,EACH,iBAAkC,GAAGE,EAAgB,oBAAoBF,EAAG,OAAO,EAC5G,OAAO,MAAM,KAAKC,CAAW,EAAE,OAAOE,GAAS,CAACA,EAAM,IAAI,EAI5D,IAAMC,EAAaJ,EAAG,KAAK,SAAS,UAAUA,EAAG,IAAI,EACrD,OAAII,GAAc,OAAO,UAAU,cAAc,KAAK,cAAc,UAAWA,CAAU,EAChF,MAAM,KAAKA,CAA2B,EAC1C,OAAQD,GAAuBA,EAAM,QAAQD,EAAgB,WAAW,CAAC,EAEvE,CAACF,CAAE,CACZ,CASA,OAAc,sBAAsBA,EAA2B,CAC7D,IAAMK,EAAQN,EAAkB,cAAcC,CAAE,EAC1CM,EAAUP,EAAkB,qBAAqBM,CAAK,EAE5DA,EAAM,QAAQF,GAAS,CACrB,IAAMI,EAAoBJ,EAAMK,CAAoB,EAAE,CACpD,SAAUF,EACV,QAASH,EAAM,OACjB,CAAC,EACDA,EAAMM,CAAS,EAAE,YAAY,CAAE,aAAcH,CAAQ,EAAGC,CAAiB,EACzEJ,EAAMO,CAAc,EAAE,CAAE,YAAeJ,EAAU,OAAS,OAAQ,CAAC,CACrE,CAAC,CACH,CAOA,OAAc,wBAAwBN,EAA2B,CACjDD,EAAkB,cAAcC,CAAE,EAC1C,QAAQG,GAASA,EAAM,QAAUA,IAAUH,CAAE,CACrD,CAOA,OAAc,sBAAsBA,EAA2B,CAC7DD,EAAkB,uBAAuBC,EAAI,CAAC,CAChD,CAOA,OAAc,0BAA0BA,EAA2B,CACjED,EAAkB,uBAAuBC,EAAI,EAAE,CACjD,CAUA,OAAc,4BAA4BA,EAAqBW,EAA+B,CAC5F,IAAMN,EAAQN,EAAkB,cAAcC,CAAE,EAEhD,GAAIW,IAAU,QAAS,CACrBN,EAAM,QAAQF,GAASA,EAAMS,CAAW,EAAIT,IAAUH,CAAE,EACxD,QAGE,CAACA,EAAG,SAAWK,EAAM,CAAC,IAAML,GAAMK,EAAMA,EAAM,OAAS,CAAC,IAAML,IAChEK,EAAM,QAAQF,GAASA,EAAMS,CAAW,EAAI,EAAI,CAEpD,CASA,aAAoB,uBAAuBZ,EAAoC,CAS7E,GARA,KAAK,uBAAuB,IAAIA,CAAE,EAIlC,MAAMa,EAAK,EAIP,CAAC,KAAK,uBAAuB,IAAIb,CAAE,EACrC,OAGF,IAAMK,EAAQN,EAAkB,cAAcC,CAAE,EAC5Cc,EAAuC,KAI3CT,EAAM,QAAQF,GAAS,CACrB,KAAK,uBAAuB,OAAOA,CAAK,EAEpCA,EAAM,iBACRW,EAAeX,EAEnB,CAAC,EAIDE,EAAM,QAAQF,GAAS,CACrBA,EAAM,QAAUA,IAAUW,EAC1BX,EAAMS,CAAW,EAAI,CAACE,GAAgBX,EAAM,OAC9C,CAAC,CACH,CASA,OAAe,uBAAuBH,EAAqBe,EAAyB,CAClF,IAAMV,EAAQN,EAAkB,cAAcC,CAAE,EAG5CgB,EAAQX,EAAM,QAAQL,CAAE,EACxBiB,EAAYZ,EAAMW,CAAK,EAC3B,EASE,IARAA,GAASD,EACLC,EAAQ,EACVA,EAAQX,EAAM,OAAS,EACdW,GAASX,EAAM,SACxBW,EAAQ,GAGVC,EAAYZ,EAAMW,CAAK,EACnBC,IAAcjB,EAChB,aAEKiB,EAAU,UAAYA,EAAU,UAGpCA,EAAUC,CAAQ,EAAE,IAKzBD,EAAUL,CAAW,EAAI,GACzBK,EAAU,MAAM,EAGhBZ,EAAM,QAAQF,GAAS,CACjBA,IAAUc,IAGdd,EAAMS,CAAW,EAAI,GACrBT,EAAM,QAAU,GAClB,CAAC,EACH,CAQA,OAAe,qBAAqBE,EAAmC,CACrE,IAAIc,EAAW,GACXC,EAAY,GAEhB,OAAAf,EAAM,QAAQF,GAAS,CACjBA,EAAM,WACRgB,EAAW,IAEThB,EAAM,UACRiB,EAAY,GAEhB,CAAC,EAEMD,GAAY,CAACC,CACtB,CACF,EAvNarB,EACI,uBAAyB,IAAI,QADvC,IAAMsB,EAANtB,ECLP,IAAMuB,EAA2C,GAAGC,SAE9CC,EAAa,CACjB,QAAS,UACT,gBAAiB,kBACjB,MAAO,QACP,MAAO,QACP,SAAU,WACV,SAAU,WACV,SAAU,WACV,eAAgB,iBAChB,SAAU,UACZ,EAEMC,EAAY,CAChB,KAAM,eACN,MAAO,SACP,YAAa,mBACf,EAEMC,EAAS,CACb,OAAQ,SACR,MAAO,OACT,EAEaC,EAAkB,CAC7B,YAAAL,EACA,WAAAE,EACA,UAAAC,EACA,OAAAC,CACF,EAQaE,EAAW,OAAO,UAAU,ECpBlC,IAAMC,EAAN,cAA2BC,CAAsD,CAKtF,YAAYC,EAA4B,CACtC,MAAMA,CAAS,EAEf,KAAK,aAAeC,EAAiBD,EAAWE,EAAgB,UAAU,IAAI,EAC9E,KAAK,cAAgBD,EAAiBD,EAAWE,EAAgB,UAAU,KAAK,EAChF,KAAK,mBAAqBD,EAAiBD,EAAWE,EAAgB,UAAU,WAAW,CAC7F,CAEO,WAAWC,EAAkBC,EAAqB,CACvD,KAAK,WAAWC,CAAc,EAAE,CAAE,YAAaF,EAAU,OAAS,OAAQ,CAAC,EACvEA,GACFG,EAAkB,wBAAwB,KAAK,UAAU,EAI3D,IAAMC,EAAYJ,EAAUC,EAAQ,KAC9BI,EAAwBL,EAAU,UAAY,YACpD,KAAK,WAAWM,CAAS,EAAE,aAAaF,EAAWC,CAAS,EAC5DF,EAAkB,sBAAsB,KAAK,UAAU,CACzD,CASO,eAAeF,EAAyB,CAC7C,IAAMM,EAAQ,KAAK,WAAW,QAAQ,mBAAmB,EAEzD,MAAI,CAACN,GAASM,GAASA,EAAM,SACpB,IAGT,KAAK,WAAWL,CAAc,EAAE,CAAE,aAAc,GAAG,CAAC,CAACD,GAAQ,CAAC,EAC9D,KAAK,WAAWO,CAAW,EAAI,CAACP,EACzB,GACT,CAEO,YAAYA,EAAsB,CACvC,KAAK,WAAWC,CAAc,EAAE,CAC9B,aAAcD,EAAQ,OAAS,OACjC,EAAG,CAAE,aAAc,EAAK,CAAC,EACzBE,EAAkB,sBAAsB,KAAK,UAAU,CACzD,CAEO,YAAYF,EAAsB,CACvC,KAAK,WAAWC,CAAc,EAAE,CAAE,aAAc,GAAG,CAAC,CAACD,GAAQ,CAAC,CAChE,CAEO,kBAAkBA,EAAsB,CAC7C,KAAK,mBAAmB,SAAWA,CACrC,CAEO,iBAAiBA,EAAiC,CACvD,KAAK,cAAc,OAAO,EAEtBA,IAAU,QACZ,KAAK,aAAa,QAAQ,KAAK,aAAa,EAE5C,KAAK,aAAa,OAAO,KAAK,aAAa,CAE/C,CAEO,4BAA4BQ,EAA+B,CAChEN,EAAkB,4BAA4B,KAAK,WAAYM,CAAK,CACtE,CAEO,WAAkB,CACvBN,EAAkB,sBAAsB,KAAK,UAAU,CACzD,CAEO,eAAsB,CAC3BA,EAAkB,0BAA0B,KAAK,UAAU,CAC7D,CACF,ECpFO,IAAMO,EAAN,KAAkD,CAkBvD,YAAoBC,EAAyB,CAAzB,cAAAA,EAhBpB,KAAQ,SAAW,GACnB,KAAQ,gBAAkB,GAC1B,KAAQ,OAAS,KACjB,KAAQ,UAAY,GACpB,KAAQ,UAAY,GACpB,KAAQ,UAAY,GACpB,KAAQ,OAAS,GACjB,KAAQ,eAAqC,MAU3C,KAAK,eAAiB,IAAM,KAAK,aAAa,EAC9C,KAAK,cAAgB,IAAM,KAAK,YAAY,EAC5C,KAAK,eAAkBC,GAAoB,KAAK,aAAaA,CAAG,EAChE,KAAK,iBAAoBA,GAAuB,KAAK,eAAeA,CAAG,EACvE,KAAK,eAAkBA,GAAuB,KAAK,aAAaA,CAAG,CACrE,CAEO,YAAmB,CACxB,KAAK,SAAS,gBAAgB,QAAS,KAAK,cAAc,EAC1D,KAAK,SAAS,gBAAgB,OAAQ,KAAK,aAAa,EACxD,KAAK,SAAS,gBAAgB,QAAS,KAAK,cAAc,EAC1D,KAAK,SAAS,gBAAgB,UAAW,KAAK,gBAAgB,EAC9D,KAAK,SAAS,gBAAgB,QAAS,KAAK,cAAc,CAC5D,CAIO,UAAoB,CAGzB,OAFA,KAAK,SAAW,GAEX,KAAK,gBAAgB,GAK1B,KAAK,SAAS,WAAW,KAAK,SAAU,KAAK,MAAM,EACnD,KAAK,SAAS,oBAAoBC,EAAgB,WAAW,QAAS,KAAK,QAAQ,EAC5E,KANL,KAAK,SAAW,GACT,GAMX,CAIQ,cAAqB,CACtB,KAAK,UACR,KAAK,SAAS,4BAA4B,OAAO,CAErD,CAEQ,aAAoB,CACrB,KAAK,UACR,KAAK,SAAS,4BAA4B,MAAM,CAEpD,CAEQ,aAAaD,EAAuB,CAC1C,KAAK,UAAUA,CAAG,CACpB,CAEQ,eAAeA,EAA0B,CAC/C,OAAQA,EAAI,IAAK,CACf,IAAK,aACL,IAAK,YACHA,EAAI,eAAe,EACnB,KAAK,SAAS,UAAU,EACxB,MACF,IAAK,YACL,IAAK,UACHA,EAAI,eAAe,EACnB,KAAK,SAAS,cAAc,EAC5B,MACF,IAAK,IAEHA,EAAI,eAAe,EACnB,KACJ,CACF,CAEQ,aAAaA,EAA0B,CACzCA,EAAI,MAAQ,KACd,KAAK,UAAUA,CAAG,CAEtB,CAMA,MAAc,UAAUA,EAA2B,CACjD,GAAI,OAAK,UAAY,KAAK,WAAa,KAAK,aAK5C,MAAME,EAAK,EACP,CAAAF,EAAI,kBAMR,IAFA,KAAK,SAAW,GAEZ,CAAC,KAAK,gBAAgB,EAAG,CAC3B,KAAK,SAAW,GAChB,OAGF,KAAK,SAAS,WAAW,KAAK,SAAU,KAAK,MAAM,EACnD,KAAK,SAAS,oBAAoBC,EAAgB,WAAW,QAAS,KAAK,QAAQ,EACrF,CAOQ,iBAA2B,CAEjC,IAAME,EAAc,IAAI,MAAMF,EAAgB,OAAO,OAAQ,CAAE,QAAS,GAAM,WAAY,EAAK,CAAC,EAC1FG,EAAa,IAAI,MAAMH,EAAgB,OAAO,MAAO,CAAE,QAAS,GAAM,WAAY,GAAM,SAAU,EAAK,CAAC,EAC9G,YAAK,SAAS,kBAAkB,IAAI,MAAMA,EAAgB,OAAO,OAAQ,CAAE,QAAS,GAAM,WAAY,EAAK,CAAC,CAAC,EAC7G,KAAK,SAAS,kBAAkB,IAAI,MAAMA,EAAgB,OAAO,MAAO,CAAE,QAAS,GAAM,WAAY,GAAM,SAAU,EAAK,CAAC,CAAC,EACrH,EAAEE,EAAY,kBAAoBC,EAAW,iBACtD,CAEA,IAAW,SAAmB,CAC5B,OAAO,KAAK,QACd,CACA,IAAW,QAAQC,EAAgB,CAC7B,KAAK,WAAaA,IACpB,KAAK,SAAWA,EAChB,KAAK,SAAS,WAAW,KAAK,SAAU,KAAK,MAAM,EACnD,KAAK,SAAS,oBAAoBJ,EAAgB,WAAW,QAAS,KAAK,QAAQ,EAEvF,CAEA,IAAW,gBAA0B,CACnC,OAAO,KAAK,eACd,CACA,IAAW,eAAeI,EAAgB,CACpC,KAAK,kBAAoBA,IAC3B,KAAK,gBAAkBA,EACvB,KAAK,SAAS,oBAAoBJ,EAAgB,WAAW,gBAAiB,KAAK,eAAe,EAEtG,CAEA,IAAW,OAAgB,CACzB,OAAO,KAAK,MACd,CACA,IAAW,MAAMI,EAAe,CAC1B,KAAK,SAAWA,IAClB,KAAK,OAASA,EACd,KAAK,SAAS,iBAAiBJ,EAAgB,WAAW,MAAQ,KAAK,MAAM,EAEjF,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SACd,CACA,IAAW,SAASI,EAAgB,CAC9B,KAAK,YAAcA,IACrB,KAAK,UAAYA,EAEb,KAAK,SAAS,eAAe,KAAK,SAAS,GAC7C,KAAK,SAAS,kBAAkB,KAAK,WAAa,KAAK,SAAS,EAChE,KAAK,SAAS,oBAAoBJ,EAAgB,WAAW,SAAU,KAAK,SAAS,GAErF,KAAK,UAAY,CAAC,KAAK,UAG7B,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SACd,CACA,IAAW,SAASI,EAAgB,CAC9B,KAAK,YAAcA,IACrB,KAAK,UAAYA,EACjB,KAAK,SAAS,YAAY,KAAK,SAAS,EACxC,KAAK,SAAS,oBAAoBJ,EAAgB,WAAW,SAAU,KAAK,SAAS,EAEzF,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SACd,CACA,IAAW,SAASI,EAAgB,CAC9B,KAAK,YAAcA,IACrB,KAAK,UAAYA,EACjB,KAAK,SAAS,YAAY,KAAK,SAAS,EACxC,KAAK,SAAS,kBAAkB,KAAK,WAAa,KAAK,SAAS,EAChE,KAAK,SAAS,oBAAoBJ,EAAgB,WAAW,SAAU,KAAK,SAAS,EAEzF,CAEA,IAAW,OAAiB,CAC1B,OAAO,KAAK,MACd,CACA,IAAW,MAAMI,EAAgB,CAC3B,KAAK,SAAWA,IAClB,KAAK,OAASA,EACd,KAAK,SAAS,oBAAoBJ,EAAgB,WAAW,MAAO,KAAK,MAAM,EAEnF,CAEA,IAAW,eAAoC,CAC7C,OAAO,KAAK,cACd,CACA,IAAW,cAAcI,EAA2B,CAC9C,KAAK,iBAAmBA,IAC1B,KAAK,eAAiBA,EACtB,KAAK,SAAS,iBAAiB,KAAK,cAAc,EAClD,KAAK,SAAS,iBAAiBJ,EAAgB,WAAW,eAAgB,KAAK,cAAc,EAEjG,CACF,EC/NA,IAAMK,EAAW,wbACXC,EAAQ,ymOAgBRC,EAAiBC,EAAoBC,EAAmBC,EAAcC,EAAgBC,EAAqBC,CAAa,CAAC,CAAC,CAAC,CAAC,EA0ErHC,EAAN,cAA6BP,CAA0C,CAiB5E,aAAc,CACZ,MAAM,EACNQ,EAAqB,KAAMV,EAAUC,CAAK,EAC1C,KAAKU,CAAS,EAAI,QAClB,KAAK,YAAc,IAAIC,EAAgB,IAAIC,EAAa,IAAI,CAAC,CAC/D,CArBA,WAAkB,oBAA+B,CAC/C,MAAO,CACLC,EAAgB,WAAW,QAC3BA,EAAgB,WAAW,gBAC3BA,EAAgB,WAAW,MAC3BA,EAAgB,WAAW,MAC3BA,EAAgB,WAAW,SAC3BA,EAAgB,WAAW,SAC3BA,EAAgB,WAAW,SAC3BA,EAAgB,WAAW,eAC3BA,EAAgB,WAAW,QAC7B,CACF,CAWgB,mBAA0B,CACxC,MAAM,kBAAkB,EACxB,KAAKC,CAAc,EAAE,CACnB,KAAM,QACN,YAAa,KAAK,QAAU,OAAS,QACrC,aAAc,KAAK,SAAW,OAAS,QACvC,YAAa,KAAKC,CAAS,EAAE,SAAS,MAAQ,QAAU,OACxD,aAAc,KAAK,SAAW,OAAS,OACzC,CAAC,EACD,KAAK,YAAY,WAAW,CAC9B,CAEgB,yBAAyBC,EAAcC,EAAkBC,EAAwB,CAC/F,OAAQF,EAAM,CACZ,KAAKH,EAAgB,WAAW,QAC9B,KAAK,YAAY,QAAUM,EAAcD,CAAQ,EACjD,MACF,KAAKL,EAAgB,WAAW,gBAC9B,KAAK,YAAY,eAAiBM,EAAcD,CAAQ,EACxD,MACF,KAAKL,EAAgB,WAAW,MAC9B,KAAK,MAAQK,EACb,MACF,KAAKL,EAAgB,WAAW,MAC9B,KAAK,MAAQM,EAAcD,CAAQ,EACnC,MACF,KAAKL,EAAgB,WAAW,SAC9B,KAAK,SAAWM,EAAcD,CAAQ,EACtC,MACF,KAAKL,EAAgB,WAAW,SAC9B,KAAK,SAAWM,EAAcD,CAAQ,EACtC,MACF,KAAKL,EAAgB,WAAW,SAC9B,KAAK,SAAWM,EAAcD,CAAQ,EACtC,MACF,KAAKL,EAAgB,WAAW,eAC9B,KAAK,cAAgBK,EACrB,KACJ,CACA,MAAM,yBAAyBF,EAAMC,EAAUC,CAAQ,CACzD,CAEA,CAAiBE,CAAY,GAAsB,CACjD,OAAO,KAAK,QAAU,KAAK,MAAQ,IACrC,CAEA,CAAiBC,CAAY,GAAgB,CAC3C,OAAO,KAAK,QAAU,UAAY,WACpC,CAEO,mBAA0B,CAC/BC,EAAkB,uBAAuB,IAAI,CAC/C,CAEO,yBAAyBC,EAAyB,CACvD,KAAK,QAAUA,IAAU,SAC3B,CAEO,sBAA6B,CAClC,KAAK,MAAM,CACb,CAEO,qBAAqBC,EAA4B,CACtD,KAAKV,CAAc,EAAE,CAAE,UAAWU,CAAM,CAAC,CAC3C,CA0BA,CAAQC,CAAQ,GAAa,CAC3B,OAAO,KAAK,YAAY,SAAS,CACnC,CACF,EA1BiBC,EAAA,CADdC,EAAmB,GA1FTnB,EA2FI,uBAGAkB,EAAA,CADdC,EAAmB,GA7FTnB,EA8FI,8BAGAkB,EAAA,CADdC,EAAmB,GAhGTnB,EAiGI,qBAGAkB,EAAA,CADdC,EAAmB,GAnGTnB,EAoGI,qBAGAkB,EAAA,CADdC,EAAmB,GAtGTnB,EAuGI,wBAGAkB,EAAA,CADdC,EAAmB,GAzGTnB,EA0GI,wBAGAkB,EAAA,CADdC,EAAmB,GA5GTnB,EA6GI,wBAGAkB,EAAA,CADdC,EAAmB,GA/GTnB,EAgHI,6BAhHJA,EAANkB,EAAA,CAPNE,EAAc,CACb,KAAMf,EAAgB,YACtB,aAAc,CACZgB,EACAC,CACF,CACF,CAAC,GACYtB,GClGN,SAASuB,IAA6B,CAC3CC,EAAoBC,CAAc,CACpC",
|
|
6
|
+
"names": ["_RadioGroupManager", "el", "namedRadios", "RADIO_CONSTANTS", "radio", "formRadios", "group", "invalid", "validationMessage", "getValidationMessage", "internals", "setDefaultAria", "event", "isFocusable", "task", "checkedRadio", "increment", "index", "nextRadio", "tryCheck", "required", "selection", "RadioGroupManager", "elementName", "COMPONENT_NAME_PREFIX", "attributes", "selectors", "events", "RADIO_CONSTANTS", "tryCheck", "RadioAdapter", "BaseAdapter", "component", "getShadowElement", "RADIO_CONSTANTS", "checked", "value", "setDefaultAria", "RadioGroupManager", "formValue", "formState", "internals", "group", "isFocusable", "event", "RadioFoundation", "_adapter", "evt", "RADIO_CONSTANTS", "task", "changeEvent", "inputEvent", "value", "template", "style", "BaseRadioClass", "WithFormAssociation", "WithLabelAwareness", "WithFocusable", "WithDefaultAria", "WithElementInternals", "BaseComponent", "RadioComponent", "attachShadowTemplate", "inputType", "RadioFoundation", "RadioAdapter", "RADIO_CONSTANTS", "setDefaultAria", "internals", "name", "oldValue", "newValue", "coerceBoolean", "getFormValue", "getFormState", "RadioGroupManager", "state", "value", "tryCheck", "__decorateClass", "FoundationProperty", "CustomElement", "FocusIndicatorComponent", "StateLayerComponent", "defineRadioComponent", "defineCustomElement", "RadioComponent"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import{d as y}from"./chunk.436USWLL.js";import{b as N}from"./chunk.4O6OEUGY.js";import{d as B}from"./chunk.4OG3OGVO.js";import{a as E}from"./chunk.VGIZJ32U.js";import{l as I}from"./chunk.4JB3SESQ.js";import{a as A}from"./chunk.ZY3ETQ3D.js";import{a as o}from"./chunk.NVUMRW44.js";import{a as T,b as x}from"./chunk.RRNSZCVJ.js";import{a as v,e as b,f as n,k as O}from"./chunk.TPXXHX5J.js";import{d}from"./chunk.HZUQXCOQ.js";import{k as f,l as m}from"./chunk.J2M2MXP2.js";import{a as p,b as g,d as a}from"./chunk.M3QDAYD2.js";var h=`${x}profile-card`,L={FULL_NAME:"full-name",EMAIL:"email",SIGN_OUT:"sign-out",PROFILE:"profile",SIGN_OUT_TEXT:"sign-out-text",PROFILE_TEXT:"profile-text",AVATAR_TEXT:"avatar-text",AVATAR_ICON:"avatar-icon",AVATAR_IMAGE_URL:"avatar-image-url",AVATAR_LETTER_COUNT:"avatar-letter-count"},C={FULL_NAME:".full-name",EMAIL:".email",AVATAR:".avatar > forge-avatar",ACTION_TOOLBAR:"#action-toolbar",PROFILE_BUTTON:"#profile-button",SIGN_OUT_BUTTON:"#sign-out-button"},U={SHOW_SIGN_OUT_BUTTON:!0,SHOW_PROFILE_BUTTON:!1,SIGN_OUT_BUTTON_TEXT:"Sign out",PROFILE_BUTTON_TEXT:"Profile"},P={SIGN_OUT:`${h}-sign-out`,PROFILE:`${h}-profile`},i={elementName:h,attributes:L,selectors:C,defaults:U,events:P};var l=class extends A{constructor(e){super(e);this._fullNameElement=n(e,i.selectors.FULL_NAME),this._emailElement=n(e,i.selectors.EMAIL),this._avatarElement=n(e,i.selectors.AVATAR),this._actionToolbar=n(e,i.selectors.ACTION_TOOLBAR),this._profileButton=n(e,i.selectors.PROFILE_BUTTON),this._signOutButton=n(e,i.selectors.SIGN_OUT_BUTTON)}setFullName(e){this._fullNameElement.textContent=e}setEmail(e){this._emailElement.textContent=e}setAvatarText(e){d(this._avatarElement),this._avatarElement.text=e}setAvatarIcon(e){if(e){let c=new E({props:{name:e}});this._avatarElement.replaceChildren(c.element)}else d(this._avatarElement)}setAvatarImageUrl(e){this._avatarElement.imageUrl=e}setAvatarLetterCount(e){this._avatarElement.letterCount=e}setActionToolbarVisibility(e){e?this._actionToolbar.style.removeProperty("display"):this._actionToolbar.style.display="none"}setProfileButtonVisibility(e){e?this._profileButton.style.removeProperty("display"):this._profileButton.style.display="none"}setSignOutButtonVisibility(e){e?this._signOutButton.style.removeProperty("display"):this._signOutButton.style.display="none"}setSignOutButtonText(e){this._signOutButton.textContent=e}setProfileButtonText(e){this._profileButton.textContent=e}setProfileButtonListener(e){this._profileButton.addEventListener("click",e)}setSignOutButtonListener(e){this._signOutButton.addEventListener("click",e)}requestProfileButtonFocus(e){window.requestAnimationFrame(()=>this._profileButton.focus(e))}requestSignOutButtonFocus(e){window.requestAnimationFrame(()=>this._signOutButton.focus(e))}};var u=class{constructor(t){this._adapter=t;this._showSignOutButton=i.defaults.SHOW_SIGN_OUT_BUTTON;this._showProfileButton=i.defaults.SHOW_PROFILE_BUTTON;this._signOutButtonText=i.defaults.SIGN_OUT_BUTTON_TEXT;this._profileButtonText=i.defaults.PROFILE_BUTTON_TEXT;this._profileListener=e=>this._onProfileButtonClick(e),this._signOutListener=e=>this._onSignOutButtonClick(e)}initialize(){this._adapter.setProfileButtonListener(this._profileListener),this._adapter.setSignOutButtonListener(this._signOutListener)}focus(t){this._showSignOutButton?this._adapter.requestSignOutButtonFocus(g(p({},t),{focusVisible:!0})):this._showProfileButton&&this._adapter.requestProfileButtonFocus(g(p({},t),{focusVisible:!0}))}_setActionVisibility(){let t=this._showSignOutButton||this._showProfileButton;this._adapter.setActionToolbarVisibility(t),this._adapter.setSignOutButtonVisibility(this._showSignOutButton),this._adapter.setProfileButtonVisibility(this._showProfileButton)}_onProfileButtonClick(t){t.stopPropagation(),this._adapter.emitHostEvent(i.events.PROFILE)}_onSignOutButtonClick(t){t.stopPropagation(),this._adapter.emitHostEvent(i.events.SIGN_OUT)}get fullName(){return this._fullName}set fullName(t){this._fullName!==t&&(this._fullName=t!=null?t:"",this._adapter.setFullName(this._fullName),this._avatarText||this._adapter.setAvatarText(this._fullName),this._adapter.toggleHostAttribute(i.attributes.FULL_NAME,!!this._fullName,this._fullName))}get email(){return this._email}set email(t){this._email!==t&&(this._email=t!=null?t:"",this._adapter.setEmail(this._email),this._adapter.toggleHostAttribute(i.attributes.EMAIL,!!this._email,this._email))}get avatarText(){return this._avatarText}set avatarText(t){this._avatarText!==t&&(this._avatarText=t!=null?t:"",this._adapter.setAvatarText(this._avatarText),this._adapter.toggleHostAttribute(i.attributes.AVATAR_TEXT,!!this._avatarText,this._avatarText))}get avatarIcon(){return this._avatarIcon}set avatarIcon(t){this._avatarIcon!==t&&(this._avatarIcon=t!=null?t:"",this._adapter.setAvatarIcon(this._avatarIcon),this._adapter.toggleHostAttribute(i.attributes.AVATAR_ICON,!!this._avatarIcon,this._avatarIcon))}get avatarImageUrl(){return this._avatarImageUrl}set avatarImageUrl(t){this._avatarImageUrl!==t&&(this._avatarImageUrl=t,this._adapter.setAvatarImageUrl(this._avatarImageUrl),this._adapter.toggleHostAttribute(i.attributes.AVATAR_IMAGE_URL,!!this._avatarImageUrl,this._avatarImageUrl))}get avatarLetterCount(){return this._avatarLetterCount}set avatarLetterCount(t){this._avatarLetterCount!==t&&(this._avatarLetterCount=t,this._adapter.setAvatarLetterCount(this._avatarLetterCount),this._adapter.toggleHostAttribute(i.attributes.AVATAR_LETTER_COUNT,!!this._avatarLetterCount,`${this._avatarLetterCount}`))}get signOut(){return this._showSignOutButton}set signOut(t){t=!!t,this._showSignOutButton!==t&&(this._showSignOutButton=t,this._setActionVisibility(),this._adapter.toggleHostAttribute(i.attributes.SIGN_OUT,this._showSignOutButton))}get profile(){return this._showProfileButton}set profile(t){t=!!t,this._showProfileButton!==t&&(this._showProfileButton=t,this._setActionVisibility(),this._adapter.toggleHostAttribute(i.attributes.PROFILE,this._showProfileButton))}get signOutText(){return this._signOutButtonText}set signOutText(t){if(this._signOutButtonText!==t){this._signOutButtonText=t||i.defaults.SIGN_OUT_BUTTON_TEXT,this._adapter.setSignOutButtonText(this._signOutButtonText);let e=this._signOutButtonText!==i.defaults.SIGN_OUT_BUTTON_TEXT;this._adapter.toggleHostAttribute(i.attributes.SIGN_OUT_TEXT,e,this._signOutButtonText)}}get profileText(){return this._profileButtonText}set profileText(t){if(this._profileButtonText!==t){this._profileButtonText=t||i.defaults.PROFILE_BUTTON_TEXT,this._adapter.setProfileButtonText(this._profileButtonText);let e=t!==i.defaults.PROFILE_BUTTON_TEXT;this._adapter.toggleHostAttribute(i.attributes.PROFILE_TEXT,e,this._profileButtonText)}}};var R='<template><div class="forge-profile-card" part="root"><div class="info-container"><div class="avatar"><forge-avatar part="avatar"></forge-avatar></div><div class="info-text"><div class="full-name" part="name"></div><div class="email" part="email"></div></div></div><slot></slot><forge-toolbar inverted id="action-toolbar"><forge-button variant="outlined" slot="end" style="display: none;" part="profile-button" id="profile-button">Profile</forge-button><forge-button slot="end" part="sign-out-button" id="sign-out-button">Sign out</forge-button></forge-toolbar></div></template>',S=':host{display:block}:host([hidden]){display:none}.forge-profile-card{--_profile-card-min-width:var(--forge-profile-card-min-width, 360px);--_profile-card-shape:var(--forge-profile-card-shape, var(--forge-shape-medium, 4px));--_profile-card-avatar-size:var(--forge-profile-card-avatar-size, 56px)}.forge-profile-card{min-width:var(--_profile-card-min-width);border-radius:var(--_profile-card-shape)}@media (max-width:399px){.forge-profile-card{width:100vw;min-width:unset;overflow:auto}}.forge-profile-card .info-container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;padding-block:var(--forge-spacing-xsmall,8px);padding-inline:var(--forge-spacing-medium,16px)}.forge-profile-card .avatar{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;padding:var(--forge-spacing-xsmall,8px);-webkit-margin-end:var(--forge-spacing-medium,16px);margin-inline-end:var(--forge-spacing-medium,16px);--forge-avatar-size:var(--_profile-card-avatar-size)}.forge-profile-card .text{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.forge-profile-card .full-name{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-heading2-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-heading2-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-heading2-font-size-scale, 1)));font-weight:var(--forge-typography-heading2-font-weight,500);line-height:var(--forge-typography-heading2-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-heading2-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-heading2-letter-spacing, .0125em);text-transform:var(--forge-typography-heading2-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-heading2-text-decoration,inherit);text-decoration:var(--forge-typography-heading2-text-decoration,inherit)}.forge-profile-card .email{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-subheading1-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-subheading1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-subheading1-font-size-scale, .875)));font-weight:var(--forge-typography-subheading1-font-weight,400);line-height:var(--forge-typography-subheading1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-subheading1-line-height-scale, 1.125)));letter-spacing:var(--forge-typography-subheading1-letter-spacing, normal);text-transform:var(--forge-typography-subheading1-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-subheading1-text-decoration,inherit);text-decoration:var(--forge-typography-subheading1-text-decoration,inherit);color:var(--forge-theme-text-medium,rgba(0,0,0,.6))}#action-toolbar{--forge-toolbar-padding:8px}#action-toolbar forge-button:not(:last-of-type){-webkit-margin-end:8px;margin-inline-end:8px}',r=class extends O{constructor(){super();b(this,R,S),this._foundation=new u(new l(this))}static get observedAttributes(){return[i.attributes.FULL_NAME,i.attributes.EMAIL,i.attributes.SIGN_OUT,i.attributes.PROFILE,i.attributes.SIGN_OUT_TEXT,i.attributes.PROFILE_TEXT,i.attributes.AVATAR_TEXT,i.attributes.AVATAR_ICON,i.attributes.AVATAR_IMAGE_URL,i.attributes.AVATAR_LETTER_COUNT]}connectedCallback(){this._foundation.initialize()}attributeChangedCallback(e,c,s){switch(e){case i.attributes.FULL_NAME:this.fullName=s;break;case i.attributes.EMAIL:this.email=s;break;case i.attributes.SIGN_OUT:this.signOut=f(s);break;case i.attributes.PROFILE:this.profile=f(s);break;case i.attributes.SIGN_OUT_TEXT:this.signOutText=s;break;case i.attributes.PROFILE_TEXT:this.profileText=s;break;case i.attributes.AVATAR_TEXT:this.avatarText=s;break;case i.attributes.AVATAR_ICON:this.avatarIcon=s;break;case i.attributes.AVATAR_IMAGE_URL:this.avatarImageUrl=s;break;case i.attributes.AVATAR_LETTER_COUNT:this.avatarLetterCount=m(s);break}}focus(e){this._foundation.focus(e)}};a([o()],r.prototype,"fullName",2),a([o()],r.prototype,"email",2),a([o()],r.prototype,"signOut",2),a([o()],r.prototype,"profile",2),a([o()],r.prototype,"signOutText",2),a([o()],r.prototype,"profileText",2),a([o()],r.prototype,"avatarText",2),a([o()],r.prototype,"avatarIcon",2),a([o()],r.prototype,"avatarImageUrl",2),a([o()],r.prototype,"avatarLetterCount",2),r=a([T({name:i.elementName,dependencies:[N,B,I,y]})],r);function st(){v(r)}export{i as a,l as b,u as c,r as d,st as e};
|
|
7
|
+
//# sourceMappingURL=chunk.6PB5OWMP.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/profile-card/profile-card-constants.ts", "../../src/profile-card/profile-card-adapter.ts", "../../src/profile-card/profile-card-foundation.ts", "../../src/profile-card/profile-card.ts", "../../src/profile-card/index.ts"],
|
|
4
|
-
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}profile-card`;\n\nconst attributes = {\n FULL_NAME: 'full-name',\n EMAIL: 'email',\n SIGN_OUT: 'sign-out',\n PROFILE: 'profile',\n SIGN_OUT_TEXT: 'sign-out-text',\n PROFILE_TEXT: 'profile-text',\n AVATAR_TEXT: 'avatar-text',\n AVATAR_ICON: 'avatar-icon',\n AVATAR_IMAGE_URL: 'avatar-image-url',\n AVATAR_LETTER_COUNT: 'avatar-letter-count'\n};\n\nconst selectors = {\n FULL_NAME: '.full-name',\n EMAIL: '.email',\n AVATAR: '.avatar > forge-avatar',\n ACTION_TOOLBAR: '#action-toolbar',\n PROFILE_BUTTON: '#profile-button',\n SIGN_OUT_BUTTON: '#sign-out-button'\n};\n\nconst defaults = {\n SHOW_SIGN_OUT_BUTTON: true,\n SHOW_PROFILE_BUTTON: false,\n SIGN_OUT_BUTTON_TEXT: 'Sign out',\n PROFILE_BUTTON_TEXT: 'Profile'\n};\n\nconst events = {\n SIGN_OUT: `${elementName}-sign-out`,\n PROFILE: `${elementName}-profile`\n};\n\nexport const PROFILE_CARD_CONSTANTS = {\n elementName,\n attributes,\n selectors,\n defaults,\n events\n};\n", "import { getShadowElement, removeAllChildren } from '@tylertech/forge-core';\nimport { ExperimentalFocusOptions } from '../constants';\nimport { IAvatarComponent } from '../avatar';\nimport { IButtonComponent } from '../button';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IconComponentDelegate } from '../icon';\nimport { IToolbarComponent } from '../toolbar';\nimport { IProfileCardComponent } from './profile-card';\nimport { PROFILE_CARD_CONSTANTS } from './profile-card-constants';\n\nexport interface IProfileCardAdapter extends IBaseAdapter {\n setFullName(value: string): void;\n setEmail(value: string): void;\n setAvatarText(value: string): void;\n setAvatarIcon(value: string): void;\n setAvatarImageUrl(value: string): void;\n setAvatarLetterCount(count: number): void;\n setActionToolbarVisibility(isVisible: boolean): void;\n setProfileButtonVisibility(isVisible: boolean): void;\n setSignOutButtonVisibility(isVisible: boolean): void;\n setSignOutButtonText(value: string): void;\n setProfileButtonText(value: string): void;\n setProfileButtonListener(listener: (evt: Event) => void): void;\n setSignOutButtonListener(listener: (evt: Event) => void): void;\n requestProfileButtonFocus(options?: ExperimentalFocusOptions): void;\n requestSignOutButtonFocus(options?: ExperimentalFocusOptions): void;\n}\n\nexport class ProfileCardAdapter extends BaseAdapter<IProfileCardComponent> implements IProfileCardAdapter {\n private _fullNameElement: HTMLElement;\n private _emailElement: HTMLElement;\n private _avatarElement: IAvatarComponent;\n private _actionToolbar: IToolbarComponent;\n private _profileButton: IButtonComponent;\n private _signOutButton: IButtonComponent;\n\n constructor(component: IProfileCardComponent) {\n super(component);\n this._fullNameElement = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.FULL_NAME);\n this._emailElement = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.EMAIL);\n this._avatarElement = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.AVATAR) as IAvatarComponent;\n this._actionToolbar = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.ACTION_TOOLBAR) as IToolbarComponent;\n this._profileButton = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.PROFILE_BUTTON) as IButtonComponent;\n this._signOutButton = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.SIGN_OUT_BUTTON) as IButtonComponent;\n }\n\n public setFullName(value: string): void {\n this._fullNameElement.textContent = value;\n }\n\n public setEmail(value: string): void {\n this._emailElement.textContent = value;\n }\n\n public setAvatarText(value: string): void {\n removeAllChildren(this._avatarElement);\n this._avatarElement.text = value;\n }\n\n public setAvatarIcon(value: string): void {\n if (value) {\n const iconDelegate = new IconComponentDelegate({ props: { name: value }});\n this._avatarElement.replaceChildren(iconDelegate.element);\n } else {\n removeAllChildren(this._avatarElement);\n }\n }\n\n public setAvatarImageUrl(value: string): void {\n this._avatarElement.imageUrl = value;\n }\n\n public setAvatarLetterCount(count: number): void {\n this._avatarElement.letterCount = count;\n }\n\n public setActionToolbarVisibility(isVisible: boolean): void {\n if (isVisible) {\n this._actionToolbar.style.removeProperty('display');\n } else {\n this._actionToolbar.style.display = 'none';\n }\n }\n\n public setProfileButtonVisibility(isVisible: boolean): void {\n if (isVisible) {\n this._profileButton.style.removeProperty('display');\n } else {\n this._profileButton.style.display = 'none';\n }\n }\n\n public setSignOutButtonVisibility(isVisible: boolean): void {\n if (isVisible) {\n this._signOutButton.style.removeProperty('display');\n } else {\n this._signOutButton.style.display = 'none';\n }\n }\n\n public setSignOutButtonText(value: string): void {\n this._signOutButton.textContent = value;\n }\n \n public setProfileButtonText(value: string): void {\n this._profileButton.textContent = value;\n }\n\n public setProfileButtonListener(listener: (evt: Event) => void): void {\n this._profileButton.addEventListener('click', listener);\n }\n\n public setSignOutButtonListener(listener: (evt: Event) => void): void {\n this._signOutButton.addEventListener('click', listener);\n }\n\n public requestProfileButtonFocus(options?: ExperimentalFocusOptions): void {\n window.requestAnimationFrame(() => this._profileButton.focus(options));\n }\n\n public requestSignOutButtonFocus(options?: ExperimentalFocusOptions): void {\n window.requestAnimationFrame(() => this._signOutButton.focus(options));\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { IProfileCardAdapter } from './profile-card-adapter';\nimport { PROFILE_CARD_CONSTANTS } from './profile-card-constants';\n\nexport interface IProfileCardFoundation extends ICustomElementFoundation {\n fullName: string;\n email: string;\n signOut: boolean;\n profile: boolean;\n signOutText: string;\n profileText: string;\n avatarText: string;\n avatarIcon: string;\n avatarImageUrl: string;\n avatarLetterCount: number;\n focus(options?: FocusOptions): void;\n}\n\nexport class ProfileCardFoundation implements IProfileCardFoundation {\n private _fullName: string;\n private _email: string;\n private _avatarText: string;\n private _avatarIcon: string;\n private _avatarImageUrl: string;\n private _avatarLetterCount: number;\n private _showSignOutButton = PROFILE_CARD_CONSTANTS.defaults.SHOW_SIGN_OUT_BUTTON;\n private _showProfileButton = PROFILE_CARD_CONSTANTS.defaults.SHOW_PROFILE_BUTTON;\n private _signOutButtonText = PROFILE_CARD_CONSTANTS.defaults.SIGN_OUT_BUTTON_TEXT;\n private _profileButtonText = PROFILE_CARD_CONSTANTS.defaults.PROFILE_BUTTON_TEXT;\n\n private _profileListener: (evt: Event) => void;\n private _signOutListener: (evt: Event) => void;\n\n constructor(private _adapter: IProfileCardAdapter) {\n this._profileListener = evt => this._onProfileButtonClick(evt);\n this._signOutListener = evt => this._onSignOutButtonClick(evt);\n }\n\n public initialize(): void {\n this._adapter.setProfileButtonListener(this._profileListener);\n this._adapter.setSignOutButtonListener(this._signOutListener);\n }\n\n public focus(options?: FocusOptions): void {\n if (this._showSignOutButton) {\n this._adapter.requestSignOutButtonFocus({ ...options, focusVisible: true } );\n } else if (this._showProfileButton) {\n this._adapter.requestProfileButtonFocus({ ...options, focusVisible: true } );\n }\n }\n\n private _setActionVisibility(): void {\n const showActionToolbar = this._showSignOutButton || this._showProfileButton;\n this._adapter.setActionToolbarVisibility(showActionToolbar);\n this._adapter.setSignOutButtonVisibility(this._showSignOutButton);\n this._adapter.setProfileButtonVisibility(this._showProfileButton);\n }\n\n private _onProfileButtonClick(evt: Event): void {\n evt.stopPropagation();\n this._adapter.emitHostEvent(PROFILE_CARD_CONSTANTS.events.PROFILE);\n }\n\n private _onSignOutButtonClick(evt: Event): void {\n evt.stopPropagation();\n this._adapter.emitHostEvent(PROFILE_CARD_CONSTANTS.events.SIGN_OUT);\n }\n\n public get fullName(): string {\n return this._fullName;\n }\n public set fullName(value: string) {\n if (this._fullName !== value) {\n this._fullName = value ?? '';\n this._adapter.setFullName(this._fullName);\n if (!this._avatarText) {\n this._adapter.setAvatarText(this._fullName);\n }\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.FULL_NAME, !!this._fullName, this._fullName);\n }\n }\n\n public get email(): string {\n return this._email;\n }\n public set email(value: string) {\n if (this._email !== value) {\n this._email = value ?? '';\n this._adapter.setEmail(this._email);\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.EMAIL, !!this._email, this._email);\n }\n }\n\n public get avatarText(): string {\n return this._avatarText;\n }\n public set avatarText(value: string) {\n if (this._avatarText !== value) {\n this._avatarText = value ?? '';\n this._adapter.setAvatarText(this._avatarText);\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.AVATAR_TEXT, !!this._avatarText, this._avatarText);\n }\n }\n\n public get avatarIcon(): string {\n return this._avatarIcon;\n }\n public set avatarIcon(value: string) {\n if (this._avatarIcon !== value) {\n this._avatarIcon = value ?? '';\n this._adapter.setAvatarIcon(this._avatarIcon);\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.AVATAR_ICON, !!this._avatarIcon, this._avatarIcon);\n }\n }\n\n public get avatarImageUrl(): string {\n return this._avatarImageUrl;\n }\n public set avatarImageUrl(value: string) {\n if (this._avatarImageUrl !== value) {\n this._avatarImageUrl = value;\n this._adapter.setAvatarImageUrl(this._avatarImageUrl);\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.AVATAR_IMAGE_URL, !!this._avatarImageUrl, this._avatarImageUrl);\n }\n }\n\n public get avatarLetterCount(): number {\n return this._avatarLetterCount;\n }\n public set avatarLetterCount(value: number) {\n if (this._avatarLetterCount !== value) {\n this._avatarLetterCount = value;\n this._adapter.setAvatarLetterCount(this._avatarLetterCount);\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.AVATAR_LETTER_COUNT, !!this._avatarLetterCount, `${this._avatarLetterCount}`);\n }\n }\n\n public get signOut(): boolean {\n return this._showSignOutButton;\n }\n public set signOut(value: boolean) {\n value = Boolean(value);\n if (this._showSignOutButton !== value) {\n this._showSignOutButton = value;\n this._setActionVisibility();\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT, this._showSignOutButton);\n }\n }\n\n public get profile(): boolean {\n return this._showProfileButton;\n }\n public set profile(value: boolean) {\n value = Boolean(value);\n if (this._showProfileButton !== value) {\n this._showProfileButton = value;\n this._setActionVisibility();\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.PROFILE, this._showProfileButton);\n }\n }\n\n public get signOutText(): string {\n return this._signOutButtonText;\n }\n public set signOutText(value: string) {\n if (this._signOutButtonText !== value) {\n this._signOutButtonText = value || PROFILE_CARD_CONSTANTS.defaults.SIGN_OUT_BUTTON_TEXT;\n this._adapter.setSignOutButtonText(this._signOutButtonText);\n\n const hasSignOutTextAttr = this._signOutButtonText !== PROFILE_CARD_CONSTANTS.defaults.SIGN_OUT_BUTTON_TEXT;\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT_TEXT, hasSignOutTextAttr, this._signOutButtonText);\n }\n }\n\n public get profileText(): string {\n return this._profileButtonText;\n }\n public set profileText(value: string) {\n if (this._profileButtonText !== value) {\n this._profileButtonText = value || PROFILE_CARD_CONSTANTS.defaults.PROFILE_BUTTON_TEXT;\n this._adapter.setProfileButtonText(this._profileButtonText);\n\n const hasProfileAttr = value !== PROFILE_CARD_CONSTANTS.defaults.PROFILE_BUTTON_TEXT;\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.PROFILE_TEXT, hasProfileAttr, this._profileButtonText);\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, coerceBoolean, coerceNumber, FoundationProperty } from '@tylertech/forge-core';\nimport { ProfileCardAdapter } from './profile-card-adapter';\nimport { ProfileCardFoundation } from './profile-card-foundation';\nimport { PROFILE_CARD_CONSTANTS } from './profile-card-constants';\nimport { ButtonComponent } from '../button';\nimport { AvatarComponent } from '../avatar';\nimport { IconComponent } from '../icon/icon';\nimport { ToolbarComponent } from '../toolbar';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\n\nconst template = '<template><div class=\\\"forge-profile-card\\\" part=\\\"root\\\"><div class=\\\"info-container\\\"><div class=\\\"avatar\\\"><forge-avatar part=\\\"avatar\\\"></forge-avatar></div><div class=\\\"info-text\\\"><div class=\\\"full-name\\\" part=\\\"name\\\"></div><div class=\\\"email\\\" part=\\\"email\\\"></div></div></div><slot></slot><forge-toolbar inverted id=\\\"action-toolbar\\\"><forge-button variant=\\\"outlined\\\" slot=\\\"end\\\" style=\\\"display: none;\\\" part=\\\"profile-button\\\" id=\\\"profile-button\\\">Profile</forge-button><forge-button slot=\\\"end\\\" part=\\\"sign-out-button\\\" id=\\\"sign-out-button\\\">Sign out</forge-button></forge-toolbar></div></template>';\nconst styles = ':host{display:block}:host([hidden]){display:none}.forge-profile-card{--_profile-card-min-width:var(--forge-profile-card-min-width, 360px);--_profile-card-shape:var(--forge-profile-card-border-radius, var(--forge-shape-medium, 4px));--_profile-card-avatar-size:var(--forge-profile-card-avatar-size, 56px)}.forge-profile-card{min-width:var(--_profile-card-min-width);border-radius:var(--_profile-card-shape)}@media (max-width:399px){.forge-profile-card{width:100vw;min-width:unset;overflow:auto}}.forge-profile-card .info-container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;padding-block:var(--forge-spacing-xsmall,8px);padding-inline:var(--forge-spacing-medium,16px)}.forge-profile-card .avatar{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;padding:var(--forge-spacing-xsmall,8px);-webkit-margin-end:var(--forge-spacing-medium,16px);margin-inline-end:var(--forge-spacing-medium,16px);--forge-avatar-size:var(--_profile-card-avatar-size)}.forge-profile-card .text{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.forge-profile-card .full-name{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-heading2-font-family, var(--forge-typography-font-family, \\\"Roboto\\\", sans-serif));font-size:var(--forge-typography-heading2-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-heading2-font-size-scale, 1)));font-weight:var(--forge-typography-heading2-font-weight,500);line-height:var(--forge-typography-heading2-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-heading2-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-heading2-letter-spacing, .0125em);text-transform:var(--forge-typography-heading2-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-heading2-text-decoration,inherit);text-decoration:var(--forge-typography-heading2-text-decoration,inherit)}.forge-profile-card .email{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-subheading1-font-family, var(--forge-typography-font-family, \\\"Roboto\\\", sans-serif));font-size:var(--forge-typography-subheading1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-subheading1-font-size-scale, .875)));font-weight:var(--forge-typography-subheading1-font-weight,400);line-height:var(--forge-typography-subheading1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-subheading1-line-height-scale, 1.125)));letter-spacing:var(--forge-typography-subheading1-letter-spacing, normal);text-transform:var(--forge-typography-subheading1-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-subheading1-text-decoration,inherit);text-decoration:var(--forge-typography-subheading1-text-decoration,inherit);color:var(--forge-theme-text-medium,rgba(0,0,0,.54))}#action-toolbar{--forge-toolbar-padding:8px}#action-toolbar forge-button:not(:last-of-type){-webkit-margin-end:8px;margin-inline-end:8px}';\n\nexport interface IProfileCardComponent extends IBaseComponent {\n fullName: string;\n email: string;\n signOut: boolean;\n profile: boolean;\n signOutText: string;\n profileText: string;\n avatarText: string;\n avatarIcon: string;\n avatarImageUrl: string;\n avatarLetterCount: number;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-profile-card': IProfileCardComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-profile-card-sign-out': CustomEvent<void>;\n 'forge-profile-card-profile': CustomEvent<void>;\n }\n}\n\n/**\n * @tag forge-profile-card\n */\n@CustomElement({\n name: PROFILE_CARD_CONSTANTS.elementName,\n dependencies: [\n ToolbarComponent,\n ButtonComponent,\n IconComponent,\n AvatarComponent\n ]\n})\nexport class ProfileCardComponent extends BaseComponent implements IProfileCardComponent {\n public static get observedAttributes(): string[] {\n return [\n PROFILE_CARD_CONSTANTS.attributes.FULL_NAME,\n PROFILE_CARD_CONSTANTS.attributes.EMAIL,\n PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT,\n PROFILE_CARD_CONSTANTS.attributes.PROFILE,\n PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT_TEXT,\n PROFILE_CARD_CONSTANTS.attributes.PROFILE_TEXT,\n PROFILE_CARD_CONSTANTS.attributes.AVATAR_TEXT,\n PROFILE_CARD_CONSTANTS.attributes.AVATAR_ICON,\n PROFILE_CARD_CONSTANTS.attributes.AVATAR_IMAGE_URL,\n PROFILE_CARD_CONSTANTS.attributes.AVATAR_LETTER_COUNT\n ];\n }\n\n private _foundation: ProfileCardFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new ProfileCardFoundation(new ProfileCardAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case PROFILE_CARD_CONSTANTS.attributes.FULL_NAME:\n this.fullName = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.EMAIL:\n this.email = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT:\n this.signOut = coerceBoolean(newValue);\n break;\n case PROFILE_CARD_CONSTANTS.attributes.PROFILE:\n this.profile = coerceBoolean(newValue);\n break;\n case PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT_TEXT:\n this.signOutText = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.PROFILE_TEXT:\n this.profileText = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.AVATAR_TEXT:\n this.avatarText = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.AVATAR_ICON:\n this.avatarIcon = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.AVATAR_IMAGE_URL:\n this.avatarImageUrl = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.AVATAR_LETTER_COUNT:\n this.avatarLetterCount = coerceNumber(newValue);\n break;\n }\n }\n\n @FoundationProperty()\n public declare fullName: string;\n\n @FoundationProperty()\n public declare email: string;\n\n @FoundationProperty()\n public declare signOut: boolean;\n\n @FoundationProperty()\n public declare profile: boolean;\n\n @FoundationProperty()\n public declare signOutText: string;\n\n @FoundationProperty()\n public declare profileText: string;\n\n @FoundationProperty()\n public declare avatarText: string;\n\n @FoundationProperty()\n public declare avatarIcon: string;\n\n @FoundationProperty()\n public declare avatarImageUrl: string;\n\n @FoundationProperty()\n public declare avatarLetterCount: number;\n\n public override focus(options?: FocusOptions): void {\n this._foundation.focus(options);\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { ProfileCardComponent } from './profile-card';\n\nexport * from './profile-card-adapter';\nexport * from './profile-card-constants';\nexport * from './profile-card-foundation';\nexport * from './profile-card';\n\nexport function defineProfileCardComponent(): void {\n defineCustomElement(ProfileCardComponent);\n}\n"],
|
|
5
|
-
"mappings": "
|
|
4
|
+
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}profile-card`;\n\nconst attributes = {\n FULL_NAME: 'full-name',\n EMAIL: 'email',\n SIGN_OUT: 'sign-out',\n PROFILE: 'profile',\n SIGN_OUT_TEXT: 'sign-out-text',\n PROFILE_TEXT: 'profile-text',\n AVATAR_TEXT: 'avatar-text',\n AVATAR_ICON: 'avatar-icon',\n AVATAR_IMAGE_URL: 'avatar-image-url',\n AVATAR_LETTER_COUNT: 'avatar-letter-count'\n};\n\nconst selectors = {\n FULL_NAME: '.full-name',\n EMAIL: '.email',\n AVATAR: '.avatar > forge-avatar',\n ACTION_TOOLBAR: '#action-toolbar',\n PROFILE_BUTTON: '#profile-button',\n SIGN_OUT_BUTTON: '#sign-out-button'\n};\n\nconst defaults = {\n SHOW_SIGN_OUT_BUTTON: true,\n SHOW_PROFILE_BUTTON: false,\n SIGN_OUT_BUTTON_TEXT: 'Sign out',\n PROFILE_BUTTON_TEXT: 'Profile'\n};\n\nconst events = {\n SIGN_OUT: `${elementName}-sign-out`,\n PROFILE: `${elementName}-profile`\n};\n\nexport const PROFILE_CARD_CONSTANTS = {\n elementName,\n attributes,\n selectors,\n defaults,\n events\n};\n", "import { getShadowElement, removeAllChildren } from '@tylertech/forge-core';\nimport { ExperimentalFocusOptions } from '../constants';\nimport { IAvatarComponent } from '../avatar';\nimport { IButtonComponent } from '../button';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IconComponentDelegate } from '../icon';\nimport { IToolbarComponent } from '../toolbar';\nimport { IProfileCardComponent } from './profile-card';\nimport { PROFILE_CARD_CONSTANTS } from './profile-card-constants';\n\nexport interface IProfileCardAdapter extends IBaseAdapter {\n setFullName(value: string): void;\n setEmail(value: string): void;\n setAvatarText(value: string): void;\n setAvatarIcon(value: string): void;\n setAvatarImageUrl(value: string): void;\n setAvatarLetterCount(count: number): void;\n setActionToolbarVisibility(isVisible: boolean): void;\n setProfileButtonVisibility(isVisible: boolean): void;\n setSignOutButtonVisibility(isVisible: boolean): void;\n setSignOutButtonText(value: string): void;\n setProfileButtonText(value: string): void;\n setProfileButtonListener(listener: (evt: Event) => void): void;\n setSignOutButtonListener(listener: (evt: Event) => void): void;\n requestProfileButtonFocus(options?: ExperimentalFocusOptions): void;\n requestSignOutButtonFocus(options?: ExperimentalFocusOptions): void;\n}\n\nexport class ProfileCardAdapter extends BaseAdapter<IProfileCardComponent> implements IProfileCardAdapter {\n private _fullNameElement: HTMLElement;\n private _emailElement: HTMLElement;\n private _avatarElement: IAvatarComponent;\n private _actionToolbar: IToolbarComponent;\n private _profileButton: IButtonComponent;\n private _signOutButton: IButtonComponent;\n\n constructor(component: IProfileCardComponent) {\n super(component);\n this._fullNameElement = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.FULL_NAME);\n this._emailElement = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.EMAIL);\n this._avatarElement = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.AVATAR) as IAvatarComponent;\n this._actionToolbar = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.ACTION_TOOLBAR) as IToolbarComponent;\n this._profileButton = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.PROFILE_BUTTON) as IButtonComponent;\n this._signOutButton = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.SIGN_OUT_BUTTON) as IButtonComponent;\n }\n\n public setFullName(value: string): void {\n this._fullNameElement.textContent = value;\n }\n\n public setEmail(value: string): void {\n this._emailElement.textContent = value;\n }\n\n public setAvatarText(value: string): void {\n removeAllChildren(this._avatarElement);\n this._avatarElement.text = value;\n }\n\n public setAvatarIcon(value: string): void {\n if (value) {\n const iconDelegate = new IconComponentDelegate({ props: { name: value }});\n this._avatarElement.replaceChildren(iconDelegate.element);\n } else {\n removeAllChildren(this._avatarElement);\n }\n }\n\n public setAvatarImageUrl(value: string): void {\n this._avatarElement.imageUrl = value;\n }\n\n public setAvatarLetterCount(count: number): void {\n this._avatarElement.letterCount = count;\n }\n\n public setActionToolbarVisibility(isVisible: boolean): void {\n if (isVisible) {\n this._actionToolbar.style.removeProperty('display');\n } else {\n this._actionToolbar.style.display = 'none';\n }\n }\n\n public setProfileButtonVisibility(isVisible: boolean): void {\n if (isVisible) {\n this._profileButton.style.removeProperty('display');\n } else {\n this._profileButton.style.display = 'none';\n }\n }\n\n public setSignOutButtonVisibility(isVisible: boolean): void {\n if (isVisible) {\n this._signOutButton.style.removeProperty('display');\n } else {\n this._signOutButton.style.display = 'none';\n }\n }\n\n public setSignOutButtonText(value: string): void {\n this._signOutButton.textContent = value;\n }\n \n public setProfileButtonText(value: string): void {\n this._profileButton.textContent = value;\n }\n\n public setProfileButtonListener(listener: (evt: Event) => void): void {\n this._profileButton.addEventListener('click', listener);\n }\n\n public setSignOutButtonListener(listener: (evt: Event) => void): void {\n this._signOutButton.addEventListener('click', listener);\n }\n\n public requestProfileButtonFocus(options?: ExperimentalFocusOptions): void {\n window.requestAnimationFrame(() => this._profileButton.focus(options));\n }\n\n public requestSignOutButtonFocus(options?: ExperimentalFocusOptions): void {\n window.requestAnimationFrame(() => this._signOutButton.focus(options));\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { IProfileCardAdapter } from './profile-card-adapter';\nimport { PROFILE_CARD_CONSTANTS } from './profile-card-constants';\n\nexport interface IProfileCardFoundation extends ICustomElementFoundation {\n fullName: string;\n email: string;\n signOut: boolean;\n profile: boolean;\n signOutText: string;\n profileText: string;\n avatarText: string;\n avatarIcon: string;\n avatarImageUrl: string;\n avatarLetterCount: number;\n focus(options?: FocusOptions): void;\n}\n\nexport class ProfileCardFoundation implements IProfileCardFoundation {\n private _fullName: string;\n private _email: string;\n private _avatarText: string;\n private _avatarIcon: string;\n private _avatarImageUrl: string;\n private _avatarLetterCount: number;\n private _showSignOutButton = PROFILE_CARD_CONSTANTS.defaults.SHOW_SIGN_OUT_BUTTON;\n private _showProfileButton = PROFILE_CARD_CONSTANTS.defaults.SHOW_PROFILE_BUTTON;\n private _signOutButtonText = PROFILE_CARD_CONSTANTS.defaults.SIGN_OUT_BUTTON_TEXT;\n private _profileButtonText = PROFILE_CARD_CONSTANTS.defaults.PROFILE_BUTTON_TEXT;\n\n private _profileListener: (evt: Event) => void;\n private _signOutListener: (evt: Event) => void;\n\n constructor(private _adapter: IProfileCardAdapter) {\n this._profileListener = evt => this._onProfileButtonClick(evt);\n this._signOutListener = evt => this._onSignOutButtonClick(evt);\n }\n\n public initialize(): void {\n this._adapter.setProfileButtonListener(this._profileListener);\n this._adapter.setSignOutButtonListener(this._signOutListener);\n }\n\n public focus(options?: FocusOptions): void {\n if (this._showSignOutButton) {\n this._adapter.requestSignOutButtonFocus({ ...options, focusVisible: true } );\n } else if (this._showProfileButton) {\n this._adapter.requestProfileButtonFocus({ ...options, focusVisible: true } );\n }\n }\n\n private _setActionVisibility(): void {\n const showActionToolbar = this._showSignOutButton || this._showProfileButton;\n this._adapter.setActionToolbarVisibility(showActionToolbar);\n this._adapter.setSignOutButtonVisibility(this._showSignOutButton);\n this._adapter.setProfileButtonVisibility(this._showProfileButton);\n }\n\n private _onProfileButtonClick(evt: Event): void {\n evt.stopPropagation();\n this._adapter.emitHostEvent(PROFILE_CARD_CONSTANTS.events.PROFILE);\n }\n\n private _onSignOutButtonClick(evt: Event): void {\n evt.stopPropagation();\n this._adapter.emitHostEvent(PROFILE_CARD_CONSTANTS.events.SIGN_OUT);\n }\n\n public get fullName(): string {\n return this._fullName;\n }\n public set fullName(value: string) {\n if (this._fullName !== value) {\n this._fullName = value ?? '';\n this._adapter.setFullName(this._fullName);\n if (!this._avatarText) {\n this._adapter.setAvatarText(this._fullName);\n }\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.FULL_NAME, !!this._fullName, this._fullName);\n }\n }\n\n public get email(): string {\n return this._email;\n }\n public set email(value: string) {\n if (this._email !== value) {\n this._email = value ?? '';\n this._adapter.setEmail(this._email);\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.EMAIL, !!this._email, this._email);\n }\n }\n\n public get avatarText(): string {\n return this._avatarText;\n }\n public set avatarText(value: string) {\n if (this._avatarText !== value) {\n this._avatarText = value ?? '';\n this._adapter.setAvatarText(this._avatarText);\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.AVATAR_TEXT, !!this._avatarText, this._avatarText);\n }\n }\n\n public get avatarIcon(): string {\n return this._avatarIcon;\n }\n public set avatarIcon(value: string) {\n if (this._avatarIcon !== value) {\n this._avatarIcon = value ?? '';\n this._adapter.setAvatarIcon(this._avatarIcon);\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.AVATAR_ICON, !!this._avatarIcon, this._avatarIcon);\n }\n }\n\n public get avatarImageUrl(): string {\n return this._avatarImageUrl;\n }\n public set avatarImageUrl(value: string) {\n if (this._avatarImageUrl !== value) {\n this._avatarImageUrl = value;\n this._adapter.setAvatarImageUrl(this._avatarImageUrl);\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.AVATAR_IMAGE_URL, !!this._avatarImageUrl, this._avatarImageUrl);\n }\n }\n\n public get avatarLetterCount(): number {\n return this._avatarLetterCount;\n }\n public set avatarLetterCount(value: number) {\n if (this._avatarLetterCount !== value) {\n this._avatarLetterCount = value;\n this._adapter.setAvatarLetterCount(this._avatarLetterCount);\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.AVATAR_LETTER_COUNT, !!this._avatarLetterCount, `${this._avatarLetterCount}`);\n }\n }\n\n public get signOut(): boolean {\n return this._showSignOutButton;\n }\n public set signOut(value: boolean) {\n value = Boolean(value);\n if (this._showSignOutButton !== value) {\n this._showSignOutButton = value;\n this._setActionVisibility();\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT, this._showSignOutButton);\n }\n }\n\n public get profile(): boolean {\n return this._showProfileButton;\n }\n public set profile(value: boolean) {\n value = Boolean(value);\n if (this._showProfileButton !== value) {\n this._showProfileButton = value;\n this._setActionVisibility();\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.PROFILE, this._showProfileButton);\n }\n }\n\n public get signOutText(): string {\n return this._signOutButtonText;\n }\n public set signOutText(value: string) {\n if (this._signOutButtonText !== value) {\n this._signOutButtonText = value || PROFILE_CARD_CONSTANTS.defaults.SIGN_OUT_BUTTON_TEXT;\n this._adapter.setSignOutButtonText(this._signOutButtonText);\n\n const hasSignOutTextAttr = this._signOutButtonText !== PROFILE_CARD_CONSTANTS.defaults.SIGN_OUT_BUTTON_TEXT;\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT_TEXT, hasSignOutTextAttr, this._signOutButtonText);\n }\n }\n\n public get profileText(): string {\n return this._profileButtonText;\n }\n public set profileText(value: string) {\n if (this._profileButtonText !== value) {\n this._profileButtonText = value || PROFILE_CARD_CONSTANTS.defaults.PROFILE_BUTTON_TEXT;\n this._adapter.setProfileButtonText(this._profileButtonText);\n\n const hasProfileAttr = value !== PROFILE_CARD_CONSTANTS.defaults.PROFILE_BUTTON_TEXT;\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.PROFILE_TEXT, hasProfileAttr, this._profileButtonText);\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, coerceBoolean, coerceNumber, FoundationProperty } from '@tylertech/forge-core';\nimport { ProfileCardAdapter } from './profile-card-adapter';\nimport { ProfileCardFoundation } from './profile-card-foundation';\nimport { PROFILE_CARD_CONSTANTS } from './profile-card-constants';\nimport { ButtonComponent } from '../button';\nimport { AvatarComponent } from '../avatar';\nimport { IconComponent } from '../icon/icon';\nimport { ToolbarComponent } from '../toolbar';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\n\nconst template = '<template><div class=\\\"forge-profile-card\\\" part=\\\"root\\\"><div class=\\\"info-container\\\"><div class=\\\"avatar\\\"><forge-avatar part=\\\"avatar\\\"></forge-avatar></div><div class=\\\"info-text\\\"><div class=\\\"full-name\\\" part=\\\"name\\\"></div><div class=\\\"email\\\" part=\\\"email\\\"></div></div></div><slot></slot><forge-toolbar inverted id=\\\"action-toolbar\\\"><forge-button variant=\\\"outlined\\\" slot=\\\"end\\\" style=\\\"display: none;\\\" part=\\\"profile-button\\\" id=\\\"profile-button\\\">Profile</forge-button><forge-button slot=\\\"end\\\" part=\\\"sign-out-button\\\" id=\\\"sign-out-button\\\">Sign out</forge-button></forge-toolbar></div></template>';\nconst styles = ':host{display:block}:host([hidden]){display:none}.forge-profile-card{--_profile-card-min-width:var(--forge-profile-card-min-width, 360px);--_profile-card-shape:var(--forge-profile-card-shape, var(--forge-shape-medium, 4px));--_profile-card-avatar-size:var(--forge-profile-card-avatar-size, 56px)}.forge-profile-card{min-width:var(--_profile-card-min-width);border-radius:var(--_profile-card-shape)}@media (max-width:399px){.forge-profile-card{width:100vw;min-width:unset;overflow:auto}}.forge-profile-card .info-container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;padding-block:var(--forge-spacing-xsmall,8px);padding-inline:var(--forge-spacing-medium,16px)}.forge-profile-card .avatar{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;padding:var(--forge-spacing-xsmall,8px);-webkit-margin-end:var(--forge-spacing-medium,16px);margin-inline-end:var(--forge-spacing-medium,16px);--forge-avatar-size:var(--_profile-card-avatar-size)}.forge-profile-card .text{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.forge-profile-card .full-name{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-heading2-font-family, var(--forge-typography-font-family, \\\"Roboto\\\", sans-serif));font-size:var(--forge-typography-heading2-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-heading2-font-size-scale, 1)));font-weight:var(--forge-typography-heading2-font-weight,500);line-height:var(--forge-typography-heading2-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-heading2-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-heading2-letter-spacing, .0125em);text-transform:var(--forge-typography-heading2-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-heading2-text-decoration,inherit);text-decoration:var(--forge-typography-heading2-text-decoration,inherit)}.forge-profile-card .email{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-subheading1-font-family, var(--forge-typography-font-family, \\\"Roboto\\\", sans-serif));font-size:var(--forge-typography-subheading1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-subheading1-font-size-scale, .875)));font-weight:var(--forge-typography-subheading1-font-weight,400);line-height:var(--forge-typography-subheading1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-subheading1-line-height-scale, 1.125)));letter-spacing:var(--forge-typography-subheading1-letter-spacing, normal);text-transform:var(--forge-typography-subheading1-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-subheading1-text-decoration,inherit);text-decoration:var(--forge-typography-subheading1-text-decoration,inherit);color:var(--forge-theme-text-medium,rgba(0,0,0,.6))}#action-toolbar{--forge-toolbar-padding:8px}#action-toolbar forge-button:not(:last-of-type){-webkit-margin-end:8px;margin-inline-end:8px}';\n\nexport interface IProfileCardComponent extends IBaseComponent {\n fullName: string;\n email: string;\n signOut: boolean;\n profile: boolean;\n signOutText: string;\n profileText: string;\n avatarText: string;\n avatarIcon: string;\n avatarImageUrl: string;\n avatarLetterCount: number;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-profile-card': IProfileCardComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-profile-card-sign-out': CustomEvent<void>;\n 'forge-profile-card-profile': CustomEvent<void>;\n }\n}\n\n/**\n * @tag forge-profile-card\n */\n@CustomElement({\n name: PROFILE_CARD_CONSTANTS.elementName,\n dependencies: [\n ToolbarComponent,\n ButtonComponent,\n IconComponent,\n AvatarComponent\n ]\n})\nexport class ProfileCardComponent extends BaseComponent implements IProfileCardComponent {\n public static get observedAttributes(): string[] {\n return [\n PROFILE_CARD_CONSTANTS.attributes.FULL_NAME,\n PROFILE_CARD_CONSTANTS.attributes.EMAIL,\n PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT,\n PROFILE_CARD_CONSTANTS.attributes.PROFILE,\n PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT_TEXT,\n PROFILE_CARD_CONSTANTS.attributes.PROFILE_TEXT,\n PROFILE_CARD_CONSTANTS.attributes.AVATAR_TEXT,\n PROFILE_CARD_CONSTANTS.attributes.AVATAR_ICON,\n PROFILE_CARD_CONSTANTS.attributes.AVATAR_IMAGE_URL,\n PROFILE_CARD_CONSTANTS.attributes.AVATAR_LETTER_COUNT\n ];\n }\n\n private _foundation: ProfileCardFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new ProfileCardFoundation(new ProfileCardAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case PROFILE_CARD_CONSTANTS.attributes.FULL_NAME:\n this.fullName = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.EMAIL:\n this.email = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT:\n this.signOut = coerceBoolean(newValue);\n break;\n case PROFILE_CARD_CONSTANTS.attributes.PROFILE:\n this.profile = coerceBoolean(newValue);\n break;\n case PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT_TEXT:\n this.signOutText = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.PROFILE_TEXT:\n this.profileText = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.AVATAR_TEXT:\n this.avatarText = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.AVATAR_ICON:\n this.avatarIcon = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.AVATAR_IMAGE_URL:\n this.avatarImageUrl = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.AVATAR_LETTER_COUNT:\n this.avatarLetterCount = coerceNumber(newValue);\n break;\n }\n }\n\n @FoundationProperty()\n public declare fullName: string;\n\n @FoundationProperty()\n public declare email: string;\n\n @FoundationProperty()\n public declare signOut: boolean;\n\n @FoundationProperty()\n public declare profile: boolean;\n\n @FoundationProperty()\n public declare signOutText: string;\n\n @FoundationProperty()\n public declare profileText: string;\n\n @FoundationProperty()\n public declare avatarText: string;\n\n @FoundationProperty()\n public declare avatarIcon: string;\n\n @FoundationProperty()\n public declare avatarImageUrl: string;\n\n @FoundationProperty()\n public declare avatarLetterCount: number;\n\n public override focus(options?: FocusOptions): void {\n this._foundation.focus(options);\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { ProfileCardComponent } from './profile-card';\n\nexport * from './profile-card-adapter';\nexport * from './profile-card-constants';\nexport * from './profile-card-foundation';\nexport * from './profile-card';\n\nexport function defineProfileCardComponent(): void {\n defineCustomElement(ProfileCardComponent);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["elementName", "COMPONENT_NAME_PREFIX", "attributes", "selectors", "defaults", "events", "PROFILE_CARD_CONSTANTS", "ProfileCardAdapter", "BaseAdapter", "component", "getShadowElement", "PROFILE_CARD_CONSTANTS", "value", "removeAllChildren", "iconDelegate", "IconComponentDelegate", "count", "isVisible", "listener", "options", "ProfileCardFoundation", "_adapter", "PROFILE_CARD_CONSTANTS", "evt", "options", "__spreadProps", "__spreadValues", "showActionToolbar", "value", "hasSignOutTextAttr", "hasProfileAttr", "template", "styles", "ProfileCardComponent", "BaseComponent", "attachShadowTemplate", "ProfileCardFoundation", "ProfileCardAdapter", "PROFILE_CARD_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "coerceNumber", "options", "__decorateClass", "FoundationProperty", "CustomElement", "ToolbarComponent", "ButtonComponent", "IconComponent", "AvatarComponent", "defineProfileCardComponent", "defineCustomElement", "ProfileCardComponent"]
|
|
7
7
|
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import{a as Ne}from"./chunk.ZY3ETQ3D.js";import{a as k}from"./chunk.NVUMRW44.js";import{a as Ie,b as Se}from"./chunk.RRNSZCVJ.js";import{a as Te,e as ke,f as Ae,h as ue,j as Le,k as Oe}from"./chunk.TPXXHX5J.js";import{a as le,c as Pe,f as ce,g as Ee,i as _e,s as Ce,t as pe}from"./chunk.HZUQXCOQ.js";import{b as xe,k as te}from"./chunk.J2M2MXP2.js";import{a as P,b as C,c as q,d as T}from"./chunk.M3QDAYD2.js";function z(e){return e.split("-")[0]}function j(e){return e.split("-")[1]}function de(e){return["top","bottom"].includes(z(e))?"x":"y"}function Fe(e){return e==="y"?"height":"width"}function Re(e,t,o){let{reference:n,floating:i}=e,a=n.x+n.width/2-i.width/2,s=n.y+n.height/2-i.height/2,r=de(t),l=Fe(r),f=n[l]/2-i[l]/2,p=r==="x",c;switch(z(t)){case"top":c={x:a,y:n.y-i.height};break;case"bottom":c={x:a,y:n.y+n.height};break;case"right":c={x:n.x+n.width,y:s};break;case"left":c={x:n.x-i.width,y:s};break;default:c={x:n.x,y:n.y}}switch(j(t)){case"start":c[r]-=f*(o&&p?-1:1);break;case"end":c[r]+=f*(o&&p?-1:1)}return c}var We=async(e,t,o)=>{let{placement:n="bottom",strategy:i="absolute",middleware:a=[],platform:s}=o,r=await(s.isRTL==null?void 0:s.isRTL(t)),l=await s.getElementRects({reference:e,floating:t,strategy:i}),{x:f,y:p}=Re(l,n,r),c=n,d={},b=0;for(let m=0;m<a.length;m++){let{name:g,fn:y}=a[m],{x:h,y:w,data:x,reset:v}=await y({x:f,y:p,initialPlacement:n,placement:c,strategy:i,middlewareData:d,rects:l,platform:s,elements:{reference:e,floating:t}});f=h!=null?h:f,p=w!=null?w:p,d=C(P({},d),{[g]:P(P({},d[g]),x)}),v&&b<=50&&(b++,typeof v=="object"&&(v.placement&&(c=v.placement),v.rects&&(l=v.rects===!0?await s.getElementRects({reference:e,floating:t,strategy:i}):v.rects),{x:f,y:p}=Re(l,c,r)),m=-1)}return{x:f,y:p,placement:c,strategy:i,middlewareData:d}};function nt(e){return typeof e!="number"?function(t){return P({top:0,right:0,bottom:0,left:0},t)}(e):{top:e,right:e,bottom:e,left:e}}function X(e){return C(P({},e),{top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height})}async function $(e,t){var o;t===void 0&&(t={});let{x:n,y:i,platform:a,rects:s,elements:r,strategy:l}=e,{boundary:f="clippingAncestors",rootBoundary:p="viewport",elementContext:c="floating",altBoundary:d=!1,padding:b=0}=t,m=nt(b),g=r[d?c==="floating"?"reference":"floating":c],y=X(await a.getClippingRect({element:(o=await(a.isElement==null?void 0:a.isElement(g)))==null||o?g:g.contextElement||await(a.getDocumentElement==null?void 0:a.getDocumentElement(r.floating)),boundary:f,rootBoundary:p,strategy:l})),h=X(a.convertOffsetParentRelativeRectToViewportRelativeRect?await a.convertOffsetParentRelativeRectToViewportRelativeRect({rect:c==="floating"?C(P({},s.floating),{x:n,y:i}):s.reference,offsetParent:await(a.getOffsetParent==null?void 0:a.getOffsetParent(r.floating)),strategy:l}):s[c]);return{top:y.top-h.top+m.top,bottom:h.bottom-y.bottom+m.bottom,left:y.left-h.left+m.left,right:h.right-y.right+m.right}}var it=Math.min,rt=Math.max;function Me(e,t,o){return rt(e,it(t,o))}var at={left:"right",right:"left",bottom:"top",top:"bottom"};function oe(e){return e.replace(/left|right|bottom|top/g,t=>at[t])}function Be(e,t,o){o===void 0&&(o=!1);let n=j(e),i=de(e),a=Fe(i),s=i==="x"?n===(o?"end":"start")?"right":"left":n==="start"?"bottom":"top";return t.reference[a]>t.floating[a]&&(s=oe(s)),{main:s,cross:oe(s)}}var st={start:"end",end:"start"};function fe(e){return e.replace(/start|end/g,t=>st[t])}var ze=["top","right","bottom","left"],lt=ze.reduce((e,t)=>e.concat(t,t+"-start",t+"-end"),[]),me=function(e){return e===void 0&&(e={}),{name:"autoPlacement",options:e,async fn(t){var o,n,i,a,s;let{x:r,y:l,rects:f,middlewareData:p,placement:c,platform:d,elements:b}=t,H=e,{alignment:m=null,allowedPlacements:g=lt,autoAlignment:y=!0}=H,h=q(H,["alignment","allowedPlacements","autoAlignment"]),w=function(L,G,Y){return(L?[...Y.filter(O=>j(O)===L),...Y.filter(O=>j(O)!==L)]:Y.filter(O=>z(O)===O)).filter(O=>!L||j(O)===L||!!G&&fe(O)!==O)}(m,y,g),x=await $(t,h),v=(o=(n=p.autoPlacement)==null?void 0:n.index)!=null?o:0,A=w[v];if(A==null)return{};let{main:M,cross:Z}=Be(A,f,await(d.isRTL==null?void 0:d.isRTL(b.floating)));if(c!==A)return{x:r,y:l,reset:{placement:w[0]}};let ee=[x[z(A)],x[M],x[Z]],_=[...(i=(a=p.autoPlacement)==null?void 0:a.overflows)!=null?i:[],{placement:A,overflows:ee}],I=w[v+1];if(I)return{data:{index:v+1,overflows:_},reset:{placement:I}};let F=_.slice().sort((L,G)=>L.overflows[0]-G.overflows[0]),V=(s=F.find(L=>{let{overflows:G}=L;return G.every(Y=>Y<=0)}))==null?void 0:s.placement,W=V!=null?V:F[0].placement;return W!==c?{data:{index:v+1,overflows:_},reset:{placement:W}}:{}}}},he=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var o;let{placement:n,middlewareData:i,rects:a,initialPlacement:s,platform:r,elements:l}=t,ee=e,{mainAxis:f=!0,crossAxis:p=!0,fallbackPlacements:c,fallbackStrategy:d="bestFit",flipAlignment:b=!0}=ee,m=q(ee,["mainAxis","crossAxis","fallbackPlacements","fallbackStrategy","flipAlignment"]),g=z(n),y=c||(g===s||!b?[oe(s)]:function(_){let I=oe(_);return[fe(_),I,fe(I)]}(s)),h=[s,...y],w=await $(t,m),x=[],v=((o=i.flip)==null?void 0:o.overflows)||[];if(f&&x.push(w[g]),p){let{main:_,cross:I}=Be(n,a,await(r.isRTL==null?void 0:r.isRTL(l.floating)));x.push(w[_],w[I])}if(v=[...v,{placement:n,overflows:x}],!x.every(_=>_<=0)){var A,M;let _=((A=(M=i.flip)==null?void 0:M.index)!=null?A:0)+1,I=h[_];if(I)return{data:{index:_,overflows:v},reset:{placement:I}};let F="bottom";switch(d){case"bestFit":{var Z;let V=(Z=v.map(W=>[W,W.overflows.filter(H=>H>0).reduce((H,L)=>H+L,0)]).sort((W,H)=>W[1]-H[1])[0])==null?void 0:Z[0].placement;V&&(F=V);break}case"initialPlacement":F=s}if(n!==F)return{reset:{placement:F}}}return{}}}};function He(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function De(e){return ze.some(t=>e[t]>=0)}var be=function(e){let n=e===void 0?{}:e,{strategy:t="referenceHidden"}=n,o=q(n,["strategy"]);return{name:"hide",async fn(i){let{rects:a}=i;switch(t){case"referenceHidden":{let s=He(await $(i,C(P({},o),{elementContext:"reference"})),a.reference);return{data:{referenceHiddenOffsets:s,referenceHidden:De(s)}}}case"escaped":{let s=He(await $(i,C(P({},o),{altBoundary:!0})),a.floating);return{data:{escapedOffsets:s,escaped:De(s)}}}default:return{}}}}};function ct(e){return e==="x"?"y":"x"}var ge=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){let{x:o,y:n,placement:i}=t,y=e,{mainAxis:a=!0,crossAxis:s=!1,limiter:r={fn:h=>{let{x:w,y:x}=h;return{x:w,y:x}}}}=y,l=q(y,["mainAxis","crossAxis","limiter"]),f={x:o,y:n},p=await $(t,l),c=de(z(i)),d=ct(c),b=f[c],m=f[d];if(a){let h=c==="y"?"bottom":"right";b=Me(b+p[c==="y"?"top":"left"],b,b-p[h])}if(s){let h=d==="y"?"bottom":"right";m=Me(m+p[d==="y"?"top":"left"],m,m-p[h])}let g=r.fn(C(P({},t),{[c]:b,[d]:m}));return C(P({},g),{data:{x:g.x-o,y:g.y-n}})}}};function qe(e){return e&&e.document&&e.location&&e.alert&&e.setInterval}function R(e){if(e==null)return window;if(!qe(e)){let t=e.ownerDocument;return t&&t.defaultView||window}return e}function J(e){return R(e).getComputedStyle(e)}function S(e){return qe(e)?"":e?(e.nodeName||"").toLowerCase():""}function je(){let e=navigator.userAgentData;return e!=null&&e.brands?e.brands.map(t=>t.brand+"/"+t.version).join(" "):navigator.userAgent}function N(e){return e instanceof R(e).HTMLElement}function U(e){return e instanceof R(e).Element}function ye(e){return typeof ShadowRoot=="undefined"?!1:e instanceof R(e).ShadowRoot||e instanceof ShadowRoot}function ie(e){let{overflow:t,overflowX:o,overflowY:n}=J(e);return/auto|scroll|overlay|hidden/.test(t+n+o)}function pt(e){return["table","td","th"].includes(S(e))}function $e(e){let t=/firefox/i.test(je()),o=J(e);return o.transform!=="none"||o.perspective!=="none"||o.contain==="paint"||["transform","perspective"].includes(o.willChange)||t&&o.willChange==="filter"||t&&!!o.filter&&o.filter!=="none"}function Xe(){return!/^((?!chrome|android).)*safari/i.test(je())}var Ue=Math.min,Q=Math.max,ne=Math.round;function B(e,t,o){var n,i,a,s;t===void 0&&(t=!1),o===void 0&&(o=!1);let r=e.getBoundingClientRect(),l=1,f=1;t&&N(e)&&(l=e.offsetWidth>0&&ne(r.width)/e.offsetWidth||1,f=e.offsetHeight>0&&ne(r.height)/e.offsetHeight||1);let p=U(e)?R(e):window,c=!Xe()&&o,d=(r.left+(c&&(n=(i=p.visualViewport)==null?void 0:i.offsetLeft)!=null?n:0))/l,b=(r.top+(c&&(a=(s=p.visualViewport)==null?void 0:s.offsetTop)!=null?a:0))/f,m=r.width/l,g=r.height/f;return{width:m,height:g,top:b,right:d+m,bottom:b+g,left:d,x:d,y:b}}function D(e){return(t=e,(t instanceof R(t).Node?e.ownerDocument:e.document)||window.document).documentElement;var t}function re(e){return U(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function Qe(e){return B(D(e)).left+re(e).scrollLeft}function ut(e,t,o){let n=N(t),i=D(t),a=B(e,n&&function(l){let f=B(l);return ne(f.width)!==l.offsetWidth||ne(f.height)!==l.offsetHeight}(t),o==="fixed"),s={scrollLeft:0,scrollTop:0},r={x:0,y:0};if(n||!n&&o!=="fixed")if((S(t)!=="body"||ie(i))&&(s=re(t)),N(t)){let l=B(t,!0);r.x=l.x+t.clientLeft,r.y=l.y+t.clientTop}else i&&(r.x=Qe(i));return{x:a.left+s.scrollLeft-r.x,y:a.top+s.scrollTop-r.y,width:a.width,height:a.height}}function Je(e){return S(e)==="html"?e:e.assignedSlot||e.parentNode||(ye(e)?e.host:null)||D(e)}function Ve(e){return N(e)&&getComputedStyle(e).position!=="fixed"?e.offsetParent:null}function ve(e){let t=R(e),o=Ve(e);for(;o&&pt(o)&&getComputedStyle(o).position==="static";)o=Ve(o);return o&&(S(o)==="html"||S(o)==="body"&&getComputedStyle(o).position==="static"&&!$e(o))?t:o||function(n){let i=Je(n);for(ye(i)&&(i=i.host);N(i)&&!["html","body"].includes(S(i));){if($e(i))return i;i=i.parentNode}return null}(e)||t}function Ge(e){if(N(e))return{width:e.offsetWidth,height:e.offsetHeight};let t=B(e);return{width:t.width,height:t.height}}function Ke(e){let t=Je(e);return["html","body","#document"].includes(S(t))?e.ownerDocument.body:N(t)&&ie(t)?t:Ke(t)}function Ze(e,t){var o;t===void 0&&(t=[]);let n=Ke(e),i=n===((o=e.ownerDocument)==null?void 0:o.body),a=R(n),s=i?[a].concat(a.visualViewport||[],ie(n)?n:[]):n,r=t.concat(s);return i?r:r.concat(Ze(s))}function Ye(e,t,o){return t==="viewport"?X(function(n,i){let a=R(n),s=D(n),r=a.visualViewport,l=s.clientWidth,f=s.clientHeight,p=0,c=0;if(r){l=r.width,f=r.height;let d=Xe();(d||!d&&i==="fixed")&&(p=r.offsetLeft,c=r.offsetTop)}return{width:l,height:f,x:p,y:c}}(e,o)):U(t)?function(n,i){let a=B(n,!1,i==="fixed"),s=a.top+n.clientTop,r=a.left+n.clientLeft;return{top:s,left:r,x:r,y:s,right:r+n.clientWidth,bottom:s+n.clientHeight,width:n.clientWidth,height:n.clientHeight}}(t,o):X(function(n){var i;let a=D(n),s=re(n),r=(i=n.ownerDocument)==null?void 0:i.body,l=Q(a.scrollWidth,a.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),f=Q(a.scrollHeight,a.clientHeight,r?r.scrollHeight:0,r?r.clientHeight:0),p=-s.scrollLeft+Qe(n),c=-s.scrollTop;return J(r||a).direction==="rtl"&&(p+=Q(a.clientWidth,r?r.clientWidth:0)-l),{width:l,height:f,x:p,y:c}}(D(e)))}function ft(e){let t=Ze(e),o=["absolute","fixed"].includes(J(e).position)&&N(e)?ve(e):e;return U(o)?t.filter(n=>U(n)&&function(i,a){let s=a.getRootNode==null?void 0:a.getRootNode();if(i.contains(a))return!0;if(s&&ye(s)){let r=a;do{if(r&&i===r)return!0;r=r.parentNode||r.host}while(r)}return!1}(n,o)&&S(n)!=="body"):[]}var dt={getClippingRect:function(e){let{element:t,boundary:o,rootBoundary:n,strategy:i}=e,a=[...o==="clippingAncestors"?ft(t):[].concat(o),n],s=a[0],r=a.reduce((l,f)=>{let p=Ye(t,f,i);return l.top=Q(p.top,l.top),l.right=Ue(p.right,l.right),l.bottom=Ue(p.bottom,l.bottom),l.left=Q(p.left,l.left),l},Ye(t,s,i));return{width:r.right-r.left,height:r.bottom-r.top,x:r.left,y:r.top}},convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{rect:t,offsetParent:o,strategy:n}=e,i=N(o),a=D(o);if(o===a)return t;let s={scrollLeft:0,scrollTop:0},r={x:0,y:0};if((i||!i&&n!=="fixed")&&((S(o)!=="body"||ie(a))&&(s=re(o)),N(o))){let l=B(o,!0);r.x=l.x+o.clientLeft,r.y=l.y+o.clientTop}return C(P({},t),{x:t.x-s.scrollLeft+r.x,y:t.y-s.scrollTop+r.y})},isElement:U,getDimensions:Ge,getOffsetParent:ve,getDocumentElement:D,getElementRects:e=>{let{reference:t,floating:o,strategy:n}=e;return{reference:ut(t,ve(o),n),floating:C(P({},Ge(o)),{x:0,y:0})}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>J(e).direction==="rtl"};var et=(e,t,o)=>We(e,t,P({platform:dt},o));var mt=({x:e,y:t})=>({name:"positionOffset",fn({x:o,y:n}){return{x:o+e,y:n+t}}});async function tt({element:e,targetElement:t,placement:o="bottom-start",offset:n,strategy:i="absolute",apply:a=!0,flip:s=!0,flipOptions:r={fallbackPlacements:["top-start","top","top-end","left-start","left","left-end","right-start","right","right-end"],fallbackStrategy:"initialPlacement"},auto:l=!1,autoOptions:f,shift:p=!0,shiftOptions:c,hide:d=!1,hideOptions:b,transform:m=!0,translateFunction:g="translate3d"}){var y;let h=[];n&&h.push(mt(n)),p&&h.push(ge(c)),s&&!l&&h.push(he(r)),l&&h.push(me(f)),d&&h.push(be(b));let{x:w,y:x,middlewareData:v}=await et(t,e,{strategy:i,placement:o,middleware:h}),A=!((y=v.hide)===null||y===void 0)&&y.referenceHidden?"hidden":"visible";if(a){let M={left:m?"0":`${w}px`,top:m?"0":`${x}px`,visibility:A};m&&(g==="translate"?M.transform=`translate(${Math.round(w)}px, ${Math.round(x)}px)`:M.transform=`translate3d(${Math.round(w)}px, ${Math.round(x)}px, 0)`),Object.assign(e.style,M)}return{x:w,y:x,visibility:A}}var K=`${Se}popup`,we={CONTAINER:"forge-popup",OPEN:"open",PLACEMENT:"placement",MANAGE_FOCUS:"manage-focus",ANIMATION_TYPE:"animation-type",STATIC:"static",HIDE_WHEN_CLIPPED:"hide-when-clipped",HOST:"forge-popup-host",INITIAL_FOCUS:"forge-popup-focus",CONSTRAIN_VIEWPORT_WIDTH:"constrain-viewport-width"},ht={OPEN:"forge-popup--open",OPENING:"forge-popup--opening",CLOSED:"forge-popup--closed",SELECT:"forge-popup--select"},bt={HOST:`.forge-popup-host, [${we.HOST}]`,CONTAINER:".forge-popup",INITIAL_FOCUS:`[${we.INITIAL_FOCUS}]`},gt={OPEN:`${K}-open`,CLOSE:`${K}-close`,POSITION:`${K}-position`,BLUR:`${K}-blur`},vt={ANIMATION_DURATION:120},u={elementName:K,classes:ht,selectors:bt,attributes:we,events:gt,numbers:vt},ot=(n=>(n.None="none",n.Menu="menu",n.Dropdown="dropdown",n))(ot||{});var ae=class extends Ne{constructor(o){super(o);this._rootElement=Ae(o,u.selectors.CONTAINER)}setAttribute(o,n,i){i?i.setAttribute(o,n):this._component.setAttribute(o,n)}removeAttribute(o,n){n?n.removeAttribute(o):this._component.removeAttribute(o)}async positionPopup(){let o={element:this._component,targetElement:this._component.targetElement,placement:this._component.placement,hide:this._component.hideWhenClipped,flipOptions:{fallbackPlacements:["top-start","top","top-end","left-start","left","left-end","right-start","right","right-end"],fallbackStrategy:"initialPlacement"}},n=this._component.fallbackPlacements;n!=null&&n.length&&(o.flipOptions=C(P({},o.flipOptions),{fallbackPlacements:n})),this._component.offset&&(o.offset=this._component.offset);let i=await tt(o);ue(this._component,u.events.POSITION,i)}addPopup(o,n){this._component.setAttribute("tabindex","-1"),this._component.setAttribute(u.attributes.HOST,""),this._component.style.top="0",this._component.style.left="0";let i=o.ownerDocument||document;this._hostElement=Le(u.selectors.HOST,o)||i.body,this._hostElement.appendChild(this._component),this.positionPopup(),n&&(this._previouslyFocusedElement=pe(this._component.ownerDocument),this._component.focus())}removePopup(o){_e(this._component),o&&window.requestAnimationFrame(()=>{if(this._previouslyFocusedElement){let n=pe(this._component.ownerDocument);(!n||n===document.body)&&this._previouslyFocusedElement.focus(),this._previouslyFocusedElement=void 0}}),this._hostElement=void 0}manageWindowEvents(o=!1){o?(this._windowEventCallback=n=>this._windowInteraction(n),window.addEventListener("scroll",this._windowEventCallback,!0),window.addEventListener("resize",this._windowEventCallback,!0)):this._windowEventCallback&&(window.removeEventListener("scroll",this._windowEventCallback,!0),window.removeEventListener("resize",this._windowEventCallback,!0),this._windowEventCallback=void 0)}dispatchEvent(o,n,i,a){return this._component.targetElement?!ue(this._component.targetElement,o,n,i,a):!1}getCloseEventData(){return{popup:this._component}}addClass(o){ce(o,this._rootElement)}removeClass(o){Ee(o,this._rootElement)}setAnimationEndListener(o,n){window.requestAnimationFrame(()=>{n&&n.length&&ce(n,this._rootElement),this._rootElement.addEventListener("transitionend",o)})}removeEventListener(o,n){this._rootElement.removeEventListener(o,n)}setBlurListener(o){return Pe(this._component,n=>{this._component.contains(n)||o()},!0)}trySetInitialFocus(){window.requestAnimationFrame(()=>{let o=Ce(this._component,u.selectors.INITIAL_FOCUS);o&&o.length&&o[o.length-1].focus()})}_windowInteraction(o){if(this._component.open)switch(o.type){case"scroll":case"resize":this.positionPopup();break;default:break}}};var se=class{constructor(t){this._adapter=t;this._placement="bottom-start";this._fallbackPlacements=[];this._open=!1;this._manageFocus=!1;this._animationType="none";this._static=!1;this._hideWhenClipped=!1;this._blurListener=()=>this._onBlur()}disconnect(){this.open&&(this.open=!1)}_openPopup(){this._animationType!=="none"?(this._applyOpenAnimation(),this._animationType==="dropdown"&&this._adapter.addClass(u.classes.SELECT)):this._adapter.addClass(u.classes.OPEN),this._adapter.setAttribute(u.attributes.OPEN,""),this._adapter.addPopup(this.targetElement,this._manageFocus),this._adapter.trySetInitialFocus(),this._destroyBlurListener&&this._destroyBlurListener(),this._static||(this._destroyBlurListener=this._adapter.setBlurListener(this._blurListener)),this._adapter.manageWindowEvents(!0),this._adapter.dispatchEvent(u.events.OPEN)}_closePopup(){this._destroyBlurListener&&(this._destroyBlurListener(),this._destroyBlurListener=void 0),this._animationType!=="none"?this._applyCloseAnimation():this._destroyPopup()}_destroyPopup(){this._adapter.manageWindowEvents(!1),this._adapter.removePopup(this._manageFocus);let t=this._adapter.getCloseEventData();this._adapter.dispatchEvent(u.events.CLOSE,t),this._adapter.emitHostEvent(u.events.CLOSE,t),this._adapter.removeAttribute(u.attributes.OPEN)}_applyOpenAnimation(){switch(this._animationType){case"dropdown":case"menu":this._adapter.addClass(u.classes.OPENING);let t=o=>{o.propertyName==="transform"&&(this._adapter.removeClass(u.classes.OPENING),this._adapter.removeEventListener("transitionend",t))};this._adapter.setAnimationEndListener(t,u.classes.OPEN);break}}_applyCloseAnimation(){switch(this._animationType){case"dropdown":case"menu":this._adapter.removeClass(u.classes.OPEN),this._adapter.addClass(u.classes.CLOSED);let t=n=>{n.propertyName==="opacity"&&(o&&clearTimeout(o),this._destroyPopup())};this._adapter.setAnimationEndListener(t);let o=setTimeout(()=>this._destroyPopup(),u.numbers.ANIMATION_DURATION);break}}_onBlur(){this._adapter.dispatchEvent(u.events.BLUR,void 0,!0,!0)||(this.open=!1)}_applyOpen(){if(this._open){if(!this.targetElement||!le(this.targetElement))throw new Error("targetElement on Popup component must be an HTMLElement");typeof this._openCallback=="function"?this._executeOpenCallback():this._openPopup()}else typeof this._closeCallback=="function"?this._executeCloseCallback():this._closePopup()}async _executeOpenCallback(){try{await Promise.resolve(this._openCallback())!==!1?this._openPopup():this._open=!1}catch(t){this._open=!1}}async _executeCloseCallback(){try{await Promise.resolve(this._closeCallback())!==!1?this._closePopup():this._open=!0}catch(t){this._open=!0}}get targetElement(){return this._targetElement}set targetElement(t){if(!t||!le(t))throw new Error("targetElement on Popup component must be an HTMLElement");this._targetElement=t}get placement(){return this._placement}set placement(t){this._placement!==t&&(this._placement=t||"bottom-start",this._adapter.setAttribute(u.attributes.PLACEMENT,this._placement))}get fallbackPlacements(){return this._fallbackPlacements}set fallbackPlacements(t){this._fallbackPlacements=Array.isArray(t)?t:[]}get open(){return this._open}set open(t){t=!!t,this._open!==t&&(this._open=t,this._applyOpen())}get manageFocus(){return this._manageFocus}set manageFocus(t){this._manageFocus!==t&&(this._manageFocus=t)}get animationType(){return this._animationType}set animationType(t){this._animationType!==t&&(this._animationType=t)}get static(){return this._static}set static(t){this._static!==t&&(this._static=t,this._static&&this._destroyBlurListener&&(this._destroyBlurListener(),this._destroyBlurListener=void 0))}get hideWhenClipped(){return this._hideWhenClipped}set hideWhenClipped(t){this._hideWhenClipped!==t&&(this._hideWhenClipped=t)}get offset(){var t;return(t=this._offset)!=null?t:{x:0,y:0}}set offset(t){var o,n;t?this._offset={x:(o=t.x)!=null?o:0,y:(n=t.y)!=null?n:0}:this._offset=void 0,this._open&&this._adapter.positionPopup()}get openCallback(){return this._openCallback}set openCallback(t){this._openCallback=t}get closeCallback(){return this._closeCallback}set closeCallback(t){this._closeCallback=t}position(){this._adapter.positionPopup()}};var yt='<template><div class="forge-popup" part="root"><slot></slot></div></template>',wt=".forge-popup{min-width:112px;min-width:var(--min-width,112px);background-color:#fff;background-color:var(--forge-theme-elevated-surface,#fff);-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);-webkit-box-shadow:var(--forge-theme-popup-elevation,0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12));box-shadow:var(--forge-theme-popup-elevation,0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12));color:#000;color:var(--mdc-theme-on-surface,#000);border-radius:4px;border-radius:var(--mdc-shape-medium,4px);display:none;-webkit-box-sizing:border-box;box-sizing:border-box;min-width:100%;margin:0;padding:0;-webkit-transform:scale(1);transform:scale(1);-webkit-transform-origin:50% 24px 0;transform-origin:50% 24px 0;opacity:0;will-change:transform,opacity;-webkit-transition:opacity 120ms linear,-webkit-transform 120ms cubic-bezier(0, 0, .2, 1);transition:opacity 120ms linear,-webkit-transform 120ms cubic-bezier(0, 0, .2, 1);transition:opacity 120ms linear,transform 120ms cubic-bezier(0, 0, .2, 1);transition:opacity 120ms linear,transform 120ms cubic-bezier(0, 0, .2, 1),-webkit-transform 120ms cubic-bezier(0, 0, .2, 1)}.forge-popup::-webkit-scrollbar{height:var(--forge-scrollbar-height,16px);width:var(--forge-scrollbar-width,16px)}.forge-popup::-webkit-scrollbar-track{background-color:var(--forge-scrollbar-track-container,var(--forge-theme-surface-container-low,#ebebeb))}.forge-popup::-webkit-scrollbar-track:hover{background-color:var(--forge-scrollbar-track-container-hover,var(--forge-theme-surface-container-low,#ebebeb))}.forge-popup::-webkit-scrollbar-corner{background-color:var(--forge-scrollbar-track-container,var(--forge-theme-surface-container-low,#ebebeb))}.forge-popup::-webkit-scrollbar-thumb{height:var(--forge-scrollbar-thumb-min-height,32px);width:var(--forge-scrollbar-thumb-min-width,32px);border-radius:var(--forge-scrollbar-border-radius,var(--forge-shape-full,9999px));border-width:var(--forge-scrollbar-border-width,3px);border-style:solid;border-color:transparent;background-color:var(--forge-scrollbar-thumb-container,var(--forge-theme-surface-container-medium,#c2c2c2));background-clip:content-box}.forge-popup::-webkit-scrollbar-thumb:hover{background-color:var(--forge-scrollbar-thumb-container-hover,var(--forge-theme-surface-container-high,#9e9e9e))}.forge-popup--opening{display:block;-webkit-transform:scale(.8);transform:scale(.8);opacity:0}.forge-popup--closed{display:block;opacity:0;-webkit-transition:opacity 120ms linear;transition:opacity 120ms linear}.forge-popup--open{display:block;-webkit-transform:scale(1);transform:scale(1);opacity:1}.forge-popup--select{border-top-left-radius:0;border-top-right-radius:0;max-height:256px;overflow-y:auto}:host{z-index:10;z-index:var(--forge-z-index-popup,10);border-radius:4px;border-radius:var(--mdc-shape-medium,4px);display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;outline:0;position:absolute;overflow:visible}:host([hidden]){display:none}:host([constrain-viewport-width]){max-width:100vw}",E=class extends Oe{constructor(){super();ke(this,yt,wt),this._foundation=new se(new ae(this))}static get observedAttributes(){return[u.attributes.OPEN,u.attributes.PLACEMENT,u.attributes.MANAGE_FOCUS,u.attributes.ANIMATION_TYPE,u.attributes.STATIC,u.attributes.HIDE_WHEN_CLIPPED]}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(o,n,i){switch(o){case u.attributes.OPEN:this.open=xe(i);break;case u.attributes.PLACEMENT:this.placement=i;break;case u.attributes.MANAGE_FOCUS:this.manageFocus=te(i);break;case u.attributes.ANIMATION_TYPE:this.animationType=i;break;case u.attributes.STATIC:this.static=te(i);break;case u.attributes.HIDE_WHEN_CLIPPED:this.hideWhenClipped=te(i);break}}position(){this._foundation.position()}};T([k()],E.prototype,"targetElement",2),T([k()],E.prototype,"placement",2),T([k()],E.prototype,"fallbackPlacements",2),T([k()],E.prototype,"open",2),T([k()],E.prototype,"manageFocus",2),T([k()],E.prototype,"animationType",2),T([k()],E.prototype,"static",2),T([k()],E.prototype,"hideWhenClipped",2),T([k()],E.prototype,"openCallback",2),T([k()],E.prototype,"closeCallback",2),T([k()],E.prototype,"offset",2),E=T([Ie({name:u.elementName})],E);function mo(){Te(E)}export{u as a,ot as b,ae as c,se as d,E as e,mo as f};
|
|
7
|
+
//# sourceMappingURL=chunk.74HZVSDM.js.map
|