2 lines
7.1 KiB
JavaScript
2 lines
7.1 KiB
JavaScript
import{_ as se}from"./button.vue_vue_type_style_index_0_lang-5b65d3cd.js";import{d as te,U as ae,r as o,i as ne,o as l,c as d,a as e,O as u,b as i,w as H,e as g,F as P,S as T,T as q,X as oe,K as ie,N as V,a0 as k,ae as le,af as re}from"./index-c822befc.js";import{g as ce,a as de,f as ue}from"./competition-fa304f49.js";import{I as r}from"./Icon-ff3adddf.js";import{_ as _e}from"./_plugin-vue_export-helper-c27b6911.js";import"./usePrefix-93de78a0.js";import"./index-69ae13da.js";import"./raf-e9e40ecb.js";const v=x=>(le("data-v-f2a4d150"),x=x(),re(),x),ve={class:"lottery-container"},he={class:"lottery-header"},pe={class:"lottery-title"},fe=v(()=>e("p",{class:"lottery-subtitle"},"قرعه کشی برندگان مسابقه",-1)),me={class:"lottery-content"},ge={key:0,class:"loading-state"},ye=v(()=>e("div",{class:"spinner"},null,-1)),we=v(()=>e("p",null,"در حال بارگذاری...",-1)),xe=[ye,we],be={key:1,class:"error-state"},ke={key:2,class:"empty-state"},Ie=v(()=>e("p",null,"برای این مسابقه برندهای یافت نشد",-1)),Se={key:3,class:"winner-result"},We={class:"winner-card"},Ce={class:"winner-badge"},Me=v(()=>e("h2",{class:"winner-title"},"برنده نهایی",-1)),Be={class:"winner-info"},De={class:"winner-name"},Fe={class:"winner-details"},Oe={class:"detail-item"},Ne={class:"detail-item"},Ee=v(()=>e("div",{class:"celebration"},[e("div",{class:"confetti"}),e("div",{class:"confetti"}),e("div",{class:"confetti"})],-1)),He={key:4,class:"final-winner-result"},Pe={class:"winner-card-animated"},Te={class:"winner-badge-large"},qe=v(()=>e("h2",{class:"winner-title-large"},"تبریک! برنده انتخاب شد",-1)),Ve={class:"winner-info-large"},$e={class:"winner-name-large"},ze={class:"winner-details-large"},Le={class:"detail-item-large"},Re={class:"detail-item-large"},Ue={class:"celebration-large"},Ae={key:5,class:"lottery-wheel-container"},Ke={class:"participants-info"},Xe={class:"info-card"},Ye={class:"lottery-display-wrapper"},je={class:"lottery-display-container"},Ge={class:"display-frame"},Je={class:"display-window"},Qe=v(()=>e("div",{class:"lottery-shadows"},[e("div",{class:"shadow-top"}),e("div",{class:"shadow-bottom"})],-1)),Ze={class:"name-content"},es={class:"name-text"},ss={class:"name-score"},ts={class:"frame-pointer"},as={class:"lottery-controls"},ns={key:1,class:"spinning-indicator"},os=v(()=>e("div",{class:"spinner-large"},null,-1)),is=v(()=>e("p",null,"در حال قرعه کشی...",-1)),ls=[os,is],rs=te({__name:"index",setup(x){const M=ae(),p=o(null),B=o(""),a=o([]),y=o(!0),h=o(""),f=o(!1),$=o(-1),_=o(null),I=o(!1),m=o(null),z=o(null),b=o(0),S=o([]),L=()=>typeof window<"u"&&window.innerWidth<=768?70:80,R=async()=>{try{const s=(await de()).find(c=>c.id===p.value);if(s&&(z.value=s,s.winner_id)){I.value=!0;const c=a.value.find(n=>!!(n.user_id&&String(n.user_id)===String(s.winner_id)||n.id&&String(n.id)===String(s.winner_id)));c?m.value=c:m.value={user_id:s.winner_id,user_name:"برنده نهایی",user_mobile:"",score:0}}}catch(t){console.error("Error loading match:",t)}},D=async()=>{if(!p.value){h.value="شناسه مسابقه یافت نشد",y.value=!1;return}try{y.value=!0,h.value="";const t={page:1,limit:1e4,filters:[{field:"match_id",op:"eq",value:p.value,cr:"and",hidden:!1,type:"number"}]},s=await ce(t);a.value=s.rows||[],a.value.length===0?h.value="برای این مسابقه برندهای یافت نشد":(F(),await R())}catch(t){console.error("Error loading winners:",t),h.value="خطا در بارگذاری برندگان: "+(t.message||"خطای ناشناخته")}finally{y.value=!1}},F=()=>{const t=a.value.length>100?2:3;S.value=[];for(let s=0;s<t;s++)S.value.push(...a.value);b.value=0},U=async()=>{if(a.value.length===0){k.warning("برندهای برای قرعه کشی وجود ندارد");return}F(),f.value=!0,$.value=-1,_.value=null;const t=Math.floor(Math.random()*a.value.length),s=a.value[t],c=L(),W=(window.innerWidth<=768?200:240)/2-c/2,K=-(t*c)+W,X=a.value.length>100?3:4,Y=-(a.value.length*c*X),O=K+Y,j=3e3,G=Math.min(a.value.length*2,2e3),J=j+G,
|