1import{bN as v,b5 as k,aT as d,bd as x,b0 as I,bO as M}from"./CcS2vtP_.js";import{u as P}from"./9l8E-VXw.js";try{(function(){var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},a=new e.Error().stack;a&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[a]="e0e7ec77-9463-4f8f-99fc-620700021118",e._sentryDebugIdIdentifier="sentry-dbid-e0e7ec77-9463-4f8f-99fc-620700021118")})()}catch{}const n=[1,1.5,1.75,2,2.5],E=e=>{const a=e.media;return!a||a.length===0?null:a.find(i=>i.format==="mp3")||a[0]},O=v("media-player",()=>{const e=k({episode:null,player:null,isPlaying:!1,duration:0,elapsed:0,speed:1,volume:1}),a=d(()=>{if(e.episode&&e.episode.chaptermarks.length){const t=e.episode.chaptermarks.length;for(let r=t-1;r>=0;r--)if(e.episode.chaptermarks[r].starts_at_time<=e.elapsed)return e.episode.chaptermarks[r].id}return 0n}),c=d(()=>!e.episode||!e.player?0:e.elapsed/e.duration*100),i=d(()=>{if(!e.player||!e.episode)return"--:--:--";const t=Math.floor(e.elapsed%60).toString().padStart(2,"0"),r=Math.floor(e.elapsed/60%60).toString().padStart(2,"0");return`${Math.floor(e.elapsed/3600).toString().padStart(2,"0")}:${r}:${t}`});x(()=>{p();const t=localStorage.getItem("media-player");if(!t){w().then(()=>{});return}const r=JSON.parse(t);!r||!e.player||(r.episode&&(l(r.episode),e.player.currentTime=r.elapsed),y(r.volume),o(r.speed))}),I(()=>e,t=>{const{player:r,...s}=t;localStorage.setItem("media-player",JSON.stringify(s))},{deep:!0});const p=()=>{if(!e.player){const t=new Audio;t.onpause=()=>{e.isPlaying=!1},t.onplay=()=>{e.isPlaying=!0},t.ondurationchange=()=>{var r;e.duration=((r=e.player)==null?void 0:r.duration)||0},t.ontimeupdate=()=>{var r;e.elapsed=((r=e.player)==null?void 0:r.currentTime)||0},t.onvolumechange=()=>{e.player&&(e.volume=e.player.volume)},e.player=t}},l=t=>{var s;e.episode=t,p();const r=(s=E(e.episode))==null?void 0:s.url;!r||!e.player||(e.player.src=r)},u=()=>{e.player||p(),!(!e.episode||!e.player)&&e.player.paused&&e.player.play().catch(t=>{t instanceof Error&&(t.name==="AbortError"||t.name==="NotAllowedError")||console.error("Unexpected media play error:",t)})},f=()=>{e.player&&e.player.pause()},m=()=>{e.episode&&(e.isPlaying?f():u())},g=()=>{e.player&&(e.player.currentTime=e.elapsed>30?e.elapsed-30:0)},h=()=>{e.player&&(e.player.currentTime=e.elapsed<e.duration-30?e.elapsed+30:0)},b=t=>{e.player&&(e.player.currentTime=t,e.elapsed=t)},o=t=>{e.speed=t,e.player&&(e.player.playbackRate=t)},S=()=>{const t=n.indexOf(e.speed);if(!e.player||t===n.length-1)return;const r=n[t+1];o(r)},T=()=>{const t=n.indexOf(e.speed);if(!e.player||t===0)return;const r=n[t-1];o(r)},y=t=>{e.player&&(e.player.volume=t)},w=async()=>{var s;const t=P("/frontend/homepage/episodes",{lazy:!0});await t.execute();const r=(s=t.data.value)==null?void 0:s.episodes.at(0);r&&l(r)};return{...M(e),activeChaptermarkId:a,percentage:c,elapsedTimeAsFormattedText:i,setEpisode:l,play:u,pause:f,toggle:m,rewind:g,forward:h,seek:b,increaseSpeed:S,decreaseSpeed:T,setSpeed:o,setVolume:y}});export{O as u};
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.