import{_ as _t}from"./BasicMainCard-9c458ce7.js";import{_ as Fe}from"./BasicModal.vue_vue_type_style_index_0_lang-5bce5515.js";import{_ as dt,a as pt,u as Re}from"./useBaseTable-3b2d0853.js";import{_ as mt}from"./BasicInput.vue_vue_type_style_index_0_lang-cee0843c.js";import{_ as ft}from"./BasicTextArea.vue_vue_type_style_index_0_lang-ec68dcd2.js";import{_ as Ee}from"./button.vue_vue_type_style_index_0_lang-95946c23.js";import{G as D,_ as vt,d as Oe,g as E,h as ht,E as gt,o as k,i as Ne,w,a as e,b as r,e as F,c as S,j as B,t as N,k as L,F as we,n as ke,D as T,p as ze,v as bt,H as Le,y as ye,M as yt,N as xt,bC as wt,I as xe}from"./index-20d5dab1.js";import{f as Me,b as kt,c as qt,d as St,e as $t,t as Ut,M as je,g as At}from"./supabaseTableQuery-95762ff3.js";import{e as H,a as He,g as le}from"./convert-2ad76038.js";import{t as fe}from"./useDataTime-c147e135.js";import{S as We}from"./index-38a2f111.js";import{_ as Ct}from"./index-a59299a1.js";import{I as G}from"./Icon-06d3f751.js";import{a as De}from"./index-4284a867.js";import{M as It}from"./index-4f6342fa.js";import{a as Be}from"./updateLocale-6ea9ed84.js";import{T as pe}from"./isSymbol-f04930e1.js";import{U as me}from"./index-44ec8c49.js";import{_ as Pt}from"./_plugin-vue_export-helper-26f60d29.js";import"./index-857151a7.js";import"./index-0d016563.js";import"./Col-6ec89065.js";import"./styleChecker-6ae1ce26.js";import"./isPlainObject-769b8c03.js";import"./vnode-18b1f518.js";import"./useState-3cc4a0be.js";import"./FormItemContext-28b30746.js";import"./lodash-28ee46da.js";import"./index-f6eb678e.js";import"./css-0bca533a.js";import"./DialogWrap-a4cda90f.js";import"./pickAttrs-93039156.js";import"./index-f75dc027.js";import"./toArray-fb96c8b9.js";import"./usePrice-bc935b83.js";import"./useRefs-03151dab.js";import"./_flatRest-12208321.js";import"./index-84af5005.js";function Rt(n){if(Array.isArray(n))return n.map(String).filter(Boolean);if(typeof n=="string")try{const l=JSON.parse(n);if(Array.isArray(l))return l.map(String).filter(Boolean)}catch{return n.trim()?[n]:[]}return[]}function Lt(n){return{...n,duration_minutes:Math.round((Number(n.duration_seconds)||60)/60),kodoblu_voice_url:H(n.kodoblu_voice_url)||"",audio_section_url:H(n.audio_section_url)||"",step_images:Rt(n.step_images).map(l=>H(l)||l)}}function Je(n,l,p){var v,u,b,P,q;return{challenge_id:n,step_order:p,description:l.description||"",duration_seconds:Math.max(1,Math.round(Number(l.duration_minutes)*60)),aparat_embed_code:((v=l.aparat_embed_code)==null?void 0:v.trim())||null,kodoblu_voice_url:H((u=l.kodoblu_voice_url)==null?void 0:u.trim())||null,step_images:(l.step_images||[]).map(h=>H(h)||h).filter(Boolean),is_final_step:!!l.is_final_step,enable_feedback_text:!!l.enable_feedback_text,require_feedback_text:!!l.require_feedback_text,feedback_text_title:((b=l.feedback_text_title)==null?void 0:b.trim())||null,feedback_text_placeholder:((P=l.feedback_text_placeholder)==null?void 0:P.trim())||null,enable_photo_upload:!!(l.enable_photo_upload||l.requires_photo_upload),require_photo_upload:!!(l.require_photo_upload||l.requires_photo_upload),enable_voice_upload:!!l.enable_voice_upload,require_voice_upload:!!l.require_voice_upload,enable_mcq:!!l.enable_mcq,require_mcq:!!l.require_mcq,mcq_question:l.mcq_question||null,mcq_options:(l.mcq_options||[]).filter(h=>h.trim()),mcq_correct_index:l.enable_mcq?Number(l.mcq_correct_index??0):null,enable_audio_section:!!l.enable_audio_section,audio_section_url:H((q=l.audio_section_url)==null?void 0:q.trim())||null,punishment_description:l.punishment_description||"",requires_photo_upload:!!(l.enable_photo_upload||l.requires_photo_upload),updated_at:new Date().toISOString()}}function Mt(n,l){return l.map((p,v)=>Je(n,p,v+1))}async function Dt(n){const{data:l,error:p}=await D.from("step_challenges").select("*").eq("id",n).single();if(p)throw p;const{data:v,error:u}=await D.from("step_challenge_steps").select("*").eq("challenge_id",n).order("step_order",{ascending:!0});if(u)throw u;return{...l,steps:(v||[]).map(b=>Lt(b))}}async function Bt(n,l){const p={title:n.title,character_image_url:n.character_image_url,show:n.show??!1,access_type:n.access_type??"free",sort_order:n.sort_order??0,completion_points:Number(n.completion_points)||50};l&&(p.owner_id=l);const{data:v,error:u}=await D.from("step_challenges").insert([p]).select().single();if(u)throw u;const b=Mt(v.id,n.steps),{error:P}=await D.from("step_challenge_steps").insert(b);if(P)throw P;return v}async function Tt(n,l){const{error:p}=await D.from("step_challenges").update({title:l.title,character_image_url:l.character_image_url,show:l.show??!1,access_type:l.access_type??"free",sort_order:l.sort_order??0,completion_points:Number(l.completion_points)||50,updated_at:new Date().toISOString()}).eq("id",n);if(p)throw p;const{data:v,error:u}=await D.from("step_challenge_steps").select("id").eq("challenge_id",n);if(u)throw u;const b=new Set((v||[]).map(h=>h.id)),P=l.steps.map(h=>h.id).filter(h=>typeof h=="number"&&b.has(h)),q=[...b].filter(h=>!P.includes(h));if(q.length){const{error:h}=await D.from("user_step_challenge_steps").delete().in("step_id",q);if(h)throw h;const{error:_}=await D.from("step_challenge_steps").delete().in("id",q);if(_)throw _}for(const h of P){const{error:_}=await D.from("step_challenge_steps").update({step_order:-h,updated_at:new Date().toISOString()}).eq("id",h);if(_)throw _}for(let h=0;himport("./buildSupabaseQuery-4c9afa46.js"),["assets/buildSupabaseQuery-4c9afa46.js","assets/index-20d5dab1.js","assets/index-2b0c085a.css","assets/supabaseTableQuery-95762ff3.js"]),p={...n};!p.sort&&!p.order&&(p.order="-id");const v=await l(p,"step_challenges");try{if(Array.isArray(v==null?void 0:v.rows)){const u=v.rows,b=u.map(I=>I.id).filter(Boolean);let P={};if(b.length>0){const{data:I}=await D.from("step_challenge_steps").select("id, challenge_id, step_order, duration_seconds").in("challenge_id",b);P=(I||[]).reduce((A,j)=>(A[j.challenge_id]||(A[j.challenge_id]=[]),A[j.challenge_id].push(j),A),{})}const q=p.page||1,h=p.limit||20,_=(q-1)*h,d=u.map((I,A)=>{const j=P[I.id]||[],Z=j.reduce((ae,V)=>ae+Math.round((V.duration_seconds||0)/60),0);return{...I,index:_+A,steps_count:j.length,total_minutes:Z}});return{...v,rows:d}}}catch(u){console.log("[getStepChallengesTable] normalize error:",u)}return v}const Nt=new Set(["status","current_step_order","started_at","completed_at","created_at","challenge_id"]);async function Te(n){const l=n.trim();if(!l)return[];const{data:p,error:v}=await D.from("step_challenges").select("id").ilike("title",Ut(l)).limit(je);if(v)throw v;return(p||[]).map(u=>u.id)}function zt(n,l,p){const v=At(["status"],n,l).split(","),u=[...new Set(p)].slice(0,je);return u.length&&v.push(`challenge_id.in.(${u.join(",")})`),v.join(",")}async function jt(n){const{limit:l=20,page:p=1,search:v,filters:u}=n;let b=D.from("user_step_challenges").select("*, step_challenges(title), users(name, phone, first_name, last_name)",{count:"exact"});if(v!=null&&v.trim()){const[_,d]=await Promise.all([Me(D,v),Te(v)]);b=b.or(zt(v,_,d))}if(u!=null&&u.length){for(const _ of u)if(!(_.hidden||!_.field)){if(_.field==="challenge_title"){if(["eq","has","like"].includes(_.op)){const d=await Te(String(_.value));d.length?b=b.in("challenge_id",d):b=b.eq("challenge_id",-1)}continue}if(_.field==="user_name"||_.field==="user_phone"){if(["eq","has","like"].includes(_.op)){const d=await Me(D,String(_.value));d.length?b=b.in("user_id",d):b=b.eq("user_id","00000000-0000-0000-0000-000000000000")}continue}Nt.has(_.field)&&(b=kt(b,_))}}b=qt(b,n,"-created_at",["created_at","status","current_step_order"]),b=St(b,p,l);const{data:P,error:q,count:h}=await b;if(q)throw q;return $t(P,h,n,_=>{const d=Array.isArray(_.users)?_.users[0]:_.users,I=Array.isArray(_.step_challenges)?_.step_challenges[0]:_.step_challenges;let A="نامشخص";return d!=null&&d.name?A=d.name:d!=null&&d.first_name||d!=null&&d.last_name?A=`${d.first_name||""} ${d.last_name||""}`.trim():d!=null&&d.phone&&(A=d.phone),{..._,challenge_title:(I==null?void 0:I.title)||"",user_name:A,user_phone:(d==null?void 0:d.phone)||""}})}async function Ht(n){const{data:l,error:p}=await D.from("user_step_challenges").select("*, step_challenges(title), users(name, phone, first_name, last_name)").eq("id",n).single();if(p)throw p;const{data:v,error:u}=await D.from("user_step_challenge_steps").select(` *, step_challenge_steps ( step_order, description, is_final_step, enable_mcq, mcq_question, mcq_options, enable_feedback_text, enable_photo_upload, enable_voice_upload ) `).eq("user_challenge_id",n).order("id",{ascending:!0});if(u)throw u;const b=(v||[]).map(h=>{const _=Array.isArray(h.step_challenge_steps)?h.step_challenge_steps[0]:h.step_challenge_steps;let d=[];const I=_==null?void 0:_.mcq_options;if(Array.isArray(I))d=I.map(String);else if(typeof I=="string")try{const A=JSON.parse(I);Array.isArray(A)&&(d=A.map(String))}catch{d=[]}return{...h,step_challenge_steps:_?{..._,mcq_options:d}:null}});b.sort((h,_)=>{var A,j;const d=((A=h.step_challenge_steps)==null?void 0:A.step_order)??999,I=((j=_.step_challenge_steps)==null?void 0:j.step_order)??999;return d-I});const P=Array.isArray(l.step_challenges)?l.step_challenges[0]:l.step_challenges,q=Array.isArray(l.users)?l.users[0]:l.users;return{...l,challenge_title:(P==null?void 0:P.title)||"",user_name:(q==null?void 0:q.name)||[q==null?void 0:q.first_name,q==null?void 0:q.last_name].filter(Boolean).join(" ")||(q==null?void 0:q.phone)||"نامشخص",user_phone:(q==null?void 0:q.phone)||"",steps_progress:b}}async function Wt(){const{data:n,error:l}=await D.from("step_challenge_config").select("*").eq("id",1).maybeSingle();if(l)throw l;return n||{id:1,rules_aparat_embed_code:null}}async function Jt(n){const{data:l,error:p}=await D.from("step_challenge_config").upsert({id:1,rules_aparat_embed_code:n.rules_aparat_embed_code||null,updated_at:new Date().toISOString()}).select().single();if(p)throw p;return l}const Vt=[{title:"ردیف",dataIndex:"id",key:"id",filterable:!1,width:70,align:"center",customRender:n=>n.record.index+1},{title:"عنوان",dataIndex:"title",key:"title"},{title:"مراحل",dataIndex:"steps_count",key:"steps_count",customRender:n=>{const l=n.record.steps_count||0,p=n.record.total_minutes||0;return l?`${l} مرحله / ${p} دقیقه`:"-"}},{title:"نمایش",dataIndex:"show",key:"show",customRender:n=>n.record.show?"فعال":"مخفی"},{title:"نوع",dataIndex:"access_type",key:"access_type",width:100,align:"center",customRender:n=>n.record.access_type==="subscription"?"اشتراکی":"رایگان"},{title:"ترتیب",dataIndex:"sort_order",key:"sort_order",width:80,align:"center"},{title:"زمان ایجاد",dataIndex:"created_at",key:"created_at",customRender:n=>fe(n.record.created_at)},{title:"عملیات",dataIndex:"action",key:"action",slot:"action",filterable:!1,align:"center"}],Kt={in_progress:"در حال انجام",completed:"تکمیل شده",abandoned:"رها شده"},Xt=[{title:"ردیف",dataIndex:"id",key:"id",filterable:!1,width:70,align:"center",customRender:n=>n.record.index+1},{title:"چالش",dataIndex:"challenge_title",key:"challenge_title",filterField:"challenge_title"},{title:"کاربر",dataIndex:"user_name",key:"user_name",filterField:"user_name"},{title:"موبایل",dataIndex:"user_phone",key:"user_phone",filterField:"user_phone"},{title:"وضعیت",dataIndex:"status",key:"status",customRender:n=>Kt[n.record.status]||n.record.status},{title:"مرحله فعلی",dataIndex:"current_step_order",key:"current_step_order",align:"center"},{title:"شروع",dataIndex:"started_at",key:"started_at",customRender:n=>fe(n.record.started_at)},{title:"پایان",dataIndex:"completed_at",key:"completed_at",customRender:n=>n.record.completed_at?fe(n.record.completed_at):"-"},{title:"عملیات",dataIndex:"action",key:"action",slot:"action",filterable:!1,align:"center",width:90}],Gt={key:0,class:"py-16 flex justify-center"},Qt={key:1,class:"space-y-4 max-h-[70vh] overflow-y-auto pr-1"},Yt={class:"grid grid-cols-1 sm:grid-cols-2 gap-3 text-sm"},Zt=e("span",{class:"text-gray-500"},"چالش:",-1),es={class:"font-600"},ts=e("span",{class:"text-gray-500"},"کاربر:",-1),ss={class:"font-600"},as=e("span",{class:"text-gray-500"},"موبایل:",-1),os={class:"font-600"},ls=e("span",{class:"text-gray-500"},"وضعیت:",-1),ns={class:"font-600"},is=e("span",{class:"text-gray-500"},"شروع:",-1),rs={class:"font-600"},cs=e("span",{class:"text-gray-500"},"پایان:",-1),us={class:"font-600"},_s={key:0},ds=e("span",{class:"text-gray-500"},"امتیاز:",-1),ps={class:"font-600"},ms={key:0,class:"rounded-xl border border-gray-200 bg-gray-50 p-3"},fs=e("div",{class:"text-sm font-700 mb-1"},"بازخورد پایان چالش",-1),vs={class:"text-sm whitespace-pre-wrap leading-7"},hs={key:1,class:"text-center text-gray-500 py-8"},gs={class:"flex flex-wrap items-center justify-between gap-2"},bs={class:"font-700 text-[#120d31]"},ys={key:0,class:"text-sm text-gray-600 leading-7"},xs={key:1,class:"rounded-lg bg-blue-50 p-3"},ws=e("div",{class:"text-xs font-700 text-gray-600 mb-1"},"بازخورد متنی",-1),ks={class:"text-sm whitespace-pre-wrap leading-7"},qs={key:2,class:"space-y-2"},Ss=e("div",{class:"text-xs font-700 text-gray-600"},"عکس ارسالی",-1),$s={key:3,class:"space-y-2"},Us=e("div",{class:"text-xs font-700 text-gray-600"},"ویس ارسالی",-1),As=["src"],Cs={key:4,class:"rounded-lg bg-amber-50 p-3"},Is=e("div",{class:"text-xs font-700 text-gray-600 mb-1"},"پاسخ چندگزینه‌ای",-1),Ps={key:0,class:"text-sm text-gray-600 mb-1"},Rs={class:"text-sm font-600"},Ls={key:5,class:"text-xs text-gray-400"},Ms={class:"flex justify-end"},Ds=Oe({__name:"StepChallengeProgressDetailModal",props:{visible:{type:Boolean},userChallengeId:{}},emits:["update:visible"],setup(n,{emit:l}){const p=n,v=E(!1),u=E(null),b=ht({get:()=>p.visible,set:m=>l("update:visible",m)}),P={in_progress:"در حال انجام",completed:"تکمیل شده",abandoned:"رها شده"},q={pending:"شروع نشده",running:"در حال انجام",completed:"انجام شده",failed:"ناموفق"};function h(m){return m?fe(m):"—"}function _(m){return P[m||""]||m||"—"}function d(m){return q[m||""]||m||"—"}function I(m){return m==="completed"?"bg-green-50 border-green-200 text-green-800":m==="running"?"bg-yellow-50 border-yellow-200 text-yellow-800":m==="failed"?"bg-red-50 border-red-200 text-red-800":"bg-gray-50 border-gray-200 text-gray-600"}function A(m){return m?m.match(/\.(mp3|wav|ogg|m4a|aac|webm)$/i)?He(m):le(m):""}function j(m){const C=m.step_challenge_steps;return C!=null&&C.is_final_step?"ماموریت پایانی":C!=null&&C.step_order?`مرحله ${C.step_order}`:`مرحله ${m.id}`}function Z(m){var O;const C=m.mcq_answer,J=((O=m.step_challenge_steps)==null?void 0:O.mcq_options)||[];return typeof C=="number"&&J[C]?J[C]:typeof C=="number"?`گزینه ${C+1}`:"—"}function ae(m){var C;return!!((C=m.feedback_text)!=null&&C.trim()||m.photo_url||m.voice_url||m.mcq_answer!==null&&m.mcq_answer!==void 0)}async function V(){if(p.userChallengeId){v.value=!0,u.value=null;try{u.value=await Ht(p.userChallengeId)}catch(m){T.error((m==null?void 0:m.message)||"خطا در بارگذاری جزئیات"),l("update:visible",!1)}finally{v.value=!1}}}function Q(){l("update:visible",!1)}return gt(()=>[p.visible,p.userChallengeId],([m,C])=>{m&&C&&V(),m||(u.value=null)}),(m,C)=>{const J=Ee,O=Fe;return k(),Ne(O,{visible:b.value,"onUpdate:visible":C[0]||(C[0]=W=>b.value=W),title:"جزئیات ارسال‌های کاربر",width:"88%","custom-footer":!0,onCancel:Q},{footer:w(()=>[e("div",Ms,[r(J,{onClick:Q},{default:w(()=>[F("بستن")]),_:1})])]),default:w(()=>{var W;return[v.value?(k(),S("div",Gt,[r(B(We),{size:"large"})])):u.value?(k(),S("div",Qt,[e("div",Yt,[e("div",null,[Zt,F(),e("span",es,N(u.value.challenge_title),1)]),e("div",null,[ts,F(),e("span",ss,N(u.value.user_name),1)]),e("div",null,[as,F(),e("span",os,N(u.value.user_phone||"—"),1)]),e("div",null,[ls,F(),e("span",ns,N(_(u.value.status)),1)]),e("div",null,[is,F(),e("span",rs,N(h(u.value.started_at)),1)]),e("div",null,[cs,F(),e("span",us,N(u.value.completed_at?h(u.value.completed_at):"—"),1)]),u.value.points_awarded?(k(),S("div",_s,[ds,F(),e("span",ps,N(u.value.points_awarded),1)])):L("",!0)]),u.value.completion_feedback?(k(),S("div",ms,[fs,e("div",vs,N(u.value.completion_feedback),1)])):L("",!0),(W=u.value.steps_progress)!=null&&W.length?L("",!0):(k(),S("div",hs," هنوز ارسالی برای این چالش ثبت نشده است. ")),(k(!0),S(we,null,ke(u.value.steps_progress,(M,U)=>{var ne,ie,te;return k(),S("div",{key:M.id,class:"rounded-xl border border-gray-200 p-4 space-y-3"},[e("div",gs,[e("div",bs,N(j(M)),1),e("span",{class:ze(["text-xs font-600 px-2 py-1 rounded-full border",I(M.status)])},N(d(M.status)),3)]),(ne=M.step_challenge_steps)!=null&&ne.description?(k(),S("div",ys,N(M.step_challenge_steps.description),1)):L("",!0),(ie=M.feedback_text)!=null&&ie.trim()?(k(),S("div",xs,[ws,e("div",ks,N(M.feedback_text),1)])):L("",!0),M.photo_url?(k(),S("div",qs,[Ss,r(B(Ct),{src:A(M.photo_url),preview:{mask:"پیش نمایش"},class:"!max-w-xs rounded-xl border border-gray-200 overflow-hidden"},null,8,["src"])])):L("",!0),M.voice_url?(k(),S("div",$s,[Us,e("audio",{src:A(M.voice_url),controls:"",preload:"metadata",class:"w-full max-w-md"},null,8,As)])):L("",!0),M.mcq_answer!==null&&M.mcq_answer!==void 0?(k(),S("div",Cs,[Is,(te=M.step_challenge_steps)!=null&&te.mcq_question?(k(),S("div",Ps,N(M.step_challenge_steps.mcq_question),1)):L("",!0),e("div",Rs,N(Z(M)),1)])):L("",!0),ae(M)?L("",!0):(k(),S("div",Ls," ارسالی برای این مرحله ثبت نشده است. "))])}),128))])):L("",!0)]}),_:1},8,["visible"])}}}),f=n=>(yt("data-v-acc248f1"),n=n(),xt(),n),Bs={class:"flex justify-between items-center mb-4"},Ts=f(()=>e("h2",null,"چالش‌های مرحله‌ای",-1)),Fs={class:"gap-2 flex justify-center"},Es=f(()=>e("span",null,"حذف",-1)),Os=f(()=>e("span",null,"ویرایش",-1)),Ns=f(()=>e("div",{class:"mb-4"},[e("h2",null,"پیشرفت کاربران در چالش‌ها")],-1)),zs=f(()=>e("span",null,"مشاهده ارسال‌ها",-1)),js={class:"max-w-2xl space-y-4"},Hs=f(()=>e("h2",{class:"text-lg font-semibold"},"قوانین چالش‌های کدوبلو",-1)),Ws=f(()=>e("p",{class:"text-sm text-gray-600"}," ویدیوی embed آپارات که در مودال «قوانین چالش کدوبلو» به کاربر نمایش داده می‌شود. ",-1)),Js=f(()=>e("div",{class:"mb-1 text-sm text-gray-600"},"کد embed ویدیو قوانین",-1)),Vs={class:"space-y-4 relative"},Ks={key:0,class:"absolute inset-0 bg-white/60 z-10 flex items-center justify-center"},Xs=f(()=>e("div",{class:"mb-1 text-sm text-gray-600"},"عنوان چالش",-1)),Gs={class:"grid grid-cols-1 sm:grid-cols-3 gap-4"},Qs=f(()=>e("div",{class:"mb-1 text-sm text-gray-600"},"ترتیب نمایش",-1)),Ys=f(()=>e("div",{class:"mb-1 text-sm text-gray-600"},"وضعیت نمایش",-1)),Zs={class:"flex items-center gap-2 mt-2"},ea={class:"text-sm text-gray-600"},ta=f(()=>e("div",{class:"mb-1 text-sm text-gray-600"},"نوع دسترسی",-1)),sa=f(()=>e("div",{class:"mb-1 text-sm text-gray-600"},"امتیاز اولین تکمیل",-1)),aa={class:"flex justify-center pb-2"},oa=f(()=>e("div",{class:"mb-1 text-sm text-gray-600"},"عکس کاراکتر (کارت لیست)",-1)),la={key:0},na=f(()=>e("div",null,"آپلود تصویر",-1)),ia={key:0,class:"mt-1"},ra={class:"h-2 rounded bg-gray-200 overflow-hidden"},ca=f(()=>e("div",{class:"section-divider"},null,-1)),ua={class:"pt-2"},_a=f(()=>e("div",{class:"mb-2 text-sm text-gray-600 font-semibold"},"مراحل چالش",-1)),da={class:"space-y-4"},pa={class:"flex items-center justify-between gap-3"},ma={class:"font-semibold text-gray-700"},fa={key:0,class:"text-emerald-600 text-sm font-normal mr-1"},va={class:"flex items-center gap-2"},ha=f(()=>e("span",{class:"text-sm text-gray-600"},"ماموریت پایانی",-1)),ga=f(()=>e("div",{class:"mb-1 text-xs text-gray-500"},"توضیحات مرحله (اختیاری)",-1)),ba={class:"grid grid-cols-2 gap-3"},ya=f(()=>e("div",{class:"mb-1 text-xs text-gray-500"},"زمان لازم (دقیقه)",-1)),xa=f(()=>e("div",{class:"mb-1 text-xs text-gray-500"},"کد embed ویدیو آپارات (اختیاری)",-1)),wa={class:"space-y-2"},ka=f(()=>e("div",{class:"mb-1 text-xs text-gray-500"},"وویس کدوبلو (اختیاری)",-1)),qa={key:0,class:"mt-1"},Sa={class:"h-2 rounded bg-gray-200 overflow-hidden"},$a={key:1,class:"step-audio-preview"},Ua={class:"flex items-center justify-between mb-2"},Aa=f(()=>e("div",{class:"step-audio-preview__label mb-0"},"پیش‌نمایش وویس کدوبلو",-1)),Ca=["src"],Ia=f(()=>e("div",{class:"mb-1 text-xs text-gray-500"},"عکس‌های مرحله (اختیاری)",-1)),Pa={key:0},Ra=f(()=>e("div",{class:"text-xs"},"آپلود عکس",-1)),La=f(()=>e("div",{class:"section-divider"},null,-1)),Ma={class:"step-form-box__inner"},Da=f(()=>e("div",{class:"text-xs font-semibold text-gray-600 mb-3"},"آیتم‌های بعد از «بزن بریم»",-1)),Ba={class:"grid grid-cols-1 sm:grid-cols-2 gap-3"},Ta={class:"flex items-center gap-2"},Fa=f(()=>e("span",{class:"text-sm"},"فیلد بازخورد",-1)),Ea={class:"flex items-center gap-2"},Oa=f(()=>e("span",{class:"text-sm"},"بازخورد اجباری",-1)),Na={class:"flex items-center gap-2"},za=f(()=>e("span",{class:"text-sm"},"بارگذاری عکس",-1)),ja={class:"flex items-center gap-2"},Ha=f(()=>e("span",{class:"text-sm"},"عکس اجباری",-1)),Wa={class:"flex items-center gap-2"},Ja=f(()=>e("span",{class:"text-sm"},"ضبط و ارسال ویس",-1)),Va={class:"flex items-center gap-2"},Ka=f(()=>e("span",{class:"text-sm"},"ویس اجباری",-1)),Xa={class:"flex items-center gap-2"},Ga=f(()=>e("span",{class:"text-sm"},"سوال چندگزینه‌ای",-1)),Qa={class:"flex items-center gap-2"},Ya=f(()=>e("span",{class:"text-sm"},"پاسخ MCQ اجباری",-1)),Za={class:"flex items-center gap-2"},eo=f(()=>e("span",{class:"text-sm"},"بخش صوت",-1)),to={key:0,class:"space-y-2 border rounded-lg p-3 bg-white"},so=f(()=>e("div",{class:"mb-1 text-xs text-gray-500"},"عنوان فیلد بازخورد",-1)),ao=f(()=>e("div",{class:"mb-1 text-xs text-gray-500"},"متن پیش‌فرض فیلد بازخورد",-1)),oo={key:1,class:"space-y-2 border rounded-lg p-3"},lo=["name","checked","onChange"],no=f(()=>e("span",{class:"text-xs"},"صحیح",-1)),io={key:2,class:"space-y-2"},ro=f(()=>e("div",{class:"mb-1 text-xs text-gray-500"},"فایل بخش صوت",-1)),co={key:0,class:"mt-1"},uo={class:"h-2 rounded bg-gray-200 overflow-hidden"},_o={key:1,class:"step-audio-preview"},po={class:"flex items-center justify-between mb-2"},mo=f(()=>e("div",{class:"step-audio-preview__label mb-0"},"پیش‌نمایش بخش صوت",-1)),fo=["src"],vo={class:"flex justify-end pt-1"},ho=f(()=>e("span",{class:"text-[#DC2626]"},"حذف مرحله",-1)),go=f(()=>e("span",{class:"text-gray-500"},"+ افزودن مرحله",-1)),bo=Oe({__name:"index",setup(n){const l=De,p=De.TabPane,v=Be,u=Be.Option,b=E("challenges"),P=E(!1),q=E(!1),h=E(null),_=E(!1),d=E(null),I=E(!1),A=E({rules_aparat_embed_code:""}),[j,Z]=Re(),[ae]=Re(),V=E([]),Q=E({}),m=E({}),C=E({}),J=E({}),O=E(0),W=E(0),M=()=>({description:"",duration_minutes:5,aparat_embed_code:"",kodoblu_voice_url:"",step_images:[],is_final_step:!1,enable_feedback_text:!1,require_feedback_text:!1,feedback_text_title:"بازخورد این مرحله",feedback_text_placeholder:"بازخورد خود را بنویس...",enable_photo_upload:!1,require_photo_upload:!1,enable_voice_upload:!1,require_voice_upload:!1,enable_mcq:!1,require_mcq:!1,mcq_question:"",mcq_options:["",""],mcq_correct_index:0,enable_audio_section:!1,audio_section_url:"",punishment_description:"",requires_photo_upload:!1}),U=E({title:"",character_image_url:null,show:!1,access_type:"free",sort_order:0,completion_points:50,steps:[M()]}),ne={columns:Vt,api:Ot,defaultPageLimit:20},ie={columns:Xt,api:jt,defaultPageLimit:20};function te(s){return{width:`${Math.max(0,Math.min(100,s))}%`}}function ve(){return wt()||localStorage.getItem("tamin_token")||localStorage.getItem("token")||""}function he(s){var o,g,y,x;const a=s.full_src||s.url||s.src||s.path||((o=s.data)==null?void 0:o.full_src)||((g=s.data)==null?void 0:g.url)||((y=s.data)==null?void 0:y.src)||((x=s.data)==null?void 0:x.path)||"";return H(String(a||""))}function re(s,a,o){const g=[...U.value.steps];g[s]={...g[s],[a]:o},U.value.steps=g}function K(s,a){return`${s}:${a}`}function ge(s,a){return Q.value[K(s,a)]||[]}function se(s,a){return m.value[K(s,a)]||0}function ce(s,a,o){m.value[K(s,a)]=o}function ue(s){return s?s.startsWith("http://")||s.startsWith("https://")?s:He(s):""}function Ve(s,a){return C.value[K(s,a)]||""}function ee(s,a){const o=K(s,a),g=C.value[o];g&&(URL.revokeObjectURL(g),delete C.value[o])}function Ke(){Object.values(C.value).forEach(s=>URL.revokeObjectURL(s)),C.value={}}function oe(s,a,o){const g=Ve(s,a);if(g)return g;if(o!=null&&o.trim())return ue(o);const y=ge(s,a)[0];return(y==null?void 0:y.url)||""}function qe(s,a,o){return!!oe(s,a,o)}function Xe(){Ke(),Q.value={},m.value={}}function Ge(){J.value={}}function be(s){return J.value[s]||[]}function Se(){const s={};U.value.steps.forEach((a,o)=>{const g=(a.step_images||[]).filter(Boolean);g.length&&(s[o]=g.map((y,x)=>({uid:`step-image-${o}-${x}`,name:`image-${x+1}.jpg`,status:"done",url:le(y),response:{path:H(y)||y}})))}),J.value=s}function $e(){const s={};U.value.steps.forEach((a,o)=>{a.audio_section_url&&(s[K(o,"audio_section_url")]=[{uid:`audio-section-${o}`,name:"audio-section.mp3",status:"done",url:ue(a.audio_section_url)}]),a.kodoblu_voice_url&&(s[K(o,"kodoblu_voice_url")]=[{uid:`kodoblu-voice-${o}`,name:"kodoblu-voice.mp3",status:"done",url:ue(a.kodoblu_voice_url)}])}),Q.value=s}function _e(s,a){ee(s,a),re(s,a,""),Q.value[K(s,a)]=[]}function Qe(s,a){var y,x;const o=H(((y=a.response)==null?void 0:y.path)||a.url||""),g=((x=U.value.steps[s])==null?void 0:x.step_images)||[];re(s,"step_images",g.filter(R=>H(R)!==o)),J.value[s]=(J.value[s]||[]).filter(R=>R.uid!==a.uid)}function Ue(){U.value={title:"",character_image_url:null,show:!1,access_type:"free",sort_order:0,completion_points:50,steps:[M()]},V.value=[],Xe(),Ge()}function Ye(){_.value=!1,d.value=null,Ue(),P.value=!0}function Ae(){P.value=!1,Ue()}function Ze(){U.value.steps.push(M())}function et(s){U.value.steps.length<=1||(ee(s,"kodoblu_voice_url"),ee(s,"audio_section_url"),U.value.steps.splice(s,1),$e(),Se())}function tt(s){h.value=s.id,q.value=!0}function Ce(s){return s.type.startsWith("image/")?s.size/1024/1024<5?!0:(T.error("حجم تصویر باید کمتر از 5MB باشد!"),!1):(T.error("فقط فایل‌های تصویری قابل آپلود هستند!"),!1)}async function st(s){const{file:a,onSuccess:o,onError:g,onProgress:y}=s,x=new FormData;x.append("file",a);const R=`${xe}/upload/machartaa-img`;W.value=0,O.value++,await new Promise((Y,X)=>{const t=new XMLHttpRequest;t.open("POST",R),t.setRequestHeader("Authorization",`Bearer ${ve()}`),t.upload.onprogress=c=>{if(c.lengthComputable){const i=Math.round(c.loaded/c.total*100);W.value=i,y==null||y({percent:i})}},t.onload=()=>{if(W.value=100,t.status>=200&&t.status<300)try{const c=JSON.parse(t.responseText||"{}"),i=he(c);if(!i)throw new Error("مسیر فایل از سرور دریافت نشد");const $=le(i);U.value.character_image_url=i,V.value=$?[{uid:`${Date.now()}`,name:"image.jpg",status:"done",url:$,response:{path:i}}]:[],o==null||o(c,t),T.success("تصویر با موفقیت آپلود شد!"),Y()}catch(c){g==null||g(c,t),X(c)}else{const c=new Error("خطا در آپلود تصویر");g==null||g(c,t),X(c)}},t.onerror=()=>{g==null||g(new Error("خطا در آپلود تصویر!"),t),X(new Error("خطا در آپلود تصویر!"))},t.onloadend=()=>{O.value=Math.max(0,O.value-1),W.value=0},t.send(x)})}async function at(s,a){const{file:o,onSuccess:g,onError:y,onProgress:x}=s,R=new FormData;R.append("file",o);const Y=`${xe}/upload/machartaa-img`;O.value++,await new Promise((X,t)=>{const c=new XMLHttpRequest;c.open("POST",Y),c.setRequestHeader("Authorization",`Bearer ${ve()}`),c.upload.onprogress=i=>{i.lengthComputable&&(x==null||x({percent:Math.round(i.loaded/i.total*100)}))},c.onload=()=>{var i;if(c.status>=200&&c.status<300)try{const $=JSON.parse(c.responseText||"{}"),z=he($);if(!z)throw new Error("مسیر تصویر از سرور دریافت نشد");const de=[...((i=U.value.steps[a])==null?void 0:i.step_images)||[],z];re(a,"step_images",de);const ut={uid:`${Date.now()}-${a}`,name:o.name||"image.jpg",status:"done",url:le(z),response:{path:z}};J.value[a]=[...be(a),ut],g==null||g($,c),T.success("عکس مرحله با موفقیت آپلود شد!"),X()}catch($){y==null||y($,c),t($)}else{const $=new Error("خطا در آپلود عکس مرحله");y==null||y($,c),t($)}},c.onerror=()=>{y==null||y(new Error("خطا در آپلود عکس مرحله!"),c),t(new Error("خطا در آپلود عکس مرحله!"))},c.onloadend=()=>{O.value=Math.max(0,O.value-1)},c.send(R)})}function Ie(s){return s.type.startsWith("audio/")?s.size/1024/1024<60?!0:(T.error("حجم فایل صوتی باید کمتر از 60MB باشد!"),!1):(T.error("فقط فایل‌های صوتی قابل آپلود هستند!"),!1)}async function Pe(s,a,o){const{file:g,onSuccess:y,onError:x,onProgress:R}=s,Y=new FormData;Y.append("file",g);const X=`${xe}/upload/machartaa-audio`;ee(a,o),C.value[K(a,o)]=URL.createObjectURL(g),ce(a,o,0),O.value++,await new Promise((t,c)=>{const i=new XMLHttpRequest;i.open("POST",X),i.setRequestHeader("Authorization",`Bearer ${ve()}`),i.timeout=15*60*1e3,i.upload.onprogress=$=>{if($.lengthComputable){const z=Math.round($.loaded/$.total*100);ce(a,o,z),R==null||R({percent:z})}},i.onload=()=>{if(ce(a,o,100),i.status>=200&&i.status<300)try{const $=JSON.parse(i.responseText||"{}"),z=he($);if(!z)throw new Error("مسیر فایل صوتی از سرور دریافت نشد");ee(a,o),re(a,o,z);const de=ue(z);Q.value[K(a,o)]=de?[{uid:`${Date.now()}`,name:g.name||"audio.mp3",status:"done",url:de,response:{path:z}}]:[],y==null||y($,i),T.success("فایل صوتی با موفقیت آپلود شد!"),t()}catch($){x==null||x($,i),c($)}else{ee(a,o);const $=new Error("خطا در آپلود فایل صوتی");x==null||x($,i),c($)}},i.onerror=()=>{ee(a,o),x==null||x(new Error("خطا در آپلود فایل صوتی!"),i),c(new Error("خطا در آپلود فایل صوتی!"))},i.onloadend=()=>{O.value=Math.max(0,O.value-1),ce(a,o,0)},i.send(Y)})}async function ot(s){try{const a=await Dt(s.id);_.value=!0,d.value=s.id,U.value={title:a.title,character_image_url:H(a.character_image_url),show:!!a.show,access_type:a.access_type==="subscription"?"subscription":"free",sort_order:a.sort_order||0,completion_points:a.completion_points??50,steps:(a.steps||[]).map(o=>({id:o.id,description:o.description||"",duration_minutes:o.duration_minutes||Math.round((o.duration_seconds||60)/60),aparat_embed_code:o.aparat_embed_code||"",kodoblu_voice_url:o.kodoblu_voice_url||"",step_images:Array.isArray(o.step_images)?[...o.step_images]:[],is_final_step:!!o.is_final_step,enable_feedback_text:!!o.enable_feedback_text,require_feedback_text:!!o.require_feedback_text,feedback_text_title:o.feedback_text_title||"بازخورد این مرحله",feedback_text_placeholder:o.feedback_text_placeholder||"بازخورد خود را بنویس...",enable_photo_upload:!!(o.enable_photo_upload||o.requires_photo_upload),require_photo_upload:!!(o.require_photo_upload||o.requires_photo_upload),enable_voice_upload:!!o.enable_voice_upload,require_voice_upload:!!o.require_voice_upload,enable_mcq:!!o.enable_mcq,require_mcq:!!o.require_mcq,mcq_question:o.mcq_question||"",mcq_options:Array.isArray(o.mcq_options)&&o.mcq_options.length?[...o.mcq_options]:["",""],mcq_correct_index:Number(o.mcq_correct_index??0),enable_audio_section:!!o.enable_audio_section,audio_section_url:o.audio_section_url||"",punishment_description:o.punishment_description||"",requires_photo_upload:!!(o.enable_photo_upload||o.requires_photo_upload)}))},a.character_image_url&&(V.value=[{uid:`${Date.now()}`,name:"image.jpg",status:"done",url:le(a.character_image_url)}]),$e(),Se(),P.value=!0}catch(a){T.error(a.message||"خطا در بارگذاری چالش")}}async function lt(s){It.confirm({title:"حذف چالش",content:"آیا از حذف این چالش مطمئن هستید؟",okText:"بله",cancelText:"خیر",onOk:async()=>{await Ft(s.id),T.success("چالش حذف شد"),Z()}})}async function nt(s){await Et(s.id,{show:!s.show}),T.success(s.show?"چالش مخفی شد":"چالش نمایش داده می‌شود"),Z()}async function it(){var s;I.value=!0;try{await Jt({rules_aparat_embed_code:((s=A.value.rules_aparat_embed_code)==null?void 0:s.trim())||null}),T.success("تنظیمات ذخیره شد")}catch(a){T.error(a.message||"خطا در ذخیره تنظیمات")}finally{I.value=!1}}async function rt(){try{const s=await Wt();A.value.rules_aparat_embed_code=(s==null?void 0:s.rules_aparat_embed_code)||""}catch(s){T.error(s.message||"خطا در بارگذاری تنظیمات")}}bt(rt);async function ct(){if(!U.value.title.trim()){T.error("عنوان چالش الزامی است");return}if(O.value>0){T.warning("لطفاً تا پایان آپلود فایل‌ها صبر کنید");return}try{const s={...U.value,sort_order:Number(U.value.sort_order)||0,completion_points:Number(U.value.completion_points)||50,steps:U.value.steps.map(a=>{var o,g;return{...a,kodoblu_voice_url:H((o=a.kodoblu_voice_url)==null?void 0:o.trim())||"",audio_section_url:H((g=a.audio_section_url)==null?void 0:g.trim())||"",step_images:(a.step_images||[]).map(y=>H(y)||y).filter(Boolean)}})};_.value&&d.value?(await Tt(d.value,s),T.success("چالش ویرایش شد")):(await Bt(s,null),T.success("چالش اضافه شد")),Ae(),Z()}catch(s){T.error(s.message||"خطا در ذخیره چالش")}}return(s,a)=>{const o=Ee,g=dt,y=ft,x=mt,R=pt,Y=Fe,X=_t;return k(),S("div",null,[r(X,null,{default:w(()=>[r(B(l),{activeKey:b.value,"onUpdate:activeKey":a[1]||(a[1]=t=>b.value=t)},{default:w(()=>[r(B(p),{key:"challenges",tab:"مدیریت چالش‌ها"},{default:w(()=>[e("div",Bs,[Ts,r(o,{type:"primary",onClick:Ye},{default:w(()=>[F("افزودن چالش")]),_:1})]),r(g,Le(ne,{ref:"table",onRegister:B(j)}),{action:w(({record:t})=>[e("div",Fs,[r(B(pe),{class:"cursor-pointer"},{title:w(()=>[e("span",null,N(t.show?"مخفی کردن":"نمایش"),1)]),default:w(()=>[r(G,{icon:t.show?"vuesax-linear:eye-slash":"vuesax-linear:eye",color:t.show?"#F59E0B":"#16A34A",onClick:c=>nt(t)},null,8,["icon","color","onClick"])]),_:2},1024),r(B(pe),{class:"cursor-pointer"},{title:w(()=>[Es]),default:w(()=>[r(G,{icon:"vuesax-linear:trash",color:"#DC2626",onClick:c=>lt(t)},null,8,["onClick"])]),_:2},1024),r(B(pe),{class:"cursor-pointer"},{title:w(()=>[Os]),default:w(()=>[r(G,{icon:"vuesax-linear:edit",color:"#1D4ED8",onClick:c=>ot(t)},null,8,["onClick"])]),_:2},1024)])]),_:1},16,["onRegister"])]),_:1}),r(B(p),{key:"progress",tab:"پیشرفت کاربران"},{default:w(()=>[Ns,r(g,Le(ie,{onRegister:B(ae)}),{action:w(({record:t})=>[r(B(pe),{class:"cursor-pointer"},{title:w(()=>[zs]),default:w(()=>[r(G,{icon:"vuesax-linear:eye",color:"#1D4ED8",onClick:c=>tt(t)},null,8,["onClick"])]),_:2},1024)]),_:1},16,["onRegister"])]),_:1}),r(B(p),{key:"settings",tab:"تنظیمات صفحه"},{default:w(()=>[e("div",js,[Hs,Ws,e("div",null,[Js,r(y,{value:A.value.rules_aparat_embed_code,"onUpdate:value":a[0]||(a[0]=t=>A.value.rules_aparat_embed_code=t),placeholder:"کد embed از آپارات",rows:4},null,8,["value"])]),r(o,{type:"primary",loading:I.value,onClick:it},{default:w(()=>[F(" ذخیره تنظیمات ")]),_:1},8,["loading"])])]),_:1})]),_:1},8,["activeKey"]),r(Y,{visible:P.value,"onUpdate:visible":a[8]||(a[8]=t=>P.value=t),title:_.value?"ویرایش چالش":"افزودن چالش",onOk:ct,onCancel:Ae,width:"85%",confirmLoading:O.value>0},{default:w(()=>[e("div",Vs,[O.value>0?(k(),S("div",Ks,[r(B(We),{size:"large"})])):L("",!0),e("div",null,[Xs,r(x,{value:U.value.title,"onUpdate:value":a[2]||(a[2]=t=>U.value.title=t),placeholder:"عنوان چالش"},null,8,["value"])]),e("div",Gs,[e("div",null,[Qs,r(x,{value:U.value.sort_order,"onUpdate:value":a[3]||(a[3]=t=>U.value.sort_order=t),type:"number",placeholder:"0"},null,8,["value"])]),e("div",null,[Ys,e("div",Zs,[r(R,{value:U.value.show,"onUpdate:value":a[4]||(a[4]=t=>U.value.show=t)},null,8,["value"]),e("span",ea,N(U.value.show?"نمایش":"مخفی"),1)])]),e("div",null,[ta,r(B(v),{value:U.value.access_type,"onUpdate:value":a[5]||(a[5]=t=>U.value.access_type=t),class:"w-full"},{default:w(()=>[r(B(u),{value:"free"},{default:w(()=>[F("رایگان (همه کاربران)")]),_:1}),r(B(u),{value:"subscription"},{default:w(()=>[F("اشتراکی (فقط اشتراک فعال)")]),_:1})]),_:1},8,["value"])]),e("div",null,[sa,r(x,{value:U.value.completion_points,"onUpdate:value":a[6]||(a[6]=t=>U.value.completion_points=t),type:"number",min:"0",placeholder:"50"},null,8,["value"])])]),e("div",aa,[e("div",null,[oa,r(B(me),{"file-list":V.value,"onUpdate:fileList":a[7]||(a[7]=t=>V.value=t),"before-upload":Ce,"custom-request":st,accept:"image/*","max-count":1,"list-type":"picture-card"},{default:w(()=>[V.value.length<1?(k(),S("div",la,[r(G,{icon:"vuesax-linear:image",class:"text-2xl mb-2"}),na])):L("",!0)]),_:1},8,["file-list"]),W.value>0&&W.value<100?(k(),S("div",ia,[e("div",ra,[e("div",{class:"h-2 bg-blue-500 transition-all",style:ye(te(W.value))},null,4)])])):L("",!0)])]),ca,e("div",ua,[_a,e("div",da,[(k(!0),S(we,null,ke(U.value.steps,(t,c)=>(k(),S("div",{key:c,class:ze(["step-form-box",{"step-form-box--final":t.is_final_step}])},[e("div",pa,[e("div",ma,[F(" مرحله "+N(c+1)+" ",1),t.is_final_step?(k(),S("span",fa,"(ماموریت پایانی)")):L("",!0)]),e("div",va,[r(R,{value:t.is_final_step,"onUpdate:value":i=>t.is_final_step=i},null,8,["value","onUpdate:value"]),ha])]),e("div",null,[ga,r(y,{value:t.description,"onUpdate:value":i=>t.description=i,placeholder:"توضیحات مرحله",rows:2},null,8,["value","onUpdate:value"])]),e("div",ba,[e("div",null,[ya,r(x,{value:t.duration_minutes,"onUpdate:value":i=>t.duration_minutes=i,type:"number",min:"1",placeholder:"5"},null,8,["value","onUpdate:value"])])]),e("div",null,[xa,r(y,{value:t.aparat_embed_code,"onUpdate:value":i=>t.aparat_embed_code=i,placeholder:"کد embed",rows:2},null,8,["value","onUpdate:value"])]),e("div",wa,[ka,r(B(me),{"file-list":ge(c,"kodoblu_voice_url"),"before-upload":Ie,"custom-request":i=>Pe(i,c,"kodoblu_voice_url"),accept:"audio/*","max-count":1,"show-upload-list":!1,onRemove:()=>_e(c,"kodoblu_voice_url")},{default:w(()=>[r(o,{type:"dashed"},{default:w(()=>[r(G,{icon:"vuesax-linear:voice-cricle",class:"ml-1"}),F(" آپلود وویس کدوبلو ")]),_:1})]),_:2},1032,["file-list","custom-request","onRemove"]),se(c,"kodoblu_voice_url")>0&&se(c,"kodoblu_voice_url")<100?(k(),S("div",qa,[e("div",Sa,[e("div",{class:"h-2 bg-blue-500 transition-all",style:ye(te(se(c,"kodoblu_voice_url")))},null,4)])])):L("",!0),qe(c,"kodoblu_voice_url",t.kodoblu_voice_url)?(k(),S("div",$a,[e("div",Ua,[Aa,r(o,{type:"text",danger:"",size:"small",onClick:i=>_e(c,"kodoblu_voice_url")},{default:w(()=>[F(" حذف فایل ")]),_:2},1032,["onClick"])]),(k(),S("audio",{key:oe(c,"kodoblu_voice_url",t.kodoblu_voice_url),src:oe(c,"kodoblu_voice_url",t.kodoblu_voice_url),controls:"",preload:"metadata",class:"w-full"},null,8,Ca))])):L("",!0),r(x,{value:t.kodoblu_voice_url,"onUpdate:value":i=>t.kodoblu_voice_url=i,placeholder:"مسیر وویس کدوبلو (پس از آپلود)"},null,8,["value","onUpdate:value"])]),e("div",null,[Ia,r(B(me),{"file-list":be(c),"list-type":"picture-card","before-upload":Ce,"custom-request":i=>at(i,c),accept:"image/*",onRemove:i=>Qe(c,i)},{default:w(()=>[be(c).length<8?(k(),S("div",Pa,[r(G,{icon:"vuesax-linear:image",class:"text-xl mb-1"}),Ra])):L("",!0)]),_:2},1032,["file-list","custom-request","onRemove"])]),La,e("div",Ma,[Da,e("div",Ba,[e("label",Ta,[r(R,{value:t.enable_feedback_text,"onUpdate:value":i=>t.enable_feedback_text=i},null,8,["value","onUpdate:value"]),Fa]),e("label",Ea,[r(R,{value:t.require_feedback_text,"onUpdate:value":i=>t.require_feedback_text=i,disabled:!t.enable_feedback_text},null,8,["value","onUpdate:value","disabled"]),Oa]),e("label",Na,[r(R,{value:t.enable_photo_upload,"onUpdate:value":i=>t.enable_photo_upload=i},null,8,["value","onUpdate:value"]),za]),e("label",ja,[r(R,{value:t.require_photo_upload,"onUpdate:value":i=>t.require_photo_upload=i,disabled:!t.enable_photo_upload},null,8,["value","onUpdate:value","disabled"]),Ha]),e("label",Wa,[r(R,{value:t.enable_voice_upload,"onUpdate:value":i=>t.enable_voice_upload=i},null,8,["value","onUpdate:value"]),Ja]),e("label",Va,[r(R,{value:t.require_voice_upload,"onUpdate:value":i=>t.require_voice_upload=i,disabled:!t.enable_voice_upload},null,8,["value","onUpdate:value","disabled"]),Ka]),e("label",Xa,[r(R,{value:t.enable_mcq,"onUpdate:value":i=>t.enable_mcq=i},null,8,["value","onUpdate:value"]),Ga]),e("label",Qa,[r(R,{value:t.require_mcq,"onUpdate:value":i=>t.require_mcq=i,disabled:!t.enable_mcq},null,8,["value","onUpdate:value","disabled"]),Ya]),e("label",Za,[r(R,{value:t.enable_audio_section,"onUpdate:value":i=>t.enable_audio_section=i},null,8,["value","onUpdate:value"]),eo])]),t.enable_feedback_text?(k(),S("div",to,[e("div",null,[so,r(x,{value:t.feedback_text_title,"onUpdate:value":i=>t.feedback_text_title=i,placeholder:"مثلاً: بازخورد این مرحله"},null,8,["value","onUpdate:value"])]),e("div",null,[ao,r(x,{value:t.feedback_text_placeholder,"onUpdate:value":i=>t.feedback_text_placeholder=i,placeholder:"مثلاً: بازخورد خود را بنویس..."},null,8,["value","onUpdate:value"])])])):L("",!0),t.enable_mcq?(k(),S("div",oo,[r(x,{value:t.mcq_question,"onUpdate:value":i=>t.mcq_question=i,placeholder:"متن سوال"},null,8,["value","onUpdate:value"]),(k(!0),S(we,null,ke(t.mcq_options,(i,$)=>(k(),S("div",{key:$,class:"flex gap-2 items-center"},[r(x,{value:t.mcq_options[$],"onUpdate:value":z=>t.mcq_options[$]=z,placeholder:`گزینه ${$+1}`,class:"flex-1"},null,8,["value","onUpdate:value","placeholder"]),e("input",{type:"radio",name:`mcq-${c}`,checked:t.mcq_correct_index===$,onChange:z=>t.mcq_correct_index=$},null,40,lo),no,t.mcq_options.length>2?(k(),Ne(o,{key:0,danger:"",onClick:z=>t.mcq_options.splice($,1)},{default:w(()=>[F("×")]),_:2},1032,["onClick"])):L("",!0)]))),128)),r(o,{type:"dashed",onClick:i=>t.mcq_options.push("")},{default:w(()=>[F("+ گزینه")]),_:2},1032,["onClick"])])):L("",!0),t.enable_audio_section?(k(),S("div",io,[ro,r(B(me),{"file-list":ge(c,"audio_section_url"),"before-upload":Ie,"custom-request":i=>Pe(i,c,"audio_section_url"),accept:"audio/*","max-count":1,"show-upload-list":!1,onRemove:()=>_e(c,"audio_section_url")},{default:w(()=>[r(o,{type:"dashed"},{default:w(()=>[r(G,{icon:"vuesax-linear:voice-cricle",class:"ml-1"}),F(" آپلود فایل صوتی ")]),_:1})]),_:2},1032,["file-list","custom-request","onRemove"]),se(c,"audio_section_url")>0&&se(c,"audio_section_url")<100?(k(),S("div",co,[e("div",uo,[e("div",{class:"h-2 bg-blue-500 transition-all",style:ye(te(se(c,"audio_section_url")))},null,4)])])):L("",!0),qe(c,"audio_section_url",t.audio_section_url)?(k(),S("div",_o,[e("div",po,[mo,r(o,{type:"text",danger:"",size:"small",onClick:i=>_e(c,"audio_section_url")},{default:w(()=>[F(" حذف فایل ")]),_:2},1032,["onClick"])]),(k(),S("audio",{key:oe(c,"audio_section_url",t.audio_section_url),src:oe(c,"audio_section_url",t.audio_section_url),controls:"",preload:"metadata",class:"w-full"},null,8,fo))])):L("",!0),r(x,{value:t.audio_section_url,"onUpdate:value":i=>t.audio_section_url=i,placeholder:"مسیر فایل صوتی (پس از آپلود)"},null,8,["value","onUpdate:value"])])):L("",!0)]),e("div",vo,[r(o,{type:"text",danger:"",onClick:i=>et(c),disabled:U.value.steps.length<=1},{default:w(()=>[r(G,{icon:"vuesax-linear:trash",color:"#DC2626"}),ho]),_:2},1032,["onClick","disabled"])])],2))),128)),r(o,{type:"dashed",onClick:Ze,class:"w-full"},{default:w(()=>[go]),_:1})])])])]),_:1},8,["visible","title","confirmLoading"]),r(Ds,{visible:q.value,"onUpdate:visible":a[9]||(a[9]=t=>q.value=t),"user-challenge-id":h.value},null,8,["visible","user-challenge-id"])]),_:1})])}}});const ol=Pt(bo,[["__scopeId","data-v-acc248f1"]]);export{ol as default};