@aidenlx/player
Version:
Headless web components that make integrating media on the a web a breeze.
2 lines (1 loc) • 2.89 kB
JavaScript
import{a as c}from"../chunks/chunk.SFBX6VII.js";import"../chunks/chunk.ZSS4272G.js";import"../chunks/chunk.M4FYSJAP.js";import{b as a}from"../chunks/chunk.IZOPTWJO.js";import{a as i,b as d}from"../chunks/chunk.KCC3AAG2.js";import{S as o,T as l,V as h,Y as n,a as r,ea as u,ga as m,ia as p,k as s}from"../chunks/chunk.PWTX2M5C.js";var f=p``;var t=class extends c{constructor(){super();this._e=.1;this.value=0;this.valueText="{currentTime} out of {duration}";this.pauseWhileDragging=!1;this.seekingRequestThrottle=100;this.__mediaDuration=0;this.__mediaPaused=!0;this.Ds=s(this,"vds-slider-drag-start",e=>{this.Re(e)});this.ci=s(this,"vds-slider-value-change",e=>{n(e.originEvent)&&(this.b.cancel(),this.n.seek(this.value,e))});this.hi=s(this,"vds-slider-drag-value-change",e=>{this.b(e)});this.Vs=s(this,"vds-slider-drag-end",e=>{this.b.cancel(),this.n.seek(this.value,e),this.Re(e)});this.b=m(e=>{this.n.seeking(this.value,e)},this.seekingRequestThrottle);this.ne=!1;a(this,"currentTime",e=>{e<=this.min?this.value=this.min:e>=this.max?this.value=this.max:this.value=e}),a(this,"duration",e=>{this.__mediaDuration=e,this.requestUpdate("max")}),a(this,"paused",e=>{this.__mediaPaused=e})}static get styles(){return[super.styles,f]}connectedCallback(){super.connectedCallback(),h(this,"aria-label","Media time")}get step(){let e=this.max-this.min;return e>5?this._e:e>1?.05:.01}get min(){let e=o(this.store.min);return typeof e=="number"&&e>0&&e<this.__mediaDuration?e:0}set min(e){e<0?e=0:this.__mediaDuration>0&&e>this.__mediaDuration&&(e=this.__mediaDuration),this.store.min.set(e)}get max(){let e=o(this.store.max);return typeof e=="number"&&e>0&&e<this.__mediaDuration?e:this.__mediaDuration}set max(e){e<0?e=0:this.__mediaDuration>0&&e>this.__mediaDuration&&(e=this.__mediaDuration),this.store.max.set(e)}update(e){e.has("disabled")&&this.disabled&&this.b.cancel(),super.update(e)}disconnectedCallback(){this.b.cancel(),super.disconnectedCallback()}Gt(){return"0%"}zt(){return`${Math.round(this.fillPercent)}%`}ke(){return this.valueText.replace("{currentTime}",u(this.value)).replace("{duration}",u(this.__mediaDuration))}Wt(){return"100%"}Re(e){!this.pauseWhileDragging||(this.isDragging&&!this.__mediaPaused?(this.ne=!0,this.n.pause(e)):this.ne&&!this.isDragging&&this.__mediaPaused&&(this.ne=!1,this.n.play(e)))}};r([i({type:Number,reflect:!0})],t.prototype,"step",1),r([i({attribute:!1,state:!0})],t.prototype,"value",2),r([i({reflect:!0,type:Number})],t.prototype,"min",1),r([i({reflect:!0,type:Number})],t.prototype,"max",1),r([i({attribute:"value-text"})],t.prototype,"valueText",2),r([i({attribute:"pause-while-dragging",type:Boolean})],t.prototype,"pauseWhileDragging",2),r([i({attribute:"seeking-request-throttle",type:Number})],t.prototype,"seekingRequestThrottle",2),r([d()],t.prototype,"__mediaDuration",2),r([d()],t.prototype,"__mediaPaused",2);l("vds-timespan-slider",t);