@m3e/web 2.5.14 → 2.5.15
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/dist/all.js +133 -81
- package/dist/all.js.map +1 -1
- package/dist/all.min.js +35 -35
- package/dist/all.min.js.map +1 -1
- package/dist/core.js +46 -11
- package/dist/core.js.map +1 -1
- package/dist/core.min.js +1 -1
- package/dist/core.min.js.map +1 -1
- package/dist/css-custom-data.json +20 -0
- package/dist/custom-elements.json +89 -30
- package/dist/datepicker.js +0 -2
- package/dist/datepicker.js.map +1 -1
- package/dist/datepicker.min.js +1 -1
- package/dist/datepicker.min.js.map +1 -1
- package/dist/form-field.js +1 -1
- package/dist/form-field.js.map +1 -1
- package/dist/form-field.min.js +1 -1
- package/dist/form-field.min.js.map +1 -1
- package/dist/html-custom-data.json +2 -2
- package/dist/nav-bar.js +4 -2
- package/dist/nav-bar.js.map +1 -1
- package/dist/nav-bar.min.js +1 -1
- package/dist/nav-bar.min.js.map +1 -1
- package/dist/nav-rail.js +1 -1
- package/dist/nav-rail.js.map +1 -1
- package/dist/nav-rail.min.js +1 -1
- package/dist/nav-rail.min.js.map +1 -1
- package/dist/skeleton.js +81 -65
- package/dist/skeleton.js.map +1 -1
- package/dist/skeleton.min.js +1 -1
- package/dist/skeleton.min.js.map +1 -1
- package/dist/slider.js +1 -0
- package/dist/slider.js.map +1 -1
- package/dist/slider.min.js +1 -1
- package/dist/slider.min.js.map +1 -1
- package/dist/src/core/shared/primitives/CollapsibleElement.d.ts +1 -1
- package/dist/src/core/shared/primitives/CollapsibleElement.d.ts.map +1 -1
- package/dist/src/core/shared/primitives/CollapsibleOrientation.d.ts +1 -1
- package/dist/src/core/shared/primitives/CollapsibleOrientation.d.ts.map +1 -1
- package/dist/src/datepicker/DatepickerElement.d.ts.map +1 -1
- package/dist/src/form-field/FormFieldElement.d.ts.map +1 -1
- package/dist/src/nav-bar/NavBarElement.d.ts +2 -0
- package/dist/src/nav-bar/NavBarElement.d.ts.map +1 -1
- package/dist/src/nav-bar/NavItemElement.d.ts.map +1 -1
- package/dist/src/nav-rail/NavRailElement.d.ts.map +1 -1
- package/dist/src/skeleton/SkeletonElement.d.ts +12 -6
- package/dist/src/skeleton/SkeletonElement.d.ts.map +1 -1
- package/dist/src/slider/SliderElement.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/slider.min.js
CHANGED
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* Copyright (c) 2025–2026 matraic
|
|
4
4
|
* See LICENSE file in the project root for full license text.
|
|
5
5
|
*/
|
|
6
|
-
import{__classPrivateFieldGet as e,__decorate as t,__classPrivateFieldSet as i}from"tslib";import{LitElement as a,html as s,unsafeCSS as r,css as l}from"lit";import{query as n,property as h,state as c}from"lit/decorators.js";import{ifDefined as o}from"lit/directives/if-defined.js";import{Dirty as d,Touched as m,FormAssociated as p,Focusable as u,Disabled as v,AttachInternals as b,Role as f,formValue as k,DesignToken as g,customElement as y,ResizeController as x,safeStyleMap as $,hasCustomState as _,deleteCustomState as w,prefersReducedMotion as T,addCustomState as z}from"@m3e/web/core";import{M3eDirectionality as E}from"@m3e/web/core/bidi";var M,S;let P=class extends(d(m(p(u(v(b(f(a,"slider")))))))){constructor(){super(...arguments),M.add(this),this.value=null}get[(M=new WeakSet,k)](){return this.value?.toString()??null}focus(e){this._focusRing&&(this._focusRing.disabled=!0),super.focus(e),this._focusRing&&(this._focusRing.disabled=this.disabled)}firstUpdated(e){super.firstUpdated(e),this._focusRing?.attach(this)}update(e){super.update(e),e.has("value")&&this.dispatchEvent(new Event("value-change",{bubbles:!0}))}render(){return s`<div class="label" aria-hidden="true">${e(this,M,"a",S)}</div><div class="base"><m3e-focus-ring class="focus-ring" ?disabled="${this.disabled}"></m3e-focus-ring><div class="touch" aria-hidden="true"></div><div class="wrapper"><div class="handle"></div></div></div>`}};var C,W,L,D,R,A,j,U,H,N,B,G,I,V,O,X,q,F,J,K,Q,Y,Z,ee;S=function(){return this.closest("m3e-slider")?.displayWith?.(this.value)??this.value?.toString()??""},P.styles=l`:host { display: block; box-sizing: border-box; position: absolute; outline: none; top: 0; bottom: 0; border-radius: var(--m3e-slider-thumb-shape, ${g.shape.corner.full}); user-select: none; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } .base { contain: layout style; box-sizing: border-box; vertical-align: middle; display: inline-flex; align-items: center; justify-content: center; position: relative; width: 100%; height: 100%; border-radius: inherit; } .touch { position: absolute; height: 3rem; left: 0; right: 0; touch-action: none; } .wrapper { display: inline-flex; justify-content: center; height: 100%; border-radius: inherit; width: calc(var(--m3e-slider-thumb-width, 0.25rem) + calc(var(--m3e-slider-thumb-padding, 0.375em) * 2)); } .focus-ring { top: calc(0px - var(--m3e-focus-ring-thickness, 3px)); bottom: calc(0px - var(--m3e-focus-ring-thickness, 3px)); left: var(--m3e-focus-ring-thickness, 3px); right: var(--m3e-focus-ring-thickness, 3px); } .label { user-select: none; position: absolute; display: flex; align-items: center; justify-content: center; visibility: var(--_slider-label-visibility, hidden); opacity: var(--_slider-label-opacity, 0); transform: var(--_slider-label-transform, scale(0)); transition: ${r(`opacity ${g.motion.duration.short3} ${g.motion.easing.standard}, \n transform ${g.motion.duration.short3} ${g.motion.easing.standard},\n visibility ${g.motion.duration.short3} ${g.motion.easing.standard} allow-discrete`)}; width: var(--m3e-slider-label-width, 3rem); height: var(--_m3e-slider-label-height, 2.75rem); top: calc(0px - var(--_m3e-slider-label-height, 2.75rem) - var(--_m3e-slider-label-margin, 0.25rem)); inset-inline-start: calc(0px - 100%); border-radius: var(--m3e-slider-label-shape, ${g.shape.corner.full}); background-color: var(--m3e-slider-label-container-color, ${g.color.inverseSurface}); color: var(--m3e-slider-label-color, ${g.color.inverseOnSurface}); font-size: var(--m3e-slider-label-font-size, ${g.typescale.standard.label.medium.fontSize}); font-weight: var(--m3e-slider-label-font-weight, ${g.typescale.standard.label.medium.fontWeight}); line-height: var(--m3e-slider-label-line-height, ${g.typescale.standard.label.medium.lineHeight}); letter-spacing: var(--m3e-slider-label-tracking, ${g.typescale.standard.label.medium.tracking}); } @starting-style { .label { opacity: 0; transform: scale(0); } } .handle { height: 100%; width: var(--m3e-slider-thumb-width, 0.25rem); border-radius: inherit; transition: ${r(`width ${g.motion.duration.short2} ${g.motion.easing.standard}`)}; } :host(:active:not([aria-disabled="true"])) .handle { width: var(--m3e-slider-thumb-pressed-width, 2px); } :host(:not([aria-disabled="true"])) .handle { background-color: var(--m3e-slider-thumb-color, ${g.color.primary}); } :host([aria-disabled="true"]) .handle { opacity: var(--m3e-slider-thumb-disabled-opacity, 38%); background-color: var(--m3e-slider-thumb-disabled-color, ${g.color.onSurface}); } @media (prefers-reduced-motion) { .label { transition: none; } } @media (forced-colors: active) { .label { forced-color-adjust: none; background-color: CanvasText; color: Canvas; } :host(:not([aria-disabled="true"])) .handle { background-color: CanvasText; } :host([aria-disabled="true"]) .handle { opacity: unset; background-color: GrayText; } }`,t([n(".focus-ring")],P.prototype,"_focusRing",void 0),t([h({type:Number,reflect:!0})],P.prototype,"value",void 0),P=t([y("m3e-slider-thumb")],P);let te=class extends(b(a)){constructor(){super(),C.add(this),W.set(this,void 0),this._ticks=new Array,L.set(this,new Set),D.set(this,new Array),R.set(this,void 0),A.set(this,0),j.set(this,0),U.set(this,0),this.size="extra-small",this.disabled=!1,this.discrete=!1,this.min=0,this.max=100,this.step=1,this.labelled=!1,this.displayWith=null,new x(this,{callback:()=>e(this,C,"m",O).call(this,!0)})}get thumbs(){return e(this,D,"f")}get isRange(){return e(this,D,"f").length>1}get thumb(){return e(this,D,"f")[0]??null}get lowerThumb(){return this.thumb}get upperThumb(){return e(this,D,"f")[1]??null}connectedCallback(){super.connectedCallback(),i(this,W,E.observe(()=>{e(this,C,"m",O).call(this,!0),this.requestUpdate()}),"f")}disconnectedCallback(){super.disconnectedCallback(),e(this,L,"f").clear(),e(this,W,"f")?.call(this)}updated(t){super.updated(t),t.has("disabled")&&e(this,D,"f").forEach(e=>e.disabled=this.disabled)}render(){return s`<div class="base" tabindex="${o(this.disabled?void 0:"-1")}" @pointerdown="${e(this,C,"m",q)}" @pointermove="${e(this,C,"m",F)}" @pointerup="${e(this,C,"m",J)}" @keydown="${e(this,C,"m",K)}" @keyup="${e(this,C,"m",Q)}" @value-change="${e(this,C,"m",Y)}"><div class="track" aria-hidden="true"><div class="track-inactive start"></div><div class="track-active"></div><div class="track-inactive end"></div></div><div class="ticks" aria-hidden="true">${this._ticks.map(t=>e(this,C,"m",H).call(this,t))}</div><slot @slotchange="${e(this,C,"m",N)}"></slot></div>`}};W=new WeakMap,L=new WeakMap,D=new WeakMap,R=new WeakMap,A=new WeakMap,j=new WeakMap,U=new WeakMap,C=new WeakSet,H=function(t){return s`<div class="tick ${t.active?"active":"inactive"}" style="${$({transform:`translate(${"rtl"===E.current?-e(this,C,"m",G).call(this,t.value):e(this,C,"m",G).call(this,t.value)}px, 0)`})}"></div>`},N=function(t){i(this,D,t.target.assignedElements({flatten:!0}).filter(e=>e instanceof P),"f"),e(this,D,"f").length>2&&(e(this,D,"f").length=2),this.isRange?this._base?.style.setProperty("--_slider-active-track-middle-shape","0"):this._base?.style.removeProperty("--_slider-active-track-middle-shape"),e(this,C,"m",B).call(this)},B=function(){e(this,D,"f").forEach((t,i)=>{this.disabled&&(t.disabled=!0),t.ariaValueMin=`${e(this,D,"f")[i-1]?.value??this.min}`,t.ariaValueMax=`${e(this,D,"f")[i+1]?.value??this.max}`,t.ariaValueNow=`${t.value??e(this,D,"f")[i-1]?.value??this.min}`})},G=function(t){return(e(this,A,"f")-e(this,j,"f"))*((t-this.min)/(this.max-this.min))},I=function(t){const i="rtl"===E.current?e(this,U,"f")+e(this,A,"f")-t.clientX:t.clientX-e(this,U,"f"),a=0===this.step?1:this.step,s=Math.floor((this.max-this.min)/a),r=i/e(this,A,"f"),l=Math.round(r*s)/s*(this.max-this.min)+this.min;return Math.round(l/a)*a},V=function(t=!1){this.lowerThumb&&(i(this,A,!t&&e(this,A,"f")>0?e(this,A,"f"):this.clientWidth,"f"),i(this,j,!t&&e(this,j,"f")>0?e(this,j,"f"):this.lowerThumb.clientWidth,"f"),i(this,U,!t&&e(this,U,"f")>0?e(this,U,"f"):this.getBoundingClientRect().left,"f"))},O=function(t=!1){if(e(this,C,"m",V).call(this,t),!this.lowerThumb)return;const i=this.lowerThumb.value??this.min,a=e(this,C,"m",G).call(this,i);if(this.lowerThumb.style.transform=`translate(${"rtl"===E.current?-a:a}px, 0)`,this.upperThumb){const t=this.upperThumb.value??i,s=e(this,C,"m",G).call(this,t);this.upperThumb.style.transform=`translate(${"rtl"===E.current?-s:s}px, 0)`,this._base?.classList.toggle("range",!0),this._base?.style.setProperty("--_slider-inactive-track-before-size",`${a}px`),this._base?.style.setProperty("--_slider-active-track-offset",`${a+e(this,j,"f")}px`),this._base?.style.setProperty("--_slider-active-track-size",s-a-e(this,j,"f")+"px"),this._base?.style.setProperty("--_slider-inactive-track-after-offset",`${s+e(this,j,"f")}px`),this._base?.style.setProperty("--_slider-inactive-track-after-size",e(this,A,"f")-e(this,j,"f")-s+"px"),e(this,C,"m",X).call(this,e=>e>i&&e<t)}else this._base?.classList.toggle("range",!1),this._base?.style.setProperty("--_slider-active-track-size",`${a}px`),this._base?.style.setProperty("--_slider-inactive-track-after-offset",`${a+e(this,j,"f")}px`),this._base?.style.setProperty("--_slider-inactive-track-after-size",e(this,A,"f")-a-e(this,j,"f")+"px"),e(this,C,"m",X).call(this,e=>e<i)},X=function(e){if(this._ticks=[],this.discrete&&this.step>1)for(let t=this.min;t<=this.max;t+=this.step)this._ticks.push({value:t,active:e(t)});else this._ticks.push({value:this.min,active:e(this.min)}),this.min<0&&this.max>0&&this._ticks.push({value:0,active:e(0)}),this._ticks.push({value:this.max,active:e(this.max)})},q=function(t){if("mouse"===t.pointerType&&t.button>1)return;if(!this.lowerThumb||this.disabled)return;if(t.target instanceof HTMLElement&&t.target.setPointerCapture(t.pointerId),e(this,L,"f").clear(),i(this,R,t.composedPath().find(e=>e instanceof P),"f"),e(this,R,"f"))return;const a=e(this,C,"m",I).call(this,t);if(this.upperThumb){const t=this.lowerThumb.value??this.min,s=this.upperThumb.value??t;if(a<t)this.lowerThumb.disabled||(e(this,C,"m",Z).call(this,this.lowerThumb,a,!0),i(this,R,this.lowerThumb,"f"));else if(a>s)this.upperThumb.disabled||(e(this,C,"m",Z).call(this,this.upperThumb,a,!0),i(this,R,this.upperThumb,"f"));else{a<(t+s)/2&&!this.lowerThumb.disabled?(e(this,C,"m",Z).call(this,this.lowerThumb,a,!0),i(this,R,this.lowerThumb,"f")):this.upperThumb.disabled||(e(this,C,"m",Z).call(this,this.upperThumb,a,!0),i(this,R,this.upperThumb,"f"))}}else this.lowerThumb.disabled||(e(this,C,"m",Z).call(this,this.lowerThumb,a,!0),i(this,R,this.lowerThumb,"f"))},F=function(t){if(!(t.target instanceof HTMLElement)||!t.target.hasPointerCapture(t.pointerId)||!e(this,R,"f")||e(this,R,"f").disabled)return;const i=e(this,C,"m",I).call(this,t);let a=this.min,s=this.max;e(this,R,"f")===this.upperThumb?a=Math.max(a,this.lowerThumb?.value??0):this.upperThumb&&(s=Math.min(s,this.upperThumb.value??this.max)),_(this,"--animating")&&(w(this,"--animating"),e(this,R,"f").style.transition=""),e(this,C,"m",Z).call(this,e(this,R,"f"),Math.min(s,Math.max(a,i)))},J=function(t){"mouse"===t.pointerType&&t.button>1||this.lowerThumb&&!this.disabled&&(t.target instanceof HTMLElement&&t.target.releasePointerCapture(t.pointerId),e(this,R,"f")&&!e(this,R,"f").disabled&&(e(this,C,"m",ee).call(this,e(this,R,"f")),e(this,R,"f").focus()))},K=function(t){if(i(this,R,t.composedPath().find(e=>e instanceof P),"f"),!e(this,R,"f"))return;const a=e(this,R,"f").value??0;let s=this.min,r=this.max;switch(e(this,R,"f")===this.upperThumb?s=Math.max(s,this.lowerThumb?.value??0):this.upperThumb&&(r=Math.max(r,this.upperThumb.value??this.max)),t.key){case"Home":e(this,C,"m",Z).call(this,e(this,R,"f"),s),t.preventDefault();break;case"End":e(this,C,"m",Z).call(this,e(this,R,"f"),r),t.preventDefault();break;case"PageUp":"ltr"===E.current?e(this,C,"m",Z).call(this,e(this,R,"f"),Math.min(r,a+(this.step>1?this.step:10))):e(this,C,"m",Z).call(this,e(this,R,"f"),Math.max(s,a-(this.step>1?this.step:10))),t.preventDefault();break;case"PageDown":"ltr"===E.current?e(this,C,"m",Z).call(this,e(this,R,"f"),Math.max(s,a-(this.step>1?this.step:10))):e(this,C,"m",Z).call(this,e(this,R,"f"),Math.min(r,a+(this.step>1?this.step:10))),t.preventDefault();break;case"Down":case"ArrowDown":case"Left":case"ArrowLeft":"ltr"===E.current?e(this,C,"m",Z).call(this,e(this,R,"f"),Math.max(s,a-this.step)):e(this,C,"m",Z).call(this,e(this,R,"f"),Math.min(r,a+this.step)),t.preventDefault();break;case"Up":case"ArrowUp":case"Right":case"ArrowRight":"ltr"===E.current?e(this,C,"m",Z).call(this,e(this,R,"f"),Math.min(r,a+this.step)):e(this,C,"m",Z).call(this,e(this,R,"f"),Math.max(s,a-this.step)),t.preventDefault();break;case" ":t.preventDefault()}},Q=function(t){const i=t.composedPath().find(e=>e instanceof P);i&&e(this,C,"m",ee).call(this,i)},Y=function(t){t.stopPropagation(),e(this,C,"m",B).call(this),e(this,C,"m",O).call(this)},Z=function(t,i,a=!1){t.value!==i&&t.dispatchEvent(new Event("beforeinput",{bubbles:!0,cancelable:!0}))&&(a&&!T()&&(z(this,"--animating"),t.addEventListener("transitionend",()=>{t.style.transition="",w(this,"--animating")},{once:!0}),t.style.transition=`transform ${g.motion.spring.fastEffects}`),e(this,L,"f").add(t),t.value=i,t.markAsDirty(),t.markAsTouched(),t.dispatchEvent(new Event("input",{bubbles:!0})))},ee=function(t){e(this,L,"f").has(t)&&(t.dispatchEvent(new Event("change",{bubbles:!0})),e(this,L,"f").delete(t))},te.styles=l`:host { display: inline-block; vertical-align: middle; min-inline-size: var(--m3e-slider-min-width, 12.5rem); user-select: none; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } :host(:not([disabled])) { cursor: pointer; } :host([size="extra-small"]), :host([size="small"]) { height: var(--m3e-slider-small-height, 2.75rem); } :host(:not(:dir(rtl))[size="extra-small"]) .base, :host(:not(:dir(rtl))[size="small"]) .base { --_slider-active-track-shape: var(--m3e-slider-small-active-track-shape, ${g.shape.corner.smallStart}); --_slider-inactive-track-start-shape: var( --m3e-slider-small-inactive-active-track-start-shape, ${g.shape.corner.smallStart} ); --_slider-inactive-track-end-shape: var( --m3e-slider-small-inactive-track-end-shape, ${g.shape.corner.smallEnd} ); } :host(:dir(rtl)[size="extra-small"]) .base, :host(:dir(rtl)[size="small"]) .base { --_slider-active-track-shape: var(--m3e-slider-small-active-track-shape, ${g.shape.corner.smallEnd}); --_slider-inactive-track-start-shape: var( --m3e-slider-small-inactive-active-track-start-shape, ${g.shape.corner.smallEnd} ); --_slider-inactive-track-end-shape: var( --m3e-slider-small-inactive-track-end-shape, ${g.shape.corner.smallStart} ); } :host([size="extra-small"]) .track { height: calc(var(--m3e-slider-extra-small-track-height, 1rem)); } :host([size="small"]) .track { height: calc(var(--m3e-slider-small-track-height, 1.5rem)); } :host([size="medium"]) { height: var(--m3e-slider-medium-height, 3.25rem); } :host(:not(:dir(rtl))[size="medium"]) .base { --_slider-active-track-shape: var( --m3e-slider-medium-active-track-shape, ${g.shape.corner.mediumStart} ); --_slider-inactive-track-start-shape: var( --m3e-slider-medium-inactive-active-track-start-shape, ${g.shape.corner.mediumStart} ); --_slider-inactive-track-end-shape: var( --m3e-slider-medium-inactive-track-end-shape, ${g.shape.corner.mediumEnd} ); } :host(:dir(rtl)[size="medium"]) .base { --_slider-active-track-shape: var(--m3e-slider-medium-active-track-shape, ${g.shape.corner.mediumEnd}); --_slider-inactive-track-start-shape: var( --m3e-slider-medium-inactive-active-track-start-shape, ${g.shape.corner.mediumEnd} ); --_slider-inactive-track-end-shape: var( --m3e-slider-medium-inactive-track-end-shape, ${g.shape.corner.mediumStart} ); } :host([size="medium"]) .track { height: var(--m3e-slider-medium-track-height, 2.5rem); } :host([size="large"]) { height: var(--m3e-slider-large-height, 4.25rem); } :host(:not(:dir(rtl))[size="large"]) .base { --_slider-active-track-shape: var(--m3e-slider-large-active-track-shape, ${g.shape.corner.largeStart}); --_slider-inactive-track-start-shape: var( --m3e-slider-large-inactive-active-track-start-shape, ${g.shape.corner.largeStart} ); --_slider-inactive-track-end-shape: var( --m3e-slider-large-inactive-track-end-shape, ${g.shape.corner.largeEnd} ); } :host(:dir(rtl)[size="large"]) .base { --_slider-active-track-shape: var(--m3e-slider-large-active-track-shape, ${g.shape.corner.largeEnd}); --_slider-inactive-track-start-shape: var( --m3e-slider-large-inactive-active-track-start-shape, ${g.shape.corner.largeEnd} ); --_slider-inactive-track-end-shape: var( --m3e-slider-large-inactive-track-end-shape, ${g.shape.corner.largeStart} ); } :host([size="large"]) .track { height: var(--m3e-slider-large-track-height, 3.5rem); } :host([size="extra-large"]) { height: var(--m3e-slider-extra-large-height, 6.75rem); } :host(:not(:dir(rtl))[size="extra-large"]) .base { --_slider-active-track-shape: var( --m3e-slider-extra-large-active-track-shape, ${g.shape.corner.extraLargeStart} ); --_slider-inactive-track-start-shape: var( --m3e-slider-extra-large-inactive-active-track-start-shape, ${g.shape.corner.extraLargeStart} ); --_slider-inactive-track-end-shape: var( --m3e-slider-extra-large-inactive-track-end-shape, ${g.shape.corner.extraLargeEnd} ); } :host(:dir(rtl)[size="extra-large"]) .base { --_slider-active-track-shape: var( --m3e-slider-extra-large-active-track-shape, ${g.shape.corner.extraLargeEnd} ); --_slider-inactive-track-start-shape: var( --m3e-slider-extra-large-inactive-active-track-start-shape, ${g.shape.corner.extraLargeEnd} ); --_slider-inactive-track-end-shape: var( --m3e-slider-extra-large-inactive-track-end-shape, ${g.shape.corner.extraLargeStart} ); } :host([size="extra-large"]) .track { height: var(--m3e-slider-extra-large-track-height, 6rem); } :host(:is(:state(--animating), :--animating)) .track-active, :host(:is(:state(--animating), :--animating)) .track-inactive.start, :host(:is(:state(--animating), :--animating)) .track-inactive.end { transition: ${r(`margin-inline-start ${g.motion.spring.fastEffects},\n width ${g.motion.spring.fastEffects}`)}; } .base { contain: layout style; display: inline-flex; align-items: center; position: relative; width: 100%; height: 100%; border-radius: inherit; outline: none; touch-action: none; } .track { contain: layout style paint; position: relative; flex: 1 1 auto; touch-action: none; } .track-inactive, .track-active { contain: layout style paint; position: absolute; height: 100%; touch-action: none; } .track-active { margin-inline-start: var(--_slider-active-track-offset, 0px); width: var(--_slider-active-track-size, 0px); border-radius: var(--_slider-active-track-middle-shape, var(--_slider-active-track-shape)); } .track-inactive.start { width: var(--_slider-inactive-track-before-size, 0px); border-radius: var(--_slider-inactive-track-start-shape); } .track-inactive.end { margin-inline-start: var(--_slider-inactive-track-after-offset, 0px); width: var(--_slider-inactive-track-after-size, 0px); border-radius: var(--_slider-inactive-track-end-shape); } .ticks { position: absolute; width: 100%; height: var(--m3e-slider-tick-size, 0.25rem); overflow: visible; touch-action: none; } .tick { position: absolute; top: 0; touch-action: none; inset-inline-start: calc(var(--m3e-slider-tick-size, 0.25rem) + calc(var(--m3e-slider-tick-size, 0.25rem) / 2)); width: var(--m3e-slider-tick-size, 0.25rem); height: var(--m3e-slider-tick-size, 0.25rem); border-radius: var(--m3e-slider-tick-shape, ${g.shape.corner.full}); } :host(:not([disabled])) .track-inactive { background-color: var(--m3e-slider-inactive-track-color, ${g.color.secondaryContainer}); } :host([disabled]) .track-inactive { background-color: color-mix( in srgb, var(--m3e-slider-disabled-inactive-track-color, ${g.color.onSurface}) var(--m3e-slider-disabled-inactive-track-opacity, 12%), transparent ); } :host(:not([disabled])) .track-active { background-color: var(--m3e-slider-active-track-color, ${g.color.primary}); } :host([disabled]) .track-active { background-color: color-mix( in srgb, var(--m3e-slider-disabled-active-track-color, ${g.color.onSurface}) var(--m3e-slider-disabled-active-track-opacity, 38%), transparent ); } :host(:not([disabled])) .tick.active { background-color: var(--m3e-slider-tick-active-color, ${g.color.onPrimary}); } :host([disabled]) .tick.active { background-color: var(--m3e-slider-disabled-tick-active-color, ${g.color.inverseOnSurface}); } :host(:not([disabled])) .tick.inactive { background-color: var(--m3e-slider-tick-inactive-color, ${g.color.onSecondaryContainer}); } :host([disabled]) .tick.inactive { background-color: var(--m3e-slider-disabled-tick-inactive-color, ${g.color.onSurface}); } :host(:not([discrete])) .tick.active { display: none; } :host(:hover[labelled]) .base, :host(:focus-within[labelled]) .base { --_slider-label-visibility: visible; --_slider-label-opacity: 1; --_slider-label-transform: scale(1); } @media (forced-colors: active) { :host(:not([disabled])) .track-inactive { background-color: unset; } :host(:not([disabled])) .base.range .track-inactive.start, :host(:not([disabled])) .track-inactive.end { border: 1px solid CanvasText; box-sizing: border-box; } :host(:not([disabled])) .tick.inactive { background-color: CanvasText; } :host(:not([disabled])) .tick.active { background-color: Canvas; } :host(:not([disabled])) .track-active { background-color: CanvasText; } :host([disabled]) .base.range .track-inactive.start, :host([disabled]) .track-inactive.end { border: 1px solid GrayText; box-sizing: border-box; } :host([disabled]) .track-active { background-color: GrayText; } :host([disabled]) .tick.inactive { background-color: GrayText; } :host([disabled]) .tick.active { background-color: Canvas; } }`,t([n(".base")],te.prototype,"_base",void 0),t([c()],te.prototype,"_ticks",void 0),t([h({reflect:!0})],te.prototype,"size",void 0),t([h({type:Boolean,reflect:!0})],te.prototype,"disabled",void 0),t([h({type:Boolean,reflect:!0})],te.prototype,"discrete",void 0),t([h({type:Number})],te.prototype,"min",void 0),t([h({type:Number})],te.prototype,"max",void 0),t([h({type:Number})],te.prototype,"step",void 0),t([h({type:Boolean})],te.prototype,"labelled",void 0),t([h({attribute:!1})],te.prototype,"displayWith",void 0),te=t([y("m3e-slider")],te);export{te as M3eSliderElement,P as M3eSliderThumbElement};
|
|
6
|
+
import{__classPrivateFieldGet as e,__decorate as t,__classPrivateFieldSet as i}from"tslib";import{LitElement as a,html as s,unsafeCSS as r,css as l}from"lit";import{query as n,property as h,state as c}from"lit/decorators.js";import{ifDefined as o}from"lit/directives/if-defined.js";import{Dirty as d,Touched as m,FormAssociated as p,Focusable as u,Disabled as v,AttachInternals as b,Role as f,formValue as k,DesignToken as g,customElement as y,ResizeController as x,safeStyleMap as $,hasCustomState as _,deleteCustomState as w,prefersReducedMotion as T,addCustomState as z}from"@m3e/web/core";import{M3eDirectionality as E}from"@m3e/web/core/bidi";var M,S;let P=class extends(d(m(p(u(v(b(f(a,"slider")))))))){constructor(){super(...arguments),M.add(this),this.value=null}get[(M=new WeakSet,k)](){return this.value?.toString()??null}focus(e){this._focusRing&&(this._focusRing.disabled=!0),super.focus(e),this._focusRing&&(this._focusRing.disabled=this.disabled)}firstUpdated(e){super.firstUpdated(e),this._focusRing?.attach(this)}update(e){super.update(e),e.has("value")&&this.dispatchEvent(new Event("value-change",{bubbles:!0}))}render(){return s`<div class="label" aria-hidden="true">${e(this,M,"a",S)}</div><div class="base"><m3e-focus-ring class="focus-ring" ?disabled="${this.disabled}"></m3e-focus-ring><div class="touch" aria-hidden="true"></div><div class="wrapper"><div class="handle"></div></div></div>`}};var C,W,L,D,R,A,j,U,H,N,B,G,I,V,O,X,q,F,J,K,Q,Y,Z,ee;S=function(){return this.closest("m3e-slider")?.displayWith?.(this.value)??this.value?.toString()??""},P.styles=l`:host { display: block; box-sizing: border-box; position: absolute; outline: none; top: 0; bottom: 0; border-radius: var(--m3e-slider-thumb-shape, ${g.shape.corner.full}); user-select: none; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } .base { contain: layout style; box-sizing: border-box; vertical-align: middle; display: inline-flex; align-items: center; justify-content: center; position: relative; width: 100%; height: 100%; border-radius: inherit; } .touch { position: absolute; height: 3rem; left: 0; right: 0; touch-action: none; } .wrapper { display: inline-flex; justify-content: center; height: 100%; border-radius: inherit; width: calc(var(--m3e-slider-thumb-width, 0.25rem) + calc(var(--m3e-slider-thumb-padding, 0.375em) * 2)); } .focus-ring { top: calc(0px - var(--m3e-focus-ring-thickness, 3px)); bottom: calc(0px - var(--m3e-focus-ring-thickness, 3px)); left: var(--m3e-focus-ring-thickness, 3px); right: var(--m3e-focus-ring-thickness, 3px); } .label { user-select: none; position: absolute; display: flex; align-items: center; justify-content: center; visibility: var(--_slider-label-visibility, hidden); opacity: var(--_slider-label-opacity, 0); transform: var(--_slider-label-transform, scale(0)); transition: ${r(`opacity ${g.motion.duration.short3} ${g.motion.easing.standard}, \n transform ${g.motion.duration.short3} ${g.motion.easing.standard},\n visibility ${g.motion.duration.short3} ${g.motion.easing.standard} allow-discrete`)}; width: var(--m3e-slider-label-width, 3rem); height: var(--_m3e-slider-label-height, 2.75rem); top: calc(0px - var(--_m3e-slider-label-height, 2.75rem) - var(--_m3e-slider-label-margin, 0.25rem)); inset-inline-start: calc(0px - 100%); border-radius: var(--m3e-slider-label-shape, ${g.shape.corner.full}); background-color: var(--m3e-slider-label-container-color, ${g.color.inverseSurface}); color: var(--m3e-slider-label-color, ${g.color.inverseOnSurface}); font-size: var(--m3e-slider-label-font-size, ${g.typescale.standard.label.medium.fontSize}); font-weight: var(--m3e-slider-label-font-weight, ${g.typescale.standard.label.medium.fontWeight}); line-height: var(--m3e-slider-label-line-height, ${g.typescale.standard.label.medium.lineHeight}); letter-spacing: var(--m3e-slider-label-tracking, ${g.typescale.standard.label.medium.tracking}); } @starting-style { .label { opacity: 0; transform: scale(0); } } .handle { height: 100%; width: var(--m3e-slider-thumb-width, 0.25rem); border-radius: inherit; transition: ${r(`width ${g.motion.duration.short2} ${g.motion.easing.standard}`)}; } :host(:active:not([aria-disabled="true"])) .handle { width: var(--m3e-slider-thumb-pressed-width, 2px); } :host(:not([aria-disabled="true"])) .handle { background-color: var(--m3e-slider-thumb-color, ${g.color.primary}); } :host([aria-disabled="true"]) .handle { opacity: var(--m3e-slider-thumb-disabled-opacity, 38%); background-color: var(--m3e-slider-thumb-disabled-color, ${g.color.onSurface}); } @media (prefers-reduced-motion) { .label { transition: none; } } @media (forced-colors: active) { .label { forced-color-adjust: none; background-color: CanvasText; color: Canvas; } :host(:not([aria-disabled="true"])) .handle { background-color: CanvasText; } :host([aria-disabled="true"]) .handle { opacity: unset; background-color: GrayText; } }`,t([n(".focus-ring")],P.prototype,"_focusRing",void 0),t([h({type:Number,reflect:!0})],P.prototype,"value",void 0),P=t([y("m3e-slider-thumb")],P);let te=class extends(b(a)){constructor(){super(),C.add(this),W.set(this,void 0),this._ticks=new Array,L.set(this,new Set),D.set(this,new Array),R.set(this,void 0),A.set(this,0),j.set(this,0),U.set(this,0),this.size="extra-small",this.disabled=!1,this.discrete=!1,this.min=0,this.max=100,this.step=1,this.labelled=!1,this.displayWith=null,new x(this,{callback:()=>e(this,C,"m",O).call(this,!0)})}get thumbs(){return e(this,D,"f")}get isRange(){return e(this,D,"f").length>1}get thumb(){return e(this,D,"f")[0]??null}get lowerThumb(){return this.thumb}get upperThumb(){return e(this,D,"f")[1]??null}connectedCallback(){super.connectedCallback(),i(this,W,E.observe(()=>{e(this,C,"m",O).call(this,!0),this.requestUpdate()}),"f")}disconnectedCallback(){super.disconnectedCallback(),e(this,L,"f").clear(),e(this,W,"f")?.call(this)}updated(t){super.updated(t),t.has("disabled")&&e(this,D,"f").forEach(e=>e.disabled=this.disabled)}render(){return s`<div class="base" tabindex="${o(this.disabled?void 0:"-1")}" @pointerdown="${e(this,C,"m",q)}" @pointermove="${e(this,C,"m",F)}" @pointerup="${e(this,C,"m",J)}" @keydown="${e(this,C,"m",K)}" @keyup="${e(this,C,"m",Q)}" @value-change="${e(this,C,"m",Y)}"><div class="track" aria-hidden="true"><div class="track-inactive start"></div><div class="track-active"></div><div class="track-inactive end"></div></div><div class="ticks" aria-hidden="true">${this._ticks.map(t=>e(this,C,"m",H).call(this,t))}</div><slot @slotchange="${e(this,C,"m",N)}"></slot></div>`}};W=new WeakMap,L=new WeakMap,D=new WeakMap,R=new WeakMap,A=new WeakMap,j=new WeakMap,U=new WeakMap,C=new WeakSet,H=function(t){return s`<div class="tick ${t.active?"active":"inactive"}" style="${$({transform:`translate(${"rtl"===E.current?-e(this,C,"m",G).call(this,t.value):e(this,C,"m",G).call(this,t.value)}px, 0)`})}"></div>`},N=function(t){i(this,D,t.target.assignedElements({flatten:!0}).filter(e=>e instanceof P),"f"),e(this,D,"f").length>2&&(e(this,D,"f").length=2),this.isRange?this._base?.style.setProperty("--_slider-active-track-middle-shape","0"):this._base?.style.removeProperty("--_slider-active-track-middle-shape"),e(this,C,"m",B).call(this)},B=function(){e(this,D,"f").forEach((t,i)=>{this.disabled&&(t.disabled=!0),t.ariaValueMin=`${e(this,D,"f")[i-1]?.value??this.min}`,t.ariaValueMax=`${e(this,D,"f")[i+1]?.value??this.max}`,t.ariaValueNow=`${t.value??e(this,D,"f")[i-1]?.value??this.min}`})},G=function(t){return(e(this,A,"f")-e(this,j,"f"))*((t-this.min)/(this.max-this.min))},I=function(t){const i="rtl"===E.current?e(this,U,"f")+e(this,A,"f")-t.clientX:t.clientX-e(this,U,"f"),a=0===this.step?1:this.step,s=Math.floor((this.max-this.min)/a),r=i/e(this,A,"f"),l=Math.round(r*s)/s*(this.max-this.min)+this.min;return Math.round(l/a)*a},V=function(t=!1){this.lowerThumb&&(i(this,A,!t&&e(this,A,"f")>0?e(this,A,"f"):this.clientWidth,"f"),i(this,j,!t&&e(this,j,"f")>0?e(this,j,"f"):this.lowerThumb.clientWidth,"f"),i(this,U,!t&&e(this,U,"f")>0?e(this,U,"f"):this.getBoundingClientRect().left,"f"))},O=function(t=!1){if(e(this,C,"m",V).call(this,t),!this.lowerThumb)return;const i=this.lowerThumb.value??this.min,a=e(this,C,"m",G).call(this,i);if(this.lowerThumb.style.transform=`translate(${"rtl"===E.current?-a:a}px, 0)`,this.upperThumb){const t=this.upperThumb.value??i,s=e(this,C,"m",G).call(this,t);this.upperThumb.style.transform=`translate(${"rtl"===E.current?-s:s}px, 0)`,this._base?.classList.toggle("range",!0),this._base?.style.setProperty("--_slider-inactive-track-before-size",`${a}px`),this._base?.style.setProperty("--_slider-active-track-offset",`${a+e(this,j,"f")}px`),this._base?.style.setProperty("--_slider-active-track-size",s-a-e(this,j,"f")+"px"),this._base?.style.setProperty("--_slider-inactive-track-after-offset",`${s+e(this,j,"f")}px`),this._base?.style.setProperty("--_slider-inactive-track-after-size",e(this,A,"f")-e(this,j,"f")-s+"px"),e(this,C,"m",X).call(this,e=>e>i&&e<t)}else this._base?.classList.toggle("range",!1),this._base?.style.setProperty("--_slider-active-track-size",`${a}px`),this._base?.style.setProperty("--_slider-inactive-track-after-offset",`${a+e(this,j,"f")}px`),this._base?.style.setProperty("--_slider-inactive-track-after-size",e(this,A,"f")-a-e(this,j,"f")+"px"),e(this,C,"m",X).call(this,e=>e<i)},X=function(e){if(this._ticks=[],this.discrete&&this.step>1)for(let t=this.min;t<=this.max;t+=this.step)this._ticks.push({value:t,active:e(t)});else this._ticks.push({value:this.min,active:e(this.min)}),this.min<0&&this.max>0&&this._ticks.push({value:0,active:e(0)}),this._ticks.push({value:this.max,active:e(this.max)})},q=function(t){if(e(this,C,"m",V).call(this,!0),"mouse"===t.pointerType&&t.button>1)return;if(!this.lowerThumb||this.disabled)return;if(t.target instanceof HTMLElement&&t.target.setPointerCapture(t.pointerId),e(this,L,"f").clear(),i(this,R,t.composedPath().find(e=>e instanceof P),"f"),e(this,R,"f"))return;const a=e(this,C,"m",I).call(this,t);if(this.upperThumb){const t=this.lowerThumb.value??this.min,s=this.upperThumb.value??t;if(a<t)this.lowerThumb.disabled||(e(this,C,"m",Z).call(this,this.lowerThumb,a,!0),i(this,R,this.lowerThumb,"f"));else if(a>s)this.upperThumb.disabled||(e(this,C,"m",Z).call(this,this.upperThumb,a,!0),i(this,R,this.upperThumb,"f"));else{a<(t+s)/2&&!this.lowerThumb.disabled?(e(this,C,"m",Z).call(this,this.lowerThumb,a,!0),i(this,R,this.lowerThumb,"f")):this.upperThumb.disabled||(e(this,C,"m",Z).call(this,this.upperThumb,a,!0),i(this,R,this.upperThumb,"f"))}}else this.lowerThumb.disabled||(e(this,C,"m",Z).call(this,this.lowerThumb,a,!0),i(this,R,this.lowerThumb,"f"))},F=function(t){if(!(t.target instanceof HTMLElement)||!t.target.hasPointerCapture(t.pointerId)||!e(this,R,"f")||e(this,R,"f").disabled)return;const i=e(this,C,"m",I).call(this,t);let a=this.min,s=this.max;e(this,R,"f")===this.upperThumb?a=Math.max(a,this.lowerThumb?.value??0):this.upperThumb&&(s=Math.min(s,this.upperThumb.value??this.max)),_(this,"--animating")&&(w(this,"--animating"),e(this,R,"f").style.transition=""),e(this,C,"m",Z).call(this,e(this,R,"f"),Math.min(s,Math.max(a,i)))},J=function(t){"mouse"===t.pointerType&&t.button>1||this.lowerThumb&&!this.disabled&&(t.target instanceof HTMLElement&&t.target.releasePointerCapture(t.pointerId),e(this,R,"f")&&!e(this,R,"f").disabled&&(e(this,C,"m",ee).call(this,e(this,R,"f")),e(this,R,"f").focus()))},K=function(t){if(i(this,R,t.composedPath().find(e=>e instanceof P),"f"),!e(this,R,"f"))return;const a=e(this,R,"f").value??0;let s=this.min,r=this.max;switch(e(this,R,"f")===this.upperThumb?s=Math.max(s,this.lowerThumb?.value??0):this.upperThumb&&(r=Math.max(r,this.upperThumb.value??this.max)),t.key){case"Home":e(this,C,"m",Z).call(this,e(this,R,"f"),s),t.preventDefault();break;case"End":e(this,C,"m",Z).call(this,e(this,R,"f"),r),t.preventDefault();break;case"PageUp":"ltr"===E.current?e(this,C,"m",Z).call(this,e(this,R,"f"),Math.min(r,a+(this.step>1?this.step:10))):e(this,C,"m",Z).call(this,e(this,R,"f"),Math.max(s,a-(this.step>1?this.step:10))),t.preventDefault();break;case"PageDown":"ltr"===E.current?e(this,C,"m",Z).call(this,e(this,R,"f"),Math.max(s,a-(this.step>1?this.step:10))):e(this,C,"m",Z).call(this,e(this,R,"f"),Math.min(r,a+(this.step>1?this.step:10))),t.preventDefault();break;case"Down":case"ArrowDown":case"Left":case"ArrowLeft":"ltr"===E.current?e(this,C,"m",Z).call(this,e(this,R,"f"),Math.max(s,a-this.step)):e(this,C,"m",Z).call(this,e(this,R,"f"),Math.min(r,a+this.step)),t.preventDefault();break;case"Up":case"ArrowUp":case"Right":case"ArrowRight":"ltr"===E.current?e(this,C,"m",Z).call(this,e(this,R,"f"),Math.min(r,a+this.step)):e(this,C,"m",Z).call(this,e(this,R,"f"),Math.max(s,a-this.step)),t.preventDefault();break;case" ":t.preventDefault()}},Q=function(t){const i=t.composedPath().find(e=>e instanceof P);i&&e(this,C,"m",ee).call(this,i)},Y=function(t){t.stopPropagation(),e(this,C,"m",B).call(this),e(this,C,"m",O).call(this)},Z=function(t,i,a=!1){t.value!==i&&t.dispatchEvent(new Event("beforeinput",{bubbles:!0,cancelable:!0}))&&(a&&!T()&&(z(this,"--animating"),t.addEventListener("transitionend",()=>{t.style.transition="",w(this,"--animating")},{once:!0}),t.style.transition=`transform ${g.motion.spring.fastEffects}`),e(this,L,"f").add(t),t.value=i,t.markAsDirty(),t.markAsTouched(),t.dispatchEvent(new Event("input",{bubbles:!0})))},ee=function(t){e(this,L,"f").has(t)&&(t.dispatchEvent(new Event("change",{bubbles:!0})),e(this,L,"f").delete(t))},te.styles=l`:host { display: inline-block; vertical-align: middle; min-inline-size: var(--m3e-slider-min-width, 12.5rem); user-select: none; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } :host(:not([disabled])) { cursor: pointer; } :host([size="extra-small"]), :host([size="small"]) { height: var(--m3e-slider-small-height, 2.75rem); } :host(:not(:dir(rtl))[size="extra-small"]) .base, :host(:not(:dir(rtl))[size="small"]) .base { --_slider-active-track-shape: var(--m3e-slider-small-active-track-shape, ${g.shape.corner.smallStart}); --_slider-inactive-track-start-shape: var( --m3e-slider-small-inactive-active-track-start-shape, ${g.shape.corner.smallStart} ); --_slider-inactive-track-end-shape: var( --m3e-slider-small-inactive-track-end-shape, ${g.shape.corner.smallEnd} ); } :host(:dir(rtl)[size="extra-small"]) .base, :host(:dir(rtl)[size="small"]) .base { --_slider-active-track-shape: var(--m3e-slider-small-active-track-shape, ${g.shape.corner.smallEnd}); --_slider-inactive-track-start-shape: var( --m3e-slider-small-inactive-active-track-start-shape, ${g.shape.corner.smallEnd} ); --_slider-inactive-track-end-shape: var( --m3e-slider-small-inactive-track-end-shape, ${g.shape.corner.smallStart} ); } :host([size="extra-small"]) .track { height: calc(var(--m3e-slider-extra-small-track-height, 1rem)); } :host([size="small"]) .track { height: calc(var(--m3e-slider-small-track-height, 1.5rem)); } :host([size="medium"]) { height: var(--m3e-slider-medium-height, 3.25rem); } :host(:not(:dir(rtl))[size="medium"]) .base { --_slider-active-track-shape: var( --m3e-slider-medium-active-track-shape, ${g.shape.corner.mediumStart} ); --_slider-inactive-track-start-shape: var( --m3e-slider-medium-inactive-active-track-start-shape, ${g.shape.corner.mediumStart} ); --_slider-inactive-track-end-shape: var( --m3e-slider-medium-inactive-track-end-shape, ${g.shape.corner.mediumEnd} ); } :host(:dir(rtl)[size="medium"]) .base { --_slider-active-track-shape: var(--m3e-slider-medium-active-track-shape, ${g.shape.corner.mediumEnd}); --_slider-inactive-track-start-shape: var( --m3e-slider-medium-inactive-active-track-start-shape, ${g.shape.corner.mediumEnd} ); --_slider-inactive-track-end-shape: var( --m3e-slider-medium-inactive-track-end-shape, ${g.shape.corner.mediumStart} ); } :host([size="medium"]) .track { height: var(--m3e-slider-medium-track-height, 2.5rem); } :host([size="large"]) { height: var(--m3e-slider-large-height, 4.25rem); } :host(:not(:dir(rtl))[size="large"]) .base { --_slider-active-track-shape: var(--m3e-slider-large-active-track-shape, ${g.shape.corner.largeStart}); --_slider-inactive-track-start-shape: var( --m3e-slider-large-inactive-active-track-start-shape, ${g.shape.corner.largeStart} ); --_slider-inactive-track-end-shape: var( --m3e-slider-large-inactive-track-end-shape, ${g.shape.corner.largeEnd} ); } :host(:dir(rtl)[size="large"]) .base { --_slider-active-track-shape: var(--m3e-slider-large-active-track-shape, ${g.shape.corner.largeEnd}); --_slider-inactive-track-start-shape: var( --m3e-slider-large-inactive-active-track-start-shape, ${g.shape.corner.largeEnd} ); --_slider-inactive-track-end-shape: var( --m3e-slider-large-inactive-track-end-shape, ${g.shape.corner.largeStart} ); } :host([size="large"]) .track { height: var(--m3e-slider-large-track-height, 3.5rem); } :host([size="extra-large"]) { height: var(--m3e-slider-extra-large-height, 6.75rem); } :host(:not(:dir(rtl))[size="extra-large"]) .base { --_slider-active-track-shape: var( --m3e-slider-extra-large-active-track-shape, ${g.shape.corner.extraLargeStart} ); --_slider-inactive-track-start-shape: var( --m3e-slider-extra-large-inactive-active-track-start-shape, ${g.shape.corner.extraLargeStart} ); --_slider-inactive-track-end-shape: var( --m3e-slider-extra-large-inactive-track-end-shape, ${g.shape.corner.extraLargeEnd} ); } :host(:dir(rtl)[size="extra-large"]) .base { --_slider-active-track-shape: var( --m3e-slider-extra-large-active-track-shape, ${g.shape.corner.extraLargeEnd} ); --_slider-inactive-track-start-shape: var( --m3e-slider-extra-large-inactive-active-track-start-shape, ${g.shape.corner.extraLargeEnd} ); --_slider-inactive-track-end-shape: var( --m3e-slider-extra-large-inactive-track-end-shape, ${g.shape.corner.extraLargeStart} ); } :host([size="extra-large"]) .track { height: var(--m3e-slider-extra-large-track-height, 6rem); } :host(:is(:state(--animating), :--animating)) .track-active, :host(:is(:state(--animating), :--animating)) .track-inactive.start, :host(:is(:state(--animating), :--animating)) .track-inactive.end { transition: ${r(`margin-inline-start ${g.motion.spring.fastEffects},\n width ${g.motion.spring.fastEffects}`)}; } .base { contain: layout style; display: inline-flex; align-items: center; position: relative; width: 100%; height: 100%; border-radius: inherit; outline: none; touch-action: none; } .track { contain: layout style paint; position: relative; flex: 1 1 auto; touch-action: none; } .track-inactive, .track-active { contain: layout style paint; position: absolute; height: 100%; touch-action: none; } .track-active { margin-inline-start: var(--_slider-active-track-offset, 0px); width: var(--_slider-active-track-size, 0px); border-radius: var(--_slider-active-track-middle-shape, var(--_slider-active-track-shape)); } .track-inactive.start { width: var(--_slider-inactive-track-before-size, 0px); border-radius: var(--_slider-inactive-track-start-shape); } .track-inactive.end { margin-inline-start: var(--_slider-inactive-track-after-offset, 0px); width: var(--_slider-inactive-track-after-size, 0px); border-radius: var(--_slider-inactive-track-end-shape); } .ticks { position: absolute; width: 100%; height: var(--m3e-slider-tick-size, 0.25rem); overflow: visible; touch-action: none; } .tick { position: absolute; top: 0; touch-action: none; inset-inline-start: calc(var(--m3e-slider-tick-size, 0.25rem) + calc(var(--m3e-slider-tick-size, 0.25rem) / 2)); width: var(--m3e-slider-tick-size, 0.25rem); height: var(--m3e-slider-tick-size, 0.25rem); border-radius: var(--m3e-slider-tick-shape, ${g.shape.corner.full}); } :host(:not([disabled])) .track-inactive { background-color: var(--m3e-slider-inactive-track-color, ${g.color.secondaryContainer}); } :host([disabled]) .track-inactive { background-color: color-mix( in srgb, var(--m3e-slider-disabled-inactive-track-color, ${g.color.onSurface}) var(--m3e-slider-disabled-inactive-track-opacity, 12%), transparent ); } :host(:not([disabled])) .track-active { background-color: var(--m3e-slider-active-track-color, ${g.color.primary}); } :host([disabled]) .track-active { background-color: color-mix( in srgb, var(--m3e-slider-disabled-active-track-color, ${g.color.onSurface}) var(--m3e-slider-disabled-active-track-opacity, 38%), transparent ); } :host(:not([disabled])) .tick.active { background-color: var(--m3e-slider-tick-active-color, ${g.color.onPrimary}); } :host([disabled]) .tick.active { background-color: var(--m3e-slider-disabled-tick-active-color, ${g.color.inverseOnSurface}); } :host(:not([disabled])) .tick.inactive { background-color: var(--m3e-slider-tick-inactive-color, ${g.color.onSecondaryContainer}); } :host([disabled]) .tick.inactive { background-color: var(--m3e-slider-disabled-tick-inactive-color, ${g.color.onSurface}); } :host(:not([discrete])) .tick.active { display: none; } :host(:hover[labelled]) .base, :host(:focus-within[labelled]) .base { --_slider-label-visibility: visible; --_slider-label-opacity: 1; --_slider-label-transform: scale(1); } @media (forced-colors: active) { :host(:not([disabled])) .track-inactive { background-color: unset; } :host(:not([disabled])) .base.range .track-inactive.start, :host(:not([disabled])) .track-inactive.end { border: 1px solid CanvasText; box-sizing: border-box; } :host(:not([disabled])) .tick.inactive { background-color: CanvasText; } :host(:not([disabled])) .tick.active { background-color: Canvas; } :host(:not([disabled])) .track-active { background-color: CanvasText; } :host([disabled]) .base.range .track-inactive.start, :host([disabled]) .track-inactive.end { border: 1px solid GrayText; box-sizing: border-box; } :host([disabled]) .track-active { background-color: GrayText; } :host([disabled]) .tick.inactive { background-color: GrayText; } :host([disabled]) .tick.active { background-color: Canvas; } }`,t([n(".base")],te.prototype,"_base",void 0),t([c()],te.prototype,"_ticks",void 0),t([h({reflect:!0})],te.prototype,"size",void 0),t([h({type:Boolean,reflect:!0})],te.prototype,"disabled",void 0),t([h({type:Boolean,reflect:!0})],te.prototype,"discrete",void 0),t([h({type:Number})],te.prototype,"min",void 0),t([h({type:Number})],te.prototype,"max",void 0),t([h({type:Number})],te.prototype,"step",void 0),t([h({type:Boolean})],te.prototype,"labelled",void 0),t([h({attribute:!1})],te.prototype,"displayWith",void 0),te=t([y("m3e-slider")],te);export{te as M3eSliderElement,P as M3eSliderThumbElement};
|
|
7
7
|
//# sourceMappingURL=slider.min.js.map
|
package/dist/slider.min.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slider.min.js","sources":["../../src/slider/SliderThumbElement.ts","../../src/slider/SliderElement.ts"],"sourcesContent":["import { css, CSSResultGroup, html, LitElement, PropertyValues, unsafeCSS } from \"lit\";\r\nimport { property, query } from \"lit/decorators.js\";\r\n\r\nimport {\r\n AttachInternals,\r\n customElement,\r\n DesignToken,\r\n Dirty,\r\n Disabled,\r\n Focusable,\r\n FormAssociated,\r\n formValue,\r\n M3eFocusRingElement,\r\n Role,\r\n Touched,\r\n} from \"@m3e/web/core\";\r\n\r\n/**\r\n * A thumb used to select a value in a slider.\r\n *\r\n * @description\r\n * The `m3e-slider-thumb` component is used within a `m3e-slider` to represent and select a specific value.\r\n * This component supports continuous and discrete input, form association, and accessibility semantics.\r\n * It emits `input` and `change` events to reflect value updates.\r\n *\r\n * @example\r\n * The following example illustrates a labelled slider with thumb used to select a single numeric value.\r\n * ```html\r\n * <m3e-slider labelled>\r\n * <m3e-slider-thumb value=\"50\"></m3e-slider-thumb>\r\n * </m3e-slider>\r\n * ```\r\n *\r\n * @example\r\n * The next example illustrates a labelled range slider with two thumbs used to select a minimum and maximum numeric value.\r\n * ```html\r\n * <m3e-slider labelled>\r\n * <m3e-slider-thumb value=\"25\"></m3e-slider-thumb>\r\n * <m3e-slider-thumb value=\"75\"></m3e-slider-thumb>\r\n * </m3e-slider>\r\n * ```\r\n *\r\n * @tag m3e-slider-thumb\r\n *\r\n * @attr disabled - Whether the element is disabled.\r\n * @attr name - The name that identifies the element when submitting the associated form.\r\n * @attr value - The value of the thumb.\r\n *\r\n * @fires beforeinput - Dispatched before the value changes.\r\n * @fires input - Dispatched when the value changes.\r\n * @fires change - Dispatched when the value changes.\r\n * @fires click - Dispatched when the element is clicked.\r\n *\r\n * @cssprop --m3e-slider-thumb-width - Width of the slider thumb.\r\n * @cssprop --m3e-slider-thumb-padding - Horizontal padding around the thumb.\r\n * @cssprop --m3e-slider-thumb-color - Active color of the slider thumb when enabled.\r\n * @cssprop --m3e-slider-thumb-pressed-width - Width of the thumb when pressed.\r\n * @cssprop --m3e-slider-thumb-disabled-color - Color of the thumb when disabled.\r\n * @cssprop --m3e-slider-thumb-disabled-opacity - Opacity of the thumb when disabled.\r\n * @cssprop --m3e-slider-label-width - Width of the floating label above the thumb.\r\n * @cssprop --m3e-slider-label-container-color - Background color of the label container.\r\n * @cssprop --m3e-slider-label-color - Text color of the label.\r\n * @cssprop --m3e-slider-label-font-size - Font size of the label text.\r\n * @cssprop --m3e-slider-label-font-weight - Font weight of the label text.\r\n * @cssprop --m3e-slider-label-line-height - Line height of the label text.\r\n * @cssprop --m3e-slider-label-tracking - Letter spacing of the label text.\r\n */\r\n@customElement(\"m3e-slider-thumb\")\r\nexport class M3eSliderThumbElement extends Dirty(\r\n Touched(FormAssociated(Focusable(Disabled(AttachInternals(Role(LitElement, \"slider\")))))),\r\n) {\r\n /** The styles of the element. */\r\n static override styles: CSSResultGroup = css`\r\n :host {\r\n display: block;\r\n box-sizing: border-box;\r\n position: absolute;\r\n outline: none;\r\n top: 0;\r\n bottom: 0;\r\n border-radius: var(--m3e-slider-thumb-shape, ${DesignToken.shape.corner.full});\r\n user-select: none;\r\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\r\n }\r\n .base {\r\n contain: layout style;\r\n box-sizing: border-box;\r\n vertical-align: middle;\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n position: relative;\r\n width: 100%;\r\n height: 100%;\r\n border-radius: inherit;\r\n }\r\n .touch {\r\n position: absolute;\r\n height: 3rem;\r\n left: 0;\r\n right: 0;\r\n touch-action: none;\r\n }\r\n .wrapper {\r\n display: inline-flex;\r\n justify-content: center;\r\n height: 100%;\r\n border-radius: inherit;\r\n width: calc(var(--m3e-slider-thumb-width, 0.25rem) + calc(var(--m3e-slider-thumb-padding, 0.375em) * 2));\r\n }\r\n .focus-ring {\r\n top: calc(0px - var(--m3e-focus-ring-thickness, 3px));\r\n bottom: calc(0px - var(--m3e-focus-ring-thickness, 3px));\r\n left: var(--m3e-focus-ring-thickness, 3px);\r\n right: var(--m3e-focus-ring-thickness, 3px);\r\n }\r\n .label {\r\n user-select: none;\r\n position: absolute;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n visibility: var(--_slider-label-visibility, hidden);\r\n opacity: var(--_slider-label-opacity, 0);\r\n transform: var(--_slider-label-transform, scale(0));\r\n transition: ${unsafeCSS(\r\n `opacity ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard}, \r\n transform ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard},\r\n visibility ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard} allow-discrete`,\r\n )};\r\n width: var(--m3e-slider-label-width, 3rem);\r\n height: var(--_m3e-slider-label-height, 2.75rem);\r\n top: calc(0px - var(--_m3e-slider-label-height, 2.75rem) - var(--_m3e-slider-label-margin, 0.25rem));\r\n inset-inline-start: calc(0px - 100%);\r\n border-radius: var(--m3e-slider-label-shape, ${DesignToken.shape.corner.full});\r\n background-color: var(--m3e-slider-label-container-color, ${DesignToken.color.inverseSurface});\r\n color: var(--m3e-slider-label-color, ${DesignToken.color.inverseOnSurface});\r\n font-size: var(--m3e-slider-label-font-size, ${DesignToken.typescale.standard.label.medium.fontSize});\r\n font-weight: var(--m3e-slider-label-font-weight, ${DesignToken.typescale.standard.label.medium.fontWeight});\r\n line-height: var(--m3e-slider-label-line-height, ${DesignToken.typescale.standard.label.medium.lineHeight});\r\n letter-spacing: var(--m3e-slider-label-tracking, ${DesignToken.typescale.standard.label.medium.tracking});\r\n }\r\n @starting-style {\r\n .label {\r\n opacity: 0;\r\n transform: scale(0);\r\n }\r\n }\r\n .handle {\r\n height: 100%;\r\n width: var(--m3e-slider-thumb-width, 0.25rem);\r\n border-radius: inherit;\r\n transition: ${unsafeCSS(`width ${DesignToken.motion.duration.short2} ${DesignToken.motion.easing.standard}`)};\r\n }\r\n :host(:active:not([aria-disabled=\"true\"])) .handle {\r\n width: var(--m3e-slider-thumb-pressed-width, 2px);\r\n }\r\n :host(:not([aria-disabled=\"true\"])) .handle {\r\n background-color: var(--m3e-slider-thumb-color, ${DesignToken.color.primary});\r\n }\r\n :host([aria-disabled=\"true\"]) .handle {\r\n opacity: var(--m3e-slider-thumb-disabled-opacity, 38%);\r\n background-color: var(--m3e-slider-thumb-disabled-color, ${DesignToken.color.onSurface});\r\n }\r\n @media (prefers-reduced-motion) {\r\n .label {\r\n transition: none;\r\n }\r\n }\r\n @media (forced-colors: active) {\r\n .label {\r\n forced-color-adjust: none;\r\n background-color: CanvasText;\r\n color: Canvas;\r\n }\r\n :host(:not([aria-disabled=\"true\"])) .handle {\r\n background-color: CanvasText;\r\n }\r\n :host([aria-disabled=\"true\"]) .handle {\r\n opacity: unset;\r\n background-color: GrayText;\r\n }\r\n }\r\n `;\r\n\r\n /** @private */ @query(\".focus-ring\")\r\n private readonly _focusRing?: M3eFocusRingElement;\r\n\r\n /**\r\n * The value of the thumb.\r\n * @default null\r\n */\r\n @property({ type: Number, reflect: true }) value: number | null = null;\r\n\r\n /** @inheritdoc */\r\n override get [formValue](): string | File | FormData | null {\r\n return this.value?.toString() ?? null;\r\n }\r\n\r\n /** @internal */\r\n get #labelText(): string {\r\n return this.closest(\"m3e-slider\")?.displayWith?.(this.value) ?? this.value?.toString() ?? \"\";\r\n }\r\n\r\n /** @inheritdoc */\r\n override focus(options?: FocusOptions): void {\r\n if (this._focusRing) {\r\n this._focusRing.disabled = true;\r\n }\r\n\r\n super.focus(options);\r\n\r\n if (this._focusRing) {\r\n this._focusRing.disabled = this.disabled;\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override firstUpdated(_changedProperties: PropertyValues<this>): void {\r\n super.firstUpdated(_changedProperties);\r\n this._focusRing?.attach(this);\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override update(changedProperties: PropertyValues<this>): void {\r\n super.update(changedProperties);\r\n\r\n if (changedProperties.has(\"value\")) {\r\n this.dispatchEvent(new Event(\"value-change\", { bubbles: true }));\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override render(): unknown {\r\n return html`<div class=\"label\" aria-hidden=\"true\">${this.#labelText}</div>\r\n <div class=\"base\">\r\n <m3e-focus-ring class=\"focus-ring\" ?disabled=\"${this.disabled}\"></m3e-focus-ring>\r\n <div class=\"touch\" aria-hidden=\"true\"></div>\r\n <div class=\"wrapper\">\r\n <div class=\"handle\"></div>\r\n </div>\r\n </div>`;\r\n }\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n \"m3e-slider-thumb\": M3eSliderThumbElement;\r\n }\r\n}\r\n","import { css, CSSResultGroup, html, LitElement, PropertyValues, unsafeCSS } from \"lit\";\r\nimport { property, query, state } from \"lit/decorators.js\";\r\nimport { ifDefined } from \"lit/directives/if-defined.js\";\r\n\r\nimport {\r\n addCustomState,\r\n AttachInternals,\r\n customElement,\r\n deleteCustomState,\r\n DesignToken,\r\n hasCustomState,\r\n prefersReducedMotion,\r\n ResizeController,\r\n safeStyleMap,\r\n} from \"@m3e/web/core\";\r\n\r\nimport { M3eDirectionality } from \"@m3e/web/core/bidi\";\r\n\r\nimport { M3eSliderThumbElement } from \"./SliderThumbElement\";\r\nimport { SliderSize } from \"./SliderSize\";\r\n\r\n/**\r\n * Allows for the selection of numeric values from a range.\r\n *\r\n * @description\r\n * The `m3e-slider` component enables users to select a numeric value from a continuous or discrete range.\r\n * Designed according to Material 3 principles, it supports labeled value indicators, tick marks, and\r\n * snapping behavior.\r\n *\r\n * @example\r\n * The following example illustrates a labelled slider with thumb used to select a single numeric value.\r\n * ```html\r\n * <m3e-slider labelled>\r\n * <m3e-slider-thumb value=\"50\"></m3e-slider-thumb>\r\n * </m3e-slider>\r\n * ```\r\n *\r\n * @example\r\n * The next example illustrates a labelled range slider with two thumbs used to select a minimum and maximum numeric value.\r\n * ```html\r\n * <m3e-slider labelled>\r\n * <m3e-slider-thumb value=\"25\"></m3e-slider-thumb>\r\n * <m3e-slider-thumb value=\"75\"></m3e-slider-thumb>\r\n * </m3e-slider>\r\n * ```\r\n *\r\n * @tag m3e-slider\r\n *\r\n * @slot - Renders the thumbs of the slider.\r\n *\r\n * @attr disabled - Whether the element is disabled.\r\n * @attr discrete - Whether to show tick marks.\r\n * @attr labelled - Whether to show value labels when activated.\r\n * @attr max - The maximum allowable value.\r\n * @attr min - The minimum allowable value.\r\n * @attr step - The value at which the thumb will snap.\r\n * @attr size - The size of the slider.\r\n *\r\n * @fires beforeinput - Dispatched before the value of a thumb changes.\r\n * @fires input - Dispatched when the value of a thumb changes.\r\n * @fires change - Dispatched when the value of a thumb changes.\r\n *\r\n * @cssprop --m3e-slider-min-width - Minimum inline size of the slider host.\r\n * @cssprop --m3e-slider-small-height - Height of the slider when size is small or extra-small.\r\n * @cssprop --m3e-slider-medium-height - Height of the slider when size is medium.\r\n * @cssprop --m3e-slider-large-height - Height of the slider when size is large.\r\n * @cssprop --m3e-slider-extra-large-height - Height of the slider when size is extra-large.\r\n * @cssprop --m3e-slider-small-active-track-shape - Corner shape of the active track for small sliders.\r\n * @cssprop --m3e-slider-small-inactive-active-track-start-shape - Corner shape of the inactive track start for small sliders.\r\n * @cssprop --m3e-slider-small-inactive-track-end-shape - Corner shape of the inactive track end for small sliders.\r\n * @cssprop --m3e-slider-medium-active-track-shape - Corner shape of the active track for medium sliders.\r\n * @cssprop --m3e-slider-medium-inactive-active-track-start-shape - Corner shape of the inactive track start for medium sliders.\r\n * @cssprop --m3e-slider-medium-inactive-track-end-shape - Corner shape of the inactive track end for medium sliders.\r\n * @cssprop --m3e-slider-large-active-track-shape - Corner shape of the active track for large sliders.\r\n * @cssprop --m3e-slider-large-inactive-active-track-start-shape - Corner shape of the inactive track start for large sliders.\r\n * @cssprop --m3e-slider-large-inactive-track-end-shape - Corner shape of the inactive track end for large sliders.\r\n * @cssprop --m3e-slider-extra-large-active-track-shape - Corner shape of the active track for extra-large sliders.\r\n * @cssprop --m3e-slider-extra-large-inactive-active-track-start-shape - Corner shape of the inactive track start for extra-large sliders.\r\n * @cssprop --m3e-slider-extra-large-inactive-track-end-shape - Corner shape of the inactive track end for extra-large sliders.\r\n * @cssprop --m3e-slider-extra-small-track-height - Height of the track for extra-small sliders.\r\n * @cssprop --m3e-slider-small-track-height - Height of the track for small sliders.\r\n * @cssprop --m3e-slider-medium-track-height - Height of the track for medium sliders.\r\n * @cssprop --m3e-slider-large-track-height - Height of the track for large sliders.\r\n * @cssprop --m3e-slider-extra-large-track-height - Height of the track for extra-large sliders.\r\n * @cssprop --m3e-slider-tick-size - Size of each tick mark.\r\n * @cssprop --m3e-slider-tick-shape - Corner shape of each tick mark.\r\n * @cssprop --m3e-slider-inactive-track-color - Background color of the inactive track when enabled.\r\n * @cssprop --m3e-slider-disabled-inactive-track-color - Base color of the inactive track when disabled.\r\n * @cssprop --m3e-slider-disabled-inactive-track-opacity - Opacity of the inactive track when disabled.\r\n * @cssprop --m3e-slider-active-track-color - Background color of the active track when enabled.\r\n * @cssprop --m3e-slider-disabled-active-track-color - Base color of the active track when disabled.\r\n * @cssprop --m3e-slider-disabled-active-track-opacity - Opacity of the active track when disabled.\r\n * @cssprop --m3e-slider-tick-active-color - Color of active ticks when enabled.\r\n * @cssprop --m3e-slider-disabled-tick-active-color - Color of active ticks when disabled.\r\n * @cssprop --m3e-slider-tick-inactive-color - Color of inactive ticks when enabled.\r\n * @cssprop --m3e-slider-disabled-tick-inactive-color - Color of inactive ticks when disabled.\r\n */\r\n@customElement(\"m3e-slider\")\r\nexport class M3eSliderElement extends AttachInternals(LitElement) {\r\n /** The styles of the element. */\r\n static override styles: CSSResultGroup = css`\r\n :host {\r\n display: inline-block;\r\n vertical-align: middle;\r\n min-inline-size: var(--m3e-slider-min-width, 12.5rem);\r\n user-select: none;\r\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\r\n }\r\n :host(:not([disabled])) {\r\n cursor: pointer;\r\n }\r\n :host([size=\"extra-small\"]),\r\n :host([size=\"small\"]) {\r\n height: var(--m3e-slider-small-height, 2.75rem);\r\n }\r\n :host(:not(:dir(rtl))[size=\"extra-small\"]) .base,\r\n :host(:not(:dir(rtl))[size=\"small\"]) .base {\r\n --_slider-active-track-shape: var(--m3e-slider-small-active-track-shape, ${DesignToken.shape.corner.smallStart});\r\n --_slider-inactive-track-start-shape: var(\r\n --m3e-slider-small-inactive-active-track-start-shape,\r\n ${DesignToken.shape.corner.smallStart}\r\n );\r\n --_slider-inactive-track-end-shape: var(\r\n --m3e-slider-small-inactive-track-end-shape,\r\n ${DesignToken.shape.corner.smallEnd}\r\n );\r\n }\r\n :host(:dir(rtl)[size=\"extra-small\"]) .base,\r\n :host(:dir(rtl)[size=\"small\"]) .base {\r\n --_slider-active-track-shape: var(--m3e-slider-small-active-track-shape, ${DesignToken.shape.corner.smallEnd});\r\n --_slider-inactive-track-start-shape: var(\r\n --m3e-slider-small-inactive-active-track-start-shape,\r\n ${DesignToken.shape.corner.smallEnd}\r\n );\r\n --_slider-inactive-track-end-shape: var(\r\n --m3e-slider-small-inactive-track-end-shape,\r\n ${DesignToken.shape.corner.smallStart}\r\n );\r\n }\r\n :host([size=\"extra-small\"]) .track {\r\n height: calc(var(--m3e-slider-extra-small-track-height, 1rem));\r\n }\r\n :host([size=\"small\"]) .track {\r\n height: calc(var(--m3e-slider-small-track-height, 1.5rem));\r\n }\r\n :host([size=\"medium\"]) {\r\n height: var(--m3e-slider-medium-height, 3.25rem);\r\n }\r\n :host(:not(:dir(rtl))[size=\"medium\"]) .base {\r\n --_slider-active-track-shape: var(\r\n --m3e-slider-medium-active-track-shape,\r\n ${DesignToken.shape.corner.mediumStart}\r\n );\r\n --_slider-inactive-track-start-shape: var(\r\n --m3e-slider-medium-inactive-active-track-start-shape,\r\n ${DesignToken.shape.corner.mediumStart}\r\n );\r\n --_slider-inactive-track-end-shape: var(\r\n --m3e-slider-medium-inactive-track-end-shape,\r\n ${DesignToken.shape.corner.mediumEnd}\r\n );\r\n }\r\n :host(:dir(rtl)[size=\"medium\"]) .base {\r\n --_slider-active-track-shape: var(--m3e-slider-medium-active-track-shape, ${DesignToken.shape.corner.mediumEnd});\r\n --_slider-inactive-track-start-shape: var(\r\n --m3e-slider-medium-inactive-active-track-start-shape,\r\n ${DesignToken.shape.corner.mediumEnd}\r\n );\r\n --_slider-inactive-track-end-shape: var(\r\n --m3e-slider-medium-inactive-track-end-shape,\r\n ${DesignToken.shape.corner.mediumStart}\r\n );\r\n }\r\n :host([size=\"medium\"]) .track {\r\n height: var(--m3e-slider-medium-track-height, 2.5rem);\r\n }\r\n :host([size=\"large\"]) {\r\n height: var(--m3e-slider-large-height, 4.25rem);\r\n }\r\n :host(:not(:dir(rtl))[size=\"large\"]) .base {\r\n --_slider-active-track-shape: var(--m3e-slider-large-active-track-shape, ${DesignToken.shape.corner.largeStart});\r\n --_slider-inactive-track-start-shape: var(\r\n --m3e-slider-large-inactive-active-track-start-shape,\r\n ${DesignToken.shape.corner.largeStart}\r\n );\r\n --_slider-inactive-track-end-shape: var(\r\n --m3e-slider-large-inactive-track-end-shape,\r\n ${DesignToken.shape.corner.largeEnd}\r\n );\r\n }\r\n :host(:dir(rtl)[size=\"large\"]) .base {\r\n --_slider-active-track-shape: var(--m3e-slider-large-active-track-shape, ${DesignToken.shape.corner.largeEnd});\r\n --_slider-inactive-track-start-shape: var(\r\n --m3e-slider-large-inactive-active-track-start-shape,\r\n ${DesignToken.shape.corner.largeEnd}\r\n );\r\n --_slider-inactive-track-end-shape: var(\r\n --m3e-slider-large-inactive-track-end-shape,\r\n ${DesignToken.shape.corner.largeStart}\r\n );\r\n }\r\n :host([size=\"large\"]) .track {\r\n height: var(--m3e-slider-large-track-height, 3.5rem);\r\n }\r\n :host([size=\"extra-large\"]) {\r\n height: var(--m3e-slider-extra-large-height, 6.75rem);\r\n }\r\n :host(:not(:dir(rtl))[size=\"extra-large\"]) .base {\r\n --_slider-active-track-shape: var(\r\n --m3e-slider-extra-large-active-track-shape,\r\n ${DesignToken.shape.corner.extraLargeStart}\r\n );\r\n --_slider-inactive-track-start-shape: var(\r\n --m3e-slider-extra-large-inactive-active-track-start-shape,\r\n ${DesignToken.shape.corner.extraLargeStart}\r\n );\r\n --_slider-inactive-track-end-shape: var(\r\n --m3e-slider-extra-large-inactive-track-end-shape,\r\n ${DesignToken.shape.corner.extraLargeEnd}\r\n );\r\n }\r\n :host(:dir(rtl)[size=\"extra-large\"]) .base {\r\n --_slider-active-track-shape: var(\r\n --m3e-slider-extra-large-active-track-shape,\r\n ${DesignToken.shape.corner.extraLargeEnd}\r\n );\r\n --_slider-inactive-track-start-shape: var(\r\n --m3e-slider-extra-large-inactive-active-track-start-shape,\r\n ${DesignToken.shape.corner.extraLargeEnd}\r\n );\r\n --_slider-inactive-track-end-shape: var(\r\n --m3e-slider-extra-large-inactive-track-end-shape,\r\n ${DesignToken.shape.corner.extraLargeStart}\r\n );\r\n }\r\n :host([size=\"extra-large\"]) .track {\r\n height: var(--m3e-slider-extra-large-track-height, 6rem);\r\n }\r\n :host(:is(:state(--animating), :--animating)) .track-active,\r\n :host(:is(:state(--animating), :--animating)) .track-inactive.start,\r\n :host(:is(:state(--animating), :--animating)) .track-inactive.end {\r\n transition: ${unsafeCSS(`margin-inline-start ${DesignToken.motion.spring.fastEffects},\r\n width ${DesignToken.motion.spring.fastEffects}`)};\r\n }\r\n .base {\r\n contain: layout style;\r\n display: inline-flex;\r\n align-items: center;\r\n position: relative;\r\n width: 100%;\r\n height: 100%;\r\n border-radius: inherit;\r\n outline: none;\r\n touch-action: none;\r\n }\r\n .track {\r\n contain: layout style paint;\r\n position: relative;\r\n flex: 1 1 auto;\r\n touch-action: none;\r\n }\r\n .track-inactive,\r\n .track-active {\r\n contain: layout style paint;\r\n position: absolute;\r\n height: 100%;\r\n touch-action: none;\r\n }\r\n .track-active {\r\n margin-inline-start: var(--_slider-active-track-offset, 0px);\r\n width: var(--_slider-active-track-size, 0px);\r\n border-radius: var(--_slider-active-track-middle-shape, var(--_slider-active-track-shape));\r\n }\r\n .track-inactive.start {\r\n width: var(--_slider-inactive-track-before-size, 0px);\r\n border-radius: var(--_slider-inactive-track-start-shape);\r\n }\r\n .track-inactive.end {\r\n margin-inline-start: var(--_slider-inactive-track-after-offset, 0px);\r\n width: var(--_slider-inactive-track-after-size, 0px);\r\n border-radius: var(--_slider-inactive-track-end-shape);\r\n }\r\n .ticks {\r\n position: absolute;\r\n width: 100%;\r\n height: var(--m3e-slider-tick-size, 0.25rem);\r\n overflow: visible;\r\n touch-action: none;\r\n }\r\n .tick {\r\n position: absolute;\r\n top: 0;\r\n touch-action: none;\r\n inset-inline-start: calc(var(--m3e-slider-tick-size, 0.25rem) + calc(var(--m3e-slider-tick-size, 0.25rem) / 2));\r\n width: var(--m3e-slider-tick-size, 0.25rem);\r\n height: var(--m3e-slider-tick-size, 0.25rem);\r\n border-radius: var(--m3e-slider-tick-shape, ${DesignToken.shape.corner.full});\r\n }\r\n :host(:not([disabled])) .track-inactive {\r\n background-color: var(--m3e-slider-inactive-track-color, ${DesignToken.color.secondaryContainer});\r\n }\r\n :host([disabled]) .track-inactive {\r\n background-color: color-mix(\r\n in srgb,\r\n var(--m3e-slider-disabled-inactive-track-color, ${DesignToken.color.onSurface})\r\n var(--m3e-slider-disabled-inactive-track-opacity, 12%),\r\n transparent\r\n );\r\n }\r\n :host(:not([disabled])) .track-active {\r\n background-color: var(--m3e-slider-active-track-color, ${DesignToken.color.primary});\r\n }\r\n :host([disabled]) .track-active {\r\n background-color: color-mix(\r\n in srgb,\r\n var(--m3e-slider-disabled-active-track-color, ${DesignToken.color.onSurface})\r\n var(--m3e-slider-disabled-active-track-opacity, 38%),\r\n transparent\r\n );\r\n }\r\n :host(:not([disabled])) .tick.active {\r\n background-color: var(--m3e-slider-tick-active-color, ${DesignToken.color.onPrimary});\r\n }\r\n :host([disabled]) .tick.active {\r\n background-color: var(--m3e-slider-disabled-tick-active-color, ${DesignToken.color.inverseOnSurface});\r\n }\r\n :host(:not([disabled])) .tick.inactive {\r\n background-color: var(--m3e-slider-tick-inactive-color, ${DesignToken.color.onSecondaryContainer});\r\n }\r\n :host([disabled]) .tick.inactive {\r\n background-color: var(--m3e-slider-disabled-tick-inactive-color, ${DesignToken.color.onSurface});\r\n }\r\n :host(:not([discrete])) .tick.active {\r\n display: none;\r\n }\r\n :host(:hover[labelled]) .base,\r\n :host(:focus-within[labelled]) .base {\r\n --_slider-label-visibility: visible;\r\n --_slider-label-opacity: 1;\r\n --_slider-label-transform: scale(1);\r\n }\r\n @media (forced-colors: active) {\r\n :host(:not([disabled])) .track-inactive {\r\n background-color: unset;\r\n }\r\n :host(:not([disabled])) .base.range .track-inactive.start,\r\n :host(:not([disabled])) .track-inactive.end {\r\n border: 1px solid CanvasText;\r\n box-sizing: border-box;\r\n }\r\n :host(:not([disabled])) .tick.inactive {\r\n background-color: CanvasText;\r\n }\r\n :host(:not([disabled])) .tick.active {\r\n background-color: Canvas;\r\n }\r\n :host(:not([disabled])) .track-active {\r\n background-color: CanvasText;\r\n }\r\n :host([disabled]) .base.range .track-inactive.start,\r\n :host([disabled]) .track-inactive.end {\r\n border: 1px solid GrayText;\r\n box-sizing: border-box;\r\n }\r\n :host([disabled]) .track-active {\r\n background-color: GrayText;\r\n }\r\n :host([disabled]) .tick.inactive {\r\n background-color: GrayText;\r\n }\r\n :host([disabled]) .tick.active {\r\n background-color: Canvas;\r\n }\r\n }\r\n `;\r\n\r\n /** @private */ #directionalitySubscription?: () => void;\r\n\r\n /** @private */\r\n @query(\".base\") private readonly _base?: HTMLElement;\r\n\r\n /** @private */\r\n @state() private _ticks = new Array<{ value: number; active: boolean }>();\r\n\r\n /** @private */ readonly #changedThumbs = new Set<M3eSliderThumbElement>();\r\n /** @private */ #thumbs = new Array<M3eSliderThumbElement>();\r\n /** @private */ #activeThumb?: M3eSliderThumbElement;\r\n /** @private */ #cachedWidth = 0;\r\n /** @private */ #cachedThumbWidth = 0;\r\n /** @private */ #cachedLeft = 0;\r\n\r\n constructor() {\r\n super();\r\n new ResizeController(this, { callback: () => this.#updateDimensions(true) });\r\n }\r\n\r\n /**\r\n * The size of the slider.\r\n * @default \"extra-small\"\r\n */\r\n @property({ reflect: true }) size: SliderSize = \"extra-small\";\r\n\r\n /**\r\n * Whether the element is disabled.\r\n * @default false\r\n */\r\n @property({ type: Boolean, reflect: true }) disabled = false;\r\n\r\n /**\r\n * Whether to show tick marks.\r\n * @default false\r\n */\r\n @property({ type: Boolean, reflect: true }) discrete = false;\r\n\r\n /**\r\n * The minimum allowable value.\r\n * @default 0\r\n */\r\n @property({ type: Number }) min = 0;\r\n\r\n /**\r\n * The maximum allowable value.\r\n * @default 100\r\n */\r\n @property({ type: Number }) max = 100;\r\n\r\n /**\r\n * The value at which the thumb will snap.\r\n * @default 1\r\n */\r\n @property({ type: Number }) step = 1;\r\n\r\n /**\r\n * Whether to show value labels when activated.\r\n * @default false\r\n */\r\n @property({ type: Boolean }) labelled = false;\r\n\r\n /** The function used to format display values. */\r\n @property({ attribute: false }) displayWith: ((value: number | null) => string) | null = null;\r\n\r\n /** The thumbs used to select values. */\r\n get thumbs(): readonly M3eSliderThumbElement[] {\r\n return this.#thumbs;\r\n }\r\n\r\n /** Whether the slider is a range slider. */\r\n get isRange(): boolean {\r\n return this.#thumbs.length > 1;\r\n }\r\n\r\n /** The thumb used to select a value. */\r\n get thumb(): M3eSliderThumbElement | null {\r\n return this.#thumbs[0] ?? null;\r\n }\r\n\r\n /** The thumb used to select the lower value of a range slider. */\r\n get lowerThumb(): M3eSliderThumbElement | null {\r\n return this.thumb;\r\n }\r\n\r\n /** The thumb used to select the upper value of a range slider. */\r\n get upperThumb(): M3eSliderThumbElement | null {\r\n return this.#thumbs[1] ?? null;\r\n }\r\n\r\n /** @inheritdoc */\r\n override connectedCallback(): void {\r\n super.connectedCallback();\r\n\r\n this.#directionalitySubscription = M3eDirectionality.observe(() => {\r\n this.#updateDimensions(true);\r\n this.requestUpdate();\r\n });\r\n }\r\n\r\n /** @inheritdoc */\r\n override disconnectedCallback(): void {\r\n super.disconnectedCallback();\r\n this.#changedThumbs.clear();\r\n this.#directionalitySubscription?.();\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override updated(_changedProperties: PropertyValues<this>): void {\r\n super.updated(_changedProperties);\r\n\r\n if (_changedProperties.has(\"disabled\")) {\r\n this.#thumbs.forEach((x) => (x.disabled = this.disabled));\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override render(): unknown {\r\n return html`<div\r\n class=\"base\"\r\n tabindex=\"${ifDefined(!this.disabled ? \"-1\" : undefined)}\"\r\n @pointerdown=\"${this.#handlePointerDown}\"\r\n @pointermove=\"${this.#handlePointerMove}\"\r\n @pointerup=\"${this.#handlePointerUp}\"\r\n @keydown=\"${this.#handleKeyDown}\"\r\n @keyup=\"${this.#handleKeyUp}\"\r\n @value-change=\"${this.#handleThumbChange}\"\r\n >\r\n <div class=\"track\" aria-hidden=\"true\">\r\n <div class=\"track-inactive start\"></div>\r\n <div class=\"track-active\"></div>\r\n <div class=\"track-inactive end\"></div>\r\n </div>\r\n <div class=\"ticks\" aria-hidden=\"true\">${this._ticks.map((x) => this.#renderTick(x))}</div>\r\n <slot @slotchange=\"${this.#handleSlotChange}\"></slot>\r\n </div>`;\r\n }\r\n\r\n /** @private */\r\n #renderTick(tick: { value: number; active: boolean }) {\r\n return html`<div\r\n class=\"tick ${tick.active ? \"active\" : \"inactive\"}\"\r\n style=\"${safeStyleMap({\r\n transform: `translate(${M3eDirectionality.current === \"rtl\" ? -this.#pointFromValue(tick.value) : this.#pointFromValue(tick.value)}px, 0)`,\r\n })}\"\r\n ></div>`;\r\n }\r\n\r\n /** @private */\r\n #handleSlotChange(e: Event): void {\r\n this.#thumbs = (<HTMLSlotElement>e.target)\r\n .assignedElements({ flatten: true })\r\n .filter((x) => x instanceof M3eSliderThumbElement);\r\n\r\n if (this.#thumbs.length > 2) {\r\n this.#thumbs.length = 2;\r\n }\r\n if (this.isRange) {\r\n this._base?.style.setProperty(\"--_slider-active-track-middle-shape\", `0`);\r\n } else {\r\n this._base?.style.removeProperty(\"--_slider-active-track-middle-shape\");\r\n }\r\n\r\n this.#updateThumbs();\r\n }\r\n\r\n /** @private */\r\n #updateThumbs(): void {\r\n this.#thumbs.forEach((thumb, i) => {\r\n if (this.disabled) {\r\n thumb.disabled = true;\r\n }\r\n thumb.ariaValueMin = `${this.#thumbs[i - 1]?.value ?? this.min}`;\r\n thumb.ariaValueMax = `${this.#thumbs[i + 1]?.value ?? this.max}`;\r\n thumb.ariaValueNow = `${thumb.value ?? this.#thumbs[i - 1]?.value ?? this.min}`;\r\n });\r\n }\r\n\r\n /** @private */\r\n #pointFromValue(value: number): number {\r\n return (this.#cachedWidth - this.#cachedThumbWidth) * ((value - this.min) / (this.max - this.min));\r\n }\r\n\r\n /** @private */\r\n #valueFromPoint(e: PointerEvent): number {\r\n const pos =\r\n M3eDirectionality.current === \"rtl\"\r\n ? this.#cachedLeft + this.#cachedWidth - e.clientX\r\n : e.clientX - this.#cachedLeft;\r\n const step = this.step === 0 ? 1 : this.step;\r\n const numSteps = Math.floor((this.max - this.min) / step);\r\n const percentage = pos / this.#cachedWidth;\r\n const fixedPercentage = Math.round(percentage * numSteps) / numSteps;\r\n const impreciseValue = fixedPercentage * (this.max - this.min) + this.min;\r\n return Math.round(impreciseValue / step) * step;\r\n }\r\n\r\n /** @private */\r\n #updateCachedDimensions(force = false): void {\r\n if (!this.lowerThumb) return;\r\n this.#cachedWidth = !force && this.#cachedWidth > 0 ? this.#cachedWidth : this.clientWidth;\r\n this.#cachedThumbWidth =\r\n !force && this.#cachedThumbWidth > 0 ? this.#cachedThumbWidth : this.lowerThumb.clientWidth;\r\n this.#cachedLeft = !force && this.#cachedLeft > 0 ? this.#cachedLeft : this.getBoundingClientRect().left;\r\n }\r\n\r\n /** @private */\r\n #updateDimensions(force = false): void {\r\n this.#updateCachedDimensions(force);\r\n if (!this.lowerThumb) return;\r\n\r\n const lowerValue = this.lowerThumb.value ?? this.min;\r\n const lowerPos = this.#pointFromValue(lowerValue);\r\n this.lowerThumb.style.transform = `translate(${M3eDirectionality.current === \"rtl\" ? -lowerPos : lowerPos}px, 0)`;\r\n\r\n if (!this.upperThumb) {\r\n this._base?.classList.toggle(\"range\", false);\r\n this._base?.style.setProperty(\"--_slider-active-track-size\", `${lowerPos}px`);\r\n this._base?.style.setProperty(\"--_slider-inactive-track-after-offset\", `${lowerPos + this.#cachedThumbWidth}px`);\r\n this._base?.style.setProperty(\r\n \"--_slider-inactive-track-after-size\",\r\n `${this.#cachedWidth - lowerPos - this.#cachedThumbWidth}px`,\r\n );\r\n\r\n this.#updateTicks((i) => i < lowerValue);\r\n } else {\r\n const upperValue = this.upperThumb.value ?? lowerValue;\r\n const upperPos = this.#pointFromValue(upperValue);\r\n this.upperThumb.style.transform = `translate(${M3eDirectionality.current === \"rtl\" ? -upperPos : upperPos}px, 0)`;\r\n\r\n this._base?.classList.toggle(\"range\", true);\r\n this._base?.style.setProperty(\"--_slider-inactive-track-before-size\", `${lowerPos}px`);\r\n this._base?.style.setProperty(\"--_slider-active-track-offset\", `${lowerPos + this.#cachedThumbWidth}px`);\r\n this._base?.style.setProperty(\"--_slider-active-track-size\", `${upperPos - lowerPos - this.#cachedThumbWidth}px`);\r\n this._base?.style.setProperty(\"--_slider-inactive-track-after-offset\", `${upperPos + this.#cachedThumbWidth}px`);\r\n this._base?.style.setProperty(\r\n \"--_slider-inactive-track-after-size\",\r\n `${this.#cachedWidth - this.#cachedThumbWidth - upperPos}px`,\r\n );\r\n\r\n this.#updateTicks((i) => i > lowerValue && i < upperValue);\r\n }\r\n }\r\n\r\n /** @private */\r\n #updateTicks(active: (value: number) => boolean): void {\r\n this._ticks = [];\r\n if (this.discrete && this.step > 1) {\r\n for (let i = this.min; i <= this.max; i += this.step) {\r\n this._ticks.push({ value: i, active: active(i) });\r\n }\r\n } else {\r\n this._ticks.push({ value: this.min, active: active(this.min) });\r\n if (this.min < 0 && this.max > 0) {\r\n this._ticks.push({ value: 0, active: active(0) });\r\n }\r\n this._ticks.push({ value: this.max, active: active(this.max) });\r\n }\r\n }\r\n\r\n /** @private */\r\n #handlePointerDown(e: PointerEvent): void {\r\n if (e.pointerType === \"mouse\" && e.button > 1) return;\r\n if (!this.lowerThumb || this.disabled) return;\r\n\r\n if (e.target instanceof HTMLElement) {\r\n e.target.setPointerCapture(e.pointerId);\r\n }\r\n\r\n this.#changedThumbs.clear();\r\n\r\n this.#activeThumb = e.composedPath().find((x) => x instanceof M3eSliderThumbElement);\r\n\r\n if (this.#activeThumb) {\r\n return;\r\n }\r\n\r\n const value = this.#valueFromPoint(e);\r\n\r\n if (!this.upperThumb) {\r\n if (!this.lowerThumb.disabled) {\r\n this.#changeThumb(this.lowerThumb, value, true);\r\n this.#activeThumb = this.lowerThumb;\r\n }\r\n } else {\r\n const lowerValue = this.lowerThumb.value ?? this.min;\r\n const upperValue = this.upperThumb.value ?? lowerValue;\r\n\r\n if (value < lowerValue) {\r\n if (!this.lowerThumb.disabled) {\r\n this.#changeThumb(this.lowerThumb, value, true);\r\n this.#activeThumb = this.lowerThumb;\r\n }\r\n } else if (value > upperValue) {\r\n if (!this.upperThumb.disabled) {\r\n this.#changeThumb(this.upperThumb, value, true);\r\n this.#activeThumb = this.upperThumb;\r\n }\r\n } else {\r\n const mid = (lowerValue + upperValue) / 2;\r\n if (value < mid && !this.lowerThumb.disabled) {\r\n this.#changeThumb(this.lowerThumb, value, true);\r\n this.#activeThumb = this.lowerThumb;\r\n } else if (!this.upperThumb.disabled) {\r\n this.#changeThumb(this.upperThumb, value, true);\r\n this.#activeThumb = this.upperThumb;\r\n }\r\n }\r\n }\r\n }\r\n\r\n /** @private */\r\n #handlePointerMove(e: PointerEvent): void {\r\n if (\r\n !(e.target instanceof HTMLElement) ||\r\n !e.target.hasPointerCapture(e.pointerId) ||\r\n !this.#activeThumb ||\r\n this.#activeThumb.disabled\r\n ) {\r\n return;\r\n }\r\n\r\n const value = this.#valueFromPoint(e);\r\n let min = this.min;\r\n let max = this.max;\r\n\r\n if (this.#activeThumb === this.upperThumb) {\r\n min = Math.max(min, this.lowerThumb?.value ?? 0);\r\n } else if (this.upperThumb) {\r\n max = Math.min(max, this.upperThumb.value ?? this.max);\r\n }\r\n\r\n if (hasCustomState(this, \"--animating\")) {\r\n deleteCustomState(this, \"--animating\");\r\n this.#activeThumb.style.transition = \"\";\r\n }\r\n\r\n this.#changeThumb(this.#activeThumb, Math.min(max, Math.max(min, value)));\r\n }\r\n\r\n /** @private */\r\n #handlePointerUp(e: PointerEvent): void {\r\n if (e.pointerType === \"mouse\" && e.button > 1) return;\r\n if (!this.lowerThumb || this.disabled) return;\r\n\r\n if (e.target instanceof HTMLElement) {\r\n e.target.releasePointerCapture(e.pointerId);\r\n }\r\n\r\n if (this.#activeThumb && !this.#activeThumb.disabled) {\r\n this.#commitThumb(this.#activeThumb);\r\n this.#activeThumb.focus();\r\n }\r\n }\r\n\r\n /** @private */\r\n #handleKeyDown(e: KeyboardEvent): void {\r\n this.#activeThumb = e.composedPath().find((x) => x instanceof M3eSliderThumbElement);\r\n\r\n if (!this.#activeThumb) return;\r\n\r\n const value = this.#activeThumb.value ?? 0;\r\n\r\n let min = this.min;\r\n let max = this.max;\r\n\r\n if (this.#activeThumb === this.upperThumb) {\r\n min = Math.max(min, this.lowerThumb?.value ?? 0);\r\n } else if (this.upperThumb) {\r\n max = Math.max(max, this.upperThumb.value ?? this.max);\r\n }\r\n\r\n switch (e.key) {\r\n case \"Home\":\r\n this.#changeThumb(this.#activeThumb, min);\r\n e.preventDefault();\r\n break;\r\n\r\n case \"End\":\r\n this.#changeThumb(this.#activeThumb, max);\r\n e.preventDefault();\r\n break;\r\n\r\n case \"PageUp\":\r\n if (M3eDirectionality.current === \"ltr\") {\r\n this.#changeThumb(this.#activeThumb, Math.min(max, value + (this.step > 1 ? this.step : 10)));\r\n } else {\r\n this.#changeThumb(this.#activeThumb, Math.max(min, value - (this.step > 1 ? this.step : 10)));\r\n }\r\n\r\n e.preventDefault();\r\n break;\r\n\r\n case \"PageDown\":\r\n if (M3eDirectionality.current === \"ltr\") {\r\n this.#changeThumb(this.#activeThumb, Math.max(min, value - (this.step > 1 ? this.step : 10)));\r\n } else {\r\n this.#changeThumb(this.#activeThumb, Math.min(max, value + (this.step > 1 ? this.step : 10)));\r\n }\r\n e.preventDefault();\r\n break;\r\n\r\n case \"Down\":\r\n case \"ArrowDown\":\r\n case \"Left\":\r\n case \"ArrowLeft\":\r\n if (M3eDirectionality.current === \"ltr\") {\r\n this.#changeThumb(this.#activeThumb, Math.max(min, value - this.step));\r\n } else {\r\n this.#changeThumb(this.#activeThumb, Math.min(max, value + this.step));\r\n }\r\n\r\n e.preventDefault();\r\n\r\n break;\r\n\r\n case \"Up\":\r\n case \"ArrowUp\":\r\n case \"Right\":\r\n case \"ArrowRight\":\r\n if (M3eDirectionality.current === \"ltr\") {\r\n this.#changeThumb(this.#activeThumb, Math.min(max, value + this.step));\r\n } else {\r\n this.#changeThumb(this.#activeThumb, Math.max(min, value - this.step));\r\n }\r\n\r\n e.preventDefault();\r\n break;\r\n\r\n case \" \":\r\n e.preventDefault();\r\n break;\r\n }\r\n }\r\n\r\n /** @private */\r\n #handleKeyUp(e: KeyboardEvent): void {\r\n const activeThumb = e.composedPath().find((x) => x instanceof M3eSliderThumbElement);\r\n if (activeThumb) {\r\n this.#commitThumb(activeThumb);\r\n }\r\n }\r\n\r\n /** @private */\r\n #handleThumbChange(e: Event): void {\r\n e.stopPropagation();\r\n this.#updateThumbs();\r\n this.#updateDimensions();\r\n }\r\n\r\n /** @private */\r\n #changeThumb(thumb: M3eSliderThumbElement, value: number, animate = false): void {\r\n if (thumb.value === value) return;\r\n\r\n if (thumb.dispatchEvent(new Event(\"beforeinput\", { bubbles: true, cancelable: true }))) {\r\n if (animate && !prefersReducedMotion()) {\r\n addCustomState(this, \"--animating\");\r\n thumb.addEventListener(\r\n \"transitionend\",\r\n () => {\r\n thumb.style.transition = \"\";\r\n deleteCustomState(this, \"--animating\");\r\n },\r\n { once: true },\r\n );\r\n thumb.style.transition = `transform ${DesignToken.motion.spring.fastEffects}`;\r\n }\r\n this.#changedThumbs.add(thumb);\r\n thumb.value = value;\r\n thumb.markAsDirty();\r\n thumb.markAsTouched();\r\n thumb.dispatchEvent(new Event(\"input\", { bubbles: true }));\r\n }\r\n }\r\n\r\n /** @private */\r\n #commitThumb(thumb: M3eSliderThumbElement): void {\r\n if (this.#changedThumbs.has(thumb)) {\r\n thumb.dispatchEvent(new Event(\"change\", { bubbles: true }));\r\n this.#changedThumbs.delete(thumb);\r\n }\r\n }\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n \"m3e-slider\": M3eSliderElement;\r\n }\r\n}\r\n"],"names":["M3eSliderThumbElement","Dirty","Touched","FormAssociated","Focusable","Disabled","AttachInternals","Role","LitElement","constructor","this","value","_M3eSliderThumbElement_instances","WeakSet","formValue","toString","focus","options","_focusRing","disabled","super","firstUpdated","_changedProperties","attach","update","changedProperties","has","dispatchEvent","Event","bubbles","render","html","__classPrivateFieldGet","_M3eSliderThumbElement_labelText_get","closest","displayWith","styles","css","DesignToken","shape","corner","full","unsafeCSS","motion","duration","short3","easing","standard","color","inverseSurface","inverseOnSurface","typescale","label","medium","fontSize","fontWeight","lineHeight","tracking","short2","primary","onSurface","__decorate","query","prototype","property","type","Number","reflect","customElement","M3eSliderElement","_M3eSliderElement_directionalitySubscription","set","_ticks","Array","_M3eSliderElement_changedThumbs","Set","_M3eSliderElement_thumbs","_M3eSliderElement_activeThumb","_M3eSliderElement_cachedWidth","_M3eSliderElement_cachedThumbWidth","_M3eSliderElement_cachedLeft","size","discrete","min","max","step","labelled","ResizeController","callback","_M3eSliderElement_instances","_M3eSliderElement_updateDimensions","thumbs","isRange","length","thumb","lowerThumb","upperThumb","connectedCallback","__classPrivateFieldSet","M3eDirectionality","observe","call","requestUpdate","disconnectedCallback","clear","updated","forEach","x","ifDefined","undefined","_M3eSliderElement_handlePointerDown","_M3eSliderElement_handlePointerMove","_M3eSliderElement_handlePointerUp","_M3eSliderElement_handleKeyDown","_M3eSliderElement_handleKeyUp","_M3eSliderElement_handleThumbChange","map","_M3eSliderElement_renderTick","_M3eSliderElement_handleSlotChange","tick","active","safeStyleMap","transform","current","_M3eSliderElement_pointFromValue","e","target","assignedElements","flatten","filter","_base","style","setProperty","removeProperty","_M3eSliderElement_updateThumbs","i","ariaValueMin","ariaValueMax","ariaValueNow","pos","clientX","numSteps","Math","floor","percentage","impreciseValue","round","_M3eSliderElement_updateCachedDimensions","force","clientWidth","getBoundingClientRect","left","lowerValue","lowerPos","upperValue","upperPos","classList","toggle","_M3eSliderElement_updateTicks","push","pointerType","button","HTMLElement","setPointerCapture","pointerId","composedPath","find","_M3eSliderElement_valueFromPoint","_M3eSliderElement_changeThumb","hasPointerCapture","hasCustomState","deleteCustomState","transition","releasePointerCapture","key","preventDefault","activeThumb","_M3eSliderElement_commitThumb","stopPropagation","animate","cancelable","prefersReducedMotion","addCustomState","addEventListener","once","spring","fastEffects","add","markAsDirty","markAsTouched","delete","smallStart","smallEnd","mediumStart","mediumEnd","largeStart","largeEnd","extraLargeStart","extraLargeEnd","secondaryContainer","onPrimary","onSecondaryContainer","state","Boolean","attribute"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"slider.min.js","sources":["../../src/slider/SliderThumbElement.ts","../../src/slider/SliderElement.ts"],"sourcesContent":["import { css, CSSResultGroup, html, LitElement, PropertyValues, unsafeCSS } from \"lit\";\r\nimport { property, query } from \"lit/decorators.js\";\r\n\r\nimport {\r\n AttachInternals,\r\n customElement,\r\n DesignToken,\r\n Dirty,\r\n Disabled,\r\n Focusable,\r\n FormAssociated,\r\n formValue,\r\n M3eFocusRingElement,\r\n Role,\r\n Touched,\r\n} from \"@m3e/web/core\";\r\n\r\n/**\r\n * A thumb used to select a value in a slider.\r\n *\r\n * @description\r\n * The `m3e-slider-thumb` component is used within a `m3e-slider` to represent and select a specific value.\r\n * This component supports continuous and discrete input, form association, and accessibility semantics.\r\n * It emits `input` and `change` events to reflect value updates.\r\n *\r\n * @example\r\n * The following example illustrates a labelled slider with thumb used to select a single numeric value.\r\n * ```html\r\n * <m3e-slider labelled>\r\n * <m3e-slider-thumb value=\"50\"></m3e-slider-thumb>\r\n * </m3e-slider>\r\n * ```\r\n *\r\n * @example\r\n * The next example illustrates a labelled range slider with two thumbs used to select a minimum and maximum numeric value.\r\n * ```html\r\n * <m3e-slider labelled>\r\n * <m3e-slider-thumb value=\"25\"></m3e-slider-thumb>\r\n * <m3e-slider-thumb value=\"75\"></m3e-slider-thumb>\r\n * </m3e-slider>\r\n * ```\r\n *\r\n * @tag m3e-slider-thumb\r\n *\r\n * @attr disabled - Whether the element is disabled.\r\n * @attr name - The name that identifies the element when submitting the associated form.\r\n * @attr value - The value of the thumb.\r\n *\r\n * @fires beforeinput - Dispatched before the value changes.\r\n * @fires input - Dispatched when the value changes.\r\n * @fires change - Dispatched when the value changes.\r\n * @fires click - Dispatched when the element is clicked.\r\n *\r\n * @cssprop --m3e-slider-thumb-width - Width of the slider thumb.\r\n * @cssprop --m3e-slider-thumb-padding - Horizontal padding around the thumb.\r\n * @cssprop --m3e-slider-thumb-color - Active color of the slider thumb when enabled.\r\n * @cssprop --m3e-slider-thumb-pressed-width - Width of the thumb when pressed.\r\n * @cssprop --m3e-slider-thumb-disabled-color - Color of the thumb when disabled.\r\n * @cssprop --m3e-slider-thumb-disabled-opacity - Opacity of the thumb when disabled.\r\n * @cssprop --m3e-slider-label-width - Width of the floating label above the thumb.\r\n * @cssprop --m3e-slider-label-container-color - Background color of the label container.\r\n * @cssprop --m3e-slider-label-color - Text color of the label.\r\n * @cssprop --m3e-slider-label-font-size - Font size of the label text.\r\n * @cssprop --m3e-slider-label-font-weight - Font weight of the label text.\r\n * @cssprop --m3e-slider-label-line-height - Line height of the label text.\r\n * @cssprop --m3e-slider-label-tracking - Letter spacing of the label text.\r\n */\r\n@customElement(\"m3e-slider-thumb\")\r\nexport class M3eSliderThumbElement extends Dirty(\r\n Touched(FormAssociated(Focusable(Disabled(AttachInternals(Role(LitElement, \"slider\")))))),\r\n) {\r\n /** The styles of the element. */\r\n static override styles: CSSResultGroup = css`\r\n :host {\r\n display: block;\r\n box-sizing: border-box;\r\n position: absolute;\r\n outline: none;\r\n top: 0;\r\n bottom: 0;\r\n border-radius: var(--m3e-slider-thumb-shape, ${DesignToken.shape.corner.full});\r\n user-select: none;\r\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\r\n }\r\n .base {\r\n contain: layout style;\r\n box-sizing: border-box;\r\n vertical-align: middle;\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n position: relative;\r\n width: 100%;\r\n height: 100%;\r\n border-radius: inherit;\r\n }\r\n .touch {\r\n position: absolute;\r\n height: 3rem;\r\n left: 0;\r\n right: 0;\r\n touch-action: none;\r\n }\r\n .wrapper {\r\n display: inline-flex;\r\n justify-content: center;\r\n height: 100%;\r\n border-radius: inherit;\r\n width: calc(var(--m3e-slider-thumb-width, 0.25rem) + calc(var(--m3e-slider-thumb-padding, 0.375em) * 2));\r\n }\r\n .focus-ring {\r\n top: calc(0px - var(--m3e-focus-ring-thickness, 3px));\r\n bottom: calc(0px - var(--m3e-focus-ring-thickness, 3px));\r\n left: var(--m3e-focus-ring-thickness, 3px);\r\n right: var(--m3e-focus-ring-thickness, 3px);\r\n }\r\n .label {\r\n user-select: none;\r\n position: absolute;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n visibility: var(--_slider-label-visibility, hidden);\r\n opacity: var(--_slider-label-opacity, 0);\r\n transform: var(--_slider-label-transform, scale(0));\r\n transition: ${unsafeCSS(\r\n `opacity ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard}, \r\n transform ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard},\r\n visibility ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard} allow-discrete`,\r\n )};\r\n width: var(--m3e-slider-label-width, 3rem);\r\n height: var(--_m3e-slider-label-height, 2.75rem);\r\n top: calc(0px - var(--_m3e-slider-label-height, 2.75rem) - var(--_m3e-slider-label-margin, 0.25rem));\r\n inset-inline-start: calc(0px - 100%);\r\n border-radius: var(--m3e-slider-label-shape, ${DesignToken.shape.corner.full});\r\n background-color: var(--m3e-slider-label-container-color, ${DesignToken.color.inverseSurface});\r\n color: var(--m3e-slider-label-color, ${DesignToken.color.inverseOnSurface});\r\n font-size: var(--m3e-slider-label-font-size, ${DesignToken.typescale.standard.label.medium.fontSize});\r\n font-weight: var(--m3e-slider-label-font-weight, ${DesignToken.typescale.standard.label.medium.fontWeight});\r\n line-height: var(--m3e-slider-label-line-height, ${DesignToken.typescale.standard.label.medium.lineHeight});\r\n letter-spacing: var(--m3e-slider-label-tracking, ${DesignToken.typescale.standard.label.medium.tracking});\r\n }\r\n @starting-style {\r\n .label {\r\n opacity: 0;\r\n transform: scale(0);\r\n }\r\n }\r\n .handle {\r\n height: 100%;\r\n width: var(--m3e-slider-thumb-width, 0.25rem);\r\n border-radius: inherit;\r\n transition: ${unsafeCSS(`width ${DesignToken.motion.duration.short2} ${DesignToken.motion.easing.standard}`)};\r\n }\r\n :host(:active:not([aria-disabled=\"true\"])) .handle {\r\n width: var(--m3e-slider-thumb-pressed-width, 2px);\r\n }\r\n :host(:not([aria-disabled=\"true\"])) .handle {\r\n background-color: var(--m3e-slider-thumb-color, ${DesignToken.color.primary});\r\n }\r\n :host([aria-disabled=\"true\"]) .handle {\r\n opacity: var(--m3e-slider-thumb-disabled-opacity, 38%);\r\n background-color: var(--m3e-slider-thumb-disabled-color, ${DesignToken.color.onSurface});\r\n }\r\n @media (prefers-reduced-motion) {\r\n .label {\r\n transition: none;\r\n }\r\n }\r\n @media (forced-colors: active) {\r\n .label {\r\n forced-color-adjust: none;\r\n background-color: CanvasText;\r\n color: Canvas;\r\n }\r\n :host(:not([aria-disabled=\"true\"])) .handle {\r\n background-color: CanvasText;\r\n }\r\n :host([aria-disabled=\"true\"]) .handle {\r\n opacity: unset;\r\n background-color: GrayText;\r\n }\r\n }\r\n `;\r\n\r\n /** @private */ @query(\".focus-ring\")\r\n private readonly _focusRing?: M3eFocusRingElement;\r\n\r\n /**\r\n * The value of the thumb.\r\n * @default null\r\n */\r\n @property({ type: Number, reflect: true }) value: number | null = null;\r\n\r\n /** @inheritdoc */\r\n override get [formValue](): string | File | FormData | null {\r\n return this.value?.toString() ?? null;\r\n }\r\n\r\n /** @internal */\r\n get #labelText(): string {\r\n return this.closest(\"m3e-slider\")?.displayWith?.(this.value) ?? this.value?.toString() ?? \"\";\r\n }\r\n\r\n /** @inheritdoc */\r\n override focus(options?: FocusOptions): void {\r\n if (this._focusRing) {\r\n this._focusRing.disabled = true;\r\n }\r\n\r\n super.focus(options);\r\n\r\n if (this._focusRing) {\r\n this._focusRing.disabled = this.disabled;\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override firstUpdated(_changedProperties: PropertyValues<this>): void {\r\n super.firstUpdated(_changedProperties);\r\n this._focusRing?.attach(this);\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override update(changedProperties: PropertyValues<this>): void {\r\n super.update(changedProperties);\r\n\r\n if (changedProperties.has(\"value\")) {\r\n this.dispatchEvent(new Event(\"value-change\", { bubbles: true }));\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override render(): unknown {\r\n return html`<div class=\"label\" aria-hidden=\"true\">${this.#labelText}</div>\r\n <div class=\"base\">\r\n <m3e-focus-ring class=\"focus-ring\" ?disabled=\"${this.disabled}\"></m3e-focus-ring>\r\n <div class=\"touch\" aria-hidden=\"true\"></div>\r\n <div class=\"wrapper\">\r\n <div class=\"handle\"></div>\r\n </div>\r\n </div>`;\r\n }\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n \"m3e-slider-thumb\": M3eSliderThumbElement;\r\n }\r\n}\r\n","import { css, CSSResultGroup, html, LitElement, PropertyValues, unsafeCSS } from \"lit\";\r\nimport { property, query, state } from \"lit/decorators.js\";\r\nimport { ifDefined } from \"lit/directives/if-defined.js\";\r\n\r\nimport {\r\n addCustomState,\r\n AttachInternals,\r\n customElement,\r\n deleteCustomState,\r\n DesignToken,\r\n hasCustomState,\r\n prefersReducedMotion,\r\n ResizeController,\r\n safeStyleMap,\r\n} from \"@m3e/web/core\";\r\n\r\nimport { M3eDirectionality } from \"@m3e/web/core/bidi\";\r\n\r\nimport { M3eSliderThumbElement } from \"./SliderThumbElement\";\r\nimport { SliderSize } from \"./SliderSize\";\r\n\r\n/**\r\n * Allows for the selection of numeric values from a range.\r\n *\r\n * @description\r\n * The `m3e-slider` component enables users to select a numeric value from a continuous or discrete range.\r\n * Designed according to Material 3 principles, it supports labeled value indicators, tick marks, and\r\n * snapping behavior.\r\n *\r\n * @example\r\n * The following example illustrates a labelled slider with thumb used to select a single numeric value.\r\n * ```html\r\n * <m3e-slider labelled>\r\n * <m3e-slider-thumb value=\"50\"></m3e-slider-thumb>\r\n * </m3e-slider>\r\n * ```\r\n *\r\n * @example\r\n * The next example illustrates a labelled range slider with two thumbs used to select a minimum and maximum numeric value.\r\n * ```html\r\n * <m3e-slider labelled>\r\n * <m3e-slider-thumb value=\"25\"></m3e-slider-thumb>\r\n * <m3e-slider-thumb value=\"75\"></m3e-slider-thumb>\r\n * </m3e-slider>\r\n * ```\r\n *\r\n * @tag m3e-slider\r\n *\r\n * @slot - Renders the thumbs of the slider.\r\n *\r\n * @attr disabled - Whether the element is disabled.\r\n * @attr discrete - Whether to show tick marks.\r\n * @attr labelled - Whether to show value labels when activated.\r\n * @attr max - The maximum allowable value.\r\n * @attr min - The minimum allowable value.\r\n * @attr step - The value at which the thumb will snap.\r\n * @attr size - The size of the slider.\r\n *\r\n * @fires beforeinput - Dispatched before the value of a thumb changes.\r\n * @fires input - Dispatched when the value of a thumb changes.\r\n * @fires change - Dispatched when the value of a thumb changes.\r\n *\r\n * @cssprop --m3e-slider-min-width - Minimum inline size of the slider host.\r\n * @cssprop --m3e-slider-small-height - Height of the slider when size is small or extra-small.\r\n * @cssprop --m3e-slider-medium-height - Height of the slider when size is medium.\r\n * @cssprop --m3e-slider-large-height - Height of the slider when size is large.\r\n * @cssprop --m3e-slider-extra-large-height - Height of the slider when size is extra-large.\r\n * @cssprop --m3e-slider-small-active-track-shape - Corner shape of the active track for small sliders.\r\n * @cssprop --m3e-slider-small-inactive-active-track-start-shape - Corner shape of the inactive track start for small sliders.\r\n * @cssprop --m3e-slider-small-inactive-track-end-shape - Corner shape of the inactive track end for small sliders.\r\n * @cssprop --m3e-slider-medium-active-track-shape - Corner shape of the active track for medium sliders.\r\n * @cssprop --m3e-slider-medium-inactive-active-track-start-shape - Corner shape of the inactive track start for medium sliders.\r\n * @cssprop --m3e-slider-medium-inactive-track-end-shape - Corner shape of the inactive track end for medium sliders.\r\n * @cssprop --m3e-slider-large-active-track-shape - Corner shape of the active track for large sliders.\r\n * @cssprop --m3e-slider-large-inactive-active-track-start-shape - Corner shape of the inactive track start for large sliders.\r\n * @cssprop --m3e-slider-large-inactive-track-end-shape - Corner shape of the inactive track end for large sliders.\r\n * @cssprop --m3e-slider-extra-large-active-track-shape - Corner shape of the active track for extra-large sliders.\r\n * @cssprop --m3e-slider-extra-large-inactive-active-track-start-shape - Corner shape of the inactive track start for extra-large sliders.\r\n * @cssprop --m3e-slider-extra-large-inactive-track-end-shape - Corner shape of the inactive track end for extra-large sliders.\r\n * @cssprop --m3e-slider-extra-small-track-height - Height of the track for extra-small sliders.\r\n * @cssprop --m3e-slider-small-track-height - Height of the track for small sliders.\r\n * @cssprop --m3e-slider-medium-track-height - Height of the track for medium sliders.\r\n * @cssprop --m3e-slider-large-track-height - Height of the track for large sliders.\r\n * @cssprop --m3e-slider-extra-large-track-height - Height of the track for extra-large sliders.\r\n * @cssprop --m3e-slider-tick-size - Size of each tick mark.\r\n * @cssprop --m3e-slider-tick-shape - Corner shape of each tick mark.\r\n * @cssprop --m3e-slider-inactive-track-color - Background color of the inactive track when enabled.\r\n * @cssprop --m3e-slider-disabled-inactive-track-color - Base color of the inactive track when disabled.\r\n * @cssprop --m3e-slider-disabled-inactive-track-opacity - Opacity of the inactive track when disabled.\r\n * @cssprop --m3e-slider-active-track-color - Background color of the active track when enabled.\r\n * @cssprop --m3e-slider-disabled-active-track-color - Base color of the active track when disabled.\r\n * @cssprop --m3e-slider-disabled-active-track-opacity - Opacity of the active track when disabled.\r\n * @cssprop --m3e-slider-tick-active-color - Color of active ticks when enabled.\r\n * @cssprop --m3e-slider-disabled-tick-active-color - Color of active ticks when disabled.\r\n * @cssprop --m3e-slider-tick-inactive-color - Color of inactive ticks when enabled.\r\n * @cssprop --m3e-slider-disabled-tick-inactive-color - Color of inactive ticks when disabled.\r\n */\r\n@customElement(\"m3e-slider\")\r\nexport class M3eSliderElement extends AttachInternals(LitElement) {\r\n /** The styles of the element. */\r\n static override styles: CSSResultGroup = css`\r\n :host {\r\n display: inline-block;\r\n vertical-align: middle;\r\n min-inline-size: var(--m3e-slider-min-width, 12.5rem);\r\n user-select: none;\r\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\r\n }\r\n :host(:not([disabled])) {\r\n cursor: pointer;\r\n }\r\n :host([size=\"extra-small\"]),\r\n :host([size=\"small\"]) {\r\n height: var(--m3e-slider-small-height, 2.75rem);\r\n }\r\n :host(:not(:dir(rtl))[size=\"extra-small\"]) .base,\r\n :host(:not(:dir(rtl))[size=\"small\"]) .base {\r\n --_slider-active-track-shape: var(--m3e-slider-small-active-track-shape, ${DesignToken.shape.corner.smallStart});\r\n --_slider-inactive-track-start-shape: var(\r\n --m3e-slider-small-inactive-active-track-start-shape,\r\n ${DesignToken.shape.corner.smallStart}\r\n );\r\n --_slider-inactive-track-end-shape: var(\r\n --m3e-slider-small-inactive-track-end-shape,\r\n ${DesignToken.shape.corner.smallEnd}\r\n );\r\n }\r\n :host(:dir(rtl)[size=\"extra-small\"]) .base,\r\n :host(:dir(rtl)[size=\"small\"]) .base {\r\n --_slider-active-track-shape: var(--m3e-slider-small-active-track-shape, ${DesignToken.shape.corner.smallEnd});\r\n --_slider-inactive-track-start-shape: var(\r\n --m3e-slider-small-inactive-active-track-start-shape,\r\n ${DesignToken.shape.corner.smallEnd}\r\n );\r\n --_slider-inactive-track-end-shape: var(\r\n --m3e-slider-small-inactive-track-end-shape,\r\n ${DesignToken.shape.corner.smallStart}\r\n );\r\n }\r\n :host([size=\"extra-small\"]) .track {\r\n height: calc(var(--m3e-slider-extra-small-track-height, 1rem));\r\n }\r\n :host([size=\"small\"]) .track {\r\n height: calc(var(--m3e-slider-small-track-height, 1.5rem));\r\n }\r\n :host([size=\"medium\"]) {\r\n height: var(--m3e-slider-medium-height, 3.25rem);\r\n }\r\n :host(:not(:dir(rtl))[size=\"medium\"]) .base {\r\n --_slider-active-track-shape: var(\r\n --m3e-slider-medium-active-track-shape,\r\n ${DesignToken.shape.corner.mediumStart}\r\n );\r\n --_slider-inactive-track-start-shape: var(\r\n --m3e-slider-medium-inactive-active-track-start-shape,\r\n ${DesignToken.shape.corner.mediumStart}\r\n );\r\n --_slider-inactive-track-end-shape: var(\r\n --m3e-slider-medium-inactive-track-end-shape,\r\n ${DesignToken.shape.corner.mediumEnd}\r\n );\r\n }\r\n :host(:dir(rtl)[size=\"medium\"]) .base {\r\n --_slider-active-track-shape: var(--m3e-slider-medium-active-track-shape, ${DesignToken.shape.corner.mediumEnd});\r\n --_slider-inactive-track-start-shape: var(\r\n --m3e-slider-medium-inactive-active-track-start-shape,\r\n ${DesignToken.shape.corner.mediumEnd}\r\n );\r\n --_slider-inactive-track-end-shape: var(\r\n --m3e-slider-medium-inactive-track-end-shape,\r\n ${DesignToken.shape.corner.mediumStart}\r\n );\r\n }\r\n :host([size=\"medium\"]) .track {\r\n height: var(--m3e-slider-medium-track-height, 2.5rem);\r\n }\r\n :host([size=\"large\"]) {\r\n height: var(--m3e-slider-large-height, 4.25rem);\r\n }\r\n :host(:not(:dir(rtl))[size=\"large\"]) .base {\r\n --_slider-active-track-shape: var(--m3e-slider-large-active-track-shape, ${DesignToken.shape.corner.largeStart});\r\n --_slider-inactive-track-start-shape: var(\r\n --m3e-slider-large-inactive-active-track-start-shape,\r\n ${DesignToken.shape.corner.largeStart}\r\n );\r\n --_slider-inactive-track-end-shape: var(\r\n --m3e-slider-large-inactive-track-end-shape,\r\n ${DesignToken.shape.corner.largeEnd}\r\n );\r\n }\r\n :host(:dir(rtl)[size=\"large\"]) .base {\r\n --_slider-active-track-shape: var(--m3e-slider-large-active-track-shape, ${DesignToken.shape.corner.largeEnd});\r\n --_slider-inactive-track-start-shape: var(\r\n --m3e-slider-large-inactive-active-track-start-shape,\r\n ${DesignToken.shape.corner.largeEnd}\r\n );\r\n --_slider-inactive-track-end-shape: var(\r\n --m3e-slider-large-inactive-track-end-shape,\r\n ${DesignToken.shape.corner.largeStart}\r\n );\r\n }\r\n :host([size=\"large\"]) .track {\r\n height: var(--m3e-slider-large-track-height, 3.5rem);\r\n }\r\n :host([size=\"extra-large\"]) {\r\n height: var(--m3e-slider-extra-large-height, 6.75rem);\r\n }\r\n :host(:not(:dir(rtl))[size=\"extra-large\"]) .base {\r\n --_slider-active-track-shape: var(\r\n --m3e-slider-extra-large-active-track-shape,\r\n ${DesignToken.shape.corner.extraLargeStart}\r\n );\r\n --_slider-inactive-track-start-shape: var(\r\n --m3e-slider-extra-large-inactive-active-track-start-shape,\r\n ${DesignToken.shape.corner.extraLargeStart}\r\n );\r\n --_slider-inactive-track-end-shape: var(\r\n --m3e-slider-extra-large-inactive-track-end-shape,\r\n ${DesignToken.shape.corner.extraLargeEnd}\r\n );\r\n }\r\n :host(:dir(rtl)[size=\"extra-large\"]) .base {\r\n --_slider-active-track-shape: var(\r\n --m3e-slider-extra-large-active-track-shape,\r\n ${DesignToken.shape.corner.extraLargeEnd}\r\n );\r\n --_slider-inactive-track-start-shape: var(\r\n --m3e-slider-extra-large-inactive-active-track-start-shape,\r\n ${DesignToken.shape.corner.extraLargeEnd}\r\n );\r\n --_slider-inactive-track-end-shape: var(\r\n --m3e-slider-extra-large-inactive-track-end-shape,\r\n ${DesignToken.shape.corner.extraLargeStart}\r\n );\r\n }\r\n :host([size=\"extra-large\"]) .track {\r\n height: var(--m3e-slider-extra-large-track-height, 6rem);\r\n }\r\n :host(:is(:state(--animating), :--animating)) .track-active,\r\n :host(:is(:state(--animating), :--animating)) .track-inactive.start,\r\n :host(:is(:state(--animating), :--animating)) .track-inactive.end {\r\n transition: ${unsafeCSS(`margin-inline-start ${DesignToken.motion.spring.fastEffects},\r\n width ${DesignToken.motion.spring.fastEffects}`)};\r\n }\r\n .base {\r\n contain: layout style;\r\n display: inline-flex;\r\n align-items: center;\r\n position: relative;\r\n width: 100%;\r\n height: 100%;\r\n border-radius: inherit;\r\n outline: none;\r\n touch-action: none;\r\n }\r\n .track {\r\n contain: layout style paint;\r\n position: relative;\r\n flex: 1 1 auto;\r\n touch-action: none;\r\n }\r\n .track-inactive,\r\n .track-active {\r\n contain: layout style paint;\r\n position: absolute;\r\n height: 100%;\r\n touch-action: none;\r\n }\r\n .track-active {\r\n margin-inline-start: var(--_slider-active-track-offset, 0px);\r\n width: var(--_slider-active-track-size, 0px);\r\n border-radius: var(--_slider-active-track-middle-shape, var(--_slider-active-track-shape));\r\n }\r\n .track-inactive.start {\r\n width: var(--_slider-inactive-track-before-size, 0px);\r\n border-radius: var(--_slider-inactive-track-start-shape);\r\n }\r\n .track-inactive.end {\r\n margin-inline-start: var(--_slider-inactive-track-after-offset, 0px);\r\n width: var(--_slider-inactive-track-after-size, 0px);\r\n border-radius: var(--_slider-inactive-track-end-shape);\r\n }\r\n .ticks {\r\n position: absolute;\r\n width: 100%;\r\n height: var(--m3e-slider-tick-size, 0.25rem);\r\n overflow: visible;\r\n touch-action: none;\r\n }\r\n .tick {\r\n position: absolute;\r\n top: 0;\r\n touch-action: none;\r\n inset-inline-start: calc(var(--m3e-slider-tick-size, 0.25rem) + calc(var(--m3e-slider-tick-size, 0.25rem) / 2));\r\n width: var(--m3e-slider-tick-size, 0.25rem);\r\n height: var(--m3e-slider-tick-size, 0.25rem);\r\n border-radius: var(--m3e-slider-tick-shape, ${DesignToken.shape.corner.full});\r\n }\r\n :host(:not([disabled])) .track-inactive {\r\n background-color: var(--m3e-slider-inactive-track-color, ${DesignToken.color.secondaryContainer});\r\n }\r\n :host([disabled]) .track-inactive {\r\n background-color: color-mix(\r\n in srgb,\r\n var(--m3e-slider-disabled-inactive-track-color, ${DesignToken.color.onSurface})\r\n var(--m3e-slider-disabled-inactive-track-opacity, 12%),\r\n transparent\r\n );\r\n }\r\n :host(:not([disabled])) .track-active {\r\n background-color: var(--m3e-slider-active-track-color, ${DesignToken.color.primary});\r\n }\r\n :host([disabled]) .track-active {\r\n background-color: color-mix(\r\n in srgb,\r\n var(--m3e-slider-disabled-active-track-color, ${DesignToken.color.onSurface})\r\n var(--m3e-slider-disabled-active-track-opacity, 38%),\r\n transparent\r\n );\r\n }\r\n :host(:not([disabled])) .tick.active {\r\n background-color: var(--m3e-slider-tick-active-color, ${DesignToken.color.onPrimary});\r\n }\r\n :host([disabled]) .tick.active {\r\n background-color: var(--m3e-slider-disabled-tick-active-color, ${DesignToken.color.inverseOnSurface});\r\n }\r\n :host(:not([disabled])) .tick.inactive {\r\n background-color: var(--m3e-slider-tick-inactive-color, ${DesignToken.color.onSecondaryContainer});\r\n }\r\n :host([disabled]) .tick.inactive {\r\n background-color: var(--m3e-slider-disabled-tick-inactive-color, ${DesignToken.color.onSurface});\r\n }\r\n :host(:not([discrete])) .tick.active {\r\n display: none;\r\n }\r\n :host(:hover[labelled]) .base,\r\n :host(:focus-within[labelled]) .base {\r\n --_slider-label-visibility: visible;\r\n --_slider-label-opacity: 1;\r\n --_slider-label-transform: scale(1);\r\n }\r\n @media (forced-colors: active) {\r\n :host(:not([disabled])) .track-inactive {\r\n background-color: unset;\r\n }\r\n :host(:not([disabled])) .base.range .track-inactive.start,\r\n :host(:not([disabled])) .track-inactive.end {\r\n border: 1px solid CanvasText;\r\n box-sizing: border-box;\r\n }\r\n :host(:not([disabled])) .tick.inactive {\r\n background-color: CanvasText;\r\n }\r\n :host(:not([disabled])) .tick.active {\r\n background-color: Canvas;\r\n }\r\n :host(:not([disabled])) .track-active {\r\n background-color: CanvasText;\r\n }\r\n :host([disabled]) .base.range .track-inactive.start,\r\n :host([disabled]) .track-inactive.end {\r\n border: 1px solid GrayText;\r\n box-sizing: border-box;\r\n }\r\n :host([disabled]) .track-active {\r\n background-color: GrayText;\r\n }\r\n :host([disabled]) .tick.inactive {\r\n background-color: GrayText;\r\n }\r\n :host([disabled]) .tick.active {\r\n background-color: Canvas;\r\n }\r\n }\r\n `;\r\n\r\n /** @private */ #directionalitySubscription?: () => void;\r\n\r\n /** @private */\r\n @query(\".base\") private readonly _base?: HTMLElement;\r\n\r\n /** @private */\r\n @state() private _ticks = new Array<{ value: number; active: boolean }>();\r\n\r\n /** @private */ readonly #changedThumbs = new Set<M3eSliderThumbElement>();\r\n /** @private */ #thumbs = new Array<M3eSliderThumbElement>();\r\n /** @private */ #activeThumb?: M3eSliderThumbElement;\r\n /** @private */ #cachedWidth = 0;\r\n /** @private */ #cachedThumbWidth = 0;\r\n /** @private */ #cachedLeft = 0;\r\n\r\n constructor() {\r\n super();\r\n new ResizeController(this, { callback: () => this.#updateDimensions(true) });\r\n }\r\n\r\n /**\r\n * The size of the slider.\r\n * @default \"extra-small\"\r\n */\r\n @property({ reflect: true }) size: SliderSize = \"extra-small\";\r\n\r\n /**\r\n * Whether the element is disabled.\r\n * @default false\r\n */\r\n @property({ type: Boolean, reflect: true }) disabled = false;\r\n\r\n /**\r\n * Whether to show tick marks.\r\n * @default false\r\n */\r\n @property({ type: Boolean, reflect: true }) discrete = false;\r\n\r\n /**\r\n * The minimum allowable value.\r\n * @default 0\r\n */\r\n @property({ type: Number }) min = 0;\r\n\r\n /**\r\n * The maximum allowable value.\r\n * @default 100\r\n */\r\n @property({ type: Number }) max = 100;\r\n\r\n /**\r\n * The value at which the thumb will snap.\r\n * @default 1\r\n */\r\n @property({ type: Number }) step = 1;\r\n\r\n /**\r\n * Whether to show value labels when activated.\r\n * @default false\r\n */\r\n @property({ type: Boolean }) labelled = false;\r\n\r\n /** The function used to format display values. */\r\n @property({ attribute: false }) displayWith: ((value: number | null) => string) | null = null;\r\n\r\n /** The thumbs used to select values. */\r\n get thumbs(): readonly M3eSliderThumbElement[] {\r\n return this.#thumbs;\r\n }\r\n\r\n /** Whether the slider is a range slider. */\r\n get isRange(): boolean {\r\n return this.#thumbs.length > 1;\r\n }\r\n\r\n /** The thumb used to select a value. */\r\n get thumb(): M3eSliderThumbElement | null {\r\n return this.#thumbs[0] ?? null;\r\n }\r\n\r\n /** The thumb used to select the lower value of a range slider. */\r\n get lowerThumb(): M3eSliderThumbElement | null {\r\n return this.thumb;\r\n }\r\n\r\n /** The thumb used to select the upper value of a range slider. */\r\n get upperThumb(): M3eSliderThumbElement | null {\r\n return this.#thumbs[1] ?? null;\r\n }\r\n\r\n /** @inheritdoc */\r\n override connectedCallback(): void {\r\n super.connectedCallback();\r\n\r\n this.#directionalitySubscription = M3eDirectionality.observe(() => {\r\n this.#updateDimensions(true);\r\n this.requestUpdate();\r\n });\r\n }\r\n\r\n /** @inheritdoc */\r\n override disconnectedCallback(): void {\r\n super.disconnectedCallback();\r\n this.#changedThumbs.clear();\r\n this.#directionalitySubscription?.();\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override updated(_changedProperties: PropertyValues<this>): void {\r\n super.updated(_changedProperties);\r\n\r\n if (_changedProperties.has(\"disabled\")) {\r\n this.#thumbs.forEach((x) => (x.disabled = this.disabled));\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override render(): unknown {\r\n return html`<div\r\n class=\"base\"\r\n tabindex=\"${ifDefined(!this.disabled ? \"-1\" : undefined)}\"\r\n @pointerdown=\"${this.#handlePointerDown}\"\r\n @pointermove=\"${this.#handlePointerMove}\"\r\n @pointerup=\"${this.#handlePointerUp}\"\r\n @keydown=\"${this.#handleKeyDown}\"\r\n @keyup=\"${this.#handleKeyUp}\"\r\n @value-change=\"${this.#handleThumbChange}\"\r\n >\r\n <div class=\"track\" aria-hidden=\"true\">\r\n <div class=\"track-inactive start\"></div>\r\n <div class=\"track-active\"></div>\r\n <div class=\"track-inactive end\"></div>\r\n </div>\r\n <div class=\"ticks\" aria-hidden=\"true\">${this._ticks.map((x) => this.#renderTick(x))}</div>\r\n <slot @slotchange=\"${this.#handleSlotChange}\"></slot>\r\n </div>`;\r\n }\r\n\r\n /** @private */\r\n #renderTick(tick: { value: number; active: boolean }) {\r\n return html`<div\r\n class=\"tick ${tick.active ? \"active\" : \"inactive\"}\"\r\n style=\"${safeStyleMap({\r\n transform: `translate(${M3eDirectionality.current === \"rtl\" ? -this.#pointFromValue(tick.value) : this.#pointFromValue(tick.value)}px, 0)`,\r\n })}\"\r\n ></div>`;\r\n }\r\n\r\n /** @private */\r\n #handleSlotChange(e: Event): void {\r\n this.#thumbs = (<HTMLSlotElement>e.target)\r\n .assignedElements({ flatten: true })\r\n .filter((x) => x instanceof M3eSliderThumbElement);\r\n\r\n if (this.#thumbs.length > 2) {\r\n this.#thumbs.length = 2;\r\n }\r\n if (this.isRange) {\r\n this._base?.style.setProperty(\"--_slider-active-track-middle-shape\", `0`);\r\n } else {\r\n this._base?.style.removeProperty(\"--_slider-active-track-middle-shape\");\r\n }\r\n\r\n this.#updateThumbs();\r\n }\r\n\r\n /** @private */\r\n #updateThumbs(): void {\r\n this.#thumbs.forEach((thumb, i) => {\r\n if (this.disabled) {\r\n thumb.disabled = true;\r\n }\r\n thumb.ariaValueMin = `${this.#thumbs[i - 1]?.value ?? this.min}`;\r\n thumb.ariaValueMax = `${this.#thumbs[i + 1]?.value ?? this.max}`;\r\n thumb.ariaValueNow = `${thumb.value ?? this.#thumbs[i - 1]?.value ?? this.min}`;\r\n });\r\n }\r\n\r\n /** @private */\r\n #pointFromValue(value: number): number {\r\n return (this.#cachedWidth - this.#cachedThumbWidth) * ((value - this.min) / (this.max - this.min));\r\n }\r\n\r\n /** @private */\r\n #valueFromPoint(e: PointerEvent): number {\r\n const pos =\r\n M3eDirectionality.current === \"rtl\"\r\n ? this.#cachedLeft + this.#cachedWidth - e.clientX\r\n : e.clientX - this.#cachedLeft;\r\n const step = this.step === 0 ? 1 : this.step;\r\n const numSteps = Math.floor((this.max - this.min) / step);\r\n const percentage = pos / this.#cachedWidth;\r\n const fixedPercentage = Math.round(percentage * numSteps) / numSteps;\r\n const impreciseValue = fixedPercentage * (this.max - this.min) + this.min;\r\n return Math.round(impreciseValue / step) * step;\r\n }\r\n\r\n /** @private */\r\n #updateCachedDimensions(force = false): void {\r\n if (!this.lowerThumb) return;\r\n this.#cachedWidth = !force && this.#cachedWidth > 0 ? this.#cachedWidth : this.clientWidth;\r\n this.#cachedThumbWidth =\r\n !force && this.#cachedThumbWidth > 0 ? this.#cachedThumbWidth : this.lowerThumb.clientWidth;\r\n this.#cachedLeft = !force && this.#cachedLeft > 0 ? this.#cachedLeft : this.getBoundingClientRect().left;\r\n }\r\n\r\n /** @private */\r\n #updateDimensions(force = false): void {\r\n this.#updateCachedDimensions(force);\r\n if (!this.lowerThumb) return;\r\n\r\n const lowerValue = this.lowerThumb.value ?? this.min;\r\n const lowerPos = this.#pointFromValue(lowerValue);\r\n this.lowerThumb.style.transform = `translate(${M3eDirectionality.current === \"rtl\" ? -lowerPos : lowerPos}px, 0)`;\r\n\r\n if (!this.upperThumb) {\r\n this._base?.classList.toggle(\"range\", false);\r\n this._base?.style.setProperty(\"--_slider-active-track-size\", `${lowerPos}px`);\r\n this._base?.style.setProperty(\"--_slider-inactive-track-after-offset\", `${lowerPos + this.#cachedThumbWidth}px`);\r\n this._base?.style.setProperty(\r\n \"--_slider-inactive-track-after-size\",\r\n `${this.#cachedWidth - lowerPos - this.#cachedThumbWidth}px`,\r\n );\r\n\r\n this.#updateTicks((i) => i < lowerValue);\r\n } else {\r\n const upperValue = this.upperThumb.value ?? lowerValue;\r\n const upperPos = this.#pointFromValue(upperValue);\r\n this.upperThumb.style.transform = `translate(${M3eDirectionality.current === \"rtl\" ? -upperPos : upperPos}px, 0)`;\r\n\r\n this._base?.classList.toggle(\"range\", true);\r\n this._base?.style.setProperty(\"--_slider-inactive-track-before-size\", `${lowerPos}px`);\r\n this._base?.style.setProperty(\"--_slider-active-track-offset\", `${lowerPos + this.#cachedThumbWidth}px`);\r\n this._base?.style.setProperty(\"--_slider-active-track-size\", `${upperPos - lowerPos - this.#cachedThumbWidth}px`);\r\n this._base?.style.setProperty(\"--_slider-inactive-track-after-offset\", `${upperPos + this.#cachedThumbWidth}px`);\r\n this._base?.style.setProperty(\r\n \"--_slider-inactive-track-after-size\",\r\n `${this.#cachedWidth - this.#cachedThumbWidth - upperPos}px`,\r\n );\r\n\r\n this.#updateTicks((i) => i > lowerValue && i < upperValue);\r\n }\r\n }\r\n\r\n /** @private */\r\n #updateTicks(active: (value: number) => boolean): void {\r\n this._ticks = [];\r\n if (this.discrete && this.step > 1) {\r\n for (let i = this.min; i <= this.max; i += this.step) {\r\n this._ticks.push({ value: i, active: active(i) });\r\n }\r\n } else {\r\n this._ticks.push({ value: this.min, active: active(this.min) });\r\n if (this.min < 0 && this.max > 0) {\r\n this._ticks.push({ value: 0, active: active(0) });\r\n }\r\n this._ticks.push({ value: this.max, active: active(this.max) });\r\n }\r\n }\r\n\r\n /** @private */\r\n #handlePointerDown(e: PointerEvent): void {\r\n this.#updateCachedDimensions(true);\r\n if (e.pointerType === \"mouse\" && e.button > 1) return;\r\n if (!this.lowerThumb || this.disabled) return;\r\n\r\n if (e.target instanceof HTMLElement) {\r\n e.target.setPointerCapture(e.pointerId);\r\n }\r\n\r\n this.#changedThumbs.clear();\r\n\r\n this.#activeThumb = e.composedPath().find((x) => x instanceof M3eSliderThumbElement);\r\n\r\n if (this.#activeThumb) {\r\n return;\r\n }\r\n\r\n const value = this.#valueFromPoint(e);\r\n\r\n if (!this.upperThumb) {\r\n if (!this.lowerThumb.disabled) {\r\n this.#changeThumb(this.lowerThumb, value, true);\r\n this.#activeThumb = this.lowerThumb;\r\n }\r\n } else {\r\n const lowerValue = this.lowerThumb.value ?? this.min;\r\n const upperValue = this.upperThumb.value ?? lowerValue;\r\n\r\n if (value < lowerValue) {\r\n if (!this.lowerThumb.disabled) {\r\n this.#changeThumb(this.lowerThumb, value, true);\r\n this.#activeThumb = this.lowerThumb;\r\n }\r\n } else if (value > upperValue) {\r\n if (!this.upperThumb.disabled) {\r\n this.#changeThumb(this.upperThumb, value, true);\r\n this.#activeThumb = this.upperThumb;\r\n }\r\n } else {\r\n const mid = (lowerValue + upperValue) / 2;\r\n if (value < mid && !this.lowerThumb.disabled) {\r\n this.#changeThumb(this.lowerThumb, value, true);\r\n this.#activeThumb = this.lowerThumb;\r\n } else if (!this.upperThumb.disabled) {\r\n this.#changeThumb(this.upperThumb, value, true);\r\n this.#activeThumb = this.upperThumb;\r\n }\r\n }\r\n }\r\n }\r\n\r\n /** @private */\r\n #handlePointerMove(e: PointerEvent): void {\r\n if (\r\n !(e.target instanceof HTMLElement) ||\r\n !e.target.hasPointerCapture(e.pointerId) ||\r\n !this.#activeThumb ||\r\n this.#activeThumb.disabled\r\n ) {\r\n return;\r\n }\r\n\r\n const value = this.#valueFromPoint(e);\r\n let min = this.min;\r\n let max = this.max;\r\n\r\n if (this.#activeThumb === this.upperThumb) {\r\n min = Math.max(min, this.lowerThumb?.value ?? 0);\r\n } else if (this.upperThumb) {\r\n max = Math.min(max, this.upperThumb.value ?? this.max);\r\n }\r\n\r\n if (hasCustomState(this, \"--animating\")) {\r\n deleteCustomState(this, \"--animating\");\r\n this.#activeThumb.style.transition = \"\";\r\n }\r\n\r\n this.#changeThumb(this.#activeThumb, Math.min(max, Math.max(min, value)));\r\n }\r\n\r\n /** @private */\r\n #handlePointerUp(e: PointerEvent): void {\r\n if (e.pointerType === \"mouse\" && e.button > 1) return;\r\n if (!this.lowerThumb || this.disabled) return;\r\n\r\n if (e.target instanceof HTMLElement) {\r\n e.target.releasePointerCapture(e.pointerId);\r\n }\r\n\r\n if (this.#activeThumb && !this.#activeThumb.disabled) {\r\n this.#commitThumb(this.#activeThumb);\r\n this.#activeThumb.focus();\r\n }\r\n }\r\n\r\n /** @private */\r\n #handleKeyDown(e: KeyboardEvent): void {\r\n this.#activeThumb = e.composedPath().find((x) => x instanceof M3eSliderThumbElement);\r\n\r\n if (!this.#activeThumb) return;\r\n\r\n const value = this.#activeThumb.value ?? 0;\r\n\r\n let min = this.min;\r\n let max = this.max;\r\n\r\n if (this.#activeThumb === this.upperThumb) {\r\n min = Math.max(min, this.lowerThumb?.value ?? 0);\r\n } else if (this.upperThumb) {\r\n max = Math.max(max, this.upperThumb.value ?? this.max);\r\n }\r\n\r\n switch (e.key) {\r\n case \"Home\":\r\n this.#changeThumb(this.#activeThumb, min);\r\n e.preventDefault();\r\n break;\r\n\r\n case \"End\":\r\n this.#changeThumb(this.#activeThumb, max);\r\n e.preventDefault();\r\n break;\r\n\r\n case \"PageUp\":\r\n if (M3eDirectionality.current === \"ltr\") {\r\n this.#changeThumb(this.#activeThumb, Math.min(max, value + (this.step > 1 ? this.step : 10)));\r\n } else {\r\n this.#changeThumb(this.#activeThumb, Math.max(min, value - (this.step > 1 ? this.step : 10)));\r\n }\r\n\r\n e.preventDefault();\r\n break;\r\n\r\n case \"PageDown\":\r\n if (M3eDirectionality.current === \"ltr\") {\r\n this.#changeThumb(this.#activeThumb, Math.max(min, value - (this.step > 1 ? this.step : 10)));\r\n } else {\r\n this.#changeThumb(this.#activeThumb, Math.min(max, value + (this.step > 1 ? this.step : 10)));\r\n }\r\n e.preventDefault();\r\n break;\r\n\r\n case \"Down\":\r\n case \"ArrowDown\":\r\n case \"Left\":\r\n case \"ArrowLeft\":\r\n if (M3eDirectionality.current === \"ltr\") {\r\n this.#changeThumb(this.#activeThumb, Math.max(min, value - this.step));\r\n } else {\r\n this.#changeThumb(this.#activeThumb, Math.min(max, value + this.step));\r\n }\r\n\r\n e.preventDefault();\r\n\r\n break;\r\n\r\n case \"Up\":\r\n case \"ArrowUp\":\r\n case \"Right\":\r\n case \"ArrowRight\":\r\n if (M3eDirectionality.current === \"ltr\") {\r\n this.#changeThumb(this.#activeThumb, Math.min(max, value + this.step));\r\n } else {\r\n this.#changeThumb(this.#activeThumb, Math.max(min, value - this.step));\r\n }\r\n\r\n e.preventDefault();\r\n break;\r\n\r\n case \" \":\r\n e.preventDefault();\r\n break;\r\n }\r\n }\r\n\r\n /** @private */\r\n #handleKeyUp(e: KeyboardEvent): void {\r\n const activeThumb = e.composedPath().find((x) => x instanceof M3eSliderThumbElement);\r\n if (activeThumb) {\r\n this.#commitThumb(activeThumb);\r\n }\r\n }\r\n\r\n /** @private */\r\n #handleThumbChange(e: Event): void {\r\n e.stopPropagation();\r\n this.#updateThumbs();\r\n this.#updateDimensions();\r\n }\r\n\r\n /** @private */\r\n #changeThumb(thumb: M3eSliderThumbElement, value: number, animate = false): void {\r\n if (thumb.value === value) return;\r\n\r\n if (thumb.dispatchEvent(new Event(\"beforeinput\", { bubbles: true, cancelable: true }))) {\r\n if (animate && !prefersReducedMotion()) {\r\n addCustomState(this, \"--animating\");\r\n thumb.addEventListener(\r\n \"transitionend\",\r\n () => {\r\n thumb.style.transition = \"\";\r\n deleteCustomState(this, \"--animating\");\r\n },\r\n { once: true },\r\n );\r\n thumb.style.transition = `transform ${DesignToken.motion.spring.fastEffects}`;\r\n }\r\n this.#changedThumbs.add(thumb);\r\n thumb.value = value;\r\n thumb.markAsDirty();\r\n thumb.markAsTouched();\r\n thumb.dispatchEvent(new Event(\"input\", { bubbles: true }));\r\n }\r\n }\r\n\r\n /** @private */\r\n #commitThumb(thumb: M3eSliderThumbElement): void {\r\n if (this.#changedThumbs.has(thumb)) {\r\n thumb.dispatchEvent(new Event(\"change\", { bubbles: true }));\r\n this.#changedThumbs.delete(thumb);\r\n }\r\n }\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n \"m3e-slider\": M3eSliderElement;\r\n }\r\n}\r\n"],"names":["M3eSliderThumbElement","Dirty","Touched","FormAssociated","Focusable","Disabled","AttachInternals","Role","LitElement","constructor","this","value","_M3eSliderThumbElement_instances","WeakSet","formValue","toString","focus","options","_focusRing","disabled","super","firstUpdated","_changedProperties","attach","update","changedProperties","has","dispatchEvent","Event","bubbles","render","html","__classPrivateFieldGet","_M3eSliderThumbElement_labelText_get","closest","displayWith","styles","css","DesignToken","shape","corner","full","unsafeCSS","motion","duration","short3","easing","standard","color","inverseSurface","inverseOnSurface","typescale","label","medium","fontSize","fontWeight","lineHeight","tracking","short2","primary","onSurface","__decorate","query","prototype","property","type","Number","reflect","customElement","M3eSliderElement","_M3eSliderElement_directionalitySubscription","set","_ticks","Array","_M3eSliderElement_changedThumbs","Set","_M3eSliderElement_thumbs","_M3eSliderElement_activeThumb","_M3eSliderElement_cachedWidth","_M3eSliderElement_cachedThumbWidth","_M3eSliderElement_cachedLeft","size","discrete","min","max","step","labelled","ResizeController","callback","_M3eSliderElement_instances","_M3eSliderElement_updateDimensions","thumbs","isRange","length","thumb","lowerThumb","upperThumb","connectedCallback","__classPrivateFieldSet","M3eDirectionality","observe","call","requestUpdate","disconnectedCallback","clear","updated","forEach","x","ifDefined","undefined","_M3eSliderElement_handlePointerDown","_M3eSliderElement_handlePointerMove","_M3eSliderElement_handlePointerUp","_M3eSliderElement_handleKeyDown","_M3eSliderElement_handleKeyUp","_M3eSliderElement_handleThumbChange","map","_M3eSliderElement_renderTick","_M3eSliderElement_handleSlotChange","tick","active","safeStyleMap","transform","current","_M3eSliderElement_pointFromValue","e","target","assignedElements","flatten","filter","_base","style","setProperty","removeProperty","_M3eSliderElement_updateThumbs","i","ariaValueMin","ariaValueMax","ariaValueNow","pos","clientX","numSteps","Math","floor","percentage","impreciseValue","round","_M3eSliderElement_updateCachedDimensions","force","clientWidth","getBoundingClientRect","left","lowerValue","lowerPos","upperValue","upperPos","classList","toggle","_M3eSliderElement_updateTicks","push","pointerType","button","HTMLElement","setPointerCapture","pointerId","composedPath","find","_M3eSliderElement_valueFromPoint","_M3eSliderElement_changeThumb","hasPointerCapture","hasCustomState","deleteCustomState","transition","releasePointerCapture","key","preventDefault","activeThumb","_M3eSliderElement_commitThumb","stopPropagation","animate","cancelable","prefersReducedMotion","addCustomState","addEventListener","once","spring","fastEffects","add","markAsDirty","markAsTouched","delete","smallStart","smallEnd","mediumStart","mediumEnd","largeStart","largeEnd","extraLargeStart","extraLargeEnd","secondaryContainer","onPrimary","onSecondaryContainer","state","Boolean","attribute"],"mappings":"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"}
|
|
@@ -46,7 +46,7 @@ export declare class M3eCollapsibleElement extends M3eCollapsibleElement_base {
|
|
|
46
46
|
*/
|
|
47
47
|
noAnimate: boolean;
|
|
48
48
|
/** @inheritdoc */
|
|
49
|
-
protected update(changedProperties: PropertyValues): void;
|
|
49
|
+
protected update(changedProperties: PropertyValues<this>): void;
|
|
50
50
|
/** @inheritdoc */
|
|
51
51
|
protected render(): unknown;
|
|
52
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CollapsibleElement.d.ts","sourceRoot":"","sources":["../../../../../src/core/shared/primitives/CollapsibleElement.ts"],"names":[],"mappings":"AAEA,OAAO,EAAO,cAAc,EAAQ,UAAU,EAAE,cAAc,EAAa,MAAM,KAAK,CAAC;AAOvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;;AAElE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBACa,qBAAsB,SAAQ,0BAA2B;;IACpE,iCAAiC;IACjC,OAAgB,MAAM,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"CollapsibleElement.d.ts","sourceRoot":"","sources":["../../../../../src/core/shared/primitives/CollapsibleElement.ts"],"names":[],"mappings":"AAEA,OAAO,EAAO,cAAc,EAAQ,UAAU,EAAE,cAAc,EAAa,MAAM,KAAK,CAAC;AAOvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;;AAElE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBACa,qBAAsB,SAAQ,0BAA2B;;IACpE,iCAAiC;IACjC,OAAgB,MAAM,EAAE,cAAc,CAqFpC;IAKF;;;OAGG;IACyC,IAAI,UAAS;IAEzD;;;OAGG;IAC0B,WAAW,EAAE,sBAAsB,CAAc;IAE9E;;;OAGG;IACkE,SAAS,UAAS;IAEvF,kBAAkB;cACC,MAAM,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IA4FxE,kBAAkB;cACC,MAAM,IAAI,OAAO;CAsDrC;AAED,UAAU,6BAA8B,SAAQ,mBAAmB;IACjE,OAAO,EAAE,KAAK,CAAC;IACf,MAAM,EAAE,KAAK,CAAC;IACd,OAAO,EAAE,KAAK,CAAC;IACf,MAAM,EAAE,KAAK,CAAC;CACf;AAED,MAAM,WAAW,qBAAqB;IACpC,gBAAgB,CAAC,CAAC,SAAS,MAAM,6BAA6B,EAC5D,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,IAAI,EAAE,qBAAqB,EAAE,EAAE,EAAE,6BAA6B,CAAC,CAAC,CAAC,KAAK,IAAI,EACrF,OAAO,CAAC,EAAE,OAAO,GAAG,uBAAuB,GAC1C,IAAI,CAAC;IAER,gBAAgB,CACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,kCAAkC,EAC5C,OAAO,CAAC,EAAE,OAAO,GAAG,uBAAuB,GAC1C,IAAI,CAAC;IAER,mBAAmB,CAAC,CAAC,SAAS,MAAM,6BAA6B,EAC/D,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,IAAI,EAAE,qBAAqB,EAAE,EAAE,EAAE,6BAA6B,CAAC,CAAC,CAAC,KAAK,IAAI,EACrF,OAAO,CAAC,EAAE,OAAO,GAAG,oBAAoB,GACvC,IAAI,CAAC;IAER,mBAAmB,CACjB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,kCAAkC,EAC5C,OAAO,CAAC,EAAE,OAAO,GAAG,oBAAoB,GACvC,IAAI,CAAC;CACT;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,iBAAiB,EAAE,qBAAqB,CAAC;KAC1C;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CollapsibleOrientation.d.ts","sourceRoot":"","sources":["../../../../../src/core/shared/primitives/CollapsibleOrientation.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,MAAM,MAAM,sBAAsB,GAAG,UAAU,GAAG,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"CollapsibleOrientation.d.ts","sourceRoot":"","sources":["../../../../../src/core/shared/primitives/CollapsibleOrientation.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,MAAM,MAAM,sBAAsB,GAAG,UAAU,GAAG,YAAY,GAAG,MAAM,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatepickerElement.d.ts","sourceRoot":"","sources":["../../../src/datepicker/DatepickerElement.ts"],"names":[],"mappings":"AACA,OAAO,EAAO,cAAc,EAAQ,UAAU,EAAW,cAAc,EAAa,MAAM,KAAK,CAAC;AAsBhG,OAAO,EAAsB,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAErE,OAAO,oBAAoB,CAAC;AAC5B,OAAO,iBAAiB,CAAC;AACzB,OAAO,mBAAmB,CAAC;AAE3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;;AAExD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AACH,qBACa,oBAAqB,SAAQ,yBAEzC;;IACC,iCAAiC;IACjC,OAAgB,MAAM,EAAE,cAAc,CAqKpC;IAGF,eAAe,CAAU,OAAO,CAAC,KAAK,CAAS;IAC/C,eAAe,CAAU,OAAO,CAAC,KAAK,CAAC,CAAc;IACrD,eAAe,CAAU,OAAO,CAAC,WAAW,CAAC,CAAc;IAC3D,eAAe,CAAU,OAAO,CAAC,SAAS,CAAC,CAAc;IAEzD,eAAe,CAAwB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsB;IACvF,eAAe,CAAU,OAAO,CAAC,QAAQ,CAAC,CAAqC;IA+B/E;;;OAGG;IACS,OAAO,EAAE,iBAAiB,CAAY;IAElD;;;OAGG;IACoC,SAAS,EAAE,YAAY,CAAW;IAEzE;;;OAGG;IACqC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAQ;IAEjE;;;OAGG;IAC4D,OAAO,EAAE,IAAI,GAAG,IAAI,CAAQ;IAE3F;;;OAGG;IAC4D,OAAO,EAAE,IAAI,GAAG,IAAI,CAAQ;IAE3F;;;OAGG;IAC4D,OAAO,EAAE,IAAI,GAAG,IAAI,CAAQ;IAE3F;;;OAGG;IAC0B,KAAK,UAAS;IAE3C;;;OAGG;IAC+D,UAAU,EAAE,IAAI,GAAG,IAAI,CAAQ;IAEjG;;;OAGG;IAC6D,QAAQ,EAAE,IAAI,GAAG,IAAI,CAAQ;IAE7F;;;OAGG;IAC6B,aAAa,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,GAAG,IAAI,CAAQ;IAEvF;;;OAGG;IAC6B,YAAY,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,GAAG,IAAI,CAAQ;IAEtF;;;OAGG;IAC8C,kBAAkB,SAAoB;IAEvF;;;OAGG;IAC6C,iBAAiB,SAAmB;IAEpF;;;OAGG;IACmD,sBAAsB,SAAuB;IAEnG;;;OAGG;IAC0C,cAAc,SAAgB;IAE3E;;;OAGG;IACyC,aAAa,SAAe;IAExE;;;OAGG;IAC+C,kBAAkB,SAAmB;IAEvF;;;OAGG;IAC0B,SAAS,UAAS;IAE/C;;;OAGG;IACqC,UAAU,SAAW;IAE7D;;;OAGG;IACuC,YAAY,SAAQ;IAE9D;;;OAGG;IACuC,YAAY,SAAY;IAElE;;;OAGG;IACS,KAAK,SAAiB;IAElC,kCAAkC;IAClC,IAAI,MAAM,YAET;IAED,iDAAiD;IACjD,IAAI,cAAc,IAAI,OAAO,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAEvD;IAED,kBAAkB;IACT,iBAAiB,IAAI,IAAI;IAOlC,kBAAkB;IACT,oBAAoB,IAAI,IAAI;IAgBrC,kBAAkB;IACT,mBAAmB,IAAI,IAAI;IAQpC;;;;;OAKG;IACG,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"DatepickerElement.d.ts","sourceRoot":"","sources":["../../../src/datepicker/DatepickerElement.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormFieldElement.d.ts","sourceRoot":"","sources":["../../../src/form-field/FormFieldElement.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAO,cAAc,EAAQ,UAAU,EAAW,cAAc,EAAa,MAAM,KAAK,CAAC;AAwBhG,OAAO,EAAwB,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;;AAElD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsEG;AACH,qBACa,mBAAoB,SAAQ,wBAAgD;;
|
|
1
|
+
{"version":3,"file":"FormFieldElement.d.ts","sourceRoot":"","sources":["../../../src/form-field/FormFieldElement.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAO,cAAc,EAAQ,UAAU,EAAW,cAAc,EAAa,MAAM,KAAK,CAAC;AAwBhG,OAAO,EAAwB,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;;AAElD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsEG;AACH,qBACa,mBAAoB,SAAQ,wBAAgD;;IAsCvF,iCAAiC;IACjC,OAAgB,MAAM,EAAE,cAAc,CA4cpC;IAqCF,eAAe,CAAiB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrE,eAAe,CAAmB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACzE,eAAe,CAAmB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACzE,eAAe,CAAkB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACvE,eAAe,CAAiB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IAwBrE,eAAe,CAAU,OAAO,CAAC,YAAY,CAAM;IACnD,eAAe,CAAU,OAAO,CAAC,SAAS,CAAS;IACnD,eAAe,CAAU,OAAO,CAAC,QAAQ,CAAS;IAClD,eAAe,CAAU,OAAO,CAAC,kBAAkB,CAAM;;IAiBzD,gEAAgE;IAChE,IAAI,UAAU,gBAEb;IAED,oDAAoD;IACpD,IAAI,OAAO,4BAEV;IAED;;;OAGG;IAC0B,OAAO,EAAE,gBAAgB,CAAc;IAEpE;;;OAGG;IAC4E,kBAAkB,UAAS;IAE1G;;;OAGG;IACuD,aAAa,EAAE,iBAAiB,CAAU;IAEpG;;;OAGG;IACoD,UAAU,EAAE,cAAc,CAAU;IAE3F;;;OAGG;IACH,wBAAwB,CAAC,aAAa,GAAE,OAAe,GAAG,IAAI;IAqB9D,kBAAkB;IACT,iBAAiB,IAAI,IAAI;IAMlC,kBAAkB;IACT,oBAAoB,IAAI,IAAI;IAKrC,kBAAkB;IACT,mBAAmB,IAAI,IAAI;IAKpC,kBAAkB;cACC,YAAY,CAAC,kBAAkB,EAAE,cAAc,GAAG,IAAI;IAKzE,kBAAkB;cACC,MAAM,CAAC,iBAAiB,EAAE,cAAc,GAAG,IAAI;IAgBlE,kBAAkB;cACC,MAAM,IAAI,OAAO;CAkNrC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,gBAAgB,EAAE,mBAAmB,CAAC;KACvC;CACF"}
|
|
@@ -36,6 +36,8 @@ declare const M3eNavBarElement_base: import("../core/shared/mixins/Constructor")
|
|
|
36
36
|
* @cssprop --m3e-nav-bar-height - Height of the navigation bar.
|
|
37
37
|
* @cssprop --m3e-nav-bar-container-color - Background color of the navigation bar container.
|
|
38
38
|
* @cssprop --m3e-nav-bar-vertical-item-width - Minimum width of vertical nav items.
|
|
39
|
+
* @cssprop --m3e-nav-bar-horizontal-nav-item-leading-space - Leading space for horizontal nav items.
|
|
40
|
+
* @cssprop --m3e-nav-bar-horizontal-nav-item-trailing-space - Trailing space for horizontal nav items.
|
|
39
41
|
*/
|
|
40
42
|
export declare class M3eNavBarElement extends M3eNavBarElement_base {
|
|
41
43
|
#private;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavBarElement.d.ts","sourceRoot":"","sources":["../../../src/nav-bar/NavBarElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,cAAc,EAAQ,UAAU,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAK5E,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;;AAE1C
|
|
1
|
+
{"version":3,"file":"NavBarElement.d.ts","sourceRoot":"","sources":["../../../src/nav-bar/NavBarElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,cAAc,EAAQ,UAAU,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAK5E,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,qBACa,gBAAiB,SAAQ,qBAAoE;;IACxG,iCAAiC;IACjC,OAAgB,MAAM,EAAE,cAAc,CAuBpC;IAEF,gBAAgB,CAAC,QAAQ,CAAC,CAAC,gBAAgB,CAAC,sCAAqE;IAEjH,eAAe,CAAU,OAAO,CAAC,KAAK,CAAC,CAA8B;IAErE;;;OAGG;IAC0B,IAAI,EAAE,UAAU,CAAa;IAE1D,4BAA4B;IAC5B,IAAI,KAAK,IAAI,SAAS,iBAAiB,EAAE,CAExC;IAED,yBAAyB;IACzB,IAAI,QAAQ,IAAI,iBAAiB,GAAG,IAAI,CAEvC;IAED,2CAA2C;IAC3C,IAAI,WAAW,IAAI,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,CAE7C;IACD,IAAI,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,EAEjD;IAED,kBAAkB;IACT,oBAAoB,IAAI,IAAI;IAOrC,kBAAkB;IACT,mBAAmB,IAAI,IAAI;IAQpC,kBAAkB;cACC,UAAU,CAAC,iBAAiB,EAAE,cAAc,GAAG,IAAI;IA0BtE,kBAAkB;cACC,MAAM,IAAI,OAAO;IAkBpC,gBAAgB;IAChB,SAAS,CAAC,YAAY,IAAI,IAAI;IAM9B,gBAAgB;IAChB,SAAS,CAAC,kBAAkB,CAAC,WAAW,EAAE,kBAAkB,GAAG,IAAI;CAGpE;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,aAAa,EAAE,gBAAgB,CAAC;KACjC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavItemElement.d.ts","sourceRoot":"","sources":["../../../src/nav-bar/NavItemElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,cAAc,EAAQ,UAAU,EAAW,cAAc,EAAa,MAAM,KAAK,CAAC;AAGhG,OAAO,EAgBL,eAAe,EAKhB,MAAM,eAAe,CAAC;AAIvB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AACH,qBACa,iBAAkB,SAAQ,sBAQtC;;IACC,iCAAiC;IACjC,OAAgB,MAAM,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"NavItemElement.d.ts","sourceRoot":"","sources":["../../../src/nav-bar/NavItemElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,cAAc,EAAQ,UAAU,EAAW,cAAc,EAAa,MAAM,KAAK,CAAC;AAGhG,OAAO,EAgBL,eAAe,EAKhB,MAAM,eAAe,CAAC;AAIvB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AACH,qBACa,iBAAkB,SAAQ,sBAQtC;;IACC,iCAAiC;IACjC,OAAgB,MAAM,EAAE,cAAc,CAmWpC;IAIF,eAAe,CAAuB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAsB;IACxF,eAAe,CAAwB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAuB;IAC3F,eAAe,CAAmB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAmB;IAC9E,eAAe,CAAkB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAc;IAOvE;;;OAGG;IAC0B,WAAW,EAAE,kBAAkB,CAAc;IAE1E,qDAAqD;IACrD,IAAI,MAAM,IAAI,gBAAgB,GAAG,IAAI,CAEpC;IAED,gBAAgB;IACP,CAAC,eAAe,CAAC,IAAI,IAAI;IAMlC,kBAAkB;IACT,iBAAiB,IAAI,IAAI;IAMlC,kBAAkB;IACT,oBAAoB,IAAI,IAAI;IAMrC,kBAAkB;IACT,mBAAmB,IAAI,IAAI;IAKpC,kBAAkB;cACC,MAAM,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAcxE,kBAAkB;cACC,OAAO,CAAC,kBAAkB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAQ1E,kBAAkB;cACC,YAAY,CAAC,kBAAkB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAM/E,kBAAkB;cACC,MAAM,IAAI,OAAO;CAiErC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,cAAc,EAAE,iBAAiB,CAAC;KACnC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavRailElement.d.ts","sourceRoot":"","sources":["../../../src/nav-rail/NavRailElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,cAAc,EAAa,MAAM,KAAK,CAAC;AAWrD,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;;AAExE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,qBACa,iBAAkB,SAAQ,sBAA0C;;IAa/E,iCAAiC;IACjC,OAAgB,MAAM,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"NavRailElement.d.ts","sourceRoot":"","sources":["../../../src/nav-rail/NavRailElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,cAAc,EAAa,MAAM,KAAK,CAAC;AAWrD,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;;AAExE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,qBACa,iBAAkB,SAAQ,sBAA0C;;IAa/E,iCAAiC;IACjC,OAAgB,MAAM,EAAE,cAAc,CA4DpC;;IAaF,kBAAkB;IACT,iBAAiB,IAAI,IAAI;IAKlC,kBAAkB;IACT,oBAAoB,IAAI,IAAI;IAUrC,4BAA4B;cACT,YAAY,IAAI,IAAI;IAevC,4BAA4B;cACT,kBAAkB,CAAC,WAAW,EAAE,kBAAkB,GAAG,IAAI;CAI7E;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,cAAc,EAAE,iBAAiB,CAAC;KACnC;CACF"}
|
|
@@ -40,10 +40,10 @@ declare const M3eSkeletonElement_base: import("../core/shared/mixins/Constructor
|
|
|
40
40
|
*/
|
|
41
41
|
export declare class M3eSkeletonElement extends M3eSkeletonElement_base {
|
|
42
42
|
#private;
|
|
43
|
-
/** @private */
|
|
44
|
-
|
|
45
|
-
/** @private */
|
|
46
|
-
|
|
43
|
+
/** Skeletons with a live per-instance animation, so preference changes re-sync them all. @private */
|
|
44
|
+
private static __animating;
|
|
45
|
+
/** Shared timeline origin so every skeleton's wave/pulse stays in phase. @private */
|
|
46
|
+
private static __motionOrigin;
|
|
47
47
|
/** @private */ private static __reducedMediaQuery;
|
|
48
48
|
/** @private */ private static __forcedColorsMediaQuery;
|
|
49
49
|
/** The styles of the element. */
|
|
@@ -71,8 +71,14 @@ export declare class M3eSkeletonElement extends M3eSkeletonElement_base {
|
|
|
71
71
|
protected willUpdate(_changedProperties: PropertyValues<this>): void;
|
|
72
72
|
/** @inheritdoc */
|
|
73
73
|
protected render(): unknown;
|
|
74
|
-
/** @private */
|
|
75
|
-
static
|
|
74
|
+
/** Whether motion is currently suppressed for accessibility or forced-colors reasons. @private */
|
|
75
|
+
private static __motionDisabled;
|
|
76
|
+
/**
|
|
77
|
+
* Re-applies the current motion preference to every animating skeleton. Invoked when
|
|
78
|
+
* the reduced-motion or forced-colors preference changes.
|
|
79
|
+
* @private
|
|
80
|
+
*/
|
|
81
|
+
private static __updateMotion;
|
|
76
82
|
}
|
|
77
83
|
declare global {
|
|
78
84
|
interface HTMLElementTagNameMap {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SkeletonElement.d.ts","sourceRoot":"","sources":["../../../src/skeleton/SkeletonElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,cAAc,EAAQ,UAAU,EAAE,cAAc,EAAa,MAAM,KAAK,CAAC;AAMvF,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;;AAExD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBACa,kBAAmB,SAAQ,uBAA+B;;IACrE,
|
|
1
|
+
{"version":3,"file":"SkeletonElement.d.ts","sourceRoot":"","sources":["../../../src/skeleton/SkeletonElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,cAAc,EAAQ,UAAU,EAAE,cAAc,EAAa,MAAM,KAAK,CAAC;AAMvF,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;;AAExD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBACa,kBAAmB,SAAQ,uBAA+B;;IACrE,qGAAqG;IACrG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAiC;IAE3D,qFAAqF;IACrF,OAAO,CAAC,MAAM,CAAC,cAAc,CAAuB;IAEpD,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAiB;IACnE,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,wBAAwB,CAAiB;IA4BxE,iCAAiC;IACjC,OAAgB,MAAM,EAAE,cAAc,CAkGpC;IASF;;;OAGG;IAC0B,KAAK,EAAE,aAAa,CAAU;IAE3D;;;OAGG;IAC0B,SAAS,EAAE,iBAAiB,CAAU;IAEnE;;;OAGG;IACyC,MAAM,UAAS;IAE3D,kBAAkB;IACT,oBAAoB,IAAI,IAAI;IAMrC,kBAAkB;IACT,mBAAmB,IAAI,IAAI;IAMpC,kBAAkB;cACC,UAAU,CAAC,kBAAkB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAQ7E,kBAAkB;cACC,MAAM,IAAI,OAAO;IAgJpC,kGAAkG;IAClG,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAI/B;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;CAqB9B;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,cAAc,EAAE,kBAAkB,CAAC;KACpC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SliderElement.d.ts","sourceRoot":"","sources":["../../../src/slider/SliderElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,cAAc,EAAQ,UAAU,EAAE,cAAc,EAAa,MAAM,KAAK,CAAC;AAkBvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2EG;AACH,qBACa,gBAAiB,SAAQ,qBAA2B;;IAC/D,iCAAiC;IACjC,OAAgB,MAAM,EAAE,cAAc,CAkRpC;IAIF,eAAe;IACC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAc;IAErD,eAAe;IACN,OAAO,CAAC,MAAM,CAAmD;;IAc1E;;;OAGG;IAC0B,IAAI,EAAE,UAAU,CAAiB;IAE9D;;;OAGG;IACyC,QAAQ,UAAS;IAE7D;;;OAGG;IACyC,QAAQ,UAAS;IAE7D;;;OAGG;IACyB,GAAG,SAAK;IAEpC;;;OAGG;IACyB,GAAG,SAAO;IAEtC;;;OAGG;IACyB,IAAI,SAAK;IAErC;;;OAGG;IAC0B,QAAQ,UAAS;IAE9C,kDAAkD;IAClB,WAAW,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,MAAM,CAAC,GAAG,IAAI,CAAQ;IAE9F,wCAAwC;IACxC,IAAI,MAAM,IAAI,SAAS,qBAAqB,EAAE,CAE7C;IAED,4CAA4C;IAC5C,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,wCAAwC;IACxC,IAAI,KAAK,IAAI,qBAAqB,GAAG,IAAI,CAExC;IAED,kEAAkE;IAClE,IAAI,UAAU,IAAI,qBAAqB,GAAG,IAAI,CAE7C;IAED,kEAAkE;IAClE,IAAI,UAAU,IAAI,qBAAqB,GAAG,IAAI,CAE7C;IAED,kBAAkB;IACT,iBAAiB,IAAI,IAAI;IASlC,kBAAkB;IACT,oBAAoB,IAAI,IAAI;IAMrC,kBAAkB;cACC,OAAO,CAAC,kBAAkB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAQ1E,kBAAkB;cACC,MAAM,IAAI,OAAO;
|
|
1
|
+
{"version":3,"file":"SliderElement.d.ts","sourceRoot":"","sources":["../../../src/slider/SliderElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,cAAc,EAAQ,UAAU,EAAE,cAAc,EAAa,MAAM,KAAK,CAAC;AAkBvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2EG;AACH,qBACa,gBAAiB,SAAQ,qBAA2B;;IAC/D,iCAAiC;IACjC,OAAgB,MAAM,EAAE,cAAc,CAkRpC;IAIF,eAAe;IACC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAc;IAErD,eAAe;IACN,OAAO,CAAC,MAAM,CAAmD;;IAc1E;;;OAGG;IAC0B,IAAI,EAAE,UAAU,CAAiB;IAE9D;;;OAGG;IACyC,QAAQ,UAAS;IAE7D;;;OAGG;IACyC,QAAQ,UAAS;IAE7D;;;OAGG;IACyB,GAAG,SAAK;IAEpC;;;OAGG;IACyB,GAAG,SAAO;IAEtC;;;OAGG;IACyB,IAAI,SAAK;IAErC;;;OAGG;IAC0B,QAAQ,UAAS;IAE9C,kDAAkD;IAClB,WAAW,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,MAAM,CAAC,GAAG,IAAI,CAAQ;IAE9F,wCAAwC;IACxC,IAAI,MAAM,IAAI,SAAS,qBAAqB,EAAE,CAE7C;IAED,4CAA4C;IAC5C,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,wCAAwC;IACxC,IAAI,KAAK,IAAI,qBAAqB,GAAG,IAAI,CAExC;IAED,kEAAkE;IAClE,IAAI,UAAU,IAAI,qBAAqB,GAAG,IAAI,CAE7C;IAED,kEAAkE;IAClE,IAAI,UAAU,IAAI,qBAAqB,GAAG,IAAI,CAE7C;IAED,kBAAkB;IACT,iBAAiB,IAAI,IAAI;IASlC,kBAAkB;IACT,oBAAoB,IAAI,IAAI;IAMrC,kBAAkB;cACC,OAAO,CAAC,kBAAkB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAQ1E,kBAAkB;cACC,MAAM,IAAI,OAAO;CA8WrC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,YAAY,EAAE,gBAAgB,CAAC;KAChC;CACF"}
|