@tylertech/forge 3.0.0-next.12 → 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 +53072 -38831
- 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 +1 -1
- package/dist/esm/button-toggle/button-toggle/index.js +1 -1
- package/dist/esm/button-toggle/button-toggle-group/index.js +1 -1
- package/dist/esm/button-toggle/index.js +1 -1
- package/dist/esm/calendar/calendar-dropdown/index.js +1 -1
- package/dist/esm/calendar/calendar-menu/index.js +1 -1
- package/dist/esm/calendar/index.js +1 -1
- package/dist/esm/card/index.js +1 -1
- package/dist/esm/checkbox/index.js +1 -1
- package/dist/esm/chip-field/index.js +1 -1
- package/dist/esm/chips/chip/index.js +1 -1
- package/dist/esm/chips/chip-set/index.js +1 -1
- package/dist/esm/chips/index.js +1 -1
- package/dist/esm/chunks/{chunk.4USQ2AP6.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.OXGOCF4L.js → chunk.36C6SIPW.js} +2 -2
- package/dist/esm/chunks/{chunk.OXGOCF4L.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.HDO3WRH7.js → chunk.3HCYRDRI.js} +2 -2
- package/dist/esm/chunks/{chunk.UVJFHSMF.js → chunk.3R4BUIQP.js} +2 -2
- package/dist/esm/chunks/{chunk.37JFBP4X.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.Q7BWJCT5.js.map → chunk.5LVZVQXB.js.map} +2 -2
- package/dist/esm/chunks/{chunk.HKSXC5VK.js → chunk.5N4N6DL6.js} +2 -2
- package/dist/esm/chunks/{chunk.AQ7ROWO4.js → chunk.5PG6WIIX.js} +2 -2
- package/dist/esm/chunks/{chunk.CLD75EBJ.js → chunk.5RM65QPN.js} +2 -2
- package/dist/esm/chunks/{chunk.CLD75EBJ.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.C7VEJINB.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.5ASOX23Q.js → chunk.72JVXGHF.js} +2 -2
- package/dist/esm/chunks/{chunk.5ASOX23Q.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.OQAD6MFL.js → chunk.7ZROQ6D3.js} +2 -2
- package/dist/esm/chunks/{chunk.W7H2ZYNR.js → chunk.AMLT6XJP.js} +2 -2
- package/dist/esm/chunks/{chunk.TCFKFKZW.js → chunk.AMZZKEAE.js} +2 -2
- package/dist/esm/chunks/{chunk.DH76CMUT.js → chunk.APPY5AYL.js} +2 -2
- package/dist/esm/chunks/{chunk.7M4HRJYP.js → chunk.ARQMMZJL.js} +2 -2
- package/dist/esm/chunks/{chunk.QNVVUUNQ.js → chunk.AUBOJZQ7.js} +2 -2
- package/dist/esm/chunks/chunk.AUCBR6CC.js +7 -0
- package/dist/esm/chunks/{chunk.UAVC4YLD.js.map → chunk.AUCBR6CC.js.map} +2 -2
- package/dist/esm/chunks/{chunk.RXLORASN.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.TSH7BTC3.js.map → chunk.BQ2X5SBP.js.map} +2 -2
- package/dist/esm/chunks/{chunk.NDJZYFRT.js → chunk.BTXY3XMJ.js} +2 -2
- package/dist/esm/chunks/{chunk.AY43NTAK.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.PLNLLKP2.js → chunk.FLWNOP42.js} +2 -2
- package/dist/esm/chunks/{chunk.IJ2I25V3.js → chunk.FXIWCHLW.js} +2 -2
- package/dist/esm/chunks/chunk.FYVDTZLF.js +7 -0
- package/dist/esm/chunks/{chunk.YP2NHWIW.js.map → chunk.FYVDTZLF.js.map} +2 -2
- package/dist/esm/chunks/{chunk.6VSFLBZF.js → chunk.G73KL7P2.js} +2 -2
- package/dist/esm/chunks/chunk.G7SMCLHQ.js +7 -0
- package/dist/esm/chunks/chunk.G7SMCLHQ.js.map +7 -0
- package/dist/esm/chunks/{chunk.PDSOXEMY.js → chunk.GNDKQPDV.js} +2 -2
- package/dist/esm/chunks/{chunk.RWUJGZ3R.js → chunk.HAKF2T2D.js} +2 -2
- package/dist/esm/chunks/{chunk.ZYVXIP42.js → chunk.HDG2GHKC.js} +2 -2
- package/dist/esm/chunks/{chunk.EY37FYZ4.js → chunk.HOLCNJXC.js} +2 -2
- package/dist/esm/chunks/{chunk.DQVYB55P.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.WK2L7BPJ.js → chunk.IDMDBMBR.js} +2 -2
- package/dist/esm/chunks/{chunk.WJXDDQUK.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.DABGA7I6.js → chunk.IMLJD35R.js} +2 -2
- package/dist/esm/chunks/{chunk.66X366TV.js → chunk.IT7XPDAV.js} +2 -2
- package/dist/esm/chunks/chunk.JAWV5Y5T.js +7 -0
- package/dist/esm/chunks/{chunk.I5SFCLDD.js.map → chunk.JAWV5Y5T.js.map} +3 -3
- package/dist/esm/chunks/{chunk.RNUGVHZF.js → chunk.JVLJH6PR.js} +2 -2
- package/dist/esm/chunks/chunk.KPJWP77R.js +7 -0
- package/dist/esm/chunks/{chunk.Z6AFASMO.js → chunk.KV5IKYG2.js} +2 -2
- package/dist/esm/chunks/chunk.KV67JXOC.js +7 -0
- package/dist/esm/chunks/{chunk.OQ75YGB6.js.map → chunk.KV67JXOC.js.map} +2 -2
- package/dist/esm/chunks/{chunk.7UJAI6P2.js → chunk.LCR4YH3O.js} +2 -2
- package/dist/esm/chunks/{chunk.2WSXSOYB.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.VDGJ4UDL.js → chunk.MKJCHUJH.js} +2 -2
- package/dist/esm/chunks/{chunk.IXGXASHQ.js → chunk.MWYQRG5W.js} +2 -2
- package/dist/esm/chunks/{chunk.CBIHNCT5.js → chunk.NUMKGUCK.js} +2 -2
- package/dist/esm/chunks/{chunk.R6NA7SV2.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.LNLO36U6.js.map → chunk.PYR2OCCH.js.map} +2 -2
- package/dist/esm/chunks/chunk.QJCNMYD3.js +7 -0
- package/dist/esm/chunks/{chunk.URFSXQKR.js.map → chunk.QJCNMYD3.js.map} +2 -2
- package/dist/esm/chunks/{chunk.CQQSOTZ5.js → chunk.QLCVRJ3Q.js} +2 -2
- package/dist/esm/chunks/chunk.QLOYOZN3.js +7 -0
- package/dist/esm/chunks/{chunk.JCO4M4PF.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.YXXKPT6P.js.map → chunk.QQRPV4RN.js.map} +2 -2
- package/dist/esm/chunks/{chunk.E4TAHUQO.js → chunk.R6LQBI42.js} +2 -2
- package/dist/esm/chunks/{chunk.FK6NNHXH.js → chunk.RES7WDKH.js} +2 -2
- 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.SEWAMWO6.js → chunk.SIRXAA3O.js} +2 -2
- package/dist/esm/chunks/{chunk.WWTQAN4G.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.RBFGJH3C.js → chunk.TU74SREL.js} +2 -2
- package/dist/esm/chunks/{chunk.4JF54GDJ.js → chunk.URJQNB3S.js} +2 -2
- package/dist/esm/chunks/{chunk.C2MQN7MI.js → chunk.V24M62MC.js} +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.R2KOYHIZ.js → chunk.VO6YJCEU.js} +2 -2
- package/dist/esm/chunks/{chunk.C5ZUGOOC.js → chunk.W2LN45WY.js} +2 -2
- package/dist/esm/chunks/{chunk.4XJYS5WH.js → chunk.WMVYRDUJ.js} +2 -2
- package/dist/esm/chunks/{chunk.4XJYS5WH.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.HBCDD25D.js → chunk.XEFWZKHQ.js} +2 -2
- package/dist/esm/chunks/{chunk.MHU452GM.js → chunk.XLL7L2UB.js} +2 -2
- package/dist/esm/chunks/{chunk.UZPZ6KUN.js → chunk.XNFS7YIB.js} +2 -2
- package/dist/esm/chunks/{chunk.UZPZ6KUN.js.map → chunk.XNFS7YIB.js.map} +2 -2
- package/dist/esm/chunks/chunk.XYAZVLPR.js +7 -0
- package/dist/esm/chunks/{chunk.AHAARGYM.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.YWAUEUAH.js +7 -0
- package/dist/esm/chunks/chunk.YWAUEUAH.js.map +7 -0
- package/dist/esm/chunks/{chunk.YIFI5D2X.js → chunk.Z5RROENA.js} +2 -2
- package/dist/esm/chunks/{chunk.YIFI5D2X.js.map → chunk.Z5RROENA.js.map} +3 -3
- package/dist/esm/chunks/{chunk.ZREXLSAJ.js → chunk.Z5ZLKM7W.js} +2 -2
- package/dist/esm/chunks/chunk.ZGRQDDHO.js +7 -0
- package/dist/esm/chunks/{chunk.U5XNDTSZ.js.map → chunk.ZGRQDDHO.js.map} +2 -2
- package/dist/esm/chunks/{chunk.TGVLYX5F.js → chunk.ZKM667OT.js} +2 -2
- package/dist/esm/chunks/{chunk.TGVLYX5F.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/focus-indicator/index.js +1 -1
- package/dist/esm/icon/index.js +1 -1
- package/dist/esm/icon-button/index.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/inline-message/index.js +1 -1
- package/dist/esm/keyboard-shortcut/index.js +1 -1
- package/dist/esm/label/index.js +7 -0
- package/dist/esm/label/index.js.map +7 -0
- package/dist/esm/label-value/index.js +1 -1
- package/dist/esm/linear-progress/index.js +1 -1
- package/dist/esm/list/index.js +1 -1
- package/dist/esm/list/list/index.js +1 -1
- package/dist/esm/list/list-item/index.js +1 -1
- package/dist/esm/list-dropdown/index.js +1 -1
- package/dist/esm/menu/index.js +1 -1
- package/dist/esm/open-icon/index.js +1 -1
- package/dist/esm/page-state/index.js +1 -1
- package/dist/esm/paginator/index.js +1 -1
- package/dist/esm/popup/index.js +1 -1
- package/dist/esm/product-icon/index.js +1 -1
- package/dist/esm/profile-card/index.js +1 -1
- package/dist/esm/quantity-field/index.js +1 -1
- package/dist/esm/radio/index.js +1 -1
- package/dist/esm/ripple/index.js +1 -1
- package/dist/esm/scaffold/index.js +1 -1
- package/dist/esm/select/core/index.js +1 -1
- package/dist/esm/select/index.js +1 -1
- package/dist/esm/select/option/index.js +1 -1
- package/dist/esm/select/option-group/index.js +1 -1
- package/dist/esm/select/select/index.js +1 -1
- package/dist/esm/select/select-dropdown/index.js +1 -1
- package/dist/esm/skeleton/index.js +1 -1
- package/dist/esm/slider/index.js +1 -1
- package/dist/esm/split-button/index.js +7 -0
- package/dist/esm/split-button/index.js.map +7 -0
- package/dist/esm/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view-panel/index.js +1 -1
- package/dist/esm/stack/index.js +1 -1
- package/dist/esm/state-layer/index.js +1 -1
- package/dist/esm/stepper/index.js +1 -1
- package/dist/esm/stepper/step/index.js +1 -1
- package/dist/esm/stepper/stepper/index.js +1 -1
- package/dist/esm/switch/index.js +1 -1
- package/dist/esm/table/index.js +1 -1
- package/dist/esm/tabs/index.js +1 -1
- package/dist/esm/tabs/tab/index.js +1 -1
- package/dist/esm/tabs/tab-bar/index.js +1 -1
- package/dist/esm/text-field/index.js +1 -1
- package/dist/esm/time-picker/index.js +1 -1
- package/dist/esm/toast/index.js +1 -1
- package/dist/esm/toolbar/index.js +1 -1
- package/dist/esm/tooltip/index.js +1 -1
- package/dist/esm/view-switcher/index.js +1 -1
- package/dist/esm/view-switcher/view/index.js +1 -1
- package/dist/forge-dark.css +1 -1
- package/dist/forge.css +1 -1
- package/dist/table/forge-table.css +1 -1
- package/dist/theme/forge-theme.css +1 -1
- package/dist/typography/forge-typography.css +1 -1
- package/esm/app-bar/app-bar.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-foundation.js +2 -2
- package/esm/banner/banner-constants.js +1 -1
- package/esm/banner/banner.js +2 -2
- package/esm/bottom-sheet/bottom-sheet.js +1 -1
- package/esm/busy-indicator/busy-indicator.js +2 -2
- package/esm/button/base/base-button-adapter.d.ts +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-toggle/button-toggle/button-toggle.js +1 -1
- package/esm/calendar/calendar-dom-utils.js +18 -30
- package/esm/calendar/calendar.js +1 -1
- package/esm/checkbox/checkbox-adapter.d.ts +50 -59
- package/esm/checkbox/checkbox-adapter.js +104 -186
- package/esm/checkbox/checkbox-component-delegate.d.ts +18 -9
- package/esm/checkbox/checkbox-component-delegate.js +58 -51
- package/esm/checkbox/checkbox-constants.d.ts +14 -56
- package/esm/checkbox/checkbox-constants.js +17 -50
- package/esm/checkbox/checkbox-foundation.d.ts +48 -18
- package/esm/checkbox/checkbox-foundation.js +139 -139
- package/esm/checkbox/checkbox.d.ts +120 -9
- package/esm/checkbox/checkbox.js +235 -36
- package/esm/checkbox/index.d.ts +1 -1
- package/esm/checkbox/index.js +1 -1
- package/esm/chip-field/chip-field-constants.d.ts +3 -0
- package/esm/chip-field/chip-field-constants.js +4 -0
- package/esm/chip-field/chip-field-foundation.d.ts +5 -0
- package/esm/chip-field/chip-field-foundation.js +20 -1
- package/esm/chip-field/chip-field.d.ts +5 -0
- package/esm/chip-field/chip-field.js +19 -1
- package/esm/chips/chip/chip.js +1 -1
- package/esm/circular-progress/circular-progress-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 +13 -1
- package/esm/core/base/base-adapter.js +17 -0
- package/esm/core/base/base-component.d.ts +0 -38
- package/esm/core/base/base-component.js +0 -4
- package/esm/core/base/base-focusable-component.d.ts +49 -0
- package/esm/core/base/base-focusable-component.js +90 -0
- package/esm/core/base/base-form-component.d.ts +45 -0
- package/esm/core/base/base-form-component.js +19 -0
- package/esm/core/base/base-nullable-form-component.d.ts +35 -0
- package/esm/core/base/base-nullable-form-component.js +20 -0
- package/esm/core/utils/feature-detection.d.ts +10 -0
- package/esm/core/utils/feature-detection.js +12 -0
- package/esm/core/utils/index.d.ts +2 -1
- package/esm/core/utils/index.js +2 -1
- package/esm/core/utils/reflect-utils.d.ts +107 -0
- package/esm/core/utils/reflect-utils.js +227 -0
- package/esm/date-picker/base/base-date-picker-utils.js +5 -8
- package/esm/field/field-constants.d.ts +8 -0
- package/esm/field/field-constants.js +10 -8
- package/esm/file-picker/file-picker-component-delegate.js +1 -1
- package/esm/file-picker/file-picker.js +1 -1
- package/esm/focus-indicator/focus-indicator-adapter.d.ts +2 -2
- package/esm/focus-indicator/focus-indicator-adapter.js +3 -3
- package/esm/focus-indicator/focus-indicator-foundation.js +3 -2
- package/esm/focus-indicator/focus-indicator.js +1 -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 +2 -0
- package/esm/index.js +4 -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.js +0 -1
- package/esm/list/list/list.js +1 -1
- package/esm/list/list-item/list-item-adapter.d.ts +12 -4
- package/esm/list/list-item/list-item-adapter.js +36 -5
- package/esm/list/list-item/list-item-constants.d.ts +4 -0
- package/esm/list/list-item/list-item-constants.js +3 -1
- package/esm/list/list-item/list-item-foundation.d.ts +9 -0
- package/esm/list/list-item/list-item-foundation.js +34 -4
- package/esm/list/list-item/list-item.d.ts +15 -4
- package/esm/list/list-item/list-item.js +29 -6
- package/esm/menu/menu-constants.js +1 -1
- package/esm/menu/menu-foundation.js +0 -4
- package/esm/menu/menu.js +1 -1
- package/esm/paginator/paginator-adapter.d.ts +4 -2
- package/esm/paginator/paginator-adapter.js +21 -8
- package/esm/paginator/paginator-constants.js +4 -4
- package/esm/paginator/paginator-foundation.d.ts +2 -0
- package/esm/paginator/paginator-foundation.js +19 -16
- package/esm/paginator/paginator.d.ts +1 -0
- package/esm/paginator/paginator.js +5 -2
- package/esm/profile-card/profile-card.js +2 -2
- package/esm/quantity-field/quantity-field-constants.js +2 -2
- package/esm/select/core/base-select-foundation.js +3 -1
- package/esm/slider/slider-adapter.d.ts +1 -1
- package/esm/slider/slider-adapter.js +3 -2
- package/esm/slider/slider-constants.js +3 -3
- package/esm/slider/slider.d.ts +6 -11
- package/esm/slider/slider.js +11 -7
- package/esm/split-button/index.d.ts +10 -0
- package/esm/split-button/index.js +14 -0
- package/esm/split-button/split-button-adapter.d.ts +30 -0
- package/esm/split-button/split-button-adapter.js +84 -0
- package/esm/split-button/split-button-constants.d.ts +21 -0
- package/esm/split-button/split-button-constants.js +23 -0
- package/esm/split-button/split-button-foundation.d.ts +37 -0
- package/esm/split-button/split-button-foundation.js +77 -0
- package/esm/split-button/split-button.d.ts +57 -0
- package/esm/split-button/split-button.js +103 -0
- package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
- package/esm/state-layer/state-layer-adapter.js +1 -0
- package/esm/state-layer/state-layer-foundation.js +10 -1
- package/esm/state-layer/state-layer.js +1 -1
- package/esm/stepper/stepper/stepper-foundation.js +1 -1
- package/esm/switch/index.d.ts +2 -0
- package/esm/switch/index.js +2 -0
- package/esm/switch/switch-adapter.d.ts +30 -4
- package/esm/switch/switch-adapter.js +100 -18
- package/esm/switch/switch-component-delegate.d.ts +22 -7
- package/esm/switch/switch-component-delegate.js +63 -28
- package/esm/switch/switch-constants.d.ts +12 -2
- package/esm/switch/switch-constants.js +22 -11
- package/esm/switch/switch-foundation.d.ts +23 -4
- package/esm/switch/switch-foundation.js +63 -11
- package/esm/switch/switch.d.ts +28 -16
- package/esm/switch/switch.js +65 -36
- package/esm/table/table-foundation.d.ts +2 -0
- package/esm/table/table-foundation.js +17 -6
- package/esm/table/table-utils.js +13 -1
- package/esm/table/types.d.ts +1 -0
- package/esm/tabs/tab/tab.js +2 -2
- package/esm/tabs/tab-bar/tab-bar-adapter.js +17 -20
- package/esm/tabs/tab-bar/tab-bar.js +1 -1
- package/esm/time-picker/time-picker-adapter.js +5 -8
- package/esm/toast/toast-adapter.d.ts +1 -1
- package/esm/toast/toast-adapter.js +1 -1
- package/esm/toast/toast.js +2 -2
- package/package.json +1 -2
- 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-toggle/button-toggle/_mixins.scss +26 -7
- package/styles/calendar/calendar.scss +0 -4
- package/styles/{button/forge-button.scss → checkbox/_configuration.scss} +4 -3
- package/styles/checkbox/_core.scss +157 -0
- package/styles/checkbox/_token-utils.scss +30 -0
- package/styles/checkbox/checkbox.scss +143 -7
- package/styles/checkbox/index.scss +8 -0
- package/styles/chips/chip/_mixins.scss +21 -7
- package/styles/circular-progress/_configuration.scss +8 -15
- package/styles/circular-progress/_core.scss +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 +67 -4
- package/styles/core/styles/spacing/index.scss +7 -0
- 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/focus-indicator/_tokens.scss +8 -5
- package/styles/core/styles/tokens/icon-button/_tokens.scss +106 -0
- package/styles/core/styles/tokens/index.scss +0 -1
- package/styles/core/styles/tokens/linear-progress/_tokens.scss +14 -3
- package/styles/core/styles/tokens/spacing/_tokens.scss +15 -1
- package/styles/core/styles/tokens/split-button/_tokens.scss +21 -0
- package/styles/core/styles/tokens/switch/_tokens.scss +4 -4
- package/styles/core/styles/tokens/tabs/tab/_tokens.scss +1 -1
- package/styles/core/styles/tokens/tabs/tab-bar/_tokens.scss +2 -2
- package/styles/core/styles/tokens/theme/_token-utils.scss +8 -4
- package/styles/core/styles/tokens/typography/_tokens.label.scss +0 -1
- package/styles/core/styles/typography/index.scss +26 -1
- package/styles/file-picker/_mixins.scss +1 -1
- package/styles/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 +2 -4
- package/styles/list/list/_core.scss +3 -8
- package/styles/list/list/_token-utils.scss +30 -0
- package/styles/list/list/index.scss +1 -0
- package/styles/list/list/list.scss +11 -0
- package/styles/list/list-item/_configuration.scss +5 -61
- package/styles/list/list-item/_core.scss +51 -56
- package/styles/list/list-item/_token-utils.scss +30 -0
- package/styles/list/list-item/index.scss +1 -0
- package/styles/list/list-item/list-item.scss +10 -3
- 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 +58 -63
- package/styles/slider/_token-utils.scss +30 -0
- package/styles/slider/index.scss +1 -0
- package/styles/slider/slider.scss +26 -3
- package/styles/split-button/_configuration.scss +12 -0
- package/styles/split-button/_token-utils.scss +30 -0
- package/styles/split-button/index.scss +7 -0
- package/styles/split-button/split-button.scss +97 -0
- package/styles/state-layer/_configuration.scss +2 -9
- package/styles/state-layer/_core.scss +11 -16
- package/styles/state-layer/_token-utils.scss +31 -0
- package/styles/state-layer/index.scss +1 -0
- package/styles/state-layer/state-layer.scss +7 -0
- package/styles/switch/_configuration.scss +2 -87
- package/styles/switch/_core.scss +83 -86
- package/styles/switch/_token-utils.scss +30 -0
- package/styles/switch/index.scss +1 -0
- package/styles/switch/switch.scss +118 -84
- package/styles/table/_mixins.scss +20 -2
- package/styles/tabs/tab/_configuration.scss +7 -49
- package/styles/tabs/tab/_core.scss +27 -32
- package/styles/tabs/tab/_token-utils.scss +30 -0
- package/styles/tabs/tab/index.scss +1 -0
- package/styles/tabs/tab/tab.scss +87 -44
- package/styles/tabs/tab-bar/_configuration.scss +2 -5
- package/styles/tabs/tab-bar/_core.scss +26 -9
- package/styles/tabs/tab-bar/_token-utils.scss +30 -0
- package/styles/tabs/tab-bar/index.scss +2 -1
- package/styles/tabs/tab-bar/tab-bar.scss +68 -34
- package/styles/toast/_mixins.scss +1 -1
- package/styles/toast/toast.scss +0 -2
- package/styles/typography/forge-typography.scss +5 -2
- package/dist/button/forge-button.css +0 -6
- package/dist/esm/chunks/chunk.2LIWNFQK.js +0 -7
- package/dist/esm/chunks/chunk.3X4N4ZPY.js +0 -7
- package/dist/esm/chunks/chunk.3X4N4ZPY.js.map +0 -7
- package/dist/esm/chunks/chunk.436MTO6R.js +0 -7
- package/dist/esm/chunks/chunk.436MTO6R.js.map +0 -7
- package/dist/esm/chunks/chunk.4CXLGEJO.js +0 -7
- package/dist/esm/chunks/chunk.4CXLGEJO.js.map +0 -7
- package/dist/esm/chunks/chunk.7L66GZDN.js +0 -7
- package/dist/esm/chunks/chunk.7PPBXNAD.js +0 -7
- package/dist/esm/chunks/chunk.7PPBXNAD.js.map +0 -7
- package/dist/esm/chunks/chunk.A3ZDCBLA.js +0 -7
- package/dist/esm/chunks/chunk.A3ZDCBLA.js.map +0 -7
- package/dist/esm/chunks/chunk.CMRVP4EA.js +0 -7
- package/dist/esm/chunks/chunk.CZEF72BG.js +0 -12
- package/dist/esm/chunks/chunk.CZEF72BG.js.map +0 -7
- package/dist/esm/chunks/chunk.D5ZHKPCL.js +0 -7
- package/dist/esm/chunks/chunk.D5ZHKPCL.js.map +0 -7
- package/dist/esm/chunks/chunk.DLQSINSS.js +0 -7
- package/dist/esm/chunks/chunk.DLQSINSS.js.map +0 -7
- package/dist/esm/chunks/chunk.G6JWSERI.js +0 -7
- package/dist/esm/chunks/chunk.G6JWSERI.js.map +0 -7
- package/dist/esm/chunks/chunk.GO5A4GKZ.js +0 -7
- package/dist/esm/chunks/chunk.GO5A4GKZ.js.map +0 -7
- package/dist/esm/chunks/chunk.GWIXDVIA.js +0 -7
- package/dist/esm/chunks/chunk.GWIXDVIA.js.map +0 -7
- package/dist/esm/chunks/chunk.HGH6SSHZ.js +0 -7
- package/dist/esm/chunks/chunk.HGH6SSHZ.js.map +0 -7
- package/dist/esm/chunks/chunk.HJ23XQDJ.js +0 -7
- package/dist/esm/chunks/chunk.HJ23XQDJ.js.map +0 -7
- package/dist/esm/chunks/chunk.I5SFCLDD.js +0 -7
- package/dist/esm/chunks/chunk.IURDWGLD.js +0 -7
- package/dist/esm/chunks/chunk.IURDWGLD.js.map +0 -7
- package/dist/esm/chunks/chunk.JCO4M4PF.js +0 -7
- package/dist/esm/chunks/chunk.LNLO36U6.js +0 -7
- package/dist/esm/chunks/chunk.LV7XF22P.js +0 -7
- package/dist/esm/chunks/chunk.LV7XF22P.js.map +0 -7
- package/dist/esm/chunks/chunk.MLTEGJH6.js +0 -7
- package/dist/esm/chunks/chunk.MWWY5TX5.js +0 -7
- package/dist/esm/chunks/chunk.MWWY5TX5.js.map +0 -7
- package/dist/esm/chunks/chunk.O5GE3FFV.js +0 -7
- package/dist/esm/chunks/chunk.O5GE3FFV.js.map +0 -7
- package/dist/esm/chunks/chunk.OQ75YGB6.js +0 -7
- package/dist/esm/chunks/chunk.PCOOIP2H.js +0 -7
- package/dist/esm/chunks/chunk.PCOOIP2H.js.map +0 -7
- package/dist/esm/chunks/chunk.PDICDA2V.js +0 -7
- package/dist/esm/chunks/chunk.PDICDA2V.js.map +0 -7
- package/dist/esm/chunks/chunk.Q7BWJCT5.js +0 -7
- package/dist/esm/chunks/chunk.TSH7BTC3.js +0 -7
- package/dist/esm/chunks/chunk.U5XNDTSZ.js +0 -7
- package/dist/esm/chunks/chunk.UAKQY7QB.js +0 -7
- package/dist/esm/chunks/chunk.UAKQY7QB.js.map +0 -7
- package/dist/esm/chunks/chunk.UAVC4YLD.js +0 -7
- package/dist/esm/chunks/chunk.URFSXQKR.js +0 -7
- package/dist/esm/chunks/chunk.V6443MP3.js +0 -7
- package/dist/esm/chunks/chunk.V6443MP3.js.map +0 -7
- package/dist/esm/chunks/chunk.VAAID3SH.js +0 -7
- package/dist/esm/chunks/chunk.VAAID3SH.js.map +0 -7
- package/dist/esm/chunks/chunk.VPNDAKM3.js +0 -7
- package/dist/esm/chunks/chunk.VPNDAKM3.js.map +0 -7
- package/dist/esm/chunks/chunk.WCTSXMGU.js +0 -7
- package/dist/esm/chunks/chunk.WCTSXMGU.js.map +0 -7
- package/dist/esm/chunks/chunk.WOMYKBUG.js +0 -12
- package/dist/esm/chunks/chunk.WOMYKBUG.js.map +0 -7
- package/dist/esm/chunks/chunk.WVGIT7F7.js +0 -7
- package/dist/esm/chunks/chunk.WVGIT7F7.js.map +0 -7
- package/dist/esm/chunks/chunk.YOXZOPAC.js +0 -7
- package/dist/esm/chunks/chunk.YOXZOPAC.js.map +0 -7
- package/dist/esm/chunks/chunk.YP2NHWIW.js +0 -7
- package/dist/esm/chunks/chunk.YPA27RX7.js +0 -7
- package/dist/esm/chunks/chunk.YXXKPT6P.js +0 -7
- package/dist/esm/chunks/chunk.ZMUDT5UK.js +0 -7
- package/dist/esm/chunks/chunk.ZMUDT5UK.js.map +0 -7
- package/dist/icon-button/forge-icon-button.css +0 -6
- package/esm/core/utils/a11y-utils.d.ts +0 -32
- package/esm/core/utils/a11y-utils.js +0 -111
- 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/dist/esm/chunks/{chunk.4USQ2AP6.js.map → chunk.2MSL7CYM.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.HDO3WRH7.js.map → chunk.3HCYRDRI.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.UVJFHSMF.js.map → chunk.3R4BUIQP.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.37JFBP4X.js.map → chunk.3ZPSN2QG.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.HKSXC5VK.js.map → chunk.5N4N6DL6.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.AQ7ROWO4.js.map → chunk.5PG6WIIX.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.C7VEJINB.js.map → chunk.675V42JS.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.OQAD6MFL.js.map → chunk.7ZROQ6D3.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.W7H2ZYNR.js.map → chunk.AMLT6XJP.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.TCFKFKZW.js.map → chunk.AMZZKEAE.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.DH76CMUT.js.map → chunk.APPY5AYL.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.7M4HRJYP.js.map → chunk.ARQMMZJL.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.QNVVUUNQ.js.map → chunk.AUBOJZQ7.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.RXLORASN.js.map → chunk.BB4UF5RX.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.NDJZYFRT.js.map → chunk.BTXY3XMJ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.AY43NTAK.js.map → chunk.DTLZOIUQ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.PLNLLKP2.js.map → chunk.FLWNOP42.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.IJ2I25V3.js.map → chunk.FXIWCHLW.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.6VSFLBZF.js.map → chunk.G73KL7P2.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.PDSOXEMY.js.map → chunk.GNDKQPDV.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.RWUJGZ3R.js.map → chunk.HAKF2T2D.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.ZYVXIP42.js.map → chunk.HDG2GHKC.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.EY37FYZ4.js.map → chunk.HOLCNJXC.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.DQVYB55P.js.map → chunk.HRRJIFC5.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.WK2L7BPJ.js.map → chunk.IDMDBMBR.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.WJXDDQUK.js.map → chunk.IHAHJPMB.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.DABGA7I6.js.map → chunk.IMLJD35R.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.66X366TV.js.map → chunk.IT7XPDAV.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.RNUGVHZF.js.map → chunk.JVLJH6PR.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.MLTEGJH6.js.map → chunk.KPJWP77R.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.Z6AFASMO.js.map → chunk.KV5IKYG2.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.7UJAI6P2.js.map → chunk.LCR4YH3O.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.2WSXSOYB.js.map → chunk.LOG6GQOK.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.VDGJ4UDL.js.map → chunk.MKJCHUJH.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.IXGXASHQ.js.map → chunk.MWYQRG5W.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.CBIHNCT5.js.map → chunk.NUMKGUCK.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.R6NA7SV2.js.map → chunk.O6V3YNMO.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.CQQSOTZ5.js.map → chunk.QLCVRJ3Q.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.E4TAHUQO.js.map → chunk.R6LQBI42.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.FK6NNHXH.js.map → chunk.RES7WDKH.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.2LIWNFQK.js.map → chunk.RP674CRC.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.SEWAMWO6.js.map → chunk.SIRXAA3O.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.WWTQAN4G.js.map → chunk.SLJ6HDK7.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.RBFGJH3C.js.map → chunk.TU74SREL.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.4JF54GDJ.js.map → chunk.URJQNB3S.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.C2MQN7MI.js.map → chunk.V24M62MC.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.R2KOYHIZ.js.map → chunk.VO6YJCEU.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.C5ZUGOOC.js.map → chunk.W2LN45WY.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.HBCDD25D.js.map → chunk.XEFWZKHQ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.MHU452GM.js.map → chunk.XLL7L2UB.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.YPA27RX7.js.map → chunk.XYAZVLPR.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.AHAARGYM.js.map → chunk.YAERJVPL.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.7L66GZDN.js.map → chunk.YBZK6LJZ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.CMRVP4EA.js.map → chunk.YKIBREM5.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.ZREXLSAJ.js.map → chunk.Z5ZLKM7W.js.map} +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import{a as B}from"./chunk.S5QL4SPT.js";import{d as C}from"./chunk.STB2FEUA.js";import{a as H}from"./chunk.KVCDAZ6B.js";import{a as D,p as R}from"./chunk.VFKHRAWD.js";import{h as w,i as k}from"./chunk.YA3RDJCV.js";import{a as z}from"./chunk.HSI7B43D.js";import{a as d}from"./chunk.NVUMRW44.js";import{a as x,b as N,f as u}from"./chunk.36F2GVWS.js";import{a as T,e as I,f as c}from"./chunk.JAWV5Y5T.js";import{t as m,u as p}from"./chunk.K7FPXAFS.js";import{k as _,l as b}from"./chunk.J2M2MXP2.js";import{d as l}from"./chunk.M3QDAYD2.js";var V=`${N}slider`,K={ARIA_LABEL:"data-aria-label",ARIA_LABEL_START:"data-aria-label-start",ARIA_LABEL_END:"data-aria-label-end",VALUE:"value",VALUE_START:"value-start",VALUE_END:"value-end",LABEL:"label",LABEL_START:"label-start",LABEL_END:"label-end",MIN:"min",MAX:"max",STEP:"step",TICKMARKS:"tickmarks",LABELED:"labeled",RANGE:"range",DISABLED:"disabled",READONLY:"readonly"},G={ROOT:".forge-slider",TRACK:".track",HANDLE_CONTAINER:".handle-container",START_INPUT:"input.start",END_INPUT:"input.end",START_HANDLE:".handle.start",START_HANDLE_THUMB:".handle.start .handle-thumb",END_HANDLE:".handle.end",END_HANDLE_THUMB:".handle.end .handle-thumb",START_LABEL:".handle.start .handle-label",START_LABEL_CONTENT:".handle.start .handle-label-content",END_LABEL:".handle.end .handle-label",END_LABEL_CONTENT:".handle.end .handle-label-content",LABEL:".handle-label",INPUT:"input[type=range]"},X={RANGE:"range",TICKMARKS:"tickmarks",ON_TOP:"on-top",OVERLAPPING:"overlapping",HOVER:"hover",HANDLE:"handle",HANDLE_THUMB:"handle-thumb",HANDLE_START:"start",HANDLE_LABEL:"handle-label",LABEL:"handle-label",LABEL_CONTENT:"handle-label-content"},Y={INPUT:"forge-slider-input",CHANGE:"forge-slider-change"},j={START_FRACTION:"--_slider-start-fraction",END_FRACTION:"--_slider-end-fraction",TICK_COUNT:"--_slider-tick-count"},q={DEFAULT_STEP:1,DEFAULT_VALUE:50,DEFAULT_START_VALUE:33,DEFAULT_END_VALUE:67},a={elementName:V,attributes:K,selectors:G,classes:X,events:Y,numbers:q,cssCustomProperties:j};function M(o){let t=document.createElement("input");return t.type="range",t.id="start",t.min=String(o.min),t.max=String(o.max),t.step=String(o.step),t.valueAsNumber=o.valueStart,t.disabled=o.disabled,t.classList.add("start"),o.hasAttribute(a.attributes.ARIA_LABEL_START)&&t.setAttribute("aria-label",o.getAttribute(a.attributes.ARIA_LABEL_START)),t.setAttribute("aria-valuetext",String(o.valueStart)),t}function O(o){let t=document.createElement("div");t.classList.add(a.classes.HANDLE,a.classes.HANDLE_START),t.setAttribute("part","handle-start");let e=document.createElement("forge-state-layer");e.target="start",t.appendChild(e);let i=document.createElement("forge-focus-indicator");i.target="start",t.appendChild(i);let r=document.createElement("div");r.classList.add(a.classes.HANDLE_THUMB),r.setAttribute("part","handle-start-thumb"),t.appendChild(r);let n=document.createElement("div");n.classList.add(a.classes.HANDLE_LABEL),n.setAttribute("part","handle-start-label"),t.appendChild(n);let h=document.createElement("span");return h.textContent=o,h.classList.add(a.classes.LABEL_CONTENT),h.setAttribute("part","handle-start-label-content"),n.appendChild(h),t}function L(o){let t=document.createElement("div");t.classList.add(a.classes.LABEL);let e=document.createElement("span");return e.textContent=o,e.classList.add(a.classes.LABEL_CONTENT),t.appendChild(e),t}var v=class extends z{constructor(e){super(e);this._rootElement=c(e,a.selectors.ROOT),this._trackElement=c(e,a.selectors.TRACK),this._handleContainerElement=c(e,a.selectors.HANDLE_CONTAINER),this._endInputElement=c(e,a.selectors.END_INPUT),this._endHandleElement=c(e,a.selectors.END_HANDLE),this._endHandleThumbElement=c(e,a.selectors.END_HANDLE_THUMB),this._endLabelContentElement=c(e,a.selectors.END_LABEL_CONTENT)}addInputListener(e,i){this._getInputs().forEach(n=>n.addEventListener(e,i))}update({startFraction:e,endFraction:i,tickCount:r}){this._rootElement.style.setProperty(a.cssCustomProperties.START_FRACTION,String(e)),this._rootElement.style.setProperty(a.cssCustomProperties.END_FRACTION,String(i)),this._rootElement.style.setProperty(a.cssCustomProperties.TICK_COUNT,String(r))}updateLabels(e,i){var r;this._startLabelContentElement&&(this._startLabelContentElement.textContent=e),this._endLabelContentElement&&(this._endLabelContentElement.textContent=i),(r=this._startInputElement)==null||r.setAttribute("aria-valuetext",e),this._endInputElement.setAttribute("aria-valuetext",i)}updateHandleLayering(){let e=this._endInputElement.matches(":focus");this._startHandleElement&&m(this._startHandleElement,!e,a.classes.ON_TOP),m(this._endHandleElement,e,a.classes.ON_TOP)}tryHoverStartHandle(e){var i,r,n;this._startHandleThumbElement&&k(e,this._startHandleThumbElement)?(this._handleContainerElement.classList.add(a.classes.HOVER),(i=this._startHandleElement)==null||i.classList.add(a.classes.HOVER)):(r=this._startInputElement)!=null&&r.matches(":focus")||(this._handleContainerElement.classList.remove(a.classes.HOVER),(n=this._startHandleElement)==null||n.classList.remove(a.classes.HOVER))}tryHoverEndHandle(e){k(e,this._endHandleThumbElement)?(this._handleContainerElement.classList.add(a.classes.HOVER),this._endHandleElement.classList.add(a.classes.HOVER)):this._endInputElement.matches(":focus")||(this._handleContainerElement.classList.remove(a.classes.HOVER),this._endHandleElement.classList.remove(a.classes.HOVER))}tryDetectOverlap(){if(this._startHandleElement){let e=w(this._startHandleElement,this._endHandleElement);m(this._endHandleElement,e,a.classes.OVERLAPPING),m(this._startHandleElement,e,a.classes.OVERLAPPING)}}leaveHandleContainer(){this._handleContainerElement.classList.remove(a.classes.HOVER)}syncInputValues(e,i){if(this._startInputElement&&(this._startInputElement.valueAsNumber=e),this._endInputElement.valueAsNumber=i,this._startInputElement){let r=new FormData;r.append(this._component.nameStart,String(e)),r.append(this._component.nameEnd,String(i)),this._component[u].setFormValue(r)}else this._component[u].setFormValue(String(i))}setRange(e){var i,r;if(this._rootElement.classList.toggle(a.classes.RANGE,e),e){this._startInputElement=M(this._component),this._rootElement.insertAdjacentElement("afterbegin",this._startInputElement),this._endInputElement.valueAsNumber=this._component.valueEnd;let n=this._startInputElement.value;this._startHandleElement=O(n),this._handleContainerElement.insertAdjacentElement("afterbegin",this._startHandleElement),this._startHandleThumbElement=c(this._component,a.selectors.START_HANDLE_THUMB),this._startLabelContentElement=c(this._component,a.selectors.START_LABEL_CONTENT)}else(i=this._startInputElement)==null||i.remove(),(r=this._startHandleElement)==null||r.remove(),this._startInputElement=void 0,this._startHandleElement=void 0,this._startHandleThumbElement=void 0,this._startLabelContentElement=void 0}setTickmarks(e){this._trackElement.classList.toggle(a.classes.TICKMARKS,e)}setStep(e){this._getInputs().forEach(r=>r.step=String(e))}setMin(e){this._getInputs().forEach(r=>r.min=String(e))}setMax(e){this._getInputs().forEach(r=>r.max=String(e))}setDisabled(e){this._getInputs().forEach(n=>n.disabled=e),this._rootElement.querySelectorAll(D.elementName).forEach(n=>n.disabled=e)}setReadonly(e){this._getInputs().forEach(r=>r.readOnly=e)}toggleLabels(e){var r;if(this._rootElement.querySelectorAll(a.selectors.LABEL).forEach(n=>n.remove()),this._endLabelContentElement=void 0,this._startLabelContentElement=void 0,e){let n=L(this._endInputElement.value);if(this._endHandleElement.insertAdjacentElement("beforeend",n),this._endLabelContentElement=c(this._component,a.selectors.END_LABEL_CONTENT),this._startInputElement){let h=L(this._startInputElement.value);(r=this._startHandleElement)==null||r.insertAdjacentElement("beforeend",h),this._startLabelContentElement=c(this._component,a.selectors.START_LABEL_CONTENT)}}}setStartAriaLabel(e){this._startInputElement&&p(this._startInputElement,!!e,"aria-label",e)}setEndAriaLabel(e){p(this._endInputElement,!!e,"aria-label",e)}_getInputs(){let e=[];return this._startInputElement&&e.push(this._startInputElement),[...e,this._endInputElement]}};var g=class{constructor(t){this._adapter=t;this._value=a.numbers.DEFAULT_VALUE;this._valueStart=a.numbers.DEFAULT_START_VALUE;this._valueEnd=a.numbers.DEFAULT_END_VALUE;this._min=0;this._max=100;this._step=a.numbers.DEFAULT_STEP;this._tickmarks=!1;this._labeled=!0;this._range=!1;this._disabled=!1;this._readonly=!1;this._pointerEnterListener=e=>this._handlePointerEnter(e),this._pointerMoveListener=e=>this._handlePointerMove(e),this._pointerLeaveListener=e=>this._handlePointerLeave(e),this._changeUpdateListener=e=>this._handleInputUpdate(e),this._focusListener=e=>this._handleFocus(e)}initialize(){this._applyInputListeners(),this._update()}_update(){var y,S;let{value:t,valueStart:e,valueEnd:i}=this._clampMinMax(),r=this._step<=0?1:this._step,n=Math.max(this._max-this._min,r),h=this._range?((e!=null?e:this._min)-this._min)/n:0,f=this._range?i:t,F=((f!=null?f:this.min)-this.min)/n,P=n/r;this._adapter.update({startFraction:h,endFraction:F,tickCount:P}),this._adapter.syncInputValues(e,this._range?i:t),this._range&&this._adapter.tryDetectOverlap();let A=(y=this._labelStart)!=null?y:String(e),E=(S=this._labelEnd)!=null?S:String(this._range?i:t);typeof this._labelBuilder=="function"&&(this._range?(A=this._labelBuilder(e,"start"),E=this._labelBuilder(i,"end")):E=this._labelBuilder(t)),this._adapter.updateLabels(A,E)}_clampMinMax(){let t=this._value,e=this._valueStart,i=this._valueEnd;return this._range?(e>this._max?e=this._max:e<this._min&&(e=this._min),i>this._max?i=this._max:i<this._min&&(i=this._min)):t>this._max?t=this._max:this._value<this._min&&(t=this._min),{value:t,valueStart:e,valueEnd:i}}_applyInputListeners(){this._adapter.addInputListener("pointerenter",this._pointerEnterListener),this._adapter.addInputListener("pointermove",this._pointerMoveListener),this._adapter.addInputListener("pointerleave",this._pointerLeaveListener),this._adapter.addInputListener("input",this._changeUpdateListener),this._adapter.addInputListener("change",this._changeUpdateListener),this._adapter.addInputListener("focus",this._focusListener)}_handlePointerEnter(t){this._handlePointerMove(t)}_handlePointerMove({target:t,x:e,y:i}){t.id==="start"?this._adapter.tryHoverStartHandle({x:e,y:i}):this._adapter.tryHoverEndHandle({x:e,y:i})}_handlePointerLeave(t){this._adapter.leaveHandleContainer()}_handleInputUpdate(t){if(t.stopPropagation(),this._disabled||this._readonly){this._adapter.syncInputValues(this._valueStart,this._range?this._valueEnd:this._value);return}let e=t.target;if(this._range){let n=e.id==="start";if(n?this._valueStart=e.valueAsNumber:this._valueEnd=e.valueAsNumber,this._canClamp()){n?this._valueStart=this._valueEnd:this._valueEnd=this._valueStart,this._adapter.syncInputValues(this._valueStart,this._valueEnd),this._update();return}}else this._value=e.valueAsNumber;let i=t.type==="change"?a.events.CHANGE:a.events.INPUT,r=this._range?{valueStart:this._valueStart,valueEnd:this._valueEnd}:this._value;this._adapter.emitHostEvent(i,r,!0),this._update()}_handleFocus(t){this._adapter.updateHandleLayering()}_canClamp(){return this._valueStart>this._valueEnd||this._valueEnd<this._valueStart}get value(){return this._value}set value(t){this._value!==t&&(this._value=t,this._update())}get valueStart(){return this._valueStart}set valueStart(t){this._valueStart!==t&&(this._valueStart=t,this._update())}get valueEnd(){return this._valueEnd}set valueEnd(t){this._valueEnd!==t&&(this._valueEnd=t,this._update())}get label(){return this.labelEnd}set label(t){this.labelEnd=t}get labelStart(){return this._labelStart}set labelStart(t){this._labelStart!==t&&(this._labelStart=t,this._adapter.updateLabels(this._labelStart,this._labelEnd))}get labelEnd(){return this._labelEnd}set labelEnd(t){this._labelEnd!==t&&(this._labelEnd=t,this._adapter.updateLabels(this._labelStart,this._labelEnd))}get labelBuilder(){return this._labelBuilder}set labelBuilder(t){this._labelBuilder=t,this._update()}get min(){return this._min}set min(t){this._min!==t&&(this._min=t,this._adapter.setMin(this._min),this._update(),this._adapter.setHostAttribute(a.attributes.MIN,String(this._min)))}get max(){return this._max}set max(t){this._max!==t&&(this._max=t,this._adapter.setMax(this._max),this._update(),this._adapter.setHostAttribute(a.attributes.MAX,String(this._max)))}get step(){return this._step}set step(t){this._step!==t&&(this._step=t,this._adapter.setStep(this._step),this._update(),this._adapter.setHostAttribute(a.attributes.STEP,String(this._step)))}get tickmarks(){return this._tickmarks}set tickmarks(t){this._tickmarks!==t&&(this._tickmarks=t,this._adapter.setTickmarks(this._tickmarks),this._adapter.toggleHostAttribute(a.attributes.TICKMARKS,this._tickmarks))}get labeled(){return this._labeled}set labeled(t){this._labeled!==t&&(this._labeled=t,this._adapter.toggleLabels(this._labeled),this._update(),this._adapter.toggleHostAttribute(a.attributes.LABELED,this._labeled))}get range(){return this._range}set range(t){this._range!==t&&(this._range=t,this._adapter.setRange(this._range),this._range&&this._applyInputListeners(),this._update(),this._adapter.toggleHostAttribute(a.attributes.RANGE,this._range))}get disabled(){return this._disabled}set disabled(t){this._disabled!==t&&(this._disabled=t,this._adapter.setDisabled(t),this._adapter.toggleHostAttribute(a.attributes.DISABLED,this._disabled))}get readonly(){return this._readonly}set readonly(t){this._readonly!==t&&(this._readonly=t,this._adapter.setReadonly(t),this._adapter.toggleHostAttribute(a.attributes.READONLY,this._readonly))}set ariaLabel(t){this.ariaLabelEnd=t}set ariaLabelStart(t){this._adapter.setStartAriaLabel(t)}set ariaLabelEnd(t){this._adapter.setEndAriaLabel(t)}};var $='<template><div part="root" class="forge-slider"><input type="range" class="end" id="end" min="0" max="100" step="1" aria-valuetext="0"><div class="track" part="track"></div><div class="handle-container-padded"><div class="handle-container-block"><div class="handle-container"><div class="handle end" part="handle-end"><forge-state-layer exportparts="surface:state-layer" target="end"></forge-state-layer><forge-focus-indicator exportparts="indicator:focus-indicator" target="end"></forge-focus-indicator><div class="handle-thumb" part="handle-end-thumb"></div><div class="handle-label" part="handle-end-label"><span class="handle-label-content" part="handle-end-label-content"></span></div></div></div></div></div></div></template>',J=':host{display:-webkit-inline-box;display:inline-flex;vertical-align:middle;min-inline-size:100%}:host([hidden]){display:none}.forge-slider{--_slider-start-fraction:0;--_slider-end-fraction:0;--_slider-tick-count:100;--_slider-track-height:var(--forge-slider-track-height, 4px);--_slider-active-track-color:var(--forge-slider-active-track-color, var(--forge-theme-primary, #3f51b5));--_slider-active-track-height:var(--forge-slider-active-track-height, var(--_slider-track-height));--_slider-active-track-shape:var(--forge-slider-active-track-shape, var(--forge-shape-full, 9999px));--_slider-disabled-active-track-color:var(--forge-slider-disabled-active-track-color, var(--forge-theme-surface-container-high, #9e9e9e));--_slider-disabled-active-track-opacity:var(--forge-slider-disabled-active-track-opacity, 0.38);--_slider-disabled-handle-color:var(--forge-slider-disabled-handle-color, var(--forge-theme-surface-container-high, #9e9e9e));--_slider-disabled-inactive-track-color:var(--forge-slider-disabled-inactive-track-color, var(--forge-theme-surface-container-high, #9e9e9e));--_slider-disabled-inactive-track-opacity:var(--forge-slider-disabled-inactive-track-opacity, 0.12);--_slider-focus-handle-color:var(--forge-slider-focus-handle-color, var(--forge-theme-primary, #3f51b5));--_slider-handle-color:var(--forge-slider-handle-color, var(--forge-theme-primary, #3f51b5));--_slider-handle-height:var(--forge-slider-handle-height, 20px);--_slider-handle-shape:var(--forge-slider-handle-shape, var(--forge-shape-round, 50%));--_slider-handle-width:var(--forge-slider-handle-width, 20px);--_slider-hover-handle-color:var(--forge-slider-hover-handle-color, var(--forge-theme-primary, #3f51b5));--_slider-inactive-track-color:var(--forge-slider-inactive-track-color, var(--forge-theme-primary-container, #d1d5ed));--_slider-inactive-track-height:var(--forge-slider-inactive-track-height, var(--_slider-track-height));--_slider-inactive-track-shape:var(--forge-slider-inactive-track-shape, var(--forge-shape-full, 9999px));--_slider-label-container-shape:var(--forge-slider-label-container-shape, var(--forge-shape-full, 9999px));--_slider-label-container-color:var(--forge-slider-label-container-color, var(--forge-theme-primary, #3f51b5));--_slider-label-container-height:var(--forge-slider-label-container-height, 28px);--_slider-label-text-color:var(--forge-slider-label-text-color, var(--forge-theme-on-primary, #ffffff));--_slider-pressed-handle-color:var(--forge-slider-pressed-handle-color, var(--forge-theme-primary, #3f51b5));--_slider-state-layer-size:var(--forge-slider-state-layer-size, 40px);--_slider-with-overlap-handle-outline-color:var(--forge-slider-with-overlap-handle-outline-color, var(--forge-theme-on-primary, #ffffff));--_slider-with-overlap-handle-outline-width:var(--forge-slider-with-overlap-handle-outline-width, 1px);--_slider-with-tick-marks-active-container-color:var(--forge-slider-with-tick-marks-active-container-color, var(--forge-theme-on-primary, #ffffff));--_slider-with-tick-marks-container-size:var(--forge-slider-with-tick-marks-container-size, 2px);--_slider-with-tick-marks-disabled-active-container-color:var(--forge-slider-with-tick-marks-disabled-active-container-color, var(--forge-theme-on-surface-container-high, #000000));--_slider-with-tick-marks-disabled-inactive-container-color:var(--forge-slider-with-tick-marks-disabled-inactive-container-color, var(--forge-theme-on-surface-container-high, #000000));--_slider-with-tick-marks-inactive-container-color:var(--forge-slider-with-tick-marks-inactive-container-color, var(--forge-theme-primary, #3f51b5))}.forge-slider{-webkit-box-flex:1;flex:1;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;position:relative;block-size:var(--_slider-state-layer-size);pointer-events:none;touch-action:none}.forge-slider.range :host-context([dir=rtl]) input.start{-webkit-clip-path:inset(0 0 0 calc(100% - (var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2)))));clip-path:inset(0 0 0 calc(100% - (var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2)))))}.forge-slider.range :host([dir=rtl]) input.start{-webkit-clip-path:inset(0 0 0 calc(100% - (var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2)))));clip-path:inset(0 0 0 calc(100% - (var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2)))))}.forge-slider.range input.start:dir(rtl){-webkit-clip-path:inset(0 0 0 calc(100% - (var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2)))));clip-path:inset(0 0 0 calc(100% - (var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2)))))}.forge-slider.range input.start{-webkit-clip-path:inset(0 calc(100% - (var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2)))) 0 0);clip-path:inset(0 calc(100% - (var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2)))) 0 0)}.forge-slider.range input.end{-webkit-clip-path:inset(0 0 0 calc(var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2))));clip-path:inset(0 0 0 calc(var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2))))}.forge-slider.range :host-context([dir=rtl]) input.end{-webkit-clip-path:inset(0 calc(var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2))) 0 0);clip-path:inset(0 calc(var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2))) 0 0)}.forge-slider.range :host([dir=rtl]) input.end{-webkit-clip-path:inset(0 calc(var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2))) 0 0);clip-path:inset(0 calc(var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2))) 0 0)}.forge-slider.range input.end:dir(rtl){-webkit-clip-path:inset(0 calc(var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2))) 0 0);clip-path:inset(0 calc(var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2))) 0 0)}.track{position:absolute;inset:0;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.track::after,.track::before{content:"";position:absolute;inset-inline-start:calc((var(--_slider-state-layer-size)/ 2) - var(--_slider-with-tick-marks-container-size));inset-inline-end:calc((var(--_slider-state-layer-size)/ 2) - var(--_slider-with-tick-marks-container-size));background-size:calc((100% - var(--_slider-with-tick-marks-container-size) * 2)/ var(--_slider-tick-count)) 100%}.track::before{block-size:var(--_slider-inactive-track-height);border-radius:var(--_slider-inactive-track-shape);background-color:var(--_slider-inactive-track-color)}.track::after{block-size:var(--_slider-active-track-height);border-radius:var(--_slider-active-track-shape);-webkit-clip-path:inset(0 calc(calc(var(--_slider-with-tick-marks-container-size) * min((1 - var(--_slider-end-fraction)) * 1000000000,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * (1 - var(--_slider-end-fraction))) 0 calc(calc(var(--_slider-with-tick-marks-container-size) * min(var(--_slider-start-fraction) * 1e9,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * var(--_slider-start-fraction)));clip-path:inset(0 calc(calc(var(--_slider-with-tick-marks-container-size) * min((1 - var(--_slider-end-fraction)) * 1000000000,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * (1 - var(--_slider-end-fraction))) 0 calc(calc(var(--_slider-with-tick-marks-container-size) * min(var(--_slider-start-fraction) * 1e9,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * var(--_slider-start-fraction)));background-color:var(--_slider-active-track-color)}.track.tickmarks::before{background-image:radial-gradient(circle at var(--_slider-with-tick-marks-container-size) center,var(--_slider-with-tick-marks-inactive-container-color) 0,var(--_slider-with-tick-marks-inactive-container-color) calc(var(--_slider-with-tick-marks-container-size)/ 2),transparent calc(var(--_slider-with-tick-marks-container-size)/ 2))}.track.tickmarks::after{background-image:radial-gradient(circle at var(--_slider-with-tick-marks-container-size) center,var(--_slider-with-tick-marks-active-container-color) 0,var(--_slider-with-tick-marks-active-container-color) calc(var(--_slider-with-tick-marks-container-size)/ 2),transparent calc(var(--_slider-with-tick-marks-container-size)/ 2))}.handle-container-block,.handle-container-padded{position:relative;block-size:100%;inline-size:100%}.handle-container-padded{padding-inline:calc(var(--_slider-state-layer-size)/ 2)}.handle-container{position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:calc(100% * var(--_slider-start-fraction));inline-size:calc(100% * (var(--_slider-end-fraction) - var(--_slider-start-fraction)))}.handle{position:absolute;block-size:var(--_slider-state-layer-size);inline-size:var(--_slider-state-layer-size);border-radius:var(--_slider-handle-shape);display:grid;place-items:center}.handle.start{inset-inline-start:calc(0px - var(--_slider-state-layer-size)/ 2)}.handle.end{inset-inline-end:calc(0px - var(--_slider-state-layer-size)/ 2)}.handle-thumb{-webkit-box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);position:absolute;height:var(--_slider-handle-height);width:var(--_slider-handle-width);border-radius:var(--_slider-handle-shape);background:var(--_slider-handle-color)}.handle-label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-label-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-label-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-font-size-scale, .75)));line-height:var(--forge-typography-label-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-label-letter-spacing, .0357142857em);text-transform:var(--forge-typography-label-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-label-text-decoration,inherit);text-decoration:var(--forge-typography-label-text-decoration,inherit);position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;display:grid;padding:4px;place-items:center;border-radius:var(--_slider-label-container-shape);color:var(--_slider-label-text-color);font-weight:500;white-space:nowrap;inset-block-end:100%;min-inline-size:var(--_slider-label-container-height);min-block-size:var(--_slider-label-container-height);background:var(--_slider-label-container-color);-webkit-transition:-webkit-transform var(--forge-animation-duration-short2, 100ms) var(--forge-animation-easing-standard, cubic-bezier(.2, 0, 0, 1));transition:-webkit-transform var(--forge-animation-duration-short2, 100ms) var(--forge-animation-easing-standard, cubic-bezier(.2, 0, 0, 1));transition:transform var(--forge-animation-duration-short2, 100ms) var(--forge-animation-easing-standard, cubic-bezier(.2, 0, 0, 1));transition:transform var(--forge-animation-duration-short2, 100ms) var(--forge-animation-easing-standard, cubic-bezier(.2, 0, 0, 1)),-webkit-transform var(--forge-animation-duration-short2, 100ms) var(--forge-animation-easing-standard, cubic-bezier(.2, 0, 0, 1));-webkit-transform-origin:center bottom;transform-origin:center bottom;-webkit-transform:scale(0);transform:scale(0)}.handle-label::after,.handle-label::before{content:"";position:absolute;display:block;background:inherit}.handle-label::before{inline-size:calc(var(--_slider-label-container-height)/ 2);block-size:calc(var(--_slider-label-container-height)/ 2);bottom:calc(var(--_slider-label-container-height)/ -10);-webkit-transform:rotate(45deg);transform:rotate(45deg)}.handle-label::after{inset:0;border-radius:inherit}.handle-label-content{z-index:1}.handle-container.hover .handle-thumb{background:var(--_slider-hover-handle-color)}:host(:not([disabled])) input.end:active~.handle-container-padded .handle.end>.handle-thumb,:host(:not([disabled])) input.start:active~.handle-container-padded .handle.start>.handle-thumb{background:var(--_slider-pressed-handle-color)}:host([disabled]) .handle-thumb{-webkit-box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12);box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12);background:var(--_slider-disabled-handle-color)}:host([disabled]) .handle-label{background:var(--_slider-disabled-handle-color)}:host([disabled]) .track::before{opacity:calc((1 / var(--_slider-disabled-active-track-opacity)) * var(--_slider-disabled-inactive-track-opacity));background-color:var(--_slider-disabled-inactive-track-color)}:host([disabled]) .track::after{background-color:var(--_slider-disabled-active-track-color)}:host([disabled]) .track.tickmarks::before{background-image:radial-gradient(circle at var(--_slider-with-tick-marks-container-size) center,var(--_slider-with-tick-marks-disabled-inactive-container-color) 0,var(--_slider-with-tick-marks-disabled-inactive-container-color) calc(var(--_slider-with-tick-marks-container-size)/ 2),transparent calc(var(--_slider-with-tick-marks-container-size)/ 2))}:host([disabled]) .track.tickmarks::after{background-image:radial-gradient(circle at var(--_slider-with-tick-marks-container-size) center,var(--_slider-with-tick-marks-disabled-active-container-color) 0,var(--_slider-with-tick-marks-disabled-active-container-color) calc(var(--_slider-with-tick-marks-container-size)/ 2),transparent calc(var(--_slider-with-tick-marks-container-size)/ 2))}:host([disabled]) input[type=range]{cursor:not-allowed}:host-context([dir=rtl]) .track::after{-webkit-clip-path:inset(0 calc(calc(var(--_slider-with-tick-marks-container-size) * min(var(--_slider-start-fraction) * 1e9,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * var(--_slider-start-fraction)) 0 calc(calc(var(--_slider-with-tick-marks-container-size) * min((1 - var(--_slider-end-fraction)) * 1000000000,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * (1 - var(--_slider-end-fraction))));clip-path:inset(0 calc(calc(var(--_slider-with-tick-marks-container-size) * min(var(--_slider-start-fraction) * 1e9,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * var(--_slider-start-fraction)) 0 calc(calc(var(--_slider-with-tick-marks-container-size) * min((1 - var(--_slider-end-fraction)) * 1000000000,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * (1 - var(--_slider-end-fraction))))}:host([dir=rtl]) .track::after{-webkit-clip-path:inset(0 calc(calc(var(--_slider-with-tick-marks-container-size) * min(var(--_slider-start-fraction) * 1e9,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * var(--_slider-start-fraction)) 0 calc(calc(var(--_slider-with-tick-marks-container-size) * min((1 - var(--_slider-end-fraction)) * 1000000000,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * (1 - var(--_slider-end-fraction))));clip-path:inset(0 calc(calc(var(--_slider-with-tick-marks-container-size) * min(var(--_slider-start-fraction) * 1e9,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * var(--_slider-start-fraction)) 0 calc(calc(var(--_slider-with-tick-marks-container-size) * min((1 - var(--_slider-end-fraction)) * 1000000000,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * (1 - var(--_slider-end-fraction))))}.track:dir(rtl)::after{-webkit-clip-path:inset(0 calc(calc(var(--_slider-with-tick-marks-container-size) * min(var(--_slider-start-fraction) * 1e9,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * var(--_slider-start-fraction)) 0 calc(calc(var(--_slider-with-tick-marks-container-size) * min((1 - var(--_slider-end-fraction)) * 1000000000,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * (1 - var(--_slider-end-fraction))));clip-path:inset(0 calc(calc(var(--_slider-with-tick-marks-container-size) * min(var(--_slider-start-fraction) * 1e9,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * var(--_slider-start-fraction)) 0 calc(calc(var(--_slider-with-tick-marks-container-size) * min((1 - var(--_slider-end-fraction)) * 1000000000,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * (1 - var(--_slider-end-fraction))))}input.end:focus~.handle-container-padded .handle.end>.handle-thumb,input.start:focus~.handle-container-padded .handle.start>.handle-thumb{background:var(--_slider-focus-handle-color)}.on-top.overlapping .handle-label,.on-top.overlapping .handle-label::before,.on-top.overlapping .handle-thumb{border:var(--_slider-with-overlap-handle-outline-color) solid var(--_slider-with-overlap-handle-outline-width)}.handle-container.hover .handle-label,:host(:focus-within) .handle-label,:where(:has(input:active)) .handle-label{-webkit-transform:scale(1);transform:scale(1)}input[type=range]{opacity:0;-webkit-tap-highlight-color:transparent;position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;width:100%;margin:0;background:0 0;cursor:pointer;pointer-events:auto;-webkit-appearance:none;-moz-appearance:none;appearance:none}input[type=range]:focus{outline:0}input[type=range]::-webkit-slider-runnable-track{-webkit-appearance:none}input[type=range]::-moz-range-track{-moz-appearance:none;appearance:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;block-size:var(--_slider-state-layer-size);inline-size:var(--_slider-state-layer-size);-webkit-transform:scaleX(0);transform:scaleX(0);opacity:0;z-index:2}input[type=range]::-moz-range-thumb{-moz-appearance:none;appearance:none;block-size:var(--_slider-state-layer-size);inline-size:var(--_slider-state-layer-size);transform:scaleX(0);opacity:0;z-index:2}.on-top{z-index:1}@media (prefers-reduced-motion){.handle-label{-webkit-transition-duration:0;transition-duration:0}}forge-focus-indicator{--forge-focus-indicator-shape:50%;--forge-focus-indicator-outward-offset:0px}forge-state-layer{--forge-state-layer-color:var(--_slider-handle-color)}',s=class extends B{constructor(){super();I(this,$,J),this[u]=this.attachInternals(),this._foundation=new g(new v(this))}static get observedAttributes(){return[a.attributes.ARIA_LABEL,a.attributes.ARIA_LABEL_START,a.attributes.ARIA_LABEL_END,a.attributes.VALUE,a.attributes.VALUE_START,a.attributes.VALUE_END,a.attributes.LABEL,a.attributes.LABEL_START,a.attributes.LABEL_END,a.attributes.MAX,a.attributes.MIN,a.attributes.STEP,a.attributes.TICKMARKS,a.attributes.LABELED,a.attributes.RANGE,a.attributes.DISABLED,a.attributes.READONLY]}get form(){return this[u].form}get labels(){return this[u].labels}get name(){var e;return(e=this.getAttribute("name"))!=null?e:""}set name(e){p(this,!!e,"name",e!=null?e:"")}get nameStart(){var e;return(e=this.getAttribute("name-start"))!=null?e:this.name}set nameStart(e){p(this,!!e,"name-start",e!=null?e:"")}get nameEnd(){var e;return(e=this.getAttribute("name-end"))!=null?e:this.nameStart}set nameEnd(e){p(this,!!e,"name-end",e!=null?e:"")}connectedCallback(){this._foundation.initialize()}attributeChangedCallback(e,i,r){switch(e){case a.attributes.ARIA_LABEL:this._foundation.ariaLabel=r;break;case a.attributes.ARIA_LABEL_START:this._foundation.ariaLabelStart=r;break;case a.attributes.ARIA_LABEL_END:this._foundation.ariaLabelEnd=r;break;case a.attributes.VALUE:this.value=b(r);break;case a.attributes.VALUE_START:this.valueStart=b(r);break;case a.attributes.VALUE_END:this.valueEnd=b(r);break;case a.attributes.LABEL:this.label=r;break;case a.attributes.LABEL_START:this.labelStart=r;break;case a.attributes.LABEL_END:this.labelEnd=r;break;case a.attributes.MIN:this.min=b(r);break;case a.attributes.MAX:this.max=b(r);break;case a.attributes.STEP:this.step=b(r);break;case a.attributes.TICKMARKS:this.tickmarks=_(r);break;case a.attributes.LABELED:this.labeled=_(r);break;case a.attributes.RANGE:this.range=_(r);break;case a.attributes.DISABLED:this.disabled=_(r);break;case a.attributes.READONLY:this.readonly=_(r);break}}formResetCallback(){if(this._foundation.range){let i=this.getAttribute("value-start");this.valueStart=i!==null?Number(i):a.numbers.DEFAULT_START_VALUE;let r=this.getAttribute("value-end");this.valueEnd=r!==null?Number(r):a.numbers.DEFAULT_END_VALUE;return}let e=this.getAttribute("value");this.value=e!==null?Number(e):a.numbers.DEFAULT_VALUE}formStateRestoreCallback(e){if(e&&e[0]instanceof FormData){let i=Array.from(e[0]),[[,r],[,n]]=i;this.valueStart=Number(r),this.valueEnd=Number(n),this.range=!0;return}this.value=Number(e),this.range=!1}formDisabledCallback(e){this.disabled=e}};u,s.formAssociated=!0,l([d()],s.prototype,"value",2),l([d()],s.prototype,"valueStart",2),l([d()],s.prototype,"valueEnd",2),l([d()],s.prototype,"label",2),l([d()],s.prototype,"labelStart",2),l([d()],s.prototype,"labelEnd",2),l([d()],s.prototype,"labelBuilder",2),l([d()],s.prototype,"min",2),l([d()],s.prototype,"max",2),l([d()],s.prototype,"step",2),l([d()],s.prototype,"tickmarks",2),l([d()],s.prototype,"labeled",2),l([d()],s.prototype,"range",2),l([d()],s.prototype,"disabled",2),l([d()],s.prototype,"readonly",2),s=l([x({name:a.elementName,dependencies:[C,R]})],s);var U=class extends H{constructor(t){super(t)}get value(){return this._element.value}set value(t){this._element.value=t}get valueStart(){return this._element.valueStart}set valueStart(t){this._element.valueStart=t}get valueEnd(){return this._element.valueEnd}set valueEnd(t){this._element.valueEnd=t}get disabled(){return this._element.disabled}set disabled(t){this._element.disabled=t}get min(){return this._element.min}set min(t){this._element.min=t}get max(){return this._element.max}set max(t){this._element.max=t}get step(){return this._element.step}get range(){return this._element.range}set range(t){this._element.range=t}get tickmarks(){return this._element.tickmarks}set tickmarks(t){this._element.tickmarks=t}get labeled(){return this._element.labeled}set labeled(t){this._element.labeled=t}get labelBuilder(){return this._element.labelBuilder}set labelBuilder(t){this._element.labelBuilder=t}onInput(t){this._element.addEventListener("forge-slider-input",({detail:e})=>t(e))}onChange(t){this._element.addEventListener("forge-slider-change",({detail:e})=>t(e))}onFocus(t){this._element.addEventListener("focus",e=>t(e))}onBlur(t){this._element.addEventListener("blur",e=>t(e))}_build(){return document.createElement(a.elementName)}};function Re(){T(s)}export{a,s as b,U as c,Re as d};
|
|
7
|
+
//# sourceMappingURL=chunk.WY3E33CW.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/slider/slider-constants.ts", "../../src/slider/slider-utils.ts", "../../src/slider/slider-adapter.ts", "../../src/slider/slider-foundation.ts", "../../src/slider/slider.ts", "../../src/slider/slider-component-delegate.ts", "../../src/slider/index.ts"],
|
|
4
|
+
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}slider`;\n\nconst attributes = {\n ARIA_LABEL: 'data-aria-label',\n ARIA_LABEL_START: 'data-aria-label-start',\n ARIA_LABEL_END: 'data-aria-label-end',\n VALUE: 'value',\n VALUE_START: 'value-start',\n VALUE_END: 'value-end',\n LABEL: 'label',\n LABEL_START: 'label-start',\n LABEL_END: 'label-end',\n MIN: 'min',\n MAX: 'max',\n STEP: 'step',\n TICKMARKS: 'tickmarks',\n LABELED: 'labeled',\n RANGE: 'range',\n DISABLED: 'disabled',\n READONLY: 'readonly'\n};\n\nconst selectors = {\n ROOT: '.forge-slider',\n TRACK: '.track',\n HANDLE_CONTAINER: '.handle-container',\n START_INPUT: 'input.start',\n END_INPUT: 'input.end',\n START_HANDLE: '.handle.start',\n START_HANDLE_THUMB: '.handle.start .handle-thumb',\n END_HANDLE: '.handle.end',\n END_HANDLE_THUMB: '.handle.end .handle-thumb',\n START_LABEL: '.handle.start .handle-label',\n START_LABEL_CONTENT: '.handle.start .handle-label-content',\n END_LABEL: '.handle.end .handle-label',\n END_LABEL_CONTENT: '.handle.end .handle-label-content',\n LABEL: '.handle-label',\n INPUT: 'input[type=range]'\n};\n\nconst classes = {\n RANGE: 'range',\n TICKMARKS: 'tickmarks',\n ON_TOP: 'on-top',\n OVERLAPPING: 'overlapping',\n HOVER: 'hover',\n HANDLE: 'handle',\n HANDLE_THUMB: 'handle-thumb',\n HANDLE_START: 'start',\n HANDLE_LABEL: 'handle-label',\n LABEL: 'handle-label',\n LABEL_CONTENT: 'handle-label-content'\n};\n\nconst events = {\n INPUT: 'forge-slider-input',\n CHANGE: 'forge-slider-change'\n};\n\nconst cssCustomProperties = {\n START_FRACTION: '--_slider-start-fraction',\n END_FRACTION: '--_slider-end-fraction',\n TICK_COUNT: '--_slider-tick-count'\n};\n\nconst numbers = {\n DEFAULT_STEP: 1,\n DEFAULT_VALUE: 50,\n DEFAULT_START_VALUE: 33,\n DEFAULT_END_VALUE: 67\n};\n\nexport const SLIDER_CONSTANTS = {\n elementName,\n attributes,\n selectors,\n classes,\n events,\n numbers,\n cssCustomProperties\n};\n\nexport interface ISliderRangeEventData {\n valueStart: number;\n valueEnd: number;\n}\n\nexport type SliderLabelBuilder = (value: number, which?: 'start' | 'end') => string;\n", "import { ISliderComponent } from '../slider';\nimport { SLIDER_CONSTANTS } from './slider-constants';\n\nexport function createStartInputElement(component: ISliderComponent): HTMLInputElement {\n const startInput = document.createElement('input');\n startInput.type = 'range';\n startInput.id = 'start';\n startInput.min = String(component.min);\n startInput.max = String(component.max);\n startInput.step = String(component.step);\n startInput.valueAsNumber = component.valueStart;\n startInput.disabled = component.disabled;\n startInput.classList.add('start');\n \n if (component.hasAttribute(SLIDER_CONSTANTS.attributes.ARIA_LABEL_START)) {\n startInput.setAttribute('aria-label', component.getAttribute(SLIDER_CONSTANTS.attributes.ARIA_LABEL_START) as string);\n }\n startInput.setAttribute('aria-valuetext', String(component.valueStart));\n\n return startInput;\n}\n\nexport function createStartHandleElement(thumbLabel: string): HTMLElement {\n const startHandle = document.createElement('div');\n startHandle.classList.add(SLIDER_CONSTANTS.classes.HANDLE, SLIDER_CONSTANTS.classes.HANDLE_START);\n startHandle.setAttribute('part', 'handle-start');\n\n const startHandleStateLayer = document.createElement('forge-state-layer');\n startHandleStateLayer.target = 'start';\n startHandle.appendChild(startHandleStateLayer);\n\n const startHandleFocusIndicator = document.createElement('forge-focus-indicator');\n startHandleFocusIndicator.target = 'start';\n startHandle.appendChild(startHandleFocusIndicator);\n \n const startHandleThumb = document.createElement('div');\n startHandleThumb.classList.add(SLIDER_CONSTANTS.classes.HANDLE_THUMB);\n startHandleThumb.setAttribute('part', 'handle-start-thumb');\n startHandle.appendChild(startHandleThumb);\n \n const startHandleLabel = document.createElement('div');\n startHandleLabel.classList.add(SLIDER_CONSTANTS.classes.HANDLE_LABEL);\n startHandleLabel.setAttribute('part', 'handle-start-label');\n startHandle.appendChild(startHandleLabel);\n\n const startHandleLabelContent = document.createElement('span');\n startHandleLabelContent.textContent = thumbLabel;\n startHandleLabelContent.classList.add(SLIDER_CONSTANTS.classes.LABEL_CONTENT);\n startHandleLabelContent.setAttribute('part', 'handle-start-label-content');\n startHandleLabel.appendChild(startHandleLabelContent);\n \n return startHandle;\n}\n\nexport function createLabel(text: string): HTMLElement {\n const labelElement = document.createElement('div');\n labelElement.classList.add(SLIDER_CONSTANTS.classes.LABEL);\n\n const labelContentElement = document.createElement('span');\n labelContentElement.textContent = text;\n labelContentElement.classList.add(SLIDER_CONSTANTS.classes.LABEL_CONTENT);\n labelElement.appendChild(labelContentElement);\n\n return labelElement;\n}\n", "import { getShadowElement, toggleAttribute, toggleClass } from '@tylertech/forge-core';\nimport { internals } from '../constants';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { elementsOverlapping, isPointerOverElement } from '../core/utils/utils';\nimport { ISliderComponent } from '../slider';\nimport { IStateLayerComponent, STATE_LAYER_CONSTANTS } from '../state-layer';\nimport { SLIDER_CONSTANTS } from './slider-constants';\nimport { createLabel, createStartHandleElement, createStartInputElement } from './slider-utils';\n\nexport interface ISliderState {\n startFraction: number;\n endFraction: number;\n tickCount: number;\n}\n\nexport interface ISliderAdapter extends IBaseAdapter {\n addInputListener(type: keyof HTMLElementEventMap, listener: EventListener): void;\n update(state: ISliderState): void;\n updateLabels(labelStart: string, labelEnd: string): void;\n updateHandleLayering(): void;\n tryHoverStartHandle(coords: { x: number; y: number }): void;\n tryHoverEndHandle(coords: { x: number; y: number }): void;\n tryDetectOverlap(): void;\n leaveHandleContainer(): void;\n syncInputValues(valueStart: number, valueEnd: number): void;\n setRange(value: boolean): void;\n setTickmarks(value: boolean): void;\n setStep(step: number): void;\n setMin(value: number): void;\n setMax(value: number): void;\n setDisabled(value: boolean): void;\n setReadonly(value: boolean): void;\n toggleLabels(value: boolean): void;\n setStartAriaLabel(value: string | null): void;\n setEndAriaLabel(value: string | null): void;\n}\n\nexport class SliderAdapter extends BaseAdapter<ISliderComponent> implements ISliderAdapter {\n private readonly _rootElement: HTMLElement;\n private readonly _trackElement: HTMLElement;\n private readonly _handleContainerElement: HTMLElement;\n private readonly _endInputElement: HTMLInputElement;\n private readonly _endHandleElement: HTMLElement;\n private readonly _endHandleThumbElement: HTMLElement;\n private _endLabelContentElement: HTMLElement | undefined;\n private _startInputElement: HTMLInputElement | undefined;\n private _startHandleElement: HTMLElement | undefined;\n private _startHandleThumbElement: HTMLElement | undefined;\n private _startLabelContentElement: HTMLElement | undefined;\n\n constructor(component: ISliderComponent) {\n super(component);\n\n this._rootElement = getShadowElement(component, SLIDER_CONSTANTS.selectors.ROOT);\n this._trackElement = getShadowElement(component, SLIDER_CONSTANTS.selectors.TRACK);\n this._handleContainerElement = getShadowElement(component, SLIDER_CONSTANTS.selectors.HANDLE_CONTAINER);\n this._endInputElement = getShadowElement(component, SLIDER_CONSTANTS.selectors.END_INPUT) as HTMLInputElement;\n this._endHandleElement = getShadowElement(component, SLIDER_CONSTANTS.selectors.END_HANDLE);\n this._endHandleThumbElement = getShadowElement(component, SLIDER_CONSTANTS.selectors.END_HANDLE_THUMB);\n this._endLabelContentElement = getShadowElement(component, SLIDER_CONSTANTS.selectors.END_LABEL_CONTENT);\n }\n\n public addInputListener(type: keyof HTMLElementEventMap, listener: EventListener): void {\n const inputs = this._getInputs();\n inputs.forEach(input => input.addEventListener(type, listener));\n }\n\n public update({ startFraction, endFraction, tickCount }: ISliderState): void {\n this._rootElement.style.setProperty(SLIDER_CONSTANTS.cssCustomProperties.START_FRACTION, String(startFraction));\n this._rootElement.style.setProperty(SLIDER_CONSTANTS.cssCustomProperties.END_FRACTION, String(endFraction));\n this._rootElement.style.setProperty(SLIDER_CONSTANTS.cssCustomProperties.TICK_COUNT, String(tickCount));\n }\n\n public updateLabels(labelStart: string, labelEnd: string): void {\n if (this._startLabelContentElement) {\n this._startLabelContentElement.textContent = labelStart;\n }\n \n if (this._endLabelContentElement) {\n this._endLabelContentElement.textContent = labelEnd;\n }\n\n this._startInputElement?.setAttribute('aria-valuetext', labelStart);\n this._endInputElement.setAttribute('aria-valuetext', labelEnd);\n }\n\n public updateHandleLayering(): void {\n const isEndFocused = this._endInputElement.matches(':focus');\n if (this._startHandleElement) {\n toggleClass(this._startHandleElement, !isEndFocused, SLIDER_CONSTANTS.classes.ON_TOP);\n }\n toggleClass(this._endHandleElement, isEndFocused, SLIDER_CONSTANTS.classes.ON_TOP);\n }\n\n public tryHoverStartHandle(coords: { x: number; y: number }): void {\n if (this._startHandleThumbElement && isPointerOverElement(coords, this._startHandleThumbElement)) {\n this._handleContainerElement.classList.add(SLIDER_CONSTANTS.classes.HOVER);\n this._startHandleElement?.classList.add(SLIDER_CONSTANTS.classes.HOVER);\n } else if (!this._startInputElement?.matches(':focus')) {\n this._handleContainerElement.classList.remove(SLIDER_CONSTANTS.classes.HOVER);\n this._startHandleElement?.classList.remove(SLIDER_CONSTANTS.classes.HOVER);\n }\n }\n\n public tryHoverEndHandle(coords: { x: number; y: number }): void {\n if (isPointerOverElement(coords, this._endHandleThumbElement)) {\n this._handleContainerElement.classList.add(SLIDER_CONSTANTS.classes.HOVER);\n this._endHandleElement.classList.add(SLIDER_CONSTANTS.classes.HOVER);\n } else if (!this._endInputElement.matches(':focus')) {\n this._handleContainerElement.classList.remove(SLIDER_CONSTANTS.classes.HOVER);\n this._endHandleElement.classList.remove(SLIDER_CONSTANTS.classes.HOVER);\n }\n }\n\n public tryDetectOverlap(): void {\n if (this._startHandleElement) {\n const isOverlapping = elementsOverlapping(this._startHandleElement, this._endHandleElement);\n toggleClass(this._endHandleElement, isOverlapping, SLIDER_CONSTANTS.classes.OVERLAPPING);\n toggleClass(this._startHandleElement, isOverlapping, SLIDER_CONSTANTS.classes.OVERLAPPING);\n }\n }\n\n public leaveHandleContainer(): void {\n this._handleContainerElement.classList.remove(SLIDER_CONSTANTS.classes.HOVER);\n }\n\n public syncInputValues(valueStart: number, valueEnd: number): void {\n if (this._startInputElement) {\n this._startInputElement.valueAsNumber = valueStart;\n }\n this._endInputElement.valueAsNumber = valueEnd;\n\n if (this._startInputElement) {\n const data = new FormData();\n data.append(this._component.nameStart, String(valueStart));\n data.append(this._component.nameEnd, String(valueEnd));\n this._component[internals].setFormValue(data);\n } else {\n this._component[internals].setFormValue(String(valueEnd));\n }\n }\n\n public setRange(value: boolean): void {\n this._rootElement.classList.toggle(SLIDER_CONSTANTS.classes.RANGE, value);\n\n if (value) {\n // Create start input\n this._startInputElement = createStartInputElement(this._component);\n this._rootElement.insertAdjacentElement('afterbegin', this._startInputElement);\n\n // Ensure the end input is updated to the valueEnd property value now that we are in range mode\n this._endInputElement.valueAsNumber = this._component.valueEnd;\n\n // Create start handle\n const thumbLabel = this._startInputElement.value;\n this._startHandleElement = createStartHandleElement(thumbLabel);\n this._handleContainerElement.insertAdjacentElement('afterbegin', this._startHandleElement);\n this._startHandleThumbElement = getShadowElement(this._component, SLIDER_CONSTANTS.selectors.START_HANDLE_THUMB);\n this._startLabelContentElement = getShadowElement(this._component, SLIDER_CONSTANTS.selectors.START_LABEL_CONTENT);\n } else {\n this._startInputElement?.remove();\n this._startHandleElement?.remove();\n\n this._startInputElement = undefined;\n this._startHandleElement = undefined;\n this._startHandleThumbElement = undefined;\n this._startLabelContentElement = undefined;\n }\n }\n\n public setTickmarks(value: boolean): void {\n this._trackElement.classList.toggle(SLIDER_CONSTANTS.classes.TICKMARKS, value);\n }\n\n public setStep(step: number): void {\n const inputs = this._getInputs();\n inputs.forEach(input => input.step = String(step));\n }\n\n public setMin(value: number): void {\n const inputs = this._getInputs();\n inputs.forEach(input => input.min = String(value));\n }\n\n public setMax(value: number): void {\n const inputs = this._getInputs();\n inputs.forEach(input => input.max = String(value));\n }\n\n public setDisabled(value: boolean): void {\n const inputs = this._getInputs();\n inputs.forEach(input => input.disabled = value);\n\n const stateLayers = this._rootElement.querySelectorAll(STATE_LAYER_CONSTANTS.elementName) as NodeListOf<IStateLayerComponent>;\n stateLayers.forEach(sl => sl.disabled = value);\n }\n\n public setReadonly(value: boolean): void {\n const inputs = this._getInputs();\n inputs.forEach(input => input.readOnly = value);\n }\n\n public toggleLabels(value: boolean): void {\n const labels = this._rootElement.querySelectorAll(SLIDER_CONSTANTS.selectors.LABEL);\n labels.forEach(label => label.remove());\n\n this._endLabelContentElement = undefined;\n this._startLabelContentElement = undefined;\n\n if (value) {\n const endLabelEl = createLabel(this._endInputElement.value);\n this._endHandleElement.insertAdjacentElement('beforeend', endLabelEl);\n this._endLabelContentElement = getShadowElement(this._component, SLIDER_CONSTANTS.selectors.END_LABEL_CONTENT);\n \n if (this._startInputElement) {\n const startLabelEl = createLabel(this._startInputElement.value);\n this._startHandleElement?.insertAdjacentElement('beforeend', startLabelEl);\n this._startLabelContentElement = getShadowElement(this._component, SLIDER_CONSTANTS.selectors.START_LABEL_CONTENT);\n }\n }\n }\n\n public setStartAriaLabel(value: string | null): void {\n if (this._startInputElement) {\n toggleAttribute(this._startInputElement, !!value, 'aria-label', value as string);\n }\n }\n\n public setEndAriaLabel(value: string | null): void {\n toggleAttribute(this._endInputElement, !!value, 'aria-label', value as string);\n }\n\n private _getInputs(): HTMLInputElement[] {\n const inputs: HTMLInputElement[] = [];\n if (this._startInputElement) {\n inputs.push(this._startInputElement);\n }\n return [...inputs, this._endInputElement];\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { ISliderAdapter } from './slider-adapter';\nimport { SLIDER_CONSTANTS, SliderLabelBuilder, ISliderRangeEventData } from './slider-constants';\n\nexport interface ISliderFoundation extends ICustomElementFoundation {\n ariaLabel: string | null;\n ariaLabelStart: string | null;\n ariaLabelEnd: string | null;\n value: number;\n valueStart: number;\n valueEnd: number;\n label: string;\n labelStart: string;\n labelEnd: string;\n labelBuilder: SliderLabelBuilder;\n min: number;\n max: number;\n step: number;\n tickmarks: boolean;\n labeled: boolean;\n range: boolean;\n disabled: boolean;\n readonly: boolean;\n}\n\nexport class SliderFoundation implements ISliderFoundation {\n // State\n private _value = SLIDER_CONSTANTS.numbers.DEFAULT_VALUE;\n private _valueStart = SLIDER_CONSTANTS.numbers.DEFAULT_START_VALUE;\n private _valueEnd = SLIDER_CONSTANTS.numbers.DEFAULT_END_VALUE;\n private _labelStart: string;\n private _labelEnd: string;\n private _labelBuilder: SliderLabelBuilder;\n private _min = 0;\n private _max = 100;\n private _step = SLIDER_CONSTANTS.numbers.DEFAULT_STEP;\n private _tickmarks = false;\n private _labeled = true;\n private _range = false;\n private _disabled = false;\n private _readonly = false;\n\n // Listeners\n private readonly _pointerEnterListener: EventListener;\n private readonly _pointerMoveListener: EventListener;\n private readonly _pointerLeaveListener: EventListener;\n private readonly _changeUpdateListener: EventListener;\n private readonly _focusListener: EventListener;\n\n constructor(private readonly _adapter: ISliderAdapter) {\n this._pointerEnterListener = (evt: PointerEvent) => this._handlePointerEnter(evt);\n this._pointerMoveListener = (evt: PointerEvent) => this._handlePointerMove(evt);\n this._pointerLeaveListener = (evt: PointerEvent) => this._handlePointerLeave(evt);\n this._changeUpdateListener = (evt: InputEvent) => this._handleInputUpdate(evt);\n this._focusListener = (evt: FocusEvent) => this._handleFocus(evt);\n }\n\n public initialize(): void {\n this._applyInputListeners();\n this._update();\n }\n\n private _update(): void {\n const {\n value: renderValue,\n valueStart: renderValueStart,\n valueEnd: renderValueEnd\n } = this._clampMinMax();\n const step = this._step <= 0 ? 1 : this._step;\n const range = Math.max(this._max - this._min, step);\n const startFraction = this._range ? ((renderValueStart ?? this._min) - this._min) / range : 0;\n const valueEnd = this._range ? renderValueEnd : renderValue;\n const endFraction = ((valueEnd ?? this.min) - this.min) / range;\n const tickCount = range / step;\n\n this._adapter.update({ startFraction, endFraction, tickCount });\n this._adapter.syncInputValues(renderValueStart, this._range ? renderValueEnd : renderValue);\n\n if (this._range) {\n this._adapter.tryDetectOverlap();\n }\n\n let labelStart = this._labelStart ?? String(renderValueStart);\n let labelEnd = this._labelEnd ?? String(this._range ? renderValueEnd : renderValue);\n\n if (typeof this._labelBuilder === 'function') {\n if (this._range) {\n labelStart = this._labelBuilder(renderValueStart, 'start');\n labelEnd = this._labelBuilder(renderValueEnd, 'end');\n } else {\n labelEnd = this._labelBuilder(renderValue);\n }\n }\n\n this._adapter.updateLabels(labelStart, labelEnd);\n }\n\n private _clampMinMax(): { value: number; valueStart: number; valueEnd: number } {\n // We make copies of our values so we can mutate them without affecting the original values\n let valueCopy = this._value;\n let valueStartCopy = this._valueStart;\n let valueEndCopy = this._valueEnd;\n\n if (this._range) {\n if (valueStartCopy > this._max) {\n valueStartCopy = this._max;\n } else if (valueStartCopy < this._min) {\n valueStartCopy = this._min;\n }\n\n if (valueEndCopy > this._max) {\n valueEndCopy = this._max;\n } else if (valueEndCopy < this._min) {\n valueEndCopy = this._min;\n }\n } else {\n if (valueCopy > this._max) {\n valueCopy = this._max;\n } else if (this._value < this._min) {\n valueCopy = this._min;\n }\n }\n\n return {\n value: valueCopy,\n valueStart: valueStartCopy,\n valueEnd: valueEndCopy\n };\n }\n\n private _applyInputListeners(): void {\n this._adapter.addInputListener('pointerenter', this._pointerEnterListener);\n this._adapter.addInputListener('pointermove', this._pointerMoveListener);\n this._adapter.addInputListener('pointerleave', this._pointerLeaveListener);\n this._adapter.addInputListener('input', this._changeUpdateListener);\n this._adapter.addInputListener('change', this._changeUpdateListener);\n this._adapter.addInputListener('focus', this._focusListener);\n }\n\n private _handlePointerEnter(evt: PointerEvent): void {\n this._handlePointerMove(evt);\n }\n\n private _handlePointerMove({ target, x, y }: PointerEvent): void {\n const isStart = (target as HTMLInputElement).id === 'start';\n if (isStart) {\n this._adapter.tryHoverStartHandle({ x, y });\n } else {\n this._adapter.tryHoverEndHandle({ x, y });\n }\n }\n\n private _handlePointerLeave(_evt: PointerEvent): void {\n this._adapter.leaveHandleContainer();\n }\n\n private _handleInputUpdate(evt: InputEvent): void {\n evt.stopPropagation(); // We don't allow the native input & change events to bubble outside of the component\n\n if (this._disabled || this._readonly) {\n this._adapter.syncInputValues(this._valueStart, this._range ? this._valueEnd : this._value);\n return;\n }\n\n const input = evt.target as HTMLInputElement;\n \n if (this._range) {\n const isStart = input.id === 'start';\n if (isStart) {\n this._valueStart = input.valueAsNumber;\n } else {\n this._valueEnd = input.valueAsNumber;\n }\n\n // Clamp values to keep start and end from going past each other\n if (this._canClamp()) {\n if (isStart) {\n this._valueStart = this._valueEnd;\n } else {\n this._valueEnd = this._valueStart;\n }\n\n // Ensure our underlying inputs are synchronized with our state since they continue moving even when we clamp\n this._adapter.syncInputValues(this._valueStart, this._valueEnd);\n this._update();\n return; // We don't dispatch events when clamping\n }\n } else {\n this._value = input.valueAsNumber;\n }\n\n const type = evt.type === 'change' ? SLIDER_CONSTANTS.events.CHANGE : SLIDER_CONSTANTS.events.INPUT;\n const data: number | ISliderRangeEventData = this._range ? { valueStart: this._valueStart, valueEnd: this._valueEnd } : this._value;\n this._adapter.emitHostEvent(type, data, true);\n this._update();\n }\n\n private _handleFocus(_evt: FocusEvent): void {\n this._adapter.updateHandleLayering();\n }\n\n private _canClamp(): boolean {\n return this._valueStart > this._valueEnd || this._valueEnd < this._valueStart;\n }\n\n public get value(): number {\n return this._value;\n }\n public set value(value: number) {\n if (this._value !== value) {\n this._value = value;\n this._update();\n }\n }\n\n public get valueStart(): number {\n return this._valueStart;\n }\n public set valueStart(value: number) {\n if (this._valueStart !== value) {\n this._valueStart = value;\n this._update();\n }\n }\n\n public get valueEnd(): number {\n return this._valueEnd;\n }\n public set valueEnd(value: number) {\n if (this._valueEnd !== value) {\n this._valueEnd = value;\n this._update();\n }\n }\n\n public get label(): string {\n return this.labelEnd;\n }\n public set label(value: string) {\n this.labelEnd = value;\n }\n\n public get labelStart(): string {\n return this._labelStart;\n }\n public set labelStart(value: string) {\n if (this._labelStart !== value) {\n this._labelStart = value;\n this._adapter.updateLabels(this._labelStart, this._labelEnd);\n }\n }\n\n public get labelEnd(): string {\n return this._labelEnd;\n }\n public set labelEnd(value: string) {\n if (this._labelEnd !== value) {\n this._labelEnd = value;\n this._adapter.updateLabels(this._labelStart, this._labelEnd);\n }\n }\n\n public get labelBuilder(): SliderLabelBuilder {\n return this._labelBuilder;\n }\n public set labelBuilder(cb: SliderLabelBuilder) {\n this._labelBuilder = cb;\n this._update();\n }\n\n public get min(): number {\n return this._min;\n }\n public set min(value: number) {\n if (this._min !== value) {\n this._min = value;\n this._adapter.setMin(this._min);\n this._update();\n this._adapter.setHostAttribute(SLIDER_CONSTANTS.attributes.MIN, String(this._min));\n }\n }\n\n public get max(): number {\n return this._max;\n }\n public set max(value: number) {\n if (this._max !== value) {\n this._max = value;\n this._adapter.setMax(this._max);\n this._update();\n this._adapter.setHostAttribute(SLIDER_CONSTANTS.attributes.MAX, String(this._max));\n }\n }\n\n public get step(): number {\n return this._step;\n }\n public set step(value: number) {\n if (this._step !== value) {\n this._step = value;\n this._adapter.setStep(this._step);\n this._update();\n this._adapter.setHostAttribute(SLIDER_CONSTANTS.attributes.STEP, String(this._step));\n }\n }\n\n public get tickmarks(): boolean {\n return this._tickmarks;\n }\n public set tickmarks(value: boolean) {\n if (this._tickmarks !== value) {\n this._tickmarks = value;\n this._adapter.setTickmarks(this._tickmarks);\n this._adapter.toggleHostAttribute(SLIDER_CONSTANTS.attributes.TICKMARKS, this._tickmarks);\n }\n }\n\n public get labeled(): boolean {\n return this._labeled;\n }\n public set labeled(value: boolean) {\n if (this._labeled !== value) {\n this._labeled = value;\n this._adapter.toggleLabels(this._labeled);\n this._update();\n this._adapter.toggleHostAttribute(SLIDER_CONSTANTS.attributes.LABELED, this._labeled);\n }\n }\n\n public get range(): boolean {\n return this._range;\n }\n public set range(value: boolean) {\n if (this._range !== value) {\n this._range = value;\n this._adapter.setRange(this._range);\n if (this._range) {\n this._applyInputListeners();\n }\n this._update();\n this._adapter.toggleHostAttribute(SLIDER_CONSTANTS.attributes.RANGE, this._range);\n }\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n this._adapter.setDisabled(value);\n this._adapter.toggleHostAttribute(SLIDER_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n public get readonly(): boolean {\n return this._readonly;\n }\n public set readonly(value: boolean) {\n if (this._readonly !== value) {\n this._readonly = value;\n this._adapter.setReadonly(value);\n this._adapter.toggleHostAttribute(SLIDER_CONSTANTS.attributes.READONLY, this._readonly);\n }\n }\n\n public set ariaLabel(value: string | null) {\n this.ariaLabelEnd = value;\n }\n\n public set ariaLabelStart(value: string | null) {\n this._adapter.setStartAriaLabel(value);\n }\n\n public set ariaLabelEnd(value: string | null) {\n this._adapter.setEndAriaLabel(value);\n }\n}\n", "import { attachShadowTemplate, coerceBoolean, coerceNumber, CustomElement, FoundationProperty, toggleAttribute } from '@tylertech/forge-core';\nimport { internals } from '../constants';\nimport { BaseFormComponent, IBaseFormComponent } from '../core/base/base-form-component';\nimport { FocusIndicatorComponent } from '../focus-indicator/focus-indicator';\nimport { StateLayerComponent } from '../state-layer/state-layer';\nimport { SliderAdapter } from './slider-adapter';\nimport { SLIDER_CONSTANTS, SliderLabelBuilder, ISliderRangeEventData } from './slider-constants';\nimport { SliderFoundation } from './slider-foundation';\n\nconst template = '<template><div part=\\\"root\\\" class=\\\"forge-slider\\\"><input type=\\\"range\\\" class=\\\"end\\\" id=\\\"end\\\" min=\\\"0\\\" max=\\\"100\\\" step=\\\"1\\\" aria-valuetext=\\\"0\\\"><div class=\\\"track\\\" part=\\\"track\\\"></div><div class=\\\"handle-container-padded\\\"><div class=\\\"handle-container-block\\\"><div class=\\\"handle-container\\\"><div class=\\\"handle end\\\" part=\\\"handle-end\\\"><forge-state-layer exportparts=\\\"surface:state-layer\\\" target=\\\"end\\\"></forge-state-layer><forge-focus-indicator exportparts=\\\"indicator:focus-indicator\\\" target=\\\"end\\\"></forge-focus-indicator><div class=\\\"handle-thumb\\\" part=\\\"handle-end-thumb\\\"></div><div class=\\\"handle-label\\\" part=\\\"handle-end-label\\\"><span class=\\\"handle-label-content\\\" part=\\\"handle-end-label-content\\\"></span></div></div></div></div></div></div></template>';\nconst styles = ':host{display:-webkit-inline-box;display:inline-flex;vertical-align:middle;min-inline-size:100%}:host([hidden]){display:none}.forge-slider{--_slider-start-fraction:0;--_slider-end-fraction:0;--_slider-tick-count:100;--_slider-track-height:var(--forge-slider-track-height, 4px);--_slider-active-track-color:var(--forge-slider-active-track-color, var(--forge-theme-primary, #3f51b5));--_slider-active-track-height:var(--forge-slider-active-track-height, var(--_slider-track-height));--_slider-active-track-shape:var(--forge-slider-active-track-shape, var(--forge-shape-full, 9999px));--_slider-disabled-active-track-color:var(--forge-slider-disabled-active-track-color, var(--forge-theme-surface-container-high, #9e9e9e));--_slider-disabled-active-track-opacity:var(--forge-slider-disabled-active-track-opacity, 0.38);--_slider-disabled-handle-color:var(--forge-slider-disabled-handle-color, var(--forge-theme-surface-container-high, #9e9e9e));--_slider-disabled-inactive-track-color:var(--forge-slider-disabled-inactive-track-color, var(--forge-theme-surface-container-high, #9e9e9e));--_slider-disabled-inactive-track-opacity:var(--forge-slider-disabled-inactive-track-opacity, 0.12);--_slider-focus-handle-color:var(--forge-slider-focus-handle-color, var(--forge-theme-primary, #3f51b5));--_slider-handle-color:var(--forge-slider-handle-color, var(--forge-theme-primary, #3f51b5));--_slider-handle-height:var(--forge-slider-handle-height, 20px);--_slider-handle-shape:var(--forge-slider-handle-shape, var(--forge-shape-round, 50%));--_slider-handle-width:var(--forge-slider-handle-width, 20px);--_slider-hover-handle-color:var(--forge-slider-hover-handle-color, var(--forge-theme-primary, #3f51b5));--_slider-inactive-track-color:var(--forge-slider-inactive-track-color, var(--forge-theme-primary-container, #d1d5ed));--_slider-inactive-track-height:var(--forge-slider-inactive-track-height, var(--_slider-track-height));--_slider-inactive-track-shape:var(--forge-slider-inactive-track-shape, var(--forge-shape-full, 9999px));--_slider-label-container-shape:var(--forge-slider-label-container-shape, var(--forge-shape-full, 9999px));--_slider-label-container-color:var(--forge-slider-label-container-color, var(--forge-theme-primary, #3f51b5));--_slider-label-container-height:var(--forge-slider-label-container-height, 28px);--_slider-label-text-color:var(--forge-slider-label-text-color, var(--forge-theme-on-primary, #ffffff));--_slider-pressed-handle-color:var(--forge-slider-pressed-handle-color, var(--forge-theme-primary, #3f51b5));--_slider-state-layer-size:var(--forge-slider-state-layer-size, 40px);--_slider-with-overlap-handle-outline-color:var(--forge-slider-with-overlap-handle-outline-color, var(--forge-theme-on-primary, #ffffff));--_slider-with-overlap-handle-outline-width:var(--forge-slider-with-overlap-handle-outline-width, 1px);--_slider-with-tick-marks-active-container-color:var(--forge-slider-with-tick-marks-active-container-color, var(--forge-theme-on-primary, #ffffff));--_slider-with-tick-marks-container-size:var(--forge-slider-with-tick-marks-container-size, 2px);--_slider-with-tick-marks-disabled-active-container-color:var(--forge-slider-with-tick-marks-disabled-active-container-color, var(--forge-theme-on-surface-container-high, #000000));--_slider-with-tick-marks-disabled-inactive-container-color:var(--forge-slider-with-tick-marks-disabled-inactive-container-color, var(--forge-theme-on-surface-container-high, #000000));--_slider-with-tick-marks-inactive-container-color:var(--forge-slider-with-tick-marks-inactive-container-color, var(--forge-theme-primary, #3f51b5))}.forge-slider{-webkit-box-flex:1;flex:1;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;position:relative;block-size:var(--_slider-state-layer-size);pointer-events:none;touch-action:none}.forge-slider.range :host-context([dir=rtl]) input.start{-webkit-clip-path:inset(0 0 0 calc(100% - (var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2)))));clip-path:inset(0 0 0 calc(100% - (var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2)))))}.forge-slider.range :host([dir=rtl]) input.start{-webkit-clip-path:inset(0 0 0 calc(100% - (var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2)))));clip-path:inset(0 0 0 calc(100% - (var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2)))))}.forge-slider.range input.start:dir(rtl){-webkit-clip-path:inset(0 0 0 calc(100% - (var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2)))));clip-path:inset(0 0 0 calc(100% - (var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2)))))}.forge-slider.range input.start{-webkit-clip-path:inset(0 calc(100% - (var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2)))) 0 0);clip-path:inset(0 calc(100% - (var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2)))) 0 0)}.forge-slider.range input.end{-webkit-clip-path:inset(0 0 0 calc(var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2))));clip-path:inset(0 0 0 calc(var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2))))}.forge-slider.range :host-context([dir=rtl]) input.end{-webkit-clip-path:inset(0 calc(var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2))) 0 0);clip-path:inset(0 calc(var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2))) 0 0)}.forge-slider.range :host([dir=rtl]) input.end{-webkit-clip-path:inset(0 calc(var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2))) 0 0);clip-path:inset(0 calc(var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2))) 0 0)}.forge-slider.range input.end:dir(rtl){-webkit-clip-path:inset(0 calc(var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2))) 0 0);clip-path:inset(0 calc(var(--_slider-state-layer-size)/ 2 + (100% - var(--_slider-state-layer-size)) * (var(--_slider-start-fraction) + ((var(--_slider-end-fraction) - var(--_slider-start-fraction))/ 2))) 0 0)}.track{position:absolute;inset:0;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.track::after,.track::before{content:\\\"\\\";position:absolute;inset-inline-start:calc((var(--_slider-state-layer-size)/ 2) - var(--_slider-with-tick-marks-container-size));inset-inline-end:calc((var(--_slider-state-layer-size)/ 2) - var(--_slider-with-tick-marks-container-size));background-size:calc((100% - var(--_slider-with-tick-marks-container-size) * 2)/ var(--_slider-tick-count)) 100%}.track::before{block-size:var(--_slider-inactive-track-height);border-radius:var(--_slider-inactive-track-shape);background-color:var(--_slider-inactive-track-color)}.track::after{block-size:var(--_slider-active-track-height);border-radius:var(--_slider-active-track-shape);-webkit-clip-path:inset(0 calc(calc(var(--_slider-with-tick-marks-container-size) * min((1 - var(--_slider-end-fraction)) * 1000000000,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * (1 - var(--_slider-end-fraction))) 0 calc(calc(var(--_slider-with-tick-marks-container-size) * min(var(--_slider-start-fraction) * 1e9,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * var(--_slider-start-fraction)));clip-path:inset(0 calc(calc(var(--_slider-with-tick-marks-container-size) * min((1 - var(--_slider-end-fraction)) * 1000000000,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * (1 - var(--_slider-end-fraction))) 0 calc(calc(var(--_slider-with-tick-marks-container-size) * min(var(--_slider-start-fraction) * 1e9,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * var(--_slider-start-fraction)));background-color:var(--_slider-active-track-color)}.track.tickmarks::before{background-image:radial-gradient(circle at var(--_slider-with-tick-marks-container-size) center,var(--_slider-with-tick-marks-inactive-container-color) 0,var(--_slider-with-tick-marks-inactive-container-color) calc(var(--_slider-with-tick-marks-container-size)/ 2),transparent calc(var(--_slider-with-tick-marks-container-size)/ 2))}.track.tickmarks::after{background-image:radial-gradient(circle at var(--_slider-with-tick-marks-container-size) center,var(--_slider-with-tick-marks-active-container-color) 0,var(--_slider-with-tick-marks-active-container-color) calc(var(--_slider-with-tick-marks-container-size)/ 2),transparent calc(var(--_slider-with-tick-marks-container-size)/ 2))}.handle-container-block,.handle-container-padded{position:relative;block-size:100%;inline-size:100%}.handle-container-padded{padding-inline:calc(var(--_slider-state-layer-size)/ 2)}.handle-container{position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:calc(100% * var(--_slider-start-fraction));inline-size:calc(100% * (var(--_slider-end-fraction) - var(--_slider-start-fraction)))}.handle{position:absolute;block-size:var(--_slider-state-layer-size);inline-size:var(--_slider-state-layer-size);border-radius:var(--_slider-handle-shape);display:grid;place-items:center}.handle.start{inset-inline-start:calc(0px - var(--_slider-state-layer-size)/ 2)}.handle.end{inset-inline-end:calc(0px - var(--_slider-state-layer-size)/ 2)}.handle-thumb{-webkit-box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);position:absolute;height:var(--_slider-handle-height);width:var(--_slider-handle-width);border-radius:var(--_slider-handle-shape);background:var(--_slider-handle-color)}.handle-label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-label-font-family, var(--forge-typography-font-family, \\\"Roboto\\\", sans-serif));font-size:var(--forge-typography-label-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-font-size-scale, .75)));line-height:var(--forge-typography-label-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-label-letter-spacing, .0357142857em);text-transform:var(--forge-typography-label-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-label-text-decoration,inherit);text-decoration:var(--forge-typography-label-text-decoration,inherit);position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;display:grid;padding:4px;place-items:center;border-radius:var(--_slider-label-container-shape);color:var(--_slider-label-text-color);font-weight:500;white-space:nowrap;inset-block-end:100%;min-inline-size:var(--_slider-label-container-height);min-block-size:var(--_slider-label-container-height);background:var(--_slider-label-container-color);-webkit-transition:-webkit-transform var(--forge-animation-duration-short2, 100ms) var(--forge-animation-easing-standard, cubic-bezier(.2, 0, 0, 1));transition:-webkit-transform var(--forge-animation-duration-short2, 100ms) var(--forge-animation-easing-standard, cubic-bezier(.2, 0, 0, 1));transition:transform var(--forge-animation-duration-short2, 100ms) var(--forge-animation-easing-standard, cubic-bezier(.2, 0, 0, 1));transition:transform var(--forge-animation-duration-short2, 100ms) var(--forge-animation-easing-standard, cubic-bezier(.2, 0, 0, 1)),-webkit-transform var(--forge-animation-duration-short2, 100ms) var(--forge-animation-easing-standard, cubic-bezier(.2, 0, 0, 1));-webkit-transform-origin:center bottom;transform-origin:center bottom;-webkit-transform:scale(0);transform:scale(0)}.handle-label::after,.handle-label::before{content:\\\"\\\";position:absolute;display:block;background:inherit}.handle-label::before{inline-size:calc(var(--_slider-label-container-height)/ 2);block-size:calc(var(--_slider-label-container-height)/ 2);bottom:calc(var(--_slider-label-container-height)/ -10);-webkit-transform:rotate(45deg);transform:rotate(45deg)}.handle-label::after{inset:0;border-radius:inherit}.handle-label-content{z-index:1}.handle-container.hover .handle-thumb{background:var(--_slider-hover-handle-color)}:host(:not([disabled])) input.end:active~.handle-container-padded .handle.end>.handle-thumb,:host(:not([disabled])) input.start:active~.handle-container-padded .handle.start>.handle-thumb{background:var(--_slider-pressed-handle-color)}:host([disabled]) .handle-thumb{-webkit-box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12);box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12);background:var(--_slider-disabled-handle-color)}:host([disabled]) .handle-label{background:var(--_slider-disabled-handle-color)}:host([disabled]) .track::before{opacity:calc((1 / var(--_slider-disabled-active-track-opacity)) * var(--_slider-disabled-inactive-track-opacity));background-color:var(--_slider-disabled-inactive-track-color)}:host([disabled]) .track::after{background-color:var(--_slider-disabled-active-track-color)}:host([disabled]) .track.tickmarks::before{background-image:radial-gradient(circle at var(--_slider-with-tick-marks-container-size) center,var(--_slider-with-tick-marks-disabled-inactive-container-color) 0,var(--_slider-with-tick-marks-disabled-inactive-container-color) calc(var(--_slider-with-tick-marks-container-size)/ 2),transparent calc(var(--_slider-with-tick-marks-container-size)/ 2))}:host([disabled]) .track.tickmarks::after{background-image:radial-gradient(circle at var(--_slider-with-tick-marks-container-size) center,var(--_slider-with-tick-marks-disabled-active-container-color) 0,var(--_slider-with-tick-marks-disabled-active-container-color) calc(var(--_slider-with-tick-marks-container-size)/ 2),transparent calc(var(--_slider-with-tick-marks-container-size)/ 2))}:host([disabled]) input[type=range]{cursor:not-allowed}:host-context([dir=rtl]) .track::after{-webkit-clip-path:inset(0 calc(calc(var(--_slider-with-tick-marks-container-size) * min(var(--_slider-start-fraction) * 1e9,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * var(--_slider-start-fraction)) 0 calc(calc(var(--_slider-with-tick-marks-container-size) * min((1 - var(--_slider-end-fraction)) * 1000000000,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * (1 - var(--_slider-end-fraction))));clip-path:inset(0 calc(calc(var(--_slider-with-tick-marks-container-size) * min(var(--_slider-start-fraction) * 1e9,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * var(--_slider-start-fraction)) 0 calc(calc(var(--_slider-with-tick-marks-container-size) * min((1 - var(--_slider-end-fraction)) * 1000000000,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * (1 - var(--_slider-end-fraction))))}:host([dir=rtl]) .track::after{-webkit-clip-path:inset(0 calc(calc(var(--_slider-with-tick-marks-container-size) * min(var(--_slider-start-fraction) * 1e9,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * var(--_slider-start-fraction)) 0 calc(calc(var(--_slider-with-tick-marks-container-size) * min((1 - var(--_slider-end-fraction)) * 1000000000,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * (1 - var(--_slider-end-fraction))));clip-path:inset(0 calc(calc(var(--_slider-with-tick-marks-container-size) * min(var(--_slider-start-fraction) * 1e9,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * var(--_slider-start-fraction)) 0 calc(calc(var(--_slider-with-tick-marks-container-size) * min((1 - var(--_slider-end-fraction)) * 1000000000,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * (1 - var(--_slider-end-fraction))))}.track:dir(rtl)::after{-webkit-clip-path:inset(0 calc(calc(var(--_slider-with-tick-marks-container-size) * min(var(--_slider-start-fraction) * 1e9,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * var(--_slider-start-fraction)) 0 calc(calc(var(--_slider-with-tick-marks-container-size) * min((1 - var(--_slider-end-fraction)) * 1000000000,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * (1 - var(--_slider-end-fraction))));clip-path:inset(0 calc(calc(var(--_slider-with-tick-marks-container-size) * min(var(--_slider-start-fraction) * 1e9,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * var(--_slider-start-fraction)) 0 calc(calc(var(--_slider-with-tick-marks-container-size) * min((1 - var(--_slider-end-fraction)) * 1000000000,1)) + calc(100% - var(--_slider-with-tick-marks-container-size) * 2) * (1 - var(--_slider-end-fraction))))}input.end:focus~.handle-container-padded .handle.end>.handle-thumb,input.start:focus~.handle-container-padded .handle.start>.handle-thumb{background:var(--_slider-focus-handle-color)}.on-top.overlapping .handle-label,.on-top.overlapping .handle-label::before,.on-top.overlapping .handle-thumb{border:var(--_slider-with-overlap-handle-outline-color) solid var(--_slider-with-overlap-handle-outline-width)}.handle-container.hover .handle-label,:host(:focus-within) .handle-label,:where(:has(input:active)) .handle-label{-webkit-transform:scale(1);transform:scale(1)}input[type=range]{opacity:0;-webkit-tap-highlight-color:transparent;position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;width:100%;margin:0;background:0 0;cursor:pointer;pointer-events:auto;-webkit-appearance:none;-moz-appearance:none;appearance:none}input[type=range]:focus{outline:0}input[type=range]::-webkit-slider-runnable-track{-webkit-appearance:none}input[type=range]::-moz-range-track{-moz-appearance:none;appearance:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;block-size:var(--_slider-state-layer-size);inline-size:var(--_slider-state-layer-size);-webkit-transform:scaleX(0);transform:scaleX(0);opacity:0;z-index:2}input[type=range]::-moz-range-thumb{-moz-appearance:none;appearance:none;block-size:var(--_slider-state-layer-size);inline-size:var(--_slider-state-layer-size);transform:scaleX(0);opacity:0;z-index:2}.on-top{z-index:1}@media (prefers-reduced-motion){.handle-label{-webkit-transition-duration:0;transition-duration:0}}forge-focus-indicator{--forge-focus-indicator-shape:50%;--forge-focus-indicator-outward-offset:0px}forge-state-layer{--forge-state-layer-color:var(--_slider-handle-color)}';\n\nexport interface ISliderComponent extends IBaseFormComponent<number> {\n valueStart: number;\n valueEnd: number;\n label: string;\n labelStart: string;\n labelEnd: string;\n labelBuilder: SliderLabelBuilder;\n min: number;\n max: number;\n step: number;\n range: boolean;\n tickmarks: boolean;\n labeled: boolean;\n nameStart: string;\n nameEnd: string;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-slider': ISliderComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-slider-input': CustomEvent<number | ISliderRangeEventData>;\n 'forge-slider-change': CustomEvent<number | ISliderRangeEventData>;\n }\n}\n\n/**\n * @tag forge-slider\n * \n * @summary Sliders allow users to make selections from a range of values.\n * \n * @description Use sliders to enable users to select a value from a continuous or discrete range of values.\n * \n * @property {number} value - The current value of the slider.\n * @property {number} valueStart - The current start value of the slider.\n * @property {number} valueEnd - The current end value of the slider.\n * @property {string} label - The label text for the slider handle.\n * @property {string} labelStart - The label text for the start slider handle.\n * @property {string} labelEnd - The label text for the end slider handle.\n * @property {SliderLabelBuilder} labelBuilder - A function that returns a label for the slider handle.\n * @property {number} min - The minimum value of the slider.\n * @property {number} max - The maximum value of the slider.\n * @property {number} step - The step value of the slider.\n * @property {boolean} range - Controls range mode.\n * @property {boolean} tickmarks - Controls if tickmarks are visible.\n * @property {boolean} labeled - Controls if labels are visible.\n * @property {boolean} disabled - Controls if the slider is disabled.\n * @property {boolean} readonly - Controls if the slider is readonly.\n * @property {string} name - The form control name.\n * @property {string} nameStart - The form control name for the start handle in range mode.\n * @property {string} nameEnd - The form control name for the end handle in range mode.\n * \n * @attribute {string} value - Sets the current value of the slider.\n * @attribute {string} value-start - Sets the current start value of the slider in range mode.\n * @attribute {string} value-end - Sets the current end value of the slider in range mode.\n * @attribute {string} label - Sets the label text for the slider handle.\n * @attribute {string} label-start - Sets the label text for the start slider handle in range mode.\n * @attribute {string} label-end - Sets the label text for the end slider handle in range mode.\n * @attribute {string} min - Sets the minimum value of the slider.\n * @attribute {string} max - Sets the maximum value of the slider.\n * @attribute {string} step - Sets the step value of the slider.\n * @attribute {string} tickmarks - Controls if tickmarks are visible.\n * @attribute {string} labeled - Controls if labels are visible.\n * @attribute {string} range - Controls range mode.\n * @attribute {string} disabled - Controls if the slider is disabled.\n * @attribute {string} readonly - Controls if the slider is readonly.\n * @attribute {string} name - Controls the form control name.\n * @attribute {string} name-start - Controls the form control name for the start handle in range mode.\n * @attribute {string} name-end - Controls the form control name for the end handle in range mode.\n * \n * @event forge-slider-input {CustomEvent} - Dispatches when the slider value changes.\n * @event forge-slider-change {CustomEvent} - Dispatches when the slider value changes and the value has been committed.\n * \n * @cssproperty --mdc-theme-primary - The primary color of the slider.\n * @cssproperty --mdc-theme-on-primary - The color of elements placed on top of the primary color (the label text for example).\n * @cssproperty --forge-slider-track-height - The height of the track.\n * @cssproperty --forge-slider-active-track-color - The color of the active track.\n * @cssproperty --forge-slider-active-track-height - The height of the active track.\n * @cssproperty --forge-slider-active-track-shape - The shape of the active track.\n * @cssproperty --forge-slider-disabled-active-track-color - The color of the active track when disabled.\n * @cssproperty --forge-slider-disabled-active-track-opacity - The opacity of the active track when disabled.\n * @cssproperty --forge-slider-disabled-handle-color - The color of the slider handle when disabled.\n * @cssproperty --forge-slider-disabled-inactive-track-color - The color of the inactive track when disabled.\n * @cssproperty --forge-slider-disabled-inactive-track-opacity - The opacity of the inactive track when disabled.\n * @cssproperty --forge-slider-focus-handle-color - The color of the slider handle when focused.\n * @cssproperty --forge-slider-handle-color - The color of the slider handle.\n * @cssproperty --forge-slider-handle-height - The height of the slider handle.\n * @cssproperty --forge-slider-handle-width - The width of the slider handle.\n * @cssproperty --forge-slider-handle-shape - The shape of the slider handle.\n * @cssproperty --forge-slider-hover-handle-color - The color of the slider handle when hovered.\n * @cssproperty --forge-slider-inactive-track-color - The color of the inactive track.\n * @cssproperty --forge-slider-inactive-track-height - The height of the inactive track.\n * @cssproperty --forge-slider-inactive-track-shape - The shape of the inactive track.\n * @cssproperty --forge-slider-label-container-shape - The shape of the label container.\n * @cssproperty --forge-slider-label-container-color - The color of the label container.\n * @cssproperty --forge-slider-label-container-height - The height of the label container.\n * @cssproperty --forge-slider-label-text-color - The color of the label text.\n * @cssproperty --forge-slider-pressed-handle-color - The color of the slider handle when pressed.\n * @cssproperty --forge-slider-state-layer-size - The size of the state layer.\n * @cssproperty --forge-slider-with-overlap-handle-outline-color - The color of the slider handle outline when overlapping.\n * @cssproperty --forge-slider-with-overlap-handle-outline-width - The width of the slider handle outline when overlapping.\n * @cssproperty --forge-slider-with-tick-marks-active-container-color - The color of the active tick mark container when tick marks are visible.\n * @cssproperty --forge-slider-with-tick-marks-container-size - The size of the tick mark container when tick marks are visible.\n * @cssproperty --forge-slider-with-tick-marks-disabled-active-container-color - The color of the active tick mark container when tick marks are visible and disabled.\n * @cssproperty --forge-slider-with-tick-marks-disabled-inactive-container-color - The color of the inactive tick mark container when tick marks are visible and disabled.\n * @cssproperty --forge-slider-with-tick-marks-inactive-container-color - The color of the inactive tick mark container when tick marks are visible.\n * \n * @csspart slider - Styles the slider container element.\n * @csspart track - Styles the track element.\n * @csspart handle-end - Styles the end handle element.\n * @csspart handle-end-thumb - Styles the end handle thumb element.\n * @csspart handle-end-label - Styles the end handle label element.\n * @csspart handle-end-label-content - Styles the end handle label content element.\n * @csspart handle-start - Styles the start handle element.\n * @csspart handle-start-thumb - Styles the start handle thumb element.\n * @csspart handle-start-label - Styles the start handle label element.\n * @csspart handle-start-label-content - Styles the start handle label content element.\n */\n@CustomElement({\n name: SLIDER_CONSTANTS.elementName,\n dependencies: [\n FocusIndicatorComponent,\n StateLayerComponent\n ]\n})\nexport class SliderComponent extends BaseFormComponent<number> implements ISliderComponent {\n public static get observedAttributes(): string[] {\n return [\n SLIDER_CONSTANTS.attributes.ARIA_LABEL,\n SLIDER_CONSTANTS.attributes.ARIA_LABEL_START,\n SLIDER_CONSTANTS.attributes.ARIA_LABEL_END,\n SLIDER_CONSTANTS.attributes.VALUE,\n SLIDER_CONSTANTS.attributes.VALUE_START,\n SLIDER_CONSTANTS.attributes.VALUE_END,\n SLIDER_CONSTANTS.attributes.LABEL,\n SLIDER_CONSTANTS.attributes.LABEL_START,\n SLIDER_CONSTANTS.attributes.LABEL_END,\n SLIDER_CONSTANTS.attributes.MAX,\n SLIDER_CONSTANTS.attributes.MIN,\n SLIDER_CONSTANTS.attributes.STEP,\n SLIDER_CONSTANTS.attributes.TICKMARKS,\n SLIDER_CONSTANTS.attributes.LABELED,\n SLIDER_CONSTANTS.attributes.RANGE,\n SLIDER_CONSTANTS.attributes.DISABLED,\n SLIDER_CONSTANTS.attributes.READONLY\n ];\n }\n\n public static formAssociated = true;\n\n public get form(): HTMLFormElement | null {\n return this[internals].form;\n }\n\n public get labels(): NodeList {\n return this[internals].labels;\n }\n\n public get name(): string {\n return this.getAttribute('name') ?? '';\n }\n public set name(value: string) {\n toggleAttribute(this, !!value, 'name', value ?? '');\n }\n\n public get nameStart(): string {\n return this.getAttribute('name-start') ?? this.name;\n }\n public set nameStart(value: string) {\n toggleAttribute(this, !!value, 'name-start', value ?? '');\n }\n\n public get nameEnd(): string {\n return this.getAttribute('name-end') ?? this.nameStart;\n }\n public set nameEnd(value: string) {\n toggleAttribute(this, !!value, 'name-end', value ?? '');\n }\n\n public readonly [internals]: ElementInternals;\n private readonly _foundation: SliderFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this[internals] = this.attachInternals();\n this._foundation = new SliderFoundation(new SliderAdapter(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 SLIDER_CONSTANTS.attributes.ARIA_LABEL:\n this._foundation.ariaLabel = newValue;\n break;\n case SLIDER_CONSTANTS.attributes.ARIA_LABEL_START:\n this._foundation.ariaLabelStart = newValue;\n break;\n case SLIDER_CONSTANTS.attributes.ARIA_LABEL_END:\n this._foundation.ariaLabelEnd = newValue;\n break;\n case SLIDER_CONSTANTS.attributes.VALUE:\n this.value = coerceNumber(newValue);\n break;\n case SLIDER_CONSTANTS.attributes.VALUE_START:\n this.valueStart = coerceNumber(newValue);\n break;\n case SLIDER_CONSTANTS.attributes.VALUE_END:\n this.valueEnd = coerceNumber(newValue);\n break;\n case SLIDER_CONSTANTS.attributes.LABEL:\n this.label = newValue;\n break;\n case SLIDER_CONSTANTS.attributes.LABEL_START:\n this.labelStart = newValue;\n break;\n case SLIDER_CONSTANTS.attributes.LABEL_END:\n this.labelEnd = newValue;\n break;\n case SLIDER_CONSTANTS.attributes.MIN:\n this.min = coerceNumber(newValue);\n break;\n case SLIDER_CONSTANTS.attributes.MAX:\n this.max = coerceNumber(newValue);\n break;\n case SLIDER_CONSTANTS.attributes.STEP:\n this.step = coerceNumber(newValue);\n break;\n case SLIDER_CONSTANTS.attributes.TICKMARKS:\n this.tickmarks = coerceBoolean(newValue);\n break;\n case SLIDER_CONSTANTS.attributes.LABELED:\n this.labeled = coerceBoolean(newValue);\n break;\n case SLIDER_CONSTANTS.attributes.RANGE:\n this.range = coerceBoolean(newValue);\n break;\n case SLIDER_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case SLIDER_CONSTANTS.attributes.READONLY:\n this.readonly = coerceBoolean(newValue);\n break;\n }\n }\n\n public formResetCallback(): void {\n if (this._foundation.range) {\n const valueStart = this.getAttribute('value-start');\n this.valueStart = valueStart !== null ? Number(valueStart) : SLIDER_CONSTANTS.numbers.DEFAULT_START_VALUE;\n const valueEnd = this.getAttribute('value-end');\n this.valueEnd = valueEnd !== null ? Number(valueEnd) : SLIDER_CONSTANTS.numbers.DEFAULT_END_VALUE;\n return;\n }\n const value = this.getAttribute('value');\n this.value = value !== null ? Number(value) : SLIDER_CONSTANTS.numbers.DEFAULT_VALUE;\n }\n\n public formStateRestoreCallback(state: string | Array<[string, string]> | null): void {\n if (state && state[0] instanceof FormData) {\n const values = Array.from(state[0]);\n const [[, valueStart], [, valueEnd]] = values;\n this.valueStart = Number(valueStart);\n this.valueEnd = Number(valueEnd);\n this.range = true;\n return;\n }\n\n this.value = Number(state);\n this.range = false;\n }\n\n public formDisabledCallback(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n @FoundationProperty()\n public declare value: number;\n\n @FoundationProperty()\n public declare valueStart: number;\n\n @FoundationProperty()\n public declare valueEnd: number;\n\n @FoundationProperty()\n public declare label: string;\n\n @FoundationProperty()\n public declare labelStart: string;\n\n @FoundationProperty()\n public declare labelEnd: string;\n\n @FoundationProperty()\n public declare labelBuilder: SliderLabelBuilder;\n\n @FoundationProperty()\n public declare min: number;\n\n @FoundationProperty()\n public declare max: number;\n\n @FoundationProperty()\n public declare step: number;\n\n @FoundationProperty()\n public declare tickmarks: boolean;\n \n @FoundationProperty()\n public declare labeled: boolean;\n\n @FoundationProperty()\n public declare range: boolean;\n\n @FoundationProperty()\n public declare disabled: boolean;\n\n @FoundationProperty()\n public declare readonly: boolean;\n}\n", "import { FormFieldComponentDelegate, IFormFieldComponentDelegateOptions } from '../core';\nimport { IBaseComponentDelegateConfig } from '../core/delegates/base-component-delegate';\nimport { ISliderComponent } from '../slider';\nimport { ISliderRangeEventData, SLIDER_CONSTANTS } from './slider-constants';\n\nexport type SliderComponentDelegateProps = Partial<ISliderComponent>;\nexport interface ISliderComponentDelegateOptions extends IFormFieldComponentDelegateOptions {}\nexport interface ISliderComponentDelegateConfig extends IBaseComponentDelegateConfig<ISliderComponent, ISliderComponentDelegateOptions> {}\n\nexport class SliderComponentDelegate extends FormFieldComponentDelegate<ISliderComponent, ISliderComponentDelegateOptions> {\n constructor(config?: ISliderComponentDelegateConfig) {\n super(config);\n }\n\n public get value(): number {\n return this._element.value;\n }\n public set value(value: number) {\n this._element.value = value;\n }\n\n public get valueStart(): number {\n return this._element.valueStart;\n }\n public set valueStart(value: number) {\n this._element.valueStart = value;\n }\n\n public get valueEnd(): number {\n return this._element.valueEnd;\n }\n public set valueEnd(value: number) {\n this._element.valueEnd = value;\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 public get min(): number {\n return this._element.min;\n }\n public set min(value: number) {\n this._element.min = value;\n }\n\n public get max(): number {\n return this._element.max;\n }\n public set max(value: number) {\n this._element.max = value;\n }\n\n public get step(): number {\n return this._element.step;\n }\n\n public get range(): boolean {\n return this._element.range;\n }\n public set range(value: boolean) {\n this._element.range = value;\n }\n\n public get tickmarks(): boolean {\n return this._element.tickmarks;\n }\n public set tickmarks(value: boolean) {\n this._element.tickmarks = value;\n }\n\n public get labeled(): boolean {\n return this._element.labeled;\n }\n public set labeled(value: boolean) {\n this._element.labeled = value;\n }\n\n public get labelBuilder(): (value: number, which?: 'start' | 'end') => string {\n return this._element.labelBuilder;\n }\n public set labelBuilder(value: (value: number, which?: 'start' | 'end') => string) {\n this._element.labelBuilder = value;\n }\n\n public onInput(listener: (value: number | ISliderRangeEventData) => void): void {\n this._element.addEventListener('forge-slider-input', ({ detail }: CustomEvent<number | ISliderRangeEventData>) => listener(detail));\n }\n\n public onChange(listener: (value: number | ISliderRangeEventData) => void): void {\n this._element.addEventListener('forge-slider-change', ({ detail }: CustomEvent<number | ISliderRangeEventData>) => listener(detail));\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 protected _build(): ISliderComponent {\n return document.createElement(SLIDER_CONSTANTS.elementName);\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { SliderComponent } from './slider';\n\nexport * from './slider-constants';\nexport * from './slider';\nexport * from './slider-component-delegate';\n\nexport function defineSliderComponent(): void {\n defineCustomElement(SliderComponent);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["elementName", "COMPONENT_NAME_PREFIX", "attributes", "selectors", "classes", "events", "cssCustomProperties", "numbers", "SLIDER_CONSTANTS", "createStartInputElement", "component", "startInput", "SLIDER_CONSTANTS", "createStartHandleElement", "thumbLabel", "startHandle", "startHandleStateLayer", "startHandleFocusIndicator", "startHandleThumb", "startHandleLabel", "startHandleLabelContent", "createLabel", "text", "labelElement", "labelContentElement", "SliderAdapter", "BaseAdapter", "component", "getShadowElement", "SLIDER_CONSTANTS", "type", "listener", "input", "startFraction", "endFraction", "tickCount", "labelStart", "labelEnd", "_a", "isEndFocused", "toggleClass", "coords", "_b", "_c", "isPointerOverElement", "isOverlapping", "elementsOverlapping", "valueStart", "valueEnd", "data", "internals", "value", "createStartInputElement", "thumbLabel", "createStartHandleElement", "step", "STATE_LAYER_CONSTANTS", "sl", "label", "endLabelEl", "createLabel", "startLabelEl", "toggleAttribute", "inputs", "SliderFoundation", "_adapter", "SLIDER_CONSTANTS", "evt", "_a", "_b", "renderValue", "renderValueStart", "renderValueEnd", "step", "range", "startFraction", "valueEnd", "endFraction", "tickCount", "labelStart", "labelEnd", "valueCopy", "valueStartCopy", "valueEndCopy", "target", "x", "y", "_evt", "input", "isStart", "type", "data", "value", "cb", "template", "styles", "SliderComponent", "BaseFormComponent", "attachShadowTemplate", "internals", "SliderFoundation", "SliderAdapter", "SLIDER_CONSTANTS", "_a", "value", "toggleAttribute", "name", "oldValue", "newValue", "coerceNumber", "coerceBoolean", "valueStart", "valueEnd", "state", "values", "isDisabled", "__decorateClass", "FoundationProperty", "CustomElement", "FocusIndicatorComponent", "StateLayerComponent", "SliderComponentDelegate", "FormFieldComponentDelegate", "config", "value", "listener", "detail", "evt", "SLIDER_CONSTANTS", "defineSliderComponent", "defineCustomElement", "SliderComponent"]
|
|
7
|
+
}
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{a as i,b as a,e as g}from"./chunk.
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{a as i,b as a,e as g}from"./chunk.PYR2OCCH.js";import{a as y}from"./chunk.HSI7B43D.js";import{a as n}from"./chunk.NVUMRW44.js";import{a as f}from"./chunk.36F2GVWS.js";import{a as m,e as _,f as v,k as C}from"./chunk.JAWV5Y5T.js";import{t as b}from"./chunk.K7FPXAFS.js";import{k as l}from"./chunk.J2M2MXP2.js";import{d as p}from"./chunk.M3QDAYD2.js";var d=class extends y{constructor(e){super(e);this._rootElement=v(this._component,i.selectors.ROOT)}setVertical(e){b(this._rootElement,e,i.classes.VERTICAL)}setType(e){this._getChips().forEach(t=>t.type=e)}setDense(e){this._getChips().forEach(t=>t.dense=e)}setDisabled(e){this._getChips().forEach(t=>t.disabled=e)}tryFocusPrevious(e){let o=this._getChips(),t=o.findIndex(h=>h===e);t>=0&&(t===0?o[o.length-1].tryFocusDelete():o[t-1].tryFocusDelete())}tryFocusNext(e){let o=this._getChips(),t=o.findIndex(h=>h===e);t>=0&&(t===o.length-1?o[0].focus():o[t+1].focus())}_getChips(){return Array.from(this._component.querySelectorAll(a.elementName))}};var c=class{constructor(s){this._adapter=s;this._vertical=!1;this._type=a.defaults.TYPE;this._dense=!1;this._disabled=!1;this._focusPreviousListener=e=>this._adapter.tryFocusPrevious(e.target),this._focusNextListener=e=>this._adapter.tryFocusNext(e.target)}initialize(){this._adapter.addHostListener(a.events.FOCUS_PREVIOUS,this._focusPreviousListener),this._adapter.addHostListener(a.events.FOCUS_NEXT,this._focusNextListener),this._applyVertical(),this._applyType(),this._applyDense(),this._applyDisabled()}destroy(){this._adapter.removeHostListener(a.events.FOCUS_PREVIOUS,this._focusPreviousListener),this._adapter.removeHostListener(a.events.FOCUS_NEXT,this._focusNextListener)}_applyVertical(){this._adapter.setVertical(this._vertical),this._adapter.toggleHostAttribute(i.attributes.VERTICAL,this._vertical)}_applyType(){this._adapter.setType(this._type),this._adapter.setHostAttribute(i.attributes.TYPE,this._type)}_applyDense(){this._adapter.setDense(this._dense),this._adapter.toggleHostAttribute(i.attributes.DENSE,this._dense)}_applyDisabled(){this._adapter.setDisabled(this._disabled),this._adapter.toggleHostAttribute(i.attributes.DISABLED,this._disabled)}get vertical(){return this._vertical}set vertical(s){this._vertical!==s&&(this._vertical=s,this._applyVertical())}get type(){return this._type}set type(s){this._type!==s&&(this._type=s,this._applyType())}get dense(){return this._dense}set dense(s){this._dense!==s&&(this._dense=s,this._applyDense())}get disabled(){return this._disabled}set disabled(s){this._disabled!==s&&(this._disabled=s,this._applyDisabled())}};var T='<template><div class="forge-chip-set" part="root"><slot></slot></div></template>',E=".forge-chip-set{gap:4px;gap:var(--forge-chip-set-spacing,4px);display:-webkit-box;display:flex;flex-wrap:wrap}.forge-chip-set ::slotted(forge-chip:not(:last-child)){margin-right:4px;margin-right:var(--forge-chip-set-spacing,4px)}.forge-chip-set--vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.forge-chip-set--vertical ::slotted(forge-chip:not(:last-child)){margin-bottom:4px;margin-bottom:var(--forge-chip-set-spacing,4px)}:host{display:inline-block}:host([hidden]){display:none}",r=class extends C{constructor(){super();_(this,T,E),this._foundation=new c(new d(this))}static get observedAttributes(){return[i.attributes.VERTICAL,i.attributes.TYPE,i.attributes.DENSE,i.attributes.DISABLED]}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.destroy()}attributeChangedCallback(e,o,t){switch(e){case i.attributes.VERTICAL:this.vertical=l(t);break;case i.attributes.TYPE:this.type=t;break;case i.attributes.DENSE:this.dense=l(t);break;case i.attributes.DISABLED:this.disabled=l(t);break}}};p([n()],r.prototype,"vertical",2),p([n()],r.prototype,"type",2),p([n()],r.prototype,"dense",2),p([n()],r.prototype,"disabled",2),r=p([f({name:i.elementName,dependencies:[g]})],r);function j(){m(r)}export{d as a,c as b,r as c,j as d};
|
|
7
|
+
//# sourceMappingURL=chunk.XEFWZKHQ.js.map
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{b as E}from"./chunk.
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{b as E}from"./chunk.R6LQBI42.js";import{a as u}from"./chunk.PADPL4L3.js";import{a as p,b as d}from"./chunk.36F2GVWS.js";import{a as c,k as m}from"./chunk.JAWV5Y5T.js";import{l as a,t as r}from"./chunk.K7FPXAFS.js";import{k as s}from"./chunk.J2M2MXP2.js";import{d as l}from"./chunk.M3QDAYD2.js";var f=`${d}fab`,g={BUTTON:"button, a",ICON:"i,forge-icon,img,svg",LABEL:"span"},I={BUTTON:"forge-fab",BUTTON_EXTENDED:"forge-fab--extended",ICON:"forge-fab__icon",LABEL:"forge-fab__label",BUTTON_MINI:"forge-fab--mini",EXITED:"forge-fab--exited",RIPPLE:"forge-fab__ripple"},T={EXTENDED:"extended",MINI:"mini",EXITED:"exited"},e={elementName:f,selectors:g,classes:I,attributes:T};var o=class extends m{constructor(){super();this._isExtended=!1;this._isMini=!1;this._isExited=!1}static get observedAttributes(){return[e.attributes.EXITED,e.attributes.MINI,e.attributes.EXTENDED]}connectedCallback(){this.children.length?this._initialize():a(this).then(()=>this._initialize())}disconnectedCallback(){this._rippleInstance&&this._rippleInstance.destroy()}attributeChangedCallback(t,n,i){switch(t){case e.attributes.EXITED:this.exited=s(i);break;case e.attributes.MINI:this.mini=s(i);break;case e.attributes.EXTENDED:this.extended=s(i);break}}_initialize(){if(this._buttonElement=this.querySelector(e.selectors.BUTTON),!this._buttonElement)return;this._buttonElement.classList.add(e.classes.BUTTON);let t=this._buttonElement.querySelector(`.${e.classes.RIPPLE}`)||document.createElement("div");t.classList.add(e.classes.RIPPLE),this._buttonElement.insertAdjacentElement("afterbegin",t),this._sync(),this._rippleInstance&&this._rippleInstance.destroy(),this._rippleInstance=new E(this._buttonElement)}_sync(){if(!this._buttonElement)return;r(this._buttonElement,this._isExited,e.classes.EXITED),r(this._buttonElement,this._isMini,e.classes.BUTTON_MINI),r(this._buttonElement,this._isExtended,e.classes.BUTTON_EXTENDED);let t=this.querySelector(e.selectors.LABEL);t&&t.classList.add(e.classes.LABEL);let n=this.querySelector(e.selectors.ICON);n&&(n.classList.add(e.classes.ICON),n.setAttribute("aria-hidden","true"))}set exited(t){this._isExited!==t&&(this._isExited=t,this.setAttribute(e.attributes.EXITED,this._isExited.toString()),this._sync())}get exited(){return this._isExited}set mini(t){this._isMini!==t&&(this._isMini=t,this.setAttribute(e.attributes.MINI,this._isMini.toString()),this._sync())}get mini(){return this._isMini}set extended(t){this._isExtended!==t&&(this._isExtended=t,this.setAttribute(e.attributes.EXTENDED,this._isExtended.toString()),this._sync())}get extended(){return this._isExtended}};o=l([p({name:e.elementName})],o);var b=class extends u{constructor(t){super(t)}destroy(){this._buttonElement=void 0}_build(){var n,i;let t=document.createElement(e.elementName);return this._buttonElement=document.createElement("button"),this._buttonElement.type="button",this._buttonElement.textContent=(i=(n=this._config.options)==null?void 0:n.text)!=null?i:"",t.appendChild(this._buttonElement),t}onClick(t){var n;(n=this._buttonElement)==null||n.addEventListener("click",t)}onFocus(t){var n;(n=this._buttonElement)==null||n.addEventListener("focus",i=>t(i))}onBlur(t){var n;(n=this._buttonElement)==null||n.addEventListener("blur",i=>t(i))}};function k(){c(o)}export{e as a,o as b,b as c,k as d};
|
|
7
|
+
//# sourceMappingURL=chunk.XLL7L2UB.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 F}from"./chunk.VAAID3SH.js";import{b as j}from"./chunk.2WSXSOYB.js";import{a as te}from"./chunk.DQVYB55P.js";import{h as pe,i as ae}from"./chunk.VDGJ4UDL.js";import{c as ee}from"./chunk.LV7XF22P.js";import{f as Z}from"./chunk.D5ZHKPCL.js";import{b as Q}from"./chunk.WOMYKBUG.js";import{a as C,e as ie}from"./chunk.AQ7ROWO4.js";import{b as oe}from"./chunk.7UJAI6P2.js";import{c as re}from"./chunk.EY37FYZ4.js";import{a as se,b as le}from"./chunk.PLNLLKP2.js";import{a as ne}from"./chunk.GO5A4GKZ.js";import{a as D}from"./chunk.MGLWXAZO.js";import{c as W,g as K,h as q}from"./chunk.FYWPZFLJ.js";import{d as Y,l as X,m as J}from"./chunk.TCFKFKZW.js";import{a as z}from"./chunk.KVCDAZ6B.js";import{a as $}from"./chunk.YA3RDJCV.js";import{a as R}from"./chunk.YOXZOPAC.js";import{a}from"./chunk.NVUMRW44.js";import{a as H,b as G,c as V}from"./chunk.HGH6SSHZ.js";import{a as k,e as U,f as L}from"./chunk.I5SFCLDD.js";import{m as B,r as N,s as M,u as A}from"./chunk.K7FPXAFS.js";import{a as y,b as h,c as x,j as T,k as f,l as S,n as w,o as P}from"./chunk.J2M2MXP2.js";import{a as E,d as p}from"./chunk.M3QDAYD2.js";var g=`${G}autocomplete`,me={MODE:"mode",MULTIPLE:"multiple",DEBOUNCE:"debounce",FILTER_ON_FOCUS:"filter-on-focus",FILTER_FOCUS_FIRST:"filter-focus-first",ALLOW_UNMATCHED:"allow-unmatched",POPUP_TARGET:"popup-target",POPUP_CLASSES:"popup-classes",OPTION_LIMIT:"option-limit",OBSERVE_SCROLL:"observe-scroll",OBSERVE_SCROLL_THRESHOLD:"observe-scroll-threshold",SYNC_POPUP_WIDTH:"sync-popup-width",OPEN:"open",MATCH_KEY:"match-key",FILTER_TEXT:"filter-text",DROPDOWN_ICON_OPEN:"data-forge-dropdown-icon-open"},fe={INPUT:ne.selectors.INPUT,DROPDOWN_ICON:"[data-forge-dropdown-icon],[data-forge-dropdown-icon],[forge-dropdown-icon],.forge-dropdown-icon",CLEAR_BUTTON:"[data-forge-autocomplete-clear],[forge-autocomplete-clear]"},ve={DEFAULT_DEBOUNCE_TIME:500,NUM_SKELETON_ITEMS:3},be={CHANGE:`${g}-change`,SELECT:`${g}-select`,SCROLLED_BOTTOM:`${g}-scrolled-bottom`},o={elementName:g,attributes:me,selectors:fe,numbers:ve,events:be},ue=(e=>(e.Default="default",e.Stateless="stateless",e))(ue||{});var O=class extends R{constructor(e){super(e);this.setInputElement()}setInputElement(){let e=N(this._component,o.selectors.INPUT,!1);return e.length&&(this._inputElement=e[0]),this._inputElement}setInputAttribute(e,t){this._inputElement.setAttribute(e,t)}addInputListener(e,t){this._inputElement.addEventListener(e,t)}removeInputListener(e,t){this._inputElement.removeEventListener(e,t)}initializeInputAccessibility(e){this._inputElement.setAttribute("autocomplete","off"),this._inputElement.setAttribute("role","combobox"),this._inputElement.setAttribute("aria-live","polite"),this._inputElement.setAttribute("aria-atomic","true"),this._inputElement.setAttribute("aria-haspopup","true"),this._inputElement.setAttribute("aria-expanded","false"),this._inputElement.setAttribute("aria-autocomplete","list")}isWrappingChipField(){return!!this._component.querySelector(F.elementName)}show(e,t){this._targetElement=this._getTargetElement(t),this._targetElement&&(this._listDropdown=new pe(this._targetElement,e),this._listDropdown.open(),this._inputElement.setAttribute("aria-expanded","true"),this._inputElement.setAttribute("aria-controls",`list-dropdown-popup-${e.id}`),this._tryToggleDropdownIconRotation(!0))}hide(e){if(!this._listDropdown)return;let{targetElement:t}=this._listDropdown.dropdownElement;t.removeEventListener(C.events.BLUR,e),this.setBusyVisibility(!1),this._tryToggleDropdownIconRotation(!1),this._inputElement.removeAttribute("aria-activedescendant"),this._inputElement.removeAttribute("aria-controls"),this._inputElement.setAttribute("aria-expanded","false"),this._listDropdown.close(),this._listDropdown=void 0}setBusyVisibility(e){var t;(t=this._listDropdown)==null||t.setBusyVisibility(e)}setDismissListener(e){if(!this._listDropdown||!this._listDropdown.dropdownElement)return;let t=this._listDropdown.dropdownElement;t.targetElement&&t.targetElement.addEventListener(C.events.BLUR,e)}focus(){window.requestAnimationFrame(()=>this._inputElement.focus())}setOptions(e){var t;(t=this._listDropdown)==null||t.setOptions(e)}appendOptions(e){var t;(t=this._listDropdown)==null||t.appendOptions(e)}setSelectedText(e){this._inputElement.value=e}getInputValue(){return this._inputElement.value}setInputValue(e){this._inputElement.value=e}selectInputValue(){window.requestAnimationFrame(()=>this._inputElement.select())}isFocusWithinPopup(e){return!this._listDropdown||!this._listDropdown.dropdownElement?!1:this._listDropdown.dropdownElement.contains(e)}hasFocus(){let e=M(this._component.ownerDocument);return e===this._inputElement||this.isFocusWithinPopup(e)}hasInputElement(){return!!this._inputElement}setDropdownIconListener(e,t){window.requestAnimationFrame(()=>{let i=this._component.querySelector(o.selectors.DROPDOWN_ICON);i&&i.addEventListener(e,t)})}removeDropdownIconListener(e,t){let i=this._component.querySelector(o.selectors.DROPDOWN_ICON);i&&i.removeEventListener(e,t)}setClearButtonListener(e,t){window.requestAnimationFrame(()=>{let i=this._component.querySelector(o.selectors.CLEAR_BUTTON);i&&i.addEventListener(e,t)})}removeClearButtonListener(e,t){let i=this._component.querySelector(o.selectors.CLEAR_BUTTON);i&&i.removeEventListener(e,t)}propagateKey(e){var t;(t=this._listDropdown)==null||t.handleKey(e)}updateActiveDescendant(e){this._targetElement&&A(this._inputElement,!!e,"aria-activedescendant",e)}getTargetElementWidth(e){return this._targetElement||(this._targetElement=this._getTargetElement(e)),this._targetElement.getBoundingClientRect().width}getPopupElement(){var e,t;return(t=(e=this._listDropdown)==null?void 0:e.dropdownElement)!=null?t:null}activateFirstOption(){var e;(e=this._listDropdown)==null||e.activateFirstOption()}activateSelectedOption(){var e;(e=this._listDropdown)==null||e.activateSelectedOption()}activateOptionByIndex(e){var t;(t=this._listDropdown)==null||t.activateOption(e)}getActiveOptionIndex(){var e,t;return(t=(e=this._listDropdown)==null?void 0:e.getActiveOptionIndex())!=null?t:null}clearActiveOption(){var e;(e=this._listDropdown)==null||e.clearActiveOption()}setSelectedOptions(e){if(this._listDropdown){let t=e.map(i=>i.value);this._listDropdown.setSelectedValues(t)}}queueDropdownPositionUpdate(){this.getPopupElement()&&window.requestAnimationFrame(()=>{let e=this.getPopupElement();e==null||e.position()})}_getTargetElement(e){return e?this._component.querySelector(e)||this._getDefaultTargetElement():this._getDefaultTargetElement()}_getDefaultTargetElement(){let e=this._component.querySelector("forge-text-field");if(e&&e.shadowRoot){let i=L(e,se.selectors.ROOT);if(i)return i}let t=this._component.querySelector("forge-chip-field");if(t&&t.shadowRoot){let i=L(t,F.selectors.ROOT);if(i)return i}return this._component.querySelector("input")||this._component}_tryToggleDropdownIconRotation(e){let t=this._component.querySelector(o.selectors.DROPDOWN_ICON);t&&A(t,e,o.attributes.DROPDOWN_ICON_OPEN)}};var de=(e=>(e[e.Option=0]="Option",e[e.Group=1]="Group",e))(de||{});function v(u,d){let e=u.some(i=>h(i)&&T(i)&&i.hasOwnProperty("options")&&(i.hasOwnProperty("text")||i.hasOwnProperty("builder"))),t=u.some(i=>h(i)&&T(i)&&i.hasOwnProperty("label")&&i.hasOwnProperty("value"));return e&&d===1||t&&d===0}function ce(u,d){return u.find(e=>e.value===d)}function b(u,d,e=null){return e?!(e in u.value)||!(e in d)?!1:w(u.value[e],d[e]):w(u.value,d)}var I=class extends ae{constructor(e){super();this._adapter=e;this._isInitialized=!1;this._isDropdownOpen=!1;this._mode="default";this._multiple=!1;this._debounce=o.numbers.DEFAULT_DEBOUNCE_TIME;this._allowUnmatched=!1;this._filterOnFocus=!0;this._filterFocusFirst=!0;this._options=[];this._filterText="";this._selectedOptions=[];this._values=[];this._pendingFilterPromises=[];this._matchKey=null;this._clickListener=t=>this._onClick(t),this._focusListener=()=>this._onFocus(),this._blurListener=t=>this._onBlur(t),this._keydownListener=t=>this._onKeydown(t),this._dropdownIconClickListener=t=>this._onDropdownIconClick(t),this._dropdownScrollEndListener=()=>this._onDropdownScrollEnd(),this._dropdownIconMouseDownListener=t=>this._onDropdownIconMouseDown(t),this._clearButtonListener=t=>this._onClear(t),this._dismissListener=()=>this._onDismiss(),this._activeChangeListener=t=>this._adapter.updateActiveDescendant(t),this._targetWidthCallback=()=>this._adapter.getTargetElementWidth(this._popupTarget),this._identifier=y()}async initialize(){if(!this._adapter.hasInputElement()&&!this._adapter.setInputElement())throw new Error("An input element is required as a child of the autocomplete component.");if(this._setInputListener(),this._setFilterCallback(),this._attachListeners(),this._initializeAccessibility(),this._values.length){if(!this._selectedOptions.length){try{await this._executeFilter()}catch(e){console.error(e)}this._updateSelectedOptions(this._values)}this._adapter.setSelectedText(this._getSelectedText())}this._isInitialized=!0}disconnect(){this._isInitialized&&(this._detachListeners(),this._isInitialized=!1),this._isDropdownOpen&&this._closeDropdown()}async forceFilter({preserveValue:e}){this._options=[],await this._executeFilter(!0,!0),e&&this._options.push(...this._selectedOptions),this._applyValue(this._values)}_attachListeners(){this._adapter.addInputListener("click",this._clickListener),this._adapter.addInputListener("focus",this._focusListener),this._adapter.addInputListener("blur",this._blurListener),this._adapter.addInputListener("input",this._inputListener),this._adapter.addInputListener("keydown",this._keydownListener),this._adapter.setDropdownIconListener("click",this._dropdownIconClickListener),this._adapter.setDropdownIconListener("mousedown",this._dropdownIconMouseDownListener),this._adapter.setClearButtonListener("click",this._clearButtonListener)}_detachListeners(){this._adapter.removeInputListener("click",this._clickListener),this._adapter.removeInputListener("focus",this._focusListener),this._adapter.removeInputListener("blur",this._blurListener),this._adapter.removeInputListener("input",this._inputListener),this._adapter.removeInputListener("keydown",this._keydownListener),this._adapter.removeDropdownIconListener("click",this._dropdownIconClickListener),this._adapter.removeDropdownIconListener("mousedown",this._dropdownIconMouseDownListener),this._adapter.removeClearButtonListener("click",this._clearButtonListener)}_setInputListener(){this._inputListener=e=>this._onInput(e)}_setFilterCallback(){this._filterFn=h(this._debounce)&&this._debounce>0?P(this._debounceFilter,this._debounce,!1):this._debounceFilter}_initializeAccessibility(){this._adapter.initializeInputAccessibility(this._identifier)}get _flatOptions(){return v(this._options,1)?this._options.reduce((e,t)=>e.concat(t.options),[]):this._options}_onClick(e){!this._isDropdownOpen&&this._filterOnFocus&&this._showDropdown()}_onDropdownIconMouseDown(e){e.preventDefault()}_onDropdownIconClick(e){this._isDropdownOpen?this._closeDropdown():(this._adapter.focus(),window.requestAnimationFrame(()=>this._showDropdown()))}_onClear(e){this._filterText="",this._clearValue(),this._adapter.setSelectedText(this._getSelectedText())}_onDropdownScrollEnd(){this._adapter.emitHostEvent(o.events.SCROLLED_BOTTOM)}_onFocus(){!this._isDropdownOpen&&this._adapter.getInputValue()&&!D.isMobile&&this._adapter.selectInputValue()}_onBlur(e){this._adapter.isFocusWithinPopup(e.relatedTarget)||this._applyBlur()}_applyBlur(){this._isDropdownOpen&&this._closeDropdown(),this._mode!=="stateless"&&(this._selectedOptions.length?this._adapter.setSelectedText(this._getSelectedText()):this._allowUnmatched||(this._filterText="",this._adapter.setSelectedText("")))}_onInput(e){this._selectedOptions.length&&!this._multiple&&(!this._adapter.getInputValue()||this._allowUnmatched)&&!this._adapter.isWrappingChipField()&&(this._selectedOptions=[],this._values=[],this._emitChangeEvent()),this._filterText=this._adapter.getInputValue(),this._filterFn()}async _debounceFilter({checkFocus:e=!0}={}){if(!e&&!this._adapter.hasFocus()){this._pendingFilterPromises=[],this._isDropdownOpen&&this._closeDropdown();return}let t=this._filterText,i=this._executeFilter();this._pendingFilterPromises.push(i),this._isDropdownOpen?this._adapter.setBusyVisibility(!0):this._showDropdown({filter:!1});try{await i}catch(n){this._pendingFilterPromises=[],this._isDropdownOpen&&this._closeDropdown();return}if(t===this._filterText)this._pendingFilterPromises=[],this._onFilterComplete();else{let n=this._pendingFilterPromises.indexOf(i);n!==-1&&this._pendingFilterPromises.splice(n,1)}}_onKeydown(e){switch(e.key){case"Tab":this._isDropdownOpen&&!this._multiple&&this._selectActiveOption(!1);break;case"Esc":case"Escape":this._isDropdownOpen&&(e.preventDefault(),e.stopPropagation(),this._closeDropdown());break;case"Down":case"ArrowDown":e.preventDefault(),this._isDropdownOpen?this._adapter.propagateKey(e.key):this._showDropdown({activateFirst:!0,activateSelected:!0});break;case"Up":case"ArrowUp":e.preventDefault(),this._isDropdownOpen&&this._adapter.propagateKey(e.key);break;case"Enter":case"Home":case"End":this._isDropdownOpen&&(e.key==="Enter"&&e.stopPropagation(),e.preventDefault(),this._adapter.propagateKey(e.key));break;case"Backspace":case"Delete":let t=e.target,i=this._adapter.getInputValue(),n=t.value.substring(t.selectionStart,t.selectionEnd)===t.value,l=i.length===1&&t.selectionEnd===1,c=i.length===1&&t.selectionEnd===0,_=!i||n||l||c;!this._adapter.isWrappingChipField()&&_&&!this._multiple&&this._values.length&&this._clearValue();break}}_executeFilter(e=!0,t=!1){if(!this._filter||typeof this._filter!="function")throw new Error('A filter callback must be provided. Did you set the "filter" property?');let i=this._filter,n=e?this._filterText:"",l=t?this._getValue():null;return new Promise((c,_)=>Promise.resolve(i(n,l)).then(r=>{this._options=r,c(this._options)}).catch(r=>_(`An unexpected error occurred while filtering: ${r}`)))}_onFilterComplete(){if(!this._adapter.hasFocus()){this._isDropdownOpen&&this._closeDropdown();return}if(this._options.length){let e=this._allowUnmatched&&!this._selectedOptions.length;this._dropdownReady({userTriggered:e}),this._filterFocusFirst&&this._filterText&&this._adapter.activateFirstOption()}else this._closeDropdown()}_clearValue(){this._selectedOptions=[],this._values=[],this._isDropdownOpen&&(this._adapter.setSelectedOptions([]),this._adapter.clearActiveOption()),this._emitChangeEvent()}async _showDropdown({filter:e=!0,userTriggered:t=!0,activateFirst:i=!1,activateSelected:n=!1}={}){let l=this._allowUnmatched&&!this._selectedOptions.length;this._isDropdownOpen=!0;let c;if(this._optionBuilder){let r=this._optionBuilder;c=(m,_e)=>r(m,this._filterText,_e)}let _={options:this._options,multiple:this._multiple,selectedValues:[...this._values],id:`forge-autocomplete-${this._identifier}`,asyncStyle:"skeleton",optionLimit:this._optionLimit,popupClasses:this._popupClasses,headerBuilder:this._popupHeaderBuilder,footerBuilder:this._popupFooterBuilder,transform:r=>{if(this._filterText){let m=$(r,this._filterText);if(m)return m}return r},allowBusy:!0,optionBuilder:c,syncWidth:this._syncPopupWidth,observeScroll:this._observeScroll,observeScrollThreshold:this._observeScrollThreshold,scrollEndListener:this._dropdownScrollEndListener,activeChangeCallback:this._activeChangeListener,targetWidthCallback:this._targetWidthCallback,selectCallback:r=>this._onSelect(r),closeCallback:()=>this._closeDropdown()};if(this._adapter.show(_,this._popupTarget),this._adapter.toggleHostAttribute(o.attributes.OPEN,this._isDropdownOpen),e){this._options.length&&this._adapter.setBusyVisibility(!0);try{await this._executeFilter(l)}catch(r){console.error(r)}this._updateSelectedOptions(this._values)}this._pendingFilterPromises.length||this._dropdownReady({userTriggered:t,activateFirst:i,activateSelected:n})}_dropdownReady({userTriggered:e=!0,activateFirst:t=!1,activateSelected:i=!1}={}){if(!this._isDropdownOpen||!this._options.length||e&&!this._adapter.hasFocus()){this._closeDropdown();return}this._sortSelectedOptions(),this._adapter.setBusyVisibility(!1),this._adapter.setOptions(this._options),this._adapter.setSelectedOptions(this._selectedOptions),this._adapter.setDismissListener(this._dismissListener),i&&this._selectedOptions.length?this._adapter.activateSelectedOption():t&&this._adapter.activateFirstOption()}_closeDropdown(){this._multiple&&(this._filterText=""),this._isDropdownOpen=!1,this._adapter.hide(this._dismissListener),this._sortSelectedOptions(),this._adapter.toggleHostAttribute(o.attributes.OPEN,this._isDropdownOpen)}_sortSelectedOptions(){if(this._multiple&&this._selectedOptions.length&&v(this._options,0)){let e=[],t=[];this._options.forEach(i=>{this._selectedOptions.find(n=>b(n,i.value,this._matchKey))?e.push(i):t.push(i)}),this._options=[...e,...t]}}async _onSelect(e,t=!0){if(this._valueChanging)return;if(this._mode==="stateless"){let n={value:e};this._adapter.emitHostEvent(o.events.SELECT,n,!0,!0)&&(this._filterText="",this._multiple||this._closeDropdown());return}let i=()=>{let l=this._flatOptions.find(r=>b(r,e,this._matchKey)),c=l?l.value:"",_=l?l.label:"";if(this._multiple){let r=ce(this._selectedOptions,c);if(r){let m=this._selectedOptions.indexOf(r);this._selectedOptions.splice(m,1)}else this._selectedOptions.push(l)}else h(c)?(this._selectedOptions[0]=l,this._filterText=_):(this._selectedOptions=[],this._filterText="");this._isDropdownOpen&&this._adapter.setSelectedOptions(this._selectedOptions),this._values=this._selectedOptions.map(r=>r.value),this._adapter.setSelectedText(this._getSelectedText()),!D.isMobile&&t&&this._adapter.selectInputValue(),this._emitChangeEvent(),this._tryUpdateDropdownPosition()};this._isDropdownOpen&&!this._multiple&&this._closeDropdown(),typeof this._beforeValueChange=="function"?(this._valueChanging=Promise.resolve(this._beforeValueChange.call(null,e,this._matchKey)),await this._valueChanging?i():this._tryUpdateDropdownPosition(),this._valueChanging=void 0):i()}_selectActiveOption(e=!0){let t=this._adapter.getActiveOptionIndex();if(typeof t=="number"&&t>=0){let i=this._flatOptions[t];i&&this._onSelect(i.value,e)}}_emitChangeEvent(){this._adapter.emitHostEvent(o.events.CHANGE,this._getValue(),!0)}_tryUpdateDropdownPosition(){this._isDropdownOpen&&this._adapter.queueDropdownPositionUpdate()}_getValue(){return this._values?this._values.length?this._multiple?[...this._values]:this._values[0]:this._multiple?[]:null:null}_getSelectedText(){var e,t;return this._adapter.isWrappingChipField()?"":this._selectedTextBuilder?this._selectedTextBuilder(this._selectedOptions):this._multiple?this._values.length?this._values.length===1?(t=(e=this._selectedOptions[0])==null?void 0:e.label)!=null?t:"":`${this._values.length} options selected`:"":this._selectedOptions.filter(i=>i&&i.label).map(i=>i.label).join(" ").trim()}_onDismiss(){this._closeDropdown()}async _applyValue(e){let t=[];this._selectedOptions=[],Array.isArray(e)?t=e:t=h(e)?[e]:[],!this._multiple&&t.length>1&&(t=[t[0]]),v(t,0)?(this._values=t.map(n=>n.value),this._selectedOptions=t):this._values=t;let i=this._flatOptions;if(t.length&&i.length&&this._updateSelectedOptions(t),this._values.length&&!this._selectedOptions.length&&this._filter&&this._isInitialized){try{await this._executeFilter(!1,!0)}catch(n){console.error(n)}this._updateSelectedOptions(this._values)}this._multiple?this._filterText="":this._filterText=this._selectedOptions.length?this._selectedOptions[0].label:"",this._isInitialized&&this._adapter.setSelectedText(this._getSelectedText()),this._isDropdownOpen&&this._adapter.setSelectedOptions(this._selectedOptions)}_updateSelectedOptions(e){let t=[...this._flatOptions,...this._selectedOptions];if(this._selectedOptions.length&&(this._selectedOptions=[]),v(e,0))for(let i of e){let n=t.find(l=>b(l,i.value,this._matchKey));n?this._selectedOptions.push(n):this._selectedOptions.push(i)}else for(let i of e){let n=t.find(l=>b(l,i,this._matchKey));n?this._selectedOptions.push(n):this._allowUnmatched&&this._selectedOptions.push({label:i,value:i})}}get mode(){return this._mode}set mode(e){this._mode!==e&&(this._mode=e,this._mode==="stateless"&&(this._selectedOptions=[],this._isDropdownOpen&&this._closeDropdown()),this._adapter.setHostAttribute(o.attributes.MODE,this._mode))}get multiple(){return this._multiple}set multiple(e){this._multiple!==e&&(this._multiple=e,this._adapter.setHostAttribute(o.attributes.MULTIPLE,h(this._multiple)?this._multiple.toString():""))}get value(){return this._getValue()}set value(e){let t=[];e==null?t=[]:Array.isArray(e)?t=JSON.parse(JSON.stringify(e)):x(e)?t=[e]:t=[JSON.parse(JSON.stringify(e))],(t.length!==this._values.length||t.some(n=>!this._values.includes(n)))&&this._applyValue(e)}get filterOnFocus(){return this._filterOnFocus}set filterOnFocus(e){this._filterOnFocus!==e&&(this._filterOnFocus=e,this._adapter.setHostAttribute(o.attributes.FILTER_ON_FOCUS,h(this._filterOnFocus)?this._filterOnFocus.toString():""))}get filterFocusFirst(){return this._filterFocusFirst}set filterFocusFirst(e){this._filterFocusFirst!==e&&(this._filterFocusFirst=e,this._adapter.toggleHostAttribute(o.attributes.FILTER_FOCUS_FIRST,this._filterFocusFirst))}get allowUnmatched(){return this._allowUnmatched}set allowUnmatched(e){this._allowUnmatched!==e&&(this._allowUnmatched=e,h(this._allowUnmatched)&&this._adapter.setHostAttribute(o.attributes.ALLOW_UNMATCHED,this._allowUnmatched.toString()))}get matchKey(){return this._matchKey}set matchKey(e){this._matchKey!==e&&(this._matchKey=e)}get popupTarget(){return this._popupTarget}set popupTarget(e){this._popupTarget!==e&&(this._popupTarget=e)}get filterText(){return this._filterText}set filterText(e){this._filterText!==e&&(this._filterText=this._allowUnmatched?e:"",this._isInitialized&&this._allowUnmatched&&(this._adapter.setInputValue(this._filterText),this._isDropdownOpen&&this._debounceFilter({checkFocus:!1})))}get popupClasses(){return Array.isArray(this._popupClasses)?[...this._popupClasses]:[this._popupClasses]}set popupClasses(e){this._popupClasses!==e&&(this._popupClasses=Array.isArray(e)?[...e]:[e])}set popupHeaderBuilder(e){this._popupHeaderBuilder=e}set popupFooterBuilder(e){this._popupFooterBuilder=e}get syncPopupWidth(){return this._syncPopupWidth}set syncPopupWidth(e){this._syncPopupWidth!==e&&(this._syncPopupWidth=e)}get optionLimit(){return this._optionLimit}set optionLimit(e){this._optionLimit!==e&&(this._optionLimit=e)}get debounce(){return this._debounce}set debounce(e){this._debounce!==e&&(this._debounce=e,this._isInitialized&&this._setFilterCallback(),this._adapter.setHostAttribute(o.attributes.DEBOUNCE,h(this._debounce)?this._debounce.toString():""))}get optionBuilder(){return this._optionBuilder}set optionBuilder(e){this._optionBuilder=e}get filter(){return this._filter}set filter(e){this._filter!==e&&(this._filter=e,this._isInitialized&&this._values.length&&!this._flatOptions.length&&this._filter&&this._executeFilter().then(()=>{this._updateSelectedOptions(this._values),this._adapter.setSelectedText(this._getSelectedText())}))}get selectedTextBuilder(){return this._selectedTextBuilder}set selectedTextBuilder(e){this._selectedTextBuilder=e,this._selectedOptions.length&&this._adapter.setSelectedText(this._getSelectedText())}get observeScroll(){return this._observeScroll}set observeScroll(e){this._observeScroll=e}get observeScrollThreshold(){return this._observeScrollThreshold}set observeScrollThreshold(e){this._observeScrollThreshold=e}appendOptions(e){this._isDropdownOpen&&(this._options=[...this._options,...e],this._adapter.appendOptions(e))}get isInitialized(){return this._isInitialized}get open(){return this._isDropdownOpen}set open(e){this._isDropdownOpen!==e&&(e?this._showDropdown({userTriggered:!1}):this._closeDropdown())}get beforeValueChange(){return this._beforeValueChange}set beforeValueChange(e){e!==this._beforeValueChange&&(this._beforeValueChange=e)}get popupElement(){return this._adapter.getPopupElement()}};var ge="<template><slot></slot></template>",Oe=":host{display:block}:host([hidden]){display:none}",s=class extends te{constructor(){super();Y.define([W,q,K]),U(this,ge,Oe),this._foundation=new I(new O(this))}static get observedAttributes(){return[o.attributes.MODE,o.attributes.MULTIPLE,o.attributes.DEBOUNCE,o.attributes.FILTER_ON_FOCUS,o.attributes.FILTER_FOCUS_FIRST,o.attributes.ALLOW_UNMATCHED,o.attributes.POPUP_TARGET,o.attributes.POPUP_CLASSES,o.attributes.OBSERVE_SCROLL,o.attributes.OBSERVE_SCROLL_THRESHOLD,o.attributes.OPTION_LIMIT,o.attributes.SYNC_POPUP_WIDTH,o.attributes.OPEN,o.attributes.MATCH_KEY,o.attributes.FILTER_TEXT]}connectedCallback(){this.querySelector(o.selectors.INPUT)?this._foundation.initialize():B(this,o.selectors.INPUT).then(()=>this._foundation.initialize())}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(e,t,i){switch(super.attributeChangedCallback(e,t,i),e){case o.attributes.MODE:this.mode=i;break;case o.attributes.MULTIPLE:this.multiple=f(i);break;case o.attributes.DEBOUNCE:this.debounce=S(i);break;case o.attributes.FILTER_ON_FOCUS:this.filterOnFocus=f(i);break;case o.attributes.FILTER_FOCUS_FIRST:this.filterFocusFirst=f(i);break;case o.attributes.ALLOW_UNMATCHED:this.allowUnmatched=f(i);break;case o.attributes.POPUP_TARGET:this.popupTarget=i;break;case o.attributes.OPEN:this.open=f(i);break;case o.attributes.MATCH_KEY:this.matchKey=i;break;case o.attributes.FILTER_TEXT:this.filterText=i;break}}appendOptions(e){this._foundation.appendOptions(e)}openDropdown(){this.open=!0}closeDropdown(){this.open=!1}forceFilter(e={preserveValue:!1}){this._foundation.forceFilter(e)}};p([a()],s.prototype,"mode",2),p([a()],s.prototype,"multiple",2),p([a()],s.prototype,"value",2),p([a()],s.prototype,"debounce",2),p([a()],s.prototype,"filterOnFocus",2),p([a()],s.prototype,"filterFocusFirst",2),p([a()],s.prototype,"allowUnmatched",2),p([a()],s.prototype,"popupTarget",2),p([a()],s.prototype,"filterText",2),p([a()],s.prototype,"optionBuilder",2),p([a()],s.prototype,"filter",2),p([a()],s.prototype,"selectedTextBuilder",2),p([a()],s.prototype,"open",2),p([a()],s.prototype,"matchKey",2),p([a({set:!1})],s.prototype,"isInitialized",2),p([a({set:!1})],s.prototype,"popupElement",2),p([a()],s.prototype,"beforeValueChange",2),s=p([H({name:o.elementName,dependencies:[re,ie,ee,Z,j,oe,Q,X]})],s);var he=class extends z{constructor(e){super(e)}_build(){let e=document.createElement(o.elementName);return this._attachTextField(e),e}get textFieldDelegate(){return this._textFieldDelegate}get value(){return this._element.value}set value(e){this._element.value=e}get disabled(){return this._textFieldDelegate.inputElement.disabled}set disabled(e){this._textFieldDelegate.inputElement.disabled=e}get invalid(){return this._textFieldDelegate.invalid||!1}set invalid(e){this._textFieldDelegate.invalid=e}onChange(e){this._element.addEventListener(o.events.CHANGE,t=>e(t.detail))}onFocus(e){this._textFieldDelegate.inputElement.addEventListener("focus",t=>e(t))}onBlur(e){this._textFieldDelegate.inputElement.addEventListener("blur",t=>e(t))}_attachTextField(e){var i,n,l,c,_,r;let t={props:E({},(n=(i=this._config.options)==null?void 0:i.textFieldDelegateConfig)==null?void 0:n.props),options:E({},(c=(l=this._config.options)==null?void 0:l.textFieldDelegateConfig)==null?void 0:c.options)};t.options||(t.options={}),((_=this._config.options)==null?void 0:_.useDropdownIcon)!==!1&&!((r=t.options)!=null&&r.trailingElement)&&(t.options.trailingElement=this._createDropdownIconElement()),this._textFieldDelegate=new le(t),e.appendChild(this._textFieldDelegate.element)}_createDropdownIconElement(){let e={props:{slot:"trailing",name:"arrow_drop_down"},options:{attributes:{"forge-dropdown-icon":""}}};return new J(e).element}};function Wt(){k(s)}export{o as a,ue as b,O as c,de as d,v as e,ce as f,b as g,I as h,s as i,he as j,Wt as k};
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{a as F}from"./chunk.7V4BDSA5.js";import{b as Q}from"./chunk.LOG6GQOK.js";import{a as te}from"./chunk.HRRJIFC5.js";import{h as pe,i as ae}from"./chunk.MKJCHUJH.js";import{c as ee}from"./chunk.ZRSDTCSD.js";import{f as Z}from"./chunk.QN5T26HH.js";import{b as J}from"./chunk.YWAUEUAH.js";import{a as C,e as ie}from"./chunk.5PG6WIIX.js";import{b as oe}from"./chunk.LCR4YH3O.js";import{c as re}from"./chunk.HOLCNJXC.js";import{a as se,b as le}from"./chunk.FLWNOP42.js";import{a as ne}from"./chunk.ZSZFWZAI.js";import{a as D}from"./chunk.MGLWXAZO.js";import{c as W,g as K,h as q}from"./chunk.FYWPZFLJ.js";import{d as Y,l as X,m as j}from"./chunk.AMZZKEAE.js";import{a as z}from"./chunk.KVCDAZ6B.js";import{a as $}from"./chunk.YA3RDJCV.js";import{a as R}from"./chunk.HSI7B43D.js";import{a}from"./chunk.NVUMRW44.js";import{a as H,b as G,c as V}from"./chunk.36F2GVWS.js";import{a as N,e as U,f as L}from"./chunk.JAWV5Y5T.js";import{m as B,r as M,s as k,u as A}from"./chunk.K7FPXAFS.js";import{a as y,b as h,c as x,j as T,k as f,l as S,n as w,o as P}from"./chunk.J2M2MXP2.js";import{a as E,d as p}from"./chunk.M3QDAYD2.js";var g=`${G}autocomplete`,me={MODE:"mode",MULTIPLE:"multiple",DEBOUNCE:"debounce",FILTER_ON_FOCUS:"filter-on-focus",FILTER_FOCUS_FIRST:"filter-focus-first",ALLOW_UNMATCHED:"allow-unmatched",POPUP_TARGET:"popup-target",POPUP_CLASSES:"popup-classes",OPTION_LIMIT:"option-limit",OBSERVE_SCROLL:"observe-scroll",OBSERVE_SCROLL_THRESHOLD:"observe-scroll-threshold",SYNC_POPUP_WIDTH:"sync-popup-width",OPEN:"open",MATCH_KEY:"match-key",FILTER_TEXT:"filter-text",DROPDOWN_ICON_OPEN:"data-forge-dropdown-icon-open"},fe={INPUT:ne.selectors.INPUT,DROPDOWN_ICON:"[data-forge-dropdown-icon],[data-forge-dropdown-icon],[forge-dropdown-icon],.forge-dropdown-icon",CLEAR_BUTTON:"[data-forge-autocomplete-clear],[forge-autocomplete-clear]"},ve={DEFAULT_DEBOUNCE_TIME:500,NUM_SKELETON_ITEMS:3},be={CHANGE:`${g}-change`,SELECT:`${g}-select`,SCROLLED_BOTTOM:`${g}-scrolled-bottom`},o={elementName:g,attributes:me,selectors:fe,numbers:ve,events:be},ue=(e=>(e.Default="default",e.Stateless="stateless",e))(ue||{});var O=class extends R{constructor(e){super(e);this.setInputElement()}setInputElement(){let e=M(this._component,o.selectors.INPUT,!1);return e.length&&(this._inputElement=e[0]),this._inputElement}setInputAttribute(e,t){this._inputElement.setAttribute(e,t)}addInputListener(e,t){this._inputElement.addEventListener(e,t)}removeInputListener(e,t){this._inputElement.removeEventListener(e,t)}initializeInputAccessibility(e){this._inputElement.setAttribute("autocomplete","off"),this._inputElement.setAttribute("role","combobox"),this._inputElement.setAttribute("aria-live","polite"),this._inputElement.setAttribute("aria-atomic","true"),this._inputElement.setAttribute("aria-haspopup","true"),this._inputElement.setAttribute("aria-expanded","false"),this._inputElement.setAttribute("aria-autocomplete","list")}isWrappingChipField(){return!!this._component.querySelector(F.elementName)}show(e,t){this._targetElement=this._getTargetElement(t),this._targetElement&&(this._listDropdown=new pe(this._targetElement,e),this._listDropdown.open(),this._inputElement.setAttribute("aria-expanded","true"),this._inputElement.setAttribute("aria-controls",`list-dropdown-popup-${e.id}`),this._tryToggleDropdownIconRotation(!0))}hide(e){if(!this._listDropdown)return;let{targetElement:t}=this._listDropdown.dropdownElement;t.removeEventListener(C.events.BLUR,e),this.setBusyVisibility(!1),this._tryToggleDropdownIconRotation(!1),this._inputElement.removeAttribute("aria-activedescendant"),this._inputElement.removeAttribute("aria-controls"),this._inputElement.setAttribute("aria-expanded","false"),this._listDropdown.close(),this._listDropdown=void 0}setBusyVisibility(e){var t;(t=this._listDropdown)==null||t.setBusyVisibility(e)}setDismissListener(e){if(!this._listDropdown||!this._listDropdown.dropdownElement)return;let t=this._listDropdown.dropdownElement;t.targetElement&&t.targetElement.addEventListener(C.events.BLUR,e)}focus(){window.requestAnimationFrame(()=>this._inputElement.focus())}setOptions(e){var t;(t=this._listDropdown)==null||t.setOptions(e)}appendOptions(e){var t;(t=this._listDropdown)==null||t.appendOptions(e)}setSelectedText(e){this._inputElement.value=e}getInputValue(){return this._inputElement.value}setInputValue(e){this._inputElement.value=e}selectInputValue(){window.requestAnimationFrame(()=>this._inputElement.select())}isFocusWithinPopup(e){return!this._listDropdown||!this._listDropdown.dropdownElement?!1:this._listDropdown.dropdownElement.contains(e)}hasFocus(){let e=k(this._component.ownerDocument);return e===this._inputElement||this.isFocusWithinPopup(e)}hasInputElement(){return!!this._inputElement}setDropdownIconListener(e,t){window.requestAnimationFrame(()=>{let i=this._component.querySelector(o.selectors.DROPDOWN_ICON);i&&i.addEventListener(e,t)})}removeDropdownIconListener(e,t){let i=this._component.querySelector(o.selectors.DROPDOWN_ICON);i&&i.removeEventListener(e,t)}setClearButtonListener(e,t){window.requestAnimationFrame(()=>{let i=this._component.querySelector(o.selectors.CLEAR_BUTTON);i&&i.addEventListener(e,t)})}removeClearButtonListener(e,t){let i=this._component.querySelector(o.selectors.CLEAR_BUTTON);i&&i.removeEventListener(e,t)}propagateKey(e){var t;(t=this._listDropdown)==null||t.handleKey(e)}updateActiveDescendant(e){this._targetElement&&A(this._inputElement,!!e,"aria-activedescendant",e)}getTargetElementWidth(e){return this._targetElement||(this._targetElement=this._getTargetElement(e)),this._targetElement.getBoundingClientRect().width}getPopupElement(){var e,t;return(t=(e=this._listDropdown)==null?void 0:e.dropdownElement)!=null?t:null}activateFirstOption(){var e;(e=this._listDropdown)==null||e.activateFirstOption()}activateSelectedOption(){var e;(e=this._listDropdown)==null||e.activateSelectedOption()}activateOptionByIndex(e){var t;(t=this._listDropdown)==null||t.activateOption(e)}getActiveOptionIndex(){var e,t;return(t=(e=this._listDropdown)==null?void 0:e.getActiveOptionIndex())!=null?t:null}clearActiveOption(){var e;(e=this._listDropdown)==null||e.clearActiveOption()}setSelectedOptions(e){if(this._listDropdown){let t=e.map(i=>i.value);this._listDropdown.setSelectedValues(t)}}queueDropdownPositionUpdate(){this.getPopupElement()&&window.requestAnimationFrame(()=>{let e=this.getPopupElement();e==null||e.position()})}_getTargetElement(e){return e?this._component.querySelector(e)||this._getDefaultTargetElement():this._getDefaultTargetElement()}_getDefaultTargetElement(){let e=this._component.querySelector("forge-text-field");if(e&&e.shadowRoot){let i=L(e,se.selectors.ROOT);if(i)return i}let t=this._component.querySelector("forge-chip-field");if(t&&t.shadowRoot){let i=L(t,F.selectors.ROOT);if(i)return i}return this._component.querySelector("input")||this._component}_tryToggleDropdownIconRotation(e){let t=this._component.querySelector(o.selectors.DROPDOWN_ICON);t&&A(t,e,o.attributes.DROPDOWN_ICON_OPEN)}};var de=(e=>(e[e.Option=0]="Option",e[e.Group=1]="Group",e))(de||{});function v(u,d){let e=u.some(i=>h(i)&&T(i)&&i.hasOwnProperty("options")&&(i.hasOwnProperty("text")||i.hasOwnProperty("builder"))),t=u.some(i=>h(i)&&T(i)&&i.hasOwnProperty("label")&&i.hasOwnProperty("value"));return e&&d===1||t&&d===0}function ce(u,d){return u.find(e=>e.value===d)}function b(u,d,e=null){return e?!(e in u.value)||!(e in d)?!1:w(u.value[e],d[e]):w(u.value,d)}var I=class extends ae{constructor(e){super();this._adapter=e;this._isInitialized=!1;this._isDropdownOpen=!1;this._mode="default";this._multiple=!1;this._debounce=o.numbers.DEFAULT_DEBOUNCE_TIME;this._allowUnmatched=!1;this._filterOnFocus=!0;this._filterFocusFirst=!0;this._options=[];this._filterText="";this._selectedOptions=[];this._values=[];this._pendingFilterPromises=[];this._matchKey=null;this._clickListener=t=>this._onClick(t),this._focusListener=()=>this._onFocus(),this._blurListener=t=>this._onBlur(t),this._keydownListener=t=>this._onKeydown(t),this._dropdownIconClickListener=t=>this._onDropdownIconClick(t),this._dropdownScrollEndListener=()=>this._onDropdownScrollEnd(),this._dropdownIconMouseDownListener=t=>this._onDropdownIconMouseDown(t),this._clearButtonListener=t=>this._onClear(t),this._dismissListener=()=>this._onDismiss(),this._activeChangeListener=t=>this._adapter.updateActiveDescendant(t),this._targetWidthCallback=()=>this._adapter.getTargetElementWidth(this._popupTarget),this._identifier=y()}async initialize(){if(!this._adapter.hasInputElement()&&!this._adapter.setInputElement())throw new Error("An input element is required as a child of the autocomplete component.");if(this._setInputListener(),this._setFilterCallback(),this._attachListeners(),this._initializeAccessibility(),this._values.length){if(!this._selectedOptions.length){try{await this._executeFilter()}catch(e){console.error(e)}this._updateSelectedOptions(this._values)}this._adapter.setSelectedText(this._getSelectedText())}this._isInitialized=!0}disconnect(){this._isInitialized&&(this._detachListeners(),this._isInitialized=!1),this._isDropdownOpen&&this._closeDropdown()}async forceFilter({preserveValue:e}){this._options=[],await this._executeFilter(!0,!0),e&&this._options.push(...this._selectedOptions),this._applyValue(this._values)}_attachListeners(){this._adapter.addInputListener("click",this._clickListener),this._adapter.addInputListener("focus",this._focusListener),this._adapter.addInputListener("blur",this._blurListener),this._adapter.addInputListener("input",this._inputListener),this._adapter.addInputListener("keydown",this._keydownListener),this._adapter.setDropdownIconListener("click",this._dropdownIconClickListener),this._adapter.setDropdownIconListener("mousedown",this._dropdownIconMouseDownListener),this._adapter.setClearButtonListener("click",this._clearButtonListener)}_detachListeners(){this._adapter.removeInputListener("click",this._clickListener),this._adapter.removeInputListener("focus",this._focusListener),this._adapter.removeInputListener("blur",this._blurListener),this._adapter.removeInputListener("input",this._inputListener),this._adapter.removeInputListener("keydown",this._keydownListener),this._adapter.removeDropdownIconListener("click",this._dropdownIconClickListener),this._adapter.removeDropdownIconListener("mousedown",this._dropdownIconMouseDownListener),this._adapter.removeClearButtonListener("click",this._clearButtonListener)}_setInputListener(){this._inputListener=e=>this._onInput(e)}_setFilterCallback(){this._filterFn=h(this._debounce)&&this._debounce>0?P(this._debounceFilter,this._debounce,!1):this._debounceFilter}_initializeAccessibility(){this._adapter.initializeInputAccessibility(this._identifier)}get _flatOptions(){return v(this._options,1)?this._options.reduce((e,t)=>e.concat(t.options),[]):this._options}_onClick(e){!this._isDropdownOpen&&this._filterOnFocus&&this._showDropdown()}_onDropdownIconMouseDown(e){e.preventDefault()}_onDropdownIconClick(e){this._isDropdownOpen?this._closeDropdown():(this._adapter.focus(),window.requestAnimationFrame(()=>this._showDropdown()))}_onClear(e){this._filterText="",this._clearValue(),this._adapter.setSelectedText(this._getSelectedText())}_onDropdownScrollEnd(){this._adapter.emitHostEvent(o.events.SCROLLED_BOTTOM)}_onFocus(){!this._isDropdownOpen&&this._adapter.getInputValue()&&!D.isMobile&&this._adapter.selectInputValue()}_onBlur(e){this._adapter.isFocusWithinPopup(e.relatedTarget)||this._applyBlur()}_applyBlur(){this._isDropdownOpen&&this._closeDropdown(),this._mode!=="stateless"&&(this._selectedOptions.length?this._adapter.setSelectedText(this._getSelectedText()):this._allowUnmatched||(this._filterText="",this._adapter.setSelectedText("")))}_onInput(e){this._selectedOptions.length&&!this._multiple&&(!this._adapter.getInputValue()||this._allowUnmatched)&&!this._adapter.isWrappingChipField()&&(this._selectedOptions=[],this._values=[],this._emitChangeEvent()),this._filterText=this._adapter.getInputValue(),this._filterFn()}async _debounceFilter({checkFocus:e=!0}={}){if(!e&&!this._adapter.hasFocus()){this._pendingFilterPromises=[],this._isDropdownOpen&&this._closeDropdown();return}let t=this._filterText,i=this._executeFilter();this._pendingFilterPromises.push(i),this._isDropdownOpen?this._adapter.setBusyVisibility(!0):this._showDropdown({filter:!1});try{await i}catch(n){this._pendingFilterPromises=[],this._isDropdownOpen&&this._closeDropdown();return}if(t===this._filterText)this._pendingFilterPromises=[],this._onFilterComplete();else{let n=this._pendingFilterPromises.indexOf(i);n!==-1&&this._pendingFilterPromises.splice(n,1)}}_onKeydown(e){switch(e.key){case"Tab":this._isDropdownOpen&&!this._multiple&&this._selectActiveOption(!1);break;case"Esc":case"Escape":this._isDropdownOpen&&(e.preventDefault(),e.stopPropagation(),this._closeDropdown());break;case"Down":case"ArrowDown":e.preventDefault(),this._isDropdownOpen?this._adapter.propagateKey(e.key):this._showDropdown({activateFirst:!0,activateSelected:!0});break;case"Up":case"ArrowUp":e.preventDefault(),this._isDropdownOpen&&this._adapter.propagateKey(e.key);break;case"Enter":case"Home":case"End":this._isDropdownOpen&&(e.key==="Enter"&&e.stopPropagation(),e.preventDefault(),this._adapter.propagateKey(e.key));break;case"Backspace":case"Delete":let t=e.target,i=this._adapter.getInputValue(),n=t.value.substring(t.selectionStart,t.selectionEnd)===t.value,l=i.length===1&&t.selectionEnd===1,c=i.length===1&&t.selectionEnd===0,_=!i||n||l||c;!this._adapter.isWrappingChipField()&&_&&!this._multiple&&this._values.length&&this._clearValue();break}}_executeFilter(e=!0,t=!1){if(!this._filter||typeof this._filter!="function")throw new Error('A filter callback must be provided. Did you set the "filter" property?');let i=this._filter,n=e?this._filterText:"",l=t?this._getValue():null;return new Promise((c,_)=>Promise.resolve(i(n,l)).then(r=>{this._options=r,c(this._options)}).catch(r=>_(`An unexpected error occurred while filtering: ${r}`)))}_onFilterComplete(){if(!this._adapter.hasFocus()){this._isDropdownOpen&&this._closeDropdown();return}if(this._options.length){let e=this._allowUnmatched&&!this._selectedOptions.length;this._dropdownReady({userTriggered:e}),this._filterFocusFirst&&this._filterText&&this._adapter.activateFirstOption()}else this._closeDropdown()}_clearValue(){this._selectedOptions=[],this._values=[],this._isDropdownOpen&&(this._adapter.setSelectedOptions([]),this._adapter.clearActiveOption()),this._emitChangeEvent()}async _showDropdown({filter:e=!0,userTriggered:t=!0,activateFirst:i=!1,activateSelected:n=!1}={}){let l=this._allowUnmatched&&!this._selectedOptions.length;this._isDropdownOpen=!0;let c;if(this._optionBuilder){let r=this._optionBuilder;c=(m,_e)=>r(m,this._filterText,_e)}let _={options:this._options,multiple:this._multiple,selectedValues:[...this._values],id:`forge-autocomplete-${this._identifier}`,asyncStyle:"skeleton",optionLimit:this._optionLimit,popupClasses:this._popupClasses,headerBuilder:this._popupHeaderBuilder,footerBuilder:this._popupFooterBuilder,transform:r=>{if(this._filterText){let m=$(r,this._filterText);if(m)return m}return r},allowBusy:!0,optionBuilder:c,syncWidth:this._syncPopupWidth,observeScroll:this._observeScroll,observeScrollThreshold:this._observeScrollThreshold,scrollEndListener:this._dropdownScrollEndListener,activeChangeCallback:this._activeChangeListener,targetWidthCallback:this._targetWidthCallback,selectCallback:r=>this._onSelect(r),closeCallback:()=>this._closeDropdown()};if(this._adapter.show(_,this._popupTarget),this._adapter.toggleHostAttribute(o.attributes.OPEN,this._isDropdownOpen),e){this._options.length&&this._adapter.setBusyVisibility(!0);try{await this._executeFilter(l)}catch(r){console.error(r)}this._updateSelectedOptions(this._values)}this._pendingFilterPromises.length||this._dropdownReady({userTriggered:t,activateFirst:i,activateSelected:n})}_dropdownReady({userTriggered:e=!0,activateFirst:t=!1,activateSelected:i=!1}={}){if(!this._isDropdownOpen||!this._options.length||e&&!this._adapter.hasFocus()){this._closeDropdown();return}this._sortSelectedOptions(),this._adapter.setBusyVisibility(!1),this._adapter.setOptions(this._options),this._adapter.setSelectedOptions(this._selectedOptions),this._adapter.setDismissListener(this._dismissListener),i&&this._selectedOptions.length?this._adapter.activateSelectedOption():t&&this._adapter.activateFirstOption()}_closeDropdown(){this._multiple&&(this._filterText=""),this._isDropdownOpen=!1,this._adapter.hide(this._dismissListener),this._sortSelectedOptions(),this._adapter.toggleHostAttribute(o.attributes.OPEN,this._isDropdownOpen)}_sortSelectedOptions(){if(this._multiple&&this._selectedOptions.length&&v(this._options,0)){let e=[],t=[];this._options.forEach(i=>{this._selectedOptions.find(n=>b(n,i.value,this._matchKey))?e.push(i):t.push(i)}),this._options=[...e,...t]}}async _onSelect(e,t=!0){if(this._valueChanging)return;if(this._mode==="stateless"){let n={value:e};this._adapter.emitHostEvent(o.events.SELECT,n,!0,!0)&&(this._filterText="",this._multiple||this._closeDropdown());return}let i=()=>{let l=this._flatOptions.find(r=>b(r,e,this._matchKey)),c=l?l.value:"",_=l?l.label:"";if(this._multiple){let r=ce(this._selectedOptions,c);if(r){let m=this._selectedOptions.indexOf(r);this._selectedOptions.splice(m,1)}else this._selectedOptions.push(l)}else h(c)?(this._selectedOptions[0]=l,this._filterText=_):(this._selectedOptions=[],this._filterText="");this._isDropdownOpen&&this._adapter.setSelectedOptions(this._selectedOptions),this._values=this._selectedOptions.map(r=>r.value),this._adapter.setSelectedText(this._getSelectedText()),!D.isMobile&&t&&this._adapter.selectInputValue(),this._emitChangeEvent(),this._tryUpdateDropdownPosition()};this._isDropdownOpen&&!this._multiple&&this._closeDropdown(),typeof this._beforeValueChange=="function"?(this._valueChanging=Promise.resolve(this._beforeValueChange.call(null,e,this._matchKey)),await this._valueChanging?i():this._tryUpdateDropdownPosition(),this._valueChanging=void 0):i()}_selectActiveOption(e=!0){let t=this._adapter.getActiveOptionIndex();if(typeof t=="number"&&t>=0){let i=this._flatOptions[t];i&&this._onSelect(i.value,e)}}_emitChangeEvent(){this._adapter.emitHostEvent(o.events.CHANGE,this._getValue(),!0)}_tryUpdateDropdownPosition(){this._isDropdownOpen&&this._adapter.queueDropdownPositionUpdate()}_getValue(){return this._values?this._values.length?this._multiple?[...this._values]:this._values[0]:this._multiple?[]:null:null}_getSelectedText(){var e,t;return this._adapter.isWrappingChipField()?"":this._selectedTextBuilder?this._selectedTextBuilder(this._selectedOptions):this._multiple?this._values.length?this._values.length===1?(t=(e=this._selectedOptions[0])==null?void 0:e.label)!=null?t:"":`${this._values.length} options selected`:"":this._selectedOptions.filter(i=>i&&i.label).map(i=>i.label).join(" ").trim()}_onDismiss(){this._closeDropdown()}async _applyValue(e){let t=[];this._selectedOptions=[],Array.isArray(e)?t=e:t=h(e)?[e]:[],!this._multiple&&t.length>1&&(t=[t[0]]),v(t,0)?(this._values=t.map(n=>n.value),this._selectedOptions=t):this._values=t;let i=this._flatOptions;if(t.length&&i.length&&this._updateSelectedOptions(t),this._values.length&&!this._selectedOptions.length&&this._filter&&this._isInitialized){try{await this._executeFilter(!1,!0)}catch(n){console.error(n)}this._updateSelectedOptions(this._values)}this._multiple?this._filterText="":this._filterText=this._selectedOptions.length?this._selectedOptions[0].label:"",this._isInitialized&&this._adapter.setSelectedText(this._getSelectedText()),this._isDropdownOpen&&this._adapter.setSelectedOptions(this._selectedOptions)}_updateSelectedOptions(e){let t=[...this._flatOptions,...this._selectedOptions];if(this._selectedOptions.length&&(this._selectedOptions=[]),v(e,0))for(let i of e){let n=t.find(l=>b(l,i.value,this._matchKey));n?this._selectedOptions.push(n):this._selectedOptions.push(i)}else for(let i of e){let n=t.find(l=>b(l,i,this._matchKey));n?this._selectedOptions.push(n):this._allowUnmatched&&this._selectedOptions.push({label:i,value:i})}}get mode(){return this._mode}set mode(e){this._mode!==e&&(this._mode=e,this._mode==="stateless"&&(this._selectedOptions=[],this._isDropdownOpen&&this._closeDropdown()),this._adapter.setHostAttribute(o.attributes.MODE,this._mode))}get multiple(){return this._multiple}set multiple(e){this._multiple!==e&&(this._multiple=e,this._adapter.setHostAttribute(o.attributes.MULTIPLE,h(this._multiple)?this._multiple.toString():""))}get value(){return this._getValue()}set value(e){let t=[];e==null?t=[]:Array.isArray(e)?t=structuredClone(e):x(e)?t=[e]:t=[structuredClone(e)],(t.length!==this._values.length||t.some(n=>!this._values.includes(n)))&&this._applyValue(e)}get filterOnFocus(){return this._filterOnFocus}set filterOnFocus(e){this._filterOnFocus!==e&&(this._filterOnFocus=e,this._adapter.setHostAttribute(o.attributes.FILTER_ON_FOCUS,h(this._filterOnFocus)?this._filterOnFocus.toString():""))}get filterFocusFirst(){return this._filterFocusFirst}set filterFocusFirst(e){this._filterFocusFirst!==e&&(this._filterFocusFirst=e,this._adapter.toggleHostAttribute(o.attributes.FILTER_FOCUS_FIRST,this._filterFocusFirst))}get allowUnmatched(){return this._allowUnmatched}set allowUnmatched(e){this._allowUnmatched!==e&&(this._allowUnmatched=e,h(this._allowUnmatched)&&this._adapter.setHostAttribute(o.attributes.ALLOW_UNMATCHED,this._allowUnmatched.toString()))}get matchKey(){return this._matchKey}set matchKey(e){this._matchKey!==e&&(this._matchKey=e)}get popupTarget(){return this._popupTarget}set popupTarget(e){this._popupTarget!==e&&(this._popupTarget=e)}get filterText(){return this._filterText}set filterText(e){this._filterText!==e&&(this._filterText=this._allowUnmatched?e:"",this._isInitialized&&this._allowUnmatched&&(this._adapter.setInputValue(this._filterText),this._isDropdownOpen&&this._debounceFilter({checkFocus:!1})))}get popupClasses(){return Array.isArray(this._popupClasses)?[...this._popupClasses]:[this._popupClasses]}set popupClasses(e){this._popupClasses!==e&&(this._popupClasses=Array.isArray(e)?[...e]:[e])}set popupHeaderBuilder(e){this._popupHeaderBuilder=e}set popupFooterBuilder(e){this._popupFooterBuilder=e}get syncPopupWidth(){return this._syncPopupWidth}set syncPopupWidth(e){this._syncPopupWidth!==e&&(this._syncPopupWidth=e)}get optionLimit(){return this._optionLimit}set optionLimit(e){this._optionLimit!==e&&(this._optionLimit=e)}get debounce(){return this._debounce}set debounce(e){this._debounce!==e&&(this._debounce=e,this._isInitialized&&this._setFilterCallback(),this._adapter.setHostAttribute(o.attributes.DEBOUNCE,h(this._debounce)?this._debounce.toString():""))}get optionBuilder(){return this._optionBuilder}set optionBuilder(e){this._optionBuilder=e}get filter(){return this._filter}set filter(e){this._filter!==e&&(this._filter=e,this._isInitialized&&this._values.length&&!this._flatOptions.length&&this._filter&&this._executeFilter().then(()=>{this._updateSelectedOptions(this._values),this._adapter.setSelectedText(this._getSelectedText())}))}get selectedTextBuilder(){return this._selectedTextBuilder}set selectedTextBuilder(e){this._selectedTextBuilder=e,this._selectedOptions.length&&this._adapter.setSelectedText(this._getSelectedText())}get observeScroll(){return this._observeScroll}set observeScroll(e){this._observeScroll=e}get observeScrollThreshold(){return this._observeScrollThreshold}set observeScrollThreshold(e){this._observeScrollThreshold=e}appendOptions(e){this._isDropdownOpen&&(this._options=[...this._options,...e],this._adapter.appendOptions(e))}get isInitialized(){return this._isInitialized}get open(){return this._isDropdownOpen}set open(e){this._isDropdownOpen!==e&&(e?this._showDropdown({userTriggered:!1}):this._closeDropdown())}get beforeValueChange(){return this._beforeValueChange}set beforeValueChange(e){e!==this._beforeValueChange&&(this._beforeValueChange=e)}get popupElement(){return this._adapter.getPopupElement()}};var ge="<template><slot></slot></template>",Oe=":host{display:block}:host([hidden]){display:none}",s=class extends te{constructor(){super();Y.define([W,q,K]),U(this,ge,Oe),this._foundation=new I(new O(this))}static get observedAttributes(){return[o.attributes.MODE,o.attributes.MULTIPLE,o.attributes.DEBOUNCE,o.attributes.FILTER_ON_FOCUS,o.attributes.FILTER_FOCUS_FIRST,o.attributes.ALLOW_UNMATCHED,o.attributes.POPUP_TARGET,o.attributes.POPUP_CLASSES,o.attributes.OBSERVE_SCROLL,o.attributes.OBSERVE_SCROLL_THRESHOLD,o.attributes.OPTION_LIMIT,o.attributes.SYNC_POPUP_WIDTH,o.attributes.OPEN,o.attributes.MATCH_KEY,o.attributes.FILTER_TEXT]}connectedCallback(){this.querySelector(o.selectors.INPUT)?this._foundation.initialize():B(this,o.selectors.INPUT).then(()=>this._foundation.initialize())}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(e,t,i){switch(super.attributeChangedCallback(e,t,i),e){case o.attributes.MODE:this.mode=i;break;case o.attributes.MULTIPLE:this.multiple=f(i);break;case o.attributes.DEBOUNCE:this.debounce=S(i);break;case o.attributes.FILTER_ON_FOCUS:this.filterOnFocus=f(i);break;case o.attributes.FILTER_FOCUS_FIRST:this.filterFocusFirst=f(i);break;case o.attributes.ALLOW_UNMATCHED:this.allowUnmatched=f(i);break;case o.attributes.POPUP_TARGET:this.popupTarget=i;break;case o.attributes.OPEN:this.open=f(i);break;case o.attributes.MATCH_KEY:this.matchKey=i;break;case o.attributes.FILTER_TEXT:this.filterText=i;break}}appendOptions(e){this._foundation.appendOptions(e)}openDropdown(){this.open=!0}closeDropdown(){this.open=!1}forceFilter(e={preserveValue:!1}){this._foundation.forceFilter(e)}};p([a()],s.prototype,"mode",2),p([a()],s.prototype,"multiple",2),p([a()],s.prototype,"value",2),p([a()],s.prototype,"debounce",2),p([a()],s.prototype,"filterOnFocus",2),p([a()],s.prototype,"filterFocusFirst",2),p([a()],s.prototype,"allowUnmatched",2),p([a()],s.prototype,"popupTarget",2),p([a()],s.prototype,"filterText",2),p([a()],s.prototype,"optionBuilder",2),p([a()],s.prototype,"filter",2),p([a()],s.prototype,"selectedTextBuilder",2),p([a()],s.prototype,"open",2),p([a()],s.prototype,"matchKey",2),p([a({set:!1})],s.prototype,"isInitialized",2),p([a({set:!1})],s.prototype,"popupElement",2),p([a()],s.prototype,"beforeValueChange",2),s=p([H({name:o.elementName,dependencies:[re,ie,ee,Z,Q,oe,J,X]})],s);var he=class extends z{constructor(e){super(e)}_build(){let e=document.createElement(o.elementName);return this._attachTextField(e),e}get textFieldDelegate(){return this._textFieldDelegate}get value(){return this._element.value}set value(e){this._element.value=e}get disabled(){return this._textFieldDelegate.inputElement.disabled}set disabled(e){this._textFieldDelegate.inputElement.disabled=e}get invalid(){return this._textFieldDelegate.invalid||!1}set invalid(e){this._textFieldDelegate.invalid=e}onChange(e){this._element.addEventListener(o.events.CHANGE,t=>e(t.detail))}onFocus(e){this._textFieldDelegate.inputElement.addEventListener("focus",t=>e(t))}onBlur(e){this._textFieldDelegate.inputElement.addEventListener("blur",t=>e(t))}_attachTextField(e){var i,n,l,c,_,r;let t={props:E({},(n=(i=this._config.options)==null?void 0:i.textFieldDelegateConfig)==null?void 0:n.props),options:E({},(c=(l=this._config.options)==null?void 0:l.textFieldDelegateConfig)==null?void 0:c.options)};t.options||(t.options={}),((_=this._config.options)==null?void 0:_.useDropdownIcon)!==!1&&!((r=t.options)!=null&&r.trailingElement)&&(t.options.trailingElement=this._createDropdownIconElement()),this._textFieldDelegate=new le(t),e.appendChild(this._textFieldDelegate.element)}_createDropdownIconElement(){let e={props:{slot:"trailing",name:"arrow_drop_down"},options:{attributes:{"forge-dropdown-icon":""}}};return new j(e).element}};function Wt(){N(s)}export{o as a,ue as b,O as c,de as d,v as e,ce as f,b as g,I as h,s as i,he as j,Wt as k};
|
|
7
|
+
//# sourceMappingURL=chunk.XNFS7YIB.js.map
|