@tylertech/forge 3.0.0-next.14 → 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 +52540 -39351
- 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.PSTGTQVK.js → chunk.2JCTFKCR.js} +2 -2
- package/dist/esm/chunks/{chunk.3UO6S3IK.js → chunk.2OZ2HVBZ.js} +2 -2
- package/dist/esm/chunks/{chunk.3UO6S3IK.js.map → chunk.2OZ2HVBZ.js.map} +3 -3
- package/dist/esm/chunks/{chunk.4B5IOZAT.js → chunk.2YE556AM.js} +2 -2
- package/dist/esm/chunks/{chunk.YKZ25J6B.js → chunk.3U6A353B.js} +2 -2
- package/dist/esm/chunks/chunk.3VHQPHQP.js +7 -0
- package/dist/esm/chunks/chunk.3VHQPHQP.js.map +7 -0
- package/dist/esm/chunks/{chunk.LXX3YZYS.js → chunk.436USWLL.js} +2 -2
- package/dist/esm/chunks/{chunk.KLPF4CNX.js → chunk.4GMGQZOW.js} +2 -2
- package/dist/esm/chunks/{chunk.Z7PBGV4K.js → chunk.4JB3SESQ.js} +2 -2
- package/dist/esm/chunks/{chunk.QFY23EWU.js → chunk.4JL5LW5J.js} +2 -2
- package/dist/esm/chunks/chunk.4O6OEUGY.js +7 -0
- package/dist/esm/chunks/{chunk.RDW7Z4W5.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.55D2BMXX.js +7 -0
- package/dist/esm/chunks/{chunk.A72W7RW7.js → chunk.5LCWC3A7.js} +2 -2
- package/dist/esm/chunks/{chunk.RYNQDXFA.js → chunk.5T7TT3AB.js} +2 -2
- package/dist/esm/chunks/{chunk.2GYZM6ZG.js → chunk.5WVOPPBY.js} +2 -2
- package/dist/esm/chunks/{chunk.2GYZM6ZG.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.TLFCQSJN.js → chunk.6PB5OWMP.js} +2 -2
- package/dist/esm/chunks/{chunk.TLFCQSJN.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.KTYYBWTN.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.HHHBS6FB.js → chunk.B53Q676I.js} +2 -2
- package/dist/esm/chunks/{chunk.B46Q3AFP.js → chunk.BKQSLDMK.js} +2 -2
- package/dist/esm/chunks/{chunk.7XFU2W25.js → chunk.BX4AQRHB.js} +2 -2
- package/dist/esm/chunks/{chunk.7XFU2W25.js.map → chunk.BX4AQRHB.js.map} +3 -3
- package/dist/esm/chunks/{chunk.OUACQISE.js → chunk.BZG47SA5.js} +2 -2
- package/dist/esm/chunks/{chunk.OUACQISE.js.map → chunk.BZG47SA5.js.map} +1 -1
- package/dist/esm/chunks/{chunk.F2EBSV5Z.js → chunk.BZVLSWZR.js} +2 -2
- package/dist/esm/chunks/chunk.C72LM2AL.js +7 -0
- package/dist/esm/chunks/chunk.C72LM2AL.js.map +7 -0
- package/dist/esm/chunks/{chunk.BMQYEYCT.js → chunk.DGG5ABL3.js} +2 -2
- package/dist/esm/chunks/{chunk.PK7R6WDF.js → chunk.DPIWAXEW.js} +2 -2
- 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.5VHUMZYS.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.7PP6QHOM.js → chunk.ETDUW5K2.js} +2 -2
- package/dist/esm/chunks/chunk.EWFNM4WO.js +7 -0
- package/dist/esm/chunks/chunk.EWFNM4WO.js.map +7 -0
- package/dist/esm/chunks/{chunk.FYWPZFLJ.js → chunk.EWT2PBEP.js} +2 -2
- package/dist/esm/chunks/{chunk.FYWPZFLJ.js.map → chunk.EWT2PBEP.js.map} +2 -2
- package/dist/esm/chunks/{chunk.GHR7T6U2.js → chunk.FGHSNC2V.js} +2 -2
- package/dist/esm/chunks/{chunk.P7LC3YYW.js → chunk.FPRBYGET.js} +2 -2
- package/dist/esm/chunks/{chunk.7W2UWAZX.js → chunk.FQVR2QNF.js} +2 -2
- package/dist/esm/chunks/{chunk.IEB5KRFQ.js → chunk.FWWBFNQA.js} +2 -2
- package/dist/esm/chunks/{chunk.543K5Y4E.js → chunk.FZELFLPE.js} +2 -2
- package/dist/esm/chunks/{chunk.6Q3SV2R2.js → chunk.FZZUNYH5.js} +2 -2
- package/dist/esm/chunks/chunk.GHMAI3SM.js +15 -0
- package/dist/esm/chunks/chunk.GHMAI3SM.js.map +7 -0
- package/dist/esm/chunks/{chunk.CTZ3AWDW.js → chunk.GLUKTMQU.js} +2 -2
- package/dist/esm/chunks/{chunk.W324TWF2.js → chunk.GTBCTNMI.js} +2 -2
- package/dist/esm/chunks/chunk.GTGXHY4A.js +7 -0
- package/dist/esm/chunks/chunk.GTGXHY4A.js.map +7 -0
- package/dist/esm/chunks/{chunk.L4Y4RO5O.js → chunk.GURV4TDZ.js} +2 -2
- package/dist/esm/chunks/chunk.H6MMHAQI.js +15 -0
- package/dist/esm/chunks/chunk.H6MMHAQI.js.map +7 -0
- package/dist/esm/chunks/{chunk.FQSL747N.js → chunk.HJUFU2PV.js} +2 -2
- package/dist/esm/chunks/{chunk.FQSL747N.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.K7FPXAFS.js → chunk.HZUQXCOQ.js} +2 -2
- package/dist/esm/chunks/{chunk.K7FPXAFS.js.map → chunk.HZUQXCOQ.js.map} +2 -2
- package/dist/esm/chunks/{chunk.THWSN3X4.js → chunk.IA27LU2O.js} +2 -2
- 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.TZFUKJ24.js → chunk.JXJVPJRO.js} +2 -2
- package/dist/esm/chunks/{chunk.Z2RB75TN.js → chunk.K3STAW42.js} +2 -2
- package/dist/esm/chunks/chunk.KM5XYTE3.js +7 -0
- package/dist/esm/chunks/chunk.KM5XYTE3.js.map +7 -0
- package/dist/esm/chunks/{chunk.G2BNY5QQ.js → chunk.KPC6IS3C.js} +2 -2
- package/dist/esm/chunks/chunk.KPNGLSCU.js +7 -0
- package/dist/esm/chunks/chunk.KPNGLSCU.js.map +7 -0
- package/dist/esm/chunks/{chunk.VDZ7HBKM.js → chunk.KV7PGQJ7.js} +2 -2
- 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.M5JGYRH4.js +7 -0
- package/dist/esm/chunks/chunk.M7RYU4HQ.js +7 -0
- package/dist/esm/chunks/chunk.M7RYU4HQ.js.map +7 -0
- package/dist/esm/chunks/chunk.N75VD4S4.js +7 -0
- package/dist/esm/chunks/chunk.NHOGZDLN.js +7 -0
- package/dist/esm/chunks/chunk.NHOGZDLN.js.map +7 -0
- package/dist/esm/chunks/{chunk.H7GW57Q6.js → chunk.NKEAMFO4.js} +2 -2
- package/dist/esm/chunks/{chunk.26E4L52W.js → chunk.NW54VA4E.js} +2 -2
- package/dist/esm/chunks/chunk.OJGPKHHC.js +7 -0
- package/dist/esm/chunks/{chunk.VD5ZL5ZN.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.OT3JZ6JO.js.map +7 -0
- package/dist/esm/chunks/{chunk.PADPL4L3.js → chunk.OUIWXKO2.js} +2 -2
- package/dist/esm/chunks/chunk.OXVCCHM5.js +7 -0
- package/dist/esm/chunks/{chunk.7ABZUBTT.js → chunk.P5XHGSJY.js} +2 -2
- package/dist/esm/chunks/chunk.Q5YXX4DU.js +7 -0
- package/dist/esm/chunks/chunk.Q5YXX4DU.js.map +7 -0
- package/dist/esm/chunks/chunk.QG5EYBS3.js +7 -0
- package/dist/esm/chunks/chunk.QG5EYBS3.js.map +7 -0
- package/dist/esm/chunks/{chunk.NZKIFXBU.js → chunk.QKTNCOVX.js} +2 -2
- package/dist/esm/chunks/{chunk.NG6UZ4OL.js → chunk.QZ57WM3D.js} +2 -2
- package/dist/esm/chunks/{chunk.OED5UCYT.js → chunk.R2QENXIL.js} +2 -2
- package/dist/esm/chunks/chunk.R53VHVKB.js +12 -0
- package/dist/esm/chunks/chunk.R53VHVKB.js.map +7 -0
- package/dist/esm/chunks/{chunk.DOEG3DWJ.js → chunk.RDQ3QGWS.js} +2 -2
- package/dist/esm/chunks/{chunk.GS72TBUD.js → chunk.RFKKHN7V.js} +2 -2
- package/dist/esm/chunks/{chunk.57PXXJA6.js → chunk.RKG66YKS.js} +2 -2
- package/dist/esm/chunks/chunk.RRNSZCVJ.js +7 -0
- package/dist/esm/chunks/chunk.RRNSZCVJ.js.map +7 -0
- 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.LMIKNDBS.js → chunk.T235SNYZ.js} +2 -2
- package/dist/esm/chunks/chunk.T4N7KZHZ.js +7 -0
- package/dist/esm/chunks/chunk.T4N7KZHZ.js.map +7 -0
- package/dist/esm/chunks/{chunk.J3B5CWKT.js → chunk.TE6ZNUAM.js} +2 -2
- package/dist/esm/chunks/{chunk.J3B5CWKT.js.map → chunk.TE6ZNUAM.js.map} +2 -2
- package/dist/esm/chunks/{chunk.DD35U4AA.js → chunk.TNEUDWZU.js} +2 -2
- package/dist/esm/chunks/{chunk.DD35U4AA.js.map → chunk.TNEUDWZU.js.map} +2 -2
- package/dist/esm/chunks/chunk.TPXXHX5J.js +7 -0
- package/dist/esm/chunks/{chunk.JAWV5Y5T.js.map → chunk.TPXXHX5J.js.map} +2 -2
- package/dist/esm/chunks/chunk.TZ67MC2N.js +7 -0
- package/dist/esm/chunks/{chunk.C5IB44HX.js.map → chunk.TZ67MC2N.js.map} +1 -1
- package/dist/esm/chunks/chunk.V3IHX6B2.js +7 -0
- package/dist/esm/chunks/{chunk.BFUGFHEH.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.VGIZJ32U.js +7 -0
- 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.XDANTL6C.js.map → chunk.W5TDBDVY.js.map} +2 -2
- package/dist/esm/chunks/{chunk.U5WMRBSC.js → chunk.WA2YP4NC.js} +2 -2
- package/dist/esm/chunks/chunk.WFQYTXCB.js +7 -0
- package/dist/esm/chunks/chunk.WFQYTXCB.js.map +7 -0
- package/dist/esm/chunks/chunk.WNH7EHZP.js +7 -0
- package/dist/esm/chunks/{chunk.F6KM5FO6.js.map → chunk.WNH7EHZP.js.map} +2 -2
- package/dist/esm/chunks/{chunk.5C24LZNU.js → chunk.WQHKUNR7.js} +2 -2
- package/dist/esm/chunks/chunk.WYSUQK6Z.js +7 -0
- package/dist/esm/chunks/{chunk.3ZRQFXQU.js.map → chunk.WYSUQK6Z.js.map} +2 -2
- package/dist/esm/chunks/chunk.X57DRPFB.js +7 -0
- package/dist/esm/chunks/{chunk.DDXIHZFX.js → chunk.X7YTDVNT.js} +2 -2
- package/dist/esm/chunks/chunk.XBFH6M72.js +7 -0
- package/dist/esm/chunks/chunk.XBFH6M72.js.map +7 -0
- package/dist/esm/chunks/{chunk.7DHDFH5L.js → chunk.XOH2JCRS.js} +2 -2
- package/dist/esm/chunks/{chunk.IW7HALLT.js → chunk.Y6D5Z56X.js} +2 -2
- package/dist/esm/chunks/{chunk.IW7HALLT.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.KVCDAZ6B.js → chunk.YTBNAGLS.js} +2 -2
- package/dist/esm/chunks/chunk.YWDYBX3G.js +7 -0
- package/dist/esm/chunks/chunk.YWDYBX3G.js.map +7 -0
- package/dist/esm/chunks/{chunk.RZZBM3AW.js → chunk.ZHMV5SR4.js} +2 -2
- package/dist/esm/chunks/{chunk.GWJ4QCSW.js → chunk.ZLACSRD4.js} +2 -2
- package/dist/esm/chunks/{chunk.URCJO73M.js → chunk.ZPVRRFT7.js} +2 -2
- package/dist/esm/chunks/{chunk.URCJO73M.js.map → chunk.ZPVRRFT7.js.map} +1 -1
- package/dist/esm/chunks/chunk.ZS3T6MJS.js +7 -0
- package/dist/esm/chunks/{chunk.JVK64JDZ.js.map → chunk.ZS3T6MJS.js.map} +2 -2
- package/dist/esm/chunks/{chunk.DTKFE7YB.js → chunk.ZUTQPJ2B.js} +2 -2
- 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.PQQVUUHU.js → chunk.ZYCKD6K5.js} +2 -2
- package/dist/esm/circular-progress/index.js +1 -1
- package/dist/esm/color-picker/index.js +1 -1
- package/dist/esm/core/base/index.js +1 -1
- package/dist/esm/core/delegates/index.js +1 -1
- package/dist/esm/core/index.js +1 -1
- package/dist/esm/core/utils/index.js +1 -1
- package/dist/esm/date-picker/index.js +1 -1
- package/dist/esm/date-range-picker/index.js +1 -1
- package/dist/esm/dialog/index.js +1 -1
- package/dist/esm/divider/index.js +1 -1
- package/dist/esm/drawer/base/index.js +1 -1
- package/dist/esm/drawer/drawer/index.js +1 -1
- package/dist/esm/drawer/index.js +1 -1
- package/dist/esm/drawer/mini-drawer/index.js +1 -1
- package/dist/esm/drawer/modal-drawer/index.js +1 -1
- package/dist/esm/expansion-panel/index.js +1 -1
- package/dist/esm/file-picker/index.js +1 -1
- package/dist/esm/floating-action-button/index.js +1 -1
- package/dist/esm/floating-label/index.js +1 -1
- package/dist/esm/focus-indicator/index.js +1 -1
- package/dist/esm/icon/index.js +1 -1
- package/dist/esm/icon-button/index.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/inline-message/index.js +1 -1
- package/dist/esm/keyboard-shortcut/index.js +1 -1
- package/dist/esm/label/index.js +1 -1
- package/dist/esm/label-value/index.js +1 -1
- package/dist/esm/linear-progress/index.js +1 -1
- package/dist/esm/list/index.js +1 -1
- package/dist/esm/list/list/index.js +1 -1
- package/dist/esm/list/list-item/index.js +1 -1
- package/dist/esm/list-dropdown/index.js +1 -1
- package/dist/esm/menu/index.js +1 -1
- package/dist/esm/open-icon/index.js +1 -1
- package/dist/esm/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 +7 -0
- package/dist/esm/radio/radio/index.js.map +7 -0
- package/dist/esm/radio/radio-group/index.js +7 -0
- package/dist/esm/radio/radio-group/index.js.map +7 -0
- package/dist/esm/ripple/index.js +1 -1
- package/dist/esm/scaffold/index.js +1 -1
- package/dist/esm/select/core/index.js +1 -1
- package/dist/esm/select/index.js +1 -1
- package/dist/esm/select/option/index.js +1 -1
- package/dist/esm/select/option-group/index.js +1 -1
- package/dist/esm/select/select/index.js +1 -1
- package/dist/esm/select/select-dropdown/index.js +1 -1
- package/dist/esm/skeleton/index.js +1 -1
- package/dist/esm/slider/index.js +1 -1
- package/dist/esm/split-button/index.js +1 -1
- package/dist/esm/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view-panel/index.js +1 -1
- package/dist/esm/stack/index.js +1 -1
- package/dist/esm/state-layer/index.js +1 -1
- package/dist/esm/stepper/index.js +1 -1
- package/dist/esm/stepper/step/index.js +1 -1
- package/dist/esm/stepper/stepper/index.js +1 -1
- package/dist/esm/switch/index.js +1 -1
- package/dist/esm/table/index.js +1 -1
- package/dist/esm/tabs/index.js +1 -1
- package/dist/esm/tabs/tab/index.js +1 -1
- package/dist/esm/tabs/tab-bar/index.js +1 -1
- package/dist/esm/text-field/index.js +1 -1
- package/dist/esm/time-picker/index.js +1 -1
- package/dist/esm/toast/index.js +1 -1
- package/dist/esm/toolbar/index.js +1 -1
- package/dist/esm/tooltip/index.js +1 -1
- package/dist/esm/view-switcher/index.js +1 -1
- package/dist/esm/view-switcher/view/index.js +1 -1
- package/dist/forge-dark.css +1 -1
- package/dist/forge.css +1 -1
- package/dist/theme/forge-theme.css +1 -1
- package/esm/app-bar/app-bar/app-bar.js +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/app-bar/search/app-bar-search-adapter.d.ts +8 -43
- package/esm/app-bar/search/app-bar-search-adapter.js +23 -53
- package/esm/app-bar/search/app-bar-search-constants.d.ts +0 -15
- package/esm/app-bar/search/app-bar-search-constants.js +3 -20
- package/esm/app-bar/search/app-bar-search-foundation.d.ts +3 -37
- package/esm/app-bar/search/app-bar-search-foundation.js +27 -88
- package/esm/app-bar/search/app-bar-search.d.ts +1 -21
- package/esm/app-bar/search/app-bar-search.js +13 -39
- package/esm/banner/banner.js +1 -1
- package/esm/button/base/base-button-adapter.d.ts +0 -5
- package/esm/button/base/base-button-adapter.js +18 -18
- 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 +9 -14
- package/esm/button/base/base-button.d.ts +11 -7
- package/esm/button/base/base-button.js +21 -14
- package/esm/button/button-constants.d.ts +2 -0
- package/esm/button/button-constants.js +2 -1
- package/esm/button/button-foundation.d.ts +4 -0
- package/esm/button/button-foundation.js +10 -0
- package/esm/button/button.d.ts +4 -0
- package/esm/button/button.js +10 -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 +15 -2
- package/esm/constants.js +13 -0
- package/esm/core/base/base-adapter.d.ts +6 -0
- package/esm/core/base/base-adapter.js +13 -4
- package/esm/core/base/base-component.d.ts +4 -0
- package/esm/core/base/base-form-component.d.ts +0 -10
- package/esm/core/base/base-form-component.js +0 -6
- package/esm/core/base/base-nullable-form-component.d.ts +0 -10
- package/esm/core/base/base-nullable-form-component.js +0 -6
- package/esm/core/{base/base-focusable-component.d.ts → mixins/focus/with-focusable.d.ts} +11 -14
- package/esm/core/{base/base-focusable-component.js → mixins/focus/with-focusable.js} +15 -16
- package/esm/core/mixins/form/with-form-associated.d.ts +116 -0
- package/esm/core/mixins/form/with-form-associated.js +71 -0
- 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/mixins/label/with-label-aware.d.ts +33 -0
- package/esm/core/mixins/label/with-label-aware.js +17 -0
- package/esm/core/utils/a11y-utils.d.ts +126 -0
- package/esm/core/utils/a11y-utils.js +169 -0
- 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/event-utils.d.ts +1 -0
- package/esm/core/utils/event-utils.js +3 -0
- package/esm/core/utils/feature-detection.d.ts +13 -0
- package/esm/core/utils/feature-detection.js +21 -0
- package/esm/core/utils/form-utils.d.ts +24 -0
- package/{styles/checkbox/_configuration.scss → esm/core/utils/form-utils.js} +1 -5
- package/esm/core/utils/index.d.ts +1 -0
- package/esm/core/utils/index.js +1 -0
- package/esm/core/utils/mixin-utils.d.ts +20 -0
- package/esm/core/utils/mixin-utils.js +15 -0
- package/esm/core/utils/position-utils.d.ts +78 -0
- package/esm/core/utils/position-utils.js +197 -0
- package/esm/core/utils/reflect-utils.d.ts +1 -1
- package/esm/core/utils/reflect-utils.js +2 -2
- package/esm/core/utils/utils.d.ts +14 -0
- package/esm/core/utils/utils.js +25 -7
- package/esm/date-picker/base/base-date-picker.d.ts +1 -1
- package/esm/date-picker/base/base-date-picker.js +4 -3
- package/esm/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 +6 -4
- package/esm/index.js +36 -29
- package/esm/label/label-adapter.d.ts +2 -0
- package/esm/label/label-adapter.js +8 -5
- package/esm/label/label-aware.js +2 -1
- package/esm/label/label-constants.d.ts +6 -2
- package/esm/label/label-constants.js +13 -4
- package/esm/label/label-foundation.d.ts +16 -0
- package/esm/label/label-foundation.js +69 -6
- package/esm/label/label.d.ts +8 -0
- package/esm/label/label.js +21 -3
- 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-adapter.d.ts +3 -3
- package/esm/menu/menu-constants.d.ts +1 -1
- package/esm/menu/menu-foundation.d.ts +1 -0
- package/esm/menu/menu-foundation.js +11 -4
- 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-constants.d.ts +9 -0
- package/esm/paginator/paginator-foundation.d.ts +5 -2
- package/esm/paginator/paginator-foundation.js +29 -8
- package/esm/paginator/paginator.d.ts +3 -1
- package/esm/paginator/paginator.js +4 -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.d.ts +83 -0
- package/esm/radio/core/radio-group-manager.js +201 -0
- package/esm/radio/index.d.ts +1 -2
- package/esm/radio/index.js +1 -6
- package/esm/radio/radio/index.d.ts +10 -0
- package/esm/radio/radio/index.js +14 -0
- package/esm/radio/radio/radio-adapter.d.ts +41 -0
- package/esm/radio/radio/radio-adapter.js +75 -0
- package/{styles/focus-indicator/_configuration.scss → esm/radio/radio/radio-component-delegate.d.ts} +0 -5
- package/{styles/list/list/_configuration.scss → esm/radio/radio/radio-component-delegate.js} +1 -5
- package/esm/radio/radio/radio-constants.d.ts +37 -0
- package/esm/radio/radio/radio-constants.js +40 -0
- package/esm/radio/radio/radio-foundation.d.ts +70 -0
- package/esm/radio/radio/radio-foundation.js +199 -0
- package/esm/radio/radio/radio.d.ts +115 -0
- package/esm/radio/radio/radio.js +204 -0
- package/esm/radio/radio-group/index.d.ts +10 -0
- package/esm/radio/radio-group/index.js +14 -0
- package/esm/radio/radio-group/radio-group-adapter.d.ts +18 -0
- package/esm/radio/radio-group/radio-group-adapter.js +26 -0
- package/esm/radio/radio-group/radio-group-constants.d.ts +11 -0
- package/esm/radio/radio-group/radio-group-constants.js +14 -0
- package/esm/radio/radio-group/radio-group-foundation.d.ts +20 -0
- package/esm/radio/radio-group/radio-group-foundation.js +32 -0
- package/esm/radio/radio-group/radio-group.d.ts +47 -0
- package/esm/radio/radio-group/radio-group.js +83 -0
- 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 +6 -0
- package/styles/app-bar/app-bar/app-bar.scss +31 -17
- package/styles/app-bar/app-bar/index.scss +0 -2
- package/styles/app-bar/search/_core.scss +75 -0
- package/styles/app-bar/search/_token-utils.scss +30 -0
- package/styles/app-bar/search/app-bar-search.scss +50 -4
- package/styles/{switch/_configuration.scss → app-bar/search/index.scss} +1 -5
- package/styles/button/_core.scss +2 -0
- package/styles/button/button.scss +40 -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/button-toggle/button-toggle/index.scss +6 -0
- 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/app-bar/search/_tokens.scss +35 -0
- 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 +66 -0
- 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/_core.scss +2 -5
- package/styles/label/label.scss +3 -7
- 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/overlay/index.scss +6 -0
- 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/popover/index.scss +6 -0
- 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/index.scss +6 -0
- package/styles/radio/radio/_core.scss +126 -0
- package/styles/radio/radio/_token-utils.scss +30 -0
- package/styles/radio/radio/index.scss +6 -0
- package/styles/radio/radio/radio.scss +99 -0
- 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 +9 -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.2GJ54C3Q.js +0 -7
- package/dist/esm/chunks/chunk.2GJ54C3Q.js.map +0 -7
- package/dist/esm/chunks/chunk.2YDKRTKP.js +0 -7
- package/dist/esm/chunks/chunk.2YDKRTKP.js.map +0 -7
- package/dist/esm/chunks/chunk.3JCHXLPT.js +0 -7
- package/dist/esm/chunks/chunk.3JCHXLPT.js.map +0 -7
- package/dist/esm/chunks/chunk.3RMBFRGC.js +0 -7
- package/dist/esm/chunks/chunk.3RMBFRGC.js.map +0 -7
- package/dist/esm/chunks/chunk.3ZRQFXQU.js +0 -7
- package/dist/esm/chunks/chunk.4QDN5PM6.js +0 -7
- package/dist/esm/chunks/chunk.4QDN5PM6.js.map +0 -7
- package/dist/esm/chunks/chunk.5H4G6BWX.js +0 -7
- package/dist/esm/chunks/chunk.5H4G6BWX.js.map +0 -7
- package/dist/esm/chunks/chunk.5VHUMZYS.js +0 -7
- package/dist/esm/chunks/chunk.6DXDNQUR.js +0 -15
- package/dist/esm/chunks/chunk.6DXDNQUR.js.map +0 -7
- package/dist/esm/chunks/chunk.6Y45DLA6.js +0 -7
- package/dist/esm/chunks/chunk.6Y45DLA6.js.map +0 -7
- package/dist/esm/chunks/chunk.7BGOH44S.js +0 -7
- package/dist/esm/chunks/chunk.7BGOH44S.js.map +0 -7
- package/dist/esm/chunks/chunk.7UXLLUTN.js +0 -7
- package/dist/esm/chunks/chunk.AEJGC4YG.js +0 -7
- package/dist/esm/chunks/chunk.AEJGC4YG.js.map +0 -7
- package/dist/esm/chunks/chunk.BFUGFHEH.js +0 -7
- package/dist/esm/chunks/chunk.BLW6QESQ.js +0 -12
- package/dist/esm/chunks/chunk.BLW6QESQ.js.map +0 -7
- package/dist/esm/chunks/chunk.C5IB44HX.js +0 -7
- package/dist/esm/chunks/chunk.CNRFOWHY.js +0 -7
- package/dist/esm/chunks/chunk.CNRFOWHY.js.map +0 -7
- package/dist/esm/chunks/chunk.CZOABXEQ.js +0 -7
- package/dist/esm/chunks/chunk.E3GVKR4E.js +0 -7
- package/dist/esm/chunks/chunk.E3GVKR4E.js.map +0 -7
- package/dist/esm/chunks/chunk.EBSBAFCX.js +0 -7
- package/dist/esm/chunks/chunk.EBSBAFCX.js.map +0 -7
- package/dist/esm/chunks/chunk.F6KM5FO6.js +0 -7
- package/dist/esm/chunks/chunk.FB6ZLH6P.js +0 -7
- package/dist/esm/chunks/chunk.FB6ZLH6P.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.GT3VPSXY.js +0 -7
- package/dist/esm/chunks/chunk.GT3VPSXY.js.map +0 -7
- package/dist/esm/chunks/chunk.I3NHK2S3.js +0 -7
- package/dist/esm/chunks/chunk.IT66AOX7.js +0 -7
- package/dist/esm/chunks/chunk.IT66AOX7.js.map +0 -7
- package/dist/esm/chunks/chunk.IVUK3W34.js +0 -7
- package/dist/esm/chunks/chunk.IVUK3W34.js.map +0 -7
- package/dist/esm/chunks/chunk.J2KHTGSB.js +0 -7
- package/dist/esm/chunks/chunk.J2KHTGSB.js.map +0 -7
- package/dist/esm/chunks/chunk.JAWV5Y5T.js +0 -7
- package/dist/esm/chunks/chunk.JVK64JDZ.js +0 -7
- package/dist/esm/chunks/chunk.KFDYMENL.js +0 -7
- package/dist/esm/chunks/chunk.KFDYMENL.js.map +0 -7
- package/dist/esm/chunks/chunk.KTYYBWTN.js +0 -7
- package/dist/esm/chunks/chunk.LCNR2RPT.js +0 -7
- package/dist/esm/chunks/chunk.LCNR2RPT.js.map +0 -7
- package/dist/esm/chunks/chunk.LOBKFTRM.js +0 -7
- package/dist/esm/chunks/chunk.LOBKFTRM.js.map +0 -7
- package/dist/esm/chunks/chunk.LS7WRRT2.js +0 -7
- package/dist/esm/chunks/chunk.LS7WRRT2.js.map +0 -7
- package/dist/esm/chunks/chunk.LSNAGIIH.js +0 -7
- package/dist/esm/chunks/chunk.LSNAGIIH.js.map +0 -7
- package/dist/esm/chunks/chunk.LUIKMPQR.js +0 -7
- package/dist/esm/chunks/chunk.LUIKMPQR.js.map +0 -7
- package/dist/esm/chunks/chunk.MZZJY5NX.js +0 -7
- package/dist/esm/chunks/chunk.MZZJY5NX.js.map +0 -7
- package/dist/esm/chunks/chunk.NYYXUH3X.js +0 -7
- package/dist/esm/chunks/chunk.OYO5O3NF.js +0 -7
- package/dist/esm/chunks/chunk.Q5Z6F3PI.js +0 -7
- package/dist/esm/chunks/chunk.Q5Z6F3PI.js.map +0 -7
- package/dist/esm/chunks/chunk.RCSBJQ4G.js +0 -7
- package/dist/esm/chunks/chunk.RCSBJQ4G.js.map +0 -7
- package/dist/esm/chunks/chunk.RDW7Z4W5.js +0 -7
- package/dist/esm/chunks/chunk.SNF35Y6C.js +0 -7
- package/dist/esm/chunks/chunk.SNF35Y6C.js.map +0 -7
- package/dist/esm/chunks/chunk.SOLF23NC.js +0 -7
- package/dist/esm/chunks/chunk.T34DG7BU.js +0 -7
- package/dist/esm/chunks/chunk.TA3MVDUU.js +0 -7
- package/dist/esm/chunks/chunk.TA3MVDUU.js.map +0 -7
- package/dist/esm/chunks/chunk.UWZWXNTW.js +0 -7
- package/dist/esm/chunks/chunk.UWZWXNTW.js.map +0 -7
- package/dist/esm/chunks/chunk.VD5ZL5ZN.js +0 -7
- package/dist/esm/chunks/chunk.WQGPIOL6.js +0 -7
- package/dist/esm/chunks/chunk.WQGPIOL6.js.map +0 -7
- package/dist/esm/chunks/chunk.XDANTL6C.js +0 -7
- package/dist/esm/chunks/chunk.XNCBGWE4.js +0 -7
- package/dist/esm/chunks/chunk.XNCBGWE4.js.map +0 -7
- package/dist/esm/chunks/chunk.ZSD7MMVB.js +0 -7
- package/dist/esm/chunks/chunk.ZSD7MMVB.js.map +0 -7
- package/dist/esm/chunks/chunk.ZVJMIBUM.js +0 -7
- package/dist/esm/chunks/chunk.ZVJMIBUM.js.map +0 -7
- package/dist/tooltip/forge-tooltip.css +0 -6
- package/esm/radio/radio-adapter.d.ts +0 -71
- package/esm/radio/radio-adapter.js +0 -260
- package/esm/radio/radio-constants.d.ts +0 -30
- package/esm/radio/radio-constants.js +0 -36
- package/esm/radio/radio-foundation.d.ts +0 -31
- package/esm/radio/radio-foundation.js +0 -80
- package/esm/radio/radio.d.ts +0 -33
- package/esm/radio/radio.js +0 -75
- package/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/app-bar/search/_mixins.scss +0 -238
- package/styles/app-bar/search/_variables.scss +0 -18
- 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/_mixins.scss +0 -309
- package/styles/radio/_radio-theme.scss +0 -314
- package/styles/radio/radio.scss +0 -19
- package/styles/split-button/_configuration.scss +0 -12
- package/styles/state-layer/_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.PSTGTQVK.js.map → chunk.2JCTFKCR.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.4B5IOZAT.js.map → chunk.2YE556AM.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.YKZ25J6B.js.map → chunk.3U6A353B.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.LXX3YZYS.js.map → chunk.436USWLL.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.KLPF4CNX.js.map → chunk.4GMGQZOW.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.Z7PBGV4K.js.map → chunk.4JB3SESQ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.QFY23EWU.js.map → chunk.4JL5LW5J.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.NYYXUH3X.js.map → chunk.55D2BMXX.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.A72W7RW7.js.map → chunk.5LCWC3A7.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.RYNQDXFA.js.map → chunk.5T7TT3AB.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.HHHBS6FB.js.map → chunk.B53Q676I.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.B46Q3AFP.js.map → chunk.BKQSLDMK.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.F2EBSV5Z.js.map → chunk.BZVLSWZR.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.BMQYEYCT.js.map → chunk.DGG5ABL3.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.PK7R6WDF.js.map → chunk.DPIWAXEW.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.7PP6QHOM.js.map → chunk.ETDUW5K2.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.GHR7T6U2.js.map → chunk.FGHSNC2V.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.P7LC3YYW.js.map → chunk.FPRBYGET.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.7W2UWAZX.js.map → chunk.FQVR2QNF.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.IEB5KRFQ.js.map → chunk.FWWBFNQA.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.543K5Y4E.js.map → chunk.FZELFLPE.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.6Q3SV2R2.js.map → chunk.FZZUNYH5.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.CTZ3AWDW.js.map → chunk.GLUKTMQU.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.W324TWF2.js.map → chunk.GTBCTNMI.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.L4Y4RO5O.js.map → chunk.GURV4TDZ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.THWSN3X4.js.map → chunk.IA27LU2O.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.TZFUKJ24.js.map → chunk.JXJVPJRO.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.Z2RB75TN.js.map → chunk.K3STAW42.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.G2BNY5QQ.js.map → chunk.KPC6IS3C.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.VDZ7HBKM.js.map → chunk.KV7PGQJ7.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.OYO5O3NF.js.map → chunk.M5JGYRH4.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.T34DG7BU.js.map → chunk.N75VD4S4.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.H7GW57Q6.js.map → chunk.NKEAMFO4.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.26E4L52W.js.map → chunk.NW54VA4E.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.PADPL4L3.js.map → chunk.OUIWXKO2.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.I3NHK2S3.js.map → chunk.OXVCCHM5.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.7ABZUBTT.js.map → chunk.P5XHGSJY.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.NZKIFXBU.js.map → chunk.QKTNCOVX.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.NG6UZ4OL.js.map → chunk.QZ57WM3D.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.OED5UCYT.js.map → chunk.R2QENXIL.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.DOEG3DWJ.js.map → chunk.RDQ3QGWS.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.GS72TBUD.js.map → chunk.RFKKHN7V.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.57PXXJA6.js.map → chunk.RKG66YKS.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.LMIKNDBS.js.map → chunk.T235SNYZ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.SOLF23NC.js.map → chunk.VGIZJ32U.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.U5WMRBSC.js.map → chunk.WA2YP4NC.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.5C24LZNU.js.map → chunk.WQHKUNR7.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.7UXLLUTN.js.map → chunk.X57DRPFB.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.DDXIHZFX.js.map → chunk.X7YTDVNT.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.7DHDFH5L.js.map → chunk.XOH2JCRS.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.KVCDAZ6B.js.map → chunk.YTBNAGLS.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.RZZBM3AW.js.map → chunk.ZHMV5SR4.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.GWJ4QCSW.js.map → chunk.ZLACSRD4.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.DTKFE7YB.js.map → chunk.ZUTQPJ2B.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.PQQVUUHU.js.map → chunk.ZYCKD6K5.js.map} +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
function f(t,e){let r=t.toLowerCase().indexOf(e.toLowerCase());if(r!==-1){let i=r+e.length,o=document.createElement("span"),u=document.createElement("span");return u.style.fontWeight="bold",u.textContent=t.substring(r,i),o.appendChild(document.createTextNode(t.substring(0,r))),o.appendChild(u),o.appendChild(document.createTextNode(t.substring(i))),o}}function p(t,{capture:e=!0,pointerenter:n=!0,focusin:r=!0}={}){let i,o=()=>{typeof i=="function"&&i()};return{userInteraction:new Promise(m=>{let s={once:!0,capture:e},c=d=>{r&&t.removeEventListener("focusin",l,s),m(d)},l=d=>{n&&t.removeEventListener("pointerenter",c,s),m(d)};i=()=>{n&&t.removeEventListener("pointerenter",c,s),r&&t.removeEventListener("focusin",l,s)},n&&t.addEventListener("pointerenter",c,s),r&&t.addEventListener("focusin",l,s)}),destroy:o}}function E(t,e){return e===0?0:t/100*e}function b(t,e){return e===0?0:t*100/e}function T(t,e,n,r=0,i=100){let o=n-e,u=t-e;return!o||!u?r:u*i/o+r}function x(...t){return Math.min(...t.map(e=>e!=null?e:Number.POSITIVE_INFINITY))}function v(...t){return Math.max(...t.map(e=>e!=null?e:Number.NEGATIVE_INFINITY))}function L(t,e){if(!(t&&e))return!1;let n=t.getBoundingClientRect(),r=e.getBoundingClientRect();return!(n.top>r.bottom||n.right<r.left||n.bottom<r.top||n.left>r.right)}function g({x:t,y:e},n){if(!n)return!1;let{top:r,left:i,bottom:o,right:u}=n.getBoundingClientRect();return t>=i&&t<=u&&e>=r&&e<=o}function h(t,e){let n=null;return e&&(n=a(t,e)),n||t.parentElement}function a(t,e){let n=t.getRootNode();return e===":host"&&n instanceof ShadowRoot?n.host:n.querySelector(`#${e}`)}function I(t,e,n=!0){return n&&e.append(...t.childNodes),t.insertAdjacentElement("beforebegin",e),t.remove(),e}function M(t,e=","){return t.split(e).map(n=>n.trim())}export{f as a,p as b,E as c,b as d,T as e,x as f,v as g,L as h,g as i,h as j,a as k,I as l,M as m};
|
|
7
|
+
//# sourceMappingURL=chunk.HPCXVNG6.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/core/utils/utils.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * Highlights text in the given label by converting it to HTML and using a `<span>` tag to show the highlighted text within the original label.\n * @param label The full text.\n * @param highlightText The text to highlight.\n */\nexport function highlightTextHTML(label: string, highlightText: string): HTMLElement | undefined {\n const text = label.toLowerCase();\n const startIndex = text.indexOf(highlightText.toLowerCase());\n\n if (startIndex !== -1) {\n const endIndex = startIndex + highlightText.length;\n const wrapperSpan = document.createElement('span');\n const highlightSpan = document.createElement('span');\n\n highlightSpan.style.fontWeight = 'bold';\n highlightSpan.textContent = label.substring(startIndex, endIndex);\n \n wrapperSpan.appendChild(document.createTextNode(label.substring(0, startIndex)));\n wrapperSpan.appendChild(highlightSpan);\n wrapperSpan.appendChild(document.createTextNode(label.substring(endIndex)));\n \n return wrapperSpan;\n }\n\n return undefined;\n}\n\n/**\n * Awaits user interaction on an element in the form of `pointerenter` or `focusin` to let a listener know\n * when the user has attempted to interact with the provided element.\n * \n * The listeners are only called once, and the other is removed after one of the listeners is called.\n * @param element The element to listen to.\n * @param capture Whether to use capturing listeners or not.\n * @returns A `Promise` that will be resolved when either of the listeners has executed.\n */\nexport function createUserInteractionListener(element: HTMLElement, { capture = true, pointerenter = true, focusin = true } = {}): { userInteraction: Promise<Event>; destroy: () => void } {\n let destroyFn: () => void;\n const destroy: () => void = () => {\n if (typeof destroyFn === 'function') {\n destroyFn();\n }\n };\n\n const userInteraction = new Promise<Event>(resolve => {\n const listenerOpts: EventListenerOptions & { once: boolean } = { once: true, capture };\n \n const handlePointerenter = (evt: Event): void => {\n if (focusin) {\n element.removeEventListener('focusin', handleFocusin, listenerOpts);\n }\n resolve(evt);\n };\n \n const handleFocusin = (evt: Event): void => {\n if (pointerenter) {\n element.removeEventListener('pointerenter', handlePointerenter, listenerOpts);\n }\n resolve(evt);\n };\n\n destroyFn = (): void => {\n if (pointerenter) {\n element.removeEventListener('pointerenter', handlePointerenter, listenerOpts);\n }\n if (focusin) {\n element.removeEventListener('focusin', handleFocusin, listenerOpts);\n }\n };\n\n if (pointerenter) {\n element.addEventListener('pointerenter', handlePointerenter, listenerOpts);\n }\n if (focusin) {\n element.addEventListener('focusin', handleFocusin, listenerOpts);\n }\n });\n\n return { userInteraction, destroy };\n}\n\n/**\n * Converts a percent value to pixels.\n * @param amount A percent value.\n * @param containerSize The size of the parent element along the relevant axis.\n * @returns A pixel value.\n */\nexport function percentToPixels(amount: number, containerSize: number): number {\n if (containerSize === 0) {\n return 0;\n }\n return amount / 100 * containerSize;\n}\n\n/**\n * Converts a pixel value to a percentage.\n * @param amount A pixel value.\n * @param containerSize The size of the parent element along the relevant axis.\n * @returns A percent value.\n */\nexport function pixelsToPercent(amount: number, containerSize: number): number {\n if (containerSize === 0) {\n return 0;\n }\n return amount * 100 / containerSize;\n}\n\n/**\n * Scales a value from one range to another.\n * @param value The original number value.\n * @param fromMin The lower bound of the input range.\n * @param fromMax The upper bound of the input range.\n * @param toMin The lower bound of the output range (defaults to 0).\n * @param toMax The lower bound of the output range (defaults to 100).\n * @returns A value mapped to the output range.\n */\nexport function scaleValue(value: number, fromMin: number, fromMax: number, toMin = 0, toMax = 100): number {\n const range = fromMax - fromMin;\n const adjustedValue = value - fromMin;\n if (!range || !adjustedValue) {\n return toMin;\n }\n return adjustedValue * toMax / range + toMin;\n}\n\n/**\n * Returns the min of a set of numbers where some values may be undefined.\n * @param args `number` or `undefined` values to compare.\n * @returns The min value or `Number.POSITIVE_INFINITY` if all values are `undefined`.\n */\nexport function safeMin(...args: (number | undefined)[]): number {\n return Math.min(...args.map(arg => arg ?? Number.POSITIVE_INFINITY));\n}\n\n/**\n * Returns the max of a set of numbers where some values may be undefined.\n * @param args `number` or `undefined` values to compare.\n * @returns The max value or `Number.NEGATIVE_INFINITY` if all values are `undefined`.\n */\nexport function safeMax(...args: (number | undefined)[]): number {\n return Math.max(...args.map(arg => arg ?? Number.NEGATIVE_INFINITY));\n}\n\n/**\n * Determines if two elements are overlapping.\n * @param elA {Element | null}\n * @param elB {Element | null}\n * @returns \n */\nexport function elementsOverlapping(elA: Element | null, elB: Element | null): boolean {\n if (!(elA && elB)) {\n return false;\n }\n const a = elA.getBoundingClientRect();\n const b = elB.getBoundingClientRect();\n return !(a.top > b.bottom || a.right < b.left || a.bottom < b.top || a.left > b.right);\n}\n\n/**\n * Determines if a pointer event is over an element.\n * @param event {PointerEvent} The pointer event to test.\n * @param element {HTMElement} The element to test against.\n * @returns \n */\nexport function isPointerOverElement({ x, y }: { x: number; y: number }, element: HTMLElement | null): boolean {\n if (!element) {\n return false;\n }\n const { top, left, bottom, right } = element.getBoundingClientRect();\n return x >= left && x <= right && y >= top && y <= bottom;\n}\n\n/**\n * Attempts to locate a target element based on a heuristic.\n * \n * We use the following heuristic for locating the target element:\n * - If an id is set, we use that value to query the DOM for the target element\n * - If id is set to `:host`, we use the host element from within a shadow tree (only if the root node is a ShadowRoot instance)\n * - If an id is set but the querySelector returns null, we use the parent element\n * - If an id is not set, we use the parent element\n * @param value {string | null} - A selector string to query the DOM for the target element\n */\nexport function locateTargetHeuristic(element: HTMLElement, id?: string | null): HTMLElement | null {\n let targetEl: HTMLElement | null = null;\n\n if (id) {\n const rootNode = element.getRootNode() as Document | ShadowRoot;\n\n
|
|
5
|
-
"mappings": "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
|
|
6
|
-
"names": ["highlightTextHTML", "label", "highlightText", "startIndex", "endIndex", "wrapperSpan", "highlightSpan", "createUserInteractionListener", "element", "capture", "pointerenter", "focusin", "destroyFn", "destroy", "resolve", "listenerOpts", "handlePointerenter", "evt", "handleFocusin", "percentToPixels", "amount", "containerSize", "pixelsToPercent", "scaleValue", "value", "fromMin", "fromMax", "toMin", "toMax", "range", "adjustedValue", "safeMin", "args", "arg", "safeMax", "elementsOverlapping", "elA", "elB", "a", "b", "isPointerOverElement", "x", "y", "top", "left", "bottom", "right", "locateTargetHeuristic", "id", "targetEl", "rootNode", "replaceElement", "oldElement", "newElement", "preserveChildren"]
|
|
4
|
+
"sourcesContent": ["/**\n * Highlights text in the given label by converting it to HTML and using a `<span>` tag to show the highlighted text within the original label.\n * @param label The full text.\n * @param highlightText The text to highlight.\n */\nexport function highlightTextHTML(label: string, highlightText: string): HTMLElement | undefined {\n const text = label.toLowerCase();\n const startIndex = text.indexOf(highlightText.toLowerCase());\n\n if (startIndex !== -1) {\n const endIndex = startIndex + highlightText.length;\n const wrapperSpan = document.createElement('span');\n const highlightSpan = document.createElement('span');\n\n highlightSpan.style.fontWeight = 'bold';\n highlightSpan.textContent = label.substring(startIndex, endIndex);\n \n wrapperSpan.appendChild(document.createTextNode(label.substring(0, startIndex)));\n wrapperSpan.appendChild(highlightSpan);\n wrapperSpan.appendChild(document.createTextNode(label.substring(endIndex)));\n \n return wrapperSpan;\n }\n\n return undefined;\n}\n\n/**\n * Awaits user interaction on an element in the form of `pointerenter` or `focusin` to let a listener know\n * when the user has attempted to interact with the provided element.\n * \n * The listeners are only called once, and the other is removed after one of the listeners is called.\n * @param element The element to listen to.\n * @param capture Whether to use capturing listeners or not.\n * @returns A `Promise` that will be resolved when either of the listeners has executed.\n */\nexport function createUserInteractionListener(element: HTMLElement, { capture = true, pointerenter = true, focusin = true } = {}): { userInteraction: Promise<Event>; destroy: () => void } {\n let destroyFn: () => void;\n const destroy: () => void = () => {\n if (typeof destroyFn === 'function') {\n destroyFn();\n }\n };\n\n const userInteraction = new Promise<Event>(resolve => {\n const listenerOpts: EventListenerOptions & { once: boolean } = { once: true, capture };\n \n const handlePointerenter = (evt: Event): void => {\n if (focusin) {\n element.removeEventListener('focusin', handleFocusin, listenerOpts);\n }\n resolve(evt);\n };\n \n const handleFocusin = (evt: Event): void => {\n if (pointerenter) {\n element.removeEventListener('pointerenter', handlePointerenter, listenerOpts);\n }\n resolve(evt);\n };\n\n destroyFn = (): void => {\n if (pointerenter) {\n element.removeEventListener('pointerenter', handlePointerenter, listenerOpts);\n }\n if (focusin) {\n element.removeEventListener('focusin', handleFocusin, listenerOpts);\n }\n };\n\n if (pointerenter) {\n element.addEventListener('pointerenter', handlePointerenter, listenerOpts);\n }\n if (focusin) {\n element.addEventListener('focusin', handleFocusin, listenerOpts);\n }\n });\n\n return { userInteraction, destroy };\n}\n\n/**\n * Converts a percent value to pixels.\n * @param amount A percent value.\n * @param containerSize The size of the parent element along the relevant axis.\n * @returns A pixel value.\n */\nexport function percentToPixels(amount: number, containerSize: number): number {\n if (containerSize === 0) {\n return 0;\n }\n return amount / 100 * containerSize;\n}\n\n/**\n * Converts a pixel value to a percentage.\n * @param amount A pixel value.\n * @param containerSize The size of the parent element along the relevant axis.\n * @returns A percent value.\n */\nexport function pixelsToPercent(amount: number, containerSize: number): number {\n if (containerSize === 0) {\n return 0;\n }\n return amount * 100 / containerSize;\n}\n\n/**\n * Scales a value from one range to another.\n * @param value The original number value.\n * @param fromMin The lower bound of the input range.\n * @param fromMax The upper bound of the input range.\n * @param toMin The lower bound of the output range (defaults to 0).\n * @param toMax The lower bound of the output range (defaults to 100).\n * @returns A value mapped to the output range.\n */\nexport function scaleValue(value: number, fromMin: number, fromMax: number, toMin = 0, toMax = 100): number {\n const range = fromMax - fromMin;\n const adjustedValue = value - fromMin;\n if (!range || !adjustedValue) {\n return toMin;\n }\n return adjustedValue * toMax / range + toMin;\n}\n\n/**\n * Returns the min of a set of numbers where some values may be undefined.\n * @param args `number` or `undefined` values to compare.\n * @returns The min value or `Number.POSITIVE_INFINITY` if all values are `undefined`.\n */\nexport function safeMin(...args: (number | undefined)[]): number {\n return Math.min(...args.map(arg => arg ?? Number.POSITIVE_INFINITY));\n}\n\n/**\n * Returns the max of a set of numbers where some values may be undefined.\n * @param args `number` or `undefined` values to compare.\n * @returns The max value or `Number.NEGATIVE_INFINITY` if all values are `undefined`.\n */\nexport function safeMax(...args: (number | undefined)[]): number {\n return Math.max(...args.map(arg => arg ?? Number.NEGATIVE_INFINITY));\n}\n\n/**\n * Determines if two elements are overlapping.\n * @param elA {Element | null}\n * @param elB {Element | null}\n * @returns \n */\nexport function elementsOverlapping(elA: Element | null, elB: Element | null): boolean {\n if (!(elA && elB)) {\n return false;\n }\n const a = elA.getBoundingClientRect();\n const b = elB.getBoundingClientRect();\n return !(a.top > b.bottom || a.right < b.left || a.bottom < b.top || a.left > b.right);\n}\n\n/**\n * Determines if a pointer event is over an element.\n * @param event {PointerEvent} The pointer event to test.\n * @param element {HTMElement} The element to test against.\n * @returns \n */\nexport function isPointerOverElement({ x, y }: { x: number; y: number }, element: HTMLElement | null): boolean {\n if (!element) {\n return false;\n }\n const { top, left, bottom, right } = element.getBoundingClientRect();\n return x >= left && x <= right && y >= top && y <= bottom;\n}\n\n/**\n * Attempts to locate a target element based on a heuristic.\n * \n * We use the following heuristic for locating the target element:\n * - If an id is set, we use that value to query the DOM for the target element\n * - If id is set to `:host`, we use the host element from within a shadow tree (only if the root node is a ShadowRoot instance)\n * - If an id is set but the querySelector returns null, we use the parent element\n * - If an id is not set, we use the parent element\n * @param value {string | null} - A selector string to query the DOM for the target element\n */\nexport function locateTargetHeuristic(element: HTMLElement, id?: string | null): HTMLElement | null {\n let targetEl: HTMLElement | null = null;\n\n if (id) {\n targetEl = locateElementById(element, id);\n }\n\n if (!targetEl) {\n return element.parentElement;\n }\n\n return targetEl;\n}\n\n/**\n * Attempts to locate an element by id within its root node.\n * @param element The element to search from.\n * @param id The id of the element to locate.\n * @returns The element if found, otherwise `null`.\n */\nexport function locateElementById(element: HTMLElement, id?: string | null): HTMLElement | null {\n const rootNode = element.getRootNode() as Document | ShadowRoot;\n\n // Special case handling for a `:host` selector to easily target a host element\n // from within a shadow tree, given that this is a very common scenario\n if (id === ':host' && rootNode instanceof ShadowRoot) {\n return rootNode.host as HTMLElement;\n }\n\n return rootNode.querySelector(`#${id}`);\n}\n\n/**\n * Replaces an existing element with a new element, while optionally moving the children of the old element into the new element.\n * @param oldElement The element to replace.\n * @param newElement The element to replace with.\n * @param preserveChildren Whether or not to preserve the children of the old element in the new element.\n * @returns The new element.\n */\nexport function replaceElement<T extends HTMLElement>(oldElement: HTMLElement, newElement: T, preserveChildren = true): T {\n if (preserveChildren) {\n newElement.append(...oldElement.childNodes);\n }\n oldElement.insertAdjacentElement('beforebegin', newElement);\n oldElement.remove();\n return newElement;\n}\n\n/**\n * Coerces a string separated by `separator` into an array of strings. \n * @param value The string to coerce.\n * @params [separator=','] The separator to use when splitting the string.\n * @returns An array of strings.\n */\nexport function coerceStringToArray<T extends string>(value: string, separator = ','): T[] {\n return value.split(separator).map(p => p.trim()) as T[];\n}\n"],
|
|
5
|
+
"mappings": "AAKO,SAASA,EAAkBC,EAAeC,EAAgD,CAE/F,IAAMC,EADOF,EAAM,YAAY,EACP,QAAQC,EAAc,YAAY,CAAC,EAE3D,GAAIC,IAAe,GAAI,CACrB,IAAMC,EAAWD,EAAaD,EAAc,OACtCG,EAAc,SAAS,cAAc,MAAM,EAC3CC,EAAgB,SAAS,cAAc,MAAM,EAEnD,OAAAA,EAAc,MAAM,WAAa,OACjCA,EAAc,YAAcL,EAAM,UAAUE,EAAYC,CAAQ,EAEhEC,EAAY,YAAY,SAAS,eAAeJ,EAAM,UAAU,EAAGE,CAAU,CAAC,CAAC,EAC/EE,EAAY,YAAYC,CAAa,EACrCD,EAAY,YAAY,SAAS,eAAeJ,EAAM,UAAUG,CAAQ,CAAC,CAAC,EAEnEC,EAIX,CAWO,SAASE,EAA8BC,EAAsB,CAAE,QAAAC,EAAU,GAAM,aAAAC,EAAe,GAAM,QAAAC,EAAU,EAAK,EAAI,CAAC,EAA6D,CAC1L,IAAIC,EACEC,EAAsB,IAAM,CAC5B,OAAOD,GAAc,YACvBA,EAAU,CAEd,EAoCA,MAAO,CAAE,gBAlCe,IAAI,QAAeE,GAAW,CACpD,IAAMC,EAAyD,CAAE,KAAM,GAAM,QAAAN,CAAQ,EAE/EO,EAAsBC,GAAqB,CAC3CN,GACFH,EAAQ,oBAAoB,UAAWU,EAAeH,CAAY,EAEpED,EAAQG,CAAG,CACb,EAEMC,EAAiBD,GAAqB,CACtCP,GACFF,EAAQ,oBAAoB,eAAgBQ,EAAoBD,CAAY,EAE9ED,EAAQG,CAAG,CACb,EAEAL,EAAY,IAAY,CAClBF,GACFF,EAAQ,oBAAoB,eAAgBQ,EAAoBD,CAAY,EAE1EJ,GACFH,EAAQ,oBAAoB,UAAWU,EAAeH,CAAY,CAEtE,EAEIL,GACFF,EAAQ,iBAAiB,eAAgBQ,EAAoBD,CAAY,EAEvEJ,GACFH,EAAQ,iBAAiB,UAAWU,EAAeH,CAAY,CAEnE,CAAC,EAEyB,QAAAF,CAAQ,CACpC,CAQO,SAASM,EAAgBC,EAAgBC,EAA+B,CAC7E,OAAIA,IAAkB,EACb,EAEFD,EAAS,IAAMC,CACxB,CAQO,SAASC,EAAgBF,EAAgBC,EAA+B,CAC7E,OAAIA,IAAkB,EACb,EAEFD,EAAS,IAAMC,CACxB,CAWO,SAASE,EAAWC,EAAeC,EAAiBC,EAAiBC,EAAQ,EAAGC,EAAQ,IAAa,CAC1G,IAAMC,EAAQH,EAAUD,EAClBK,EAAgBN,EAAQC,EAC9B,MAAI,CAACI,GAAS,CAACC,EACNH,EAEFG,EAAgBF,EAAQC,EAAQF,CACzC,CAOO,SAASI,KAAWC,EAAsC,CAC/D,OAAO,KAAK,IAAI,GAAGA,EAAK,IAAIC,GAAOA,GAAA,KAAAA,EAAO,OAAO,iBAAiB,CAAC,CACrE,CAOO,SAASC,KAAWF,EAAsC,CAC/D,OAAO,KAAK,IAAI,GAAGA,EAAK,IAAIC,GAAOA,GAAA,KAAAA,EAAO,OAAO,iBAAiB,CAAC,CACrE,CAQO,SAASE,EAAoBC,EAAqBC,EAA8B,CACrF,GAAI,EAAED,GAAOC,GACX,MAAO,GAET,IAAMC,EAAIF,EAAI,sBAAsB,EAC9BG,EAAIF,EAAI,sBAAsB,EACpC,MAAO,EAAEC,EAAE,IAAMC,EAAE,QAAUD,EAAE,MAAQC,EAAE,MAAQD,EAAE,OAASC,EAAE,KAAOD,EAAE,KAAOC,EAAE,MAClF,CAQO,SAASC,EAAqB,CAAE,EAAAC,EAAG,EAAAC,CAAE,EAA6BlC,EAAsC,CAC7G,GAAI,CAACA,EACH,MAAO,GAET,GAAM,CAAE,IAAAmC,EAAK,KAAAC,EAAM,OAAAC,EAAQ,MAAAC,CAAM,EAAItC,EAAQ,sBAAsB,EACnE,OAAOiC,GAAKG,GAAQH,GAAKK,GAASJ,GAAKC,GAAOD,GAAKG,CACrD,CAYO,SAASE,EAAsBvC,EAAsBwC,EAAwC,CAClG,IAAIC,EAA+B,KAMnC,OAJID,IACFC,EAAWC,EAAkB1C,EAASwC,CAAE,GAGrCC,GACIzC,EAAQ,aAInB,CAQO,SAAS0C,EAAkB1C,EAAsBwC,EAAwC,CAC9F,IAAMG,EAAW3C,EAAQ,YAAY,EAIrC,OAAIwC,IAAO,SAAWG,aAAoB,WACjCA,EAAS,KAGXA,EAAS,cAAc,IAAIH,GAAI,CACxC,CASO,SAASI,EAAsCC,EAAyBC,EAAeC,EAAmB,GAAS,CACxH,OAAIA,GACFD,EAAW,OAAO,GAAGD,EAAW,UAAU,EAE5CA,EAAW,sBAAsB,cAAeC,CAAU,EAC1DD,EAAW,OAAO,EACXC,CACT,CAQO,SAASE,EAAsChC,EAAeiC,EAAY,IAAU,CACzF,OAAOjC,EAAM,MAAMiC,CAAS,EAAE,IAAIC,GAAKA,EAAE,KAAK,CAAC,CACjD",
|
|
6
|
+
"names": ["highlightTextHTML", "label", "highlightText", "startIndex", "endIndex", "wrapperSpan", "highlightSpan", "createUserInteractionListener", "element", "capture", "pointerenter", "focusin", "destroyFn", "destroy", "resolve", "listenerOpts", "handlePointerenter", "evt", "handleFocusin", "percentToPixels", "amount", "containerSize", "pixelsToPercent", "scaleValue", "value", "fromMin", "fromMax", "toMin", "toMax", "range", "adjustedValue", "safeMin", "args", "arg", "safeMax", "elementsOverlapping", "elA", "elB", "a", "b", "isPointerOverElement", "x", "y", "top", "left", "bottom", "right", "locateTargetHeuristic", "id", "targetEl", "locateElementById", "rootNode", "replaceElement", "oldElement", "newElement", "preserveChildren", "coerceStringToArray", "separator", "p"]
|
|
7
7
|
}
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{i as a}from"./chunk.J2M2MXP2.js";function u(t){return t.ownerDocument||document}function p(t){return t&&t.nodeType===1}function L(t,e){if(!p(t))throw new Error("DOMUtils - elementParents: invalid element argument");let o=[];for(;t.parentElement&&(o.push(t.parentElement),!(t.parentElement===e||t.parentElement===u(t).body));)t.parentElement&&t.parentElement.parentNode&&t.parentElement.parentNode.nodeType===11?t=t.parentElement.parentNode.host:t=t.parentElement;return o}function g(t,e){if(!p(t))throw new Error("DOMUtils - offset: invalid element argument");let o=t.getBoundingClientRect(),n=u(t).defaultView,r=e||n.document.documentElement,i={width:o.width,height:o.width,top:0,left:0,bottom:0,right:0};if(!e||r===n.document.documentElement||r===n.document.body)i.top=n.scrollY+o.top,i.bottom=r.clientHeight-n.scrollY-o.bottom,i.left=n.scrollX+o.left,i.right=r.clientWidth-n.scrollX-o.right;else{if(!p(e))throw new Error("DOMUtils - offset: invalid parentElement argument");let s=e.getBoundingClientRect();i.top=o.top-s.top,i.bottom=s.bottom-o.bottom,i.left=o.left-s.left,i.right=s.right-o.right}return{width:Math.round(o.width),height:Math.round(o.height),top:Math.round(i.top),bottom:Math.round(i.bottom),left:Math.round(i.left),right:Math.round(i.right)}}function M(t,e,o){let n=i=>{let s=()=>{i.stopPropagation(),i.cancelable&&i.preventDefault();let l=i.type==="touchstart"?i.target:u(t).activeElement;t.contains(l)||e(l)};o?window.requestAnimationFrame(()=>s()):s()},r=u(t);return r.addEventListener("blur",n,!0),r.addEventListener("touchstart",n,!0),()=>{r.removeEventListener("blur",n,!0),r.removeEventListener("touchstart",n,!0)}}function N(t){for(;t.lastChild;)t.removeChild(t.lastChild)}function P(t,e){return e.parentNode.replaceChild(t,e)}function b(t,e){a(t)?t.forEach(o=>e.classList.add(o)):e.classList.add(t)}function v(t,e){a(t)?t.forEach(o=>e.classList.remove(o)):e.classList.remove(t)}function x(){let t=document.createElement("fakeelement"),e={animation:"animationend",OAnimation:"oAnimationEnd",MozAnimation:"animationend",WebkitAnimation:"webkitAnimationEnd"};for(let o in e)if(t.style[o]!==void 0)return e[o]}async function W(t,e,o=!0){return t.classList.add(e),new Promise(n=>{let r=x(),i=()=>{o&&t.classList.remove(e),t.removeEventListener(r,i),n()};t.addEventListener(r,i)})}function E(t){t.removeNode?t.removeNode(!0):t.remove?t.remove():t.parentNode.removeChild(t)}function O(t){if(typeof t=="string"){if(t[t.length-1]==="%")return t;if(t.slice(-2)==="px")return t;if(Number(t)>=0)return`${t}px`}else if(typeof t=="number"&&t>=0)return`${t}px`}function R(t){let e=document.createElement("div");e.style.position="absolute",e.style.top="-99999px",e.style.left="-99999px",e.style.visibility="hidden",e.appendChild(t.cloneNode(!0)),document.body.appendChild(e);let o={width:e.scrollWidth,height:e.scrollHeight};return E(e),e=void 0,o}function H(t){return t.children.length?Promise.resolve():new Promise(e=>{let o=new MutationObserver(n=>{t.children.length&&(o.disconnect(),e())});o.observe(t,{childList:!0})})}function T(t,e){let o=f(t,e);return o.length?Promise.resolve(o[0]):new Promise(n=>{let r=new MutationObserver(i=>{if(i.reduce((l,c)=>l+c.addedNodes.length,0)>0){let l=f(t,e);l.length&&(r.disconnect(),n(l[0]))}});r.observe(t,{childList:!0,subtree:!0})})}function D(t,e){let o=t&&t.parentNode;for(;o;){if(e(o))return o;o=o.parentNode}return null}function
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{i as a}from"./chunk.J2M2MXP2.js";function u(t){return t.ownerDocument||document}function p(t){return t&&t.nodeType===1}function L(t,e){if(!p(t))throw new Error("DOMUtils - elementParents: invalid element argument");let o=[];for(;t.parentElement&&(o.push(t.parentElement),!(t.parentElement===e||t.parentElement===u(t).body));)t.parentElement&&t.parentElement.parentNode&&t.parentElement.parentNode.nodeType===11?t=t.parentElement.parentNode.host:t=t.parentElement;return o}function g(t,e){if(!p(t))throw new Error("DOMUtils - offset: invalid element argument");let o=t.getBoundingClientRect(),n=u(t).defaultView,r=e||n.document.documentElement,i={width:o.width,height:o.width,top:0,left:0,bottom:0,right:0};if(!e||r===n.document.documentElement||r===n.document.body)i.top=n.scrollY+o.top,i.bottom=r.clientHeight-n.scrollY-o.bottom,i.left=n.scrollX+o.left,i.right=r.clientWidth-n.scrollX-o.right;else{if(!p(e))throw new Error("DOMUtils - offset: invalid parentElement argument");let s=e.getBoundingClientRect();i.top=o.top-s.top,i.bottom=s.bottom-o.bottom,i.left=o.left-s.left,i.right=s.right-o.right}return{width:Math.round(o.width),height:Math.round(o.height),top:Math.round(i.top),bottom:Math.round(i.bottom),left:Math.round(i.left),right:Math.round(i.right)}}function M(t,e,o){let n=i=>{let s=()=>{i.stopPropagation(),i.cancelable&&i.preventDefault();let l=i.type==="touchstart"?i.target:u(t).activeElement;t.contains(l)||e(l)};o?window.requestAnimationFrame(()=>s()):s()},r=u(t);return r.addEventListener("blur",n,!0),r.addEventListener("touchstart",n,!0),()=>{r.removeEventListener("blur",n,!0),r.removeEventListener("touchstart",n,!0)}}function N(t){for(;t.lastChild;)t.removeChild(t.lastChild)}function P(t,e){return e.parentNode.replaceChild(t,e)}function b(t,e){a(t)?t.forEach(o=>e.classList.add(o)):e.classList.add(t)}function v(t,e){a(t)?t.forEach(o=>e.classList.remove(o)):e.classList.remove(t)}function x(){let t=document.createElement("fakeelement"),e={animation:"animationend",OAnimation:"oAnimationEnd",MozAnimation:"animationend",WebkitAnimation:"webkitAnimationEnd"};for(let o in e)if(t.style[o]!==void 0)return e[o]}async function W(t,e,o=!0){return t.classList.add(e),new Promise(n=>{let r=x(),i=()=>{o&&t.classList.remove(e),t.removeEventListener(r,i),n()};t.addEventListener(r,i)})}function E(t){t.removeNode?t.removeNode(!0):t.remove?t.remove():t.parentNode.removeChild(t)}function O(t){if(typeof t=="string"){if(t[t.length-1]==="%")return t;if(t.slice(-2)==="px")return t;if(Number(t)>=0)return`${t}px`}else if(typeof t=="number"&&t>=0)return`${t}px`}function R(t){let e=document.createElement("div");e.style.position="absolute",e.style.top="-99999px",e.style.left="-99999px",e.style.visibility="hidden",e.appendChild(t.cloneNode(!0)),document.body.appendChild(e);let o={width:e.scrollWidth,height:e.scrollHeight};return E(e),e=void 0,o}function H(t){return t.children.length?Promise.resolve():new Promise(e=>{let o=new MutationObserver(n=>{t.children.length&&(o.disconnect(),e())});o.observe(t,{childList:!0})})}function T(t,e){let o=f(t,e);return o.length?Promise.resolve(o[0]):new Promise(n=>{let r=new MutationObserver(i=>{if(i.reduce((l,c)=>l+c.addedNodes.length,0)>0){let l=f(t,e);l.length&&(r.disconnect(),n(l[0]))}});r.observe(t,{childList:!0,subtree:!0})})}function D(t){return new Promise(e=>{let o=t.querySelector("input");o&&e(o);let n=new MutationObserver(r=>{if(r.reduce((s,l)=>s+l.addedNodes.length,0)>0){let s=t.querySelector("input");s&&(n.disconnect(),e(s))}});n.observe(t,{childList:!0,subtree:!0})})}function U(t,e){let o=t&&t.parentNode;for(;o;){if(e(o))return o;o=o.parentNode}return null}function V(t,e){let n=document.createElement("canvas").getContext("2d"),r=e?e.fontSize:16,i=e?e.fontFamily:"Roboto";return n.font=`${r}px ${i}`,n.measureText(t).width}function $(t,e){let o=[];for(let n=1;n<=t;n++)o.push(`${n}px ${n}px ${e}`);return o.join(", ")}function y(t,e){if(t.nodeType!==Node.ELEMENT_NODE)return!1;typeof e=="string"&&(e=e.replace(/\s+/,"").split(","));let o=Element.prototype.matches;return e.some(n=>o.call(t,n))}function f(t,e,o=!1){let n=[];if(!t)return n;if(typeof e=="string"&&(e=e.replace(/\s+/,"").split(",")),o&&y(t,e)&&n.indexOf(t)===-1&&n.push(t),t.tagName==="SLOT")t.assignedNodes().forEach(i=>n=n.concat(f(i,e,!0)));else{let r=t.shadowRoot?t.shadowRoot.firstElementChild:t.firstElementChild;for(;r;)n=n.concat(f(r,e,!0)),r=r.nextElementSibling}return n}function B(t=document){let e=t.activeElement;return!e||e===t.body?e:m(e)}function m(t){return t.shadowRoot&&t.shadowRoot.activeElement&&(t=m(t.shadowRoot.activeElement)),t}function F(t,e,o){e?b(o,t):v(o,t)}function I(t,e,o,n=""){e?t.setAttribute(o,n):t.removeAttribute(o)}function X(t,e,o,n){let r=t.getAttribute(e);(n===void 0||n===!0)&&(!r||!r.includes(o))?A(t,e,o):n||C(t,e,o)}function A(t,e,o){let n=t.getAttribute(e);!n||!n.length?t.setAttribute(e,o):t.setAttribute(e,`${n} ${o}`)}function C(t,e,o){if(!t.hasAttribute(e))return;let n=t.getAttribute(e);if(n){let r=n==null?void 0:n.replace(o,"");r=r.replace(/\s+/g," ").trim(),r.length?t.setAttribute(e,r):t.removeAttribute(e)}}function k(t,e,o="auto",n="nearest"){if(!t)return;if(t.scrollHeight>t.clientHeight||t.scrollWidth>t.clientWidth){let i=g(e,t),s=i.top<=e.clientHeight,l=i.bottom<=e.clientHeight;if(s||l){let d=h(n,s,e.offsetTop,e.clientHeight,t.offsetTop,t.offsetHeight);t.scrollTo({top:d,behavior:o});return}let c=i.left<=e.clientWidth,w=i.right<=e.clientWidth;if(c||w){let d=h(n,c,e.offsetLeft,e.clientWidth,t.offsetLeft,t.offsetWidth);t.scrollTo({left:d,behavior:o})}}}function h(t,e,o,n,r,i){return t==="nearest"?e?o-r-n:o-i+n*2:o-r-i/2+n/2}function Y(t){let e=document.createElement("template");return t=t.trim(),e.innerHTML=t,e.content.firstElementChild}function q(t,e,o){let n=new MutationObserver(r=>{for(let i of r)i.attributeName&&e(i.attributeName,t.getAttribute(i.attributeName))});return n.observe(t,{attributes:!0,attributeFilter:o}),n}export{p as a,L as b,M as c,N as d,P as e,b as f,v as g,W as h,E as i,O as j,R as k,H as l,T as m,D as n,U as o,V as p,$ as q,y as r,f as s,B as t,F as u,I as v,X as w,A as x,k as y,Y as z,q as A};
|
|
7
|
+
//# sourceMappingURL=chunk.HZUQXCOQ.js.map
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../node_modules/@tylertech/forge-core/esm/utils/dom-utils.js"],
|
|
4
4
|
"sourcesContent": ["import { isArray } from './utils';\n/**\n * Holds regular expressions\n */\n/* tslint:disable-next-line:require-private-underscore */\nconst REGULAR_EXPRESSIONS = {\n placement: {\n auto: /\\s?auto?\\s?/i,\n primary: /^(top|bottom|left|right)$/,\n secondary: /^(top|bottom|left|right|center)$/,\n topBottom: /^(top|bottom)$/\n },\n overflow: /(auto|scroll)/\n};\n/**\n * Holds the browser scrollbar width.\n */\n/* tslint:disable-next-line:require-private-underscore */\nlet SCROLLBAR_WIDTH;\n/**\n * Gets the ownerDocument for an element, if null, than returns the document element.\n * @param {Element} element The element to get the ownerDocument for\n * @returns {Document}\n */\nfunction _ownerDocument(element) {\n return element.ownerDocument || document;\n}\n/**\n * Retrieves an element based on the provided root and selector.\n * @param {Element} root The root element to search within.\n * @param {string} selector The selector for the child element.\n * @param {boolean} [allowNull=false] Should the method allow the element to be not found? Default is false.\n * @returns {HTMLElement}\n */\nexport function getElement(root, selector, allowNull = false) {\n const element = root.querySelector(selector);\n if (!element && !allowNull) {\n throw new Error(`Element not found with selector: ${selector}`);\n }\n return element;\n}\n/**\n * Checks if an element is a valid element.\n * @param {Element} element The node to test\n * @returns {boolean}\n */\nexport function isElement(element) {\n return element && element.nodeType === 1;\n}\n/**\n * Checks if an element is statically positioned.\n * @param {Element} element The node to test.\n * @returns {boolean}\n */\nexport function isPositionStatic(element) {\n return (window.getComputedStyle(element).position || 'static') === 'static';\n}\n/**\n * Parses a style string to a numeric value (removes 'px').\n * @param {string} value The style string to parse.\n * @returns {number}\n */\nexport function parseStyle(value) {\n if (!value || !value.length) {\n return 0;\n }\n const parsedValue = parseFloat(value);\n return isFinite(parsedValue) ? parsedValue : 0;\n}\n/**\n * Gets the index of an element in the parent element children.\n * @param {Element} element The element to get the index on.\n * @returns {number}\n */\nexport function elementIndex(element) {\n if (!isElement(element)) {\n throw new Error('DOMUtils - elementIndex: invalid element argument');\n }\n if (!element.parentElement) {\n return -1;\n }\n return Array.from(element.parentElement.children).indexOf(element);\n}\n/**\n * Gets an array of parent elements up to the body element.\n * @param {Element} element The element to get the parents of.\n * @param {Element=} untilElement Optional element where traversal should stop.\n * @returns {Array}\n */\nexport function elementParents(element, untilElement) {\n if (!isElement(element)) {\n throw new Error('DOMUtils - elementParents: invalid element argument');\n }\n const parentElements = [];\n while (element.parentElement) {\n parentElements.push(element.parentElement);\n if (element.parentElement === untilElement || element.parentElement === _ownerDocument(element).body) {\n break;\n }\n // pierce shadow DOM\n if (element.parentElement && element.parentElement.parentNode && element.parentElement.parentNode.nodeType === 11) {\n element = element.parentElement.parentNode.host;\n }\n else {\n element = element.parentElement;\n }\n }\n return parentElements;\n}\n/**\n * Gets the non-statically positioned parent of an element.\n * @param element The element to get the offset parent of.\n * @returns {Element}\n */\nexport function offsetParent(element) {\n if (!isElement(element)) {\n throw new Error('DOMUtils - offsetParent: invalid element argument');\n }\n let offsetParentElem = element.offsetParent;\n while (offsetParentElem && isPositionStatic(offsetParentElem)) {\n offsetParentElem = offsetParentElem.offsetParent;\n }\n return offsetParentElem || _ownerDocument(element).documentElement;\n}\n/**\n * Gets the browser scrollbar width.\n * @returns {number}\n */\nexport function scrollbarWidth() {\n if (SCROLLBAR_WIDTH === undefined) {\n const elem = document.createElement('div');\n elem.style.position = 'absolute';\n elem.style.top = '-100px';\n elem.style.left = '-100px';\n elem.style.width = '50px';\n elem.style.height = '50px';\n elem.style.overflow = 'scroll';\n document.body.appendChild(elem);\n const width = elem.offsetWidth - elem.clientWidth;\n removeElement(elem);\n SCROLLBAR_WIDTH = isFinite(width) ? width : 0;\n }\n return SCROLLBAR_WIDTH;\n}\n/**\n * Checks if an element is scrollable.\n * @param {Element} element The element to test for scrollability\n * @returns {boolean}\n */\nexport function isScrollable(element) {\n const elemStyle = window.getComputedStyle(element);\n return REGULAR_EXPRESSIONS.overflow.test('' + elemStyle.overflow + elemStyle.overflowY + elemStyle.overflowX);\n}\n/**\n * Gets the scroll parent of an element.\n * @param {Element} element The element to get the scroll parent of.\n * @param {boolean} [includeSelf=false] Should the element be checked for scrollability.\n * @returns {Element}\n */\nexport function scrollParent(element, includeSelf = false) {\n if (!isElement(element)) {\n throw new Error('DOMUtils - scrollParent: invalid element argument');\n }\n const docElem = _ownerDocument(element).documentElement;\n const elemStyle = window.getComputedStyle(element);\n if (includeSelf && REGULAR_EXPRESSIONS.overflow.test('' + elemStyle.overflow + elemStyle.overflowY + elemStyle.overflowX)) {\n return element;\n }\n let excludeStatic = elemStyle.position === 'absolute';\n let scrollParentElem = element.parentElement || docElem;\n if (scrollParentElem === docElem || elemStyle.position === 'fixed') {\n return scrollParentElem;\n }\n while (scrollParentElem && scrollParentElem !== docElem) {\n const scrollParentStyle = window.getComputedStyle(scrollParentElem);\n if (excludeStatic && scrollParentStyle.position !== 'static') {\n excludeStatic = false;\n }\n if (!excludeStatic && REGULAR_EXPRESSIONS.overflow.test('' + scrollParentStyle.overflow + scrollParentStyle.overflowY + scrollParentStyle.overflowX)) {\n break;\n }\n scrollParentElem = scrollParentElem.scrollParent;\n }\n return scrollParentElem || docElem;\n}\n/**\n * Checks if the elements scroll parent scrollbars are visible.\n * @param {Element} element The element to check the scroll parent of.\n * @returns {IScrollbarVisibility}\n */\nexport function isScrollbarVisible(element) {\n if (!isElement(element)) {\n throw new Error('DOMUtils - isDocumentScrolled: invalid element argument');\n }\n const scrollParentElem = scrollParent(element);\n return {\n x: scrollParentElem.scrollWidth > scrollParentElem.clientWidth,\n y: scrollParentElem.scrollHeight > scrollParentElem.clientHeight\n };\n}\n/**\n * Gets the offset from the element to the parent element edges.\n * If no parentElement is supplied, the documentElement will be used.\n * @param {Element} element The element to compute the offset for.\n * @param {Element=} parentElement Optional parent element to measure from.\n * @returns {DOMRect}\n */\nexport function offset(element, parentElement) {\n if (!isElement(element)) {\n throw new Error('DOMUtils - offset: invalid element argument');\n }\n const elemBCR = element.getBoundingClientRect();\n const win = _ownerDocument(element).defaultView;\n const docElem = parentElement || win.document.documentElement;\n const offsetValues = { width: elemBCR.width, height: elemBCR.width, top: 0, left: 0, bottom: 0, right: 0 };\n if (!parentElement || docElem === win.document.documentElement || docElem === win.document.body) {\n offsetValues.top = win.scrollY + elemBCR.top;\n offsetValues.bottom = docElem.clientHeight - win.scrollY - elemBCR.bottom;\n offsetValues.left = win.scrollX + elemBCR.left;\n offsetValues.right = docElem.clientWidth - win.scrollX - elemBCR.right;\n }\n else {\n if (!isElement(parentElement)) {\n throw new Error('DOMUtils - offset: invalid parentElement argument');\n }\n const parentBCR = parentElement.getBoundingClientRect();\n offsetValues.top = elemBCR.top - parentBCR.top;\n offsetValues.bottom = parentBCR.bottom - elemBCR.bottom;\n offsetValues.left = elemBCR.left - parentBCR.left;\n offsetValues.right = parentBCR.right - elemBCR.right;\n }\n return {\n width: Math.round(elemBCR.width),\n height: Math.round(elemBCR.height),\n top: Math.round(offsetValues.top),\n bottom: Math.round(offsetValues.bottom),\n left: Math.round(offsetValues.left),\n right: Math.round(offsetValues.right)\n };\n}\n/**\n * Gets the offset from the element to the parent element viewable edges.\n * If no parentElement is supplied, the documentElement will be used.\n * @param {Element} element The element to measure\n * @param {Element=} parentElement The parent element to measure to.\n * @returns {DOMRect}\n */\nexport function viewportOffset(element, parentElement) {\n if (!isElement(element)) {\n throw new Error('DOMUtils - offset: invalid element argument');\n }\n const win = _ownerDocument(element).defaultView;\n parentElement = parentElement || win.document.documentElement;\n const parentElementOffset = offset(element, parentElement);\n const offsetValues = {\n top: parentElementOffset.top,\n bottom: 0,\n left: parentElementOffset.left,\n right: 0\n };\n if (parentElement === win.document.documentElement) {\n offsetValues.top -= win.scrollY;\n offsetValues.left -= win.scrollX;\n }\n else {\n const parentStyle = window.getComputedStyle(parentElement);\n offsetValues.top -= parseStyle('' + parentStyle.borderTopWidth);\n offsetValues.left -= parseStyle('' + parentStyle.borderLeftWidth);\n }\n offsetValues.bottom = parentElement.clientHeight - offsetValues.top - element.offsetHeight;\n offsetValues.right = parentElement.clientWidth - offsetValues.left - element.offsetWidth;\n return {\n width: parentElementOffset.width,\n height: parentElementOffset.height,\n top: Math.round(offsetValues.top),\n bottom: Math.round(offsetValues.bottom),\n left: Math.round(offsetValues.left),\n right: Math.round(offsetValues.right)\n };\n}\n/**\n * Checks if any part of an element is visible in the viewport.\n * @param {Element} element The element to check.\n * @returns {boolean}\n */\nexport function isElementInViewport(element) {\n if (!isElement(element)) {\n throw new Error('DOMUtils - isElementInViewport: invalid element argument');\n }\n const document = _ownerDocument(element);\n const scrollParentElem = scrollParent(element);\n const elemBCR = element.getBoundingClientRect();\n if (scrollParentElem !== document.documentElement && scrollParentElem !== document.body) {\n const scrollParentOffset = offset(element, scrollParentElem);\n if (scrollParentOffset.top + elemBCR.height < 0 ||\n scrollParentOffset.left + elemBCR.width < 0 ||\n scrollParentOffset.bottom + elemBCR.height - this.scrollbarWidth < 0 ||\n scrollParentOffset.right + elemBCR.width - this.scrollbarWidth < 0) {\n return false;\n }\n }\n if (elemBCR.top + elemBCR.height < 0 ||\n elemBCR.left + elemBCR.width < 0 ||\n elemBCR.bottom + elemBCR.height > document.documentElement.clientHeight ||\n elemBCR.right + elemBCR.width > document.documentElement.clientWidth) {\n return false;\n }\n return true;\n}\n/**\n * Adds an event listener to the document that will call the provided callback function\n * when an element and it's children no longer have focus. The blur and touchstart events are used\n * to evaluate the active element to determine if the callback should be called.\n *\n * @param {Element} element The element to add the event listener to.\n * @param {Function} callback The function to call when the element and children don't have focus.\n * @param {boolean} [delay=false] Should a RAF cycle occur before the callback is called.\n * @returns {Function} The function to call to remove the document events.\n */\nexport function notChildEventListener(element, callback, delay) {\n const evtHandler = (event) => {\n const handle = () => {\n event.stopPropagation();\n if (event.cancelable) {\n event.preventDefault();\n }\n const activeElement = (event.type === 'touchstart' ? event.target : _ownerDocument(element).activeElement);\n if (!element.contains(activeElement)) {\n callback(activeElement);\n }\n };\n if (delay) {\n window.requestAnimationFrame(() => handle());\n }\n else {\n handle();\n }\n };\n const docElem = _ownerDocument(element);\n docElem.addEventListener('blur', evtHandler, true);\n docElem.addEventListener('touchstart', evtHandler, true);\n return () => {\n docElem.removeEventListener('blur', evtHandler, true);\n docElem.removeEventListener('touchstart', evtHandler, true);\n };\n}\n/**\n * Removes all children from a DOM node.\n * @param node The DOM node to remove children from.\n */\nexport function removeAllChildren(node) {\n while (node.lastChild) {\n node.removeChild(node.lastChild);\n }\n}\n/**\n * Replaces one child node of the specified node with another.\n * @param newChild The new node to replace `oldChild`.\n * @param oldChild The existing node to be replaced.\n * @returns {Node} The replaced node. Same node as `oldChild`.\n */\nexport function replaceElement(newChild, oldChild) {\n return oldChild.parentNode.replaceChild(newChild, oldChild);\n}\n/**\n * Adds a class or array of classes to an element.\n *\n * @param {string | string[]} name The class(es) to add to the element\n * @param {Element} element The element to add class(es) to.\n */\nexport function addClass(name, element) {\n if (isArray(name)) {\n name.forEach(n => element.classList.add(n));\n }\n else {\n element.classList.add(name);\n }\n}\n/**\n * Removes a class or array of classes to an element.\n *\n * @param {string | string[]} name The class(es) to remove from the element\n * @param {Element} element The element to remove class(es) from.\n */\nexport function removeClass(name, element) {\n if (isArray(name)) {\n name.forEach(n => element.classList.remove(n));\n }\n else {\n element.classList.remove(name);\n }\n}\n/** Determines which type of animation event is supported. */\nexport function getAnimationEvent() {\n const el = document.createElement('fakeelement');\n // tslint:disable:object-literal-key-quotes\n const animations = {\n 'animation': 'animationend',\n 'OAnimation': 'oAnimationEnd',\n 'MozAnimation': 'animationend',\n 'WebkitAnimation': 'webkitAnimationEnd'\n };\n for (const t in animations) {\n if (el.style[t] !== undefined) {\n return animations[t];\n }\n }\n}\n/**\n * A helper method to trigger a keyframe animation via adding a class, and removing the class when the animation completes.\n * @param {HTMLElement} element The element to play the animation on.\n * @param {string} className The class to add that triggers the animation.\n */\nexport async function playKeyframeAnimation(element, className, remove = true) {\n element.classList.add(className);\n return new Promise(resolve => {\n const animationEvent = getAnimationEvent();\n const animationCompletedListener = () => {\n if (remove) {\n element.classList.remove(className);\n }\n element.removeEventListener(animationEvent, animationCompletedListener);\n resolve();\n };\n element.addEventListener(animationEvent, animationCompletedListener);\n });\n}\n/**\n * Removes an element from the DOM using the available remove method for that platform.\n * @param {HTMLElement} element The element to remove.\n */\nexport function removeElement(element) {\n if (element.removeNode) {\n element.removeNode(true);\n }\n else if (element.remove) {\n element.remove();\n }\n else {\n element.parentNode.removeChild(element);\n }\n}\n/**\n * Returns a width string that is safe for css based on the provided input.\n * @param {string | number} width\n * @returns {string | undefined} A width safe for using in CSS.\n */\nexport function safeCssWidth(width) {\n if (typeof width === 'string') {\n if (width[width.length - 1] === '%') {\n return width;\n }\n else if (width.slice(-2) === 'px') {\n return width;\n }\n else if (Number(width) >= 0) {\n return `${width}px`;\n }\n }\n else if (typeof width === 'number') {\n if (width >= 0) {\n return `${width}px`;\n }\n }\n return undefined;\n}\n/**\n * Calculates the size of an element that is not attached to the DOM.\n * @param {HTMLElement} element The element to calc the size of.\n * @returns {width, height} The size of the element.\n */\nexport function calcSizeUnattached(element) {\n let container = document.createElement('div');\n container.style.position = 'absolute';\n container.style.top = '-99999px';\n container.style.left = '-99999px';\n container.style.visibility = 'hidden';\n container.appendChild(element.cloneNode(true));\n document.body.appendChild(container);\n const size = {\n width: container.scrollWidth,\n height: container.scrollHeight\n };\n removeElement(container);\n container = undefined;\n return size;\n}\n/**\n * Resolves a promise when the provided element has children.\n * @param {Element} element An element that does or will contain children.\n */\nexport function ensureChildren(element) {\n if (element.children.length) {\n return Promise.resolve();\n }\n return new Promise(resolve => {\n const observer = new MutationObserver(changes => {\n if (element.children.length) {\n observer.disconnect();\n resolve();\n }\n });\n observer.observe(element, { childList: true });\n });\n}\n/**\n * Resolves a promise when the provided element has a child that matches a given selector.\n * @param {Element} element An element that does or will contain children.\n * @param {string} selector A CSS selector to use for finding an element.\n */\nexport function ensureChild(element, selector) {\n const initialElements = deepQuerySelectorAll(element, selector);\n if (initialElements.length) {\n return Promise.resolve(initialElements[0]);\n }\n return new Promise(resolve => {\n const observer = new MutationObserver(changes => {\n const hasAddedNodes = changes.reduce((prev, curr) => prev + curr.addedNodes.length, 0) > 0;\n if (hasAddedNodes) {\n const foundElements = deepQuerySelectorAll(element, selector);\n if (foundElements.length) {\n observer.disconnect();\n resolve(foundElements[0]);\n }\n }\n });\n observer.observe(element, { childList: true, subtree: true });\n });\n}\n/**\n * Resolves a promise when the provided host element has an `<input>` element child\n * @param {HTMLElement} host An element that does or will contain children.\n */\nexport function ensureInputElement(host) {\n return new Promise(resolve => {\n const element = host.querySelector('input');\n if (element) {\n resolve(element);\n }\n const observer = new MutationObserver(changes => {\n const hasAddedNodes = changes.reduce((prev, curr) => prev + curr.addedNodes.length, 0) > 0;\n if (hasAddedNodes) {\n const foundElement = host.querySelector('input');\n if (foundElement) {\n observer.disconnect();\n resolve(foundElement);\n }\n }\n });\n observer.observe(host, { childList: true, subtree: true });\n });\n}\n/**\n * Walks up the tree starting a specific node and stops when the provided matcher function returns true.\n * @param {Node} node The node to start searching from.\n * @returns {Node | null} The closest matching ancestor node, or null if not found.\n */\nexport function walkUpUntil(node, matcher) {\n let parent = node && node.parentNode;\n while (parent) {\n if (matcher(parent)) {\n return parent;\n }\n parent = parent.parentNode;\n }\n return null;\n}\n/**\n * Calculates the width of a string given the provided font information.\n */\nexport function calculateFontWidth(value, info) {\n const canvas = document.createElement('canvas');\n const ctx = canvas.getContext('2d');\n const fontSize = info ? info.fontSize : 16;\n const fontFamily = info ? info.fontFamily : 'Roboto';\n ctx.font = `${fontSize}px ${fontFamily}`;\n return ctx.measureText(value).width;\n}\n/**\n * Generates a CSS text-shadow style value based on the number of iterations and color provided.\n * @param {number} iterations The number of iterations for how long the shadow should be.\n * @param {string} color The color of the text shadow. Can be any CSS-safe color format. Ex. hex, rgb, rgba, hsl... etc.\n */\nexport function generateTextShadow(iterations, color) {\n const shadows = [];\n for (let i = 1; i <= iterations; i++) {\n shadows.push(`${i}px ${i}px ${color}`);\n }\n return shadows.join(', ');\n}\n/**\n * Checks if an element matches any of the provided selectors.\n * @param {Element} el The element to match.\n * @param {string[]} selectors The selectors to check the element against.\n */\nexport function matchesSelectors(el, selectors) {\n if (el.nodeType !== Node.ELEMENT_NODE) {\n return false;\n }\n if (typeof selectors === 'string') {\n selectors = selectors.replace(/\\s+/, '').split(',');\n }\n const matchesFn = Element.prototype.matches;\n return selectors.some(selector => matchesFn.call(el, selector));\n}\n/**\n * Walks the DOM tree starting at a root element and checks if any of its children\n * match the provided selectors. Similar to the native `querySelectorAll` except\n * that it will traverse the shadow DOM as well as slotted nodes.\n * @param {Element} rootElement The element to start querying from.\n * @param {string[]} selectors An array of CSS selectors.\n * @param {boolean} [checkRootElement] True if the provided root element is to be matched against the selectors.\n */\nexport function deepQuerySelectorAll(rootElement, selectors, checkRootElement = false) {\n let nodes = [];\n if (!rootElement) {\n return nodes;\n }\n if (typeof selectors === 'string') {\n selectors = selectors.replace(/\\s+/, '').split(',');\n }\n if (checkRootElement && matchesSelectors(rootElement, selectors) && nodes.indexOf(rootElement) === -1) {\n nodes.push(rootElement);\n }\n if (rootElement.tagName === 'SLOT') {\n const slotNodes = rootElement.assignedNodes();\n slotNodes.forEach(slottedNode => nodes = nodes.concat(deepQuerySelectorAll(slottedNode, selectors, true)));\n }\n else {\n let node = rootElement.shadowRoot ? rootElement.shadowRoot.firstElementChild : rootElement.firstElementChild;\n while (node) {\n nodes = nodes.concat(deepQuerySelectorAll(node, selectors, true));\n node = node.nextElementSibling;\n }\n }\n return nodes;\n}\n/**\n * Gets the currently focused element within the document by also traversing shadow roots.\n * @param {Document} doc The document to get the active element from. Defaults to the current document.\n * @returns {Element}\n */\nexport function getActiveElement(doc = document) {\n const activeElement = doc.activeElement;\n if (!activeElement || activeElement === doc.body) {\n return activeElement;\n }\n return getActiveShadowElement(activeElement);\n}\n/**\n * Gets the active element within the provided elements shadow root. If the element\n * does not have a shadow root, the provided element is returned.\n * @param {Element} element The active element.\n */\nexport function getActiveShadowElement(element) {\n if (element.shadowRoot && element.shadowRoot.activeElement) {\n element = getActiveShadowElement(element.shadowRoot.activeElement);\n }\n return element;\n}\n/** Toggles a CSS class (or classes) on an element based on a boolean. */\nexport function toggleClass(el, hasClass, className) {\n if (hasClass) {\n addClass(className, el);\n }\n else {\n removeClass(className, el);\n }\n}\n/** Toggles a value-less attribute on an element. */\nexport function toggleAttribute(el, hasAttribute, name, value = '') {\n if (hasAttribute) {\n el.setAttribute(name, value);\n }\n else {\n el.removeAttribute(name);\n }\n}\n/** Toggles part of an attribute on an element. */\nexport function toggleOnAttribute(el, attribute, value, force) {\n const oldValue = el.getAttribute(attribute);\n if ((force === undefined || force === true) && (!oldValue || !oldValue.includes(value))) {\n appendToAttribute(el, attribute, value);\n }\n else if (!force) {\n removeFromAttribute(el, attribute, value);\n }\n}\n/** Appends a value to an attribute on an element, first setting it if it doesn't exist. */\nexport function appendToAttribute(el, attribute, value) {\n const oldValue = el.getAttribute(attribute);\n if (!oldValue || !oldValue.length) {\n el.setAttribute(attribute, value);\n }\n else {\n el.setAttribute(attribute, `${oldValue} ${value}`);\n }\n}\n/** Removes a value from an attribute on an element, removing the attribute if empty. */\nexport function removeFromAttribute(el, attribute, value) {\n if (!el.hasAttribute(attribute)) {\n return;\n }\n const oldValue = el.getAttribute(attribute);\n if (oldValue) {\n let newValue = oldValue === null || oldValue === void 0 ? void 0 : oldValue.replace(value, '');\n newValue = newValue.replace(/\\s+/g, ' ').trim();\n if (newValue.length) {\n el.setAttribute(attribute, newValue);\n }\n else {\n el.removeAttribute(attribute);\n }\n }\n}\n/**\n * Attempts to scroll a target element into view within a scrollable parent element, unless already visible within the container.\n * @param scrollElement The scrollable parent element.\n * @param targetElement The element to scroll into view.\n * @param behavior The scroll behavior. Defaults to 'auto'.\n * @param block The block position to anchor the target element to within the scroll element.\n */\nexport function tryScrollIntoView(scrollElement, targetElement, behavior = 'auto', block = 'nearest') {\n if (!scrollElement) {\n return;\n }\n const canScroll = scrollElement.scrollHeight > scrollElement.clientHeight || scrollElement.scrollWidth > scrollElement.clientWidth;\n if (canScroll) {\n const offsetRect = offset(targetElement, scrollElement);\n const isClippedTop = offsetRect.top <= targetElement.clientHeight;\n const isClippedBottom = offsetRect.bottom <= targetElement.clientHeight;\n if (isClippedTop || isClippedBottom) {\n const top = calcBlockScroll(block, isClippedTop, targetElement.offsetTop, targetElement.clientHeight, scrollElement.offsetTop, scrollElement.offsetHeight);\n scrollElement.scrollTo({ top, behavior });\n return;\n }\n const isClippedLeft = offsetRect.left <= targetElement.clientWidth;\n const isClippedRight = offsetRect.right <= targetElement.clientWidth;\n if (isClippedLeft || isClippedRight) {\n const left = calcBlockScroll(block, isClippedLeft, targetElement.offsetLeft, targetElement.clientWidth, scrollElement.offsetLeft, scrollElement.offsetWidth);\n scrollElement.scrollTo({ left, behavior });\n }\n }\n}\n/** Calculates the block anchor position for a target element within a scrollable parent element. */\nexport function calcBlockScroll(block, isClippedStart, targetOffset, targetSize, scrollOffset, scrollSize) {\n if (block === 'nearest') {\n if (isClippedStart) {\n return (targetOffset - scrollOffset) - targetSize;\n }\n return (targetOffset - scrollSize) + targetSize * 2;\n }\n return targetOffset - scrollOffset - scrollSize / 2 + targetSize / 2;\n}\n/**\n * Creates an element from an HTML string.\n */\nexport function elementFromHTML(html) {\n const template = document.createElement('template');\n html = html.trim();\n template.innerHTML = html;\n return template.content.firstElementChild;\n}\n/**\n * Observes changes to the provided attributes on a target element and executes a provided callback when changed.\n * @param element The element to observe.\n * @param listener The callback to execute when an attribute changes on the element.\n * @param attributeFilter The attributes to observe.\n * @returns A `MutationObserver` instasnce.\n */\nexport function createElementAttributeObserver(element, listener, attributeFilter) {\n const observer = new MutationObserver(mutations => {\n for (const mutation of mutations) {\n if (mutation.attributeName) {\n listener(mutation.attributeName, element.getAttribute(mutation.attributeName));\n }\n }\n });\n observer.observe(element, { attributes: true, attributeFilter });\n return observer;\n}\n"],
|
|
5
|
-
"mappings": "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
|
|
6
|
-
"names": ["_ownerDocument", "element", "isElement", "element", "elementParents", "element", "untilElement", "isElement", "parentElements", "_ownerDocument", "offset", "element", "parentElement", "isElement", "elemBCR", "win", "_ownerDocument", "docElem", "offsetValues", "parentBCR", "notChildEventListener", "element", "callback", "delay", "evtHandler", "event", "handle", "activeElement", "_ownerDocument", "docElem", "removeAllChildren", "node", "replaceElement", "newChild", "oldChild", "addClass", "name", "isArray", "n", "removeClass", "getAnimationEvent", "el", "animations", "t", "playKeyframeAnimation", "className", "remove", "resolve", "animationEvent", "animationCompletedListener", "removeElement", "safeCssWidth", "width", "calcSizeUnattached", "container", "size", "ensureChildren", "observer", "changes", "ensureChild", "selector", "initialElements", "deepQuerySelectorAll", "prev", "curr", "foundElements", "
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["_ownerDocument", "element", "isElement", "element", "elementParents", "element", "untilElement", "isElement", "parentElements", "_ownerDocument", "offset", "element", "parentElement", "isElement", "elemBCR", "win", "_ownerDocument", "docElem", "offsetValues", "parentBCR", "notChildEventListener", "element", "callback", "delay", "evtHandler", "event", "handle", "activeElement", "_ownerDocument", "docElem", "removeAllChildren", "node", "replaceElement", "newChild", "oldChild", "addClass", "name", "isArray", "n", "removeClass", "getAnimationEvent", "el", "animations", "t", "playKeyframeAnimation", "className", "remove", "resolve", "animationEvent", "animationCompletedListener", "removeElement", "safeCssWidth", "width", "calcSizeUnattached", "container", "size", "ensureChildren", "observer", "changes", "ensureChild", "selector", "initialElements", "deepQuerySelectorAll", "prev", "curr", "foundElements", "ensureInputElement", "host", "foundElement", "walkUpUntil", "matcher", "parent", "calculateFontWidth", "value", "info", "ctx", "fontSize", "fontFamily", "generateTextShadow", "iterations", "color", "shadows", "i", "matchesSelectors", "selectors", "matchesFn", "rootElement", "checkRootElement", "nodes", "slottedNode", "getActiveElement", "doc", "getActiveShadowElement", "toggleClass", "hasClass", "toggleAttribute", "hasAttribute", "toggleOnAttribute", "attribute", "force", "oldValue", "appendToAttribute", "removeFromAttribute", "newValue", "tryScrollIntoView", "scrollElement", "targetElement", "behavior", "block", "offsetRect", "offset", "isClippedTop", "isClippedBottom", "top", "calcBlockScroll", "isClippedLeft", "isClippedRight", "left", "isClippedStart", "targetOffset", "targetSize", "scrollOffset", "scrollSize", "elementFromHTML", "html", "template", "createElementAttributeObserver", "listener", "attributeFilter", "mutations", "mutation"]
|
|
7
7
|
}
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{a as u}from"./chunk.
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{a as u}from"./chunk.ZY3ETQ3D.js";import{a as o}from"./chunk.NVUMRW44.js";import{a as d,b as k}from"./chunk.RRNSZCVJ.js";import{a as g,e as b,f as h,k as f}from"./chunk.TPXXHX5J.js";import{k as c}from"./chunk.J2M2MXP2.js";import{d as a}from"./chunk.M3QDAYD2.js";var _=`${k}stack`,A={DEFAULT:"forge-stack"},x={ROOT:`.${A.DEFAULT}`},S={INLINE:"inline",WRAP:"wrap",STRETCH:"stretch",GAP:"gap",ALIGNMENT:"alignment"},T={DEFAULT_GAP:"16"},e={elementName:_,classes:A,attributes:S,selectors:x,strings:T},E=(n=>(n.Start="start",n.Center="center",n.End="end",n))(E||{});var l=class extends u{constructor(r){super(r);this._rootElement=h(r,e.selectors.ROOT)}setGap(r){let n=/^\d+$/.test(r)?`${r}px`:r;this._rootElement.style.gap=`var(--forge-stack-gap, ${n})`}};var p=class{constructor(t){this._adapter=t;this._inline=!1;this._wrap=!1;this._stretch=!1;this._gap=e.strings.DEFAULT_GAP;this._alignment="start"}get inline(){return this._inline}set inline(t){t=!!t,this._inline!==t&&(this._inline=t,this._adapter.toggleHostAttribute(e.attributes.INLINE,this._inline))}get wrap(){return this._wrap}set wrap(t){t=!!t,this._wrap!==t&&(this._wrap=t,this._adapter.toggleHostAttribute(e.attributes.WRAP,this._wrap))}get stretch(){return this._stretch}set stretch(t){t=!!t,this._stretch!==t&&(this._stretch=t,this._adapter.toggleHostAttribute(e.attributes.STRETCH,this._stretch))}get gap(){return this._gap}set gap(t){this._gap!==t&&(this._gap=t,this._adapter.setGap(this._gap),this._adapter.setHostAttribute(e.attributes.GAP,this._gap))}get alignment(){return this._alignment}set alignment(t){this._alignment!==t&&(this._alignment=t,this._adapter.setHostAttribute(e.attributes.ALIGNMENT,this._alignment))}};var I='<template><div class="forge-stack" part="root"><slot></slot></div></template>',N=".forge-stack{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;width:100%;gap:16px;gap:var(--forge-stack-gap,16px);height:100%;height:var(--forge-stack-height,100%)}.forge-stack ::slotted(*){-webkit-box-flex:var(--forge-stack-stretch,initial);flex:var(--forge-stack-stretch,initial)}:host{display:block}:host([inline]) .forge-stack{-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;--forge-stack-height:auto}:host([inline][wrap]) .forge-stack{flex-wrap:wrap}:host([stretch]:not([inline])){height:100%}:host([stretch]){--forge-stack-stretch:1}:host([alignment=start]) .forge-stack{-webkit-box-pack:start;justify-content:start}:host([alignment=center]) .forge-stack{-webkit-box-pack:center;justify-content:center}:host([alignment=end]) .forge-stack{-webkit-box-pack:end;justify-content:end}",i=class extends f{constructor(){super();b(this,I,N),this._foundation=new p(new l(this))}static get observedAttributes(){return[e.attributes.INLINE,e.attributes.WRAP,e.attributes.STRETCH,e.attributes.GAP,e.attributes.ALIGNMENT]}attributeChangedCallback(r,n,s){switch(r){case e.attributes.INLINE:this.inline=c(s);break;case e.attributes.WRAP:this.wrap=c(s);break;case e.attributes.STRETCH:this.stretch=c(s);break;case e.attributes.GAP:this.gap=s;break;case e.attributes.ALIGNMENT:this.alignment=s;break}}};a([o()],i.prototype,"inline",2),a([o()],i.prototype,"wrap",2),a([o()],i.prototype,"stretch",2),a([o()],i.prototype,"gap",2),a([o()],i.prototype,"alignment",2),i=a([d({name:e.elementName})],i);function J(){g(i)}export{e as a,E as b,l as c,p as d,i as e,J as f};
|
|
7
|
+
//# sourceMappingURL=chunk.IA27LU2O.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/core/mixins/label/with-label-aware.ts"],
|
|
4
|
+
"sourcesContent": ["import { AbstractConstructor, MixinBase } from '../../../constants';\nimport { IBaseComponent } from '../../base/base-component';\n\n/**\n * An element that can be associated with a Forge label component.\n */\nexport interface IWithLabelAwareness extends IBaseComponent {\n /**\n * A callback for when the associated label's text content changes.\n * \n * @param value The new text content of the label, or null if the label was removed or has no\n * text content.\n */\n labelChangedCallback(value: string | null): void;\n\n /**\n * A callback for when the associated label is clicked.\n */\n labelClickedCallback?(): void;\n}\n\nexport declare abstract class WithLabelAwarenessContract {\n public abstract labelChangedCallback(value: string | null): void;\n}\n\n/**\n * Mixes in Forge label awareness into a base component.\n * \n * @param base The base component to mix into.\n * @returns The mixed-in base component.\n */\n// eslint-disable-next-line @typescript-eslint/explicit-function-return-type\nexport function WithLabelAwareness<TBase extends MixinBase>(base: TBase) {\n abstract class LabelAwareComponent extends base implements WithLabelAwarenessContract {\n public abstract labelChangedCallback(value: string | null): void;\n }\n\n return LabelAwareComponent as AbstractConstructor<WithLabelAwarenessContract> & TBase;\n}\n"],
|
|
5
|
+
"mappings": "AAgCO,SAASA,EAA4CC,EAAa,CACvE,MAAeC,UAA4BD,CAA2C,CAEtF,CAEA,OAAOC,CACT",
|
|
6
|
+
"names": ["WithLabelAwareness", "base", "LabelAwareComponent"]
|
|
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,d as re}from"./chunk.WNH7EHZP.js";import{a as M,d as ae}from"./chunk.V564JB6A.js";import{a as $,b as x,c as v,d as U}from"./chunk.UV3WIHCM.js";import{a as R}from"./chunk.LEVFMI2Q.js";import{b as te}from"./chunk.EWT2PBEP.js";import{a as ie,d as se,l as oe}from"./chunk.4JB3SESQ.js";import{a as X}from"./chunk.YTBNAGLS.js";import{a as le}from"./chunk.OUIWXKO2.js";import{a as Q}from"./chunk.ZY3ETQ3D.js";import{a as T}from"./chunk.NVUMRW44.js";import{a as j,b as ee}from"./chunk.RRNSZCVJ.js";import{a as q,k as J}from"./chunk.TPXXHX5J.js";import{d as g,e as F,f as p,g as D,i as W,j as K,u as Z}from"./chunk.HZUQXCOQ.js";import{b as f,c as Y,d as y,h as H,j as w,k as L,l as G,o as V}from"./chunk.J2M2MXP2.js";import{a as h,d as _}from"./chunk.M3QDAYD2.js";var I=class{constructor(e){this._key=e,this._items=[]}getItems(){return[...this._items]}count(){return this._items.length}setKey(e){this._key=e}add(e){return e instanceof Array||(e=[e]),e.forEach(t=>{this.exists(t)||this._items.push(t)}),this}remove(e){e instanceof Array||(e=[e]);for(let t=e.length-1;t>=0;t--)this.exists(e[t])&&this._items.splice(this._items.indexOf(this._getItem(e[t])),1);return this}clear(){return this._items=[],this}exists(e){return this._getItem(e)!==null}_getItem(e){return this._key?x(this._items,v(this._key,e))||null:this._items.find(t=>t===e)||null}};var S=`${ee}table`,ce={TABLE:"forge-table",TABLE_DENSE:"forge-table--dense",TABLE_ROOMY:"forge-table--roomy",TABLE_RESIZABLE:"forge-table--resizable",TABLE_RESIZING:"forge-table--resizing",TABLE_RESIZE_HANDLE:"forge-table__resize-handle",TABLE_NO_WRAP_CONTENT:"forge-table--no-wrap-content",TABLE_LAYOUT_FIXED:"forge-table--layout-fixed",TABLE_FILTER_VISIBLE:"forge-table--filter-visible",TABLE_FIXED:"forge-table--fixed",TABLE_HEAD:"forge-table-head",TABLE_HEAD_ROW:"forge-table-head__row",TABLE_HEAD_ROW_FILTER:"forge-table-head__row__filter",TABLE_HEAD_CELL:"forge-table-head__cell",TABLE_HEAD_CELL_CONTAINER:"forge-table-head__cell-container",TABLE_HEAD_CELL_SORTABLE:"forge-table-head__cell--sortable",TABLE_HEAD_CELL_SORT_ICON:"forge-table-head__cell-sort-icon",TABLE_HEAD_CELL_TEXT:"forge-table-head__cell-text",TABLE_HEAD_CELL_SORT_ICON_ACTIVE:"forge-table-head__cell-sort-icon--active",TABLE_HEAD_CELL_SORTED_ASCENDING:"forge-table-head__cell--sorted-ascending",TABLE_HEAD_CELL_SORTED_DESCENDING:"forge-table-head__cell--sorted-descending",TABLE_HEAD_CELL_SORT_ORDER:"forge-table-head__cell__sort-order",TABLE_HEAD_CELL_SORT_ORDER_HIDDEN:"forge-table-head__cell__sort-order--hidden",TABLE_BODY:"forge-table-body",TABLE_BODY_ROW:"forge-table-body__row",TABLE_BODY_ROW_SELECTED:"forge-table-body__row--selected",TABLE_BODY_ROW_CLICKABLE:"forge-table-body__row--clickable",TABLE_BODY_CELL:"forge-table-body__cell",TABLE_ROW:"forge-table-row",TABLE_ROW_EXPANDED:"forge-table-row--expanded",TABLE_ROW_EXPANDABLE_CONTENT:"forge-table-row__expandable-content",TABLE_ROW_EXPANDABLE_CONTENT_CELL:"forge-table-row__expandable-content-cell",TABLE_CELL:"forge-table-cell",TABLE_CELL_SELECT:"forge-table-cell__select",TABLE_CELL_SELECT_CHECKBOX:"forge-table-cell__select-checkbox",TABLE_CELL_SELECT_CHECKBOX_CONTAINER:"forge-table-cell__select-checkbox-container",TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_RIGHT:"forge-table-cell__select-checkbox-container--align-right",TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_LEFT:"forge-table-cell__select-checkbox-container--align-left",TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_CENTER:"forge-table-cell__select-checkbox-container--align-center",TABLE_CELL_CONTAINER:"forge-table-cell__container",TABLE_CELL_CONTAINER_TEXT:"forge-table-cell__container-text",TABLE_CELL_CENTER:"forge-table-cell--center",TABLE_CELL_RIGHT:"forge-table-cell--right",TABLE_CELL_RESIZABLE:"forge-table-cell--resizing"},be={TABLE:".forge-table",CHECKBOX_INPUT:"forge-checkbox > input[type=checkbox]:not([forge-ignore])",SELECT_ALL_TEMPLATE_CHECKBOX_INPUT:"input[type=checkbox]:not([forge-ignore])",ROW_SELECTED:`.${ce.TABLE_BODY_ROW_SELECTED}`},Ee={SELECT:"select",MULTISELECT:"multiselect",SELECT_KEY:"select-key",DENSE:"dense",ROOMY:"roomy",FILTER:"filter",FIXED_HEADERS:"fixed-headers",LAYOUT_TYPE:"layout-type",WRAP_CONTENT:"wrap-content",RESIZABLE:"resizable",MIN_RESIZE_WIDTH:"min-resize-width",ALLOW_ROW_CLICK:"allow-row-click",MULTI_COLUMN_SORT:"multi-column-sort",SELECT_CHECKBOX_ALIGNMENT:"select-checkbox-alignment",TOOLTIP_SELECT:"tooltip-select",TOOLTIP_SELECT_ALL:"tooltip-select-all",CHECKBOX_TYPE:"forge-checkbox-type",CUSTOM_CELL_TEMPLATE:"data-cell-template",CUSTOM_CELL_TEMPLATE_STOP_PROPAGATION:"data-cell-template-stop-propagation"},_e={ROW_CLICK:`${S}-row-click`,SELECT:`${S}-select`,SELECT_DOUBLE:`${S}-select-double`,SELECT_ALL:`${S}-select-all`,SORT:`${S}-sort`,FILTER:`${S}-filter`,INITIALIZED:`${S}-initialized`,COLUMN_RESIZE:`${S}-column-resize`},Te={SELECT_ALL:"select-all",SELECT_ROW:"select-row",DEFAULT_LAYOUT_TYPE:"auto"},pe={SORT_DOWN:"arrow_downward"},Ce={DEFAULT_FILTER_DEBOUNCE_TIME:750,MIN_RESIZE_WIDTH:100,RESIZE_HOVER_DURATION:150},s={elementName:S,classes:ce,selectors:be,attributes:Ee,events:_e,strings:Te,icons:pe,numbers:Ce};var B=(l=>(l.Left="left",l.Right="right",l.Center="center",l))(B||{}),O=(l=>(l.Ascending="ASC",l.Descending="DESC",l.Unset="UNSET",l))(O||{}),he=(o=>(o.InputText="text",o.InputNumber="number",o.Select="select",o.SelectMultiple="select-multiple",o.Date="date",o.DateRange="date-range",o))(he||{});function de(n){return n&&typeof n=="object"&&"content"in n}var b=class n{static createTable(e){n._resetTable(e.tableElement);let t=n._createTableHead(e),l=n._createTableBody(e);e.clickListener&&(n._attachRowClickListeners(l,e.clickListener,e.doubleClickListener),n._addRowClickAttributes(l)),e.fixedHeaders&&n.setFixedHeaders(e),e.resizable&&n.setResizable(e),e.dense&&n.setDenseState(e.tableElement,e.dense),e.wrapContent&&n.setWrapContentState(e.tableElement,e.wrapContent),e.selectListener&&n._addSelectColumn(t,l,e.selectListener,e.selectAllListener,e.selectAllTemplate,e.selectCheckboxAlignment,e.data,e.tooltipSelect,e.tooltipSelectAll),(e.resizable||e.columnConfigurations.some(i=>!!i.sortable))&&(n._attachHeadRowMouseDownListener(t,e.headRowMouseDownListener),n._isMac()&&n._attachHeadRowContextMenuListener(t,e.headRowContextMenuListener)),n.setLayoutType(e),n._setTableHead(e.tableElement,t),e.filter&&n.setFilterRow(e),n._setTableBody(e.tableElement,l)}static _setTableHead(e,t){e.tHead?F(t,e.tHead):e.appendChild(t)}static _setTableBody(e,t){e.tBodies.length?F(t,e.tBodies[0]):e.appendChild(t)}static recreateTableBody(e){let t=n._createTableBody(e);e.clickListener&&(n._attachRowClickListeners(t,e.clickListener,e.doubleClickListener),n._addRowClickAttributes(t)),e.selectListener&&(n._createBodySelectColumn(t,e.selectCheckboxAlignment,e.data,e.tooltipSelect,e.tooltipSelectAll),n._attachRowSelectListeners(t,e.selectListener)),n._setTableBody(e.tableElement,t)}static _resetTable(e){g(e)}static _createMultisortTooltip(){let e=document.createElement("forge-tooltip");return e.textContent="Ctrl + click to sort multiple columns",e.placement="bottom",e.delay=0,e}static _createTableHead(e){let t=document.createElement("thead"),l=t.insertRow();p([s.classes.TABLE_ROW,s.classes.TABLE_HEAD_ROW],l);let i=!1;for(let a=0;a<e.columnConfigurations.length;a++){let o=e.columnConfigurations[a],r=document.createElement("th");r.scope="col",p([s.classes.TABLE_CELL,s.classes.TABLE_HEAD_CELL],r);let c;if(o.sortable?(c=document.createElement("button"),c.type="button",c.addEventListener("keydown",e.sortableHeadCellKeydownListener)):c=document.createElement("div"),c.classList.add(s.classes.TABLE_HEAD_CELL_CONTAINER),e.multiColumnSort){let d=n._createMultisortTooltip();c.appendChild(d)}if(o.align&&n._setCellAlignmentClass(c,o.align),f(o.width)){let d=K(o.width);d&&(r.style.width=d)}if(e.resizable&&o.resizable!==!1){let d=document.createElement("div");d.classList.add(s.classes.TABLE_RESIZE_HANDLE),r.appendChild(d)}f(o.headerCellStyle)&&w(o.headerCellStyle)&&(Object.assign(r.style,o.headerCellStyle),Object.assign(c.style,o.headerCellStyle));let m=document.createElement("span");if(m.classList.add(s.classes.TABLE_HEAD_CELL_TEXT),m.textContent=o.header&&typeof o.header=="string"?o.header.trim():"",o.sortable){r.classList.add(s.classes.TABLE_HEAD_CELL_SORTABLE);let d=document.createElement("span");p([s.classes.TABLE_HEAD_CELL_SORT_ORDER_HIDDEN,s.classes.TABLE_HEAD_CELL_SORT_ORDER],d);let u=document.createElement(ie.elementName);u.name=s.icons.SORT_DOWN,p([s.classes.TABLE_HEAD_CELL_SORT_ICON],u),e.multiColumnSort?typeof o.initialSort=="object"&&o.initialSort.sortOrder&&(d.textContent=o.initialSort.sortOrder.toString(),e.columnConfigurations.filter(C=>typeof C.initialSort=="object").length>1&&D(s.classes.TABLE_HEAD_CELL_SORT_ORDER_HIDDEN,d),r.classList.add(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING),u.classList.add(s.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE),n._setColumnSortDirection(r,o.initialSort.direction)):e.sortedColumn===a&&!i&&!e.multiColumnSort&&(r.classList.add(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING),u.classList.add(s.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE),n._setColumnSortDirection(r,e.sortDirection),i=!0),c.appendChild(u),c.appendChild(d)}typeof o.headerTemplate=="function"?Promise.resolve(o.headerTemplate(a,c,o)).then(d=>{if(d){let u=document.createElement("div");p(s.classes.TABLE_CELL_CONTAINER,u),typeof d=="string"?u.innerHTML=d:n._prepend(d,u),u.setAttribute(s.attributes.CUSTOM_CELL_TEMPLATE,""),n._prepend(u,c)}}):n._prepend(m,c),r.appendChild(c),l.appendChild(r)}return t}static setSortDirection(e,t,l){let i=n._getHeaderCellByIndex(e,t);e.querySelectorAll("th[aria-sort]").forEach(a=>a.removeAttribute("aria-sort")),n._setColumnSortDirection(i,l)}static _setColumnSortDirection(e,t){e.classList.contains(s.classes.TABLE_HEAD_CELL_SORTED_ASCENDING)&&e.classList.remove(s.classes.TABLE_HEAD_CELL_SORTED_ASCENDING),e.classList.contains(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING)&&e.classList.remove(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING),!t||t==="DESC"?(e.setAttribute("aria-sort","descending"),e.classList.add(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING)):(e.setAttribute("aria-sort","ascending"),e.classList.add(s.classes.TABLE_HEAD_CELL_SORTED_ASCENDING))}static _createTableBody(e){let t=document.createElement("tbody");return n._getOrderedRowData(e.columnConfigurations,e.data).forEach((i,a)=>{let o=t.insertRow();p([s.classes.TABLE_ROW,s.classes.TABLE_BODY_ROW],o),n._populateRowCells(e,o,i,a),typeof e.rowCreatedCallback=="function"&&e.rowCreatedCallback(o,a,h({},e.data[a].data))}),t}static _populateRowCells(e,t,l,i){for(let a=0;a<l.length;a++){let o=e.columnConfigurations[a],r=t.insertCell();if(p([s.classes.TABLE_CELL,s.classes.TABLE_BODY_CELL],r),f(o.width)){let m=K(o.width);m&&(r.style.width=m)}let c=document.createElement("div");if(c.classList.add(s.classes.TABLE_CELL_CONTAINER),f(o.cellStyle)&&w(o.cellStyle)&&(Object.assign(r.style,o.cellStyle),Object.assign(c.style,o.cellStyle)),o.template&&typeof o.template=="function"){let m=e.data[i]?e.data[i].data:void 0;Promise.resolve(o.template(i,c,m,a)).then(d=>{let u=de(d)?d:{content:d,stopClickPropagation:o.stopCellTemplateClickPropagation};u.content&&(typeof u.content=="string"?c.innerHTML=u.content:c.appendChild(u.content),c.setAttribute(s.attributes.CUSTOM_CELL_TEMPLATE,""),u.stopClickPropagation&&c.setAttribute(s.attributes.CUSTOM_CELL_TEMPLATE_STOP_PROPAGATION,""))})}else if(o.property){let m=document.createElement("span");m.classList.add(s.classes.TABLE_CELL_CONTAINER_TEXT),c.appendChild(m),o.transform&&typeof o.transform=="function"?Promise.resolve(o.transform(l[a])).then(d=>m.textContent=d):l[a]==null?m.textContent="":m.textContent=l[a].toString()}if(o.align&&n._setCellAlignmentClass(c,o.align),r.appendChild(c),f(o.columnSpan)){if(o.columnSpan==="all"){r.colSpan=l.length-a;break}else if(typeof o.columnSpan=="number"&&o.columnSpan>0){let m=o.columnSpan;o.columnSpan>l.length-a&&(m=l.length),r.colSpan=m,a=a+(m-1)}}typeof e.cellCreatedCallback=="function"&&e.cellCreatedCallback(r,i,a)}}static _setCellAlignmentClass(e,t){switch(t){case"center":e.classList.add(s.classes.TABLE_CELL_CENTER);break;case"right":e.classList.add(s.classes.TABLE_CELL_RIGHT);break}}static _getNonExpandedRows(e){return Array.from(e).filter(t=>!t.classList.contains(s.classes.TABLE_ROW_EXPANDABLE_CONTENT))}static _getExpandedRows(e){return Array.from(e).filter(t=>t.classList.contains(s.classes.TABLE_ROW_EXPANDABLE_CONTENT))}static _createColumnDataMap(e,t){return e.map(l=>({config:l,data:t.map(i=>{if(l.property){let a=$(i.data,l.property);return f(a)?a:null}return null})}))}static _getOrderedRowData(e,t){let l=n._createColumnDataMap(e,t),i=[];for(let a of l)for(let o=0;o<a.data.length;o++)i[o]||(i[o]=[]),i[o].push(a.data[o]);return i}static _attachRowClickListeners(e,t,l){n._getNonExpandedRows(e.rows).forEach(a=>{a.addEventListener("click",t),l&&a.addEventListener("dblclick",l)})}static _addRowClickAttributes(e){n._getNonExpandedRows(e.rows).forEach(l=>{l.classList.add(s.classes.TABLE_BODY_ROW_CLICKABLE)})}static _removeRowClickAttributes(e){n._getNonExpandedRows(e.rows).forEach(l=>{l.classList.remove(s.classes.TABLE_BODY_ROW_CLICKABLE)})}static _attachRowSelectListeners(e,t){n._getNonExpandedRows(e.rows).forEach(i=>n._attachRowSelectListener(i,t))}static _attachRowSelectListener(e,t){let l=n._getCheckboxElement(e);l==null||l.addEventListener("click",t)}static _detachRowSelectListeners(e,t){Array.from(e.rows).forEach(l=>{let i=n._getCheckboxElement(l);i==null||i.removeEventListener("click",t)})}static _detachRowClickListeners(e,t,l){Array.from(e.rows).forEach(i=>{i.removeEventListener("click",t),i.removeEventListener("dblclick",l)})}static _attachSelectAllListener(e,t){let l=e.rows[e.rows.length-1],i=n._getCheckboxElement(l);if(!i)throw new Error("Checkbox element not found.");i.addEventListener("change",t)}static _tryAttachSelectAllTemplateListener(e,t){let l=e.rows[e.rows.length-1],i=n._tryGetSelectAllCheckboxElement(l);i&&i.addEventListener("change",t)}static _detachSelectAllListener(e,t){let l=e.rows[e.rows.length-1],i=n._tryGetSelectAllCheckboxElement(l);i&&i.removeEventListener("change",t)}static _attachHeadRowMouseDownListener(e,t){let l=e.rows[0];if(!l)throw new Error("Missing table header row. Unable to attach sort listener.");l.addEventListener("mousedown",t)}static _attachHeadRowContextMenuListener(e,t){let l=e.rows[0];if(!l)throw new Error("Missing table header row. Unable to attach sort listener.");l.addEventListener("contextmenu",t)}static _createSelectColumn(e,t,l,i,a,o,r,c,m){e&&n._createHeadSelectColumn(e,l,i,a,o,m),t&&n._createBodySelectColumn(t,o,r,c,m)}static _createHeadSelectColumn(e,t,l,i,a,o){var r;if(Array.from(e.rows).forEach(c=>{let m=document.createElement("th");p([s.classes.TABLE_CELL,s.classes.TABLE_HEAD_CELL],m),c.insertBefore(m,c.cells.item(0))}),t){let c=(r=e.rows.item(e.rows.length-1))==null?void 0:r.cells.item(0);c.classList.add(s.classes.TABLE_CELL_SELECT),typeof l=="function"?n._renderSelectAllTemplate(l,e).then(()=>{typeof i=="function"&&i()}):c==null||c.appendChild(n._createCheckboxElement(!0,a,null,null,null,o))}}static _createBodySelectColumn(e,t,l,i,a){if(n._getNonExpandedRows(e.rows).forEach((r,c)=>n._addRowSelectColumn(r,t,c,l[c],i,a)),e.rows.length){let r=e.rows.item(0);r&&n._updateExpandedRowColspan(e.rows,r.cells.length)}}static _addRowSelectColumn(e,t,l,i,a,o){let r=e.insertCell(0);p([s.classes.TABLE_CELL,s.classes.TABLE_BODY_CELL,s.classes.TABLE_CELL_SELECT],r),r.appendChild(n._createCheckboxElement(!1,t,l,i,a,o))}static _destroySelectColumn(e,t){let l=n._getNonExpandedRows(t.rows);if(Array.from(e.rows).forEach(i=>i.removeChild(i.cells.item(0))),Array.from(l).forEach(i=>i.removeChild(i.cells.item(0))),t.rows.length){let i=t.rows.item(0);i&&n._updateExpandedRowColspan(t.rows,i.cells.length)}}static _hasSelectColumn(e,t){return[...Array.from(e.rows),...Array.from(t.rows)].some(i=>i.cells.item(0).classList.contains(s.classes.TABLE_CELL_SELECT))}static _createCheckboxElement(e,t,l,i,a,o){let r=document.createElement("div");if(r.classList.add(s.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER),t)switch(t){case"center":r.classList.add(s.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_CENTER);break;case"left":r.classList.add(s.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_LEFT);break;case"right":r.classList.add(s.classes.TABLE_CELL_SELECT_CHECKBOX_CONTAINER_ALIGN_RIGHT);break}let c=document.createElement(ne.elementName),m=document.createElement("input");m.type="checkbox";let d=a||"";i&&typeof a=="function"&&(d=a.call(null,l,i.data));let u=document.createElement("forge-tooltip");return u.position="left",e?u.textContent=o||"":u.textContent=d,m.setAttribute("aria-label","Select row"),c.appendChild(m),r.appendChild(u),r.appendChild(c),r}static _getCheckboxElement(e){let t=e.querySelector(`.${s.classes.TABLE_CELL_SELECT}`);return t?t.querySelector(s.selectors.CHECKBOX_INPUT):null}static _tryGetSelectAllCheckboxElement(e){let t=e.querySelector(`.${s.classes.TABLE_CELL_SELECT}`);return t?t.querySelector(s.selectors.CHECKBOX_INPUT)||t.querySelector(s.selectors.SELECT_ALL_TEMPLATE_CHECKBOX_INPUT):null}static _setSelectedCheckboxState(e,t){e&&(e.checked=t)}static _setIndeterminateCheckboxState(e,t){e&&(e.indeterminate=t)}static _setRowSelectedState(e,t){t?e.classList.contains(s.classes.TABLE_BODY_ROW_SELECTED)||e.classList.add(s.classes.TABLE_BODY_ROW_SELECTED):e.classList.remove(s.classes.TABLE_BODY_ROW_SELECTED)}static _updateExpandedRowColspan(e,t){n._getExpandedRows(e).forEach(i=>{let a=i.cells.item(0);a&&(a.colSpan=t)})}static updateSelectedState(e,t){n._setRowSelectedState(e,t);let l=n._getCheckboxElement(e);l&&n._setSelectedCheckboxState(l,t)}static getRowByIndex(e,t){return n._getNonExpandedRows(e.tBodies[0].rows)[t]}static updateSelectAllState(e,t,l){if(!e.tHead)return;let i=e.tHead.rows[e.tHead.rows.length-1],a=n._tryGetSelectAllCheckboxElement(i);a&&(n._setSelectedCheckboxState(a,t),n._setIndeterminateCheckboxState(a,!!l))}static setSelectedRows(e,t,l,i,a=!1){if(!e.tBodies.length)return;a||n.clearSelectedRows(e);let o=e.tBodies[0].rows,r=0;i.length&&Array.from(o).forEach((c,m)=>{let d=l[m];if(x(i,v(t,d))){n._setRowSelectedState(c,!0);let C=n._getCheckboxElement(c);C&&n._setSelectedCheckboxState(C,!0),r++}}),n.updateSelectAllState(e,r>0&&o.length===r)}static clearSelectedRows(e){if(!e.tBodies.length)return;n._getNonExpandedRows(e.tBodies[0].rows).forEach(l=>{n._setRowSelectedState(l,!1);let i=n._getCheckboxElement(l);i&&n._setSelectedCheckboxState(i,!1)})}static setSortedColumn(e,t,l){let i=n._getHeaderCellByIndex(e,t);n._getSortIconElementFromHeaderCell(i).classList.add(s.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE),n._setColumnSortDirection(i,l)}static setMultiSortColumnSortNumber(e,t,l,i){let r=n._getHeaderCellByIndex(e,l).querySelector(`.${s.classes.TABLE_HEAD_CELL_CONTAINER}`).querySelector(`.${s.classes.TABLE_HEAD_CELL_SORT_ORDER}`);r&&(Z(r,typeof i!="number"||!t,s.classes.TABLE_HEAD_CELL_SORT_ORDER_HIDDEN),i&&(r.textContent=i.toString()))}static removeColumnSort(e,t){let l=n._getHeaderCellByIndex(e,t);l.removeAttribute("aria-sort"),l.classList.contains(s.classes.TABLE_HEAD_CELL_SORTED_ASCENDING)&&l.classList.remove(s.classes.TABLE_HEAD_CELL_SORTED_ASCENDING),l.classList.contains(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING)&&l.classList.remove(s.classes.TABLE_HEAD_CELL_SORTED_DESCENDING);let i=n._getSortIconElementFromHeaderCell(l);i&&i.classList.contains(s.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE)&&i.classList.remove(s.classes.TABLE_HEAD_CELL_SORT_ICON_ACTIVE)}static _getHeaderCellByIndex(e,t){if(!e.tHead)throw new Error("Table head element cannot be null.");return e.tHead.rows.item(0).cells.item(t)}static _getSortIconElementFromHeaderCell(e){return e.querySelector(`.${s.classes.TABLE_HEAD_CELL_SORT_ICON}`)}static setSelectColumnVisibility(e,t,l,i,a,o,r,c,m){let d=e.tHead,u=e.tBodies[0];!d||!u||(t?n._addSelectColumn(d,u,l,i,a,o,r,c,m):n._hasSelectColumn(d,u)&&(l&&n._detachRowSelectListeners(u,l),i&&n._detachSelectAllListener(d,i),n._destroySelectColumn(d,u)))}static _addSelectColumn(e,t,l,i,a,o,r,c,m){n._createSelectColumn(e,t,!!i,a,()=>{i&&n._tryAttachSelectAllTemplateListener(e,i)},o,r,c,m),l&&n._attachRowSelectListeners(t,l),i&&!a&&n._tryAttachSelectAllTemplateListener(e,i)}static setDenseState(e,t){e.classList.contains(s.classes.TABLE_DENSE)&&e.classList.remove(s.classes.TABLE_DENSE),t&&e.classList.add(s.classes.TABLE_DENSE)}static setRoomyState(e,t){e.classList.contains(s.classes.TABLE_ROOMY)&&e.classList.remove(s.classes.TABLE_ROOMY),t&&e.classList.add(s.classes.TABLE_ROOMY)}static setResizable(e){let t=e.tableElement.tHead;e.resizable?(e.tableElement.classList.add(s.classes.TABLE_RESIZABLE),n._addResizeHandles(t,e)):(e.tableElement.classList.remove(s.classes.TABLE_RESIZABLE),n._removeResizeHandles(t,e))}static _addResizeHandles(e,t){if(!e)return;let l=e.rows.item(0);if(l){let i=Array.from(l.cells);t.selectListener&&(i=i.slice(1));for(let a of i){let o=i.indexOf(a);if(t.columnConfigurations[o].resizable!==!1){let c=document.createElement("div");c.classList.add(s.classes.TABLE_RESIZE_HANDLE),a.appendChild(c)}}}}static _removeResizeHandles(e,t){if(!e)return;let l=e.rows.item(0);if(l){let i=Array.from(l.cells);t.selectListener&&(i=i.slice(1));for(let a of i){let o=document.querySelector(`.${s.classes.TABLE_RESIZE_HANDLE}`);o&&a.removeChild(o)}}}static setWrapContentState(e,t){t?e.classList.remove(s.classes.TABLE_NO_WRAP_CONTENT):e.classList.add(s.classes.TABLE_NO_WRAP_CONTENT)}static setSelectAllVisibility(e,t,l,i,a,o){let r=e.tHead;if(!r)return;!t&&l&&n._detachSelectAllListener(r,l);let m=r.rows[r.rows.length-1].cells.item(0);t?m.childElementCount||(m.classList.add(s.classes.TABLE_CELL_SELECT),i?n._renderSelectAllTemplate(i,r).then(()=>{l&&n._tryAttachSelectAllTemplateListener(r,l)}):m.appendChild(n._createCheckboxElement(!0,a||null,null,null,null,o)),l&&!i&&n._attachSelectAllListener(r,l)):(l&&n._detachSelectAllListener(r,l),g(m))}static setFilterRow(e){if(!e.tableElement.tHead)return;let t=n._getFilterRowElement(e.tableElement.tHead),l;if(e.filter?e.tableElement.classList.add(s.classes.TABLE_FILTER_VISIBLE):e.tableElement.classList.remove(s.classes.TABLE_FILTER_VISIBLE),e.filter&&!t){if(e.columnConfigurations.every(a=>!a.filter))return;e.selectListener&&e.selectAllListener&&(l=e.tableElement.tHead.rows[e.tableElement.tHead.rows.length-1].cells.item(0));let i=n._createFilterRowElement(e);i&&l&&Array.from(l.children).forEach(a=>{var o;(o=i.cells.item(0))==null||o.appendChild(a)})}else if(!e.filter&&t){if(e.selectListener&&e.selectAllListener){l=t.cells.item(0);let i=Array.from(e.tableElement.tHead.rows).indexOf(t)-1,a=e.tableElement.tHead.rows.item(i);a&&Array.from(l.children).forEach(o=>{var r;(r=a.cells.item(0))==null||r.appendChild(o)})}W(t)}}static _createFilterRowElement(e){if(!e.tableElement.tHead)throw new Error("Table head element cannot be null.");let t=e.tableElement.tHead.insertRow();if(p([s.classes.TABLE_ROW,s.classes.TABLE_HEAD_ROW_FILTER],t),e.selectListener){let l=document.createElement("th");p([s.classes.TABLE_CELL,s.classes.TABLE_HEAD_CELL],l),t.insertBefore(l,t.cells[0]),l.classList.add(s.classes.TABLE_CELL_SELECT)}return e.columnConfigurations.forEach((l,i)=>{let a=document.createElement("th");if(p([s.classes.TABLE_CELL,s.classes.TABLE_HEAD_CELL],a),l.filter&&f(l.filterDelegate)){let o=document.createElement("div");o.classList.add(s.classes.TABLE_HEAD_CELL_CONTAINER),l.align&&n._setCellAlignmentClass(o,l.align);let r=n._createFilterElement(l,i,e.filterListener);o.appendChild(r),a.appendChild(o)}t.appendChild(a)}),t}static _createFilterElement(e,t,l){let i;if(H(e.filterDelegate))i=e.filterDelegate();else if(e.filterDelegate instanceof X||e.filterDelegate instanceof le)i=e.filterDelegate;else throw new Error("Invalid filter delegate.");if(l&&i instanceof X&&H(i.onChange))if(!f(e.filterDebounceTime)||y(e.filterDebounceTime)){let a=f(e.filterDebounceTime)?e.filterDebounceTime:s.numbers.DEFAULT_FILTER_DEBOUNCE_TIME;i.onChange(V(o=>l(o,t),a))}else i.onChange(a=>l(a,t));return i.element}static _getFilterRowElement(e){if(e)return Array.from(e.rows).find(t=>t.classList.contains(s.classes.TABLE_HEAD_ROW_FILTER))}static async expandRow(e,t,l){let i=e.tableElement.tBodies[0],o=n._getNonExpandedRows(i.rows)[t];o.classList.add(s.classes.TABLE_ROW_EXPANDED);let r=Array.from(i.rows).indexOf(o),c=i.insertRow(r+1);p([s.classes.TABLE_ROW,s.classes.TABLE_BODY_ROW,s.classes.TABLE_ROW_EXPANDABLE_CONTENT],c);let m=c.insertCell();m.setAttribute("colspan",o.cells.length.toString()),m.classList.add(s.classes.TABLE_ROW_EXPANDABLE_CONTENT_CELL);let d=document.createElement("div"),u=document.createElement(M.elementName);u.appendChild(d),m.appendChild(u);let C=l;if(H(l)){let me=e.data[t]?e.data[t].data:void 0,ue=l(t,d,me);try{let A=await Promise.resolve(ue);C=de(A)?A.content:A}catch(A){console.error("Failed to load row template "+A.message),C=""}}C&&n._setRowTemplate(d,C),window.requestAnimationFrame(()=>u.open=!0)}static _setRowTemplate(e,t){Y(t)?e.innerHTML=t:e.appendChild(t)}static collapseRow(e,t){if(!e.tableElement||!e.tableElement.tBodies.length||!e.tableElement.tBodies[0].rows.length)return Promise.resolve();let l=e.tableElement.tBodies[0],a=n._getNonExpandedRows(l.rows)[t],o=Array.from(l.rows).indexOf(a);if(a&&a.classList.contains(s.classes.TABLE_ROW_EXPANDED)){let r=l.rows[o+1],c=r.querySelector(M.elementName);if(c&&c.open)return c.open=!1,new Promise(m=>{setTimeout(()=>{a.classList.remove(s.classes.TABLE_ROW_EXPANDED),W(r),m()},M.numbers.COLLAPSE_ANIMATION_DURATION)})}return Promise.resolve()}static isRowExpanded(e,t){let l=e.tableElement.tBodies[0],a=n._getNonExpandedRows(l.rows)[t];return a&&a.classList.contains(s.classes.TABLE_ROW_EXPANDED)}static setFixedHeaders(e){e.fixedHeaders?e.tableElement.classList.add(s.classes.TABLE_FIXED):e.tableElement.classList.remove(s.classes.TABLE_FIXED)}static setLayoutType(e){e.layoutType==="fixed"?e.tableElement.classList.add(s.classes.TABLE_LAYOUT_FIXED):e.tableElement.classList.remove(s.classes.TABLE_LAYOUT_FIXED)}static normalizeColumnWidths(e){let t=e.tableElement;if(t.tHead&&t.tHead.rows.length){let l=Array.from(t.tHead.rows[0].cells);for(let i of l){let a=getComputedStyle(i).width;i.style.width&&i.style.width!==a&&(i.style.width=a)}}}static setColumnResizeIndicatorVisibility(e,t,l){let i=e.tableElement;if(i.tHead&&i.tHead.rows.length){let a=Array.from(i.tHead.rows);for(let o of a){let r=o.cells[t];r&&(l?r.classList.add(s.classes.TABLE_CELL_RESIZABLE):r.classList.remove(s.classes.TABLE_CELL_RESIZABLE))}}if(i.tBodies.length){let a=Array.from(i.tBodies[0].rows);for(let o of a){let r=o.cells[t];r&&(l?r.classList.add(s.classes.TABLE_CELL_RESIZABLE):r.classList.remove(s.classes.TABLE_CELL_RESIZABLE))}}}static setRowClickListeners(e,t,l,i){let a=e.tBodies[0];a&&(t?n._attachRowClickListeners(a,l,i):n._detachRowClickListeners(a,l,i))}static setRowClickAttributes(e,t){let l=e.tBodies[0];l&&(t?n._addRowClickAttributes(l):n._removeRowClickAttributes(l))}static getOwnerDocument(e){return e.ownerDocument||document}static _prepend(e,t){let l=t.childNodes.item(0);l?t.insertBefore(e,l):t.appendChild(e)}static _isMac(){return!!(navigator&&navigator.platform&&navigator.platform.substr(0,3)==="Mac")}static _renderSelectAllTemplate(e,t){return Promise.resolve(e()).then(l=>{let i=t.rows.item(t.rows.length-1);if(!i)return;let a=i.cells.item(0);l&&a&&(typeof l=="string"?a.innerHTML=l:l instanceof HTMLElement&&a.appendChild(l),a.setAttribute(s.attributes.CUSTOM_CELL_TEMPLATE,""))})}};var k=class extends Q{constructor(t){super(t)}initialize(){this._tableElement||(this._tableElement=document.createElement("table"),this._tableElement.classList.add(s.classes.TABLE),this._component.children.length&&g(this._component),this._component.appendChild(this._tableElement))}getTableElement(){return this._tableElement||this.initialize(),this._tableElement}createTable(t){return b.createTable(t)}recreateTableBody(t){b.recreateTableBody(t)}setSelectedRows(t,l,i,a,o=!1){b.setSelectedRows(t,l,i,a,o)}clearSelectedRows(t){b.clearSelectedRows(t)}updateSelectedState(t,l){b.updateSelectedState(t,l)}updateSelectAllState(t,l,i){b.updateSelectAllState(t,l,i)}setSortedColumn(t,l,i){b.setSortedColumn(t,l,i)}removeColumnSort(t,l){b.removeColumnSort(t,l)}setSortDirection(t,l,i){b.setSortDirection(t,l,i)}setSelectColumnVisibility(t,l,i,a,o,r,c,m,d){b.setSelectColumnVisibility(t,l,i,a||null,o||null,r||null,c||[],m||null,d||null)}setDense(t,l){b.setDenseState(t,l)}setRoomy(t,l){b.setRoomyState(t,l)}setResizable(t){b.setResizable(t)}setSelectAllVisibility(t,l,i,a,o,r=null){b.setSelectAllVisibility(t,l,i,a,o||null,r||null)}setFilterRow(t){b.setFilterRow(t)}expandRow(t,l,i){return b.expandRow(t,l,i)}collapseRow(t,l){return b.collapseRow(t,l)}isRowExpanded(t,l){return b.isRowExpanded(t,l)}setFixedHeaders(t){b.setFixedHeaders(t)}setTableLayoutType(t){b.setLayoutType(t)}setWrapContentState(t){b.setWrapContentState(t.tableElement,t.wrapContent)}addDocumentListener(t,l){b.getOwnerDocument(this._component).addEventListener(t,l)}removeDocumentListener(t,l){b.getOwnerDocument(this._component).removeEventListener(t,l)}normalizeColumnWidths(t){b.normalizeColumnWidths(t)}setResizeColumnVisibility(t,l,i){b.setColumnResizeIndicatorVisibility(t,l,i)}addTableClass(t){p(t,this._tableElement)}removeTableClass(t){D(t,this._tableElement)}setRowClickListeners(t,l,i,a){b.setRowClickListeners(t,l,i,a)}setRowClickAttributes(t,l){b.setRowClickAttributes(t,l)}};var N=class{constructor(){this._sortedColumns=[]}get sortedColumns(){return[...this._sortedColumns.map(e=>h({},e))]}addSortColumn(e){this._sortedColumns.push(h({},e)),this._updateSortNumbers()}updateSortColumn(e){let t=this._sortedColumns.find(l=>l.columnIndex===e.columnIndex);if(t)switch(t.direction){case"ASC":this.removeSortColumn(e);break;case"DESC":t.direction="ASC";break;case"UNSET":t.direction="DESC";break}}setSortColumns(e){this._sortedColumns=[...e.map(t=>h({},t))]}removeSortColumn(e){typeof e=="number"?this._sortedColumns.splice(e,1):this._sortedColumns.splice(this._sortedColumns.indexOf(e),1),this._updateSortNumbers()}isSortColumn(e){return typeof e=="number"?this._sortedColumns.some(t=>t.columnIndex===e):this._sortedColumns.includes(e)}clearMultiSort(){this._sortedColumns=[]}getSortColumn(e){return this._sortedColumns.find(t=>t.columnIndex===e)}_updateSortNumbers(){this._sortedColumns.every(e=>typeof e.sortOrder=="number")&&this._sortedColumns.sort((e,t)=>e.sortOrder-t.sortOrder),this._sortedColumns.forEach((e,t)=>e.sortOrder=t+1)}};var P=class{constructor(e,t=!1){this.data=e;this.selected=t}};var z=class{constructor(e){this._adapter=e;this._tableRows=[];this._data=[];this._columnConfigurations=[];this._select=!1;this._multiselect=!0;this._dense=!1;this._roomy=!1;this._filter=!1;this._fixedHeaders=!1;this._layoutType=s.strings.DEFAULT_LAYOUT_TYPE;this._wrapContent=!0;this._resizable=!1;this._minResizeWidth=s.numbers.MIN_RESIZE_WIDTH;this._multiColumnSort=!1;this._selectCheckboxAlignment="center";this._isAllSelected=!1;this._sortedColumnIndex=-1;this._rendered=!1;this._allowRowClick=!1;this._multiSortManager=new N;this._rowClickListener=t=>this._onRowClick(t),this._rowDoubleClickListener=t=>this._onRowDoubleClick(t),this._selectRowListener=t=>this._onRowSelected(t),this._selectAllListener=t=>this._onSelectAll(t),this._sortableHeadCellKeydownListener=t=>this._onSortableHeadCellKeydown(t),this._headRowMouseDownListener=t=>this._onHeadRowMouseDown(t),this._headRowContextMenuListener=t=>this._onHeadRowContextMenu(t),this._documentMouseMoveListener=t=>this._onMouseMove(t),this._documentMouseUpListener=t=>this._onMouseUp(t),this._filterListener=(t,l)=>this._onFilter(t,l),this._selectionManager=new I(this._selectKey),this._hiddenColumnManager=new I}initialize(){this.connect(),this._adapter.setHostAttribute(s.attributes.SELECT,this._select.toString()),this._adapter.setHostAttribute(s.attributes.MULTISELECT,this._multiselect.toString()),this._adapter.setHostAttribute(s.attributes.DENSE,this._dense.toString()),this._adapter.setHostAttribute(s.attributes.ROOMY,this._roomy.toString()),this._adapter.setHostAttribute(s.attributes.FILTER,this._filter.toString()),this._adapter.emitHostEvent(s.events.INITIALIZED,void 0,!1)}connect(){this._adapter.initialize()}disconnect(){this._resizeDescriptor=void 0,this._adapter.removeDocumentListener("mousemove",this._documentMouseMoveListener),this._adapter.removeDocumentListener("mouseup",this._documentMouseUpListener)}set data(e){Array.isArray(e)&&e.length>0?w(e[0])?this._data=e.map(t=>h({},t)):this._data=[...e]:this._data=[],this._tableRows=this._data.map(t=>new P(t,this._selectionManager.exists(t))),this._renderBody()}get data(){return this._data.map(e=>h({},e))}set columnConfigurations(e){this._columnConfigurations=e.map(t=>h({},t)),this._hiddenColumnManager.clear(),this._columnConfigurations.forEach(t=>{t.hidden&&this._hiddenColumnManager.add(t)}),this._refreshTableSort(),this.render()}get columnConfigurations(){return this._columnConfigurations.map(e=>h({},e))}get _visibleColumnConfigurations(){return this._columnConfigurations.filter(e=>!this._hiddenColumnManager.exists(e))}get _tableConfiguration(){return{tableElement:this._adapter.getTableElement(),columnConfigurations:this._visibleColumnConfigurations,data:this._tableRows,clickListener:this._allowRowClick?this._rowClickListener:null,doubleClickListener:this._allowRowClick?this._rowDoubleClickListener:null,selectListener:this._select?this._selectRowListener:null,selectAllListener:this._multiselect?this._selectAllListener:null,sortableHeadCellKeydownListener:this._sortableHeadCellKeydownListener,headRowMouseDownListener:this._headRowMouseDownListener,headRowContextMenuListener:this._headRowContextMenuListener,filterListener:this._filter?this._filterListener:null,sortDirection:this._sortDirection,sortedColumn:this._sortedColumnIndex,multiColumnSort:this._multiColumnSort,filter:this._filter,wrapContent:this._wrapContent,fixedHeaders:this._fixedHeaders,layoutType:this._layoutType,dense:this._dense,resizable:this._resizable,rowCreatedCallback:this._rowCreatedCallback,cellCreatedCallback:this._cellCreatedCallback,selectAllTemplate:this._selectAllTemplate,selectCheckboxAlignment:this._selectCheckboxAlignment,tooltipSelect:this._tooltipSelect,tooltipSelectAll:this._tooltipSelectAll}}set select(e){this._select!==e&&(this._select=e,this._adapter.setSelectColumnVisibility(this._adapter.getTableElement(),this._select,this._selectRowListener,this._multiselect?this._selectAllListener:void 0,this._multiselect?this._selectAllTemplate:null,this._selectCheckboxAlignment,this._tableRows,this._tooltipSelect,this._tooltipSelectAll),this._updateSelections(!0),this._select?this._adapter.setHostAttribute(s.attributes.SELECT,this._select.toString()):this._adapter.removeHostAttribute(s.attributes.SELECT))}get select(){return this._select}set multiselect(e){this._multiselect!==e&&(this._multiselect=e,this._select&&(this._adapter.setSelectAllVisibility(this._adapter.getTableElement(),this._multiselect,this._multiselect?this._selectAllListener:null,this._multiselect?this.selectAllTemplate:null,this._selectCheckboxAlignment,this._tooltipSelectAll),this._updateSelections(!0)),this._adapter.setHostAttribute(s.attributes.MULTISELECT,this._multiselect.toString()))}get multiselect(){return this._multiselect}get selectKey(){return Array.isArray(this._selectKey)?[...this._selectKey]:this._selectKey}set selectKey(e){this._originalSelectKey!==e&&(Array.isArray(e)?(this._originalSelectKey=[...e],this._selectKey=[...e]):(this._originalSelectKey=e,this._selectKey=[e]),this._selectionManager.setKey(this._selectKey),this._updateSelections(!1))}get dense(){return this._dense}set dense(e){this._dense!==e&&(this._dense=e,this._adapter.setDense(this._adapter.getTableElement(),this._dense),this._adapter.setHostAttribute(s.attributes.DENSE,this._dense.toString()))}get roomy(){return this._roomy}set roomy(e){e!==this._roomy&&(this._roomy=e,this._applyRoomy())}set filter(e){this._filter!==e&&(this._filter=e,this._adapter.setFilterRow(this._tableConfiguration),this._adapter.setHostAttribute(s.attributes.FILTER,this._filter.toString()))}get filter(){return this._filter}set fixedHeaders(e){this._fixedHeaders!==e&&(this._fixedHeaders=e,this._adapter.setFixedHeaders(this._tableConfiguration))}get fixedHeaders(){return this._fixedHeaders}get layoutType(){return this._layoutType}set layoutType(e){this._layoutType!==e&&(this._layoutType=e,this._adapter.setTableLayoutType(this._tableConfiguration))}get wrapContent(){return this._wrapContent}set wrapContent(e){this._wrapContent!==e&&(this._wrapContent=e,this._adapter.setWrapContentState(this._tableConfiguration))}get resizable(){return this._resizable}set resizable(e){this._resizable!==e&&(this._resizable=e,this._adapter.setResizable(this._tableConfiguration))}get minResizeWidth(){return this._minResizeWidth}set minResizeWidth(e){this._minResizeWidth!==e&&(this._minResizeWidth=e,y(this._minResizeWidth)?this._minResizeWidth<0&&(this._minResizeWidth=0):this._minResizeWidth=s.numbers.MIN_RESIZE_WIDTH)}get allowRowClick(){return this._allowRowClick}set allowRowClick(e){this._allowRowClick!==e&&(this._allowRowClick=e,this._rendered&&(this._adapter.setRowClickListeners(this._adapter.getTableElement(),this._allowRowClick,this._rowClickListener,this._rowDoubleClickListener),this._adapter.setRowClickAttributes(this._adapter.getTableElement(),this._allowRowClick)))}get multiColumnSort(){return this._multiColumnSort}set multiColumnSort(e){e!==this._multiColumnSort&&(this._multiColumnSort=e,this._refreshTableSort(),this.render())}get selectCheckboxAlignment(){return this._selectCheckboxAlignment}set selectCheckboxAlignment(e){e!==this._selectCheckboxAlignment&&(this._selectCheckboxAlignment=e,this._adapter.setHostAttribute(s.attributes.SELECT_CHECKBOX_ALIGNMENT,e),this.render())}get tooltipSelect(){return this._tooltipSelect}set tooltipSelect(e){e!==this._tooltipSelect&&(this._tooltipSelect=e,typeof e=="string"&&this._adapter.setHostAttribute(s.attributes.TOOLTIP_SELECT,e),this.render())}get tooltipSelectAll(){return this._tooltipSelectAll}set tooltipSelectAll(e){e!==this._tooltipSelectAll&&(this._tooltipSelectAll=e,this._adapter.setHostAttribute(s.attributes.TOOLTIP_SELECT_ALL,e),this.render())}get selectAllTemplate(){return this._selectAllTemplate}set selectAllTemplate(e){e!==this._selectAllTemplate&&(this._selectAllTemplate=e,this.render())}get rowCreated(){return this._rowCreatedCallback}set rowCreated(e){this._rowCreatedCallback=e}get cellCreated(){return this._cellCreatedCallback}set cellCreated(e){this._cellCreatedCallback=e}isRowSelected(e){let t=v(Array.isArray(this._selectKey)?this._selectKey:[this._selectKey],e);return this.selectKey?!!this._selectionManager.getItems().find(l=>U(l,t)):this._selectionManager.exists(e)}getSelectedRows(){return this._selectionManager.getItems()}selectRows(e,t){if(!this._selectKey)throw new Error("You must set a selectKey to select rows.");(!this._multiselect||t)&&this.clearSelections(),e&&e.length&&(this._selectionManager.add(e),this._updateSelections(!t))}deselectRows(e){e&&e.length&&(this._selectionManager.remove(e),this._updateSelections(!1))}clearSelections(){let e=this._adapter.getTableElement();this._selectionManager.clear(),this._tableRows.forEach(t=>t.selected=!1),this._isAllSelected=!1,this._adapter.clearSelectedRows(e),this._select&&this._multiselect&&this._adapter.updateSelectAllState(e,!1)}hideColumn(e){let t=this._columnConfigurations[e];this._sortedColumnIndex===e&&(this._sortedColumnIndex=-1),this._hiddenColumnManager.exists(t)||(this._hiddenColumnManager.add(t),this.render())}showColumn(e){let t=this._columnConfigurations[e];this._hiddenColumnManager.exists(t)&&(this._hiddenColumnManager.remove(t),this.render())}isColumnHidden(e){let t=this._columnConfigurations[e];return!!t&&this._hiddenColumnManager.exists(t)}render(){this._adapter.createTable(this._tableConfiguration),this._renderSelections(),this._rendered=!0}_renderBody(){this._rendered&&(this._adapter.recreateTableBody(this._tableConfiguration),this._renderSelections())}_renderSelections(){this.select&&(this._isAllSelected=this._getSelectAllState(),this._multiselect&&this._adapter.updateSelectAllState(this._adapter.getTableElement(),this._isAllSelected,this._isIndeterminate(this._isAllSelected)));let e=this._selectionManager.getItems();e.length&&this._adapter.setSelectedRows(this._adapter.getTableElement(),this._selectKey,this._data,e,!1)}expandRow(e,t){if(!this._rendered)throw new Error("Cannot expand a row before the table has rendered.");if(e<0||e>this._tableRows.length)throw new Error(`Invalid row index: ${e}.`);return this._adapter.expandRow(this._tableConfiguration,e,t)}collapseRow(e){return!this._rendered||e<0||e>this._tableRows.length?Promise.resolve():this._adapter.collapseRow(this._tableConfiguration,e)}isRowExpanded(e){return this._adapter.isRowExpanded(this._tableConfiguration,e)}selectRowsByIndex(e,t){let l=e.map(i=>this._data[i]).filter(i=>!!i);this.selectRows(l,!t)}deselectRowsByIndex(e){let t=e.map(l=>this._data[l]).filter(l=>!!l);this.deselectRows(t)}_getSelectAllState(){return this._tableRows.length>0&&this._tableRows.every(e=>e.selected)}_updateSelections(e){this._tableRows.forEach(l=>l.selected=this._selectionManager.exists(l.data));let t=this._getSelectAllState();this._adapter.setSelectedRows(this._adapter.getTableElement(),this._selectKey,this._data,this._selectionManager.getItems(),e),(t!==this._isAllSelected||this._isIndeterminate(t))&&(this._isAllSelected=t,this._multiselect&&this._adapter.updateSelectAllState(this._adapter.getTableElement(),this._isAllSelected,this._isIndeterminate(this._isAllSelected)))}_onRowClick(e){if(e.stopImmediatePropagation(),e.target.tagName==="INPUT"&&e.target.type==="checkbox")return;let i=R(e).filter(m=>m.nodeType===1).find(m=>m.hasAttribute(s.attributes.CUSTOM_CELL_TEMPLATE));if(i&&i.hasAttribute(s.attributes.CUSTOM_CELL_TEMPLATE_STOP_PROPAGATION))return;let{index:o,data:r}=this._getSelectedRowFromEvent(e),c={index:o,data:r};this._adapter.emitHostEvent(s.events.ROW_CLICK,c,!0,!1)}_onRowDoubleClick(e){if(e.stopPropagation(),e.target.tagName==="INPUT"&&e.target.type==="checkbox")return;let t=this._getSelectedRowFromEvent(e),l={index:t.index,data:t.data};this._adapter.emitHostEvent(s.events.SELECT_DOUBLE,l,!0,!1)}_onRowSelected(e){let t=this._getSelectedRowFromEvent(e);this._multiselect||this._tableRows.filter(r=>r.selected).forEach(r=>{U(r.data,v(this._selectKey,t.data))||this.deselectRows([r.data])});let l=!this._selectionManager.exists(t.data);this._adapter.updateSelectedState(t.rowElement,l),l?this._selectionManager.add(t.data):this._selectionManager.remove(t.data),this._tableRows[t.index].selected=l;let i=[t.index],a=!1;if(this._multiselect){if(e.shiftKey&&this._previouslyClickedRow&&(i=this._shiftSelectRows(t),i.includes(this._previouslyClickedRow.index))){let r=i.indexOf(this._previouslyClickedRow.index);i.splice(r,1)}a=this._getSelectAllState(),this._adapter.updateSelectAllState(this._adapter.getTableElement(),a,this._isIndeterminate(a))}for(let o of i){let r=this._tableRows[o].data,m={selected:this._selectionManager.exists(r),index:o,data:r};this._adapter.emitHostEvent(s.events.SELECT,m,!0,!1)}if(this._isAllSelected!==a){this._isAllSelected=a;let o={status:this._isAllSelected,count:this._tableRows.filter(r=>r.selected).length,data:[...this._data],targetType:"row"};this._adapter.emitHostEvent(s.events.SELECT_ALL,o,!0,!1)}this._previouslyClickedRow=h({},t)}_getSelectedRowFromEvent(e){let l=R(e).find(r=>r.tagName==="TR"),i=l.parentElement,a=this._getNonExpandedRows(i).findIndex(r=>r===l),o=this._tableRows[a].data;return{rowElement:l,index:a,data:o}}_getNonExpandedRows(e){return Array.from(e.rows).filter(t=>!t.classList.contains(s.classes.TABLE_ROW_EXPANDABLE_CONTENT))}_onSelectAll(e){e.stopPropagation(),this._isAllSelected=!this._isAllSelected;let t=this._adapter.getTableElement();this._adapter.updateSelectAllState(t,this._isAllSelected),this._tableRows.forEach((i,a)=>{i.selected=this._isAllSelected,this._isAllSelected?this._selectionManager.add(i.data):this._selectionManager.remove(i.data);let o=b.getRowByIndex(t,a);o&&this._adapter.updateSelectedState(o,this._isAllSelected)});let l={status:this._isAllSelected,count:this._tableRows.filter(i=>i.selected).length,data:[...this._data],targetType:"select-all"};this._adapter.emitHostEvent(s.events.SELECT_ALL,l,!0,!1)}_onHeadRowContextMenu(e){e.ctrlKey&&e.preventDefault()}_onHeadRowMouseDown(e){if(e.button!==0)return;let t=R(e),l=e.target,i=t.find(r=>r.tagName==="TR"),a=t.find(r=>r.tagName==="TH"),o=Array.from(i.cells).findIndex(r=>r===a);this._headCellMouseDownIndex=o,l!==a&&l.classList.contains(s.classes.TABLE_RESIZE_HANDLE)&&(this._resizeDescriptor={element:a,startWidth:a.offsetWidth,startX:e.pageX,width:a.offsetWidth,index:this._select?o-1:o},this._adapter.addDocumentListener("mousemove",this._documentMouseMoveListener),this._adapter.setResizeColumnVisibility(this._tableConfiguration,o,!0)),this._adapter.addDocumentListener("mouseup",this._documentMouseUpListener)}_onMouseMove(e){if(this._resizeDescriptor){let t=this._resizeDescriptor.startWidth+(e.pageX-this._resizeDescriptor.startX);t<this._minResizeWidth&&(t=this._minResizeWidth),this._resizeDescriptor.width=t,this._resizeDescriptor.element.style.width=`${t}px`,this._adapter.addTableClass(s.classes.TABLE_RESIZING)}}_onMouseUp(e){if(this._adapter.removeDocumentListener("mousemove",this._documentMouseMoveListener),this._adapter.removeDocumentListener("mouseup",this._documentMouseUpListener),this._adapter.removeTableClass(s.classes.TABLE_RESIZING),this._headCellMouseDownIndex!==void 0){if(this._resizeDescriptor){this._adapter.normalizeColumnWidths(this._tableConfiguration),this._adapter.setResizeColumnVisibility(this._tableConfiguration,this._headCellMouseDownIndex,!1);let t={index:this._resizeDescriptor.index,width:this._resizeDescriptor.width};this._adapter.emitHostEvent(s.events.COLUMN_RESIZE,t),this._resizeDescriptor=void 0}else this._tableConfiguration.tableElement.tHead.contains(e.target)&&(this._multiColumnSort?this._onMultiSort(this._headCellMouseDownIndex,e.ctrlKey):this._onSort(this._headCellMouseDownIndex));this._headCellMouseDownIndex=void 0}}_onSortableHeadCellKeydown(e){if(e.key===" "||e.key==="Enter"){let t=R(e),l=t.find(o=>o.tagName==="TR"),i=t.find(o=>o.tagName==="TH"),a=Array.from(l.cells).findIndex(o=>o===i);this._onSort(a)}}_onSort(e){let t=this._select?e-1:e,l=t>=0?this._visibleColumnConfigurations[t]:null;if(!l||!l.sortable)return;let i="ASC",a=t===this._sortedColumnIndex,o=this._sortDirection==="ASC"||this._sortDirection===void 0,r=a&&this._sortDirection==="DESC";a&&o&&(i="DESC"),r&&!l.preventUnsort&&(i="UNSET");let c={direction:i,columnIndex:t};if(this._adapter.emitHostEvent(s.events.SORT,c,!0,!0)){if(a&&this._sortDirection==="DESC"&&!l.preventUnsort){this._adapter.removeColumnSort(this._adapter.getTableElement(),this._select?this._sortedColumnIndex+1:this._sortedColumnIndex),this._sortedColumnIndex=-1;return}this._sortDirection=i,t===this._sortedColumnIndex?this._adapter.setSortDirection(this._adapter.getTableElement(),e,this._sortDirection):(this._sortedColumnIndex>=0&&this._adapter.removeColumnSort(this._adapter.getTableElement(),this._select?this._sortedColumnIndex+1:this._sortedColumnIndex),this._sortedColumnIndex=t,this._adapter.setSortedColumn(this._adapter.getTableElement(),e,this._sortDirection))}}_onMultiSort(e,t){let l=this._select?e-1:e,i=l>=0?this._visibleColumnConfigurations[l]:null;if(!i||!i.sortable)return;let a=this._multiSortManager.sortedColumns,o=this._multiSortManager.getSortColumn(l);o?this._multiSortManager.updateSortColumn(o):t?this._multiSortManager.addSortColumn({direction:"DESC",columnIndex:l,propertyName:i.property}):(this._multiSortManager.clearMultiSort(),this._multiSortManager.addSortColumn({direction:"DESC",columnIndex:l,propertyName:i.property}));let r=this._multiSortManager.sortedColumns.map(d=>h({},d));if(!this._adapter.emitHostEvent(s.events.SORT,r,!0,!0)){this._multiSortManager.setSortColumns(a);return}let m=this._multiSortManager.sortedColumns.length>1;for(let d=0;d<this._visibleColumnConfigurations.length;d++){let u=this._select?d+1:d;if(!this._multiSortManager.isSortColumn(d))this._adapter.removeColumnSort(this._adapter.getTableElement(),u),b.setMultiSortColumnSortNumber(this._adapter.getTableElement(),m,u,null);else{let C=this._multiSortManager.getSortColumn(d);C&&(this._adapter.setSortedColumn(this._adapter.getTableElement(),u,C.direction),b.setMultiSortColumnSortNumber(this._adapter.getTableElement(),m,u,C.sortOrder||null))}}}_onFilter(e,t){let l={value:e,columnIndex:t};this._adapter.emitHostEvent(s.events.FILTER,l,!0,!1)}_shiftSelectRows(e){let t=[];if(this._previouslyClickedRow){let l=this._previouslyClickedRow.index,i=e.index,a=i>=l?l:i,o=i>=l?i:l;o+=o>a?1:0,a+=a>o?1:0;let r=d=>this.selectRows(d,!1),c=this._tableRows.find(d=>d.selected&&d.data===e.data),m=this._tableRows.find(d=>{var u;return d.data===((u=this._previouslyClickedRow)==null?void 0:u.data)&&!d.selected});(!c||m)&&(r=d=>this.deselectRows(d));for(let d=a;d<o;d++)t.push(d);r(this.data.filter((d,u)=>t.includes(u)))}return t}_isIndeterminate(e){return!e&&this.getSelectedRows().length>0&&this._data.length!==this.getSelectedRows().length}_applyRoomy(){this._adapter.setRoomy(this._adapter.getTableElement(),this._roomy),this._adapter.setHostAttribute(s.attributes.ROOMY,this._roomy.toString())}_refreshTableSort(){if(this._sortedColumnIndex=this._visibleColumnConfigurations.findIndex(e=>e.initialSort),this._sortDirection=this._sortedColumnIndex>=0?this._visibleColumnConfigurations[this._sortedColumnIndex].sortDirection:void 0,this._multiColumnSort){let e=[];this._visibleColumnConfigurations.forEach((t,l)=>{typeof t.initialSort=="object"&&e.push({columnIndex:l,direction:t.initialSort.direction,sortOrder:t.initialSort.sortOrder,propertyName:t.property})}),this._multiSortManager.setSortColumns(e)}}};var E=class extends J{constructor(){super();se.define(te),this._foundation=new z(new k(this))}static get observedAttributes(){return[s.attributes.SELECT,s.attributes.MULTISELECT,s.attributes.SELECT_KEY,s.attributes.DENSE,s.attributes.ROOMY,s.attributes.FILTER,s.attributes.FIXED_HEADERS,s.attributes.LAYOUT_TYPE,s.attributes.WRAP_CONTENT,s.attributes.RESIZABLE,s.attributes.MIN_RESIZE_WIDTH,s.attributes.ALLOW_ROW_CLICK,s.attributes.MULTI_COLUMN_SORT,s.attributes.SELECT_CHECKBOX_ALIGNMENT,s.attributes.TOOLTIP_SELECT,s.attributes.TOOLTIP_SELECT_ALL]}initializedCallback(){this._foundation.initialize()}connectedCallback(){this._foundation.connect()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,l,i){switch(t){case s.attributes.SELECT:this.select=L(i);break;case s.attributes.MULTISELECT:this.multiselect=L(i);break;case s.attributes.SELECT_KEY:this.selectKey=i;break;case s.attributes.DENSE:this.dense=L(i);break;case s.attributes.ROOMY:this.roomy=L(i);break;case s.attributes.FILTER:this.filter=L(i);break;case s.attributes.FIXED_HEADERS:this.fixedHeaders=L(i);break;case s.attributes.LAYOUT_TYPE:this.layoutType=i;break;case s.attributes.WRAP_CONTENT:this.wrapContent=L(i);break;case s.attributes.RESIZABLE:this.resizable=L(i);break;case s.attributes.MIN_RESIZE_WIDTH:this.minResizeWidth=G(i);break;case s.attributes.ALLOW_ROW_CLICK:this.allowRowClick=L(i);break;case s.attributes.MULTI_COLUMN_SORT:this.multiColumnSort=L(i);break;case s.attributes.SELECT_CHECKBOX_ALIGNMENT:this.selectCheckboxAlignment=this.getAttribute(s.attributes.SELECT_CHECKBOX_ALIGNMENT)||"center";break;case s.attributes.TOOLTIP_SELECT:this.tooltipSelect=i;break;case s.attributes.TOOLTIP_SELECT_ALL:this.tooltipSelectAll=i;break}}hideColumn(t){this._foundation.hideColumn(t)}showColumn(t){this._foundation.showColumn(t)}isColumnHidden(t){return this._foundation.isColumnHidden(t)}getSelectedRows(){return this._foundation.getSelectedRows()}selectRow(t){this._foundation.selectRows([t],!1)}selectRows(t,l=!1){this._foundation.selectRows(t,!l)}deselectRow(t){this._foundation.deselectRows([t])}deselectRows(t){this._foundation.deselectRows(t)}clearSelections(){this._foundation.clearSelections()}render(){this._foundation.render()}expandRow(t,l){return this._foundation.expandRow(t,l)}collapseRow(t){return this._foundation.collapseRow(t)}isRowExpanded(t){return this._foundation.isRowExpanded(t)}selectRowsByIndex(t,l){typeof t=="number"?this._foundation.selectRowsByIndex([t],l):Array.isArray(t)&&this._foundation.selectRowsByIndex(t,l)}deselectRowsByIndex(t){typeof t=="number"?this._foundation.deselectRowsByIndex([t]):Array.isArray(t)&&this._foundation.deselectRowsByIndex(t)}isRowSelected(t){return this._foundation.isRowSelected(t)}};_([T()],E.prototype,"data",2),_([T()],E.prototype,"columnConfigurations",2),_([T()],E.prototype,"select",2),_([T()],E.prototype,"multiselect",2),_([T()],E.prototype,"selectKey",2),_([T()],E.prototype,"tooltipSelect",2),_([T()],E.prototype,"tooltipSelectAll",2),_([T()],E.prototype,"dense",2),_([T()],E.prototype,"roomy",2),_([T()],E.prototype,"filter",2),_([T()],E.prototype,"fixedHeaders",2),_([T()],E.prototype,"layoutType",2),_([T()],E.prototype,"wrapContent",2),_([T()],E.prototype,"resizable",2),_([T()],E.prototype,"minResizeWidth",2),_([T()],E.prototype,"allowRowClick",2),_([T()],E.prototype,"multiColumnSort",2),_([T()],E.prototype,"rowCreated",2),_([T()],E.prototype,"cellCreated",2),_([T()],E.prototype,"selectAllTemplate",2),_([T()],E.prototype,"selectCheckboxAlignment",2),E=_([j({name:s.elementName,dependencies:[ae,oe,re]})],E);function El(){q(E)}export{s as a,B as b,O as c,he as d,k as e,P as f,z as g,E as h,El as i};
|
|
7
|
+
//# sourceMappingURL=chunk.IO3TM653.js.map
|