UNPKG

media-chrome

Version:

Custom elements (web components) for making audio and video player controls that look great in your website or app.

154 lines (118 loc) • 215 kB
var MediaChrome=(()=>{var Ps=Object.defineProperty;var Iu=Object.getOwnPropertyDescriptor;var Su=Object.getOwnPropertyNames;var Mu=Object.prototype.hasOwnProperty;var Us=(i,t)=>{for(var e in t)Ps(i,e,{get:t[e],enumerable:!0})},ku=(i,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Su(t))!Mu.call(i,n)&&n!==e&&Ps(i,n,{get:()=>t[n],enumerable:!(r=Iu(t,n))||r.enumerable});return i};var Lu=i=>ku(Ps({},"__esModule",{value:!0}),i);var Os=(i,t,e)=>{if(!t.has(i))throw TypeError("Cannot "+e)};var o=(i,t,e)=>(Os(i,t,"read from private field"),e?e.call(i):t.get(i)),m=(i,t,e)=>{if(t.has(i))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(i):t.set(i,e)},h=(i,t,e,r)=>(Os(i,t,"write to private field"),r?r.call(i,e):t.set(i,e),e);var aa=(i,t,e,r)=>({set _(n){h(i,t,n,e)},get _(){return o(i,t,r)}}),E=(i,t,e)=>(Os(i,t,"access private method"),e);var Ec={};Us(Ec,{AttrPart:()=>ge,AttrPartList:()=>_s,ChildNodePart:()=>Nr,InnerTemplatePart:()=>Ei,MediaAirplayButton:()=>al,MediaAudioTrackMenu:()=>Ar,MediaAudioTrackMenuButton:()=>Mr,MediaCaptionsButton:()=>cl,MediaCaptionsMenu:()=>ui,MediaCaptionsMenuButton:()=>_r,MediaCastButton:()=>El,MediaChromeButton:()=>rl,MediaChromeDialog:()=>Al,MediaChromeMenu:()=>K,MediaChromeMenuButton:()=>j,MediaChromeMenuItem:()=>Re,MediaChromeRange:()=>_l,MediaContainer:()=>wa,MediaControlBar:()=>Rl,MediaController:()=>el,MediaDurationDisplay:()=>wl,MediaErrorDialog:()=>Ol,MediaFullscreenButton:()=>Bl,MediaGestureReceiver:()=>La,MediaLiveButton:()=>Vl,MediaLoadingIndicator:()=>ql,MediaMuteButton:()=>Ql,MediaPipButton:()=>Jl,MediaPlayButton:()=>nd,MediaPlaybackRateButton:()=>td,MediaPlaybackRateMenu:()=>xr,MediaPlaybackRateMenuButton:()=>Cr,MediaPosterImage:()=>od,MediaPreviewChapterDisplay:()=>ad,MediaPreviewThumbnail:()=>dd,MediaPreviewTimeDisplay:()=>ud,MediaRenditionMenu:()=>wr,MediaRenditionMenuButton:()=>Ur,MediaSeekBackwardButton:()=>cd,MediaSeekForwardButton:()=>pd,MediaSettingsMenu:()=>ai,MediaSettingsMenuButton:()=>Tr,MediaSettingsMenuItem:()=>li,MediaTextDisplay:()=>Dl,MediaThemeElement:()=>gi,MediaTimeDisplay:()=>fd,MediaTimeRange:()=>Sd,MediaTooltip:()=>kd,MediaVolumeRange:()=>Ld,Part:()=>Or,TemplateInstance:()=>ze,constants:()=>Wr,defaultProcessor:()=>uu,parse:()=>So,t:()=>f,timeUtils:()=>Qr,tokenize:()=>Io});var Wr={};Us(Wr,{AttributeToStateChangeEventMap:()=>Ns,AvailabilityStates:()=>Q,MediaStateChangeEvents:()=>be,MediaStateReceiverAttributes:()=>x,MediaUIAttributes:()=>a,MediaUIEvents:()=>b,MediaUIProps:()=>Gr,PointerTypes:()=>qr,ReadyStates:()=>Ru,StateChangeEventToAttributeMap:()=>xu,StreamTypes:()=>X,TextTrackKinds:()=>q,TextTrackModes:()=>Se,VolumeLevels:()=>Cu,WebkitPresentationModes:()=>Hs});var b={MEDIA_PLAY_REQUEST:"mediaplayrequest",MEDIA_PAUSE_REQUEST:"mediapauserequest",MEDIA_MUTE_REQUEST:"mediamuterequest",MEDIA_UNMUTE_REQUEST:"mediaunmuterequest",MEDIA_VOLUME_REQUEST:"mediavolumerequest",MEDIA_SEEK_REQUEST:"mediaseekrequest",MEDIA_AIRPLAY_REQUEST:"mediaairplayrequest",MEDIA_ENTER_FULLSCREEN_REQUEST:"mediaenterfullscreenrequest",MEDIA_EXIT_FULLSCREEN_REQUEST:"mediaexitfullscreenrequest",MEDIA_PREVIEW_REQUEST:"mediapreviewrequest",MEDIA_ENTER_PIP_REQUEST:"mediaenterpiprequest",MEDIA_EXIT_PIP_REQUEST:"mediaexitpiprequest",MEDIA_ENTER_CAST_REQUEST:"mediaentercastrequest",MEDIA_EXIT_CAST_REQUEST:"mediaexitcastrequest",MEDIA_SHOW_TEXT_TRACKS_REQUEST:"mediashowtexttracksrequest",MEDIA_HIDE_TEXT_TRACKS_REQUEST:"mediahidetexttracksrequest",MEDIA_SHOW_SUBTITLES_REQUEST:"mediashowsubtitlesrequest",MEDIA_DISABLE_SUBTITLES_REQUEST:"mediadisablesubtitlesrequest",MEDIA_TOGGLE_SUBTITLES_REQUEST:"mediatogglesubtitlesrequest",MEDIA_PLAYBACK_RATE_REQUEST:"mediaplaybackraterequest",MEDIA_RENDITION_REQUEST:"mediarenditionrequest",MEDIA_AUDIO_TRACK_REQUEST:"mediaaudiotrackrequest",MEDIA_SEEK_TO_LIVE_REQUEST:"mediaseektoliverequest",REGISTER_MEDIA_STATE_RECEIVER:"registermediastatereceiver",UNREGISTER_MEDIA_STATE_RECEIVER:"unregistermediastatereceiver"},x={MEDIA_CHROME_ATTRIBUTES:"mediachromeattributes",MEDIA_CONTROLLER:"mediacontroller"},Gr={MEDIA_AIRPLAY_UNAVAILABLE:"mediaAirplayUnavailable",MEDIA_AUDIO_TRACK_ENABLED:"mediaAudioTrackEnabled",MEDIA_AUDIO_TRACK_LIST:"mediaAudioTrackList",MEDIA_AUDIO_TRACK_UNAVAILABLE:"mediaAudioTrackUnavailable",MEDIA_BUFFERED:"mediaBuffered",MEDIA_CAST_UNAVAILABLE:"mediaCastUnavailable",MEDIA_CHAPTERS_CUES:"mediaChaptersCues",MEDIA_CURRENT_TIME:"mediaCurrentTime",MEDIA_DURATION:"mediaDuration",MEDIA_ENDED:"mediaEnded",MEDIA_ERROR:"mediaError",MEDIA_ERROR_CODE:"mediaErrorCode",MEDIA_ERROR_MESSAGE:"mediaErrorMessage",MEDIA_FULLSCREEN_UNAVAILABLE:"mediaFullscreenUnavailable",MEDIA_HAS_PLAYED:"mediaHasPlayed",MEDIA_HEIGHT:"mediaHeight",MEDIA_IS_AIRPLAYING:"mediaIsAirplaying",MEDIA_IS_CASTING:"mediaIsCasting",MEDIA_IS_FULLSCREEN:"mediaIsFullscreen",MEDIA_IS_PIP:"mediaIsPip",MEDIA_LOADING:"mediaLoading",MEDIA_MUTED:"mediaMuted",MEDIA_PAUSED:"mediaPaused",MEDIA_PIP_UNAVAILABLE:"mediaPipUnavailable",MEDIA_PLAYBACK_RATE:"mediaPlaybackRate",MEDIA_PREVIEW_CHAPTER:"mediaPreviewChapter",MEDIA_PREVIEW_COORDS:"mediaPreviewCoords",MEDIA_PREVIEW_IMAGE:"mediaPreviewImage",MEDIA_PREVIEW_TIME:"mediaPreviewTime",MEDIA_RENDITION_LIST:"mediaRenditionList",MEDIA_RENDITION_SELECTED:"mediaRenditionSelected",MEDIA_RENDITION_UNAVAILABLE:"mediaRenditionUnavailable",MEDIA_SEEKABLE:"mediaSeekable",MEDIA_STREAM_TYPE:"mediaStreamType",MEDIA_SUBTITLES_LIST:"mediaSubtitlesList",MEDIA_SUBTITLES_SHOWING:"mediaSubtitlesShowing",MEDIA_TARGET_LIVE_WINDOW:"mediaTargetLiveWindow",MEDIA_TIME_IS_LIVE:"mediaTimeIsLive",MEDIA_VOLUME:"mediaVolume",MEDIA_VOLUME_LEVEL:"mediaVolumeLevel",MEDIA_VOLUME_UNAVAILABLE:"mediaVolumeUnavailable",MEDIA_WIDTH:"mediaWidth"},la=Object.entries(Gr),a=la.reduce((i,[t,e])=>(i[t]=e.toLowerCase(),i),{}),_u={USER_INACTIVE_CHANGE:"userinactivechange",BREAKPOINTS_CHANGE:"breakpointchange",BREAKPOINTS_COMPUTED:"breakpointscomputed"},be=la.reduce((i,[t,e])=>(i[t]=e.toLowerCase(),i),{..._u}),xu=Object.entries(be).reduce((i,[t,e])=>{let r=a[t];return r&&(i[e]=r),i},{userinactivechange:"userinactive"}),Ns=Object.entries(a).reduce((i,[t,e])=>{let r=be[t];return r&&(i[e]=r),i},{userinactive:"userinactivechange"}),q={SUBTITLES:"subtitles",CAPTIONS:"captions",DESCRIPTIONS:"descriptions",CHAPTERS:"chapters",METADATA:"metadata"},Se={DISABLED:"disabled",HIDDEN:"hidden",SHOWING:"showing"},Ru={HAVE_NOTHING:0,HAVE_METADATA:1,HAVE_CURRENT_DATA:2,HAVE_FUTURE_DATA:3,HAVE_ENOUGH_DATA:4},qr={MOUSE:"mouse",PEN:"pen",TOUCH:"touch"},Q={UNAVAILABLE:"unavailable",UNSUPPORTED:"unsupported"},X={LIVE:"live",ON_DEMAND:"on-demand",UNKNOWN:"unknown"},Cu={HIGH:"high",MEDIUM:"medium",LOW:"low",OFF:"off"},Hs={INLINE:"inline",FULLSCREEN:"fullscreen",PICTURE_IN_PICTURE:"picture-in-picture"};var Qr={};Us(Qr,{emptyTimeRanges:()=>Ea,formatAsTimePhrase:()=>Ue,formatTime:()=>ne,serializeTimeRanges:()=>Nu});function da(i){return i==null?void 0:i.map(Du).join(" ")}function ua(i){return i==null?void 0:i.split(/\s+/).map(wu)}function Du(i){if(i){let{id:t,width:e,height:r}=i;return[t,e,r].filter(n=>n!=null).join(":")}}function wu(i){if(i){let[t,e,r]=i.split(":");return{id:t,width:+e,height:+r}}}function ma(i){return i==null?void 0:i.map(Pu).join(" ")}function ca(i){return i==null?void 0:i.split(/\s+/).map(Uu)}function Pu(i){if(i){let{id:t,kind:e,language:r,label:n}=i;return[t,e,r,n].filter(s=>s!=null).join(":")}}function Uu(i){if(i){let[t,e,r,n]=i.split(":");return{id:t,kind:e,language:r,label:n}}}function ha(i){return i.replace(/[-_]([a-z])/g,(t,e)=>e.toUpperCase())}function Ut(i){return typeof i=="number"&&!Number.isNaN(i)&&Number.isFinite(i)}function Yr(i){return typeof i!="string"?!1:!isNaN(i)&&!isNaN(parseFloat(i))}var jr=i=>new Promise(t=>setTimeout(t,i));var pa=[{singular:"hour",plural:"hours"},{singular:"minute",plural:"minutes"},{singular:"second",plural:"seconds"}],Ou=(i,t)=>{let e=i===1?pa[t].singular:pa[t].plural;return`${i} ${e}`},Ue=i=>{if(!Ut(i))return"";let t=Math.abs(i),e=t!==i,r=new Date(0,0,0,0,0,t,0);return`${[r.getHours(),r.getMinutes(),r.getSeconds()].map((d,c)=>d&&Ou(d,c)).filter(d=>d).join(", ")}${e?" remaining":""}`};function ne(i,t){let e=!1;i<0&&(e=!0,i=0-i),i=i<0?0:i;let r=Math.floor(i%60),n=Math.floor(i/60%60),s=Math.floor(i/3600),l=Math.floor(t/60%60),d=Math.floor(t/3600);return(isNaN(i)||i===1/0)&&(s=n=r="0"),s=s>0||d>0?s+":":"",n=((s||l>=10)&&n<10?"0"+n:n)+":",r=r<10?"0"+r:r,(e?"-":"")+s+n+r}var Ea=Object.freeze({length:0,start(i){let t=i>>>0;if(t>=this.length)throw new DOMException(`Failed to execute 'start' on 'TimeRanges': The index provided (${t}) is greater than or equal to the maximum bound (${this.length}).`);return 0},end(i){let t=i>>>0;if(t>=this.length)throw new DOMException(`Failed to execute 'end' on 'TimeRanges': The index provided (${t}) is greater than or equal to the maximum bound (${this.length}).`);return 0}});function Nu(i=Ea){return Array.from(i).map((t,e)=>[Number(i.start(e).toFixed(3)),Number(i.end(e).toFixed(3))].join(":")).join(" ")}var Bs={"Start airplay":"Start airplay","Stop airplay":"Stop airplay",Audio:"Audio",Captions:"Captions","Enable captions":"Enable captions","Disable captions":"Disable captions","Start casting":"Start casting","Stop casting":"Stop casting","Enter fullscreen mode":"Enter fullscreen mode","Exit fullscreen mode":"Exit fullscreen mode",Mute:"Mute",Unmute:"Unmute","Enter picture in picture mode":"Enter picture in picture mode","Exit picture in picture mode":"Exit picture in picture mode",Play:"Play",Pause:"Pause","Playback rate":"Playback rate","Playback rate {playbackRate}":"Playback rate {playbackRate}",Quality:"Quality","Seek backward":"Seek backward","Seek forward":"Seek forward",Settings:"Settings","audio player":"audio player","video player":"video player",volume:"volume",seek:"seek","closed captions":"closed captions","current playback rate":"current playback rate","playback time":"playback time","media loading":"media loading",settings:"settings","audio tracks":"audio tracks",quality:"quality",play:"play",pause:"pause",mute:"mute",unmute:"unmute",live:"live","start airplay":"start airplay","stop airplay":"stop airplay","start casting":"start casting","stop casting":"stop casting","enter fullscreen mode":"enter fullscreen mode","exit fullscreen mode":"exit fullscreen mode","enter picture in picture mode":"enter picture in picture mode","exit picture in picture mode":"exit picture in picture mode","seek to live":"seek to live","playing live":"playing live","seek back {seekOffset} seconds":"seek back {seekOffset} seconds","seek forward {seekOffset} seconds":"seek forward {seekOffset} seconds","Network Error":"Network Error","Decode Error":"Decode Error","Source Not Supported":"Source Not Supported","Encryption Error":"Encryption Error","A network error caused the media download to fail.":"A network error caused the media download to fail.","A media error caused playback to be aborted. The media could be corrupt or your browser does not support this format.":"A media error caused playback to be aborted. The media could be corrupt or your browser does not support this format.","An unsupported error occurred. The server or network failed, or your browser does not support this format.":"An unsupported error occurred. The server or network failed, or your browser does not support this format.","The media is encrypted and there are no keys to decrypt it.":"The media is encrypted and there are no keys to decrypt it."};var Hu={en:Bs},ga,ba=((ga=globalThis.navigator)==null?void 0:ga.language.split("-")[0])||"en",fa=i=>{ba=i};var f=(i,t={})=>{var r;return(((r=Hu[ba])==null?void 0:r[i])||Bs[i]).replace(/\{(\w+)\}/g,(n,s)=>t[s]!==void 0?String(t[s]):`{${s}}`)};var zr=class{addEventListener(){}removeEventListener(){}dispatchEvent(){return!0}},Zr=class extends zr{},Xr=class extends Zr{constructor(){super(...arguments);this.role=null}},Fs=class{observe(){}unobserve(){}disconnect(){}},va={createElement:function(){return new vi.HTMLElement},createElementNS:function(){return new vi.HTMLElement},addEventListener(){},removeEventListener(){},dispatchEvent(i){return!1}},vi={ResizeObserver:Fs,document:va,Node:Zr,Element:Xr,HTMLElement:class extends Xr{constructor(){super(...arguments);this.innerHTML=""}get content(){return new vi.DocumentFragment}},DocumentFragment:class extends zr{},customElements:{get:function(){},define:function(){},whenDefined:function(){}},localStorage:{getItem(i){return null},setItem(i,t){},removeItem(i){}},CustomEvent:function(){},getComputedStyle:function(){},navigator:{languages:[],get userAgent(){return""}},matchMedia(i){return{matches:!1,media:i}}},Ta=typeof window=="undefined"||typeof window.customElements=="undefined",Aa=Object.keys(vi).every(i=>i in globalThis),u=Ta&&!Aa?vi:globalThis,g=Ta&&!Aa?va:globalThis.document;var ya=new WeakMap,$s=i=>{let t=ya.get(i);return t||ya.set(i,t=new Set),t},Ia=new u.ResizeObserver(i=>{for(let t of i)for(let e of $s(t.target))e(t)});function Me(i,t){$s(i).add(t),Ia.observe(i)}function ke(i,t){let e=$s(i);e.delete(t),e.size||Ia.unobserve(i)}function Sa(i){let t={};for(let e of i)t[e.name]=e.value;return t}function F(i){var t;return(t=Jr(i))!=null?t:fe(i,"media-controller")}function Jr(i){var r;let{MEDIA_CONTROLLER:t}=x,e=i.getAttribute(t);if(e)return(r=Ze(i))==null?void 0:r.getElementById(e)}var en=(i,t,e=".value")=>{let r=i.querySelector(e);r&&(r.textContent=t)},Bu=(i,t)=>{let e=`slot[name="${t}"]`,r=i.shadowRoot.querySelector(e);return r?r.children:[]},tn=(i,t)=>Bu(i,t)[0],W=(i,t)=>!i||!t?!1:i!=null&&i.contains(t)?!0:W(i,t.getRootNode().host),fe=(i,t)=>{if(!i)return null;let e=i.closest(t);return e||fe(i.getRootNode().host,t)};function Ti(i=document){var e;let t=i==null?void 0:i.activeElement;return t?(e=Ti(t.shadowRoot))!=null?e:t:null}function Ze(i){var e;let t=(e=i==null?void 0:i.getRootNode)==null?void 0:e.call(i);return t instanceof ShadowRoot||t instanceof Document?t:null}function rn(i,{depth:t=3,checkOpacity:e=!0,checkVisibilityCSS:r=!0}={}){if(i.checkVisibility)return i.checkVisibility({checkOpacity:e,checkVisibilityCSS:r});let n=i;for(;n&&t>0;){let s=getComputedStyle(n);if(e&&s.opacity==="0"||r&&s.visibility==="hidden"||s.display==="none")return!1;n=n.parentElement,t--}return!0}function Ma(i,t,e,r){let n=r.x-e.x,s=r.y-e.y,l=n*n+s*s;if(l===0)return 0;let d=((i-e.x)*n+(t-e.y)*s)/l;return Math.max(0,Math.min(1,d))}function O(i,t){let e=Fu(i,r=>r===t);return e||Vs(i,t)}function Fu(i,t){var r,n;let e;for(e of(r=i.querySelectorAll("style:not([media])"))!=null?r:[]){let s;try{s=(n=e.sheet)==null?void 0:n.cssRules}catch{continue}for(let l of s!=null?s:[])if(t(l.selectorText))return l}}function Vs(i,t){var n,s;let e=(n=i.querySelectorAll("style:not([media])"))!=null?n:[],r=e==null?void 0:e[e.length-1];return r!=null&&r.sheet?(r==null||r.sheet.insertRule(`${t}{}`,r.sheet.cssRules.length),(s=r.sheet.cssRules)==null?void 0:s[r.sheet.cssRules.length-1]):(console.warn("Media Chrome: No style sheet found on style tag of",i),{style:{setProperty:()=>{},removeProperty:()=>"",getPropertyValue:()=>""}})}function R(i,t,e=Number.NaN){let r=i.getAttribute(t);return r!=null?+r:e}function D(i,t,e){let r=+e;if(e==null||Number.isNaN(r)){i.hasAttribute(t)&&i.removeAttribute(t);return}R(i,t,void 0)!==r&&i.setAttribute(t,`${r}`)}function M(i,t){return i.hasAttribute(t)}function k(i,t,e){if(e==null){i.hasAttribute(t)&&i.removeAttribute(t);return}M(i,t)!=e&&i.toggleAttribute(t,e)}function L(i,t,e=null){var r;return(r=i.getAttribute(t))!=null?r:e}function _(i,t,e){if(e==null){i.hasAttribute(t)&&i.removeAttribute(t);return}let r=`${e}`;L(i,t,void 0)!==r&&i.setAttribute(t,r)}var ka=g.createElement("template");ka.innerHTML=` <style> :host { display: var(--media-control-display, var(--media-gesture-receiver-display, inline-block)); box-sizing: border-box; } </style> `;var Y,nn=class extends u.HTMLElement{constructor(e={}){super();m(this,Y,void 0);if(!this.shadowRoot){let r=this.attachShadow({mode:"open"}),n=ka.content.cloneNode(!0);this.nativeEl=n;let s=e.slotTemplate;s||(s=g.createElement("template"),s.innerHTML=`<slot>${e.defaultContent||""}</slot>`),this.nativeEl.appendChild(s.content.cloneNode(!0)),r.appendChild(n)}}static get observedAttributes(){return[x.MEDIA_CONTROLLER,a.MEDIA_PAUSED]}attributeChangedCallback(e,r,n){var s,l,d,c,p;e===x.MEDIA_CONTROLLER&&(r&&((l=(s=o(this,Y))==null?void 0:s.unassociateElement)==null||l.call(s,this),h(this,Y,null)),n&&this.isConnected&&(h(this,Y,(d=this.getRootNode())==null?void 0:d.getElementById(n)),(p=(c=o(this,Y))==null?void 0:c.associateElement)==null||p.call(c,this)))}connectedCallback(){var e,r,n,s;this.tabIndex=-1,this.setAttribute("aria-hidden","true"),h(this,Y,$u(this)),this.getAttribute(x.MEDIA_CONTROLLER)&&((r=(e=o(this,Y))==null?void 0:e.associateElement)==null||r.call(e,this)),(n=o(this,Y))==null||n.addEventListener("pointerdown",this),(s=o(this,Y))==null||s.addEventListener("click",this)}disconnectedCallback(){var e,r,n,s;this.getAttribute(x.MEDIA_CONTROLLER)&&((r=(e=o(this,Y))==null?void 0:e.unassociateElement)==null||r.call(e,this)),(n=o(this,Y))==null||n.removeEventListener("pointerdown",this),(s=o(this,Y))==null||s.removeEventListener("click",this),h(this,Y,null)}handleEvent(e){var s;let r=(s=e.composedPath())==null?void 0:s[0];if(["video","media-controller"].includes(r==null?void 0:r.localName)){if(e.type==="pointerdown")this._pointerType=e.pointerType;else if(e.type==="click"){let{clientX:l,clientY:d}=e,{left:c,top:p,width:A,height:I}=this.getBoundingClientRect(),T=l-c,v=d-p;if(T<0||v<0||T>A||v>I||A===0&&I===0)return;let{pointerType:P=this._pointerType}=e;if(this._pointerType=void 0,P===qr.TOUCH){this.handleTap(e);return}else if(P===qr.MOUSE){this.handleMouseClick(e);return}}}}get mediaPaused(){return M(this,a.MEDIA_PAUSED)}set mediaPaused(e){k(this,a.MEDIA_PAUSED,e)}handleTap(e){}handleMouseClick(e){let r=this.mediaPaused?b.MEDIA_PLAY_REQUEST:b.MEDIA_PAUSE_REQUEST;this.dispatchEvent(new u.CustomEvent(r,{composed:!0,bubbles:!0}))}};Y=new WeakMap;function $u(i){var e;let t=i.getAttribute(x.MEDIA_CONTROLLER);return t?(e=i.getRootNode())==null?void 0:e.getElementById(t):fe(i,"media-controller")}u.customElements.get("media-gesture-receiver")||u.customElements.define("media-gesture-receiver",nn);var La=nn;var S={AUDIO:"audio",AUTOHIDE:"autohide",BREAKPOINTS:"breakpoints",GESTURES_DISABLED:"gesturesdisabled",KEYBOARD_CONTROL:"keyboardcontrol",NO_AUTOHIDE:"noautohide",USER_INACTIVE:"userinactive",AUTOHIDE_OVER_CONTROLS:"autohideovercontrols"},_a=g.createElement("template");_a.innerHTML=` <style> :host([${a.MEDIA_IS_FULLSCREEN}]) ::slotted([slot=media]) { outline: none; } :host { box-sizing: border-box; position: relative; display: inline-block; line-height: 0; background-color: var(--media-background-color, #000); } :host(:not([${S.AUDIO}])) [part~=layer]:not([part~=media-layer]) { position: absolute; top: 0; left: 0; bottom: 0; right: 0; display: flex; flex-flow: column nowrap; align-items: start; pointer-events: none; background: none; } slot[name=media] { display: var(--media-slot-display, contents); } :host([${S.AUDIO}]) slot[name=media] { display: var(--media-slot-display, none); } :host([${S.AUDIO}]) [part~=layer][part~=gesture-layer] { height: 0; display: block; } :host(:not([${S.AUDIO}])[${S.GESTURES_DISABLED}]) ::slotted([slot=gestures-chrome]), :host(:not([${S.AUDIO}])[${S.GESTURES_DISABLED}]) media-gesture-receiver[slot=gestures-chrome] { display: none; } ::slotted(:not([slot=media]):not([slot=poster]):not(media-loading-indicator):not([role=dialog]):not([hidden])) { pointer-events: auto; } :host(:not([${S.AUDIO}])) *[part~=layer][part~=centered-layer] { align-items: center; justify-content: center; } :host(:not([${S.AUDIO}])) ::slotted(media-gesture-receiver[slot=gestures-chrome]), :host(:not([${S.AUDIO}])) media-gesture-receiver[slot=gestures-chrome] { align-self: stretch; flex-grow: 1; } slot[name=middle-chrome] { display: inline; flex-grow: 1; pointer-events: none; background: none; } ::slotted([slot=media]), ::slotted([slot=poster]) { width: 100%; height: 100%; } :host(:not([${S.AUDIO}])) .spacer { flex-grow: 1; } :host(:-webkit-full-screen) { width: 100% !important; height: 100% !important; } ::slotted(:not([slot=media]):not([slot=poster]):not([${S.NO_AUTOHIDE}]):not([hidden]):not([role=dialog])) { opacity: 1; transition: var(--media-control-transition-in, opacity 0.25s); } :host([${S.USER_INACTIVE}]:not([${a.MEDIA_PAUSED}]):not([${a.MEDIA_IS_AIRPLAYING}]):not([${a.MEDIA_IS_CASTING}]):not([${S.AUDIO}])) ::slotted(:not([slot=media]):not([slot=poster]):not([${S.NO_AUTOHIDE}]):not([role=dialog])) { opacity: 0; transition: var(--media-control-transition-out, opacity 1s); } :host([${S.USER_INACTIVE}]:not([${S.NO_AUTOHIDE}]):not([${a.MEDIA_PAUSED}]):not([${a.MEDIA_IS_CASTING}]):not([${S.AUDIO}])) ::slotted([slot=media]) { cursor: none; } :host([${S.USER_INACTIVE}][${S.AUTOHIDE_OVER_CONTROLS}]:not([${S.NO_AUTOHIDE}]):not([${a.MEDIA_PAUSED}]):not([${a.MEDIA_IS_CASTING}]):not([${S.AUDIO}])) * { --media-cursor: none; cursor: none; } ::slotted(media-control-bar) { align-self: stretch; } :host(:not([${S.AUDIO}])[${a.MEDIA_HAS_PLAYED}]) slot[name=poster] { display: none; } ::slotted([role=dialog]) { width: 100%; height: 100%; align-self: center; } ::slotted([role=menu]) { align-self: end; } </style> <slot name="media" part="layer media-layer"></slot> <slot name="poster" part="layer poster-layer"></slot> <slot name="gestures-chrome" part="layer gesture-layer"> <media-gesture-receiver slot="gestures-chrome"></media-gesture-receiver> </slot> <span part="layer vertical-layer"> <slot name="top-chrome" part="top chrome"></slot> <slot name="middle-chrome" part="middle chrome"></slot> <slot name="centered-chrome" part="layer centered-layer center centered chrome"></slot> <slot part="bottom chrome"></slot> </span> <slot name="dialog" part="layer dialog-layer"></slot> `;var Vu=Object.values(a),Ku="sm:384 md:576 lg:768 xl:960";function Gu(i){xa(i.target,i.contentRect.width)}function xa(i,t){var l;if(!i.isConnected)return;let e=(l=i.getAttribute(S.BREAKPOINTS))!=null?l:Ku,r=qu(e),n=Wu(r,t),s=!1;if(Object.keys(r).forEach(d=>{if(n.includes(d)){i.hasAttribute(`breakpoint${d}`)||(i.setAttribute(`breakpoint${d}`,""),s=!0);return}i.hasAttribute(`breakpoint${d}`)&&(i.removeAttribute(`breakpoint${d}`),s=!0)}),s){let d=new CustomEvent(be.BREAKPOINTS_CHANGE,{detail:n});i.dispatchEvent(d)}i.breakpointsComputed||(i.breakpointsComputed=!0,i.dispatchEvent(new CustomEvent(be.BREAKPOINTS_COMPUTED,{bubbles:!0,composed:!0})))}function qu(i){let t=i.split(/\s+/);return Object.fromEntries(t.map(e=>e.split(":")))}function Wu(i,t){return Object.keys(i).filter(e=>t>=parseInt(i[e]))}var yi,Xe,Ot,Je,Ii,on,Ra,Nt,Si,an,Ca,ln,Da,Ht,sn,Mi,Ks,et,Ai,Bt=class extends u.HTMLElement{constructor(){super();m(this,on);m(this,an);m(this,ln);m(this,Ht);m(this,Mi);m(this,et);m(this,yi,0);m(this,Xe,null);m(this,Ot,null);m(this,Je,void 0);this.breakpointsComputed=!1;m(this,Ii,new MutationObserver(E(this,on,Ra).bind(this)));m(this,Nt,!1);m(this,Si,e=>{o(this,Nt)||(setTimeout(()=>{Gu(e),h(this,Nt,!1)},0),h(this,Nt,!0))});this.shadowRoot||(this.attachShadow({mode:"open"}),this.shadowRoot.appendChild(_a.content.cloneNode(!0)));let e=this.querySelector(":scope > slot[slot=media]");e&&e.addEventListener("slotchange",()=>{if(!e.assignedElements({flatten:!0}).length){o(this,Xe)&&this.mediaUnsetCallback(o(this,Xe));return}this.handleMediaUpdated(this.media)})}static get observedAttributes(){return[S.AUTOHIDE,S.GESTURES_DISABLED].concat(Vu).filter(e=>![a.MEDIA_RENDITION_LIST,a.MEDIA_AUDIO_TRACK_LIST,a.MEDIA_CHAPTERS_CUES,a.MEDIA_WIDTH,a.MEDIA_HEIGHT,a.MEDIA_ERROR,a.MEDIA_ERROR_MESSAGE].includes(e))}attributeChangedCallback(e,r,n){e.toLowerCase()==S.AUTOHIDE&&(this.autohide=n)}get media(){let e=this.querySelector(":scope > [slot=media]");return(e==null?void 0:e.nodeName)=="SLOT"&&(e=e.assignedElements({flatten:!0})[0]),e}async handleMediaUpdated(e){e&&(h(this,Xe,e),e.localName.includes("-")&&await u.customElements.whenDefined(e.localName),this.mediaSetCallback(e))}connectedCallback(){var n;o(this,Ii).observe(this,{childList:!0,subtree:!0}),Me(this,o(this,Si));let r=this.getAttribute(S.AUDIO)!=null?f("audio player"):f("video player");this.setAttribute("role","region"),this.setAttribute("aria-label",r),this.handleMediaUpdated(this.media),this.setAttribute(S.USER_INACTIVE,""),xa(this,this.getBoundingClientRect().width),this.addEventListener("pointerdown",this),this.addEventListener("pointermove",this),this.addEventListener("pointerup",this),this.addEventListener("mouseleave",this),this.addEventListener("keyup",this),(n=u.window)==null||n.addEventListener("mouseup",this)}disconnectedCallback(){var e;o(this,Ii).disconnect(),ke(this,o(this,Si)),this.media&&this.mediaUnsetCallback(this.media),(e=u.window)==null||e.removeEventListener("mouseup",this)}mediaSetCallback(e){}mediaUnsetCallback(e){h(this,Xe,null)}handleEvent(e){switch(e.type){case"pointerdown":h(this,yi,e.timeStamp);break;case"pointermove":E(this,an,Ca).call(this,e);break;case"pointerup":E(this,ln,Da).call(this,e);break;case"mouseleave":E(this,Ht,sn).call(this);break;case"mouseup":this.removeAttribute(S.KEYBOARD_CONTROL);break;case"keyup":E(this,et,Ai).call(this),this.setAttribute(S.KEYBOARD_CONTROL,"");break}}set autohide(e){let r=Number(e);h(this,Je,isNaN(r)?0:r)}get autohide(){return(o(this,Je)===void 0?2:o(this,Je)).toString()}get breakpoints(){return L(this,S.BREAKPOINTS)}set breakpoints(e){_(this,S.BREAKPOINTS,e)}get audio(){return M(this,S.AUDIO)}set audio(e){k(this,S.AUDIO,e)}get gesturesDisabled(){return M(this,S.GESTURES_DISABLED)}set gesturesDisabled(e){k(this,S.GESTURES_DISABLED,e)}get keyboardControl(){return M(this,S.KEYBOARD_CONTROL)}set keyboardControl(e){k(this,S.KEYBOARD_CONTROL,e)}get noAutohide(){return M(this,S.NO_AUTOHIDE)}set noAutohide(e){k(this,S.NO_AUTOHIDE,e)}get autohideOverControls(){return M(this,S.AUTOHIDE_OVER_CONTROLS)}set autohideOverControls(e){k(this,S.AUTOHIDE_OVER_CONTROLS,e)}get userInteractive(){return M(this,S.USER_INACTIVE)}set userInteractive(e){k(this,S.USER_INACTIVE,e)}};yi=new WeakMap,Xe=new WeakMap,Ot=new WeakMap,Je=new WeakMap,Ii=new WeakMap,on=new WeakSet,Ra=function(e){let r=this.media;for(let n of e){if(n.type!=="childList")continue;let s=n.removedNodes;for(let l of s){if(l.slot!="media"||n.target!=this)continue;let d=n.previousSibling&&n.previousSibling.previousElementSibling;if(!d||!r)this.mediaUnsetCallback(l);else{let c=d.slot!=="media";for(;(d=d.previousSibling)!==null;)d.slot=="media"&&(c=!1);c&&this.mediaUnsetCallback(l)}}if(r)for(let l of n.addedNodes)l===r&&this.handleMediaUpdated(r)}},Nt=new WeakMap,Si=new WeakMap,an=new WeakSet,Ca=function(e){if(e.pointerType!=="mouse"&&e.timeStamp-o(this,yi)<250)return;E(this,Mi,Ks).call(this),clearTimeout(o(this,Ot));let r=this.hasAttribute(S.AUTOHIDE_OVER_CONTROLS);([this,this.media].includes(e.target)||r)&&E(this,et,Ai).call(this)},ln=new WeakSet,Da=function(e){if(e.pointerType==="touch"){let r=!this.hasAttribute(S.USER_INACTIVE);[this,this.media].includes(e.target)&&r?E(this,Ht,sn).call(this):E(this,et,Ai).call(this)}else e.composedPath().some(r=>["media-play-button","media-fullscreen-button"].includes(r==null?void 0:r.localName))&&E(this,et,Ai).call(this)},Ht=new WeakSet,sn=function(){if(o(this,Je)<0||this.hasAttribute(S.USER_INACTIVE))return;this.setAttribute(S.USER_INACTIVE,"");let e=new u.CustomEvent(be.USER_INACTIVE_CHANGE,{composed:!0,bubbles:!0,detail:!0});this.dispatchEvent(e)},Mi=new WeakSet,Ks=function(){if(!this.hasAttribute(S.USER_INACTIVE))return;this.removeAttribute(S.USER_INACTIVE);let e=new u.CustomEvent(be.USER_INACTIVE_CHANGE,{composed:!0,bubbles:!0,detail:!1});this.dispatchEvent(e)},et=new WeakSet,Ai=function(){E(this,Mi,Ks).call(this),clearTimeout(o(this,Ot));let e=parseInt(this.autohide);e<0||h(this,Ot,setTimeout(()=>{E(this,Ht,sn).call(this)},e*1e3))};u.customElements.get("media-container")||u.customElements.define("media-container",Bt);var wa=Bt;var tt,it,ki,Ne,ve,Oe,Te=class{constructor(t,e,{defaultValue:r}={defaultValue:void 0}){m(this,ve);m(this,tt,void 0);m(this,it,void 0);m(this,ki,void 0);m(this,Ne,new Set);h(this,tt,t),h(this,it,e),h(this,ki,new Set(r))}[Symbol.iterator](){return o(this,ve,Oe).values()}get length(){return o(this,ve,Oe).size}get value(){var t;return(t=[...o(this,ve,Oe)].join(" "))!=null?t:""}set value(t){var e;t!==this.value&&(h(this,Ne,new Set),this.add(...(e=t==null?void 0:t.split(" "))!=null?e:[]))}toString(){return this.value}item(t){return[...o(this,ve,Oe)][t]}values(){return o(this,ve,Oe).values()}forEach(t,e){o(this,ve,Oe).forEach(t,e)}add(...t){var e,r;t.forEach(n=>o(this,Ne).add(n)),!(this.value===""&&!((e=o(this,tt))!=null&&e.hasAttribute(`${o(this,it)}`)))&&((r=o(this,tt))==null||r.setAttribute(`${o(this,it)}`,`${this.value}`))}remove(...t){var e;t.forEach(r=>o(this,Ne).delete(r)),(e=o(this,tt))==null||e.setAttribute(`${o(this,it)}`,`${this.value}`)}contains(t){return o(this,ve,Oe).has(t)}toggle(t,e){return typeof e!="undefined"?e?(this.add(t),!0):(this.remove(t),!1):this.contains(t)?(this.remove(t),!1):(this.add(t),!0)}replace(t,e){return this.remove(t),this.add(e),t===e}};tt=new WeakMap,it=new WeakMap,ki=new WeakMap,Ne=new WeakMap,ve=new WeakSet,Oe=function(){return o(this,Ne).size?o(this,Ne):o(this,ki)};var Yu=(i="")=>i.split(/\s+/),Pa=(i="")=>{let[t,e,r]=i.split(":"),n=r?decodeURIComponent(r):void 0;return{kind:t==="cc"?q.CAPTIONS:q.SUBTITLES,language:e,label:n}},rt=(i="",t={})=>Yu(i).map(e=>{let r=Pa(e);return{...t,...r}}),Gs=i=>i?Array.isArray(i)?i.map(t=>typeof t=="string"?Pa(t):t):typeof i=="string"?rt(i):[i]:[],dn=({kind:i,label:t,language:e}={kind:"subtitles"})=>t?`${i==="captions"?"cc":"sb"}:${e}:${encodeURIComponent(t)}`:e,Le=(i=[])=>Array.prototype.map.call(i,dn).join(" "),ju=(i,t)=>e=>e[i]===t,Ua=i=>{let t=Object.entries(i).map(([e,r])=>ju(e,r));return e=>t.every(r=>r(e))},nt=(i,t=[],e=[])=>{let r=Gs(e).map(Ua),n=s=>r.some(l=>l(s));Array.from(t).filter(n).forEach(s=>{s.mode=i})},st=(i,t=()=>!0)=>{if(!(i!=null&&i.textTracks))return[];let e=typeof t=="function"?t:Ua(t);return Array.from(i.textTracks).filter(e)},un=i=>{var e;return!!((e=i.mediaSubtitlesShowing)!=null&&e.length)||i.hasAttribute(a.MEDIA_SUBTITLES_SHOWING)};var Na=i=>{var n;let{media:t,fullscreenElement:e}=i,r=e&&"requestFullscreen"in e?"requestFullscreen":e&&"webkitRequestFullScreen"in e?"webkitRequestFullScreen":void 0;if(r){let s=(n=e[r])==null?void 0:n.call(e);if(s instanceof Promise)return s.catch(()=>{})}else t!=null&&t.webkitEnterFullscreen?t.webkitEnterFullscreen():t!=null&&t.requestFullscreen&&t.requestFullscreen()},Oa="exitFullscreen"in g?"exitFullscreen":"webkitExitFullscreen"in g?"webkitExitFullscreen":"webkitCancelFullScreen"in g?"webkitCancelFullScreen":void 0,Ha=i=>{var e;let{documentElement:t}=i;if(Oa){let r=(e=t==null?void 0:t[Oa])==null?void 0:e.call(t);if(r instanceof Promise)return r.catch(()=>{})}},Li="fullscreenElement"in g?"fullscreenElement":"webkitFullscreenElement"in g?"webkitFullscreenElement":void 0,Qu=i=>{let{documentElement:t,media:e}=i,r=t==null?void 0:t[Li];return!r&&"webkitDisplayingFullscreen"in e&&"webkitPresentationMode"in e&&e.webkitDisplayingFullscreen&&e.webkitPresentationMode===Hs.FULLSCREEN?e:r},Ba=i=>{var s;let{media:t,documentElement:e,fullscreenElement:r=t}=i;if(!t||!e)return!1;let n=Qu(i);if(!n)return!1;if(n===r||n===t)return!0;if(n.localName.includes("-")){let l=n.shadowRoot;if(!(Li in l))return W(n,r);for(;l!=null&&l[Li];){if(l[Li]===r)return!0;l=(s=l[Li])==null?void 0:s.shadowRoot}}return!1},zu="fullscreenEnabled"in g?"fullscreenEnabled":"webkitFullscreenEnabled"in g?"webkitFullscreenEnabled":void 0,Fa=i=>{let{documentElement:t,media:e}=i;return!!(t!=null&&t[zu])||e&&"webkitSupportsFullscreen"in e};var mn,qs=()=>{var i,t;return mn||(mn=(t=(i=g)==null?void 0:i.createElement)==null?void 0:t.call(i,"video"),mn)},$a=async(i=qs())=>{if(!i)return!1;let t=i.volume;i.volume=t/2+.1;let e=new AbortController,r=await Promise.race([Zu(i,e.signal),Xu(i,t)]);return e.abort(),r},Zu=(i,t)=>new Promise(e=>{i.addEventListener("volumechange",()=>e(!0),{signal:t})}),Xu=async(i,t)=>{for(let e=0;e<10;e++){if(i.volume===t)return!1;await jr(10)}return i.volume!==t},Ju=/.*Version\/.*Safari\/.*/.test(u.navigator.userAgent),Ws=(i=qs())=>u.matchMedia("(display-mode: standalone)").matches&&Ju?!1:typeof(i==null?void 0:i.requestPictureInPicture)=="function",Ys=(i=qs())=>Fa({documentElement:g,media:i}),Va=Ys(),Ka=Ws(),Ga=!!u.WebKitPlaybackTargetAvailabilityEvent,qa=!!u.chrome;var Ft=i=>st(i.media,t=>[q.SUBTITLES,q.CAPTIONS].includes(t.kind)).sort((t,e)=>t.kind>=e.kind?1:-1),js=i=>st(i.media,t=>t.mode===Se.SHOWING&&[q.SUBTITLES,q.CAPTIONS].includes(t.kind)),cn=(i,t)=>{let e=Ft(i),r=js(i),n=!!r.length;if(e.length){if(t===!1||n&&t!==!0)nt(Se.DISABLED,e,r);else if(t===!0||!n&&t!==!1){let s=e[0],{options:l}=i;if(!(l!=null&&l.noSubtitlesLangPref)){let A=globalThis.localStorage.getItem("media-chrome-pref-subtitles-lang"),I=A?[A,...globalThis.navigator.languages]:globalThis.navigator.languages,T=e.filter(v=>I.some(P=>v.language.toLowerCase().startsWith(P.split("-")[0]))).sort((v,P)=>{let C=I.findIndex(U=>v.language.toLowerCase().startsWith(U.split("-")[0])),w=I.findIndex(U=>P.language.toLowerCase().startsWith(U.split("-")[0]));return C-w});T[0]&&(s=T[0])}let{language:d,label:c,kind:p}=s;nt(Se.DISABLED,e,r),nt(Se.SHOWING,e,[{language:d,label:c,kind:p}])}}},hn=(i,t)=>i===t?!0:i==null||t==null||typeof i!=typeof t?!1:typeof i=="number"&&Number.isNaN(i)&&Number.isNaN(t)?!0:typeof i!="object"?!1:Array.isArray(i)?em(i,t):Object.entries(i).every(([e,r])=>e in t&&hn(r,t[e])),em=(i,t)=>{let e=Array.isArray(i),r=Array.isArray(t);return e!==r?!1:e||r?i.length!==t.length?!1:i.every((n,s)=>hn(n,t[s])):!0};var tm=Object.values(X),pn,im=$a().then(i=>(pn=i,pn)),Wa=async(...i)=>{await Promise.all(i.filter(t=>t).map(async t=>{if(!("localName"in t&&t instanceof u.HTMLElement))return;let e=t.localName;if(!e.includes("-"))return;let r=u.customElements.get(e);r&&t instanceof r||(await u.customElements.whenDefined(e),u.customElements.upgrade(t))}))},$t={mediaError:{get(i,t){let{media:e}=i;if((t==null?void 0:t.type)!=="playing")return e==null?void 0:e.error},mediaEvents:["emptied","error","playing"]},mediaErrorCode:{get(i,t){var r;let{media:e}=i;if((t==null?void 0:t.type)!=="playing")return(r=e==null?void 0:e.error)==null?void 0:r.code},mediaEvents:["emptied","error","playing"]},mediaErrorMessage:{get(i,t){var r,n;let{media:e}=i;if((t==null?void 0:t.type)!=="playing")return(n=(r=e==null?void 0:e.error)==null?void 0:r.message)!=null?n:""},mediaEvents:["emptied","error","playing"]},mediaWidth:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.videoWidth)!=null?e:0},mediaEvents:["resize"]},mediaHeight:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.videoHeight)!=null?e:0},mediaEvents:["resize"]},mediaPaused:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.paused)!=null?e:!0},set(i,t){var r;let{media:e}=t;e&&(i?e.pause():(r=e.play())==null||r.catch(()=>{}))},mediaEvents:["play","playing","pause","emptied"]},mediaHasPlayed:{get(i,t){let{media:e}=i;return e?t?t.type==="playing":!e.paused:!1},mediaEvents:["playing","emptied"]},mediaEnded:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.ended)!=null?e:!1},mediaEvents:["seeked","ended","emptied"]},mediaPlaybackRate:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.playbackRate)!=null?e:1},set(i,t){let{media:e}=t;e&&Number.isFinite(+i)&&(e.playbackRate=+i)},mediaEvents:["ratechange","loadstart"]},mediaMuted:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.muted)!=null?e:!1},set(i,t){let{media:e}=t;if(e){try{u.localStorage.setItem("media-chrome-pref-muted",i?"true":"false")}catch(r){console.debug("Error setting muted pref",r)}e.muted=i}},mediaEvents:["volumechange"],stateOwnersUpdateHandlers:[(i,t)=>{let{options:{noMutedPref:e}}=t,{media:r}=t;if(!(!r||r.muted||e))try{let n=u.localStorage.getItem("media-chrome-pref-muted")==="true";$t.mediaMuted.set(n,t),i(n)}catch(n){console.debug("Error getting muted pref",n)}}]},mediaVolume:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.volume)!=null?e:1},set(i,t){let{media:e}=t;if(e){try{i==null?u.localStorage.removeItem("media-chrome-pref-volume"):u.localStorage.setItem("media-chrome-pref-volume",i.toString())}catch(r){console.debug("Error setting volume pref",r)}Number.isFinite(+i)&&(e.volume=+i)}},mediaEvents:["volumechange"],stateOwnersUpdateHandlers:[(i,t)=>{let{options:{noVolumePref:e}}=t;if(!e)try{let{media:r}=t;if(!r)return;let n=u.localStorage.getItem("media-chrome-pref-volume");if(n==null)return;$t.mediaVolume.set(+n,t),i(+n)}catch(r){console.debug("Error getting volume pref",r)}}]},mediaVolumeLevel:{get(i){let{media:t}=i;return typeof(t==null?void 0:t.volume)=="undefined"?"high":t.muted||t.volume===0?"off":t.volume<.5?"low":t.volume<.75?"medium":"high"},mediaEvents:["volumechange"]},mediaCurrentTime:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.currentTime)!=null?e:0},set(i,t){let{media:e}=t;!e||!Ut(i)||(e.currentTime=i)},mediaEvents:["timeupdate","loadedmetadata"]},mediaDuration:{get(i){let{media:t,options:{defaultDuration:e}={}}=i;return e&&(!t||!t.duration||Number.isNaN(t.duration)||!Number.isFinite(t.duration))?e:Number.isFinite(t==null?void 0:t.duration)?t.duration:Number.NaN},mediaEvents:["durationchange","loadedmetadata","emptied"]},mediaLoading:{get(i){let{media:t}=i;return(t==null?void 0:t.readyState)<3},mediaEvents:["waiting","playing","emptied"]},mediaSeekable:{get(i){var n;let{media:t}=i;if(!((n=t==null?void 0:t.seekable)!=null&&n.length))return;let e=t.seekable.start(0),r=t.seekable.end(t.seekable.length-1);if(!(!e&&!r))return[Number(e.toFixed(3)),Number(r.toFixed(3))]},mediaEvents:["loadedmetadata","emptied","progress","seekablechange"]},mediaBuffered:{get(i){var r;let{media:t}=i,e=(r=t==null?void 0:t.buffered)!=null?r:[];return Array.from(e).map((n,s)=>[Number(e.start(s).toFixed(3)),Number(e.end(s).toFixed(3))])},mediaEvents:["progress","emptied"]},mediaStreamType:{get(i){let{media:t,options:{defaultStreamType:e}={}}=i,r=[X.LIVE,X.ON_DEMAND].includes(e)?e:void 0;if(!t)return r;let{streamType:n}=t;if(tm.includes(n))return n===X.UNKNOWN?r:n;let s=t.duration;return s===1/0?X.LIVE:Number.isFinite(s)?X.ON_DEMAND:r},mediaEvents:["emptied","durationchange","loadedmetadata","streamtypechange"]},mediaTargetLiveWindow:{get(i){let{media:t}=i;if(!t)return Number.NaN;let{targetLiveWindow:e}=t,r=$t.mediaStreamType.get(i);return(e==null||Number.isNaN(e))&&r===X.LIVE?0:e},mediaEvents:["emptied","durationchange","loadedmetadata","streamtypechange","targetlivewindowchange"]},mediaTimeIsLive:{get(i){let{media:t,options:{liveEdgeOffset:e=10}={}}=i;if(!t)return!1;if(typeof t.liveEdgeStart=="number")return Number.isNaN(t.liveEdgeStart)?!1:t.currentTime>=t.liveEdgeStart;if(!($t.mediaStreamType.get(i)===X.LIVE))return!1;let n=t.seekable;if(!n)return!0;if(!n.length)return!1;let s=n.end(n.length-1)-e;return t.currentTime>=s},mediaEvents:["playing","timeupdate","progress","waiting","emptied"]},mediaSubtitlesList:{get(i){return Ft(i).map(({kind:t,label:e,language:r})=>({kind:t,label:e,language:r}))},mediaEvents:["loadstart"],textTracksEvents:["addtrack","removetrack"]},mediaSubtitlesShowing:{get(i){return js(i).map(({kind:t,label:e,language:r})=>({kind:t,label:e,language:r}))},mediaEvents:["loadstart"],textTracksEvents:["addtrack","removetrack","change"],stateOwnersUpdateHandlers:[(i,t)=>{var s,l;let{media:e,options:r}=t;if(!e)return;let n=d=>{var p;!r.defaultSubtitles||d&&![q.CAPTIONS,q.SUBTITLES].includes((p=d==null?void 0:d.track)==null?void 0:p.kind)||cn(t,!0)};return e.addEventListener("loadstart",n),(s=e.textTracks)==null||s.addEventListener("addtrack",n),(l=e.textTracks)==null||l.addEventListener("removetrack",n),()=>{var d,c;e.removeEventListener("loadstart",n),(d=e.textTracks)==null||d.removeEventListener("addtrack",n),(c=e.textTracks)==null||c.removeEventListener("removetrack",n)}}]},mediaChaptersCues:{get(i){var r;let{media:t}=i;if(!t)return[];let[e]=st(t,{kind:q.CHAPTERS});return Array.from((r=e==null?void 0:e.cues)!=null?r:[]).map(({text:n,startTime:s,endTime:l})=>({text:n,startTime:s,endTime:l}))},mediaEvents:["loadstart","loadedmetadata"],textTracksEvents:["addtrack","removetrack","change"],stateOwnersUpdateHandlers:[(i,t)=>{var s;let{media:e}=t;if(!e)return;let r=e.querySelector('track[kind="chapters"][default][src]'),n=(s=e.shadowRoot)==null?void 0:s.querySelector(':is(video,audio) > track[kind="chapters"][default][src]');return r==null||r.addEventListener("load",i),n==null||n.addEventListener("load",i),()=>{r==null||r.removeEventListener("load",i),n==null||n.removeEventListener("load",i)}}]},mediaIsPip:{get(i){var r,n;let{media:t,documentElement:e}=i;if(!t||!e||!e.pictureInPictureElement)return!1;if(e.pictureInPictureElement===t)return!0;if(e.pictureInPictureElement instanceof HTMLMediaElement)return(r=t.localName)!=null&&r.includes("-")?W(t,e.pictureInPictureElement):!1;if(e.pictureInPictureElement.localName.includes("-")){let s=e.pictureInPictureElement.shadowRoot;for(;s!=null&&s.pictureInPictureElement;){if(s.pictureInPictureElement===t)return!0;s=(n=s.pictureInPictureElement)==null?void 0:n.shadowRoot}}return!1},set(i,t){let{media:e}=t;if(e)if(i){if(!g.pictureInPictureEnabled){console.warn("MediaChrome: Picture-in-picture is not enabled");return}if(!e.requestPictureInPicture){console.warn("MediaChrome: The current media does not support picture-in-picture");return}let r=()=>{console.warn("MediaChrome: The media is not ready for picture-in-picture. It must have a readyState > 0.")};e.requestPictureInPicture().catch(n=>{if(n.code===11){if(!e.src){console.warn("MediaChrome: The media is not ready for picture-in-picture. It must have a src set.");return}if(e.readyState===0&&e.preload==="none"){let s=()=>{e.removeEventListener("loadedmetadata",l),e.preload="none"},l=()=>{e.requestPictureInPicture().catch(r),s()};e.addEventListener("loadedmetadata",l),e.preload="metadata",setTimeout(()=>{e.readyState===0&&r(),s()},1e3)}else throw n}else throw n})}else g.pictureInPictureElement&&g.exitPictureInPicture()},mediaEvents:["enterpictureinpicture","leavepictureinpicture"]},mediaRenditionList:{get(i){var e;let{media:t}=i;return[...(e=t==null?void 0:t.videoRenditions)!=null?e:[]].map(r=>({...r}))},mediaEvents:["emptied","loadstart"],videoRenditionsEvents:["addrendition","removerendition"]},mediaRenditionSelected:{get(i){var e,r,n;let{media:t}=i;return(n=(r=t==null?void 0:t.videoRenditions)==null?void 0:r[(e=t.videoRenditions)==null?void 0:e.selectedIndex])==null?void 0:n.id},set(i,t){let{media:e}=t;if(!(e!=null&&e.videoRenditions)){console.warn("MediaController: Rendition selection not supported by this media.");return}let r=i,n=Array.prototype.findIndex.call(e.videoRenditions,s=>s.id==r);e.videoRenditions.selectedIndex!=n&&(e.videoRenditions.selectedIndex=n)},mediaEvents:["emptied"],videoRenditionsEvents:["addrendition","removerendition","change"]},mediaAudioTrackList:{get(i){var e;let{media:t}=i;return[...(e=t==null?void 0:t.audioTracks)!=null?e:[]]},mediaEvents:["emptied","loadstart"],audioTracksEvents:["addtrack","removetrack"]},mediaAudioTrackEnabled:{get(i){var e,r;let{media:t}=i;return(r=[...(e=t==null?void 0:t.audioTracks)!=null?e:[]].find(n=>n.enabled))==null?void 0:r.id},set(i,t){let{media:e}=t;if(!(e!=null&&e.audioTracks)){console.warn("MediaChrome: Audio track selection not supported by this media.");return}let r=i;for(let n of e.audioTracks)n.enabled=r==n.id},mediaEvents:["emptied"],audioTracksEvents:["addtrack","removetrack","change"]},mediaIsFullscreen:{get(i){return Ba(i)},set(i,t){i?Na(t):Ha(t)},rootEvents:["fullscreenchange","webkitfullscreenchange"],mediaEvents:["webkitbeginfullscreen","webkitendfullscreen","webkitpresentationmodechanged"]},mediaIsCasting:{get(i){var e;let{media:t}=i;return!(t!=null&&t.remote)||((e=t.remote)==null?void 0:e.state)==="disconnected"?!1:!!t.remote.state},set(i,t){var r,n;let{media:e}=t;if(e&&!(i&&((r=e.remote)==null?void 0:r.state)!=="disconnected")&&!(!i&&((n=e.remote)==null?void 0:n.state)!=="connected")){if(typeof e.remote.prompt!="function"){console.warn("MediaChrome: Casting is not supported in this environment");return}e.remote.prompt().catch(()=>{})}},remoteEvents:["connect","connecting","disconnect"]},mediaIsAirplaying:{get(){return!1},set(i,t){let{media:e}=t;if(e){if(!(e.webkitShowPlaybackTargetPicker&&u.WebKitPlaybackTargetAvailabilityEvent)){console.warn("MediaChrome: received a request to select AirPlay but AirPlay is not supported in this environment");return}e.webkitShowPlaybackTargetPicker()}},mediaEvents:["webkitcurrentplaybacktargetiswirelesschanged"]},mediaFullscreenUnavailable:{get(i){let{media:t}=i;if(!Va||!Ys(t))return Q.UNSUPPORTED}},mediaPipUnavailable:{get(i){let{media:t}=i;if(!Ka||!Ws(t))return Q.UNSUPPORTED}},mediaVolumeUnavailable:{get(i){let{media:t}=i;if(pn===!1||(t==null?void 0:t.volume)==null)return Q.UNSUPPORTED},stateOwnersUpdateHandlers:[i=>{pn==null&&im.then(t=>i(t?void 0:Q.UNSUPPORTED))}]},mediaCastUnavailable:{get(i,{availability:t="not-available"}={}){var r;let{media:e}=i;if(!qa||!((r=e==null?void 0:e.remote)!=null&&r.state))return Q.UNSUPPORTED;if(!(t==null||t==="available"))return Q.UNAVAILABLE},stateOwnersUpdateHandlers:[(i,t)=>{var n;let{media:e}=t;return e?(e.disableRemotePlayback||e.hasAttribute("disableremoteplayback")||(n=e==null?void 0:e.remote)==null||n.watchAvailability(s=>{i({availability:s?"available":"not-available"})}).catch(s=>{s.name==="NotSupportedError"?i({availability:null}):i({availability:"not-available"})}),()=>{var s;(s=e==null?void 0:e.remote)==null||s.cancelWatchAvailability().catch(()=>{})}):void 0}]},mediaAirplayUnavailable:{get(i,t){if(!Ga)return Q.UNSUPPORTED;if((t==null?void 0:t.availability)==="not-available")return Q.UNAVAILABLE},mediaEvents:["webkitplaybacktargetavailabilitychanged"],stateOwnersUpdateHandlers:[(i,t)=>{var n;let{media:e}=t;return e?(e.disableRemotePlayback||e.hasAttribute("disableremoteplayback")||(n=e==null?void 0:e.remote)==null||n.watchAvailability(s=>{i({availability:s?"available":"not-available"})}).catch(s=>{s.name==="NotSupportedError"?i({availability:null}):i({availability:"not-available"})}),()=>{var s;(s=e==null?void 0:e.remote)==null||s.cancelWatchAvailability().catch(()=>{})}):void 0}]},mediaRenditionUnavailable:{get(i){var e;let{media:t}=i;if(!(t!=null&&t.videoRenditions))return Q.UNSUPPORTED;if(!((e=t.videoRenditions)!=null&&e.length))return Q.UNAVAILABLE},mediaEvents:["emptied","loadstart"],videoRenditionsEvents:["addrendition","removerendition"]},mediaAudioTrackUnavailable:{get(i){var e,r;let{media:t}=i;if(!(t!=null&&t.audioTracks))return Q.UNSUPPORTED;if(((r=(e=t.audioTracks)==null?void 0:e.length)!=null?r:0)<=1)return Q.UNAVAILABLE},mediaEvents:["emptied","loadstart"],audioTracksEvents:["addtrack","removetrack"]}};var Ya={[b.MEDIA_PREVIEW_REQUEST](i,t,{detail:e}){var A,I,T;let{media:r}=t,n=e!=null?e:void 0,s,l;if(r&&n!=null){let[v]=st(r,{kind:q.METADATA,label:"thumbnails"}),P=Array.prototype.find.call((A=v==null?void 0:v.cues)!=null?A:[],(C,w,U)=>w===0?C.endTime>n:w===U.length-1?C.startTime<=n:C.startTime<=n&&C.endTime>n);if(P){let C=/'^(?:[a-z]+:)?\/\//i.test(P.text)||(I=r==null?void 0:r.querySelector('track[label="thumbnails"]'))==null?void 0:I.src,w=new URL(P.text,C);l=new URLSearchParams(w.hash).get("#xywh").split(",").map(G=>+G),s=w.href}}let d=i.mediaDuration.get(t),p=(T=i.mediaChaptersCues.get(t).find((v,P,C)=>P===C.length-1&&d===v.endTime?v.startTime<=n&&v.endTime>=n:v.startTime<=n&&v.endTime>n))==null?void 0:T.text;return e!=null&&p==null&&(p=""),{mediaPreviewTime:n,mediaPreviewImage:s,mediaPreviewCoords:l,mediaPreviewChapter:p}},[b.MEDIA_PAUSE_REQUEST](i,t){i["mediaPaused"].set(!0,t)},[b.MEDIA_PLAY_REQUEST](i,t){var d,c,p,A;let e="mediaPaused",n=i.mediaStreamType.get(t)===X.LIVE,s=!((d=t.options)!=null&&d.noAutoSeekToLive),l=i.mediaTargetLiveWindow.get(t)>0;if(n&&s&&!l){let I=(c=i.mediaSeekable.get(t))==null?void 0:c[1];if(I){let T=(A=(p=t.options)==null?void 0:p.seekToLiveOffset)!=null?A:0,v=I-T;i.mediaCurrentTime.set(v,t)}}i[e].set(!1,t)},[b.MEDIA_PLAYBACK_RATE_REQUEST](i,t,{detail:e}){let r="mediaPlaybackRate",n=e;i[r].set(n,t)},[b.MEDIA_MUTE_REQUEST](i,t){i["mediaMuted"].set(!0,t)},[b.MEDIA_UNMUTE_REQUEST](i,t){let e="mediaMuted";i.mediaVolume.get(t)||i.mediaVolume.set(.25,t),i[e].set(!1,t)},[b.MEDIA_VOLUME_REQUEST](i,t,{detail:e}){let r="mediaVolume",n=e;n&&i.mediaMuted.get(t)&&i.mediaMuted.set(!1,t),i[r].set(n,t)},[b.MEDIA_SEEK_REQUEST](i,t,{detail:e}){let r="mediaCurrentTime",n=e;i[r].set(n,t)},[b.MEDIA_SEEK_TO_LIVE_REQUEST](i,t){var l,d,c;let e="mediaCurrentTime",r=(l=i.mediaSeekable.get(t))==null?void 0:l[1];if(Number.isNaN(Number(r)))return;let n=(c=(d=t.options)==null?void 0:d.seekToLiveOffset)!=null?c:0,s=r-n;i[e].set(s,t)},[b.MEDIA_SHOW_SUBTITLES_REQUEST](i,t,{detail:e}){var d;let{options:r}=t,n=Ft(t),s=Gs(e),l=(d=s[0])==null?void 0:d.language;l&&!r.noSubtitlesLangPref&&u.localStorage.setItem("media-chrome-pref-subtitles-lang",l),nt(Se.SHOWING,n,s)},[b.MEDIA_DISABLE_SUBTITLES_REQUEST](i,t,{detail:e}){let r=Ft(t),n=e!=null?e:[];nt(Se.DISABLED,r,n)},[b.MEDIA_TOGGLE_SUBTITLES_REQUEST](i,t,{detail:e}){cn(t,e)},[b.MEDIA_RENDITION_REQUEST](i,t,{detail:e}){let r="mediaRenditionSelected",n=e;i[r].set(n,t)},[b.MEDIA_AUDIO_TRA