@tylertech/forge 3.0.0-next.12 → 3.0.0-next.14
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 +1 -6
- package/custom-elements.json +49089 -32080
- package/dist/esm/accordion/index.js +1 -1
- package/dist/esm/app-bar/app-bar/index.js +7 -0
- package/dist/esm/app-bar/app-bar/index.js.map +7 -0
- package/dist/esm/app-bar/help-button/index.js +1 -1
- package/dist/esm/app-bar/index.js +1 -1
- package/dist/esm/app-bar/menu-button/index.js +1 -1
- package/dist/esm/app-bar/notification-button/index.js +1 -1
- package/dist/esm/app-bar/profile-button/index.js +1 -1
- package/dist/esm/app-bar/search/index.js +1 -1
- package/dist/esm/autocomplete/index.js +1 -1
- package/dist/esm/avatar/index.js +1 -1
- package/dist/esm/backdrop/index.js +1 -1
- package/dist/esm/badge/index.js +1 -1
- package/dist/esm/banner/index.js +1 -1
- package/dist/esm/bottom-sheet/index.js +1 -1
- package/dist/esm/busy-indicator/index.js +1 -1
- package/dist/esm/button/index.js +1 -1
- package/dist/esm/button-area/index.js +1 -1
- package/dist/esm/button-toggle/button-toggle/index.js +1 -1
- package/dist/esm/button-toggle/button-toggle-group/index.js +1 -1
- package/dist/esm/button-toggle/index.js +1 -1
- package/dist/esm/calendar/calendar-dropdown/index.js +1 -1
- package/dist/esm/calendar/calendar-menu/index.js +1 -1
- package/dist/esm/calendar/index.js +1 -1
- package/dist/esm/card/index.js +1 -1
- package/dist/esm/checkbox/index.js +1 -1
- package/dist/esm/chip-field/index.js +1 -1
- package/dist/esm/chips/chip/index.js +1 -1
- package/dist/esm/chips/chip-set/index.js +1 -1
- package/dist/esm/chips/index.js +1 -1
- package/dist/esm/chunks/{chunk.PLNLLKP2.js → chunk.26E4L52W.js} +2 -2
- package/dist/esm/chunks/chunk.2GJ54C3Q.js +7 -0
- package/dist/esm/chunks/chunk.2GJ54C3Q.js.map +7 -0
- package/dist/esm/chunks/chunk.2GYZM6ZG.js +7 -0
- package/dist/esm/chunks/chunk.2GYZM6ZG.js.map +7 -0
- package/dist/esm/chunks/chunk.2YDKRTKP.js +7 -0
- package/dist/esm/chunks/chunk.2YDKRTKP.js.map +7 -0
- package/dist/esm/chunks/chunk.3JCHXLPT.js +7 -0
- package/dist/esm/chunks/chunk.3JCHXLPT.js.map +7 -0
- package/{styles/icon-button/forge-icon-button.scss → dist/esm/chunks/chunk.3PKNBYMG.js} +1 -3
- package/dist/esm/chunks/chunk.3PKNBYMG.js.map +7 -0
- package/dist/esm/chunks/chunk.3RMBFRGC.js +7 -0
- package/dist/esm/chunks/chunk.3RMBFRGC.js.map +7 -0
- package/dist/esm/chunks/{chunk.AY43NTAK.js → chunk.3UO6S3IK.js} +2 -2
- package/dist/esm/chunks/chunk.3ZRQFXQU.js +7 -0
- package/dist/esm/chunks/{chunk.UZPZ6KUN.js.map → chunk.3ZRQFXQU.js.map} +2 -2
- package/dist/esm/chunks/{chunk.IXGXASHQ.js → chunk.4B5IOZAT.js} +2 -2
- package/dist/esm/chunks/{chunk.WK2L7BPJ.js → chunk.4QDN5PM6.js} +2 -2
- package/dist/esm/chunks/{chunk.YIFI5D2X.js → chunk.543K5Y4E.js} +2 -2
- package/dist/esm/chunks/{chunk.YIFI5D2X.js.map → chunk.543K5Y4E.js.map} +3 -3
- package/dist/esm/chunks/{chunk.C5ZUGOOC.js → chunk.57PXXJA6.js} +2 -2
- package/dist/esm/chunks/{chunk.C7VEJINB.js → chunk.5C24LZNU.js} +2 -2
- package/dist/esm/chunks/{chunk.C2MQN7MI.js → chunk.5H4G6BWX.js} +2 -2
- package/dist/esm/chunks/{chunk.CQQSOTZ5.js → chunk.5VHUMZYS.js} +2 -2
- package/dist/esm/chunks/chunk.6DXDNQUR.js +15 -0
- package/dist/esm/chunks/chunk.6DXDNQUR.js.map +7 -0
- package/dist/esm/chunks/chunk.6Q3SV2R2.js +7 -0
- package/dist/esm/chunks/chunk.6Q3SV2R2.js.map +7 -0
- package/dist/esm/chunks/chunk.6Y45DLA6.js +7 -0
- package/dist/esm/chunks/chunk.6Y45DLA6.js.map +7 -0
- package/dist/esm/chunks/{chunk.WJXDDQUK.js → chunk.7ABZUBTT.js} +2 -2
- package/dist/esm/chunks/{chunk.ZREXLSAJ.js → chunk.7BGOH44S.js} +2 -2
- package/dist/esm/chunks/{chunk.2WSXSOYB.js → chunk.7DHDFH5L.js} +2 -2
- package/dist/esm/chunks/{chunk.UVJFHSMF.js → chunk.7PP6QHOM.js} +2 -2
- package/dist/esm/chunks/chunk.7UXLLUTN.js +7 -0
- package/dist/esm/chunks/{chunk.CLD75EBJ.js → chunk.7W2UWAZX.js} +2 -2
- package/dist/esm/chunks/{chunk.CLD75EBJ.js.map → chunk.7W2UWAZX.js.map} +3 -3
- package/dist/esm/chunks/chunk.A72W7RW7.js +7 -0
- package/dist/esm/chunks/chunk.A72W7RW7.js.map +7 -0
- package/dist/esm/chunks/chunk.AEJGC4YG.js +7 -0
- package/dist/esm/chunks/chunk.AEJGC4YG.js.map +7 -0
- package/dist/esm/chunks/{chunk.NDJZYFRT.js → chunk.B46Q3AFP.js} +2 -2
- package/dist/esm/chunks/chunk.BFUGFHEH.js +7 -0
- package/dist/esm/chunks/{chunk.URFSXQKR.js.map → chunk.BFUGFHEH.js.map} +2 -2
- package/dist/esm/chunks/chunk.BLW6QESQ.js +12 -0
- package/dist/esm/chunks/chunk.BLW6QESQ.js.map +7 -0
- package/dist/esm/chunks/chunk.BMQYEYCT.js +7 -0
- package/dist/esm/chunks/chunk.BMQYEYCT.js.map +7 -0
- package/dist/esm/chunks/{chunk.EY37FYZ4.js → chunk.C5IB44HX.js} +2 -2
- package/dist/esm/chunks/chunk.CNRFOWHY.js +7 -0
- package/dist/esm/chunks/{chunk.YXXKPT6P.js.map → chunk.CNRFOWHY.js.map} +2 -2
- package/dist/esm/chunks/{chunk.6VSFLBZF.js → chunk.CTZ3AWDW.js} +2 -2
- package/dist/esm/chunks/{chunk.YA3RDJCV.js → chunk.CZOABXEQ.js} +2 -2
- package/dist/esm/chunks/{chunk.YA3RDJCV.js.map → chunk.CZOABXEQ.js.map} +2 -2
- package/dist/esm/chunks/chunk.DD35U4AA.js +7 -0
- package/dist/esm/chunks/{chunk.JCO4M4PF.js.map → chunk.DD35U4AA.js.map} +3 -3
- package/dist/esm/chunks/{chunk.HBCDD25D.js → chunk.DDXIHZFX.js} +2 -2
- package/dist/esm/chunks/{chunk.VDGJ4UDL.js → chunk.DOEG3DWJ.js} +2 -2
- package/dist/esm/chunks/{chunk.4USQ2AP6.js → chunk.DTKFE7YB.js} +2 -2
- package/dist/esm/chunks/{chunk.IJ2I25V3.js → chunk.E3GVKR4E.js} +2 -2
- package/dist/esm/chunks/chunk.EBSBAFCX.js +7 -0
- package/dist/esm/chunks/chunk.EBSBAFCX.js.map +7 -0
- package/dist/esm/chunks/{chunk.FK6NNHXH.js → chunk.F2EBSV5Z.js} +2 -2
- package/dist/esm/chunks/chunk.F6KM5FO6.js +7 -0
- package/dist/esm/chunks/chunk.F6KM5FO6.js.map +7 -0
- package/dist/esm/chunks/chunk.FB6ZLH6P.js +7 -0
- package/dist/esm/chunks/chunk.FB6ZLH6P.js.map +7 -0
- package/dist/esm/chunks/chunk.FQSL747N.js +7 -0
- package/dist/esm/chunks/chunk.FQSL747N.js.map +7 -0
- package/dist/esm/chunks/{chunk.RNUGVHZF.js → chunk.G2BNY5QQ.js} +2 -2
- package/dist/esm/chunks/{chunk.4JF54GDJ.js → chunk.GS72TBUD.js} +2 -2
- package/dist/esm/chunks/{chunk.AQ7ROWO4.js → chunk.GT3VPSXY.js} +2 -2
- package/dist/esm/chunks/{chunk.DABGA7I6.js → chunk.GWJ4QCSW.js} +2 -2
- package/dist/esm/chunks/chunk.H7GW57Q6.js +7 -0
- package/dist/esm/chunks/chunk.H7GW57Q6.js.map +7 -0
- package/dist/esm/chunks/{chunk.RXLORASN.js → chunk.HHHBS6FB.js} +2 -2
- package/dist/esm/chunks/chunk.I3NHK2S3.js +7 -0
- package/dist/esm/chunks/{chunk.HKSXC5VK.js → chunk.IEB5KRFQ.js} +2 -2
- package/dist/esm/chunks/chunk.IT66AOX7.js +7 -0
- package/dist/esm/chunks/chunk.IT66AOX7.js.map +7 -0
- package/dist/esm/chunks/chunk.IVUK3W34.js +7 -0
- package/dist/esm/chunks/{chunk.TSH7BTC3.js.map → chunk.IVUK3W34.js.map} +2 -2
- package/dist/esm/chunks/chunk.IW7HALLT.js +7 -0
- package/dist/esm/chunks/{chunk.U5XNDTSZ.js.map → chunk.IW7HALLT.js.map} +2 -2
- package/dist/esm/chunks/chunk.J2KHTGSB.js +7 -0
- package/dist/esm/chunks/chunk.J2KHTGSB.js.map +7 -0
- package/dist/esm/chunks/{chunk.OQAD6MFL.js → chunk.J3B5CWKT.js} +2 -2
- package/dist/esm/chunks/chunk.JAWV5Y5T.js +7 -0
- package/dist/esm/chunks/{chunk.I5SFCLDD.js.map → chunk.JAWV5Y5T.js.map} +3 -3
- package/dist/esm/chunks/chunk.JVK64JDZ.js +7 -0
- package/dist/esm/chunks/chunk.JVK64JDZ.js.map +7 -0
- package/dist/esm/chunks/chunk.KFDYMENL.js +7 -0
- package/dist/esm/chunks/chunk.KFDYMENL.js.map +7 -0
- package/dist/esm/chunks/{chunk.QNVVUUNQ.js → chunk.KLPF4CNX.js} +2 -2
- package/dist/esm/chunks/chunk.KTYYBWTN.js +7 -0
- package/dist/esm/chunks/chunk.KTYYBWTN.js.map +7 -0
- package/dist/esm/chunks/{chunk.66X366TV.js → chunk.L4Y4RO5O.js} +2 -2
- package/dist/esm/chunks/chunk.LCNR2RPT.js +7 -0
- package/dist/esm/chunks/chunk.LCNR2RPT.js.map +7 -0
- package/dist/esm/chunks/{chunk.RBFGJH3C.js → chunk.LMIKNDBS.js} +2 -2
- package/dist/esm/chunks/chunk.LOBKFTRM.js +7 -0
- package/dist/esm/chunks/chunk.LOBKFTRM.js.map +7 -0
- package/dist/esm/chunks/chunk.LS7WRRT2.js +7 -0
- package/dist/esm/chunks/chunk.LS7WRRT2.js.map +7 -0
- package/dist/esm/chunks/{chunk.R2KOYHIZ.js → chunk.LSNAGIIH.js} +2 -2
- package/dist/esm/chunks/chunk.LUIKMPQR.js +7 -0
- package/dist/esm/chunks/chunk.LUIKMPQR.js.map +7 -0
- package/dist/esm/chunks/{chunk.7M4HRJYP.js → chunk.LXX3YZYS.js} +2 -2
- package/dist/esm/chunks/chunk.MZZJY5NX.js +7 -0
- package/dist/esm/chunks/chunk.MZZJY5NX.js.map +7 -0
- package/dist/esm/chunks/{chunk.W7H2ZYNR.js → chunk.NG6UZ4OL.js} +2 -2
- package/dist/esm/chunks/chunk.NYYXUH3X.js +7 -0
- package/dist/esm/chunks/{chunk.DQVYB55P.js → chunk.NZKIFXBU.js} +2 -2
- package/dist/esm/chunks/{chunk.AHAARGYM.js → chunk.OED5UCYT.js} +2 -2
- package/dist/esm/chunks/{chunk.5ASOX23Q.js → chunk.OUACQISE.js} +2 -2
- package/dist/esm/chunks/{chunk.5ASOX23Q.js.map → chunk.OUACQISE.js.map} +1 -1
- package/dist/esm/chunks/chunk.OYO5O3NF.js +7 -0
- package/dist/esm/chunks/{chunk.7UJAI6P2.js → chunk.P7LC3YYW.js} +2 -2
- package/dist/esm/chunks/{chunk.Z6AFASMO.js → chunk.PK7R6WDF.js} +2 -2
- package/dist/esm/chunks/chunk.PQQVUUHU.js +7 -0
- package/dist/esm/chunks/{chunk.LNLO36U6.js.map → chunk.PQQVUUHU.js.map} +2 -2
- package/dist/esm/chunks/{chunk.WWTQAN4G.js → chunk.PSTGTQVK.js} +2 -2
- package/dist/esm/chunks/chunk.Q5Z6F3PI.js +7 -0
- package/dist/esm/chunks/chunk.Q5Z6F3PI.js.map +7 -0
- package/dist/esm/chunks/{chunk.OXGOCF4L.js → chunk.QFY23EWU.js} +2 -2
- package/dist/esm/chunks/{chunk.OXGOCF4L.js.map → chunk.QFY23EWU.js.map} +2 -2
- package/dist/esm/chunks/chunk.RCSBJQ4G.js +7 -0
- package/dist/esm/chunks/chunk.RCSBJQ4G.js.map +7 -0
- package/dist/esm/chunks/chunk.RDW7Z4W5.js +7 -0
- package/dist/esm/chunks/chunk.RDW7Z4W5.js.map +7 -0
- package/dist/esm/chunks/chunk.RYNQDXFA.js +7 -0
- package/dist/esm/chunks/{chunk.YP2NHWIW.js.map → chunk.RYNQDXFA.js.map} +2 -2
- package/dist/esm/chunks/{chunk.RWUJGZ3R.js → chunk.RZZBM3AW.js} +2 -2
- package/dist/esm/chunks/{chunk.37JFBP4X.js → chunk.SNF35Y6C.js} +2 -2
- package/dist/esm/chunks/chunk.SOLF23NC.js +7 -0
- package/dist/esm/chunks/chunk.SOLF23NC.js.map +7 -0
- package/dist/esm/chunks/chunk.T34DG7BU.js +7 -0
- package/dist/esm/chunks/chunk.TA3MVDUU.js +7 -0
- package/dist/esm/chunks/chunk.TA3MVDUU.js.map +7 -0
- package/dist/esm/chunks/{chunk.HDO3WRH7.js → chunk.THWSN3X4.js} +2 -2
- package/dist/esm/chunks/chunk.TLFCQSJN.js +7 -0
- package/dist/esm/chunks/chunk.TLFCQSJN.js.map +7 -0
- package/dist/esm/chunks/{chunk.E4TAHUQO.js → chunk.TZFUKJ24.js} +2 -2
- package/dist/esm/chunks/{chunk.SEWAMWO6.js → chunk.U5WMRBSC.js} +2 -2
- package/dist/esm/chunks/chunk.URCJO73M.js +7 -0
- package/dist/esm/chunks/chunk.URCJO73M.js.map +7 -0
- package/dist/esm/chunks/{chunk.PDSOXEMY.js → chunk.UWZWXNTW.js} +2 -2
- package/dist/esm/chunks/chunk.VD5ZL5ZN.js +7 -0
- package/dist/esm/chunks/{chunk.OQ75YGB6.js.map → chunk.VD5ZL5ZN.js.map} +2 -2
- package/dist/esm/chunks/chunk.VDZ7HBKM.js +7 -0
- package/dist/esm/chunks/chunk.VDZ7HBKM.js.map +7 -0
- package/dist/esm/chunks/{chunk.CBIHNCT5.js → chunk.W324TWF2.js} +2 -2
- package/dist/esm/chunks/chunk.WQGPIOL6.js +7 -0
- package/dist/esm/chunks/chunk.WQGPIOL6.js.map +7 -0
- package/dist/esm/chunks/chunk.XDANTL6C.js +7 -0
- package/dist/esm/chunks/chunk.XDANTL6C.js.map +7 -0
- package/dist/esm/chunks/chunk.XNCBGWE4.js +7 -0
- package/dist/esm/chunks/chunk.XNCBGWE4.js.map +7 -0
- package/dist/esm/chunks/{chunk.ZYVXIP42.js → chunk.YKZ25J6B.js} +2 -2
- package/dist/esm/chunks/chunk.Z2RB75TN.js +7 -0
- package/dist/esm/chunks/chunk.Z2RB75TN.js.map +7 -0
- package/dist/esm/chunks/chunk.Z7PBGV4K.js +7 -0
- package/dist/esm/chunks/{chunk.TCFKFKZW.js.map → chunk.Z7PBGV4K.js.map} +4 -4
- package/dist/esm/chunks/{chunk.R6NA7SV2.js → chunk.ZSD7MMVB.js} +2 -2
- package/dist/esm/chunks/chunk.ZSZFWZAI.js +7 -0
- package/dist/esm/chunks/chunk.ZSZFWZAI.js.map +7 -0
- package/dist/esm/chunks/chunk.ZVJMIBUM.js +7 -0
- package/dist/esm/chunks/chunk.ZVJMIBUM.js.map +7 -0
- package/dist/esm/circular-progress/index.js +1 -1
- package/dist/esm/color-picker/index.js +1 -1
- package/dist/esm/core/base/index.js +1 -1
- package/dist/esm/core/index.js +1 -1
- package/dist/esm/core/utils/index.js +1 -1
- package/dist/esm/date-picker/index.js +1 -1
- package/dist/esm/date-range-picker/index.js +1 -1
- package/dist/esm/dialog/index.js +1 -1
- package/dist/esm/divider/index.js +1 -1
- package/dist/esm/drawer/base/index.js +1 -1
- package/dist/esm/drawer/drawer/index.js +1 -1
- package/dist/esm/drawer/index.js +1 -1
- package/dist/esm/drawer/mini-drawer/index.js +1 -1
- package/dist/esm/drawer/modal-drawer/index.js +1 -1
- package/dist/esm/expansion-panel/index.js +1 -1
- package/dist/esm/file-picker/index.js +1 -1
- package/dist/esm/floating-action-button/index.js +1 -1
- package/dist/esm/focus-indicator/index.js +1 -1
- package/dist/esm/icon/index.js +1 -1
- package/dist/esm/icon-button/index.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/inline-message/index.js +1 -1
- package/dist/esm/keyboard-shortcut/index.js +1 -1
- package/dist/esm/label/index.js +7 -0
- package/dist/esm/label/index.js.map +7 -0
- package/dist/esm/label-value/index.js +1 -1
- package/dist/esm/linear-progress/index.js +1 -1
- package/dist/esm/list/index.js +1 -1
- package/dist/esm/list/list/index.js +1 -1
- package/dist/esm/list/list-item/index.js +1 -1
- package/dist/esm/list-dropdown/index.js +1 -1
- package/dist/esm/menu/index.js +1 -1
- package/dist/esm/open-icon/index.js +1 -1
- package/dist/esm/page-state/index.js +1 -1
- package/dist/esm/paginator/index.js +1 -1
- package/dist/esm/popup/index.js +1 -1
- package/dist/esm/product-icon/index.js +1 -1
- package/dist/esm/profile-card/index.js +1 -1
- package/dist/esm/quantity-field/index.js +1 -1
- package/dist/esm/radio/index.js +1 -1
- package/dist/esm/ripple/index.js +1 -1
- package/dist/esm/scaffold/index.js +1 -1
- package/dist/esm/select/core/index.js +1 -1
- package/dist/esm/select/index.js +1 -1
- package/dist/esm/select/option/index.js +1 -1
- package/dist/esm/select/option-group/index.js +1 -1
- package/dist/esm/select/select/index.js +1 -1
- package/dist/esm/select/select-dropdown/index.js +1 -1
- package/dist/esm/skeleton/index.js +1 -1
- package/dist/esm/slider/index.js +1 -1
- package/dist/esm/split-button/index.js +7 -0
- package/dist/esm/split-button/index.js.map +7 -0
- package/dist/esm/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view-panel/index.js +1 -1
- package/dist/esm/stack/index.js +1 -1
- package/dist/esm/state-layer/index.js +1 -1
- package/dist/esm/stepper/index.js +1 -1
- package/dist/esm/stepper/step/index.js +1 -1
- package/dist/esm/stepper/stepper/index.js +1 -1
- package/dist/esm/switch/index.js +1 -1
- package/dist/esm/table/index.js +1 -1
- package/dist/esm/tabs/index.js +1 -1
- package/dist/esm/tabs/tab/index.js +1 -1
- package/dist/esm/tabs/tab-bar/index.js +1 -1
- package/dist/esm/text-field/index.js +1 -1
- package/dist/esm/time-picker/index.js +1 -1
- package/dist/esm/toast/index.js +1 -1
- package/dist/esm/toolbar/index.js +1 -1
- package/dist/esm/tooltip/index.js +1 -1
- package/dist/esm/view-switcher/index.js +1 -1
- package/dist/esm/view-switcher/view/index.js +1 -1
- package/dist/forge-dark.css +1 -1
- package/dist/forge.css +1 -1
- package/dist/table/forge-table.css +1 -1
- package/dist/theme/forge-theme.css +1 -1
- package/dist/typography/forge-typography.css +1 -1
- package/esm/app-bar/app-bar/app-bar-adapter.d.ts +30 -0
- package/esm/app-bar/app-bar/app-bar-adapter.js +71 -0
- package/esm/app-bar/{app-bar-constants.d.ts → app-bar/app-bar-constants.d.ts} +7 -11
- package/esm/app-bar/app-bar/app-bar-constants.js +32 -0
- package/esm/app-bar/{app-bar-foundation.d.ts → app-bar/app-bar-foundation.d.ts} +17 -16
- package/esm/app-bar/app-bar/app-bar-foundation.js +71 -0
- package/esm/app-bar/app-bar/app-bar.d.ts +66 -0
- package/esm/app-bar/app-bar/app-bar.js +107 -0
- package/esm/app-bar/app-bar/index.d.ts +10 -0
- package/esm/app-bar/app-bar/index.js +14 -0
- package/esm/app-bar/help-button/app-bar-help-button-adapter.d.ts +8 -1
- package/esm/app-bar/help-button/app-bar-help-button-adapter.js +22 -1
- package/esm/app-bar/help-button/app-bar-help-button-constants.d.ts +7 -0
- package/esm/app-bar/help-button/app-bar-help-button-constants.js +11 -1
- package/esm/app-bar/help-button/app-bar-help-button-foundation.d.ts +4 -0
- package/esm/app-bar/help-button/app-bar-help-button-foundation.js +16 -0
- package/esm/app-bar/help-button/app-bar-help-button.d.ts +13 -2
- package/esm/app-bar/help-button/app-bar-help-button.js +27 -6
- package/esm/app-bar/index.d.ts +0 -4
- package/esm/app-bar/index.js +0 -8
- package/esm/app-bar/menu-button/app-bar-menu-button-constants.d.ts +7 -0
- package/esm/app-bar/menu-button/app-bar-menu-button-constants.js +9 -1
- package/esm/app-bar/menu-button/app-bar-menu-button.d.ts +19 -2
- package/esm/app-bar/menu-button/app-bar-menu-button.js +57 -8
- package/esm/app-bar/notification-button/app-bar-notification-button-adapter.d.ts +6 -2
- package/esm/app-bar/notification-button/app-bar-notification-button-adapter.js +17 -1
- package/esm/app-bar/notification-button/app-bar-notification-button-constants.d.ts +1 -0
- package/esm/app-bar/notification-button/app-bar-notification-button-constants.js +3 -1
- package/esm/app-bar/notification-button/app-bar-notification-button-foundation.d.ts +4 -4
- package/esm/app-bar/notification-button/app-bar-notification-button-foundation.js +9 -11
- package/esm/app-bar/notification-button/app-bar-notification-button.d.ts +17 -4
- package/esm/app-bar/notification-button/app-bar-notification-button.js +20 -5
- package/esm/app-bar/profile-button/app-bar-profile-button-adapter.d.ts +7 -1
- package/esm/app-bar/profile-button/app-bar-profile-button-adapter.js +26 -3
- package/esm/app-bar/profile-button/app-bar-profile-button-constants.d.ts +1 -3
- package/esm/app-bar/profile-button/app-bar-profile-button-constants.js +2 -4
- package/esm/app-bar/profile-button/app-bar-profile-button-foundation.d.ts +5 -2
- package/esm/app-bar/profile-button/app-bar-profile-button-foundation.js +20 -22
- package/esm/app-bar/profile-button/app-bar-profile-button.d.ts +31 -2
- package/esm/app-bar/profile-button/app-bar-profile-button.js +33 -6
- package/esm/autocomplete/autocomplete-foundation.js +2 -2
- package/esm/banner/banner-constants.js +1 -1
- package/esm/banner/banner.js +2 -2
- package/esm/bottom-sheet/bottom-sheet.js +1 -1
- package/esm/busy-indicator/busy-indicator.js +2 -2
- package/esm/button/base/base-button-adapter.d.ts +68 -0
- package/esm/button/base/base-button-adapter.js +238 -0
- package/esm/button/base/base-button-constants.d.ts +44 -0
- package/esm/button/base/base-button-constants.js +32 -0
- package/esm/button/base/base-button-foundation.d.ts +74 -0
- package/esm/button/base/base-button-foundation.js +240 -0
- package/esm/button/base/base-button.d.ts +53 -0
- package/esm/button/base/base-button.js +112 -0
- package/esm/button/button-adapter.d.ts +14 -0
- package/esm/button/button-adapter.js +14 -0
- package/esm/button/button-component-delegate.d.ts +4 -4
- package/esm/button/button-component-delegate.js +13 -17
- package/esm/button/button-constants.d.ts +10 -18
- package/esm/button/button-constants.js +6 -22
- package/esm/button/button-foundation.d.ts +25 -0
- package/esm/button/button-foundation.js +49 -0
- package/esm/button/button.d.ts +126 -30
- package/esm/button/button.js +158 -159
- package/esm/button/index.d.ts +3 -1
- package/esm/button/index.js +3 -1
- package/esm/button-toggle/button-toggle/button-toggle.js +1 -1
- package/esm/calendar/calendar-dom-utils.js +18 -30
- package/esm/calendar/calendar.js +1 -1
- package/esm/checkbox/checkbox-adapter.d.ts +50 -59
- package/esm/checkbox/checkbox-adapter.js +104 -186
- package/esm/checkbox/checkbox-component-delegate.d.ts +18 -9
- package/esm/checkbox/checkbox-component-delegate.js +58 -51
- package/esm/checkbox/checkbox-constants.d.ts +14 -56
- package/esm/checkbox/checkbox-constants.js +17 -50
- package/esm/checkbox/checkbox-foundation.d.ts +48 -18
- package/esm/checkbox/checkbox-foundation.js +139 -139
- package/esm/checkbox/checkbox.d.ts +120 -9
- package/esm/checkbox/checkbox.js +235 -36
- package/esm/checkbox/index.d.ts +1 -1
- package/esm/checkbox/index.js +1 -1
- package/esm/chip-field/chip-field-constants.d.ts +3 -0
- package/esm/chip-field/chip-field-constants.js +4 -0
- package/esm/chip-field/chip-field-foundation.d.ts +5 -0
- package/esm/chip-field/chip-field-foundation.js +20 -1
- package/esm/chip-field/chip-field.d.ts +5 -0
- package/esm/chip-field/chip-field.js +19 -1
- package/esm/chips/chip/chip.js +1 -1
- package/esm/circular-progress/circular-progress-adapter.d.ts +2 -2
- package/esm/circular-progress/circular-progress-adapter.js +15 -6
- package/esm/circular-progress/circular-progress-constants.d.ts +4 -1
- package/esm/circular-progress/circular-progress-constants.js +2 -1
- package/esm/circular-progress/circular-progress-foundation.d.ts +9 -1
- package/esm/circular-progress/circular-progress-foundation.js +21 -2
- package/esm/circular-progress/circular-progress.d.ts +15 -3
- package/esm/circular-progress/circular-progress.js +25 -8
- package/esm/color-picker/color-picker.js +2 -2
- package/esm/constants.d.ts +16 -0
- package/esm/constants.js +4 -0
- package/esm/core/base/base-adapter.d.ts +13 -1
- package/esm/core/base/base-adapter.js +17 -0
- package/esm/core/base/base-component.d.ts +0 -38
- package/esm/core/base/base-component.js +0 -4
- package/esm/core/base/base-focusable-component.d.ts +49 -0
- package/esm/core/base/base-focusable-component.js +90 -0
- package/esm/core/base/base-form-component.d.ts +45 -0
- package/esm/core/base/base-form-component.js +19 -0
- package/esm/core/base/base-nullable-form-component.d.ts +35 -0
- package/esm/core/base/base-nullable-form-component.js +20 -0
- package/esm/core/utils/feature-detection.d.ts +10 -0
- package/esm/core/utils/feature-detection.js +12 -0
- package/esm/core/utils/index.d.ts +2 -1
- package/esm/core/utils/index.js +2 -1
- package/esm/core/utils/reflect-utils.d.ts +107 -0
- package/esm/core/utils/reflect-utils.js +227 -0
- package/esm/core/utils/utils.d.ts +1 -1
- package/esm/date-picker/base/base-date-picker-utils.js +5 -8
- package/esm/field/field-constants.d.ts +8 -0
- package/esm/field/field-constants.js +10 -8
- package/esm/file-picker/file-picker-component-delegate.js +1 -1
- package/esm/file-picker/file-picker.js +1 -1
- package/esm/floating-action-button/floating-action-button-adapter.d.ts +20 -0
- package/esm/floating-action-button/floating-action-button-adapter.js +49 -0
- package/esm/floating-action-button/floating-action-button-component-delegate.d.ts +19 -3
- package/esm/floating-action-button/floating-action-button-component-delegate.js +62 -14
- package/esm/floating-action-button/floating-action-button-constants.d.ts +19 -14
- package/esm/floating-action-button/floating-action-button-constants.js +15 -15
- package/esm/floating-action-button/floating-action-button-foundation.d.ts +27 -0
- package/esm/floating-action-button/floating-action-button-foundation.js +48 -0
- package/esm/floating-action-button/floating-action-button.d.ts +86 -25
- package/esm/floating-action-button/floating-action-button.js +117 -104
- package/esm/floating-action-button/index.d.ts +3 -1
- package/esm/floating-action-button/index.js +5 -3
- package/esm/focus-indicator/focus-indicator-adapter.d.ts +2 -2
- package/esm/focus-indicator/focus-indicator-adapter.js +3 -3
- package/esm/focus-indicator/focus-indicator-foundation.js +3 -2
- package/esm/focus-indicator/focus-indicator.js +2 -2
- package/esm/icon-button/icon-button-adapter.d.ts +12 -0
- package/esm/icon-button/icon-button-adapter.js +11 -0
- package/esm/icon-button/icon-button-component-delegate.d.ts +0 -4
- package/esm/icon-button/icon-button-component-delegate.js +8 -18
- package/esm/icon-button/icon-button-constants.d.ts +26 -17
- package/esm/icon-button/icon-button-constants.js +17 -28
- package/esm/icon-button/icon-button-foundation.d.ts +39 -0
- package/esm/icon-button/icon-button-foundation.js +122 -0
- package/esm/icon-button/icon-button.d.ts +120 -41
- package/esm/icon-button/icon-button.js +156 -213
- package/esm/icon-button/index.d.ts +3 -1
- package/esm/icon-button/index.js +3 -1
- package/esm/index.d.ts +2 -0
- package/esm/index.js +6 -2
- package/esm/label/index.d.ts +11 -0
- package/esm/label/index.js +15 -0
- package/esm/label/label-adapter.d.ts +51 -0
- package/esm/label/label-adapter.js +102 -0
- package/esm/label/label-aware.d.ts +15 -0
- package/esm/label/label-aware.js +13 -0
- package/esm/label/label-constants.d.ts +17 -0
- package/esm/label/label-constants.js +31 -0
- package/esm/label/label-foundation.d.ts +40 -0
- package/esm/label/label-foundation.js +108 -0
- package/esm/label/label.d.ts +49 -0
- package/esm/label/label.js +80 -0
- package/esm/linear-progress/linear-progress-adapter.d.ts +2 -2
- package/esm/linear-progress/linear-progress-adapter.js +14 -6
- package/esm/linear-progress/linear-progress-constants.d.ts +3 -1
- package/esm/linear-progress/linear-progress-constants.js +1 -1
- package/esm/linear-progress/linear-progress-foundation.d.ts +6 -1
- package/esm/linear-progress/linear-progress-foundation.js +15 -5
- package/esm/linear-progress/linear-progress.d.ts +9 -2
- package/esm/linear-progress/linear-progress.js +16 -7
- package/esm/list/list/list-adapter.js +0 -1
- package/esm/list/list/list.js +1 -1
- package/esm/list/list-item/list-item-adapter.d.ts +12 -4
- package/esm/list/list-item/list-item-adapter.js +36 -5
- package/esm/list/list-item/list-item-constants.d.ts +4 -0
- package/esm/list/list-item/list-item-constants.js +3 -1
- package/esm/list/list-item/list-item-foundation.d.ts +9 -0
- package/esm/list/list-item/list-item-foundation.js +34 -4
- package/esm/list/list-item/list-item.d.ts +15 -4
- package/esm/list/list-item/list-item.js +29 -6
- package/esm/menu/menu-constants.js +1 -1
- package/esm/menu/menu-foundation.js +0 -4
- package/esm/menu/menu.js +1 -1
- package/esm/paginator/paginator-adapter.d.ts +4 -2
- package/esm/paginator/paginator-adapter.js +21 -8
- package/esm/paginator/paginator-constants.js +4 -4
- package/esm/paginator/paginator-foundation.d.ts +2 -0
- package/esm/paginator/paginator-foundation.js +19 -16
- package/esm/paginator/paginator.d.ts +1 -0
- package/esm/paginator/paginator.js +5 -2
- package/esm/profile-card/profile-card-adapter.d.ts +5 -8
- package/esm/profile-card/profile-card-adapter.js +5 -16
- package/esm/profile-card/profile-card-constants.js +3 -3
- package/esm/profile-card/profile-card-foundation.d.ts +4 -1
- package/esm/profile-card/profile-card-foundation.js +24 -13
- package/esm/profile-card/profile-card.d.ts +1 -2
- package/esm/profile-card/profile-card.js +11 -8
- package/esm/quantity-field/quantity-field-constants.js +2 -2
- package/esm/select/core/base-select-foundation.js +3 -1
- package/esm/slider/slider-adapter.d.ts +1 -1
- package/esm/slider/slider-adapter.js +3 -2
- package/esm/slider/slider-constants.js +3 -3
- package/esm/slider/slider.d.ts +6 -11
- package/esm/slider/slider.js +11 -7
- package/esm/split-button/index.d.ts +10 -0
- package/esm/split-button/index.js +14 -0
- package/esm/split-button/split-button-adapter.d.ts +30 -0
- package/esm/split-button/split-button-adapter.js +84 -0
- package/esm/split-button/split-button-constants.d.ts +21 -0
- package/esm/split-button/split-button-constants.js +23 -0
- package/esm/split-button/split-button-foundation.d.ts +37 -0
- package/esm/split-button/split-button-foundation.js +77 -0
- package/esm/split-button/split-button.d.ts +57 -0
- package/esm/split-button/split-button.js +103 -0
- package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
- package/esm/state-layer/state-layer-adapter.js +1 -0
- package/esm/state-layer/state-layer-foundation.js +10 -1
- package/esm/state-layer/state-layer.js +1 -1
- package/esm/stepper/stepper/stepper-foundation.js +1 -1
- package/esm/switch/index.d.ts +2 -0
- package/esm/switch/index.js +2 -0
- package/esm/switch/switch-adapter.d.ts +30 -4
- package/esm/switch/switch-adapter.js +100 -18
- package/esm/switch/switch-component-delegate.d.ts +22 -7
- package/esm/switch/switch-component-delegate.js +63 -28
- package/esm/switch/switch-constants.d.ts +12 -2
- package/esm/switch/switch-constants.js +22 -11
- package/esm/switch/switch-foundation.d.ts +23 -4
- package/esm/switch/switch-foundation.js +63 -11
- package/esm/switch/switch.d.ts +28 -16
- package/esm/switch/switch.js +65 -36
- package/esm/table/table-foundation.d.ts +2 -0
- package/esm/table/table-foundation.js +17 -6
- package/esm/table/table-utils.js +13 -1
- package/esm/table/types.d.ts +1 -0
- package/esm/tabs/tab/tab.js +2 -2
- package/esm/tabs/tab-bar/tab-bar-adapter.js +17 -20
- package/esm/tabs/tab-bar/tab-bar.js +1 -1
- package/esm/time-picker/time-picker-adapter.js +5 -8
- package/esm/toast/toast-adapter.d.ts +1 -1
- package/esm/toast/toast-adapter.js +1 -1
- package/esm/toast/toast.js +2 -2
- package/esm/toolbar/toolbar.js +1 -1
- package/package.json +1 -3
- package/styles/app-bar/app-bar/_configuration.scss +16 -0
- package/styles/app-bar/app-bar/_core.scss +95 -0
- package/styles/app-bar/app-bar/_token-utils.scss +30 -0
- package/styles/app-bar/app-bar/app-bar.scss +142 -0
- package/styles/app-bar/app-bar/index.scss +8 -0
- package/styles/banner/banner.scss +0 -1
- package/styles/bottom-sheet/bottom-sheet.scss +0 -1
- package/styles/busy-indicator/_mixins.scss +1 -1
- package/styles/busy-indicator/busy-indicator.scss +0 -1
- package/styles/button/_configuration.scss +16 -0
- package/styles/button/_core.scss +183 -0
- package/styles/button/_token-utils.scss +30 -0
- package/styles/button/button.scss +221 -0
- package/styles/button/index.scss +8 -0
- package/styles/button-toggle/button-toggle/_mixins.scss +26 -7
- package/styles/calendar/calendar.scss +0 -4
- package/styles/{button/forge-button.scss → checkbox/_configuration.scss} +4 -3
- package/styles/checkbox/_core.scss +157 -0
- package/styles/checkbox/_token-utils.scss +30 -0
- package/styles/checkbox/checkbox.scss +143 -7
- package/styles/checkbox/index.scss +8 -0
- package/styles/chips/chip/_mixins.scss +21 -7
- package/styles/circular-progress/_configuration.scss +8 -15
- package/styles/circular-progress/_core.scss +21 -19
- package/styles/circular-progress/_token-utils.scss +30 -0
- package/styles/circular-progress/circular-progress.scss +51 -4
- package/styles/circular-progress/index.scss +1 -0
- package/styles/color-picker/color-picker.scss +0 -3
- package/styles/core/styles/_utils.scss +67 -4
- package/styles/core/styles/elevation/index.scss +10 -0
- package/styles/core/styles/spacing/index.scss +8 -1
- package/styles/core/styles/theme/index.scss +2 -0
- package/styles/core/styles/tokens/_token-utils.scss +118 -0
- package/styles/core/styles/tokens/app-bar/app-bar/_tokens.scss +35 -0
- package/styles/core/styles/tokens/button/_tokens.scss +115 -0
- package/styles/core/styles/tokens/checkbox/_tokens.scss +69 -0
- package/styles/core/styles/tokens/circular-progress/_tokens.scss +14 -3
- package/styles/core/styles/tokens/floating-action-button/_tokens.scss +66 -0
- package/styles/core/styles/tokens/focus-indicator/_tokens.scss +8 -5
- package/styles/core/styles/tokens/icon-button/_tokens.scss +106 -0
- package/styles/core/styles/tokens/index.scss +0 -1
- package/styles/core/styles/tokens/linear-progress/_tokens.scss +14 -3
- package/styles/core/styles/tokens/profile-card/_tokens.scss +19 -0
- package/styles/core/styles/tokens/shape/_tokens.scss +6 -0
- package/styles/core/styles/tokens/spacing/_tokens.scss +17 -1
- package/styles/core/styles/tokens/split-button/_tokens.scss +21 -0
- package/styles/core/styles/tokens/switch/_tokens.scss +4 -4
- package/styles/core/styles/tokens/tabs/tab/_tokens.scss +1 -1
- package/styles/core/styles/tokens/tabs/tab-bar/_tokens.scss +2 -2
- package/styles/core/styles/tokens/theme/_token-utils.scss +9 -5
- package/styles/core/styles/tokens/theme/_tokens.brand.scss +22 -0
- package/styles/core/styles/tokens/theme/_tokens.scss +3 -0
- package/styles/core/styles/tokens/typography/_tokens.label.scss +0 -1
- package/styles/core/styles/typography/index.scss +26 -1
- package/styles/file-picker/_mixins.scss +1 -1
- package/styles/floating-action-button/_configuration.scss +16 -0
- package/styles/floating-action-button/_core.scss +103 -0
- package/styles/floating-action-button/_token-utils.scss +30 -0
- package/styles/floating-action-button/floating-action-button.scss +129 -0
- package/styles/floating-action-button/index.scss +8 -0
- package/styles/focus-indicator/_animations.scss +6 -4
- package/styles/focus-indicator/_configuration.scss +2 -15
- package/styles/focus-indicator/_core.scss +20 -25
- package/styles/focus-indicator/_token-utils.scss +31 -0
- package/styles/focus-indicator/focus-indicator.scss +26 -21
- package/styles/focus-indicator/index.scss +1 -0
- package/styles/forge.scss +0 -3
- package/styles/icon-button/_configuration.scss +16 -0
- package/styles/icon-button/_core.scss +141 -0
- package/styles/icon-button/_token-utils.scss +30 -0
- package/styles/icon-button/icon-button.scss +349 -0
- package/styles/icon-button/index.scss +8 -0
- package/styles/label/_core.scss +17 -0
- package/styles/label/index.scss +6 -0
- package/styles/label/label.scss +18 -0
- package/styles/linear-progress/_animations.scss +3 -1
- package/styles/linear-progress/_configuration.scss +15 -16
- package/styles/linear-progress/_core.scss +17 -19
- package/styles/linear-progress/_token-utils.scss +31 -0
- package/styles/linear-progress/index.scss +1 -0
- package/styles/linear-progress/linear-progress.scss +42 -6
- package/styles/list/list/_configuration.scss +2 -4
- package/styles/list/list/_core.scss +3 -8
- package/styles/list/list/_token-utils.scss +30 -0
- package/styles/list/list/index.scss +1 -0
- package/styles/list/list/list.scss +11 -0
- package/styles/list/list-item/_configuration.scss +5 -61
- package/styles/list/list-item/_core.scss +51 -56
- package/styles/list/list-item/_token-utils.scss +30 -0
- package/styles/list/list-item/index.scss +1 -0
- package/styles/list/list-item/list-item.scss +12 -3
- package/styles/menu/menu.scss +1 -1
- package/styles/paginator/paginator.scss +0 -1
- package/styles/profile-card/_configuration.scss +10 -0
- package/styles/profile-card/_core.scss +58 -0
- package/styles/profile-card/_token-utils.scss +30 -0
- package/styles/profile-card/index.scss +8 -0
- package/styles/profile-card/profile-card.scss +55 -7
- package/styles/slider/_configuration.scss +5 -50
- package/styles/slider/_core.scss +58 -63
- package/styles/slider/_token-utils.scss +30 -0
- package/styles/slider/index.scss +1 -0
- package/styles/slider/slider.scss +26 -3
- package/styles/split-button/_configuration.scss +12 -0
- package/styles/split-button/_token-utils.scss +30 -0
- package/styles/split-button/index.scss +7 -0
- package/styles/split-button/split-button.scss +97 -0
- package/styles/state-layer/_configuration.scss +2 -9
- package/styles/state-layer/_core.scss +11 -16
- package/styles/state-layer/_token-utils.scss +31 -0
- package/styles/state-layer/index.scss +1 -0
- package/styles/state-layer/state-layer.scss +7 -0
- package/styles/switch/_configuration.scss +2 -87
- package/styles/switch/_core.scss +83 -86
- package/styles/switch/_token-utils.scss +30 -0
- package/styles/switch/index.scss +1 -0
- package/styles/switch/switch.scss +118 -84
- package/styles/table/_mixins.scss +20 -2
- package/styles/tabs/tab/_configuration.scss +7 -49
- package/styles/tabs/tab/_core.scss +27 -32
- package/styles/tabs/tab/_token-utils.scss +30 -0
- package/styles/tabs/tab/index.scss +1 -0
- package/styles/tabs/tab/tab.scss +87 -44
- package/styles/tabs/tab-bar/_configuration.scss +2 -5
- package/styles/tabs/tab-bar/_core.scss +26 -9
- package/styles/tabs/tab-bar/_token-utils.scss +30 -0
- package/styles/tabs/tab-bar/index.scss +2 -1
- package/styles/tabs/tab-bar/tab-bar.scss +68 -34
- package/styles/theme/_theme-dark.scss +0 -3
- package/styles/toast/_mixins.scss +1 -1
- package/styles/toast/toast.scss +0 -2
- package/styles/toolbar/_mixins.scss +0 -1
- package/styles/typography/forge-typography.scss +5 -2
- package/dist/button/forge-button.css +0 -6
- package/dist/esm/chunks/chunk.2LIWNFQK.js +0 -7
- package/dist/esm/chunks/chunk.3X4N4ZPY.js +0 -7
- package/dist/esm/chunks/chunk.3X4N4ZPY.js.map +0 -7
- package/dist/esm/chunks/chunk.436MTO6R.js +0 -7
- package/dist/esm/chunks/chunk.436MTO6R.js.map +0 -7
- package/dist/esm/chunks/chunk.4CXLGEJO.js +0 -7
- package/dist/esm/chunks/chunk.4CXLGEJO.js.map +0 -7
- package/dist/esm/chunks/chunk.4XJYS5WH.js +0 -7
- package/dist/esm/chunks/chunk.4XJYS5WH.js.map +0 -7
- package/dist/esm/chunks/chunk.7L66GZDN.js +0 -7
- package/dist/esm/chunks/chunk.7PPBXNAD.js +0 -7
- package/dist/esm/chunks/chunk.7PPBXNAD.js.map +0 -7
- package/dist/esm/chunks/chunk.A3ZDCBLA.js +0 -7
- package/dist/esm/chunks/chunk.A3ZDCBLA.js.map +0 -7
- package/dist/esm/chunks/chunk.CMRVP4EA.js +0 -7
- package/dist/esm/chunks/chunk.CZEF72BG.js +0 -12
- package/dist/esm/chunks/chunk.CZEF72BG.js.map +0 -7
- package/dist/esm/chunks/chunk.D5ZHKPCL.js +0 -7
- package/dist/esm/chunks/chunk.D5ZHKPCL.js.map +0 -7
- package/dist/esm/chunks/chunk.DH76CMUT.js +0 -7
- package/dist/esm/chunks/chunk.DH76CMUT.js.map +0 -7
- package/dist/esm/chunks/chunk.DLQSINSS.js +0 -7
- package/dist/esm/chunks/chunk.DLQSINSS.js.map +0 -7
- package/dist/esm/chunks/chunk.G6JWSERI.js +0 -7
- package/dist/esm/chunks/chunk.G6JWSERI.js.map +0 -7
- package/dist/esm/chunks/chunk.GO5A4GKZ.js +0 -7
- package/dist/esm/chunks/chunk.GO5A4GKZ.js.map +0 -7
- package/dist/esm/chunks/chunk.GWIXDVIA.js +0 -7
- package/dist/esm/chunks/chunk.GWIXDVIA.js.map +0 -7
- package/dist/esm/chunks/chunk.HGH6SSHZ.js +0 -7
- package/dist/esm/chunks/chunk.HGH6SSHZ.js.map +0 -7
- package/dist/esm/chunks/chunk.HJ23XQDJ.js +0 -7
- package/dist/esm/chunks/chunk.HJ23XQDJ.js.map +0 -7
- package/dist/esm/chunks/chunk.I5SFCLDD.js +0 -7
- package/dist/esm/chunks/chunk.IURDWGLD.js +0 -7
- package/dist/esm/chunks/chunk.IURDWGLD.js.map +0 -7
- package/dist/esm/chunks/chunk.JCO4M4PF.js +0 -7
- package/dist/esm/chunks/chunk.LNLO36U6.js +0 -7
- package/dist/esm/chunks/chunk.LV7XF22P.js +0 -7
- package/dist/esm/chunks/chunk.LV7XF22P.js.map +0 -7
- package/dist/esm/chunks/chunk.MHU452GM.js +0 -7
- package/dist/esm/chunks/chunk.MHU452GM.js.map +0 -7
- package/dist/esm/chunks/chunk.MLTEGJH6.js +0 -7
- package/dist/esm/chunks/chunk.MWWY5TX5.js +0 -7
- package/dist/esm/chunks/chunk.MWWY5TX5.js.map +0 -7
- package/dist/esm/chunks/chunk.O5GE3FFV.js +0 -7
- package/dist/esm/chunks/chunk.O5GE3FFV.js.map +0 -7
- package/dist/esm/chunks/chunk.OQ75YGB6.js +0 -7
- package/dist/esm/chunks/chunk.PCOOIP2H.js +0 -7
- package/dist/esm/chunks/chunk.PCOOIP2H.js.map +0 -7
- package/dist/esm/chunks/chunk.PDICDA2V.js +0 -7
- package/dist/esm/chunks/chunk.PDICDA2V.js.map +0 -7
- package/dist/esm/chunks/chunk.Q7BWJCT5.js +0 -7
- package/dist/esm/chunks/chunk.Q7BWJCT5.js.map +0 -7
- package/dist/esm/chunks/chunk.TCFKFKZW.js +0 -7
- package/dist/esm/chunks/chunk.TGVLYX5F.js +0 -7
- package/dist/esm/chunks/chunk.TGVLYX5F.js.map +0 -7
- package/dist/esm/chunks/chunk.TSH7BTC3.js +0 -7
- package/dist/esm/chunks/chunk.U5XNDTSZ.js +0 -7
- package/dist/esm/chunks/chunk.UAKQY7QB.js +0 -7
- package/dist/esm/chunks/chunk.UAKQY7QB.js.map +0 -7
- package/dist/esm/chunks/chunk.UAVC4YLD.js +0 -7
- package/dist/esm/chunks/chunk.UAVC4YLD.js.map +0 -7
- package/dist/esm/chunks/chunk.URFSXQKR.js +0 -7
- package/dist/esm/chunks/chunk.UZPZ6KUN.js +0 -7
- package/dist/esm/chunks/chunk.V6443MP3.js +0 -7
- package/dist/esm/chunks/chunk.V6443MP3.js.map +0 -7
- package/dist/esm/chunks/chunk.VAAID3SH.js +0 -7
- package/dist/esm/chunks/chunk.VAAID3SH.js.map +0 -7
- package/dist/esm/chunks/chunk.VPNDAKM3.js +0 -7
- package/dist/esm/chunks/chunk.VPNDAKM3.js.map +0 -7
- package/dist/esm/chunks/chunk.WCTSXMGU.js +0 -7
- package/dist/esm/chunks/chunk.WCTSXMGU.js.map +0 -7
- package/dist/esm/chunks/chunk.WOMYKBUG.js +0 -12
- package/dist/esm/chunks/chunk.WOMYKBUG.js.map +0 -7
- package/dist/esm/chunks/chunk.WVGIT7F7.js +0 -7
- package/dist/esm/chunks/chunk.WVGIT7F7.js.map +0 -7
- package/dist/esm/chunks/chunk.YOXZOPAC.js +0 -7
- package/dist/esm/chunks/chunk.YOXZOPAC.js.map +0 -7
- package/dist/esm/chunks/chunk.YP2NHWIW.js +0 -7
- package/dist/esm/chunks/chunk.YPA27RX7.js +0 -7
- package/dist/esm/chunks/chunk.YXXKPT6P.js +0 -7
- package/dist/esm/chunks/chunk.ZMUDT5UK.js +0 -7
- package/dist/esm/chunks/chunk.ZMUDT5UK.js.map +0 -7
- package/dist/floating-action-button/forge-floating-action-button.css +0 -6
- package/dist/icon-button/forge-icon-button.css +0 -6
- package/esm/app-bar/app-bar-adapter.d.ts +0 -43
- package/esm/app-bar/app-bar-adapter.js +0 -60
- package/esm/app-bar/app-bar-constants.js +0 -37
- package/esm/app-bar/app-bar-foundation.js +0 -70
- package/esm/app-bar/app-bar.d.ts +0 -38
- package/esm/app-bar/app-bar.js +0 -75
- package/esm/core/utils/a11y-utils.d.ts +0 -32
- package/esm/core/utils/a11y-utils.js +0 -111
- package/styles/app-bar/_mixins.scss +0 -249
- package/styles/app-bar/_variables.scss +0 -34
- package/styles/app-bar/app-bar.scss +0 -22
- package/styles/button/_button-base.scss +0 -183
- package/styles/button/_button-filled-theme.scss +0 -60
- package/styles/button/_button-filled.scss +0 -71
- package/styles/button/_button-outlined-theme.scss +0 -175
- package/styles/button/_button-outlined.scss +0 -76
- package/styles/button/_button-protected-theme.scss +0 -60
- package/styles/button/_button-protected.scss +0 -88
- package/styles/button/_button-ripple.scss +0 -69
- package/styles/button/_button-shared-theme.scss +0 -447
- package/styles/button/_button-text-theme.scss +0 -60
- package/styles/button/_button-text.scss +0 -57
- package/styles/button/_button.mixins.scss +0 -148
- package/styles/button/_mixins.scss +0 -183
- package/styles/checkbox/_checkbox-custom-properties.scss +0 -11
- package/styles/checkbox/_checkbox-theme.scss +0 -577
- package/styles/checkbox/_checkbox.mixins.scss +0 -595
- package/styles/floating-action-button/_extended-fab-theme.scss +0 -238
- package/styles/floating-action-button/_fab-custom-properties.scss +0 -29
- package/styles/floating-action-button/_fab-theme.scss +0 -541
- package/styles/floating-action-button/_fab.mixins.scss +0 -351
- package/styles/floating-action-button/forge-floating-action-button.scss +0 -16
- package/styles/icon-button/_mixins.scss +0 -345
- package/styles/icon-button/_variables.scss +0 -42
- package/styles/profile-card/_mixins.scss +0 -83
- /package/dist/esm/chunks/{chunk.PLNLLKP2.js.map → chunk.26E4L52W.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.AY43NTAK.js.map → chunk.3UO6S3IK.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.IXGXASHQ.js.map → chunk.4B5IOZAT.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.WK2L7BPJ.js.map → chunk.4QDN5PM6.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.C5ZUGOOC.js.map → chunk.57PXXJA6.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.C7VEJINB.js.map → chunk.5C24LZNU.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.C2MQN7MI.js.map → chunk.5H4G6BWX.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.CQQSOTZ5.js.map → chunk.5VHUMZYS.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.WJXDDQUK.js.map → chunk.7ABZUBTT.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.ZREXLSAJ.js.map → chunk.7BGOH44S.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.2WSXSOYB.js.map → chunk.7DHDFH5L.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.UVJFHSMF.js.map → chunk.7PP6QHOM.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.7L66GZDN.js.map → chunk.7UXLLUTN.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.NDJZYFRT.js.map → chunk.B46Q3AFP.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.EY37FYZ4.js.map → chunk.C5IB44HX.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.6VSFLBZF.js.map → chunk.CTZ3AWDW.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.HBCDD25D.js.map → chunk.DDXIHZFX.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.VDGJ4UDL.js.map → chunk.DOEG3DWJ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.4USQ2AP6.js.map → chunk.DTKFE7YB.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.IJ2I25V3.js.map → chunk.E3GVKR4E.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.FK6NNHXH.js.map → chunk.F2EBSV5Z.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.RNUGVHZF.js.map → chunk.G2BNY5QQ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.4JF54GDJ.js.map → chunk.GS72TBUD.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.AQ7ROWO4.js.map → chunk.GT3VPSXY.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.DABGA7I6.js.map → chunk.GWJ4QCSW.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.RXLORASN.js.map → chunk.HHHBS6FB.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.MLTEGJH6.js.map → chunk.I3NHK2S3.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.HKSXC5VK.js.map → chunk.IEB5KRFQ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.OQAD6MFL.js.map → chunk.J3B5CWKT.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.QNVVUUNQ.js.map → chunk.KLPF4CNX.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.66X366TV.js.map → chunk.L4Y4RO5O.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.RBFGJH3C.js.map → chunk.LMIKNDBS.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.R2KOYHIZ.js.map → chunk.LSNAGIIH.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.7M4HRJYP.js.map → chunk.LXX3YZYS.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.W7H2ZYNR.js.map → chunk.NG6UZ4OL.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.CMRVP4EA.js.map → chunk.NYYXUH3X.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.DQVYB55P.js.map → chunk.NZKIFXBU.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.AHAARGYM.js.map → chunk.OED5UCYT.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.2LIWNFQK.js.map → chunk.OYO5O3NF.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.7UJAI6P2.js.map → chunk.P7LC3YYW.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.Z6AFASMO.js.map → chunk.PK7R6WDF.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.WWTQAN4G.js.map → chunk.PSTGTQVK.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.RWUJGZ3R.js.map → chunk.RZZBM3AW.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.37JFBP4X.js.map → chunk.SNF35Y6C.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.YPA27RX7.js.map → chunk.T34DG7BU.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.HDO3WRH7.js.map → chunk.THWSN3X4.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.E4TAHUQO.js.map → chunk.TZFUKJ24.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.SEWAMWO6.js.map → chunk.U5WMRBSC.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.PDSOXEMY.js.map → chunk.UWZWXNTW.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.CBIHNCT5.js.map → chunk.W324TWF2.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.ZYVXIP42.js.map → chunk.YKZ25J6B.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.R6NA7SV2.js.map → chunk.ZSD7MMVB.js.map} +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/tabs/tab-bar/tab-bar-adapter.ts", "../../src/tabs/tab-bar/tab-bar-foundation.ts", "../../src/tabs/tab-bar/tab-bar.ts", "../../src/tabs/tab-bar/index.ts"],
|
|
4
|
+
"sourcesContent": ["\nimport { getShadowElement, toggleAttribute } from '@tylertech/forge-core';\nimport { IIconButtonComponent } from '../../icon-button/icon-button';\nimport { tylIconKeyboardArrowLeft, tylIconKeyboardArrowRight, tylIconKeyboardArrowUp, tylIconKeyboardArrowDown } from '@tylertech/tyler-icons/standard';\nimport { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';\nimport { ITabComponent } from '../tab/tab';\nimport { TAB_CONSTANTS } from '../tab/tab-constants';\nimport { ITabBarComponent } from './tab-bar';\nimport { TAB_BAR_CONSTANTS } from './tab-bar-constants';\n\nexport interface ITabBarAdapter extends IBaseAdapter {\n initializeContainerSizeObserver(listener: () => void): void;\n destroyContainerSizeObserver(): void;\n initializeScrollObserver(listener: EventListener): void;\n destroyScrollObserver(listener: EventListener): void;\n setVertical(value: boolean): void;\n setScrollBackwardButtonListener(listener: EventListener): void;\n setScrollForwardButtonListener(listener: EventListener): void;\n addSlotListener(listener: EventListener): void;\n getTabs(): ITabComponent[];\n tryScrollTabIntoView(tab: ITabComponent): Promise<void>;\n isScrollable(): boolean;\n getScrollState(): ITabBarScrollInfo;\n setScrollButtons(value: boolean): void;\n syncScrollButtons(state: ITabBarScrollButtonState): void;\n scroll(which: 'backward' | 'forward'): void;\n updateScrollButtonIcons(vertical: boolean): void;\n}\n\nexport interface ITabBarScrollInfo {\n isScrolledStart: boolean;\n isScrolledEnd: boolean;\n}\n\nexport interface ITabBarScrollButtonState {\n backwardEnabled: boolean;\n forwardEnabled: boolean;\n}\n\nexport class TabBarAdapter extends BaseAdapter<ITabBarComponent> implements ITabBarAdapter {\n private readonly _defaultSlotElement: HTMLSlotElement;\n private readonly _container: HTMLElement;\n private readonly _scrollContainer: HTMLElement;\n private _resizeObserver: ResizeObserver | undefined;\n private _backwardScrollButton: IIconButtonComponent | undefined;\n private _forwardScrollButton: IIconButtonComponent | undefined;\n\n constructor(component: ITabBarComponent) {\n super(component);\n\n this._defaultSlotElement = getShadowElement(this._component, TAB_BAR_CONSTANTS.selectors.DEFAULT_SLOT) as HTMLSlotElement;\n this._container = getShadowElement(this._component, TAB_BAR_CONSTANTS.selectors.CONTAINER);\n this._scrollContainer = getShadowElement(this._component, TAB_BAR_CONSTANTS.selectors.SCROLL_CONTAINER);\n }\n\n public initializeContainerSizeObserver(listener: () => void): void {\n this._resizeObserver = new ResizeObserver(() => listener());\n this._resizeObserver.observe(this._component);\n }\n \n public initializeScrollObserver(listener: EventListener): void {\n this._scrollContainer.addEventListener('scroll', listener, { passive: true });\n }\n\n public destroyContainerSizeObserver(): void {\n this._resizeObserver?.disconnect();\n this._resizeObserver = undefined;\n }\n\n public destroyScrollObserver(listener: EventListener): void {\n this._scrollContainer.removeEventListener('scroll', listener, { passive: true } as AddEventListenerOptions);\n }\n\n public setVertical(value: boolean): void {\n toggleAttribute(this._scrollContainer, !!value, 'aria-orientation', 'vertical');\n }\n\n public setScrollBackwardButtonListener(listener: EventListener): void {\n this._backwardScrollButton?.addEventListener('click', listener);\n }\n \n public setScrollForwardButtonListener(listener: EventListener): void {\n this._forwardScrollButton?.addEventListener('click', listener);\n }\n\n public addSlotListener(listener: EventListener): void {\n this._defaultSlotElement.addEventListener('slotchange', listener);\n }\n\n public getTabs(): ITabComponent[] {\n return Array.from(this._component.querySelectorAll(TAB_CONSTANTS.elementName));\n }\n\n public async tryScrollTabIntoView(tab: ITabComponent): Promise<void> {\n await new Promise(requestAnimationFrame);\n\n // Due to the async nature of this method, make sure we still need to scroll this tab into view...\n if (!tab.isConnected || (!tab.selected && !tab.matches(':focus'))) {\n return;\n }\n\n const isVertical = this._component.vertical;\n const scrollContainerOffset = isVertical ? this._scrollContainer.offsetTop : this._scrollContainer.offsetLeft;\n const offset = isVertical ? tab.offsetTop : tab.offsetLeft;\n const extent = isVertical ? tab.offsetHeight : tab.offsetWidth;\n const scroll = isVertical ? this._scrollContainer.scrollTop : this._scrollContainer.scrollLeft;\n const hostExtent = isVertical ? this._scrollContainer.offsetHeight : this._scrollContainer.offsetWidth;\n const min = offset - (TAB_BAR_CONSTANTS.numbers.SCROLL_MARGIN + scrollContainerOffset);\n const max = offset + extent - hostExtent + (TAB_BAR_CONSTANTS.numbers.SCROLL_MARGIN - scrollContainerOffset);\n const to = Math.min(min, Math.max(max, scroll));\n const behavior = tab.matches(':focus') ? 'smooth' : 'instant' as ScrollBehavior;\n\n this._scrollContainer.scrollTo({\n behavior,\n [isVertical ? 'left' : 'top']: 0,\n [isVertical ? 'top' : 'left']: to\n });\n }\n\n public getScrollState(): ITabBarScrollInfo {\n const { scrollHeight, scrollWidth, scrollLeft, scrollTop, clientHeight, clientWidth } = this._scrollContainer;\n const scrollPosition = this._component.vertical ? clientHeight + scrollTop : clientWidth + scrollLeft;\n const scrollSize = this._component.vertical ? scrollHeight : scrollWidth;\n const isScrolledEnd = scrollPosition === scrollSize;\n const isScrolledStart = (this._component.vertical ? scrollPosition - clientHeight : scrollPosition - clientWidth) === 0;\n return { isScrolledStart, isScrolledEnd };\n }\n\n public isScrollable(): boolean {\n const { scrollHeight, scrollWidth, clientHeight, clientWidth } = this._scrollContainer;\n return this._component.vertical ? scrollHeight > clientHeight : scrollWidth > clientWidth;\n }\n\n public setScrollButtons(value: boolean): void {\n if (value) {\n this._backwardScrollButton = this._createScrollButton(this._component.vertical ? tylIconKeyboardArrowUp.name : tylIconKeyboardArrowLeft.name);\n this._container.insertAdjacentElement('afterbegin', this._backwardScrollButton);\n\n this._forwardScrollButton = this._createScrollButton(this._component.vertical ? tylIconKeyboardArrowDown.name : tylIconKeyboardArrowRight.name);\n this._container.insertAdjacentElement('beforeend', this._forwardScrollButton);\n } else {\n this._backwardScrollButton?.remove();\n this._backwardScrollButton = undefined;\n\n this._forwardScrollButton?.remove();\n this._forwardScrollButton = undefined;\n }\n }\n\n public syncScrollButtons({ backwardEnabled, forwardEnabled }: ITabBarScrollButtonState): void {\n if (this._backwardScrollButton) {\n const disabled = !backwardEnabled;\n if (disabled && this._backwardScrollButton.matches(':focus')) {\n this._forwardScrollButton?.focus();\n }\n this._backwardScrollButton.disabled = disabled;\n }\n\n if (this._forwardScrollButton) {\n const disabled = !forwardEnabled;\n if (disabled && this._forwardScrollButton.matches(':focus')) {\n this._backwardScrollButton?.focus();\n }\n this._forwardScrollButton.disabled = disabled;\n }\n }\n\n public scroll(which: 'backward' | 'forward'): void {\n const amount = this._component.vertical ? this._scrollContainer.offsetHeight : this._scrollContainer.offsetWidth;\n this._scrollContainer.scrollBy({\n behavior: 'smooth',\n [this._component.vertical ? 'top' : 'left']: amount * (which === 'forward' ? 1 : -1)\n });\n }\n\n public updateScrollButtonIcons(vertical: boolean): void {\n const backButtonIcon = this._backwardScrollButton?.querySelector('forge-icon');\n if (backButtonIcon) {\n backButtonIcon.name = vertical ? tylIconKeyboardArrowUp.name : tylIconKeyboardArrowLeft.name;\n }\n\n const nextButtonIcon = this._forwardScrollButton?.querySelector('forge-icon');\n if (nextButtonIcon) {\n nextButtonIcon.name = vertical ? tylIconKeyboardArrowDown.name : tylIconKeyboardArrowRight.name;\n }\n }\n\n private _createScrollButton(iconName: string): IIconButtonComponent {\n const iconButton = document.createElement('forge-icon-button');\n iconButton.classList.add(TAB_BAR_CONSTANTS.classes.SCROLL_BUTTON);\n iconButton.shape = 'squared';\n iconButton.type = 'button';\n iconButton.tabIndex = -1;\n iconButton.setAttribute('aria-hidden', 'true');\n\n const icon = document.createElement('forge-icon');\n icon.name = iconName;\n iconButton.appendChild(icon);\n\n return iconButton;\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { NAVIGATION_KEYS, TAB_BAR_CONSTANTS } from './tab-bar-constants';\nimport { ITabComponent } from '../tab/tab';\nimport { TAB_CONSTANTS } from '../tab/tab-constants';\n\nimport { ITabBarAdapter, ITabBarScrollButtonState } from './tab-bar-adapter';\n\nexport interface ITabBarFoundation extends ICustomElementFoundation {\n disabled: boolean;\n activeTab: number | null | undefined;\n vertical: boolean;\n clustered: boolean;\n stacked: boolean;\n secondary: boolean;\n inverted: boolean;\n autoActivate: boolean;\n scrollButtons: boolean;\n initialize(): void;\n destroy(): void;\n}\n\nexport class TabBarFoundation implements ITabBarFoundation {\n // State\n private _isInitialized = false;\n private _activeTab: number | null | undefined;\n private _disabled = false;\n private _vertical = false;\n private _clustered = false;\n private _stacked = false;\n private _secondary = false;\n private _inverted = false;\n private _autoActivate = false;\n private _scrollButtons = false;\n private _tabs: ITabComponent[] = [];\n private _scrollButtonsVisible = false;\n private _tabScrollAnimationFrame: number | undefined;\n\n // Listeners\n private _tabsChangedListener: EventListener;\n private _tabSelectedListener: EventListener;\n private _keydownListener: EventListener;\n private _resizeListener: () => void;\n private _scrollListener: EventListener;\n private _scrollBackwardButtonListener: EventListener;\n private _scrollForwardButtonListener: EventListener;\n\n constructor(private _adapter: ITabBarAdapter) {\n this._tabsChangedListener = () => this._onTabsChanged();\n this._tabSelectedListener = (evt: CustomEvent<void>) => this._onTabSelected(evt);\n this._keydownListener = (evt: KeyboardEvent) => this._onKeydown(evt);\n this._resizeListener = () => this._onResize();\n this._scrollListener = () => this._onScroll();\n this._scrollBackwardButtonListener = () => this._onScrollBackward();\n this._scrollForwardButtonListener = () => this._onScrollForward();\n }\n\n public initialize(): void {\n this._adapter.addSlotListener(this._tabsChangedListener);\n this._adapter.addHostListener(TAB_CONSTANTS.events.SELECT, this._tabSelectedListener);\n this._adapter.addHostListener('keydown', this._keydownListener);\n this._adapter.setVertical(this._vertical);\n\n if (this._scrollButtons) {\n this._adapter.initializeContainerSizeObserver(this._resizeListener);\n this._adapter.initializeScrollObserver(this._scrollListener);\n this._updateScrollState();\n }\n\n this._tryScrollActiveTabIntoView();\n this._isInitialized = true;\n }\n\n public destroy(): void {\n this._adapter.destroyContainerSizeObserver();\n this._adapter.destroyScrollObserver(this._scrollListener);\n this._isInitialized = false;\n }\n\n private async _onTabsChanged(): Promise<void> {\n this._tabs = this._adapter.getTabs();\n this._syncTabState();\n this._tryScrollActiveTabIntoView();\n }\n\n private _onTabSelected(evt: CustomEvent<void>): void {\n this._selectTab(evt.target as ITabComponent);\n }\n\n private async _onKeydown(evt: KeyboardEvent): Promise<void> {\n const orientation = this._vertical ? 'vertical' : 'horizontal';\n const isNavigationKey = NAVIGATION_KEYS.get('default')?.has(evt.key) ||\n NAVIGATION_KEYS.get(orientation)?.has(evt.key);\n\n if (!isNavigationKey) {\n return;\n }\n\n evt.preventDefault();\n let index = -1;\n\n if (evt.key === 'Home') {\n // Locate the first non-disabled tab\n index = this._tabs.findIndex(tab => !tab.disabled);\n } else if (evt.key === 'End') {\n // Locate the last non-disabled tab\n index = this._tabs.reduceRight((acc, tab, i) => !tab.disabled && acc === -1 ? i : acc, -1);\n } else {\n // Locate the next or previous tab based on the key that was pressed\n const currentIndex = this._tabs.findIndex(tab => tab.matches(':focus'));\n const isPrevKey = evt.key === 'ArrowLeft' || evt.key === 'ArrowUp';\n const calcIndex = (startIndex: number): void => {\n index = startIndex + (isPrevKey ? -1 : 1);\n index = index < 0 ? this._tabs.length - 1 : index % this._tabs.length;\n\n // Try to recurse until we find a non-disabled tab (unless all tabs are disabled already)\n const isAllTabsDisabled = this._tabs.every(tab => tab.disabled);\n if (!isAllTabsDisabled && this._tabs[index]?.disabled) {\n calcIndex(index);\n }\n };\n calcIndex(currentIndex);\n }\n\n if (index === -1) {\n return;\n }\n\n if (this._autoActivate) {\n this._selectTab(this._tabs[index]);\n } else {\n this._tabs[index].focus({ preventScroll: true });\n await this._adapter.tryScrollTabIntoView(this._tabs[index]);\n }\n }\n\n private async _selectTab(tab: ITabComponent, emitEvent = true): Promise<void> {\n if (!tab || tab.disabled) {\n return;\n }\n\n const currentSelectedTab = this._tabs.find(t => t.selected);\n if (currentSelectedTab === tab) {\n return;\n }\n\n if (emitEvent) {\n const index = this._tabs.indexOf(tab);\n const cancelled = !this._adapter.emitHostEvent(TAB_BAR_CONSTANTS.events.CHANGE, index, true, true);\n if (cancelled) {\n return;\n }\n }\n\n // Selecting a tab causes an animation of the indicator to start relative to the currently selected tab\n tab.selected = true;\n tab.focus({ preventScroll: true });\n await this._adapter.tryScrollTabIntoView(tab);\n\n // Always deselect the currently selected tab after selecting a new tab to allow\n // for the tab indicator animation to run properly (the newly selected tab attempts\n // to locate the current selected tab for its calculations)\n if (currentSelectedTab) {\n currentSelectedTab.selected = false;\n }\n\n this._activeTab = this._tabs.indexOf(tab);\n }\n\n /**\n * Ensures that all tabs have the correct state based on the tab bar state.\n * \n * This is called whenever a child tab is added to the DOM.\n */\n private _syncTabState(): void {\n this._tabs.forEach((tab, index) => {\n tab.selected = index === this._activeTab;\n tab.disabled = this._disabled;\n tab.vertical = this._vertical;\n tab.stacked = this._stacked;\n tab.secondary = this._secondary;\n tab.inverted = this._inverted;\n });\n }\n\n /** Called when the container size changes, but only if scroll buttons are enabled. */\n private _onResize(): void {\n this._detectScrollableStatus();\n }\n\n /** Called when the scroll container scrolls, but only if scroll buttons are enabled. */\n private _onScroll(): void {\n this._updateScrollState();\n }\n\n /** Handles clicking the scroll backward button. */\n private _onScrollBackward(): void {\n this._adapter.scroll('backward');\n }\n\n /** Handles clicking the scroll forward button. */\n private _onScrollForward(): void {\n this._adapter.scroll('forward');\n }\n\n /** Determines whether scroll buttons should be displayed based on the size of the container. */\n private _detectScrollableStatus(): void {\n const scrollable = this._adapter.isScrollable();\n\n if (this._scrollButtonsVisible === scrollable) {\n return;\n }\n \n this._adapter.setScrollButtons(scrollable);\n\n if (scrollable) {\n this._adapter.initializeScrollObserver(this._scrollListener);\n this._updateScrollState();\n this._adapter.setScrollBackwardButtonListener(this._scrollBackwardButtonListener);\n this._adapter.setScrollForwardButtonListener(this._scrollForwardButtonListener);\n } else {\n this._adapter.destroyScrollObserver(this._scrollListener);\n }\n\n this._scrollButtonsVisible = scrollable;\n }\n\n /** Updates the enabled/disabled state of the scroll buttons. */\n private _updateScrollState(): void {\n const { isScrolledEnd, isScrolledStart } = this._adapter.getScrollState();\n const state: ITabBarScrollButtonState = {\n backwardEnabled: !isScrolledStart,\n forwardEnabled: !isScrolledEnd\n };\n this._adapter.syncScrollButtons(state);\n }\n\n private _tryScrollActiveTabIntoView(): void {\n if (this._tabScrollAnimationFrame) {\n window.cancelAnimationFrame(this._tabScrollAnimationFrame);\n }\n\n // We batch the tab scrolling into a single animation frame to unnecessarily scrolling for each tab\n this._tabScrollAnimationFrame = window.requestAnimationFrame(() => {\n this._tabScrollAnimationFrame = undefined;\n if (this._adapter.isScrollable()) {\n if (typeof this._activeTab === 'number' && this._activeTab >= 0 && this._tabs[this._activeTab]) {\n this._adapter.tryScrollTabIntoView(this._tabs[this._activeTab]);\n }\n }\n });\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n value = Boolean(value);\n if (this._disabled !== value) {\n this._disabled = value;\n this._tabs.forEach(tab => tab.disabled = this._disabled);\n this._adapter.toggleHostAttribute(TAB_BAR_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n public get activeTab(): number | null | undefined {\n return this._activeTab;\n }\n public set activeTab(value: number | null | undefined) {\n if (this._activeTab !== value) {\n this._activeTab = value ?? undefined;\n\n if (typeof this._activeTab === 'number') {\n const newSelectedTab = this._tabs[this._activeTab];\n this._selectTab(newSelectedTab, false);\n this._adapter.setHostAttribute(TAB_BAR_CONSTANTS.attributes.ACTIVE_TAB, String(this._activeTab));\n } else {\n this._tabs.forEach(tab => tab.selected = false);\n this._adapter.removeHostAttribute(TAB_BAR_CONSTANTS.attributes.ACTIVE_TAB);\n }\n }\n }\n\n public get vertical(): boolean {\n return this._vertical;\n }\n public set vertical(value: boolean) {\n value = Boolean(value);\n if (this._vertical !== value) {\n this._vertical = value;\n\n if (this._isInitialized) {\n this._adapter.setVertical(this._vertical);\n }\n\n this._tabs.forEach(tab => tab.vertical = this._vertical);\n if (this._scrollButtonsVisible) {\n this._adapter.updateScrollButtonIcons(this._vertical);\n }\n this._adapter.toggleHostAttribute(TAB_CONSTANTS.attributes.VERTICAL, this._vertical);\n }\n }\n\n public get clustered(): boolean {\n return this._clustered;\n }\n public set clustered(value: boolean) {\n value = Boolean(value);\n if (this._clustered !== value) {\n this._clustered = value;\n this._adapter.toggleHostAttribute(TAB_BAR_CONSTANTS.attributes.CLUSTERED, this._clustered);\n }\n }\n\n public get stacked(): boolean {\n return this._stacked;\n }\n public set stacked(value: boolean) {\n value = Boolean(value);\n if (this._stacked !== value) {\n this._stacked = value;\n this._tabs.forEach(tab => tab.stacked = this._stacked);\n this._adapter.toggleHostAttribute(TAB_BAR_CONSTANTS.attributes.STACKED, this._stacked);\n }\n }\n\n public get secondary(): boolean {\n return this._secondary;\n }\n public set secondary(value: boolean) {\n value = Boolean(value);\n if (this._secondary !== value) {\n this._secondary = value;\n this._tabs.forEach(tab => tab.secondary = this._secondary);\n this._adapter.toggleHostAttribute(TAB_BAR_CONSTANTS.attributes.SECONDARY, this._secondary);\n }\n }\n\n public get inverted(): boolean {\n return this._inverted;\n }\n public set inverted(value: boolean) {\n value = Boolean(value);\n if (this._inverted !== value) {\n this._inverted = value;\n this._tabs.forEach(tab => tab.inverted = this._inverted);\n this._adapter.toggleHostAttribute(TAB_BAR_CONSTANTS.attributes.INVERTED, this._inverted);\n }\n }\n\n public get autoActivate(): boolean {\n return this._autoActivate;\n }\n public set autoActivate(value: boolean) {\n value = Boolean(value);\n if (this._autoActivate !== value) {\n this._autoActivate = value;\n this._adapter.toggleHostAttribute(TAB_BAR_CONSTANTS.attributes.AUTO_ACTIVATE, this._autoActivate);\n }\n }\n\n public get scrollButtons(): boolean {\n return this._scrollButtons;\n }\n public set scrollButtons(value: boolean) {\n value = Boolean(value);\n if (this._scrollButtons !== value) {\n this._scrollButtons = Boolean(value);\n\n if (this._isInitialized) {\n if (this._scrollButtons) {\n this._adapter.initializeContainerSizeObserver(this._resizeListener);\n this._adapter.initializeScrollObserver(this._scrollListener);\n this._detectScrollableStatus();\n this._updateScrollState();\n this._tryScrollActiveTabIntoView();\n } else {\n this._adapter.destroyContainerSizeObserver();\n this._adapter.destroyScrollObserver(this._scrollListener);\n this._adapter.setScrollButtons(this._scrollButtons);\n this._scrollButtonsVisible = false;\n }\n }\n\n this._adapter.setHostAttribute(TAB_BAR_CONSTANTS.attributes.SCROLL_BUTTONS, String(this._scrollButtons));\n }\n }\n}\n", "import { attachShadowTemplate, coerceBoolean, coerceNumber, CustomElement, FoundationProperty } from '@tylertech/forge-core';\nimport { IconComponent, IconRegistry } from '../../icon';\nimport { IconButtonComponent } from '../../icon-button';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\nimport { TabComponent } from '../tab/tab';\nimport { TabBarAdapter } from './tab-bar-adapter';\nimport { TAB_BAR_CONSTANTS } from './tab-bar-constants';\nimport { TabBarFoundation } from './tab-bar-foundation';\nimport { tylIconKeyboardArrowLeft, tylIconKeyboardArrowRight, tylIconKeyboardArrowUp, tylIconKeyboardArrowDown } from '@tylertech/tyler-icons/standard';\n\nconst template = '<template><div class=\\\"container\\\" part=\\\"container\\\"><div role=\\\"tablist\\\" class=\\\"scroll-container\\\" part=\\\"scroll-container\\\"><slot></slot></div></div></template>';\nconst styles = ':host{position:relative;display:block}:host([hidden]){display:none}.container{--_tab-bar-justify:var(--forge-tab-bar-justify, space-between);--_tab-bar-stretch:var(--forge-tab-bar-stretch, 1);--_tab-bar-divider-color:var(--forge-tab-bar-divider-color, var(--forge-theme-outline, #e0e0e0));--_tab-bar-divider-thickness:var(--forge-tab-bar-divider-thickness, 1px)}.container{position:relative;display:grid;grid-template-columns:auto 1fr auto;max-width:100%;max-height:100%;-webkit-box-align:center;align-items:center;border-bottom:var(--_tab-bar-divider-thickness) solid var(--_tab-bar-divider-color)}.scroll-container{position:relative;display:-webkit-box;display:flex;-webkit-box-pack:var(--_tab-bar-justify);justify-content:var(--_tab-bar-justify);-webkit-box-align:end;align-items:flex-end;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:auto;scroll-behavior:smooth;scrollbar-width:none;grid-column:2}.scroll-container::-webkit-scrollbar{display:none}::slotted(*){-webkit-box-flex:var(--_tab-bar-stretch);flex:var(--_tab-bar-stretch)}::slotted([selected]){z-index:1}forge-icon-button{--forge-icon-button-shape-squared:0px}:host([vertical]) .container{grid-template-columns:none;grid-template-rows:auto 1fr auto;-webkit-box-align:initial;align-items:initial;border-bottom:none;border-right:var(--_tab-bar-divider-thickness) solid var(--_tab-bar-divider-color);height:100%}:host([vertical]) .scroll-container{display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:stretch;align-items:stretch;gap:0;grid-column:auto;grid-row:2}:host([vertical]) .scroll-button{justify-self:center}:host([inverted]:not([vertical])) .container{border-bottom:none;border-top:variale(divider-thickness) solid var(--_tab-bar-divider-color)}:host([inverted][vertical]) .container{border-bottom:none;border-top:var(--_tab-bar-divider-thickness) solid var(--_tab-bar-divider-color)}:host([clustered]) .container{--_tab-bar-justify:var(--forge-tab-bar-justify, flex-start);--_tab-bar-stretch:var(--forge-tab-bar-stretch, 0)}:host([clustered=start]) .container{--_tab-bar-justify:var(--forge-tab-bar-justify, flex-start)}:host([clustered=center]) .container{--_tab-bar-justify:var(--forge-tab-bar-justify, center)}:host([clustered=end]) .container{--_tab-bar-justify:var(--forge-tab-bar-justify, flex-end)}';\n\nexport interface ITabBarComponent extends IBaseComponent {\n disabled: boolean;\n activeTab: number | null | undefined;\n vertical: boolean;\n clustered: boolean;\n stacked: boolean;\n secondary: boolean;\n inverted: boolean;\n autoActivate: boolean;\n scrollButtons: boolean;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-tab-bar': ITabBarComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-tab-bar-change': CustomEvent<number>;\n }\n}\n\n/**\n * @tag forge-tab-bar\n * \n * @summary Tabs organize content across different screens and views.\n * \n * @description\n * Use tabs to group content into helpful categories. Tabs are typically placed\n * above the content they relate to. Tabs can be used to navigate between screens,\n * or to group related content within a screen.\n * \n * @property {boolean} disabled - The disabled state of the tab bar.\n * @property {number} activeTab - The index of the active tab.\n * @property {boolean} vertical - Controls whether the tab bar is vertical or horizontal.\n * @property {boolean} clustered - Controls whether the tabs stretch the full width of their container or cluster together at their minimum width.\n * @property {boolean} stacked - Controls whether the tabs are taller to allow for slotted leading/trailing elements.\n * @property {boolean} secondary - Controls whether the tabs are styled as secondary tab navigation.\n * @property {boolean} inverted - Controls whether the tabs are rendered inverted (tab indicator at top instead of bottom).\n * @property {boolean} autoActivate - Controls whether the tabs are automatically activated when receiving focus.\n * @property {boolean} scrollButtons - Controls whether scroll buttons are displayed when the tabs overflow their container.\n * \n * @attribute disabled - The disabled state of the tab bar.\n * @attribute active-tab - The index of the active tab.\n * @attribute vertical - Controls whether the tab bar is vertical or horizontal.\n * @attribute clustered - Controls whether the tabs stretch the full width of their container or cluster together at their minimum width.\n * @attribute stacked - Controls whether the tabs are taller to allow for slotted leading/trailing elements.\n * @attribute secondary - Controls whether the tabs are styled as secondary tab navigation.\n * @attribute auto-activate - Controls whether the tabs are automatically activated when receiving focus.\n * @attribute scroll-buttons - Controls whether scroll buttons are displayed when the tabs overflow their container.\n * \n * @event forge-tab-bar-change {CustomEvent<number>} - Dispatches when the active tab changes.\n * \n * @cssproperty --forge-tab-bar-justify - The `justify-content` value for the tab bar flex container.\n * @cssproperty --forge-tab-bar-stretch - The `flex` value for the child `<forge-tab>` elements.\n * @cssproperty --forge-tab-bar-divider-color - The color of the divider.\n * @cssproperty --forge-tab-bar-divider-thickness - The thickness of the divider.\n * \n * @csspart container - The container element.\n * @csspart scroll-container - The scroll container element.\n */\n@CustomElement({\n name: TAB_BAR_CONSTANTS.elementName,\n dependencies: [\n TabComponent,\n IconButtonComponent,\n IconComponent\n ]\n})\nexport class TabBarComponent extends BaseComponent implements ITabBarComponent {\n public static get observedAttributes(): string[] {\n return [\n TAB_BAR_CONSTANTS.attributes.DISABLED,\n TAB_BAR_CONSTANTS.attributes.ACTIVE_TAB,\n TAB_BAR_CONSTANTS.attributes.VERTICAL,\n TAB_BAR_CONSTANTS.attributes.CLUSTERED,\n TAB_BAR_CONSTANTS.attributes.STACKED,\n TAB_BAR_CONSTANTS.attributes.SECONDARY,\n TAB_BAR_CONSTANTS.attributes.INVERTED,\n TAB_BAR_CONSTANTS.attributes.AUTO_ACTIVATE,\n TAB_BAR_CONSTANTS.attributes.SCROLL_BUTTONS\n ];\n }\n\n private _foundation: TabBarFoundation;\n\n constructor() {\n super();\n IconRegistry.define([\n tylIconKeyboardArrowLeft,\n tylIconKeyboardArrowRight,\n tylIconKeyboardArrowUp,\n tylIconKeyboardArrowDown\n ]);\n attachShadowTemplate(this, template, styles);\n this._foundation = new TabBarFoundation(new TabBarAdapter(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 TAB_BAR_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case TAB_BAR_CONSTANTS.attributes.ACTIVE_TAB:\n this.activeTab = newValue ? coerceNumber(newValue) : undefined;\n break;\n case TAB_BAR_CONSTANTS.attributes.VERTICAL:\n this.vertical = coerceBoolean(newValue);\n break;\n case TAB_BAR_CONSTANTS.attributes.CLUSTERED:\n this.clustered = coerceBoolean(newValue);\n break;\n case TAB_BAR_CONSTANTS.attributes.STACKED:\n this.stacked = coerceBoolean(newValue);\n break;\n case TAB_BAR_CONSTANTS.attributes.SECONDARY:\n this.secondary = coerceBoolean(newValue);\n break;\n case TAB_BAR_CONSTANTS.attributes.INVERTED:\n this.inverted = coerceBoolean(newValue);\n break;\n case TAB_BAR_CONSTANTS.attributes.AUTO_ACTIVATE:\n this.autoActivate = coerceBoolean(newValue);\n break;\n case TAB_BAR_CONSTANTS.attributes.SCROLL_BUTTONS:\n this.scrollButtons = coerceBoolean(newValue);\n break;\n }\n }\n\n @FoundationProperty()\n public declare disabled: boolean;\n\n @FoundationProperty()\n public declare activeTab: number | null | undefined;\n\n @FoundationProperty()\n public declare vertical: boolean;\n\n @FoundationProperty()\n public declare clustered: boolean;\n\n @FoundationProperty()\n public declare stacked: boolean;\n\n @FoundationProperty()\n public declare secondary: boolean;\n\n @FoundationProperty()\n public declare inverted: boolean;\n\n @FoundationProperty()\n public declare autoActivate: boolean;\n\n @FoundationProperty()\n public declare scrollButtons: boolean;\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { TabBarComponent } from './tab-bar';\n\nexport * from './tab-bar-adapter';\nexport * from './tab-bar-constants';\nexport * from './tab-bar-foundation';\nexport * from './tab-bar';\n\nexport function defineTabBarComponent(): void {\n defineCustomElement(TabBarComponent);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["TabBarAdapter", "BaseAdapter", "component", "getShadowElement", "TAB_BAR_CONSTANTS", "listener", "_a", "value", "toggleAttribute", "TAB_CONSTANTS", "tab", "isVertical", "scrollContainerOffset", "offset", "extent", "scroll", "hostExtent", "min", "max", "to", "behavior", "scrollHeight", "scrollWidth", "scrollLeft", "scrollTop", "clientHeight", "clientWidth", "scrollPosition", "scrollSize", "isScrolledEnd", "_b", "tylIconKeyboardArrowUp", "tylIconKeyboardArrowLeft", "tylIconKeyboardArrowDown", "tylIconKeyboardArrowRight", "backwardEnabled", "forwardEnabled", "disabled", "which", "amount", "vertical", "backButtonIcon", "nextButtonIcon", "iconName", "iconButton", "icon", "TabBarFoundation", "_adapter", "evt", "TAB_CONSTANTS", "_a", "_b", "orientation", "NAVIGATION_KEYS", "index", "tab", "acc", "i", "currentIndex", "isPrevKey", "calcIndex", "startIndex", "emitEvent", "currentSelectedTab", "t", "TAB_BAR_CONSTANTS", "scrollable", "isScrolledEnd", "isScrolledStart", "state", "value", "newSelectedTab", "template", "styles", "TabBarComponent", "BaseComponent", "IconRegistry", "tylIconKeyboardArrowLeft", "tylIconKeyboardArrowRight", "tylIconKeyboardArrowUp", "tylIconKeyboardArrowDown", "attachShadowTemplate", "TabBarFoundation", "TabBarAdapter", "TAB_BAR_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "coerceNumber", "__decorateClass", "FoundationProperty", "CustomElement", "TabComponent", "IconButtonComponent", "IconComponent", "defineTabBarComponent", "defineCustomElement", "TabBarComponent"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import{b as C,j as x}from"./chunk.CZOABXEQ.js";import{a as S}from"./chunk.LS7WRRT2.js";import{a as u}from"./chunk.NVUMRW44.js";import{a as T,b as I}from"./chunk.IT66AOX7.js";import{e as y,f as b,k as A}from"./chunk.JAWV5Y5T.js";import{k as L}from"./chunk.J2M2MXP2.js";import{a as g,d as h}from"./chunk.M3QDAYD2.js";var F=`${I}state-layer`,Y={TARGET:"target",DISABLED:"disabled"},$=g({},Y),V={SURFACE:".forge-state-layer"},W={HOVERED:"forge-state-layer--hovered",PRESSED:"forge-state-layer--pressed"},s={elementName:F,attributes:$,selectors:V,classes:W},d=class n{constructor(e,t){this.x=e;this.y=t}static fromPointerEvent(e){return new n(e.pageX,e.pageY)}},P=150,N=450,f=225,M=.2,D=10,R=75,H=.35,O="::after",w="forwards",k="cubic-bezier(0.2, 0, 0, 1)",B=(r=>(r[r.INACTIVE=0]="INACTIVE",r[r.TOUCH_DELAY=1]="TOUCH_DELAY",r[r.HOLDING=2]="HOLDING",r[r.WAITING_FOR_CLICK=3]="WAITING_FOR_CLICK",r))(B||{});function G(n){let{height:e,width:t}=n.getBoundingClientRect(),i=Math.max(e,t),r=Math.max(H*i,R),a=Math.floor(i*M),_=`${(Math.sqrt(t**2+e**2)+D+r)/a}`,c=`${a}px`;return{rippleScale:_,rippleSize:c,initialSize:a}}function U(n,e,t){let{height:i,width:r}=n.getBoundingClientRect(),a={x:(r-e)/2,y:(i-e)/2},o;return X(t)?o=K(n,t):o={x:r/2,y:i/2},o={x:o.x-e/2,y:o.y-e/2},{startPoint:o,endPoint:a}}function K(n,e){let{scrollX:t,scrollY:i}=window,{left:r,top:a}=n.getBoundingClientRect(),o=t+r,p=i+a,{x:_,y:c}=e;return{x:_-o,y:c-p}}function z(n,e,t){let{height:i,width:r}=n.getBoundingClientRect();return e>=0&&e<=r&&t>=0&&t<=i}function X(n){return n&&(n instanceof d||["x","y"].every(e=>e in n))}var m=class extends S{constructor(t){super(t);this._targetElement=null;this._surfaceElement=b(t,s.selectors.SURFACE)}destroy(){typeof this._destroyDeferListener=="function"&&(this._destroyDeferListener(),this._destroyDeferListener=void 0),this._targetElement=null}async deferInitialization(t){if(!this._targetElement)return;let{userInteraction:i,destroy:r}=C(this._targetElement);this._destroyDeferListener=r;let a=await i;t(a.type==="pointerenter"?a:void 0)}addTargetListener(t,i){var r;(r=this._targetElement)==null||r.addEventListener(t,i)}removeTargetListener(t,i){var r;(r=this._targetElement)==null||r.removeEventListener(t,i)}setHovered(t){this._surfaceElement.classList.toggle(s.classes.HOVERED,t)}setPressed(t){this._surfaceElement.classList.toggle(s.classes.PRESSED,t)}getTargetElement(){return this._targetElement}setTargetElement(t){this._targetElement=t}trySetTarget(t){this._targetElement=x(this._component,t)}startAnimation(t){var E;if(!this._surfaceElement)return;this.setPressed(!0),(E=this._rippleAnimation)==null||E.cancel();let{rippleSize:i,rippleScale:r,initialSize:a}=G(this._component),{startPoint:o,endPoint:p}=U(this._component,a,t),_=`${o.x}px, ${o.y}px`,c=`${p.x}px, ${p.y}px`;this._rippleAnimation=this._surfaceElement.animate({top:[0,0],left:[0,0],height:[i,i],width:[i,i],transform:[`translate(${_}) scale(1)`,`translate(${c}) scale(${r})`]},{pseudoElement:O,duration:N,easing:k,fill:w})}async endAnimation(){var r;let t=this._rippleAnimation,i=(r=t==null?void 0:t.currentTime)!=null?r:1/0;if(i>=f){this.setPressed(!1);return}await new Promise(a=>{setTimeout(a,f-i)}),this._rippleAnimation===t&&this.setPressed(!1)}inBounds(t,i){return z(this._component,t,i)}};var v=class{constructor(e){this._adapter=e;this._target=null;this._disabled=!1;this._attached=!1;this._deferred=!0;this._pointerState=0;this._checkBoundsAfterContextMenu=!1;this._pointerEnterListener=t=>this._onPointerEnter(t),this._pointerLeaveListener=t=>this._onPointerLeave(t),this._pointerDownListener=t=>this._onPointerDown(t),this._pointerUpListener=t=>this._onPointerUp(t),this._pointerCancelListener=t=>this._onPointerCancel(t),this._clickListener=()=>this._onClick(),this._contextmenuListener=()=>this._onContextmenu()}initialize(){this._adapter.trySetTarget(this._target),this._deferInitialization()}disconnect(){this._pointerStartEvent=void 0,this._pointerState=0,this._adapter.setHovered(!1),this._adapter.setPressed(!1),this._removeListeners(),this._adapter.destroy()}playAnimation(e){this._adapter.startAnimation(e),this._endAnimation()}_deferInitialization(){this._adapter.deferInitialization(this._onDeferredInitialize.bind(this))}_applyListeners(){this._disabled||(this._adapter.addTargetListener("pointerenter",this._pointerEnterListener),this._adapter.addTargetListener("pointerleave",this._pointerLeaveListener),this._adapter.addTargetListener("pointerdown",this._pointerDownListener),this._adapter.addTargetListener("pointerup",this._pointerUpListener),this._adapter.addTargetListener("pointercancel",this._pointerCancelListener),this._adapter.addTargetListener("click",this._clickListener),this._adapter.addTargetListener("contextmenu",this._contextmenuListener),this._attached=!0)}_removeListeners(){this._adapter.removeTargetListener("pointerenter",this._pointerEnterListener),this._adapter.removeTargetListener("pointerleave",this._pointerLeaveListener),this._adapter.removeTargetListener("pointerdown",this._pointerDownListener),this._adapter.removeTargetListener("pointerup",this._pointerUpListener),this._adapter.removeTargetListener("pointercancel",this._pointerCancelListener),this._adapter.removeTargetListener("click",this._clickListener),this._adapter.removeTargetListener("contextmenu",this._contextmenuListener),this._attached=!1}_onDeferredInitialize(e){this._applyListeners(),(e==null?void 0:e.type)==="pointerenter"&&this._pointerEnterListener(e),this._deferred=!1}_onPointerEnter(e){this._canHandleEvent(e)&&this._adapter.setHovered(!0)}_onPointerLeave(e){this._canHandleEvent(e)&&(this._adapter.setHovered(!1),this._pointerState!==0&&this._adapter.endAnimation())}async _onPointerDown(e){if(this._pointerStartEvent=e,!!this._canHandleEvent(e)){if(!this._isTouch(e.pointerType)){this._pointerState=3,this._startAnimation(e);return}this._checkBoundsAfterContextMenu&&!this._adapter.inBounds(e.x,e.y)||(this._checkBoundsAfterContextMenu=!1,this._pointerState=1,await new Promise(t=>setTimeout(t,P)),this._pointerState===1&&(this._pointerState=2,this._startAnimation(e)))}}_onPointerUp(e){if(this._canHandleEvent(e)){if(this._pointerState===2){this._pointerState=3;return}if(this._pointerState===1){this._pointerState=3,this._startAnimation(this._pointerStartEvent);return}}}_onClick(){if(!this._disabled){if(this._pointerState===3){this._endAnimation();return}this._pointerState===0&&(this._startAnimation(this._pointerStartEvent),this._endAnimation())}}_onPointerCancel(e){this._canHandleEvent(e)&&this._endAnimation()}_onContextmenu(){this._disabled||(this._checkBoundsAfterContextMenu=!0,this._adapter.endAnimation())}_startAnimation(e){let t=e?d.fromPointerEvent(e):void 0;this._adapter.startAnimation(t)}_endAnimation(){this._pointerState=0,this._adapter.endAnimation(),this._pointerStartEvent=void 0}_canHandleEvent({type:e,isPrimary:t,buttons:i,pointerType:r,pointerId:a}){if(this._disabled||!t||this._pointerStartEvent&&this._pointerStartEvent.pointerId!==a)return!1;if(e==="pointerenter"||e==="pointerleave")return!this._isTouch(r);let o=i===1;return this._isTouch(r)||o}_isTouch(e){return e==="touch"}get isAttached(){return this._attached}get targetElement(){return this._adapter.getTargetElement()}set targetElement(e){this._attached?this._removeListeners():(this._adapter.destroy(),this._deferred=!1),this._adapter.setTargetElement(e),this._deferred||this._deferInitialization()}get target(){return this._adapter.getHostAttribute(s.attributes.TARGET)}set target(e){this._target!==e&&(this._target=e,this._adapter.isConnected&&(this._attached?this._removeListeners():(this._adapter.destroy(),this._deferred=!1),this._adapter.trySetTarget(e),this._deferred||this._deferInitialization()),this._adapter.toggleHostAttribute(s.attributes.TARGET,!!this._target,this._target))}get disabled(){return this._disabled}set disabled(e){e=!!e,this._disabled!==e&&(this._disabled=e,this._adapter.isConnected&&(this._disabled?this._removeListeners():this._deferred||this._deferInitialization()),this._adapter.toggleHostAttribute(s.attributes.DISABLED,this._disabled))}};var Z='<template><div class="forge-state-layer" part="surface"></div></template>',q=':host{border-radius:inherit;position:absolute;inset:0;overflow:hidden;display:-webkit-box;display:flex;margin:auto;pointer-events:none;-webkit-tap-highlight-color:transparent}:host([hidden]){display:none}:host([disabled]){display:none}.forge-state-layer{--_state-layer-color:var(--forge-state-layer-color, var(--forge-theme-on-surface, #000000));--_state-layer-hover-color:var(--forge-state-layer-hover-color, var(--_state-layer-color));--_state-layer-hover-opacity:var(--forge-state-layer-hover-opacity, 0.08);--_state-layer-pressed-color:var(--forge-state-layer-pressed-color, var(--_state-layer-color));--_state-layer-pressed-opacity:var(--forge-state-layer-pressed-opacity, 0.12);--_state-layer-hover-duration:var(--forge-state-layer-hover-duration, 15ms);--_state-layer-pressed-duration:var(--forge-state-layer-pressed-duration, 105ms);--_state-layer-animation-duration:var(--forge-state-layer-animation-duration, 375ms)}.forge-state-layer::after,.forge-state-layer::before{content:"";opacity:0;position:absolute}.forge-state-layer::before{background-color:var(--_state-layer-hover-color);inset:0;-webkit-transition:opacity var(--_state-layer-hover-duration) linear,background-color var(--_state-layer-hover-duration) linear;transition:opacity var(--_state-layer-hover-duration) linear,background-color var(--_state-layer-hover-duration) linear}.forge-state-layer::after{background:radial-gradient(closest-side,var(--_state-layer-pressed-color) max(100% - 70px,65%),transparent 100%);-webkit-transform-origin:center center;transform-origin:center center;-webkit-transition:opacity var(--_state-layer-animation-duration) linear;transition:opacity var(--_state-layer-animation-duration) linear}.forge-state-layer--hovered::before{background-color:var(--_state-layer-hover-color);opacity:var(--_state-layer-hover-opacity)}.forge-state-layer--pressed::after{opacity:var(--_state-layer-pressed-opacity);-webkit-transition-duration:var(--_state-layer-pressed-duration);transition-duration:var(--_state-layer-pressed-duration)}@media screen and (forced-colors:active){:host{display:none}}',l=class extends A{constructor(){super();y(this,Z,q),this._foundation=new v(new m(this))}static get observedAttributes(){return[s.attributes.TARGET,s.attributes.DISABLED]}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,i,r){switch(t){case s.attributes.TARGET:this.target=r;break;case s.attributes.DISABLED:this.disabled=L(r);break}}playAnimation(t){this._foundation.playAnimation(t)}};h([u()],l.prototype,"targetElement",2),h([u()],l.prototype,"target",2),h([u()],l.prototype,"disabled",2),l=h([T({name:s.elementName})],l);export{s as a,d as b,P as c,N as d,f as e,M as f,D as g,R as h,H as i,O as j,w as k,k as l,B as m,m as n,v as o,l as p};
|
|
7
|
+
//# sourceMappingURL=chunk.FQSL747N.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/state-layer/state-layer-constants.ts", "../../src/state-layer/state-layer-utils.ts", "../../src/state-layer/state-layer-adapter.ts", "../../src/state-layer/state-layer-foundation.ts", "../../src/state-layer/state-layer.ts"],
|
|
4
|
+
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName = `${COMPONENT_NAME_PREFIX}state-layer`;\n\nconst observedAttributes = {\n TARGET: 'target',\n DISABLED: 'disabled'\n};\n\nconst attributes = {\n ...observedAttributes\n};\n\nconst selectors = {\n SURFACE: '.forge-state-layer'\n};\n\nconst classes = {\n HOVERED: 'forge-state-layer--hovered',\n PRESSED: 'forge-state-layer--pressed'\n};\n\nexport const STATE_LAYER_CONSTANTS = {\n elementName,\n attributes,\n selectors,\n classes\n};\n\nexport class StateLayerCoords {\n constructor(public x: number, public y: number) {}\n\n public static fromPointerEvent(event: PointerEvent): StateLayerCoords {\n return new StateLayerCoords(event.pageX, event.pageY);\n }\n}\n\nexport const TOUCH_DELAY_MS = 150;\nexport const PRESS_GROW_MS = 450;\nexport const MINIMUM_PRESS_MS = 225;\nexport const INITIAL_ORIGIN_SCALE = 0.2;\nexport const PADDING = 10;\nexport const SOFT_EDGE_MINIMUM_SIZE = 75;\nexport const SOFT_EDGE_CONTAINER_RATIO = 0.35;\nexport const PRESS_PSEUDO = '::after';\nexport const ANIMATION_FILL = 'forwards';\nexport const EASING = 'cubic-bezier(0.2, 0, 0, 1)';\n\n/**\n * Interaction states for the state layer.\n *\n * On Touch:\n * - `INACTIVE -> TOUCH_DELAY -> WAITING_FOR_CLICK -> INACTIVE`\n * - `INACTIVE -> TOUCH_DELAY -> HOLDING -> WAITING_FOR_CLICK -> INACTIVE`\n *\n * On Mouse or Pen:\n * - `INACTIVE -> WAITING_FOR_CLICK -> INACTIVE`\n */\nexport enum PointerState {\n /**\n * Initial state of the control, no touch in progress.\n *\n * Transitions:\n * - on touch down: transition to `TOUCH_DELAY`.\n * - on mouse down: transition to `WAITING_FOR_CLICK`.\n */\n INACTIVE,\n /**\n * Touch down has been received, waiting to determine if it's a swipe or\n * scroll.\n *\n * Transitions:\n * - on touch up: begin press; transition to `WAITING_FOR_CLICK`.\n * - on cancel: transition to `INACTIVE`.\n * - after `TOUCH_DELAY_MS`: begin press; transition to `HOLDING`.\n */\n TOUCH_DELAY,\n /**\n * A touch has been deemed to be a press\n *\n * Transitions:\n * - on up: transition to `WAITING_FOR_CLICK`.\n */\n HOLDING,\n /**\n * The user touch has finished, transition into rest state.\n *\n * Transitions:\n * - on click end press; transition to `INACTIVE`.\n */\n WAITING_FOR_CLICK\n}\n", "import { INITIAL_ORIGIN_SCALE, PADDING, SOFT_EDGE_CONTAINER_RATIO, SOFT_EDGE_MINIMUM_SIZE, StateLayerCoords } from './state-layer-constants';\n\nexport function calcRippleSize(hostEl: HTMLElement): { rippleScale: string; rippleSize: string; initialSize: number } {\n const { height, width } = hostEl.getBoundingClientRect();\n const maxDim = Math.max(height, width);\n const softEdgeSize = Math.max(SOFT_EDGE_CONTAINER_RATIO * maxDim, SOFT_EDGE_MINIMUM_SIZE);\n const initialSize = Math.floor(maxDim * INITIAL_ORIGIN_SCALE);\n const hypotenuse = Math.sqrt(width ** 2 + height ** 2);\n const maxRadius = hypotenuse + PADDING;\n const rippleScale = `${(maxRadius + softEdgeSize) / initialSize}`;\n const rippleSize = `${initialSize}px`;\n return { rippleScale, rippleSize, initialSize };\n}\n\nexport function getTranslationCoordinates(hostEl: HTMLElement, initialSize: number, coords?: StateLayerCoords): { startPoint: { x: number; y: number }; endPoint: { x: number; y: number } } {\n const { height, width } = hostEl.getBoundingClientRect();\n const endPoint = {\n x: (width - initialSize) / 2,\n y: (height - initialSize) / 2\n };\n\n let startPoint;\n if (isValidCoords(coords)) {\n startPoint = toNormalizedCoords(hostEl, coords);\n } else {\n startPoint = {\n x: width / 2,\n y: height / 2\n };\n }\n\n startPoint = {\n x: startPoint.x - (initialSize / 2),\n y: startPoint.y - (initialSize / 2)\n };\n\n return { startPoint, endPoint };\n}\n\nexport function toNormalizedCoords(hostEl: HTMLElement, coords: StateLayerCoords): { x: number; y: number } {\n const { scrollX, scrollY } = window;\n const { left, top } = hostEl.getBoundingClientRect();\n const documentX = scrollX + left;\n const documentY = scrollY + top;\n const { x, y } = coords;\n return { x: x - documentX, y: y - documentY };\n}\n\nexport function isInBounds(hostEl: HTMLElement, x: number, y: number): boolean {\n const { height, width } = hostEl.getBoundingClientRect();\n return x >= 0 && x <= width && y >= 0 && y <= height;\n}\n\nfunction isValidCoords(value: any): value is StateLayerCoords {\n return value && (value instanceof StateLayerCoords || ['x', 'y'].every(key => key in value));\n}\n", "import { getShadowElement } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { locateTargetHeuristic, createUserInteractionListener } from '../core/utils/utils';\nimport { IStateLayerComponent } from './state-layer';\nimport { ANIMATION_FILL, EASING, MINIMUM_PRESS_MS, PRESS_GROW_MS, PRESS_PSEUDO, StateLayerCoords, STATE_LAYER_CONSTANTS } from './state-layer-constants';\nimport { calcRippleSize, getTranslationCoordinates, isInBounds } from './state-layer-utils';\n\nexport interface IStateLayerAdapter extends IBaseAdapter {\n destroy(): void;\n deferInitialization(listener: (evt?: PointerEvent) => void): void;\n getTargetElement(): HTMLElement | null;\n setTargetElement(el: HTMLElement | null): void;\n trySetTarget(value?: string | null): void;\n addTargetListener(type: string, listener: EventListener): void;\n removeTargetListener(type: string, listener: EventListener): void;\n setHovered(hovered: boolean): void;\n setPressed(pressed: boolean): void;\n startAnimation(coords?: StateLayerCoords): void;\n endAnimation(): Promise<void>;\n inBounds(x: number, y: number): boolean;\n}\n\nexport class StateLayerAdapter extends BaseAdapter<IStateLayerComponent> implements IStateLayerAdapter {\n private readonly _surfaceElement: HTMLElement;\n private _targetElement: HTMLElement | null = null;\n private _rippleAnimation: Animation | undefined;\n private _destroyDeferListener: (() => void) | undefined;\n\n constructor(component: IStateLayerComponent) {\n super(component);\n this._surfaceElement = getShadowElement(component, STATE_LAYER_CONSTANTS.selectors.SURFACE);\n }\n\n public destroy(): void {\n if (typeof this._destroyDeferListener === 'function') {\n this._destroyDeferListener();\n this._destroyDeferListener = undefined;\n }\n this._targetElement = null;\n }\n\n public async deferInitialization(listener: (evt?: PointerEvent) => void): Promise<void> {\n if (!this._targetElement) {\n return;\n }\n const { userInteraction, destroy } = createUserInteractionListener(this._targetElement);\n this._destroyDeferListener = destroy;\n const evt = await userInteraction;\n listener(evt.type === 'pointerenter' ? evt as PointerEvent : undefined);\n }\n\n public addTargetListener(type: string, listener: EventListener): void {\n this._targetElement?.addEventListener(type, listener);\n }\n\n public removeTargetListener(type: string, listener: EventListener): void {\n this._targetElement?.removeEventListener(type, listener);\n }\n\n public setHovered(hovered: boolean): void {\n this._surfaceElement.classList.toggle(STATE_LAYER_CONSTANTS.classes.HOVERED, hovered);\n }\n \n public setPressed(pressed: boolean): void {\n this._surfaceElement.classList.toggle(STATE_LAYER_CONSTANTS.classes.PRESSED, pressed);\n }\n\n public getTargetElement(): HTMLElement | null {\n return this._targetElement;\n }\n\n public setTargetElement(el: HTMLElement | null): void {\n this._targetElement = el;\n }\n\n public trySetTarget(value?: string | null): void {\n this._targetElement = locateTargetHeuristic(this._component, value);\n }\n\n public startAnimation(coords?: StateLayerCoords): void {\n if (!this._surfaceElement) {\n return;\n }\n\n this.setPressed(true);\n this._rippleAnimation?.cancel();\n\n const { rippleSize, rippleScale, initialSize } = calcRippleSize(this._component);\n const { startPoint, endPoint } = getTranslationCoordinates(this._component, initialSize, coords);\n const translateStart = `${startPoint.x}px, ${startPoint.y}px`;\n const translateEnd = `${endPoint.x}px, ${endPoint.y}px`;\n\n this._rippleAnimation = this._surfaceElement.animate(\n {\n top: [0, 0],\n left: [0, 0],\n height: [rippleSize, rippleSize],\n width: [rippleSize, rippleSize],\n transform: [\n `translate(${translateStart}) scale(1)`,\n `translate(${translateEnd}) scale(${rippleScale})`\n ]\n },\n {\n pseudoElement: PRESS_PSEUDO,\n duration: PRESS_GROW_MS,\n easing: EASING,\n fill: ANIMATION_FILL\n });\n }\n\n public async endAnimation(): Promise<void> {\n const animation = this._rippleAnimation;\n const pressAnimationPlayState = animation?.currentTime ?? Infinity;\n\n if (pressAnimationPlayState >= MINIMUM_PRESS_MS) {\n this.setPressed(false);\n return;\n }\n\n await new Promise(resolve => {\n setTimeout(resolve, MINIMUM_PRESS_MS - pressAnimationPlayState);\n });\n\n if (this._rippleAnimation !== animation) {\n return;\n }\n\n this.setPressed(false);\n }\n\n public inBounds(x: number, y: number): boolean {\n return isInBounds(this._component, x, y);\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\n\nimport { IStateLayerAdapter } from './state-layer-adapter';\nimport { PointerState, StateLayerCoords, STATE_LAYER_CONSTANTS, TOUCH_DELAY_MS } from './state-layer-constants';\n\nexport interface IStateLayerFoundation extends ICustomElementFoundation {\n targetElement: HTMLElement | null;\n target: string | null;\n disabled: boolean;\n playAnimation(coords?: StateLayerCoords): void;\n}\n\nexport class StateLayerFoundation implements IStateLayerFoundation {\n // State\n private _target: string | null = null;\n private _disabled = false;\n private _attached = false;\n private _deferred = true;\n private _pointerStartEvent: PointerEvent | undefined;\n private _pointerState: PointerState = PointerState.INACTIVE;\n private _checkBoundsAfterContextMenu = false;\n\n // Listeners\n private _pointerEnterListener: EventListener;\n private _pointerLeaveListener: EventListener;\n private _pointerDownListener: EventListener;\n private _pointerUpListener: EventListener;\n private _pointerCancelListener: EventListener;\n private _clickListener: EventListener;\n private _contextmenuListener: EventListener;\n\n constructor(private _adapter: IStateLayerAdapter) {\n this._pointerEnterListener = (evt: PointerEvent) => this._onPointerEnter(evt);\n this._pointerLeaveListener = (evt: PointerEvent) => this._onPointerLeave(evt);\n this._pointerDownListener = (evt: PointerEvent) => this._onPointerDown(evt);\n this._pointerUpListener = (evt: PointerEvent) => this._onPointerUp(evt);\n this._pointerCancelListener = (evt: PointerEvent) => this._onPointerCancel(evt);\n this._clickListener = () => this._onClick();\n this._contextmenuListener = () => this._onContextmenu();\n }\n\n public initialize(): void {\n this._adapter.trySetTarget(this._target);\n\n // We defer initialization until the first pointerenter event is received.\n //\n // This is a performance optimization to avoid attaching many listeners to the target element\n // until the user is first interacting with it.\n this._deferInitialization();\n }\n\n public disconnect(): void {\n this._pointerStartEvent = undefined;\n this._pointerState = PointerState.INACTIVE;\n this._adapter.setHovered(false);\n this._adapter.setPressed(false);\n this._removeListeners(); // Must be called before destroying adapter\n this._adapter.destroy();\n }\n\n public playAnimation(coords?: StateLayerCoords): void {\n this._adapter.startAnimation(coords);\n this._endAnimation();\n }\n\n private _deferInitialization(): void {\n this._adapter.deferInitialization(this._onDeferredInitialize.bind(this));\n }\n\n private _applyListeners(): void {\n if (this._disabled) {\n return;\n }\n\n this._adapter.addTargetListener('pointerenter', this._pointerEnterListener);\n this._adapter.addTargetListener('pointerleave', this._pointerLeaveListener);\n this._adapter.addTargetListener('pointerdown', this._pointerDownListener);\n this._adapter.addTargetListener('pointerup', this._pointerUpListener);\n this._adapter.addTargetListener('pointercancel', this._pointerCancelListener);\n this._adapter.addTargetListener('click', this._clickListener);\n this._adapter.addTargetListener('contextmenu', this._contextmenuListener);\n this._attached = true;\n }\n\n private _removeListeners(): void {\n this._adapter.removeTargetListener('pointerenter', this._pointerEnterListener);\n this._adapter.removeTargetListener('pointerleave', this._pointerLeaveListener);\n this._adapter.removeTargetListener('pointerdown', this._pointerDownListener);\n this._adapter.removeTargetListener('pointerup', this._pointerUpListener);\n this._adapter.removeTargetListener('pointercancel', this._pointerCancelListener);\n this._adapter.removeTargetListener('click', this._clickListener);\n this._adapter.removeTargetListener('contextmenu', this._contextmenuListener);\n this._attached = false;\n }\n\n private _onDeferredInitialize(evt?: PointerEvent): void {\n this._applyListeners();\n\n if (evt?.type === 'pointerenter') {\n // Manually trigger the pointerenter listener since this is in response to a pointerenter event already\n this._pointerEnterListener(evt);\n }\n \n this._deferred = false;\n }\n\n private _onPointerEnter(evt: PointerEvent): void {\n if (!this._canHandleEvent(evt)) {\n return;\n }\n this._adapter.setHovered(true);\n }\n\n private _onPointerLeave(evt: PointerEvent): void {\n if (!this._canHandleEvent(evt)) {\n return;\n }\n\n this._adapter.setHovered(false);\n\n if (this._pointerState !== PointerState.INACTIVE) {\n this._adapter.endAnimation();\n }\n }\n\n private async _onPointerDown(evt: PointerEvent): Promise<void> {\n this._pointerStartEvent = evt;\n\n if (!this._canHandleEvent(evt)) {\n return;\n }\n \n if (!this._isTouch(evt.pointerType)) {\n this._pointerState = PointerState.WAITING_FOR_CLICK;\n this._startAnimation(evt);\n return;\n }\n\n // after a longpress contextmenu event, an extra `pointerdown` can be\n // dispatched to the pressed element. Check that the down is within\n // bounds of the element in this case.\n if (this._checkBoundsAfterContextMenu && !this._adapter.inBounds(evt.x, evt.y)) {\n return;\n }\n\n this._checkBoundsAfterContextMenu = false;\n\n this._pointerState = PointerState.TOUCH_DELAY;\n await new Promise(resolve => setTimeout(resolve, TOUCH_DELAY_MS));\n\n if (this._pointerState !== PointerState.TOUCH_DELAY) {\n return;\n }\n\n this._pointerState = PointerState.HOLDING;\n this._startAnimation(evt);\n }\n\n private _onPointerUp(evt: PointerEvent): void {\n if (!this._canHandleEvent(evt)) {\n return;\n }\n\n if (this._pointerState === PointerState.HOLDING) {\n this._pointerState = PointerState.WAITING_FOR_CLICK;\n return;\n }\n\n if (this._pointerState === PointerState.TOUCH_DELAY) {\n this._pointerState = PointerState.WAITING_FOR_CLICK;\n this._startAnimation(this._pointerStartEvent);\n return;\n }\n }\n\n private _onClick(): void {\n if (this._disabled) {\n return;\n }\n\n if (this._pointerState === PointerState.WAITING_FOR_CLICK) {\n this._endAnimation();\n return;\n }\n\n if (this._pointerState === PointerState.INACTIVE) {\n this._startAnimation(this._pointerStartEvent);\n this._endAnimation();\n }\n }\n\n private _onPointerCancel(evt: PointerEvent): void {\n if (!this._canHandleEvent(evt)) {\n return;\n }\n this._endAnimation();\n }\n\n private _onContextmenu(): void {\n if (this._disabled) {\n return;\n }\n\n this._checkBoundsAfterContextMenu = true;\n this._adapter.endAnimation();\n }\n\n private _startAnimation(evt?: PointerEvent): void {\n const coords = evt ? StateLayerCoords.fromPointerEvent(evt) : undefined;\n this._adapter.startAnimation(coords);\n }\n\n private _endAnimation(): void {\n this._pointerState = PointerState.INACTIVE;\n this._adapter.endAnimation();\n this._pointerStartEvent = undefined;\n }\n\n private _canHandleEvent({ type, isPrimary, buttons, pointerType, pointerId }: PointerEvent): boolean {\n if (this._disabled || !isPrimary) {\n return false;\n }\n\n if (this._pointerStartEvent && this._pointerStartEvent.pointerId !== pointerId) {\n return false;\n }\n\n if (type === 'pointerenter' || type === 'pointerleave') {\n return !this._isTouch(pointerType);\n }\n\n const isPrimaryButton = buttons === 1;\n return this._isTouch(pointerType) || isPrimaryButton;\n }\n\n private _isTouch(pointerType: string): boolean {\n return pointerType === 'touch';\n }\n\n public get isAttached(): boolean {\n return this._attached;\n }\n\n public get targetElement(): HTMLElement | null {\n return this._adapter.getTargetElement();\n }\n public set targetElement(el: HTMLElement | null) {\n // Always remove the listeners from the previous target element\n if (this._attached) {\n this._removeListeners();\n } else {\n // If unattached destroy the defer listener to recreate on the new target element\n this._adapter.destroy();\n this._deferred = false;\n }\n\n this._adapter.setTargetElement(el);\n\n // If we are not already deferring attaching the listeners, then do that now\n if (!this._deferred) {\n this._deferInitialization();\n }\n }\n\n public get target(): string | null {\n return this._adapter.getHostAttribute(STATE_LAYER_CONSTANTS.attributes.TARGET);\n }\n public set target(value: string | null) {\n if (this._target !== value) {\n this._target = value;\n\n if (this._adapter.isConnected) {\n if (this._attached) {\n this._removeListeners();\n } else {\n this._adapter.destroy();\n this._deferred = false;\n }\n\n this._adapter.trySetTarget(value);\n\n if (!this._deferred) {\n this._deferInitialization();\n }\n }\n\n this._adapter.toggleHostAttribute(STATE_LAYER_CONSTANTS.attributes.TARGET, Boolean(this._target), this._target as string);\n }\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n value = Boolean(value);\n if (this._disabled !== value) {\n this._disabled = value;\n\n if (this._adapter.isConnected) {\n if (this._disabled) {\n this._removeListeners();\n } else if (!this._deferred) {\n this._deferInitialization();\n }\n }\n\n this._adapter.toggleHostAttribute(STATE_LAYER_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, FoundationProperty, coerceBoolean } from '@tylertech/forge-core';\nimport { StateLayerAdapter } from './state-layer-adapter';\nimport { StateLayerFoundation } from './state-layer-foundation';\nimport { StateLayerCoords, STATE_LAYER_CONSTANTS } from './state-layer-constants';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\n\nconst template = '<template><div class=\\\"forge-state-layer\\\" part=\\\"surface\\\"></div></template>';\nconst styles = ':host{border-radius:inherit;position:absolute;inset:0;overflow:hidden;display:-webkit-box;display:flex;margin:auto;pointer-events:none;-webkit-tap-highlight-color:transparent}:host([hidden]){display:none}:host([disabled]){display:none}.forge-state-layer{--_state-layer-color:var(--forge-state-layer-color, var(--forge-theme-on-surface, #000000));--_state-layer-hover-color:var(--forge-state-layer-hover-color, var(--_state-layer-color));--_state-layer-hover-opacity:var(--forge-state-layer-hover-opacity, 0.08);--_state-layer-pressed-color:var(--forge-state-layer-pressed-color, var(--_state-layer-color));--_state-layer-pressed-opacity:var(--forge-state-layer-pressed-opacity, 0.12);--_state-layer-hover-duration:var(--forge-state-layer-hover-duration, 15ms);--_state-layer-pressed-duration:var(--forge-state-layer-pressed-duration, 105ms);--_state-layer-animation-duration:var(--forge-state-layer-animation-duration, 375ms)}.forge-state-layer::after,.forge-state-layer::before{content:\\\"\\\";opacity:0;position:absolute}.forge-state-layer::before{background-color:var(--_state-layer-hover-color);inset:0;-webkit-transition:opacity var(--_state-layer-hover-duration) linear,background-color var(--_state-layer-hover-duration) linear;transition:opacity var(--_state-layer-hover-duration) linear,background-color var(--_state-layer-hover-duration) linear}.forge-state-layer::after{background:radial-gradient(closest-side,var(--_state-layer-pressed-color) max(100% - 70px,65%),transparent 100%);-webkit-transform-origin:center center;transform-origin:center center;-webkit-transition:opacity var(--_state-layer-animation-duration) linear;transition:opacity var(--_state-layer-animation-duration) linear}.forge-state-layer--hovered::before{background-color:var(--_state-layer-hover-color);opacity:var(--_state-layer-hover-opacity)}.forge-state-layer--pressed::after{opacity:var(--_state-layer-pressed-opacity);-webkit-transition-duration:var(--_state-layer-pressed-duration);transition-duration:var(--_state-layer-pressed-duration)}@media screen and (forced-colors:active){:host{display:none}}';\n\nexport interface IStateLayerComponent extends IBaseComponent {\n targetElement: HTMLElement | null;\n target: string | null;\n disabled: boolean;\n playAnimation(coords?: StateLayerCoords): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-state-layer': IStateLayerComponent;\n }\n}\n\n/**\n * @tag forge-state-layer\n * \n * @summary State layers show the interaction status of an element.\n * \n * @description \n * A state layer is a semi-transparent overlay on an element that indicates its interaction\n * state. State layers provide a systematic approach to visualizing states by using opacity.\n * A layer can be applied to an entire element or in a circular shape. Only one state layer\n * can be applied at a given time.\n * \n * @property {HTMLElement} targetElement - The element to attach the state layer to.\n * @property {string} target - The id of the element to attach the state layer to.\n * @property {boolean} disabled - Controls whether the state layer is disabled.\n * \n * @attribute {string} target - The id of the element to attach the state layer to.\n * @attribute {boolean} disabled - Controls whether the state layer is disabled.\n * \n * @cssproperty --forge-state-layer-color - The color of the state layer. Defaults to the on-surface theme.\n * @cssproperty --forge-state-layer-hover-color - The color of the state layer when hovered.\n * @cssproperty --forge-state-layer-hover-opacity - The opacity of the state layer when hovered.\n * @cssproperty --forge-state-layer-pressed-color - The color of the state layer when pressed.\n * @cssproperty --forge-state-layer-pressed-opacity - The opacity of the state layer when pressed.\n * @cssproperty --forge-state-layer-hover-duration - The duration of the hover animation.\n * @cssproperty --forge-state-layer-animation-duration - The duration of the animation.\n * @cssproperty --forge-state-layer-pressed-duration - The duration of the pressed animation.\n * \n * @csspart surface - The surface element.\n */\n@CustomElement({\n name: STATE_LAYER_CONSTANTS.elementName\n})\nexport class StateLayerComponent extends BaseComponent implements IStateLayerComponent {\n public static get observedAttributes(): string[] {\n return [\n STATE_LAYER_CONSTANTS.attributes.TARGET,\n STATE_LAYER_CONSTANTS.attributes.DISABLED\n ];\n }\n\n private _foundation: StateLayerFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new StateLayerFoundation(new StateLayerAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case STATE_LAYER_CONSTANTS.attributes.TARGET:\n this.target = newValue;\n break;\n case STATE_LAYER_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n }\n }\n\n @FoundationProperty()\n public declare targetElement: HTMLElement | null;\n\n @FoundationProperty()\n public declare target: string | null;\n\n @FoundationProperty()\n public declare disabled: boolean;\n\n /**\n * Triggers the animation to run.\n * \n * Note: If coordinates are not provided, the transition will originate from the center of the target element.\n * \n * @param {StateLayerCoords} [coords] - The coordinates to play the animation from.\n */\n public playAnimation(coords?: StateLayerCoords): void {\n this._foundation.playAnimation(coords);\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["elementName", "COMPONENT_NAME_PREFIX", "observedAttributes", "attributes", "__spreadValues", "selectors", "classes", "STATE_LAYER_CONSTANTS", "StateLayerCoords", "_StateLayerCoords", "x", "y", "event", "TOUCH_DELAY_MS", "PRESS_GROW_MS", "MINIMUM_PRESS_MS", "INITIAL_ORIGIN_SCALE", "PADDING", "SOFT_EDGE_MINIMUM_SIZE", "SOFT_EDGE_CONTAINER_RATIO", "PRESS_PSEUDO", "ANIMATION_FILL", "EASING", "PointerState", "calcRippleSize", "hostEl", "height", "width", "maxDim", "softEdgeSize", "SOFT_EDGE_CONTAINER_RATIO", "SOFT_EDGE_MINIMUM_SIZE", "initialSize", "INITIAL_ORIGIN_SCALE", "rippleScale", "PADDING", "rippleSize", "getTranslationCoordinates", "coords", "endPoint", "startPoint", "isValidCoords", "toNormalizedCoords", "scrollX", "scrollY", "left", "top", "documentX", "documentY", "x", "y", "isInBounds", "value", "StateLayerCoords", "key", "StateLayerAdapter", "BaseAdapter", "component", "getShadowElement", "STATE_LAYER_CONSTANTS", "listener", "userInteraction", "destroy", "createUserInteractionListener", "evt", "type", "_a", "hovered", "pressed", "el", "value", "locateTargetHeuristic", "coords", "rippleSize", "rippleScale", "initialSize", "calcRippleSize", "startPoint", "endPoint", "getTranslationCoordinates", "translateStart", "translateEnd", "PRESS_PSEUDO", "PRESS_GROW_MS", "EASING", "ANIMATION_FILL", "animation", "pressAnimationPlayState", "MINIMUM_PRESS_MS", "resolve", "x", "y", "isInBounds", "StateLayerFoundation", "_adapter", "evt", "coords", "resolve", "TOUCH_DELAY_MS", "StateLayerCoords", "type", "isPrimary", "buttons", "pointerType", "pointerId", "isPrimaryButton", "el", "STATE_LAYER_CONSTANTS", "value", "template", "styles", "StateLayerComponent", "BaseComponent", "attachShadowTemplate", "StateLayerFoundation", "StateLayerAdapter", "STATE_LAYER_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "coords", "__decorateClass", "FoundationProperty", "CustomElement"]
|
|
7
|
+
}
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{a as f}from"./chunk.
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{a as f}from"./chunk.LS7WRRT2.js";import{a as p}from"./chunk.NVUMRW44.js";import{a as k,b as v}from"./chunk.IT66AOX7.js";import{a as b,e as l,f as A,k as h}from"./chunk.JAWV5Y5T.js";import{d as i}from"./chunk.M3QDAYD2.js";var _=`${v}backdrop`,y={CONTAINER:".forge-backdrop"},E={OPACITY:.54,DELAY:0,TRANSITION_DURATION:150},O={DELAY:"delay",MAX_OPACITY:"max-opacity",APPEARANCE:"appearance",FIXED:"fixed"},g={BACKDROP_CLICK:`${_}-click`},e={elementName:_,selectors:y,numbers:E,attributes:O,events:g};var n=class extends f{constructor(a){super(a);this._backdropElement=A(a,e.selectors.CONTAINER)}setBackdropOpacity(a){this._backdropElement.style.opacity=a.toString()}addBackdropEventListener(a,o){this._backdropElement.addEventListener("click",o)}removeBackdropEventListener(a,o){this._backdropElement.removeEventListener("click",o)}};var s=class{constructor(t){this._adapter=t;this._delay=e.numbers.DELAY;this._maxOpacity=e.numbers.OPACITY;this._adapter.addBackdropEventListener("click",this._onClick.bind(this))}initialize(){this._adapter.setBackdropOpacity(0),this._applyAppearance(),this._adapter.setHostAttribute(e.attributes.DELAY,this._delay.toString()),this.fadeIn()}fadeOut(){return new Promise(t=>{this._adapter.setBackdropOpacity(0),setTimeout(()=>t(),e.numbers.TRANSITION_DURATION)})}fadeIn(){return new Promise(t=>{setTimeout(()=>{this._adapter.setBackdropOpacity(this._maxOpacity),setTimeout(()=>t(),e.numbers.TRANSITION_DURATION)},this.delay)})}_onClick(t){t.stopPropagation(),this._adapter.emitHostEvent(e.events.BACKDROP_CLICK,void 0,!0,!0)}disconnect(){this._adapter.removeBackdropEventListener("click",this._onClick)}_applyAppearance(){this._appearance?this._adapter.setHostAttribute(e.attributes.APPEARANCE,String(this._appearance)):this._adapter.removeHostAttribute(e.attributes.APPEARANCE)}set delay(t){this._delay!==t&&(this._delay=t,this._adapter.setHostAttribute(e.attributes.DELAY,this._delay.toString()))}get delay(){return this._delay}set maxOpacity(t){this._maxOpacity!==t&&(this._maxOpacity=t,this._adapter.setHostAttribute(e.attributes.MAX_OPACITY,this._maxOpacity.toString()))}get maxOpacity(){return this._maxOpacity}get appearance(){return this._appearance}set appearance(t){this._appearance!==t&&(this._appearance=t,this._applyAppearance())}};var I='<template><div class="forge-backdrop" part="root"></div></template>',C=".forge-backdrop{z-index:7;z-index:var(--forge-z-index-backdrop,7);background-color:rgba(0,0,0,.54);background-color:var(--forge-backdrop-theme-background,rgba(0,0,0,.54));position:absolute;top:0;bottom:0;left:0;right:0;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;-webkit-transition:opacity 150ms 0s cubic-bezier(0, 0, .2, 1);transition:opacity 150ms 0s cubic-bezier(0, 0, .2, 1);opacity:0}:host{display:block}:host([hidden]){display:none}:host([fixed]) .forge-backdrop{position:fixed}:host([appearance=light]){--forge-backdrop-theme-background:rgba(255, 255, 255, 0.54)}:host([appearance=dark]){--forge-backdrop-theme-background:rgba(0, 0, 0, 0.54)}",r=class extends h{constructor(){super();l(this,I,C),this._foundation=new s(new n(this))}static get observedAttributes(){return[e.attributes.DELAY,e.attributes.MAX_OPACITY]}connectedCallback(){if(this.hasAttribute(e.attributes.DELAY)&&this.getAttribute(e.attributes.DELAY)){let a=Number(this.getAttribute(e.attributes.DELAY));this.delay=a>=0?a:e.numbers.DELAY}if(this.hasAttribute(e.attributes.MAX_OPACITY)){let a=Number(this.getAttribute(e.attributes.MAX_OPACITY));this.maxOpacity=a>=0&&a<=1?a:e.numbers.OPACITY}this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(a,o,c){switch(a){case e.attributes.DELAY:let u=Number(c);this.delay=u>=0?u:e.numbers.DELAY;break;case e.attributes.MAX_OPACITY:let d=Number(c);this.maxOpacity=d>=0&&d<=1?d:e.numbers.OPACITY;break;case e.attributes.APPEARANCE:this.appearance=c;break}}fadeOut(){return this._foundation.fadeOut()}fadeIn(){return this._foundation.fadeIn()}};i([p()],r.prototype,"delay",2),i([p()],r.prototype,"appearance",2),i([p()],r.prototype,"maxOpacity",2),r=i([k({name:e.elementName})],r);function q(){b(r)}export{e as a,n as b,s as c,r as d,q as e};
|
|
7
|
+
//# sourceMappingURL=chunk.G2BNY5QQ.js.map
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{a as n,b as r}from"./chunk.
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{a as n,b as r}from"./chunk.IT66AOX7.js";import{a as o,e as m,k as p}from"./chunk.JAWV5Y5T.js";import{d as t}from"./chunk.M3QDAYD2.js";var s=`${r}view`,a={elementName:s};var i="<template><slot></slot></template>",l=":host{display:block}:host([hidden]){display:none}",e=class extends p{constructor(){super(),m(this,i,l)}};e=t([n({name:a.elementName})],e);function u(){o(e)}export{a,e as b,u as c};
|
|
7
|
+
//# sourceMappingURL=chunk.GS72TBUD.js.map
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{a as y}from"./chunk.FDZSLGIW.js";import{a as O}from"./chunk.YOXZOPAC.js";import{a as r}from"./chunk.NVUMRW44.js";import{a as L,b as S}from"./chunk.HGH6SSHZ.js";import{a as T,e as x,f as I,h,j as A,k as N}from"./chunk.I5SFCLDD.js";import{a as m,c as g,f as d,g as C,i as k,r as w,s as b}from"./chunk.K7FPXAFS.js";import{b as P,k as l}from"./chunk.J2M2MXP2.js";import{a as _,b as E,d as s}from"./chunk.M3QDAYD2.js";var p=`${S}popup`,f={CONTAINER:"forge-popup",OPEN:"open",PLACEMENT:"placement",MANAGE_FOCUS:"manage-focus",ANIMATION_TYPE:"animation-type",STATIC:"static",HIDE_WHEN_CLIPPED:"hide-when-clipped",HOST:"forge-popup-host",INITIAL_FOCUS:"forge-popup-focus",CONSTRAIN_VIEWPORT_WIDTH:"constrain-viewport-width"},H={OPEN:"forge-popup--open",OPENING:"forge-popup--opening",CLOSED:"forge-popup--closed",SELECT:"forge-popup--select"},D={HOST:`.forge-popup-host, [${f.HOST}]`,CONTAINER:".forge-popup",INITIAL_FOCUS:`[${f.INITIAL_FOCUS}]`},B={OPEN:`${p}-open`,CLOSE:`${p}-close`,POSITION:`${p}-position`,BLUR:`${p}-blur`},W={ANIMATION_DURATION:120},i={elementName:p,classes:H,selectors:D,attributes:f,events:B,numbers:W},M=(o=>(o.None="none",o.Menu="menu",o.Dropdown="dropdown",o))(M||{});var c=class extends O{constructor(t){super(t);this._rootElement=I(t,i.selectors.CONTAINER)}setAttribute(t,o,a){a?a.setAttribute(t,o):this._component.setAttribute(t,o)}removeAttribute(t,o){o?o.removeAttribute(t):this._component.removeAttribute(t)}async positionPopup(){let t={element:this._component,targetElement:this._component.targetElement,placement:this._component.placement,hide:this._component.hideWhenClipped,flipOptions:{fallbackPlacements:["top-start","top","top-end","left-start","left","left-end","right-start","right","right-end"],fallbackStrategy:"initialPlacement"}},o=this._component.fallbackPlacements;o!=null&&o.length&&(t.flipOptions=E(_({},t.flipOptions),{fallbackPlacements:o})),this._component.offset&&(t.offset=this._component.offset);let a=await y(t);h(this._component,i.events.POSITION,a)}addPopup(t,o){this._component.setAttribute("tabindex","-1"),this._component.setAttribute(i.attributes.HOST,""),this._component.style.top="0",this._component.style.left="0";let a=t.ownerDocument||document;this._hostElement=A(i.selectors.HOST,t)||a.body,this._hostElement.appendChild(this._component),this.positionPopup(),o&&(this._previouslyFocusedElement=b(this._component.ownerDocument),this._component.focus())}removePopup(t){k(this._component),t&&window.requestAnimationFrame(()=>{if(this._previouslyFocusedElement){let o=b(this._component.ownerDocument);(!o||o===document.body)&&this._previouslyFocusedElement.focus(),this._previouslyFocusedElement=void 0}}),this._hostElement=void 0}manageWindowEvents(t=!1){t?(this._windowEventCallback=o=>this._windowInteraction(o),window.addEventListener("scroll",this._windowEventCallback,!0),window.addEventListener("resize",this._windowEventCallback,!0)):this._windowEventCallback&&(window.removeEventListener("scroll",this._windowEventCallback,!0),window.removeEventListener("resize",this._windowEventCallback,!0),this._windowEventCallback=void 0)}dispatchEvent(t,o,a,F){return this._component.targetElement?!h(this._component.targetElement,t,o,a,F):!1}getCloseEventData(){return{popup:this._component}}addClass(t){d(t,this._rootElement)}removeClass(t){C(t,this._rootElement)}setAnimationEndListener(t,o){window.requestAnimationFrame(()=>{o&&o.length&&d(o,this._rootElement),this._rootElement.addEventListener("transitionend",t)})}removeEventListener(t,o){this._rootElement.removeEventListener(t,o)}setBlurListener(t){return g(this._component,o=>{this._component.contains(o)||t()},!0)}trySetInitialFocus(){window.requestAnimationFrame(()=>{let t=w(this._component,i.selectors.INITIAL_FOCUS);t&&t.length&&t[t.length-1].focus()})}_windowInteraction(t){if(this._component.open)switch(t.type){case"scroll":case"resize":this.positionPopup();break;default:break}}};var u=class{constructor(e){this._adapter=e;this._placement="bottom-start";this._fallbackPlacements=[];this._open=!1;this._manageFocus=!1;this._animationType="none";this._static=!1;this._hideWhenClipped=!1;this._blurListener=()=>this._onBlur()}disconnect(){this.open&&(this.open=!1)}_openPopup(){this._animationType!=="none"?(this._applyOpenAnimation(),this._animationType==="dropdown"&&this._adapter.addClass(i.classes.SELECT)):this._adapter.addClass(i.classes.OPEN),this._adapter.setAttribute(i.attributes.OPEN,""),this._adapter.addPopup(this.targetElement,this._manageFocus),this._adapter.trySetInitialFocus(),this._destroyBlurListener&&this._destroyBlurListener(),this._static||(this._destroyBlurListener=this._adapter.setBlurListener(this._blurListener)),this._adapter.manageWindowEvents(!0),this._adapter.dispatchEvent(i.events.OPEN)}_closePopup(){this._destroyBlurListener&&(this._destroyBlurListener(),this._destroyBlurListener=void 0),this._animationType!=="none"?this._applyCloseAnimation():this._destroyPopup()}_destroyPopup(){this._adapter.manageWindowEvents(!1),this._adapter.removePopup(this._manageFocus);let e=this._adapter.getCloseEventData();this._adapter.dispatchEvent(i.events.CLOSE,e),this._adapter.emitHostEvent(i.events.CLOSE,e),this._adapter.removeAttribute(i.attributes.OPEN)}_applyOpenAnimation(){switch(this._animationType){case"dropdown":case"menu":this._adapter.addClass(i.classes.OPENING);let e=t=>{t.propertyName==="transform"&&(this._adapter.removeClass(i.classes.OPENING),this._adapter.removeEventListener("transitionend",e))};this._adapter.setAnimationEndListener(e,i.classes.OPEN);break}}_applyCloseAnimation(){switch(this._animationType){case"dropdown":case"menu":this._adapter.removeClass(i.classes.OPEN),this._adapter.addClass(i.classes.CLOSED);let e=o=>{o.propertyName==="opacity"&&(t&&clearTimeout(t),this._destroyPopup())};this._adapter.setAnimationEndListener(e);let t=setTimeout(()=>this._destroyPopup(),i.numbers.ANIMATION_DURATION);break}}_onBlur(){this._adapter.dispatchEvent(i.events.BLUR,void 0,!0,!0)||(this.open=!1)}_applyOpen(){if(this._open){if(!this.targetElement||!m(this.targetElement))throw new Error("targetElement on Popup component must be an HTMLElement");typeof this._openCallback=="function"?this._executeOpenCallback():this._openPopup()}else typeof this._closeCallback=="function"?this._executeCloseCallback():this._closePopup()}async _executeOpenCallback(){try{await Promise.resolve(this._openCallback())!==!1?this._openPopup():this._open=!1}catch(e){this._open=!1}}async _executeCloseCallback(){try{await Promise.resolve(this._closeCallback())!==!1?this._closePopup():this._open=!0}catch(e){this._open=!0}}get targetElement(){return this._targetElement}set targetElement(e){if(!e||!m(e))throw new Error("targetElement on Popup component must be an HTMLElement");this._targetElement=e}get placement(){return this._placement}set placement(e){this._placement!==e&&(this._placement=e||"bottom-start",this._adapter.setAttribute(i.attributes.PLACEMENT,this._placement))}get fallbackPlacements(){return this._fallbackPlacements}set fallbackPlacements(e){this._fallbackPlacements=Array.isArray(e)?e:[]}get open(){return this._open}set open(e){e=!!e,this._open!==e&&(this._open=e,this._applyOpen())}get manageFocus(){return this._manageFocus}set manageFocus(e){this._manageFocus!==e&&(this._manageFocus=e)}get animationType(){return this._animationType}set animationType(e){this._animationType!==e&&(this._animationType=e)}get static(){return this._static}set static(e){this._static!==e&&(this._static=e,this._static&&this._destroyBlurListener&&(this._destroyBlurListener(),this._destroyBlurListener=void 0))}get hideWhenClipped(){return this._hideWhenClipped}set hideWhenClipped(e){this._hideWhenClipped!==e&&(this._hideWhenClipped=e)}get offset(){var e;return(e=this._offset)!=null?e:{x:0,y:0}}set offset(e){var t,o;e?this._offset={x:(t=e.x)!=null?t:0,y:(o=e.y)!=null?o:0}:this._offset=void 0,this._open&&this._adapter.positionPopup()}get openCallback(){return this._openCallback}set openCallback(e){this._openCallback=e}get closeCallback(){return this._closeCallback}set closeCallback(e){this._closeCallback=e}position(){this._adapter.positionPopup()}};var z='<template><div class="forge-popup" part="root"><slot></slot></div></template>',U=".forge-popup{min-width:112px;min-width:var(--min-width,112px);background-color:#fff;background-color:var(--forge-theme-elevated-surface,#fff);-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);-webkit-box-shadow:var(--forge-theme-popup-elevation,0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12));box-shadow:var(--forge-theme-popup-elevation,0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12));color:#000;color:var(--mdc-theme-on-surface,#000);border-radius:4px;border-radius:var(--mdc-shape-medium,4px);display:none;-webkit-box-sizing:border-box;box-sizing:border-box;min-width:100%;margin:0;padding:0;-webkit-transform:scale(1);transform:scale(1);-webkit-transform-origin:50% 24px 0;transform-origin:50% 24px 0;opacity:0;will-change:transform,opacity;-webkit-transition:opacity 120ms linear,-webkit-transform 120ms cubic-bezier(0, 0, .2, 1);transition:opacity 120ms linear,-webkit-transform 120ms cubic-bezier(0, 0, .2, 1);transition:opacity 120ms linear,transform 120ms cubic-bezier(0, 0, .2, 1);transition:opacity 120ms linear,transform 120ms cubic-bezier(0, 0, .2, 1),-webkit-transform 120ms cubic-bezier(0, 0, .2, 1)}.forge-popup::-webkit-scrollbar{height:var(--forge-scrollbar-height,16px);width:var(--forge-scrollbar-width,16px)}.forge-popup::-webkit-scrollbar-track{background-color:var(--forge-scrollbar-track-container,var(--forge-theme-surface-container-low,#ebebeb))}.forge-popup::-webkit-scrollbar-track:hover{background-color:var(--forge-scrollbar-track-container-hover,var(--forge-theme-surface-container-low,#ebebeb))}.forge-popup::-webkit-scrollbar-corner{background-color:var(--forge-scrollbar-track-container,var(--forge-theme-surface-container-low,#ebebeb))}.forge-popup::-webkit-scrollbar-thumb{height:var(--forge-scrollbar-thumb-min-height,32px);width:var(--forge-scrollbar-thumb-min-width,32px);border-radius:var(--forge-scrollbar-border-radius,var(--forge-shape-full,9999px));border-width:var(--forge-scrollbar-border-width,3px);border-style:solid;border-color:transparent;background-color:var(--forge-scrollbar-thumb-container,var(--forge-theme-surface-container-medium,#c2c2c2));background-clip:content-box}.forge-popup::-webkit-scrollbar-thumb:hover{background-color:var(--forge-scrollbar-thumb-container-hover,var(--forge-theme-surface-container-high,#9e9e9e))}.forge-popup--opening{display:block;-webkit-transform:scale(.8);transform:scale(.8);opacity:0}.forge-popup--closed{display:block;opacity:0;-webkit-transition:opacity 120ms linear;transition:opacity 120ms linear}.forge-popup--open{display:block;-webkit-transform:scale(1);transform:scale(1);opacity:1}.forge-popup--select{border-top-left-radius:0;border-top-right-radius:0;max-height:256px;overflow-y:auto}:host{z-index:10;z-index:var(--forge-z-index-popup,10);border-radius:4px;border-radius:var(--mdc-shape-medium,4px);display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;outline:0;position:absolute;overflow:visible}:host([hidden]){display:none}:host([constrain-viewport-width]){max-width:100vw}",n=class extends N{constructor(){super();x(this,z,U),this._foundation=new u(new c(this))}static get observedAttributes(){return[i.attributes.OPEN,i.attributes.PLACEMENT,i.attributes.MANAGE_FOCUS,i.attributes.ANIMATION_TYPE,i.attributes.STATIC,i.attributes.HIDE_WHEN_CLIPPED]}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,o,a){switch(t){case i.attributes.OPEN:this.open=P(a);break;case i.attributes.PLACEMENT:this.placement=a;break;case i.attributes.MANAGE_FOCUS:this.manageFocus=l(a);break;case i.attributes.ANIMATION_TYPE:this.animationType=a;break;case i.attributes.STATIC:this.static=l(a);break;case i.attributes.HIDE_WHEN_CLIPPED:this.hideWhenClipped=l(a);break}}position(){this._foundation.position()}};s([r()],n.prototype,"targetElement",2),s([r()],n.prototype,"placement",2),s([r()],n.prototype,"fallbackPlacements",2),s([r()],n.prototype,"open",2),s([r()],n.prototype,"manageFocus",2),s([r()],n.prototype,"animationType",2),s([r()],n.prototype,"static",2),s([r()],n.prototype,"hideWhenClipped",2),s([r()],n.prototype,"openCallback",2),s([r()],n.prototype,"closeCallback",2),s([r()],n.prototype,"offset",2),n=s([L({name:i.elementName})],n);function ge(){T(n)}export{i as a,M as b,c,u as d,n as e,ge as f};
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{a as y}from"./chunk.FDZSLGIW.js";import{a as O}from"./chunk.LS7WRRT2.js";import{a as r}from"./chunk.NVUMRW44.js";import{a as L,b as S}from"./chunk.IT66AOX7.js";import{a as T,e as x,f as I,h,j as A,k as N}from"./chunk.JAWV5Y5T.js";import{a as m,c as g,f as d,g as C,i as k,r as w,s as b}from"./chunk.K7FPXAFS.js";import{b as P,k as l}from"./chunk.J2M2MXP2.js";import{a as _,b as E,d as s}from"./chunk.M3QDAYD2.js";var p=`${S}popup`,f={CONTAINER:"forge-popup",OPEN:"open",PLACEMENT:"placement",MANAGE_FOCUS:"manage-focus",ANIMATION_TYPE:"animation-type",STATIC:"static",HIDE_WHEN_CLIPPED:"hide-when-clipped",HOST:"forge-popup-host",INITIAL_FOCUS:"forge-popup-focus",CONSTRAIN_VIEWPORT_WIDTH:"constrain-viewport-width"},H={OPEN:"forge-popup--open",OPENING:"forge-popup--opening",CLOSED:"forge-popup--closed",SELECT:"forge-popup--select"},D={HOST:`.forge-popup-host, [${f.HOST}]`,CONTAINER:".forge-popup",INITIAL_FOCUS:`[${f.INITIAL_FOCUS}]`},B={OPEN:`${p}-open`,CLOSE:`${p}-close`,POSITION:`${p}-position`,BLUR:`${p}-blur`},W={ANIMATION_DURATION:120},i={elementName:p,classes:H,selectors:D,attributes:f,events:B,numbers:W},M=(o=>(o.None="none",o.Menu="menu",o.Dropdown="dropdown",o))(M||{});var c=class extends O{constructor(t){super(t);this._rootElement=I(t,i.selectors.CONTAINER)}setAttribute(t,o,a){a?a.setAttribute(t,o):this._component.setAttribute(t,o)}removeAttribute(t,o){o?o.removeAttribute(t):this._component.removeAttribute(t)}async positionPopup(){let t={element:this._component,targetElement:this._component.targetElement,placement:this._component.placement,hide:this._component.hideWhenClipped,flipOptions:{fallbackPlacements:["top-start","top","top-end","left-start","left","left-end","right-start","right","right-end"],fallbackStrategy:"initialPlacement"}},o=this._component.fallbackPlacements;o!=null&&o.length&&(t.flipOptions=E(_({},t.flipOptions),{fallbackPlacements:o})),this._component.offset&&(t.offset=this._component.offset);let a=await y(t);h(this._component,i.events.POSITION,a)}addPopup(t,o){this._component.setAttribute("tabindex","-1"),this._component.setAttribute(i.attributes.HOST,""),this._component.style.top="0",this._component.style.left="0";let a=t.ownerDocument||document;this._hostElement=A(i.selectors.HOST,t)||a.body,this._hostElement.appendChild(this._component),this.positionPopup(),o&&(this._previouslyFocusedElement=b(this._component.ownerDocument),this._component.focus())}removePopup(t){k(this._component),t&&window.requestAnimationFrame(()=>{if(this._previouslyFocusedElement){let o=b(this._component.ownerDocument);(!o||o===document.body)&&this._previouslyFocusedElement.focus(),this._previouslyFocusedElement=void 0}}),this._hostElement=void 0}manageWindowEvents(t=!1){t?(this._windowEventCallback=o=>this._windowInteraction(o),window.addEventListener("scroll",this._windowEventCallback,!0),window.addEventListener("resize",this._windowEventCallback,!0)):this._windowEventCallback&&(window.removeEventListener("scroll",this._windowEventCallback,!0),window.removeEventListener("resize",this._windowEventCallback,!0),this._windowEventCallback=void 0)}dispatchEvent(t,o,a,F){return this._component.targetElement?!h(this._component.targetElement,t,o,a,F):!1}getCloseEventData(){return{popup:this._component}}addClass(t){d(t,this._rootElement)}removeClass(t){C(t,this._rootElement)}setAnimationEndListener(t,o){window.requestAnimationFrame(()=>{o&&o.length&&d(o,this._rootElement),this._rootElement.addEventListener("transitionend",t)})}removeEventListener(t,o){this._rootElement.removeEventListener(t,o)}setBlurListener(t){return g(this._component,o=>{this._component.contains(o)||t()},!0)}trySetInitialFocus(){window.requestAnimationFrame(()=>{let t=w(this._component,i.selectors.INITIAL_FOCUS);t&&t.length&&t[t.length-1].focus()})}_windowInteraction(t){if(this._component.open)switch(t.type){case"scroll":case"resize":this.positionPopup();break;default:break}}};var u=class{constructor(e){this._adapter=e;this._placement="bottom-start";this._fallbackPlacements=[];this._open=!1;this._manageFocus=!1;this._animationType="none";this._static=!1;this._hideWhenClipped=!1;this._blurListener=()=>this._onBlur()}disconnect(){this.open&&(this.open=!1)}_openPopup(){this._animationType!=="none"?(this._applyOpenAnimation(),this._animationType==="dropdown"&&this._adapter.addClass(i.classes.SELECT)):this._adapter.addClass(i.classes.OPEN),this._adapter.setAttribute(i.attributes.OPEN,""),this._adapter.addPopup(this.targetElement,this._manageFocus),this._adapter.trySetInitialFocus(),this._destroyBlurListener&&this._destroyBlurListener(),this._static||(this._destroyBlurListener=this._adapter.setBlurListener(this._blurListener)),this._adapter.manageWindowEvents(!0),this._adapter.dispatchEvent(i.events.OPEN)}_closePopup(){this._destroyBlurListener&&(this._destroyBlurListener(),this._destroyBlurListener=void 0),this._animationType!=="none"?this._applyCloseAnimation():this._destroyPopup()}_destroyPopup(){this._adapter.manageWindowEvents(!1),this._adapter.removePopup(this._manageFocus);let e=this._adapter.getCloseEventData();this._adapter.dispatchEvent(i.events.CLOSE,e),this._adapter.emitHostEvent(i.events.CLOSE,e),this._adapter.removeAttribute(i.attributes.OPEN)}_applyOpenAnimation(){switch(this._animationType){case"dropdown":case"menu":this._adapter.addClass(i.classes.OPENING);let e=t=>{t.propertyName==="transform"&&(this._adapter.removeClass(i.classes.OPENING),this._adapter.removeEventListener("transitionend",e))};this._adapter.setAnimationEndListener(e,i.classes.OPEN);break}}_applyCloseAnimation(){switch(this._animationType){case"dropdown":case"menu":this._adapter.removeClass(i.classes.OPEN),this._adapter.addClass(i.classes.CLOSED);let e=o=>{o.propertyName==="opacity"&&(t&&clearTimeout(t),this._destroyPopup())};this._adapter.setAnimationEndListener(e);let t=setTimeout(()=>this._destroyPopup(),i.numbers.ANIMATION_DURATION);break}}_onBlur(){this._adapter.dispatchEvent(i.events.BLUR,void 0,!0,!0)||(this.open=!1)}_applyOpen(){if(this._open){if(!this.targetElement||!m(this.targetElement))throw new Error("targetElement on Popup component must be an HTMLElement");typeof this._openCallback=="function"?this._executeOpenCallback():this._openPopup()}else typeof this._closeCallback=="function"?this._executeCloseCallback():this._closePopup()}async _executeOpenCallback(){try{await Promise.resolve(this._openCallback())!==!1?this._openPopup():this._open=!1}catch(e){this._open=!1}}async _executeCloseCallback(){try{await Promise.resolve(this._closeCallback())!==!1?this._closePopup():this._open=!0}catch(e){this._open=!0}}get targetElement(){return this._targetElement}set targetElement(e){if(!e||!m(e))throw new Error("targetElement on Popup component must be an HTMLElement");this._targetElement=e}get placement(){return this._placement}set placement(e){this._placement!==e&&(this._placement=e||"bottom-start",this._adapter.setAttribute(i.attributes.PLACEMENT,this._placement))}get fallbackPlacements(){return this._fallbackPlacements}set fallbackPlacements(e){this._fallbackPlacements=Array.isArray(e)?e:[]}get open(){return this._open}set open(e){e=!!e,this._open!==e&&(this._open=e,this._applyOpen())}get manageFocus(){return this._manageFocus}set manageFocus(e){this._manageFocus!==e&&(this._manageFocus=e)}get animationType(){return this._animationType}set animationType(e){this._animationType!==e&&(this._animationType=e)}get static(){return this._static}set static(e){this._static!==e&&(this._static=e,this._static&&this._destroyBlurListener&&(this._destroyBlurListener(),this._destroyBlurListener=void 0))}get hideWhenClipped(){return this._hideWhenClipped}set hideWhenClipped(e){this._hideWhenClipped!==e&&(this._hideWhenClipped=e)}get offset(){var e;return(e=this._offset)!=null?e:{x:0,y:0}}set offset(e){var t,o;e?this._offset={x:(t=e.x)!=null?t:0,y:(o=e.y)!=null?o:0}:this._offset=void 0,this._open&&this._adapter.positionPopup()}get openCallback(){return this._openCallback}set openCallback(e){this._openCallback=e}get closeCallback(){return this._closeCallback}set closeCallback(e){this._closeCallback=e}position(){this._adapter.positionPopup()}};var z='<template><div class="forge-popup" part="root"><slot></slot></div></template>',U=".forge-popup{min-width:112px;min-width:var(--min-width,112px);background-color:#fff;background-color:var(--forge-theme-elevated-surface,#fff);-webkit-box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);-webkit-box-shadow:var(--forge-theme-popup-elevation,0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12));box-shadow:var(--forge-theme-popup-elevation,0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12));color:#000;color:var(--mdc-theme-on-surface,#000);border-radius:4px;border-radius:var(--mdc-shape-medium,4px);display:none;-webkit-box-sizing:border-box;box-sizing:border-box;min-width:100%;margin:0;padding:0;-webkit-transform:scale(1);transform:scale(1);-webkit-transform-origin:50% 24px 0;transform-origin:50% 24px 0;opacity:0;will-change:transform,opacity;-webkit-transition:opacity 120ms linear,-webkit-transform 120ms cubic-bezier(0, 0, .2, 1);transition:opacity 120ms linear,-webkit-transform 120ms cubic-bezier(0, 0, .2, 1);transition:opacity 120ms linear,transform 120ms cubic-bezier(0, 0, .2, 1);transition:opacity 120ms linear,transform 120ms cubic-bezier(0, 0, .2, 1),-webkit-transform 120ms cubic-bezier(0, 0, .2, 1)}.forge-popup::-webkit-scrollbar{height:var(--forge-scrollbar-height,16px);width:var(--forge-scrollbar-width,16px)}.forge-popup::-webkit-scrollbar-track{background-color:var(--forge-scrollbar-track-container,var(--forge-theme-surface-container-low,#ebebeb))}.forge-popup::-webkit-scrollbar-track:hover{background-color:var(--forge-scrollbar-track-container-hover,var(--forge-theme-surface-container-low,#ebebeb))}.forge-popup::-webkit-scrollbar-corner{background-color:var(--forge-scrollbar-track-container,var(--forge-theme-surface-container-low,#ebebeb))}.forge-popup::-webkit-scrollbar-thumb{height:var(--forge-scrollbar-thumb-min-height,32px);width:var(--forge-scrollbar-thumb-min-width,32px);border-radius:var(--forge-scrollbar-border-radius,var(--forge-shape-full,9999px));border-width:var(--forge-scrollbar-border-width,3px);border-style:solid;border-color:transparent;background-color:var(--forge-scrollbar-thumb-container,var(--forge-theme-surface-container-medium,#c2c2c2));background-clip:content-box}.forge-popup::-webkit-scrollbar-thumb:hover{background-color:var(--forge-scrollbar-thumb-container-hover,var(--forge-theme-surface-container-high,#9e9e9e))}.forge-popup--opening{display:block;-webkit-transform:scale(.8);transform:scale(.8);opacity:0}.forge-popup--closed{display:block;opacity:0;-webkit-transition:opacity 120ms linear;transition:opacity 120ms linear}.forge-popup--open{display:block;-webkit-transform:scale(1);transform:scale(1);opacity:1}.forge-popup--select{border-top-left-radius:0;border-top-right-radius:0;max-height:256px;overflow-y:auto}:host{z-index:10;z-index:var(--forge-z-index-popup,10);border-radius:4px;border-radius:var(--mdc-shape-medium,4px);display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;outline:0;position:absolute;overflow:visible}:host([hidden]){display:none}:host([constrain-viewport-width]){max-width:100vw}",n=class extends N{constructor(){super();x(this,z,U),this._foundation=new u(new c(this))}static get observedAttributes(){return[i.attributes.OPEN,i.attributes.PLACEMENT,i.attributes.MANAGE_FOCUS,i.attributes.ANIMATION_TYPE,i.attributes.STATIC,i.attributes.HIDE_WHEN_CLIPPED]}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,o,a){switch(t){case i.attributes.OPEN:this.open=P(a);break;case i.attributes.PLACEMENT:this.placement=a;break;case i.attributes.MANAGE_FOCUS:this.manageFocus=l(a);break;case i.attributes.ANIMATION_TYPE:this.animationType=a;break;case i.attributes.STATIC:this.static=l(a);break;case i.attributes.HIDE_WHEN_CLIPPED:this.hideWhenClipped=l(a);break}}position(){this._foundation.position()}};s([r()],n.prototype,"targetElement",2),s([r()],n.prototype,"placement",2),s([r()],n.prototype,"fallbackPlacements",2),s([r()],n.prototype,"open",2),s([r()],n.prototype,"manageFocus",2),s([r()],n.prototype,"animationType",2),s([r()],n.prototype,"static",2),s([r()],n.prototype,"hideWhenClipped",2),s([r()],n.prototype,"openCallback",2),s([r()],n.prototype,"closeCallback",2),s([r()],n.prototype,"offset",2),n=s([L({name:i.elementName})],n);function ge(){T(n)}export{i as a,M as b,c,u as d,n as e,ge as f};
|
|
7
|
+
//# sourceMappingURL=chunk.GT3VPSXY.js.map
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{a as E}from"./chunk.PADPL4L3.js";import{a as y}from"./chunk.
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{a as E}from"./chunk.PADPL4L3.js";import{a as y}from"./chunk.LS7WRRT2.js";import{a as r}from"./chunk.NVUMRW44.js";import{a as h,b as v}from"./chunk.IT66AOX7.js";import{a as d,e as u,f,k as _}from"./chunk.JAWV5Y5T.js";import{g,t as c}from"./chunk.K7FPXAFS.js";import{k as b}from"./chunk.J2M2MXP2.js";import{d as o}from"./chunk.M3QDAYD2.js";var L=`${v}label-value`,I={EMPTY:"empty",ELLIPSIS:"ellipsis",DENSITY:"density",ALIGN:"align"},T={EMPTY:"forge-label-value--empty",ELLIPSIS:"forge-label-value--ellipsis",DENSE:"forge-label-value--dense",ROOMY:"forge-label-value--roomy",ALIGN_CENTER:"forge-label-value--align-center",ALIGN_RIGHT:"forge-label-value--align-right"},A={ROOT:".forge-label-value"},e={elementName:L,attributes:I,classes:T,selectors:A};var s=class extends y{constructor(t){super(t);this._rootElement=f(t,e.selectors.ROOT)}setEmpty(t){t?this._rootElement.classList.add(e.classes.EMPTY):this._rootElement.classList.remove(e.classes.EMPTY)}setEllipsis(t){t?this._rootElement.classList.add(e.classes.ELLIPSIS):this._rootElement.classList.remove(e.classes.ELLIPSIS)}setRoomy(t){c(this._rootElement,t,e.classes.ROOMY)}setDense(t){c(this._rootElement,t,e.classes.DENSE)}setAlignment(t){switch(g([e.classes.ALIGN_CENTER,e.classes.ALIGN_RIGHT],this._rootElement),t){case"center":this._rootElement.classList.add(e.classes.ALIGN_CENTER);break;case"right":this._rootElement.classList.add(e.classes.ALIGN_RIGHT);break}}};var p=class{constructor(l){this._adapter=l;this._empty=!1;this._ellipsis=!1;this._density="default";this._align="left"}initialize(){this._adapter.setEmpty(this._empty),this._adapter.setEllipsis(this._ellipsis),this._applyDensity(),this._adapter.setAlignment(this._align)}_applyDensity(){this._adapter.setRoomy(this._density==="roomy"),this._adapter.setDense(this._density==="dense")}get empty(){return this._empty}set empty(l){this._empty!==l&&(this._empty=l,this._adapter.setEmpty(this._empty),this._empty?this._adapter.setHostAttribute(e.attributes.EMPTY,""):this._adapter.removeHostAttribute(e.attributes.EMPTY))}get ellipsis(){return this._ellipsis}set ellipsis(l){this._ellipsis!==l&&(this._ellipsis=l,this._adapter.setEllipsis(this._ellipsis),this._ellipsis?this._adapter.setHostAttribute(e.attributes.ELLIPSIS,""):this._adapter.removeHostAttribute(e.attributes.ELLIPSIS))}get density(){return this._density}set density(l){this._density!==l&&(this._density=l,this._applyDensity(),this._adapter.setHostAttribute(e.attributes.DENSITY,this._density.toString()))}get align(){return this._align}set align(l){this._align!==l&&(this._align=l,this._adapter.setAlignment(this._align),this._align?this._adapter.setHostAttribute(e.attributes.ALIGN,this._align):this._adapter.removeHostAttribute(e.attributes.ALIGN))}};var C='<template><div class="forge-label-value" part="root"><div class="forge-label-value__icon-container" part="icon-container"><slot name="icon"></slot></div><div class="forge-label-value__container" part="container"><div class="forge-label-value__label" part="label-container"><slot name="label"></slot></div><div class="forge-label-value__value" part="value-container"><slot name="value"></slot></div></div></div></template>',N=":host{display:block;min-width:0}:host([hidden]){display:none}.forge-label-value{display:-webkit-box;display:flex;min-height:3rem}.forge-label-value__container{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-flex:1;flex:1}.forge-label-value__icon-container{display:-webkit-box;display:flex;-webkit-box-align:start;align-items:flex-start}.forge-label-value__icon-container ::slotted([slot=icon]){color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87));font-size:1.25rem!important;margin-right:8px;margin-top:4px}.forge-label-value--align-center .forge-label-value__container{-webkit-box-align:center;align-items:center}.forge-label-value--align-right .forge-label-value__container{-webkit-box-align:end;align-items:flex-end}.forge-label-value__label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.8125rem;height:.8125rem;line-height:.8125rem;margin-top:.5rem}.forge-label-value__value{-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);line-height:1rem;margin-top:.375rem}.forge-label-value--roomy{min-height:3.5rem}.forge-label-value--roomy .forge-label-value__label{margin-top:.625rem}.forge-label-value--roomy .forge-label-value__value{margin-top:.5rem}.forge-label-value--roomy ::slotted([slot=icon]){margin-top:6px}.forge-label-value--dense{min-height:1.5rem}.forge-label-value--dense .forge-label-value__container{-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-align:center;align-items:center}.forge-label-value--dense .forge-label-value__container .forge-label-value__label{margin-top:0;margin-right:8px}.forge-label-value--dense .forge-label-value__container .forge-label-value__value{margin-top:0;font-size:.875rem}.forge-label-value--dense ::slotted([slot=icon]){margin-top:2px}.forge-label-value--empty .forge-label-value__value{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-style:italic}.forge-label-value--ellipsis .forge-label-value__container{overflow:hidden}.forge-label-value--ellipsis .forge-label-value__container .forge-label-value__label,.forge-label-value--ellipsis .forge-label-value__container .forge-label-value__value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}",a=class extends _{constructor(){super();u(this,C,N),this._foundation=new p(new s(this))}static get observedAttributes(){return[e.attributes.EMPTY,e.attributes.ELLIPSIS,e.attributes.DENSITY,e.attributes.ALIGN]}connectedCallback(){this._foundation.initialize()}attributeChangedCallback(t,n,i){switch(t){case e.attributes.EMPTY:this.empty=b(i);break;case e.attributes.ELLIPSIS:this.ellipsis=b(i);break;case e.attributes.DENSITY:this.density=i;break;case e.attributes.ALIGN:this.align=i;break}}};o([r()],a.prototype,"empty",2),o([r()],a.prototype,"ellipsis",2),o([r()],a.prototype,"density",2),o([r()],a.prototype,"align",2),a=o([h({name:e.elementName})],a);var x=class extends E{constructor(t){super(t)}get labelElement(){return this._labelElement}get valueElement(){return this._valueElement}get labelText(){var t;return(t=this._labelElement.textContent)!=null?t:""}set labelText(t){this._labelElement.textContent=t}get valueText(){var t;return(t=this._valueElement.textContent)!=null?t:""}set valueText(t){this._valueElement.textContent=t}_build(){return document.createElement(e.elementName)}_configure(){var t,n,i;(t=this._config.options)!=null&&t.labelText&&(this._labelElement=this._createTextElement(this._config.options.labelText,"label")),(n=this._config.options)!=null&&n.valueText&&(this._valueElement=this._createTextElement(this._config.options.valueText,"value")),(i=this._config.options)!=null&&i.iconElement&&this._element.appendChild(this._config.options.iconElement)}_createTextElement(t,n){let i=document.createElement("span");return i.textContent=t,i.slot=n,this._element.appendChild(i),i}};function le(){d(a)}export{e as a,s as b,p as c,a as d,x as e,le as f};
|
|
7
|
+
//# sourceMappingURL=chunk.GWJ4QCSW.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import{d as P}from"./chunk.LOBKFTRM.js";import{d as L}from"./chunk.KFDYMENL.js";import{j as I}from"./chunk.FYWPZFLJ.js";import{d as N,l as B}from"./chunk.Z7PBGV4K.js";import{a as M}from"./chunk.LS7WRRT2.js";import{a as r}from"./chunk.NVUMRW44.js";import{a as O,b as y}from"./chunk.IT66AOX7.js";import{a as E,e as x,f as c,i as A,k as C}from"./chunk.JAWV5Y5T.js";import{d as u,g as T,i as v}from"./chunk.K7FPXAFS.js";import{c as f,h as d,k as h}from"./chunk.J2M2MXP2.js";import{d as a}from"./chunk.M3QDAYD2.js";var p=`${y}toast`,w={TOP_MARGIN_TOP:"--forge-toast-top-margin-top",BOTTOM_MARGIN_BOTTOM:"--forge-toast-bottom-margin-bottom",TOP_LEFT_MARGIN_TOP:"--forge-toast-top-left-margin-top",TOP_LEFT_MARGIN_LEFT:"--forge-toast-top-left-margin-left",TOP_RIGHT_MARGIN_TOP:"--forge-toast-top-right-margin-top",TOP_RIGHT_MARGIN_RIGHT:"--forge-toast-top-right-margin-right",BOTTOM_LEFT_MARGIN_BOTTOM:"--forge-toast-bottom-left-margin-bottom",BOTTOM_LEFT_MARGIN_LEFT:"--forge-toast-bottom-left-margin-left",BOTTOM_RIGHT_MARGIN_RIGHT:"--forge-toast-bottom-right-margin-right",BOTTOM_RIGHT_MARGIN_BOTTOM:"--forge-toast-bottom-right-margin-bottom"},m={CONTAINER:"forge-toast__container",MESSAGE:"forge-toast__message",ACTION_BUTTON:"forge-toast__action-button",CLOSE_BUTTON:"forge-toast__close-button",TOP:"forge-toast__container--top",TOP_LEFT:"forge-toast__container--top-left",TOP_RIGHT:"forge-toast__container--top-right",BOTTOM:"forge-toast__container--bottom",BOTTOM_LEFT:"forge-toast__container--bottom-left",BOTTOM_RIGHT:"forge-toast__container--bottom-right",ACTIVE:"forge-toast__container--active",CUSTOM:"forge-toast__container--custom"},k={CONTAINER:`.${m.CONTAINER}`,MESSAGE:`.${m.MESSAGE}`,ACTION_BUTTON:`.${m.ACTION_BUTTON}`,CLOSE_BUTTON:`.${m.CLOSE_BUTTON}`},S={MESSAGE:"message",ACTION_TEXT:"action-text",DURATION:"duration",PLACEMENT:"placement",SHOW_CLOSE:"show-close"},R={ACTION:`${p}-action`,CLOSE:`${p}-close`},H={PLACEMENT:"bottom",DURATION:2750},t={elementName:p,classes:m,selectors:k,attributes:S,defaults:H,events:R,customCssPositionProperties:w};var l=class extends M{constructor(e){super(e);this._containerElement=c(e,t.selectors.CONTAINER),this._messageElement=c(e,t.selectors.MESSAGE),this._actionButtonElement=c(e,t.selectors.ACTION_BUTTON),this._closeButtonElement=c(e,t.selectors.CLOSE_BUTTON)}setHostAttribute(e,i){this._component.getAttribute(e)!==i&&this._component.setAttribute(e,i)}setMessage(e){this._messageElement.innerText=e}setMessageTemplate(e){this._containerElement.classList.add(t.classes.CUSTOM),f(e)?this._component.innerHTML=e:(u(this._messageElement),this._component.appendChild(e))}setActionVisibility(e){this._actionButtonPlaceholder=A(this._component,e,t.elementName,t.selectors.ACTION_BUTTON,this._actionButtonElement,this._actionButtonPlaceholder)}setActionText(e){this._actionButtonElement.innerText=e}registerActionListener(e,i){this._actionButtonElement.addEventListener(e,i)}deregisterActionListener(e,i){this._actionButtonElement.removeEventListener(e,i)}setPlacement(e){T([t.classes.TOP,t.classes.TOP_LEFT,t.classes.TOP_RIGHT,t.classes.BOTTOM,t.classes.BOTTOM_LEFT,t.classes.BOTTOM_RIGHT],this._containerElement);let i=this._getPlacementClass(e);i&&this._containerElement.classList.add(i)}setActive(e){if(e)window.getComputedStyle(this._containerElement).getPropertyValue("bottom"),this._containerElement.classList.add(t.classes.ACTIVE);else{this._containerElement.classList.remove(t.classes.ACTIVE);let i=()=>{this._containerElement.removeEventListener("transitionend",i),v(this._component)};this._containerElement.addEventListener("transitionend",i)}}setCloseButtonVisibility(e){e?this._closeButtonElement.style.removeProperty("display"):this._closeButtonElement.style.display="none"}registerCloseListener(e){this._closeButtonElement.addEventListener("click",e)}_getPlacementClass(e){switch(e){case"top":return t.classes.TOP;case"top-start":return t.classes.TOP_LEFT;case"top-end":return t.classes.TOP_RIGHT;case"bottom":return t.classes.BOTTOM;case"bottom-start":return t.classes.BOTTOM_LEFT;case"bottom-end":return t.classes.BOTTOM_RIGHT}return null}};var _=class{constructor(o){this._adapter=o;this._duration=t.defaults.DURATION;this._placement=t.defaults.PLACEMENT;this._showClose=!0;this._hasAction=!1;this._isActive=!1;this._actionListener=e=>this._onAction(e),this._closeListener=e=>this._onClose(e)}initialize(){this._adapter.setPlacement(this._placement),this._adapter.registerCloseListener(this._closeListener),this._adapter.setCloseButtonVisibility(this._showClose),this._adapter.setActionVisibility(!!this._actionText),this.show()}show(){if(d(this._builder)){let o=this._builder();this._adapter.setMessageTemplate(o)}this._isActive=!0,this._adapter.setActive(!0),isFinite(this._duration)&&this._duration>0&&(this._hideTimeout=setTimeout(()=>this.hide(!0),this._duration))}hide(o=!1){this._isActive&&(this._isActive=!1,this._adapter.setActive(!1),this._hideTimeout&&(clearTimeout(this._hideTimeout),this._hideTimeout=void 0),o&&this._adapter.emitHostEvent(t.events.CLOSE))}_onAction(o){o.stopPropagation(),this._adapter.emitHostEvent(t.events.ACTION)}_onClose(o){this.hide(!0)}get message(){return this._message}set message(o){this._message!==o&&(this._message=o,this._adapter.setMessage(this._message),this._adapter.setHostAttribute(t.attributes.MESSAGE,this._message))}get actionText(){return this._actionText}set actionText(o){this._actionText!==o&&(this._actionText=o,this._actionText?this._hasAction?this._adapter.setActionText(this._actionText):(this._adapter.setActionText(this._actionText),this._adapter.setActionVisibility(!0),this._adapter.registerActionListener("click",this._actionListener),this._hasAction=!0):this._hasAction&&(this._adapter.setActionText(""),this._adapter.setActionVisibility(!1),this._adapter.deregisterActionListener("click",this._actionListener),this._hasAction=!1),this._adapter.setHostAttribute(t.attributes.ACTION_TEXT,this._actionText))}get duration(){return this._duration}set duration(o){this._duration!==o&&(this._duration=o,this._hideTimeout&&(clearTimeout(this._hideTimeout),this._hideTimeout=setTimeout(()=>this.hide(!0),this._duration)))}get placement(){return this._placement}set placement(o){this._placement!==o&&(this._placement=o,this._adapter.setPlacement(this._placement)),this._adapter.setHostAttribute(t.attributes.PLACEMENT,this._placement)}get builder(){return this._builder}set builder(o){this._builder=o}get showClose(){return this._showClose}set showClose(o){this._showClose!==o&&(this._showClose=o,this._adapter.setCloseButtonVisibility(this._showClose),this._adapter.setHostAttribute(t.attributes.SHOW_CLOSE,this._showClose.toString()))}};var G='<template><div class="forge-toast__container" aria-live="assertive" aria-atomic="true" part="root"><slot></slot><div class="forge-toast__message" part="message"></div><div class="forge-toast__action-container" part="action-container"><forge-button part="action-button" class="forge-toast__action-button" part="action-button-element"></forge-button><forge-icon-button part="close-button" class="forge-toast__close-button" aria-label="Close toast message" part="close-button-element"><forge-icon name="close" part="close-button-icon"></forge-icon></forge-icon-button></div></div></template>',z=".forge-toast__container{z-index:9;z-index:var(--forge-z-index-notification,9);-webkit-box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);background-color:#333;background-color:var(--forge-toast-theme-background,#333);display:-webkit-box;display:flex;position:fixed;border-radius:2px;-webkit-transition:-webkit-transform 250ms 0s cubic-bezier(.4, 0, 1, 1);transition:-webkit-transform 250ms 0s cubic-bezier(.4, 0, 1, 1);transition:transform 250ms 0s cubic-bezier(.4, 0, 1, 1);transition:transform 250ms 0s cubic-bezier(.4, 0, 1, 1),-webkit-transform 250ms 0s cubic-bezier(.4, 0, 1, 1);-webkit-box-align:center;align-items:center;-webkit-box-pack:justify;justify-content:space-between;-webkit-box-sizing:border-box;box-sizing:border-box;padding:4px 8px 4px 16px;min-height:48px}@media (max-width:599px){.forge-toast__container{bottom:0;width:100%;border-radius:0;-webkit-transform:translateY(100%);transform:translateY(100%)}}.forge-toast__container ::slotted(*){color:rgba(255,255,255,.87);color:var(--forge-toast-theme-on-background,rgba(255,255,255,.87))}@media (min-width:600px){.forge-toast__container{min-width:344px;max-width:568px}.forge-toast__container.forge-toast__container--top,.forge-toast__container.forge-toast__container--top-left,.forge-toast__container.forge-toast__container--top-right{top:0}.forge-toast__container.forge-toast__container--top{left:50%;-webkit-transform:translateX(-50%) translateY(-100%);transform:translateX(-50%) translateY(-100%);margin-top:0;margin-top:var(--forge-toast-top-margin-top,0)}.forge-toast__container.forge-toast__container--bottom{left:50%;-webkit-transform:translateX(-50%) translateY(100%);transform:translateX(-50%) translateY(100%);margin-bottom:0;margin-bottom:var(--forge-toast-bottom-margin-bottom,0)}.forge-toast__container.forge-toast__container--top-left,.forge-toast__container.forge-toast__container--top-right{-webkit-transform:translateY(-100%);transform:translateY(-100%)}.forge-toast__container.forge-toast__container--bottom-left,.forge-toast__container.forge-toast__container--bottom-right{-webkit-transform:translateY(100%);transform:translateY(100%)}.forge-toast__container.forge-toast__container--bottom,.forge-toast__container.forge-toast__container--bottom-left,.forge-toast__container.forge-toast__container--bottom-right{bottom:0}.forge-toast__container.forge-toast__container--bottom-left{margin-bottom:24px;margin-bottom:var(--forge-toast-bottom-left-margin-bottom,24px);margin-left:24px;margin-left:var(--forge-toast-bottom-left-margin-left,24px);left:0}.forge-toast__container.forge-toast__container--bottom-right{margin-bottom:24px;margin-bottom:var(--forge-toast-bottom-right-margin-bottom,24px);margin-right:24px;margin-right:var(--forge-toast-bottom-right-margin-right,24px)}.forge-toast__container.forge-toast__container--top-left{margin-top:24px;margin-top:var(--forge-toast-top-left-margin-top,24px);margin-left:24px;margin-left:var(--forge-toast-top-left-margin-left,24px);left:0}.forge-toast__container.forge-toast__container--top-right{margin-top:24px;margin-top:var(--forge-toast-top-right-margin-top,24px);margin-right:24px;margin-right:var(--forge-toast-top-right-margin-right,24px);right:0}.forge-toast__container.forge-toast__container--bottom-right{margin-bottom:24px;margin-bottom:var(--forge-toast-bottom-right-margin-bottom,24px);margin-right:24px;margin-right:var(--forge-toast-bottom-right-margin-right,24px);right:0}}.forge-toast__container--active{-webkit-transition:-webkit-transform 250ms 0s cubic-bezier(0, 0, .2, 1);transition:-webkit-transform 250ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 250ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 250ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 250ms 0s cubic-bezier(0, 0, .2, 1)}.forge-toast__container--active>.forge-toast__message{opacity:1}.forge-toast__container--active>.forge-toast__action-button{opacity:1}@media (max-width:599px){.forge-toast__container--active{-webkit-transform:translateY(0)!important;transform:translateY(0)!important}}@media (min-width:600px){.forge-toast__container--active.forge-toast__container--bottom,.forge-toast__container--active.forge-toast__container--top{-webkit-transform:translateX(-50%) translateY(0)!important;transform:translateX(-50%) translateY(0)!important}.forge-toast__container--active.forge-toast__container--bottom-left,.forge-toast__container--active.forge-toast__container--bottom-right,.forge-toast__container--active.forge-toast__container--top-left,.forge-toast__container--active.forge-toast__container--top-right{-webkit-transform:translateY(0)!important;transform:translateY(0)!important}}.forge-toast__container--custom{min-width:0;max-width:none}.forge-toast__message{-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);color:rgba(255,255,255,.87);color:var(--forge-toast-theme-on-background,rgba(255,255,255,.87));display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-transition:opacity .3s 0s cubic-bezier(.4, 0, 1, 1);transition:opacity .3s 0s cubic-bezier(.4, 0, 1, 1);opacity:0}.forge-toast__action-container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;margin-left:8px}.forge-toast__action-button{--forge-theme-primary:#ffc107;--forge-theme-primary:var(--forge-toast-theme-action, #ffc107)}.forge-toast__close-button{color:rgba(255,255,255,.87);color:var(--forge-toast-theme-on-background,rgba(255,255,255,.87));margin-left:8px}.forge-toast__close-button::after,.forge-toast__close-button::before{background-color:rgba(255,255,255,.87);background-color:var(--forge-toast-theme-on-background,rgba(255,255,255,.87))}:host{display:inline-block}:host([hidden]){display:none}",s=class extends C{constructor(){super();N.define(I),x(this,G,z),this._foundation=new _(new l(this))}static get observedAttributes(){return[t.attributes.MESSAGE,t.attributes.ACTION_TEXT,t.attributes.DURATION,t.attributes.PLACEMENT,t.attributes.SHOW_CLOSE]}initializedCallback(){this._foundation.initialize()}attributeChangedCallback(e,i,n){switch(e){case t.attributes.MESSAGE:this.message=n;break;case t.attributes.ACTION_TEXT:this.actionText=n;break;case t.attributes.DURATION:let g=Number(n);this.duration=g&&g>0?g:t.defaults.DURATION;break;case t.attributes.PLACEMENT:this.placement=n||t.defaults.PLACEMENT;break;case t.attributes.SHOW_CLOSE:this.showClose=h(n);break}}hide(){this._foundation.hide()}};a([r()],s.prototype,"message",2),a([r()],s.prototype,"actionText",2),a([r()],s.prototype,"duration",2),a([r()],s.prototype,"placement",2),a([r()],s.prototype,"builder",2),a([r()],s.prototype,"showClose",2),s=a([O({name:t.elementName,dependencies:[P,L,B]})],s);function ft(){E(s)}export{t as a,l as b,_ as c,s as d,ft as e};
|
|
7
|
+
//# sourceMappingURL=chunk.H7GW57Q6.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/toast/toast-constants.ts", "../../src/toast/toast-adapter.ts", "../../src/toast/toast-foundation.ts", "../../src/toast/toast.ts", "../../src/toast/index.ts"],
|
|
4
|
+
"sourcesContent": ["import { PopupPlacement } from '../popup/popup-constants';\nimport { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}toast`;\n\nconst customCssPositionProperties = {\n TOP_MARGIN_TOP: '--forge-toast-top-margin-top',\n BOTTOM_MARGIN_BOTTOM: '--forge-toast-bottom-margin-bottom',\n TOP_LEFT_MARGIN_TOP: '--forge-toast-top-left-margin-top',\n TOP_LEFT_MARGIN_LEFT: '--forge-toast-top-left-margin-left',\n TOP_RIGHT_MARGIN_TOP: '--forge-toast-top-right-margin-top',\n TOP_RIGHT_MARGIN_RIGHT: '--forge-toast-top-right-margin-right',\n BOTTOM_LEFT_MARGIN_BOTTOM: '--forge-toast-bottom-left-margin-bottom',\n BOTTOM_LEFT_MARGIN_LEFT: '--forge-toast-bottom-left-margin-left',\n BOTTOM_RIGHT_MARGIN_RIGHT: '--forge-toast-bottom-right-margin-right',\n BOTTOM_RIGHT_MARGIN_BOTTOM: '--forge-toast-bottom-right-margin-bottom'\n};\n\nconst classes = {\n CONTAINER: 'forge-toast__container',\n MESSAGE: 'forge-toast__message',\n ACTION_BUTTON: 'forge-toast__action-button',\n CLOSE_BUTTON: 'forge-toast__close-button',\n TOP: 'forge-toast__container--top',\n TOP_LEFT: 'forge-toast__container--top-left',\n TOP_RIGHT: 'forge-toast__container--top-right',\n BOTTOM: 'forge-toast__container--bottom',\n BOTTOM_LEFT: 'forge-toast__container--bottom-left',\n BOTTOM_RIGHT: 'forge-toast__container--bottom-right',\n ACTIVE: 'forge-toast__container--active',\n CUSTOM: 'forge-toast__container--custom'\n};\n\nconst selectors = {\n CONTAINER: `.${classes.CONTAINER}`,\n MESSAGE: `.${classes.MESSAGE}`,\n ACTION_BUTTON: `.${classes.ACTION_BUTTON}`,\n CLOSE_BUTTON: `.${classes.CLOSE_BUTTON}`\n};\n\nconst attributes = {\n MESSAGE: 'message',\n ACTION_TEXT: 'action-text',\n DURATION: 'duration',\n PLACEMENT: 'placement',\n SHOW_CLOSE: 'show-close'\n};\n\nconst events = {\n ACTION: `${elementName}-action`,\n CLOSE: `${elementName}-close`\n};\n\nconst defaults = {\n PLACEMENT: 'bottom' as ToastPlacement,\n DURATION: 2750\n};\n\nexport const TOAST_CONSTANTS = {\n elementName,\n classes,\n selectors,\n attributes,\n defaults,\n events,\n customCssPositionProperties\n};\n\nexport type ToastBuilder = () => HTMLElement | string;\nexport type ToastPlacement = PopupPlacement;\n", "import { getShadowElement, isString, removeAllChildren, removeClass, removeElement, toggleElementPlaceholder } from '@tylertech/forge-core';\nimport { IButtonComponent } from '../button';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { PopupPlacement } from '../popup';\nimport { IToastComponent } from './toast';\nimport { TOAST_CONSTANTS } from './toast-constants';\n\nexport interface IToastAdapter extends IBaseAdapter {\n setHostAttribute: (name: string, value: string) => void;\n setMessage: (value: string) => void;\n setMessageTemplate: (tpl: HTMLElement | string) => void;\n setActionVisibility: (isVisible: boolean) => void;\n setActionText: (message: string) => void;\n registerActionListener: (type: string, listener: (evt: MouseEvent) => void) => void;\n deregisterActionListener: (type: string, listener: (evt: MouseEvent) => void) => void;\n setPlacement: (placement: PopupPlacement) => void;\n setActive: (isActive: boolean) => void;\n setCloseButtonVisibility(visible: boolean): void;\n registerCloseListener(listener: (evt: Event) => void): void;\n}\n\n/**\n * The DOM adapter for the `ToastComponent` web component.\n */\nexport class ToastAdapter extends BaseAdapter<IToastComponent> implements IToastAdapter {\n private _containerElement: HTMLElement;\n private _messageElement: HTMLElement;\n private _actionButtonElement: IButtonComponent;\n private _actionButtonPlaceholder: Comment;\n private _closeButtonElement: HTMLButtonElement;\n\n constructor(component: IToastComponent) {\n super(component);\n this._containerElement = getShadowElement(component, TOAST_CONSTANTS.selectors.CONTAINER);\n this._messageElement = getShadowElement(component, TOAST_CONSTANTS.selectors.MESSAGE);\n this._actionButtonElement = getShadowElement(component, TOAST_CONSTANTS.selectors.ACTION_BUTTON) as IButtonComponent;\n this._closeButtonElement = getShadowElement(component, TOAST_CONSTANTS.selectors.CLOSE_BUTTON) as HTMLButtonElement;\n }\n\n /**\n * Sets an attribute on the host element.\n * @param name The attribute name.\n * @param value The attribute value.\n */\n public setHostAttribute(name: string, value: string): void {\n if (this._component.getAttribute(name) !== value) {\n this._component.setAttribute(name, value);\n }\n }\n\n /**\n * Sets the message text on the toast element.\n * @param value The message text.\n */\n public setMessage(value: string): void {\n this._messageElement.innerText = value;\n }\n\n /**\n * Sets a custom template on the message element.\n * @param tpl The message template.\n */\n public setMessageTemplate(tpl: HTMLElement | string): void {\n this._containerElement.classList.add(TOAST_CONSTANTS.classes.CUSTOM);\n if (isString(tpl)) {\n this._component.innerHTML = tpl;\n } else {\n removeAllChildren(this._messageElement);\n this._component.appendChild(tpl);\n }\n }\n\n /**\n * Toggles the visibility of the action button element.\n * @param isVisible The visibility.\n */\n public setActionVisibility(isVisible: boolean): void {\n this._actionButtonPlaceholder = toggleElementPlaceholder(\n this._component,\n isVisible,\n TOAST_CONSTANTS.elementName,\n TOAST_CONSTANTS.selectors.ACTION_BUTTON,\n this._actionButtonElement,\n this._actionButtonPlaceholder\n );\n }\n\n /**\n * Sets the action button text.\n * @param message The message text.\n */\n public setActionText(message: string): void {\n this._actionButtonElement.innerText = message;\n }\n\n /**\n * Adds an event listener to the action button element.\n * @param type The event type.\n * @param listener The event listener.\n */\n public registerActionListener(type: string, listener: (evt: MouseEvent) => void): void {\n this._actionButtonElement.addEventListener(type, listener);\n }\n\n /**\n * Removes an event listener from the action button.\n * @param type The event type.\n * @param listener The event listener.\n */\n public deregisterActionListener(type: string, listener: (evt: MouseEvent) => void): void {\n this._actionButtonElement.removeEventListener(type, listener);\n }\n\n /**\n * Adjusts the class applied to the toast container to position it properly.\n * @param placement The screen placement position.\n */\n public setPlacement(placement: PopupPlacement): void {\n removeClass(\n [\n TOAST_CONSTANTS.classes.TOP,\n TOAST_CONSTANTS.classes.TOP_LEFT,\n TOAST_CONSTANTS.classes.TOP_RIGHT,\n TOAST_CONSTANTS.classes.BOTTOM,\n TOAST_CONSTANTS.classes.BOTTOM_LEFT,\n TOAST_CONSTANTS.classes.BOTTOM_RIGHT\n ],\n this._containerElement\n );\n\n const placementClass = this._getPlacementClass(placement);\n if (placementClass) {\n this._containerElement.classList.add(placementClass);\n }\n }\n\n /**\n * Triggers the addition of classes to the container element to hide or show the toast using CSS transitions.\n * @param isActive Active or not.\n */\n public setActive(isActive: boolean): void {\n if (isActive) {\n // We need to force a reflow here to make sure that our new transform gets applied by the active class\n window.getComputedStyle(this._containerElement).getPropertyValue('bottom');\n this._containerElement.classList.add(TOAST_CONSTANTS.classes.ACTIVE);\n } else {\n this._containerElement.classList.remove(TOAST_CONSTANTS.classes.ACTIVE);\n const animationCompletedListener = (): void => {\n this._containerElement.removeEventListener('transitionend', animationCompletedListener);\n removeElement(this._component);\n };\n this._containerElement.addEventListener('transitionend', animationCompletedListener);\n }\n }\n\n public setCloseButtonVisibility(visible: boolean): void {\n if (visible) {\n this._closeButtonElement.style.removeProperty('display');\n } else {\n this._closeButtonElement.style.display = 'none';\n }\n }\n\n public registerCloseListener(listener: (evt: Event) => void): void {\n this._closeButtonElement.addEventListener('click', listener);\n }\n\n private _getPlacementClass(placement: PopupPlacement): string | null {\n switch (placement) {\n case 'top':\n return TOAST_CONSTANTS.classes.TOP;\n case 'top-start':\n return TOAST_CONSTANTS.classes.TOP_LEFT;\n case 'top-end':\n return TOAST_CONSTANTS.classes.TOP_RIGHT;\n case 'bottom':\n return TOAST_CONSTANTS.classes.BOTTOM;\n case 'bottom-start':\n return TOAST_CONSTANTS.classes.BOTTOM_LEFT;\n case 'bottom-end':\n return TOAST_CONSTANTS.classes.BOTTOM_RIGHT;\n }\n\n return null;\n }\n}\n", "import { ICustomElementFoundation, isFunction } from '@tylertech/forge-core';\nimport { IToastAdapter } from './toast-adapter';\nimport { ToastBuilder, TOAST_CONSTANTS, ToastPlacement } from './toast-constants';\n\nexport interface IToastFoundation extends ICustomElementFoundation {\n message: string;\n actionText: string;\n duration: number;\n placement: ToastPlacement;\n showClose: boolean;\n builder: ToastBuilder | string;\n show(): void;\n hide(): void;\n}\n\n/**\n * The foundation class behind the `ToastComponent` class that manages the state of a toast component instance.\n */\nexport class ToastFoundation implements IToastFoundation {\n private _message: string;\n private _actionText: string;\n private _duration: number = TOAST_CONSTANTS.defaults.DURATION;\n private _placement: ToastPlacement = TOAST_CONSTANTS.defaults.PLACEMENT as ToastPlacement;\n private _showClose = true;\n private _hasAction = false;\n private _isActive = false;\n private _hideTimeout: number | NodeJS.Timer | undefined;\n private _builder: ToastBuilder | string;\n private _actionListener: (evt: MouseEvent) => void;\n private _closeListener: (evt: MouseEvent) => void;\n\n constructor(private _adapter: IToastAdapter) {\n this._actionListener = (evt: MouseEvent) => this._onAction(evt);\n this._closeListener = (evt: MouseEvent) => this._onClose(evt);\n }\n\n public initialize(): void {\n this._adapter.setPlacement(this._placement);\n this._adapter.registerCloseListener(this._closeListener);\n this._adapter.setCloseButtonVisibility(this._showClose);\n this._adapter.setActionVisibility(!!this._actionText);\n this.show();\n }\n\n /**\n * Starts the animation of the toast and hides it after the duration.\n */\n public show(): void {\n // Check if we were provided a builder function and call it if so (this will override the message text)\n if (isFunction(this._builder)) {\n const tpl = (this._builder as ToastBuilder)();\n this._adapter.setMessageTemplate(tpl);\n }\n\n this._isActive = true;\n this._adapter.setActive(true);\n\n if (isFinite(this._duration) && this._duration > 0) {\n this._hideTimeout = setTimeout(() => this.hide(true), this._duration);\n }\n }\n\n /**\n * Hides the toast and removes it from the DOM.\n */\n public hide(emitEvent: boolean = false): void {\n if (!this._isActive) {\n return;\n }\n\n this._isActive = false;\n this._adapter.setActive(false);\n\n if (this._hideTimeout) {\n clearTimeout(this._hideTimeout as number);\n this._hideTimeout = undefined;\n }\n\n if (emitEvent) {\n this._adapter.emitHostEvent(TOAST_CONSTANTS.events.CLOSE);\n }\n }\n\n /**\n * Handles click events from the optional action button.\n * @param {MouseEvent} evt The mouse event.\n */\n private _onAction(evt: MouseEvent): void {\n evt.stopPropagation();\n this._adapter.emitHostEvent(TOAST_CONSTANTS.events.ACTION);\n }\n\n private _onClose(evt: MouseEvent): void {\n this.hide(true);\n }\n\n /** The message to display in the toast. */\n public get message(): string {\n return this._message;\n }\n public set message(value: string) {\n if (this._message !== value) {\n this._message = value;\n this._adapter.setMessage(this._message);\n this._adapter.setHostAttribute(TOAST_CONSTANTS.attributes.MESSAGE, this._message);\n }\n }\n\n /** The text to display in the action button. */\n public get actionText(): string {\n return this._actionText;\n }\n public set actionText(value: string) {\n if (this._actionText !== value) {\n this._actionText = value;\n\n if (this._actionText) {\n if (this._hasAction) {\n this._adapter.setActionText(this._actionText);\n } else {\n this._adapter.setActionText(this._actionText);\n this._adapter.setActionVisibility(true);\n this._adapter.registerActionListener('click', this._actionListener);\n this._hasAction = true;\n }\n } else if (this._hasAction) {\n this._adapter.setActionText('');\n this._adapter.setActionVisibility(false);\n this._adapter.deregisterActionListener('click', this._actionListener);\n this._hasAction = false;\n }\n\n this._adapter.setHostAttribute(TOAST_CONSTANTS.attributes.ACTION_TEXT, this._actionText);\n }\n }\n\n /** The time in milliseconds to show the toast. */\n public get duration(): number {\n return this._duration;\n }\n public set duration(value: number) {\n if (this._duration !== value) {\n this._duration = value;\n if (this._hideTimeout) {\n clearTimeout(this._hideTimeout as number);\n this._hideTimeout = setTimeout(() => this.hide(true), this._duration);\n }\n }\n }\n\n /** The placement of the toast. */\n public get placement(): ToastPlacement {\n return this._placement;\n }\n public set placement(value: ToastPlacement) {\n if (this._placement !== value) {\n this._placement = value;\n this._adapter.setPlacement(this._placement);\n }\n\n this._adapter.setHostAttribute(TOAST_CONSTANTS.attributes.PLACEMENT, this._placement);\n }\n\n public get builder(): ToastBuilder | string {\n return this._builder;\n }\n public set builder(value: ToastBuilder | string) {\n this._builder = value;\n }\n\n public get showClose(): boolean {\n return this._showClose;\n }\n public set showClose(value: boolean) {\n if (this._showClose !== value) {\n this._showClose = value;\n this._adapter.setCloseButtonVisibility(this._showClose);\n this._adapter.setHostAttribute(TOAST_CONSTANTS.attributes.SHOW_CLOSE, this._showClose.toString());\n }\n }\n}\n", "import { attachShadowTemplate, coerceBoolean, CustomElement, FoundationProperty } from '@tylertech/forge-core';\nimport { tylIconClose } from '@tylertech/tyler-icons/standard';\nimport { ButtonComponent } from '../button';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\nimport { IconComponent, IconRegistry } from '../icon';\nimport { IconButtonComponent } from '../icon-button';\nimport { ToastAdapter } from './toast-adapter';\nimport { ToastBuilder, ToastPlacement, TOAST_CONSTANTS } from './toast-constants';\nimport { ToastFoundation } from './toast-foundation';\n\nconst template = '<template><div class=\\\"forge-toast__container\\\" aria-live=\\\"assertive\\\" aria-atomic=\\\"true\\\" part=\\\"root\\\"><slot></slot><div class=\\\"forge-toast__message\\\" part=\\\"message\\\"></div><div class=\\\"forge-toast__action-container\\\" part=\\\"action-container\\\"><forge-button part=\\\"action-button\\\" class=\\\"forge-toast__action-button\\\" part=\\\"action-button-element\\\"></forge-button><forge-icon-button part=\\\"close-button\\\" class=\\\"forge-toast__close-button\\\" aria-label=\\\"Close toast message\\\" part=\\\"close-button-element\\\"><forge-icon name=\\\"close\\\" part=\\\"close-button-icon\\\"></forge-icon></forge-icon-button></div></div></template>';\nconst styles = '.forge-toast__container{z-index:9;z-index:var(--forge-z-index-notification,9);-webkit-box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);background-color:#333;background-color:var(--forge-toast-theme-background,#333);display:-webkit-box;display:flex;position:fixed;border-radius:2px;-webkit-transition:-webkit-transform 250ms 0s cubic-bezier(.4, 0, 1, 1);transition:-webkit-transform 250ms 0s cubic-bezier(.4, 0, 1, 1);transition:transform 250ms 0s cubic-bezier(.4, 0, 1, 1);transition:transform 250ms 0s cubic-bezier(.4, 0, 1, 1),-webkit-transform 250ms 0s cubic-bezier(.4, 0, 1, 1);-webkit-box-align:center;align-items:center;-webkit-box-pack:justify;justify-content:space-between;-webkit-box-sizing:border-box;box-sizing:border-box;padding:4px 8px 4px 16px;min-height:48px}@media (max-width:599px){.forge-toast__container{bottom:0;width:100%;border-radius:0;-webkit-transform:translateY(100%);transform:translateY(100%)}}.forge-toast__container ::slotted(*){color:rgba(255,255,255,.87);color:var(--forge-toast-theme-on-background,rgba(255,255,255,.87))}@media (min-width:600px){.forge-toast__container{min-width:344px;max-width:568px}.forge-toast__container.forge-toast__container--top,.forge-toast__container.forge-toast__container--top-left,.forge-toast__container.forge-toast__container--top-right{top:0}.forge-toast__container.forge-toast__container--top{left:50%;-webkit-transform:translateX(-50%) translateY(-100%);transform:translateX(-50%) translateY(-100%);margin-top:0;margin-top:var(--forge-toast-top-margin-top,0)}.forge-toast__container.forge-toast__container--bottom{left:50%;-webkit-transform:translateX(-50%) translateY(100%);transform:translateX(-50%) translateY(100%);margin-bottom:0;margin-bottom:var(--forge-toast-bottom-margin-bottom,0)}.forge-toast__container.forge-toast__container--top-left,.forge-toast__container.forge-toast__container--top-right{-webkit-transform:translateY(-100%);transform:translateY(-100%)}.forge-toast__container.forge-toast__container--bottom-left,.forge-toast__container.forge-toast__container--bottom-right{-webkit-transform:translateY(100%);transform:translateY(100%)}.forge-toast__container.forge-toast__container--bottom,.forge-toast__container.forge-toast__container--bottom-left,.forge-toast__container.forge-toast__container--bottom-right{bottom:0}.forge-toast__container.forge-toast__container--bottom-left{margin-bottom:24px;margin-bottom:var(--forge-toast-bottom-left-margin-bottom,24px);margin-left:24px;margin-left:var(--forge-toast-bottom-left-margin-left,24px);left:0}.forge-toast__container.forge-toast__container--bottom-right{margin-bottom:24px;margin-bottom:var(--forge-toast-bottom-right-margin-bottom,24px);margin-right:24px;margin-right:var(--forge-toast-bottom-right-margin-right,24px)}.forge-toast__container.forge-toast__container--top-left{margin-top:24px;margin-top:var(--forge-toast-top-left-margin-top,24px);margin-left:24px;margin-left:var(--forge-toast-top-left-margin-left,24px);left:0}.forge-toast__container.forge-toast__container--top-right{margin-top:24px;margin-top:var(--forge-toast-top-right-margin-top,24px);margin-right:24px;margin-right:var(--forge-toast-top-right-margin-right,24px);right:0}.forge-toast__container.forge-toast__container--bottom-right{margin-bottom:24px;margin-bottom:var(--forge-toast-bottom-right-margin-bottom,24px);margin-right:24px;margin-right:var(--forge-toast-bottom-right-margin-right,24px);right:0}}.forge-toast__container--active{-webkit-transition:-webkit-transform 250ms 0s cubic-bezier(0, 0, .2, 1);transition:-webkit-transform 250ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 250ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 250ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 250ms 0s cubic-bezier(0, 0, .2, 1)}.forge-toast__container--active>.forge-toast__message{opacity:1}.forge-toast__container--active>.forge-toast__action-button{opacity:1}@media (max-width:599px){.forge-toast__container--active{-webkit-transform:translateY(0)!important;transform:translateY(0)!important}}@media (min-width:600px){.forge-toast__container--active.forge-toast__container--bottom,.forge-toast__container--active.forge-toast__container--top{-webkit-transform:translateX(-50%) translateY(0)!important;transform:translateX(-50%) translateY(0)!important}.forge-toast__container--active.forge-toast__container--bottom-left,.forge-toast__container--active.forge-toast__container--bottom-right,.forge-toast__container--active.forge-toast__container--top-left,.forge-toast__container--active.forge-toast__container--top-right{-webkit-transform:translateY(0)!important;transform:translateY(0)!important}}.forge-toast__container--custom{min-width:0;max-width:none}.forge-toast__message{-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);color:rgba(255,255,255,.87);color:var(--forge-toast-theme-on-background,rgba(255,255,255,.87));display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-transition:opacity .3s 0s cubic-bezier(.4, 0, 1, 1);transition:opacity .3s 0s cubic-bezier(.4, 0, 1, 1);opacity:0}.forge-toast__action-container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;margin-left:8px}.forge-toast__action-button{--forge-theme-primary:#ffc107;--forge-theme-primary:var(--forge-toast-theme-action, #ffc107)}.forge-toast__close-button{color:rgba(255,255,255,.87);color:var(--forge-toast-theme-on-background,rgba(255,255,255,.87));margin-left:8px}.forge-toast__close-button::after,.forge-toast__close-button::before{background-color:rgba(255,255,255,.87);background-color:var(--forge-toast-theme-on-background,rgba(255,255,255,.87))}:host{display:inline-block}:host([hidden]){display:none}';\n\nexport interface IToastComponent extends IBaseComponent {\n message: string;\n actionText: string;\n duration: number;\n placement: ToastPlacement;\n showClose: boolean;\n builder: ToastBuilder | string;\n hide(): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-toast': IToastComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-toast-action': CustomEvent<void>;\n 'forge-toast-close': CustomEvent<void>;\n }\n}\n\n/**\n * The custom element class behind the `<forge-toast>` web component.\n * \n * @tag forge-toast\n */\n@CustomElement({\n name: TOAST_CONSTANTS.elementName,\n dependencies: [\n ButtonComponent,\n IconButtonComponent,\n IconComponent\n ]\n})\nexport class ToastComponent extends BaseComponent implements IToastComponent {\n public static get observedAttributes(): string[] {\n return [\n TOAST_CONSTANTS.attributes.MESSAGE,\n TOAST_CONSTANTS.attributes.ACTION_TEXT,\n TOAST_CONSTANTS.attributes.DURATION,\n TOAST_CONSTANTS.attributes.PLACEMENT,\n TOAST_CONSTANTS.attributes.SHOW_CLOSE\n ];\n }\n\n private _foundation: ToastFoundation;\n\n constructor() {\n super();\n IconRegistry.define(tylIconClose);\n attachShadowTemplate(this, template, styles);\n this._foundation = new ToastFoundation(new ToastAdapter(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 TOAST_CONSTANTS.attributes.MESSAGE:\n this.message = newValue;\n break;\n case TOAST_CONSTANTS.attributes.ACTION_TEXT:\n this.actionText = newValue;\n break;\n case TOAST_CONSTANTS.attributes.DURATION:\n const value = Number(newValue);\n this.duration = value && value > 0 ? value : TOAST_CONSTANTS.defaults.DURATION;\n break;\n case TOAST_CONSTANTS.attributes.PLACEMENT:\n this.placement = newValue as ToastPlacement || TOAST_CONSTANTS.defaults.PLACEMENT;\n break;\n case TOAST_CONSTANTS.attributes.SHOW_CLOSE:\n this.showClose = coerceBoolean(newValue);\n break;\n }\n }\n\n /** The message to display in the toast. */\n @FoundationProperty()\n public declare message: string;\n\n /** The text to display in the action button. */\n @FoundationProperty()\n public declare actionText: string;\n\n /** The time in milliseconds to show the toast. */\n @FoundationProperty()\n public declare duration: number;\n\n /** The placement of the toast. */\n @FoundationProperty()\n public declare placement: ToastPlacement;\n\n /** Sets the toast builder function for displaying custom content. */\n @FoundationProperty()\n public declare builder: ToastBuilder | string;\n\n /** Controls the visibility of the close button. */\n @FoundationProperty()\n public declare showClose: boolean;\n\n /** Hides the toast and removes it from the DOM. */\n public hide(): void {\n this._foundation.hide();\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { ToastComponent } from './toast';\n\nexport * from './toast-adapter';\nexport * from './toast-constants';\nexport * from './toast-foundation';\nexport * from './toast';\n\nexport function defineToastComponent(): void {\n defineCustomElement(ToastComponent);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["elementName", "COMPONENT_NAME_PREFIX", "customCssPositionProperties", "classes", "selectors", "attributes", "events", "defaults", "TOAST_CONSTANTS", "ToastAdapter", "BaseAdapter", "component", "getShadowElement", "TOAST_CONSTANTS", "name", "value", "tpl", "isString", "removeAllChildren", "isVisible", "toggleElementPlaceholder", "message", "type", "listener", "placement", "removeClass", "placementClass", "isActive", "animationCompletedListener", "removeElement", "visible", "ToastFoundation", "_adapter", "TOAST_CONSTANTS", "evt", "isFunction", "tpl", "emitEvent", "value", "template", "styles", "ToastComponent", "BaseComponent", "IconRegistry", "tylIconClose", "attachShadowTemplate", "ToastFoundation", "ToastAdapter", "TOAST_CONSTANTS", "name", "oldValue", "newValue", "value", "coerceBoolean", "__decorateClass", "FoundationProperty", "CustomElement", "ButtonComponent", "IconButtonComponent", "IconComponent", "defineToastComponent", "defineCustomElement", "ToastComponent"]
|
|
7
|
+
}
|