@videts/vide 0.9.2 → 0.9.7

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 (76) hide show
  1. package/README.md +2 -2
  2. package/dist/{chunk-G74QBLVV.mjs → chunk-2UHU76KF.mjs} +1 -1
  3. package/dist/{chunk-2OVLZ27V.mjs → chunk-7R6TO7ZE.mjs} +1 -1
  4. package/dist/chunk-AQLZYNP7.mjs +1 -0
  5. package/dist/{chunk-VPH4JIJV.mjs → chunk-CD27DYME.mjs} +1 -1
  6. package/dist/chunk-TNHV5PHM.mjs +1 -0
  7. package/dist/chunk-YBNODS5R.mjs +2 -0
  8. package/dist/chunk-YE6RITJU.mjs +1 -0
  9. package/dist/{chunk-NA4C7W64.mjs → chunk-ZUEPNVVV.mjs} +1 -1
  10. package/dist/dash/index.d.ts +2 -2
  11. package/dist/drm/index.d.ts +1 -1
  12. package/dist/drm/index.js +1 -1
  13. package/dist/drm/index.mjs +1 -1
  14. package/dist/hls/index.d.ts +2 -2
  15. package/dist/hls/index.js +1 -1
  16. package/dist/hls/index.mjs +1 -1
  17. package/dist/index.d.ts +2 -2
  18. package/dist/index.js +1 -1
  19. package/dist/index.mjs +1 -1
  20. package/dist/omid/index.d.ts +2 -2
  21. package/dist/react/index.d.ts +7 -8
  22. package/dist/react/index.js +2 -2
  23. package/dist/react/index.mjs +2 -2
  24. package/dist/simid/index.d.ts +2 -2
  25. package/dist/ssai/index.d.ts +1 -1
  26. package/dist/ssai/index.js +1 -1
  27. package/dist/ssai/index.mjs +1 -1
  28. package/dist/svelte/VideUI.svelte +2 -1
  29. package/dist/svelte/Video.svelte +2 -9
  30. package/dist/svelte/Video.svelte.d.ts +0 -2
  31. package/dist/svelte/components/AdCountdown.svelte +1 -1
  32. package/dist/svelte/components/AdLearnMore.svelte +19 -6
  33. package/dist/svelte/components/AdLearnMore.svelte.d.ts +0 -1
  34. package/dist/svelte/components/AdSkip.svelte +7 -7
  35. package/dist/svelte/components/ErrorDisplay.svelte +1 -1
  36. package/dist/svelte/components/Loader.svelte +1 -1
  37. package/dist/svelte/icons/IconExternalLink.svelte +4 -0
  38. package/dist/svelte/icons/IconExternalLink.svelte.d.ts +26 -0
  39. package/dist/svelte/icons/IconSkipForward.svelte +3 -0
  40. package/dist/svelte/icons/IconSkipForward.svelte.d.ts +26 -0
  41. package/dist/svelte/index.d.ts +2 -0
  42. package/dist/svelte/index.js +2 -0
  43. package/dist/{types-BsEF8iWC.d.ts → types-BD5ZFUAt.d.ts} +6 -2
  44. package/dist/{types-CwjR99DL.d.ts → types-CABQEV7R.d.ts} +1 -1
  45. package/dist/{types-SuT99_Z3.d.ts → types-CXi-EgbJ.d.ts} +1 -1
  46. package/dist/{types-DzY1cmXC.d.ts → types-CaEBUCfi.d.ts} +1 -1
  47. package/dist/{types-C1_eVsFF.d.ts → types-DWH68b8d.d.ts} +1 -1
  48. package/dist/{types-COeag8fU.d.ts → types-JlkZYMyA.d.ts} +1 -1
  49. package/dist/ui/index.d.ts +4 -4
  50. package/dist/ui/index.js +1 -1
  51. package/dist/ui/index.mjs +1 -1
  52. package/dist/ui/theme.css +92 -9
  53. package/dist/vast/index.d.ts +6 -6
  54. package/dist/vast/index.js +1 -1
  55. package/dist/vast/index.mjs +1 -1
  56. package/dist/vide.core.global.js +1 -1
  57. package/dist/vide.dash.global.js +1 -1
  58. package/dist/vide.drm.global.js +1 -1
  59. package/dist/vide.global.js +2 -2
  60. package/dist/vide.hls.global.js +1 -1
  61. package/dist/vide.ssai.global.js +1 -1
  62. package/dist/vide.ui.css +92 -9
  63. package/dist/vide.ui.global.js +1 -1
  64. package/dist/vide.vast.global.js +1 -1
  65. package/dist/vide.vmap.global.js +1 -1
  66. package/dist/vmap/index.d.ts +4 -4
  67. package/dist/vmap/index.js +1 -1
  68. package/dist/vmap/index.mjs +1 -1
  69. package/dist/vue/index.d.ts +14 -42
  70. package/dist/vue/index.js +2 -2
  71. package/dist/vue/index.mjs +2 -2
  72. package/package.json +2 -2
  73. package/dist/chunk-3RDTWUHH.mjs +0 -1
  74. package/dist/chunk-6DWWYSH4.mjs +0 -1
  75. package/dist/chunk-LPSJOF2I.mjs +0 -2
  76. package/dist/chunk-WINCDUN5.mjs +0 -1
@@ -1,6 +1,6 @@
1
- import { P as Player, f as Plugin } from '../types-BsEF8iWC.js';
2
- import { V as VastResponse, R as ResolveOptions, a as VastCompanionAd, b as VastNonLinearAds, c as VastAd, d as VastLinear, A as AdPlugin, e as VastPluginOptions } from '../types-COeag8fU.js';
3
- export { f as AdCategory, g as AdVerification, C as CompanionHTMLResource, h as CompanionIFrameResource, i as CompanionRenderingMode, j as CompanionRequired, k as CompanionResource, l as CompanionStaticResource, m as CompanionTrackingEvents, N as NonLinearAd, n as VastCompanionAds, o as VastExtension, p as VastProgressEvent, q as VastViewableImpression } from '../types-COeag8fU.js';
1
+ import { g as PluginPlayer, f as Plugin } from '../types-BD5ZFUAt.js';
2
+ import { V as VastResponse, R as ResolveOptions, a as VastCompanionAd, b as VastNonLinearAds, c as VastAd, d as VastLinear, A as AdPlugin, e as VastPluginOptions } from '../types-JlkZYMyA.js';
3
+ export { f as AdCategory, g as AdVerification, C as CompanionHTMLResource, h as CompanionIFrameResource, i as CompanionRenderingMode, j as CompanionRequired, k as CompanionResource, l as CompanionStaticResource, m as CompanionTrackingEvents, N as NonLinearAd, n as VastCompanionAds, o as VastExtension, p as VastProgressEvent, q as VastViewableImpression } from '../types-JlkZYMyA.js';
4
4
 
5
5
  /**
6
6
  * Parse a VAST XML string into a VastResponse object.
@@ -45,7 +45,7 @@ declare function selectMediaFile(files: {
45
45
  } | null;
46
46
 
47
47
  interface PlaySingleAdOptions {
48
- player: Player;
48
+ player: PluginPlayer;
49
49
  ad: VastAd;
50
50
  linear: VastLinear;
51
51
  source: "vast" | "vmap";
@@ -108,7 +108,7 @@ declare function classifyAds(vastAds: VastAd[]): ClassifiedAds;
108
108
  * Per VAST 3.3.1: when a pod ad fails, a stand-alone ad from
109
109
  * `standalonePool` is substituted before moving to the next pod ad.
110
110
  */
111
- declare function playPod(player: Player, ads: PlayableAd[], options: {
111
+ declare function playPod(player: PluginPlayer, ads: PlayableAd[], options: {
112
112
  source: "vast" | "vmap";
113
113
  adPlugins?: ((ad: VastAd) => AdPlugin[]) | undefined;
114
114
  /** Called synchronously when the last ad in the pod finishes. */
@@ -123,7 +123,7 @@ declare function playPod(player: Player, ads: PlayableAd[], options: {
123
123
  * Try ads in waterfall order. Play the first one that loads successfully.
124
124
  * Returns the result of the first successful ad, or null if all fail.
125
125
  */
126
- declare function playWaterfall(player: Player, ads: PlayableAd[], options: {
126
+ declare function playWaterfall(player: PluginPlayer, ads: PlayableAd[], options: {
127
127
  source: "vast" | "vmap";
128
128
  adPlugins?: ((ad: VastAd) => AdPlugin[]) | undefined;
129
129
  /** Called synchronously when the winning ad finishes (or last failure). */
@@ -1 +1 @@
1
- export{a as vast}from'../chunk-3RDTWUHH.mjs';export{j as VAST_BREAK_SHORTENED,i as VAST_CATEGORY_BLOCKED,h as VAST_CATEGORY_REQUIRED,E as VAST_COMPANION_ERROR,H as VAST_COMPANION_FETCH_ERROR,G as VAST_COMPANION_REQUIRED_ERROR,F as VAST_COMPANION_SIZE_ERROR,I as VAST_COMPANION_UNSUPPORTED,w as VAST_CONDITIONAL_REJECTED,f as VAST_DURATION_ERROR,o as VAST_INLINE_TIMEOUT,L as VAST_INTERACTIVE_ERROR,x as VAST_INTERACTIVE_NOT_EXECUTED,e as VAST_LINEARITY_ERROR,p as VAST_LINEAR_ERROR,t as VAST_MEDIA_DISPLAY_ERROR,q as VAST_MEDIA_NOT_FOUND,r as VAST_MEDIA_TIMEOUT,s as VAST_MEDIA_UNSUPPORTED,v as VAST_MEZZANINE_DOWNLOADING,z as VAST_MEZZANINE_INVALID,u as VAST_MEZZANINE_REQUIRED,A as VAST_NONLINEAR_ERROR,C as VAST_NONLINEAR_FETCH_ERROR,B as VAST_NONLINEAR_SIZE_ERROR,D as VAST_NONLINEAR_UNSUPPORTED,n as VAST_NO_ADS,b as VAST_SCHEMA_ERROR,g as VAST_SIZE_ERROR,d as VAST_TRAFFICKING_ERROR,J as VAST_UNDEFINED_ERROR,y as VAST_VERIFICATION_NOT_EXECUTED,c as VAST_VERSION_UNSUPPORTED,K as VAST_VPAID_ERROR,k as VAST_WRAPPER_ERROR,m as VAST_WRAPPER_LIMIT,l as VAST_WRAPPER_TIMEOUT,a as VAST_XML_PARSE_ERROR,R as classifyAds,N as fetchVast,M as parseVast,S as playPod,Q as playSingleAd,T as playWaterfall,O as resolveVast,P as selectMediaFile}from'../chunk-G74QBLVV.mjs';export{c as getQuartile,b as track,e as trackCompanionView,a as trackError,f as trackNonLinear}from'../chunk-UY5CGRNN.mjs';
1
+ export{a as vast}from'../chunk-YE6RITJU.mjs';export{j as VAST_BREAK_SHORTENED,i as VAST_CATEGORY_BLOCKED,h as VAST_CATEGORY_REQUIRED,E as VAST_COMPANION_ERROR,H as VAST_COMPANION_FETCH_ERROR,G as VAST_COMPANION_REQUIRED_ERROR,F as VAST_COMPANION_SIZE_ERROR,I as VAST_COMPANION_UNSUPPORTED,w as VAST_CONDITIONAL_REJECTED,f as VAST_DURATION_ERROR,o as VAST_INLINE_TIMEOUT,L as VAST_INTERACTIVE_ERROR,x as VAST_INTERACTIVE_NOT_EXECUTED,e as VAST_LINEARITY_ERROR,p as VAST_LINEAR_ERROR,t as VAST_MEDIA_DISPLAY_ERROR,q as VAST_MEDIA_NOT_FOUND,r as VAST_MEDIA_TIMEOUT,s as VAST_MEDIA_UNSUPPORTED,v as VAST_MEZZANINE_DOWNLOADING,z as VAST_MEZZANINE_INVALID,u as VAST_MEZZANINE_REQUIRED,A as VAST_NONLINEAR_ERROR,C as VAST_NONLINEAR_FETCH_ERROR,B as VAST_NONLINEAR_SIZE_ERROR,D as VAST_NONLINEAR_UNSUPPORTED,n as VAST_NO_ADS,b as VAST_SCHEMA_ERROR,g as VAST_SIZE_ERROR,d as VAST_TRAFFICKING_ERROR,J as VAST_UNDEFINED_ERROR,y as VAST_VERIFICATION_NOT_EXECUTED,c as VAST_VERSION_UNSUPPORTED,K as VAST_VPAID_ERROR,k as VAST_WRAPPER_ERROR,m as VAST_WRAPPER_LIMIT,l as VAST_WRAPPER_TIMEOUT,a as VAST_XML_PARSE_ERROR,R as classifyAds,N as fetchVast,M as parseVast,S as playPod,Q as playSingleAd,T as playWaterfall,O as resolveVast,P as selectMediaFile}from'../chunk-2UHU76KF.mjs';export{c as getQuartile,b as track,e as trackCompanionView,a as trackError,f as trackNonLinear}from'../chunk-UY5CGRNN.mjs';
@@ -1 +1 @@
1
- export{a as vast}from'../chunk-3RDTWUHH.mjs';export{j as VAST_BREAK_SHORTENED,i as VAST_CATEGORY_BLOCKED,h as VAST_CATEGORY_REQUIRED,E as VAST_COMPANION_ERROR,H as VAST_COMPANION_FETCH_ERROR,G as VAST_COMPANION_REQUIRED_ERROR,F as VAST_COMPANION_SIZE_ERROR,I as VAST_COMPANION_UNSUPPORTED,w as VAST_CONDITIONAL_REJECTED,f as VAST_DURATION_ERROR,o as VAST_INLINE_TIMEOUT,L as VAST_INTERACTIVE_ERROR,x as VAST_INTERACTIVE_NOT_EXECUTED,e as VAST_LINEARITY_ERROR,p as VAST_LINEAR_ERROR,t as VAST_MEDIA_DISPLAY_ERROR,q as VAST_MEDIA_NOT_FOUND,r as VAST_MEDIA_TIMEOUT,s as VAST_MEDIA_UNSUPPORTED,v as VAST_MEZZANINE_DOWNLOADING,z as VAST_MEZZANINE_INVALID,u as VAST_MEZZANINE_REQUIRED,A as VAST_NONLINEAR_ERROR,C as VAST_NONLINEAR_FETCH_ERROR,B as VAST_NONLINEAR_SIZE_ERROR,D as VAST_NONLINEAR_UNSUPPORTED,n as VAST_NO_ADS,b as VAST_SCHEMA_ERROR,g as VAST_SIZE_ERROR,d as VAST_TRAFFICKING_ERROR,J as VAST_UNDEFINED_ERROR,y as VAST_VERIFICATION_NOT_EXECUTED,c as VAST_VERSION_UNSUPPORTED,K as VAST_VPAID_ERROR,k as VAST_WRAPPER_ERROR,m as VAST_WRAPPER_LIMIT,l as VAST_WRAPPER_TIMEOUT,a as VAST_XML_PARSE_ERROR,R as classifyAds,N as fetchVast,M as parseVast,S as playPod,Q as playSingleAd,T as playWaterfall,O as resolveVast,P as selectMediaFile}from'../chunk-G74QBLVV.mjs';export{c as getQuartile,b as track,e as trackCompanionView,a as trackError,f as trackNonLinear}from'../chunk-UY5CGRNN.mjs';
1
+ export{a as vast}from'../chunk-YE6RITJU.mjs';export{j as VAST_BREAK_SHORTENED,i as VAST_CATEGORY_BLOCKED,h as VAST_CATEGORY_REQUIRED,E as VAST_COMPANION_ERROR,H as VAST_COMPANION_FETCH_ERROR,G as VAST_COMPANION_REQUIRED_ERROR,F as VAST_COMPANION_SIZE_ERROR,I as VAST_COMPANION_UNSUPPORTED,w as VAST_CONDITIONAL_REJECTED,f as VAST_DURATION_ERROR,o as VAST_INLINE_TIMEOUT,L as VAST_INTERACTIVE_ERROR,x as VAST_INTERACTIVE_NOT_EXECUTED,e as VAST_LINEARITY_ERROR,p as VAST_LINEAR_ERROR,t as VAST_MEDIA_DISPLAY_ERROR,q as VAST_MEDIA_NOT_FOUND,r as VAST_MEDIA_TIMEOUT,s as VAST_MEDIA_UNSUPPORTED,v as VAST_MEZZANINE_DOWNLOADING,z as VAST_MEZZANINE_INVALID,u as VAST_MEZZANINE_REQUIRED,A as VAST_NONLINEAR_ERROR,C as VAST_NONLINEAR_FETCH_ERROR,B as VAST_NONLINEAR_SIZE_ERROR,D as VAST_NONLINEAR_UNSUPPORTED,n as VAST_NO_ADS,b as VAST_SCHEMA_ERROR,g as VAST_SIZE_ERROR,d as VAST_TRAFFICKING_ERROR,J as VAST_UNDEFINED_ERROR,y as VAST_VERIFICATION_NOT_EXECUTED,c as VAST_VERSION_UNSUPPORTED,K as VAST_VPAID_ERROR,k as VAST_WRAPPER_ERROR,m as VAST_WRAPPER_LIMIT,l as VAST_WRAPPER_TIMEOUT,a as VAST_XML_PARSE_ERROR,R as classifyAds,N as fetchVast,M as parseVast,S as playPod,Q as playSingleAd,T as playWaterfall,O as resolveVast,P as selectMediaFile}from'../chunk-2UHU76KF.mjs';export{c as getQuartile,b as track,e as trackCompanionView,a as trackError,f as trackNonLinear}from'../chunk-UY5CGRNN.mjs';
@@ -1 +1 @@
1
- var Vide=(function(exports){'use strict';var F=1e3,B=2e3,$=2001,z=2002,G=3e3,J=3001,X=4e3,Z=4001,ee=4002,te=4003;var ne={idle:["loading","playing","error"],loading:["ready","playing","error"],ready:["playing","loading","ad:loading","error"],playing:["paused","buffering","loading","ad:loading","ended","error"],paused:["playing","loading","ad:loading","ended","error"],buffering:["playing","loading","error"],"ad:loading":["ad:playing","playing","error"],"ad:playing":["ad:paused","ad:loading","playing","error"],"ad:paused":["ad:playing","ad:loading","playing","error"],ended:["idle","loading","error"],error:["idle","loading"]};function re(t,a){return ne[t].includes(a)}function ae(t){return t.readyState>=3?t.paused?"ready":"playing":t.readyState>=1?"loading":"idle"}function ie(t){let a=ae(t),g=t instanceof HTMLAudioElement,E=new Map,y=[],c=false,k=[],d=null,m=t.getAttribute("src")??"",L=false,o=new Map,b=t.duration===Number.POSITIVE_INFINITY,R=null;function x(e){let n=E.get(e);return n||(n=new Set,E.set(e,n)),n}function i(e,n){let r=E.get(e);if(r)for(let u of r)try{u(n);}catch(p){console.error("[vide] Event handler error:",p);}}function s(e){if(e===a)return;if(!re(a,e)){console.warn(`[vide] Invalid transition: ${a} \u2192 ${e}`);return}let n=a;a=e,i("statechange",{from:n,to:e});}function v(){return a==="ad:loading"||a==="ad:playing"||a==="ad:paused"}function h(){!v()&&t.paused&&s("loading");}function S(){a==="loading"&&s("ready");}function P(){v()||s("playing"),i("play",void 0);}function _(){v()||s("paused"),i("pause",void 0);}function I(){a==="playing"&&s("buffering");}function H(){(a==="buffering"||a==="ready")&&s("playing");}function M(){v()||s("ended"),i("ended",void 0);}function A(){i("timeupdate",{currentTime:t.currentTime,duration:t.duration});}function C(){let e=t.error;v()||s("error"),i("error",{code:e?.code??1e3,message:e?.message??"Unknown error",source:"core"});}function w(){let e=t.duration===Number.POSITIVE_INFINITY;e!==b&&(b=e,i("livestatechange",{isLive:e}));}t.addEventListener("durationchange",w),t.addEventListener("loadstart",h),t.addEventListener("canplay",S),t.addEventListener("play",P),t.addEventListener("pause",_),t.addEventListener("waiting",I),t.addEventListener("playing",H),t.addEventListener("ended",M),t.addEventListener("timeupdate",A),t.addEventListener("error",C);function T(e,n){return {id:n,label:e.label,language:e.language,kind:e.kind,active:e.mode==="showing"}}function D(e){if(!e)return [];let n=[];for(let r=0;r<e.length;r++){let u=e[r];n.push({startTime:u.startTime,endTime:u.endTime,text:u.text??""});}return n}let l=new Map;function O(e){if(l.has(e))return;let n=()=>{e.mode==="showing"&&i("cuechange",{cues:D(e.activeCues)});};l.set(e,n),e.addEventListener("cuechange",n);}function K(e){let n=l.get(e);n&&(e.removeEventListener("cuechange",n),l.delete(e));}function V(){let e=[];for(let n=0;n<t.textTracks.length;n++)e.push(T(t.textTracks[n],n));i("texttracksavailable",{tracks:e});}function N(){for(let e=0;e<t.textTracks.length;e++)O(t.textTracks[e]);V();}function Q(e){e.track&&K(e.track),V();}let q=typeof t.textTracks.addEventListener=="function";if(q){t.textTracks.addEventListener("addtrack",N),t.textTracks.addEventListener("removetrack",Q);for(let e=0;e<t.textTracks.length;e++)O(t.textTracks[e]);}let U=new Set(["statechange","play","pause","ended","timeupdate","livestatechange","error","ad:companions","ad:nonlinears","ad:start","ad:end","ad:skip","ad:click","ad:error","ad:impression","ad:loaded","ad:quartile","ad:mute","ad:unmute","ad:volumeChange","ad:fullscreen","ad:breakStart","ad:breakEnd","ad:pod:start","ad:pod:end","ad:pod:adstart","ad:pod:adend","qualitiesavailable","qualitychange","texttrackchange","texttracksavailable","cuechange","destroy"]);function Y(){if(t.removeEventListener("durationchange",w),t.removeEventListener("loadstart",h),t.removeEventListener("canplay",S),t.removeEventListener("play",P),t.removeEventListener("pause",_),t.removeEventListener("waiting",I),t.removeEventListener("playing",H),t.removeEventListener("ended",M),t.removeEventListener("timeupdate",A),t.removeEventListener("error",C),q){t.textTracks.removeEventListener("addtrack",N),t.textTracks.removeEventListener("removetrack",Q);for(let[e,n]of l)e.removeEventListener("cuechange",n);l.clear();}}function j(){if(d||L)return;let e=t.querySelectorAll("source");for(let n of e){let r=n.getAttribute("src"),u=n.getAttribute("type")??void 0;if(r){for(let p of k)if(p.canHandle(r,u)){d=p,m=r,s("loading"),p.load(r,t);for(let W of e)W.remove();return}}}}let f={get el(){return t},get state(){return a},on(e,n){U.has(e)?x(e).add(n):t.addEventListener(e,n);},off(e,n){U.has(e)?x(e).delete(n):t.removeEventListener(e,n);},emit:i,once(e,n){let r=u=>{f.off(e,r),n(u);};f.on(e,r);},play(){return t.play()},pause(){t.pause();},get currentTime(){return t.currentTime},set currentTime(e){t.currentTime=e;},get duration(){return t.duration},set duration(e){},get volume(){return t.volume},set volume(e){t.volume=e;},get muted(){return t.muted},set muted(e){t.muted=e;},get playbackRate(){return t.playbackRate},set playbackRate(e){t.playbackRate=e;},get paused(){return t.paused},get ended(){return t.ended},get readyState(){return t.readyState},get buffered(){return t.buffered},get seekable(){return t.seekable},get seeking(){return t.seeking},get isLive(){return c?false:t.duration===Number.POSITIVE_INFINITY},get seekableRange(){return c||t.seekable.length===0?null:{start:t.seekable.start(0),end:t.seekable.end(0)}},get qualities(){return o.get("qualities")??[]},get currentQuality(){return o.get("currentQuality")??null},get isAutoQuality(){return o.get("autoQuality")??true},get isAudio(){return g},setQuality(e){let n=o.get("qualitySetter");n&&n(e);},get textTracks(){return t.textTracks},getTextTracks(){let e=[];for(let n=0;n<t.textTracks.length;n++)e.push(T(t.textTracks[n],n));return e},getActiveTextTrack(){for(let e=0;e<t.textTracks.length;e++)if(t.textTracks[e].mode==="showing")return T(t.textTracks[e],e);return null},get activeCues(){for(let e=0;e<t.textTracks.length;e++)if(t.textTracks[e].mode==="showing")return D(t.textTracks[e].activeCues);return []},setTextTrack(e){for(let r=0;r<t.textTracks.length;r++)t.textTracks[r].mode=r===e?"showing":"disabled";let n=e>=0&&e<t.textTracks.length?T(t.textTracks[e],e):null;i("texttrackchange",{track:n});},addTextTrack(e){let n=document.createElement("track");n.src=e.src,n.label=e.label,n.srclang=e.language,n.kind=e.kind??"subtitles",e.default&&(n.default=true),t.appendChild(n);},get videoWidth(){return g?0:t.videoWidth},get videoHeight(){return g?0:t.videoHeight},get networkState(){return t.networkState},get loop(){return t.loop},set loop(e){t.loop=e;},get autoplay(){return t.autoplay},set autoplay(e){t.autoplay=e;},get poster(){return g?"":t.poster},set poster(e){g||(t.poster=e);},get preload(){return t.preload},set preload(e){t.preload=e;},get defaultPlaybackRate(){return t.defaultPlaybackRate},set defaultPlaybackRate(e){t.defaultPlaybackRate=e;},get defaultMuted(){return t.defaultMuted},set defaultMuted(e){t.defaultMuted=e;},get crossOrigin(){return t.crossOrigin},set crossOrigin(e){t.crossOrigin=e;},get controls(){return t.controls},set controls(e){t.controls=e;},get src(){return m},set src(e){if(d&&(d.unload(t),d=null),o.delete("qualities"),o.delete("currentQuality"),o.delete("autoQuality"),o.delete("qualitySetter"),R=null,L=true,m=e,!e){t.removeAttribute("src");return}for(let n of k)if(n.canHandle(e)){d=n,s("loading"),n.load(e,t);return}t.src=e;},registerSourceHandler(e){if(c){console.warn("[vide] Cannot register source handler after destroy");return}k.push(e),!L&&!d&&j();},addEventListener(e,n,r){t.addEventListener(e,n,r);},removeEventListener(e,n,r){t.removeEventListener(e,n,r);},use(e){if(c){console.warn("[vide] Cannot use plugin after destroy");return}let n=e.setup(f);n&&y.push(n);},setPluginData(e,n){if(o.set(e,n),e==="qualities")i("qualitiesavailable",{qualities:n});else if(e==="currentQuality"){let r=n;i("qualitychange",{from:R,to:r}),R=r;}},getPluginData(e){return o.get(e)},destroy(){if(!c){c=true,d&&(d.unload(t),d=null);for(let e of y)try{e();}catch(n){console.error("[vide] Plugin cleanup error:",n);}y.length=0,i("destroy",void 0),Y(),E.clear(),o.clear();}}};return f._setState=s,f}exports.ERR_DASH_IMPORT=G;exports.ERR_DASH_PLAYBACK=J;exports.ERR_DRM_CERTIFICATE=te;exports.ERR_DRM_DETECTION=Z;exports.ERR_DRM_LICENSE=ee;exports.ERR_DRM_UNSUPPORTED=X;exports.ERR_HLS_FATAL=z;exports.ERR_HLS_IMPORT=$;exports.ERR_HLS_UNSUPPORTED=B;exports.ERR_MEDIA=F;exports.createPlayer=ie;return exports;})({});
1
+ var Vide=(function(exports){'use strict';var F=1e3,B=2e3,$=2001,z=2002,G=3e3,J=3001,X=4e3,Z=4001,ee=4002,te=4003;var ne={idle:["loading","playing","error"],loading:["ready","playing","error"],ready:["playing","loading","ad:loading","ended","error"],playing:["paused","buffering","loading","ad:loading","ended","error"],paused:["playing","loading","ad:loading","ended","error"],buffering:["playing","loading","error"],"ad:loading":["ad:playing","playing","error"],"ad:playing":["ad:paused","ad:loading","playing","error"],"ad:paused":["ad:playing","ad:loading","playing","error"],ended:["idle","loading","ad:loading","error"],error:["idle","loading"]};function re(t,a){return ne[t].includes(a)}function ae(t){return t.readyState>=3?t.paused?"ready":"playing":t.readyState>=1?"loading":"idle"}function ie(t){let a=ae(t),g=t instanceof HTMLAudioElement,E=new Map,y=[],c=false,k=[],d=null,m=t.getAttribute("src")??"",L=false,o=new Map,b=t.duration===Number.POSITIVE_INFINITY,R=null;function x(e){let n=E.get(e);return n||(n=new Set,E.set(e,n)),n}function i(e,n){let r=E.get(e);if(r)for(let u of r)try{u(n);}catch(p){console.error("[vide] Event handler error:",p);}}function s(e){if(e===a)return;if(!re(a,e)){console.warn(`[vide] Invalid transition: ${a} \u2192 ${e}`);return}let n=a;a=e,i("statechange",{from:n,to:e});}function v(){return a==="ad:loading"||a==="ad:playing"||a==="ad:paused"}function h(){!v()&&t.paused&&s("loading");}function S(){a==="loading"&&s("ready");}function P(){v()||s("playing"),i("play",void 0);}function _(){v()||s("paused"),i("pause",void 0);}function I(){a==="playing"&&s("buffering");}function H(){(a==="buffering"||a==="ready")&&s("playing");}function M(){v()||s("ended"),i("ended",void 0);}function A(){i("timeupdate",{currentTime:t.currentTime,duration:t.duration});}function C(){let e=t.error;v()||s("error"),i("error",{code:e?.code??1e3,message:e?.message??"Unknown error",source:"core"});}function w(){let e=t.duration===Number.POSITIVE_INFINITY;e!==b&&(b=e,i("livestatechange",{isLive:e}));}t.addEventListener("durationchange",w),t.addEventListener("loadstart",h),t.addEventListener("canplay",S),t.addEventListener("play",P),t.addEventListener("pause",_),t.addEventListener("waiting",I),t.addEventListener("playing",H),t.addEventListener("ended",M),t.addEventListener("timeupdate",A),t.addEventListener("error",C);function T(e,n){return {id:n,label:e.label,language:e.language,kind:e.kind,active:e.mode==="showing"}}function D(e){if(!e)return [];let n=[];for(let r=0;r<e.length;r++){let u=e[r];n.push({startTime:u.startTime,endTime:u.endTime,text:u.text??""});}return n}let l=new Map;function O(e){if(l.has(e))return;let n=()=>{e.mode==="showing"&&i("cuechange",{cues:D(e.activeCues)});};l.set(e,n),e.addEventListener("cuechange",n);}function K(e){let n=l.get(e);n&&(e.removeEventListener("cuechange",n),l.delete(e));}function V(){let e=[];for(let n=0;n<t.textTracks.length;n++)e.push(T(t.textTracks[n],n));i("texttracksavailable",{tracks:e});}function N(){for(let e=0;e<t.textTracks.length;e++)O(t.textTracks[e]);V();}function Q(e){e.track&&K(e.track),V();}let q=typeof t.textTracks.addEventListener=="function";if(q){t.textTracks.addEventListener("addtrack",N),t.textTracks.addEventListener("removetrack",Q);for(let e=0;e<t.textTracks.length;e++)O(t.textTracks[e]);}let U=new Set(["statechange","play","pause","ended","timeupdate","livestatechange","error","ad:companions","ad:nonlinears","ad:start","ad:end","ad:skip","ad:click","ad:error","ad:impression","ad:loaded","ad:quartile","ad:mute","ad:unmute","ad:volumeChange","ad:fullscreen","ad:breakStart","ad:breakEnd","ad:pod:start","ad:pod:end","ad:pod:adstart","ad:pod:adend","qualitiesavailable","qualitychange","texttrackchange","texttracksavailable","cuechange","destroy"]);function Y(){if(t.removeEventListener("durationchange",w),t.removeEventListener("loadstart",h),t.removeEventListener("canplay",S),t.removeEventListener("play",P),t.removeEventListener("pause",_),t.removeEventListener("waiting",I),t.removeEventListener("playing",H),t.removeEventListener("ended",M),t.removeEventListener("timeupdate",A),t.removeEventListener("error",C),q){t.textTracks.removeEventListener("addtrack",N),t.textTracks.removeEventListener("removetrack",Q);for(let[e,n]of l)e.removeEventListener("cuechange",n);l.clear();}}function j(){if(d||L)return;let e=t.querySelectorAll("source");for(let n of e){let r=n.getAttribute("src"),u=n.getAttribute("type")??void 0;if(r){for(let p of k)if(p.canHandle(r,u)){d=p,m=r,s("loading"),p.load(r,t);for(let W of e)W.remove();return}}}}let f={get el(){return t},get state(){return a},on(e,n){U.has(e)?x(e).add(n):t.addEventListener(e,n);},off(e,n){U.has(e)?x(e).delete(n):t.removeEventListener(e,n);},emit:i,once(e,n){let r=u=>{f.off(e,r),n(u);};f.on(e,r);},play(){return t.play()},pause(){t.pause();},get currentTime(){return t.currentTime},set currentTime(e){t.currentTime=e;},get duration(){return t.duration},set duration(e){},get volume(){return t.volume},set volume(e){t.volume=e;},get muted(){return t.muted},set muted(e){t.muted=e;},get playbackRate(){return t.playbackRate},set playbackRate(e){t.playbackRate=e;},get paused(){return t.paused},get ended(){return t.ended},get readyState(){return t.readyState},get buffered(){return t.buffered},get seekable(){return t.seekable},get seeking(){return t.seeking},get isLive(){return c?false:t.duration===Number.POSITIVE_INFINITY},get seekableRange(){return c||t.seekable.length===0?null:{start:t.seekable.start(0),end:t.seekable.end(0)}},get qualities(){return o.get("qualities")??[]},get currentQuality(){return o.get("currentQuality")??null},get isAutoQuality(){return o.get("autoQuality")??true},get isAudio(){return g},setQuality(e){let n=o.get("qualitySetter");n&&n(e);},get textTracks(){return t.textTracks},getTextTracks(){let e=[];for(let n=0;n<t.textTracks.length;n++)e.push(T(t.textTracks[n],n));return e},getActiveTextTrack(){for(let e=0;e<t.textTracks.length;e++)if(t.textTracks[e].mode==="showing")return T(t.textTracks[e],e);return null},get activeCues(){for(let e=0;e<t.textTracks.length;e++)if(t.textTracks[e].mode==="showing")return D(t.textTracks[e].activeCues);return []},setTextTrack(e){for(let r=0;r<t.textTracks.length;r++)t.textTracks[r].mode=r===e?"showing":"disabled";let n=e>=0&&e<t.textTracks.length?T(t.textTracks[e],e):null;i("texttrackchange",{track:n});},addTextTrack(e){let n=document.createElement("track");n.src=e.src,n.label=e.label,n.srclang=e.language,n.kind=e.kind??"subtitles",e.default&&(n.default=true),t.appendChild(n);},get videoWidth(){return g?0:t.videoWidth},get videoHeight(){return g?0:t.videoHeight},get networkState(){return t.networkState},get loop(){return t.loop},set loop(e){t.loop=e;},get autoplay(){return t.autoplay},set autoplay(e){t.autoplay=e;},get poster(){return g?"":t.poster},set poster(e){g||(t.poster=e);},get preload(){return t.preload},set preload(e){t.preload=e;},get defaultPlaybackRate(){return t.defaultPlaybackRate},set defaultPlaybackRate(e){t.defaultPlaybackRate=e;},get defaultMuted(){return t.defaultMuted},set defaultMuted(e){t.defaultMuted=e;},get crossOrigin(){return t.crossOrigin},set crossOrigin(e){t.crossOrigin=e;},get controls(){return t.controls},set controls(e){t.controls=e;},get src(){return m},set src(e){if(d&&(d.unload(t),d=null),o.delete("qualities"),o.delete("currentQuality"),o.delete("autoQuality"),o.delete("qualitySetter"),R=null,L=true,m=e,!e){t.removeAttribute("src");return}for(let n of k)if(n.canHandle(e)){d=n,s("loading"),n.load(e,t);return}t.src=e;},registerSourceHandler(e){if(c){console.warn("[vide] Cannot register source handler after destroy");return}k.push(e),!L&&!d&&j();},addEventListener(e,n,r){t.addEventListener(e,n,r);},removeEventListener(e,n,r){t.removeEventListener(e,n,r);},use(e){if(c){console.warn("[vide] Cannot use plugin after destroy");return}let n=e.setup(f);n&&y.push(n);},setPluginData(e,n){if(o.set(e,n),e==="qualities")i("qualitiesavailable",{qualities:n});else if(e==="currentQuality"){let r=n;i("qualitychange",{from:R,to:r}),R=r;}},getPluginData(e){return o.get(e)},destroy(){if(!c){c=true,d&&(d.unload(t),d=null);for(let e of y)try{e();}catch(n){console.error("[vide] Plugin cleanup error:",n);}y.length=0,i("destroy",void 0),Y(),E.clear(),o.clear();}}};return f.setState=s,f}exports.ERR_DASH_IMPORT=G;exports.ERR_DASH_PLAYBACK=J;exports.ERR_DRM_CERTIFICATE=te;exports.ERR_DRM_DETECTION=Z;exports.ERR_DRM_LICENSE=ee;exports.ERR_DRM_UNSUPPORTED=X;exports.ERR_HLS_FATAL=z;exports.ERR_HLS_IMPORT=$;exports.ERR_HLS_UNSUPPORTED=B;exports.ERR_MEDIA=F;exports.createPlayer=ie;return exports;})({});
@@ -1,2 +1,2 @@
1
- (function(){'use strict';var w=Object.defineProperty;var T=(e,t)=>()=>(e&&(t=e(e=0)),t);var C=(e,t)=>{for(var o in t)w(e,o,{get:t[o],enumerable:true});};var R={};C(R,{default:()=>k});var I,k,E=T(()=>{I=globalThis.dashjs,k=I;});function P(e){return e>=2160?"4K":e>=1440?"1440p":e>=1080?"1080p":e>=720?"720p":e>=480?"480p":e>=360?"360p":e>=240?"240p":`${e}p`}var q="application/dash+xml",A={maxRetries:3,retryDelay:3e3,backoffMultiplier:2};function Q(e){try{return new URL(e,"https://placeholder.invalid").pathname.endsWith(".mpd")}catch{return e.includes(".mpd")}}function _(e){return e.toLowerCase()===q}function M(e={}){return {name:"dash",setup(t){let o=null,d=false,f=e.recovery===false?false:{...A,...e.recovery??{}},u=0,g=null,p="",l=null;function m(){g!==null&&(clearTimeout(g),g=null);}function S(n){if(f===false||d||u>=f.maxRetries||!l)return false;u++;let a=f.retryDelay*f.backoffMultiplier**(u-1);return m(),g=setTimeout(()=>{d||!l||(n.reset(),n.initialize(l,p,l.autoplay));},a),true}let b={canHandle(n,a){return a&&_(a)?true:Q(n)},load(n,a){this.unload(a),L(n,a);},unload(n){m(),u=0,p="",l=null,o&&(o.destroy(),o=null);}};function L(n,a){p=n,l=a,Promise.resolve().then(()=>(E(),R)).then(y=>{if(d)return;let h=y.default,r=h.MediaPlayer().create();o=r,t.setPluginData("dash",r);let D=t.getPluginData("drm");D?.dashConfig&&r.updateSettings(D.dashConfig),e.dashConfig&&r.updateSettings(e.dashConfig),r.on(h.MediaPlayer.events.ERROR,s=>{if(typeof s.error=="object"&&s.error!==null){let c=S(r);t.emit("error",{code:s.error.code,message:s.error.message,source:"dash",recoverable:c,retryCount:c?u:void 0});}else t.emit("error",{code:3001,message:`DASH error: ${String(s.error)}`,source:"dash"});}),r.on(h.MediaPlayer.events.STREAM_INITIALIZED,()=>{u>0&&(u=0,m());let c=r.getBitrateInfoListFor("video").map(i=>({id:i.qualityIndex,width:i.width,height:i.height,bitrate:i.bitrate,label:P(i.height)}));t.setPluginData("qualities",c),t.setPluginData("qualitySetter",i=>{i===-1?r.updateSettings({streaming:{abr:{autoSwitchBitrate:{video:true}}}}):(r.updateSettings({streaming:{abr:{autoSwitchBitrate:{video:false}}}}),r.setQualityFor("video",i,true)),t.setPluginData("autoQuality",i===-1);});}),r.on(h.MediaPlayer.events.QUALITY_CHANGE_RENDERED,s=>{if(s.mediaType!=="video")return;let i=t.qualities.find(v=>v.id===s.newQuality);if(i){t.setPluginData("currentQuality",i);let v=r.getSettings();t.setPluginData("autoQuality",v?.streaming?.abr?.autoSwitchBitrate?.video??true);}}),r.initialize(a,n,a.autoplay);}).catch(y=>{d||t.emit("error",{code:3e3,message:y instanceof Error?`Failed to load dashjs: ${y.message}`:"Failed to load dashjs",source:"dash"});});}return t.registerSourceHandler(b),()=>{d=true,m(),b.unload(t.el);}}}}var B=globalThis.Vide??(globalThis.Vide={});B.dash=M;
1
+ (function(){'use strict';var w=Object.defineProperty;var T=(e,t)=>()=>(e&&(t=e(e=0)),t);var C=(e,t)=>{for(var o in t)w(e,o,{get:t[o],enumerable:true});};var R={};C(R,{default:()=>k});var I,k,E=T(()=>{I=globalThis.dashjs,k=I;});function P(e){return e>=2160?"4K":e>=1440?"1440p":e>=1080?"1080p":e>=720?"720p":e>=480?"480p":e>=360?"360p":e>=240?"240p":`${e}p`}var q="application/dash+xml",A={maxRetries:3,retryDelay:3e3,backoffMultiplier:2};function Q(e){try{return new URL(e,"https://placeholder.invalid").pathname.endsWith(".mpd")}catch{return e.includes(".mpd")}}function _(e){return e.toLowerCase()===q}function M(e={}){return {name:"dash",setup(t){let o=null,d=false,f=e.recovery===false?false:{...A,...e.recovery??{}},u=0,g=null,p="",l=null;function m(){g!==null&&(clearTimeout(g),g=null);}function S(a){if(f===false||d||u>=f.maxRetries||!l)return false;u++;let n=f.retryDelay*f.backoffMultiplier**(u-1);return m(),g=setTimeout(()=>{d||!l||(a.reset(),a.initialize(l,p,l.autoplay));},n),true}let b={canHandle(a,n){return n&&_(n)?true:Q(a)},load(a,n){this.unload(n),L(a,n);},unload(a){m(),u=0,p="",l=null,o&&(o.destroy(),o=null);}};function L(a,n){p=a,l=n,Promise.resolve().then(()=>(E(),R)).then(y=>{if(d)return;let h=y.default,r=h.MediaPlayer().create();o=r,t.setPluginData("dash",r);let D=t.getPluginData("drm");D?.dashConfig&&r.updateSettings(D.dashConfig),e.dashConfig&&r.updateSettings(e.dashConfig),r.on(h.MediaPlayer.events.ERROR,s=>{if(typeof s.error=="object"&&s.error!==null){let c=S(r);t.emit("error",{code:s.error.code,message:s.error.message,source:"dash",recoverable:c,retryCount:c?u:void 0});}else t.emit("error",{code:3001,message:`DASH error: ${String(s.error)}`,source:"dash"});}),r.on(h.MediaPlayer.events.STREAM_INITIALIZED,()=>{u>0&&(u=0,m());let c=r.getBitrateInfoListFor("video").map(i=>({id:i.qualityIndex,width:i.width,height:i.height,bitrate:i.bitrate,label:P(i.height)}));t.setPluginData("qualities",c),t.setPluginData("qualitySetter",i=>{i===-1?r.updateSettings({streaming:{abr:{autoSwitchBitrate:{video:true}}}}):(r.updateSettings({streaming:{abr:{autoSwitchBitrate:{video:false}}}}),r.setQualityFor("video",i,true)),t.setPluginData("autoQuality",i===-1);});}),r.on(h.MediaPlayer.events.QUALITY_CHANGE_RENDERED,s=>{if(s.mediaType!=="video")return;let i=t.qualities.find(v=>v.id===s.newQuality);if(i){t.setPluginData("currentQuality",i);let v=r.getSettings();t.setPluginData("autoQuality",v?.streaming?.abr?.autoSwitchBitrate?.video??true);}}),r.initialize(n,a,n.autoplay);}).catch(y=>{d||t.emit("error",{code:3e3,message:y instanceof Error?`Failed to load dashjs: ${y.message}`:"Failed to load dashjs",source:"dash"});});}return t.registerSourceHandler(b),()=>{d=true,m(),b.unload(t.el);}}}}var B=globalThis.Vide??(globalThis.Vide={});B.dash=M;
2
2
  })();
@@ -1 +1 @@
1
- (function(){'use strict';function l(e){let r={licenseUrl:e.licenseUrl,serverCertificateUrl:e.certificateUrl};if(e.headers){let t=e.headers;r.licenseXhrSetup=n=>{for(let[i,s]of Object.entries(t))n.setRequestHeader(i,s);};}return {emeEnabled:true,drmSystems:{"com.apple.fps.1_0":r}}}function g(e){let r={serverURL:e.licenseUrl,serverCertificateURL:e.certificateUrl};return e.headers&&(r.httpRequestHeaders=e.headers),{streaming:{protection:{data:{"com.apple.fps.1_0":r}}}}}function h(e){let r={licenseUrl:e.licenseUrl};if(e.headers){let t=e.headers;r.licenseXhrSetup=n=>{for(let[i,s]of Object.entries(t))n.setRequestHeader(i,s);};}return {emeEnabled:true,drmSystems:{"com.widevine.alpha":r}}}function v(e){let r={serverURL:e.licenseUrl};return e.headers&&(r.httpRequestHeaders=e.headers),{streaming:{protection:{data:{"com.widevine.alpha":r}}}}}function u(e){return e.keySystem==="com.widevine.alpha"&&e.widevine?h(e.widevine):e.keySystem==="com.apple.fps.1_0"&&e.fairplay?l(e.fairplay):{}}function y(e){return e.keySystem==="com.widevine.alpha"&&e.widevine?v(e.widevine):e.keySystem==="com.apple.fps.1_0"&&e.fairplay?g(e.fairplay):{}}var w="com.apple.fps.1_0",S=[{initDataTypes:["cenc"],videoCapabilities:[{contentType:'video/mp4;codecs="avc1.42E01E"'}]}],K=[{initDataTypes:["sinf"],videoCapabilities:[{contentType:'video/mp4;codecs="avc1.42E01E"'}]}];async function m(e){for(let r of e)try{let t=r===w?K:S;return await navigator.requestMediaKeySystemAccess(r,t),r}catch{}return null}var R="com.apple.fps.1_0",M=[{initDataTypes:["cenc"],videoCapabilities:[{contentType:'video/mp4;codecs="avc1.42E01E"'}]}],P=[{initDataTypes:["sinf"],videoCapabilities:[{contentType:'video/mp4;codecs="avc1.42E01E"'}]}];function p(e,r,t){let n=false,i=[],s=null,a=o=>{if(n||e.mediaKeys&&e.mediaKeys!==s||!s||!o.initData)return;let f=s.createSession("temporary");i.push(f),f.generateRequest(o.initDataType,o.initData).then(()=>{},c=>{n||t(c instanceof Error?c:new Error("generateRequest failed"));}),f.addEventListener("message",c=>{n||D(c,f,r,t,()=>n);}),f.addEventListener("keystatuseschange",()=>{if(!n)for(let[,c]of f.keyStatuses)(c==="expired"||c==="internal-error")&&t(new Error(`Key status: ${c}`));});},d=r.keySystem===R?P:M;return navigator.requestMediaKeySystemAccess(r.keySystem,d).then(o=>{if(!n)return o.createMediaKeys()}).then(o=>{if(!(n||!o)&&(s=o,r.keySystem===R&&r.certificateUrl))return U(r.certificateUrl,r.headers,t,()=>n).then(f=>{if(!(n||!f))return s?.setServerCertificate(f.buffer)})}).then(()=>{n||!s||(e.mediaKeys||e.setMediaKeys(s),e.addEventListener("encrypted",a));}).catch(o=>{n||t(o instanceof Error?o:new Error("EME setup failed"));}),()=>{n=true,e.removeEventListener("encrypted",a);for(let o of i)o.close().catch(()=>{});}}async function U(e,r,t,n){try{let i=await fetch(e,r?{headers:r}:{});if(!i.ok)throw new Error(`Certificate fetch failed: ${i.status} ${i.statusText}`);let s=await i.arrayBuffer();return n()?null:new Uint8Array(s)}catch(i){return n()||t(i instanceof Error?i:new Error("Certificate fetch failed")),null}}function D(e,r,t,n,i){let s=new Uint8Array(e.message);Promise.resolve(t.prepareLicenseRequest?t.prepareLicenseRequest(s):s).then(a=>{if(!i())return fetch(t.licenseUrl,{method:"POST",body:a.buffer,...t.headers?{headers:t.headers}:{}})}).then(a=>{if(!(i()||!a)){if(!a.ok)throw new Error(`License request failed: ${a.status} ${a.statusText}`);return a.arrayBuffer()}}).then(a=>{if(i()||!a)return;let d=new Uint8Array(a);return Promise.resolve(t.processLicenseResponse?t.processLicenseResponse(d):d)}).then(a=>{if(!(i()||!a))return r.update(a.buffer)}).catch(a=>{i()||n(a instanceof Error?a:new Error("License exchange failed"));});}function C(e){return {name:"drm",setup(r){let t=false,n,i=[];return e.widevine&&i.push("com.widevine.alpha"),e.fairplay&&i.push("com.apple.fps.1_0"),i.length===0?(console.warn("[vide/drm] No DRM configuration provided"),()=>{}):(m(i).then(s=>{if(t)return;if(!s){r.emit("error",{code:4e3,message:"No supported DRM key system found",source:"drm"});return}let a={keySystem:s,widevine:e.widevine,fairplay:e.fairplay},d={keySystem:s,hlsConfig:u(a),dashConfig:y(a)};r.setPluginData("drm",d);let o=s!=="com.widevine.alpha",f=o?e.fairplay:e.widevine;if(!f)return;let c={keySystem:s,licenseUrl:f.licenseUrl,headers:f.headers,prepareLicenseRequest:f.prepareLicenseRequest,processLicenseResponse:f.processLicenseResponse};o&&(c.certificateUrl=f.certificateUrl),n=p(r.el,c,E=>{t||r.emit("error",{code:4002,message:E.message,source:"drm"});});}).catch(s=>{t||r.emit("error",{code:4001,message:s instanceof Error?`DRM detection failed: ${s.message}`:"DRM detection failed",source:"drm"});}),()=>{t=true,n?.();})}}}var L=globalThis.Vide??(globalThis.Vide={});Object.assign(L,{drm:C,detectKeySystem:m,dashDrmConfig:y,hlsDrmConfig:u,setupEme:p});})();
1
+ (function(){'use strict';function l(e){let r={licenseUrl:e.licenseUrl,serverCertificateUrl:e.certificateUrl};if(e.headers){let t=e.headers;r.licenseXhrSetup=n=>{for(let[i,s]of Object.entries(t))n.setRequestHeader(i,s);};}return {emeEnabled:true,drmSystems:{"com.apple.fps.1_0":r}}}function g(e){let r={serverURL:e.licenseUrl,serverCertificateURL:e.certificateUrl};return e.headers&&(r.httpRequestHeaders=e.headers),{streaming:{protection:{data:{"com.apple.fps.1_0":r}}}}}function h(e){let r={licenseUrl:e.licenseUrl};if(e.headers){let t=e.headers;r.licenseXhrSetup=n=>{for(let[i,s]of Object.entries(t))n.setRequestHeader(i,s);};}return {emeEnabled:true,drmSystems:{"com.widevine.alpha":r}}}function v(e){let r={serverURL:e.licenseUrl};return e.headers&&(r.httpRequestHeaders=e.headers),{streaming:{protection:{data:{"com.widevine.alpha":r}}}}}function u(e){return e.keySystem==="com.widevine.alpha"&&e.widevine?h(e.widevine):e.keySystem==="com.apple.fps.1_0"&&e.fairplay?l(e.fairplay):{}}function y(e){return e.keySystem==="com.widevine.alpha"&&e.widevine?v(e.widevine):e.keySystem==="com.apple.fps.1_0"&&e.fairplay?g(e.fairplay):{}}var w="com.apple.fps.1_0",S=[{initDataTypes:["cenc"],videoCapabilities:[{contentType:'video/mp4;codecs="avc1.42E01E"'}]}],P=[{initDataTypes:["sinf"],videoCapabilities:[{contentType:'video/mp4;codecs="avc1.42E01E"'}]}];async function m(e){for(let r of e)try{let t=r===w?P:S;return await navigator.requestMediaKeySystemAccess(r,t),r}catch{}return null}var R="com.apple.fps.1_0",K=[{initDataTypes:["cenc"],videoCapabilities:[{contentType:'video/mp4;codecs="avc1.42E01E"'}]}],M=[{initDataTypes:["sinf"],videoCapabilities:[{contentType:'video/mp4;codecs="avc1.42E01E"'}]}];function p(e,r,t){let n=false,i=[],s=null,a=o=>{if(n||e.mediaKeys&&e.mediaKeys!==s||!s||!o.initData)return;let f=s.createSession("temporary");i.push(f),f.generateRequest(o.initDataType,o.initData).then(()=>{},c=>{n||t(c instanceof Error?c:new Error("generateRequest failed"));}),f.addEventListener("message",c=>{n||D(c,f,r,t,()=>n);}),f.addEventListener("keystatuseschange",()=>{if(!n)for(let[,c]of f.keyStatuses)(c==="expired"||c==="internal-error")&&t(new Error(`Key status: ${c}`));});},d=r.keySystem===R?M:K;return navigator.requestMediaKeySystemAccess(r.keySystem,d).then(o=>{if(!n)return o.createMediaKeys()}).then(o=>{if(!(n||!o)&&(s=o,r.keySystem===R&&r.certificateUrl))return U(r.certificateUrl,r.headers,t,()=>n).then(f=>{if(!(n||!f))return s?.setServerCertificate(f.buffer)})}).then(()=>{n||!s||(e.mediaKeys||e.setMediaKeys(s),e.addEventListener("encrypted",a));}).catch(o=>{n||t(o instanceof Error?o:new Error("EME setup failed"));}),()=>{n=true,e.removeEventListener("encrypted",a);for(let o of i)o.close().catch(()=>{});}}async function U(e,r,t,n){try{let i=await fetch(e,r?{headers:r}:{});if(!i.ok)throw new Error(`Certificate fetch failed: ${i.status} ${i.statusText}`);let s=await i.arrayBuffer();return n()?null:new Uint8Array(s)}catch(i){return n()||t(i instanceof Error?i:new Error("Certificate fetch failed")),null}}function D(e,r,t,n,i){let s=new Uint8Array(e.message);Promise.resolve(t.prepareLicenseRequest?t.prepareLicenseRequest(s):s).then(a=>{if(!i())return fetch(t.licenseUrl,{method:"POST",body:a.buffer,...t.headers?{headers:t.headers}:{}})}).then(a=>{if(!(i()||!a)){if(!a.ok)throw new Error(`License request failed: ${a.status} ${a.statusText}`);return a.arrayBuffer()}}).then(a=>{if(i()||!a)return;let d=new Uint8Array(a);return Promise.resolve(t.processLicenseResponse?t.processLicenseResponse(d):d)}).then(a=>{if(!(i()||!a))return r.update(a.buffer)}).catch(a=>{i()||n(a instanceof Error?a:new Error("License exchange failed"));});}function C(e){return {name:"drm",setup(r){let t=false,n,i=[];return e.widevine&&i.push("com.widevine.alpha"),e.fairplay&&i.push("com.apple.fps.1_0"),i.length===0?(console.warn("[vide/drm] No DRM configuration provided"),()=>{}):(m(i).then(s=>{if(t)return;if(!s){r.emit("error",{code:4e3,message:"No supported DRM key system found",source:"drm"});return}let a={keySystem:s,widevine:e.widevine,fairplay:e.fairplay},d={keySystem:s,hlsConfig:u(a),dashConfig:y(a)};r.setPluginData("drm",d);let o=s!=="com.widevine.alpha",f=o?e.fairplay:e.widevine;if(!f)return;let c={keySystem:s,licenseUrl:f.licenseUrl,headers:f.headers,prepareLicenseRequest:f.prepareLicenseRequest,processLicenseResponse:f.processLicenseResponse};o&&(c.certificateUrl=f.certificateUrl),n=p(r.el,c,E=>{t||r.emit("error",{code:4002,message:E.message,source:"drm"});});}).catch(s=>{t||r.emit("error",{code:4001,message:s instanceof Error?`DRM detection failed: ${s.message}`:"DRM detection failed",source:"drm"});}),()=>{t=true,n?.();})}}}var L=globalThis.Vide??(globalThis.Vide={});Object.assign(L,{drm:C,detectKeySystem:m,dashDrmConfig:y,hlsDrmConfig:u,setupEme:p});})();