Files
machartaa_admin_dist/dist/assets/index-5c237ba5.js
T

2 lines
20 KiB
JavaScript

import{_ as fe}from"./BasicMainCard-f5011b39.js";import{_ as ge}from"./BasicModal.vue_vue_type_style_index_0_lang-a547157a.js";import{_ as xe}from"./BasicTextArea.vue_vue_type_style_index_0_lang-5cc0457f.js";import{a as ee,_ as be,u as V}from"./useBaseTable-13b436e1.js";import{_ as te}from"./BasicInput.vue_vue_type_style_index_0_lang-5aefde0f.js";import{_ as ae}from"./button.vue_vue_type_style_index_0_lang-851afdd8.js";import{_ as ye,I as R,d as ne,g as I,h as E,x as he,D as f,o as S,c as N,F as we,a as t,b as o,t as M,q as Ie,w as b,e as K,j as h,G as X,k as W,H as ke}from"./index-82b07f49.js";import{t as Z}from"./useDataTime-10f46d84.js";import{I as $}from"./Icon-04c02c0b.js";import{g as Ae}from"./index-e3788657.js";import{g as Y}from"./convert-c2e7255b.js";import{a as J}from"./index-a4d2dbbb.js";import{M as Le}from"./index-5dc3a2fa.js";import{S as Re}from"./index-1f61ecf5.js";import{T as F}from"./shallowequal-17b27246.js";import{U as Ce}from"./index-0f0f5d8d.js";import"./_plugin-vue_export-helper-f81f33f1.js";import"./index-ad11eb53.js";import"./Col-5d52aed9.js";import"./vnode-007df887.js";import"./isPlainObject-f3a46277.js";import"./index-c6d6dccd.js";import"./FormItemContext-f4f190fd.js";import"./index-7e5faec0.js";import"./toArray-e3bbd719.js";import"./pickAttrs-b9acd388.js";import"./useState-e0a5bff5.js";import"./index-d634ff29.js";import"./usePrice-7afab779.js";import"./useRefs-e9385981.js";import"./index-2a5d6560.js";function se(e,i){return Math.max(0,Math.round(e*(1-(i||0)/100)))}async function Se(e){const{TableEngineRequest:i}=await ye(()=>import("./buildSupabaseQuery-4056c4b8.js"),["assets/buildSupabaseQuery-4056c4b8.js","assets/index-82b07f49.js","assets/index-f86b861c.css"]),l={...e};!l.sort&&!l.order&&(l.order="-sort_order");const a=await i(l,"subscription_plans");if(Array.isArray(a==null?void 0:a.rows)){const p=a.rows.map((x,m)=>({...x,index:m,final_price:se(Number(x.price),Number(x.discount_percent||0))}));return{...a,rows:p}}return a}async function Ne(e){const{limit:i=20,page:l=1,search:a}=e,{data:p,error:x}=await R.from("subscription_purchases").select("*, users(name, phone, first_name, last_name)",{count:"exact"}).order("created_at",{ascending:!1});if(x)throw x;let m=(p||[]).map((u,_)=>{const c=Array.isArray(u.users)?u.users[0]:u.users;let k="نامشخص";return c!=null&&c.name?k=c.name:c!=null&&c.first_name||c!=null&&c.last_name?k=`${c.first_name||""} ${c.last_name||""}`.trim():c!=null&&c.phone&&(k=c.phone),{...u,index:_,user_name:k,user_phone:(c==null?void 0:c.phone)||""}});if(a){const u=String(a).toLowerCase();m=m.filter(_=>(_.plan_title||"").toLowerCase().includes(u)||(_.user_name||"").toLowerCase().includes(u)||(_.user_phone||"").toLowerCase().includes(u)||(_.payment_status||"").toLowerCase().includes(u))}const w=(l-1)*i;return{rows:m.slice(w,w+i).map((u,_)=>({...u,index:w+_})),total:m.length,query:{...e,total:m.length,page:l,limit:i}}}async function Pe(e){const{data:i,error:l}=await R.from("subscription_plans").insert([{title:e.title,description:e.description||null,image_url:e.image_url,price:e.price,discount_percent:e.discount_percent??0,duration_days:e.duration_days,is_active:e.is_active??!0,sort_order:e.sort_order??0}]).select().single();if(l)throw l;return i}async function ze(e,i){const{data:l,error:a}=await R.from("subscription_plans").update({title:i.title,description:i.description||null,image_url:i.image_url,price:i.price,discount_percent:i.discount_percent??0,duration_days:i.duration_days,is_active:i.is_active??!0,sort_order:i.sort_order??0,updated_at:new Date().toISOString()}).eq("id",e).select();if(a)throw a;return l}async function Te(e){const{error:i}=await R.from("subscription_plans").delete().eq("id",e);if(i)throw i}async function Be(e,i){const{data:l,error:a}=await R.from("subscription_plans").update({is_active:i,updated_at:new Date().toISOString()}).eq("id",e).select();if(a)throw a;return l}function Q(e){return Number(e||0).toLocaleString("fa-IR")}const Ue=[{title:"ردیف",dataIndex:"id",key:"id",filterable:!1,width:70,align:"center",customRender:e=>(e.record.index??0)+1},{title:"عنوان",dataIndex:"title",key:"title"},{title:"مدت (روز)",dataIndex:"duration_days",key:"duration_days",width:100,align:"center"},{title:"قیمت (ریال)",dataIndex:"price",key:"price",customRender:e=>Q(e.record.price)},{title:"تخفیف %",dataIndex:"discount_percent",key:"discount_percent",width:90,align:"center"},{title:"قیمت نهایی",dataIndex:"final_price",key:"final_price",customRender:e=>Q(e.record.final_price)},{title:"فعال",dataIndex:"is_active",key:"is_active",customRender:e=>e.record.is_active?"بله":"خیر"},{title:"ترتیب",dataIndex:"sort_order",key:"sort_order",width:80,align:"center"},{title:"ایجاد",dataIndex:"created_at",key:"created_at",customRender:e=>Z(e.record.created_at)},{title:"عملیات",dataIndex:"action",key:"action",slot:"action",filterable:!1,align:"center"}];function $e(e){return Number(e||0).toLocaleString("fa-IR")}const De={pending:"در انتظار",paid:"پرداخت شده",failed:"ناموفق",cancelled:"لغو شده"},Ee={pending:"در انتظار",active:"فعال",expired:"منقضی",cancelled:"لغو شده"},Me=[{title:"ردیف",dataIndex:"id",key:"id",filterable:!1,width:70,align:"center",customRender:e=>(e.record.index??0)+1},{title:"کاربر",dataIndex:"user_name",key:"user_name"},{title:"موبایل",dataIndex:"user_phone",key:"user_phone"},{title:"پلن",dataIndex:"plan_title",key:"plan_title"},{title:"مبلغ",dataIndex:"final_price",key:"final_price",customRender:e=>$e(e.record.final_price)},{title:"پرداخت",dataIndex:"payment_status",key:"payment_status",customRender:e=>De[e.record.payment_status]||e.record.payment_status},{title:"وضعیت",dataIndex:"status",key:"status",customRender:e=>Ee[e.record.status]||e.record.status},{title:"انقضا",dataIndex:"expires_at",key:"expires_at",customRender:e=>e.record.expires_at?Z(e.record.expires_at):"-"},{title:"تاریخ خرید",dataIndex:"created_at",key:"created_at",customRender:e=>Z(e.record.created_at)}],L={ZARINPAL_MERCHANT_ID:"zarinpal_merchant_id",ZARINPAL_SANDBOX:"zarinpal_sandbox",SUBSCRIPTION_CALLBACK_URL:"subscription_app_callback_url",ZARINPAL_ENABLED:"zarinpal_enabled"},Oe=Object.values(L);function qe(e){const i=(e[L.ZARINPAL_SANDBOX]||"no").toLowerCase(),l=(e[L.ZARINPAL_ENABLED]||"yes").toLowerCase();return{zarinpal_merchant_id:e[L.ZARINPAL_MERCHANT_ID]||"",zarinpal_sandbox:i==="yes"||i==="true"||i==="1",zarinpal_enabled:l!=="no"&&l!=="false"&&l!=="0",subscription_app_callback_url:e[L.SUBSCRIPTION_CALLBACK_URL]||"https://macharta.ir"}}async function D(e,i){const{data:l,error:a}=await R.from("configs").select("id").eq("key",e).maybeSingle();if(a)throw a;if(l!=null&&l.id){const{data:m,error:w}=await R.from("configs").update({value:i}).eq("key",e).select("id");if(w)throw w;if(!(m!=null&&m.length))throw new Error("ذخیره انجام نشد. لطفاً migration دسترسی configs را در Supabase اجرا کنید.");return}const{data:p,error:x}=await R.from("configs").insert({key:e,value:i}).select("id");if(x)throw x;if(!(p!=null&&p.length))throw new Error("ایجاد تنظیم انجام نشد. لطفاً migration دسترسی configs را در Supabase اجرا کنید.")}async function ie(){const{data:e,error:i}=await R.from("configs").select("key, value").in("key",Oe);if(i)throw i;const l=(e||[]).reduce((a,p)=>(a[p.key]=p.value??"",a),{});return qe(l)}async function Fe(e){return await D(L.ZARINPAL_MERCHANT_ID,e.zarinpal_merchant_id.trim()),await D(L.ZARINPAL_SANDBOX,e.zarinpal_sandbox?"yes":"no"),await D(L.ZARINPAL_ENABLED,e.zarinpal_enabled?"yes":"no"),await D(L.SUBSCRIPTION_CALLBACK_URL,e.subscription_app_callback_url.trim().replace(/\/$/,"")),ie()}const Ze={class:"max-w-2xl space-y-4"},Ke=t("p",{class:"text-sm text-gray-600 mb-4"}," کد مرچنت و آدرس بازگشت از درگاه در اینجا تنظیم می‌شود. اپ کاربر از همین تنظیمات برای اتصال به زرین‌پال استفاده می‌کند. ",-1),je={key:0,class:"py-8 text-center"},He=t("div",{class:"mb-1 text-sm text-gray-600"},"کد مرچنت زرین‌پال (Merchant ID)",-1),Ge=t("div",{class:"mb-1 text-sm text-gray-600"},"آدرس بازگشت از درگاه (URL اپ کاربر)",-1),Ve=t("div",{class:"text-xs text-gray-500 mt-1"},[K(" مسیر callback به‌صورت خودکار اضافه می‌شود: "),t("code",null,"/subscriptions/callback")],-1),Xe={class:"flex items-center gap-3"},We=t("span",{class:"text-sm"},"فعال بودن درگاه زرین‌پال",-1),Ye={class:"flex items-center gap-3"},Je=t("span",{class:"text-sm"},"حالت تست (Sandbox)",-1),Qe=ne({__name:"PaymentGatewaySettings",setup(e){const i=I(!0),l=I(!1),a=I({zarinpal_merchant_id:"",zarinpal_sandbox:!1,zarinpal_enabled:!0,subscription_app_callback_url:"https://macharta.ir"}),p=E(()=>{var v;return a.value.zarinpal_enabled?a.value.zarinpal_sandbox?!0:!!((v=a.value.zarinpal_merchant_id)!=null&&v.trim()):!1}),x=E(()=>{var v;return a.value.zarinpal_enabled?a.value.zarinpal_sandbox?"حالت تست فعال است — پرداخت از sandbox زرین‌پال انجام می‌شود.":(v=a.value.zarinpal_merchant_id)!=null&&v.trim()?"درگاه برای پرداخت واقعی آماده است.":"کد مرچنت وارد نشده — درگاه آماده پرداخت واقعی نیست.":"درگاه غیرفعال است — کاربران نمی‌توانند پرداخت کنند."}),m=E(()=>p.value?"bg-green-50 border-green-200 text-green-800":"bg-amber-50 border-amber-200 text-amber-800");he(async()=>{try{a.value=await ie()}catch(v){f.error((v==null?void 0:v.message)||"خطا در بارگذاری تنظیمات")}finally{i.value=!1}});async function w(){var v,u;if(!((v=a.value.subscription_app_callback_url)!=null&&v.trim())){f.warning("آدرس بازگشت از درگاه الزامی است");return}if(a.value.zarinpal_enabled&&!a.value.zarinpal_sandbox&&!((u=a.value.zarinpal_merchant_id)!=null&&u.trim())){f.warning("برای پرداخت واقعی، کد مرچنت الزامی است");return}l.value=!0;try{a.value=await Fe(a.value),f.success("تنظیمات درگاه ذخیره شد")}catch(_){f.error((_==null?void 0:_.message)||"خطا در ذخیره")}finally{l.value=!1}}return(v,u)=>{const _=te,c=ee,k=ae;return S(),N("div",Ze,[Ke,i.value?(S(),N("div",je,"در حال بارگذاری...")):(S(),N(we,{key:1},[t("div",null,[He,o(_,{value:a.value.zarinpal_merchant_id,"onUpdate:value":u[0]||(u[0]=r=>a.value.zarinpal_merchant_id=r),placeholder:"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"},null,8,["value"])]),t("div",null,[Ge,o(_,{value:a.value.subscription_app_callback_url,"onUpdate:value":u[1]||(u[1]=r=>a.value.subscription_app_callback_url=r),placeholder:"https://macharta.ir"},null,8,["value"]),Ve]),t("div",Xe,[o(c,{value:a.value.zarinpal_enabled,"onUpdate:value":u[2]||(u[2]=r=>a.value.zarinpal_enabled=r)},null,8,["value"]),We]),t("div",Ye,[o(c,{value:a.value.zarinpal_sandbox,"onUpdate:value":u[3]||(u[3]=r=>a.value.zarinpal_sandbox=r)},null,8,["value"]),Je]),t("div",{class:Ie(["rounded-lg border p-3 text-sm",m.value])},M(x.value),3),o(k,{type:"primary",loading:l.value,onClick:w},{default:b(()=>[K(" ذخیره تنظیمات درگاه ")]),_:1},8,["loading"])],64))])}}}),et={class:"flex justify-between items-center mb-4"},tt=t("h2",null,"مدیریت اشتراک‌ها",-1),at={class:"gap-2 flex justify-center"},nt=t("span",null,"حذف",-1),st=t("span",null,"ویرایش",-1),it=t("div",{class:"mb-4"},[t("h2",null,"لیست خرید اشتراک")],-1),rt=t("div",{class:"mb-4"},[t("h2",null,"تنظیمات درگاه پرداخت")],-1),lt={class:"space-y-4 relative"},ot={key:0,class:"absolute inset-0 bg-white/60 z-10 flex items-center justify-center"},ct={class:"grid grid-cols-2 gap-4"},ut=t("div",{class:"mb-1 text-sm text-gray-600"},"عنوان اشتراک",-1),dt=t("div",{class:"mb-1 text-sm text-gray-600"},"مدت اشتراک (روز)",-1),_t={class:"grid grid-cols-3 gap-4"},pt=t("div",{class:"mb-1 text-sm text-gray-600"},"مبلغ (ریال)",-1),mt=t("div",{class:"mb-1 text-sm text-gray-600"},"تخفیف (درصد)",-1),vt=t("div",{class:"mb-1 text-sm text-gray-600"},"قیمت نهایی (ریال)",-1),ft={class:"mt-2 font-semibold text-green-700"},gt={class:"grid grid-cols-2 gap-4"},xt=t("div",{class:"mb-1 text-sm text-gray-600"},"ترتیب نمایش",-1),bt=t("div",{class:"mb-1 text-sm text-gray-600"},"وضعیت",-1),yt={class:"flex items-center gap-2 mt-2"},ht={class:"text-sm text-gray-600"},wt=t("div",{class:"mb-1 text-sm text-gray-600"},"توضیحات",-1),It={class:"flex justify-center"},kt=t("div",{class:"mb-1 text-sm text-gray-600"},"تصویر اشتراک",-1),At={key:0},Lt=t("div",null,"آپلود تصویر",-1),sa=ne({__name:"index",setup(e){const i=J,l=J.TabPane,a=I("plans"),p=I(!1),x=I(!1),m=I(null),[w,v]=V(),[u]=V(),_=I([]),c=I(0),k=()=>({title:"",description:"",image_url:null,price:0,discount_percent:0,duration_days:30,is_active:!0,sort_order:0}),r=I(k()),re=E(()=>se(Number(r.value.price),Number(r.value.discount_percent)).toLocaleString("fa-IR")),le={columns:Ue,api:Se,defaultPageLimit:20},oe={columns:Me,api:Ne,defaultPageLimit:20};function j(){r.value=k(),_.value=[]}function ce(){x.value=!1,m.value=null,j(),p.value=!0}function H(){p.value=!1,j()}function ue(d){return d.type.startsWith("image/")?d.size/1024/1024>=5?(f.error("حجم تصویر باید کمتر از 5MB باشد"),!1):!0:(f.error("فقط فایل تصویری مجاز است"),!1)}async function de(d){const{file:n,onSuccess:C,onError:y,onProgress:A}=d,T=new FormData;T.append("file",n);const O=`${ke}/upload/machartaa-img`;c.value++,await new Promise((q,P)=>{const s=new XMLHttpRequest;s.open("POST",O);const B=Ae()||localStorage.getItem("tamin_token")||"";s.setRequestHeader("Authorization",`Bearer ${B}`),s.upload.onprogress=g=>{g.lengthComputable&&(A==null||A({percent:Math.round(g.loaded/g.total*100)}))},s.onload=()=>{if(s.status>=200&&s.status<300)try{const g=JSON.parse(s.responseText||"{}"),z=g.full_src||g.url||g.src||g.path||g.data&&(g.data.full_src||g.data.url||g.data.src||g.data.path)||"";let U=z;z!=null&&z.startsWith("http")&&(U=z.replace(/^https?:\/\/[^\/]+/,""));const G=Y(U);r.value.image_url=U,_.value=G?[{uid:`${Date.now()}`,name:"image.jpg",status:"done",url:G,response:{path:U}}]:[],C==null||C(g,s),f.success("تصویر با موفقیت آپلود شد!"),q()}catch(g){y==null||y(g,s),P(g)}else y==null||y(new Error("خطا در آپلود تصویر"),s),P(new Error("خطا در آپلود تصویر"))},s.onerror=()=>{y==null||y(new Error("خطا در آپلود تصویر"),s),P(new Error("خطا در آپلود تصویر"))},s.onloadend=()=>{c.value=Math.max(0,c.value-1)},s.send(T)})}async function _e(){var d;if(c.value>0){f.warning("لطفاً تا پایان آپلود صبر کنید");return}if(!((d=r.value.title)!=null&&d.trim())){f.warning("عنوان الزامی است");return}if(!r.value.duration_days||Number(r.value.duration_days)<1){f.warning("مدت اشتراک باید حداقل ۱ روز باشد");return}try{const n={...r.value,price:Number(r.value.price)||0,discount_percent:Number(r.value.discount_percent)||0,duration_days:Number(r.value.duration_days),sort_order:Number(r.value.sort_order)||0};x.value&&m.value?(await ze(m.value,n),f.success("اشتراک ویرایش شد")):(await Pe(n),f.success("اشتراک افزوده شد")),H(),await v()}catch(n){f.error((n==null?void 0:n.message)||"خطا در ذخیره")}}function pe(d){x.value=!0,m.value=d.id;let n=d.image_url||null;n&&n.startsWith("http")&&(n=n.replace(/^https?:\/\/[^\/]+/,"")),r.value={title:d.title||"",description:d.description||"",image_url:n,price:d.price||0,discount_percent:d.discount_percent||0,duration_days:d.duration_days||30,is_active:d.is_active??!0,sort_order:d.sort_order??0};const C=n?Y(n):null;_.value=C?[{uid:"-1",name:"image.jpg",status:"done",url:C,response:{path:n}}]:[],p.value=!0}function me(d){Le.confirm({title:"حذف اشتراک",content:`آیا از حذف «${d.title}» مطمئن هستید؟`,okText:"بله، حذف کن",cancelText:"انصراف",okType:"danger",centered:!0,onOk:async()=>{try{await Te(d.id),f.success("حذف شد"),await v()}catch(n){f.error((n==null?void 0:n.message)||"خطا در حذف")}}})}async function ve(d){try{await Be(d.id,!d.is_active),f.success("وضعیت به‌روز شد"),await v()}catch(n){f.error((n==null?void 0:n.message)||"خطا")}}return(d,n)=>{const C=ae,y=be,A=te,T=ee,O=xe,q=ge,P=fe;return S(),N("div",null,[o(P,null,{default:b(()=>[o(h(i),{activeKey:a.value,"onUpdate:activeKey":n[0]||(n[0]=s=>a.value=s)},{default:b(()=>[o(h(l),{key:"plans",tab:"پلن‌های اشتراک"},{default:b(()=>[t("div",et,[tt,o(C,{type:"primary",onClick:ce},{default:b(()=>[K("افزودن اشتراک")]),_:1})]),o(y,X(le,{ref:"table",onRegister:h(w)}),{action:b(({record:s})=>[t("div",at,[o(h(F),{class:"cursor-pointer"},{title:b(()=>[t("span",null,M(s.is_active?"غیرفعال کردن":"فعال کردن"),1)]),default:b(()=>[o($,{icon:s.is_active?"vuesax-linear:eye-slash":"vuesax-linear:eye",color:s.is_active?"#F59E0B":"#16A34A",onClick:B=>ve(s)},null,8,["icon","color","onClick"])]),_:2},1024),o(h(F),{class:"cursor-pointer"},{title:b(()=>[nt]),default:b(()=>[o($,{icon:"vuesax-linear:trash",color:"#DC2626",onClick:B=>me(s)},null,8,["onClick"])]),_:2},1024),o(h(F),{class:"cursor-pointer"},{title:b(()=>[st]),default:b(()=>[o($,{icon:"vuesax-linear:edit",color:"#1D4ED8",onClick:B=>pe(s)},null,8,["onClick"])]),_:2},1024)])]),_:1},16,["onRegister"])]),_:1}),o(h(l),{key:"purchases",tab:"خریدهای کاربران"},{default:b(()=>[it,o(y,X(oe,{onRegister:h(u)}),null,16,["onRegister"])]),_:1}),o(h(l),{key:"gateway",tab:"تنظیمات درگاه (زرین‌پال)"},{default:b(()=>[rt,o(Qe)]),_:1})]),_:1},8,["activeKey"]),o(q,{visible:p.value,"onUpdate:visible":n[9]||(n[9]=s=>p.value=s),title:x.value?"ویرایش اشتراک":"افزودن اشتراک",onOk:_e,onCancel:H,width:"70%",confirmLoading:c.value>0},{default:b(()=>[t("div",lt,[c.value>0?(S(),N("div",ot,[o(h(Re),{size:"large"})])):W("",!0),t("div",ct,[t("div",null,[ut,o(A,{value:r.value.title,"onUpdate:value":n[1]||(n[1]=s=>r.value.title=s),placeholder:"مثلاً اشتراک یک ماهه"},null,8,["value"])]),t("div",null,[dt,o(A,{value:r.value.duration_days,"onUpdate:value":n[2]||(n[2]=s=>r.value.duration_days=s),type:"number",min:"1",placeholder:"30"},null,8,["value"])])]),t("div",_t,[t("div",null,[pt,o(A,{value:r.value.price,"onUpdate:value":n[3]||(n[3]=s=>r.value.price=s),type:"number",min:"0",placeholder:"100000"},null,8,["value"])]),t("div",null,[mt,o(A,{value:r.value.discount_percent,"onUpdate:value":n[4]||(n[4]=s=>r.value.discount_percent=s),type:"number",min:"0",max:"100",placeholder:"0"},null,8,["value"])]),t("div",null,[vt,t("div",ft,M(re.value),1)])]),t("div",gt,[t("div",null,[xt,o(A,{value:r.value.sort_order,"onUpdate:value":n[5]||(n[5]=s=>r.value.sort_order=s),type:"number",placeholder:"0"},null,8,["value"])]),t("div",null,[bt,t("div",yt,[o(T,{value:r.value.is_active,"onUpdate:value":n[6]||(n[6]=s=>r.value.is_active=s)},null,8,["value"]),t("span",ht,M(r.value.is_active?"فعال":"غیرفعال"),1)])])]),t("div",null,[wt,o(O,{value:r.value.description,"onUpdate:value":n[7]||(n[7]=s=>r.value.description=s),placeholder:"توضیحات اشتراک",rows:4},null,8,["value"])]),t("div",It,[t("div",null,[kt,o(h(Ce),{"file-list":_.value,"onUpdate:fileList":n[8]||(n[8]=s=>_.value=s),"before-upload":ue,"custom-request":de,accept:"image/*","max-count":1,"list-type":"picture-card"},{default:b(()=>[_.value.length<1?(S(),N("div",At,[o($,{icon:"vuesax-linear:image",class:"text-2xl mb-2"}),Lt])):W("",!0)]),_:1},8,["file-list"])])])])]),_:1},8,["visible","title","confirmLoading"])]),_:1})])}}});export{sa as default};