Files
machartaa_admin_dist/dist/assets/index-5ec724d2.js
T
2026-10-20 16:52:05 +03:30

2 lines
9.0 KiB
JavaScript

import{_ as G}from"./BasicModal.vue_vue_type_style_index_0_lang-aed8f5e4.js";import{_ as K}from"./BasicInput.vue_vue_type_style_index_0_lang-e6a4e582.js";import{u as $,_ as X}from"./useBaseTable-e7a67916.js";import{_ as Z}from"./button.vue_vue_type_style_index_0_lang-f90e25b2.js";import{I as k}from"./Icon-29e38d16.js";import{t as ee}from"./useDataTime-6e234adb.js";import{g as te,a as ae,v as se}from"./itemViews-9a58c947.js";import{_ as oe,O as ie,P as j,Q as le,d as ne,i as _,z as re,B as O,o as g,c as x,e as i,w as n,f as U,b as s,l as v,t as T,R as N,n as ce,H as h}from"./index-1ba0f9ec.js";import{M as de}from"./index-ec322234.js";import{S as ue}from"./index-4bff02a6.js";import{I as me}from"./index-aafc0fe2.js";import{T as V}from"./isSymbol-355a1404.js";import"./usePrice-bc935b83.js";import"./updateLocale-a8654270.js";import"./index-8f2b7e91.js";import"./_plugin-vue_export-helper-31e07528.js";import"./shallowequal-e0d9eafb.js";import"./vnode-c4e67237.js";import"./useState-dcd360f8.js";import"./useMemo-ee45fb46.js";import"./FormItemContext-33ef1221.js";import"./omit-f5d28cd3.js";import"./lodash-27f814e6.js";import"./BaseSwitch.vue_vue_type_script_setup_true_lang-36a1ea6e.js";import"./index-c8127d4e.js";import"./Badge-8a8eeb58.js";import"./isNumeric-3f69e2aa.js";import"./index-a8579634.js";import"./index-73cafb1e.js";import"./index-e22339b6.js";import"./styleChecker-19ce40ea.js";import"./index-876da578.js";import"./index-3f6d5caa.js";import"./LeftOutlined-93011b30.js";import"./css-aae66f86.js";import"./DialogWrap-394d7eb0.js";import"./pickAttrs-0ddf9a54.js";import"./index-e0664925.js";import"./toArray-41940180.js";import"./SearchOutlined-95278fe5.js";import"./isMobile-e2e89480.js";import"./index-175b83cf.js";import"./supabaseTableQuery-e0472e9c.js";import"./isPlainObject-e945bc1f.js";const _e=[{title:"ردیف",dataIndex:"id",key:"id",filterable:!1,width:70,align:"center",customRender:a=>a.record.index+1},{title:"عنوان",dataIndex:"title",key:"title"},{title:"کد embed",dataIndex:"embed_code",key:"embed_code",customRender:a=>a.record.embed_code?"دارد":"-"},{title:"ترتیب",dataIndex:"sort_order",key:"sort_order",align:"center"},{title:"نمایش",dataIndex:"show",key:"show",align:"center",customRender:a=>a.record.show===!1?"مخفی":"نمایش"},{title:"زمان ایجاد",dataIndex:"created_at",key:"created_at",customRender:a=>ee(a.record.created_at)},{title:"عملیات",dataIndex:"action",key:"action",slot:"action",filterable:!1,align:"center"}],F="music_macharta_video";async function ve(a){const c=await ie("music_macharta_videos",a);return Array.isArray(c)?c:[c]}async function pe(a,c){const l=await j("music_macharta_videos",a,{...c,updated_at:new Date().toISOString()});return Array.isArray(l)?l:[l]}async function fe(a,c){const l=await j("music_macharta_videos",a,{show:c,updated_at:new Date().toISOString()});return Array.isArray(l)?l:[l]}async function he(a){await le("music_macharta_videos",a)}function we(a){return ae(a,F)}function z(a,c){return te(a,c,F)}async function ye(a){const{TableEngineRequest:c}=await oe(()=>import("./buildSupabaseQuery-2323f568.js"),["assets/buildSupabaseQuery-2323f568.js","assets/index-1ba0f9ec.js","assets/index-cb402307.css"]),l={...a};!l.sort&&!l.order&&(l.sort={key:"sort_order",order:"desc"});const m=await c(l,"music_macharta_videos");try{if(Array.isArray(m==null?void 0:m.rows)){const b=l.page||1,p=l.limit||20,w=(b-1)*p,y=m.rows.map((d,u)=>({...d,title:d.title??"",embed_code:d.embed_code??"",show:d.show??!0,sort_order:d.sort_order??0,index:w+u}));return{...m,rows:y}}}catch(b){console.error("[getMusicMachartaVideosTable]",b)}return m}const be={class:"h-full"},ge={class:"gap-2 flex justify-center"},xe=s("span",null,"بازدیدها",-1),ke=s("span",null,"حذف",-1),Ve=s("span",null,"ویرایش",-1),Ie={class:"space-y-4"},Me=s("div",{class:"mb-1 text-sm text-gray-600"},"عنوان *",-1),Ce=s("div",{class:"mb-1 text-sm text-gray-600"},"ترتیب نمایش",-1),Te=s("div",{class:"mb-1 text-sm text-gray-600"},"کد embed *",-1),Re={class:"flex justify-end"},Ae={key:0,class:"space-y-4"},Be={class:"grid grid-cols-2 gap-4"},De={class:"bg-blue-50 p-4 rounded-lg"},Ee=s("div",{class:"text-sm text-gray-600 mb-1"},"تعداد بازدید",-1),Se={class:"text-2xl font-bold text-blue-600"},Pe={class:"bg-purple-50 p-4 rounded-lg"},$e=s("div",{class:"text-sm text-gray-600 mb-1"},"تعداد بازدیدکننده",-1),Oe={class:"text-2xl font-bold text-purple-600"},Ue=s("div",{class:"text-sm font-semibold text-gray-700 mb-2"},"لیست بازدیدکننده‌ها",-1),Ne={key:0},ze={key:1,class:"text-center py-8 text-gray-500"},je={key:1,class:"flex justify-center items-center py-8"},Dt=ne({__name:"index",setup(a){const{TextArea:c}=me,[l,m]=$(),b=_({columns:_e,api:ye,defaultPageLimit:20}),p=_(!1),w=_(!1),y=_(null),d=_(!1),u=_(null),I=_(!1),M=_(null),[H,R]=$(),A=_({columns:se,api:e=>z(e,M.value),defaultPageLimit:20}),r=_({title:"",embed_code:"",show:!0,sort_order:0});function L(){w.value=!1,y.value=null,r.value={title:"",embed_code:"",show:!0,sort_order:0},p.value=!0}function B(){p.value=!1}function q(e){w.value=!0,y.value=e.id,r.value={title:e.title||"",embed_code:e.embed_code||"",show:e.show!==!1,sort_order:e.sort_order??0},p.value=!0}function J(e){de.confirm({title:"حذف ویدیو",content:`آیا از حذف «${e.title}» مطمئن هستید؟`,okText:"حذف",cancelText:"انصراف",onOk:async()=>{await he(e.id),h.success("حذف شد"),m()}})}async function Q(e){await fe(e.id,e.show===!1),h.success(e.show===!1?"نمایش داده شد":"مخفی شد"),m()}async function W(){var o,f;if(!((o=r.value.title)!=null&&o.trim())){h.warning("عنوان الزامی است");return}if(!((f=r.value.embed_code)!=null&&f.trim())){h.warning("کد embed الزامی است");return}const e={title:r.value.title.trim(),embed_code:r.value.embed_code.trim(),show:r.value.show,sort_order:Number(r.value.sort_order)||0};w.value&&y.value?(await pe(y.value,e),h.success("ویرایش شد")):(await ve(e),h.success("افزوده شد")),B(),m()}async function Y(e){M.value=e.id,d.value=!0,I.value=!0,u.value=null;try{u.value=await we(e.id),A.value.api=o=>z(o,e.id)}catch(o){console.error("Error loading views:",o),h.error("خطا در بارگذاری اطلاعات بازدیدها: "+(o.message||"خطای ناشناخته"))}finally{I.value=!1}}re([d,u],async([e,o])=>{if(e&&o&&o.total_views>0){await O(),await O();try{await R()}catch{setTimeout(async()=>{try{await R()}catch(f){console.warn("Could not reload viewers table:",f)}},200)}}},{immediate:!1});function D(){d.value=!1,u.value=null,M.value=null}return(e,o)=>{const f=Z,E=X,S=K,P=G;return g(),x("div",be,[i(E,N(b.value,{ref:"table",onRegister:v(l)}),{extraHeader:n(()=>[i(f,{type:"primary",onClick:L},{default:n(()=>[U("افزودن ویدیو")]),_:1})]),action:n(({record:t})=>[s("div",ge,[i(v(V),{class:"cursor-pointer"},{title:n(()=>[xe]),default:n(()=>[i(k,{icon:"vuesax-linear:monitor",color:"#8B5CF6",onClick:C=>Y(t)},null,8,["onClick"])]),_:2},1024),i(v(V),{class:"cursor-pointer"},{title:n(()=>[s("span",null,T((t==null?void 0:t.show)===!1?"نمایش دادن":"مخفی کردن"),1)]),default:n(()=>[i(k,{icon:(t==null?void 0:t.show)===!1?"vuesax-linear:eye":"vuesax-linear:eye-slash",color:(t==null?void 0:t.show)===!1?"#10B981":"#F59E0B",onClick:C=>Q(t)},null,8,["icon","color","onClick"])]),_:2},1024),i(v(V),{class:"cursor-pointer"},{title:n(()=>[ke]),default:n(()=>[i(k,{icon:"vuesax-linear:trash",color:"#DC2626",onClick:C=>J(t)},null,8,["onClick"])]),_:2},1024),i(v(V),{class:"cursor-pointer"},{title:n(()=>[Ve]),default:n(()=>[i(k,{icon:"vuesax-linear:edit",color:"#1D4ED8",onClick:C=>q(t)},null,8,["onClick"])]),_:2},1024)])]),_:1},16,["onRegister"]),i(P,{visible:p.value,"onUpdate:visible":o[3]||(o[3]=t=>p.value=t),title:w.value?"ویرایش ویدیو":"افزودن ویدیو",onOk:W,onCancel:B,width:"80%"},{default:n(()=>[s("div",Ie,[s("div",null,[Me,i(S,{value:r.value.title,"onUpdate:value":o[0]||(o[0]=t=>r.value.title=t),placeholder:"عنوان"},null,8,["value"])]),s("div",null,[Ce,i(S,{value:r.value.sort_order,"onUpdate:value":o[1]||(o[1]=t=>r.value.sort_order=t),type:"number",placeholder:"0"},null,8,["value"])]),s("div",null,[Te,i(v(c),{value:r.value.embed_code,"onUpdate:value":o[2]||(o[2]=t=>r.value.embed_code=t),placeholder:"کد embed از آپارات یا سرویس ویدیو",rows:5},null,8,["value"])])])]),_:1},8,["visible","title"]),i(P,{visible:d.value,"onUpdate:visible":o[4]||(o[4]=t=>d.value=t),title:"اطلاعات بازدیدها",onCancel:D,width:"800px",customFooter:!0,okText:""},{footer:n(()=>[s("div",Re,[i(f,{onClick:D},{default:n(()=>[U("بستن")]),_:1})])]),default:n(()=>[u.value?(g(),x("div",Ae,[s("div",Be,[s("div",De,[Ee,s("div",Se,T(u.value.total_views),1)]),s("div",Pe,[$e,s("div",Oe,T(u.value.unique_viewers),1)])]),s("div",null,[Ue,u.value&&u.value.total_views>0?(g(),x("div",Ne,[i(E,N(A.value,{onRegister:v(H)}),null,16,["onRegister"])])):(g(),x("div",ze," هنوز بازدیدی ثبت نشده است "))])])):I.value?(g(),x("div",je,[i(v(ue),{size:"large"})])):ce("",!0)]),_:1},8,["visible"])])}}});export{Dt as default};