Files
machartaa_admin_dist/dist/assets/index-0d542e86.js
T

2 lines
7.1 KiB
JavaScript
Raw Normal View History

2026-06-03 16:59:33 +03:30
import{_ as E}from"./BasicMainCard-0a3c966a.js";import{_ as R}from"./BasicModal.vue_vue_type_style_index_0_lang-b6c04ed1.js";import{_ as O,u as V}from"./useBaseTable-f0604f98.js";import{_ as j}from"./button.vue_vue_type_style_index_0_lang-9ce24083.js";import{I as A}from"./Icon-03d9588d.js";import{t as z}from"./useDataTime-0f06f32d.js";import{I as $,d as N,g as I,A as U,o as G,c as J,b as d,w as m,a as x,e as L,G as W,j as C,D as w}from"./index-108817e3.js";import{_ as F}from"./TextPreview.vue_vue_type_script_setup_true_lang-c1f6c9a3.js";import{M as D}from"./index-0d047161.js";import{I as H}from"./index-707b194d.js";import{T as q}from"./shallowequal-105194c4.js";import"./_plugin-vue_export-helper-ec62f026.js";import"./index-60d145d7.js";import"./index-d1557459.js";import"./Col-b2cbfe37.js";import"./vnode-9b8abbbf.js";import"./useState-472505a2.js";import"./useRefs-eb5e3b2f.js";import"./isPlainObject-a22b8354.js";import"./index-f0ba03aa.js";import"./index-802c3c8f.js";import"./toArray-a421612c.js";import"./FormItemContext-cecaca7f.js";import"./pickAttrs-f899bdd0.js";import"./index-7c9c2b70.js";const K=[{title:"ردیف",dataIndex:"id",key:"id",filterable:!1,width:70,align:"center",customRender:s=>s.record.index+1},{title:"نام کاربر",dataIndex:"owner_id",key:"owner_id",customRender:s=>s.record.owner_name||s.record.owner_id||"-"},{title:"متن نظر یا ایده",dataIndex:"text",key:"text",slot:"text"},{title:"زمان ایجاد",dataIndex:"created_at",key:"created_at",customRender:s=>z(s.record.created_at)},{title:"عملیات",dataIndex:"action",key:"action",slot:"action",filterable:!1,align:"center"},{title:"پین شده",dataIndex:"pined",key:"pined",type:"Boolean",filterable:!0,show:!1}];async function Q(s){const{data:n,error:l}=await $.from("comments").insert([s]).select();if(l)throw l;return n}async function M(s,n){const{data:l,error:f}=await $.from("comments").update(n).eq("id",s).select();if(f)throw f;return l}async function X(s){const{error:n}=await $.from("comments").delete().eq("id",s);if(n)throw n}async function Y(s){const n={...s};!n.sort&&!n.order&&(n.order="-id");const{limit:l,filters:f,page:y,sort:p,order:v,search:g}=n;let e=$.from("comments").select("*, users!owner_id(first_name, last_name, phone)",{count:"exact"});if(g&&g.trim()){const o=`%${g}%`;e=e.ilike("text",o)}if(f&&Array.isArray(f)&&f.forEach(o=>{const{field:r,op:b,value:c,hidden:t}=o;if(!t)switch(b){case"eq":e=e.eq(r,c);break;case"neq":e=e.neq(r,c);break;case"gt":e=e.gt(r,c);break;case"lt":e=e.lt(r,c);break;case"gte":e=e.gte(r,c);break;case"lte":e=e.lte(r,c);break;case"has":e=e.ilike(r,`%${c}%`);break;case"like":e=e.like(r,`%${c}%`);break}}),l&&y){const o=(y-1)*l,r=o+l-1;e=e.range(o,r)}if(p&&p.key){const o=p.order==="asc";e=e.order(p.key,{ascending:o})}else if(v){const o=!v.startsWith("-"),r=v.replace(/^[-+]/,"");e=e.order(r,{ascending:o})}const{data:u,error:T,count:h}=await e;if(T)return console.error("[getCommentsTable] Supabase query error:",T),{query:{...n,limit:l||10,page:y||1,total:0},rows:[]};try{if(Array.isArray(u)){const o=y||1,r=l||200,b=(o-1)*r,c=u.map((t,a)=>{let i=null;if(t.owner_id){const k=Array.isArray(t.users)?t.users[0]:t.users;k?i=`${k.first_name||""} ${k.last_name||""}`.trim()||k.phone||`کاربر ${t.owner_id}`:i=`کاربر ${t.owner_id}`}return{id:t.id,owner_id:t.owner_id??null,owner_name:i,text:t.text??"",created_at:t.created_at??"",updated_at:t.updated_at??"",index:b+a,...t}});return{query:{...n,limit:l||10,page:y||1,total:h||0},rows:c}}}catch(o){console.log("[getCommentsTable] normalize error:",o)}return{query:{...n,limit:l||10,page:y||1,total:h||0},rows:u||[]}}const Z={class:"flex justify-between items-center mb-4"},ee=x("h2",null,"ایده و نظرات",-1),te={class:"gap-2 flex justify-center"},ae=x("span",null,"پین کردن",-1),ne=x("span",null,"حذف",-1),oe=x("span",null,"ویرایش",-1),re={class:"space-y-4"},se=x("div",{class:"mb-1 text-sm text-gray-600"},"متن پیام *",-1),Me=N({__name:"index",setup(s){const{TextArea:n}=H,[l,f]=V(),y=I({columns:K,api:Y,defaultPageLimit:20}),p=I(!1),v=