@videts/vide 0.9.3 → 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.
- package/dist/{chunk-G74QBLVV.mjs → chunk-2UHU76KF.mjs} +1 -1
- package/dist/{chunk-2OVLZ27V.mjs → chunk-7R6TO7ZE.mjs} +1 -1
- package/dist/chunk-AQLZYNP7.mjs +1 -0
- package/dist/{chunk-VPH4JIJV.mjs → chunk-CD27DYME.mjs} +1 -1
- package/dist/chunk-TNHV5PHM.mjs +1 -0
- package/dist/chunk-YBNODS5R.mjs +2 -0
- package/dist/chunk-YE6RITJU.mjs +1 -0
- package/dist/{chunk-NA4C7W64.mjs → chunk-ZUEPNVVV.mjs} +1 -1
- package/dist/dash/index.d.ts +2 -2
- package/dist/drm/index.d.ts +1 -1
- package/dist/drm/index.js +1 -1
- package/dist/drm/index.mjs +1 -1
- package/dist/hls/index.d.ts +2 -2
- package/dist/hls/index.js +1 -1
- package/dist/hls/index.mjs +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/dist/omid/index.d.ts +2 -2
- package/dist/react/index.d.ts +7 -8
- package/dist/react/index.js +2 -2
- package/dist/react/index.mjs +2 -2
- package/dist/simid/index.d.ts +2 -2
- package/dist/ssai/index.d.ts +1 -1
- package/dist/ssai/index.js +1 -1
- package/dist/ssai/index.mjs +1 -1
- package/dist/svelte/VideUI.svelte +2 -1
- package/dist/svelte/Video.svelte +2 -9
- package/dist/svelte/Video.svelte.d.ts +0 -2
- package/dist/svelte/components/AdCountdown.svelte +1 -1
- package/dist/svelte/components/AdLearnMore.svelte +19 -6
- package/dist/svelte/components/AdLearnMore.svelte.d.ts +0 -1
- package/dist/svelte/components/AdSkip.svelte +7 -7
- package/dist/svelte/components/ErrorDisplay.svelte +1 -1
- package/dist/svelte/components/Loader.svelte +1 -1
- package/dist/svelte/icons/IconExternalLink.svelte +4 -0
- package/dist/svelte/icons/IconExternalLink.svelte.d.ts +26 -0
- package/dist/svelte/icons/IconSkipForward.svelte +3 -0
- package/dist/svelte/icons/IconSkipForward.svelte.d.ts +26 -0
- package/dist/svelte/index.d.ts +2 -0
- package/dist/svelte/index.js +2 -0
- package/dist/{types-BsEF8iWC.d.ts → types-BD5ZFUAt.d.ts} +6 -2
- package/dist/{types-CwjR99DL.d.ts → types-CABQEV7R.d.ts} +1 -1
- package/dist/{types-SuT99_Z3.d.ts → types-CXi-EgbJ.d.ts} +1 -1
- package/dist/{types-DzY1cmXC.d.ts → types-CaEBUCfi.d.ts} +1 -1
- package/dist/{types-C1_eVsFF.d.ts → types-DWH68b8d.d.ts} +1 -1
- package/dist/{types-COeag8fU.d.ts → types-JlkZYMyA.d.ts} +1 -1
- package/dist/ui/index.d.ts +4 -4
- package/dist/ui/index.js +1 -1
- package/dist/ui/index.mjs +1 -1
- package/dist/ui/theme.css +92 -9
- package/dist/vast/index.d.ts +6 -6
- package/dist/vast/index.js +1 -1
- package/dist/vast/index.mjs +1 -1
- package/dist/vide.core.global.js +1 -1
- package/dist/vide.dash.global.js +1 -1
- package/dist/vide.drm.global.js +1 -1
- package/dist/vide.global.js +2 -2
- package/dist/vide.hls.global.js +1 -1
- package/dist/vide.ssai.global.js +1 -1
- package/dist/vide.ui.css +92 -9
- package/dist/vide.ui.global.js +1 -1
- package/dist/vide.vast.global.js +1 -1
- package/dist/vide.vmap.global.js +1 -1
- package/dist/vmap/index.d.ts +4 -4
- package/dist/vmap/index.js +1 -1
- package/dist/vmap/index.mjs +1 -1
- package/dist/vue/index.d.ts +14 -42
- package/dist/vue/index.js +2 -2
- package/dist/vue/index.mjs +2 -2
- package/package.json +1 -1
- package/dist/chunk-3RDTWUHH.mjs +0 -1
- package/dist/chunk-6DWWYSH4.mjs +0 -1
- package/dist/chunk-LPSJOF2I.mjs +0 -2
- package/dist/chunk-WINCDUN5.mjs +0 -1
package/dist/vast/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
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-
|
|
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-
|
|
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:
|
|
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:
|
|
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:
|
|
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). */
|
package/dist/vast/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{a as vast}from'../chunk-
|
|
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';
|
package/dist/vast/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{a as vast}from'../chunk-
|
|
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';
|
package/dist/vide.core.global.js
CHANGED
|
@@ -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.
|
|
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;})({});
|
package/dist/vide.dash.global.js
CHANGED
|
@@ -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(
|
|
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
|
})();
|
package/dist/vide.drm.global.js
CHANGED
|
@@ -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"'}]}],
|
|
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});})();
|