import{c as D,u as S,r as t,l as b,j as e,B as r,d as W,a as F,b as T}from"./index-Dt7cVkfR.js";import{P as E,L as f,C as L,a as P,b as z,c as H,T as I,D as q,d as B,e as M,f as _,g as j,I as O,h as R,i as A}from"./dialog-CHJSPLHJ.js";const G=[["path",{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",key:"1m0v6g"}],["path",{d:"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z",key:"ohrbg2"}]],J=D("square-pen",G);function U(){const s=S(),[m,g]=t.useState([]),[p,x]=t.useState(!0),[k,o]=t.useState(!1),[c,h]=t.useState(null),[l,i]=t.useState({name:"",text:""}),[w,u]=t.useState(!1);t.useEffect(()=>{d()},[]);const d=async()=>{try{x(!0);const a=await b();g(a.workflows)}catch(a){console.error("Failed to load workflows:",a)}finally{x(!1)}},v=()=>{h(null),i({name:"",text:""}),o(!0)},N=a=>{h(a),i({name:a.name,text:a.text}),o(!0)},C=async()=>{try{u(!0),c?await F(c.uuid,l):await T(l),o(!1),d()}catch(a){console.error("Failed to save workflow:",a)}finally{u(!1)}},y=async a=>{if(window.confirm(s.workflows.deleteConfirm))try{await W(a),d()}catch(n){console.error("Failed to delete workflow:",n)}};return e.jsxs("div",{className:"container mx-auto p-6 max-w-7xl",children:[e.jsxs("div",{className:"flex justify-between items-center mb-6",children:[e.jsx("h1",{className:"text-3xl font-bold",children:s.workflows.title}),e.jsxs(r,{onClick:v,children:[e.jsx(E,{className:"w-4 h-4 mr-2"}),s.workflows.createNew]})]}),p?e.jsx("div",{className:"flex justify-center items-center h-64",children:e.jsx(f,{className:"w-8 h-8 animate-spin text-slate-400"})}):m.length===0?e.jsx("div",{className:"text-center py-12",children:e.jsx("p",{className:"text-slate-500 dark:text-slate-400",children:s.workflows.empty})}):e.jsx("div",{className:"grid gap-4 md:grid-cols-2 lg:grid-cols-3",children:m.map(a=>e.jsxs(L,{className:"hover:shadow-md transition-shadow",children:[e.jsx(P,{children:e.jsx(z,{className:"text-lg",children:a.name})}),e.jsxs(H,{children:[e.jsx("p",{className:"text-sm text-slate-600 dark:text-slate-400 mb-4 line-clamp-3",children:a.text}),e.jsxs("div",{className:"flex gap-2",children:[e.jsxs(r,{variant:"outline",size:"sm",onClick:()=>N(a),children:[e.jsx(J,{className:"w-3 h-3 mr-1"}),s.common.edit]}),e.jsxs(r,{variant:"destructive",size:"sm",onClick:()=>y(a.uuid),children:[e.jsx(I,{className:"w-3 h-3 mr-1"}),s.common.delete]})]})]})]},a.uuid))}),e.jsx(q,{open:k,onOpenChange:o,children:e.jsxs(B,{className:"sm:max-w-[600px]",children:[e.jsx(M,{children:e.jsx(_,{children:c?s.workflows.edit:s.workflows.create})}),e.jsxs("div",{className:"space-y-4 py-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(j,{htmlFor:"name",children:s.workflows.name}),e.jsx(O,{id:"name",value:l.name,onChange:a=>i(n=>({...n,name:a.target.value})),placeholder:s.workflows.namePlaceholder})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(j,{htmlFor:"text",children:s.workflows.text}),e.jsx(R,{id:"text",value:l.text,onChange:a=>i(n=>({...n,text:a.target.value})),placeholder:s.workflows.textPlaceholder,rows:6,className:"resize-none !rounded-lg"})]})]}),e.jsxs(A,{children:[e.jsx(r,{variant:"outline",onClick:()=>o(!1),children:s.common.cancel}),e.jsx(r,{onClick:C,disabled:!l.name.trim()||!l.text.trim()||w,children:w?e.jsxs(e.Fragment,{children:[e.jsx(f,{className:"w-4 h-4 mr-2 animate-spin"}),s.common.loading]}):s.common.save})]})]})})]})}export{U as component};
