var g=Object.defineProperty;var c=(t,s,e)=>s in t?g(t,s,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[s]=e;var h=(t,s,e)=>c(t,typeof s!="symbol"?s+"":s,e);import{$ as a,d as u,p as n}from"./CfjfYOu4.js";class d{constructor(){h(this,"resource","/api/v2.1/OpponentHistory")}async get(s){const e={data:[],before:"",after:""};try{const o=await a(this.resource,{params:s,onResponse:({response:r})=>{r.status===204&&(r._data=null)}});return e.data=o.items||[],e.before=o.before||"",e.after=o.after||"",e}catch(o){return console.error("[OpponentHistoryRepo] Get Request Failed",o),e}}async getOpponents(s){try{const e=await a(`${this.resource}/filters/opponents`,{params:s,onResponse:({response:o})=>{o.status===204&&(o._data=null)}});return e&&e.length?e:[]}catch(e){return console.error("[OpponentHistoryRepo] Get Opponents Request Failed",e),[]}}async getOpponentHistory(s){const e={data:{}};try{const{sportId:o,opponentId:r}=s,i=await a(`${this.resource}/opponent/${o}/${r}`,{onResponse:({response:f})=>{f.status===204&&(f._data=null)}});return e.data=i,e}catch(o){return console.error("[OpponentHistoryRepo] Get Individual Opponent History Request Failed",o),e}}}const p=()=>new d,l=u("opponentHistory",{state:()=>({historyList:{},currentPage:{},firstPage:{},opponents:{},opponentHistory:{},totalPages:1,isLoading:!1}),actions:{async fetchHistoryList(t){const s=n(t);if(!(s in this.historyList)){this.setLoadingFlag(!0);const{data:e,before:o,after:r}=await p().get(t);this.setHistoryList({values:e,id:s}),!t.before&&!t.after&&this.setFirstPageInfo({before:o,after:r,hash:s}),this.setPageInfo({before:o,after:r,hash:s}),this.setLoadingFlag(!1)}},async fetchOpponents(t){const s=n(t.sportId);if(!(s in this.opponents)){const e=await p().getOpponents(t);this.setOpponents({values:e,id:s})}},async fetchOpponentHistory(t){const s=n(t);if(!(s in this.opponentHistory)){this.setLoadingFlag(!0);const{data:e}=await p().getOpponentHistory(t);this.setOpponentHistory({value:e,id:s}),this.setLoadingFlag(!1)}},setHistoryList(t){this.historyList[t.id]=t.values},setOpponents(t){this.opponents[t.id]=t.values},setOpponentHistory(t){this.opponentHistory[t.id]=t.value},setPageInfo(t){this.currentPage[t.hash]={before:t.before,after:t.after,firstPageBefore:void 0,firstPageAfter:void 0}},setFirstPageInfo(t){this.firstPage[t.hash]={before:t.before,after:t.after}},setLoadingFlag(t){this.isLoading=t}},getters:{getHistoryList:t=>s=>{const e=n(s);return t.historyList[e]||[]},getOpponents:t=>s=>{const e=n(s.sportId);return t.opponents[e]||[]},getPageInfo:t=>s=>{var r,i;const e=n(s),o=n({...s,before:void 0,after:void 0});return e in t.currentPage?{...t.currentPage[e],firstPageBefore:(r=t.firstPage[o])==null?void 0:r.before,firstPageAfter:(i=t.firstPage[o])==null?void 0:i.after}:{before:void 0,after:void 0,firstPageBefore:void 0,firstPageAfter:void 0}},getLoadingFlag:t=>t.isLoading,getOpponentHistory:t=>s=>{const e=n(s);return t.opponentHistory[e]||{}}}});export{l as u};