import{p as se,B as re,q as gn,v as vn,x as yn,y as Re,c as C,o as y,a as m,z as $,A as ne,R as at,s as q,C as ee,D as Ie,r as J,e as w,E as H,d as j,t as D,n as N,w as T,b as P,G as W,H as ae,I as rt,T as Ke,_ as X,h as x,J as Z,i as O,K as bn,u as A,L as be,M as Pe,F as z,f as _,N as ye,O as hn,P as kn,Q as it,S as Be,W as wn,U as de,j as qe,V as te,X as et,Y as Cn,g as st,k as dt,Z as xn,$ as $n,m as En}from"./index-k1IBxX4P.js";import{m as An,h as Sn,d as In,e as Pn,s as Ue,u as jn,f as Tn,i as Vn,j as Dn,k as Mn,l as Bn,n as ct,g as ut,o as On,p as Un,q as Ln,r as Fn,t as Hn,v as Nn,w as Rn,x as Kn,y as pt,b as mt,z as qn,A as zn,B as Wn,C as Zn,D as ft,c as gt,E as Gn,F as Yn,L as Jn,G as Xn,a as Qn}from"./LoadingState-DpzKHwwk.js";import{s as _n,F as eo,u as to,b as no,L,M as vt,P as oo,T as ze,a as lo,H as ao,Y as yt,c as ro,d as bt,e as io,f as so,D as co}from"./DeleteConfirmationModal-8BmfEokU.js";import{a as tt,b as uo}from"./index-DD4ytruD.js";async function We(e){return(await se(`${re}/api/projects/${e}/skills`)).json()}async function Ze(){return(await se(`${re}/api/user/skills`)).json()}async function ht(e,t,n){return(await se(`${re}/api/projects/${e}/skills/${t}`,{method:"PUT",body:JSON.stringify(n)})).json()}async function kt(e,t){return(await se(`${re}/api/user/skills/${e}`,{method:"PUT",body:JSON.stringify(t)})).json()}async function wt(e,t){return(await se(`${re}/api/projects/${e}/skills/${t}`,{method:"DELETE"})).json()}async function Ct(e){return(await se(`${re}/api/user/skills/${e}`,{method:"DELETE"})).json()}async function po(e){return(await se(`${re}/api/copy/skill`,{method:"POST",body:JSON.stringify(e)})).json()}const mo=Object.freeze(Object.defineProperty({__proto__:null,copySkill:po,deleteProjectSkill:wt,deleteUserSkill:Ct,getProjectSkills:We,getUserSkills:Ze,updateProjectSkill:ht,updateUserSkill:kt},Symbol.toStringTag,{value:"Module"})),xt={BASE_URL:re,getProjects:yn,scanProjects:vn,healthCheck:gn,...Pn,...In,...mo,...Sn,...An};var $t={name:"PlusIcon",extends:Re};function fo(e){return bo(e)||yo(e)||vo(e)||go()}function go(){throw new TypeError(`Invalid attempt to spread non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function vo(e,t){if(e){if(typeof e=="string")return Le(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Le(e,t):void 0}}function yo(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function bo(e){if(Array.isArray(e))return Le(e)}function Le(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,o=Array(t);ne.trim().length>0},count:{type:Number,required:!0,validator:e=>e>=0},icon:{type:String,required:!0,validator:e=>e.includes("pi-")},color:{type:String,required:!0,validator:e=>e.startsWith("var(--color-")},loading:{type:Boolean,required:!0},items:{type:Array,required:!0},showingAll:{type:Boolean,required:!0},initialDisplayCount:{type:Number,default:5,validator:e=>e>0},cardType:{type:String,default:"",validator:e=>["","agents","commands","hooks","mcp"].includes(e)},toggleable:{type:Boolean,default:!1},collapsed:{type:Boolean,default:!1}},emits:{"toggle-show-all":null,"update:collapsed":e=>typeof e=="boolean","item-selected":(e,t)=>e!==null&&typeof t=="string"},setup(e,{emit:t}){const n=e,o=t,s=x(n.collapsed);Z(()=>n.collapsed,i=>{s.value=i}),Z(s,i=>{o("update:collapsed",i)});const l=O(()=>({root:{class:"bg-secondary border-primary",style:{overflow:"hidden"}},header:{class:"config-panel-header",style:{padding:"1rem 1.25rem",backgroundColor:"var(--bg-tertiary)",borderBottom:"1px solid var(--border-primary)"}},title:{class:"config-panel-title"},icons:{class:"config-panel-icons",style:{display:"flex",alignItems:"center",gap:"0.5rem"}},toggleButton:{class:"config-panel-toggle",style:{width:"2rem",height:"2rem"}},content:{class:"p-panel-content",style:{paddingTop:"1.25rem"}},footer:{class:"config-panel-footer",style:{padding:"0",borderTop:"1px solid var(--border-secondary)"}}})),c=O(()=>n.cardType?`${n.cardType}-panel`:""),v=O(()=>n.showingAll||n.items.length<=n.initialDisplayCount?n.items:n.items.slice(0,n.initialDisplayCount)),h=O(()=>n.title==="MCP Servers"?"No MCP servers configured":`No ${n.title.toLowerCase()} configured`),f=O(()=>n.showingAll?"Show less":`Show ${n.items.length-n.initialDisplayCount} more`),g=()=>{o("toggle-show-all")};return(i,a)=>(y(),P(A(Et),{header:e.title,toggleable:e.toggleable,collapsed:s.value,"onUpdate:collapsed":a[0]||(a[0]=r=>s.value=r),pt:l.value,class:N(["config-panel",c.value])},bn({header:T(()=>[m("div",Po,[m("i",{class:N([e.icon,"text-2xl md:text-2xl max-md:text-xl"]),style:be({color:e.color})},null,6),m("span",jo,D(e.title)+" ("+D(e.count)+")",1)])]),icons:T(()=>[H(i.$slots,"header-actions",{},void 0,!0)]),default:T(()=>[m("div",To,[e.loading?(y(),C("div",Vo,[...a[1]||(a[1]=[m("div",{class:"skeleton"},null,-1),m("div",{class:"skeleton"},null,-1),m("div",{class:"skeleton"},null,-1)])])):e.items.length===0?(y(),C("div",Do,[m("i",{class:N([e.icon,"block text-5xl md:text-5xl max-md:text-4xl opacity-30 mb-3"])},null,2),m("p",Mo,D(h.value),1)])):(y(),C("div",Bo,[H(i.$slots,"default",{items:v.value},void 0,!0)]))])]),_:2},[!e.loading&&e.items.length>e.initialDisplayCount?{name:"footer",fn:T(()=>[w(A(q),{onClick:g,label:f.value,text:"",class:"w-full py-3 px-5 bg-transparent text-color-primary border-none cursor-pointer text-sm font-medium transition-all duration-200 text-center hover:bg-bg-hover"},null,8,["label"])]),key:"0"}:void 0]),1032,["header","toggleable","collapsed","pt","class"]))}},ge=X(Oo,[["__scopeId","data-v-2c38b9e0"]]),Uo={__name:"CopyButton",props:{configItem:{type:Object,required:!0,validator:e=>e&&typeof e=="object"&&(e.name||e.event)},disabled:{type:Boolean,default:!1},showLabel:{type:Boolean,default:!0}},emits:{"copy-clicked":e=>e&&typeof e=="object"},setup(e,{emit:t}){const n=e,o=t,s=O(()=>n.configItem?.location==="plugin"),l=O(()=>n.disabled||s.value),c=O(()=>`Copy ${n.configItem?.name||n.configItem?.event||"configuration"}`),v=O(()=>s.value?"Plugin config cannot be copied":"Copy to another project"),h=()=>{l.value||o("copy-clicked",n.configItem)};return(f,g)=>{const i=Pe("tooltip");return ae((y(),P(A(q),{label:e.showLabel?"Copy to...":"",icon:"pi pi-copy",outlined:"",size:"small",disabled:l.value,"aria-label":c.value,onClick:h,class:"copy-btn"},null,8,["label","disabled","aria-label"])),[[i,v.value,void 0,{top:!0}]])}}},Lo=X(Uo,[["__scopeId","data-v-e0fbbca3"]]),Fo={class:"flex flex-col gap-3"},Ho={class:"flex items-center justify-between gap-3 px-4 py-3"},No={class:"font-semibold text-[0.95rem] text-text-primary truncate"},Ro={__name:"ConfigItemList",props:{items:{type:Array,required:!0},itemType:{type:String,required:!0,validator:e=>["agents","commands","hooks","mcp","skills"].includes(e)},truncateDescription:{type:Boolean,default:!0},enableCrud:{type:Boolean,default:!1}},emits:{"item-selected":(e,t)=>e!==null&&typeof t=="string"&&["agents","commands","hooks","mcp","skills"].includes(t),"copy-clicked":e=>e!==null&&typeof e=="object","delete-clicked":e=>e!==null&&typeof e=="object"},setup(e,{emit:t}){const n=O(()=>({root:{class:"config-item-card-root"},header:{class:"config-item-card-header"},body:{class:"config-item-card-body"},content:{class:"config-item-card-content"}})),o=e,s=t,l=g=>o.enableCrud&&(o.itemType==="agents"||o.itemType==="commands"||o.itemType==="skills"||o.itemType==="hooks"||o.itemType==="mcp")&&g.location!=="plugin",c=g=>{s("delete-clicked",g)},v=g=>{const a={...g,configType:{agents:"agent",commands:"command",hooks:"hook",mcp:"mcp",skills:"skill"}[o.itemType]||o.itemType};s("copy-clicked",a)},h=g=>o.itemType==="hooks"?g.name||g.event||"Unnamed Hook":g.name||"Unnamed",f=(g,i)=>{switch(i){case"agents":return g.description||"No description available";case"commands":return g.description||"No description available";case"hooks":const a=g.event||"N/A",r=g.pattern||"N/A";return`Event: ${a} • Pattern: ${r}`;case"mcp":const p=g.transport||"N/A",d=g.command||"N/A";return`Transport: ${p} • Command: ${d}`;default:return"No details available"}};return(g,i)=>(y(),C("div",Fo,[(y(!0),C(z,null,_(e.items,(a,r)=>(y(),P(A(Ue),{key:r,pt:n.value,class:"config-item-card cursor-pointer",onClick:p=>g.$emit("item-selected",a,e.itemType)},{header:T(()=>[m("div",Ho,[m("span",No,D(h(a)),1),m("div",{class:"flex items-center gap-2 shrink-0",onClick:i[0]||(i[0]=ye(()=>{},["stop"]))},[l(a)?(y(),P(A(q),{key:0,icon:"pi pi-trash",outlined:"",size:"small",severity:"danger","aria-label":"Delete",class:"delete-btn",onClick:ye(p=>c(a),["stop"])},null,8,["onClick"])):j("",!0),w(Lo,{configItem:a,disabled:a.location==="plugin",showLabel:!1,onCopyClicked:v},null,8,["configItem","disabled"]),w(A(q),{label:"View",icon:"pi pi-eye",outlined:"",size:"small",onClick:ye(p=>g.$emit("item-selected",a,e.itemType),["stop"]),class:"view-btn"},null,8,["onClick"])])])]),content:T(()=>[m("div",{class:N(["text-[0.85rem] text-text-secondary leading-[1.4]",{"line-clamp-2":e.truncateDescription}])},D(f(a,e.itemType)),3)]),_:2},1032,["pt","onClick"]))),128))]))}},ve=X(Ro,[["__scopeId","data-v-ad86d777"]]);var Ge={name:"ChevronRightIcon",extends:Re};function Ko(e){return Zo(e)||Wo(e)||zo(e)||qo()}function qo(){throw new TypeError(`Invalid attempt to spread non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function zo(e,t){if(e){if(typeof e=="string")return Fe(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Fe(e,t):void 0}}function Wo(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Zo(e){if(Array.isArray(e))return Fe(e)}function Fe(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,o=Array(t);ne.every(t=>{const n=t.label&&typeof t.label=="string",o=t.route===void 0||t.route===null||typeof t.route=="string";return n&&o})}},setup(e){const t=e,n=O(()=>{if(t.items.length===0)return null;const s=t.items[0];return{label:s.label,to:s.route,icon:s.icon||"pi pi-home"}}),o=O(()=>t.items.length<=1?[]:t.items.slice(1).map(s=>({label:s.label,to:s.route,icon:s.icon})));return(s,l)=>{const c=J("router-link");return y(),C("nav",nl,[w(A(St),{model:o.value,home:n.value},{item:T(({item:v,props:h})=>[v.to?(y(),P(c,$({key:0,to:v.to},h.action,{class:"breadcrumb-link"}),{default:T(()=>[v.icon?(y(),C("i",{key:0,class:N(v.icon)},null,2)):j("",!0),m("span",ol,D(v.label),1)]),_:2},1040,["to"])):(y(),C("span",$({key:1},h.action,{class:"breadcrumb-current"}),[v.icon?(y(),C("i",{key:0,class:N(v.icon)},null,2)):j("",!0),m("span",ll,D(v.label),1)],16))]),_:1},8,["model","home"])])}}},rl=X(al,[["__scopeId","data-v-87d43914"]]);var il=` .p-drawer { display: flex; flex-direction: column; transform: translate3d(0px, 0px, 0px); position: relative; transition: transform 0.3s; background: dt('drawer.background'); color: dt('drawer.color'); border: 1px solid dt('drawer.border.color'); box-shadow: dt('drawer.shadow'); } .p-drawer-content { overflow-y: auto; flex-grow: 1; padding: dt('drawer.content.padding'); } .p-drawer-header { display: flex; align-items: center; justify-content: space-between; flex-shrink: 0; padding: dt('drawer.header.padding'); } .p-drawer-footer { padding: dt('drawer.footer.padding'); } .p-drawer-title { font-weight: dt('drawer.title.font.weight'); font-size: dt('drawer.title.font.size'); } .p-drawer-full .p-drawer { transition: none; transform: none; width: 100vw !important; height: 100vh !important; max-height: 100%; top: 0px !important; left: 0px !important; border-width: 1px; } .p-drawer-left .p-drawer-enter-from, .p-drawer-left .p-drawer-leave-to { transform: translateX(-100%); } .p-drawer-right .p-drawer-enter-from, .p-drawer-right .p-drawer-leave-to { transform: translateX(100%); } .p-drawer-top .p-drawer-enter-from, .p-drawer-top .p-drawer-leave-to { transform: translateY(-100%); } .p-drawer-bottom .p-drawer-enter-from, .p-drawer-bottom .p-drawer-leave-to { transform: translateY(100%); } .p-drawer-full .p-drawer-enter-from, .p-drawer-full .p-drawer-leave-to { opacity: 0; } .p-drawer-full .p-drawer-enter-active, .p-drawer-full .p-drawer-leave-active { transition: opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1); } .p-drawer-left .p-drawer { width: 20rem; height: 100%; border-inline-end-width: 1px; } .p-drawer-right .p-drawer { width: 20rem; height: 100%; border-inline-start-width: 1px; } .p-drawer-top .p-drawer { height: 10rem; width: 100%; border-block-end-width: 1px; } .p-drawer-bottom .p-drawer { height: 10rem; width: 100%; border-block-start-width: 1px; } .p-drawer-left .p-drawer-content, .p-drawer-right .p-drawer-content, .p-drawer-top .p-drawer-content, .p-drawer-bottom .p-drawer-content { width: 100%; height: 100%; } .p-drawer-open { display: flex; } .p-drawer-mask:dir(rtl) { flex-direction: row-reverse; } `,sl={mask:function(t){var n=t.position,o=t.modal;return{position:"fixed",height:"100%",width:"100%",left:0,top:0,display:"flex",justifyContent:n==="left"?"flex-start":n==="right"?"flex-end":"center",alignItems:n==="top"?"flex-start":n==="bottom"?"flex-end":"center",pointerEvents:o?"auto":"none"}},root:{pointerEvents:"auto"}},dl={mask:function(t){var n=t.instance,o=t.props,s=["left","right","top","bottom"],l=s.find(function(c){return c===o.position});return["p-drawer-mask",{"p-overlay-mask p-overlay-mask-enter":o.modal,"p-drawer-open":n.containerVisible,"p-drawer-full":n.fullScreen},l?"p-drawer-".concat(l):""]},root:function(t){var n=t.instance;return["p-drawer p-component",{"p-drawer-full":n.fullScreen}]},header:"p-drawer-header",title:"p-drawer-title",pcCloseButton:"p-drawer-close-button",content:"p-drawer-content",footer:"p-drawer-footer"},cl=ne.extend({name:"drawer",style:il,classes:dl,inlineStyles:sl}),ul={name:"BaseDrawer",extends:ee,props:{visible:{type:Boolean,default:!1},position:{type:String,default:"left"},header:{type:null,default:null},baseZIndex:{type:Number,default:0},autoZIndex:{type:Boolean,default:!0},dismissable:{type:Boolean,default:!0},showCloseIcon:{type:Boolean,default:!0},closeButtonProps:{type:Object,default:function(){return{severity:"secondary",text:!0,rounded:!0}}},closeIcon:{type:String,default:void 0},modal:{type:Boolean,default:!0},blockScroll:{type:Boolean,default:!1},closeOnEscape:{type:Boolean,default:!0}},style:cl,provide:function(){return{$pcDrawer:this,$parentInstance:this}}};function he(e){"@babel/helpers - typeof";return he=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},he(e)}function Oe(e,t,n){return(t=pl(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function pl(e){var t=ml(e,"string");return he(t)=="symbol"?t:t+""}function ml(e,t){if(he(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var o=n.call(e,t);if(he(o)!="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var It={name:"Drawer",extends:ul,inheritAttrs:!1,emits:["update:visible","show","after-show","hide","after-hide","before-hide"],data:function(){return{containerVisible:this.visible}},container:null,mask:null,content:null,headerContainer:null,footerContainer:null,closeButton:null,outsideClickListener:null,documentKeydownListener:null,watch:{dismissable:function(t){t&&!this.modal?this.bindOutsideClickListener():this.unbindOutsideClickListener()}},updated:function(){this.visible&&(this.containerVisible=this.visible)},beforeUnmount:function(){this.disableDocumentSettings(),this.mask&&this.autoZIndex&&Be.clear(this.mask),this.container=null,this.mask=null},methods:{hide:function(){this.$emit("update:visible",!1)},onEnter:function(){this.$emit("show"),this.focus(),this.bindDocumentKeyDownListener(),this.autoZIndex&&Be.set("modal",this.mask,this.baseZIndex||this.$primevue.config.zIndex.modal)},onAfterEnter:function(){this.enableDocumentSettings(),this.$emit("after-show")},onBeforeLeave:function(){this.modal&&!this.isUnstyled&&wn(this.mask,"p-overlay-mask-leave"),this.$emit("before-hide")},onLeave:function(){this.$emit("hide")},onAfterLeave:function(){this.autoZIndex&&Be.clear(this.mask),this.unbindDocumentKeyDownListener(),this.containerVisible=!1,this.disableDocumentSettings(),this.$emit("after-hide")},onMaskClick:function(t){this.dismissable&&this.modal&&this.mask===t.target&&this.hide()},focus:function(){var t=function(s){return s&&s.querySelector("[autofocus]")},n=this.$slots.header&&t(this.headerContainer);n||(n=this.$slots.default&&t(this.container),n||(n=this.$slots.footer&&t(this.footerContainer),n||(n=this.closeButton))),n&&it(n)},enableDocumentSettings:function(){this.dismissable&&!this.modal&&this.bindOutsideClickListener(),this.blockScroll&&no()},disableDocumentSettings:function(){this.unbindOutsideClickListener(),this.blockScroll&&to()},onKeydown:function(t){t.code==="Escape"&&this.closeOnEscape&&this.hide()},containerRef:function(t){this.container=t},maskRef:function(t){this.mask=t},contentRef:function(t){this.content=t},headerContainerRef:function(t){this.headerContainer=t},footerContainerRef:function(t){this.footerContainer=t},closeButtonRef:function(t){this.closeButton=t?t.$el:void 0},bindDocumentKeyDownListener:function(){this.documentKeydownListener||(this.documentKeydownListener=this.onKeydown,document.addEventListener("keydown",this.documentKeydownListener))},unbindDocumentKeyDownListener:function(){this.documentKeydownListener&&(document.removeEventListener("keydown",this.documentKeydownListener),this.documentKeydownListener=null)},bindOutsideClickListener:function(){var t=this;this.outsideClickListener||(this.outsideClickListener=function(n){t.isOutsideClicked(n)&&t.hide()},document.addEventListener("click",this.outsideClickListener,!0))},unbindOutsideClickListener:function(){this.outsideClickListener&&(document.removeEventListener("click",this.outsideClickListener,!0),this.outsideClickListener=null)},isOutsideClicked:function(t){return this.container&&!this.container.contains(t.target)}},computed:{fullScreen:function(){return this.position==="full"},closeAriaLabel:function(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.close:void 0},dataP:function(){return Ie(Oe(Oe(Oe({"full-screen":this.position==="full"},this.position,this.position),"open",this.containerVisible),"modal",this.modal))}},directives:{focustrap:eo},components:{Button:q,Portal:kn,TimesIcon:hn}},fl=["data-p"],gl=["role","aria-modal","data-p"];function vl(e,t,n,o,s,l){var c=J("Button"),v=J("Portal"),h=Pe("focustrap");return y(),P(v,null,{default:T(function(){return[s.containerVisible?(y(),C("div",$({key:0,ref:l.maskRef,onMousedown:t[0]||(t[0]=function(){return l.onMaskClick&&l.onMaskClick.apply(l,arguments)}),class:e.cx("mask"),style:e.sx("mask",!0,{position:e.position,modal:e.modal}),"data-p":l.dataP},e.ptm("mask")),[w(Ke,$({name:"p-drawer",onEnter:l.onEnter,onAfterEnter:l.onAfterEnter,onBeforeLeave:l.onBeforeLeave,onLeave:l.onLeave,onAfterLeave:l.onAfterLeave,appear:""},e.ptm("transition")),{default:T(function(){return[e.visible?ae((y(),C("div",$({key:0,ref:l.containerRef,class:e.cx("root"),style:e.sx("root"),role:e.modal?"dialog":"complementary","aria-modal":e.modal?!0:void 0,"data-p":l.dataP},e.ptmi("root")),[e.$slots.container?H(e.$slots,"container",{key:0,closeCallback:l.hide}):(y(),C(z,{key:1},[m("div",$({ref:l.headerContainerRef,class:e.cx("header")},e.ptm("header")),[H(e.$slots,"header",{class:N(e.cx("title"))},function(){return[e.header?(y(),C("div",$({key:0,class:e.cx("title")},e.ptm("title")),D(e.header),17)):j("",!0)]}),e.showCloseIcon?H(e.$slots,"closebutton",{key:0,closeCallback:l.hide},function(){return[w(c,$({ref:l.closeButtonRef,type:"button",class:e.cx("pcCloseButton"),"aria-label":l.closeAriaLabel,unstyled:e.unstyled,onClick:l.hide},e.closeButtonProps,{pt:e.ptm("pcCloseButton"),"data-pc-group-section":"iconcontainer"}),{icon:T(function(f){return[H(e.$slots,"closeicon",{},function(){return[(y(),P(W(e.closeIcon?"span":"TimesIcon"),$({class:[e.closeIcon,f.class]},e.ptm("pcCloseButton").icon),null,16,["class"]))]})]}),_:3},16,["class","aria-label","unstyled","onClick","pt"])]}):j("",!0)],16),m("div",$({ref:l.contentRef,class:e.cx("content")},e.ptm("content")),[H(e.$slots,"default")],16),e.$slots.footer?(y(),C("div",$({key:0,ref:l.footerContainerRef,class:e.cx("footer")},e.ptm("footer")),[H(e.$slots,"footer")],16)):j("",!0)],64))],16,gl)),[[h]]):j("",!0)]}),_:3},16,["onEnter","onAfterEnter","onBeforeLeave","onLeave","onAfterLeave"])],16,fl)):j("",!0)]}),_:3})}It.render=vl;const Ce=de("notifications",()=>{const e=x([]);let t=1;function n(f,g="info",i=5e3){const a=t++,r={id:a,message:f,type:g};return e.value.push(r),i>0&&setTimeout(()=>o(a),i),a}function o(f){e.value=e.value.filter(g=>g.id!==f)}function s(){e.value=[]}function l(f,g=5e3){return n(f,"success",g)}function c(f,g=5e3){return n(f,"error",g)}function v(f,g=5e3){return n(f,"warning",g)}function h(f,g=5e3){return n(f,"info",g)}return{notifications:e,addNotification:n,removeNotification:o,clearAll:s,success:l,error:c,warning:v,info:h}}),Pt=de("agents",()=>{const e=x(new Map),t=x([]),n=x(!1),o=x(null),s=Ce();async function l(a,r,p,d){n.value=!0,o.value=null;try{if(!["project","user"].includes(d))throw new Error('Invalid scope: must be "project" or "user"');if(d==="project"&&!a)throw new Error("projectId is required for project scope");const u=d==="project"?await jn(a,r,p):await Tn(r,p);if(u.success){if(d==="project"){const k=e.value.get(a)||[],E=k.findIndex(M=>M.name===r);E!==-1&&(k[E]=u.agent,e.value.set(a,[...k]))}else{const k=t.value.findIndex(E=>E.name===r);k!==-1&&(t.value[k]=u.agent)}return s.success(`Agent "${r}" updated successfully`),{success:!0,agent:u.agent}}else throw new Error(u.message||"Failed to update agent")}catch(u){return o.value=u.message,s.error(`Failed to update agent: ${u.message}`),u.isExpected||console.error("Error updating agent:",u),{success:!1,error:u.message}}finally{n.value=!1}}async function c(a,r,p){n.value=!0,o.value=null;try{if(!["project","user"].includes(p))throw new Error('Invalid scope: must be "project" or "user"');if(p==="project"&&!a)throw new Error("projectId is required for project scope");const d=p==="project"?await Vn(a,r):await Dn(r);if(d.success){if(p==="project"){const k=(e.value.get(a)||[]).filter(E=>E.name!==r);e.value.set(a,k)}else t.value=t.value.filter(u=>u.name!==r);return s.success(`Agent "${r}" deleted successfully`),{success:!0}}else throw new Error(d.message||"Failed to delete agent")}catch(d){return o.value=d.message,s.error(`Failed to delete agent: ${d.message}`),d.isExpected||console.error("Error deleting agent:",d),{success:!1,error:d.message}}finally{n.value=!1}}async function v(a,r,p){try{if(!["project","user"].includes(p))throw new Error('Invalid scope: must be "project" or "user"');if(p==="project"&&!a)throw new Error("projectId is required for project scope");const d=p==="project"?await Mn(a,r):await Bn(r);if(d.success)return{success:!0,hasReferences:d.hasReferences,references:d.references||[]};throw new Error(d.message||"Failed to check agent references")}catch(d){return o.value=d.message,d.isExpected||console.error("Error checking agent references:",d),{success:!1,hasReferences:!1,references:[],error:d.message}}}async function h(a){n.value=!0,o.value=null;try{const r=await ct(a);if(r.agents)return e.value.set(a,r.agents),{success:!0,agents:r.agents};throw new Error("No agents data in response")}catch(r){return o.value=r.message,r.isExpected||console.error("Error loading project agents:",r),{success:!1,error:r.message}}finally{n.value=!1}}async function f(){n.value=!0,o.value=null;try{const a=await ut();if(a.agents)return t.value=a.agents,{success:!0,agents:a.agents};throw new Error("No agents data in response")}catch(a){return o.value=a.message,a.isExpected||console.error("Error loading user agents:",a),{success:!1,error:a.message}}finally{n.value=!1}}function g(a){return e.value.get(a)||[]}function i(){e.value.clear(),t.value=[],o.value=null}return{projectAgents:e,userAgents:t,isLoading:n,error:o,updateAgent:l,deleteAgent:c,checkAgentReferences:v,loadProjectAgents:h,loadUserAgents:f,getProjectAgentsCache:g,clearCache:i}}),yl={class:"mb-6"},bl={class:"mb-6"},hl={__name:"AgentDetailSection",props:{selectedItem:{type:Object,required:!0},canEdit:{type:Boolean,default:!1},editingField:{type:String,default:null},projectId:{type:String,default:null},scope:{type:String,default:null}},emits:["field-update","update:editing-field","agent-updated"],setup(e,{emit:t}){const n=Pt(),o=e,s=t,l=x({name:"",description:"",color:"",model:"inherit",permissionMode:"default",tools:[],skills:[],systemPrompt:""}),c=x(null),v=vt,h=oo,f=ze,g=[];Z(()=>o.selectedItem,p=>{if(p){let d=p.content||"";d.startsWith(` `)&&(d=d.substring(1)),l.value={name:p.name||"",description:p.description||"",color:p.color||"",model:p.model||"inherit",permissionMode:p.permissionMode||"default",tools:p.tools||[],skills:p.skills||[],systemPrompt:d},c.value=null}},{immediate:!0});const i=p=>{c.value=p,s("update:editing-field",p)},a=()=>{c.value=null,s("update:editing-field",null)},r=async(p,d)=>{if(o.canEdit)try{const u={[p]:d};(await n.updateAgent(o.projectId,o.selectedItem.name,u,o.scope)).success&&(l.value[p]=d,s("agent-updated"))}finally{c.value=null,s("update:editing-field",null)}};return(p,d)=>(y(),C("div",null,[m("div",yl,[d[24]||(d[24]=m("h4",{class:"mb-3 text-sm font-semibold text-text-primary uppercase tracking-wider"},"Metadata",-1)),w(L,{modelValue:l.value.name,"onUpdate:modelValue":d[0]||(d[0]=u=>l.value.name=u),"field-type":"text",label:"Name",placeholder:"agent-name",disabled:!e.canEdit||c.value!==null&&c.value!=="name",validation:[{type:"required"},{type:"agentName"}],onEditStart:d[1]||(d[1]=u=>i("name")),onEditCancel:a,onEditAccept:d[2]||(d[2]=u=>r("name",u))},null,8,["modelValue","disabled"]),w(L,{modelValue:l.value.description,"onUpdate:modelValue":d[3]||(d[3]=u=>l.value.description=u),"field-type":"textarea",label:"Description",placeholder:"Brief description",disabled:!e.canEdit||c.value!==null&&c.value!=="description",validation:[{type:"required"},{type:"minLength",param:10,message:"Description must be at least 10 characters"}],onEditStart:d[4]||(d[4]=u=>i("description")),onEditCancel:a,onEditAccept:d[5]||(d[5]=u=>r("description",u))},null,8,["modelValue","disabled"]),w(L,{modelValue:l.value.color,"onUpdate:modelValue":d[6]||(d[6]=u=>l.value.color=u),"field-type":"colorpalette",label:"Color",disabled:!e.canEdit||c.value!==null&&c.value!=="color",onEditStart:d[7]||(d[7]=u=>i("color")),onEditCancel:a,onEditAccept:d[8]||(d[8]=u=>r("color",u))},null,8,["modelValue","disabled"]),w(L,{modelValue:l.value.model,"onUpdate:modelValue":d[9]||(d[9]=u=>l.value.model=u),"field-type":"selectbutton",label:"Model",options:A(v),disabled:!e.canEdit||c.value!==null&&c.value!=="model",onEditStart:d[10]||(d[10]=u=>i("model")),onEditCancel:a,onEditAccept:d[11]||(d[11]=u=>r("model",u))},null,8,["modelValue","options","disabled"]),w(L,{modelValue:l.value.permissionMode,"onUpdate:modelValue":d[12]||(d[12]=u=>l.value.permissionMode=u),"field-type":"select",label:"Permission Mode",options:A(h),disabled:!e.canEdit||c.value!==null&&c.value!=="permissionMode",onEditStart:d[13]||(d[13]=u=>i("permissionMode")),onEditCancel:a,onEditAccept:d[14]||(d[14]=u=>r("permissionMode",u))},null,8,["modelValue","options","disabled"]),w(L,{modelValue:l.value.tools,"onUpdate:modelValue":d[15]||(d[15]=u=>l.value.tools=u),"field-type":"multiselect",label:"Allowed Tools",options:A(f),placeholder:"Select allowed tools",disabled:!e.canEdit||c.value!==null&&c.value!=="tools",onEditStart:d[16]||(d[16]=u=>i("tools")),onEditCancel:a,onEditAccept:d[17]||(d[17]=u=>r("tools",u))},null,8,["modelValue","options","disabled"]),w(L,{modelValue:l.value.skills,"onUpdate:modelValue":d[18]||(d[18]=u=>l.value.skills=u),"field-type":"multiselect",label:"Skills",options:g,placeholder:"Select skills",disabled:!e.canEdit||c.value!==null&&c.value!=="skills",onEditStart:d[19]||(d[19]=u=>i("skills")),onEditCancel:a,onEditAccept:d[20]||(d[20]=u=>r("skills",u))},null,8,["modelValue","disabled"])]),m("div",bl,[d[25]||(d[25]=m("h4",{class:"mb-3 text-sm font-semibold text-text-primary uppercase tracking-wider"},"System Prompt",-1)),w(L,{modelValue:l.value.systemPrompt,"onUpdate:modelValue":d[21]||(d[21]=u=>l.value.systemPrompt=u),"field-type":"textarea",label:"System Prompt",placeholder:"The agent's system prompt (instructions)",disabled:!e.canEdit||c.value!==null&&c.value!=="systemPrompt",validation:[{type:"required"},{type:"minLength",param:20,message:"System prompt must be at least 20 characters"}],onEditStart:d[22]||(d[22]=u=>i("systemPrompt")),onEditCancel:a,onEditAccept:d[23]||(d[23]=u=>r("systemPrompt",u))},null,8,["modelValue","disabled"])])]))}},kl=X(hl,[["__scopeId","data-v-782fd5e0"]]),jt=de("commands",()=>{const e=x(new Map),t=x([]),n=x(!1),o=x(null),s=Ce();async function l(h,f,g,i){n.value=!0,o.value=null;try{if(!["project","user"].includes(h))throw new Error('Invalid scope: must be "project" or "user"');if(h==="project"&&!f)throw new Error("projectId is required for project scope");const a=h==="project"?await On(f,g,i):await Un(g,i);if(a.success){if(h==="project"){const r=e.value.get(f)||[],p=r.findIndex(d=>d.path===g);p!==-1&&(r[p]=a.command,e.value.set(f,[...r]))}else{const r=t.value.findIndex(p=>p.path===g);r!==-1&&(t.value[r]=a.command)}return s.success("Command updated successfully"),{success:!0,command:a.command}}else throw new Error(a.message||"Failed to update command")}catch(a){return o.value=a.message,s.error(`Failed to update command: ${a.message}`),a.isExpected||console.error("Error updating command:",a),{success:!1,error:a.message}}finally{n.value=!1}}async function c(h,f,g){n.value=!0,o.value=null;try{if(!["project","user"].includes(h))throw new Error('Invalid scope: must be "project" or "user"');if(h==="project"&&!f)throw new Error("projectId is required for project scope");const i=h==="project"?await Ln(f,g):await Fn(g);if(i.success){if(h==="project"){const r=(e.value.get(f)||[]).filter(p=>p.path!==g);e.value.set(f,r)}else t.value=t.value.filter(a=>a.path!==g);return s.success("Command deleted successfully"),{success:!0}}else throw new Error(i.message||"Failed to delete command")}catch(i){return o.value=i.message,s.error(`Failed to delete command: ${i.message}`),i.isExpected||console.error("Error deleting command:",i),{success:!1,error:i.message}}finally{n.value=!1}}async function v(h,f,g){try{if(!["project","user"].includes(h))throw new Error('Invalid scope: must be "project" or "user"');if(h==="project"&&!f)throw new Error("projectId is required for project scope");const i=h==="project"?await Hn(f,g):await Nn(g);if(i.success)return i.references||[];throw new Error(i.message||"Failed to get command references")}catch(i){return i.isExpected||console.error("Error getting command references:",i),[]}}return{projectCommands:e,userCommands:t,isLoading:n,error:o,updateCommand:l,deleteCommand:c,getCommandReferences:v}}),wl={class:"mb-6"},Cl={class:"mb-6"},xl={__name:"CommandDetailSection",props:{selectedItem:{type:Object,required:!0},canEdit:{type:Boolean,default:!1},editingField:{type:String,default:null},projectId:{type:String,default:null},scope:{type:String,default:null}},emits:["field-update","update:editing-field","command-updated"],setup(e,{emit:t}){const n=jt(),o=e,s=t,l=x({name:"",description:"",model:"inherit",allowedTools:[],argumentHint:"",disableModelInvocation:!1,content:""}),c=vt,v=lo,h=ze;Z(()=>o.selectedItem,a=>{a&&(l.value={name:a.name||"",description:a.description||"",model:a.model||"inherit",allowedTools:a.tools||[],argumentHint:a.argumentHint||"",disableModelInvocation:a.disableModelInvocation||!1,content:a.content||""})},{immediate:!0});const f=a=>{s("update:editing-field",a)},g=()=>{s("update:editing-field",null)},i=async(a,r)=>{if(o.canEdit)try{const p={[a]:r},d=o.selectedItem.namespace?`${o.selectedItem.namespace}/${o.selectedItem.name}.md`:`${o.selectedItem.name}.md`;(await n.updateCommand(o.scope,o.projectId,d,p)).success&&(l.value[a]=r,s("command-updated"))}finally{s("update:editing-field",null)}};return(a,r)=>(y(),C("div",null,[m("div",wl,[r[21]||(r[21]=m("h4",{class:"mb-3 text-sm font-semibold text-text-primary uppercase tracking-wider"},"Metadata",-1)),w(L,{modelValue:l.value.name,"onUpdate:modelValue":r[0]||(r[0]=p=>l.value.name=p),"field-type":"text",label:"Name",placeholder:"command-name",disabled:!e.canEdit||e.editingField!==null&&e.editingField!=="name",validation:[{type:"required"}],onEditStart:r[1]||(r[1]=p=>f("name")),onEditCancel:g,onEditAccept:r[2]||(r[2]=p=>i("name",p))},null,8,["modelValue","disabled"]),w(L,{modelValue:l.value.description,"onUpdate:modelValue":r[3]||(r[3]=p=>l.value.description=p),"field-type":"textarea",label:"Description",placeholder:"Brief description",disabled:!e.canEdit||e.editingField!==null&&e.editingField!=="description",onEditStart:r[4]||(r[4]=p=>f("description")),onEditCancel:g,onEditAccept:r[5]||(r[5]=p=>i("description",p))},null,8,["modelValue","disabled"]),w(L,{modelValue:l.value.model,"onUpdate:modelValue":r[6]||(r[6]=p=>l.value.model=p),"field-type":"selectbutton",label:"Model",options:A(c),disabled:!e.canEdit||e.editingField!==null&&e.editingField!=="model",onEditStart:r[7]||(r[7]=p=>f("model")),onEditCancel:g,onEditAccept:r[8]||(r[8]=p=>i("model",p))},null,8,["modelValue","options","disabled"]),w(L,{modelValue:l.value.allowedTools,"onUpdate:modelValue":r[9]||(r[9]=p=>l.value.allowedTools=p),"field-type":"multiselect",label:"Allowed Tools",options:A(h),placeholder:"Select allowed tools",disabled:!e.canEdit||e.editingField!==null&&e.editingField!=="allowedTools",onEditStart:r[10]||(r[10]=p=>f("allowedTools")),onEditCancel:g,onEditAccept:r[11]||(r[11]=p=>i("allowedTools",p))},null,8,["modelValue","options","disabled"]),e.canEdit||l.value.argumentHint?(y(),P(L,{key:0,modelValue:l.value.argumentHint,"onUpdate:modelValue":r[12]||(r[12]=p=>l.value.argumentHint=p),"field-type":"text",label:"Argument Hint",placeholder:"",disabled:!e.canEdit||e.editingField!==null&&e.editingField!=="argumentHint",onEditStart:r[13]||(r[13]=p=>f("argumentHint")),onEditCancel:g,onEditAccept:r[14]||(r[14]=p=>i("argumentHint",p))},null,8,["modelValue","disabled"])):j("",!0),e.canEdit||l.value.disableModelInvocation!==null?(y(),P(L,{key:1,modelValue:l.value.disableModelInvocation,"onUpdate:modelValue":r[15]||(r[15]=p=>l.value.disableModelInvocation=p),"field-type":"selectbutton",label:"Model Invocation",options:A(v),disabled:!e.canEdit||e.editingField!==null&&e.editingField!=="disableModelInvocation",onEditStart:r[16]||(r[16]=p=>f("disableModelInvocation")),onEditCancel:g,onEditAccept:r[17]||(r[17]=p=>i("disableModelInvocation",p))},null,8,["modelValue","options","disabled"])):j("",!0)]),m("div",Cl,[r[22]||(r[22]=m("h4",{class:"mb-3 text-sm font-semibold text-text-primary uppercase tracking-wider"},"Content",-1)),w(L,{modelValue:l.value.content,"onUpdate:modelValue":r[18]||(r[18]=p=>l.value.content=p),"field-type":"textarea",label:"Content",placeholder:"The command's content (instructions)",disabled:!e.canEdit||e.editingField!==null&&e.editingField!=="content",validation:[{type:"required"},{type:"minLength",param:10,message:"Content must be at least 10 characters"}],onEditStart:r[19]||(r[19]=p=>f("content")),onEditCancel:g,onEditAccept:r[20]||(r[20]=p=>i("content",p))},null,8,["modelValue","disabled"])])]))}},$l=X(xl,[["__scopeId","data-v-ff1e5a2d"]]),Tt=de("hooks",()=>{const e=x(new Map),t=x([]),n=x(!1),o=x(null),s=Ce();function l(a){return`${a.event}::${a.matcher||""}::${a.index||0}`}async function c(a,r,p,d){n.value=!0,o.value=null;try{if(!["project","user"].includes(d))throw new Error('Invalid scope: must be "project" or "user"');if(d==="project"&&!a)throw new Error("projectId is required for project scope");const u=d==="project"?await Rn(a,r,p):await Kn(r,p);if(u.success){if(d==="project"){const E=e.value.get(a)||[],M=E.findIndex(G=>l(G)===r);M!==-1&&(E[M]=u.hook,e.value.set(a,[...E]))}else{const E=t.value.findIndex(M=>l(M)===r);E!==-1&&(t.value[E]=u.hook)}const k=r.split("::")[0];return s.success(`${k} hook updated successfully`),{success:!0,hook:u.hook}}else throw new Error(u.error||u.message||"Failed to update hook")}catch(u){return o.value=u.message,s.error(`Failed to update hook: ${u.message}`),u.isExpected||console.error("Error updating hook:",u),{success:!1,error:u.message}}finally{n.value=!1}}async function v(a){n.value=!0,o.value=null;try{const r=await pt(a);if(r.hooks)return e.value.set(a,r.hooks),{success:!0,hooks:r.hooks};throw new Error("No hooks data in response")}catch(r){return o.value=r.message,r.isExpected||console.error("Error loading project hooks:",r),{success:!1,error:r.message}}finally{n.value=!1}}async function h(){n.value=!0,o.value=null;try{const a=await mt();if(a.hooks)return t.value=a.hooks,{success:!0,hooks:a.hooks};throw new Error("No hooks data in response")}catch(a){return o.value=a.message,a.isExpected||console.error("Error loading user hooks:",a),{success:!1,error:a.message}}finally{n.value=!1}}async function f(a,r,p="project"){n.value=!0,o.value=null;try{if(!["project","user"].includes(p))throw new Error('Invalid scope: must be "project" or "user"');if(p==="project"&&!a)throw new Error("projectId is required for project scope");const d=p==="project"?await qn(a,r):await zn(r);if(d.success){p==="project"?await v(a):await h();const u=r.split("::")[0];return s.success(`${u} hook deleted successfully`),{success:!0}}else throw new Error(d.error||d.message||"Failed to delete hook")}catch(d){return o.value=d.message,s.error(`Failed to delete hook: ${d.message}`),d.isExpected||console.error("Error deleting hook:",d),{success:!1,error:d.message}}finally{n.value=!1}}function g(a){return e.value.get(a)||[]}function i(){e.value.clear(),t.value=[],o.value=null}return{projectHooks:e,userHooks:t,isLoading:n,error:o,buildHookId:l,updateHook:c,deleteHook:f,loadProjectHooks:v,loadUserHooks:h,getProjectHooksCache:g,clearCache:i}}),El={class:"mb-6"},Al={class:"my-2 text-sm text-text-secondary leading-relaxed"},Sl={__name:"HookDetailSection",props:{selectedItem:{type:Object,required:!0},canEdit:{type:Boolean,default:!1},editingField:{type:String,default:null},projectId:{type:String,default:null},scope:{type:String,default:null}},emits:["field-update","update:editing-field","hook-updated"],setup(e,{emit:t}){const n=e,o=t,s=Tt(),l=x({event:"",matcher:"",type:"command",command:"",timeout:3e4,enabled:!0,suppressOutput:!1,continue:!0}),c=x(null),v=ao,h=yt,f=x({matcherBasedEvents:["PreToolUse","PostToolUse","PermissionRequest","Notification"],promptSupportedEvents:["PreToolUse","PermissionRequest","UserPromptSubmit","Stop","SubagentStop"]});qe(async()=>{try{const d=await fetch(`${xt.BASE_URL}/api/hooks/events`);if(!d.ok)throw new Error(`HTTP ${d.status}: ${d.statusText}`);const u=await d.json();u.matcherBasedEvents&&u.promptSupportedEvents&&(f.value={matcherBasedEvents:u.matcherBasedEvents,promptSupportedEvents:u.promptSupportedEvents})}catch(d){console.warn("Failed to fetch hook event metadata, using fallbacks:",d)}});const g=d=>f.value.matcherBasedEvents.includes(d),i=d=>f.value.promptSupportedEvents.includes(d);Z(()=>n.selectedItem,d=>{d&&(l.value={event:d.event||"",matcher:d.matcher||"",type:d.type||"command",command:d.command||"",timeout:d.timeout||3e4,enabled:d.enabled!==!1,suppressOutput:d.suppressOutput||!1,continue:d.continue!==!1},c.value=null)},{immediate:!0});const a=d=>{c.value=d,o("update:editing-field",d)},r=()=>{c.value=null,o("update:editing-field",null)},p=async(d,u)=>{if(n.canEdit)try{const k={[d]:u},E=`${n.selectedItem.event}::${n.selectedItem.matcher||""}::${n.selectedItem.index||0}`;(await s.updateHook(n.projectId,E,k,n.scope)).success&&(l.value[d]=u,o("hook-updated"))}finally{c.value=null,o("update:editing-field",null)}};return(d,u)=>(y(),C("div",null,[m("div",El,[u[23]||(u[23]=m("h4",{class:"mb-3 text-sm font-semibold text-text-primary uppercase tracking-wider"},"Metadata",-1)),m("p",Al,[u[21]||(u[21]=m("strong",{class:"text-text-primary"},"Event:",-1)),te(" "+D(e.selectedItem.event)+" ",1),u[22]||(u[22]=m("span",{class:"text-text-muted text-xs ml-2"},"(read-only)",-1))]),g(e.selectedItem.event)?(y(),P(L,{key:0,modelValue:l.value.matcher,"onUpdate:modelValue":u[0]||(u[0]=k=>l.value.matcher=k),"field-type":"text",label:"Matcher",placeholder:"Bash|Read|Write or *",disabled:!e.canEdit||c.value!==null&&c.value!=="matcher",validation:[{type:"required"}],onEditStart:u[1]||(u[1]=k=>a("matcher")),onEditCancel:r,onEditAccept:u[2]||(u[2]=k=>p("matcher",k))},null,8,["modelValue","disabled"])):j("",!0),w(L,{modelValue:l.value.type,"onUpdate:modelValue":u[3]||(u[3]=k=>l.value.type=k),"field-type":"selectbutton",label:"Type",options:i(l.value.event)?A(v):[{label:"Command",value:"command"}],disabled:!e.canEdit||c.value!==null&&c.value!=="type",onEditStart:u[4]||(u[4]=k=>a("type")),onEditCancel:r,onEditAccept:u[5]||(u[5]=k=>p("type",k))},null,8,["modelValue","options","disabled"]),w(L,{modelValue:l.value.command,"onUpdate:modelValue":u[6]||(u[6]=k=>l.value.command=k),"field-type":"textarea",label:"Command",placeholder:"Shell command to execute",disabled:!e.canEdit||c.value!==null&&c.value!=="command",validation:[{type:"required"}],onEditStart:u[7]||(u[7]=k=>a("command")),onEditCancel:r,onEditAccept:u[8]||(u[8]=k=>p("command",k))},null,8,["modelValue","disabled"]),w(L,{modelValue:l.value.timeout,"onUpdate:modelValue":u[9]||(u[9]=k=>l.value.timeout=k),"field-type":"number",label:"Timeout (ms)",placeholder:"30000",disabled:!e.canEdit||c.value!==null&&c.value!=="timeout",onEditStart:u[10]||(u[10]=k=>a("timeout")),onEditCancel:r,onEditAccept:u[11]||(u[11]=k=>p("timeout",k))},null,8,["modelValue","disabled"]),w(L,{modelValue:l.value.enabled,"onUpdate:modelValue":u[12]||(u[12]=k=>l.value.enabled=k),"field-type":"selectbutton",label:"Enabled",options:A(h),disabled:!e.canEdit||c.value!==null&&c.value!=="enabled",onEditStart:u[13]||(u[13]=k=>a("enabled")),onEditCancel:r,onEditAccept:u[14]||(u[14]=k=>p("enabled",k))},null,8,["modelValue","options","disabled"]),w(L,{modelValue:l.value.suppressOutput,"onUpdate:modelValue":u[15]||(u[15]=k=>l.value.suppressOutput=k),"field-type":"selectbutton",label:"Suppress Output",options:A(h),disabled:!e.canEdit||c.value!==null&&c.value!=="suppressOutput",onEditStart:u[16]||(u[16]=k=>a("suppressOutput")),onEditCancel:r,onEditAccept:u[17]||(u[17]=k=>p("suppressOutput",k))},null,8,["modelValue","options","disabled"]),w(L,{modelValue:l.value.continue,"onUpdate:modelValue":u[18]||(u[18]=k=>l.value.continue=k),"field-type":"selectbutton",label:"Continue on Error",options:A(h),disabled:!e.canEdit||c.value!==null&&c.value!=="continue",onEditStart:u[19]||(u[19]=k=>a("continue")),onEditCancel:r,onEditAccept:u[20]||(u[20]=k=>p("continue",k))},null,8,["modelValue","options","disabled"])])]))}};var Il=` .p-inputchips { display: inline-flex; } .p-inputchips-input { margin: 0; list-style-type: none; cursor: text; overflow: hidden; display: flex; align-items: center; flex-wrap: wrap; padding: calc(dt('inputchips.padding.y') / 2) dt('inputchips.padding.x'); gap: calc(dt('inputchips.padding.y') / 2); color: dt('inputchips.color'); background: dt('inputchips.background'); border: 1px solid dt('inputchips.border.color'); border-radius: dt('inputchips.border.radius'); width: 100%; transition: background dt('inputchips.transition.duration'), color dt('inputchips.transition.duration'), border-color dt('inputchips.transition.duration'), outline-color dt('inputchips.transition.duration'), box-shadow dt('inputchips.transition.duration'); outline-color: transparent; box-shadow: dt('inputchips.shadow'); } .p-inputchips:not(.p-disabled):hover .p-inputchips-input { border-color: dt('inputchips.hover.border.color'); } .p-inputchips:not(.p-disabled).p-focus .p-inputchips-input { border-color: dt('inputchips.focus.border.color'); box-shadow: dt('inputchips.focus.ring.shadow'); outline: dt('inputchips.focus.ring.width') dt('inputchips.focus.ring.style') dt('inputchips.focus.ring.color'); outline-offset: dt('inputchips.focus.ring.offset'); } .p-inputchips.p-invalid .p-inputchips-input { border-color: dt('inputchips.invalid.border.color'); } .p-variant-filled.p-inputchips-input { background: dt('inputchips.filled.background'); } .p-inputchips:not(.p-disabled).p-focus .p-variant-filled.p-inputchips-input { background: dt('inputchips.filled.focus.background'); } .p-inputchips.p-disabled .p-inputchips-input { opacity: 1; background: dt('inputchips.disabled.background'); color: dt('inputchips.disabled.color'); } .p-inputchips-chip.p-chip { padding-top: calc(dt('inputchips.padding.y') / 2); padding-bottom: calc(dt('inputchips.padding.y') / 2); border-radius: dt('inputchips.chip.border.radius'); transition: background dt('inputchips.transition.duration'), color dt('inputchips.transition.duration'); } .p-inputchips-chip-item.p-focus .p-inputchips-chip { background: dt('inputchips.chip.focus.background'); color: dt('inputchips.chip.focus.color'); } .p-inputchips-input:has(.p-inputchips-chip) { padding-left: calc(dt('inputchips.padding.y') / 2); padding-right: calc(dt('inputchips.padding.y') / 2); } .p-inputchips-input-item { flex: 1 1 auto; display: inline-flex; padding-top: calc(dt('inputchips.padding.y') / 2); padding-bottom: calc(dt('inputchips.padding.y') / 2); } .p-inputchips-input-item input { border: 0 none; outline: 0 none; background: transparent; margin: 0; padding: 0; box-shadow: none; border-radius: 0; width: 100%; font-family: inherit; font-feature-settings: inherit; font-size: 1rem; color: inherit; } .p-inputchips-input-item input::placeholder { color: dt('inputchips.placeholder.color'); } `,Pl={root:function(t){var n=t.instance,o=t.props;return["p-inputchips p-component p-inputwrapper",{"p-disabled":o.disabled,"p-invalid":o.invalid,"p-focus":n.focused,"p-inputwrapper-filled":o.modelValue&&o.modelValue.length||n.inputValue&&n.inputValue.length,"p-inputwrapper-focus":n.focused}]},input:function(t){var n=t.props,o=t.instance;return["p-inputchips-input",{"p-variant-filled":n.variant?n.variant==="filled":o.$primevue.config.inputStyle==="filled"||o.$primevue.config.inputVariant==="filled"}]},chipItem:function(t){var n=t.state,o=t.index;return["p-inputchips-chip-item",{"p-focus":n.focusedIndex===o}]},pcChip:"p-inputchips-chip",chipIcon:"p-inputchips-chip-icon",inputItem:"p-inputchips-input-item"},jl=ne.extend({name:"inputchips",style:Il,classes:Pl}),Tl={name:"BaseInputChips",extends:ee,props:{modelValue:{type:Array,default:null},max:{type:Number,default:null},separator:{type:[String,Object],default:null},addOnBlur:{type:Boolean,default:null},allowDuplicate:{type:Boolean,default:!0},placeholder:{type:String,default:null},variant:{type:String,default:null},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},inputId:{type:String,default:null},inputClass:{type:[String,Object],default:null},inputStyle:{type:Object,default:null},inputProps:{type:null,default:null},removeTokenIcon:{type:String,default:void 0},chipIcon:{type:String,default:void 0},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:jl,provide:function(){return{$pcInputChips:this,$parentInstance:this}}};function Se(e){return Bl(e)||Ml(e)||Dl(e)||Vl()}function Vl(){throw new TypeError(`Invalid attempt to spread non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Dl(e,t){if(e){if(typeof e=="string")return He(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?He(e,t):void 0}}function Ml(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Bl(e){if(Array.isArray(e))return He(e)}function He(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,o=Array(t);n0&&(this.focusedIndex!==null?this.removeItem(t,this.focusedIndex):this.removeItem(t,this.modelValue.length-1));break;case"Enter":case"NumpadEnter":n&&n.trim().length&&!this.maxedOut&&this.addItem(t,n,!0);break;case"ArrowLeft":n.length===0&&this.modelValue&&this.modelValue.length>0&&this.$refs.container.focus();break;case"ArrowRight":t.stopPropagation();break;default:this.separator&&(this.separator===t.key||t.key.match(this.separator))&&this.addItem(t,n,!0);break}},onPaste:function(t){var n=this;if(this.separator){var o=this.separator.replace("\\n",` `).replace("\\r","\r").replace("\\t"," "),s=(t.clipboardData||window.clipboardData).getData("Text");if(s){var l=this.modelValue||[],c=s.split(o);c=c.filter(function(v){return n.allowDuplicate||l.indexOf(v)===-1}),l=[].concat(Se(l),Se(c)),this.updateModel(t,l,!0)}}},onContainerFocus:function(){this.focused=!0},onContainerBlur:function(){this.focusedIndex=-1,this.focused=!1},onContainerKeyDown:function(t){switch(t.code){case"ArrowLeft":this.onArrowLeftKeyOn(t);break;case"ArrowRight":this.onArrowRightKeyOn(t);break;case"Backspace":this.onBackspaceKeyOn(t);break}},onArrowLeftKeyOn:function(){this.inputValue.length===0&&this.modelValue&&this.modelValue.length>0&&(this.focusedIndex=this.focusedIndex===null?this.modelValue.length-1:this.focusedIndex-1,this.focusedIndex<0&&(this.focusedIndex=0))},onArrowRightKeyOn:function(){this.inputValue.length===0&&this.modelValue&&this.modelValue.length>0&&(this.focusedIndex===this.modelValue.length-1?(this.focusedIndex=null,this.$refs.input.focus()):this.focusedIndex++)},onBackspaceKeyOn:function(t){this.focusedIndex!==null&&this.removeItem(t,this.focusedIndex)},updateModel:function(t,n,o){var s=this;this.$emit("update:modelValue",n),this.$emit("add",{originalEvent:t,value:n}),this.$refs.input.value="",this.inputValue="",setTimeout(function(){s.maxedOut&&(s.focused=!1)},0),o&&t.preventDefault()},addItem:function(t,n,o){if(n&&n.trim().length){var s=this.modelValue?Se(this.modelValue):[];(this.allowDuplicate||s.indexOf(n)===-1)&&(s.push(n),this.updateModel(t,s,o))}},removeItem:function(t,n){if(!this.disabled){var o=Se(this.modelValue),s=o.splice(n,1);this.focusedIndex=null,this.$refs.input.focus(),this.$emit("update:modelValue",o),this.$emit("remove",{originalEvent:t,value:s})}}},computed:{maxedOut:function(){return this.max&&this.modelValue&&this.max===this.modelValue.length},focusedOptionId:function(){return this.focusedIndex!==null?"".concat(this.$id,"_inputchips_item_").concat(this.focusedIndex):null}},components:{Chip:ro}};function ke(e){"@babel/helpers - typeof";return ke=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ke(e)}function nt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,o)}return n}function ot(e){for(var t=1;t[]},disabled:{type:Boolean,default:!1},placeholder:{type:String,default:"Add argument..."}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,o=t,s=x([...n.modelValue]);Z(()=>n.modelValue,c=>{JSON.stringify(c)!==JSON.stringify(s.value)&&(s.value=[...c||[]])},{deep:!0});function l(c){const v=(c||[]).map(h=>String(h).trim()).filter(Boolean);o("update:modelValue",v)}return(c,v)=>(y(),C("div",ql,[w(A(Kl),{modelValue:s.value,"onUpdate:modelValue":[v[0]||(v[0]=h=>s.value=h),l],disabled:e.disabled,placeholder:e.placeholder,separator:",",class:"w-full"},null,8,["modelValue","disabled","placeholder"]),v[1]||(v[1]=m("small",{class:"text-text-tertiary text-xs mt-1 block"}," Press Enter to add argument. Order is preserved. ",-1))]))}},Wl=X(zl,[["__scopeId","data-v-b1a4ff70"]]),Zl={class:"key-value-editor"},Gl={key:0,class:"text-text-tertiary text-sm italic mb-2"},Yl={__name:"KeyValueEditor",props:{modelValue:{type:Object,default:()=>({})},disabled:{type:Boolean,default:!1},keyPlaceholder:{type:String,default:"Key"},valuePlaceholder:{type:String,default:"Value"}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,o=t,s=x({...n.modelValue}),l=x([]),c=x([]);function v(){const r=Object.entries(s.value);l.value=r.map(([p])=>p),c.value=r.map(([,p])=>p)}v(),Z(()=>n.modelValue,r=>{JSON.stringify(r)!==JSON.stringify(s.value)&&(s.value={...r||{}},v())},{deep:!0});function h(r,p){const d=l.value[r],u=c.value[r];if(p===d||!p.trim())return;const k={};Object.entries(s.value).forEach(([E,M],G)=>{G===r?k[p.trim()]=u:k[E]=M}),s.value=k,l.value[r]=p.trim(),a()}function f(r,p){const d=l.value[r];d&&(s.value[d]=p,c.value[r]=p,a())}function g(){let r="NEW_KEY",p=1;for(;s.value[r];)r=`NEW_KEY_${p}`,p++;s.value[r]="",l.value.push(r),c.value.push(""),a()}function i(r){const p=l.value[r];delete s.value[p],l.value.splice(r,1),c.value.splice(r,1),a()}function a(){const r={};Object.entries(s.value).forEach(([p,d])=>{p&&p.trim()&&(r[p.trim()]=d)}),o("update:modelValue",r)}return(r,p)=>(y(),C("div",Zl,[(y(!0),C(z,null,_(s.value,(d,u,k)=>(y(),C("div",{key:k,class:"pair-row flex gap-2 mb-2 items-center"},[w(A(tt),{modelValue:l.value[k],"onUpdate:modelValue":E=>l.value[k]=E,placeholder:e.keyPlaceholder,disabled:e.disabled,class:"flex-1 font-mono text-sm",onBlur:E=>h(k,E.target.value)},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","onBlur"]),w(A(tt),{modelValue:c.value[k],"onUpdate:modelValue":E=>c.value[k]=E,placeholder:e.valuePlaceholder,disabled:e.disabled,class:"flex-1 font-mono text-sm",onBlur:E=>f(k,E.target.value)},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","onBlur"]),e.disabled?j("",!0):(y(),P(A(q),{key:0,icon:"pi pi-trash",severity:"danger",text:"",rounded:"",size:"small","aria-label":`Remove ${l.value[k]||"pair"}`,onClick:E=>i(k)},null,8,["aria-label","onClick"]))]))),128)),Object.keys(s.value).length===0?(y(),C("div",Gl,' No entries. Click "Add" to create one. ')):j("",!0),e.disabled?j("",!0):(y(),P(A(q),{key:1,label:"Add",icon:"pi pi-plus",severity:"secondary",size:"small",outlined:"",onClick:g}))]))}},lt=X(Yl,[["__scopeId","data-v-a57925ab"]]),Dt=de("mcp",()=>{const e=x(new Map),t=x([]),n=x(!1),o=x(null),s=Ce();async function l(i,a,r,p){n.value=!0,o.value=null;try{if(!["project","user"].includes(p))throw new Error('Invalid scope: must be "project" or "user"');if(p==="project"&&!i)throw new Error("projectId is required for project scope");const d=p==="project"?await Wn(i,a,r):await Zn(a,r);if(d.success){if(p==="project"){const u=e.value.get(i)||[],k=u.findIndex(E=>E.name===a);k!==-1&&(u[k]=d.server,e.value.set(i,[...u]))}else{const u=t.value.findIndex(k=>k.name===a);u!==-1&&(t.value[u]=d.server)}return s.success(`MCP server "${a}" updated successfully`),{success:!0,server:d.server}}else throw new Error(d.error||d.message||"Failed to update MCP server")}catch(d){return o.value=d.message,s.error(`Failed to update MCP server: ${d.message}`),d.isExpected||console.error("Error updating MCP server:",d),{success:!1,error:d.message}}finally{n.value=!1}}async function c(i){n.value=!0,o.value=null;try{const a=await ft(i);if(a.mcpServers)return e.value.set(i,a.mcpServers),{success:!0,servers:a.mcpServers};throw new Error("No MCP servers data in response")}catch(a){return o.value=a.message,a.isExpected||console.error("Error loading project MCP servers:",a),{success:!1,error:a.message}}finally{n.value=!1}}async function v(){n.value=!0,o.value=null;try{const i=await gt();if(i.mcp)return t.value=i.mcp,{success:!0,servers:i.mcp};throw new Error("No MCP servers data in response")}catch(i){return o.value=i.message,i.isExpected||console.error("Error loading user MCP servers:",i),{success:!1,error:i.message}}finally{n.value=!1}}async function h(i,a,r){n.value=!0,o.value=null;try{if(!["project","user"].includes(r))throw new Error('Invalid scope: must be "project" or "user"');if(r==="project"&&!i)throw new Error("projectId is required for project scope");const p=r==="project"?await Gn(i,a):await Yn(a);if(p.success){if(r==="project"){const u=(e.value.get(i)||[]).filter(k=>k.name!==a);e.value.set(i,u)}else t.value=t.value.filter(d=>d.name!==a);return s.success(`MCP server "${a}" deleted successfully`),{success:!0,message:p.message,references:p.references}}else throw new Error(p.message||"Failed to delete MCP server")}catch(p){return o.value=p.message,s.error(`Failed to delete MCP server: ${p.message}`),p.isExpected||console.error("Error deleting MCP server:",p),{success:!1,error:p.message}}finally{n.value=!1}}function f(i){return e.value.get(i)||[]}function g(){e.value.clear(),t.value=[],o.value=null}return{projectMcpServers:e,userMcpServers:t,isLoading:n,error:o,updateMcpServer:l,deleteMcpServer:h,loadProjectMcp:c,loadUserMcp:v,getProjectMcpCache:f,clearCache:g}}),Jl={class:"mb-6"},Xl={class:"my-2 text-sm text-text-secondary leading-relaxed"},Ql={class:"my-3"},_l={class:"my-3"},ea={class:"my-3"},ta={__name:"McpDetailSection",props:{selectedItem:{type:Object,required:!0},canEdit:{type:Boolean,default:!1},editingField:{type:String,default:null},projectId:{type:String,default:null},scope:{type:String,default:null}},emits:["field-update","update:editing-field","mcp-updated"],setup(e,{emit:t}){const n=e,o=t,s=Dt(),l=x(n.editingField),c=x({name:"",type:"stdio",command:"",args:[],env:{},url:"",headers:{},enabled:!0,timeout:null,retries:null}),v=yt;Z(()=>n.selectedItem,i=>{i&&(c.value={name:i.name||"",type:i.type||i.transport||i.transportType||"stdio",command:i.command||"",args:i.args||[],env:i.env||{},url:i.url||"",headers:i.headers||{},enabled:i.enabled!==!1,timeout:i.timeout||null,retries:i.retries||null},l.value=null)},{immediate:!0}),Z(()=>n.editingField,i=>{l.value=i});const h=i=>{l.value=i,o("update:editing-field",i)},f=()=>{l.value=null,o("update:editing-field",null)},g=async(i,a)=>{if(n.canEdit)try{const r={[i]:a};(await s.updateMcpServer(n.projectId,n.selectedItem.name,r,n.scope)).success&&(c.value[i]=a,o("mcp-updated"))}finally{l.value=null,o("update:editing-field",null)}};return(i,a)=>(y(),C("div",null,[m("div",Jl,[a[29]||(a[29]=m("h4",{class:"mb-3 text-sm font-semibold text-text-primary uppercase tracking-wider"},"Metadata",-1)),w(L,{modelValue:c.value.name,"onUpdate:modelValue":a[0]||(a[0]=r=>c.value.name=r),"field-type":"text",label:"Name",placeholder:"server-name",disabled:!e.canEdit||l.value!==null&&l.value!=="name",validation:[{type:"required"},{type:"pattern",param:/^[a-zA-Z0-9_-]+$/,message:"Name can only contain letters, numbers, hyphens, and underscores"}],onEditStart:a[1]||(a[1]=r=>h("name")),onEditCancel:f,onEditAccept:a[2]||(a[2]=r=>g("name",r))},null,8,["modelValue","disabled"]),m("p",Xl,[a[24]||(a[24]=m("strong",{class:"text-text-primary"},"Transport:",-1)),te(" "+D(c.value.type)+" ",1),a[25]||(a[25]=m("span",{class:"text-text-tertiary text-xs"},"(read-only)",-1))]),c.value.type==="stdio"?(y(),C(z,{key:0},[w(L,{modelValue:c.value.command,"onUpdate:modelValue":a[3]||(a[3]=r=>c.value.command=r),"field-type":"text",label:"Command",placeholder:"node",disabled:!e.canEdit||l.value!==null&&l.value!=="command",validation:[{type:"required"}],onEditStart:a[4]||(a[4]=r=>h("command")),onEditCancel:f,onEditAccept:a[5]||(a[5]=r=>g("command",r))},null,8,["modelValue","disabled"]),m("div",Ql,[a[26]||(a[26]=m("div",{class:"text-text-primary font-bold text-sm mb-2"},"Arguments",-1)),w(Wl,{modelValue:c.value.args,"onUpdate:modelValue":[a[6]||(a[6]=r=>c.value.args=r),a[7]||(a[7]=r=>g("args",r))],disabled:!e.canEdit,placeholder:"Add argument..."},null,8,["modelValue","disabled"])]),m("div",_l,[a[27]||(a[27]=m("div",{class:"text-text-primary font-bold text-sm mb-2"},"Environment Variables",-1)),w(lt,{modelValue:c.value.env,"onUpdate:modelValue":[a[8]||(a[8]=r=>c.value.env=r),a[9]||(a[9]=r=>g("env",r))],disabled:!e.canEdit,"key-placeholder":"VAR_NAME","value-placeholder":"value"},null,8,["modelValue","disabled"])])],64)):j("",!0),c.value.type==="http"||c.value.type==="sse"?(y(),C(z,{key:1},[w(L,{modelValue:c.value.url,"onUpdate:modelValue":a[10]||(a[10]=r=>c.value.url=r),"field-type":"text",label:"URL",placeholder:"https://example.com",disabled:!e.canEdit||l.value!==null&&l.value!=="url",validation:[{type:"required"}],onEditStart:a[11]||(a[11]=r=>h("url")),onEditCancel:f,onEditAccept:a[12]||(a[12]=r=>g("url",r))},null,8,["modelValue","disabled"]),m("div",ea,[a[28]||(a[28]=m("div",{class:"text-text-primary font-bold text-sm mb-2"},"Headers",-1)),w(lt,{modelValue:c.value.headers,"onUpdate:modelValue":[a[13]||(a[13]=r=>c.value.headers=r),a[14]||(a[14]=r=>g("headers",r))],disabled:!e.canEdit,"key-placeholder":"Header-Name","value-placeholder":"value"},null,8,["modelValue","disabled"])])],64)):j("",!0),w(L,{modelValue:c.value.enabled,"onUpdate:modelValue":a[15]||(a[15]=r=>c.value.enabled=r),"field-type":"selectbutton",label:"Enabled",options:A(v),disabled:!e.canEdit||l.value!==null&&l.value!=="enabled",onEditStart:a[16]||(a[16]=r=>h("enabled")),onEditCancel:f,onEditAccept:a[17]||(a[17]=r=>g("enabled",r))},null,8,["modelValue","options","disabled"]),e.canEdit||c.value.timeout!==null?(y(),P(L,{key:2,modelValue:c.value.timeout,"onUpdate:modelValue":a[18]||(a[18]=r=>c.value.timeout=r),"field-type":"number",label:"Timeout (ms)",placeholder:"30000",disabled:!e.canEdit||l.value!==null&&l.value!=="timeout",onEditStart:a[19]||(a[19]=r=>h("timeout")),onEditCancel:f,onEditAccept:a[20]||(a[20]=r=>g("timeout",r))},null,8,["modelValue","disabled"])):j("",!0),e.canEdit||c.value.retries!==null?(y(),P(L,{key:3,modelValue:c.value.retries,"onUpdate:modelValue":a[21]||(a[21]=r=>c.value.retries=r),"field-type":"number",label:"Retries",placeholder:"3",disabled:!e.canEdit||l.value!==null&&l.value!=="retries",onEditStart:a[22]||(a[22]=r=>h("retries")),onEditCancel:f,onEditAccept:a[23]||(a[23]=r=>g("retries",r))},null,8,["modelValue","disabled"])):j("",!0)])]))}},Mt=de("skills",()=>{const e=x(new Map),t=x([]),n=x(!1),o=x(null),s=Ce();async function l(i,a,r,p){n.value=!0,o.value=null;try{if(!["project","user"].includes(p))throw new Error('Invalid scope: must be "project" or "user"');if(p==="project"&&!i)throw new Error("projectId is required for project scope");const d=p==="project"?await ht(i,a,r):await kt(a,r);if(d.success){if(p==="project"){const u=e.value.get(i)||[],k=u.findIndex(E=>(E.directoryPath?E.directoryPath.split("/").pop():E.name)===a);k!==-1&&(u[k]=d.skill,e.value.set(i,[...u]))}else{const u=t.value.findIndex(k=>(k.directoryPath?k.directoryPath.split("/").pop():k.name)===a);u!==-1&&(t.value[u]=d.skill)}return s.success(`Skill "${a}" updated successfully`),d.warnings&&d.warnings.length>0&&s.warn(d.warnings[0]),{success:!0,skill:d.skill}}else throw new Error(d.message||"Failed to update skill")}catch(d){return o.value=d.message,s.error(`Failed to update skill: ${d.message}`),d.isExpected||console.error("Error updating skill:",d),{success:!1,error:d.message}}finally{n.value=!1}}async function c(i,a,r){n.value=!0,o.value=null;try{if(!["project","user"].includes(r))throw new Error('Invalid scope: must be "project" or "user"');if(r==="project"&&!i)throw new Error("projectId is required for project scope");const p=r==="project"?await wt(i,a):await Ct(a);if(p.success){if(r==="project"){const u=(e.value.get(i)||[]).filter(k=>(k.directoryPath?k.directoryPath.split("/").pop():k.name)!==a);e.value.set(i,u)}else t.value=t.value.filter(d=>(d.directoryPath?d.directoryPath.split("/").pop():d.name)!==a);return s.success(`Skill "${a}" deleted successfully`),{success:!0}}else throw new Error(p.message||"Failed to delete skill")}catch(p){return o.value=p.message,s.error(`Failed to delete skill: ${p.message}`),p.isExpected||console.error("Error deleting skill:",p),{success:!1,error:p.message}}finally{n.value=!1}}async function v(i){n.value=!0,o.value=null;try{const a=await We(i);if(a.skills)return e.value.set(i,a.skills),{success:!0,skills:a.skills};throw new Error("No skills data in response")}catch(a){return o.value=a.message,a.isExpected||console.error("Error loading project skills:",a),{success:!1,error:a.message}}finally{n.value=!1}}async function h(){n.value=!0,o.value=null;try{const i=await Ze();if(i.skills)return t.value=i.skills,{success:!0,skills:i.skills};throw new Error("No skills data in response")}catch(i){return o.value=i.message,i.isExpected||console.error("Error loading user skills:",i),{success:!1,error:i.message}}finally{n.value=!1}}function f(i){return e.value.get(i)||[]}function g(){e.value.clear(),t.value=[],o.value=null}return{projectSkills:e,userSkills:t,isLoading:n,error:o,updateSkill:l,deleteSkill:c,loadProjectSkills:v,loadUserSkills:h,getProjectSkillsCache:f,clearCache:g}});var Ye={name:"ChevronUpIcon",extends:Re};function na(e){return ra(e)||aa(e)||la(e)||oa()}function oa(){throw new TypeError(`Invalid attempt to spread non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function la(e,t){if(e){if(typeof e=="string")return Ne(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ne(e,t):void 0}}function aa(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function ra(e){if(Array.isArray(e))return Ne(e)}function Ne(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,o=Array(t);n1&&arguments[1]!==void 0?arguments[1]:!1,o=n?t:t.nextElementSibling;return o?et(o,"data-p-disabled")?this.findNextPanel(o):this.findHeader(o):null},findPrevPanel:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,o=n?t:t.previousElementSibling;return o?et(o,"data-p-disabled")?this.findPrevPanel(o):this.findHeader(o):null},findFirstPanel:function(){return this.findNextPanel(this.$pcAccordion.$el.firstElementChild,!0)},findLastPanel:function(){return this.findPrevPanel(this.$pcAccordion.$el.lastElementChild,!0)},changeActiveValue:function(){this.$pcAccordion.updateValue(this.$pcAccordionPanel.value)},changeFocusedPanel:function(t,n){it(this.findHeader(n))}},computed:{id:function(){return"".concat(this.$pcAccordion.$id,"_accordionheader_").concat(this.$pcAccordionPanel.value)},ariaControls:function(){return"".concat(this.$pcAccordion.$id,"_accordioncontent_").concat(this.$pcAccordionPanel.value)},attrs:function(){return $(this.asAttrs,this.a11yAttrs,this.ptmi("root",this.ptParams))},asAttrs:function(){return this.as==="BUTTON"?{type:"button",disabled:this.$pcAccordionPanel.disabled}:void 0},a11yAttrs:function(){return{id:this.id,tabindex:this.$pcAccordion.tabindex,"aria-expanded":this.$pcAccordionPanel.active,"aria-controls":this.ariaControls,"data-pc-name":"accordionheader","data-p-disabled":this.$pcAccordionPanel.disabled,"data-p-active":this.$pcAccordionPanel.active,onFocus:this.onFocus,onKeydown:this.onKeydown}},ptParams:function(){return{context:{active:this.$pcAccordionPanel.active}}},dataP:function(){return Ie({active:this.$pcAccordionPanel.active})}},components:{ChevronUpIcon:Ye,ChevronDownIcon:uo},directives:{ripple:at}};function ga(e,t,n,o,s,l){var c=Pe("ripple");return e.asChild?H(e.$slots,"default",{key:1,class:N(e.cx("root")),active:l.$pcAccordionPanel.active,a11yAttrs:l.a11yAttrs,onClick:l.onClick}):ae((y(),P(W(e.as),$({key:0,"data-p":l.dataP,class:e.cx("root"),onClick:l.onClick},l.attrs),{default:T(function(){return[H(e.$slots,"default",{active:l.$pcAccordionPanel.active}),H(e.$slots,"toggleicon",{active:l.$pcAccordionPanel.active,class:N(e.cx("toggleicon"))},function(){return[l.$pcAccordionPanel.active?(y(),P(W(l.$pcAccordion.$slots.collapseicon?l.$pcAccordion.$slots.collapseicon:l.$pcAccordion.collapseIcon?"span":"ChevronUpIcon"),$({key:0,class:[l.$pcAccordion.collapseIcon,e.cx("toggleicon")],"aria-hidden":"true"},e.ptm("toggleicon",l.ptParams)),null,16,["class"])):(y(),P(W(l.$pcAccordion.$slots.expandicon?l.$pcAccordion.$slots.expandicon:l.$pcAccordion.expandIcon?"span":"ChevronDownIcon"),$({key:1,class:[l.$pcAccordion.expandIcon,e.cx("toggleicon")],"aria-hidden":"true"},e.ptm("toggleicon",l.ptParams)),null,16,["class"]))]})]}),_:3},16,["data-p","class","onClick"])),[[c]])}Xe.render=ga;var va={root:function(t){var n=t.instance,o=t.props;return["p-accordionpanel",{"p-accordionpanel-active":n.active,"p-disabled":o.disabled}]}},ya=ne.extend({name:"accordionpanel",classes:va}),ba={name:"BaseAccordionPanel",extends:ee,props:{value:{type:[String,Number],default:void 0},disabled:{type:Boolean,default:!1},as:{type:[String,Object],default:"DIV"},asChild:{type:Boolean,default:!1}},style:ya,provide:function(){return{$pcAccordionPanel:this,$parentInstance:this}}},Qe={name:"AccordionPanel",extends:ba,inheritAttrs:!1,inject:["$pcAccordion"],computed:{active:function(){return this.$pcAccordion.isItemActive(this.value)},attrs:function(){return $(this.a11yAttrs,this.ptmi("root",this.ptParams))},a11yAttrs:function(){return{"data-pc-name":"accordionpanel","data-p-disabled":this.disabled,"data-p-active":this.active}},ptParams:function(){return{context:{active:this.active}}}}};function ha(e,t,n,o,s,l){return e.asChild?H(e.$slots,"default",{key:1,class:N(e.cx("root")),active:l.active,a11yAttrs:l.a11yAttrs}):(y(),P(W(e.as),$({key:0,class:e.cx("root")},l.attrs),{default:T(function(){return[H(e.$slots,"default")]}),_:3},16,["class"]))}Qe.render=ha;var ka=` .p-accordionpanel { display: flex; flex-direction: column; border-style: solid; border-width: dt('accordion.panel.border.width'); border-color: dt('accordion.panel.border.color'); } .p-accordionheader { all: unset; cursor: pointer; display: flex; align-items: center; justify-content: space-between; padding: dt('accordion.header.padding'); color: dt('accordion.header.color'); background: dt('accordion.header.background'); border-style: solid; border-width: dt('accordion.header.border.width'); border-color: dt('accordion.header.border.color'); font-weight: dt('accordion.header.font.weight'); border-radius: dt('accordion.header.border.radius'); transition: background dt('accordion.transition.duration'), color dt('accordion.transition.duration'), outline-color dt('accordion.transition.duration'), box-shadow dt('accordion.transition.duration'); outline-color: transparent; } .p-accordionpanel:first-child > .p-accordionheader { border-width: dt('accordion.header.first.border.width'); border-start-start-radius: dt('accordion.header.first.top.border.radius'); border-start-end-radius: dt('accordion.header.first.top.border.radius'); } .p-accordionpanel:last-child > .p-accordionheader { border-end-start-radius: dt('accordion.header.last.bottom.border.radius'); border-end-end-radius: dt('accordion.header.last.bottom.border.radius'); } .p-accordionpanel:last-child.p-accordionpanel-active > .p-accordionheader { border-end-start-radius: dt('accordion.header.last.active.bottom.border.radius'); border-end-end-radius: dt('accordion.header.last.active.bottom.border.radius'); } .p-accordionheader-toggle-icon { color: dt('accordion.header.toggle.icon.color'); } .p-accordionpanel:not(.p-disabled) .p-accordionheader:focus-visible { box-shadow: dt('accordion.header.focus.ring.shadow'); outline: dt('accordion.header.focus.ring.width') dt('accordion.header.focus.ring.style') dt('accordion.header.focus.ring.color'); outline-offset: dt('accordion.header.focus.ring.offset'); } .p-accordionpanel:not(.p-accordionpanel-active):not(.p-disabled) > .p-accordionheader:hover { background: dt('accordion.header.hover.background'); color: dt('accordion.header.hover.color'); } .p-accordionpanel:not(.p-accordionpanel-active):not(.p-disabled) .p-accordionheader:hover .p-accordionheader-toggle-icon { color: dt('accordion.header.toggle.icon.hover.color'); } .p-accordionpanel:not(.p-disabled).p-accordionpanel-active > .p-accordionheader { background: dt('accordion.header.active.background'); color: dt('accordion.header.active.color'); } .p-accordionpanel:not(.p-disabled).p-accordionpanel-active > .p-accordionheader .p-accordionheader-toggle-icon { color: dt('accordion.header.toggle.icon.active.color'); } .p-accordionpanel:not(.p-disabled).p-accordionpanel-active > .p-accordionheader:hover { background: dt('accordion.header.active.hover.background'); color: dt('accordion.header.active.hover.color'); } .p-accordionpanel:not(.p-disabled).p-accordionpanel-active > .p-accordionheader:hover .p-accordionheader-toggle-icon { color: dt('accordion.header.toggle.icon.active.hover.color'); } .p-accordioncontent-content { border-style: solid; border-width: dt('accordion.content.border.width'); border-color: dt('accordion.content.border.color'); background-color: dt('accordion.content.background'); color: dt('accordion.content.color'); padding: dt('accordion.content.padding'); } `,wa={root:"p-accordion p-component"},Ca=ne.extend({name:"accordion",style:ka,classes:wa}),xa={name:"BaseAccordion",extends:ee,props:{value:{type:[String,Number,Array],default:void 0},multiple:{type:Boolean,default:!1},lazy:{type:Boolean,default:!1},tabindex:{type:Number,default:0},selectOnFocus:{type:Boolean,default:!1},expandIcon:{type:String,default:void 0},collapseIcon:{type:String,default:void 0},activeIndex:{type:[Number,Array],default:null}},style:Ca,provide:function(){return{$pcAccordion:this,$parentInstance:this}}},Bt={name:"Accordion",extends:xa,inheritAttrs:!1,emits:["update:value","update:activeIndex","tab-open","tab-close","tab-click"],data:function(){return{d_value:this.value}},watch:{value:function(t){this.d_value=t},activeIndex:{immediate:!0,handler:function(t){this.hasAccordionTab&&(this.d_value=this.multiple?t?.map(String):t?.toString())}}},methods:{isItemActive:function(t){var n;return this.multiple?(n=this.d_value)===null||n===void 0?void 0:n.includes(t):this.d_value===t},updateValue:function(t){var n,o=this.isItemActive(t);this.multiple?o?this.d_value=this.d_value.filter(function(s){return s!==t}):this.d_value?this.d_value.push(t):this.d_value=[t]:this.d_value=o?null:t,this.$emit("update:value",this.d_value),this.$emit("update:activeIndex",this.multiple?(n=this.d_value)===null||n===void 0?void 0:n.map(Number):Number(this.d_value)),this.$emit(o?"tab-close":"tab-open",{originalEvent:void 0,index:Number(t)})},isAccordionTab:function(t){return t.type.name==="AccordionTab"},getTabProp:function(t,n){return t.props?t.props[n]:void 0},getKey:function(t,n){return this.getTabProp(t,"header")||n},getHeaderPT:function(t,n){var o=this;return{root:$({onClick:function(l){return o.onTabClick(l,n)}},this.getTabProp(t,"headerProps"),this.getTabPT(t,"header",n)),toggleicon:$(this.getTabProp(t,"headeractionprops"),this.getTabPT(t,"headeraction",n))}},getContentPT:function(t,n){return{root:$(this.getTabProp(t,"contentProps"),this.getTabPT(t,"toggleablecontent",n)),transition:this.getTabPT(t,"transition",n),content:this.getTabPT(t,"content",n)}},getTabPT:function(t,n,o){var s=this.tabs.length,l={props:t.props||{},parent:{instance:this,props:this.$props,state:this.$data},context:{index:o,count:s,first:o===0,last:o===s-1,active:this.isItemActive("".concat(o))}};return $(this.ptm("accordiontab.".concat(n),l),this.ptmo(this.getTabProp(t,"pt"),n,l))},onTabClick:function(t,n){this.$emit("tab-click",{originalEvent:t,index:n})}},computed:{tabs:function(){var t=this;return this.$slots.default().reduce(function(n,o){return t.isAccordionTab(o)?n.push(o):o.children&&o.children instanceof Array&&o.children.forEach(function(s){t.isAccordionTab(s)&&n.push(s)}),n},[])},hasAccordionTab:function(){return this.tabs.length}},components:{AccordionPanel:Qe,AccordionHeader:Xe,AccordionContent:Je,ChevronUpIcon:Ye,ChevronRightIcon:Ge}};function $a(e,t,n,o,s,l){var c=J("AccordionHeader"),v=J("AccordionContent"),h=J("AccordionPanel");return y(),C("div",$({class:e.cx("root")},e.ptmi("root")),[l.hasAccordionTab?(y(!0),C(z,{key:0},_(l.tabs,function(f,g){return y(),P(h,{key:l.getKey(f,g),value:"".concat(g),pt:{root:l.getTabPT(f,"root",g)},disabled:l.getTabProp(f,"disabled")},{default:T(function(){return[w(c,{class:N(l.getTabProp(f,"headerClass")),pt:l.getHeaderPT(f,g)},{toggleicon:T(function(i){return[i.active?(y(),P(W(e.$slots.collapseicon?e.$slots.collapseicon:e.collapseIcon?"span":"ChevronDownIcon"),$({key:0,class:[e.collapseIcon,i.class],"aria-hidden":"true"},{ref_for:!0},l.getTabPT(f,"headericon",g)),null,16,["class"])):(y(),P(W(e.$slots.expandicon?e.$slots.expandicon:e.expandIcon?"span":"ChevronUpIcon"),$({key:1,class:[e.expandIcon,i.class],"aria-hidden":"true"},{ref_for:!0},l.getTabPT(f,"headericon",g)),null,16,["class"]))]}),default:T(function(){return[f.children&&f.children.headericon?(y(),P(W(f.children.headericon),{key:0,isTabActive:l.isItemActive("".concat(g)),active:l.isItemActive("".concat(g)),index:g},null,8,["isTabActive","active","index"])):j("",!0),f.props&&f.props.header?(y(),C("span",$({key:1,ref_for:!0},l.getTabPT(f,"headertitle",g)),D(f.props.header),17)):j("",!0),f.children&&f.children.header?(y(),P(W(f.children.header),{key:2})):j("",!0)]}),_:2},1032,["class","pt"]),w(v,{pt:l.getContentPT(f,g)},{default:T(function(){return[(y(),P(W(f)))]}),_:2},1032,["pt"])]}),_:2},1032,["value","pt","disabled"])}),128)):H(e.$slots,"default",{key:1})],16)}Bt.render=$a;var Ea=` .p-tag { display: inline-flex; align-items: center; justify-content: center; background: dt('tag.primary.background'); color: dt('tag.primary.color'); font-size: dt('tag.font.size'); font-weight: dt('tag.font.weight'); padding: dt('tag.padding'); border-radius: dt('tag.border.radius'); gap: dt('tag.gap'); } .p-tag-icon { font-size: dt('tag.icon.size'); width: dt('tag.icon.size'); height: dt('tag.icon.size'); } .p-tag-rounded { border-radius: dt('tag.rounded.border.radius'); } .p-tag-success { background: dt('tag.success.background'); color: dt('tag.success.color'); } .p-tag-info { background: dt('tag.info.background'); color: dt('tag.info.color'); } .p-tag-warn { background: dt('tag.warn.background'); color: dt('tag.warn.color'); } .p-tag-danger { background: dt('tag.danger.background'); color: dt('tag.danger.color'); } .p-tag-secondary { background: dt('tag.secondary.background'); color: dt('tag.secondary.color'); } .p-tag-contrast { background: dt('tag.contrast.background'); color: dt('tag.contrast.color'); } `,Aa={root:function(t){var n=t.props;return["p-tag p-component",{"p-tag-info":n.severity==="info","p-tag-success":n.severity==="success","p-tag-warn":n.severity==="warn","p-tag-danger":n.severity==="danger","p-tag-secondary":n.severity==="secondary","p-tag-contrast":n.severity==="contrast","p-tag-rounded":n.rounded}]},icon:"p-tag-icon",label:"p-tag-label"},Sa=ne.extend({name:"tag",style:Ea,classes:Aa}),Ia={name:"BaseTag",extends:ee,props:{value:null,severity:null,rounded:Boolean,icon:String},style:Sa,provide:function(){return{$pcTag:this,$parentInstance:this}}};function we(e){"@babel/helpers - typeof";return we=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},we(e)}function Pa(e,t,n){return(t=ja(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ja(e){var t=Ta(e,"string");return we(t)=="symbol"?t:t+""}function Ta(e,t){if(we(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var o=n.call(e,t);if(we(o)!="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Ot={name:"Tag",extends:Ia,inheritAttrs:!1,computed:{dataP:function(){return Ie(Pa({rounded:this.rounded},this.severity,this.severity))}}},Va=["data-p"];function Da(e,t,n,o,s,l){return y(),C("span",$({class:e.cx("root"),"data-p":l.dataP},e.ptmi("root")),[e.$slots.icon?(y(),P(W(e.$slots.icon),$({key:0,class:e.cx("icon")},e.ptm("icon")),null,16,["class"])):e.icon?(y(),C("span",$({key:1,class:[e.cx("icon"),e.icon]},e.ptm("icon")),null,16)):j("",!0),e.value!=null||e.$slots.default?H(e.$slots,"default",{key:2},function(){return[m("span",$({class:e.cx("label")},e.ptm("label")),D(e.value),17)]}):j("",!0)],16,Va)}Ot.render=Da;const Ma={class:"mb-6"},Ba={class:"my-2 text-sm text-text-secondary leading-relaxed"},Oa={key:0,class:"my-3"},Ua={class:"flex items-center gap-2"},La={class:"text-text-muted text-xs ml-1"},Fa={class:"file-tree pl-2"},Ha={class:"text-xs text-text-secondary"},Na={key:1,class:"my-3 p-3 bg-color-warning-bg rounded border border-color-warning"},Ra={class:"flex items-start gap-2"},Ka={class:"flex-1"},qa={class:"text-xs text-text-secondary mb-3"},za={class:"space-y-2"},Wa={class:"flex items-center gap-2 mb-1"},Za={class:"text-text-muted"},Ga={class:"block bg-bg-secondary px-2 py-1 rounded font-mono text-text-secondary break-all"},Ya={class:"text-text-muted mt-1"},Ja={key:2,class:"my-3 p-3 bg-color-error-bg rounded border border-color-error"},Xa={class:"flex items-start gap-2"},Qa={class:"flex-1"},_a={class:"text-xs text-text-secondary"},er={key:0},tr={__name:"SkillDetailSection",props:{selectedItem:{type:Object,required:!0},canEdit:{type:Boolean,default:!1},editingField:{type:String,default:null},projectId:{type:String,default:null},scope:{type:String,default:null}},emits:["field-update","update:editing-field","skill-updated"],setup(e,{emit:t}){const n=e,o=t,s=Mt(),l=x({name:"",description:"",allowedTools:[],content:""}),c=ze,v=g=>{o("update:editing-field",g)},h=async(g,i)=>{if(n.canEdit)try{const a={[g]:i},r=n.selectedItem.directoryPath?n.selectedItem.directoryPath.split("/").pop():n.selectedItem.name;(await s.updateSkill(n.projectId,r,a,n.scope)).success&&(l.value[g]=i,o("skill-updated"))}finally{v(null)}};Z(()=>n.selectedItem,g=>{g&&(l.value={name:g.name||"",description:g.description||"",allowedTools:g.allowedTools||[],content:g.content||""},v(null))},{immediate:!0});const f=g=>g?(g.match(/\//g)||[]).length*1.25:0;return(g,i)=>(y(),C("div",null,[m("div",Ma,[m("p",Ba,[i[12]||(i[12]=m("strong",{class:"text-text-primary"},"Name:",-1)),te(" "+D(e.selectedItem.name),1)]),w(L,{modelValue:l.value.description,"onUpdate:modelValue":i[0]||(i[0]=a=>l.value.description=a),"field-type":"textarea",label:"Description",placeholder:"Brief description of what this skill does",disabled:!e.canEdit||e.editingField!==null&&e.editingField!=="description",validation:[{type:"required"},{type:"minLength",param:10,message:"Description must be at least 10 characters"}],onEditStart:i[1]||(i[1]=a=>v("description")),onEditCancel:i[2]||(i[2]=a=>v(null)),onEditAccept:i[3]||(i[3]=a=>h("description",a))},null,8,["modelValue","disabled"]),w(L,{modelValue:l.value.allowedTools,"onUpdate:modelValue":i[4]||(i[4]=a=>l.value.allowedTools=a),"field-type":"multiselect",label:"Allowed Tools",options:A(c),placeholder:"Select allowed tools",disabled:!e.canEdit||e.editingField!==null&&e.editingField!=="allowedTools",onEditStart:i[5]||(i[5]=a=>v("allowedTools")),onEditCancel:i[6]||(i[6]=a=>v(null)),onEditAccept:i[7]||(i[7]=a=>h("allowedTools",a))},null,8,["modelValue","options","disabled"]),e.selectedItem.fileCount||e.selectedItem.files?(y(),C("div",Oa,[i[15]||(i[15]=m("div",{class:"text-text-primary font-bold text-sm mb-2"},"Supporting Files (Read-Only)",-1)),w(A(Bt),{value:null,class:"skill-structure-accordion"},{default:T(()=>[w(A(Qe),{value:"files"},{default:T(()=>[w(A(Xe),null,{default:T(()=>[m("div",Ua,[i[13]||(i[13]=m("i",{class:"pi pi-folder text-color-skills"},null,-1)),i[14]||(i[14]=m("span",{class:"font-semibold"},"File Tree",-1)),m("span",La,"("+D(e.selectedItem.fileCount)+" files)",1)])]),_:1}),w(A(Je),null,{default:T(()=>[m("div",Fa,[(y(!0),C(z,null,_(e.selectedItem.files,(a,r)=>(y(),C("div",{key:r,class:N(["file-tree-item",{directory:a.type==="directory"}]),style:be({paddingLeft:f(a.relativePath)+"rem"})},[m("i",{class:N(a.type==="directory"?"pi pi-folder":"pi pi-file"),style:be({color:a.type==="directory"?"var(--color-skills)":"var(--text-muted)"})},null,6),m("span",Ha,D(a.name),1)],6))),128))])]),_:1})]),_:1})]),_:1})])):j("",!0),e.selectedItem.externalReferences&&e.selectedItem.externalReferences.length>0?(y(),C("div",Na,[m("div",Ra,[i[17]||(i[17]=m("i",{class:"pi pi-exclamation-triangle text-color-warning mt-0.5 text-lg"},null,-1)),m("div",Ka,[i[16]||(i[16]=m("p",{class:"text-sm font-semibold text-color-warning mb-1"},"External References Detected",-1)),m("p",qa," This skill contains "+D(e.selectedItem.externalReferences.length)+" reference"+D(e.selectedItem.externalReferences.length>1?"s":"")+" to files outside the skill directory, which may affect portability when copying to other projects. ",1),m("div",za,[(y(!0),C(z,null,_(e.selectedItem.externalReferences,(a,r)=>(y(),C("div",{key:r,class:"bg-bg-primary p-2 rounded text-xs"},[m("div",Wa,[m("span",Za,"Line "+D(a.line)+":",1),w(A(Ot),{severity:a.severity==="error"?"danger":"warning",value:a.type?.toUpperCase()||"REFERENCE",class:"text-[10px] px-1.5 py-0.5"},null,8,["severity","value"])]),m("code",Ga,D(a.reference),1),m("p",Ya,"in "+D(a.file),1)]))),128))])])])])):j("",!0),e.selectedItem.hasError&&e.selectedItem.parseError?(y(),C("div",Ja,[m("div",Xa,[i[19]||(i[19]=m("i",{class:"pi pi-times-circle text-color-error mt-0.5"},null,-1)),m("div",Qa,[i[18]||(i[18]=m("p",{class:"text-sm font-semibold text-color-error mb-1"},"Parse Error",-1)),m("p",_a,D(e.selectedItem.parseError),1)])])])):j("",!0)]),e.selectedItem?.content?(y(),C("div",er,[w(L,{modelValue:l.value.content,"onUpdate:modelValue":i[8]||(i[8]=a=>l.value.content=a),"field-type":"textarea",label:"Content",placeholder:"The skill's markdown content (instructions, examples, etc.)",disabled:!e.canEdit||e.editingField!==null&&e.editingField!=="content",validation:[{type:"required"},{type:"minLength",param:10,message:"Content must be at least 10 characters"}],onEditStart:i[9]||(i[9]=a=>v("content")),onEditCancel:i[10]||(i[10]=a=>v(null)),onEditAccept:i[11]||(i[11]=a=>h("content",a))},null,8,["modelValue","disabled"])])):j("",!0)]))}},nr=X(tr,[["__scopeId","data-v-a5cca4c7"]]),or={class:"flex items-center gap-3 flex-1 min-w-0"},lr={class:"text-lg font-semibold text-text-primary overflow-hidden text-ellipsis whitespace-nowrap"},ar={class:"flex gap-2"},rr={key:5,class:"mb-6"},ir={class:"bg-bg-primary p-4 rounded border border-border-primary font-mono text-xs whitespace-pre-wrap break-words overflow-x-auto max-h-[400px] overflow-y-auto text-text-primary"},sr={class:"flex items-center justify-end gap-2"},dr={__name:"ConfigDetailSidebar",props:{visible:{type:Boolean,required:!0,default:!1},selectedItem:{type:Object,default:null},selectedType:{type:String,default:null},currentItems:{type:Array,default:()=>[]},selectedIndex:{type:Number,default:-1},scope:{type:String,default:null,validator:e=>e===null||["project","user"].includes(e)},projectId:{type:String,default:null},enableCrud:{type:Boolean,default:!1}},emits:{close:null,navigate:e=>e==="prev"||e==="next","copy-clicked":e=>e&&typeof e=="object","agent-delete":e=>e&&typeof e=="object","agent-updated":()=>!0,"command-delete":e=>e&&typeof e=="object","command-updated":()=>!0,"skill-delete":e=>e&&typeof e=="object","skill-updated":()=>!0,"hook-delete":e=>e&&typeof e=="object","hook-updated":()=>!0,"mcp-delete":e=>e&&typeof e=="object","mcp-updated":()=>!0,"update:visible":e=>typeof e=="boolean"},setup(e,{emit:t}){const n=e,o=t,s=x(n.visible);Z(()=>n.visible,E=>{s.value=E}),Z(s,E=>{E||o("close"),o("update:visible",E)});const l=O(()=>n.enableCrud&&n.selectedType==="agents"&&n.selectedItem?.location!=="plugin"),c=O(()=>n.enableCrud&&n.selectedType==="commands"),v=O(()=>n.enableCrud&&n.selectedType==="skills"),h=O(()=>n.enableCrud&&n.selectedType==="hooks"),f=O(()=>n.enableCrud&&n.selectedType==="mcp"),g=O(()=>n.selectedIndex>0),i=O(()=>n.selectedIndex({agents:"pi pi-users",commands:"pi pi-bolt",hooks:"pi pi-link",mcp:"pi pi-server",skills:"pi pi-sparkles"})[n.selectedType]||"pi pi-file"),r=O(()=>n.selectedType==="agents"&&n.selectedItem?.color?n.selectedItem.color:{agents:"var(--color-agents)",commands:"var(--color-commands)",hooks:"var(--color-hooks)",mcp:"var(--color-mcp)",skills:"var(--color-skills)"}[n.selectedType]||"var(--text-primary)"),p=()=>{g.value&&o("navigate","prev")},d=()=>{i.value&&o("navigate","next")},u=()=>{l.value&&n.selectedItem?o("agent-delete",n.selectedItem):c.value&&n.selectedItem?o("command-delete",n.selectedItem):v.value&&n.selectedItem?o("skill-delete",n.selectedItem):h.value&&n.selectedItem?o("hook-delete",n.selectedItem):f.value&&n.selectedItem&&o("mcp-delete",n.selectedItem)},k=()=>{if(n.selectedItem){const E={agents:"agent",commands:"command",hooks:"hook",mcp:"mcp",skills:"skill"},M={...n.selectedItem,configType:E[n.selectedType]||n.selectedType};o("copy-clicked",M)}};return(E,M)=>{const G=Pe("tooltip");return y(),P(A(It),{visible:s.value,"onUpdate:visible":M[7]||(M[7]=K=>s.value=K),position:"right",modal:!0,dismissable:!0,"close-on-escape":!0,"block-scroll":!0,"show-close-icon":!1,class:"config-detail-drawer"},{header:T(()=>[m("div",or,[m("i",{class:N(a.value),style:be({color:r.value})},null,6),m("span",lr,D(e.selectedItem?.name||e.selectedItem?.event||"Item Details"),1)]),m("div",ar,[w(A(q),{onClick:p,disabled:!g.value,icon:"pi pi-chevron-left",text:"",class:"nav-btn","aria-label":"Previous item"},null,8,["disabled"]),w(A(q),{onClick:d,disabled:!i.value,icon:"pi pi-chevron-right",text:"",class:"nav-btn","aria-label":"Next item"},null,8,["disabled"]),w(A(q),{onClick:M[0]||(M[0]=K=>s.value=!1),icon:"pi pi-times",text:"",class:"nav-btn","aria-label":"Close sidebar"})])]),footer:T(()=>[m("div",sr,[e.selectedType==="agents"&&l.value||e.selectedType==="commands"&&c.value||e.selectedType==="skills"&&v.value||e.selectedType==="hooks"&&h.value||e.selectedType==="mcp"&&f.value?ae((y(),P(A(q),{key:0,onClick:u,disabled:!e.selectedItem,icon:"pi pi-trash",outlined:"",severity:"danger","aria-label":"Delete",class:"sidebar-action-btn delete-action-btn"},null,8,["disabled"])),[[G,"Delete",void 0,{top:!0}]]):j("",!0),ae(w(A(q),{onClick:k,disabled:!e.selectedItem,icon:"pi pi-copy",outlined:"","aria-label":"Copy",class:"sidebar-action-btn copy-action-btn"},null,8,["disabled"]),[[G,"Copy",void 0,{top:!0}]]),ae(w(A(q),{onClick:M[6]||(M[6]=K=>s.value=!1),icon:"pi pi-times",outlined:"","aria-label":"Close",class:"sidebar-action-btn close-action-btn"},null,512),[[G,"Close",void 0,{top:!0}]])])]),default:T(()=>[e.selectedType==="agents"?(y(),P(kl,{key:0,"selected-item":e.selectedItem,"can-edit":l.value,"project-id":e.projectId,scope:e.scope,onAgentUpdated:M[1]||(M[1]=K=>E.$emit("agent-updated"))},null,8,["selected-item","can-edit","project-id","scope"])):e.selectedType==="commands"?(y(),P($l,{key:1,"selected-item":e.selectedItem,"can-edit":c.value,"project-id":e.projectId,scope:e.scope,onCommandUpdated:M[2]||(M[2]=K=>E.$emit("command-updated"))},null,8,["selected-item","can-edit","project-id","scope"])):e.selectedType==="hooks"?(y(),P(Sl,{key:2,"selected-item":e.selectedItem,"can-edit":h.value,"project-id":e.projectId,scope:e.scope,onHookUpdated:M[3]||(M[3]=K=>E.$emit("hook-updated"))},null,8,["selected-item","can-edit","project-id","scope"])):e.selectedType==="mcp"?(y(),P(ta,{key:3,"selected-item":e.selectedItem,"can-edit":f.value,"project-id":e.projectId,scope:e.scope,onMcpUpdated:M[4]||(M[4]=K=>E.$emit("mcp-updated"))},null,8,["selected-item","can-edit","project-id","scope"])):e.selectedType==="skills"?(y(),P(nr,{key:4,"selected-item":e.selectedItem,"can-edit":v.value,"project-id":e.projectId,scope:e.scope,onSkillUpdated:M[5]||(M[5]=K=>E.$emit("skill-updated"))},null,8,["selected-item","can-edit","project-id","scope"])):j("",!0),e.selectedItem?.content&&!["agents","commands","skills","hooks","mcp"].includes(e.selectedType)?(y(),C("div",rr,[m("pre",ir,D(e.selectedItem.content),1)])):j("",!0)]),_:1},8,["visible"])}}},cr=X(dr,[["__scopeId","data-v-3e1bb7c2"]]),ur={class:"flex min-h-screen"},pr={class:"flex-1 p-4 md:p-8 max-w-[1400px] mx-auto w-full"},mr={class:"mb-8"},fr={class:"flex items-center gap-3 text-2xl font-semibold mb-2 text-text-primary"},gr={key:0,class:"text-sm ml-10 text-text-secondary"},vr={key:1,class:"text-center py-12 px-4 rounded-lg mt-8 bg-bg-secondary border border-border-primary"},yr={class:"text-base mb-6 text-text-primary"},br={key:2},hr={class:"font-semibold mb-2"},kr={class:"list-disc ml-4"},wr={class:"grid gap-6 xl:grid-cols-2"},Cr={__name:"ConfigPageLayout",props:{pageTitle:{type:String,required:!0},pageSubtitle:{type:String,default:""},pageIcon:{type:String,required:!0},pageIconColor:{type:String,default:"var(--color-primary)"},breadcrumbItems:{type:Array,required:!0},loading:{type:Boolean,default:!1},loadingMessage:{type:String,default:"Loading..."},loadingAgents:{type:Boolean,default:!1},loadingCommands:{type:Boolean,default:!1},loadingHooks:{type:Boolean,default:!1},loadingMcp:{type:Boolean,default:!1},loadingSkills:{type:Boolean,default:!1},error:{type:Boolean,default:!1},errorMessage:{type:String,default:""},warnings:{type:Array,default:()=>[]},agents:{type:Array,default:()=>[]},commands:{type:Array,default:()=>[]},hooks:{type:Array,default:()=>[]},mcpServers:{type:Array,default:()=>[]},skills:{type:Array,default:()=>[]},showingAllAgents:{type:Boolean,default:!1},showingAllCommands:{type:Boolean,default:!1},showingAllHooks:{type:Boolean,default:!1},showingAllMcp:{type:Boolean,default:!1},showingAllSkills:{type:Boolean,default:!1},initialDisplayCount:{type:Number,default:5},sidebarVisible:{type:Boolean,default:!1},selectedItem:{type:Object,default:null},selectedType:{type:String,default:null},currentItems:{type:Array,default:()=>[]},selectedIndex:{type:Number,default:-1},scope:{type:String,default:null,validator:e=>e===null||["project","user"].includes(e)},projectId:{type:String,default:null},enableAgentCrud:{type:Boolean,default:!1},enableCommandCrud:{type:Boolean,default:!1},enableSkillCrud:{type:Boolean,default:!1},enableHookCrud:{type:Boolean,default:!1},enableMcpCrud:{type:Boolean,default:!1}},emits:["retry","toggle-agents","toggle-commands","toggle-hooks","toggle-mcp","toggle-skills","show-detail","close-sidebar","navigate","copy-clicked","agent-delete","agent-updated","command-delete","command-updated","skill-delete","hook-updated","hook-delete","mcp-delete"],setup(e){return(t,n)=>(y(),C("div",ur,[m("div",pr,[w(rl,{items:e.breadcrumbItems},null,8,["items"]),m("div",mr,[m("div",fr,[m("i",{class:N([e.pageIcon,"text-[1.75rem]"]),style:be({color:e.pageIconColor})},null,6),m("span",null,D(e.pageTitle),1)]),e.pageSubtitle?(y(),C("div",gr,D(e.pageSubtitle),1)):j("",!0)]),e.loading?(y(),P(Jn,{key:0,message:e.loadingMessage},null,8,["message"])):e.error?(y(),C("div",vr,[n[33]||(n[33]=m("i",{class:"pi pi-exclamation-triangle text-5xl mb-4 text-error"},null,-1)),m("p",yr,D(e.errorMessage),1),w(A(q),{onClick:n[0]||(n[0]=o=>t.$emit("retry")),label:"Retry",icon:"pi pi-refresh",severity:"danger"})])):(y(),C("div",br,[e.warnings.length>0?(y(),P(A(bt),{key:0,severity:"warn",closable:!1,class:"mb-6"},{messageicon:T(()=>[...n[34]||(n[34]=[m("i",{class:"pi pi-exclamation-circle text-xl mr-3"},null,-1)])]),default:T(()=>[m("div",null,[m("div",hr,D(e.warnings.length)+" Warning"+D(e.warnings.length>1?"s":""),1),m("ul",kr,[(y(!0),C(z,null,_(e.warnings,(o,s)=>(y(),C("li",{key:s,class:"text-sm"},[typeof o=="string"?(y(),C(z,{key:0},[te(D(o),1)],64)):(y(),C(z,{key:1},[te(D(o.message||o),1)],64))]))),128))])])]),_:1})):j("",!0),m("div",wr,[w(ge,{"card-type":"agents",title:"Subagents",count:e.agents.length,icon:"pi pi-users",color:"var(--color-agents)",loading:e.loadingAgents,items:e.agents,"showing-all":e.showingAllAgents,"initial-display-count":e.initialDisplayCount,onToggleShowAll:n[4]||(n[4]=o=>t.$emit("toggle-agents"))},{default:T(({items:o})=>[w(ve,{items:o,"item-type":"agents","enable-crud":e.enableAgentCrud,onItemSelected:n[1]||(n[1]=s=>t.$emit("show-detail",s,"agents",e.agents)),onCopyClicked:n[2]||(n[2]=s=>t.$emit("copy-clicked",s)),onDeleteClicked:n[3]||(n[3]=s=>t.$emit("agent-delete",s))},null,8,["items","enable-crud"])]),_:1},8,["count","loading","items","showing-all","initial-display-count"]),w(ge,{"card-type":"commands",title:"Slash Commands",count:e.commands.length,icon:"pi pi-bolt",color:"var(--color-commands)",loading:e.loadingCommands,items:e.commands,"showing-all":e.showingAllCommands,"initial-display-count":e.initialDisplayCount,onToggleShowAll:n[8]||(n[8]=o=>t.$emit("toggle-commands"))},{default:T(({items:o})=>[w(ve,{items:o,"item-type":"commands","enable-crud":e.enableCommandCrud,onItemSelected:n[5]||(n[5]=s=>t.$emit("show-detail",s,"commands",e.commands)),onCopyClicked:n[6]||(n[6]=s=>t.$emit("copy-clicked",s)),onDeleteClicked:n[7]||(n[7]=s=>t.$emit("command-delete",s))},null,8,["items","enable-crud"])]),_:1},8,["count","loading","items","showing-all","initial-display-count"]),w(ge,{"card-type":"skills",title:"Skills",count:e.skills.length,icon:"pi pi-sparkles",color:"var(--color-skills)",loading:e.loadingSkills,items:e.skills,"showing-all":e.showingAllSkills,"initial-display-count":e.initialDisplayCount,onToggleShowAll:n[12]||(n[12]=o=>t.$emit("toggle-skills"))},{default:T(({items:o})=>[w(ve,{items:o,"item-type":"skills","enable-crud":e.enableSkillCrud,onItemSelected:n[9]||(n[9]=s=>t.$emit("show-detail",s,"skills",e.skills)),onCopyClicked:n[10]||(n[10]=s=>t.$emit("copy-clicked",s)),onDeleteClicked:n[11]||(n[11]=s=>t.$emit("skill-delete",s))},null,8,["items","enable-crud"])]),_:1},8,["count","loading","items","showing-all","initial-display-count"]),w(ge,{"card-type":"hooks",title:"Hooks",count:e.hooks.length,icon:"pi pi-link",color:"var(--color-hooks)",loading:e.loadingHooks,items:e.hooks,"showing-all":e.showingAllHooks,"initial-display-count":e.initialDisplayCount,onToggleShowAll:n[16]||(n[16]=o=>t.$emit("toggle-hooks"))},{default:T(({items:o})=>[w(ve,{items:o,"item-type":"hooks","enable-crud":e.enableHookCrud,onItemSelected:n[13]||(n[13]=s=>t.$emit("show-detail",s,"hooks",e.hooks)),onCopyClicked:n[14]||(n[14]=s=>t.$emit("copy-clicked",s)),onDeleteClicked:n[15]||(n[15]=s=>t.$emit("hook-delete",s))},null,8,["items","enable-crud"])]),_:1},8,["count","loading","items","showing-all","initial-display-count"]),w(ge,{"card-type":"mcp",title:"MCP Servers",count:e.mcpServers.length,icon:"pi pi-server",color:"var(--color-mcp)",loading:e.loadingMcp,items:e.mcpServers,"showing-all":e.showingAllMcp,"initial-display-count":e.initialDisplayCount,onToggleShowAll:n[20]||(n[20]=o=>t.$emit("toggle-mcp"))},{default:T(({items:o})=>[w(ve,{items:o,"item-type":"mcp","enable-crud":e.enableMcpCrud,onItemSelected:n[17]||(n[17]=s=>t.$emit("show-detail",s,"mcp",e.mcpServers)),onCopyClicked:n[18]||(n[18]=s=>t.$emit("copy-clicked",s)),onDeleteClicked:n[19]||(n[19]=s=>t.$emit("mcp-delete",s))},null,8,["items","enable-crud"])]),_:1},8,["count","loading","items","showing-all","initial-display-count"])])]))]),e.sidebarVisible?(y(),C("div",{key:0,class:"fixed inset-0 z-[999] animate-fade-in",style:{background:"rgba(0, 0, 0, 0.5)"},onClick:n[21]||(n[21]=o=>t.$emit("close-sidebar"))})):j("",!0),w(cr,{visible:e.sidebarVisible,"selected-item":e.selectedItem,"selected-type":e.selectedType,"current-items":e.currentItems,"selected-index":e.selectedIndex,scope:e.scope,"project-id":e.projectId,"enable-crud":e.enableAgentCrud||e.enableCommandCrud||e.enableSkillCrud||e.enableHookCrud||e.enableMcpCrud,onClose:n[22]||(n[22]=o=>t.$emit("close-sidebar")),onNavigate:n[23]||(n[23]=o=>t.$emit("navigate",o)),onCopyClicked:n[24]||(n[24]=o=>t.$emit("copy-clicked",o)),onAgentDelete:n[25]||(n[25]=o=>t.$emit("agent-delete",o)),onAgentUpdated:n[26]||(n[26]=o=>t.$emit("agent-updated")),onCommandDelete:n[27]||(n[27]=o=>t.$emit("command-delete",o)),onCommandUpdated:n[28]||(n[28]=o=>t.$emit("command-updated")),onSkillDelete:n[29]||(n[29]=o=>t.$emit("skill-delete",o)),onHookUpdated:n[30]||(n[30]=o=>t.$emit("hook-updated")),onHookDelete:n[31]||(n[31]=o=>t.$emit("hook-delete",o)),onMcpDelete:n[32]||(n[32]=o=>t.$emit("mcp-delete",o))},null,8,["visible","selected-item","selected-type","current-items","selected-index","scope","project-id","enable-crud"]),H(t.$slots,"copy-modal",{},void 0,!0)]))}},xr=X(Cr,[["__scopeId","data-v-289f182d"]]),Ut=de("copy",()=>{const e=x(!1),t=x(null);async function n(l){e.value=!0;try{const{sourceConfig:c,targetScope:v,targetProjectId:h,conflictStrategy:f,acknowledgedWarnings:g}=l,i=c.configType||c.type;if(!c||!i)throw new Error("sourceConfig must have type or configType field");if(!v)throw new Error("targetScope is required");if(v==="project"&&!h)throw new Error('targetProjectId is required when targetScope is "project"');const a=o(i),r=s(c,v,h,f,g),p=await xt[a](r);return p.conflict,t.value=p,p}catch(c){let v;throw c.message.includes("403")||c.message.includes("Forbidden")?v="Permission denied - Check file permissions":c.message.includes("404")||c.message.includes("Not Found")?v="Source file not found":c.message.includes("400")||c.message.includes("Bad Request")?v=`Invalid request - ${c.message}`:c.message.includes("500")||c.message.includes("Internal Server Error")?v="An error occurred - Please try again":c.message.includes("fetch")||c.message.includes("network")?v="Network error - Check your connection":v=`Copy failed - ${c.message}`,new Error(v)}finally{e.value=!1}}function o(l){const c={agent:"copyAgent",command:"copyCommand",hook:"copyHook",mcp:"copyMcp",skill:"copySkill"};if(!c[l])throw new Error(`Unknown configuration type: ${l}`);return c[l]}function s(l,c,v,h,f){const g=l.configType||l.type;if(g==="agent"||g==="command"){const i=l.path||l.filePath;if(!i)throw new Error("sourceConfig must have either path or filePath property");return{sourcePath:i,targetScope:c,targetProjectId:c==="project"?v:null,conflictStrategy:h}}if(g==="skill"){const i=l.directoryPath||l.path;if(!i)throw new Error("sourceConfig must have directoryPath property for skills");return{sourceSkillPath:i,targetScope:c,targetProjectId:c==="project"?v:null,conflictStrategy:h,acknowledgedWarnings:f||!1}}if(g==="hook"){const i={event:l.event,command:l.command};return l.type!==void 0&&(i.type=l.type),l.matcher!==void 0&&(i.matcher=l.matcher),l.enabled!==void 0&&(i.enabled=l.enabled),l.timeout!==void 0&&(i.timeout=l.timeout),{sourceHook:i,targetScope:c,targetProjectId:c==="project"?v:null}}if(g==="mcp")return{sourceServerName:l.name,sourceMcpConfig:{command:l.command,args:l.args||[],env:l.env||{},...l.transport&&{transport:l.transport},...l.transportType&&{transportType:l.transportType}},targetScope:c,targetProjectId:c==="project"?v:null,conflictStrategy:h};throw new Error(`Unknown configuration type: ${g}`)}return{copying:e,lastCopyResult:t,copyConfiguration:n,getEndpointForType:o}}),Lt={agent:{icon:"pi pi-users",label:"Agent",color:"success"},command:{icon:"pi pi-bolt",label:"Command",color:"info"},skill:{icon:"pi pi-sparkles",label:"Skill",color:"skills"},hook:{icon:"pi pi-link",label:"Hook",color:"warning"},mcp:{icon:"pi pi-server",label:"MCP Server",color:"mcp"}};function $r(e){return Lt[e]?.icon||"pi pi-file"}function Er(e){return Lt[e]?.label||e}const Ar={class:"external-ref-warning"},Sr={class:"external-ref-list mb-3 p-2 bg-bg-secondary rounded max-h-32 overflow-y-auto"},Ir={class:"flex items-start gap-2"},Pr={class:"flex-1"},jr={class:"bg-bg-tertiary px-1 py-0.5 rounded font-mono"},Tr={class:"text-text-muted ml-2"},Vr={class:"acknowledgment-checkbox flex items-center gap-2 p-2 bg-bg-tertiary rounded"},Dr={class:"copy-modal-content flex gap-6 w-full"},Mr={class:"flex-none w-2/5 flex flex-col min-w-0"},Br={class:"mb-6"},Or={class:"flex justify-between items-center"},Ur={class:"mb-6"},Lr={class:"text-base font-medium text-text-emphasis mb-1 break-words"},Fr={class:"mb-6"},Hr={class:"text-base font-medium text-text-emphasis mb-1 break-words"},Nr={class:"flex-1 w-3/5 flex flex-col"},Rr={class:"flex-1 overflow-y-auto flex flex-col gap-3 pr-2 destinations-container"},Kr={class:"flex items-center justify-between gap-4 mb-2"},qr={class:"flex items-center justify-between gap-4 mb-2"},zr={class:"flex items-center gap-3 flex-1 min-w-0"},Wr={class:"m-0 text-base font-semibold text-text-emphasis overflow-hidden text-ellipsis whitespace-nowrap"},Zr={class:"text-sm text-text-muted mb-4 font-mono"},Gr={__name:"CopyModal",props:{visible:{type:Boolean,required:!0},sourceConfig:{type:Object,required:!0,validator:e=>e&&(e.name||e.event)&&e.type&&["agent","command","hook","mcp","skill"].includes(e.type)}},emits:["update:visible","copy-success","copy-error","copy-cancelled"],setup(e,{emit:t}){const n=e,o=t,s=st(),l=Ut(),c=x(null),v=x(!1),h=x(window.innerWidth),f=()=>{h.value=window.innerWidth};qe(()=>{window.addEventListener("resize",f)}),dt(()=>{window.removeEventListener("resize",f)});const g=O(()=>h.value<=1024?"95vw":"70vw"),i=O(()=>h.value<=1024?"none":"1200px");Z(()=>n.visible,async R=>{R&&(c.value=null,v.value=!1,await s.loadProjects())},{immediate:!0});const a=O({get(){return n.visible},set(R){o("update:visible",R)}}),r=O(()=>!n.sourceConfig?.projectId),d=O(()=>{const R=n.sourceConfig?.projectId;return R?s.projects.filter(I=>I.id!==R):s.projects}),u=O(()=>n.sourceConfig?.type==="skill"&&n.sourceConfig?.externalReferences&&n.sourceConfig.externalReferences.length>0),k=O(()=>n.sourceConfig?.externalReferences||[]),E=async(R,I)=>{R.key==="Enter"?(R.preventDefault(),await K(I)):R.key===" "&&(R.preventDefault(),await K(I))};let M=!1;const G=()=>{M||o("copy-cancelled"),M=!1},K=async R=>{c.value=R,!(u.value&&!v.value)&&await ce()},ce=async()=>{if(c.value&&!(u.value&&!v.value))try{M=!0;const R=c.value.id==="user-global"?"user":"project",I=c.value.id==="user-global"?null:c.value.id,F={sourceConfig:n.sourceConfig,targetScope:R,targetProjectId:I,conflictStrategy:"skip",acknowledgedWarnings:v.value},Y=await l.copyConfiguration(F);if(Y.conflict){o("copy-error",new Error("Configuration already exists at destination")),a.value=!1;return}o("copy-success",{source:n.sourceConfig,destination:c.value,filename:Y.filename||n.sourceConfig.name||n.sourceConfig.event,copiedPath:Y.copiedPath}),a.value=!1}catch(R){o("copy-error",R),a.value=!1}},U=async R=>{c.value=R,await ce()};return(R,I)=>(y(),P(A(so),{visible:a.value,"onUpdate:visible":I[4]||(I[4]=F=>a.value=F),modal:"",closable:!0,closeOnEscape:!0,dismissableMask:!0,draggable:!1,appendTo:"body",class:"copy-modal",pt:{root:{style:`width: ${g.value}; max-width: ${i.value}; max-height: 90vh; display: flex; flex-direction: column;`},content:{style:"flex: 1; overflow: hidden; display: flex; flex-direction: column;"},mask:{style:"background-color: var(--overlay-modal-mask)"}},onHide:G},{header:T(()=>[...I[5]||(I[5]=[m("div",{class:"flex items-center gap-3 text-xl font-semibold text-text-emphasis"},[m("i",{class:"pi pi-copy text-primary"}),m("span",null,"Copy Configuration")],-1)])]),default:T(()=>[u.value?(y(),P(A(bt),{key:0,severity:"warn",closable:!1,class:"mb-4"},{default:T(()=>[m("div",Ar,[I[8]||(I[8]=m("h4",{class:"font-semibold mb-2 flex items-center gap-2"},[m("i",{class:"pi pi-exclamation-triangle"}),te(" External References Detected ")],-1)),I[9]||(I[9]=m("p",{class:"mb-3 text-sm"},[te(" This skill references files outside its directory. These external files will "),m("strong",null,"NOT be copied"),te(" and the skill may not work correctly at the destination. ")],-1)),m("div",Sr,[(y(!0),C(z,null,_(k.value,(F,Y)=>(y(),C("div",{key:Y,class:"external-ref-item text-xs mb-2"},[m("div",Ir,[I[6]||(I[6]=m("i",{class:"pi pi-file mt-0.5 text-text-muted"},null,-1)),m("div",Pr,[m("code",jr,D(F.reference),1),m("span",Tr,"("+D(F.file)+", line "+D(F.line)+")",1)])])]))),128))]),m("div",Vr,[w(A(io),{modelValue:v.value,"onUpdate:modelValue":I[0]||(I[0]=F=>v.value=F),inputId:"acknowledge-warnings",binary:""},null,8,["modelValue"]),I[7]||(I[7]=m("label",{for:"acknowledge-warnings",class:"text-sm cursor-pointer"}," I understand and want to proceed anyway ",-1))])])]),_:1})):j("",!0),m("div",Dr,[m("div",Mr,[I[13]||(I[13]=m("h3",{class:"text-base font-semibold text-text-emphasis m-0 mb-4 uppercase tracking-wider"},"Source",-1)),m("div",Br,[m("div",Or,[I[10]||(I[10]=m("span",{class:"font-semibold text-text-primary text-sm"},"Type",-1)),m("span",{class:N(["config-type",`type-${e.sourceConfig.type}`])},[m("i",{class:N(A($r)(e.sourceConfig.type))},null,2),te(" "+D(A(Er)(e.sourceConfig.type)),1)],2)])]),m("div",Ur,[m("div",Lr,D(e.sourceConfig.name||e.sourceConfig.event),1),I[11]||(I[11]=m("div",{class:"text-xs text-text-muted uppercase tracking-wider font-medium"},"Name",-1))]),m("div",Fr,[m("div",Hr,D(e.sourceConfig.projectId||"User Global"),1),I[12]||(I[12]=m("div",{class:"text-xs text-text-muted uppercase tracking-wider font-medium"},"Project",-1))])]),m("div",Nr,[I[16]||(I[16]=m("h3",{class:"text-base font-semibold text-text-emphasis m-0 mb-4 uppercase tracking-wider"},"Target",-1)),m("div",Rr,[r.value?j("",!0):(y(),P(A(Ue),{key:0,class:N({selected:c.value?.id==="user-global"}),pt:{root:{class:"destination-card"},header:{class:"destination-card-header"},body:{class:"destination-card-body"},content:{class:"destination-card-content"}},tabindex:"0",role:"button","aria-label":"Copy to User Global",onClick:I[2]||(I[2]=F=>K({id:"user-global",name:"User Global",path:"~/.claude/",icon:"pi pi-user"})),onKeydown:I[3]||(I[3]=F=>E(F,{id:"user-global",name:"User Global",path:"~/.claude/",icon:"pi pi-user"}))},{header:T(()=>[m("div",Kr,[I[14]||(I[14]=m("div",{class:"flex items-center gap-3 flex-1 min-w-0"},[m("i",{class:"pi pi-user text-2xl text-color-primary flex-shrink-0"}),m("h4",{class:"m-0 text-base font-semibold text-text-emphasis overflow-hidden text-ellipsis whitespace-nowrap"},"User Global")],-1)),w(A(q),{label:"Copy Here",icon:"pi pi-copy",iconPos:"left",class:"flex-shrink-0",onClick:I[1]||(I[1]=ye(F=>U({id:"user-global",name:"User Global",path:"~/.claude/",icon:"pi pi-user"}),["stop"]))})])]),content:T(()=>[...I[15]||(I[15]=[m("div",{class:"text-sm text-text-muted mb-4 font-mono"},"~/.claude/",-1)])]),_:1},8,["class"])),(y(!0),C(z,null,_(A(d),F=>(y(),P(A(Ue),{key:F.id,class:N({selected:c.value?.id===F.id}),pt:{root:{class:"destination-card"},header:{class:"destination-card-header"},body:{class:"destination-card-body"},content:{class:"destination-card-content"}},tabindex:"0",role:"button","aria-label":`Copy to ${F.name}`,onClick:Y=>K(F),onKeydown:Y=>E(Y,F)},{header:T(()=>[m("div",qr,[m("div",zr,[m("i",{class:N(F.icon+" text-2xl text-color-primary flex-shrink-0")},null,2),m("h4",Wr,D(F.name),1)]),w(A(q),{label:"Copy Here",icon:"pi pi-copy",iconPos:"left",class:"flex-shrink-0",onClick:ye(Y=>U(F),["stop"])},null,8,["onClick"])])]),content:T(()=>[m("div",Zr,D(F.path),1)]),_:2},1032,["class","aria-label","onClick","onKeydown"]))),128))])])])]),_:1},8,["visible","pt"]))}},Yr=X(Gr,[["__scopeId","data-v-435a01f1"]]);function Jr(){const e=xn();return{copySuccess:f=>{e.add({severity:"success",summary:"Configuration Copied",detail:`${f} has been copied successfully`,life:5e3})},deleteSuccess:(f,g)=>{e.add({severity:"success",summary:`${f} Deleted`,detail:`${g} has been deleted successfully`,life:5e3})},copyError:f=>{e.add({severity:"error",summary:"Copy Failed",detail:f.message||"An error occurred during the copy operation",life:0})},deleteError:f=>{e.add({severity:"error",summary:"Delete Failed",detail:f.message||f.error||"An unexpected error occurred",life:0})},copyCancelled:()=>{e.add({severity:"info",summary:"Copy operation cancelled",detail:"",life:3e3})},success:f=>{e.add({severity:"success",summary:"Success",detail:f,life:5e3})},error:f=>{e.add({severity:"error",summary:"Error",detail:f,life:0})},info:f=>{e.add({severity:"info",summary:"Info",detail:f,life:3e3})}}}const Xr={name:"ConfigurationPage",components:{ConfigPageLayout:xr,CopyModal:Yr,DeleteConfirmationModal:co},props:{scope:{type:String,required:!0,validator:e=>["user","project"].includes(e)},projectId:{type:String,default:null}},setup(e){En();const t=Jr();Ut();const n=st(),o=Pt(),s=jt(),l=Mt(),c=Tt(),v=Dt(),h=x("Loading..."),f=x(""),g=O(()=>e.scope==="user"?"User Configurations":h.value),i=O(()=>e.scope==="user"?"~/.claude":f.value),a=O(()=>e.scope==="user"?"pi pi-user":"pi pi-folder"),r=O(()=>e.scope==="user"?"var(--text-primary)":"var(--color-primary)"),p=O(()=>e.scope==="user"?"Loading user configurations...":"Loading project details..."),d=O(()=>{const b=[{label:"Dashboard",route:"/",icon:"pi pi-home"}];return e.scope==="user"?b.push({label:"User Configurations",route:null,icon:null}):b.push({label:h.value||"Project",route:null,icon:null}),b}),u=x([]),k=x([]),E=x([]),M=x([]),G=x([]),K=x(!1),ce=x(null),U=$n({visible:!1,itemType:null,item:null,loading:!1,references:[],warningMessage:""}),R=x(!0),I=x(!1),F=x(!1),Y=x(!1),je=x(!1),Te=x(!1),ue=x(!1),ie=x(""),xe=x([]),Ft=5,Ht=x(!1),Nt=x(!1),Rt=x(!1),Kt=x(!1),qt=x(!1),oe=x(!1),Q=x(null),_e=x(null),pe=x([]),le=x(-1),Ve=async()=>{if(R.value=!0,ue.value=!1,ie.value="",xe.value=[],e.scope==="project"){if(!e.projectId){ue.value=!0,ie.value="No project ID provided in URL",R.value=!1;return}n.projects.length===0&&await n.loadProjects();const b=n.projects.find(B=>B.id===e.projectId);b?(h.value=b.name,f.value=b.path):(h.value=e.projectId,f.value="")}try{const b=await Promise.allSettled([$e(),Ee(),Ae(),De(),Me()]);if(e.scope==="project")if(b.every(S=>S.status==="rejected")){ue.value=!0;const S=b[0].reason,V=S?.message||"";V.includes("404")||V.includes("400")||V.toLowerCase().includes("not found")||V.toLowerCase().includes("bad request")?ie.value="Project not found":V.includes("500")||V.toLowerCase().includes("internal server error")||V.toLowerCase().includes("failed to fetch")||V.toLowerCase().includes("network")||S?.name==="TypeError"||S?.name==="NetworkError"?ie.value="Failed to connect to server":ie.value=V||"Failed to load project configurations"}else b.forEach((S,V)=>{if(S.status==="fulfilled")S.value?.warnings&&S.value.warnings.length>0&&xe.value.push(...S.value.warnings);else{const fe=["agents","commands","hooks","MCP servers","skills"];console.error(`Error loading ${fe[V]}:`,S.reason),xe.value.push({type:fe[V],message:`Failed to load ${fe[V]}: ${S.reason?.message||"Unknown error"}`})}});else b.forEach((B,S)=>{B.status==="rejected"&&console.error(`Error loading user ${["agents","commands","hooks","MCP servers","skills"][S]}:`,B.reason)})}catch(b){console.error("Unexpected error loading configuration data:",b),e.scope==="project"&&(ue.value=!0,ie.value=b.message||"An unexpected error occurred while loading configurations")}finally{R.value=!1}e.scope==="user"&&n.loadProjects()},zt=()=>{Ve()},$e=async()=>{I.value=!0;try{const b=e.scope==="project"?await ct(e.projectId):await ut();return u.value=b.agents||[],b}catch(b){throw b.isExpected||console.error("Error loading agents:",b),u.value=[],b}finally{I.value=!1}},Ee=async()=>{F.value=!0;try{const b=e.scope==="project"?await Xn(e.projectId):await Qn();return k.value=b.commands||[],b}catch(b){throw b.isExpected||console.error("Error loading commands:",b),k.value=[],b}finally{F.value=!1}},Ae=async()=>{Y.value=!0;try{const b=e.scope==="project"?await pt(e.projectId):await mt();return E.value=b.hooks||[],b}catch(b){throw b.isExpected||console.error("Error loading hooks:",b),E.value=[],b}finally{Y.value=!1}},De=async()=>{je.value=!0;try{const b=e.scope==="project"?await ft(e.projectId):await gt();return M.value=b.mcp||[],b}catch(b){throw b.isExpected||console.error("Error loading MCP servers:",b),M.value=[],b}finally{je.value=!1}},Me=async()=>{Te.value=!0;try{const b=e.scope==="project"?await We(e.projectId):await Ze();return G.value=b.skills||[],b}catch(b){throw b.isExpected||console.error("Error loading skills:",b),G.value=[],b}finally{Te.value=!1}},Wt=(b,B,S)=>{Q.value=b,_e.value=B,pe.value=S,le.value=S.findIndex(V=>V===b),oe.value=!0},Zt=()=>{le.value>0&&(le.value--,Q.value=pe.value[le.value])},Gt=()=>{le.value{b==="prev"?Zt():b==="next"&&Gt()},me=(b,B)=>{U.itemType=b,U.item=B,U.loading=!1,U.references=[],U.warningMessage="",b==="skill"&&(U.warningMessage="This will permanently delete the skill directory and all its files. This action cannot be undone."),U.visible=!0,b==="agent"?Jt(B):b==="command"&&Xt(B)},Jt=async b=>{U.loading=!0;try{const B=await o.checkAgentReferences(e.scope==="project"?e.projectId:null,b.name,e.scope);B.success&&(U.references=B.references||[])}finally{U.loading=!1}},Xt=async b=>{U.loading=!0;try{const B=b.namespace?`${b.namespace}/${b.name}.md`:`${b.name}.md`,S=await s.getCommandReferences(e.scope,e.scope==="project"?e.projectId:null,B);U.references=S||[]}finally{U.loading=!1}},Qt=async()=>{U.loading=!0;try{let b;const B=U.itemType,S=U.item;if(B==="agent")b=await o.deleteAgent(e.scope==="project"?e.projectId:null,S.name,e.scope);else if(B==="command"){const V=S.namespace?`${S.namespace}/${S.name}.md`:`${S.name}.md`;b=await s.deleteCommand(e.scope,e.scope==="project"?e.projectId:null,V)}else if(B==="skill"){const V=S.directoryPath?S.directoryPath.split("/").pop():S.name;b=await l.deleteSkill(e.scope==="project"?e.projectId:null,V,e.scope)}else if(B==="hook"){const V=c.buildHookId(S);b=await c.deleteHook(e.scope==="project"?e.projectId:null,V,e.scope)}else B==="mcp"&&(b=await v.deleteMcpServer(e.scope==="project"?e.projectId:null,S.name,e.scope));if(b?.success)if(U.visible=!1,B==="agent")await $e(),Q.value?.name===S.name&&(oe.value=!1);else if(B==="command"){await Ee();const V=S.namespace?`${S.namespace}/${S.name}.md`:`${S.name}.md`;(Q.value?.path===V||Q.value?.name===V)&&(oe.value=!1)}else if(B==="skill"){await Me();const V=S.directoryPath?S.directoryPath.split("/").pop():S.name;Q.value?.name===V&&(oe.value=!1),t.deleteSuccess("Skill",`Skill "${V}"`)}else if(B==="hook"){await Ae();const V=c.buildHookId(S);Q.value&&c.buildHookId(Q.value)===V&&(oe.value=!1);const fe=V.split("::")[0];t.deleteSuccess("Hook",`${fe} hook`)}else B==="mcp"&&(await De(),Q.value?.name===S.name&&(oe.value=!1),t.deleteSuccess("MCP Server",`MCP server "${S.name}"`));else t.deleteError({error:b?.error||"Failed to delete configuration"}),U.visible=!1}catch(b){t.deleteError(b),U.visible=!1}finally{U.loading=!1}},_t=()=>{U.visible=!1,U.itemType=null,U.item=null,U.loading=!1,U.references=[],U.warningMessage=""},en=b=>{if(!b)return"";const B=b.event||"Unknown",S=b.command||b.shell||"",V=S.length>50?S.substring(0,50)+"...":S;return`${B}${V?": "+V:""}`},tn=()=>{const b=U.item,B=U.itemType;return b?B==="hook"?en(b):B==="skill"?b.directoryPath?b.directoryPath.split("/").pop():b.name:b.name||"":""},nn=async()=>{await $e()},on=async b=>{me("agent",b)},ln=async b=>{me("command",b)},an=async()=>{await Ee()},rn=async()=>{await Ae()},sn=b=>{me("hook",b)},dn=async b=>{me("skill",b)},cn=b=>{me("mcp",b)},un=b=>{const B={...b,type:b.configType||b.type,projectId:e.scope==="project"?e.projectId:null};ce.value=B,K.value=!0},pn=async b=>{K.value=!1;const B=b.filename||b.source?.name||"Configuration";if(t.copySuccess(B),e.scope==="user"?b.destination?.id==="user-global":b.destination?.id===e.projectId){const V=b.source?.type;V==="agent"?await $e():V==="command"?await Ee():V==="hook"?await Ae():V==="mcp"?await De():V==="skill"&&await Me()}},mn=b=>{K.value=!1,t.copyError(b)},fn=()=>{K.value=!1,t.copyCancelled()};return Z(()=>e.projectId,()=>{e.scope==="project"&&Ve()}),Z(()=>oe.value,b=>{b?document.body.style.overflow="hidden":document.body.style.overflow=""}),qe(()=>{Ve()}),dt(()=>{document.body.style.overflow=""}),{pageTitle:g,pageSubtitle:i,pageIcon:a,pageIconColor:r,loadingMessage:p,breadcrumbItems:d,agents:u,commands:k,hooks:E,mcpServers:M,skills:G,loading:R,loadingAgents:I,loadingCommands:F,loadingHooks:Y,loadingMCP:je,loadingSkills:Te,error:ue,errorMessage:ie,warnings:xe,retryLoad:zt,initialDisplayCount:Ft,showingAllAgents:Ht,showingAllCommands:Nt,showingAllHooks:Rt,showingAllMcp:Kt,showingAllSkills:qt,sidebarVisible:oe,selectedItem:Q,selectedType:_e,currentItems:pe,currentIndex:le,showDetail:Wt,onNavigate:Yt,showCopyModal:K,selectedConfig:ce,handleCopyClick:un,handleCopySuccess:pn,handleCopyError:mn,handleCopyCancelled:fn,deleteModal:U,handleDeleteConfirm:Qt,handleDeleteCancel:_t,getDeleteItemName:tn,handleAgentUpdated:nn,handleAgentDelete:on,handleCommandUpdated:an,handleCommandDelete:ln,handleHookUpdated:rn,handleHookDelete:sn,handleSkillDelete:dn,handleMcpDelete:cn}}};function Qr(e,t,n,o,s,l){const c=J("CopyModal"),v=J("ConfigPageLayout"),h=J("DeleteConfirmationModal");return y(),C(z,null,[w(v,{"page-title":o.pageTitle,"page-subtitle":o.pageSubtitle,"page-icon":o.pageIcon,"page-icon-color":o.pageIconColor,"breadcrumb-items":o.breadcrumbItems,loading:o.loading,"loading-message":o.loadingMessage,"loading-agents":o.loadingAgents,"loading-commands":o.loadingCommands,"loading-hooks":o.loadingHooks,"loading-mcp":o.loadingMCP,"loading-skills":o.loadingSkills,error:o.error,"error-message":o.errorMessage,warnings:o.warnings,agents:o.agents,commands:o.commands,hooks:o.hooks,"mcp-servers":o.mcpServers,skills:o.skills,"showing-all-agents":o.showingAllAgents,"showing-all-commands":o.showingAllCommands,"showing-all-hooks":o.showingAllHooks,"showing-all-mcp":o.showingAllMcp,"showing-all-skills":o.showingAllSkills,"initial-display-count":o.initialDisplayCount,"sidebar-visible":o.sidebarVisible,"selected-item":o.selectedItem,"selected-type":o.selectedType,"current-items":o.currentItems,"selected-index":o.currentIndex,scope:n.scope,"project-id":n.projectId,"enable-agent-crud":!0,"enable-command-crud":!0,"enable-skill-crud":!0,"enable-hook-crud":!0,"enable-mcp-crud":!0,onRetry:o.retryLoad,onToggleAgents:t[1]||(t[1]=f=>o.showingAllAgents=!o.showingAllAgents),onToggleCommands:t[2]||(t[2]=f=>o.showingAllCommands=!o.showingAllCommands),onToggleHooks:t[3]||(t[3]=f=>o.showingAllHooks=!o.showingAllHooks),onToggleMcp:t[4]||(t[4]=f=>o.showingAllMcp=!o.showingAllMcp),onToggleSkills:t[5]||(t[5]=f=>o.showingAllSkills=!o.showingAllSkills),onShowDetail:o.showDetail,onCloseSidebar:t[6]||(t[6]=f=>o.sidebarVisible=!1),onNavigate:o.onNavigate,onCopyClicked:o.handleCopyClick,onAgentDelete:o.handleAgentDelete,onAgentUpdated:o.handleAgentUpdated,onCommandDelete:o.handleCommandDelete,onCommandUpdated:o.handleCommandUpdated,onHookUpdated:o.handleHookUpdated,onHookDelete:o.handleHookDelete,onSkillDelete:o.handleSkillDelete,onMcpDelete:o.handleMcpDelete},{"copy-modal":T(()=>[o.selectedConfig?(y(),P(c,{key:0,visible:o.showCopyModal,"onUpdate:visible":t[0]||(t[0]=f=>o.showCopyModal=f),sourceConfig:o.selectedConfig,onCopySuccess:o.handleCopySuccess,onCopyError:o.handleCopyError,onCopyCancelled:o.handleCopyCancelled},null,8,["visible","sourceConfig","onCopySuccess","onCopyError","onCopyCancelled"])):j("",!0)]),_:1},8,["page-title","page-subtitle","page-icon","page-icon-color","breadcrumb-items","loading","loading-message","loading-agents","loading-commands","loading-hooks","loading-mcp","loading-skills","error","error-message","warnings","agents","commands","hooks","mcp-servers","skills","showing-all-agents","showing-all-commands","showing-all-hooks","showing-all-mcp","showing-all-skills","initial-display-count","sidebar-visible","selected-item","selected-type","current-items","selected-index","scope","project-id","onRetry","onShowDetail","onNavigate","onCopyClicked","onAgentDelete","onAgentUpdated","onCommandDelete","onCommandUpdated","onHookUpdated","onHookDelete","onSkillDelete","onMcpDelete"]),w(h,{visible:o.deleteModal.visible,"onUpdate:visible":t[7]||(t[7]=f=>o.deleteModal.visible=f),"item-type":o.deleteModal.itemType||"agent","item-name":o.getDeleteItemName(),"dependent-items":o.deleteModal.references,loading:o.deleteModal.loading,"warning-message":o.deleteModal.warningMessage,onConfirm:o.handleDeleteConfirm,onCancel:o.handleDeleteCancel},null,8,["visible","item-type","item-name","dependent-items","loading","warning-message","onConfirm","onCancel"])],64)}const oi=X(Xr,[["render",Qr]]);export{oi as C}; //# sourceMappingURL=ConfigurationPage-4UDblkST.js.map