@tylertech/forge 3.0.0-next.21 → 3.0.0-next.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/custom-elements.json +33600 -39264
- package/dist/dialog/forge-dialog-utils.css +1 -1
- package/dist/esm/accordion/index.js +1 -1
- package/dist/esm/app-bar/app-bar/index.js +1 -1
- package/dist/esm/app-bar/help-button/index.js +1 -1
- package/dist/esm/app-bar/index.js +1 -1
- package/dist/esm/app-bar/menu-button/index.js +1 -1
- package/dist/esm/app-bar/notification-button/index.js +1 -1
- package/dist/esm/app-bar/profile-button/index.js +1 -1
- package/dist/esm/app-bar/search/index.js +1 -1
- package/dist/esm/autocomplete/index.js +1 -1
- package/dist/esm/avatar/index.js +1 -1
- package/dist/esm/backdrop/index.js +1 -1
- package/dist/esm/badge/index.js +1 -1
- package/dist/esm/banner/index.js +1 -1
- package/dist/esm/bottom-sheet/index.js +1 -1
- package/dist/esm/busy-indicator/index.js +1 -1
- package/dist/esm/button/index.js +1 -1
- package/dist/esm/button-area/index.js +1 -1
- package/dist/esm/button-toggle/button-toggle/index.js +1 -1
- package/dist/esm/button-toggle/button-toggle-group/index.js +1 -1
- package/dist/esm/button-toggle/index.js +1 -1
- package/dist/esm/calendar/calendar-dropdown/index.js +1 -1
- package/dist/esm/calendar/calendar-menu/index.js +1 -1
- package/dist/esm/calendar/index.js +1 -1
- package/dist/esm/card/index.js +1 -1
- package/dist/esm/checkbox/index.js +1 -1
- package/dist/esm/chip-field/index.js +1 -1
- package/dist/esm/chips/chip/index.js +1 -1
- package/dist/esm/chips/chip-set/index.js +1 -1
- package/dist/esm/chips/index.js +1 -1
- package/dist/esm/chunks/{chunk.YS5JZHJ6.js → chunk.24SQJBSQ.js} +2 -2
- package/dist/esm/chunks/{chunk.PDDBNHVU.js → chunk.2GUWHBUU.js} +2 -2
- package/dist/esm/chunks/{chunk.PDDBNHVU.js.map → chunk.2GUWHBUU.js.map} +2 -2
- package/dist/esm/chunks/chunk.37B332ZK.js +7 -0
- package/dist/esm/chunks/{chunk.SOKORSUV.js.map → chunk.37B332ZK.js.map} +3 -3
- package/dist/esm/chunks/chunk.3IUQ4C47.js +7 -0
- package/dist/esm/chunks/chunk.3IUQ4C47.js.map +7 -0
- package/dist/esm/chunks/{chunk.IZRURH7C.js → chunk.3KAKJGUS.js} +2 -2
- package/dist/esm/chunks/chunk.3PMONORO.js +7 -0
- package/dist/esm/chunks/chunk.3PMONORO.js.map +7 -0
- package/dist/esm/chunks/chunk.473WRJ5G.js +7 -0
- package/dist/esm/chunks/chunk.5A665C5E.js +7 -0
- package/dist/esm/chunks/chunk.5A665C5E.js.map +7 -0
- package/dist/esm/chunks/chunk.5ADUSMC7.js +7 -0
- package/dist/esm/chunks/chunk.5ADUSMC7.js.map +7 -0
- package/dist/esm/chunks/{chunk.USQEIRST.js → chunk.5MB6CTBA.js} +2 -2
- package/dist/esm/chunks/chunk.5SUJNEC7.js +7 -0
- package/dist/esm/chunks/chunk.5SUJNEC7.js.map +7 -0
- package/dist/esm/chunks/{chunk.47U6GVGZ.js → chunk.5UOX22ML.js} +2 -2
- package/dist/esm/chunks/chunk.6E5WHIPF.js +7 -0
- package/dist/esm/chunks/chunk.6E5WHIPF.js.map +7 -0
- package/dist/esm/chunks/{chunk.4NABD6XG.js → chunk.6VS3LYAF.js} +2 -2
- package/dist/esm/chunks/chunk.72BKSMAZ.js +7 -0
- package/dist/esm/chunks/{chunk.3TIBP6QT.js.map → chunk.72BKSMAZ.js.map} +3 -3
- package/dist/esm/chunks/chunk.77C7S7ZS.js +7 -0
- package/dist/esm/chunks/chunk.77C7S7ZS.js.map +7 -0
- package/dist/esm/chunks/chunk.7AAICE77.js +7 -0
- package/dist/esm/chunks/chunk.7AAICE77.js.map +7 -0
- package/dist/esm/chunks/chunk.7IPAW4D2.js +7 -0
- package/dist/esm/chunks/{chunk.MCR34SZQ.js.map → chunk.7IPAW4D2.js.map} +1 -1
- package/dist/esm/chunks/chunk.7Y3BUR7Q.js +7 -0
- package/dist/esm/chunks/{chunk.3U222LE4.js.map → chunk.7Y3BUR7Q.js.map} +1 -1
- package/dist/esm/chunks/chunk.A2NB7CIK.js +7 -0
- package/dist/esm/chunks/chunk.A2NB7CIK.js.map +7 -0
- package/dist/esm/chunks/{chunk.AOSBUJWW.js → chunk.A7BCLPP4.js} +2 -2
- package/dist/esm/chunks/chunk.AFWWND2C.js +7 -0
- package/dist/esm/chunks/chunk.AFWWND2C.js.map +7 -0
- package/dist/esm/chunks/{chunk.7UBIT4NP.js → chunk.AG6IRMLZ.js} +2 -2
- package/dist/esm/chunks/{chunk.A4UH52SA.js → chunk.AGLI4WR4.js} +2 -2
- package/dist/esm/chunks/{chunk.WTUXAH7Z.js → chunk.AOVXNX7P.js} +2 -2
- package/dist/esm/chunks/{chunk.AN2E2SSN.js → chunk.ASLHRT3N.js} +2 -2
- package/dist/esm/chunks/chunk.BEFAXPXJ.js +15 -0
- package/dist/esm/chunks/{chunk.EO3HELQ2.js.map → chunk.BEFAXPXJ.js.map} +1 -1
- package/dist/esm/chunks/{chunk.CBLUXYH2.js → chunk.BHE6Z5Y2.js} +2 -2
- package/dist/esm/chunks/{chunk.2WRAXA3H.js → chunk.BQ52JYLA.js} +2 -2
- package/dist/esm/chunks/chunk.BQZKOIAW.js +7 -0
- package/dist/esm/chunks/chunk.BQZKOIAW.js.map +7 -0
- package/dist/esm/chunks/chunk.BV7EAQST.js +7 -0
- package/dist/esm/chunks/chunk.BV7EAQST.js.map +7 -0
- package/dist/esm/chunks/{chunk.ROMRJIFR.js → chunk.CE35CVDV.js} +2 -2
- package/dist/esm/chunks/{chunk.ZPXMKY72.js → chunk.CEGBMUSR.js} +2 -2
- package/dist/esm/chunks/{chunk.GBGGUYTE.js → chunk.CFAI4K3E.js} +2 -2
- package/dist/esm/chunks/{chunk.ZIGVO6FN.js → chunk.CGFSMACZ.js} +2 -2
- package/dist/esm/chunks/chunk.DJSHVUEM.js +18 -0
- package/dist/esm/chunks/{chunk.MGLWXAZO.js.map → chunk.DJSHVUEM.js.map} +4 -4
- package/dist/esm/chunks/chunk.DKERDHXH.js +7 -0
- package/dist/esm/chunks/{chunk.JVWJHSPM.js.map → chunk.DKERDHXH.js.map} +1 -1
- package/dist/esm/chunks/chunk.DZJ6HBAG.js +7 -0
- package/dist/esm/chunks/chunk.DZJ6HBAG.js.map +7 -0
- package/dist/esm/chunks/{chunk.2537XOFQ.js → chunk.E2BE52ME.js} +2 -2
- package/dist/esm/chunks/chunk.EHVCEEV2.js +7 -0
- package/dist/esm/chunks/chunk.EHVCEEV2.js.map +7 -0
- package/dist/esm/chunks/{chunk.UEYPCCFG.js → chunk.ENUKGA2U.js} +2 -2
- package/dist/esm/chunks/chunk.EO3GP6DP.js +7 -0
- package/dist/esm/chunks/chunk.EO3GP6DP.js.map +7 -0
- package/dist/esm/chunks/{chunk.XYBVD3IE.js → chunk.EUJBIOGT.js} +2 -2
- package/dist/esm/chunks/{chunk.XYBVD3IE.js.map → chunk.EUJBIOGT.js.map} +2 -2
- package/dist/esm/chunks/chunk.FLBYVCQ6.js +7 -0
- package/dist/esm/chunks/chunk.FLBYVCQ6.js.map +7 -0
- package/dist/esm/chunks/chunk.FLF5RTYO.js +7 -0
- package/dist/esm/chunks/chunk.FLF5RTYO.js.map +7 -0
- package/dist/esm/chunks/chunk.GBAVJILM.js +7 -0
- package/dist/esm/chunks/chunk.GBAVJILM.js.map +7 -0
- package/dist/esm/chunks/chunk.GG7IQL46.js +7 -0
- package/dist/esm/chunks/{chunk.HBAC6E7O.js.map → chunk.GG7IQL46.js.map} +1 -1
- package/dist/esm/chunks/chunk.GIENHEMN.js +7 -0
- package/dist/esm/chunks/chunk.GIENHEMN.js.map +7 -0
- package/dist/esm/chunks/{chunk.FOSKVNVV.js → chunk.H4VQXV2H.js} +2 -2
- package/dist/esm/chunks/{chunk.FOSKVNVV.js.map → chunk.H4VQXV2H.js.map} +2 -2
- package/dist/esm/chunks/{chunk.GA6AO6FJ.js → chunk.H5RW3A4M.js} +2 -2
- package/dist/esm/chunks/chunk.HG4IDRAC.js +7 -0
- package/dist/esm/chunks/chunk.HG4IDRAC.js.map +7 -0
- package/dist/esm/chunks/{chunk.CSOKFDFQ.js → chunk.HSADKCGS.js} +2 -2
- package/dist/esm/chunks/chunk.I7YON2TC.js +7 -0
- package/dist/esm/chunks/chunk.I7YON2TC.js.map +7 -0
- package/dist/esm/chunks/chunk.IEABOPNB.js +7 -0
- package/dist/esm/chunks/{chunk.22C7GQLX.js → chunk.IL4S57WO.js} +2 -2
- package/dist/esm/chunks/{chunk.HMJODLAS.js → chunk.IQYOLMPG.js} +2 -2
- package/dist/esm/chunks/chunk.ISLJNJEE.js +7 -0
- package/dist/esm/chunks/chunk.ISLJNJEE.js.map +7 -0
- package/dist/esm/chunks/{chunk.QG5EYBS3.js → chunk.J2Y5KPON.js} +2 -2
- package/dist/esm/chunks/{chunk.QG5EYBS3.js.map → chunk.J2Y5KPON.js.map} +2 -2
- package/dist/esm/chunks/{chunk.7IJUN75W.js → chunk.JE5LSPXG.js} +2 -2
- package/dist/esm/chunks/{chunk.7IJUN75W.js.map → chunk.JE5LSPXG.js.map} +3 -3
- package/dist/esm/chunks/{chunk.GTKYO6VB.js → chunk.JGURMVW7.js} +2 -2
- package/dist/esm/chunks/{chunk.YXHMD73U.js → chunk.K6GJNDTY.js} +2 -2
- package/dist/esm/chunks/{chunk.QUWEAFGI.js → chunk.KEOLH7G3.js} +2 -2
- package/dist/esm/chunks/chunk.KLU54MDQ.js +7 -0
- package/dist/esm/chunks/chunk.KLU54MDQ.js.map +7 -0
- package/dist/esm/chunks/chunk.KO6ODCZC.js +7 -0
- package/dist/esm/chunks/chunk.KO6ODCZC.js.map +7 -0
- package/dist/esm/chunks/chunk.KTPEFU7V.js +7 -0
- package/dist/esm/chunks/{chunk.5UGN5FYV.js.map → chunk.KTPEFU7V.js.map} +2 -2
- package/dist/esm/chunks/chunk.L4QSPQDE.js +7 -0
- package/dist/esm/chunks/{chunk.DCCFF327.js.map → chunk.L4QSPQDE.js.map} +2 -2
- package/dist/esm/chunks/chunk.LGSCBWNR.js +7 -0
- package/dist/esm/chunks/chunk.LGSCBWNR.js.map +7 -0
- package/dist/esm/chunks/{chunk.BIQTNLIF.js → chunk.LNTTU2GL.js} +2 -2
- package/dist/esm/chunks/chunk.LSMHIVX2.js +7 -0
- package/dist/esm/chunks/{chunk.V7ILFIOR.js.map → chunk.LSMHIVX2.js.map} +1 -1
- package/dist/esm/chunks/{chunk.2AM2BKEO.js → chunk.MFQRXVKO.js} +2 -2
- package/dist/esm/chunks/{chunk.JLSFTWPE.js → chunk.MTIPIEXA.js} +2 -2
- package/dist/esm/chunks/chunk.MX4JX4GT.js +7 -0
- package/dist/esm/chunks/{chunk.UOD3A7M4.js.map → chunk.MX4JX4GT.js.map} +1 -1
- package/dist/esm/chunks/chunk.NEQX2QVX.js +7 -0
- package/dist/esm/chunks/chunk.NEQX2QVX.js.map +7 -0
- package/dist/esm/chunks/chunk.NWVQ5HK2.js +7 -0
- package/dist/esm/chunks/{chunk.BETICEYY.js.map → chunk.NWVQ5HK2.js.map} +2 -2
- package/dist/esm/chunks/chunk.O5WAQQNR.js +7 -0
- package/dist/esm/chunks/{chunk.ZYKP23JP.js.map → chunk.O5WAQQNR.js.map} +2 -2
- package/dist/esm/chunks/{chunk.JSTCCUKZ.js → chunk.OEI35LFU.js} +2 -2
- package/dist/esm/chunks/{chunk.6GSVB5NB.js → chunk.OLFOVKQG.js} +2 -2
- package/dist/esm/chunks/chunk.OLFOVKQG.js.map +7 -0
- package/dist/esm/chunks/{chunk.IWVAI6XM.js → chunk.OOAJHLW4.js} +2 -2
- package/dist/esm/chunks/chunk.OOAJHLW4.js.map +7 -0
- package/dist/esm/chunks/chunk.OVXEOEJF.js +7 -0
- package/dist/esm/chunks/chunk.OVXEOEJF.js.map +7 -0
- package/dist/esm/chunks/chunk.PC6TW5XE.js +7 -0
- package/dist/esm/chunks/chunk.PC6TW5XE.js.map +7 -0
- package/dist/esm/chunks/chunk.PFIIBXTS.js +7 -0
- package/dist/esm/chunks/chunk.PFIIBXTS.js.map +7 -0
- package/dist/esm/chunks/chunk.Q7TBWGKN.js +12 -0
- package/dist/esm/chunks/chunk.Q7TBWGKN.js.map +7 -0
- package/dist/esm/chunks/chunk.QCPV5DEG.js +7 -0
- package/dist/esm/chunks/{chunk.R3AWIPPK.js → chunk.QIZBZGYT.js} +2 -2
- package/dist/esm/chunks/{chunk.2XPAYTK4.js → chunk.QKTK5XUE.js} +2 -2
- package/dist/esm/chunks/chunk.QLGJS37N.js +7 -0
- package/dist/esm/chunks/chunk.QLGJS37N.js.map +7 -0
- package/dist/esm/chunks/{chunk.R66CYS27.js → chunk.QTY25OTN.js} +2 -2
- package/dist/esm/chunks/chunk.QUXMLWBJ.js +7 -0
- package/dist/esm/chunks/{chunk.BEUQVZKZ.js.map → chunk.QUXMLWBJ.js.map} +1 -1
- package/dist/esm/chunks/{chunk.BSV27GU7.js → chunk.QVATEY5S.js} +2 -2
- package/dist/esm/chunks/chunk.RFT3BAJ2.js +7 -0
- package/dist/esm/chunks/chunk.RFT3BAJ2.js.map +7 -0
- package/dist/esm/chunks/{chunk.SHBDQPPH.js → chunk.RONMNRSH.js} +2 -2
- package/dist/esm/chunks/{chunk.FRTSXX33.js → chunk.RSYEG2RW.js} +2 -2
- package/dist/esm/chunks/{chunk.A6BIUNPW.js → chunk.RXBLU4OJ.js} +2 -2
- package/dist/esm/chunks/{chunk.FBDRM4YN.js → chunk.S7KEO2CH.js} +2 -2
- package/dist/esm/chunks/{chunk.XU3YSZPA.js → chunk.SQ3AZAHF.js} +2 -2
- package/dist/esm/chunks/{chunk.35MHQH7Z.js → chunk.SROEDYPL.js} +2 -2
- package/dist/esm/chunks/chunk.T7NWP7DB.js +7 -0
- package/dist/esm/chunks/chunk.T7NWP7DB.js.map +7 -0
- package/dist/esm/chunks/{chunk.PXRGQHWR.js → chunk.TQWZDM6T.js} +2 -2
- package/dist/esm/chunks/chunk.U6J4VHU6.js +7 -0
- package/dist/esm/chunks/{chunk.STSAE2XP.js.map → chunk.U6J4VHU6.js.map} +1 -1
- package/dist/esm/chunks/{chunk.6JVMCBCR.js → chunk.UKBE2FMZ.js} +2 -2
- package/dist/esm/chunks/{chunk.MDDX4MJU.js → chunk.UPSXYWPD.js} +2 -2
- package/dist/esm/chunks/{chunk.MDDX4MJU.js.map → chunk.UPSXYWPD.js.map} +2 -2
- package/dist/esm/chunks/chunk.USTVZ6MZ.js +7 -0
- package/dist/esm/chunks/chunk.USTVZ6MZ.js.map +7 -0
- package/dist/esm/chunks/chunk.VGIRVTBJ.js +7 -0
- package/dist/esm/chunks/chunk.VGIRVTBJ.js.map +7 -0
- package/dist/esm/chunks/chunk.VRSPT7WX.js +7 -0
- package/dist/esm/chunks/{chunk.UQQQSJVM.js.map → chunk.VRSPT7WX.js.map} +3 -3
- package/dist/esm/chunks/chunk.W4HANHUO.js +7 -0
- package/dist/esm/chunks/chunk.W6FT6MKN.js +7 -0
- package/dist/esm/chunks/chunk.W6FT6MKN.js.map +7 -0
- package/dist/esm/chunks/{chunk.2W276VOR.js → chunk.WMJSYYXQ.js} +2 -2
- package/dist/esm/chunks/chunk.WXVVOFNK.js +7 -0
- package/dist/esm/chunks/chunk.WXVVOFNK.js.map +7 -0
- package/dist/esm/chunks/{chunk.OSBNFFCI.js → chunk.XATVDHDW.js} +2 -2
- package/dist/esm/chunks/chunk.XATVDHDW.js.map +7 -0
- package/dist/esm/chunks/{chunk.4AEQ7KVU.js → chunk.XTJGWT5F.js} +2 -2
- package/dist/esm/chunks/chunk.YNCTSMT6.js +7 -0
- package/dist/esm/chunks/chunk.YNCTSMT6.js.map +7 -0
- package/dist/esm/chunks/{chunk.YNXWVL4B.js → chunk.YPNSK2CK.js} +2 -2
- package/dist/esm/chunks/chunk.YRAEFQJW.js +7 -0
- package/dist/esm/chunks/{chunk.XAZ6EDIZ.js.map → chunk.YRAEFQJW.js.map} +3 -3
- package/dist/esm/chunks/chunk.YWJVZVZX.js +7 -0
- package/dist/esm/chunks/{chunk.6XLTVIUD.js → chunk.ZA7JY3AY.js} +2 -2
- package/dist/esm/chunks/chunk.ZG6YF2HI.js +7 -0
- package/dist/esm/chunks/{chunk.R6VPRRTT.js.map → chunk.ZG6YF2HI.js.map} +1 -1
- package/dist/esm/circular-progress/index.js +1 -1
- package/dist/esm/color-picker/index.js +1 -1
- package/dist/esm/core/base/index.js +1 -1
- package/dist/esm/core/delegates/index.js +1 -1
- package/dist/esm/core/index.js +1 -1
- package/dist/esm/core/utils/index.js +1 -1
- package/dist/esm/date-picker/index.js +1 -1
- package/dist/esm/date-range-picker/index.js +1 -1
- package/dist/esm/deprecated/button/index.js +1 -1
- package/dist/esm/deprecated/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/{field-next → field}/base/index.js +1 -1
- package/dist/esm/field/index.js +7 -0
- 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 +1 -1
- package/dist/esm/label-value/index.js +1 -1
- package/dist/esm/linear-progress/index.js +1 -1
- package/dist/esm/list/index.js +1 -1
- package/dist/esm/list/list/index.js +1 -1
- package/dist/esm/list/list-item/index.js +1 -1
- package/dist/esm/list-dropdown/index.js +1 -1
- package/dist/esm/menu/index.js +1 -1
- package/dist/esm/open-icon/index.js +1 -1
- package/dist/esm/overlay/index.js +1 -1
- package/dist/esm/page-state/index.js +1 -1
- package/dist/esm/paginator/index.js +1 -1
- package/dist/esm/popover/index.js +1 -1
- package/dist/esm/profile-card/index.js +1 -1
- package/dist/esm/quantity-field/index.js +1 -1
- package/dist/esm/radio/index.js +1 -1
- package/dist/esm/radio/radio/index.js +1 -1
- package/dist/esm/radio/radio-group/index.js +1 -1
- package/dist/esm/scaffold/index.js +1 -1
- package/dist/esm/select/core/index.js +1 -1
- package/dist/esm/select/index.js +1 -1
- package/dist/esm/select/option/index.js +1 -1
- package/dist/esm/select/option-group/index.js +1 -1
- package/dist/esm/select/select/index.js +1 -1
- package/dist/esm/select/select-dropdown/index.js +1 -1
- package/dist/esm/skeleton/index.js +1 -1
- package/dist/esm/slider/index.js +1 -1
- package/dist/esm/split-button/index.js +1 -1
- package/dist/esm/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view-panel/index.js +1 -1
- package/dist/esm/stack/index.js +1 -1
- package/dist/esm/state-layer/index.js +1 -1
- package/dist/esm/stepper/index.js +1 -1
- package/dist/esm/stepper/step/index.js +1 -1
- package/dist/esm/stepper/stepper/index.js +1 -1
- package/dist/esm/switch/index.js +1 -1
- package/dist/esm/table/index.js +1 -1
- package/dist/esm/tabs/index.js +1 -1
- package/dist/esm/tabs/tab/index.js +1 -1
- package/dist/esm/tabs/tab-bar/index.js +1 -1
- package/dist/esm/text-field/index.js +1 -1
- package/dist/esm/time-picker/index.js +1 -1
- package/dist/esm/toast/index.js +1 -1
- package/dist/esm/toolbar/index.js +1 -1
- package/dist/esm/tooltip/index.js +1 -1
- package/dist/esm/view-switcher/index.js +1 -1
- package/dist/esm/view-switcher/view/index.js +1 -1
- package/dist/forge-core.css +1 -1
- package/dist/forge-dark.css +1 -1
- package/dist/forge.css +1 -1
- package/esm/app-bar/profile-button/app-bar-profile-button-adapter.d.ts +6 -6
- package/esm/app-bar/profile-button/app-bar-profile-button-adapter.js +18 -10
- package/esm/app-bar/profile-button/app-bar-profile-button-foundation.d.ts +3 -3
- package/esm/app-bar/profile-button/app-bar-profile-button-foundation.js +13 -17
- package/esm/app-bar/profile-button/app-bar-profile-button.d.ts +4 -4
- package/esm/app-bar/profile-button/app-bar-profile-button.js +3 -3
- package/esm/autocomplete/autocomplete-adapter.d.ts +6 -2
- package/esm/autocomplete/autocomplete-adapter.js +27 -23
- package/esm/autocomplete/autocomplete-constants.d.ts +2 -2
- package/esm/autocomplete/autocomplete-constants.js +1 -2
- package/esm/autocomplete/autocomplete-foundation.js +3 -5
- package/esm/autocomplete/autocomplete.js +2 -2
- package/esm/backdrop/backdrop-constants.d.ts +10 -13
- package/esm/backdrop/backdrop-constants.js +12 -17
- package/esm/backdrop/backdrop.d.ts +17 -29
- package/esm/backdrop/backdrop.js +79 -50
- package/esm/backdrop/index.d.ts +0 -2
- package/esm/backdrop/index.js +0 -2
- package/esm/bottom-sheet/bottom-sheet-adapter.d.ts +2 -2
- package/esm/bottom-sheet/bottom-sheet-adapter.js +12 -5
- package/esm/bottom-sheet/bottom-sheet-foundation.js +1 -1
- package/esm/bottom-sheet/bottom-sheet.js +2 -2
- package/esm/busy-indicator/busy-indicator-adapter.d.ts +2 -6
- package/esm/busy-indicator/busy-indicator-adapter.js +8 -6
- package/esm/busy-indicator/busy-indicator-foundation.js +1 -1
- package/esm/button/base/base-button-foundation.js +2 -1
- package/esm/calendar/calendar-constants.d.ts +1 -1
- package/esm/calendar/calendar-constants.js +1 -1
- package/esm/calendar/calendar-dropdown/calendar-dropdown.d.ts +6 -4
- package/esm/calendar/calendar-dropdown/calendar-dropdown.js +21 -25
- package/esm/calendar/calendar-menu/calendar-menu-constants.d.ts +1 -1
- package/esm/calendar/calendar-menu/calendar-menu-constants.js +1 -1
- package/esm/calendar/calendar-menu/calendar-menu.js +3 -3
- package/esm/calendar/calendar.js +3 -3
- package/esm/card/card-constants.d.ts +2 -5
- package/esm/card/card-constants.js +4 -10
- package/esm/card/card.d.ts +10 -5
- package/esm/card/card.js +14 -16
- package/esm/checkbox/checkbox-adapter.d.ts +0 -34
- package/esm/checkbox/checkbox-adapter.js +10 -105
- package/esm/checkbox/checkbox-constants.d.ts +13 -4
- package/esm/checkbox/checkbox-constants.js +8 -11
- package/esm/checkbox/checkbox-foundation.d.ts +5 -11
- package/esm/checkbox/checkbox-foundation.js +24 -35
- package/esm/checkbox/checkbox.d.ts +24 -24
- package/esm/checkbox/checkbox.js +65 -83
- package/esm/chip-field/chip-field-adapter.d.ts +48 -22
- package/esm/chip-field/chip-field-adapter.js +130 -30
- package/esm/chip-field/chip-field-component-delegate.js +1 -1
- package/esm/chip-field/chip-field-constants.d.ts +18 -16
- package/esm/chip-field/chip-field-constants.js +19 -20
- package/esm/chip-field/chip-field-foundation.d.ts +26 -16
- package/esm/chip-field/chip-field-foundation.js +128 -74
- package/esm/chip-field/chip-field.d.ts +9 -6
- package/esm/chip-field/chip-field.js +24 -11
- package/esm/chips/chip/chip.js +1 -1
- package/esm/constants.d.ts +2 -0
- package/esm/constants.js +2 -0
- package/esm/core/base/base-adapter.d.ts +1 -0
- package/esm/core/controllers/move-controller.d.ts +32 -0
- package/esm/core/controllers/move-controller.js +40 -0
- package/esm/core/mixins/interactions/moveable/with-moveable.d.ts +30 -0
- package/esm/core/mixins/interactions/moveable/with-moveable.js +131 -0
- package/esm/core/utils/dismissible-stack.d.ts +6 -0
- package/esm/core/utils/dismissible-stack.js +9 -0
- package/esm/core/utils/feature-detection.d.ts +5 -0
- package/esm/core/utils/feature-detection.js +7 -0
- package/esm/core/utils/index.d.ts +2 -0
- package/esm/core/utils/index.js +2 -0
- package/esm/core/utils/svg-utils.d.ts +1 -1
- package/esm/core/utils/svg-utils.js +2 -2
- package/esm/date-picker/date-picker.d.ts +0 -2
- package/esm/date-picker/date-picker.js +2 -4
- package/esm/date-range-picker/date-range-picker-adapter.js +1 -1
- package/esm/date-range-picker/date-range-picker-component-delegate.d.ts +1 -1
- package/esm/date-range-picker/date-range-picker.js +2 -2
- package/esm/dialog/dialog-adapter.d.ts +44 -62
- package/esm/dialog/dialog-adapter.js +107 -135
- package/esm/dialog/dialog-constants.d.ts +51 -28
- package/esm/dialog/dialog-constants.js +36 -33
- package/esm/dialog/dialog-foundation.d.ts +59 -75
- package/esm/dialog/dialog-foundation.js +218 -360
- package/esm/dialog/dialog.d.ts +127 -46
- package/esm/dialog/dialog.js +161 -60
- package/esm/drawer/modal-drawer/modal-drawer-adapter.js +1 -1
- package/esm/drawer/modal-drawer/modal-drawer-foundation.js +5 -6
- package/esm/{field-next → field}/base/base-field-foundation.js +14 -0
- package/esm/{field-next/field-foundation.d.ts → field/base/with-base-field.d.ts} +24 -39
- package/esm/field/base/with-base-field.js +210 -0
- package/esm/field/field-adapter.d.ts +49 -92
- package/esm/field/field-adapter.js +114 -154
- package/esm/field/field-constants.d.ts +82 -30
- package/esm/field/field-constants.js +51 -29
- package/esm/field/field-foundation.d.ts +78 -48
- package/esm/field/field-foundation.js +171 -273
- package/esm/field/field.d.ts +202 -24
- package/esm/field/field.js +267 -37
- package/esm/focus-indicator/focus-indicator-constants.d.ts +5 -0
- package/esm/focus-indicator/focus-indicator-constants.js +7 -2
- package/esm/focus-indicator/focus-indicator-foundation.d.ts +5 -0
- package/esm/focus-indicator/focus-indicator-foundation.js +21 -3
- package/esm/focus-indicator/focus-indicator.d.ts +5 -0
- package/esm/focus-indicator/focus-indicator.js +9 -7
- package/esm/icon/icon-adapter.d.ts +4 -2
- package/esm/icon/icon-adapter.js +13 -9
- package/esm/icon/icon-constants.d.ts +14 -2
- package/esm/icon/icon-constants.js +3 -1
- package/esm/icon/icon-foundation.d.ts +6 -2
- package/esm/icon/icon-foundation.js +50 -18
- package/esm/icon/icon-registry.d.ts +8 -2
- package/esm/icon/icon-registry.js +15 -2
- package/esm/icon/icon-utils.d.ts +6 -3
- package/esm/icon/icon-utils.js +6 -7
- package/esm/icon/icon.d.ts +35 -4
- package/esm/icon/icon.js +44 -18
- package/esm/icon/index.js +0 -6
- package/esm/icon-button/icon-button-component-delegate.d.ts +2 -2
- package/esm/index.d.ts +1 -4
- package/esm/index.js +2 -9
- package/esm/label-value/index.d.ts +0 -2
- package/esm/label-value/index.js +0 -2
- package/esm/label-value/label-value-constants.d.ts +7 -12
- package/esm/label-value/label-value-constants.js +7 -17
- package/esm/label-value/label-value.d.ts +44 -16
- package/esm/label-value/label-value.js +78 -36
- package/esm/list/list/list.d.ts +2 -3
- package/esm/list/list/list.js +4 -5
- package/esm/list/list-item/list-item.d.ts +1 -0
- package/esm/list/list-item/list-item.js +2 -1
- package/esm/list-dropdown/list-dropdown-adapter.d.ts +3 -1
- package/esm/list-dropdown/list-dropdown-adapter.js +24 -9
- package/esm/list-dropdown/list-dropdown-constants.d.ts +6 -5
- package/esm/list-dropdown/list-dropdown-foundation.d.ts +2 -2
- package/esm/list-dropdown/list-dropdown-foundation.js +3 -5
- package/esm/list-dropdown/list-dropdown-utils.d.ts +3 -3
- package/esm/list-dropdown/list-dropdown-utils.js +11 -19
- package/esm/list-dropdown/list-dropdown.d.ts +2 -2
- package/esm/list-dropdown/list-dropdown.js +1 -1
- package/esm/menu/menu-adapter.d.ts +4 -2
- package/esm/menu/menu-adapter.js +8 -2
- package/esm/menu/menu-foundation.d.ts +11 -10
- package/esm/menu/menu-foundation.js +9 -6
- package/esm/menu/menu.d.ts +8 -7
- package/esm/menu/menu.js +2 -2
- package/esm/overlay/overlay-adapter.d.ts +0 -1
- package/esm/overlay/overlay-adapter.js +1 -2
- package/esm/paginator/paginator.js +1 -1
- package/esm/popover/popover-adapter.d.ts +9 -0
- package/esm/popover/popover-adapter.js +41 -3
- package/esm/popover/popover-constants.d.ts +17 -0
- package/esm/popover/popover-constants.js +11 -6
- package/esm/popover/popover-foundation.d.ts +7 -1
- package/esm/popover/popover-foundation.js +35 -7
- package/esm/popover/popover.d.ts +15 -1
- package/esm/popover/popover.js +28 -15
- package/esm/radio/core/radio-group-manager.d.ts +18 -1
- package/esm/radio/core/radio-group-manager.js +27 -6
- package/esm/radio/radio/radio-adapter.js +4 -2
- package/esm/radio/radio/radio-component-delegate.d.ts +38 -0
- package/esm/radio/radio/radio-component-delegate.js +88 -1
- package/esm/radio/radio/radio-constants.d.ts +11 -0
- package/esm/radio/radio/radio-constants.js +3 -1
- package/esm/radio/radio/radio-foundation.js +3 -2
- package/esm/radio/radio/radio.d.ts +8 -3
- package/esm/radio/radio/radio.js +17 -18
- package/esm/radio/radio-group/radio-group-constants.d.ts +3 -0
- package/esm/radio/radio-group/radio-group-constants.js +3 -1
- package/esm/radio/radio-group/radio-group.js +5 -5
- package/esm/scaffold/scaffold-constants.d.ts +6 -0
- package/esm/scaffold/scaffold-constants.js +7 -1
- package/esm/scaffold/scaffold.d.ts +30 -2
- package/esm/scaffold/scaffold.js +43 -4
- package/esm/select/core/base-select-adapter.d.ts +5 -3
- package/esm/select/core/base-select-adapter.js +10 -9
- package/esm/select/core/base-select-constants.d.ts +11 -0
- package/esm/select/core/base-select-constants.js +1 -0
- package/esm/select/core/base-select-foundation.js +3 -3
- package/esm/select/core/base-select.d.ts +3 -3
- package/esm/select/select/select-adapter.d.ts +14 -60
- package/esm/select/select/select-adapter.js +52 -111
- package/esm/select/select/select-constants.d.ts +16 -14
- package/esm/select/select/select-constants.js +8 -16
- package/esm/select/select/select-foundation.d.ts +12 -58
- package/esm/select/select/select-foundation.js +45 -240
- package/esm/select/select/select.d.ts +17 -27
- package/esm/select/select/select.js +54 -62
- package/esm/select/select-dropdown/select-dropdown-adapter.d.ts +2 -2
- package/esm/select/select-dropdown/select-dropdown-adapter.js +1 -1
- package/esm/select/select-dropdown/select-dropdown.d.ts +0 -2
- package/esm/select/select-dropdown/select-dropdown.js +2 -4
- package/esm/slider/slider.d.ts +2 -2
- package/esm/slider/slider.js +2 -2
- package/esm/split-view/split-view/split-view.js +1 -1
- package/esm/split-view/split-view-panel/split-view-panel-adapter.d.ts +5 -10
- package/esm/split-view/split-view-panel/split-view-panel-adapter.js +7 -15
- package/esm/split-view/split-view-panel/split-view-panel-constants.d.ts +3 -3
- package/esm/split-view/split-view-panel/split-view-panel-constants.js +3 -3
- package/esm/split-view/split-view-panel/split-view-panel-foundation.js +0 -1
- package/esm/split-view/split-view-panel/split-view-panel-utils.js +2 -2
- package/esm/split-view/split-view-panel/split-view-panel.d.ts +0 -2
- package/esm/split-view/split-view-panel/split-view-panel.js +6 -6
- package/esm/stepper/step/step-adapter.d.ts +2 -9
- package/esm/stepper/step/step-adapter.js +3 -18
- package/esm/stepper/step/step-constants.js +21 -21
- package/esm/stepper/step/step-foundation.js +0 -2
- package/esm/stepper/step/step.d.ts +53 -0
- package/esm/stepper/step/step.js +60 -3
- package/esm/stepper/stepper/stepper-constants.js +9 -9
- package/esm/stepper/stepper/stepper.js +1 -1
- package/esm/switch/switch-adapter.d.ts +0 -32
- package/esm/switch/switch-adapter.js +15 -107
- package/esm/switch/switch-component-delegate.js +1 -1
- package/esm/switch/switch-constants.d.ts +24 -14
- package/esm/switch/switch-constants.js +11 -14
- package/esm/switch/switch-foundation.d.ts +5 -11
- package/esm/switch/switch-foundation.js +25 -31
- package/esm/switch/switch.d.ts +19 -19
- package/esm/switch/switch.js +59 -81
- package/esm/text-field/text-field-adapter.d.ts +2 -2
- package/esm/text-field/text-field-adapter.js +5 -2
- package/esm/text-field/text-field-foundation.d.ts +2 -2
- package/esm/text-field/text-field-foundation.js +2 -2
- package/esm/text-field/text-field.d.ts +1 -1
- package/esm/text-field/text-field.js +2 -2
- package/esm/time-picker/time-picker-adapter.d.ts +6 -2
- package/esm/time-picker/time-picker-adapter.js +7 -3
- package/esm/time-picker/time-picker-foundation.js +10 -10
- package/esm/time-picker/time-picker.js +2 -2
- package/esm/toast/toast-adapter.d.ts +18 -69
- package/esm/toast/toast-adapter.js +24 -121
- package/esm/toast/toast-constants.d.ts +25 -36
- package/esm/toast/toast-constants.js +20 -40
- package/esm/toast/toast-foundation.d.ts +22 -37
- package/esm/toast/toast-foundation.js +92 -92
- package/esm/toast/toast.d.ts +83 -24
- package/esm/toast/toast.js +126 -29
- package/esm/tooltip/tooltip-adapter.d.ts +1 -0
- package/esm/tooltip/tooltip-foundation.js +3 -0
- package/esm/tooltip/tooltip.d.ts +3 -1
- package/esm/tooltip/tooltip.js +4 -0
- package/package.json +1 -6
- package/styles/backdrop/_animations.scss +24 -0
- package/styles/backdrop/_core.scss +41 -0
- package/styles/backdrop/_token-utils.scss +30 -0
- package/styles/backdrop/backdrop.scss +38 -11
- package/{esm/radio/radio-group/radio-group-component-delegate.js → styles/backdrop/index.scss} +1 -0
- package/styles/bottom-sheet/_mixins.scss +3 -8
- package/styles/bottom-sheet/bottom-sheet.scss +0 -4
- package/styles/calendar/calendar-menu/calendar-menu.scss +1 -1
- package/styles/calendar/calendar.scss +1 -1
- package/styles/card/_core.scss +35 -0
- package/styles/card/_token-utils.scss +30 -0
- package/styles/card/card.scss +37 -3
- package/{esm/radio/radio-group/radio-group-component-delegate.d.ts → styles/card/index.scss} +1 -0
- package/styles/checkbox/_core.scss +9 -20
- package/styles/checkbox/checkbox.scss +2 -8
- package/styles/chip-field/_core.scss +21 -17
- package/styles/chip-field/_token-utils.scss +30 -0
- package/styles/chip-field/chip-field.scss +68 -3
- package/{dist/popup/forge-popup.css → styles/chip-field/index.scss} +1 -1
- package/styles/chips/chip/_core.scss +1 -1
- package/styles/core/styles/tokens/backdrop/_tokens.scss +29 -0
- package/styles/core/styles/tokens/card/_tokens.scss +33 -0
- package/styles/core/styles/tokens/checkbox/_tokens.scss +4 -3
- package/styles/core/styles/tokens/chip-field/_tokens.scss +16 -0
- package/styles/core/styles/tokens/dialog/_tokens.scss +82 -0
- package/styles/core/styles/tokens/field/_tokens.scss +3 -1
- package/styles/core/styles/tokens/icon/_tokens.scss +20 -0
- package/styles/core/styles/tokens/label-value/_tokens.scss +34 -0
- package/styles/core/styles/tokens/list/list/_tokens.scss +2 -3
- package/styles/core/styles/tokens/list/list-item/_tokens.scss +7 -4
- package/styles/core/styles/tokens/popover/_tokens.scss +29 -7
- package/styles/core/styles/tokens/scaffold/_tokens.scss +18 -0
- package/styles/core/styles/tokens/select/_tokens.scss +18 -0
- package/styles/core/styles/tokens/stepper/step/_tokens.scss +62 -0
- package/styles/core/styles/tokens/toast/_tokens.scss +39 -0
- package/styles/dialog/_animations.scss +82 -0
- package/styles/dialog/_core.scss +310 -0
- package/styles/dialog/_token-utils.scss +30 -0
- package/styles/dialog/dialog.scss +356 -6
- package/styles/dialog/forge-dialog-utils.scss +23 -6
- package/styles/dialog/index.scss +7 -0
- package/styles/{field-next → field}/_core.layout.scss +6 -4
- package/styles/field/_core.scss +200 -50
- package/styles/{field-next → field}/_core.shape.scss +5 -0
- package/styles/{field-next → field}/_core.variant.scss +1 -0
- package/styles/{field-next → field}/field.scss +39 -12
- package/styles/forge-core.scss +2 -6
- package/styles/forge.scss +0 -4
- package/styles/icon/_core.scss +27 -0
- package/styles/icon/_token-utils.scss +30 -0
- package/styles/icon/icon.scss +27 -12
- package/styles/icon/index.scss +6 -0
- package/styles/label-value/_core.scss +85 -0
- package/styles/label-value/_token-utils.scss +30 -0
- package/styles/label-value/index.scss +6 -0
- package/styles/label-value/label-value.scss +71 -3
- package/styles/list/list/_core.scss +6 -2
- package/styles/list/list/list.scss +4 -0
- package/styles/list/list-item/_core.scss +3 -0
- package/styles/popover/_animations.scss +30 -0
- package/styles/popover/_core.scss +43 -6
- package/styles/popover/popover.scss +227 -170
- package/styles/scaffold/_core.scss +98 -0
- package/styles/scaffold/_token-utils.scss +30 -0
- package/styles/scaffold/index.scss +6 -0
- package/styles/scaffold/scaffold.scss +85 -5
- package/{dist/esm/chunks/chunk.WF2MFLG4.js → styles/select/index.scss} +1 -1
- package/styles/select/select/_core.scss +31 -15
- package/styles/select/select/_token-utils.scss +31 -0
- package/styles/select/select/select.scss +50 -8
- package/styles/split-view/split-view/split-view.scss +0 -1
- package/styles/split-view/split-view-panel/_mixins.scss +1 -0
- package/styles/split-view/split-view-panel/split-view-panel.scss +7 -1
- package/styles/stepper/step/_core.scss +391 -0
- package/styles/stepper/step/_token-utils.scss +31 -0
- package/styles/stepper/step/step.scss +261 -81
- package/styles/stepper/stepper/_core.scss +49 -0
- package/styles/stepper/stepper/stepper.scss +38 -4
- package/styles/switch/_core.scss +3 -2
- package/styles/theme/_theme-dark.scss +8 -8
- package/styles/toast/_animations.scss +42 -0
- package/styles/toast/_core.scss +73 -0
- package/styles/toast/_token-utils.scss +30 -0
- package/styles/toast/index.scss +6 -0
- package/styles/toast/toast.scss +173 -6
- package/styles/utils/_mixins-core.scss +5 -9
- package/dist/dialog/forge-dialog.css +0 -6
- package/dist/esm/chunks/chunk.24MZM3AY.js +0 -7
- package/dist/esm/chunks/chunk.24MZM3AY.js.map +0 -7
- package/dist/esm/chunks/chunk.3L77JY5H.js +0 -7
- package/dist/esm/chunks/chunk.3TIBP6QT.js +0 -7
- package/dist/esm/chunks/chunk.3U222LE4.js +0 -7
- package/dist/esm/chunks/chunk.45PPQY45.js +0 -177
- package/dist/esm/chunks/chunk.45PPQY45.js.map +0 -7
- package/dist/esm/chunks/chunk.4UU6PWR2.js +0 -7
- package/dist/esm/chunks/chunk.4UU6PWR2.js.map +0 -7
- package/dist/esm/chunks/chunk.5A34DJLZ.js +0 -7
- package/dist/esm/chunks/chunk.5A34DJLZ.js.map +0 -7
- package/dist/esm/chunks/chunk.5UGN5FYV.js +0 -7
- package/dist/esm/chunks/chunk.5UZ2DEW3.js +0 -7
- package/dist/esm/chunks/chunk.5UZ2DEW3.js.map +0 -7
- package/dist/esm/chunks/chunk.656X22EF.js +0 -7
- package/dist/esm/chunks/chunk.656X22EF.js.map +0 -7
- package/dist/esm/chunks/chunk.66YURKP2.js +0 -7
- package/dist/esm/chunks/chunk.66YURKP2.js.map +0 -7
- package/dist/esm/chunks/chunk.6GSVB5NB.js.map +0 -7
- package/dist/esm/chunks/chunk.AFJ7QEVI.js +0 -7
- package/dist/esm/chunks/chunk.AFJ7QEVI.js.map +0 -7
- package/dist/esm/chunks/chunk.BETICEYY.js +0 -7
- package/dist/esm/chunks/chunk.BEUQVZKZ.js +0 -7
- package/dist/esm/chunks/chunk.BMQAVBWZ.js +0 -7
- package/dist/esm/chunks/chunk.BMQAVBWZ.js.map +0 -7
- package/dist/esm/chunks/chunk.CIUPY66Y.js +0 -7
- package/dist/esm/chunks/chunk.CIUPY66Y.js.map +0 -7
- package/dist/esm/chunks/chunk.CSCZRSDT.js +0 -7
- package/dist/esm/chunks/chunk.CSCZRSDT.js.map +0 -7
- package/dist/esm/chunks/chunk.CWBDPBYO.js +0 -7
- package/dist/esm/chunks/chunk.CWBDPBYO.js.map +0 -7
- package/dist/esm/chunks/chunk.D7RH43XD.js +0 -7
- package/dist/esm/chunks/chunk.D7RH43XD.js.map +0 -7
- package/dist/esm/chunks/chunk.DCCFF327.js +0 -7
- package/dist/esm/chunks/chunk.EO3HELQ2.js +0 -15
- package/dist/esm/chunks/chunk.FB4MXEIW.js +0 -7
- package/dist/esm/chunks/chunk.FB4MXEIW.js.map +0 -7
- package/dist/esm/chunks/chunk.G2HRYIIZ.js +0 -7
- package/dist/esm/chunks/chunk.G2HRYIIZ.js.map +0 -7
- package/dist/esm/chunks/chunk.G3GTO5ZC.js +0 -7
- package/dist/esm/chunks/chunk.G3GTO5ZC.js.map +0 -7
- package/dist/esm/chunks/chunk.GL2H6QOP.js +0 -7
- package/dist/esm/chunks/chunk.GL2H6QOP.js.map +0 -7
- package/dist/esm/chunks/chunk.HBAC6E7O.js +0 -7
- package/dist/esm/chunks/chunk.HYTFCFP6.js +0 -7
- package/dist/esm/chunks/chunk.HYTFCFP6.js.map +0 -7
- package/dist/esm/chunks/chunk.IM36A2ZI.js +0 -7
- package/dist/esm/chunks/chunk.IM36A2ZI.js.map +0 -7
- package/dist/esm/chunks/chunk.IWVAI6XM.js.map +0 -7
- package/dist/esm/chunks/chunk.JCEKCW4B.js +0 -7
- package/dist/esm/chunks/chunk.JCEKCW4B.js.map +0 -7
- package/dist/esm/chunks/chunk.JVWJHSPM.js +0 -7
- package/dist/esm/chunks/chunk.KDUH2DUE.js +0 -7
- package/dist/esm/chunks/chunk.KRKKMTXR.js +0 -7
- package/dist/esm/chunks/chunk.KRKKMTXR.js.map +0 -7
- package/dist/esm/chunks/chunk.LKA5HQQY.js +0 -7
- package/dist/esm/chunks/chunk.LKA5HQQY.js.map +0 -7
- package/dist/esm/chunks/chunk.MC3UAHWS.js +0 -7
- package/dist/esm/chunks/chunk.MC3UAHWS.js.map +0 -7
- package/dist/esm/chunks/chunk.MCR34SZQ.js +0 -7
- package/dist/esm/chunks/chunk.MGLWXAZO.js +0 -18
- package/dist/esm/chunks/chunk.MPUP6QAP.js +0 -7
- package/dist/esm/chunks/chunk.MZRAL4MY.js +0 -7
- package/dist/esm/chunks/chunk.MZRAL4MY.js.map +0 -7
- package/dist/esm/chunks/chunk.N632SJ7X.js +0 -7
- package/dist/esm/chunks/chunk.N632SJ7X.js.map +0 -7
- package/dist/esm/chunks/chunk.NHOGZDLN.js +0 -7
- package/dist/esm/chunks/chunk.NHOGZDLN.js.map +0 -7
- package/dist/esm/chunks/chunk.NIUX6DVF.js +0 -12
- package/dist/esm/chunks/chunk.NIUX6DVF.js.map +0 -7
- package/dist/esm/chunks/chunk.OSBNFFCI.js.map +0 -7
- package/dist/esm/chunks/chunk.OY3TG55O.js +0 -7
- package/dist/esm/chunks/chunk.OY3TG55O.js.map +0 -7
- package/dist/esm/chunks/chunk.QCRO5NSG.js +0 -7
- package/dist/esm/chunks/chunk.QCRO5NSG.js.map +0 -7
- package/dist/esm/chunks/chunk.QKYCMDLB.js +0 -7
- package/dist/esm/chunks/chunk.R6VPRRTT.js +0 -7
- package/dist/esm/chunks/chunk.RFCIELJM.js +0 -7
- package/dist/esm/chunks/chunk.RFCIELJM.js.map +0 -7
- package/dist/esm/chunks/chunk.RJC42RNR.js +0 -7
- package/dist/esm/chunks/chunk.RJC42RNR.js.map +0 -7
- package/dist/esm/chunks/chunk.SKBOB2BD.js +0 -7
- package/dist/esm/chunks/chunk.SKBOB2BD.js.map +0 -7
- package/dist/esm/chunks/chunk.SOKORSUV.js +0 -7
- package/dist/esm/chunks/chunk.STSAE2XP.js +0 -7
- package/dist/esm/chunks/chunk.SWKKDBO6.js +0 -7
- package/dist/esm/chunks/chunk.SWKKDBO6.js.map +0 -7
- package/dist/esm/chunks/chunk.SYKZ74SL.js +0 -7
- package/dist/esm/chunks/chunk.SYKZ74SL.js.map +0 -7
- package/dist/esm/chunks/chunk.UKVC23E5.js +0 -7
- package/dist/esm/chunks/chunk.UKVC23E5.js.map +0 -7
- package/dist/esm/chunks/chunk.UOD3A7M4.js +0 -7
- package/dist/esm/chunks/chunk.UQQQSJVM.js +0 -7
- package/dist/esm/chunks/chunk.V3X77TCO.js +0 -7
- package/dist/esm/chunks/chunk.V3X77TCO.js.map +0 -7
- package/dist/esm/chunks/chunk.V7ILFIOR.js +0 -7
- package/dist/esm/chunks/chunk.VBJ4WUVH.js +0 -7
- package/dist/esm/chunks/chunk.VBJ4WUVH.js.map +0 -7
- package/dist/esm/chunks/chunk.VZ2XONDI.js +0 -7
- package/dist/esm/chunks/chunk.VZ2XONDI.js.map +0 -7
- package/dist/esm/chunks/chunk.WAMFFIMP.js +0 -7
- package/dist/esm/chunks/chunk.WAMFFIMP.js.map +0 -7
- package/dist/esm/chunks/chunk.WBCQTZPS.js +0 -7
- package/dist/esm/chunks/chunk.WBCQTZPS.js.map +0 -7
- package/dist/esm/chunks/chunk.WBI34ZVP.js +0 -7
- package/dist/esm/chunks/chunk.WF2MFLG4.js.map +0 -7
- package/dist/esm/chunks/chunk.WPVGFQNY.js +0 -7
- package/dist/esm/chunks/chunk.WPVGFQNY.js.map +0 -7
- package/dist/esm/chunks/chunk.XAZ6EDIZ.js +0 -7
- package/dist/esm/chunks/chunk.XCI7O2KJ.js +0 -7
- package/dist/esm/chunks/chunk.XCI7O2KJ.js.map +0 -7
- package/dist/esm/chunks/chunk.XNJROSDZ.js +0 -7
- package/dist/esm/chunks/chunk.XNJROSDZ.js.map +0 -7
- package/dist/esm/chunks/chunk.Z6GRWPPN.js +0 -7
- package/dist/esm/chunks/chunk.Z6GRWPPN.js.map +0 -7
- package/dist/esm/chunks/chunk.ZLNI2M3F.js +0 -7
- package/dist/esm/chunks/chunk.ZLNI2M3F.js.map +0 -7
- package/dist/esm/chunks/chunk.ZSZFWZAI.js +0 -7
- package/dist/esm/chunks/chunk.ZSZFWZAI.js.map +0 -7
- package/dist/esm/chunks/chunk.ZYKP23JP.js +0 -7
- package/dist/esm/field-next/index.js +0 -7
- package/dist/esm/floating-label/index.js +0 -7
- package/dist/esm/floating-label/index.js.map +0 -7
- package/dist/esm/popup/index.js +0 -7
- package/dist/esm/popup/index.js.map +0 -7
- package/dist/esm/ripple/index.js +0 -7
- package/dist/esm/ripple/index.js.map +0 -7
- package/dist/floating-label/forge-floating-label.css +0 -6
- package/dist/form-field/forge-form-field.css +0 -6
- package/dist/ripple/forge-ripple.css +0 -6
- package/dist/scaffold/forge-scaffold.css +0 -6
- package/esm/backdrop/backdrop-adapter.d.ts +0 -36
- package/esm/backdrop/backdrop-adapter.js +0 -40
- package/esm/backdrop/backdrop-foundation.d.ts +0 -38
- package/esm/backdrop/backdrop-foundation.js +0 -82
- package/esm/field-next/field-adapter.d.ts +0 -56
- package/esm/field-next/field-adapter.js +0 -132
- package/esm/field-next/field-constants.d.ts +0 -95
- package/esm/field-next/field-constants.js +0 -64
- package/esm/field-next/field-foundation.js +0 -221
- package/esm/field-next/field.d.ts +0 -205
- package/esm/field-next/field.js +0 -287
- package/esm/floating-label/floating-label-adapter.d.ts +0 -23
- package/esm/floating-label/floating-label-adapter.js +0 -32
- package/esm/floating-label/floating-label-constants.d.ts +0 -13
- package/esm/floating-label/floating-label-constants.js +0 -14
- package/esm/floating-label/floating-label-foundation.d.ts +0 -20
- package/esm/floating-label/floating-label-foundation.js +0 -74
- package/esm/floating-label/floating-label.d.ts +0 -31
- package/esm/floating-label/floating-label.js +0 -34
- package/esm/floating-label/index.d.ts +0 -9
- package/esm/floating-label/index.js +0 -9
- package/esm/label-value/label-value-adapter.d.ts +0 -24
- package/esm/label-value/label-value-adapter.js +0 -47
- package/esm/label-value/label-value-foundation.d.ts +0 -33
- package/esm/label-value/label-value-foundation.js +0 -80
- package/esm/popup/index.d.ts +0 -10
- package/esm/popup/index.js +0 -14
- package/esm/popup/popup-adapter.d.ts +0 -45
- package/esm/popup/popup-adapter.js +0 -152
- package/esm/popup/popup-constants.d.ts +0 -55
- package/esm/popup/popup-constants.js +0 -53
- package/esm/popup/popup-foundation.d.ts +0 -72
- package/esm/popup/popup-foundation.js +0 -258
- package/esm/popup/popup.d.ts +0 -59
- package/esm/popup/popup.js +0 -102
- package/esm/ripple/forge-ripple.d.ts +0 -17
- package/esm/ripple/forge-ripple.js +0 -22
- package/esm/ripple/index.d.ts +0 -11
- package/esm/ripple/index.js +0 -15
- package/esm/ripple/ripple-adapter.d.ts +0 -23
- package/esm/ripple/ripple-adapter.js +0 -47
- package/esm/ripple/ripple-constants.d.ts +0 -15
- package/esm/ripple/ripple-constants.js +0 -19
- package/esm/ripple/ripple-foundation.d.ts +0 -30
- package/esm/ripple/ripple-foundation.js +0 -48
- package/esm/ripple/ripple.d.ts +0 -36
- package/esm/ripple/ripple.js +0 -65
- package/styles/backdrop/_mixins.scss +0 -31
- package/styles/backdrop/_variables.scss +0 -12
- package/styles/card/_mixins.scss +0 -47
- package/styles/card/_variables.scss +0 -9
- package/styles/chip-field/_base.scss +0 -299
- package/styles/chip-field/_mixins.scss +0 -26
- package/styles/chip-field/_selector.scss +0 -228
- package/styles/chip-field/_variables.scss +0 -76
- package/styles/dialog/_mixins.scss +0 -199
- package/styles/dialog/_variables.scss +0 -22
- package/styles/dialog/forge-dialog.scss +0 -8
- package/styles/field/_base.scss +0 -636
- package/styles/field/_selector.scss +0 -560
- package/styles/field/_utils.scss +0 -48
- package/styles/field/_variables.scss +0 -123
- package/styles/field-next/_core.scss +0 -213
- package/styles/floating-label/_mixins.scss +0 -291
- package/styles/floating-label/_variables.scss +0 -15
- package/styles/floating-label/forge-floating-label.scss +0 -8
- package/styles/form-field/_mixins.scss +0 -71
- package/styles/form-field/forge-form-field.scss +0 -8
- package/styles/icon/_mixins.scss +0 -37
- package/styles/icon/_variables.scss +0 -10
- package/styles/label-value/_mixins.scss +0 -205
- package/styles/label-value/_variables.scss +0 -12
- package/styles/popup/_mixins.scss +0 -86
- package/styles/popup/_variables.scss +0 -7
- package/styles/popup/forge-popup.scss +0 -8
- package/styles/popup/popup.scss +0 -20
- package/styles/ripple/forge-ripple.scss +0 -17
- package/styles/scaffold/_mixins.scss +0 -194
- package/styles/scaffold/forge-scaffold.scss +0 -43
- package/styles/select/select/_base.scss +0 -84
- package/styles/select/select/_mixins.scss +0 -25
- package/styles/select/select/_selector.scss +0 -90
- package/styles/select/select/_variables.scss +0 -16
- package/styles/stepper/step/_mixins.scss +0 -416
- package/styles/stepper/step/_variables.scss +0 -21
- package/styles/stepper/stepper/_mixins.scss +0 -113
- package/styles/toast/_mixins.scss +0 -242
- package/styles/toast/_variables.scss +0 -52
- /package/dist/esm/chunks/{chunk.YS5JZHJ6.js.map → chunk.24SQJBSQ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.IZRURH7C.js.map → chunk.3KAKJGUS.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.KDUH2DUE.js.map → chunk.473WRJ5G.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.USQEIRST.js.map → chunk.5MB6CTBA.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.47U6GVGZ.js.map → chunk.5UOX22ML.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.4NABD6XG.js.map → chunk.6VS3LYAF.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.AOSBUJWW.js.map → chunk.A7BCLPP4.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.7UBIT4NP.js.map → chunk.AG6IRMLZ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.A4UH52SA.js.map → chunk.AGLI4WR4.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.WTUXAH7Z.js.map → chunk.AOVXNX7P.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.AN2E2SSN.js.map → chunk.ASLHRT3N.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.CBLUXYH2.js.map → chunk.BHE6Z5Y2.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.2WRAXA3H.js.map → chunk.BQ52JYLA.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.ROMRJIFR.js.map → chunk.CE35CVDV.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.ZPXMKY72.js.map → chunk.CEGBMUSR.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.GBGGUYTE.js.map → chunk.CFAI4K3E.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.ZIGVO6FN.js.map → chunk.CGFSMACZ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.2537XOFQ.js.map → chunk.E2BE52ME.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.UEYPCCFG.js.map → chunk.ENUKGA2U.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.GA6AO6FJ.js.map → chunk.H5RW3A4M.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.CSOKFDFQ.js.map → chunk.HSADKCGS.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.WBI34ZVP.js.map → chunk.IEABOPNB.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.22C7GQLX.js.map → chunk.IL4S57WO.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.HMJODLAS.js.map → chunk.IQYOLMPG.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.GTKYO6VB.js.map → chunk.JGURMVW7.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.YXHMD73U.js.map → chunk.K6GJNDTY.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.QUWEAFGI.js.map → chunk.KEOLH7G3.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.BIQTNLIF.js.map → chunk.LNTTU2GL.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.2AM2BKEO.js.map → chunk.MFQRXVKO.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.JLSFTWPE.js.map → chunk.MTIPIEXA.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.JSTCCUKZ.js.map → chunk.OEI35LFU.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.QKYCMDLB.js.map → chunk.QCPV5DEG.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.R3AWIPPK.js.map → chunk.QIZBZGYT.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.2XPAYTK4.js.map → chunk.QKTK5XUE.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.R66CYS27.js.map → chunk.QTY25OTN.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.BSV27GU7.js.map → chunk.QVATEY5S.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.SHBDQPPH.js.map → chunk.RONMNRSH.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.FRTSXX33.js.map → chunk.RSYEG2RW.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.A6BIUNPW.js.map → chunk.RXBLU4OJ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.FBDRM4YN.js.map → chunk.S7KEO2CH.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.XU3YSZPA.js.map → chunk.SQ3AZAHF.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.35MHQH7Z.js.map → chunk.SROEDYPL.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.PXRGQHWR.js.map → chunk.TQWZDM6T.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.6JVMCBCR.js.map → chunk.UKBE2FMZ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.3L77JY5H.js.map → chunk.W4HANHUO.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.2W276VOR.js.map → chunk.WMJSYYXQ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.4AEQ7KVU.js.map → chunk.XTJGWT5F.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.YNXWVL4B.js.map → chunk.YPNSK2CK.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.MPUP6QAP.js.map → chunk.YWJVZVZX.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.6XLTVIUD.js.map → chunk.ZA7JY3AY.js.map} +0 -0
- /package/dist/esm/{field-next → field}/base/index.js.map +0 -0
- /package/dist/esm/{field-next → field}/index.js.map +0 -0
- /package/esm/{field-next → field}/base/base-field-adapter.d.ts +0 -0
- /package/esm/{field-next → field}/base/base-field-adapter.js +0 -0
- /package/esm/{field-next → field}/base/base-field-constants.d.ts +0 -0
- /package/esm/{field-next → field}/base/base-field-constants.js +0 -0
- /package/esm/{field-next → field}/base/base-field-foundation.d.ts +0 -0
- /package/esm/{field-next → field}/base/base-field.d.ts +0 -0
- /package/esm/{field-next → field}/base/base-field.js +0 -0
- /package/esm/{field-next → field}/base/index.d.ts +0 -0
- /package/esm/{field-next → field}/base/index.js +0 -0
- /package/esm/{field-next → field}/index.d.ts +0 -0
- /package/esm/{field-next → field}/index.js +0 -0
- /package/styles/{field-next → field}/_core.slotted.scss +0 -0
- /package/styles/{field-next → field}/_core.state.scss +0 -0
- /package/styles/{field-next → field}/_token-utils.scss +0 -0
- /package/styles/{field-next → field}/index.scss +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/paginator/paginator-constants.ts", "../../src/paginator/paginator-foundation.ts", "../../src/paginator/paginator-adapter.ts", "../../src/paginator/paginator.ts", "../../src/paginator/index.ts"],
|
|
4
|
-
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}paginator`;\n\nconst classes = {\n LABEL: 'forge-paginator__label',\n PAGE_SIZE_OPTIONS: 'forge-paginator__page-size-options',\n RANGE_LABEL: 'forge-paginator__range-label',\n RANGE_LABEL_ALTERNATIVE: 'forge-paginator__range-label--alternative',\n FIRST_PAGE_BUTTON: 'forge-paginator__first-page',\n PREVIOUS_PAGE_BUTTON: 'forge-paginator__previous-page',\n NEXT_PAGE_BUTTON: 'forge-paginator__next-page',\n LAST_PAGE_BUTTON: 'forge-paginator__last-page',\n ROOT: 'forge-paginator',\n ALTERNATIVE: 'forge-paginator--alternative',\n ALIGNMENT_START: 'forge-paginator--alignment-start',\n ALIGNMENT_SPACE_BETWEEN: 'forge-paginator--alignment-center',\n ALIGNMENT_END: 'forge-paginator--alignment-end'\n};\n\nconst selectors = {\n LABEL: `.${classes.LABEL}`,\n PAGE_SIZE_SELECT: `.${classes.PAGE_SIZE_OPTIONS}`,\n RANGE_LABEL: `.${classes.RANGE_LABEL}`,\n FIRST_PAGE_BUTTON: `.${classes.FIRST_PAGE_BUTTON}`,\n FIRST_PAGE_ICON_BUTTON: `.${classes.FIRST_PAGE_BUTTON}`,\n PREVIOUS_PAGE_BUTTON: `.${classes.PREVIOUS_PAGE_BUTTON}`,\n NEXT_PAGE_BUTTON: `.${classes.NEXT_PAGE_BUTTON}`,\n LAST_PAGE_BUTTON: `.${classes.LAST_PAGE_BUTTON}`,\n LAST_PAGE_ICON_BUTTON: `.${classes.LAST_PAGE_BUTTON}`,\n ROOT: `.${classes.ROOT}`,\n RANGE_LABEL_ALTERNATIVE: `.${classes.RANGE_LABEL_ALTERNATIVE}`\n};\n\nconst attributes = {\n PAGE_INDEX: 'page-index',\n PAGE_SIZE: 'page-size',\n OFFSET: 'offset',\n PAGE_SIZE_OPTIONS: 'page-size-options',\n TOTAL: 'total',\n LABEL: 'label',\n FIRST_LAST: 'first-last',\n FIRST: 'first',\n DISABLED: 'disabled',\n ALTERNATIVE: 'alternative',\n ALIGNMENT: 'alignment'\n};\n\nconst events = {\n CHANGE: `${elementName}-change`\n} as const;\n\nconst numbers = {\n DEFAULT_PAGE_INDEX: 0,\n DEFAULT_TOTAL: 0,\n DEFAULT_PAGE_SIZE: 25,\n DEFAULT_PAGE_SIZE_OPTIONS: [5, 15, 25, 50, 100]\n};\n\nconst strings = {\n DEFAULT_LABEL: 'Rows per page:',\n RANGE_SEPARATOR_LABEL: 'of',\n FIRST_PAGE: 'first-page',\n PREVIOUS_PAGE: 'previous-page',\n NEXT_PAGE: 'next-page',\n LAST_PAGE: 'last-page',\n PAGE_SIZE: 'page-size'\n};\n\nexport const PAGINATOR_CONSTANTS = {\n elementName,\n classes,\n selectors,\n attributes,\n events,\n numbers,\n strings\n};\n\nexport type PaginatorAlternativeAlignment = 'start' | 'space-between' | 'end';\nexport interface IPaginatorChangeEvent {\n type: string;\n pageSize: number;\n pageIndex: number;\n offset: number;\n}\n\nexport interface IPaginatorRangeState {\n pageSize: number;\n pageIndex: number;\n offset: number;\n pageStart: number;\n pageEnd: number;\n total: number;\n}\n\nexport type PaginatorRangeLabelBuilder = ((state: IPaginatorRangeState) => string) | undefined | null;\n", "import { coerceNumber, ICustomElementFoundation, isArray, isDefined } from '@tylertech/forge-core';\nimport { IPaginatorAdapter, PaginatorFieldIdentifier } from './paginator-adapter';\nimport { PaginatorAlternativeAlignment, PAGINATOR_CONSTANTS, IPaginatorChangeEvent, PaginatorRangeLabelBuilder, IPaginatorRangeState } from './paginator-constants';\nimport { ISelectOption } from '../select';\n\nexport interface IPaginatorFoundation extends ICustomElementFoundation {\n pageIndex: number;\n pageSize: number;\n offset: number;\n total: number;\n pageSizeOptions: number[] | boolean;\n pageSizeLabel: string;\n rangeLabelCallback: PaginatorRangeLabelBuilder;\n focus(options?: FocusOptions): void;\n}\n\nexport class PaginatorFoundation {\n private _pageIndex = PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_INDEX;\n private _pageSize = PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_SIZE;\n private _offset = 0;\n private _total = PAGINATOR_CONSTANTS.numbers.DEFAULT_TOTAL;\n private _pageSizeOptions: ISelectOption[] = PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_SIZE_OPTIONS.map(o => ({ label: `${o}`, value: `${o}` }));\n private _label = PAGINATOR_CONSTANTS.strings.DEFAULT_LABEL;\n private _firstLast = false;\n private _first = false;\n private _disabled = false;\n private _alternative: boolean;\n private _alignment: PaginatorAlternativeAlignment = 'space-between';\n private _rangeLabelCallback: PaginatorRangeLabelBuilder;\n\n private _firstPageListener: (evt: Event) => void;\n private _previousPageListener: (evt: Event) => void;\n private _nextPageListener: (evt: Event) => void;\n private _lastPageListener: (evt: Event) => void;\n private _pageSizeListener: (evt: Event) => void;\n\n constructor(private _adapter: IPaginatorAdapter) {\n this._pageSizeListener = (evt: CustomEvent<number>) => this._onPageSizeChanged(evt);\n this._firstPageListener = (evt: Event) => this._onFirstPage(evt);\n this._previousPageListener = (evt: Event) => this._onPreviousPage(evt);\n this._nextPageListener = (evt: Event) => this._onNextPage(evt);\n this._lastPageListener = (evt: Event) => this._onLastPage(evt);\n }\n\n public initialize(): void {\n this._updateRangeLabel();\n this._adapter.setLabel(this._label);\n this._adapter.setPageSizeOptions(this._pageSizeOptions);\n this._adapter.setPageSize(this._pageSize);\n this._attachListeners();\n this._toggleFirstLastButtons();\n this._syncInteractionState();\n }\n\n public disconnect(): void {\n this._detachListeners();\n }\n\n public focus(options?: FocusOptions): void {\n this._adapter.setFocus(options);\n }\n\n private _attachListeners(): void {\n this._adapter.attachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.attachFirstPageListener(this._firstPageListener);\n this._adapter.attachPreviousPageListener(this._previousPageListener);\n this._adapter.attachNextPageListener(this._nextPageListener);\n this._adapter.attachLastPageListener(this._lastPageListener);\n }\n\n private _detachListeners(): void {\n this._adapter.detachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.detachFirstPageListener(this._firstPageListener);\n this._adapter.detachPreviousPageListener(this._previousPageListener);\n this._adapter.detachNextPageListener(this._nextPageListener);\n this._adapter.detachLastPageListener(this._lastPageListener);\n }\n\n private _onFirstPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasFirstPage()) {\n return;\n }\n\n const firstPage = 0;\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.FIRST_PAGE, { pageIndex: firstPage });\n if (canPage) {\n this._applyPageIndex(firstPage);\n }\n }\n\n private _onPreviousPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasPreviousPage()) {\n return;\n }\n \n const prevPage = this._pageIndex - 1;\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.PREVIOUS_PAGE, { pageIndex: prevPage });\n if (canPage) {\n this._applyPageIndex(prevPage);\n }\n }\n\n private _onNextPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasNextPage()) {\n return;\n }\n\n const nextPage = this._pageIndex + 1;\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.NEXT_PAGE, { pageIndex: nextPage });\n if (canPage) {\n this._applyPageIndex(nextPage);\n }\n }\n\n private _onLastPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasLastPage()) {\n return;\n }\n\n const lastPage = this._getMaxPages();\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.LAST_PAGE, { pageIndex: lastPage });\n if (canPage) {\n this._applyPageIndex(lastPage);\n }\n }\n\n private _onPageSizeChanged(evt: CustomEvent): void {\n evt.stopPropagation();\n\n const pageSize = Number(evt.detail);\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.PAGE_SIZE, { pageIndex: 0, pageSize });\n if (canPage) {\n this._applyPageIndex(0);\n this._applyPageSize(pageSize);\n } else {\n evt.preventDefault();\n }\n }\n\n private _emitChangeEvent(type: string, { pageSize = this._pageSize, pageIndex = this._pageIndex } = {}): boolean {\n const offset = pageIndex * pageSize;\n const detail: IPaginatorChangeEvent = { type, pageSize, pageIndex, offset };\n return this._adapter.emitHostEvent(PAGINATOR_CONSTANTS.events.CHANGE, detail, true, true);\n }\n\n private _getMaxPages(): number {\n return Math.ceil(this._total / this._pageSize) - 1;\n }\n\n private _updateRangeLabel(): void {\n let rangeLabel: string;\n\n if (typeof this._rangeLabelCallback === 'function') {\n const state: IPaginatorRangeState = {\n pageSize: this._pageSize,\n pageIndex: this._pageIndex,\n offset: this._offset,\n pageStart: (this._pageIndex * this._pageSize) + 1,\n pageEnd: Math.min((this._pageIndex + 1) * this._pageSize, this._total),\n total: this._total\n };\n rangeLabel = this._rangeLabelCallback.call(null, state);\n } else {\n if (this.pageSize > 1) {\n const startIndex = this._pageIndex * this._pageSize;\n const indexStart = Math.floor(startIndex / this._pageSize) || 0;\n const pageStart = (indexStart * this._pageSize) + 1;\n const pageEnd = startIndex < this._total ? Math.min(startIndex + this._pageSize, this._total) : startIndex + this._pageSize;\n rangeLabel = `${pageStart}-${pageEnd} ${PAGINATOR_CONSTANTS.strings.RANGE_SEPARATOR_LABEL} ${this._total}`;\n } else {\n rangeLabel = `${this._pageIndex + 1} ${PAGINATOR_CONSTANTS.strings.RANGE_SEPARATOR_LABEL} ${this._total}`;\n }\n }\n\n this._adapter.setRangeLabel(rangeLabel);\n }\n\n private _syncInteractionState(): void {\n this._adapter.enableFirstPageButton();\n this._adapter.enablePreviousPageButton();\n this._adapter.enableNextPageButton();\n this._adapter.enableLastPageButton();\n\n const fieldsToDisable: PaginatorFieldIdentifier[] = [];\n\n if (!this._hasFirstPage()) {\n fieldsToDisable.push('first');\n }\n if (!this._hasPreviousPage()) {\n fieldsToDisable.push('previous');\n }\n if (!this._hasNextPage()) {\n fieldsToDisable.push('next');\n }\n if (!this._hasLastPage()) {\n fieldsToDisable.push('last');\n }\n\n this._adapter.tryDisableFields(fieldsToDisable);\n }\n\n private _toggleFirstLastButtons(): void {\n this._toggleFirstButton();\n if (this._firstLast) {\n if (!this._adapter.hasLastPageButton()) {\n this._adapter.showLastPageButton();\n }\n } else {\n if (this._adapter.hasLastPageButton()) {\n this._adapter.hideLastPageButton();\n }\n }\n }\n\n private _toggleFirstButton(): void {\n if (this._first || this._firstLast) {\n if (!this._adapter.hasFirstPageButton()) {\n this._adapter.showFirstPageButton();\n }\n } else {\n if (this._adapter.hasFirstPageButton()) {\n this._adapter.hideFirstPageButton();\n }\n }\n }\n\n private _hasFirstPage(): boolean {\n return this._hasPreviousPage();\n }\n\n private _hasPreviousPage(): boolean {\n return this._pageIndex > 0 && this._pageSize > 0;\n }\n\n private _hasNextPage(): boolean {\n const maxPages = this._getMaxPages();\n return this._pageIndex < maxPages && this._pageSize > 0;\n }\n\n private _hasLastPage(): boolean {\n return this._hasNextPage();\n }\n\n private _computePageIndexFromOffset(value: number): void {\n if (value >= this._total) {\n if (this._total >= this._pageSize) {\n value = this._total - this._pageSize;\n } else {\n value = 0;\n }\n }\n const clampedValue = Math.min(Math.max(value, 0), this._total);\n const pageIndex = Math.floor(clampedValue / this._pageSize);\n this._applyPageIndex(pageIndex);\n }\n\n private _computeOffset(): void {\n if (this._total > 0) {\n this._offset = this._pageIndex * this._pageSize;\n }\n }\n\n private _applyPageIndex(value: number): void {\n this._pageIndex = value;\n this._computeOffset();\n this._updateRangeLabel();\n this._syncInteractionState();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.PAGE_INDEX, this._pageIndex != null, this._pageIndex.toString());\n }\n\n private _applyPageSize(value: number): void {\n this._pageSize = value;\n this._adapter.setPageSize(this._pageSize);\n this._computeOffset();\n this._updateRangeLabel();\n this._syncInteractionState();\n }\n\n private _applyTotal(value: number): void {\n this._total = value;\n this._updateRangeLabel();\n\n if (this._offset > 0 && this._total > 0) {\n this._computePageIndexFromOffset(this._offset);\n }\n\n this._syncInteractionState();\n }\n\n private _applyAlternativeAlignment(): void {\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.ALIGNMENT, this._alignment);\n this._adapter.setAlignment(this._alignment);\n }\n\n private _applyDisabled(disabled: boolean): void {\n this._disabled = disabled;\n if (disabled) {\n this._adapter.disablePageSizeSelect();\n this._adapter.disableFirstPageButton();\n this._adapter.disablePreviousPageButton();\n this._adapter.disableNextPageButton();\n this._adapter.disableLastPageButton();\n } else {\n this._adapter.enablePageSizeSelect();\n this._syncInteractionState();\n }\n }\n\n public get pageIndex(): number {\n return this._pageIndex;\n }\n public set pageIndex(value: number) {\n if (this._pageIndex !== value) {\n if (isDefined(value)) {\n this._applyPageIndex(value);\n } else {\n this._adapter.removeHostAttribute(PAGINATOR_CONSTANTS.attributes.PAGE_INDEX);\n }\n }\n }\n\n public get pageSize(): number {\n return this._pageSize;\n }\n public set pageSize(value: number) {\n if (this._pageSize !== value) {\n this._applyPageSize(value);\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.PAGE_SIZE, `${this._pageSize}`);\n }\n }\n\n public get offset(): number {\n return this._offset;\n }\n public set offset(value: number) {\n if (this._offset !== value) {\n this._offset = value;\n this._computePageIndexFromOffset(value);\n }\n }\n\n public get total(): number {\n return this._total;\n }\n public set total(value: number) {\n if (this._total !== value) {\n this._applyTotal(value);\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.TOTAL, `${this._total}`);\n }\n }\n\n public get pageSizeOptions(): number[] | boolean {\n return this._pageSizeOptions.map(o => Number(o.value));\n }\n public set pageSizeOptions(options: number[] | boolean) {\n if (isArray(options)) {\n this._pageSizeOptions = (options as number[])\n .map(o => ({ label: o.toString(), value: o.toString() }))\n .sort((a, b) => coerceNumber(a.value) - coerceNumber(b.value));\n this._adapter.setPageSizeOptions(this._pageSizeOptions);\n this._adapter.attachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.setPageSizeVisibility(true);\n if (isDefined(this._pageSize) && this._pageSizeOptions.length && !this._pageSizeOptions.find(o => coerceNumber(o.value) === this._pageSize)) {\n const pageSize = coerceNumber(this._pageSizeOptions[0].value);\n this._applyPageSize(pageSize);\n }\n } else if (options.toString().toLowerCase() === 'false') {\n this._adapter.detachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.setPageSizeVisibility(false);\n }\n }\n\n public get label(): string {\n return this._label;\n }\n public set label(value: string) {\n if (this._label !== value) {\n this._label = value;\n this._adapter.setLabel(this._label);\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.LABEL, isDefined(this._label) ? this._label.toString() : '');\n }\n }\n\n public get firstLast(): boolean {\n return this._firstLast;\n }\n public set firstLast(value: boolean) {\n value = Boolean(value);\n if (this._firstLast !== value) {\n this._firstLast = value;\n this._toggleFirstLastButtons();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.FIRST_LAST, this._firstLast);\n }\n }\n\n public get first(): boolean {\n return this._first;\n }\n public set first(value: boolean) {\n value = Boolean(value);\n if (this._first !== value) {\n this._first = value;\n this._toggleFirstButton();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.FIRST, this._first);\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._applyDisabled(value);\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n public get alternative(): boolean {\n return this._alternative;\n }\n public set alternative(value: boolean) {\n if (value !== this._alternative) {\n this._alternative = value;\n this._adapter.setAlternative(this._alternative);\n this._applyAlternativeAlignment();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.ALTERNATIVE, this._alternative);\n }\n }\n\n public get alignment(): PaginatorAlternativeAlignment {\n return this._alignment;\n }\n public set alignment(value: PaginatorAlternativeAlignment) {\n if (value !== this._alignment) {\n this._alignment = value;\n this._applyAlternativeAlignment();\n }\n }\n\n public get rangeLabelCallback(): PaginatorRangeLabelBuilder {\n return this._rangeLabelCallback;\n }\n public set rangeLabelCallback(value: PaginatorRangeLabelBuilder) {\n this._rangeLabelCallback = value;\n this._updateRangeLabel();\n }\n}\n", "import { addClass, getShadowElement, removeAllChildren, removeClass, toggleElementPlaceholder, toggleClass } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IIconButtonComponent } from '../icon-button';\nimport { ISelectComponent, ISelectOption } from '../select';\nimport { IPaginatorComponent } from './paginator';\nimport { PaginatorAlternativeAlignment, PAGINATOR_CONSTANTS } from './paginator-constants';\n\nexport type PaginatorFieldIdentifier = 'first' | 'last' | 'previous' | 'next' | 'page-size';\n\nexport interface IPaginatorAdapter extends IBaseAdapter {\n setLabel(value: string): void;\n setPageSizeOptions(options: ISelectOption[]): void;\n setPageSize(value: number): void;\n setRangeLabel(value: string): void;\n hasFirstPageButton(): boolean;\n showFirstPageButton(): void;\n hideFirstPageButton(): void;\n hasLastPageButton(): boolean;\n showLastPageButton(): void;\n hideLastPageButton(): void;\n attachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void;\n attachFirstPageListener(listener: (evt: Event) => void): void;\n attachPreviousPageListener(listener: (evt: Event) => void): void;\n attachNextPageListener(listener: (evt: Event) => void): void;\n attachLastPageListener(listener: (evt: Event) => void): void;\n detachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void;\n detachFirstPageListener(listener: (evt: Event) => void): void;\n detachPreviousPageListener(listener: (evt: Event) => void): void;\n detachNextPageListener(listener: (evt: Event) => void): void;\n detachLastPageListener(listener: (evt: Event) => void): void;\n disableFirstPageButton(): void;\n enableFirstPageButton(): void;\n disablePreviousPageButton(): void;\n enablePreviousPageButton(): void;\n disableNextPageButton(): void;\n enableNextPageButton(): void;\n disablePageSizeSelect(): void;\n enablePageSizeSelect(): void;\n setPageSizeVisibility(visible: boolean): void;\n disableLastPageButton(): void;\n enableLastPageButton(): void;\n setAlternative(alternative: boolean): void;\n setAlignment(alignment: PaginatorAlternativeAlignment): void;\n hasFocus(): boolean;\n setFocus(options?: FocusOptions): void;\n getFocusedField(): PaginatorFieldIdentifier | null;\n tryDisableFields(fieldsToDisable: PaginatorFieldIdentifier[]): void;\n}\n\n/**\n * Provides facilities for interacting with the internal DOM of `PaginatorComponent`.\n */\nexport class PaginatorAdapter extends BaseAdapter<IPaginatorComponent> implements IPaginatorAdapter {\n private _labelElement: HTMLElement;\n private _root: HTMLElement;\n private _pageSizeSelect: ISelectComponent;\n private _rangeLabel: HTMLElement;\n private _rangeLabelAlternative: HTMLElement;\n private _firstPageButton: HTMLButtonElement;\n private _firstPageIconButton: IIconButtonComponent;\n private _firstPagePlaceholder: Comment;\n private _previousPageButton: HTMLButtonElement;\n private _nextPageButton: HTMLButtonElement;\n private _lastPageButton: HTMLButtonElement;\n private _lastPageIconButton: IIconButtonComponent;\n private _lastPagePlaceholder: Comment;\n\n constructor(component: IPaginatorComponent) {\n super(component);\n this._labelElement = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.LABEL);\n this._root = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.ROOT);\n this._pageSizeSelect = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.PAGE_SIZE_SELECT) as ISelectComponent;\n this._rangeLabel = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.RANGE_LABEL);\n this._rangeLabelAlternative = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.RANGE_LABEL_ALTERNATIVE);\n this._firstPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_BUTTON) as HTMLButtonElement;\n this._firstPageIconButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON) as IIconButtonComponent;\n this._previousPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.PREVIOUS_PAGE_BUTTON) as HTMLButtonElement;\n this._nextPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.NEXT_PAGE_BUTTON) as HTMLButtonElement;\n this._lastPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.LAST_PAGE_BUTTON) as HTMLButtonElement;\n this._lastPageIconButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON) as IIconButtonComponent;\n }\n\n public setLabel(value: string): void {\n this._labelElement.textContent = value;\n }\n\n public setPageSizeOptions(options: ISelectOption[]): void {\n removeAllChildren(this._pageSizeSelect);\n this._pageSizeSelect.options = options;\n }\n\n public setPageSize(value: number): void {\n this._pageSizeSelect.value = value.toString();\n }\n\n public setRangeLabel(value: string): void {\n this._rangeLabel.innerText = value;\n this._rangeLabelAlternative.innerText = value;\n }\n\n public hasFirstPageButton(): boolean {\n return !!getShadowElement(this._component, PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON);\n }\n\n public showFirstPageButton(): void {\n this._firstPagePlaceholder = toggleElementPlaceholder(\n this._component,\n true,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON,\n this._firstPageIconButton,\n this._firstPagePlaceholder\n );\n }\n\n public hideFirstPageButton(): void {\n this._firstPagePlaceholder = toggleElementPlaceholder(\n this._component,\n false,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON,\n this._firstPageIconButton,\n this._firstPagePlaceholder\n );\n }\n\n public hasLastPageButton(): boolean {\n return !!getShadowElement(this._component, PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON);\n }\n\n public showLastPageButton(): void {\n this._lastPagePlaceholder = toggleElementPlaceholder(\n this._component,\n true,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON,\n this._lastPageIconButton,\n this._lastPagePlaceholder\n );\n }\n\n public hideLastPageButton(): void {\n this._lastPagePlaceholder = toggleElementPlaceholder(\n this._component,\n false,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON,\n this._lastPageIconButton,\n this._lastPagePlaceholder\n );\n }\n\n public attachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void {\n this._pageSizeSelect.addEventListener('change', listener);\n }\n\n public attachFirstPageListener(listener: (evt: Event) => void): void {\n this._firstPageButton.addEventListener('click', listener);\n }\n\n public attachPreviousPageListener(listener: (evt: Event) => void): void {\n this._previousPageButton.addEventListener('click', listener);\n }\n\n public attachNextPageListener(listener: (evt: Event) => void): void {\n this._nextPageButton.addEventListener('click', listener);\n }\n\n public attachLastPageListener(listener: (evt: Event) => void): void {\n this._lastPageButton.addEventListener('click', listener);\n }\n\n public detachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void {\n this._pageSizeSelect.removeEventListener('change', listener);\n }\n\n public detachFirstPageListener(listener: (evt: Event) => void): void {\n this._firstPageButton.removeEventListener('click', listener);\n }\n\n public detachPreviousPageListener(listener: (evt: Event) => void): void {\n this._previousPageButton.removeEventListener('click', listener);\n }\n\n public detachNextPageListener(listener: (evt: Event) => void): void {\n this._nextPageButton.removeEventListener('click', listener);\n }\n\n public detachLastPageListener(listener: (evt: Event) => void): void {\n this._lastPageButton.removeEventListener('click', listener);\n }\n\n public disableFirstPageButton(): void {\n this._firstPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enableFirstPageButton(): void {\n this._firstPageButton.removeAttribute('disabled');\n }\n\n public disablePreviousPageButton(): void {\n this._previousPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enablePreviousPageButton(): void {\n this._previousPageButton.removeAttribute('disabled');\n }\n\n public disableNextPageButton(): void {\n this._nextPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enableNextPageButton(): void {\n this._nextPageButton.removeAttribute('disabled');\n }\n\n public disablePageSizeSelect(): void {\n this._pageSizeSelect.setAttribute('disabled', 'disabled');\n }\n\n public enablePageSizeSelect(): void {\n this._pageSizeSelect.removeAttribute('disabled');\n }\n\n public setPageSizeVisibility(visible: boolean): void {\n if (visible) {\n this._pageSizeSelect.style.removeProperty('display');\n } else {\n this._pageSizeSelect.style.display = 'none';\n }\n }\n\n public disableLastPageButton(): void {\n this._lastPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enableLastPageButton(): void {\n this._lastPageButton.removeAttribute('disabled');\n }\n\n public setAlternative(alternative: boolean): void {\n toggleClass(this._root, alternative, PAGINATOR_CONSTANTS.classes.ALTERNATIVE);\n }\n\n public setAlignment(alignment: PaginatorAlternativeAlignment): void {\n removeClass([\n PAGINATOR_CONSTANTS.classes.ALIGNMENT_SPACE_BETWEEN,\n PAGINATOR_CONSTANTS.classes.ALIGNMENT_START,\n PAGINATOR_CONSTANTS.classes.ALIGNMENT_END\n ], this._root);\n\n switch (alignment) {\n case 'start':\n addClass(PAGINATOR_CONSTANTS.classes.ALIGNMENT_START, this._root);\n break;\n case 'end':\n addClass(PAGINATOR_CONSTANTS.classes.ALIGNMENT_END, this._root);\n break;\n case 'space-between':\n default:\n addClass(PAGINATOR_CONSTANTS.classes.ALIGNMENT_SPACE_BETWEEN, this._root);\n break;\n }\n }\n\n public hasFocus(): boolean {\n return this._component.matches(':focus');\n }\n\n public setFocus(options?: FocusOptions): void {\n this._tryFocus([\n this._pageSizeSelect,\n this._firstPageButton,\n this._previousPageButton,\n this._nextPageButton,\n this._lastPageButton\n ], options);\n }\n\n public getFocusedField(): PaginatorFieldIdentifier | null {\n if (this._pageSizeSelect.matches(':focus-within')) {\n return 'page-size';\n } else if (this._firstPageButton.matches(':focus-within')) {\n return 'first';\n } else if (this._previousPageButton.matches(':focus-within')) {\n return 'previous';\n } else if (this._nextPageButton.matches(':focus-within')) {\n return 'next';\n } else if (this._lastPageButton.matches(':focus-within')) {\n return 'last';\n }\n return null;\n }\n\n public tryDisableFields(fieldsToDisable: PaginatorFieldIdentifier[]): void {\n const fieldDisablers = {\n 'first': () => this.disableFirstPageButton(),\n 'last': () => this.disableLastPageButton(),\n 'previous': () => this.disablePreviousPageButton(),\n 'next': () => this.disableNextPageButton()\n };\n fieldsToDisable.forEach(field => fieldDisablers[field]?.());\n }\n\n private _tryFocus(elements: Array<HTMLButtonElement | ISelectComponent>, options?: FocusOptions): void {\n const preventScroll = typeof options?.preventScroll === 'boolean' ? options.preventScroll : true;\n for (const el of elements) {\n if (el && el.isConnected && !el.disabled && el.style.display !== 'none') {\n el.focus({ ...options, preventScroll });\n return;\n }\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, FoundationProperty, coerceBoolean } from '@tylertech/forge-core';\nimport { tylIconFirstPage, tylIconLastPage, tylIconKeyboardArrowRight, tylIconKeyboardArrowLeft } from '@tylertech/tyler-icons/standard';\nimport { PaginatorAlternativeAlignment, PAGINATOR_CONSTANTS, IPaginatorChangeEvent, PaginatorRangeLabelBuilder } from './paginator-constants';\nimport { PaginatorFoundation } from './paginator-foundation';\nimport { PaginatorAdapter } from './paginator-adapter';\nimport { IconButtonComponent } from '../icon-button';\nimport { SelectComponent } from '../select';\nimport { IconComponent, IconRegistry } from '../icon';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\nimport { TooltipComponent } from '../tooltip';\n\nconst template = '<template><div class=\\\"forge-paginator\\\" part=\\\"root\\\"><div class=\\\"forge-paginator__container\\\" part=\\\"container\\\"><div class=\\\"forge-paginator__label\\\" part=\\\"label\\\"></div><forge-select class=\\\"forge-paginator__page-size-options\\\" aria-label=\\\"Choose page size\\\" density=\\\"dense\\\" part=\\\"page-size-options\\\"></forge-select><div class=\\\"forge-paginator__range-label\\\" part=\\\"range-label\\\"></div><forge-icon-button class=\\\"forge-paginator__first-page\\\" part=\\\"first-page-button\\\" part=\\\"first-page-button-element\\\"><forge-icon name=\\\"first_page\\\" part=\\\"first-page-icon\\\"></forge-icon></forge-icon-button><forge-tooltip type=\\\"label\\\" placement=\\\"top\\\">Go to the first page</forge-tooltip><forge-icon-button class=\\\"forge-paginator__previous-page\\\" part=\\\"previous-page-button\\\" part=\\\"previous-page-button-element\\\"><forge-icon name=\\\"keyboard_arrow_left\\\" part=\\\"previous-page-button-icon\\\"></forge-icon></forge-icon-button><forge-tooltip type=\\\"label\\\" placement=\\\"top\\\">Go to the previous page</forge-tooltip><div class=\\\"forge-paginator__range-label--alternative\\\" part=\\\"range-label-alternative\\\"></div><forge-icon-button class=\\\"forge-paginator__next-page\\\" part=\\\"next-page-button\\\" part=\\\"next-page-button-element\\\"><forge-icon name=\\\"keyboard_arrow_right\\\" part=\\\"next-page-icon\\\"></forge-icon></forge-icon-button><forge-tooltip type=\\\"label\\\" placement=\\\"top\\\">Go to the next page</forge-tooltip><forge-icon-button class=\\\"forge-paginator__last-page\\\" part=\\\"last-page-button\\\" part=\\\"last-page-button-element\\\"><forge-icon name=\\\"last_page\\\" part=\\\"last-page-icon\\\"></forge-icon></forge-icon-button><forge-tooltip type=\\\"label\\\" placement=\\\"top\\\">Go to the last page</forge-tooltip></div></div></template>';\nconst styles = '.forge-paginator{display:inline-block}.forge-paginator--alternative{display:-webkit-box;display:flex}.forge-paginator--alternative .forge-paginator__label,.forge-paginator--alternative .forge-paginator__page-size-options,.forge-paginator--alternative .forge-paginator__range-label{display:none}.forge-paginator--alternative .forge-paginator__range-label--alternative{display:inline-block;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit);margin:0 12px}.forge-paginator__range-label--alternative{display:none}.forge-paginator__container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.forge-paginator__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);margin-right:16px}.forge-paginator__page-size-options{margin-right:16px}.forge-paginator__range-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);margin-right:8px}.forge-paginator__first-page,.forge-paginator__last-page,.forge-paginator__next-page,.forge-paginator__previous-page{color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}:host{display:inline-block}:host([hidden]){display:none}:host([alternative]) .forge-paginator--alignment-center .forge-paginator__container{-webkit-box-pack:center;justify-content:center}:host([alternative]) .forge-paginator--alignment-center .forge-paginator__range-label--alternative{margin:0 auto}:host([alternative]) .forge-paginator--alignment-start .forge-paginator__container{-webkit-box-pack:start;justify-content:flex-start}:host([alternative]) .forge-paginator--alignment-end .forge-paginator__container{-webkit-box-pack:end;justify-content:flex-end}:host([alternative]) .forge-paginator .forge-paginator__container{-webkit-box-flex:1;flex:1}';\n\nexport interface IPaginatorComponent extends IBaseComponent {\n pageIndex: number;\n pageSize: number;\n offset: number;\n total: number;\n pageSizeOptions: number[] | boolean;\n label: string;\n firstLast: boolean;\n first: boolean;\n disabled: boolean;\n alternative: boolean;\n alignment: PaginatorAlternativeAlignment;\n rangeLabelCallback: PaginatorRangeLabelBuilder;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-paginator': IPaginatorComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-paginator-change': CustomEvent<IPaginatorChangeEvent>;\n }\n}\n\n/**\n * @tag forge-paginator\n */\n@CustomElement({\n name: PAGINATOR_CONSTANTS.elementName,\n dependencies: [\n IconButtonComponent,\n SelectComponent,\n IconComponent,\n TooltipComponent\n ]\n})\nexport class PaginatorComponent extends BaseComponent implements IPaginatorComponent {\n public static get observedAttributes(): string[] {\n return [\n PAGINATOR_CONSTANTS.attributes.PAGE_INDEX,\n PAGINATOR_CONSTANTS.attributes.PAGE_SIZE,\n PAGINATOR_CONSTANTS.attributes.OFFSET,\n PAGINATOR_CONSTANTS.attributes.TOTAL,\n PAGINATOR_CONSTANTS.attributes.PAGE_SIZE_OPTIONS,\n PAGINATOR_CONSTANTS.attributes.LABEL,\n PAGINATOR_CONSTANTS.attributes.FIRST_LAST,\n PAGINATOR_CONSTANTS.attributes.FIRST,\n PAGINATOR_CONSTANTS.attributes.DISABLED,\n PAGINATOR_CONSTANTS.attributes.ALTERNATIVE,\n PAGINATOR_CONSTANTS.attributes.ALIGNMENT\n ];\n }\n\n private _foundation: PaginatorFoundation;\n\n constructor() {\n super();\n IconRegistry.define([\n tylIconFirstPage,\n tylIconKeyboardArrowLeft,\n tylIconKeyboardArrowRight,\n tylIconLastPage\n ]);\n attachShadowTemplate(this, template, styles);\n this._foundation = new PaginatorFoundation(new PaginatorAdapter(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 PAGINATOR_CONSTANTS.attributes.PAGE_INDEX:\n this.pageIndex = Number(newValue) || PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_INDEX;\n break;\n case PAGINATOR_CONSTANTS.attributes.PAGE_SIZE:\n this.pageSize = Number(newValue) || PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_SIZE;\n break;\n case PAGINATOR_CONSTANTS.attributes.OFFSET:\n this.offset = Number(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.TOTAL:\n this.total = Number(newValue) || PAGINATOR_CONSTANTS.numbers.DEFAULT_TOTAL;\n break;\n case PAGINATOR_CONSTANTS.attributes.PAGE_SIZE_OPTIONS:\n this.pageSizeOptions = newValue as any;\n break;\n case PAGINATOR_CONSTANTS.attributes.LABEL:\n this.label = newValue;\n break;\n case PAGINATOR_CONSTANTS.attributes.FIRST_LAST:\n this.firstLast = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.FIRST:\n this.first = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.ALTERNATIVE:\n this.alternative = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.ALIGNMENT:\n this.alignment = newValue as PaginatorAlternativeAlignment;\n break;\n }\n }\n\n /** The zero-based page index. Default is 0. */\n @FoundationProperty()\n public declare pageIndex: number;\n\n /** Number of items to display on a page. By default set to 25. */\n @FoundationProperty()\n public declare pageSize: number;\n\n /** Sets page index by providing the number of items to skip. The getter for this property returns the number of items to skip. */\n @FoundationProperty()\n public declare offset: number;\n\n /** The total number of items to be paginated. Default is 0. */\n @FoundationProperty()\n public declare total: number;\n\n /** The set of provided page size options to display to the user. */\n @FoundationProperty()\n public declare pageSizeOptions: number[] | boolean;\n\n /** A label for the paginator. Default is \"Rows per page:\". */\n @FoundationProperty()\n public declare label: string;\n\n /** Whether to show the first page and last page buttons. Default is false. */\n @FoundationProperty()\n public declare firstLast: boolean;\n\n /** Whether to show the first page button. Default is false. */\n @FoundationProperty()\n public declare first: boolean;\n\n /** Whether the paginator is disabled. Default is false. */\n @FoundationProperty()\n public declare disabled: boolean;\n\n @FoundationProperty()\n public declare alternative: boolean;\n\n @FoundationProperty()\n public declare alignment: PaginatorAlternativeAlignment;\n\n @FoundationProperty()\n public declare rangeLabelCallback: PaginatorRangeLabelBuilder;\n\n public override focus(options?: FocusOptions): void {\n this._foundation.focus(options);\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { PaginatorComponent } from './paginator';\n\nexport * from './paginator-adapter';\nexport * from './paginator-constants';\nexport * from './paginator-foundation';\nexport * from './paginator';\n\nexport function definePaginatorComponent(): void {\n defineCustomElement(PaginatorComponent);\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}paginator`;\n\nconst classes = {\n LABEL: 'forge-paginator__label',\n PAGE_SIZE_OPTIONS: 'forge-paginator__page-size-options',\n RANGE_LABEL: 'forge-paginator__range-label',\n RANGE_LABEL_ALTERNATIVE: 'forge-paginator__range-label--alternative',\n FIRST_PAGE_BUTTON: 'forge-paginator__first-page',\n PREVIOUS_PAGE_BUTTON: 'forge-paginator__previous-page',\n NEXT_PAGE_BUTTON: 'forge-paginator__next-page',\n LAST_PAGE_BUTTON: 'forge-paginator__last-page',\n ROOT: 'forge-paginator',\n ALTERNATIVE: 'forge-paginator--alternative',\n ALIGNMENT_START: 'forge-paginator--alignment-start',\n ALIGNMENT_SPACE_BETWEEN: 'forge-paginator--alignment-center',\n ALIGNMENT_END: 'forge-paginator--alignment-end'\n};\n\nconst selectors = {\n LABEL: `.${classes.LABEL}`,\n PAGE_SIZE_SELECT: `.${classes.PAGE_SIZE_OPTIONS}`,\n RANGE_LABEL: `.${classes.RANGE_LABEL}`,\n FIRST_PAGE_BUTTON: `.${classes.FIRST_PAGE_BUTTON}`,\n FIRST_PAGE_ICON_BUTTON: `.${classes.FIRST_PAGE_BUTTON}`,\n PREVIOUS_PAGE_BUTTON: `.${classes.PREVIOUS_PAGE_BUTTON}`,\n NEXT_PAGE_BUTTON: `.${classes.NEXT_PAGE_BUTTON}`,\n LAST_PAGE_BUTTON: `.${classes.LAST_PAGE_BUTTON}`,\n LAST_PAGE_ICON_BUTTON: `.${classes.LAST_PAGE_BUTTON}`,\n ROOT: `.${classes.ROOT}`,\n RANGE_LABEL_ALTERNATIVE: `.${classes.RANGE_LABEL_ALTERNATIVE}`\n};\n\nconst attributes = {\n PAGE_INDEX: 'page-index',\n PAGE_SIZE: 'page-size',\n OFFSET: 'offset',\n PAGE_SIZE_OPTIONS: 'page-size-options',\n TOTAL: 'total',\n LABEL: 'label',\n FIRST_LAST: 'first-last',\n FIRST: 'first',\n DISABLED: 'disabled',\n ALTERNATIVE: 'alternative',\n ALIGNMENT: 'alignment'\n};\n\nconst events = {\n CHANGE: `${elementName}-change`\n} as const;\n\nconst numbers = {\n DEFAULT_PAGE_INDEX: 0,\n DEFAULT_TOTAL: 0,\n DEFAULT_PAGE_SIZE: 25,\n DEFAULT_PAGE_SIZE_OPTIONS: [5, 15, 25, 50, 100]\n};\n\nconst strings = {\n DEFAULT_LABEL: 'Rows per page:',\n RANGE_SEPARATOR_LABEL: 'of',\n FIRST_PAGE: 'first-page',\n PREVIOUS_PAGE: 'previous-page',\n NEXT_PAGE: 'next-page',\n LAST_PAGE: 'last-page',\n PAGE_SIZE: 'page-size'\n};\n\nexport const PAGINATOR_CONSTANTS = {\n elementName,\n classes,\n selectors,\n attributes,\n events,\n numbers,\n strings\n};\n\nexport type PaginatorAlternativeAlignment = 'start' | 'space-between' | 'end';\nexport interface IPaginatorChangeEvent {\n type: string;\n pageSize: number;\n pageIndex: number;\n offset: number;\n}\n\nexport interface IPaginatorRangeState {\n pageSize: number;\n pageIndex: number;\n offset: number;\n pageStart: number;\n pageEnd: number;\n total: number;\n}\n\nexport type PaginatorRangeLabelBuilder = ((state: IPaginatorRangeState) => string) | undefined | null;\n", "import { coerceNumber, ICustomElementFoundation, isArray, isDefined } from '@tylertech/forge-core';\nimport { IPaginatorAdapter, PaginatorFieldIdentifier } from './paginator-adapter';\nimport { PaginatorAlternativeAlignment, PAGINATOR_CONSTANTS, IPaginatorChangeEvent, PaginatorRangeLabelBuilder, IPaginatorRangeState } from './paginator-constants';\nimport { ISelectOption } from '../select';\n\nexport interface IPaginatorFoundation extends ICustomElementFoundation {\n pageIndex: number;\n pageSize: number;\n offset: number;\n total: number;\n pageSizeOptions: number[] | boolean;\n pageSizeLabel: string;\n rangeLabelCallback: PaginatorRangeLabelBuilder;\n focus(options?: FocusOptions): void;\n}\n\nexport class PaginatorFoundation {\n private _pageIndex = PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_INDEX;\n private _pageSize = PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_SIZE;\n private _offset = 0;\n private _total = PAGINATOR_CONSTANTS.numbers.DEFAULT_TOTAL;\n private _pageSizeOptions: ISelectOption[] = PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_SIZE_OPTIONS.map(o => ({ label: `${o}`, value: `${o}` }));\n private _label = PAGINATOR_CONSTANTS.strings.DEFAULT_LABEL;\n private _firstLast = false;\n private _first = false;\n private _disabled = false;\n private _alternative: boolean;\n private _alignment: PaginatorAlternativeAlignment = 'space-between';\n private _rangeLabelCallback: PaginatorRangeLabelBuilder;\n\n private _firstPageListener: (evt: Event) => void;\n private _previousPageListener: (evt: Event) => void;\n private _nextPageListener: (evt: Event) => void;\n private _lastPageListener: (evt: Event) => void;\n private _pageSizeListener: (evt: Event) => void;\n\n constructor(private _adapter: IPaginatorAdapter) {\n this._pageSizeListener = (evt: CustomEvent<number>) => this._onPageSizeChanged(evt);\n this._firstPageListener = (evt: Event) => this._onFirstPage(evt);\n this._previousPageListener = (evt: Event) => this._onPreviousPage(evt);\n this._nextPageListener = (evt: Event) => this._onNextPage(evt);\n this._lastPageListener = (evt: Event) => this._onLastPage(evt);\n }\n\n public initialize(): void {\n this._updateRangeLabel();\n this._adapter.setLabel(this._label);\n this._adapter.setPageSizeOptions(this._pageSizeOptions);\n this._adapter.setPageSize(this._pageSize);\n this._attachListeners();\n this._toggleFirstLastButtons();\n this._syncInteractionState();\n }\n\n public disconnect(): void {\n this._detachListeners();\n }\n\n public focus(options?: FocusOptions): void {\n this._adapter.setFocus(options);\n }\n\n private _attachListeners(): void {\n this._adapter.attachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.attachFirstPageListener(this._firstPageListener);\n this._adapter.attachPreviousPageListener(this._previousPageListener);\n this._adapter.attachNextPageListener(this._nextPageListener);\n this._adapter.attachLastPageListener(this._lastPageListener);\n }\n\n private _detachListeners(): void {\n this._adapter.detachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.detachFirstPageListener(this._firstPageListener);\n this._adapter.detachPreviousPageListener(this._previousPageListener);\n this._adapter.detachNextPageListener(this._nextPageListener);\n this._adapter.detachLastPageListener(this._lastPageListener);\n }\n\n private _onFirstPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasFirstPage()) {\n return;\n }\n\n const firstPage = 0;\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.FIRST_PAGE, { pageIndex: firstPage });\n if (canPage) {\n this._applyPageIndex(firstPage);\n }\n }\n\n private _onPreviousPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasPreviousPage()) {\n return;\n }\n \n const prevPage = this._pageIndex - 1;\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.PREVIOUS_PAGE, { pageIndex: prevPage });\n if (canPage) {\n this._applyPageIndex(prevPage);\n }\n }\n\n private _onNextPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasNextPage()) {\n return;\n }\n\n const nextPage = this._pageIndex + 1;\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.NEXT_PAGE, { pageIndex: nextPage });\n if (canPage) {\n this._applyPageIndex(nextPage);\n }\n }\n\n private _onLastPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasLastPage()) {\n return;\n }\n\n const lastPage = this._getMaxPages();\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.LAST_PAGE, { pageIndex: lastPage });\n if (canPage) {\n this._applyPageIndex(lastPage);\n }\n }\n\n private _onPageSizeChanged(evt: CustomEvent): void {\n evt.stopPropagation();\n\n const pageSize = Number(evt.detail);\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.PAGE_SIZE, { pageIndex: 0, pageSize });\n if (canPage) {\n this._applyPageIndex(0);\n this._applyPageSize(pageSize);\n } else {\n evt.preventDefault();\n }\n }\n\n private _emitChangeEvent(type: string, { pageSize = this._pageSize, pageIndex = this._pageIndex } = {}): boolean {\n const offset = pageIndex * pageSize;\n const detail: IPaginatorChangeEvent = { type, pageSize, pageIndex, offset };\n return this._adapter.emitHostEvent(PAGINATOR_CONSTANTS.events.CHANGE, detail, true, true);\n }\n\n private _getMaxPages(): number {\n return Math.ceil(this._total / this._pageSize) - 1;\n }\n\n private _updateRangeLabel(): void {\n let rangeLabel: string;\n\n if (typeof this._rangeLabelCallback === 'function') {\n const state: IPaginatorRangeState = {\n pageSize: this._pageSize,\n pageIndex: this._pageIndex,\n offset: this._offset,\n pageStart: (this._pageIndex * this._pageSize) + 1,\n pageEnd: Math.min((this._pageIndex + 1) * this._pageSize, this._total),\n total: this._total\n };\n rangeLabel = this._rangeLabelCallback.call(null, state);\n } else {\n if (this.pageSize > 1) {\n const startIndex = this._pageIndex * this._pageSize;\n const indexStart = Math.floor(startIndex / this._pageSize) || 0;\n const pageStart = (indexStart * this._pageSize) + 1;\n const pageEnd = startIndex < this._total ? Math.min(startIndex + this._pageSize, this._total) : startIndex + this._pageSize;\n rangeLabel = `${pageStart}-${pageEnd} ${PAGINATOR_CONSTANTS.strings.RANGE_SEPARATOR_LABEL} ${this._total}`;\n } else {\n rangeLabel = `${this._pageIndex + 1} ${PAGINATOR_CONSTANTS.strings.RANGE_SEPARATOR_LABEL} ${this._total}`;\n }\n }\n\n this._adapter.setRangeLabel(rangeLabel);\n }\n\n private _syncInteractionState(): void {\n this._adapter.enableFirstPageButton();\n this._adapter.enablePreviousPageButton();\n this._adapter.enableNextPageButton();\n this._adapter.enableLastPageButton();\n\n const fieldsToDisable: PaginatorFieldIdentifier[] = [];\n\n if (!this._hasFirstPage()) {\n fieldsToDisable.push('first');\n }\n if (!this._hasPreviousPage()) {\n fieldsToDisable.push('previous');\n }\n if (!this._hasNextPage()) {\n fieldsToDisable.push('next');\n }\n if (!this._hasLastPage()) {\n fieldsToDisable.push('last');\n }\n\n this._adapter.tryDisableFields(fieldsToDisable);\n }\n\n private _toggleFirstLastButtons(): void {\n this._toggleFirstButton();\n if (this._firstLast) {\n if (!this._adapter.hasLastPageButton()) {\n this._adapter.showLastPageButton();\n }\n } else {\n if (this._adapter.hasLastPageButton()) {\n this._adapter.hideLastPageButton();\n }\n }\n }\n\n private _toggleFirstButton(): void {\n if (this._first || this._firstLast) {\n if (!this._adapter.hasFirstPageButton()) {\n this._adapter.showFirstPageButton();\n }\n } else {\n if (this._adapter.hasFirstPageButton()) {\n this._adapter.hideFirstPageButton();\n }\n }\n }\n\n private _hasFirstPage(): boolean {\n return this._hasPreviousPage();\n }\n\n private _hasPreviousPage(): boolean {\n return this._pageIndex > 0 && this._pageSize > 0;\n }\n\n private _hasNextPage(): boolean {\n const maxPages = this._getMaxPages();\n return this._pageIndex < maxPages && this._pageSize > 0;\n }\n\n private _hasLastPage(): boolean {\n return this._hasNextPage();\n }\n\n private _computePageIndexFromOffset(value: number): void {\n if (value >= this._total) {\n if (this._total >= this._pageSize) {\n value = this._total - this._pageSize;\n } else {\n value = 0;\n }\n }\n const clampedValue = Math.min(Math.max(value, 0), this._total);\n const pageIndex = Math.floor(clampedValue / this._pageSize);\n this._applyPageIndex(pageIndex);\n }\n\n private _computeOffset(): void {\n if (this._total > 0) {\n this._offset = this._pageIndex * this._pageSize;\n }\n }\n\n private _applyPageIndex(value: number): void {\n this._pageIndex = value;\n this._computeOffset();\n this._updateRangeLabel();\n this._syncInteractionState();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.PAGE_INDEX, this._pageIndex != null, this._pageIndex.toString());\n }\n\n private _applyPageSize(value: number): void {\n this._pageSize = value;\n this._adapter.setPageSize(this._pageSize);\n this._computeOffset();\n this._updateRangeLabel();\n this._syncInteractionState();\n }\n\n private _applyTotal(value: number): void {\n this._total = value;\n this._updateRangeLabel();\n\n if (this._offset > 0 && this._total > 0) {\n this._computePageIndexFromOffset(this._offset);\n }\n\n this._syncInteractionState();\n }\n\n private _applyAlternativeAlignment(): void {\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.ALIGNMENT, this._alignment);\n this._adapter.setAlignment(this._alignment);\n }\n\n private _applyDisabled(disabled: boolean): void {\n this._disabled = disabled;\n if (disabled) {\n this._adapter.disablePageSizeSelect();\n this._adapter.disableFirstPageButton();\n this._adapter.disablePreviousPageButton();\n this._adapter.disableNextPageButton();\n this._adapter.disableLastPageButton();\n } else {\n this._adapter.enablePageSizeSelect();\n this._syncInteractionState();\n }\n }\n\n public get pageIndex(): number {\n return this._pageIndex;\n }\n public set pageIndex(value: number) {\n if (this._pageIndex !== value) {\n if (isDefined(value)) {\n this._applyPageIndex(value);\n } else {\n this._adapter.removeHostAttribute(PAGINATOR_CONSTANTS.attributes.PAGE_INDEX);\n }\n }\n }\n\n public get pageSize(): number {\n return this._pageSize;\n }\n public set pageSize(value: number) {\n if (this._pageSize !== value) {\n this._applyPageSize(value);\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.PAGE_SIZE, `${this._pageSize}`);\n }\n }\n\n public get offset(): number {\n return this._offset;\n }\n public set offset(value: number) {\n if (this._offset !== value) {\n this._offset = value;\n this._computePageIndexFromOffset(value);\n }\n }\n\n public get total(): number {\n return this._total;\n }\n public set total(value: number) {\n if (this._total !== value) {\n this._applyTotal(value);\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.TOTAL, `${this._total}`);\n }\n }\n\n public get pageSizeOptions(): number[] | boolean {\n return this._pageSizeOptions.map(o => Number(o.value));\n }\n public set pageSizeOptions(options: number[] | boolean) {\n if (isArray(options)) {\n this._pageSizeOptions = (options as number[])\n .map(o => ({ label: o.toString(), value: o.toString() }))\n .sort((a, b) => coerceNumber(a.value) - coerceNumber(b.value));\n this._adapter.setPageSizeOptions(this._pageSizeOptions);\n this._adapter.attachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.setPageSizeVisibility(true);\n if (isDefined(this._pageSize) && this._pageSizeOptions.length && !this._pageSizeOptions.find(o => coerceNumber(o.value) === this._pageSize)) {\n const pageSize = coerceNumber(this._pageSizeOptions[0].value);\n this._applyPageSize(pageSize);\n }\n } else if (options.toString().toLowerCase() === 'false') {\n this._adapter.detachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.setPageSizeVisibility(false);\n }\n }\n\n public get label(): string {\n return this._label;\n }\n public set label(value: string) {\n if (this._label !== value) {\n this._label = value;\n this._adapter.setLabel(this._label);\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.LABEL, isDefined(this._label) ? this._label.toString() : '');\n }\n }\n\n public get firstLast(): boolean {\n return this._firstLast;\n }\n public set firstLast(value: boolean) {\n value = Boolean(value);\n if (this._firstLast !== value) {\n this._firstLast = value;\n this._toggleFirstLastButtons();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.FIRST_LAST, this._firstLast);\n }\n }\n\n public get first(): boolean {\n return this._first;\n }\n public set first(value: boolean) {\n value = Boolean(value);\n if (this._first !== value) {\n this._first = value;\n this._toggleFirstButton();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.FIRST, this._first);\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._applyDisabled(value);\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n public get alternative(): boolean {\n return this._alternative;\n }\n public set alternative(value: boolean) {\n if (value !== this._alternative) {\n this._alternative = value;\n this._adapter.setAlternative(this._alternative);\n this._applyAlternativeAlignment();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.ALTERNATIVE, this._alternative);\n }\n }\n\n public get alignment(): PaginatorAlternativeAlignment {\n return this._alignment;\n }\n public set alignment(value: PaginatorAlternativeAlignment) {\n if (value !== this._alignment) {\n this._alignment = value;\n this._applyAlternativeAlignment();\n }\n }\n\n public get rangeLabelCallback(): PaginatorRangeLabelBuilder {\n return this._rangeLabelCallback;\n }\n public set rangeLabelCallback(value: PaginatorRangeLabelBuilder) {\n this._rangeLabelCallback = value;\n this._updateRangeLabel();\n }\n}\n", "import { addClass, getShadowElement, removeAllChildren, removeClass, toggleElementPlaceholder, toggleClass } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IIconButtonComponent } from '../icon-button';\nimport { ISelectComponent, ISelectOption } from '../select';\nimport { IPaginatorComponent } from './paginator';\nimport { PaginatorAlternativeAlignment, PAGINATOR_CONSTANTS } from './paginator-constants';\n\nexport type PaginatorFieldIdentifier = 'first' | 'last' | 'previous' | 'next' | 'page-size';\n\nexport interface IPaginatorAdapter extends IBaseAdapter {\n setLabel(value: string): void;\n setPageSizeOptions(options: ISelectOption[]): void;\n setPageSize(value: number): void;\n setRangeLabel(value: string): void;\n hasFirstPageButton(): boolean;\n showFirstPageButton(): void;\n hideFirstPageButton(): void;\n hasLastPageButton(): boolean;\n showLastPageButton(): void;\n hideLastPageButton(): void;\n attachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void;\n attachFirstPageListener(listener: (evt: Event) => void): void;\n attachPreviousPageListener(listener: (evt: Event) => void): void;\n attachNextPageListener(listener: (evt: Event) => void): void;\n attachLastPageListener(listener: (evt: Event) => void): void;\n detachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void;\n detachFirstPageListener(listener: (evt: Event) => void): void;\n detachPreviousPageListener(listener: (evt: Event) => void): void;\n detachNextPageListener(listener: (evt: Event) => void): void;\n detachLastPageListener(listener: (evt: Event) => void): void;\n disableFirstPageButton(): void;\n enableFirstPageButton(): void;\n disablePreviousPageButton(): void;\n enablePreviousPageButton(): void;\n disableNextPageButton(): void;\n enableNextPageButton(): void;\n disablePageSizeSelect(): void;\n enablePageSizeSelect(): void;\n setPageSizeVisibility(visible: boolean): void;\n disableLastPageButton(): void;\n enableLastPageButton(): void;\n setAlternative(alternative: boolean): void;\n setAlignment(alignment: PaginatorAlternativeAlignment): void;\n hasFocus(): boolean;\n setFocus(options?: FocusOptions): void;\n getFocusedField(): PaginatorFieldIdentifier | null;\n tryDisableFields(fieldsToDisable: PaginatorFieldIdentifier[]): void;\n}\n\n/**\n * Provides facilities for interacting with the internal DOM of `PaginatorComponent`.\n */\nexport class PaginatorAdapter extends BaseAdapter<IPaginatorComponent> implements IPaginatorAdapter {\n private _labelElement: HTMLElement;\n private _root: HTMLElement;\n private _pageSizeSelect: ISelectComponent;\n private _rangeLabel: HTMLElement;\n private _rangeLabelAlternative: HTMLElement;\n private _firstPageButton: HTMLButtonElement;\n private _firstPageIconButton: IIconButtonComponent;\n private _firstPagePlaceholder: Comment;\n private _previousPageButton: HTMLButtonElement;\n private _nextPageButton: HTMLButtonElement;\n private _lastPageButton: HTMLButtonElement;\n private _lastPageIconButton: IIconButtonComponent;\n private _lastPagePlaceholder: Comment;\n\n constructor(component: IPaginatorComponent) {\n super(component);\n this._labelElement = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.LABEL);\n this._root = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.ROOT);\n this._pageSizeSelect = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.PAGE_SIZE_SELECT) as ISelectComponent;\n this._rangeLabel = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.RANGE_LABEL);\n this._rangeLabelAlternative = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.RANGE_LABEL_ALTERNATIVE);\n this._firstPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_BUTTON) as HTMLButtonElement;\n this._firstPageIconButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON) as IIconButtonComponent;\n this._previousPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.PREVIOUS_PAGE_BUTTON) as HTMLButtonElement;\n this._nextPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.NEXT_PAGE_BUTTON) as HTMLButtonElement;\n this._lastPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.LAST_PAGE_BUTTON) as HTMLButtonElement;\n this._lastPageIconButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON) as IIconButtonComponent;\n }\n\n public setLabel(value: string): void {\n this._labelElement.textContent = value;\n }\n\n public setPageSizeOptions(options: ISelectOption[]): void {\n removeAllChildren(this._pageSizeSelect);\n this._pageSizeSelect.options = options;\n }\n\n public setPageSize(value: number): void {\n this._pageSizeSelect.value = value.toString();\n }\n\n public setRangeLabel(value: string): void {\n this._rangeLabel.innerText = value;\n this._rangeLabelAlternative.innerText = value;\n }\n\n public hasFirstPageButton(): boolean {\n return !!getShadowElement(this._component, PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON);\n }\n\n public showFirstPageButton(): void {\n this._firstPagePlaceholder = toggleElementPlaceholder(\n this._component,\n true,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON,\n this._firstPageIconButton,\n this._firstPagePlaceholder\n );\n }\n\n public hideFirstPageButton(): void {\n this._firstPagePlaceholder = toggleElementPlaceholder(\n this._component,\n false,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON,\n this._firstPageIconButton,\n this._firstPagePlaceholder\n );\n }\n\n public hasLastPageButton(): boolean {\n return !!getShadowElement(this._component, PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON);\n }\n\n public showLastPageButton(): void {\n this._lastPagePlaceholder = toggleElementPlaceholder(\n this._component,\n true,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON,\n this._lastPageIconButton,\n this._lastPagePlaceholder\n );\n }\n\n public hideLastPageButton(): void {\n this._lastPagePlaceholder = toggleElementPlaceholder(\n this._component,\n false,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON,\n this._lastPageIconButton,\n this._lastPagePlaceholder\n );\n }\n\n public attachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void {\n this._pageSizeSelect.addEventListener('change', listener);\n }\n\n public attachFirstPageListener(listener: (evt: Event) => void): void {\n this._firstPageButton.addEventListener('click', listener);\n }\n\n public attachPreviousPageListener(listener: (evt: Event) => void): void {\n this._previousPageButton.addEventListener('click', listener);\n }\n\n public attachNextPageListener(listener: (evt: Event) => void): void {\n this._nextPageButton.addEventListener('click', listener);\n }\n\n public attachLastPageListener(listener: (evt: Event) => void): void {\n this._lastPageButton.addEventListener('click', listener);\n }\n\n public detachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void {\n this._pageSizeSelect.removeEventListener('change', listener);\n }\n\n public detachFirstPageListener(listener: (evt: Event) => void): void {\n this._firstPageButton.removeEventListener('click', listener);\n }\n\n public detachPreviousPageListener(listener: (evt: Event) => void): void {\n this._previousPageButton.removeEventListener('click', listener);\n }\n\n public detachNextPageListener(listener: (evt: Event) => void): void {\n this._nextPageButton.removeEventListener('click', listener);\n }\n\n public detachLastPageListener(listener: (evt: Event) => void): void {\n this._lastPageButton.removeEventListener('click', listener);\n }\n\n public disableFirstPageButton(): void {\n this._firstPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enableFirstPageButton(): void {\n this._firstPageButton.removeAttribute('disabled');\n }\n\n public disablePreviousPageButton(): void {\n this._previousPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enablePreviousPageButton(): void {\n this._previousPageButton.removeAttribute('disabled');\n }\n\n public disableNextPageButton(): void {\n this._nextPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enableNextPageButton(): void {\n this._nextPageButton.removeAttribute('disabled');\n }\n\n public disablePageSizeSelect(): void {\n this._pageSizeSelect.setAttribute('disabled', 'disabled');\n }\n\n public enablePageSizeSelect(): void {\n this._pageSizeSelect.removeAttribute('disabled');\n }\n\n public setPageSizeVisibility(visible: boolean): void {\n if (visible) {\n this._pageSizeSelect.style.removeProperty('display');\n } else {\n this._pageSizeSelect.style.display = 'none';\n }\n }\n\n public disableLastPageButton(): void {\n this._lastPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enableLastPageButton(): void {\n this._lastPageButton.removeAttribute('disabled');\n }\n\n public setAlternative(alternative: boolean): void {\n toggleClass(this._root, alternative, PAGINATOR_CONSTANTS.classes.ALTERNATIVE);\n }\n\n public setAlignment(alignment: PaginatorAlternativeAlignment): void {\n removeClass([\n PAGINATOR_CONSTANTS.classes.ALIGNMENT_SPACE_BETWEEN,\n PAGINATOR_CONSTANTS.classes.ALIGNMENT_START,\n PAGINATOR_CONSTANTS.classes.ALIGNMENT_END\n ], this._root);\n\n switch (alignment) {\n case 'start':\n addClass(PAGINATOR_CONSTANTS.classes.ALIGNMENT_START, this._root);\n break;\n case 'end':\n addClass(PAGINATOR_CONSTANTS.classes.ALIGNMENT_END, this._root);\n break;\n case 'space-between':\n default:\n addClass(PAGINATOR_CONSTANTS.classes.ALIGNMENT_SPACE_BETWEEN, this._root);\n break;\n }\n }\n\n public hasFocus(): boolean {\n return this._component.matches(':focus');\n }\n\n public setFocus(options?: FocusOptions): void {\n this._tryFocus([\n this._pageSizeSelect,\n this._firstPageButton,\n this._previousPageButton,\n this._nextPageButton,\n this._lastPageButton\n ], options);\n }\n\n public getFocusedField(): PaginatorFieldIdentifier | null {\n if (this._pageSizeSelect.matches(':focus-within')) {\n return 'page-size';\n } else if (this._firstPageButton.matches(':focus-within')) {\n return 'first';\n } else if (this._previousPageButton.matches(':focus-within')) {\n return 'previous';\n } else if (this._nextPageButton.matches(':focus-within')) {\n return 'next';\n } else if (this._lastPageButton.matches(':focus-within')) {\n return 'last';\n }\n return null;\n }\n\n public tryDisableFields(fieldsToDisable: PaginatorFieldIdentifier[]): void {\n const fieldDisablers = {\n 'first': () => this.disableFirstPageButton(),\n 'last': () => this.disableLastPageButton(),\n 'previous': () => this.disablePreviousPageButton(),\n 'next': () => this.disableNextPageButton()\n };\n fieldsToDisable.forEach(field => fieldDisablers[field]?.());\n }\n\n private _tryFocus(elements: Array<HTMLButtonElement | ISelectComponent>, options?: FocusOptions): void {\n const preventScroll = typeof options?.preventScroll === 'boolean' ? options.preventScroll : true;\n for (const el of elements) {\n if (el && el.isConnected && !el.disabled && el.style.display !== 'none') {\n el.focus({ ...options, preventScroll });\n return;\n }\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, FoundationProperty, coerceBoolean } from '@tylertech/forge-core';\nimport { tylIconFirstPage, tylIconLastPage, tylIconKeyboardArrowRight, tylIconKeyboardArrowLeft } from '@tylertech/tyler-icons/standard';\nimport { PaginatorAlternativeAlignment, PAGINATOR_CONSTANTS, IPaginatorChangeEvent, PaginatorRangeLabelBuilder } from './paginator-constants';\nimport { PaginatorFoundation } from './paginator-foundation';\nimport { PaginatorAdapter } from './paginator-adapter';\nimport { IconButtonComponent } from '../icon-button';\nimport { SelectComponent } from '../select';\nimport { IconComponent, IconRegistry } from '../icon';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\nimport { TooltipComponent } from '../tooltip';\n\nconst template = '<template><div class=\\\"forge-paginator\\\" part=\\\"root\\\"><div class=\\\"forge-paginator__container\\\" part=\\\"container\\\"><div class=\\\"forge-paginator__label\\\" part=\\\"label\\\"></div><forge-select class=\\\"forge-paginator__page-size-options\\\" aria-label=\\\"Choose page size\\\" label-position=\\\"none\\\" density=\\\"extra-small\\\" part=\\\"page-size-options\\\"></forge-select><div class=\\\"forge-paginator__range-label\\\" part=\\\"range-label\\\"></div><forge-icon-button class=\\\"forge-paginator__first-page\\\" part=\\\"first-page-button\\\" part=\\\"first-page-button-element\\\"><forge-icon name=\\\"first_page\\\" part=\\\"first-page-icon\\\"></forge-icon></forge-icon-button><forge-tooltip type=\\\"label\\\" placement=\\\"top\\\">Go to the first page</forge-tooltip><forge-icon-button class=\\\"forge-paginator__previous-page\\\" part=\\\"previous-page-button\\\" part=\\\"previous-page-button-element\\\"><forge-icon name=\\\"keyboard_arrow_left\\\" part=\\\"previous-page-button-icon\\\"></forge-icon></forge-icon-button><forge-tooltip type=\\\"label\\\" placement=\\\"top\\\">Go to the previous page</forge-tooltip><div class=\\\"forge-paginator__range-label--alternative\\\" part=\\\"range-label-alternative\\\"></div><forge-icon-button class=\\\"forge-paginator__next-page\\\" part=\\\"next-page-button\\\" part=\\\"next-page-button-element\\\"><forge-icon name=\\\"keyboard_arrow_right\\\" part=\\\"next-page-icon\\\"></forge-icon></forge-icon-button><forge-tooltip type=\\\"label\\\" placement=\\\"top\\\">Go to the next page</forge-tooltip><forge-icon-button class=\\\"forge-paginator__last-page\\\" part=\\\"last-page-button\\\" part=\\\"last-page-button-element\\\"><forge-icon name=\\\"last_page\\\" part=\\\"last-page-icon\\\"></forge-icon></forge-icon-button><forge-tooltip type=\\\"label\\\" placement=\\\"top\\\">Go to the last page</forge-tooltip></div></div></template>';\nconst styles = '.forge-paginator{display:inline-block}.forge-paginator--alternative{display:-webkit-box;display:flex}.forge-paginator--alternative .forge-paginator__label,.forge-paginator--alternative .forge-paginator__page-size-options,.forge-paginator--alternative .forge-paginator__range-label{display:none}.forge-paginator--alternative .forge-paginator__range-label--alternative{display:inline-block;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit);margin:0 12px}.forge-paginator__range-label--alternative{display:none}.forge-paginator__container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.forge-paginator__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);margin-right:16px}.forge-paginator__page-size-options{margin-right:16px}.forge-paginator__range-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);margin-right:8px}.forge-paginator__first-page,.forge-paginator__last-page,.forge-paginator__next-page,.forge-paginator__previous-page{color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}:host{display:inline-block}:host([hidden]){display:none}:host([alternative]) .forge-paginator--alignment-center .forge-paginator__container{-webkit-box-pack:center;justify-content:center}:host([alternative]) .forge-paginator--alignment-center .forge-paginator__range-label--alternative{margin:0 auto}:host([alternative]) .forge-paginator--alignment-start .forge-paginator__container{-webkit-box-pack:start;justify-content:flex-start}:host([alternative]) .forge-paginator--alignment-end .forge-paginator__container{-webkit-box-pack:end;justify-content:flex-end}:host([alternative]) .forge-paginator .forge-paginator__container{-webkit-box-flex:1;flex:1}';\n\nexport interface IPaginatorComponent extends IBaseComponent {\n pageIndex: number;\n pageSize: number;\n offset: number;\n total: number;\n pageSizeOptions: number[] | boolean;\n label: string;\n firstLast: boolean;\n first: boolean;\n disabled: boolean;\n alternative: boolean;\n alignment: PaginatorAlternativeAlignment;\n rangeLabelCallback: PaginatorRangeLabelBuilder;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-paginator': IPaginatorComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-paginator-change': CustomEvent<IPaginatorChangeEvent>;\n }\n}\n\n/**\n * @tag forge-paginator\n */\n@CustomElement({\n name: PAGINATOR_CONSTANTS.elementName,\n dependencies: [\n IconButtonComponent,\n SelectComponent,\n IconComponent,\n TooltipComponent\n ]\n})\nexport class PaginatorComponent extends BaseComponent implements IPaginatorComponent {\n public static get observedAttributes(): string[] {\n return [\n PAGINATOR_CONSTANTS.attributes.PAGE_INDEX,\n PAGINATOR_CONSTANTS.attributes.PAGE_SIZE,\n PAGINATOR_CONSTANTS.attributes.OFFSET,\n PAGINATOR_CONSTANTS.attributes.TOTAL,\n PAGINATOR_CONSTANTS.attributes.PAGE_SIZE_OPTIONS,\n PAGINATOR_CONSTANTS.attributes.LABEL,\n PAGINATOR_CONSTANTS.attributes.FIRST_LAST,\n PAGINATOR_CONSTANTS.attributes.FIRST,\n PAGINATOR_CONSTANTS.attributes.DISABLED,\n PAGINATOR_CONSTANTS.attributes.ALTERNATIVE,\n PAGINATOR_CONSTANTS.attributes.ALIGNMENT\n ];\n }\n\n private _foundation: PaginatorFoundation;\n\n constructor() {\n super();\n IconRegistry.define([\n tylIconFirstPage,\n tylIconKeyboardArrowLeft,\n tylIconKeyboardArrowRight,\n tylIconLastPage\n ]);\n attachShadowTemplate(this, template, styles);\n this._foundation = new PaginatorFoundation(new PaginatorAdapter(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 PAGINATOR_CONSTANTS.attributes.PAGE_INDEX:\n this.pageIndex = Number(newValue) || PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_INDEX;\n break;\n case PAGINATOR_CONSTANTS.attributes.PAGE_SIZE:\n this.pageSize = Number(newValue) || PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_SIZE;\n break;\n case PAGINATOR_CONSTANTS.attributes.OFFSET:\n this.offset = Number(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.TOTAL:\n this.total = Number(newValue) || PAGINATOR_CONSTANTS.numbers.DEFAULT_TOTAL;\n break;\n case PAGINATOR_CONSTANTS.attributes.PAGE_SIZE_OPTIONS:\n this.pageSizeOptions = newValue as any;\n break;\n case PAGINATOR_CONSTANTS.attributes.LABEL:\n this.label = newValue;\n break;\n case PAGINATOR_CONSTANTS.attributes.FIRST_LAST:\n this.firstLast = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.FIRST:\n this.first = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.ALTERNATIVE:\n this.alternative = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.ALIGNMENT:\n this.alignment = newValue as PaginatorAlternativeAlignment;\n break;\n }\n }\n\n /** The zero-based page index. Default is 0. */\n @FoundationProperty()\n public declare pageIndex: number;\n\n /** Number of items to display on a page. By default set to 25. */\n @FoundationProperty()\n public declare pageSize: number;\n\n /** Sets page index by providing the number of items to skip. The getter for this property returns the number of items to skip. */\n @FoundationProperty()\n public declare offset: number;\n\n /** The total number of items to be paginated. Default is 0. */\n @FoundationProperty()\n public declare total: number;\n\n /** The set of provided page size options to display to the user. */\n @FoundationProperty()\n public declare pageSizeOptions: number[] | boolean;\n\n /** A label for the paginator. Default is \"Rows per page:\". */\n @FoundationProperty()\n public declare label: string;\n\n /** Whether to show the first page and last page buttons. Default is false. */\n @FoundationProperty()\n public declare firstLast: boolean;\n\n /** Whether to show the first page button. Default is false. */\n @FoundationProperty()\n public declare first: boolean;\n\n /** Whether the paginator is disabled. Default is false. */\n @FoundationProperty()\n public declare disabled: boolean;\n\n @FoundationProperty()\n public declare alternative: boolean;\n\n @FoundationProperty()\n public declare alignment: PaginatorAlternativeAlignment;\n\n @FoundationProperty()\n public declare rangeLabelCallback: PaginatorRangeLabelBuilder;\n\n public override focus(options?: FocusOptions): void {\n this._foundation.focus(options);\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { PaginatorComponent } from './paginator';\n\nexport * from './paginator-adapter';\nexport * from './paginator-constants';\nexport * from './paginator-foundation';\nexport * from './paginator';\n\nexport function definePaginatorComponent(): void {\n defineCustomElement(PaginatorComponent);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["elementName", "COMPONENT_NAME_PREFIX", "classes", "selectors", "attributes", "events", "numbers", "strings", "PAGINATOR_CONSTANTS", "PaginatorFoundation", "_adapter", "PAGINATOR_CONSTANTS", "o", "evt", "options", "firstPage", "prevPage", "nextPage", "lastPage", "pageSize", "type", "pageIndex", "offset", "detail", "rangeLabel", "state", "startIndex", "pageStart", "pageEnd", "fieldsToDisable", "maxPages", "value", "clampedValue", "disabled", "isDefined", "isArray", "a", "b", "coerceNumber", "PaginatorAdapter", "BaseAdapter", "component", "getShadowElement", "PAGINATOR_CONSTANTS", "value", "options", "removeAllChildren", "toggleElementPlaceholder", "listener", "visible", "alternative", "toggleClass", "alignment", "removeClass", "addClass", "fieldsToDisable", "fieldDisablers", "field", "_a", "elements", "preventScroll", "el", "__spreadProps", "__spreadValues", "template", "styles", "PaginatorComponent", "BaseComponent", "IconRegistry", "tylIconFirstPage", "tylIconKeyboardArrowLeft", "tylIconKeyboardArrowRight", "tylIconLastPage", "attachShadowTemplate", "PaginatorFoundation", "PaginatorAdapter", "PAGINATOR_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "options", "__decorateClass", "FoundationProperty", "CustomElement", "IconButtonComponent", "SelectComponent", "IconComponent", "TooltipComponent", "definePaginatorComponent", "defineCustomElement", "PaginatorComponent"]
|
|
7
7
|
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import{a as _,b as R}from"./chunk.PC6TW5XE.js";import{a as N,b as H}from"./chunk.BQ52JYLA.js";import{b as B,c as b}from"./chunk.5SUJNEC7.js";import{a as d}from"./chunk.NVUMRW44.js";import{a as z}from"./chunk.OLFOVKQG.js";import{a as w,b as O,n as M}from"./chunk.VRSPT7WX.js";import{a as A,e as C,f as u,k as I}from"./chunk.LNTTU2GL.js";import{g as x,p as P}from"./chunk.L4QSPQDE.js";import{c as S,d as L,k as h}from"./chunk.J2M2MXP2.js";import{a as f,d as l}from"./chunk.M3QDAYD2.js";var p=`${O}dialog`,F={OPEN:"open",VISIBLE:"visible",MODE:"mode",TYPE:"type",ANIMATION_TYPE:"animation-type",PRESET:"preset",PERSISTENT:"persistent",FULLSCREEN:"fullscreen",TRIGGER:"trigger",MOVEABLE:"moveable",MOVE_TARGET:"move-target",POSITION_STRATEGY:"position-strategy",PLACEMENT:"placement",SIZE_STRATEGY:"size-strategy"},W=f({},F),U={MOVED:"moved",MOVING:"moving"},$={DIALOG:".forge-dialog",SURFACE:".surface",MOVE_HANDLE:".move-handle",AUTOFOCUS:":is([autofocus],[forge-dialog-focus])"},X={BEFORE_CLOSE:`${p}-before-close`,OPEN:`${p}-open`,CLOSE:`${p}-close`,MOVE_START:`${p}-move-start`,MOVE:`${p}-move`,MOVE_END:`${p}-move-end`},Z={MODE:"modal",TYPE:"dialog",ANIMATION_TYPE:"zoom",PRESET:"dialog",SIZE_STRATEGY:"content",POSITION_STRATEGY:"viewport",PLACEMENT:"center"},i={elementName:p,observedAttributes:F,classes:U,attributes:W,selectors:$,events:X,defaults:Z},E=Symbol("hideBackdrop"),y=Symbol("showBackdrop"),c=Symbol("dialogStack");var k=class extends z{constructor(o){super(o);this._dialogElement=u(o,i.selectors.DIALOG),this._surfaceElement=u(o,i.selectors.SURFACE),this._moveHandleElement=u(o,i.selectors.MOVE_HANDLE),this._backdropElement=u(o,_.elementName),this._backdropElement.shadowRoot||window.customElements.upgrade(this._backdropElement)}get moveHandleElement(){return this._moveHandleElement}get surfaceElement(){return this._surfaceElement}show(){if(this._dialogElement.open)return;this._component[M]({role:this._component.type,ariaModal:this._component.mode==="modal"||this._component.mode==="inline-modal"?"true":"false"},{setAttribute:!0});let o=this._component.mode==="modal"||this._component.mode==="inline-modal";o&&(this._component.animationType==="none"?this._backdropElement.show():this._backdropElement.fadeIn()),this._component.mode==="modal"?this._dialogElement.showModal():this._dialogElement.show(),o&&this._hideBackdrops(),a[c].add(this._component)}_hideBackdrops(){a[c].forEach(o=>o[E]())}_showBackdropMostRecent(){var o;(o=Array.from(a[c]).filter(r=>r.mode==="modal"||r.mode==="inline-modal").at(-1))==null||o[y]()}async hide(){this._component[M]({role:null,ariaModal:null},{setAttribute:!0});let o=()=>{this._surfaceElement.classList.remove(_.classes.EXITING),this._dialogElement.close(),a[c].delete(this._component),this._showBackdropMostRecent()};if(this._component.animationType==="none")return Promise.resolve(o());this._backdropElement.fadeOut(),await x(this._surfaceElement,_.classes.EXITING),o()}addDialogFormSubmitListener(o){this._dialogElement.addEventListener("submit",o)}removeDialogFormSubmitListener(o){this._dialogElement.removeEventListener("submit",o)}addDialogCancelListener(o){this._dialogElement.addEventListener("cancel",o)}removeDialogCancelListener(o){this._dialogElement.removeEventListener("cancel",o)}addBackdropDismissListener(o){this._backdropElement.addEventListener("click",o)}removeBackdropDismissListener(o){this._backdropElement.removeEventListener("click",o)}tryAutofocus(){window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{if(this._component.open&&this._dialogElement.isConnected&&!this._component.matches(":focus-within")){let o=this._component.querySelector(i.selectors.AUTOFOCUS);o==null||o.focus()}})})}tryLocateTriggerElement(o){if(!o){this.triggerElement=null;return}let r=this._component.getRootNode();this.triggerElement=r.querySelector(`#${o}`)}addTriggerInteractionListener(o){var r;(r=this.triggerElement)==null||r.addEventListener("click",o)}removeTriggerInteractionListener(o){var r;(r=this.triggerElement)==null||r.removeEventListener("click",o)}hideBackdrop(){this._backdropElement.fadeOut()}showBackdrop(){this._backdropElement.fadeIn()}addSurfaceClass(o){this._surfaceElement.classList.add(o)}removeSurfaceClass(o){this._surfaceElement.classList.remove(o)}};function G(v=class{}){class e extends v{constructor(){super(...arguments);this._isMoving=!1;this._activeElement=void 0;this._movePointerDownListener=this._onMoveTargetPointerDown.bind(this);this._movePointerMoveListener=this._onMoveTargetPointerMove.bind(this);this._movePointerUpListener=this._onMoveTargetPointerUp.bind(this)}stopMoveListener(){this._updatePosition(null,null),document.removeEventListener("pointermove",this._movePointerMoveListener),document.removeEventListener("pointerup",this._movePointerUpListener),this._isMoving=!1,this._moveContext=void 0,this._lastPosition=void 0,this._activeElement=void 0}_onMoveTargetPointerDown(t){t.preventDefault(),this._captureActiveElement();let s=this._getMoveableBounds();this._moveContext={top:t.pageY-s.top,left:t.pageX-s.left,height:s.height,width:s.width},document.addEventListener("pointermove",this._movePointerMoveListener),document.addEventListener("pointerup",this._movePointerUpListener)}_onMoveTargetPointerMove(t){t.preventDefault();let s=this._calculateOffsetPosition(t.pageX,t.pageY,this._moveContext);if(!this._isMoving&&(this._isMoving=!0,this._onMoveStart()))return;let n=this._clampPosition(s,this._moveContext);if((!this._lastPosition||n.x!==this._lastPosition.x||n.y!==this._lastPosition.y)&&!this._onMove(n)){this._lastPosition=f({},n);let m=this._normalizePositionValue(n.x),Y=this._normalizePositionValue(n.y);this._updatePosition(m,Y)}}_onMoveTargetPointerUp(t){this._isMoving&&this._onMoveEnd(),this._moveComplete()}_moveComplete(){this._tryRestoreActiveElement(),document.removeEventListener("pointermove",this._movePointerMoveListener),document.removeEventListener("pointerup",this._movePointerUpListener),this._lastPosition=void 0,this._moveContext=void 0,this._isMoving=!1}_captureActiveElement(){var t;this._activeElement=P(),(t=this._activeElement)==null||t.blur()}_tryRestoreActiveElement(){var t;(t=this._activeElement)!=null&&t.isConnected&&this._activeElement.focus(),this._activeElement=void 0}_normalizePositionValue(t){return L(t)?`${t}px`:S(t)?t:null}_calculateOffsetPosition(t,s,n){var g,m;return{x:t-((g=n==null?void 0:n.left)!=null?g:0),y:s-((m=n==null?void 0:n.top)!=null?m:0)}}_clampPosition({x:t,y:s},n){let g=0,m=0;return n&&(g=n.width,m=n.height),t<=0?t=0:t+g>=window.innerWidth&&(t=window.innerWidth-g),s<=0?s=0:s+m>=window.innerHeight&&(s=window.innerHeight-m),{x:t,y:s}}}return e}var j=G(Object),T=class extends j{constructor(o){super();this._config=o;this._startMoveListener()}destroy(){this._stopMoveListener(),super.stopMoveListener()}_getMoveableBounds(){return this._config.surfaceElement.getBoundingClientRect()}_updatePosition(o,r){this._config.surfaceElement.style.top=r!=null?r:"",this._config.surfaceElement.style.left=o!=null?o:""}_onMoveStart(){return this._config.onMoveStart()}_onMove(o){return this._config.onMove(o)}_onMoveEnd(){this._config.onMoveEnd()}_startMoveListener(){this._config.handleElement.addEventListener("pointerdown",this._movePointerDownListener)}_stopMoveListener(){this._config.handleElement.removeEventListener("pointerdown",this._movePointerDownListener)}};var D=class{constructor(e){this._adapter=e;this._open=!1;this._mode=i.defaults.MODE;this._type=i.defaults.TYPE;this._animationType=i.defaults.ANIMATION_TYPE;this._preset=i.defaults.PRESET;this._persistent=!1;this._fullscreen=!1;this._trigger="";this._moveable=!1;this._sizeStrategy=i.defaults.SIZE_STRATEGY;this._placement=i.defaults.PLACEMENT;this._positionStrategy=i.defaults.POSITION_STRATEGY;this._escapeDismissListener=this._onEscapeDismiss.bind(this);this._backdropDismissListener=this._onBackdropDismiss.bind(this);this._dialogFormSubmitListener=this._onDialogFormSubmit.bind(this);this._triggerClickListener=this._onTriggerClick.bind(this)}initialize(){this._trigger&&!this._adapter.triggerElement&&this._adapter.tryLocateTriggerElement(this._trigger),this._adapter.triggerElement&&this._adapter.addTriggerInteractionListener(this._triggerClickListener),this._open&&this._applyOpen()}destroy(){this._adapter.triggerElement&&this._adapter.removeTriggerInteractionListener(this._triggerClickListener),this._moveController&&this._destroyMoveController(),this._open&&this._hide()}dispatchBeforeCloseEvent(){let e=new CustomEvent(i.events.BEFORE_CLOSE,{cancelable:!0,bubbles:!0,composed:!0});return this._adapter.dispatchHostEvent(e),!e.defaultPrevented}hideBackdrop(){this._adapter.hideBackdrop()}showBackdrop(){this._adapter.showBackdrop()}_show(){this._adapter.show(),this._adapter.addDialogFormSubmitListener(this._dialogFormSubmitListener),b.instance.add(this._adapter.hostElement),this._mode==="modal"?this._adapter.addDialogCancelListener(this._escapeDismissListener):this._mode==="inline-modal"&&this._adapter.addDocumentListener("keydown",this._escapeDismissListener),this._persistent||this._adapter.addBackdropDismissListener(this._backdropDismissListener),this._moveable&&!this._fullscreen&&this._initializeMoveController(),this._adapter.dispatchHostEvent(new CustomEvent(i.events.OPEN,{bubbles:!0,composed:!0}))}async _hide(){this._adapter.removeDialogFormSubmitListener(this._dialogFormSubmitListener),this._adapter.removeDialogCancelListener(this._escapeDismissListener),this._adapter.removeDocumentListener("keydown",this._escapeDismissListener),this._adapter.removeBackdropDismissListener(this._backdropDismissListener),b.instance.remove(this._adapter.hostElement),await this._adapter.hide(),this._moveController&&this._destroyMoveController(),this._adapter.dispatchHostEvent(new CustomEvent(i.events.CLOSE,{bubbles:!0,composed:!0}))}async _applyOpen(){this._open?(this._show(),this._adapter.tryAutofocus()):await this._hide(),this._adapter.toggleHostAttribute(i.attributes.VISIBLE,this._open),this._adapter.toggleHostAttribute(i.attributes.OPEN,this._open)}_onEscapeDismiss(e){if(e.type==="keydown"){if(e.key!=="Escape"||!b.instance.isMostRecent(this._adapter.hostElement))return}else e.type==="cancel"&&e.preventDefault();this._persistent||this._tryClose()}_onBackdropDismiss(){this._tryClose()}_onDialogFormSubmit(e){var r,t;e.stopPropagation(),(((r=e.submitter)==null?void 0:r.getAttribute("formmethod"))==="dialog"||((t=e.target)==null?void 0:t.getAttribute("method"))==="dialog")&&this._tryClose()}_tryClose(){this.dispatchBeforeCloseEvent()&&(this.open=!1)}_onTriggerClick(e){this.open=!this._open}_initializeMoveController(){if(this._moveController)return;let e=()=>{let n=new CustomEvent(i.events.MOVE_START,{cancelable:!0});return this._adapter.dispatchHostEvent(n),n.defaultPrevented},o=n=>{let g=new CustomEvent(i.events.MOVE,{detail:n,cancelable:!0});return this._adapter.dispatchHostEvent(g),g.defaultPrevented||(this._adapter.addSurfaceClass(i.classes.MOVED),this._adapter.addSurfaceClass(i.classes.MOVING)),g.defaultPrevented},r=()=>{let n=new CustomEvent(i.events.MOVE_END);this._adapter.removeSurfaceClass(i.classes.MOVING),this._adapter.dispatchHostEvent(n)},{moveHandleElement:t,surfaceElement:s}=this._adapter;this._moveController=new T({handleElement:t,surfaceElement:s,onMoveStart:e,onMove:o,onMoveEnd:r})}_destroyMoveController(){var e;this._adapter.removeSurfaceClass(i.classes.MOVED),(e=this._moveController)==null||e.destroy(),this._moveController=void 0}get open(){return this._open}set open(e){e=!!e,this._open!==e&&(this._open=e,this._adapter.isConnected&&this._applyOpen())}get mode(){return this._mode}set mode(e){this._mode!==e&&(this._mode=e,this._adapter.setHostAttribute(i.attributes.MODE,this._mode))}get type(){return this._type}set type(e){this._type!==e&&(this._type=e,this._adapter.setHostAttribute(i.attributes.TYPE,this._type))}get animationType(){return this._animationType}set animationType(e){this._animationType!==e&&(this._animationType=e,this._adapter.setHostAttribute(i.attributes.ANIMATION_TYPE,this._animationType))}get preset(){return this._preset}set preset(e){this._preset!==e&&(this._preset=e,this._adapter.setHostAttribute(i.attributes.PRESET,this._preset))}get persistent(){return this._persistent}set persistent(e){e=!!e,this._persistent!==e&&(this._persistent=e,this._adapter.toggleHostAttribute(i.attributes.PERSISTENT,this._persistent))}get fullscreen(){return this._fullscreen}set fullscreen(e){e=!!e,this._fullscreen!==e&&(this._fullscreen=e,this._adapter.toggleHostAttribute(i.attributes.FULLSCREEN,this._fullscreen))}get trigger(){var e;return(e=this._trigger)!=null?e:""}set trigger(e){this._trigger!==e&&(this._trigger=e,this._adapter.triggerElement&&this._adapter.removeTriggerInteractionListener(this._triggerClickListener),this._adapter.isConnected&&(this._adapter.tryLocateTriggerElement(this._trigger),this._adapter.addTriggerInteractionListener(this._triggerClickListener)),this._adapter.setHostAttribute(i.attributes.TRIGGER,this._trigger))}get triggerElement(){return this._adapter.triggerElement}set triggerElement(e){this._adapter.triggerElement&&this._adapter.removeTriggerInteractionListener(this._triggerClickListener),this._trigger&&(this._trigger=""),this._adapter.triggerElement=e,this._adapter.isConnected&&this._adapter.addTriggerInteractionListener(this._triggerClickListener)}get moveable(){return this._moveable}set moveable(e){e=!!e,this._moveable!==e&&(this._moveable=e,this._adapter.isConnected&&this._open&&(this._moveable?this._initializeMoveController():this._destroyMoveController()),this._adapter.toggleHostAttribute(i.attributes.MOVEABLE,this._moveable))}get positionStrategy(){return this._positionStrategy}set positionStrategy(e){this._positionStrategy!==e&&(this._positionStrategy=e,this._adapter.setHostAttribute(i.attributes.POSITION_STRATEGY,this._positionStrategy))}get sizeStrategy(){return this._sizeStrategy}set sizeStrategy(e){this._sizeStrategy!==e&&(this._sizeStrategy=e,this._adapter.setHostAttribute(i.attributes.SIZE_STRATEGY,this._sizeStrategy))}get placement(){return this._placement}set placement(e){this._placement!==e&&(this._placement=e,this._adapter.setHostAttribute(i.attributes.PLACEMENT,this._placement))}};var q='<template><dialog class="forge-dialog" part="root"><forge-backdrop exportparts="root:backdrop"></forge-backdrop><div class="surface" part="surface"><div class="move-handle-container" part="move-handle-container"><div class="move-handle" part="move-handle"><slot name="move-handle"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" part="move-handle-icon"><path d="M3 15v-2h2v2H3m0-4V9h2v2H3m4 4v-2h2v2H7m0-4V9h2v2H7m4 4v-2h2v2h-2m0-4V9h2v2h-2m4 4v-2h2v2h-2m0-4V9h2v2h-2m4 4v-2h2v2h-2m0-4V9h2v2h-2z"/></svg></slot></div></div><slot></slot></div></dialog></template>',K="@-webkit-keyframes zoom-in{from{opacity:var(--_dialog-zoom-opacity);scale:var(--_dialog-zoom-scale)}to{opacity:1;scale:1}}@keyframes zoom-in{from{opacity:var(--_dialog-zoom-opacity);scale:var(--_dialog-zoom-scale)}to{opacity:1;scale:1}}@-webkit-keyframes zoom-out{from{opacity:1;scale:1}to{opacity:var(--_dialog-zoom-opacity);scale:var(--_dialog-zoom-scale)}}@keyframes zoom-out{from{opacity:1;scale:1}to{opacity:var(--_dialog-zoom-opacity);scale:var(--_dialog-zoom-scale)}}@-webkit-keyframes fade-in{from{opacity:var(--_dialog-fade-opacity)}to{opacity:1}}@keyframes fade-in{from{opacity:var(--_dialog-fade-opacity)}to{opacity:1}}@-webkit-keyframes fade-out{from{opacity:1}to{opacity:var(--_dialog-fade-opacity)}}@keyframes fade-out{from{opacity:1}to{opacity:var(--_dialog-fade-opacity)}}@-webkit-keyframes slide-in{from{opacity:var(--_dialog-slide-opacity);translate:var(--_dialog-slide-translate)}to{opacity:1;translate:0 0}}@keyframes slide-in{from{opacity:var(--_dialog-slide-opacity);translate:var(--_dialog-slide-translate)}to{opacity:1;translate:0 0}}@-webkit-keyframes slide-out{from{opacity:1;translate:0 0}to{opacity:var(--_dialog-slide-opacity);translate:var(--_dialog-slide-translate)}}@keyframes slide-out{from{opacity:1;translate:0 0}to{opacity:var(--_dialog-slide-opacity);translate:var(--_dialog-slide-translate)}}@layer base,nonmodal,animation,placement,size-strategy,preset,fullscreen,position-strategy,media; @layer base{:host{display:none;--forge-theme-surface:var(--forge-theme-surface-bright, #ffffff)}:host([hidden]){display:none}.forge-dialog{--_dialog-background:var(--forge-dialog-background, var(--forge-theme-surface-bright, #ffffff));--_dialog-shape:var(--forge-dialog-shape, var(--forge-shape-medium, 4px));--_dialog-elevation:var(--forge-dialog-elevation, 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12));--_dialog-spacing:var(--forge-dialog-spacing, auto);--_dialog-block-start-spacing:var(--forge-dialog-block-start-spacing, var(--_dialog-spacing));--_dialog-block-end-spacing:var(--forge-dialog-block-end-spacing, var(--_dialog-spacing));--_dialog-inline-start-spacing:var(--forge-dialog-inline-start-spacing, var(--_dialog-spacing));--_dialog-inline-end-spacing:var(--forge-dialog-inline-end-spacing, var(--_dialog-spacing));--_dialog-padding:var(--forge-dialog-padding, 0);--_dialog-width:var(--forge-dialog-width, fit-content);--_dialog-height:var(--forge-dialog-height, fit-content);--_dialog-min-width:var(--forge-dialog-min-width, 0);--_dialog-max-width:var(--forge-dialog-max-width, calc(100% - var(--forge-spacing-xxlarge, 48px)));--_dialog-min-height:var(--forge-dialog-min-height, 0);--_dialog-max-height:var(--forge-dialog-max-height, calc(100% - var(--forge-spacing-xxlarge, 48px)));--_dialog-z-index:var(--forge-dialog-z-index, var(--forge-z-index-dialog, 8));--_dialog-move-handle-color:var(--forge-dialog-move-handle-color, currentColor);--_dialog-move-handle-size:var(--forge-dialog-move-handle-size, 24px);--_dialog-move-handle-hover-cursor:var(--forge-dialog-move-handle-hover-cursor, grab);--_dialog-move-handle-active-cursor:var(--forge-dialog-move-handle-active-cursor, grabbing);--_dialog-move-handle-spacing:var(--forge-dialog-move-handle-spacing, calc(var(--forge-spacing-xxsmall, 4px) * -1) 0 0);--_dialog-move-transition-duration:var(--forge-dialog-move-transition-duration, var(--forge-animation-duration-short4, 200ms));--_dialog-move-transition-easing:var(--forge-dialog-move-transition-easing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_dialog-moving-opacity:var(--forge-dialog-moving-opacity, 0.54);--_dialog-enter-animation-duration:var(--forge-dialog-enter-animation-duration, var(--forge-animation-duration-medium1, 250ms));--_dialog-enter-animation-easing:var(--forge-dialog-enter-animation-easing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_dialog-exit-animation-duration:var(--forge-dialog-exit-animation-duration, var(--forge-animation-duration-short2, 100ms));--_dialog-exit-animation-easing:var(--forge-dialog-exit-animation-easing, var(--forge-animation-easing-emphasized-accelerate, cubic-bezier(0.3, 0, 0.8, 0.15)));--_dialog-zoom-opacity:var(--forge-dialog-zoom-opacity, 0);--_dialog-zoom-scale:var(--forge-dialog-zoom-scale, 0.8);--_dialog-fade-opacity:var(--forge-dialog-fade-opacity, 0);--_dialog-slide-opacity:var(--forge-dialog-slide-opacity, 0);--_dialog-slide-translate:var(--forge-dialog-slide-translate, 0 -30%);--_dialog-backdrop-opacity:var(--forge-dialog-backdrop-opacity, var(--forge-backdrop-opacity, 0.54));--_dialog-nonmodal-elevation:var(--forge-dialog-nonmodal-elevation, 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12));--_dialog-fullscreen-enter-animation-duration:var(--forge-dialog-fullscreen-enter-animation-duration, var(--forge-animation-duration-medium1, 250ms));--_dialog-fullscreen-exit-animation-duration:var(--forge-dialog-fullscreen-exit-animation-duration, var(--forge-animation-duration-short2, 100ms));--_dialog-position-x:var(--forge-dialog-position-x, 0);--_dialog-position-y:var(--forge-dialog-position-y, 0);--_dialog-preset-sheet-enter-animation-duration:var(--forge-dialog-preset-sheet-enter-animation-duration, var(--forge-animation-duration-medium1, 250ms));--_dialog-preset-sheet-exit-animation-duration:var(--forge-dialog-preset-sheet-exit-animation-duration, var(--forge-animation-duration-short3, 150ms))}.forge-dialog{position:fixed;inset:0;z-index:var(--_dialog-z-index);background-color:transparent;color:inherit;border:none;width:auto;height:auto;padding:0;margin:0;overflow:visible;max-width:100%;max-height:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.container{display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;width:100%;height:100%}.surface{position:absolute;inset:0;background:var(--_dialog-background);-webkit-box-shadow:var(--_dialog-elevation);box-shadow:var(--_dialog-elevation);z-index:var(--_dialog-z-index);overflow:hidden;border-radius:var(--_dialog-shape);-webkit-margin-before:var(--_dialog-block-start-spacing);margin-block-start:var(--_dialog-block-start-spacing);-webkit-margin-after:var(--_dialog-block-end-spacing);margin-block-end:var(--_dialog-block-end-spacing);-webkit-margin-start:var(--_dialog-inline-start-spacing);margin-inline-start:var(--_dialog-inline-start-spacing);-webkit-margin-end:var(--_dialog-inline-end-spacing);margin-inline-end:var(--_dialog-inline-end-spacing);padding:var(--_dialog-padding);width:var(--_dialog-width);height:var(--_dialog-height);min-width:var(--_dialog-min-width);max-width:var(--_dialog-max-width);min-height:var(--_dialog-min-height);max-height:var(--_dialog-max-height);-webkit-box-sizing:border-box;box-sizing:border-box}dialog.forge-dialog::-webkit-backdrop{display:none}dialog.forge-dialog::backdrop{display:none}forge-backdrop{--forge-backdrop-opacity:var(--_dialog-backdrop-opacity);--forge-backdrop-enter-animation-duration:var(--_dialog-enter-animation-duration);--forge-backdrop-enter-animation-easing:var(--_dialog-enter-animation-easing);--forge-backdrop-exit-animation-duration:var(--_dialog-exit-animation-duration);--forge-backdrop-exit-animation-easing:var(--_dialog-exit-animation-easing)}:host(:not([moveable])) .move-handle{display:none}:host([moveable]:not([fullscreen]):not([preset])) .surface{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition-property:opacity;transition-property:opacity;-webkit-transition-duration:var(--_dialog-move-transition-duration);transition-duration:var(--_dialog-move-transition-duration);-webkit-transition-timing-function:var(--_dialog-move-transition-easing);transition-timing-function:var(--_dialog-move-transition-easing)}:host([moveable]:not([fullscreen]):not([preset])) .surface:not(:hover) .move-handle-container{display:none}:host([moveable]:not([fullscreen]):not([preset])) .surface.moved{margin:0}:host([moveable]:not([fullscreen]):not([preset])) .surface.moving{opacity:var(--_dialog-moving-opacity)}:host([moveable]:not([fullscreen]):not([preset])) .move-handle-container{position:absolute;top:0;z-index:1;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;width:100%}:host([moveable]:not([fullscreen]):not([preset])) .move-handle-container .move-handle{fill:var(--_dialog-move-handle-color);height:var(--_dialog-move-handle-size);width:var(--_dialog-move-handle-size);margin:var(--_dialog-move-handle-spacing);touch-action:none}:host([moveable]:not([fullscreen]):not([preset])) .move-handle-container .move-handle:hover{cursor:var(--_dialog-move-handle-hover-cursor)}:host([moveable]:not([fullscreen]):not([preset])) .move-handle-container .move-handle:active{cursor:var(--_dialog-move-handle-active-cursor)}:host([moveable]:not([fullscreen]):not([preset])) .move-handle-container .move-handle svg{fill:currentColor}:host([visible]){display:initial}}@layer nonmodal{:host([mode=nonmodal]) .forge-dialog{pointer-events:none}:host([mode=nonmodal]) .container{display:contents}:host([mode=nonmodal]) .surface{--_dialog-elevation:var(--_dialog-nonmodal-elevation);pointer-events:all}:host([mode=nonmodal]) forge-backdrop{display:none}}@layer animation{:host([visible]:not([animation-type=none])) dialog.forge-dialog[open] .surface{-webkit-animation-duration:var(--_dialog-enter-animation-duration);animation-duration:var(--_dialog-enter-animation-duration);-webkit-animation-timing-function:var(--_dialog-enter-animation-easing);animation-timing-function:var(--_dialog-enter-animation-easing)}:host([visible]:not([animation-type=none])) dialog.forge-dialog[open] .surface.exiting{-webkit-animation-duration:var(--_dialog-exit-animation-duration);animation-duration:var(--_dialog-exit-animation-duration);-webkit-animation-timing-function:var(--_dialog-exit-animation-easing);animation-timing-function:var(--_dialog-exit-animation-easing)}:host([visible]:not([animation-type=none]):is(:not([animation-type]),[animation-type=zoom])) dialog.forge-dialog[open] .surface{-webkit-animation-name:zoom-in;animation-name:zoom-in}:host([visible]:not([animation-type=none]):is(:not([animation-type]),[animation-type=zoom])) dialog.forge-dialog[open] .surface.exiting{-webkit-animation-name:zoom-out;animation-name:zoom-out}:host([visible]:not([animation-type=none])[animation-type=fade]) dialog.forge-dialog[open] .surface{-webkit-animation-name:fade-in;animation-name:fade-in}:host([visible]:not([animation-type=none])[animation-type=fade]) dialog.forge-dialog[open] .surface.exiting{-webkit-animation-name:fade-out;animation-name:fade-out}:host([visible]:not([animation-type=none])[animation-type=slide]) dialog.forge-dialog[open] .surface{-webkit-animation-name:slide-in;animation-name:slide-in}:host([visible]:not([animation-type=none])[animation-type=slide]) dialog.forge-dialog[open] .surface.exiting{-webkit-animation-name:slide-out;animation-name:slide-out}}@layer placement{:host([placement=custom]) .surface{margin:0;top:var(--_dialog-position-x);left:var(--_dialog-position-y)}:host([placement=top]) .surface{--_dialog-block-start-spacing:var(--forge-dialog-block-start-spacing, 0);top:0;bottom:auto}:host([placement=top-right]) .surface{--_dialog-spacing:var(--forge-dialog-spacing, 0);top:0;left:auto;right:0;bottom:auto}:host([placement=top-left]) .surface{--_dialog-spacing:var(--forge-dialog-spacing, 0);top:0;left:0;right:auto;bottom:auto}:host([placement=bottom]) .surface{--_dialog-block-end-spacing:var(--forge-dialog-block-end-spacing, 0);top:auto;bottom:0}:host([placement=bottom-right]) .surface{--_dialog-spacing:var(--forge-dialog-spacing, 0);top:auto;left:auto;right:0;bottom:0}:host([placement=bottom-left]) .surface{--_dialog-spacing:var(--forge-dialog-spacing, 0);top:auto;left:0;right:auto;bottom:0}}@layer size-strategy{:host([size-strategy=container-inline]) .surface{width:100%}:host([size-strategy=container-block]) .surface{height:100%}}@layer preset{:host([visible]:not([animation-type=none]):is([preset=left-sheet],[preset=right-sheet],[preset=top-sheet],[preset=bottom-sheet])) .forge-dialog{--_dialog-enter-animation-duration:var(--_dialog-preset-sheet-enter-animation-duration);--_dialog-exit-animation-duration:var(--_dialog-preset-sheet-exit-animation-duration)}:host([visible]:not([animation-type=none]):is([preset=left-sheet],[preset=right-sheet],[preset=top-sheet],[preset=bottom-sheet])) .surface{-webkit-animation-name:slide-in;animation-name:slide-in}:host([visible]:not([animation-type=none]):is([preset=left-sheet],[preset=right-sheet],[preset=top-sheet],[preset=bottom-sheet])) .surface.exiting{-webkit-animation-name:slide-out;animation-name:slide-out}:host(:is([preset=left-sheet],[preset=right-sheet],[preset=top-sheet],[preset=bottom-sheet])) .surface{--_dialog-max-width:var(--forge-dialog-max-width, none);--_dialog-max-height:var(--forge-dialog-max-height, none);inset:auto}:host([preset=left-sheet]) .forge-dialog{--_dialog-slide-translate:var(--forge-dialog-slide-translate, -100% 0)}:host([preset=left-sheet]) .surface{left:0;bottom:0;top:0;height:100%;border-top-left-radius:0;border-bottom-left-radius:0}:host([preset=right-sheet]) .forge-dialog{--_dialog-slide-translate:var(--forge-dialog-slide-translate, 100% 0)}:host([preset=right-sheet]) .surface{right:0;bottom:0;top:0;height:100%;border-top-right-radius:0;border-bottom-right-radius:0}:host([preset=top-sheet]) .forge-dialog{--_dialog-slide-translate:var(--forge-dialog-slide-translate, 0 -100%)}:host([preset=top-sheet]) .surface{top:0;left:0;right:0;border-top-left-radius:0;border-top-right-radius:0}:host([preset=bottom-sheet]) .forge-dialog{--_dialog-slide-translate:var(--forge-dialog-slide-translate, 0 100%)}:host([preset=bottom-sheet]) .surface{bottom:0;left:0;right:0;border-bottom-left-radius:0;border-bottom-right-radius:0}}@layer fullscreen{:host([fullscreen]) .forge-dialog{--_dialog-enter-animation-duration:var(--_dialog-fullscreen-enter-animation-duration);--_dialog-exit-animation-duration:var(--_dialog-fullscreen-exit-animation-duration)}:host([fullscreen]) .surface{height:100%;width:100%;max-width:none;max-height:none;border-radius:0;-webkit-box-shadow:none;box-shadow:none}:host([fullscreen]) forge-backdrop{display:none}}@layer position-strategy{:host([position-strategy=viewport]) .forge-dialog{position:fixed}:host([position-strategy=container]) .forge-dialog{position:absolute}:host([position-strategy=container][preset$=-sheet]) .forge-dialog{contain:content}}@layer media{@media (prefers-reduced-motion:reduce){.surface{-webkit-animation-name:fade-in;animation-name:fade-in}.surface.exiting{-webkit-animation-name:fade-out;animation-name:fade-out}}}",J=H(N(I)),Q,a=class extends J{constructor(){super();C(this,q,K),this._foundation=new D(new k(this))}static get observedAttributes(){return Object.values(i.observedAttributes)}[(Q=c,E)](){this._foundation.hideBackdrop()}[y](){this._foundation.showBackdrop()}[B](o){return this._foundation.dispatchBeforeCloseEvent()}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.destroy()}attributeChangedCallback(o,r,t){switch(o){case i.observedAttributes.OPEN:this.open=h(t);break;case i.observedAttributes.MODE:this.mode=t!=null?t:i.defaults.MODE;break;case i.observedAttributes.TYPE:this.type=t!=null?t:i.defaults.TYPE;break;case i.observedAttributes.ANIMATION_TYPE:this.animationType=t!=null?t:i.defaults.ANIMATION_TYPE;break;case i.observedAttributes.PRESET:this.preset=t!=null?t:i.defaults.PRESET;break;case i.observedAttributes.PERSISTENT:this.persistent=h(t);break;case i.observedAttributes.FULLSCREEN:this.fullscreen=h(t);break;case i.observedAttributes.TRIGGER:this.trigger=t;break;case i.observedAttributes.MOVEABLE:this.moveable=h(t);break;case i.observedAttributes.POSITION_STRATEGY:this.positionStrategy=t!=null?t:i.defaults.POSITION_STRATEGY;break;case i.observedAttributes.SIZE_STRATEGY:this.sizeStrategy=t!=null?t:i.defaults.SIZE_STRATEGY;break;case i.observedAttributes.PLACEMENT:this.placement=t!=null?t:i.defaults.PLACEMENT;break}}show(){this.open=!0}hide(){this.open=!1}};a[Q]=new Set,l([d()],a.prototype,"open",2),l([d()],a.prototype,"mode",2),l([d()],a.prototype,"type",2),l([d()],a.prototype,"animationType",2),l([d()],a.prototype,"preset",2),l([d()],a.prototype,"persistent",2),l([d()],a.prototype,"fullscreen",2),l([d()],a.prototype,"trigger",2),l([d()],a.prototype,"triggerElement",2),l([d()],a.prototype,"moveable",2),l([d()],a.prototype,"positionStrategy",2),l([d()],a.prototype,"sizeStrategy",2),l([d()],a.prototype,"placement",2),a=l([w({name:i.elementName,dependencies:[R]})],a);function it(){A(a)}export{i as a,E as b,y as c,c as d,k as e,D as f,a as g,it as h};
|
|
7
|
+
//# sourceMappingURL=chunk.FLBYVCQ6.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/dialog/dialog-constants.ts", "../../src/dialog/dialog-adapter.ts", "../../src/core/mixins/interactions/moveable/with-moveable.ts", "../../src/core/controllers/move-controller.ts", "../../src/dialog/dialog-foundation.ts", "../../src/dialog/dialog.ts", "../../src/dialog/index.ts"],
|
|
4
|
+
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}dialog`;\n\nconst observedAttributes = {\n OPEN: 'open',\n VISIBLE: 'visible',\n MODE: 'mode',\n TYPE: 'type',\n ANIMATION_TYPE: 'animation-type',\n PRESET: 'preset',\n PERSISTENT: 'persistent',\n FULLSCREEN: 'fullscreen',\n TRIGGER: 'trigger',\n MOVEABLE: 'moveable',\n MOVE_TARGET: 'move-target',\n POSITION_STRATEGY: 'position-strategy',\n PLACEMENT: 'placement',\n SIZE_STRATEGY: 'size-strategy'\n};\n\nconst attributes = {\n ...observedAttributes\n};\n\nconst classes = {\n MOVED: 'moved',\n MOVING: 'moving'\n};\n\nconst selectors = {\n DIALOG: '.forge-dialog',\n SURFACE: '.surface',\n MOVE_HANDLE: '.move-handle',\n AUTOFOCUS: ':is([autofocus],[forge-dialog-focus])'\n};\n\nconst events = {\n BEFORE_CLOSE: `${elementName}-before-close`,\n OPEN: `${elementName}-open`,\n CLOSE: `${elementName}-close`,\n MOVE_START: `${elementName}-move-start`,\n MOVE: `${elementName}-move`,\n MOVE_END: `${elementName}-move-end`\n};\n\nconst defaults = {\n MODE: 'modal' as DialogMode,\n TYPE: 'dialog' as DialogType,\n ANIMATION_TYPE: 'zoom' as DialogAnimationType,\n PRESET: 'dialog' as DialogPreset,\n SIZE_STRATEGY: 'content' as DialogSizeStrategy,\n POSITION_STRATEGY: 'viewport' as DialogPositionStrategy,\n PLACEMENT: 'center' as DialogPlacement\n};\n\nexport const DIALOG_CONSTANTS = {\n elementName,\n observedAttributes,\n classes,\n attributes,\n selectors,\n events,\n defaults\n};\n\nexport interface IDialogMoveEventData {\n x: number;\n y: number;\n}\n\nexport interface IDialogMoveContext {\n top: number;\n left: number;\n height: number;\n width: number;\n}\n\nexport interface IDialogMoveStartEventData extends IDialogMoveEventData {}\n\nexport type DialogMode = 'modal' | 'inline-modal' | 'nonmodal';\nexport type DialogType = 'dialog' | 'alertdialog';\nexport type DialogAnimationType = 'none' | 'zoom' | 'fade' | 'slide' | 'slide-up' | 'slide-down' | 'slide-left' | 'slide-right';\nexport type DialogPositionStrategy = 'viewport' | 'container';\nexport type DialogPlacement = 'custom' | 'center' | 'top' | 'right' | 'bottom' | 'left' | 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left';\nexport type DialogSizeStrategy = 'content' | 'container-inline' | 'container-block';\nexport type DialogPreset = 'dialog' | 'bottom-sheet' | 'top-sheet' | 'left-sheet' | 'right-sheet';\n\nexport const hideBackdrop = Symbol('hideBackdrop');\nexport const showBackdrop = Symbol('showBackdrop');\nexport const dialogStack = Symbol('dialogStack');\n", "import { getShadowElement, playKeyframeAnimation } from '@tylertech/forge-core';\nimport { BACKDROP_CONSTANTS, IBackdropComponent } from '../backdrop';\nimport { setDefaultAria } from '../constants';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { DialogComponent, IDialogComponent } from './dialog';\nimport { dialogStack, DIALOG_CONSTANTS, hideBackdrop, showBackdrop } from './dialog-constants';\n\nexport interface IDialogAdapter extends IBaseAdapter {\n readonly hostElement: IDialogComponent;\n readonly moveHandleElement: HTMLElement;\n readonly surfaceElement: HTMLElement;\n triggerElement: HTMLElement | null;\n show(): void;\n hide(): Promise<void>;\n addDialogFormSubmitListener(listener: EventListener): void;\n removeDialogFormSubmitListener(listener: EventListener): void;\n addDialogCancelListener(listener: EventListener): void;\n removeDialogCancelListener(listener: EventListener): void;\n addBackdropDismissListener(listener: EventListener): void;\n removeBackdropDismissListener(listener: EventListener): void;\n tryAutofocus(): void;\n tryLocateTriggerElement(id: string | null): void;\n addTriggerInteractionListener(listener: EventListener): void;\n removeTriggerInteractionListener(listener: EventListener): void;\n hideBackdrop(): void;\n showBackdrop(): void;\n addSurfaceClass(className: string): void;\n removeSurfaceClass(className: string): void;\n}\n\nexport class DialogAdapter extends BaseAdapter<IDialogComponent> implements IDialogAdapter {\n private _dialogElement: HTMLDialogElement;\n private _surfaceElement: HTMLDivElement;\n private _backdropElement: IBackdropComponent;\n private _moveHandleElement: HTMLElement;\n\n public triggerElement: HTMLElement | null;\n\n public get moveHandleElement(): HTMLElement {\n return this._moveHandleElement;\n }\n\n public get surfaceElement(): HTMLElement {\n return this._surfaceElement;\n }\n\n constructor(component: IDialogComponent) {\n super(component);\n this._dialogElement = getShadowElement(component, DIALOG_CONSTANTS.selectors.DIALOG) as HTMLDialogElement;\n this._surfaceElement = getShadowElement(component, DIALOG_CONSTANTS.selectors.SURFACE) as HTMLDivElement;\n this._moveHandleElement = getShadowElement(component, DIALOG_CONSTANTS.selectors.MOVE_HANDLE) as HTMLElement;\n\n this._backdropElement = getShadowElement(component, BACKDROP_CONSTANTS.elementName) as IBackdropComponent;\n if (!this._backdropElement.shadowRoot) {\n window.customElements.upgrade(this._backdropElement);\n }\n }\n\n public show(): void {\n /* c8 ignore next 3 */\n if (this._dialogElement.open) {\n return;\n }\n\n this._component[setDefaultAria]({\n role: this._component.type,\n ariaModal: this._component.mode === 'modal' || this._component.mode === 'inline-modal' ? 'true' : 'false'\n }, { setAttribute: true });\n \n // Show the dialog (and backdrop) based on modal vs non-modal\n const isModal = this._component.mode === 'modal' || this._component.mode === 'inline-modal';\n if (isModal) {\n if (this._component.animationType === 'none') {\n this._backdropElement.show();\n } else {\n this._backdropElement.fadeIn();\n }\n }\n\n if (this._component.mode === 'modal') {\n this._dialogElement.showModal();\n } else {\n this._dialogElement.show();\n }\n\n if (isModal) {\n this._hideBackdrops();\n }\n\n DialogComponent[dialogStack].add(this._component);\n }\n\n private _hideBackdrops(): void {\n DialogComponent[dialogStack].forEach(dialog => dialog[hideBackdrop]());\n }\n\n private _showBackdropMostRecent(): void {\n Array.from(DialogComponent[dialogStack]).filter(dialog => dialog.mode === 'modal' || dialog.mode === 'inline-modal').at(-1)?.[showBackdrop]();\n }\n\n public async hide(): Promise<void> {\n this._component[setDefaultAria]({\n role: null,\n ariaModal: null\n }, { setAttribute: true });\n\n const close = (): void => {\n this._surfaceElement.classList.remove(BACKDROP_CONSTANTS.classes.EXITING);\n this._dialogElement.close();\n DialogComponent[dialogStack].delete(this._component);\n this._showBackdropMostRecent();\n };\n\n if (this._component.animationType === 'none') {\n return Promise.resolve(close());\n }\n\n this._backdropElement.fadeOut();\n await playKeyframeAnimation(this._surfaceElement, BACKDROP_CONSTANTS.classes.EXITING);\n close();\n }\n\n public addDialogFormSubmitListener(listener: EventListener): void {\n this._dialogElement.addEventListener('submit', listener);\n }\n\n public removeDialogFormSubmitListener(listener: EventListener): void {\n this._dialogElement.removeEventListener('submit', listener);\n }\n\n public addDialogCancelListener(listener: EventListener): void {\n this._dialogElement.addEventListener('cancel', listener);\n }\n\n public removeDialogCancelListener(listener: EventListener): void {\n this._dialogElement.removeEventListener('cancel', listener);\n }\n\n public addBackdropDismissListener(listener: EventListener): void {\n this._backdropElement.addEventListener('click', listener);\n }\n\n public removeBackdropDismissListener(listener: EventListener): void {\n this._backdropElement.removeEventListener('click', listener);\n }\n\n public tryAutofocus(): void {\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n if (this._component.open && this._dialogElement.isConnected && !this._component.matches(':focus-within')) {\n const autofocusElement = this._component.querySelector<HTMLElement>(DIALOG_CONSTANTS.selectors.AUTOFOCUS);\n autofocusElement?.focus();\n }\n });\n });\n }\n\n public tryLocateTriggerElement(id: string | null): void {\n if (!id) {\n this.triggerElement = null;\n return;\n }\n const rootNode = this._component.getRootNode() as Document | ShadowRoot;\n this.triggerElement = rootNode.querySelector<HTMLElement>(`#${id}`);\n }\n\n public addTriggerInteractionListener(listener: EventListener): void {\n this.triggerElement?.addEventListener('click', listener);\n }\n\n public removeTriggerInteractionListener(listener: EventListener): void {\n this.triggerElement?.removeEventListener('click', listener);\n }\n\n public hideBackdrop(): void {\n this._backdropElement.fadeOut();\n }\n\n public showBackdrop(): void {\n this._backdropElement.fadeIn();\n }\n\n public addSurfaceClass(className: string): void {\n this._surfaceElement.classList.add(className);\n }\n\n public removeSurfaceClass(className: string): void {\n this._surfaceElement.classList.remove(className);\n }\n}\n", "import { getActiveElement, isNumber, isString } from '@tylertech/forge-core';\nimport { AbstractConstructor, MixinBase } from '../../../../constants';\n\nexport interface IWithMoveableMoveContext {\n top: number;\n left: number;\n height: number;\n width: number;\n}\n\nexport declare abstract class WithMoveableContract {\n public stopMoveListener(): void;\n protected _movePointerDownListener: EventListener;\n protected abstract _getMoveableBounds(): { top: number; left: number; height: number; width: number };\n protected abstract _updatePosition(x: string | null, y: string | null): void;\n protected abstract _onMoveStart(): boolean;\n protected abstract _onMove(position: { x: number; y: number }): boolean;\n protected abstract _onMoveEnd(): void;\n}\n\n// eslint-disable-next-line @typescript-eslint/explicit-function-return-type\nexport function WithMoveable<TBase extends MixinBase<object>>(base: TBase = (class {} as unknown) as TBase) {\n abstract class Moveable extends base {\n private _isMoving = false;\n private _moveContext: IWithMoveableMoveContext | undefined;\n private _lastPosition: { x: number; y: number } | undefined;\n private _activeElement: HTMLElement | undefined = undefined;\n\n protected _movePointerDownListener = this._onMoveTargetPointerDown.bind(this);\n private _movePointerMoveListener = this._onMoveTargetPointerMove.bind(this);\n private _movePointerUpListener = this._onMoveTargetPointerUp.bind(this);\n\n protected abstract _getMoveableBounds(): { top: number; left: number; height: number; width: number };\n protected abstract _updatePosition(x: string | null, y: string | null): void;\n protected abstract _onMoveStart(): boolean;\n protected abstract _onMove(position: { x: number; y: number }): boolean;\n protected abstract _onMoveEnd(): void;\n\n public stopMoveListener(): void {\n this._updatePosition(null, null);\n document.removeEventListener('pointermove', this._movePointerMoveListener);\n document.removeEventListener('pointerup', this._movePointerUpListener);\n this._isMoving = false;\n this._moveContext = undefined;\n this._lastPosition = undefined;\n this._activeElement = undefined;\n }\n\n private _onMoveTargetPointerDown(evt: PointerEvent): void {\n evt.preventDefault();\n\n this._captureActiveElement();\n\n const bounds = this._getMoveableBounds();\n\n this._moveContext = {\n top: evt.pageY - bounds.top,\n left: evt.pageX - bounds.left,\n height: bounds.height,\n width: bounds.width\n };\n document.addEventListener('pointermove', this._movePointerMoveListener);\n document.addEventListener('pointerup', this._movePointerUpListener);\n }\n \n private _onMoveTargetPointerMove(evt: PointerEvent): void {\n evt.preventDefault();\n const position = this._calculateOffsetPosition(evt.pageX, evt.pageY, this._moveContext);\n \n // If this is the beginning of the move sequence, we emit the start event (to allow for preventing default) and\n // then update the surface position if not prevented\n if (!this._isMoving) {\n this._isMoving = true;\n const defaultPrevented = this._onMoveStart();\n if (defaultPrevented) {\n return;\n }\n }\n \n // Ensure that the surface position stays within the bounds of the screen\n const newPosition = this._clampPosition(position, this._moveContext);\n \n // Only update the position if it actually changed\n if (!this._lastPosition || newPosition.x !== this._lastPosition.x || newPosition.y !== this._lastPosition.y) {\n const defaultPrevented = this._onMove(newPosition);\n if (!defaultPrevented) {\n this._lastPosition = { ...newPosition };\n const newX = this._normalizePositionValue(newPosition.x);\n const newY = this._normalizePositionValue(newPosition.y);\n this._updatePosition(newX, newY);\n }\n }\n }\n \n private _onMoveTargetPointerUp(_evt: PointerEvent): void {\n if (this._isMoving) {\n this._onMoveEnd();\n }\n this._moveComplete();\n }\n \n private _moveComplete(): void {\n this._tryRestoreActiveElement();\n\n document.removeEventListener('pointermove', this._movePointerMoveListener);\n document.removeEventListener('pointerup', this._movePointerUpListener);\n\n this._lastPosition = undefined;\n this._moveContext = undefined;\n this._isMoving = false;\n }\n\n private _captureActiveElement(): void {\n this._activeElement = getActiveElement() as HTMLElement;\n this._activeElement?.blur();\n }\n\n private _tryRestoreActiveElement(): void {\n if (this._activeElement?.isConnected) {\n this._activeElement.focus();\n }\n this._activeElement = undefined;\n }\n\n private _normalizePositionValue(value: number | string | null | undefined): string | null {\n if (isNumber(value)) {\n return `${value}px`;\n } else if (isString(value)) {\n return value;\n }\n return null;\n }\n\n private _calculateOffsetPosition(pageX: number, pageY: number, context?: IWithMoveableMoveContext): { x: number; y: number } {\n return {\n x: pageX - (context?.left ?? 0),\n y: pageY - (context?.top ?? 0)\n };\n }\n\n private _clampPosition({ x, y }: { x: number; y: number }, context?: IWithMoveableMoveContext): { x: number; y: number } {\n let width = 0;\n let height = 0;\n \n if (context) {\n width = context.width;\n height = context.height;\n }\n \n if (x <= 0) {\n x = 0;\n } else if (x + width >= window.innerWidth) {\n x = window.innerWidth - width;\n }\n \n if (y <= 0) {\n y = 0;\n } else if (y + height >= window.innerHeight) {\n y = window.innerHeight - height;\n }\n \n return { x, y };\n }\n }\n\n return Moveable as AbstractConstructor<WithMoveableContract> & TBase;\n}\n", "import { WithMoveable } from '../mixins/interactions/moveable/with-moveable';\n\nexport interface IMoveControllerConfig {\n handleElement: HTMLElement;\n surfaceElement: HTMLElement;\n onMoveStart(): boolean;\n onMove(position: { x: number; y: number }): boolean;\n onMoveEnd(): void;\n}\n\nconst MoveBase = WithMoveable(Object);\n\nexport class MoveController extends MoveBase {\n constructor(private _config: IMoveControllerConfig) {\n super();\n this._startMoveListener();\n }\n\n public destroy(): void {\n this._stopMoveListener();\n super.stopMoveListener();\n }\n\n protected _getMoveableBounds(): DOMRect {\n return this._config.surfaceElement.getBoundingClientRect();\n }\n\n protected _updatePosition(x: string | null, y: string | null): void {\n this._config.surfaceElement.style.top = y != null ? y : '';\n this._config.surfaceElement.style.left = x != null ? x : '';\n }\n\n protected _onMoveStart(): boolean {\n return this._config.onMoveStart();\n }\n\n protected _onMove(position: { x: number; y: number }): boolean {\n return this._config.onMove(position);\n }\n\n protected _onMoveEnd(): void {\n this._config.onMoveEnd();\n }\n\n private _startMoveListener(): void {\n this._config.handleElement.addEventListener('pointerdown', this._movePointerDownListener);\n }\n\n private _stopMoveListener(): void {\n this._config.handleElement.removeEventListener('pointerdown', this._movePointerDownListener);\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { MoveController } from '../core/controllers/move-controller';\nimport { DismissibleStack } from '../core/utils/dismissible-stack';\nimport { IDialogAdapter } from './dialog-adapter';\nimport { DialogAnimationType, DialogMode, DialogPlacement, DialogPositionStrategy, DialogPreset, DialogSizeStrategy, DialogType, DIALOG_CONSTANTS, IDialogMoveEventData } from './dialog-constants';\n\nexport interface IDialogFoundation extends ICustomElementFoundation {\n open: boolean;\n mode: DialogMode;\n type: DialogType;\n animationType: DialogAnimationType;\n preset: DialogPreset;\n persistent: boolean;\n fullscreen: boolean;\n trigger: string;\n triggerElement: HTMLElement | null;\n positionStrategy: DialogPositionStrategy;\n sizeStrategy: DialogSizeStrategy;\n placement: DialogPlacement;\n moveable: boolean;\n hideBackdrop(): void;\n showBackdrop(): void;\n dispatchBeforeCloseEvent(): boolean;\n}\n\nexport class DialogFoundation implements IDialogFoundation {\n private _open = false;\n private _mode: DialogMode = DIALOG_CONSTANTS.defaults.MODE;\n private _type: DialogType = DIALOG_CONSTANTS.defaults.TYPE;\n private _animationType: DialogAnimationType = DIALOG_CONSTANTS.defaults.ANIMATION_TYPE;\n private _preset: DialogPreset = DIALOG_CONSTANTS.defaults.PRESET;\n private _persistent = false;\n private _fullscreen = false;\n private _trigger = '';\n private _moveable = false;\n private _sizeStrategy: DialogSizeStrategy = DIALOG_CONSTANTS.defaults.SIZE_STRATEGY;\n private _placement: DialogPlacement = DIALOG_CONSTANTS.defaults.PLACEMENT;\n private _positionStrategy: DialogPositionStrategy = DIALOG_CONSTANTS.defaults.POSITION_STRATEGY;\n private _moveController: MoveController | undefined;\n\n private _escapeDismissListener: EventListener = this._onEscapeDismiss.bind(this);\n private _backdropDismissListener: EventListener = this._onBackdropDismiss.bind(this);\n private _dialogFormSubmitListener: EventListener = this._onDialogFormSubmit.bind(this);\n private _triggerClickListener: EventListener = this._onTriggerClick.bind(this);\n\n constructor(public _adapter: IDialogAdapter) {}\n\n public initialize(): void {\n if (this._trigger && !this._adapter.triggerElement) {\n this._adapter.tryLocateTriggerElement(this._trigger);\n }\n\n if (this._adapter.triggerElement) {\n this._adapter.addTriggerInteractionListener(this._triggerClickListener);\n }\n\n if (this._open) {\n this._applyOpen();\n }\n }\n\n public destroy(): void {\n if (this._adapter.triggerElement) {\n this._adapter.removeTriggerInteractionListener(this._triggerClickListener);\n }\n\n if (this._moveController) {\n this._destroyMoveController();\n }\n\n if (this._open) {\n this._hide();\n }\n }\n\n public dispatchBeforeCloseEvent(): boolean {\n const evt = new CustomEvent(DIALOG_CONSTANTS.events.BEFORE_CLOSE, { cancelable: true, bubbles: true, composed: true });\n this._adapter.dispatchHostEvent(evt);\n return !evt.defaultPrevented;\n }\n\n public hideBackdrop(): void {\n this._adapter.hideBackdrop();\n }\n\n public showBackdrop(): void {\n this._adapter.showBackdrop();\n }\n\n private _show(): void {\n this._adapter.show();\n this._adapter.addDialogFormSubmitListener(this._dialogFormSubmitListener);\n DismissibleStack.instance.add(this._adapter.hostElement);\n\n if (this._mode === 'modal') {\n this._adapter.addDialogCancelListener(this._escapeDismissListener);\n } else if (this._mode === 'inline-modal') {\n this._adapter.addDocumentListener('keydown', this._escapeDismissListener);\n }\n\n if (!this._persistent) {\n this._adapter.addBackdropDismissListener(this._backdropDismissListener);\n }\n\n if (this._moveable && !this._fullscreen) {\n this._initializeMoveController();\n }\n\n this._adapter.dispatchHostEvent(new CustomEvent(DIALOG_CONSTANTS.events.OPEN, { bubbles: true, composed: true }));\n }\n\n private async _hide(): Promise<void> {\n this._adapter.removeDialogFormSubmitListener(this._dialogFormSubmitListener);\n this._adapter.removeDialogCancelListener(this._escapeDismissListener);\n this._adapter.removeDocumentListener('keydown', this._escapeDismissListener);\n this._adapter.removeBackdropDismissListener(this._backdropDismissListener);\n DismissibleStack.instance.remove(this._adapter.hostElement);\n\n await this._adapter.hide();\n\n if (this._moveController) {\n this._destroyMoveController();\n }\n\n this._adapter.dispatchHostEvent(new CustomEvent(DIALOG_CONSTANTS.events.CLOSE, { bubbles: true, composed: true }));\n }\n\n private async _applyOpen(): Promise<void> {\n if (this._open) {\n this._show();\n this._adapter.tryAutofocus();\n } else {\n await this._hide();\n }\n\n this._adapter.toggleHostAttribute(DIALOG_CONSTANTS.attributes.VISIBLE, this._open); // We use this for styling purposes to control animations\n this._adapter.toggleHostAttribute(DIALOG_CONSTANTS.attributes.OPEN, this._open);\n }\n\n private _onEscapeDismiss(evt: Event): void {\n if (evt.type === 'keydown') {\n const key = (evt as KeyboardEvent).key;\n if (key !== 'Escape' || !DismissibleStack.instance.isMostRecent(this._adapter.hostElement)) {\n return;\n }\n } else if (evt.type === 'cancel') {\n evt.preventDefault();\n }\n\n if (!this._persistent) {\n this._tryClose();\n }\n }\n\n private _onBackdropDismiss(): void {\n this._tryClose();\n }\n\n private _onDialogFormSubmit(evt: SubmitEvent): void {\n evt.stopPropagation();\n const isDialogSubmitter = evt.submitter?.getAttribute('formmethod') === 'dialog' ||\n (evt.target as HTMLFormElement)?.getAttribute('method') === 'dialog';\n if (isDialogSubmitter) {\n this._tryClose();\n }\n }\n\n private _tryClose(): void {\n if (this.dispatchBeforeCloseEvent()) {\n this.open = false;\n }\n }\n\n private _onTriggerClick(_evt: MouseEvent): void {\n this.open = !this._open;\n }\n\n private _initializeMoveController(): void {\n /* c8 ignore next 3 */\n if (this._moveController) {\n return;\n }\n\n const onMoveStart = (): boolean => {\n const event = new CustomEvent(DIALOG_CONSTANTS.events.MOVE_START, { cancelable: true });\n this._adapter.dispatchHostEvent(event);\n return event.defaultPrevented;\n };\n const onMove = (position: IDialogMoveEventData): boolean => {\n const event = new CustomEvent(DIALOG_CONSTANTS.events.MOVE, { detail: position, cancelable: true });\n this._adapter.dispatchHostEvent(event);\n\n if (!event.defaultPrevented) {\n this._adapter.addSurfaceClass(DIALOG_CONSTANTS.classes.MOVED);\n this._adapter.addSurfaceClass(DIALOG_CONSTANTS.classes.MOVING);\n }\n\n return event.defaultPrevented;\n };\n const onMoveEnd = (): void => {\n const event = new CustomEvent(DIALOG_CONSTANTS.events.MOVE_END);\n this._adapter.removeSurfaceClass(DIALOG_CONSTANTS.classes.MOVING);\n this._adapter.dispatchHostEvent(event);\n };\n const { moveHandleElement: handleElement, surfaceElement } = this._adapter;\n this._moveController = new MoveController({ handleElement, surfaceElement, onMoveStart, onMove, onMoveEnd });\n }\n\n private _destroyMoveController(): void {\n this._adapter.removeSurfaceClass(DIALOG_CONSTANTS.classes.MOVED);\n this._moveController?.destroy();\n this._moveController = undefined;\n }\n\n public get open(): boolean {\n return this._open;\n }\n public set open(value: boolean) {\n value = Boolean(value);\n if (this._open !== value) {\n this._open = value;\n if (this._adapter.isConnected) {\n this._applyOpen();\n }\n }\n }\n\n public get mode(): DialogMode {\n return this._mode;\n }\n public set mode(value: DialogMode) {\n if (this._mode !== value) {\n this._mode = value;\n this._adapter.setHostAttribute(DIALOG_CONSTANTS.attributes.MODE, this._mode);\n }\n }\n\n public get type(): DialogType {\n return this._type;\n }\n public set type(value: DialogType) {\n if (this._type !== value) {\n this._type = value;\n this._adapter.setHostAttribute(DIALOG_CONSTANTS.attributes.TYPE, this._type);\n }\n }\n\n public get animationType(): DialogAnimationType {\n return this._animationType;\n }\n public set animationType(value: DialogAnimationType) {\n if (this._animationType !== value) {\n this._animationType = value;\n this._adapter.setHostAttribute(DIALOG_CONSTANTS.attributes.ANIMATION_TYPE, this._animationType);\n }\n }\n\n public get preset(): DialogPreset {\n return this._preset;\n }\n public set preset(value: DialogPreset) {\n if (this._preset !== value) {\n this._preset = value;\n this._adapter.setHostAttribute(DIALOG_CONSTANTS.attributes.PRESET, this._preset);\n }\n }\n\n public get persistent(): boolean {\n return this._persistent;\n }\n public set persistent(value: boolean) {\n value = Boolean(value);\n if (this._persistent !== value) {\n this._persistent = value;\n this._adapter.toggleHostAttribute(DIALOG_CONSTANTS.attributes.PERSISTENT, this._persistent);\n }\n }\n\n public get fullscreen(): boolean {\n return this._fullscreen;\n }\n public set fullscreen(value: boolean) {\n value = Boolean(value);\n if (this._fullscreen !== value) {\n this._fullscreen = value;\n this._adapter.toggleHostAttribute(DIALOG_CONSTANTS.attributes.FULLSCREEN, this._fullscreen);\n }\n }\n\n public get trigger(): string {\n return this._trigger ?? '';\n }\n public set trigger(value: string) {\n if (this._trigger !== value) {\n this._trigger = value;\n\n if (this._adapter.triggerElement) {\n this._adapter.removeTriggerInteractionListener(this._triggerClickListener);\n }\n\n if (this._adapter.isConnected) {\n this._adapter.tryLocateTriggerElement(this._trigger);\n this._adapter.addTriggerInteractionListener(this._triggerClickListener);\n }\n this._adapter.setHostAttribute(DIALOG_CONSTANTS.attributes.TRIGGER, this._trigger);\n }\n }\n\n public get triggerElement(): HTMLElement | null {\n return this._adapter.triggerElement;\n }\n public set triggerElement(element: HTMLElement | null) {\n if (this._adapter.triggerElement) {\n this._adapter.removeTriggerInteractionListener(this._triggerClickListener);\n }\n\n if (this._trigger) {\n this._trigger = '';\n }\n\n this._adapter.triggerElement = element;\n\n if (this._adapter.isConnected) {\n this._adapter.addTriggerInteractionListener(this._triggerClickListener);\n }\n }\n\n public get moveable(): boolean {\n return this._moveable;\n }\n public set moveable(value: boolean) {\n value = Boolean(value);\n if (this._moveable !== value) {\n this._moveable = value;\n\n if (this._adapter.isConnected && this._open) {\n if (this._moveable) {\n this._initializeMoveController();\n } else {\n this._destroyMoveController();\n }\n }\n\n this._adapter.toggleHostAttribute(DIALOG_CONSTANTS.attributes.MOVEABLE, this._moveable);\n }\n }\n\n public get positionStrategy(): DialogPositionStrategy {\n return this._positionStrategy;\n }\n public set positionStrategy(value: DialogPositionStrategy) {\n if (this._positionStrategy !== value) {\n this._positionStrategy = value;\n this._adapter.setHostAttribute(DIALOG_CONSTANTS.attributes.POSITION_STRATEGY, this._positionStrategy);\n }\n }\n\n public get sizeStrategy(): DialogSizeStrategy {\n return this._sizeStrategy;\n }\n public set sizeStrategy(value: DialogSizeStrategy) {\n if (this._sizeStrategy !== value) {\n this._sizeStrategy = value;\n this._adapter.setHostAttribute(DIALOG_CONSTANTS.attributes.SIZE_STRATEGY, this._sizeStrategy);\n }\n }\n\n public get placement(): DialogPlacement {\n return this._placement;\n }\n public set placement(value: DialogPlacement) {\n if (this._placement !== value) {\n this._placement = value;\n this._adapter.setHostAttribute(DIALOG_CONSTANTS.attributes.PLACEMENT, this._placement);\n }\n }\n}\n", "import { attachShadowTemplate, coerceBoolean, CustomElement, FoundationProperty } from '@tylertech/forge-core';\nimport { BackdropComponent } from '../backdrop';\nimport { BaseComponent } from '../core/base/base-component';\nimport { IWithDefaultAria, WithDefaultAria } from '../core/mixins/internals/with-default-aria';\nimport { IWithElementInternals, WithElementInternals } from '../core/mixins/internals/with-element-internals';\nimport { DialogAdapter } from './dialog-adapter';\nimport { DialogFoundation } from './dialog-foundation';\nimport {\n DialogAnimationType,\n DialogMode,\n DialogPlacement,\n DialogPositionStrategy,\n DialogPreset,\n DialogSizeStrategy,\n dialogStack,\n DialogType,\n DIALOG_CONSTANTS,\n hideBackdrop,\n IDialogMoveEventData,\n IDialogMoveStartEventData,\n showBackdrop\n} from './dialog-constants';\nimport { IDismissible, IDismissibleStackState, tryDismiss } from '../core/utils/dismissible-stack';\n\nconst template = '<template><dialog class=\\\"forge-dialog\\\" part=\\\"root\\\"><forge-backdrop exportparts=\\\"root:backdrop\\\"></forge-backdrop><div class=\\\"surface\\\" part=\\\"surface\\\"><div class=\\\"move-handle-container\\\" part=\\\"move-handle-container\\\"><div class=\\\"move-handle\\\" part=\\\"move-handle\\\"><slot name=\\\"move-handle\\\"><svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" aria-hidden=\\\"true\\\" part=\\\"move-handle-icon\\\"><path d=\\\"M3 15v-2h2v2H3m0-4V9h2v2H3m4 4v-2h2v2H7m0-4V9h2v2H7m4 4v-2h2v2h-2m0-4V9h2v2h-2m4 4v-2h2v2h-2m0-4V9h2v2h-2m4 4v-2h2v2h-2m0-4V9h2v2h-2z\\\"/></svg></slot></div></div><slot></slot></div></dialog></template>';\nconst styles = '@-webkit-keyframes zoom-in{from{opacity:var(--_dialog-zoom-opacity);scale:var(--_dialog-zoom-scale)}to{opacity:1;scale:1}}@keyframes zoom-in{from{opacity:var(--_dialog-zoom-opacity);scale:var(--_dialog-zoom-scale)}to{opacity:1;scale:1}}@-webkit-keyframes zoom-out{from{opacity:1;scale:1}to{opacity:var(--_dialog-zoom-opacity);scale:var(--_dialog-zoom-scale)}}@keyframes zoom-out{from{opacity:1;scale:1}to{opacity:var(--_dialog-zoom-opacity);scale:var(--_dialog-zoom-scale)}}@-webkit-keyframes fade-in{from{opacity:var(--_dialog-fade-opacity)}to{opacity:1}}@keyframes fade-in{from{opacity:var(--_dialog-fade-opacity)}to{opacity:1}}@-webkit-keyframes fade-out{from{opacity:1}to{opacity:var(--_dialog-fade-opacity)}}@keyframes fade-out{from{opacity:1}to{opacity:var(--_dialog-fade-opacity)}}@-webkit-keyframes slide-in{from{opacity:var(--_dialog-slide-opacity);translate:var(--_dialog-slide-translate)}to{opacity:1;translate:0 0}}@keyframes slide-in{from{opacity:var(--_dialog-slide-opacity);translate:var(--_dialog-slide-translate)}to{opacity:1;translate:0 0}}@-webkit-keyframes slide-out{from{opacity:1;translate:0 0}to{opacity:var(--_dialog-slide-opacity);translate:var(--_dialog-slide-translate)}}@keyframes slide-out{from{opacity:1;translate:0 0}to{opacity:var(--_dialog-slide-opacity);translate:var(--_dialog-slide-translate)}}@layer base,nonmodal,animation,placement,size-strategy,preset,fullscreen,position-strategy,media; @layer base{:host{display:none;--forge-theme-surface:var(--forge-theme-surface-bright, #ffffff)}:host([hidden]){display:none}.forge-dialog{--_dialog-background:var(--forge-dialog-background, var(--forge-theme-surface-bright, #ffffff));--_dialog-shape:var(--forge-dialog-shape, var(--forge-shape-medium, 4px));--_dialog-elevation:var(--forge-dialog-elevation, 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12));--_dialog-spacing:var(--forge-dialog-spacing, auto);--_dialog-block-start-spacing:var(--forge-dialog-block-start-spacing, var(--_dialog-spacing));--_dialog-block-end-spacing:var(--forge-dialog-block-end-spacing, var(--_dialog-spacing));--_dialog-inline-start-spacing:var(--forge-dialog-inline-start-spacing, var(--_dialog-spacing));--_dialog-inline-end-spacing:var(--forge-dialog-inline-end-spacing, var(--_dialog-spacing));--_dialog-padding:var(--forge-dialog-padding, 0);--_dialog-width:var(--forge-dialog-width, fit-content);--_dialog-height:var(--forge-dialog-height, fit-content);--_dialog-min-width:var(--forge-dialog-min-width, 0);--_dialog-max-width:var(--forge-dialog-max-width, calc(100% - var(--forge-spacing-xxlarge, 48px)));--_dialog-min-height:var(--forge-dialog-min-height, 0);--_dialog-max-height:var(--forge-dialog-max-height, calc(100% - var(--forge-spacing-xxlarge, 48px)));--_dialog-z-index:var(--forge-dialog-z-index, var(--forge-z-index-dialog, 8));--_dialog-move-handle-color:var(--forge-dialog-move-handle-color, currentColor);--_dialog-move-handle-size:var(--forge-dialog-move-handle-size, 24px);--_dialog-move-handle-hover-cursor:var(--forge-dialog-move-handle-hover-cursor, grab);--_dialog-move-handle-active-cursor:var(--forge-dialog-move-handle-active-cursor, grabbing);--_dialog-move-handle-spacing:var(--forge-dialog-move-handle-spacing, calc(var(--forge-spacing-xxsmall, 4px) * -1) 0 0);--_dialog-move-transition-duration:var(--forge-dialog-move-transition-duration, var(--forge-animation-duration-short4, 200ms));--_dialog-move-transition-easing:var(--forge-dialog-move-transition-easing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_dialog-moving-opacity:var(--forge-dialog-moving-opacity, 0.54);--_dialog-enter-animation-duration:var(--forge-dialog-enter-animation-duration, var(--forge-animation-duration-medium1, 250ms));--_dialog-enter-animation-easing:var(--forge-dialog-enter-animation-easing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_dialog-exit-animation-duration:var(--forge-dialog-exit-animation-duration, var(--forge-animation-duration-short2, 100ms));--_dialog-exit-animation-easing:var(--forge-dialog-exit-animation-easing, var(--forge-animation-easing-emphasized-accelerate, cubic-bezier(0.3, 0, 0.8, 0.15)));--_dialog-zoom-opacity:var(--forge-dialog-zoom-opacity, 0);--_dialog-zoom-scale:var(--forge-dialog-zoom-scale, 0.8);--_dialog-fade-opacity:var(--forge-dialog-fade-opacity, 0);--_dialog-slide-opacity:var(--forge-dialog-slide-opacity, 0);--_dialog-slide-translate:var(--forge-dialog-slide-translate, 0 -30%);--_dialog-backdrop-opacity:var(--forge-dialog-backdrop-opacity, var(--forge-backdrop-opacity, 0.54));--_dialog-nonmodal-elevation:var(--forge-dialog-nonmodal-elevation, 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12));--_dialog-fullscreen-enter-animation-duration:var(--forge-dialog-fullscreen-enter-animation-duration, var(--forge-animation-duration-medium1, 250ms));--_dialog-fullscreen-exit-animation-duration:var(--forge-dialog-fullscreen-exit-animation-duration, var(--forge-animation-duration-short2, 100ms));--_dialog-position-x:var(--forge-dialog-position-x, 0);--_dialog-position-y:var(--forge-dialog-position-y, 0);--_dialog-preset-sheet-enter-animation-duration:var(--forge-dialog-preset-sheet-enter-animation-duration, var(--forge-animation-duration-medium1, 250ms));--_dialog-preset-sheet-exit-animation-duration:var(--forge-dialog-preset-sheet-exit-animation-duration, var(--forge-animation-duration-short3, 150ms))}.forge-dialog{position:fixed;inset:0;z-index:var(--_dialog-z-index);background-color:transparent;color:inherit;border:none;width:auto;height:auto;padding:0;margin:0;overflow:visible;max-width:100%;max-height:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.container{display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;width:100%;height:100%}.surface{position:absolute;inset:0;background:var(--_dialog-background);-webkit-box-shadow:var(--_dialog-elevation);box-shadow:var(--_dialog-elevation);z-index:var(--_dialog-z-index);overflow:hidden;border-radius:var(--_dialog-shape);-webkit-margin-before:var(--_dialog-block-start-spacing);margin-block-start:var(--_dialog-block-start-spacing);-webkit-margin-after:var(--_dialog-block-end-spacing);margin-block-end:var(--_dialog-block-end-spacing);-webkit-margin-start:var(--_dialog-inline-start-spacing);margin-inline-start:var(--_dialog-inline-start-spacing);-webkit-margin-end:var(--_dialog-inline-end-spacing);margin-inline-end:var(--_dialog-inline-end-spacing);padding:var(--_dialog-padding);width:var(--_dialog-width);height:var(--_dialog-height);min-width:var(--_dialog-min-width);max-width:var(--_dialog-max-width);min-height:var(--_dialog-min-height);max-height:var(--_dialog-max-height);-webkit-box-sizing:border-box;box-sizing:border-box}dialog.forge-dialog::-webkit-backdrop{display:none}dialog.forge-dialog::backdrop{display:none}forge-backdrop{--forge-backdrop-opacity:var(--_dialog-backdrop-opacity);--forge-backdrop-enter-animation-duration:var(--_dialog-enter-animation-duration);--forge-backdrop-enter-animation-easing:var(--_dialog-enter-animation-easing);--forge-backdrop-exit-animation-duration:var(--_dialog-exit-animation-duration);--forge-backdrop-exit-animation-easing:var(--_dialog-exit-animation-easing)}:host(:not([moveable])) .move-handle{display:none}:host([moveable]:not([fullscreen]):not([preset])) .surface{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition-property:opacity;transition-property:opacity;-webkit-transition-duration:var(--_dialog-move-transition-duration);transition-duration:var(--_dialog-move-transition-duration);-webkit-transition-timing-function:var(--_dialog-move-transition-easing);transition-timing-function:var(--_dialog-move-transition-easing)}:host([moveable]:not([fullscreen]):not([preset])) .surface:not(:hover) .move-handle-container{display:none}:host([moveable]:not([fullscreen]):not([preset])) .surface.moved{margin:0}:host([moveable]:not([fullscreen]):not([preset])) .surface.moving{opacity:var(--_dialog-moving-opacity)}:host([moveable]:not([fullscreen]):not([preset])) .move-handle-container{position:absolute;top:0;z-index:1;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;width:100%}:host([moveable]:not([fullscreen]):not([preset])) .move-handle-container .move-handle{fill:var(--_dialog-move-handle-color);height:var(--_dialog-move-handle-size);width:var(--_dialog-move-handle-size);margin:var(--_dialog-move-handle-spacing);touch-action:none}:host([moveable]:not([fullscreen]):not([preset])) .move-handle-container .move-handle:hover{cursor:var(--_dialog-move-handle-hover-cursor)}:host([moveable]:not([fullscreen]):not([preset])) .move-handle-container .move-handle:active{cursor:var(--_dialog-move-handle-active-cursor)}:host([moveable]:not([fullscreen]):not([preset])) .move-handle-container .move-handle svg{fill:currentColor}:host([visible]){display:initial}}@layer nonmodal{:host([mode=nonmodal]) .forge-dialog{pointer-events:none}:host([mode=nonmodal]) .container{display:contents}:host([mode=nonmodal]) .surface{--_dialog-elevation:var(--_dialog-nonmodal-elevation);pointer-events:all}:host([mode=nonmodal]) forge-backdrop{display:none}}@layer animation{:host([visible]:not([animation-type=none])) dialog.forge-dialog[open] .surface{-webkit-animation-duration:var(--_dialog-enter-animation-duration);animation-duration:var(--_dialog-enter-animation-duration);-webkit-animation-timing-function:var(--_dialog-enter-animation-easing);animation-timing-function:var(--_dialog-enter-animation-easing)}:host([visible]:not([animation-type=none])) dialog.forge-dialog[open] .surface.exiting{-webkit-animation-duration:var(--_dialog-exit-animation-duration);animation-duration:var(--_dialog-exit-animation-duration);-webkit-animation-timing-function:var(--_dialog-exit-animation-easing);animation-timing-function:var(--_dialog-exit-animation-easing)}:host([visible]:not([animation-type=none]):is(:not([animation-type]),[animation-type=zoom])) dialog.forge-dialog[open] .surface{-webkit-animation-name:zoom-in;animation-name:zoom-in}:host([visible]:not([animation-type=none]):is(:not([animation-type]),[animation-type=zoom])) dialog.forge-dialog[open] .surface.exiting{-webkit-animation-name:zoom-out;animation-name:zoom-out}:host([visible]:not([animation-type=none])[animation-type=fade]) dialog.forge-dialog[open] .surface{-webkit-animation-name:fade-in;animation-name:fade-in}:host([visible]:not([animation-type=none])[animation-type=fade]) dialog.forge-dialog[open] .surface.exiting{-webkit-animation-name:fade-out;animation-name:fade-out}:host([visible]:not([animation-type=none])[animation-type=slide]) dialog.forge-dialog[open] .surface{-webkit-animation-name:slide-in;animation-name:slide-in}:host([visible]:not([animation-type=none])[animation-type=slide]) dialog.forge-dialog[open] .surface.exiting{-webkit-animation-name:slide-out;animation-name:slide-out}}@layer placement{:host([placement=custom]) .surface{margin:0;top:var(--_dialog-position-x);left:var(--_dialog-position-y)}:host([placement=top]) .surface{--_dialog-block-start-spacing:var(--forge-dialog-block-start-spacing, 0);top:0;bottom:auto}:host([placement=top-right]) .surface{--_dialog-spacing:var(--forge-dialog-spacing, 0);top:0;left:auto;right:0;bottom:auto}:host([placement=top-left]) .surface{--_dialog-spacing:var(--forge-dialog-spacing, 0);top:0;left:0;right:auto;bottom:auto}:host([placement=bottom]) .surface{--_dialog-block-end-spacing:var(--forge-dialog-block-end-spacing, 0);top:auto;bottom:0}:host([placement=bottom-right]) .surface{--_dialog-spacing:var(--forge-dialog-spacing, 0);top:auto;left:auto;right:0;bottom:0}:host([placement=bottom-left]) .surface{--_dialog-spacing:var(--forge-dialog-spacing, 0);top:auto;left:0;right:auto;bottom:0}}@layer size-strategy{:host([size-strategy=container-inline]) .surface{width:100%}:host([size-strategy=container-block]) .surface{height:100%}}@layer preset{:host([visible]:not([animation-type=none]):is([preset=left-sheet],[preset=right-sheet],[preset=top-sheet],[preset=bottom-sheet])) .forge-dialog{--_dialog-enter-animation-duration:var(--_dialog-preset-sheet-enter-animation-duration);--_dialog-exit-animation-duration:var(--_dialog-preset-sheet-exit-animation-duration)}:host([visible]:not([animation-type=none]):is([preset=left-sheet],[preset=right-sheet],[preset=top-sheet],[preset=bottom-sheet])) .surface{-webkit-animation-name:slide-in;animation-name:slide-in}:host([visible]:not([animation-type=none]):is([preset=left-sheet],[preset=right-sheet],[preset=top-sheet],[preset=bottom-sheet])) .surface.exiting{-webkit-animation-name:slide-out;animation-name:slide-out}:host(:is([preset=left-sheet],[preset=right-sheet],[preset=top-sheet],[preset=bottom-sheet])) .surface{--_dialog-max-width:var(--forge-dialog-max-width, none);--_dialog-max-height:var(--forge-dialog-max-height, none);inset:auto}:host([preset=left-sheet]) .forge-dialog{--_dialog-slide-translate:var(--forge-dialog-slide-translate, -100% 0)}:host([preset=left-sheet]) .surface{left:0;bottom:0;top:0;height:100%;border-top-left-radius:0;border-bottom-left-radius:0}:host([preset=right-sheet]) .forge-dialog{--_dialog-slide-translate:var(--forge-dialog-slide-translate, 100% 0)}:host([preset=right-sheet]) .surface{right:0;bottom:0;top:0;height:100%;border-top-right-radius:0;border-bottom-right-radius:0}:host([preset=top-sheet]) .forge-dialog{--_dialog-slide-translate:var(--forge-dialog-slide-translate, 0 -100%)}:host([preset=top-sheet]) .surface{top:0;left:0;right:0;border-top-left-radius:0;border-top-right-radius:0}:host([preset=bottom-sheet]) .forge-dialog{--_dialog-slide-translate:var(--forge-dialog-slide-translate, 0 100%)}:host([preset=bottom-sheet]) .surface{bottom:0;left:0;right:0;border-bottom-left-radius:0;border-bottom-right-radius:0}}@layer fullscreen{:host([fullscreen]) .forge-dialog{--_dialog-enter-animation-duration:var(--_dialog-fullscreen-enter-animation-duration);--_dialog-exit-animation-duration:var(--_dialog-fullscreen-exit-animation-duration)}:host([fullscreen]) .surface{height:100%;width:100%;max-width:none;max-height:none;border-radius:0;-webkit-box-shadow:none;box-shadow:none}:host([fullscreen]) forge-backdrop{display:none}}@layer position-strategy{:host([position-strategy=viewport]) .forge-dialog{position:fixed}:host([position-strategy=container]) .forge-dialog{position:absolute}:host([position-strategy=container][preset$=-sheet]) .forge-dialog{contain:content}}@layer media{@media (prefers-reduced-motion:reduce){.surface{-webkit-animation-name:fade-in;animation-name:fade-in}.surface.exiting{-webkit-animation-name:fade-out;animation-name:fade-out}}}';\n\nexport interface IDialogComponent extends IWithDefaultAria, IWithElementInternals, IDismissible {\n open: boolean;\n mode: DialogMode;\n type: DialogType;\n animationType: DialogAnimationType;\n preset: DialogPreset;\n persistent: boolean;\n fullscreen: boolean;\n trigger: string;\n triggerElement: HTMLElement | null;\n positionStrategy: DialogPositionStrategy;\n sizeStrategy: DialogSizeStrategy;\n placement: DialogPlacement;\n moveable: boolean;\n show(): void;\n hide(): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-dialog': IDialogComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-dialog-open': CustomEvent<void>;\n 'forge-dialog-close': CustomEvent<void>;\n 'forge-dialog-before-close': CustomEvent<void>;\n 'forge-dialog-move-start': CustomEvent<IDialogMoveStartEventData>;\n 'forge-dialog-move': CustomEvent<IDialogMoveEventData>;\n 'forge-dialog-move-end': CustomEvent<void>;\n }\n}\n\nconst BaseClass = WithDefaultAria(WithElementInternals(BaseComponent));\n\n/**\n * @tag forge-dialog\n * \n * @summary Dialogs are temporary UI elements that are used to display information, ask for input, or confirm actions.\n * \n * @property {boolean} open - Indicates whether the dialog is open.\n * @property {DialogMode} mode - The mode of the dialog. Default is 'modal'.\n * @property {DialogType} type - The type of the dialog. Default is 'dialog'.\n * @property {DialogAnimationType} animationType - The animation type of the dialog.\n * @property {DialogPreset} preset - The preset design that the dialog will apply.\n * @property {boolean} persistent - Indicates whether the dialog is dismissible via escape and backdrop click or not.\n * @property {boolean} fullscreen - Indicates whether the dialog is fullscreen or not.\n * @property {string} trigger - The selector of the element that triggers the dialog.\n * @property {HTMLElement | null} triggerElement - The element that triggers the dialog.\n * @property {boolean} moveable - Indicates whether the dialog is moveable or not.\n * @property {DialogPositionStrategy} positionStrategy - Controls whether the dialog is rendered relative to the viewport its nearest containing block.\n * @property {DialogSizeStrategy} sizeStrategy - Controls the block and/or inline size of the dialog. Defaults to the size of the content it contains.\n * @property {DialogPlacement} placement - The placement of the dialog. Defaults to center.\n * \n * @attribute {boolean} open - Indicates whether the dialog is open.\n * @attribute {DialogMode} mode - The mode of the dialog. Default is 'modal'.\n * @attribute {DialogType} type - The type of the dialog. Default is 'dialog'.\n * @attribute {DialogAnimationType} animationType - The animation type of the dialog.\n * @attribute {DialogPreset} preset - The preset design that the dialog will apply.\n * @attribute {boolean} persistent - Indicates whether the dialog is dismissible via escape and backdrop click or not.\n * @attribute {boolean} fullscreen - Indicates whether the dialog is fullscreen or not.\n * @attribute {string} trigger - The selector of the element that triggers the dialog.\n * @attribute {boolean} moveable - Indicates whether the dialog is moveable or not.\n * @attribute {DialogPositionStrategy} positionStrategy - Controls whether the dialog is rendered relative to the viewport its nearest containing block.\n * @attribute {DialogSizeStrategy} sizeStrategy - Controls the block and/or inline size of the dialog. Defaults to the size of the content it contains.\n * @attribute {DialogPlacement} placement - The placement of the dialog. Defaults to center.\n * \n * @event {CustomEvent<void>} forge-dialog-open - Dispatched when the dialog is opened.\n * @event {CustomEvent<void>} forge-dialog-close - Dispatched when the dialog is closed.\n * @event {CustomEvent<void>} forge-dialog-before-close - Dispatched before the dialog is closed. This event is cancelable.\n * @event {CustomEvent<IDialogMoveStartEventData>} forge-dialog-move-start - Dispatched when the dialog is first moved.\n * @event {CustomEvent<IDialogMoveEventData>} forge-dialog-move - Dispatched when the dialog is being moved.\n * @event {CustomEvent<void>} forge-dialog-move-end - Dispatched when the dialog is done being moved.\n * \n * @cssproperty --forge-dialog-background - The background color of the dialog.\n * @cssproperty --forge-dialog-shape - The shape of the dialog.\n * @cssproperty --forge-dialog-elevation - The elevation of the dialog.\n * @cssproperty --forge-dialog-spacing - The spacing between elements inside the dialog.\n * @cssproperty --forge-dialog-block-start-spacing - The spacing at the start of the dialog block.\n * @cssproperty --forge-dialog-block-end-spacing - The spacing at the end of the dialog block.\n * @cssproperty --forge-dialog-inline-start-spacing - The spacing at the start of the dialog inline.\n * @cssproperty --forge-dialog-inline-end-spacing - The spacing at the end of the dialog inline.\n * @cssproperty --forge-dialog-padding - The padding of the dialog.\n * @cssproperty --forge-dialog-width - The width of the dialog.\n * @cssproperty --forge-dialog-height - The height of the dialog.\n * @cssproperty --forge-dialog-min-width - The minimum width of the dialog.\n * @cssproperty --forge-dialog-max-width - The maximum width of the dialog.\n * @cssproperty --forge-dialog-min-height - The minimum height of the dialog.\n * @cssproperty --forge-dialog-max-height - The maximum height of the dialog.\n * @cssproperty --forge-dialog-z-index - The z-index of the dialog.\n * @cssproperty --forge-dialog-move-handle-color - The color of the move handle.\n * @cssproperty --forge-dialog-move-handle-size - The size of the move handle.\n * @cssproperty --forge-dialog-move-handle-hover-cursor - The cursor style when hovering over the move handle.\n * @cssproperty --forge-dialog-move-handle-active-cursor - The cursor style when the move handle is active.\n * @cssproperty --forge-dialog-move-handle-spacing - The spacing around the move handle.\n * @cssproperty --forge-dialog-move-transition-duration - The duration of the move transition.\n * @cssproperty --forge-dialog-move-transition-easing - The easing function of the move transition.\n * @cssproperty --forge-dialog-moving-opacity - The opacity of the dialog when it is being moved.\n * @cssproperty --forge-dialog-enter-animation-duration - The duration of the enter animation.\n * @cssproperty --forge-dialog-enter-animation-easing - The easing function of the enter animation.\n * @cssproperty --forge-dialog-exit-animation-duration - The duration of the exit animation.\n * @cssproperty --forge-dialog-exit-animation-easing - The easing function of the exit animation.\n * @cssproperty --forge-dialog-zoom-opacity - The opacity of the dialog during zoom animation.\n * @cssproperty --forge-dialog-zoom-scale - The scale of the dialog during zoom animation.\n * @cssproperty --forge-dialog-fade-opacity - The opacity of the dialog during fade animation.\n * @cssproperty --forge-dialog-slide-opacity - The opacity of the dialog during slide animation.\n * @cssproperty --forge-dialog-slide-translate - The translation distance of the dialog during slide animation.\n * @cssproperty --forge-dialog-backdrop-opacity - The opacity of the dialog backdrop.\n * @cssproperty --forge-dialog-nonmodal-elevation - The elevation of non-modal dialogs.\n * @cssproperty --forge-dialog-fullscreen-enter-animation-duration - The duration of the enter animation for fullscreen dialogs.\n * @cssproperty --forge-dialog-fullscreen-exit-animation-duration - The duration of the exit animation for fullscreen dialogs.\n * @cssproperty --forge-dialog-position-x - The x-axis position of the dialog.\n * @cssproperty --forge-dialog-position-y - The y-axis position of the dialog.\n * @cssproperty --forge-dialog-preset-sheet-enter-animation-duration - The duration of the enter animation for preset sheet dialogs.\n * @cssproperty --forge-dialog-preset-sheet-exit-animation-duration - The duration of the exit animation for preset sheet dialogs.\n * \n * @csspart root - The dialog container element.\n * @csspart backdrop - The backdrop element.\n * @csspart surface - The dialog surface element.\n * @csspart move-handle-container - The alignment container for the move handle.\n * @csspart move-handle - The move handle element.\n * @csspart move-handle-icon - The move handle icon element.\n * \n * @slot - The content of the dialog.\n * @slot move-handle - The move handle content.\n */\n@CustomElement({\n name: DIALOG_CONSTANTS.elementName,\n dependencies: [\n BackdropComponent\n ]\n})\nexport class DialogComponent extends BaseClass implements IDialogComponent {\n public static get observedAttributes(): string[] {\n return Object.values(DIALOG_CONSTANTS.observedAttributes);\n }\n\n /** Contains all the dialogs that are currently open. */\n public static readonly [dialogStack]: Set<IDialogComponent> = new Set();\n\n private _foundation: DialogFoundation;\n\n public [hideBackdrop](): void {\n this._foundation.hideBackdrop();\n }\n \n public [showBackdrop](): void {\n this._foundation.showBackdrop();\n }\n\n public [tryDismiss](_state?: IDismissibleStackState<string> | undefined): boolean {\n return this._foundation.dispatchBeforeCloseEvent();\n }\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new DialogFoundation(new DialogAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.destroy();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case DIALOG_CONSTANTS.observedAttributes.OPEN:\n this.open = coerceBoolean(newValue);\n break;\n case DIALOG_CONSTANTS.observedAttributes.MODE:\n this.mode = newValue as DialogMode ?? DIALOG_CONSTANTS.defaults.MODE;\n break;\n case DIALOG_CONSTANTS.observedAttributes.TYPE:\n this.type = newValue as DialogType ?? DIALOG_CONSTANTS.defaults.TYPE;\n break;\n case DIALOG_CONSTANTS.observedAttributes.ANIMATION_TYPE:\n this.animationType = newValue as DialogAnimationType ?? DIALOG_CONSTANTS.defaults.ANIMATION_TYPE;\n break;\n case DIALOG_CONSTANTS.observedAttributes.PRESET:\n this.preset = newValue as DialogPreset ?? DIALOG_CONSTANTS.defaults.PRESET;\n break;\n case DIALOG_CONSTANTS.observedAttributes.PERSISTENT:\n this.persistent = coerceBoolean(newValue);\n break;\n case DIALOG_CONSTANTS.observedAttributes.FULLSCREEN:\n this.fullscreen = coerceBoolean(newValue);\n break;\n case DIALOG_CONSTANTS.observedAttributes.TRIGGER:\n this.trigger = newValue;\n break;\n case DIALOG_CONSTANTS.observedAttributes.MOVEABLE:\n this.moveable = coerceBoolean(newValue);\n break;\n case DIALOG_CONSTANTS.observedAttributes.POSITION_STRATEGY:\n this.positionStrategy = newValue as DialogPositionStrategy ?? DIALOG_CONSTANTS.defaults.POSITION_STRATEGY;\n break;\n case DIALOG_CONSTANTS.observedAttributes.SIZE_STRATEGY:\n this.sizeStrategy = newValue as DialogSizeStrategy ?? DIALOG_CONSTANTS.defaults.SIZE_STRATEGY;\n break;\n case DIALOG_CONSTANTS.observedAttributes.PLACEMENT:\n this.placement = newValue as DialogPlacement ?? DIALOG_CONSTANTS.defaults.PLACEMENT;\n break;\n }\n }\n\n @FoundationProperty()\n public declare open: boolean;\n \n @FoundationProperty()\n public declare mode: DialogMode;\n\n @FoundationProperty()\n public declare type: DialogType;\n\n @FoundationProperty()\n public declare animationType: DialogAnimationType;\n\n @FoundationProperty()\n public declare preset: DialogPreset;\n\n @FoundationProperty()\n public declare persistent: boolean;\n\n @FoundationProperty()\n public declare fullscreen: boolean;\n\n @FoundationProperty()\n public declare trigger: string;\n\n @FoundationProperty()\n public declare triggerElement: HTMLElement | null;\n\n @FoundationProperty()\n public declare moveable: boolean;\n\n @FoundationProperty()\n public declare positionStrategy: DialogPositionStrategy;\n\n @FoundationProperty()\n public declare sizeStrategy: DialogSizeStrategy;\n\n @FoundationProperty()\n public declare placement: DialogPlacement;\n\n public show(): void {\n this.open = true;\n }\n\n public hide(): void {\n this.open = false;\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { DialogComponent } from './dialog';\n\nexport * from './dialog-adapter';\nexport * from './dialog-constants';\nexport * from './dialog-foundation';\nexport * from './dialog';\n\nexport function defineDialogComponent(): void {\n defineCustomElement(DialogComponent);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["elementName", "COMPONENT_NAME_PREFIX", "observedAttributes", "attributes", "__spreadValues", "classes", "selectors", "events", "defaults", "DIALOG_CONSTANTS", "hideBackdrop", "showBackdrop", "dialogStack", "DialogAdapter", "BaseAdapter", "component", "getShadowElement", "DIALOG_CONSTANTS", "BACKDROP_CONSTANTS", "setDefaultAria", "isModal", "DialogComponent", "dialogStack", "dialog", "hideBackdrop", "_a", "showBackdrop", "close", "playKeyframeAnimation", "listener", "autofocusElement", "id", "rootNode", "className", "WithMoveable", "base", "Moveable", "evt", "bounds", "position", "newPosition", "__spreadValues", "newX", "newY", "_evt", "_a", "getActiveElement", "value", "isNumber", "isString", "pageX", "pageY", "context", "_b", "x", "y", "width", "height", "MoveBase", "WithMoveable", "MoveController", "_config", "x", "y", "position", "DialogFoundation", "_adapter", "DIALOG_CONSTANTS", "evt", "DismissibleStack", "_a", "_b", "_evt", "onMoveStart", "event", "onMove", "position", "onMoveEnd", "handleElement", "surfaceElement", "MoveController", "value", "element", "template", "styles", "BaseClass", "WithDefaultAria", "WithElementInternals", "BaseComponent", "_a", "DialogComponent", "attachShadowTemplate", "DialogFoundation", "DialogAdapter", "DIALOG_CONSTANTS", "dialogStack", "hideBackdrop", "showBackdrop", "tryDismiss", "_state", "name", "oldValue", "newValue", "coerceBoolean", "__decorateClass", "FoundationProperty", "CustomElement", "BackdropComponent", "defineDialogComponent", "defineCustomElement", "DialogComponent"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import{j as m}from"./chunk.SB2LOK2R.js";import{a as n}from"./chunk.NVUMRW44.js";import{a as b}from"./chunk.OLFOVKQG.js";import{a as _,b as g}from"./chunk.VRSPT7WX.js";import{e as h,k as p}from"./chunk.LNTTU2GL.js";import{k as c}from"./chunk.J2M2MXP2.js";import{a as f,d as o}from"./chunk.M3QDAYD2.js";var d=class extends b{constructor(e){super(e);this._targetElement=null}destroy(){this._targetElement=null}hasTargetElement(){return!!this._targetElement}addTargetListener(e,s){var r;(r=this._targetElement)==null||r.addEventListener(e,s)}removeTargetListener(e,s){var r;(r=this._targetElement)==null||r.removeEventListener(e,s)}getTargetElement(){return this._targetElement}setTargetElement(e){this._targetElement=e}trySetTarget(e){this._targetElement=m(this._component,e)}isActive(e,s){let r=s!=null?s:this._targetElement;return!!(r!=null&&r.matches(e))}};var v=`${g}focus-indicator`,w={TARGET:"target",ACTIVE:"active",INWARD:"inward",CIRCULAR:"circular",ALLOW_FOCUS:"allow-focus",FOCUS_MODE:"focus-mode"},E=f({},w),T={FOCUS_MODE:"focusin"},i={elementName:v,attributes:E,defaults:T};var u=class{constructor(t){this._adapter=t;this._target=null;this._active=!1;this._inward=!1;this._circular=!1;this._allowFocus=!1;this._focusMode=i.defaults.FOCUS_MODE;this._interactionListener=e=>this._onInteraction(e)}initialize(){this._adapter.hasTargetElement()||this._adapter.trySetTarget(this._target),this._addListeners()}destroy(){this._removeListeners(),this._adapter.destroy()}_addListeners(){this._adapter.addTargetListener(this._focusMode,this._interactionListener),this._adapter.addTargetListener("focusout",this._interactionListener),this._adapter.addTargetListener("pointerdown",this._interactionListener)}_removeListeners(){this._adapter.removeTargetListener(this._focusMode,this._interactionListener),this._adapter.removeTargetListener("focusout",this._interactionListener),this._adapter.removeTargetListener("pointerdown",this._interactionListener)}_onInteraction(t){let e=t.target;switch(t.type){case this._focusMode:this.active=this._adapter.isActive(this._allowFocus?":focus":":focus-visible",e);break;case"focusout":this.active=!1;break;case"pointerdown":this.active=this._allowFocus?this._adapter.isActive(":focus",e):this._adapter.isActive(":focus-visible",e);break}}get targetElement(){return this._adapter.getTargetElement()}set targetElement(t){this._removeListeners(),this._adapter.setTargetElement(t),this._addListeners()}get target(){return this._adapter.getHostAttribute(i.attributes.TARGET)}set target(t){this._target!==t&&(this._target=t,this._adapter.isConnected&&this._adapter.trySetTarget(t),this._adapter.toggleHostAttribute(i.attributes.TARGET,!!this._target,this._target))}get active(){return this._active}set active(t){t=!!t,this._active!==t&&(this._active=t,this._adapter.toggleHostAttribute(i.attributes.ACTIVE,this._active))}get inward(){return this._inward}set inward(t){t=!!t,this._inward!==t&&(this._inward=t,this._adapter.toggleHostAttribute(i.attributes.INWARD,this._inward))}get circular(){return this._circular}set circular(t){t=!!t,this._circular!==t&&(this._circular=t,this._adapter.toggleHostAttribute(i.attributes.CIRCULAR,this._circular))}get allowFocus(){return this._allowFocus}set allowFocus(t){t=!!t,this._allowFocus!==t&&(this._allowFocus=t,this._adapter.toggleHostAttribute(i.attributes.ALLOW_FOCUS,this._allowFocus))}get focusMode(){return this._focusMode}set focusMode(t){if(t!=null||(t=i.defaults.FOCUS_MODE),this._focusMode!==t){this._adapter.isConnected&&this._removeListeners(),this._focusMode=t,this._adapter.isConnected&&this._addListeners();let e=this._focusMode!==i.defaults.FOCUS_MODE;this._adapter.toggleHostAttribute(i.attributes.FOCUS_MODE,e,this._focusMode)}}};var L="<template></template>",F=":host{--_focus-indicator-width:var(--forge-focus-indicator-width, var(--forge-border-medium, 2px));--_focus-indicator-active-width:var(--forge-focus-indicator-active-width, 6px);--_focus-indicator-color:var(--forge-focus-indicator-color, var(--forge-theme-primary, #3f51b5));--_focus-indicator-shape:var(--forge-focus-indicator-shape, var(--forge-shape-extra-small, 1px));--_focus-indicator-duration:var(--forge-focus-indicator-duration, var(--forge-animation-duration-long4, 600ms));--_focus-indicator-easing:var(--forge-focus-indicator-easing, var(--forge-animation-easing-emphasized, cubic-bezier(0.2, 0, 0, 1)));--_focus-indicator-shape-start-start:var(--forge-focus-indicator-shape-start-start, var(--_focus-indicator-shape));--_focus-indicator-shape-start-end:var(--forge-focus-indicator-shape-start-end, var(--_focus-indicator-shape));--_focus-indicator-shape-end-end:var(--forge-focus-indicator-shape-end-end, var(--_focus-indicator-shape));--_focus-indicator-shape-end-start:var(--forge-focus-indicator-shape-end-start, var(--_focus-indicator-shape));--_focus-indicator-outward-offset:var(--forge-focus-indicator-outward-offset, var(--forge-spacing-xxsmall, 4px));--_focus-indicator-inward-offset:var(--forge-focus-indicator-inward-offset, 0px);--_focus-indicator-offset-block:var(--forge-focus-indicator-offset-block, 0);--_focus-indicator-offset-inline:var(--forge-focus-indicator-offset-inline, 0)}:host{-webkit-animation-delay:0s,calc(var(--_focus-indicator-duration) * .25);animation-delay:0s,calc(var(--_focus-indicator-duration) * .25);-webkit-animation-duration:calc(var(--_focus-indicator-duration) * .25),calc(var(--_focus-indicator-duration) * .75);animation-duration:calc(var(--_focus-indicator-duration) * .25),calc(var(--_focus-indicator-duration) * .75);-webkit-animation-timing-function:var(--_focus-indicator-easing);animation-timing-function:var(--_focus-indicator-easing);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--_focus-indicator-color);display:none;pointer-events:none;position:absolute;margin-block:var(--_focus-indicator-offset-block);margin-inline:var(--_focus-indicator-offset-inline)}:host([hidden]){display:none}:host([active]){display:-webkit-box;display:flex}:host(:not([inward])){-webkit-animation-name:outward-grow,outward-shrink;animation-name:outward-grow,outward-shrink;border-end-end-radius:calc(var(--_focus-indicator-shape-end-end) + var(--_focus-indicator-outward-offset));border-end-start-radius:calc(var(--_focus-indicator-shape-end-start) + var(--_focus-indicator-outward-offset));border-start-end-radius:calc(var(--_focus-indicator-shape-start-end) + var(--_focus-indicator-outward-offset));border-start-start-radius:calc(var(--_focus-indicator-shape-start-start) + var(--_focus-indicator-outward-offset));inset:calc(-1 * var(--_focus-indicator-outward-offset));outline:var(--_focus-indicator-width) solid currentColor}:host([inward]){-webkit-animation-name:inward-grow,inward-shrink;animation-name:inward-grow,inward-shrink;border-end-end-radius:calc(var(--_focus-indicator-shape-end-end) - var(--_focus-indicator-inward-offset));border-end-start-radius:calc(var(--_focus-indicator-shape-end-start) - var(--_focus-indicator-inward-offset));border-start-end-radius:calc(var(--_focus-indicator-shape-start-end) - var(--_focus-indicator-inward-offset));border-start-start-radius:calc(var(--_focus-indicator-shape-start-start) - var(--_focus-indicator-inward-offset));border:var(--_focus-indicator-width) solid currentColor;inset:var(--_focus-indicator-inward-offset)}:host([circular]){--_focus-indicator-shape:var(--forge-focus-indicator-shape, 50%)}@-webkit-keyframes outward-grow{from{outline-width:0}to{outline-width:var(--_focus-indicator-active-width)}}@keyframes outward-grow{from{outline-width:0}to{outline-width:var(--_focus-indicator-active-width)}}@-webkit-keyframes outward-shrink{from{outline-width:var(--_focus-indicator-active-width)}}@keyframes outward-shrink{from{outline-width:var(--_focus-indicator-active-width)}}@-webkit-keyframes inward-grow{from{border-width:0}to{border-width:var(--_focus-indicator-active-width)}}@keyframes inward-grow{from{border-width:0}to{border-width:var(--_focus-indicator-active-width)}}@-webkit-keyframes inward-shrink{from{border-width:var(--_focus-indicator-active-width)}}@keyframes inward-shrink{from{border-width:var(--_focus-indicator-active-width)}}@media (prefers-reduced-motion){:host{-webkit-animation:none;animation:none}}",a=class extends p{constructor(){super();h(this,L,F),this._foundation=new u(new d(this))}static get observedAttributes(){return Object.values(i.attributes)}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.destroy()}attributeChangedCallback(e,s,r){switch(e){case i.attributes.TARGET:this.target=r;break;case i.attributes.ACTIVE:this.active=c(r);break;case i.attributes.INWARD:this.inward=c(r);break;case i.attributes.CIRCULAR:this.circular=c(r);break;case i.attributes.ALLOW_FOCUS:this.allowFocus=c(r);break;case i.attributes.FOCUS_MODE:this.focusMode=r;break}}};o([n()],a.prototype,"targetElement",2),o([n()],a.prototype,"target",2),o([n()],a.prototype,"active",2),o([n()],a.prototype,"inward",2),o([n()],a.prototype,"circular",2),o([n()],a.prototype,"allowFocus",2),o([n()],a.prototype,"focusMode",2),a=o([_({name:i.elementName})],a);export{d as a,i as b,u as c,a as d};
|
|
7
|
+
//# sourceMappingURL=chunk.FLF5RTYO.js.map
|