fansunited-widgets-cdn 0.0.13 → 0.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fu-widgets.iife.js +1 -1
- package/package.json +1 -1
package/fu-widgets.iife.js
CHANGED
|
@@ -255,7 +255,7 @@ export default theme;`}function Vv(t={},...e){const{breakpoints:n,mixins:i={},sp
|
|
|
255
255
|
*
|
|
256
256
|
* This source code is licensed under the ISC license.
|
|
257
257
|
* See the LICENSE file in the root directory of this source tree.
|
|
258
|
-
*/const H8=Ti("Zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]),$8=({time:t,maxTime:e})=>{const[n,i]=A.useState(e),{t:r}=Vr(),s=r("common.labels.sec");return A.useEffect(()=>{const c=setTimeout(()=>{i(t)},50);return()=>clearTimeout(c)},[t]),S.jsxs(xe,{sx:{mb:2},children:[S.jsxs(Qe,{direction:"row",justifyContent:"space-between",alignItems:"center",mb:.5,children:[S.jsx(B8,{size:18}),S.jsxs(Ie,{level:"body-sm",textColor:n<=3?"warning.500":"neutral.500",children:[n,s]})]}),S.jsx(xe,{sx:Bo.timerProgressWrapper,children:S.jsx(xe,{sx:{...Bo.timerProgress,width:`${n/e*100}%`,bgcolor:n<=3?"warning.500":"primary.500"}})})]})},q8=({currentPair:t,timer:e,selected:n,maxTime:i,feedback:r,onSelect:s,stepInfo:c})=>{const[d,p]=A.useState(0),[f,g]=A.useState(!1),[v,b]=A.useState(0),[C,x]=A.useState(0),{t:I}=Vr(),P=I("common.labels.or"),U=I("common.labels.point",{count:d});A.useEffect(()=>{if(c!=null&&c.currentPoints&&c.currentPoints>d){b(c.currentPoints-d),g(!0),x(L=>L+1);const M=setTimeout(()=>g(!1),1e3);return p(c.currentPoints),()=>clearTimeout(M)}},[c==null?void 0:c.currentPoints,d]);const z=()=>{const M=[],L=(c==null?void 0:c.currentLives)??3;for(let _=0;_<L;_++)M.push(S.jsx(C1,{color:"primary",sx:{height:20}},`life-${_}`));for(let _=L;_<3;_++)M.push(S.jsx(s8,{sx:{height:20}},`empty-${_}`));return M},O=()=>{const M=[],L=(c==null?void 0:c.currentStreak)??0,_=Math.min(L,5);for(let R=0;R<5;R++)M.push(S.jsx(xe,{sx:C8(_,R)},`streak-${R}`));return M},H=()=>S.jsxs(Qe,{direction:"column",alignItems:"center",spacing:1,sx:Bo.dividerWrapper,children:[S.jsx(Eo,{variant:"outlined",color:"neutral",size:"sm",sx:Bo.dividerButton,children:S.jsx(a8,{color:"primary",sx:{fontSize:"1.2rem"}})}),S.jsx(Ie,{level:"body-sm",sx:Bo.dividerText,children:P})]});return t?S.jsxs(xe,{children:[t&&S.jsx($8,{time:e,maxTime:i},`timer-${t.pairId}`),S.jsxs(Qe,{direction:{xs:"column",sm:"row"},alignItems:"center",spacing:0,sx:{mb:2},children:[S.jsx(xe,{sx:{width:{xs:"100%",sm:"calc(50% - 20px)"}},children:S.jsx(k1,{option:t.optionOne,selected:n,feedback:r,onSelect:s,pairId:t.pairId})}),H(),S.jsx(xe,{sx:{width:{xs:"100%",sm:"calc(50% - 20px)"}},children:S.jsx(k1,{option:t.optionTwo,selected:n,feedback:r,onSelect:s,pairId:t.pairId})})]}),S.jsxs(xe,{children:[S.jsx(Qe,{direction:"row",spacing:1,sx:{mb:1},children:O()}),S.jsxs(Qe,{direction:"row",justifyContent:"space-between",alignItems:"center",children:[S.jsx(xe,{children:z()}),S.jsxs(Qe,{direction:"row",spacing:1,alignItems:"center",children:[S.jsxs(Ie,{children:[U,":"]}),S.jsxs(Ie,{level:"h4",sx:{position:"relative"},children:[d,f&&S.jsxs(Ie,{sx:Bo.pointsAdded,children:["+",v]},C)]})]})]})]})]}):null},K8=({stepInfo:t,game:e,sdk:n})=>{const[i,r]=A.useState(null),[s,c]=A.useState(!0),d=uT(),{t:p}=Vr(),f=p("eitherOr.buttons.playAgain"),g=p("eitherOr.buttons.share"),v=p("common.labels.leaderboard"),b=p("eitherOr.personalBest"),C=p("eitherOr.yourScore"),x=(t==null?void 0:t.currentPoints)??0,[I,P]=A.useState(0),[U,z]=A.useState(null),O=I===x;return A.useEffect(()=>{(async()=>{try{if(!e||!t)throw"Game or stepInfo is missing";const M=await n.getEitherOrResults(e.id);if(x>0){const _=[...M.standings],R={userId:"current",userModel:{id:"current",name:p("common.labels.me"),nickname:null,avatar:null,anonymous:!0},personalBest:x},k=_.findIndex(T=>T.personalBest<x);k>=0&&k<50&&(_.splice(k,0,R),M.standings=_)}const L=await n.getMyEitherOrStats(e.id);P(L.personalBest??0),z(L.betterThan??0),r(M)}catch(M){console.error("Failed to fetch results:",M)}finally{c(!1)}})()},[t,e,n]),s?S.jsx(xe,{display:"flex",justifyContent:"center",alignItems:"center",minHeight:"200px",children:S.jsx($l,{size:"lg"})}):!e||!t?null:S.jsx(xe,{sx:{maxWidth:1200,margin:"0 auto"},children:S.jsxs(xe,{sx:Ci.wrapper,children:[S.jsxs(qn,{variant:"soft",sx:Ci.mainCard,children:[S.jsx(xe,{sx:Ci.fieldPattern}),S.jsxs(Qe,{spacing:4,sx:Ci.mainContent,children:[S.jsxs(Qe,{spacing:1,alignItems:"center",children:[S.jsxs(Qe,{direction:"row",alignItems:"center",spacing:1,sx:Ci.scoreSection,children:[S.jsx(U8,{size:28}),S.jsx(Ie,{level:"h3",children:C})]}),S.jsx(Ie,{level:"h1",sx:Ci.scoreValue,children:t.currentPoints})]}),S.jsx(Lh,{}),S.jsxs(Qe,{spacing:2,sx:Ci.statsSection,children:[O&&S.jsxs(kx,{variant:"soft",sx:Ci.statsCard,children:[S.jsxs(Qe,{direction:"row",alignItems:"center",spacing:1,children:[S.jsx(j8,{size:20,color:d.vars.palette.warning[400]}),S.jsx(Ie,{level:"title-md",children:p("eitherOr.personalBestImprovedTitle")})]}),S.jsx(Ie,{level:"body-md",textAlign:"center",children:p("eitherOr.personalBestImprovedSubtitle")})]}),I>0&&S.jsxs(kx,{variant:"soft",sx:Ci.statsCard,children:[S.jsxs(Qe,{direction:"row",alignItems:"center",spacing:1,children:[S.jsx(F1,{size:20,color:d.vars.palette.warning[400]}),S.jsx(Ie,{level:"title-md",children:b})]}),S.jsx(Ie,{level:"body-md",textAlign:"center",children:p("eitherOr.betterThanLabel",{points:I,percentile:U})})]})]})]})]}),(i==null?void 0:i.standings)&&S.jsxs(qn,{variant:"outlined",sx:Ci.leaderboardCard,children:[S.jsxs(Qe,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[S.jsx(F1,{size:24,color:d.vars.palette.warning[400]}),S.jsx(Ie,{level:"h4",children:v})]}),S.jsx(jy,{children:i.standings.slice(0,50).map((H,M)=>{var L,_;return S.jsx(jl,{sx:Ci.getLeaderboardItemStyles,children:S.jsx(tv,{children:S.jsxs(Qe,{direction:"row",alignItems:"center",spacing:2,children:[M<3?S.jsx(N8,{size:20,color:x8(M)(d)}):S.jsx(Ie,{sx:Ci.rankNumber,children:M+1}),S.jsx(Ie,{sx:{flex:1},children:((L=H.userModel)==null?void 0:L.nickname)||((_=H.userModel)==null?void 0:_.name)||"Anonymous"}),S.jsxs(Ie,{sx:T8(M<3),children:[H.personalBest," ",p("common.labels.point",{count:H.personalBest})]})]})})},H.userId)})})]}),S.jsxs(Qe,{direction:"row",spacing:2,sx:Ci.actionButtons,children:[S.jsx(rn,{variant:"outlined",color:"neutral",fullWidth:!0,onClick:()=>window.location.reload(),sx:Ci.actionButton,children:f}),S.jsx(rn,{variant:"solid",color:"primary",fullWidth:!0,startDecorator:S.jsx(N1,{}),onClick:()=>{alert("Share functionality to be implemented")},sx:Ci.actionButton,children:g})]})]})})},G8=({onStart:t,game:e})=>{var c;const[n,i]=A.useState(!1),{t:r}=Vr(),s=[{icon:S.jsx(A8,{}),title:r("eitherOr.tutorial.step1Title"),description:r("eitherOr.tutorial.step1Description")},{icon:S.jsx(C1,{}),title:r("eitherOr.tutorial.step2Title"),description:r("eitherOr.tutorial.step2Description")},{icon:S.jsx(E8,{}),title:r("eitherOr.tutorial.step3Title"),description:r("eitherOr.tutorial.step3Description")}];return e?S.jsxs(Qe,{spacing:3,children:[((c=e==null?void 0:e.images)==null?void 0:c.main)&&S.jsx(Es,{ratio:16/9,children:S.jsxs(qn,{sx:{borderColor:"divider","&:hover":{borderColor:"divider"}},children:[S.jsx(Ro,{children:S.jsx("img",{src:e.images.main,srcSet:`${e.images.main} 1x, ${e.images.main} 2x`,loading:"lazy",alt:e.title})}),S.jsx(Ro,{sx:_1.shadow}),S.jsxs(Xy,{sx:_1.contentWrapper,children:[S.jsx(rn,{size:"sm",variant:"soft",color:"primary",onClick:()=>i(!0),sx:Af.infoButton,children:S.jsx(S1,{})}),S.jsx(Qe,{justifyContent:"center",alignItems:"center",spacing:2,children:S.jsx(rn,{size:"md",variant:"solid",color:"primary",onClick:t,sx:Af.mainButton,children:r("eitherOr.buttons.start")})})]})]})}),S.jsx(ev,{open:n,onClose:()=>i(!1),children:S.jsxs(nv,{children:[S.jsx(Ie,{level:"h4",sx:{mb:3,textAlign:"center"},children:r("eitherOr.tutorial.howToPlay")}),S.jsx(An,{container:!0,spacing:2,sx:{overflow:"auto"},children:s.map((d,p)=>S.jsx(An,{xs:12,md:4,children:S.jsxs(qn,{sx:Af.ruleCard,variant:"outlined",children:[S.jsx(xe,{sx:Af.iconWrapper,children:d.icon}),S.jsx(Ie,{level:"h4",sx:{mb:1},children:d.title}),S.jsx(Ie,{level:"body-sm",children:d.description})]})},p))}),S.jsx(rn,{size:"lg",variant:"solid",color:"primary",onClick:()=>i(!1),sx:{mt:3,alignSelf:"center"},children:r("common.close")})]})})]}):null},W8=({gameId:t,sdk:e,onComplete:n})=>{const[i,r]=A.useState(Ua.LOADING),[s,c]=A.useState(null),[d,p]=A.useState(null),[f,g]=A.useState(null),[v,b]=A.useState(10),[C,x]=A.useState(null),[I,P]=A.useState({isCorrect:null,selectedOption:null}),[U,z]=A.useState(!1),{position:O,fields:H,campaignId:M,campaignName:L}=df();A.useEffect(()=>{(async()=>{try{const B=await e.getEitherOrById(t,!0);c(B),z(!B.authRequirement||B.authRequirement!=="LEAD"||B.authRequirement==="LEAD"&&O==="after"),r(Ua.TUTORIAL)}catch(B){console.warn("Failed to fetch game:",B)}})()},[t,e,O]);const _=A.useCallback(()=>({onTimerTick:te=>{b(te)},onElapsedResponse:te=>{console.log(te),b(10),p(te.steps.find(X=>!X.played)||null),g(te),te.currentLives===0&&r(Ua.RESULTS)}}),[]),R=A.useCallback(async()=>{try{const j=await e.participateInEitherOr(t,null,_());g(j),p(j.steps.find(B=>!B.played)||null),r(Ua.PLAYING)}catch(j){console.error("Failed to start game:",j)}},[t,e,_]),k=A.useCallback(async(j,B)=>{if(!C){x(B);try{const te=await e.participateInEitherOr(t,{pair:j,answer:B},_()),X=te.steps.find(K=>K.pairId===j);P({isCorrect:(X==null?void 0:X.correct)??!1,selectedOption:B}),g(te),setTimeout(()=>{const K=te.steps.find(Q=>!Q.played);K?(p(K),x(null),P({isCorrect:null,selectedOption:null})):(r(Ua.RESULTS),n&&n(te.currentPoints))},1e3)}catch(te){console.error("Failed to submit answer:",te),x(null)}}},[t,e,C,_,n]),T=()=>{z(!0)},D=()=>{var j,B,te,X,K,Q,Z,fe,G,ie,ge,ue,ce,Se;switch(i){case Ua.LOADING:return S.jsx(xe,{display:"flex",justifyContent:"center",alignItems:"center",minHeight:400,children:S.jsx($l,{})});case Ua.TUTORIAL:return console.log(U,s==null?void 0:s.authRequirement,O),!U&&(s==null?void 0:s.authRequirement)==="LEAD"&&O==="before"?S.jsxs(S.Fragment,{children:[((j=s==null?void 0:s.images)==null?void 0:j.main)&&S.jsx(Es,{ratio:16/9,children:S.jsx(qn,{sx:{borderColor:"divider","&:hover":{borderColor:"divider"}},children:S.jsx(Ro,{children:S.jsx("img",{src:s.images.main,srcSet:`${s.images.main} 1x, ${s.images.main} 2x`,loading:"lazy",alt:s.title})})})}),pf(s.flags)&&S.jsx(Rf,{title:((B=s.labels)==null?void 0:B.prizeCardTitle)??ht("prize.title"),description:((te=s.labels)==null?void 0:te.prizeCardDescription)??ht("prize.description"),cta:((X=s.labels)==null?void 0:X.prizeCta)??ht("prize.cta"),rules:s.rules}),S.jsx(cc,{onSuccess:T,contentType:"either-or",contentId:s.id,contentName:s.title,campaignId:M,campaignName:L,fields:H,leadTitle:(K=s.labels)==null?void 0:K.leadTitle,leadDescription:(Q=s.labels)==null?void 0:Q.leadDescription,leadCta:(Z=s.labels)==null?void 0:Z.leadCta,leadSuccessTitle:(fe=s.labels)==null?void 0:fe.leadSuccessTitle,leadSuccessDescription:(G=s.labels)==null?void 0:G.leadSuccessDescription})]}):S.jsx(G8,{onStart:R,game:s});case Ua.PLAYING:return S.jsx(q8,{currentPair:d,timer:v,maxTime:(s==null?void 0:s.time)??10,selected:C,feedback:I,onSelect:k,stepInfo:f});case Ua.RESULTS:return S.jsxs(S.Fragment,{children:[O==="after"&&(s==null?void 0:s.authRequirement)==="LEAD"&&S.jsx(qn,{sx:{mb:3},children:S.jsx(cc,{contentType:"either-or",contentId:s==null?void 0:s.id,contentName:s==null?void 0:s.title,fields:H,campaignId:M,campaignName:L,leadTitle:(ie=s==null?void 0:s.labels)==null?void 0:ie.leadTitle,leadDescription:(ge=s==null?void 0:s.labels)==null?void 0:ge.leadDescription,leadCta:(ue=s==null?void 0:s.labels)==null?void 0:ue.leadCta,leadSuccessTitle:(ce=s==null?void 0:s.labels)==null?void 0:ce.leadSuccessTitle,leadSuccessDescription:(Se=s==null?void 0:s.labels)==null?void 0:Se.leadSuccessDescription})}),S.jsx(K8,{stepInfo:f,game:s,sdk:e})]})}};return S.jsxs(xe,{children:[(s==null?void 0:s.title)&&S.jsx(Ie,{level:"h3",textAlign:"center",sx:{mb:5},children:s.title}),D()]})},Q8=({initialGameId:t})=>{const e=jr();return S.jsx(qn,{variant:"outlined",sx:{borderColor:"divider","&:hover":{borderColor:"divider"}},children:S.jsx(W8,{gameId:t,sdk:e.miniGames,onComplete:n=>{console.log("Game completed with score:",n)}})})},Y8=({contentId:t,classicQuizUrl:e,eitherOrUrl:n,pollUrl:i,matchQuizUrl:r})=>{console.log(t,e,n,i,r);const s=[{id:"quiz1",title:"Ultimate Football Quiz 2024",description:"Test your knowledge of football history, rules, and memorable moments with our comprehensive quiz!",participationCount:1234,images:{main:"https://uploads.fansunitedassets.com/futebolbrasil/9eeeae2b5d0cf31ede70f798b0c1a70c.png"},branding:{images:{mainLogo:null}}},{id:"quiz2",title:"NBA Legends Challenge",description:"From Michael Jordan to LeBron James, prove you're the ultimate basketball expert!",participationCount:2567,images:{main:"https://ng-sportingnews.com/s3/files/styles/crop_style_16_9_desktop/s3/2024-04/All-NBA%20040724.jpeg?h=920929c4&itok=PkpY95j2"},branding:{images:{mainLogo:null}}},{id:"quiz3",title:"Tennis Grand Slam Trivia",description:"Challenge yourself with questions about tennis's biggest tournaments and greatest players.",participationCount:987,images:{main:"https://img.olympics.com/images/image/private/t_s_pog_staticContent_hero_xl_2x/f_auto/primary/ufqgtgmmdvwrcqavdrhw"},branding:{images:{mainLogo:null}}},{id:"quiz4",title:"Formula 1: Speed & Strategy",description:"Race through our F1 quiz covering everything from historic races to modern champions!",participationCount:3421,images:{main:"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRlrUh-dJqFT9aN4NajI14cp7wvL_F3t92aFg&s"},branding:{images:{mainLogo:null}}}];return S.jsx(An,{container:!0,spacing:1,sx:{mb:6},children:s.map(c=>{var d,p,f;return S.jsx(An,{xs:12,md:6,children:S.jsxs(qn,{sx:{minHeight:350,cursor:"pointer",transition:"transform 0.2s, box-shadow 0.2s"},onClick:()=>{window.location.href=e+"?id="+c.id},children:[S.jsx(Ro,{children:S.jsx("img",{src:((d=c.images)==null?void 0:d.main)??"",alt:c.title,loading:"lazy",style:{transition:"transform 0.4s ease-out"}})}),S.jsx(Ro,{sx:{background:"linear-gradient(to top, rgba(0,0,0,0.8), rgba(0,0,0,0.3) 50%, rgba(0,0,0,0.2) 80%)"}}),S.jsxs(Xy,{sx:{justifyContent:"flex-end",gap:2},children:[S.jsxs(xe,{sx:{display:"flex",gap:1.5,alignItems:"center",mb:1},children:[S.jsx(Ie,{level:"body-xs",sx:{backgroundColor:"background.surface",px:1,py:.5,borderRadius:"sm",opacity:.9},children:ht("quizzes.label",{count:1})}),S.jsxs(Qe,{direction:"row",spacing:2,sx:{color:"neutral.300"},children:[S.jsx(Ie,{level:"body-sm",textColor:"white",startDecorator:S.jsx(L1,{size:16,color:"white"}),children:"2m"}),S.jsx(Ie,{level:"body-sm",textColor:"white",startDecorator:S.jsx(Cd,{size:16,color:"white"}),children:c.participationCount})]})]}),S.jsx(Ie,{level:"title-lg",textColor:"#fff",sx:{textShadow:"0 2px 4px rgba(0,0,0,0.4)"},children:c.title}),S.jsx(Ie,{level:"body-md",textColor:"neutral.300",component:"div",sx:{display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden",textShadow:"0 1px 2px rgba(0,0,0,0.4)"},children:S.jsx("div",{dangerouslySetInnerHTML:{__html:c.description}})}),((f=(p=c.branding)==null?void 0:p.images)==null?void 0:f.mainLogo)&&S.jsxs(xe,{mt:2,sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[S.jsx(xe,{sx:{height:24,"& img":{height:"100%",filter:"brightness(0) invert(1)",opacity:.7}},children:S.jsx("img",{src:c.branding.images.mainLogo,alt:"Sponsor"})}),S.jsx(rn,{variant:"solid",size:"md",sx:{transition:"transform 0.2s"},children:ht("quizzes.buttons.play")})]})]})]})},c.id)})})},J8=vo`
|
|
258
|
+
*/const H8=Ti("Zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]),$8=({time:t,maxTime:e})=>{const[n,i]=A.useState(e),{t:r}=Vr(),s=r("common.labels.sec");return A.useEffect(()=>{const c=setTimeout(()=>{i(t)},50);return()=>clearTimeout(c)},[t]),S.jsxs(xe,{sx:{mb:2},children:[S.jsxs(Qe,{direction:"row",justifyContent:"space-between",alignItems:"center",mb:.5,children:[S.jsx(B8,{size:18}),S.jsxs(Ie,{level:"body-sm",textColor:n<=3?"warning.500":"neutral.500",children:[n,s]})]}),S.jsx(xe,{sx:Bo.timerProgressWrapper,children:S.jsx(xe,{sx:{...Bo.timerProgress,width:`${n/e*100}%`,bgcolor:n<=3?"warning.500":"primary.500"}})})]})},q8=({currentPair:t,timer:e,selected:n,maxTime:i,feedback:r,onSelect:s,stepInfo:c})=>{const[d,p]=A.useState(0),[f,g]=A.useState(!1),[v,b]=A.useState(0),[C,x]=A.useState(0),{t:I}=Vr(),P=I("common.labels.or"),U=I("common.labels.point",{count:d});A.useEffect(()=>{if(c!=null&&c.currentPoints&&c.currentPoints>d){b(c.currentPoints-d),g(!0),x(L=>L+1);const M=setTimeout(()=>g(!1),1e3);return p(c.currentPoints),()=>clearTimeout(M)}},[c==null?void 0:c.currentPoints,d]);const z=()=>{const M=[],L=(c==null?void 0:c.currentLives)??3;for(let _=0;_<L;_++)M.push(S.jsx(C1,{color:"primary",sx:{height:20}},`life-${_}`));for(let _=L;_<3;_++)M.push(S.jsx(s8,{sx:{height:20}},`empty-${_}`));return M},O=()=>{const M=[],L=(c==null?void 0:c.currentStreak)??0,_=Math.min(L,5);for(let R=0;R<5;R++)M.push(S.jsx(xe,{sx:C8(_,R)},`streak-${R}`));return M},H=()=>S.jsxs(Qe,{direction:"column",alignItems:"center",spacing:1,sx:Bo.dividerWrapper,children:[S.jsx(Eo,{variant:"outlined",color:"neutral",size:"sm",sx:Bo.dividerButton,children:S.jsx(a8,{color:"primary",sx:{fontSize:"1.2rem"}})}),S.jsx(Ie,{level:"body-sm",sx:Bo.dividerText,children:P})]});return t?S.jsxs(xe,{children:[t&&S.jsx($8,{time:e,maxTime:i},`timer-${t.pairId}`),S.jsxs(Qe,{direction:{xs:"column",sm:"row"},alignItems:"center",spacing:0,sx:{mb:2},children:[S.jsx(xe,{sx:{width:{xs:"100%",sm:"calc(50% - 20px)"}},children:S.jsx(k1,{option:t.optionOne,selected:n,feedback:r,onSelect:s,pairId:t.pairId})}),H(),S.jsx(xe,{sx:{width:{xs:"100%",sm:"calc(50% - 20px)"}},children:S.jsx(k1,{option:t.optionTwo,selected:n,feedback:r,onSelect:s,pairId:t.pairId})})]}),S.jsxs(xe,{children:[S.jsx(Qe,{direction:"row",spacing:1,sx:{mb:1},children:O()}),S.jsxs(Qe,{direction:"row",justifyContent:"space-between",alignItems:"center",children:[S.jsx(xe,{children:z()}),S.jsxs(Qe,{direction:"row",spacing:1,alignItems:"center",children:[S.jsxs(Ie,{children:[U,":"]}),S.jsxs(Ie,{level:"h4",sx:{position:"relative"},children:[d,f&&S.jsxs(Ie,{sx:Bo.pointsAdded,children:["+",v]},C)]})]})]})]})]}):null},K8=({stepInfo:t,game:e,sdk:n})=>{const[i,r]=A.useState(null),[s,c]=A.useState(!0),d=uT(),{t:p}=Vr(),f=p("eitherOr.buttons.playAgain"),g=p("eitherOr.buttons.share"),v=p("common.labels.leaderboard"),b=p("eitherOr.personalBest"),C=p("eitherOr.yourScore"),x=(t==null?void 0:t.currentPoints)??0,[I,P]=A.useState(0),[U,z]=A.useState(null),O=I===x;return A.useEffect(()=>{(async()=>{try{if(!e||!t)throw"Game or stepInfo is missing";const M=await n.getEitherOrResults(e.id);if(x>0){const _=[...M.standings],R={userId:"current",userModel:{id:"current",name:p("common.labels.me"),nickname:null,avatar:null,anonymous:!0},personalBest:x},k=_.findIndex(T=>T.personalBest<x);k>=0&&k<50&&(_.splice(k,0,R),M.standings=_)}const L=await n.getMyEitherOrStats(e.id);P(L.personalBest??0),z(L.betterThan??0),r(M)}catch(M){console.error("Failed to fetch results:",M)}finally{c(!1)}})()},[t,e,n]),s?S.jsx(xe,{display:"flex",justifyContent:"center",alignItems:"center",minHeight:"200px",children:S.jsx($l,{size:"lg"})}):!e||!t?null:S.jsx(xe,{sx:{maxWidth:1200,margin:"0 auto"},children:S.jsxs(xe,{sx:Ci.wrapper,children:[S.jsxs(qn,{variant:"soft",sx:Ci.mainCard,children:[S.jsx(xe,{sx:Ci.fieldPattern}),S.jsxs(Qe,{spacing:4,sx:Ci.mainContent,children:[S.jsxs(Qe,{spacing:1,alignItems:"center",children:[S.jsxs(Qe,{direction:"row",alignItems:"center",spacing:1,sx:Ci.scoreSection,children:[S.jsx(U8,{size:28}),S.jsx(Ie,{level:"h3",children:C})]}),S.jsx(Ie,{level:"h1",sx:Ci.scoreValue,children:t.currentPoints})]}),S.jsx(Lh,{}),S.jsxs(Qe,{spacing:2,sx:Ci.statsSection,children:[O&&S.jsxs(kx,{variant:"soft",sx:Ci.statsCard,children:[S.jsxs(Qe,{direction:"row",alignItems:"center",spacing:1,children:[S.jsx(j8,{size:20,color:d.vars.palette.warning[400]}),S.jsx(Ie,{level:"title-md",children:p("eitherOr.personalBestImprovedTitle")})]}),S.jsx(Ie,{level:"body-md",textAlign:"center",children:p("eitherOr.personalBestImprovedSubtitle")})]}),I>0&&S.jsxs(kx,{variant:"soft",sx:Ci.statsCard,children:[S.jsxs(Qe,{direction:"row",alignItems:"center",spacing:1,children:[S.jsx(F1,{size:20,color:d.vars.palette.warning[400]}),S.jsx(Ie,{level:"title-md",children:b})]}),S.jsx(Ie,{level:"body-md",textAlign:"center",children:p("eitherOr.betterThanLabel",{points:I,percentile:U})})]})]})]})]}),(i==null?void 0:i.standings)&&S.jsxs(qn,{variant:"outlined",sx:Ci.leaderboardCard,children:[S.jsxs(Qe,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[S.jsx(F1,{size:24,color:d.vars.palette.warning[400]}),S.jsx(Ie,{level:"h4",children:v})]}),S.jsx(jy,{children:i.standings.slice(0,50).map((H,M)=>{var L,_;return S.jsx(jl,{sx:Ci.getLeaderboardItemStyles,children:S.jsx(tv,{children:S.jsxs(Qe,{direction:"row",alignItems:"center",spacing:2,children:[M<3?S.jsx(N8,{size:20,color:x8(M)(d)}):S.jsx(Ie,{sx:Ci.rankNumber,children:M+1}),S.jsx(Ie,{sx:{flex:1},children:((L=H.userModel)==null?void 0:L.nickname)||((_=H.userModel)==null?void 0:_.name)||"Anonymous"}),S.jsxs(Ie,{sx:T8(M<3),children:[H.personalBest," ",p("common.labels.point",{count:H.personalBest})]})]})})},H.userId)})})]}),S.jsxs(Qe,{direction:"row",spacing:2,sx:Ci.actionButtons,children:[S.jsx(rn,{variant:"outlined",color:"neutral",fullWidth:!0,onClick:()=>window.location.reload(),sx:Ci.actionButton,children:f}),S.jsx(rn,{variant:"solid",color:"primary",fullWidth:!0,startDecorator:S.jsx(N1,{}),onClick:()=>{alert("Share functionality to be implemented")},sx:Ci.actionButton,children:g})]})]})})},G8=({onStart:t,game:e})=>{var c;const[n,i]=A.useState(!1),{t:r}=Vr(),s=[{icon:S.jsx(A8,{}),title:r("eitherOr.tutorial.step1Title"),description:r("eitherOr.tutorial.step1Description")},{icon:S.jsx(C1,{}),title:r("eitherOr.tutorial.step2Title"),description:r("eitherOr.tutorial.step2Description")},{icon:S.jsx(E8,{}),title:r("eitherOr.tutorial.step3Title"),description:r("eitherOr.tutorial.step3Description")}];return e?S.jsxs(Qe,{spacing:3,children:[((c=e==null?void 0:e.images)==null?void 0:c.main)&&S.jsx(Es,{ratio:16/9,children:S.jsxs(qn,{sx:{borderColor:"divider","&:hover":{borderColor:"divider"}},children:[S.jsx(Ro,{children:S.jsx("img",{src:e.images.main,srcSet:`${e.images.main} 1x, ${e.images.main} 2x`,loading:"lazy",alt:e.title})}),S.jsx(Ro,{sx:_1.shadow}),S.jsxs(Xy,{sx:_1.contentWrapper,children:[S.jsx(rn,{size:"sm",variant:"soft",color:"primary",onClick:()=>i(!0),sx:Af.infoButton,children:S.jsx(S1,{})}),S.jsx(Qe,{justifyContent:"center",alignItems:"center",spacing:2,children:S.jsx(rn,{size:"md",variant:"solid",color:"primary",onClick:t,sx:Af.mainButton,children:r("eitherOr.buttons.start")})})]})]})}),S.jsx(ev,{open:n,onClose:()=>i(!1),children:S.jsxs(nv,{children:[S.jsx(Ie,{level:"h4",sx:{mb:3,textAlign:"center"},children:r("eitherOr.tutorial.howToPlay")}),S.jsx(An,{container:!0,spacing:2,sx:{overflow:"auto"},children:s.map((d,p)=>S.jsx(An,{xs:12,md:4,children:S.jsxs(qn,{sx:Af.ruleCard,variant:"outlined",children:[S.jsx(xe,{sx:Af.iconWrapper,children:d.icon}),S.jsx(Ie,{level:"h4",sx:{mb:1},children:d.title}),S.jsx(Ie,{level:"body-sm",children:d.description})]})},p))}),S.jsx(rn,{size:"lg",variant:"solid",color:"primary",onClick:()=>i(!1),sx:{mt:3,alignSelf:"center"},children:r("common.close")})]})})]}):null},W8=({gameId:t,sdk:e,onComplete:n})=>{const[i,r]=A.useState(Ua.LOADING),[s,c]=A.useState(null),[d,p]=A.useState(null),[f,g]=A.useState(null),[v,b]=A.useState(10),[C,x]=A.useState(null),[I,P]=A.useState({isCorrect:null,selectedOption:null}),[U,z]=A.useState(!1),{position:O,fields:H,campaignId:M,campaignName:L}=df();A.useEffect(()=>{(()=>{try{e.getEitherOrById(t,!0).then(B=>{console.log("response",B),c(B),z(!B.authRequirement||B.authRequirement!=="LEAD"||B.authRequirement==="LEAD"&&O==="after"),r(Ua.TUTORIAL)}).catch(B=>{console.error(B),r(null)})}catch{return""}})()},[t,e,O]);const _=A.useCallback(()=>({onTimerTick:te=>{b(te)},onElapsedResponse:te=>{b(10),p(te.steps.find(X=>!X.played)||null),g(te),te.currentLives===0&&r(Ua.RESULTS)}}),[]),R=A.useCallback(async()=>{try{const j=await e.participateInEitherOr(t,null,_());g(j),p(j.steps.find(B=>!B.played)||null),r(Ua.PLAYING)}catch(j){console.error("Failed to start game:",j)}},[t,e,_]),k=A.useCallback(async(j,B)=>{if(!C){x(B);try{const te=await e.participateInEitherOr(t,{pair:j,answer:B},_()),X=te.steps.find(K=>K.pairId===j);P({isCorrect:(X==null?void 0:X.correct)??!1,selectedOption:B}),g(te),setTimeout(()=>{const K=te.steps.find(Q=>!Q.played);K?(p(K),x(null),P({isCorrect:null,selectedOption:null})):(r(Ua.RESULTS),n&&n(te.currentPoints))},1e3)}catch(te){console.error("Failed to submit answer:",te),x(null)}}},[t,e,C,_,n]),T=()=>{z(!0)},D=()=>{var j,B,te,X,K,Q,Z,fe,G,ie,ge,ue,ce,Se;switch(i){case Ua.LOADING:return S.jsx(xe,{display:"flex",justifyContent:"center",alignItems:"center",minHeight:400,children:S.jsx($l,{})});case Ua.TUTORIAL:return console.log(U,s==null?void 0:s.authRequirement,O),!U&&(s==null?void 0:s.authRequirement)==="LEAD"&&O==="before"?S.jsxs(S.Fragment,{children:[((j=s==null?void 0:s.images)==null?void 0:j.main)&&S.jsx(Es,{ratio:16/9,children:S.jsx(qn,{sx:{borderColor:"divider","&:hover":{borderColor:"divider"}},children:S.jsx(Ro,{children:S.jsx("img",{src:s.images.main,srcSet:`${s.images.main} 1x, ${s.images.main} 2x`,loading:"lazy",alt:s.title})})})}),pf(s.flags)&&S.jsx(Rf,{title:((B=s.labels)==null?void 0:B.prizeCardTitle)??ht("prize.title"),description:((te=s.labels)==null?void 0:te.prizeCardDescription)??ht("prize.description"),cta:((X=s.labels)==null?void 0:X.prizeCta)??ht("prize.cta"),rules:s.rules}),S.jsx(cc,{onSuccess:T,contentType:"either-or",contentId:s.id,contentName:s.title,campaignId:M,campaignName:L,fields:H,leadTitle:(K=s.labels)==null?void 0:K.leadTitle,leadDescription:(Q=s.labels)==null?void 0:Q.leadDescription,leadCta:(Z=s.labels)==null?void 0:Z.leadCta,leadSuccessTitle:(fe=s.labels)==null?void 0:fe.leadSuccessTitle,leadSuccessDescription:(G=s.labels)==null?void 0:G.leadSuccessDescription})]}):S.jsx(G8,{onStart:R,game:s});case Ua.PLAYING:return S.jsx(q8,{currentPair:d,timer:v,maxTime:(s==null?void 0:s.time)??10,selected:C,feedback:I,onSelect:k,stepInfo:f});case Ua.RESULTS:return S.jsxs(S.Fragment,{children:[O==="after"&&(s==null?void 0:s.authRequirement)==="LEAD"&&S.jsx(qn,{sx:{mb:3},children:S.jsx(cc,{contentType:"either-or",contentId:s==null?void 0:s.id,contentName:s==null?void 0:s.title,fields:H,campaignId:M,campaignName:L,leadTitle:(ie=s==null?void 0:s.labels)==null?void 0:ie.leadTitle,leadDescription:(ge=s==null?void 0:s.labels)==null?void 0:ge.leadDescription,leadCta:(ue=s==null?void 0:s.labels)==null?void 0:ue.leadCta,leadSuccessTitle:(ce=s==null?void 0:s.labels)==null?void 0:ce.leadSuccessTitle,leadSuccessDescription:(Se=s==null?void 0:s.labels)==null?void 0:Se.leadSuccessDescription})}),S.jsx(K8,{stepInfo:f,game:s,sdk:e})]})}};if(i!==null)return S.jsxs(qn,{variant:"outlined",sx:{borderColor:"divider","&:hover":{borderColor:"divider"}},children:[(s==null?void 0:s.title)&&S.jsx(Ie,{level:"h3",textAlign:"center",sx:{mb:5},children:s.title}),D()]})},Q8=({initialGameId:t})=>{const e=jr();return S.jsx(W8,{gameId:t,sdk:e.miniGames,onComplete:n=>{console.log("Game completed with score:",n)}})},Y8=({contentId:t,classicQuizUrl:e,eitherOrUrl:n,pollUrl:i,matchQuizUrl:r})=>{console.log(t,e,n,i,r);const s=[{id:"quiz1",title:"Ultimate Football Quiz 2024",description:"Test your knowledge of football history, rules, and memorable moments with our comprehensive quiz!",participationCount:1234,images:{main:"https://uploads.fansunitedassets.com/futebolbrasil/9eeeae2b5d0cf31ede70f798b0c1a70c.png"},branding:{images:{mainLogo:null}}},{id:"quiz2",title:"NBA Legends Challenge",description:"From Michael Jordan to LeBron James, prove you're the ultimate basketball expert!",participationCount:2567,images:{main:"https://ng-sportingnews.com/s3/files/styles/crop_style_16_9_desktop/s3/2024-04/All-NBA%20040724.jpeg?h=920929c4&itok=PkpY95j2"},branding:{images:{mainLogo:null}}},{id:"quiz3",title:"Tennis Grand Slam Trivia",description:"Challenge yourself with questions about tennis's biggest tournaments and greatest players.",participationCount:987,images:{main:"https://img.olympics.com/images/image/private/t_s_pog_staticContent_hero_xl_2x/f_auto/primary/ufqgtgmmdvwrcqavdrhw"},branding:{images:{mainLogo:null}}},{id:"quiz4",title:"Formula 1: Speed & Strategy",description:"Race through our F1 quiz covering everything from historic races to modern champions!",participationCount:3421,images:{main:"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRlrUh-dJqFT9aN4NajI14cp7wvL_F3t92aFg&s"},branding:{images:{mainLogo:null}}}];return S.jsx(An,{container:!0,spacing:1,sx:{mb:6},children:s.map(c=>{var d,p,f;return S.jsx(An,{xs:12,md:6,children:S.jsxs(qn,{sx:{minHeight:350,cursor:"pointer",transition:"transform 0.2s, box-shadow 0.2s"},onClick:()=>{window.location.href=e+"?id="+c.id},children:[S.jsx(Ro,{children:S.jsx("img",{src:((d=c.images)==null?void 0:d.main)??"",alt:c.title,loading:"lazy",style:{transition:"transform 0.4s ease-out"}})}),S.jsx(Ro,{sx:{background:"linear-gradient(to top, rgba(0,0,0,0.8), rgba(0,0,0,0.3) 50%, rgba(0,0,0,0.2) 80%)"}}),S.jsxs(Xy,{sx:{justifyContent:"flex-end",gap:2},children:[S.jsxs(xe,{sx:{display:"flex",gap:1.5,alignItems:"center",mb:1},children:[S.jsx(Ie,{level:"body-xs",sx:{backgroundColor:"background.surface",px:1,py:.5,borderRadius:"sm",opacity:.9},children:ht("quizzes.label",{count:1})}),S.jsxs(Qe,{direction:"row",spacing:2,sx:{color:"neutral.300"},children:[S.jsx(Ie,{level:"body-sm",textColor:"white",startDecorator:S.jsx(L1,{size:16,color:"white"}),children:"2m"}),S.jsx(Ie,{level:"body-sm",textColor:"white",startDecorator:S.jsx(Cd,{size:16,color:"white"}),children:c.participationCount})]})]}),S.jsx(Ie,{level:"title-lg",textColor:"#fff",sx:{textShadow:"0 2px 4px rgba(0,0,0,0.4)"},children:c.title}),S.jsx(Ie,{level:"body-md",textColor:"neutral.300",component:"div",sx:{display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden",textShadow:"0 1px 2px rgba(0,0,0,0.4)"},children:S.jsx("div",{dangerouslySetInnerHTML:{__html:c.description}})}),((f=(p=c.branding)==null?void 0:p.images)==null?void 0:f.mainLogo)&&S.jsxs(xe,{mt:2,sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[S.jsx(xe,{sx:{height:24,"& img":{height:"100%",filter:"brightness(0) invert(1)",opacity:.7}},children:S.jsx("img",{src:c.branding.images.mainLogo,alt:"Sponsor"})}),S.jsx(rn,{variant:"solid",size:"md",sx:{transition:"transform 0.2s"},children:ht("quizzes.buttons.play")})]})]})]})},c.id)})})},J8=vo`
|
|
259
259
|
0% {
|
|
260
260
|
transform: scale(1);
|
|
261
261
|
}
|