2026-06-18 20:24:23 +03:30
|
|
|
import{_ as de}from"./BasicMainCard-9d8af607.js";import{_ as pe}from"./BasicModal.vue_vue_type_style_index_0_lang-2c965652.js";import{_ as me}from"./BasicTextArea.vue_vue_type_style_index_0_lang-5b0e2685.js";import{_ as _e}from"./BasicInput.vue_vue_type_style_index_0_lang-96e71e2f.js";import{_ as ve,u as fe}from"./useBaseTable-e8654654.js";import{_ as ge}from"./button.vue_vue_type_style_index_0_lang-61c18c46.js";import{_ as he,I as G,d as xe,g as y,A as ye,v as be,o as I,c as S,b as c,w as b,a as t,e as we,G as ke,j as B,k as R,y as J,t as j,F as Ce,n as Ue,D as P,H as X}from"./index-fe7e9f3a.js";import{t as Me}from"./useDataTime-6319c12a.js";import{I as q}from"./Icon-b952e603.js";import{e as T,g as N}from"./convert-67c23be8.js";import{_ as Ie}from"./TextPreview.vue_vue_type_script_setup_true_lang-375dd543.js";import{M as Se}from"./index-4bebce71.js";import{S as $e}from"./index-c3b05d68.js";import{T as Y}from"./shallowequal-84daf276.js";import{U as W}from"./index-207b9df5.js";import"./index-a0d96113.js";import"./index-66219801.js";import"./_plugin-vue_export-helper-84433aaa.js";import"./Col-4a3e6527.js";import"./vnode-4e2eb49f.js";import"./useState-fbb2e402.js";import"./useRefs-f56804c8.js";import"./index-265527df.js";import"./isPlainObject-8df7c091.js";import"./index-6e5ff446.js";import"./FormItemContext-b538849a.js";import"./usePrice-bc935b83.js";import"./fa_IR-23a1f71d.js";import"./toArray-1e9f5cfb.js";import"./pickAttrs-c6e9cc38.js";import"./lodash-7b4e0250.js";import"./index-63f18912.js";import"./index-9caf69a4.js";async function De(m){console.log("API addChallenge payload:",m);const d={title:m.title,description:m.description,owner_id:m.owner_id,minute:m.minute,score:m.score,image_url:m.image_url||null,clip_url:m.clip_url||null,steps:m.steps||[]};console.log("Supabase insert data:",d);const{data:v,error:_}=await G.from("challenge").insert([d]);if(_)throw console.error("Supabase insert error:",_),_;return console.log("Supabase insert success:",v),v}async function Le(m,d){const{data:v,error:_}=await G.from("challenge").update({title:d.title,description:d.description,owner_id:d.owner_id,minute:d.minute,score:d.score,image_url:d.image_url||null,clip_url:d.clip_url||null,steps:d.steps||[]}).eq("id",m).select();if(_)throw _;return v}async function Pe(m){const{error:d}=await G.from("challenge").delete().eq("id",m);if(d)throw d}async function Te(m){const{TableEngineRequest:d}=await he(()=>import("./buildSupabaseQuery-64c97ab8.js"),["assets/buildSupabaseQuery-64c97ab8.js","assets/index-fe7e9f3a.js","assets/index-457f5e42.css","assets/supabaseTableQuery-be932edd.js"]),v={...m};!v.sort&&!v.order&&(v.order="-id");const _=await d(v,"challenge");try{if(Array.isArray(_==null?void 0:_.rows)){const C=v.page||1,w=v.limit||200,$=(C-1)*w,h=_.rows.map((f,M)=>({id:f.id,title:f.title??"",description:f.description??"",steps:f.steps??[],created_at:f.created_at??"",index:$+M,...f}));return{..._,rows:h}}}catch(C){console.log("[getChallengeTable] normalize error:",C)}return _}const Be=[{title:"ردیف",dataIndex:"id",key:"id",filterable:!1,width:70,align:"center",customRender:m=>m.record.index+1},{title:"عنوان",dataIndex:"title",key:"title"},{title:"شرح",dataIndex:"description",key:"description",slot:"description"},{title:"مراحل",dataIndex:"steps",key:"steps",customRender:m=>{const d=m.record.steps||[];if(d.length===0)return"-";const v=d.reduce((C,w)=>C+(Number(w.minute)||0),0),_=d.reduce((C,w)=>C+(Number(w.score)||0),0);return`${d.length} مرحله / ${v} دقیقه / ${_} امتیاز`}},{title:"زمان ایجاد",dataIndex:"created_at",key:"created_at",customRender:m=>Me(m.record.created_at)},{title:"عملیات",dataIndex:"action",key:"action",slot:"action",filterable:!1,align:"center"}],Re={class:"flex justify-between items-center mb-4"},qe=t("h2",null,"چالش ها",-1),Ae={class:"gap-2 flex justify-center"},Ve=t("span",null,"حذف",-1),ze=t("span",null,"ویرایش",-1),Ne={class:"space-y-4 relative"},Oe={key:0,class:"absolute inset-0 bg-white/60 z-10 flex items-center justify-center"},Fe=t("div",{class:"mb-1 text-
|