2 lines
10 KiB
JavaScript
2 lines
10 KiB
JavaScript
import{_ as K}from"./BasicMainCard-40d6570b.js";import{_ as Q}from"./BasicModal.vue_vue_type_style_index_0_lang-cd9077ad.js";import{_ as Y,u as Z}from"./useBaseTable-084adda9.js";import{_ as ee}from"./button.vue_vue_type_style_index_0_lang-379723a2.js";import{I as D}from"./Icon-61906fca.js";import{t as te}from"./useDataTime-b0920a9a.js";import{H as O,d as ae,g as T,z as ne,o as P,c as U,b as m,w as v,a as p,e as E,E as se,j as q,y as le,t as J,k as W,C as g}from"./index-5870e6d3.js";import{_ as oe}from"./TextPreview.vue_vue_type_script_setup_true_lang-cdd90622.js";import{e as ie,g as re}from"./convert-67c23be8.js";import{M as X}from"./index-12089cb1.js";import{I as ce}from"./index-f48a08af.js";import{T as F}from"./shallowequal-2bdf6cc7.js";import{U as ue}from"./index-3a1b3da6.js";import"./_plugin-vue_export-helper-5e3c08f4.js";import"./index-6338714e.js";import"./index-3e5e4620.js";import"./Col-619d881f.js";import"./vnode-22dd7580.js";import"./useState-9f642396.js";import"./useRefs-f4db4963.js";import"./isPlainObject-9db900ef.js";import"./index-ccb2a61b.js";import"./fa_IR-09853d0d.js";import"./toArray-f3da0fcb.js";import"./FormItemContext-817438bc.js";import"./pickAttrs-38dcf0c9.js";import"./lodash-c64d74c3.js";import"./index-46729aba.js";import"./index-c8d614fc.js";const de=[{title:"ردیف",dataIndex:"id",key:"id",filterable:!1,width:70,align:"center",customRender:r=>r.record.index+1},{title:"نام ارسال کننده",dataIndex:"owner_name",key:"owner_name",customRender:r=>r.record.owner_name||"-"},{title:"متن پیام",dataIndex:"text",key:"text",slot:"text"},{title:"فایل",dataIndex:"file",key:"file",align:"center",width:120,slot:"file"},{title:"وضعیت پین",dataIndex:"pined",key:"pined",align:"center",width:100,customRender:r=>r.record.pined?"پین شده":"-"},{title:"زمان ایجاد",dataIndex:"created_at",key:"created_at",customRender:r=>te(r.record.created_at)},{title:"عملیات",dataIndex:"action",key:"action",slot:"action",filterable:!1,align:"center"}];async function fe(r){const{data:c,error:_}=await O.from("channel_message").insert([r]).select();if(_)throw _;return c}async function j(r,c){const{data:_,error:k}=await O.from("channel_message").update(c).eq("id",r).select();if(k)throw k;return _}async function me(r){const{error:c}=await O.from("channel_message").delete().eq("id",r);if(c)throw c}async function pe(r){const c={...r};!c.sort&&!c.order&&(c.order="-id");const{limit:_,filters:k,page:b,sort:w,order:I,search:C}=c;let e=O.from("channel_message").select("*, users!owner_id(first_name, last_name, phone)",{count:"exact"});if(C&&C.trim()){const t=`%${C}%`;e=e.ilike("text",t)}if(k&&Array.isArray(k)&&k.forEach(t=>{const{field:u,op:S,value:x,hidden:l}=t;if(!l)switch(S){case"eq":e=e.eq(u,x);break;case"neq":e=e.neq(u,x);break;case"gt":e=e.gt(u,x);break;case"lt":e=e.lt(u,x);break;case"gte":e=e.gte(u,x);break;case"lte":e=e.lte(u,x);break;case"has":e=e.ilike(u,`%${x}%`);break;case"like":e=e.like(u,`%${x}%`);break}}),_&&b){const t=(b-1)*_,u=t+_-1;e=e.range(t,u)}if(w&&w.key){const t=w.order==="asc";e=e.order(w.key,{ascending:t})}else if(I){const t=!I.startsWith("-"),u=I.replace(/^[-+]/,"");e=e.order(u,{ascending:t})}const{data:y,error:$,count:h}=await e;if($)return console.error("[getChannelMessagesTable] Supabase query error:",$),{query:{...c,limit:_||10,page:b||1,total:0},rows:[]};try{if(Array.isArray(y)){const t=b||1,u=_||200,S=(t-1)*u,x=y.map((l,N)=>{let A=null;if(l.owner_id){const M=Array.isArray(l.users)?l.users[0]:l.users;M?A=`${M.first_name||""} ${M.last_name||""}`.trim()||M.phone||`کاربر ${l.owner_id}`:A=`کاربر ${l.owner_id}`}return{id:l.id,owner_id:l.owner_id??null,owner_name:A,text:l.text??"",file:l.file??null,pined:l.pined??!1,pined_at:l.pined_at??null,created_at:l.created_at??"",updated_at:l.updated_at??"",index:S+N,...l}});return{query:{...c,limit:_||10,page:b||1,total:h||0},rows:x}}}catch(t){console.log("[getChannelMessagesTable] normalize error:",t)}return{query:{...c,limit:_||10,page:b||1,total:h||0},rows:y||[]}}const _e={class:"flex justify-between items-center mb-4
|