import{a0 as R,Z as h,$ as T,dT as v,r as d,W as A,i as E}from"./index-CXyQ5sGC.js";import{s as p,k as I,p as M}from"./lodash-CQGrF3PQ.js";const j=(e,t,s)=>({source:"betting",what:{...s&&{sport:["id","name","order","alias"],region:["id","alias","order"],competition:["id","order","name"]},game:[[...R,"start_ts","info","stats","is_live","text_info",...s?[]:["region_alias","_parent_id"]]],market:h,event:T},where:{game:{id:{"@in":e}},market:t}}),f=(e,t,s)=>p(Object.values(s),e).map(v(t)),P=(e,t)=>s=>f(e,t,s.game),Q=(e,t)=>s=>{const r={};for(const o of Object.values(s.sport)){const a={id:o.id,alias:o.alias,name:o.name,order:o.order,region:[],game:0};for(const n of p(Object.values(o.region),"order")){const c={id:n.id,alias:n.alias,competition:[]};for(const i of p(Object.values(n.competition),"order")){const m={id:i.id,name:i.name,game:f(e,t,i.game)};a.game+=m.game.length,c.competition.push(m)}a.region.push(c)}r[a.alias]=a}return r};function w({gameIds:e,marketFilter:t,getOnlyGameData:s,sortGamesBy:r="start_ts"}){const[o,a]=d.useState(s?[]:{}),[n,c]=d.useState(e.length>0),i=d.useMemo(()=>I(e).join("-"),[e]),m=d.useMemo(()=>JSON.stringify(t),[t]);return d.useEffect(function(){const u=i?i.split("-").map(Number):[];if(u.length>0){c(!0);const g=JSON.parse(m),l=A.getInstance().enabled,_=j(u,g,!s),b=E.subscribe(_,M((s?P:Q)(r,l),S=>{a(S),c(!1)}));return()=>{E.unsubscribe(b)}}else a(s?[]:{})},[s,i,m,r]),{isLoading:n,data:o}}export{w as u};