@tylertech/forge 3.0.0-next.20 → 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 +33555 -39387
- 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.IQYOLMPG.js +7 -0
- package/dist/esm/chunks/chunk.IQYOLMPG.js.map +7 -0
- 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.OFXSMOV6.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.LSMHIVX2.js.map +7 -0
- 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.O56VP4OZ.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.UKBE2FMZ.js +7 -0
- package/dist/esm/chunks/{chunk.OT4AIOMN.js.map → chunk.UKBE2FMZ.js.map} +3 -3
- 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.VOTT5COZ.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/button-area/button-area-foundation.js +2 -3
- 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/expansion-panel/expansion-panel-adapter.d.ts +13 -20
- package/esm/expansion-panel/expansion-panel-adapter.js +22 -159
- package/esm/expansion-panel/expansion-panel-constants.d.ts +16 -22
- package/esm/expansion-panel/expansion-panel-constants.js +16 -30
- package/esm/expansion-panel/expansion-panel-foundation.d.ts +14 -37
- package/esm/expansion-panel/expansion-panel-foundation.js +50 -117
- package/esm/expansion-panel/expansion-panel.d.ts +29 -32
- package/esm/expansion-panel/expansion-panel.js +32 -32
- 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 +5 -20
- 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/table/table-utils.js +5 -4
- 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.d.ts → 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/{dist/popup/forge-popup.css → styles/card/index.scss} +1 -1
- 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/styles/chip-field/index.scss +6 -0
- 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/expansion-panel/_tokens.scss +17 -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/expansion-panel/_core.scss +65 -0
- package/styles/expansion-panel/_token-utils.scss +30 -0
- package/styles/expansion-panel/expansion-panel.scss +83 -3
- package/{esm/radio/radio-group/radio-group-component-delegate.js → styles/expansion-panel/index.scss} +1 -0
- package/styles/{field-next → field}/_core.layout.scss +6 -8
- 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 -16
- package/styles/forge-core.scss +2 -6
- package/styles/forge.scss +0 -5
- 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.2N5KNNQX.js +0 -7
- package/dist/esm/chunks/chunk.2N5KNNQX.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.5S7XNYRQ.js +0 -7
- package/dist/esm/chunks/chunk.5S7XNYRQ.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.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.HBAC6E7O.js +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.IZ63EJ32.js +0 -7
- package/dist/esm/chunks/chunk.IZ63EJ32.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.KEFJZO5K.js +0 -7
- package/dist/esm/chunks/chunk.KEFJZO5K.js.map +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.LGEZI5SZ.js +0 -7
- package/dist/esm/chunks/chunk.LGEZI5SZ.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.OFXSMOV6.js +0 -7
- package/dist/esm/chunks/chunk.OT4AIOMN.js +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.SIGRWU4V.js +0 -7
- package/dist/esm/chunks/chunk.SIGRWU4V.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.TPNZYEC7.js +0 -12
- package/dist/esm/chunks/chunk.TPNZYEC7.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.USO2XVOI.js +0 -7
- package/dist/esm/chunks/chunk.USO2XVOI.js.map +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.VBJ4WUVH.js +0 -7
- package/dist/esm/chunks/chunk.VBJ4WUVH.js.map +0 -7
- package/dist/esm/chunks/chunk.VOTT5COZ.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.ZAREP2QH.js +0 -7
- package/dist/esm/chunks/chunk.ZAREP2QH.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/expansion-panel/forge-expansion-panel.css +0 -6
- 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/expansion-panel/_mixins.scss +0 -88
- package/styles/expansion-panel/forge-expansion-panel.scss +0 -16
- 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 -212
- 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.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.O56VP4OZ.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.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
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/menu/menu-constants.ts", "../../src/menu/menu-adapter.ts", "../../src/menu/menu-foundation.ts", "../../src/menu/menu.ts", "../../src/menu/index.ts"],
|
|
4
|
+
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\nimport { IListDropdownOption, IListDropdownOptionGroup } from '../list-dropdown';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}menu`;\n\nconst classes = {\n POPUP: 'forge-menu__popup',\n MENU: 'mdc-menu'\n};\n\nconst selectors = {\n TOGGLE: `.${elementName}__toggle,[${elementName}-toggle],forge-button,forge-icon-button,forge-fab,button,[type=button],[role=button],a,[tabindex]:not([tabindex^=\"-\"])`,\n MENU_LIST: 'forge-list'\n};\n\nconst attributes = {\n OPEN: 'open',\n PLACEMENT: 'placement',\n SELECTED_INDEX: 'selected-index',\n SELECTED_VALUE: 'selected-value',\n DENSE: 'dense',\n ICON_CLASS: 'icon-class',\n PERSIST_SELECTION: 'persist-selection',\n MODE: 'mode',\n SYNC_POPUP_WIDTH: 'sync-popup-width',\n POPUP_CLASSES: 'popup-classes',\n OPTION_LIMIT: 'option-limit',\n OBSERVE_SCROLL: 'observe-scroll',\n OBSERVE_SCROLL_THRESHOLD: 'observe-scroll-threshold'\n};\n\nconst events = {\n SELECT: `${elementName}-select`,\n OPEN: `${elementName}-open`,\n CLOSE: `${elementName}-close`,\n ACTIVE_CHANGE: `${elementName}-active-change`\n};\n\nconst numbers = {\n CHILD_MOUSE_LEAVE_TIMEOUT: 300,\n POPUP_MOUSE_LEAVE_TIMEOUT: 500\n};\n\nexport const MENU_CONSTANTS = {\n elementName,\n classes,\n selectors,\n attributes,\n events,\n numbers\n};\n\nexport interface IMenuSelectEventData<T = any, K = any> {\n index: number;\n value?: T;\n parentValue?: K;\n}\n\nexport interface IMenuActiveChangeEventData {\n id: string;\n}\n\nexport interface IMenuOption<T = any> extends IListDropdownOption<T> {\n icon?: string;\n selected?: boolean;\n}\n\nexport interface IMenuOptionGroup extends IListDropdownOptionGroup {}\n\nexport type MenuOptionBuilder = (option: IMenuOption, parentElement: HTMLElement) => HTMLElement | string | void;\nexport type MenuOptionFactory = (() => Array<IMenuOption | IMenuOptionGroup>) | (() => Promise<Array<IMenuOption | IMenuOptionGroup>>);\nexport type MenuMode = 'click' | 'cascade';\n", "import { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IMenuOption } from './index';\nimport { IMenuComponent } from './menu';\nimport { MENU_CONSTANTS, IMenuSelectEventData, IMenuOptionGroup } from './menu-constants';\nimport { IListDropdownConfig, IListDropdown, ListDropdown } from '../list-dropdown';\nimport { IListComponent, IListItemComponent, LIST_CONSTANTS, LIST_ITEM_CONSTANTS } from '../list';\n\nexport interface IMenuAdapter extends IBaseAdapter {\n getDropdownElement(): HTMLElement | null;\n initializeTarget(): void;\n initializeAccessibility(id: string): void;\n hasTargetElement(): boolean;\n addTargetListener(event: string, callback: (event: Event) => void, bubbles?: boolean): void;\n removeTargetListener(event: string, callback: (event: Event) => void): void;\n destroyListDropdown(): void;\n attachMenu(config: IListDropdownConfig): void;\n detachMenu(): Promise<void>;\n setOptions(options: Array<IMenuOption | IMenuOptionGroup>): void;\n getActiveOptionIndex(): number;\n setActiveOption(index: number): void;\n activateFirstOption(): void;\n setCascadeTargetInactive(): void;\n propagateKey(key: string): void;\n proxyKeyboardEventToChild(evt: KeyboardEvent, id: string): void;\n toggleChildMenu(index: number, open?: boolean): void;\n focusTarget(): void;\n isTargetFocused(): boolean;\n updateActiveDescendant(id: string): void;\n isOwnElement(element: Element): boolean;\n addDropdownListener(type: string, listener: (evt: any) => void): void;\n createChildMenu(index: number, parentValue: any, openCb: (index: number) => void, closeCb: (index: number) => void, selectCb: (data: IMenuSelectEventData) => void): IMenuComponent;\n closeOtherChildMenus(excludeIndex?: number): void;\n setSelectedValues(values: any[]): void;\n}\n\nexport class MenuAdapter extends BaseAdapter<IMenuComponent> implements IMenuAdapter {\n private _targetElement: HTMLElement | null;\n private _listDropdown?: IListDropdown;\n private _childMenus = new Map<number, IMenuComponent>();\n\n constructor(component: IMenuComponent) {\n super(component);\n }\n\n public getDropdownElement(): HTMLElement | null {\n return this._listDropdown?.dropdownElement ?? null;\n }\n\n public hasTargetElement(): boolean {\n return !!this._targetElement;\n }\n\n public initializeTarget(): void {\n this._targetElement = this._component.querySelector(MENU_CONSTANTS.selectors.TOGGLE);\n if (!this._targetElement) {\n this._targetElement = this._component.firstElementChild as HTMLElement;\n }\n }\n\n public initializeAccessibility(id: string): void {\n if (!this._targetElement) {\n return;\n }\n\n this._targetElement.setAttribute('aria-atomic', 'true');\n this._targetElement.setAttribute('aria-live', 'assertive');\n this._targetElement.setAttribute('aria-haspopup', 'true');\n this._targetElement.setAttribute('aria-expanded', 'false');\n\n if (!this._targetElement.hasAttribute('aria-label')) {\n this._targetElement.setAttribute('aria-label', this._targetElement.textContent || '');\n }\n }\n\n public addTargetListener(event: string, callback: (event: Event) => void, bubbles = false): void {\n if (this._targetElement) {\n this._targetElement.addEventListener(event, callback, bubbles);\n }\n }\n\n public removeTargetListener(event: string, callback: (event: Event) => void): void {\n if (this._targetElement) {\n this._targetElement.removeEventListener(event, callback);\n }\n }\n\n public attachMenu(config: IListDropdownConfig): void {\n if (this._listDropdown || !this._targetElement) {\n return;\n }\n this._listDropdown = new ListDropdown(this._targetElement as HTMLElement, config);\n this._listDropdown.open();\n this._targetElement.setAttribute('aria-expanded', 'true');\n this._targetElement.setAttribute('aria-controls', `list-dropdown-popup-${config.id}`);\n }\n\n public setOptions(options: Array<IMenuOption | IMenuOptionGroup>): void {\n if (this._listDropdown) {\n this._listDropdown.setOptions(options);\n }\n }\n\n public destroyListDropdown(): void {\n if (this._listDropdown) {\n this._listDropdown.destroy();\n this._listDropdown = undefined;\n }\n }\n\n public async detachMenu(): Promise<void> {\n if (this._targetElement) {\n this._targetElement.removeAttribute('aria-activedescendant');\n this._targetElement.removeAttribute('aria-expanded');\n this._targetElement.removeAttribute('aria-controls');\n }\n\n if (this._listDropdown) {\n await this._listDropdown.close();\n this._listDropdown.destroy();\n this._listDropdown = undefined;\n }\n }\n\n public setActiveOption(index: number): void {\n this._listDropdown?.activateOption(index);\n }\n\n public activateFirstOption(): void {\n this._listDropdown?.activateFirstOption();\n }\n\n public setCascadeTargetInactive(): void {\n const listItem = this._targetElement as IListItemComponent;\n if (listItem?.active) {\n listItem.active = false;\n }\n }\n\n public getActiveOptionIndex(): number {\n return this._listDropdown?.getActiveOptionIndex() ?? -1;\n }\n\n public focusTarget(): void {\n if (this._targetElement) {\n this._targetElement.focus();\n }\n }\n\n public isTargetFocused(): boolean {\n return document.activeElement === this._targetElement;\n }\n\n public updateActiveDescendant(id: string): void {\n if (!this._targetElement) {\n return;\n }\n if (id) {\n this._targetElement.setAttribute('aria-activedescendant', id);\n } else {\n this._targetElement.removeAttribute('aria-activedescendant');\n }\n }\n\n public addDropdownListener(type: string, listener: (evt: any) => void): void {\n if (!this._listDropdown || !this._listDropdown.dropdownElement) {\n return;\n }\n this._listDropdown.dropdownElement.addEventListener(type, listener);\n }\n\n public isOwnElement(el: Element): boolean {\n if (!this._targetElement || !this._listDropdown || !this._listDropdown.dropdownElement) {\n return false;\n }\n return this._targetElement.contains(el) || !!this._listDropdown.dropdownElement.contains(el);\n }\n\n public propagateKey(key: string): void {\n this._listDropdown?.handleKey(key);\n }\n\n public proxyKeyboardEventToChild(evt: KeyboardEvent, id: string): void {\n if (!this.getDropdownElement()) {\n return;\n }\n const openMenu = this._getOpenChildMenu(id);\n if (openMenu) {\n openMenu.propagateKeyEvent(evt);\n }\n }\n\n public toggleChildMenu(index: number, open?: boolean): void {\n const listItems = this._getListItems();\n const listItem = listItems[index];\n const childMenu = listItem.parentElement as IMenuComponent;\n if (childMenu && childMenu.tagName.toLowerCase() === MENU_CONSTANTS.elementName) {\n if (open === undefined) {\n childMenu.open = !childMenu.open;\n } else {\n childMenu.open = open;\n }\n childMenu.activateFirstOption();\n }\n }\n\n public createChildMenu(index: number, parentValue: any, openCb: (index: number) => void, closeCb: (index: number) => void, selectCb: (data: IMenuSelectEventData) => void): IMenuComponent {\n const menu = document.createElement('forge-menu');\n menu.style.display = 'block';\n\n // Set listeners to notify the parent menu when anything important happens within a child menu that needs to be propagated to the root menu\n menu.addEventListener(MENU_CONSTANTS.events.OPEN, () => {\n this._childMenus.set(index, menu);\n openCb(index);\n });\n menu.addEventListener(MENU_CONSTANTS.events.CLOSE, () => {\n this._childMenus.delete(index);\n closeCb(index);\n });\n menu.addEventListener(MENU_CONSTANTS.events.SELECT, (evt: CustomEvent<IMenuSelectEventData>) => {\n evt.stopPropagation();\n selectCb({ ...evt.detail, parentValue });\n });\n\n return menu;\n }\n\n public closeOtherChildMenus(excludeIndex?: number): void {\n const menusToRemove: number[] = [];\n this._childMenus.forEach((menu, index) => {\n if (index !== excludeIndex) {\n menu.open = false;\n menusToRemove.push(index);\n }\n });\n menusToRemove.forEach(index => this._childMenus.delete(index));\n }\n\n public setSelectedValues(values: any[]): void {\n this._listDropdown?.setSelectedValues(values);\n }\n\n private _getOpenChildMenu(id: string): IMenuComponent | null {\n if (!this.getDropdownElement()) {\n return null;\n }\n const list = this._getOwnList(id);\n return list ? list.querySelector(`${MENU_CONSTANTS.elementName}[${MENU_CONSTANTS.attributes.OPEN}]`) : null;\n }\n\n private _getOwnList(id: string): IListComponent | null {\n const popup = this.getDropdownElement();\n if (!popup) {\n return null;\n }\n return popup.querySelector(`${LIST_CONSTANTS.elementName}[id=\"list-dropdown-list-${id}\"]`);\n }\n\n private _getListItems(): IListItemComponent[] {\n const popup = this.getDropdownElement();\n if (!popup) {\n return [];\n }\n const listElement = popup.querySelector(LIST_CONSTANTS.elementName);\n if (listElement) {\n return Array.from(listElement.querySelectorAll(LIST_ITEM_CONSTANTS.elementName)) as IListItemComponent[];\n }\n return [];\n }\n}\n", "import { ICustomElementFoundation, isArray, randomChars } from '@tylertech/forge-core';\nimport { ICON_CLASS_NAME } from '../constants';\nimport { PositionPlacement } from '../core/utils/position-utils';\nimport { CascadingListDropdownAwareFoundation, IListDropdownCascadingElementFactoryConfig, IListDropdownConfig, ListDropdownAsyncStyle, ListDropdownType } from '../list-dropdown';\nimport { isListDropdownOptionType, ListDropdownOptionType } from '../list-dropdown/list-dropdown-utils';\nimport type { IOverlayOffset } from '../overlay/overlay-constants';\nimport { IMenuOption } from './index';\nimport { IMenuAdapter } from './menu-adapter';\nimport { IMenuActiveChangeEventData, IMenuOptionGroup, IMenuSelectEventData, MenuMode, MenuOptionBuilder, MenuOptionFactory, MENU_CONSTANTS } from './menu-constants';\n\nexport interface IMenuFoundation extends ICustomElementFoundation {\n initialize(): void;\n disconnect(): void;\n onKeydown(evt: KeyboardEvent): void;\n open: boolean;\n options: Array<IMenuOption | IMenuOptionGroup>;\n optionsFactory: MenuOptionFactory | undefined;\n selectedIndex: number;\n selectedValue: any;\n placement: PositionPlacement;\n fallbackPlacements: PositionPlacement[];\n dense: boolean;\n iconClass: string;\n persistSelection: boolean;\n mode: MenuMode;\n popupOffset: IOverlayOffset;\n optionBuilder: MenuOptionBuilder | undefined;\n activateFirstOption(): void;\n}\n\nexport class MenuFoundation extends CascadingListDropdownAwareFoundation<IMenuOption | IMenuOptionGroup> implements IMenuFoundation {\n private _optionsFactory: MenuOptionFactory | undefined;\n private _placement: PositionPlacement = 'bottom-start';\n private _fallbackPlacements: PositionPlacement[] = [];\n private _dense = false;\n private _selectedValue: any;\n private _iconClass = ICON_CLASS_NAME;\n private _persistSelection = false;\n private _mode: MenuMode = 'click';\n private _popupOffset: IOverlayOffset;\n private _optionBuilder: MenuOptionBuilder | undefined;\n private _identifier: string;\n private _clickListener: (evt: MouseEvent) => void;\n private _blurListener: (evt: MouseEvent) => void;\n private _selectListener: (value: any) => void;\n private _keydownListener: (evt: KeyboardEvent) => void;\n private _activeChangeListener: (id: string) => void;\n \n constructor(private _adapter: IMenuAdapter) {\n super({\n popupTimeout: MENU_CONSTANTS.numbers.POPUP_MOUSE_LEAVE_TIMEOUT,\n targetTimeout: MENU_CONSTANTS.numbers.CHILD_MOUSE_LEAVE_TIMEOUT\n });\n this._identifier = randomChars();\n this._clickListener = evt => this._onTargetClick(evt);\n this._blurListener = evt => this._onTargetBlur(evt);\n this._selectListener = value => this._handleSelectEvent(value);\n this._keydownListener = evt => this.onKeydown(evt);\n this._activeChangeListener = id => this._onActiveOptionChanged(id);\n }\n\n public initialize(): void {\n this._adapter.initializeTarget();\n this._adapter.initializeAccessibility(this._identifier);\n this._initializeInteractionListeners();\n }\n\n public disconnect(): void {\n this._closeMenu({ destroy: true });\n this._destroyInteractionListeners();\n }\n\n public activateFirstOption(): void {\n this._adapter.activateFirstOption();\n }\n\n private _applyMode(): void {\n if (!this._adapter.hasTargetElement()) {\n return;\n }\n\n if (this._mode !== 'cascade') {\n this._adapter.addTargetListener('click', this._clickListener);\n } else {\n this._attachCascadingListeners();\n }\n }\n\n private _initializeInteractionListeners(): void {\n if (!this._adapter.hasTargetElement()) {\n return;\n }\n this._applyMode();\n this._adapter.addTargetListener('keydown', this._keydownListener, true);\n this._adapter.addTargetListener('focusout', this._blurListener);\n }\n\n private _destroyInteractionListeners(): void {\n if (!this._adapter.hasTargetElement()) {\n return;\n }\n this._adapter.removeTargetListener('keydown', this._clickListener);\n this._adapter.removeTargetListener('focusout', this._blurListener);\n this._adapter.removeTargetListener('click', this._clickListener);\n this._detachCascadingListeners();\n }\n\n protected _attachCascadingListeners(): void {\n this._adapter.addTargetListener('mouseenter', this._targetMouseEnterListener);\n this._adapter.addTargetListener('mouseleave', this._targetMouseLeaveListener);\n\n // We listen for document mousemove events only to track mouse coords for use when determining\n // if popups should open/close after specific delays\n this._adapter.addDocumentListener('mousemove', this._documentMouseMoveListener);\n }\n\n protected _detachCascadingListeners(): void {\n this._adapter.removeTargetListener('mouseenter', this._targetMouseEnterListener);\n this._adapter.removeTargetListener('mouseleave', this._targetMouseLeaveListener);\n this._adapter.removeDocumentListener('mousemove', this._documentMouseMoveListener);\n }\n\n private get _nonDividerOptions(): IMenuOption[] {\n return this._flatOptions.filter(o => !o.divider);\n }\n\n private get _flatOptions(): IMenuOption[] {\n return this._flattenOptions(this._options);\n }\n\n private _flattenOptions(options: Array<IMenuOption | IMenuOptionGroup>): IMenuOption[] {\n if (isListDropdownOptionType(options, ListDropdownOptionType.Group)) {\n return (options as IMenuOptionGroup[])\n .reduce((previousValue, currentValue) => {\n return currentValue.options ? previousValue.concat(currentValue.options) : previousValue;\n }, [] as IMenuOption[]);\n }\n return options as IMenuOption[];\n }\n\n private _onTargetClick(evt: MouseEvent): void {\n if (this._open) {\n this._closeDropdown();\n return;\n }\n this.open = !this._open;\n if (this._open) {\n this._adapter.focusTarget();\n }\n }\n\n private _onTargetBlur(evt: Event): void {\n if (this._open) {\n this._closeDropdown();\n }\n }\n\n private _onActiveOptionChanged(id: string): void {\n // We need to dispatch an event when the active descendant changes to propagate that to the proper target element\n const data: IMenuActiveChangeEventData = { id };\n const canSetActiveDescendant = this._adapter.emitHostEvent(MENU_CONSTANTS.events.ACTIVE_CHANGE, data, true, true);\n if (this._mode !== 'cascade' && canSetActiveDescendant) {\n this._adapter.updateActiveDescendant(id);\n }\n }\n\n public onKeydown(evt: KeyboardEvent): void {\n // If we have any child menus open, we need to proxy the keyboard events to those and exit\n if (this._childOpen) {\n this._adapter.proxyKeyboardEventToChild(evt, this._identifier);\n return;\n }\n\n switch (evt.code) {\n case 'Tab':\n if (this._open) {\n this._selectActiveOption();\n }\n break;\n case 'Escape':\n if (this._open) {\n evt.preventDefault();\n evt.stopPropagation();\n this._closeDropdown();\n }\n break;\n case 'Space':\n evt.preventDefault();\n\n if (this._open) {\n this._closeDropdown();\n } else {\n this._openDropdown({ fromKeyboard: true });\n }\n break;\n case 'Home':\n case 'End':\n if (this._open) {\n evt.preventDefault();\n this._adapter.propagateKey(evt.code);\n }\n break;\n case 'Enter':\n evt.preventDefault();\n\n if (!this._open) {\n evt.preventDefault();\n this._openDropdown({ fromKeyboard: true });\n return;\n }\n\n evt.stopImmediatePropagation();\n\n this._adapter.propagateKey(evt.code);\n\n // Check if we need to toggle the child menu open state\n const activeIndex = this._adapter.getActiveOptionIndex();\n const activeOption = this._nonDividerOptions[activeIndex];\n if (activeOption && activeOption.options && activeOption.options.length) {\n this._adapter.toggleChildMenu(activeIndex);\n }\n break;\n case 'ArrowUp':\n case 'ArrowDown':\n if (this._open) {\n evt.stopImmediatePropagation();\n }\n\n evt.preventDefault();\n\n if (!this._open && evt.code === 'ArrowDown') {\n this._openDropdown({ fromKeyboard: true });\n this._adapter.activateFirstOption();\n return;\n }\n\n this._adapter.propagateKey(evt.code);\n break;\n case 'ArrowLeft':\n if (this._open) {\n evt.stopImmediatePropagation();\n }\n if (this._mode === 'cascade' && this._open) {\n this._closeDropdown();\n }\n break;\n case 'ArrowRight':\n if (this._open) {\n evt.stopImmediatePropagation();\n }\n if (!this._open) {\n return;\n }\n const hoveredIndex = this._adapter.getActiveOptionIndex();\n const hoveredOption = this._nonDividerOptions[hoveredIndex];\n if (hoveredOption && hoveredOption.options) {\n this._adapter.toggleChildMenu(hoveredIndex, evt.code === 'ArrowRight');\n return;\n }\n break;\n }\n }\n\n private async _openMenu({ fromKeyboard }: { fromKeyboard?: boolean } = {}): Promise<void> {\n this._open = true;\n let options: IMenuOption[] = [];\n\n if (typeof this._optionsFactory === 'function') {\n this._loadOptionsAsync();\n this._options = [];\n } else {\n if (!this._options || !this._options.length) {\n return;\n }\n options = this._options as IMenuOption[];\n }\n\n if (!this._persistSelection) {\n options.forEach(o => o.selected = false);\n }\n\n this._mapIconToLeadingIcon();\n\n const selectedValues = this._persistSelection ? this._getSelectedValues() : [];\n\n const config: IListDropdownConfig = {\n id: this._identifier,\n type: ListDropdownType.Menu,\n options: this._options,\n selectedValues,\n iconClass: this._iconClass,\n dense: this._dense,\n multiple: false,\n popupStatic: true,\n allowBusy: true,\n asyncStyle: ListDropdownAsyncStyle.Spinner,\n optionBuilder: this._optionBuilder,\n optionLimit: this._optionLimit,\n headerBuilder: this._popupHeaderBuilder,\n footerBuilder: this._popupFooterBuilder,\n observeScroll: this._observeScroll,\n observeScrollThreshold: this._observeScrollThreshold,\n popupPlacement: this._placement,\n popupFallbackPlacements: this._fallbackPlacements,\n activeStartIndex: fromKeyboard ? 0 : undefined,\n popupClasses: [\n MENU_CONSTANTS.classes.POPUP,\n MENU_CONSTANTS.classes.MENU,\n ...this._popupClasses as string[]\n ],\n syncWidth: this._syncPopupWidth,\n activeChangeCallback: this._activeChangeListener,\n selectCallback: this._selectListener,\n popupOffset: this._popupOffset,\n cascadingElementFactory: params => this._createCascadingElement(params)\n };\n\n this._adapter.setHostAttribute(MENU_CONSTANTS.attributes.OPEN, '');\n this._adapter.attachMenu(config);\n\n // If this menu is in a hover mode, we need to listen for mouse enter/leave events to know when the user is hovering over the popup\n if (this._mode === 'cascade') {\n this._adapter.addDropdownListener('mouseenter', this._childPopupMouseEnterListener);\n this._adapter.addDropdownListener('mouseleave', this._childPopupMouseLeaveListener);\n }\n \n this._adapter.addDropdownListener(MENU_CONSTANTS.events.ACTIVE_CHANGE, (evt: CustomEvent<IMenuActiveChangeEventData>) => {\n this._onActiveOptionChanged(evt.detail.id);\n });\n this._adapter.emitHostEvent(MENU_CONSTANTS.events.OPEN);\n }\n\n private _closeMenu({ destroy = false } = {}): void {\n this._open = false;\n this._childOpen = false;\n\n if (destroy) {\n this._adapter.destroyListDropdown();\n } else {\n this._adapter.detachMenu();\n }\n\n if (this._activeMouseLeaveTimeout !== undefined) {\n window.clearTimeout(this._activeMouseLeaveTimeout);\n }\n\n this._adapter.removeHostAttribute(MENU_CONSTANTS.attributes.OPEN);\n this._adapter.emitHostEvent(MENU_CONSTANTS.events.CLOSE);\n }\n\n private _loadOptionsAsync(): Promise<void> {\n if (!this._optionsFactory) {\n if (this._open) {\n this._closeMenu();\n }\n return Promise.resolve();\n }\n\n return Promise.resolve(this._optionsFactory())\n .then(results => {\n if (!this._persistSelection) {\n const flatResults = this._flattenOptions(results);\n flatResults.filter(o => o.selected).forEach(o => o.selected = false);\n }\n\n if (this._open) {\n if (results && isArray(results) && results.length) {\n this._options = results;\n this._mapIconToLeadingIcon();\n this._adapter.setOptions(results);\n const selectedValues = this._getSelectedValues();\n if (selectedValues.length) {\n this._adapter.setSelectedValues(selectedValues);\n }\n } else if (this._open) {\n this._closeDropdown();\n }\n }\n })\n .catch(e => {\n console.error('An unexpected error ocurred while opening the menu:', e);\n if (this._open) {\n this._closeDropdown();\n }\n });\n }\n\n private _handleSelectEvent(value: any): void {\n const index = this._nonDividerOptions.findIndex(o => o.value === value);\n if (index < 0) {\n return;\n }\n this._selectOptionByIndex(index);\n }\n\n private _selectActiveOption(): void {\n const index = this._adapter.getActiveOptionIndex();\n if (index >= 0 && this._nonDividerOptions[index]) {\n this._selectOptionByIndex(index);\n }\n }\n\n private _selectOptionByIndex(index: number): void {\n const { options, value } = this._nonDividerOptions[index];\n\n // We ignore selections if the option has child options\n if (options) {\n this._adapter.setActiveOption(index);\n return;\n }\n\n this._closeDropdown();\n \n const data: IMenuSelectEventData = { index, value };\n const isCancelled = !this._adapter.emitHostEvent(MENU_CONSTANTS.events.SELECT, data, true, true);\n if (!isCancelled) {\n this._selectedValue = this._persistSelection ? value : undefined;\n }\n }\n\n private _getSelectedValues(): any[] {\n const values = this._flatOptions.filter(o => o.selected).map(o => o.value);\n if (this._selectedValue !== undefined) {\n values.push(this._selectedValue);\n }\n return values;\n }\n\n /** Called when a child menu option is selected. */\n protected _onCascadingOptionSelected(data: IMenuSelectEventData): void {\n if (this._persistSelection) {\n this._selectedValue = data.value;\n }\n this._adapter.emitHostEvent(MENU_CONSTANTS.events.SELECT, data);\n this._closeDropdown();\n }\n\n /** Called when a child menu is opened off of one of our menu options. */\n protected _onCascadingChildOpen(index: number): void {\n super._clearMouseLeaveTimeout();\n this._adapter.closeOtherChildMenus(index);\n this._childOpen = true;\n this._adapter.setActiveOption(index);\n }\n\n /** Called when a child menu is closed off of one of our menu options. */\n protected _onCascadingChildClose(index: number): void {\n this._childOpen = false;\n }\n\n protected _closeDropdown(): void {\n this._closeMenu();\n }\n\n protected _openDropdown({ fromKeyboard }: { fromKeyboard?: boolean } = {}): void {\n this._openMenu({ fromKeyboard });\n }\n\n protected _setCascadeTargetInactive(): void {\n this._adapter.setCascadeTargetInactive();\n }\n\n protected _isOwnElement(element: Element): boolean {\n return this._adapter.isOwnElement(element);\n }\n\n private _createCascadingElement({ index, options, parentValue }: IListDropdownCascadingElementFactoryConfig): HTMLElement {\n const menu = this._adapter.createChildMenu(\n index,\n parentValue,\n this._onCascadingChildOpen.bind(this),\n this._onCascadingChildClose.bind(this),\n this._onCascadingOptionSelected.bind(this)\n );\n menu.mode = 'cascade';\n menu.popupOffset = { mainAxis: 0, crossAxis: -8 };\n menu.dense = this._dense;\n menu.placement = 'right-start';\n menu.fallbackPlacements = ['left-start', 'right-start']; // Cascading menus should only fallback to left or right placement if needed\n menu.persistSelection = this._persistSelection;\n if (this._persistSelection) {\n menu.selectedValue = this._selectedValue;\n }\n menu.options = options;\n menu.optionBuilder = this._optionBuilder;\n menu.iconClass = this._iconClass;\n\n return menu;\n }\n\n private _mapIconToLeadingIcon(): void {\n // For backwards compatibility with old API, map the old \"icon\" property to the new \"leadingIcon\" property (if exists)\n this._flatOptions.filter(o => o.icon).forEach(o => o.leadingIcon = o.icon);\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 (value) {\n this._openDropdown();\n } else {\n this._closeDropdown();\n }\n }\n }\n\n public set options(options: IMenuOption[]) {\n if (typeof options === 'function') {\n this.optionsFactory = options;\n } else {\n this.optionsFactory = undefined;\n // Intentional shallow copy of member properties. These member objects have properties that are references to functions.\n this._options = options.map(o => ({ ...o }));\n \n if (this._open) {\n this._mapIconToLeadingIcon();\n this._adapter.setOptions(this._options as IMenuOption[]);\n if (this._persistSelection) {\n const selectedValues = this._getSelectedValues();\n if (selectedValues.length) {\n this._adapter.setSelectedValues(selectedValues);\n }\n }\n }\n }\n }\n public get options(): IMenuOption[] {\n if (!this._options) {\n return [];\n }\n\n // Intentional shallow copy of member properties. These member objects have properties that are references to functions.\n return this._flatOptions.map(o => ({ ...o }));\n }\n\n public set optionsFactory(factory: MenuOptionFactory | undefined) {\n this._optionsFactory = factory;\n }\n\n public set selectedIndex(value: number) {\n const option = this._nonDividerOptions[value];\n if (option && option.value !== this._selectedValue) {\n this.selectedValue = option.value;\n }\n }\n public get selectedIndex(): number {\n return this._selectedValue !== undefined ? this._nonDividerOptions.findIndex(o => o.value === this._selectedValue) : -1;\n }\n\n public set selectedValue(value: any) {\n if (this._selectedValue !== value) {\n this._selectedValue = value;\n this._adapter.setSelectedValues(this._selectedValue);\n }\n }\n public get selectedValue(): any {\n return this._selectedValue;\n }\n\n public get placement(): PositionPlacement {\n return this._placement;\n }\n public set placement(value: PositionPlacement) {\n if (this._placement !== value) {\n this._placement = value || 'bottom-start';\n this._adapter.setHostAttribute(MENU_CONSTANTS.attributes.PLACEMENT, this._placement);\n }\n }\n\n public get fallbackPlacements(): PositionPlacement[] {\n return this._fallbackPlacements;\n }\n public set fallbackPlacements(value: PositionPlacement[]) {\n this._fallbackPlacements = Array.isArray(value) ? value : [];\n }\n\n public get dense(): boolean {\n return this._dense;\n }\n public set dense(value: boolean) {\n this._dense = value;\n }\n\n public get iconClass(): string {\n return this._iconClass;\n }\n public set iconClass(value: string) {\n this._iconClass = value;\n }\n\n public get persistSelection(): boolean {\n return this._persistSelection;\n }\n public set persistSelection(value: boolean) {\n if (this._persistSelection === value) {\n return;\n }\n\n this._persistSelection = value;\n this._adapter.toggleHostAttribute(MENU_CONSTANTS.attributes.PERSIST_SELECTION, this._persistSelection);\n\n if (!this._persistSelection) {\n this._flatOptions.forEach(o => o.selected = false);\n this._selectedValue = undefined;\n }\n }\n\n public get mode(): MenuMode {\n return this._mode;\n }\n public set mode(value: MenuMode) {\n if (this._mode !== value) {\n this._mode = value;\n this._destroyInteractionListeners();\n this._applyMode();\n this._adapter.setHostAttribute(MENU_CONSTANTS.attributes.MODE, this._mode);\n }\n }\n\n public get popupOffset(): IOverlayOffset {\n return this._popupOffset;\n }\n public set popupOffset(value: IOverlayOffset) {\n this._popupOffset = value;\n }\n\n public get optionBuilder(): MenuOptionBuilder | undefined {\n return this._optionBuilder;\n }\n public set optionBuilder(cb: MenuOptionBuilder | undefined) {\n this._optionBuilder = cb;\n }\n\n public get popupElement(): HTMLElement | null {\n return this._adapter.getDropdownElement();\n }\n}\n", "import { attachShadowTemplate, coerceBoolean, CustomElement, ensureChild, FoundationProperty, isDefined } from '@tylertech/forge-core';\nimport { tylIconArrowRight } from '@tylertech/tyler-icons/standard';\nimport { PositionPlacement } from '../core/utils/position-utils';\nimport { IconRegistry } from '../icon';\nimport { ListComponent } from '../list';\nimport { IListDropdownAware, ListDropdownAware } from '../list-dropdown/list-dropdown-aware';\nimport type { IOverlayOffset } from '../overlay/overlay-constants';\nimport { PopoverComponent } from '../popover';\nimport { MenuAdapter } from './menu-adapter';\nimport { IMenuActiveChangeEventData, IMenuOption, IMenuOptionGroup, IMenuSelectEventData, MenuMode, MenuOptionBuilder, MenuOptionFactory, MENU_CONSTANTS } from './menu-constants';\nimport { MenuFoundation } from './menu-foundation';\n\nconst template = '<template><slot></slot></template>';\nconst styles = ':host{display:-webkit-inline-box;display:inline-flex}:host([hidden]){display:none}';\n\nexport interface IMenuComponent extends IListDropdownAware {\n open: boolean;\n options: Array<IMenuOption | IMenuOptionGroup> | MenuOptionFactory;\n selectedIndex: number;\n selectedValue: number;\n placement: PositionPlacement;\n fallbackPlacements: PositionPlacement[];\n dense: boolean;\n iconClass: string;\n persistSelection: boolean;\n mode: MenuMode;\n popupOffset: IOverlayOffset;\n optionBuilder: MenuOptionBuilder | undefined;\n popupElement: HTMLElement | undefined;\n propagateKeyEvent(evt: KeyboardEvent): void;\n activateFirstOption(): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-menu': IMenuComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-menu-select': CustomEvent<IMenuSelectEventData>;\n 'forge-menu-open': CustomEvent<void>;\n 'forge-menu-close': CustomEvent<void>;\n 'forge-menu-active-change': CustomEvent<IMenuActiveChangeEventData>;\n }\n}\n\n/**\n * The web component class behind the `<forge-menu>` custom element.\n * \n * @tag forge-menu\n */\n@CustomElement({\n name: MENU_CONSTANTS.elementName,\n dependencies: [\n PopoverComponent,\n ListComponent\n ]\n})\nexport class MenuComponent extends ListDropdownAware implements IMenuComponent {\n public static get observedAttributes(): string[] {\n return [\n MENU_CONSTANTS.attributes.OPEN,\n MENU_CONSTANTS.attributes.PLACEMENT,\n MENU_CONSTANTS.attributes.SELECTED_INDEX,\n MENU_CONSTANTS.attributes.SELECTED_VALUE,\n MENU_CONSTANTS.attributes.DENSE,\n MENU_CONSTANTS.attributes.ICON_CLASS,\n MENU_CONSTANTS.attributes.PERSIST_SELECTION,\n MENU_CONSTANTS.attributes.MODE,\n MENU_CONSTANTS.attributes.SYNC_POPUP_WIDTH,\n MENU_CONSTANTS.attributes.POPUP_CLASSES,\n MENU_CONSTANTS.attributes.OPTION_LIMIT,\n MENU_CONSTANTS.attributes.OBSERVE_SCROLL,\n MENU_CONSTANTS.attributes.OBSERVE_SCROLL_THRESHOLD\n ];\n }\n\n private _foundation: MenuFoundation;\n\n constructor() {\n super();\n IconRegistry.define(tylIconArrowRight);\n this._foundation = new MenuFoundation(new MenuAdapter(this));\n attachShadowTemplate(this, template, styles);\n }\n\n public connectedCallback(): void {\n if (this.querySelector(MENU_CONSTANTS.selectors.TOGGLE)) {\n this._foundation.initialize();\n } else {\n ensureChild(this, MENU_CONSTANTS.selectors.TOGGLE).then(() => this._foundation.initialize());\n }\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n super.attributeChangedCallback(name, oldValue, newValue);\n switch (name) {\n case MENU_CONSTANTS.attributes.OPEN:\n this._foundation.open = isDefined(newValue);\n break;\n case MENU_CONSTANTS.attributes.PLACEMENT:\n this._foundation.placement = newValue as PositionPlacement;\n break;\n case MENU_CONSTANTS.attributes.SELECTED_INDEX:\n this._foundation.selectedIndex = Number(newValue);\n break;\n case MENU_CONSTANTS.attributes.SELECTED_VALUE:\n this._foundation.selectedValue = newValue;\n break;\n case MENU_CONSTANTS.attributes.DENSE:\n this._foundation.dense = coerceBoolean(newValue);\n break;\n case MENU_CONSTANTS.attributes.ICON_CLASS:\n this._foundation.iconClass = newValue;\n break;\n case MENU_CONSTANTS.attributes.PERSIST_SELECTION:\n this.persistSelection = coerceBoolean(newValue);\n break;\n case MENU_CONSTANTS.attributes.MODE:\n this.mode = newValue as MenuMode;\n break;\n }\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n /** Gets/sets the open state. */\n @FoundationProperty()\n public declare open: boolean;\n\n /** Gets/sets the array of options to display in the menu. */\n @FoundationProperty()\n public declare options: Array<IMenuOption | IMenuOptionGroup> | MenuOptionFactory;\n\n /** Gets/sets the selected option to the index. Does not support cascading menus. */\n @FoundationProperty()\n public declare selectedIndex: number;\n\n /** Gets/sets the value of the option to select. */\n @FoundationProperty()\n public declare selectedValue: any;\n\n /** Gets/sets the menu placement (default is bottom-left). */\n @FoundationProperty()\n public declare placement: `${PositionPlacement}`;\n\n /** Gets/sets the fallback menu placement for overriding the default of any side. */\n @FoundationProperty()\n public declare fallbackPlacements: `${PositionPlacement}`[];\n\n /** Gets/sets dense state of the list options used in the menu popup. */\n @FoundationProperty()\n public declare dense: boolean;\n\n /** Gets/sets the class name to use for option icons. */\n @FoundationProperty()\n public declare iconClass: string;\n\n /**\n * Gets/sets whether selection of menu items is persisted.\n * @deprecated Please use `<forge-select-dropdown>` for handling selection states.\n */\n @FoundationProperty()\n public declare persistSelection: boolean;\n\n /** Gets/sets the mode that this menu is using. */\n @FoundationProperty()\n public declare mode: MenuMode;\n\n /** Sets the position adjustment on the internal popup element. */\n @FoundationProperty()\n public declare popupOffset: IOverlayOffset;\n\n /** Sets the callback that will be executed for each option in the dropdown for producing custom option templates. */\n @FoundationProperty()\n public declare optionBuilder: MenuOptionBuilder;\n\n /**\n * Gets the currently active popup element when the dropdown is open.\n * @readonly\n */\n @FoundationProperty({ set: false })\n public declare popupElement: HTMLElement | undefined;\n\n /** Force propagates the key event from another element this component. */\n public propagateKeyEvent(evt: KeyboardEvent): void {\n this._foundation.onKeydown(evt);\n }\n\n public activateFirstOption(): void {\n this._foundation.activateFirstOption();\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { MenuComponent } from './menu';\n\nexport * from './menu-adapter';\nexport * from './menu-constants';\nexport * from './menu-foundation';\nexport * from './menu';\n\nexport function defineMenuComponent(): void {\n defineCustomElement(MenuComponent);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["elementName", "COMPONENT_NAME_PREFIX", "classes", "selectors", "attributes", "events", "numbers", "MENU_CONSTANTS", "MenuAdapter", "BaseAdapter", "component", "_a", "_b", "MENU_CONSTANTS", "id", "event", "callback", "bubbles", "config", "ListDropdown", "options", "index", "listItem", "type", "listener", "el", "key", "evt", "openMenu", "open", "childMenu", "parentValue", "openCb", "closeCb", "selectCb", "menu", "__spreadProps", "__spreadValues", "excludeIndex", "menusToRemove", "values", "list", "popup", "LIST_CONSTANTS", "listElement", "LIST_ITEM_CONSTANTS", "MenuFoundation", "CascadingListDropdownAwareFoundation", "_adapter", "MENU_CONSTANTS", "ICON_CLASS_NAME", "randomChars", "evt", "value", "id", "o", "options", "isListDropdownOptionType", "previousValue", "currentValue", "data", "canSetActiveDescendant", "activeIndex", "activeOption", "hoveredIndex", "hoveredOption", "fromKeyboard", "selectedValues", "config", "params", "destroy", "results", "isArray", "index", "values", "element", "parentValue", "menu", "__spreadValues", "factory", "option", "cb", "template", "styles", "MenuComponent", "ListDropdownAware", "IconRegistry", "tylIconArrowRight", "MenuFoundation", "MenuAdapter", "attachShadowTemplate", "MENU_CONSTANTS", "ensureChild", "name", "oldValue", "newValue", "isDefined", "coerceBoolean", "evt", "__decorateClass", "FoundationProperty", "CustomElement", "PopoverComponent", "ListComponent", "defineMenuComponent", "defineCustomElement", "MenuComponent"]
|
|
7
|
+
}
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{d as L,e as C}from"./chunk.R3AWIPPK.js";import{a as E}from"./chunk.CSOKFDFQ.js";import{a as y}from"./chunk.6GSVB5NB.js";import{a as l}from"./chunk.NVUMRW44.js";import{a as m,b as k}from"./chunk.UQQQSJVM.js";import{a as u,e as b,f as d,k as _}from"./chunk.BIQTNLIF.js";import{k as p,l as v}from"./chunk.J2M2MXP2.js";import{d as s}from"./chunk.M3QDAYD2.js";var D=`${k}file-picker`,I={ACCEPT:"accept",MAX_SIZE:"max-size",CAPTURE:"capture",MULTIPLE:"multiple",DISABLED:"disabled",COMPACT:"compact",BORDERLESS:"borderless"},S={HIGHLIGHT:"highlight",DISABLED:"disabled",COMPACT:"compact",BORDERLESS:"borderless"},T={CONTAINER:"container",BUTTON:"button",INPUT:"input"},A={CONTAINER:"#container",BUTTON:"#button",INPUT:"#input",BUTTON_SLOT:"#button-slot"},P={FILES_CHANGED:`${D}-change`},i={elementName:D,attributes:I,classes:S,ids:T,selectors:A,events:P};var c=class extends y{constructor(e){super(e);this._container=d(e,i.selectors.CONTAINER),this._buttonSlot=d(e,i.selectors.BUTTON_SLOT),this._input=d(e,i.selectors.INPUT),this._inputEventListener=()=>{this._input.value="",this._input.click()},this._container.addEventListener("click",this._inputEventListener)}registerButtonSlotListener(e){this._buttonSlot.addEventListener("slotchange",e)}registerInputChangeListener(e){this._input.addEventListener("change",e)}registerDragEnterListener(e){this._container.addEventListener("dragenter",e)}registerDragLeaveListener(e){this._container.addEventListener("dragleave",e)}registerDragOverListener(e){this._container.addEventListener("dragover",e)}registerDropListener(e){this._container.addEventListener("drop",e)}removeDragEnterListener(e){this._container.removeEventListener("dragenter",e)}removeDragLeaveListener(e){this._container.removeEventListener("dragleave",e)}removeDragOverListener(e){this._container.removeEventListener("dragover",e)}removeDropListener(e){this._container.removeEventListener("drop",e)}initializeButton(){let e=this._component.querySelector("forge-button");this._button=e||void 0}setHighlightState(e){this._container.classList.contains(i.classes.HIGHLIGHT)!==e&&this._container.classList.toggle(i.classes.HIGHLIGHT)}setAccept(e){e?this._input.setAttribute("accept",e):this._input.removeAttribute("accept")}setCapture(e){e?this._input.setAttribute("capture",e):this._input.removeAttribute("capture")}setMultiple(e){e?this._input.setAttribute("multiple",""):this._input.removeAttribute("multiple")}setDisabled(e){var a,o;e?(this._container.removeEventListener("click",this._inputEventListener),(a=this._button)==null||a.setAttribute("disabled",""),this._container.setAttribute("disabled","")):(this._container.addEventListener("click",this._inputEventListener),(o=this._button)==null||o.removeAttribute("disabled"),this._container.removeAttribute("disabled"))}setCompact(e){this._container.classList.contains(i.classes.COMPACT)!==e&&this._container.classList.toggle(i.classes.COMPACT)}setBorderless(e){this._container.classList.contains(i.classes.BORDERLESS)!==e&&this._container.classList.toggle(i.classes.BORDERLESS)}};var g=class{constructor(t){this._adapter=t;this._isInitialized=!1;this._accept=null;this._maxSize=null;this._capture=null;this._multiple=!1;this._disabled=!1;this._compact=!1;this._borderless=!1;this._buttonSlotListener=e=>this._onButtonSlotChanged(e),this._inputChangeListener=e=>this._onInputChange(e),this._dragEnterListener=e=>this._onDragEnter(e),this._dragLeaveListener=e=>this._onDragLeave(e),this._dragOverListener=e=>this._onDragOver(e),this._dropListener=e=>this._onDrop(e),this._adapter.registerButtonSlotListener(this._buttonSlotListener),this._adapter.registerInputChangeListener(this._inputChangeListener),this._compact||this._registerDragListeners()}initialize(){this._adapter.initializeButton(),this._adapter.setDisabled(this._disabled),this._isInitialized=!0}destroy(){this._isInitialized=!1}_onButtonSlotChanged(t){this._adapter.initializeButton()}_onInputChange(t){let e=t.target.files;e&&this._handleFiles(e)}_onDragEnter(t){this._handleDragEvent(t,!0)}_onDragLeave(t){this._handleDragEvent(t,!1)}_onDragOver(t){this._handleDragEvent(t,!0)}_onDrop(t){if(this._handleDragEvent(t,!1),!this._disabled){let e=t.dataTransfer;if(e){let a=e.files;this._handleFiles(a)}}}_registerDragListeners(){this._adapter.registerDragEnterListener(this._dragEnterListener),this._adapter.registerDragLeaveListener(this._dragLeaveListener),this._adapter.registerDragOverListener(this._dragOverListener),this._adapter.registerDropListener(this._dropListener)}_removeDragListeners(){this._adapter.removeDragEnterListener(this._dragEnterListener),this._adapter.removeDragLeaveListener(this._dragLeaveListener),this._adapter.removeDragOverListener(this._dragOverListener),this._adapter.removeDropListener(this._dropListener)}_handleFiles(t){let e={};if(t){let a=this._sortFiles(t),o=a.legalFiles||null;!this._multiple&&o&&o.length>1&&(o=o.splice(1)),e=a}this._adapter.emitHostEvent(i.events.FILES_CHANGED,e)}_sortFiles(t){let e=[],a=[];if(!this._accept&&!this.maxSize)return e=Array.from(t),{legalFiles:e,illegalFiles:a};let o=this._accept?this._accept.split(",").map(r=>r.trim().toLowerCase()):[""];for(let r=0;r<t.length;r++)!o.some(f=>t[r].type.toLowerCase().match(f)||t[r].name.toLowerCase().match("\\"+f))||this._maxSize&&t[r].size>this._maxSize?a.push(t[r]):e.push(t[r]);return{legalFiles:e,illegalFiles:a}}_handleDragEvent(t,e){this._disabled||(t.preventDefault(),t.stopPropagation(),this._adapter.setHighlightState(e))}get accept(){return this._accept}set accept(t){this._accept!==t&&(this._accept=t,this._adapter.setAccept(t),this._adapter.toggleHostAttribute(i.attributes.ACCEPT,!!t,String(t)))}get maxSize(){return this._maxSize}set maxSize(t){this._maxSize!==t&&(this._maxSize=t,this._adapter.toggleHostAttribute(i.attributes.MAX_SIZE,!!t,String(t)))}get capture(){return this._capture}set capture(t){this._capture!==t&&(this._capture=t,this._adapter.setCapture(t),this._adapter.toggleHostAttribute(i.attributes.CAPTURE,!!t,String(t)))}get multiple(){return this._multiple}set multiple(t){this._multiple!==t&&(this._multiple=t,this._adapter.setMultiple(t),this._adapter.toggleHostAttribute(i.attributes.MULTIPLE,t))}get disabled(){return this._disabled}set disabled(t){this._disabled!==t&&(this._disabled=t,this._isInitialized&&this._adapter.setDisabled(t),this._adapter.toggleHostAttribute(i.attributes.DISABLED,t))}get compact(){return this._compact}set compact(t){this._compact!==t&&(this._compact=t,this._adapter.setCompact(t),t?this._removeDragListeners():this._registerDragListeners(),this._adapter.toggleHostAttribute(i.attributes.COMPACT,t))}get borderless(){return this._borderless}set borderless(t){this._borderless!==t&&(this._borderless=t,this._adapter.setBorderless(t),this._adapter.toggleHostAttribute(i.attributes.BORDERLESS,t))}};var F='<template><form class="forge-file-picker" id="container" part="form"><div class="primary" id="primary" part="primary"><slot name="primary"></slot></div><slot id="button-slot"></slot><div class="secondary" id="secondary" part="secondary"><slot name="secondary"></slot></div><input type="file" class="input" id="input" part="input"></form><div class="helper-text" part="helper-text-container"><slot name="helper-text"></slot></div></template>',w=':host{--_file-picker-background:var(--forge-file-picker-background, var(--forge-theme-surface-dim, #fafafa));--_file-picker-width:var(--forge-file-picker-width, auto);--_file-picker-height:var(--forge-file-picker-height, auto);--_file-picker-max-width:var(--forge-file-picker-max-width, auto);--_file-picker-border-width:var(--forge-file-picker-border-width, var(--forge-border-thin, 1px));--_file-picker-border-style:var(--forge-file-picker-border-style, dashed);--_file-picker-border-color:var(--forge-file-picker-border-color, var(--forge-theme-outline-low, #9e9e9e));--_file-picker-gap:var(--forge-file-picker-gap, var(--forge-spacing-medium, 16px));--_file-picker-padding:var(--forge-file-picker-padding, var(--forge-spacing-medium, 16px));--_file-picker-padding-block:var(--forge-file-picker-padding-block, 0);--_file-picker-padding-inline:var(--forge-file-picker-padding-inline, var(--_file-picker-padding));--_file-picker-disabled-opacity:var(--forge-file-picker-disabled-opacity, 0.38);--_file-picker-highlight-background:var(--forge-file-picker-highlight-background, var(--forge-theme-primary-container-minimum, #f7f8fc));--_file-picker-highlight-border-color:var(--forge-file-picker-highlight-border-color, var(--forge-theme-primary, #3f51b5))}:host{display:block;height:100%;width:100%}:host([hidden]){display:none}:host([compact]){display:inline-block}.forge-file-picker{--_file-picker-background:var(--forge-file-picker-background, var(--forge-theme-surface-dim, #fafafa));--_file-picker-width:var(--forge-file-picker-width, auto);--_file-picker-height:var(--forge-file-picker-height, auto);--_file-picker-max-width:var(--forge-file-picker-max-width, auto);--_file-picker-border-width:var(--forge-file-picker-border-width, var(--forge-border-thin, 1px));--_file-picker-border-style:var(--forge-file-picker-border-style, dashed);--_file-picker-border-color:var(--forge-file-picker-border-color, var(--forge-theme-outline-low, #9e9e9e));--_file-picker-gap:var(--forge-file-picker-gap, var(--forge-spacing-medium, 16px));--_file-picker-padding:var(--forge-file-picker-padding, var(--forge-spacing-medium, 16px));--_file-picker-padding-block:var(--forge-file-picker-padding-block, 0);--_file-picker-padding-inline:var(--forge-file-picker-padding-inline, var(--_file-picker-padding));--_file-picker-disabled-opacity:var(--forge-file-picker-disabled-opacity, 0.38);--_file-picker-highlight-background:var(--forge-file-picker-highlight-background, var(--forge-theme-primary-container-minimum, #f7f8fc));--_file-picker-highlight-border-color:var(--forge-file-picker-highlight-border-color, var(--forge-theme-primary, #3f51b5))}.forge-file-picker{display:grid;-webkit-box-pack:center;justify-content:center;align-content:center;gap:var(--_file-picker-gap);-webkit-box-sizing:border-box;box-sizing:border-box;padding:var(--_file-picker-padding);height:var(--_file-picker-height);width:var(--_file-picker-width);max-width:var(--_file-picker-max-width);text-align:center;background:var(--_file-picker-background);cursor:pointer;border-width:var(--_file-picker-border-width);border-style:var(--_file-picker-border-style);border-color:var(--_file-picker-border-color)}.forge-file-picker[disabled]{opacity:var(--_file-picker-disabled-opacity);cursor:unset}.forge-file-picker:not(.compact).highlight{--_file-picker-border-color:var(--_file-picker-highlight-border-color);--_file-picker-background:var(--_file-picker-highlight-background)}.primary{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-body2-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-body2-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-font-size-scale, 1)));font-weight:var(--forge-typography-body2-font-weight,400);line-height:var(--forge-typography-body2-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-line-height-scale, 1.375)));letter-spacing:var(--forge-typography-body2-letter-spacing, .015625em);text-transform:var(--forge-typography-body2-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-body2-text-decoration,inherit);text-decoration:var(--forge-typography-body2-text-decoration,inherit);color:var(--forge-theme-text-high,rgba(0,0,0,.87));max-width:var(--_file-picker-max-width)}.secondary{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-body1-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-body1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-font-size-scale, .875)));font-weight:var(--forge-typography-body1-font-weight,400);line-height:var(--forge-typography-body1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-line-height-scale, 1.125)));letter-spacing:var(--forge-typography-body1-letter-spacing, .0357142857em);text-transform:var(--forge-typography-body1-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-body1-text-decoration,inherit);text-decoration:var(--forge-typography-body1-text-decoration,inherit);color:var(--forge-theme-text-high,rgba(0,0,0,.87));max-width:var(--_file-picker-max-width)}.input{display:none}.helper-text ::slotted([slot=helper-text]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-label1-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-label1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-font-size-scale, .75)));font-weight:var(--forge-typography-label1-font-weight,400);line-height:var(--forge-typography-label1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-label1-letter-spacing, .0357142857em);text-transform:var(--forge-typography-label1-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-label1-text-decoration,inherit);text-decoration:var(--forge-typography-label1-text-decoration,inherit);text-align:start}.borderless{--_file-picker-width:var(--forge-file-picker-width, 100%);border:none}.borderless:not(.compact).highlight{border:none}.borderless+.helper-text{display:none}.compact{--_file-picker-height:var(--forge-file-picker-height, fit-content);--_file-picker-width:var(--forge-file-picker-width, fit-content);--_file-picker-background-color:var(--forge-file-picker-background-color, transparent);--_file-picker-padding:var(--forge-file-picker-padding, 0);border:none}.compact .primary,.compact .secondary{display:none}.compact .button{--_file-picker-width:var(--forge-file-picker-width, auto);background-color:transparent}',n=class extends _{constructor(){super();b(this,F,w),this._foundation=new g(new c(this))}static get observedAttributes(){return[i.attributes.ACCEPT,i.attributes.MAX_SIZE,i.attributes.CAPTURE,i.attributes.MULTIPLE,i.attributes.DISABLED,i.attributes.COMPACT,i.attributes.BORDERLESS]}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.destroy()}attributeChangedCallback(e,a,o){switch(e){case i.attributes.ACCEPT:this.accept=o;break;case i.attributes.MAX_SIZE:this.maxSize=v(o);break;case i.attributes.CAPTURE:this.capture=o;break;case i.attributes.MULTIPLE:this.multiple=p(o);break;case i.attributes.DISABLED:this.disabled=p(o);break;case i.attributes.COMPACT:this.compact=p(o);break;case i.attributes.BORDERLESS:this.borderless=p(o);break}}};s([l()],n.prototype,"accept",2),s([l()],n.prototype,"maxSize",2),s([l()],n.prototype,"capture",2),s([l()],n.prototype,"multiple",2),s([l()],n.prototype,"disabled",2),s([l()],n.prototype,"compact",2),s([l()],n.prototype,"borderless",2),n=s([m({name:i.elementName,dependencies:[L]})],n);var x=class extends E{constructor(t){super(t)}_build(){return document.createElement(i.elementName)}_configure(){var t,e,a,o;if((t=this._config.options)!=null&&t.primaryText){let r=document.createElement("span");r.slot="primary",r.textContent=this._config.options.primaryText,this._element.appendChild(r)}if((e=this._config.options)!=null&&e.secondaryText){let r=document.createElement("span");r.slot="secondary",r.textContent=this._config.options.secondaryText,this._element.appendChild(r)}if((a=this._config.options)!=null&&a.buttonText&&new C({options:{parent:this._element,text:this._config.options.buttonText},props:{variant:"outlined"}}),(o=this._config.options)!=null&&o.helperText){let r=document.createElement("span");r.slot="helper-text",r.textContent=this._config.options.helperText,this._element.appendChild(r)}}onChange(t){this._element.addEventListener(i.events.FILES_CHANGED,e=>t(e.detail))}};function de(){u(n)}export{i as a,c as b,g as c,n as d,x as e,de as f};
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{d as L,e as C}from"./chunk.QIZBZGYT.js";import{a as E}from"./chunk.HSADKCGS.js";import{a as l}from"./chunk.NVUMRW44.js";import{a as y}from"./chunk.OLFOVKQG.js";import{a as m,b as k}from"./chunk.VRSPT7WX.js";import{a as u,e as b,f as d,k as _}from"./chunk.LNTTU2GL.js";import{k as p,l as v}from"./chunk.J2M2MXP2.js";import{d as s}from"./chunk.M3QDAYD2.js";var D=`${k}file-picker`,I={ACCEPT:"accept",MAX_SIZE:"max-size",CAPTURE:"capture",MULTIPLE:"multiple",DISABLED:"disabled",COMPACT:"compact",BORDERLESS:"borderless"},S={HIGHLIGHT:"highlight",DISABLED:"disabled",COMPACT:"compact",BORDERLESS:"borderless"},T={CONTAINER:"container",BUTTON:"button",INPUT:"input"},A={CONTAINER:"#container",BUTTON:"#button",INPUT:"#input",BUTTON_SLOT:"#button-slot"},P={FILES_CHANGED:`${D}-change`},i={elementName:D,attributes:I,classes:S,ids:T,selectors:A,events:P};var c=class extends y{constructor(e){super(e);this._container=d(e,i.selectors.CONTAINER),this._buttonSlot=d(e,i.selectors.BUTTON_SLOT),this._input=d(e,i.selectors.INPUT),this._inputEventListener=()=>{this._input.value="",this._input.click()},this._container.addEventListener("click",this._inputEventListener)}registerButtonSlotListener(e){this._buttonSlot.addEventListener("slotchange",e)}registerInputChangeListener(e){this._input.addEventListener("change",e)}registerDragEnterListener(e){this._container.addEventListener("dragenter",e)}registerDragLeaveListener(e){this._container.addEventListener("dragleave",e)}registerDragOverListener(e){this._container.addEventListener("dragover",e)}registerDropListener(e){this._container.addEventListener("drop",e)}removeDragEnterListener(e){this._container.removeEventListener("dragenter",e)}removeDragLeaveListener(e){this._container.removeEventListener("dragleave",e)}removeDragOverListener(e){this._container.removeEventListener("dragover",e)}removeDropListener(e){this._container.removeEventListener("drop",e)}initializeButton(){let e=this._component.querySelector("forge-button");this._button=e||void 0}setHighlightState(e){this._container.classList.contains(i.classes.HIGHLIGHT)!==e&&this._container.classList.toggle(i.classes.HIGHLIGHT)}setAccept(e){e?this._input.setAttribute("accept",e):this._input.removeAttribute("accept")}setCapture(e){e?this._input.setAttribute("capture",e):this._input.removeAttribute("capture")}setMultiple(e){e?this._input.setAttribute("multiple",""):this._input.removeAttribute("multiple")}setDisabled(e){var a,o;e?(this._container.removeEventListener("click",this._inputEventListener),(a=this._button)==null||a.setAttribute("disabled",""),this._container.setAttribute("disabled","")):(this._container.addEventListener("click",this._inputEventListener),(o=this._button)==null||o.removeAttribute("disabled"),this._container.removeAttribute("disabled"))}setCompact(e){this._container.classList.contains(i.classes.COMPACT)!==e&&this._container.classList.toggle(i.classes.COMPACT)}setBorderless(e){this._container.classList.contains(i.classes.BORDERLESS)!==e&&this._container.classList.toggle(i.classes.BORDERLESS)}};var g=class{constructor(t){this._adapter=t;this._isInitialized=!1;this._accept=null;this._maxSize=null;this._capture=null;this._multiple=!1;this._disabled=!1;this._compact=!1;this._borderless=!1;this._buttonSlotListener=e=>this._onButtonSlotChanged(e),this._inputChangeListener=e=>this._onInputChange(e),this._dragEnterListener=e=>this._onDragEnter(e),this._dragLeaveListener=e=>this._onDragLeave(e),this._dragOverListener=e=>this._onDragOver(e),this._dropListener=e=>this._onDrop(e),this._adapter.registerButtonSlotListener(this._buttonSlotListener),this._adapter.registerInputChangeListener(this._inputChangeListener),this._compact||this._registerDragListeners()}initialize(){this._adapter.initializeButton(),this._adapter.setDisabled(this._disabled),this._isInitialized=!0}destroy(){this._isInitialized=!1}_onButtonSlotChanged(t){this._adapter.initializeButton()}_onInputChange(t){let e=t.target.files;e&&this._handleFiles(e)}_onDragEnter(t){this._handleDragEvent(t,!0)}_onDragLeave(t){this._handleDragEvent(t,!1)}_onDragOver(t){this._handleDragEvent(t,!0)}_onDrop(t){if(this._handleDragEvent(t,!1),!this._disabled){let e=t.dataTransfer;if(e){let a=e.files;this._handleFiles(a)}}}_registerDragListeners(){this._adapter.registerDragEnterListener(this._dragEnterListener),this._adapter.registerDragLeaveListener(this._dragLeaveListener),this._adapter.registerDragOverListener(this._dragOverListener),this._adapter.registerDropListener(this._dropListener)}_removeDragListeners(){this._adapter.removeDragEnterListener(this._dragEnterListener),this._adapter.removeDragLeaveListener(this._dragLeaveListener),this._adapter.removeDragOverListener(this._dragOverListener),this._adapter.removeDropListener(this._dropListener)}_handleFiles(t){let e={};if(t){let a=this._sortFiles(t),o=a.legalFiles||null;!this._multiple&&o&&o.length>1&&(o=o.splice(1)),e=a}this._adapter.emitHostEvent(i.events.FILES_CHANGED,e)}_sortFiles(t){let e=[],a=[];if(!this._accept&&!this.maxSize)return e=Array.from(t),{legalFiles:e,illegalFiles:a};let o=this._accept?this._accept.split(",").map(r=>r.trim().toLowerCase()):[""];for(let r=0;r<t.length;r++)!o.some(f=>t[r].type.toLowerCase().match(f)||t[r].name.toLowerCase().match("\\"+f))||this._maxSize&&t[r].size>this._maxSize?a.push(t[r]):e.push(t[r]);return{legalFiles:e,illegalFiles:a}}_handleDragEvent(t,e){this._disabled||(t.preventDefault(),t.stopPropagation(),this._adapter.setHighlightState(e))}get accept(){return this._accept}set accept(t){this._accept!==t&&(this._accept=t,this._adapter.setAccept(t),this._adapter.toggleHostAttribute(i.attributes.ACCEPT,!!t,String(t)))}get maxSize(){return this._maxSize}set maxSize(t){this._maxSize!==t&&(this._maxSize=t,this._adapter.toggleHostAttribute(i.attributes.MAX_SIZE,!!t,String(t)))}get capture(){return this._capture}set capture(t){this._capture!==t&&(this._capture=t,this._adapter.setCapture(t),this._adapter.toggleHostAttribute(i.attributes.CAPTURE,!!t,String(t)))}get multiple(){return this._multiple}set multiple(t){this._multiple!==t&&(this._multiple=t,this._adapter.setMultiple(t),this._adapter.toggleHostAttribute(i.attributes.MULTIPLE,t))}get disabled(){return this._disabled}set disabled(t){this._disabled!==t&&(this._disabled=t,this._isInitialized&&this._adapter.setDisabled(t),this._adapter.toggleHostAttribute(i.attributes.DISABLED,t))}get compact(){return this._compact}set compact(t){this._compact!==t&&(this._compact=t,this._adapter.setCompact(t),t?this._removeDragListeners():this._registerDragListeners(),this._adapter.toggleHostAttribute(i.attributes.COMPACT,t))}get borderless(){return this._borderless}set borderless(t){this._borderless!==t&&(this._borderless=t,this._adapter.setBorderless(t),this._adapter.toggleHostAttribute(i.attributes.BORDERLESS,t))}};var F='<template><form class="forge-file-picker" id="container" part="form"><div class="primary" id="primary" part="primary"><slot name="primary"></slot></div><slot id="button-slot"></slot><div class="secondary" id="secondary" part="secondary"><slot name="secondary"></slot></div><input type="file" class="input" id="input" part="input"></form><div class="helper-text" part="helper-text-container"><slot name="helper-text"></slot></div></template>',w=':host{--_file-picker-background:var(--forge-file-picker-background, var(--forge-theme-surface-dim, #fafafa));--_file-picker-width:var(--forge-file-picker-width, auto);--_file-picker-height:var(--forge-file-picker-height, auto);--_file-picker-max-width:var(--forge-file-picker-max-width, auto);--_file-picker-border-width:var(--forge-file-picker-border-width, var(--forge-border-thin, 1px));--_file-picker-border-style:var(--forge-file-picker-border-style, dashed);--_file-picker-border-color:var(--forge-file-picker-border-color, var(--forge-theme-outline-low, #9e9e9e));--_file-picker-gap:var(--forge-file-picker-gap, var(--forge-spacing-medium, 16px));--_file-picker-padding:var(--forge-file-picker-padding, var(--forge-spacing-medium, 16px));--_file-picker-padding-block:var(--forge-file-picker-padding-block, 0);--_file-picker-padding-inline:var(--forge-file-picker-padding-inline, var(--_file-picker-padding));--_file-picker-disabled-opacity:var(--forge-file-picker-disabled-opacity, 0.38);--_file-picker-highlight-background:var(--forge-file-picker-highlight-background, var(--forge-theme-primary-container-minimum, #f7f8fc));--_file-picker-highlight-border-color:var(--forge-file-picker-highlight-border-color, var(--forge-theme-primary, #3f51b5))}:host{display:block;height:100%;width:100%}:host([hidden]){display:none}:host([compact]){display:inline-block}.forge-file-picker{--_file-picker-background:var(--forge-file-picker-background, var(--forge-theme-surface-dim, #fafafa));--_file-picker-width:var(--forge-file-picker-width, auto);--_file-picker-height:var(--forge-file-picker-height, auto);--_file-picker-max-width:var(--forge-file-picker-max-width, auto);--_file-picker-border-width:var(--forge-file-picker-border-width, var(--forge-border-thin, 1px));--_file-picker-border-style:var(--forge-file-picker-border-style, dashed);--_file-picker-border-color:var(--forge-file-picker-border-color, var(--forge-theme-outline-low, #9e9e9e));--_file-picker-gap:var(--forge-file-picker-gap, var(--forge-spacing-medium, 16px));--_file-picker-padding:var(--forge-file-picker-padding, var(--forge-spacing-medium, 16px));--_file-picker-padding-block:var(--forge-file-picker-padding-block, 0);--_file-picker-padding-inline:var(--forge-file-picker-padding-inline, var(--_file-picker-padding));--_file-picker-disabled-opacity:var(--forge-file-picker-disabled-opacity, 0.38);--_file-picker-highlight-background:var(--forge-file-picker-highlight-background, var(--forge-theme-primary-container-minimum, #f7f8fc));--_file-picker-highlight-border-color:var(--forge-file-picker-highlight-border-color, var(--forge-theme-primary, #3f51b5))}.forge-file-picker{display:grid;-webkit-box-pack:center;justify-content:center;align-content:center;gap:var(--_file-picker-gap);-webkit-box-sizing:border-box;box-sizing:border-box;padding:var(--_file-picker-padding);height:var(--_file-picker-height);width:var(--_file-picker-width);max-width:var(--_file-picker-max-width);text-align:center;background:var(--_file-picker-background);cursor:pointer;border-width:var(--_file-picker-border-width);border-style:var(--_file-picker-border-style);border-color:var(--_file-picker-border-color)}.forge-file-picker[disabled]{opacity:var(--_file-picker-disabled-opacity);cursor:unset}.forge-file-picker:not(.compact).highlight{--_file-picker-border-color:var(--_file-picker-highlight-border-color);--_file-picker-background:var(--_file-picker-highlight-background)}.primary{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-body2-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-body2-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-font-size-scale, 1)));font-weight:var(--forge-typography-body2-font-weight,400);line-height:var(--forge-typography-body2-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-line-height-scale, 1.375)));letter-spacing:var(--forge-typography-body2-letter-spacing, .015625em);text-transform:var(--forge-typography-body2-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-body2-text-decoration,inherit);text-decoration:var(--forge-typography-body2-text-decoration,inherit);color:var(--forge-theme-text-high,rgba(0,0,0,.87));max-width:var(--_file-picker-max-width)}.secondary{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-body1-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-body1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-font-size-scale, .875)));font-weight:var(--forge-typography-body1-font-weight,400);line-height:var(--forge-typography-body1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-line-height-scale, 1.125)));letter-spacing:var(--forge-typography-body1-letter-spacing, .0357142857em);text-transform:var(--forge-typography-body1-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-body1-text-decoration,inherit);text-decoration:var(--forge-typography-body1-text-decoration,inherit);color:var(--forge-theme-text-high,rgba(0,0,0,.87));max-width:var(--_file-picker-max-width)}.input{display:none}.helper-text ::slotted([slot=helper-text]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-label1-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-label1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-font-size-scale, .75)));font-weight:var(--forge-typography-label1-font-weight,400);line-height:var(--forge-typography-label1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-label1-letter-spacing, .0357142857em);text-transform:var(--forge-typography-label1-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-label1-text-decoration,inherit);text-decoration:var(--forge-typography-label1-text-decoration,inherit);text-align:start}.borderless{--_file-picker-width:var(--forge-file-picker-width, 100%);border:none}.borderless:not(.compact).highlight{border:none}.borderless+.helper-text{display:none}.compact{--_file-picker-height:var(--forge-file-picker-height, fit-content);--_file-picker-width:var(--forge-file-picker-width, fit-content);--_file-picker-background-color:var(--forge-file-picker-background-color, transparent);--_file-picker-padding:var(--forge-file-picker-padding, 0);border:none}.compact .primary,.compact .secondary{display:none}.compact .button{--_file-picker-width:var(--forge-file-picker-width, auto);background-color:transparent}',n=class extends _{constructor(){super();b(this,F,w),this._foundation=new g(new c(this))}static get observedAttributes(){return[i.attributes.ACCEPT,i.attributes.MAX_SIZE,i.attributes.CAPTURE,i.attributes.MULTIPLE,i.attributes.DISABLED,i.attributes.COMPACT,i.attributes.BORDERLESS]}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.destroy()}attributeChangedCallback(e,a,o){switch(e){case i.attributes.ACCEPT:this.accept=o;break;case i.attributes.MAX_SIZE:this.maxSize=v(o);break;case i.attributes.CAPTURE:this.capture=o;break;case i.attributes.MULTIPLE:this.multiple=p(o);break;case i.attributes.DISABLED:this.disabled=p(o);break;case i.attributes.COMPACT:this.compact=p(o);break;case i.attributes.BORDERLESS:this.borderless=p(o);break}}};s([l()],n.prototype,"accept",2),s([l()],n.prototype,"maxSize",2),s([l()],n.prototype,"capture",2),s([l()],n.prototype,"multiple",2),s([l()],n.prototype,"disabled",2),s([l()],n.prototype,"compact",2),s([l()],n.prototype,"borderless",2),n=s([m({name:i.elementName,dependencies:[L]})],n);var x=class extends E{constructor(t){super(t)}_build(){return document.createElement(i.elementName)}_configure(){var t,e,a,o;if((t=this._config.options)!=null&&t.primaryText){let r=document.createElement("span");r.slot="primary",r.textContent=this._config.options.primaryText,this._element.appendChild(r)}if((e=this._config.options)!=null&&e.secondaryText){let r=document.createElement("span");r.slot="secondary",r.textContent=this._config.options.secondaryText,this._element.appendChild(r)}if((a=this._config.options)!=null&&a.buttonText&&new C({options:{parent:this._element,text:this._config.options.buttonText},props:{variant:"outlined"}}),(o=this._config.options)!=null&&o.helperText){let r=document.createElement("span");r.slot="helper-text",r.textContent=this._config.options.helperText,this._element.appendChild(r)}}onChange(t){this._element.addEventListener(i.events.FILES_CHANGED,e=>t(e.detail))}};function de(){u(n)}export{i as a,c as b,g as c,n as d,x as e,de as f};
|
|
7
|
+
//# sourceMappingURL=chunk.YPNSK2CK.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import{d as R}from"./chunk.U6J4VHU6.js";import{a as S,b as N}from"./chunk.GG7IQL46.js";import{a as d,b as L}from"./chunk.PC6TW5XE.js";import{d as P}from"./chunk.QIZBZGYT.js";import{a as o}from"./chunk.NVUMRW44.js";import{a as A}from"./chunk.OLFOVKQG.js";import{a as I,b as w}from"./chunk.VRSPT7WX.js";import{a as C,e as B,f as n,k as T}from"./chunk.LNTTU2GL.js";import{d as b,e as f,h as y,p as E,q as x,r as v}from"./chunk.L4QSPQDE.js";import{b as _,k as h}from"./chunk.J2M2MXP2.js";import{d as s}from"./chunk.M3QDAYD2.js";var k=`${w}busy-indicator`,F={SURFACE_INVISIBLE:"forge-busy-indicator__surface--invisible",SURFACE_FIXED:"forge-busy-indicator__surface--fixed"},D={SURFACE:".forge-busy-indicator__surface",SURFACE_INVISIBLE:`.${F.SURFACE_INVISIBLE}`,TITLE:".forge-busy-indicator__title",MESSAGE:".forge-busy-indicator__message",CANCEL:".forge-busy-indicator__cancel-button",SPINNER:".forge-busy-indicator__spinner",PROGRESS_BAR_CONTAINER:".forge-busy-indicator__progress-container",PROGRESS_BAR:`.forge-busy-indicator__progress-container ${S.elementName}`,BACKDROP:d.elementName},O={CANCEL:`${k}-cancel`},M={CANCELLING:"Cancelling..."},z={TITLE_TEXT:"title-text",MESSAGE:"message",CANCEL:"cancel",SPINNER:"spinner",PROGRESS_BAR:"progress-bar",PROGRESS_BAR_DETERMINATE:"progress-bar-determinate",PROGRESS:"progress",BUFFER:"buffer",WIDTH:"width",DIRECTION:"direction",MINIMUM_VISIBLE_LIFETIME:"minimum-visible-lifetime",MANAGE_FOCUS:"manage-focus",PARENT_OPEN:"forge-busy-indicator-open",FIXED:"fixed"},H={TRANSITION_LENGTH:120},t={elementName:k,selectors:D,events:O,strings:M,attributes:z,numbers:H,classes:F};var p=class extends A{constructor(e){super(e);this._parentElement=null;this._surfaceElement=n(e,t.selectors.SURFACE),this._titleElement=n(e,t.selectors.TITLE),this._messageElement=n(e,t.selectors.MESSAGE),this._cancelButtonElement=n(e,t.selectors.CANCEL),this._spinnerElement=n(e,t.selectors.SPINNER),this._progressBarContainerElement=n(e,t.selectors.PROGRESS_BAR_CONTAINER),this._progressBarElement=n(e,t.selectors.PROGRESS_BAR),this._backdropElement=n(e,t.selectors.BACKDROP)}setSurfaceOpacity(e){this._surfaceElement.style.opacity=e.toString()}setFixed(e){v(this._backdropElement,e,d.attributes.FIXED),x(this._surfaceElement,e,t.classes.SURFACE_FIXED)}setTitle(e){this._titleElement.innerText=e}setMessage(e){this._messageElement.innerText=e}setTitleVisibility(e){this._titlePlaceholderElement=this._toggleElement(e,t.selectors.TITLE,this._titleElement,this._titlePlaceholderElement)}setCancelButtonVisibility(e){this._cancelButtonPlaceholderElement=this._toggleElement(e,t.selectors.CANCEL,this._cancelButtonElement,this._cancelButtonPlaceholderElement)}setMessageVisibility(e){this._messagePlaceholderElement=this._toggleElement(e,t.selectors.MESSAGE,this._messageElement,this._messagePlaceholderElement)}setSpinnerVisibility(e){this._spinnerPlaceholderElement=this._toggleElement(e,t.selectors.SPINNER,this._spinnerElement,this._spinnerPlaceholderElement)}setProgressBarVisibility(e){this._progressBarContainerPlaceholderElement=this._toggleElement(e,t.selectors.PROGRESS_BAR_CONTAINER,this._progressBarContainerElement,this._progressBarContainerPlaceholderElement)}setProgressBarDeterminate(e){this._progressBarElement.determinate=e}setProgressBarProgress(e){this._progressBarElement.progress=e}setProgressBarBuffer(e){this._progressBarElement.buffer=e}addCancelButtonEventListener(e,a){this._cancelButtonElement.addEventListener(e,a)}removeCancelButtonEventListener(e,a){this._cancelButtonElement.removeEventListener(e,a)}setCancelButtonAttribute(e,a){this._cancelButtonElement.setAttribute(e,a)}setCancelButtonText(e){this._cancelButtonElement.innerText=e}setSurfaceWidth(e){this._surfaceElement.style.width=e.toString()}captureFocus(){this._surfaceElement.focus()}remove(){y(this._component)}hideBackdrop(){this._backdropElement.fadeOut()}showBackdrop(){window.requestAnimationFrame(()=>{var e;this._component.isConnected&&((e=this._backdropElement)==null||e.fadeIn())})}_toggleElement(e,a,c,l){let g=!!n(this._component,a);return l||(l=document.createComment(`(${t.elementName}) ${a}`)),e&&!g?b(c,l):!e&&g&&b(l,c),l}setContainerInvisible(){f(t.classes.SURFACE_INVISIBLE,this._surfaceElement)}setParentAttribute(e,a){this._parentElement=this._component.parentElement,this._parentElement&&this._parentElement.setAttribute(e,a)}removeParentAttribute(e){this._parentElement&&(this._parentElement.removeAttribute(e),this._parentElement=null)}getFocusedElement(){return E(this._component.ownerDocument)}hasFocus(){let e=this.getFocusedElement();return this._component===e||this._surfaceElement===e||this._surfaceElement.contains(e)}};var m=class{constructor(i){this._adapter=i;this._canCancel=!1;this._showSpinner=!0;this._showProgressBar=!1;this._progressBarDeterminate=!1;this._progress=0;this._buffer=0;this._cancelListenerAttached=!1;this._direction="row";this._manageFocus=!0;this._fixed=!0}destroy(){this._adapter.removeCancelButtonEventListener("click",this._onCancelClick)}show(){this._applyDirection(),this._adapter.setParentAttribute(t.attributes.PARENT_OPEN,"true"),this._adapter.setHostAttribute("tabindex","0"),this._adapter.setSurfaceOpacity(0),this._adapter.setFixed(this._fixed),this._titleText||this._adapter.setTitleVisibility(!1),this._message&&this._adapter.setMessage(this._message),this._adapter.setMessageVisibility(!!this._message),this._canCancel?this._attachCancelClickListener():this._adapter.setCancelButtonVisibility(!1),this._showSpinner||this._adapter.setSpinnerVisibility(!1),this._showProgressBar?(this._adapter.setProgressBarDeterminate(this._progressBarDeterminate),this._adapter.setProgressBarProgress(this._progress),this._adapter.setProgressBarBuffer(this._buffer)):this._adapter.setProgressBarVisibility(!1),this._width&&this._adapter.setSurfaceWidth(typeof this._width=="number"?`${this._width}px`:this._width),(!this._message||this._message.length===0)&&this._showSpinner&&(!this.titleText||this._titleText.length===0)&&!this._canCancel&&this._adapter.setContainerInvisible(),this.fadeIn()}hide(i=!1){i?(this._manageFocus&&this._releaseFocus(),this._adapter.remove(),this._adapter.removeParentAttribute(t.attributes.PARENT_OPEN)):(this.fadeOut(),this._adapter.hideBackdrop(),setTimeout(()=>{this._manageFocus&&this._releaseFocus(),this._adapter.remove(),this._adapter.removeParentAttribute(t.attributes.PARENT_OPEN)},t.numbers.TRANSITION_LENGTH))}fadeOut(){this._adapter.setSurfaceOpacity(0)}fadeIn(){this._adapter.showBackdrop(),this._adapter.setSurfaceOpacity(1),this._manageFocus&&this._captureFocus()}_attachCancelClickListener(){this._cancelListenerAttached||(this._adapter.addCancelButtonEventListener("click",this._onCancelClick.bind(this)),this._cancelListenerAttached=!0)}_onCancelClick(){this._adapter.setCancelButtonAttribute("disabled","disabled"),this._adapter.setCancelButtonText(t.strings.CANCELLING),this._adapter.removeCancelButtonEventListener("click",this._onCancelClick),this._adapter.emitHostEvent(t.events.CANCEL)}_captureFocus(){this._previouslyFocusedElement=this._adapter.getFocusedElement(),this._adapter.captureFocus()}_releaseFocus(){this._previouslyFocusedElement&&this._adapter.hasFocus()&&this._previouslyFocusedElement.focus()}set titleText(i){this._titleText!==i&&(this._titleText=i,this._adapter.setTitle(this._titleText),this._adapter.setTitleVisibility(!!this._titleText),this._adapter.setHostAttribute(t.attributes.TITLE_TEXT,this._titleText))}get titleText(){return this._titleText}set message(i){this._message!==i&&(this._message=i,this._adapter.setMessage(this._message),this._adapter.setMessageVisibility(!!this._message),this._adapter.setHostAttribute(t.attributes.MESSAGE,this._message))}get message(){return this._message}set cancel(i){this._canCancel!==i&&(this._canCancel=i,this._adapter.setCancelButtonVisibility(!!this._canCancel),this._canCancel?this._attachCancelClickListener():this._adapter.removeCancelButtonEventListener("click",this._onCancelClick),this._adapter.setHostAttribute(t.attributes.CANCEL,this._canCancel.toString()))}get cancel(){return this._canCancel}set spinner(i){this._showSpinner!==i&&(this._showSpinner=i,this._adapter.setSpinnerVisibility(!!this._showSpinner),this._adapter.setHostAttribute(t.attributes.SPINNER,""+this._showSpinner))}get spinner(){return this._showSpinner}set progressBar(i){this._showProgressBar!==i&&(this._showProgressBar=i,this._adapter.setProgressBarVisibility(!!this._showProgressBar),this._adapter.setHostAttribute(t.attributes.PROGRESS_BAR,this._showProgressBar.toString()))}get progressBar(){return this._showProgressBar}set progressBarDeterminate(i){this._progressBarDeterminate!==i&&(this._progressBarDeterminate=i,this._adapter.setProgressBarDeterminate(i))}get progressBarDeterminate(){return this._progressBarDeterminate}set progress(i){this._progress!==i&&this._progressBarDeterminate&&(this._progress=i,this._adapter.setProgressBarProgress(i))}get progress(){return this._progress}set buffer(i){this._buffer!==i&&this._progressBarDeterminate&&(this._buffer=i,this._adapter.setProgressBarBuffer(i),this._adapter.setHostAttribute(t.attributes.BUFFER,_(this._buffer)?this._buffer.toString():"0"))}get buffer(){return this._buffer}get direction(){return this._direction}set direction(i){i!==this._direction&&(this._direction=i,this._applyDirection())}_applyDirection(){this._direction&&this._adapter.setHostAttribute(t.attributes.DIRECTION,String(this._direction))}set width(i){this._width!==i&&(typeof i=="number"&&i<0&&(i="auto"),this._width=i,this._adapter.setSurfaceWidth(typeof this._width=="number"?`${this._width}px`:this._width),this._adapter.setHostAttribute(t.attributes.WIDTH,this._width.toString()))}get width(){return this._width}get manageFocus(){return this._manageFocus}set manageFocus(i){this._manageFocus!==i&&(this._manageFocus=i,this._adapter.toggleHostAttribute(t.attributes.MANAGE_FOCUS,this._manageFocus))}get fixed(){return this._fixed}set fixed(i){this._fixed!==i&&(this._fixed=i,this._adapter.setFixed(this._fixed),this._adapter.toggleHostAttribute(t.attributes.FIXED,this._fixed))}};var G='<template><forge-backdrop part="backdrop" fixed></forge-backdrop><div class="forge-busy-indicator__surface" role="alert" aria-labelledby="title" aria-describedby="message" part="surface" tabindex="0"><h1 id="title" class="forge-busy-indicator__title" part="title">Loading</h1><div class="forge-busy-indicator__message-container" part="message-container"><forge-circular-progress class="forge-busy-indicator__spinner" part="spinner" aria-hidden="true"></forge-circular-progress><p id="message" class="forge-busy-indicator__message" part="message"></p><forge-button class="forge-busy-indicator__cancel-button" part="cancel-button">Cancel</forge-button></div><div class="forge-busy-indicator__progress-container" part="progress-bar-container"><forge-linear-progress part="progress-bar" aria-hidden="true"></forge-linear-progress></div></div></template>',V=":host{outline:0;contain:content}:host([hidden]){display:none}:host([direction=row]) .forge-busy-indicator__surface{-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);background-color:#fff;background-color:var(--mdc-theme-surface,#fff);border-radius:4px;border-radius:var(--mdc-shape-medium,4px);z-index:8;z-index:var(--forge-z-index-dialog,8);position:absolute;padding:48px;-webkit-box-sizing:border-box;box-sizing:border-box;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);-webkit-transition:opacity 120ms 0s cubic-bezier(0, 0, .2, 1);transition:opacity 120ms 0s cubic-bezier(0, 0, .2, 1);outline:0;opacity:0;min-width:280px;max-width:865px}:host([direction=row]) .forge-busy-indicator__surface .mdc-button__ripple{border-radius:4px;border-radius:var(--mdc-shape-medium,4px)}:host([direction=row]) .forge-busy-indicator__surface--fixed{position:fixed}:host([direction=row]) .forge-busy-indicator__surface--invisible{background:0 0;-webkit-box-shadow:none;box-shadow:none;min-width:auto}:host([direction=row]) .forge-busy-indicator__title{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-headline5-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1.5rem;font-size:var(--mdc-typography-headline5-font-size, 1.5rem);line-height:2rem;line-height:var(--mdc-typography-headline5-line-height, 2rem);font-weight:400;font-weight:var(--mdc-typography-headline5-font-weight,400);letter-spacing:normal;letter-spacing:var(--mdc-typography-headline5-letter-spacing, normal);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-headline5-text-decoration,inherit);text-decoration:var(--mdc-typography-headline5-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-headline5-text-transform,inherit);margin-top:-24px;margin-left:-24px}:host([direction=row]) .forge-busy-indicator__message-container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}:host([direction=row]) .forge-busy-indicator__message{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-body1-font-size, 1rem);line-height:1.5rem;line-height:var(--mdc-typography-body1-line-height, 1.5rem);font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));-webkit-box-flex:1;flex:1 auto;margin-block:0}:host([direction=row]) .forge-busy-indicator__message:nth-child(2){margin-left:16px}:host([direction=row]) .forge-busy-indicator__cancel-button{margin-left:16px}:host([direction=row]) .forge-busy-indicator__progress-container{min-width:244px;margin-top:24px}:host([direction=column]) .forge-busy-indicator__surface{-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);background-color:#fff;background-color:var(--mdc-theme-surface,#fff);border-radius:4px;border-radius:var(--mdc-shape-medium,4px);z-index:8;z-index:var(--forge-z-index-dialog,8);position:absolute;padding:48px;-webkit-box-sizing:border-box;box-sizing:border-box;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);-webkit-transition:opacity 120ms 0s cubic-bezier(0, 0, .2, 1);transition:opacity 120ms 0s cubic-bezier(0, 0, .2, 1);outline:0;opacity:0;min-width:256px;max-width:356px}:host([direction=column]) .forge-busy-indicator__surface .mdc-button__ripple{border-radius:4px;border-radius:var(--mdc-shape-medium,4px)}:host([direction=column]) .forge-busy-indicator__surface--invisible{background:0 0;-webkit-box-shadow:none;box-shadow:none;min-width:auto}:host([direction=column]) .forge-busy-indicator__title{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-headline5-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1.5rem;font-size:var(--mdc-typography-headline5-font-size, 1.5rem);line-height:2rem;line-height:var(--mdc-typography-headline5-line-height, 2rem);font-weight:400;font-weight:var(--mdc-typography-headline5-font-weight,400);letter-spacing:normal;letter-spacing:var(--mdc-typography-headline5-letter-spacing, normal);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-headline5-text-decoration,inherit);text-decoration:var(--mdc-typography-headline5-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-headline5-text-transform,inherit);margin-top:-24px;margin-left:-24px}:host([direction=column]) .forge-busy-indicator__message-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;display:-webkit-box;display:flex;place-items:center}:host([direction=column]) .forge-busy-indicator__message{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-body1-font-size, 1rem);line-height:1.5rem;line-height:var(--mdc-typography-body1-line-height, 1.5rem);font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));-webkit-box-flex:1;flex:1 auto;text-align:center;margin:0}:host([direction=column]) .forge-busy-indicator__cancel-button{margin-top:16px;margin-bottom:-36px;margin-right:0;margin-left:0}:host([direction=column]) .forge-busy-indicator__progress-container{min-width:244px;margin-top:24px}:host([direction=column]) .forge-busy-indicator__spinner{margin-bottom:32px}",r=class extends T{constructor(){super();B(this,G,V),this._foundation=new m(new p(this))}static get observedAttributes(){return[t.attributes.TITLE_TEXT,t.attributes.MESSAGE,t.attributes.CANCEL,t.attributes.MINIMUM_VISIBLE_LIFETIME,t.attributes.DIRECTION,t.attributes.MANAGE_FOCUS,t.attributes.FIXED]}initializedCallback(){this._foundation.show()}disconnectedCallback(){this._foundation.destroy()}attributeChangedCallback(e,a,c){switch(e){case t.attributes.TITLE_TEXT:this.titleText=c;break;case t.attributes.MESSAGE:this.message=c;break;case t.attributes.CANCEL:this.cancel=c==="true";break;case t.attributes.MANAGE_FOCUS:this.manageFocus=h(c);break;case t.attributes.FIXED:this.fixed=h(c);break}}hide(e=!0){this._foundation.hide(e)}};s([o()],r.prototype,"titleText",2),s([o()],r.prototype,"message",2),s([o()],r.prototype,"cancel",2),s([o()],r.prototype,"spinner",2),s([o()],r.prototype,"progressBar",2),s([o()],r.prototype,"progressBarDeterminate",2),s([o()],r.prototype,"progress",2),s([o()],r.prototype,"buffer",2),s([o()],r.prototype,"width",2),s([o()],r.prototype,"direction",2),s([o()],r.prototype,"manageFocus",2),s([o()],r.prototype,"fixed",2),r=s([I({name:t.elementName,dependencies:[L,R,N,P]})],r);function xe(){C(r)}export{t as a,p as b,m as c,r as d,xe as e};
|
|
7
|
+
//# sourceMappingURL=chunk.YRAEFQJW.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/busy-indicator/busy-indicator-constants.ts", "../../src/busy-indicator/busy-indicator-adapter.ts", "../../src/busy-indicator/busy-indicator-foundation.ts", "../../src/busy-indicator/busy-indicator.ts", "../../src/busy-indicator/index.ts"],
|
|
4
|
-
"sourcesContent": ["import { BACKDROP_CONSTANTS } from '../backdrop';\nimport { COMPONENT_NAME_PREFIX } from '../constants';\nimport { LINEAR_PROGRESS_CONSTANTS } from '../linear-progress';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}busy-indicator`;\n\nconst classes = {\n SURFACE_INVISIBLE: 'forge-busy-indicator__surface--invisible',\n SURFACE_FIXED: 'forge-busy-indicator__surface--fixed'\n};\n\nconst selectors = {\n SURFACE: '.forge-busy-indicator__surface',\n SURFACE_INVISIBLE: `.${classes.SURFACE_INVISIBLE}`,\n TITLE: '.forge-busy-indicator__title',\n MESSAGE: '.forge-busy-indicator__message',\n CANCEL: '.forge-busy-indicator__cancel-button',\n SPINNER: '.forge-busy-indicator__spinner',\n PROGRESS_BAR_CONTAINER: '.forge-busy-indicator__progress-container',\n PROGRESS_BAR: `.forge-busy-indicator__progress-container ${LINEAR_PROGRESS_CONSTANTS.elementName}`,\n BACKDROP: BACKDROP_CONSTANTS.elementName\n};\n\nconst events = {\n CANCEL: `${elementName}-cancel`\n};\n\nconst strings = {\n CANCELLING: 'Cancelling...'\n};\n\nconst attributes = {\n TITLE_TEXT: 'title-text',\n MESSAGE: 'message',\n CANCEL: 'cancel',\n SPINNER: 'spinner',\n PROGRESS_BAR: 'progress-bar',\n PROGRESS_BAR_DETERMINATE: 'progress-bar-determinate',\n PROGRESS: 'progress',\n BUFFER: 'buffer',\n WIDTH: 'width',\n DIRECTION: 'direction',\n MINIMUM_VISIBLE_LIFETIME: 'minimum-visible-lifetime',\n MANAGE_FOCUS: 'manage-focus',\n PARENT_OPEN: 'forge-busy-indicator-open',\n FIXED: 'fixed'\n};\n\nconst numbers = {\n TRANSITION_LENGTH: 120\n};\n\nexport const BUSY_INDICATOR_CONSTANTS = {\n elementName,\n selectors,\n events,\n strings,\n attributes,\n numbers,\n classes\n};\n\nexport type BusyIndicatorLayoutDirection = 'row' | 'column' | undefined;\n", "import { addClass, getShadowElement, removeElement, replaceElement, getActiveElement, toggleAttribute, toggleClass } from '@tylertech/forge-core';\nimport { BackdropAppearance, BACKDROP_CONSTANTS, IBackdropComponent } from '../backdrop';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { ILinearProgressComponent } from '../linear-progress';\nimport { IBusyIndicatorComponent } from './busy-indicator';\nimport { BUSY_INDICATOR_CONSTANTS } from './busy-indicator-constants';\n\nexport interface IBusyIndicatorAdapter extends IBaseAdapter {\n setContainerInvisible(): void;\n setSurfaceOpacity: (opacity: number) => void;\n setFixed(value: boolean): void;\n setTitle: (title: string) => void;\n setMessage: (message: string) => void;\n setTitleVisibility: (visible: boolean) => void;\n setMessageVisibility: (visible: boolean) => void;\n setCancelButtonVisibility: (visible: boolean) => void;\n setSpinnerVisibility: (visible: boolean) => void;\n setProgressBarVisibility: (visible: boolean) => void;\n setProgressBarDeterminate: (determinate: boolean) => void;\n setProgressBarProgress: (value: number) => void;\n setProgressBarBuffer: (value: number) => void;\n addCancelButtonEventListener: (type: string, listener: () => void) => void;\n removeCancelButtonEventListener: (type: string, listener: () => void) => void;\n setCancelButtonAttribute: (name: string, value: string) => void;\n setCancelButtonText: (text: string) => void;\n setSurfaceWidth: (value: string) => void;\n captureFocus: () => void;\n remove: () => void;\n hideBackdrop: () => void;\n setBackdropAppearance(appearance: BackdropAppearance): void;\n setParentAttribute(name: string, value: string): void;\n removeParentAttribute(name: string): void;\n getFocusedElement(): HTMLElement;\n hasFocus(): boolean;\n}\n\n/**\n * Provides facilities for interacting with the internal DOM of `BusyIndicatorComponent`.\n */\nexport class BusyIndicatorAdapter extends BaseAdapter<IBusyIndicatorComponent> implements IBusyIndicatorAdapter {\n private _surfaceElement: HTMLElement;\n private _titleElement: HTMLElement;\n private _titlePlaceholderElement: Comment;\n private _messageElement: HTMLElement;\n private _messagePlaceholderElement: Comment;\n private _cancelButtonElement: HTMLElement;\n private _cancelButtonPlaceholderElement: Comment;\n private _spinnerElement: HTMLElement;\n private _spinnerPlaceholderElement: Comment;\n private _progressBarContainerElement: HTMLElement;\n private _progressBarContainerPlaceholderElement: Comment;\n private _progressBarElement: ILinearProgressComponent;\n private _backdropElement: IBackdropComponent;\n private _parentElement: HTMLElement | null = null;\n\n constructor(component: IBusyIndicatorComponent) {\n super(component);\n this._surfaceElement = getShadowElement(component, BUSY_INDICATOR_CONSTANTS.selectors.SURFACE);\n this._titleElement = getShadowElement(component, BUSY_INDICATOR_CONSTANTS.selectors.TITLE);\n this._messageElement = getShadowElement(component, BUSY_INDICATOR_CONSTANTS.selectors.MESSAGE);\n this._cancelButtonElement = getShadowElement(component, BUSY_INDICATOR_CONSTANTS.selectors.CANCEL);\n this._spinnerElement = getShadowElement(component, BUSY_INDICATOR_CONSTANTS.selectors.SPINNER);\n this._progressBarContainerElement = getShadowElement(component, BUSY_INDICATOR_CONSTANTS.selectors.PROGRESS_BAR_CONTAINER);\n this._progressBarElement = getShadowElement(component, BUSY_INDICATOR_CONSTANTS.selectors.PROGRESS_BAR) as ILinearProgressComponent;\n this._backdropElement = getShadowElement(component, BUSY_INDICATOR_CONSTANTS.selectors.BACKDROP) as IBackdropComponent;\n }\n\n /**\n * Sets the opacity of the content element.\n * @param opacity The opacity value.\n */\n public setSurfaceOpacity(opacity: number): void {\n this._surfaceElement.style.opacity = opacity.toString();\n }\n\n public setFixed(value: boolean): void {\n toggleAttribute(this._backdropElement, value, BACKDROP_CONSTANTS.attributes.FIXED);\n toggleClass(this._surfaceElement, value, BUSY_INDICATOR_CONSTANTS.classes.SURFACE_FIXED);\n }\n\n /**\n * Sets the content of the title element.\n * @param title The title text.\n */\n public setTitle(title: string): void {\n this._titleElement.innerText = title;\n }\n\n /**\n * Sets the content of the message element.\n * @param message The message text.\n */\n public setMessage(message: string): void {\n this._messageElement.innerText = message;\n }\n\n /**\n * Sets the visibility of the title element by adding or removing it from the DOM.\n * @param visible Whether the title is visible or not.\n */\n public setTitleVisibility(visible: boolean): void {\n this._titlePlaceholderElement = this._toggleElement(visible, BUSY_INDICATOR_CONSTANTS.selectors.TITLE, this._titleElement, this._titlePlaceholderElement);\n }\n\n /**\n * Adds or removes the cancel button from the DOM.\n * @param visible The visibility value.\n */\n public setCancelButtonVisibility(visible: boolean): void {\n this._cancelButtonPlaceholderElement = this._toggleElement(visible, BUSY_INDICATOR_CONSTANTS.selectors.CANCEL, this._cancelButtonElement, this._cancelButtonPlaceholderElement);\n }\n\n /**\n * Adds or removes the message element from the DOM.\n * @param visible The visibility value.\n */\n public setMessageVisibility(visible: boolean): void {\n this._messagePlaceholderElement = this._toggleElement(visible, BUSY_INDICATOR_CONSTANTS.selectors.MESSAGE, this._messageElement, this._messagePlaceholderElement);\n }\n\n /**\n * Adds or removes the spinner element from the DOM.\n * @param visible The visibility value.\n */\n public setSpinnerVisibility(visible: boolean): void {\n this._spinnerPlaceholderElement = this._toggleElement(visible, BUSY_INDICATOR_CONSTANTS.selectors.SPINNER, this._spinnerElement, this._spinnerPlaceholderElement);\n }\n\n /**\n * Adds or removes the progress bar element from the DOM.\n * @param visible The visibility value.\n */\n public setProgressBarVisibility(visible: boolean): void {\n this._progressBarContainerPlaceholderElement = this._toggleElement(\n visible,\n BUSY_INDICATOR_CONSTANTS.selectors.PROGRESS_BAR_CONTAINER,\n this._progressBarContainerElement,\n this._progressBarContainerPlaceholderElement\n );\n }\n\n /**\n * Sets the determinate state of the progress bar component.\n * @param {boolean} determinate The determinate value.\n */\n public setProgressBarDeterminate(determinate: boolean): void {\n this._progressBarElement.determinate = determinate;\n }\n\n /**\n * Sets the progress percent for the progress bar component.\n * @param value The progress percent.\n */\n public setProgressBarProgress(value: number): void {\n this._progressBarElement.progress = value;\n }\n\n /**\n * Sets the progress bar component buffer percent.\n * @param value The buffer percent.\n */\n public setProgressBarBuffer(value: number): void {\n this._progressBarElement.buffer = value;\n }\n\n /**\n * Adds an event listener to the cancel button.\n * @param type The event type.\n * @param listener The event listener.\n */\n public addCancelButtonEventListener(type: string, listener: () => void): void {\n this._cancelButtonElement.addEventListener(type, listener);\n }\n\n /**\n * Removes an event listener from the cancel button.\n * @param type The event type.\n * @param listener The event listener.\n */\n public removeCancelButtonEventListener(type: string, listener: () => void): void {\n this._cancelButtonElement.removeEventListener(type, listener);\n }\n\n /**\n * Sets an attribute on the cancel button.\n * @param name The attribute name.\n * @param value The attribute value.\n */\n public setCancelButtonAttribute(name: string, value: string): void {\n this._cancelButtonElement.setAttribute(name, value);\n }\n\n /**\n * Sets the text displayed in the cancel button element.\n * @param text The text value.\n */\n public setCancelButtonText(text: string): void {\n this._cancelButtonElement.innerText = text;\n }\n\n /**\n * Sets the width of the surface element.\n * @param value The CSS width.\n */\n public setSurfaceWidth(value: string): void {\n this._surfaceElement.style.width = value.toString();\n }\n\n /**\n * Sets focus to the busy indicator component element.\n */\n public captureFocus(): void {\n this._surfaceElement.focus();\n }\n\n /**\n * Removes the busy indicator component from its parent.\n */\n public remove(): void {\n removeElement(this._component);\n }\n\n /**\n * Hides the backdrop by fading it out.\n */\n public hideBackdrop(): void {\n this._backdropElement.fadeOut();\n }\n\n private _toggleElement(isVisible: boolean, selector: string, element: Node, placeholder: Comment): Comment {\n const exists = !!getShadowElement(this._component, selector);\n\n if (!placeholder) {\n placeholder = document.createComment(`(${BUSY_INDICATOR_CONSTANTS.elementName}) ${selector}`);\n }\n\n if (isVisible && !exists) {\n replaceElement(element, placeholder);\n } else if (!isVisible && exists) {\n replaceElement(placeholder, element);\n }\n\n return placeholder;\n }\n\n public setContainerInvisible(): void {\n addClass(BUSY_INDICATOR_CONSTANTS.classes.SURFACE_INVISIBLE, this._surfaceElement);\n }\n\n public setBackdropAppearance(appearance: BackdropAppearance): void {\n this._backdropElement.setAttribute(BACKDROP_CONSTANTS.attributes.APPEARANCE, String(appearance));\n }\n\n public setParentAttribute(name: string, value: string): void {\n this._parentElement = this._component.parentElement;\n if (this._parentElement) {\n this._parentElement.setAttribute(name, value);\n }\n }\n\n public removeParentAttribute(name: string): void {\n if (this._parentElement) {\n this._parentElement.removeAttribute(name);\n this._parentElement = null;\n }\n }\n\n public getFocusedElement(): HTMLElement {\n return getActiveElement(this._component.ownerDocument) as HTMLElement;\n }\n\n public hasFocus(): boolean {\n const activeElement = this.getFocusedElement();\n return this._component === activeElement || this._surfaceElement === activeElement || this._surfaceElement.contains(activeElement);\n }\n}\n", "import { ICustomElementFoundation, isDefined } from '@tylertech/forge-core';\nimport { IBusyIndicatorAdapter } from './busy-indicator-adapter';\nimport { BusyIndicatorLayoutDirection, BUSY_INDICATOR_CONSTANTS } from './busy-indicator-constants';\n\nexport interface IBusyIndicatorFoundation extends ICustomElementFoundation {\n titleText: string;\n message: string;\n cancel: boolean;\n spinner: boolean;\n progressBar: boolean;\n progressBarDeterminate: boolean;\n progress: number;\n buffer: number;\n width: number | 'auto';\n direction: BusyIndicatorLayoutDirection;\n manageFocus: boolean;\n fixed: boolean;\n hide(force?: boolean): void;\n}\n\n/**\n * Provides facilities and helper methods for creating a busy indicator component.\n */\nexport class BusyIndicatorFoundation implements IBusyIndicatorFoundation {\n private _titleText: string;\n private _message: string;\n private _canCancel = false;\n private _showSpinner = true;\n private _showProgressBar = false;\n private _progressBarDeterminate = false;\n private _progress = 0;\n private _buffer = 0;\n private _cancelListenerAttached = false;\n private _width: number | 'auto';\n private _previouslyFocusedElement?: HTMLElement;\n private _direction: BusyIndicatorLayoutDirection = 'row';\n private _manageFocus = true;\n private _fixed = true;\n\n constructor(private _adapter: IBusyIndicatorAdapter) {}\n\n public destroy(): void {\n this._adapter.removeCancelButtonEventListener('click', this._onCancelClick);\n }\n\n public show(): void {\n this._applyDirection();\n this._adapter.setParentAttribute(BUSY_INDICATOR_CONSTANTS.attributes.PARENT_OPEN, 'true');\n this._adapter.setHostAttribute('tabindex', '0');\n this._adapter.setSurfaceOpacity(0);\n this._adapter.setFixed(this._fixed);\n\n if (!this._titleText) {\n this._adapter.setTitleVisibility(false);\n }\n\n if (this._message) {\n this._adapter.setMessage(this._message);\n }\n\n this._adapter.setMessageVisibility(!!this._message);\n\n if (!this._canCancel) {\n this._adapter.setCancelButtonVisibility(false);\n } else {\n this._attachCancelClickListener();\n }\n\n if (!this._showSpinner) {\n this._adapter.setSpinnerVisibility(false);\n }\n\n if (!this._showProgressBar) {\n this._adapter.setProgressBarVisibility(false);\n } else {\n this._adapter.setProgressBarDeterminate(this._progressBarDeterminate);\n this._adapter.setProgressBarProgress(this._progress);\n this._adapter.setProgressBarBuffer(this._buffer);\n }\n\n if (this._width) {\n this._adapter.setSurfaceWidth(typeof this._width === 'number' ? `${this._width}px` : this._width);\n }\n\n if ((!this._message || this._message.length === 0) && this._showSpinner && (!this.titleText || this._titleText.length === 0) && !this._canCancel) {\n this._adapter.setContainerInvisible();\n this._adapter.setBackdropAppearance('light');\n }\n\n this.fadeIn();\n }\n\n /**\n * Removes the element from the DOM.\n * @param {boolean} [force=false] Whether to force removal of the busy indicator or not.\n */\n public hide(force = false): void {\n if (force) {\n if (this._manageFocus) {\n this._releaseFocus();\n }\n this._adapter.remove();\n this._adapter.removeParentAttribute(BUSY_INDICATOR_CONSTANTS.attributes.PARENT_OPEN);\n } else {\n this.fadeOut();\n this._adapter.hideBackdrop();\n setTimeout(() => {\n if (this._manageFocus) {\n this._releaseFocus();\n }\n this._adapter.remove();\n this._adapter.removeParentAttribute(BUSY_INDICATOR_CONSTANTS.attributes.PARENT_OPEN);\n }, BUSY_INDICATOR_CONSTANTS.numbers.TRANSITION_LENGTH);\n }\n }\n\n /** Sets the elements opacity to 0 which triggers the CSS transition to fade out. */\n public fadeOut(): void {\n this._adapter.setSurfaceOpacity(0);\n }\n\n /** Sets the elements opacity to 1 which triggers the CSS transition to fade in after the current delay value. */\n public fadeIn(): void {\n this._adapter.setSurfaceOpacity(1);\n if (this._manageFocus) {\n this._captureFocus();\n }\n }\n\n /** Attaches the click listener to the cancel button. */\n private _attachCancelClickListener(): void {\n if (!this._cancelListenerAttached) {\n this._adapter.addCancelButtonEventListener('click', this._onCancelClick.bind(this));\n this._cancelListenerAttached = true;\n }\n }\n\n /** Handles clicks on the cancel button. */\n private _onCancelClick(): void {\n this._adapter.setCancelButtonAttribute('disabled', 'disabled');\n this._adapter.setCancelButtonText(BUSY_INDICATOR_CONSTANTS.strings.CANCELLING);\n this._adapter.removeCancelButtonEventListener('click', this._onCancelClick);\n this._adapter.emitHostEvent(BUSY_INDICATOR_CONSTANTS.events.CANCEL);\n }\n\n /** Cache currently focused element, set focus to the busy indicator. */\n private _captureFocus(): void {\n this._previouslyFocusedElement = this._adapter.getFocusedElement();\n this._adapter.captureFocus();\n }\n\n /** Gives focus back to the element that had it when the busy indicator was displayed. */\n private _releaseFocus(): void {\n if (this._previouslyFocusedElement && this._adapter.hasFocus()) {\n this._previouslyFocusedElement.focus();\n }\n }\n\n /** The title to be displayed. */\n public set titleText(value: string) {\n if (this._titleText !== value) {\n this._titleText = value;\n this._adapter.setTitle(this._titleText);\n this._adapter.setTitleVisibility(!!this._titleText);\n this._adapter.setHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.TITLE_TEXT, this._titleText);\n }\n }\n public get titleText(): string {\n return this._titleText;\n }\n\n /** The message to be displayed. */\n public set message(value: string) {\n if (this._message !== value) {\n this._message = value;\n this._adapter.setMessage(this._message);\n this._adapter.setMessageVisibility(!!this._message);\n this._adapter.setHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.MESSAGE, this._message);\n }\n }\n public get message(): string {\n return this._message;\n }\n\n /** Controls whether the cancel button is visible or not. */\n public set cancel(canCancel: boolean) {\n if (this._canCancel !== canCancel) {\n this._canCancel = canCancel;\n this._adapter.setCancelButtonVisibility(!!this._canCancel);\n\n if (this._canCancel) {\n this._attachCancelClickListener();\n } else {\n this._adapter.removeCancelButtonEventListener('click', this._onCancelClick);\n }\n\n this._adapter.setHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.CANCEL, this._canCancel.toString());\n }\n }\n public get cancel(): boolean {\n return this._canCancel;\n }\n\n /** Controls whether the progress spinner is visible or not. */\n public set spinner(showSpinner: boolean) {\n if (this._showSpinner !== showSpinner) {\n this._showSpinner = showSpinner;\n this._adapter.setSpinnerVisibility(!!this._showSpinner);\n this._adapter.setHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.SPINNER, '' + this._showSpinner);\n }\n }\n public get spinner(): boolean {\n return this._showSpinner;\n }\n\n /** Controls whether the progres bar is visible or not. */\n public set progressBar(showProgressBar: boolean) {\n if (this._showProgressBar !== showProgressBar) {\n this._showProgressBar = showProgressBar;\n this._adapter.setProgressBarVisibility(!!this._showProgressBar);\n this._adapter.setHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.PROGRESS_BAR, this._showProgressBar.toString());\n }\n }\n public get progressBar(): boolean {\n return this._showProgressBar;\n }\n\n /** Sets the progress bar mode. */\n public set progressBarDeterminate(determinate: boolean) {\n if (this._progressBarDeterminate !== determinate) {\n this._progressBarDeterminate = determinate;\n this._adapter.setProgressBarDeterminate(determinate);\n }\n }\n public get progressBarDeterminate(): boolean {\n return this._progressBarDeterminate;\n }\n\n /** The progress amount of the progress bar. */\n public set progress(value: number) {\n if (this._progress !== value && this._progressBarDeterminate) {\n this._progress = value;\n this._adapter.setProgressBarProgress(value);\n }\n }\n public get progress(): number {\n return this._progress;\n }\n\n /** The buffer amount of the progress bar. */\n public set buffer(value: number) {\n if (this._buffer !== value && this._progressBarDeterminate) {\n this._buffer = value;\n this._adapter.setProgressBarBuffer(value);\n this._adapter.setHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.BUFFER, isDefined(this._buffer) ? this._buffer.toString() : '0');\n }\n }\n public get buffer(): number {\n return this._buffer;\n }\n\n public get direction(): BusyIndicatorLayoutDirection {\n return this._direction;\n }\n public set direction(value: BusyIndicatorLayoutDirection) {\n if (value !== this._direction) {\n this._direction = value;\n this._applyDirection();\n }\n }\n\n private _applyDirection(): void {\n if (this._direction) {\n this._adapter.setHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.DIRECTION, String(this._direction));\n }\n }\n\n /** Sets the width of the busy indicator element. */\n public set width(value: number | 'auto') {\n if (this._width !== value) {\n if (typeof value === 'number' && value < 0) {\n value = 'auto';\n }\n this._width = value;\n this._adapter.setSurfaceWidth(typeof this._width === 'number' ? `${this._width}px` : this._width);\n this._adapter.setHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.WIDTH, this._width.toString());\n }\n }\n public get width(): number | 'auto' {\n return this._width;\n }\n\n public get manageFocus(): boolean {\n return this._manageFocus;\n }\n public set manageFocus(value: boolean) {\n if (this._manageFocus !== value) {\n this._manageFocus = value;\n this._adapter.toggleHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.MANAGE_FOCUS, this._manageFocus);\n }\n }\n\n public get fixed(): boolean {\n return this._fixed;\n }\n public set fixed(value: boolean) {\n if (this._fixed !== value) {\n this._fixed = value;\n this._adapter.setFixed(this._fixed);\n this._adapter.toggleHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.FIXED, this._fixed);\n }\n }\n}\n", "import { attachShadowTemplate, coerceNumber, CustomElement, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\nimport { BackdropComponent } from '../backdrop';\nimport { ButtonComponent } from '../button';\nimport { CircularProgressComponent } from '../circular-progress';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\nimport { LinearProgressComponent } from '../linear-progress';\nimport { BusyIndicatorAdapter } from './busy-indicator-adapter';\nimport { BUSY_INDICATOR_CONSTANTS, BusyIndicatorLayoutDirection } from './busy-indicator-constants';\nimport { BusyIndicatorFoundation } from './busy-indicator-foundation';\n\nconst template = '<template><forge-backdrop part=\\\"backdrop\\\" fixed></forge-backdrop><div class=\\\"forge-busy-indicator__surface\\\" role=\\\"alert\\\" aria-labelledby=\\\"title\\\" aria-describedby=\\\"message\\\" part=\\\"surface\\\" tabindex=\\\"0\\\"><h1 id=\\\"title\\\" class=\\\"forge-busy-indicator__title\\\" part=\\\"title\\\">Loading</h1><div class=\\\"forge-busy-indicator__message-container\\\" part=\\\"message-container\\\"><forge-circular-progress class=\\\"forge-busy-indicator__spinner\\\" part=\\\"spinner\\\" aria-hidden=\\\"true\\\"></forge-circular-progress><p id=\\\"message\\\" class=\\\"forge-busy-indicator__message\\\" part=\\\"message\\\"></p><forge-button class=\\\"forge-busy-indicator__cancel-button\\\" part=\\\"cancel-button\\\">Cancel</forge-button></div><div class=\\\"forge-busy-indicator__progress-container\\\" part=\\\"progress-bar-container\\\"><forge-linear-progress part=\\\"progress-bar\\\" aria-hidden=\\\"true\\\"></forge-linear-progress></div></div></template>';\nconst styles = ':host{outline:0;contain:content}:host([hidden]){display:none}:host([direction=row]) .forge-busy-indicator__surface{-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);background-color:#fff;background-color:var(--mdc-theme-surface,#fff);border-radius:4px;border-radius:var(--mdc-shape-medium,4px);z-index:8;z-index:var(--forge-z-index-dialog,8);position:absolute;padding:48px;-webkit-box-sizing:border-box;box-sizing:border-box;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);-webkit-transition:opacity 120ms 0s cubic-bezier(0, 0, .2, 1);transition:opacity 120ms 0s cubic-bezier(0, 0, .2, 1);outline:0;opacity:0;min-width:280px;max-width:865px}:host([direction=row]) .forge-busy-indicator__surface .mdc-button__ripple{border-radius:4px;border-radius:var(--mdc-shape-medium,4px)}:host([direction=row]) .forge-busy-indicator__surface--fixed{position:fixed}:host([direction=row]) .forge-busy-indicator__surface--invisible{background:0 0;-webkit-box-shadow:none;box-shadow:none;min-width:auto}:host([direction=row]) .forge-busy-indicator__title{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-headline5-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1.5rem;font-size:var(--mdc-typography-headline5-font-size, 1.5rem);line-height:2rem;line-height:var(--mdc-typography-headline5-line-height, 2rem);font-weight:400;font-weight:var(--mdc-typography-headline5-font-weight,400);letter-spacing:normal;letter-spacing:var(--mdc-typography-headline5-letter-spacing, normal);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-headline5-text-decoration,inherit);text-decoration:var(--mdc-typography-headline5-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-headline5-text-transform,inherit);margin-top:-24px;margin-left:-24px}:host([direction=row]) .forge-busy-indicator__message-container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}:host([direction=row]) .forge-busy-indicator__message{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-body1-font-size, 1rem);line-height:1.5rem;line-height:var(--mdc-typography-body1-line-height, 1.5rem);font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));-webkit-box-flex:1;flex:1 auto;margin-block:0}:host([direction=row]) .forge-busy-indicator__message:nth-child(2){margin-left:16px}:host([direction=row]) .forge-busy-indicator__cancel-button{margin-left:16px}:host([direction=row]) .forge-busy-indicator__progress-container{min-width:244px;margin-top:24px}:host([direction=column]) .forge-busy-indicator__surface{-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);background-color:#fff;background-color:var(--mdc-theme-surface,#fff);border-radius:4px;border-radius:var(--mdc-shape-medium,4px);z-index:8;z-index:var(--forge-z-index-dialog,8);position:absolute;padding:48px;-webkit-box-sizing:border-box;box-sizing:border-box;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);-webkit-transition:opacity 120ms 0s cubic-bezier(0, 0, .2, 1);transition:opacity 120ms 0s cubic-bezier(0, 0, .2, 1);outline:0;opacity:0;min-width:256px;max-width:356px}:host([direction=column]) .forge-busy-indicator__surface .mdc-button__ripple{border-radius:4px;border-radius:var(--mdc-shape-medium,4px)}:host([direction=column]) .forge-busy-indicator__surface--invisible{background:0 0;-webkit-box-shadow:none;box-shadow:none;min-width:auto}:host([direction=column]) .forge-busy-indicator__title{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-headline5-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1.5rem;font-size:var(--mdc-typography-headline5-font-size, 1.5rem);line-height:2rem;line-height:var(--mdc-typography-headline5-line-height, 2rem);font-weight:400;font-weight:var(--mdc-typography-headline5-font-weight,400);letter-spacing:normal;letter-spacing:var(--mdc-typography-headline5-letter-spacing, normal);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-headline5-text-decoration,inherit);text-decoration:var(--mdc-typography-headline5-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-headline5-text-transform,inherit);margin-top:-24px;margin-left:-24px}:host([direction=column]) .forge-busy-indicator__message-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;display:-webkit-box;display:flex;place-items:center}:host([direction=column]) .forge-busy-indicator__message{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-body1-font-size, 1rem);line-height:1.5rem;line-height:var(--mdc-typography-body1-line-height, 1.5rem);font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));-webkit-box-flex:1;flex:1 auto;text-align:center;margin:0}:host([direction=column]) .forge-busy-indicator__cancel-button{margin-top:16px;margin-bottom:-36px;margin-right:0;margin-left:0}:host([direction=column]) .forge-busy-indicator__progress-container{min-width:244px;margin-top:24px}:host([direction=column]) .forge-busy-indicator__spinner{margin-bottom:32px}';\n\nexport interface IBusyIndicatorComponent extends IBaseComponent {\n titleText: string;\n message: string;\n cancel: boolean;\n spinner: boolean;\n progressBar: boolean;\n progressBarDeterminate: boolean;\n progress: number;\n buffer: number;\n width: number | 'auto';\n direction: BusyIndicatorLayoutDirection;\n manageFocus: boolean;\n fixed: boolean;\n hide(force?: boolean): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-busy-indicator': IBusyIndicatorComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-busy-indicator-cancel': CustomEvent<void>;\n }\n}\n\n/**\n * A web component that renders a busy indicator covering its parent container.\n * \n * @tag forge-busy-indicator\n */\n@CustomElement({\n name: BUSY_INDICATOR_CONSTANTS.elementName,\n dependencies: [BackdropComponent, CircularProgressComponent, LinearProgressComponent, ButtonComponent]\n})\nexport class BusyIndicatorComponent extends BaseComponent implements IBusyIndicatorComponent {\n public static get observedAttributes(): string[] {\n return [\n BUSY_INDICATOR_CONSTANTS.attributes.TITLE_TEXT,\n BUSY_INDICATOR_CONSTANTS.attributes.MESSAGE,\n BUSY_INDICATOR_CONSTANTS.attributes.CANCEL,\n BUSY_INDICATOR_CONSTANTS.attributes.MINIMUM_VISIBLE_LIFETIME,\n BUSY_INDICATOR_CONSTANTS.attributes.DIRECTION,\n BUSY_INDICATOR_CONSTANTS.attributes.MANAGE_FOCUS,\n BUSY_INDICATOR_CONSTANTS.attributes.FIXED\n ];\n }\n\n private _foundation: BusyIndicatorFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new BusyIndicatorFoundation(new BusyIndicatorAdapter(this));\n }\n\n public initializedCallback(): void {\n this._foundation.show();\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 BUSY_INDICATOR_CONSTANTS.attributes.TITLE_TEXT:\n this.titleText = newValue;\n break;\n case BUSY_INDICATOR_CONSTANTS.attributes.MESSAGE:\n this.message = newValue;\n break;\n case BUSY_INDICATOR_CONSTANTS.attributes.CANCEL:\n this.cancel = newValue === 'true';\n break;\n case BUSY_INDICATOR_CONSTANTS.attributes.MANAGE_FOCUS:\n this.manageFocus = coerceBoolean(newValue);\n break;\n case BUSY_INDICATOR_CONSTANTS.attributes.FIXED:\n this.fixed = coerceBoolean(newValue);\n break;\n }\n }\n\n /** The title to be displayed. */\n @FoundationProperty()\n public declare titleText: string;\n\n /** The message to be displayed. */\n @FoundationProperty()\n public declare message: string;\n\n /** Controls whether the cancel button is visible or not. */\n @FoundationProperty()\n public declare cancel: boolean;\n\n /** Controls whether the progress spinner is visible or not. */\n @FoundationProperty()\n public declare spinner: boolean;\n\n /** Controls whether the progres bar is visible or not. */\n @FoundationProperty()\n public declare progressBar: boolean;\n\n /** Sets the progress bar determinate state. */\n @FoundationProperty()\n public declare progressBarDeterminate: boolean;\n\n /** The progress amount of the progress bar. */\n @FoundationProperty()\n public declare progress: number;\n\n /** The buffer amount of the progress bar. */\n @FoundationProperty()\n public declare buffer: number;\n\n /** Sets the width of the busy indicator element. */\n @FoundationProperty()\n public declare width: number | 'auto';\n\n /** The layout direction for alternative designs. */\n @FoundationProperty()\n public declare direction: BusyIndicatorLayoutDirection;\n\n /** Controls whether the component will manage capturing and relasing focus when opened/closed. */\n @FoundationProperty()\n public declare manageFocus: boolean;\n\n /**\n * Controls the `position` of the backdrop and surface element between `fixed` and `absolute` positioning. Default is `true`.\n * \n * Note: use this property when you want to render the busy indicator within a specific element where it doesn't fill the\n * full viewport heigth/width to only cover the parent element bounds.\n */\n @FoundationProperty()\n public declare fixed: boolean;\n\n /**\n * Removes the element from the DOM.\n * @param {boolean} [force=false] Whether to force removal of the busy indicator or not.\n */\n public hide(force = true): void {\n this._foundation.hide(force);\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { BusyIndicatorComponent } from './busy-indicator';\n\nexport * from './busy-indicator-adapter';\nexport * from './busy-indicator-constants';\nexport * from './busy-indicator-foundation';\nexport * from './busy-indicator';\n\nexport function defineBusyIndicatorComponent(): void {\n defineCustomElement(BusyIndicatorComponent);\n}\n"],
|
|
5
|
-
"mappings": "
|
|
6
|
-
"names": ["elementName", "COMPONENT_NAME_PREFIX", "classes", "selectors", "LINEAR_PROGRESS_CONSTANTS", "BACKDROP_CONSTANTS", "events", "strings", "attributes", "numbers", "BUSY_INDICATOR_CONSTANTS", "BusyIndicatorAdapter", "BaseAdapter", "component", "getShadowElement", "BUSY_INDICATOR_CONSTANTS", "opacity", "value", "toggleAttribute", "BACKDROP_CONSTANTS", "toggleClass", "title", "message", "visible", "determinate", "type", "listener", "name", "text", "removeElement", "isVisible", "selector", "element", "placeholder", "exists", "replaceElement", "addClass", "
|
|
4
|
+
"sourcesContent": ["import { BACKDROP_CONSTANTS } from '../backdrop';\nimport { COMPONENT_NAME_PREFIX } from '../constants';\nimport { LINEAR_PROGRESS_CONSTANTS } from '../linear-progress';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}busy-indicator`;\n\nconst classes = {\n SURFACE_INVISIBLE: 'forge-busy-indicator__surface--invisible',\n SURFACE_FIXED: 'forge-busy-indicator__surface--fixed'\n};\n\nconst selectors = {\n SURFACE: '.forge-busy-indicator__surface',\n SURFACE_INVISIBLE: `.${classes.SURFACE_INVISIBLE}`,\n TITLE: '.forge-busy-indicator__title',\n MESSAGE: '.forge-busy-indicator__message',\n CANCEL: '.forge-busy-indicator__cancel-button',\n SPINNER: '.forge-busy-indicator__spinner',\n PROGRESS_BAR_CONTAINER: '.forge-busy-indicator__progress-container',\n PROGRESS_BAR: `.forge-busy-indicator__progress-container ${LINEAR_PROGRESS_CONSTANTS.elementName}`,\n BACKDROP: BACKDROP_CONSTANTS.elementName\n};\n\nconst events = {\n CANCEL: `${elementName}-cancel`\n};\n\nconst strings = {\n CANCELLING: 'Cancelling...'\n};\n\nconst attributes = {\n TITLE_TEXT: 'title-text',\n MESSAGE: 'message',\n CANCEL: 'cancel',\n SPINNER: 'spinner',\n PROGRESS_BAR: 'progress-bar',\n PROGRESS_BAR_DETERMINATE: 'progress-bar-determinate',\n PROGRESS: 'progress',\n BUFFER: 'buffer',\n WIDTH: 'width',\n DIRECTION: 'direction',\n MINIMUM_VISIBLE_LIFETIME: 'minimum-visible-lifetime',\n MANAGE_FOCUS: 'manage-focus',\n PARENT_OPEN: 'forge-busy-indicator-open',\n FIXED: 'fixed'\n};\n\nconst numbers = {\n TRANSITION_LENGTH: 120\n};\n\nexport const BUSY_INDICATOR_CONSTANTS = {\n elementName,\n selectors,\n events,\n strings,\n attributes,\n numbers,\n classes\n};\n\nexport type BusyIndicatorLayoutDirection = 'row' | 'column' | undefined;\n", "import { addClass, getShadowElement, removeElement, replaceElement, getActiveElement, toggleAttribute, toggleClass } from '@tylertech/forge-core';\nimport { BACKDROP_CONSTANTS, IBackdropComponent } from '../backdrop';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { ILinearProgressComponent } from '../linear-progress';\nimport { IBusyIndicatorComponent } from './busy-indicator';\nimport { BUSY_INDICATOR_CONSTANTS } from './busy-indicator-constants';\n\nexport interface IBusyIndicatorAdapter extends IBaseAdapter {\n setContainerInvisible(): void;\n setSurfaceOpacity: (opacity: number) => void;\n setFixed(value: boolean): void;\n setTitle: (title: string) => void;\n setMessage: (message: string) => void;\n setTitleVisibility: (visible: boolean) => void;\n setMessageVisibility: (visible: boolean) => void;\n setCancelButtonVisibility: (visible: boolean) => void;\n setSpinnerVisibility: (visible: boolean) => void;\n setProgressBarVisibility: (visible: boolean) => void;\n setProgressBarDeterminate: (determinate: boolean) => void;\n setProgressBarProgress: (value: number) => void;\n setProgressBarBuffer: (value: number) => void;\n addCancelButtonEventListener: (type: string, listener: () => void) => void;\n removeCancelButtonEventListener: (type: string, listener: () => void) => void;\n setCancelButtonAttribute: (name: string, value: string) => void;\n setCancelButtonText: (text: string) => void;\n setSurfaceWidth: (value: string) => void;\n captureFocus: () => void;\n remove: () => void;\n hideBackdrop: () => void;\n showBackdrop: () => void;\n setParentAttribute(name: string, value: string): void;\n removeParentAttribute(name: string): void;\n getFocusedElement(): HTMLElement;\n hasFocus(): boolean;\n}\n\n/**\n * Provides facilities for interacting with the internal DOM of `BusyIndicatorComponent`.\n */\nexport class BusyIndicatorAdapter extends BaseAdapter<IBusyIndicatorComponent> implements IBusyIndicatorAdapter {\n private _surfaceElement: HTMLElement;\n private _titleElement: HTMLElement;\n private _titlePlaceholderElement: Comment;\n private _messageElement: HTMLElement;\n private _messagePlaceholderElement: Comment;\n private _cancelButtonElement: HTMLElement;\n private _cancelButtonPlaceholderElement: Comment;\n private _spinnerElement: HTMLElement;\n private _spinnerPlaceholderElement: Comment;\n private _progressBarContainerElement: HTMLElement;\n private _progressBarContainerPlaceholderElement: Comment;\n private _progressBarElement: ILinearProgressComponent;\n private _backdropElement: IBackdropComponent;\n private _parentElement: HTMLElement | null = null;\n\n constructor(component: IBusyIndicatorComponent) {\n super(component);\n this._surfaceElement = getShadowElement(component, BUSY_INDICATOR_CONSTANTS.selectors.SURFACE);\n this._titleElement = getShadowElement(component, BUSY_INDICATOR_CONSTANTS.selectors.TITLE);\n this._messageElement = getShadowElement(component, BUSY_INDICATOR_CONSTANTS.selectors.MESSAGE);\n this._cancelButtonElement = getShadowElement(component, BUSY_INDICATOR_CONSTANTS.selectors.CANCEL);\n this._spinnerElement = getShadowElement(component, BUSY_INDICATOR_CONSTANTS.selectors.SPINNER);\n this._progressBarContainerElement = getShadowElement(component, BUSY_INDICATOR_CONSTANTS.selectors.PROGRESS_BAR_CONTAINER);\n this._progressBarElement = getShadowElement(component, BUSY_INDICATOR_CONSTANTS.selectors.PROGRESS_BAR) as ILinearProgressComponent;\n this._backdropElement = getShadowElement(component, BUSY_INDICATOR_CONSTANTS.selectors.BACKDROP) as IBackdropComponent;\n }\n\n /**\n * Sets the opacity of the content element.\n * @param opacity The opacity value.\n */\n public setSurfaceOpacity(opacity: number): void {\n this._surfaceElement.style.opacity = opacity.toString();\n }\n\n public setFixed(value: boolean): void {\n toggleAttribute(this._backdropElement, value, BACKDROP_CONSTANTS.attributes.FIXED);\n toggleClass(this._surfaceElement, value, BUSY_INDICATOR_CONSTANTS.classes.SURFACE_FIXED);\n }\n\n /**\n * Sets the content of the title element.\n * @param title The title text.\n */\n public setTitle(title: string): void {\n this._titleElement.innerText = title;\n }\n\n /**\n * Sets the content of the message element.\n * @param message The message text.\n */\n public setMessage(message: string): void {\n this._messageElement.innerText = message;\n }\n\n /**\n * Sets the visibility of the title element by adding or removing it from the DOM.\n * @param visible Whether the title is visible or not.\n */\n public setTitleVisibility(visible: boolean): void {\n this._titlePlaceholderElement = this._toggleElement(visible, BUSY_INDICATOR_CONSTANTS.selectors.TITLE, this._titleElement, this._titlePlaceholderElement);\n }\n\n /**\n * Adds or removes the cancel button from the DOM.\n * @param visible The visibility value.\n */\n public setCancelButtonVisibility(visible: boolean): void {\n this._cancelButtonPlaceholderElement = this._toggleElement(visible, BUSY_INDICATOR_CONSTANTS.selectors.CANCEL, this._cancelButtonElement, this._cancelButtonPlaceholderElement);\n }\n\n /**\n * Adds or removes the message element from the DOM.\n * @param visible The visibility value.\n */\n public setMessageVisibility(visible: boolean): void {\n this._messagePlaceholderElement = this._toggleElement(visible, BUSY_INDICATOR_CONSTANTS.selectors.MESSAGE, this._messageElement, this._messagePlaceholderElement);\n }\n\n /**\n * Adds or removes the spinner element from the DOM.\n * @param visible The visibility value.\n */\n public setSpinnerVisibility(visible: boolean): void {\n this._spinnerPlaceholderElement = this._toggleElement(visible, BUSY_INDICATOR_CONSTANTS.selectors.SPINNER, this._spinnerElement, this._spinnerPlaceholderElement);\n }\n\n /**\n * Adds or removes the progress bar element from the DOM.\n * @param visible The visibility value.\n */\n public setProgressBarVisibility(visible: boolean): void {\n this._progressBarContainerPlaceholderElement = this._toggleElement(\n visible,\n BUSY_INDICATOR_CONSTANTS.selectors.PROGRESS_BAR_CONTAINER,\n this._progressBarContainerElement,\n this._progressBarContainerPlaceholderElement\n );\n }\n\n /**\n * Sets the determinate state of the progress bar component.\n * @param {boolean} determinate The determinate value.\n */\n public setProgressBarDeterminate(determinate: boolean): void {\n this._progressBarElement.determinate = determinate;\n }\n\n /**\n * Sets the progress percent for the progress bar component.\n * @param value The progress percent.\n */\n public setProgressBarProgress(value: number): void {\n this._progressBarElement.progress = value;\n }\n\n /**\n * Sets the progress bar component buffer percent.\n * @param value The buffer percent.\n */\n public setProgressBarBuffer(value: number): void {\n this._progressBarElement.buffer = value;\n }\n\n /**\n * Adds an event listener to the cancel button.\n * @param type The event type.\n * @param listener The event listener.\n */\n public addCancelButtonEventListener(type: string, listener: () => void): void {\n this._cancelButtonElement.addEventListener(type, listener);\n }\n\n /**\n * Removes an event listener from the cancel button.\n * @param type The event type.\n * @param listener The event listener.\n */\n public removeCancelButtonEventListener(type: string, listener: () => void): void {\n this._cancelButtonElement.removeEventListener(type, listener);\n }\n\n /**\n * Sets an attribute on the cancel button.\n * @param name The attribute name.\n * @param value The attribute value.\n */\n public setCancelButtonAttribute(name: string, value: string): void {\n this._cancelButtonElement.setAttribute(name, value);\n }\n\n /**\n * Sets the text displayed in the cancel button element.\n * @param text The text value.\n */\n public setCancelButtonText(text: string): void {\n this._cancelButtonElement.innerText = text;\n }\n\n /**\n * Sets the width of the surface element.\n * @param value The CSS width.\n */\n public setSurfaceWidth(value: string): void {\n this._surfaceElement.style.width = value.toString();\n }\n\n /**\n * Sets focus to the busy indicator component element.\n */\n public captureFocus(): void {\n this._surfaceElement.focus();\n }\n\n /**\n * Removes the busy indicator component from its parent.\n */\n public remove(): void {\n removeElement(this._component);\n }\n\n public hideBackdrop(): void {\n this._backdropElement.fadeOut();\n }\n\n public showBackdrop(): void {\n window.requestAnimationFrame(() => {\n if (this._component.isConnected) {\n this._backdropElement?.fadeIn();\n }\n });\n }\n\n private _toggleElement(isVisible: boolean, selector: string, element: Node, placeholder: Comment): Comment {\n const exists = !!getShadowElement(this._component, selector);\n\n if (!placeholder) {\n placeholder = document.createComment(`(${BUSY_INDICATOR_CONSTANTS.elementName}) ${selector}`);\n }\n\n if (isVisible && !exists) {\n replaceElement(element, placeholder);\n } else if (!isVisible && exists) {\n replaceElement(placeholder, element);\n }\n\n return placeholder;\n }\n\n public setContainerInvisible(): void {\n addClass(BUSY_INDICATOR_CONSTANTS.classes.SURFACE_INVISIBLE, this._surfaceElement);\n }\n\n public setParentAttribute(name: string, value: string): void {\n this._parentElement = this._component.parentElement;\n if (this._parentElement) {\n this._parentElement.setAttribute(name, value);\n }\n }\n\n public removeParentAttribute(name: string): void {\n if (this._parentElement) {\n this._parentElement.removeAttribute(name);\n this._parentElement = null;\n }\n }\n\n public getFocusedElement(): HTMLElement {\n return getActiveElement(this._component.ownerDocument) as HTMLElement;\n }\n\n public hasFocus(): boolean {\n const activeElement = this.getFocusedElement();\n return this._component === activeElement || this._surfaceElement === activeElement || this._surfaceElement.contains(activeElement);\n }\n}\n", "import { ICustomElementFoundation, isDefined } from '@tylertech/forge-core';\nimport { IBusyIndicatorAdapter } from './busy-indicator-adapter';\nimport { BusyIndicatorLayoutDirection, BUSY_INDICATOR_CONSTANTS } from './busy-indicator-constants';\n\nexport interface IBusyIndicatorFoundation extends ICustomElementFoundation {\n titleText: string;\n message: string;\n cancel: boolean;\n spinner: boolean;\n progressBar: boolean;\n progressBarDeterminate: boolean;\n progress: number;\n buffer: number;\n width: number | 'auto';\n direction: BusyIndicatorLayoutDirection;\n manageFocus: boolean;\n fixed: boolean;\n hide(force?: boolean): void;\n}\n\n/**\n * Provides facilities and helper methods for creating a busy indicator component.\n */\nexport class BusyIndicatorFoundation implements IBusyIndicatorFoundation {\n private _titleText: string;\n private _message: string;\n private _canCancel = false;\n private _showSpinner = true;\n private _showProgressBar = false;\n private _progressBarDeterminate = false;\n private _progress = 0;\n private _buffer = 0;\n private _cancelListenerAttached = false;\n private _width: number | 'auto';\n private _previouslyFocusedElement?: HTMLElement;\n private _direction: BusyIndicatorLayoutDirection = 'row';\n private _manageFocus = true;\n private _fixed = true;\n\n constructor(private _adapter: IBusyIndicatorAdapter) {}\n\n public destroy(): void {\n this._adapter.removeCancelButtonEventListener('click', this._onCancelClick);\n }\n\n public show(): void {\n this._applyDirection();\n this._adapter.setParentAttribute(BUSY_INDICATOR_CONSTANTS.attributes.PARENT_OPEN, 'true');\n this._adapter.setHostAttribute('tabindex', '0');\n this._adapter.setSurfaceOpacity(0);\n this._adapter.setFixed(this._fixed);\n\n if (!this._titleText) {\n this._adapter.setTitleVisibility(false);\n }\n\n if (this._message) {\n this._adapter.setMessage(this._message);\n }\n\n this._adapter.setMessageVisibility(!!this._message);\n\n if (!this._canCancel) {\n this._adapter.setCancelButtonVisibility(false);\n } else {\n this._attachCancelClickListener();\n }\n\n if (!this._showSpinner) {\n this._adapter.setSpinnerVisibility(false);\n }\n\n if (!this._showProgressBar) {\n this._adapter.setProgressBarVisibility(false);\n } else {\n this._adapter.setProgressBarDeterminate(this._progressBarDeterminate);\n this._adapter.setProgressBarProgress(this._progress);\n this._adapter.setProgressBarBuffer(this._buffer);\n }\n\n if (this._width) {\n this._adapter.setSurfaceWidth(typeof this._width === 'number' ? `${this._width}px` : this._width);\n }\n\n if ((!this._message || this._message.length === 0) && this._showSpinner && (!this.titleText || this._titleText.length === 0) && !this._canCancel) {\n this._adapter.setContainerInvisible();\n }\n\n this.fadeIn();\n }\n\n /**\n * Removes the element from the DOM.\n * @param {boolean} [force=false] Whether to force removal of the busy indicator or not.\n */\n public hide(force = false): void {\n if (force) {\n if (this._manageFocus) {\n this._releaseFocus();\n }\n this._adapter.remove();\n this._adapter.removeParentAttribute(BUSY_INDICATOR_CONSTANTS.attributes.PARENT_OPEN);\n } else {\n this.fadeOut();\n this._adapter.hideBackdrop();\n setTimeout(() => {\n if (this._manageFocus) {\n this._releaseFocus();\n }\n this._adapter.remove();\n this._adapter.removeParentAttribute(BUSY_INDICATOR_CONSTANTS.attributes.PARENT_OPEN);\n }, BUSY_INDICATOR_CONSTANTS.numbers.TRANSITION_LENGTH);\n }\n }\n\n /** Sets the elements opacity to 0 which triggers the CSS transition to fade out. */\n public fadeOut(): void {\n this._adapter.setSurfaceOpacity(0);\n }\n\n /** Sets the elements opacity to 1 which triggers the CSS transition to fade in after the current delay value. */\n public fadeIn(): void {\n this._adapter.showBackdrop();\n this._adapter.setSurfaceOpacity(1);\n if (this._manageFocus) {\n this._captureFocus();\n }\n }\n\n /** Attaches the click listener to the cancel button. */\n private _attachCancelClickListener(): void {\n if (!this._cancelListenerAttached) {\n this._adapter.addCancelButtonEventListener('click', this._onCancelClick.bind(this));\n this._cancelListenerAttached = true;\n }\n }\n\n /** Handles clicks on the cancel button. */\n private _onCancelClick(): void {\n this._adapter.setCancelButtonAttribute('disabled', 'disabled');\n this._adapter.setCancelButtonText(BUSY_INDICATOR_CONSTANTS.strings.CANCELLING);\n this._adapter.removeCancelButtonEventListener('click', this._onCancelClick);\n this._adapter.emitHostEvent(BUSY_INDICATOR_CONSTANTS.events.CANCEL);\n }\n\n /** Cache currently focused element, set focus to the busy indicator. */\n private _captureFocus(): void {\n this._previouslyFocusedElement = this._adapter.getFocusedElement();\n this._adapter.captureFocus();\n }\n\n /** Gives focus back to the element that had it when the busy indicator was displayed. */\n private _releaseFocus(): void {\n if (this._previouslyFocusedElement && this._adapter.hasFocus()) {\n this._previouslyFocusedElement.focus();\n }\n }\n\n /** The title to be displayed. */\n public set titleText(value: string) {\n if (this._titleText !== value) {\n this._titleText = value;\n this._adapter.setTitle(this._titleText);\n this._adapter.setTitleVisibility(!!this._titleText);\n this._adapter.setHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.TITLE_TEXT, this._titleText);\n }\n }\n public get titleText(): string {\n return this._titleText;\n }\n\n /** The message to be displayed. */\n public set message(value: string) {\n if (this._message !== value) {\n this._message = value;\n this._adapter.setMessage(this._message);\n this._adapter.setMessageVisibility(!!this._message);\n this._adapter.setHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.MESSAGE, this._message);\n }\n }\n public get message(): string {\n return this._message;\n }\n\n /** Controls whether the cancel button is visible or not. */\n public set cancel(canCancel: boolean) {\n if (this._canCancel !== canCancel) {\n this._canCancel = canCancel;\n this._adapter.setCancelButtonVisibility(!!this._canCancel);\n\n if (this._canCancel) {\n this._attachCancelClickListener();\n } else {\n this._adapter.removeCancelButtonEventListener('click', this._onCancelClick);\n }\n\n this._adapter.setHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.CANCEL, this._canCancel.toString());\n }\n }\n public get cancel(): boolean {\n return this._canCancel;\n }\n\n /** Controls whether the progress spinner is visible or not. */\n public set spinner(showSpinner: boolean) {\n if (this._showSpinner !== showSpinner) {\n this._showSpinner = showSpinner;\n this._adapter.setSpinnerVisibility(!!this._showSpinner);\n this._adapter.setHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.SPINNER, '' + this._showSpinner);\n }\n }\n public get spinner(): boolean {\n return this._showSpinner;\n }\n\n /** Controls whether the progres bar is visible or not. */\n public set progressBar(showProgressBar: boolean) {\n if (this._showProgressBar !== showProgressBar) {\n this._showProgressBar = showProgressBar;\n this._adapter.setProgressBarVisibility(!!this._showProgressBar);\n this._adapter.setHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.PROGRESS_BAR, this._showProgressBar.toString());\n }\n }\n public get progressBar(): boolean {\n return this._showProgressBar;\n }\n\n /** Sets the progress bar mode. */\n public set progressBarDeterminate(determinate: boolean) {\n if (this._progressBarDeterminate !== determinate) {\n this._progressBarDeterminate = determinate;\n this._adapter.setProgressBarDeterminate(determinate);\n }\n }\n public get progressBarDeterminate(): boolean {\n return this._progressBarDeterminate;\n }\n\n /** The progress amount of the progress bar. */\n public set progress(value: number) {\n if (this._progress !== value && this._progressBarDeterminate) {\n this._progress = value;\n this._adapter.setProgressBarProgress(value);\n }\n }\n public get progress(): number {\n return this._progress;\n }\n\n /** The buffer amount of the progress bar. */\n public set buffer(value: number) {\n if (this._buffer !== value && this._progressBarDeterminate) {\n this._buffer = value;\n this._adapter.setProgressBarBuffer(value);\n this._adapter.setHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.BUFFER, isDefined(this._buffer) ? this._buffer.toString() : '0');\n }\n }\n public get buffer(): number {\n return this._buffer;\n }\n\n public get direction(): BusyIndicatorLayoutDirection {\n return this._direction;\n }\n public set direction(value: BusyIndicatorLayoutDirection) {\n if (value !== this._direction) {\n this._direction = value;\n this._applyDirection();\n }\n }\n\n private _applyDirection(): void {\n if (this._direction) {\n this._adapter.setHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.DIRECTION, String(this._direction));\n }\n }\n\n /** Sets the width of the busy indicator element. */\n public set width(value: number | 'auto') {\n if (this._width !== value) {\n if (typeof value === 'number' && value < 0) {\n value = 'auto';\n }\n this._width = value;\n this._adapter.setSurfaceWidth(typeof this._width === 'number' ? `${this._width}px` : this._width);\n this._adapter.setHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.WIDTH, this._width.toString());\n }\n }\n public get width(): number | 'auto' {\n return this._width;\n }\n\n public get manageFocus(): boolean {\n return this._manageFocus;\n }\n public set manageFocus(value: boolean) {\n if (this._manageFocus !== value) {\n this._manageFocus = value;\n this._adapter.toggleHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.MANAGE_FOCUS, this._manageFocus);\n }\n }\n\n public get fixed(): boolean {\n return this._fixed;\n }\n public set fixed(value: boolean) {\n if (this._fixed !== value) {\n this._fixed = value;\n this._adapter.setFixed(this._fixed);\n this._adapter.toggleHostAttribute(BUSY_INDICATOR_CONSTANTS.attributes.FIXED, this._fixed);\n }\n }\n}\n", "import { attachShadowTemplate, coerceNumber, CustomElement, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\nimport { BackdropComponent } from '../backdrop';\nimport { ButtonComponent } from '../button';\nimport { CircularProgressComponent } from '../circular-progress';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\nimport { LinearProgressComponent } from '../linear-progress';\nimport { BusyIndicatorAdapter } from './busy-indicator-adapter';\nimport { BUSY_INDICATOR_CONSTANTS, BusyIndicatorLayoutDirection } from './busy-indicator-constants';\nimport { BusyIndicatorFoundation } from './busy-indicator-foundation';\n\nconst template = '<template><forge-backdrop part=\\\"backdrop\\\" fixed></forge-backdrop><div class=\\\"forge-busy-indicator__surface\\\" role=\\\"alert\\\" aria-labelledby=\\\"title\\\" aria-describedby=\\\"message\\\" part=\\\"surface\\\" tabindex=\\\"0\\\"><h1 id=\\\"title\\\" class=\\\"forge-busy-indicator__title\\\" part=\\\"title\\\">Loading</h1><div class=\\\"forge-busy-indicator__message-container\\\" part=\\\"message-container\\\"><forge-circular-progress class=\\\"forge-busy-indicator__spinner\\\" part=\\\"spinner\\\" aria-hidden=\\\"true\\\"></forge-circular-progress><p id=\\\"message\\\" class=\\\"forge-busy-indicator__message\\\" part=\\\"message\\\"></p><forge-button class=\\\"forge-busy-indicator__cancel-button\\\" part=\\\"cancel-button\\\">Cancel</forge-button></div><div class=\\\"forge-busy-indicator__progress-container\\\" part=\\\"progress-bar-container\\\"><forge-linear-progress part=\\\"progress-bar\\\" aria-hidden=\\\"true\\\"></forge-linear-progress></div></div></template>';\nconst styles = ':host{outline:0;contain:content}:host([hidden]){display:none}:host([direction=row]) .forge-busy-indicator__surface{-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);background-color:#fff;background-color:var(--mdc-theme-surface,#fff);border-radius:4px;border-radius:var(--mdc-shape-medium,4px);z-index:8;z-index:var(--forge-z-index-dialog,8);position:absolute;padding:48px;-webkit-box-sizing:border-box;box-sizing:border-box;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);-webkit-transition:opacity 120ms 0s cubic-bezier(0, 0, .2, 1);transition:opacity 120ms 0s cubic-bezier(0, 0, .2, 1);outline:0;opacity:0;min-width:280px;max-width:865px}:host([direction=row]) .forge-busy-indicator__surface .mdc-button__ripple{border-radius:4px;border-radius:var(--mdc-shape-medium,4px)}:host([direction=row]) .forge-busy-indicator__surface--fixed{position:fixed}:host([direction=row]) .forge-busy-indicator__surface--invisible{background:0 0;-webkit-box-shadow:none;box-shadow:none;min-width:auto}:host([direction=row]) .forge-busy-indicator__title{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-headline5-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1.5rem;font-size:var(--mdc-typography-headline5-font-size, 1.5rem);line-height:2rem;line-height:var(--mdc-typography-headline5-line-height, 2rem);font-weight:400;font-weight:var(--mdc-typography-headline5-font-weight,400);letter-spacing:normal;letter-spacing:var(--mdc-typography-headline5-letter-spacing, normal);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-headline5-text-decoration,inherit);text-decoration:var(--mdc-typography-headline5-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-headline5-text-transform,inherit);margin-top:-24px;margin-left:-24px}:host([direction=row]) .forge-busy-indicator__message-container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}:host([direction=row]) .forge-busy-indicator__message{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-body1-font-size, 1rem);line-height:1.5rem;line-height:var(--mdc-typography-body1-line-height, 1.5rem);font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));-webkit-box-flex:1;flex:1 auto;margin-block:0}:host([direction=row]) .forge-busy-indicator__message:nth-child(2){margin-left:16px}:host([direction=row]) .forge-busy-indicator__cancel-button{margin-left:16px}:host([direction=row]) .forge-busy-indicator__progress-container{min-width:244px;margin-top:24px}:host([direction=column]) .forge-busy-indicator__surface{-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);background-color:#fff;background-color:var(--mdc-theme-surface,#fff);border-radius:4px;border-radius:var(--mdc-shape-medium,4px);z-index:8;z-index:var(--forge-z-index-dialog,8);position:absolute;padding:48px;-webkit-box-sizing:border-box;box-sizing:border-box;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);-webkit-transition:opacity 120ms 0s cubic-bezier(0, 0, .2, 1);transition:opacity 120ms 0s cubic-bezier(0, 0, .2, 1);outline:0;opacity:0;min-width:256px;max-width:356px}:host([direction=column]) .forge-busy-indicator__surface .mdc-button__ripple{border-radius:4px;border-radius:var(--mdc-shape-medium,4px)}:host([direction=column]) .forge-busy-indicator__surface--invisible{background:0 0;-webkit-box-shadow:none;box-shadow:none;min-width:auto}:host([direction=column]) .forge-busy-indicator__title{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-headline5-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1.5rem;font-size:var(--mdc-typography-headline5-font-size, 1.5rem);line-height:2rem;line-height:var(--mdc-typography-headline5-line-height, 2rem);font-weight:400;font-weight:var(--mdc-typography-headline5-font-weight,400);letter-spacing:normal;letter-spacing:var(--mdc-typography-headline5-letter-spacing, normal);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-headline5-text-decoration,inherit);text-decoration:var(--mdc-typography-headline5-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-headline5-text-transform,inherit);margin-top:-24px;margin-left:-24px}:host([direction=column]) .forge-busy-indicator__message-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;display:-webkit-box;display:flex;place-items:center}:host([direction=column]) .forge-busy-indicator__message{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-body1-font-size, 1rem);line-height:1.5rem;line-height:var(--mdc-typography-body1-line-height, 1.5rem);font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));-webkit-box-flex:1;flex:1 auto;text-align:center;margin:0}:host([direction=column]) .forge-busy-indicator__cancel-button{margin-top:16px;margin-bottom:-36px;margin-right:0;margin-left:0}:host([direction=column]) .forge-busy-indicator__progress-container{min-width:244px;margin-top:24px}:host([direction=column]) .forge-busy-indicator__spinner{margin-bottom:32px}';\n\nexport interface IBusyIndicatorComponent extends IBaseComponent {\n titleText: string;\n message: string;\n cancel: boolean;\n spinner: boolean;\n progressBar: boolean;\n progressBarDeterminate: boolean;\n progress: number;\n buffer: number;\n width: number | 'auto';\n direction: BusyIndicatorLayoutDirection;\n manageFocus: boolean;\n fixed: boolean;\n hide(force?: boolean): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-busy-indicator': IBusyIndicatorComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-busy-indicator-cancel': CustomEvent<void>;\n }\n}\n\n/**\n * A web component that renders a busy indicator covering its parent container.\n * \n * @tag forge-busy-indicator\n */\n@CustomElement({\n name: BUSY_INDICATOR_CONSTANTS.elementName,\n dependencies: [BackdropComponent, CircularProgressComponent, LinearProgressComponent, ButtonComponent]\n})\nexport class BusyIndicatorComponent extends BaseComponent implements IBusyIndicatorComponent {\n public static get observedAttributes(): string[] {\n return [\n BUSY_INDICATOR_CONSTANTS.attributes.TITLE_TEXT,\n BUSY_INDICATOR_CONSTANTS.attributes.MESSAGE,\n BUSY_INDICATOR_CONSTANTS.attributes.CANCEL,\n BUSY_INDICATOR_CONSTANTS.attributes.MINIMUM_VISIBLE_LIFETIME,\n BUSY_INDICATOR_CONSTANTS.attributes.DIRECTION,\n BUSY_INDICATOR_CONSTANTS.attributes.MANAGE_FOCUS,\n BUSY_INDICATOR_CONSTANTS.attributes.FIXED\n ];\n }\n\n private _foundation: BusyIndicatorFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new BusyIndicatorFoundation(new BusyIndicatorAdapter(this));\n }\n\n public initializedCallback(): void {\n this._foundation.show();\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 BUSY_INDICATOR_CONSTANTS.attributes.TITLE_TEXT:\n this.titleText = newValue;\n break;\n case BUSY_INDICATOR_CONSTANTS.attributes.MESSAGE:\n this.message = newValue;\n break;\n case BUSY_INDICATOR_CONSTANTS.attributes.CANCEL:\n this.cancel = newValue === 'true';\n break;\n case BUSY_INDICATOR_CONSTANTS.attributes.MANAGE_FOCUS:\n this.manageFocus = coerceBoolean(newValue);\n break;\n case BUSY_INDICATOR_CONSTANTS.attributes.FIXED:\n this.fixed = coerceBoolean(newValue);\n break;\n }\n }\n\n /** The title to be displayed. */\n @FoundationProperty()\n public declare titleText: string;\n\n /** The message to be displayed. */\n @FoundationProperty()\n public declare message: string;\n\n /** Controls whether the cancel button is visible or not. */\n @FoundationProperty()\n public declare cancel: boolean;\n\n /** Controls whether the progress spinner is visible or not. */\n @FoundationProperty()\n public declare spinner: boolean;\n\n /** Controls whether the progres bar is visible or not. */\n @FoundationProperty()\n public declare progressBar: boolean;\n\n /** Sets the progress bar determinate state. */\n @FoundationProperty()\n public declare progressBarDeterminate: boolean;\n\n /** The progress amount of the progress bar. */\n @FoundationProperty()\n public declare progress: number;\n\n /** The buffer amount of the progress bar. */\n @FoundationProperty()\n public declare buffer: number;\n\n /** Sets the width of the busy indicator element. */\n @FoundationProperty()\n public declare width: number | 'auto';\n\n /** The layout direction for alternative designs. */\n @FoundationProperty()\n public declare direction: BusyIndicatorLayoutDirection;\n\n /** Controls whether the component will manage capturing and relasing focus when opened/closed. */\n @FoundationProperty()\n public declare manageFocus: boolean;\n\n /**\n * Controls the `position` of the backdrop and surface element between `fixed` and `absolute` positioning. Default is `true`.\n * \n * Note: use this property when you want to render the busy indicator within a specific element where it doesn't fill the\n * full viewport heigth/width to only cover the parent element bounds.\n */\n @FoundationProperty()\n public declare fixed: boolean;\n\n /**\n * Removes the element from the DOM.\n * @param {boolean} [force=false] Whether to force removal of the busy indicator or not.\n */\n public hide(force = true): void {\n this._foundation.hide(force);\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { BusyIndicatorComponent } from './busy-indicator';\n\nexport * from './busy-indicator-adapter';\nexport * from './busy-indicator-constants';\nexport * from './busy-indicator-foundation';\nexport * from './busy-indicator';\n\nexport function defineBusyIndicatorComponent(): void {\n defineCustomElement(BusyIndicatorComponent);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["elementName", "COMPONENT_NAME_PREFIX", "classes", "selectors", "LINEAR_PROGRESS_CONSTANTS", "BACKDROP_CONSTANTS", "events", "strings", "attributes", "numbers", "BUSY_INDICATOR_CONSTANTS", "BusyIndicatorAdapter", "BaseAdapter", "component", "getShadowElement", "BUSY_INDICATOR_CONSTANTS", "opacity", "value", "toggleAttribute", "BACKDROP_CONSTANTS", "toggleClass", "title", "message", "visible", "determinate", "type", "listener", "name", "text", "removeElement", "_a", "isVisible", "selector", "element", "placeholder", "exists", "replaceElement", "addClass", "getActiveElement", "activeElement", "BusyIndicatorFoundation", "_adapter", "BUSY_INDICATOR_CONSTANTS", "force", "value", "canCancel", "showSpinner", "showProgressBar", "determinate", "isDefined", "template", "styles", "BusyIndicatorComponent", "BaseComponent", "attachShadowTemplate", "BusyIndicatorFoundation", "BusyIndicatorAdapter", "BUSY_INDICATOR_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "force", "__decorateClass", "FoundationProperty", "CustomElement", "BackdropComponent", "CircularProgressComponent", "LinearProgressComponent", "ButtonComponent", "defineBusyIndicatorComponent", "defineCustomElement", "BusyIndicatorComponent"]
|
|
7
7
|
}
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{f as t}from"./chunk.
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{f as t}from"./chunk.VRSPT7WX.js";var o=500;function c(s=class{}){class r extends s{constructor(){super(...arguments);this._longpressStartListener=this._onLongpressStart.bind(this);this._longpressEndListener=this._onLongpressEnd.bind(this);this._longpressContextMenuListener=this._onLongpressContextMenu.bind(this);this._longpressClickPrevent=this._onLongpressClickPrevent.bind(this);this._longpressDelay=o}_startLongpressListener(e){let n=t?"pointerdown":"touchstart";e.addEventListener(n,this._longpressStartListener)}_stopLongpressListener(e){let n=t?"pointerdown":"touchstart";e.removeEventListener(n,this._longpressStartListener),this._unlistenLongpressEnd(e)}_onLongpressStart(e){e.target.setPointerCapture(e.pointerId),this._listenLongpressEnd(e.target),this._longpressTimeout=window.setTimeout(()=>{this._onLongpress(),t||navigator.vibrate(1),e.target.addEventListener("click",this._longpressClickPrevent,{capture:!0,once:!0})},this._longpressDelay)}_onLongpressClickPrevent(e){e.stopPropagation()}_onLongpressEnd(e){this._clearTimeout(),this._unlistenLongpressEnd(e.target)}_onLongpressContextMenu(e){this._clearTimeout(),e.target.removeEventListener("click",this._longpressClickPrevent,{capture:!0}),this._unlistenLongpressEnd(e.target)}_listenLongpressEnd(e){t?(e.addEventListener("pointerup",this._longpressEndListener),e.addEventListener("pointercancel",this._longpressEndListener),e.addEventListener("contextmenu",this._longpressContextMenuListener)):e.addEventListener("touchend",this._longpressEndListener)}_unlistenLongpressEnd(e){t?(e.removeEventListener("pointerup",this._longpressEndListener),e.removeEventListener("pointercancel",this._longpressEndListener),e.removeEventListener("contextmenu",this._longpressContextMenuListener)):e.removeEventListener("touchend",this._longpressEndListener)}_clearTimeout(){window.clearTimeout(this._longpressTimeout),this._longpressTimeout=void 0}}return r}export{c as a};
|
|
7
|
+
//# sourceMappingURL=chunk.ZA7JY3AY.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import{a as E,d as v}from"./chunk.YNCTSMT6.js";import{c as M}from"./chunk.GBAVJILM.js";import{a as g,d as T}from"./chunk.GIENHEMN.js";import{p as C}from"./chunk.RLQB7224.js";import{a as A,d as N}from"./chunk.T7NWP7DB.js";import{m as O}from"./chunk.J2Y5KPON.js";import{a as l}from"./chunk.NVUMRW44.js";import{a as h}from"./chunk.OLFOVKQG.js";import{a as I,b as B}from"./chunk.VRSPT7WX.js";import{a as f,d as _,g as p,k as b}from"./chunk.LNTTU2GL.js";import{r as d}from"./chunk.L4QSPQDE.js";import{a as u,d as r}from"./chunk.M3QDAYD2.js";var H=`${B}app-bar-help-button`,x={ICON:"icon"},P={ICON:"help"},y=["aria-label","aria-labelledby"],e={elementName:H,attributes:x,forwardedAttributes:y,defaults:P};var s=class extends h{constructor(t){super(t)}initialize(){this._menuElement=p(this._component,E.elementName),this._iconButtonElement=p(this._component,g.elementName),this._iconElement=p(this._component,A.elementName);let t=this._iconButtonElement.getAttribute("aria-labelledby");this._forwardObserver=O(this._component,e.forwardedAttributes,(m,n)=>{m==="aria-labelledby"&&!n&&(n=t),d(this._iconButtonElement,!!n,m,n!=null?n:void 0)})}destroy(){var t;(t=this._forwardObserver)==null||t.disconnect(),this._forwardObserver=void 0}setMenuOptions(t){this._menuElement.options=t}setIcon(t){this._iconElement.name=t}};var a=class{constructor(o){this._adapter=o;this._options=[];this._icon=e.defaults.ICON;this._isInitialized=!1}initialize(){this._adapter.initialize(),this._adapter.setMenuOptions(this._options),this._adapter.setIcon(this._icon),this._isInitialized=!0}disconnect(){this._adapter.destroy(),this._isInitialized=!1}get options(){return this._options}set options(o){this._options=o.map(t=>u({},t)),this._isInitialized&&this._adapter.setMenuOptions(o)}get icon(){return this._icon}set icon(o){this._icon!==o&&(this._icon=o||e.defaults.ICON,this._isInitialized&&this._adapter.setIcon(o),this._adapter.setHostAttribute(e.attributes.ICON,this._icon))}};var S='<template><forge-menu placement="bottom-end"><forge-icon-button><forge-icon name="help"></forge-icon></forge-icon-button><forge-tooltip type="label" placement="bottom">Help</forge-tooltip></forge-menu></template>',i=class extends b{constructor(){super();N.define(C),this._foundation=new a(new s(this))}static get observedAttributes(){return[e.attributes.ICON]}initializedCallback(){_(this,S)}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,m,n){switch(t){case e.attributes.ICON:this.icon=n;break}}};r([l()],i.prototype,"options",2),r([l()],i.prototype,"icon",2),i=r([I({name:e.elementName,dependencies:[v,T,M]})],i);function dt(){f(i)}export{e as a,s as b,a as c,i as d,dt as e};
|
|
7
|
+
//# sourceMappingURL=chunk.ZG6YF2HI.js.map
|