PageSourceSearch

https://10use-app.netlify.app/assets/StreamStationsView-CtLiP9Hz.js

js 10use-app.netlify.app collected 2026-10-03 10:23:06 UTC 11,504 bytes, 1 lines download raw bytes

1import{d as R,D as W,r as d,j as B,o as G,c as l,y as x,b as a,X as J,e as f,g as u,q as h,an as Q,t as n,x as Y,A as ee,L as te,F as c,f as y,B as w,ad as ae,v,ao as se,ap as oe,I as le,aq as ne,$ as re,h as r}from"./index-Bm4GpDNS.js";const ie={class:"min-h-screen bg-gray-50 pb-24"},ce={class:"max-w-lg mx-auto px-4 py-6 flex flex-col gap-4"},de={class:"text-xl font-bold text-black flex items-center gap-2"},ue={class:"text-sm text-black/55 mt-1"},be={key:0,class:"text-sm text-danger bg-danger/5 border border-danger/20 rounded-lg p-3"},pe={class:"bg-white rounded-xl border border-black/10 p-3 flex items-center gap-2"},ve=["placeholder"],me=["disabled"],ke={key:1,class:"text-sm text-black/40"},xe={key:2,class:"text-sm text-black/45 bg-white rounded-xl border border-black/10 p-4 text-center"},ye={class:"flex items-center gap-2"},ge={class:"flex-1 min-w-0 text-sm font-semibold text-black truncate"},_e=["onClick","title"],fe={class:"block text-[11px] font-bold text-black/55 mb-1 uppercase tracking-wide"},he=["value","onChange"],we={value:""},$e=["label"],Ce=["value"],Se={key:0,class:"text-[11px] text-black/40 mt-1"},Ie={class:"flex flex-wrap gap-2"},Te=["onClick","title"],Ne=["onClick"],Ve=["onClick","title"],ze=["onClick"],Pe={key:0,class:"border-t border-black/10 -mx-3.5 px-3.5 pt-3 space-y-3"},Ae={class:"rounded-lg overflow-hidden",style:{background:"linear-gradient(135deg,#2f6b39,#244e6b)"}},Be=["src"],Ee={class:"flex flex-wrap gap-1.5"},Ue=["onClick"],De={class:"flex flex-wrap items-center gap-1.5"},Le=["onClick","title"],Me={key:0,class:"text-black/50"},je={class:"ml-1 flex items-center gap-1 text-[11px] text-black/55 cursor-pointer"},Xe=["value"],Oe={class:"flex gap-5"},Ze={class:"grid grid-cols-2 gap-1 w-[68px]"},qe=["onClick"],Fe={class:"flex gap-1"},He=["onClick"],Ke={key:0,class:"text-[11px] text-danger"},Re={class:"flex items-center gap-2 pt-1"},We=["onClick","disabled"],Qe=R({__name:"StreamStationsView",setup(Ge){const E=[{key:"navy",label:"Navy + zlatá"},{key:"purple",label:"tenuse fialová"},{key:"contrast",label:"Vysoký kontrast"},{key:"neon",label:"Neón salón"}],U=[{key:"tl",label:"↖"},{key:"tr",label:"↗"},{key:"bl",label:"↙"},{key:"br",label:"↘"}],D=[{key:.6,label:"XS"},{key:1,label:"S"},{key:1.2,label:"M"},{key:1.4,label:"L"},{key:1.8,label:"XL"}],L=["","#D4A017","#f5c518","#e11d48","#2563eb","#16a34a","#f97316","#883ce5"],{t:g}=W(),_=d([]),z=d([]),N=d(!1),b=d(""),$=d(""),C=d(!1),p=d(null),I=window.location.origin;function M(e){return`${I}/overlay/court/${e.overlay_token}`}function j(e){return`${I}/score/court/${e.scoring_token}`}function X(e){return`${I}/embed/court/${e.overlay_token}`}const m=d(null),i=d({}),T=d(!1),S=d(""),O=B(()=>{const e=i.value,t=new URLSearchParams({demo:"1",theme:e.theme||"navy",pos:e.pos||"bl",scale:"0.5"});return e.accent&&t.set("accent",e.accent.replace("#","")),`${I}/overlay/preview?${t.toString()}`});function Z(e){if(m.value===e.id){m.value=null;return}S.value="",i.value={theme:"navy",accent:"",pos:"bl",scale:1.4,...e.overlay_config||{}},m.value=e.id}async function q(e){T.value=!0,S.value="";try{const t=await w.patch(`/stream-stations/${e.id}/`,{overlay_config:i.value});e.overlay_config=t.overlay_config||{},m.value=null}catch(t){S.value=t?.message||g("stream_stations.err_save")}finally{T.value=!1}}const F=B(()=>{const e=new Map;for(const t of z.value)e.has(t.venue_id)||e.set(t.venue_id,{venue:t.venue_name,courts:[]}),e.get(t.venue_id).courts.push(t);return Array.from(e.values())});async function P(){N.value=!0,b.value="";try{const[e,t]=await Promise.all([w.get("/stream-stations/"),w.get("/stream-stations/available-courts/")]);_.value=e,z.value=t}catch(e){b.value=e?.message||g("stream_stations.err_load")}finally{N.value=!1}}G(P);async function A(){const e=$.value.trim();if(!(!e||C.value)){C.value=!0,b.value="";try{const t=await w.post("/stream-stations/",{name:e});_.value.push(t),$.value=""}catch(t){b.value=t?.message||g("stream_stations.err_create")}finally{C.value=!1}}}async function H(e,t){b.value="";try{const o=await w.patch(`/stream-stations/${e.id}/`,{current_court:t||null});Object.assign(e,o)}catch(o){b.value=o?.message||g("stream_stations.err_save"),await P()}}async function K(e){if(confirm(g("stream_stations.delete_confirm",{name:e.name}))){b.value="";try{await w.delete(`/stream-stations/${e.id}/`),_.value=_.value.filter(t=>t.id!==e.id)}catch(t){b.value=t?.message||g("stream_stations.err_delete")}}}async function V(e,t){try{await navigator.clipboard.writeText(e)}catch{const o=document.createElement("input");o.value=e,document.body.appendChild(o),o.select(),document.execCommand("copy"),document.body.removeChild(o)}p.value=t,setTimeout(()=>{p.value===t&&(p.value=null)},2e3)}return(e,t)=>(r(),l("div",ie,[x(J,{showBack:!0}),a("div",ce,[a("div",null,[a("h1",de,[x(h(Q),{size:22,class:"text-primary"}),u(" "+n(e.$t("stream_stations.title")),1)]),a("p",ue,n(e.$t("stream_stations.subtitle")),1)]),b.value?(r(),l("div",be,n(b.value),1)):f("",!0),a("div",pe,[Y(a("input",{"onUpdate:modelValue":t[0]||(t[0]=o=>$.value=o),type:"text",maxlength:"50",placeholder:e.$t("stream_stations.add_placeholder"),onKeyup:te(A,["enter"]),class:"flex-1 min-w-0 border border-black/15 rounded-lg px-3 py-2 text-sm bg-white text-black outline-none focus:border-primary/50"},null,40,ve),[[ee,$.value]]),a("button",{onClick:A,disabled:C.value||!$.value.trim(),class:"px-3 py-2 text-sm font-semibold rounded-lg bg-primary text-white hover:opacity-90 transition disabled:opacity-40 whitespace-nowrap"},n(C.value?"…":e.$t("stream_stations.add_button")),9,me)]),N.value?(r(),l("div",ke,n(e.$t("stream_stations.loading")),1)):_.value.length?f("",!0):(r(),l("p",xe,n(e.$t("stream_stations.empty")),1)),(r(!0),l(c,null,y(_.value,o=>(r(),l("div",{key:o.id,class:"bg-white rounded-xl border border-black/10 p-3.5 flex flex-col gap-3"},[a("div",ye,[a("span",ge,n(o.name),1),a("button",{onClick:s=>K(o),title:e.$t("stream_stations.delete_title"),class:"px-2 py-1 text-xs rounded-lg text-danger hover:bg-danger/10 transition"},[x(h(ae),{size:15})],8,_e)]),a("div",null,[a("label",fe,n(e.$t("stream_stations.on_court")),1),a("select",{value:o.current_court||"",onChange:s=>H(o,s.target.value),class:"w-full border border-black/15 rounded-lg px-3 py-2 text-sm bg-white text-black outline-none focus:border-primary/50"},[a("option",we,n(e.$t("stream_stations.nowhere")),1),(r(!0),l(c,null,y(F.value,s=>(r(),l("optgroup",{key:s.venue,label:s.venue},[(r(!0),l(c,null,y(s.courts,k=>(r(),l("option",{key:k.id,value:k.id},n(k.name),9,Ce))),128))],8,$e))),128))],40,he),o.current_court_name?(r(),l("p",Se,n(o.current_court_venue_name)+" · "+n(o.current_court_name),1)):f("",!0)]),a("div",Ie,[a("button",{onClick:s=>Z(o),title:e.$t("stream_stations.scoreboard"),class:v(["px-2.5 py-1.5 text-xs font-semibold rounded-lg transition whitespace-nowrap",m.value===o.id?"bg-primary text-white":"bg-black/5 text-black/70 hover:bg-black/10"])},[x(h(se),{size:14,class:"inline-block align-text-bottom"}),u(" "+n(e.$t("stream_stations.scoreboard")),1)],10,Te),a("button",{onClick:s=>V(M(o),o.id+"-stream"),class:v(["px-2.5 py-1.5 text-xs font-semibold rounded-lg transition whitespace-nowrap",p.value===o.id+"-stream"?"bg-success/10 text-success":"bg-primary text-white hover:opacity-90"])},[p.value===o.id+"-stream"?(r(),l(c,{key:0}
1,[u(n(e.$t("stream_stations.copied")),1)],64)):(r(),l(c,{key:1},[x(h(oe),{size:14,class:"inline-block align-text-bottom"}),u(" "+n(e.$t("stream_stations.stream_url")),1)],64))],10,Ne),a("button",{onClick:s=>V(X(o),o.id+"-web"),title:e.$t("stream_stations.web_url"),class:v(["px-2.5 py-1.5 text-xs font-semibold rounded-lg transition whitespace-nowrap",p.value===o.id+"-web"?"bg-success/10 text-success":"bg-black/5 text-black/70 hover:bg-black/10"])},[p.value===o.id+"-web"?(r(),l(c,{key:0},[u(n(e.$t("stream_stations.copied")),1)],64)):(r(),l(c,{key:1},[x(h(le),{size:14,class:"inline-block align-text-bottom"}),u(" "+n(e.$t("stream_stations.web_url")),1)],64))],10,Ve),a("button",{onClick:s=>V(j(o),o.id+"-score"),class:v(["px-2.5 py-1.5 text-xs font-semibold rounded-lg transition whitespace-nowrap",p.value===o.id+"-score"?"bg-success/10 text-success":"bg-black/5 text-black/70 hover:bg-black/10"])},[p.value===o.id+"-score"?(r(),l(c,{key:0},[u(n(e.$t("stream_stations.copied")),1)],64)):(r(),l(c,{key:1},[x(h(ne),{size:14,class:"inline-block align-text-bottom"}),u(" "+n(e.$t("stream_stations.score_url")),1)],64))],10,ze)]),m.value===o.id?(r(),l("div",Pe,[a("div",Ae,[a("iframe",{src:O.value,class:"w-full block border-0 pointer-events-none",style:{height:"170px",background:"transparent"},title:"Náhľad scoreboardu"},null,8,Be)]),a("div",null,[t[3]||(t[3]=a("p",{class:"text-[11px] font-bold text-black/55 mb-1 uppercase tracking-wide"},"Téma",-1)),a("div",Ee,[(r(),l(c,null,y(E,s=>a("button",{key:s.key,onClick:k=>i.value.theme=s.key,class:v(["px-2.5 py-1 text-xs font-semibold rounded-lg border transition",i.value.theme===s.key?"bg-primary text-white border-primary":"bg-white text-black/70 border-black/15 hover:border-primary/40"])},n(s.label),11,Ue)),64))])]),a("div",null,[t[5]||(t[5]=a("p",{class:"text-[11px] font-bold text-black/55 mb-1 uppercase tracking-wide"},"Akcentová farba",-1)),a("div",De,[(r(),l(c,null,y(L,s=>a("button",{key:s||"default",onClick:k=>i.value.accent=s,class:v(["w-7 h-7 rounded-full border-2 transition flex items-center justify-center text-[10px] font-bold",(i.value.accent||"")===s?"border-black scale-110":"border-black/20"]),style:re(s?{background:s}:{background:"#fff"}),title:s||"Podľa témy"},[s?f("",!0):(r(),l("span",Me,"A"))],14,Le)),64)),a("label",je,[t[4]||(t[4]=u(" vlastná ",-1)),a("input",{type:"color",value:i.value.accent||"#f5c518",onInput:t[1]||(t[1]=s=>i.value.accent=s.target.value),class:"w-7 h-7 rounded cursor-pointer border border-black/15 bg-white p-0"},null,40,Xe)])])]),a("div",Oe,[a("div",null,[t[6]||(t[6]=a("p",{class:"text-[11px] font-bold text-black/55 mb-1 uppercase tracking-wide"},"Pozícia",-1)),a("div",Ze,[(r(),l(c,null,y(U,s=>a("button",{key:s.key,onClick:k=>i.value.pos=s.key,class:v(["h-7 text-sm rounded border transition",i.value.pos===s.key?"bg-primary text-white border-primary":"bg-white text-black/60 border-black/15 hover:border-primary/40"])},n(s.label),11,qe)),64))])]),a("div",null,[t[7]||(t[7]=a("p",{class:"text-[11px] font-bold text-black/55 mb-1 uppercase tracking-wide"},"Veľkosť",-1)),a("div",Fe,[(r(),l(c,null,y(D,s=>a("button",{key:s.key,onClick:k=>i.value.scale=s.key,class:v(["w-9 h-7 text-xs font-semibold rounded border transition",i.value.scale===s.key?"bg-primary text-white border-primary":"bg-white text-black/60 border-black/15 hover:border-primary/40"])},n(s.label),11,He)),64))]),t[8]||(t[8]=a("p",{class:"text-[10px] text-black/40 mt-0.5"},"Pevná veľkosť v obraze — daj XS/S keď prekrýva hru",-1))])]),S.value?(r(),l("div",Ke,n(S.value),1)):f("",!0),a("div",Re,[a("button",{onClick:s=>q(o),disabled:T.value,class:"px-3 py-1.5 text-xs font-semibold rounded-lg bg-primary text-white hover:opacity-90 transition disabled:opacity-40"},n(T.value?"…":"Uložiť"),9,We),a("button",{onClick:t[2]||(t[2]=s=>m.value=null),class:"px-3 py-1.5 text-xs font-semibold rounded-lg bg-black/5 text-black/60 hover:bg-black/10 transition"}," Zrušiť "),t[9]||(t[9]=a("span",{class:"text-[10px] text-black/40 ml-auto text-right"},[u("Platí pre túto stanicu."),a("br"),u("Zmeny na streame do pár sek.")],-1))])])):f("",!0)]))),128))])]))}});
1export{Qe as default};

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.