skill-creator 2.0.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/cli.js +107 -27
  3. package/dist/cli.js.map +3 -3
  4. package/dist/daemon.js +106 -26
  5. package/dist/daemon.js.map +3 -3
  6. package/dist/package.json +1 -1
  7. package/dist/webui/_app/immutable/chunks/{BySEbwqx.js → B0pe_B_o.js} +1 -1
  8. package/dist/webui/_app/immutable/chunks/{B_YFzSAv.js → BQ8kO0xi.js} +1 -1
  9. package/dist/webui/_app/immutable/chunks/BZ2Jwl6O.js +1 -0
  10. package/dist/webui/_app/immutable/chunks/{D25cXQtk.js → Bg2k7op5.js} +1 -1
  11. package/dist/webui/_app/immutable/chunks/{DWcQbrnv.js → BoMQFGOq.js} +1 -1
  12. package/dist/webui/_app/immutable/chunks/{DEtYLPO4.js → CGrKeCdk.js} +1 -1
  13. package/dist/webui/_app/immutable/chunks/{IYkYSIV6.js → COoMyR0G.js} +1 -1
  14. package/dist/webui/_app/immutable/chunks/{D-ecV3TD.js → CqzSRtkf.js} +1 -1
  15. package/dist/webui/_app/immutable/chunks/{D0xHg31U.js → CsaIfA9E.js} +1 -1
  16. package/dist/webui/_app/immutable/chunks/{DJNLWtK-.js → D-Jy42mM.js} +1 -1
  17. package/dist/webui/_app/immutable/chunks/{B2zyE4XX.js → DPrjly2t.js} +1 -1
  18. package/dist/webui/_app/immutable/chunks/{BD9g8Udg.js → FuwccWbx.js} +1 -1
  19. package/dist/webui/_app/immutable/chunks/{BaH4uqzh.js → JcDjicYT.js} +1 -1
  20. package/dist/webui/_app/immutable/chunks/{BrDKAjtR.js → O2CEZ91h.js} +1 -1
  21. package/dist/webui/_app/immutable/chunks/{iicbWqXp.js → gkPAnPzC.js} +1 -1
  22. package/dist/webui/_app/immutable/chunks/{CEpOi93z.js → r1y9r7sj.js} +1 -1
  23. package/dist/webui/_app/immutable/entry/{app.CbFi8HIH.js → app.BisiObvX.js} +2 -2
  24. package/dist/webui/_app/immutable/entry/start.uEYh5tXy.js +1 -0
  25. package/dist/webui/_app/immutable/nodes/{0.C7-AKGsj.js → 0.C8yGM2gr.js} +2 -2
  26. package/dist/webui/_app/immutable/nodes/{1.raBmjc20.js → 1.BUJKZ337.js} +1 -1
  27. package/dist/webui/_app/immutable/nodes/{2.ewWz-Ki-.js → 2.Db-aM2Oa.js} +1 -1
  28. package/dist/webui/_app/version.json +1 -1
  29. package/dist/webui/index.html +14 -14
  30. package/package.json +1 -1
  31. package/dist/webui/_app/immutable/chunks/DLuJKUyD.js +0 -1
  32. package/dist/webui/_app/immutable/entry/start.C3bV1TCO.js +0 -1
package/dist/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "skill-creator",
3
- "version": "2.0.0",
3
+ "version": "2.0.1",
4
4
  "type": "module"
5
5
  }
@@ -1 +1 @@
1
- import{$ as e,A as t,At as n,B as r,Ct as i,F as a,G as o,Mt as s,N as c,R as l,S as u,St as d,U as f,W as p,X as m,_t as h,a as g,ct as _,d as v,ft as y,g as ee,gt as b,j as te,k as ne,kt as x,l as re,lt as S,m as C,mt as w,nt as T,o as E,ot as D,p as ie,rt as O,s as k,st as A,ut as j,x as ae,z as oe}from"./CmCJ0SKP.js";import"./xihTtKlq.js";import{t as M}from"./BkEnd9_Z.js";import{a as N,i as se,r as ce}from"./D-ecV3TD.js";import{_ as le,a as ue,b as de,s as P,t as fe,u as pe,v as me,x as he}from"./DWcQbrnv.js";import{a as ge,i as _e,l as ve,n as ye,o as be,r as F,t as xe}from"./D25cXQtk.js";import{a as I,i as L,n as R,s as z}from"./CNPsST_i.js";import{t as Se}from"./BEPs9Z9s.js";import{n as Ce,r as we,t as Te}from"./Ckw1quWt.js";import{t as Ee}from"./CIFG41pU.js";import{n as De,t as Oe}from"./s48N5eaK.js";import{t as B}from"./D-V0xBeS.js";import{t as ke}from"./D8Der6oM.js";var V=fe(ue),H=j({target:null,checking:!1,applying:!1,checkError:null,results:[],applyResults:null});async function Ae(e,t){let n=V.issue(),r=()=>n.isCurrent()&&_e(H.target,e);H.target=e,H.checking=!0,H.checkError=null,H.results=[],H.applyResults=null;try{let{results:n}=await P().skills.update.check({...e,skillIds:t});if(!r())return;H.results=n}catch(e){if(!r())return;H.checkError=e instanceof Error?e.message:String(e)}finally{n.isLatest()&&(H.checking=!1)}}async function je(e,t){let n=V.issue(),r=()=>n.isCurrent()&&_e(H.target,e);H.applying=!0;try{let{results:n}=await P().skills.update.apply({...e,skillIds:t});return r()?(H.applyResults=n,n):null}catch(e){if(!r())return null;throw e}finally{n.isLatest()&&(H.applying=!1)}}function Me(){V.invalidate(),H.results=[],H.applyResults=null,H.checkError=null}function Ne(e){let t=0,n=0,r=0,i=0;for(let a of e)a.status===`updated`?t+=1:a.status===`already-current`?n+=1:a.status===`failed`?r+=1:i+=1;return{outdated:t,current:n,failed:r,unavailable:i}}function Pe(e){let t=0,n=0,r=0;for(let i of e)i.status===`updated`?t+=1:i.status===`already-current`?n+=1:r+=1;return{updated:t,current:n,failed:r}}var U=new Set([`$$slots`,`$$events`,`$$legacy`]);function W(e,t){let n=E(t,U),r=[[`circle`,{cx:`12`,cy:`12`,r:`10`}],[`line`,{x1:`10`,x2:`10`,y1:`15`,y2:`9`}],[`line`,{x1:`14`,x2:`14`,y1:`15`,y2:`9`}]];M(e,k({name:`circle-pause`},()=>n,{get iconNode(){return r}}))}var G=r(`<span title="Disabled (paused)" class="shrink-0"><!></span>`),K=r(`<span class="shrink-0 text-[10px] uppercase tracking-wide text-amber-600 dark:text-amber-400">disabled</span>`),q=r(`<button type="button"><!> <span class="min-w-0 flex-1"><span class="flex items-center gap-2"><span class="truncate text-[13px] font-medium text-foreground"> </span> <!></span> <span class="mt-0.5 line-clamp-2 text-[11px] leading-4"> </span></span></button>`);function Fe(e,t){i(t,!0);let r=g(t,`selected`,3,!1);var s=q(),f=D(s),p=e=>{var t=G();W(D(t),{class:`mt-0.5 h-4 w-4 text-amber-600 dark:text-amber-400`}),n(t),l(e,t)},m=e=>{Ce(e,{class:`mt-0.5 h-4 w-4 shrink-0 text-primary`})};c(f,e=>{t.skill.disabled?e(p):e(m,-1)});var h=S(f,2),v=D(h),y=D(v),ee=_(y,!0),b=S(y,2),te=e=>{var t=K();l(e,t)};c(b,e=>{t.skill.disabled&&e(te)}),n(v);var ne=S(v,2),x=_(ne,!0);n(h),n(s),T(e=>{C(s,`data-skill-id`,t.skill.id),C(s,`aria-pressed`,r()),ae(s,1,e),a(ee,t.skill.name),a(x,t.skill.description||`No description`)},[()=>u(z(`group flex min-h-14 w-full items-start gap-2.5 border-b border-border/70 px-3 py-2.5 text-left transition-colors`,r()?`bg-accent text-foreground`:`text-muted-foreground hover:bg-accent/60 hover:text-foreground`))]),o(`click`,s,function(...e){t.onclick?.apply(this,e)}),l(e,s),d()}p([`click`]);var J=new Set([`$$slots`,`$$events`,`$$legacy`]);function Ie(e,t){let n=E(t,J),r=[[`path`,{d:`m12 19-7-7 7-7`}],[`path`,{d:`M19 12H5`}]];M(e,k({name:`arrow-left`},()=>n,{get iconNode(){return r}}))}var Y=new Set([`$$slots`,`$$events`,`$$legacy`]);function Le(e,t){let n=E(t,Y),r=[[`path`,{d:`M12 17V3`}],[`path`,{d:`m6 11 6 6 6-6`}],[`path`,{d:`M19 21H5`}]];M(e,k({name:`arrow-down-to-line`},()=>n,{get iconNode(){return r}}))}var Re=new Set([`$$slots`,`$$events`,`$$legacy`]);function ze(e,t){let n=E(t,Re),r=[[`path`,{d:`M12 2v10`}],[`path`,{d:`M18.4 6.6a9 9 0 1 1-12.77.04`}]];M(e,k({name:`power`},()=>n,{get iconNode(){return r}}))}var Be=new Set([`$$slots`,`$$events`,`$$legacy`]);function Ve(e,t){let n=E(t,Be),r=[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`}],[`path`,{d:`m9 12 2 2 4-4`}]];M(e,k({name:`shield-check`},()=>n,{get iconNode(){return r}}))}var He=r(`<!> Insights`,1),Ue=r(`<!> Updates`,1),We=r(`<p class="flex shrink-0 items-center gap-2 border-b border-border px-4 py-2 text-xs text-muted-foreground" role="status"><!> Checking upstream sources…</p>`),Ge=r(`<div class="flex shrink-0 items-start gap-2 border-b border-border px-4 py-2 text-xs text-destructive" role="alert"><span class="min-w-0 flex-1 break-words"> </span> <button class="shrink-0 underline underline-offset-2">Retry</button></div>`),Ke=r(`<span class="text-muted-foreground"> </span>`),qe=r(`<span class="text-destructive"> </span>`),Je=r(`<p class="min-w-0 flex-1 text-xs"><span class="font-medium">Applied</span> <!> <!> <!></p>`),Ye=r(`<span class="font-medium text-primary"> </span>`),Xe=r(`<span class="font-medium">All current</span>`),Ze=r(`<!> `,1),Qe=r(`<p class="min-w-0 flex-1 text-xs"><!> <!> <!> <!></p> <!>`,1),$e=r(`<li class="pl-3 text-[10px] text-muted-foreground"> </li>`),et=r(`<li class="flex items-baseline gap-1.5"><span class="min-w-0 flex-1 truncate"> </span> <!></li> <!>`,1),tt=r(`<ul class="mt-1.5 max-h-40 space-y-1 overflow-y-auto text-[11px]"></ul>`),nt=r(`<section class="shrink-0 border-b border-border px-4 py-2.5" aria-label="Update report" data-testid="update-report"><div class="flex items-center gap-2"><!> <button class="flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-muted hover:text-foreground" aria-label="Dismiss update report"><!></button></div> <!></section>`),rt=r(`<div class="flex items-center gap-2 px-4 py-6 text-xs text-muted-foreground"><!> Loading skills…</div>`),it=r(`<div class="flex flex-col items-start gap-2 px-4 py-6 text-xs text-destructive"><p class="break-words"> </p> <!></div>`),at=r(`<p class="px-4 py-6 text-xs text-muted-foreground">No skills match.</p>`),ot=r(`<div class="flex h-full flex-col items-center justify-center gap-2 px-8 text-center text-muted-foreground"><!> <p class="text-sm font-medium text-foreground">Select a skill</p> <p class="max-w-xs text-xs">Inspect its frontmatter, rendered body, and validation status.</p></div>`),st=r(`<div class="flex h-full items-center justify-center gap-2 text-xs text-muted-foreground"><!> Loading skill…</div>`),ct=r(`<div class="flex h-full flex-col items-center justify-center gap-2 px-8 text-center"><p class="text-xs text-destructive"> </p> <!></div>`),lt=r(`<h2 class="truncate text-base font-semibold"> </h2>`),ut=r(`<textarea rows="2" class="mt-1 w-full resize-y rounded-md border border-input bg-input/20 px-2 py-1 text-xs leading-5 outline-none focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/30" aria-label="Skill description"></textarea>`),dt=r(`<p class="mt-0.5 text-xs leading-5 text-muted-foreground"> </p>`),ft=r(`<!> Save`,1),pt=r(`<!> Validate`,1),mt=r(`<!> Valid skill`,1),ht=r(`<!> Validation issues`,1),gt=r(`<p class="mt-1 text-xs text-destructive"> </p>`),_t=r(`<p class="mt-1 text-xs text-amber-700 dark:text-amber-300"> </p>`),vt=r(`<section class="mb-4 border-b border-border pb-3" aria-live="polite"><div class="flex items-center gap-2 text-xs font-medium"><!></div> <!> <!></section>`),yt=r(`<div><dt class="bg-muted/40 px-2 py-1 text-[11px] font-medium text-muted-foreground"> </dt> <dd class="break-words px-2 py-1 text-[11px]"> </dd></div>`),bt=r(`<section class="mb-4"><h3 class="mb-2 text-xs font-medium text-muted-foreground">Frontmatter</h3> <dl class="overflow-x-auto rounded-md border border-border"></dl></section>`),xt=r(`<header tabindex="-1" class="detail-header shrink-0 border-b border-border px-4 py-3 focus:outline-none svelte-9qjypz"><div class="flex items-start gap-2"><button class="provider-back mt-0.5 hidden h-8 w-8 items-center justify-center svelte-9qjypz" aria-label="Back to skills"><!></button> <div class="min-w-0 flex-1"><!> <!></div> <div class="flex shrink-0 items-center gap-1.5"><!> <!> <!></div></div> <div class="mt-2 flex flex-wrap gap-1.5"><!> <!> <!></div></header> <div class="min-h-0 flex-1 overflow-y-auto px-4 py-3"><!> <!> <section><h3 class="mb-2 text-xs font-medium text-muted-foreground">SKILL.md</h3> <div class="prose prose-sm max-w-none overflow-x-auto"></div></section></div>`,1),St=r(`<div class="provider-surface flex h-full min-h-0 w-full min-w-0 svelte-9qjypz"><section aria-label="Skills"><header class="shrink-0 border-b border-border px-4 py-3"><div class="flex flex-wrap items-center gap-x-2 gap-y-1.5"><h1 class="min-w-0 truncate text-base font-semibold"> </h1> <!> <div class="ml-auto flex flex-wrap items-center gap-1"><!> <!></div></div> <div class="relative mt-2"><!> <input class="h-7 w-full rounded-md border border-input bg-input/20 pl-7 pr-2 text-xs outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/30" placeholder="Filter skills" aria-label="Filter skills"/></div></header> <!> <div class="min-h-0 flex-1 overflow-y-auto"><!></div></section> <section aria-label="Skill detail"><!></section></div>`);function Ct(r,u){i(u,!0);let p=ce(),g=se(),C=b(()=>p?.()?.wsId),E=b(()=>p?.()?.providerId),k=b(()=>g?.()??{}),j=b(()=>m(k).skill),M=b(()=>m(k).q??``),P=b(()=>m(k).view??`list`),_e=fe(ue),z=w(null),V=w(!1),U=w(null),W=w(!1),G=w(null),K=w(!1),q=w(!1),J=w(``),Y=w(``),Re=w(null),Be=w(null),Ct=null,X=b(()=>{if(!m(C)||!m(E))return null;let e=he.safeParse(m(C)),t=de.safeParse(m(E));return!e.success||!t.success?null:{workspaceId:e.data,providerId:t.data}});O(()=>{m(X)&&ye(m(X))}),O(()=>{let e=m(X),t=m(j);if(!e||!t){y(z,null),y(U,null);return}wt(e,t)});async function wt(e,t){let n=_e.issue(),r=me.safeParse(t);if(!r.success){y(z,null),y(U,`Invalid skill id in URL.`);return}y(V,!0),y(U,null),y(G,null);try{let t=await xe(e,r.data);if(!n.isCurrent())return;y(z,t,!0);let{frontmatter:i}=De(t.content),a=pe.safeParse(i);y(J,a.success?a.data.name:t.name,!0),y(Y,a.success?a.data.description:t.description,!0)}catch(e){if(!n.isCurrent())return;y(z,null),y(U,e instanceof Error?e.message:String(e),!0)}finally{n.isLatest()&&y(V,!1)}}let Tt=b(()=>{let e=m(M).trim().toLowerCase(),t=F.skills;return e?t.filter(t=>[t.name,t.description,t.provider].some(t=>t.toLowerCase().includes(e))):t}),Z=b(()=>m(z)?De(m(z).content):null),Et=b(()=>m(Z)?Oe(m(Z).body):``),Dt=b(()=>m(X)!==null&&m(X).workspaceId!==`~`);function Ot(e){m(C)&&m(E)&&N(`workspaces.provider`,{wsId:m(C),providerId:m(E)},{...m(k),skill:e,view:`detail`})}function kt(e){m(C)&&m(E)&&N(`workspaces.provider`,{wsId:m(C),providerId:m(E)},{...m(k),q:e||void 0},`REPLACE`)}function At(){m(C)&&m(E)&&(Ct=m(j)??null,N(`workspaces.provider`,{wsId:m(C),providerId:m(E)},{...m(k),view:`list`}))}let jt=`list`;O(()=>{let t=m(P),n=e(()=>jt),r=e(()=>Ct);jt=t,t===`list`&&n===`detail`&&r&&(Ct=null,(document.querySelector(`button[data-skill-id="${CSS.escape(r)}"]`)??m(Be))?.focus())}),O(()=>{m(P)!==`detail`||m(V)||m(z)?.id!==void 0&&m(Re)?.focus()});async function Mt(){let e=m(z);if(!e||!m(X)||m(q))return;y(q,!0);let t=e.disabled?`enable`:`disable`;try{let n=await ge([e.id],t);if(!n)return;let r=n.results.find(t=>t.skillId===e.id);r&&(r.status===`conflict`?R(`${r.name}: ${t} conflict${r.error?` — ${r.error}`:`.`}`):r.status===`failed`?R(`${r.name}: ${t} failed — ${r.error??`unknown error`}`):r.status===`skipped`?R(`${r.name}: already ${t===`enable`?`enabled`:`disabled`}.`):R(`${r.name} ${r.status}.`)),await wt(m(X),e.id)}catch(e){R(e instanceof Error?e.message:String(e))}finally{y(q,!1)}}let Nt=b(()=>H.results.filter(e=>e.status===`updated`).map(e=>e.skillId)),Q=b(()=>Ne(H.results)),$=b(()=>H.applyResults?Pe(H.applyResults):null);O(()=>{m(X)&&Me()});async function Pt(){m(X)&&!H.checking&&await Ae(m(X))}async function Ft(){if(m(X)&&!H.applying&&m(Nt).length!==0)try{let e=await je(m(X),m(Nt));if(!e)return;let t=Pe(e),n=[t.updated>0?`${t.updated} updated`:null,t.current>0?`${t.current} already current`:null,t.failed>0?`${t.failed} failed`:null].filter(e=>e!==null);R(n.length>0?n.join(` · `):`No changes applied.`),await ye(m(X))}catch(e){R(e instanceof Error?e.message:String(e))}}async function It(){if(m(z)&&m(X)){y(W,!0),y(G,null);try{let e=await be(m(z).id);e&&y(G,{success:e.success,errors:e.errors,warnings:e.warnings},!0)}catch(e){y(G,{success:!1,errors:[e instanceof Error?e.message:String(e)],warnings:[]},!0)}finally{y(W,!1)}}}async function Lt(){let e=m(z),t=m(X),n=m(Z)?.body;if(!e||!t||n===void 0)return;let r=m(J).trim(),i=m(Y).trim();if(!r||!i){R(`Name and description cannot be empty.`);return}y(K,!0);try{let a=m(Z)?m(Z).frontmatter:{},o=pe.safeParse({...a,name:r,description:i});if(!o.success){R(`Frontmatter is invalid after edit.`);return}let s=o.data,c=await ve({mode:`update`,workspaceId:t.workspaceId,providerId:t.providerId,skillId:e.id,expectedRevision:e.revision,frontmatter:s,body:n});y(z,{...e,revision:c.document.revision,name:r,description:i},!0),R(`Saved.`)}catch(e){e instanceof le&&e.code===`CONFLICT`?R(`This skill changed elsewhere. Reload to view the latest.`,{label:`Reload`,run:()=>{t&&m(z)&&wt(t,m(z).id)}}):R(e instanceof Error?e.message:String(e))}finally{y(K,!1)}}var Rt=St(),zt=D(Rt),Bt=D(zt),Vt=D(Bt),Ht=D(Vt),Ut=_(Ht,!0),Wt=S(Ht,2),Gt=e=>{L(e,{class:`h-3.5 w-3.5 shrink-0 animate-spin text-muted-foreground`,title:`Refreshing skills`})},Kt=e=>{B(e,{variant:`secondary`,children:(e,t)=>{x();var n=f();T(()=>a(n,m(Tt).length)),l(e,n)},$$slots:{default:!0}})};c(Wt,e=>{F.refreshing?e(Gt):e(Kt,-1)});var qt=S(Wt,2),Jt=D(qt);I(Jt,{variant:`ghost`,size:`sm`,class:`h-7 gap-1.5 px-2 text-xs`,title:`Read-only analysis: duplicates, conflicts, shared resources`,onclick:()=>{m(C)&&m(E)&&N(`workspaces.intelligence`,{wsId:m(C),providerId:m(E)},{})},children:(e,t)=>{var n=He(),r=A(n);ke(r,{class:`h-3.5 w-3.5`}),x(),l(e,n)},$$slots:{default:!0}});var Yt=S(Jt,2);I(Yt,{variant:`ghost`,size:`sm`,class:`h-7 gap-1.5 px-2 text-xs`,title:`Compare installed skills against their upstream sources`,get disabled(){return H.checking},onclick:()=>void Pt(),children:(e,t)=>{var n=Ue(),r=A(n),i=e=>{L(e,{class:`h-3.5 w-3.5 animate-spin`})},a=e=>{Le(e,{class:`h-3.5 w-3.5`})};c(r,e=>{H.checking?e(i):e(a,-1)}),x(),l(e,n)},$$slots:{default:!0}}),n(qt),n(Vt);var Xt=S(Vt,2),Zt=D(Xt);Ee(Zt,{class:`pointer-events-none absolute left-2 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-muted-foreground`});var Qt=S(Zt,2);ie(Qt),re(Qt,e=>y(Be,e),()=>m(Be)),n(Xt),n(Bt);var $t=S(Bt,2),en=e=>{var t=We(),r=D(t);L(r,{class:`h-3.5 w-3.5 animate-spin`}),x(),n(t),l(e,t)},tn=e=>{var t=Ge(),r=D(t),i=_(r,!0),s=S(r,2);n(t),T(()=>a(i,H.checkError)),o(`click`,s,()=>void Pt()),l(e,t)},nn=e=>{var r=nt(),i=D(r),s=D(i),u=e=>{var t=Je(),r=S(D(t),2),i=e=>{var t=Ke(),n=_(t);T(()=>a(n,`· ${m($).updated??``} updated`)),l(e,t)};c(r,e=>{m($).updated>0&&e(i)});var o=S(r,2),s=e=>{var t=Ke(),n=_(t);T(()=>a(n,`· ${m($).current??``} already current`)),l(e,t)};c(o,e=>{m($).current>0&&e(s)});var u=S(o,2),d=e=>{var t=qe(),n=_(t);T(()=>a(n,`· ${m($).failed??``} failed`)),l(e,t)};c(u,e=>{m($).failed>0&&e(d)}),n(t),l(e,t)},d=e=>{var t=Qe(),r=A(t),i=D(r),o=e=>{var t=Ye(),n=_(t);T(()=>a(n,`${m(Q).outdated??``} outdated`)),l(e,t)},s=e=>{var t=Xe();l(e,t)};c(i,e=>{m(Q).outdated>0?e(o):e(s,-1)});var u=S(i,2),d=e=>{var t=Ke(),n=_(t);T(()=>a(n,`· ${m(Q).current??``} up to date`)),l(e,t)};c(u,e=>{m(Q).current>0&&e(d)});var f=S(u,2),p=e=>{var t=Ke(),n=_(t);T(()=>a(n,`· ${m(Q).unavailable??``} unavailable`)),l(e,t)};c(f,e=>{m(Q).unavailable>0&&e(p)});var h=S(f,2),g=e=>{var t=qe(),n=_(t);T(()=>a(n,`· ${m(Q).failed??``} failed`)),l(e,t)};c(h,e=>{m(Q).failed>0&&e(g)}),n(r);var v=S(r,2),y=e=>{I(e,{size:`sm`,class:`h-7 gap-1.5 px-2 text-xs`,get disabled(){return H.applying},onclick:()=>void Ft(),children:(e,t)=>{var n=Ze(),r=A(n),i=e=>{L(e,{class:`h-3.5 w-3.5 animate-spin`})},o=e=>{Le(e,{class:`h-3.5 w-3.5`})};c(r,e=>{H.applying?e(i):e(o,-1)});var s=S(r);T(()=>a(s,` Update ${m(Nt).length??``}`)),l(e,n)},$$slots:{default:!0}})};c(v,e=>{m(Nt).length>0&&e(y)}),l(e,t)};c(s,e=>{m($)?e(u):e(d,-1)});var p=S(s,2),h=D(p);Se(h,{class:`h-3.5 w-3.5`}),n(p),n(i);var g=S(i,2),v=e=>{let r=b(()=>H.applyResults??H.results);var i=tt();t(i,21,()=>m(r),e=>e.skillId,(e,t)=>{var r=et(),i=A(r),o=D(i),s=_(o,!0),u=S(o,2),d=e=>{B(e,{variant:`secondary`,class:`text-[10px]`,children:(e,t)=>{x();var n=f();T(()=>a(n,m($)?`reinstalled`:`outdated`)),l(e,n)},$$slots:{default:!0}})},p=e=>{B(e,{variant:`outline`,class:`text-[10px]`,children:(e,t)=>{x();var n=f(`current`);l(e,n)},$$slots:{default:!0}})},h=e=>{B(e,{variant:`destructive`,class:`text-[10px]`,children:(e,t)=>{x();var n=f(`failed`);l(e,n)},$$slots:{default:!0}})},g=e=>{B(e,{variant:`outline`,class:`text-[10px]`,children:(e,t)=>{x();var n=f(`unavailable`);l(e,n)},$$slots:{default:!0}})};c(u,e=>{m(t).status===`updated`?e(d):m(t).status===`already-current`?e(p,1):m(t).status===`failed`?e(h,2):e(g,-1)}),n(i);var v=S(i,2),y=e=>{var n=$e(),r=_(n,!0);T(()=>a(r,m(t).error)),l(e,n)};c(v,e=>{m(t).error&&e(y)}),T(()=>a(s,m(t).name)),l(e,r)}),n(i),l(e,i)};c(g,e=>{(H.applyResults??H.results)&&e(v)}),n(r),o(`click`,p,()=>Me()),l(e,r)};c($t,e=>{H.checking?e(en):H.checkError?e(tn,1):(H.results.length>0||H.applyResults)&&e(nn,2)});var rn=S($t,2),an=D(rn),on=e=>{var t=rt(),r=D(t);L(r,{class:`h-3.5 w-3.5 animate-spin`}),x(),n(t),l(e,t)},sn=e=>{var t=it(),r=D(t),i=_(r,!0),o=S(r,2),s=e=>{I(e,{variant:`outline`,size:`sm`,class:`h-7 text-xs`,onclick:()=>void ye(m(X)),children:(e,t)=>{x();var n=f(`Retry`);l(e,n)},$$slots:{default:!0}})};c(o,e=>{m(X)&&e(s)}),n(t),T(()=>a(i,F.error)),l(e,t)},cn=e=>{var t=at();l(e,t)},ln=e=>{var n=oe(),r=A(n);t(r,17,()=>m(Tt),e=>e.id,(e,t)=>{{let n=b(()=>m(t).id===m(j));Fe(e,{get skill(){return m(t)},get selected(){return m(n)},onclick:()=>Ot(m(t).id)})}}),l(e,n)};c(an,e=>{F.loading?e(on):F.error?e(sn,1):m(Tt).length===0?e(cn,2):e(ln,-1)}),n(rn),n(zt);var un=S(zt,2),dn=D(un),fn=e=>{var t=ot(),r=D(t);Ce(r,{class:`h-8 w-8 opacity-50`}),x(4),n(t),l(e,t)},pn=e=>{var t=st(),r=D(t);L(r,{class:`h-4 w-4 animate-spin`}),x(),n(t),l(e,t)},mn=e=>{var t=ct(),r=D(t),i=_(r,!0),o=S(r,2),s=e=>{I(e,{variant:`outline`,size:`sm`,onclick:()=>wt(m(X),m(j)),children:(e,t)=>{x();var n=f(`Retry`);l(e,n)},$$slots:{default:!0}})};c(o,e=>{m(X)&&m(j)&&e(s)}),n(t),T(()=>a(i,m(U))),l(e,t)},hn=e=>{let r=b(()=>m(Dt));var i=xt(),u=A(i),d=D(u),p=D(d);Ie(D(p),{class:`h-4 w-4`}),n(p);var g=S(p,2),ee=D(g),C=e=>{we(e,{class:`h-8 text-base font-semibold`,"aria-label":`Skill name`,get value(){return m(J)},set value(e){y(J,e,!0)}})},w=e=>{var t=lt(),n=_(t,!0);T(()=>a(n,m(z).name)),l(e,t)};c(ee,e=>{m(r)?e(C):e(w,-1)});var E=S(ee,2),ie=e=>{var t=ut();h(t),v(t,()=>m(Y),e=>y(Y,e)),l(e,t)},O=e=>{var t=dt(),n=_(t,!0);T(()=>a(n,m(z).description)),l(e,t)};c(E,e=>{m(r)?e(ie):e(O,-1)}),n(g);var k=S(g,2),j=D(k),M=e=>{I(e,{size:`sm`,class:`h-8 gap-1.5`,onclick:Lt,get disabled(){return m(K)},children:(e,t)=>{var n=oe(),r=A(n),i=e=>{var t=ft(),n=A(t);L(n,{class:`h-3.5 w-3.5 animate-spin`}),x(),l(e,t)},a=e=>{var t=f(`Save`);l(e,t)};c(r,e=>{m(K)?e(i):e(a,-1)}),l(e,n)},$$slots:{default:!0}})};c(j,e=>{m(r)&&e(M)});var N=S(j,2);I(N,{variant:`outline`,size:`sm`,class:`h-8 gap-1.5`,onclick:It,get disabled(){return m(W)},children:(e,t)=>{var n=pt(),r=A(n),i=e=>{L(e,{class:`h-3.5 w-3.5 animate-spin`})},a=e=>{Ve(e,{class:`h-3.5 w-3.5`})};c(r,e=>{m(W)?e(i):e(a,-1)}),x(),l(e,n)},$$slots:{default:!0}});var se=S(N,2);{let e=b(()=>m(z).disabled?`default`:`outline`);I(se,{size:`sm`,get variant(){return m(e)},class:`h-8 gap-1.5`,get disabled(){return m(q)},onclick:Mt,children:(e,t)=>{var n=Ze(),r=A(n),i=e=>{L(e,{class:`h-3.5 w-3.5 animate-spin`})},o=e=>{ze(e,{class:`h-3.5 w-3.5`})};c(r,e=>{m(q)?e(i):e(o,-1)});var s=S(r);T(()=>a(s,` ${m(z).disabled?`Enable`:`Disable`}`)),l(e,n)},$$slots:{default:!0}})}n(k),n(d);var ce=S(d,2),le=D(ce);B(le,{variant:`secondary`,children:(e,t)=>{x();var n=f();T(()=>a(n,m(z).provider)),l(e,n)},$$slots:{default:!0}});var ue=S(le,2);B(ue,{variant:`outline`,children:(e,t)=>{x();var n=f();T(()=>a(n,m(z).directoryName)),l(e,n)},$$slots:{default:!0}});var de=S(ue,2),P=e=>{B(e,{variant:`outline`,class:`text-amber-700 dark:text-amber-300`,children:(e,t)=>{x();var n=f(`Disabled`);l(e,n)},$$slots:{default:!0}})};c(de,e=>{m(z).disabled&&e(P)}),n(ce),n(u),re(u,e=>y(Re,e),()=>m(Re));var fe=S(u,2),pe=D(fe),me=e=>{var r=vt(),i=D(r),o=D(i),s=e=>{var t=mt(),n=A(t);Te(n,{class:`h-4 w-4 text-emerald-600`}),x(),l(e,t)},u=e=>{var t=ht();Ve(A(t),{class:`h-4 w-4 text-destructive`}),x(),l(e,t)};c(o,e=>{m(G).success?e(s):e(u,-1)}),n(i);var d=S(i,2);t(d,17,()=>m(G).errors,te,(e,t)=>{var n=gt(),r=_(n,!0);T(()=>a(r,m(t))),l(e,n)});var f=S(d,2);t(f,17,()=>m(G).warnings,te,(e,t)=>{var n=_t(),r=_(n,!0);T(()=>a(r,m(t))),l(e,n)}),n(r),l(e,r)};c(pe,e=>{m(G)&&e(me)});var he=S(pe,2),ge=e=>{var r=bt(),i=S(D(r),2);t(i,21,()=>Object.entries(m(Z).frontmatter),te,(e,t,r)=>{var i=b(()=>s(m(t),2));let o=()=>m(i)[0],c=()=>m(i)[1];var u=yt();ae(u,1,`grid grid-cols-[120px_minmax(0,1fr)] ${r>0?`border-t border-border`:``}`);var d=D(u),f=_(d,!0),p=S(d,2),h=_(p,!0);n(u),T(e=>{a(f,o()),a(h,e)},[()=>c()===null?`null`:String(c())]),l(e,u)}),n(i),n(r),l(e,r)};c(he,e=>{m(Z)&&e(ge)});var _e=S(he,2),ve=S(D(_e),2);ne(ve,()=>m(Et),!0),n(ve),n(_e),n(fe),o(`click`,p,At),l(e,i)};c(dn,e=>{m(j)?m(V)?e(pn,1):m(U)?e(mn,2):m(z)&&e(hn,3):e(fn)}),n(un),n(Rt),T(()=>{ae(zt,1,`provider-list flex min-h-0 flex-col border-r border-border ${m(P)===`detail`?`provider-list-hidden`:``}`,`svelte-9qjypz`),a(Ut,m(E)??`—`),ee(Qt,m(M)),ae(un,1,`provider-detail flex min-h-0 flex-col ${m(P)===`list`?`provider-detail-hidden`:``}`,`svelte-9qjypz`)}),o(`input`,Qt,e=>kt(e.currentTarget.value)),l(r,Rt),d()}p([`input`,`click`]);export{Ct as default};
1
+ import{$ as e,A as t,At as n,B as r,Ct as i,F as a,G as o,Mt as s,N as c,R as l,S as u,St as d,U as f,W as p,X as m,_t as h,a as g,ct as _,d as v,ft as y,g as ee,gt as b,j as te,k as ne,kt as x,l as re,lt as S,m as C,mt as w,nt as T,o as E,ot as D,p as ie,rt as O,s as k,st as A,ut as j,x as ae,z as oe}from"./CmCJ0SKP.js";import"./xihTtKlq.js";import{t as M}from"./BkEnd9_Z.js";import{a as N,i as se,r as ce}from"./CqzSRtkf.js";import{_ as le,a as ue,b as de,s as P,t as fe,u as pe,v as me,x as he}from"./BoMQFGOq.js";import{a as ge,i as _e,l as ve,n as ye,o as be,r as F,t as xe}from"./Bg2k7op5.js";import{a as I,i as L,n as R,s as z}from"./CNPsST_i.js";import{t as Se}from"./BEPs9Z9s.js";import{n as Ce,r as we,t as Te}from"./Ckw1quWt.js";import{t as Ee}from"./CIFG41pU.js";import{n as De,t as Oe}from"./s48N5eaK.js";import{t as B}from"./D-V0xBeS.js";import{t as ke}from"./D8Der6oM.js";var V=fe(ue),H=j({target:null,checking:!1,applying:!1,checkError:null,results:[],applyResults:null});async function Ae(e,t){let n=V.issue(),r=()=>n.isCurrent()&&_e(H.target,e);H.target=e,H.checking=!0,H.checkError=null,H.results=[],H.applyResults=null;try{let{results:n}=await P().skills.update.check({...e,skillIds:t});if(!r())return;H.results=n}catch(e){if(!r())return;H.checkError=e instanceof Error?e.message:String(e)}finally{n.isLatest()&&(H.checking=!1)}}async function je(e,t){let n=V.issue(),r=()=>n.isCurrent()&&_e(H.target,e);H.applying=!0;try{let{results:n}=await P().skills.update.apply({...e,skillIds:t});return r()?(H.applyResults=n,n):null}catch(e){if(!r())return null;throw e}finally{n.isLatest()&&(H.applying=!1)}}function Me(){V.invalidate(),H.results=[],H.applyResults=null,H.checkError=null}function Ne(e){let t=0,n=0,r=0,i=0;for(let a of e)a.status===`updated`?t+=1:a.status===`already-current`?n+=1:a.status===`failed`?r+=1:i+=1;return{outdated:t,current:n,failed:r,unavailable:i}}function Pe(e){let t=0,n=0,r=0;for(let i of e)i.status===`updated`?t+=1:i.status===`already-current`?n+=1:r+=1;return{updated:t,current:n,failed:r}}var U=new Set([`$$slots`,`$$events`,`$$legacy`]);function W(e,t){let n=E(t,U),r=[[`circle`,{cx:`12`,cy:`12`,r:`10`}],[`line`,{x1:`10`,x2:`10`,y1:`15`,y2:`9`}],[`line`,{x1:`14`,x2:`14`,y1:`15`,y2:`9`}]];M(e,k({name:`circle-pause`},()=>n,{get iconNode(){return r}}))}var G=r(`<span title="Disabled (paused)" class="shrink-0"><!></span>`),K=r(`<span class="shrink-0 text-[10px] uppercase tracking-wide text-amber-600 dark:text-amber-400">disabled</span>`),q=r(`<button type="button"><!> <span class="min-w-0 flex-1"><span class="flex items-center gap-2"><span class="truncate text-[13px] font-medium text-foreground"> </span> <!></span> <span class="mt-0.5 line-clamp-2 text-[11px] leading-4"> </span></span></button>`);function Fe(e,t){i(t,!0);let r=g(t,`selected`,3,!1);var s=q(),f=D(s),p=e=>{var t=G();W(D(t),{class:`mt-0.5 h-4 w-4 text-amber-600 dark:text-amber-400`}),n(t),l(e,t)},m=e=>{Ce(e,{class:`mt-0.5 h-4 w-4 shrink-0 text-primary`})};c(f,e=>{t.skill.disabled?e(p):e(m,-1)});var h=S(f,2),v=D(h),y=D(v),ee=_(y,!0),b=S(y,2),te=e=>{var t=K();l(e,t)};c(b,e=>{t.skill.disabled&&e(te)}),n(v);var ne=S(v,2),x=_(ne,!0);n(h),n(s),T(e=>{C(s,`data-skill-id`,t.skill.id),C(s,`aria-pressed`,r()),ae(s,1,e),a(ee,t.skill.name),a(x,t.skill.description||`No description`)},[()=>u(z(`group flex min-h-14 w-full items-start gap-2.5 border-b border-border/70 px-3 py-2.5 text-left transition-colors`,r()?`bg-accent text-foreground`:`text-muted-foreground hover:bg-accent/60 hover:text-foreground`))]),o(`click`,s,function(...e){t.onclick?.apply(this,e)}),l(e,s),d()}p([`click`]);var J=new Set([`$$slots`,`$$events`,`$$legacy`]);function Ie(e,t){let n=E(t,J),r=[[`path`,{d:`m12 19-7-7 7-7`}],[`path`,{d:`M19 12H5`}]];M(e,k({name:`arrow-left`},()=>n,{get iconNode(){return r}}))}var Y=new Set([`$$slots`,`$$events`,`$$legacy`]);function Le(e,t){let n=E(t,Y),r=[[`path`,{d:`M12 17V3`}],[`path`,{d:`m6 11 6 6 6-6`}],[`path`,{d:`M19 21H5`}]];M(e,k({name:`arrow-down-to-line`},()=>n,{get iconNode(){return r}}))}var Re=new Set([`$$slots`,`$$events`,`$$legacy`]);function ze(e,t){let n=E(t,Re),r=[[`path`,{d:`M12 2v10`}],[`path`,{d:`M18.4 6.6a9 9 0 1 1-12.77.04`}]];M(e,k({name:`power`},()=>n,{get iconNode(){return r}}))}var Be=new Set([`$$slots`,`$$events`,`$$legacy`]);function Ve(e,t){let n=E(t,Be),r=[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`}],[`path`,{d:`m9 12 2 2 4-4`}]];M(e,k({name:`shield-check`},()=>n,{get iconNode(){return r}}))}var He=r(`<!> Insights`,1),Ue=r(`<!> Updates`,1),We=r(`<p class="flex shrink-0 items-center gap-2 border-b border-border px-4 py-2 text-xs text-muted-foreground" role="status"><!> Checking upstream sources…</p>`),Ge=r(`<div class="flex shrink-0 items-start gap-2 border-b border-border px-4 py-2 text-xs text-destructive" role="alert"><span class="min-w-0 flex-1 break-words"> </span> <button class="shrink-0 underline underline-offset-2">Retry</button></div>`),Ke=r(`<span class="text-muted-foreground"> </span>`),qe=r(`<span class="text-destructive"> </span>`),Je=r(`<p class="min-w-0 flex-1 text-xs"><span class="font-medium">Applied</span> <!> <!> <!></p>`),Ye=r(`<span class="font-medium text-primary"> </span>`),Xe=r(`<span class="font-medium">All current</span>`),Ze=r(`<!> `,1),Qe=r(`<p class="min-w-0 flex-1 text-xs"><!> <!> <!> <!></p> <!>`,1),$e=r(`<li class="pl-3 text-[10px] text-muted-foreground"> </li>`),et=r(`<li class="flex items-baseline gap-1.5"><span class="min-w-0 flex-1 truncate"> </span> <!></li> <!>`,1),tt=r(`<ul class="mt-1.5 max-h-40 space-y-1 overflow-y-auto text-[11px]"></ul>`),nt=r(`<section class="shrink-0 border-b border-border px-4 py-2.5" aria-label="Update report" data-testid="update-report"><div class="flex items-center gap-2"><!> <button class="flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-muted hover:text-foreground" aria-label="Dismiss update report"><!></button></div> <!></section>`),rt=r(`<div class="flex items-center gap-2 px-4 py-6 text-xs text-muted-foreground"><!> Loading skills…</div>`),it=r(`<div class="flex flex-col items-start gap-2 px-4 py-6 text-xs text-destructive"><p class="break-words"> </p> <!></div>`),at=r(`<p class="px-4 py-6 text-xs text-muted-foreground">No skills match.</p>`),ot=r(`<div class="flex h-full flex-col items-center justify-center gap-2 px-8 text-center text-muted-foreground"><!> <p class="text-sm font-medium text-foreground">Select a skill</p> <p class="max-w-xs text-xs">Inspect its frontmatter, rendered body, and validation status.</p></div>`),st=r(`<div class="flex h-full items-center justify-center gap-2 text-xs text-muted-foreground"><!> Loading skill…</div>`),ct=r(`<div class="flex h-full flex-col items-center justify-center gap-2 px-8 text-center"><p class="text-xs text-destructive"> </p> <!></div>`),lt=r(`<h2 class="truncate text-base font-semibold"> </h2>`),ut=r(`<textarea rows="2" class="mt-1 w-full resize-y rounded-md border border-input bg-input/20 px-2 py-1 text-xs leading-5 outline-none focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/30" aria-label="Skill description"></textarea>`),dt=r(`<p class="mt-0.5 text-xs leading-5 text-muted-foreground"> </p>`),ft=r(`<!> Save`,1),pt=r(`<!> Validate`,1),mt=r(`<!> Valid skill`,1),ht=r(`<!> Validation issues`,1),gt=r(`<p class="mt-1 text-xs text-destructive"> </p>`),_t=r(`<p class="mt-1 text-xs text-amber-700 dark:text-amber-300"> </p>`),vt=r(`<section class="mb-4 border-b border-border pb-3" aria-live="polite"><div class="flex items-center gap-2 text-xs font-medium"><!></div> <!> <!></section>`),yt=r(`<div><dt class="bg-muted/40 px-2 py-1 text-[11px] font-medium text-muted-foreground"> </dt> <dd class="break-words px-2 py-1 text-[11px]"> </dd></div>`),bt=r(`<section class="mb-4"><h3 class="mb-2 text-xs font-medium text-muted-foreground">Frontmatter</h3> <dl class="overflow-x-auto rounded-md border border-border"></dl></section>`),xt=r(`<header tabindex="-1" class="detail-header shrink-0 border-b border-border px-4 py-3 focus:outline-none svelte-9qjypz"><div class="flex items-start gap-2"><button class="provider-back mt-0.5 hidden h-8 w-8 items-center justify-center svelte-9qjypz" aria-label="Back to skills"><!></button> <div class="min-w-0 flex-1"><!> <!></div> <div class="flex shrink-0 items-center gap-1.5"><!> <!> <!></div></div> <div class="mt-2 flex flex-wrap gap-1.5"><!> <!> <!></div></header> <div class="min-h-0 flex-1 overflow-y-auto px-4 py-3"><!> <!> <section><h3 class="mb-2 text-xs font-medium text-muted-foreground">SKILL.md</h3> <div class="prose prose-sm max-w-none overflow-x-auto"></div></section></div>`,1),St=r(`<div class="provider-surface flex h-full min-h-0 w-full min-w-0 svelte-9qjypz"><section aria-label="Skills"><header class="shrink-0 border-b border-border px-4 py-3"><div class="flex flex-wrap items-center gap-x-2 gap-y-1.5"><h1 class="min-w-0 truncate text-base font-semibold"> </h1> <!> <div class="ml-auto flex flex-wrap items-center gap-1"><!> <!></div></div> <div class="relative mt-2"><!> <input class="h-7 w-full rounded-md border border-input bg-input/20 pl-7 pr-2 text-xs outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/30" placeholder="Filter skills" aria-label="Filter skills"/></div></header> <!> <div class="min-h-0 flex-1 overflow-y-auto"><!></div></section> <section aria-label="Skill detail"><!></section></div>`);function Ct(r,u){i(u,!0);let p=ce(),g=se(),C=b(()=>p?.()?.wsId),E=b(()=>p?.()?.providerId),k=b(()=>g?.()??{}),j=b(()=>m(k).skill),M=b(()=>m(k).q??``),P=b(()=>m(k).view??`list`),_e=fe(ue),z=w(null),V=w(!1),U=w(null),W=w(!1),G=w(null),K=w(!1),q=w(!1),J=w(``),Y=w(``),Re=w(null),Be=w(null),Ct=null,X=b(()=>{if(!m(C)||!m(E))return null;let e=he.safeParse(m(C)),t=de.safeParse(m(E));return!e.success||!t.success?null:{workspaceId:e.data,providerId:t.data}});O(()=>{m(X)&&ye(m(X))}),O(()=>{let e=m(X),t=m(j);if(!e||!t){y(z,null),y(U,null);return}wt(e,t)});async function wt(e,t){let n=_e.issue(),r=me.safeParse(t);if(!r.success){y(z,null),y(U,`Invalid skill id in URL.`);return}y(V,!0),y(U,null),y(G,null);try{let t=await xe(e,r.data);if(!n.isCurrent())return;y(z,t,!0);let{frontmatter:i}=De(t.content),a=pe.safeParse(i);y(J,a.success?a.data.name:t.name,!0),y(Y,a.success?a.data.description:t.description,!0)}catch(e){if(!n.isCurrent())return;y(z,null),y(U,e instanceof Error?e.message:String(e),!0)}finally{n.isLatest()&&y(V,!1)}}let Tt=b(()=>{let e=m(M).trim().toLowerCase(),t=F.skills;return e?t.filter(t=>[t.name,t.description,t.provider].some(t=>t.toLowerCase().includes(e))):t}),Z=b(()=>m(z)?De(m(z).content):null),Et=b(()=>m(Z)?Oe(m(Z).body):``),Dt=b(()=>m(X)!==null&&m(X).workspaceId!==`~`);function Ot(e){m(C)&&m(E)&&N(`workspaces.provider`,{wsId:m(C),providerId:m(E)},{...m(k),skill:e,view:`detail`})}function kt(e){m(C)&&m(E)&&N(`workspaces.provider`,{wsId:m(C),providerId:m(E)},{...m(k),q:e||void 0},`REPLACE`)}function At(){m(C)&&m(E)&&(Ct=m(j)??null,N(`workspaces.provider`,{wsId:m(C),providerId:m(E)},{...m(k),view:`list`}))}let jt=`list`;O(()=>{let t=m(P),n=e(()=>jt),r=e(()=>Ct);jt=t,t===`list`&&n===`detail`&&r&&(Ct=null,(document.querySelector(`button[data-skill-id="${CSS.escape(r)}"]`)??m(Be))?.focus())}),O(()=>{m(P)!==`detail`||m(V)||m(z)?.id!==void 0&&m(Re)?.focus()});async function Mt(){let e=m(z);if(!e||!m(X)||m(q))return;y(q,!0);let t=e.disabled?`enable`:`disable`;try{let n=await ge([e.id],t);if(!n)return;let r=n.results.find(t=>t.skillId===e.id);r&&(r.status===`conflict`?R(`${r.name}: ${t} conflict${r.error?` — ${r.error}`:`.`}`):r.status===`failed`?R(`${r.name}: ${t} failed — ${r.error??`unknown error`}`):r.status===`skipped`?R(`${r.name}: already ${t===`enable`?`enabled`:`disabled`}.`):R(`${r.name} ${r.status}.`)),await wt(m(X),e.id)}catch(e){R(e instanceof Error?e.message:String(e))}finally{y(q,!1)}}let Nt=b(()=>H.results.filter(e=>e.status===`updated`).map(e=>e.skillId)),Q=b(()=>Ne(H.results)),$=b(()=>H.applyResults?Pe(H.applyResults):null);O(()=>{m(X)&&Me()});async function Pt(){m(X)&&!H.checking&&await Ae(m(X))}async function Ft(){if(m(X)&&!H.applying&&m(Nt).length!==0)try{let e=await je(m(X),m(Nt));if(!e)return;let t=Pe(e),n=[t.updated>0?`${t.updated} updated`:null,t.current>0?`${t.current} already current`:null,t.failed>0?`${t.failed} failed`:null].filter(e=>e!==null);R(n.length>0?n.join(` · `):`No changes applied.`),await ye(m(X))}catch(e){R(e instanceof Error?e.message:String(e))}}async function It(){if(m(z)&&m(X)){y(W,!0),y(G,null);try{let e=await be(m(z).id);e&&y(G,{success:e.success,errors:e.errors,warnings:e.warnings},!0)}catch(e){y(G,{success:!1,errors:[e instanceof Error?e.message:String(e)],warnings:[]},!0)}finally{y(W,!1)}}}async function Lt(){let e=m(z),t=m(X),n=m(Z)?.body;if(!e||!t||n===void 0)return;let r=m(J).trim(),i=m(Y).trim();if(!r||!i){R(`Name and description cannot be empty.`);return}y(K,!0);try{let a=m(Z)?m(Z).frontmatter:{},o=pe.safeParse({...a,name:r,description:i});if(!o.success){R(`Frontmatter is invalid after edit.`);return}let s=o.data,c=await ve({mode:`update`,workspaceId:t.workspaceId,providerId:t.providerId,skillId:e.id,expectedRevision:e.revision,frontmatter:s,body:n});y(z,{...e,revision:c.document.revision,name:r,description:i},!0),R(`Saved.`)}catch(e){e instanceof le&&e.code===`CONFLICT`?R(`This skill changed elsewhere. Reload to view the latest.`,{label:`Reload`,run:()=>{t&&m(z)&&wt(t,m(z).id)}}):R(e instanceof Error?e.message:String(e))}finally{y(K,!1)}}var Rt=St(),zt=D(Rt),Bt=D(zt),Vt=D(Bt),Ht=D(Vt),Ut=_(Ht,!0),Wt=S(Ht,2),Gt=e=>{L(e,{class:`h-3.5 w-3.5 shrink-0 animate-spin text-muted-foreground`,title:`Refreshing skills`})},Kt=e=>{B(e,{variant:`secondary`,children:(e,t)=>{x();var n=f();T(()=>a(n,m(Tt).length)),l(e,n)},$$slots:{default:!0}})};c(Wt,e=>{F.refreshing?e(Gt):e(Kt,-1)});var qt=S(Wt,2),Jt=D(qt);I(Jt,{variant:`ghost`,size:`sm`,class:`h-7 gap-1.5 px-2 text-xs`,title:`Read-only analysis: duplicates, conflicts, shared resources`,onclick:()=>{m(C)&&m(E)&&N(`workspaces.intelligence`,{wsId:m(C),providerId:m(E)},{})},children:(e,t)=>{var n=He(),r=A(n);ke(r,{class:`h-3.5 w-3.5`}),x(),l(e,n)},$$slots:{default:!0}});var Yt=S(Jt,2);I(Yt,{variant:`ghost`,size:`sm`,class:`h-7 gap-1.5 px-2 text-xs`,title:`Compare installed skills against their upstream sources`,get disabled(){return H.checking},onclick:()=>void Pt(),children:(e,t)=>{var n=Ue(),r=A(n),i=e=>{L(e,{class:`h-3.5 w-3.5 animate-spin`})},a=e=>{Le(e,{class:`h-3.5 w-3.5`})};c(r,e=>{H.checking?e(i):e(a,-1)}),x(),l(e,n)},$$slots:{default:!0}}),n(qt),n(Vt);var Xt=S(Vt,2),Zt=D(Xt);Ee(Zt,{class:`pointer-events-none absolute left-2 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-muted-foreground`});var Qt=S(Zt,2);ie(Qt),re(Qt,e=>y(Be,e),()=>m(Be)),n(Xt),n(Bt);var $t=S(Bt,2),en=e=>{var t=We(),r=D(t);L(r,{class:`h-3.5 w-3.5 animate-spin`}),x(),n(t),l(e,t)},tn=e=>{var t=Ge(),r=D(t),i=_(r,!0),s=S(r,2);n(t),T(()=>a(i,H.checkError)),o(`click`,s,()=>void Pt()),l(e,t)},nn=e=>{var r=nt(),i=D(r),s=D(i),u=e=>{var t=Je(),r=S(D(t),2),i=e=>{var t=Ke(),n=_(t);T(()=>a(n,`· ${m($).updated??``} updated`)),l(e,t)};c(r,e=>{m($).updated>0&&e(i)});var o=S(r,2),s=e=>{var t=Ke(),n=_(t);T(()=>a(n,`· ${m($).current??``} already current`)),l(e,t)};c(o,e=>{m($).current>0&&e(s)});var u=S(o,2),d=e=>{var t=qe(),n=_(t);T(()=>a(n,`· ${m($).failed??``} failed`)),l(e,t)};c(u,e=>{m($).failed>0&&e(d)}),n(t),l(e,t)},d=e=>{var t=Qe(),r=A(t),i=D(r),o=e=>{var t=Ye(),n=_(t);T(()=>a(n,`${m(Q).outdated??``} outdated`)),l(e,t)},s=e=>{var t=Xe();l(e,t)};c(i,e=>{m(Q).outdated>0?e(o):e(s,-1)});var u=S(i,2),d=e=>{var t=Ke(),n=_(t);T(()=>a(n,`· ${m(Q).current??``} up to date`)),l(e,t)};c(u,e=>{m(Q).current>0&&e(d)});var f=S(u,2),p=e=>{var t=Ke(),n=_(t);T(()=>a(n,`· ${m(Q).unavailable??``} unavailable`)),l(e,t)};c(f,e=>{m(Q).unavailable>0&&e(p)});var h=S(f,2),g=e=>{var t=qe(),n=_(t);T(()=>a(n,`· ${m(Q).failed??``} failed`)),l(e,t)};c(h,e=>{m(Q).failed>0&&e(g)}),n(r);var v=S(r,2),y=e=>{I(e,{size:`sm`,class:`h-7 gap-1.5 px-2 text-xs`,get disabled(){return H.applying},onclick:()=>void Ft(),children:(e,t)=>{var n=Ze(),r=A(n),i=e=>{L(e,{class:`h-3.5 w-3.5 animate-spin`})},o=e=>{Le(e,{class:`h-3.5 w-3.5`})};c(r,e=>{H.applying?e(i):e(o,-1)});var s=S(r);T(()=>a(s,` Update ${m(Nt).length??``}`)),l(e,n)},$$slots:{default:!0}})};c(v,e=>{m(Nt).length>0&&e(y)}),l(e,t)};c(s,e=>{m($)?e(u):e(d,-1)});var p=S(s,2),h=D(p);Se(h,{class:`h-3.5 w-3.5`}),n(p),n(i);var g=S(i,2),v=e=>{let r=b(()=>H.applyResults??H.results);var i=tt();t(i,21,()=>m(r),e=>e.skillId,(e,t)=>{var r=et(),i=A(r),o=D(i),s=_(o,!0),u=S(o,2),d=e=>{B(e,{variant:`secondary`,class:`text-[10px]`,children:(e,t)=>{x();var n=f();T(()=>a(n,m($)?`reinstalled`:`outdated`)),l(e,n)},$$slots:{default:!0}})},p=e=>{B(e,{variant:`outline`,class:`text-[10px]`,children:(e,t)=>{x();var n=f(`current`);l(e,n)},$$slots:{default:!0}})},h=e=>{B(e,{variant:`destructive`,class:`text-[10px]`,children:(e,t)=>{x();var n=f(`failed`);l(e,n)},$$slots:{default:!0}})},g=e=>{B(e,{variant:`outline`,class:`text-[10px]`,children:(e,t)=>{x();var n=f(`unavailable`);l(e,n)},$$slots:{default:!0}})};c(u,e=>{m(t).status===`updated`?e(d):m(t).status===`already-current`?e(p,1):m(t).status===`failed`?e(h,2):e(g,-1)}),n(i);var v=S(i,2),y=e=>{var n=$e(),r=_(n,!0);T(()=>a(r,m(t).error)),l(e,n)};c(v,e=>{m(t).error&&e(y)}),T(()=>a(s,m(t).name)),l(e,r)}),n(i),l(e,i)};c(g,e=>{(H.applyResults??H.results)&&e(v)}),n(r),o(`click`,p,()=>Me()),l(e,r)};c($t,e=>{H.checking?e(en):H.checkError?e(tn,1):(H.results.length>0||H.applyResults)&&e(nn,2)});var rn=S($t,2),an=D(rn),on=e=>{var t=rt(),r=D(t);L(r,{class:`h-3.5 w-3.5 animate-spin`}),x(),n(t),l(e,t)},sn=e=>{var t=it(),r=D(t),i=_(r,!0),o=S(r,2),s=e=>{I(e,{variant:`outline`,size:`sm`,class:`h-7 text-xs`,onclick:()=>void ye(m(X)),children:(e,t)=>{x();var n=f(`Retry`);l(e,n)},$$slots:{default:!0}})};c(o,e=>{m(X)&&e(s)}),n(t),T(()=>a(i,F.error)),l(e,t)},cn=e=>{var t=at();l(e,t)},ln=e=>{var n=oe(),r=A(n);t(r,17,()=>m(Tt),e=>e.id,(e,t)=>{{let n=b(()=>m(t).id===m(j));Fe(e,{get skill(){return m(t)},get selected(){return m(n)},onclick:()=>Ot(m(t).id)})}}),l(e,n)};c(an,e=>{F.loading?e(on):F.error?e(sn,1):m(Tt).length===0?e(cn,2):e(ln,-1)}),n(rn),n(zt);var un=S(zt,2),dn=D(un),fn=e=>{var t=ot(),r=D(t);Ce(r,{class:`h-8 w-8 opacity-50`}),x(4),n(t),l(e,t)},pn=e=>{var t=st(),r=D(t);L(r,{class:`h-4 w-4 animate-spin`}),x(),n(t),l(e,t)},mn=e=>{var t=ct(),r=D(t),i=_(r,!0),o=S(r,2),s=e=>{I(e,{variant:`outline`,size:`sm`,onclick:()=>wt(m(X),m(j)),children:(e,t)=>{x();var n=f(`Retry`);l(e,n)},$$slots:{default:!0}})};c(o,e=>{m(X)&&m(j)&&e(s)}),n(t),T(()=>a(i,m(U))),l(e,t)},hn=e=>{let r=b(()=>m(Dt));var i=xt(),u=A(i),d=D(u),p=D(d);Ie(D(p),{class:`h-4 w-4`}),n(p);var g=S(p,2),ee=D(g),C=e=>{we(e,{class:`h-8 text-base font-semibold`,"aria-label":`Skill name`,get value(){return m(J)},set value(e){y(J,e,!0)}})},w=e=>{var t=lt(),n=_(t,!0);T(()=>a(n,m(z).name)),l(e,t)};c(ee,e=>{m(r)?e(C):e(w,-1)});var E=S(ee,2),ie=e=>{var t=ut();h(t),v(t,()=>m(Y),e=>y(Y,e)),l(e,t)},O=e=>{var t=dt(),n=_(t,!0);T(()=>a(n,m(z).description)),l(e,t)};c(E,e=>{m(r)?e(ie):e(O,-1)}),n(g);var k=S(g,2),j=D(k),M=e=>{I(e,{size:`sm`,class:`h-8 gap-1.5`,onclick:Lt,get disabled(){return m(K)},children:(e,t)=>{var n=oe(),r=A(n),i=e=>{var t=ft(),n=A(t);L(n,{class:`h-3.5 w-3.5 animate-spin`}),x(),l(e,t)},a=e=>{var t=f(`Save`);l(e,t)};c(r,e=>{m(K)?e(i):e(a,-1)}),l(e,n)},$$slots:{default:!0}})};c(j,e=>{m(r)&&e(M)});var N=S(j,2);I(N,{variant:`outline`,size:`sm`,class:`h-8 gap-1.5`,onclick:It,get disabled(){return m(W)},children:(e,t)=>{var n=pt(),r=A(n),i=e=>{L(e,{class:`h-3.5 w-3.5 animate-spin`})},a=e=>{Ve(e,{class:`h-3.5 w-3.5`})};c(r,e=>{m(W)?e(i):e(a,-1)}),x(),l(e,n)},$$slots:{default:!0}});var se=S(N,2);{let e=b(()=>m(z).disabled?`default`:`outline`);I(se,{size:`sm`,get variant(){return m(e)},class:`h-8 gap-1.5`,get disabled(){return m(q)},onclick:Mt,children:(e,t)=>{var n=Ze(),r=A(n),i=e=>{L(e,{class:`h-3.5 w-3.5 animate-spin`})},o=e=>{ze(e,{class:`h-3.5 w-3.5`})};c(r,e=>{m(q)?e(i):e(o,-1)});var s=S(r);T(()=>a(s,` ${m(z).disabled?`Enable`:`Disable`}`)),l(e,n)},$$slots:{default:!0}})}n(k),n(d);var ce=S(d,2),le=D(ce);B(le,{variant:`secondary`,children:(e,t)=>{x();var n=f();T(()=>a(n,m(z).provider)),l(e,n)},$$slots:{default:!0}});var ue=S(le,2);B(ue,{variant:`outline`,children:(e,t)=>{x();var n=f();T(()=>a(n,m(z).directoryName)),l(e,n)},$$slots:{default:!0}});var de=S(ue,2),P=e=>{B(e,{variant:`outline`,class:`text-amber-700 dark:text-amber-300`,children:(e,t)=>{x();var n=f(`Disabled`);l(e,n)},$$slots:{default:!0}})};c(de,e=>{m(z).disabled&&e(P)}),n(ce),n(u),re(u,e=>y(Re,e),()=>m(Re));var fe=S(u,2),pe=D(fe),me=e=>{var r=vt(),i=D(r),o=D(i),s=e=>{var t=mt(),n=A(t);Te(n,{class:`h-4 w-4 text-emerald-600`}),x(),l(e,t)},u=e=>{var t=ht();Ve(A(t),{class:`h-4 w-4 text-destructive`}),x(),l(e,t)};c(o,e=>{m(G).success?e(s):e(u,-1)}),n(i);var d=S(i,2);t(d,17,()=>m(G).errors,te,(e,t)=>{var n=gt(),r=_(n,!0);T(()=>a(r,m(t))),l(e,n)});var f=S(d,2);t(f,17,()=>m(G).warnings,te,(e,t)=>{var n=_t(),r=_(n,!0);T(()=>a(r,m(t))),l(e,n)}),n(r),l(e,r)};c(pe,e=>{m(G)&&e(me)});var he=S(pe,2),ge=e=>{var r=bt(),i=S(D(r),2);t(i,21,()=>Object.entries(m(Z).frontmatter),te,(e,t,r)=>{var i=b(()=>s(m(t),2));let o=()=>m(i)[0],c=()=>m(i)[1];var u=yt();ae(u,1,`grid grid-cols-[120px_minmax(0,1fr)] ${r>0?`border-t border-border`:``}`);var d=D(u),f=_(d,!0),p=S(d,2),h=_(p,!0);n(u),T(e=>{a(f,o()),a(h,e)},[()=>c()===null?`null`:String(c())]),l(e,u)}),n(i),n(r),l(e,r)};c(he,e=>{m(Z)&&e(ge)});var _e=S(he,2),ve=S(D(_e),2);ne(ve,()=>m(Et),!0),n(ve),n(_e),n(fe),o(`click`,p,At),l(e,i)};c(dn,e=>{m(j)?m(V)?e(pn,1):m(U)?e(mn,2):m(z)&&e(hn,3):e(fn)}),n(un),n(Rt),T(()=>{ae(zt,1,`provider-list flex min-h-0 flex-col border-r border-border ${m(P)===`detail`?`provider-list-hidden`:``}`,`svelte-9qjypz`),a(Ut,m(E)??`—`),ee(Qt,m(M)),ae(un,1,`provider-detail flex min-h-0 flex-col ${m(P)===`list`?`provider-detail-hidden`:``}`,`svelte-9qjypz`)}),o(`input`,Qt,e=>kt(e.currentTarget.value)),l(r,Rt),d()}p([`input`,`click`]);export{Ct as default};
@@ -1,2 +1,2 @@
1
- import{A as e,At as t,B as n,Ct as r,F as i,G as a,N as o,R as s,St as c,U as l,W as u,X as d,ct as f,ft as p,gt as m,kt as h,lt as g,m as _,mt as v,nt as y,o as b,ot as x,rt as S,s as C,st as w,x as T,z as E}from"./CmCJ0SKP.js";import{t as D}from"./BaH4uqzh.js";import"./xihTtKlq.js";import"./DLuJKUyD.js";import{t as O}from"./BkEnd9_Z.js";import{A as k,F as ee,M as te,P as A,_ as ne,a as j,b as M,d as N,j as P,m as re,t as ie}from"./BrDKAjtR.js";import"./D25cXQtk.js";import{i as F,n as ae,o as oe,r as se}from"./BD9g8Udg.js";import{n as ce,t as le}from"./Dl8eQ129.js";import{a as I,i as L,n as R}from"./CNPsST_i.js";import{t as ue}from"./BIfnT_mK.js";import{t as z}from"./Bs27XW8_.js";import{t as B}from"./D-V0xBeS.js";var V=new Set([`$$slots`,`$$events`,`$$legacy`]);function de(e,t){let n=b(t,V),r=[[`path`,{d:`M2 9.5a5.5 5.5 0 0 1 9.591-3.676.56.56 0 0 0 .818 0A5.49 5.49 0 0 1 22 9.5c0 2.29-1.5 4-3 5.5l-5.492 5.313a2 2 0 0 1-3 .019L5 15c-1.5-1.5-3-3.2-3-5.5`}],[`path`,{d:`M3.22 13H9.5l.5-1 2 4.5 2-7 1.5 3.5h5.27`}]];O(e,C({name:`heart-pulse`},()=>n,{get iconNode(){return r}}))}var H=new Set([`$$slots`,`$$events`,`$$legacy`]);function fe(e,t){let n=b(t,H),r=[[`circle`,{cx:`12`,cy:`12`,r:`10`}],[`path`,{d:`m16.24 7.76-1.804 5.411a2 2 0 0 1-1.265 1.265L7.76 16.24l1.804-5.411a2 2 0 0 1 1.265-1.265z`}]];O(e,C({name:`compass`},()=>n,{get iconNode(){return r}}))}var U=new Set([`$$slots`,`$$events`,`$$legacy`]);function W(e,t){let n=b(t,U),r=[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`}]];O(e,C({name:`folder`},()=>n,{get iconNode(){return r}}))}var pe=n(`<!> Import`,1),me=n(`<button class="flex w-full items-center gap-2 px-3 py-2 text-left transition-colors hover:bg-muted/50"><!> <span class="min-w-0 flex-1 truncate text-xs"> </span> <span class="shrink-0 rounded bg-muted px-1.5 py-0.5 text-[10px] text-muted-foreground"> </span> <span class="shrink-0 text-[10px] text-muted-foreground"> </span></button>`),he=n(`<section aria-label="Recent agent sessions" class="space-y-1.5"><h2 class="text-xs font-medium uppercase tracking-wide text-muted-foreground">Continue</h2> <div class="divide-y divide-border rounded-lg border border-border"></div></section>`),ge=n(`<div class="flex items-start gap-3 rounded-lg border border-destructive/40 bg-destructive/10 p-4" role="alert"><!> <div class="min-w-0 flex-1"><p class="text-sm font-medium text-destructive">Couldn't load workspaces</p> <p class="mt-1 break-words text-xs text-destructive/90"> </p></div> <!></div>`),_e=n(`<div class="space-y-3" aria-label="Loading workspaces"><div class="h-24 animate-pulse rounded-lg border border-border bg-muted/50"></div> <div class="h-24 animate-pulse rounded-lg border border-border bg-muted/50"></div></div>`),ve=n(`<!> Import workspace`,1),ye=n(`<div class="rounded-lg border border-dashed border-border p-8 text-center"><!> <p class="mt-3 text-sm font-medium">No skill locations yet</p> <p class="mt-1 text-xs text-muted-foreground">Import a directory to manage its skills, or browse the global agent locations.</p> <!></div>`),be=n(`<p class="flex items-center gap-2 text-xs text-muted-foreground" role="status"><!> Updating…</p>`),xe=n(`<span class="text-[11px] text-muted-foreground">Not found on disk</span>`),Se=n(`<span class="block truncate font-mono text-[10px] text-muted-foreground"> </span>`),Ce=n(`<li><button class="flex min-h-11 w-full items-center justify-between gap-2 rounded-md border border-border/60 px-3 py-2 text-left transition-colors hover:bg-muted/50 disabled:pointer-events-none disabled:opacity-50"><span class="min-w-0"><span class="block truncate text-xs font-medium"> </span> <!></span> <!></button></li>`),we=n(`<section class="rounded-lg border border-border"><div class="flex items-center gap-2.5 border-b border-border px-4 py-3"><!> <div class="min-w-0 flex-1"><div class="flex items-center gap-2"><h2 class="truncate text-sm font-medium"> </h2> <!></div> <p class="mt-0.5 text-xs text-muted-foreground"> </p></div></div> <ul class="grid grid-cols-1 gap-2 p-3 sm:grid-cols-2"></ul></section>`),Te=n(`<!> Missing`,1),Ee=n(`<li><button class="flex min-h-9 items-center gap-1.5 rounded-full border border-border/60 px-2.5 py-1 text-xs transition-colors hover:bg-muted/50 disabled:pointer-events-none disabled:opacity-50"> <span class="tabular-nums text-muted-foreground"> </span></button></li>`),De=n(`<ul class="flex flex-wrap gap-1.5 border-t border-border/60 px-4 py-2.5"></ul>`),Oe=n(`<li><div class="flex items-center gap-2.5 px-4 py-3"><button class="flex min-h-11 min-w-0 flex-1 items-center gap-2.5 text-left"><!> <span class="min-w-0 flex-1"><span class="flex items-center gap-2"><span class="truncate text-sm font-medium"> </span> <!></span> <span class="mt-0.5 block truncate font-mono text-[10px] text-muted-foreground"> </span></span> <!></button> <!></div> <!></li>`),ke=n(`<section><h2 class="mb-2 text-xs font-medium uppercase tracking-wide text-muted-foreground">Imported workspaces</h2> <ul class="space-y-2"></ul></section>`),Ae=n(`<!> <!> <!>`,1),je=n(`<div class="flex h-full flex-col overflow-y-auto p-5"><header class="flex shrink-0 items-start justify-between gap-3 border-b border-border pb-4"><div><h1 class="text-lg font-semibold">Workspaces</h1> <p class="mt-0.5 text-xs text-muted-foreground">Your skill library, agent sessions, and quick ways to put both to work.</p></div> <div class="flex shrink-0 items-center gap-1.5"><!> <!></div></header> <div class="mx-auto mt-5 w-full max-w-3xl space-y-6"><section aria-label="Quick actions" class="grid grid-cols-1 gap-2 min-[560px]:grid-cols-2"><button class="flex items-start gap-2.5 rounded-lg border border-border bg-background p-3 text-left transition-colors hover:border-primary/50 hover:bg-primary/5"><!> <span class="min-w-0"><span class="block text-sm font-medium">Create a skill</span> <span class="block text-xs text-muted-foreground">Describe the task; the agent drafts the SKILL.md with best practices.</span></span></button> <button class="flex items-start gap-2.5 rounded-lg border border-border bg-background p-3 text-left transition-colors hover:border-primary/50 hover:bg-primary/5"><!> <span class="min-w-0"><span class="block text-sm font-medium">Health check my library</span> <span class="block text-xs text-muted-foreground">Duplicates, vague descriptions, stale skills — with proposed fixes.</span></span></button> <button class="flex items-start gap-2.5 rounded-lg border border-border bg-background p-3 text-left transition-colors hover:border-primary/50 hover:bg-primary/5"><!> <span class="min-w-0"><span class="block text-sm font-medium">Explore skill sources</span> <span class="block text-xs text-muted-foreground">Discover curated Git sources and analyze candidate skills.</span></span></button> <button class="flex items-start gap-2.5 rounded-lg border border-border bg-background p-3 text-left transition-colors hover:border-primary/50 hover:bg-primary/5"><!> <span class="min-w-0"><span class="block text-sm font-medium">Browse the library</span> <span class="block text-xs text-muted-foreground"> </span></span></button></section> <!> <div id="library-index" class="space-y-6"><!></div></div></div> <!>`,1);function G(n,u){r(u,!0);let b=m(()=>F.workspaces.filter(e=>e.kind===`global`)),C=m(()=>F.workspaces.filter(e=>e.kind===`directory`)),O=m(()=>F.workspaces.length>0),V=m(()=>F.loading&&d(O)),H=v(null),U=v(!1),G=v(!1);S(()=>{ae(),!j.loaded&&!j.loading&&N()});let Me=m(()=>{let e=0,t=0;for(let n of F.workspaces)for(let r of n.providers)t+=1,e+=r.skillCount??0;return{skills:e,providers:t,imported:F.workspaces.filter(e=>e.kind===`directory`).length}}),Ne=m(()=>j.sessions.slice(0,3));function Pe(e){re(e),ne(!0)}function Fe(e){let t=Date.now()-new Date(e).getTime();if(!Number.isFinite(t))return``;let n=Math.floor(t/6e4);if(n<1)return`just now`;if(n<60)return`${n}m ago`;let r=Math.floor(n/60);return r<24?`${r}h ago`:`${Math.floor(r/24)}d ago`}function Ie(e){p(H,e,!0),p(U,!0)}S(()=>{d(U)||p(H,null)});async function Le(){await ae()}function Re(e,t){return`/workspaces/${e.id===`~`?`%7E`:e.id}/${t.id}`}async function ze(){let e=d(H);if(e){p(G,!0);try{await se(e.id)&&(p(U,!1),R(`Removed ${e.label}. Files remain on disk.`))}catch(e){R(e instanceof Error?e.message:String(e))}finally{p(G,!1)}}}var Be=je(),K=w(Be),q=x(K),Ve=g(x(q),2),He=x(Ve);I(He,{variant:`ghost`,size:`icon`,class:`h-9 w-9`,title:`Refresh workspaces`,"aria-label":`Refresh workspaces`,get disabled(){return F.loading},onclick:()=>void Le(),children:(e,t)=>{var n=E(),r=w(n),i=e=>{L(e,{class:`h-4 w-4 animate-spin`})},a=e=>{ue(e,{class:`h-4 w-4`})};o(r,e=>{F.loading?e(i):e(a,-1)}),s(e,n)},$$slots:{default:!0}});var Ue=g(He,2);I(Ue,{size:`sm`,onclick:()=>A(),children:(e,t)=>{var n=pe(),r=w(n);P(r,{class:`h-4 w-4`}),h(),s(e,n)},$$slots:{default:!0}}),t(Ve),t(q);var We=g(q,2),J=x(We),Y=x(J),Ge=x(Y);ie(Ge,{class:`mt-0.5 h-4 w-4 shrink-0 text-primary`}),h(2),t(Y);var X=g(Y,2);de(x(X),{class:`mt-0.5 h-4 w-4 shrink-0 text-primary`}),h(2),t(X);var Z=g(X,2);fe(x(Z),{class:`mt-0.5 h-4 w-4 shrink-0 text-primary`}),h(2),t(Z);var Q=g(Z,2),Ke=x(Q);ee(Ke,{class:`mt-0.5 h-4 w-4 shrink-0 text-primary`});var qe=g(Ke,2),Je=g(x(qe),2),Ye=f(Je);t(qe),t(Q),t(J);var Xe=g(J,2),Ze=n=>{var r=he(),o=g(x(r),2);e(o,21,()=>d(Ne),e=>e.sessionId,(e,n)=>{var r=me(),o=x(r);k(o,{class:`h-3.5 w-3.5 shrink-0 text-muted-foreground`});var c=g(o,2),l=f(c,!0),u=g(c,2),p=f(u,!0),m=g(u,2),h=f(m,!0);t(r),y(e=>{i(l,d(n).title||`Untitled session`),i(p,d(n).mode),i(h,e)},[()=>Fe(d(n).createdAt)]),a(`click`,r,()=>Pe(d(n).sessionId)),s(e,r)}),t(o),t(r),s(n,r)};o(Xe,e=>{d(Ne).length>0&&e(Ze)});var $=g(Xe,2),Qe=x($),$e=e=>{var n=ge(),r=x(n);z(r,{class:`mt-0.5 h-4 w-4 shrink-0 text-destructive`});var a=g(r,2),o=g(x(a),2),c=f(o,!0);t(a);var u=g(a,2);I(u,{variant:`outline`,size:`sm`,onclick:()=>void Le(),children:(e,t)=>{h();var n=l(`Retry`);s(e,n)},$$slots:{default:!0}}),t(n),y(()=>i(c,F.error)),s(e,n)},et=e=>{var t=_e();s(e,t)},tt=e=>{var n=ye(),r=x(n);W(r,{class:`mx-auto h-8 w-8 text-muted-foreground`});var i=g(r,6);I(i,{class:`mt-4`,size:`sm`,onclick:()=>A(),children:(e,t)=>{var n=ve(),r=w(n);P(r,{class:`h-4 w-4`}),h(),s(e,n)},$$slots:{default:!0}}),t(n),s(e,n)},nt=n=>{var r=Ae(),c=w(r),u=e=>{var n=be(),r=x(n);L(r,{class:`h-3.5 w-3.5 animate-spin`}),h(),t(n),s(e,n)};o(c,e=>{d(V)&&e(u)});var p=g(c,2);e(p,17,()=>d(b),e=>e.id,(n,r)=>{let c=m(()=>d(r).available?d(r):null);var u=we(),p=x(u),v=x(p);te(v,{class:`h-4 w-4 shrink-0 text-primary`});var b=g(v,2),S=x(b),C=x(S),w=f(C,!0),T=g(C,2);B(T,{variant:`secondary`,class:`text-[10px]`,children:(e,t)=>{h();var n=l(`~ global`);s(e,n)},$$slots:{default:!0}}),t(S);var E=g(S,2),O=f(E);t(b),t(p);var k=g(p,2);e(k,21,()=>d(r).providers,e=>e.id,(e,n)=>{var u=Ce(),p=x(u),m=x(p),v=x(m),b=f(v,!0),S=g(v,2),C=e=>{var t=xe();s(e,t)},w=e=>{var t=Se(),r=f(t,!0);y(()=>i(r,d(n).path)),s(e,t)};o(S,e=>{d(n).available?d(n).path&&e(w,1):e(C)}),t(m);var T=g(m,2);B(T,{variant:`secondary`,class:`shrink-0 tabular-nums`,children:(e,t)=>{h();var r=l();y(()=>i(r,d(n).skillCount)),s(e,r)},$$slots:{default:!0}}),t(p),t(u),y(()=>{p.disabled=!d(c)||!d(n).available,_(p,`title`,d(n).path??d(n).label),i(b,d(n).label)}),a(`click`,p,()=>d(c)&&void D(Re(d(r),d(n)))),s(e,u)}),t(k),t(u),y(()=>{i(w,d(r).label),i(O,`${d(r).skillCount??``} skill${d(r).skillCount===1?``:`s`} across ${d(r).providers.length??``}
1
+ import{A as e,At as t,B as n,Ct as r,F as i,G as a,N as o,R as s,St as c,U as l,W as u,X as d,ct as f,ft as p,gt as m,kt as h,lt as g,m as _,mt as v,nt as y,o as b,ot as x,rt as S,s as C,st as w,x as T,z as E}from"./CmCJ0SKP.js";import{t as D}from"./JcDjicYT.js";import"./xihTtKlq.js";import"./BZ2Jwl6O.js";import{t as O}from"./BkEnd9_Z.js";import{A as k,F as ee,M as te,P as A,_ as ne,a as j,b as M,d as N,j as P,m as re,t as ie}from"./O2CEZ91h.js";import"./Bg2k7op5.js";import{i as F,n as ae,o as oe,r as se}from"./FuwccWbx.js";import{n as ce,t as le}from"./Dl8eQ129.js";import{a as I,i as L,n as R}from"./CNPsST_i.js";import{t as ue}from"./BIfnT_mK.js";import{t as z}from"./Bs27XW8_.js";import{t as B}from"./D-V0xBeS.js";var V=new Set([`$$slots`,`$$events`,`$$legacy`]);function de(e,t){let n=b(t,V),r=[[`path`,{d:`M2 9.5a5.5 5.5 0 0 1 9.591-3.676.56.56 0 0 0 .818 0A5.49 5.49 0 0 1 22 9.5c0 2.29-1.5 4-3 5.5l-5.492 5.313a2 2 0 0 1-3 .019L5 15c-1.5-1.5-3-3.2-3-5.5`}],[`path`,{d:`M3.22 13H9.5l.5-1 2 4.5 2-7 1.5 3.5h5.27`}]];O(e,C({name:`heart-pulse`},()=>n,{get iconNode(){return r}}))}var H=new Set([`$$slots`,`$$events`,`$$legacy`]);function fe(e,t){let n=b(t,H),r=[[`circle`,{cx:`12`,cy:`12`,r:`10`}],[`path`,{d:`m16.24 7.76-1.804 5.411a2 2 0 0 1-1.265 1.265L7.76 16.24l1.804-5.411a2 2 0 0 1 1.265-1.265z`}]];O(e,C({name:`compass`},()=>n,{get iconNode(){return r}}))}var U=new Set([`$$slots`,`$$events`,`$$legacy`]);function W(e,t){let n=b(t,U),r=[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`}]];O(e,C({name:`folder`},()=>n,{get iconNode(){return r}}))}var pe=n(`<!> Import`,1),me=n(`<button class="flex w-full items-center gap-2 px-3 py-2 text-left transition-colors hover:bg-muted/50"><!> <span class="min-w-0 flex-1 truncate text-xs"> </span> <span class="shrink-0 rounded bg-muted px-1.5 py-0.5 text-[10px] text-muted-foreground"> </span> <span class="shrink-0 text-[10px] text-muted-foreground"> </span></button>`),he=n(`<section aria-label="Recent agent sessions" class="space-y-1.5"><h2 class="text-xs font-medium uppercase tracking-wide text-muted-foreground">Continue</h2> <div class="divide-y divide-border rounded-lg border border-border"></div></section>`),ge=n(`<div class="flex items-start gap-3 rounded-lg border border-destructive/40 bg-destructive/10 p-4" role="alert"><!> <div class="min-w-0 flex-1"><p class="text-sm font-medium text-destructive">Couldn't load workspaces</p> <p class="mt-1 break-words text-xs text-destructive/90"> </p></div> <!></div>`),_e=n(`<div class="space-y-3" aria-label="Loading workspaces"><div class="h-24 animate-pulse rounded-lg border border-border bg-muted/50"></div> <div class="h-24 animate-pulse rounded-lg border border-border bg-muted/50"></div></div>`),ve=n(`<!> Import workspace`,1),ye=n(`<div class="rounded-lg border border-dashed border-border p-8 text-center"><!> <p class="mt-3 text-sm font-medium">No skill locations yet</p> <p class="mt-1 text-xs text-muted-foreground">Import a directory to manage its skills, or browse the global agent locations.</p> <!></div>`),be=n(`<p class="flex items-center gap-2 text-xs text-muted-foreground" role="status"><!> Updating…</p>`),xe=n(`<span class="text-[11px] text-muted-foreground">Not found on disk</span>`),Se=n(`<span class="block truncate font-mono text-[10px] text-muted-foreground"> </span>`),Ce=n(`<li><button class="flex min-h-11 w-full items-center justify-between gap-2 rounded-md border border-border/60 px-3 py-2 text-left transition-colors hover:bg-muted/50 disabled:pointer-events-none disabled:opacity-50"><span class="min-w-0"><span class="block truncate text-xs font-medium"> </span> <!></span> <!></button></li>`),we=n(`<section class="rounded-lg border border-border"><div class="flex items-center gap-2.5 border-b border-border px-4 py-3"><!> <div class="min-w-0 flex-1"><div class="flex items-center gap-2"><h2 class="truncate text-sm font-medium"> </h2> <!></div> <p class="mt-0.5 text-xs text-muted-foreground"> </p></div></div> <ul class="grid grid-cols-1 gap-2 p-3 sm:grid-cols-2"></ul></section>`),Te=n(`<!> Missing`,1),Ee=n(`<li><button class="flex min-h-9 items-center gap-1.5 rounded-full border border-border/60 px-2.5 py-1 text-xs transition-colors hover:bg-muted/50 disabled:pointer-events-none disabled:opacity-50"> <span class="tabular-nums text-muted-foreground"> </span></button></li>`),De=n(`<ul class="flex flex-wrap gap-1.5 border-t border-border/60 px-4 py-2.5"></ul>`),Oe=n(`<li><div class="flex items-center gap-2.5 px-4 py-3"><button class="flex min-h-11 min-w-0 flex-1 items-center gap-2.5 text-left"><!> <span class="min-w-0 flex-1"><span class="flex items-center gap-2"><span class="truncate text-sm font-medium"> </span> <!></span> <span class="mt-0.5 block truncate font-mono text-[10px] text-muted-foreground"> </span></span> <!></button> <!></div> <!></li>`),ke=n(`<section><h2 class="mb-2 text-xs font-medium uppercase tracking-wide text-muted-foreground">Imported workspaces</h2> <ul class="space-y-2"></ul></section>`),Ae=n(`<!> <!> <!>`,1),je=n(`<div class="flex h-full flex-col overflow-y-auto p-5"><header class="flex shrink-0 items-start justify-between gap-3 border-b border-border pb-4"><div><h1 class="text-lg font-semibold">Workspaces</h1> <p class="mt-0.5 text-xs text-muted-foreground">Your skill library, agent sessions, and quick ways to put both to work.</p></div> <div class="flex shrink-0 items-center gap-1.5"><!> <!></div></header> <div class="mx-auto mt-5 w-full max-w-3xl space-y-6"><section aria-label="Quick actions" class="grid grid-cols-1 gap-2 min-[560px]:grid-cols-2"><button class="flex items-start gap-2.5 rounded-lg border border-border bg-background p-3 text-left transition-colors hover:border-primary/50 hover:bg-primary/5"><!> <span class="min-w-0"><span class="block text-sm font-medium">Create a skill</span> <span class="block text-xs text-muted-foreground">Describe the task; the agent drafts the SKILL.md with best practices.</span></span></button> <button class="flex items-start gap-2.5 rounded-lg border border-border bg-background p-3 text-left transition-colors hover:border-primary/50 hover:bg-primary/5"><!> <span class="min-w-0"><span class="block text-sm font-medium">Health check my library</span> <span class="block text-xs text-muted-foreground">Duplicates, vague descriptions, stale skills — with proposed fixes.</span></span></button> <button class="flex items-start gap-2.5 rounded-lg border border-border bg-background p-3 text-left transition-colors hover:border-primary/50 hover:bg-primary/5"><!> <span class="min-w-0"><span class="block text-sm font-medium">Explore skill sources</span> <span class="block text-xs text-muted-foreground">Discover curated Git sources and analyze candidate skills.</span></span></button> <button class="flex items-start gap-2.5 rounded-lg border border-border bg-background p-3 text-left transition-colors hover:border-primary/50 hover:bg-primary/5"><!> <span class="min-w-0"><span class="block text-sm font-medium">Browse the library</span> <span class="block text-xs text-muted-foreground"> </span></span></button></section> <!> <div id="library-index" class="space-y-6"><!></div></div></div> <!>`,1);function G(n,u){r(u,!0);let b=m(()=>F.workspaces.filter(e=>e.kind===`global`)),C=m(()=>F.workspaces.filter(e=>e.kind===`directory`)),O=m(()=>F.workspaces.length>0),V=m(()=>F.loading&&d(O)),H=v(null),U=v(!1),G=v(!1);S(()=>{ae(),!j.loaded&&!j.loading&&N()});let Me=m(()=>{let e=0,t=0;for(let n of F.workspaces)for(let r of n.providers)t+=1,e+=r.skillCount??0;return{skills:e,providers:t,imported:F.workspaces.filter(e=>e.kind===`directory`).length}}),Ne=m(()=>j.sessions.slice(0,3));function Pe(e){re(e),ne(!0)}function Fe(e){let t=Date.now()-new Date(e).getTime();if(!Number.isFinite(t))return``;let n=Math.floor(t/6e4);if(n<1)return`just now`;if(n<60)return`${n}m ago`;let r=Math.floor(n/60);return r<24?`${r}h ago`:`${Math.floor(r/24)}d ago`}function Ie(e){p(H,e,!0),p(U,!0)}S(()=>{d(U)||p(H,null)});async function Le(){await ae()}function Re(e,t){return`/workspaces/${e.id===`~`?`%7E`:e.id}/${t.id}`}async function ze(){let e=d(H);if(e){p(G,!0);try{await se(e.id)&&(p(U,!1),R(`Removed ${e.label}. Files remain on disk.`))}catch(e){R(e instanceof Error?e.message:String(e))}finally{p(G,!1)}}}var Be=je(),K=w(Be),q=x(K),Ve=g(x(q),2),He=x(Ve);I(He,{variant:`ghost`,size:`icon`,class:`h-9 w-9`,title:`Refresh workspaces`,"aria-label":`Refresh workspaces`,get disabled(){return F.loading},onclick:()=>void Le(),children:(e,t)=>{var n=E(),r=w(n),i=e=>{L(e,{class:`h-4 w-4 animate-spin`})},a=e=>{ue(e,{class:`h-4 w-4`})};o(r,e=>{F.loading?e(i):e(a,-1)}),s(e,n)},$$slots:{default:!0}});var Ue=g(He,2);I(Ue,{size:`sm`,onclick:()=>A(),children:(e,t)=>{var n=pe(),r=w(n);P(r,{class:`h-4 w-4`}),h(),s(e,n)},$$slots:{default:!0}}),t(Ve),t(q);var We=g(q,2),J=x(We),Y=x(J),Ge=x(Y);ie(Ge,{class:`mt-0.5 h-4 w-4 shrink-0 text-primary`}),h(2),t(Y);var X=g(Y,2);de(x(X),{class:`mt-0.5 h-4 w-4 shrink-0 text-primary`}),h(2),t(X);var Z=g(X,2);fe(x(Z),{class:`mt-0.5 h-4 w-4 shrink-0 text-primary`}),h(2),t(Z);var Q=g(Z,2),Ke=x(Q);ee(Ke,{class:`mt-0.5 h-4 w-4 shrink-0 text-primary`});var qe=g(Ke,2),Je=g(x(qe),2),Ye=f(Je);t(qe),t(Q),t(J);var Xe=g(J,2),Ze=n=>{var r=he(),o=g(x(r),2);e(o,21,()=>d(Ne),e=>e.sessionId,(e,n)=>{var r=me(),o=x(r);k(o,{class:`h-3.5 w-3.5 shrink-0 text-muted-foreground`});var c=g(o,2),l=f(c,!0),u=g(c,2),p=f(u,!0),m=g(u,2),h=f(m,!0);t(r),y(e=>{i(l,d(n).title||`Untitled session`),i(p,d(n).mode),i(h,e)},[()=>Fe(d(n).createdAt)]),a(`click`,r,()=>Pe(d(n).sessionId)),s(e,r)}),t(o),t(r),s(n,r)};o(Xe,e=>{d(Ne).length>0&&e(Ze)});var $=g(Xe,2),Qe=x($),$e=e=>{var n=ge(),r=x(n);z(r,{class:`mt-0.5 h-4 w-4 shrink-0 text-destructive`});var a=g(r,2),o=g(x(a),2),c=f(o,!0);t(a);var u=g(a,2);I(u,{variant:`outline`,size:`sm`,onclick:()=>void Le(),children:(e,t)=>{h();var n=l(`Retry`);s(e,n)},$$slots:{default:!0}}),t(n),y(()=>i(c,F.error)),s(e,n)},et=e=>{var t=_e();s(e,t)},tt=e=>{var n=ye(),r=x(n);W(r,{class:`mx-auto h-8 w-8 text-muted-foreground`});var i=g(r,6);I(i,{class:`mt-4`,size:`sm`,onclick:()=>A(),children:(e,t)=>{var n=ve(),r=w(n);P(r,{class:`h-4 w-4`}),h(),s(e,n)},$$slots:{default:!0}}),t(n),s(e,n)},nt=n=>{var r=Ae(),c=w(r),u=e=>{var n=be(),r=x(n);L(r,{class:`h-3.5 w-3.5 animate-spin`}),h(),t(n),s(e,n)};o(c,e=>{d(V)&&e(u)});var p=g(c,2);e(p,17,()=>d(b),e=>e.id,(n,r)=>{let c=m(()=>d(r).available?d(r):null);var u=we(),p=x(u),v=x(p);te(v,{class:`h-4 w-4 shrink-0 text-primary`});var b=g(v,2),S=x(b),C=x(S),w=f(C,!0),T=g(C,2);B(T,{variant:`secondary`,class:`text-[10px]`,children:(e,t)=>{h();var n=l(`~ global`);s(e,n)},$$slots:{default:!0}}),t(S);var E=g(S,2),O=f(E);t(b),t(p);var k=g(p,2);e(k,21,()=>d(r).providers,e=>e.id,(e,n)=>{var u=Ce(),p=x(u),m=x(p),v=x(m),b=f(v,!0),S=g(v,2),C=e=>{var t=xe();s(e,t)},w=e=>{var t=Se(),r=f(t,!0);y(()=>i(r,d(n).path)),s(e,t)};o(S,e=>{d(n).available?d(n).path&&e(w,1):e(C)}),t(m);var T=g(m,2);B(T,{variant:`secondary`,class:`shrink-0 tabular-nums`,children:(e,t)=>{h();var r=l();y(()=>i(r,d(n).skillCount)),s(e,r)},$$slots:{default:!0}}),t(p),t(u),y(()=>{p.disabled=!d(c)||!d(n).available,_(p,`title`,d(n).path??d(n).label),i(b,d(n).label)}),a(`click`,p,()=>d(c)&&void D(Re(d(r),d(n)))),s(e,u)}),t(k),t(u),y(()=>{i(w,d(r).label),i(O,`${d(r).skillCount??``} skill${d(r).skillCount===1?``:`s`} across ${d(r).providers.length??``}
2
2
  agent location${d(r).providers.length===1?``:`s`}`)}),s(n,u)});var v=g(p,2),S=n=>{var r=ke(),c=g(x(r),2);e(c,21,()=>d(C),e=>e.id,(n,r)=>{let c=m(()=>d(r).kind===`directory`?d(r):null);var u=Oe(),p=x(u),v=x(p),b=x(v);{let e=m(()=>d(r).available?`text-primary`:`text-destructive`);W(b,{get class(){return`h-4 w-4 shrink-0 ${d(e)??``}`}})}var S=g(b,2),C=x(S),E=x(C),O=f(E,!0),k=g(E,2),ee=e=>{B(e,{variant:`destructive`,class:`text-[10px]`,children:(e,t)=>{var n=Te(),r=w(n);z(r,{class:`h-3 w-3`}),h(),s(e,n)},$$slots:{default:!0}})};o(k,e=>{d(r).available||e(ee)}),t(C);var te=g(C,2),A=f(te,!0);t(S);var ne=g(S,2);B(ne,{variant:`secondary`,class:`shrink-0 tabular-nums`,children:(e,t)=>{h();var n=l();y(()=>i(n,d(r).skillCount)),s(e,n)},$$slots:{default:!0}}),t(v);var j=g(v,2),M=e=>{{let t=m(()=>`Remove ${d(r).label} registration`),n=m(()=>`Remove ${d(r).label}`);I(e,{variant:`ghost`,size:`icon`,class:`h-11 w-11 shrink-0 text-muted-foreground hover:text-destructive`,get title(){return d(t)},get"aria-label"(){return d(n)},onclick:()=>Ie(d(c)),children:(e,t)=>{le(e,{class:`h-4 w-4`})},$$slots:{default:!0}})}};o(j,e=>{d(c)&&e(M)}),t(p);var N=g(p,2),P=n=>{var o=De();e(o,21,()=>d(r).providers,e=>e.id,(e,n)=>{var o=Ee(),c=x(o),l=x(c),u=g(l),p=f(u,!0);t(c),t(o),y(()=>{c.disabled=!d(r).available||!d(n).available,i(l,`${d(n).label??``} `),i(p,d(n).skillCount)}),a(`click`,c,()=>d(r).available&&void D(Re(d(r),d(n)))),s(e,o)}),t(o),y(()=>_(o,`aria-label`,`Providers in ${d(r).label??``}`)),s(n,o)};o(N,e=>{d(r).providers.length>0&&e(P)}),t(u),y(()=>{T(u,1,`rounded-lg border border-border transition-colors ${d(r).available?`hover:border-foreground/20`:`border-destructive/40`}`),v.disabled=!d(r).available,i(O,d(r).label),i(A,d(r).path)}),a(`click`,v,()=>d(r).available&&void D(oe(d(r)))),s(n,u)}),t(c),t(r),s(n,r)};o(v,e=>{d(C).length>0&&e(S)}),s(n,r)};o(Qe,e=>{F.error?e($e):F.loading&&!d(O)?e(et,1):d(O)?e(nt,-1):e(tt,2)}),t($),t(We),t(K);var rt=g(K,2);{let e=m(()=>d(H)?`Remove ${d(H).label} from Skill Creator? Its files stay on disk; only the registration is deleted.`:``);ce(rt,{title:`Remove workspace registration`,get description(){return d(e)},confirmLabel:`Remove`,get busy(){return d(G)},onConfirm:()=>void ze(),get open(){return d(U)},set open(e){p(U,e,!0)}})}y(()=>i(Ye,`${d(Me).skills??``} skills across ${d(Me).providers??``} agent locations.`)),a(`click`,Y,()=>M(`create`,`I want to create a new skill. It should help me `)),a(`click`,X,()=>M(`manage`,`Audit my skill library: find duplicates, vague descriptions, and stale skills, then propose concrete fixes.`)),a(`click`,Z,()=>void D(`/repository`)),a(`click`,Q,()=>document.getElementById(`library-index`)?.scrollIntoView({behavior:`smooth`})),s(n,Be),c()}u([`click`]);export{G as default};
@@ -0,0 +1 @@
1
+ import"./JcDjicYT.js";
@@ -1 +1 @@
1
- import{$ as e,ut as t}from"./CmCJ0SKP.js";import{a as n,s as r,t as i}from"./DWcQbrnv.js";import"./BD9g8Udg.js";function a(e){return r().creator.save(e)}function o(e,t){return r().creator.load({...e,skillId:t})}async function s(e){await r().creator.remove({workspaceId:e.target.workspaceId,providerId:e.target.providerId,skillId:e.skillId,expectedRevision:e.expectedRevision})}var c=i(n),l=i(n),u=i(n),d=i(n),f=t({target:null,skills:[],selected:null,loading:!1,refreshing:!1,error:null,query:``});async function p(t){let n=c.issue(),i=()=>n.isCurrent()&&v(f.target,t),a=e(()=>!v(f.target,t)),o=e(()=>f.skills.length>0);a&&(l.invalidate(),f.target=t,f.skills=[],f.selected=null),f.loading=!o,f.refreshing=o,f.error=null;try{let{skills:e}=await r().skills.list({...t,includeDisabled:!0});if(!i())return;f.skills=e,f.selected&&!e.some(e=>e.id===f.selected?.id)&&(f.selected=null)}catch(e){if(!i())return;f.error=e instanceof Error?e.message:String(e)}finally{n.isLatest()&&(f.loading=!1,f.refreshing=!1)}}async function m(e){let t=f.target;if(!t)return;let n=l.issue(),i=()=>n.isCurrent()&&v(f.target,t);f.error=null;try{let n=await r().skills.info({...t,skillId:e,includeDisabled:!0});i()&&(f.selected=n)}catch(e){if(!i())return;f.error=e instanceof Error?e.message:String(e)}}async function h(e,t){let n=f.target;if(!n)return null;let i=u.issue(),a=()=>i.isCurrent()&&v(f.target,n),o;try{o=await r().skills.toggle({...n,skillIds:e,mode:t})}catch(e){if(!a())return null;throw e}return!a()||(await p(n),!a())?null:(f.selected&&e.includes(f.selected.id)&&await m(f.selected.id),a()?o:null)}async function g(e){let t=f.target;if(!t)return null;let n=d.issue(),i=()=>n.isCurrent()&&v(f.target,t);try{let n=await r().skills.validate({...t,skillId:e});return i()?n:null}catch(e){if(!i())return null;throw e}}function _(e,t){return r().skills.info({...e,skillId:t,includeDisabled:!0})}function v(e,t){return e?.workspaceId===t?.workspaceId&&e?.providerId===t?.providerId}export{h as a,s as c,v as i,a as l,p as n,g as o,f as r,o as s,_ as t};
1
+ import{$ as e,ut as t}from"./CmCJ0SKP.js";import{a as n,s as r,t as i}from"./BoMQFGOq.js";import"./FuwccWbx.js";function a(e){return r().creator.save(e)}function o(e,t){return r().creator.load({...e,skillId:t})}async function s(e){await r().creator.remove({workspaceId:e.target.workspaceId,providerId:e.target.providerId,skillId:e.skillId,expectedRevision:e.expectedRevision})}var c=i(n),l=i(n),u=i(n),d=i(n),f=t({target:null,skills:[],selected:null,loading:!1,refreshing:!1,error:null,query:``});async function p(t){let n=c.issue(),i=()=>n.isCurrent()&&v(f.target,t),a=e(()=>!v(f.target,t)),o=e(()=>f.skills.length>0);a&&(l.invalidate(),f.target=t,f.skills=[],f.selected=null),f.loading=!o,f.refreshing=o,f.error=null;try{let{skills:e}=await r().skills.list({...t,includeDisabled:!0});if(!i())return;f.skills=e,f.selected&&!e.some(e=>e.id===f.selected?.id)&&(f.selected=null)}catch(e){if(!i())return;f.error=e instanceof Error?e.message:String(e)}finally{n.isLatest()&&(f.loading=!1,f.refreshing=!1)}}async function m(e){let t=f.target;if(!t)return;let n=l.issue(),i=()=>n.isCurrent()&&v(f.target,t);f.error=null;try{let n=await r().skills.info({...t,skillId:e,includeDisabled:!0});i()&&(f.selected=n)}catch(e){if(!i())return;f.error=e instanceof Error?e.message:String(e)}}async function h(e,t){let n=f.target;if(!n)return null;let i=u.issue(),a=()=>i.isCurrent()&&v(f.target,n),o;try{o=await r().skills.toggle({...n,skillIds:e,mode:t})}catch(e){if(!a())return null;throw e}return!a()||(await p(n),!a())?null:(f.selected&&e.includes(f.selected.id)&&await m(f.selected.id),a()?o:null)}async function g(e){let t=f.target;if(!t)return null;let n=d.issue(),i=()=>n.isCurrent()&&v(f.target,t);try{let n=await r().skills.validate({...t,skillId:e});return i()?n:null}catch(e){if(!i())return null;throw e}}function _(e,t){return r().skills.info({...e,skillId:t,includeDisabled:!0})}function v(e,t){return e?.workspaceId===t?.workspaceId&&e?.providerId===t?.providerId}export{h as a,s as c,v as i,a as l,p as n,g as o,f as r,o as s,_ as t};
@@ -1,4 +1,4 @@
1
- import{ut as e}from"./CmCJ0SKP.js";import{n as t}from"./BaH4uqzh.js";import"./DLuJKUyD.js";function n(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function r(e,t=`|`){return e.map(e=>ae(e)).join(t)}function i(e,t){return typeof t==`bigint`?t.toString():t}function a(e){return{get value(){{let t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function o(e){return e==null}function s(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function c(e,t){let n=e/t,r=Math.round(n),i=4*2**-52*Math.max(Math.abs(n),1);return Math.abs(n-r)<i?0:n-r}function l(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function u(...e){let t={};for(let n of e){let e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function d(e){return JSON.stringify(e)}function f(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}var p=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function m(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var ee=a(()=>{if(x.jitless||typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function te(e){if(m(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return m(n)!==!1&&Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)!==!1}function ne(e){return te(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}var re=new Set([`string`,`number`,`symbol`]);function ie(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function h(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function g(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function ae(e){return typeof e==`bigint`?e.toString()+`n`:typeof e==`string`?`"${e}"`:`${e}`}function oe(e){return Object.keys(e).filter(t=>e[t]._zod.optin!==void 0&&e[t]._zod.optout===`optional`)}var se={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function ce(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.pick() cannot be used on object schemas containing refinements`);return h(e,u(e._zod.def,{get shape(){let e={};for(let r of Reflect.ownKeys(t)){if(!Object.prototype.hasOwnProperty.call(n.shape,r))throw Error(`Unrecognized key: "${String(r)}"`);t[r]&&l(e,r,n.shape[r])}return l(this,`shape`,e),e},checks:[]}))}function le(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.omit() cannot be used on object schemas containing refinements`);return h(e,u(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e of Reflect.ownKeys(t)){if(!Object.prototype.hasOwnProperty.call(n.shape,e))throw Error(`Unrecognized key: "${String(e)}"`);t[e]&&delete r[e]}return l(this,`shape`,r),r},checks:[]}))}function ue(e,t){if(!te(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0){let n=e._zod.def.shape;for(let e of Reflect.ownKeys(t))if(Object.getOwnPropertyDescriptor(n,e)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return h(e,u(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return l(this,`shape`,n),n}}))}function de(e,t){if(!te(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return h(e,u(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return l(this,`shape`,n),n}}))}function fe(e,t){if(!t?._zod?.def)throw Error("Invalid input to merge: expected an object schema. To merge a plain shape, use `.extend()`.");if(e._zod.def.checks?.length)throw Error(`.merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.`);return h(e,u(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return l(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]}))}function pe(e,t,n,r=`partial`){let i=t._zod.def.checks;if(i&&i.length>0)throw Error(`.${r}() cannot be used on object schemas containing refinements`);return h(t,u(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t of Reflect.ownKeys(n)){if(!Object.prototype.hasOwnProperty.call(r,t))throw Error(`Unrecognized key: "${String(t)}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t of Reflect.ownKeys(r))i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return l(this,`shape`,i),i},checks:[]}))}function me(e,t,n){return h(t,u(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t of Reflect.ownKeys(n)){if(!Object.prototype.hasOwnProperty.call(i,t))throw Error(`Unrecognized key: "${String(t)}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t of Reflect.ownKeys(r))i[t]=new e({type:`nonoptional`,innerType:r[t]});return l(this,`shape`,i),i}}))}function he(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function ge(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function _(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function _e(e){return typeof e==`string`?e:e?.message}function ve(e,t,n){var r;for(let i=t;i<e.length;i++)(r=e[i]).schema??(r.schema=n)}function v(e,t,n){var r;let i=e.inst?._zod?.traits;i?.has(`$ZodType`)&&(i.has(`$ZodCheck`)?(r=e).schema??(r.schema=e.inst):e.schema=e.inst);let a=e.schema===e.inst?void 0:e.schema?._zod.def?.error,o=e.message?e.message:_e(e.inst?._zod.def?.error?.(e))??_e(a?.(e))??_e(t?.error?.(e))??_e(n.customError?.(e))??_e(n.localeError?.(e))??`Invalid input`,{inst:s,schema:c,continue:l,input:u,...d}=e;return d.path??=[],d.message=o,t?.reportInput&&(d.input=u),d}var ye=/[\uD800-\uDBFF]/;function be(e){let t=e.length;if(!ye.test(e))return t;let n=t;for(let r=0;r<t-1;r++)(e.charCodeAt(r)&64512)==55296&&(e.charCodeAt(r+1)&64512)==56320&&(n--,r++);return n}function xe(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function Se(e){let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`nan`:`number`;case`object`:{if(e===null)return`null`;if(Array.isArray(e))return`array`;let t=e;if(t&&Object.getPrototypeOf(t)!==Object.prototype&&`constructor`in t&&t.constructor)return t.constructor.name}}return t}function Ce(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}function we(e,t){for(let n in t){let r=Object.getOwnPropertyDescriptor(t,n);r.get?Object.defineProperty(e,n,{...r,enumerable:!1}):De(e,n,r.value)}}function Te(e,t,n,r=!0){return Object.defineProperty(e,t,{configurable:!0,writable:!0,enumerable:r,value:n}),n}function Ee(e,t,n){return Te(e,t,n,!1)}function De(e,t,n){Object.defineProperty(e,t,{configurable:!0,get(){return this==null?n:Te(this,t,n.bind(this))},set(e){Te(this,t,e)}})}function Oe(e,t){let n=Object.getPrototypeOf(e);return t in n?void 0:n}var ke,Ae=!1,je={configurable:!0,get(){Ae=!0}};function y(e,t,n){let r=Object.getPrototypeOf(e._zod);if(t in r&&ke!==e._zod){ke=void 0;return}ke=e._zod,Object.defineProperty(r,t,{configurable:!0,get(){Object.defineProperty(this,t,je);let e=Ae;Ae=!1;try{let r=n(this);return Ae?delete this[t]:Object.defineProperty(this,t,{configurable:!0,writable:!0,value:r}),Ae||=e,r}catch(n){throw delete this[t],Ae||=e,n}},set(e){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:e})}})}function Me(e,t,n,r){let i=Oe(e,t);i&&Object.defineProperty(i,t,{configurable:!0,get(){let e={configurable:!0,writable:!0,enumerable:r,value:void 0};return Object.defineProperty(this,t,e),e.value=n(this),Object.defineProperty(this,t,e),e.value},set(e){Object.defineProperty(this,t,{configurable:!0,writable:!0,enumerable:r,value:e})}})}var Ne=`~constantCatch`;function Pe(e){let t=()=>e;return t[Ne]=!0,t}var Fe,Ie={value:void 0,enumerable:!1},Le=`captureStackTrace`in Error?Error:null;function Re(e){let t=Le;if(t){let n=t.stackTraceLimit;if(typeof n==`number`){try{t.stackTraceLimit=0}catch{return Le=null,new e}try{return new e}finally{t.stackTraceLimit=n}}}return new e}function b(e,t,n,r){let i={};function a(e){this.def=e,this.constr=d,this.traits=new Set}a.prototype=i;let o=n,s=o&&new WeakSet;function c(n,r){if(!n._zod){Ie.value=new a(r);try{Object.defineProperty(n,"_zod",Ie)}finally{Ie.value=void 0}}if(n._zod.traits.has(e))return;if(n._zod.traits.add(e),t(n,r),s){let e=Object.getPrototypeOf(n),t=n._zod.constr.prototype,r=e;for(;r&&r!==t;)r=Object.getPrototypeOf(r);let i=r??e;s.has(i)||(s.add(i),we(i,o))}let i=d.prototype;for(let e in i)Object.prototype.hasOwnProperty.call(i,e)&&(e in n||(n[e]=i[e].bind(n)))}let l=r?.Parent??Object;class u extends l{}Object.defineProperty(u,"name",{value:e});function d(e){let t=r?.Parent?Re(u):this;c(t,e);let n=t._zod.deferred;if(n){for(let e of n)e();t._zod.deferred=void 0}let i=globalThis.__zod_globalConfig?.postProcessor;return i&&i(t),t}return Object.defineProperty(d,"init",{value:c}),Object.defineProperty(d,Symbol.hasInstance,{value:t=>r?.Parent&&t instanceof r.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(d,"name",{value:e}),d}var ze=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},Be=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(Fe=globalThis).__zod_globalConfig??(Fe.__zod_globalConfig={});var x=globalThis.__zod_globalConfig;function S(e){return e&&Object.assign(x,e),x}function Ve(){let e=this._zod;return e.message??=JSON.stringify(e.def,i,2),e.message}function He(e){this._zod.message=e}var Ue={get:Ve,set:He,enumerable:!0,configurable:!0},We={value:void 0,enumerable:!1},Ge={value:void 0,enumerable:!1},Ke=new WeakSet([Object.prototype,Error.prototype]),qe=(e,t)=>{e.name=`$ZodError`,We.value=e._zod,Object.defineProperty(e,"_zod",We),Ge.value=t,Object.defineProperty(e,"issues",Ge),We.value=void 0,Ge.value=void 0,Object.defineProperty(e,"message",Ue);let n=Object.getPrototypeOf(e);Ke.has(n)||(Ke.add(n),Object.defineProperty(n,"toString",{configurable:!0,enumerable:!1,get(){let e=()=>this.message;return Object.defineProperty(this,"toString",{value:e,configurable:!0,writable:!0}),e},set(e){Object.defineProperty(this,"toString",{value:e,configurable:!0,writable:!0})}}))},Je=b(`$ZodError`,qe),Ye=b(`$ZodError`,qe,void 0,{Parent:Error});function Xe(e,t,n){return Object.prototype.hasOwnProperty.call(e,t)||(t===`__proto__`?Object.defineProperty(e,t,{value:n(),writable:!0,enumerable:!0,configurable:!0}):e[t]=n()),e[t]}function Ze(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?Xe(n,i.path[0],()=>[]).push(t(i)):r.push(t(i));return{formErrors:r,fieldErrors:n}}function Qe(e,t=e=>e.message){let n={_errors:[]},r=(e,i=[])=>{for(let a of e.issues)if(a.code===`invalid_union`&&a.errors.length)a.errors.map(e=>r({issues:e},[...i,...a.path]));else if(a.code===`invalid_key`)r({issues:a.issues},[...i,...a.path]);else if(a.code===`invalid_element`)r({issues:a.issues},[...i,...a.path]);else{let e=[...i,...a.path];if(e.length===0)n._errors.push(t(a));else{let r=n,i=0;for(;i<e.length;){let n=e[i],o=i===e.length-1;if(n===`_errors`){o&&r._errors.push(t(a)),i++;continue}Object.prototype.hasOwnProperty.call(r,n)||Object.defineProperty(r,n,{value:{_errors:[]},enumerable:!0,writable:!0,configurable:!0});let s=r[n];o&&s._errors.push(t(a)),r=s,i++}}}};return r(e),n}function $e(e,t){return{callee:t?.callee??e,Err:t?.Err}}var et=e=>{let t=(n,r,i,a)=>{let o=i?{...i,async:!1}:{async:!1},s=n._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new ze;if(s.issues.length){let n=new((a?.Err)??e)(s.issues.map(e=>v(e,o,S())));throw p(n,a?.callee??t),n}return s.value};return t},tt=e=>{let t=async(n,r,i,a)=>{let o=i?{...i,async:!0}:{async:!0},s=n._zod.run({value:r,issues:[]},o);if(s instanceof Promise&&(s=await s),s.issues.length){let n=new((a?.Err)??e)(s.issues.map(e=>v(e,o,S())));throw p(n,a?.callee??t),n}return s.value};return t},nt=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new ze;return a.issues.length?{success:!1,error:new(e??Je)(a.issues.map(e=>v(e,i,S())))}:{success:!0,data:a.value}},rt=nt(Ye),it=e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>v(e,i,S())))}:{success:!0,data:a.value}},at=it(Ye),ot=e=>{let t=et(e),n=(e,r,i,a)=>{let o=i?{...i,direction:`backward`}:{direction:`backward`};return t(e,r,o,$e(n,a))};return n},st=e=>{let t=et(e),n=(e,r,i,a)=>t(e,r,i,$e(n,a));return n},ct=e=>{let t=tt(e),n=async(e,r,i,a)=>{let o=i?{...i,direction:`backward`}:{direction:`backward`};return await t(e,r,o,$e(n,a))};return n},lt=e=>{let t=tt(e),n=async(e,r,i,a)=>await t(e,r,i,$e(n,a));return n},ut=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return nt(e)(t,n,i)},dt=e=>(t,n,r)=>nt(e)(t,n,r),ft=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return it(e)(t,n,i)},pt=e=>async(t,n,r)=>it(e)(t,n,r),mt=/^[cC][0-9a-z]{6,}$/,ht=/^[0-9a-z]+$/,gt=/^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$/,_t=/^[0-9a-vA-V]{20}$/,vt=/^[A-Za-z0-9]{27}$/,yt=/^[a-zA-Z0-9_-]{21}$/;function bt(e){return RegExp(`^[a-zA-Z0-9_-]{${e}}$`)}var xt=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,St=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Ct=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,wt=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Tt=`^[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$`;function Et(){return new RegExp(Tt,`u`)}var Dt=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Ot=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,kt=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,At=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,jt=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Mt=/^[A-Za-z0-9_-]*$/,Nt=/^https?$/,Pt=/^\+[1-9]\d{6,14}$/,Ft=`(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`;function It(e){return RegExp(`^${e}$`)}var Lt=It(Ft);function Rt(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:e.seconds?`${t}:[0-5]\\d(?:\\.\\d+)?`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function zt(e){return RegExp(`^${Rt(e)}$`)}function Bt(e){let t=[`Z`];e.offset&&t.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let n=`${Rt({precision:e.precision,seconds:!0})}(?:${t.join(`|`)})`,r=e.local?`${n}|${Rt({precision:e.precision})}`:n;return RegExp(`^${Ft}T(?:${r})$`)}var Vt=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}$`)},Ht=/^-?\d+$/,Ut=/^-?\d+(?:\.\d+)?$/,Wt=/^(?:true|false)$/i,Gt=/^null$/i,Kt=/^[^A-Z]*$/,qt=/^[^a-z]*$/,C=b(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Jt=e=>{let t=e.value;return!o(t)&&t.length!==void 0},Yt={number:`number`,bigint:`bigint`,object:`date`},Xt=b(`$ZodCheckLessThan`,(e,t)=>{C.init(e,t);let n=Yt[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:Yt[typeof r.value]??n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Zt=b(`$ZodCheckGreaterThan`,(e,t)=>{C.init(e,t);let n=Yt[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:Yt[typeof r.value]??n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Qt=b(`$ZodCheckMultipleOf`,(e,t)=>{C.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?t.value!==BigInt(0)&&n.value%t.value===BigInt(0):c(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),$t=b(`$ZodCheckNumberFormat`,(e,t)=>{C.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=se[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=a,n&&(r.pattern=Ht)}),e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),en=b(`$ZodCheckMaxLength`,(e,t)=>{var n;C.init(e,t),(n=e._zod.def).when??(n.when=Jt),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value,i=r.length;if((typeof r==`string`&&i>t.maximum?be(r):i)<=t.maximum)return;let a=xe(r);n.issues.push({origin:a,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),tn=b(`$ZodCheckMinLength`,(e,t)=>{var n;C.init(e,t),(n=e._zod.def).when??(n.when=Jt),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value,i=r.length;if((typeof r==`string`&&i>=t.minimum&&i<t.minimum*2?be(r):i)>=t.minimum)return;let a=xe(r);n.issues.push({origin:a,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),nn=b(`$ZodCheckLengthEquals`,(e,t)=>{var n;C.init(e,t),(n=e._zod.def).when??(n.when=Jt),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length,a=typeof r==`string`&&i>=t.length&&i<=t.length*2?be(r):i;if(a===t.length)return;let o=xe(r),s=a>t.length;n.issues.push({origin:o,...s?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),rn=b(`$ZodCheckStringFormat`,(e,t)=>{var n,r;C.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),an=b(`$ZodCheckRegex`,(e,t)=>{rn.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),on=b(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=Kt,rn.init(e,t)}),sn=b(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=qt,rn.init(e,t)}),cn=b(`$ZodCheckIncludes`,(e,t)=>{C.init(e,t);let n=ie(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position},}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),ln=b(`$ZodCheckStartsWith`,(e,t)=>{C.init(e,t);let n=RegExp(`^${ie(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),un=b(`$ZodCheckEndsWith`,(e,t)=>{C.init(e,t);let n=RegExp(`.*${ie(t.suffix)}$`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),dn=b(`$ZodCheckOverwrite`,(e,t)=>{C.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}),fn=class{constructor(e=[],t={}){this.content=[],this.indent=0,this.args=e,this.closed=t}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
1
+ import{ut as e}from"./CmCJ0SKP.js";import{n as t}from"./JcDjicYT.js";import"./BZ2Jwl6O.js";function n(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function r(e,t=`|`){return e.map(e=>ae(e)).join(t)}function i(e,t){return typeof t==`bigint`?t.toString():t}function a(e){return{get value(){{let t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function o(e){return e==null}function s(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function c(e,t){let n=e/t,r=Math.round(n),i=4*2**-52*Math.max(Math.abs(n),1);return Math.abs(n-r)<i?0:n-r}function l(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function u(...e){let t={};for(let n of e){let e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function d(e){return JSON.stringify(e)}function f(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}var p=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function m(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var ee=a(()=>{if(x.jitless||typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function te(e){if(m(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return m(n)!==!1&&Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)!==!1}function ne(e){return te(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}var re=new Set([`string`,`number`,`symbol`]);function ie(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function h(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function g(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function ae(e){return typeof e==`bigint`?e.toString()+`n`:typeof e==`string`?`"${e}"`:`${e}`}function oe(e){return Object.keys(e).filter(t=>e[t]._zod.optin!==void 0&&e[t]._zod.optout===`optional`)}var se={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function ce(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.pick() cannot be used on object schemas containing refinements`);return h(e,u(e._zod.def,{get shape(){let e={};for(let r of Reflect.ownKeys(t)){if(!Object.prototype.hasOwnProperty.call(n.shape,r))throw Error(`Unrecognized key: "${String(r)}"`);t[r]&&l(e,r,n.shape[r])}return l(this,`shape`,e),e},checks:[]}))}function le(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.omit() cannot be used on object schemas containing refinements`);return h(e,u(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e of Reflect.ownKeys(t)){if(!Object.prototype.hasOwnProperty.call(n.shape,e))throw Error(`Unrecognized key: "${String(e)}"`);t[e]&&delete r[e]}return l(this,`shape`,r),r},checks:[]}))}function ue(e,t){if(!te(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0){let n=e._zod.def.shape;for(let e of Reflect.ownKeys(t))if(Object.getOwnPropertyDescriptor(n,e)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return h(e,u(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return l(this,`shape`,n),n}}))}function de(e,t){if(!te(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return h(e,u(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return l(this,`shape`,n),n}}))}function fe(e,t){if(!t?._zod?.def)throw Error("Invalid input to merge: expected an object schema. To merge a plain shape, use `.extend()`.");if(e._zod.def.checks?.length)throw Error(`.merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.`);return h(e,u(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return l(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]}))}function pe(e,t,n,r=`partial`){let i=t._zod.def.checks;if(i&&i.length>0)throw Error(`.${r}() cannot be used on object schemas containing refinements`);return h(t,u(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t of Reflect.ownKeys(n)){if(!Object.prototype.hasOwnProperty.call(r,t))throw Error(`Unrecognized key: "${String(t)}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t of Reflect.ownKeys(r))i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return l(this,`shape`,i),i},checks:[]}))}function me(e,t,n){return h(t,u(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t of Reflect.ownKeys(n)){if(!Object.prototype.hasOwnProperty.call(i,t))throw Error(`Unrecognized key: "${String(t)}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t of Reflect.ownKeys(r))i[t]=new e({type:`nonoptional`,innerType:r[t]});return l(this,`shape`,i),i}}))}function he(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function ge(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function _(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function _e(e){return typeof e==`string`?e:e?.message}function ve(e,t,n){var r;for(let i=t;i<e.length;i++)(r=e[i]).schema??(r.schema=n)}function v(e,t,n){var r;let i=e.inst?._zod?.traits;i?.has(`$ZodType`)&&(i.has(`$ZodCheck`)?(r=e).schema??(r.schema=e.inst):e.schema=e.inst);let a=e.schema===e.inst?void 0:e.schema?._zod.def?.error,o=e.message?e.message:_e(e.inst?._zod.def?.error?.(e))??_e(a?.(e))??_e(t?.error?.(e))??_e(n.customError?.(e))??_e(n.localeError?.(e))??`Invalid input`,{inst:s,schema:c,continue:l,input:u,...d}=e;return d.path??=[],d.message=o,t?.reportInput&&(d.input=u),d}var ye=/[\uD800-\uDBFF]/;function be(e){let t=e.length;if(!ye.test(e))return t;let n=t;for(let r=0;r<t-1;r++)(e.charCodeAt(r)&64512)==55296&&(e.charCodeAt(r+1)&64512)==56320&&(n--,r++);return n}function xe(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function Se(e){let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`nan`:`number`;case`object`:{if(e===null)return`null`;if(Array.isArray(e))return`array`;let t=e;if(t&&Object.getPrototypeOf(t)!==Object.prototype&&`constructor`in t&&t.constructor)return t.constructor.name}}return t}function Ce(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}function we(e,t){for(let n in t){let r=Object.getOwnPropertyDescriptor(t,n);r.get?Object.defineProperty(e,n,{...r,enumerable:!1}):De(e,n,r.value)}}function Te(e,t,n,r=!0){return Object.defineProperty(e,t,{configurable:!0,writable:!0,enumerable:r,value:n}),n}function Ee(e,t,n){return Te(e,t,n,!1)}function De(e,t,n){Object.defineProperty(e,t,{configurable:!0,get(){return this==null?n:Te(this,t,n.bind(this))},set(e){Te(this,t,e)}})}function Oe(e,t){let n=Object.getPrototypeOf(e);return t in n?void 0:n}var ke,Ae=!1,je={configurable:!0,get(){Ae=!0}};function y(e,t,n){let r=Object.getPrototypeOf(e._zod);if(t in r&&ke!==e._zod){ke=void 0;return}ke=e._zod,Object.defineProperty(r,t,{configurable:!0,get(){Object.defineProperty(this,t,je);let e=Ae;Ae=!1;try{let r=n(this);return Ae?delete this[t]:Object.defineProperty(this,t,{configurable:!0,writable:!0,value:r}),Ae||=e,r}catch(n){throw delete this[t],Ae||=e,n}},set(e){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:e})}})}function Me(e,t,n,r){let i=Oe(e,t);i&&Object.defineProperty(i,t,{configurable:!0,get(){let e={configurable:!0,writable:!0,enumerable:r,value:void 0};return Object.defineProperty(this,t,e),e.value=n(this),Object.defineProperty(this,t,e),e.value},set(e){Object.defineProperty(this,t,{configurable:!0,writable:!0,enumerable:r,value:e})}})}var Ne=`~constantCatch`;function Pe(e){let t=()=>e;return t[Ne]=!0,t}var Fe,Ie={value:void 0,enumerable:!1},Le=`captureStackTrace`in Error?Error:null;function Re(e){let t=Le;if(t){let n=t.stackTraceLimit;if(typeof n==`number`){try{t.stackTraceLimit=0}catch{return Le=null,new e}try{return new e}finally{t.stackTraceLimit=n}}}return new e}function b(e,t,n,r){let i={};function a(e){this.def=e,this.constr=d,this.traits=new Set}a.prototype=i;let o=n,s=o&&new WeakSet;function c(n,r){if(!n._zod){Ie.value=new a(r);try{Object.defineProperty(n,"_zod",Ie)}finally{Ie.value=void 0}}if(n._zod.traits.has(e))return;if(n._zod.traits.add(e),t(n,r),s){let e=Object.getPrototypeOf(n),t=n._zod.constr.prototype,r=e;for(;r&&r!==t;)r=Object.getPrototypeOf(r);let i=r??e;s.has(i)||(s.add(i),we(i,o))}let i=d.prototype;for(let e in i)Object.prototype.hasOwnProperty.call(i,e)&&(e in n||(n[e]=i[e].bind(n)))}let l=r?.Parent??Object;class u extends l{}Object.defineProperty(u,"name",{value:e});function d(e){let t=r?.Parent?Re(u):this;c(t,e);let n=t._zod.deferred;if(n){for(let e of n)e();t._zod.deferred=void 0}let i=globalThis.__zod_globalConfig?.postProcessor;return i&&i(t),t}return Object.defineProperty(d,"init",{value:c}),Object.defineProperty(d,Symbol.hasInstance,{value:t=>r?.Parent&&t instanceof r.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(d,"name",{value:e}),d}var ze=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},Be=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(Fe=globalThis).__zod_globalConfig??(Fe.__zod_globalConfig={});var x=globalThis.__zod_globalConfig;function S(e){return e&&Object.assign(x,e),x}function Ve(){let e=this._zod;return e.message??=JSON.stringify(e.def,i,2),e.message}function He(e){this._zod.message=e}var Ue={get:Ve,set:He,enumerable:!0,configurable:!0},We={value:void 0,enumerable:!1},Ge={value:void 0,enumerable:!1},Ke=new WeakSet([Object.prototype,Error.prototype]),qe=(e,t)=>{e.name=`$ZodError`,We.value=e._zod,Object.defineProperty(e,"_zod",We),Ge.value=t,Object.defineProperty(e,"issues",Ge),We.value=void 0,Ge.value=void 0,Object.defineProperty(e,"message",Ue);let n=Object.getPrototypeOf(e);Ke.has(n)||(Ke.add(n),Object.defineProperty(n,"toString",{configurable:!0,enumerable:!1,get(){let e=()=>this.message;return Object.defineProperty(this,"toString",{value:e,configurable:!0,writable:!0}),e},set(e){Object.defineProperty(this,"toString",{value:e,configurable:!0,writable:!0})}}))},Je=b(`$ZodError`,qe),Ye=b(`$ZodError`,qe,void 0,{Parent:Error});function Xe(e,t,n){return Object.prototype.hasOwnProperty.call(e,t)||(t===`__proto__`?Object.defineProperty(e,t,{value:n(),writable:!0,enumerable:!0,configurable:!0}):e[t]=n()),e[t]}function Ze(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?Xe(n,i.path[0],()=>[]).push(t(i)):r.push(t(i));return{formErrors:r,fieldErrors:n}}function Qe(e,t=e=>e.message){let n={_errors:[]},r=(e,i=[])=>{for(let a of e.issues)if(a.code===`invalid_union`&&a.errors.length)a.errors.map(e=>r({issues:e},[...i,...a.path]));else if(a.code===`invalid_key`)r({issues:a.issues},[...i,...a.path]);else if(a.code===`invalid_element`)r({issues:a.issues},[...i,...a.path]);else{let e=[...i,...a.path];if(e.length===0)n._errors.push(t(a));else{let r=n,i=0;for(;i<e.length;){let n=e[i],o=i===e.length-1;if(n===`_errors`){o&&r._errors.push(t(a)),i++;continue}Object.prototype.hasOwnProperty.call(r,n)||Object.defineProperty(r,n,{value:{_errors:[]},enumerable:!0,writable:!0,configurable:!0});let s=r[n];o&&s._errors.push(t(a)),r=s,i++}}}};return r(e),n}function $e(e,t){return{callee:t?.callee??e,Err:t?.Err}}var et=e=>{let t=(n,r,i,a)=>{let o=i?{...i,async:!1}:{async:!1},s=n._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new ze;if(s.issues.length){let n=new((a?.Err)??e)(s.issues.map(e=>v(e,o,S())));throw p(n,a?.callee??t),n}return s.value};return t},tt=e=>{let t=async(n,r,i,a)=>{let o=i?{...i,async:!0}:{async:!0},s=n._zod.run({value:r,issues:[]},o);if(s instanceof Promise&&(s=await s),s.issues.length){let n=new((a?.Err)??e)(s.issues.map(e=>v(e,o,S())));throw p(n,a?.callee??t),n}return s.value};return t},nt=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new ze;return a.issues.length?{success:!1,error:new(e??Je)(a.issues.map(e=>v(e,i,S())))}:{success:!0,data:a.value}},rt=nt(Ye),it=e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>v(e,i,S())))}:{success:!0,data:a.value}},at=it(Ye),ot=e=>{let t=et(e),n=(e,r,i,a)=>{let o=i?{...i,direction:`backward`}:{direction:`backward`};return t(e,r,o,$e(n,a))};return n},st=e=>{let t=et(e),n=(e,r,i,a)=>t(e,r,i,$e(n,a));return n},ct=e=>{let t=tt(e),n=async(e,r,i,a)=>{let o=i?{...i,direction:`backward`}:{direction:`backward`};return await t(e,r,o,$e(n,a))};return n},lt=e=>{let t=tt(e),n=async(e,r,i,a)=>await t(e,r,i,$e(n,a));return n},ut=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return nt(e)(t,n,i)},dt=e=>(t,n,r)=>nt(e)(t,n,r),ft=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return it(e)(t,n,i)},pt=e=>async(t,n,r)=>it(e)(t,n,r),mt=/^[cC][0-9a-z]{6,}$/,ht=/^[0-9a-z]+$/,gt=/^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$/,_t=/^[0-9a-vA-V]{20}$/,vt=/^[A-Za-z0-9]{27}$/,yt=/^[a-zA-Z0-9_-]{21}$/;function bt(e){return RegExp(`^[a-zA-Z0-9_-]{${e}}$`)}var xt=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,St=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Ct=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,wt=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Tt=`^[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$`;function Et(){return new RegExp(Tt,`u`)}var Dt=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Ot=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,kt=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,At=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,jt=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Mt=/^[A-Za-z0-9_-]*$/,Nt=/^https?$/,Pt=/^\+[1-9]\d{6,14}$/,Ft=`(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`;function It(e){return RegExp(`^${e}$`)}var Lt=It(Ft);function Rt(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:e.seconds?`${t}:[0-5]\\d(?:\\.\\d+)?`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function zt(e){return RegExp(`^${Rt(e)}$`)}function Bt(e){let t=[`Z`];e.offset&&t.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let n=`${Rt({precision:e.precision,seconds:!0})}(?:${t.join(`|`)})`,r=e.local?`${n}|${Rt({precision:e.precision})}`:n;return RegExp(`^${Ft}T(?:${r})$`)}var Vt=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}$`)},Ht=/^-?\d+$/,Ut=/^-?\d+(?:\.\d+)?$/,Wt=/^(?:true|false)$/i,Gt=/^null$/i,Kt=/^[^A-Z]*$/,qt=/^[^a-z]*$/,C=b(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Jt=e=>{let t=e.value;return!o(t)&&t.length!==void 0},Yt={number:`number`,bigint:`bigint`,object:`date`},Xt=b(`$ZodCheckLessThan`,(e,t)=>{C.init(e,t);let n=Yt[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:Yt[typeof r.value]??n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Zt=b(`$ZodCheckGreaterThan`,(e,t)=>{C.init(e,t);let n=Yt[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:Yt[typeof r.value]??n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Qt=b(`$ZodCheckMultipleOf`,(e,t)=>{C.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?t.value!==BigInt(0)&&n.value%t.value===BigInt(0):c(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),$t=b(`$ZodCheckNumberFormat`,(e,t)=>{C.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=se[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=a,n&&(r.pattern=Ht)}),e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),en=b(`$ZodCheckMaxLength`,(e,t)=>{var n;C.init(e,t),(n=e._zod.def).when??(n.when=Jt),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value,i=r.length;if((typeof r==`string`&&i>t.maximum?be(r):i)<=t.maximum)return;let a=xe(r);n.issues.push({origin:a,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),tn=b(`$ZodCheckMinLength`,(e,t)=>{var n;C.init(e,t),(n=e._zod.def).when??(n.when=Jt),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value,i=r.length;if((typeof r==`string`&&i>=t.minimum&&i<t.minimum*2?be(r):i)>=t.minimum)return;let a=xe(r);n.issues.push({origin:a,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),nn=b(`$ZodCheckLengthEquals`,(e,t)=>{var n;C.init(e,t),(n=e._zod.def).when??(n.when=Jt),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length,a=typeof r==`string`&&i>=t.length&&i<=t.length*2?be(r):i;if(a===t.length)return;let o=xe(r),s=a>t.length;n.issues.push({origin:o,...s?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),rn=b(`$ZodCheckStringFormat`,(e,t)=>{var n,r;C.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),an=b(`$ZodCheckRegex`,(e,t)=>{rn.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),on=b(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=Kt,rn.init(e,t)}),sn=b(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=qt,rn.init(e,t)}),cn=b(`$ZodCheckIncludes`,(e,t)=>{C.init(e,t);let n=ie(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position},}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),ln=b(`$ZodCheckStartsWith`,(e,t)=>{C.init(e,t);let n=RegExp(`^${ie(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),un=b(`$ZodCheckEndsWith`,(e,t)=>{C.init(e,t);let n=RegExp(`.*${ie(t.suffix)}$`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),dn=b(`$ZodCheckOverwrite`,(e,t)=>{C.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}),fn=class{constructor(e=[],t={}){this.content=[],this.indent=0,this.args=e,this.closed=t}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
2
2
  `).filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>` `.repeat(this.indent*2)+e);for(let e of r)this.content.push(e)}compile(){let e=Function,t=this?.content??[``];return new e(...Object.keys(this.closed),`return function (${this.args.join(`, `)}) {\n${t.join(`
3
3
  `)}\n};`)(...Object.values(this.closed))}},pn={major:4,minor:5,patch:4},w=b(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=pn;let r=e._zod.def.checks,i=e._zod.traits.has(`$ZodCheck`)?[e,...r??[]]:r?.length?[...r]:[];for(let t of i)for(let n of t._zod.onattach)n(e);if(i.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(t,n,r)=>{if(t.memo)return t;let i=he(t),a;for(let o of n){if(o._zod.def.when){if(ge(t)||!o._zod.def.when(t))continue}else if(i)continue;let n=t.issues.length,s=o._zod.check(t);if(s instanceof Promise&&r?.async===!1)throw new ze;if(a||s instanceof Promise)a=(a??Promise.resolve()).then(async()=>{await s,t.issues.length!==n&&(ve(t.issues,n,e),i||=he(t,n))});else{if(t.issues.length===n)continue;ve(t.issues,n,e),i||=he(t,n)}}return a?a.then(()=>t):t},n=(n,r,a)=>{if(he(n))return n.aborted=!0,n;let o=t(r,i,a);if(o instanceof Promise){if(a.async===!1)throw new ze;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(r,a)=>{if(a.skipChecks)return e._zod.parse(r,a);if(a.direction===`backward`){let t=e._zod.parse({value:r.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,r,a)):n(t,r,a)}let o=e._zod.parse(r,a);if(o instanceof Promise){if(a.async===!1)throw new ze;return o.then(e=>t(e,i,a))}return t(o,i,a)}}},{get"~standard"(){return Ee(this,`~standard`,hn(this))},set"~standard"(e){Te(this,`~standard`,e)}}),mn=e=>e.success?{value:e.data}:{issues:e.error?.issues};function hn(e){return{validate:t=>{try{return mn(rt(e,t))}catch{return at(e,t).then(mn)}},vendor:`zod`,version:1}}var gn=b(`$ZodString`,(e,t)=>{w.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Vt(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),T=b(`$ZodStringFormat`,(e,t)=>{rn.init(e,t),gn.init(e,t)}),_n=b(`$ZodGUID`,(e,t)=>{t.pattern??=St,T.init(e,t)}),vn=b(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=Ct(e)}else t.pattern??=Ct();T.init(e,t)}),yn=b(`$ZodEmail`,(e,t)=>{t.pattern??=wt,T.init(e,t)});function bn(e,t){if(!t.normalize&&t.protocol?.source===Nt.source&&!/^https?:\/\//i.test(e))return 1;try{return new URL(e)}catch{return 2}}var xn=/[\t\n\r]/g;function Sn(e){return e.replace(xn,``)}function Cn(e,t){return t.lastIndex=0,t.test(e.hostname)}function wn(e,t){return t.lastIndex=0,t.test(e.protocol.endsWith(`:`)?e.protocol.slice(0,-1):e.protocol)}var Tn=b(`$ZodURL`,(e,t)=>{T.init(e,t),e._zod.check=n=>{try{let r=n.value.trim(),i=bn(r,t);if(i===1){n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid URL format`,input:n.value,inst:e,continue:!t.abort});return}if(i===2){n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort});return}t.hostname&&!Cn(i,t.hostname)&&n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid hostname`,pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort}),t.protocol&&!wn(i,t.protocol)&&n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid protocol`,pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort}),n.value=t.normalize?i.href:Sn(r);return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),En=b(`$ZodEmoji`,(e,t)=>{t.pattern??=Et(),T.init(e,t)}),Dn=b(`$ZodNanoID`,(e,t)=>{if(t.length!==void 0&&(!Number.isInteger(t.length)||t.length<1))throw Error(`Invalid nanoid length: ${t.length}`);t.pattern??=t.length===void 0?yt:bt(t.length),T.init(e,t)}),On=b(`$ZodCUID`,(e,t)=>{t.pattern??=mt,T.init(e,t)}),kn=b(`$ZodCUID2`,(e,t)=>{t.pattern??=ht,T.init(e,t)}),An=b(`$ZodULID`,(e,t)=>{t.pattern??=gt,T.init(e,t)}),jn=b(`$ZodXID`,(e,t)=>{t.pattern??=_t,T.init(e,t)}),Mn=b(`$ZodKSUID`,(e,t)=>{t.pattern??=vt,T.init(e,t)}),Nn=b(`$ZodISODateTime`,(e,t)=>{t.pattern??=Bt(t),T.init(e,t),(t.local||t.precision===-1)&&(e._zod.bag.laxFormat=!0,e._zod.onattach.push(e=>{e._zod.bag.laxFormat=!0}))}),Pn=b(`$ZodISODate`,(e,t)=>{t.pattern??=Lt,T.init(e,t)}),Fn=b(`$ZodISOTime`,(e,t)=>{t.pattern??=zt(t),T.init(e,t)}),In=b(`$ZodISODuration`,(e,t)=>{t.pattern??=xt,T.init(e,t)}),Ln=b(`$ZodIPv4`,(e,t)=>{t.pattern??=Dt,T.init(e,t),e._zod.bag.format=`ipv4`}),Rn=/^[0-9a-fA-F:.]+$/;function zn(e){if(!Rn.test(e))return!1;try{return new URL(`http://[${e}]`),!0}catch{return!1}}var Bn=b(`$ZodIPv6`,(e,t)=>{t.pattern??=Ot,T.init(e,t),e._zod.bag.format=`ipv6`,e._zod.check=n=>{zn(n.value)||n.issues.push({code:`invalid_format`,format:`ipv6`,input:n.value,inst:e,continue:!t.abort})}}),Vn=b(`$ZodCIDRv4`,(e,t)=>{t.pattern??=kt,T.init(e,t)});function Hn(e){let t=e.split(`/`);if(t.length!==2)return!1;let[n,r]=t;if(!r)return!1;let i=Number(r);return`${i}`!==r||i<0||i>128?!1:zn(n)}var Un=b(`$ZodCIDRv6`,(e,t)=>{t.pattern??=At,T.init(e,t),e._zod.check=n=>{Hn(n.value)||n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}});function Wn(e){if(e===``)return!0;if(/\s/.test(e)||e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}var Gn=b(`$ZodBase64`,(e,t)=>{t.pattern??=jt,T.init(e,t),e._zod.bag.contentEncoding=`base64`,e._zod.check=n=>{Wn(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}});function Kn(e){if(!Mt.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return Wn(t.padEnd(Math.ceil(t.length/4)*4,`=`))}var qn=b(`$ZodBase64URL`,(e,t)=>{t.pattern??=Mt,T.init(e,t),e._zod.bag.contentEncoding=`base64url`,e._zod.check=n=>{Kn(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),Jn=b(`$ZodE164`,(e,t)=>{t.pattern??=Pt,T.init(e,t)});function Yn(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}var Xn=b(`$ZodJWT`,(e,t)=>{T.init(e,t),e._zod.check=n=>{Yn(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),Zn=b(`$ZodNumber`,(e,t)=>{w.init(e,t),e._zod.pattern=e._zod.bag.pattern??Ut,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:String(i):void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),Qn=b(`$ZodNumberFormat`,(e,t)=>{$t.init(e,t),Zn.init(e,t)}),$n=b(`$ZodBoolean`,(e,t)=>{w.init(e,t),e._zod.pattern=Wt,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),er=b(`$ZodNull`,(e,t)=>{w.init(e,t),e._zod.pattern=Gt,e._zod.values=new Set([null]),e._zod.parse=(t,n)=>{let r=t.value;return r===null||t.issues.push({expected:`null`,code:`invalid_type`,input:r,inst:e}),t}}),tr=b(`$ZodUnknown`,(e,t)=>{w.init(e,t),e._zod.parse=e=>e}),nr=b(`$ZodNever`,(e,t)=>{w.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)});function rr(e,t,n){e.issues.length&&t.issues.push(..._(n,e.issues)),t.value[n]=e.value}var ir=b(`$ZodArray`,(e,t)=>{w.init(e,t);let n=x.memoizer;n?.attach(e),e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({expected:`array`,code:`invalid_type`,input:a,inst:e}),r;r.value=n?n.alloc(e,r,Array(a.length),i):Array(a.length);let o=[];for(let e=0;e<a.length;e++){let n=a[e],s=t.element._zod.run({value:n,issues:[]},i);s instanceof Promise?o.push(s.then(t=>rr(t,r,e))):rr(s,r,e)}return o.length?Promise.all(o).then(()=>r):r}});function ar(e,t,n,r,i,a){let o=n in r,s=a===`optional`;if(o||!s||i!==`optional`){if(e.issues.length){if(i!==void 0&&s&&!o)return;t.issues.push(..._(n,e.issues))}if(!o&&i===void 0){e.issues.length||t.issues.push({code:`invalid_type`,expected:`nonoptional`,input:void 0,path:[n]});return}e.value===void 0?o&&(t.value[n]=void 0):t.value[n]=e.value}}var or=[];function sr(e){let t=Object.keys(e.shape),n=Object.getOwnPropertySymbols(e.shape),r=n.length?n:or,i=r.length?[...t,...r]:t;for(let t of i)if(!e.shape?.[t]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${String(t)}": expected a Zod schema`);let a=oe(e.shape);return{...e,allKeys:i,symbolKeys:r,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(a)}}function cr(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optin,d=c.optout;for(let i in t){if(s.has(i))continue;if(i===`__proto__`){l===`never`&&o.push(i);continue}if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>ar(e,n,i,t,u,d))):ar(a,n,i,t,u,d)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a,continue:!0}),e.length?Promise.all(e).then(()=>n):n}var lr=new WeakMap,ur=b(`$ZodObject`,(e,t)=>{if(w.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;lr.set(t,e),Object.defineProperty(t,"shape",{get:()=>{let n={...e};return Object.defineProperty(t,"shape",{value:n}),lr.set(t,n),n}})}let n=a(()=>sr(t));y(e,`propValues`,e=>{let t=e.def.shape,n={};for(let e in t){let r=t[e]._zod;if(r.values){Object.prototype.hasOwnProperty.call(n,e)||l(n,e,new Set);for(let t of r.values)n[e].add(t);r.optin!==void 0&&n[e].add(void 0)}}return n});let r=m,i=t.catchall,o,s=x.memoizer;s?.attach(e),e._zod.parse=(t,a)=>{o??=n.value;let c=t.value;if(!r(c))return t.issues.push({expected:`object`,code:`invalid_type`,input:c,inst:e}),t;t.value=s?s.alloc(e,t,{},a):{};let l=[],u=o.shape;for(let e of o.allKeys){if(e===`__proto__`)continue;let n=u[e],r=n._zod.optin,i=n._zod.optout,o=n._zod.run({value:c[e],issues:[]},a);o instanceof Promise?l.push(o.then(n=>ar(n,t,e,c,r,i))):ar(o,t,e,c,r,i)}return i?cr(l,c,t,a,n.value,e):l.length?Promise.all(l).then(()=>t):t}}),dr=b(`$ZodObjectJIT`,(e,t)=>{ur.init(e,t);let n=e._zod.parse,r=a(()=>sr(t)),i=x.memoizer,o=t=>{let n=r.value,a=n.symbolKeys,o=new fn([`payload`,`ctx`],{shape:t,inst:e,memo:i,syms:a}),s=e=>`shape[${e}]._zod.run({ value: input[${e}], issues: [] }, ctx)`,c=(e,t)=>`
4
4
  for (let i = 0; i < ${e}.issues.length; i++) {
@@ -1,4 +1,4 @@
1
- import{$ as e,A as t,At as n,B as r,Ct as i,F as a,G as o,N as s,R as c,S as l,St as u,U as d,V as f,W as p,X as m,ct as h,ft as g,gt as _,j as v,kt as y,lt as b,m as x,mt as S,nt as C,o as w,ot as T,rt as E,s as D,st as O,ut as k,x as ee,z as A}from"./CmCJ0SKP.js";import"./xihTtKlq.js";import{t as j}from"./BkEnd9_Z.js";import{a as M,i as te,r as ne}from"./D-ecV3TD.js";import{a as N,b as re,s as P,t as F,v as ie,x as ae}from"./DWcQbrnv.js";import{n as oe,r as I,t as se}from"./D25cXQtk.js";import{a as L,i as R,n as z}from"./CNPsST_i.js";import{t as ce}from"./BIfnT_mK.js";import{t as le}from"./UeEccMjN.js";import{t as ue}from"./Bs27XW8_.js";import{t as de}from"./CeR4do8T.js";import{t as B}from"./D-V0xBeS.js";import{t as fe}from"./D8Der6oM.js";var pe=F(N),V=F(N),H=F(N),U=F(N),W=F(N);async function me(e){let t=pe.issue();try{let n=await P().skillIntelligence.analyze({selections:e});return t.isCurrent()?{report:n.report,failures:n.failures,error:null}:{report:null,failures:[],error:null}}catch(e){return t.isCurrent()?{report:null,failures:[],error:e instanceof Error?e.message:String(e)}:{report:null,failures:[],error:null}}}async function he(e){let t=V.issue();try{let n=await P().skillIntelligence.propose(e);return t.isCurrent()?{proposal:n.proposal,error:null}:{proposal:null,error:null}}catch(e){return t.isCurrent()?{proposal:null,error:e instanceof Error?e.message:String(e)}:{proposal:null,error:null}}}async function ge(){let e=H.issue();try{let t=await P().skillIntelligence.list({});return e.isCurrent()?{proposals:t.proposals,error:null}:{proposals:null,error:null}}catch(t){return e.isCurrent()?{proposals:null,error:t instanceof Error?t.message:String(t)}:{proposals:null,error:null}}}async function _e(e){let t=U.issue();try{return await P().skillIntelligence.reject({proposalId:e}),t.isCurrent()?{rejected:!0,error:null}:{rejected:!1,error:null}}catch(e){return t.isCurrent()?{rejected:!1,error:e instanceof Error?e.message:String(e)}:{rejected:!1,error:null}}}async function ve(e){let t=W.issue();try{let n=await P().skillIntelligence.approve({proposalId:e});return t.isCurrent()?{result:n,error:null}:{result:null,error:null}}catch(e){return t.isCurrent()?{result:null,error:e instanceof Error?e.message:String(e)}:{result:null,error:null}}}var G=new Set([`$$slots`,`$$events`,`$$legacy`]);function ye(e,t){let n=w(t,G),r=[[`circle`,{cx:`18`,cy:`18`,r:`3`}],[`circle`,{cx:`6`,cy:`6`,r:`3`}],[`path`,{d:`M6 21V9a9 9 0 0 0 9 9`}]];j(e,D({name:`git-merge`},()=>n,{get iconNode(){return r}}))}var K=new Set([`$$slots`,`$$events`,`$$legacy`]);function be(e,t){let n=w(t,K),r=[[`circle`,{cx:`12`,cy:`12`,r:`10`}],[`path`,{d:`M12 16v-4`}],[`path`,{d:`M12 8h.01`}]];j(e,D({name:`info`},()=>n,{get iconNode(){return r}}))}var q=new Set([`$$slots`,`$$events`,`$$legacy`]);function xe(e,t){let n=w(t,q),r=[[`path`,{d:`M18.36 6.64A9 9 0 0 1 20.77 15`}],[`path`,{d:`M6.16 6.16a9 9 0 1 0 12.68 12.68`}],[`path`,{d:`M12 2v4`}],[`path`,{d:`m2 2 20 20`}]];j(e,D({name:`power-off`},()=>n,{get iconNode(){return r}}))}var Se=new Set([`$$slots`,`$$events`,`$$legacy`]);function Ce(e,t){let n=w(t,Se),r=[[`circle`,{cx:`6`,cy:`6`,r:`3`}],[`path`,{d:`M8.12 8.12 12 12`}],[`path`,{d:`M20 4 8.12 15.88`}],[`circle`,{cx:`6`,cy:`18`,r:`3`}],[`path`,{d:`M14.8 14.8 20 20`}]];j(e,D({name:`scissors`},()=>n,{get iconNode(){return r}}))}var we=r(`<!> Analyzing…`,1),Te=r(`<!> `,1),Ee=r(`<div class="flex items-center gap-2 py-6 text-xs text-muted-foreground"><!> Loading skills…</div>`),De=r(`<div class="flex flex-col items-start gap-2 py-6 text-xs text-destructive"><p class="break-words"> </p> <!></div>`),Oe=r(`<div class="flex flex-col items-center gap-2 py-16 text-center text-muted-foreground"><!> <p class="text-sm font-medium text-foreground">No report yet</p> <p class="max-w-xs text-xs">Run a read-only analysis to surface duplicates, conflicts, shared resources, and
1
+ import{$ as e,A as t,At as n,B as r,Ct as i,F as a,G as o,N as s,R as c,S as l,St as u,U as d,V as f,W as p,X as m,ct as h,ft as g,gt as _,j as v,kt as y,lt as b,m as x,mt as S,nt as C,o as w,ot as T,rt as E,s as D,st as O,ut as k,x as ee,z as A}from"./CmCJ0SKP.js";import"./xihTtKlq.js";import{t as j}from"./BkEnd9_Z.js";import{a as M,i as te,r as ne}from"./CqzSRtkf.js";import{a as N,b as re,s as P,t as F,v as ie,x as ae}from"./BoMQFGOq.js";import{n as oe,r as I,t as se}from"./Bg2k7op5.js";import{a as L,i as R,n as z}from"./CNPsST_i.js";import{t as ce}from"./BIfnT_mK.js";import{t as le}from"./UeEccMjN.js";import{t as ue}from"./Bs27XW8_.js";import{t as de}from"./CeR4do8T.js";import{t as B}from"./D-V0xBeS.js";import{t as fe}from"./D8Der6oM.js";var pe=F(N),V=F(N),H=F(N),U=F(N),W=F(N);async function me(e){let t=pe.issue();try{let n=await P().skillIntelligence.analyze({selections:e});return t.isCurrent()?{report:n.report,failures:n.failures,error:null}:{report:null,failures:[],error:null}}catch(e){return t.isCurrent()?{report:null,failures:[],error:e instanceof Error?e.message:String(e)}:{report:null,failures:[],error:null}}}async function he(e){let t=V.issue();try{let n=await P().skillIntelligence.propose(e);return t.isCurrent()?{proposal:n.proposal,error:null}:{proposal:null,error:null}}catch(e){return t.isCurrent()?{proposal:null,error:e instanceof Error?e.message:String(e)}:{proposal:null,error:null}}}async function ge(){let e=H.issue();try{let t=await P().skillIntelligence.list({});return e.isCurrent()?{proposals:t.proposals,error:null}:{proposals:null,error:null}}catch(t){return e.isCurrent()?{proposals:null,error:t instanceof Error?t.message:String(t)}:{proposals:null,error:null}}}async function _e(e){let t=U.issue();try{return await P().skillIntelligence.reject({proposalId:e}),t.isCurrent()?{rejected:!0,error:null}:{rejected:!1,error:null}}catch(e){return t.isCurrent()?{rejected:!1,error:e instanceof Error?e.message:String(e)}:{rejected:!1,error:null}}}async function ve(e){let t=W.issue();try{let n=await P().skillIntelligence.approve({proposalId:e});return t.isCurrent()?{result:n,error:null}:{result:null,error:null}}catch(e){return t.isCurrent()?{result:null,error:e instanceof Error?e.message:String(e)}:{result:null,error:null}}}var G=new Set([`$$slots`,`$$events`,`$$legacy`]);function ye(e,t){let n=w(t,G),r=[[`circle`,{cx:`18`,cy:`18`,r:`3`}],[`circle`,{cx:`6`,cy:`6`,r:`3`}],[`path`,{d:`M6 21V9a9 9 0 0 0 9 9`}]];j(e,D({name:`git-merge`},()=>n,{get iconNode(){return r}}))}var K=new Set([`$$slots`,`$$events`,`$$legacy`]);function be(e,t){let n=w(t,K),r=[[`circle`,{cx:`12`,cy:`12`,r:`10`}],[`path`,{d:`M12 16v-4`}],[`path`,{d:`M12 8h.01`}]];j(e,D({name:`info`},()=>n,{get iconNode(){return r}}))}var q=new Set([`$$slots`,`$$events`,`$$legacy`]);function xe(e,t){let n=w(t,q),r=[[`path`,{d:`M18.36 6.64A9 9 0 0 1 20.77 15`}],[`path`,{d:`M6.16 6.16a9 9 0 1 0 12.68 12.68`}],[`path`,{d:`M12 2v4`}],[`path`,{d:`m2 2 20 20`}]];j(e,D({name:`power-off`},()=>n,{get iconNode(){return r}}))}var Se=new Set([`$$slots`,`$$events`,`$$legacy`]);function Ce(e,t){let n=w(t,Se),r=[[`circle`,{cx:`6`,cy:`6`,r:`3`}],[`path`,{d:`M8.12 8.12 12 12`}],[`path`,{d:`M20 4 8.12 15.88`}],[`circle`,{cx:`6`,cy:`18`,r:`3`}],[`path`,{d:`M14.8 14.8 20 20`}]];j(e,D({name:`scissors`},()=>n,{get iconNode(){return r}}))}var we=r(`<!> Analyzing…`,1),Te=r(`<!> `,1),Ee=r(`<div class="flex items-center gap-2 py-6 text-xs text-muted-foreground"><!> Loading skills…</div>`),De=r(`<div class="flex flex-col items-start gap-2 py-6 text-xs text-destructive"><p class="break-words"> </p> <!></div>`),Oe=r(`<div class="flex flex-col items-center gap-2 py-16 text-center text-muted-foreground"><!> <p class="text-sm font-medium text-foreground">No report yet</p> <p class="max-w-xs text-xs">Run a read-only analysis to surface duplicates, conflicts, shared resources, and
2
2
  structural findings with evidence.</p></div>`),ke=r(`<li class="text-muted-foreground"> </li>`),Ae=r(`<section class="mb-4 rounded-md border border-destructive/40 bg-destructive/5 px-3 py-2 text-xs" aria-label="Analysis failures"><p class="font-medium text-destructive">Some skills could not be analyzed:</p> <ul class="mt-1 space-y-0.5"></ul></section>`),je=f(`<line></line>`),Me=f(`<g class="cursor-pointer" role="button" tabindex="0"><title> </title><circle r="16" fill="var(--background, white)" stroke="var(--border, gray)"></circle><text text-anchor="middle" font-size="9" fill="var(--foreground, black)"> </text></g>`),Ne=r(`<section class="mb-4" aria-label="Skill relations graph"><h2 class="mb-2 text-xs font-medium text-muted-foreground">Relations</h2> <div class="overflow-x-auto rounded-md border border-border bg-muted/20"><svg role="img" aria-label="Skill relation graph" class="mx-auto block"><!><!></svg></div> <p class="mt-1 text-[10px] text-muted-foreground">Solid red = conflict · solid blue = overlap · dashed gray = shared resource. Click a
3
3
  node to open its detail.</p></section>`),Pe=r(`<p class="py-6 text-xs text-muted-foreground">No findings at this severity.</p>`),Fe=r(`<li class="text-[11px] leading-4"><span class="font-medium text-muted-foreground"> </span> <code class="break-words rounded bg-muted/60 px-1 py-0.5 text-[10px]"> </code></li>`),Ie=r(`<button type="button" class="text-[11px] text-primary underline-offset-2 hover:underline"> </button>`),Le=r(`<!> Propose edit`,1),Re=r(`<!> Propose disable`,1),ze=r(`<li class="rounded-md border border-border"><div class="flex flex-wrap items-center gap-2 border-b border-border/60 px-3 py-2"><!> <span class="min-w-0 flex-1 text-xs"> </span> <!></div> <div class="space-y-1.5 px-3 py-2"><ul class="space-y-1"></ul> <div class="flex flex-wrap items-center gap-1.5 pt-1"><!> <span class="flex-1"></span> <!> <!></div></div></li>`),Be=r(`<ul class="space-y-2"></ul>`),Ve=r(`<!> Refresh`,1),He=r(`<p class="py-4 text-xs text-muted-foreground">No pending proposals. Propose a fix from any finding above; nothing is applied until you
4
4
  approve it here.</p>`),Ue=r(`<!> Reject`,1),We=r(`<!> Approve`,1),Ge=r(`<p> </p>`),Ke=r(`<p class="mt-1 text-destructive">This proposal is stale. Re-analyze, then create a fresh proposal.</p>`),qe=r(`<div class="border-b border-border/60 px-3 py-2 text-[11px]"><!> <!></div>`),Je=r(`<li class="flex flex-wrap items-baseline gap-1"><button type="button" class="text-primary underline-offset-2 hover:underline"> </button> <code class="break-all text-[10px] text-muted-foreground"> </code></li>`),Ye=r(`<p class="leading-4 text-muted-foreground"> </p>`),Xe=r(`<p class="text-muted-foreground">Loading current document…</p>`),Ze=r(`<div class="grid gap-2 md:grid-cols-2"><div class="rounded border border-border bg-muted/20 p-2"><p class="mb-1 font-medium">Before</p> <!></div> <div class="rounded border border-border bg-muted/20 p-2"><p class="mb-1 font-medium">After (proposal)</p> <p class="leading-4 text-muted-foreground"> </p></div></div> <details><summary class="cursor-pointer text-muted-foreground">Preview body</summary> <pre class="mt-1 max-h-48 overflow-auto rounded bg-muted/40 p-2 text-[10px] whitespace-pre-wrap"> </pre></details>`,1),Qe=r(`<p class="rounded border border-border bg-muted/20 p-2 leading-4"> </p>`),$e=r(`<li><span class="font-medium"> </span> <span class="text-muted-foreground"> </span></li>`),et=r(`<ul class="space-y-1"></ul>`),tt=r(`<p><span class="font-medium"> </span> <span class="text-muted-foreground"> </span></p> <p class="text-muted-foreground"> </p>`,1),nt=r(`<div class="space-y-2 px-3 py-2 text-[11px]"><p class="text-muted-foreground"> </p> <p class="text-muted-foreground"> </p> <ul class="space-y-1"></ul> <!></div>`),rt=r(`<li class="rounded-md border border-border"><div class="flex flex-wrap items-center gap-2 border-b border-border/60 px-3 py-2"><!> <button type="button" class="min-w-0 flex-1 truncate text-left text-xs font-medium"> </button> <!> <!></div> <!> <!></li>`),it=r(`<section class="mb-4 flex flex-wrap items-center gap-2 text-xs" aria-label="Report summary"><!> <!> <!> <!> <!> <span class="flex-1"></span> <div class="flex items-center gap-1" role="group" aria-label="Severity filter"></div></section> <!> <!> <section aria-label="Findings"><h2 class="mb-2 text-xs font-medium text-muted-foreground">Findings</h2> <!></section> <section class="mt-6" aria-label="Proposal review"><div class="mb-2 flex items-center gap-2"><h2 class="text-xs font-medium text-muted-foreground">Proposals</h2> <!> <span class="flex-1"></span> <!></div> <!></section>`,1),at=r(`<div class="flex h-full min-h-0 flex-col overflow-y-auto"><header class="shrink-0 border-b border-border px-5 py-4"><div class="flex flex-wrap items-center gap-3"><!> <div class="min-w-0 flex-1"><h1 class="truncate text-base font-semibold">Skill Intelligence</h1> <p class="mt-0.5 text-xs text-muted-foreground"> </p></div> <!></div></header> <div class="min-h-0 flex-1 px-5 py-4"><!></div></div>`);function ot(r,f){i(f,!0);let p=ne(),w=te(),D=_(()=>p?.()?.wsId),j=_(()=>p?.()?.providerId),P=_(()=>w?.()??{}),pe=_(()=>m(P).severity??`all`),V=_(()=>{if(!m(D)||!m(j))return null;let e=ae.safeParse(m(D)),t=re.safeParse(m(j));return!e.success||!t.success?null:{workspaceId:e.data,providerId:t.data}}),H=S(null),U=S(k([])),W=S(!1),G=S(null);F(N),E(()=>{m(V)&&oe(m(V))});async function K(){let t=m(V);if(!t||m(W))return;let n=e(()=>I.skills);if(n.length===0){z(`No skills discovered in this provider.`);return}g(W,!0),g(G,null);try{let e=await me(n.map(e=>({...t,skillId:e.id})));if(!e.report&&!e.error)return;if(g(H,e.report,!0),g(U,e.failures,!0),g(G,e.error,!0),e.report){let t=q(e.report.findings);z(`Analyzed ${e.report.snapshots.length} skills · ${t.error} errors · ${t.warning} warnings.`)}}finally{g(W,!1)}}function q(e){return{error:e.filter(e=>e.severity===`error`).length,warning:e.filter(e=>e.severity===`warning`).length,info:e.filter(e=>e.severity===`info`).length}}let Se=_(()=>m(H)?m(pe)===`all`?m(H).findings:m(H).findings.filter(e=>e.severity===m(pe)):[]);function ot(e){m(D)&&m(j)&&M(`workspaces.intelligence`,{wsId:m(D),providerId:m(j)},{severity:e===`all`?void 0:e},`REPLACE`)}let st=_(()=>{let e=new Map;for(let t of m(H)?.snapshots??[])e.set(t.skillId,t.name);return t=>e.get(t)??t});function ct(e){m(D)&&m(j)&&M(`workspaces.provider`,{wsId:m(D),providerId:m(j)},{skill:e,view:`detail`})}let lt=S(k([])),ut=S(!1),J=S(!1),Y=S(null),X=S(null),dt=S(null),ft=S(k({})),Z=S(null);E(()=>{Q()});async function Q(){g(ut,!0);try{let e=await ge();e.proposals&&g(lt,e.proposals,!0)}finally{g(ut,!1)}}async function pt(e){if(g(Z,m(Z)===e.id?null:e.id,!0),m(Z)===e.id&&e.payload.kind===`edit`)for(let t of e.payload.edits){let e=ie.safeParse(t.selection.skillId);if(e.success)try{let n=await se(t.selection,e.data);g(ft,{...m(ft),[t.selection.skillId]:n},!0)}catch{}}}async function mt(e){if(!m(Y)){g(Y,e.id,!0);try{let{result:t,error:n}=await ve(e.id);if(n){z(n);return}if(!t)return;g(dt,{proposalId:e.id,result:t},!0),t.conflicts>0?z(`${t.conflicts} conflict(s): skill changed after the proposal. Re-analyze.`,{label:`Re-analyze`,run:()=>void K()}):t.failed>0?z(`Applied with ${t.failed} failure(s).`):z(`Applied ${t.applied} change(s).`),await Q(),await ht()}finally{g(Y,null)}}}async function ht(){let e=m(V);e&&await oe(e)}async function gt(e){if(!m(X)){g(X,e.id,!0);try{let{error:t}=await _e(e.id);t&&z(t),await Q()}finally{g(X,null)}}}async function _t(e){let t=m(V);if(t&&!m(J)){g(J,!0);try{let{proposal:n,error:r}=await he({payload:{kind:`disable`,selections:e.skillIds.map(e=>({...t,skillId:e})),reason:e.message},findingIds:[e.id],rationale:`Address "${e.kind}": ${e.message}`});r&&z(r),n&&(z(`Disable proposal drafted for review.`),await Q())}finally{g(J,!1)}}}async function vt(e){let t=m(V);if(t&&!m(J)&&e.skillIds.length===1){g(J,!0);try{let n=ie.safeParse(e.skillIds[0]);if(!n.success)return;let r=await se(t,n.data),{frontmatter:i,body:a}=yt(r.content),o=`${i.description??``} Reviewed via skill intelligence (${e.kind}).`.trim(),{proposal:s,error:c}=await he({payload:{kind:`edit`,edits:[{selection:{...t,skillId:n.data},frontmatter:{...i,name:r.name,description:o},body:a}]},findingIds:[e.id],rationale:`Address "${e.kind}": ${e.message}`});c&&z(c),s&&(z(`Edit proposal drafted for review.`),await Q())}catch(e){z(e instanceof Error?e.message:String(e))}finally{g(J,!1)}}}function yt(e){let t=e.replace(/\r\n/g,`
@@ -1 +1 @@
1
- import{A as e,At as t,B as n,Ct as r,D as i,F as a,G as o,N as s,R as c,St as l,W as u,X as d,ct as f,gt as p,kt as m,lt as h,nt as g,o as _,ot as v,s as y,st as b,z as x}from"./CmCJ0SKP.js";import{t as S}from"./BaH4uqzh.js";import"./xihTtKlq.js";import"./DLuJKUyD.js";import{t as C}from"./BkEnd9_Z.js";import"./D25cXQtk.js";import{a as w}from"./BD9g8Udg.js";import{n as T,t as E}from"./0umLG1IN.js";import{n as D,t as O}from"./BYNWtKcf.js";var k=new Set([`$$slots`,`$$events`,`$$legacy`]);function A(e,t){let n=_(t,k),r=[[`path`,{d:`m16 18 6-6-6-6`}],[`path`,{d:`m8 6-6 6 6 6`}]];C(e,y({name:`code`},()=>n,{get iconNode(){return r}}))}var j=new Set([`$$slots`,`$$events`,`$$legacy`]);function M(e,t){let n=_(t,j),r=[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`}]];C(e,y({name:`pen`},()=>n,{get iconNode(){return r}}))}var N=new Set([`$$slots`,`$$events`,`$$legacy`]);function P(e,t){let n=_(t,N),r=[[`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`}],[`path`,{d:`M3 5V19A9 3 0 0 0 21 19V5`}],[`path`,{d:`M3 12A9 3 0 0 0 21 12`}]];C(e,y({name:`database`},()=>n,{get iconNode(){return r}}))}var F=new Set([`$$slots`,`$$events`,`$$legacy`]);function I(e,t){let n=_(t,F),r=[[`path`,{d:`M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z`}],[`circle`,{cx:`13.5`,cy:`6.5`,r:`.5`,fill:`currentColor`}],[`circle`,{cx:`17.5`,cy:`10.5`,r:`.5`,fill:`currentColor`}],[`circle`,{cx:`6.5`,cy:`12.5`,r:`.5`,fill:`currentColor`}],[`circle`,{cx:`8.5`,cy:`7.5`,r:`.5`,fill:`currentColor`}]];C(e,y({name:`palette`},()=>n,{get iconNode(){return r}}))}var L=new Set([`$$slots`,`$$events`,`$$legacy`]);function R(e,t){let n=_(t,L),r=[[`rect`,{width:`20`,height:`8`,x:`2`,y:`2`,rx:`2`,ry:`2`}],[`rect`,{width:`20`,height:`8`,x:`2`,y:`14`,rx:`2`,ry:`2`}],[`line`,{x1:`6`,x2:`6.01`,y1:`6`,y2:`6`}],[`line`,{x1:`6`,x2:`6.01`,y1:`18`,y2:`18`}]];C(e,y({name:`server`},()=>n,{get iconNode(){return r}}))}var z=new Set([`$$slots`,`$$events`,`$$legacy`]);function B(e,t){let n=_(t,z),r=[[`path`,{d:`M12 3v18`}],[`path`,{d:`m19 8 3 8a5 5 0 0 1-6 0zV7`}],[`path`,{d:`M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1`}],[`path`,{d:`m5 8 3 8a5 5 0 0 1-6 0zV7`}],[`path`,{d:`M7 21h10`}]];C(e,y({name:`scale`},()=>n,{get iconNode(){return r}}))}var V=new Set([`$$slots`,`$$events`,`$$legacy`]);function H(e,t){let n=_(t,V),r=[[`path`,{d:`M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z`}],[`path`,{d:`m3.3 7 8.7 5 8.7-5`}],[`path`,{d:`M12 22V12`}]];C(e,y({name:`box`},()=>n,{get iconNode(){return r}}))}var U=n(`<button class="rounded-lg border border-border p-3 text-left transition-colors hover:bg-muted/50"><div class="text-sm font-medium"> </div> <p class="mt-1 text-xs text-muted-foreground line-clamp-2"> </p></button>`),W=n(`<section><div class="mb-2 flex items-center gap-2"><!> <h2 class="text-sm font-medium"> </h2></div> <div class="grid grid-cols-1 gap-2 sm:grid-cols-2 lg:grid-cols-3"></div></section>`),G=n(`<div class="flex h-full flex-col overflow-y-auto"><header class="shrink-0 border-b border-border px-5 py-4"><h1 class="text-lg font-semibold">Creator</h1> <p class="mt-0.5 text-xs text-muted-foreground">Write skills with AI assistance, test them in context, and iterate.</p></header> <div class="mx-auto w-full max-w-4xl space-y-6 p-5"><div class="flex gap-3"><button class="flex items-center gap-2 rounded-lg border border-border px-4 py-2 text-sm font-medium transition-colors hover:bg-muted/50"><!> New skill</button> <button class="flex items-center gap-2 rounded-lg border border-border px-4 py-2 text-sm font-medium transition-colors hover:bg-muted/50"><!> Open existing</button></div> <div class="space-y-5"></div></div></div>`);function K(n,u){r(u,!0);let _={coding:A,writing:M,data:P,design:I,devops:R,legal:B,general:H},y=p(()=>Object.entries(D).map(([e,t])=>({category:e,label:t.label,icon:_[e]??H,templates:O.filter(t=>t.category===e)}))),C=p(w);function k(e){let t=d(C)[0];if(!t){S(`/workspaces`);return}S(`/creator/new/${t.target.workspaceId}/${t.target.providerId}?template=${e}`)}function j(){let e=d(C)[0];if(!e){S(`/workspaces`);return}S(`/creator/new/${e.target.workspaceId}/${e.target.providerId}`)}var N=G(),F=h(v(N),2),L=v(F),z=v(L),V=v(z);E(V,{class:`h-4 w-4`}),m(),t(z);var K=h(z,2),q=v(K);T(q,{class:`h-4 w-4`}),m(),t(K),t(L);var J=h(L,2);e(J,21,()=>d(y),e=>e.category,(n,r)=>{var l=x(),u=b(l),p=n=>{var s=W(),l=v(s),u=v(l);i(u,()=>d(r).icon,(e,t)=>{t(e,{class:`h-4 w-4 text-muted-foreground`})});var p=h(u,2),m=f(p,!0);t(l);var _=h(l,2);e(_,21,()=>d(r).templates,e=>e.id,(e,n)=>{var r=U(),i=v(r),s=f(i,!0),l=h(i,2),u=f(l,!0);t(r),g(()=>{a(s,d(n).name),a(u,d(n).description)}),o(`click`,r,()=>k(d(n).id)),c(e,r)}),t(_),t(s),g(()=>a(m,d(r).label)),c(n,s)};s(u,e=>{d(r).templates.length>0&&e(p)}),c(n,l)}),t(J),t(F),t(N),o(`click`,z,j),o(`click`,K,()=>void S(`/workspaces`)),c(n,N),l()}u([`click`]);export{K as default};
1
+ import{A as e,At as t,B as n,Ct as r,D as i,F as a,G as o,N as s,R as c,St as l,W as u,X as d,ct as f,gt as p,kt as m,lt as h,nt as g,o as _,ot as v,s as y,st as b,z as x}from"./CmCJ0SKP.js";import{t as S}from"./JcDjicYT.js";import"./xihTtKlq.js";import"./BZ2Jwl6O.js";import{t as C}from"./BkEnd9_Z.js";import"./Bg2k7op5.js";import{a as w}from"./FuwccWbx.js";import{n as T,t as E}from"./0umLG1IN.js";import{n as D,t as O}from"./BYNWtKcf.js";var k=new Set([`$$slots`,`$$events`,`$$legacy`]);function A(e,t){let n=_(t,k),r=[[`path`,{d:`m16 18 6-6-6-6`}],[`path`,{d:`m8 6-6 6 6 6`}]];C(e,y({name:`code`},()=>n,{get iconNode(){return r}}))}var j=new Set([`$$slots`,`$$events`,`$$legacy`]);function M(e,t){let n=_(t,j),r=[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`}]];C(e,y({name:`pen`},()=>n,{get iconNode(){return r}}))}var N=new Set([`$$slots`,`$$events`,`$$legacy`]);function P(e,t){let n=_(t,N),r=[[`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`}],[`path`,{d:`M3 5V19A9 3 0 0 0 21 19V5`}],[`path`,{d:`M3 12A9 3 0 0 0 21 12`}]];C(e,y({name:`database`},()=>n,{get iconNode(){return r}}))}var F=new Set([`$$slots`,`$$events`,`$$legacy`]);function I(e,t){let n=_(t,F),r=[[`path`,{d:`M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z`}],[`circle`,{cx:`13.5`,cy:`6.5`,r:`.5`,fill:`currentColor`}],[`circle`,{cx:`17.5`,cy:`10.5`,r:`.5`,fill:`currentColor`}],[`circle`,{cx:`6.5`,cy:`12.5`,r:`.5`,fill:`currentColor`}],[`circle`,{cx:`8.5`,cy:`7.5`,r:`.5`,fill:`currentColor`}]];C(e,y({name:`palette`},()=>n,{get iconNode(){return r}}))}var L=new Set([`$$slots`,`$$events`,`$$legacy`]);function R(e,t){let n=_(t,L),r=[[`rect`,{width:`20`,height:`8`,x:`2`,y:`2`,rx:`2`,ry:`2`}],[`rect`,{width:`20`,height:`8`,x:`2`,y:`14`,rx:`2`,ry:`2`}],[`line`,{x1:`6`,x2:`6.01`,y1:`6`,y2:`6`}],[`line`,{x1:`6`,x2:`6.01`,y1:`18`,y2:`18`}]];C(e,y({name:`server`},()=>n,{get iconNode(){return r}}))}var z=new Set([`$$slots`,`$$events`,`$$legacy`]);function B(e,t){let n=_(t,z),r=[[`path`,{d:`M12 3v18`}],[`path`,{d:`m19 8 3 8a5 5 0 0 1-6 0zV7`}],[`path`,{d:`M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1`}],[`path`,{d:`m5 8 3 8a5 5 0 0 1-6 0zV7`}],[`path`,{d:`M7 21h10`}]];C(e,y({name:`scale`},()=>n,{get iconNode(){return r}}))}var V=new Set([`$$slots`,`$$events`,`$$legacy`]);function H(e,t){let n=_(t,V),r=[[`path`,{d:`M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z`}],[`path`,{d:`m3.3 7 8.7 5 8.7-5`}],[`path`,{d:`M12 22V12`}]];C(e,y({name:`box`},()=>n,{get iconNode(){return r}}))}var U=n(`<button class="rounded-lg border border-border p-3 text-left transition-colors hover:bg-muted/50"><div class="text-sm font-medium"> </div> <p class="mt-1 text-xs text-muted-foreground line-clamp-2"> </p></button>`),W=n(`<section><div class="mb-2 flex items-center gap-2"><!> <h2 class="text-sm font-medium"> </h2></div> <div class="grid grid-cols-1 gap-2 sm:grid-cols-2 lg:grid-cols-3"></div></section>`),G=n(`<div class="flex h-full flex-col overflow-y-auto"><header class="shrink-0 border-b border-border px-5 py-4"><h1 class="text-lg font-semibold">Creator</h1> <p class="mt-0.5 text-xs text-muted-foreground">Write skills with AI assistance, test them in context, and iterate.</p></header> <div class="mx-auto w-full max-w-4xl space-y-6 p-5"><div class="flex gap-3"><button class="flex items-center gap-2 rounded-lg border border-border px-4 py-2 text-sm font-medium transition-colors hover:bg-muted/50"><!> New skill</button> <button class="flex items-center gap-2 rounded-lg border border-border px-4 py-2 text-sm font-medium transition-colors hover:bg-muted/50"><!> Open existing</button></div> <div class="space-y-5"></div></div></div>`);function K(n,u){r(u,!0);let _={coding:A,writing:M,data:P,design:I,devops:R,legal:B,general:H},y=p(()=>Object.entries(D).map(([e,t])=>({category:e,label:t.label,icon:_[e]??H,templates:O.filter(t=>t.category===e)}))),C=p(w);function k(e){let t=d(C)[0];if(!t){S(`/workspaces`);return}S(`/creator/new/${t.target.workspaceId}/${t.target.providerId}?template=${e}`)}function j(){let e=d(C)[0];if(!e){S(`/workspaces`);return}S(`/creator/new/${e.target.workspaceId}/${e.target.providerId}`)}var N=G(),F=h(v(N),2),L=v(F),z=v(L),V=v(z);E(V,{class:`h-4 w-4`}),m(),t(z);var K=h(z,2),q=v(K);T(q,{class:`h-4 w-4`}),m(),t(K),t(L);var J=h(L,2);e(J,21,()=>d(y),e=>e.category,(n,r)=>{var l=x(),u=b(l),p=n=>{var s=W(),l=v(s),u=v(l);i(u,()=>d(r).icon,(e,t)=>{t(e,{class:`h-4 w-4 text-muted-foreground`})});var p=h(u,2),m=f(p,!0);t(l);var _=h(l,2);e(_,21,()=>d(r).templates,e=>e.id,(e,n)=>{var r=U(),i=v(r),s=f(i,!0),l=h(i,2),u=f(l,!0);t(r),g(()=>{a(s,d(n).name),a(u,d(n).description)}),o(`click`,r,()=>k(d(n).id)),c(e,r)}),t(_),t(s),g(()=>a(m,d(r).label)),c(n,s)};s(u,e=>{d(r).templates.length>0&&e(p)}),c(n,l)}),t(J),t(F),t(N),o(`click`,z,j),o(`click`,K,()=>void S(`/workspaces`)),c(n,N),l()}u([`click`]);export{K as default};
@@ -1 +1 @@
1
- import{$ as e,At as t,B as n,Ct as r,D as i,F as a,N as o,R as s,St as c,X as l,bt as u,ct as d,ft as f,gt as p,it as m,l as h,lt as g,mt as _,nt as v,ot as y,rt as b,st as ee,wt as x,xt as S,z as te}from"./CmCJ0SKP.js";import{t as C}from"./BaH4uqzh.js";import"./xihTtKlq.js";import{t as w}from"./D0xHg31U.js";import"./DLuJKUyD.js";import{E as T,S as E,T as D,w as O}from"./DWcQbrnv.js";function k(e){return e.activities.find(e=>e.entry)??e.activities[0]}var A=class{entries=new Map;register(e){this.entries.set(e.id,e)}get(e){return this.entries.get(e)}list(){return[...this.entries.values()]}findByPath(e){for(let t of this.entries.values()){let n=t.absolutePattern.replace(/:[^/]+/g,`[^/]+`);try{if(RegExp(`^${n.replace(/\//g,`\\/`)}\\/?$`).test(e))return t}catch{}}}},j=class{apps=new Map;register(e){this.apps.set(e.id,e)}get(e){return this.apps.get(e)}list(){return[...this.apps.values()]}},M=new A,N=new j;function P(e){let t={id:e.id,pattern:e.pattern,params:e.params,search:e.search,component:e.component,children:e.children};return I(t,t.pattern||`/`),t}function F(e,t){L(e,t)}function I(e,t){if(M.register({id:e.id,route:e,absolutePattern:t}),e.children)for(let n of e.children)I(n,R(t,n.pattern))}function L(e,t){let n=R(e,t.pattern);if(M.register({id:t.id,route:t,absolutePattern:n}),t.children)for(let e of t.children)L(n,e)}function R(e,t){let n=e.replace(/\/+$/,``),r=t.replace(/^\/+|\/+$/g,``);return r===``?n||`/`:`${n}/${r}`}function ne(e){return F(e.pattern,e.root),{pattern:e.pattern,root:e.root,entry:e.entry}}function re(e){return{id:e.id,pattern:``,search:e.search,component:e.component}}function ie(e){return N.register(e),{manifest:e}}function ae(e){let t=Object.entries(e).filter(([,e])=>e!=null);if(t.length===0)return``;let n=new URLSearchParams;for(let[e,r]of t)n.set(e,typeof r==`string`?r:String(r));let r=n.toString();return r?`?${r}`:``}function z(e){let t=e.startsWith(`?`)?e.slice(1):e;if(!t)return{};let n={},r=new URLSearchParams(t);for(let[e,t]of r)n[e]=t;return n}function B(e,t,n,r){let i=G(e,H(V(t,r)),r);if(i.length===0)return{kind:`no-match`,reason:`no-route`};let a=K(i),o=i[i.length-1].route,s=o.params;if(s){let e=s.safeParse(a);if(!e.success)return{kind:`parse-error`,reason:`params`,chain:i,errors:e.error}}let c=o.search;if(c){let e=z(n),t=c.safeParse(e);if(!t.success)return{kind:`parse-error`,reason:`search`,chain:i,errors:t.error}}return{kind:`matched`,chain:i}}function V(e,t){let n=t.replace(/\/+$/,``);return e===n?``:e.startsWith(n+`/`)?e.slice(n.length):e}function H(e){let t=e.replace(/^\/+|\/+$/g,``);return t===``?[]:t.split(`/`).map(e=>{try{return decodeURIComponent(e)}catch{return e}})}function U(e){let t=e.replace(/^\/+|\/+$/g,``);return t===``?[]:t.split(`/`).map(e=>e.startsWith(`:`)?{kind:`param`,value:e.slice(1)}:{kind:`static`,value:e})}function W(e,t){let n=e.replace(/\/+$/,``),r=t.replace(/^\/+|\/+$/g,``);return r===``?n:`${n}/${r}`}function G(e,t,n){let r=W(n,e.pattern),i=U(e.pattern);if(t.length<i.length)return[];let a={};for(let e=0;e<i.length;e++){let n=i[e],r=t[e];if(!r)return[];if(n.kind===`static`){if(n.value!==r)return[]}else a[n.value]=r}let o={absolutePattern:r,route:e,rawParams:a},s=t.slice(i.length);if(s.length===0)return[o];if(e.children&&e.children.length>0)for(let t of e.children){let e=G(t,s,r);if(e.length>0)return[o,...e]}return[]}function K(e){let t={};for(let n of e)Object.assign(t,n.rawParams);return t}var q=/:([A-Za-z_][A-Za-z0-9_]*)/g;function J(e,t){return e.replace(q,(e,n)=>{let r=t[n];return r===void 0?`:${n}`:encodeURIComponent(r)})}var Y=`/workspaces`;function oe(e,t){let n=se(e),r=n?N.get(n):void 0;if(!r)return{kind:`redirect`,path:Y};let i=k(r);if(!i)return{kind:`redirect`,path:Y};for(let n of r.activities){let r=B(n.root,e,t,n.pattern);if(r.kind===`matched`)return{kind:`ok`};if(r.kind===`parse-error`)return r.reason===`params`?{kind:`redirect`,path:i.pattern}:{kind:`redirect`,path:e}}return{kind:`redirect`,path:i.pattern}}function se(e){let t=e.replace(/^\/+/,``);return t?t.split(`/`)[0]??null:null}var X=null;function ce(e){X=e}function le(e,t,n){let r=M.get(e);return r?de(r.absolutePattern,t,n):`/`}function ue(e,t,n,r){let i=le(e,t,n);X?.navigate(i,r)}function de(e,t,n){return`${J(e,t??{})}${n?ae(n):``}`}var fe=Symbol(`skill-creator:portal-target`),pe=Symbol(`skill-creator:app-context`);function me(e){x(fe,e)}function he(e){x(pe,e)}var Z=Symbol(`skill-creator:router`);function ge(e){x(Z,{get:e})}function _e(){if(!S(Z))return;let e=u(Z).get;return()=>e().params}function ve(){if(!S(Z))return;let e=u(Z).get;return()=>e().search}function Q(e){let t=e.replace(/^\/+|\/+$/g,``);if(!t)return null;let n=t.split(`/`),r=n[0];return r?{app:r,instanceKey:n[1]??`home`}:null}var ye={navigate(e,t=`PUSH`){t===`REPLACE`?C(e,{replaceState:!0,keepFocus:!0,noScroll:!0}):C(e)},replace(e){this.navigate(e,`REPLACE`)}};T({version:D(1),theme:E([`light`,`dark`,`system`]).default(`system`),sidebarCollapsed:O().default(!1)});var be=n(`<div class="app-shell-error svelte-1oszhz"> </div>`),$=n(`<div class="app-shell-loading svelte-1oszhz" aria-label="Loading"></div>`),xe=n(`<div class="app-shell-empty svelte-1oszhz">No route matched</div>`),Se=n(`<div class="app-shell svelte-1oszhz"><!> <div class="app-portal-root svelte-1oszhz"></div></div>`);function Ce(n,u){r(u,!0);let m=_(null),x=p(()=>B(u.activity.root,w.url.pathname,w.url.search,u.activity.pattern)),S=p(()=>l(x).kind===`matched`?l(x).chain:[]),C=p(()=>A(l(S))),T=p(()=>j(l(x),l(S)));me(()=>l(m)),he({get manifest(){return{id:u.app.id,name:u.app.name,icon:u.app.icon}},get pathname(){return w.url.pathname}}),ge(()=>({match:l(x),params:l(C),search:l(T),chain:l(S)}));let E=_(null),D=_(null),O=null,k=0;b(()=>{let t=(l(S).length>0?l(S)[l(S).length-1]:void 0)?.route,n=e(()=>O);if(!t){O=null,k+=1,f(E,null),f(D,null);return}if(n===t)return;O=t,f(E,null),f(D,null);let r=++k;t.component().then(e=>{r===k&&f(E,e.default,!0)}).catch(e=>{r===k&&f(D,e instanceof Error?e.message:String(e),!0)})});function A(e){if(e.length===0)return;let t={};for(let n of e)Object.assign(t,n.rawParams);return t}function j(e,t){if(e.kind===`no-match`||t.length===0)return;let n=t[t.length-1]?.route.search;if(!n)return;let r=n.safeParse(z(w.url.search));return r.success?r.data:void 0}var M=Se(),N=y(M),P=e=>{var t=be(),n=d(t);v(()=>a(n,`Failed to load: ${l(D)??``}`)),s(e,t)},F=e=>{let t=p(()=>l(E));var n=te(),r=ee(n);i(r,()=>l(t),(e,t)=>{t(e,{})}),s(e,n)},I=e=>{var t=$();s(e,t)},L=e=>{var t=xe();s(e,t)};o(N,e=>{l(D)?e(P):l(E)?e(F,1):l(S).length>0?e(I,2):e(L,-1)});var R=g(N,2);h(R,e=>f(m,e),()=>l(m)),t(M),s(n,M),c()}var we=n(`<div class="tab-empty svelte-t4mhty">Select an app from the sidebar.</div>`),Te=n(`<div class="tab-outlet-root svelte-t4mhty"><!></div>`);function Ee(e,n){r(n,!0);let i=p(()=>w.url.pathname),a=p(()=>Q(l(i))?.app??null),u=p(()=>l(a)?N.get(l(a)):null);m(()=>{let e=oe(l(i),w.url.search);e.kind===`redirect`&&(e.path!==l(i)||w.url.search)&&ye.replace(e.path)});let d=p(()=>{if(!l(u))return null;for(let e of l(u).activities)if(B(e.root,l(i),w.url.search,e.pattern).kind===`matched`)return e;return l(u).activities.find(e=>e.entry)??l(u).activities[0]??null});var f=Te(),h=y(f),g=e=>{Ce(e,{get app(){return l(u)},get activity(){return l(d)}})},_=e=>{var t=we();s(e,t)};o(h,e=>{l(u)&&l(d)?e(g):e(_,-1)}),t(f),s(e,f),c()}export{ue as a,ne as c,N as d,ve as i,re as l,Q as n,ce as o,_e as r,ie as s,Ee as t,P as u};
1
+ import{$ as e,At as t,B as n,Ct as r,D as i,F as a,N as o,R as s,St as c,X as l,bt as u,ct as d,ft as f,gt as p,it as m,l as h,lt as g,mt as _,nt as v,ot as y,rt as b,st as ee,wt as x,xt as S,z as te}from"./CmCJ0SKP.js";import{t as C}from"./JcDjicYT.js";import"./xihTtKlq.js";import{t as w}from"./CsaIfA9E.js";import"./BZ2Jwl6O.js";import{E as T,S as E,T as D,w as O}from"./BoMQFGOq.js";function k(e){return e.activities.find(e=>e.entry)??e.activities[0]}var A=class{entries=new Map;register(e){this.entries.set(e.id,e)}get(e){return this.entries.get(e)}list(){return[...this.entries.values()]}findByPath(e){for(let t of this.entries.values()){let n=t.absolutePattern.replace(/:[^/]+/g,`[^/]+`);try{if(RegExp(`^${n.replace(/\//g,`\\/`)}\\/?$`).test(e))return t}catch{}}}},j=class{apps=new Map;register(e){this.apps.set(e.id,e)}get(e){return this.apps.get(e)}list(){return[...this.apps.values()]}},M=new A,N=new j;function P(e){let t={id:e.id,pattern:e.pattern,params:e.params,search:e.search,component:e.component,children:e.children};return I(t,t.pattern||`/`),t}function F(e,t){L(e,t)}function I(e,t){if(M.register({id:e.id,route:e,absolutePattern:t}),e.children)for(let n of e.children)I(n,R(t,n.pattern))}function L(e,t){let n=R(e,t.pattern);if(M.register({id:t.id,route:t,absolutePattern:n}),t.children)for(let e of t.children)L(n,e)}function R(e,t){let n=e.replace(/\/+$/,``),r=t.replace(/^\/+|\/+$/g,``);return r===``?n||`/`:`${n}/${r}`}function ne(e){return F(e.pattern,e.root),{pattern:e.pattern,root:e.root,entry:e.entry}}function re(e){return{id:e.id,pattern:``,search:e.search,component:e.component}}function ie(e){return N.register(e),{manifest:e}}function ae(e){let t=Object.entries(e).filter(([,e])=>e!=null);if(t.length===0)return``;let n=new URLSearchParams;for(let[e,r]of t)n.set(e,typeof r==`string`?r:String(r));let r=n.toString();return r?`?${r}`:``}function z(e){let t=e.startsWith(`?`)?e.slice(1):e;if(!t)return{};let n={},r=new URLSearchParams(t);for(let[e,t]of r)n[e]=t;return n}function B(e,t,n,r){let i=G(e,H(V(t,r)),r);if(i.length===0)return{kind:`no-match`,reason:`no-route`};let a=K(i),o=i[i.length-1].route,s=o.params;if(s){let e=s.safeParse(a);if(!e.success)return{kind:`parse-error`,reason:`params`,chain:i,errors:e.error}}let c=o.search;if(c){let e=z(n),t=c.safeParse(e);if(!t.success)return{kind:`parse-error`,reason:`search`,chain:i,errors:t.error}}return{kind:`matched`,chain:i}}function V(e,t){let n=t.replace(/\/+$/,``);return e===n?``:e.startsWith(n+`/`)?e.slice(n.length):e}function H(e){let t=e.replace(/^\/+|\/+$/g,``);return t===``?[]:t.split(`/`).map(e=>{try{return decodeURIComponent(e)}catch{return e}})}function U(e){let t=e.replace(/^\/+|\/+$/g,``);return t===``?[]:t.split(`/`).map(e=>e.startsWith(`:`)?{kind:`param`,value:e.slice(1)}:{kind:`static`,value:e})}function W(e,t){let n=e.replace(/\/+$/,``),r=t.replace(/^\/+|\/+$/g,``);return r===``?n:`${n}/${r}`}function G(e,t,n){let r=W(n,e.pattern),i=U(e.pattern);if(t.length<i.length)return[];let a={};for(let e=0;e<i.length;e++){let n=i[e],r=t[e];if(!r)return[];if(n.kind===`static`){if(n.value!==r)return[]}else a[n.value]=r}let o={absolutePattern:r,route:e,rawParams:a},s=t.slice(i.length);if(s.length===0)return[o];if(e.children&&e.children.length>0)for(let t of e.children){let e=G(t,s,r);if(e.length>0)return[o,...e]}return[]}function K(e){let t={};for(let n of e)Object.assign(t,n.rawParams);return t}var q=/:([A-Za-z_][A-Za-z0-9_]*)/g;function J(e,t){return e.replace(q,(e,n)=>{let r=t[n];return r===void 0?`:${n}`:encodeURIComponent(r)})}var Y=`/workspaces`;function oe(e,t){let n=se(e),r=n?N.get(n):void 0;if(!r)return{kind:`redirect`,path:Y};let i=k(r);if(!i)return{kind:`redirect`,path:Y};for(let n of r.activities){let r=B(n.root,e,t,n.pattern);if(r.kind===`matched`)return{kind:`ok`};if(r.kind===`parse-error`)return r.reason===`params`?{kind:`redirect`,path:i.pattern}:{kind:`redirect`,path:e}}return{kind:`redirect`,path:i.pattern}}function se(e){let t=e.replace(/^\/+/,``);return t?t.split(`/`)[0]??null:null}var X=null;function ce(e){X=e}function le(e,t,n){let r=M.get(e);return r?de(r.absolutePattern,t,n):`/`}function ue(e,t,n,r){let i=le(e,t,n);X?.navigate(i,r)}function de(e,t,n){return`${J(e,t??{})}${n?ae(n):``}`}var fe=Symbol(`skill-creator:portal-target`),pe=Symbol(`skill-creator:app-context`);function me(e){x(fe,e)}function he(e){x(pe,e)}var Z=Symbol(`skill-creator:router`);function ge(e){x(Z,{get:e})}function _e(){if(!S(Z))return;let e=u(Z).get;return()=>e().params}function ve(){if(!S(Z))return;let e=u(Z).get;return()=>e().search}function Q(e){let t=e.replace(/^\/+|\/+$/g,``);if(!t)return null;let n=t.split(`/`),r=n[0];return r?{app:r,instanceKey:n[1]??`home`}:null}var ye={navigate(e,t=`PUSH`){t===`REPLACE`?C(e,{replaceState:!0,keepFocus:!0,noScroll:!0}):C(e)},replace(e){this.navigate(e,`REPLACE`)}};T({version:D(1),theme:E([`light`,`dark`,`system`]).default(`system`),sidebarCollapsed:O().default(!1)});var be=n(`<div class="app-shell-error svelte-1oszhz"> </div>`),$=n(`<div class="app-shell-loading svelte-1oszhz" aria-label="Loading"></div>`),xe=n(`<div class="app-shell-empty svelte-1oszhz">No route matched</div>`),Se=n(`<div class="app-shell svelte-1oszhz"><!> <div class="app-portal-root svelte-1oszhz"></div></div>`);function Ce(n,u){r(u,!0);let m=_(null),x=p(()=>B(u.activity.root,w.url.pathname,w.url.search,u.activity.pattern)),S=p(()=>l(x).kind===`matched`?l(x).chain:[]),C=p(()=>A(l(S))),T=p(()=>j(l(x),l(S)));me(()=>l(m)),he({get manifest(){return{id:u.app.id,name:u.app.name,icon:u.app.icon}},get pathname(){return w.url.pathname}}),ge(()=>({match:l(x),params:l(C),search:l(T),chain:l(S)}));let E=_(null),D=_(null),O=null,k=0;b(()=>{let t=(l(S).length>0?l(S)[l(S).length-1]:void 0)?.route,n=e(()=>O);if(!t){O=null,k+=1,f(E,null),f(D,null);return}if(n===t)return;O=t,f(E,null),f(D,null);let r=++k;t.component().then(e=>{r===k&&f(E,e.default,!0)}).catch(e=>{r===k&&f(D,e instanceof Error?e.message:String(e),!0)})});function A(e){if(e.length===0)return;let t={};for(let n of e)Object.assign(t,n.rawParams);return t}function j(e,t){if(e.kind===`no-match`||t.length===0)return;let n=t[t.length-1]?.route.search;if(!n)return;let r=n.safeParse(z(w.url.search));return r.success?r.data:void 0}var M=Se(),N=y(M),P=e=>{var t=be(),n=d(t);v(()=>a(n,`Failed to load: ${l(D)??``}`)),s(e,t)},F=e=>{let t=p(()=>l(E));var n=te(),r=ee(n);i(r,()=>l(t),(e,t)=>{t(e,{})}),s(e,n)},I=e=>{var t=$();s(e,t)},L=e=>{var t=xe();s(e,t)};o(N,e=>{l(D)?e(P):l(E)?e(F,1):l(S).length>0?e(I,2):e(L,-1)});var R=g(N,2);h(R,e=>f(m,e),()=>l(m)),t(M),s(n,M),c()}var we=n(`<div class="tab-empty svelte-t4mhty">Select an app from the sidebar.</div>`),Te=n(`<div class="tab-outlet-root svelte-t4mhty"><!></div>`);function Ee(e,n){r(n,!0);let i=p(()=>w.url.pathname),a=p(()=>Q(l(i))?.app??null),u=p(()=>l(a)?N.get(l(a)):null);m(()=>{let e=oe(l(i),w.url.search);e.kind===`redirect`&&(e.path!==l(i)||w.url.search)&&ye.replace(e.path)});let d=p(()=>{if(!l(u))return null;for(let e of l(u).activities)if(B(e.root,l(i),w.url.search,e.pattern).kind===`matched`)return e;return l(u).activities.find(e=>e.entry)??l(u).activities[0]??null});var f=Te(),h=y(f),g=e=>{Ce(e,{get app(){return l(u)},get activity(){return l(d)}})},_=e=>{var t=we();s(e,t)};o(h,e=>{l(u)&&l(d)?e(g):e(_,-1)}),t(f),s(e,f),c()}export{ue as a,ne as c,N as d,ve as i,re as l,Q as n,ce as o,_e as r,ie as s,Ee as t,P as u};
@@ -1 +1 @@
1
- import"./CmCJ0SKP.js";import{a as e}from"./BaH4uqzh.js";var t={get data(){return e.data},get error(){return e.error},get form(){return e.form},get params(){return e.params},get route(){return e.route},get state(){return e.state},get status(){return e.status},get url(){return e.url}};export{t};
1
+ import"./CmCJ0SKP.js";import{a as e}from"./JcDjicYT.js";var t={get data(){return e.data},get error(){return e.error},get form(){return e.form},get params(){return e.params},get route(){return e.route},get state(){return e.state},get status(){return e.status},get url(){return e.url}};export{t};
@@ -1 +1 @@
1
- import{ut as e}from"./CmCJ0SKP.js";import{a as t,o as n,t as r}from"./DWcQbrnv.js";var i=r(t),a=r(t),o=e({builtIn:[],user:[],loading:!1,error:null});async function s(){let e=i.issue(),t=n();if(!t)return e.isLatest()&&(o.loading=!1),`failed`;o.loading=!0,o.error=null;try{let{builtIn:n,user:r}=await t.repository.sources.list({});return e.isCurrent()?(o.builtIn=n,o.user=r,`loaded`):`superseded`}catch(t){return e.isCurrent()?(o.error=t instanceof Error?t.message:String(t),`failed`):`superseded`}finally{e.isLatest()&&(o.loading=!1)}}async function c(e){let t=a.issue(),n;try{({source:n}=await u().repository.sources.add(e))}catch(e){if(!t.isCurrent())return null;throw e}return t.isCurrent()?(await s(),t.isCurrent()?n:null):null}async function l(e){let t=a.issue();try{await u().repository.sources.remove({id:e})}catch(e){if(!t.isCurrent())return!1;throw e}return t.isCurrent()?(await s(),t.isCurrent()):!1}function u(){let e=n();if(!e)throw Error(`The Skill Creator daemon is not connected.`);return e}var d=3e5,f=e(new Map);function p(e){return f.get(e)}function m(e,t){f.set(e,{skillCount:t.skillCount,commitPrefix:t.commit.slice(0,12),scannedAt:Date.now()})}function h(e){return e?Date.now()-e.scannedAt>d:!1}export{s as a,c as i,h as n,l as o,m as r,o as s,p as t};
1
+ import{ut as e}from"./CmCJ0SKP.js";import{a as t,o as n,t as r}from"./BoMQFGOq.js";var i=r(t),a=r(t),o=e({builtIn:[],user:[],loading:!1,error:null});async function s(){let e=i.issue(),t=n();if(!t)return e.isLatest()&&(o.loading=!1),`failed`;o.loading=!0,o.error=null;try{let{builtIn:n,user:r}=await t.repository.sources.list({});return e.isCurrent()?(o.builtIn=n,o.user=r,`loaded`):`superseded`}catch(t){return e.isCurrent()?(o.error=t instanceof Error?t.message:String(t),`failed`):`superseded`}finally{e.isLatest()&&(o.loading=!1)}}async function c(e){let t=a.issue(),n;try{({source:n}=await u().repository.sources.add(e))}catch(e){if(!t.isCurrent())return null;throw e}return t.isCurrent()?(await s(),t.isCurrent()?n:null):null}async function l(e){let t=a.issue();try{await u().repository.sources.remove({id:e})}catch(e){if(!t.isCurrent())return!1;throw e}return t.isCurrent()?(await s(),t.isCurrent()):!1}function u(){let e=n();if(!e)throw Error(`The Skill Creator daemon is not connected.`);return e}var d=3e5,f=e(new Map);function p(e){return f.get(e)}function m(e,t){f.set(e,{skillCount:t.skillCount,commitPrefix:t.commit.slice(0,12),scannedAt:Date.now()})}function h(e){return e?Date.now()-e.scannedAt>d:!1}export{s as a,c as i,h as n,l as o,m as r,o as s,p as t};
@@ -1 +1 @@
1
- import{A as e,At as t,B as n,Ct as r,F as i,G as a,N as o,R as s,S as c,St as l,W as u,X as d,ct as f,d as p,ft as m,gt as h,kt as g,lt as _,m as v,mt as y,nt as b,o as x,ot as S,p as C,rt as w,s as T,st as E,x as D}from"./CmCJ0SKP.js";import{t as O}from"./BaH4uqzh.js";import"./xihTtKlq.js";import"./DLuJKUyD.js";import{t as k}from"./BkEnd9_Z.js";import{i as ee}from"./D-ecV3TD.js";import{n as A,t as j}from"./Dl8eQ129.js";import{n as M,s as N}from"./CNPsST_i.js";import{a as P,i as F,n as te,o as I,s as L,t as R}from"./DJNLWtK-.js";var z=new Set([`$$slots`,`$$events`,`$$legacy`]);function B(e,t){let n=x(t,z),r=[[`path`,{d:`M15 3h6v6`}],[`path`,{d:`M10 14 21 3`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`}]];k(e,T({name:`external-link`},()=>n,{get iconNode(){return r}}))}var V=n(`<span class="text-amber-600 dark:text-amber-400">stale · rescan for latest</span>`),H=n(`<span> </span> <span class="font-mono"> </span> <!>`,1),U=n(`<span class="italic">Not scanned yet</span>`),W=n(`<a target="_blank" rel="noreferrer noopener" class="inline-flex h-7 items-center gap-1 rounded-md border border-border px-2 text-[11px] text-muted-foreground transition-colors hover:bg-muted/50"><!> Home</a>`),G=n(`<button type="button" class="ml-auto inline-flex h-7 items-center gap-1 rounded-md px-2 text-[11px] text-muted-foreground transition-colors hover:bg-destructive/10 hover:text-destructive"><!></button>`),ne=n(`<article class="flex h-full flex-col gap-2 rounded-lg border border-border bg-card p-3 text-left transition-colors hover:border-primary/40"><header class="flex items-start gap-2"><div class="min-w-0 flex-1"><div class="flex items-center gap-1.5"><h3 class="truncate text-sm font-medium text-foreground"> </h3> <span> </span></div> <p class="mt-0.5 line-clamp-2 text-[11px] leading-4 text-muted-foreground"> </p></div></header> <dl class="mt-auto flex flex-wrap items-center gap-x-3 gap-y-0.5 text-[11px] text-muted-foreground"><!></dl> <footer class="flex shrink-0 items-center gap-2"><button type="button" class="inline-flex h-7 items-center rounded-md bg-primary px-2.5 text-[11px] font-medium text-primary-foreground transition-colors hover:bg-primary/90">Scan</button> <!> <!></footer></article>`);function re(e,n){r(n,!0);var u=ne(),d=S(u),p=S(d),m=S(p),h=S(m),y=f(h,!0),x=_(h,2),C=f(x,!0);t(m);var w=_(m,2),T=f(w,!0);t(p),t(d);var O=_(d,2),k=S(O),ee=e=>{var t=H(),r=E(t),a=f(r),c=_(r,2),l=f(c,!0),u=_(c,2),d=e=>{var t=V();s(e,t)};o(u,e=>{n.stale&&e(d)}),b(()=>{i(a,`${n.scanSummary.skillCount??``} skills`),i(l,n.scanSummary.commitPrefix)}),s(e,t)},A=e=>{var t=U();s(e,t)};o(k,e=>{n.scanSummary?e(ee):e(A,-1)}),t(O);var M=_(O,2),P=S(M),F=_(P,2),te=e=>{var r=W();B(S(r),{class:`h-3 w-3`}),g(),t(r),b(()=>{v(r,`href`,n.homepage),v(r,`aria-label`,`Open ${n.label} homepage`)}),s(e,r)};o(F,e=>{n.homepage&&e(te)});var I=_(F,2),L=e=>{var r=G(),i=S(r);j(i,{class:`h-3.5 w-3.5`}),t(r),b(()=>v(r,`aria-label`,`Remove ${n.label}`)),a(`click`,r,function(...e){n.onremove?.apply(this,e)}),s(e,r)};o(I,e=>{!n.builtIn&&n.onremove&&e(L)}),t(M),t(u),b(e=>{i(y,n.label),D(x,1,e),i(C,n.builtIn?`Built-in`:`Custom`),i(T,n.description||n.gitUrl)},[()=>c(N(`shrink-0 rounded px-1.5 py-0.5 text-[10px] font-medium`,n.builtIn?`bg-primary/10 text-primary`:`bg-muted text-muted-foreground`))]),a(`click`,P,function(...e){n.onscan?.apply(this,e)}),s(e,u),l()}u([`click`]);var ie=n(`<p class="py-8 text-center text-xs text-muted-foreground">Loading sources…</p>`),ae=n(`<p class="py-8 text-center text-xs text-destructive"> </p>`),oe=n(`<p class="py-8 text-center text-xs text-muted-foreground"> </p>`),se=n(`<div class="grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3"></div>`),ce=n(`<li><button type="button" class="flex w-full items-center justify-between rounded px-2 py-1 text-left text-xs transition-colors hover:bg-muted/60"><span class="truncate font-medium text-foreground"> </span> <span class="ml-2 shrink-0 text-muted-foreground"> </span></button></li>`),le=n(`<section class="rounded-lg border border-border bg-muted/20 p-3"><h2 class="text-xs font-medium text-muted-foreground">Recent scans</h2> <ul class="mt-2 space-y-1"></ul></section>`),ue=n(`<p class="text-xs text-destructive"> </p>`),de=n(`<div class="fixed inset-0 z-50 flex items-center justify-center bg-black/40 p-4"><div class="w-full max-w-md rounded-lg border border-border bg-background p-4 shadow-lg"><h2 class="text-sm font-semibold">Add custom source</h2> <p class="mt-0.5 text-xs text-muted-foreground">Paste an <code class="font-mono">https</code> Git URL. It persists across restarts.</p> <div class="mt-3 space-y-2"><label class="block text-xs"><span class="text-muted-foreground">Label</span> <input class="mt-1 h-8 w-full rounded-md border border-border bg-background px-2 text-sm" placeholder="My skills repo"/></label> <label class="block text-xs"><span class="text-muted-foreground">Git URL (https only)</span> <input class="mt-1 h-8 w-full rounded-md border border-border bg-background px-2 font-mono text-xs" placeholder="https://github.com/me/skills.git"/></label> <label class="block text-xs"><span class="text-muted-foreground">Description (optional)</span> <input class="mt-1 h-8 w-full rounded-md border border-border bg-background px-2 text-sm" placeholder="What kind of skills?"/></label> <!></div> <div class="mt-4 flex justify-end gap-2"><button type="button" class="h-8 rounded-md border border-border px-3 text-xs hover:bg-muted/50">Cancel</button> <button type="button" class="h-8 rounded-md bg-primary px-3 text-xs font-medium text-primary-foreground hover:bg-primary/90 disabled:opacity-50"> </button></div></div></div>`),fe=n(`<div class="flex h-full flex-col overflow-y-auto p-5"><header class="flex shrink-0 items-center gap-3 border-b border-border pb-4"><div class="min-w-0 flex-1"><h1 class="text-lg font-semibold">Discover skills</h1> <p class="mt-0.5 text-xs text-muted-foreground">Browse curated and custom skill repositories, then scan to install.</p></div> <button type="button" class="inline-flex h-8 shrink-0 items-center rounded-md border border-border px-3 text-xs font-medium transition-colors hover:bg-muted/50">Add source</button></header> <div class="mx-auto mt-4 w-full max-w-4xl flex-1 space-y-4"><div class="flex items-center gap-2"><input type="search" placeholder="Filter sources by name or description…" class="h-9 w-full rounded-md border border-border bg-background px-3 text-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring" aria-label="Filter sources"/></div> <!> <!></div></div> <!> <!>`,1);function K(n,c){r(c,!0);let u=ee(),g=h(()=>u?.()?.q?.trim()??``),v=y(``);w(()=>{m(v,d(g),!0)}),w(()=>{P()});let x=h(()=>[...L.builtIn.map(e=>({id:e.id,label:e.label,description:e.description,gitUrl:e.gitUrl,homepage:e.homepage,builtIn:!0})),...L.user.map(e=>({id:e.id,label:e.label,description:e.description,gitUrl:e.gitUrl,homepage:void 0,builtIn:!1}))]),T=h(()=>{let e=d(g).toLowerCase();return e?d(x).filter(t=>t.label.toLowerCase().includes(e)||t.description.toLowerCase().includes(e)):d(x)}),D=h(()=>{let e=[];for(let t of d(x)){let n=R(t.id);n&&e.push({id:t.id,label:t.label,summary:n})}return e.sort((e,t)=>(t.summary?.scannedAt??0)-(e.summary?.scannedAt??0)),e.slice(0,5)}),k=y(!1),j=y(``),N=y(``),z=y(``),B=y(null),V=y(!1);function H(e){let t=e.trim(),n=`/repository${t?`?q=${encodeURIComponent(t)}`:``}`;O(n,{replaceState:!0})}function U(){let e=d(v).trim(),t=e?`?q=${encodeURIComponent(e)}`:``;O(`/repository${t}`)}function W(e){O(`/repository/scan/${encodeURIComponent(e)}`)}function G(){m(k,!0),m(j,``),m(N,``),m(z,``),m(B,null)}async function ne(){let e=d(j).trim(),t=d(N).trim();if(!e||!t){m(B,`Label and Git URL are required.`);return}m(V,!0),m(B,null);try{await F({label:e,gitUrl:t,description:d(z).trim()||void 0})&&m(k,!1)}catch(e){m(B,e instanceof Error?e.message:String(e),!0)}finally{m(V,!1)}}let K=y(null),q=y(!1),J=y(!1);function pe(e,t){m(K,{id:e,label:t},!0),m(q,!0)}w(()=>{d(q)||m(K,null)});async function me(){let e=d(K);if(e){m(J,!0);try{await I(e.id)&&(m(q,!1),M(`Removed source ${e.label}.`))}catch(e){M(e instanceof Error?e.message:String(e))}finally{m(J,!1)}}}var Y=fe(),X=E(Y),Z=S(X),he=_(S(Z),2);t(Z);var ge=_(Z,2),Q=S(ge),$=S(Q);C($),t(Q);var _e=_(Q,2),ve=e=>{var t=ie();s(e,t)},ye=e=>{var t=ae(),n=f(t,!0);b(()=>i(n,L.error)),s(e,t)},be=e=>{var t=oe(),n=f(t);b(()=>i(n,`No sources match “${d(g)??``}”.`)),s(e,t)},xe=n=>{var r=se();e(r,21,()=>d(T),e=>e.id,(e,t)=>{{let n=h(()=>R(d(t).id)),r=h(()=>te(R(d(t).id))),i=h(()=>d(t).builtIn?void 0:()=>pe(d(t).id,d(t).label));re(e,{get label(){return d(t).label},get description(){return d(t).description},get gitUrl(){return d(t).gitUrl},get homepage(){return d(t).homepage},get builtIn(){return d(t).builtIn},get scanSummary(){return d(n)},get stale(){return d(r)},onscan:()=>W(d(t).id),get onremove(){return d(i)}})}}),t(r),s(n,r)};o(_e,e=>{L.loading?e(ve):L.error?e(ye,1):d(T).length===0?e(be,2):e(xe,-1)});var Se=_(_e,2),Ce=n=>{var r=le(),o=_(S(r),2);e(o,21,()=>d(D),e=>e.id,(e,n)=>{var r=ce(),o=S(r),c=S(o),l=f(c,!0),u=_(c,2),p=f(u);t(o),t(r),b(()=>{i(l,d(n).label),i(p,`${d(n).summary?.skillCount??0??``} skills`)}),a(`click`,o,()=>W(d(n).id)),s(e,r)}),t(o),t(r),s(n,r)};o(Se,e=>{d(D).length>0&&e(Ce)}),t(ge),t(X);var we=_(X,2),Te=e=>{var n=de(),r=S(n),c=_(S(r),4),l=S(c),u=_(S(l),2);C(u),t(l);var h=_(l,2),g=_(S(h),2);C(g),t(h);var v=_(h,2),y=_(S(v),2);C(y),t(v);var x=_(v,2),w=e=>{var t=ue(),n=f(t,!0);b(()=>i(n,d(B))),s(e,t)};o(x,e=>{d(B)&&e(w)}),t(c);var T=_(c,2),E=S(T),D=_(E,2),O=f(D,!0);t(T),t(r),t(n),b(()=>{D.disabled=d(V),i(O,d(V)?`Adding…`:`Add`)}),p(u,()=>d(j),e=>m(j,e)),p(g,()=>d(N),e=>m(N,e)),p(y,()=>d(z),e=>m(z,e)),a(`click`,E,()=>m(k,!1)),a(`click`,D,ne),s(e,n)};o(we,e=>{d(k)&&e(Te)});var Ee=_(we,2);{let e=h(()=>d(K)?`Remove ${d(K).label} from your Discover feed? Installed skills stay on disk.`:``);A(Ee,{title:`Remove custom source`,get description(){return d(e)},confirmLabel:`Remove`,get busy(){return d(J)},onConfirm:()=>void me(),get open(){return d(q)},set open(e){m(q,e,!0)}})}a(`click`,he,G),a(`input`,$,()=>H(d(v))),a(`keydown`,$,e=>{e.key===`Enter`&&U()}),p($,()=>d(v),e=>m(v,e)),s(n,Y),l()}u([`click`,`input`,`keydown`]);export{K as default};
1
+ import{A as e,At as t,B as n,Ct as r,F as i,G as a,N as o,R as s,S as c,St as l,W as u,X as d,ct as f,d as p,ft as m,gt as h,kt as g,lt as _,m as v,mt as y,nt as b,o as x,ot as S,p as C,rt as w,s as T,st as E,x as D}from"./CmCJ0SKP.js";import{t as O}from"./JcDjicYT.js";import"./xihTtKlq.js";import"./BZ2Jwl6O.js";import{t as k}from"./BkEnd9_Z.js";import{i as ee}from"./CqzSRtkf.js";import{n as A,t as j}from"./Dl8eQ129.js";import{n as M,s as N}from"./CNPsST_i.js";import{a as P,i as F,n as te,o as I,s as L,t as R}from"./D-Jy42mM.js";var z=new Set([`$$slots`,`$$events`,`$$legacy`]);function B(e,t){let n=x(t,z),r=[[`path`,{d:`M15 3h6v6`}],[`path`,{d:`M10 14 21 3`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`}]];k(e,T({name:`external-link`},()=>n,{get iconNode(){return r}}))}var V=n(`<span class="text-amber-600 dark:text-amber-400">stale · rescan for latest</span>`),H=n(`<span> </span> <span class="font-mono"> </span> <!>`,1),U=n(`<span class="italic">Not scanned yet</span>`),W=n(`<a target="_blank" rel="noreferrer noopener" class="inline-flex h-7 items-center gap-1 rounded-md border border-border px-2 text-[11px] text-muted-foreground transition-colors hover:bg-muted/50"><!> Home</a>`),G=n(`<button type="button" class="ml-auto inline-flex h-7 items-center gap-1 rounded-md px-2 text-[11px] text-muted-foreground transition-colors hover:bg-destructive/10 hover:text-destructive"><!></button>`),ne=n(`<article class="flex h-full flex-col gap-2 rounded-lg border border-border bg-card p-3 text-left transition-colors hover:border-primary/40"><header class="flex items-start gap-2"><div class="min-w-0 flex-1"><div class="flex items-center gap-1.5"><h3 class="truncate text-sm font-medium text-foreground"> </h3> <span> </span></div> <p class="mt-0.5 line-clamp-2 text-[11px] leading-4 text-muted-foreground"> </p></div></header> <dl class="mt-auto flex flex-wrap items-center gap-x-3 gap-y-0.5 text-[11px] text-muted-foreground"><!></dl> <footer class="flex shrink-0 items-center gap-2"><button type="button" class="inline-flex h-7 items-center rounded-md bg-primary px-2.5 text-[11px] font-medium text-primary-foreground transition-colors hover:bg-primary/90">Scan</button> <!> <!></footer></article>`);function re(e,n){r(n,!0);var u=ne(),d=S(u),p=S(d),m=S(p),h=S(m),y=f(h,!0),x=_(h,2),C=f(x,!0);t(m);var w=_(m,2),T=f(w,!0);t(p),t(d);var O=_(d,2),k=S(O),ee=e=>{var t=H(),r=E(t),a=f(r),c=_(r,2),l=f(c,!0),u=_(c,2),d=e=>{var t=V();s(e,t)};o(u,e=>{n.stale&&e(d)}),b(()=>{i(a,`${n.scanSummary.skillCount??``} skills`),i(l,n.scanSummary.commitPrefix)}),s(e,t)},A=e=>{var t=U();s(e,t)};o(k,e=>{n.scanSummary?e(ee):e(A,-1)}),t(O);var M=_(O,2),P=S(M),F=_(P,2),te=e=>{var r=W();B(S(r),{class:`h-3 w-3`}),g(),t(r),b(()=>{v(r,`href`,n.homepage),v(r,`aria-label`,`Open ${n.label} homepage`)}),s(e,r)};o(F,e=>{n.homepage&&e(te)});var I=_(F,2),L=e=>{var r=G(),i=S(r);j(i,{class:`h-3.5 w-3.5`}),t(r),b(()=>v(r,`aria-label`,`Remove ${n.label}`)),a(`click`,r,function(...e){n.onremove?.apply(this,e)}),s(e,r)};o(I,e=>{!n.builtIn&&n.onremove&&e(L)}),t(M),t(u),b(e=>{i(y,n.label),D(x,1,e),i(C,n.builtIn?`Built-in`:`Custom`),i(T,n.description||n.gitUrl)},[()=>c(N(`shrink-0 rounded px-1.5 py-0.5 text-[10px] font-medium`,n.builtIn?`bg-primary/10 text-primary`:`bg-muted text-muted-foreground`))]),a(`click`,P,function(...e){n.onscan?.apply(this,e)}),s(e,u),l()}u([`click`]);var ie=n(`<p class="py-8 text-center text-xs text-muted-foreground">Loading sources…</p>`),ae=n(`<p class="py-8 text-center text-xs text-destructive"> </p>`),oe=n(`<p class="py-8 text-center text-xs text-muted-foreground"> </p>`),se=n(`<div class="grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3"></div>`),ce=n(`<li><button type="button" class="flex w-full items-center justify-between rounded px-2 py-1 text-left text-xs transition-colors hover:bg-muted/60"><span class="truncate font-medium text-foreground"> </span> <span class="ml-2 shrink-0 text-muted-foreground"> </span></button></li>`),le=n(`<section class="rounded-lg border border-border bg-muted/20 p-3"><h2 class="text-xs font-medium text-muted-foreground">Recent scans</h2> <ul class="mt-2 space-y-1"></ul></section>`),ue=n(`<p class="text-xs text-destructive"> </p>`),de=n(`<div class="fixed inset-0 z-50 flex items-center justify-center bg-black/40 p-4"><div class="w-full max-w-md rounded-lg border border-border bg-background p-4 shadow-lg"><h2 class="text-sm font-semibold">Add custom source</h2> <p class="mt-0.5 text-xs text-muted-foreground">Paste an <code class="font-mono">https</code> Git URL. It persists across restarts.</p> <div class="mt-3 space-y-2"><label class="block text-xs"><span class="text-muted-foreground">Label</span> <input class="mt-1 h-8 w-full rounded-md border border-border bg-background px-2 text-sm" placeholder="My skills repo"/></label> <label class="block text-xs"><span class="text-muted-foreground">Git URL (https only)</span> <input class="mt-1 h-8 w-full rounded-md border border-border bg-background px-2 font-mono text-xs" placeholder="https://github.com/me/skills.git"/></label> <label class="block text-xs"><span class="text-muted-foreground">Description (optional)</span> <input class="mt-1 h-8 w-full rounded-md border border-border bg-background px-2 text-sm" placeholder="What kind of skills?"/></label> <!></div> <div class="mt-4 flex justify-end gap-2"><button type="button" class="h-8 rounded-md border border-border px-3 text-xs hover:bg-muted/50">Cancel</button> <button type="button" class="h-8 rounded-md bg-primary px-3 text-xs font-medium text-primary-foreground hover:bg-primary/90 disabled:opacity-50"> </button></div></div></div>`),fe=n(`<div class="flex h-full flex-col overflow-y-auto p-5"><header class="flex shrink-0 items-center gap-3 border-b border-border pb-4"><div class="min-w-0 flex-1"><h1 class="text-lg font-semibold">Discover skills</h1> <p class="mt-0.5 text-xs text-muted-foreground">Browse curated and custom skill repositories, then scan to install.</p></div> <button type="button" class="inline-flex h-8 shrink-0 items-center rounded-md border border-border px-3 text-xs font-medium transition-colors hover:bg-muted/50">Add source</button></header> <div class="mx-auto mt-4 w-full max-w-4xl flex-1 space-y-4"><div class="flex items-center gap-2"><input type="search" placeholder="Filter sources by name or description…" class="h-9 w-full rounded-md border border-border bg-background px-3 text-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring" aria-label="Filter sources"/></div> <!> <!></div></div> <!> <!>`,1);function K(n,c){r(c,!0);let u=ee(),g=h(()=>u?.()?.q?.trim()??``),v=y(``);w(()=>{m(v,d(g),!0)}),w(()=>{P()});let x=h(()=>[...L.builtIn.map(e=>({id:e.id,label:e.label,description:e.description,gitUrl:e.gitUrl,homepage:e.homepage,builtIn:!0})),...L.user.map(e=>({id:e.id,label:e.label,description:e.description,gitUrl:e.gitUrl,homepage:void 0,builtIn:!1}))]),T=h(()=>{let e=d(g).toLowerCase();return e?d(x).filter(t=>t.label.toLowerCase().includes(e)||t.description.toLowerCase().includes(e)):d(x)}),D=h(()=>{let e=[];for(let t of d(x)){let n=R(t.id);n&&e.push({id:t.id,label:t.label,summary:n})}return e.sort((e,t)=>(t.summary?.scannedAt??0)-(e.summary?.scannedAt??0)),e.slice(0,5)}),k=y(!1),j=y(``),N=y(``),z=y(``),B=y(null),V=y(!1);function H(e){let t=e.trim(),n=`/repository${t?`?q=${encodeURIComponent(t)}`:``}`;O(n,{replaceState:!0})}function U(){let e=d(v).trim(),t=e?`?q=${encodeURIComponent(e)}`:``;O(`/repository${t}`)}function W(e){O(`/repository/scan/${encodeURIComponent(e)}`)}function G(){m(k,!0),m(j,``),m(N,``),m(z,``),m(B,null)}async function ne(){let e=d(j).trim(),t=d(N).trim();if(!e||!t){m(B,`Label and Git URL are required.`);return}m(V,!0),m(B,null);try{await F({label:e,gitUrl:t,description:d(z).trim()||void 0})&&m(k,!1)}catch(e){m(B,e instanceof Error?e.message:String(e),!0)}finally{m(V,!1)}}let K=y(null),q=y(!1),J=y(!1);function pe(e,t){m(K,{id:e,label:t},!0),m(q,!0)}w(()=>{d(q)||m(K,null)});async function me(){let e=d(K);if(e){m(J,!0);try{await I(e.id)&&(m(q,!1),M(`Removed source ${e.label}.`))}catch(e){M(e instanceof Error?e.message:String(e))}finally{m(J,!1)}}}var Y=fe(),X=E(Y),Z=S(X),he=_(S(Z),2);t(Z);var ge=_(Z,2),Q=S(ge),$=S(Q);C($),t(Q);var _e=_(Q,2),ve=e=>{var t=ie();s(e,t)},ye=e=>{var t=ae(),n=f(t,!0);b(()=>i(n,L.error)),s(e,t)},be=e=>{var t=oe(),n=f(t);b(()=>i(n,`No sources match “${d(g)??``}”.`)),s(e,t)},xe=n=>{var r=se();e(r,21,()=>d(T),e=>e.id,(e,t)=>{{let n=h(()=>R(d(t).id)),r=h(()=>te(R(d(t).id))),i=h(()=>d(t).builtIn?void 0:()=>pe(d(t).id,d(t).label));re(e,{get label(){return d(t).label},get description(){return d(t).description},get gitUrl(){return d(t).gitUrl},get homepage(){return d(t).homepage},get builtIn(){return d(t).builtIn},get scanSummary(){return d(n)},get stale(){return d(r)},onscan:()=>W(d(t).id),get onremove(){return d(i)}})}}),t(r),s(n,r)};o(_e,e=>{L.loading?e(ve):L.error?e(ye,1):d(T).length===0?e(be,2):e(xe,-1)});var Se=_(_e,2),Ce=n=>{var r=le(),o=_(S(r),2);e(o,21,()=>d(D),e=>e.id,(e,n)=>{var r=ce(),o=S(r),c=S(o),l=f(c,!0),u=_(c,2),p=f(u);t(o),t(r),b(()=>{i(l,d(n).label),i(p,`${d(n).summary?.skillCount??0??``} skills`)}),a(`click`,o,()=>W(d(n).id)),s(e,r)}),t(o),t(r),s(n,r)};o(Se,e=>{d(D).length>0&&e(Ce)}),t(ge),t(X);var we=_(X,2),Te=e=>{var n=de(),r=S(n),c=_(S(r),4),l=S(c),u=_(S(l),2);C(u),t(l);var h=_(l,2),g=_(S(h),2);C(g),t(h);var v=_(h,2),y=_(S(v),2);C(y),t(v);var x=_(v,2),w=e=>{var t=ue(),n=f(t,!0);b(()=>i(n,d(B))),s(e,t)};o(x,e=>{d(B)&&e(w)}),t(c);var T=_(c,2),E=S(T),D=_(E,2),O=f(D,!0);t(T),t(r),t(n),b(()=>{D.disabled=d(V),i(O,d(V)?`Adding…`:`Add`)}),p(u,()=>d(j),e=>m(j,e)),p(g,()=>d(N),e=>m(N,e)),p(y,()=>d(z),e=>m(z,e)),a(`click`,E,()=>m(k,!1)),a(`click`,D,ne),s(e,n)};o(we,e=>{d(k)&&e(Te)});var Ee=_(we,2);{let e=h(()=>d(K)?`Remove ${d(K).label} from your Discover feed? Installed skills stay on disk.`:``);A(Ee,{title:`Remove custom source`,get description(){return d(e)},confirmLabel:`Remove`,get busy(){return d(J)},onConfirm:()=>void me(),get open(){return d(q)},set open(e){m(q,e,!0)}})}a(`click`,he,G),a(`input`,$,()=>H(d(v))),a(`keydown`,$,e=>{e.key===`Enter`&&U()}),p($,()=>d(v),e=>m(v,e)),s(n,Y),l()}u([`click`,`input`,`keydown`]);export{K as default};
@@ -1 +1 @@
1
- import{ut as e}from"./CmCJ0SKP.js";import{_ as t,a as n,o as r,s as i,t as a,y as o}from"./DWcQbrnv.js";function s(e){return e?.code===`UNAVAILABLE`&&e.message.includes(`session expired`)}function c(e){return e instanceof t?{message:e.message,code:String(e.code)}:{message:e instanceof Error?e.message:String(e)}}function l(){let e=a(n);return{issue:()=>({isCurrent:e.issue().isCurrent})}}async function u(e,t){let n=l().issue();try{let r=await i().repository.scan({source:e,ref:t});return n.isCurrent()?{scan:r,error:null}:{scan:null,error:null}}catch(e){return n.isCurrent()?{scan:null,error:c(e)}:{scan:null,error:null}}}async function d(e,t){let n=l().issue();try{let r=await i().repository.preview({sessionId:e,skillId:t});return n.isCurrent()?{preview:r,error:null}:{preview:null,error:null}}catch(e){return n.isCurrent()?{preview:null,error:c(e)}:{preview:null,error:null}}}async function f(e){let t=l().issue();try{let n=await i().repository.install(e);return t.isCurrent()?{result:n,error:null}:{result:null,error:null}}catch(e){return t.isCurrent()?{result:null,error:c(e)}:{result:null,error:null}}}function p(e){let t=[];for(let n of e)if(n.kind===`directory`&&n.available)for(let e of n.providers)e.writable&&t.push({target:{workspaceId:n.id,providerId:e.id},workspace:n,provider:e,label:`${n.label} / ${e.label}`});return t}function m(e){if(e.kind===`directory`&&e.providers.length>0){let t=e.providers[0];return t?`/workspaces/${encodeURIComponent(e.id)}/${encodeURIComponent(t.id)}`:`/workspaces`}return`/workspaces`}var h=a(n),g=a(n),_=e({workspaces:[],activeId:`~`,loading:!0,error:null});async function v(){let e=h.issue(),t=r();if(!t)return e.isLatest()&&(_.loading=!1),`failed`;_.loading=!0,_.error=null;try{let{workspaces:n}=await t.workspace.list({});return e.isCurrent()?(_.workspaces=n,_.activeId=n.find(e=>e.active)?.id??`~`,`loaded`):`superseded`}catch(t){return e.isCurrent()?(_.error=t instanceof Error?t.message:String(t),`failed`):`superseded`}finally{e.isLatest()&&(_.loading=!1)}}async function y(e,t){let n=g.issue(),r;try{({workspace:r}=await i().workspace.add({path:e,label:t}))}catch(e){if(!n.isCurrent())return null;throw e}return n.isCurrent()?(await v(),r):(await v(),null)}async function b(e){let t=o.parse(e),n=g.issue(),r;try{({activeId:r}=await i().workspace.remove({id:t}))}catch(e){if(!n.isCurrent())return!1;throw e}return n.isCurrent()?(_.activeId=r,await v(),n.isCurrent()):!1}function x(){return p(_.workspaces)}export{x as a,s as c,_ as i,d as l,v as n,m as o,b as r,f as s,y as t,u};
1
+ import{ut as e}from"./CmCJ0SKP.js";import{_ as t,a as n,o as r,s as i,t as a,y as o}from"./BoMQFGOq.js";function s(e){return e?.code===`UNAVAILABLE`&&e.message.includes(`session expired`)}function c(e){return e instanceof t?{message:e.message,code:String(e.code)}:{message:e instanceof Error?e.message:String(e)}}function l(){let e=a(n);return{issue:()=>({isCurrent:e.issue().isCurrent})}}async function u(e,t){let n=l().issue();try{let r=await i().repository.scan({source:e,ref:t});return n.isCurrent()?{scan:r,error:null}:{scan:null,error:null}}catch(e){return n.isCurrent()?{scan:null,error:c(e)}:{scan:null,error:null}}}async function d(e,t){let n=l().issue();try{let r=await i().repository.preview({sessionId:e,skillId:t});return n.isCurrent()?{preview:r,error:null}:{preview:null,error:null}}catch(e){return n.isCurrent()?{preview:null,error:c(e)}:{preview:null,error:null}}}async function f(e){let t=l().issue();try{let n=await i().repository.install(e);return t.isCurrent()?{result:n,error:null}:{result:null,error:null}}catch(e){return t.isCurrent()?{result:null,error:c(e)}:{result:null,error:null}}}function p(e){let t=[];for(let n of e)if(n.kind===`directory`&&n.available)for(let e of n.providers)e.writable&&t.push({target:{workspaceId:n.id,providerId:e.id},workspace:n,provider:e,label:`${n.label} / ${e.label}`});return t}function m(e){if(e.kind===`directory`&&e.providers.length>0){let t=e.providers[0];return t?`/workspaces/${encodeURIComponent(e.id)}/${encodeURIComponent(t.id)}`:`/workspaces`}return`/workspaces`}var h=a(n),g=a(n),_=e({workspaces:[],activeId:`~`,loading:!0,error:null});async function v(){let e=h.issue(),t=r();if(!t)return e.isLatest()&&(_.loading=!1),`failed`;_.loading=!0,_.error=null;try{let{workspaces:n}=await t.workspace.list({});return e.isCurrent()?(_.workspaces=n,_.activeId=n.find(e=>e.active)?.id??`~`,`loaded`):`superseded`}catch(t){return e.isCurrent()?(_.error=t instanceof Error?t.message:String(t),`failed`):`superseded`}finally{e.isLatest()&&(_.loading=!1)}}async function y(e,t){let n=g.issue(),r;try{({workspace:r}=await i().workspace.add({path:e,label:t}))}catch(e){if(!n.isCurrent())return null;throw e}return n.isCurrent()?(await v(),r):(await v(),null)}async function b(e){let t=o.parse(e),n=g.issue(),r;try{({activeId:r}=await i().workspace.remove({id:t}))}catch(e){if(!n.isCurrent())return!1;throw e}return n.isCurrent()?(_.activeId=r,await v(),n.isCurrent()):!1}function x(){return p(_.workspaces)}export{x as a,s as c,_ as i,d as l,v as n,m as o,b as r,f as s,y as t,u};