@tylertech/forge 3.0.0-next.11 → 3.0.0-next.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -6
- package/custom-elements.json +63803 -41782
- package/dist/esm/accordion/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 +7 -0
- package/dist/esm/button-area/index.js.map +7 -0
- 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.SMGXXR6K.js → chunk.2MSL7CYM.js} +2 -2
- package/dist/esm/chunks/chunk.2ZU6LWHE.js +7 -0
- package/dist/esm/chunks/chunk.2ZU6LWHE.js.map +7 -0
- package/dist/esm/chunks/{chunk.COVTBIQQ.js → chunk.36C6SIPW.js} +2 -2
- package/dist/esm/chunks/{chunk.COVTBIQQ.js.map → chunk.36C6SIPW.js.map} +2 -2
- package/dist/esm/chunks/chunk.36F2GVWS.js +7 -0
- package/dist/esm/chunks/chunk.36F2GVWS.js.map +7 -0
- package/dist/esm/chunks/{chunk.M56LSSPW.js → chunk.3HCYRDRI.js} +2 -2
- package/dist/esm/chunks/{chunk.4ZKX3SO5.js → chunk.3R4BUIQP.js} +2 -2
- package/dist/esm/chunks/{chunk.YWNCJ7XP.js → chunk.3ZPSN2QG.js} +2 -2
- package/dist/esm/chunks/chunk.4SPEX2GJ.js +7 -0
- package/dist/esm/chunks/chunk.4SPEX2GJ.js.map +7 -0
- package/dist/esm/chunks/chunk.4YFJVHXN.js +7 -0
- package/dist/esm/chunks/chunk.4YFJVHXN.js.map +7 -0
- package/dist/esm/chunks/chunk.5A2PA7TL.js +7 -0
- package/dist/esm/chunks/chunk.5A2PA7TL.js.map +7 -0
- package/dist/esm/chunks/chunk.5CSXPRL3.js +7 -0
- package/dist/esm/chunks/chunk.5CSXPRL3.js.map +7 -0
- package/dist/esm/chunks/chunk.5LVZVQXB.js +7 -0
- package/dist/esm/chunks/{chunk.MGLL67VO.js.map → chunk.5LVZVQXB.js.map} +2 -2
- package/dist/esm/chunks/{chunk.LFODKHUO.js → chunk.5N4N6DL6.js} +2 -2
- package/dist/esm/chunks/chunk.5PG6WIIX.js +7 -0
- package/dist/esm/chunks/chunk.5PG6WIIX.js.map +7 -0
- package/dist/esm/chunks/{chunk.JIKSKUDW.js → chunk.5RM65QPN.js} +2 -2
- package/dist/esm/chunks/{chunk.JIKSKUDW.js.map → chunk.5RM65QPN.js.map} +3 -3
- package/dist/esm/chunks/chunk.5WMYF27O.js +7 -0
- package/dist/esm/chunks/chunk.5WMYF27O.js.map +7 -0
- package/dist/esm/chunks/{chunk.QOJESHEV.js → chunk.675V42JS.js} +2 -2
- package/dist/esm/chunks/chunk.6M27ERWW.js +12 -0
- package/dist/esm/chunks/chunk.6M27ERWW.js.map +7 -0
- package/dist/esm/chunks/chunk.6NTYTHAL.js +7 -0
- package/dist/esm/chunks/chunk.6NTYTHAL.js.map +7 -0
- package/dist/esm/chunks/chunk.6ZNBFKNP.js +7 -0
- package/dist/esm/chunks/chunk.6ZNBFKNP.js.map +7 -0
- package/dist/esm/chunks/{chunk.7TMLILLW.js → chunk.72JVXGHF.js} +2 -2
- package/dist/esm/chunks/{chunk.7TMLILLW.js.map → chunk.72JVXGHF.js.map} +1 -1
- package/dist/esm/chunks/chunk.7V4BDSA5.js +7 -0
- package/dist/esm/chunks/chunk.7V4BDSA5.js.map +7 -0
- package/dist/esm/chunks/chunk.7VMJLHQY.js +7 -0
- package/dist/esm/chunks/chunk.7VMJLHQY.js.map +7 -0
- package/dist/esm/chunks/chunk.7ZROQ6D3.js +7 -0
- package/dist/esm/chunks/chunk.7ZROQ6D3.js.map +7 -0
- package/dist/esm/chunks/{chunk.DG4ZM3AW.js → chunk.AMLT6XJP.js} +2 -2
- package/dist/esm/chunks/chunk.AMZZKEAE.js +7 -0
- package/dist/esm/chunks/chunk.AMZZKEAE.js.map +7 -0
- package/dist/esm/chunks/{chunk.MTKSU2BV.js → chunk.APPY5AYL.js} +2 -2
- package/dist/esm/chunks/{chunk.4YFVG4KP.js → chunk.ARQMMZJL.js} +2 -2
- package/dist/esm/chunks/chunk.AUBOJZQ7.js +7 -0
- package/dist/esm/chunks/chunk.AUBOJZQ7.js.map +7 -0
- package/dist/esm/chunks/chunk.AUCBR6CC.js +7 -0
- package/dist/esm/chunks/{chunk.SFCGOCQK.js.map → chunk.AUCBR6CC.js.map} +2 -2
- package/dist/esm/chunks/{chunk.5MZ5SGMO.js → chunk.BB4UF5RX.js} +2 -2
- package/dist/esm/chunks/chunk.BBCZNGT3.js +7 -0
- package/dist/esm/chunks/chunk.BBCZNGT3.js.map +7 -0
- package/dist/esm/chunks/chunk.BQ2X5SBP.js +7 -0
- package/dist/esm/chunks/{chunk.TYLOAD7R.js.map → chunk.BQ2X5SBP.js.map} +2 -2
- package/dist/esm/chunks/chunk.BTXY3XMJ.js +7 -0
- package/dist/esm/chunks/chunk.BTXY3XMJ.js.map +7 -0
- package/dist/esm/chunks/{chunk.Q7Z3SJ5F.js → chunk.DTLZOIUQ.js} +2 -2
- package/dist/esm/chunks/chunk.EJX6RI4I.js +7 -0
- package/dist/esm/chunks/chunk.EJX6RI4I.js.map +7 -0
- package/dist/esm/chunks/chunk.EWK76SPH.js +7 -0
- package/dist/esm/chunks/chunk.EWK76SPH.js.map +7 -0
- package/dist/esm/chunks/chunk.FAXYCG55.js +7 -0
- package/dist/esm/chunks/chunk.FAXYCG55.js.map +7 -0
- package/dist/esm/chunks/chunk.FFHSUJFM.js +7 -0
- package/dist/esm/chunks/chunk.FFHSUJFM.js.map +7 -0
- package/dist/esm/chunks/{chunk.OWCYRSI3.js → chunk.FLWNOP42.js} +2 -2
- package/dist/esm/chunks/{chunk.S3JMOOWC.js → chunk.FXIWCHLW.js} +2 -2
- package/dist/esm/chunks/chunk.FYVDTZLF.js +7 -0
- package/dist/esm/chunks/{chunk.CDGZYUQS.js.map → chunk.FYVDTZLF.js.map} +2 -2
- package/dist/esm/chunks/chunk.G73KL7P2.js +7 -0
- package/dist/esm/chunks/{chunk.7DB3XVPI.js.map → chunk.G73KL7P2.js.map} +3 -3
- package/dist/esm/chunks/chunk.G7SMCLHQ.js +7 -0
- package/dist/esm/chunks/chunk.G7SMCLHQ.js.map +7 -0
- package/dist/esm/chunks/chunk.GHR7T6U2.js +7 -0
- package/dist/esm/chunks/chunk.GHR7T6U2.js.map +7 -0
- package/dist/esm/chunks/{chunk.CWTV3TB3.js → chunk.GNDKQPDV.js} +2 -2
- package/dist/esm/chunks/{chunk.ULY4H76N.js → chunk.HAKF2T2D.js} +2 -2
- package/dist/esm/chunks/chunk.HDG2GHKC.js +7 -0
- package/dist/esm/chunks/{chunk.SBYX7VZ4.js.map → chunk.HDG2GHKC.js.map} +2 -2
- package/dist/esm/chunks/{chunk.WPG7NNQX.js → chunk.HOLCNJXC.js} +2 -2
- package/dist/esm/chunks/{chunk.W4247Q2P.js → chunk.HRRJIFC5.js} +2 -2
- package/dist/esm/chunks/chunk.HSI7B43D.js +7 -0
- package/dist/esm/chunks/chunk.HSI7B43D.js.map +7 -0
- package/dist/esm/chunks/chunk.IAWYYNUU.js +7 -0
- package/dist/esm/chunks/chunk.IAWYYNUU.js.map +7 -0
- package/dist/esm/chunks/{chunk.SU4FU7GK.js → chunk.IDMDBMBR.js} +2 -2
- package/dist/esm/chunks/{chunk.FCATJM34.js → chunk.IHAHJPMB.js} +2 -2
- package/dist/esm/chunks/chunk.IISWKFCX.js +7 -0
- package/dist/esm/chunks/chunk.IISWKFCX.js.map +7 -0
- package/dist/esm/chunks/{chunk.XKI46BH2.js → chunk.IMLJD35R.js} +2 -2
- package/dist/esm/chunks/{chunk.624UKZFU.js → chunk.IT7XPDAV.js} +2 -2
- package/dist/esm/chunks/{chunk.MVTBJPO2.js → chunk.JAWV5Y5T.js} +1 -1
- package/dist/esm/chunks/{chunk.MVTBJPO2.js.map → chunk.JAWV5Y5T.js.map} +2 -2
- package/dist/esm/chunks/{chunk.JLLHDJSO.js → chunk.JVLJH6PR.js} +2 -2
- package/dist/esm/chunks/chunk.KPJWP77R.js +7 -0
- package/dist/esm/chunks/{chunk.2EWV2XBP.js → chunk.KV5IKYG2.js} +2 -2
- package/dist/esm/chunks/chunk.KV67JXOC.js +7 -0
- package/dist/esm/chunks/{chunk.B4T3R53C.js.map → chunk.KV67JXOC.js.map} +2 -2
- package/dist/esm/chunks/{chunk.A62DE5PD.js → chunk.LCR4YH3O.js} +2 -2
- package/dist/esm/chunks/{chunk.FWFOOQMA.js → chunk.LOG6GQOK.js} +2 -2
- package/dist/esm/chunks/chunk.LUIKMPQR.js +7 -0
- package/dist/esm/chunks/chunk.LUIKMPQR.js.map +7 -0
- package/dist/esm/chunks/chunk.LUNKNRRH.js +7 -0
- package/dist/esm/chunks/chunk.LUNKNRRH.js.map +7 -0
- package/dist/esm/chunks/chunk.MKJCHUJH.js +7 -0
- package/dist/esm/chunks/chunk.MKJCHUJH.js.map +7 -0
- package/dist/esm/chunks/chunk.MWYQRG5W.js +7 -0
- package/dist/esm/chunks/{chunk.YX7WLO5Y.js.map → chunk.MWYQRG5W.js.map} +2 -2
- package/dist/esm/chunks/{chunk.YLG6ZC5K.js → chunk.NUMKGUCK.js} +2 -2
- package/dist/esm/chunks/{chunk.XI3MJSIS.js → chunk.O6V3YNMO.js} +2 -2
- package/dist/esm/chunks/chunk.OWZREAT6.js +15 -0
- package/dist/esm/chunks/chunk.OWZREAT6.js.map +7 -0
- package/dist/esm/chunks/chunk.PMYQY3D3.js +7 -0
- package/dist/esm/chunks/chunk.PMYQY3D3.js.map +7 -0
- package/dist/esm/chunks/chunk.PYR2OCCH.js +7 -0
- package/dist/esm/chunks/{chunk.5565ZSTH.js.map → chunk.PYR2OCCH.js.map} +2 -2
- package/dist/esm/chunks/chunk.QJCNMYD3.js +7 -0
- package/dist/esm/chunks/{chunk.SJJS4LYN.js.map → chunk.QJCNMYD3.js.map} +2 -2
- package/dist/esm/chunks/{chunk.TK5I4RHF.js → chunk.QLCVRJ3Q.js} +2 -2
- package/dist/esm/chunks/chunk.QLOYOZN3.js +7 -0
- package/dist/esm/chunks/{chunk.F5SY2D4B.js.map → chunk.QLOYOZN3.js.map} +3 -3
- package/dist/esm/chunks/chunk.QN5T26HH.js +7 -0
- package/dist/esm/chunks/chunk.QN5T26HH.js.map +7 -0
- package/dist/esm/chunks/chunk.QQRPV4RN.js +7 -0
- package/dist/esm/chunks/{chunk.PEBT47AU.js.map → chunk.QQRPV4RN.js.map} +2 -2
- package/dist/esm/chunks/chunk.R6LQBI42.js +177 -0
- package/dist/esm/chunks/chunk.R6LQBI42.js.map +7 -0
- package/dist/esm/chunks/chunk.RES7WDKH.js +7 -0
- package/dist/esm/chunks/chunk.RES7WDKH.js.map +7 -0
- package/dist/esm/chunks/chunk.RP674CRC.js +7 -0
- package/dist/esm/chunks/chunk.S5QL4SPT.js +7 -0
- package/dist/esm/chunks/chunk.S5QL4SPT.js.map +7 -0
- package/dist/esm/chunks/chunk.SIRXAA3O.js +7 -0
- package/dist/esm/chunks/chunk.SIRXAA3O.js.map +7 -0
- package/dist/esm/chunks/{chunk.LTT67HTW.js → chunk.SLJ6HDK7.js} +2 -2
- package/dist/esm/chunks/chunk.STB2FEUA.js +7 -0
- package/dist/esm/chunks/chunk.STB2FEUA.js.map +7 -0
- package/dist/esm/chunks/chunk.TBGMJQYJ.js +7 -0
- package/dist/esm/chunks/chunk.TBGMJQYJ.js.map +7 -0
- package/dist/esm/chunks/{chunk.6OW6Q3EW.js → chunk.TU74SREL.js} +2 -2
- package/dist/esm/chunks/{chunk.EK24Y56W.js → chunk.URJQNB3S.js} +2 -2
- package/dist/esm/chunks/{chunk.AEKOP3XT.js → chunk.V24M62MC.js} +2 -2
- package/dist/esm/chunks/{chunk.AEKOP3XT.js.map → chunk.V24M62MC.js.map} +2 -2
- package/dist/esm/chunks/chunk.VFKHRAWD.js +7 -0
- package/dist/esm/chunks/chunk.VFKHRAWD.js.map +7 -0
- package/dist/esm/chunks/chunk.VO6YJCEU.js +7 -0
- package/dist/esm/chunks/chunk.VO6YJCEU.js.map +7 -0
- package/dist/esm/chunks/{chunk.K3KAM2PL.js → chunk.W2LN45WY.js} +2 -2
- package/dist/esm/chunks/{chunk.MHBBMC6O.js → chunk.WMVYRDUJ.js} +2 -2
- package/dist/esm/chunks/{chunk.MHBBMC6O.js.map → chunk.WMVYRDUJ.js.map} +2 -2
- package/dist/esm/chunks/chunk.WY3E33CW.js +7 -0
- package/dist/esm/chunks/chunk.WY3E33CW.js.map +7 -0
- package/dist/esm/chunks/{chunk.Z6FCL3G3.js → chunk.XEFWZKHQ.js} +2 -2
- package/dist/esm/chunks/{chunk.NR3MLTXF.js → chunk.XLL7L2UB.js} +2 -2
- package/dist/esm/chunks/chunk.XNFS7YIB.js +7 -0
- package/dist/esm/chunks/chunk.XNFS7YIB.js.map +7 -0
- package/dist/esm/chunks/chunk.XYAZVLPR.js +7 -0
- package/dist/esm/chunks/chunk.YA3RDJCV.js +7 -0
- package/dist/esm/chunks/chunk.YA3RDJCV.js.map +7 -0
- package/dist/esm/chunks/{chunk.2QHD3DCR.js → chunk.YAERJVPL.js} +2 -2
- package/dist/esm/chunks/chunk.YBZK6LJZ.js +7 -0
- package/dist/esm/chunks/chunk.YKIBREM5.js +7 -0
- package/dist/esm/chunks/chunk.YKIBREM5.js.map +7 -0
- package/dist/esm/chunks/chunk.YWAUEUAH.js +7 -0
- package/dist/esm/chunks/chunk.YWAUEUAH.js.map +7 -0
- package/dist/esm/chunks/chunk.Z5RROENA.js +7 -0
- package/dist/esm/chunks/{chunk.6OUJSOJY.js.map → chunk.Z5RROENA.js.map} +3 -3
- package/dist/esm/chunks/{chunk.ZJC2DSNM.js → chunk.Z5ZLKM7W.js} +2 -2
- package/dist/esm/chunks/chunk.ZGRQDDHO.js +7 -0
- package/dist/esm/chunks/{chunk.BY25RT52.js.map → chunk.ZGRQDDHO.js.map} +2 -2
- package/dist/esm/chunks/{chunk.VSQOTSAO.js → chunk.ZKM667OT.js} +2 -2
- package/dist/esm/chunks/{chunk.VSQOTSAO.js.map → chunk.ZKM667OT.js.map} +2 -2
- package/dist/esm/chunks/chunk.ZRSDTCSD.js +7 -0
- package/dist/esm/chunks/chunk.ZRSDTCSD.js.map +7 -0
- package/dist/esm/chunks/chunk.ZSZFWZAI.js +7 -0
- package/dist/esm/chunks/chunk.ZSZFWZAI.js.map +7 -0
- package/dist/esm/circular-progress/index.js +1 -1
- package/dist/esm/color-picker/index.js +1 -1
- package/dist/esm/core/base/index.js +1 -1
- package/dist/esm/core/index.js +1 -1
- package/dist/esm/core/utils/index.js +1 -1
- package/dist/esm/date-picker/index.js +1 -1
- package/dist/esm/date-range-picker/index.js +1 -1
- package/dist/esm/dialog/index.js +1 -1
- package/dist/esm/divider/index.js +1 -1
- package/dist/esm/drawer/base/index.js +1 -1
- package/dist/esm/drawer/drawer/index.js +1 -1
- package/dist/esm/drawer/index.js +1 -1
- package/dist/esm/drawer/mini-drawer/index.js +1 -1
- package/dist/esm/drawer/modal-drawer/index.js +1 -1
- package/dist/esm/expansion-panel/index.js +1 -1
- package/dist/esm/file-picker/index.js +1 -1
- package/dist/esm/floating-action-button/index.js +1 -1
- package/dist/esm/floating-label/index.js +1 -1
- package/dist/esm/focus-indicator/index.js +1 -1
- package/dist/esm/icon/index.js +1 -1
- package/dist/esm/icon-button/index.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/inline-message/index.js +1 -1
- package/dist/esm/keyboard-shortcut/index.js +1 -1
- package/dist/esm/label/index.js +7 -0
- package/dist/esm/label/index.js.map +7 -0
- package/dist/esm/label-value/index.js +1 -1
- package/dist/esm/linear-progress/index.js +1 -1
- package/dist/esm/list/index.js +1 -1
- package/dist/esm/list/list/index.js +1 -1
- package/dist/esm/list/list-item/index.js +1 -1
- package/dist/esm/list-dropdown/index.js +1 -1
- package/dist/esm/menu/index.js +1 -1
- package/dist/esm/open-icon/index.js +1 -1
- package/dist/esm/page-state/index.js +1 -1
- package/dist/esm/paginator/index.js +1 -1
- package/dist/esm/popup/index.js +1 -1
- package/dist/esm/product-icon/index.js +1 -1
- package/dist/esm/profile-card/index.js +1 -1
- package/dist/esm/quantity-field/index.js +1 -1
- package/dist/esm/radio/index.js +1 -1
- package/dist/esm/ripple/index.js +1 -1
- package/dist/esm/scaffold/index.js +1 -1
- package/dist/esm/select/core/index.js +1 -1
- package/dist/esm/select/index.js +1 -1
- package/dist/esm/select/option/index.js +1 -1
- package/dist/esm/select/option-group/index.js +1 -1
- package/dist/esm/select/select/index.js +1 -1
- package/dist/esm/select/select-dropdown/index.js +1 -1
- package/dist/esm/skeleton/index.js +1 -1
- package/dist/esm/slider/index.js +1 -1
- package/dist/esm/split-button/index.js +7 -0
- package/dist/esm/split-button/index.js.map +7 -0
- package/dist/esm/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view-panel/index.js +1 -1
- package/dist/esm/stack/index.js +1 -1
- package/dist/esm/state-layer/index.js +1 -1
- package/dist/esm/stepper/index.js +1 -1
- package/dist/esm/stepper/step/index.js +1 -1
- package/dist/esm/stepper/stepper/index.js +1 -1
- package/dist/esm/switch/index.js +1 -1
- package/dist/esm/table/index.js +1 -1
- package/dist/esm/tabs/index.js +1 -1
- package/dist/esm/tabs/tab/index.js +1 -1
- package/dist/esm/tabs/tab-bar/index.js +1 -1
- package/dist/esm/text-field/index.js +1 -1
- package/dist/esm/time-picker/index.js +1 -1
- package/dist/esm/toast/index.js +1 -1
- package/dist/esm/toolbar/index.js +1 -1
- package/dist/esm/tooltip/index.js +1 -1
- package/dist/esm/view-switcher/index.js +1 -1
- package/dist/esm/view-switcher/view/index.js +1 -1
- package/dist/forge-dark.css +1 -1
- package/dist/forge.css +1 -1
- package/dist/table/forge-table.css +1 -1
- package/dist/theme/forge-theme.css +1 -1
- package/dist/typography/forge-typography-legacy.css +1 -1
- package/dist/typography/forge-typography.css +1 -1
- package/esm/app-bar/app-bar.js +1 -1
- package/esm/app-bar/help-button/app-bar-help-button.js +1 -1
- package/esm/app-bar/menu-button/app-bar-menu-button.js +1 -1
- package/esm/app-bar/notification-button/app-bar-notification-button.js +1 -1
- package/esm/app-bar/profile-button/app-bar-profile-button-constants.js +1 -1
- package/esm/app-bar/profile-button/app-bar-profile-button.js +1 -1
- package/esm/autocomplete/autocomplete-constants.d.ts +3 -0
- package/esm/autocomplete/autocomplete-foundation.d.ts +3 -1
- package/esm/autocomplete/autocomplete-foundation.js +16 -2
- package/esm/autocomplete/autocomplete.d.ts +7 -1
- package/esm/autocomplete/autocomplete.js +7 -0
- package/esm/banner/banner-constants.js +1 -1
- package/esm/banner/banner.js +2 -2
- package/esm/bottom-sheet/bottom-sheet.js +1 -1
- package/esm/busy-indicator/busy-indicator.js +2 -2
- package/esm/button/base/base-button-adapter.d.ts +72 -0
- package/esm/button/base/base-button-adapter.js +250 -0
- package/esm/button/base/base-button-constants.d.ts +41 -0
- package/esm/button/base/base-button-constants.js +32 -0
- package/esm/button/base/base-button-foundation.d.ts +75 -0
- package/esm/button/base/base-button-foundation.js +234 -0
- package/esm/button/base/base-button.d.ts +51 -0
- package/esm/button/base/base-button.js +106 -0
- package/esm/button/button-adapter.d.ts +14 -0
- package/esm/button/button-adapter.js +14 -0
- package/esm/button/button-component-delegate.d.ts +4 -4
- package/esm/button/button-component-delegate.js +13 -17
- package/esm/button/button-constants.d.ts +10 -18
- package/esm/button/button-constants.js +6 -22
- package/esm/button/button-foundation.d.ts +25 -0
- package/esm/button/button-foundation.js +49 -0
- package/esm/button/button.d.ts +126 -30
- package/esm/button/button.js +160 -159
- package/esm/button/index.d.ts +3 -1
- package/esm/button/index.js +3 -1
- package/esm/button-area/button-area-adapter.d.ts +48 -0
- package/esm/button-area/button-area-adapter.js +121 -0
- package/esm/button-area/button-area-constants.d.ts +24 -0
- package/esm/button-area/button-area-constants.js +30 -0
- package/esm/button-area/button-area-foundation.d.ts +29 -0
- package/esm/button-area/button-area-foundation.js +94 -0
- package/esm/button-area/button-area.d.ts +29 -0
- package/esm/button-area/button-area.js +55 -0
- package/esm/button-area/index.d.ts +10 -0
- package/esm/button-area/index.js +14 -0
- package/esm/button-toggle/button-toggle/button-toggle.js +1 -1
- package/esm/calendar/calendar-dom-utils.js +18 -30
- package/esm/calendar/calendar-foundation.js +6 -0
- package/esm/calendar/calendar-menu/calendar-menu.js +1 -1
- package/esm/calendar/calendar.js +1 -1
- package/esm/checkbox/checkbox-adapter.d.ts +50 -59
- package/esm/checkbox/checkbox-adapter.js +104 -186
- package/esm/checkbox/checkbox-component-delegate.d.ts +18 -9
- package/esm/checkbox/checkbox-component-delegate.js +58 -51
- package/esm/checkbox/checkbox-constants.d.ts +14 -56
- package/esm/checkbox/checkbox-constants.js +17 -50
- package/esm/checkbox/checkbox-foundation.d.ts +48 -18
- package/esm/checkbox/checkbox-foundation.js +139 -139
- package/esm/checkbox/checkbox.d.ts +120 -9
- package/esm/checkbox/checkbox.js +235 -36
- package/esm/checkbox/index.d.ts +1 -1
- package/esm/checkbox/index.js +1 -1
- package/esm/chip-field/chip-field-adapter.js +1 -1
- package/esm/chip-field/chip-field-constants.d.ts +3 -0
- package/esm/chip-field/chip-field-constants.js +4 -0
- package/esm/chip-field/chip-field-foundation.d.ts +5 -0
- package/esm/chip-field/chip-field-foundation.js +20 -1
- package/esm/chip-field/chip-field.d.ts +5 -0
- package/esm/chip-field/chip-field.js +21 -3
- package/esm/chips/chip/chip.js +1 -1
- package/esm/circular-progress/circular-progress-constants.d.ts +4 -0
- package/esm/circular-progress/circular-progress-constants.js +2 -0
- package/esm/circular-progress/circular-progress-foundation.d.ts +9 -0
- package/esm/circular-progress/circular-progress-foundation.js +21 -0
- package/esm/circular-progress/circular-progress.d.ts +15 -2
- package/esm/circular-progress/circular-progress.js +25 -3
- package/esm/color-picker/color-picker.js +2 -2
- package/esm/constants.d.ts +7 -0
- package/esm/constants.js +4 -0
- package/esm/core/base/base-adapter.d.ts +18 -3
- package/esm/core/base/base-adapter.js +30 -2
- package/esm/core/base/base-component.d.ts +0 -1
- package/esm/core/base/base-component.js +0 -1
- package/esm/core/base/base-focusable-component.d.ts +49 -0
- package/esm/core/base/base-focusable-component.js +90 -0
- package/esm/core/base/base-form-component.d.ts +45 -0
- package/esm/core/base/base-form-component.js +19 -0
- package/esm/core/base/base-nullable-form-component.d.ts +35 -0
- package/esm/core/base/base-nullable-form-component.js +20 -0
- package/esm/core/keyboard/key-manager.d.ts +18 -0
- package/esm/core/keyboard/key-manager.js +47 -0
- package/esm/core/utils/feature-detection.d.ts +10 -0
- package/esm/core/utils/feature-detection.js +12 -0
- package/esm/core/utils/index.d.ts +2 -0
- package/esm/core/utils/index.js +2 -0
- package/esm/core/utils/reflect-utils.d.ts +107 -0
- package/esm/core/utils/reflect-utils.js +227 -0
- package/esm/core/utils/utils.d.ts +8 -0
- package/esm/core/utils/utils.js +15 -0
- package/esm/date-picker/base/base-date-picker-foundation.js +1 -1
- package/esm/date-picker/base/base-date-picker-utils.js +5 -8
- package/esm/date-range-picker/date-range-picker-foundation.js +2 -2
- package/esm/drawer/drawer/drawer.js +1 -1
- package/esm/drawer/mini-drawer/mini-drawer.js +1 -1
- package/esm/drawer/modal-drawer/modal-drawer.js +1 -1
- package/esm/expansion-panel/expansion-panel-adapter.d.ts +1 -0
- package/esm/expansion-panel/expansion-panel-adapter.js +7 -2
- package/esm/expansion-panel/expansion-panel.js +1 -1
- package/esm/field/field-constants.d.ts +8 -0
- package/esm/field/field-constants.js +10 -8
- package/esm/field/field-foundation.d.ts +1 -0
- package/esm/field/field-foundation.js +17 -7
- package/esm/file-picker/file-picker-component-delegate.js +1 -1
- package/esm/file-picker/file-picker.js +1 -1
- package/esm/floating-label/floating-label-foundation.d.ts +4 -1
- package/esm/floating-label/floating-label-foundation.js +9 -6
- package/esm/floating-label/floating-label.d.ts +6 -2
- package/esm/floating-label/floating-label.js +2 -2
- package/esm/focus-indicator/focus-indicator-adapter.d.ts +2 -2
- package/esm/focus-indicator/focus-indicator-adapter.js +3 -3
- package/esm/focus-indicator/focus-indicator-foundation.js +4 -3
- package/esm/focus-indicator/focus-indicator.js +1 -1
- package/esm/icon/icon-adapter.d.ts +0 -2
- package/esm/icon/icon-adapter.js +4 -5
- package/esm/icon/icon-foundation.js +0 -1
- package/esm/icon-button/icon-button-adapter.d.ts +12 -0
- package/esm/icon-button/icon-button-adapter.js +11 -0
- package/esm/icon-button/icon-button-component-delegate.d.ts +0 -4
- package/esm/icon-button/icon-button-component-delegate.js +8 -18
- package/esm/icon-button/icon-button-constants.d.ts +26 -17
- package/esm/icon-button/icon-button-constants.js +17 -28
- package/esm/icon-button/icon-button-foundation.d.ts +39 -0
- package/esm/icon-button/icon-button-foundation.js +122 -0
- package/esm/icon-button/icon-button.d.ts +69 -41
- package/esm/icon-button/icon-button.js +107 -213
- package/esm/index.d.ts +3 -0
- package/esm/index.js +8 -1
- package/esm/keyboard-shortcut/keyboard-shortcut-constants.d.ts +1 -0
- package/esm/keyboard-shortcut/keyboard-shortcut-foundation.d.ts +6 -0
- package/esm/keyboard-shortcut/keyboard-shortcut-foundation.js +9 -0
- package/esm/keyboard-shortcut/keyboard-shortcut.d.ts +4 -0
- package/esm/keyboard-shortcut/keyboard-shortcut.js +3 -0
- package/esm/label/index.d.ts +11 -0
- package/esm/label/index.js +15 -0
- package/esm/label/label-adapter.d.ts +51 -0
- package/esm/label/label-adapter.js +102 -0
- package/esm/label/label-aware.d.ts +15 -0
- package/esm/label/label-aware.js +13 -0
- package/esm/label/label-constants.d.ts +17 -0
- package/esm/label/label-constants.js +31 -0
- package/esm/label/label-foundation.d.ts +40 -0
- package/esm/label/label-foundation.js +106 -0
- package/esm/label/label.d.ts +49 -0
- package/esm/label/label.js +80 -0
- package/esm/linear-progress/linear-progress-constants.d.ts +3 -0
- package/esm/linear-progress/linear-progress-constants.js +1 -0
- package/esm/linear-progress/linear-progress-foundation.d.ts +5 -0
- package/esm/linear-progress/linear-progress-foundation.js +13 -3
- package/esm/linear-progress/linear-progress.d.ts +8 -1
- package/esm/linear-progress/linear-progress.js +13 -2
- package/esm/list/list/list-adapter.d.ts +17 -41
- package/esm/list/list/list-adapter.js +42 -60
- package/esm/list/list/list-constants.d.ts +13 -5
- package/esm/list/list/list-constants.js +15 -7
- package/esm/list/list/list-foundation.d.ts +24 -16
- package/esm/list/list/list-foundation.js +84 -75
- package/esm/list/list/list.d.ts +47 -8
- package/esm/list/list/list.js +83 -11
- package/esm/list/list-item/list-item-adapter.d.ts +39 -90
- package/esm/list/list-item/list-item-adapter.js +147 -127
- package/esm/list/list-item/list-item-constants.d.ts +31 -27
- package/esm/list/list-item/list-item-constants.js +19 -32
- package/esm/list/list-item/list-item-foundation.d.ts +41 -56
- package/esm/list/list-item/list-item-foundation.js +139 -204
- package/esm/list/list-item/list-item.d.ts +120 -37
- package/esm/list/list-item/list-item.js +171 -84
- package/esm/list-dropdown/list-dropdown-adapter.js +1 -6
- package/esm/list-dropdown/list-dropdown-constants.d.ts +4 -0
- package/esm/list-dropdown/list-dropdown-utils.js +23 -24
- package/esm/menu/menu-constants.js +1 -1
- package/esm/menu/menu-foundation.js +0 -4
- package/esm/menu/menu.js +1 -1
- package/esm/paginator/paginator-adapter.d.ts +30 -24
- package/esm/paginator/paginator-adapter.js +68 -0
- package/esm/paginator/paginator-constants.js +4 -4
- package/esm/paginator/paginator-foundation.d.ts +35 -80
- package/esm/paginator/paginator-foundation.js +221 -255
- package/esm/paginator/paginator.d.ts +1 -2
- package/esm/paginator/paginator.js +5 -4
- package/esm/popup/popup-adapter.d.ts +3 -1
- package/esm/popup/popup-adapter.js +3 -0
- package/esm/popup/popup-foundation.js +5 -3
- package/esm/popup/popup.d.ts +4 -1
- package/esm/popup/popup.js +1 -1
- package/esm/profile-card/profile-card.js +2 -2
- package/esm/quantity-field/quantity-field-constants.js +2 -2
- package/esm/select/core/base-select-adapter.js +3 -0
- package/esm/select/core/base-select-foundation.js +3 -1
- package/esm/select/option/option-constants.d.ts +1 -0
- package/esm/select/option/option-constants.js +1 -0
- package/esm/select/option/option-foundation.d.ts +13 -0
- package/esm/select/option/option-foundation.js +28 -0
- package/esm/select/option/option.d.ts +7 -0
- package/esm/select/option/option.js +13 -0
- package/esm/slider/slider-adapter.d.ts +1 -1
- package/esm/slider/slider-adapter.js +3 -2
- package/esm/slider/slider-constants.js +3 -3
- package/esm/slider/slider.d.ts +6 -11
- package/esm/slider/slider.js +11 -7
- package/esm/split-button/index.d.ts +10 -0
- package/esm/split-button/index.js +14 -0
- package/esm/split-button/split-button-adapter.d.ts +30 -0
- package/esm/split-button/split-button-adapter.js +84 -0
- package/esm/split-button/split-button-constants.d.ts +21 -0
- package/esm/split-button/split-button-constants.js +23 -0
- package/esm/split-button/split-button-foundation.d.ts +37 -0
- package/esm/split-button/split-button-foundation.js +77 -0
- package/esm/split-button/split-button.d.ts +57 -0
- package/esm/split-button/split-button.js +103 -0
- package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
- package/esm/state-layer/state-layer-adapter.js +1 -0
- package/esm/state-layer/state-layer-foundation.js +10 -1
- package/esm/state-layer/state-layer.js +1 -1
- package/esm/stepper/stepper/stepper-foundation.js +1 -1
- package/esm/switch/index.d.ts +2 -0
- package/esm/switch/index.js +2 -0
- package/esm/switch/switch-adapter.d.ts +64 -0
- package/esm/switch/switch-adapter.js +151 -0
- package/esm/switch/switch-component-delegate.d.ts +22 -6
- package/esm/switch/switch-component-delegate.js +64 -29
- package/esm/switch/switch-constants.d.ts +23 -6
- package/esm/switch/switch-constants.js +29 -10
- package/esm/switch/switch-foundation.d.ts +65 -0
- package/esm/switch/switch-foundation.js +162 -0
- package/esm/switch/switch.d.ts +162 -33
- package/esm/switch/switch.js +249 -136
- package/esm/table/table-foundation.d.ts +2 -0
- package/esm/table/table-foundation.js +17 -6
- package/esm/table/table-utils.js +13 -1
- package/esm/table/types.d.ts +1 -0
- package/esm/tabs/tab/tab.js +2 -2
- package/esm/tabs/tab-bar/tab-bar-adapter.js +17 -20
- package/esm/tabs/tab-bar/tab-bar.js +1 -1
- package/esm/time-picker/time-picker-adapter.js +5 -8
- package/esm/time-picker/time-picker-foundation.js +3 -3
- package/esm/toast/toast-adapter.d.ts +1 -1
- package/esm/toast/toast-adapter.js +1 -1
- package/esm/toast/toast.js +2 -2
- package/package.json +1 -7
- package/styles/app-bar/_mixins.scss +9 -4
- package/styles/banner/banner.scss +0 -1
- package/styles/bottom-sheet/bottom-sheet.scss +0 -1
- package/styles/busy-indicator/_mixins.scss +1 -1
- package/styles/busy-indicator/busy-indicator.scss +0 -1
- package/styles/button/_configuration.scss +16 -0
- package/styles/button/_core.scss +183 -0
- package/styles/button/_token-utils.scss +30 -0
- package/styles/button/button.scss +208 -0
- package/styles/button/index.scss +8 -0
- package/styles/button-area/_mixins.scss +47 -0
- package/styles/button-area/button-area.scss +16 -0
- package/styles/button-toggle/button-toggle/_mixins.scss +26 -7
- package/styles/calendar/calendar-menu/_mixins.scss +48 -2
- package/styles/calendar/calendar.scss +0 -4
- package/styles/{button/forge-button.scss → checkbox/_configuration.scss} +4 -3
- package/styles/checkbox/_core.scss +157 -0
- package/styles/checkbox/_token-utils.scss +30 -0
- package/styles/checkbox/checkbox.scss +143 -7
- package/styles/checkbox/index.scss +8 -0
- package/styles/chip-field/_base.scss +1 -0
- package/styles/chip-field/_selector.scss +2 -2
- package/styles/chips/chip/_mixins.scss +21 -7
- package/styles/circular-progress/_configuration.scss +8 -15
- package/styles/circular-progress/_core.scss +19 -19
- package/styles/circular-progress/_token-utils.scss +30 -0
- package/styles/circular-progress/circular-progress.scss +51 -4
- package/styles/circular-progress/index.scss +1 -0
- package/styles/color-picker/color-picker.scss +0 -3
- package/styles/core/styles/_utils.scss +148 -11
- package/styles/core/styles/scrollbar/index.scss +45 -0
- package/styles/core/styles/spacing/index.scss +8 -1
- package/styles/core/styles/theme/_color-utils.scss +63 -0
- package/styles/core/styles/theme/_utils.scss +82 -0
- package/styles/core/styles/theme/index.scss +39 -13
- package/styles/core/styles/tokens/_token-utils.scss +118 -0
- package/styles/core/styles/tokens/button/_tokens.scss +115 -0
- package/styles/core/styles/tokens/checkbox/_tokens.scss +69 -0
- package/styles/core/styles/tokens/circular-progress/_tokens.scss +13 -3
- package/styles/core/styles/tokens/color-palette/_extended-color-palette.scss +88 -0
- package/styles/core/styles/tokens/color-palette/index.scss +7 -0
- package/styles/core/styles/tokens/focus-indicator/_tokens.scss +8 -5
- package/styles/core/styles/tokens/icon-button/_tokens.scss +106 -0
- package/styles/core/styles/tokens/index.scss +0 -1
- package/styles/core/styles/tokens/linear-progress/_tokens.scss +15 -4
- package/styles/core/styles/tokens/list/list/_tokens.scss +16 -0
- package/styles/core/styles/tokens/list/list-item/_tokens.scss +77 -0
- package/styles/core/styles/tokens/scrollbar/_tokens.scss +26 -0
- package/styles/core/styles/tokens/slider/_tokens.scss +9 -11
- package/styles/core/styles/tokens/spacing/_tokens.scss +25 -11
- package/styles/core/styles/tokens/split-button/_tokens.scss +21 -0
- package/styles/core/styles/tokens/state-layer/_tokens.scss +5 -5
- package/styles/core/styles/tokens/switch/_tokens.scss +108 -0
- package/styles/core/styles/tokens/tabs/tab/_tokens.scss +3 -1
- package/styles/core/styles/tokens/tabs/tab-bar/_tokens.scss +3 -3
- package/styles/core/styles/tokens/theme/_color-emphasis.scss +38 -0
- package/styles/core/styles/tokens/theme/_token-utils.scss +50 -0
- package/styles/core/styles/tokens/theme/_tokens.core.scss +45 -0
- package/styles/core/styles/tokens/theme/_tokens.scss +62 -117
- package/styles/core/styles/tokens/theme/_tokens.status.scss +49 -0
- package/styles/core/styles/tokens/theme/_tokens.surface.scss +65 -0
- package/styles/core/styles/tokens/theme/_tokens.text.scss +38 -0
- package/styles/core/styles/tokens/theme/_tokens.utilities.scss +30 -0
- package/styles/core/styles/tokens/typography/_scale.scss +39 -0
- package/styles/core/styles/tokens/typography/_tokens.body.scss +41 -0
- package/styles/core/styles/tokens/typography/_tokens.core.scss +31 -0
- package/styles/core/styles/tokens/typography/_tokens.display.scss +67 -0
- package/styles/core/styles/tokens/typography/_tokens.heading.scss +70 -0
- package/styles/core/styles/tokens/typography/_tokens.label.scss +36 -0
- package/styles/core/styles/tokens/typography/_tokens.scss +16 -211
- package/styles/core/styles/tokens/typography/_tokens.subheading.scss +66 -0
- package/styles/core/styles/tokens/typography/_type-utils.scss +37 -0
- package/styles/core/styles/tokens/typography/_weight.scss +20 -0
- package/styles/core/styles/typography/index.scss +56 -6
- package/styles/file-picker/_mixins.scss +1 -1
- package/styles/focus-indicator/_animations.scss +6 -4
- package/styles/focus-indicator/_configuration.scss +2 -15
- package/styles/focus-indicator/_core.scss +20 -25
- package/styles/focus-indicator/_token-utils.scss +31 -0
- package/styles/focus-indicator/focus-indicator.scss +28 -6
- package/styles/focus-indicator/index.scss +1 -0
- package/styles/forge.scss +0 -2
- package/styles/icon-button/_configuration.scss +16 -0
- package/styles/icon-button/_core.scss +145 -0
- package/styles/icon-button/_token-utils.scss +30 -0
- package/styles/icon-button/icon-button.scss +315 -0
- package/styles/icon-button/index.scss +8 -0
- package/styles/label/_core.scss +17 -0
- package/styles/{icon-button/forge-icon-button.scss → label/index.scss} +1 -3
- package/styles/label/label.scss +18 -0
- package/styles/linear-progress/_animations.scss +3 -1
- package/styles/linear-progress/_configuration.scss +15 -16
- package/styles/linear-progress/_core.scss +17 -19
- package/styles/linear-progress/_token-utils.scss +31 -0
- package/styles/linear-progress/index.scss +1 -0
- package/styles/linear-progress/linear-progress.scss +42 -6
- package/styles/list/list/_configuration.scss +10 -0
- package/styles/list/list/_core.scss +16 -0
- package/styles/list/list/_token-utils.scss +30 -0
- package/styles/list/list/index.scss +8 -0
- package/styles/list/list/list.scss +29 -3
- package/styles/list/list-item/_configuration.scss +16 -0
- package/styles/list/list-item/_core.scss +195 -0
- package/styles/list/list-item/_token-utils.scss +30 -0
- package/styles/list/list-item/index.scss +8 -0
- package/styles/list/list-item/list-item.scss +199 -12
- package/styles/menu/menu.scss +1 -1
- package/styles/paginator/paginator.scss +0 -1
- package/styles/profile-card/profile-card.scss +0 -1
- package/styles/slider/_configuration.scss +5 -50
- package/styles/slider/_core.scss +59 -70
- package/styles/slider/_token-utils.scss +30 -0
- package/styles/slider/index.scss +1 -0
- package/styles/slider/slider.scss +28 -5
- package/styles/split-button/_configuration.scss +12 -0
- package/styles/split-button/_token-utils.scss +30 -0
- package/styles/split-button/index.scss +7 -0
- package/styles/split-button/split-button.scss +97 -0
- package/styles/state-layer/_configuration.scss +2 -9
- package/styles/state-layer/_core.scss +11 -16
- package/styles/state-layer/_token-utils.scss +31 -0
- package/styles/state-layer/index.scss +1 -0
- package/styles/state-layer/state-layer.scss +7 -0
- package/styles/switch/_configuration.scss +10 -0
- package/styles/switch/_core.scss +252 -0
- package/styles/switch/_token-utils.scss +30 -0
- package/styles/switch/index.scss +8 -0
- package/styles/switch/switch.scss +167 -47
- package/styles/table/_mixins.scss +20 -2
- package/styles/tabs/tab/_configuration.scss +7 -44
- package/styles/tabs/tab/_core.scss +30 -35
- package/styles/tabs/tab/_token-utils.scss +30 -0
- package/styles/tabs/tab/index.scss +1 -0
- package/styles/tabs/tab/tab.scss +89 -45
- package/styles/tabs/tab-bar/_configuration.scss +2 -5
- package/styles/tabs/tab-bar/_core.scss +26 -9
- package/styles/tabs/tab-bar/_token-utils.scss +30 -0
- package/styles/tabs/tab-bar/index.scss +2 -1
- package/styles/tabs/tab-bar/tab-bar.scss +68 -34
- package/styles/theme/_theme-dark.scss +0 -2
- package/styles/theme/_theme.scss +3 -45
- package/styles/theme/forge-theme.scss +21 -3
- package/styles/toast/_mixins.scss +1 -1
- package/styles/toast/toast.scss +0 -2
- package/styles/typography/_mixins.scss +0 -20
- package/styles/typography/forge-typography.scss +5 -2
- package/dist/button/forge-button.css +0 -6
- package/dist/esm/chunks/chunk.2AJ7FFI6.js +0 -7
- package/dist/esm/chunks/chunk.2AJ7FFI6.js.map +0 -7
- package/dist/esm/chunks/chunk.3HB22HCX.js +0 -7
- package/dist/esm/chunks/chunk.4C6KHYUO.js +0 -7
- package/dist/esm/chunks/chunk.54OOOQ4R.js +0 -7
- package/dist/esm/chunks/chunk.54OOOQ4R.js.map +0 -7
- package/dist/esm/chunks/chunk.5565ZSTH.js +0 -7
- package/dist/esm/chunks/chunk.6GC5AJPE.js +0 -7
- package/dist/esm/chunks/chunk.6GC5AJPE.js.map +0 -7
- package/dist/esm/chunks/chunk.6OUJSOJY.js +0 -7
- package/dist/esm/chunks/chunk.7CGKFRBK.js +0 -7
- package/dist/esm/chunks/chunk.7CGKFRBK.js.map +0 -7
- package/dist/esm/chunks/chunk.7DB3XVPI.js +0 -7
- package/dist/esm/chunks/chunk.ALIYGJXA.js +0 -129
- package/dist/esm/chunks/chunk.ALIYGJXA.js.map +0 -7
- package/dist/esm/chunks/chunk.B4T3R53C.js +0 -7
- package/dist/esm/chunks/chunk.BH2TUG2V.js +0 -7
- package/dist/esm/chunks/chunk.BH2TUG2V.js.map +0 -7
- package/dist/esm/chunks/chunk.BKL2BAYW.js +0 -7
- package/dist/esm/chunks/chunk.BKL2BAYW.js.map +0 -7
- package/dist/esm/chunks/chunk.BY25RT52.js +0 -7
- package/dist/esm/chunks/chunk.CDGZYUQS.js +0 -7
- package/dist/esm/chunks/chunk.CKW7KKDW.js +0 -7
- package/dist/esm/chunks/chunk.CKW7KKDW.js.map +0 -7
- package/dist/esm/chunks/chunk.CXY6K7EI.js +0 -7
- package/dist/esm/chunks/chunk.CXY6K7EI.js.map +0 -7
- package/dist/esm/chunks/chunk.D5TAI6Q7.js +0 -7
- package/dist/esm/chunks/chunk.D5TAI6Q7.js.map +0 -7
- package/dist/esm/chunks/chunk.DBNJHUYY.js +0 -7
- package/dist/esm/chunks/chunk.DBNJHUYY.js.map +0 -7
- package/dist/esm/chunks/chunk.DMCBAYQX.js +0 -7
- package/dist/esm/chunks/chunk.DMCBAYQX.js.map +0 -7
- package/dist/esm/chunks/chunk.DXN7ZOH3.js +0 -7
- package/dist/esm/chunks/chunk.DXN7ZOH3.js.map +0 -7
- package/dist/esm/chunks/chunk.F4VXEE76.js +0 -7
- package/dist/esm/chunks/chunk.F4VXEE76.js.map +0 -7
- package/dist/esm/chunks/chunk.F5SY2D4B.js +0 -7
- package/dist/esm/chunks/chunk.F74YURLV.js +0 -7
- package/dist/esm/chunks/chunk.F74YURLV.js.map +0 -7
- package/dist/esm/chunks/chunk.FG2GNAM2.js +0 -7
- package/dist/esm/chunks/chunk.FG2GNAM2.js.map +0 -7
- package/dist/esm/chunks/chunk.GNG64TXK.js +0 -7
- package/dist/esm/chunks/chunk.GNG64TXK.js.map +0 -7
- package/dist/esm/chunks/chunk.GO5A4GKZ.js +0 -7
- package/dist/esm/chunks/chunk.GO5A4GKZ.js.map +0 -7
- package/dist/esm/chunks/chunk.HHCO64F3.js +0 -7
- package/dist/esm/chunks/chunk.HHCO64F3.js.map +0 -7
- package/dist/esm/chunks/chunk.ISC7SZSP.js +0 -7
- package/dist/esm/chunks/chunk.ISC7SZSP.js.map +0 -7
- package/dist/esm/chunks/chunk.IX25DYIM.js +0 -7
- package/dist/esm/chunks/chunk.IX25DYIM.js.map +0 -7
- package/dist/esm/chunks/chunk.JUJGROHA.js +0 -7
- package/dist/esm/chunks/chunk.JUJGROHA.js.map +0 -7
- package/dist/esm/chunks/chunk.KJP2VA6Q.js +0 -7
- package/dist/esm/chunks/chunk.KJP2VA6Q.js.map +0 -7
- package/dist/esm/chunks/chunk.LK4AAUOP.js +0 -7
- package/dist/esm/chunks/chunk.LK4AAUOP.js.map +0 -7
- package/dist/esm/chunks/chunk.LXPFG7MW.js +0 -7
- package/dist/esm/chunks/chunk.LXPFG7MW.js.map +0 -7
- package/dist/esm/chunks/chunk.MACPUZC2.js +0 -7
- package/dist/esm/chunks/chunk.MACPUZC2.js.map +0 -7
- package/dist/esm/chunks/chunk.MGLL67VO.js +0 -7
- package/dist/esm/chunks/chunk.MXEKIEJA.js +0 -7
- package/dist/esm/chunks/chunk.MXEKIEJA.js.map +0 -7
- package/dist/esm/chunks/chunk.N43BCJHN.js +0 -7
- package/dist/esm/chunks/chunk.N43BCJHN.js.map +0 -7
- package/dist/esm/chunks/chunk.P2CW5MQO.js +0 -12
- package/dist/esm/chunks/chunk.P2CW5MQO.js.map +0 -7
- package/dist/esm/chunks/chunk.P2ZCNO63.js +0 -7
- package/dist/esm/chunks/chunk.P2ZCNO63.js.map +0 -7
- package/dist/esm/chunks/chunk.PEBT47AU.js +0 -7
- package/dist/esm/chunks/chunk.PH3HUFJJ.js +0 -7
- package/dist/esm/chunks/chunk.PH3HUFJJ.js.map +0 -7
- package/dist/esm/chunks/chunk.Q7JUJNYD.js +0 -7
- package/dist/esm/chunks/chunk.QCRRHGBA.js +0 -7
- package/dist/esm/chunks/chunk.QCRRHGBA.js.map +0 -7
- package/dist/esm/chunks/chunk.SBYX7VZ4.js +0 -7
- package/dist/esm/chunks/chunk.SFCGOCQK.js +0 -7
- package/dist/esm/chunks/chunk.SJJS4LYN.js +0 -7
- package/dist/esm/chunks/chunk.TYLOAD7R.js +0 -7
- package/dist/esm/chunks/chunk.UJ2WQOLO.js +0 -7
- package/dist/esm/chunks/chunk.UJ2WQOLO.js.map +0 -7
- package/dist/esm/chunks/chunk.VVXSELXX.js +0 -7
- package/dist/esm/chunks/chunk.VVXSELXX.js.map +0 -7
- package/dist/esm/chunks/chunk.VZWNNK7A.js +0 -7
- package/dist/esm/chunks/chunk.VZWNNK7A.js.map +0 -7
- package/dist/esm/chunks/chunk.X3C3J5MH.js +0 -7
- package/dist/esm/chunks/chunk.X3C3J5MH.js.map +0 -7
- package/dist/esm/chunks/chunk.XGOAYMK2.js +0 -7
- package/dist/esm/chunks/chunk.XGOAYMK2.js.map +0 -7
- package/dist/esm/chunks/chunk.YRMR7IOS.js +0 -7
- package/dist/esm/chunks/chunk.YRMR7IOS.js.map +0 -7
- package/dist/esm/chunks/chunk.YX7WLO5Y.js +0 -7
- package/dist/esm/chunks/chunk.YZLASVCK.js +0 -177
- package/dist/esm/chunks/chunk.YZLASVCK.js.map +0 -7
- package/dist/esm/chunks/chunk.ZDD2NLGP.js +0 -7
- package/dist/esm/chunks/chunk.ZKGSQQGU.js +0 -12
- package/dist/esm/chunks/chunk.ZKGSQQGU.js.map +0 -7
- package/dist/esm/chunks/chunk.ZVBZ3LGP.js +0 -7
- package/dist/esm/chunks/chunk.ZVBZ3LGP.js.map +0 -7
- package/dist/icon-button/forge-icon-button.css +0 -6
- package/styles/button/_button-base.scss +0 -183
- package/styles/button/_button-filled-theme.scss +0 -60
- package/styles/button/_button-filled.scss +0 -71
- package/styles/button/_button-outlined-theme.scss +0 -175
- package/styles/button/_button-outlined.scss +0 -76
- package/styles/button/_button-protected-theme.scss +0 -60
- package/styles/button/_button-protected.scss +0 -88
- package/styles/button/_button-ripple.scss +0 -69
- package/styles/button/_button-shared-theme.scss +0 -447
- package/styles/button/_button-text-theme.scss +0 -60
- package/styles/button/_button-text.scss +0 -57
- package/styles/button/_button.mixins.scss +0 -148
- package/styles/button/_mixins.scss +0 -183
- package/styles/checkbox/_checkbox-custom-properties.scss +0 -11
- package/styles/checkbox/_checkbox-theme.scss +0 -577
- package/styles/checkbox/_checkbox.mixins.scss +0 -595
- package/styles/icon-button/_mixins.scss +0 -345
- package/styles/icon-button/_variables.scss +0 -42
- package/styles/list/list/_mixins.scss +0 -45
- package/styles/list/list-item/_mixins.scss +0 -413
- package/styles/list/list-item/_variables.scss +0 -43
- package/styles/switch/_switch-mixins.scss +0 -301
- package/styles/switch/_switch-theme.scss +0 -701
- /package/dist/esm/chunks/{chunk.SMGXXR6K.js.map → chunk.2MSL7CYM.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.M56LSSPW.js.map → chunk.3HCYRDRI.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.4ZKX3SO5.js.map → chunk.3R4BUIQP.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.YWNCJ7XP.js.map → chunk.3ZPSN2QG.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.LFODKHUO.js.map → chunk.5N4N6DL6.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.QOJESHEV.js.map → chunk.675V42JS.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.DG4ZM3AW.js.map → chunk.AMLT6XJP.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.MTKSU2BV.js.map → chunk.APPY5AYL.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.4YFVG4KP.js.map → chunk.ARQMMZJL.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.5MZ5SGMO.js.map → chunk.BB4UF5RX.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.Q7Z3SJ5F.js.map → chunk.DTLZOIUQ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.OWCYRSI3.js.map → chunk.FLWNOP42.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.S3JMOOWC.js.map → chunk.FXIWCHLW.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.CWTV3TB3.js.map → chunk.GNDKQPDV.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.ULY4H76N.js.map → chunk.HAKF2T2D.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.WPG7NNQX.js.map → chunk.HOLCNJXC.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.W4247Q2P.js.map → chunk.HRRJIFC5.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.SU4FU7GK.js.map → chunk.IDMDBMBR.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.FCATJM34.js.map → chunk.IHAHJPMB.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.XKI46BH2.js.map → chunk.IMLJD35R.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.624UKZFU.js.map → chunk.IT7XPDAV.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.JLLHDJSO.js.map → chunk.JVLJH6PR.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.4C6KHYUO.js.map → chunk.KPJWP77R.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.2EWV2XBP.js.map → chunk.KV5IKYG2.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.A62DE5PD.js.map → chunk.LCR4YH3O.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.FWFOOQMA.js.map → chunk.LOG6GQOK.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.YLG6ZC5K.js.map → chunk.NUMKGUCK.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.XI3MJSIS.js.map → chunk.O6V3YNMO.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.TK5I4RHF.js.map → chunk.QLCVRJ3Q.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.Q7JUJNYD.js.map → chunk.RP674CRC.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.LTT67HTW.js.map → chunk.SLJ6HDK7.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.6OW6Q3EW.js.map → chunk.TU74SREL.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.EK24Y56W.js.map → chunk.URJQNB3S.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.K3KAM2PL.js.map → chunk.W2LN45WY.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.Z6FCL3G3.js.map → chunk.XEFWZKHQ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.NR3MLTXF.js.map → chunk.XLL7L2UB.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.3HB22HCX.js.map → chunk.XYAZVLPR.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.2QHD3DCR.js.map → chunk.YAERJVPL.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.ZDD2NLGP.js.map → chunk.YBZK6LJZ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.ZJC2DSNM.js.map → chunk.Z5ZLKM7W.js.map} +0 -0
- /package/styles/core/styles/tokens/{_color-palette.scss → color-palette/_material-color-palette.scss} +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/circular-progress/circular-progress-constants.ts", "../../src/circular-progress/circular-progress-adapter.ts", "../../src/circular-progress/circular-progress-foundation.ts", "../../src/circular-progress/circular-progress.ts", "../../src/circular-progress/index.ts"],
|
|
4
|
+
"sourcesContent": ["import { COMPONENT_NAME_PREFIX, Theme } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}circular-progress`;\n\nconst attributes = {\n DETERMINATE: 'determinate',\n PROGRESS: 'progress',\n THEME: 'theme',\n NO_TRACK: 'no-track',\n ARIA_LABEL: 'data-aria-label'\n};\n\nconst classes = {\n INDETERMINATE: 'forge-circular-progress--indeterminate'\n};\n\nconst selectors = {\n ROOT: '.forge-circular-progress',\n DETERMINATE_PROGRESS_CIRCLE: '.progress',\n TEMPLATES: 'svg, .spinner'\n};\n\nexport const CIRCULAR_PROGRESS_CONSTANTS = {\n elementName,\n attributes,\n classes,\n selectors\n};\n\nexport type CircularProgressTheme = Theme;\n", "import { getShadowElement, toggleAttribute } from '@tylertech/forge-core';\n\nimport { ICircularProgressComponent } from './circular-progress';\nimport { CIRCULAR_PROGRESS_CONSTANTS } from './circular-progress-constants';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\n\nconst indeterminateTemplate = '<svg viewBox=\\\"0 0 4800 4800\\\"><circle class=\\\"track-background\\\" pathLength=\\\"100\\\"></circle></svg><div class=\\\"spinner\\\"><div class=\\\"left\\\"><div class=\\\"circle\\\"></div></div><div class=\\\"right\\\"><div class=\\\"circle\\\"></div></div></div>';\nconst determinateTemplate = '<svg viewBox=\\\"0 0 4800 4800\\\"><circle class=\\\"track-background\\\" pathLength=\\\"100\\\"></circle><circle class=\\\"track\\\" pathLength=\\\"100\\\"></circle><circle class=\\\"progress\\\" pathLength=\\\"100\\\" stroke-dashoffset=\\\"100\\\"></circle></svg>';\n\nexport interface ICircularProgressAdapter extends IBaseAdapter {\n setDeterminate(value: boolean): void;\n setProgress(value: number): void;\n setAriaLabel(value: string): void;\n}\n\nexport class CircularProgressAdapter extends BaseAdapter<ICircularProgressComponent> implements ICircularProgressAdapter {\n private readonly _rootElement: HTMLElement;\n private _determinateProgressCircleElement: HTMLElement | undefined;\n\n constructor(component: ICircularProgressComponent) {\n super(component);\n this._rootElement = getShadowElement(this._component, CIRCULAR_PROGRESS_CONSTANTS.selectors.ROOT);\n }\n\n public setDeterminate(value: boolean): void {\n this._tryResetTemplate();\n this._rootElement.classList.toggle(CIRCULAR_PROGRESS_CONSTANTS.classes.INDETERMINATE, !value);\n \n if (value) {\n this._rootElement.insertAdjacentHTML('beforeend', determinateTemplate);\n this._determinateProgressCircleElement = getShadowElement(this._component, CIRCULAR_PROGRESS_CONSTANTS.selectors.DETERMINATE_PROGRESS_CIRCLE);\n } else {\n this._rootElement.insertAdjacentHTML('beforeend', indeterminateTemplate);\n this._rootElement.removeAttribute('aria-valuenow');\n this._determinateProgressCircleElement = undefined;\n }\n }\n\n public setProgress(value: number): void {\n this._rootElement.setAttribute('aria-valuenow', `${value}`);\n this._determinateProgressCircleElement?.setAttribute('stroke-dashoffset', `${(1 - value) * 100}`);\n }\n\n public setAriaLabel(value: string): void {\n toggleAttribute(this._rootElement, !!value, 'aria-label', value);\n }\n\n private _tryResetTemplate(): void {\n const elements = this._component.shadowRoot?.querySelectorAll(CIRCULAR_PROGRESS_CONSTANTS.selectors.TEMPLATES);\n elements?.forEach(el => el.remove());\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\n\nimport { ICircularProgressAdapter } from './circular-progress-adapter';\nimport { CircularProgressTheme, CIRCULAR_PROGRESS_CONSTANTS } from './circular-progress-constants';\n\nexport interface ICircularProgressFoundation extends ICustomElementFoundation {\n determinate: boolean;\n progress: number;\n theme: CircularProgressTheme;\n track: boolean;\n}\n\nexport class CircularProgressFoundation implements ICircularProgressFoundation {\n private _determinate = false;\n private _progress = 0;\n private _theme: CircularProgressTheme = 'primary';\n private _track = true;\n\n constructor(private _adapter: ICircularProgressAdapter) {}\n\n public initialize(): void {\n this._applyDeterminate();\n }\n\n private _applyDeterminate(): void {\n this._adapter.setDeterminate(this._determinate);\n\n if (this._determinate) {\n this._adapter.setProgress(this._progress);\n }\n }\n\n public get determinate(): boolean {\n return this._determinate;\n }\n public set determinate(value: boolean) {\n value = Boolean(value);\n if (this._determinate !== value) {\n this._determinate = value;\n this._applyDeterminate();\n this._adapter.toggleHostAttribute(CIRCULAR_PROGRESS_CONSTANTS.attributes.DETERMINATE, this._determinate);\n }\n }\n\n public get progress(): number {\n return this._progress;\n }\n public set progress(value: number) {\n if (this._progress !== value) {\n this._progress = value;\n if (this._determinate) {\n this._adapter.setProgress(this._progress);\n }\n this._adapter.setHostAttribute(CIRCULAR_PROGRESS_CONSTANTS.attributes.PROGRESS, `${this._progress}`);\n }\n }\n\n public get theme(): CircularProgressTheme {\n return this._theme;\n }\n public set theme(value: CircularProgressTheme) {\n if (this._theme !== value) {\n this._theme = value;\n this._adapter.toggleHostAttribute(CIRCULAR_PROGRESS_CONSTANTS.attributes.THEME, !!this._theme, this._theme);\n }\n }\n\n public get track(): boolean {\n return this._track;\n }\n public set track(value: boolean) {\n value = Boolean(value);\n if (this._track !== value) {\n this._track = value;\n this._adapter.toggleHostAttribute(CIRCULAR_PROGRESS_CONSTANTS.attributes.NO_TRACK, !this._track);\n }\n }\n\n public set ariaLabel(value: string) {\n this._adapter.setAriaLabel(value);\n }\n}\n", "import { CustomElement, attachShadowTemplate, FoundationProperty, coerceBoolean, coerceNumber } from '@tylertech/forge-core';\n\nimport { CircularProgressAdapter } from './circular-progress-adapter';\nimport { CircularProgressFoundation } from './circular-progress-foundation';\nimport { CircularProgressTheme, CIRCULAR_PROGRESS_CONSTANTS } from './circular-progress-constants';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\n\nconst template = '<template><div class=\\\"forge-circular-progress\\\" role=\\\"progressbar\\\" aria-valuemin=\\\"0\\\" aria-valuemax=\\\"1\\\" part=\\\"progressbar\\\"><slot class=\\\"center-content\\\"></slot></div></template>';\nconst styles = ':host{--_circular-progress-size:var(--forge-circular-progress-size, 48px)}:host{display:-webkit-inline-box;display:inline-flex;vertical-align:middle;min-block-size:var(--_circular-progress-size);min-inline-size:var(--_circular-progress-size);position:relative;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;contain:strict;content-visibility:auto}:host([hidden]){display:none}.forge-circular-progress{--_circular-progress-padding:var(--forge-circular-progress-padding, 0);--_circular-progress-track-width:var(--forge-circular-progress-track-width, 12);--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-tertiary-container, #d0d7ff));--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-tertiary, #3d5afe));--_circular-progress-arc-duration:var(--forge-circular-progress-arc-duration, 1333ms);--_circular-progress-theme-transition-duration:var(--forge-circular-progress-theme-transition-duration, var(--forge-animation-duration-short3, 150ms));--_circular-progress-theme-transition-timing:var(--forge-circular-progress-theme-transition-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)))}.forge-circular-progress{-webkit-box-flex:1;flex:1;align-self:stretch;margin:var(--_circular-progress-padding)}.forge-circular-progress--indeterminate{will-change:transform;-webkit-animation:linear infinite linear-rotate;animation:linear infinite linear-rotate;-webkit-animation-duration:calc(var(--_circular-progress-arc-duration) * 360 / 306);animation-duration:calc(var(--_circular-progress-arc-duration) * 360 / 306)}.circle,.forge-circular-progress,.left,.right,.spinner,svg{position:absolute;inset:0}.center-content{display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;width:100%;height:100%}.left{overflow:hidden;inset:0 50% 0 0}.left .circle{rotate:135deg;inset:0 -100% 0 0}.right{overflow:hidden;inset:0 0 0 50%}.right .circle{rotate:100deg;inset:0 0 0 -100%;-webkit-animation-delay:calc(-.5 * var(--_circular-progress-arc-duration)),0s;animation-delay:calc(-.5 * var(--_circular-progress-arc-duration)),0s}.circle{-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:50%;border:solid calc(var(--_circular-progress-size) * var(--_circular-progress-track-width)/ 100);border-color:var(--_circular-progress-indicator-color) var(--_circular-progress-indicator-color) transparent transparent;-webkit-transition:border-color var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);transition:border-color var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);will-change:transform;-webkit-animation:expand-arc;animation:expand-arc;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:var(--_circular-progress-arc-duration),calc(4 * var(--_circular-progress-arc-duration));animation-duration:var(--_circular-progress-arc-duration),calc(4 * var(--_circular-progress-arc-duration));-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1)}svg{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}svg circle{cx:50%;cy:50%;r:calc(50% * (1 - var(--_circular-progress-track-width)/ 100));stroke-width:calc(var(--_circular-progress-track-width) * 1%);stroke-dasharray:100;fill:transparent}.progress{-webkit-transition:stroke-dashoffset .5s cubic-bezier(0, 0, .2, 1),stroke var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);transition:stroke-dashoffset .5s cubic-bezier(0, 0, .2, 1),stroke var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);stroke:var(--_circular-progress-indicator-color)}.track{stroke:transparent}.track-background{-webkit-transition:stroke var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);transition:stroke var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);stroke:var(--_circular-progress-track-color)}.spinner{will-change:transform;-webkit-animation:infinite both rotate-arc;animation:infinite both rotate-arc;-webkit-animation-duration:calc(4 * var(--_circular-progress-arc-duration));animation-duration:calc(4 * var(--_circular-progress-arc-duration));-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1)}:host([theme=primary]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-primary, #3f51b5));--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-primary-container, #d1d5ed))}:host([theme=secondary]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-secondary, #ffc107));--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-secondary-container, #fff0c3))}:host([theme=success]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-success, #2e7d32));--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-success-container, #cde0ce))}:host([theme=error]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-error, #b00020));--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-error-container, #ecc2c9))}:host([theme=warning]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-warning, #d14900));--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-warning-container, #f4d3c2))}:host([theme=info]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-info, #1565c0));--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-info-container, #c7daf0))}:host([no-track]) .forge-circular-progress{--_circular-progress-track-color:var(--forge-circular-progress-track-color, transparent)}@media screen and (forced-colors:active){.progress{stroke:CanvasText}.circle{border-color:CanvasText CanvasText Canvas Canvas}}@-webkit-keyframes expand-arc{0%{-webkit-transform:rotate(265deg);transform:rotate(265deg)}50%{-webkit-transform:rotate(130deg);transform:rotate(130deg)}100%{-webkit-transform:rotate(265deg);transform:rotate(265deg)}}@keyframes expand-arc{0%{-webkit-transform:rotate(265deg);transform:rotate(265deg)}50%{-webkit-transform:rotate(130deg);transform:rotate(130deg)}100%{-webkit-transform:rotate(265deg);transform:rotate(265deg)}}@-webkit-keyframes rotate-arc{12.5%{-webkit-transform:rotate(135deg);transform:rotate(135deg)}25%{-webkit-transform:rotate(270deg);transform:rotate(270deg)}37.5%{-webkit-transform:rotate(405deg);transform:rotate(405deg)}50%{-webkit-transform:rotate(540deg);transform:rotate(540deg)}62.5%{-webkit-transform:rotate(675deg);transform:rotate(675deg)}75%{-webkit-transform:rotate(810deg);transform:rotate(810deg)}87.5%{-webkit-transform:rotate(945deg);transform:rotate(945deg)}100%{-webkit-transform:rotate(1080deg);transform:rotate(1080deg)}}@keyframes rotate-arc{12.5%{-webkit-transform:rotate(135deg);transform:rotate(135deg)}25%{-webkit-transform:rotate(270deg);transform:rotate(270deg)}37.5%{-webkit-transform:rotate(405deg);transform:rotate(405deg)}50%{-webkit-transform:rotate(540deg);transform:rotate(540deg)}62.5%{-webkit-transform:rotate(675deg);transform:rotate(675deg)}75%{-webkit-transform:rotate(810deg);transform:rotate(810deg)}87.5%{-webkit-transform:rotate(945deg);transform:rotate(945deg)}100%{-webkit-transform:rotate(1080deg);transform:rotate(1080deg)}}@-webkit-keyframes linear-rotate{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes linear-rotate{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}';\n\nexport interface ICircularProgressComponent extends IBaseComponent {\n determinate: boolean;\n progress: number;\n theme: CircularProgressTheme;\n track: boolean;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-circular-progress': ICircularProgressComponent;\n }\n}\n\n/**\n * @tag forge-circular-progress\n * \n * @summary\n * Circular progress indicators display progress by animating along a circular track in a clockwise direction.\n * \n * @description\n * Progress indicators inform users about the status of ongoing processes.\n * - Determinate indicators display how long a process will take.\n * - Indeterminate indicators express an unspecified amount of wait time.\n *\n * @property {boolean} determinate - Controls the determinate state.\n * @property {boolean} progress - Controls the progress while in a determinate state. Accepts values from `0` to `1`.\n * @property {CircularProgressTheme} theme - Controls the theme of the progress indicator.\n * @property {boolean} track - Controls the visibility of the track background.\n * \n * @attribute {boolean} determinate - Controls the determinate state.\n * @attribute {boolean} progress - Controls the progress while in a determinate state. Accepts values from `0` to `1`.\n * @attribute {CircularProgressTheme} theme - Controls the theme of the progress indicator.\n * @attribute {boolean} no-track - Controls the visibility of the track background.\n * @attribute {string} data-aria-label - Propagates an `aria-label` to the underlying progressbar element.\n * \n * @slot - The is the default/unnamed slot. Renders content at the center of the progress indicator.\n * \n * @cssproperty --forge-circular-progress-size - The height and width of the indicator container.\n * @cssproperty --forge-circular-progress-padding - The padding inside the bounding box of the container.\n * @cssproperty --forge-circular-progress-track-width - The track indicator width.\n * @cssproperty --forge-circular-progress-track-color - The track background color.\n * @cssproperty --forge-circular-progress-indicator-color - The track indicator color.\n * @cssproperty --forge-circular-progress-arc-duration - The duration of the arc animation.\n * @cssproperty --forge-circular-progress-theme-transition-duration - The duration of the theme transition.\n * @cssproperty --forge-circular-progress-theme-transition-timing - The easing function to use for the theme transition.\n * \n * @csspart progressbar - Styles the progress bar container element\n */\n@CustomElement({\n name: CIRCULAR_PROGRESS_CONSTANTS.elementName\n})\nexport class CircularProgressComponent extends BaseComponent implements ICircularProgressComponent {\n public static get observedAttributes(): string[] {\n return [\n CIRCULAR_PROGRESS_CONSTANTS.attributes.DETERMINATE,\n CIRCULAR_PROGRESS_CONSTANTS.attributes.PROGRESS,\n CIRCULAR_PROGRESS_CONSTANTS.attributes.THEME,\n CIRCULAR_PROGRESS_CONSTANTS.attributes.NO_TRACK,\n CIRCULAR_PROGRESS_CONSTANTS.attributes.ARIA_LABEL\n ];\n }\n\n private _foundation: CircularProgressFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new CircularProgressFoundation(new CircularProgressAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case CIRCULAR_PROGRESS_CONSTANTS.attributes.DETERMINATE:\n this.determinate = coerceBoolean(newValue);\n break;\n case CIRCULAR_PROGRESS_CONSTANTS.attributes.PROGRESS:\n this.progress = coerceNumber(newValue);\n break;\n case CIRCULAR_PROGRESS_CONSTANTS.attributes.THEME:\n this.theme = newValue as CircularProgressTheme;\n break;\n case CIRCULAR_PROGRESS_CONSTANTS.attributes.NO_TRACK:\n this.track = !coerceBoolean(newValue);\n break;\n case CIRCULAR_PROGRESS_CONSTANTS.attributes.ARIA_LABEL:\n this._foundation.ariaLabel = newValue;\n break;\n }\n }\n \n @FoundationProperty()\n public declare determinate: boolean;\n\n @FoundationProperty()\n public declare progress: number;\n\n @FoundationProperty()\n public declare theme: CircularProgressTheme;\n\n @FoundationProperty()\n public declare track: boolean;\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { CircularProgressComponent } from './circular-progress';\n\nexport * from './circular-progress-adapter';\nexport * from './circular-progress-constants';\nexport * from './circular-progress-foundation';\nexport * from './circular-progress';\n\nexport function defineCircularProgressComponent(): void {\n defineCustomElement(CircularProgressComponent);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["elementName", "COMPONENT_NAME_PREFIX", "attributes", "classes", "selectors", "CIRCULAR_PROGRESS_CONSTANTS", "indeterminateTemplate", "determinateTemplate", "CircularProgressAdapter", "BaseAdapter", "component", "getShadowElement", "CIRCULAR_PROGRESS_CONSTANTS", "value", "_a", "toggleAttribute", "elements", "el", "CircularProgressFoundation", "_adapter", "value", "CIRCULAR_PROGRESS_CONSTANTS", "template", "styles", "CircularProgressComponent", "BaseComponent", "attachShadowTemplate", "CircularProgressFoundation", "CircularProgressAdapter", "CIRCULAR_PROGRESS_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "coerceNumber", "__decorateClass", "FoundationProperty", "CustomElement", "defineCircularProgressComponent", "defineCustomElement", "CircularProgressComponent"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import{a as B,b as A,c as C,d as N}from"./chunk.4YFJVHXN.js";import{d as w}from"./chunk.STB2FEUA.js";import{c as y}from"./chunk.FYWPZFLJ.js";import{a as I,d as x,l as E}from"./chunk.AMZZKEAE.js";import{a as k}from"./chunk.PADPL4L3.js";import{p as T}from"./chunk.VFKHRAWD.js";import{a as c}from"./chunk.NVUMRW44.js";import{a as m,b as p,d as _}from"./chunk.36F2GVWS.js";import{a as v,e as h}from"./chunk.JAWV5Y5T.js";import{f as b}from"./chunk.K7FPXAFS.js";import{k as s}from"./chunk.J2M2MXP2.js";import{a as f,b as d,d as i}from"./chunk.M3QDAYD2.js";var S=`${p}icon-button`,D={TOGGLE:"toggle",ON:"on",VARIANT:"variant",THEME:"theme",SHAPE:"shape",DENSITY:"density"},H=d(f({},D),{ARIA_PRESSED:"aria-pressed"}),L={TOGGLE:`${S}-toggle`},F={DEFAULT_VARIANT:"icon",DEFAULT_THEME:"primary",DEFAULT_SHAPE:"circular",DEFAULT_DENSITY:"large"},t={elementName:S,observedAttributes:D,attributes:H,events:L,defaults:F};var g=class extends C{constructor(o){super(o);this._toggle=!1;this._on=!1;this._variant=t.defaults.DEFAULT_VARIANT;this._theme=t.defaults.DEFAULT_THEME;this._shape=t.defaults.DEFAULT_SHAPE;this._density=t.defaults.DEFAULT_DENSITY}async _onClick(o){this._toggle&&this._onToggle(),super._onClick(o)}_onToggle(){let o=this._on;this._on=!this._on;let e=!this._adapter.emitHostEvent(t.events.TOGGLE,this.on,!0,!0);this._on=o,!e&&(this.on=!o)}get toggle(){return this._toggle}set toggle(o){o=!!o,this._toggle!==o&&(this._toggle=o,this._adapter.toggleHostAttribute(t.attributes.ARIA_PRESSED,this._toggle,`${this._on}`),this._adapter.toggleHostAttribute(t.attributes.TOGGLE,this._toggle))}get on(){return this._on}set on(o){o=!!o,this._on!==o&&(this._on=o,this._toggle?this._adapter.setHostAttribute(t.attributes.ARIA_PRESSED,`${this._on}`):this._adapter.removeHostAttribute(t.attributes.ARIA_PRESSED),this._adapter.toggleHostAttribute(t.attributes.ON,this._on))}get variant(){return this._variant}set variant(o){o=o!=null?o:t.defaults.DEFAULT_VARIANT,this._variant!==o&&(this._variant=o,this._variant!==t.defaults.DEFAULT_VARIANT?this._adapter.setHostAttribute(t.attributes.VARIANT,this._variant):this._adapter.removeHostAttribute(t.attributes.VARIANT))}get theme(){return this._theme}set theme(o){o=o!=null?o:t.defaults.DEFAULT_THEME,this._theme!==o&&(this._theme=o,this._theme!==t.defaults.DEFAULT_THEME?this._adapter.setHostAttribute(t.attributes.THEME,this._theme):this._adapter.removeHostAttribute(t.attributes.THEME))}get shape(){return this._shape}set shape(o){o=o!=null?o:t.defaults.DEFAULT_SHAPE,this._shape!==o&&(this._shape=o,this._shape!==t.defaults.DEFAULT_SHAPE?this._adapter.setHostAttribute(t.attributes.SHAPE,this._shape):this._adapter.removeHostAttribute(t.attributes.SHAPE))}get density(){return this._density}set density(o){o=o!=null?o:t.defaults.DEFAULT_DENSITY,this._density!==o&&(this._density=o,this._density!==t.defaults.DEFAULT_DENSITY?this._adapter.setHostAttribute(t.attributes.DENSITY,this._density):this._adapter.removeHostAttribute(t.attributes.DENSITY))}};var l=class extends N{constructor(a){super(a)}};var P='<template><div class="forge-icon-button" part="root"><slot name="start"></slot><slot></slot><slot name="on"></slot><slot name="end"></slot><forge-focus-indicator target=":host" exportparts="indicator:focus-indicator"></forge-focus-indicator><forge-state-layer target=":host" exportparts="surface:state-layer"></forge-state-layer></div></template>',U=":host{--_icon-button-display:var(--forge-icon-button-display, inline-flex);--_icon-button-disabled-cursor:var(--forge-icon-button-disabled-cursor, not-allowed)}:host{display:var(--_icon-button-display);position:relative;outline:0;-webkit-tap-highlight-color:transparent}:host([hidden]){display:none}.forge-icon-button{--_icon-button-size:var(--forge-icon-button-size, 48px);--_icon-button-gap:var(--forge-icon-button-spacing, 0);--_icon-button-icon-color:var(--forge-icon-button-icon-color, inherit);--_icon-button-background-color:var(--forge-icon-button-background-color, none);--_icon-button-icon-size:var(--forge-icon-button-icon-size, calc(var(--forge-typography-font-size, 1rem) * 1.5));--_icon-button-cursor:var(--forge-icon-button-cursor, pointer);--_icon-button-padding:var(--forge-icon-button-padding, var(--forge-spacing-xxsmall, 4px));--_icon-button-border:var(--forge-icon-button-border, none);--_icon-button-shadow:var(--forge-icon-button-shadow, none);--_icon-button-transition-duration:var(--forge-icon-button-transition-duration, var(--forge-animation-duration-short3, 150ms));--_icon-button-transition-timing:var(--forge-icon-button-transition-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_icon-button-shape:var(--forge-icon-button-shape, var(--forge-shape-full, 9999px));--_icon-button-shape-start-start:var(--forge-icon-button-shape-start-start, var(--_icon-button-shape));--_icon-button-shape-start-end:var(--forge-icon-button-shape-start-end, var(--_icon-button-shape));--_icon-button-shape-end-start:var(--forge-icon-button-shape-end-start, var(--_icon-button-shape));--_icon-button-shape-end-end:var(--forge-icon-button-shape-end-end, var(--_icon-button-shape));--_icon-button-shape-squared:var(--forge-icon-button-shape-squared, var(--forge-shape-medium, 4px));--_icon-button-outlined-border-width:var(--forge-icon-button-outlined-border-width, 1px);--_icon-button-outlined-border-style:var(--forge-icon-button-outlined-border-style, solid);--_icon-button-outlined-border-color:var(--forge-icon-button-outlined-border-color, var(--_icon-button-icon-color));--_icon-button-tonal-icon-color:var(--forge-icon-button-tonal-icon-color, var(--forge-theme-on-primary-container, #0f132b));--_icon-button-tonal-background-color:var(--forge-icon-button-tonal-background-color, var(--forge-theme-primary-container, #d1d5ed));--_icon-button-filled-icon-color:var(--forge-icon-button-filled-icon-color, var(--forge-theme-on-primary, #ffffff));--_icon-button-filled-background-color:var(--forge-icon-button-filled-background-color, var(--forge-theme-primary, #3f51b5));--_icon-button-raised-shadow:var(--forge-icon-button-raised-shadow, 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12));--_icon-button-raised-hover-shadow:var(--forge-icon-button-raised-hover-shadow, 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12));--_icon-button-raised-active-shadow:var(--forge-icon-button-raised-active-shadow, 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12));--_icon-button-raised-disabled-shadow:var(--forge-icon-button-raised-disabled-shadow, none);--_icon-button-density-small-size:var(--forge-icon-button-density-small-size, 24px);--_icon-button-density-small-padding:var(--forge-icon-button-density-small-padding, var(--forge-spacing-xxxsmall, 2px));--_icon-button-density-small-icon-size:var(--forge-icon-button-density-small-icon-size, calc(var(--forge-typography-font-size, 1rem) * 1.125));--_icon-button-density-medium-size:var(--forge-icon-button-density-medium-size, 36px);--_icon-button-density-medium-padding:var(--forge-icon-button-density-medium-padding, var(--forge-spacing-xxsmall, 4px));--_icon-button-density-large-size:var(--forge-icon-button-density-large-size, var(--_icon-button-size));--_icon-button-toggle-on-icon-color:var(--forge-icon-button-toggle-on-icon-color, var(--forge-theme-primary, #3f51b5));--_icon-button-outlined-toggle-on-background-color:var(--forge-icon-button-outlined-toggle-on-background-color, var(--forge-theme-primary-container-low, #e8eaf6));--_icon-button-outlined-toggle-on-icon-color:var(--forge-icon-button-outlined-toggle-on-icon-color, var(--forge-theme-primary, #3f51b5));--_icon-button-tonal-toggle-background-color:var(--forge-icon-button-tonal-toggle-background-color, var(--forge-theme-surface-container-low, #ebebeb));--_icon-button-tonal-toggle-on-background-color:var(--forge-icon-button-tonal-toggle-on-background-color, var(--forge-theme-primary-container, #d1d5ed));--_icon-button-tonal-toggle-on-icon-color:var(--forge-icon-button-tonal-toggle-on-icon-color, var(--forge-theme-primary, #3f51b5));--_icon-button-filled-toggle-background-color:var(--forge-icon-button-filled-toggle-background-color, var(--forge-theme-surface-container-low, #ebebeb));--_icon-button-filled-toggle-icon-color:var(--forge-icon-button-filled-toggle-background-color, var(--forge-theme-primary, #3f51b5));--_icon-button-filled-toggle-on-background-color:var(--forge-icon-button-filled-toggle-on-background-color, var(--forge-theme-primary, #3f51b5));--_icon-button-filled-toggle-on-icon-color:var(--forge-icon-button-filled-toggle-on-icon-color, var(--forge-theme-on-primary, #ffffff));--_icon-button-disabled-opacity:var(--forge-icon-button-disabled-opacity, 0.38);--_icon-button-popover-icon-padding:var(--forge-icon-button-popover-icon-padding, var(--forge-spacing-xsmall, 8px));--_icon-button-focus-indicator-color:var(--forge-icon-button-focus-indicator-color, var(--forge-theme-primary, #3f51b5))}.forge-icon-button{position:relative;z-index:0;display:var(--_icon-button-display);-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;gap:var(--_icon-button-gap);-webkit-box-sizing:border-box;box-sizing:border-box;height:var(--_icon-button-density-large-size);min-width:var(--_icon-button-density-large-size);border:var(--_icon-button-border);border-start-start-radius:var(--_icon-button-shape-start-start);border-start-end-radius:var(--_icon-button-shape-start-end);border-end-start-radius:var(--_icon-button-shape-end-start);border-end-end-radius:var(--_icon-button-shape-end-end);padding:var(--_icon-button-padding);-webkit-box-shadow:var(--_icon-button-shadow);box-shadow:var(--_icon-button-shadow);color:var(--_icon-button-icon-color);background:var(--_icon-button-background-color);font-size:var(--_icon-button-icon-size);cursor:var(--_icon-button-cursor);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition-property:background,-webkit-box-shadow;transition-property:background,-webkit-box-shadow;transition-property:box-shadow,background;transition-property:box-shadow,background,-webkit-box-shadow;-webkit-transition-duration:var(--_icon-button-transition-duration);transition-duration:var(--_icon-button-transition-duration);-webkit-transition-timing-function:var(--_icon-button-transition-timing);transition-timing-function:var(--_icon-button-transition-timing)}.forge-icon-button ::slotted(:is([slot=start],[slot=end])){font-size:var(--_icon-button-icon-size);height:var(--_icon-button-icon-size);width:var(--_icon-button-icon-size);font-weight:inherit}a{position:absolute;inset:0;text-decoration:none}forge-focus-indicator{--forge-focus-indicator-color:var(--_icon-button-focus-indicator-color);--forge-focus-indicator-shape-start-start:var(--_icon-button-shape-start-start);--forge-focus-indicator-shape-start-end:var(--_icon-button-shape-start-end);--forge-focus-indicator-shape-end-start:var(--_icon-button-shape-end-start);--forge-focus-indicator-shape-end-end:var(--_icon-button-shape-end-end)}:host(:is([variant=icon],:not([variant]))){--forge-focus-indicator-outward-offset:0px}forge-state-layer{--forge-state-layer-color:var(--_icon-button-icon-color)}:host([popover-icon]) .forge-icon-button{--_icon-button-padding:var(--_icon-button-popover-icon-padding)}:host([variant=outlined]) .forge-icon-button{border-width:var(--_icon-button-outlined-border-width);border-style:var(--_icon-button-outlined-border-style);border-color:var(--_icon-button-outlined-border-color)}:host([variant=tonal]) .forge-icon-button{--_icon-button-icon-color:var(--_icon-button-tonal-icon-color);--_icon-button-background-color:var(--_icon-button-tonal-background-color)}:host(:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--_icon-button-filled-icon-color);--_icon-button-background-color:var(--_icon-button-filled-background-color)}:host([variant=raised]) .forge-icon-button{--_icon-button-shadow:var(--_icon-button-raised-shadow)}:host([variant=raised]) .forge-icon-button:hover{--_icon-button-raised-shadow:var(--_icon-button-raised-hover-shadow)}:host([variant=raised]) .forge-icon-button:active{--_icon-button-raised-shadow:var(--_icon-button-raised-active-shadow)}:host(:is(:not([toggle]),[toggle]:not([on]))) slot[name=on]{display:none}:host([toggle][on]) slot:not([name]){display:none}:host([toggle][on]:is(:not([variant]),[variant=icon])) .forge-icon-button{--_icon-button-icon-color:var(--_icon-button-toggle-on-icon-color)}:host([toggle][on][variant=outlined]) .forge-icon-button{--_icon-button-background-color:var(--_icon-button-outlined-toggle-on-background-color);--_icon-button-icon-color:var(--_icon-button-outlined-toggle-on-icon-color)}:host([toggle]:not([on])[variant=tonal]) .forge-icon-button{--_icon-button-background-color:var(--_icon-button-tonal-toggle-background-color)}:host([toggle][on][variant=tonal]) .forge-icon-button{--_icon-button-icon-color:var(--_icon-button-tonal-toggle-on-icon-color);--_icon-button-background-color:var(--_icon-button-tonal-toggle-on-background-color)}:host([toggle]:not([on]):is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--_icon-button-filled-toggle-icon-color);--_icon-button-background-color:var(--_icon-button-filled-toggle-background-color)}:host([toggle][on]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--_icon-button-filled-toggle-on-icon-color);--_icon-button-background-color:var(--_icon-button-filled-toggle-on-background-color)}:host(:is([dense],[density=small])) .forge-icon-button{--_icon-button-size:var(--_icon-button-density-small-size);--_icon-button-icon-size:var(--_icon-button-density-small-icon-size);--_icon-button-padding:var(--_icon-button-density-small-padding)}:host(:is([dense],[density=small])) ::slotted(*){font-size:var(--_icon-button-density-small-icon-size)}:host([density=medium]) .forge-icon-button{--_icon-button-size:var(--_icon-button-density-medium-size);--_icon-button-padding:var(--_icon-button-density-medium-padding)}:host([shape=squared]) .forge-icon-button{--_icon-button-shape:var(--_icon-button-shape-squared)}:host([disabled]){cursor:var(--_icon-button-disabled-cursor)}:host([disabled]) .forge-icon-button{pointer-events:none;opacity:var(--_icon-button-disabled-opacity)}:host([disabled][variant=raised]) .forge-icon-button{--_icon-button-raised-shadow:var(--_icon-button-raised-disabled-shadow)}:host(:not([toggle])[theme=primary]:is(:not([variant]),[variant=icon],[variant=outlined])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-primary, #3f51b5))}:host([toggle][theme=primary]:is(:not([variant]),[variant=icon])) .forge-icon-button{--_icon-button-toggle-on-icon-color:var(--forge-icon-button-toggle-on-icon-color, var(--forge-theme-primary, #3f51b5))}:host([toggle][theme=primary][variant=outlined]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-primary, #3f51b5));--_icon-button-outlined-toggle-on-background-color:var(--forge-icon-button-outlined-toggle-on-background-color, var(--forge-theme-primary-container-low, #e8eaf6));--_icon-button-outlined-toggle-on-icon-color:var(--forge-icon-button-outlined-toggle-on-icon-color, var(--forge-theme-primary, #3f51b5))}:host([theme=primary]) .forge-icon-button{--_icon-button-focus-indicator-color:var(--forge-icon-button-focus-indicator-color, var(--forge-theme-primary, #3f51b5))}:host(:not([toggle])[theme=secondary]:is(:not([variant]),[variant=icon],[variant=outlined])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-secondary, #ffc107))}:host([toggle][theme=secondary]:is(:not([variant]),[variant=icon])) .forge-icon-button{--_icon-button-toggle-on-icon-color:var(--forge-icon-button-toggle-on-icon-color, var(--forge-theme-secondary, #ffc107))}:host([toggle][theme=secondary][variant=outlined]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-secondary, #ffc107));--_icon-button-outlined-toggle-on-background-color:var(--forge-icon-button-outlined-toggle-on-background-color, var(--forge-theme-secondary-container-low, #fff8e1));--_icon-button-outlined-toggle-on-icon-color:var(--forge-icon-button-outlined-toggle-on-icon-color, var(--forge-theme-secondary, #ffc107))}:host(:not([toggle])[theme=secondary][variant=tonal]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-secondary-container, #3d2e02));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-secondary-container, #fff0c3))}:host([toggle]:not([on])[theme=secondary][variant=tonal]) .forge-icon-button{--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-secondary-container-low, #fff8e1))}:host([toggle][theme=secondary][variant=tonal]) .forge-icon-button{--_icon-button-tonal-toggle-on-background-color:var(--forge-icon-button-tonal-toggle-on-background-color, var(--forge-theme-secondary-container, #fff0c3));--_icon-button-tonal-toggle-on-icon-color:var(--forge-icon-button-tonal-toggle-on-icon-color, var(--forge-theme-on-secondary-container, #3d2e02))}:host(:not([toggle])[theme=secondary]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-secondary, #000000));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-secondary, #ffc107))}:host([toggle]:not([on])[theme=secondary]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-secondary, #ffc107));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-secondary-container-low, #fff8e1))}:host([toggle][theme=secondary]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-filled-toggle-on-background-color:var(--forge-icon-button-filled-toggle-on-background-color, var(--forge-theme-secondary, #ffc107));--_icon-button-filled-toggle-on-icon-color:var(--forge-icon-button-filled-toggle-on-icon-color, var(--forge-theme-on-secondary, #000000))}:host([theme=secondary]) .forge-icon-button{--_icon-button-focus-indicator-color:var(--forge-icon-button-focus-indicator-color, var(--forge-theme-secondary, #ffc107))}:host(:not([toggle])[theme=tertiary]:is(:not([variant]),[variant=icon],[variant=outlined])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-tertiary, #3d5afe))}:host([toggle][theme=tertiary]:is(:not([variant]),[variant=icon])) .forge-icon-button{--_icon-button-toggle-on-icon-color:var(--forge-icon-button-toggle-on-icon-color, var(--forge-theme-tertiary, #3d5afe))}:host([toggle][theme=tertiary][variant=outlined]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-tertiary, #3d5afe));--_icon-button-outlined-toggle-on-background-color:var(--forge-icon-button-outlined-toggle-on-background-color, var(--forge-theme-tertiary-container-low, #e8ebff));--_icon-button-outlined-toggle-on-icon-color:var(--forge-icon-button-outlined-toggle-on-icon-color, var(--forge-theme-tertiary, #3d5afe))}:host(:not([toggle])[theme=tertiary][variant=tonal]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-tertiary-container, #0f163d));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-tertiary-container, #d0d7ff))}:host([toggle]:not([on])[theme=tertiary][variant=tonal]) .forge-icon-button{--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-tertiary-container-low, #e8ebff))}:host([toggle][theme=tertiary][variant=tonal]) .forge-icon-button{--_icon-button-tonal-toggle-on-background-color:var(--forge-icon-button-tonal-toggle-on-background-color, var(--forge-theme-tertiary-container, #d0d7ff));--_icon-button-tonal-toggle-on-icon-color:var(--forge-icon-button-tonal-toggle-on-icon-color, var(--forge-theme-on-tertiary-container, #0f163d))}:host(:not([toggle])[theme=tertiary]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-tertiary, #ffffff));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-tertiary, #3d5afe))}:host([toggle]:not([on])[theme=tertiary]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-tertiary, #3d5afe));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-tertiary-container-low, #e8ebff))}:host([toggle][theme=tertiary]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-filled-toggle-on-background-color:var(--forge-icon-button-filled-toggle-on-background-color, var(--forge-theme-tertiary, #3d5afe));--_icon-button-filled-toggle-on-icon-color:var(--forge-icon-button-filled-toggle-on-icon-color, var(--forge-theme-on-tertiary, #ffffff))}:host([theme=tertiary]) .forge-icon-button{--_icon-button-focus-indicator-color:var(--forge-icon-button-focus-indicator-color, var(--forge-theme-tertiary, #3d5afe))}:host(:not([toggle])[theme=success]:is(:not([variant]),[variant=icon],[variant=outlined])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-success, #2e7d32))}:host([toggle][theme=success]:is(:not([variant]),[variant=icon])) .forge-icon-button{--_icon-button-toggle-on-icon-color:var(--forge-icon-button-toggle-on-icon-color, var(--forge-theme-success, #2e7d32))}:host([toggle][theme=success][variant=outlined]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-success, #2e7d32));--_icon-button-outlined-toggle-on-background-color:var(--forge-icon-button-outlined-toggle-on-background-color, var(--forge-theme-success-container-low, #e6efe6));--_icon-button-outlined-toggle-on-icon-color:var(--forge-icon-button-outlined-toggle-on-icon-color, var(--forge-theme-success, #2e7d32))}:host(:not([toggle])[theme=success][variant=tonal]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-success-container, #0b1e0c));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-success-container, #cde0ce))}:host([toggle]:not([on])[theme=success][variant=tonal]) .forge-icon-button{--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-success-container-low, #e6efe6))}:host([toggle][theme=success][variant=tonal]) .forge-icon-button{--_icon-button-tonal-toggle-on-background-color:var(--forge-icon-button-tonal-toggle-on-background-color, var(--forge-theme-success-container, #cde0ce));--_icon-button-tonal-toggle-on-icon-color:var(--forge-icon-button-tonal-toggle-on-icon-color, var(--forge-theme-on-success-container, #0b1e0c))}:host(:not([toggle])[theme=success]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-success, #ffffff));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-success, #2e7d32))}:host([toggle]:not([on])[theme=success]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-success, #2e7d32));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-success-container-low, #e6efe6))}:host([toggle][theme=success]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-filled-toggle-on-background-color:var(--forge-icon-button-filled-toggle-on-background-color, var(--forge-theme-success, #2e7d32));--_icon-button-filled-toggle-on-icon-color:var(--forge-icon-button-filled-toggle-on-icon-color, var(--forge-theme-on-success, #ffffff))}:host([theme=success]) .forge-icon-button{--_icon-button-focus-indicator-color:var(--forge-icon-button-focus-indicator-color, var(--forge-theme-success, #2e7d32))}:host(:not([toggle])[theme=error]:is(:not([variant]),[variant=icon],[variant=outlined])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-error, #b00020))}:host([toggle][theme=error]:is(:not([variant]),[variant=icon])) .forge-icon-button{--_icon-button-toggle-on-icon-color:var(--forge-icon-button-toggle-on-icon-color, var(--forge-theme-error, #b00020))}:host([toggle][theme=error][variant=outlined]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-error, #b00020));--_icon-button-outlined-toggle-on-background-color:var(--forge-icon-button-outlined-toggle-on-background-color, var(--forge-theme-error-container-low, #f6e0e4));--_icon-button-outlined-toggle-on-icon-color:var(--forge-icon-button-outlined-toggle-on-icon-color, var(--forge-theme-error, #b00020))}:host(:not([toggle])[theme=error][variant=tonal]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-error-container, #2a0008));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-error-container, #ecc2c9))}:host([toggle]:not([on])[theme=error][variant=tonal]) .forge-icon-button{--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-error-container-low, #f6e0e4))}:host([toggle][theme=error][variant=tonal]) .forge-icon-button{--_icon-button-tonal-toggle-on-background-color:var(--forge-icon-button-tonal-toggle-on-background-color, var(--forge-theme-error-container, #ecc2c9));--_icon-button-tonal-toggle-on-icon-color:var(--forge-icon-button-tonal-toggle-on-icon-color, var(--forge-theme-on-error-container, #2a0008))}:host(:not([toggle])[theme=error]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-error, #ffffff));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-error, #b00020))}:host([toggle]:not([on])[theme=error]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-error, #b00020));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-error-container-low, #f6e0e4))}:host([toggle][theme=error]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-filled-toggle-on-background-color:var(--forge-icon-button-filled-toggle-on-background-color, var(--forge-theme-error, #b00020));--_icon-button-filled-toggle-on-icon-color:var(--forge-icon-button-filled-toggle-on-icon-color, var(--forge-theme-on-error, #ffffff))}:host([theme=error]) .forge-icon-button{--_icon-button-focus-indicator-color:var(--forge-icon-button-focus-indicator-color, var(--forge-theme-error, #b00020))}:host(:not([toggle])[theme=warning]:is(:not([variant]),[variant=icon],[variant=outlined])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-warning, #d14900))}:host([toggle][theme=warning]:is(:not([variant]),[variant=icon])) .forge-icon-button{--_icon-button-toggle-on-icon-color:var(--forge-icon-button-toggle-on-icon-color, var(--forge-theme-warning, #d14900))}:host([toggle][theme=warning][variant=outlined]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-warning, #d14900));--_icon-button-outlined-toggle-on-background-color:var(--forge-icon-button-outlined-toggle-on-background-color, var(--forge-theme-warning-container-low, #f9e9e0));--_icon-button-outlined-toggle-on-icon-color:var(--forge-icon-button-outlined-toggle-on-icon-color, var(--forge-theme-warning, #d14900))}:host(:not([toggle])[theme=warning][variant=tonal]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-warning-container, #321200));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-warning-container, #f4d3c2))}:host([toggle]:not([on])[theme=warning][variant=tonal]) .forge-icon-button{--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-warning-container-low, #f9e9e0))}:host([toggle][theme=warning][variant=tonal]) .forge-icon-button{--_icon-button-tonal-toggle-on-background-color:var(--forge-icon-button-tonal-toggle-on-background-color, var(--forge-theme-warning-container, #f4d3c2));--_icon-button-tonal-toggle-on-icon-color:var(--forge-icon-button-tonal-toggle-on-icon-color, var(--forge-theme-on-warning-container, #321200))}:host(:not([toggle])[theme=warning]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-warning, #ffffff));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-warning, #d14900))}:host([toggle]:not([on])[theme=warning]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-warning, #d14900));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-warning-container-low, #f9e9e0))}:host([toggle][theme=warning]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-filled-toggle-on-background-color:var(--forge-icon-button-filled-toggle-on-background-color, var(--forge-theme-warning, #d14900));--_icon-button-filled-toggle-on-icon-color:var(--forge-icon-button-filled-toggle-on-icon-color, var(--forge-theme-on-warning, #ffffff))}:host([theme=warning]) .forge-icon-button{--_icon-button-focus-indicator-color:var(--forge-icon-button-focus-indicator-color, var(--forge-theme-warning, #d14900))}:host(:not([toggle])[theme=info]:is(:not([variant]),[variant=icon],[variant=outlined])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-info, #1565c0))}:host([toggle][theme=info]:is(:not([variant]),[variant=icon])) .forge-icon-button{--_icon-button-toggle-on-icon-color:var(--forge-icon-button-toggle-on-icon-color, var(--forge-theme-info, #1565c0))}:host([toggle][theme=info][variant=outlined]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-info, #1565c0));--_icon-button-outlined-toggle-on-background-color:var(--forge-icon-button-outlined-toggle-on-background-color, var(--forge-theme-info-container-low, #e3edf7));--_icon-button-outlined-toggle-on-icon-color:var(--forge-icon-button-outlined-toggle-on-icon-color, var(--forge-theme-info, #1565c0))}:host(:not([toggle])[theme=info][variant=tonal]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-info-container, #05182e));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-info-container, #c7daf0))}:host([toggle]:not([on])[theme=info][variant=tonal]) .forge-icon-button{--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-info-container-low, #e3edf7))}:host([toggle][theme=info][variant=tonal]) .forge-icon-button{--_icon-button-tonal-toggle-on-background-color:var(--forge-icon-button-tonal-toggle-on-background-color, var(--forge-theme-info-container, #c7daf0));--_icon-button-tonal-toggle-on-icon-color:var(--forge-icon-button-tonal-toggle-on-icon-color, var(--forge-theme-on-info-container, #05182e))}:host(:not([toggle])[theme=info]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-info, #ffffff));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-info, #1565c0))}:host([toggle]:not([on])[theme=info]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-info, #1565c0));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-info-container-low, #e3edf7))}:host([toggle][theme=info]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-filled-toggle-on-background-color:var(--forge-icon-button-filled-toggle-on-background-color, var(--forge-theme-info, #1565c0));--_icon-button-filled-toggle-on-icon-color:var(--forge-icon-button-filled-toggle-on-icon-color, var(--forge-theme-on-info, #ffffff))}:host([theme=info]) .forge-icon-button{--_icon-button-focus-indicator-color:var(--forge-icon-button-focus-indicator-color, var(--forge-theme-info, #1565c0))}",r=class extends A{constructor(){super();x.define(y),h(this,P,U),this._foundation=new g(new l(this))}static get observedAttributes(){return[...Object.values(B.observedAttributes),...Object.values(t.observedAttributes)]}attributeChangedCallback(o,e,n){switch(o){case t.attributes.TOGGLE:this.toggle=s(n);break;case t.attributes.ON:this.on=s(n);break;case t.attributes.VARIANT:this.variant=n;break;case t.attributes.THEME:this.theme=n;break;case t.attributes.SHAPE:this.shape=n;break;case t.attributes.DENSITY:this.density=n;break}super.attributeChangedCallback(o,e,n)}};i([c()],r.prototype,"toggle",2),i([c()],r.prototype,"on",2),i([c()],r.prototype,"theme",2),i([c()],r.prototype,"variant",2),i([c()],r.prototype,"shape",2),i([c()],r.prototype,"density",2),r=i([m({name:t.elementName,dependencies:[w,T,E]})],r);var z=class extends k{constructor(o){super(o)}_build(){var e;let o=document.createElement(t.elementName);if((e=this._config.options)!=null&&e.tooltip){let n=document.createElement("forge-tooltip");n.textContent=this._config.options.tooltip,this._config.options.tooltipPosition&&(n.position=this._config.options.tooltipPosition),o.appendChild(n)}return o}get iconElement(){return this._iconElement}get disabled(){return!!this._element.disabled}set disabled(o){this._element.disabled=o}_configure(){this._configureIcon()}_configureIcon(){var e,n;if(!((e=this._config.options)!=null&&e.iconName))return;switch(((n=this._config.options)==null?void 0:n.iconType)||"component"){case"font":let O=Array.isArray(this._config.options.iconClass)?this._config.options.iconClass:[_];b(O,this._element),this._element.textContent=this._config.options.iconName;break;case"component":this._iconElement=document.createElement(I.elementName),this._iconElement.name=this._config.options.iconName,this._config.options.iconExternal!==void 0&&(this._iconElement.external=!!this._config.options.iconExternal),this._config.options.iconExternalType&&(this._iconElement.externalType=this._config.options.iconExternalType),this._config.options.iconClass&&b(this._config.options.iconClass,this._iconElement),this._element.appendChild(this._iconElement);break}}onClick(o){this._element.addEventListener("click",o)}onFocus(o){this._element.addEventListener("focus",e=>o(e))}onBlur(o){this._element.addEventListener("blur",e=>o(e))}};function Do(){v(r)}export{t as a,r as b,z as c,Do as d};
|
|
7
|
+
//# sourceMappingURL=chunk.FAXYCG55.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/icon-button/icon-button-constants.ts", "../../src/icon-button/icon-button-foundation.ts", "../../src/icon-button/icon-button-adapter.ts", "../../src/icon-button/icon-button.ts", "../../src/icon-button/icon-button-component-delegate.ts", "../../src/icon-button/index.ts"],
|
|
4
|
+
"sourcesContent": ["import { COMPONENT_NAME_PREFIX, Theme } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}icon-button`;\n\nconst observedAttributes = {\n TOGGLE: 'toggle',\n ON: 'on',\n VARIANT: 'variant',\n THEME: 'theme',\n SHAPE: 'shape',\n DENSITY: 'density'\n};\n\nconst attributes = {\n ...observedAttributes,\n ARIA_PRESSED: 'aria-pressed'\n};\n\nconst events = {\n TOGGLE: `${elementName}-toggle`\n};\n\nconst defaults = {\n DEFAULT_VARIANT: 'icon' as IconButtonVariant,\n DEFAULT_THEME: 'primary' as IconButtonTheme,\n DEFAULT_SHAPE: 'circular' as IconButtonShape,\n DEFAULT_DENSITY: 'large' as IconButtonDensity\n};\n\nexport const ICON_BUTTON_CONSTANTS = {\n elementName,\n observedAttributes,\n attributes,\n events,\n defaults\n};\n\nexport type IconButtonVariant = 'icon' | 'outlined' | 'tonal' | 'filled' | 'raised';\nexport type IconButtonTheme = Theme;\nexport type IconButtonShape = 'circular' | 'squared';\nexport type IconButtonDensity = 'small' | 'medium' | 'large';\n", "import { BaseButtonFoundation, IBaseButtonFoundation } from '../button/base/base-button-foundation';\nimport { IIconButtonAdapter } from './icon-button-adapter';\nimport { IconButtonDensity, IconButtonShape, IconButtonTheme, IconButtonVariant, ICON_BUTTON_CONSTANTS } from './icon-button-constants';\n\nexport interface IIconButtonFoundation extends IBaseButtonFoundation {\n toggle: boolean;\n on: boolean;\n variant: IconButtonVariant;\n theme: IconButtonTheme;\n shape: IconButtonShape;\n density: IconButtonDensity;\n}\n\nexport class IconButtonFoundation extends BaseButtonFoundation<IIconButtonAdapter> implements IIconButtonFoundation {\n private _toggle = false;\n private _on = false;\n private _variant: IconButtonVariant = ICON_BUTTON_CONSTANTS.defaults.DEFAULT_VARIANT;\n private _theme: IconButtonTheme = ICON_BUTTON_CONSTANTS.defaults.DEFAULT_THEME;\n private _shape: IconButtonShape = ICON_BUTTON_CONSTANTS.defaults.DEFAULT_SHAPE;\n private _density: IconButtonDensity = ICON_BUTTON_CONSTANTS.defaults.DEFAULT_DENSITY;\n\n constructor(adapter: IIconButtonAdapter) {\n super(adapter);\n }\n\n protected override async _onClick(evt: MouseEvent): Promise<void> {\n if (this._toggle) {\n this._onToggle();\n }\n super._onClick(evt);\n }\n\n private _onToggle(): void {\n // Update internal state first so listeners can access the new state\n const originalOn = this._on;\n this._on = !this._on;\n\n const cancelled = !this._adapter.emitHostEvent(ICON_BUTTON_CONSTANTS.events.TOGGLE, this.on, true, true);\n this._on = originalOn;\n\n if (cancelled) {\n return;\n }\n\n this.on = !originalOn;\n }\n\n public get toggle(): boolean {\n return this._toggle;\n }\n public set toggle(value: boolean) {\n value = !!value;\n if (this._toggle !== value) {\n this._toggle = value;\n this._adapter.toggleHostAttribute(ICON_BUTTON_CONSTANTS.attributes.ARIA_PRESSED, this._toggle, `${this._on}`);\n this._adapter.toggleHostAttribute(ICON_BUTTON_CONSTANTS.attributes.TOGGLE, this._toggle);\n }\n }\n\n public get on(): boolean {\n return this._on;\n }\n public set on(value: boolean) {\n value = !!value;\n if (this._on !== value) {\n this._on = value;\n \n if (this._toggle) {\n this._adapter.setHostAttribute(ICON_BUTTON_CONSTANTS.attributes.ARIA_PRESSED, `${this._on}`);\n } else {\n this._adapter.removeHostAttribute(ICON_BUTTON_CONSTANTS.attributes.ARIA_PRESSED);\n }\n\n this._adapter.toggleHostAttribute(ICON_BUTTON_CONSTANTS.attributes.ON, this._on);\n }\n }\n\n public get variant(): IconButtonVariant {\n return this._variant;\n }\n public set variant(value: IconButtonVariant) {\n value = value ?? ICON_BUTTON_CONSTANTS.defaults.DEFAULT_VARIANT;\n if (this._variant !== value) {\n this._variant = value;\n\n if (this._variant !== ICON_BUTTON_CONSTANTS.defaults.DEFAULT_VARIANT) {\n this._adapter.setHostAttribute(ICON_BUTTON_CONSTANTS.attributes.VARIANT, this._variant);\n } else {\n this._adapter.removeHostAttribute(ICON_BUTTON_CONSTANTS.attributes.VARIANT);\n }\n }\n }\n\n public get theme(): IconButtonTheme {\n return this._theme;\n }\n public set theme(value: IconButtonTheme) {\n value = value ?? ICON_BUTTON_CONSTANTS.defaults.DEFAULT_THEME;\n if (this._theme !== value) {\n this._theme = value;\n\n if (this._theme !== ICON_BUTTON_CONSTANTS.defaults.DEFAULT_THEME) {\n this._adapter.setHostAttribute(ICON_BUTTON_CONSTANTS.attributes.THEME, this._theme);\n } else {\n this._adapter.removeHostAttribute(ICON_BUTTON_CONSTANTS.attributes.THEME);\n }\n }\n }\n\n public get shape(): IconButtonShape {\n return this._shape;\n }\n public set shape(value: IconButtonShape) {\n value = value ?? ICON_BUTTON_CONSTANTS.defaults.DEFAULT_SHAPE;\n if (this._shape !== value) {\n this._shape = value;\n\n if (this._shape !== ICON_BUTTON_CONSTANTS.defaults.DEFAULT_SHAPE) {\n this._adapter.setHostAttribute(ICON_BUTTON_CONSTANTS.attributes.SHAPE, this._shape);\n } else {\n this._adapter.removeHostAttribute(ICON_BUTTON_CONSTANTS.attributes.SHAPE);\n }\n }\n }\n\n public get density(): IconButtonDensity {\n return this._density;\n }\n public set density(value: IconButtonDensity) {\n value = value ?? ICON_BUTTON_CONSTANTS.defaults.DEFAULT_DENSITY;\n if (this._density !== value) {\n this._density = value;\n\n if (this._density !== ICON_BUTTON_CONSTANTS.defaults.DEFAULT_DENSITY) {\n this._adapter.setHostAttribute(ICON_BUTTON_CONSTANTS.attributes.DENSITY, this._density);\n } else {\n this._adapter.removeHostAttribute(ICON_BUTTON_CONSTANTS.attributes.DENSITY);\n }\n }\n }\n}\n", "import { BaseButtonAdapter, IBaseButtonAdapter } from '../button/base/base-button-adapter';\nimport { IIconButtonComponent } from './icon-button';\n\nexport interface IIconButtonAdapter extends IBaseButtonAdapter {}\n\nexport class IconButtonAdapter extends BaseButtonAdapter implements IIconButtonAdapter {\n constructor(component: IIconButtonComponent) {\n super(component);\n }\n}\n", "import { attachShadowTemplate, coerceBoolean, CustomElement, FoundationProperty, toggleAttribute } from '@tylertech/forge-core';\nimport { tylIconArrowDropDown } from '@tylertech/tyler-icons/standard';\nimport { IconComponent, IconRegistry } from '../icon';\nimport { BaseButton, IBaseButton } from '../button/base/base-button';\nimport { BASE_BUTTON_CONSTANTS } from '../button/base/base-button-constants';\nimport { FocusIndicatorComponent } from '../focus-indicator';\nimport { StateLayerComponent } from '../state-layer';\nimport { IconButtonDensity, IconButtonShape, IconButtonTheme, IconButtonVariant, ICON_BUTTON_CONSTANTS } from './icon-button-constants';\nimport { IconButtonFoundation } from './icon-button-foundation';\nimport { IconButtonAdapter } from './icon-button-adapter';\n\nconst template = '<template><div class=\\\"forge-icon-button\\\" part=\\\"root\\\"><slot name=\\\"start\\\"></slot><slot></slot><slot name=\\\"on\\\"></slot><slot name=\\\"end\\\"></slot><forge-focus-indicator target=\\\":host\\\" exportparts=\\\"indicator:focus-indicator\\\"></forge-focus-indicator><forge-state-layer target=\\\":host\\\" exportparts=\\\"surface:state-layer\\\"></forge-state-layer></div></template>';\nconst styles = ':host{--_icon-button-display:var(--forge-icon-button-display, inline-flex);--_icon-button-disabled-cursor:var(--forge-icon-button-disabled-cursor, not-allowed)}:host{display:var(--_icon-button-display);position:relative;outline:0;-webkit-tap-highlight-color:transparent}:host([hidden]){display:none}.forge-icon-button{--_icon-button-size:var(--forge-icon-button-size, 48px);--_icon-button-gap:var(--forge-icon-button-spacing, 0);--_icon-button-icon-color:var(--forge-icon-button-icon-color, inherit);--_icon-button-background-color:var(--forge-icon-button-background-color, none);--_icon-button-icon-size:var(--forge-icon-button-icon-size, calc(var(--forge-typography-font-size, 1rem) * 1.5));--_icon-button-cursor:var(--forge-icon-button-cursor, pointer);--_icon-button-padding:var(--forge-icon-button-padding, var(--forge-spacing-xxsmall, 4px));--_icon-button-border:var(--forge-icon-button-border, none);--_icon-button-shadow:var(--forge-icon-button-shadow, none);--_icon-button-transition-duration:var(--forge-icon-button-transition-duration, var(--forge-animation-duration-short3, 150ms));--_icon-button-transition-timing:var(--forge-icon-button-transition-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_icon-button-shape:var(--forge-icon-button-shape, var(--forge-shape-full, 9999px));--_icon-button-shape-start-start:var(--forge-icon-button-shape-start-start, var(--_icon-button-shape));--_icon-button-shape-start-end:var(--forge-icon-button-shape-start-end, var(--_icon-button-shape));--_icon-button-shape-end-start:var(--forge-icon-button-shape-end-start, var(--_icon-button-shape));--_icon-button-shape-end-end:var(--forge-icon-button-shape-end-end, var(--_icon-button-shape));--_icon-button-shape-squared:var(--forge-icon-button-shape-squared, var(--forge-shape-medium, 4px));--_icon-button-outlined-border-width:var(--forge-icon-button-outlined-border-width, 1px);--_icon-button-outlined-border-style:var(--forge-icon-button-outlined-border-style, solid);--_icon-button-outlined-border-color:var(--forge-icon-button-outlined-border-color, var(--_icon-button-icon-color));--_icon-button-tonal-icon-color:var(--forge-icon-button-tonal-icon-color, var(--forge-theme-on-primary-container, #0f132b));--_icon-button-tonal-background-color:var(--forge-icon-button-tonal-background-color, var(--forge-theme-primary-container, #d1d5ed));--_icon-button-filled-icon-color:var(--forge-icon-button-filled-icon-color, var(--forge-theme-on-primary, #ffffff));--_icon-button-filled-background-color:var(--forge-icon-button-filled-background-color, var(--forge-theme-primary, #3f51b5));--_icon-button-raised-shadow:var(--forge-icon-button-raised-shadow, 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12));--_icon-button-raised-hover-shadow:var(--forge-icon-button-raised-hover-shadow, 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12));--_icon-button-raised-active-shadow:var(--forge-icon-button-raised-active-shadow, 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12));--_icon-button-raised-disabled-shadow:var(--forge-icon-button-raised-disabled-shadow, none);--_icon-button-density-small-size:var(--forge-icon-button-density-small-size, 24px);--_icon-button-density-small-padding:var(--forge-icon-button-density-small-padding, var(--forge-spacing-xxxsmall, 2px));--_icon-button-density-small-icon-size:var(--forge-icon-button-density-small-icon-size, calc(var(--forge-typography-font-size, 1rem) * 1.125));--_icon-button-density-medium-size:var(--forge-icon-button-density-medium-size, 36px);--_icon-button-density-medium-padding:var(--forge-icon-button-density-medium-padding, var(--forge-spacing-xxsmall, 4px));--_icon-button-density-large-size:var(--forge-icon-button-density-large-size, var(--_icon-button-size));--_icon-button-toggle-on-icon-color:var(--forge-icon-button-toggle-on-icon-color, var(--forge-theme-primary, #3f51b5));--_icon-button-outlined-toggle-on-background-color:var(--forge-icon-button-outlined-toggle-on-background-color, var(--forge-theme-primary-container-low, #e8eaf6));--_icon-button-outlined-toggle-on-icon-color:var(--forge-icon-button-outlined-toggle-on-icon-color, var(--forge-theme-primary, #3f51b5));--_icon-button-tonal-toggle-background-color:var(--forge-icon-button-tonal-toggle-background-color, var(--forge-theme-surface-container-low, #ebebeb));--_icon-button-tonal-toggle-on-background-color:var(--forge-icon-button-tonal-toggle-on-background-color, var(--forge-theme-primary-container, #d1d5ed));--_icon-button-tonal-toggle-on-icon-color:var(--forge-icon-button-tonal-toggle-on-icon-color, var(--forge-theme-primary, #3f51b5));--_icon-button-filled-toggle-background-color:var(--forge-icon-button-filled-toggle-background-color, var(--forge-theme-surface-container-low, #ebebeb));--_icon-button-filled-toggle-icon-color:var(--forge-icon-button-filled-toggle-background-color, var(--forge-theme-primary, #3f51b5));--_icon-button-filled-toggle-on-background-color:var(--forge-icon-button-filled-toggle-on-background-color, var(--forge-theme-primary, #3f51b5));--_icon-button-filled-toggle-on-icon-color:var(--forge-icon-button-filled-toggle-on-icon-color, var(--forge-theme-on-primary, #ffffff));--_icon-button-disabled-opacity:var(--forge-icon-button-disabled-opacity, 0.38);--_icon-button-popover-icon-padding:var(--forge-icon-button-popover-icon-padding, var(--forge-spacing-xsmall, 8px));--_icon-button-focus-indicator-color:var(--forge-icon-button-focus-indicator-color, var(--forge-theme-primary, #3f51b5))}.forge-icon-button{position:relative;z-index:0;display:var(--_icon-button-display);-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;gap:var(--_icon-button-gap);-webkit-box-sizing:border-box;box-sizing:border-box;height:var(--_icon-button-density-large-size);min-width:var(--_icon-button-density-large-size);border:var(--_icon-button-border);border-start-start-radius:var(--_icon-button-shape-start-start);border-start-end-radius:var(--_icon-button-shape-start-end);border-end-start-radius:var(--_icon-button-shape-end-start);border-end-end-radius:var(--_icon-button-shape-end-end);padding:var(--_icon-button-padding);-webkit-box-shadow:var(--_icon-button-shadow);box-shadow:var(--_icon-button-shadow);color:var(--_icon-button-icon-color);background:var(--_icon-button-background-color);font-size:var(--_icon-button-icon-size);cursor:var(--_icon-button-cursor);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition-property:background,-webkit-box-shadow;transition-property:background,-webkit-box-shadow;transition-property:box-shadow,background;transition-property:box-shadow,background,-webkit-box-shadow;-webkit-transition-duration:var(--_icon-button-transition-duration);transition-duration:var(--_icon-button-transition-duration);-webkit-transition-timing-function:var(--_icon-button-transition-timing);transition-timing-function:var(--_icon-button-transition-timing)}.forge-icon-button ::slotted(:is([slot=start],[slot=end])){font-size:var(--_icon-button-icon-size);height:var(--_icon-button-icon-size);width:var(--_icon-button-icon-size);font-weight:inherit}a{position:absolute;inset:0;text-decoration:none}forge-focus-indicator{--forge-focus-indicator-color:var(--_icon-button-focus-indicator-color);--forge-focus-indicator-shape-start-start:var(--_icon-button-shape-start-start);--forge-focus-indicator-shape-start-end:var(--_icon-button-shape-start-end);--forge-focus-indicator-shape-end-start:var(--_icon-button-shape-end-start);--forge-focus-indicator-shape-end-end:var(--_icon-button-shape-end-end)}:host(:is([variant=icon],:not([variant]))){--forge-focus-indicator-outward-offset:0px}forge-state-layer{--forge-state-layer-color:var(--_icon-button-icon-color)}:host([popover-icon]) .forge-icon-button{--_icon-button-padding:var(--_icon-button-popover-icon-padding)}:host([variant=outlined]) .forge-icon-button{border-width:var(--_icon-button-outlined-border-width);border-style:var(--_icon-button-outlined-border-style);border-color:var(--_icon-button-outlined-border-color)}:host([variant=tonal]) .forge-icon-button{--_icon-button-icon-color:var(--_icon-button-tonal-icon-color);--_icon-button-background-color:var(--_icon-button-tonal-background-color)}:host(:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--_icon-button-filled-icon-color);--_icon-button-background-color:var(--_icon-button-filled-background-color)}:host([variant=raised]) .forge-icon-button{--_icon-button-shadow:var(--_icon-button-raised-shadow)}:host([variant=raised]) .forge-icon-button:hover{--_icon-button-raised-shadow:var(--_icon-button-raised-hover-shadow)}:host([variant=raised]) .forge-icon-button:active{--_icon-button-raised-shadow:var(--_icon-button-raised-active-shadow)}:host(:is(:not([toggle]),[toggle]:not([on]))) slot[name=on]{display:none}:host([toggle][on]) slot:not([name]){display:none}:host([toggle][on]:is(:not([variant]),[variant=icon])) .forge-icon-button{--_icon-button-icon-color:var(--_icon-button-toggle-on-icon-color)}:host([toggle][on][variant=outlined]) .forge-icon-button{--_icon-button-background-color:var(--_icon-button-outlined-toggle-on-background-color);--_icon-button-icon-color:var(--_icon-button-outlined-toggle-on-icon-color)}:host([toggle]:not([on])[variant=tonal]) .forge-icon-button{--_icon-button-background-color:var(--_icon-button-tonal-toggle-background-color)}:host([toggle][on][variant=tonal]) .forge-icon-button{--_icon-button-icon-color:var(--_icon-button-tonal-toggle-on-icon-color);--_icon-button-background-color:var(--_icon-button-tonal-toggle-on-background-color)}:host([toggle]:not([on]):is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--_icon-button-filled-toggle-icon-color);--_icon-button-background-color:var(--_icon-button-filled-toggle-background-color)}:host([toggle][on]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--_icon-button-filled-toggle-on-icon-color);--_icon-button-background-color:var(--_icon-button-filled-toggle-on-background-color)}:host(:is([dense],[density=small])) .forge-icon-button{--_icon-button-size:var(--_icon-button-density-small-size);--_icon-button-icon-size:var(--_icon-button-density-small-icon-size);--_icon-button-padding:var(--_icon-button-density-small-padding)}:host(:is([dense],[density=small])) ::slotted(*){font-size:var(--_icon-button-density-small-icon-size)}:host([density=medium]) .forge-icon-button{--_icon-button-size:var(--_icon-button-density-medium-size);--_icon-button-padding:var(--_icon-button-density-medium-padding)}:host([shape=squared]) .forge-icon-button{--_icon-button-shape:var(--_icon-button-shape-squared)}:host([disabled]){cursor:var(--_icon-button-disabled-cursor)}:host([disabled]) .forge-icon-button{pointer-events:none;opacity:var(--_icon-button-disabled-opacity)}:host([disabled][variant=raised]) .forge-icon-button{--_icon-button-raised-shadow:var(--_icon-button-raised-disabled-shadow)}:host(:not([toggle])[theme=primary]:is(:not([variant]),[variant=icon],[variant=outlined])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-primary, #3f51b5))}:host([toggle][theme=primary]:is(:not([variant]),[variant=icon])) .forge-icon-button{--_icon-button-toggle-on-icon-color:var(--forge-icon-button-toggle-on-icon-color, var(--forge-theme-primary, #3f51b5))}:host([toggle][theme=primary][variant=outlined]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-primary, #3f51b5));--_icon-button-outlined-toggle-on-background-color:var(--forge-icon-button-outlined-toggle-on-background-color, var(--forge-theme-primary-container-low, #e8eaf6));--_icon-button-outlined-toggle-on-icon-color:var(--forge-icon-button-outlined-toggle-on-icon-color, var(--forge-theme-primary, #3f51b5))}:host([theme=primary]) .forge-icon-button{--_icon-button-focus-indicator-color:var(--forge-icon-button-focus-indicator-color, var(--forge-theme-primary, #3f51b5))}:host(:not([toggle])[theme=secondary]:is(:not([variant]),[variant=icon],[variant=outlined])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-secondary, #ffc107))}:host([toggle][theme=secondary]:is(:not([variant]),[variant=icon])) .forge-icon-button{--_icon-button-toggle-on-icon-color:var(--forge-icon-button-toggle-on-icon-color, var(--forge-theme-secondary, #ffc107))}:host([toggle][theme=secondary][variant=outlined]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-secondary, #ffc107));--_icon-button-outlined-toggle-on-background-color:var(--forge-icon-button-outlined-toggle-on-background-color, var(--forge-theme-secondary-container-low, #fff8e1));--_icon-button-outlined-toggle-on-icon-color:var(--forge-icon-button-outlined-toggle-on-icon-color, var(--forge-theme-secondary, #ffc107))}:host(:not([toggle])[theme=secondary][variant=tonal]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-secondary-container, #3d2e02));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-secondary-container, #fff0c3))}:host([toggle]:not([on])[theme=secondary][variant=tonal]) .forge-icon-button{--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-secondary-container-low, #fff8e1))}:host([toggle][theme=secondary][variant=tonal]) .forge-icon-button{--_icon-button-tonal-toggle-on-background-color:var(--forge-icon-button-tonal-toggle-on-background-color, var(--forge-theme-secondary-container, #fff0c3));--_icon-button-tonal-toggle-on-icon-color:var(--forge-icon-button-tonal-toggle-on-icon-color, var(--forge-theme-on-secondary-container, #3d2e02))}:host(:not([toggle])[theme=secondary]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-secondary, #000000));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-secondary, #ffc107))}:host([toggle]:not([on])[theme=secondary]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-secondary, #ffc107));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-secondary-container-low, #fff8e1))}:host([toggle][theme=secondary]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-filled-toggle-on-background-color:var(--forge-icon-button-filled-toggle-on-background-color, var(--forge-theme-secondary, #ffc107));--_icon-button-filled-toggle-on-icon-color:var(--forge-icon-button-filled-toggle-on-icon-color, var(--forge-theme-on-secondary, #000000))}:host([theme=secondary]) .forge-icon-button{--_icon-button-focus-indicator-color:var(--forge-icon-button-focus-indicator-color, var(--forge-theme-secondary, #ffc107))}:host(:not([toggle])[theme=tertiary]:is(:not([variant]),[variant=icon],[variant=outlined])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-tertiary, #3d5afe))}:host([toggle][theme=tertiary]:is(:not([variant]),[variant=icon])) .forge-icon-button{--_icon-button-toggle-on-icon-color:var(--forge-icon-button-toggle-on-icon-color, var(--forge-theme-tertiary, #3d5afe))}:host([toggle][theme=tertiary][variant=outlined]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-tertiary, #3d5afe));--_icon-button-outlined-toggle-on-background-color:var(--forge-icon-button-outlined-toggle-on-background-color, var(--forge-theme-tertiary-container-low, #e8ebff));--_icon-button-outlined-toggle-on-icon-color:var(--forge-icon-button-outlined-toggle-on-icon-color, var(--forge-theme-tertiary, #3d5afe))}:host(:not([toggle])[theme=tertiary][variant=tonal]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-tertiary-container, #0f163d));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-tertiary-container, #d0d7ff))}:host([toggle]:not([on])[theme=tertiary][variant=tonal]) .forge-icon-button{--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-tertiary-container-low, #e8ebff))}:host([toggle][theme=tertiary][variant=tonal]) .forge-icon-button{--_icon-button-tonal-toggle-on-background-color:var(--forge-icon-button-tonal-toggle-on-background-color, var(--forge-theme-tertiary-container, #d0d7ff));--_icon-button-tonal-toggle-on-icon-color:var(--forge-icon-button-tonal-toggle-on-icon-color, var(--forge-theme-on-tertiary-container, #0f163d))}:host(:not([toggle])[theme=tertiary]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-tertiary, #ffffff));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-tertiary, #3d5afe))}:host([toggle]:not([on])[theme=tertiary]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-tertiary, #3d5afe));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-tertiary-container-low, #e8ebff))}:host([toggle][theme=tertiary]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-filled-toggle-on-background-color:var(--forge-icon-button-filled-toggle-on-background-color, var(--forge-theme-tertiary, #3d5afe));--_icon-button-filled-toggle-on-icon-color:var(--forge-icon-button-filled-toggle-on-icon-color, var(--forge-theme-on-tertiary, #ffffff))}:host([theme=tertiary]) .forge-icon-button{--_icon-button-focus-indicator-color:var(--forge-icon-button-focus-indicator-color, var(--forge-theme-tertiary, #3d5afe))}:host(:not([toggle])[theme=success]:is(:not([variant]),[variant=icon],[variant=outlined])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-success, #2e7d32))}:host([toggle][theme=success]:is(:not([variant]),[variant=icon])) .forge-icon-button{--_icon-button-toggle-on-icon-color:var(--forge-icon-button-toggle-on-icon-color, var(--forge-theme-success, #2e7d32))}:host([toggle][theme=success][variant=outlined]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-success, #2e7d32));--_icon-button-outlined-toggle-on-background-color:var(--forge-icon-button-outlined-toggle-on-background-color, var(--forge-theme-success-container-low, #e6efe6));--_icon-button-outlined-toggle-on-icon-color:var(--forge-icon-button-outlined-toggle-on-icon-color, var(--forge-theme-success, #2e7d32))}:host(:not([toggle])[theme=success][variant=tonal]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-success-container, #0b1e0c));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-success-container, #cde0ce))}:host([toggle]:not([on])[theme=success][variant=tonal]) .forge-icon-button{--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-success-container-low, #e6efe6))}:host([toggle][theme=success][variant=tonal]) .forge-icon-button{--_icon-button-tonal-toggle-on-background-color:var(--forge-icon-button-tonal-toggle-on-background-color, var(--forge-theme-success-container, #cde0ce));--_icon-button-tonal-toggle-on-icon-color:var(--forge-icon-button-tonal-toggle-on-icon-color, var(--forge-theme-on-success-container, #0b1e0c))}:host(:not([toggle])[theme=success]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-success, #ffffff));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-success, #2e7d32))}:host([toggle]:not([on])[theme=success]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-success, #2e7d32));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-success-container-low, #e6efe6))}:host([toggle][theme=success]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-filled-toggle-on-background-color:var(--forge-icon-button-filled-toggle-on-background-color, var(--forge-theme-success, #2e7d32));--_icon-button-filled-toggle-on-icon-color:var(--forge-icon-button-filled-toggle-on-icon-color, var(--forge-theme-on-success, #ffffff))}:host([theme=success]) .forge-icon-button{--_icon-button-focus-indicator-color:var(--forge-icon-button-focus-indicator-color, var(--forge-theme-success, #2e7d32))}:host(:not([toggle])[theme=error]:is(:not([variant]),[variant=icon],[variant=outlined])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-error, #b00020))}:host([toggle][theme=error]:is(:not([variant]),[variant=icon])) .forge-icon-button{--_icon-button-toggle-on-icon-color:var(--forge-icon-button-toggle-on-icon-color, var(--forge-theme-error, #b00020))}:host([toggle][theme=error][variant=outlined]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-error, #b00020));--_icon-button-outlined-toggle-on-background-color:var(--forge-icon-button-outlined-toggle-on-background-color, var(--forge-theme-error-container-low, #f6e0e4));--_icon-button-outlined-toggle-on-icon-color:var(--forge-icon-button-outlined-toggle-on-icon-color, var(--forge-theme-error, #b00020))}:host(:not([toggle])[theme=error][variant=tonal]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-error-container, #2a0008));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-error-container, #ecc2c9))}:host([toggle]:not([on])[theme=error][variant=tonal]) .forge-icon-button{--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-error-container-low, #f6e0e4))}:host([toggle][theme=error][variant=tonal]) .forge-icon-button{--_icon-button-tonal-toggle-on-background-color:var(--forge-icon-button-tonal-toggle-on-background-color, var(--forge-theme-error-container, #ecc2c9));--_icon-button-tonal-toggle-on-icon-color:var(--forge-icon-button-tonal-toggle-on-icon-color, var(--forge-theme-on-error-container, #2a0008))}:host(:not([toggle])[theme=error]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-error, #ffffff));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-error, #b00020))}:host([toggle]:not([on])[theme=error]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-error, #b00020));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-error-container-low, #f6e0e4))}:host([toggle][theme=error]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-filled-toggle-on-background-color:var(--forge-icon-button-filled-toggle-on-background-color, var(--forge-theme-error, #b00020));--_icon-button-filled-toggle-on-icon-color:var(--forge-icon-button-filled-toggle-on-icon-color, var(--forge-theme-on-error, #ffffff))}:host([theme=error]) .forge-icon-button{--_icon-button-focus-indicator-color:var(--forge-icon-button-focus-indicator-color, var(--forge-theme-error, #b00020))}:host(:not([toggle])[theme=warning]:is(:not([variant]),[variant=icon],[variant=outlined])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-warning, #d14900))}:host([toggle][theme=warning]:is(:not([variant]),[variant=icon])) .forge-icon-button{--_icon-button-toggle-on-icon-color:var(--forge-icon-button-toggle-on-icon-color, var(--forge-theme-warning, #d14900))}:host([toggle][theme=warning][variant=outlined]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-warning, #d14900));--_icon-button-outlined-toggle-on-background-color:var(--forge-icon-button-outlined-toggle-on-background-color, var(--forge-theme-warning-container-low, #f9e9e0));--_icon-button-outlined-toggle-on-icon-color:var(--forge-icon-button-outlined-toggle-on-icon-color, var(--forge-theme-warning, #d14900))}:host(:not([toggle])[theme=warning][variant=tonal]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-warning-container, #321200));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-warning-container, #f4d3c2))}:host([toggle]:not([on])[theme=warning][variant=tonal]) .forge-icon-button{--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-warning-container-low, #f9e9e0))}:host([toggle][theme=warning][variant=tonal]) .forge-icon-button{--_icon-button-tonal-toggle-on-background-color:var(--forge-icon-button-tonal-toggle-on-background-color, var(--forge-theme-warning-container, #f4d3c2));--_icon-button-tonal-toggle-on-icon-color:var(--forge-icon-button-tonal-toggle-on-icon-color, var(--forge-theme-on-warning-container, #321200))}:host(:not([toggle])[theme=warning]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-warning, #ffffff));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-warning, #d14900))}:host([toggle]:not([on])[theme=warning]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-warning, #d14900));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-warning-container-low, #f9e9e0))}:host([toggle][theme=warning]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-filled-toggle-on-background-color:var(--forge-icon-button-filled-toggle-on-background-color, var(--forge-theme-warning, #d14900));--_icon-button-filled-toggle-on-icon-color:var(--forge-icon-button-filled-toggle-on-icon-color, var(--forge-theme-on-warning, #ffffff))}:host([theme=warning]) .forge-icon-button{--_icon-button-focus-indicator-color:var(--forge-icon-button-focus-indicator-color, var(--forge-theme-warning, #d14900))}:host(:not([toggle])[theme=info]:is(:not([variant]),[variant=icon],[variant=outlined])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-info, #1565c0))}:host([toggle][theme=info]:is(:not([variant]),[variant=icon])) .forge-icon-button{--_icon-button-toggle-on-icon-color:var(--forge-icon-button-toggle-on-icon-color, var(--forge-theme-info, #1565c0))}:host([toggle][theme=info][variant=outlined]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-info, #1565c0));--_icon-button-outlined-toggle-on-background-color:var(--forge-icon-button-outlined-toggle-on-background-color, var(--forge-theme-info-container-low, #e3edf7));--_icon-button-outlined-toggle-on-icon-color:var(--forge-icon-button-outlined-toggle-on-icon-color, var(--forge-theme-info, #1565c0))}:host(:not([toggle])[theme=info][variant=tonal]) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-info-container, #05182e));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-info-container, #c7daf0))}:host([toggle]:not([on])[theme=info][variant=tonal]) .forge-icon-button{--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-info-container-low, #e3edf7))}:host([toggle][theme=info][variant=tonal]) .forge-icon-button{--_icon-button-tonal-toggle-on-background-color:var(--forge-icon-button-tonal-toggle-on-background-color, var(--forge-theme-info-container, #c7daf0));--_icon-button-tonal-toggle-on-icon-color:var(--forge-icon-button-tonal-toggle-on-icon-color, var(--forge-theme-on-info-container, #05182e))}:host(:not([toggle])[theme=info]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-on-info, #ffffff));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-info, #1565c0))}:host([toggle]:not([on])[theme=info]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-icon-color:var(--forge-icon-button-icon-color, var(--forge-theme-info, #1565c0));--_icon-button-background-color:var(--forge-icon-button-background-color, var(--forge-theme-info-container-low, #e3edf7))}:host([toggle][theme=info]:is([variant=filled],[variant=raised])) .forge-icon-button{--_icon-button-filled-toggle-on-background-color:var(--forge-icon-button-filled-toggle-on-background-color, var(--forge-theme-info, #1565c0));--_icon-button-filled-toggle-on-icon-color:var(--forge-icon-button-filled-toggle-on-icon-color, var(--forge-theme-on-info, #ffffff))}:host([theme=info]) .forge-icon-button{--_icon-button-focus-indicator-color:var(--forge-icon-button-focus-indicator-color, var(--forge-theme-info, #1565c0))}';\n\nexport interface IIconButtonComponent extends IBaseButton {\n toggle: boolean;\n on: boolean;\n variant: IconButtonVariant;\n theme: IconButtonTheme;\n shape: IconButtonShape;\n density: IconButtonDensity;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-icon-button': IIconButtonComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-icon-button-toggle': CustomEvent<boolean>;\n }\n}\n\n/**\n * @tag forge-icon-button\n * \n * @summary Icons buttons are used to trigger an action or event.\n * \n * @property {boolean} toggle - Whether or not the icon button can be toggled.\n * @property {boolean} on - Whether or not the button is on. Only applies when `toggle` is `true`.\n * @property {IconButtonVariant} variant - The variant of the button. Valid values are `text`, `outlined`, `filled`, and `raised`.\n * @property {IconButtonTheme} theme - The theme of the button. Valid values are `primary`, `secondary`, `tertiary`, `success`, `error`, `warning`, `info`.\n * @property {string} shape - The shape of the button. Valid values are `circular` and `squared`.\n * @property {IconButtonDensity} density - The density of the button. Valid values are `small`, `medium`, and `large`.\n * @property {string} type - The type of button. Defaults to `button`. Valid values are `button`, `submit`, and `reset`.\n * @property {boolean} disabled - Whether or not the button is disabled.\n * @property {boolean} popoverIcon - Whether or not the button shows a built-in popover icon.\n * @property {string} name - The name of the button.\n * @property {string} value - The form value of the button.\n * @property {boolean} dense - Whether or not the button is dense.\n * @property {boolean} anchor - Whether or not the button is an `<a>` element.\n * @property {string} href - The href of the anchor.\n * @property {string} target - The target of the anchor.\n * @property {string} download - The download of the anchor.\n * @property {string} rel - The rel of the anchor.\n * @property {HTMLFormElement | null} form - The form reference of the button if within a `<form>` element.\n * \n * @attribute {boolean} toggle - Whether or not the icon button can be toggled.\n * @attribute {boolean} on - Whether or not the button is on. Only applies when `toggle` is `true`.\n * @attribute {IconButtonVariant} variant - The variant of the button. Valid values are `text`, `outlined`, `filled`, and `raised`.\n * @attribute {IconButtonTheme} theme - The theme of the button. Valid values are `primary`, `secondary`, `tertiary`, `success`, `error`, `warning`, `info`.\n * @attribute {string} shape - The shape of the button. Valid values are `circular` and `squared`.\n * @attribute {IconButtonDensity} density - The density of the button. Valid values are `small`, `medium`, and `large`.\n * @attribute {string} type - The type of button. Defaults to `button`. Valid values are `button`, `submit`, and `reset`.\n * @attribute {boolean} disabled - Whether or not the button is disabled.\n * @attribute {boolean} popover-icon - Whether or not the button shows a built-in popover icon.\n * @attribute {string} name - The name of the button.\n * @attribute {string} value - The form value of the button.\n * @attribute {boolean} dense - Whether or not the button is dense.\n * @attribute {boolean} anchor - Whether or not the button is an `<a>` element.\n * @attribute {string} href - The href of the anchor.\n * @attribute {string} target - The target of the anchor.\n * @attribute {string} download - The download of the anchor.\n * @attribute {string} rel - The rel of the anchor.\n * \n * @event {Event} click - Fires when the button is clicked.\n * @event {Event} forge-icon-button-toggle - Fires when the icon button is toggled.\n * \n * @csspart root - The root container element.\n * @csspart focus-indicator - The focus-indicator indicator element.\n * @csspart state-layer - The state-layer surface element.\n * \n * @slot - This is a default/unnamed slot for the icon.\n * @slot on - The icon to show when in `toggle` mode when toggled \"on\".\n * @slot start - Elements to logically render before the icon.\n * @slot end - Elements to logically render after the icon.\n */\n@CustomElement({\n name: ICON_BUTTON_CONSTANTS.elementName,\n dependencies: [\n FocusIndicatorComponent,\n StateLayerComponent,\n IconComponent\n ]\n})\nexport class IconButtonComponent extends BaseButton<IconButtonFoundation> implements IIconButtonComponent {\n public static get observedAttributes(): string[] {\n return [\n ...Object.values(BASE_BUTTON_CONSTANTS.observedAttributes),\n ...Object.values(ICON_BUTTON_CONSTANTS.observedAttributes)\n ];\n }\n\n protected readonly _foundation: IconButtonFoundation;\n\n constructor() {\n super();\n IconRegistry.define(tylIconArrowDropDown);\n attachShadowTemplate(this, template, styles);\n this._foundation = new IconButtonFoundation(new IconButtonAdapter(this));\n }\n\n public override attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case ICON_BUTTON_CONSTANTS.attributes.TOGGLE:\n this.toggle = coerceBoolean(newValue);\n break;\n case ICON_BUTTON_CONSTANTS.attributes.ON:\n this.on = coerceBoolean(newValue);\n break;\n case ICON_BUTTON_CONSTANTS.attributes.VARIANT:\n this.variant = newValue as IconButtonVariant;\n break;\n case ICON_BUTTON_CONSTANTS.attributes.THEME:\n this.theme = newValue as IconButtonTheme;\n break;\n case ICON_BUTTON_CONSTANTS.attributes.SHAPE:\n this.shape = newValue as IconButtonShape;\n break;\n case ICON_BUTTON_CONSTANTS.attributes.DENSITY:\n this.density = newValue as IconButtonDensity;\n break;\n }\n super.attributeChangedCallback(name, oldValue, newValue);\n }\n\n @FoundationProperty()\n public declare toggle: boolean;\n\n @FoundationProperty()\n public declare on: boolean;\n\n @FoundationProperty()\n public declare theme: IconButtonTheme;\n\n @FoundationProperty()\n public declare variant: IconButtonVariant;\n\n @FoundationProperty()\n public declare shape: IconButtonShape;\n\n @FoundationProperty()\n public declare density: IconButtonDensity;\n}\n", "import { addClass } from '@tylertech/forge-core';\nimport { IconExternalType, ICON_CONSTANTS, IIconComponent } from '../icon';\nimport { ICON_CLASS_NAME } from '../constants';\nimport { BaseComponentDelegate, IBaseComponentDelegateConfig, IBaseComponentDelegateOptions } from '../core/delegates/base-component-delegate';\nimport { IIconButtonComponent } from './icon-button';\nimport { ICON_BUTTON_CONSTANTS } from './icon-button-constants';\nimport { PopupPlacement } from '../popup';\n\nexport type IconButtonComponentDelegateProps = Partial<IIconButtonComponent>;\nexport interface IIconButtonComponentDelegateOptions extends IBaseComponentDelegateOptions {\n iconName?: string;\n iconExternal?: boolean;\n iconExternalType?: IconExternalType;\n iconType?: 'font' | 'component';\n iconClass?: string | string[];\n tooltip?: string;\n tooltipPosition?: PopupPlacement;\n}\nexport interface IIconButtonComponentDelegateConfig extends IBaseComponentDelegateConfig<IIconButtonComponent, IIconButtonComponentDelegateOptions> {}\n\nexport class IconButtonComponentDelegate extends BaseComponentDelegate<IIconButtonComponent, IIconButtonComponentDelegateOptions> {\n private _iconElement?: IIconComponent;\n\n constructor(config?: IIconButtonComponentDelegateConfig) {\n super(config);\n }\n\n protected _build(): IIconButtonComponent {\n const component = document.createElement(ICON_BUTTON_CONSTANTS.elementName);\n\n if (this._config.options?.tooltip) {\n const tooltip = document.createElement('forge-tooltip');\n tooltip.textContent = this._config.options.tooltip;\n \n if (this._config.options.tooltipPosition) {\n tooltip.position = this._config.options.tooltipPosition;\n }\n\n component.appendChild(tooltip);\n }\n\n return component;\n }\n\n public get iconElement(): IIconComponent | undefined {\n return this._iconElement;\n }\n\n public get disabled(): boolean {\n return !!this._element.disabled;\n }\n public set disabled(value: boolean) {\n this._element.disabled = value;\n }\n\n protected _configure(): void {\n this._configureIcon();\n }\n\n private _configureIcon(): void {\n if (!this._config.options?.iconName) {\n return;\n }\n\n const type = this._config.options?.iconType || 'component';\n\n switch (type) {\n case 'font':\n const classes = Array.isArray(this._config.options.iconClass) ? this._config.options.iconClass : [ICON_CLASS_NAME];\n addClass(classes, this._element);\n this._element.textContent = this._config.options.iconName;\n break;\n case 'component':\n this._iconElement = document.createElement(ICON_CONSTANTS.elementName);\n this._iconElement.name = this._config.options.iconName;\n if (this._config.options.iconExternal !== undefined) {\n this._iconElement.external = !!this._config.options.iconExternal;\n }\n if (this._config.options.iconExternalType) {\n this._iconElement.externalType = this._config.options.iconExternalType;\n }\n if (this._config.options.iconClass) {\n addClass(this._config.options.iconClass, this._iconElement);\n }\n this._element.appendChild(this._iconElement);\n break;\n }\n }\n\n public onClick(listener: (evt: MouseEvent) => void): void {\n this._element.addEventListener('click', listener);\n }\n\n public onFocus(listener: (evt: Event) => void): void {\n this._element.addEventListener('focus', evt => listener(evt));\n }\n\n public onBlur(listener: (evt: Event) => void): void {\n this._element.addEventListener('blur', evt => listener(evt));\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { IconButtonComponent } from './icon-button';\n\nexport * from './icon-button-constants';\nexport * from './icon-button';\nexport * from './icon-button-component-delegate';\n\nexport function defineIconButtonComponent(): void {\n defineCustomElement(IconButtonComponent);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["elementName", "COMPONENT_NAME_PREFIX", "observedAttributes", "attributes", "__spreadProps", "__spreadValues", "events", "defaults", "ICON_BUTTON_CONSTANTS", "IconButtonFoundation", "BaseButtonFoundation", "adapter", "ICON_BUTTON_CONSTANTS", "evt", "originalOn", "cancelled", "value", "IconButtonAdapter", "BaseButtonAdapter", "component", "template", "styles", "IconButtonComponent", "BaseButton", "IconRegistry", "tylIconArrowDropDown", "attachShadowTemplate", "IconButtonFoundation", "IconButtonAdapter", "BASE_BUTTON_CONSTANTS", "ICON_BUTTON_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "__decorateClass", "FoundationProperty", "CustomElement", "FocusIndicatorComponent", "StateLayerComponent", "IconComponent", "IconButtonComponentDelegate", "BaseComponentDelegate", "config", "_a", "component", "ICON_BUTTON_CONSTANTS", "tooltip", "value", "_b", "classes", "ICON_CLASS_NAME", "addClass", "ICON_CONSTANTS", "listener", "evt", "defineIconButtonComponent", "defineCustomElement", "IconButtonComponent"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import{d as U}from"./chunk.3R4BUIQP.js";import{d as M}from"./chunk.FXIWCHLW.js";import{b as k}from"./chunk.FAXYCG55.js";import{n as z,r as O,s as F,v as G}from"./chunk.FYWPZFLJ.js";import{d as R,l as C}from"./chunk.AMZZKEAE.js";import{a as x}from"./chunk.HSI7B43D.js";import{a as g}from"./chunk.NVUMRW44.js";import{a as B,b as y}from"./chunk.36F2GVWS.js";import{a as T,e as I,f as n,i as c,k as N}from"./chunk.JAWV5Y5T.js";import{d as A,f as u,g as L,t as S}from"./chunk.K7FPXAFS.js";import{b as d,i as E,k as _,l as h}from"./chunk.J2M2MXP2.js";import{a as f,b as m,d as r}from"./chunk.M3QDAYD2.js";var D=`${y}paginator`,l={LABEL:"forge-paginator__label",PAGE_SIZE_OPTIONS:"forge-paginator__page-size-options",RANGE_LABEL:"forge-paginator__range-label",RANGE_LABEL_ALTERNATIVE:"forge-paginator__range-label--alternative",FIRST_PAGE_BUTTON:"forge-paginator__first-page",PREVIOUS_PAGE_BUTTON:"forge-paginator__previous-page",NEXT_PAGE_BUTTON:"forge-paginator__next-page",LAST_PAGE_BUTTON:"forge-paginator__last-page",ROOT:"forge-paginator",ALTERNATIVE:"forge-paginator--alternative",ALIGNMENT_START:"forge-paginator--alignment-start",ALIGNMENT_SPACE_BETWEEN:"forge-paginator--alignment-center",ALIGNMENT_END:"forge-paginator--alignment-end"},w={LABEL:`.${l.LABEL}`,PAGE_SIZE_SELECT:`.${l.PAGE_SIZE_OPTIONS}`,RANGE_LABEL:`.${l.RANGE_LABEL}`,FIRST_PAGE_BUTTON:`.${l.FIRST_PAGE_BUTTON}`,FIRST_PAGE_ICON_BUTTON:`.${l.FIRST_PAGE_BUTTON}`,PREVIOUS_PAGE_BUTTON:`.${l.PREVIOUS_PAGE_BUTTON}`,NEXT_PAGE_BUTTON:`.${l.NEXT_PAGE_BUTTON}`,LAST_PAGE_BUTTON:`.${l.LAST_PAGE_BUTTON}`,LAST_PAGE_ICON_BUTTON:`.${l.LAST_PAGE_BUTTON}`,ROOT:`.${l.ROOT}`,RANGE_LABEL_ALTERNATIVE:`.${l.RANGE_LABEL_ALTERNATIVE}`},H={PAGE_INDEX:"page-index",PAGE_SIZE:"page-size",OFFSET:"offset",PAGE_SIZE_OPTIONS:"page-size-options",TOTAL:"total",LABEL:"label",FIRST_LAST:"first-last",FIRST:"first",DISABLED:"disabled",ALTERNATIVE:"alternative",ALIGNMENT:"alignment"},$={CHANGE:`${D}-change`},Z={DEFAULT_PAGE_INDEX:0,DEFAULT_TOTAL:0,DEFAULT_PAGE_SIZE:25,DEFAULT_PAGE_SIZE_OPTIONS:[5,15,25,50,100]},X={DEFAULT_LABEL:"Rows per page:",RANGE_SEPARATOR_LABEL:"of",FIRST_PAGE:"first-page",PREVIOUS_PAGE:"previous-page",NEXT_PAGE:"next-page",LAST_PAGE:"last-page",PAGE_SIZE:"page-size"},a={elementName:D,classes:l,selectors:w,attributes:H,events:$,numbers:Z,strings:X};var b=class{constructor(e){this._adapter=e;this._pageIndex=a.numbers.DEFAULT_PAGE_INDEX;this._pageSize=a.numbers.DEFAULT_PAGE_SIZE;this._offset=0;this._total=a.numbers.DEFAULT_TOTAL;this._pageSizeOptions=a.numbers.DEFAULT_PAGE_SIZE_OPTIONS.map(e=>({label:`${e}`,value:`${e}`}));this._label=a.strings.DEFAULT_LABEL;this._firstLast=!1;this._first=!1;this._disabled=!1;this._alignment="space-between";this._pageSizeListener=t=>this._onPageSizeChanged(t),this._firstPageListener=t=>this._onFirstPage(t),this._previousPageListener=t=>this._onPreviousPage(t),this._nextPageListener=t=>this._onNextPage(t),this._lastPageListener=t=>this._onLastPage(t)}initialize(){this._updateRangeLabel(),this._adapter.setLabel(this._label),this._adapter.setPageSizeOptions(this._pageSizeOptions),this._adapter.setPageSize(this._pageSize),this._attachListeners(),this._toggleFirstLastButtons(),this._syncInteractionState()}disconnect(){this._detachListeners()}focus(e){this._adapter.handleFocusMove(null,e)}_attachListeners(){this._adapter.attachPageSizeChangeListener(this._pageSizeListener),this._adapter.attachFirstPageListener(this._firstPageListener),this._adapter.attachPreviousPageListener(this._previousPageListener),this._adapter.attachNextPageListener(this._nextPageListener),this._adapter.attachLastPageListener(this._lastPageListener)}_detachListeners(){this._adapter.detachPageSizeChangeListener(this._pageSizeListener),this._adapter.detachFirstPageListener(this._firstPageListener),this._adapter.detachPreviousPageListener(this._previousPageListener),this._adapter.detachNextPageListener(this._nextPageListener),this._adapter.detachLastPageListener(this._lastPageListener)}_onFirstPage(e){if(e.stopPropagation(),!this._hasFirstPage())return;let t=0;this._emitChangeEvent(a.strings.FIRST_PAGE,{pageIndex:t})&&this._applyPageIndex(t)}_onPreviousPage(e){if(e.stopPropagation(),!this._hasPreviousPage())return;let t=this._pageIndex-1;this._emitChangeEvent(a.strings.PREVIOUS_PAGE,{pageIndex:t})&&this._applyPageIndex(t)}_onNextPage(e){if(e.stopPropagation(),!this._hasNextPage())return;let t=this._pageIndex+1;this._emitChangeEvent(a.strings.NEXT_PAGE,{pageIndex:t})&&this._applyPageIndex(t)}_onLastPage(e){if(e.stopPropagation(),!this._hasLastPage())return;let t=this._getMaxPages();this._emitChangeEvent(a.strings.LAST_PAGE,{pageIndex:t})&&this._applyPageIndex(t)}_onPageSizeChanged(e){e.stopPropagation();let t=Number(e.detail);this._emitChangeEvent(a.strings.PAGE_SIZE,{pageIndex:0,pageSize:t})?(this._applyPageIndex(0),this._applyPageSize(t)):e.preventDefault()}_emitChangeEvent(e,{pageSize:t=this._pageSize,pageIndex:i=this._pageIndex}={}){let s=i*t,p={type:e,pageSize:t,pageIndex:i,offset:s};return this._adapter.emitHostEvent(a.events.CHANGE,p,!0,!0)}_getMaxPages(){return Math.ceil(this._total/this._pageSize)-1}_updateRangeLabel(){if(this.pageSize>1){let e=this._pageIndex*this._pageSize,i=(Math.floor(e/this._pageSize)||0)*this._pageSize+1,s=e<this._total?Math.min(e+this._pageSize,this._total):e+this._pageSize;this._rangeLabel=`${i}-${s} ${a.strings.RANGE_SEPARATOR_LABEL} ${this._total}`}else this._rangeLabel=`${this._pageIndex+1} ${a.strings.RANGE_SEPARATOR_LABEL} ${this._total}`;this._adapter.setRangeLabel(this._rangeLabel)}_syncInteractionState(){this._adapter.enableFirstPageButton(),this._adapter.enablePreviousPageButton(),this._adapter.enableNextPageButton(),this._adapter.enableLastPageButton(),this._hasFirstPage()||(this._adapter.hasFocus()&&this._adapter.handleFocusMove("first"),this._adapter.disableFirstPageButton()),this._hasPreviousPage()||(this._adapter.hasFocus()&&this._adapter.handleFocusMove("previous"),this._adapter.disablePreviousPageButton()),this._hasNextPage()||(this._adapter.hasFocus()&&this._adapter.handleFocusMove("next"),this._adapter.disableNextPageButton()),this._hasLastPage()||(this._adapter.hasFocus()&&this._adapter.handleFocusMove("last"),this._adapter.disableLastPageButton())}_toggleFirstLastButtons(){this._toggleFirstButton(),this._firstLast?this._adapter.hasLastPageButton()||this._adapter.showLastPageButton():this._adapter.hasLastPageButton()&&this._adapter.hideLastPageButton()}_toggleFirstButton(){this._first||this._firstLast?this._adapter.hasFirstPageButton()||this._adapter.showFirstPageButton():this._adapter.hasFirstPageButton()&&this._adapter.hideFirstPageButton()}_hasFirstPage(){return this._hasPreviousPage()}_hasPreviousPage(){return this._pageIndex>0&&this._pageSize>0}_hasNextPage(){let e=this._getMaxPages();return this._pageIndex<e&&this._pageSize>0}_hasLastPage(){return this._hasNextPage()}_computePageIndexFromOffset(e){e>=this._total&&(this._total>=this._pageSize?e=this._total-this._pageSize:e=0);let t=Math.min(Math.max(e,0),this._total),i=Math.floor(t/this._pageSize);this._applyPageIndex(i)}_computeOffset(){this._total>0&&(this._offset=this._pageIndex*this._pageSize)}_applyPageIndex(e){this._pageIndex=e,this._computeOffset(),this._updateRangeLabel(),this._syncInteractionState(),this._adapter.toggleHostAttribute(a.attributes.PAGE_INDEX,this._pageIndex!=null,this._pageIndex.toString())}_applyPageSize(e){this._pageSize=e,this._adapter.setPageSize(this._pageSize),this._computeOffset(),this._updateRangeLabel(),this._syncInteractionState()}_applyTotal(e){this._total=e,this._updateRangeLabel(),this._offset>0&&this._total>0&&this._computePageIndexFromOffset(this._offset),this._syncInteractionState()}_applyAlternativeAlignment(){this._adapter.setHostAttribute(a.attributes.ALIGNMENT,this._alignment),this._adapter.setAlignment(this._alignment)}_applyDisabled(e){this._disabled=e,e?(this._adapter.disablePageSizeSelect(),this._adapter.disableFirstPageButton(),this._adapter.disablePreviousPageButton(),this._adapter.disableNextPageButton(),this._adapter.disableLastPageButton()):(this._adapter.enablePageSizeSelect(),this._syncInteractionState())}get pageIndex(){return this._pageIndex}set pageIndex(e){this._pageIndex!==e&&(d(e)?this._applyPageIndex(e):this._adapter.removeHostAttribute(a.attributes.PAGE_INDEX))}get pageSize(){return this._pageSize}set pageSize(e){this._pageSize!==e&&(this._applyPageSize(e),this._adapter.setHostAttribute(a.attributes.PAGE_SIZE,`${this._pageSize}`))}get offset(){return this._offset}set offset(e){this._offset!==e&&(this._offset=e,this._computePageIndexFromOffset(e))}get total(){return this._total}set total(e){this._total!==e&&(this._applyTotal(e),this._adapter.setHostAttribute(a.attributes.TOTAL,`${this._total}`))}get pageSizeOptions(){return this._pageSizeOptions.map(e=>Number(e.value))}set pageSizeOptions(e){if(E(e)){if(this._pageSizeOptions=e.map(t=>({label:t.toString(),value:t.toString()})).sort((t,i)=>h(t.value)-h(i.value)),this._adapter.setPageSizeOptions(this._pageSizeOptions),this._adapter.attachPageSizeChangeListener(this._pageSizeListener),this._adapter.setPageSizeVisibility(!0),d(this._pageSize)&&this._pageSizeOptions.length&&!this._pageSizeOptions.find(t=>h(t.value)===this._pageSize)){let t=h(this._pageSizeOptions[0].value);this._applyPageSize(t)}}else e.toString().toLowerCase()==="false"&&(this._adapter.detachPageSizeChangeListener(this._pageSizeListener),this._adapter.setPageSizeVisibility(!1))}get label(){return this._label}set label(e){this._label!==e&&(this._label=e,this._adapter.setLabel(this._label),this._adapter.setHostAttribute(a.attributes.LABEL,d(this._label)?this._label.toString():""))}get firstLast(){return this._firstLast}set firstLast(e){e=!!e,this._firstLast!==e&&(this._firstLast=e,this._toggleFirstLastButtons(),this._adapter.toggleHostAttribute(a.attributes.FIRST_LAST,this._firstLast))}get first(){return this._first}set first(e){e=!!e,this._first!==e&&(this._first=e,this._toggleFirstButton(),this._adapter.toggleHostAttribute(a.attributes.FIRST,this._first))}get disabled(){return this._disabled}set disabled(e){e=!!e,this._disabled!==e&&(this._applyDisabled(e),this._adapter.toggleHostAttribute(a.attributes.DISABLED,this._disabled))}get alternative(){return this._alternative}set alternative(e){e!==this._alternative&&(this._alternative=e,this._adapter.setAlternative(this._alternative),this._applyAlternativeAlignment(),this._adapter.toggleHostAttribute(a.attributes.ALTERNATIVE,this._alternative))}get alignment(){return this._alignment}set alignment(e){e!==this._alignment&&(this._alignment=e,this._applyAlternativeAlignment())}};var v=class extends x{constructor(t){super(t);this._labelElement=n(t,a.selectors.LABEL),this._root=n(t,a.selectors.ROOT),this._pageSizeSelect=n(t,a.selectors.PAGE_SIZE_SELECT),this._rangeLabel=n(t,a.selectors.RANGE_LABEL),this._rangeLabelAlternative=n(t,a.selectors.RANGE_LABEL_ALTERNATIVE),this._firstPageButton=n(t,a.selectors.FIRST_PAGE_BUTTON),this._firstPageIconButton=n(t,a.selectors.FIRST_PAGE_ICON_BUTTON),this._previousPageButton=n(t,a.selectors.PREVIOUS_PAGE_BUTTON),this._nextPageButton=n(t,a.selectors.NEXT_PAGE_BUTTON),this._lastPageButton=n(t,a.selectors.LAST_PAGE_BUTTON),this._lastPageIconButton=n(t,a.selectors.LAST_PAGE_ICON_BUTTON)}setLabel(t){this._labelElement.textContent=t}setPageSizeOptions(t){A(this._pageSizeSelect),this._pageSizeSelect.options=t}setPageSize(t){this._pageSizeSelect.value=t.toString()}setRangeLabel(t){this._rangeLabel.innerText=t,this._rangeLabelAlternative.innerText=t}hasFirstPageButton(){return!!n(this._component,a.selectors.FIRST_PAGE_ICON_BUTTON)}showFirstPageButton(){this._firstPagePlaceholder=c(this._component,!0,a.elementName,a.selectors.FIRST_PAGE_ICON_BUTTON,this._firstPageIconButton,this._firstPagePlaceholder)}hideFirstPageButton(){this._firstPagePlaceholder=c(this._component,!1,a.elementName,a.selectors.FIRST_PAGE_ICON_BUTTON,this._firstPageIconButton,this._firstPagePlaceholder)}hasLastPageButton(){return!!n(this._component,a.selectors.LAST_PAGE_ICON_BUTTON)}showLastPageButton(){this._lastPagePlaceholder=c(this._component,!0,a.elementName,a.selectors.LAST_PAGE_ICON_BUTTON,this._lastPageIconButton,this._lastPagePlaceholder)}hideLastPageButton(){this._lastPagePlaceholder=c(this._component,!1,a.elementName,a.selectors.LAST_PAGE_ICON_BUTTON,this._lastPageIconButton,this._lastPagePlaceholder)}attachPageSizeChangeListener(t){this._pageSizeSelect.addEventListener("change",t)}attachFirstPageListener(t){this._firstPageButton.addEventListener("click",t)}attachPreviousPageListener(t){this._previousPageButton.addEventListener("click",t)}attachNextPageListener(t){this._nextPageButton.addEventListener("click",t)}attachLastPageListener(t){this._lastPageButton.addEventListener("click",t)}detachPageSizeChangeListener(t){this._pageSizeSelect.removeEventListener("change",t)}detachFirstPageListener(t){this._firstPageButton.removeEventListener("click",t)}detachPreviousPageListener(t){this._previousPageButton.removeEventListener("click",t)}detachNextPageListener(t){this._nextPageButton.removeEventListener("click",t)}detachLastPageListener(t){this._lastPageButton.removeEventListener("click",t)}disableFirstPageButton(){this._firstPageButton.setAttribute("disabled","disabled")}enableFirstPageButton(){this._firstPageButton.removeAttribute("disabled")}disablePreviousPageButton(){this._previousPageButton.setAttribute("disabled","disabled")}enablePreviousPageButton(){this._previousPageButton.removeAttribute("disabled")}disableNextPageButton(){this._nextPageButton.setAttribute("disabled","disabled")}enableNextPageButton(){this._nextPageButton.removeAttribute("disabled")}disablePageSizeSelect(){this._pageSizeSelect.setAttribute("disabled","disabled")}enablePageSizeSelect(){this._pageSizeSelect.removeAttribute("disabled")}setPageSizeVisibility(t){t?this._pageSizeSelect.style.removeProperty("display"):this._pageSizeSelect.style.display="none"}disableLastPageButton(){this._lastPageButton.setAttribute("disabled","disabled")}enableLastPageButton(){this._lastPageButton.removeAttribute("disabled")}setAlternative(t){S(this._root,t,a.classes.ALTERNATIVE)}setAlignment(t){switch(L([a.classes.ALIGNMENT_SPACE_BETWEEN,a.classes.ALIGNMENT_START,a.classes.ALIGNMENT_END],this._root),t){case"start":u(a.classes.ALIGNMENT_START,this._root);break;case"end":u(a.classes.ALIGNMENT_END,this._root);break;case"space-between":default:u(a.classes.ALIGNMENT_SPACE_BETWEEN,this._root);break}}hasFocus(){return this._component.matches(":focus")}handleFocusMove(t,i){if(!(t&&!this.hasFocus()))switch(t){case"first":this._tryFocus([this._nextPageButton,this._lastPageButton,this._previousPageButton,this._pageSizeSelect],i);break;case"last":this._tryFocus([this._previousPageButton,this._firstPageButton,this._nextPageButton,this._pageSizeSelect],i);break;case"previous":this._tryFocus([this._nextPageButton,this._lastPageButton,this._firstPageButton,this._pageSizeSelect]);break;case"next":this._tryFocus([this._previousPageButton,this._firstPageButton,this._lastPageButton,this._pageSizeSelect],i);break;case"page-size":this._tryFocus([this._nextPageButton,this._lastPageButton,this._firstPageButton,this._previousPageButton],i);break;default:this._tryFocus([this._firstPageButton,this._previousPageButton,this._nextPageButton,this._lastPageButton,this._pageSizeSelect],i);break}}_tryFocus(t,i){let s=typeof(i==null?void 0:i.preventScroll)=="boolean"?i.preventScroll:!0;for(let p of t)if(p&&p.isConnected&&!p.disabled){p.focus(m(f({},i),{preventScroll:s}));return}}};var V='<template><div class="forge-paginator" part="root"><div class="forge-paginator__container" part="container"><div class="forge-paginator__label" part="label"></div><forge-select class="forge-paginator__page-size-options" aria-label="Choose page size" density="dense" part="page-size-options"></forge-select><div class="forge-paginator__range-label" part="range-label"></div><forge-icon-button class="forge-paginator__first-page" part="first-page-button" aria-label="First Page" part="first-page-button-element"><forge-icon name="first_page" part="first-page-icon"></forge-icon></forge-icon-button><forge-tooltip position="top">Go to the first page</forge-tooltip><forge-icon-button class="forge-paginator__previous-page" part="previous-page-button" aria-label="Previous Page" part="previous-page-button-element"><forge-icon name="keyboard_arrow_left" part="previous-page-button-icon"></forge-icon></forge-icon-button><forge-tooltip position="top">Go to the previous page</forge-tooltip><div class="forge-paginator__range-label--alternative" part="range-label-alternative"></div><forge-icon-button class="forge-paginator__next-page" part="next-page-button" aria-label="Next Page" part="next-page-button-element"><forge-icon name="keyboard_arrow_right" part="next-page-icon"></forge-icon></forge-icon-button><forge-tooltip position="top">Go to the next page</forge-tooltip><forge-icon-button class="forge-paginator__last-page" part="last-page-button" aria-label="Last Page" part="last-page-button-element"><forge-icon name="last_page" part="last-page-icon"></forge-icon></forge-icon-button><forge-tooltip position="top">Go to the last page</forge-tooltip></div></div></template>',j=".forge-paginator{display:inline-block}.forge-paginator--alternative{display:-webkit-box;display:flex}.forge-paginator--alternative .forge-paginator__label,.forge-paginator--alternative .forge-paginator__page-size-options,.forge-paginator--alternative .forge-paginator__range-label{display:none}.forge-paginator--alternative .forge-paginator__range-label--alternative{display:inline-block;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit);margin:0 12px}.forge-paginator__range-label--alternative{display:none}.forge-paginator__container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.forge-paginator__label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);margin-right:16px}.forge-paginator__page-size-options{margin-right:16px}.forge-paginator__range-label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);margin-right:8px}.forge-paginator__first-page,.forge-paginator__last-page,.forge-paginator__next-page,.forge-paginator__previous-page{color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}:host{display:inline-block}:host([hidden]){display:none}:host([alternative]) .forge-paginator--alignment-center .forge-paginator__container{-webkit-box-pack:center;justify-content:center}:host([alternative]) .forge-paginator--alignment-center .forge-paginator__range-label--alternative{margin:0 auto}:host([alternative]) .forge-paginator--alignment-start .forge-paginator__container{-webkit-box-pack:start;justify-content:flex-start}:host([alternative]) .forge-paginator--alignment-end .forge-paginator__container{-webkit-box-pack:end;justify-content:flex-end}:host([alternative]) .forge-paginator .forge-paginator__container{-webkit-box-flex:1;flex:1}",o=class extends N{constructor(){super();R.define([z,O,F,G]),I(this,V,j),this._foundation=new b(new v(this))}static get observedAttributes(){return[a.attributes.PAGE_INDEX,a.attributes.PAGE_SIZE,a.attributes.OFFSET,a.attributes.TOTAL,a.attributes.PAGE_SIZE_OPTIONS,a.attributes.LABEL,a.attributes.FIRST_LAST,a.attributes.FIRST,a.attributes.DISABLED,a.attributes.ALTERNATIVE,a.attributes.ALIGNMENT]}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,i,s){switch(t){case a.attributes.PAGE_INDEX:this.pageIndex=Number(s)||a.numbers.DEFAULT_PAGE_INDEX;break;case a.attributes.PAGE_SIZE:this.pageSize=Number(s)||a.numbers.DEFAULT_PAGE_SIZE;break;case a.attributes.OFFSET:this.offset=Number(s);break;case a.attributes.TOTAL:this.total=Number(s)||a.numbers.DEFAULT_TOTAL;break;case a.attributes.PAGE_SIZE_OPTIONS:this.pageSizeOptions=s;break;case a.attributes.LABEL:this.label=s;break;case a.attributes.FIRST_LAST:this.firstLast=_(s);break;case a.attributes.FIRST:this.first=_(s);break;case a.attributes.DISABLED:this.disabled=_(s);break;case a.attributes.ALTERNATIVE:this.alternative=_(s);break;case a.attributes.ALIGNMENT:this.alignment=s;break}}focus(t){this._foundation.focus(t)}};r([g()],o.prototype,"pageIndex",2),r([g()],o.prototype,"pageSize",2),r([g()],o.prototype,"offset",2),r([g()],o.prototype,"total",2),r([g()],o.prototype,"pageSizeOptions",2),r([g()],o.prototype,"label",2),r([g()],o.prototype,"firstLast",2),r([g()],o.prototype,"first",2),r([g()],o.prototype,"disabled",2),r([g()],o.prototype,"alternative",2),r([g()],o.prototype,"alignment",2),o=r([B({name:a.elementName,dependencies:[k,U,C,M]})],o);function It(){T(o)}export{a,b,v as c,o as d,It as e};
|
|
7
|
+
//# sourceMappingURL=chunk.FFHSUJFM.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/paginator/paginator-constants.ts", "../../src/paginator/paginator-foundation.ts", "../../src/paginator/paginator-adapter.ts", "../../src/paginator/paginator.ts", "../../src/paginator/index.ts"],
|
|
4
|
+
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}paginator`;\n\nconst classes = {\n LABEL: 'forge-paginator__label',\n PAGE_SIZE_OPTIONS: 'forge-paginator__page-size-options',\n RANGE_LABEL: 'forge-paginator__range-label',\n RANGE_LABEL_ALTERNATIVE: 'forge-paginator__range-label--alternative',\n FIRST_PAGE_BUTTON: 'forge-paginator__first-page',\n PREVIOUS_PAGE_BUTTON: 'forge-paginator__previous-page',\n NEXT_PAGE_BUTTON: 'forge-paginator__next-page',\n LAST_PAGE_BUTTON: 'forge-paginator__last-page',\n ROOT: 'forge-paginator',\n ALTERNATIVE: 'forge-paginator--alternative',\n ALIGNMENT_START: 'forge-paginator--alignment-start',\n ALIGNMENT_SPACE_BETWEEN: 'forge-paginator--alignment-center',\n ALIGNMENT_END: 'forge-paginator--alignment-end'\n};\n\nconst selectors = {\n LABEL: `.${classes.LABEL}`,\n PAGE_SIZE_SELECT: `.${classes.PAGE_SIZE_OPTIONS}`,\n RANGE_LABEL: `.${classes.RANGE_LABEL}`,\n FIRST_PAGE_BUTTON: `.${classes.FIRST_PAGE_BUTTON}`,\n FIRST_PAGE_ICON_BUTTON: `.${classes.FIRST_PAGE_BUTTON}`,\n PREVIOUS_PAGE_BUTTON: `.${classes.PREVIOUS_PAGE_BUTTON}`,\n NEXT_PAGE_BUTTON: `.${classes.NEXT_PAGE_BUTTON}`,\n LAST_PAGE_BUTTON: `.${classes.LAST_PAGE_BUTTON}`,\n LAST_PAGE_ICON_BUTTON: `.${classes.LAST_PAGE_BUTTON}`,\n ROOT: `.${classes.ROOT}`,\n RANGE_LABEL_ALTERNATIVE: `.${classes.RANGE_LABEL_ALTERNATIVE}`\n};\n\nconst attributes = {\n PAGE_INDEX: 'page-index',\n PAGE_SIZE: 'page-size',\n OFFSET: 'offset',\n PAGE_SIZE_OPTIONS: 'page-size-options',\n TOTAL: 'total',\n LABEL: 'label',\n FIRST_LAST: 'first-last',\n FIRST: 'first',\n DISABLED: 'disabled',\n ALTERNATIVE: 'alternative',\n ALIGNMENT: 'alignment'\n};\n\nconst events = {\n CHANGE: `${elementName}-change`\n};\n\nconst numbers = {\n DEFAULT_PAGE_INDEX: 0,\n DEFAULT_TOTAL: 0,\n DEFAULT_PAGE_SIZE: 25,\n DEFAULT_PAGE_SIZE_OPTIONS: [5, 15, 25, 50, 100]\n};\n\nconst strings = {\n DEFAULT_LABEL: 'Rows per page:',\n RANGE_SEPARATOR_LABEL: 'of',\n FIRST_PAGE: 'first-page',\n PREVIOUS_PAGE: 'previous-page',\n NEXT_PAGE: 'next-page',\n LAST_PAGE: 'last-page',\n PAGE_SIZE: 'page-size'\n};\n\nexport const PAGINATOR_CONSTANTS = {\n elementName,\n classes,\n selectors,\n attributes,\n events,\n numbers,\n strings\n};\n\nexport type PaginatorAlternativeAlignment = 'start' | 'space-between' | 'end';\nexport interface IPaginatorChangeEvent {\n type: string;\n pageSize: number;\n pageIndex: number;\n offset: number;\n}\n", "import { coerceNumber, ICustomElementFoundation, isArray, isDefined } from '@tylertech/forge-core';\nimport { IPaginatorAdapter, PaginatorFieldIdentifier } from './paginator-adapter';\nimport { PaginatorAlternativeAlignment, PAGINATOR_CONSTANTS, IPaginatorChangeEvent } from './paginator-constants';\nimport { ISelectOption } from '../select';\n\nexport interface IPaginatorFoundation extends ICustomElementFoundation {\n pageIndex: number;\n pageSize: number;\n offset: number;\n total: number;\n pageSizeOptions: number[] | boolean;\n pageSizeLabel: string;\n focus(options?: FocusOptions): void;\n}\n\nexport class PaginatorFoundation {\n private _pageIndex = PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_INDEX;\n private _pageSize = PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_SIZE;\n private _offset = 0;\n private _total = PAGINATOR_CONSTANTS.numbers.DEFAULT_TOTAL;\n private _pageSizeOptions: ISelectOption[] = PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_SIZE_OPTIONS.map(o => ({ label: `${o}`, value: `${o}` }));\n private _label = PAGINATOR_CONSTANTS.strings.DEFAULT_LABEL;\n private _firstLast = false;\n private _first = false;\n private _disabled = false;\n private _alternative: boolean;\n private _alignment: PaginatorAlternativeAlignment = 'space-between';\n private _rangeLabel: string;\n\n private _firstPageListener: (evt: Event) => void;\n private _previousPageListener: (evt: Event) => void;\n private _nextPageListener: (evt: Event) => void;\n private _lastPageListener: (evt: Event) => void;\n private _pageSizeListener: (evt: Event) => void;\n\n constructor(private _adapter: IPaginatorAdapter) {\n this._pageSizeListener = (evt: CustomEvent<number>) => this._onPageSizeChanged(evt);\n this._firstPageListener = (evt: Event) => this._onFirstPage(evt);\n this._previousPageListener = (evt: Event) => this._onPreviousPage(evt);\n this._nextPageListener = (evt: Event) => this._onNextPage(evt);\n this._lastPageListener = (evt: Event) => this._onLastPage(evt);\n }\n\n public initialize(): void {\n this._updateRangeLabel();\n this._adapter.setLabel(this._label);\n this._adapter.setPageSizeOptions(this._pageSizeOptions);\n this._adapter.setPageSize(this._pageSize);\n this._attachListeners();\n this._toggleFirstLastButtons();\n this._syncInteractionState();\n }\n\n public disconnect(): void {\n this._detachListeners();\n }\n\n public focus(options?: FocusOptions): void {\n this._adapter.handleFocusMove(null, options);\n }\n\n private _attachListeners(): void {\n this._adapter.attachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.attachFirstPageListener(this._firstPageListener);\n this._adapter.attachPreviousPageListener(this._previousPageListener);\n this._adapter.attachNextPageListener(this._nextPageListener);\n this._adapter.attachLastPageListener(this._lastPageListener);\n }\n\n private _detachListeners(): void {\n this._adapter.detachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.detachFirstPageListener(this._firstPageListener);\n this._adapter.detachPreviousPageListener(this._previousPageListener);\n this._adapter.detachNextPageListener(this._nextPageListener);\n this._adapter.detachLastPageListener(this._lastPageListener);\n }\n\n private _onFirstPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasFirstPage()) {\n return;\n }\n\n const firstPage = 0;\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.FIRST_PAGE, { pageIndex: firstPage });\n if (canPage) {\n this._applyPageIndex(firstPage);\n }\n }\n\n private _onPreviousPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasPreviousPage()) {\n return;\n }\n \n const prevPage = this._pageIndex - 1;\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.PREVIOUS_PAGE, { pageIndex: prevPage });\n if (canPage) {\n this._applyPageIndex(prevPage);\n }\n }\n\n private _onNextPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasNextPage()) {\n return;\n }\n\n const nextPage = this._pageIndex + 1;\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.NEXT_PAGE, { pageIndex: nextPage });\n if (canPage) {\n this._applyPageIndex(nextPage);\n }\n }\n\n private _onLastPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasLastPage()) {\n return;\n }\n\n const lastPage = this._getMaxPages();\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.LAST_PAGE, { pageIndex: lastPage });\n if (canPage) {\n this._applyPageIndex(lastPage);\n }\n }\n\n private _onPageSizeChanged(evt: CustomEvent): void {\n evt.stopPropagation();\n\n const pageSize = Number(evt.detail);\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.PAGE_SIZE, { pageIndex: 0, pageSize });\n if (canPage) {\n this._applyPageIndex(0);\n this._applyPageSize(pageSize);\n } else {\n evt.preventDefault();\n }\n }\n\n private _emitChangeEvent(type: string, { pageSize = this._pageSize, pageIndex = this._pageIndex } = {}): boolean {\n const offset = pageIndex * pageSize;\n const detail: IPaginatorChangeEvent = { type, pageSize, pageIndex, offset };\n return this._adapter.emitHostEvent(PAGINATOR_CONSTANTS.events.CHANGE, detail, true, true);\n }\n\n private _getMaxPages(): number {\n return Math.ceil(this._total / this._pageSize) - 1;\n }\n\n private _updateRangeLabel(): void {\n if (this.pageSize > 1) {\n const startIndex = this._pageIndex * this._pageSize;\n const indexStart = Math.floor(startIndex / this._pageSize) || 0;\n const pageStart = (indexStart * this._pageSize) + 1;\n const pageEnd = startIndex < this._total ? Math.min(startIndex + this._pageSize, this._total) : startIndex + this._pageSize;\n this._rangeLabel = `${pageStart}-${pageEnd} ${PAGINATOR_CONSTANTS.strings.RANGE_SEPARATOR_LABEL} ${this._total}`;\n } else {\n this._rangeLabel = `${this._pageIndex + 1} ${PAGINATOR_CONSTANTS.strings.RANGE_SEPARATOR_LABEL} ${this._total}`;\n }\n this._adapter.setRangeLabel(this._rangeLabel);\n }\n\n private _syncInteractionState(): void {\n this._adapter.enableFirstPageButton();\n this._adapter.enablePreviousPageButton();\n this._adapter.enableNextPageButton();\n this._adapter.enableLastPageButton();\n\n if (!this._hasFirstPage()) {\n if (this._adapter.hasFocus()) {\n this._adapter.handleFocusMove('first');\n }\n this._adapter.disableFirstPageButton();\n }\n\n if (!this._hasPreviousPage()) {\n if (this._adapter.hasFocus()) {\n this._adapter.handleFocusMove('previous');\n }\n this._adapter.disablePreviousPageButton();\n }\n\n if (!this._hasNextPage()) {\n if (this._adapter.hasFocus()) {\n this._adapter.handleFocusMove('next');\n }\n this._adapter.disableNextPageButton();\n }\n\n if (!this._hasLastPage()) {\n if (this._adapter.hasFocus()) {\n this._adapter.handleFocusMove('last');\n }\n this._adapter.disableLastPageButton();\n }\n }\n\n private _toggleFirstLastButtons(): void {\n this._toggleFirstButton();\n if (this._firstLast) {\n if (!this._adapter.hasLastPageButton()) {\n this._adapter.showLastPageButton();\n }\n } else {\n if (this._adapter.hasLastPageButton()) {\n this._adapter.hideLastPageButton();\n }\n }\n }\n\n private _toggleFirstButton(): void {\n if (this._first || this._firstLast) {\n if (!this._adapter.hasFirstPageButton()) {\n this._adapter.showFirstPageButton();\n }\n } else {\n if (this._adapter.hasFirstPageButton()) {\n this._adapter.hideFirstPageButton();\n }\n }\n }\n\n private _hasFirstPage(): boolean {\n return this._hasPreviousPage();\n }\n\n private _hasPreviousPage(): boolean {\n return this._pageIndex > 0 && this._pageSize > 0;\n }\n\n private _hasNextPage(): boolean {\n const maxPages = this._getMaxPages();\n return this._pageIndex < maxPages && this._pageSize > 0;\n }\n\n private _hasLastPage(): boolean {\n return this._hasNextPage();\n }\n\n private _computePageIndexFromOffset(value: number): void {\n if (value >= this._total) {\n if (this._total >= this._pageSize) {\n value = this._total - this._pageSize;\n } else {\n value = 0;\n }\n }\n const clampedValue = Math.min(Math.max(value, 0), this._total);\n const pageIndex = Math.floor(clampedValue / this._pageSize);\n this._applyPageIndex(pageIndex);\n }\n\n private _computeOffset(): void {\n if (this._total > 0) {\n this._offset = this._pageIndex * this._pageSize;\n }\n }\n\n private _applyPageIndex(value: number): void {\n this._pageIndex = value;\n this._computeOffset();\n this._updateRangeLabel();\n this._syncInteractionState();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.PAGE_INDEX, this._pageIndex != null, this._pageIndex.toString());\n }\n\n private _applyPageSize(value: number): void {\n this._pageSize = value;\n this._adapter.setPageSize(this._pageSize);\n this._computeOffset();\n this._updateRangeLabel();\n this._syncInteractionState();\n }\n\n private _applyTotal(value: number): void {\n this._total = value;\n this._updateRangeLabel();\n\n if (this._offset > 0 && this._total > 0) {\n this._computePageIndexFromOffset(this._offset);\n }\n\n this._syncInteractionState();\n }\n\n private _applyAlternativeAlignment(): void {\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.ALIGNMENT, this._alignment);\n this._adapter.setAlignment(this._alignment);\n }\n\n private _applyDisabled(disabled: boolean): void {\n this._disabled = disabled;\n if (disabled) {\n this._adapter.disablePageSizeSelect();\n this._adapter.disableFirstPageButton();\n this._adapter.disablePreviousPageButton();\n this._adapter.disableNextPageButton();\n this._adapter.disableLastPageButton();\n } else {\n this._adapter.enablePageSizeSelect();\n this._syncInteractionState();\n }\n }\n\n public get pageIndex(): number {\n return this._pageIndex;\n }\n public set pageIndex(value: number) {\n if (this._pageIndex !== value) {\n if (isDefined(value)) {\n this._applyPageIndex(value);\n } else {\n this._adapter.removeHostAttribute(PAGINATOR_CONSTANTS.attributes.PAGE_INDEX);\n }\n }\n }\n\n public get pageSize(): number {\n return this._pageSize;\n }\n public set pageSize(value: number) {\n if (this._pageSize !== value) {\n this._applyPageSize(value);\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.PAGE_SIZE, `${this._pageSize}`);\n }\n }\n\n public get offset(): number {\n return this._offset;\n }\n public set offset(value: number) {\n if (this._offset !== value) {\n this._offset = value;\n this._computePageIndexFromOffset(value);\n }\n }\n\n public get total(): number {\n return this._total;\n }\n public set total(value: number) {\n if (this._total !== value) {\n this._applyTotal(value);\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.TOTAL, `${this._total}`);\n }\n }\n\n public get pageSizeOptions(): number[] | boolean {\n return this._pageSizeOptions.map(o => Number(o.value));\n }\n public set pageSizeOptions(options: number[] | boolean) {\n if (isArray(options)) {\n this._pageSizeOptions = (options as number[])\n .map(o => ({ label: o.toString(), value: o.toString() }))\n .sort((a, b) => coerceNumber(a.value) - coerceNumber(b.value));\n this._adapter.setPageSizeOptions(this._pageSizeOptions);\n this._adapter.attachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.setPageSizeVisibility(true);\n if (isDefined(this._pageSize) && this._pageSizeOptions.length && !this._pageSizeOptions.find(o => coerceNumber(o.value) === this._pageSize)) {\n const pageSize = coerceNumber(this._pageSizeOptions[0].value);\n this._applyPageSize(pageSize);\n }\n } else if (options.toString().toLowerCase() === 'false') {\n this._adapter.detachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.setPageSizeVisibility(false);\n }\n }\n\n public get label(): string {\n return this._label;\n }\n public set label(value: string) {\n if (this._label !== value) {\n this._label = value;\n this._adapter.setLabel(this._label);\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.LABEL, isDefined(this._label) ? this._label.toString() : '');\n }\n }\n\n public get firstLast(): boolean {\n return this._firstLast;\n }\n public set firstLast(value: boolean) {\n value = Boolean(value);\n if (this._firstLast !== value) {\n this._firstLast = value;\n this._toggleFirstLastButtons();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.FIRST_LAST, this._firstLast);\n }\n }\n\n public get first(): boolean {\n return this._first;\n }\n public set first(value: boolean) {\n value = Boolean(value);\n if (this._first !== value) {\n this._first = value;\n this._toggleFirstButton();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.FIRST, this._first);\n }\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n value = Boolean(value);\n if (this._disabled !== value) {\n this._applyDisabled(value);\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n public get alternative(): boolean {\n return this._alternative;\n }\n public set alternative(value: boolean) {\n if (value !== this._alternative) {\n this._alternative = value;\n this._adapter.setAlternative(this._alternative);\n this._applyAlternativeAlignment();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.ALTERNATIVE, this._alternative);\n }\n }\n\n public get alignment(): PaginatorAlternativeAlignment {\n return this._alignment;\n }\n public set alignment(value: PaginatorAlternativeAlignment) {\n if (value !== this._alignment) {\n this._alignment = value;\n this._applyAlternativeAlignment();\n }\n }\n}\n", "import { addClass, getShadowElement, removeAllChildren, removeClass, toggleElementPlaceholder, toggleClass } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IIconButtonComponent } from '../icon-button';\nimport { ISelectComponent, ISelectOption } from '../select';\nimport { IPaginatorComponent } from './paginator';\nimport { PaginatorAlternativeAlignment, PAGINATOR_CONSTANTS } from './paginator-constants';\n\nexport type PaginatorFieldIdentifier = 'first' | 'last' | 'previous' | 'next' | 'page-size';\n\nexport interface IPaginatorAdapter extends IBaseAdapter {\n setLabel(value: string): void;\n setPageSizeOptions(options: ISelectOption[]): void;\n setPageSize(value: number): void;\n setRangeLabel(value: string): void;\n hasFirstPageButton(): boolean;\n showFirstPageButton(): void;\n hideFirstPageButton(): void;\n hasLastPageButton(): boolean;\n showLastPageButton(): void;\n hideLastPageButton(): void;\n attachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void;\n attachFirstPageListener(listener: (evt: Event) => void): void;\n attachPreviousPageListener(listener: (evt: Event) => void): void;\n attachNextPageListener(listener: (evt: Event) => void): void;\n attachLastPageListener(listener: (evt: Event) => void): void;\n detachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void;\n detachFirstPageListener(listener: (evt: Event) => void): void;\n detachPreviousPageListener(listener: (evt: Event) => void): void;\n detachNextPageListener(listener: (evt: Event) => void): void;\n detachLastPageListener(listener: (evt: Event) => void): void;\n disableFirstPageButton(): void;\n enableFirstPageButton(): void;\n disablePreviousPageButton(): void;\n enablePreviousPageButton(): void;\n disableNextPageButton(): void;\n enableNextPageButton(): void;\n disablePageSizeSelect(): void;\n enablePageSizeSelect(): void;\n setPageSizeVisibility(visible: boolean): void;\n disableLastPageButton(): void;\n enableLastPageButton(): void;\n setAlternative(alternative: boolean): void;\n setAlignment(alignment: PaginatorAlternativeAlignment): void;\n hasFocus(): boolean;\n handleFocusMove(from?: PaginatorFieldIdentifier | null, options?: FocusOptions): void;\n}\n\n/**\n * Provides facilities for interacting with the internal DOM of `PaginatorComponent`.\n */\nexport class PaginatorAdapter extends BaseAdapter<IPaginatorComponent> implements IPaginatorAdapter {\n private _labelElement: HTMLElement;\n private _root: HTMLElement;\n private _pageSizeSelect: ISelectComponent;\n private _rangeLabel: HTMLElement;\n private _rangeLabelAlternative: HTMLElement;\n private _firstPageButton: HTMLButtonElement;\n private _firstPageIconButton: IIconButtonComponent;\n private _firstPagePlaceholder: Comment;\n private _previousPageButton: HTMLButtonElement;\n private _nextPageButton: HTMLButtonElement;\n private _lastPageButton: HTMLButtonElement;\n private _lastPageIconButton: IIconButtonComponent;\n private _lastPagePlaceholder: Comment;\n\n constructor(component: IPaginatorComponent) {\n super(component);\n this._labelElement = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.LABEL);\n this._root = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.ROOT);\n this._pageSizeSelect = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.PAGE_SIZE_SELECT) as ISelectComponent;\n this._rangeLabel = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.RANGE_LABEL);\n this._rangeLabelAlternative = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.RANGE_LABEL_ALTERNATIVE);\n this._firstPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_BUTTON) as HTMLButtonElement;\n this._firstPageIconButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON) as IIconButtonComponent;\n this._previousPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.PREVIOUS_PAGE_BUTTON) as HTMLButtonElement;\n this._nextPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.NEXT_PAGE_BUTTON) as HTMLButtonElement;\n this._lastPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.LAST_PAGE_BUTTON) as HTMLButtonElement;\n this._lastPageIconButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON) as IIconButtonComponent;\n }\n\n public setLabel(value: string): void {\n this._labelElement.textContent = value;\n }\n\n public setPageSizeOptions(options: ISelectOption[]): void {\n removeAllChildren(this._pageSizeSelect);\n this._pageSizeSelect.options = options;\n }\n\n public setPageSize(value: number): void {\n this._pageSizeSelect.value = value.toString();\n }\n\n public setRangeLabel(value: string): void {\n this._rangeLabel.innerText = value;\n this._rangeLabelAlternative.innerText = value;\n }\n\n public hasFirstPageButton(): boolean {\n return !!getShadowElement(this._component, PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON);\n }\n\n public showFirstPageButton(): void {\n this._firstPagePlaceholder = toggleElementPlaceholder(\n this._component,\n true,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON,\n this._firstPageIconButton,\n this._firstPagePlaceholder\n );\n }\n\n public hideFirstPageButton(): void {\n this._firstPagePlaceholder = toggleElementPlaceholder(\n this._component,\n false,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON,\n this._firstPageIconButton,\n this._firstPagePlaceholder\n );\n }\n\n public hasLastPageButton(): boolean {\n return !!getShadowElement(this._component, PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON);\n }\n\n public showLastPageButton(): void {\n this._lastPagePlaceholder = toggleElementPlaceholder(\n this._component,\n true,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON,\n this._lastPageIconButton,\n this._lastPagePlaceholder\n );\n }\n\n public hideLastPageButton(): void {\n this._lastPagePlaceholder = toggleElementPlaceholder(\n this._component,\n false,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON,\n this._lastPageIconButton,\n this._lastPagePlaceholder\n );\n }\n\n public attachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void {\n this._pageSizeSelect.addEventListener('change', listener);\n }\n\n public attachFirstPageListener(listener: (evt: Event) => void): void {\n this._firstPageButton.addEventListener('click', listener);\n }\n\n public attachPreviousPageListener(listener: (evt: Event) => void): void {\n this._previousPageButton.addEventListener('click', listener);\n }\n\n public attachNextPageListener(listener: (evt: Event) => void): void {\n this._nextPageButton.addEventListener('click', listener);\n }\n\n public attachLastPageListener(listener: (evt: Event) => void): void {\n this._lastPageButton.addEventListener('click', listener);\n }\n\n public detachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void {\n this._pageSizeSelect.removeEventListener('change', listener);\n }\n\n public detachFirstPageListener(listener: (evt: Event) => void): void {\n this._firstPageButton.removeEventListener('click', listener);\n }\n\n public detachPreviousPageListener(listener: (evt: Event) => void): void {\n this._previousPageButton.removeEventListener('click', listener);\n }\n\n public detachNextPageListener(listener: (evt: Event) => void): void {\n this._nextPageButton.removeEventListener('click', listener);\n }\n\n public detachLastPageListener(listener: (evt: Event) => void): void {\n this._lastPageButton.removeEventListener('click', listener);\n }\n\n public disableFirstPageButton(): void {\n this._firstPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enableFirstPageButton(): void {\n this._firstPageButton.removeAttribute('disabled');\n }\n\n public disablePreviousPageButton(): void {\n this._previousPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enablePreviousPageButton(): void {\n this._previousPageButton.removeAttribute('disabled');\n }\n\n public disableNextPageButton(): void {\n this._nextPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enableNextPageButton(): void {\n this._nextPageButton.removeAttribute('disabled');\n }\n\n public disablePageSizeSelect(): void {\n this._pageSizeSelect.setAttribute('disabled', 'disabled');\n }\n\n public enablePageSizeSelect(): void {\n this._pageSizeSelect.removeAttribute('disabled');\n }\n\n public setPageSizeVisibility(visible: boolean): void {\n if (visible) {\n this._pageSizeSelect.style.removeProperty('display');\n } else {\n this._pageSizeSelect.style.display = 'none';\n }\n }\n\n public disableLastPageButton(): void {\n this._lastPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enableLastPageButton(): void {\n this._lastPageButton.removeAttribute('disabled');\n }\n\n public setAlternative(alternative: boolean): void {\n toggleClass(this._root, alternative, PAGINATOR_CONSTANTS.classes.ALTERNATIVE);\n }\n\n public setAlignment(alignment: PaginatorAlternativeAlignment): void {\n removeClass([\n PAGINATOR_CONSTANTS.classes.ALIGNMENT_SPACE_BETWEEN,\n PAGINATOR_CONSTANTS.classes.ALIGNMENT_START,\n PAGINATOR_CONSTANTS.classes.ALIGNMENT_END\n ], this._root);\n\n switch (alignment) {\n case 'start':\n addClass(PAGINATOR_CONSTANTS.classes.ALIGNMENT_START, this._root);\n break;\n case 'end':\n addClass(PAGINATOR_CONSTANTS.classes.ALIGNMENT_END, this._root);\n break;\n case 'space-between':\n default:\n addClass(PAGINATOR_CONSTANTS.classes.ALIGNMENT_SPACE_BETWEEN, this._root);\n break;\n }\n }\n\n public hasFocus(): boolean {\n return this._component.matches(':focus');\n }\n\n public handleFocusMove(from?: PaginatorFieldIdentifier, options?: FocusOptions): void {\n if (from && !this.hasFocus()) {\n return; // We can only move focus elsewhere within the element if the element already contains focus\n }\n\n switch (from) {\n case 'first':\n this._tryFocus([\n this._nextPageButton,\n this._lastPageButton,\n this._previousPageButton,\n this._pageSizeSelect\n ], options);\n break;\n case 'last':\n this._tryFocus([\n this._previousPageButton,\n this._firstPageButton,\n this._nextPageButton,\n this._pageSizeSelect\n ], options);\n break;\n case 'previous':\n this._tryFocus([\n this._nextPageButton,\n this._lastPageButton,\n this._firstPageButton,\n this._pageSizeSelect\n ]);\n break;\n case 'next':\n this._tryFocus([\n this._previousPageButton,\n this._firstPageButton,\n this._lastPageButton,\n this._pageSizeSelect\n ], options);\n break;\n case 'page-size':\n this._tryFocus([\n this._nextPageButton,\n this._lastPageButton,\n this._firstPageButton,\n this._previousPageButton\n ], options);\n break;\n default:\n this._tryFocus([\n this._firstPageButton,\n this._previousPageButton,\n this._nextPageButton,\n this._lastPageButton,\n this._pageSizeSelect\n ], options);\n break;\n }\n }\n\n private _tryFocus(elements: Array<HTMLButtonElement | ISelectComponent>, options?: FocusOptions): void {\n const preventScroll = typeof options?.preventScroll === 'boolean' ? options.preventScroll : true;\n for (const el of elements) {\n if (el && el.isConnected && !el.disabled) {\n el.focus({ ...options, preventScroll });\n return;\n }\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, FoundationProperty, coerceBoolean } from '@tylertech/forge-core';\nimport { tylIconFirstPage, tylIconLastPage, tylIconKeyboardArrowRight, tylIconKeyboardArrowLeft } from '@tylertech/tyler-icons/standard';\nimport { PaginatorAlternativeAlignment, PAGINATOR_CONSTANTS, IPaginatorChangeEvent } from './paginator-constants';\nimport { PaginatorFoundation } from './paginator-foundation';\nimport { PaginatorAdapter } from './paginator-adapter';\nimport { IconButtonComponent } from '../icon-button';\nimport { SelectComponent } from '../select';\nimport { IconComponent, IconRegistry } from '../icon';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\nimport { TooltipComponent } from '../tooltip';\n\nconst template = '<template><div class=\\\"forge-paginator\\\" part=\\\"root\\\"><div class=\\\"forge-paginator__container\\\" part=\\\"container\\\"><div class=\\\"forge-paginator__label\\\" part=\\\"label\\\"></div><forge-select class=\\\"forge-paginator__page-size-options\\\" aria-label=\\\"Choose page size\\\" density=\\\"dense\\\" part=\\\"page-size-options\\\"></forge-select><div class=\\\"forge-paginator__range-label\\\" part=\\\"range-label\\\"></div><forge-icon-button class=\\\"forge-paginator__first-page\\\" part=\\\"first-page-button\\\" aria-label=\\\"First Page\\\" part=\\\"first-page-button-element\\\"><forge-icon name=\\\"first_page\\\" part=\\\"first-page-icon\\\"></forge-icon></forge-icon-button><forge-tooltip position=\\\"top\\\">Go to the first page</forge-tooltip><forge-icon-button class=\\\"forge-paginator__previous-page\\\" part=\\\"previous-page-button\\\" aria-label=\\\"Previous Page\\\" part=\\\"previous-page-button-element\\\"><forge-icon name=\\\"keyboard_arrow_left\\\" part=\\\"previous-page-button-icon\\\"></forge-icon></forge-icon-button><forge-tooltip position=\\\"top\\\">Go to the previous page</forge-tooltip><div class=\\\"forge-paginator__range-label--alternative\\\" part=\\\"range-label-alternative\\\"></div><forge-icon-button class=\\\"forge-paginator__next-page\\\" part=\\\"next-page-button\\\" aria-label=\\\"Next Page\\\" part=\\\"next-page-button-element\\\"><forge-icon name=\\\"keyboard_arrow_right\\\" part=\\\"next-page-icon\\\"></forge-icon></forge-icon-button><forge-tooltip position=\\\"top\\\">Go to the next page</forge-tooltip><forge-icon-button class=\\\"forge-paginator__last-page\\\" part=\\\"last-page-button\\\" aria-label=\\\"Last Page\\\" part=\\\"last-page-button-element\\\"><forge-icon name=\\\"last_page\\\" part=\\\"last-page-icon\\\"></forge-icon></forge-icon-button><forge-tooltip position=\\\"top\\\">Go to the last page</forge-tooltip></div></div></template>';\nconst styles = '.forge-paginator{display:inline-block}.forge-paginator--alternative{display:-webkit-box;display:flex}.forge-paginator--alternative .forge-paginator__label,.forge-paginator--alternative .forge-paginator__page-size-options,.forge-paginator--alternative .forge-paginator__range-label{display:none}.forge-paginator--alternative .forge-paginator__range-label--alternative{display:inline-block;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit);margin:0 12px}.forge-paginator__range-label--alternative{display:none}.forge-paginator__container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.forge-paginator__label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);margin-right:16px}.forge-paginator__page-size-options{margin-right:16px}.forge-paginator__range-label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);margin-right:8px}.forge-paginator__first-page,.forge-paginator__last-page,.forge-paginator__next-page,.forge-paginator__previous-page{color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}:host{display:inline-block}:host([hidden]){display:none}:host([alternative]) .forge-paginator--alignment-center .forge-paginator__container{-webkit-box-pack:center;justify-content:center}:host([alternative]) .forge-paginator--alignment-center .forge-paginator__range-label--alternative{margin:0 auto}:host([alternative]) .forge-paginator--alignment-start .forge-paginator__container{-webkit-box-pack:start;justify-content:flex-start}:host([alternative]) .forge-paginator--alignment-end .forge-paginator__container{-webkit-box-pack:end;justify-content:flex-end}:host([alternative]) .forge-paginator .forge-paginator__container{-webkit-box-flex:1;flex:1}';\n\nexport interface IPaginatorComponent extends IBaseComponent {\n pageIndex: number;\n pageSize: number;\n offset: number;\n total: number;\n pageSizeOptions: number[] | boolean;\n label: string;\n firstLast: boolean;\n first: boolean;\n disabled: boolean;\n alternative: boolean;\n alignment: PaginatorAlternativeAlignment;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-paginator': IPaginatorComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-paginator-change': CustomEvent<IPaginatorChangeEvent>;\n }\n}\n\n/**\n * @tag forge-paginator\n */\n@CustomElement({\n name: PAGINATOR_CONSTANTS.elementName,\n dependencies: [\n IconButtonComponent,\n SelectComponent,\n IconComponent,\n TooltipComponent\n ]\n})\nexport class PaginatorComponent extends BaseComponent implements IPaginatorComponent {\n public static get observedAttributes(): string[] {\n return [\n PAGINATOR_CONSTANTS.attributes.PAGE_INDEX,\n PAGINATOR_CONSTANTS.attributes.PAGE_SIZE,\n PAGINATOR_CONSTANTS.attributes.OFFSET,\n PAGINATOR_CONSTANTS.attributes.TOTAL,\n PAGINATOR_CONSTANTS.attributes.PAGE_SIZE_OPTIONS,\n PAGINATOR_CONSTANTS.attributes.LABEL,\n PAGINATOR_CONSTANTS.attributes.FIRST_LAST,\n PAGINATOR_CONSTANTS.attributes.FIRST,\n PAGINATOR_CONSTANTS.attributes.DISABLED,\n PAGINATOR_CONSTANTS.attributes.ALTERNATIVE,\n PAGINATOR_CONSTANTS.attributes.ALIGNMENT\n ];\n }\n\n private _foundation: PaginatorFoundation;\n\n constructor() {\n super();\n IconRegistry.define([\n tylIconFirstPage,\n tylIconKeyboardArrowLeft,\n tylIconKeyboardArrowRight,\n tylIconLastPage\n ]);\n attachShadowTemplate(this, template, styles);\n this._foundation = new PaginatorFoundation(new PaginatorAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case PAGINATOR_CONSTANTS.attributes.PAGE_INDEX:\n this.pageIndex = Number(newValue) || PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_INDEX;\n break;\n case PAGINATOR_CONSTANTS.attributes.PAGE_SIZE:\n this.pageSize = Number(newValue) || PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_SIZE;\n break;\n case PAGINATOR_CONSTANTS.attributes.OFFSET:\n this.offset = Number(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.TOTAL:\n this.total = Number(newValue) || PAGINATOR_CONSTANTS.numbers.DEFAULT_TOTAL;\n break;\n case PAGINATOR_CONSTANTS.attributes.PAGE_SIZE_OPTIONS:\n this.pageSizeOptions = newValue as any;\n break;\n case PAGINATOR_CONSTANTS.attributes.LABEL:\n this.label = newValue;\n break;\n case PAGINATOR_CONSTANTS.attributes.FIRST_LAST:\n this.firstLast = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.FIRST:\n this.first = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.ALTERNATIVE:\n this.alternative = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.ALIGNMENT:\n this.alignment = newValue as PaginatorAlternativeAlignment;\n break;\n }\n }\n\n /** The zero-based page index. Default is 0. */\n @FoundationProperty()\n public declare pageIndex: number;\n\n /** Number of items to display on a page. By default set to 25. */\n @FoundationProperty()\n public declare pageSize: number;\n\n /** Sets page index by providing the number of items to skip. The getter for this property returns the number of items to skip. */\n @FoundationProperty()\n public declare offset: number;\n\n /** The total number of items to be paginated. Default is 0. */\n @FoundationProperty()\n public declare total: number;\n\n /** The set of provided page size options to display to the user. */\n @FoundationProperty()\n public declare pageSizeOptions: number[] | boolean;\n\n /** A label for the paginator. Default is \"Rows per page:\". */\n @FoundationProperty()\n public declare label: string;\n\n /** Whether to show the first page and last page buttons. Default is false. */\n @FoundationProperty()\n public declare firstLast: boolean;\n\n /** Whether to show the first page button. Default is false. */\n @FoundationProperty()\n public declare first: boolean;\n\n /** Whether the paginator is disabled. Default is false. */\n @FoundationProperty()\n public declare disabled: boolean;\n\n @FoundationProperty()\n public declare alternative: boolean;\n\n @FoundationProperty()\n public declare alignment: PaginatorAlternativeAlignment;\n\n public override focus(options?: FocusOptions): void {\n this._foundation.focus(options);\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { PaginatorComponent } from './paginator';\n\nexport * from './paginator-adapter';\nexport * from './paginator-constants';\nexport * from './paginator-foundation';\nexport * from './paginator';\n\nexport function definePaginatorComponent(): void {\n defineCustomElement(PaginatorComponent);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["elementName", "COMPONENT_NAME_PREFIX", "classes", "selectors", "attributes", "events", "numbers", "strings", "PAGINATOR_CONSTANTS", "PaginatorFoundation", "_adapter", "PAGINATOR_CONSTANTS", "o", "evt", "options", "firstPage", "prevPage", "nextPage", "lastPage", "pageSize", "type", "pageIndex", "offset", "detail", "startIndex", "pageStart", "pageEnd", "maxPages", "value", "clampedValue", "disabled", "isDefined", "isArray", "a", "b", "coerceNumber", "PaginatorAdapter", "BaseAdapter", "component", "getShadowElement", "PAGINATOR_CONSTANTS", "value", "options", "removeAllChildren", "toggleElementPlaceholder", "listener", "visible", "alternative", "toggleClass", "alignment", "removeClass", "addClass", "from", "elements", "preventScroll", "el", "__spreadProps", "__spreadValues", "template", "styles", "PaginatorComponent", "BaseComponent", "IconRegistry", "tylIconFirstPage", "tylIconKeyboardArrowLeft", "tylIconKeyboardArrowRight", "tylIconLastPage", "attachShadowTemplate", "PaginatorFoundation", "PaginatorAdapter", "PAGINATOR_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "options", "__decorateClass", "FoundationProperty", "CustomElement", "IconButtonComponent", "SelectComponent", "IconComponent", "TooltipComponent", "definePaginatorComponent", "defineCustomElement", "PaginatorComponent"]
|
|
7
|
+
}
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{a}from"./chunk.KVCDAZ6B.js";import{b as s}from"./chunk.
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{a}from"./chunk.KVCDAZ6B.js";import{b as s}from"./chunk.36F2GVWS.js";var h=`${s}text-field`,u={MULTI_INPUT:"data-forge-multi-input",MULTI_INPUT_SEPARATOR:"data-forge-multi-input-separator"},r={ROOT:"forge-text-field",MULTI_INPUT:"forge-text-field--multi-input",TEXTAREA:"forge-text-field--textarea"},_={ROOT:`.${r.ROOT}`},d={elementName:h,attributes:u,classes:r,selectors:_};var m=class extends a{constructor(e){super(e)}_build(){var t,i;let e=document.createElement(d.elementName);return this._inputElement=this._buildInputElement(e),(t=this._config.options)!=null&&t.leadingElement&&(this._config.options.leadingElement.slot="leading",e.appendChild(this._config.options.leadingElement)),(i=this._config.options)!=null&&i.trailingElement&&(this._config.options.trailingElement.slot="trailing",e.appendChild(this._config.options.trailingElement)),e.appendChild(this._inputElement),e}_configure(){var e,t;(e=this._config.options)!=null&&e.helperText&&this.setHelperText(this._config.options.helperText),typeof((t=this._config.options)==null?void 0:t.label)=="string"&&this._createLabel(this._config.options.label)}get value(){return this._inputElement.value}set value(e){this._inputElement.value=e}get disabled(){return this._inputElement.disabled}set disabled(e){this._inputElement.disabled=e}get invalid(){return this._element.invalid||!1}set invalid(e){this._element.invalid=e}get inputElement(){return this._inputElement}get labelElement(){return this._labelElement}onChange(e){this._inputElement.addEventListener("input",t=>e(t.target.value))}onFocus(e){this._inputElement.addEventListener("focus",t=>e(t))}onBlur(e){this._inputElement.addEventListener("blur",t=>e(t))}setLabel(e){e?this._labelElement?this._labelElement.textContent=e:this._createLabel(e):this._labelElement&&(this._element.removeChild(this._labelElement),this._labelElement=void 0)}setHelperText(e){e?(this._helperTextElement||(this._helperTextElement=document.createElement("span"),this._helperTextElement.slot="helper-text",this._element.appendChild(this._helperTextElement)),this._helperTextElement.textContent=e):this._helperTextElement&&(this._element.removeChild(this._helperTextElement),this._helperTextElement=void 0)}floatLabel(e){this._element.floatLabel(e)}_createLabel(e){var t;this._labelElement=document.createElement("label"),this._labelElement.textContent=e,(t=this._config.options)!=null&&t.id&&this._labelElement.setAttribute("for",this._config.options.id),this._element.appendChild(this._labelElement)}_buildInputElement(e){var i,n,l,o,p;let t=document.createElement("input");return t.type=((i=this._config.options)==null?void 0:i.type)||"text",((n=this._config.options)==null?void 0:n.value)!==void 0&&(t.value=this._config.options.value),(l=this._config.options)!=null&&l.id&&(t.id=this._config.options.id),typeof((o=this._config.options)==null?void 0:o.placeholder)=="string"&&(t.placeholder=(p=this._config.options)==null?void 0:p.placeholder),e.appendChild(t),t}};export{d as a,m as b};
|
|
7
|
+
//# sourceMappingURL=chunk.FLWNOP42.js.map
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{a as r}from"./chunk.
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{a as r}from"./chunk.GNDKQPDV.js";import{a as f}from"./chunk.FDZSLGIW.js";import{a as c}from"./chunk.MGLWXAZO.js";import{a as y}from"./chunk.HSI7B43D.js";import{a}from"./chunk.NVUMRW44.js";import{a as O}from"./chunk.36F2GVWS.js";import{a as L,k as x}from"./chunk.JAWV5Y5T.js";import{d as g,i as E,q as b}from"./chunk.K7FPXAFS.js";import{b as p,l as T,p as v}from"./chunk.J2M2MXP2.js";import{d as n}from"./chunk.M3QDAYD2.js";function I(s){s.style.border="0",s.style.clip="rect(0 0 0 0)",s.style.height="1px",s.style.margin="-1px",s.style.overflow="hidden",s.style.padding="0",s.style.position="absolute",s.style.width="1px",s.style.outline="0",s.style.setProperty("-webkit-appearance","none"),s.style.setProperty("-moz-appearance","none")}function P(s,e,t){typeof t=="string"&&(t=document.createTextNode(t));let i=document.createElement("div");i.setAttribute("role","tooltip"),i.classList.add(r.classes.TOOLTIP),i.appendChild(t),i.setAttribute("role","tooltip"),i.setAttribute("aria-hidden","true"),(s.ownerDocument||document).body.appendChild(i);let d={x:0,y:0},u=4;switch(e){case"top":d.y=-u,i.classList.add(r.classes.TOOLTIP_TOP);break;case"right":d.x=u,i.classList.add(r.classes.TOOLTIP_RIGHT);break;case"bottom":d.y=u,i.classList.add(r.classes.TOOLTIP_BOTTOM);break;case"left":d.x=-u,i.classList.add(r.classes.TOOLTIP_LEFT);break}return window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{i.classList.add(r.classes.TOOLTIP_OPEN),f({element:i,targetElement:s,placement:e,transform:!1,offset:d})})}),i}var h=class extends y{constructor(t){super(t);this._tooltipElement=null}initializeTargetElement(t){this._targetElement=this._getTargetElement(t)}initializeAccessibility(t){this._targetElement&&!this._targetElement.hasAttribute("aria-describedby")&&this._targetElement.setAttribute("aria-describedby",t)}hasTargetElement(){return!!this._targetElement}hasTooltipElement(){return!!this._tooltipElement}isTargetElementConnected(){return!!this._targetElement&&this._targetElement.isConnected}destroy(t){this._targetElement&&this._targetElement.getAttribute("aria-describedby")===t&&this._targetElement.removeAttribute("aria-describedby")}setTextContent(t){g(this._component),t&&this._component.appendChild(document.createTextNode(t))}addTargetEventListener(t,i){this._targetElement&&this._targetElement.addEventListener(t,i)}removeTargetEventListener(t,i){this._targetElement&&this._targetElement.removeEventListener(t,i)}showTooltip(t,i){if(!this._targetElement)return;i||(i=this._getTooltipContent().cloneNode(!0));let l=i.nodeType===3&&(!i.textContent||i.textContent.trim().length===0);!i||l||(this._tooltipElement=P(this._targetElement,t,i))}getInnerText(){return this._component.innerText}hideTooltip(){this._tooltipElement&&(E(this._tooltipElement),this._tooltipElement=null)}getTooltipElement(){return this._tooltipElement}_getTargetElement(t){if(t){if(this._component.parentElement)return b(this._component.parentElement,t)?this._component.parentElement:this._component.parentElement.querySelector(t)}else return this._component.previousElementSibling||this._component.parentElement;return null}_getTooltipContent(){return this._component.firstElementChild||this._component.firstChild||document.createTextNode("")}};var _=class _{constructor(e){this._adapter=e;this._delay=r.numbers.DEFAULT_DELAY;this._position=r.strings.DEFAULT_POSITION;this._isOpen=!1;this._mouseOverListener=t=>this._onMouseOver(t),this._mouseOutListener=t=>this._onMouseOut(t),this._touchStartListener=t=>this._onTouchStart(t),this._touchEndListener=t=>this._onTouchEnd(t),this._scrollListener=v(t=>this._onScroll(t),100),this._clickListener=()=>this._targetInteracted(),this._mouseDownListener=()=>this._targetInteracted(),this._dragListener=()=>this._targetInteracted()}initialize(){if(this._adapter.initializeTargetElement(this._target),!this._adapter.hasTargetElement())throw new Error("Unable to locate target element.");this._identifier=this._adapter.getHostAttribute("id"),this._identifier||(this._identifier=this._getNextIdentifier(),this._adapter.setHostAttribute("id",this._identifier)),this._addTargetListeners(),this._adapter.initializeAccessibility(this._identifier)}disconnect(){this._mouseOverTimeout&&(window.clearTimeout(this._mouseOverTimeout),this._mouseOverTimeout=void 0),this._touchTimeout&&(window.clearTimeout(this._touchTimeout),this._touchTimeout=void 0),this._adapter.destroy(this._identifier),this._isOpen&&this.hide(),this._adapter.hasTargetElement()&&this._removeTargetListeners()}_getNextIdentifier(){return`forge-tooltip-${_._tooltipIdentifier++}`}_addTargetListeners(){c.isMobile?(this._adapter.addTargetEventListener("touchstart",this._touchStartListener),this._adapter.addTargetEventListener("touchend",this._touchEndListener)):(this._adapter.addTargetEventListener("mouseover",this._mouseOverListener),this._adapter.addTargetEventListener("mouseout",this._mouseOutListener)),this._adapter.addTargetEventListener("click",this._clickListener),this._adapter.addTargetEventListener("mousedown",this._mouseDownListener),this._adapter.addTargetEventListener("dragstart",this._dragListener)}_removeTargetListeners(){c.isMobile?(this._adapter.removeTargetEventListener("touchstart",this._touchStartListener),this._adapter.removeTargetEventListener("touchend",this._touchEndListener)):(this._adapter.removeTargetEventListener("mouseover",this._mouseOverListener),this._adapter.removeTargetEventListener("mouseout",this._mouseOutListener)),this._adapter.removeTargetEventListener("click",this._clickListener),this._adapter.removeTargetEventListener("mousedown",this._mouseDownListener),this._adapter.removeTargetEventListener("dragstart",this._dragListener)}_onTouchStart(e){this._touchTimeout=window.setTimeout(()=>{this._show(),window.setTimeout(()=>this.hide(),r.numbers.LONGPRESS_VISIBILITY_DURATION),this._touchTimeout=void 0},r.numbers.LONGPRESS_THRESHOLD)}_onTouchEnd(e){this._touchTimeout&&this._clearTouchTimer()}_clearTouchTimer(){window.clearTimeout(this._touchTimeout),this._touchTimeout=void 0}_onMouseOver(e){this._isOpen||!this._adapter.hasTargetElement()||!this._adapter.isTargetElementConnected()||(this._delay?this._mouseOverTimeout=window.setTimeout(()=>{this._show(),this._mouseOverTimeout=void 0},this._delay):this._show())}_onMouseOut(e){if(this._mouseOverTimeout){window.clearTimeout(this._mouseOverTimeout),this._mouseOverTimeout=void 0;return}this.hide()}_show(){let e;this._builder&&typeof this._builder=="function"&&(e=this._builder()),this._adapter.showTooltip(this._position,e),this._adapter.hasTooltipElement()&&(this._isOpen=!0,this._adapter.addWindowListener("scroll",this._scrollListener))}hide(){this._isOpen&&(this._touchTimeout&&this._clearTouchTimer(),this._isOpen=!1,this._adapter.removeWindowListener("scroll",this._scrollListener),this._adapter.hideTooltip())}_onScroll(e){this._isOpen&&this.hide()}_targetInteracted(){this._mouseOverTimeout&&window.clearTimeout(this._mouseOverTimeout),this._isOpen&&this.hide()}get text(){return this._text||this._adapter.getInnerText()}set text(e){this._text!==e&&(this._text=e,this._adapter.setTextContent(this._text),this._adapter.setHostAttribute(r.attributes.TEXT,this._text))}get builder(){return this._builder}set builder(e){this._builder=e}get target(){return this._target}set target(e){this._target!==e&&(this._target=e,this._adapter.hasTargetElement()&&this._removeTargetListeners(),this._adapter.initializeTargetElement(this._target),this._adapter.hasTargetElement()&&this._addTargetListeners(),this._adapter.setHostAttribute(r.attributes.TARGET,p(this._target)?this._target:""))}get delay(){return this._delay}set delay(e){this._delay!==e&&(this._delay=e,this._adapter.setHostAttribute(r.attributes.DELAY,p(this._delay)?this._delay.toString():""))}get position(){return this._position}set position(e){this._position!==e&&(this._position=e,this._adapter.setHostAttribute(r.attributes.POSITION,p(this._position)?this._position.toString():""))}set open(e){this._show()}get open(){return this._isOpen}get tooltipElement(){return this._adapter.getTooltipElement()}};_._tooltipIdentifier=0;var m=_;var o=class extends x{constructor(){super();this._foundation=new m(new h(this))}static get observedAttributes(){return[r.attributes.TEXT,r.attributes.TARGET,r.attributes.DELAY,r.attributes.POSITION]}connectedCallback(){I(this),requestAnimationFrame(()=>this._foundation.initialize())}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,i,l){switch(t){case r.attributes.TEXT:this.text=l;break;case r.attributes.TARGET:this.target=l;break;case r.attributes.DELAY:this.delay=T(l);break;case r.attributes.POSITION:this.position=l;break}}hide(){this._foundation.hide()}};n([a()],o.prototype,"text",2),n([a()],o.prototype,"builder",2),n([a()],o.prototype,"target",2),n([a()],o.prototype,"delay",2),n([a()],o.prototype,"position",2),n([a()],o.prototype,"open",2),n([a({set:!1})],o.prototype,"tooltipElement",2),o=n([O({name:r.elementName})],o);function tt(){L(o)}export{P as a,h as b,m as c,o as d,tt as e};
|
|
7
|
+
//# sourceMappingURL=chunk.FXIWCHLW.js.map
|