@flowplayer/player 3.28.0-rc → 3.28.0-rc.1

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.
Files changed (56) hide show
  1. package/core/events.d.ts +13 -0
  2. package/core/events.js +7 -1
  3. package/core.js +1 -1
  4. package/default.js +1 -1
  5. package/embed.js +2 -2
  6. package/flowplayer.css +1 -1
  7. package/index.d.ts +304 -8
  8. package/package.json +1 -1
  9. package/plugins/ads.d.ts +304 -17
  10. package/plugins/ads.js +1 -1
  11. package/plugins/airplay.d.ts +304 -17
  12. package/plugins/analytics.d.ts +304 -17
  13. package/plugins/analytics.js +1 -1
  14. package/plugins/asel.d.ts +304 -17
  15. package/plugins/audio.d.ts +304 -17
  16. package/plugins/chapters.d.ts +304 -17
  17. package/plugins/chromecast.d.ts +304 -17
  18. package/plugins/comscore.d.ts +304 -17
  19. package/plugins/consent.d.ts +304 -17
  20. package/plugins/context-menu.d.ts +304 -17
  21. package/plugins/cuepoints.d.ts +304 -17
  22. package/plugins/dash.d.ts +304 -17
  23. package/plugins/dash.js +3 -3
  24. package/plugins/drm.d.ts +304 -17
  25. package/plugins/endscreen.d.ts +304 -17
  26. package/plugins/fas.d.ts +304 -17
  27. package/plugins/float-on-scroll.d.ts +304 -17
  28. package/plugins/ga4.d.ts +304 -17
  29. package/plugins/gemius.d.ts +304 -17
  30. package/plugins/google-analytics.d.ts +304 -17
  31. package/plugins/hls.d.ts +304 -17
  32. package/plugins/hls.js +1 -1
  33. package/plugins/id3.d.ts +304 -17
  34. package/plugins/iframe.d.ts +304 -17
  35. package/plugins/keyboard.d.ts +304 -17
  36. package/plugins/media-session.d.ts +304 -17
  37. package/plugins/message.d.ts +304 -17
  38. package/plugins/ovp.d.ts +304 -17
  39. package/plugins/ovp.js +1 -1
  40. package/plugins/playlist.d.ts +304 -17
  41. package/plugins/preview.d.ts +304 -17
  42. package/plugins/qsel.d.ts +304 -17
  43. package/plugins/qul.d.ts +304 -17
  44. package/plugins/qul.js +1 -1
  45. package/plugins/rts.d.ts +304 -17
  46. package/plugins/rts.js +7 -7
  47. package/plugins/share.d.ts +304 -17
  48. package/plugins/speed.d.ts +304 -17
  49. package/plugins/ssai.d.ts +304 -17
  50. package/plugins/ssai.js +2 -2
  51. package/plugins/subtitles.d.ts +304 -17
  52. package/plugins/thumbnails.d.ts +304 -17
  53. package/plugins/tizen.d.ts +304 -17
  54. package/plugins/vtsel.d.ts +304 -17
  55. package/plugins/webos.d.ts +304 -17
  56. package/util/loader.d.ts +304 -17
package/default.js CHANGED
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).flowplayer=t()}(this,(function(){"use strict";const e=[],t=[];function n(){const e="undefined"!=typeof document&&"undefined"!=typeof window,t=e?navigator.userAgent:"",n=/iP(hone|od)/i.test(t)&&!/iPad/.test(t)&&!/IEMobile/i.test(t),r=/Android/.test(t)&&!/Firefox/.test(t),o=/^((?!chrome|android).)*safari/i.test(t),i=/chrome|crios/i.test(t)&&!/opr|opera|chromium|edg|ucbrowser|googlebot/i.test(t),s=/firefox|fxios/i.test(t)&&!/seamonkey/i.test(t),a=/edg/i.test(t),l=/opr|opera/i.test(t),c=/SamsungBrowser/.test(t),u=c&&/SMART-TV/.test(t);return{controls:!n,video:function(t){return e&&document.createElement("video").canPlayType(t)},lang:e&&window.navigator.language,android:r,iphone:n,safari:o,edge:a,opera:l,chrome:i,firefox:s,ios:e&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream,samsung:c,samsung_tv:c&&u,touch:"ontouchstart"in window,tizen:"tizen"in window,webOS:"webos"in window}}const r="retry",o="click",i="dblclick",s="mouseenter",a="mouseleave",l="mousemove",c="touchmove",u="fullscreenenter",d="fullscreenexit",p="loadedmetadata",f="loadeddata",h="progress",m="loadstart",y="pause",_="playing",g="waiting",v="canplay",E="ended",w="seeked",S="seeking",T="reap",b="landscape",O="portrait",N="recover",A="config",I="content:loadstart";var R=Object.freeze({__proto__:null,MOUNT:"mount",RETRY:r,ERROR:"error",CONTEXT_MENU:"contextmenu",CLICK:o,DBL_CLICK:i,KEYUP:"keyup",KEYDOWN:"keydown",LOAD:"load",MOUSE_ENTER:s,MOUSE_LEAVE:a,MOUSE_UP:"mouseup",MOUSE_DOWN:"mousedown",MOUSE_MOVE:l,TOUCH_START:"touchstart",TOUCH_MOVE:c,TOUCH_END:"touchend",TOUCH_CANCEL:"touchcancel",RESIZE:"resize",SCROLL:"scroll",FULLSCREEN_ENTER:u,FULLSCREEN_EXIT:d,FULLSCREEN_CHANGE:"fullscreenchange",METADATA:p,DATA:f,PROGRESS:h,TIME_UPDATE:"timeupdate",LOAD_START:m,VOLUME_CHANGE:"volumechange",PAUSE:y,PLAYING:_,PLAY:"play",WAITING:g,CAN_PLAY:v,ENDED:E,SEEKED:w,SEEKING:S,DURATION_CHANGE:"durationchange",VIEW_ENTER:"viewenter",VIEW_LEAVE:"viewleave",SOURCE:"src",REAP:T,QUALITIES:"qualities",QUALITY_CHANGE:"qualitychange",VIDEO_TRACKS:"videoTracks",SET_QUALITY:"quality:set",VIDEO_TRACK_SELECT:"tracks:video:select",RECOMMENDATIONS_READY:"recommendationsready",LANDSCAPE:b,PORTRAIT:O,DVR:"dvr",LIVE:"live",RECOVER:N,SEEK_QUEUED:"seek:queued",SEEK_CANCEL:"seek:cancel",PLUGIN_REGISTERED:"plugin:registered",REMOTE_SESSION_STARTED:"remotesession:started",REMOTE_SESSION_ENDED:"remotesession:ended",INTERSECTIONCHANGE:"intersectionchange",WEBKIT_NEEDKEY:"webkitneedkey",RENDER_PLUGIN:"renderplugin",AUDIO_ONLY_SOURCE:"audioonlysource",NON_RECOVERABLE_ERROR:"error:fatal",CONFIG:A,STATE:"state",BEFORE_PLAY:"beforeplay",BEFORE_PAUSE:"beforepause",CONTENT_REAL_LOAD_START:I,CUEPOINTS:"cuepoints",CUEPOINT_START:"cuepointstart",CUEPOINT_END:"cuepointend"});const L="flowplayer-ui",k="flowplayer-logo",C="flowplayer-control",D="flowplayer-live-status",U="flowplayer-elapsed-time",M="flowplayer-timeline-bar",x="flowplayer-volume-bar",F="flowplayer-header",P="flowplayer-middle",W="flowplayer-middle-zone",q="flowplayer-wait",G="flowplayer-play-icon",H="flowplayer-pause-icon",B="flowplayer-rewind-icon",j="flowplayer-volume-icon";var z=Object.freeze({__proto__:null,SUBTITLES_MENU:"flowplayer-subtitles-menu",SHARE_MENU:"flowplayer-share-menu",SPEED_MENU:"flowplayer-speed-menu",QUALITY_MENU:"flowplayer-quality-menu",AUDIO_MENU:"flowplayer-audio-menu",VIDEO_MENU:"flowplayer-video-menu",UI:L,LOGO:k,CONTROL:C,CONTROL_BUTTONS:"flowplayer-control-buttons",LIVE_STATUS:D,ELAPSED:U,TIMELINE:M,CHAPTERS_TIMELINE:"flowplayer-chapters-timeline-bar",CONTROL_DURATION:"flowplayer-control-duration",VOLUME_CONTROL:"flowplayer-volume-control",VOLUME_BAR:x,HEADER:F,HEADER_LEFT_ZONE:"flowplayer-header-left-zone",HEADER_RIGHT_ZONE:"flowplayer-header-right-zone",HEADER_DURATION:"flowplayer-header-duration",MIDDLE:P,MIDDLE_ZONE:W,WAIT:q,MIDDLE_BUTTONS:"flowplayer-middle-buttons",MIDDLE_LEFT_ZONE:"flowplayer-middle-left-zone",MIDDLE_RIGHT_ZONE:"flowplayer-middle-right-zone",ENDSCREEN_INTERSTITIAL:"flowplayer-endscreen-interstitial",ENDSCREEN_UP_NEXT:"flowplayer-endscreen-up-next",ENDSCREEN_GRID:"flowplayer-endscreen-grid",PLAYLIST_INTERSTITIAL:"flowplayer-playlist-interstitial",AIRPLAY_ICON:"flowplayer-airplay-icon",CHROMECAST_ICON:"flowplayer-chromecast-icon",SMALL_PLAY_ICON:"flowplayer-small-play-icon",SMALL_PAUSE_ICON:"flowplayer-small-pause-icon",PLAY_ICON:G,PAUSE_ICON:H,FULLSCREEN_ENTER_ICON:"flowplayer-fullscreen-enter-icon",FULLSCREEN_EXIT_ICON:"flowplayer-fullscreen-exit-icon",SKIP_NEXT_ICON:"flowplayer-skip-next-icon",SKIP_PREVIOUS_ICON:"flowplayer-skip-previous-icon",FAST_FORWARD_ICON:"flowplayer-fast-forward-icon",REWIND_ICON:B,SHARE_ICON:"flowplayer-share-icon",SUBTITLES_MENU_ICON:"flowplayer-subs-menu-icon",MENU_BACK_ICON:"flowplayer-menu-back",VOLUME_ICON:j,MUTE_ICON:"flowplayer-mute-icon",UNMUTE_ICON:"flowplayer-unmute-icon",CLOSE_ICON:"flowplayer-close-icon",FACEBOOK_ICON:"flowplayer-facebook-icon",TWITTER_ICON:"flowplayer-twitter-icon",LINK_ICON:"flowplayer-link-icon",EMBED_ICON:"flowplayer-embed-icon",LIVE_COUNTDOWN:"flowplayer-live-countdown",PLAYLIST_CONTROLS:"flowplayer-playlist-controls",THUMBNAILS_CAROUSEL:"flowplayer-thumbnails-carousel",ERROR_COMPONENT:"flowplayer-error",TV_MENU:"flowplayer-tv-menu",CUE_COMPONENT:"flowplayer-cue",SSAI_UI:"flowplayer-ssai-ui",SSAI_CONTROLS:"flowplayer-ssai-controls",SSAI_TIMELINE:"flowplayer-ssai-timeline",SSAI_INDICATOR:"flowplayer-ssai-indicator"});const V="is-playing",Q="is-paused",K="is-loaded",Y="is-loading",X="is-starting",$="is-seeking",Z="is-ended",J="is-live",ee="is-waiting",te="is-live-seeked",ne="no-timeline",re="will-play",oe="will-pause",ie="is-touched",se="is-in-viewport",ae="is-source-processing";var le=Object.freeze({__proto__:null,PLAYING:V,FULLSCREEN:"is-fullscreen",PAUSED:Q,MUTED:"is-muted",LOADED:K,LOADING:Y,STARTING:X,SEEKING:$,GRABBING:"is-grabbing",DISABLED:"is-disabled",SMALL:"is-small",TINY:"is-tiny",RTL:"is-rtl",TV:"is-tv",ENDED:Z,LIVE:J,ERRORED:"is-error",WAITING:ee,AUTOPLAY:"is-autoplay",SEAMLESS:"is-seamless",TOGGLING:"is-toggling",LIVE_SEEKED:te,NO_DVR:ne,HAS_POSTER:"has-poster",WILL_PLAY:re,WILL_PAUSE:oe,MENU_OPENED:"has-menu-opened",TOUCHED:ie,HOVERED:"is-hovered",TOUCH_DEVICE:"is-touch-device",WILL_SEEK:"will-seek",SEEKABLE:"is-seekable",IN_VIEWPORT:se,NO_CONTROLS:"no-controls",DESTROYED:"is-destroyed",IS_SOURCE_PROCESSING:ae});function ce(e){this.message=e}ce.prototype=new Error,ce.prototype.name="InvalidCharacterError";var ue="undefined"!=typeof window&&window.atob&&window.atob.bind(window)||function(e){var t=String(e).replace(/=+$/,"");if(t.length%4==1)throw new ce("'atob' failed: The string to be decoded is not correctly encoded.");for(var n,r,o=0,i=0,s="";r=t.charAt(i++);~r&&(n=o%4?64*n+r:r,o++%4)?s+=String.fromCharCode(255&n>>(-2*o&6)):0)r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(r);return s};var de=function(e){var t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:t+="==";break;case 3:t+="=";break;default:throw"Illegal base64url string!"}try{return function(e){return decodeURIComponent(ue(e).replace(/(.)/g,(function(e,t){var n=t.charCodeAt(0).toString(16).toUpperCase();return n.length<2&&(n="0"+n),"%"+n})))}(t)}catch(e){return ue(t)}};function pe(e){this.message=e}pe.prototype=new Error,pe.prototype.name="InvalidTokenError";var fe=function(e,t){if("string"!=typeof e)throw new pe("Invalid token specified");var n=!0===(t=t||{}).header?0:1;try{return JSON.parse(de(e.split(".")[n]))}catch(e){throw new pe("Invalid token specified: "+e.message)}};fe.InvalidTokenError=pe;const he=new Map,me=(e,t)=>new(((e,t)=>{const n=e.get(t);if(!n)throw new Error(`no flowplayer component with the name ${t} exists`);const r=window.customElements.get(t);if(!r)throw new Error(`no default flowplayer component with the name ${t} exists`);const o=window.customElements.get(n);return"function"!=typeof o?r:o})(e._customElements,t))(e),ye=(e,t,n)=>{window.customElements.get(t)||window.customElements.define(t,n),e.customElements.get(t)||e.customElements.set(t,t)};var _e,ge;!function(e){e[e.LOW=1]="LOW",e[e.MEDIUM=2]="MEDIUM",e[e.HIGH=4]="HIGH"}(_e||(_e={})),function(e){e[e.OFF=0]="OFF",e[e.ON=1]="ON",e[e.AUDIO_REQUIRED=2]="AUDIO_REQUIRED"}(ge||(ge={}));const ve=e=>{return e.autoplay&&ge.AUDIO_REQUIRED&(!0===(t=e.autoplay)?ge.ON:!1===t?ge.OFF:t);var t};function Ee(e,t,n){const r="boolean"==typeof n;if("boolean"!=typeof n&&(n=!!e.hasState(oe)||e.paused),function(e,t,n){const r=e.poll(t?"beforeplay":"beforepause",{forced:n});return r&&r.defaultPrevented}(e,n,r))return Promise.resolve();if(!n)return e.hasState(re)?(e.setState(oe,!0),e.setState(re,!1),Promise.resolve()):Promise.resolve(e.pause());if(0==e.reaper)return Promise.resolve();const o=e.reaper.get("__pending_play");return e.paused||o?o?(o.src!==Se(e.original_src)&&we(e),o):(function(e){return(0==e.networkState||0==e.readyState)&&e.currentSrc==Se(e.original_src)}(e)&&we(e),function(e){const t=e.hasState("is-autoplay"),n=t&&ve(e.opts);n&&(e.muted&&e.toggleMute(!1),0==e.volume&&(e.volume=1));t&&e.setState("is-autoplay",!1);return e.play().then(()=>{e.hasState(oe)&&e.togglePlay(!1)}).catch(r=>{if(console.warn(t?n?"[flowplayer/play] autoplay audio required\n%s":"[flowplayer/play] attempting muted autoplay\n%s":"",r.message,"\ninstance:",e),t&&!n)return e.muted=!0,e.play()})}(e)):(e.setState(oe,!1),!e.hasState(V)&&e.setState(re,!0),Promise.resolve())}function we(e){e.opts.is_native&&(e.hasState(K)||(e.hasState(Y)||e.emit(I),e.setState(Y,!0),e.load()))}function Se(e){const t=document.createElement("a");return t.href=e,t.href}function Te(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]])}return n}function be(e){const t=document.createElement("a");t.href=e;const n=t.pathname&&t.pathname.split(".");return n.length>1&&n[n.length-1]}function Oe(e){switch(e){case"video/mpd":return"application/dash+xml";case"video/m3u8":return"application/x-mpegurl";default:return e}}const Ne=e=>{var{src:t}=e,n=Te(e,["src"]);return[Object.assign({src:t,type:t?Oe("video/"+be(t)):""},n)]};function Ae(e){return Ne({src:e})}function Ie(e){var{src:t,type:n}=e,r=Te(e,["src","type"]);return t&&n?[Object.assign({src:t,type:n},r)]:n&&!t?[Object.assign({type:n},r)]:Ne(Object.assign({src:t},r))}var Re;function Le(e,t,n,r={safari:!1}){const o=function(e){return"string"==typeof e?Ae(e):Array.isArray(e)||"object"!=typeof e?e.reduce((function(e,t){return"string"==typeof t&&(t=Ae(t)),"object"!=typeof t||Array.isArray(t)||(t=Ie(t)),e.concat(t)}),[]):Ie(e)}(n);return function(e){[$,oe,re,V,Q,Y,K,te].forEach(t=>e.setState(t,!1)),e.setState(X,!0)}(e),Array(...Array(o.length)).map((e,t)=>t).some(n=>{const i=o[n];if(Re.Ok==function(e,t,n){e.emit("src",n),t.playback_token&&"string"==typeof n.src&&n.src.startsWith("https://")&&(n.src=function(e,t){const n=new URL(e);return n.pathname=`/pt:${t}${n.pathname}`,n.toString()}(n.src,t.playback_token));"string"==typeof n.src&&(e.original_src=n.src);const r=function(e,t,n){return e.plugins.filter(e=>{return(t=e)&&"wants"in t;var t}).find(e=>e.wants(n.src||"",n,t))}(e,t,n);return e.setOpts({is_native:!r}),r?(r.onload(t,e.root,e,n),Re.Ok):Re.Err}(e,t,i)||Re.Ok==function(e,t,n,r={safari:!1}){var o;/^audio\//.test(n.type||"")&&e.emit("audioonlysource");t.start_time&&(n.src=n.src+"#t="+t.start_time);if(""==e.canPlayType(n.type||""))return Re.Err;if(n.drm&&(!n.drm["com.apple.fps.1_0"]||!r.safari))return Re.Err;"string"==typeof n.src&&(e.preload=null!==(o=t.preload)&&void 0!==o?o:"auto",e.src=n.src);return Re.Ok}(e,t,i,r))return!0;n==o.length-1&&"string"==typeof i.src&&(e.src=i.src)}),e}!function(e){e[e.Err=0]="Err",e[e.Ok=1]="Ok"}(Re||(Re={}));const ke=[T,S,"src","seek:cancel"];var Ce;function De(e,t,n){return isNaN(e.duration)||isNaN(e.currentTime)?{}:(t.offset+=n,0==t.offset?Ue(e,t):(t.timer&&clearTimeout(t.timer),t.timer=setTimeout((function(){0!=e.reaper&&(e.currentTime=function(e,t,n=0){return Math.max(Math.min(t,e),n)}(e.currentTime+t.offset,e.duration),t.timer=0,Ue(e,t))}),1e3),function(e,t){e.setState("will-seek",!0),e.setState(Ce.BACKWARD,t.offset<0),e.setState(Ce.FORWARD,t.offset>0)}(e,t),e.emit("seek:queued",t),t))}function Ue(e,t){t.timer&&clearTimeout(t.timer),t.timer=t.offset=0,function(e){e.setState(Ce.FORWARD,!1),e.setState(Ce.BACKWARD,!1),e.setState("will-seek",!1)}(e)}function Me(e,t){const n=e._customElements.get(t);return n&&e.root.querySelector(n)||void 0}function xe(){if("undefined"==typeof document)return!1;const e=document.documentElement;return e&&"rtl"==e.getAttribute("dir")}function Fe(...e){const t=document.createElement("div");return 0==e.length||t.classList.add(...e),t}function Pe(e,t,n){const r=function(e){return Array.isArray(e)?e.slice(0):e.split(".")}(t);for(;r.length;){if(null==e)return n;const t=r.shift();if("string"!=typeof t)return n;e=e[t]}return null==e?n:e}function We(e){const t="number"==typeof e?e:parseInt(e,10);return(t>9?"":"0")+t}function qe(e){if(isNaN(e)||e>=Number.MAX_SAFE_INTEGER)return"";const t=e<0?"-":"";e=Math.round(Math.abs(e));const n=Math.floor(e/3600);let r=Math.floor(e/60);return e-=60*r,n>=1?(r-=60*n,t+n+":"+We(r)+":"+We(e)):t+We(r)+":"+We(e)}!function(e){e.FORWARD="forward",e.BACKWARD="backward"}(Ce||(Ce={}));const Ge=navigator.languages||[navigator.language];function He(e,t,n){const r={};return n=t.lang||n,e[n]&&(r[n]=e[n]),function(){try{return Ge.reduce((e,t)=>~t.indexOf("-")?e.concat(t,t.split("-")[0]):e.concat(t),[])}catch(e){return[]}}().forEach((function(t){e[t]&&!r[t]&&(r[t]=e[t])})),Object.values(r)}const Be=[1e7]+""+-1e3+-4e3+-8e3+-1e11,je=()=>"undefined"==typeof crypto?"":Be.replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16));let ze="";!function(){let e=!1;try{const t=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("testPassive",null,t),window.removeEventListener("testPassive",null,t)}catch(e){}}();const Ve=["touchstart","touchmove"];function Qe(e,t){const n=new CustomEvent(e,{detail:t,cancelable:!0});return t&&Object.defineProperty(n,"data",{get:()=>t}),n}function Ke(e,t,n){const r=Qe(t,n);return e.dispatchEvent(r),e}function Ye(e,t,n){const r=Qe(t,n);return e.dispatchEvent(r),r}function Xe(e,t,n,r){Array.isArray(t)?t.forEach(t=>$e(e,t,n,r)):$e(e,t,n,r)}function $e(e,t,n,r){if(o=t,!~Ve.indexOf(o))return e.addEventListener(t,n,r),e;var o;const i=Object.assign(r||{},{passive:!0});return e.addEventListener(t,n,i),e}function Ze(e,t,n,r){return Xe(e,t,n,Object.assign(r||{},{once:!0}))}class PlayerStorage{constructor(e,t){this.implementation=e,t&&t.keys().forEach(e=>{"string"==typeof t.implementation[e]&&this.implementation.setItem(e,t.implementation[e])})}keys(){var e;const t=[];for(var n=0;n<this.implementation.length;n++)(null===(e=this.implementation.key(n))||void 0===e?void 0:e.startsWith("flowplayer/"))&&t.push(this.implementation.key(n));return t}removeItem(e){try{this.implementation.removeItem("flowplayer/"+e)}catch(e){}}getItem(e){try{return this.implementation.getItem("flowplayer/"+e)}catch(e){return null}}setItem(e,t){try{this.implementation.setItem("flowplayer/"+e,t)}catch(e){}}clear(){try{this.keys().forEach(e=>this.implementation.removeItem(e))}catch(e){}}get length(){try{return this.keys().length}catch(e){return 0}}key(e){try{return this.implementation.key(e)}catch(e){return null}}}class InMemoryStorage{constructor(){this.pairs=[]}get length(){return this.pairs.length}clear(){this.pairs=[]}getItem(e){var t;return(null===(t=this.pairs.find(t=>t[0]===e))||void 0===t?void 0:t[1])||null}key(e){return this.pairs[e][0]||null}removeItem(e){this.pairs=this.pairs.filter(t=>t[0]!==e)}setItem(e,t){this.removeItem(e),this.pairs.push([e,t])}}const Je={preload:"auto",rtl:!1,controls:!0},et=["muted","preload"];function tt(e,r,o){let i;o.live_state={dvr_window:void 0,get dvr(){return i},set dvr(t){i=t;const n=!(!e.live||t);o.hasState(ne)!=n&&o.setState(ne,n)}},o._storage=new PlayerStorage(["localStorage","sessionStorage"].map(e=>{try{const t=window[e];return t.getItem(""),t}catch(t){return console.debug(`Access to window.${e} denied, trying next option`),null}}).find(e=>!!e)||new InMemoryStorage),o.toJSON=function(){return{duration:o.duration,volume:o.volume,currentTime:o.currentTime,states:o.root.className}},o.setSrc=function(t){return Le(o,e,t,n())},o.playerState=o.playerState||{},o.setState=function(e,t){if(o.playerState[e]===!!t)return o;const n=Object.assign({},o.playerState,{[e]:t});return o.playerState=n,Ke(o,"state",o.playerState),o},o.createComponents=function(...e){return Array.from({length:e.length}).map((t,n)=>me(this,e[n]))},o.hasState=function(e){return!!o.playerState[e]},o.transitionState=function(e,t,n){!o.hasState(e)&&o.hasState(t)||(n=0),n&&o.setState("is-toggling",!0),o.setState(t,!1),o.setState(e,!0),n&&setTimeout((function(){o.setState("is-toggling",!1)}),n)},o.emit=(e,t)=>(Ke(o,e,t),o),o.on=(e,t)=>(Xe(o,e,t),o),o.once=(e,t)=>(Ze(o,e,t),o),o.off=(e,t)=>{var n,r;return n=e,r=t,o.removeEventListener(n,r),o},o.poll=(e,t)=>Ye(o,e,t),o.togglePlay=function(e){return Ee(o,0,e)},o.toggleMute=function(e){e=null==e?!o.muted:!!e,o.muted=e,o.muted||o.volume||(o.volume=1),Ke(o,"volumechange")},o.toggleDisable=function(e){e=null==e?!o.disabled:!!e,o.setState("is-disabled",e),o.disabled=e},o.destroy=function(){o.pause();const e=t.indexOf(o);~e&&t.splice(e,1),setTimeout((function(){o.setSrc([]),o.reaper&&o.reaper.clear(),Ke(o,T),o.setState("is-destroyed",!0)}),0)},o.setAttrs=function(e){return et.forEach(t=>{if(!(t in e))return;const n=e[t];n?o.setAttribute(t,n.toString()):o.removeAttribute(t)}),o},o.opt=function(t,n){return n=void 0===n?Pe(Je,t):n,Pe(e,t,n)},o.i18n=function(e,t){if(!o.reaper)return"";const n=o.reaper.get("translations");return n?function e(t,n,r,o){return(o=o||0)>=t.length?r:Pe(t[o],n,e(t,n,r,o+1))}(n,e,t||""):t||""},o.setOpts=function(t){Object.assign(e,t),e.live&&!o.hasState(J)&&(o.setState(ne,!0),Ke(o,"live")),"disabled"in t&&void 0!==t.disabled&&o.toggleDisable(t.disabled),"muted"in t&&void 0!==t.muted&&o.toggleMute(t.muted),"dvr"in e&&(o.live_state.dvr=o.opt("dvr")),o.setState("is-rtl",o.opt("rtl",function(e){if(!e)return xe();const t=e.getAttribute("dir");return t?"rtl"==t:xe()}(r))),o.setState(J,!!e.live),o.setState("has-poster","string"==typeof e.poster&&e.poster.length>0),o.setState("is-seekable",!!e.seekable),o.setState("no-controls",0==e.controls),r.style.backgroundImage=o.hasState("has-poster")?"url('"+e.poster+"')":"",Ke(o,A,e)},o.renderPlugin=function(e){Ye(o,"renderplugin",e).defaultPrevented||o.root.appendChild(e)};const s={offset:0,timer:0};var a,l;l=s,(a=o).on(ke,(function(){Ue(a,l)})),o.enqueueSeek=function(e){if(0!=o.opts.seekable&&!(1==o.opts.disabled&&e>0))return De(o,s,e)},o.deviceId=function(){return function(e){if(ze)return ze;try{const t=e.getItem("flowplayer/uuid");if(t)return t;const n=je();return e.setItem("flowplayer/uuid",n),n}catch(e){return ze=je()}}(o._storage)}}function nt(e,t){const n=t.querySelector("video"),r=n||(e._video_element_callback?e._video_element_callback(e):document.createElement("video"));return r.classList.add("fp-engine"),r.playsInline=!0,n||t.append(r),r}var rt="undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{};function ot(){return"undefined"!=typeof window?window:void 0!==rt?rt:{}}const it=["localhost","127.0.0.1","0.0.0.0","s.codepen.io","cdpn.io","try.flowplayer.com"];function st(e,t){return!!~it.indexOf(e)||e.indexOf(t)===e.length-t.length}st.check_whitelist=function(e){return!!~it.indexOf(e)};const at="production";function lt(e,t){const n={valid_jwt:!1,raw:"",data:{acl:0},exp:0};let r={c:"{}",exp:0};t=t||{};try{r=fe(e),n.valid_jwt=!0}catch(e){}return n.raw=e,n.data=JSON.parse(r.c),n.exp=r.exp,t.require_valid_token&&lt.validate(n),n}function ct(e){try{return lt.validate(e),{success:!0,message:""}}catch(e){return{success:!1,message:e.message}}}var ut;function dt(e){return{grant:e,is_granted:t=>(e&t)===t}}function pt({root:e,video:t,data:n}){t&&t.destroy(),console.error(new Error(n.details||n.reason)),e.innerHTML="",e.classList.remove("flowplayer"),e.classList.add("flowplayer-fatal"),e.style.removeProperty("background-image");const r=document.createElement("h2");r.textContent="Playback Error";const o=document.createElement("p");o.textContent="Are you the site owner?";const i=document.createElement("a");i.classList.add("troubleshoot"),i.target="_blank",i.href="https://docs.flowplayer.com/troubleshooting/player#"+n.reason,i.textContent="Troubleshoot?";const s=document.createElement("img");s.src="https://flowplayer.com/user/pages/images/logo-white.png",e.append(r,o,i,s)}function ft(e){return t=>{setTimeout((function(){if(!t.defaultPrevented&&!t.prevented)return e(t)}),0)}}lt.validate=function(e){if("string"==typeof e&&(e=lt(e)),!e||!e.raw){if(st.check_whitelist(window.location.hostname)||"dev"===at.toString())return!0;throw new Error("No token provided in configuration")}if(!e.valid_jwt)throw new Error("Invalid token provided");const t=window.location.hostname,n=st.bind(null,t);if("dev"!==at.toString()&&e.data.domain&&e.data.domain.length&&!e.data.domain.some(n))throw new Error("Domain not allowed");if("dev"!==at.toString()&&1e3*e.exp-Date.now()<0)throw new Error("Expired token");return!0},lt.id=function(e){if(e)return"string"==typeof e&&(e=lt(e)),e.data.id},function(e){e[e.ADS=2]="ADS",e[e.ANALYTICS=4]="ANALYTICS",e[e.NO_METERING=8]="NO_METERING",e[e.DEVELOPER_PLAN=16]="DEVELOPER_PLAN",e[e.WOWZA_VIDEO=32]="WOWZA_VIDEO"}(ut||(ut={})),dt.of=dt,dt.from_token=function(e){const t=lt(e,{require_valid_token:!0});return dt.of(t.data.acl)},dt.permissions=ut;function ht(e,t){if(!e.parentElement)return;const n=e.clientWidth/e.parentElement.clientWidth*100/2;e.style.left=t-n+"%",e.style.display="block"}function mt(e,t){if(isNaN(e.duration))return;const n=e.buffered;n.length&&(t.style.width=Math.min(n.end(n.length-1)/e.duration*100,100)+"%")}function yt(e,t){e.style.width="0",t.style.display="none"}function _t(e,t){const n=e.seekable;if("object"!=typeof e.opts||0==n.length)return{head:0,tail:0};const r=Et(e),o=t||e.live_state.dvr_window;return{head:r,tail:"number"!=typeof o||r-o<0?n.start(0):r-o}}function gt(e){return e.opt("live",!1)||e.duration>=Number.MAX_SAFE_INTEGER}function vt(e){return isFinite(e.duration)?e.duration:0==e.seekable.length?0:_t(e).head}function Et(e){var t;const n=e.seekable;return n.length?e.hasState("is-chromecast-playing")||!(null===(t=e.hls)||void 0===t?void 0:t.liveSyncPosition)?n.end(n.length-1):e.hls.liveSyncPosition:0}function wt(e,t,n){if(!t.seekable||0==t.seekable.length)return;ht(n,e);const r=_t(t),o=(100-Math.max(0,Math.min(e,100)))/100*(r.head-r.tail);n.innerText="-"+qe(o)}function St(e){e.currentTime=_t(e).tail}function Tt(e){try{e.dvr_offset=0,e.currentTime=Et(e)}catch(e){console.warn("failed to seek to now: %j",e)}}function bt(e,t){e/=100,t.currentTime=function(e,t){if(t>1||t<0)return console.warn("cannot calculate a percent outside of range(0..1)"),0;const n=_t(e);return n.tail+t*(n.head-n.tail)}(t,e)}function Ot(e,t){e.style.width="0",t.style.display="none"}function Nt(e,t){const n=t.clientWidth;t.classList.toggle("is-small",n<600),t.classList.toggle("is-tiny",n<400)}function At(e,t,n){let r=!0;t.classList.add("flowplayer"),Nt(0,t),Xe(n,m,()=>{if(!n.hasState(Y)&&!n.hasState(K)&&e.is_native&&"none"!==e.preload)return"metadata"===e.preload?(n.setState(Y,!0),n.emit(I)):void we(n)}),Xe(n,p,()=>{e.is_native&&"metadata"===e.preload&&n.paused&&n.emit(v)}),Xe(n,[m,"resize"],(function(){Nt(0,t)})),Xe(n,"state",(function(){Object.entries(n.playerState).forEach((function([e,n]){t.classList.toggle(e,n)}))})),Xe(n,"timeupdate",(function(){n.setState(ee,!n.hasState("is-casting")&&!n.hasState(X)&&n.readyState<3)})),Xe(n,E,(function(t){const r=n.original_src;ft(()=>{if(r===n.original_src){if(n.setState(Z,!0),Ze(n,"timeupdate",(function(){n.setState(Z,!1),r===n.original_src&&n.setState(X,!e.loop&&!!e.rewind&&n.paused)})),e.loop)return n.togglePlay(!0);e.rewind&&(n.currentTime=0)}})(t)})),Xe(n,[S,w],(function(e){n.setState($,e.type==S)})),Xe(n,"remotesession:ended",(function(e){setTimeout(()=>{e.defaultPrevented||(n.currentTime=e.detail.currentTime)},0)})),Xe(n,E,(function(){n.setState(V,!1),r=!0})),Xe(n,h,()=>{if(!n.opts.live||!n.opts.is_native)return;const e=n.seekable;0!=e.length&&n.emit("dvr/window",e.end(e.length-1)-e.start(0))}),Xe(n,f,(function(){n.setState(K,!0),n.setState(Y,!1)})),Xe(n,"play",()=>{n.setState(re,!0)}),Xe(n,[g,v,m],(function(t){if(!n.hasState($)&&(t.type!=v||e.autoplay||n.setState(ee,!1),t.type!=m||"none"!=n.opt("preload")||e.autoplay)){if(t.type==m&&e.autoplay)return Ze(n,_,(function(){n.setState(ee,!1)}));t.type!=g||n.hasState(K)||n.setState(Y,!0),n.setState(Z,!1),n.setState(ee,t.type==g)}})),Xe(n,[_,y],(function(t){setTimeout(()=>{const e=new CustomEvent("flowplayer/"+t.type,{detail:n});document.dispatchEvent(e)},0);const o=t.type==_,i=n.currentTime==n.duration,s=o&&r&&e.autoplay||n.hasState(ee);if(o&&(n.started=!0,r=!1),n.setState(ee,!1).setState(re,!1),!o&&n.setState(oe,!1),i)return;const a=o?V:Q,l=o?Q:V;n.transitionState(a,l,s?0:300),!n.hasState(X)||n.root.classList.contains("ad-hide-first-frame")||n.root.classList.contains("preroll-ios")||function(e,t){if(!e.hasState(J)||![void 0,0,-1].includes(t)||!e.seekable.length||e.hasState("has-casted"))return e.setState(X,!1);e.once(w,()=>e.setState(X,!1)),0===t?St(e):Tt(e)}(n,e.start_time)}))}const It=[0].concat(Array.from({length:100}).map((e,t)=>(t+1)/100));function Rt(e,t,n){if(!window.IntersectionObserver)return;const r={should_resume:!!e.autoplay,locked:!1};Xe(n,"play",(function(){r.locked||(r.should_resume=!0)}));const o=()=>{if(!e.autoplay)return;if(n.hasState(se)&&r.should_resume)return n.togglePlay(!0);const t=n.currentSrc;e.autopause||n.hasState(se)||!r.should_resume||Ze(n,"viewenter",()=>{e.autoplay&&r.should_resume&&t===n.currentSrc&&n.togglePlay(!0)})},i=()=>{if(!e.autoplay)return;if(!e.is_native)return;if("auto"===e.preload)return;if(n.hasState(se))return we(n);const t=n.currentSrc;Ze(n,"viewenter",()=>{t!==n.currentSrc||n.readyState>1||!n.paused||we(n)})};Xe(n,"src",(function(){r.should_resume=!!e.autoplay,n.off(m,i),n.once(m,i),n.off(v,o),n.once(v,o)})),Xe(n,y,(function(){r.locked||(r.should_resume=!1)}));const s=new IntersectionObserver(e=>{e.forEach(e=>{setTimeout(()=>{const t=e.intersectionRatio,r=n.hasState(se);if(n.setState(se,t>=.2),n.emit("intersectionchange",{ratio:t}),r===n.hasState(se))return;const o=n.hasState(se)?"viewenter":"viewleave";n.emit(o)},0)})},{threshold:It});s.observe(t),n.on(T,()=>s.disconnect()),Xe(n,"viewenter",(function(){!r.should_resume||!e.autopause||Lt()||n.opts.autoplay&&!n.readyState||n.togglePlay(!0)})),Xe(n,"viewleave",(function(){if(!e.autopause||Lt())return;const t=!n.paused;r.locked=!0,n.pause(),setTimeout((function(){r.should_resume=t,r.locked=!1}),0)}))}function Lt(){return t.find(e=>e.hasState("is-casting"))}function kt(e,t){if(!window.ResizeObserver)return;const n=new ResizeObserver(e=>{const n=e[e.length-1];t.emit("resize",n)});n.observe(e),t.on(T,()=>n.disconnect())}function Ct(e){if("number"==typeof e&&!isNaN(e))return Number(e);if("string"==typeof e){const t=e.split(":");return Number(t[1])/Number(t[0])}return e}function Dt(e,t,n){const r=!!e.ratio,o=document.createElement("div");o.classList.add("fp-ratio"),t.append(o);let i=Ct(e.ratio||.5625);o.style.paddingTop=100*i+"%";const s=[f,p];n.on(s,(function(){if(r)return;const e=n.videoHeight&&n.videoWidth&&n.videoHeight/n.videoWidth;e&&n.setOpts({ratio:e})})),n.on(A,(function(){const t=n.videoHeight&&n.videoWidth&&n.videoHeight/n.videoWidth,r=Ct((null==e?void 0:e.ratio)||t||.5625);i!==r&&(i=r,o.style.paddingTop=100*r+"%")}))}class ExplorerPlan{constructor(){this.cleanUp=this.cleanUp.bind(this),this.render=this.render.bind(this),this.wireUp=this.wireUp.bind(this)}init(e,t,n){this.root=t,this.player=n,this.wireUp()}wireUp(){var e,t;this.cleanUp(),null===(e=this.player)||void 0===e||e.once(_,this.render),null===(t=this.player)||void 0===t||t.once(E,this.wireUp)}cleanUp(){var e,t,n,r;null===(t=null===(e=this._logo)||void 0===e?void 0:e.parentElement)||void 0===t||t.removeChild(this._logo),null===(n=this.player)||void 0===n||n.off(_,this.render),null===(r=this.player)||void 0===r||r.off(E,this.wireUp)}render(){var e,t,n;null===(t=null===(e=this._logo)||void 0===e?void 0:e.parentElement)||void 0===t||t.removeChild(this._logo);const r=(null===(n=this.root)||void 0===n?void 0:n.querySelector(".fp-ui"))||this.root;if(!r)return;const o=this._logo=document.createElement("a");o.href="https://explorer.flowplayer.com",o.target="_blank",Object.entries(Ut).forEach(([e,t])=>{o.style.setProperty(e,t,"important")}),r.appendChild(o)}}ExplorerPlan.pluginName="explorer-plan";const Ut={display:"block",opacity:"1",visibility:"visible",width:"33%","padding-top":"9%",position:"absolute","z-index":"9999",bottom:"25%",left:"10%","background-size":"cover","background-image":"url(https://static.flowplayer.com/explorer/explorer.svg)"},Mt="flowplayer/"+_;function xt(e){const t=t=>{t.detail!==e&&!1===e.opt("multiplay")&&e.togglePlay(!1)};e.on(T,()=>document.removeEventListener(Mt,t)),document.addEventListener(Mt,t)}function Ft(e,t){const n=[];e.addEventListener("contextmenu",r=>{const o=r.timeStamp;for(n.push(o);n.length>3;)n.shift();n.length>=3&&n.every(e=>e-o<3e3)&&(console.debug("flowplayer/debug rendering info"),function(e,t){var n;!function(e){const t=e.querySelector(".debug-info");null==t||t.remove()}(e);const r=document.createElement("div");r.classList.add("debug-info");const o=Pt("flowplayer.version","3.28.0-rc");r.append(o);const i=null===(n=null==t?void 0:t.hls)||void 0===n?void 0:n.constructor;if(i&&i.version){const e=Pt("hls.version",i.version);r.append(e)}e.appendChild(r)}(e,t))})}const Pt=(e,t)=>{const n=document.createElement("div");n.classList.add("row",e);const r=document.createElement("span");r.classList.add("attr"),r.textContent=e;const o=document.createElement("span");return o.textContent=t,o.classList.add("value"),n.append(r,o),n};function Wt(e,t){const n=function(){try{return localStorage.getItem("flowplayer/debug")}catch(e){return""}}(),r=(r,...o)=>{try{const i=(null==t?void 0:t.debug)||n;i&&e.match(i)&&console.log(`flowplayer/${e} -- ${r}`,...o)}catch(e){console.warn(e)}};return r.log=r,r}const qt=Wt("core/retry");function Gt(e,t){const n={pending:void 0,count:0};e.on("error",o=>{t.retry&&void 0===n.pending&&(++n.count,n.pending=function(e,t){return setTimeout(()=>{e.hasState("is-destroyed")||(t.pending=void 0,[N,r].forEach(t=>e.emit(t)),qt("%s try",t.count))},3e3*t.count)}(e,n))}),e.on(_,()=>{n.count=0}),e.on(["src",N],()=>{n.pending&&(clearTimeout(n.pending),n.pending=void 0)}),e.on(r,ft(t=>{t.defaultPrevented||e.load()}))}const Ht="rebuffer",Bt="rebuffer:ended",jt="insights:ttff",zt="insights:time_to_first_frag_loaded",Vt="insights:watched_interval";var Qt=Object.freeze({__proto__:null,RECORD:"health:record",REBUFFER:Ht,REBUFFER_ENDED:Bt,DISPLAY:"display",TIME_TO_FIRST_FRAME:jt,TIME_TO_FIRST_FRAGMENT_LOADED:zt,WATCHED_INTERVAL:Vt});const Kt=[I,"error","src"];function Yt(e){try{return!!new URL(e)}catch(e){return!1}}const Xt=navigator;function $t(e){var t,n;const r=null===(t=e.hls)||void 0===t?void 0:t.bandwidthEstimate;return r?1e-6*r:(null===(n=Xt.connection)||void 0===n?void 0:n.downlink)||-1}function Zt(e,t){return async function(e,t){try{await fetch(e,{body:t,method:"POST",mode:"no-cors"})}catch(e){}}(e,JSON.stringify({events:t}))}const Jt=e=>{switch(e){case!0:return ge.ON;case!1:return ge.OFF;default:return e}};function en(){try{const e=window.location!==window.parent.location?document.referrer:document.location.href;return"string"==typeof e&&e.slice(0,200)}catch(e){return!1}}const tn=[],nn="https://ihi.flowplayer.com/v1/health/events";function rn(e){if(e.suspended)return;const t=tn.slice(0);tn.length=0,0!=t.length&&(e.logger.log(`:dispatch events={${t.length}}`),Zt(function(){try{return"undefined"==typeof window?nn:window.__FLOWPLAYER_INSIGHTS_URL?window.__FLOWPLAYER_INSIGHTS_URL:nn}catch(e){return nn}}(),t))}async function on(e,t,n){const r=await an();tn.push(Object.assign(t,r)),e.logger.log(":enqueue",t.event,t),tn.length<10&&!n||rn(e)}const sn=()=>{var e,t;try{const n=window;return null===(t=null===(e=null==n?void 0:n.google)||void 0===e?void 0:e.ima)||void 0===t?void 0:t.VERSION}catch(e){return}},an=async()=>({client_time:Date.now()}),ln=(e,t)=>Object.assign(e,{detail:t}),cn=(e,{event:t,media_session_id:n,session_id:r,play_range_id:o})=>({event:t,media_session_id:n,session_id:r,play_range_id:o,device_id:e.deviceId(),version:"3.28.0-rc",commit:"1f7c72352683885ed08154a046779f9ffb68dd32",ima_sdk_version:sn(),preload:e.opt("preload"),autoplay:Jt(e.opt("autoplay")),live:e.opt("live"),dvr:!!e.live_state.dvr,source:e.original_src,downlink_mbs:$t(e),page_url:en(),player_id:e.opt("metadata.player_id"),media_id:e.opt("metadata.media_id"),site_id:e.opt("metadata.site_id"),category_id:e.opt("metadata.category_id"),sitegroup_id:e.opt("metadata.sitegroup_id"),token:e.token,plugins:e.plugins.map(e=>e.constructor.name).sort((e,t)=>e.localeCompare(t)),current_time:e.currentTime,external_media_id:e.opt("external_media_id")}),un=e=>({bitrate:null==e?void 0:e.bitrate,resolution:null==e?void 0:e.attrs.RESOLUTION,frame_rate:null==e?void 0:e.attrs["FRAME-RATE"]});function dn(e,t,n,r){const o=cn(t,e.eventInfo(n)),{before:i,after:s}=r;on(e,((e,t,n)=>Object.assign(e,{state:{before:t,after:n}}))(o,un(i),un(s)))}var pn;function fn(e){switch(e){case pn.MEDIA_PLAYBACK_ABORTED:return"media playback was aborted";case pn.MEDIA_ERR_NETWORK:return"a network error occurred";case pn.MEDIA_ERR_DECODE:return"unable to decode media content";case pn.MEDIA_ERR_SRC_NOT_SUPPORTED:return"unsupported media type";case pn.NO_INTERNET:return"no internet connection detected";case pn.MIXED_CONTENT:return"cannot load insecure content in a secure context";default:return"an unknown error occurred"}}!function(e){e[e.UNKNOWN=-1]="UNKNOWN",e[e.MEDIA_PLAYBACK_ABORTED=1]="MEDIA_PLAYBACK_ABORTED",e[e.MEDIA_ERR_NETWORK=2]="MEDIA_ERR_NETWORK",e[e.MEDIA_ERR_DECODE=3]="MEDIA_ERR_DECODE",e[e.MEDIA_ERR_SRC_NOT_SUPPORTED=4]="MEDIA_ERR_SRC_NOT_SUPPORTED",e[e.MIXED_CONTENT=1001]="MIXED_CONTENT",e[e.NO_INTERNET=1002]="NO_INTERNET"}(pn||(pn={}));const hn=(e,t)=>{let n=null;return(...r)=>{null!==n&&(clearTimeout(n),n=null),n=setTimeout(()=>t(...r),e)}};var mn;!function(e){e[e.Starting=0]="Starting",e[e.ConfigFinalized=1]="ConfigFinalized",e[e.TimerStartedWithAutoplay=2]="TimerStartedWithAutoplay",e[e.TimerStartedWithUserGesture=3]="TimerStartedWithUserGesture",e[e.MetricReported=4]="MetricReported"}(mn||(mn={}));const yn=[o,"touchend"];class TimeToFirstFrame{constructor(e=mn.Starting,t=!1){this.state=e,this.loadedAd=t}reset(){this.state=mn.Starting,this.loadedAd=!1,this.start=void 0,this.end=void 0,this.adDetails=void 0}adInfo(){const{ad_tag_id:e,vast_ad_id:t}=this.adDetails||{};return{ad_tag_id:e,vast_ad_id:t}}toJSON(){return Object.assign({ad_was_requested:this.loadedAd,ms_to_first_frame:Math.round(this.end&&this.start?this.end-this.start:-1)},this.adInfo())}startTimer(e){this.state==mn.ConfigFinalized&&(this.state=e,this.start=performance.now())}hasStarted(){return[mn.TimerStartedWithAutoplay,mn.TimerStartedWithUserGesture].includes(this.state)}stopTimer(e){this.hasStarted()&&(this.end||(this.end=performance.now()),this.state=mn.MetricReported,e())}}function _n(e){return Math.round(1e3*e)/1e3}class EWMA{constructor(e){this.tickInterval=e,this.ewma=0,this.startTime=Date.now()}decay(){const e=Date.now()-this.startTime;return Math.pow(2,-e/(4*this.tickInterval))}update(e){const t=this.decay();return this.ewma=t*this.ewma+(1-t)*e,this.ewma}toJSON(){return this.ewma}}class WatchedState{constructor(e){this.player=e,this.marchingInterval=void 0,this.lastWatchedPoint=void 0,this.watchedSum=0,this.lastReportedSum=0,this.ewmaTickWatched=new EWMA(WatchedState.AccuracyMilliseconds)}reset(){this.onNotWatching(),this.watchedSum=0,this.lastReportedSum=0,this.lastWatchedPoint=void 0}onNotWatching(){this.marchingInterval&&(this.updateWatched(),this.marchingInterval=clearInterval(this.marchingInterval))}onWatching(){this.marchingInterval||(this.lastWatchedPoint=this.createWatchedPoint(),this.marchingInterval=setInterval(()=>{this.updateWatched()},WatchedState.AccuracyMilliseconds))}createWatchedPoint(){return{currentTime:this.player.currentTime,paused:this.player.paused}}updateWatched(){const e=this.createWatchedPoint();this.lastWatchedPoint&&this.calculateTimeWatched(this.lastWatchedPoint,e),this.lastWatchedPoint=e}calculateTimeWatched(e,t){const n=t.currentTime-e.currentTime,r=this.ewmaTickWatched.update(n);if(!(n<0)&&!(1e3*n>1.3*WatchedState.AccuracyMilliseconds)&&(this.watchedSum+=n,this.watchedSum!=this.lastReportedSum&&(this.watchedSum>this.lastReportedSum+WatchedState.ReportingIntervalSeconds||this.player.ended))){const e=_n(r),t={total_watched_seconds:_n(this.watchedSum),tick_watched_seconds:e,batch_watched_seconds:_n(this.watchedSum-this.lastReportedSum)};this.lastReportedSum=this.watchedSum,this.player.emit(Vt,t)}}}WatchedState.ReportingIntervalSeconds=5,WatchedState.AccuracyMilliseconds=160;const gn=je();class Health{constructor(e,t){let n;this.session_id=gn,this.suspended=!1,this.logger=Wt("health",t.opts),this.media_session_id=je(),this.play_range_id=je(),this.analyticsLoop=setInterval(()=>rn(this),2e3),t.on(T,()=>clearInterval(this.analyticsLoop)),t.on(_,()=>{n!==this.media_session_id&&(n=this.media_session_id,this.first_playing_event_timestamp=Date.now()),this.play_range_id=je()});let r=Date.now()-1e3;t.on("timeupdate",e=>{if(n!==this.media_session_id)return;const o=Date.now();if(o<r)return;r=Date.now()+5e3;const i=cn(t,this.eventInfo(e.type)),s=ln(i,{duration:(a=t.duration,Number.isFinite(a)?a:a===1/0?-1:void 0)});var a;this.first_playing_event_timestamp&&(Object.assign(s,{ms_since_first_playing:o-this.first_playing_event_timestamp}),this.first_playing_event_timestamp=void 0),on(this,s)});const o=this;if(t.health={get media_session_id(){return o.media_session_id},set media_session_id(e){o.media_session_id=e},get session_id(){return o.session_id},set session_id(e){o.session_id=e},toggle(e){e?o.resume():o.suspend()}},!Health._UNLOAD_SUBSCRIBED){Health._UNLOAD_SUBSCRIBED=!0;const t=t=>e.instances.forEach(e=>e.emit(t.type));document.addEventListener("visibilitychange",e=>{"hidden"==document.visibilityState&&t(e)}),window.addEventListener("pagehide",t)}}eventInfo(e){return{event:e,media_session_id:this.media_session_id,session_id:this.session_id,play_range_id:this.play_range_id}}suspend(){this.suspended=!0,clearInterval(this.analyticsLoop)}resume(){this.suspended=!1,this.analyticsLoop=setInterval(()=>rn(this),2e3)}init(e,t,n){if(en().toString().startsWith("data:"))return this.suspend();!function(e){let t=null;const n=()=>{t=null};e.on(g,(function(t){e.seeking||e.networkState===e.NETWORK_LOADING&&(e.readyState<HTMLMediaElement.HAVE_CURRENT_DATA||e.emit(Ht))})),e.on(Ht,e=>{t=e}),e.on(v,r=>{if(t){const o=r.timeStamp-t.timeStamp;if(n(),o<31)return;if(o>3e5)return;e.emit(Bt,{rebuffer_duration:o/1e3})}}),Kt.forEach(t=>e.on(t,n))}(n),function(e){let t;[v,I].forEach(n=>{e.on(n,n=>{const r=Date.now();switch(n.type){case I:return t=r;case v:if(t)return e.emit(zt,{ms_since_loading_started:r-t}),t=null}})})}(n),function(e){if(void 0===window.performance)return;const t=new TimeToFirstFrame;e.on("src",()=>{if(!e.opt("metadata.media_id"))return t.reset();t.reset(),t.state=mn.ConfigFinalized}),e.on(I,()=>{(e.root.classList.contains("ad-hide-first-frame")||e.opt("autoplay"))&&t.startTimer(mn.TimerStartedWithAutoplay)}),yn.forEach(n=>{e.on(n,()=>{e.opt("autoplay")||t.startTimer(mn.TimerStartedWithUserGesture)})}),e.on("ad-requested",()=>{t.loadedAd=!0}),e.on("timeupdate",()=>{if(!(e.readyState<HTMLMediaElement.HAVE_CURRENT_DATA)){if(e.root.classList.contains("ad-hide-first-frame"))return!t.end&&(t.end=performance.now());switch(t.state){case mn.TimerStartedWithAutoplay:case mn.TimerStartedWithUserGesture:return t.stopTimer(()=>e.emit(jt,t.toJSON()))}}}),e.on("ad-started",n=>{switch(t.end=void 0,t.adDetails=n.detail,t.state){case mn.TimerStartedWithAutoplay:case mn.TimerStartedWithUserGesture:return t.stopTimer(()=>e.emit(jt,t.toJSON()))}})}(n),function(e){const t=new WatchedState(e);e.on(I,()=>t.reset()),e.on(_,()=>t.onWatching()),e.on(y,()=>t.onNotWatching()),e.on(S,()=>t.onNotWatching()),e.on(E,()=>t.updateWatched()),e.on("visibilitychange",()=>t.updateWatched())}(n),n.on("display",e=>{on(this,cn(n,this.eventInfo(e.type)),!0)}),n.on("health:record",({detail:e})=>{const t=cn(n,this.eventInfo(e.event));Object.assign(t,e.detail||{}),on(this,t)}),[m,p,f,h,g,Ht].forEach(e=>{n.on(e,e=>{on(this,cn(n,this.eventInfo(e.type)))})}),[Bt,jt,zt,Vt].forEach(e=>{n.on(e,e=>{const t=cn(n,this.eventInfo(e.type));on(this,Object.assign(t,e.detail))})}),[_,y,S,w,E,u,d,v,I].forEach(e=>{n.on(e,e=>{on(this,cn(n,this.eventInfo(e.type)))})}),n.on("volumechange",hn(800,e=>{const t=cn(n,this.eventInfo(e.type));on(this,ln(t,{volume:parseFloat(n.volume.toFixed(2)),muted:n.muted}))})),n.on("resize",hn(800,e=>{const r=cn(n,this.eventInfo(e.type));on(this,ln(r,{height:t.clientHeight,width:t.clientWidth}))})),n.on("hls/failover",e=>{const t=cn(n,this.eventInfo(e.type)),r=e.detail,{reason:o,from:i}=r;on(this,ln(t,{reason:o,from:i}))}),n.on("qualitychange",({type:e,detail:t})=>{switch(t.plugin){case"hls":return dn(this,n,e,t)}}),n.addEventListener("error",e=>{const t=cn(n,this.eventInfo(e.type)),r=e.error||n.error;if(!r)return on(this,t,!0);const o=r.code,i={error_message:r.message||fn(o),error_code:o,error_stack:r.stack||""};return on(this,ln(t,i),!0)}),n.on("src",e=>{var t;const r=null===(t=e.detail)||void 0===t?void 0:t.src;if("string"!=typeof r)return;if(!Yt(n.original_src))return;if(!Yt(r))return;if(r==n.original_src)return;this.media_session_id=je();on(this,cn(n,this.eventInfo(e.type))),rn(this)}),n.on("visibilitychange",e=>{on(this,cn(n,this.eventInfo(e.type))),rn(this)})}}function vn(e,t){return function(e){return e.extensions.reduce((e,t)=>e.find(e=>e.pluginName===t.pluginName)?(console.warn("flowplayer: duplicate plugin %s detected, plugin names should be unique",t.name),e):(e.push(t),e),[])}(e).map(n=>new n(e,t))}Health.pluginName="health",Health.events=Qt,Health._UNLOAD_SUBSCRIBED=!1;const En=function(){const e=ot(),t=e.flowplayer?e.flowplayer:{extensions:[]};return Array.isArray(t.extensions)||(t.extensions=[]),t}();function wn(n,r){if("function"==typeof n)return e.push(...[...arguments].filter(e=>"function"==typeof e)),wn;"string"==typeof r&&(r={src:r}),r||(r={}),r.token||"string"!=typeof window.__FLOWPLAYER_TOKEN||(r.token=window.__FLOWPLAYER_TOKEN);const o="string"==typeof n?document.querySelector(n):n;if(!o)return console.error(new Error("Flowplayer: '"+n.toString()+"' not found"));const i=o.querySelector("video.fp-engine");if(i)return i;const s=ct(r.token);if(!s.success)return pt({root:o,data:{reason:"token",details:s.message}});const a=new Map,l=nt(r,o);l.reaper=a,l._customElements=he,Object.defineProperty(l,"token",{value:"string"==typeof r.token?lt.id(r.token):"",writable:!1}),l.addEventListener(T,()=>{a.clear(),l.reaper=0,delete l.root}),l.root=o,r.token&&dt.from_token(r.token).is_granted(dt.permissions.DEVELOPER_PLAN)&&e.push(ExplorerPlan),!~t.indexOf(l)&&t.push(l),tt(r,o,l),l.setAttrs(r),l.plugins=vn(wn,l),At(r,o,l),Rt(r,o,l),kt(o,l),Dt(r,o,l),xt(l),Ft(o,l),Gt(l,r),l.plugins.forEach(e=>{try{e.init(r,o,l)}catch(t){console.log("Error(plugin/%s)",e.constructor.name,t)}}),l.setOpts(r),l.opts=r,r.src&&l.setSrc(r.src);const c=l.readyState;return c>0&&l.currentSrc&&l.emit(p),c>2&&l.currentSrc&&l.emit(v),l.emit("mount"),l.on("error:fatal",(function(e){pt({root:o,video:l,data:e.data||{}})})),setTimeout(Ke,0,document,"flowplayer:player:created",l),l}Object.assign(wn,En),function(r){Array.isArray(r.extensions)&&r.extensions.forEach(t=>e.push(t)),r.customElements=he,r.defaultElements=z,r.version="3.28.0-rc",r.commit="1f7c72352683885ed08154a046779f9ffb68dd32",r.instances=t,r.extensions=e,r.support=n,r.events=R,r.states=le,r.jwt=fe,r.autoplay=ge,r.quality=_e}(wn),"object"==typeof document&&setTimeout(Ke,0,document,"flowplayer:umd",wn),wn.extensions.unshift.apply(wn.extensions,[Health]);const Sn=(...e)=>e.reduce((e,t)=>Object.assign(Object.assign({},e),t),{}),Tn=(e,t)=>{const n=e.lastIndexOf(t);return~n&&e.splice(n,1),e};class RequestQueue{static of(){return new RequestQueue}static is_empty(e){return 0==e.pending.length}static is_high_water(e){return e.open.length==RequestQueue.MAX_OPEN_REQUESTS}static maybe_spawn_req(e){if(RequestQueue.is_empty(e))return e;if(RequestQueue.is_high_water(e))return e;try{const t=RequestQueue.lpop(e);t&&RequestQueue.request(e,t)}catch(e){}}static increment_failures(e){return e.stats.failures++,e.stats.failures>RequestQueue.MAX_FAILURE_COUNT&&(e.stats.ttl=Date.now()+RequestQueue.REQUEST_TTL_MS),e}static handle_error(e,t){RequestQueue.rm(e,t),RequestQueue.increment_failures(e)}static request(e,[t,n,r]){if(Date.now()<e.stats.ttl)return;const o=new XMLHttpRequest;e.open.push(o),o.timeout=RequestQueue.REQUEST_TIMEOUT_MS,o.ontimeout=function(){RequestQueue.handle_error(e,o)},o.onerror=function(t){RequestQueue.handle_error(e,o)},o.onreadystatechange=function(){o.readyState==XMLHttpRequest.DONE&&RequestQueue.rm(e,o),Math.floor(o.status/100)},o.onload=function(){RequestQueue.rm(e,o),e.stats.failures&&e.stats.failures--},o.open(n,t),o.setRequestHeader("Content-Type","text/plain;charset=UTF-8");try{o.send(JSON.stringify(r))}catch(e){}}static rpush(e,...t){return t.forEach(t=>{e.pending.length>=RequestQueue.MAX_PENDING||(e.pending.push(t),RequestQueue.maybe_spawn_req(e))}),e}static lpop(e){return e.pending.shift()}static rm(e,t){return Tn(e.open,t),e}constructor(){this.pending=[],this.open=[],this.stats={failures:0,ttl:0}}}RequestQueue.MAX_OPEN_REQUESTS=3,RequestQueue.MAX_PENDING=5,RequestQueue.REQUEST_TIMEOUT_MS=4e3,RequestQueue.REQUEST_TTL_MS=5e3,RequestQueue.MAX_FAILURE_COUNT=3;var bn=RequestQueue.of();const On=/:([a-zA-Z_]+)/g;class Log{static prepare(e,t){const n=document.createEvent("Event");return n.initEvent(e,!1,!0),n.ns=e,n.data=t,n}static of(e){return new Log(e)}constructor(e){this.emitter=e}info(e){this.emitter.dispatchEvent(Log.prepare(Log.NAMESPACE.INFO,e))}error(e){this.emitter.dispatchEvent(Log.prepare(Log.NAMESPACE.ERROR,e))}warn(e){this.emitter.dispatchEvent(Log.prepare(Log.NAMESPACE.WARN,e))}}var Nn;Log.NAMESPACE={INFO:"tracker:info",ERROR:"tracker:err",WARN:"tracker:warn"},function(e){e.POST="POST",e.PUT="PUT",e.GET="GET"}(Nn||(Nn={}));class Tracker{static of(e,t){return new Tracker(e,t)}static ensure_required_keys(e,t){return e.required_keys.filter(e=>!(e in t))}static pluck_valid_keys(e,t){return((e,...t)=>Object.keys(e).filter(e=>~t.indexOf(e)).reduce((t,n)=>Sn(t,{[n]:e[n]}),{}))(t,...e.valid_keys)}static merge_metadata(e,t={}){return e.metadata=Tracker.pluck_valid_keys(e,Sn(e.metadata,t)),e}static assert_emitter_api(e){if("function"!=typeof(e||{}).addEventListener)throw new Error("Tracker() received an emitter that does not implement the addEventListener method");if("function"!=typeof(e||{}).removeEventListener)throw new Error("Tracker() received an emitter that does not implement the removeEventListener method")}static create_listener(e,t,n){var r;e.listeners.push([t,n]),null===(r=e.emitter)||void 0===r||r.addEventListener(t,n)}constructor(e,t={}){const n=this;if(this.emitter=e,this.url=t.url,this.log=Log.of(this.emitter),this.verb=t.verb,this.metadata=Sn({},t.metadata||{}),this.rq=t.rq||bn,this.events=t.events||[],this.required_keys=t.required_keys||[],this.optional_keys=t.optional_keys||[],this.listeners=[],this.valid_keys=this.required_keys.slice(0).concat(this.optional_keys),Tracker.assert_emitter_api(this.emitter),void 0===Tracker.verb[this.verb])throw new Error(`invalid HTTP verb[${this.verb}] passed`);if("string"!=typeof this.url)throw new Error(`invalid API url[${this.url}] passed`);Tracker.TRACKERS.push(this),n.events.forEach(e=>{Tracker.create_listener(this,e,(t={})=>{const r=Sn(n.metadata,{event_type:e},t.data||t),o=function(e,t){return e.replace(On,n=>{const r=n.slice(1,n.length);return r in t?t[r].toString():(console.warn(`\n preparing url[${e}] failed\n\n parameter[${r}] not detected in params:\n\n ${JSON.stringify(t,null,2)}\n `),n)})}(n.url,r),i=Tracker.pluck_valid_keys(n,r),s=Tracker.ensure_required_keys(n,i);if(s.length)return n.log.error(`Tracker.validate_metadata() failed for\n Event[${e}]\n missing keys: ${s}\n payload:\n ${JSON.stringify(i,null,2)}`);this.rq&&RequestQueue.rpush(this.rq,[o,this.verb,i])})})}destroy(){this.listeners.forEach(([e,t])=>{var n;return null===(n=this.emitter)||void 0===n?void 0:n.removeEventListener(e,t)}),delete this.rq,delete this.emitter,Tn(Tracker.TRACKERS,this)}put(e={}){return Tracker.merge_metadata(this,e),this}}Tracker.TRACKERS=[],Tracker.QUEUE=bn,Tracker.verb=Nn;var An="ping",In="display",Rn="view";const Ln=["sitegroup_id","session_id","media_id","site_id","player_id","video_type"],kn=["created","position"],Cn=["player_version","created","source","category","category_id","autoplay","muted","customer_user_id"];function Dn(e,t){return e.duration/1===e.duration&&Object.assign(t,function(e){const t=e/100;return{segment_duration:t,breakpoints:Array(...Array(100)).map((function(e,n){return Math.floor(n*t*1e3)/1e3}))}}(e.duration))}function Un(e,t,n){if(!t.segment_duration&&!Dn(e,t))return;const r=function(e,t,n){const r=t.last_idx,o=n?99:Mn(e,t);return t.last_idx=o,o<=r?[]:t.breakpoints.slice(r,99==o?100:o).map((function(e){return t.breakpoints.indexOf(e)}))}(e,t,n);0!=r.length&&e.emit(An,{position:r})}function Mn(e,t){return Math.min(Math.floor(e.currentTime/t.segment_duration),99)}var xn;const Fn="vod",Pn="live",Wn=[In,An,Rn];function qn(e,t,n){switch(null==t?void 0:t.kind){case"live":return function(e,t){const n=Date.now();n-t.last_tracked_ts<6e4||(t.last_tracked_ts=n,++t.ticks,e.emit(An,{position:60*t.ticks}))}(e,t);case"vod":return Un(e,t,"boolean"==typeof n&&n)}}function Gn(e){const t=e.ads;return void 0!==t&&(void 0!==t.schedule&&("function"==typeof t.hasPreroll&&(t.currentRequests?t.currentRequests:!!t.adPlaying||!(!t.hasPreroll()||0!=t.nextIndex))))}const Hn=((xn=class Analytics{init(e,t,n){if(!dt.from_token(e.token||"").is_granted(dt.permissions.ANALYTICS))return;if(n.hasState("consent-no-tracking"))return;if(n.analytics)return;const r=n.analytics={ticker:void 0,last_media_id:"",ended:!1},o={locked:void 0,ttl:6e3,task:()=>{qn(n,r.ticker)}};const i={session_id:n.deviceId(),autoplay:n.autoplay,muted:n.muted,player_id:e.player_id,customer_user_id:e.customer_user_id,player_version:"3.28.0-rc"},s=Tracker.of(n,{verb:Tracker.verb.POST,url:"https://ptm.flowplayer.com/:video_type/:sitegroup_id/:event_type",events:Wn,required_keys:Ln,optional_keys:Cn.concat(kn).slice(0),metadata:i});n.on(T,(function(){s&&s.destroy()})),n.on(A,(function(t){if(!s)return;const o=Pe(t,"data.metadata",{});if(!o.media_id)return;const i=Pe(s,"metadata.media_id");if(i&&o.media_id==i)return;const a=Pe(e,"analytics",{});s.put(o),s.put(a);const l=Pe(e,"metadata.live_start_time",e.live)?Pn:Fn;s.put({video_type:l,source:e.source||en()||""}),r.ticker=e.live?{ticks:0,last_tracked_ts:Date.now(),kind:"live"}:{last_idx:0,segment_duration:0,breakpoints:[],kind:"vod"},r.ended=!1,n.emit(In)}));let a=0;n.on(_,(function(){if(!s)return;if(a||function(e,t){return e.metadata.media_id&&e.metadata.media_id==t.last_media_id}(s,r))return;s.put({muted:n.muted});const e=Gn(n);if(e)return a=Promise.resolve(e).then((function(){r.last_media_id=s.metadata.media_id,n.emit(Rn),a=0})).catch((function(){a=0}));r.last_media_id=s.metadata.media_id,n.emit(Rn)})),n.on("timeupdate",(function(){var t;s&&(a||Gn(n)||r.ended||(!e.live&&n.currentTime+.25>=n.duration&&qn(n,r.ticker,!0),(t=o).locked||(t.locked=setTimeout((function(){return t.task(),function(e){return e.locked=void 0,e}(t)}),t.ttl))))})),n.on(w,(function(){s&&r.ticker&&"vod"==r.ticker.kind&&function(e,t){Dn(e,t),t.last_idx=Mn(e,t)}(n,r.ticker)})),n.on(E,(function(){s&&function(e,t){t.ended||(t.ended=!0,qn(e,t.ticker))}(n,r)}))}}).pluginName="analytics",xn),Bn=function(e,t){if("object"==typeof exports&&"undefined"!=typeof module)return t;if(null===document.currentScript)return t;"flowplayer"in e||(e.flowplayer={extensions:[]});const n=e.flowplayer;return"function"==typeof n?(n(t),t):(Array.isArray(n.extensions)||(n.extensions=[]),~n.extensions.indexOf(t)||n.extensions.push(t),t)}(ot(),Hn);function jn(){}"undefined"!=typeof window&&"function"==typeof window.matchMedia&&[b,O].forEach((function(e){window.matchMedia("(orientation: "+e+")").addListener((function(n){t.length&&t.forEach((function(t){n.matches&&t.emit(e)}))}))}));function zn(e,t){if(t.message)return t.message;if(t.stack)return t.stack;const n=t.code||-1,r=fn(n);return e.i18n("media_errors."+n,r)}const Vn=()=>!0===(navigator||{}).onLine;function Qn(e){try{return"https:"===location.protocol&&"http:"==function(e){const t=document.createElement("a");return t.href=e,t}(e).protocol}catch(e){return!1}}function Kn(e,t,n){const r=n.togglePlay;n.on("error",(function(e){const t=e.data||n.error,o=function(){var e;return"Error: %s\n"+(null===(e=(new Error).stack)||void 0===e?void 0:e.split("\n").slice(2).join("\n"))}();setTimeout((function(){const i=Me(n,L);if(e.defaultPrevented||!i||n.root.querySelector("#qul_error"))return;if("AbortError"==t.name)return;n.setState("is-error",!0),n.togglePlay=jn;const s=function(e,t){return{code:"http:0"===t.code?Xn(e):t.code,message:zn(e,t)}}(n,t);console.error(o,s.message);let a=Me(n,"flowplayer-error");a||(a=me(n,"flowplayer-error"),i.append(a)),Ke(a,"error",{data:t,formatted_data:s}),n.once(m,()=>{Yn(n,r)})}))})),n.on(N,()=>Yn(n,r))}function Yn(e,t){const n=Me(e,"flowplayer-error");e.togglePlay=t,e.opt("retry")&&e.setState(ee,!0),e.setState("is-error",!1),null==n||n.remove()}function Xn(e){return Qn(e.original_src)?{code:pn.MIXED_CONTENT}:Vn()?{code:pn.MEDIA_ERR_NETWORK}:Vn()?{code:pn.UNKNOWN}:{code:pn.NO_INTERNET}}var $n=Object.freeze({__proto__:null,NO_FULLSCREEN:1,NO_VOLUME_CONTROL:2,NO_MUTE:4,LOGO_ON_RIGHT:8,USE_DRAG_HANDLE:16,USE_PLAY_2:32,USE_PLAY_3:64,USE_THIN_CONTROLBAR:128,NO_TITLE:256,NO_DESCRIPTION:512,NO_CONTROLS:1024,NO_DURATION:2048,NO_HEADER:4096,AUDIO_ONLY:8192,NO_TOUCH_ZONES:16384,LOGO_ON_BOTTOM:32768});function Zn(e,t,n){let r=()=>document.fullscreenElement,o="fullscreenchange";if(!Element.prototype.requestFullscreen){const e=Element.prototype,t=document;e.webkitRequestFullScreen&&(e.requestFullscreen=e.webkitRequestFullScreen,t.fullscreenEnabled=!0),t.webkitCancelFullScreen&&(document.exitFullscreen=t.webkitCancelFullScreen),o="webkit"+o,r=()=>t.webkitCurrentFullScreenElement}const s=()=>n.getFullsceenTarget?n.getFullsceenTarget():t;n.toggleFullScreen=function(e,t){if(n.ios_fullscreen_disabled)return;if("boolean"!=typeof e&&(e=!n.hasState("is-fullscreen")),Jn(n)&&(e?function(e,t){e.getAttribute("playsinline")&&e.removeAttribute("playsinline");e.getAttribute("webkit-playsinline")&&e.removeAttribute("webkit-playsinline");t||e.webkitEnterFullScreen()}(n,t):function(e,t){e.getAttribute("playsinline")||e.setAttribute("playsinline","");e.getAttribute("webkit-playsinline")||e.setAttribute("webkit-playsinline","");t||e.webkitExitFullScreen();e.togglePlay(!1),e.hasState(ie)||e.setState(ie,!0)}(n,t)),!document.fullscreenEnabled)return;const o=s();if(e)return o.requestFullscreen();r()===o&&document.exitFullscreen()},Jn(n)&&(n.ios_fullscreen_disabled=!0,n.once("beforeplay",(function(){n.ios_fullscreen_disabled=!1})),n.on(["webkitendfullscreen","webkitbeginfullscreen"],e=>{const t="webkitbeginfullscreen"===e.type;n.setState("is-fullscreen",t).emit(t?u:d).toggleFullScreen(t,!0)})),setTimeout(()=>{const e=s();e.addEventListener(o,(function(){const t=r(),o=t===e||t==n;n.emit(o?u:d),n.setState("is-fullscreen",o)}))},0),!1!==e.doubleclick&&t.addEventListener(i,(function(e){var t;e.target&&(null===(t=e.target)||void 0===t?void 0:t.classList.contains("fp-ui"))&&n.toggleFullScreen()}))}function Jn(e){return!document.fullscreenEnabled&&"function"==typeof e.webkitEnterFullScreen&&"function"==typeof e.webkitExitFullScreen}function er(e,t,n){if(!n.reaper)return;const r=document.createDocumentFragment(),o=me(n,L),i=me(n,k);t.append(i),r.append(o),n.reaper.set("ui",o),~t.className.indexOf("use-play-")||t.classList.add("use-play-1"),function(e,t,n){const r=Fe("fp-footer");t.append(r),n.on(A,(function(e){var t,n;const o=null===(t=e.data)||void 0===t?void 0:t.description,i=null===(n=e.data)||void 0===n?void 0:n.title;if(r.innerHTML="","string"==typeof i){const e=Fe("fp-title");e.innerText=i,r.append(e)}if("string"==typeof o){const e=o.split(" "),t=Fe("fp-desc");for(t.innerText=e.join(" "),r.append(t);e.length>1&&t.scrollHeight>t.offsetHeight;)e.pop(),t.innerText=e.join(" ")+"..."}}))}(0,t,n),Kn(0,0,n),t.appendChild(r),[s,a].forEach(e=>{t.addEventListener(e,(function(e){n.setState("is-hovered",e.type==s),n.setState("is-accessibility",!1)}))}),Zn(e,t,n),n.on("volumechange",(function(){const e=0==n.volume||n.muted;n.muted=e,n.setState("is-muted",e),n._storage.setItem("mute",e.toString())})),"true"==n._storage.getItem("mute")&&(n.muted=!0,n.setState("is-muted",n.muted));const u=n._storage.getItem("volume");u&&!isNaN(Number(u))&&(n.volume=Number(u)),n.emit("volumechange"),n.on("dvr/window",t=>{e.live&&(n.live_state.dvr=n.seekable.length>0&&function(e,t,n){if(0==t)return!0;const r=_t(e,n);return r.head-r.tail>=t}(n,e.seconds_to_dvr||60,t.detail),n.live_state.dvr_window=t.detail)}),n.on("live",()=>{const e=setInterval(()=>{if(n.opts.live&&!n.hasState("is-error")&&0!=n.reaper||clearInterval(e),0==n.seekable.length)return;const t=function(e){const t=e.currentTime,n=_t(e);return{progress:Math.min(100,Math.max(0,(t-n.tail)/(n.head-n.tail)*100)),is_live:t-n.head>=-10}}(n);n.hasState(te)==t.is_live&&n.setState(te,!t.is_live),n.live_state.dvr&&n.emit("dvr",t.progress)},200)}),n.on(p,(function(){n.setOpts({live:gt(n)})})),n.on("durationchange",(function(e){const t=gt(n),r=t?vt(n):e.data||n.duration;isNaN(r)||n.setOpts({live:t,duration:r})})),n.on(["playlist/advance","src"],t=>{if(n.setState("is-autoplay",!!e.autoplay),n.root.classList.contains("is-livecountdown"))return tr(n,e);(n.currentSrc||n.srcObject)&&("src"===t.type&&["is-playlist",ae].some(e=>n.root.classList.contains(e))||tr(n,e))}),n.on(A,(function(n){var r,o;e.seekable=void 0===(null===(r=null==n?void 0:n.data)||void 0===r?void 0:r.seekable)||n.data.seekable;const i=null===(o=n.data)||void 0===o?void 0:o.ui;if("number"!=typeof i)return;const s=t.classList;s.toggle("use-play-1",!(32&i||64&i)),s.toggle("use-play-2",(32&i)>0),s.toggle("use-play-3",(64&i)>0),s.toggle("use-thin-controlbar",(128&i)>0),s.toggle("no-title",(256&i)>0),s.toggle("no-description",(512&i)>0),s.toggle("logo-on-right",(8&i)>0),s.toggle("logo-on-bottom",(32768&i)>0),s.toggle("use-drag-handle",(16&i)>0),s.toggle("no-controls",(1024&i)>0),s.toggle("no-duration",(2048&i)>0),s.toggle("no-header",(4096&i)>0),s.toggle("no-mute",(4&i)>0),s.toggle("no-volume",(2&i)>0),s.toggle("no-fullscreen",(1&i)>0),s.toggle("no-touch-zones",(16384&i)>0)}));let d=null;[l,c].forEach(e=>o.addEventListener(e,(function(e){n.hasState("is-touch-device")&&e.type===l||("number"==typeof d&&clearTimeout(d),n.setState("is-hovered",!0),d=0==n.paused&&setTimeout((function(){n.setState("is-hovered",!1)}),2e3))})))}function tr(e,t){delete t.live_start_time,e.setOpts({live:!1}),e.live_state.dvr=void 0,e.live_state.dvr_window=void 0,delete t.live,delete t.poster,delete t.duration,delete t.title,delete t.description,"metadata"in t&&delete t.metadata}function nr(e,t,n){if(dt.from_token(e.token||"").is_granted(dt.permissions.NO_METERING))return;lt.id(e.token||"")&&n.once(_,async()=>await async function e(t,n){const r=lt.id(n||"");t.once("src",()=>{t.once(_,()=>e(t,n))});if(401==(await fetch("https://pmi.flowplayer.com/in",{method:"POST",body:JSON.stringify({token_id:r,factor:1,rnd:Math.random().toString(36).substring(2)})})).status)return t.emit("error:fatal",{reason:"token",details:"The token online validation failed"})}(n,e.token||""))}var rr={ads:{ad:"Ad",ads:"Ads",advertisement:"Advertisement"},audio:{button_txt:"Audio",menu_title:"Audio"},core:{exit_fullscreen:"Exit fullscreen",fullscreen:"Fullscreen",mute:"Mute",pause:"Pause",play:"Play",unmute:"Unmute",volume:"Volume"},ovp:{starting_in:"Countdown"},playlist:{cancel:"Cancel",up_next:"Up next"},qsel:{menu_title:"Quality"},share:{clipboard_failure:"Access to clipboard failed",clipboard_success:"The text is now on your clipboard",embed:"Embed",link:"Link",menu_title:"Share"},speed:{menu_title:"Speed"}};class I18n{init(e,t,n){n.reaper&&n.reaper.set("translations",He(I18n,e,"en"))}}I18n.pluginName="i18n",I18n.en=rr;class FlowplayerComponent extends HTMLElement{constructor(e){super(),this.player=e}}class FlowplayerLogo extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-logo");const t={logo:""};e.on(A,e=>{var n;const r=t.logo,o=(null===(n=null==e?void 0:e.data)||void 0===n?void 0:n.logo)||"";r!=o&&(t.logo=o,this.set_logo(o,e.detail.logo_alt_text,e.detail.logo_href))})}set_logo(e,t,n){this.innerHTML="";const r=document.createElement("img");if(!e)return;if(r.src=e,t&&(r.alt=t),!n)return this.append(r);const o=document.createElement("a");o.href=n,o.append(r),this.append(o)}}class FlowplayerHeaderDuration extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-duration"),e.on(A,e=>{var t;const n=(null===(t=null==e?void 0:e.data)||void 0===t?void 0:t.duration)||NaN;this.innerText=isFinite(n)?qe(n):""})}}const or={name:"fp-fullscreen",translation_key:"core.fullscreen"},ir={name:"fp-fullscreen-exit",translation_key:"core.exit_fullscreen"},sr={name:"fp-play",translation_key:"core.play"},ar={name:"fp-pause",translation_key:"core.pause"},lr={translation_key:"core.mute",name:"fp-volume-mute-unmute"},cr={translation_key:"core.play",name:"fp-small-play"},ur={translation_key:"core.pause",name:"fp-small-pause"},dr={name:"fp-fast-forward"},pr={name:"fp-rewind"};class FlowplayerIcon extends FlowplayerComponent{constructor(e,t){super(e),this.classList.add("fp-icon",t.name),t.title&&this.setAttribute("title",t.title),t.title&&this.setAttribute("aria-label",t.title),t.translation_key&&this.setAttribute("aria-label",e.i18n(t.translation_key)),this.setAttribute("tabindex","0"),this.setAttribute("focusable","true")}}document.addEventListener(o,(function(e){this.active_menu&&!e.composedPath().includes(this.active_menu)&&(Array.from(document.querySelectorAll(".fp-engine")).forEach(e=>{var t;const n=e.root.querySelector("details[open].fp-menu-container");n&&(n.open=!1,null===(t=n.querySelector("summary"))||void 0===t||t.removeAttribute("aria-expanded"),e.root.classList.toggle("has-menu-opened",!1))}),this.active_menu=void 0)}));const fr={passive:!0};var hr;function mr(e,t){let n=0,r=-1,o=-1;const i=Math.random().toString(36).replace(/[^a-z]+/g,"").substr(0,5),s=e.classList;e.id=i,s.remove(hr.GRABBING),s.remove(hr.TOUCHING);const a=t.onseek||jn,u=t.onstart||jn,d=t.onend||jn,p=t.onmouse||jn,f=t.ontouch||jn,h=t.ontouchend||jn;function m(t){!function(){const t=e.getBoundingClientRect();n=t.left,r=t.width}();let o=(function(e){return"function"==typeof window.TouchEvent&&e instanceof TouchEvent}(t)?t.changedTouches[0].pageX:t.pageX)-n;return o>r&&(o=r),o<0&&(o=0),o/r*100}function y(t){const n=m(t);n!=o&&(a(e,n),o=n)}return e.addEventListener("touchstart",(function(t){yr(e,t)&&(s.add(hr.TOUCHING),_r(e.parentElement)&&(s.add(hr.GRABBING),f(e,m(t)),u(e,m(t)),y(t)))}),fr),e.addEventListener(c,(function(t){y(t),p(e,m(t))}),fr),e.addEventListener("touchend",(function(t){setTimeout((function(){s.remove(hr.TOUCHING)}),500),yr(e,t)&&(s.remove(hr.GRABBING),h(e,m(t)),d(e,m(t)),r=0)}),fr),e.addEventListener("touchcancel",(function(){s.remove(hr.GRABBING,hr.TOUCHING),r=0}),fr),e.addEventListener("mousedown",(function(t){s.contains(hr.TOUCHING)||(document.addEventListener(l,y),s.add(hr.GRABBING),u(e,m(t)),t.preventDefault(),y(t))})),e.addEventListener(l,(function(t){s.contains(hr.TOUCHING)||p(e,m(t))})),document.addEventListener("mouseup",(function(t){s.contains(hr.TOUCHING)||(document.removeEventListener(l,y),s.contains(hr.GRABBING)&&(s.remove(hr.GRABBING),d(e,m(t)),r=0))})),e}function yr(e,t){const n=t.target;return!!n&&(n&&!n.closest(e.id)||!_r(e.parentElement)||!e.classList.contains(hr.TOUCHING))}function _r(e){if(!e)return!1;const t=window.getComputedStyle(e);return"0"!==t.width&&"0"!==t.height&&"0"!==t.opacity&&"none"!==t.display&&"hidden"!==t.visibility}!function(e){e.GRABBING="has-grab",e.TOUCHING="has-touch"}(hr||(hr={}));class FlowplayerVolumeBar extends FlowplayerComponent{constructor(e){super(e),this.className="fp-volume";const t=e.root.classList,n=t.contains("is-tiny")?6:t.contains("is-small")?8:10,r=Array.from({length:n}).map(()=>{const e=document.createElement("i");return e.className="fp-tick",e});this.append(...r),mr(this,{onseek:(t,n)=>{n>0&&(e.muted=!1,e._storage.removeItem("mute")),e._storage.setItem("volume",(e.volume=n/100).toString()),this.adjustVolumeSlider(e.volume)}}),this.setAttribute("tabindex","0"),this.setAttribute("role","slider"),this.setAttribute("aria-valuemin","0"),this.setAttribute("aria-valuemax","1"),this.setAttribute("aria-label",e.i18n("core.volume","volume")),e.on("volumechange",()=>{const t=0==e.volume||e.muted;t&&this.adjustVolumeSlider(0);const n=e.opt("ui");this.classList.contains(hr.GRABBING)||t&&"number"==typeof n&&(4&n)>0||this.adjustVolumeSlider(e.volume)})}adjustVolumeSlider(e){this.setAttribute("aria-valuenow",e.toString()),this.setAttribute("aria-valuetext",Math.round(100*e)+"%");const t=Array.from(this.querySelectorAll(".fp-tick")),n=Math.round(e*t.length);t.forEach((e,t)=>{e.classList.toggle("fp-color",t<n)})}}class FlowplayerTimelineBar extends FlowplayerComponent{constructor(e){let t;super(e),this.bufferEle=Fe("fp-buffer"),this.progress=Fe("fp-progress","fp-color"),this.tooltipEle=Fe("fp-timestamp"),this.proposedSeekBar=Fe("fp-hover"),this.dragger=Fe("fp-dragger","fp-color"),this.classList.add("fp-timeline","fp-bar"),this.tooltipEle.style.display="none",this.setAttribute("role","slider"),this.setAttribute("tabindex","0"),this.setAttribute("aria-label",e.i18n("core.timeline_aria_label","Seek slider")),this.setAttribute("aria-valuenow","0"),this.progress.append(this.dragger),this.append(this.bufferEle,this.progress,this.proposedSeekBar,this.tooltipEle);const n=requestAnimationFrame;let r=void 0;const o=()=>{var n;0==e.reaper||t.live||(n=e,this.progress.style.width=n.currentTime/n.duration*100+"%",r=void 0,e.paused||this.classList.contains(hr.GRABBING)||r||(r=setTimeout(o,200)))},i=()=>!!this.player.opt("seekable",!0)&&!isNaN(this.player.duration);mr(this,{onseek:(n,r)=>{if(i())switch(!!t.live){case!0:wt(r,e,this.tooltipEle);break;case!1:!function(e,t,n){const r=t.duration*(e/100);if(t.disabled&&r>t.currentTime)return!1;n.style.width=e+"%",t.currentTime=r}(r,e,this.progress),ht(this.tooltipEle,r)}},onstart:()=>{i()&&(e.emit("timeline/gesture/start"),!e.hasState("is-casting")&&e.setState($,!0),t.live||function(e){e.style.display="block"}(this.tooltipEle))},onend:function(r,i){n(o),0!=t.seekable&&t.live&&bt(i,e)},ontouchend:()=>{t.live?Ot(this.proposedSeekBar,this.tooltipEle):yt(this.proposedSeekBar,this.tooltipEle),setTimeout(()=>e.emit("timeline/gesture/end"),0)},onmouse:(n,r)=>{if(i()&&(e.emit("timeline/gesture/move",{percent:r}),!this.classList.contains(hr.GRABBING)))switch(!!t.live){case!0:!function(e,t){t.style.width=e+"%"}(r,this.proposedSeekBar),wt(r,e,this.tooltipEle);break;case!1:!function(e,t){t.style.width=e+"%"}(r,this.proposedSeekBar),function(e,t,n){isNaN(e)||isNaN(t.duration)||(ht(n,e),n.textContent=qe(e/100*t.duration))}(r,e,this.tooltipEle)}}}),e.on(A,(function(e){e.data&&(t=e.data)})),e.on(_,()=>n(o)),e.on(h,()=>{0==e.reaper||t.live||mt(e,this.bufferEle)}),e.on("dvr",e=>{this.progress.style.width=e.detail+"%"}),e.on("timeupdate",()=>{0!=e.reaper&&(n(o),this.setAttribute("aria-valuenow",e.currentTime+""),this.setAttribute("aria-valuetext",Math.round(e.currentTime)+" "+e.i18n("core.seconds","Seconds")),t.live||mt(e,this.bufferEle))}),e.on(p,()=>{0!=e.reaper&&(t.live||mt(e,this.bufferEle))}),e.on("durationchange",t=>{if(0==e.reaper)return;const n=gt(e)?vt(e):t.data||e.duration;isNaN(n)||(this.setAttribute("aria-valuemax",n+""),this.setAttribute("aria-valuemin","0"))}),this.addEventListener(a,()=>{e.emit("timeline/gesture/end"),t.live?Ot(this.proposedSeekBar,this.tooltipEle):yt(this.proposedSeekBar,this.tooltipEle)})}}class FlowplayerLiveStatus extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-live-status");const t=Fe("fp-live-text"),n=Fe("fp-live-indicator","fp-color");t.textContent="live",this.setAttribute("tabindex","0"),this.setAttribute("role","button"),this.append(n,t),this.addEventListener(o,(function(){Tt(e)}))}}class FlowplayerDuration extends FlowplayerComponent{constructor(e){let t;super(e),this.classList.add("fp-duration"),this.setAttribute("aria-hidden","true"),e.on(A,n=>{if(0==e.reaper||!n.data)return;t=n.data;const r=gt(e)?NaN:n.data.duration||0;if(isNaN(r)||r>=Number.MAX_SAFE_INTEGER)return this.style.display="none";this.style.display="inline-block",this.innerText=qe(r)}),e.on(p,()=>{var n,r;0==e.reaper||t.live||(r=this,(n=e).duration&&(r.innerText=qe(n.duration)))})}}class FlowplayerElapsedTime extends FlowplayerComponent{constructor(e){let t;super(e),this.classList.add("fp-elapsed"),this.innerText=qe(0),this.setAttribute("aria-hidden","true"),e.on(A,e=>{e.data&&(t=e.data)}),e.on("timeupdate",()=>{var n;0!=e.reaper&&(t.live?(n=e,this.innerText=qe(n.currentTime)):function(e,t){t.innerText=qe(e.currentTime)}(e,this))})}}class FlowplayerControlButtons extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-btns","fp-small-switch");const t=me(e,"flowplayer-small-pause-icon"),n=me(e,"flowplayer-small-play-icon");t.addEventListener("click",(function(){e.togglePlay(),setTimeout((function(){n.focus&&n.focus()}),100)})),n.addEventListener("click",(function(){e.togglePlay(),setTimeout((function(){t.focus&&t.focus()}),100)})),this.append(t,n)}}class FlowplayerLeftRightZone extends FlowplayerComponent{constructor(e,t){super(e),this.classList.add(t);const n=this.classList.contains("fp-left-zone")?-1:1,r=document.createElement("span"),o=me(e,this.classList.contains("fp-left-zone")?B:"flowplayer-fast-forward-icon");o.removeAttribute("tabindex"),r.classList.add("fp-zone-seconds"),this.append(r,o);e.on(w,()=>{r.innerText=""}),e.on("seek:queued",e=>{const t=e.data;if(!t)return;if("number"!=typeof t.offset)return;const n=t.offset;if(0==n)return this.reset_zone();n>0&&this.classList.contains("fp-right-zone")||n<0&&!this.classList.contains("fp-right-zone")?this.render_zone_state(n):this.reset_zone()}),e.on("seek:cancel",()=>{this.reset_zone()}),this.reset_zone(),this.addEventListener("touchend",(function(t){isNaN(e.duration)||isNaN(e.currentTime)||16384&e.opt("ui")||e.hasState(ne)||!e.hasState("will-seek")&&!e.hasState(ie)||e.enqueueSeek(5*n)&&(t.stopPropagation(),t.preventDefault())}))}reset_zone(){const e=this.querySelector(".fp-zone-seconds");e&&(e.innerText="")}render_zone_state(e){const t=this.querySelector(".fp-zone-seconds");t&&(t.innerText=Math.abs(e)+"")}}class FlowplayerError extends FlowplayerComponent{constructor(e){super(e),this.className="fp-error",this.message=document.createElement("p"),this.message.className="error-message",this.append(this.message),this.addEventListener("error",e=>{const t=e.detail;t&&(this.message.textContent=t.formatted_data.message)})}}class FlowplayerHeaderLeftRight extends FlowplayerComponent{constructor(e,t,...n){super(e),this.className=t;const r=e.createComponents(...n);this.append(...r),"fp-left"!==t&&r.forEach(t=>{t.addEventListener(o,()=>e.toggleFullScreen())})}}class FlowplayerMiddleWait extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-wait"),Array(...Array(4)).map((e,t)=>t).forEach(()=>{this.append(document.createElement("b"))})}}class FlowplayerMiddleZone extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-middle-zone");const t=e.createComponents(q,"flowplayer-middle-buttons");this.append(...t)}}class FlowplayerMiddleButtons extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-switch"),[G,H].forEach(t=>{const n=me(e,t);n.removeAttribute("tabindex"),this.append(n)})}}class FlowplayerVolumeControl extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-volume-control");const t=me(e,j);this.append(t),!n().ios&&this.append(me(e,x)),t instanceof FlowplayerIcon&&t.addEventListener(o,(function(){e.toggleMute()}))}}class FlowplayerHeader extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-header"),this.append(...e.createComponents("flowplayer-header-left-zone","flowplayer-header-right-zone")),e.reaper&&e.reaper.set("header",this)}}class FlowplayerControls extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-controls","fp-togglable"),this.append(...e.createComponents("flowplayer-control-buttons",D,U,M,"flowplayer-control-duration","flowplayer-volume-control"))}}class FullscreenIcon extends FlowplayerIcon{constructor(e,t){super(e,t),this.setAttribute("role","button")}}class FlowplayerMiddle extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-middle"),this.append(...e.createComponents("flowplayer-middle-left-zone",W,"flowplayer-middle-right-zone")),this.setAttribute("tabindex","0"),e.reaper&&e.reaper.set("middle",this),this.handleClick(e),this.handleTouch(e),e.once("beforeplay",()=>{this.removeAttribute("tabindex"),this.removeAttribute("role"),this.removeAttribute("aria-label")})}handleClick(e){[o,i].forEach(t=>this.addEventListener(t,(function(n){if(!(n.defaultPrevented||e.root.classList.contains("is-endscreen")||t===i&&e.root.classList.contains("no-fullscreen")))return n.preventDefault(),e.emit(n.type),!1}))),e.on(o,(function(t){setTimeout((function(){t.defaultPrevented||e.togglePlay()}),0)})),e.on(i,(function(t){setTimeout((function(){t.defaultPrevented||e.toggleFullScreen()}),0)}))}handleTouch(e){let t=!1;this.addEventListener("touchend",(function(t){t.cancelable&&!e.hasState("is-endscreen")&&(t.preventDefault(),e.emit(t.type,{source:t}))})),e.on("touchend",(function(n){setTimeout((function(){if(n.defaultPrevented)return;if(e.ended)return e.togglePlay(!0);const r=e.hasState(X);t&&clearTimeout(t),(r||e.hasState(ie))&&(e.hasState(ie)&&(e.setState(ie,!1),e.setState("is-hovered",!1)),e.togglePlay(),r)||(e.setState(ie,!0),e.paused||(t=setTimeout((function(){t=!1,e.setState(ie,!1),e.setState("is-hovered",!1)}),2e3)))}),0)}))}}class FlowplayerUi extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-ui"),this.append(...e.createComponents(F,P,C))}}class Default{constructor(e){ye(e,L,FlowplayerUi),ye(e,"flowplayer-error",FlowplayerError),ye(e,C,FlowplayerControls),ye(e,D,FlowplayerLiveStatus),ye(e,"flowplayer-control-duration",FlowplayerDuration),ye(e,M,FlowplayerTimelineBar),ye(e,U,FlowplayerElapsedTime),ye(e,x,FlowplayerVolumeBar),ye(e,"flowplayer-volume-control",FlowplayerVolumeControl),ye(e,"flowplayer-control-buttons",FlowplayerControlButtons),ye(e,F,FlowplayerHeader),ye(e,k,FlowplayerLogo),ye(e,"flowplayer-header-duration",FlowplayerHeaderDuration),ye(e,"flowplayer-header-left-zone",class extends FlowplayerHeaderLeftRight{constructor(e){super(e,"fp-left","flowplayer-header-duration")}}),ye(e,"flowplayer-header-right-zone",class extends FlowplayerHeaderLeftRight{constructor(e){super(e,"fp-right fp-togglable","flowplayer-fullscreen-enter-icon","flowplayer-fullscreen-exit-icon")}}),ye(e,P,FlowplayerMiddle),ye(e,W,FlowplayerMiddleZone),ye(e,q,FlowplayerMiddleWait),ye(e,"flowplayer-middle-buttons",FlowplayerMiddleButtons),ye(e,"flowplayer-middle-right-zone",class extends FlowplayerLeftRightZone{constructor(e){super(e,"fp-right-zone")}}),ye(e,"flowplayer-middle-left-zone",class extends FlowplayerLeftRightZone{constructor(e){super(e,"fp-left-zone")}}),ye(e,"flowplayer-small-play-icon",class extends FlowplayerIcon{constructor(e){super(e,cr),this.setAttribute("role","button")}}),ye(e,"flowplayer-small-pause-icon",class extends FlowplayerIcon{constructor(e){super(e,ur),this.setAttribute("role","button")}}),ye(e,G,class extends FlowplayerIcon{constructor(e){super(e,sr),this.setAttribute("role","button")}}),ye(e,H,class extends FlowplayerIcon{constructor(e){super(e,ar),this.setAttribute("role","button")}}),ye(e,"flowplayer-fullscreen-enter-icon",class extends FullscreenIcon{constructor(e){super(e,or)}}),ye(e,"flowplayer-fullscreen-exit-icon",class extends FullscreenIcon{constructor(e){super(e,ir)}}),ye(e,"flowplayer-fast-forward-icon",class extends FlowplayerIcon{constructor(e){super(e,dr)}}),ye(e,B,class extends FlowplayerIcon{constructor(e){super(e,pr)}}),ye(e,j,class extends FlowplayerIcon{constructor(e){super(e,lr),this.classList.add("fp-volumebtn"),this.setAttribute("role","switch"),e.on("volumechange",()=>{const t=0==e.volume||e.muted;this.setAttribute("aria-label",e.i18n("core.muted","Muted")),this.setAttribute("aria-checked",t?"true":"false")})}})}init(e,t,n){var r;nr(e,0,n),er(e,t,n),r=n,"undefined"!=typeof window&&"ontouchstart"in window&&r.setState("is-touch-device",!0),r.setState("is-accessibility",!1)}}return Default.pluginName="default",wn.extensions.unshift.apply(wn.extensions,[I18n,Bn,Default]),Object.assign(wn,{ui:$n,i18n:I18n})}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).flowplayer=t()}(this,(function(){"use strict";const e=[],t=[];function n(){const e="undefined"!=typeof document&&"undefined"!=typeof window,t=e?navigator.userAgent:"",n=/iP(hone|od)/i.test(t)&&!/iPad/.test(t)&&!/IEMobile/i.test(t),r=/Android/.test(t)&&!/Firefox/.test(t),o=/^((?!chrome|android).)*safari/i.test(t),i=/chrome|crios/i.test(t)&&!/opr|opera|chromium|edg|ucbrowser|googlebot/i.test(t),a=/firefox|fxios/i.test(t)&&!/seamonkey/i.test(t),s=/edg/i.test(t),l=/opr|opera/i.test(t),c=/SamsungBrowser/.test(t),u=c&&/SMART-TV/.test(t);return{controls:!n,video:function(t){return e&&document.createElement("video").canPlayType(t)},lang:e&&window.navigator.language,android:r,iphone:n,safari:o,edge:s,opera:l,chrome:i,firefox:a,ios:e&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream,samsung:c,samsung_tv:c&&u,touch:"ontouchstart"in window,tizen:"tizen"in window,webOS:"webos"in window}}const r="retry",o="click",i="dblclick",a="mouseenter",s="mouseleave",l="mousemove",c="touchmove",u="fullscreenenter",d="fullscreenexit",p="loadedmetadata",f="loadeddata",h="progress",m="loadstart",y="pause",E="playing",g="waiting",v="canplay",_="ended",w="seeked",S="seeking",b="reap",N="landscape",T="portrait",k="recover",A="config",O="content:loadstart";var I=Object.freeze({__proto__:null,MOUNT:"mount",RETRY:r,ERROR:"error",CONTEXT_MENU:"contextmenu",CLICK:o,DBL_CLICK:i,KEYUP:"keyup",KEYDOWN:"keydown",LOAD:"load",MOUSE_ENTER:a,MOUSE_LEAVE:s,MOUSE_UP:"mouseup",MOUSE_DOWN:"mousedown",MOUSE_MOVE:l,TOUCH_START:"touchstart",TOUCH_MOVE:c,TOUCH_END:"touchend",TOUCH_CANCEL:"touchcancel",RESIZE:"resize",SCROLL:"scroll",FULLSCREEN_ENTER:u,FULLSCREEN_EXIT:d,FULLSCREEN_CHANGE:"fullscreenchange",METADATA:p,DATA:f,PROGRESS:h,TIME_UPDATE:"timeupdate",LOAD_START:m,VOLUME_CHANGE:"volumechange",PAUSE:y,PLAYING:E,PLAY:"play",WAITING:g,CAN_PLAY:v,ENDED:_,SEEKED:w,SEEKING:S,DURATION_CHANGE:"durationchange",VIEW_ENTER:"viewenter",VIEW_LEAVE:"viewleave",SOURCE:"src",REAP:b,QUALITIES:"qualities",QUALITY_CHANGE:"qualitychange",VIDEO_TRACKS:"videoTracks",SET_QUALITY:"quality:set",VIDEO_TRACK_SELECT:"tracks:video:select",RECOMMENDATIONS_READY:"recommendationsready",LANDSCAPE:N,PORTRAIT:T,DVR:"dvr",LIVE:"live",RECOVER:k,SEEK_QUEUED:"seek:queued",SEEK_CANCEL:"seek:cancel",PLUGIN_REGISTERED:"plugin:registered",REMOTE_SESSION_STARTED:"remotesession:started",REMOTE_SESSION_ENDED:"remotesession:ended",INTERSECTIONCHANGE:"intersectionchange",WEBKIT_NEEDKEY:"webkitneedkey",RENDER_PLUGIN:"renderplugin",AUDIO_ONLY_SOURCE:"audioonlysource",NON_RECOVERABLE_ERROR:"error:fatal",CONFIG:A,STATE:"state",BEFORE_PLAY:"beforeplay",BEFORE_PAUSE:"beforepause",CONTENT_REAL_LOAD_START:O,CUEPOINTS:"cuepoints",CUEPOINT_START:"cuepointstart",CUEPOINT_END:"cuepointend",FLOWPLAYER_ERROR:"flowplayer:error"});const R="flowplayer-ui",L="flowplayer-logo",C="flowplayer-control",P="flowplayer-live-status",D="flowplayer-elapsed-time",M="flowplayer-timeline-bar",F="flowplayer-volume-bar",U="flowplayer-header",x="flowplayer-middle",H="flowplayer-middle-zone",W="flowplayer-wait",q="flowplayer-play-icon",B="flowplayer-pause-icon",G="flowplayer-rewind-icon",V="flowplayer-volume-icon";var K=Object.freeze({__proto__:null,SUBTITLES_MENU:"flowplayer-subtitles-menu",SHARE_MENU:"flowplayer-share-menu",SPEED_MENU:"flowplayer-speed-menu",QUALITY_MENU:"flowplayer-quality-menu",AUDIO_MENU:"flowplayer-audio-menu",VIDEO_MENU:"flowplayer-video-menu",UI:R,LOGO:L,CONTROL:C,CONTROL_BUTTONS:"flowplayer-control-buttons",LIVE_STATUS:P,ELAPSED:D,TIMELINE:M,CHAPTERS_TIMELINE:"flowplayer-chapters-timeline-bar",CONTROL_DURATION:"flowplayer-control-duration",VOLUME_CONTROL:"flowplayer-volume-control",VOLUME_BAR:F,HEADER:U,HEADER_LEFT_ZONE:"flowplayer-header-left-zone",HEADER_RIGHT_ZONE:"flowplayer-header-right-zone",HEADER_DURATION:"flowplayer-header-duration",MIDDLE:x,MIDDLE_ZONE:H,WAIT:W,MIDDLE_BUTTONS:"flowplayer-middle-buttons",MIDDLE_LEFT_ZONE:"flowplayer-middle-left-zone",MIDDLE_RIGHT_ZONE:"flowplayer-middle-right-zone",ENDSCREEN_INTERSTITIAL:"flowplayer-endscreen-interstitial",ENDSCREEN_UP_NEXT:"flowplayer-endscreen-up-next",ENDSCREEN_GRID:"flowplayer-endscreen-grid",PLAYLIST_INTERSTITIAL:"flowplayer-playlist-interstitial",AIRPLAY_ICON:"flowplayer-airplay-icon",CHROMECAST_ICON:"flowplayer-chromecast-icon",SMALL_PLAY_ICON:"flowplayer-small-play-icon",SMALL_PAUSE_ICON:"flowplayer-small-pause-icon",PLAY_ICON:q,PAUSE_ICON:B,FULLSCREEN_ENTER_ICON:"flowplayer-fullscreen-enter-icon",FULLSCREEN_EXIT_ICON:"flowplayer-fullscreen-exit-icon",SKIP_NEXT_ICON:"flowplayer-skip-next-icon",SKIP_PREVIOUS_ICON:"flowplayer-skip-previous-icon",FAST_FORWARD_ICON:"flowplayer-fast-forward-icon",REWIND_ICON:G,SHARE_ICON:"flowplayer-share-icon",SUBTITLES_MENU_ICON:"flowplayer-subs-menu-icon",MENU_BACK_ICON:"flowplayer-menu-back",VOLUME_ICON:V,MUTE_ICON:"flowplayer-mute-icon",UNMUTE_ICON:"flowplayer-unmute-icon",CLOSE_ICON:"flowplayer-close-icon",FACEBOOK_ICON:"flowplayer-facebook-icon",TWITTER_ICON:"flowplayer-twitter-icon",LINK_ICON:"flowplayer-link-icon",EMBED_ICON:"flowplayer-embed-icon",LIVE_COUNTDOWN:"flowplayer-live-countdown",PLAYLIST_CONTROLS:"flowplayer-playlist-controls",THUMBNAILS_CAROUSEL:"flowplayer-thumbnails-carousel",ERROR_COMPONENT:"flowplayer-error",TV_MENU:"flowplayer-tv-menu",CUE_COMPONENT:"flowplayer-cue",SSAI_UI:"flowplayer-ssai-ui",SSAI_CONTROLS:"flowplayer-ssai-controls",SSAI_TIMELINE:"flowplayer-ssai-timeline",SSAI_INDICATOR:"flowplayer-ssai-indicator"});const j="is-playing",z="is-paused",Q="is-loaded",Y="is-loading",X="is-starting",$="is-seeking",Z="is-ended",J="is-live",ee="is-waiting",te="is-live-seeked",ne="no-timeline",re="will-play",oe="will-pause",ie="is-touched",ae="is-in-viewport",se="is-source-processing";var le=Object.freeze({__proto__:null,PLAYING:j,FULLSCREEN:"is-fullscreen",PAUSED:z,MUTED:"is-muted",LOADED:Q,LOADING:Y,STARTING:X,SEEKING:$,GRABBING:"is-grabbing",DISABLED:"is-disabled",SMALL:"is-small",TINY:"is-tiny",RTL:"is-rtl",TV:"is-tv",ENDED:Z,LIVE:J,ERRORED:"is-error",WAITING:ee,AUTOPLAY:"is-autoplay",SEAMLESS:"is-seamless",TOGGLING:"is-toggling",LIVE_SEEKED:te,NO_DVR:ne,HAS_POSTER:"has-poster",WILL_PLAY:re,WILL_PAUSE:oe,MENU_OPENED:"has-menu-opened",TOUCHED:ie,HOVERED:"is-hovered",TOUCH_DEVICE:"is-touch-device",WILL_SEEK:"will-seek",SEEKABLE:"is-seekable",IN_VIEWPORT:ae,NO_CONTROLS:"no-controls",DESTROYED:"is-destroyed",IS_SOURCE_PROCESSING:se});function ce(e){this.message=e}ce.prototype=new Error,ce.prototype.name="InvalidCharacterError";var ue="undefined"!=typeof window&&window.atob&&window.atob.bind(window)||function(e){var t=String(e).replace(/=+$/,"");if(t.length%4==1)throw new ce("'atob' failed: The string to be decoded is not correctly encoded.");for(var n,r,o=0,i=0,a="";r=t.charAt(i++);~r&&(n=o%4?64*n+r:r,o++%4)?a+=String.fromCharCode(255&n>>(-2*o&6)):0)r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(r);return a};var de=function(e){var t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:t+="==";break;case 3:t+="=";break;default:throw"Illegal base64url string!"}try{return function(e){return decodeURIComponent(ue(e).replace(/(.)/g,(function(e,t){var n=t.charCodeAt(0).toString(16).toUpperCase();return n.length<2&&(n="0"+n),"%"+n})))}(t)}catch(e){return ue(t)}};function pe(e){this.message=e}pe.prototype=new Error,pe.prototype.name="InvalidTokenError";var fe=function(e,t){if("string"!=typeof e)throw new pe("Invalid token specified");var n=!0===(t=t||{}).header?0:1;try{return JSON.parse(de(e.split(".")[n]))}catch(e){throw new pe("Invalid token specified: "+e.message)}};fe.InvalidTokenError=pe;const he=new Map,me=(e,t)=>new(((e,t)=>{const n=e.get(t);if(!n)throw new Error(`no flowplayer component with the name ${t} exists`);const r=window.customElements.get(t);if(!r)throw new Error(`no default flowplayer component with the name ${t} exists`);const o=window.customElements.get(n);return"function"!=typeof o?r:o})(e._customElements,t))(e),ye=(e,t,n)=>{window.customElements.get(t)||window.customElements.define(t,n),e.customElements.get(t)||e.customElements.set(t,t)};var Ee,ge;!function(e){e[e.LOW=1]="LOW",e[e.MEDIUM=2]="MEDIUM",e[e.HIGH=4]="HIGH"}(Ee||(Ee={})),function(e){e[e.OFF=0]="OFF",e[e.ON=1]="ON",e[e.AUDIO_REQUIRED=2]="AUDIO_REQUIRED"}(ge||(ge={}));const ve=e=>{return e.autoplay&&ge.AUDIO_REQUIRED&(!0===(t=e.autoplay)?ge.ON:!1===t?ge.OFF:t);var t};function _e(e,t,n){const r="boolean"==typeof n;if("boolean"!=typeof n&&(n=!!e.hasState(oe)||e.paused),function(e,t,n){const r=e.poll(t?"beforeplay":"beforepause",{forced:n});return r&&r.defaultPrevented}(e,n,r))return Promise.resolve();if(!n)return e.hasState(re)?(e.setState(oe,!0),e.setState(re,!1),Promise.resolve()):Promise.resolve(e.pause());if(0==e.reaper)return Promise.resolve();const o=e.reaper.get("__pending_play");return e.paused||o?o?(o.src!==Se(e.original_src)&&we(e),o):(function(e){return(0==e.networkState||0==e.readyState)&&e.currentSrc==Se(e.original_src)}(e)&&we(e),function(e){const t=e.hasState("is-autoplay"),n=t&&ve(e.opts);n&&(e.muted&&e.toggleMute(!1),0==e.volume&&(e.volume=1));t&&e.setState("is-autoplay",!1);return e.play().then(()=>{e.hasState(oe)&&e.togglePlay(!1)}).catch(r=>{if(console.warn(t?n?"[flowplayer/play] autoplay audio required\n%s":"[flowplayer/play] attempting muted autoplay\n%s":"",r.message,"\ninstance:",e),t&&!n)return e.muted=!0,e.play()})}(e)):(e.setState(oe,!1),!e.hasState(j)&&e.setState(re,!0),Promise.resolve())}function we(e){e.opts.is_native&&(e.hasState(Q)||(e.hasState(Y)||e.emit(O),e.setState(Y,!0),e.load()))}function Se(e){const t=document.createElement("a");return t.href=e,t.href}function be(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]])}return n}function Ne(e){const t=document.createElement("a");t.href=e;const n=t.pathname&&t.pathname.split(".");return n.length>1&&n[n.length-1]}function Te(e){switch(e){case"video/mpd":return"application/dash+xml";case"video/m3u8":return"application/x-mpegurl";default:return e}}const ke=e=>{var{src:t}=e,n=be(e,["src"]);return[Object.assign({src:t,type:t?Te("video/"+Ne(t)):""},n)]};function Ae(e){return ke({src:e})}function Oe(e){var{src:t,type:n}=e,r=be(e,["src","type"]);return t&&n?[Object.assign({src:t,type:n},r)]:n&&!t?[Object.assign({type:n},r)]:ke(Object.assign({src:t},r))}var Ie;function Re(e,t,n,r={safari:!1}){const o=function(e){return"string"==typeof e?Ae(e):Array.isArray(e)||"object"!=typeof e?e.reduce((function(e,t){return"string"==typeof t&&(t=Ae(t)),"object"!=typeof t||Array.isArray(t)||(t=Oe(t)),e.concat(t)}),[]):Oe(e)}(n);return function(e){[$,oe,re,j,z,Y,Q,te].forEach(t=>e.setState(t,!1)),e.setState(X,!0)}(e),Array(...Array(o.length)).map((e,t)=>t).some(n=>{const i=o[n];if(Ie.Ok==function(e,t,n){e.emit("src",n),t.playback_token&&"string"==typeof n.src&&n.src.startsWith("https://")&&(n.src=function(e,t){const n=new URL(e);return n.pathname=`/pt:${t}${n.pathname}`,n.toString()}(n.src,t.playback_token));"string"==typeof n.src&&(e.original_src=n.src);const r=function(e,t,n){return e.plugins.filter(e=>{return(t=e)&&"wants"in t;var t}).find(e=>e.wants(n.src||"",n,t))}(e,t,n);return e.setOpts({is_native:!r}),r?(r.onload(t,e.root,e,n),Ie.Ok):Ie.Err}(e,t,i)||Ie.Ok==function(e,t,n,r={safari:!1}){var o;/^audio\//.test(n.type||"")&&e.emit("audioonlysource");t.start_time&&(n.src=n.src+"#t="+t.start_time);if(""==e.canPlayType(n.type||""))return Ie.Err;if(n.drm&&(!n.drm["com.apple.fps.1_0"]||!r.safari))return Ie.Err;"string"==typeof n.src&&(e.preload=null!==(o=t.preload)&&void 0!==o?o:"auto",e.src=n.src);return Ie.Ok}(e,t,i,r))return!0;n==o.length-1&&"string"==typeof i.src&&(e.src=i.src)}),e}!function(e){e[e.Err=0]="Err",e[e.Ok=1]="Ok"}(Ie||(Ie={}));const Le=[b,S,"src","seek:cancel"];var Ce;function Pe(e,t,n){return isNaN(e.duration)||isNaN(e.currentTime)?{}:(t.offset+=n,0==t.offset?De(e,t):(t.timer&&clearTimeout(t.timer),t.timer=setTimeout((function(){0!=e.reaper&&(e.currentTime=function(e,t,n=0){return Math.max(Math.min(t,e),n)}(e.currentTime+t.offset,e.duration),t.timer=0,De(e,t))}),1e3),function(e,t){e.setState("will-seek",!0),e.setState(Ce.BACKWARD,t.offset<0),e.setState(Ce.FORWARD,t.offset>0)}(e,t),e.emit("seek:queued",t),t))}function De(e,t){t.timer&&clearTimeout(t.timer),t.timer=t.offset=0,function(e){e.setState(Ce.FORWARD,!1),e.setState(Ce.BACKWARD,!1),e.setState("will-seek",!1)}(e)}function Me(){if("undefined"==typeof document)return!1;const e=document.documentElement;return e&&"rtl"==e.getAttribute("dir")}function Fe(...e){const t=document.createElement("div");return 0==e.length||t.classList.add(...e),t}function Ue(e,t,n){const r=function(e){return Array.isArray(e)?e.slice(0):e.split(".")}(t);for(;r.length;){if(null==e)return n;const t=r.shift();if("string"!=typeof t)return n;e=e[t]}return null==e?n:e}function xe(e){const t="number"==typeof e?e:parseInt(e,10);return(t>9?"":"0")+t}function He(e){if(isNaN(e)||e>=Number.MAX_SAFE_INTEGER)return"";const t=e<0?"-":"";e=Math.round(Math.abs(e));const n=Math.floor(e/3600);let r=Math.floor(e/60);return e-=60*r,n>=1?(r-=60*n,t+n+":"+xe(r)+":"+xe(e)):t+xe(r)+":"+xe(e)}!function(e){e.FORWARD="forward",e.BACKWARD="backward"}(Ce||(Ce={}));const We=navigator.languages||[navigator.language];function qe(e,t,n){const r={};return n=t.lang||n,e[n]&&(r[n]=e[n]),function(){try{return We.reduce((e,t)=>~t.indexOf("-")?e.concat(t,t.split("-")[0]):e.concat(t),[])}catch(e){return[]}}().forEach((function(t){e[t]&&!r[t]&&(r[t]=e[t])})),Object.values(r)}const Be=[1e7]+""+-1e3+-4e3+-8e3+-1e11,Ge=()=>"undefined"==typeof crypto?"":Be.replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16));let Ve="";!function(){let e=!1;try{const t=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("testPassive",null,t),window.removeEventListener("testPassive",null,t)}catch(e){}}();const Ke=["touchstart","touchmove"];function je(e,t){const n=new CustomEvent(e,{detail:t,cancelable:!0});return t&&Object.defineProperty(n,"data",{get:()=>t}),n}function ze(e,t,n){const r=je(t,n);return e.dispatchEvent(r),e}function Qe(e,t,n){const r=je(t,n);return e.dispatchEvent(r),r}function Ye(e,t,n,r){Array.isArray(t)?t.forEach(t=>Xe(e,t,n,r)):Xe(e,t,n,r)}function Xe(e,t,n,r){if(o=t,!~Ke.indexOf(o))return e.addEventListener(t,n,r),e;var o;const i=Object.assign(r||{},{passive:!0});return e.addEventListener(t,n,i),e}function $e(e,t,n,r){return Ye(e,t,n,Object.assign(r||{},{once:!0}))}class PlayerStorage{constructor(e,t){this.implementation=e,t&&t.keys().forEach(e=>{"string"==typeof t.implementation[e]&&this.implementation.setItem(e,t.implementation[e])})}keys(){var e;const t=[];for(var n=0;n<this.implementation.length;n++)(null===(e=this.implementation.key(n))||void 0===e?void 0:e.startsWith("flowplayer/"))&&t.push(this.implementation.key(n));return t}removeItem(e){try{this.implementation.removeItem("flowplayer/"+e)}catch(e){}}getItem(e){try{return this.implementation.getItem("flowplayer/"+e)}catch(e){return null}}setItem(e,t){try{this.implementation.setItem("flowplayer/"+e,t)}catch(e){}}clear(){try{this.keys().forEach(e=>this.implementation.removeItem(e))}catch(e){}}get length(){try{return this.keys().length}catch(e){return 0}}key(e){try{return this.implementation.key(e)}catch(e){return null}}}class InMemoryStorage{constructor(){this.pairs=[]}get length(){return this.pairs.length}clear(){this.pairs=[]}getItem(e){var t;return(null===(t=this.pairs.find(t=>t[0]===e))||void 0===t?void 0:t[1])||null}key(e){return this.pairs[e][0]||null}removeItem(e){this.pairs=this.pairs.filter(t=>t[0]!==e)}setItem(e,t){this.removeItem(e),this.pairs.push([e,t])}}const Ze={preload:"auto",rtl:!1,controls:!0},Je=["muted","preload"];function et(e,r,o){let i;o.live_state={dvr_window:void 0,get dvr(){return i},set dvr(t){i=t;const n=!(!e.live||t);o.hasState(ne)!=n&&o.setState(ne,n)}},o._storage=new PlayerStorage(["localStorage","sessionStorage"].map(e=>{try{const t=window[e];return t.getItem(""),t}catch(t){return console.debug(`Access to window.${e} denied, trying next option`),null}}).find(e=>!!e)||new InMemoryStorage),o.toJSON=function(){return{duration:o.duration,volume:o.volume,currentTime:o.currentTime,states:o.root.className}},o.setSrc=function(t){return Re(o,e,t,n())},o.playerState=o.playerState||{},o.setState=function(e,t){if(o.playerState[e]===!!t)return o;const n=Object.assign({},o.playerState,{[e]:t});return o.playerState=n,ze(o,"state",o.playerState),o},o.createComponents=function(...e){return Array.from({length:e.length}).map((t,n)=>me(this,e[n]))},o.hasState=function(e){return!!o.playerState[e]},o.transitionState=function(e,t,n){!o.hasState(e)&&o.hasState(t)||(n=0),n&&o.setState("is-toggling",!0),o.setState(t,!1),o.setState(e,!0),n&&setTimeout((function(){o.setState("is-toggling",!1)}),n)},o.emit=(e,t)=>(ze(o,e,t),o),o.on=(e,t)=>(Ye(o,e,t),o),o.once=(e,t)=>($e(o,e,t),o),o.off=(e,t)=>{var n,r;return n=e,r=t,o.removeEventListener(n,r),o},o.poll=(e,t)=>Qe(o,e,t),o.togglePlay=function(e){return o.hasState("is-error")?Promise.reject():_e(o,0,e)},o.toggleMute=function(e){e=null==e?!o.muted:!!e,o.muted=e,o.muted||o.volume||(o.volume=1),ze(o,"volumechange")},o.toggleDisable=function(e){e=null==e?!o.disabled:!!e,o.setState("is-disabled",e),o.disabled=e},o.destroy=function(){o.pause();const e=t.indexOf(o);~e&&t.splice(e,1),setTimeout((function(){o.setSrc([]),o.reaper&&o.reaper.clear(),ze(o,b),o.setState("is-destroyed",!0)}),0)},o.setAttrs=function(e){return Je.forEach(t=>{if(!(t in e))return;const n=e[t];n?o.setAttribute(t,n.toString()):o.removeAttribute(t)}),o},o.opt=function(t,n){return n=void 0===n?Ue(Ze,t):n,Ue(e,t,n)},o.i18n=function(e,t){if(!o.reaper)return"";const n=o.reaper.get("translations");return n?function e(t,n,r,o){return(o=o||0)>=t.length?r:Ue(t[o],n,e(t,n,r,o+1))}(n,e,t||""):t||""},o.setOpts=function(t){Object.assign(e,t),e.live&&!o.hasState(J)&&(o.setState(ne,!0),ze(o,"live")),"disabled"in t&&void 0!==t.disabled&&o.toggleDisable(t.disabled),"muted"in t&&void 0!==t.muted&&o.toggleMute(t.muted),"dvr"in e&&(o.live_state.dvr=o.opt("dvr")),o.setState("is-rtl",o.opt("rtl",function(e){if(!e)return Me();const t=e.getAttribute("dir");return t?"rtl"==t:Me()}(r))),o.setState(J,!!e.live),o.setState("has-poster","string"==typeof e.poster&&e.poster.length>0),o.setState("is-seekable",!!e.seekable),o.setState("no-controls",0==e.controls),r.style.backgroundImage=o.hasState("has-poster")?"url('"+e.poster+"')":"",ze(o,A,e)},o.renderPlugin=function(e){Qe(o,"renderplugin",e).defaultPrevented||o.root.appendChild(e)};const a={offset:0,timer:0};var s,l;l=a,(s=o).on(Le,(function(){De(s,l)})),o.enqueueSeek=function(e){if(0!=o.opts.seekable&&!(1==o.opts.disabled&&e>0))return Pe(o,a,e)},o.deviceId=function(){return function(e){if(Ve)return Ve;try{const t=e.getItem("flowplayer/uuid");if(t)return t;const n=Ge();return e.setItem("flowplayer/uuid",n),n}catch(e){return Ve=Ge()}}(o._storage)}}function tt(e,t){const n=t.querySelector("video"),r=n||(e._video_element_callback?e._video_element_callback(e):document.createElement("video"));return r.classList.add("fp-engine"),r.playsInline=!0,n||t.append(r),r}var nt="undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{};function rt(){return"undefined"!=typeof window?window:void 0!==nt?nt:{}}const ot=["localhost","127.0.0.1","0.0.0.0","s.codepen.io","cdpn.io","try.flowplayer.com"];function it(e,t){return!!~ot.indexOf(e)||e.indexOf(t)===e.length-t.length}it.check_whitelist=function(e){return!!~ot.indexOf(e)};const at="production";function st(e,t){const n={valid_jwt:!1,raw:"",data:{acl:0},exp:0};let r={c:"{}",exp:0};t=t||{};try{r=fe(e),n.valid_jwt=!0}catch(e){}return n.raw=e,n.data=JSON.parse(r.c),n.exp=r.exp,t.require_valid_token&&st.validate(n),n}function lt(e){try{return st.validate(e),{success:!0,message:""}}catch(e){return{success:!1,message:e.message}}}var ct;function ut(e){return{grant:e,is_granted:t=>(e&t)===t}}function dt({root:e,video:t,data:n}){t&&t.destroy(),console.error(new Error(n.details||n.reason)),e.innerHTML="",e.classList.remove("flowplayer"),e.classList.add("flowplayer-fatal"),e.style.removeProperty("background-image");const r=document.createElement("h2");r.textContent="Playback Error";const o=document.createElement("p");o.textContent="Are you the site owner?";const i=document.createElement("a");i.classList.add("troubleshoot"),i.target="_blank",i.href="https://docs.flowplayer.com/troubleshooting/player#"+n.reason,i.textContent="Troubleshoot?";const a=document.createElement("img");a.src="https://flowplayer.com/user/pages/images/logo-white.png",e.append(r,o,i,a)}function pt(e){return t=>{setTimeout((function(){if(!t.defaultPrevented&&!t.prevented)return e(t)}),0)}}st.validate=function(e){if("string"==typeof e&&(e=st(e)),!e||!e.raw){if(it.check_whitelist(window.location.hostname)||"dev"===at.toString())return!0;throw new Error("No token provided in configuration")}if(!e.valid_jwt)throw new Error("Invalid token provided");const t=window.location.hostname,n=it.bind(null,t);if("dev"!==at.toString()&&e.data.domain&&e.data.domain.length&&!e.data.domain.some(n))throw new Error("Domain not allowed");if("dev"!==at.toString()&&1e3*e.exp-Date.now()<0)throw new Error("Expired token");return!0},st.id=function(e){if(e)return"string"==typeof e&&(e=st(e)),e.data.id},function(e){e[e.ADS=2]="ADS",e[e.ANALYTICS=4]="ANALYTICS",e[e.NO_METERING=8]="NO_METERING",e[e.DEVELOPER_PLAN=16]="DEVELOPER_PLAN",e[e.WOWZA_VIDEO=32]="WOWZA_VIDEO"}(ct||(ct={})),ut.of=ut,ut.from_token=function(e){const t=st(e,{require_valid_token:!0});return ut.of(t.data.acl)},ut.permissions=ct;function ft(e,t){if(!e.parentElement)return;const n=e.clientWidth/e.parentElement.clientWidth*100/2;e.style.left=t-n+"%",e.style.display="block"}function ht(e,t){if(isNaN(e.duration))return;const n=e.buffered;n.length&&(t.style.width=Math.min(n.end(n.length-1)/e.duration*100,100)+"%")}function mt(e,t){e.style.width="0",t.style.display="none"}function yt(e,t){const n=e.seekable;if("object"!=typeof e.opts||0==n.length)return{head:0,tail:0};const r=vt(e),o=t||e.live_state.dvr_window;return{head:r,tail:"number"!=typeof o||r-o<0?n.start(0):r-o}}function Et(e){return e.opt("live",!1)||e.duration>=Number.MAX_SAFE_INTEGER}function gt(e){return isFinite(e.duration)?e.duration:0==e.seekable.length?0:yt(e).head}function vt(e){var t;const n=e.seekable;return n.length?e.hasState("is-chromecast-playing")||!(null===(t=e.hls)||void 0===t?void 0:t.liveSyncPosition)?n.end(n.length-1):e.hls.liveSyncPosition:0}function _t(e,t,n){if(!t.seekable||0==t.seekable.length)return;ft(n,e);const r=yt(t),o=(100-Math.max(0,Math.min(e,100)))/100*(r.head-r.tail);n.innerText="-"+He(o)}function wt(e){e.currentTime=yt(e).tail}function St(e){try{e.dvr_offset=0,e.currentTime=vt(e)}catch(e){console.warn("failed to seek to now: %j",e)}}function bt(e,t){e/=100,t.currentTime=function(e,t){if(t>1||t<0)return console.warn("cannot calculate a percent outside of range(0..1)"),0;const n=yt(e);return n.tail+t*(n.head-n.tail)}(t,e)}function Nt(e,t){e.style.width="0",t.style.display="none"}function Tt(e,t){const n=t.clientWidth;t.classList.toggle("is-small",n<600),t.classList.toggle("is-tiny",n<400)}function kt(e,t,n){let r=!0;t.classList.add("flowplayer"),Tt(0,t),Ye(n,m,()=>{if(!n.hasState(Y)&&!n.hasState(Q)&&e.is_native&&"none"!==e.preload)return"metadata"===e.preload?(n.setState(Y,!0),n.emit(O)):void we(n)}),Ye(n,p,()=>{e.is_native&&"metadata"===e.preload&&n.paused&&n.emit(v)}),Ye(n,[m,"resize"],(function(){Tt(0,t)})),Ye(n,"state",(function(){Object.entries(n.playerState).forEach((function([e,n]){t.classList.toggle(e,n)}))})),Ye(n,"timeupdate",(function(){n.setState(ee,!n.hasState("is-casting")&&!n.hasState(X)&&n.readyState<3)})),Ye(n,_,(function(t){const r=n.original_src;pt(()=>{if(r===n.original_src){if(n.setState(Z,!0),$e(n,"timeupdate",(function(){n.setState(Z,!1),r===n.original_src&&n.setState(X,!e.loop&&!!e.rewind&&n.paused)})),e.loop)return n.togglePlay(!0);e.rewind&&(n.currentTime=0)}})(t)})),Ye(n,[S,w],(function(e){n.setState($,e.type==S)})),Ye(n,"remotesession:ended",(function(e){setTimeout(()=>{e.defaultPrevented||(n.currentTime=e.detail.currentTime)},0)})),Ye(n,_,(function(){n.setState(j,!1),r=!0})),Ye(n,h,()=>{if(!n.opts.live||!n.opts.is_native)return;const e=n.seekable;0!=e.length&&n.emit("dvr/window",e.end(e.length-1)-e.start(0))}),Ye(n,f,(function(){n.setState(Q,!0),n.setState(Y,!1)})),Ye(n,"play",()=>{n.setState(re,!0)}),Ye(n,[g,v,m],(function(t){if(!n.hasState($)&&(t.type!=v||e.autoplay||n.setState(ee,!1),t.type!=m||"none"!=n.opt("preload")||e.autoplay)){if(t.type==m&&e.autoplay)return $e(n,E,(function(){n.setState(ee,!1)}));t.type!=g||n.hasState(Q)||n.setState(Y,!0),n.setState(Z,!1),n.setState(ee,t.type==g)}})),Ye(n,[E,y],(function(t){setTimeout(()=>{const e=new CustomEvent("flowplayer/"+t.type,{detail:n});document.dispatchEvent(e)},0);const o=t.type==E,i=n.currentTime==n.duration,a=o&&r&&e.autoplay||n.hasState(ee);if(o&&(n.started=!0,r=!1),n.setState(ee,!1).setState(re,!1),!o&&n.setState(oe,!1),i)return;const s=o?j:z,l=o?z:j;n.transitionState(s,l,a?0:300),!n.hasState(X)||n.root.classList.contains("ad-hide-first-frame")||n.root.classList.contains("preroll-ios")||function(e,t){if(!e.hasState(J)||![void 0,0,-1].includes(t)||!e.seekable.length||e.hasState("has-casted"))return e.setState(X,!1);e.once(w,()=>e.setState(X,!1)),0===t?wt(e):St(e)}(n,e.start_time)}))}const At=[0].concat(Array.from({length:100}).map((e,t)=>(t+1)/100));function Ot(e,t,n){if(!window.IntersectionObserver)return;const r={should_resume:!!e.autoplay,locked:!1};Ye(n,"play",(function(){r.locked||(r.should_resume=!0)}));const o=()=>{if(!e.autoplay)return;if(n.hasState(ae)&&r.should_resume)return n.togglePlay(!0);const t=n.currentSrc;e.autopause||n.hasState(ae)||!r.should_resume||$e(n,"viewenter",()=>{e.autoplay&&r.should_resume&&t===n.currentSrc&&n.togglePlay(!0)})},i=()=>{if(!e.autoplay)return;if(!e.is_native)return;if("auto"===e.preload)return;if(n.hasState(ae))return we(n);const t=n.currentSrc;$e(n,"viewenter",()=>{t!==n.currentSrc||n.readyState>1||!n.paused||we(n)})};Ye(n,"src",(function(){r.should_resume=!!e.autoplay,n.off(m,i),n.once(m,i),n.off(v,o),n.once(v,o)})),Ye(n,y,(function(){r.locked||(r.should_resume=!1)}));const a=new IntersectionObserver(e=>{e.forEach(e=>{setTimeout(()=>{const t=e.intersectionRatio,r=n.hasState(ae);if(n.setState(ae,t>=.2),n.emit("intersectionchange",{ratio:t}),r===n.hasState(ae))return;const o=n.hasState(ae)?"viewenter":"viewleave";n.emit(o)},0)})},{threshold:At});a.observe(t),n.on(b,()=>a.disconnect()),Ye(n,"viewenter",(function(){!r.should_resume||!e.autopause||It()||n.opts.autoplay&&!n.readyState||n.togglePlay(!0)})),Ye(n,"viewleave",(function(){if(!e.autopause||It())return;const t=!n.paused;r.locked=!0,n.pause(),setTimeout((function(){r.should_resume=t,r.locked=!1}),0)}))}function It(){return t.find(e=>e.hasState("is-casting"))}function Rt(e,t){if(!window.ResizeObserver)return;const n=new ResizeObserver(e=>{const n=e[e.length-1];t.emit("resize",n)});n.observe(e),t.on(b,()=>n.disconnect())}function Lt(e){if("number"==typeof e&&!isNaN(e))return Number(e);if("string"==typeof e){const t=e.split(":");return Number(t[1])/Number(t[0])}return e}function Ct(e,t,n){const r=!!e.ratio,o=document.createElement("div");o.classList.add("fp-ratio"),t.append(o);let i=Lt(e.ratio||.5625);o.style.paddingTop=100*i+"%";const a=[f,p];n.on(a,(function(){if(r)return;const e=n.videoHeight&&n.videoWidth&&n.videoHeight/n.videoWidth;e&&n.setOpts({ratio:e})})),n.on(A,(function(){const t=n.videoHeight&&n.videoWidth&&n.videoHeight/n.videoWidth,r=Lt((null==e?void 0:e.ratio)||t||.5625);i!==r&&(i=r,o.style.paddingTop=100*r+"%")}))}class ExplorerPlan{constructor(){this.cleanUp=this.cleanUp.bind(this),this.render=this.render.bind(this),this.wireUp=this.wireUp.bind(this)}init(e,t,n){this.root=t,this.player=n,this.wireUp()}wireUp(){var e,t;this.cleanUp(),null===(e=this.player)||void 0===e||e.once(E,this.render),null===(t=this.player)||void 0===t||t.once(_,this.wireUp)}cleanUp(){var e,t,n,r;null===(t=null===(e=this._logo)||void 0===e?void 0:e.parentElement)||void 0===t||t.removeChild(this._logo),null===(n=this.player)||void 0===n||n.off(E,this.render),null===(r=this.player)||void 0===r||r.off(_,this.wireUp)}render(){var e,t,n;null===(t=null===(e=this._logo)||void 0===e?void 0:e.parentElement)||void 0===t||t.removeChild(this._logo);const r=(null===(n=this.root)||void 0===n?void 0:n.querySelector(".fp-ui"))||this.root;if(!r)return;const o=this._logo=document.createElement("a");o.href="https://explorer.flowplayer.com",o.target="_blank",Object.entries(Pt).forEach(([e,t])=>{o.style.setProperty(e,t,"important")}),r.appendChild(o)}}ExplorerPlan.pluginName="explorer-plan";const Pt={display:"block",opacity:"1",visibility:"visible",width:"33%","padding-top":"9%",position:"absolute","z-index":"9999",bottom:"25%",left:"10%","background-size":"cover","background-image":"url(https://static.flowplayer.com/explorer/explorer.svg)"},Dt="flowplayer/"+E;function Mt(e){const t=t=>{t.detail!==e&&!1===e.opt("multiplay")&&e.togglePlay(!1)};e.on(b,()=>document.removeEventListener(Dt,t)),document.addEventListener(Dt,t)}function Ft(e,t){const n=[];e.addEventListener("contextmenu",r=>{const o=r.timeStamp;for(n.push(o);n.length>3;)n.shift();n.length>=3&&n.every(e=>e-o<3e3)&&(console.debug("flowplayer/debug rendering info"),function(e,t){var n;!function(e){const t=e.querySelector(".debug-info");null==t||t.remove()}(e);const r=document.createElement("div");r.classList.add("debug-info");const o=Ut("flowplayer.version","3.28.0-rc.1");r.append(o);const i=null===(n=null==t?void 0:t.hls)||void 0===n?void 0:n.constructor;if(i&&i.version){const e=Ut("hls.version",i.version);r.append(e)}e.appendChild(r)}(e,t))})}const Ut=(e,t)=>{const n=document.createElement("div");n.classList.add("row",e);const r=document.createElement("span");r.classList.add("attr"),r.textContent=e;const o=document.createElement("span");return o.textContent=t,o.classList.add("value"),n.append(r,o),n};function xt(e,t){const n=function(){try{return localStorage.getItem("flowplayer/debug")}catch(e){return""}}(),r=(r,...o)=>{try{const i=(null==t?void 0:t.debug)||n;i&&e.match(i)&&console.log(`flowplayer/${e} -- ${r}`,...o)}catch(e){console.warn(e)}};return r.log=r,r}const Ht=xt("core/retry");function Wt(e,t){const n={pending:void 0,count:0};e.on("flowplayer:error",o=>{var i;const a=null===(i=o.detail)||void 0===i?void 0:i.error;t.retry&&void 0===n.pending&&a.fatal&&!a.config.preventRetry&&(++n.count,n.pending=function(e,t){return setTimeout(()=>{e.hasState("is-destroyed")||(t.pending=void 0,[k,r].forEach(t=>e.emit(t)),Ht("%s try",t.count))},3e3*t.count)}(e,n))}),e.on(E,()=>{n.count=0}),e.on(["src",k],()=>{n.pending&&(clearTimeout(n.pending),n.pending=void 0)}),e.on(r,pt(t=>{t.defaultPrevented||e.load()}))}const qt="rebuffer",Bt="rebuffer:ended",Gt="insights:ttff",Vt="insights:time_to_first_frag_loaded",Kt="insights:watched_interval";var jt=Object.freeze({__proto__:null,RECORD:"health:record",REBUFFER:qt,REBUFFER_ENDED:Bt,DISPLAY:"display",TIME_TO_FIRST_FRAME:Gt,TIME_TO_FIRST_FRAGMENT_LOADED:Vt,WATCHED_INTERVAL:Kt});const zt=[O,"error","src"];function Qt(e){try{return!!new URL(e)}catch(e){return!1}}const Yt=navigator;function Xt(e){var t,n;const r=null===(t=e.hls)||void 0===t?void 0:t.bandwidthEstimate;return r?1e-6*r:(null===(n=Yt.connection)||void 0===n?void 0:n.downlink)||-1}function $t(e,t){return async function(e,t){try{await fetch(e,{body:t,method:"POST",mode:"no-cors"})}catch(e){}}(e,JSON.stringify({events:t}))}const Zt=e=>{switch(e){case!0:return ge.ON;case!1:return ge.OFF;default:return e}};function Jt(){try{const e=window.location!==window.parent.location?document.referrer:document.location.href;return"string"==typeof e&&e.slice(0,200)}catch(e){return!1}}const en=[],tn="https://ihi.flowplayer.com/v1/health/events";function nn(e){if(e.suspended)return;const t=en.slice(0);en.length=0,0!=t.length&&(e.logger.log(`:dispatch events={${t.length}}`),$t(function(){try{return"undefined"==typeof window?tn:window.__FLOWPLAYER_INSIGHTS_URL?window.__FLOWPLAYER_INSIGHTS_URL:tn}catch(e){return tn}}(),t))}async function rn(e,t,n){const r=await an();en.push(Object.assign(t,r)),e.logger.log(":enqueue",t.event,t),en.length<10&&!n||nn(e)}const on=()=>{var e,t;try{const n=window;return null===(t=null===(e=null==n?void 0:n.google)||void 0===e?void 0:e.ima)||void 0===t?void 0:t.VERSION}catch(e){return}},an=async()=>({client_time:Date.now()}),sn=(e,t)=>Object.assign(e,{detail:t}),ln=(e,{event:t,media_session_id:n,session_id:r,play_range_id:o})=>({event:t,media_session_id:n,session_id:r,play_range_id:o,device_id:e.deviceId(),version:"3.28.0-rc.1",commit:"34d8d7a6c635b644e14b262c9fbcfcee71ffad5b",ima_sdk_version:on(),preload:e.opt("preload"),autoplay:Zt(e.opt("autoplay")),live:e.opt("live"),dvr:!!e.live_state.dvr,source:e.original_src,downlink_mbs:Xt(e),page_url:Jt(),player_id:e.opt("metadata.player_id"),media_id:e.opt("metadata.media_id"),site_id:e.opt("metadata.site_id"),category_id:e.opt("metadata.category_id"),sitegroup_id:e.opt("metadata.sitegroup_id"),token:e.token,plugins:e.plugins.map(e=>e.constructor.name).sort((e,t)=>e.localeCompare(t)),current_time:e.currentTime,external_media_id:e.opt("external_media_id")}),cn=e=>({bitrate:null==e?void 0:e.bitrate,resolution:null==e?void 0:e.attrs.RESOLUTION,frame_rate:null==e?void 0:e.attrs["FRAME-RATE"]});function un(e,t,n,r){const o=ln(t,e.eventInfo(n)),{before:i,after:a}=r;rn(e,((e,t,n)=>Object.assign(e,{state:{before:t,after:n}}))(o,cn(i),cn(a)))}var dn;function pn(e){switch(e){case dn.MEDIA_PLAYBACK_ABORTED:return"media playback was aborted";case dn.MEDIA_ERR_NETWORK:return"a network error occurred";case dn.MEDIA_ERR_DECODE:return"unable to decode media content";case dn.MEDIA_ERR_SRC_NOT_SUPPORTED:return"unsupported media type";case dn.NO_INTERNET:return"no internet connection detected";case dn.MIXED_CONTENT:return"cannot load insecure content in a secure context";default:return"an unknown error occurred"}}!function(e){e[e.UNKNOWN=-1]="UNKNOWN",e[e.MEDIA_PLAYBACK_ABORTED=1]="MEDIA_PLAYBACK_ABORTED",e[e.MEDIA_ERR_NETWORK=2]="MEDIA_ERR_NETWORK",e[e.MEDIA_ERR_DECODE=3]="MEDIA_ERR_DECODE",e[e.MEDIA_ERR_SRC_NOT_SUPPORTED=4]="MEDIA_ERR_SRC_NOT_SUPPORTED",e[e.MIXED_CONTENT=1001]="MIXED_CONTENT",e[e.NO_INTERNET=1002]="NO_INTERNET"}(dn||(dn={}));const fn=(e,t)=>{let n=null;return(...r)=>{null!==n&&(clearTimeout(n),n=null),n=setTimeout(()=>t(...r),e)}};var hn;!function(e){e[e.Starting=0]="Starting",e[e.ConfigFinalized=1]="ConfigFinalized",e[e.TimerStartedWithAutoplay=2]="TimerStartedWithAutoplay",e[e.TimerStartedWithUserGesture=3]="TimerStartedWithUserGesture",e[e.MetricReported=4]="MetricReported"}(hn||(hn={}));const mn=[o,"touchend"];class TimeToFirstFrame{constructor(e=hn.Starting,t=!1){this.state=e,this.loadedAd=t}reset(){this.state=hn.Starting,this.loadedAd=!1,this.start=void 0,this.end=void 0,this.adDetails=void 0}adInfo(){const{ad_tag_id:e,vast_ad_id:t}=this.adDetails||{};return{ad_tag_id:e,vast_ad_id:t}}toJSON(){return Object.assign({ad_was_requested:this.loadedAd,ms_to_first_frame:Math.round(this.end&&this.start?this.end-this.start:-1)},this.adInfo())}startTimer(e){this.state==hn.ConfigFinalized&&(this.state=e,this.start=performance.now())}hasStarted(){return[hn.TimerStartedWithAutoplay,hn.TimerStartedWithUserGesture].includes(this.state)}stopTimer(e){this.hasStarted()&&(this.end||(this.end=performance.now()),this.state=hn.MetricReported,e())}}function yn(e){return Math.round(1e3*e)/1e3}class EWMA{constructor(e){this.tickInterval=e,this.ewma=0,this.startTime=Date.now()}decay(){const e=Date.now()-this.startTime;return Math.pow(2,-e/(4*this.tickInterval))}update(e){const t=this.decay();return this.ewma=t*this.ewma+(1-t)*e,this.ewma}toJSON(){return this.ewma}}class WatchedState{constructor(e){this.player=e,this.marchingInterval=void 0,this.lastWatchedPoint=void 0,this.watchedSum=0,this.lastReportedSum=0,this.ewmaTickWatched=new EWMA(WatchedState.AccuracyMilliseconds)}reset(){this.onNotWatching(),this.watchedSum=0,this.lastReportedSum=0,this.lastWatchedPoint=void 0}onNotWatching(){this.marchingInterval&&(this.updateWatched(),this.marchingInterval=clearInterval(this.marchingInterval))}onWatching(){this.marchingInterval||(this.lastWatchedPoint=this.createWatchedPoint(),this.marchingInterval=setInterval(()=>{this.updateWatched()},WatchedState.AccuracyMilliseconds))}createWatchedPoint(){return{currentTime:this.player.currentTime,paused:this.player.paused}}updateWatched(){const e=this.createWatchedPoint();this.lastWatchedPoint&&this.calculateTimeWatched(this.lastWatchedPoint,e),this.lastWatchedPoint=e}calculateTimeWatched(e,t){const n=t.currentTime-e.currentTime,r=this.ewmaTickWatched.update(n);if(!(n<0)&&!(1e3*n>1.3*WatchedState.AccuracyMilliseconds)&&(this.watchedSum+=n,this.watchedSum!=this.lastReportedSum&&(this.watchedSum>this.lastReportedSum+WatchedState.ReportingIntervalSeconds||this.player.ended))){const e=yn(r),t={total_watched_seconds:yn(this.watchedSum),tick_watched_seconds:e,batch_watched_seconds:yn(this.watchedSum-this.lastReportedSum)};this.lastReportedSum=this.watchedSum,this.player.emit(Kt,t)}}}WatchedState.ReportingIntervalSeconds=5,WatchedState.AccuracyMilliseconds=160;const En=Ge();class Health{constructor(e,t){let n;this.session_id=En,this.suspended=!1,this.logger=xt("health",t.opts),this.media_session_id=Ge(),this.play_range_id=Ge(),this.analyticsLoop=setInterval(()=>nn(this),2e3),t.on(b,()=>clearInterval(this.analyticsLoop)),t.on(E,()=>{n!==this.media_session_id&&(n=this.media_session_id,this.first_playing_event_timestamp=Date.now()),this.play_range_id=Ge()});let r=Date.now()-1e3;t.on("timeupdate",e=>{if(n!==this.media_session_id)return;const o=Date.now();if(o<r)return;r=Date.now()+5e3;const i=ln(t,this.eventInfo(e.type)),a=sn(i,{duration:(s=t.duration,Number.isFinite(s)?s:s===1/0?-1:void 0)});var s;this.first_playing_event_timestamp&&(Object.assign(a,{ms_since_first_playing:o-this.first_playing_event_timestamp}),this.first_playing_event_timestamp=void 0),rn(this,a)});const o=this;if(t.health={get media_session_id(){return o.media_session_id},set media_session_id(e){o.media_session_id=e},get session_id(){return o.session_id},set session_id(e){o.session_id=e},toggle(e){e?o.resume():o.suspend()}},!Health._UNLOAD_SUBSCRIBED){Health._UNLOAD_SUBSCRIBED=!0;const t=t=>e.instances.forEach(e=>e.emit(t.type));document.addEventListener("visibilitychange",e=>{"hidden"==document.visibilityState&&t(e)}),window.addEventListener("pagehide",t)}}eventInfo(e){return{event:e,media_session_id:this.media_session_id,session_id:this.session_id,play_range_id:this.play_range_id}}suspend(){this.suspended=!0,clearInterval(this.analyticsLoop)}resume(){this.suspended=!1,this.analyticsLoop=setInterval(()=>nn(this),2e3)}init(e,t,n){if(Jt().toString().startsWith("data:"))return this.suspend();!function(e){let t=null;const n=()=>{t=null};e.on(g,(function(t){e.seeking||e.networkState===e.NETWORK_LOADING&&(e.readyState<HTMLMediaElement.HAVE_CURRENT_DATA||e.emit(qt))})),e.on(qt,e=>{t=e}),e.on(v,r=>{if(t){const o=r.timeStamp-t.timeStamp;if(n(),o<31)return;if(o>3e5)return;e.emit(Bt,{rebuffer_duration:o/1e3})}}),zt.forEach(t=>e.on(t,n))}(n),function(e){let t;[v,O].forEach(n=>{e.on(n,n=>{const r=Date.now();switch(n.type){case O:return t=r;case v:if(t)return e.emit(Vt,{ms_since_loading_started:r-t}),t=null}})})}(n),function(e){if(void 0===window.performance)return;const t=new TimeToFirstFrame;e.on("src",()=>{if(!e.opt("metadata.media_id"))return t.reset();t.reset(),t.state=hn.ConfigFinalized}),e.on(O,()=>{(e.root.classList.contains("ad-hide-first-frame")||e.opt("autoplay"))&&t.startTimer(hn.TimerStartedWithAutoplay)}),mn.forEach(n=>{e.on(n,()=>{e.opt("autoplay")||t.startTimer(hn.TimerStartedWithUserGesture)})}),e.on("ad-requested",()=>{t.loadedAd=!0}),e.on("timeupdate",()=>{if(!(e.readyState<HTMLMediaElement.HAVE_CURRENT_DATA)){if(e.root.classList.contains("ad-hide-first-frame"))return!t.end&&(t.end=performance.now());switch(t.state){case hn.TimerStartedWithAutoplay:case hn.TimerStartedWithUserGesture:return t.stopTimer(()=>e.emit(Gt,t.toJSON()))}}}),e.on("ad-started",n=>{switch(t.end=void 0,t.adDetails=n.detail,t.state){case hn.TimerStartedWithAutoplay:case hn.TimerStartedWithUserGesture:return t.stopTimer(()=>e.emit(Gt,t.toJSON()))}})}(n),function(e){const t=new WatchedState(e);e.on(O,()=>t.reset()),e.on(E,()=>t.onWatching()),e.on(y,()=>t.onNotWatching()),e.on(S,()=>t.onNotWatching()),e.on(_,()=>t.updateWatched()),e.on("visibilitychange",()=>t.updateWatched())}(n),n.on("display",e=>{rn(this,ln(n,this.eventInfo(e.type)),!0)}),n.on("health:record",({detail:e})=>{const t=ln(n,this.eventInfo(e.event));Object.assign(t,e.detail||{}),rn(this,t)}),[m,p,f,h,g,qt].forEach(e=>{n.on(e,e=>{rn(this,ln(n,this.eventInfo(e.type)))})}),[Bt,Gt,Vt,Kt].forEach(e=>{n.on(e,e=>{const t=ln(n,this.eventInfo(e.type));rn(this,Object.assign(t,e.detail))})}),[E,y,S,w,_,u,d,v,O].forEach(e=>{n.on(e,e=>{rn(this,ln(n,this.eventInfo(e.type)))})}),n.on("volumechange",fn(800,e=>{const t=ln(n,this.eventInfo(e.type));rn(this,sn(t,{volume:parseFloat(n.volume.toFixed(2)),muted:n.muted}))})),n.on("resize",fn(800,e=>{const r=ln(n,this.eventInfo(e.type));rn(this,sn(r,{height:t.clientHeight,width:t.clientWidth}))})),n.on("hls/failover",e=>{const t=ln(n,this.eventInfo(e.type)),r=e.detail,{reason:o,from:i}=r;rn(this,sn(t,{reason:o,from:i}))}),n.on("qualitychange",({type:e,detail:t})=>{switch(t.plugin){case"hls":return un(this,n,e,t)}}),n.addEventListener("error",e=>{const t=ln(n,this.eventInfo(e.type)),r=e.error||n.error;if(!r)return rn(this,t,!0);const o=r.code,i={error_message:r.message||pn(o),error_code:o,error_stack:r.stack||""};return rn(this,sn(t,i),!0)}),n.on("src",e=>{var t;const r=null===(t=e.detail)||void 0===t?void 0:t.src;if("string"!=typeof r)return;if(!Qt(n.original_src))return;if(!Qt(r))return;if(r==n.original_src)return;this.media_session_id=Ge();rn(this,ln(n,this.eventInfo(e.type))),nn(this)}),n.on("visibilitychange",e=>{rn(this,ln(n,this.eventInfo(e.type))),nn(this)})}}function gn(e,t){return function(e){return e.extensions.reduce((e,t)=>e.find(e=>e.pluginName===t.pluginName)?(console.warn("flowplayer: duplicate plugin %s detected, plugin names should be unique",t.name),e):(e.push(t),e),[])}(e).map(n=>new n(e,t))}Health.pluginName="health",Health.events=jt,Health._UNLOAD_SUBSCRIBED=!1;const vn={Unknown:"00-00",MediaUnknown:"01-00",MediaUnavailable:"01-01",MediaUnsupportedVideoFormat:"01-02",MediaUnsupportedAudioFormat:"01-03",MediaBitrateExceeded:"01-04",MediaBufferOverread:"01-05",MediaIntegerOverflow:"01-06",MediaQuotaExceeded:"01-07",MediaInvalidCompositionDuration:"01-08",MediaInvalidCompositionSourceDuration:"01-09",MediaInvalidCompositionSourceStartTime:"01-10",MediaMalformedDepth:"01-11",PlaybackUnknown:"02-00",PlaybackVideoBufferUnderRun:"02-01",PlaybackAudioBufferUnderRun:"02-02",PlaybackVideoBufferingTimeout:"02-03",PlaybackAudioBufferingTimeout:"02-04",PlaybackManifestParseError:"02-05",PlaybackVideoDecodeError:"02-06",PlaybackAudioDecodeError:"02-07",PlaybackDroppedFramesExceeded:"02-08",PlaybackPlayheadExceedsDuration:"02-09",PlaybackUnsupportedDevice:"02-10",PlaybackManifestLoadError:"02-11",PlaybackManifestLoadTimeout:"02-12",PlaybackManifestParsingError:"02-13",PlaybackManifestIncompatibleCodecs:"02-14",PlaybackLevelEmptyError:"02-15",PlaybackLevelLoadError:"02-16",PlaybackLevelLoadTimeout:"02-17",PlaybackLevelSwitchError:"02-18",PlaybackAudioTrackLoadError:"02-19",PlaybackAudioTrackLoadTimeout:"02-20",PlaybackFragLoadError:"02-21",PlaybackFragLoadTimeout:"02-22",PlaybackFragDecryptError:"02-23",PlaybackFragParsingError:"02-24",PlaybackFragGap:"02-25",PlaybackRemuxAllocError:"02-26",PlaybackBufferAddCodecError:"02-27",PlaybackBufferIncompatibleCodecs:"02-28",PlaybackBufferAppendError:"02-29",PlaybackBufferStalledError:"02-30",PlaybackBufferFullError:"02-31",PlaybackBufferSeekOverHole:"02-32",PlaybackBufferNudgeOnStall:"02-33",PlaybackInternalException:"02-34",PlaybackInternalAborted:"02-35",PlaybackManifestLoaderFailure:"02-36",PlaybackSegmentBaseLoaderError:"02-37",PlaybackTimeSyncFailed:"02-38",PlaybackFragmentLoaderFailure:"02-39",PlaybackAppendError:"02-40",PlaybackRemoveError:"02-41",PlaybackDataUpdateFailed:"02-42",PlaybackManifestNoStreams:"02-43",PlaybackUnknownManifestType:"02-44",PlaybackDashInsufficientSegmentInfo:"02-45",PlaybackDashNoRepresentations:"02-46",PlaybackDashNoAdaptationSets:"02-47",PlaybackDashNoInitSegment:"02-48",PlaybackDashUnsupportedContainerFormat:"02-49",PlaybackDashKeySystemMismatch:"02-50",PlaybackMultipleKeyIDs:"02-51",PlaybackDashConflictingKeyIDs:"02-52",PlaybackRestrictedStreams:"02-53",PlaybackHlsMasterAndMediaTags:"02-54",PlaybackRepresentationIdConflict:"02-55",PlaybackHlsUnsupportedKeyFormats:"02-56",PlaybackManifestNoVariants:"02-57",PlaybackHlsUndeclaredVariables:"02-58",PlaybackAes128InvalidKeyLength:"02-59",PlaybackDashConflictingAes128Keys:"02-60",PlaybackDashUnsupportedAes128Encryption:"02-61",PlaybackManifestPatchMismatch:"02-62",PlaybackEmptyMediaPlaylist:"02-63",PlaybackNonContiguousCompositionTrack:"02-64",PlaybackDecoderNotFound:"02-65",PlaybackDecoderTemporarilyUnavailable:"02-66",PlaybackIncompatibleAsset:"02-67",PlaybackNoCompatibleExternalDisplay:"02-69",PlaybackOutOfMemory:"02-70",PlaybackToneMappingFailed:"02-71",PlaybackVideoCompositorFailed:"02-72",NetworkUnknown:"03-00",NetworkNoInternet:"03-01",NetworkRequestTimeout:"03-02",NetworkUnableToResolveHost:"03-03",NetworkResourceNotFound:"03-04",NetworkExpiredUrl:"03-05",NetworkUrlResolutionFailed:"03-06",NetworkDownloadErrorIdManifest:"03-07",NetworkDownloadErrorIdSidx:"03-08",NetworkDownloadErrorIdContent:"03-09",NetworkDownloadErrorIdInitialization:"03-10",NetworkDownloadErrorIdXlink:"03-11",NetworkHttpRequestFailed:"03-12",NetworkMaxRetriesExceeded:"03-13",NetworkSegmentMissing:"03-14",NetworkHttp400BadRequest:"03-400",NetworkHttp401Unauthorized:"03-401",NetworkHttp402PaymentRequired:"03-402",NetworkHttp403Forbidden:"03-403",NetworkHttp404NotFound:"03-404",NetworkHttp405MethodNotAllowed:"03-405",NetworkHttp406NotAcceptable:"03-406",NetworkHttp407ProxyAuthenticationRequired:"03-407",NetworkHttp408RequestTimeout:"03-408",NetworkHttp409Conflict:"03-409",NetworkHttp410Gone:"03-410",NetworkHttp411LengthRequired:"03-411",NetworkHttp412PreconditionFailed:"03-412",NetworkHttp413PayloadTooLarge:"03-413",NetworkHttp414URITooLong:"03-414",NetworkHttp415UnsupportedMediaType:"03-415",NetworkHttp416RangeNotSatisfiable:"03-416",NetworkHttp417ExpectationFailed:"03-417",NetworkHttp418ImATeapot:"03-418",NetworkHttp421MisdirectedRequest:"03-421",NetworkHttp422UnprocessableEntity:"03-422",NetworkHttp423Locked:"03-423",NetworkHttp424FailedDependency:"03-424",NetworkHttp425TooEarly:"03-425",NetworkHttp426UpgradeRequired:"03-426",NetworkHttp428PreconditionRequired:"03-428",NetworkHttp429TooManyRequests:"03-429",NetworkHttp431RequestHeaderFieldsTooLarge:"03-431",NetworkHttp451UnavailableForLegalReasons:"03-451",NetworkHttp500InternalServerError:"03-500",NetworkHttp501NotImplemented:"03-501",NetworkHttp502BadGateway:"03-502",NetworkHttp503ServiceUnavailable:"03-503",NetworkHttp504GatewayTimeout:"03-504",NetworkHttp505HTTPVersionNotSupported:"03-505",NetworkHttp506VariantAlsoNegotiates:"03-506",NetworkHttp507InsufficientStorage:"03-507",NetworkHttp508LoopDetected:"03-508",NetworkHttp510NotExtended:"03-510",NetworkHttp511NetworkAuthenticationRequired:"03-511",ContentProtectionUnknown:"04-00",ContentProtectionConcurrentStreamLimitExceeded:"04-01",ContentProtectionEntitlementRefused:"04-02",ContentProtectionLicenseExpired:"04-03",ContentProtectionBadLicenseRequest:"04-04",ContentProtectionLicenseServerTimeout:"04-05",ContentProtectionInsufficientHDCPSupport:"04-06",ContentProtectionGeoRestricted:"04-07",ContentProtectionParentalControlRestricted:"04-08",ContentProtectionCDNUnauthorized:"04-09",ContentProtectionInvalidAccessToken:"04-10",ContentProtectionKeySystemNoKeys:"04-11",ContentProtectionKeySystemNoAccess:"04-12",ContentProtectionKeySystemNoSession:"04-13",ContentProtectionKeySystemNoConfiguredLicense:"04-14",ContentProtectionKeySystemCertificateRequestFailed:"04-15",ContentProtectionKeySystemCertificateUpdateFailed:"04-16",ContentProtectionKeySystemSessionUpdateFailed:"04-17",ContentProtectionKeySystemStatusOutputRestricted:"04-18",ContentProtectionKeySystemStatusInternalError:"04-19",ContentProtectionKeyLoadError:"04-20",ContentProtectionKeyLoadTimeout:"04-21",ContentProtectionCapabilityMediaKeysError:"04-22",ContentProtectionManifestKeySystemUnknown:"04-23",ContentProtectionKeySystemUnavailable:"04-24",ContentProtectionCDMCreationFailed:"04-25",ContentProtectionCDMAttachFailed:"04-26",ContentProtectionCDMServerCertificateRejected:"04-27",ContentProtectionCDMSessionCreationFailed:"04-28",ContentProtectionCDMLicenseRequestFailed:"04-29",ContentProtectionCDMLicenseResponseRejected:"04-30",ContentProtectionManifestMissingDRMInfo:"04-31",ContentProtectionLicenseServerMissing:"04-32",ContentProtectionOfflineSessionRemoved:"04-33",ContentProtectionInitDataTransformationError:"04-34",ContentProtectionServerCertificateRequestFailed:"04-35",ContentProtectionInsufficientHDCPVersion:"04-36",ContentProtectionHDCPVersionCheckFailed:"04-37",AdsUnknown:"08-00",AdsVastParseError:"08-100",AdsInvalidVastSchema:"08-101",AdsVastVersionNotSupported:"08-102",AdsUnexpectedAdType:"08-200",AdsCreativeLinearityMismatch:"08-201",AdsCreativeDurationMismatch:"08-202",AdsCreativeSizeMismatch:"08-203",AdsWrapperVastError:"08-300",AdsVastResponseRedirectTimeout:"08-301",AdsWrapperLimitReached:"08-302",AdsVastResponseEmpty:"08-303",AdsLinearAdDisplayError:"08-400",AdsMediaFileNotFound:"08-401",AdsMediaFileUnavailable:"08-402",AdsUnsupportedMimeType:"08-403",AdsUnableToDisplayMediaFile:"08-405",AdsMezzanineFileMissing:"08-406",AdsMezzanineFileDownloaded:"08-407",AdsRejectedAd:"08-408",AdsInteractiveCreativeError:"08-409",AdsVerificationNodeExecutionError:"08-410",AdsNonLinearAdDisplayError:"08-500",AdsNonLinearAdSizeMismatch:"08-501",AdsNonLinearAdFetchError:"08-502",AdsNonLinearUnsupportedType:"08-503",AdsCompanionAdDisplayError:"08-600",AdsCompanionAdSizeMismatch:"08-601",AdsRequiredCompanionAdError:"08-602",AdsCompanionAdFetchError:"08-603",AdsUndefinedVastError:"08-900",AdsUnknownVpaidError:"08-901",AdsVastDocumentEmpty:"08-999"},_n=Object.fromEntries(Object.entries(vn).map(([e,t])=>[t,e]));class FlowplayerError extends Error{static getErrorKey(e){return(e=>e in vn)(e)&&_n[e],_n["00-00"]}constructor(e,t,n={}){super(e),this.message=e,this.flowplayerErrorCode=t,this.config=n,this.id=Ge(),this.fatal=!!n.fatal,this.errorKey=FlowplayerError.getErrorKey(this.flowplayerErrorCode)||"unknown"}toJSON(){return{message:this.message,flowplayer_error_code:this.flowplayerErrorCode,id:this.id,root_error_id:this.config.rootErrorId,resource:this.config.resource,fatal:this.fatal}}}function wn(e){e.on("error",pt(t=>{const n=t instanceof MediaError?t:e.error;n&&e.emit("flowplayer:error",{error:Sn(n,{resource:e.original_src})})}))}function Sn(e,t={}){var n,r,o,i,a,s;switch(e.code){case MediaError.MEDIA_ERR_ABORTED:return new FlowplayerError(null!==(n=e.message)&&void 0!==n?n:"The playback was aborted, typically by the user.",vn.PlaybackInternalAborted,Object.assign({fatal:!1},t));case MediaError.MEDIA_ERR_NETWORK:return new FlowplayerError(null!==(r=e.message)&&void 0!==r?r:"A network error prevented media from being downloaded.",vn.NetworkHttpRequestFailed,Object.assign({fatal:!0},t));case MediaError.MEDIA_ERR_DECODE:return new FlowplayerError(null!==(o=e.message)&&void 0!==o?o:"An error occurred while decoding the media.",vn.PlaybackVideoDecodeError,Object.assign({fatal:!0},t));case MediaError.MEDIA_ERR_SRC_NOT_SUPPORTED:return new FlowplayerError(null!==(i=e.message)&&void 0!==i?i:"The media could not be loaded because the format is not supported.",vn.PlaybackManifestIncompatibleCodecs,Object.assign({fatal:!0},t));case 5:return new FlowplayerError(null!==(a=e.message)&&void 0!==a?a:"Encrypted content could not be played due to missing keys or unsupported protection scheme.",vn.ContentProtectionKeySystemNoKeys,Object.assign({fatal:!0},t));default:return new FlowplayerError(null!==(s=e.message)&&void 0!==s?s:"An unknown playback error occurred.",vn.PlaybackUnknown,Object.assign({fatal:!0},t))}}const bn=function(){const e=rt(),t=e.flowplayer?e.flowplayer:{extensions:[]};return Array.isArray(t.extensions)||(t.extensions=[]),t}();function Nn(n,r){if("function"==typeof n)return e.push(...[...arguments].filter(e=>"function"==typeof e)),Nn;"string"==typeof r&&(r={src:r}),r||(r={}),r.token||"string"!=typeof window.__FLOWPLAYER_TOKEN||(r.token=window.__FLOWPLAYER_TOKEN);const o="string"==typeof n?document.querySelector(n):n;if(!o)return console.error(new Error("Flowplayer: '"+n.toString()+"' not found"));const i=o.querySelector("video.fp-engine");if(i)return i;const a=lt(r.token);if(!a.success)return dt({root:o,data:{reason:"token",details:a.message}});const s=new Map,l=tt(r,o);l.reaper=s,l._customElements=he,Object.defineProperty(l,"token",{value:"string"==typeof r.token?st.id(r.token):"",writable:!1}),l.addEventListener(b,()=>{s.clear(),l.reaper=0,delete l.root}),l.root=o,r.token&&ut.from_token(r.token).is_granted(ut.permissions.DEVELOPER_PLAN)&&e.push(ExplorerPlan),!~t.indexOf(l)&&t.push(l),et(r,o,l),l.setAttrs(r),l.plugins=gn(Nn,l),kt(r,o,l),Ot(r,o,l),Rt(o,l),Ct(r,o,l),Mt(l),Ft(o,l),Wt(l,r),wn(l),l.plugins.forEach(e=>{try{e.init(r,o,l)}catch(t){console.log("Error(plugin/%s)",e.constructor.name,t)}}),l.setOpts(r),l.opts=r,r.src&&l.setSrc(r.src);const c=l.readyState;return c>0&&l.currentSrc&&l.emit(p),c>2&&l.currentSrc&&l.emit(v),l.emit("mount"),l.on("error:fatal",(function(e){dt({root:o,video:l,data:e.data||{}})})),setTimeout(ze,0,document,"flowplayer:player:created",l),l}Object.assign(Nn,bn),function(r){Array.isArray(r.extensions)&&r.extensions.forEach(t=>e.push(t)),r.customElements=he,r.defaultElements=K,r.version="3.28.0-rc.1",r.commit="34d8d7a6c635b644e14b262c9fbcfcee71ffad5b",r.instances=t,r.extensions=e,r.support=n,r.events=I,r.states=le,r.jwt=fe,r.autoplay=ge,r.quality=Ee}(Nn),"object"==typeof document&&setTimeout(ze,0,document,"flowplayer:umd",Nn),Nn.extensions.unshift.apply(Nn.extensions,[Health]);const Tn=(...e)=>e.reduce((e,t)=>Object.assign(Object.assign({},e),t),{}),kn=(e,t)=>{const n=e.lastIndexOf(t);return~n&&e.splice(n,1),e};class RequestQueue{static of(){return new RequestQueue}static is_empty(e){return 0==e.pending.length}static is_high_water(e){return e.open.length==RequestQueue.MAX_OPEN_REQUESTS}static maybe_spawn_req(e){if(RequestQueue.is_empty(e))return e;if(RequestQueue.is_high_water(e))return e;try{const t=RequestQueue.lpop(e);t&&RequestQueue.request(e,t)}catch(e){}}static increment_failures(e){return e.stats.failures++,e.stats.failures>RequestQueue.MAX_FAILURE_COUNT&&(e.stats.ttl=Date.now()+RequestQueue.REQUEST_TTL_MS),e}static handle_error(e,t){RequestQueue.rm(e,t),RequestQueue.increment_failures(e)}static request(e,[t,n,r]){if(Date.now()<e.stats.ttl)return;const o=new XMLHttpRequest;e.open.push(o),o.timeout=RequestQueue.REQUEST_TIMEOUT_MS,o.ontimeout=function(){RequestQueue.handle_error(e,o)},o.onerror=function(t){RequestQueue.handle_error(e,o)},o.onreadystatechange=function(){o.readyState==XMLHttpRequest.DONE&&RequestQueue.rm(e,o),Math.floor(o.status/100)},o.onload=function(){RequestQueue.rm(e,o),e.stats.failures&&e.stats.failures--},o.open(n,t),o.setRequestHeader("Content-Type","text/plain;charset=UTF-8");try{o.send(JSON.stringify(r))}catch(e){}}static rpush(e,...t){return t.forEach(t=>{e.pending.length>=RequestQueue.MAX_PENDING||(e.pending.push(t),RequestQueue.maybe_spawn_req(e))}),e}static lpop(e){return e.pending.shift()}static rm(e,t){return kn(e.open,t),e}constructor(){this.pending=[],this.open=[],this.stats={failures:0,ttl:0}}}RequestQueue.MAX_OPEN_REQUESTS=3,RequestQueue.MAX_PENDING=5,RequestQueue.REQUEST_TIMEOUT_MS=4e3,RequestQueue.REQUEST_TTL_MS=5e3,RequestQueue.MAX_FAILURE_COUNT=3;var An=RequestQueue.of();const On=/:([a-zA-Z_]+)/g;class Log{static prepare(e,t){const n=document.createEvent("Event");return n.initEvent(e,!1,!0),n.ns=e,n.data=t,n}static of(e){return new Log(e)}constructor(e){this.emitter=e}info(e){this.emitter.dispatchEvent(Log.prepare(Log.NAMESPACE.INFO,e))}error(e){this.emitter.dispatchEvent(Log.prepare(Log.NAMESPACE.ERROR,e))}warn(e){this.emitter.dispatchEvent(Log.prepare(Log.NAMESPACE.WARN,e))}}var In;Log.NAMESPACE={INFO:"tracker:info",ERROR:"tracker:err",WARN:"tracker:warn"},function(e){e.POST="POST",e.PUT="PUT",e.GET="GET"}(In||(In={}));class Tracker{static of(e,t){return new Tracker(e,t)}static ensure_required_keys(e,t){return e.required_keys.filter(e=>!(e in t))}static pluck_valid_keys(e,t){return((e,...t)=>Object.keys(e).filter(e=>~t.indexOf(e)).reduce((t,n)=>Tn(t,{[n]:e[n]}),{}))(t,...e.valid_keys)}static merge_metadata(e,t={}){return e.metadata=Tracker.pluck_valid_keys(e,Tn(e.metadata,t)),e}static assert_emitter_api(e){if("function"!=typeof(e||{}).addEventListener)throw new Error("Tracker() received an emitter that does not implement the addEventListener method");if("function"!=typeof(e||{}).removeEventListener)throw new Error("Tracker() received an emitter that does not implement the removeEventListener method")}static create_listener(e,t,n){var r;e.listeners.push([t,n]),null===(r=e.emitter)||void 0===r||r.addEventListener(t,n)}constructor(e,t={}){const n=this;if(this.emitter=e,this.url=t.url,this.log=Log.of(this.emitter),this.verb=t.verb,this.metadata=Tn({},t.metadata||{}),this.rq=t.rq||An,this.events=t.events||[],this.required_keys=t.required_keys||[],this.optional_keys=t.optional_keys||[],this.listeners=[],this.valid_keys=this.required_keys.slice(0).concat(this.optional_keys),Tracker.assert_emitter_api(this.emitter),void 0===Tracker.verb[this.verb])throw new Error(`invalid HTTP verb[${this.verb}] passed`);if("string"!=typeof this.url)throw new Error(`invalid API url[${this.url}] passed`);Tracker.TRACKERS.push(this),n.events.forEach(e=>{Tracker.create_listener(this,e,(t={})=>{const r=Tn(n.metadata,{event_type:e},t.data||t),o=function(e,t){return e.replace(On,n=>{const r=n.slice(1,n.length);return r in t?t[r].toString():(console.warn(`\n preparing url[${e}] failed\n\n parameter[${r}] not detected in params:\n\n ${JSON.stringify(t,null,2)}\n `),n)})}(n.url,r),i=Tracker.pluck_valid_keys(n,r),a=Tracker.ensure_required_keys(n,i);if(a.length)return n.log.error(`Tracker.validate_metadata() failed for\n Event[${e}]\n missing keys: ${a}\n payload:\n ${JSON.stringify(i,null,2)}`);this.rq&&RequestQueue.rpush(this.rq,[o,this.verb,i])})})}destroy(){this.listeners.forEach(([e,t])=>{var n;return null===(n=this.emitter)||void 0===n?void 0:n.removeEventListener(e,t)}),delete this.rq,delete this.emitter,kn(Tracker.TRACKERS,this)}put(e={}){return Tracker.merge_metadata(this,e),this}}Tracker.TRACKERS=[],Tracker.QUEUE=An,Tracker.verb=In;var Rn="ping",Ln="display",Cn="view";const Pn=["sitegroup_id","session_id","media_id","site_id","player_id","video_type"],Dn=["created","position"],Mn=["player_version","created","source","category","category_id","autoplay","muted","customer_user_id"];function Fn(e,t){return e.duration/1===e.duration&&Object.assign(t,function(e){const t=e/100;return{segment_duration:t,breakpoints:Array(...Array(100)).map((function(e,n){return Math.floor(n*t*1e3)/1e3}))}}(e.duration))}function Un(e,t,n){if(!t.segment_duration&&!Fn(e,t))return;const r=function(e,t,n){const r=t.last_idx,o=n?99:xn(e,t);return t.last_idx=o,o<=r?[]:t.breakpoints.slice(r,99==o?100:o).map((function(e){return t.breakpoints.indexOf(e)}))}(e,t,n);0!=r.length&&e.emit(Rn,{position:r})}function xn(e,t){return Math.min(Math.floor(e.currentTime/t.segment_duration),99)}var Hn;const Wn="vod",qn="live",Bn=[Ln,Rn,Cn];function Gn(e,t,n){switch(null==t?void 0:t.kind){case"live":return function(e,t){const n=Date.now();n-t.last_tracked_ts<6e4||(t.last_tracked_ts=n,++t.ticks,e.emit(Rn,{position:60*t.ticks}))}(e,t);case"vod":return Un(e,t,"boolean"==typeof n&&n)}}function Vn(e){const t=e.ads;return void 0!==t&&(void 0!==t.schedule&&("function"==typeof t.hasPreroll&&(t.currentRequests?t.currentRequests:!!t.adPlaying||!(!t.hasPreroll()||0!=t.nextIndex))))}const Kn=((Hn=class Analytics{init(e,t,n){if(!ut.from_token(e.token||"").is_granted(ut.permissions.ANALYTICS))return;if(n.hasState("consent-no-tracking"))return;if(n.analytics)return;const r=n.analytics={ticker:void 0,last_media_id:"",ended:!1},o={locked:void 0,ttl:6e3,task:()=>{Gn(n,r.ticker)}};const i={session_id:n.deviceId(),autoplay:n.autoplay,muted:n.muted,player_id:e.player_id,customer_user_id:e.customer_user_id,player_version:"3.28.0-rc.1"},a=Tracker.of(n,{verb:Tracker.verb.POST,url:"https://ptm.flowplayer.com/:video_type/:sitegroup_id/:event_type",events:Bn,required_keys:Pn,optional_keys:Mn.concat(Dn).slice(0),metadata:i});n.on(b,(function(){a&&a.destroy()})),n.on(A,(function(t){if(!a)return;const o=Ue(t,"data.metadata",{});if(!o.media_id)return;const i=Ue(a,"metadata.media_id");if(i&&o.media_id==i)return;const s=Ue(e,"analytics",{});a.put(o),a.put(s);const l=Ue(e,"metadata.live_start_time",e.live)?qn:Wn;a.put({video_type:l,source:e.source||Jt()||""}),r.ticker=e.live?{ticks:0,last_tracked_ts:Date.now(),kind:"live"}:{last_idx:0,segment_duration:0,breakpoints:[],kind:"vod"},r.ended=!1,n.emit(Ln)}));let s=0;n.on(E,(function(){if(!a)return;if(s||function(e,t){return e.metadata.media_id&&e.metadata.media_id==t.last_media_id}(a,r))return;a.put({muted:n.muted});const e=Vn(n);if(e)return s=Promise.resolve(e).then((function(){r.last_media_id=a.metadata.media_id,n.emit(Cn),s=0})).catch((function(){s=0}));r.last_media_id=a.metadata.media_id,n.emit(Cn)})),n.on("timeupdate",(function(){var t;a&&(s||Vn(n)||r.ended||(!e.live&&n.currentTime+.25>=n.duration&&Gn(n,r.ticker,!0),(t=o).locked||(t.locked=setTimeout((function(){return t.task(),function(e){return e.locked=void 0,e}(t)}),t.ttl))))})),n.on(w,(function(){a&&r.ticker&&"vod"==r.ticker.kind&&function(e,t){Fn(e,t),t.last_idx=xn(e,t)}(n,r.ticker)})),n.on(_,(function(){a&&function(e,t){t.ended||(t.ended=!0,Gn(e,t.ticker))}(n,r)}))}}).pluginName="analytics",Hn),jn=function(e,t){if("object"==typeof exports&&"undefined"!=typeof module)return t;if(null===document.currentScript)return t;"flowplayer"in e||(e.flowplayer={extensions:[]});const n=e.flowplayer;return"function"==typeof n?(n(t),t):(Array.isArray(n.extensions)||(n.extensions=[]),~n.extensions.indexOf(t)||n.extensions.push(t),t)}(rt(),Kn);"undefined"!=typeof window&&"function"==typeof window.matchMedia&&[N,T].forEach((function(e){window.matchMedia("(orientation: "+e+")").addListener((function(n){t.length&&t.forEach((function(t){n.matches&&t.emit(e)}))}))}));const zn=[m,k];function Qn(e,t){const n=me(t,"flowplayer-error");e.append(n),t.on("flowplayer:error",r=>{if(!document.body.contains(e))return;const o=r.detail.error;o.fatal&&(t.setState("is-error",!0),console.warn(o),ze(n,"flowplayer:error",{error:o}))}),zn.forEach(e=>t.on(e,()=>{!function(e){if(!e.hasState("is-error"))return;e.opt("retry")&&e.setState(ee,!0);e.setState("is-error",!1)}(t)}))}var Yn=Object.freeze({__proto__:null,NO_FULLSCREEN:1,NO_VOLUME_CONTROL:2,NO_MUTE:4,LOGO_ON_RIGHT:8,USE_DRAG_HANDLE:16,USE_PLAY_2:32,USE_PLAY_3:64,USE_THIN_CONTROLBAR:128,NO_TITLE:256,NO_DESCRIPTION:512,NO_CONTROLS:1024,NO_DURATION:2048,NO_HEADER:4096,AUDIO_ONLY:8192,NO_TOUCH_ZONES:16384,LOGO_ON_BOTTOM:32768});function Xn(e,t,n){let r=()=>document.fullscreenElement,o="fullscreenchange";if(!Element.prototype.requestFullscreen){const e=Element.prototype,t=document;e.webkitRequestFullScreen&&(e.requestFullscreen=e.webkitRequestFullScreen,t.fullscreenEnabled=!0),t.webkitCancelFullScreen&&(document.exitFullscreen=t.webkitCancelFullScreen),o="webkit"+o,r=()=>t.webkitCurrentFullScreenElement}const a=()=>n.getFullsceenTarget?n.getFullsceenTarget():t;n.toggleFullScreen=function(e,t){if(n.ios_fullscreen_disabled)return;if("boolean"!=typeof e&&(e=!n.hasState("is-fullscreen")),$n(n)&&(e?function(e,t){e.getAttribute("playsinline")&&e.removeAttribute("playsinline");e.getAttribute("webkit-playsinline")&&e.removeAttribute("webkit-playsinline");t||e.webkitEnterFullScreen()}(n,t):function(e,t){e.getAttribute("playsinline")||e.setAttribute("playsinline","");e.getAttribute("webkit-playsinline")||e.setAttribute("webkit-playsinline","");t||e.webkitExitFullScreen();e.togglePlay(!1),e.hasState(ie)||e.setState(ie,!0)}(n,t)),!document.fullscreenEnabled)return;const o=a();if(e)return o.requestFullscreen();r()===o&&document.exitFullscreen()},$n(n)&&(n.ios_fullscreen_disabled=!0,n.once("beforeplay",(function(){n.ios_fullscreen_disabled=!1})),n.on(["webkitendfullscreen","webkitbeginfullscreen"],e=>{const t="webkitbeginfullscreen"===e.type;n.setState("is-fullscreen",t).emit(t?u:d).toggleFullScreen(t,!0)})),setTimeout(()=>{const e=a();e.addEventListener(o,(function(){const t=r(),o=t===e||t==n;n.emit(o?u:d),n.setState("is-fullscreen",o)}))},0),!1!==e.doubleclick&&t.addEventListener(i,(function(e){var t;e.target&&(null===(t=e.target)||void 0===t?void 0:t.classList.contains("fp-ui"))&&n.toggleFullScreen()}))}function $n(e){return!document.fullscreenEnabled&&"function"==typeof e.webkitEnterFullScreen&&"function"==typeof e.webkitExitFullScreen}function Zn(e,t,n){if(!n.reaper)return;const r=document.createDocumentFragment(),o=me(n,R),i=me(n,L);t.append(i),r.append(o),n.reaper.set("ui",o),~t.className.indexOf("use-play-")||t.classList.add("use-play-1"),function(e,t,n){const r=Fe("fp-footer");t.append(r),n.on(A,(function(e){var t,n;const o=null===(t=e.data)||void 0===t?void 0:t.description,i=null===(n=e.data)||void 0===n?void 0:n.title;if(r.innerHTML="","string"==typeof i){const e=Fe("fp-title");e.innerText=i,r.append(e)}if("string"==typeof o){const e=o.split(" "),t=Fe("fp-desc");for(t.innerText=e.join(" "),r.append(t);e.length>1&&t.scrollHeight>t.offsetHeight;)e.pop(),t.innerText=e.join(" ")+"..."}}))}(0,t,n),Qn(o,n),t.appendChild(r),[a,s].forEach(e=>{t.addEventListener(e,(function(e){n.setState("is-hovered",e.type==a),n.setState("is-accessibility",!1)}))}),Xn(e,t,n),n.on("volumechange",(function(){const e=0==n.volume||n.muted;n.muted=e,n.setState("is-muted",e),n._storage.setItem("mute",e.toString())})),"true"==n._storage.getItem("mute")&&(n.muted=!0,n.setState("is-muted",n.muted));const u=n._storage.getItem("volume");u&&!isNaN(Number(u))&&(n.volume=Number(u)),n.emit("volumechange"),n.on("dvr/window",t=>{e.live&&(n.live_state.dvr=n.seekable.length>0&&function(e,t,n){if(0==t)return!0;const r=yt(e,n);return r.head-r.tail>=t}(n,e.seconds_to_dvr||60,t.detail),n.live_state.dvr_window=t.detail)}),n.on("live",()=>{const e=setInterval(()=>{if(n.opts.live&&!n.hasState("is-error")&&0!=n.reaper||clearInterval(e),0==n.seekable.length)return;const t=function(e){const t=e.currentTime,n=yt(e);return{progress:Math.min(100,Math.max(0,(t-n.tail)/(n.head-n.tail)*100)),is_live:t-n.head>=-10}}(n);n.hasState(te)==t.is_live&&n.setState(te,!t.is_live),n.live_state.dvr&&n.emit("dvr",t.progress)},200)}),n.on(p,(function(){n.setOpts({live:Et(n)})})),n.on("durationchange",(function(e){const t=Et(n),r=t?gt(n):e.data||n.duration;isNaN(r)||n.setOpts({live:t,duration:r})})),n.on(["playlist/advance","src"],t=>{if(n.setState("is-autoplay",!!e.autoplay),n.root.classList.contains("is-livecountdown"))return Jn(n,e);(n.currentSrc||n.srcObject)&&("src"===t.type&&["is-playlist",se].some(e=>n.root.classList.contains(e))||Jn(n,e))}),n.on(A,(function(n){var r,o;e.seekable=void 0===(null===(r=null==n?void 0:n.data)||void 0===r?void 0:r.seekable)||n.data.seekable;const i=null===(o=n.data)||void 0===o?void 0:o.ui;if("number"!=typeof i)return;const a=t.classList;a.toggle("use-play-1",!(32&i||64&i)),a.toggle("use-play-2",(32&i)>0),a.toggle("use-play-3",(64&i)>0),a.toggle("use-thin-controlbar",(128&i)>0),a.toggle("no-title",(256&i)>0),a.toggle("no-description",(512&i)>0),a.toggle("logo-on-right",(8&i)>0),a.toggle("logo-on-bottom",(32768&i)>0),a.toggle("use-drag-handle",(16&i)>0),a.toggle("no-controls",(1024&i)>0),a.toggle("no-duration",(2048&i)>0),a.toggle("no-header",(4096&i)>0),a.toggle("no-mute",(4&i)>0),a.toggle("no-volume",(2&i)>0),a.toggle("no-fullscreen",(1&i)>0),a.toggle("no-touch-zones",(16384&i)>0)}));let d=null;[l,c].forEach(e=>o.addEventListener(e,(function(e){n.hasState("is-touch-device")&&e.type===l||("number"==typeof d&&clearTimeout(d),n.setState("is-hovered",!0),d=0==n.paused&&setTimeout((function(){n.setState("is-hovered",!1)}),2e3))})))}function Jn(e,t){delete t.live_start_time,e.setOpts({live:!1}),e.live_state.dvr=void 0,e.live_state.dvr_window=void 0,delete t.live,delete t.poster,delete t.duration,delete t.title,delete t.description,"metadata"in t&&delete t.metadata}function er(e,t,n){if(ut.from_token(e.token||"").is_granted(ut.permissions.NO_METERING))return;st.id(e.token||"")&&n.once(E,async()=>await async function e(t,n){const r=st.id(n||"");t.once("src",()=>{t.once(E,()=>e(t,n))});if(401==(await fetch("https://pmi.flowplayer.com/in",{method:"POST",body:JSON.stringify({token_id:r,factor:1,rnd:Math.random().toString(36).substring(2)})})).status)return t.emit("error:fatal",{reason:"token",details:"The token online validation failed"})}(n,e.token||""))}var tr={ads:{ad:"Ad",ads:"Ads",advertisement:"Advertisement"},audio:{button_txt:"Audio",menu_title:"Audio"},core:{exit_fullscreen:"Exit fullscreen",fullscreen:"Fullscreen",mute:"Mute",pause:"Pause",play:"Play",unmute:"Unmute",volume:"Volume"},ovp:{starting_in:"Countdown"},playlist:{cancel:"Cancel",up_next:"Up next"},qsel:{menu_title:"Quality"},share:{clipboard_failure:"Access to clipboard failed",clipboard_success:"The text is now on your clipboard",embed:"Embed",link:"Link",menu_title:"Share"},speed:{menu_title:"Speed"}};class I18n{init(e,t,n){n.reaper&&n.reaper.set("translations",qe(I18n,e,"en"))}}I18n.pluginName="i18n",I18n.en=tr;class FlowplayerComponent extends HTMLElement{constructor(e){super(),this.player=e}}class FlowplayerLogo extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-logo");const t={logo:""};e.on(A,e=>{var n;const r=t.logo,o=(null===(n=null==e?void 0:e.data)||void 0===n?void 0:n.logo)||"";r!=o&&(t.logo=o,this.set_logo(o,e.detail.logo_alt_text,e.detail.logo_href))})}set_logo(e,t,n){this.innerHTML="";const r=document.createElement("img");if(!e)return;if(r.src=e,t&&(r.alt=t),!n)return this.append(r);const o=document.createElement("a");o.href=n,o.append(r),this.append(o)}}class FlowplayerHeaderDuration extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-duration"),e.on(A,e=>{var t;const n=(null===(t=null==e?void 0:e.data)||void 0===t?void 0:t.duration)||NaN;this.innerText=isFinite(n)?He(n):""})}}const nr={name:"fp-fullscreen",translation_key:"core.fullscreen"},rr={name:"fp-fullscreen-exit",translation_key:"core.exit_fullscreen"},or={name:"fp-play",translation_key:"core.play"},ir={name:"fp-pause",translation_key:"core.pause"},ar={translation_key:"core.mute",name:"fp-volume-mute-unmute"},sr={translation_key:"core.play",name:"fp-small-play"},lr={translation_key:"core.pause",name:"fp-small-pause"},cr={name:"fp-fast-forward"},ur={name:"fp-rewind"};class FlowplayerIcon extends FlowplayerComponent{constructor(e,t){super(e),this.classList.add("fp-icon",t.name),t.title&&this.setAttribute("title",t.title),t.title&&this.setAttribute("aria-label",t.title),t.translation_key&&this.setAttribute("aria-label",e.i18n(t.translation_key)),this.setAttribute("tabindex","0"),this.setAttribute("focusable","true")}}function dr(){}document.addEventListener(o,(function(e){this.active_menu&&!e.composedPath().includes(this.active_menu)&&(Array.from(document.querySelectorAll(".fp-engine")).forEach(e=>{var t;const n=e.root.querySelector("details[open].fp-menu-container");n&&(n.open=!1,null===(t=n.querySelector("summary"))||void 0===t||t.removeAttribute("aria-expanded"),e.root.classList.toggle("has-menu-opened",!1))}),this.active_menu=void 0)}));const pr={passive:!0};var fr;function hr(e,t){let n=0,r=-1,o=-1;const i=Math.random().toString(36).replace(/[^a-z]+/g,"").substr(0,5),a=e.classList;e.id=i,a.remove(fr.GRABBING),a.remove(fr.TOUCHING);const s=t.onseek||dr,u=t.onstart||dr,d=t.onend||dr,p=t.onmouse||dr,f=t.ontouch||dr,h=t.ontouchend||dr;function m(t){!function(){const t=e.getBoundingClientRect();n=t.left,r=t.width}();let o=(function(e){return"function"==typeof window.TouchEvent&&e instanceof TouchEvent}(t)?t.changedTouches[0].pageX:t.pageX)-n;return o>r&&(o=r),o<0&&(o=0),o/r*100}function y(t){const n=m(t);n!=o&&(s(e,n),o=n)}return e.addEventListener("touchstart",(function(t){mr(e,t)&&(a.add(fr.TOUCHING),yr(e.parentElement)&&(a.add(fr.GRABBING),f(e,m(t)),u(e,m(t)),y(t)))}),pr),e.addEventListener(c,(function(t){y(t),p(e,m(t))}),pr),e.addEventListener("touchend",(function(t){setTimeout((function(){a.remove(fr.TOUCHING)}),500),mr(e,t)&&(a.remove(fr.GRABBING),h(e,m(t)),d(e,m(t)),r=0)}),pr),e.addEventListener("touchcancel",(function(){a.remove(fr.GRABBING,fr.TOUCHING),r=0}),pr),e.addEventListener("mousedown",(function(t){a.contains(fr.TOUCHING)||(document.addEventListener(l,y),a.add(fr.GRABBING),u(e,m(t)),t.preventDefault(),y(t))})),e.addEventListener(l,(function(t){a.contains(fr.TOUCHING)||p(e,m(t))})),document.addEventListener("mouseup",(function(t){a.contains(fr.TOUCHING)||(document.removeEventListener(l,y),a.contains(fr.GRABBING)&&(a.remove(fr.GRABBING),d(e,m(t)),r=0))})),e}function mr(e,t){const n=t.target;return!!n&&(n&&!n.closest(e.id)||!yr(e.parentElement)||!e.classList.contains(fr.TOUCHING))}function yr(e){if(!e)return!1;const t=window.getComputedStyle(e);return"0"!==t.width&&"0"!==t.height&&"0"!==t.opacity&&"none"!==t.display&&"hidden"!==t.visibility}!function(e){e.GRABBING="has-grab",e.TOUCHING="has-touch"}(fr||(fr={}));class FlowplayerVolumeBar extends FlowplayerComponent{constructor(e){super(e),this.className="fp-volume";const t=e.root.classList,n=t.contains("is-tiny")?6:t.contains("is-small")?8:10,r=Array.from({length:n}).map(()=>{const e=document.createElement("i");return e.className="fp-tick",e});this.append(...r),hr(this,{onseek:(t,n)=>{n>0&&(e.muted=!1,e._storage.removeItem("mute")),e._storage.setItem("volume",(e.volume=n/100).toString()),this.adjustVolumeSlider(e.volume)}}),this.setAttribute("tabindex","0"),this.setAttribute("role","slider"),this.setAttribute("aria-valuemin","0"),this.setAttribute("aria-valuemax","1"),this.setAttribute("aria-label",e.i18n("core.volume","volume")),e.on("volumechange",()=>{const t=0==e.volume||e.muted;t&&this.adjustVolumeSlider(0);const n=e.opt("ui");this.classList.contains(fr.GRABBING)||t&&"number"==typeof n&&(4&n)>0||this.adjustVolumeSlider(e.volume)})}adjustVolumeSlider(e){this.setAttribute("aria-valuenow",e.toString()),this.setAttribute("aria-valuetext",Math.round(100*e)+"%");const t=Array.from(this.querySelectorAll(".fp-tick")),n=Math.round(e*t.length);t.forEach((e,t)=>{e.classList.toggle("fp-color",t<n)})}}class FlowplayerTimelineBar extends FlowplayerComponent{constructor(e){let t;super(e),this.bufferEle=Fe("fp-buffer"),this.progress=Fe("fp-progress","fp-color"),this.tooltipEle=Fe("fp-timestamp"),this.proposedSeekBar=Fe("fp-hover"),this.dragger=Fe("fp-dragger","fp-color"),this.classList.add("fp-timeline","fp-bar"),this.tooltipEle.style.display="none",this.setAttribute("role","slider"),this.setAttribute("tabindex","0"),this.setAttribute("aria-label",e.i18n("core.timeline_aria_label","Seek slider")),this.setAttribute("aria-valuenow","0"),this.progress.append(this.dragger),this.append(this.bufferEle,this.progress,this.proposedSeekBar,this.tooltipEle);const n=requestAnimationFrame;let r=void 0;const o=()=>{var n;0==e.reaper||t.live||(n=e,this.progress.style.width=n.currentTime/n.duration*100+"%",r=void 0,e.paused||this.classList.contains(fr.GRABBING)||r||(r=setTimeout(o,200)))},i=()=>!!this.player.opt("seekable",!0)&&!isNaN(this.player.duration);hr(this,{onseek:(n,r)=>{if(i())switch(!!t.live){case!0:_t(r,e,this.tooltipEle);break;case!1:!function(e,t,n){const r=t.duration*(e/100);if(t.disabled&&r>t.currentTime)return!1;n.style.width=e+"%",t.currentTime=r}(r,e,this.progress),ft(this.tooltipEle,r)}},onstart:()=>{i()&&(e.emit("timeline/gesture/start"),!e.hasState("is-casting")&&e.setState($,!0),t.live||function(e){e.style.display="block"}(this.tooltipEle))},onend:function(r,i){n(o),0!=t.seekable&&t.live&&bt(i,e)},ontouchend:()=>{t.live?Nt(this.proposedSeekBar,this.tooltipEle):mt(this.proposedSeekBar,this.tooltipEle),setTimeout(()=>e.emit("timeline/gesture/end"),0)},onmouse:(n,r)=>{if(i()&&(e.emit("timeline/gesture/move",{percent:r}),!this.classList.contains(fr.GRABBING)))switch(!!t.live){case!0:!function(e,t){t.style.width=e+"%"}(r,this.proposedSeekBar),_t(r,e,this.tooltipEle);break;case!1:!function(e,t){t.style.width=e+"%"}(r,this.proposedSeekBar),function(e,t,n){isNaN(e)||isNaN(t.duration)||(ft(n,e),n.textContent=He(e/100*t.duration))}(r,e,this.tooltipEle)}}}),e.on(A,(function(e){e.data&&(t=e.data)})),e.on(E,()=>n(o)),e.on(h,()=>{0==e.reaper||t.live||ht(e,this.bufferEle)}),e.on("dvr",e=>{this.progress.style.width=e.detail+"%"}),e.on("timeupdate",()=>{0!=e.reaper&&(n(o),this.setAttribute("aria-valuenow",e.currentTime+""),this.setAttribute("aria-valuetext",Math.round(e.currentTime)+" "+e.i18n("core.seconds","Seconds")),t.live||ht(e,this.bufferEle))}),e.on(p,()=>{0!=e.reaper&&(t.live||ht(e,this.bufferEle))}),e.on("durationchange",t=>{if(0==e.reaper)return;const n=Et(e)?gt(e):t.data||e.duration;isNaN(n)||(this.setAttribute("aria-valuemax",n+""),this.setAttribute("aria-valuemin","0"))}),this.addEventListener(s,()=>{e.emit("timeline/gesture/end"),t.live?Nt(this.proposedSeekBar,this.tooltipEle):mt(this.proposedSeekBar,this.tooltipEle)})}}class FlowplayerLiveStatus extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-live-status");const t=Fe("fp-live-text"),n=Fe("fp-live-indicator","fp-color");t.textContent="live",this.setAttribute("tabindex","0"),this.setAttribute("role","button"),this.append(n,t),this.addEventListener(o,(function(){St(e)}))}}class FlowplayerDuration extends FlowplayerComponent{constructor(e){let t;super(e),this.classList.add("fp-duration"),this.setAttribute("aria-hidden","true"),e.on(A,n=>{if(0==e.reaper||!n.data)return;t=n.data;const r=Et(e)?NaN:n.data.duration||0;if(isNaN(r)||r>=Number.MAX_SAFE_INTEGER)return this.style.display="none";this.style.display="inline-block",this.innerText=He(r)}),e.on(p,()=>{var n,r;0==e.reaper||t.live||(r=this,(n=e).duration&&(r.innerText=He(n.duration)))})}}class FlowplayerElapsedTime extends FlowplayerComponent{constructor(e){let t;super(e),this.classList.add("fp-elapsed"),this.innerText=He(0),this.setAttribute("aria-hidden","true"),e.on(A,e=>{e.data&&(t=e.data)}),e.on("timeupdate",()=>{var n;0!=e.reaper&&(t.live?(n=e,this.innerText=He(n.currentTime)):function(e,t){t.innerText=He(e.currentTime)}(e,this))})}}class FlowplayerControlButtons extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-btns","fp-small-switch");const t=me(e,"flowplayer-small-pause-icon"),n=me(e,"flowplayer-small-play-icon");t.addEventListener("click",(function(){e.togglePlay(),setTimeout((function(){n.focus&&n.focus()}),100)})),n.addEventListener("click",(function(){e.togglePlay(),setTimeout((function(){t.focus&&t.focus()}),100)})),this.append(t,n)}}class FlowplayerLeftRightZone extends FlowplayerComponent{constructor(e,t){super(e),this.classList.add(t);const n=this.classList.contains("fp-left-zone")?-1:1,r=document.createElement("span"),o=me(e,this.classList.contains("fp-left-zone")?G:"flowplayer-fast-forward-icon");o.removeAttribute("tabindex"),r.classList.add("fp-zone-seconds"),this.append(r,o);e.on(w,()=>{r.innerText=""}),e.on("seek:queued",e=>{const t=e.data;if(!t)return;if("number"!=typeof t.offset)return;const n=t.offset;if(0==n)return this.reset_zone();n>0&&this.classList.contains("fp-right-zone")||n<0&&!this.classList.contains("fp-right-zone")?this.render_zone_state(n):this.reset_zone()}),e.on("seek:cancel",()=>{this.reset_zone()}),this.reset_zone(),this.addEventListener("touchend",(function(t){isNaN(e.duration)||isNaN(e.currentTime)||16384&e.opt("ui")||e.hasState(ne)||!e.hasState("will-seek")&&!e.hasState(ie)||e.enqueueSeek(5*n)&&(t.stopPropagation(),t.preventDefault())}))}reset_zone(){const e=this.querySelector(".fp-zone-seconds");e&&(e.innerText="")}render_zone_state(e){const t=this.querySelector(".fp-zone-seconds");t&&(t.innerText=Math.abs(e)+"")}}class FlowplayerErrorView extends FlowplayerComponent{constructor(e){super(e),this.className="fp-error",this.message=document.createElement("p"),this.message.className="error-message",this.errorId=document.createElement("p"),this.errorId.className="error-id",this.errorKey=document.createElement("p"),this.errorKey.className="error-key",this.append(this.errorKey,this.message,this.errorId),this.addEventListener("flowplayer:error",e=>{const t=e.detail.error;this.message.textContent=t.message,this.errorId.textContent="error: "+t.id,this.errorKey.textContent=t.errorKey})}}class FlowplayerHeaderLeftRight extends FlowplayerComponent{constructor(e,t,...n){super(e),this.className=t;const r=e.createComponents(...n);this.append(...r),"fp-left"!==t&&r.forEach(t=>{t.addEventListener(o,()=>e.toggleFullScreen())})}}class FlowplayerMiddleWait extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-wait"),Array(...Array(4)).map((e,t)=>t).forEach(()=>{this.append(document.createElement("b"))})}}class FlowplayerMiddleZone extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-middle-zone");const t=e.createComponents(W,"flowplayer-middle-buttons");this.append(...t)}}class FlowplayerMiddleButtons extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-switch"),[q,B].forEach(t=>{const n=me(e,t);n.removeAttribute("tabindex"),this.append(n)})}}class FlowplayerVolumeControl extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-volume-control");const t=me(e,V);this.append(t),!n().ios&&this.append(me(e,F)),t instanceof FlowplayerIcon&&t.addEventListener(o,(function(){e.toggleMute()}))}}class FlowplayerHeader extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-header"),this.append(...e.createComponents("flowplayer-header-left-zone","flowplayer-header-right-zone")),e.reaper&&e.reaper.set("header",this)}}class FlowplayerControls extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-controls","fp-togglable"),this.append(...e.createComponents("flowplayer-control-buttons",P,D,M,"flowplayer-control-duration","flowplayer-volume-control"))}}class FullscreenIcon extends FlowplayerIcon{constructor(e,t){super(e,t),this.setAttribute("role","button")}}class FlowplayerMiddle extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-middle"),this.append(...e.createComponents("flowplayer-middle-left-zone",H,"flowplayer-middle-right-zone")),this.setAttribute("tabindex","0"),e.reaper&&e.reaper.set("middle",this),this.handleClick(e),this.handleTouch(e),e.once("beforeplay",()=>{this.removeAttribute("tabindex"),this.removeAttribute("role"),this.removeAttribute("aria-label")})}handleClick(e){[o,i].forEach(t=>this.addEventListener(t,(function(n){if(!(n.defaultPrevented||e.root.classList.contains("is-endscreen")||t===i&&e.root.classList.contains("no-fullscreen")))return n.preventDefault(),e.emit(n.type),!1}))),e.on(o,(function(t){setTimeout((function(){t.defaultPrevented||e.togglePlay()}),0)})),e.on(i,(function(t){setTimeout((function(){t.defaultPrevented||e.toggleFullScreen()}),0)}))}handleTouch(e){let t=!1;this.addEventListener("touchend",(function(t){t.cancelable&&!e.hasState("is-endscreen")&&(t.preventDefault(),e.emit(t.type,{source:t}))})),e.on("touchend",(function(n){setTimeout((function(){if(n.defaultPrevented)return;if(e.ended)return e.togglePlay(!0);const r=e.hasState(X);t&&clearTimeout(t),(r||e.hasState(ie))&&(e.hasState(ie)&&(e.setState(ie,!1),e.setState("is-hovered",!1)),e.togglePlay(),r)||(e.setState(ie,!0),e.paused||(t=setTimeout((function(){t=!1,e.setState(ie,!1),e.setState("is-hovered",!1)}),2e3)))}),0)}))}}class FlowplayerUi extends FlowplayerComponent{constructor(e){super(e),this.classList.add("fp-ui"),this.append(...e.createComponents(U,x,C))}}class Default{constructor(e){ye(e,R,FlowplayerUi),ye(e,"flowplayer-error",FlowplayerErrorView),ye(e,C,FlowplayerControls),ye(e,P,FlowplayerLiveStatus),ye(e,"flowplayer-control-duration",FlowplayerDuration),ye(e,M,FlowplayerTimelineBar),ye(e,D,FlowplayerElapsedTime),ye(e,F,FlowplayerVolumeBar),ye(e,"flowplayer-volume-control",FlowplayerVolumeControl),ye(e,"flowplayer-control-buttons",FlowplayerControlButtons),ye(e,U,FlowplayerHeader),ye(e,L,FlowplayerLogo),ye(e,"flowplayer-header-duration",FlowplayerHeaderDuration),ye(e,"flowplayer-header-left-zone",class extends FlowplayerHeaderLeftRight{constructor(e){super(e,"fp-left","flowplayer-header-duration")}}),ye(e,"flowplayer-header-right-zone",class extends FlowplayerHeaderLeftRight{constructor(e){super(e,"fp-right fp-togglable","flowplayer-fullscreen-enter-icon","flowplayer-fullscreen-exit-icon")}}),ye(e,x,FlowplayerMiddle),ye(e,H,FlowplayerMiddleZone),ye(e,W,FlowplayerMiddleWait),ye(e,"flowplayer-middle-buttons",FlowplayerMiddleButtons),ye(e,"flowplayer-middle-right-zone",class extends FlowplayerLeftRightZone{constructor(e){super(e,"fp-right-zone")}}),ye(e,"flowplayer-middle-left-zone",class extends FlowplayerLeftRightZone{constructor(e){super(e,"fp-left-zone")}}),ye(e,"flowplayer-small-play-icon",class extends FlowplayerIcon{constructor(e){super(e,sr),this.setAttribute("role","button")}}),ye(e,"flowplayer-small-pause-icon",class extends FlowplayerIcon{constructor(e){super(e,lr),this.setAttribute("role","button")}}),ye(e,q,class extends FlowplayerIcon{constructor(e){super(e,or),this.setAttribute("role","button")}}),ye(e,B,class extends FlowplayerIcon{constructor(e){super(e,ir),this.setAttribute("role","button")}}),ye(e,"flowplayer-fullscreen-enter-icon",class extends FullscreenIcon{constructor(e){super(e,nr)}}),ye(e,"flowplayer-fullscreen-exit-icon",class extends FullscreenIcon{constructor(e){super(e,rr)}}),ye(e,"flowplayer-fast-forward-icon",class extends FlowplayerIcon{constructor(e){super(e,cr)}}),ye(e,G,class extends FlowplayerIcon{constructor(e){super(e,ur)}}),ye(e,V,class extends FlowplayerIcon{constructor(e){super(e,ar),this.classList.add("fp-volumebtn"),this.setAttribute("role","switch"),e.on("volumechange",()=>{const t=0==e.volume||e.muted;this.setAttribute("aria-label",e.i18n("core.muted","Muted")),this.setAttribute("aria-checked",t?"true":"false")})}})}init(e,t,n){var r;er(e,0,n),Zn(e,t,n),r=n,"undefined"!=typeof window&&"ontouchstart"in window&&r.setState("is-touch-device",!0),r.setState("is-accessibility",!1)}}return Default.pluginName="default",Nn.extensions.unshift.apply(Nn.extensions,[I18n,jn,Default]),Object.assign(Nn,{ui:Yn,i18n:I18n})}));