utxo22-web/_app/chunks/schedule-2f7a7abd.js

2 řádky
1.2 KiB
JavaScript

import{p as E}from"./periods-3c9faf13.js";import{f as D}from"./utils-1595b72e.js";function u(t,n){for(const i of t)i._event=n.spec.events.find(d=>d.id===i.event);return t}function k(t,n,i=new Date){let d=t.spec.schedule.filter(a=>new Date(a.period.end).getTime()>i.getTime());const T=t.spec.stages;for(const a of T.filter(p=>p.livestream)){let p=t.spec.schedule.filter(e=>e.stage===a.id).sort((e,o)=>e.period.start>o.period.start?1:-1),r=[...d.filter(e=>e.stage===a.id).sort((e,o)=>e.period.start>o.period.start?1:-1)],s=null;r.length>0&&new Date(r[0].period.start).getTime()<=i.getTime()&&(s=r[0],r=r.slice(1));let f="break";const g=a.streams.map(e=>E(t,e)),l=g.filter(e=>e.period.end.getTime()>=i.getTime());l.length===0&&l.push(g[g.length-1]);let c=null;if(s){let e=(new Date(s.period.end).getTime()-new Date(s.period.start).getTime())/1e3;c=Math.floor((i.getTime()-new Date(s.period.start).getTime())/1e3)/(e/100)}!s&&r[0]&&p[0].id===r[0].id&&(f="beforeStart"),!s&&r.length===0&&(f="afterEnd");const v=D(new Date(l[0].period.start),"yyyy-MM-dd");let m=0;v==="2022-06-05"&&(m=2);const h=`/program?time=${m}&stage=${a.id}&desc=true`;n[a.id]={current:s?u([s],t)[0]:null,currentPercentage:c,next:u(r.slice(0,2),t),stream:l[0],scheduleLink:h,breakType:f}}return n}export{k as g};