chaite
Version:
core for chatgpt-plugin and karin-plugin-chatgpt
2 lines (1 loc) • 6.75 kB
JavaScript
import{_ as ae}from"./add-one-DOvH_o_Z.js";import{d as oe,L as le,M as G,r as i,v as ne,b as se,o as ie,w as l,e as a,y as ue,u as s,E as re,O as B,B as u,g as b,P as de,Q as ce,Z as pe,$ as me,z as S,a as L,p as n,R as A,N as P}from"./index-ODYIy7Xh.js";import{f as fe,c as _e,u as ve,a as ge}from"./tools-CuEynJPz.js";import{_ as ye}from"./ToolFormModal.vue_vue_type_script_setup_true_lang-BMw0Quwj.js";import{f as ke,c as he,d as be}from"./toolGroup-fE4pBlvk.js";import{_ as Te}from"./ToolGroupFormModal.vue_vue_type_script_setup_true_lang-DW2lrSv0.js";import{I as Ne}from"./cloudy-BnFfJjd2.js";import{_ as Ce}from"./FormItem-Bn6KO6SV.js";import{N as ze,_ as Ge}from"./Grid-Bjr6q9HT.js";import{_ as Se}from"./FormItemGridItem-Ca-3zMXQ.js";import{N as Ie}from"./DataTable-D5UReYxF.js";import"./index-hayCweZy.js";import"./Checkbox-COyVwk_5.js";import"./Ellipsis-CB8MjzQA.js";import"./prop-BjyUHhTu.js";import"./download-C2161hUv.js";const xe={class:"flex gap-4"},$e={class:"flex gap-4"},qe=oe({__name:"index",setup(we){function R({upload:t,edit:e,remove:g}){return[{title:"ID",key:"id",resizable:!0},{title:"云端ID",key:"cloudId",resizable:!0},{title:"名称",key:"name",render(o){const h=[o.name];return o.uploader&&h.push(n(A,{trigger:"hover"},{trigger:()=>n(Ne,{style:{color:"green"}}),default:()=>"云端工具"})),n(B,{align:"center"},{default:()=>h})},resizable:!0},{title:"状态",key:"status",render(o){return o.status==="disabled"?n(A,{trigger:"hover"},{trigger:n(P,{type:"error"},{default:()=>"禁用"}),default:()=>"已禁用,不会被任何工具组使用"}):n(P,{type:"success"},{default:()=>"正常"})}},{title:"描述",key:"description",width:500},{title:"创建日期",key:"createdAt",resizable:!0},{title:"操作",key:"actions",render(o){return[n(u,{type:"primary",strong:!0,tertiary:!0,size:"small",onClick:()=>t(o),disabled:!!o.uploader?.username},{default:()=>"上传"}),n(u,{type:"info",strong:!0,tertiary:!0,size:"small",onClick:()=>e(o)},{default:()=>"修改"}),n(u,{type:"error",strong:!0,tertiary:!0,size:"small",onClick:()=>g(o)},{default:()=>"删除"})]}}]}function U({upload:t,edit:e,remove:g}){return[{title:"ID",key:"id",resizable:!0},{title:"组名称",key:"name",render(o){return n("div",{},o.name)},resizable:!0},{title:"描述",key:"description",width:500},{title:"工具数量",key:"toolCount",render(o){return n("div",{},o.isDefault?"-":o.toolIds?.length||0)}},{title:"创建日期",key:"createdAt",resizable:!0},{title:"操作",key:"actions",render(o){return[n(u,{type:"info",strong:!0,tertiary:!0,size:"small",onClick:()=>e(o),disabled:o.isDefault},{default:()=>"修改"}),n(u,{type:"error",strong:!0,tertiary:!0,size:"small",onClick:()=>g(o),disabled:o.isDefault},{default:()=>"删除"})]}}]}const p=le(),T=G({value:[]}),f=i(!1),y=i(!1),I={modelType:"settings",name:"",code:"",description:"",uploader:void 0},N=i(JSON.parse(JSON.stringify(I))),c=i(!1),x=G({value:[]}),_=i(!1),k=i(!1),$={name:"",description:"",toolIds:[],modelType:"settings",embedded:!1},C=i(JSON.parse(JSON.stringify($))),r=i(!1),w=i("tools");function v(t){c.value=!0,fe(t).then(e=>{T.value=e.data,c.value=!1}).catch(()=>{c.value=!1})}function V(t){window.$dialog.warning({title:"确认删除",content:`确定要删除工具 "${t.name}" 吗?此操作不可恢复`,positiveText:"确认删除",onPositiveClick:()=>{ge(t.id).then(e=>{e.code===0&&(p.success("删除成功"),v())}).finally(()=>c.value=!1)}})}function F(t){c.value=!0,_e(t).then(e=>{e.code===0&&(p.success(y.value?"修改成功":"创建成功"),v())}).finally(()=>{c.value=!1,f.value=!1})}const E=R({upload(t){ve(t).then(e=>{e.code===0&&p.success("上传成功")})},edit(t){y.value=!0,N.value={...t},f.value=!0},remove:V});function Q(){y.value=!1,N.value=JSON.parse(JSON.stringify(I)),f.value=!0}function z(t){r.value=!0,ke(t).then(e=>{x.value=e.data,r.value=!1}).catch(()=>{r.value=!1})}function Z(t){p.info(`查看工具组: ${t.name},包含 ${t.toolIds?.length||0} 个工具`)}function j(t){window.$dialog.warning({title:"确认删除",content:`确定要删除工具组 "${t.name}" 吗?此操作不可恢复`,positiveText:"确认删除",onPositiveClick:()=>{r.value=!0,be(t.id).then(e=>{e.code===0&&(p.success("删除成功"),z())}).finally(()=>r.value=!1)}})}function q(t){r.value=!0,he(t).then(e=>{e.code===0&&(p.success(k.value?"修改成功":"创建成功"),z())}).finally(()=>{r.value=!1,_.value=!1})}const H=U({upload:Z,edit(t){k.value=!0,C.value={...t},_.value=!0},remove:j});function K(){k.value=!1,C.value=JSON.parse(JSON.stringify($)),_.value=!0}ne(()=>{v(),z()});const m=G({name:void 0});function W(){m.name=void 0,v(m)}return(t,e)=>{const g=re,o=Se,h=de,X=ce,Y=Ge,ee=Ce,O=ue,D=ae,J=Ie,M=me,te=pe;return ie(),se(s(S),{vertical:"",size:"large"},{default:l(()=>[a(O,null,{default:l(()=>[a(ee,{model:m,"label-placement":"left",inline:"","show-feedback":!1},{default:l(()=>[a(s(ze),{cols:"1 s:2 m:3 l:6","x-gap":12,"y-gap":16,responsive:"screen","item-responsive":""},{default:l(()=>[a(o,{span:"1",label:"名称",path:"name"},{default:l(()=>[a(g,{value:m.name,"onUpdate:value":e[0]||(e[0]=d=>m.name=d),placeholder:"请输入要搜索的名称关键词"},null,8,["value"])]),_:1}),a(Y,{span:"1"},{default:l(()=>[a(s(B),{class:"ml-auto"},{default:l(()=>[a(s(u),{type:"primary",onClick:e[1]||(e[1]=d=>v(m))},{icon:l(()=>[a(h)]),default:l(()=>[e[5]||(e[5]=b(" 搜索 "))]),_:1}),a(s(u),{strong:"",secondary:"",onClick:W},{icon:l(()=>[a(X)]),default:l(()=>[e[6]||(e[6]=b(" 重置 "))]),_:1})]),_:1})]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),a(O,null,{default:l(()=>[a(te,{value:w.value,"onUpdate:value":e[2]||(e[2]=d=>w.value=d),type:"line",animated:""},{default:l(()=>[a(M,{name:"tools",tab:"工具管理"},{default:l(()=>[a(s(S),{vertical:"",size:"large"},{default:l(()=>[L("div",xe,[a(s(u),{type:"primary",onClick:Q},{icon:l(()=>[a(D)]),default:l(()=>[e[7]||(e[7]=b(" 新建工具 "))]),_:1})]),a(J,{columns:s(E),data:T.value,loading:c.value},null,8,["columns","data","loading"])]),_:1})]),_:1}),a(M,{name:"groups",tab:"工具组管理"},{default:l(()=>[a(s(S),{vertical:"",size:"large"},{default:l(()=>[L("div",$e,[a(s(u),{type:"primary",onClick:K},{icon:l(()=>[a(D)]),default:l(()=>[e[8]||(e[8]=b(" 新建工具组 "))]),_:1})]),a(J,{columns:s(H),data:x.value,loading:r.value},null,8,["columns","data","loading"])]),_:1})]),_:1})]),_:1},8,["value"])]),_:1}),a(ye,{show:f.value,"onUpdate:show":e[3]||(e[3]=d=>f.value=d),"edit-mode":y.value,"initial-data":N.value,onSubmit:F},null,8,["show","edit-mode","initial-data"]),a(Te,{show:_.value,"onUpdate:show":e[4]||(e[4]=d=>_.value=d),"edit-mode":k.value,"initial-data":C.value,"available-tools":T.value,onSubmit:q},null,8,["show","edit-mode","initial-data","available-tools"])]),_:1})}}});export{qe as default};