PageSourceSearch

https://www.filmpro.ru/_nuxt/B_P8Knoe.js

js filmpro.ru collected 2026-09-24 18:14:49 UTC 3,073 bytes, 1 lines download raw bytes

1import{s as p,t as o,u,v as l,o as h,l as P,D as f,E as m,T as g,w as s}from"./NqMUt8W4.js";import{H as k,a as x}from"./Cd2gi7v9.js";import"./BS2jnaI2.js";import"./D4JYmFL8.js";import"./BKP5b9jf.js";import"./KJsrMRv8.js";import"./fm-uyD5y.js";import"./DfYhlwJ7.js";import"./BgCmDXtd.js";import"./DEDpMvP5.js";import"./CqyL2wGw.js";import"./B7NqNs65.js";class T{#t;#i;constructor(t,e){this.#t=t,this.#i=e,t.textTracks.onaddtrack=this.#e.bind(this),h(this.#r.bind(this))}#e(t){const e=t.track;if(!e||v(this.#t,e))return;const i=new g({id:e.id,kind:e.kind,label:e.label??"",language:e.language,type:"vtt"});i[s.native]={track:e},i[s.readyState]=2,i[s.nativeHLS]=!0;let a=0;const c=d=>{if(e.cues)for(let n=a;n<e.cues.length;n++)i.addCue(e.cues[n],d),a++};c(t),e.oncuechange=c,this.#i.textTracks.add(i,t),i.setMode(e.mode,t)}#r(){this.#t.textTracks.onaddtrack=null;for(const t of this.#i.textTracks){const e=t[s.native]?.track;e?.oncuechange&&(e.oncuechange=null)}}}function v(r,t){return Array.from(r.children).find(e=>e.track===t)}class y{#t;#i;constructor(t,e){this.#t=t,this.#i=e,new m(t).add("enterpictureinpicture",this.#e.bind(this)).add("leavepictureinpicture",this.#r.bind(this))}get active(){return document.pictureInPictureElement===this.#t}get supported(){return u(this.#t)}async enter(){return this.#t.requestPictureInPicture()}exit(){return document.exitPictureInPicture()}#e(t){this.#s(!0,t)}#r(t){this.#s(!1,t)}#s=(t,e)=>{this.#i.notify("picture-in-picture-change",t,e)}}class M{#t;#i;#e="inline";get mode(){return this.#e}constructor(t,e){this.#t=t,this.#i=e,P(t,"webkitpresentationmodechanged",this.#r.bind(this))}get supported(){return o(this.#t)}async setPresentationMode(t){this.#e!==t&&this.#t.webkitSetPresentationMode(t)}#r(t){const e=this.#e;this.#e=this.#t.webkitPresentationMode,this.#i.player?.dispatch(new f("video-presentation-change",{detail:this.#e,trigger:t})),["fullscreen","picture-in-picture"].forEach(i=>{(this.#e===i||e===i)&&this.#i.notify(`${i}-change`,this.#e===i,t)})}}class w{#t;get active(){return this.#t.mode==="fullscreen"}get supported(){return this.#t.supported}constructor(t){this.#t=t}async enter(){this.#t.setPresentationMode("fullscreen")}async exit(){this.#t.setPresentationMode("inline")}}class E{#t;get active(){return this.#t.mode==="picture-in-picture"}get supported(){return this.#t.supported}constructor(t){this.#t=t}async enter(){this.#t.setPresentationMode("picture-in-picture")}async exit(){this.#t.setPresentationMode("inline")}}class N extends k{$$PROVIDER_TYPE="VIDEO";get type(){return"video"}airPlay;fullscreen;pictureInPicture;constructor(t,e){super(t,e),p(()=>{if(this.airPlay=new x(t,e),o(t)){const i=new M(t,e);this.fullscreen=new w(i),this.pictureInPicture=new E(i)}else u(t)&&(this.pictureInPicture=new y(t,e))},this.scope)}setup(){super.setup(),l(this.video)&&new T(this.video,this.ctx),this.ctx.textRenderers.attachVideo(this.video),h(()=>{this.ctx.textRenderers.attachVideo(null)}),this.type==="video"&&this.ctx.notify("provider-setup",this)}get video(){return this.media}}export{N as VideoProvider};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.