@tylertech/forge 2.3.0 → 2.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -5
- package/custom-elements.json +114521 -0
- package/dist/esm/accordion/index.js +6 -5
- package/dist/esm/app-bar/help-button/index.js +16 -15
- package/dist/esm/app-bar/index.js +26 -25
- package/dist/esm/app-bar/menu-button/index.js +7 -6
- package/dist/esm/app-bar/notification-button/index.js +8 -7
- package/dist/esm/app-bar/profile-button/index.js +12 -11
- package/dist/esm/app-bar/search/index.js +5 -4
- package/dist/esm/autocomplete/index.js +18 -17
- 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 +7 -6
- package/dist/esm/bottom-sheet/index.js +10 -9
- package/dist/esm/busy-indicator/index.js +8 -7
- package/dist/esm/button/index.js +4 -3
- package/dist/esm/button-toggle/button-toggle/index.js +3 -3
- package/dist/esm/button-toggle/button-toggle-group/index.js +3 -3
- package/dist/esm/button-toggle/index.js +4 -4
- package/dist/esm/calendar/calendar-dropdown/index.js +5 -4
- package/dist/esm/calendar/calendar-menu/index.js +3 -2
- package/dist/esm/calendar/index.js +11 -10
- package/dist/esm/card/index.js +1 -1
- package/dist/esm/checkbox/index.js +4 -3
- package/dist/esm/chip-field/index.js +8 -7
- package/dist/esm/chips/chip/index.js +6 -5
- package/dist/esm/chips/chip-set/index.js +6 -5
- package/dist/esm/chips/index.js +7 -6
- package/dist/esm/chunks/{chunk.PZ25GQD2.js → chunk.2MBI5DLT.js} +6 -6
- package/dist/esm/chunks/{chunk.PZ25GQD2.js.map → chunk.2MBI5DLT.js.map} +2 -2
- package/dist/esm/chunks/{chunk.B425FZOZ.js → chunk.2WBHHTUM.js} +2 -2
- package/dist/esm/chunks/{chunk.B425FZOZ.js.map → chunk.2WBHHTUM.js.map} +2 -2
- package/dist/esm/chunks/{chunk.WXFCZJJI.js → chunk.3EHQ3YHJ.js} +1 -1
- package/dist/esm/chunks/{chunk.WXFCZJJI.js.map → chunk.3EHQ3YHJ.js.map} +2 -2
- package/dist/esm/chunks/{chunk.LKUKESRQ.js → chunk.3QXCVTCP.js} +2 -2
- package/dist/esm/chunks/{chunk.LKUKESRQ.js.map → chunk.3QXCVTCP.js.map} +0 -0
- package/dist/esm/chunks/{chunk.ZIFMMVW6.js → chunk.46BED43J.js} +3 -3
- package/dist/esm/chunks/{chunk.ZIFMMVW6.js.map → chunk.46BED43J.js.map} +2 -2
- package/dist/esm/chunks/{chunk.VTXXZ5KT.js → chunk.4PF7WRP4.js} +2 -2
- package/dist/esm/chunks/{chunk.VTXXZ5KT.js.map → chunk.4PF7WRP4.js.map} +2 -2
- package/dist/esm/chunks/{chunk.KZ2QNQK2.js → chunk.4WLVFWKI.js} +2 -2
- package/dist/esm/chunks/{chunk.KZ2QNQK2.js.map → chunk.4WLVFWKI.js.map} +0 -0
- package/dist/esm/chunks/{chunk.C2MR3RDF.js → chunk.56BNM7F2.js} +1 -1
- package/dist/esm/chunks/{chunk.C2MR3RDF.js.map → chunk.56BNM7F2.js.map} +2 -2
- package/dist/esm/chunks/{chunk.HNKH3ZP5.js → chunk.5H65ASFE.js} +74 -74
- package/dist/esm/chunks/{chunk.HNKH3ZP5.js.map → chunk.5H65ASFE.js.map} +0 -0
- package/dist/esm/chunks/{chunk.3AK3VGRT.js → chunk.5OYAJ36F.js} +2 -2
- package/dist/esm/chunks/{chunk.3AK3VGRT.js.map → chunk.5OYAJ36F.js.map} +0 -0
- package/dist/esm/chunks/{chunk.4UKSUUTX.js → chunk.5U6ZT6MC.js} +2 -2
- package/dist/esm/chunks/{chunk.4UKSUUTX.js.map → chunk.5U6ZT6MC.js.map} +2 -2
- package/dist/esm/chunks/{chunk.3NOZRZ7R.js → chunk.65GHMPX2.js} +3 -3
- package/dist/esm/chunks/{chunk.3NOZRZ7R.js.map → chunk.65GHMPX2.js.map} +2 -2
- package/dist/esm/chunks/{chunk.C44LSSHS.js → chunk.67B6JDOJ.js} +3 -3
- package/dist/esm/chunks/{chunk.C44LSSHS.js.map → chunk.67B6JDOJ.js.map} +2 -2
- package/dist/esm/chunks/chunk.6EGTLHJS.js +16 -0
- package/dist/esm/chunks/chunk.6EGTLHJS.js.map +7 -0
- package/dist/esm/chunks/{chunk.EL6B2ODN.js → chunk.6ZBFCE2A.js} +1 -1
- package/dist/esm/chunks/{chunk.EL6B2ODN.js.map → chunk.6ZBFCE2A.js.map} +2 -2
- package/dist/esm/chunks/{chunk.VAPJ75PS.js → chunk.7FWTBD6Y.js} +2 -2
- package/dist/esm/chunks/{chunk.VAPJ75PS.js.map → chunk.7FWTBD6Y.js.map} +0 -0
- package/dist/esm/chunks/{chunk.KCK3G74Y.js → chunk.7UAH67PT.js} +2 -2
- package/dist/esm/chunks/{chunk.KCK3G74Y.js.map → chunk.7UAH67PT.js.map} +2 -2
- package/dist/esm/chunks/{chunk.BORNGK7Q.js → chunk.ANME7BKM.js} +2 -2
- package/dist/esm/chunks/{chunk.BORNGK7Q.js.map → chunk.ANME7BKM.js.map} +2 -2
- package/dist/esm/chunks/{chunk.5INCRYSV.js → chunk.BEAJZPWS.js} +2 -2
- package/dist/esm/chunks/{chunk.5INCRYSV.js.map → chunk.BEAJZPWS.js.map} +0 -0
- package/dist/esm/chunks/{chunk.Y2ORADJS.js → chunk.BVGJFMEG.js} +8 -8
- package/dist/esm/chunks/{chunk.Y2ORADJS.js.map → chunk.BVGJFMEG.js.map} +2 -2
- package/dist/esm/chunks/{chunk.L65L5VJ6.js → chunk.C73AZRT4.js} +4 -4
- package/dist/esm/chunks/{chunk.L65L5VJ6.js.map → chunk.C73AZRT4.js.map} +2 -2
- package/dist/esm/chunks/{chunk.4ZBBOR4H.js → chunk.CLEUHAZ6.js} +2 -2
- package/dist/esm/chunks/{chunk.4ZBBOR4H.js.map → chunk.CLEUHAZ6.js.map} +2 -2
- package/dist/esm/chunks/{chunk.V3FSZDTW.js → chunk.CMXAORYF.js} +5 -5
- package/dist/esm/chunks/{chunk.V3FSZDTW.js.map → chunk.CMXAORYF.js.map} +2 -2
- package/dist/esm/chunks/{chunk.U35QQZVK.js → chunk.D33KLIFD.js} +1 -1
- package/dist/esm/chunks/{chunk.U35QQZVK.js.map → chunk.D33KLIFD.js.map} +2 -2
- package/dist/esm/chunks/{chunk.5EEEKOOK.js → chunk.DLF5JAQO.js} +1 -1
- package/dist/esm/chunks/{chunk.5EEEKOOK.js.map → chunk.DLF5JAQO.js.map} +2 -2
- package/dist/esm/chunks/{chunk.ZUM5YLB2.js → chunk.E26BROOG.js} +1 -1
- package/dist/esm/chunks/{chunk.ZUM5YLB2.js.map → chunk.E26BROOG.js.map} +2 -2
- package/dist/esm/chunks/{chunk.UM3J4AZ7.js → chunk.EBC2HGO3.js} +4 -4
- package/dist/esm/chunks/chunk.EBC2HGO3.js.map +7 -0
- package/dist/esm/chunks/{chunk.YCW56AVX.js → chunk.FJJVIMZ2.js} +1 -1
- package/dist/esm/chunks/{chunk.YCW56AVX.js.map → chunk.FJJVIMZ2.js.map} +2 -2
- package/dist/esm/chunks/{chunk.HHHMDDTU.js → chunk.FZ6KICMD.js} +1 -1
- package/dist/esm/chunks/{chunk.HHHMDDTU.js.map → chunk.FZ6KICMD.js.map} +2 -2
- package/dist/esm/chunks/{chunk.D4VIYWFB.js → chunk.GHZ75UPO.js} +3 -3
- package/dist/esm/chunks/{chunk.D4VIYWFB.js.map → chunk.GHZ75UPO.js.map} +2 -2
- package/dist/esm/chunks/{chunk.SJZ54RE3.js → chunk.GL72QT42.js} +1 -1
- package/dist/esm/chunks/{chunk.SJZ54RE3.js.map → chunk.GL72QT42.js.map} +2 -2
- package/dist/esm/chunks/{chunk.PCYIY5OY.js → chunk.GNAIKBO6.js} +2 -2
- package/dist/esm/chunks/{chunk.PCYIY5OY.js.map → chunk.GNAIKBO6.js.map} +2 -2
- package/dist/esm/chunks/{chunk.IWXT6VVJ.js → chunk.GOWHXADJ.js} +15 -1
- package/dist/esm/chunks/chunk.GOWHXADJ.js.map +7 -0
- package/dist/esm/chunks/{chunk.G6FY472A.js → chunk.GWNR3UUX.js} +2 -2
- package/dist/esm/chunks/{chunk.G6FY472A.js.map → chunk.GWNR3UUX.js.map} +2 -2
- package/dist/esm/chunks/{chunk.2NUAEZY7.js → chunk.GXTNND2M.js} +1 -1
- package/dist/esm/chunks/{chunk.2NUAEZY7.js.map → chunk.GXTNND2M.js.map} +2 -2
- package/dist/esm/chunks/{chunk.YJ5X3WZ4.js → chunk.HASAPJMX.js} +1 -1
- package/dist/esm/chunks/{chunk.YJ5X3WZ4.js.map → chunk.HASAPJMX.js.map} +2 -2
- package/dist/esm/chunks/{chunk.EWQENJ4W.js → chunk.HMM7PGGZ.js} +2 -2
- package/dist/esm/chunks/{chunk.EWQENJ4W.js.map → chunk.HMM7PGGZ.js.map} +2 -2
- package/dist/esm/chunks/{chunk.IYOZSEZ3.js → chunk.I6PJGNJS.js} +2 -2
- package/dist/esm/chunks/{chunk.IYOZSEZ3.js.map → chunk.I6PJGNJS.js.map} +2 -2
- package/dist/esm/chunks/{chunk.3ZKORL4I.js → chunk.I7BQUB7Z.js} +2 -2
- package/dist/esm/chunks/chunk.I7BQUB7Z.js.map +7 -0
- package/dist/esm/chunks/{chunk.XY3ZHN7Y.js → chunk.IBED5TWL.js} +1 -1
- package/dist/esm/chunks/{chunk.XY3ZHN7Y.js.map → chunk.IBED5TWL.js.map} +2 -2
- package/dist/esm/chunks/{chunk.47D77ELY.js → chunk.IGBDDH3J.js} +6 -6
- package/dist/esm/chunks/{chunk.47D77ELY.js.map → chunk.IGBDDH3J.js.map} +0 -0
- package/dist/esm/chunks/{chunk.RF5UPII7.js → chunk.IJW2YKP3.js} +13 -13
- package/dist/esm/chunks/{chunk.RF5UPII7.js.map → chunk.IJW2YKP3.js.map} +2 -2
- package/dist/esm/chunks/{chunk.5CZWANU6.js → chunk.ITQ55IPH.js} +4 -4
- package/dist/esm/chunks/{chunk.5CZWANU6.js.map → chunk.ITQ55IPH.js.map} +2 -2
- package/dist/esm/chunks/{chunk.IBH5GL7A.js → chunk.IUNON3UL.js} +2 -2
- package/dist/esm/chunks/{chunk.IBH5GL7A.js.map → chunk.IUNON3UL.js.map} +2 -2
- package/dist/esm/chunks/{chunk.5VNEDRVC.js → chunk.J5NUYQ4D.js} +6 -6
- package/dist/esm/chunks/{chunk.5VNEDRVC.js.map → chunk.J5NUYQ4D.js.map} +0 -0
- package/dist/esm/chunks/{chunk.DWURTRGM.js → chunk.JC2PZ4TS.js} +8 -8
- package/dist/esm/chunks/{chunk.DWURTRGM.js.map → chunk.JC2PZ4TS.js.map} +2 -2
- package/dist/esm/chunks/{chunk.7M3P4QES.js → chunk.JUXKYUD4.js} +9 -9
- package/dist/esm/chunks/{chunk.7M3P4QES.js.map → chunk.JUXKYUD4.js.map} +2 -2
- package/dist/esm/chunks/{chunk.6V463G4I.js → chunk.KCVJDJ6K.js} +1 -1
- package/dist/esm/chunks/{chunk.6V463G4I.js.map → chunk.KCVJDJ6K.js.map} +2 -2
- package/dist/esm/chunks/{chunk.DKHOY6QU.js → chunk.KNR5DXE4.js} +2 -2
- package/dist/esm/chunks/{chunk.DKHOY6QU.js.map → chunk.KNR5DXE4.js.map} +2 -2
- package/dist/esm/chunks/{chunk.C64YUJHS.js → chunk.L344BPCW.js} +2 -2
- package/dist/esm/chunks/{chunk.C64YUJHS.js.map → chunk.L344BPCW.js.map} +2 -2
- package/dist/esm/chunks/{chunk.HWWCD755.js → chunk.L4OUV7W6.js} +5 -5
- package/dist/esm/chunks/{chunk.HWWCD755.js.map → chunk.L4OUV7W6.js.map} +2 -2
- package/dist/esm/chunks/{chunk.EQCPRLUV.js → chunk.LHWZ4KZU.js} +3 -3
- package/dist/esm/chunks/{chunk.EQCPRLUV.js.map → chunk.LHWZ4KZU.js.map} +2 -2
- package/dist/esm/chunks/{chunk.KQB2BYBK.js → chunk.LK2DN5KX.js} +4 -4
- package/dist/esm/chunks/{chunk.KQB2BYBK.js.map → chunk.LK2DN5KX.js.map} +2 -2
- package/dist/esm/chunks/{chunk.7G2S3DCM.js → chunk.LX2HDAIF.js} +2 -2
- package/dist/esm/chunks/{chunk.7G2S3DCM.js.map → chunk.LX2HDAIF.js.map} +2 -2
- package/dist/esm/chunks/{chunk.YDPSV74L.js → chunk.M3O5VPDD.js} +3 -3
- package/dist/esm/chunks/{chunk.YDPSV74L.js.map → chunk.M3O5VPDD.js.map} +0 -0
- package/dist/esm/chunks/{chunk.NJRPAX7P.js → chunk.MBZLA635.js} +30 -29
- package/dist/esm/chunks/chunk.MBZLA635.js.map +7 -0
- package/dist/esm/chunks/{chunk.XJVLHRVJ.js → chunk.MF3IZXQG.js} +2 -2
- package/dist/esm/chunks/{chunk.XJVLHRVJ.js.map → chunk.MF3IZXQG.js.map} +2 -2
- package/dist/esm/chunks/{chunk.HFELDK4X.js → chunk.MUP3NY6M.js} +9 -9
- package/dist/esm/chunks/{chunk.HFELDK4X.js.map → chunk.MUP3NY6M.js.map} +2 -2
- package/dist/esm/chunks/{chunk.2F6PST3N.js → chunk.OXS2O7RG.js} +1 -1
- package/dist/esm/chunks/{chunk.2F6PST3N.js.map → chunk.OXS2O7RG.js.map} +2 -2
- package/dist/esm/chunks/{chunk.RMVJBNCY.js → chunk.PKZ43JNW.js} +4 -4
- package/dist/esm/chunks/{chunk.RMVJBNCY.js.map → chunk.PKZ43JNW.js.map} +2 -2
- package/dist/esm/chunks/{chunk.3VR7VHL5.js → chunk.PM7D2SUE.js} +1 -1
- package/dist/esm/chunks/{chunk.3VR7VHL5.js.map → chunk.PM7D2SUE.js.map} +0 -0
- package/dist/esm/chunks/{chunk.WAJDLUSQ.js → chunk.QHHYCB7N.js} +1 -1
- package/dist/esm/chunks/{chunk.WAJDLUSQ.js.map → chunk.QHHYCB7N.js.map} +2 -2
- package/dist/esm/chunks/{chunk.I5JCM7RT.js → chunk.QWW6A7AF.js} +6 -6
- package/dist/esm/chunks/{chunk.I5JCM7RT.js.map → chunk.QWW6A7AF.js.map} +2 -2
- package/dist/esm/chunks/{chunk.OYO6NUZY.js → chunk.QXZZ2MTF.js} +1 -1
- package/dist/esm/chunks/{chunk.OYO6NUZY.js.map → chunk.QXZZ2MTF.js.map} +2 -2
- package/dist/esm/chunks/{chunk.P477KUJ4.js → chunk.QYWAZCBX.js} +3 -3
- package/dist/esm/chunks/chunk.QYWAZCBX.js.map +7 -0
- package/dist/esm/chunks/{chunk.Y2TDQIA4.js → chunk.RD4RIFOZ.js} +1 -1
- package/dist/esm/chunks/{chunk.Y2TDQIA4.js.map → chunk.RD4RIFOZ.js.map} +2 -2
- package/dist/esm/chunks/{chunk.YKNYR3NX.js → chunk.RL7ZFLMG.js} +6 -6
- package/dist/esm/chunks/{chunk.YKNYR3NX.js.map → chunk.RL7ZFLMG.js.map} +2 -2
- package/dist/esm/chunks/{chunk.VEC77KBM.js → chunk.S3UVF647.js} +2 -2
- package/dist/esm/chunks/{chunk.VEC77KBM.js.map → chunk.S3UVF647.js.map} +2 -2
- package/dist/esm/chunks/{chunk.RWCC6E4O.js → chunk.THKWQXBJ.js} +1 -1
- package/dist/esm/chunks/{chunk.RWCC6E4O.js.map → chunk.THKWQXBJ.js.map} +2 -2
- package/dist/esm/chunks/{chunk.DVYPTR7X.js → chunk.TIUNGGBF.js} +4 -4
- package/dist/esm/chunks/{chunk.DVYPTR7X.js.map → chunk.TIUNGGBF.js.map} +0 -0
- package/dist/esm/chunks/{chunk.ZPABBQEA.js → chunk.TM46MNYN.js} +4 -4
- package/dist/esm/chunks/{chunk.ZPABBQEA.js.map → chunk.TM46MNYN.js.map} +2 -2
- package/dist/esm/chunks/{chunk.7XGNGXLR.js → chunk.TYU4RLZG.js} +1 -1
- package/dist/esm/chunks/{chunk.7XGNGXLR.js.map → chunk.TYU4RLZG.js.map} +2 -2
- package/dist/esm/chunks/{chunk.MSCWHFJZ.js → chunk.U37G47LH.js} +8 -8
- package/dist/esm/chunks/{chunk.MSCWHFJZ.js.map → chunk.U37G47LH.js.map} +2 -2
- package/dist/esm/chunks/{chunk.OZAKUOZA.js → chunk.U5ECVIX5.js} +5 -5
- package/dist/esm/chunks/{chunk.OZAKUOZA.js.map → chunk.U5ECVIX5.js.map} +2 -2
- package/dist/esm/chunks/{chunk.O7DYWQD7.js → chunk.UPW5HUKB.js} +5 -5
- package/dist/esm/chunks/{chunk.O7DYWQD7.js.map → chunk.UPW5HUKB.js.map} +2 -2
- package/dist/esm/chunks/{chunk.NL6CT7BU.js → chunk.UQ3QTUUB.js} +2 -2
- package/dist/esm/chunks/{chunk.NL6CT7BU.js.map → chunk.UQ3QTUUB.js.map} +2 -2
- package/dist/esm/chunks/{chunk.JVQP6BJ3.js → chunk.V2ELLBDP.js} +1 -1
- package/dist/esm/chunks/{chunk.JVQP6BJ3.js.map → chunk.V2ELLBDP.js.map} +2 -2
- package/dist/esm/chunks/{chunk.2LQMHAC7.js → chunk.V6Q2SM6Y.js} +1 -1
- package/dist/esm/chunks/{chunk.2LQMHAC7.js.map → chunk.V6Q2SM6Y.js.map} +2 -2
- package/dist/esm/chunks/{chunk.U7HKGOBR.js → chunk.VXAPRFMK.js} +4 -4
- package/dist/esm/chunks/{chunk.U7HKGOBR.js.map → chunk.VXAPRFMK.js.map} +2 -2
- package/dist/esm/chunks/{chunk.H3WRHPWA.js → chunk.VXVE7KEM.js} +4 -4
- package/dist/esm/chunks/{chunk.H3WRHPWA.js.map → chunk.VXVE7KEM.js.map} +2 -2
- package/dist/esm/chunks/{chunk.P7NOYP4O.js → chunk.WDD2GTIH.js} +1 -1
- package/dist/esm/chunks/{chunk.P7NOYP4O.js.map → chunk.WDD2GTIH.js.map} +2 -2
- package/dist/esm/chunks/{chunk.RNPIV3BY.js → chunk.WNVZQDNS.js} +1 -1
- package/dist/esm/chunks/{chunk.RNPIV3BY.js.map → chunk.WNVZQDNS.js.map} +2 -2
- package/dist/esm/chunks/{chunk.V6TRG2CM.js → chunk.WSH4S3GM.js} +2 -2
- package/dist/esm/chunks/{chunk.V6TRG2CM.js.map → chunk.WSH4S3GM.js.map} +2 -2
- package/dist/esm/chunks/{chunk.HVD3BBQG.js → chunk.XHMNHBZD.js} +2 -2
- package/dist/esm/chunks/{chunk.HVD3BBQG.js.map → chunk.XHMNHBZD.js.map} +2 -2
- package/dist/esm/chunks/{chunk.DB7ZQBES.js → chunk.YL2NAVJW.js} +1 -1
- package/dist/esm/chunks/{chunk.DB7ZQBES.js.map → chunk.YL2NAVJW.js.map} +2 -2
- package/dist/esm/chunks/{chunk.FF2RETWV.js → chunk.ZLF2G3YT.js} +11 -11
- package/dist/esm/chunks/{chunk.FF2RETWV.js.map → chunk.ZLF2G3YT.js.map} +2 -2
- package/dist/esm/chunks/{chunk.EKIW7VYG.js → chunk.ZXIDTDRC.js} +1 -1
- package/dist/esm/chunks/{chunk.EKIW7VYG.js.map → chunk.ZXIDTDRC.js.map} +2 -2
- package/dist/esm/circular-progress/index.js +1 -1
- package/dist/esm/color-picker/index.js +7 -6
- package/dist/esm/core/index.js +5 -1
- package/dist/esm/core/utils/index.js +5 -1
- package/dist/esm/date-picker/index.js +14 -13
- package/dist/esm/date-range-picker/index.js +14 -13
- package/dist/esm/dialog/index.js +10 -9
- package/dist/esm/divider/index.js +1 -1
- package/dist/esm/drawer/base/index.js +2 -1
- package/dist/esm/drawer/drawer/index.js +3 -2
- package/dist/esm/drawer/index.js +6 -5
- package/dist/esm/drawer/mini-drawer/index.js +3 -2
- package/dist/esm/drawer/modal-drawer/index.js +4 -3
- package/dist/esm/expansion-panel/index.js +5 -4
- package/dist/esm/file-picker/index.js +5 -4
- package/dist/esm/floating-action-button/index.js +2 -2
- package/dist/esm/icon/index.js +3 -2
- package/dist/esm/icon-button/index.js +5 -4
- package/dist/esm/index.js +90 -86
- package/dist/esm/inline-message/index.js +1 -1
- package/dist/esm/keyboard-shortcut/index.js +1 -1
- package/dist/esm/label-value/index.js +1 -1
- package/dist/esm/linear-progress/index.js +1 -1
- package/dist/esm/list/index.js +3 -3
- package/dist/esm/list/list/index.js +3 -3
- package/dist/esm/list/list-item/index.js +2 -2
- package/dist/esm/list-dropdown/index.js +10 -9
- package/dist/esm/menu/index.js +13 -12
- package/dist/esm/open-icon/index.js +4 -3
- package/dist/esm/page-state/index.js +1 -1
- package/dist/esm/paginator/index.js +23 -22
- package/dist/esm/popup/index.js +1 -1
- package/dist/esm/product-icon/index.js +1 -1
- package/dist/esm/profile-card/index.js +7 -6
- package/dist/esm/quantity-field/index.js +6 -5
- package/dist/esm/radio/index.js +2 -2
- package/dist/esm/ripple/index.js +1 -1
- package/dist/esm/scaffold/index.js +1 -1
- package/dist/esm/select/core/index.js +14 -13
- package/dist/esm/select/index.js +21 -20
- 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 +19 -18
- package/dist/esm/select/select-dropdown/index.js +19 -18
- package/dist/esm/skeleton/index.js +1 -1
- package/dist/esm/slider/index.js +3 -2
- package/dist/esm/stepper/index.js +6 -5
- package/dist/esm/stepper/step/index.js +5 -4
- package/dist/esm/stepper/stepper/index.js +6 -5
- package/dist/esm/switch/index.js +3 -2
- package/dist/esm/table/index.js +9 -8
- package/dist/esm/tabs/index.js +8 -7
- package/dist/esm/tabs/tab/index.js +3 -3
- package/dist/esm/tabs/tab-bar/index.js +7 -6
- package/dist/esm/text-field/index.js +1 -1
- package/dist/esm/time-picker/index.js +18 -17
- package/dist/esm/toast/index.js +7 -6
- package/dist/esm/toolbar/index.js +1 -1
- package/dist/esm/tooltip/index.js +1 -1
- package/dist/esm/view-switcher/index.js +2 -2
- package/dist/esm/view-switcher/view/index.js +1 -1
- package/dist/forge-dark.css +1 -1
- package/esm/accordion/accordion.d.ts +2 -0
- package/esm/accordion/accordion.js +2 -0
- package/esm/app-bar/app-bar.d.ts +5 -1
- package/esm/app-bar/app-bar.js +5 -1
- package/esm/app-bar/help-button/app-bar-help-button.d.ts +5 -0
- package/esm/app-bar/help-button/app-bar-help-button.js +5 -0
- package/esm/app-bar/menu-button/app-bar-menu-button.d.ts +5 -0
- package/esm/app-bar/menu-button/app-bar-menu-button.js +5 -0
- package/esm/app-bar/notification-button/app-bar-notification-button.d.ts +5 -0
- package/esm/app-bar/notification-button/app-bar-notification-button.js +5 -0
- package/esm/app-bar/profile-button/app-bar-profile-button.d.ts +5 -0
- package/esm/app-bar/profile-button/app-bar-profile-button.js +5 -0
- package/esm/app-bar/search/app-bar-search.d.ts +26 -0
- package/esm/app-bar/search/app-bar-search.js +26 -0
- package/esm/autocomplete/autocomplete.d.ts +2 -0
- package/esm/autocomplete/autocomplete.js +2 -0
- package/esm/avatar/avatar.d.ts +2 -0
- package/esm/avatar/avatar.js +2 -0
- package/esm/backdrop/backdrop.d.ts +2 -0
- package/esm/backdrop/backdrop.js +2 -0
- package/esm/badge/badge.d.ts +5 -0
- package/esm/badge/badge.js +5 -0
- package/esm/banner/banner.d.ts +2 -0
- package/esm/banner/banner.js +2 -0
- package/esm/bottom-sheet/bottom-sheet.d.ts +5 -0
- package/esm/bottom-sheet/bottom-sheet.js +5 -0
- package/esm/busy-indicator/busy-indicator.d.ts +5 -1
- package/esm/busy-indicator/busy-indicator.js +5 -1
- package/esm/button/button.d.ts +2 -0
- package/esm/button/button.js +2 -0
- package/esm/button-toggle/button-toggle/button-toggle.d.ts +5 -0
- package/esm/button-toggle/button-toggle/button-toggle.js +5 -0
- package/esm/button-toggle/button-toggle-group/button-toggle-group.d.ts +5 -0
- package/esm/button-toggle/button-toggle-group/button-toggle-group.js +5 -0
- package/esm/calendar/calendar-menu/calendar-menu.d.ts +6 -0
- package/esm/calendar/calendar-menu/calendar-menu.js +6 -0
- package/esm/calendar/calendar.d.ts +5 -0
- package/esm/calendar/calendar.js +5 -0
- package/esm/card/card.d.ts +5 -1
- package/esm/card/card.js +5 -1
- package/esm/checkbox/checkbox.d.ts +2 -0
- package/esm/checkbox/checkbox.js +2 -0
- package/esm/chip-field/chip-field.d.ts +5 -0
- package/esm/chip-field/chip-field.js +5 -0
- package/esm/chips/chip/chip.d.ts +2 -0
- package/esm/chips/chip/chip.js +2 -0
- package/esm/chips/chip-set/chip-set.d.ts +5 -0
- package/esm/chips/chip-set/chip-set.js +5 -0
- package/esm/circular-progress/circular-progress.d.ts +5 -0
- package/esm/circular-progress/circular-progress.js +5 -0
- package/esm/color-picker/color-picker.d.ts +5 -0
- package/esm/color-picker/color-picker.js +5 -0
- package/esm/core/utils/event-utils.d.ts +12 -0
- package/esm/core/utils/event-utils.js +16 -0
- package/esm/core/utils/index.d.ts +1 -0
- package/esm/core/utils/index.js +1 -0
- package/esm/date-picker/date-picker.d.ts +5 -1
- package/esm/date-picker/date-picker.js +5 -1
- package/esm/date-range-picker/date-range-picker.d.ts +5 -1
- package/esm/date-range-picker/date-range-picker.js +5 -1
- package/esm/dialog/dialog.d.ts +5 -0
- package/esm/dialog/dialog.js +5 -0
- package/esm/divider/divider.d.ts +2 -0
- package/esm/divider/divider.js +2 -0
- package/esm/drawer/base/base-drawer-adapter.d.ts +5 -0
- package/esm/drawer/base/base-drawer-adapter.js +13 -0
- package/esm/drawer/base/base-drawer-foundation.js +2 -0
- package/esm/drawer/drawer/drawer.d.ts +5 -0
- package/esm/drawer/drawer/drawer.js +5 -0
- package/esm/drawer/mini-drawer/mini-drawer.d.ts +5 -0
- package/esm/drawer/mini-drawer/mini-drawer.js +5 -0
- package/esm/drawer/modal-drawer/modal-drawer.d.ts +5 -0
- package/esm/drawer/modal-drawer/modal-drawer.js +5 -0
- package/esm/expansion-panel/expansion-panel.d.ts +2 -0
- package/esm/expansion-panel/expansion-panel.js +2 -0
- package/esm/file-picker/file-picker.d.ts +5 -0
- package/esm/file-picker/file-picker.js +5 -0
- package/esm/floating-action-button/floating-action-button.d.ts +5 -1
- package/esm/floating-action-button/floating-action-button.js +5 -1
- package/esm/icon/icon.d.ts +5 -0
- package/esm/icon/icon.js +5 -0
- package/esm/icon-button/icon-button.d.ts +2 -0
- package/esm/icon-button/icon-button.js +2 -0
- package/esm/inline-message/inline-message.d.ts +5 -0
- package/esm/inline-message/inline-message.js +5 -0
- package/esm/keyboard-shortcut/keyboard-shortcut.d.ts +5 -0
- package/esm/keyboard-shortcut/keyboard-shortcut.js +5 -0
- package/esm/label-value/label-value.d.ts +5 -0
- package/esm/label-value/label-value.js +6 -1
- package/esm/linear-progress/linear-progress.d.ts +5 -0
- package/esm/linear-progress/linear-progress.js +5 -0
- package/esm/list/list/list.d.ts +2 -0
- package/esm/list/list/list.js +2 -0
- package/esm/list/list-item/list-item.d.ts +5 -1
- package/esm/list/list-item/list-item.js +5 -1
- package/esm/menu/menu.d.ts +5 -0
- package/esm/menu/menu.js +5 -0
- package/esm/open-icon/open-icon.d.ts +5 -0
- package/esm/open-icon/open-icon.js +5 -0
- package/esm/page-state/page-state.d.ts +5 -0
- package/esm/page-state/page-state.js +5 -0
- package/esm/paginator/paginator.d.ts +2 -0
- package/esm/paginator/paginator.js +2 -0
- package/esm/popup/popup.d.ts +5 -0
- package/esm/popup/popup.js +5 -0
- package/esm/product-icon/product-icon.d.ts +5 -0
- package/esm/product-icon/product-icon.js +5 -0
- package/esm/profile-card/profile-card.d.ts +5 -0
- package/esm/profile-card/profile-card.js +5 -0
- package/esm/quantity-field/quantity-field.d.ts +5 -0
- package/esm/quantity-field/quantity-field.js +5 -0
- package/esm/radio/radio.d.ts +2 -0
- package/esm/radio/radio.js +2 -0
- package/esm/ripple/ripple.d.ts +5 -0
- package/esm/ripple/ripple.js +5 -0
- package/esm/scaffold/scaffold.d.ts +2 -0
- package/esm/scaffold/scaffold.js +2 -0
- package/esm/select/option/option.d.ts +2 -0
- package/esm/select/option/option.js +2 -0
- package/esm/select/option-group/option-group.d.ts +2 -0
- package/esm/select/option-group/option-group.js +2 -0
- package/esm/select/select/select-adapter.js +12 -10
- package/esm/select/select/select-foundation.d.ts +2 -0
- package/esm/select/select/select-foundation.js +6 -2
- package/esm/select/select/select.d.ts +2 -2
- package/esm/select/select/select.js +4 -6
- package/esm/select/select-dropdown/select-dropdown.d.ts +5 -0
- package/esm/select/select-dropdown/select-dropdown.js +5 -0
- package/esm/skeleton/skeleton.d.ts +5 -0
- package/esm/skeleton/skeleton.js +5 -0
- package/esm/slider/slider.d.ts +2 -0
- package/esm/slider/slider.js +2 -0
- package/esm/stepper/step/step.d.ts +5 -0
- package/esm/stepper/step/step.js +5 -0
- package/esm/stepper/stepper/stepper.d.ts +5 -0
- package/esm/stepper/stepper/stepper.js +5 -0
- package/esm/switch/switch.d.ts +2 -0
- package/esm/switch/switch.js +2 -0
- package/esm/table/table.d.ts +3 -1
- package/esm/table/table.js +3 -1
- package/esm/tabs/tab/tab.d.ts +5 -0
- package/esm/tabs/tab/tab.js +5 -0
- package/esm/tabs/tab-bar/tab-bar.d.ts +2 -0
- package/esm/tabs/tab-bar/tab-bar.js +2 -0
- package/esm/text-field/text-field.d.ts +5 -0
- package/esm/text-field/text-field.js +5 -0
- package/esm/time-picker/time-picker.d.ts +5 -0
- package/esm/time-picker/time-picker.js +5 -0
- package/esm/toast/toast.d.ts +2 -0
- package/esm/toast/toast.js +2 -0
- package/esm/toolbar/toolbar.d.ts +5 -0
- package/esm/toolbar/toolbar.js +5 -0
- package/esm/tooltip/tooltip.d.ts +5 -1
- package/esm/tooltip/tooltip.js +5 -1
- package/esm/view-switcher/view/view.d.ts +5 -0
- package/esm/view-switcher/view/view.js +5 -0
- package/esm/view-switcher/view-switcher.d.ts +5 -0
- package/esm/view-switcher/view-switcher.js +5 -0
- package/package.json +3 -2
- package/styles/label-value/_mixins.scss +10 -7
- package/styles/label-value/_variables.scss +1 -0
- package/styles/select/select/_selector.scss +4 -2
- package/styles/select/select/select.scss +4 -0
- package/styles/theme/_theme-values.scss +1 -1
- package/styles/theme/_theme.scss +2 -1
- package/dist/esm/chunks/chunk.3ZKORL4I.js.map +0 -7
- package/dist/esm/chunks/chunk.IWXT6VVJ.js.map +0 -7
- package/dist/esm/chunks/chunk.NJRPAX7P.js.map +0 -7
- package/dist/esm/chunks/chunk.P477KUJ4.js.map +0 -7
- package/dist/esm/chunks/chunk.UM3J4AZ7.js.map +0 -7
- package/styles/label-value/_base.scss +0 -252
- package/styles/label-value/_core.scss +0 -15
- package/styles/label-value/_selector.scss +0 -167
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import {
|
|
7
7
|
ForgeRipple
|
|
8
|
-
} from "./chunk.
|
|
8
|
+
} from "./chunk.56BNM7F2.js";
|
|
9
9
|
import {
|
|
10
10
|
userInteractionListener
|
|
11
|
-
} from "./chunk.
|
|
11
|
+
} from "./chunk.PM7D2SUE.js";
|
|
12
12
|
import {
|
|
13
13
|
BaseComponentDelegate
|
|
14
14
|
} from "./chunk.WT4W2IFT.js";
|
|
@@ -255,4 +255,4 @@ export {
|
|
|
255
255
|
ButtonComponentDelegate,
|
|
256
256
|
defineButtonComponent
|
|
257
257
|
};
|
|
258
|
-
//# sourceMappingURL=chunk.
|
|
258
|
+
//# sourceMappingURL=chunk.QYWAZCBX.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/button/button-constants.ts", "../../src/button/button.ts", "../../src/button/button-component-delegate.ts", "../../src/button/index.ts"],
|
|
4
|
+
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}button`;\n\nconst classes = {\n BUTTON: 'forge-button',\n LABEL: 'forge-button__label',\n ICON: 'forge-button__icon',\n BUTTON_RAISED: 'forge-button--raised',\n BUTTON_UNELEVATED: 'forge-button--unelevated',\n BUTTON_OUTLINED: 'forge-button--outlined',\n BUTTON_DENSE: 'forge-button--dense',\n RIPPLE: 'forge-button__ripple'\n};\n\nconst selectors = {\n BUTTON: 'button',\n LABEL: `span:not(.${classes.RIPPLE})`,\n ICON: 'i,forge-icon,[data-forge-button-icon]',\n RIPPLE: `.${classes.RIPPLE}`\n};\n\nconst attributes = {\n TYPE: 'type',\n DISABLED: 'disabled'\n};\n\nexport const BUTTON_CONSTANTS = {\n elementName,\n classes,\n selectors,\n attributes\n};\n", "import { CustomElement, ensureChildren, toggleAttribute } from '@tylertech/forge-core';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\nimport { BUTTON_CONSTANTS } from './button-constants';\nimport { userInteractionListener } from '../core/utils';\nimport { ForgeRipple } from '../ripple';\n\nexport interface IButtonComponent extends IBaseComponent {\n type: string;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-button': IButtonComponent;\n }\n}\n\n/**\n * The custom element class behind the `<forge-button>` element.\n * \n * @tag forge-button\n */\n@CustomElement({\n name: BUTTON_CONSTANTS.elementName\n})\nexport class ButtonComponent extends BaseComponent implements IButtonComponent {\n public static get observedAttributes(): string[] {\n return [BUTTON_CONSTANTS.attributes.TYPE];\n }\n\n private _rippleInstance: ForgeRipple;\n private _buttonElement: HTMLButtonElement;\n private _type: string;\n private _mutationObserver: MutationObserver;\n private _buttonAttrMutationObserver: MutationObserver;\n\n constructor() {\n super();\n }\n\n public connectedCallback(): void {\n if (this.children.length) {\n this._initialize();\n } else {\n ensureChildren(this).then(() => this._initialize());\n }\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case BUTTON_CONSTANTS.attributes.TYPE:\n this.type = newValue;\n break;\n }\n }\n\n public disconnectedCallback(): void {\n if (this._rippleInstance) {\n this._rippleInstance.destroy();\n }\n if (this._mutationObserver) {\n this._mutationObserver.disconnect();\n }\n if (this._buttonAttrMutationObserver) {\n this._buttonAttrMutationObserver.disconnect();\n }\n }\n\n /**\n * Sets the type of button decoration.\n * Possible values are: raised, elevated, outlined, and dense.\n * Can be combined as: outlined-dense.\n */\n public get type(): string {\n return this._type;\n }\n public set type(value: string) {\n if (this._type !== value) {\n this._type = value;\n this._applyType(value);\n this.setAttribute(BUTTON_CONSTANTS.attributes.TYPE, this._type);\n }\n }\n\n private _applyType(type: string): void {\n if (this._buttonElement) {\n this._buttonElement.classList.remove(BUTTON_CONSTANTS.classes.BUTTON_RAISED);\n this._buttonElement.classList.remove(BUTTON_CONSTANTS.classes.BUTTON_UNELEVATED);\n this._buttonElement.classList.remove(BUTTON_CONSTANTS.classes.BUTTON_OUTLINED);\n this._buttonElement.classList.remove(BUTTON_CONSTANTS.classes.BUTTON_DENSE);\n\n if (type.includes('raised')) {\n this._buttonElement.classList.add(BUTTON_CONSTANTS.classes.BUTTON_RAISED);\n }\n if (type.includes('unelevated')) {\n this._buttonElement.classList.add(BUTTON_CONSTANTS.classes.BUTTON_UNELEVATED);\n }\n if (type.includes('outlined')) {\n this._buttonElement.classList.add(BUTTON_CONSTANTS.classes.BUTTON_OUTLINED);\n }\n if (type.includes('dense')) {\n this._buttonElement.classList.add(BUTTON_CONSTANTS.classes.BUTTON_DENSE);\n }\n }\n }\n\n private _initialize(): void {\n this._initializeButton();\n this._initializeMutationObserver();\n }\n\n private _initializeButton(): void {\n this._buttonElement = this.querySelector(BUTTON_CONSTANTS.selectors.BUTTON) as HTMLButtonElement;\n if (!this._buttonElement) {\n return;\n }\n\n if (this.hasAttribute(BUTTON_CONSTANTS.attributes.TYPE)) {\n this._type = this.getAttribute(BUTTON_CONSTANTS.attributes.TYPE) as string;\n this._applyType(this._type);\n }\n this._buttonElement.classList.add(BUTTON_CONSTANTS.classes.BUTTON);\n\n this._syncDisabledState();\n this._initializeButtonChildren();\n\n // We wait to initialize the ripple instance until the user interacts with the component to avoid unnecessary performance overhead\n this._deferRippleInitialization();\n }\n\n private async _deferRippleInitialization(): Promise<void> {\n const type = await userInteractionListener(this._buttonElement);\n if (!this._rippleInstance) {\n this._initRipple();\n if (type === 'focusin') {\n // eslint-disable-next-line @typescript-eslint/dot-notation\n (this._rippleInstance as ForgeRipple)['foundation'].handleFocus();\n }\n }\n }\n\n private _initRipple(): void {\n if (this._rippleInstance) {\n this._rippleInstance.destroy();\n }\n this._rippleInstance = new ForgeRipple(this._buttonElement);\n }\n\n private _initializeButtonChildren(): void {\n if (!this._buttonElement.querySelector(BUTTON_CONSTANTS.selectors.RIPPLE)) {\n const rippleElement = document.createElement('span');\n rippleElement.classList.add(BUTTON_CONSTANTS.classes.RIPPLE);\n this._buttonElement.appendChild(rippleElement);\n }\n\n const labelElement = this.querySelector(BUTTON_CONSTANTS.selectors.LABEL);\n if (labelElement) {\n labelElement.classList.add(BUTTON_CONSTANTS.classes.LABEL);\n }\n\n const iconElements = Array.from(this.querySelectorAll(BUTTON_CONSTANTS.selectors.ICON));\n iconElements.forEach(iconElement => {\n iconElement.classList.add(BUTTON_CONSTANTS.classes.ICON);\n if (!iconElement.hasAttribute('aria-hidden')) {\n iconElement.setAttribute('aria-hidden', 'true');\n }\n });\n }\n\n private _initializeMutationObserver(): void {\n if (!this._mutationObserver) {\n const config: MutationObserverInit = { childList: true, subtree: true };\n const callback: MutationCallback = mutationList => {\n if (this._buttonWasAdded(mutationList)) {\n this._initializeButton();\n } else if (mutationList.some(mutation => mutation.addedNodes.length)) {\n this._initializeButtonChildren();\n }\n };\n this._mutationObserver = new MutationObserver(callback);\n this._mutationObserver.observe(this, config);\n \n if (this._buttonElement) {\n // Watch attributes on the `<button>` element\n this._buttonAttrMutationObserver = new MutationObserver(mutationList => {\n if (mutationList.some(mutation => mutation.attributeName === 'disabled')) {\n this._syncDisabledState();\n }\n });\n this._buttonAttrMutationObserver.observe(this._buttonElement, { attributes: true, attributeFilter: ['disabled'] });\n }\n }\n }\n\n private _buttonWasAdded(mutationList: MutationRecord[]): boolean {\n return mutationList.some(mutation => {\n return Array.from(mutation.addedNodes)\n .some(node => node.nodeName.toLowerCase() === BUTTON_CONSTANTS.selectors.BUTTON);\n });\n }\n\n private _syncDisabledState(): void {\n toggleAttribute(this, this._buttonElement.disabled, BUTTON_CONSTANTS.attributes.DISABLED);\n }\n}\n\n", "import { BaseComponentDelegate, IBaseComponentDelegateConfig, IBaseComponentDelegateOptions } from '../core/delegates/base-component-delegate';\nimport { IButtonComponent } from './button';\nimport { BUTTON_CONSTANTS } from './button-constants';\n\nexport type ButtonComponentDelegateProps = Partial<IButtonComponent>;\nexport interface IButtonComponentDelegateOptions extends IBaseComponentDelegateOptions {\n type?: 'button' | 'submit';\n text?: string;\n}\nexport interface IButtonComponentDelegateConfig extends IBaseComponentDelegateConfig<IButtonComponent, IButtonComponentDelegateOptions> {}\n\nexport class ButtonComponentDelegate extends BaseComponentDelegate<IButtonComponent, IButtonComponentDelegateOptions> {\n private _buttonElement?: HTMLButtonElement;\n\n constructor(config?: IButtonComponentDelegateConfig) {\n super(config);\n }\n\n public override destroy(): void {\n this._buttonElement = undefined;\n }\n\n public get buttonElement(): HTMLButtonElement | undefined {\n return this._buttonElement;\n }\n\n protected _build(): IButtonComponent {\n const component = document.createElement(BUTTON_CONSTANTS.elementName);\n\n this._buttonElement = document.createElement('button');\n this._buttonElement.type = this._config.options?.type || 'button';\n this._buttonElement.textContent = this._config.options?.text || '';\n component.appendChild(this._buttonElement);\n\n return component;\n }\n\n public onClick(listener: (evt: MouseEvent) => void): void {\n this._buttonElement?.addEventListener('click', listener);\n }\n\n public onFocus(listener: (evt: Event) => void): void {\n this._buttonElement?.addEventListener('focus', evt => listener(evt));\n }\n\n public onBlur(listener: (evt: Event) => void): void {\n this._buttonElement?.addEventListener('blur', evt => listener(evt));\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\nimport { ButtonComponent } from './button';\n\nexport * from './button';\nexport * from './button-constants';\nexport * from './button-component-delegate';\n\nexport function defineButtonComponent(): void {\n defineCustomElement(ButtonComponent);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/select/option/option-adapter.ts", "../../src/select/option/option-constants.ts", "../../src/select/option/option-foundation.ts", "../../src/select/option/option.ts", "../../src/select/option/index.ts"],
|
|
4
|
-
"sourcesContent": ["import { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';\nimport { IOptionComponent } from './option';\n\nexport interface IOptionAdapter extends IBaseAdapter {\n setHostAttribute(name: string, value: string): void;\n removeHostAttribute(name: string): void;\n}\n\n/**\n * The DOM adapter behind the `<forge-option>` element.\n */\nexport class OptionAdapter extends BaseAdapter<IOptionComponent> {\n constructor(component: IOptionComponent) {\n super(component);\n }\n}\n", "import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}option`;\n\nconst attributes = {\n DISABLED: 'disabled',\n DIVIDER: 'divider',\n LABEL: 'label',\n LEADING_ICON_CLASS: 'leading-icon-class',\n LEADING_ICON_TYPE: 'leading-icon-type',\n LEADING_ICON: 'leading-icon',\n OPTION_CLASS: 'option-class',\n TRAILING_ICON_CLASS: 'trailing-icon-class',\n TRAILING_ICON_TYPE: 'trailing-icon-type',\n TRAILING_ICON: 'trailing-icon',\n VALUE: 'value'\n};\n\nexport const OPTION_CONSTANTS = {\n elementName,\n attributes\n};\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { IBaseListDropdownOption, ListDropdownIconType } from '../../list-dropdown/list-dropdown-constants';\nimport { IOptionAdapter } from './option-adapter';\nimport { OPTION_CONSTANTS } from './option-constants';\n\nexport interface IOptionFoundation extends ICustomElementFoundation, Required<IBaseListDropdownOption> {}\n\n/** The foundation class behind the `<forge-option>` element. */\nexport class OptionFoundation implements IOptionFoundation {\n private _value: any;\n private _label: string;\n private _disabled = false;\n private _divider = false;\n private _optionClass: string[] = [];\n private _leadingIcon: string;\n private _leadingIconClass: string;\n private _leadingIconType: ListDropdownIconType;\n private _trailingIcon: string;\n private _trailingIconClass: string;\n private _trailingIconType: ListDropdownIconType;\n private _leadingBuilder: () => HTMLElement;\n private _trailingBuilder: () => HTMLElement;\n\n constructor(private _adapter: IOptionAdapter) {}\n\n /** Gets/sets the value of this option. */\n public get value(): string {\n return this._value;\n }\n public set value(value: string) {\n if (this._value !== value) {\n this._value = value;\n }\n }\n\n /** Gets/sets the label of this option. */\n public get label(): string {\n return this._label;\n }\n public set label(value: string) {\n if (this._label !== value) {\n this._label = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.LABEL, !!this._label, this._label);\n }\n }\n\n /** Gets/sets the disabled status of this option. */\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n /** Gets/sets the whether this option is a divider. */\n public get divider(): boolean {\n return this._divider;\n }\n public set divider(value: boolean) {\n if (this._divider !== value) {\n this._divider = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.DIVIDER, this._divider);\n }\n }\n\n /** Gets/sets the classes of this option. */\n public get optionClass(): string | string[] {\n return this._optionClass;\n }\n public set optionClass(value: string | string[]) {\n if (!value) {\n value = [];\n } else if (typeof value === 'string') {\n value = value.split(' ');\n }\n\n value = value.filter(v => v && !/\\s+/.test(v));\n\n if (this._optionClass.toString() !== value.toString()) {\n this._optionClass = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.OPTION_CLASS, this._optionClass && !!this._optionClass.length, this._optionClass.join(' '));\n }\n }\n\n /** Gets/sets the leading icon of this option. */\n public get leadingIcon(): string {\n return this._leadingIcon;\n }\n public set leadingIcon(value: string) {\n if (this._leadingIcon !== value) {\n this._leadingIcon = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.LEADING_ICON, !!this._leadingIcon, this._leadingIcon);\n }\n }\n\n /** Gets/sets the leading icon class of this option. */\n public get leadingIconClass(): string {\n return this._leadingIconClass;\n }\n public set leadingIconClass(value: string) {\n if (this._leadingIconClass !== value) {\n this._leadingIconClass = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.LEADING_ICON_CLASS, !!this._leadingIconClass, this._leadingIconClass);\n }\n }\n\n /** Gets/sets the leading icon type of this option. */\n public get leadingIconType(): ListDropdownIconType {\n return this._leadingIconType;\n }\n public set leadingIconType(value: ListDropdownIconType) {\n if (this._leadingIconType !== value) {\n this._leadingIconType = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.LEADING_ICON_TYPE, !!this._leadingIconType, this._leadingIconType);\n }\n }\n\n /** Gets/sets the trailing icon of this option. */\n public get trailingIcon(): string {\n return this._trailingIcon;\n }\n public set trailingIcon(value: string) {\n if (this._trailingIcon !== value) {\n this._trailingIcon = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.TRAILING_ICON, !!this._trailingIcon, this._trailingIcon);\n }\n }\n\n /** Gets/sets the trailing icon class of this option. */\n public get trailingIconClass(): string {\n return this._trailingIconClass;\n }\n public set trailingIconClass(value: string) {\n if (this._trailingIconClass !== value) {\n this._trailingIconClass = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.TRAILING_ICON_CLASS, !!this._trailingIconClass, this._trailingIconClass);\n }\n }\n\n /** Gets/sets the trailing icon type of this option. */\n public get trailingIconType(): ListDropdownIconType {\n return this._trailingIconType;\n }\n public set trailingIconType(value: ListDropdownIconType) {\n if (this._trailingIconType !== value) {\n this._trailingIconType = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.TRAILING_ICON_TYPE, !!this._trailingIconType, this._trailingIconType);\n }\n }\n\n /** Gets/sets the leading builder of this option. */\n public get leadingBuilder(): (() => HTMLElement) {\n return this._leadingBuilder;\n }\n public set leadingBuilder(value: (() => HTMLElement)) {\n if (this._leadingBuilder !== value) {\n this._leadingBuilder = value;\n }\n }\n\n /** Gets/sets the trailing builder of this option. */\n public get trailingBuilder(): (() => HTMLElement) {\n return this._trailingBuilder;\n }\n public set trailingBuilder(value: (() => HTMLElement)) {\n if (this._trailingBuilder !== value) {\n this._trailingBuilder = value;\n }\n }\n}\n", "import { coerceBoolean, CustomElement, FoundationProperty, ICustomElement } from '@tylertech/forge-core';\nimport { BaseComponent } from '../../core/base/base-component';\nimport { IBaseListDropdownOption, ListDropdownIconType } from '../../list-dropdown/list-dropdown-constants';\nimport { OptionAdapter } from './option-adapter';\nimport { OPTION_CONSTANTS } from './option-constants';\nimport { OptionFoundation } from './option-foundation';\n\nexport interface IOptionComponent extends ICustomElement, Required<IBaseListDropdownOption> {}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-option': IOptionComponent;\n }\n}\n\n/**\n * The custom element class behind the `<forge-option>` element.\n */\n@CustomElement({\n name: OPTION_CONSTANTS.elementName\n})\nexport class OptionComponent extends BaseComponent implements IOptionComponent {\n public static get observedAttributes(): string[] {\n return [\n OPTION_CONSTANTS.attributes.VALUE,\n OPTION_CONSTANTS.attributes.LABEL,\n OPTION_CONSTANTS.attributes.DISABLED,\n OPTION_CONSTANTS.attributes.DIVIDER,\n OPTION_CONSTANTS.attributes.OPTION_CLASS,\n OPTION_CONSTANTS.attributes.LEADING_ICON,\n OPTION_CONSTANTS.attributes.LEADING_ICON_CLASS,\n OPTION_CONSTANTS.attributes.LEADING_ICON_TYPE,\n OPTION_CONSTANTS.attributes.TRAILING_ICON,\n OPTION_CONSTANTS.attributes.TRAILING_ICON_CLASS,\n OPTION_CONSTANTS.attributes.TRAILING_ICON_TYPE\n ];\n }\n\n private _foundation: OptionFoundation;\n\n constructor() {\n super();\n this._foundation = new OptionFoundation(new OptionAdapter(this));\n }\n\n public initializedCallback(): void {\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'option');\n }\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case OPTION_CONSTANTS.attributes.VALUE:\n this.value = newValue;\n break;\n case OPTION_CONSTANTS.attributes.LABEL:\n this.label = newValue;\n break;\n case OPTION_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case OPTION_CONSTANTS.attributes.DIVIDER:\n this.divider = this.hasAttribute(OPTION_CONSTANTS.attributes.DIVIDER);\n break;\n case OPTION_CONSTANTS.attributes.OPTION_CLASS:\n this.optionClass = newValue;\n break;\n case OPTION_CONSTANTS.attributes.LEADING_ICON:\n this.leadingIcon = newValue;\n break;\n case OPTION_CONSTANTS.attributes.LEADING_ICON_CLASS:\n this.leadingIconClass = newValue;\n break;\n case OPTION_CONSTANTS.attributes.LEADING_ICON_TYPE:\n this.leadingIconType = newValue as ListDropdownIconType;\n break;\n case OPTION_CONSTANTS.attributes.TRAILING_ICON:\n this.trailingIcon = newValue;\n break;\n case OPTION_CONSTANTS.attributes.TRAILING_ICON_CLASS:\n this.trailingIconClass = newValue;\n break;\n case OPTION_CONSTANTS.attributes.TRAILING_ICON_TYPE:\n this.trailingIconType = newValue as ListDropdownIconType;\n break;\n }\n }\n\n /** Gets/sets the value of this option. */\n @FoundationProperty()\n public value: any;\n\n /** Gets/sets the label of this option. */\n @FoundationProperty()\n public label: string;\n\n /** Gets/sets the disabled status of this option. */\n @FoundationProperty()\n public disabled: boolean;\n\n /** Gets/sets the whether this option is a divider. */\n @FoundationProperty()\n public divider: boolean;\n\n /** Gets/sets the classes of this option. */\n @FoundationProperty()\n public optionClass: string | string[];\n\n /** Gets/sets the leading icon of this option. */\n @FoundationProperty()\n public leadingIcon: string;\n\n /** Gets/sets the leading icon class of this option. */\n @FoundationProperty()\n public leadingIconClass: string;\n\n /** Gets/sets the leading icon type of this option. */\n @FoundationProperty()\n public leadingIconType: ListDropdownIconType;\n\n /** Gets/sets the trailing icon of this option. */\n @FoundationProperty()\n public trailingIcon: string;\n\n /** Gets/sets the trailing icon class of this option. */\n @FoundationProperty()\n public trailingIconClass: string;\n\n /** Gets/sets the trailing icon type of this option. */\n @FoundationProperty()\n public trailingIconType: ListDropdownIconType;\n\n /** Gets/sets the leading builder of this option. */\n @FoundationProperty()\n public leadingBuilder: () => HTMLElement;\n\n /** Gets/sets the trailing builder of this option. */\n @FoundationProperty()\n public trailingBuilder: () => HTMLElement;\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { OptionComponent } from './option';\n\nexport * from './option-adapter';\nexport * from './option-constants';\nexport * from './option-foundation';\nexport * from './option';\n\nexport function defineOptionComponent(): void {\n defineCustomElement(OptionComponent);\n}\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["import { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';\nimport { IOptionComponent } from './option';\n\nexport interface IOptionAdapter extends IBaseAdapter {\n setHostAttribute(name: string, value: string): void;\n removeHostAttribute(name: string): void;\n}\n\n/**\n * The DOM adapter behind the `<forge-option>` element.\n */\nexport class OptionAdapter extends BaseAdapter<IOptionComponent> {\n constructor(component: IOptionComponent) {\n super(component);\n }\n}\n", "import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}option`;\n\nconst attributes = {\n DISABLED: 'disabled',\n DIVIDER: 'divider',\n LABEL: 'label',\n LEADING_ICON_CLASS: 'leading-icon-class',\n LEADING_ICON_TYPE: 'leading-icon-type',\n LEADING_ICON: 'leading-icon',\n OPTION_CLASS: 'option-class',\n TRAILING_ICON_CLASS: 'trailing-icon-class',\n TRAILING_ICON_TYPE: 'trailing-icon-type',\n TRAILING_ICON: 'trailing-icon',\n VALUE: 'value'\n};\n\nexport const OPTION_CONSTANTS = {\n elementName,\n attributes\n};\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { IBaseListDropdownOption, ListDropdownIconType } from '../../list-dropdown/list-dropdown-constants';\nimport { IOptionAdapter } from './option-adapter';\nimport { OPTION_CONSTANTS } from './option-constants';\n\nexport interface IOptionFoundation extends ICustomElementFoundation, Required<IBaseListDropdownOption> {}\n\n/** The foundation class behind the `<forge-option>` element. */\nexport class OptionFoundation implements IOptionFoundation {\n private _value: any;\n private _label: string;\n private _disabled = false;\n private _divider = false;\n private _optionClass: string[] = [];\n private _leadingIcon: string;\n private _leadingIconClass: string;\n private _leadingIconType: ListDropdownIconType;\n private _trailingIcon: string;\n private _trailingIconClass: string;\n private _trailingIconType: ListDropdownIconType;\n private _leadingBuilder: () => HTMLElement;\n private _trailingBuilder: () => HTMLElement;\n\n constructor(private _adapter: IOptionAdapter) {}\n\n /** Gets/sets the value of this option. */\n public get value(): string {\n return this._value;\n }\n public set value(value: string) {\n if (this._value !== value) {\n this._value = value;\n }\n }\n\n /** Gets/sets the label of this option. */\n public get label(): string {\n return this._label;\n }\n public set label(value: string) {\n if (this._label !== value) {\n this._label = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.LABEL, !!this._label, this._label);\n }\n }\n\n /** Gets/sets the disabled status of this option. */\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n /** Gets/sets the whether this option is a divider. */\n public get divider(): boolean {\n return this._divider;\n }\n public set divider(value: boolean) {\n if (this._divider !== value) {\n this._divider = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.DIVIDER, this._divider);\n }\n }\n\n /** Gets/sets the classes of this option. */\n public get optionClass(): string | string[] {\n return this._optionClass;\n }\n public set optionClass(value: string | string[]) {\n if (!value) {\n value = [];\n } else if (typeof value === 'string') {\n value = value.split(' ');\n }\n\n value = value.filter(v => v && !/\\s+/.test(v));\n\n if (this._optionClass.toString() !== value.toString()) {\n this._optionClass = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.OPTION_CLASS, this._optionClass && !!this._optionClass.length, this._optionClass.join(' '));\n }\n }\n\n /** Gets/sets the leading icon of this option. */\n public get leadingIcon(): string {\n return this._leadingIcon;\n }\n public set leadingIcon(value: string) {\n if (this._leadingIcon !== value) {\n this._leadingIcon = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.LEADING_ICON, !!this._leadingIcon, this._leadingIcon);\n }\n }\n\n /** Gets/sets the leading icon class of this option. */\n public get leadingIconClass(): string {\n return this._leadingIconClass;\n }\n public set leadingIconClass(value: string) {\n if (this._leadingIconClass !== value) {\n this._leadingIconClass = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.LEADING_ICON_CLASS, !!this._leadingIconClass, this._leadingIconClass);\n }\n }\n\n /** Gets/sets the leading icon type of this option. */\n public get leadingIconType(): ListDropdownIconType {\n return this._leadingIconType;\n }\n public set leadingIconType(value: ListDropdownIconType) {\n if (this._leadingIconType !== value) {\n this._leadingIconType = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.LEADING_ICON_TYPE, !!this._leadingIconType, this._leadingIconType);\n }\n }\n\n /** Gets/sets the trailing icon of this option. */\n public get trailingIcon(): string {\n return this._trailingIcon;\n }\n public set trailingIcon(value: string) {\n if (this._trailingIcon !== value) {\n this._trailingIcon = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.TRAILING_ICON, !!this._trailingIcon, this._trailingIcon);\n }\n }\n\n /** Gets/sets the trailing icon class of this option. */\n public get trailingIconClass(): string {\n return this._trailingIconClass;\n }\n public set trailingIconClass(value: string) {\n if (this._trailingIconClass !== value) {\n this._trailingIconClass = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.TRAILING_ICON_CLASS, !!this._trailingIconClass, this._trailingIconClass);\n }\n }\n\n /** Gets/sets the trailing icon type of this option. */\n public get trailingIconType(): ListDropdownIconType {\n return this._trailingIconType;\n }\n public set trailingIconType(value: ListDropdownIconType) {\n if (this._trailingIconType !== value) {\n this._trailingIconType = value;\n this._adapter.toggleHostAttribute(OPTION_CONSTANTS.attributes.TRAILING_ICON_TYPE, !!this._trailingIconType, this._trailingIconType);\n }\n }\n\n /** Gets/sets the leading builder of this option. */\n public get leadingBuilder(): (() => HTMLElement) {\n return this._leadingBuilder;\n }\n public set leadingBuilder(value: (() => HTMLElement)) {\n if (this._leadingBuilder !== value) {\n this._leadingBuilder = value;\n }\n }\n\n /** Gets/sets the trailing builder of this option. */\n public get trailingBuilder(): (() => HTMLElement) {\n return this._trailingBuilder;\n }\n public set trailingBuilder(value: (() => HTMLElement)) {\n if (this._trailingBuilder !== value) {\n this._trailingBuilder = value;\n }\n }\n}\n", "import { coerceBoolean, CustomElement, FoundationProperty, ICustomElement } from '@tylertech/forge-core';\nimport { BaseComponent } from '../../core/base/base-component';\nimport { IBaseListDropdownOption, ListDropdownIconType } from '../../list-dropdown/list-dropdown-constants';\nimport { OptionAdapter } from './option-adapter';\nimport { OPTION_CONSTANTS } from './option-constants';\nimport { OptionFoundation } from './option-foundation';\n\nexport interface IOptionComponent extends ICustomElement, Required<IBaseListDropdownOption> {}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-option': IOptionComponent;\n }\n}\n\n/**\n * The custom element class behind the `<forge-option>` element.\n * \n * @tag forge-option\n */\n@CustomElement({\n name: OPTION_CONSTANTS.elementName\n})\nexport class OptionComponent extends BaseComponent implements IOptionComponent {\n public static get observedAttributes(): string[] {\n return [\n OPTION_CONSTANTS.attributes.VALUE,\n OPTION_CONSTANTS.attributes.LABEL,\n OPTION_CONSTANTS.attributes.DISABLED,\n OPTION_CONSTANTS.attributes.DIVIDER,\n OPTION_CONSTANTS.attributes.OPTION_CLASS,\n OPTION_CONSTANTS.attributes.LEADING_ICON,\n OPTION_CONSTANTS.attributes.LEADING_ICON_CLASS,\n OPTION_CONSTANTS.attributes.LEADING_ICON_TYPE,\n OPTION_CONSTANTS.attributes.TRAILING_ICON,\n OPTION_CONSTANTS.attributes.TRAILING_ICON_CLASS,\n OPTION_CONSTANTS.attributes.TRAILING_ICON_TYPE\n ];\n }\n\n private _foundation: OptionFoundation;\n\n constructor() {\n super();\n this._foundation = new OptionFoundation(new OptionAdapter(this));\n }\n\n public initializedCallback(): void {\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'option');\n }\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case OPTION_CONSTANTS.attributes.VALUE:\n this.value = newValue;\n break;\n case OPTION_CONSTANTS.attributes.LABEL:\n this.label = newValue;\n break;\n case OPTION_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case OPTION_CONSTANTS.attributes.DIVIDER:\n this.divider = this.hasAttribute(OPTION_CONSTANTS.attributes.DIVIDER);\n break;\n case OPTION_CONSTANTS.attributes.OPTION_CLASS:\n this.optionClass = newValue;\n break;\n case OPTION_CONSTANTS.attributes.LEADING_ICON:\n this.leadingIcon = newValue;\n break;\n case OPTION_CONSTANTS.attributes.LEADING_ICON_CLASS:\n this.leadingIconClass = newValue;\n break;\n case OPTION_CONSTANTS.attributes.LEADING_ICON_TYPE:\n this.leadingIconType = newValue as ListDropdownIconType;\n break;\n case OPTION_CONSTANTS.attributes.TRAILING_ICON:\n this.trailingIcon = newValue;\n break;\n case OPTION_CONSTANTS.attributes.TRAILING_ICON_CLASS:\n this.trailingIconClass = newValue;\n break;\n case OPTION_CONSTANTS.attributes.TRAILING_ICON_TYPE:\n this.trailingIconType = newValue as ListDropdownIconType;\n break;\n }\n }\n\n /** Gets/sets the value of this option. */\n @FoundationProperty()\n public value: any;\n\n /** Gets/sets the label of this option. */\n @FoundationProperty()\n public label: string;\n\n /** Gets/sets the disabled status of this option. */\n @FoundationProperty()\n public disabled: boolean;\n\n /** Gets/sets the whether this option is a divider. */\n @FoundationProperty()\n public divider: boolean;\n\n /** Gets/sets the classes of this option. */\n @FoundationProperty()\n public optionClass: string | string[];\n\n /** Gets/sets the leading icon of this option. */\n @FoundationProperty()\n public leadingIcon: string;\n\n /** Gets/sets the leading icon class of this option. */\n @FoundationProperty()\n public leadingIconClass: string;\n\n /** Gets/sets the leading icon type of this option. */\n @FoundationProperty()\n public leadingIconType: ListDropdownIconType;\n\n /** Gets/sets the trailing icon of this option. */\n @FoundationProperty()\n public trailingIcon: string;\n\n /** Gets/sets the trailing icon class of this option. */\n @FoundationProperty()\n public trailingIconClass: string;\n\n /** Gets/sets the trailing icon type of this option. */\n @FoundationProperty()\n public trailingIconType: ListDropdownIconType;\n\n /** Gets/sets the leading builder of this option. */\n @FoundationProperty()\n public leadingBuilder: () => HTMLElement;\n\n /** Gets/sets the trailing builder of this option. */\n @FoundationProperty()\n public trailingBuilder: () => HTMLElement;\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { OptionComponent } from './option';\n\nexport * from './option-adapter';\nexport * from './option-constants';\nexport * from './option-foundation';\nexport * from './option';\n\nexport function defineOptionComponent(): void {\n defineCustomElement(OptionComponent);\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAWO,IAAM,gBAAN,cAA4B,YAA8B;AAAA,EAC/D,YAAY,WAA6B;AACvC,UAAM,SAAS;AAAA,EACjB;AACF;;;ACbA,IAAM,cAA2C,GAAG;AAEpD,IAAM,aAAa;AAAA,EACjB,UAAU;AAAA,EACV,SAAS;AAAA,EACT,OAAO;AAAA,EACP,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,cAAc;AAAA,EACd,cAAc;AAAA,EACd,qBAAqB;AAAA,EACrB,oBAAoB;AAAA,EACpB,eAAe;AAAA,EACf,OAAO;AACT;AAEO,IAAM,mBAAmB;AAAA,EAC9B;AAAA,EACA;AACF;;;ACbO,IAAM,mBAAN,MAAoD;AAAA,EAezD,YAAoB,UAA0B;AAA1B;AAZpB,SAAQ,YAAY;AACpB,SAAQ,WAAW;AACnB,SAAQ,eAAyB,CAAC;AAAA,EAUa;AAAA,EAG/C,IAAW,QAAgB;AACzB,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,MAAM,OAAe;AAC9B,QAAI,KAAK,WAAW,OAAO;AACzB,WAAK,SAAS;AAAA,IAChB;AAAA,EACF;AAAA,EAGA,IAAW,QAAgB;AACzB,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,MAAM,OAAe;AAC9B,QAAI,KAAK,WAAW,OAAO;AACzB,WAAK,SAAS;AACd,WAAK,SAAS,oBAAoB,iBAAiB,WAAW,OAAO,CAAC,CAAC,KAAK,QAAQ,KAAK,MAAM;AAAA,IACjG;AAAA,EACF;AAAA,EAGA,IAAW,WAAoB;AAC7B,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,SAAS,OAAgB;AAClC,QAAI,KAAK,cAAc,OAAO;AAC5B,WAAK,YAAY;AACjB,WAAK,SAAS,oBAAoB,iBAAiB,WAAW,UAAU,KAAK,SAAS;AAAA,IACxF;AAAA,EACF;AAAA,EAGA,IAAW,UAAmB;AAC5B,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,QAAQ,OAAgB;AACjC,QAAI,KAAK,aAAa,OAAO;AAC3B,WAAK,WAAW;AAChB,WAAK,SAAS,oBAAoB,iBAAiB,WAAW,SAAS,KAAK,QAAQ;AAAA,IACtF;AAAA,EACF;AAAA,EAGA,IAAW,cAAiC;AAC1C,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,YAAY,OAA0B;AAC/C,QAAI,CAAC,OAAO;AACV,cAAQ,CAAC;AAAA,IACX,WAAW,OAAO,UAAU,UAAU;AACpC,cAAQ,MAAM,MAAM,GAAG;AAAA,IACzB;AAEA,YAAQ,MAAM,OAAO,OAAK,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;AAE7C,QAAI,KAAK,aAAa,SAAS,MAAM,MAAM,SAAS,GAAG;AACrD,WAAK,eAAe;AACpB,WAAK,SAAS,oBAAoB,iBAAiB,WAAW,cAAc,KAAK,gBAAgB,CAAC,CAAC,KAAK,aAAa,QAAQ,KAAK,aAAa,KAAK,GAAG,CAAC;AAAA,IAC1J;AAAA,EACF;AAAA,EAGA,IAAW,cAAsB;AAC/B,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,YAAY,OAAe;AACpC,QAAI,KAAK,iBAAiB,OAAO;AAC/B,WAAK,eAAe;AACpB,WAAK,SAAS,oBAAoB,iBAAiB,WAAW,cAAc,CAAC,CAAC,KAAK,cAAc,KAAK,YAAY;AAAA,IACpH;AAAA,EACF;AAAA,EAGA,IAAW,mBAA2B;AACpC,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,iBAAiB,OAAe;AACzC,QAAI,KAAK,sBAAsB,OAAO;AACpC,WAAK,oBAAoB;AACzB,WAAK,SAAS,oBAAoB,iBAAiB,WAAW,oBAAoB,CAAC,CAAC,KAAK,mBAAmB,KAAK,iBAAiB;AAAA,IACpI;AAAA,EACF;AAAA,EAGA,IAAW,kBAAwC;AACjD,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,gBAAgB,OAA6B;AACtD,QAAI,KAAK,qBAAqB,OAAO;AACnC,WAAK,mBAAmB;AACxB,WAAK,SAAS,oBAAoB,iBAAiB,WAAW,mBAAmB,CAAC,CAAC,KAAK,kBAAkB,KAAK,gBAAgB;AAAA,IACjI;AAAA,EACF;AAAA,EAGA,IAAW,eAAuB;AAChC,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,aAAa,OAAe;AACrC,QAAI,KAAK,kBAAkB,OAAO;AAChC,WAAK,gBAAgB;AACrB,WAAK,SAAS,oBAAoB,iBAAiB,WAAW,eAAe,CAAC,CAAC,KAAK,eAAe,KAAK,aAAa;AAAA,IACvH;AAAA,EACF;AAAA,EAGA,IAAW,oBAA4B;AACrC,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,kBAAkB,OAAe;AAC1C,QAAI,KAAK,uBAAuB,OAAO;AACrC,WAAK,qBAAqB;AAC1B,WAAK,SAAS,oBAAoB,iBAAiB,WAAW,qBAAqB,CAAC,CAAC,KAAK,oBAAoB,KAAK,kBAAkB;AAAA,IACvI;AAAA,EACF;AAAA,EAGA,IAAW,mBAAyC;AAClD,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,iBAAiB,OAA6B;AACvD,QAAI,KAAK,sBAAsB,OAAO;AACpC,WAAK,oBAAoB;AACzB,WAAK,SAAS,oBAAoB,iBAAiB,WAAW,oBAAoB,CAAC,CAAC,KAAK,mBAAmB,KAAK,iBAAiB;AAAA,IACpI;AAAA,EACF;AAAA,EAGA,IAAW,iBAAsC;AAC/C,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,eAAe,OAA4B;AACpD,QAAI,KAAK,oBAAoB,OAAO;AAClC,WAAK,kBAAkB;AAAA,IACzB;AAAA,EACF;AAAA,EAGA,IAAW,kBAAuC;AAChD,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,gBAAgB,OAA4B;AACrD,QAAI,KAAK,qBAAqB,OAAO;AACnC,WAAK,mBAAmB;AAAA,IAC1B;AAAA,EACF;AACF;;;ACrJO,IAAM,kBAAN,cAA8B,cAA0C;AAAA,EAmB7E,cAAc;AACZ,UAAM;AACN,SAAK,cAAc,IAAI,iBAAiB,IAAI,cAAc,IAAI,CAAC;AAAA,EACjE;AAAA,EArBA,WAAkB,qBAA+B;AAC/C,WAAO;AAAA,MACL,iBAAiB,WAAW;AAAA,MAC5B,iBAAiB,WAAW;AAAA,MAC5B,iBAAiB,WAAW;AAAA,MAC5B,iBAAiB,WAAW;AAAA,MAC5B,iBAAiB,WAAW;AAAA,MAC5B,iBAAiB,WAAW;AAAA,MAC5B,iBAAiB,WAAW;AAAA,MAC5B,iBAAiB,WAAW;AAAA,MAC5B,iBAAiB,WAAW;AAAA,MAC5B,iBAAiB,WAAW;AAAA,MAC5B,iBAAiB,WAAW;AAAA,IAC9B;AAAA,EACF;AAAA,EASA,AAAO,sBAA4B;AACjC,QAAI,CAAC,KAAK,aAAa,MAAM,GAAG;AAC9B,WAAK,aAAa,QAAQ,QAAQ;AAAA,IACpC;AAAA,EACF;AAAA,EAEA,AAAO,yBAAyB,MAAc,UAAkB,UAAwB;AACtF,YAAQ;AAAA,WACD,iBAAiB,WAAW;AAC/B,aAAK,QAAQ;AACb;AAAA,WACG,iBAAiB,WAAW;AAC/B,aAAK,QAAQ;AACb;AAAA,WACG,iBAAiB,WAAW;AAC/B,aAAK,WAAW,cAAc,QAAQ;AACtC;AAAA,WACG,iBAAiB,WAAW;AAC/B,aAAK,UAAU,KAAK,aAAa,iBAAiB,WAAW,OAAO;AACpE;AAAA,WACG,iBAAiB,WAAW;AAC/B,aAAK,cAAc;AACnB;AAAA,WACG,iBAAiB,WAAW;AAC/B,aAAK,cAAc;AACnB;AAAA,WACG,iBAAiB,WAAW;AAC/B,aAAK,mBAAmB;AACxB;AAAA,WACG,iBAAiB,WAAW;AAC/B,aAAK,kBAAkB;AACvB;AAAA,WACG,iBAAiB,WAAW;AAC/B,aAAK,eAAe;AACpB;AAAA,WACG,iBAAiB,WAAW;AAC/B,aAAK,oBAAoB;AACzB;AAAA,WACG,iBAAiB,WAAW;AAC/B,aAAK,mBAAmB;AACxB;AAAA;AAAA,EAEN;AAqDF;AAjDS;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AAtEI,gBAsEJ;AAIA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AA1EI,gBA0EJ;AAIA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AA9EI,gBA8EJ;AAIA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AAlFI,gBAkFJ;AAIA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AAtFI,gBAsFJ;AAIA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AA1FI,gBA0FJ;AAIA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AA9FI,gBA8FJ;AAIA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AAlGI,gBAkGJ;AAIA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AAtGI,gBAsGJ;AAIA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AA1GI,gBA0GJ;AAIA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AA9GI,gBA8GJ;AAIA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AAlHI,gBAkHJ;AAIA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AAtHI,gBAsHJ;AAtHI,kBAAN;AAAA,EAHP,AAAC,cAAc;AAAA,IACb,MAAM,iBAAiB;AAAA,EACzB,CAAC;AAAA,GACY;;;ACdN,iCAAuC;AAC5C,sBAAoB,eAAe;AACrC;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -5,20 +5,20 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import {
|
|
7
7
|
SWITCH_CONSTANTS
|
|
8
|
-
} from "./chunk.
|
|
8
|
+
} from "./chunk.TYU4RLZG.js";
|
|
9
9
|
import {
|
|
10
10
|
RADIO_CONSTANTS
|
|
11
|
-
} from "./chunk.
|
|
11
|
+
} from "./chunk.4PF7WRP4.js";
|
|
12
12
|
import {
|
|
13
13
|
CHECKBOX_CONSTANTS
|
|
14
|
-
} from "./chunk.
|
|
14
|
+
} from "./chunk.7UAH67PT.js";
|
|
15
15
|
import {
|
|
16
16
|
BACKDROP_CONSTANTS,
|
|
17
17
|
BackdropComponent
|
|
18
|
-
} from "./chunk.
|
|
18
|
+
} from "./chunk.GXTNND2M.js";
|
|
19
19
|
import {
|
|
20
20
|
ICON_BUTTON_CONSTANTS
|
|
21
|
-
} from "./chunk.
|
|
21
|
+
} from "./chunk.EBC2HGO3.js";
|
|
22
22
|
import {
|
|
23
23
|
BaseAdapter
|
|
24
24
|
} from "./chunk.KZATVOA6.js";
|
|
@@ -798,4 +798,4 @@ export {
|
|
|
798
798
|
DialogComponent,
|
|
799
799
|
defineDialogComponent
|
|
800
800
|
};
|
|
801
|
-
//# sourceMappingURL=chunk.
|
|
801
|
+
//# sourceMappingURL=chunk.RL7ZFLMG.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/dialog/dialog-constants.ts", "../../src/dialog/dialog-foundation.ts", "../../src/dialog/dialog-adapter.ts", "../../src/dialog/dialog.ts", "../../src/dialog/index.ts"],
|
|
4
|
-
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\nimport { BACKDROP_CONSTANTS } from '../backdrop';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}dialog`;\n\nconst classes = {\n ANIMATING: 'forge-dialog--animating',\n OPEN: 'forge-dialog--open',\n ACTION_BUTTON: 'forge-dialog__action__button',\n BUTTON_TEXT: 'forge-button__text',\n SCROLLABLE: 'forge-dialog--scrollable',\n FULLSCREEN: 'forge-dialog--fullscreen',\n MOVEABLE: 'forge-dialog--moveable'\n};\n\nconst attributes = {\n BACKDROP_CLOSE: 'backdrop-close',\n ESCAPE_CLOSE: 'escape-close',\n FULLSCREEN: 'fullscreen',\n POSITION_TYPE: 'position-type',\n POSITION_X: 'position-x',\n POSITION_Y: 'position-y',\n MOVEABLE: 'moveable',\n MOVE_TARGET: 'move-target',\n OPEN: 'forge-dialog-open',\n INITIAL_FOCUS: 'forge-dialog-focus',\n DFEAULT_MOVE_TARGET: 'forge-dialog-move-target'\n};\n\nconst selectors = {\n CONTAINER: '.forge-dialog',\n SURFACE: '.forge-dialog__surface',\n BACKDROP: BACKDROP_CONSTANTS.elementName,\n INITIAL_FOCUS: `[${attributes.INITIAL_FOCUS}]`,\n DFEAULT_MOVE_TARGET: `[${attributes.DFEAULT_MOVE_TARGET}]`,\n CONTENT: '.forge-dialog__body'\n};\n\nconst events = {\n BEFORE_CLOSE: `${elementName}-before-close`,\n OPEN: `${elementName}-open`,\n CLOSE: `${elementName}-close`,\n READY: `${elementName}-ready`,\n MOVE_START: `${elementName}-move-start`,\n MOVED: `${elementName}-move`,\n MOVE_END: `${elementName}-move-end`\n};\n\nconst numbers = {\n ANIMATION_DURATION: 150,\n BACKDROP_MAX_OPACITY: 0.3\n};\n\nexport const DIALOG_CONSTANTS = {\n elementName,\n classes,\n selectors,\n attributes,\n events,\n numbers\n};\n\nexport interface IDialogMoveEventData {\n x: number;\n y: number;\n}\n\nexport interface IDialogMoveContext {\n top: number;\n left: number;\n height: number;\n width: number;\n}\n\nexport interface IDialogMoveStartEventData extends IDialogMoveEventData {}\n\nexport type DialogPositionType = 'absolute' | 'relative';\nexport type DialogStateCallback = () => boolean | void | Promise<boolean | void>;\n", "import { ICustomElementFoundation, isDefined, isNumber, isString } from '@tylertech/forge-core';\nimport { IDialogAdapter } from './dialog-adapter';\nimport { DialogPositionType, DialogStateCallback, DIALOG_CONSTANTS, IDialogMoveContext, IDialogMoveStartEventData } from './dialog-constants';\n\nexport interface IDialogFoundation extends ICustomElementFoundation {\n backdropClose: boolean;\n escapeClose: boolean;\n open: boolean;\n fullscreen: boolean;\n openCallback: DialogStateCallback;\n closeCallback: DialogStateCallback;\n beforeCloseCallback: DialogStateCallback;\n positionType: DialogPositionType;\n positionX: number | string | null;\n positionY: number | string | null;\n moveable: boolean;\n moveTarget: string;\n initializeMoveTarget(): void;\n resetPosition(): void;\n}\n\nexport class DialogFoundation implements IDialogFoundation {\n // Private vars\n private _open = false;\n private _backdropClose = true;\n private _escapeClose = true;\n private _fullscreen = false;\n private _openCallback: DialogStateCallback;\n private _closeCallback: DialogStateCallback;\n private _beforeCloseCallback: DialogStateCallback;\n private _positionType: DialogPositionType = 'absolute';\n private _positionX: string | null = null;\n private _positionY: string | null = null;\n private _moveable = false;\n private _moveTarget = DIALOG_CONSTANTS.selectors.DFEAULT_MOVE_TARGET;\n private _isAnimating = false;\n private _isMoving = false;\n private _moveContext: IDialogMoveContext | undefined;\n private _lastPosition: { x: number; y: number } | undefined;\n\n // Event handlers\n private _transitionEndHandler: (evt: TransitionEvent) => void;\n private _documentKeydownHandler: (evt: KeyboardEvent) => void;\n private _backdropClickHandler: (evt: CustomEvent) => void;\n private _moveTargetMouseDownHandler: (evt: MouseEvent) => void;\n private _moveTargetMouseMoveHandler: (evt: MouseEvent) => void;\n private _moveTargetMouseUpHandler: (evt: MouseEvent) => void;\n\n // Event handler states\n private _attachedDocumentKeydownHandler = false;\n private _attachedBackdropClickHandler = false;\n\n constructor(public _adapter: IDialogAdapter) {\n this._transitionEndHandler = (evt: TransitionEvent) => this._onTransitionEnd();\n this._documentKeydownHandler = (evt: KeyboardEvent) => this._onDocumentKeydown(evt);\n this._backdropClickHandler = (evt: CustomEvent) => this._onBackdropClick(evt);\n this._moveTargetMouseDownHandler = (evt: MouseEvent) => this._onMoveTargetMouseDown(evt);\n this._moveTargetMouseMoveHandler = (evt: MouseEvent) => this._onMoveTargetMouseMove(evt);\n this._moveTargetMouseUpHandler = (evt: MouseEvent) => this._onMoveTargetMouseUp(evt);\n }\n\n public initialize(): void {\n this._adapter.initializeAccessibility();\n if (this._open) {\n if (this._moveable) {\n this._adapter.setMoveable(this._moveable);\n this._initMoveTarget();\n }\n }\n }\n\n public destroy(): void {\n if (this._open) {\n this._removeDragHandlers();\n this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler);\n if (this._attachedDocumentKeydownHandler) {\n this._adapter.removeDocumentListener('keydown', this._documentKeydownHandler);\n }\n if (this._attachedBackdropClickHandler) {\n this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler);\n }\n }\n }\n\n private async _applyOpen(value: boolean): Promise<void> {\n if (value) {\n if (typeof this._openCallback === 'function' && !await this._executeOpenCallback()) {\n return;\n }\n this._open = value;\n this._openDialog();\n } else {\n if (typeof this._closeCallback === 'function' && !await this._executeCloseCallback()) {\n return;\n }\n this._open = value;\n this._closeDialog();\n }\n \n this._adapter.toggleHostAttribute(DIALOG_CONSTANTS.attributes.OPEN, this._open);\n }\n\n private async _executeOpenCallback(): Promise<boolean> {\n try {\n return await Promise.resolve(this._openCallback()) !== false;\n } catch (e) {\n return false;\n }\n }\n\n private async _executeCloseCallback(): Promise<boolean> {\n try {\n return await Promise.resolve(this._closeCallback()) !== false;\n } catch (e) {\n return false;\n }\n }\n\n public initializeMoveTarget(): void {\n if (!this._moveTarget) {\n this._moveTarget = DIALOG_CONSTANTS.selectors.DFEAULT_MOVE_TARGET;\n }\n this._initMoveTarget();\n }\n\n public resetPosition(): void {\n this._adapter.setSurfacePosition(this._positionX, this._positionY, this._positionType);\n }\n\n private _normalizePositionValue(value: number | string | null): string | null {\n if (isNumber(value)) {\n return `${value}px`;\n } else if (isString(value)) {\n return value;\n }\n return null;\n }\n\n private _openDialog(): void {\n this._adapter.attach();\n\n if (!this._fullscreen) {\n if (this._moveable) {\n this._adapter.setMoveable(this._moveable);\n }\n if (this._positionX !== null || this._positionY !== null) {\n this._adapter.setSurfacePosition(this._positionX, this._positionY, this._positionType);\n }\n }\n\n this._adapter.setBodyAttribute(DIALOG_CONSTANTS.attributes.OPEN, 'true');\n this._adapter.registerTransitionEndHandler(this._transitionEndHandler);\n this._setDocumentKeydownListener(this._escapeClose);\n this._setBackdropClickListener(this._backdropClose);\n this._adapter.setAnimating(true);\n this._isAnimating = true;\n\n // Ensure transitions are triggered properly\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n this._adapter.setVisibility(true);\n this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.OPEN);\n this._adapter.trySetInitialFocus();\n if (this._adapter.isScrollable()) {\n this._adapter.addRootClass(DIALOG_CONSTANTS.classes.SCROLLABLE);\n }\n });\n });\n\n // Wait for the dialog to finish animating open, then emit the ready event and attach any listeners\n setTimeout(() => {\n window.requestAnimationFrame(() => {\n if (this._open && this._isAnimating) {\n this._onTransitionEnd();\n }\n });\n }, DIALOG_CONSTANTS.numbers.ANIMATION_DURATION);\n }\n\n private _closeDialog(): void {\n if (this._moveTarget) {\n this._removeDragHandlers();\n }\n\n this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler);\n if (this._attachedDocumentKeydownHandler) {\n this._adapter.removeDocumentListener('keydown', this._documentKeydownHandler);\n }\n if (this._attachedBackdropClickHandler) {\n this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler);\n }\n\n this._isAnimating = false;\n this._adapter.setAnimating(true);\n this._adapter.setVisibility(false);\n\n setTimeout(() => {\n this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.CLOSE);\n this._adapter.detach();\n const openDialogs = this._adapter.getOpenDialogs(DIALOG_CONSTANTS.elementName);\n if (!openDialogs.length) {\n this._adapter.removeBodyAttribute(DIALOG_CONSTANTS.attributes.OPEN);\n }\n }, DIALOG_CONSTANTS.numbers.ANIMATION_DURATION);\n }\n\n private _onTransitionEnd(): void {\n if (!this._isAnimating) {\n return;\n }\n this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler);\n this._adapter.setAnimating(false);\n this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.READY);\n this._adapter.tryLayoutChildren();\n if (this._moveable) {\n this._initMoveTarget();\n }\n this._isAnimating = false;\n }\n\n private _initMoveTarget(): void {\n if (!this._fullscreen && this._moveable && this._moveTarget && this._adapter.setMoveTarget(this._moveTarget)) {\n this._adapter.setMoveTargetHandler('mousedown', this._moveTargetMouseDownHandler);\n }\n }\n\n private _removeDragHandlers(): void {\n this._adapter.removeDragTargetHandler('mousedown', this._moveTargetMouseDownHandler);\n this._adapter.removeDocumentListener('mousemove', this._moveTargetMouseMoveHandler);\n this._adapter.removeDocumentListener('mouseup', this._moveTargetMouseUpHandler);\n }\n\n private _onMoveTargetMouseDown(evt: MouseEvent): void {\n evt.preventDefault();\n this._adapter.captureActiveElement();\n const bounds = this._adapter.getSurfaceBounds();\n this._moveContext = {\n top: evt.clientY - bounds.top,\n left: evt.clientX - bounds.left,\n height: bounds.height,\n width: bounds.width\n };\n this._adapter.setDocumentListener('mousemove', this._moveTargetMouseMoveHandler);\n this._adapter.setDocumentListener('mouseup', this._moveTargetMouseUpHandler);\n }\n\n private _onMoveTargetMouseMove(evt: MouseEvent): void {\n evt.preventDefault();\n const position = this._calculateOffsetPosition(evt.pageX, evt.pageY, this._moveContext);\n\n // If this is the beginning of the move sequence, we emit the start event (to allow for preventing default) and\n // then update the surface position if not prevented\n if (!this._isMoving) {\n this._isMoving = true;\n const canDrag = this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.MOVE_START, position as IDialogMoveStartEventData, true, true);\n if (!canDrag) {\n return;\n }\n }\n\n // Ensure that the surface position stays within the bounds of the screen\n const newPosition = this._clampPosition(position, this._moveContext);\n\n // Only update the position if it actually changed\n if (!this._lastPosition || newPosition.x !== this._lastPosition.x || newPosition.y !== this._lastPosition.y) {\n const canMove = this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.MOVED, newPosition as IDialogMoveStartEventData, true, true);\n if (canMove) {\n this._lastPosition = { ...newPosition };\n const newX = this._normalizePositionValue(newPosition.x);\n const newY = this._normalizePositionValue(newPosition.y);\n this._adapter.setSurfacePosition(newX, newY, 'absolute');\n }\n }\n }\n\n private _onMoveTargetMouseUp(evt: MouseEvent): void {\n if (this._isMoving) {\n this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.MOVE_END);\n }\n this._moveComplete();\n }\n\n private _moveComplete(): void {\n this._adapter.tryRestoreActiveElement();\n this._adapter.removeDocumentListener('mousemove', this._moveTargetMouseMoveHandler);\n this._adapter.removeDocumentListener('mouseup', this._moveTargetMouseUpHandler);\n this._lastPosition = undefined;\n this._moveContext = undefined;\n this._isMoving = false;\n }\n\n private _onDocumentKeydown(evt: KeyboardEvent): void {\n evt.stopPropagation();\n if (evt.key && (evt.key === 'Escape' || evt.key === 'Esc')) {\n this._tryClose();\n }\n }\n\n private _onBackdropClick(evt: CustomEvent): void {\n evt.stopPropagation();\n this._tryClose();\n }\n\n private async _tryClose(): Promise<void> {\n const isCancelled = !this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.BEFORE_CLOSE, undefined, undefined, true);\n if (isCancelled) {\n return;\n }\n\n if (!this._beforeCloseCallback) {\n this.open = false;\n return;\n }\n\n try {\n const shouldClose = await Promise.resolve(this._beforeCloseCallback()) !== false;\n if (shouldClose) {\n this.open = false;\n return;\n }\n } catch (err) {\n return;\n }\n }\n\n private _setBackdropClickListener(attach: boolean): void {\n if (!this._open) {\n return;\n }\n\n if (attach && !this._attachedBackdropClickHandler) {\n this._adapter.registerBackdropClickHandler(this._backdropClickHandler);\n this._attachedBackdropClickHandler = true;\n } else if (!attach && this._attachedBackdropClickHandler) {\n this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler);\n this._attachedBackdropClickHandler = false;\n }\n }\n\n private _setDocumentKeydownListener(attach: boolean): void {\n if (!this._open) {\n return;\n }\n\n if (attach && !this._attachedDocumentKeydownHandler) {\n this._adapter.setDocumentListener('keydown', this._documentKeydownHandler);\n this._attachedDocumentKeydownHandler = true;\n } else if (!attach && this._attachedDocumentKeydownHandler) {\n this._adapter.removeDocumentListener('keydown', this._documentKeydownHandler);\n this._attachedDocumentKeydownHandler = false;\n }\n }\n\n private _calculateOffsetPosition(pageX: number, pageY: number, context?: IDialogMoveContext): { x: number; y: number } {\n return {\n x: pageX - (context?.left || 0),\n y: pageY - (context?.top || 0)\n };\n }\n\n private _clampPosition({ x, y }: { x: number; y: number }, context?: IDialogMoveContext): { x: number; y: number } {\n let width = 0;\n let height = 0;\n\n if (context) {\n width = context.width;\n height = context.height;\n }\n\n if (x <= 0) {\n x = 0;\n } else if (x + width >= window.innerWidth) {\n x = window.innerWidth - width;\n }\n\n if (y <= 0) {\n y = 0;\n } else if (y + height >= window.innerHeight) {\n y = window.innerHeight - height;\n }\n\n return { x, y };\n }\n\n /** Controls whether clicking the backdrop closes the dialog or not. */\n public set backdropClose(value: boolean) {\n value = Boolean(value);\n if (this._backdropClose !== value) {\n this._backdropClose = value;\n\n this._setBackdropClickListener(this._backdropClose);\n\n if (isDefined(this._backdropClose)) {\n this._adapter.setHostAttribute(DIALOG_CONSTANTS.attributes.BACKDROP_CLOSE, this._backdropClose.toString());\n } else {\n this._adapter.removeHostAttribute(DIALOG_CONSTANTS.attributes.BACKDROP_CLOSE);\n }\n }\n }\n public get backdropClose(): boolean {\n return this._backdropClose;\n }\n\n /** Controls whether pressing the escape key closes the dialog or not. */\n public set escapeClose(value: boolean) {\n value = Boolean(value);\n if (this._escapeClose !== value) {\n this._escapeClose = value;\n this._setDocumentKeydownListener(this._escapeClose);\n if (isDefined(this._escapeClose)) {\n this._adapter.setHostAttribute(DIALOG_CONSTANTS.attributes.ESCAPE_CLOSE, this._escapeClose.toString());\n } else {\n this._adapter.removeHostAttribute(DIALOG_CONSTANTS.attributes.ESCAPE_CLOSE);\n }\n }\n }\n public get escapeClose(): boolean {\n return this._escapeClose;\n }\n\n public get open(): boolean {\n return this._open;\n }\n public set open(value: boolean) {\n if (this._open !== value) {\n value = Boolean(value);\n if (value !== this._open) {\n this._applyOpen(value);\n }\n }\n }\n\n public get fullscreen(): boolean {\n return this._fullscreen;\n }\n public set fullscreen(value: boolean) {\n if (this._fullscreen !== value) {\n this._fullscreen = value;\n this._adapter.setFullscreen(this._fullscreen);\n }\n }\n\n public get openCallback(): DialogStateCallback {\n return this._openCallback;\n }\n public set openCallback(callback: DialogStateCallback) {\n this._openCallback = callback;\n }\n\n public get closeCallback(): DialogStateCallback {\n return this._closeCallback;\n }\n public set closeCallback(callback: DialogStateCallback) {\n this._closeCallback = callback;\n }\n\n public get beforeCloseCallback(): DialogStateCallback {\n return this._beforeCloseCallback;\n }\n public set beforeCloseCallback(callback: DialogStateCallback) {\n this._beforeCloseCallback = callback;\n }\n\n public get positionType(): DialogPositionType {\n return this._positionType;\n }\n public set positionType(value: DialogPositionType) {\n if (this._positionType !== value) {\n this._positionType = value;\n if (this._open) {\n this._adapter.setSurfacePosition(this._positionX, this._positionY, this._positionType);\n }\n }\n }\n\n public get positionX(): number | string | null {\n return this._positionX;\n }\n public set positionX(value: number | string | null) {\n if (this._positionX !== value) {\n this._positionX = this._normalizePositionValue(value);\n if (this._open) {\n this._adapter.setSurfacePosition(this._positionX, this._positionY, this._positionType);\n }\n }\n }\n\n public get positionY(): number | string | null {\n return this._positionY;\n }\n public set positionY(value: number | string | null) {\n if (this._positionY !== value) {\n this._positionY = this._normalizePositionValue(value);\n if (this._open) {\n this._adapter.setSurfacePosition(this._positionX, this._positionY, this._positionType);\n }\n }\n }\n\n public get moveable(): boolean {\n return this._moveable;\n }\n public set moveable(value: boolean) {\n if (this._moveable !== value) {\n this._moveable = value;\n if (this._open) {\n this._adapter.setMoveable(this._moveable);\n if (this._moveable) {\n this._initMoveTarget();\n } else {\n this._removeDragHandlers();\n this._isMoving = false;\n }\n }\n }\n }\n\n public get moveTarget(): string {\n return this._moveTarget;\n }\n public set moveTarget(value: string) {\n this._moveTarget = value;\n }\n}\n", "import { getShadowElement, removeElement, deepQuerySelectorAll, getActiveElement, toggleClass } from '@tylertech/forge-core';\nimport { BACKDROP_CONSTANTS, IBackdropComponent } from '../backdrop';\nimport { CHECKBOX_CONSTANTS } from '../checkbox';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { ICON_BUTTON_CONSTANTS } from '../icon-button';\nimport { RADIO_CONSTANTS } from '../radio';\nimport { SWITCH_CONSTANTS } from '../switch';\nimport { IDialogComponent } from './dialog';\nimport { DialogPositionType, DIALOG_CONSTANTS } from './dialog-constants';\n\nexport interface IDialogAdapter extends IBaseAdapter {\n initializeAccessibility(): void;\n setAnimating(animating: boolean): void;\n setVisibility(visible: boolean): void;\n attach(): void;\n detach(): void;\n setDocumentListener(type: string, listener: (evt: Event) => void): void;\n removeDocumentListener(type: string, listener: (evt: Event) => void): void;\n registerTransitionEndHandler: (handler: (evt: TransitionEvent) => void) => void;\n deregisterTransitionEndHandler: (handler: (evt: TransitionEvent) => void) => void;\n registerBackdropClickHandler: (handler: (evt: CustomEvent) => void) => void;\n deregisterBackdropClickHandler: (handler: (evt: CustomEvent) => void) => void;\n getOpenDialogs: (selector: string) => NodeListOf<HTMLElement>;\n setBodyAttribute: (name: string, value: string) => void;\n removeBodyAttribute: (name: string) => void;\n trySetInitialFocus: () => void;\n isScrollable(): boolean;\n addRootClass(name: string): void;\n setFullscreen(value: boolean): void;\n setMoveable(value: boolean): void;\n tryLayoutChildren(): void;\n setMoveTarget(selector: string): boolean;\n setMoveTargetHandler(type: string, listener: (evt: MouseEvent) => void): void;\n removeDragTargetHandler(type: string, listener: (evt: MouseEvent) => void): void;\n getSurfaceBounds(): DOMRect;\n setSurfacePosition(x: string | null, y: string | null, positionType: DialogPositionType): void;\n captureActiveElement(): void;\n tryRestoreActiveElement(): void;\n}\n\n/**\n * Provides facilities for interacting with the internal DOM of `DialogComponent`.\n */\nexport class DialogAdapter extends BaseAdapter<IDialogComponent> implements IDialogAdapter {\n private _backdropElement: IBackdropComponent;\n private _containerElement: HTMLElement;\n private _surfaceElement: HTMLElement;\n private _moveTargetElement: HTMLElement | null;\n private _activeElement: HTMLElement | undefined;\n\n constructor(component: IDialogComponent) {\n super(component);\n this._backdropElement = getShadowElement(component, DIALOG_CONSTANTS.selectors.BACKDROP) as IBackdropComponent;\n this._containerElement = getShadowElement(component, DIALOG_CONSTANTS.selectors.CONTAINER);\n this._surfaceElement = getShadowElement(component, DIALOG_CONSTANTS.selectors.SURFACE);\n }\n\n public initializeAccessibility(): void {\n if (!this._component.hasAttribute('role')) {\n this._component.setAttribute('role', 'dialog');\n }\n this._component.setAttribute('aria-modal', 'true');\n }\n\n public setAnimating(animating: boolean): void {\n if (animating) {\n this._containerElement.classList.add(DIALOG_CONSTANTS.classes.ANIMATING);\n } else {\n this._containerElement.classList.remove(DIALOG_CONSTANTS.classes.ANIMATING);\n }\n }\n\n public setVisibility(visible: boolean): void {\n if (visible) {\n this._containerElement.classList.add(DIALOG_CONSTANTS.classes.OPEN);\n } else {\n this._containerElement.classList.remove(DIALOG_CONSTANTS.classes.OPEN);\n }\n }\n\n public attach(): void {\n document.body.appendChild(this._component);\n }\n\n public detach(): void {\n if (this._activeElement) {\n this._activeElement = undefined;\n }\n removeElement(this._component);\n }\n\n public registerTransitionEndHandler(handler: (evt: TransitionEvent) => void): void {\n this._surfaceElement.addEventListener('transitionend', handler);\n }\n\n public deregisterTransitionEndHandler(handler: (evt: TransitionEvent) => void): void {\n this._surfaceElement.removeEventListener('transitionend', handler);\n }\n\n public setDocumentListener(type: string, listener: (evt: Event) => void): void {\n document.addEventListener(type, listener);\n }\n\n public removeDocumentListener(type: string, listener: (evt: Event) => void): void {\n document.removeEventListener(type, listener);\n }\n\n public registerBackdropClickHandler(handler: (evt: CustomEvent) => void): void {\n this._backdropElement.addEventListener(BACKDROP_CONSTANTS.events.BACKDROP_CLICK, handler);\n }\n\n public deregisterBackdropClickHandler(handler: (evt: CustomEvent) => void): void {\n this._backdropElement.removeEventListener(BACKDROP_CONSTANTS.events.BACKDROP_CLICK, handler);\n }\n\n public getOpenDialogs(selector: string): NodeListOf<HTMLElement> {\n return document.querySelectorAll(selector);\n }\n\n public setBodyAttribute(name: string, value: string): void {\n document.body.setAttribute(name, value);\n }\n\n public removeBodyAttribute(name: string): void {\n document.body.removeAttribute(name);\n }\n\n public trySetInitialFocus(): void {\n const elements = deepQuerySelectorAll(this._component, DIALOG_CONSTANTS.selectors.INITIAL_FOCUS);\n if (elements && elements.length) {\n const initialElement = elements[elements.length - 1] as HTMLElement;\n initialElement.focus();\n }\n }\n\n public isScrollable(): boolean {\n const contentElement = this._component.querySelector(DIALOG_CONSTANTS.selectors.CONTENT) as HTMLElement;\n if (contentElement) {\n return contentElement.scrollHeight > contentElement.offsetHeight;\n }\n return false;\n }\n\n public addRootClass(name: string): void {\n this._component.classList.add(name);\n }\n\n public setFullscreen(value: boolean): void {\n if (value) {\n this._containerElement.classList.add(DIALOG_CONSTANTS.classes.FULLSCREEN);\n } else {\n this._containerElement.classList.remove(DIALOG_CONSTANTS.classes.FULLSCREEN);\n }\n }\n\n public setMoveable(value: boolean): void {\n toggleClass(this._containerElement, value, DIALOG_CONSTANTS.classes.MOVEABLE);\n }\n\n public tryLayoutChildren(): void {\n const layoutChildren = [ICON_BUTTON_CONSTANTS.elementName, SWITCH_CONSTANTS.elementName, CHECKBOX_CONSTANTS.elementName, RADIO_CONSTANTS.elementName];\n const commonLayoutElements = Array.from(this._component.querySelectorAll(layoutChildren.join(','))) as any[];\n commonLayoutElements.filter(el => typeof el.layout === 'function').forEach(el => el.layout());\n }\n\n public setMoveTarget(selector: string): boolean {\n if (!selector) {\n return false;\n }\n this._moveTargetElement = this._component.querySelector(selector);\n return !!this._moveTargetElement;\n }\n\n public setMoveTargetHandler(type: string, listener: (evt: MouseEvent) => void): void {\n if (this._moveTargetElement) {\n this._moveTargetElement.addEventListener(type, listener);\n }\n }\n\n public removeDragTargetHandler(type: string, listener: (evt: MouseEvent) => void): void {\n if (this._moveTargetElement) {\n this._moveTargetElement.removeEventListener(type, listener);\n }\n }\n\n public getSurfaceBounds(): DOMRect {\n return this._surfaceElement.getBoundingClientRect() as DOMRect;\n }\n\n public setSurfacePosition(x: string | null, y: string | null, positionType: DialogPositionType): void {\n this._surfaceElement.style.position = positionType === 'absolute' ? positionType : 'relative';\n if (y !== null) {\n this._surfaceElement.style.top = y;\n } else {\n this._surfaceElement.style.removeProperty('top');\n }\n if (x !== null) {\n this._surfaceElement.style.left = x;\n } else {\n this._surfaceElement.style.removeProperty('left');\n }\n }\n\n public captureActiveElement(): void {\n this._activeElement = getActiveElement() as HTMLElement;\n if (this._activeElement) {\n this._activeElement.blur();\n }\n }\n\n public tryRestoreActiveElement(): void {\n if (this._activeElement) {\n if (this._activeElement.isConnected) {\n this._activeElement.focus();\n }\n this._activeElement = undefined;\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\n\nimport { DialogFoundation } from './dialog-foundation';\nimport { DialogAdapter } from './dialog-adapter';\nimport { DIALOG_CONSTANTS, DialogPositionType, IDialogMoveStartEventData, IDialogMoveEventData, DialogStateCallback } from './dialog-constants';\nimport { BackdropComponent } from '../backdrop';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\n\nconst template = '<template><div class=\\\"forge-dialog\\\" part=\\\"root\\\"><forge-backdrop part=\\\"scrim\\\"></forge-backdrop><div class=\\\"forge-dialog__surface\\\" part=\\\"surface\\\"><slot></slot></div></div></template>';\nconst styles = '.forge-dialog{position:fixed;top:0;bottom:0;left:0;right:0;z-index:8;z-index:var(--forge-z-index-dialog,8);-webkit-box-align:center;align-items:center;-webkit-box-align:var(--forge-dialog-align-items,center);align-items:var(--forge-dialog-align-items,center);top:0;top:var(--forge-dialog-top,0);padding:24px;padding:var(--forge-dialog-padding,24px);display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;visibility:hidden}@media (max-width:599px){.forge-dialog{padding:0}}.forge-dialog--moveable:not(.forge-dialog--fullscreen) ::slotted([forge-dialog-move-target]){cursor:move}.forge-dialog--animating{visibility:visible}.forge-dialog--animating .forge-dialog--open .forge-dialog__surface{-webkit-transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1)}.forge-dialog--animating .forge-dialog__surface{-webkit-transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1)}.forge-dialog--scrollable .forge-dialog__footer,.forge-dialog--scrollable .forge-dialog__title{border-color:rgba(0,0,0,.12)}.forge-dialog--open{visibility:visible!important}.forge-dialog--open .forge-dialog__surface{-webkit-transform:scale(1);transform:scale(1);opacity:1}.forge-dialog__surface{-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);background-color:#fff;background-color:var(--mdc-theme-surface,#fff);width:auto;width:var(--forge-dialog-width,auto);height:auto;height:var(--forge-dialog-height,auto);min-width:280px;min-width:var(--forge-dialog-min-width,280px);max-width:100%;max-width:var(--forge-dialog-max-width,100%);max-height:100%;max-height:var(--forge-dialog-max-height,100%);border-radius:4px;border-radius:var(--forge-dialog-border-radius,var(--mdc-shape-medium,4px));display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transform:scale(.8);transform:scale(.8);opacity:0;overflow:hidden;z-index:inherit}.forge-dialog__header{margin:0;padding:0 24px 9px;border-bottom:1px solid transparent}.forge-dialog__title{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:1.25rem;font-size:var(--forge-typography-title-font-size, 1.25rem);line-height:2rem;line-height:var(--forge-typography-title-line-height, 2rem);font-weight:400;font-weight:var(--forge-typography-title-font-weight,400);letter-spacing:.0125em;letter-spacing:var(--forge-typography-title-letter-spacing, .0125em);text-decoration:inherit;-webkit-text-decoration:var(--forge-typography-title-text-decoration,inherit);text-decoration:var(--forge-typography-title-text-decoration,inherit);text-transform:inherit;text-transform:var(--forge-typography-title-text-transform,inherit);-webkit-box-sizing:border-box;box-sizing:border-box;margin:0}.forge-dialog__title::before{display:inline-block;width:0;height:40px;content:\\\"\\\";vertical-align:0}.forge-dialog__body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-body1-font-size, 1rem);line-height:1.5rem;line-height:var(--mdc-typography-body1-line-height, 1.5rem);font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);padding-top:20px;padding:0 24px 24px;overflow:auto}.forge-dialog__body--scrollable{max-height:195px;border-top:1px solid rgba(0,0,0,.1);border-bottom:1px solid rgba(0,0,0,.1);overflow-x:auto;overflow-y:scroll;-webkit-overflow-scrolling:touch}.forge-dialog__footer{display:-webkit-box;display:flex;position:relative;flex-shrink:0;flex-wrap:wrap;-webkit-box-align:center;align-items:center;-webkit-box-pack:end;justify-content:flex-end;-webkit-box-sizing:border-box;box-sizing:border-box;min-height:52px;margin:0;padding:8px;border-top:1px solid transparent}.forge-dialog--fullscreen{padding:0}.forge-dialog--fullscreen .forge-dialog__surface{height:100%;width:100%;min-width:auto;max-width:100%;border-radius:0}:host{display:block}:host([hidden]){display:none}';\n\nexport interface IDialogComponent extends IBaseComponent {\n backdropClose: boolean;\n escapeClose: boolean;\n open: boolean;\n fullscreen: boolean;\n openCallback: DialogStateCallback;\n closeCallback: DialogStateCallback;\n beforeCloseCallback: () => boolean | Promise<boolean>;\n positionType: DialogPositionType;\n positionX: number | string | null;\n positionY: number | string | null;\n moveable: boolean;\n moveTarget: string;\n initializeMoveTarget(): void;\n resetPosition(): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-dialog': IDialogComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-dialog-before-close': CustomEvent<void>;\n 'forge-dialog-open': CustomEvent<void>;\n 'forge-dialog-close': CustomEvent<void>;\n 'forge-dialog-ready': CustomEvent<void>;\n 'forge-dialog-move-start': CustomEvent<IDialogMoveStartEventData>;\n 'forge-dialog-move': CustomEvent<IDialogMoveEventData>;\n 'forge-dialog-move-end': CustomEvent<void>;\n }\n}\n\n@CustomElement({\n name: DIALOG_CONSTANTS.elementName,\n dependencies: [BackdropComponent]\n})\nexport class DialogComponent extends BaseComponent implements IDialogComponent {\n public static get observedAttributes(): string[] {\n return [\n DIALOG_CONSTANTS.attributes.BACKDROP_CLOSE,\n DIALOG_CONSTANTS.attributes.ESCAPE_CLOSE,\n DIALOG_CONSTANTS.attributes.OPEN,\n DIALOG_CONSTANTS.attributes.FULLSCREEN,\n DIALOG_CONSTANTS.attributes.POSITION_TYPE,\n DIALOG_CONSTANTS.attributes.POSITION_X,\n DIALOG_CONSTANTS.attributes.POSITION_Y,\n DIALOG_CONSTANTS.attributes.MOVEABLE,\n DIALOG_CONSTANTS.attributes.MOVE_TARGET\n ];\n }\n\n private _foundation: DialogFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new DialogFoundation(new DialogAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.destroy();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case DIALOG_CONSTANTS.attributes.BACKDROP_CLOSE:\n this.backdropClose = newValue === 'true';\n break;\n case DIALOG_CONSTANTS.attributes.ESCAPE_CLOSE:\n this.escapeClose = newValue === 'true';\n break;\n case DIALOG_CONSTANTS.attributes.OPEN:\n this.open = coerceBoolean(newValue);\n break;\n case DIALOG_CONSTANTS.attributes.FULLSCREEN:\n this.fullscreen = coerceBoolean(newValue);\n break;\n case DIALOG_CONSTANTS.attributes.POSITION_TYPE:\n this.positionType = newValue as DialogPositionType;\n break;\n case DIALOG_CONSTANTS.attributes.POSITION_X:\n this.positionX = newValue;\n break;\n case DIALOG_CONSTANTS.attributes.POSITION_Y:\n this.positionY = newValue;\n break;\n case DIALOG_CONSTANTS.attributes.MOVEABLE:\n this.moveable = coerceBoolean(newValue);\n break;\n case DIALOG_CONSTANTS.attributes.MOVE_TARGET:\n this.moveTarget = newValue;\n break;\n }\n }\n\n /** Controls whether clicking the backdrop closes the dialog or not. Default is true. */\n @FoundationProperty()\n public backdropClose: boolean;\n\n /** Controls whether pressing the escape key closes the dialog or not. Default is true. */\n @FoundationProperty()\n public escapeClose: boolean;\n\n /** Controls whether the dialog is open or not. Default is false. */\n @FoundationProperty()\n public open: boolean;\n\n /** Controls whether the dialog is full screen or not. Default is false. */\n @FoundationProperty()\n public fullscreen: boolean;\n\n /** The function to call when the dialog wants to open. */\n @FoundationProperty()\n public openCallback: DialogStateCallback;\n\n /** the function to call when the dialog wants to close. */\n @FoundationProperty()\n public closeCallback: DialogStateCallback;\n\n /** the function to call when the dialog wants to close. */\n @FoundationProperty()\n public beforeCloseCallback: () => boolean | Promise<boolean>;\n\n /** Gets/sets the position type when using custom positioning values. Default is 'absolute'. */\n @FoundationProperty()\n public positionType: DialogPositionType;\n\n /** Controls the horizontal position of the dialog surface. */\n @FoundationProperty()\n public positionX: number | string | null;\n\n /** Controls the vertical position of the dialog surface. */\n @FoundationProperty()\n public positionY: number | string | null;\n\n /** Gets/sets whether the dialog surface can be moved or not. */\n @FoundationProperty()\n public moveable: boolean;\n\n /** Gets/sets the selector used to target the element that is used as the drag target. */\n @FoundationProperty()\n public moveTarget: string;\n\n public initializeMoveTarget(): void {\n this._foundation.initializeMoveTarget();\n }\n\n public resetPosition(): void {\n this._foundation.resetPosition();\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { DialogComponent } from './dialog';\n\nexport * from './dialog-adapter';\nexport * from './dialog-constants';\nexport * from './dialog-foundation';\nexport * from './dialog';\n\nexport function defineDialogComponent(): void {\n defineCustomElement(DialogComponent);\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\nimport { BACKDROP_CONSTANTS } from '../backdrop';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}dialog`;\n\nconst classes = {\n ANIMATING: 'forge-dialog--animating',\n OPEN: 'forge-dialog--open',\n ACTION_BUTTON: 'forge-dialog__action__button',\n BUTTON_TEXT: 'forge-button__text',\n SCROLLABLE: 'forge-dialog--scrollable',\n FULLSCREEN: 'forge-dialog--fullscreen',\n MOVEABLE: 'forge-dialog--moveable'\n};\n\nconst attributes = {\n BACKDROP_CLOSE: 'backdrop-close',\n ESCAPE_CLOSE: 'escape-close',\n FULLSCREEN: 'fullscreen',\n POSITION_TYPE: 'position-type',\n POSITION_X: 'position-x',\n POSITION_Y: 'position-y',\n MOVEABLE: 'moveable',\n MOVE_TARGET: 'move-target',\n OPEN: 'forge-dialog-open',\n INITIAL_FOCUS: 'forge-dialog-focus',\n DFEAULT_MOVE_TARGET: 'forge-dialog-move-target'\n};\n\nconst selectors = {\n CONTAINER: '.forge-dialog',\n SURFACE: '.forge-dialog__surface',\n BACKDROP: BACKDROP_CONSTANTS.elementName,\n INITIAL_FOCUS: `[${attributes.INITIAL_FOCUS}]`,\n DFEAULT_MOVE_TARGET: `[${attributes.DFEAULT_MOVE_TARGET}]`,\n CONTENT: '.forge-dialog__body'\n};\n\nconst events = {\n BEFORE_CLOSE: `${elementName}-before-close`,\n OPEN: `${elementName}-open`,\n CLOSE: `${elementName}-close`,\n READY: `${elementName}-ready`,\n MOVE_START: `${elementName}-move-start`,\n MOVED: `${elementName}-move`,\n MOVE_END: `${elementName}-move-end`\n};\n\nconst numbers = {\n ANIMATION_DURATION: 150,\n BACKDROP_MAX_OPACITY: 0.3\n};\n\nexport const DIALOG_CONSTANTS = {\n elementName,\n classes,\n selectors,\n attributes,\n events,\n numbers\n};\n\nexport interface IDialogMoveEventData {\n x: number;\n y: number;\n}\n\nexport interface IDialogMoveContext {\n top: number;\n left: number;\n height: number;\n width: number;\n}\n\nexport interface IDialogMoveStartEventData extends IDialogMoveEventData {}\n\nexport type DialogPositionType = 'absolute' | 'relative';\nexport type DialogStateCallback = () => boolean | void | Promise<boolean | void>;\n", "import { ICustomElementFoundation, isDefined, isNumber, isString } from '@tylertech/forge-core';\nimport { IDialogAdapter } from './dialog-adapter';\nimport { DialogPositionType, DialogStateCallback, DIALOG_CONSTANTS, IDialogMoveContext, IDialogMoveStartEventData } from './dialog-constants';\n\nexport interface IDialogFoundation extends ICustomElementFoundation {\n backdropClose: boolean;\n escapeClose: boolean;\n open: boolean;\n fullscreen: boolean;\n openCallback: DialogStateCallback;\n closeCallback: DialogStateCallback;\n beforeCloseCallback: DialogStateCallback;\n positionType: DialogPositionType;\n positionX: number | string | null;\n positionY: number | string | null;\n moveable: boolean;\n moveTarget: string;\n initializeMoveTarget(): void;\n resetPosition(): void;\n}\n\nexport class DialogFoundation implements IDialogFoundation {\n // Private vars\n private _open = false;\n private _backdropClose = true;\n private _escapeClose = true;\n private _fullscreen = false;\n private _openCallback: DialogStateCallback;\n private _closeCallback: DialogStateCallback;\n private _beforeCloseCallback: DialogStateCallback;\n private _positionType: DialogPositionType = 'absolute';\n private _positionX: string | null = null;\n private _positionY: string | null = null;\n private _moveable = false;\n private _moveTarget = DIALOG_CONSTANTS.selectors.DFEAULT_MOVE_TARGET;\n private _isAnimating = false;\n private _isMoving = false;\n private _moveContext: IDialogMoveContext | undefined;\n private _lastPosition: { x: number; y: number } | undefined;\n\n // Event handlers\n private _transitionEndHandler: (evt: TransitionEvent) => void;\n private _documentKeydownHandler: (evt: KeyboardEvent) => void;\n private _backdropClickHandler: (evt: CustomEvent) => void;\n private _moveTargetMouseDownHandler: (evt: MouseEvent) => void;\n private _moveTargetMouseMoveHandler: (evt: MouseEvent) => void;\n private _moveTargetMouseUpHandler: (evt: MouseEvent) => void;\n\n // Event handler states\n private _attachedDocumentKeydownHandler = false;\n private _attachedBackdropClickHandler = false;\n\n constructor(public _adapter: IDialogAdapter) {\n this._transitionEndHandler = (evt: TransitionEvent) => this._onTransitionEnd();\n this._documentKeydownHandler = (evt: KeyboardEvent) => this._onDocumentKeydown(evt);\n this._backdropClickHandler = (evt: CustomEvent) => this._onBackdropClick(evt);\n this._moveTargetMouseDownHandler = (evt: MouseEvent) => this._onMoveTargetMouseDown(evt);\n this._moveTargetMouseMoveHandler = (evt: MouseEvent) => this._onMoveTargetMouseMove(evt);\n this._moveTargetMouseUpHandler = (evt: MouseEvent) => this._onMoveTargetMouseUp(evt);\n }\n\n public initialize(): void {\n this._adapter.initializeAccessibility();\n if (this._open) {\n if (this._moveable) {\n this._adapter.setMoveable(this._moveable);\n this._initMoveTarget();\n }\n }\n }\n\n public destroy(): void {\n if (this._open) {\n this._removeDragHandlers();\n this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler);\n if (this._attachedDocumentKeydownHandler) {\n this._adapter.removeDocumentListener('keydown', this._documentKeydownHandler);\n }\n if (this._attachedBackdropClickHandler) {\n this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler);\n }\n }\n }\n\n private async _applyOpen(value: boolean): Promise<void> {\n if (value) {\n if (typeof this._openCallback === 'function' && !await this._executeOpenCallback()) {\n return;\n }\n this._open = value;\n this._openDialog();\n } else {\n if (typeof this._closeCallback === 'function' && !await this._executeCloseCallback()) {\n return;\n }\n this._open = value;\n this._closeDialog();\n }\n \n this._adapter.toggleHostAttribute(DIALOG_CONSTANTS.attributes.OPEN, this._open);\n }\n\n private async _executeOpenCallback(): Promise<boolean> {\n try {\n return await Promise.resolve(this._openCallback()) !== false;\n } catch (e) {\n return false;\n }\n }\n\n private async _executeCloseCallback(): Promise<boolean> {\n try {\n return await Promise.resolve(this._closeCallback()) !== false;\n } catch (e) {\n return false;\n }\n }\n\n public initializeMoveTarget(): void {\n if (!this._moveTarget) {\n this._moveTarget = DIALOG_CONSTANTS.selectors.DFEAULT_MOVE_TARGET;\n }\n this._initMoveTarget();\n }\n\n public resetPosition(): void {\n this._adapter.setSurfacePosition(this._positionX, this._positionY, this._positionType);\n }\n\n private _normalizePositionValue(value: number | string | null): string | null {\n if (isNumber(value)) {\n return `${value}px`;\n } else if (isString(value)) {\n return value;\n }\n return null;\n }\n\n private _openDialog(): void {\n this._adapter.attach();\n\n if (!this._fullscreen) {\n if (this._moveable) {\n this._adapter.setMoveable(this._moveable);\n }\n if (this._positionX !== null || this._positionY !== null) {\n this._adapter.setSurfacePosition(this._positionX, this._positionY, this._positionType);\n }\n }\n\n this._adapter.setBodyAttribute(DIALOG_CONSTANTS.attributes.OPEN, 'true');\n this._adapter.registerTransitionEndHandler(this._transitionEndHandler);\n this._setDocumentKeydownListener(this._escapeClose);\n this._setBackdropClickListener(this._backdropClose);\n this._adapter.setAnimating(true);\n this._isAnimating = true;\n\n // Ensure transitions are triggered properly\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n this._adapter.setVisibility(true);\n this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.OPEN);\n this._adapter.trySetInitialFocus();\n if (this._adapter.isScrollable()) {\n this._adapter.addRootClass(DIALOG_CONSTANTS.classes.SCROLLABLE);\n }\n });\n });\n\n // Wait for the dialog to finish animating open, then emit the ready event and attach any listeners\n setTimeout(() => {\n window.requestAnimationFrame(() => {\n if (this._open && this._isAnimating) {\n this._onTransitionEnd();\n }\n });\n }, DIALOG_CONSTANTS.numbers.ANIMATION_DURATION);\n }\n\n private _closeDialog(): void {\n if (this._moveTarget) {\n this._removeDragHandlers();\n }\n\n this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler);\n if (this._attachedDocumentKeydownHandler) {\n this._adapter.removeDocumentListener('keydown', this._documentKeydownHandler);\n }\n if (this._attachedBackdropClickHandler) {\n this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler);\n }\n\n this._isAnimating = false;\n this._adapter.setAnimating(true);\n this._adapter.setVisibility(false);\n\n setTimeout(() => {\n this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.CLOSE);\n this._adapter.detach();\n const openDialogs = this._adapter.getOpenDialogs(DIALOG_CONSTANTS.elementName);\n if (!openDialogs.length) {\n this._adapter.removeBodyAttribute(DIALOG_CONSTANTS.attributes.OPEN);\n }\n }, DIALOG_CONSTANTS.numbers.ANIMATION_DURATION);\n }\n\n private _onTransitionEnd(): void {\n if (!this._isAnimating) {\n return;\n }\n this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler);\n this._adapter.setAnimating(false);\n this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.READY);\n this._adapter.tryLayoutChildren();\n if (this._moveable) {\n this._initMoveTarget();\n }\n this._isAnimating = false;\n }\n\n private _initMoveTarget(): void {\n if (!this._fullscreen && this._moveable && this._moveTarget && this._adapter.setMoveTarget(this._moveTarget)) {\n this._adapter.setMoveTargetHandler('mousedown', this._moveTargetMouseDownHandler);\n }\n }\n\n private _removeDragHandlers(): void {\n this._adapter.removeDragTargetHandler('mousedown', this._moveTargetMouseDownHandler);\n this._adapter.removeDocumentListener('mousemove', this._moveTargetMouseMoveHandler);\n this._adapter.removeDocumentListener('mouseup', this._moveTargetMouseUpHandler);\n }\n\n private _onMoveTargetMouseDown(evt: MouseEvent): void {\n evt.preventDefault();\n this._adapter.captureActiveElement();\n const bounds = this._adapter.getSurfaceBounds();\n this._moveContext = {\n top: evt.clientY - bounds.top,\n left: evt.clientX - bounds.left,\n height: bounds.height,\n width: bounds.width\n };\n this._adapter.setDocumentListener('mousemove', this._moveTargetMouseMoveHandler);\n this._adapter.setDocumentListener('mouseup', this._moveTargetMouseUpHandler);\n }\n\n private _onMoveTargetMouseMove(evt: MouseEvent): void {\n evt.preventDefault();\n const position = this._calculateOffsetPosition(evt.pageX, evt.pageY, this._moveContext);\n\n // If this is the beginning of the move sequence, we emit the start event (to allow for preventing default) and\n // then update the surface position if not prevented\n if (!this._isMoving) {\n this._isMoving = true;\n const canDrag = this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.MOVE_START, position as IDialogMoveStartEventData, true, true);\n if (!canDrag) {\n return;\n }\n }\n\n // Ensure that the surface position stays within the bounds of the screen\n const newPosition = this._clampPosition(position, this._moveContext);\n\n // Only update the position if it actually changed\n if (!this._lastPosition || newPosition.x !== this._lastPosition.x || newPosition.y !== this._lastPosition.y) {\n const canMove = this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.MOVED, newPosition as IDialogMoveStartEventData, true, true);\n if (canMove) {\n this._lastPosition = { ...newPosition };\n const newX = this._normalizePositionValue(newPosition.x);\n const newY = this._normalizePositionValue(newPosition.y);\n this._adapter.setSurfacePosition(newX, newY, 'absolute');\n }\n }\n }\n\n private _onMoveTargetMouseUp(evt: MouseEvent): void {\n if (this._isMoving) {\n this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.MOVE_END);\n }\n this._moveComplete();\n }\n\n private _moveComplete(): void {\n this._adapter.tryRestoreActiveElement();\n this._adapter.removeDocumentListener('mousemove', this._moveTargetMouseMoveHandler);\n this._adapter.removeDocumentListener('mouseup', this._moveTargetMouseUpHandler);\n this._lastPosition = undefined;\n this._moveContext = undefined;\n this._isMoving = false;\n }\n\n private _onDocumentKeydown(evt: KeyboardEvent): void {\n evt.stopPropagation();\n if (evt.key && (evt.key === 'Escape' || evt.key === 'Esc')) {\n this._tryClose();\n }\n }\n\n private _onBackdropClick(evt: CustomEvent): void {\n evt.stopPropagation();\n this._tryClose();\n }\n\n private async _tryClose(): Promise<void> {\n const isCancelled = !this._adapter.emitHostEvent(DIALOG_CONSTANTS.events.BEFORE_CLOSE, undefined, undefined, true);\n if (isCancelled) {\n return;\n }\n\n if (!this._beforeCloseCallback) {\n this.open = false;\n return;\n }\n\n try {\n const shouldClose = await Promise.resolve(this._beforeCloseCallback()) !== false;\n if (shouldClose) {\n this.open = false;\n return;\n }\n } catch (err) {\n return;\n }\n }\n\n private _setBackdropClickListener(attach: boolean): void {\n if (!this._open) {\n return;\n }\n\n if (attach && !this._attachedBackdropClickHandler) {\n this._adapter.registerBackdropClickHandler(this._backdropClickHandler);\n this._attachedBackdropClickHandler = true;\n } else if (!attach && this._attachedBackdropClickHandler) {\n this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler);\n this._attachedBackdropClickHandler = false;\n }\n }\n\n private _setDocumentKeydownListener(attach: boolean): void {\n if (!this._open) {\n return;\n }\n\n if (attach && !this._attachedDocumentKeydownHandler) {\n this._adapter.setDocumentListener('keydown', this._documentKeydownHandler);\n this._attachedDocumentKeydownHandler = true;\n } else if (!attach && this._attachedDocumentKeydownHandler) {\n this._adapter.removeDocumentListener('keydown', this._documentKeydownHandler);\n this._attachedDocumentKeydownHandler = false;\n }\n }\n\n private _calculateOffsetPosition(pageX: number, pageY: number, context?: IDialogMoveContext): { x: number; y: number } {\n return {\n x: pageX - (context?.left || 0),\n y: pageY - (context?.top || 0)\n };\n }\n\n private _clampPosition({ x, y }: { x: number; y: number }, context?: IDialogMoveContext): { x: number; y: number } {\n let width = 0;\n let height = 0;\n\n if (context) {\n width = context.width;\n height = context.height;\n }\n\n if (x <= 0) {\n x = 0;\n } else if (x + width >= window.innerWidth) {\n x = window.innerWidth - width;\n }\n\n if (y <= 0) {\n y = 0;\n } else if (y + height >= window.innerHeight) {\n y = window.innerHeight - height;\n }\n\n return { x, y };\n }\n\n /** Controls whether clicking the backdrop closes the dialog or not. */\n public set backdropClose(value: boolean) {\n value = Boolean(value);\n if (this._backdropClose !== value) {\n this._backdropClose = value;\n\n this._setBackdropClickListener(this._backdropClose);\n\n if (isDefined(this._backdropClose)) {\n this._adapter.setHostAttribute(DIALOG_CONSTANTS.attributes.BACKDROP_CLOSE, this._backdropClose.toString());\n } else {\n this._adapter.removeHostAttribute(DIALOG_CONSTANTS.attributes.BACKDROP_CLOSE);\n }\n }\n }\n public get backdropClose(): boolean {\n return this._backdropClose;\n }\n\n /** Controls whether pressing the escape key closes the dialog or not. */\n public set escapeClose(value: boolean) {\n value = Boolean(value);\n if (this._escapeClose !== value) {\n this._escapeClose = value;\n this._setDocumentKeydownListener(this._escapeClose);\n if (isDefined(this._escapeClose)) {\n this._adapter.setHostAttribute(DIALOG_CONSTANTS.attributes.ESCAPE_CLOSE, this._escapeClose.toString());\n } else {\n this._adapter.removeHostAttribute(DIALOG_CONSTANTS.attributes.ESCAPE_CLOSE);\n }\n }\n }\n public get escapeClose(): boolean {\n return this._escapeClose;\n }\n\n public get open(): boolean {\n return this._open;\n }\n public set open(value: boolean) {\n if (this._open !== value) {\n value = Boolean(value);\n if (value !== this._open) {\n this._applyOpen(value);\n }\n }\n }\n\n public get fullscreen(): boolean {\n return this._fullscreen;\n }\n public set fullscreen(value: boolean) {\n if (this._fullscreen !== value) {\n this._fullscreen = value;\n this._adapter.setFullscreen(this._fullscreen);\n }\n }\n\n public get openCallback(): DialogStateCallback {\n return this._openCallback;\n }\n public set openCallback(callback: DialogStateCallback) {\n this._openCallback = callback;\n }\n\n public get closeCallback(): DialogStateCallback {\n return this._closeCallback;\n }\n public set closeCallback(callback: DialogStateCallback) {\n this._closeCallback = callback;\n }\n\n public get beforeCloseCallback(): DialogStateCallback {\n return this._beforeCloseCallback;\n }\n public set beforeCloseCallback(callback: DialogStateCallback) {\n this._beforeCloseCallback = callback;\n }\n\n public get positionType(): DialogPositionType {\n return this._positionType;\n }\n public set positionType(value: DialogPositionType) {\n if (this._positionType !== value) {\n this._positionType = value;\n if (this._open) {\n this._adapter.setSurfacePosition(this._positionX, this._positionY, this._positionType);\n }\n }\n }\n\n public get positionX(): number | string | null {\n return this._positionX;\n }\n public set positionX(value: number | string | null) {\n if (this._positionX !== value) {\n this._positionX = this._normalizePositionValue(value);\n if (this._open) {\n this._adapter.setSurfacePosition(this._positionX, this._positionY, this._positionType);\n }\n }\n }\n\n public get positionY(): number | string | null {\n return this._positionY;\n }\n public set positionY(value: number | string | null) {\n if (this._positionY !== value) {\n this._positionY = this._normalizePositionValue(value);\n if (this._open) {\n this._adapter.setSurfacePosition(this._positionX, this._positionY, this._positionType);\n }\n }\n }\n\n public get moveable(): boolean {\n return this._moveable;\n }\n public set moveable(value: boolean) {\n if (this._moveable !== value) {\n this._moveable = value;\n if (this._open) {\n this._adapter.setMoveable(this._moveable);\n if (this._moveable) {\n this._initMoveTarget();\n } else {\n this._removeDragHandlers();\n this._isMoving = false;\n }\n }\n }\n }\n\n public get moveTarget(): string {\n return this._moveTarget;\n }\n public set moveTarget(value: string) {\n this._moveTarget = value;\n }\n}\n", "import { getShadowElement, removeElement, deepQuerySelectorAll, getActiveElement, toggleClass } from '@tylertech/forge-core';\nimport { BACKDROP_CONSTANTS, IBackdropComponent } from '../backdrop';\nimport { CHECKBOX_CONSTANTS } from '../checkbox';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { ICON_BUTTON_CONSTANTS } from '../icon-button';\nimport { RADIO_CONSTANTS } from '../radio';\nimport { SWITCH_CONSTANTS } from '../switch';\nimport { IDialogComponent } from './dialog';\nimport { DialogPositionType, DIALOG_CONSTANTS } from './dialog-constants';\n\nexport interface IDialogAdapter extends IBaseAdapter {\n initializeAccessibility(): void;\n setAnimating(animating: boolean): void;\n setVisibility(visible: boolean): void;\n attach(): void;\n detach(): void;\n setDocumentListener(type: string, listener: (evt: Event) => void): void;\n removeDocumentListener(type: string, listener: (evt: Event) => void): void;\n registerTransitionEndHandler: (handler: (evt: TransitionEvent) => void) => void;\n deregisterTransitionEndHandler: (handler: (evt: TransitionEvent) => void) => void;\n registerBackdropClickHandler: (handler: (evt: CustomEvent) => void) => void;\n deregisterBackdropClickHandler: (handler: (evt: CustomEvent) => void) => void;\n getOpenDialogs: (selector: string) => NodeListOf<HTMLElement>;\n setBodyAttribute: (name: string, value: string) => void;\n removeBodyAttribute: (name: string) => void;\n trySetInitialFocus: () => void;\n isScrollable(): boolean;\n addRootClass(name: string): void;\n setFullscreen(value: boolean): void;\n setMoveable(value: boolean): void;\n tryLayoutChildren(): void;\n setMoveTarget(selector: string): boolean;\n setMoveTargetHandler(type: string, listener: (evt: MouseEvent) => void): void;\n removeDragTargetHandler(type: string, listener: (evt: MouseEvent) => void): void;\n getSurfaceBounds(): DOMRect;\n setSurfacePosition(x: string | null, y: string | null, positionType: DialogPositionType): void;\n captureActiveElement(): void;\n tryRestoreActiveElement(): void;\n}\n\n/**\n * Provides facilities for interacting with the internal DOM of `DialogComponent`.\n */\nexport class DialogAdapter extends BaseAdapter<IDialogComponent> implements IDialogAdapter {\n private _backdropElement: IBackdropComponent;\n private _containerElement: HTMLElement;\n private _surfaceElement: HTMLElement;\n private _moveTargetElement: HTMLElement | null;\n private _activeElement: HTMLElement | undefined;\n\n constructor(component: IDialogComponent) {\n super(component);\n this._backdropElement = getShadowElement(component, DIALOG_CONSTANTS.selectors.BACKDROP) as IBackdropComponent;\n this._containerElement = getShadowElement(component, DIALOG_CONSTANTS.selectors.CONTAINER);\n this._surfaceElement = getShadowElement(component, DIALOG_CONSTANTS.selectors.SURFACE);\n }\n\n public initializeAccessibility(): void {\n if (!this._component.hasAttribute('role')) {\n this._component.setAttribute('role', 'dialog');\n }\n this._component.setAttribute('aria-modal', 'true');\n }\n\n public setAnimating(animating: boolean): void {\n if (animating) {\n this._containerElement.classList.add(DIALOG_CONSTANTS.classes.ANIMATING);\n } else {\n this._containerElement.classList.remove(DIALOG_CONSTANTS.classes.ANIMATING);\n }\n }\n\n public setVisibility(visible: boolean): void {\n if (visible) {\n this._containerElement.classList.add(DIALOG_CONSTANTS.classes.OPEN);\n } else {\n this._containerElement.classList.remove(DIALOG_CONSTANTS.classes.OPEN);\n }\n }\n\n public attach(): void {\n document.body.appendChild(this._component);\n }\n\n public detach(): void {\n if (this._activeElement) {\n this._activeElement = undefined;\n }\n removeElement(this._component);\n }\n\n public registerTransitionEndHandler(handler: (evt: TransitionEvent) => void): void {\n this._surfaceElement.addEventListener('transitionend', handler);\n }\n\n public deregisterTransitionEndHandler(handler: (evt: TransitionEvent) => void): void {\n this._surfaceElement.removeEventListener('transitionend', handler);\n }\n\n public setDocumentListener(type: string, listener: (evt: Event) => void): void {\n document.addEventListener(type, listener);\n }\n\n public removeDocumentListener(type: string, listener: (evt: Event) => void): void {\n document.removeEventListener(type, listener);\n }\n\n public registerBackdropClickHandler(handler: (evt: CustomEvent) => void): void {\n this._backdropElement.addEventListener(BACKDROP_CONSTANTS.events.BACKDROP_CLICK, handler);\n }\n\n public deregisterBackdropClickHandler(handler: (evt: CustomEvent) => void): void {\n this._backdropElement.removeEventListener(BACKDROP_CONSTANTS.events.BACKDROP_CLICK, handler);\n }\n\n public getOpenDialogs(selector: string): NodeListOf<HTMLElement> {\n return document.querySelectorAll(selector);\n }\n\n public setBodyAttribute(name: string, value: string): void {\n document.body.setAttribute(name, value);\n }\n\n public removeBodyAttribute(name: string): void {\n document.body.removeAttribute(name);\n }\n\n public trySetInitialFocus(): void {\n const elements = deepQuerySelectorAll(this._component, DIALOG_CONSTANTS.selectors.INITIAL_FOCUS);\n if (elements && elements.length) {\n const initialElement = elements[elements.length - 1] as HTMLElement;\n initialElement.focus();\n }\n }\n\n public isScrollable(): boolean {\n const contentElement = this._component.querySelector(DIALOG_CONSTANTS.selectors.CONTENT) as HTMLElement;\n if (contentElement) {\n return contentElement.scrollHeight > contentElement.offsetHeight;\n }\n return false;\n }\n\n public addRootClass(name: string): void {\n this._component.classList.add(name);\n }\n\n public setFullscreen(value: boolean): void {\n if (value) {\n this._containerElement.classList.add(DIALOG_CONSTANTS.classes.FULLSCREEN);\n } else {\n this._containerElement.classList.remove(DIALOG_CONSTANTS.classes.FULLSCREEN);\n }\n }\n\n public setMoveable(value: boolean): void {\n toggleClass(this._containerElement, value, DIALOG_CONSTANTS.classes.MOVEABLE);\n }\n\n public tryLayoutChildren(): void {\n const layoutChildren = [ICON_BUTTON_CONSTANTS.elementName, SWITCH_CONSTANTS.elementName, CHECKBOX_CONSTANTS.elementName, RADIO_CONSTANTS.elementName];\n const commonLayoutElements = Array.from(this._component.querySelectorAll(layoutChildren.join(','))) as any[];\n commonLayoutElements.filter(el => typeof el.layout === 'function').forEach(el => el.layout());\n }\n\n public setMoveTarget(selector: string): boolean {\n if (!selector) {\n return false;\n }\n this._moveTargetElement = this._component.querySelector(selector);\n return !!this._moveTargetElement;\n }\n\n public setMoveTargetHandler(type: string, listener: (evt: MouseEvent) => void): void {\n if (this._moveTargetElement) {\n this._moveTargetElement.addEventListener(type, listener);\n }\n }\n\n public removeDragTargetHandler(type: string, listener: (evt: MouseEvent) => void): void {\n if (this._moveTargetElement) {\n this._moveTargetElement.removeEventListener(type, listener);\n }\n }\n\n public getSurfaceBounds(): DOMRect {\n return this._surfaceElement.getBoundingClientRect() as DOMRect;\n }\n\n public setSurfacePosition(x: string | null, y: string | null, positionType: DialogPositionType): void {\n this._surfaceElement.style.position = positionType === 'absolute' ? positionType : 'relative';\n if (y !== null) {\n this._surfaceElement.style.top = y;\n } else {\n this._surfaceElement.style.removeProperty('top');\n }\n if (x !== null) {\n this._surfaceElement.style.left = x;\n } else {\n this._surfaceElement.style.removeProperty('left');\n }\n }\n\n public captureActiveElement(): void {\n this._activeElement = getActiveElement() as HTMLElement;\n if (this._activeElement) {\n this._activeElement.blur();\n }\n }\n\n public tryRestoreActiveElement(): void {\n if (this._activeElement) {\n if (this._activeElement.isConnected) {\n this._activeElement.focus();\n }\n this._activeElement = undefined;\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\n\nimport { DialogFoundation } from './dialog-foundation';\nimport { DialogAdapter } from './dialog-adapter';\nimport { DIALOG_CONSTANTS, DialogPositionType, IDialogMoveStartEventData, IDialogMoveEventData, DialogStateCallback } from './dialog-constants';\nimport { BackdropComponent } from '../backdrop';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\n\nconst template = '<template><div class=\\\"forge-dialog\\\" part=\\\"root\\\"><forge-backdrop part=\\\"scrim\\\"></forge-backdrop><div class=\\\"forge-dialog__surface\\\" part=\\\"surface\\\"><slot></slot></div></div></template>';\nconst styles = '.forge-dialog{position:fixed;top:0;bottom:0;left:0;right:0;z-index:8;z-index:var(--forge-z-index-dialog,8);-webkit-box-align:center;align-items:center;-webkit-box-align:var(--forge-dialog-align-items,center);align-items:var(--forge-dialog-align-items,center);top:0;top:var(--forge-dialog-top,0);padding:24px;padding:var(--forge-dialog-padding,24px);display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;visibility:hidden}@media (max-width:599px){.forge-dialog{padding:0}}.forge-dialog--moveable:not(.forge-dialog--fullscreen) ::slotted([forge-dialog-move-target]){cursor:move}.forge-dialog--animating{visibility:visible}.forge-dialog--animating .forge-dialog--open .forge-dialog__surface{-webkit-transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1)}.forge-dialog--animating .forge-dialog__surface{-webkit-transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1)}.forge-dialog--scrollable .forge-dialog__footer,.forge-dialog--scrollable .forge-dialog__title{border-color:rgba(0,0,0,.12)}.forge-dialog--open{visibility:visible!important}.forge-dialog--open .forge-dialog__surface{-webkit-transform:scale(1);transform:scale(1);opacity:1}.forge-dialog__surface{-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);background-color:#fff;background-color:var(--mdc-theme-surface,#fff);width:auto;width:var(--forge-dialog-width,auto);height:auto;height:var(--forge-dialog-height,auto);min-width:280px;min-width:var(--forge-dialog-min-width,280px);max-width:100%;max-width:var(--forge-dialog-max-width,100%);max-height:100%;max-height:var(--forge-dialog-max-height,100%);border-radius:4px;border-radius:var(--forge-dialog-border-radius,var(--mdc-shape-medium,4px));display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transform:scale(.8);transform:scale(.8);opacity:0;overflow:hidden;z-index:inherit}.forge-dialog__header{margin:0;padding:0 24px 9px;border-bottom:1px solid transparent}.forge-dialog__title{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:1.25rem;font-size:var(--forge-typography-title-font-size, 1.25rem);line-height:2rem;line-height:var(--forge-typography-title-line-height, 2rem);font-weight:400;font-weight:var(--forge-typography-title-font-weight,400);letter-spacing:.0125em;letter-spacing:var(--forge-typography-title-letter-spacing, .0125em);text-decoration:inherit;-webkit-text-decoration:var(--forge-typography-title-text-decoration,inherit);text-decoration:var(--forge-typography-title-text-decoration,inherit);text-transform:inherit;text-transform:var(--forge-typography-title-text-transform,inherit);-webkit-box-sizing:border-box;box-sizing:border-box;margin:0}.forge-dialog__title::before{display:inline-block;width:0;height:40px;content:\\\"\\\";vertical-align:0}.forge-dialog__body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-body1-font-size, 1rem);line-height:1.5rem;line-height:var(--mdc-typography-body1-line-height, 1.5rem);font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);padding-top:20px;padding:0 24px 24px;overflow:auto}.forge-dialog__body--scrollable{max-height:195px;border-top:1px solid rgba(0,0,0,.1);border-bottom:1px solid rgba(0,0,0,.1);overflow-x:auto;overflow-y:scroll;-webkit-overflow-scrolling:touch}.forge-dialog__footer{display:-webkit-box;display:flex;position:relative;flex-shrink:0;flex-wrap:wrap;-webkit-box-align:center;align-items:center;-webkit-box-pack:end;justify-content:flex-end;-webkit-box-sizing:border-box;box-sizing:border-box;min-height:52px;margin:0;padding:8px;border-top:1px solid transparent}.forge-dialog--fullscreen{padding:0}.forge-dialog--fullscreen .forge-dialog__surface{height:100%;width:100%;min-width:auto;max-width:100%;border-radius:0}:host{display:block}:host([hidden]){display:none}';\n\nexport interface IDialogComponent extends IBaseComponent {\n backdropClose: boolean;\n escapeClose: boolean;\n open: boolean;\n fullscreen: boolean;\n openCallback: DialogStateCallback;\n closeCallback: DialogStateCallback;\n beforeCloseCallback: () => boolean | Promise<boolean>;\n positionType: DialogPositionType;\n positionX: number | string | null;\n positionY: number | string | null;\n moveable: boolean;\n moveTarget: string;\n initializeMoveTarget(): void;\n resetPosition(): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-dialog': IDialogComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-dialog-before-close': CustomEvent<void>;\n 'forge-dialog-open': CustomEvent<void>;\n 'forge-dialog-close': CustomEvent<void>;\n 'forge-dialog-ready': CustomEvent<void>;\n 'forge-dialog-move-start': CustomEvent<IDialogMoveStartEventData>;\n 'forge-dialog-move': CustomEvent<IDialogMoveEventData>;\n 'forge-dialog-move-end': CustomEvent<void>;\n }\n}\n\n/**\n * The web component class behind the `<forge-dialog>` custom element.\n * \n * @tag forge-dialog\n */\n@CustomElement({\n name: DIALOG_CONSTANTS.elementName,\n dependencies: [BackdropComponent]\n})\nexport class DialogComponent extends BaseComponent implements IDialogComponent {\n public static get observedAttributes(): string[] {\n return [\n DIALOG_CONSTANTS.attributes.BACKDROP_CLOSE,\n DIALOG_CONSTANTS.attributes.ESCAPE_CLOSE,\n DIALOG_CONSTANTS.attributes.OPEN,\n DIALOG_CONSTANTS.attributes.FULLSCREEN,\n DIALOG_CONSTANTS.attributes.POSITION_TYPE,\n DIALOG_CONSTANTS.attributes.POSITION_X,\n DIALOG_CONSTANTS.attributes.POSITION_Y,\n DIALOG_CONSTANTS.attributes.MOVEABLE,\n DIALOG_CONSTANTS.attributes.MOVE_TARGET\n ];\n }\n\n private _foundation: DialogFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new DialogFoundation(new DialogAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.destroy();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case DIALOG_CONSTANTS.attributes.BACKDROP_CLOSE:\n this.backdropClose = newValue === 'true';\n break;\n case DIALOG_CONSTANTS.attributes.ESCAPE_CLOSE:\n this.escapeClose = newValue === 'true';\n break;\n case DIALOG_CONSTANTS.attributes.OPEN:\n this.open = coerceBoolean(newValue);\n break;\n case DIALOG_CONSTANTS.attributes.FULLSCREEN:\n this.fullscreen = coerceBoolean(newValue);\n break;\n case DIALOG_CONSTANTS.attributes.POSITION_TYPE:\n this.positionType = newValue as DialogPositionType;\n break;\n case DIALOG_CONSTANTS.attributes.POSITION_X:\n this.positionX = newValue;\n break;\n case DIALOG_CONSTANTS.attributes.POSITION_Y:\n this.positionY = newValue;\n break;\n case DIALOG_CONSTANTS.attributes.MOVEABLE:\n this.moveable = coerceBoolean(newValue);\n break;\n case DIALOG_CONSTANTS.attributes.MOVE_TARGET:\n this.moveTarget = newValue;\n break;\n }\n }\n\n /** Controls whether clicking the backdrop closes the dialog or not. Default is true. */\n @FoundationProperty()\n public backdropClose: boolean;\n\n /** Controls whether pressing the escape key closes the dialog or not. Default is true. */\n @FoundationProperty()\n public escapeClose: boolean;\n\n /** Controls whether the dialog is open or not. Default is false. */\n @FoundationProperty()\n public open: boolean;\n\n /** Controls whether the dialog is full screen or not. Default is false. */\n @FoundationProperty()\n public fullscreen: boolean;\n\n /** The function to call when the dialog wants to open. */\n @FoundationProperty()\n public openCallback: DialogStateCallback;\n\n /** the function to call when the dialog wants to close. */\n @FoundationProperty()\n public closeCallback: DialogStateCallback;\n\n /** the function to call when the dialog wants to close. */\n @FoundationProperty()\n public beforeCloseCallback: () => boolean | Promise<boolean>;\n\n /** Gets/sets the position type when using custom positioning values. Default is 'absolute'. */\n @FoundationProperty()\n public positionType: DialogPositionType;\n\n /** Controls the horizontal position of the dialog surface. */\n @FoundationProperty()\n public positionX: number | string | null;\n\n /** Controls the vertical position of the dialog surface. */\n @FoundationProperty()\n public positionY: number | string | null;\n\n /** Gets/sets whether the dialog surface can be moved or not. */\n @FoundationProperty()\n public moveable: boolean;\n\n /** Gets/sets the selector used to target the element that is used as the drag target. */\n @FoundationProperty()\n public moveTarget: string;\n\n public initializeMoveTarget(): void {\n this._foundation.initializeMoveTarget();\n }\n\n public resetPosition(): void {\n this._foundation.resetPosition();\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { DialogComponent } from './dialog';\n\nexport * from './dialog-adapter';\nexport * from './dialog-constants';\nexport * from './dialog-foundation';\nexport * from './dialog';\n\nexport function defineDialogComponent(): void {\n defineCustomElement(DialogComponent);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
ICON_CONSTANTS,
|
|
12
12
|
IconComponent,
|
|
13
13
|
IconRegistry
|
|
14
|
-
} from "./chunk.
|
|
14
|
+
} from "./chunk.WSH4S3GM.js";
|
|
15
15
|
import {
|
|
16
16
|
BaseAdapter
|
|
17
17
|
} from "./chunk.KZATVOA6.js";
|
|
@@ -165,4 +165,4 @@ export {
|
|
|
165
165
|
OpenIconComponent,
|
|
166
166
|
defineOpenIconComponent
|
|
167
167
|
};
|
|
168
|
-
//# sourceMappingURL=chunk.
|
|
168
|
+
//# sourceMappingURL=chunk.S3UVF647.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/open-icon/open-icon-constants.ts", "../../src/open-icon/open-icon-foundation.ts", "../../src/open-icon/open-icon-adapter.ts", "../../src/open-icon/open-icon.ts", "../../src/open-icon/index.ts"],
|
|
4
|
-
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}open-icon`;\n\nconst classes = {\n ICON: 'forge-open-icon',\n ICON_OPEN: 'forge-open-icon--open'\n};\n\nconst attributes = {\n OPEN: 'open',\n ORIENTATION: 'orientation'\n};\n\nconst strings = {\n ORIENTATION_VERTICAL: 'vertical',\n ORIENTATION_HORIZONTAL: 'horizontal'\n};\n\nexport const OPEN_ICON_CONSTANTS = {\n elementName,\n classes,\n attributes,\n strings\n};\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\n\nimport { IOpenIconAdapter } from './open-icon-adapter';\nimport { OPEN_ICON_CONSTANTS } from './open-icon-constants';\n\nexport interface IOpenIconFoundation extends ICustomElementFoundation {\n open: boolean;\n}\n\nexport class OpenIconFoundation implements IOpenIconFoundation {\n private _open = false;\n private _orientation = OPEN_ICON_CONSTANTS.strings.ORIENTATION_VERTICAL;\n\n constructor(private _adapter: IOpenIconAdapter) {}\n\n public initialize(): void {\n this._adapter.setOrientation(this._orientation);\n this._adapter.setOpenState(this._open);\n }\n\n /** Controls the open state of the icon. */\n public get open(): boolean {\n return this._open;\n }\n public set open(value: boolean) {\n value = Boolean(value);\n if (this._open !== value) {\n this._open = value;\n this._adapter.setOpenState(this._open);\n }\n }\n\n public get orientation(): string {\n return this._orientation;\n }\n public set orientation(value: string) {\n this._orientation = value;\n this._adapter.setOrientation(this._orientation);\n }\n}\n", "import { getShadowElement, toggleClass } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IOpenIconComponent } from './open-icon';\nimport { OPEN_ICON_CONSTANTS } from './open-icon-constants';\nimport { ICON_CONSTANTS, IIconComponent } from '../icon';\n\nexport interface IOpenIconAdapter extends IBaseAdapter {\n setOrientation: (orientation: string) => void;\n setOpenState: (open: boolean) => void;\n}\n\nexport class OpenIconAdapter extends BaseAdapter<IOpenIconComponent> implements IOpenIconAdapter {\n private _openIcon: HTMLElement;\n private _iconElement: IIconComponent;\n\n constructor(component: IOpenIconComponent) {\n super(component);\n this._openIcon = getShadowElement(component, `.${OPEN_ICON_CONSTANTS.classes.ICON}`);\n this._iconElement = getShadowElement(component, ICON_CONSTANTS.elementName) as IIconComponent;\n }\n\n public setOrientation(orientation: string): void {\n if (orientation === OPEN_ICON_CONSTANTS.strings.ORIENTATION_HORIZONTAL) {\n this._iconElement.name = 'keyboard_arrow_right';\n } else {\n this._iconElement.name = 'keyboard_arrow_down';\n }\n }\n\n public setOpenState(open: boolean): void {\n toggleClass(this._openIcon, open, OPEN_ICON_CONSTANTS.classes.ICON_OPEN);\n }\n}\n", "import { CustomElement, attachShadowTemplate, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\nimport { tylIconKeyboardArrowLeft, tylIconKeyboardArrowDown } from '@tylertech/tyler-icons/standard';\nimport { OpenIconFoundation } from './open-icon-foundation';\nimport { OpenIconAdapter } from './open-icon-adapter';\nimport { OPEN_ICON_CONSTANTS } from './open-icon-constants';\nimport { IconRegistry, IconComponent } from '../icon';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\n\nconst template = '<template><span class=\\\"forge-open-icon\\\" part=\\\"root\\\"><forge-icon class=\\\"icon\\\" part=\\\"icon\\\"></forge-icon></span></template>';\nconst styles = '.forge-open-icon{color:#757575;color:var(--forge-theme-icon-color,#757575)}.forge-open-icon .icon{-webkit-transition:-webkit-transform .4s;transition:-webkit-transform .4s;transition:transform .4s;transition:transform .4s,-webkit-transform .4s}.forge-open-icon.forge-open-icon--open .icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}:host{line-height:.5}:host([hidden]){display:none}';\n\nexport interface IOpenIconComponent extends IBaseComponent {\n open: boolean;\n orientation: string;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-open-icon': IOpenIconComponent;\n }\n}\n\n@CustomElement({\n name: OPEN_ICON_CONSTANTS.elementName,\n dependencies: [IconComponent]\n})\nexport class OpenIconComponent extends BaseComponent implements IOpenIconComponent {\n public static get observedAttributes(): string[] {\n return [\n OPEN_ICON_CONSTANTS.attributes.OPEN,\n OPEN_ICON_CONSTANTS.attributes.ORIENTATION\n ];\n }\n\n private _foundation: OpenIconFoundation;\n\n constructor() {\n super();\n IconRegistry.define([tylIconKeyboardArrowLeft, tylIconKeyboardArrowDown]);\n attachShadowTemplate(this, template, styles);\n this._foundation = new OpenIconFoundation(new OpenIconAdapter(this));\n }\n\n public initializedCallback(): void {\n this._foundation.initialize();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case OPEN_ICON_CONSTANTS.attributes.OPEN:\n this.open = coerceBoolean(newValue);\n break;\n case OPEN_ICON_CONSTANTS.attributes.ORIENTATION:\n this.orientation = newValue;\n break;\n }\n }\n\n /** Controls the open state of the icon. */\n @FoundationProperty()\n public open: boolean;\n\n /**\n * Gets/sets the orientation of the icon.\n * Valid values are 'vertical' (default) or 'horizontal'.\n */\n @FoundationProperty()\n public orientation: string;\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { OpenIconComponent } from './open-icon';\n\nexport * from './open-icon-adapter';\nexport * from './open-icon-constants';\nexport * from './open-icon-foundation';\nexport * from './open-icon';\n\nexport function defineOpenIconComponent(): void {\n defineCustomElement(OpenIconComponent);\n}\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAM,cAA2C,GAAG;AAEpD,IAAM,UAAU;AAAA,EACd,MAAM;AAAA,EACN,WAAW;AACb;AAEA,IAAM,aAAa;AAAA,EACjB,MAAM;AAAA,EACN,aAAa;AACf;AAEA,IAAM,UAAU;AAAA,EACd,sBAAsB;AAAA,EACtB,wBAAwB;AAC1B;AAEO,IAAM,sBAAsB;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;;;ACfO,IAAM,qBAAN,MAAwD;AAAA,EAI7D,YAAoB,UAA4B;AAA5B;AAHpB,SAAQ,QAAQ;AAChB,SAAQ,eAAe,oBAAoB,QAAQ;AAAA,EAEF;AAAA,EAEjD,AAAO,aAAmB;AACxB,SAAK,SAAS,eAAe,KAAK,YAAY;AAC9C,SAAK,SAAS,aAAa,KAAK,KAAK;AAAA,EACvC;AAAA,EAGA,IAAW,OAAgB;AACzB,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,KAAK,OAAgB;AAC9B,YAAQ,QAAQ,KAAK;AACrB,QAAI,KAAK,UAAU,OAAO;AACxB,WAAK,QAAQ;AACb,WAAK,SAAS,aAAa,KAAK,KAAK;AAAA,IACvC;AAAA,EACF;AAAA,EAEA,IAAW,cAAsB;AAC/B,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,YAAY,OAAe;AACpC,SAAK,eAAe;AACpB,SAAK,SAAS,eAAe,KAAK,YAAY;AAAA,EAChD;AACF;;;AC5BO,IAAM,kBAAN,cAA8B,YAA4D;AAAA,EAI/F,YAAY,WAA+B;AACzC,UAAM,SAAS;AACf,SAAK,YAAY,iBAAiB,WAAW,IAAI,oBAAoB,QAAQ,MAAM;AACnF,SAAK,eAAe,iBAAiB,WAAW,eAAe,WAAW;AAAA,EAC5E;AAAA,EAEA,AAAO,eAAe,aAA2B;AAC/C,QAAI,gBAAgB,oBAAoB,QAAQ,wBAAwB;AACtE,WAAK,aAAa,OAAO;AAAA,IAC3B,OAAO;AACL,WAAK,aAAa,OAAO;AAAA,IAC3B;AAAA,EACF;AAAA,EAEA,AAAO,aAAa,MAAqB;AACvC,gBAAY,KAAK,WAAW,MAAM,oBAAoB,QAAQ,SAAS;AAAA,EACzE;AACF;;;ACxBA,IAAM,WAAW;AACjB,IAAM,SAAS;
|
|
4
|
+
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}open-icon`;\n\nconst classes = {\n ICON: 'forge-open-icon',\n ICON_OPEN: 'forge-open-icon--open'\n};\n\nconst attributes = {\n OPEN: 'open',\n ORIENTATION: 'orientation'\n};\n\nconst strings = {\n ORIENTATION_VERTICAL: 'vertical',\n ORIENTATION_HORIZONTAL: 'horizontal'\n};\n\nexport const OPEN_ICON_CONSTANTS = {\n elementName,\n classes,\n attributes,\n strings\n};\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\n\nimport { IOpenIconAdapter } from './open-icon-adapter';\nimport { OPEN_ICON_CONSTANTS } from './open-icon-constants';\n\nexport interface IOpenIconFoundation extends ICustomElementFoundation {\n open: boolean;\n}\n\nexport class OpenIconFoundation implements IOpenIconFoundation {\n private _open = false;\n private _orientation = OPEN_ICON_CONSTANTS.strings.ORIENTATION_VERTICAL;\n\n constructor(private _adapter: IOpenIconAdapter) {}\n\n public initialize(): void {\n this._adapter.setOrientation(this._orientation);\n this._adapter.setOpenState(this._open);\n }\n\n /** Controls the open state of the icon. */\n public get open(): boolean {\n return this._open;\n }\n public set open(value: boolean) {\n value = Boolean(value);\n if (this._open !== value) {\n this._open = value;\n this._adapter.setOpenState(this._open);\n }\n }\n\n public get orientation(): string {\n return this._orientation;\n }\n public set orientation(value: string) {\n this._orientation = value;\n this._adapter.setOrientation(this._orientation);\n }\n}\n", "import { getShadowElement, toggleClass } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IOpenIconComponent } from './open-icon';\nimport { OPEN_ICON_CONSTANTS } from './open-icon-constants';\nimport { ICON_CONSTANTS, IIconComponent } from '../icon';\n\nexport interface IOpenIconAdapter extends IBaseAdapter {\n setOrientation: (orientation: string) => void;\n setOpenState: (open: boolean) => void;\n}\n\nexport class OpenIconAdapter extends BaseAdapter<IOpenIconComponent> implements IOpenIconAdapter {\n private _openIcon: HTMLElement;\n private _iconElement: IIconComponent;\n\n constructor(component: IOpenIconComponent) {\n super(component);\n this._openIcon = getShadowElement(component, `.${OPEN_ICON_CONSTANTS.classes.ICON}`);\n this._iconElement = getShadowElement(component, ICON_CONSTANTS.elementName) as IIconComponent;\n }\n\n public setOrientation(orientation: string): void {\n if (orientation === OPEN_ICON_CONSTANTS.strings.ORIENTATION_HORIZONTAL) {\n this._iconElement.name = 'keyboard_arrow_right';\n } else {\n this._iconElement.name = 'keyboard_arrow_down';\n }\n }\n\n public setOpenState(open: boolean): void {\n toggleClass(this._openIcon, open, OPEN_ICON_CONSTANTS.classes.ICON_OPEN);\n }\n}\n", "import { CustomElement, attachShadowTemplate, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\nimport { tylIconKeyboardArrowLeft, tylIconKeyboardArrowDown } from '@tylertech/tyler-icons/standard';\nimport { OpenIconFoundation } from './open-icon-foundation';\nimport { OpenIconAdapter } from './open-icon-adapter';\nimport { OPEN_ICON_CONSTANTS } from './open-icon-constants';\nimport { IconRegistry, IconComponent } from '../icon';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\n\nconst template = '<template><span class=\\\"forge-open-icon\\\" part=\\\"root\\\"><forge-icon class=\\\"icon\\\" part=\\\"icon\\\"></forge-icon></span></template>';\nconst styles = '.forge-open-icon{color:#757575;color:var(--forge-theme-icon-color,#757575)}.forge-open-icon .icon{-webkit-transition:-webkit-transform .4s;transition:-webkit-transform .4s;transition:transform .4s;transition:transform .4s,-webkit-transform .4s}.forge-open-icon.forge-open-icon--open .icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}:host{line-height:.5}:host([hidden]){display:none}';\n\nexport interface IOpenIconComponent extends IBaseComponent {\n open: boolean;\n orientation: string;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-open-icon': IOpenIconComponent;\n }\n}\n\n/**\n * The web component class behind the `<forge-open-icon>` custom element.\n * \n * @tag forge-open-icon\n */\n@CustomElement({\n name: OPEN_ICON_CONSTANTS.elementName,\n dependencies: [IconComponent]\n})\nexport class OpenIconComponent extends BaseComponent implements IOpenIconComponent {\n public static get observedAttributes(): string[] {\n return [\n OPEN_ICON_CONSTANTS.attributes.OPEN,\n OPEN_ICON_CONSTANTS.attributes.ORIENTATION\n ];\n }\n\n private _foundation: OpenIconFoundation;\n\n constructor() {\n super();\n IconRegistry.define([tylIconKeyboardArrowLeft, tylIconKeyboardArrowDown]);\n attachShadowTemplate(this, template, styles);\n this._foundation = new OpenIconFoundation(new OpenIconAdapter(this));\n }\n\n public initializedCallback(): void {\n this._foundation.initialize();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case OPEN_ICON_CONSTANTS.attributes.OPEN:\n this.open = coerceBoolean(newValue);\n break;\n case OPEN_ICON_CONSTANTS.attributes.ORIENTATION:\n this.orientation = newValue;\n break;\n }\n }\n\n /** Controls the open state of the icon. */\n @FoundationProperty()\n public open: boolean;\n\n /**\n * Gets/sets the orientation of the icon.\n * Valid values are 'vertical' (default) or 'horizontal'.\n */\n @FoundationProperty()\n public orientation: string;\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { OpenIconComponent } from './open-icon';\n\nexport * from './open-icon-adapter';\nexport * from './open-icon-constants';\nexport * from './open-icon-foundation';\nexport * from './open-icon';\n\nexport function defineOpenIconComponent(): void {\n defineCustomElement(OpenIconComponent);\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAM,cAA2C,GAAG;AAEpD,IAAM,UAAU;AAAA,EACd,MAAM;AAAA,EACN,WAAW;AACb;AAEA,IAAM,aAAa;AAAA,EACjB,MAAM;AAAA,EACN,aAAa;AACf;AAEA,IAAM,UAAU;AAAA,EACd,sBAAsB;AAAA,EACtB,wBAAwB;AAC1B;AAEO,IAAM,sBAAsB;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;;;ACfO,IAAM,qBAAN,MAAwD;AAAA,EAI7D,YAAoB,UAA4B;AAA5B;AAHpB,SAAQ,QAAQ;AAChB,SAAQ,eAAe,oBAAoB,QAAQ;AAAA,EAEF;AAAA,EAEjD,AAAO,aAAmB;AACxB,SAAK,SAAS,eAAe,KAAK,YAAY;AAC9C,SAAK,SAAS,aAAa,KAAK,KAAK;AAAA,EACvC;AAAA,EAGA,IAAW,OAAgB;AACzB,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,KAAK,OAAgB;AAC9B,YAAQ,QAAQ,KAAK;AACrB,QAAI,KAAK,UAAU,OAAO;AACxB,WAAK,QAAQ;AACb,WAAK,SAAS,aAAa,KAAK,KAAK;AAAA,IACvC;AAAA,EACF;AAAA,EAEA,IAAW,cAAsB;AAC/B,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,YAAY,OAAe;AACpC,SAAK,eAAe;AACpB,SAAK,SAAS,eAAe,KAAK,YAAY;AAAA,EAChD;AACF;;;AC5BO,IAAM,kBAAN,cAA8B,YAA4D;AAAA,EAI/F,YAAY,WAA+B;AACzC,UAAM,SAAS;AACf,SAAK,YAAY,iBAAiB,WAAW,IAAI,oBAAoB,QAAQ,MAAM;AACnF,SAAK,eAAe,iBAAiB,WAAW,eAAe,WAAW;AAAA,EAC5E;AAAA,EAEA,AAAO,eAAe,aAA2B;AAC/C,QAAI,gBAAgB,oBAAoB,QAAQ,wBAAwB;AACtE,WAAK,aAAa,OAAO;AAAA,IAC3B,OAAO;AACL,WAAK,aAAa,OAAO;AAAA,IAC3B;AAAA,EACF;AAAA,EAEA,AAAO,aAAa,MAAqB;AACvC,gBAAY,KAAK,WAAW,MAAM,oBAAoB,QAAQ,SAAS;AAAA,EACzE;AACF;;;ACxBA,IAAM,WAAW;AACjB,IAAM,SAAS;AAsBR,IAAM,oBAAN,cAAgC,cAA4C;AAAA,EAUjF,cAAc;AACZ,UAAM;AACN,iBAAa,OAAO,CAAC,0BAA0B,wBAAwB,CAAC;AACxE,yBAAqB,MAAM,UAAU,MAAM;AAC3C,SAAK,cAAc,IAAI,mBAAmB,IAAI,gBAAgB,IAAI,CAAC;AAAA,EACrE;AAAA,EAdA,WAAkB,qBAA+B;AAC/C,WAAO;AAAA,MACL,oBAAoB,WAAW;AAAA,MAC/B,oBAAoB,WAAW;AAAA,IACjC;AAAA,EACF;AAAA,EAWA,AAAO,sBAA4B;AACjC,SAAK,YAAY,WAAW;AAAA,EAC9B;AAAA,EAEA,AAAO,yBAAyB,MAAc,UAAkB,UAAwB;AACtF,YAAQ;AAAA,WACD,oBAAoB,WAAW;AAClC,aAAK,OAAO,cAAc,QAAQ;AAClC;AAAA,WACG,oBAAoB,WAAW;AAClC,aAAK,cAAc;AACnB;AAAA;AAAA,EAEN;AAYF;AARS;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AAlCI,kBAkCJ;AAOA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AAzCI,kBAyCJ;AAzCI,oBAAN;AAAA,EAJP,AAAC,cAAc;AAAA,IACb,MAAM,oBAAoB;AAAA,IAC1B,cAAc,CAAC,aAAa;AAAA,EAC9B,CAAC;AAAA,GACY;;;ACtBN,mCAAyC;AAC9C,sBAAoB,iBAAiB;AACvC;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/view-switcher/view/view-constants.ts", "../../src/view-switcher/view/view.ts", "../../src/view-switcher/view/index.ts"],
|
|
4
|
-
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}view`;\n\nexport const VIEW_CONSTANTS = {\n elementName\n};\n", "import { CustomElement, attachShadowTemplate } from '@tylertech/forge-core';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\n\nimport { VIEW_CONSTANTS } from './view-constants';\n\nconst template = '<template><slot></slot></template>';\nconst styles = ':host{display:block}:host([hidden]){display:none}';\n\nexport interface IViewComponent extends IBaseComponent {}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-view': IViewComponent;\n }\n}\n\n@CustomElement({\n name: VIEW_CONSTANTS.elementName\n})\nexport class ViewComponent extends BaseComponent implements IViewComponent {\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { ViewComponent } from './view';\n\nexport * from './view-constants';\nexport * from './view';\n\nexport function defineViewComponent(): void {\n defineCustomElement(ViewComponent);\n}\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;AAEA,IAAM,cAA2C,GAAG;AAE7C,IAAM,iBAAiB;AAAA,EAC5B;AACF;;;ACDA,IAAM,WAAW;AACjB,IAAM,SAAS;
|
|
4
|
+
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}view`;\n\nexport const VIEW_CONSTANTS = {\n elementName\n};\n", "import { CustomElement, attachShadowTemplate } from '@tylertech/forge-core';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\n\nimport { VIEW_CONSTANTS } from './view-constants';\n\nconst template = '<template><slot></slot></template>';\nconst styles = ':host{display:block}:host([hidden]){display:none}';\n\nexport interface IViewComponent extends IBaseComponent {}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-view': IViewComponent;\n }\n}\n\n/**\n * The web component class behind the `<forge-view>` custom element.\n * \n * @tag forge-view\n */\n@CustomElement({\n name: VIEW_CONSTANTS.elementName\n})\nexport class ViewComponent extends BaseComponent implements IViewComponent {\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { ViewComponent } from './view';\n\nexport * from './view-constants';\nexport * from './view';\n\nexport function defineViewComponent(): void {\n defineCustomElement(ViewComponent);\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;AAEA,IAAM,cAA2C,GAAG;AAE7C,IAAM,iBAAiB;AAAA,EAC5B;AACF;;;ACDA,IAAM,WAAW;AACjB,IAAM,SAAS;AAkBR,IAAM,gBAAN,cAA4B,cAAwC;AAAA,EACzE,cAAc;AACZ,UAAM;AACN,yBAAqB,MAAM,UAAU,MAAM;AAAA,EAC7C;AACF;AALa,gBAAN;AAAA,EAHP,AAAC,cAAc;AAAA,IACb,MAAM,eAAe;AAAA,EACvB,CAAC;AAAA,GACY;;;ACjBN,+BAAqC;AAC1C,sBAAoB,aAAa;AACnC;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -5,13 +5,13 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import {
|
|
7
7
|
CALENDAR_CONSTANTS
|
|
8
|
-
} from "./chunk.
|
|
8
|
+
} from "./chunk.M3O5VPDD.js";
|
|
9
9
|
import {
|
|
10
10
|
TEXT_FIELD_CONSTANTS
|
|
11
11
|
} from "./chunk.Q4YMHFRY.js";
|
|
12
12
|
import {
|
|
13
13
|
ICON_BUTTON_CONSTANTS
|
|
14
|
-
} from "./chunk.
|
|
14
|
+
} from "./chunk.EBC2HGO3.js";
|
|
15
15
|
import {
|
|
16
16
|
Platform
|
|
17
17
|
} from "./chunk.BYN27JXZ.js";
|
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
import {
|
|
22
22
|
formatDate,
|
|
23
23
|
parseDateString
|
|
24
|
-
} from "./chunk.
|
|
24
|
+
} from "./chunk.PM7D2SUE.js";
|
|
25
25
|
import {
|
|
26
26
|
BaseAdapter
|
|
27
27
|
} from "./chunk.KZATVOA6.js";
|
|
@@ -961,4 +961,4 @@ export {
|
|
|
961
961
|
BaseDatePickerAdapter,
|
|
962
962
|
BaseDatePickerFoundation
|
|
963
963
|
};
|
|
964
|
-
//# sourceMappingURL=chunk.
|
|
964
|
+
//# sourceMappingURL=chunk.TIUNGGBF.js.map
|
|
File without changes
|