@tylertech/forge 2.24.1 → 2.24.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/custom-elements.json +2666 -2807
- 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/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/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/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.UUBAUAER.js → chunk.3MMDUUTN.js} +2 -2
- package/dist/esm/chunks/{chunk.KZDQFUNT.js → chunk.3V2VDOOP.js} +2 -2
- package/dist/esm/chunks/{chunk.Q2PGK4IA.js → chunk.4KKMVMPN.js} +2 -2
- package/dist/esm/chunks/{chunk.WLBRU5HI.js → chunk.5SM7UG6C.js} +2 -2
- package/dist/esm/chunks/{chunk.LJQO5G5I.js → chunk.6DVJ22IK.js} +2 -2
- package/dist/esm/chunks/{chunk.QRWYYBZC.js → chunk.6NARYF7U.js} +2 -2
- package/dist/esm/chunks/{chunk.QRWYYBZC.js.map → chunk.6NARYF7U.js.map} +3 -3
- package/dist/esm/chunks/{chunk.4APGDQHF.js → chunk.AFW54X3W.js} +2 -2
- package/dist/esm/chunks/chunk.AH4YGLZ4.js +7 -0
- package/dist/esm/chunks/chunk.AH4YGLZ4.js.map +7 -0
- package/dist/esm/chunks/chunk.AJTQHK25.js +7 -0
- package/dist/esm/chunks/chunk.AJTQHK25.js.map +7 -0
- package/dist/esm/chunks/{chunk.KMMOZ2SF.js → chunk.C3G25JFG.js} +2 -2
- package/dist/esm/chunks/chunk.CL4FTBLR.js +7 -0
- package/dist/esm/chunks/chunk.CL4FTBLR.js.map +7 -0
- package/dist/esm/chunks/{chunk.POBCKMFO.js → chunk.CYLDP7ML.js} +2 -2
- package/dist/esm/chunks/{chunk.HDHGU4L2.js → chunk.E3K6KM57.js} +2 -2
- package/dist/esm/chunks/{chunk.PTEWJ5PZ.js → chunk.EQEMCHMB.js} +2 -2
- package/dist/esm/chunks/{chunk.QBST3QSM.js → chunk.FEU4FTVQ.js} +2 -2
- package/dist/esm/chunks/chunk.H2LKAI6N.js +7 -0
- package/dist/esm/chunks/chunk.H2LKAI6N.js.map +7 -0
- package/dist/esm/chunks/chunk.HGV5UXOS.js +7 -0
- package/dist/esm/chunks/chunk.HGV5UXOS.js.map +7 -0
- package/dist/esm/chunks/{chunk.IPQDOSLO.js → chunk.J4BGOSAD.js} +2 -2
- package/dist/esm/chunks/{chunk.BQRXAJTH.js → chunk.JFAOCIGZ.js} +2 -2
- package/dist/esm/chunks/{chunk.VUHUEAJD.js → chunk.JPL5457M.js} +2 -2
- package/dist/esm/chunks/{chunk.VUHUEAJD.js.map → chunk.JPL5457M.js.map} +1 -1
- package/dist/esm/chunks/{chunk.4QVF44G5.js → chunk.K57IO236.js} +2 -2
- package/dist/esm/chunks/{chunk.K2O3KSP7.js → chunk.KGMCBPGV.js} +2 -2
- package/dist/esm/chunks/chunk.KYH5GKVI.js +7 -0
- package/dist/esm/chunks/chunk.KYH5GKVI.js.map +7 -0
- package/dist/esm/chunks/chunk.LEINPSKL.js +7 -0
- package/dist/esm/chunks/chunk.LEINPSKL.js.map +7 -0
- package/dist/esm/chunks/{chunk.V5L5DKNF.js → chunk.LFBYFJTX.js} +2 -2
- package/dist/esm/chunks/chunk.MKHU4IPO.js +7 -0
- package/dist/esm/chunks/chunk.MKHU4IPO.js.map +7 -0
- package/dist/esm/chunks/chunk.N6MAUMFI.js +7 -0
- package/dist/esm/chunks/chunk.N6MAUMFI.js.map +7 -0
- package/dist/esm/chunks/{chunk.USKQFX4N.js → chunk.OBBYRQCY.js} +2 -2
- package/dist/esm/chunks/chunk.OJ54J4L3.js +7 -0
- package/dist/esm/chunks/chunk.OJ54J4L3.js.map +7 -0
- package/dist/esm/chunks/chunk.OML7MHH6.js +29 -0
- package/dist/esm/chunks/chunk.OML7MHH6.js.map +7 -0
- package/dist/esm/chunks/chunk.PSU432SK.js +12 -0
- package/dist/esm/chunks/{chunk.U5DETNRU.js → chunk.QIGNMZRL.js} +2 -2
- package/dist/esm/chunks/{chunk.DNWMURCG.js → chunk.RHXQ2GMV.js} +2 -2
- package/dist/esm/chunks/{chunk.OLNY6ZNB.js → chunk.TLXWXBQO.js} +2 -2
- package/dist/esm/chunks/chunk.TMEYQXRR.js +7 -0
- package/dist/esm/chunks/chunk.TMEYQXRR.js.map +7 -0
- package/dist/esm/chunks/{chunk.EPFMWAIO.js → chunk.TVWUZYVG.js} +2 -2
- package/dist/esm/chunks/{chunk.AITARMT3.js → chunk.UNFOIEF6.js} +2 -2
- package/dist/esm/chunks/{chunk.AITARMT3.js.map → chunk.UNFOIEF6.js.map} +2 -2
- package/dist/esm/chunks/{chunk.32AY5G4D.js → chunk.W3DFKTAX.js} +2 -2
- package/dist/esm/chunks/{chunk.ATJJ6NAY.js → chunk.WF24FWAT.js} +2 -2
- package/dist/esm/chunks/chunk.XINI6PNZ.js +7 -0
- package/dist/esm/chunks/chunk.XINI6PNZ.js.map +7 -0
- package/dist/esm/chunks/{chunk.WVU4LCVC.js → chunk.XKX2BE6Z.js} +2 -2
- package/dist/esm/chunks/{chunk.ZVHFSAID.js → chunk.YVXZ753Q.js} +2 -2
- package/dist/esm/chunks/{chunk.QFMQPAT2.js → chunk.Z7Y2RA4P.js} +2 -2
- package/dist/esm/color-picker/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/expansion-panel/index.js +1 -1
- package/dist/esm/file-picker/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/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/paginator/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/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/select/index.js +1 -1
- package/dist/esm/select/select-dropdown/index.js +1 -1
- package/dist/esm/slider/index.js +1 -1
- package/dist/esm/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view/index.js +1 -1
- package/dist/esm/split-view/split-view-panel/index.js +1 -1
- package/dist/esm/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/time-picker/index.js +1 -1
- package/dist/esm/toast/index.js +1 -1
- package/esm/autocomplete/autocomplete-adapter.d.ts +2 -0
- package/esm/autocomplete/autocomplete-adapter.js +6 -0
- package/esm/autocomplete/autocomplete-foundation.js +1 -0
- package/esm/core/utils/utils.d.ts +9 -0
- package/esm/core/utils/utils.js +22 -0
- package/esm/date-picker/date-picker-adapter.js +3 -0
- package/esm/date-range-picker/date-range-picker-adapter.js +6 -1
- package/esm/list/list-item/list-item-adapter.js +3 -1
- package/esm/list-dropdown/list-dropdown-constants.d.ts +1 -0
- package/esm/list-dropdown/list-dropdown-utils.js +16 -3
- package/esm/menu/menu-adapter.d.ts +2 -0
- package/esm/menu/menu-adapter.js +3 -0
- package/esm/menu/menu-foundation.js +2 -0
- package/esm/select/core/base-select-adapter.d.ts +0 -2
- package/esm/select/core/base-select-foundation.js +1 -2
- package/esm/select/option/option.d.ts +0 -1
- package/esm/select/option/option.js +0 -5
- package/esm/select/select/select-adapter.d.ts +0 -1
- package/esm/select/select/select-adapter.js +4 -9
- package/esm/select/select/select-foundation.js +0 -1
- package/esm/select/select-dropdown/select-dropdown-adapter.d.ts +0 -1
- package/esm/select/select-dropdown/select-dropdown-adapter.js +0 -11
- package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
- package/esm/stepper/step/step-adapter.d.ts +4 -12
- package/esm/stepper/step/step-adapter.js +34 -35
- package/esm/stepper/step/step-constants.d.ts +1 -0
- package/esm/stepper/step/step-constants.js +2 -1
- package/esm/stepper/step/step-foundation.d.ts +0 -3
- package/esm/stepper/step/step-foundation.js +1 -7
- package/esm/stepper/step/step.d.ts +0 -3
- package/esm/stepper/step/step.js +2 -8
- package/esm/stepper/stepper/stepper-adapter.js +2 -3
- package/esm/stepper/stepper/stepper-foundation.js +14 -10
- package/esm/tabs/tab/tab-adapter.d.ts +1 -3
- package/esm/tabs/tab/tab-adapter.js +13 -14
- package/esm/tabs/tab/tab-constants.d.ts +2 -1
- package/esm/tabs/tab/tab-constants.js +2 -1
- package/esm/tabs/tab/tab-foundation.d.ts +0 -2
- package/esm/tabs/tab/tab-foundation.js +3 -3
- package/esm/tabs/tab/tab.d.ts +0 -1
- package/esm/tabs/tab/tab.js +2 -5
- package/esm/time-picker/time-picker-adapter.d.ts +2 -0
- package/esm/time-picker/time-picker-adapter.js +7 -2
- package/esm/time-picker/time-picker-foundation.js +1 -0
- package/package.json +1 -1
- package/styles/stepper/step/_mixins.scss +12 -1
- package/styles/stepper/step/step.scss +1 -1
- package/styles/tabs/tab/_mixins.scss +3 -7
- package/styles/tabs/tab/tab.scss +4 -0
- package/dist/esm/chunks/chunk.36RT7UOR.js +0 -7
- package/dist/esm/chunks/chunk.36RT7UOR.js.map +0 -7
- package/dist/esm/chunks/chunk.5KU2NSKM.js +0 -12
- package/dist/esm/chunks/chunk.F6DMKNFU.js +0 -29
- package/dist/esm/chunks/chunk.F6DMKNFU.js.map +0 -7
- package/dist/esm/chunks/chunk.HSUOYMJT.js +0 -7
- package/dist/esm/chunks/chunk.HSUOYMJT.js.map +0 -7
- package/dist/esm/chunks/chunk.HVYDNI2O.js +0 -7
- package/dist/esm/chunks/chunk.HVYDNI2O.js.map +0 -7
- package/dist/esm/chunks/chunk.KZJYLYWN.js +0 -7
- package/dist/esm/chunks/chunk.KZJYLYWN.js.map +0 -7
- package/dist/esm/chunks/chunk.LZOAYM6V.js +0 -7
- package/dist/esm/chunks/chunk.LZOAYM6V.js.map +0 -7
- package/dist/esm/chunks/chunk.M5AHW6YM.js +0 -7
- package/dist/esm/chunks/chunk.M5AHW6YM.js.map +0 -7
- package/dist/esm/chunks/chunk.M5QM2CPF.js +0 -7
- package/dist/esm/chunks/chunk.M5QM2CPF.js.map +0 -7
- package/dist/esm/chunks/chunk.MA2P7CG4.js +0 -7
- package/dist/esm/chunks/chunk.MA2P7CG4.js.map +0 -7
- package/dist/esm/chunks/chunk.MSOMQ4HD.js +0 -7
- package/dist/esm/chunks/chunk.MSOMQ4HD.js.map +0 -7
- package/dist/esm/chunks/chunk.POYFRYFF.js +0 -7
- package/dist/esm/chunks/chunk.POYFRYFF.js.map +0 -7
- package/dist/esm/chunks/chunk.QRSFRMBF.js +0 -7
- package/dist/esm/chunks/chunk.QRSFRMBF.js.map +0 -7
- package/dist/esm/chunks/chunk.U7SENURF.js +0 -7
- package/dist/esm/chunks/chunk.U7SENURF.js.map +0 -7
- /package/dist/esm/chunks/{chunk.UUBAUAER.js.map → chunk.3MMDUUTN.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.KZDQFUNT.js.map → chunk.3V2VDOOP.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.Q2PGK4IA.js.map → chunk.4KKMVMPN.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.WLBRU5HI.js.map → chunk.5SM7UG6C.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.LJQO5G5I.js.map → chunk.6DVJ22IK.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.4APGDQHF.js.map → chunk.AFW54X3W.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.KMMOZ2SF.js.map → chunk.C3G25JFG.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.POBCKMFO.js.map → chunk.CYLDP7ML.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.HDHGU4L2.js.map → chunk.E3K6KM57.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.PTEWJ5PZ.js.map → chunk.EQEMCHMB.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.QBST3QSM.js.map → chunk.FEU4FTVQ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.IPQDOSLO.js.map → chunk.J4BGOSAD.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.BQRXAJTH.js.map → chunk.JFAOCIGZ.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.4QVF44G5.js.map → chunk.K57IO236.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.K2O3KSP7.js.map → chunk.KGMCBPGV.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.V5L5DKNF.js.map → chunk.LFBYFJTX.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.USKQFX4N.js.map → chunk.OBBYRQCY.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.5KU2NSKM.js.map → chunk.PSU432SK.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.U5DETNRU.js.map → chunk.QIGNMZRL.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.DNWMURCG.js.map → chunk.RHXQ2GMV.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.OLNY6ZNB.js.map → chunk.TLXWXBQO.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.EPFMWAIO.js.map → chunk.TVWUZYVG.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.32AY5G4D.js.map → chunk.W3DFKTAX.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.ATJJ6NAY.js.map → chunk.WF24FWAT.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.WVU4LCVC.js.map → chunk.XKX2BE6Z.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.ZVHFSAID.js.map → chunk.YVXZ753Q.js.map} +0 -0
- /package/dist/esm/chunks/{chunk.QFMQPAT2.js.map → chunk.Z7Y2RA4P.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 H,b as K,c as U,d as $,e as q}from"./chunk.6ENND42M.js";import{E as z}from"./chunk.LFBYFJTX.js";import{F as B}from"./chunk.KTEM7SW7.js";import{a}from"./chunk.YPZNIYQL.js";import{a as _}from"./chunk.EYGSUZWX.js";import{e as v}from"./chunk.DONAMICM.js";import{e as S}from"./chunk.WCSVKQR2.js";import{a as O}from"./chunk.E3K6KM57.js";import{l as A}from"./chunk.MZLPUI6R.js";import{a as V}from"./chunk.YI4JTY4T.js";import{d as w,l as N}from"./chunk.WHQZNZHW.js";import{a as L}from"./chunk.2KXSGD3S.js";import{b as T}from"./chunk.FVRSGKJD.js";import{e as p}from"./chunk.U6WGJELL.js";import{i as R,j as x}from"./chunk.KYH5GKVI.js";import{a as E}from"./chunk.KTGSZEAG.js";import{a as F,b as M}from"./chunk.DL7NX432.js";import{a as y,e as P,i as D}from"./chunk.LJLEPTLU.js";import{s as k}from"./chunk.4LA6HEA7.js";import{f as g,g as b}from"./chunk.J2M2MXP2.js";import{f as h}from"./chunk.MCIQXNKY.js";var d=`${M}date-range-picker`,u=class{constructor(r){r&&(this.from=r.from,this.to=r.to)}copy(){return new u(this)}},W={FROM:"from",TO:"to",END_VALUE:"end-value"},X={INPUT:"input"},j={CHANGE:`${d}-change`,OPEN:`${d}-open`,CLOSE:`${d}-close`,INPUT:`${d}-input`},n={elementName:d,selectors:X,events:j,observedAttributes:W};var m=class extends ${constructor(t){super(t);this._dropdownIdentifier=`forge-date-range-picker-${this._identifier}`}_initializeInput(){if(this._fromInputElement=this._component.querySelectorAll(n.selectors.INPUT)[0],this._toInputElement=this._component.querySelectorAll(n.selectors.INPUT)[1],!this._fromInputElement||!this._fromInputElement)throw new Error(`The ${n.elementName} requires two inputs`)}_initializeCalendarDropdown(){let t=this._getDefaultTargetElement();this._calendarDropdown=new B(t,this._dropdownIdentifier)}initializeMask(t){var e;(e=this._fromInputMask)==null||e.destroy(),this._fromInputMask=new T(this._fromInputElement,t)}destroyMask(){var t;(t=this._fromInputMask)==null||t.destroy(),this._fromInputMask=void 0}initializeToMask(t){var e;(e=this._toInputMask)==null||e.destroy(),this._toInputMask=new T(this._toInputElement,t)}destroyToMask(){var t;(t=this._toInputMask)==null||t.destroy(),this._toInputMask=void 0}destroy(){super.destroy(),this._destroyToValueChangeListener()}_destroyToValueChangeListener(){typeof this._toValueChangeListener=="function"&&this._toValueChangeListener()}initializeAccessibility(){this._applyToInputs(t=>t.setAttribute("autocomplete","off")),this._applyToInputs(t=>t.setAttribute("autocorrect","off")),this._applyToInputs(t=>t.setAttribute("autocapitalize","off")),this._applyToInputs(t=>t.setAttribute("spellcheck","false")),this._applyToInputs(t=>t.setAttribute("role","combobox")),this._applyToInputs(t=>t.setAttribute("aria-live","assertive")),this._applyToInputs(t=>t.setAttribute("aria-atomic","true")),this._applyToInputs(t=>t.setAttribute("aria-haspopup","true")),this._applyToInputs(t=>t.setAttribute("aria-expanded","false")),this._applyToInputs(t=>t.setAttribute("aria-owns",this._dropdownIdentifier)),this._toInputElement.hasAttribute("aria-label")||this._toInputElement.setAttribute("aria-label","To date"),R(),this._applyToInputs(t=>x(t))}addInputListener(t,e,i){var o;(o=this._fromInputElement)==null||o.addEventListener(t,e,{capture:i})}addToInputListener(t,e,i){var o;(o=this._toInputElement)==null||o.addEventListener(t,e,{capture:i})}removeInputListener(t,e){var i;(i=this._fromInputElement)==null||i.removeEventListener(t,e)}removeToInputListener(t,e){var i;(i=this._toInputElement)==null||i.removeEventListener(t,e)}setInputValueChangedListener(t,e){this._valueChangeListeners.length&&this.destroyValueChangeListener();let i=v(t,this._fromInputElement,"value",e);this._valueChangeListeners.push(i)}setToInputValueChangedListener(t,e){this._destroyToValueChangeListener(),this._toValueChangeListener=v(t,this._toInputElement,"value",e)}hasInputElement(){return!!this._fromInputElement&&!!this._toInputElement}attachCalendar(t,e){super.attachCalendar(t,e),this._fromInputElement.setAttribute("aria-expanded","true")}detachCalendar(){super.detachCalendar(),this._fromInputElement&&(this._fromInputElement.setAttribute("aria-expanded","false"),this._fromInputElement.removeAttribute("aria-activedescendant"))}setActiveDescendant(t){this._fromInputElement.setAttribute("aria-activedescendant",t)}setInputValue(t,e){this._fromInputElement.value!==t&&(this._fromInputElement.value=t,this._fromInputMask&&this._fromInputMask.updateMask(),e&&(this._fromInputElement.dispatchEvent(new Event("change")),this._fromInputElement.dispatchEvent(new Event("input"))))}setToInputValue(t,e){this._toInputElement.value!==t&&(this._toInputElement.value=t,this._toInputMask&&this._toInputMask.updateMask(),e&&(this._toInputElement.dispatchEvent(new Event("change")),this._toInputElement.dispatchEvent(new Event("input"))))}isInputDisabled(){return this._fromInputElement.disabled}isInputFocused(t){if(t&&this._toInputElement===t||this._fromInputElement===t)return!0;let e=k(this._component.ownerDocument);return this._toInputElement===e||this._fromInputElement===e}getInputValue(){return this._fromInputElement.value}getToInputValue(){return this._toInputElement.value}setDisabled(t){this._fromInputElement.disabled=t,this._toInputElement.disabled=t,this._toInputElement.setAttribute("aria-disabled",t.toString()),this._fromInputElement.setAttribute("aria-disabled",t.toString()),this._toggleElement&&(this._toggleElement.setAttribute("aria-disabled",t.toString()),this._toggleElement.hasOwnProperty("disabled")&&(this._toggleElement.disabled=t))}emitInputEvent(t,e){D(this._fromInputElement,t,e)}emitToInputEvent(t,e){D(this._toInputElement,t,e)}_createToggleElement(){return U("date_range")}tryFocusInput(){this._fromInputElement.focus()}tryBlurInput(){this._fromInputElement.blur()}selectInputText(){this._fromInputElement.select()}selectToInputText(){this._toInputElement.select()}_applyToInputs(t){[this._fromInputElement,this._toInputElement].forEach(t)}};var c=class extends q{constructor(t){super(t);this._mode="range";this._from=null;this._to=null;this._toInputListener=e=>this._onToInput(e),this._toInputValueChangedListener=e=>this._onToInputValueChanged(e),this._toInputKeydownListener=e=>this._onInputKeydown(e),this._toInputFocusListener=e=>this._onToInputFocus(),this._toInputBlurListener=e=>this._onToInputBlur(e)}initialize(){super.initialize(),this._setFormattedToInputValue(!0)}_initializeState(){this._applyToMask(),this._from||(this._from=this._coerceDateValue(this._adapter.getInputValue())),this._to||(this._to=this._coerceDateValue(this._adapter.getToInputValue()))}_initializeListeners(){super._initializeListeners(),this._adapter.addToInputListener("keydown",this._toInputKeydownListener),this._adapter.addToInputListener("focus",this._toInputFocusListener),this._adapter.addToInputListener("blur",this._toInputBlurListener)}_initializeValueChangedListeners(){super._initializeValueChangedListeners(),this._adapter.setToInputValueChangedListener(this,this._toInputValueChangedListener)}_setInputChangeListeners(){super._setInputChangeListeners(),this._adapter.addToInputListener("input",this._toInputListener)}_removeInputChangeListeners(){super._removeInputChangeListeners(),this._adapter.removeToInputListener("input",this._toInputListener)}_openCalendar(t){this._formatToInputValue(),super._openCalendar(t);let e=this._getCurrentValue();e!=null&&e.to?this._adapter.goToCalendarDate(new Date(e.to)):e!=null&&e.from&&this._adapter.goToCalendarDate(new Date(e.from))}_emitChangeEvent(t,e){let i=this._getTypedValue(t&&t.from||null),o=this._getTypedValue(t&&t.to||null),l=new u({from:i,to:o});return this._adapter.emitHostEvent(n.events.CHANGE,l,!0,!e)?(this._setValue(this._coerceDateValue(t&&t.from||null)),this._setToValue(this._coerceDateValue(t&&t.to||null)),!0):!1}_emitOpenEvent(){this._adapter.emitHostEvent(n.events.OPEN,void 0,!1)}_emitCloseEvent(){this._adapter.emitHostEvent(n.events.CLOSE,void 0,!1)}_onToday(){let t=new Date,e=this._open?new a({from:this._from||t,to:this._to||void 0}):new a({from:t});!this._isDateRangeAcceptable(e)||(this.value=e,this._onDateSelected({date:t,range:e,selected:!0,type:"date"}),this._adapter.setCalendarActiveDate(t))}_onClear(){this._onDateSelected({date:null,range:new a,selected:!1,type:"date"}),this._closeCalendar(!0)}_getCurrentValue(){return this._value}_applyToMask(){this._masked?this._initializeToMask():(this._adapter.destroyToMask(),this._formatToInputValue())}_formatToInputValue(){let t=this._adapter.getToInputValue();if(t){let e=this._parseDateString(t);if(b(e)&&this._isDateValueAcceptable(e)){let i=this._formatDate(e);i&&this._adapter.setToInputValue(i,this._notifyInputValueChanges)}else this._allowInvalidDate||this._adapter.setToInputValue("",this._notifyInputValueChanges)}}_setFormattedInputValue(t){let e=this._formatDate(this._from);!e&&!this._allowInvalidDate&&(e=""),this._adapter.setInputValue(e,t?!1:this._notifyInputValueChanges)}_setFormattedToInputValue(t){let e=this._formatDate(this._to);!e&&!this._allowInvalidDate&&(e=""),this._adapter.setToInputValue(e,t?!1:this._notifyInputValueChanges)}_isDateRangeAcceptable(t){if(!(t!=null&&t.to))return!0;let e=()=>this._isDateValueAcceptable(t.from),i=()=>this._isDateValueAcceptable(t.to),o=()=>(t==null?void 0:t.from)&&(t==null?void 0:t.to)?t.from.getTime()<=t.to.getTime():!0;return e()&&i()&&o()}_setValue(t){this._isDateValueAcceptable(t)&&(this._from=t||null,this._value?this._value.from=this._from:this._value={from:this._from,to:this._to})}_setToValue(t){this._isDateValueAcceptable(t)&&(this._to=t||null,this._value?this._value.to=this._to:this._value={from:this._from,to:this._to})}_onDateSelected(t){let e=t.range;if(t.rangeSelectionState==="to"&&this._closeCalendar(!0),!this._emitChangeEvent(e!=null?e:null))return;let i=this._formatDate(e&&e.from||null),o=this._formatDate(e&&e.to||null);this._adapter.setInputValue(i,this._notifyInputValueChanges),this._adapter.setToInputValue(o,this._notifyInputValueChanges),this._formatInputValue(),this._formatToInputValue(),this._from=e&&e.from||null,this._to=e&&e.to||null,V.isMobile||(o?this._adapter.selectToInputText():this._adapter.selectInputText())}_applyMin(){this._from&&!this._isDateValueAcceptable(this._from)&&(this._emitChangeEvent(new a({to:this._to||void 0}),!0),this._setFormattedInputValue()),this._to&&!this._isDateValueAcceptable(this._to)&&(this._emitChangeEvent(new a({from:this._from||void 0}),!0),this._setFormattedToInputValue()),super._applyMin()}_applyMax(){this._from&&!this._isDateValueAcceptable(this._from)&&(this._emitChangeEvent(new a({to:this._to||void 0}),!0),this._setFormattedInputValue()),this._to&&!this._isDateValueAcceptable(this._to)&&(this._emitChangeEvent(new a({from:this._from||void 0}),!0),this._setFormattedToInputValue()),super._applyMax()}_initializeToMask(){if(!this._masked)return;let t={showMaskFormat:this._showMaskFormat&&this._adapter.isInputFocused(),pattern:this._maskFormat,onChange:e=>this._handleToInput(e)};this._prepareMaskCallback&&(t.prepareCallback=(e,i,o,l)=>this._prepareMaskCallback.call(null,e,i,o,l)),this._adapter.initializeToMask(t)}_applyDisabledDates(){this._from&&!this._isDateValueAcceptable(this._from)&&(this._emitChangeEvent(new a({to:this._to||void 0}),!0),this._setFormattedInputValue()),this._to&&!this._isDateValueAcceptable(this._to)&&(this._emitChangeEvent(new a({from:this._from||void 0}),!0),this._setFormattedToInputValue())}_applyDisabledDaysOfWeek(){this._from&&!this._isDateValueAcceptable(this._from)&&(this._emitChangeEvent(null,!0),this._setFormattedInputValue()),this._to&&!this._isDateValueAcceptable(this._to)&&(this._emitChangeEvent(null,!0),this._setFormattedToInputValue())}_onToInput(t){this._handleInput(this._adapter.getInputValue())}_handleInput(t){let e=this._getSanitizedDateString(t),i=this._coerceDateValue(e);this._masked&&this._adapter.emitInputEvent(n.events.INPUT,e),!p(i,this._from)&&this._isDateValueAcceptable(i)&&this._emitChangeEvent(new a({from:i||void 0,to:this._to||void 0}))}_handleToInput(t){let e=this._getSanitizedDateString(t),i=this._coerceDateValue(e);this._masked&&this._adapter.emitToInputEvent(n.events.INPUT,e),!p(i,this._to)&&this._isDateValueAcceptable(i)&&this._emitChangeEvent(new a({from:this._from||void 0,to:i||void 0}))}_onToInputFocus(){this.masked&&this._showMaskFormat&&(this._initializeMask(),this._initializeToMask()),this._adapter.selectToInputText()}_onToInputBlur(t){this._masked&&!this._adapter.isInputFocused(t.relatedTarget)&&(this._initializeMask(),this._initializeToMask()),this._formatToInputValue(),this._open&&this._closeCalendar(!0)}_onInputFocus(t){this.masked&&this._showMaskFormat&&(this._initializeMask(),this._initializeToMask()),this._adapter.selectInputText()}_onInputBlur(t){this.masked&&!this._adapter.isInputFocused(t.relatedTarget)&&(this._initializeMask(),this._initializeToMask()),this._formatInputValue(),this._open&&!this._adapter.isInputFocused(t.relatedTarget)&&this._closeCalendar(!0)}_onInputValueChanged(t){if(this._masked)return;let e=this._getSanitizedDateString(t),i=this._coerceDateValue(e);p(i,this._from)||(this.from=i,this._emitChangeEvent(new a({from:i||void 0,to:this._to||void 0})))}_onToInputValueChanged(t){if(this._masked)return;let e=this._getSanitizedDateString(t),i=this._coerceDateValue(e);p(i,this._to)||(this.to=i,this._emitChangeEvent(new a({from:this._from||void 0,to:i||void 0})))}get value(){return{from:this.from,to:this.to}}set value(t){t||(t={from:null,to:null}),t.from===void 0&&(t.from=null),t.to===void 0&&(t.to=null),this.from=t.from,this.to=t.to,this._value={from:this.from,to:this.to}}get from(){let t=this._getTypedValue(this._from);return t?g(t)?new Date(t.getTime()):t:null}set from(t){this._from!==t&&(this._setValue(this._coerceDateValue(t)),this._isInitialized&&(this._setFormattedInputValue(),this._open&&this._adapter.setCalendarValue(new a({from:this._coerceDateValue(t)||void 0,to:this._coerceDateValue(this._to)||void 0}))))}get to(){let t=this._getTypedValue(this._to);return t?g(t)?new Date(t.getTime()):t:null}set to(t){this._to!==t&&(this._setToValue(this._coerceDateValue(t)),this._isInitialized&&(this._setFormattedToInputValue(),this._open&&this._adapter.setCalendarValue(new a({to:this._coerceDateValue(t)||void 0,from:this._coerceDateValue(this._from)||void 0}))))}};var J="<template><slot></slot></template>",Q=":host{display:block}:host([hidden]){display:none}",s=class extends K{constructor(){super();w.define(A),P(this,J,Q),this._foundation=new c(new m(this))}static get observedAttributes(){return[...Object.values(H.observedAttributes),n.observedAttributes.FROM,n.observedAttributes.TO]}attributeChangedCallback(t,e,i){switch(t){case n.observedAttributes.FROM:this.from=i;return;case n.observedAttributes.TO:this.to=i;return}super.attributeChangedCallback(t,e,i)}};h([E()],s.prototype,"from",2),h([E()],s.prototype,"to",2),s=h([F({name:n.elementName,dependencies:[S,z,O,N]})],s);var G=class extends L{constructor(t){super(t)}_build(){let t=document.createElement(n.elementName);return this._attachTextField(t),t}get fromInput(){return this._textField.querySelector(`input[${_.attributes.MULTI_INPUT}-0]`)}get toInput(){return this._textField.querySelector(`input[${_.attributes.MULTI_INPUT}-1]`)}get textField(){return this._textField}get value(){return this._element.value}set value(t){this._element.value=t}get disabled(){return this._element.disabled}set disabled(t){this._element.disabled=t}get invalid(){return this._textField.invalid||!1}set invalid(t){this._textField.invalid=t}onChange(t){this._element.addEventListener(n.events.CHANGE,e=>t(e.detail))}onFocus(t){this._element.addEventListener("focusin",e=>{!this._element.contains(e.relatedTarget)&&t(e)})}onBlur(t){this._element.addEventListener("focusout",e=>{!this._element.contains(e.relatedTarget)&&t(e)})}_attachTextField(t){var i,o,l,I,C;this._textField=document.createElement(_.elementName),(i=this._config.options)!=null&&i.required&&(this._textField.required=!0),(o=this._config.options)!=null&&o.density&&(this._textField.density=this._config.options.density),this._fromInput=document.createElement("input"),this._fromInput.type="text",this._fromInput.placeholder=((l=this._config.options)==null?void 0:l.fromPlaceholder)||"From",this._textField.appendChild(this._fromInput),this._toInput=document.createElement("input"),this._toInput.type="text",this._toInput.placeholder=((I=this._config.options)==null?void 0:I.toPlaceholder)||"To",this._textField.appendChild(this._toInput);let e=document.createElement("label");e.textContent=((C=this._config.options)==null?void 0:C.label)||"Choose date range",this._textField.appendChild(e),t.appendChild(this._textField)}};function Wt(){y(s)}export{u as a,n as b,m as c,c as d,s as e,G as f,Wt as g};
|
|
7
|
+
//# sourceMappingURL=chunk.AH4YGLZ4.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/date-range-picker/date-range-picker-constants.ts", "../../src/date-range-picker/date-range-picker-adapter.ts", "../../src/date-range-picker/date-range-picker-foundation.ts", "../../src/date-range-picker/date-range-picker.ts", "../../src/date-range-picker/date-range-picker-component-delegate.ts", "../../src/date-range-picker/index.ts"],
|
|
4
|
+
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}date-range-picker`;\n\nexport class DatePickerRange implements IDatePickerRange {\n public from?: Date | string | null;\n public to?: Date | string | null;\n constructor(range?: IDatePickerRange) {\n if (range) {\n this.from = range.from;\n this.to = range.to;\n }\n }\n\n public copy(): DatePickerRange {\n return new DatePickerRange(this);\n }\n}\n\nexport interface IDatePickerRange {\n from?: Date | string | null;\n to?: Date | string | null;\n}\n\nconst observedAttributes = {\n FROM: 'from',\n TO: 'to',\n END_VALUE: 'end-value'\n};\n\nconst selectors = {\n INPUT: 'input'\n};\n\nconst events = {\n CHANGE: `${elementName}-change`,\n OPEN: `${elementName}-open`,\n CLOSE: `${elementName}-close`,\n INPUT: `${elementName}-input`\n};\n\nexport const DATE_RANGE_PICKER_CONSTANTS = {\n elementName,\n selectors,\n events,\n observedAttributes\n};\n\n\nexport interface IDateRangePickerChangeEventData extends DatePickerRange {}\n", "import { emitEvent, listenOwnProperty, getActiveElement, randomChars } from '@tylertech/forge-core';\nimport { CalendarDropdown, ICalendarDropdownPopupConfig } from '../calendar/calendar-dropdown';\nimport { DateInputMask, IDateInputMaskOptions, setAriaControls, tryCreateAriaControlsPlaceholder } from '../core';\nimport { BaseDatePickerAdapter, IBaseDatePickerAdapter } from '../date-picker/base/base-date-picker-adapter';\nimport { IDatePickerCalendarDropdownConfig } from '../date-picker/base/base-date-picker-constants';\nimport { createToggleElement } from '../date-picker/base/base-date-picker-utils';\nimport { DateRangePickerComponent, IDateRangePickerComponent } from './date-range-picker';\nimport { DATE_RANGE_PICKER_CONSTANTS } from './date-range-picker-constants';\n\nexport interface IDateRangePickerAdapter extends IBaseDatePickerAdapter {\n initializeToMask(toOptions: IDateInputMaskOptions): void;\n addToInputListener(type: string, listener: (event: Event) => void): void;\n removeToInputListener(type: string, listener: (event: Event) => void): void;\n setToInputValueChangedListener(context: any, listener: (value: any) => void): void;\n getToInputValue(): string;\n setToInputValue(value: string, emitEvents: boolean): void;\n emitInputEvent(type: string, data?: any): void;\n emitToInputEvent(type: string, data?: any): void;\n tryFocusInput(): void;\n tryBlurInput(): void;\n selectToInputText(): void;\n destroyToMask(): void;\n}\n\nexport class DateRangePickerAdapter extends BaseDatePickerAdapter<IDateRangePickerComponent> implements IDateRangePickerAdapter {\n private _fromInputElement: HTMLInputElement;\n private _toInputElement: HTMLInputElement;\n private _toInputMask: DateInputMask | undefined;\n private _fromInputMask: DateInputMask | undefined;\n private _dropdownIdentifier: string;\n private _toValueChangeListener: (() => void) | undefined;\n\n constructor(component: DateRangePickerComponent) {\n super(component);\n this._dropdownIdentifier = `forge-date-range-picker-${this._identifier}`;\n }\n\n protected _initializeInput(): void {\n this._fromInputElement = this._component.querySelectorAll(DATE_RANGE_PICKER_CONSTANTS.selectors.INPUT)[0] as HTMLInputElement;\n this._toInputElement = this._component.querySelectorAll(DATE_RANGE_PICKER_CONSTANTS.selectors.INPUT)[1] as HTMLInputElement;\n\n if (!this._fromInputElement || !this._fromInputElement) {\n throw new Error(`The ${DATE_RANGE_PICKER_CONSTANTS.elementName} requires two inputs`);\n }\n }\n\n protected _initializeCalendarDropdown(): void {\n const targetElement = this._getDefaultTargetElement();\n this._calendarDropdown = new CalendarDropdown(targetElement, this._dropdownIdentifier);\n }\n\n public override initializeMask(fromOptions: IDateInputMaskOptions): void {\n this._fromInputMask?.destroy();\n this._fromInputMask = new DateInputMask(this._fromInputElement, fromOptions);\n }\n\n public override destroyMask(): void {\n this._fromInputMask?.destroy();\n this._fromInputMask = undefined;\n }\n\n public initializeToMask(toOptions: IDateInputMaskOptions): void {\n this._toInputMask?.destroy();\n this._toInputMask = new DateInputMask(this._toInputElement, toOptions);\n }\n\n public destroyToMask(): void {\n this._toInputMask?.destroy();\n this._toInputMask = undefined;\n }\n\n public override destroy(): void {\n super.destroy();\n this._destroyToValueChangeListener();\n }\n\n private _destroyToValueChangeListener(): void {\n if (typeof this._toValueChangeListener === 'function') {\n this._toValueChangeListener();\n }\n }\n\n public initializeAccessibility(): void {\n this._applyToInputs(input => input.setAttribute('autocomplete', 'off'));\n this._applyToInputs(input => input.setAttribute('autocorrect', 'off'));\n this._applyToInputs(input => input.setAttribute('autocapitalize', 'off'));\n this._applyToInputs(input => input.setAttribute('spellcheck', 'false'));\n this._applyToInputs(input => input.setAttribute('role', 'combobox'));\n this._applyToInputs(input => input.setAttribute('aria-live', 'assertive'));\n this._applyToInputs(input => input.setAttribute('aria-atomic', 'true'));\n this._applyToInputs(input => input.setAttribute('aria-haspopup', 'true'));\n this._applyToInputs(input => input.setAttribute('aria-expanded', 'false'));\n this._applyToInputs(input => input.setAttribute('aria-owns', this._dropdownIdentifier));\n if (!this._toInputElement.hasAttribute('aria-label')) {\n this._toInputElement.setAttribute('aria-label', 'To date');\n }\n tryCreateAriaControlsPlaceholder();\n this._applyToInputs(input => setAriaControls(input));\n }\n\n public addInputListener(type: string, listener: (event: Event) => void, capture?: boolean): void {\n this._fromInputElement?.addEventListener(type, listener, { capture });\n }\n\n public addToInputListener(type: string, listener: (event: Event) => void, capture?: boolean): void {\n this._toInputElement?.addEventListener(type, listener, { capture });\n }\n\n public removeInputListener(type: string, listener: (event: Event) => void): void {\n this._fromInputElement?.removeEventListener(type, listener);\n }\n \n public removeToInputListener(type: string, listener: (event: Event) => void): void {\n this._toInputElement?.removeEventListener(type, listener);\n }\n\n public setInputValueChangedListener(context: any, listener: (value: any) => void): void {\n if (this._valueChangeListeners.length) {\n this.destroyValueChangeListener();\n }\n const destroyListenerCb = listenOwnProperty(context, this._fromInputElement, 'value', listener);\n this._valueChangeListeners.push(destroyListenerCb);\n }\n\n public setToInputValueChangedListener(context: any, listener: (value: any) => void): void {\n this._destroyToValueChangeListener();\n this._toValueChangeListener = listenOwnProperty(context, this._toInputElement, 'value', listener);\n }\n\n public hasInputElement(): boolean {\n return !!this._fromInputElement && !!this._toInputElement;\n }\n\n public override attachCalendar(calendarConfig: IDatePickerCalendarDropdownConfig<Date | null>, dropdownConfig?: ICalendarDropdownPopupConfig): void {\n super.attachCalendar(calendarConfig, dropdownConfig);\n this._fromInputElement.setAttribute('aria-expanded', 'true');\n }\n\n public override detachCalendar(): void {\n super.detachCalendar();\n if (this._fromInputElement) {\n this._fromInputElement.setAttribute('aria-expanded', 'false');\n this._fromInputElement.removeAttribute('aria-activedescendant');\n }\n }\n\n public setActiveDescendant(id: string): void {\n this._fromInputElement.setAttribute('aria-activedescendant', id);\n }\n\n public setInputValue(value: string, emitEvents: boolean): void {\n if (this._fromInputElement.value === value) {\n return;\n }\n\n this._fromInputElement.value = value;\n \n if (this._fromInputMask) {\n this._fromInputMask.updateMask();\n }\n\n if (emitEvents) {\n this._fromInputElement.dispatchEvent(new Event('change'));\n this._fromInputElement.dispatchEvent(new Event('input'));;\n }\n }\n\n public setToInputValue(value: string, emitEvents: boolean): void {\n if (this._toInputElement.value === value) {\n return;\n }\n\n this._toInputElement.value = value;\n \n if (this._toInputMask) {\n this._toInputMask.updateMask();\n }\n \n if (emitEvents) {\n this._toInputElement.dispatchEvent(new Event('change'));\n this._toInputElement.dispatchEvent(new Event('input'));\n }\n }\n\n public isInputDisabled(): boolean {\n return this._fromInputElement.disabled;\n }\n\n public isInputFocused(target?: EventTarget | null): boolean {\n if (target && this._toInputElement === target || this._fromInputElement === target) {\n return true;\n }\n const activeEl = getActiveElement(this._component.ownerDocument);\n return this._toInputElement === activeEl || this._fromInputElement === activeEl;\n }\n\n public getInputValue(): string {\n return this._fromInputElement.value;\n }\n\n public getToInputValue(): string {\n return this._toInputElement.value;\n }\n\n public setDisabled(isDisabled: boolean): void {\n this._fromInputElement.disabled = isDisabled;\n this._toInputElement.disabled = isDisabled;\n\n this._toInputElement.setAttribute('aria-disabled', isDisabled.toString());\n this._fromInputElement.setAttribute('aria-disabled', isDisabled.toString());\n\n if (this._toggleElement) {\n this._toggleElement.setAttribute('aria-disabled', isDisabled.toString());\n if (this._toggleElement.hasOwnProperty('disabled')) {\n (this._toggleElement as HTMLButtonElement).disabled = isDisabled;\n }\n }\n }\n\n public emitInputEvent(type: string, data?: any): void {\n emitEvent(this._fromInputElement, type, data);\n }\n\n public emitToInputEvent(type: string, data?: any): void {\n emitEvent(this._toInputElement, type, data);\n }\n\n protected override _createToggleElement(): HTMLElement {\n return createToggleElement('date_range');\n }\n\n public tryFocusInput(): void {\n this._fromInputElement.focus();\n }\n\n public tryBlurInput(): void {\n this._fromInputElement.blur();\n }\n\n public selectInputText(): void {\n this._fromInputElement.select();\n }\n\n public selectToInputText(): void {\n this._toInputElement.select();\n }\n\n private _applyToInputs(action: (input: HTMLInputElement) => void): void {\n [this._fromInputElement, this._toInputElement].forEach(action);\n }\n}\n", "import { isDate, isValidDate, Platform } from '@tylertech/forge-core';\nimport { CalendarMode, DateRange, ICalendarDateSelectEventData } from '../calendar';\nimport { isSameDate } from '../core/utils/date-utils';\nimport { IDateInputMaskOptions } from '../core/mask/date-input-mask';\nimport { BaseDatePickerFoundation, IBaseDatePickerFoundation } from '../date-picker/base/base-date-picker-foundation';\nimport { IDateRangePickerAdapter } from './date-range-picker-adapter';\nimport { DatePickerRange, DATE_RANGE_PICKER_CONSTANTS, IDatePickerRange, IDateRangePickerChangeEventData } from './date-range-picker-constants';\n\nexport interface IDateRangePickerFoundation extends IBaseDatePickerFoundation<IDatePickerRange> {\n from: Date | string | null | undefined;\n to: Date | string | null | undefined;\n}\n\nexport class DateRangePickerFoundation extends BaseDatePickerFoundation<IDateRangePickerAdapter, IDatePickerRange> implements IDateRangePickerFoundation {\n protected _mode: CalendarMode = 'range';\n private _from?: Date | null = null;\n private _to?: Date | null = null;\n private _toInputListener: (evt: Event) => void;\n private _toInputKeydownListener: (evt: KeyboardEvent) => void;\n private _toInputFocusListener: (evt: FocusEvent) => void;\n private _toInputBlurListener: (evt: FocusEvent) => void;\n private _toInputValueChangedListener: (value: string) => void;\n\n constructor(adapter: IDateRangePickerAdapter) {\n super(adapter);\n this._toInputListener = evt => this._onToInput(evt);\n this._toInputValueChangedListener = value => this._onToInputValueChanged(value);\n this._toInputKeydownListener = evt => this._onInputKeydown(evt);\n this._toInputFocusListener = evt => this._onToInputFocus();\n this._toInputBlurListener = evt => this._onToInputBlur(evt);\n }\n\n public override initialize(): void {\n super.initialize();\n this._setFormattedToInputValue(true);\n }\n\n protected _initializeState(): void {\n this._applyToMask();\n\n if (!this._from) {\n this._from = this._coerceDateValue(this._adapter.getInputValue());\n }\n if (!this._to) {\n this._to = this._coerceDateValue(this._adapter.getToInputValue());\n }\n }\n\n protected override _initializeListeners(): void {\n super._initializeListeners();\n this._adapter.addToInputListener('keydown', this._toInputKeydownListener);\n this._adapter.addToInputListener('focus', this._toInputFocusListener);\n this._adapter.addToInputListener('blur', this._toInputBlurListener);\n }\n\n protected override _initializeValueChangedListeners(): void {\n super._initializeValueChangedListeners();\n this._adapter.setToInputValueChangedListener(this, this._toInputValueChangedListener);\n }\n\n protected override _setInputChangeListeners(): void {\n super._setInputChangeListeners();\n this._adapter.addToInputListener('input', this._toInputListener);\n }\n\n protected override _removeInputChangeListeners(): void {\n super._removeInputChangeListeners();\n this._adapter.removeToInputListener('input', this._toInputListener);\n }\n\n protected override _openCalendar(emitOpenEvent?: boolean): void {\n this._formatToInputValue();\n super._openCalendar(emitOpenEvent);\n\n const currentValue = this._getCurrentValue();\n if (!!currentValue?.to) {\n this._adapter.goToCalendarDate(new Date(currentValue.to));\n } else if (!!currentValue?.from) {\n this._adapter.goToCalendarDate(new Date(currentValue.from));\n }\n }\n\n protected _emitChangeEvent(value: DateRange | null | undefined, force?: boolean): boolean {\n const typedStartValue = this._getTypedValue((value && value.from) || null);\n const typedEndValue = this._getTypedValue((value && value.to) || null);\n const detail: IDateRangePickerChangeEventData = new DatePickerRange({ from: typedStartValue, to: typedEndValue });\n const wasCancelled = !this._adapter.emitHostEvent(DATE_RANGE_PICKER_CONSTANTS.events.CHANGE, detail, true, !force);\n if (!wasCancelled) {\n this._setValue(this._coerceDateValue((value && value.from) || null));\n this._setToValue(this._coerceDateValue((value && value.to) || null));\n return true;\n }\n return false;\n }\n\n protected _emitOpenEvent(): void {\n this._adapter.emitHostEvent(DATE_RANGE_PICKER_CONSTANTS.events.OPEN, undefined, false);\n }\n\n protected _emitCloseEvent(): void {\n this._adapter.emitHostEvent(DATE_RANGE_PICKER_CONSTANTS.events.CLOSE, undefined, false);\n }\n \n protected _onToday(): void {\n const today = new Date();\n const range = this._open ? new DateRange({ from: this._from || today, to: this._to || undefined }) : new DateRange({ from: today });\n if (!this._isDateRangeAcceptable(range)) {\n return;\n }\n this.value = range;\n this._onDateSelected({ date: today, range, selected: true, type: 'date' });\n this._adapter.setCalendarActiveDate(today);\n }\n\n protected _onClear(): void {\n this._onDateSelected({ date: null, range: new DateRange(), selected: false, type: 'date' });\n this._closeCalendar(true);\n }\n\n protected _getCurrentValue(): IDatePickerRange | null | undefined {\n return this._value;\n }\n\n private _applyToMask(): void {\n if (this._masked) {\n this._initializeToMask();\n } else {\n this._adapter.destroyToMask();\n this._formatToInputValue();\n }\n }\n\n private _formatToInputValue(): void {\n const inputValue = this._adapter.getToInputValue();\n if (inputValue) {\n const parsedDate = this._parseDateString(inputValue);\n if (isValidDate(parsedDate) && this._isDateValueAcceptable(parsedDate)) {\n const formattedDate = this._formatDate(parsedDate);\n if (formattedDate) {\n this._adapter.setToInputValue(formattedDate, this._notifyInputValueChanges);\n }\n } else {\n if (!this._allowInvalidDate) {\n this._adapter.setToInputValue('', this._notifyInputValueChanges);\n }\n }\n }\n }\n\n protected _setFormattedInputValue(suppressValueChanges?: boolean): void {\n let formattedDate = this._formatDate(this._from);\n if (!formattedDate && !this._allowInvalidDate) {\n formattedDate = '';\n }\n this._adapter.setInputValue(formattedDate, suppressValueChanges ? false : this._notifyInputValueChanges);\n }\n\n private _setFormattedToInputValue(suppressValueChanges?: boolean): void {\n let formattedDate = this._formatDate(this._to);\n if (!formattedDate && !this._allowInvalidDate) {\n formattedDate = '';\n }\n this._adapter.setToInputValue(formattedDate, suppressValueChanges ? false : this._notifyInputValueChanges);\n }\n\n protected _isDateRangeAcceptable(value?: DateRange | null | undefined): boolean {\n if (!value?.to) {\n return true;\n }\n\n const passesMinDate = (): boolean => this._isDateValueAcceptable(value.from);\n const passesMaxDate = (): boolean => this._isDateValueAcceptable(value.to);\n const passesDateRange = (): boolean => value?.from && value?.to ? value.from.getTime() <= value.to.getTime() : true;\n\n return passesMinDate() && passesMaxDate() && passesDateRange();\n }\n\n protected _setValue(value: Date | null | undefined): void {\n if (this._isDateValueAcceptable(value)) {\n this._from = value || null;\n if (!this._value) {\n this._value = { from: this._from, to: this._to };\n } else {\n this._value.from = this._from;\n }\n }\n }\n\n private _setToValue(value: Date | null | undefined): void {\n if (this._isDateValueAcceptable(value)) {\n this._to = value || null;\n if (!this._value) {\n this._value = { from: this._from, to: this._to };\n } else {\n this._value.to = this._to;\n }\n }\n }\n\n protected _onDateSelected(event: ICalendarDateSelectEventData): void {\n const value = event.range;\n\n if (event.rangeSelectionState === 'to') {\n this._closeCalendar(true);\n }\n\n if (!this._emitChangeEvent(value ?? null)) {\n return;\n }\n\n const formattedFromValue = this._formatDate((value && value.from) || null);\n const formattedToValue = this._formatDate((value && value.to) || null);\n this._adapter.setInputValue(formattedFromValue, this._notifyInputValueChanges);\n this._adapter.setToInputValue(formattedToValue, this._notifyInputValueChanges);\n this._formatInputValue();\n this._formatToInputValue();\n\n this._from = (value && value.from) || null;\n this._to = (value && value.to) || null;\n\n if (!Platform.isMobile) {\n if (formattedToValue) {\n this._adapter.selectToInputText();\n } else {\n this._adapter.selectInputText();\n }\n }\n }\n\n protected override _applyMin(): void {\n if (this._from && !this._isDateValueAcceptable(this._from)) {\n this._emitChangeEvent(new DateRange({ to: this._to || undefined }), true);\n this._setFormattedInputValue();\n }\n if (this._to && !this._isDateValueAcceptable(this._to)) {\n this._emitChangeEvent(new DateRange({ from: this._from || undefined }), true);\n this._setFormattedToInputValue();\n }\n super._applyMin();\n }\n\n protected override _applyMax(): void {\n if (this._from && !this._isDateValueAcceptable(this._from)) {\n this._emitChangeEvent(new DateRange({ to: this._to || undefined }), true);\n this._setFormattedInputValue();\n }\n if (this._to && !this._isDateValueAcceptable(this._to)) {\n this._emitChangeEvent(new DateRange({ from: this._from || undefined }), true);\n this._setFormattedToInputValue();\n }\n super._applyMax();\n }\n\n protected _initializeToMask(): void {\n if (!this._masked) {\n return;\n }\n\n const options: IDateInputMaskOptions = {\n showMaskFormat: this._showMaskFormat && this._adapter.isInputFocused(),\n pattern: this._maskFormat,\n onChange: (value: string) => this._handleToInput(value)\n };\n\n if (this._prepareMaskCallback) {\n options.prepareCallback = (value, masked, flags, maskInstance) => {\n return this._prepareMaskCallback.call(null, value, masked, flags, maskInstance);\n };\n }\n\n this._adapter.initializeToMask(options);\n }\n\n protected _applyDisabledDates(): void {\n if (this._from && !this._isDateValueAcceptable(this._from)) {\n this._emitChangeEvent(new DateRange({ to: this._to || undefined }), true);\n this._setFormattedInputValue();\n }\n if (this._to && !this._isDateValueAcceptable(this._to)) {\n this._emitChangeEvent(new DateRange({ from: this._from || undefined }), true);\n this._setFormattedToInputValue();\n }\n }\n\n protected _applyDisabledDaysOfWeek(): void {\n if (this._from && !this._isDateValueAcceptable(this._from)) {\n this._emitChangeEvent(null, true);\n this._setFormattedInputValue();\n }\n if (this._to && !this._isDateValueAcceptable(this._to)) {\n this._emitChangeEvent(null, true);\n this._setFormattedToInputValue();\n }\n }\n\n private _onToInput(evt: Event): void {\n this._handleInput(this._adapter.getInputValue());\n }\n\n protected _handleInput(value: string): void {\n const sanitizedValue = this._getSanitizedDateString(value);\n const date = this._coerceDateValue(sanitizedValue);\n if (this._masked) {\n this._adapter.emitInputEvent(DATE_RANGE_PICKER_CONSTANTS.events.INPUT, sanitizedValue);\n }\n if (!isSameDate(date, this._from) && this._isDateValueAcceptable(date)) {\n this._emitChangeEvent(new DateRange({ from: date || undefined, to: this._to || undefined }));\n }\n }\n\n private _handleToInput(value: string): void {\n const sanitizedValue = this._getSanitizedDateString(value);\n const date = this._coerceDateValue(sanitizedValue);\n if (this._masked) {\n this._adapter.emitToInputEvent(DATE_RANGE_PICKER_CONSTANTS.events.INPUT, sanitizedValue);\n }\n if (!isSameDate(date, this._to) && this._isDateValueAcceptable(date)) {\n this._emitChangeEvent(new DateRange({ from: this._from || undefined, to: date || undefined }));\n }\n }\n\n private _onToInputFocus(): void {\n if (this.masked && this._showMaskFormat) {\n this._initializeMask();\n this._initializeToMask();\n }\n this._adapter.selectToInputText();\n }\n\n private _onToInputBlur(evt: FocusEvent): void {\n if (this._masked && !this._adapter.isInputFocused(evt.relatedTarget)) {\n this._initializeMask();\n this._initializeToMask();\n }\n\n this._formatToInputValue();\n\n if (this._open) {\n this._closeCalendar(true);\n }\n }\n\n protected override _onInputFocus(evt: FocusEvent): void {\n if (this.masked && this._showMaskFormat) {\n this._initializeMask();\n this._initializeToMask();\n }\n this._adapter.selectInputText();\n }\n\n protected override _onInputBlur(evt: FocusEvent): void {\n if (this.masked && !this._adapter.isInputFocused(evt.relatedTarget)) {\n this._initializeMask();\n this._initializeToMask();\n }\n\n this._formatInputValue();\n\n if (this._open && !this._adapter.isInputFocused(evt.relatedTarget)) {\n this._closeCalendar(true);\n }\n }\n\n protected _onInputValueChanged(value: string): void {\n if (this._masked) {\n return;\n }\n const sanitizedValue = this._getSanitizedDateString(value);\n const date = this._coerceDateValue(sanitizedValue);\n if (!isSameDate(date, this._from)) {\n this.from = date;\n this._emitChangeEvent(new DateRange({ from: date || undefined, to: this._to || undefined }));\n }\n }\n\n private _onToInputValueChanged(value: string): void {\n if (this._masked) {\n return;\n }\n const sanitizedValue = this._getSanitizedDateString(value);\n const date = this._coerceDateValue(sanitizedValue);\n if (!isSameDate(date, this._to)) {\n this.to = date;\n this._emitChangeEvent(new DateRange({ from: this._from || undefined, to: date || undefined }));\n }\n }\n\n public get value(): IDatePickerRange | null | undefined {\n return { from: this.from, to: this.to };\n }\n public set value(value: IDatePickerRange | null | undefined) {\n if (!value) {\n value = { from: null, to: null };\n }\n\n if (value.from === undefined) {\n value.from = null;\n }\n\n if (value.to === undefined) {\n value.to = null;\n }\n\n this.from = value.from;\n this.to = value.to;\n\n this._value = { from: this.from, to: this.to };\n }\n\n public get from(): Date | string | null | undefined {\n const date = this._getTypedValue(this._from);\n\n if (!date) {\n return null;\n }\n\n if (isDate(date)) {\n return new Date(date.getTime());\n }\n\n return date;\n }\n public set from(value: Date | string | null | undefined) {\n if (this._from !== value) {\n this._setValue(this._coerceDateValue(value));\n if (this._isInitialized) {\n this._setFormattedInputValue();\n if (this._open) {\n this._adapter.setCalendarValue(new DateRange({ from: this._coerceDateValue(value) || undefined, to: this._coerceDateValue(this._to) || undefined }));\n }\n }\n }\n }\n\n public get to(): Date | string | null | undefined {\n const date = this._getTypedValue(this._to);\n\n if (!date) {\n return null;\n }\n\n if (isDate(date)) {\n return new Date(date.getTime());\n }\n\n return date;\n }\n public set to(value: Date | string | null | undefined) {\n if (this._to !== value) {\n this._setToValue(this._coerceDateValue(value));\n if (this._isInitialized) {\n this._setFormattedToInputValue();\n if (this._open) {\n this._adapter.setCalendarValue(new DateRange({ to: this._coerceDateValue(value) || undefined, from: this._coerceDateValue(this._from) || undefined }));\n }\n }\n }\n }\n}\n", "import { attachShadowTemplate, CustomElement, FoundationProperty } from '@tylertech/forge-core';\nimport { tylIconDateRange } from '@tylertech/tyler-icons/standard';\nimport { CalendarComponent } from '../calendar';\nimport { BaseDatePickerComponent, IBaseDatePickerComponent } from '../date-picker/base/base-date-picker';\nimport { BASE_DATE_PICKER_CONSTANTS } from '../date-picker/base/base-date-picker-constants';\nimport { IconComponent, IconRegistry } from '../icon';\nimport { IconButtonComponent } from '../icon-button';\nimport { PopupComponent } from '../popup';\nimport { DateRangePickerAdapter } from './date-range-picker-adapter';\nimport { DATE_RANGE_PICKER_CONSTANTS, IDatePickerRange, IDateRangePickerChangeEventData } from './date-range-picker-constants';\nimport { DateRangePickerFoundation } from './date-range-picker-foundation';\n\nconst template = '<template><slot></slot></template>';\nconst styles = ':host{display:block}:host([hidden]){display:none}';\n\nexport interface IDateRangePickerComponent extends IBaseDatePickerComponent<IDatePickerRange> {\n from: Date | string | null | undefined;\n to: Date | string | null | undefined;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-date-range-picker': IDateRangePickerComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-date-range-picker-change': CustomEvent<IDateRangePickerChangeEventData>;\n 'forge-date-range-picker-open': CustomEvent<void>;\n 'forge-date-range-picker-close': CustomEvent<void>;\n 'forge-date-range-picker-input': CustomEvent<string>;\n }\n}\n\n/**\n * The custom element class behind the `<forge-date-range-picker>` element.\n * \n * @tag forge-date-range-picker\n */\n@CustomElement({\n name: DATE_RANGE_PICKER_CONSTANTS.elementName,\n dependencies: [\n PopupComponent,\n CalendarComponent,\n IconButtonComponent,\n IconComponent\n ]\n})\nexport class DateRangePickerComponent extends BaseDatePickerComponent<IDatePickerRange, IDatePickerRange, DateRangePickerFoundation> implements IDateRangePickerComponent {\n public static get observedAttributes(): string[] {\n return [\n ...Object.values(BASE_DATE_PICKER_CONSTANTS.observedAttributes),\n DATE_RANGE_PICKER_CONSTANTS.observedAttributes.FROM,\n DATE_RANGE_PICKER_CONSTANTS.observedAttributes.TO\n ];\n }\n\n constructor() {\n super();\n IconRegistry.define(tylIconDateRange);\n attachShadowTemplate(this, template, styles);\n this._foundation = new DateRangePickerFoundation(new DateRangePickerAdapter(this));\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case DATE_RANGE_PICKER_CONSTANTS.observedAttributes.FROM:\n this.from = newValue;\n return;\n case DATE_RANGE_PICKER_CONSTANTS.observedAttributes.TO:\n this.to = newValue;\n return;\n }\n super.attributeChangedCallback(name, oldValue, newValue);\n }\n\n /** Gets/sets the \"from\" date range value. */\n @FoundationProperty()\n public declare from: Date | string | null | undefined;\n\n /** Gets/sets the \"to\" date range value. */\n @FoundationProperty()\n public declare to: Date | string | null | undefined;\n}\n", "import { FormFieldComponentDelegate, IFormFieldComponentDelegateOptions, IBaseComponentDelegateConfig } from '../core/delegates';\nimport { FieldDensityType } from '../field/field-constants';\nimport { ITextFieldComponent, TEXT_FIELD_CONSTANTS } from '../text-field';\nimport { IDateRangePickerComponent } from './date-range-picker';\nimport { DATE_RANGE_PICKER_CONSTANTS, IDateRangePickerChangeEventData } from './date-range-picker-constants';\n\nexport type DateRangePickerComponentDelegateProps = Partial<IDateRangePickerComponent>;\nexport interface IDateRangePickerComponentDelegateOptions extends IFormFieldComponentDelegateOptions {\n useDropdownIcon?: boolean;\n fromPlaceholder?: string;\n toPlaceholder?: string;\n label?: string;\n required?: boolean;\n density?: FieldDensityType;\n}\nexport interface IDateRangePickerComponentDelegateConfig extends IBaseComponentDelegateConfig<IDateRangePickerComponent, IDateRangePickerComponentDelegateOptions> {}\n\nexport class DateRangeComponentDelegate extends FormFieldComponentDelegate<IDateRangePickerComponent, IDateRangePickerComponentDelegateOptions> {\n private _textField: ITextFieldComponent;\n private _fromInput: HTMLInputElement;\n private _toInput: HTMLInputElement;\n\n constructor(config?: IDateRangePickerComponentDelegateConfig) {\n super(config);\n }\n\n protected _build(): IDateRangePickerComponent {\n const dateRangePicker = document.createElement(DATE_RANGE_PICKER_CONSTANTS.elementName) as IDateRangePickerComponent;\n this._attachTextField(dateRangePicker);\n return dateRangePicker;\n }\n\n public get fromInput(): HTMLInputElement {\n return this._textField.querySelector(`input[${TEXT_FIELD_CONSTANTS.attributes.MULTI_INPUT}-0]`) as HTMLInputElement;\n }\n\n public get toInput(): HTMLInputElement {\n return this._textField.querySelector(`input[${TEXT_FIELD_CONSTANTS.attributes.MULTI_INPUT}-1]`) as HTMLInputElement;\n }\n\n public get textField(): ITextFieldComponent {\n return this._textField;\n }\n\n public get value(): any {\n return this._element.value;\n }\n public set value(value: any) {\n this._element.value = 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 invalid(): boolean {\n return this._textField.invalid || false;\n }\n public set invalid(value: boolean) {\n this._textField.invalid = value;\n }\n\n public onChange(listener: (value: IDateRangePickerChangeEventData) => void): void {\n this._element.addEventListener(DATE_RANGE_PICKER_CONSTANTS.events.CHANGE, (evt: CustomEvent<IDateRangePickerChangeEventData>) => listener(evt.detail));\n }\n\n public onFocus(listener: (evt: FocusEvent) => void): void {\n this._element.addEventListener('focusin', (evt: FocusEvent) => {\n const isFocusWithin = !this._element.contains(evt.relatedTarget as Node);\n if (isFocusWithin) {\n listener(evt);\n }\n });\n }\n\n public onBlur(listener: (evt: FocusEvent) => void): void {\n this._element.addEventListener('focusout', (evt: FocusEvent) => {\n const isFocusOutside = !this._element.contains(evt.relatedTarget as Node);\n if (isFocusOutside) {\n listener(evt);\n }\n });\n }\n\n private _attachTextField(dateRangePicker: IDateRangePickerComponent): void {\n this._textField = document.createElement(TEXT_FIELD_CONSTANTS.elementName);\n\n if (this._config.options?.required) {\n this._textField.required = true;\n }\n if (this._config.options?.density) {\n this._textField.density = this._config.options.density;\n }\n\n this._fromInput = document.createElement('input');\n this._fromInput.type = 'text';\n this._fromInput.placeholder = this._config.options?.fromPlaceholder || 'From';\n this._textField.appendChild(this._fromInput);\n\n this._toInput = document.createElement('input');\n this._toInput.type = 'text';\n this._toInput.placeholder = this._config.options?.toPlaceholder || 'To';\n this._textField.appendChild(this._toInput);\n\n const label = document.createElement('label');\n label.textContent = this._config.options?.label || 'Choose date range';\n this._textField.appendChild(label);\n\n dateRangePicker.appendChild(this._textField);\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\nimport { DateRangePickerComponent } from './date-range-picker';\n\nexport * from './date-range-picker';\nexport * from './date-range-picker-adapter';\nexport * from './date-range-picker-constants';\nexport * from './date-range-picker-foundation';\nexport * from './date-range-picker-component-delegate';\n\nexport function defineDateRangePickerComponent(): void {\n defineCustomElement(DateRangePickerComponent);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["elementName", "COMPONENT_NAME_PREFIX", "DatePickerRange", "range", "observedAttributes", "selectors", "events", "DATE_RANGE_PICKER_CONSTANTS", "DateRangePickerAdapter", "BaseDatePickerAdapter", "component", "DATE_RANGE_PICKER_CONSTANTS", "targetElement", "CalendarDropdown", "fromOptions", "_a", "DateInputMask", "toOptions", "input", "tryCreateAriaControlsPlaceholder", "setAriaControls", "type", "listener", "capture", "context", "destroyListenerCb", "listenOwnProperty", "calendarConfig", "dropdownConfig", "id", "value", "emitEvents", "target", "activeEl", "getActiveElement", "isDisabled", "data", "emitEvent", "createToggleElement", "action", "DateRangePickerFoundation", "BaseDatePickerFoundation", "adapter", "evt", "value", "emitOpenEvent", "currentValue", "force", "typedStartValue", "typedEndValue", "detail", "DatePickerRange", "DATE_RANGE_PICKER_CONSTANTS", "today", "range", "DateRange", "inputValue", "parsedDate", "isValidDate", "formattedDate", "suppressValueChanges", "passesMinDate", "passesMaxDate", "passesDateRange", "event", "formattedFromValue", "formattedToValue", "Platform", "options", "masked", "flags", "maskInstance", "sanitizedValue", "date", "isSameDate", "isDate", "template", "styles", "DateRangePickerComponent", "BaseDatePickerComponent", "IconRegistry", "tylIconDateRange", "attachShadowTemplate", "DateRangePickerFoundation", "DateRangePickerAdapter", "BASE_DATE_PICKER_CONSTANTS", "DATE_RANGE_PICKER_CONSTANTS", "name", "oldValue", "newValue", "__decorateClass", "FoundationProperty", "CustomElement", "PopupComponent", "CalendarComponent", "IconButtonComponent", "IconComponent", "DateRangeComponentDelegate", "FormFieldComponentDelegate", "config", "dateRangePicker", "DATE_RANGE_PICKER_CONSTANTS", "TEXT_FIELD_CONSTANTS", "value", "listener", "evt", "_a", "_b", "_c", "_d", "_e", "label", "defineDateRangePickerComponent", "defineCustomElement", "DateRangePickerComponent"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import{b as S}from"./chunk.EC5JFSHR.js";import{c as C}from"./chunk.KYH5GKVI.js";import{a as A}from"./chunk.UWYANU5D.js";import{a as l}from"./chunk.KTGSZEAG.js";import{a as T,b as h}from"./chunk.DL7NX432.js";import{a as w,c as g,e as L,g as v,l as k}from"./chunk.LJLEPTLU.js";import{b as x,f as c,g as p,q as I,t as f}from"./chunk.4LA6HEA7.js";import{k as n,n as E}from"./chunk.J2M2MXP2.js";import{f as a}from"./chunk.MCIQXNKY.js";var R=`${h}list`,z={STATIC:"static",DENSE:"dense",PROPAGATE_CLICK:"propagate-click",INDENTED:"indented",SELECTED_VALUE:"selected-value"},O={SCOPE_TEST:`${R}-item-scope-test`},d={elementName:R,attributes:z,events:O};var N=`${h}list-item`,H={STATIC:"static",TWO_LINE:"two-line",THREE_LINE:"three-line",ACTIVE:"active",SELECTED:"selected",VALUE:"value",HREF:"href",TARGET:"target",RIPPLE:"ripple",DISABLED:"disabled",DENSE:"dense",PROPAGATE_CLICK:"propagate-click",INDENTED:"indented",WRAP:"wrap",DRAWER_CONTEXT:"forge-drawer-context",IGNORE:"forge-ignore"},_={LIST_ITEM:"forge-list-item",STATIC:"forge-list-item--static",TEXT:"forge-list-item__text",TWO_LINE:"forge-list-item--two-line",THREE_LINE:"forge-list-item--three-line",ACTIVE:"forge-list-item--active",ACTIVATED:"forge-list-item--activated",SELECTED:"forge-list-item--selected",DISABLED:"forge-list-item--disabled",DENSE:"forge-list-item--dense",INDENTED:"forge-list-item--indented",WRAP:"forge-list-item--wrap"},P={LIST_ITEM:`.${_.LIST_ITEM}`,DEFAULT_SLOT:`.${_.TEXT} > slot`,CHECKBOX_RADIO_SELECTOR:"input[type=checkbox]:not(:disabled):not([forge-ignore]),input[type=radio]:not(:disabled):not([forge-ignore])"},M={SELECT:`${N}-select`},F={LINK:"link",LIST_ITEM:"listitem"},t={elementName:N,attributes:H,classes:_,selectors:P,events:M,roles:F};var b=class extends A{constructor(i){super(i);this._initialize()}_initialize(){this._listItemElement=v(this._component,t.selectors.LIST_ITEM),this._defaultSlot=v(this._component,t.selectors.DEFAULT_SLOT)}initializeAccessibility(){this._component.hasAttribute("role")||this._component.setAttribute("role","listitem")}getListItem(){return this._component}addListener(i,r,o){this._listItemElement.addEventListener(i,r,o)}removeListener(i,r){this._listItemElement.removeEventListener(i,r)}createRipple(){return new S(this._listItemElement)}setStatic(i){i?(this._listItemElement.tabIndex=-1,c(t.classes.STATIC,this._listItemElement)):(this._listItemElement.hasAttribute("tabindex")&&(this._listItemElement.tabIndex=0),p(t.classes.STATIC,this._listItemElement))}setTwoLine(i){i?c(t.classes.TWO_LINE,this._listItemElement):p(t.classes.TWO_LINE,this._listItemElement)}setThreeLine(i){i?c(t.classes.THREE_LINE,this._listItemElement):p(t.classes.THREE_LINE,this._listItemElement)}getLineCount(){return this._defaultSlot.assignedNodes().filter(i=>i.nodeType===Node.ELEMENT_NODE).length}setActive(i){i?c(t.classes.ACTIVE,this._listItemElement):p(t.classes.ACTIVE,this._listItemElement)}setSelected(i){i?c(t.classes.SELECTED,this._listItemElement):p(t.classes.SELECTED,this._listItemElement)}tryToggleCheckboxRadio(i){let r=this._component.querySelector(t.selectors.CHECKBOX_RADIO_SELECTOR);if(r){let o=typeof i=="boolean",m=r.checked;if(!o&&r.matches("input[type=radio]:checked"))return;r.checked=o?i:!r.checked,(!o||m!==i)&&r.dispatchEvent(new Event("change",{bubbles:!0}))}}setFocus(){this._listItemElement.focus()}hasFocus(){var i;return document.activeElement===this._component||!!((i=this._component.shadowRoot)!=null&&i.activeElement)}setRole(i){this._listItemElement.setAttribute("role",i)}setDisabled(i){f(this._listItemElement,i,t.classes.DISABLED)}setDense(i){f(this._listItemElement,i,t.classes.DENSE)}setIndented(i){f(this._listItemElement,i,t.classes.INDENTED)}setWrap(i){f(this._listItemElement,i,t.classes.WRAP)}trySelect(i){let r=g(this._component,d.elementName);if(!r||r.selectedValue===void 0)return null;let m=(r.selectedValue instanceof Array?r.selectedValue:[r.selectedValue]).some(D=>E(D,i));return this.setSelected(m),this.tryToggleCheckboxRadio(m),m}createUserInteractionListener(){return C(this._listItemElement)}};var u=class{constructor(e){this._adapter=e;this._ripple=!0;this._static=!1;this._twoLine=!1;this._threeLine=!1;this._active=!1;this._selected=!1;this._disabled=!1;this._dense=!1;this._propagateClick=!0;this._indented=!1;this._wrap=!1;this._clickListener=i=>this._onClick(i),this._keydownListener=i=>this._onKeydown(i)}initialize(){this._adapter.initializeAccessibility(),this._setRipple(),this._adapter.setStatic(this._static),this._adapter.setDense(this._dense),this._adapter.setDisabled(this._disabled),this._adapter.setIndented(this._indented),this._adapter.setWrap(this._wrap),this._static||(this._adapter.addListener("click",this._clickListener),this._adapter.addListener("keydown",this._keydownListener)),this._threeLine?this._adapter.setThreeLine(this._threeLine):this.twoLine&&this._adapter.setTwoLine(this._twoLine);let e=this._adapter.trySelect(this._value);e!=null&&(this._selected=e)}disconnect(){this._rippleInstance&&(this._rippleInstance.destroy(),this._rippleInstance=void 0),typeof this._destroyUserInteractionListener=="function"&&(this._destroyUserInteractionListener(),this._destroyUserInteractionListener=void 0)}deactivateRipple(){var e;(e=this._rippleInstance)==null||e.deactivate()}_onKeydown(e){(e.key==="Enter"||e.key===" ")&&(e.key===" "&&e.preventDefault(),this._select(e.target))}_onClick(e){this._select(e.target)}_select(e){let i=e==null?void 0:e.hasAttribute(t.attributes.IGNORE);if(this._static||this._disabled||i)return;if(!this._adapter.hasFocus()&&this._propagateClick&&this.setFocus(),this._href){this._target?window.open(this._href,this._target):document.location.href=this._href;return}I(e,t.selectors.CHECKBOX_RADIO_SELECTOR)||this._adapter.tryToggleCheckboxRadio();let r={value:this._value,listItem:this._adapter.getListItem()};this._adapter.emitHostEvent(t.events.SELECT,r)}get ripple(){return this._ripple}set ripple(e){if(this._ripple!==e){if(e&&this._static)return;this._ripple=e,this._setRipple(),this._adapter.setHostAttribute(t.attributes.RIPPLE,String(this._ripple))}}get static(){return this._static}set static(e){this._static!==e&&(this._static=e,this._adapter.setStatic(this._static),this._setRipple(),this._static?this._adapter.removeListener("click",this._clickListener):this._adapter.addListener("click",this._clickListener),this._static?this._adapter.setHostAttribute(t.attributes.STATIC):this._adapter.removeHostAttribute(t.attributes.STATIC))}get twoLine(){return this._twoLine}set twoLine(e){this._twoLine!==e&&(this._twoLine=e,this._adapter.setTwoLine(this._twoLine),this._twoLine?this._adapter.setHostAttribute(t.attributes.TWO_LINE):this._adapter.removeHostAttribute(t.attributes.TWO_LINE))}get threeLine(){return this._threeLine}set threeLine(e){this._threeLine!==e&&(this._threeLine=e,this._threeLine?this._adapter.setHostAttribute(t.attributes.THREE_LINE):this._adapter.removeHostAttribute(t.attributes.THREE_LINE),this._threeLine&&(this._twoLine=!1),this._adapter.setTwoLine(this._twoLine),this._adapter.setThreeLine(this._threeLine))}get active(){return this._active}set active(e){this._active!==e&&(this._active=e,this._adapter.setActive(this._active),this._active?this._adapter.setHostAttribute(t.attributes.ACTIVE):this._adapter.removeHostAttribute(t.attributes.ACTIVE))}get selected(){return this._selected}set selected(e){this._selected!==e&&(this._selected=e,this._adapter.setSelected(this._selected),this._adapter.tryToggleCheckboxRadio(this._selected),this._adapter.toggleHostAttribute(t.attributes.SELECTED,this._selected))}get value(){return this._value}set value(e){this._value=e;let i=this._adapter.trySelect(this._value);i!=null&&(this._selected=i)}get href(){return this._href}set href(e){this._href!==e&&(this._href=e,this._href?this._adapter.setRole(t.roles.LINK):this._adapter.setRole(t.roles.LIST_ITEM),this._adapter.setHostAttribute(t.attributes.HREF,this._href))}get target(){return this._target}set target(e){this._target=e}get disabled(){return this._disabled}set disabled(e){this._disabled!==e&&(this._disabled=e,this._adapter.setDisabled(this._disabled),this._adapter.toggleHostAttribute(t.attributes.DISABLED,this._disabled))}get dense(){return this._dense}set dense(e){this._dense!==e&&(this._dense=e,this._adapter.setDense(this._dense),this._adapter.toggleHostAttribute(t.attributes.DENSE,this._dense))}get propagateClick(){return this._propagateClick}set propagateClick(e){this._propagateClick!==e&&(this._propagateClick=e,this._adapter.setHostAttribute(t.attributes.PROPAGATE_CLICK,""+!!this._propagateClick))}get indented(){return this._indented}set indented(e){this._indented!==e&&(this._indented=e,this._adapter.setIndented(this._indented),this._adapter.toggleHostAttribute(t.attributes.INDENTED,this._indented))}get wrap(){return this._wrap}set wrap(e){this._wrap!==e&&(this._wrap=e,this._adapter.setWrap(this._wrap),this._adapter.toggleHostAttribute(t.attributes.WRAP,this._wrap))}async _setRipple(){if(this._ripple&&!this._static&&!this._rippleInstance){let{userInteraction:e,destroy:i}=await this._adapter.createUserInteractionListener();this._destroyUserInteractionListener=i;let{type:r}=await e;if(this._destroyUserInteractionListener=void 0,!this._adapter.isConnected)return;this._ripple&&!this._static&&!this._rippleInstance&&(this._rippleInstance=this._adapter.createRipple(),r==="focusin"&&this._rippleInstance.handleFocus())}else(!this._ripple||this._static)&&this._rippleInstance&&(this._rippleInstance.destroy(),this._rippleInstance=void 0)}setFocus(){this._adapter.setFocus()}};var W='<template><div class="forge-list-item" tabindex="0" part="root"><slot name="leading"></slot><slot name="avatar"></slot><div class="forge-list-item__text" part="text-container"><slot></slot><slot name="title"></slot><slot name="subtitle"></slot><slot name="tertiary-title"></slot><slot></slot></div><slot name="trailing"></slot></div></template>',U='@-webkit-keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@-webkit-keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@-webkit-keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}@keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}.mdc-ripple-surface{--mdc-ripple-fg-size:0;--mdc-ripple-left:0;--mdc-ripple-top:0;--mdc-ripple-fg-scale:1;--mdc-ripple-fg-translate-end:0;--mdc-ripple-fg-translate-start:0;-webkit-tap-highlight-color:transparent;will-change:transform,opacity;position:relative;outline:0;overflow:hidden}.mdc-ripple-surface::after,.mdc-ripple-surface::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:""}.mdc-ripple-surface::before{-webkit-transition:opacity 15ms linear,background-color 15ms linear;transition:opacity 15ms linear,background-color 15ms linear;z-index:1;z-index:var(--mdc-ripple-z-index,1)}.mdc-ripple-surface::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.mdc-ripple-surface.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.mdc-ripple-surface.mdc-ripple-upgraded::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.mdc-ripple-surface.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.mdc-ripple-surface.mdc-ripple-upgraded--foreground-activation::after{-webkit-animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards;animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards}.mdc-ripple-surface.mdc-ripple-upgraded--foreground-deactivation::after{-webkit-animation:mdc-ripple-fg-opacity-out 150ms;animation:mdc-ripple-fg-opacity-out 150ms;-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}.mdc-ripple-surface::after,.mdc-ripple-surface::before{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.mdc-ripple-surface.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded],.mdc-ripple-upgraded--unbounded{overflow:visible}.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::before,.mdc-ripple-upgraded--unbounded::after,.mdc-ripple-upgraded--unbounded::before{top:calc(50% - 50%);left:calc(50% - 50%);width:100%;height:100%}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::before,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::before{top:var(--mdc-ripple-top,calc(50% - 50%));left:var(--mdc-ripple-left,calc(50% - 50%));width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{background-color:#000;background-color:var(--mdc-ripple-color,#000)}.mdc-ripple-surface.mdc-ripple-surface--hover::before,.mdc-ripple-surface:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.mdc-ripple-surface.mdc-ripple-upgraded--background-focused::before,.mdc-ripple-surface:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.mdc-ripple-surface:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.mdc-ripple-surface:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.mdc-ripple-surface.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{--mdc-ripple-color:var(--mdc-theme-on-surface)}.forge-list-item{min-height:32px;min-height:var(--forge-list-item-min-height,32px);max-height:none;max-height:var(--forge-list-item-max-height,none);height:32px;height:var(--forge-list-item-height,32px);padding:8px 16px;padding:var(--forge-list-item-padding,8px 16px);margin-left:0;margin-left:var(--forge-list-item-indent,0);-webkit-box-align:center;align-items:center;-webkit-box-align:var(--forge-list-item-align-items,center);align-items:var(--forge-list-item-align-items,center);position:relative;display:-webkit-box;display:flex;-webkit-box-pack:start;justify-content:flex-start;overflow:hidden}.forge-list-item:focus{outline:0}.forge-list-item ::slotted([slot=leading]),.forge-list-item ::slotted([slot=trailing]){font-size:1.5rem}.forge-list-item ::slotted([slot=leading]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));margin-left:0;margin-left:var(--forge-list-item-leading-margin-left,0);margin-right:32px;margin-right:var(--forge-list-item-leading-margin-right,32px);display:-webkit-inline-box;display:inline-flex;flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;fill:currentColor}.forge-list-item ::slotted([slot=trailing]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-list-item ::slotted([slot=avatar]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));margin-left:0;margin-left:var(--forge-list-item-leading-margin-left,0);margin-right:32px;margin-right:var(--forge-list-item-leading-margin-right,32px);display:-webkit-inline-box;display:inline-flex;flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;fill:currentColor;margin-left:0;margin-right:16px;min-width:40px;min-height:40px;border-radius:50%;display:inline-flex;background-color:rgba(0,0,0,.54);background-color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));color:#fff;color:var(--mdc-theme-on-primary,#fff)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item{--mdc-ripple-fg-size:0;--mdc-ripple-left:0;--mdc-ripple-top:0;--mdc-ripple-fg-scale:1;--mdc-ripple-fg-translate-end:0;--mdc-ripple-fg-translate-start:0;-webkit-tap-highlight-color:transparent;will-change:transform,opacity}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:""}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{-webkit-transition:opacity 15ms linear,background-color 15ms linear;transition:opacity 15ms linear,background-color 15ms linear;z-index:1;z-index:var(--mdc-ripple-z-index,1)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded--foreground-activation::after{-webkit-animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards;animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded--foreground-deactivation::after{-webkit-animation:mdc-ripple-fg-opacity-out 150ms;animation:mdc-ripple-fg-opacity-out 150ms;-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{background-color:#000;background-color:var(--mdc-ripple-color,var(--mdc-theme-on-surface,#000))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-surface--hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded--background-focused::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated::before{opacity:.12;opacity:var(--mdc-ripple-activated-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated::before{background-color:#3f51b5;background-color:var(--mdc-ripple-color,var(--mdc-theme-primary,#3f51b5))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated.mdc-ripple-surface--hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:hover::before{opacity:.16;opacity:var(--mdc-ripple-hover-opacity, .16)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated.mdc-ripple-upgraded--background-focused::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-focus-opacity, .24)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-press-opacity, .24)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.24)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected::before{opacity:.08;opacity:var(--mdc-ripple-selected-opacity, .08)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected::before{background-color:#3f51b5;background-color:var(--mdc-ripple-color,var(--mdc-theme-primary,#3f51b5))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected.mdc-ripple-surface--hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:hover::before{opacity:.12;opacity:var(--mdc-ripple-hover-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected.mdc-ripple-upgraded--background-focused::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.2;opacity:var(--mdc-ripple-focus-opacity, .2)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.2;opacity:var(--mdc-ripple-press-opacity, .2)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.2)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:focus:hover.mdc-ripple-upgraded--background-focused:not(.mdc-ripple-upgraded--foreground-activation)::before{opacity:.28}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before{opacity:.12}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation):hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation):hover::before{opacity:.16}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before{background-color:#000;background-color:var(--mdc-theme-on-surface,#000)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:focus.forge-list-item--selected.forge-list-item--activated:not(.mdc-ripple-upgraded--foreground-activation)::before{opacity:.24}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:focus.forge-list-item--selected.forge-list-item--activated:not(.mdc-ripple-upgraded--foreground-activation):hover::before{opacity:.28}.forge-list-item__text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:100%}.forge-list-item ::slotted([slot=title]){text-overflow:ellipsis;white-space:nowrap;overflow:hidden;display:block}.forge-list-item ::slotted([slot=subtitle]),.forge-list-item ::slotted([slot=tertiary-title]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit);text-overflow:ellipsis;white-space:nowrap;overflow:hidden;color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));display:block}.forge-list-item--two-line{min-height:56px;min-height:var(--forge-list-item-min-height,56px);height:56px;height:var(--forge-list-item-height,56px)}.forge-list-item--three-line{min-height:72px;min-height:var(--forge-list-item-min-height,72px);height:72px;height:var(--forge-list-item-height,72px)}.forge-list-item--dense{min-height:16px;min-height:var(--forge-list-item-min-height,16px);height:16px;height:var(--forge-list-item-height,16px)}.forge-list-item--dense ::slotted([slot=leading]),.forge-list-item--dense ::slotted([slot=trailing]){font-size:1.25rem}.forge-list-item--dense ::slotted([slot=leading]){margin-right:12px;margin-right:var(--forge-list-item-leading-margin-right,12px)}.forge-list-item--dense ::slotted(.forge-list-item__title){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit)}.forge-list-item--dense.forge-list-item--two-line{min-height:40px;min-height:var(--forge-list-item-min-height,40px)}.forge-list-item--dense.forge-list-item--three-line{min-height:56px;min-height:var(--forge-list-item-min-height,56px)}.forge-list-item--wrap{height:auto;height:var(--forge-list-item-height,auto)}.forge-list-item--wrap .forge-list-item__text,.forge-list-item--wrap ::slotted([slot=subtitle]),.forge-list-item--wrap ::slotted([slot=tertiary-title]),.forge-list-item--wrap ::slotted([slot=title]){text-overflow:clip;white-space:normal}.forge-list-item--indented{margin-left:56px;margin-left:var(--forge-list-item-indent,56px)}.forge-list-item--active.forge-list-item--activated:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before,.forge-list-item--active.forge-list-item--selected:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{opacity:.2}.forge-list-item--active.forge-list-item--activated:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:hover::before,.forge-list-item--active.forge-list-item--selected:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:hover::before{opacity:.24}.forge-list-item--activated,.forge-list-item--selected{color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5)}.forge-list-item--activated .forge-list-item__text .forge-list-item__subtitle,.forge-list-item--activated .forge-list-item__text ::slotted(.forge-list-item__subtitle),.forge-list-item--selected .forge-list-item__text .forge-list-item__subtitle,.forge-list-item--selected .forge-list-item__text ::slotted(.forge-list-item__subtitle){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5);opacity:.87}.forge-list-item--activated .forge-list-item__text .forge-list-item__tertiary-title,.forge-list-item--activated .forge-list-item__text ::slotted(.forge-list-item__tertiary-title),.forge-list-item--selected .forge-list-item__text .forge-list-item__tertiary-title,.forge-list-item--selected .forge-list-item__text ::slotted(.forge-list-item__tertiary-title){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5);opacity:.87}.forge-list-item--activated ::slotted([slot=leading]),.forge-list-item--activated ::slotted([slot=trailing]),.forge-list-item--selected ::slotted([slot=leading]),.forge-list-item--selected ::slotted([slot=trailing]){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5)}.forge-list-item--activated ::slotted([slot=avatar].forge-list-item__avatar-icon),.forge-list-item--selected ::slotted([slot=avatar].forge-list-item__avatar-icon){background-color:rgba(0,0,0,.12);background-color:var(--mdc-theme-text-disabled-on-background,rgba(0,0,0,.12));color:#000;color:var(--mdc-theme-on-surface,#000)}.forge-list-item--disabled{cursor:not-allowed;cursor:var(--forge-list-item-cursor,not-allowed);color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38))}.forge-list-item--disabled ::slotted([slot=leading]),.forge-list-item--disabled ::slotted([slot=trailing]){cursor:not-allowed;cursor:var(--forge-list-item-cursor,not-allowed);color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38))}.forge-list-item[role=link]{cursor:pointer}:host{display:block;contain:content}:host([hidden]){display:none}:host([forge-drawer-context=true]) .forge-list-item{margin:8px;margin:var(--forge-list-item-margin,8px);padding:0 8px;padding:var(--forge-list-item-padding,0 8px);border-radius:4px;border-radius:var(--forge-list-item-border-radius,4px);cursor:pointer;cursor:var(--forge-list-item-cursor,pointer);height:40px;height:var(--forge-list-item-height,40px);font-size:.875rem;font-weight:500}:host([forge-drawer-context=true]) .forge-list-item--static{cursor:initial}:host([forge-drawer-context=true]) .forge-list-item--indented{margin-left:64px;margin-left:var(--forge-list-item-indent,64px)}:host([forge-drawer-context=true]) .forge-list-item--two-line{min-height:56px-8px;min-height:var(--forge-list-item-min-height,56px-8px);height:56px-8px;height:var(--forge-list-item-height,56px-8px)}:host([forge-drawer-context=true]) .forge-list-item--three-line{min-height:72px-8px;min-height:var(--forge-list-item-min-height,72px-8px);height:72px-8px;height:var(--forge-list-item-height,72px-8px)}:host([forge-drawer-context=true]) .forge-list-item:first-child{margin-top:4px;margin-bottom:4px}:host([forge-drawer-context=true]) .forge-list-item--dense{min-height:16px;min-height:var(--forge-list-item-min-height,16px);height:16px;height:var(--forge-list-item-height,16px)}:host([forge-drawer-context=true]) .forge-list-item--dense ::slotted([slot=leading]),:host([forge-drawer-context=true]) .forge-list-item--dense ::slotted([slot=trailing]){font-size:1.25rem}:host([forge-drawer-context=true]) .forge-list-item--dense .forge-list-item__text{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit)}:host([forge-drawer-context=true]) .forge-list-item--wrap{height:auto;height:var(--forge-list-item-height,auto);padding:4px 8px;padding:var(--forge-list-item-padding,4px 8px);min-height:40px;min-height:var(--forge-list-item-min-height,40px)}:host([forge-drawer-context=true]) .forge-list-item--disabled{cursor:not-allowed;cursor:var(--forge-list-item-cursor,not-allowed)}:host([dense]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit)}',s=class extends k{constructor(){super();L(this,W,U),this._foundation=new u(new b(this))}static get observedAttributes(){return[t.attributes.STATIC,t.attributes.TWO_LINE,t.attributes.THREE_LINE,t.attributes.ACTIVE,t.attributes.SELECTED,t.attributes.VALUE,t.attributes.HREF,t.attributes.TARGET,t.attributes.RIPPLE,t.attributes.DISABLED,t.attributes.DENSE,t.attributes.PROPAGATE_CLICK,t.attributes.INDENTED,t.attributes.WRAP]}connectedCallback(){!this.hasAttribute(t.attributes.DRAWER_CONTEXT)&&x(this).some(r=>["forge-drawer","forge-modal-drawer","forge-mini-drawer"].includes(r.tagName.toLowerCase()))&&this.setAttribute(t.attributes.DRAWER_CONTEXT,"true");let i=g(this,d.elementName);i&&this._inheritParentListProps(i),this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(i,r,o){switch(i){case t.attributes.STATIC:this.static=n(o);break;case t.attributes.TWO_LINE:this.twoLine=n(o);break;case t.attributes.THREE_LINE:this.threeLine=n(o);break;case t.attributes.ACTIVE:this.active=n(o);break;case t.attributes.SELECTED:this.selected=n(o);break;case t.attributes.VALUE:this.value=o;break;case t.attributes.HREF:this.href=o;break;case t.attributes.TARGET:this.target=o;break;case t.attributes.RIPPLE:this.ripple=n(o);break;case t.attributes.DISABLED:this.disabled=n(o);break;case t.attributes.DENSE:this.dense=n(o);break;case t.attributes.PROPAGATE_CLICK:this.propagateClick=n(o);break;case t.attributes.INDENTED:this.indented=n(o);break;case t.attributes.WRAP:this.wrap=n(o);break}}_inheritParentListProps(i){i.hasAttribute(d.attributes.STATIC)&&(this.static=!0),i.hasAttribute(d.attributes.DENSE)&&(this.dense=!0),i.getAttribute(d.attributes.PROPAGATE_CLICK)==="false"&&(this.propagateClick=!1),i.hasAttribute(d.attributes.INDENTED)&&(this.indented=!0)}focus(){this._foundation.setFocus()}deactivateRipple(){this._foundation.deactivateRipple()}};a([l()],s.prototype,"static",2),a([l()],s.prototype,"twoLine",2),a([l()],s.prototype,"threeLine",2),a([l()],s.prototype,"active",2),a([l()],s.prototype,"selected",2),a([l()],s.prototype,"value",2),a([l()],s.prototype,"href",2),a([l()],s.prototype,"target",2),a([l()],s.prototype,"ripple",2),a([l()],s.prototype,"disabled",2),a([l()],s.prototype,"dense",2),a([l()],s.prototype,"propagateClick",2),a([l()],s.prototype,"indented",2),a([l()],s.prototype,"wrap",2),s=a([T({name:t.elementName})],s);function bt(){w(s)}export{d as a,t as b,b as c,u as d,s as e,bt as f};
|
|
7
|
+
//# sourceMappingURL=chunk.AJTQHK25.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/list/list/list-constants.ts", "../../src/list/list-item/list-item-constants.ts", "../../src/list/list-item/list-item-adapter.ts", "../../src/list/list-item/list-item-foundation.ts", "../../src/list/list-item/list-item.ts", "../../src/list/list-item/index.ts"],
|
|
4
|
+
"sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}list`;\n\nconst attributes = {\n STATIC: 'static',\n DENSE: 'dense',\n PROPAGATE_CLICK: 'propagate-click',\n INDENTED: 'indented',\n SELECTED_VALUE: 'selected-value'\n};\n\nconst events = {\n SCOPE_TEST: `${elementName}-item-scope-test`\n} as const;\n\nexport const LIST_CONSTANTS = {\n elementName,\n attributes,\n events\n};\n", "import { COMPONENT_NAME_PREFIX } from '../../constants';\nimport { IListItemComponent } from './list-item';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}list-item`;\n\nconst attributes = {\n STATIC: 'static',\n TWO_LINE: 'two-line',\n THREE_LINE: 'three-line',\n ACTIVE: 'active',\n SELECTED: 'selected',\n VALUE: 'value',\n HREF: 'href',\n TARGET: 'target',\n RIPPLE: 'ripple',\n DISABLED: 'disabled',\n DENSE: 'dense',\n PROPAGATE_CLICK: 'propagate-click',\n INDENTED: 'indented',\n WRAP: 'wrap',\n DRAWER_CONTEXT: 'forge-drawer-context',\n IGNORE: 'forge-ignore'\n};\n\nconst classes = {\n LIST_ITEM: 'forge-list-item',\n STATIC: 'forge-list-item--static',\n TEXT: 'forge-list-item__text',\n TWO_LINE: 'forge-list-item--two-line',\n THREE_LINE: 'forge-list-item--three-line',\n ACTIVE: 'forge-list-item--active',\n ACTIVATED: 'forge-list-item--activated',\n SELECTED: 'forge-list-item--selected',\n DISABLED: 'forge-list-item--disabled',\n DENSE: 'forge-list-item--dense',\n INDENTED: 'forge-list-item--indented',\n WRAP: 'forge-list-item--wrap'\n};\n\nconst selectors = {\n LIST_ITEM: `.${classes.LIST_ITEM}`,\n DEFAULT_SLOT: `.${classes.TEXT} > slot`,\n CHECKBOX_RADIO_SELECTOR: 'input[type=checkbox]:not(:disabled):not([forge-ignore]),input[type=radio]:not(:disabled):not([forge-ignore])'\n};\n\nconst events = {\n SELECT: `${elementName}-select`\n};\n\nconst roles = {\n LINK: 'link',\n LIST_ITEM: 'listitem'\n};\n\nexport const LIST_ITEM_CONSTANTS = {\n elementName,\n attributes,\n classes,\n selectors,\n events,\n roles\n};\n\nexport interface IListItemSelectEventData {\n value: any;\n listItem: IListItemComponent;\n}\n", "import { addClass, getShadowElement, removeClass, requireParent, isDeepEqual, toggleClass } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';\nimport { createUserInteractionListener } from '../../core/utils';\nimport { IListComponent } from '../list/list';\nimport { LIST_CONSTANTS } from '../list/list-constants';\nimport { IListItemComponent } from './list-item';\nimport { LIST_ITEM_CONSTANTS } from './list-item-constants';\nimport { ForgeRipple } from '../../ripple';\n\nexport interface IListItemAdapter extends IBaseAdapter {\n initializeAccessibility(): void;\n getListItem(): IListItemComponent;\n addListener(type: string, listener: (evt: Event) => void, options?: AddEventListenerOptions): void;\n removeListener(type: string, listener: (evt: Event) => void): void;\n createRipple(): any;\n setStatic(value: boolean): void;\n setTwoLine(value: boolean): void;\n setThreeLine(value: boolean): void;\n getLineCount(): number;\n setActive(value: boolean): void;\n setSelected(value: boolean): void;\n tryToggleCheckboxRadio(value?: boolean): void;\n setFocus(): void;\n hasFocus(): boolean;\n setRole(role: string): void;\n setDisabled(disabled: boolean): void;\n setDense(dense: boolean): void;\n setIndented(indented: boolean): void;\n setWrap(value: boolean): void;\n trySelect(value: unknown): boolean | null;\n createUserInteractionListener(): ReturnType<typeof createUserInteractionListener>;\n}\n\nexport class ListItemAdapter extends BaseAdapter<IListItemComponent> implements IListItemAdapter {\n private _listItemElement: HTMLElement;\n private _defaultSlot: HTMLSlotElement;\n\n constructor(component: IListItemComponent) {\n super(component);\n this._initialize();\n }\n\n private _initialize(): void {\n this._listItemElement = getShadowElement(this._component, LIST_ITEM_CONSTANTS.selectors.LIST_ITEM);\n this._defaultSlot = getShadowElement(this._component, LIST_ITEM_CONSTANTS.selectors.DEFAULT_SLOT) as HTMLSlotElement;\n }\n \n public initializeAccessibility(): void {\n if (!this._component.hasAttribute('role')) {\n this._component.setAttribute('role', 'listitem');\n }\n }\n\n public getListItem(): IListItemComponent {\n return this._component;\n }\n\n /**\n * Adds an event listener to the `<forge-list-item>` host element.\n * @param {string} type The event type.\n * @param {Function} listener The event callback.\n */\n public addListener(type: string, listener: (evt: Event) => void, options?: AddEventListenerOptions): void {\n this._listItemElement.addEventListener(type, listener, options);\n }\n\n /**\n * Removes an event listener from the `<forge-list-item>` host element.\n * @param {string} type The event type.\n * @param {Function} listener The event callback.\n */\n public removeListener(type: string, listener: (evt: Event) => void): void {\n this._listItemElement.removeEventListener(type, listener);\n }\n\n /**\n * Creates a ripple instance on the list item.\n * @returns {ForgeRipple}\n */\n public createRipple(): any {\n return new ForgeRipple(this._listItemElement);\n }\n\n /**\n * Toggles the static state of this list item.\n * @param {boolean} value The static state.\n */\n public setStatic(value: boolean): void {\n if (value) {\n this._listItemElement.tabIndex = -1;\n addClass(LIST_ITEM_CONSTANTS.classes.STATIC, this._listItemElement);\n } else {\n if (this._listItemElement.hasAttribute('tabindex')) {\n this._listItemElement.tabIndex = 0;\n }\n removeClass(LIST_ITEM_CONSTANTS.classes.STATIC, this._listItemElement);\n }\n }\n\n /**\n * Sets this list item as a two-line list item.\n * @param {boolean} value The two-line state.\n */\n public setTwoLine(value: boolean): void {\n if (value) {\n addClass(LIST_ITEM_CONSTANTS.classes.TWO_LINE, this._listItemElement);\n } else {\n removeClass(LIST_ITEM_CONSTANTS.classes.TWO_LINE, this._listItemElement);\n }\n }\n\n /**\n * Sets this list item as a three-line list item.\n * @param {boolean} value The three-line state.\n */\n public setThreeLine(value: boolean): void {\n if (value) {\n addClass(LIST_ITEM_CONSTANTS.classes.THREE_LINE, this._listItemElement);\n } else {\n removeClass(LIST_ITEM_CONSTANTS.classes.THREE_LINE, this._listItemElement);\n }\n }\n\n /**\n * Determines how many lines the list item is displaying.\n */\n public getLineCount(): number {\n return this._defaultSlot.assignedNodes().filter(e => e.nodeType === Node.ELEMENT_NODE).length; // assignedElements does not exist in the polyfilled version so filtering nodes instead\n }\n\n /**\n * Toggles the active class of the list item.\n * @param {boolean} value The active state.\n */\n public setActive(value: boolean): void {\n if (value) {\n addClass(LIST_ITEM_CONSTANTS.classes.ACTIVE, this._listItemElement);\n } else {\n removeClass(LIST_ITEM_CONSTANTS.classes.ACTIVE, this._listItemElement);\n }\n }\n\n /**\n * Toggles the selected class of the list item.\n * @param {boolean} value The active state.\n */\n public setSelected(value: boolean): void {\n if (value) {\n addClass(LIST_ITEM_CONSTANTS.classes.SELECTED, this._listItemElement);\n } else {\n removeClass(LIST_ITEM_CONSTANTS.classes.SELECTED, this._listItemElement);\n }\n }\n\n /**\n * Attempts to toggle a checkbox or radio button within the list item if it can find one.\n */\n public tryToggleCheckboxRadio(value?: boolean): void {\n const checkable = this._component.querySelector(LIST_ITEM_CONSTANTS.selectors.CHECKBOX_RADIO_SELECTOR) as HTMLInputElement;\n if (checkable) {\n const force = typeof value === 'boolean';\n const currentState = checkable.checked;\n\n // We don't uncheck radio buttons unless we are forcing a value from the selection state\n if (!force && checkable.matches('input[type=radio]:checked')) {\n return;\n }\n \n // Check if we are just toggling or forcing to a specific checked state\n checkable.checked = force ? value as boolean : !checkable.checked;\n\n if (!force || currentState !== value) {\n checkable.dispatchEvent(new Event('change', { bubbles: true }));\n }\n }\n }\n\n /** Attempts to set focus to this list item. */\n public setFocus(): void {\n this._listItemElement.focus();\n }\n\n /** Returns whether the component has focus or not. */\n public hasFocus(): boolean {\n return document.activeElement === this._component || !!this._component.shadowRoot?.activeElement;\n }\n\n /**\n * Sets the role on the list item element.\n * @param role The role.\n */\n public setRole(role: string): void {\n this._listItemElement.setAttribute('role', role);\n }\n\n public setDisabled(disabled: boolean): void {\n toggleClass(this._listItemElement, disabled, LIST_ITEM_CONSTANTS.classes.DISABLED);\n }\n\n public setDense(dense: boolean): void {\n toggleClass(this._listItemElement, dense, LIST_ITEM_CONSTANTS.classes.DENSE);\n }\n\n public setIndented(indented: boolean): void {\n toggleClass(this._listItemElement, indented, LIST_ITEM_CONSTANTS.classes.INDENTED);\n }\n\n public setWrap(value: boolean): void {\n toggleClass(this._listItemElement, value, LIST_ITEM_CONSTANTS.classes.WRAP);\n }\n\n /**\n * Attempts to set the selected state of the list item element and it's visual indicators\n * @param value The value to compare to the parent list element's selected value\n * @returns Returns whether the list item is selected or not\n */\n public trySelect(value: unknown): boolean | null {\n const list = requireParent<IListComponent>(this._component, LIST_CONSTANTS.elementName);\n if (!list || list.selectedValue === undefined) {\n return null;\n }\n\n const listValues = list.selectedValue instanceof Array ? list.selectedValue : [list.selectedValue];\n const isSelected = listValues.some(v => isDeepEqual(v, value));\n\n this.setSelected(isSelected);\n this.tryToggleCheckboxRadio(isSelected);\n return isSelected;\n }\n\n public createUserInteractionListener(): ReturnType<typeof createUserInteractionListener> {\n return createUserInteractionListener(this._listItemElement);\n }\n}\n", "import { ICustomElementFoundation, matchesSelectors } from '@tylertech/forge-core';\nimport { ForgeRipple } from '../../ripple';\nimport { IListItemAdapter } from './list-item-adapter';\nimport { LIST_ITEM_CONSTANTS, IListItemSelectEventData } from './list-item-constants';\n\nexport interface IListItemFoundation extends ICustomElementFoundation {\n static: boolean;\n twoLine: boolean;\n threeLine: boolean;\n active: boolean;\n selected: boolean;\n value: any;\n href: string;\n target: string;\n ripple: boolean;\n disabled: boolean;\n dense: boolean;\n wrap: boolean;\n setFocus(): void;\n deactivateRipple(): void;\n}\n\n/**\n * The foundation class behind the `<forge-list-item>` component.\n */\nexport class ListItemFoundation implements IListItemFoundation {\n private _ripple = true;\n private _rippleInstance: ForgeRipple;\n private _static = false;\n private _twoLine = false;\n private _threeLine = false;\n private _active = false;\n private _selected = false;\n private _value: any;\n private _href: string;\n private _target: string;\n private _disabled = false;\n private _dense = false;\n private _propagateClick = true;\n private _indented = false;\n private _wrap = false;\n private _clickListener: (evt: MouseEvent) => void;\n private _keydownListener: (evt: KeyboardEvent) => void;\n private _destroyUserInteractionListener: (() => void) | undefined;\n\n constructor(private _adapter: IListItemAdapter) {\n this._clickListener = (evt: MouseEvent) => this._onClick(evt);\n this._keydownListener = (evt: KeyboardEvent) => this._onKeydown(evt);\n }\n\n public initialize(): void {\n this._adapter.initializeAccessibility();\n this._setRipple();\n this._adapter.setStatic(this._static);\n this._adapter.setDense(this._dense);\n this._adapter.setDisabled(this._disabled);\n this._adapter.setIndented(this._indented);\n this._adapter.setWrap(this._wrap);\n\n if (!this._static) {\n this._adapter.addListener('click', this._clickListener);\n this._adapter.addListener('keydown', this._keydownListener);\n }\n\n if (this._threeLine) {\n this._adapter.setThreeLine(this._threeLine);\n } else if (this.twoLine) {\n this._adapter.setTwoLine(this._twoLine);\n }\n\n const isSelected = this._adapter.trySelect(this._value);\n if(isSelected != null) {\n this._selected = isSelected;\n }\n }\n\n public disconnect(): void {\n if (this._rippleInstance) {\n this._rippleInstance.destroy();\n this._rippleInstance = undefined as any;\n }\n\n if (typeof this._destroyUserInteractionListener === 'function') {\n this._destroyUserInteractionListener();\n this._destroyUserInteractionListener = undefined;\n }\n }\n\n public deactivateRipple(): void {\n this._rippleInstance?.deactivate();\n }\n\n private _onKeydown(evt: KeyboardEvent): void {\n if (evt.key === 'Enter' || evt.key === ' ') {\n if (evt.key === ' ') {\n evt.preventDefault();\n }\n this._select(evt.target as HTMLElement);\n }\n }\n\n /**\n * Handles clicking a list item.\n * @param evt\n */\n private _onClick(evt: MouseEvent): void {\n this._select(evt.target as HTMLElement);\n }\n\n private _select(targetElement: HTMLElement): void {\n const ignoreElement = targetElement?.hasAttribute(LIST_ITEM_CONSTANTS.attributes.IGNORE);\n if (this._static || this._disabled || ignoreElement) {\n return;\n }\n\n if (!this._adapter.hasFocus() && this._propagateClick) {\n this.setFocus();\n }\n\n if (this._href) {\n if (this._target) {\n window.open(this._href, this._target);\n } else {\n document.location.href = this._href;\n }\n return;\n }\n\n // If the target was not a checkbox or radio button, attempt to find one and toggle its checked state\n if (!matchesSelectors(targetElement, LIST_ITEM_CONSTANTS.selectors.CHECKBOX_RADIO_SELECTOR)) {\n this._adapter.tryToggleCheckboxRadio();\n }\n\n const data: IListItemSelectEventData = {\n value: this._value,\n listItem: this._adapter.getListItem()\n };\n this._adapter.emitHostEvent(LIST_ITEM_CONSTANTS.events.SELECT, data);\n }\n\n /** Gets/sets whether the list item has a ripple or not. */\n public get ripple(): boolean {\n return this._ripple;\n }\n public set ripple(value: boolean) {\n if (this._ripple !== value) {\n // We don't attach ripples to static items\n if (value && this._static) {\n return;\n }\n this._ripple = value;\n this._setRipple();\n\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.RIPPLE, String(this._ripple));\n }\n }\n\n /** Gets/sets whether the static state of this list item. */\n public get static(): boolean {\n return this._static;\n }\n public set static(value: boolean) {\n if (this._static !== value) {\n this._static = value;\n this._adapter.setStatic(this._static);\n\n // Ensure we either add or remove the ripple\n this._setRipple();\n\n // Toggle the click listener\n if (this._static) {\n this._adapter.removeListener('click', this._clickListener);\n } else {\n this._adapter.addListener('click', this._clickListener);\n }\n\n if (this._static) {\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.STATIC);\n } else {\n this._adapter.removeHostAttribute(LIST_ITEM_CONSTANTS.attributes.STATIC);\n }\n }\n }\n\n /** Gets/sets whether the list item displays two lines of text. */\n public get twoLine(): boolean {\n return this._twoLine;\n }\n public set twoLine(value: boolean) {\n if (this._twoLine !== value) {\n this._twoLine = value;\n this._adapter.setTwoLine(this._twoLine);\n\n if (this._twoLine) {\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.TWO_LINE);\n } else {\n this._adapter.removeHostAttribute(LIST_ITEM_CONSTANTS.attributes.TWO_LINE);\n }\n }\n }\n\n /** Gets/sets whether the list item displays two lines of text. */\n public get threeLine(): boolean {\n return this._threeLine;\n }\n public set threeLine(value: boolean) {\n if (this._threeLine !== value) {\n this._threeLine = value;\n\n if (this._threeLine) {\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.THREE_LINE);\n } else {\n this._adapter.removeHostAttribute(LIST_ITEM_CONSTANTS.attributes.THREE_LINE);\n }\n\n if (this._threeLine) {\n this._twoLine = false;\n }\n\n this._adapter.setTwoLine(this._twoLine);\n this._adapter.setThreeLine(this._threeLine);\n }\n }\n\n /** Gets/sets whether the list item is active or not. */\n public get active(): boolean {\n return this._active;\n }\n public set active(value: boolean) {\n if (this._active !== value) {\n this._active = value;\n this._adapter.setActive(this._active);\n if (this._active) {\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.ACTIVE);\n } else {\n this._adapter.removeHostAttribute(LIST_ITEM_CONSTANTS.attributes.ACTIVE);\n }\n }\n }\n\n /** Gets/sets whether the list item is selected or not. */\n public get selected(): boolean {\n return this._selected;\n }\n public set selected(value: boolean) {\n if (this._selected !== value) {\n this._selected = value;\n this._adapter.setSelected(this._selected);\n this._adapter.tryToggleCheckboxRadio(this._selected);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.SELECTED, this._selected);\n }\n }\n\n /** Gets/sets the unique value for this list item. */\n public get value(): any {\n return this._value;\n }\n public set value(value: any) {\n this._value = value;\n const isSelected = this._adapter.trySelect(this._value);\n if(isSelected != null) {\n this._selected = isSelected;\n }\n }\n\n /** Gets/sets the href link that this list item will send the browser to when clicked. */\n public get href(): string {\n return this._href;\n }\n public set href(value: string) {\n if (this._href !== value) {\n this._href = value;\n if (this._href) {\n this._adapter.setRole(LIST_ITEM_CONSTANTS.roles.LINK);\n } else {\n this._adapter.setRole(LIST_ITEM_CONSTANTS.roles.LIST_ITEM);\n }\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.HREF, this._href);\n }\n }\n\n /** Gets/sets the href link target. */\n public get target(): string {\n return this._target;\n }\n public set target(value: string) {\n this._target = value;\n }\n\n /** Gets/sets the disabled state. */\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(this._disabled);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n /** Gets/sets the dense state. */\n public get dense(): boolean {\n return this._dense;\n }\n public set dense(value: boolean) {\n if (this._dense !== value) {\n this._dense = value;\n this._adapter.setDense(this._dense);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.DENSE, this._dense);\n }\n }\n\n /** Gets/sets the dense state. */\n public get propagateClick(): boolean {\n return this._propagateClick;\n }\n public set propagateClick(value: boolean) {\n if (this._propagateClick !== value) {\n this._propagateClick = value;\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.PROPAGATE_CLICK, '' + !!this._propagateClick);\n }\n }\n\n public get indented(): boolean {\n return this._indented;\n }\n public set indented(value: boolean) {\n if (this._indented !== value) {\n this._indented = value;\n this._adapter.setIndented(this._indented);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.INDENTED, this._indented);\n }\n }\n\n public get wrap(): boolean {\n return this._wrap;\n }\n public set wrap(value: boolean) {\n if (this._wrap !== value) {\n this._wrap = value;\n this._adapter.setWrap(this._wrap);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.WRAP, this._wrap);\n }\n }\n\n private async _setRipple(): Promise<void> {\n if (this._ripple && !this._static && !this._rippleInstance) {\n const { userInteraction, destroy } = await this._adapter.createUserInteractionListener();\n this._destroyUserInteractionListener = destroy;\n const { type } = await userInteraction;\n this._destroyUserInteractionListener = undefined;\n\n if (!this._adapter.isConnected) {\n return;\n }\n \n if (this._ripple && !this._static && !this._rippleInstance) {\n this._rippleInstance = this._adapter.createRipple();\n if (type === 'focusin') {\n this._rippleInstance.handleFocus();\n }\n }\n } else if ((!this._ripple || this._static) && this._rippleInstance) {\n this._rippleInstance.destroy();\n this._rippleInstance = undefined as any;\n }\n }\n\n /**\n * Sets focus to this list item.\n */\n public setFocus(): void {\n this._adapter.setFocus();\n }\n}\n", "import { CustomElement, attachShadowTemplate, requireParent, elementParents, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\nimport { ListItemAdapter } from './list-item-adapter';\nimport { ListItemFoundation } from './list-item-foundation';\nimport { IListItemSelectEventData, LIST_ITEM_CONSTANTS } from './list-item-constants';\nimport { LIST_CONSTANTS } from '../list/list-constants';\nimport { IListComponent } from '../list';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\n\nconst defaultTemplate = '<template><div class=\\\"forge-list-item\\\" tabindex=\\\"0\\\" part=\\\"root\\\"><slot name=\\\"leading\\\"></slot><slot name=\\\"avatar\\\"></slot><div class=\\\"forge-list-item__text\\\" part=\\\"text-container\\\"><slot></slot><slot name=\\\"title\\\"></slot><slot name=\\\"subtitle\\\"></slot><slot name=\\\"tertiary-title\\\"></slot><slot></slot></div><slot name=\\\"trailing\\\"></slot></div></template>';\nconst styles = '@-webkit-keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@-webkit-keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@-webkit-keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}@keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}.mdc-ripple-surface{--mdc-ripple-fg-size:0;--mdc-ripple-left:0;--mdc-ripple-top:0;--mdc-ripple-fg-scale:1;--mdc-ripple-fg-translate-end:0;--mdc-ripple-fg-translate-start:0;-webkit-tap-highlight-color:transparent;will-change:transform,opacity;position:relative;outline:0;overflow:hidden}.mdc-ripple-surface::after,.mdc-ripple-surface::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:\\\"\\\"}.mdc-ripple-surface::before{-webkit-transition:opacity 15ms linear,background-color 15ms linear;transition:opacity 15ms linear,background-color 15ms linear;z-index:1;z-index:var(--mdc-ripple-z-index,1)}.mdc-ripple-surface::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.mdc-ripple-surface.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.mdc-ripple-surface.mdc-ripple-upgraded::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.mdc-ripple-surface.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.mdc-ripple-surface.mdc-ripple-upgraded--foreground-activation::after{-webkit-animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards;animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards}.mdc-ripple-surface.mdc-ripple-upgraded--foreground-deactivation::after{-webkit-animation:mdc-ripple-fg-opacity-out 150ms;animation:mdc-ripple-fg-opacity-out 150ms;-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}.mdc-ripple-surface::after,.mdc-ripple-surface::before{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.mdc-ripple-surface.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded],.mdc-ripple-upgraded--unbounded{overflow:visible}.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::before,.mdc-ripple-upgraded--unbounded::after,.mdc-ripple-upgraded--unbounded::before{top:calc(50% - 50%);left:calc(50% - 50%);width:100%;height:100%}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::before,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::before{top:var(--mdc-ripple-top,calc(50% - 50%));left:var(--mdc-ripple-left,calc(50% - 50%));width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{background-color:#000;background-color:var(--mdc-ripple-color,#000)}.mdc-ripple-surface.mdc-ripple-surface--hover::before,.mdc-ripple-surface:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.mdc-ripple-surface.mdc-ripple-upgraded--background-focused::before,.mdc-ripple-surface:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.mdc-ripple-surface:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.mdc-ripple-surface:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.mdc-ripple-surface.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{--mdc-ripple-color:var(--mdc-theme-on-surface)}.forge-list-item{min-height:32px;min-height:var(--forge-list-item-min-height,32px);max-height:none;max-height:var(--forge-list-item-max-height,none);height:32px;height:var(--forge-list-item-height,32px);padding:8px 16px;padding:var(--forge-list-item-padding,8px 16px);margin-left:0;margin-left:var(--forge-list-item-indent,0);-webkit-box-align:center;align-items:center;-webkit-box-align:var(--forge-list-item-align-items,center);align-items:var(--forge-list-item-align-items,center);position:relative;display:-webkit-box;display:flex;-webkit-box-pack:start;justify-content:flex-start;overflow:hidden}.forge-list-item:focus{outline:0}.forge-list-item ::slotted([slot=leading]),.forge-list-item ::slotted([slot=trailing]){font-size:1.5rem}.forge-list-item ::slotted([slot=leading]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));margin-left:0;margin-left:var(--forge-list-item-leading-margin-left,0);margin-right:32px;margin-right:var(--forge-list-item-leading-margin-right,32px);display:-webkit-inline-box;display:inline-flex;flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;fill:currentColor}.forge-list-item ::slotted([slot=trailing]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-list-item ::slotted([slot=avatar]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));margin-left:0;margin-left:var(--forge-list-item-leading-margin-left,0);margin-right:32px;margin-right:var(--forge-list-item-leading-margin-right,32px);display:-webkit-inline-box;display:inline-flex;flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;fill:currentColor;margin-left:0;margin-right:16px;min-width:40px;min-height:40px;border-radius:50%;display:inline-flex;background-color:rgba(0,0,0,.54);background-color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));color:#fff;color:var(--mdc-theme-on-primary,#fff)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item{--mdc-ripple-fg-size:0;--mdc-ripple-left:0;--mdc-ripple-top:0;--mdc-ripple-fg-scale:1;--mdc-ripple-fg-translate-end:0;--mdc-ripple-fg-translate-start:0;-webkit-tap-highlight-color:transparent;will-change:transform,opacity}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:\\\"\\\"}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{-webkit-transition:opacity 15ms linear,background-color 15ms linear;transition:opacity 15ms linear,background-color 15ms linear;z-index:1;z-index:var(--mdc-ripple-z-index,1)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded--foreground-activation::after{-webkit-animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards;animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded--foreground-deactivation::after{-webkit-animation:mdc-ripple-fg-opacity-out 150ms;animation:mdc-ripple-fg-opacity-out 150ms;-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{background-color:#000;background-color:var(--mdc-ripple-color,var(--mdc-theme-on-surface,#000))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-surface--hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded--background-focused::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated::before{opacity:.12;opacity:var(--mdc-ripple-activated-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated::before{background-color:#3f51b5;background-color:var(--mdc-ripple-color,var(--mdc-theme-primary,#3f51b5))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated.mdc-ripple-surface--hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:hover::before{opacity:.16;opacity:var(--mdc-ripple-hover-opacity, .16)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated.mdc-ripple-upgraded--background-focused::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-focus-opacity, .24)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-press-opacity, .24)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.24)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected::before{opacity:.08;opacity:var(--mdc-ripple-selected-opacity, .08)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected::before{background-color:#3f51b5;background-color:var(--mdc-ripple-color,var(--mdc-theme-primary,#3f51b5))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected.mdc-ripple-surface--hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:hover::before{opacity:.12;opacity:var(--mdc-ripple-hover-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected.mdc-ripple-upgraded--background-focused::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.2;opacity:var(--mdc-ripple-focus-opacity, .2)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.2;opacity:var(--mdc-ripple-press-opacity, .2)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.2)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:focus:hover.mdc-ripple-upgraded--background-focused:not(.mdc-ripple-upgraded--foreground-activation)::before{opacity:.28}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before{opacity:.12}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation):hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation):hover::before{opacity:.16}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before{background-color:#000;background-color:var(--mdc-theme-on-surface,#000)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:focus.forge-list-item--selected.forge-list-item--activated:not(.mdc-ripple-upgraded--foreground-activation)::before{opacity:.24}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:focus.forge-list-item--selected.forge-list-item--activated:not(.mdc-ripple-upgraded--foreground-activation):hover::before{opacity:.28}.forge-list-item__text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:100%}.forge-list-item ::slotted([slot=title]){text-overflow:ellipsis;white-space:nowrap;overflow:hidden;display:block}.forge-list-item ::slotted([slot=subtitle]),.forge-list-item ::slotted([slot=tertiary-title]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit);text-overflow:ellipsis;white-space:nowrap;overflow:hidden;color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));display:block}.forge-list-item--two-line{min-height:56px;min-height:var(--forge-list-item-min-height,56px);height:56px;height:var(--forge-list-item-height,56px)}.forge-list-item--three-line{min-height:72px;min-height:var(--forge-list-item-min-height,72px);height:72px;height:var(--forge-list-item-height,72px)}.forge-list-item--dense{min-height:16px;min-height:var(--forge-list-item-min-height,16px);height:16px;height:var(--forge-list-item-height,16px)}.forge-list-item--dense ::slotted([slot=leading]),.forge-list-item--dense ::slotted([slot=trailing]){font-size:1.25rem}.forge-list-item--dense ::slotted([slot=leading]){margin-right:12px;margin-right:var(--forge-list-item-leading-margin-right,12px)}.forge-list-item--dense ::slotted(.forge-list-item__title){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit)}.forge-list-item--dense.forge-list-item--two-line{min-height:40px;min-height:var(--forge-list-item-min-height,40px)}.forge-list-item--dense.forge-list-item--three-line{min-height:56px;min-height:var(--forge-list-item-min-height,56px)}.forge-list-item--wrap{height:auto;height:var(--forge-list-item-height,auto)}.forge-list-item--wrap .forge-list-item__text,.forge-list-item--wrap ::slotted([slot=subtitle]),.forge-list-item--wrap ::slotted([slot=tertiary-title]),.forge-list-item--wrap ::slotted([slot=title]){text-overflow:clip;white-space:normal}.forge-list-item--indented{margin-left:56px;margin-left:var(--forge-list-item-indent,56px)}.forge-list-item--active.forge-list-item--activated:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before,.forge-list-item--active.forge-list-item--selected:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{opacity:.2}.forge-list-item--active.forge-list-item--activated:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:hover::before,.forge-list-item--active.forge-list-item--selected:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:hover::before{opacity:.24}.forge-list-item--activated,.forge-list-item--selected{color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5)}.forge-list-item--activated .forge-list-item__text .forge-list-item__subtitle,.forge-list-item--activated .forge-list-item__text ::slotted(.forge-list-item__subtitle),.forge-list-item--selected .forge-list-item__text .forge-list-item__subtitle,.forge-list-item--selected .forge-list-item__text ::slotted(.forge-list-item__subtitle){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5);opacity:.87}.forge-list-item--activated .forge-list-item__text .forge-list-item__tertiary-title,.forge-list-item--activated .forge-list-item__text ::slotted(.forge-list-item__tertiary-title),.forge-list-item--selected .forge-list-item__text .forge-list-item__tertiary-title,.forge-list-item--selected .forge-list-item__text ::slotted(.forge-list-item__tertiary-title){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5);opacity:.87}.forge-list-item--activated ::slotted([slot=leading]),.forge-list-item--activated ::slotted([slot=trailing]),.forge-list-item--selected ::slotted([slot=leading]),.forge-list-item--selected ::slotted([slot=trailing]){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5)}.forge-list-item--activated ::slotted([slot=avatar].forge-list-item__avatar-icon),.forge-list-item--selected ::slotted([slot=avatar].forge-list-item__avatar-icon){background-color:rgba(0,0,0,.12);background-color:var(--mdc-theme-text-disabled-on-background,rgba(0,0,0,.12));color:#000;color:var(--mdc-theme-on-surface,#000)}.forge-list-item--disabled{cursor:not-allowed;cursor:var(--forge-list-item-cursor,not-allowed);color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38))}.forge-list-item--disabled ::slotted([slot=leading]),.forge-list-item--disabled ::slotted([slot=trailing]){cursor:not-allowed;cursor:var(--forge-list-item-cursor,not-allowed);color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38))}.forge-list-item[role=link]{cursor:pointer}:host{display:block;contain:content}:host([hidden]){display:none}:host([forge-drawer-context=true]) .forge-list-item{margin:8px;margin:var(--forge-list-item-margin,8px);padding:0 8px;padding:var(--forge-list-item-padding,0 8px);border-radius:4px;border-radius:var(--forge-list-item-border-radius,4px);cursor:pointer;cursor:var(--forge-list-item-cursor,pointer);height:40px;height:var(--forge-list-item-height,40px);font-size:.875rem;font-weight:500}:host([forge-drawer-context=true]) .forge-list-item--static{cursor:initial}:host([forge-drawer-context=true]) .forge-list-item--indented{margin-left:64px;margin-left:var(--forge-list-item-indent,64px)}:host([forge-drawer-context=true]) .forge-list-item--two-line{min-height:56px-8px;min-height:var(--forge-list-item-min-height,56px-8px);height:56px-8px;height:var(--forge-list-item-height,56px-8px)}:host([forge-drawer-context=true]) .forge-list-item--three-line{min-height:72px-8px;min-height:var(--forge-list-item-min-height,72px-8px);height:72px-8px;height:var(--forge-list-item-height,72px-8px)}:host([forge-drawer-context=true]) .forge-list-item:first-child{margin-top:4px;margin-bottom:4px}:host([forge-drawer-context=true]) .forge-list-item--dense{min-height:16px;min-height:var(--forge-list-item-min-height,16px);height:16px;height:var(--forge-list-item-height,16px)}:host([forge-drawer-context=true]) .forge-list-item--dense ::slotted([slot=leading]),:host([forge-drawer-context=true]) .forge-list-item--dense ::slotted([slot=trailing]){font-size:1.25rem}:host([forge-drawer-context=true]) .forge-list-item--dense .forge-list-item__text{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit)}:host([forge-drawer-context=true]) .forge-list-item--wrap{height:auto;height:var(--forge-list-item-height,auto);padding:4px 8px;padding:var(--forge-list-item-padding,4px 8px);min-height:40px;min-height:var(--forge-list-item-min-height,40px)}:host([forge-drawer-context=true]) .forge-list-item--disabled{cursor:not-allowed;cursor:var(--forge-list-item-cursor,not-allowed)}:host([dense]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit)}';\n\nexport interface IListItemComponent extends IBaseComponent {\n static: boolean;\n twoLine: boolean;\n threeLine: boolean;\n active: boolean;\n selected: boolean;\n value: any;\n href: string;\n target: string;\n ripple: boolean;\n disabled: boolean;\n dense: boolean;\n propagateClick: boolean;\n indented: boolean;\n wrap: boolean;\n focus(): void;\n deactivateRipple(): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-list-item': IListItemComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-list-item-select': CustomEvent<IListItemSelectEventData>;\n }\n}\n\n/**\n * The custom element class behind the `<forge-list-item>` element.\n * \n * @tag forge-list-item\n */\n@CustomElement({\n name: LIST_ITEM_CONSTANTS.elementName\n})\nexport class ListItemComponent extends BaseComponent implements IListItemComponent {\n public static get observedAttributes(): string[] {\n return [\n LIST_ITEM_CONSTANTS.attributes.STATIC,\n LIST_ITEM_CONSTANTS.attributes.TWO_LINE,\n LIST_ITEM_CONSTANTS.attributes.THREE_LINE,\n LIST_ITEM_CONSTANTS.attributes.ACTIVE,\n LIST_ITEM_CONSTANTS.attributes.SELECTED,\n LIST_ITEM_CONSTANTS.attributes.VALUE,\n LIST_ITEM_CONSTANTS.attributes.HREF,\n LIST_ITEM_CONSTANTS.attributes.TARGET,\n LIST_ITEM_CONSTANTS.attributes.RIPPLE,\n LIST_ITEM_CONSTANTS.attributes.DISABLED,\n LIST_ITEM_CONSTANTS.attributes.DENSE,\n LIST_ITEM_CONSTANTS.attributes.PROPAGATE_CLICK,\n LIST_ITEM_CONSTANTS.attributes.INDENTED,\n LIST_ITEM_CONSTANTS.attributes.WRAP\n ];\n }\n\n private _foundation: ListItemFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, defaultTemplate, styles);\n this._foundation = new ListItemFoundation(new ListItemAdapter(this));\n }\n\n public connectedCallback(): void {\n // To simulate the :host-context() selector for Firefox until they implement it, we need to determine if the\n // list item is within a drawer for auto-styling the list item when included within a drawer. Check to see if\n // any of the parents of this element are a drawer.\n if (!this.hasAttribute(LIST_ITEM_CONSTANTS.attributes.DRAWER_CONTEXT) && elementParents(this).some(el => ['forge-drawer', 'forge-modal-drawer', 'forge-mini-drawer'].includes(el.tagName.toLowerCase()))) {\n this.setAttribute(LIST_ITEM_CONSTANTS.attributes.DRAWER_CONTEXT, 'true');\n }\n\n const list = requireParent<IListComponent>(this, LIST_CONSTANTS.elementName);\n if (list) {\n this._inheritParentListProps(list);\n }\n\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case LIST_ITEM_CONSTANTS.attributes.STATIC:\n this.static = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.TWO_LINE:\n this.twoLine = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.THREE_LINE:\n this.threeLine = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.ACTIVE:\n this.active = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.SELECTED:\n this.selected = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.VALUE:\n this.value = newValue;\n break;\n case LIST_ITEM_CONSTANTS.attributes.HREF:\n this.href = newValue;\n break;\n case LIST_ITEM_CONSTANTS.attributes.TARGET:\n this.target = newValue;\n break;\n case LIST_ITEM_CONSTANTS.attributes.RIPPLE:\n this.ripple = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.DENSE:\n this.dense = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.PROPAGATE_CLICK:\n this.propagateClick = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.INDENTED:\n this.indented = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.WRAP:\n this.wrap = coerceBoolean(newValue);\n break;\n }\n }\n\n private _inheritParentListProps(list: IListComponent): void {\n if (list.hasAttribute(LIST_CONSTANTS.attributes.STATIC)) {\n this.static = true;\n }\n if (list.hasAttribute(LIST_CONSTANTS.attributes.DENSE)) {\n this.dense = true;\n }\n if (list.getAttribute(LIST_CONSTANTS.attributes.PROPAGATE_CLICK) === 'false') {\n this.propagateClick = false;\n }\n if (list.hasAttribute(LIST_CONSTANTS.attributes.INDENTED)) {\n this.indented = true;\n }\n }\n\n /** Gets/sets whether the static state of this list item. */\n @FoundationProperty()\n public declare static: boolean;\n\n /** Gets/sets whether the list item displays two lines of text. */\n @FoundationProperty()\n public declare twoLine: boolean;\n\n /** Gets/sets whether the list item displays three lines of text. */\n @FoundationProperty()\n public declare threeLine: boolean;\n\n /** Gets/sets whether the list item is active or not. */\n @FoundationProperty()\n public declare active: boolean;\n\n /** Gets/sets whether the list item is selected or not. */\n @FoundationProperty()\n public declare selected: boolean;\n\n /** Gets/sets list item value. */\n @FoundationProperty()\n public declare value: any;\n\n /** Gets/sets the href link that this list item will send the browser to when clicked. */\n @FoundationProperty()\n public declare href: string;\n\n /** Gets/sets the href link target. Only pertains when `href` is also used. */\n @FoundationProperty()\n public declare target: string;\n\n /** Gets/sets whether the list item has a ripple or not. */\n @FoundationProperty()\n public declare ripple: boolean;\n\n /** Gets/sets whether the list item is disabled or not. */\n @FoundationProperty()\n public declare disabled: boolean;\n\n /** Gets/sets whether the list item is using dense styles or not. */\n @FoundationProperty()\n public declare dense: boolean;\n\n /** Gets/sets whether the list item allows mousedown events through to the underlying list item element. Default is true. */\n @FoundationProperty()\n public declare propagateClick: boolean;\n\n /** Gets/sets whether the list item is indented or not. Default is false. */\n @FoundationProperty()\n public declare indented: boolean;\n\n /** Gets/sets whether the list item content is wrapped or not. Default is true. */\n @FoundationProperty()\n public declare wrap: boolean;\n\n /** Sets focus to this list item. */\n public override focus(): void {\n this._foundation.setFocus();\n }\n\n public deactivateRipple(): void {\n this._foundation.deactivateRipple();\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\nimport { ListItemComponent } from './list-item';\n\nexport * from './list-item-adapter';\nexport * from './list-item-constants';\nexport * from './list-item-foundation';\nexport * from './list-item';\n\nexport function defineListItemComponent(): void {\n defineCustomElement(ListItemComponent);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["elementName", "COMPONENT_NAME_PREFIX", "attributes", "events", "LIST_CONSTANTS", "elementName", "COMPONENT_NAME_PREFIX", "attributes", "classes", "selectors", "events", "roles", "LIST_ITEM_CONSTANTS", "ListItemAdapter", "BaseAdapter", "component", "getShadowElement", "LIST_ITEM_CONSTANTS", "type", "listener", "options", "ForgeRipple", "value", "addClass", "removeClass", "e", "checkable", "force", "currentState", "_a", "role", "disabled", "toggleClass", "dense", "indented", "list", "requireParent", "LIST_CONSTANTS", "isSelected", "v", "isDeepEqual", "createUserInteractionListener", "ListItemFoundation", "_adapter", "evt", "isSelected", "_a", "targetElement", "ignoreElement", "LIST_ITEM_CONSTANTS", "matchesSelectors", "data", "value", "userInteraction", "destroy", "type", "defaultTemplate", "styles", "ListItemComponent", "BaseComponent", "attachShadowTemplate", "ListItemFoundation", "ListItemAdapter", "LIST_ITEM_CONSTANTS", "elementParents", "el", "list", "requireParent", "LIST_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "__decorateClass", "FoundationProperty", "CustomElement", "defineListItemComponent", "defineCustomElement", "ListItemComponent"]
|
|
7
|
+
}
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
4
|
* License: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import{a as f}from"./chunk.
|
|
7
|
-
//# sourceMappingURL=chunk.
|
|
6
|
+
import{a as f}from"./chunk.E3K6KM57.js";import{w as i}from"./chunk.MZLPUI6R.js";import{d as c}from"./chunk.TEHQWMFI.js";import{d as a,l}from"./chunk.WHQZNZHW.js";import{a as m,b as r}from"./chunk.DL7NX432.js";import{a as o,d as n,l as p}from"./chunk.LJLEPTLU.js";import{f as t}from"./chunk.MCIQXNKY.js";var s=`${r}app-bar-menu-button`,u={elementName:s};var g='<template><forge-icon-button style="width: 48px; height: 48px; display: flex; justify-content: center; align-items: center;"><button type="button" aria-label="Toggle navigation menu"><forge-icon name="menu"></forge-icon></button><forge-tooltip delay="500" position="bottom">Menu</forge-tooltip></forge-icon-button></template>',e=class extends p{constructor(){super(),a.define(i)}initializedCallback(){n(this,g)}};e=t([m({name:u.elementName,dependencies:[f,c,l]})],e);function O(){o(e)}export{u as a,e as b,O as c};
|
|
7
|
+
//# sourceMappingURL=chunk.C3G25JFG.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Tyler Technologies, Inc.
|
|
4
|
+
* License: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import{a as L}from"./chunk.SGTKZRDH.js";import{b as o}from"./chunk.UNFOIEF6.js";import{a as G}from"./chunk.EQEMCHMB.js";import{h as P,i as k}from"./chunk.LEINPSKL.js";import{a as V}from"./chunk.WCSVKQR2.js";import{a as B}from"./chunk.UWYANU5D.js";import{a as d}from"./chunk.KTGSZEAG.js";import{i as S}from"./chunk.4LA6HEA7.js";import{a as T,b as c,j as I,k as y,n as x}from"./chunk.J2M2MXP2.js";import{a as b,f as a}from"./chunk.MCIQXNKY.js";var M={VALUE:"value",MULTIPLE:"multiple",OBSERVE_SCROLL:"observe-scroll",OBSERVE_SCROLL_THRESHOLD:"observe-scroll-threshold",POPUP_CLASSES:"popup-classes",OPTION_LIMIT:"option-limit",SYNC_POPUP_WIDTH:"sync-popup-width",CONSTRAIN_POPUP_WIDTH:"constrain-popup-width",WRAP_OPTION_TEXT:"wrap-option-text"},U=b({},M),R={CHANGE:"change"},m={attributes:U,events:R};var N=(e=>(e[e.Option=0]="Option",e[e.Group=1]="Group",e))(N||{});function C(r,O){let e=r.some(i=>D(i)),t=r.some(i=>W(i));return e&&O===1||t&&O===0}function D(r){return c(r)&&I(r)&&r.hasOwnProperty("options")}function W(r){return c(r)&&I(r)&&r.hasOwnProperty("label")&&r.hasOwnProperty("value")}var H=class extends k{constructor(e){super();this._adapter=e;this._options=[];this._value=[];this._multiple=!1;this._open=!1;this._selectedValues=[];this._selectedLabels=[];this._selectedIndexes=[];this._filterString="";this._focusListener=t=>this._onFocus(t),this._blurListener=t=>this._onBlur(t),this._clickListener=t=>this._onClick(t),this._keydownListener=t=>this._onKeydown(t),this._optionsChangedListener=t=>this._onOptionsChanged(t),this._activeChangeListener=t=>this._onActiveOptionChanged(t),this._dropdownScrollEndListener=()=>this._onDropdownScrollEnd(),this._dismissListener=()=>this._onDismiss(),this._identifier=T()}_onFocus(e){}initialize(){this._optionListenerDestructor&&this._optionListenerDestructor(),this._optionListenerDestructor=this._adapter.setOptionsListener(this._optionsChangedListener),this._initializeValue()}initializeTarget(){this._adapter.initializeAccessibility(),this._adapter.addClickListener(this._clickListener),this._adapter.addTargetListener("blur",this._blurListener),this._adapter.addTargetListener("focus",this._focusListener),this._adapter.addTargetListener("keydown",this._keydownListener)}disconnect(){this._adapter.removeClickListener(this._clickListener),this._adapter.removeTargetListener("blur",this._blurListener),this._adapter.removeTargetListener("focus",this._focusListener),this._adapter.removeTargetListener("keydown",this._keydownListener),this._open&&this._closeDropdown(),this._optionListenerDestructor&&this._optionListenerDestructor()}appendOptions(e){this._adapter.setOptions(e,!1),this._open&&this._adapter.appendDropdownOptions(e)}selectAll(){this._multiple&&(this.value=this._flatOptions.map(e=>e.value))}deselectAll(){this._multiple&&(this.value=[])}get _flatOptions(){return C(this._options,1)?[].concat.apply([],this._options.map(e=>e.options)):this._options}get _nonDividerOptions(){return this._flatOptions.filter(e=>!e.divider)}_initializeValue(){let e=this._options.length&&this._options||this._adapter.getOptions();c(this._value)&&e.length&&this._applyValue(this._value)}_onClick(e){e.button===0&&(this._open?this._closeDropdown():this._openDropdown())}_onBlur(e){this._adapter.isFocusWithinPopup(e.relatedTarget)||this._open&&this._closeDropdown()}_openDropdown(){if(this._options=this._adapter.getOptions(),!this._flatOptions.length)return;this._open=!0;let e={options:this._options,referenceElement:this._adapter.hostElement,multiple:this._multiple,selectedValues:[...this._selectedValues],id:this._identifier,optionBuilder:this._optionBuilder,syncWidth:this._syncPopupWidth,constrainViewportWidth:this._constrainPopupWidth,wrapOptionText:this._wrapOptionText,observeScroll:this._observeScroll,observeScrollThreshold:this._observeScrollThreshold,scrollEndListener:this._dropdownScrollEndListener,activeChangeCallback:this._activeChangeListener,targetWidthCallback:this._targetWidthCallback,popupClasses:this._popupClasses,optionLimit:this._optionLimit,headerBuilder:this._popupHeaderBuilder,footerBuilder:this._popupFooterBuilder,closeCallback:()=>this._closeDropdown(),selectCallback:t=>{let i=this._flatOptions,n=i.find(l=>l.value===t);if(n){let l=i.indexOf(n);this._onSelect(n,l,!0)}}};this._adapter.open(e),this._adapter.setDismissListener(this._dismissListener)}_closeDropdown(){this._open=!1,this._adapter.close()}async _onSelect(e,t,i=!0){return new Promise(async n=>{if(this._valueChanging)return Promise.resolve(!1);let l=e?e.value:"",u=e?e.label:"",f=[...this._value],v=[...this._selectedValues],g=[...this._selectedLabels],E=[...this._selectedIndexes];if(this._multiple)if(this._selectedValues.includes(l)){let h=this._selectedValues.indexOf(l);this._selectedValues.splice(h,1),this._selectedLabels.splice(h,1),this._selectedIndexes.splice(h,1)}else this._selectedValues.push(l),this._selectedLabels.push(u),this._selectedIndexes.push(t);else c(l)?(this._selectedValues[0]=l,this._selectedLabels[0]=u,this._selectedIndexes[0]=t):(this._selectedValues=[],this._selectedLabels=[],this._selectedIndexes=[]);this._value=[...this._selectedValues];let s=()=>{this._selectedValues=[...v],this._selectedLabels=[...g],this._selectedIndexes=[...E],this._value=[...f]},_=()=>{if(this._multiple){let h=this._selectedIndexes.includes(t);this._adapter.toggleOptionMultiple(t,h)}this._applySelection()},w=this.multiple?[...this._selectedValues]:this._selectedValues[0];if(this._open&&i&&!this._multiple&&this._closeDropdown(),typeof this._beforeValueChange=="function"){this._valueChanging=Promise.resolve(this._beforeValueChange.call(null,w));let h=await this._valueChanging;if(this._valueChanging=void 0,!h)return s(),this._tryUpdateDropdownPosition(),n(!1)}let A=!this._adapter.emitHostEvent(m.events.CHANGE,w,!0,!0);A?s():_(),this._tryUpdateDropdownPosition(),n(!A)})}_selectActiveOption(){let e=this._adapter.getActiveOptionIndex();e>=0&&this._nonDividerOptions[e]&&this._onSelect(this._nonDividerOptions[e],e)}_tryUpdateDropdownPosition(){this._open&&this._adapter.queueDropdownPositionUpdate()}_reset(){this._selectedValues=[],this._selectedLabels=[],this._selectedIndexes=[]}_applyValue(e){this._selectedValues=[],this._selectedLabels=[],this._options=this._adapter.getOptions(),Array.isArray(e)||(e=[e]),this._value=[];for(let t of e){this._value.includes(t)||this._value.push(t);let i=this._flatOptions.find(n=>x(n.value,t));i&&(this._selectedValues.push(i.value),this._selectedLabels.push(i.label))}this._selectedIndexes=this._selectedValues.map(t=>this._flatOptions.findIndex(i=>i.value===t)),this._adapter.patchSelectedValues(this._selectedValues)}_onDismiss(){this._closeDropdown()}_getSelectedText(){if(typeof this._selectedTextBuilder=="function"){let e=this._flatOptions.filter(t=>this._selectedValues.includes(t.value));return this._selectedTextBuilder(e)}return this._multiple?this._selectedLabels.length?this._selectedLabels.length===1?this._selectedLabels[0]:`${this._selectedLabels.length} options selected`:"":this._selectedLabels.filter(e=>e&&e.length).join(" ").trim()}_onKeydown(e){let t=e.key==="Escape"||e.keyCode===27,i=e.key==="Enter"||e.keyCode===13,n=e.key==="Space"||e.keyCode===32,l=e.key==="ArrowDown"||e.keyCode===40,u=e.key==="ArrowUp"||e.keyCode===38,f=e.keyCode>=48&&e.keyCode<=90,v=e.key==="Home"||e.keyCode===36,g=e.key==="End"||e.keyCode===35;if(e.key==="Tab"&&this._open&&!this._multiple){this._selectActiveOption();return}if(!f&&this._filterTimeout&&(window.clearTimeout(this._filterTimeout),this._filterString="",this._filterTimeout=void 0),t&&(e.preventDefault(),e.stopPropagation(),this._open)){this._closeDropdown();return}if(n)e.preventDefault(),this._open?this._closeDropdown():this._openDropdown();else if(i)this._open&&(e.stopPropagation(),e.preventDefault(),this._options=this._adapter.getOptions(),this._selectActiveOption());else if(u||l){if(e.preventDefault(),!this._open){this._openDropdown(),this._adapter.activateFirstOption();return}if(this._flatOptions.length===0)return;let s=0;this._open?(s=this._adapter.getActiveOptionIndex(),s===-1&&(s=this._getFirstSelectedOptionIndex())):s=this._getFirstSelectedOptionIndex(),u?s=this._getPreviousHighlightableOptionIndex(s,this._nonDividerOptions):s=this._getNextHighlightableOptionIndex(s,this._nonDividerOptions),this._adapter.highlightActiveOption(s)}else if(v)this._open&&(e.preventDefault(),this._adapter.highlightActiveOption(this._nonDividerOptions.findIndex(s=>!s.disabled)));else if(g){if(this._open){e.preventDefault();let s=this._nonDividerOptions;for(let _=s.length-1;_>=0;_--)if(!s[_].disabled){this._adapter.highlightActiveOption(_);break}}}else f&&this._filter(e.key)}_getFirstSelectedOptionIndex(){return this._nonDividerOptions.findIndex(e=>this._selectedValues.includes(e.value))}_getPreviousHighlightableOptionIndex(e,t){let i=e;return i<=0?i=t.length-1:i--,t[i].disabled?this._getPreviousHighlightableOptionIndex(i,t):i}_getNextHighlightableOptionIndex(e,t){let i=e;return i===t.length-1?i=0:i++,t[i].disabled?this._getNextHighlightableOptionIndex(i,t):i}_filter(e){this._filterTimeout&&(window.clearTimeout(this._filterTimeout),this._filterTimeout=void 0),this._filterString+=e,this._filterTimeout=window.setTimeout(()=>{this._filterString="",this._filterTimeout=void 0},300),this._options=this._adapter.getOptions();let t=this._flatOptions.find(({disabled:i,label:n})=>!i&&n.trim().toLowerCase().startsWith(this._filterString.trim().toLowerCase()));if(t){let i=this._flatOptions.indexOf(t);this._open?this._adapter.highlightActiveOption(i):this._multiple||this._onSelect(t,i,!1)}}_onOptionsChanged(e){this._options=e,this._applyValue(this._value)}_onActiveOptionChanged(e){this._adapter.updateActiveDescendant(e)}get value(){return this._multiple?[...this._value]:this._value[0]}set value(e){let t;Array.isArray(e)?t=[...e]:t=e,this._applyValue(t)}get selectedIndex(){return this._multiple?[...this._selectedIndexes]:this._selectedIndexes[0]}set selectedIndex(e){this._options=this._adapter.getOptions();let t;if(Array.isArray(e)?t=[...e]:t=[e],t.sort(),this.multiple)this.value=t.map(i=>this._flatOptions[i]).filter(i=>i).map(i=>i.value);else{let i=this._flatOptions[t[t.length-1]];if(!i)return;this.value=i.value}}get options(){return this._adapter.getOptions()}set options(e){let t;C(e,1)?t=e.map(i=>b({},i)):t=e.map(i=>b({},i)),this._options=t,this._adapter.setOptions(t),this._initializeValue(),this._open&&this._adapter.setDropdownOptions(t)}get multiple(){return this._multiple}set multiple(e){this._multiple!==e&&(this._multiple=e,this._reset(),this._open&&this._closeDropdown())}get open(){return this._open}set open(e){this._open!==e&&(e?this._openDropdown():this._closeDropdown())}get optionBuilder(){return this._optionBuilder}set optionBuilder(e){this._optionBuilder=e}get selectedTextBuilder(){return this._selectedTextBuilder}set selectedTextBuilder(e){this._selectedTextBuilder=e}get optionLimit(){return this._optionLimit}set optionLimit(e){this._optionLimit=e}get popupClasses(){return this._popupClasses}set popupClasses(e){this._popupClasses=e}get popupHeaderBuilder(){return this._popupHeaderBuilder}set popupHeaderBuilder(e){this._popupHeaderBuilder=e}get popupFooterBuilder(){return this._popupFooterBuilder}set popupFooterBuilder(e){this._popupFooterBuilder=e}get popupElement(){return this._adapter.popupElement}get beforeValueChange(){return this._beforeValueChange}set beforeValueChange(e){this._beforeValueChange=e}};var p=class extends G{constructor(){super()}attributeChangedCallback(e,t,i){switch(super.attributeChangedCallback(e,t,i),e){case m.attributes.MULTIPLE:this.multiple=y(i);break;case m.attributes.VALUE:this.value=i;break}}appendOptions(e){this._foundation.appendOptions(e)}selectAll(){this._foundation.selectAll()}deselectAll(){this._foundation.deselectAll()}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}};a([d()],p.prototype,"value",2),a([d()],p.prototype,"selectedIndex",2),a([d()],p.prototype,"options",2),a([d()],p.prototype,"multiple",2),a([d()],p.prototype,"open",2),a([d()],p.prototype,"optionBuilder",2),a([d()],p.prototype,"selectedTextBuilder",2),a([d()],p.prototype,"beforeValueChange",2),a([d({set:!1})],p.prototype,"popupElement",2);var F=class extends B{constructor(e){super(e)}get popupElement(){var e;return(e=this._listDropdown)==null?void 0:e.dropdownElement}getOptions(){let e=Array.from(this._component.querySelectorAll(L.elementName));if(e.length)return e.map(t=>{let i=Array.from(t.querySelectorAll(o.elementName)),n=this._createOptionsFromElements(i);return{text:t.label,builder:t.builder,value:t.value,options:n}});{let t=Array.from(this._component.querySelectorAll(o.elementName));return this._createOptionsFromElements(t)}}_createOptionsFromElements(e){return e.map(t=>{let i=t.hasAttribute(o.attributes.OPTION_CLASS)?t.getAttribute(o.attributes.OPTION_CLASS):t.optionClass;return typeof i=="string"&&(i=i.split(" ")),{label:t.hasAttribute(o.attributes.LABEL)?t.getAttribute(o.attributes.LABEL):c(t.label)?t.label:t.innerText,secondaryLabel:t.hasAttribute(o.attributes.SECONDARY_LABEL)?t.getAttribute(o.attributes.SECONDARY_LABEL):c(t.secondaryLabel)?t.secondaryLabel:void 0,value:t.hasAttribute(o.attributes.VALUE)?t.getAttribute(o.attributes.VALUE):t.value,disabled:t.hasAttribute(o.attributes.DISABLED),divider:t.hasAttribute(o.attributes.DIVIDER),optionClass:i,leadingIcon:t.hasAttribute(o.attributes.LEADING_ICON)?t.getAttribute(o.attributes.LEADING_ICON):t.leadingIcon,leadingIconClass:t.hasAttribute(o.attributes.LEADING_ICON_CLASS)?t.getAttribute(o.attributes.LEADING_ICON_CLASS):t.leadingIconClass,leadingIconType:t.hasAttribute(o.attributes.LEADING_ICON_TYPE)?t.getAttribute(o.attributes.LEADING_ICON_TYPE):t.leadingIconType,leadingIconComponentProps:t.leadingIconComponentProps,trailingIcon:t.hasAttribute(o.attributes.TRAILING_ICON)?t.getAttribute(o.attributes.TRAILING_ICON):t.trailingIcon,trailingIconClass:t.hasAttribute(o.attributes.TRAILING_ICON_CLASS)?t.getAttribute(o.attributes.TRAILING_ICON_CLASS):t.trailingIconClass,trailingIconType:t.hasAttribute(o.attributes.TRAILING_ICON_TYPE)?t.getAttribute(o.attributes.TRAILING_ICON_TYPE):t.trailingIconType,trailingIconComponentProps:t.trailingIconComponentProps,leadingBuilder:t.leadingBuilder,trailingBuilder:t.trailingBuilder}})}open(e){this._listDropdown=new P(this._targetElement,e),this._listDropdown.open()}close(){this._listDropdown&&(this._listDropdown.close(),this._listDropdown.destroy(),this._listDropdown=void 0)}setDismissListener(e){if(!this._listDropdown||!this._listDropdown.dropdownElement)return;let t=this._listDropdown.dropdownElement;t.targetElement&&t.targetElement.addEventListener(V.events.BLUR,e)}toggleOptionMultiple(e,t){var i;(i=this._listDropdown)==null||i.toggleOptionMultiple(e,t)}getActiveOptionIndex(){var e,t;return(t=(e=this._listDropdown)==null?void 0:e.getActiveOptionIndex())!=null?t:-1}activateSelectedOption(){var e;(e=this._listDropdown)==null||e.activateSelectedOption()}activateFirstOption(){var e;(e=this._listDropdown)==null||e.activateFirstOption()}highlightActiveOption(e){var t;(t=this._listDropdown)==null||t.activateOption(e)}patchSelectedValues(e){var t;(t=this._listDropdown)==null||t.setSelectedValues(e)}setOptionsListener(e){let t=n=>{n.stopPropagation(),e(this.getOptions())};this._component.addEventListener(o.events.VALUE_CHANGE,t);let i=new MutationObserver(()=>e(this.getOptions()));return i.observe(this._component,{childList:!0,subtree:!0}),()=>{this._component.removeEventListener(o.events.VALUE_CHANGE,t),i.disconnect()}}setOptions(e,t=!0){t&&this._clearOptions();for(let i of e)if(D(i)){let n=this._createOptionGroupElement(i);for(let l of i.options){let u=this._createOptionElement(l);n.appendChild(u)}this._component.appendChild(n)}else{let n=this._createOptionElement(i);this._component.appendChild(n)}}appendDropdownOptions(e){var t;(t=this._listDropdown)==null||t.appendOptions(e)}setDropdownOptions(e){var t;(t=this._listDropdown)==null||t.setOptions(e)}scrollSelectedOptionIntoView(){var e;(e=this._listDropdown)==null||e.scrollSelectedOptionIntoView()}isFocusWithinPopup(e){return!this._listDropdown||!this._listDropdown.dropdownElement?!1:this._listDropdown.dropdownElement.contains(e)}queueDropdownPositionUpdate(){!this.popupElement||window.requestAnimationFrame(()=>{let e=this.popupElement;e==null||e.position()})}_clearOptions(){Array.from(this._component.querySelectorAll(L.elementName)).forEach(i=>S(i)),Array.from(this._component.querySelectorAll(o.elementName)).forEach(i=>S(i))}_createOptionGroupElement(e){let t=document.createElement("forge-option-group");return Object.assign(t,e),t}_createOptionElement(e){let t=document.createElement("forge-option");return Object.assign(t,e),t.textContent=e.label,t}};export{m as a,N as b,C as c,D as d,W as e,H as f,p as g,F as h};
|
|
7
|
+
//# sourceMappingURL=chunk.CL4FTBLR.js.map
|