2 lines
8.9 KiB
JavaScript
2 lines
8.9 KiB
JavaScript
import{_ as z}from"./DRkNpQ1P.js";import{e as H,f as A,g as T,c as n,a as e,t as s,i as l,F,r as N,j as i,x as $,y as R,z as V,A as L,d as c,l as d,h as P,o as a,b as D,w as S}from"./CQHa_U7G.js";import{u as I}from"./DzZn2YD-.js";import{_ as q}from"./DlAUqK2U.js";import"./BJMSi7ez.js";const E={class:"mb-8"},O={class:"text-2xl font-bold text-white"},U={class:"text-slate-400 mt-1"},G={key:0,class:"flex items-center justify-center py-20"},J={class:"text-slate-400 flex items-center gap-3"},K={key:1,class:"bg-rose-500/10 border border-rose-500/30 rounded-xl p-6 mb-8"},Q={class:"text-rose-400"},W={key:2,class:"space-y-4"},X={class:"flex items-start justify-between gap-4"},Y={class:"flex-1 min-w-0"},Z={class:"flex items-center gap-3 mb-2"},ee={class:"text-lg font-semibold text-white truncate"},te={class:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-rose-500/10 text-rose-400"},se={class:"text-xs font-mono text-slate-400 bg-slate-700/50 px-2 py-0.5 rounded"},oe={key:0,class:"inline-flex items-center px-2 py-0.5 rounded text-xs font-mono bg-slate-700/50 text-slate-400"},re={class:"grid grid-cols-2 gap-x-8 gap-y-2 text-sm"},ne={key:0,class:"text-slate-300"},ae={class:"text-slate-500"},le={key:1,class:"text-slate-300"},ie={class:"text-slate-500"},de={key:2,class:"text-slate-300"},ce={class:"text-slate-500"},ue={class:"text-slate-300"},me={class:"text-slate-500"},pe={class:"text-rose-400 font-medium ml-1"},ve={key:3,class:"text-slate-300"},_e={class:"text-slate-500"},he={class:"flex flex-col gap-2 flex-shrink-0"},xe=["onClick","disabled"],fe={key:0,class:"w-4 h-4 animate-spin",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},be={key:1,class:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},ke={key:0,class:"bg-slate-800 rounded-xl border border-slate-700 p-12 text-center"},ge={class:"text-lg font-medium text-slate-400 mb-1"},ye={class:"text-sm text-slate-500"},we={class:"bg-slate-800 rounded-xl border border-slate-700 p-6 w-full max-w-lg mx-4 shadow-2xl"},$e={class:"text-lg font-semibold text-white mb-2"},je={class:"text-sm text-slate-400 mb-6"},Ce={class:"mb-4"},Me={class:"block text-sm font-medium text-slate-300 mb-1"},Be=["placeholder"],ze={class:"flex justify-end gap-3"},He=["disabled"],Ae={key:0,class:"w-4 h-4 animate-spin",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},Te={key:4,class:"fixed bottom-6 right-6 z-50 bg-emerald-600 text-white px-4 py-3 rounded-lg shadow-lg text-sm flex items-center gap-2 animate-slide-up"},Fe=H({__name:"rejected",setup(Ne){const{t:x}=A(),{formatDate:j}=I(),f=d(!0),b=d(!1),m=d([]),_=d(""),k=d(null),p=d(!1),u=d(null),v=d(""),h=d(!1);function g(){const o=P("access_token").value;return o?{Authorization:`Bearer ${o}`,"Content-Type":"application/json"}:{"Content-Type":"application/json"}}function y(t){_.value=t,setTimeout(()=>{_.value=""},3e3)}async function w(){f.value=!0,b.value=!1;try{const t=await $fetch("/api/v1/admin/providers?status=rejected&limit=100&sort_by=created_at&sort_order=desc",{headers:g()});m.value=t}catch(t){console.error("Failed to fetch rejected providers:",t),b.value=!0}finally{f.value=!1}}function C(t){u.value=t,v.value="",p.value=!0}async function M(){if(u.value){h.value=!0;try{await $fetch(`/api/v1/admin/providers/${u.value.id}/restore`,{method:"POST",headers:g(),body:{reason:v.value||"Admin restored via rejected queue"}}),y(x("providers.restored_toast",{name:u.value.name})),m.value=m.value.filter(t=>t.id!==u.value.id),p.value=!1,u.value=null}catch(t){const o=t?.response?._data?.detail||t?.data?.detail||x("providers.unknown_error");y(x("providers.error_prefix",{detail:o})),console.error("Failed to restore provider:",t)}finally{h.value=!1}}}return T(()=>{w()}),(t,o)=>{const B=z;return a(),n("div",null,[e("div",E,[e("h1",O,s(t.$t("providers.rejected_title")),1),e("p",U,s(t.$t("providers.rejected_subtitle")),1)]),l(f)?(a(),n("div",G,[e("div",J,[o[3]||(o[3]=e("svg",{class:"w-5 h-5 animate-spin",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})],-1)),e("span",null,s(t.$t("providers.rejected_loading")),1)])])):l(b)?(a(),n("div",K,[e("p",Q,s(t.$t("providers.error")),1),e("button",{onClick:w,class:"mt-3 text-sm text-rose-300 hover:text-rose-200 underline"},s(t.$t("providers.retry")),1)])):(a(),n("div",W,[(a(!0),n(F,null,N(l(m),r=>(a(),n("div",{key:r.id,class:"bg-slate-800 rounded-xl border border-slate-700 p-6 hover:border-rose-500/30 transition"},[e("div",X,[e("div",Y,[e("div",Z,[e("h3",ee,s(r.name),1),e("span",te,s(t.$t("providers.status_rejected")),1),e("code",se,s(r.source),1),r.source_table?(a(),n("span",oe,s(r.source_table),1)):i("",!0)]),e("div",re,[r.address?(a(),n("div",ne,[e("span",ae,s(t.$t("providers.label_address")),1),c(" "+s(r.address),1)])):i("",!0),r.city?(a(),n("div",le,[e("span",ie,s(t.$t("providers.label_city")),1),c(" "+s(r.city),1)])):i("",!0),r.category?(a(),n("div",de,[e("span",ce,s(t.$t("providers.label_category")),1),c(" "+s(r.category),1)])):i("",!0),e("div",ue,[e("span",me,s(t.$t("providers.label_validation_score")),1),e("span",pe,s(r.validation_score),1)]),r.created_at?(a(),n("div",ve,[e("span",_e,s(t.$t("providers.label_created")),1),c(" "+s(l(j)(r.created_at)),1)])):i("",!0)])]),e("div",he,[e("button",{onClick:Re=>C(r),disabled:l(k)===r.id,class:"px-4 py-2 bg-emerald-600 hover:bg-emerald-500 disabled:bg-emerald-600/50 text-white rounded-lg text-sm font-medium transition flex items-center gap-2"},[l(k)===r.id?(a(),n("svg",fe,[...o[4]||(o[4]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"},null,-1)])])):(a(),n("svg",be,[...o[5]||(o[5]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"},null,-1)])])),c(" "+s(t.$t("providers.restore")),1)],8,xe),D(B,{to:`/providers/${r.id}`,class:"px-4 py-2 bg-slate-700 hover:bg-slate-600 text-slate-300 rounded-lg text-sm font-medium transition flex items-center gap-2 text-center"},{default:S(()=>[o[6]||(o[6]=e("svg",{class:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 12a3 3 0 11-6 0 3 3 0 016 0z"}),e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z"})],-1)),c(" "+s(t.$t("providers.details")),1)]),_:1},8,["to"])])])]))),128)),l(m).length===0?(a(),n("div",ke,[o[7]||(o[7]=e("svg",{class:"w-12 h-12 mx-auto text-slate-600 mb-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)),e("h3",ge,s(t.$t("providers.no_rejected")),1),e("p",ye,s(t.$t("providers.no_rejected_subtitle")),1)])):i("",!0)])),l(p)?(a(),n("div",{key:3,class:"fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-sm",onClick:o[2]||(o[2]=$(r=>p.value=!1,["self"]))},[e("div",we,[e("h2",$e,s(t.$t("providers.restore_modal_title")),1),e("p",je,s(t.$t("providers.restore_modal_body",{name:l(u)?.name})),1),e("form",{onSubmit:$(M,["prevent"])},[e("div",Ce,[e("label",Me,s(t.$t("providers.restore_reason_label")),1),R(e("textarea",{"onUpdate:modelValue":o[0]||(o[0]=r=>L(v)?v.value=r:null),rows:"3",placeholder:t.$t("providers.restore_reason_placeholder"),class:"w-full px-3 py-2 bg-slate-700 border border-slate-600 rounded-lg text-white placeholder-slate-500 focus:outline-none focus:ring-2 focus:ring-emerald-500/50 focus:border-emerald-500 text-sm resize-none"},null,8,Be),[[V,l(v)]])]),e("div",ze,[e("button",{type:"button",onClick:o[1]||(o[1]=r=>p.value=!1),class:"px-4 py-2 text-sm text-slate-400 hover:text-white transition"},s(t.$t("common.cancel")),1),e("button",{type:"submit",disabled:l(h),class:"px-4 py-2 bg-emerald-600 hover:bg-emerald-500 disabled:bg-emerald-600/50 text-white rounded-lg text-sm font-medium transition flex items-center gap-2"},[l(h)?(a(),n("svg",Ae,[...o[8]||(o[8]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"},null,-1)])])):i("",!0),c(" "+s(t.$t("providers.restore")),1)],8,He)])],32)])])):i("",!0),l(_)?(a(),n("div",Te,[o[9]||(o[9]=e("svg",{class:"w-4 h-4 flex-shrink-0",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)),c(" "+s(l(_)),1)])):i("",!0)])}}}),Ie=q(Fe,[["__scopeId","data-v-4522f6a1"]]);export{Ie as default};
|