1import{l as d,r as l,A as s,aD as J,aE as c}from"./index.a592fd0f.1791468856214.js";import{r as w}from"./agentation.68356e44.1791468856214.js";import{m as K}from"./modal.action.7db46723.1791468856214.js";import{I as Q,T as m,B as U}from"./PopupMolecules.5e11cbd3.1791468856214.js";import{C as V}from"./ContentContainerMolecules.a06ebc5d.1791468856214.js";import{u as W}from"./provider-hook.81be9d94.1791468856214.js";import"./store.c551292d.1791468856214.js";import"./floatingNotification.constant.27687fe7.1791468856214.js";import"./dayjs.min.4438ae62.1791468856214.js";import"./matchPredictionModules.8463f61a.1791468856214.js";import"./oddsFeedModules.2bed76ce.1791468856214.js";import"./promotionModules.e5ad9f13.1791468856214.js";import"./index.d6d38540.1791468856214.js";import"./index.cda596f5.1791468856214.js";import"./warning.883c7a3c.1791468856214.js";import"./react-datepicker.min.f6a23822.1791468856214.js";import"./index.c060afc9.1791468856214.js";import"./general-hook.582f544d.1791468856214.js";const X=({alt:A="sample image",onClick:E,gameList:f,title:M,category:N,latestGames:p=!1,hotGames:u=!1,titleType:L="default"})=>{const g="/public/html/games/images/s1/default-img.png",v="/public/html/games/images/s3/default-img.png",I=d.useDispatch(),h=w.useLocation(),D=w.useHistory(),F=d.useSelector(e=>e.user),G=d.useSelector(e=>e.menuSlice),[$,T]=l.useState([]),[C,x]=l.useState({}),[P,y]=l.useState(null),{getSlotGames:b,launchGame:Y,getMerchantGames:k,filteredSubCategoryMenus:i}=W(),z=G?.maintenanceLists||[],t=h.pathname.split("/").filter(Boolean),{gameArr:r,containerTitle:B,titleType:H}=l.useMemo(()=>{switch(t[0]){case"slots":return{gameArr:i.SL,containerTitle:"wy7Template:slotsTitle",titleType:"title"};case"casino":return{gameArr:i.C,containerTitle:"wy7Template:casinoTitle",titleType:"title"};case"lottery":return{gameArr:i.L,containerTitle:"wy7Template:lottoTitle",titleType:"title"};case"sports":return{gameArr:i.S,containerTitle:"wy7Template:sportsTitle",titleType:"title"};case"esports":return{gameArr:i.ES,containerTitle:"global:global.menu.esport3",titleType:"title"};case"fish":return{gameArr:i.F,containerTitle:"global:global.menu.fishing2",titleType:"title"};case"fastgames":return{gameArr:i.FG,containerTitle:"global:global.menu.fastgames",titleType:"title"};default:return{gameArr:null,containerTitle:null}}},[t[0],i]),S=l.useMemo(()=>f||r,[f,r]),R=e=>{if(!F?.isLogin)I(K.toggleModal("loginPopup"));else{const a={SL:"slots",F:"fish",L:"lottery",FG:"fastgames"}[e.category];a&&(t[0]===a&&!t[1]||!t[0])?D.push(`/${a||t[0]}/${e.provider}`):Y(e,N||t[0])}},_=(e,n,a)=>p||u?["/public/html/games/images/s1/"+e+"/"+a+".jpg",g]:t[1]?["/public/html/games/images/s3/"+t[1]+"/"+a+".jpg",v]:["/public/html/default_whitelabel/template/images/submenu-icon/ds9/"+n+"-"+e+".webp","/public/html/default_whitelabel/template/images/submenu-icon/ds9/"+n+"-"+e+".png",g],O=(e,n)=>{x(a=>({...a,[e]:Math.min((a[e]||0)+1,n-1)}))};return l.useEffect(()=>{x(0)},[h]),l.useEffect(()=>{let e=!0;return(async()=>{if(t.length===2){let a=[];t[0]==="slots"?a=await b(t[1]):a=await k(t[1],t[0]),e&&T(a)}else{const a=S.map(o=>{const j=z.find(q=>q.provider===o.provider);return{...o,...j&&{maintenanceEndTime:j.endTime,maintenance:!0}}});e&&T(a)}})(),()=>{e=!1}},[t.length,t[1],S,b]),l.useEffect(()=>{if(t[1]&&r?.length){const e=r.find(n=>n.provider===t[1]);e&&y(e.content)}else y(null)},[t[1],r]),s.jsx(V,{title:P||B||M,type:H||L,children:s.jsx("div",{className:`game-wrapper ${(t[1]||p||u)&&"game-list-wrapper"}`,children:($||[]).map(e=>{const n=_(e.provider,e.category,e.game),a=C[e.id]||0,o=n[a]||g;return s.jsxs("div",{className:`game-container ${!e.maintenance&&e.category}-container`,children:[s.jsx(Q,{src:o,alt:A,onClick:E,className:`game-img ${e.maintenance&&"game-img-maintenance"}`,onError:()=>O(e.id,n.length)}),!e.maintenance&&s.jsx("div",{className:"game-text-container",children:s.jsx(m,{text:t[1]||p||u?e.name:e.content,className:"text-atoms-light game-text",textSize:"md",type:"span"})}),!e.maintenance&&s.jsx("div",{className:"game-hover",children:s.jsx(U,{className:"button-secondary",onClick:()=>R(e),children:s.jsx(m,{className:"text-atoms-light",text:"wy7Template:play"})})}),e.maintenance&&s.jsx("div",{className:"game-maintenance-end-time",children:s.jsx(m,{text:J(e.maintenanceEndTime).utcOffset("GMT +08:00").format("DD/MM/YYYY HH:mm"),className:"text-atoms-light",textSize:"xs"})}),e.maintenance&&s.jsx("div",{className:"game-maintenance-tag",children:s.jsx(m,{text:"wy7Template:maintenance",className:"text-atoms-light",textSize:"md"})})]},e.id)})})})};X.propTypes={src:c.string,alt:c.string,onclick:c.func,className:c.string};export{X 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.