skill-creator 2.4.1 → 2.5.0
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.
- package/dist/daemon.js +4 -0
- package/dist/daemon.js.map +2 -2
- package/dist/package.json +1 -1
- package/dist/webui/_app/immutable/assets/{0.DSuWfqBb.css → 0.DLmCZ2fP.css} +1 -1
- package/dist/webui/_app/immutable/chunks/{Cbsk109T.js → B8aGNSaH.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{BehT3C1z.js → BDMeqoYB.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{DzSJuxmI.js → BTMBuftG.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{BGher0CO.js → Ba9GVGQ5.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{DXjm_vE5.js → BchFBl6r.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{KM5hQu2t.js → BhCD2hsN.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{C1gdd-Qo.js → C_mgfJl-.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{BwEHBMTF.js → ClW_LCBS.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{CjZfvtzv.js → Cy5ABld-.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{QmXxFt1D.js → CzkhJhvt.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{CHfZ3gHY.js → DBNjJ5Iw.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{ryZsHFfK.js → DF_TIB7n.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{aUJoMDp6.js → DH8yd93-.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{BLdcUAZa.js → DTzqg7c9.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{rTO-doKC.js → DVv6BdWV.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{DP_8P0mo.js → DYbgoqwH.js} +1 -1
- package/dist/webui/_app/immutable/chunks/DjZ7hdjX.js +1 -0
- package/dist/webui/_app/immutable/chunks/{CIyEiZkz.js → DvWG9eQi.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{ChB3s6Q9.js → DzfSSVEB.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{yX3qp0yo.js → GHFnehdP.js} +1 -1
- package/dist/webui/_app/immutable/chunks/eFUKcYMv.js +1 -0
- package/dist/webui/_app/immutable/chunks/{BBqlAyUm.js → pd7EK5wP.js} +1 -1
- package/dist/webui/_app/immutable/chunks/{CbVFrj5k.js → xAjQV7BZ.js} +1 -1
- package/dist/webui/_app/immutable/entry/{app.BbDTsu6I.js → app.DlQ53I3_.js} +2 -2
- package/dist/webui/_app/immutable/entry/start.CNmXm9ox.js +1 -0
- package/dist/webui/_app/immutable/nodes/{0.QaOeKSa7.js → 0.BXeEkneG.js} +3 -3
- package/dist/webui/_app/immutable/nodes/{1.D-EmaRZH.js → 1.DzYWdh98.js} +1 -1
- package/dist/webui/_app/immutable/nodes/{2.CGLbUjuZ.js → 2.Dl1DQV0d.js} +1 -1
- package/dist/webui/_app/version.json +1 -1
- package/dist/webui/index.html +18 -18
- package/package.json +5 -5
- package/dist/webui/_app/immutable/chunks/CAmktO2F.js +0 -1
- package/dist/webui/_app/immutable/chunks/CZQgUTNL.js +0 -1
- package/dist/webui/_app/immutable/entry/start.DlPtwiRy.js +0 -1
|
@@ -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,gt as p,kt as m,lt as h,m as g,nt as _,ot as v,rt as y,st as b,z as x}from"./CmCJ0SKP.js";import{t as S}from"./
|
|
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,gt as p,kt as m,lt as h,m as g,nt as _,ot as v,rt as y,st as b,z as x}from"./CmCJ0SKP.js";import{t as S}from"./DjZ7hdjX.js";import"./xihTtKlq.js";import"./eFUKcYMv.js";import{t as C}from"./BT2vrlul.js";import{n as w,t as T}from"./DnPeA-9c.js";import{t as E}from"./CpRvgjpe.js";import{t as D}from"./BIfnT_mK.js";import{t as O}from"./Bs27XW8_.js";import{o as k,r as A,s as j}from"./DBNjJ5Iw.js";import{t as M}from"./Bl0jjuyR.js";import{t as N}from"./CI1OXbBG.js";var P=null,F=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 wiki scopes</p> <p class="mt-1 break-words text-xs text-destructive/90"> </p></div> <!></div>`),I=n(`<div class="space-y-3" aria-label="Loading wiki scopes"><div class="h-16 animate-pulse rounded-lg border border-border bg-muted/50"></div> <div class="h-16 animate-pulse rounded-lg border border-border bg-muted/50"></div></div>`),L=n(`<div class="rounded-lg border border-dashed border-border p-8 text-center"><!> <p class="mt-3 text-sm font-medium">No wiki scopes yet</p> <p class="mt-1 text-xs text-muted-foreground">The global wiki appears once the daemon is reachable.</p></div>`),R=n(`<p class="flex items-center gap-2 text-xs text-muted-foreground" role="status"><!> Updating…</p>`),z=n(`<span class="block truncate text-xs text-muted-foreground"> <!></span>`),B=n(`<span class="block truncate text-xs text-muted-foreground/80">Not initialized — opens empty, first fragment creates it</span>`),V=n(`<li><button class="flex min-h-11 w-full items-center gap-2.5 px-3 py-2.5 text-left transition-colors hover:bg-muted/50"><!> <span class="min-w-0 flex-1"><span class="flex items-center gap-2"><span class="truncate text-sm font-medium"> </span> <!></span> <!></span> <!></button></li>`),H=n(`<!> <ul class="divide-y divide-border rounded-lg border border-border"></ul>`,1),U=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">Wiki</h1> <p class="mt-0.5 text-xs text-muted-foreground">Fragment insights collected per wiki — global notes and workspace-local knowledge.</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-4"><!></div></div>`);function W(n,u){r(u,!0);function W(e){return`/wiki/${e.id===`~`?`%7E`:e.id}`}function G(e){P=e.id,S(W(e))}async function K(){await A()}y(()=>{A()}),y(()=>()=>k()),y(()=>{let e=P;e&&(P=null,document.querySelector(`button[data-scope-id="${CSS.escape(e)}"]`)?.focus())});var q=U(),J=v(q),Y=h(v(J),2),X=v(Y);w(X,{variant:`ghost`,size:`icon`,class:`h-9 w-9`,title:`Refresh wiki scopes`,"aria-label":`Refresh wiki scopes`,get disabled(){return j.loading},onclick:()=>void K(),children:(e,t)=>{var n=x(),r=b(n),i=e=>{T(e,{class:`h-4 w-4 animate-spin`})},a=e=>{D(e,{class:`h-4 w-4`})};o(r,e=>{j.loading?e(i):e(a,-1)}),s(e,n)},$$slots:{default:!0}}),t(Y),t(J);var Z=h(J,2),Q=v(Z),$=e=>{var n=F(),r=v(n);O(r,{class:`mt-0.5 h-4 w-4 shrink-0 text-destructive`});var a=h(r,2),o=h(v(a),2),c=f(o,!0);t(a);var u=h(a,2);w(u,{variant:`outline`,size:`sm`,onclick:()=>void K(),children:(e,t)=>{m();var n=l(`Retry`);s(e,n)},$$slots:{default:!0}}),t(n),_(()=>i(c,j.error)),s(e,n)},ee=e=>{var t=I();s(e,t)},te=e=>{var n=L(),r=v(n);C(r,{class:`mx-auto h-8 w-8 text-muted-foreground`}),m(4),t(n),s(e,n)},ne=n=>{var r=H(),c=b(r),u=e=>{var n=R(),r=v(n);T(r,{class:`h-3.5 w-3.5 animate-spin`}),m(),t(n),s(e,n)};o(c,e=>{j.loading&&e(u)});var y=h(c,2);e(y,21,()=>j.scopes,e=>e.id,(e,n)=>{var r=V(),c=v(r),u=v(c),y=e=>{E(e,{class:`h-4 w-4 shrink-0 text-primary`})},b=e=>{N(e,{class:`h-4 w-4 shrink-0 text-muted-foreground`})};o(u,e=>{d(n).id===`~`?e(y):e(b,-1)});var x=h(u,2),S=v(x),C=v(S),w=f(C,!0),T=h(C,2),D=e=>{M(e,{variant:`secondary`,class:`shrink-0 text-xs`,children:(e,t)=>{m();var n=l(`~ global`);s(e,n)},$$slots:{default:!0}})};o(T,e=>{d(n).id===`~`&&e(D)}),t(S);var O=h(S,2),k=e=>{var r=z(),a=v(r),c=h(a),u=e=>{var t=l();_(e=>i(t,`· updated ${e??``}`),[()=>d(n).lastUpdated.slice(0,10)]),s(e,t)};o(c,e=>{d(n).lastUpdated&&e(u)}),t(r),_(()=>i(a,`${d(n).patternCount??``}
|
|
2
2
|
${d(n).patternCount===1?`fragment`:`fragments`} captured`)),s(e,r)},A=e=>{var t=B();s(e,t)};o(O,e=>{d(n).exists?e(k):e(A,-1)}),t(x);var j=h(x,2);{let e=p(()=>d(n).exists?`secondary`:`outline`);M(j,{get variant(){return d(e)},class:`shrink-0 tabular-nums`,children:(e,t)=>{m();var r=l();_(()=>i(r,d(n).patternCount)),s(e,r)},$$slots:{default:!0}})}t(c),t(r),_(()=>{g(c,`data-scope-id`,d(n).id),i(w,d(n).label)}),a(`click`,c,()=>G(d(n))),s(e,r)}),t(y),s(n,r)};o(Q,e=>{j.error?e($):j.loading&&j.scopes.length===0?e(ee,1):j.scopes.length===0?e(te,2):e(ne,-1)}),t(Z),t(q),s(n,q),c()}u([`click`]);export{W as default};
|
|
@@ -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"./
|
|
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"./DjZ7hdjX.js";import"./xihTtKlq.js";import"./eFUKcYMv.js";import{t as C}from"./BkEnd9_Z.js";import"./B8aGNSaH.js";import{o as w}from"./BTMBuftG.js";import{t as T}from"./DApmS1g_.js";import{t as E}from"./HopcQwhZ.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{At as e,B as t,Ct as n,F as r,N as i,R as a,St as o,U as s,X as c,_t as l,a as u,ct as d,d as f,f as p,ft as m,gt as h,kt as g,l as _,lt as v,mt as y,nt as b,o as x,ot as S}from"./CmCJ0SKP.js";import"./xihTtKlq.js";import{s as C}from"./
|
|
1
|
+
import{At as e,B as t,Ct as n,F as r,N as i,R as a,St as o,U as s,X as c,_t as l,a as u,ct as d,d as f,f as p,ft as m,gt as h,kt as g,l as _,lt as v,mt as y,nt as b,o as x,ot as S}from"./CmCJ0SKP.js";import"./xihTtKlq.js";import{s as C}from"./pd7EK5wP.js";import{n as w}from"./1aUphu7Y.js";import{i as T,n as E}from"./DnPeA-9c.js";var D=new Set([`$$slots`,`$$events`,`$$legacy`,`ref`,`value`,`class`,`data-slot`]),O=t(`<textarea></textarea>`);function k(e,t){n(t,!0);let r=u(t,`ref`,15,null),i=u(t,`value`,15),s=u(t,`data-slot`,3,`textarea`),c=x(t,D);var d=O();l(d),p(d,e=>({"data-slot":s(),class:e,...c}),[()=>T(`border-input bg-input/20 dark:bg-input/30 focus-visible:border-ring focus-visible:ring-ring/30 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 resize-none rounded-md border px-2 py-2 text-sm transition-colors focus-visible:ring-2 aria-invalid:ring-2 md:text-xs/relaxed placeholder:text-muted-foreground flex field-sizing-content min-h-16 w-full outline-none disabled:cursor-not-allowed disabled:opacity-50`,t.class)]),_(d,e=>r(e),()=>r()),f(d,i),a(e,d),o()}var A=t(`<div class="mt-2 flex justify-end gap-1.5"><!> <!></div>`),j=t(`<div class="rounded-lg border border-amber-500/40 bg-amber-500/5 px-3 py-2.5 text-xs" role="group" aria-label="Mutation proposal"><div class="mb-1.5 flex items-center gap-1.5 font-medium text-amber-600 dark:text-amber-400"> </div> <div class="font-mono text-[11px]"> </div> <pre class="mt-1 max-h-32 overflow-auto rounded bg-muted/40 p-1.5 font-mono text-[10px] whitespace-pre-wrap"> </pre> <!></div>`);function M(t,l){n(l,!0);let u=y(!1),f=y(null),p=h(()=>c(f)??l.status),_=h(()=>{try{return JSON.stringify(l.input,null,2)}catch{return String(l.input)}});async function x(e){m(u,!0);try{let t=C(),n=e===`approve`?await t.agent.proposals.approve({proposalId:l.proposalId}):await t.agent.proposals.reject({proposalId:l.proposalId});m(f,n.proposal.status,!0),w(e===`approve`?c(p)===`executed`?`Proposal executed: ${l.capability}`:`Proposal failed: ${l.capability}`:`Proposal rejected: ${l.capability}`)}catch(e){w(e instanceof Error?e.message:String(e))}finally{m(u,!1)}}var T=j(),D=S(T),O=d(D),k=v(D,2),M=d(k,!0),N=v(k,2),P=d(N,!0),F=v(N,2),I=t=>{var n=A(),r=S(n);E(r,{size:`sm`,variant:`outline`,get disabled(){return c(u)},onclick:()=>void x(`reject`),children:(e,t)=>{g();var n=s(`Reject`);a(e,n)},$$slots:{default:!0}});var i=v(r,2);E(i,{size:`sm`,get disabled(){return c(u)},onclick:()=>void x(`approve`),children:(e,t)=>{g();var n=s(`Approve`);a(e,n)},$$slots:{default:!0}}),e(n),a(t,n)};i(F,e=>{c(p)===`pending`&&e(I)}),e(T),b(()=>{r(O,`Proposal — ${c(p)??``}`),r(M,l.capability),r(P,c(_))}),a(t,T),o()}export{k as n,M as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{X as e,ft as t,mt as n,o as r,s as i,ut as a}from"./CmCJ0SKP.js";import"./xihTtKlq.js";import{t as o}from"./BkEnd9_Z.js";import{n as s,r as c,s as l}from"./
|
|
1
|
+
import{X as e,ft as t,mt as n,o as r,s as i,ut as a}from"./CmCJ0SKP.js";import"./xihTtKlq.js";import{t as o}from"./BkEnd9_Z.js";import{n as s,r as c,s as l}from"./DF_TIB7n.js";var u=[`general`,`model`,`agent`,`sessions`];function d(e=`general`){l(`settings.section`,{section:e})}var f=n(a(h())),p=n(a(s().sidebarCollapsed)),m=null;function h(){return typeof document>`u`?`system`:s().theme}function g(){return m?.matches??!1}function _(){if(typeof document>`u`)return;let t=e(f)===`dark`||e(f)===`system`&&g();document.documentElement.classList.toggle(`dark`,t)}function v(){typeof matchMedia>`u`||m!==null||(m=matchMedia(`(prefers-color-scheme: dark)`),m.addEventListener(`change`,()=>{e(f)===`system`&&_()}))}v(),_();function y(){return e(f)}function b(){return e(p)}function x(e){t(f,e,!0),c({theme:e}),_()}function S(){t(p,!e(p)),c({sidebarCollapsed:e(p)})}var C=new Set([`$$slots`,`$$events`,`$$legacy`]);function w(e,t){let n=r(t,C),a=[[`path`,{d:`M12 8V4H8`}],[`rect`,{width:`16`,height:`12`,x:`4`,y:`8`,rx:`2`}],[`path`,{d:`M2 14h2`}],[`path`,{d:`M20 14h2`}],[`path`,{d:`M15 13v2`}],[`path`,{d:`M9 13v2`}]];o(e,i({name:`bot`},()=>n,{get iconNode(){return a}}))}function T(e){let t=0;for(let n of e)t=(t*31+n.charCodeAt(0))%360;return t}function E(e){return`hsl(${T(e)} 55% 45%)`}var D=`sc-letter-avatar`;function O(e){return e.includes(D)}function k(e,t){return e.iconSuppressed===!0?null:e.icon??t?.icon??null}function A(e,t){return e.iconLetter!==void 0&&e.iconLetter.length>0?e.iconLetter:(t||e.provider).slice(0,1).toUpperCase()}function j(e){return e.iconColor??E(e.provider)}var M={svg:`image/svg+xml`,png:`image/png`,webp:`image/webp`};function N(e,t){let n=e.indexOf(`,`);return!e.startsWith(`data:`)||n<0?null:`data:${t};base64,${e.slice(n+1)}`}var P=new Set([`$$slots`,`$$events`,`$$legacy`]);function F(e,t){let n=r(t,P),a=[[`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`}],[`path`,{d:`m15 5 4 4`}]];o(e,i({name:`pencil`},()=>n,{get iconNode(){return a}}))}export{O as a,A as c,b as d,y as f,d as g,u as h,E as i,N as l,S as m,M as n,k as o,x as p,T as r,j as s,F as t,w as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ut as e}from"./CmCJ0SKP.js";import{a as t,o as n,s as r,t as i}from"./
|
|
1
|
+
import{ut as e}from"./CmCJ0SKP.js";import{a as t,o as n,s as r,t as i}from"./pd7EK5wP.js";var a=i(t),o=i(t),s=i(t),c=e({scope:`~`,patterns:[],loading:!1,error:null});async function l(e){let t=a.issue(),r=n();if(!r)return t.isLatest()&&(c.loading=!1),c.error=`The Skill Creator daemon is not connected.`,`failed`;c.scope=e,c.loading=!0,c.error=null;try{let{patterns:n}=await r.wiki.list({scope:e});return t.isCurrent()?(c.patterns=n,`loaded`):`superseded`}catch(e){return t.isCurrent()?(c.error=e instanceof Error?e.message:String(e),`failed`):`superseded`}finally{t.isLatest()&&(c.loading=!1)}}async function u(e,t){let n=o.issue(),i;try{i=await r().wiki.append({scope:e,...t})}catch(e){if(!n.isCurrent())return null;throw e}return n.isCurrent()?(a.invalidate(),c.loading=!1,c.scope===e&&!i.deduplicated&&!c.patterns.some(e=>e.name===i.item.name)&&(c.patterns=[i.item,...c.patterns]),i):null}async function d(e,t){return r().wiki.read({scope:e,name:t})}var f=e({scopes:[],loading:!1,error:null});async function p(){let e=s.issue(),t=n();if(!t)return e.isLatest()&&(f.loading=!1),f.error=`The Skill Creator daemon is not connected.`,`failed`;f.loading=!0,f.error=null;try{let{scopes:n}=await t.wiki.scopes({});return e.isCurrent()?(f.scopes=n,`loaded`):`superseded`}catch(t){return e.isCurrent()?(f.error=t instanceof Error?t.message:String(t),`failed`):`superseded`}finally{e.isLatest()&&(f.loading=!1)}}function m(){a.invalidate(),o.invalidate(),c.scope=`~`,c.patterns=[],c.loading=!1,c.error=null}function h(){s.invalidate(),f.scopes=[],f.loading=!1,f.error=null}export{m as a,c,d as i,l as n,h as o,p as r,f as s,u as t};
|
|
@@ -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 ee,ot as v,rt as y,st as te,wt as b,xt as x,z as ne}from"./CmCJ0SKP.js";import{t as S}from"./
|
|
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 ee,ot as v,rt as y,st as te,wt as b,xt as x,z as ne}from"./CmCJ0SKP.js";import{t as S}from"./DjZ7hdjX.js";import"./xihTtKlq.js";import{t as C}from"./BDMeqoYB.js";import"./eFUKcYMv.js";import{D as w,S as T,T as E,w as D}from"./pd7EK5wP.js";function O(e){return e.activities.find(e=>e.entry)??e.activities[0]}var k=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{}}}},A=class{apps=new Map;register(e){this.apps.set(e.id,e)}get(e){return this.apps.get(e)}list(){return[...this.apps.values()]}},j=new k,M=new A;function N(e){let t={id:e.id,pattern:e.pattern,params:e.params,search:e.search,component:e.component,children:e.children};return F(t,t.pattern||`/`),t}function P(e,t){I(e,t)}function F(e,t){if(j.register({id:e.id,route:e,absolutePattern:t}),e.children)for(let n of e.children)F(n,L(t,n.pattern))}function I(e,t){let n=L(e,t.pattern);if(j.register({id:t.id,route:t,absolutePattern:n}),t.children)for(let e of t.children)I(n,e)}function L(e,t){let n=e.replace(/\/+$/,``),r=t.replace(/^\/+|\/+$/g,``);return r===``?n||`/`:`${n}/${r}`}function re(e){return P(e.pattern,e.root),{pattern:e.pattern,root:e.root,entry:e.entry}}function ie(e){return{id:e.id,pattern:``,search:e.search,component:e.component}}function ae(e){return M.register(e),{manifest:e}}function oe(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 R(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 z(e,t,n,r){let i=V(e,ce(se(t,r)),r);if(i.length===0)return{kind:`no-match`,reason:`no-route`};let a=H(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=R(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 se(e,t){let n=t.replace(/\/+$/,``);return e===n?``:e.startsWith(n+`/`)?e.slice(n.length):e}function ce(e){let t=e.replace(/^\/+|\/+$/g,``);return t===``?[]:t.split(`/`).map(e=>{try{return decodeURIComponent(e)}catch{return e}})}function le(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 B(e,t){let n=e.replace(/\/+$/,``),r=t.replace(/^\/+|\/+$/g,``);return r===``?n:`${n}/${r}`}function V(e,t,n){let r=B(n,e.pattern),i=le(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=V(t,s,r);if(e.length>0)return[o,...e]}return[]}function H(e){let t={};for(let n of e)Object.assign(t,n.rawParams);return t}var U=/:([A-Za-z_][A-Za-z0-9_]*)/g;function W(e,t){return e.replace(U,(e,n)=>{let r=t[n];return r===void 0?`:${n}`:encodeURIComponent(r)})}var G=`/workspaces`;function ue(e,t){let n=de(e),r=n?M.get(n):void 0;if(!r)return{kind:`redirect`,path:G};let i=O(r);if(!i)return{kind:`redirect`,path:G};for(let n of r.activities){let r=z(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 de(e){let t=e.replace(/^\/+/,``);return t?t.split(`/`)[0]??null:null}var K=null;function fe(e){K=e}function pe(e,t,n){let r=j.get(e);return r?he(r.absolutePattern,t,n):`/`}function me(e,t,n,r){let i=pe(e,t,n);K?.navigate(i,r)}function he(e,t,n){return`${W(e,t??{})}${n?oe(n):``}`}var ge=Symbol(`skill-creator:portal-target`),_e=Symbol(`skill-creator:app-context`);function ve(e){b(ge,e)}function ye(e){b(_e,e)}var q=Symbol(`skill-creator:router`);function be(e){b(q,{get:e})}function xe(){if(!x(q))return;let e=u(q).get;return()=>e().params}function Se(){if(!x(q))return;let e=u(q).get;return()=>e().search}function J(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 Ce={navigate(e,t=`PUSH`){t===`REPLACE`?S(e,{replaceState:!0,keepFocus:!0,noScroll:!0}):S(e)},replace(e){this.navigate(e,`REPLACE`)}},Y=`skill-creator:device-prefs`,X=w({version:E(1),theme:T([`light`,`dark`,`system`]).default(`system`),sidebarCollapsed:D().default(!1)}),Z={version:1,theme:`system`,sidebarCollapsed:!1};function Q(){if(typeof localStorage>`u`)return{...Z};try{let e=localStorage.getItem(Y);if(!e)return{...Z};let t=X.safeParse(JSON.parse(e));return t.success?t.data:{...Z}}catch{return{...Z}}}function $(e){if(!(typeof localStorage>`u`))try{let t=X.parse(e);localStorage.setItem(Y,JSON.stringify(t))}catch{}}function we(e){let t={...Q(),...e,version:1};return $(t),t}var Te=n(`<div class="app-shell-error svelte-1oszhz"> </div>`),Ee=n(`<div class="app-shell-loading svelte-1oszhz" aria-label="Loading"></div>`),De=n(`<div class="app-shell-empty svelte-1oszhz">No route matched</div>`),Oe=n(`<div class="app-shell svelte-1oszhz"><!> <div class="app-portal-root svelte-1oszhz"></div></div>`);function ke(n,u){r(u,!0);let m=_(null),b=p(()=>z(u.activity.root,C.url.pathname,C.url.search,u.activity.pattern)),x=p(()=>l(b).kind===`matched`?l(b).chain:[]),S=p(()=>k(l(x))),w=p(()=>A(l(b),l(x)));ve(()=>l(m)),ye({get manifest(){return{id:u.app.id,name:u.app.name,icon:u.app.icon}},get pathname(){return C.url.pathname}}),be(()=>({match:l(b),params:l(S),search:l(w),chain:l(x)}));let T=_(null),E=_(null),D=null,O=0;y(()=>{let t=(l(x).length>0?l(x)[l(x).length-1]:void 0)?.route,n=e(()=>D);if(!t){D=null,O+=1,f(T,null),f(E,null);return}if(n===t)return;D=t,f(T,null),f(E,null);let r=++O;t.component().then(e=>{r===O&&f(T,e.default,!0)}).catch(e=>{r===O&&f(E,e instanceof Error?e.message:String(e),!0)})});function k(e){if(e.length===0)return;let t={};for(let n of e)Object.assign(t,n.rawParams);return t}function A(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(R(C.url.search));return r.success?r.data:void 0}var j=Oe(),M=v(j),N=e=>{var t=Te(),n=d(t);ee(()=>a(n,`Failed to load: ${l(E)??``}`)),s(e,t)},P=e=>{let t=p(()=>l(T));var n=ne(),r=te(n);i(r,()=>l(t),(e,t)=>{t(e,{})}),s(e,n)},F=e=>{var t=Ee();s(e,t)},I=e=>{var t=De();s(e,t)};o(M,e=>{l(E)?e(N):l(T)?e(P,1):l(x).length>0?e(F,2):e(I,-1)});var L=g(M,2);h(L,e=>f(m,e),()=>l(m)),t(j),s(n,j),c()}var Ae=n(`<div class="tab-empty svelte-t4mhty">Select an app from the sidebar.</div>`),je=n(`<div class="tab-outlet-root svelte-t4mhty"><!></div>`);function Me(e,n){r(n,!0);let i=p(()=>C.url.pathname),a=p(()=>J(l(i))?.app??null),u=p(()=>l(a)?M.get(l(a)):null);m(()=>{let e=ue(l(i),C.url.search);e.kind===`redirect`&&(e.path!==l(i)||C.url.search)&&Ce.replace(e.path)});let d=p(()=>{if(!l(u))return null;for(let e of l(u).activities)if(z(e.root,l(i),C.url.search,e.pattern).kind===`matched`)return e;return l(u).activities.find(e=>e.entry)??l(u).activities[0]??null});var f=je(),h=v(f),g=e=>{ke(e,{get app(){return l(u)},get activity(){return l(d)}})},_=e=>{var t=Ae();s(e,t)};o(h,e=>{l(u)&&l(d)?e(g):e(_,-1)}),t(f),s(e,f),c()}export{xe as a,fe as c,ie as d,N as f,J as i,ae as l,Q as n,Se as o,M as p,we as r,me as s,Me as t,re as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e,s as t,ut as n}from"./CmCJ0SKP.js";import"./xihTtKlq.js";import{t as r}from"./BkEnd9_Z.js";import{a as i,o as a,t as o}from"./
|
|
1
|
+
import{o as e,s as t,ut as n}from"./CmCJ0SKP.js";import"./xihTtKlq.js";import{t as r}from"./BkEnd9_Z.js";import{a as i,o as a,t as o}from"./pd7EK5wP.js";var s=new Set([`$$slots`,`$$events`,`$$legacy`]);function c(n,i){let a=e(i,s),o=[[`path`,{d:`M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z`}],[`path`,{d:`m7 16.5-4.74-2.85`}],[`path`,{d:`m7 16.5 5-3`}],[`path`,{d:`M7 16.5v5.17`}],[`path`,{d:`M12 13.5V19l3.97 2.38a2 2 0 0 0 2.06 0l3-1.8a2 2 0 0 0 .97-1.71v-3.24a2 2 0 0 0-.97-1.71L17 10.5l-5 3Z`}],[`path`,{d:`m17 16.5-5-3`}],[`path`,{d:`m17 16.5 4.74-2.85`}],[`path`,{d:`M17 16.5v5.17`}],[`path`,{d:`M7.97 4.42A2 2 0 0 0 7 6.13v4.37l5 3 5-3V6.13a2 2 0 0 0-.97-1.71l-3-1.8a2 2 0 0 0-2.06 0l-3 1.8Z`}],[`path`,{d:`M12 8 7.26 5.15`}],[`path`,{d:`m12 8 4.74-2.85`}],[`path`,{d:`M12 13.5V8`}]];r(n,t({name:`boxes`},()=>a,{get iconNode(){return o}}))}var l=o(i),u=o(i),d=n({status:null,loading:!1});async function f(){let e=l.issue(),t=a();if(!t){e.isLatest()&&(d.loading=!1);return}d.loading=!0;try{let n=await t.selfSkill.state({});if(!e.isCurrent())return;d.status=n}catch{e.isCurrent()&&(d.status=null)}finally{e.isLatest()&&(d.loading=!1)}}async function p(e){let t=u.issue(),n=a();if(!n)return{ok:!1,reason:`Not connected to the daemon.`};try{let r=await n.selfSkill.resolve({backup:e});return r.ok&&t.isCurrent()&&f(),r}catch(e){return{ok:!1,reason:e instanceof Error?e.message:String(e)}}}async function m(){let e=u.issue(),t=a();if(!t)return{ok:!1,reason:`Not connected to the daemon.`};try{let n=await t.selfSkill.keep({});return n.ok&&e.isCurrent()&&f(),n}catch(e){return{ok:!1,reason:e instanceof Error?e.message:String(e)}}}var h=n({open:!1});function g(){h.open=!0}var _=new Set([`$$slots`,`$$events`,`$$legacy`]);function v(n,i){let a=e(i,_),o=[[`path`,{d:`M12 10v6`}],[`path`,{d:`M9 13h6`}],[`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`}]];r(n,t({name:`folder-plus`},()=>a,{get iconNode(){return o}}))}var y=new Set([`$$slots`,`$$events`,`$$legacy`]);function b(n,i){let a=e(i,y),o=[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`}]];r(n,t({name:`message-square`},()=>a,{get iconNode(){return o}}))}var x=new Set([`$$slots`,`$$events`,`$$legacy`]);function S(n,i){let a=e(i,x),o=[[`path`,{d:`M13 21h8`}],[`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`}]];r(n,t({name:`pen-line`},()=>a,{get iconNode(){return o}}))}export{g as a,p as c,h as i,d as l,b as n,m as o,v as r,f as s,S as t,c as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ut as e}from"./CmCJ0SKP.js";import{a as t,o as n,t as r}from"./
|
|
1
|
+
import{ut as e}from"./CmCJ0SKP.js";import{a as t,o as n,t as r}from"./pd7EK5wP.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,2 +1,2 @@
|
|
|
1
|
-
import{A as e,At as t,B as n,Ct as r,F as i,G as a,K as o,N as s,R as c,St as l,W as u,X as d,ct as f,d as p,ft as m,gt as h,h as ee,lt as g,m as te,mt as _,nt as v,ot as y,p as b,rt as x,st as S,ut as ne,x as re}from"./CmCJ0SKP.js";import{t as C}from"./CAmktO2F.js";import"./xihTtKlq.js";import{t as w}from"./BehT3C1z.js";import"./CZQgUTNL.js";import{a as ie,o as T,s as E}from"./ryZsHFfK.js";import{c as ae,d as D,l as O,n as k,o as A,u as j}from"./DzSJuxmI.js";import{a as M,r as oe,s as se}from"./BLdcUAZa.js";var N=[{id:`anthropics-skills`,label:`Anthropic Skills`,gitUrl:`https://github.com/anthropics/skills.git`,description:`Anthropic 官方维护的 Agent skills 集合。`,homepage:`https://github.com/anthropics/skills`},{id:`vercel-labs-skills`,label:`Vercel Labs Skills`,gitUrl:`https://github.com/vercel-labs/skills.git`,description:`Vercel Labs 维护的社区 Agent skills 集合。`,homepage:`https://github.com/vercel-labs/skills`}];function ce(e){return N.find(t=>t.id===e)}var le=n(`<p class="truncate font-mono text-[11px] text-muted-foreground"> </p>`),ue=n(`<span class="shrink-0 text-[11px] text-muted-foreground"> </span>`),de=n(`<div class="flex shrink-0 items-center gap-3 border-b border-amber-500/40 bg-amber-500/10 px-4 py-2.5 text-xs" role="alert" data-testid="session-expired"><span class="min-w-0 flex-1"><span class="font-medium">Scan session expired.</span> <span class="text-muted-foreground">The pinned commit is no longer held by the daemon. Rescan this repository to continue.</span></span> <button type="button" class="h-7 shrink-0 rounded-md border border-border bg-background px-3 text-[11px] font-medium transition-colors hover:bg-muted/50 disabled:opacity-50">Rescan</button></div>`),fe=n(`<p class="px-4 py-8 text-center text-xs text-muted-foreground">Scanning…</p>`),pe=n(`<div class="px-4 text-center"><button type="button" class="rounded-md border border-border px-3 py-1 text-xs hover:bg-muted/50">Retry scan</button></div>`),me=n(`<p class="px-4 py-8 text-center text-xs text-destructive"> </p> <!>`,1),he=n(`<p class="px-4 py-8 text-center text-xs text-muted-foreground">No scan yet.</p>`),ge=n(`<p class="px-4 py-8 text-center text-xs text-muted-foreground">No installable skills found in this repository.</p>`),_e=n(`<button type="button" class="hover:text-foreground">Clear</button>`),ve=n(`<span class="mt-0.5 block text-[10px] text-amber-600 dark:text-amber-400"> </span>`),ye=n(`<button type="button"><input type="checkbox" class="mt-0.5 h-3.5 w-3.5" aria-label="Select skill"/> <span class="min-w-0 flex-1"><span class="block truncate text-[13px] font-medium text-foreground"> </span> <span class="mt-0.5 line-clamp-2 block text-[11px] text-muted-foreground"> </span> <!></span></button>`),be=n(`<p class="mt-2 text-xs text-muted-foreground">Loading…</p>`),xe=n(`<pre class="mt-2 max-h-48 overflow-auto rounded bg-muted/50 p-2 text-[11px] leading-4"> </pre>`),Se=n(`<p class="mt-2 text-xs text-muted-foreground">Select a skill to preview.</p>`),Ce=n(`<p class="mt-2 text-xs text-muted-foreground">No writable workspace providers. Import a directory workspace first.</p>`),we=n(`<li><label class="flex items-center gap-2 text-xs"><input type="checkbox" class="h-3.5 w-3.5"/> <span class="truncate"> </span></label></li>`),Te=n(`<ul class="mt-2 space-y-1"></ul>`),Ee=n(`<p class="mt-2 break-words text-xs text-destructive"> </p>`),De=n(`<div class="p-3 text-xs"><h2 class="font-medium text-muted-foreground">Dry-run preview</h2> <p class="mt-1"> </p></div>`),Oe=n(`<div class="flex items-center justify-between gap-2 rounded border border-border px-2 py-1"><span class="truncate"> </span> <button type="button" class="shrink-0 rounded bg-primary/10 px-2 py-0.5 text-[10px] text-primary hover:bg-primary/20">View in Workspaces</button></div>`),ke=n(`<div class="mt-2 space-y-1"></div>`),Ae=n(`<div class="p-3 text-xs"><h2 class="font-medium text-muted-foreground"> </h2> <!></div>`),je=n(`<div class="flex min-h-0 flex-1"><section class="flex w-1/2 min-w-0 flex-col border-r border-border"><header class="flex shrink-0 items-center justify-between px-3 py-2 text-xs text-muted-foreground"><span> </span> <!></header> <div class="min-h-0 flex-1 overflow-y-auto"></div></section> <section class="flex w-1/2 min-w-0 flex-col overflow-y-auto"><div class="border-b border-border p-3"><h2 class="text-xs font-medium text-muted-foreground">Preview</h2> <!></div> <div class="border-b border-border p-3"><h2 class="text-xs font-medium text-muted-foreground"> </h2> <!> <div class="mt-2 flex gap-2"><button type="button" class="h-7 rounded-md border border-border px-2 text-[11px] hover:bg-muted/50 disabled:opacity-50">Dry-run</button> <button type="button" class="h-7 rounded-md bg-primary px-3 text-[11px] font-medium text-primary-foreground hover:bg-primary/90 disabled:opacity-50"> </button></div> <!></div> <!> <!></section></div>`),Me=n(`<div class="flex h-full flex-col overflow-hidden"><header class="flex shrink-0 items-center gap-3 border-b border-border px-4 py-3"><div class="min-w-0 flex-1"><h1 class="truncate text-sm font-semibold"> </h1> <!></div> <!> <form class="flex shrink-0 items-center gap-1"><input placeholder="branch / tag" title="Optional Git ref to scan (defaults to the repository default branch)" aria-label="Git ref for scanning" class="h-7 w-28 rounded-md border border-input bg-input/20 px-2 font-mono text-[11px] outline-none placeholder:text-muted-foreground focus-visible:border-ring"/> <button type="submit" class="h-7 rounded-md border border-border px-2 text-[11px] transition-colors hover:bg-muted/50 disabled:opacity-50"> </button></form> <button type="button" class="shrink-0 rounded-md border border-border px-2 py-1 text-[11px] hover:bg-muted/50">Discover</button></header> <!> <!></div>`);function P(n,u){r(u,!0);let N=ie(),P=T(),F=h(()=>N?.()?.sourceId),Ne=h(()=>d(F)?ce(d(F)):void 0),Pe=h(()=>d(F)?se.user.find(e=>e.id===d(F)):void 0),Fe=h(()=>d(Ne)?.label??d(Pe)?.label??d(F)??`Repository`),I=h(()=>d(Ne)?.gitUrl??d(Pe)?.gitUrl),L=_(null),R=_(!1),z=_(null),B=_(null),V=_(!1),H=_(null),U=_(null),W=_(!1),G=_(null),K=_(``),Ie=h(()=>P?.()?.selected??``),q=h(()=>{let e=d(Ie).split(`,`).map(e=>e.trim()).filter(Boolean);return new Set(e)}),Le=h(()=>P?.()?.skill),J=_(ne([]));x(()=>{M()}),x(()=>{k()});let Re=h(A),ze=_(null);x(()=>{d(F)&&d(I)&&(d(ze)===d(F)&&d(L)||(m(ze,d(F),!0),Y(d(I))))});async function Y(e,t){m(R,!0),m(z,null),m(L,null),m(B,null),m(H,null),m(U,null),m(G,null);let n=t?.trim()||void 0,{scan:r,error:i}=await D(e,n);m(L,r,!0),m(z,i,!0),r&&d(F)&&oe(d(F),{skillCount:r.skills.length,commit:r.commit}),m(R,!1)}x(()=>{if(!d(L)||!d(Le)){m(B,null);return}let e=d(Le);if(!d(L).skills.some(t=>t.id===e)){m(B,null);return}Be(d(L).sessionId,e)});async function Be(e,t){m(V,!0),m(H,null);let{preview:n,error:r}=await j(e,t);m(B,n,!0),m(H,r,!0),m(V,!1)}function Ve(e){let t=new Set(d(q));t.has(e.id)?t.delete(e.id):t.add(e.id),He(t)}function He(e){let t=[...e].join(`,`),n=new URLSearchParams(w.url.search);t?n.set(`selected`,t):n.delete(`selected`);let r=n.toString();C(`/repository/scan/${encodeURIComponent(d(F)??``)}${r?`?${r}`:``}`,{replaceState:!0})}function Ue(e){let t=new URLSearchParams(w.url.search);t.set(`skill`,e.id),C(`/repository/scan/${encodeURIComponent(d(F)??``)}?${t.toString()}`,{replaceState:!0})}function We(e){let t=d(J).some(t=>t.workspaceId===e.workspaceId&&t.providerId===e.providerId);m(J,t?d(J).filter(t=>t.workspaceId!==e.workspaceId||t.providerId!==e.providerId):[...d(J),e],!0)}function Ge(e){return d(J).some(t=>t.workspaceId===e.workspaceId&&t.providerId===e.providerId)}let Ke=h(()=>d(L)?d(L).skills.filter(e=>d(q).has(e.id)):[]),X=h(()=>d(Ke).filter(e=>e.installable));async function qe(e){if(!d(L)||d(X).length===0||d(J).length===0)return;m(W,!0),m(G,null),m(U,null);let t=d(X).map(e=>e.id),{result:n,error:r}=await ae({sessionId:d(L).sessionId,skillIds:t,targets:d(J),dryRun:e});m(U,n,!0),m(G,r,!0),m(W,!1),n&&!e&&await k()}let Je=h(()=>O(d(H))||O(d(G))),Z=h(()=>d(U)?.kind===`result`?d(U):null),Ye=h(()=>d(Z)?d(Z).results.filter(e=>e.status===`installed`||e.status===`overwritten`):[]);function Xe(e,t,n){E(`workspaces.provider`,{wsId:e,providerId:t},{skill:n})}var Ze=Me(),Qe=y(Ze),Q=y(Qe),$e=y(Q),et=f($e,!0),tt=g($e,2),nt=e=>{var t=le(),n=f(t,!0);v(()=>i(n,d(I))),c(e,t)};s(tt,e=>{d(I)&&e(nt)}),t(Q);var rt=g(Q,2),it=e=>{var t=ue(),n=f(t);v(e=>i(n,`${d(L).skills.length??``} skills · commit ${e??``}`),[()=>d(L).commit.slice(0,12)]),c(e,t)};s(rt,e=>{d(L)&&e(it)});var $=g(rt,2),at=y($);b(at);var ot=g(at,2),st=f(ot,!0);t($);var ct=g($,2);t(Qe);var lt=g(Qe,2),ut=e=>{var n=de(),r=g(y(n),2);t(n),v(()=>r.disabled=d(R)||!d(I)),a(`click`,r,()=>d(I)&&void Y(d(I),d(K))),c(e,n)};s(lt,e=>{d(Je)&&e(ut)});var dt=g(lt,2),ft=e=>{var t=fe();c(e,t)},pt=e=>{var t=me(),n=S(t),r=f(n,!0),o=g(n,2),l=e=>{var t=pe(),n=f(t);a(`click`,n,()=>Y(d(I))),c(e,t)};s(o,e=>{d(I)&&e(l)}),v(()=>i(r,d(z).message)),c(e,t)},mt=e=>{var t=he();c(e,t)},ht=e=>{var t=ge();c(e,t)},gt=n=>{var r=je(),o=y(r),l=y(o),u=y(l),p=f(u),m=g(u,2),h=e=>{var t=_e();a(`click`,t,()=>He(new Set)),c(e,t)};s(m,e=>{d(q).size>0&&e(h)}),t(l);var _=g(l,2);e(_,21,()=>d(L).skills,e=>e.id,(e,n)=>{var r=ye(),o=y(r);b(o);var l=g(o,2),u=y(l),p=f(u,!0),m=g(u,2),h=f(m,!0),_=g(m,2),x=e=>{var t=ve(),r=f(t,!0);v(e=>i(r,e),[()=>d(n).issues.join(` `)||`Not installable`]),c(e,t)};s(_,e=>{d(n).installable||e(x)}),t(l),t(r),v((e,t,a)=>{re(r,1,`flex w-full items-start gap-2 border-b border-border/70 px-3 py-2 text-left transition-colors ${e??``}`),te(r,`aria-pressed`,t),ee(o,a),i(p,d(n).name),i(h,d(n).description||`No description`)},[()=>d(q).has(d(n).id)?`bg-accent`:`hover:bg-accent/60`,()=>d(q).has(d(n).id),()=>d(q).has(d(n).id)]),a(`click`,r,()=>Ue(d(n))),a(`click`,o,e=>{e.stopPropagation(),Ve(d(n))}),c(e,r)}),t(_),t(o);var x=g(o,2),S=y(x),ne=g(y(S),2),C=e=>{var t=be();c(e,t)},w=e=>{var t=xe(),n=f(t,!0);v(()=>i(n,d(B).content)),c(e,t)},ie=e=>{var t=Se();c(e,t)};s(ne,e=>{d(V)?e(C):d(B)?e(w,1):e(ie,-1)}),t(S);var T=g(S,2),E=y(T),ae=f(E),D=g(E,2),O=e=>{var t=Ce();c(e,t)},k=n=>{var r=Te();e(r,21,()=>d(Re),e=>e.target.workspaceId+`:`+e.target.providerId,(e,n)=>{var r=we(),o=y(r),s=y(o);b(s);var l=g(s,2),u=f(l,!0);t(o),t(r),v(e=>{ee(s,e),i(u,d(n).label)},[()=>Ge(d(n).target)]),a(`change`,s,()=>We(d(n).target)),c(e,r)}),t(r),c(n,r)};s(D,e=>{d(Re).length===0?e(O):e(k,-1)});var A=g(D,2),j=y(A),M=g(j,2),oe=f(M,!0);t(A);var se=g(A,2),N=e=>{var t=Ee(),n=f(t,!0);v(()=>i(n,d(G).message)),c(e,t)};s(se,e=>{d(G)&&!d(Je)&&e(N)}),t(T);var ce=g(T,2),le=e=>{var n=De(),r=g(y(n),2),a=f(r);t(n),v(()=>i(a,`${d(U).totalInstalls??``} install(s) planned across ${d(U).destinations.length??``} destination(s).`)),c(e,n)};s(ce,e=>{d(U)?.kind===`preview`&&e(le)});var ue=g(ce,2),de=n=>{var r=Ae(),o=y(r),l=f(o),u=g(o,2),p=n=>{var r=ke();e(r,21,()=>d(Ye),e=>e.target.workspaceId+`:`+e.target.providerId+`:`+e.skillId,(e,n)=>{var r=Oe(),o=y(r),s=f(o),l=g(o,2);t(r),v(()=>i(s,`${d(n).skill??``} → ${d(n).target.workspaceId??``}/${d(n).target.providerId??``}`)),a(`click`,l,()=>Xe(d(n).target.workspaceId,d(n).target.providerId,d(n).skillId)),c(e,r)}),t(r),c(n,r)};s(u,e=>{d(Ye).length>0&&e(p)}),t(r),v(()=>i(l,`Installed ${d(Z).installed??``} · overwritten ${d(Z).overwritten??``} · skipped
|
|
1
|
+
import{A as e,At as t,B as n,Ct as r,F as i,G as a,K as o,N as s,R as c,St as l,W as u,X as d,ct as f,d as p,ft as m,gt as h,h as ee,lt as g,m as te,mt as _,nt as v,ot as y,p as b,rt as x,st as S,ut as ne,x as re}from"./CmCJ0SKP.js";import{t as C}from"./DjZ7hdjX.js";import"./xihTtKlq.js";import{t as w}from"./BDMeqoYB.js";import"./eFUKcYMv.js";import{a as ie,o as T,s as E}from"./DF_TIB7n.js";import{c as ae,d as D,l as O,n as k,o as A,u as j}from"./BTMBuftG.js";import{a as M,r as oe,s as se}from"./DTzqg7c9.js";var N=[{id:`anthropics-skills`,label:`Anthropic Skills`,gitUrl:`https://github.com/anthropics/skills.git`,description:`Anthropic 官方维护的 Agent skills 集合。`,homepage:`https://github.com/anthropics/skills`},{id:`vercel-labs-skills`,label:`Vercel Labs Skills`,gitUrl:`https://github.com/vercel-labs/skills.git`,description:`Vercel Labs 维护的社区 Agent skills 集合。`,homepage:`https://github.com/vercel-labs/skills`}];function ce(e){return N.find(t=>t.id===e)}var le=n(`<p class="truncate font-mono text-[11px] text-muted-foreground"> </p>`),ue=n(`<span class="shrink-0 text-[11px] text-muted-foreground"> </span>`),de=n(`<div class="flex shrink-0 items-center gap-3 border-b border-amber-500/40 bg-amber-500/10 px-4 py-2.5 text-xs" role="alert" data-testid="session-expired"><span class="min-w-0 flex-1"><span class="font-medium">Scan session expired.</span> <span class="text-muted-foreground">The pinned commit is no longer held by the daemon. Rescan this repository to continue.</span></span> <button type="button" class="h-7 shrink-0 rounded-md border border-border bg-background px-3 text-[11px] font-medium transition-colors hover:bg-muted/50 disabled:opacity-50">Rescan</button></div>`),fe=n(`<p class="px-4 py-8 text-center text-xs text-muted-foreground">Scanning…</p>`),pe=n(`<div class="px-4 text-center"><button type="button" class="rounded-md border border-border px-3 py-1 text-xs hover:bg-muted/50">Retry scan</button></div>`),me=n(`<p class="px-4 py-8 text-center text-xs text-destructive"> </p> <!>`,1),he=n(`<p class="px-4 py-8 text-center text-xs text-muted-foreground">No scan yet.</p>`),ge=n(`<p class="px-4 py-8 text-center text-xs text-muted-foreground">No installable skills found in this repository.</p>`),_e=n(`<button type="button" class="hover:text-foreground">Clear</button>`),ve=n(`<span class="mt-0.5 block text-[10px] text-amber-600 dark:text-amber-400"> </span>`),ye=n(`<button type="button"><input type="checkbox" class="mt-0.5 h-3.5 w-3.5" aria-label="Select skill"/> <span class="min-w-0 flex-1"><span class="block truncate text-[13px] font-medium text-foreground"> </span> <span class="mt-0.5 line-clamp-2 block text-[11px] text-muted-foreground"> </span> <!></span></button>`),be=n(`<p class="mt-2 text-xs text-muted-foreground">Loading…</p>`),xe=n(`<pre class="mt-2 max-h-48 overflow-auto rounded bg-muted/50 p-2 text-[11px] leading-4"> </pre>`),Se=n(`<p class="mt-2 text-xs text-muted-foreground">Select a skill to preview.</p>`),Ce=n(`<p class="mt-2 text-xs text-muted-foreground">No writable workspace providers. Import a directory workspace first.</p>`),we=n(`<li><label class="flex items-center gap-2 text-xs"><input type="checkbox" class="h-3.5 w-3.5"/> <span class="truncate"> </span></label></li>`),Te=n(`<ul class="mt-2 space-y-1"></ul>`),Ee=n(`<p class="mt-2 break-words text-xs text-destructive"> </p>`),De=n(`<div class="p-3 text-xs"><h2 class="font-medium text-muted-foreground">Dry-run preview</h2> <p class="mt-1"> </p></div>`),Oe=n(`<div class="flex items-center justify-between gap-2 rounded border border-border px-2 py-1"><span class="truncate"> </span> <button type="button" class="shrink-0 rounded bg-primary/10 px-2 py-0.5 text-[10px] text-primary hover:bg-primary/20">View in Workspaces</button></div>`),ke=n(`<div class="mt-2 space-y-1"></div>`),Ae=n(`<div class="p-3 text-xs"><h2 class="font-medium text-muted-foreground"> </h2> <!></div>`),je=n(`<div class="flex min-h-0 flex-1"><section class="flex w-1/2 min-w-0 flex-col border-r border-border"><header class="flex shrink-0 items-center justify-between px-3 py-2 text-xs text-muted-foreground"><span> </span> <!></header> <div class="min-h-0 flex-1 overflow-y-auto"></div></section> <section class="flex w-1/2 min-w-0 flex-col overflow-y-auto"><div class="border-b border-border p-3"><h2 class="text-xs font-medium text-muted-foreground">Preview</h2> <!></div> <div class="border-b border-border p-3"><h2 class="text-xs font-medium text-muted-foreground"> </h2> <!> <div class="mt-2 flex gap-2"><button type="button" class="h-7 rounded-md border border-border px-2 text-[11px] hover:bg-muted/50 disabled:opacity-50">Dry-run</button> <button type="button" class="h-7 rounded-md bg-primary px-3 text-[11px] font-medium text-primary-foreground hover:bg-primary/90 disabled:opacity-50"> </button></div> <!></div> <!> <!></section></div>`),Me=n(`<div class="flex h-full flex-col overflow-hidden"><header class="flex shrink-0 items-center gap-3 border-b border-border px-4 py-3"><div class="min-w-0 flex-1"><h1 class="truncate text-sm font-semibold"> </h1> <!></div> <!> <form class="flex shrink-0 items-center gap-1"><input placeholder="branch / tag" title="Optional Git ref to scan (defaults to the repository default branch)" aria-label="Git ref for scanning" class="h-7 w-28 rounded-md border border-input bg-input/20 px-2 font-mono text-[11px] outline-none placeholder:text-muted-foreground focus-visible:border-ring"/> <button type="submit" class="h-7 rounded-md border border-border px-2 text-[11px] transition-colors hover:bg-muted/50 disabled:opacity-50"> </button></form> <button type="button" class="shrink-0 rounded-md border border-border px-2 py-1 text-[11px] hover:bg-muted/50">Discover</button></header> <!> <!></div>`);function P(n,u){r(u,!0);let N=ie(),P=T(),F=h(()=>N?.()?.sourceId),Ne=h(()=>d(F)?ce(d(F)):void 0),Pe=h(()=>d(F)?se.user.find(e=>e.id===d(F)):void 0),Fe=h(()=>d(Ne)?.label??d(Pe)?.label??d(F)??`Repository`),I=h(()=>d(Ne)?.gitUrl??d(Pe)?.gitUrl),L=_(null),R=_(!1),z=_(null),B=_(null),V=_(!1),H=_(null),U=_(null),W=_(!1),G=_(null),K=_(``),Ie=h(()=>P?.()?.selected??``),q=h(()=>{let e=d(Ie).split(`,`).map(e=>e.trim()).filter(Boolean);return new Set(e)}),Le=h(()=>P?.()?.skill),J=_(ne([]));x(()=>{M()}),x(()=>{k()});let Re=h(A),ze=_(null);x(()=>{d(F)&&d(I)&&(d(ze)===d(F)&&d(L)||(m(ze,d(F),!0),Y(d(I))))});async function Y(e,t){m(R,!0),m(z,null),m(L,null),m(B,null),m(H,null),m(U,null),m(G,null);let n=t?.trim()||void 0,{scan:r,error:i}=await D(e,n);m(L,r,!0),m(z,i,!0),r&&d(F)&&oe(d(F),{skillCount:r.skills.length,commit:r.commit}),m(R,!1)}x(()=>{if(!d(L)||!d(Le)){m(B,null);return}let e=d(Le);if(!d(L).skills.some(t=>t.id===e)){m(B,null);return}Be(d(L).sessionId,e)});async function Be(e,t){m(V,!0),m(H,null);let{preview:n,error:r}=await j(e,t);m(B,n,!0),m(H,r,!0),m(V,!1)}function Ve(e){let t=new Set(d(q));t.has(e.id)?t.delete(e.id):t.add(e.id),He(t)}function He(e){let t=[...e].join(`,`),n=new URLSearchParams(w.url.search);t?n.set(`selected`,t):n.delete(`selected`);let r=n.toString();C(`/repository/scan/${encodeURIComponent(d(F)??``)}${r?`?${r}`:``}`,{replaceState:!0})}function Ue(e){let t=new URLSearchParams(w.url.search);t.set(`skill`,e.id),C(`/repository/scan/${encodeURIComponent(d(F)??``)}?${t.toString()}`,{replaceState:!0})}function We(e){let t=d(J).some(t=>t.workspaceId===e.workspaceId&&t.providerId===e.providerId);m(J,t?d(J).filter(t=>t.workspaceId!==e.workspaceId||t.providerId!==e.providerId):[...d(J),e],!0)}function Ge(e){return d(J).some(t=>t.workspaceId===e.workspaceId&&t.providerId===e.providerId)}let Ke=h(()=>d(L)?d(L).skills.filter(e=>d(q).has(e.id)):[]),X=h(()=>d(Ke).filter(e=>e.installable));async function qe(e){if(!d(L)||d(X).length===0||d(J).length===0)return;m(W,!0),m(G,null),m(U,null);let t=d(X).map(e=>e.id),{result:n,error:r}=await ae({sessionId:d(L).sessionId,skillIds:t,targets:d(J),dryRun:e});m(U,n,!0),m(G,r,!0),m(W,!1),n&&!e&&await k()}let Je=h(()=>O(d(H))||O(d(G))),Z=h(()=>d(U)?.kind===`result`?d(U):null),Ye=h(()=>d(Z)?d(Z).results.filter(e=>e.status===`installed`||e.status===`overwritten`):[]);function Xe(e,t,n){E(`workspaces.provider`,{wsId:e,providerId:t},{skill:n})}var Ze=Me(),Qe=y(Ze),Q=y(Qe),$e=y(Q),et=f($e,!0),tt=g($e,2),nt=e=>{var t=le(),n=f(t,!0);v(()=>i(n,d(I))),c(e,t)};s(tt,e=>{d(I)&&e(nt)}),t(Q);var rt=g(Q,2),it=e=>{var t=ue(),n=f(t);v(e=>i(n,`${d(L).skills.length??``} skills · commit ${e??``}`),[()=>d(L).commit.slice(0,12)]),c(e,t)};s(rt,e=>{d(L)&&e(it)});var $=g(rt,2),at=y($);b(at);var ot=g(at,2),st=f(ot,!0);t($);var ct=g($,2);t(Qe);var lt=g(Qe,2),ut=e=>{var n=de(),r=g(y(n),2);t(n),v(()=>r.disabled=d(R)||!d(I)),a(`click`,r,()=>d(I)&&void Y(d(I),d(K))),c(e,n)};s(lt,e=>{d(Je)&&e(ut)});var dt=g(lt,2),ft=e=>{var t=fe();c(e,t)},pt=e=>{var t=me(),n=S(t),r=f(n,!0),o=g(n,2),l=e=>{var t=pe(),n=f(t);a(`click`,n,()=>Y(d(I))),c(e,t)};s(o,e=>{d(I)&&e(l)}),v(()=>i(r,d(z).message)),c(e,t)},mt=e=>{var t=he();c(e,t)},ht=e=>{var t=ge();c(e,t)},gt=n=>{var r=je(),o=y(r),l=y(o),u=y(l),p=f(u),m=g(u,2),h=e=>{var t=_e();a(`click`,t,()=>He(new Set)),c(e,t)};s(m,e=>{d(q).size>0&&e(h)}),t(l);var _=g(l,2);e(_,21,()=>d(L).skills,e=>e.id,(e,n)=>{var r=ye(),o=y(r);b(o);var l=g(o,2),u=y(l),p=f(u,!0),m=g(u,2),h=f(m,!0),_=g(m,2),x=e=>{var t=ve(),r=f(t,!0);v(e=>i(r,e),[()=>d(n).issues.join(` `)||`Not installable`]),c(e,t)};s(_,e=>{d(n).installable||e(x)}),t(l),t(r),v((e,t,a)=>{re(r,1,`flex w-full items-start gap-2 border-b border-border/70 px-3 py-2 text-left transition-colors ${e??``}`),te(r,`aria-pressed`,t),ee(o,a),i(p,d(n).name),i(h,d(n).description||`No description`)},[()=>d(q).has(d(n).id)?`bg-accent`:`hover:bg-accent/60`,()=>d(q).has(d(n).id),()=>d(q).has(d(n).id)]),a(`click`,r,()=>Ue(d(n))),a(`click`,o,e=>{e.stopPropagation(),Ve(d(n))}),c(e,r)}),t(_),t(o);var x=g(o,2),S=y(x),ne=g(y(S),2),C=e=>{var t=be();c(e,t)},w=e=>{var t=xe(),n=f(t,!0);v(()=>i(n,d(B).content)),c(e,t)},ie=e=>{var t=Se();c(e,t)};s(ne,e=>{d(V)?e(C):d(B)?e(w,1):e(ie,-1)}),t(S);var T=g(S,2),E=y(T),ae=f(E),D=g(E,2),O=e=>{var t=Ce();c(e,t)},k=n=>{var r=Te();e(r,21,()=>d(Re),e=>e.target.workspaceId+`:`+e.target.providerId,(e,n)=>{var r=we(),o=y(r),s=y(o);b(s);var l=g(s,2),u=f(l,!0);t(o),t(r),v(e=>{ee(s,e),i(u,d(n).label)},[()=>Ge(d(n).target)]),a(`change`,s,()=>We(d(n).target)),c(e,r)}),t(r),c(n,r)};s(D,e=>{d(Re).length===0?e(O):e(k,-1)});var A=g(D,2),j=y(A),M=g(j,2),oe=f(M,!0);t(A);var se=g(A,2),N=e=>{var t=Ee(),n=f(t,!0);v(()=>i(n,d(G).message)),c(e,t)};s(se,e=>{d(G)&&!d(Je)&&e(N)}),t(T);var ce=g(T,2),le=e=>{var n=De(),r=g(y(n),2),a=f(r);t(n),v(()=>i(a,`${d(U).totalInstalls??``} install(s) planned across ${d(U).destinations.length??``} destination(s).`)),c(e,n)};s(ce,e=>{d(U)?.kind===`preview`&&e(le)});var ue=g(ce,2),de=n=>{var r=Ae(),o=y(r),l=f(o),u=g(o,2),p=n=>{var r=ke();e(r,21,()=>d(Ye),e=>e.target.workspaceId+`:`+e.target.providerId+`:`+e.skillId,(e,n)=>{var r=Oe(),o=y(r),s=f(o),l=g(o,2);t(r),v(()=>i(s,`${d(n).skill??``} → ${d(n).target.workspaceId??``}/${d(n).target.providerId??``}`)),a(`click`,l,()=>Xe(d(n).target.workspaceId,d(n).target.providerId,d(n).skillId)),c(e,r)}),t(r),c(n,r)};s(u,e=>{d(Ye).length>0&&e(p)}),t(r),v(()=>i(l,`Installed ${d(Z).installed??``} · overwritten ${d(Z).overwritten??``} · skipped
|
|
2
2
|
${d(Z).skipped??``} · failed ${d(Z).failed??``}`)),c(n,r)};s(ue,e=>{d(Z)&&e(de)}),t(x),t(r),v(()=>{i(p,`${d(q).size??``} selected`),i(ae,`Install targets (${d(J).length??``})`),j.disabled=d(W)||d(X).length===0||d(J).length===0,M.disabled=d(W)||d(X).length===0||d(J).length===0,i(oe,d(W)?`Installing…`:`Install`)}),a(`click`,j,()=>qe(!0)),a(`click`,M,()=>qe(!1)),c(n,r)};s(dt,e=>{d(R)?e(ft):d(z)?e(pt,1):d(L)?d(L).skills.length===0?e(ht,3):e(gt,-1):e(mt,2)}),t(Ze),v(()=>{i(et,d(Fe)),ot.disabled=d(R)||!d(I),i(st,d(R)?`Scanning…`:`Rescan`)}),o(`submit`,$,e=>{e.preventDefault(),d(I)&&Y(d(I),d(K))}),p(at,()=>d(K),e=>m(K,e)),a(`click`,ct,()=>C(`/repository`)),c(n,Ze),l()}u([`click`,`change`]);export{P as default};
|
|
@@ -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 b,gt as x,j as S,k as ee,kt as C,l as te,lt as w,m as T,mt as E,nt as D,o as O,ot as k,p as ne,rt as A,s as j,st as M,ut as re,x as ie,z as ae}from"./CmCJ0SKP.js";import"./xihTtKlq.js";import{t as N}from"./BkEnd9_Z.js";import{a as oe,o as se,s as P}from"./ryZsHFfK.js";import{_ as ce,a as le,b as ue,r as de,s as F,t as fe,u as pe,v as me,x as he}from"./BBqlAyUm.js";import{a as ge,c as I,d as L,f as _e,g as ve,i as R,l as ye,o as be,p as xe,r as Se,s as Ce,t as we,u as z}from"./Cbsk109T.js";import{n as B}from"./1aUphu7Y.js";import{i as Te,n as V,t as H}from"./DnPeA-9c.js";import{t as Ee}from"./BEPs9Z9s.js";import{t as De}from"./DOjT7y5f.js";import{n as Oe,t as ke}from"./F_BrNiaz.js";import{n as Ae,t as je}from"./ChvFFUWR.js";import{n as Me,t as Ne}from"./s48N5eaK.js";import{t as U}from"./Bl0jjuyR.js";import{t as Pe}from"./DKQHhdJ1.js";import{t as Fe}from"./D8Der6oM.js";var Ie=fe(le),W=re({target:null,checking:!1,applying:!1,checkError:null,results:[],applyResults:null});async function Le(e,t){let n=Ie.issue(),r=()=>n.isCurrent()&&L(W.target,e);W.target=e,W.checking=!0,W.checkError=null,W.results=[],W.applyResults=null;try{let{results:n}=await F().skills.update.check({...e,skillIds:t});if(!r())return;W.results=n}catch(e){if(!r())return;W.checkError=e instanceof Error?e.message:String(e)}finally{n.isLatest()&&(W.checking=!1)}}async function Re(e,t){let n=Ie.issue(),r=()=>n.isCurrent()&&L(W.target,e);W.applying=!0;try{let{results:n}=await F().skills.update.apply({...e,skillIds:t});return r()?(W.applyResults=n,n):null}catch(e){if(!r())return null;throw e}finally{n.isLatest()&&(W.applying=!1)}}function ze(){Ie.invalidate(),W.results=[],W.applyResults=null,W.checkError=null}function Be(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 Ve(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 G=new Set([`$$slots`,`$$events`,`$$legacy`]);function He(e,t){let n=O(t,G),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`}]];N(e,j({name:`circle-pause`},()=>n,{get iconNode(){return r}}))}var Ue=new Set([`$$slots`,`$$events`,`$$legacy`]);function We(e,t){let n=O(t,Ue),r=[[`path`,{d:`M7 7h10v10`}],[`path`,{d:`M7 17 17 7`}]];N(e,j({name:`arrow-up-right`},()=>n,{get iconNode(){return r}}))}var K=r(`<span title="Disabled (paused)" class="shrink-0"><!></span>`),Ge=r(`<span class="shrink-0 text-xs uppercase tracking-wide text-amber-600 dark:text-amber-400">disabled</span>`),q=r(`<span class="inline-flex shrink-0 items-center gap-0.5 text-xs text-muted-foreground/80"><!> <span class="tabular-nums"> </span></span>`),Ke=r(`<span class="mt-0.5 line-clamp-2 text-xs leading-4"> </span>`),J=r(`<span class="mt-0.5 line-clamp-2 text-xs italic leading-4 text-muted-foreground/70">No description</span>`),qe=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></button>`);function Je(e,t){i(t,!0);let r=g(t,`selected`,3,!1),s=g(t,`sameContentCount`,3,0),f=x(()=>`Same content as ${s()} other ${s()===1?`installation`:`installations`}`);var p=qe(),h=k(p),v=e=>{var t=K();He(k(t),{class:`mt-0.5 h-4 w-4 text-amber-600 dark:text-amber-400`}),n(t),l(e,t)},y=e=>{Ae(e,{class:`mt-0.5 h-4 w-4 shrink-0 text-muted-foreground`})};c(h,e=>{t.skill.disabled?e(v):e(y,-1)});var b=w(h,2),S=k(b),ee=k(S),C=_(ee,!0),te=w(ee,2),E=e=>{var t=Ge();l(e,t)};c(te,e=>{t.skill.disabled&&e(E)});var O=w(te,2),ne=e=>{var t=q(),r=k(t);We(r,{class:`h-3 w-3`,"aria-hidden":`true`});var i=w(r,2),o=_(i,!0);n(t),D(()=>{T(t,`title`,m(f)),a(o,s())}),l(e,t)};c(O,e=>{s()>0&&e(ne)}),n(S);var A=w(S,2),j=e=>{var n=Ke(),r=_(n,!0);D(()=>a(r,t.skill.description)),l(e,n)},M=e=>{var t=J();l(e,t)};c(A,e=>{t.skill.description?e(j):e(M,-1)}),n(b),n(p),D(e=>{T(p,`data-skill-id`,t.skill.id),T(p,`aria-pressed`,r()),ie(p,1,e),a(C,t.skill.name)},[()=>u(Te(`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`,p,function(...e){t.onclick?.apply(this,e)}),l(e,p),d()}p([`click`]);var Ye=new Set([`$$slots`,`$$events`,`$$legacy`]);function Xe(e,t){let n=O(t,Ye),r=[[`path`,{d:`M12 17V3`}],[`path`,{d:`m6 11 6 6 6-6`}],[`path`,{d:`M19 21H5`}]];N(e,j({name:`arrow-down-to-line`},()=>n,{get iconNode(){return r}}))}var Ze=new Set([`$$slots`,`$$events`,`$$legacy`]);function Qe(e,t){let n=O(t,Ze),r=[[`path`,{d:`M12 2v10`}],[`path`,{d:`M18.4 6.6a9 9 0 1 1-12.77.04`}]];N(e,j({name:`power`},()=>n,{get iconNode(){return r}}))}var $e=new Set([`$$slots`,`$$events`,`$$legacy`]);function et(e,t){let n=O(t,$e),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`}]];N(e,j({name:`shield-check`},()=>n,{get iconNode(){return r}}))}var tt=r(`<div class="flex shrink-0 items-start gap-2 border-b border-border px-4 py-2 text-xs text-destructive" role="alert" data-testid="search-fallback"><span class="min-w-0 flex-1 break-words"> </span> <button class="shrink-0 underline underline-offset-2">Retry</button></div>`),nt=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>`),rt=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>`),it=r(`<span class="text-muted-foreground"> </span>`),at=r(`<span class="text-destructive"> </span>`),ot=r(`<p class="min-w-0 flex-1 text-xs"><span class="font-medium">Applied</span> <!> <!> <!></p>`),st=r(`<span class="font-medium text-primary"> </span>`),ct=r(`<span class="font-medium">All current</span>`),lt=r(`<!> `,1),ut=r(`<p class="min-w-0 flex-1 text-xs"><!> <!> <!> <!></p> <!>`,1),dt=r(`<li class="pl-3 text-xs text-muted-foreground"> </li>`),ft=r(`<li class="flex items-baseline gap-1.5"><span class="min-w-0 flex-1 truncate"> </span> <!></li> <!>`,1),pt=r(`<ul class="mt-1.5 max-h-40 space-y-1 overflow-y-auto text-xs"></ul>`),mt=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>`),ht=r(`<div class="flex flex-col items-start gap-2 px-4 py-6 text-xs text-destructive"><p class="break-words"> </p> <!></div>`),gt=r(`<button class="shrink-0 underline underline-offset-2">Retry</button>`),_t=r(`<div class="flex items-start gap-2 px-4 py-2.5 text-xs text-destructive" role="alert"><span class="min-w-0 flex-1 break-words"> </span> <!></div> <!>`,1),vt=r(`<div class="flex items-center gap-2 px-4 py-6 text-xs text-muted-foreground"><!> Loading skills…</div>`),yt=r(`<div class="flex items-center gap-2 px-4 py-6 text-xs text-muted-foreground" role="status" data-testid="search-loading"><!> Searching skills…</div>`),bt=r(`<p class="px-4 py-6 text-xs text-muted-foreground" data-testid="search-scoped-empty">No skills match in this provider. <button class="underline underline-offset-2">Search all workspaces (⌘K)</button></p>`),xt=r(`<p class="px-4 py-6 text-xs text-muted-foreground">No skills match.</p>`),St=r(`<span class="shrink-0 text-xs uppercase tracking-wide text-amber-600 dark:text-amber-400">disabled</span>`),Ct=r(`<span class="inline-flex shrink-0 items-center gap-0.5 text-xs text-muted-foreground/80"><!> <span class="tabular-nums"> </span></span>`),wt=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-xs leading-4"> </span></span></button>`),Tt=r(`<div class="m-auto flex flex-col items-center justify-center gap-2 px-8 py-10 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>`),Et=r(`<div class="flex h-full items-center justify-center gap-2 text-xs text-muted-foreground"><!> Loading skill…</div>`),Dt=r(`<div class="flex h-full flex-col items-center justify-center gap-2 px-8 text-center"><p class="text-sm font-medium text-destructive">Skill not found</p> <p class="text-xs text-muted-foreground">This skill could not be loaded. It may have been moved, renamed, or deleted.</p> <p class="max-w-md break-all font-mono text-xs text-muted-foreground/70"> </p> <!></div>`),Ot=r(`<h2 class="truncate text-base font-semibold"> </h2>`),kt=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>`),At=r(`<p class="mt-0.5 text-xs leading-5 text-muted-foreground"> </p>`),jt=r(`<!> Save`,1),Mt=r(`<!> Validate`,1),Nt=r(`<!> Valid skill`,1),Pt=r(`<!> Validation issues`,1),Ft=r(`<p class="mt-1 text-xs text-destructive"> </p>`),It=r(`<p class="mt-1 text-xs text-amber-700 dark:text-amber-300"> </p>`),Lt=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>`),Rt=r(`<div><dt class="bg-muted/40 px-2 py-1 text-xs font-medium text-muted-foreground"> </dt> <dd class="break-words px-2 py-1 text-xs"> </dd></div>`),zt=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>`),Bt=r(`<div class="provider-detail-inner flex min-h-0 flex-1 flex-col svelte-9qjypz"><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 uppercase tracking-wide text-muted-foreground">SKILL.md</h3> <div class="prose prose-sm max-w-none overflow-x-auto"></div></section></div></div>`),Vt=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 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-8 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"/> <button type="button" class="absolute right-1 top-1/2 flex h-6 w-6 -translate-y-1/2 items-center justify-center rounded-md text-muted-foreground hover:bg-accent hover:text-foreground" aria-label="Open search config" title="Open search config (search-config.toml)"><!></button></div></header> <!> <!> <div class="min-h-0 flex-1 overflow-y-auto"><!></div></section> <section aria-label="Skill detail"><!></section></div>`);function Ht(r,u){i(u,!0);let p=oe(),g=se(),O=x(()=>p?.()?.wsId),j=x(()=>p?.()?.providerId),N=x(()=>g?.()??{}),F=x(()=>m(N).skill),L=x(()=>m(N).q??``),Te=x(()=>m(N).view??`list`),Ie=fe(le),G=E(null),Ue=E(!1),K=E(null),Ge=E(!1),q=E(null),Ke=E(!1),J=E(!1),qe=E(``),Ye=E(``),Ze=E(null),$e=E(null),Ht=null,Y=x(()=>{if(!m(O)||!m(j))return null;let e=he.safeParse(m(O)),t=ue.safeParse(m(j));return!e.success||!t.success?null:{workspaceId:e.data,providerId:t.data}});A(()=>{m(Y)&&R(m(Y))}),A(()=>{let e=m(L).trim();if(!e)return;let t=setTimeout(()=>void Ce(e),150);return()=>clearTimeout(t)});let Ut=E(re(de.status));A(()=>{let t=de.status,n=e(()=>m(Ut));if(y(Ut,t,!0),n===`connected`||t!==`connected`)return;let r=e(()=>m(L).trim());r?Ce(r):z.target!==null&&z.skills.length===0&&!z.loading&&z.error!==null&&R(z.target)}),A(()=>()=>be());let Wt=!1;A(()=>{Wt||de.status!==`connected`||(Wt=!0,Se())});let Gt=x(()=>{let e=new Map;for(let t of ye.groups){let n=t.members.length-1;for(let r of t.members)e.set(r.id,n)}return e}),Kt=x(()=>I.query===m(L).trim()),qt=x(()=>{let e=m(Y);return e?I.results.filter(t=>t.installations.some(t=>t.workspaceId===e.workspaceId&&t.providerId===e.providerId)):[]}),X=x(()=>m(L).trim()?I.searching?{mode:`searching`}:m(Kt)&&I.error?{mode:`fallback`}:m(Kt)?{mode:`results`,rows:m(qt)}:{mode:`fallback`}:{mode:`full`}),Jt=x(()=>m(X).mode===`fallback`&&m(Kt)?I.error:null);A(()=>{let e=m(Y),t=m(F);if(!e||!t){y(G,null),y(K,null);return}Yt(e,t)});async function Yt(e,t){let n=Ie.issue(),r=me.safeParse(t);if(!r.success){y(G,null),y(K,`Invalid skill id in URL.`);return}y(Ue,!0),y(K,null),y(q,null);try{let t=await we(e,r.data);if(!n.isCurrent())return;y(G,t,!0);let{frontmatter:i}=Me(t.content),a=pe.safeParse(i);y(qe,a.success?a.data.name:t.name,!0),y(Ye,a.success?a.data.description:t.description,!0)}catch(e){if(!n.isCurrent())return;y(G,null),y(K,e instanceof Error?e.message:String(e),!0)}finally{n.isLatest()&&y(Ue,!1)}}let Xt=x(()=>{let e=m(L).trim().toLowerCase(),t=z.skills;return e?t.filter(t=>[t.name,t.description,t.provider].some(t=>t.toLowerCase().includes(e))):t}),Zt=x(()=>m(X).mode===`results`?m(X).rows.length:m(Xt).length),Z=x(()=>m(G)?Me(m(G).content):null),Qt=x(()=>m(Z)?Ne(m(Z).body):``),$t=x(()=>m(Y)!==null&&m(Y).workspaceId!==`~`);function en(e){m(O)&&m(j)&&P(`workspaces.provider`,{wsId:m(O),providerId:m(j)},{...m(N),skill:e,view:`detail`})}function tn(e){if(!m(O)||!m(j))return;let t=z.skills.find(t=>t.name===e);if(!t)return;let{q:n,...r}=m(N);P(`workspaces.provider`,{wsId:m(O),providerId:m(j)},{...r,skill:t.id,view:`detail`})}function nn(e){m(O)&&m(j)&&P(`workspaces.provider`,{wsId:m(O),providerId:m(j)},{...m(N),q:e||void 0},`REPLACE`)}function rn(){m(O)&&m(j)&&(Ht=m(F)??null,P(`workspaces.provider`,{wsId:m(O),providerId:m(j)},{...m(N),view:`list`}))}let an=`list`;A(()=>{let t=m(Te),n=e(()=>an),r=e(()=>Ht);an=t,t===`list`&&n===`detail`&&r&&(Ht=null,(document.querySelector(`button[data-skill-id="${CSS.escape(r)}"]`)??m($e))?.focus())}),A(()=>{m(Te)!==`detail`||m(Ue)||m(G)?.id!==void 0&&m(Ze)?.focus()});async function on(){let e=m(G);if(!e||!m(Y)||m(J))return;y(J,!0);let t=e.disabled?`enable`:`disable`;try{let n=await _e([e.id],t);if(!n)return;let r=n.results.find(t=>t.skillId===e.id);r&&(r.status===`conflict`?B(`${r.name}: ${t} conflict${r.error?` — ${r.error}`:`.`}`):r.status===`failed`?B(`${r.name}: ${t} failed — ${r.error??`unknown error`}`):r.status===`skipped`?B(`${r.name}: already ${t===`enable`?`enabled`:`disabled`}.`):B(`${r.name} ${r.status}.`)),await Yt(m(Y),e.id)}catch(e){B(e instanceof Error?e.message:String(e))}finally{y(J,!1)}}let sn=x(()=>W.results.filter(e=>e.status===`updated`).map(e=>e.skillId)),Q=x(()=>Be(W.results)),$=x(()=>W.applyResults?Ve(W.applyResults):null);A(()=>{m(Y)&&ze()});async function cn(){m(Y)&&!W.checking&&await Le(m(Y))}async function ln(){if(m(Y)&&!W.applying&&m(sn).length!==0)try{let e=await Re(m(Y),m(sn));if(!e)return;let t=Ve(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);B(n.length>0?n.join(` · `):`No changes applied.`),await R(m(Y))}catch(e){B(e instanceof Error?e.message:String(e))}}async function un(){if(m(G)&&m(Y)){y(Ge,!0),y(q,null);try{let e=await xe(m(G).id);e&&y(q,{success:e.success,errors:e.errors,warnings:e.warnings},!0)}catch(e){y(q,{success:!1,errors:[e instanceof Error?e.message:String(e)],warnings:[]},!0)}finally{y(Ge,!1)}}}async function dn(){let e=m(G),t=m(Y),n=m(Z)?.body;if(!e||!t||n===void 0)return;let r=m(qe).trim(),i=m(Ye).trim();if(!r||!i){B(`Name and description cannot be empty.`);return}y(Ke,!0);try{let a=m(Z)?m(Z).frontmatter:{},o=pe.safeParse({...a,name:r,description:i});if(!o.success){B(`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(G,{...e,revision:c.document.revision,name:r,description:i},!0),B(`Saved.`)}catch(e){e instanceof ce&&e.code===`CONFLICT`?B(`This skill changed elsewhere. Reload to view the latest.`,{label:`Reload`,run:()=>{t&&m(G)&&Yt(t,m(G).id)}}):B(e instanceof Error?e.message:String(e))}finally{y(Ke,!1)}}var fn=Vt(),pn=k(fn),mn=k(pn),hn=k(mn),gn=k(hn),_n=_(gn,!0),vn=w(gn,2),yn=e=>{H(e,{class:`h-3.5 w-3.5 shrink-0 animate-spin text-muted-foreground`,title:`Refreshing skills`})},bn=e=>{U(e,{variant:`secondary`,children:(e,t)=>{C();var n=f();D(()=>a(n,m(Zt))),l(e,n)},$$slots:{default:!0}})};c(vn,e=>{z.refreshing||m(X).mode===`searching`?e(yn):e(bn,-1)});var xn=w(vn,2),Sn=k(xn);V(Sn,{variant:`ghost`,size:`icon`,class:`h-7 w-7`,title:`Insights — read-only analysis: duplicates, conflicts, shared resources`,"aria-label":`Insights`,onclick:()=>{m(O)&&m(j)&&P(`workspaces.intelligence`,{wsId:m(O),providerId:m(j)},{})},children:(e,t)=>{Fe(e,{class:`h-3.5 w-3.5`})},$$slots:{default:!0}});var Cn=w(Sn,2);V(Cn,{variant:`ghost`,size:`icon`,class:`h-7 w-7`,title:`Updates — compare installed skills against their upstream sources`,"aria-label":`Updates`,get disabled(){return W.checking},onclick:()=>void cn(),children:(e,t)=>{var n=ae(),r=M(n),i=e=>{H(e,{class:`h-3.5 w-3.5 animate-spin`})},a=e=>{Xe(e,{class:`h-3.5 w-3.5`})};c(r,e=>{W.checking?e(i):e(a,-1)}),l(e,n)},$$slots:{default:!0}}),n(xn),n(hn);var wn=w(hn,2),Tn=k(wn);Oe(Tn,{class:`pointer-events-none absolute left-2 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-muted-foreground`});var En=w(Tn,2);ne(En),te(En,e=>y($e,e),()=>m($e));var Dn=w(En,2),On=k(Dn);ke(On,{class:`h-3.5 w-3.5`}),n(Dn),n(wn),n(mn);var kn=w(mn,2),An=e=>{var t=tt(),r=k(t),i=_(r),s=w(r,2);n(t),D(()=>a(i,`Search unavailable — filtering loaded skills. ${m(Jt)??``}`)),o(`click`,s,()=>void Ce(m(L).trim())),l(e,t)};c(kn,e=>{m(Jt)&&e(An)});var jn=w(kn,2),Mn=e=>{var t=nt(),r=k(t);H(r,{class:`h-3.5 w-3.5 animate-spin`}),C(),n(t),l(e,t)},Nn=e=>{var t=rt(),r=k(t),i=_(r,!0),s=w(r,2);n(t),D(()=>a(i,W.checkError)),o(`click`,s,()=>void cn()),l(e,t)},Pn=e=>{var r=mt(),i=k(r),s=k(i),u=e=>{var t=ot(),r=w(k(t),2),i=e=>{var t=it(),n=_(t);D(()=>a(n,`· ${m($).updated??``} updated`)),l(e,t)};c(r,e=>{m($).updated>0&&e(i)});var o=w(r,2),s=e=>{var t=it(),n=_(t);D(()=>a(n,`· ${m($).current??``} already current`)),l(e,t)};c(o,e=>{m($).current>0&&e(s)});var u=w(o,2),d=e=>{var t=at(),n=_(t);D(()=>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=ut(),r=M(t),i=k(r),o=e=>{var t=st(),n=_(t);D(()=>a(n,`${m(Q).outdated??``} outdated`)),l(e,t)},s=e=>{var t=ct();l(e,t)};c(i,e=>{m(Q).outdated>0?e(o):e(s,-1)});var u=w(i,2),d=e=>{var t=it(),n=_(t);D(()=>a(n,`· ${m(Q).current??``} up to date`)),l(e,t)};c(u,e=>{m(Q).current>0&&e(d)});var f=w(u,2),p=e=>{var t=it(),n=_(t);D(()=>a(n,`· ${m(Q).unavailable??``} unavailable`)),l(e,t)};c(f,e=>{m(Q).unavailable>0&&e(p)});var h=w(f,2),g=e=>{var t=at(),n=_(t);D(()=>a(n,`· ${m(Q).failed??``} failed`)),l(e,t)};c(h,e=>{m(Q).failed>0&&e(g)}),n(r);var v=w(r,2),y=e=>{V(e,{size:`sm`,class:`h-7 gap-1.5 px-2 text-xs`,get disabled(){return W.applying},onclick:()=>void ln(),children:(e,t)=>{var n=lt(),r=M(n),i=e=>{H(e,{class:`h-3.5 w-3.5 animate-spin`})},o=e=>{Xe(e,{class:`h-3.5 w-3.5`})};c(r,e=>{W.applying?e(i):e(o,-1)});var s=w(r);D(()=>a(s,` Update ${m(sn).length??``}`)),l(e,n)},$$slots:{default:!0}})};c(v,e=>{m(sn).length>0&&e(y)}),l(e,t)};c(s,e=>{m($)?e(u):e(d,-1)});var p=w(s,2),h=k(p);Ee(h,{class:`h-3.5 w-3.5`}),n(p),n(i);var g=w(i,2),v=e=>{let r=x(()=>W.applyResults??W.results);var i=pt();t(i,21,()=>m(r),e=>e.skillId,(e,t)=>{var r=ft(),i=M(r),o=k(i),s=_(o,!0),u=w(o,2),d=e=>{U(e,{variant:`secondary`,class:`text-xs`,children:(e,t)=>{C();var n=f();D(()=>a(n,m($)?`reinstalled`:`outdated`)),l(e,n)},$$slots:{default:!0}})},p=e=>{U(e,{variant:`outline`,class:`text-xs`,children:(e,t)=>{C();var n=f(`current`);l(e,n)},$$slots:{default:!0}})},h=e=>{U(e,{variant:`destructive`,class:`text-xs`,children:(e,t)=>{C();var n=f(`failed`);l(e,n)},$$slots:{default:!0}})},g=e=>{U(e,{variant:`outline`,class:`text-xs`,children:(e,t)=>{C();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=w(i,2),y=e=>{var n=dt(),r=_(n,!0);D(()=>a(r,m(t).error)),l(e,n)};c(v,e=>{m(t).error&&e(y)}),D(()=>a(s,m(t).name)),l(e,r)}),n(i),l(e,i)};c(g,e=>{(W.applyResults??W.results)&&e(v)}),n(r),o(`click`,p,()=>ze()),l(e,r)};c(jn,e=>{W.checking?e(Mn):W.checkError?e(Nn,1):(W.results.length>0||W.applyResults)&&e(Pn,2)});var Fn=w(jn,2),In=k(Fn),Ln=e=>{var t=ht(),r=k(t),i=_(r,!0),o=w(r,2),s=e=>{V(e,{variant:`outline`,size:`sm`,class:`h-7 text-xs`,onclick:()=>void R(m(Y)),children:(e,t)=>{C();var n=f(`Retry`);l(e,n)},$$slots:{default:!0}})};c(o,e=>{m(Y)&&e(s)}),n(t),D(()=>a(i,z.error)),l(e,t)},Rn=e=>{var r=_t(),i=M(r),s=k(i),u=_(s,!0),d=w(s,2),f=e=>{var t=gt();o(`click`,t,()=>void R(m(Y))),l(e,t)};c(d,e=>{m(Y)&&e(f)}),n(i);var p=w(i,2);t(p,17,()=>m(Xt),e=>e.id,(e,t)=>{{let n=x(()=>m(t).id===m(F)),r=x(()=>m(Gt).get(m(t).id)??0);Je(e,{get skill(){return m(t)},get selected(){return m(n)},get sameContentCount(){return m(r)},onclick:()=>en(m(t).id)})}}),D(()=>a(u,z.error)),l(e,r)},zn=e=>{var t=vt(),r=k(t);H(r,{class:`h-3.5 w-3.5 animate-spin`}),C(),n(t),l(e,t)},Bn=e=>{var t=yt(),r=k(t);H(r,{class:`h-3.5 w-3.5 animate-spin`}),C(),n(t),l(e,t)},Vn=e=>{var t=ae(),r=M(t),i=e=>{var t=bt(),r=w(k(t));n(t),o(`click`,r,()=>globalThis.dispatchEvent(new KeyboardEvent(`keydown`,{key:`k`,metaKey:!0}))),l(e,t)},a=e=>{var t=xt();l(e,t)};c(r,e=>{I.results.length>0?e(i):e(a,-1)}),l(e,t)},Hn=e=>{var r=ae(),i=M(r);t(i,17,()=>m(X).rows,e=>e.id,(e,t)=>{var r=wt(),i=k(r),s=e=>{He(e,{class:`mt-0.5 h-4 w-4 shrink-0 text-amber-600 dark:text-amber-400`})},u=e=>{Ae(e,{class:`mt-0.5 h-4 w-4 shrink-0 text-muted-foreground`})};c(i,e=>{m(t).disabled?e(s):e(u,-1)});var d=w(i,2),f=k(d),p=k(f),h=_(p,!0),g=w(p,2),v=e=>{var t=St();l(e,t)};c(g,e=>{m(t).disabled&&e(v)});var y=w(g,2),b=e=>{var r=Ct(),i=k(r);We(i,{class:`h-3 w-3`,"aria-hidden":`true`});var o=w(i,2),s=_(o,!0);n(r),D(()=>{T(r,`title`,`Same content as ${m(t).duplicates.length??``} other installation${m(t).duplicates.length===1?``:`s`}`),a(s,m(t).duplicates.length)}),l(e,r)};c(y,e=>{m(t).duplicates.length>0&&e(b)}),n(f);var x=w(f,2),S=_(x,!0);n(d),n(r),D(()=>{T(r,`data-skill-id`,m(t).id),T(r,`aria-pressed`,m(t).id===m(F)),ie(r,1,`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 ${m(t).id===m(F)?`bg-accent text-foreground`:`text-muted-foreground hover:bg-accent/60 hover:text-foreground`}`),a(h,m(t).name),a(S,m(t).description||`No description`)}),o(`click`,r,()=>tn(m(t).name)),l(e,r)}),l(e,r)},Un=e=>{var t=xt();l(e,t)},Wn=e=>{var n=ae(),r=M(n);t(r,17,()=>m(Xt),e=>e.id,(e,t)=>{{let n=x(()=>m(t).id===m(F)),r=x(()=>m(Gt).get(m(t).id)??0);Je(e,{get skill(){return m(t)},get selected(){return m(n)},get sameContentCount(){return m(r)},onclick:()=>en(m(t).id)})}}),l(e,n)};c(In,e=>{z.error&&z.skills.length===0?e(Ln):z.error?e(Rn,1):z.loading?e(zn,2):m(X).mode===`searching`?e(Bn,3):m(X).mode===`results`&&m(X).rows.length===0?e(Vn,4):m(X).mode===`results`?e(Hn,5):m(Xt).length===0?e(Un,6):e(Wn,-1)}),n(Fn),n(pn);var Gn=w(pn,2),Kn=k(Gn),qn=e=>{var t=Tt(),r=k(t);Ae(r,{class:`h-6 w-6`}),C(4),n(t),l(e,t)},Jn=e=>{var t=Et(),r=k(t);H(r,{class:`h-4 w-4 animate-spin`}),C(),n(t),l(e,t)},Yn=e=>{var t=Dt(),r=w(k(t),4),i=_(r,!0),o=w(r,2),s=e=>{V(e,{variant:`outline`,size:`sm`,onclick:()=>Yt(m(Y),m(F)),children:(e,t)=>{C();var n=f(`Retry`);l(e,n)},$$slots:{default:!0}})};c(o,e=>{m(Y)&&m(F)&&e(s)}),n(t),D(()=>a(i,m(K))),l(e,t)},Xn=e=>{let r=x(()=>m($t));var i=Bt(),u=k(i),d=k(u),p=k(d),g=k(p);Pe(g,{class:`h-4 w-4`}),n(p);var b=w(p,2),T=k(b),E=e=>{De(e,{class:`h-8 text-base font-semibold`,"aria-label":`Skill name`,get value(){return m(qe)},set value(e){y(qe,e,!0)}})},O=e=>{var t=Ot(),n=_(t,!0);D(()=>a(n,m(G).name)),l(e,t)};c(T,e=>{m(r)?e(E):e(O,-1)});var ne=w(T,2),A=e=>{var t=kt();h(t),v(t,()=>m(Ye),e=>y(Ye,e)),l(e,t)},j=e=>{var t=At(),n=_(t,!0);D(()=>a(n,m(G).description)),l(e,t)};c(ne,e=>{m(r)?e(A):e(j,-1)}),n(b);var re=w(b,2),N=k(re),oe=e=>{V(e,{size:`sm`,class:`h-8 gap-1.5`,onclick:dn,get disabled(){return m(Ke)},children:(e,t)=>{var n=ae(),r=M(n),i=e=>{var t=jt(),n=M(t);H(n,{class:`h-3.5 w-3.5 animate-spin`}),C(),l(e,t)},a=e=>{var t=f(`Save`);l(e,t)};c(r,e=>{m(Ke)?e(i):e(a,-1)}),l(e,n)},$$slots:{default:!0}})};c(N,e=>{m(r)&&e(oe)});var se=w(N,2);V(se,{variant:`outline`,size:`sm`,class:`h-8 gap-1.5`,onclick:un,get disabled(){return m(Ge)},children:(e,t)=>{var n=Mt(),r=M(n),i=e=>{H(e,{class:`h-3.5 w-3.5 animate-spin`})},a=e=>{et(e,{class:`h-3.5 w-3.5`})};c(r,e=>{m(Ge)?e(i):e(a,-1)}),C(),l(e,n)},$$slots:{default:!0}});var P=w(se,2);{let e=x(()=>m(G).disabled?`default`:`outline`);V(P,{size:`sm`,get variant(){return m(e)},class:`h-8 gap-1.5`,get disabled(){return m(J)},onclick:on,children:(e,t)=>{var n=lt(),r=M(n),i=e=>{H(e,{class:`h-3.5 w-3.5 animate-spin`})},o=e=>{Qe(e,{class:`h-3.5 w-3.5`})};c(r,e=>{m(J)?e(i):e(o,-1)});var s=w(r);D(()=>a(s,` ${m(G).disabled?`Enable`:`Disable`}`)),l(e,n)},$$slots:{default:!0}})}n(re),n(d);var ce=w(d,2),le=k(ce);U(le,{variant:`secondary`,children:(e,t)=>{C();var n=f();D(()=>a(n,m(G).provider)),l(e,n)},$$slots:{default:!0}});var ue=w(le,2);U(ue,{variant:`outline`,children:(e,t)=>{C();var n=f();D(()=>a(n,m(G).directoryName)),l(e,n)},$$slots:{default:!0}});var de=w(ue,2),F=e=>{U(e,{variant:`outline`,class:`text-amber-700 dark:text-amber-300`,children:(e,t)=>{C();var n=f(`Disabled`);l(e,n)},$$slots:{default:!0}})};c(de,e=>{m(G).disabled&&e(F)}),n(ce),n(u),te(u,e=>y(Ze,e),()=>m(Ze));var fe=w(u,2),pe=k(fe),me=e=>{var r=Lt(),i=k(r),o=k(i),s=e=>{var t=Nt(),n=M(t);je(n,{class:`h-4 w-4 text-emerald-600`}),C(),l(e,t)},u=e=>{var t=Pt();et(M(t),{class:`h-4 w-4 text-destructive`}),C(),l(e,t)};c(o,e=>{m(q).success?e(s):e(u,-1)}),n(i);var d=w(i,2);t(d,17,()=>m(q).errors,S,(e,t)=>{var n=Ft(),r=_(n,!0);D(()=>a(r,m(t))),l(e,n)});var f=w(d,2);t(f,17,()=>m(q).warnings,S,(e,t)=>{var n=It(),r=_(n,!0);D(()=>a(r,m(t))),l(e,n)}),n(r),l(e,r)};c(pe,e=>{m(q)&&e(me)});var he=w(pe,2),ge=e=>{var r=zt(),i=w(k(r),2);t(i,21,()=>Object.entries(m(Z).frontmatter),S,(e,t,r)=>{var i=x(()=>s(m(t),2));let o=()=>m(i)[0],c=()=>m(i)[1];var u=Rt();ie(u,1,`grid grid-cols-[120px_minmax(0,1fr)] ${r>0?`border-t border-border`:``}`);var d=k(u),f=_(d,!0),p=w(d,2),h=_(p,!0);n(u),D(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 I=w(he,2),L=w(k(I),2);ee(L,()=>m(Qt),!0),n(L),n(I),n(fe),n(i),o(`click`,p,rn),l(e,i)};c(Kn,e=>{m(F)?m(Ue)?e(Jn,1):m(K)?e(Yn,2):m(G)&&e(Xn,3):e(qn)}),n(Gn),n(fn),D(()=>{ie(pn,1,`provider-list flex min-h-0 flex-col border-r border-border ${m(Te)===`detail`?`provider-list-hidden`:``}`,`svelte-9qjypz`),a(_n,m(j)??`—`),b(En,m(L)),ie(Gn,1,`provider-detail flex min-h-0 flex-col ${m(Te)===`list`?`provider-detail-hidden`:``}`,`svelte-9qjypz`)}),o(`input`,En,e=>nn(e.currentTarget.value)),o(`click`,Dn,()=>void ge()),l(r,fn),d()}p([`input`,`click`]);export{Ht 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 b,gt as x,j as S,k as ee,kt as C,l as te,lt as w,m as T,mt as E,nt as D,o as O,ot as k,p as ne,rt as A,s as j,st as M,ut as re,x as ie,z as ae}from"./CmCJ0SKP.js";import"./xihTtKlq.js";import{t as N}from"./BkEnd9_Z.js";import{a as oe,o as se,s as P}from"./DF_TIB7n.js";import{_ as ce,a as le,b as ue,r as de,s as F,t as fe,u as pe,v as me,x as he}from"./pd7EK5wP.js";import{a as ge,c as I,d as L,f as _e,g as ve,i as R,l as ye,o as be,p as xe,r as Se,s as Ce,t as we,u as z}from"./B8aGNSaH.js";import{n as B}from"./1aUphu7Y.js";import{i as Te,n as V,t as H}from"./DnPeA-9c.js";import{t as Ee}from"./BEPs9Z9s.js";import{t as De}from"./DOjT7y5f.js";import{n as Oe,t as ke}from"./F_BrNiaz.js";import{n as Ae,t as je}from"./ChvFFUWR.js";import{n as Me,t as Ne}from"./s48N5eaK.js";import{t as U}from"./Bl0jjuyR.js";import{t as Pe}from"./DKQHhdJ1.js";import{t as Fe}from"./D8Der6oM.js";var Ie=fe(le),W=re({target:null,checking:!1,applying:!1,checkError:null,results:[],applyResults:null});async function Le(e,t){let n=Ie.issue(),r=()=>n.isCurrent()&&L(W.target,e);W.target=e,W.checking=!0,W.checkError=null,W.results=[],W.applyResults=null;try{let{results:n}=await F().skills.update.check({...e,skillIds:t});if(!r())return;W.results=n}catch(e){if(!r())return;W.checkError=e instanceof Error?e.message:String(e)}finally{n.isLatest()&&(W.checking=!1)}}async function Re(e,t){let n=Ie.issue(),r=()=>n.isCurrent()&&L(W.target,e);W.applying=!0;try{let{results:n}=await F().skills.update.apply({...e,skillIds:t});return r()?(W.applyResults=n,n):null}catch(e){if(!r())return null;throw e}finally{n.isLatest()&&(W.applying=!1)}}function ze(){Ie.invalidate(),W.results=[],W.applyResults=null,W.checkError=null}function Be(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 Ve(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 G=new Set([`$$slots`,`$$events`,`$$legacy`]);function He(e,t){let n=O(t,G),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`}]];N(e,j({name:`circle-pause`},()=>n,{get iconNode(){return r}}))}var Ue=new Set([`$$slots`,`$$events`,`$$legacy`]);function We(e,t){let n=O(t,Ue),r=[[`path`,{d:`M7 7h10v10`}],[`path`,{d:`M7 17 17 7`}]];N(e,j({name:`arrow-up-right`},()=>n,{get iconNode(){return r}}))}var K=r(`<span title="Disabled (paused)" class="shrink-0"><!></span>`),Ge=r(`<span class="shrink-0 text-xs uppercase tracking-wide text-amber-600 dark:text-amber-400">disabled</span>`),q=r(`<span class="inline-flex shrink-0 items-center gap-0.5 text-xs text-muted-foreground/80"><!> <span class="tabular-nums"> </span></span>`),Ke=r(`<span class="mt-0.5 line-clamp-2 text-xs leading-4"> </span>`),J=r(`<span class="mt-0.5 line-clamp-2 text-xs italic leading-4 text-muted-foreground/70">No description</span>`),qe=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></button>`);function Je(e,t){i(t,!0);let r=g(t,`selected`,3,!1),s=g(t,`sameContentCount`,3,0),f=x(()=>`Same content as ${s()} other ${s()===1?`installation`:`installations`}`);var p=qe(),h=k(p),v=e=>{var t=K();He(k(t),{class:`mt-0.5 h-4 w-4 text-amber-600 dark:text-amber-400`}),n(t),l(e,t)},y=e=>{Ae(e,{class:`mt-0.5 h-4 w-4 shrink-0 text-muted-foreground`})};c(h,e=>{t.skill.disabled?e(v):e(y,-1)});var b=w(h,2),S=k(b),ee=k(S),C=_(ee,!0),te=w(ee,2),E=e=>{var t=Ge();l(e,t)};c(te,e=>{t.skill.disabled&&e(E)});var O=w(te,2),ne=e=>{var t=q(),r=k(t);We(r,{class:`h-3 w-3`,"aria-hidden":`true`});var i=w(r,2),o=_(i,!0);n(t),D(()=>{T(t,`title`,m(f)),a(o,s())}),l(e,t)};c(O,e=>{s()>0&&e(ne)}),n(S);var A=w(S,2),j=e=>{var n=Ke(),r=_(n,!0);D(()=>a(r,t.skill.description)),l(e,n)},M=e=>{var t=J();l(e,t)};c(A,e=>{t.skill.description?e(j):e(M,-1)}),n(b),n(p),D(e=>{T(p,`data-skill-id`,t.skill.id),T(p,`aria-pressed`,r()),ie(p,1,e),a(C,t.skill.name)},[()=>u(Te(`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`,p,function(...e){t.onclick?.apply(this,e)}),l(e,p),d()}p([`click`]);var Ye=new Set([`$$slots`,`$$events`,`$$legacy`]);function Xe(e,t){let n=O(t,Ye),r=[[`path`,{d:`M12 17V3`}],[`path`,{d:`m6 11 6 6 6-6`}],[`path`,{d:`M19 21H5`}]];N(e,j({name:`arrow-down-to-line`},()=>n,{get iconNode(){return r}}))}var Ze=new Set([`$$slots`,`$$events`,`$$legacy`]);function Qe(e,t){let n=O(t,Ze),r=[[`path`,{d:`M12 2v10`}],[`path`,{d:`M18.4 6.6a9 9 0 1 1-12.77.04`}]];N(e,j({name:`power`},()=>n,{get iconNode(){return r}}))}var $e=new Set([`$$slots`,`$$events`,`$$legacy`]);function et(e,t){let n=O(t,$e),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`}]];N(e,j({name:`shield-check`},()=>n,{get iconNode(){return r}}))}var tt=r(`<div class="flex shrink-0 items-start gap-2 border-b border-border px-4 py-2 text-xs text-destructive" role="alert" data-testid="search-fallback"><span class="min-w-0 flex-1 break-words"> </span> <button class="shrink-0 underline underline-offset-2">Retry</button></div>`),nt=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>`),rt=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>`),it=r(`<span class="text-muted-foreground"> </span>`),at=r(`<span class="text-destructive"> </span>`),ot=r(`<p class="min-w-0 flex-1 text-xs"><span class="font-medium">Applied</span> <!> <!> <!></p>`),st=r(`<span class="font-medium text-primary"> </span>`),ct=r(`<span class="font-medium">All current</span>`),lt=r(`<!> `,1),ut=r(`<p class="min-w-0 flex-1 text-xs"><!> <!> <!> <!></p> <!>`,1),dt=r(`<li class="pl-3 text-xs text-muted-foreground"> </li>`),ft=r(`<li class="flex items-baseline gap-1.5"><span class="min-w-0 flex-1 truncate"> </span> <!></li> <!>`,1),pt=r(`<ul class="mt-1.5 max-h-40 space-y-1 overflow-y-auto text-xs"></ul>`),mt=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>`),ht=r(`<div class="flex flex-col items-start gap-2 px-4 py-6 text-xs text-destructive"><p class="break-words"> </p> <!></div>`),gt=r(`<button class="shrink-0 underline underline-offset-2">Retry</button>`),_t=r(`<div class="flex items-start gap-2 px-4 py-2.5 text-xs text-destructive" role="alert"><span class="min-w-0 flex-1 break-words"> </span> <!></div> <!>`,1),vt=r(`<div class="flex items-center gap-2 px-4 py-6 text-xs text-muted-foreground"><!> Loading skills…</div>`),yt=r(`<div class="flex items-center gap-2 px-4 py-6 text-xs text-muted-foreground" role="status" data-testid="search-loading"><!> Searching skills…</div>`),bt=r(`<p class="px-4 py-6 text-xs text-muted-foreground" data-testid="search-scoped-empty">No skills match in this provider. <button class="underline underline-offset-2">Search all workspaces (⌘K)</button></p>`),xt=r(`<p class="px-4 py-6 text-xs text-muted-foreground">No skills match.</p>`),St=r(`<span class="shrink-0 text-xs uppercase tracking-wide text-amber-600 dark:text-amber-400">disabled</span>`),Ct=r(`<span class="inline-flex shrink-0 items-center gap-0.5 text-xs text-muted-foreground/80"><!> <span class="tabular-nums"> </span></span>`),wt=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-xs leading-4"> </span></span></button>`),Tt=r(`<div class="m-auto flex flex-col items-center justify-center gap-2 px-8 py-10 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>`),Et=r(`<div class="flex h-full items-center justify-center gap-2 text-xs text-muted-foreground"><!> Loading skill…</div>`),Dt=r(`<div class="flex h-full flex-col items-center justify-center gap-2 px-8 text-center"><p class="text-sm font-medium text-destructive">Skill not found</p> <p class="text-xs text-muted-foreground">This skill could not be loaded. It may have been moved, renamed, or deleted.</p> <p class="max-w-md break-all font-mono text-xs text-muted-foreground/70"> </p> <!></div>`),Ot=r(`<h2 class="truncate text-base font-semibold"> </h2>`),kt=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>`),At=r(`<p class="mt-0.5 text-xs leading-5 text-muted-foreground"> </p>`),jt=r(`<!> Save`,1),Mt=r(`<!> Validate`,1),Nt=r(`<!> Valid skill`,1),Pt=r(`<!> Validation issues`,1),Ft=r(`<p class="mt-1 text-xs text-destructive"> </p>`),It=r(`<p class="mt-1 text-xs text-amber-700 dark:text-amber-300"> </p>`),Lt=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>`),Rt=r(`<div><dt class="bg-muted/40 px-2 py-1 text-xs font-medium text-muted-foreground"> </dt> <dd class="break-words px-2 py-1 text-xs"> </dd></div>`),zt=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>`),Bt=r(`<div class="provider-detail-inner flex min-h-0 flex-1 flex-col svelte-9qjypz"><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 uppercase tracking-wide text-muted-foreground">SKILL.md</h3> <div class="prose prose-sm max-w-none overflow-x-auto"></div></section></div></div>`),Vt=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 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-8 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"/> <button type="button" class="absolute right-1 top-1/2 flex h-6 w-6 -translate-y-1/2 items-center justify-center rounded-md text-muted-foreground hover:bg-accent hover:text-foreground" aria-label="Open search config" title="Open search config (search-config.toml)"><!></button></div></header> <!> <!> <div class="min-h-0 flex-1 overflow-y-auto"><!></div></section> <section aria-label="Skill detail"><!></section></div>`);function Ht(r,u){i(u,!0);let p=oe(),g=se(),O=x(()=>p?.()?.wsId),j=x(()=>p?.()?.providerId),N=x(()=>g?.()??{}),F=x(()=>m(N).skill),L=x(()=>m(N).q??``),Te=x(()=>m(N).view??`list`),Ie=fe(le),G=E(null),Ue=E(!1),K=E(null),Ge=E(!1),q=E(null),Ke=E(!1),J=E(!1),qe=E(``),Ye=E(``),Ze=E(null),$e=E(null),Ht=null,Y=x(()=>{if(!m(O)||!m(j))return null;let e=he.safeParse(m(O)),t=ue.safeParse(m(j));return!e.success||!t.success?null:{workspaceId:e.data,providerId:t.data}});A(()=>{m(Y)&&R(m(Y))}),A(()=>{let e=m(L).trim();if(!e)return;let t=setTimeout(()=>void Ce(e),150);return()=>clearTimeout(t)});let Ut=E(re(de.status));A(()=>{let t=de.status,n=e(()=>m(Ut));if(y(Ut,t,!0),n===`connected`||t!==`connected`)return;let r=e(()=>m(L).trim());r?Ce(r):z.target!==null&&z.skills.length===0&&!z.loading&&z.error!==null&&R(z.target)}),A(()=>()=>be());let Wt=!1;A(()=>{Wt||de.status!==`connected`||(Wt=!0,Se())});let Gt=x(()=>{let e=new Map;for(let t of ye.groups){let n=t.members.length-1;for(let r of t.members)e.set(r.id,n)}return e}),Kt=x(()=>I.query===m(L).trim()),qt=x(()=>{let e=m(Y);return e?I.results.filter(t=>t.installations.some(t=>t.workspaceId===e.workspaceId&&t.providerId===e.providerId)):[]}),X=x(()=>m(L).trim()?I.searching?{mode:`searching`}:m(Kt)&&I.error?{mode:`fallback`}:m(Kt)?{mode:`results`,rows:m(qt)}:{mode:`fallback`}:{mode:`full`}),Jt=x(()=>m(X).mode===`fallback`&&m(Kt)?I.error:null);A(()=>{let e=m(Y),t=m(F);if(!e||!t){y(G,null),y(K,null);return}Yt(e,t)});async function Yt(e,t){let n=Ie.issue(),r=me.safeParse(t);if(!r.success){y(G,null),y(K,`Invalid skill id in URL.`);return}y(Ue,!0),y(K,null),y(q,null);try{let t=await we(e,r.data);if(!n.isCurrent())return;y(G,t,!0);let{frontmatter:i}=Me(t.content),a=pe.safeParse(i);y(qe,a.success?a.data.name:t.name,!0),y(Ye,a.success?a.data.description:t.description,!0)}catch(e){if(!n.isCurrent())return;y(G,null),y(K,e instanceof Error?e.message:String(e),!0)}finally{n.isLatest()&&y(Ue,!1)}}let Xt=x(()=>{let e=m(L).trim().toLowerCase(),t=z.skills;return e?t.filter(t=>[t.name,t.description,t.provider].some(t=>t.toLowerCase().includes(e))):t}),Zt=x(()=>m(X).mode===`results`?m(X).rows.length:m(Xt).length),Z=x(()=>m(G)?Me(m(G).content):null),Qt=x(()=>m(Z)?Ne(m(Z).body):``),$t=x(()=>m(Y)!==null&&m(Y).workspaceId!==`~`);function en(e){m(O)&&m(j)&&P(`workspaces.provider`,{wsId:m(O),providerId:m(j)},{...m(N),skill:e,view:`detail`})}function tn(e){if(!m(O)||!m(j))return;let t=z.skills.find(t=>t.name===e);if(!t)return;let{q:n,...r}=m(N);P(`workspaces.provider`,{wsId:m(O),providerId:m(j)},{...r,skill:t.id,view:`detail`})}function nn(e){m(O)&&m(j)&&P(`workspaces.provider`,{wsId:m(O),providerId:m(j)},{...m(N),q:e||void 0},`REPLACE`)}function rn(){m(O)&&m(j)&&(Ht=m(F)??null,P(`workspaces.provider`,{wsId:m(O),providerId:m(j)},{...m(N),view:`list`}))}let an=`list`;A(()=>{let t=m(Te),n=e(()=>an),r=e(()=>Ht);an=t,t===`list`&&n===`detail`&&r&&(Ht=null,(document.querySelector(`button[data-skill-id="${CSS.escape(r)}"]`)??m($e))?.focus())}),A(()=>{m(Te)!==`detail`||m(Ue)||m(G)?.id!==void 0&&m(Ze)?.focus()});async function on(){let e=m(G);if(!e||!m(Y)||m(J))return;y(J,!0);let t=e.disabled?`enable`:`disable`;try{let n=await _e([e.id],t);if(!n)return;let r=n.results.find(t=>t.skillId===e.id);r&&(r.status===`conflict`?B(`${r.name}: ${t} conflict${r.error?` — ${r.error}`:`.`}`):r.status===`failed`?B(`${r.name}: ${t} failed — ${r.error??`unknown error`}`):r.status===`skipped`?B(`${r.name}: already ${t===`enable`?`enabled`:`disabled`}.`):B(`${r.name} ${r.status}.`)),await Yt(m(Y),e.id)}catch(e){B(e instanceof Error?e.message:String(e))}finally{y(J,!1)}}let sn=x(()=>W.results.filter(e=>e.status===`updated`).map(e=>e.skillId)),Q=x(()=>Be(W.results)),$=x(()=>W.applyResults?Ve(W.applyResults):null);A(()=>{m(Y)&&ze()});async function cn(){m(Y)&&!W.checking&&await Le(m(Y))}async function ln(){if(m(Y)&&!W.applying&&m(sn).length!==0)try{let e=await Re(m(Y),m(sn));if(!e)return;let t=Ve(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);B(n.length>0?n.join(` · `):`No changes applied.`),await R(m(Y))}catch(e){B(e instanceof Error?e.message:String(e))}}async function un(){if(m(G)&&m(Y)){y(Ge,!0),y(q,null);try{let e=await xe(m(G).id);e&&y(q,{success:e.success,errors:e.errors,warnings:e.warnings},!0)}catch(e){y(q,{success:!1,errors:[e instanceof Error?e.message:String(e)],warnings:[]},!0)}finally{y(Ge,!1)}}}async function dn(){let e=m(G),t=m(Y),n=m(Z)?.body;if(!e||!t||n===void 0)return;let r=m(qe).trim(),i=m(Ye).trim();if(!r||!i){B(`Name and description cannot be empty.`);return}y(Ke,!0);try{let a=m(Z)?m(Z).frontmatter:{},o=pe.safeParse({...a,name:r,description:i});if(!o.success){B(`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(G,{...e,revision:c.document.revision,name:r,description:i},!0),B(`Saved.`)}catch(e){e instanceof ce&&e.code===`CONFLICT`?B(`This skill changed elsewhere. Reload to view the latest.`,{label:`Reload`,run:()=>{t&&m(G)&&Yt(t,m(G).id)}}):B(e instanceof Error?e.message:String(e))}finally{y(Ke,!1)}}var fn=Vt(),pn=k(fn),mn=k(pn),hn=k(mn),gn=k(hn),_n=_(gn,!0),vn=w(gn,2),yn=e=>{H(e,{class:`h-3.5 w-3.5 shrink-0 animate-spin text-muted-foreground`,title:`Refreshing skills`})},bn=e=>{U(e,{variant:`secondary`,children:(e,t)=>{C();var n=f();D(()=>a(n,m(Zt))),l(e,n)},$$slots:{default:!0}})};c(vn,e=>{z.refreshing||m(X).mode===`searching`?e(yn):e(bn,-1)});var xn=w(vn,2),Sn=k(xn);V(Sn,{variant:`ghost`,size:`icon`,class:`h-7 w-7`,title:`Insights — read-only analysis: duplicates, conflicts, shared resources`,"aria-label":`Insights`,onclick:()=>{m(O)&&m(j)&&P(`workspaces.intelligence`,{wsId:m(O),providerId:m(j)},{})},children:(e,t)=>{Fe(e,{class:`h-3.5 w-3.5`})},$$slots:{default:!0}});var Cn=w(Sn,2);V(Cn,{variant:`ghost`,size:`icon`,class:`h-7 w-7`,title:`Updates — compare installed skills against their upstream sources`,"aria-label":`Updates`,get disabled(){return W.checking},onclick:()=>void cn(),children:(e,t)=>{var n=ae(),r=M(n),i=e=>{H(e,{class:`h-3.5 w-3.5 animate-spin`})},a=e=>{Xe(e,{class:`h-3.5 w-3.5`})};c(r,e=>{W.checking?e(i):e(a,-1)}),l(e,n)},$$slots:{default:!0}}),n(xn),n(hn);var wn=w(hn,2),Tn=k(wn);Oe(Tn,{class:`pointer-events-none absolute left-2 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-muted-foreground`});var En=w(Tn,2);ne(En),te(En,e=>y($e,e),()=>m($e));var Dn=w(En,2),On=k(Dn);ke(On,{class:`h-3.5 w-3.5`}),n(Dn),n(wn),n(mn);var kn=w(mn,2),An=e=>{var t=tt(),r=k(t),i=_(r),s=w(r,2);n(t),D(()=>a(i,`Search unavailable — filtering loaded skills. ${m(Jt)??``}`)),o(`click`,s,()=>void Ce(m(L).trim())),l(e,t)};c(kn,e=>{m(Jt)&&e(An)});var jn=w(kn,2),Mn=e=>{var t=nt(),r=k(t);H(r,{class:`h-3.5 w-3.5 animate-spin`}),C(),n(t),l(e,t)},Nn=e=>{var t=rt(),r=k(t),i=_(r,!0),s=w(r,2);n(t),D(()=>a(i,W.checkError)),o(`click`,s,()=>void cn()),l(e,t)},Pn=e=>{var r=mt(),i=k(r),s=k(i),u=e=>{var t=ot(),r=w(k(t),2),i=e=>{var t=it(),n=_(t);D(()=>a(n,`· ${m($).updated??``} updated`)),l(e,t)};c(r,e=>{m($).updated>0&&e(i)});var o=w(r,2),s=e=>{var t=it(),n=_(t);D(()=>a(n,`· ${m($).current??``} already current`)),l(e,t)};c(o,e=>{m($).current>0&&e(s)});var u=w(o,2),d=e=>{var t=at(),n=_(t);D(()=>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=ut(),r=M(t),i=k(r),o=e=>{var t=st(),n=_(t);D(()=>a(n,`${m(Q).outdated??``} outdated`)),l(e,t)},s=e=>{var t=ct();l(e,t)};c(i,e=>{m(Q).outdated>0?e(o):e(s,-1)});var u=w(i,2),d=e=>{var t=it(),n=_(t);D(()=>a(n,`· ${m(Q).current??``} up to date`)),l(e,t)};c(u,e=>{m(Q).current>0&&e(d)});var f=w(u,2),p=e=>{var t=it(),n=_(t);D(()=>a(n,`· ${m(Q).unavailable??``} unavailable`)),l(e,t)};c(f,e=>{m(Q).unavailable>0&&e(p)});var h=w(f,2),g=e=>{var t=at(),n=_(t);D(()=>a(n,`· ${m(Q).failed??``} failed`)),l(e,t)};c(h,e=>{m(Q).failed>0&&e(g)}),n(r);var v=w(r,2),y=e=>{V(e,{size:`sm`,class:`h-7 gap-1.5 px-2 text-xs`,get disabled(){return W.applying},onclick:()=>void ln(),children:(e,t)=>{var n=lt(),r=M(n),i=e=>{H(e,{class:`h-3.5 w-3.5 animate-spin`})},o=e=>{Xe(e,{class:`h-3.5 w-3.5`})};c(r,e=>{W.applying?e(i):e(o,-1)});var s=w(r);D(()=>a(s,` Update ${m(sn).length??``}`)),l(e,n)},$$slots:{default:!0}})};c(v,e=>{m(sn).length>0&&e(y)}),l(e,t)};c(s,e=>{m($)?e(u):e(d,-1)});var p=w(s,2),h=k(p);Ee(h,{class:`h-3.5 w-3.5`}),n(p),n(i);var g=w(i,2),v=e=>{let r=x(()=>W.applyResults??W.results);var i=pt();t(i,21,()=>m(r),e=>e.skillId,(e,t)=>{var r=ft(),i=M(r),o=k(i),s=_(o,!0),u=w(o,2),d=e=>{U(e,{variant:`secondary`,class:`text-xs`,children:(e,t)=>{C();var n=f();D(()=>a(n,m($)?`reinstalled`:`outdated`)),l(e,n)},$$slots:{default:!0}})},p=e=>{U(e,{variant:`outline`,class:`text-xs`,children:(e,t)=>{C();var n=f(`current`);l(e,n)},$$slots:{default:!0}})},h=e=>{U(e,{variant:`destructive`,class:`text-xs`,children:(e,t)=>{C();var n=f(`failed`);l(e,n)},$$slots:{default:!0}})},g=e=>{U(e,{variant:`outline`,class:`text-xs`,children:(e,t)=>{C();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=w(i,2),y=e=>{var n=dt(),r=_(n,!0);D(()=>a(r,m(t).error)),l(e,n)};c(v,e=>{m(t).error&&e(y)}),D(()=>a(s,m(t).name)),l(e,r)}),n(i),l(e,i)};c(g,e=>{(W.applyResults??W.results)&&e(v)}),n(r),o(`click`,p,()=>ze()),l(e,r)};c(jn,e=>{W.checking?e(Mn):W.checkError?e(Nn,1):(W.results.length>0||W.applyResults)&&e(Pn,2)});var Fn=w(jn,2),In=k(Fn),Ln=e=>{var t=ht(),r=k(t),i=_(r,!0),o=w(r,2),s=e=>{V(e,{variant:`outline`,size:`sm`,class:`h-7 text-xs`,onclick:()=>void R(m(Y)),children:(e,t)=>{C();var n=f(`Retry`);l(e,n)},$$slots:{default:!0}})};c(o,e=>{m(Y)&&e(s)}),n(t),D(()=>a(i,z.error)),l(e,t)},Rn=e=>{var r=_t(),i=M(r),s=k(i),u=_(s,!0),d=w(s,2),f=e=>{var t=gt();o(`click`,t,()=>void R(m(Y))),l(e,t)};c(d,e=>{m(Y)&&e(f)}),n(i);var p=w(i,2);t(p,17,()=>m(Xt),e=>e.id,(e,t)=>{{let n=x(()=>m(t).id===m(F)),r=x(()=>m(Gt).get(m(t).id)??0);Je(e,{get skill(){return m(t)},get selected(){return m(n)},get sameContentCount(){return m(r)},onclick:()=>en(m(t).id)})}}),D(()=>a(u,z.error)),l(e,r)},zn=e=>{var t=vt(),r=k(t);H(r,{class:`h-3.5 w-3.5 animate-spin`}),C(),n(t),l(e,t)},Bn=e=>{var t=yt(),r=k(t);H(r,{class:`h-3.5 w-3.5 animate-spin`}),C(),n(t),l(e,t)},Vn=e=>{var t=ae(),r=M(t),i=e=>{var t=bt(),r=w(k(t));n(t),o(`click`,r,()=>globalThis.dispatchEvent(new KeyboardEvent(`keydown`,{key:`k`,metaKey:!0}))),l(e,t)},a=e=>{var t=xt();l(e,t)};c(r,e=>{I.results.length>0?e(i):e(a,-1)}),l(e,t)},Hn=e=>{var r=ae(),i=M(r);t(i,17,()=>m(X).rows,e=>e.id,(e,t)=>{var r=wt(),i=k(r),s=e=>{He(e,{class:`mt-0.5 h-4 w-4 shrink-0 text-amber-600 dark:text-amber-400`})},u=e=>{Ae(e,{class:`mt-0.5 h-4 w-4 shrink-0 text-muted-foreground`})};c(i,e=>{m(t).disabled?e(s):e(u,-1)});var d=w(i,2),f=k(d),p=k(f),h=_(p,!0),g=w(p,2),v=e=>{var t=St();l(e,t)};c(g,e=>{m(t).disabled&&e(v)});var y=w(g,2),b=e=>{var r=Ct(),i=k(r);We(i,{class:`h-3 w-3`,"aria-hidden":`true`});var o=w(i,2),s=_(o,!0);n(r),D(()=>{T(r,`title`,`Same content as ${m(t).duplicates.length??``} other installation${m(t).duplicates.length===1?``:`s`}`),a(s,m(t).duplicates.length)}),l(e,r)};c(y,e=>{m(t).duplicates.length>0&&e(b)}),n(f);var x=w(f,2),S=_(x,!0);n(d),n(r),D(()=>{T(r,`data-skill-id`,m(t).id),T(r,`aria-pressed`,m(t).id===m(F)),ie(r,1,`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 ${m(t).id===m(F)?`bg-accent text-foreground`:`text-muted-foreground hover:bg-accent/60 hover:text-foreground`}`),a(h,m(t).name),a(S,m(t).description||`No description`)}),o(`click`,r,()=>tn(m(t).name)),l(e,r)}),l(e,r)},Un=e=>{var t=xt();l(e,t)},Wn=e=>{var n=ae(),r=M(n);t(r,17,()=>m(Xt),e=>e.id,(e,t)=>{{let n=x(()=>m(t).id===m(F)),r=x(()=>m(Gt).get(m(t).id)??0);Je(e,{get skill(){return m(t)},get selected(){return m(n)},get sameContentCount(){return m(r)},onclick:()=>en(m(t).id)})}}),l(e,n)};c(In,e=>{z.error&&z.skills.length===0?e(Ln):z.error?e(Rn,1):z.loading?e(zn,2):m(X).mode===`searching`?e(Bn,3):m(X).mode===`results`&&m(X).rows.length===0?e(Vn,4):m(X).mode===`results`?e(Hn,5):m(Xt).length===0?e(Un,6):e(Wn,-1)}),n(Fn),n(pn);var Gn=w(pn,2),Kn=k(Gn),qn=e=>{var t=Tt(),r=k(t);Ae(r,{class:`h-6 w-6`}),C(4),n(t),l(e,t)},Jn=e=>{var t=Et(),r=k(t);H(r,{class:`h-4 w-4 animate-spin`}),C(),n(t),l(e,t)},Yn=e=>{var t=Dt(),r=w(k(t),4),i=_(r,!0),o=w(r,2),s=e=>{V(e,{variant:`outline`,size:`sm`,onclick:()=>Yt(m(Y),m(F)),children:(e,t)=>{C();var n=f(`Retry`);l(e,n)},$$slots:{default:!0}})};c(o,e=>{m(Y)&&m(F)&&e(s)}),n(t),D(()=>a(i,m(K))),l(e,t)},Xn=e=>{let r=x(()=>m($t));var i=Bt(),u=k(i),d=k(u),p=k(d),g=k(p);Pe(g,{class:`h-4 w-4`}),n(p);var b=w(p,2),T=k(b),E=e=>{De(e,{class:`h-8 text-base font-semibold`,"aria-label":`Skill name`,get value(){return m(qe)},set value(e){y(qe,e,!0)}})},O=e=>{var t=Ot(),n=_(t,!0);D(()=>a(n,m(G).name)),l(e,t)};c(T,e=>{m(r)?e(E):e(O,-1)});var ne=w(T,2),A=e=>{var t=kt();h(t),v(t,()=>m(Ye),e=>y(Ye,e)),l(e,t)},j=e=>{var t=At(),n=_(t,!0);D(()=>a(n,m(G).description)),l(e,t)};c(ne,e=>{m(r)?e(A):e(j,-1)}),n(b);var re=w(b,2),N=k(re),oe=e=>{V(e,{size:`sm`,class:`h-8 gap-1.5`,onclick:dn,get disabled(){return m(Ke)},children:(e,t)=>{var n=ae(),r=M(n),i=e=>{var t=jt(),n=M(t);H(n,{class:`h-3.5 w-3.5 animate-spin`}),C(),l(e,t)},a=e=>{var t=f(`Save`);l(e,t)};c(r,e=>{m(Ke)?e(i):e(a,-1)}),l(e,n)},$$slots:{default:!0}})};c(N,e=>{m(r)&&e(oe)});var se=w(N,2);V(se,{variant:`outline`,size:`sm`,class:`h-8 gap-1.5`,onclick:un,get disabled(){return m(Ge)},children:(e,t)=>{var n=Mt(),r=M(n),i=e=>{H(e,{class:`h-3.5 w-3.5 animate-spin`})},a=e=>{et(e,{class:`h-3.5 w-3.5`})};c(r,e=>{m(Ge)?e(i):e(a,-1)}),C(),l(e,n)},$$slots:{default:!0}});var P=w(se,2);{let e=x(()=>m(G).disabled?`default`:`outline`);V(P,{size:`sm`,get variant(){return m(e)},class:`h-8 gap-1.5`,get disabled(){return m(J)},onclick:on,children:(e,t)=>{var n=lt(),r=M(n),i=e=>{H(e,{class:`h-3.5 w-3.5 animate-spin`})},o=e=>{Qe(e,{class:`h-3.5 w-3.5`})};c(r,e=>{m(J)?e(i):e(o,-1)});var s=w(r);D(()=>a(s,` ${m(G).disabled?`Enable`:`Disable`}`)),l(e,n)},$$slots:{default:!0}})}n(re),n(d);var ce=w(d,2),le=k(ce);U(le,{variant:`secondary`,children:(e,t)=>{C();var n=f();D(()=>a(n,m(G).provider)),l(e,n)},$$slots:{default:!0}});var ue=w(le,2);U(ue,{variant:`outline`,children:(e,t)=>{C();var n=f();D(()=>a(n,m(G).directoryName)),l(e,n)},$$slots:{default:!0}});var de=w(ue,2),F=e=>{U(e,{variant:`outline`,class:`text-amber-700 dark:text-amber-300`,children:(e,t)=>{C();var n=f(`Disabled`);l(e,n)},$$slots:{default:!0}})};c(de,e=>{m(G).disabled&&e(F)}),n(ce),n(u),te(u,e=>y(Ze,e),()=>m(Ze));var fe=w(u,2),pe=k(fe),me=e=>{var r=Lt(),i=k(r),o=k(i),s=e=>{var t=Nt(),n=M(t);je(n,{class:`h-4 w-4 text-emerald-600`}),C(),l(e,t)},u=e=>{var t=Pt();et(M(t),{class:`h-4 w-4 text-destructive`}),C(),l(e,t)};c(o,e=>{m(q).success?e(s):e(u,-1)}),n(i);var d=w(i,2);t(d,17,()=>m(q).errors,S,(e,t)=>{var n=Ft(),r=_(n,!0);D(()=>a(r,m(t))),l(e,n)});var f=w(d,2);t(f,17,()=>m(q).warnings,S,(e,t)=>{var n=It(),r=_(n,!0);D(()=>a(r,m(t))),l(e,n)}),n(r),l(e,r)};c(pe,e=>{m(q)&&e(me)});var he=w(pe,2),ge=e=>{var r=zt(),i=w(k(r),2);t(i,21,()=>Object.entries(m(Z).frontmatter),S,(e,t,r)=>{var i=x(()=>s(m(t),2));let o=()=>m(i)[0],c=()=>m(i)[1];var u=Rt();ie(u,1,`grid grid-cols-[120px_minmax(0,1fr)] ${r>0?`border-t border-border`:``}`);var d=k(u),f=_(d,!0),p=w(d,2),h=_(p,!0);n(u),D(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 I=w(he,2),L=w(k(I),2);ee(L,()=>m(Qt),!0),n(L),n(I),n(fe),n(i),o(`click`,p,rn),l(e,i)};c(Kn,e=>{m(F)?m(Ue)?e(Jn,1):m(K)?e(Yn,2):m(G)&&e(Xn,3):e(qn)}),n(Gn),n(fn),D(()=>{ie(pn,1,`provider-list flex min-h-0 flex-col border-r border-border ${m(Te)===`detail`?`provider-list-hidden`:``}`,`svelte-9qjypz`),a(_n,m(j)??`—`),b(En,m(L)),ie(Gn,1,`provider-detail flex min-h-0 flex-col ${m(Te)===`list`?`provider-detail-hidden`:``}`,`svelte-9qjypz`)}),o(`input`,En,e=>nn(e.currentTarget.value)),o(`click`,Dn,()=>void ge()),l(r,fn),d()}p([`input`,`click`]);export{Ht as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{$ as e,Q as t,X as n,Z as r,ft as i,mt as a,r as o,t as s,vt as c}from"./CmCJ0SKP.js";var l=class{constructor(e,t){this.status=e,this.body=typeof t==`string`?{message:t}:t||{message:`Error: ${e}`}}toString(){return JSON.stringify(this.body)}},u=class{constructor(e,t){try{new Headers({location:t})}catch{throw Error(`Invalid redirect location ${JSON.stringify(t)}: this string contains characters that cannot be used in HTTP headers`)}this.status=e,this.location=t}},d=class extends Error{constructor(e,t,n){super(n),this.status=e,this.text=t}};new URL(`sveltekit-internal://`);function f(e,t){return e===`/`||t===`ignore`?e:t===`never`?e.endsWith(`/`)?e.slice(0,-1):e:t===`always`&&!e.endsWith(`/`)?e+`/`:e}function p(e){return e.split(`%25`).map(decodeURI).join(`%25`)}function ee(e){for(let t in e)e[t]=decodeURIComponent(e[t]);return e}function m({href:e}){return e.split(`#`)[0]}function h(){}function g(...e){let t=5381;for(let n of e)if(typeof n==`string`){let e=n.length;for(;e;)t=t*33^n.charCodeAt(--e)}else if(ArrayBuffer.isView(n)){let e=new Uint8Array(n.buffer,n.byteOffset,n.byteLength),r=e.length;for(;r;)t=t*33^e[--r]}else throw TypeError(`value must be a string or TypedArray`);return(t>>>0).toString(36)}new TextEncoder;function _(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}var te=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||`GET`)!==`GET`&&v.delete(b(e)),te(e,t));var v=new Map;function y(e,t){let n=b(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:e,...t}=JSON.parse(r.textContent);r.getAttribute(`data-b64`)!==null&&(e=_(e));let i=r.getAttribute(`data-ttl`);return i&&v.set(n,{body:e,init:t,ttl:1e3*Number(i)}),Promise.resolve(new Response(e,t))}return window.fetch(e,t)}function ne(e,t,n){if(v.size>0){let t=b(e,n),r=v.get(t);if(r){if(performance.now()<r.ttl&&[`default`,`force-cache`,`only-if-cached`,void 0].includes(n?.cache))return new Response(r.body,r.init);v.delete(t)}}return window.fetch(t,n)}function b(e,t){let n=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){let e=[];t.headers&&e.push([...new Headers(t.headers)].join(`,`)),t.body&&(typeof t.body==`string`||ArrayBuffer.isView(t.body))&&e.push(t.body),n+=`[data-hash="${g(...e)}"]`}return n}var re=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/,ie=/^\/\((?:[^)]+)\)$/;function ae(e){let t=[];return{pattern:e===`/`||ie.test(e)?/^\/$/:RegExp(`^${se(e).map(e=>{let n=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(e);if(n)return t.push({name:n[1],matcher:n[2],optional:!1,rest:!0,chained:!0}),`(?:/([^]*))?`;let r=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(e);if(r)return t.push({name:r[1],matcher:r[2],optional:!0,rest:!1,chained:!0}),`(?:/([^/]+))?`;if(!e)return;let i=e.split(/\[(.+?)\](?!\])/);return`/`+i.map((e,n)=>{if(n%2){if(e.startsWith(`x+`))return le(String.fromCharCode(parseInt(e.slice(2),16)));if(e.startsWith(`u+`))return le(String.fromCharCode(...e.slice(2).split(`-`).map(e=>parseInt(e,16))));let[,r,a,o,s]=re.exec(e);return t.push({name:o,matcher:s,optional:!!r,rest:!!a,chained:a?n===1&&i[0]===``:!1}),a?`([^]*?)`:r?`([^/]*)?`:`([^/]+?)`}return le(e)}).join(``)}).join(``)}/?$`),params:t}}function oe(e){return e!==``&&!/^\([^)]+\)$/.test(e)}function se(e){return e.slice(1).split(`/`).filter(oe)}function ce(e,t,n){let r={},i=e.slice(1),a=i.filter(e=>e!==void 0),o=0;for(let e=0;e<t.length;e+=1){let s=t[e],c=i[e-o];if(s.chained&&s.rest&&o&&(c=i.slice(e-o,e+1).filter(e=>e).join(`/`),o=0),c===void 0){if(s.rest)c=``;else continue}if(!s.matcher||n[s.matcher](c)){r[s.name]=c;let n=t[e+1],l=i[e+1];n&&!n.rest&&n.optional&&l&&s.chained&&(o=0),!n&&!l&&Object.keys(r).length===a.length&&(o=0);continue}if(s.optional&&s.chained){o++;continue}return}if(!o)return r}function le(e){return e.normalize().replace(/[[\]]/g,`\\$&`).replace(/%/g,`%25`).replace(/\//g,`%2[Ff]`).replace(/\?/g,`%3[Ff]`).replace(/#/g,`%23`).replace(/[.*+?^${}()|\\]/g,`\\$&`)}function ue({nodes:e,server_loads:t,dictionary:n,matchers:r}){let i=new Set(t);return Object.entries(n).map(([t,[n,i,s]])=>{let{pattern:c,params:l}=ae(t),u={id:t,exec:e=>{let t=c.exec(e);if(t)return ce(t,l,r)},errors:[1,...s||[]].map(t=>e[t]),layouts:[0,...i||[]].map(o),leaf:a(n)};return u.errors.length=u.layouts.length=Math.max(u.errors.length,u.layouts.length),u});function a(t){let n=t<0;return n&&(t=~t),[n,e[t]]}function o(t){return t===void 0?t:[i.has(t),e[t]]}}function de(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function fe(e,t,n=JSON.stringify){let r=n(t);try{sessionStorage[e]=r}catch{}}var x=globalThis.__sveltekit_17lm4aa?.base??``,pe=globalThis.__sveltekit_17lm4aa?.assets??x??``,me=`1790851371450`,he=`sveltekit:snapshot`,ge=`sveltekit:scroll`,_e=`sveltekit:states`,ve=`sveltekit:pageurl`,S=`sveltekit:history`,C=`sveltekit:navigation`,w={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},T=location.origin;function ye(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){let e=document.getElementsByTagName(`base`);t=e.length?e[0].href:document.URL}return new URL(e,t)}function E(){return{x:pageXOffset,y:pageYOffset}}function D(e,t){return e.getAttribute(`data-sveltekit-${t}`)}var be={...w,"":w.hover};function xe(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function Se(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()===`A`&&e.hasAttribute(`href`))return e;e=xe(e)}}function Ce(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){let e=location.hash.split(`#`)[1]||`/`;r.hash=`#${e}${r.hash}`}}catch{}let i=e instanceof SVGAElement?e.target.baseVal:e.target,a=!r||!!i||k(r,t,n)||(e.getAttribute(`rel`)||``).split(/\s+/).includes(`external`),o=r?.origin===T&&e.hasAttribute(`download`);return{url:r,external:a,target:i,download:o}}function O(e){let t=null,n=null,r=null,i=null,a=null,o=null,s=e;for(;s&&s!==document.documentElement;)r===null&&(r=D(s,`preload-code`)),i===null&&(i=D(s,`preload-data`)),t===null&&(t=D(s,`keepfocus`)),n===null&&(n=D(s,`noscroll`)),a===null&&(a=D(s,`reload`)),o===null&&(o=D(s,`replacestate`)),s=xe(s);function c(e){switch(e){case``:case`true`:return!0;case`off`:case`false`:return!1;default:return}}return{preload_code:be[r??`off`],preload_data:be[i??`off`],keepfocus:c(t),noscroll:c(n),reload:c(a),replace_state:c(o)}}function we(e){let t=c(e),n=!0;function r(){n=!0,t.update(e=>e)}function i(e){n=!1,t.set(e)}function a(e){let r;return t.subscribe(t=>{(r===void 0||n&&t!==r)&&e(r=t)})}return{notify:r,set:i,subscribe:a}}var Te={v:h};function Ee(){let{set:e,subscribe:t}=c(!1),n;async function r(){clearTimeout(n);try{let t=await fetch(`${pe}/_app/version.json`,{headers:{pragma:`no-cache`,"cache-control":`no-cache`}});if(!t.ok)return!1;let r=(await t.json()).version!==me;return r&&(e(!0),Te.v(),clearTimeout(n)),r}catch{return!1}}return{subscribe:t,check:r}}function k(e,t,n){return e.origin!==T||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function De(e){}var Oe=2**32-1-1,ke=Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);function Ae(e){let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null||Object.getPrototypeOf(t)===null||Object.getOwnPropertyNames(t).sort().join(`\0`)===ke}function je(e){return Object.prototype.toString.call(e).slice(8,-1)}function Me(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.getOwnPropertyDescriptor(e,t).enumerable)}function Ne(e){return!(!Number.isInteger(e)||e<0||e>Oe)}function Pe(e){if(e.length===0||e.length>1&&e.charCodeAt(0)===48)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<48||n>57)return!1}return Ne(+e)}function Fe(e){for(var t=e.length-1;t>=0&&!Pe(e[t]);t--);return t+1}function Ie(e){let t=Object.keys(e);return t.length=Fe(t),t}Uint8Array.fromBase64,typeof process==`object`&&process.versions?.node;var Le=Object.freeze({kind:`not-plain`}),Re=Object.freeze({kind:`symbol-keys`});Object.freeze({identify:e=>e,typeOf:e=>e===null?`null`:typeof e,toPrimitive:e=>e,tagOf:e=>je(e),isThenable:e=>typeof e.then==`function`,toPromise:e=>Promise.resolve(e),unbox:e=>e.valueOf(),toISOString:e=>isNaN(e.getDate())?``:e.toISOString(),toStringValue:e=>e.toString(),regExpInfo:e=>({source:e.source,flags:e.flags}),valuesOf:e=>e,entriesOf:e=>e,viewInfo:e=>({buffer:e.buffer,byteOffset:e.byteOffset,byteLength:e.byteLength,length:e.length,bufferByteLength:e.buffer.byteLength}),toArrayBuffer:e=>e,lengthOf:e=>e.length,hasOwn:(e,t)=>Object.hasOwn(e,t),indicesOf:e=>Ie(e),shapeOf:e=>Ae(e)?Me(e).length>0?Re:{kind:Object.getPrototypeOf(e)===null?`null-proto`:`plain`,keys:Object.keys(e)}:Le,get:(e,t)=>e[t]}),Object.freeze({fromPrimitive:e=>e,fromISOString:e=>new Date(e),fromStringValue:(e,t)=>e===`URL`?new URL(t):e===`URLSearchParams`?new URLSearchParams(t):Temporal[e.slice(9)].from(t),fromArrayBuffer:e=>e,fromRegExpInfo:(e,t)=>new RegExp(e,t),fromViewInfo:(e,t,n,r)=>{let i=globalThis[e];return n===void 0?new i(t):new i(t,n,r)},box:e=>Object(e),createArray:e=>Array(e),createSparseArray:e=>{let t=[];return t[Oe]=void 0,delete t[Oe],t.length=e,t},createObject:()=>({}),createNullPrototypeObject:()=>Object.create(null),createSet:()=>new Set,createMap:()=>new Map,set:(e,t,n)=>{e[t]=n},addValue:(e,t)=>{e.add(t)},addEntry:(e,t,n)=>{e.set(t,n)}});var ze=new Set([`load`,`prerender`,`csr`,`ssr`,`trailingSlash`,`config`]);[...ze],[...new Set([...ze])];function Be(e){return e.filter(e=>e!=null)}function A(e,t){return e+`/`+t}function Ve(e){return e instanceof l||e instanceof d?e.status:500}function He(e){return e instanceof d?e.text:`Internal Error`}var j,M,Ue,We=o.toString().includes(`$$`)||/function \w+\(\) \{\}/.test(o.toString()),Ge=`a:`;We?(j={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(Ge)},M={current:null},Ue={current:!1}):(j=new class{#e=a({});get data(){return n(this.#e)}set data(e){i(this.#e,e)}#t=a(null);get form(){return n(this.#t)}set form(e){i(this.#t,e)}#n=a(null);get error(){return n(this.#n)}set error(e){i(this.#n,e)}#r=a({});get params(){return n(this.#r)}set params(e){i(this.#r,e)}#i=a({id:null});get route(){return n(this.#i)}set route(e){i(this.#i,e)}#a=a({});get state(){return n(this.#a)}set state(e){i(this.#a,e)}#o=a(-1);get status(){return n(this.#o)}set status(e){i(this.#o,e)}#s=a(new URL(Ge));get url(){return n(this.#s)}set url(e){i(this.#s,e)}},M=new class{#e=a(null);get current(){return n(this.#e)}set current(e){i(this.#e,e)}},Ue=new class{#e=a(!1);get current(){return n(this.#e)}set current(e){i(this.#e,e)}},Te.v=()=>Ue.current=!0);function Ke(e){Object.assign(j,e)}var{onMount:qe,tick:Je}=s,Ye=e??(e=>e()),Xe=new Set([`icon`,`shortcut icon`,`apple-touch-icon`]),N=null,P=de(`sveltekit:scroll`)??{},F=de(`sveltekit:snapshot`)??{},I={url:we({}),page:we({}),navigating:c(null),updated:Ee()};function Ze(e){P[e]=E()}function Qe(e,t){let n=e+1;for(;P[n];)delete P[n],n+=1;for(n=t+1;F[n];)delete F[n],n+=1}function L(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(h)}async function $e(){if(`serviceWorker`in navigator){let e=await navigator.serviceWorker.getRegistration(x||`/`);e&&await e.update()}}var et,tt,R,z,nt,B,rt={},it={},at=[],ot=[],V=null;function st(){V?.fork?.then(e=>e?.discard()),V=null,Q={element:void 0,href:void 0}}var ct=new Map,lt=new Set,ut=new Set,H=new Set,U={branch:[],error:null,url:null,nav:null},dt=!1,W=!1,ft=!0,G=!1,K=!1,pt=!1,mt=!1,ht,q,J,Y,gt=new Set,_t=new Map,vt=new Map;async function yt(e,t,n){if(globalThis.__sveltekit_17lm4aa.data){let{q:e={},p:t={},l:n={},f:r={}}=globalThis.__sveltekit_17lm4aa.data;for(let t in e)rt[t]=e[t];for(let e in n)rt[e]=n[e];for(let e in r)rt[e]=r[e];for(let e in t)it[e]=t[e]}document.URL!==location.href&&(location.href=location.href),B=e,await e.hooks.init?.(),et=ue(e),z=document.documentElement,nt=t,tt=e.nodes[0],R=e.nodes[1],tt(),R(),q=history.state?.[S],J=history.state?.[C],q||(q=J=Date.now(),history.replaceState({...history.state,[S]:q,[C]:J},``));let r=P[q];function i(){r&&(history.scrollRestoration=`manual`,scrollTo(r.x,r.y))}n?(i(),await Jt(nt,n)):(await Z({type:`enter`,url:ye(B.hash?en(new URL(location.href)):location.href),replace_state:!0}),i()),qt()}function bt(){at.length=0,mt=!1}function xt(e){ot.some(e=>e?.snapshot)&&(F[e]=ot.map(e=>e?.snapshot?.capture()))}function St(e){F[e]?.forEach((e,t)=>{ot[t]?.snapshot?.restore(e)})}function Ct(){Ze(q),fe(ge,P),xt(J),fe(he,F)}async function wt(e,n,r,i){let a,o;n.invalidateAll&&st(),await Z({type:`goto`,url:ye(e),keepfocus:n.keepFocus,noscroll:n.noScroll,replace_state:n.replaceState,state:n.state,redirect_count:r,nav_token:i,accept:()=>{if(n.invalidateAll){mt=!0,a=new Set;for(let[e,t]of _t)for(let[n,r]of t)r.resource?.reset(),a.add(A(e,n));o=new Set;for(let[e,t]of vt)for(let n of t.keys())o.add(A(e,n))}n.invalidate&&n.invalidate.forEach(Gt)}}),n.invalidateAll&&t().then(t).then(()=>{for(let[e,t]of _t)for(let[n,{resource:r}]of t)a?.has(A(e,n))&&r.start();for(let[e,t]of vt)for(let[n,{resource:r}]of t)o?.has(A(e,n))&&r.reconnect()})}async function Tt(e){if(e.id!==V?.id){st();let t={};gt.add(t),V={id:e.id,token:t,promise:Ft({...e,preload:t}).then(e=>(gt.delete(t),e.type===`loaded`&&e.state.error&&st(),e)),fork:null}}return V.promise}async function Et(e){let t=(await zt(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(e=>e[1]()))}async function Dt(e,t,n){let r={params:U.params,route:{id:U.route?.id??null},url:new URL(location.href)};if(U={...e.state,nav:r},Ke(e.props.page),ht=new B.root({target:t,props:{...e.props,stores:I,components:ot},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),n){let e={from:null,to:{...r,scroll:P[q]??E()},willUnload:!1,type:`enter`,complete:Promise.resolve()};H.forEach(t=>t(e))}St(J),W=!0}async function Ot({url:e,params:t,branch:n,errors:r,status:i,error:a,route:o,form:s}){let c=`never`;if(x&&(e.pathname===x||e.pathname===x+`/`))c=`always`;else for(let e of n)e?.slash!==void 0&&(c=e.slash);e.pathname=f(e.pathname,c),e.search=e.search;let l={type:`loaded`,state:{url:e,params:t,branch:n,error:a,route:o},props:{constructors:Be(n).map(e=>e.node.component),page:$t(j)}};s!==void 0&&(l.props.form=s);let u={},d=!j,p=0;for(let e=0;e<Math.max(n.length,U.branch.length);e+=1){let t=n[e],r=U.branch[e];t?.data!==r?.data&&(d=!0),t&&(u={...u,...t.data},d&&(l.props[`data_${p}`]=u),p+=1)}return(!U.url||e.href!==U.url.href||U.error!==a||s!==void 0&&s!==j.form||d)&&(l.props.page={error:a,params:t,route:{id:o?.id??null},state:{},status:i,url:new URL(e),form:s??null,data:d?u:j.data}),l}async function kt({loader:e,parent:t,url:n,params:r,route:i,server_data_node:a}){let o={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},s=await e();return{node:s,loader:e,server:a,universal:s.universal?.load?{type:`data`,data:null,uses:o}:null,data:a?.data??null,slash:s.universal?.trailingSlash??a?.slash}}function At(e,t,n){let r=e instanceof Request?e.url:e,i=new URL(r,n);return i.origin===n.origin&&(r=i.href.slice(n.origin.length)),{resolved:i,promise:W?ne(r,i.href,t):y(r,t)}}function jt(e,t,n,r,i,a){if(mt)return!0;if(!i)return!1;if(i.parent&&e||i.route&&t||i.url&&n)return!0;for(let e of i.search_params)if(r.has(e))return!0;for(let e of i.params)if(a[e]!==U.params[e])return!0;for(let e of i.dependencies)if(at.some(t=>t(new URL(e))))return!0;return!1}function Mt(e,t){return e?.type===`data`?e:e?.type===`skip`?t??null:null}function Nt(e,t){if(!e)return new Set(t.searchParams.keys());let n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(let r of n){let i=e.searchParams.getAll(r),a=t.searchParams.getAll(r);i.every(e=>a.includes(e))&&a.every(e=>i.includes(e))&&n.delete(r)}return n}function Pt({error:e,url:t,route:n,params:r}){return{type:`loaded`,state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:$t(j),constructors:[]}}}async function Ft({id:e,invalidating:t,url:n,params:r,route:i,preload:a}){if(V?.id===e)return gt.delete(V.token),V.promise;let{errors:o,layouts:s,leaf:c}=i,d=[...s,c];o.forEach(e=>e?.().catch(h)),d.forEach(e=>e?.[1]().catch(h));let f=U.url?e!==X(U.url):!1,p=U.route?i.id!==U.route.id:!1,ee=Nt(U.url,n),m=!1,g=d.map(async(e,t)=>{if(!e)return;let a=U.branch[t];return e[1]===a?.loader&&!jt(m,p,f,ee,a.universal?.uses,r)?a:(m=!0,kt({loader:e[1],url:n,params:r,route:i,parent:async()=>{let e={};for(let n=0;n<t;n+=1)Object.assign(e,(await g[n])?.data);return e},server_data_node:Mt(e[0]?{type:`skip`}:null,e[0]?a?.server:void 0)}))});for(let e of g)e.catch(h);let _=[];for(let e=0;e<d.length;e+=1)if(d[e])try{_.push(await g[e])}catch(t){if(t instanceof u)return{type:`redirect`,location:t.location};if(a&>.has(a))return Pt({error:await $(t,{params:r,url:n,route:{id:i.id}}),url:n,params:r,route:i});let s=Ve(t),c;if(t instanceof l)c=t.body;else{if(await I.updated.check())return await $e(),await L(n);c=await $(t,{params:r,url:n,route:{id:i.id}})}let d=await It(e,_,o);return d?Ot({url:n,params:r,branch:_.slice(0,d.idx).concat(d.node),errors:o,status:s,error:c,route:i}):await Ht(n,{id:i.id},c,s)}else _.push(void 0);return Ot({url:n,params:r,branch:_,errors:o,status:200,error:null,route:i,form:t?void 0:null})}async function It(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)--r;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function Lt({status:e,error:t,url:n,route:r}){let i={};try{return Ot({url:n,params:i,branch:[await kt({loader:tt,url:n,params:i,route:r,parent:()=>Promise.resolve({}),server_data_node:Mt(null)}),{node:await R(),loader:R,universal:null,server:null,data:null}],status:e,error:t,errors:[],route:null})}catch(t){if(t instanceof u){await wt(new URL(t.location,location.href),{},0);return}let a=await B.get_error_template(),o=await $(t,{url:n,params:i,route:r}),s=a({status:e,message:String(o?.message??``).replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`)}),c=new DOMParser().parseFromString(s,`text/html`);throw document.documentElement.replaceChild(document.adoptNode(c.head),document.head),document.documentElement.replaceChild(document.adoptNode(c.body),document.body),t}}async function Rt(e){let t=e.href;if(ct.has(t))return ct.get(t);let n;try{let r=(async()=>{let t=await B.hooks.reroute({url:new URL(e),fetch:async(t,n)=>At(t,n,e).promise})??e;if(typeof t==`string`){let n=new URL(e);B.hash?n.hash=t:n.pathname=t,t=n}return t})();ct.set(t,r),n=await r}catch{ct.delete(t);return}return n}async function zt(e,t){if(e&&!k(e,x,B.hash)){let n=await Rt(e);if(!n)return;let r=Bt(n);for(let n of et){let i=n.exec(r);if(i)return{id:X(e),invalidating:t,route:n,params:ee(i),url:e}}}}function Bt(e){return p(B.hash?e.hash.replace(/^#/,``).replace(/[?#].+/,``):e.pathname.slice(x.length))||`/`}function X(e){return(B.hash?e.hash.replace(/^#/,``):e.pathname)+e.search}function Vt({url:e,type:t,intent:n,delta:r,event:i,scroll:a}){let o=!1,s=Qt(U,n,e,t,a??null);r!==void 0&&(s.navigation.delta=r),i!==void 0&&(s.navigation.event=i);let c={...s.navigation,cancel:()=>{o=!0,s.reject(Error(`navigation cancelled`))}};return G||lt.forEach(e=>e(c)),o?null:s}async function Z({type:e,url:n,popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c={},redirect_count:l=0,nav_token:u={},accept:f=h,block:p=h,event:ee}){let m=Y;Y=u;let g=await zt(n,!1),_=e===`enter`?Qt(U,g,n,e):Vt({url:n,type:e,delta:i?.delta,intent:g,scroll:i?.scroll,event:ee});if(!_){p(),Y===u&&(Y=m);return}let te=q,v=J;f(),G=!0,W&&_.navigation.type!==`enter`&&I.navigating.set(M.current=_.navigation);let y=g&&await Ft(g);if(!y){if(k(n,x,B.hash))return await L(n,s);y=await Ht(n,{id:null},await $(new d(404,`Not Found`,`Not found: ${n.pathname}`),{url:n,params:{},route:{id:null}}),404,s)}if(n=g?.url||n,Y!==u){_.reject(Error(`navigation aborted`));return}if(!y)return;if(y.type===`redirect`){if(l<20){await Z({type:e,url:new URL(y.location,n),popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c,redirect_count:l+1,nav_token:u}),_.fulfil(void 0);return}if(y=await Lt({status:500,error:await $(Error(`Redirect loop`),{url:n,params:{},route:{id:null}}),url:n,route:{id:null}}),!y)return}else if(y.props.page.status>=400&&await I.updated.check())return await $e(),await L(n,s);if(bt(),Ze(te),xt(v),y.props.page.url.pathname!==n.pathname&&(n.pathname=y.props.page.url.pathname),c=i?i.state:c,!i){let e=+!s,t={[S]:q+=e,[C]:J+=e,[_e]:c};(s?history.replaceState:history.pushState).call(history,t,``,n),s||Qe(q,J)}let ne=g&&V?.id===g.id?V.fork:null;V?.fork&&!ne?st():(V=null,Q={element:void 0,href:void 0}),y.props.page.state=c;let b;if(W){let e=(await Promise.all(Array.from(ut,e=>e(_.navigation)))).filter(e=>typeof e==`function`);if(e.length>0){function t(){e.forEach(e=>{H.delete(e)})}e.push(t),e.forEach(e=>{H.add(e)})}let t=_.navigation.to;U={...y.state,nav:{params:t.params,route:t.route,url:t.url}},y.props.page&&(y.props.page.url=n),!a&&document.activeElement instanceof HTMLElement&&document.activeElement!==document.body&&document.activeElement.blur();let i=ne&&await ne;i?b=i.commit():(N=null,ht.$set(y.props),N&&Object.assign(y.props.page,N),Ke(y.props.page),b=r?.()),pt=!0}else await Dt(y,nt,!1);let{activeElement:re}=document;if(await b,await t(),await t(),Y!==u){_.reject(Error(`navigation aborted`));return}y.props.page&&N&&Object.assign(y.props.page,N);let ie=null;if(ft){let e=i?i.scroll:o?E():null;e?scrollTo(e.x,e.y):(ie=n.hash&&document.getElementById(tn(n)))?ie.scrollIntoView():scrollTo(0,0)}let ae=document.activeElement!==re&&document.activeElement!==document.body;!a&&!ae&&Zt(n,!ie),ft=!0,G=!1,_.fulfil(void 0),_.navigation.to&&(_.navigation.to.scroll=E()),H.forEach(e=>e(_.navigation)),e===`popstate`&&St(J),I.navigating.set(M.current=null)}async function Ht(e,t,n,r,i){return e.origin===T&&e.pathname===location.pathname&&!dt?await Lt({status:r,error:n,url:e,route:t}):await L(e,i)}var Q={element:void 0,href:void 0};function Ut(){let e,t;z.addEventListener(`mousemove`,t=>{let n=t.target;clearTimeout(e),e=setTimeout(()=>{i(n,w.hover)},20)});function n(e){e.defaultPrevented||i(e.composedPath()[0],w.tap)}z.addEventListener(`mousedown`,n),z.addEventListener(`touchstart`,n,{passive:!0});let r=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&(Et(new URL(t.target.href)),r.unobserve(t.target))},{threshold:0});async function i(e,n){let r=Se(e,z),i=r===Q.element&&r?.href===Q.href&&n>=t;if(!r||i)return;let{url:a,external:o,download:s}=Ce(r,x,B.hash);if(o||s)return;let c=O(r),l=a&&X(U.url)===X(a);if(!(c.reload||l)){if(n<=c.preload_data){Q={element:r,href:r.href},t=w.tap;let e=await zt(a,!1);if(!e)return;Tt(e)}else n<=c.preload_code&&(Q={element:r,href:r.href},t=n,Et(a))}}function a(){r.disconnect();for(let e of z.querySelectorAll(`a`)){let{url:t,external:n,download:i}=Ce(e,x,B.hash);if(n||i)continue;let a=O(e);a.reload||(a.preload_code===w.viewport&&r.observe(e),a.preload_code===w.eager&&Et(t))}}H.add(a),a()}function $(e,t){if(e instanceof l)return e.body;let n=Ve(e),r=He(e);return B.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function Wt(e,t={}){return e=new URL(ye(e)),e.origin===T?wt(e,t,0):Promise.reject(Error(`goto: invalid URL`))}function Gt(e){if(typeof e==`function`)at.push(e);else{let{href:t}=new URL(e,location.href);at.push(e=>e.href===t)}}function Kt(e,t){let n={[S]:q,[C]:J,[ve]:j.url.href,[_e]:t};history.replaceState(n,``,ye(e)),j.state=t,ht.$set({page:Ye(()=>$t(j))})}function qt(){history.scrollRestoration=`manual`,addEventListener(`beforeunload`,e=>{let t=!1;if(Ct(),!G){let e=Qt(U,void 0,null,`leave`),n={...e.navigation,cancel:()=>{t=!0,e.reject(Error(`navigation cancelled`))}};lt.forEach(e=>e(n))}t?(e.preventDefault(),e.returnValue=``):history.scrollRestoration=`auto`}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&Ct()}),navigator.connection?.saveData||Ut(),z.addEventListener(`click`,async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;let n=Se(t.composedPath()[0],z);if(!n)return;let{url:r,external:i,target:a,download:o}=Ce(n,x,B.hash);if(!r)return;if(a===`_parent`||a===`_top`){if(window.parent!==window)return}else if(a&&a!==`_self`)return;let s=O(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&r.protocol!==`https:`&&r.protocol!==`http:`||o)return;let[c,l]=(B.hash?r.hash.replace(/^#/,``):r.href).split(`#`),u=c===m(location);if(i||s.reload&&(!u||!l)){Vt({url:r,type:`link`,event:t})?G=!0:t.preventDefault();return}if(l!==void 0&&u){let[,i]=U.url.href.split(`#`);if(i===l){if(t.preventDefault(),l===``||l===`top`&&n.ownerDocument.getElementById(`top`)===null)scrollTo({top:0});else{let e=n.ownerDocument.getElementById(decodeURIComponent(l));e&&(e.scrollIntoView(),e.focus())}return}if(K=!0,Ze(q),e(r),!s.replace_state)return;K=!1}t.preventDefault(),await new Promise(e=>{requestAnimationFrame(()=>{setTimeout(e,0)}),setTimeout(e,100)}),await Z({type:`link`,url:r,keepfocus:s.keepfocus,noscroll:s.noscroll,replace_state:s.replace_state??r.href===location.href,event:t})}),z.addEventListener(`submit`,e=>{if(e.defaultPrevented)return;let t=HTMLFormElement.prototype.cloneNode.call(e.target),n=e.submitter;if((n?.formTarget||t.target)===`_blank`||(n?.formMethod||t.method)!==`get`)return;let r=new URL(n?.hasAttribute(`formaction`)&&n?.formAction||t.action);if(k(r,x,!1))return;let i=e.target,a=O(i);if(a.reload)return;e.preventDefault(),e.stopPropagation();let o=new FormData(i,n);r.search=new URLSearchParams(o).toString(),Z({type:`form`,url:r,keepfocus:a.keepfocus,noscroll:a.noscroll,replace_state:a.replace_state??r.href===location.href,event:e})}),addEventListener(`popstate`,async t=>{if(!Xt){if(t.state?.[`sveltekit:history`]){let n=t.state[S];if(Y={},n===q)return;let r=P[n],i=t.state[`sveltekit:states`]??{},a=new URL(t.state[`sveltekit:pageurl`]??location.href),o=t.state[C],s=U.url?m(location)===m(U.url):!1;if(o===J&&(pt||s)){i!==j.state&&(j.state=i),e(a),P[q]=E(),r&&scrollTo(r.x,r.y),q=n;return}let c=n-q;await Z({type:`popstate`,url:a,popped:{state:i,scroll:r,delta:c},accept:()=>{q=n,J=o},block:()=>{history.go(-c)},nav_token:Y,event:t})}else K||(e(new URL(location.href)),B.hash&&location.reload())}}),addEventListener(`hashchange`,()=>{K&&(K=!1,history.replaceState({...history.state,[S]:++q,[C]:J},``,location.href))});for(let e of document.querySelectorAll(`link`))Xe.has(e.rel)&&(e.href=e.href);addEventListener(`pageshow`,e=>{e.persisted&&I.navigating.set(M.current=null)});function e(e){U.url=j.url=e,I.page.set($t(j)),I.page.notify()}}async function Jt(e,{status:t=200,error:n,node_ids:r,params:i,route:a,server_route:o,data:s,form:c}){dt=!0;let l=new URL(location.href),d;({params:i={},route:a={id:null}}=await zt(l,!1)||{}),d=et.find(({id:e})=>e===a.id);let f,p=!0;try{let e=r.map(async(t,n)=>{let r=s[n];return r?.uses&&(r.uses=Yt(r.uses)),kt({loader:B.nodes[t],url:l,params:i,route:a,parent:async()=>{let t={};for(let r=0;r<n;r+=1)Object.assign(t,(await e[r]).data);return t},server_data_node:Mt(r)})}),o=await Promise.all(e);if(d){let e=d.layouts;for(let t=0;t<e.length;t++)e[t]||o.splice(t,0,void 0)}f=await Ot({url:l,params:i,branch:o,status:t,error:n,errors:d?.errors,form:c,route:d??null})}catch(t){if(t instanceof u)return await L(new URL(t.location,location.href));f=await Lt({status:Ve(t),error:await $(t,{url:l,params:i,route:a}),url:l,route:a}),e.textContent=``,p=!1}f&&(f.props.page&&(f.props.page.state={}),await Dt(f,e,p))}function Yt(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}var Xt=!1;function Zt(e,t=!0){let n=document.querySelector(`[autofocus]`);if(n)n.focus();else{let n=tn(e);if(n&&document.getElementById(n)){let{x:r,y:i}=E();setTimeout(()=>{let a=history.state;Xt=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(a,``,e),t&&scrollTo(r,i),Xt=!1})}else{let e=document.body,t=e.getAttribute(`tabindex`);e.tabIndex=-1,e.focus({preventScroll:!0,focusVisible:!1}),t===null?e.removeAttribute(`tabindex`):e.setAttribute(`tabindex`,t)}let r=getSelection();if(r&&r.type!==`None`){let e=[];for(let t=0;t<r.rangeCount;t+=1)e.push(r.getRangeAt(t));setTimeout(()=>{if(r.rangeCount===e.length){for(let t=0;t<r.rangeCount;t+=1){let n=e[t],i=r.getRangeAt(t);if(n.commonAncestorContainer!==i.commonAncestorContainer||n.startContainer!==i.startContainer||n.endContainer!==i.endContainer||n.startOffset!==i.startOffset||n.endOffset!==i.endOffset)return}r.removeAllRanges()}})}}}function Qt(e,t,n,r,i=null){let a,o,s=new Promise((e,t)=>{a=e,o=t});return s.catch(h),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:E()},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n,scroll:i},willUnload:!t,type:r,complete:s},fulfil:a,reject:o}}function $t(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function en(e){let t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function tn(e){let t;if(B.hash){let[,,n]=e.hash.split(`#`,3);t=n??``}else t=e.hash.slice(1);return decodeURIComponent(t)}export{j as a,M as i,Kt as n,De as o,yt as r,Wt as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ut as e}from"./CmCJ0SKP.js";import{A as t,C as n,D as r,M as i,S as a,T as o,a as s,d as ee,h as te,j as ne,m as c,o as l,s as u,t as d}from"./BBqlAyUm.js";import{n as f}from"./1aUphu7Y.js";var p=`sc.composer.busyEnter`,m=`sc.composer.draft.`;function re(){try{return localStorage.getItem(p)===`steer`?`steer`:`queue`}catch{return`queue`}}var h=e({mode:re()});function ie(){return h.mode}function ae(e){h.mode=e;try{localStorage.setItem(p,e)}catch{}}function oe(e,t){return e?t===`queue`?`steer`:`queue`:t}var g=e({items:[]}),_=0;function se(e){_+=1,g.items=[...g.items,{id:_,text:e}]}function v(e){let t=g.items.findIndex(t=>t.text===e);t>=0&&(g.items=g.items.filter((e,n)=>n!==t))}function ce(){g.items=[]}function y(e,t){try{t.length===0?localStorage.removeItem(m+e):localStorage.setItem(m+e,t)}catch{}}function le(e){try{return localStorage.getItem(m+e)??``}catch{return``}}var b=`__new__`,x=e({text:``,images:[],files:[],references:[],editing:null}),S=new Map,C=b,w=0;function ue(){return{text:``,images:[],files:[],references:[],editing:null}}function de(){return{text:x.text,images:[...x.images],files:[...x.files],references:[...x.references],editing:x.editing}}function T(e){x.text=e.text,x.images=e.images,x.files=e.files,x.references=e.references,x.editing=e.editing}function fe(e){w+=1;let t=w;return x.references=[...x.references,{...e,uid:t}],t}function pe(e){x.references=x.references.filter(t=>t.uid!==e)}function me(e){if(e===C)return;y(C,de().text),S.set(C,de());let t=S.get(e)??ue();S.delete(e),C=e,t.text.length===0&&(t.text=le(e)),T(t)}function he(e){S.delete(e),y(e,``),e===C&&T(ue())}function ge(e,t){if(e===t)return;let n=S.get(e);n!==void 0&&(S.delete(e),y(e,``),y(t,n.text),C===t?T(n):S.has(t)||S.set(t,n))}function _e(e){x.editing=e,x.text=e}function ve(){x.editing=null}var ye={"image/png":!0,"image/jpeg":!0,"image/webp":!0,"image/gif":!0},E={maxCount:4,maxSizeBytes:4194304},D={maxCount:2,maxSizeBytes:524288};function O(e,t){let n={tooMany:`Too many attachments: ${t}. Nothing was added.`,fileTooLarge:`"${t}" exceeds its size limit. Nothing was added.`,unsupportedType:`Unsupported attachment type: ${t}. Nothing was added.`};f(n[e])}var k=e({pending:0});function A(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>{let e=String(r.result??``);t(e.slice(e.indexOf(`,`)+1))},r.onerror=()=>n(r.error),r.readAsDataURL(e)})}async function j(e){let t=[...e].filter(e=>!e.type.startsWith(`image/`));if(t.length===0)return;if(x.files.length+t.length>D.maxCount){O(`tooMany`,`at most ${D.maxCount} file attachments`);return}let n=t.find(e=>e.size>D.maxSizeBytes);if(n){O(`fileTooLarge`,n.name);return}k.pending+=1;try{let e=await Promise.all(t.map(async e=>({name:e.name,data:await A(e)})));x.files=[...x.files,...e]}finally{--k.pending}}async function M(e){let t=[...e];if(t.length===0)return;let n=t.find(e=>!(e.type in ye));if(n){O(`unsupportedType`,n.type||`unknown`);return}if(x.images.length+t.length>E.maxCount){O(`tooMany`,`at most ${E.maxCount} images`);return}let r=t.find(e=>e.size>E.maxSizeBytes);if(r){O(`fileTooLarge`,r.name);return}k.pending+=1;try{let e=await Promise.all(t.map(async e=>{let t=await A(e);return{mediaType:e.type,data:t,...e.name?{name:e.name}:{},preview:`data:${e.type};base64,${t}`}}));x.images=[...x.images,...e]}finally{--k.pending}}function be(e){let t=[...e.dataTransfer?.files??[]],n=t.filter(e=>e.type.startsWith(`image/`)),r=t.filter(e=>!e.type.startsWith(`image/`));t.length>0&&e.preventDefault(),n.length>0&&M(n),r.length>0&&j(r)}function xe(e){if(e.length!==0){if(x.images.length+e.length>E.maxCount){O(`tooMany`,`at most ${E.maxCount} images`);return}x.images=[...x.images,...e.map(e=>({path:e.path,name:e.name,...e.preview===void 0?{}:{preview:e.preview}}))]}}function Se(e){if(e.length!==0){if(x.files.length+e.length>D.maxCount){O(`tooMany`,`at most ${D.maxCount} file attachments`);return}x.files=[...x.files,...e.map(e=>({name:e.name,path:e.path}))]}}var Ce=d(s),we=d(s),Te=d(s),Ee=d(s),De=d(s),Oe=d(s),ke=d(s),Ae=d(s),N=d(s),je=d(s),Me=d(s),P=`skill-creator.agentPanelWidth.v1`;function F(e){return Number.isFinite(e)?Math.min(720,Math.max(320,Math.round(e))):440}function Ne(){try{let e=sessionStorage.getItem(P);return e===null?440:F(Number(e))}catch{return 440}}var I=e({open:!1,seed:null,width:Ne()}),L=null,R=e({sessionId:null,status:`idle`,mode:null,pendingMode:`free`,items:[],todos:[],turnStartedAt:null,cursor:0,sending:!1,error:null,promptError:null,lastUsage:null}),z=e({loaded:!1,loading:!1,sessions:[],error:null}),B=e({items:[]}),V=e({view:null,loading:!1,updating:!1,error:null}),H=null,U=[],W=null,G=new Map;function Pe(e){I.open=e,e&&!z.loaded&&!z.loading&&q(),e&&R.sessionId&&X(),e||Z()}function Fe(e){I.width=F(e);try{sessionStorage.setItem(P,String(I.width))}catch{}}var K=0;async function q(){if(l()===null){if(K>=25)return;K+=1,setTimeout(()=>void q(),300);return}K=0;let e=Ce.issue();z.loading=!0;try{let t=await u().agent.sessions.list({});if(!e.isCurrent())return;z.sessions=t.sessions,z.loaded=!0,z.error=null}catch(t){if(!e.isCurrent())return;z.error=t instanceof Error?t.message:String(t)}finally{e.isCurrent()&&(z.loading=!1)}}async function Ie(e){let t=je.issue();try{let n=await u().agent.sessions.cleanup(e);if(!t.isCurrent())return null;if(n.kind===`summary`&&R.sessionId!==null){let e=R.sessionId;(n.deletedIds??[]).includes(e)?J():n.deletedIdsTruncated===!0&&(await q(),t.isCurrent()&&!z.sessions.some(t=>t.sessionId===e&&t.hasTranscript!==!1)&&J())}return z.loaded=!1,q(),n}catch(e){return t.isCurrent()?{error:e instanceof Error?e.message:String(e)}:null}}async function Le(e,t,n){let r=we.issue();R.sending=!0;try{let i=await u().agent.session.create({...e?{prompt:e}:{},...t?{mode:t}:{},...n?{metadata:n}:{}});if(!r.isCurrent())return;n!==void 0&&(L=null),Ue(i.session.sessionId,i.session.status,i.session.mode),z.loaded=!1,q(),X()}catch(e){if(!r.isCurrent())return;R.error=e instanceof Error?e.message:String(e)}finally{r.isCurrent()&&(R.sending=!1)}}function Re(e,t){ze(t),J(),I.open=!0,R.pendingMode=e}function ze(e){L=null,e!==void 0&&(I.seed={text:e})}function Be(e){J(),I.open=!0;let t={kind:`finding-propose`,action:e.action,findingId:e.findingId,observedRevision:e.observedRevision,workspaceId:e.skill.workspaceId,providerId:e.skill.providerId,skillId:e.skill.skillId,templateId:e.templateId,templateVersion:e.templateVersion};I.seed={text:e.text,reference:{kind:`skill`,token:`$${e.skillName}`,target:e.skill.skillId,label:e.skillName,skill:e.skill},metadata:t},L=t,R.pendingMode=`free`}function Ve(e){J(),I.open=!0;let t={kind:`test-run`,workspaceId:e.skill.workspaceId,providerId:e.skill.providerId,skillId:e.skill.skillId,revision:e.revision,templateId:e.templateId,templateVersion:e.templateVersion};I.seed={text:e.text,reference:{kind:`skill`,token:`$${e.skillName}`,target:e.skill.skillId,label:e.skillName,skill:e.skill},metadata:t},L=t,R.pendingMode=`free`}function J(){L=null,Z(),R.sessionId=null,R.status=`idle`,R.mode=null,R.pendingMode=`free`,R.items=[],R.todos=[],R.turnStartedAt=null,R.cursor=0,R.error=null,R.promptError=null,R.lastUsage=null,U=[],W=null,G=new Map,me(b),he(b)}function He(e){R.sessionId!==e&&(Ue(e,`idle`,z.sessions.find(t=>t.sessionId===e)?.mode??`free`),X())}function Ue(e,t,n){R.sessionId=e,R.status=t,R.mode=n,R.items=[],R.todos=[],R.turnStartedAt=null,R.cursor=0,R.error=null,R.lastUsage=null,U=[],W=null,G=new Map,ce(),B.items=[],Y(),me(e)}async function We(e){let t=R.sessionId;if(!t||R.mode===e)return!1;if(R.status===`running`)return R.error=`Switch modes after the current turn ends.`,!1;let n=Ae.issue();try{let r=await u().agent.session.setMode({sessionId:t,mode:e});return!n.isCurrent()||R.sessionId!==t?!1:(R.mode=r.session.mode,R.status=r.session.status,R.error=null,z.loaded=!1,q(),X(),!0)}catch(e){return n.isCurrent()&&(R.error=e instanceof Error?e.message:String(e)),!1}}async function Ge(e,t=[],n=[],r=`queue`,i=[]){if(e.trim().length===0&&t.length===0&&n.length===0)return;if(r===`queue`&&R.status===`running`&&se(e),!R.sessionId){if(await Le(void 0,R.pendingMode,L??void 0),!R.sessionId)return;ge(b,R.sessionId)}let a=R.sessionId,o=Ee.issue();R.sending=!0;let s=t.filter(e=>e.preview===void 0).map(e=>e.name??`image`);R.items.push({kind:`user`,seq:-Date.now(),text:e,...t.some(e=>e.preview!==void 0)?{images:t.flatMap(e=>e.preview===void 0?[]:[e.preview])}:{},...n.length>0||s.length>0?{files:[...n.map(e=>e.name??`file`),...s]}:{}}),U.push(e);try{if(await u().agent.session.prompt({sessionId:a,text:e,mode:r,images:t.map(e=>{if(e.path!==void 0)return{path:e.path,...e.name?{name:e.name}:{}};if(e.mediaType===void 0||e.data===void 0)throw Error(`image attachment needs either path or mediaType+data`);return{mediaType:e.mediaType,data:e.data,...e.name?{name:e.name}:{}}}),files:n.map(e=>{if(e.path!==void 0)return{path:e.path};if(e.name===void 0||e.data===void 0)throw Error(`file attachment needs either path or name+data`);return{name:e.name,data:e.data}}),references:i.map(e=>e.kind===`file`?{kind:`file`,path:e.target}:e.kind===`skill`?{kind:`skill`,workspaceId:e.skill.workspaceId,providerId:e.skill.providerId,skillId:e.skill.skillId}:{kind:`session`,sessionId:e.target})}),!o.isCurrent())return;R.promptError=null,he(a),r===`queue`&&Y()}catch(t){if(!o.isCurrent())return;R.promptError=t instanceof Error?t.message:String(t),v(e);let n=U.indexOf(e);n>=0&&U.splice(n,1)}finally{o.isCurrent()&&(R.sending=!1)}X()}async function Ke(){let e=R.sessionId;if(e){try{await u().agent.session.cancel({sessionId:e})}catch(e){R.error=e instanceof Error?e.message:String(e)}X()}}async function Y(){let e=R.sessionId;if(!e){B.items=[];return}let t=Me.issue();try{let n=await u().agent.queue.list({sessionId:e});if(!t.isCurrent()||R.sessionId!==e)return;B.items=n.items}catch{}}async function qe(e){let t=R.sessionId;if(!t)return null;let n=e.action===`edit`?{sessionId:t,messageId:e.messageId,action:`edit`,text:e.text}:e.action===`remove`?{sessionId:t,messageId:e.messageId,action:`remove`}:{sessionId:t,messageId:e.messageId,action:`steer`};try{return await u().agent.queue.update(n),await Y(),{updated:!0}}catch(e){return Y(),{error:e instanceof Error?e.message:String(e)}}}async function Je(e,t){let n=R.sessionId;if(!n)return;let r=De.issue();try{if(await u().agent.session.answer({sessionId:n,requestSeq:e,answers:t}),!r.isCurrent())return;for(let t of R.items)t.kind===`approval`&&t.seq===e&&(t.resolved=!0)}catch(e){if(!r.isCurrent())return;R.error=e instanceof Error?e.message:String(e)}X()}async function X(){let e=R.sessionId;if(!e)return;let t=Te.issue();try{let n=await u().agent.session.stream({sessionId:e,afterSeq:R.cursor,limit:100});if(!t.isCurrent()||R.sessionId!==e)return;R.status=n.status;for(let e of n.frames)st(e),R.cursor=Math.max(R.cursor,e.seq);R.error=null}catch(e){if(!t.isCurrent())return;R.error=e instanceof Error?e.message:String(e),Z();return}Ye()}function Ye(){Z();let e=R.items.some(e=>e.kind===`approval`&&!e.resolved);if(R.status===`running`||e){R.sessionId;let e=R.status===`running`?450:1200;H=setTimeout(()=>{X()},e)}}function Z(){H!==null&&(clearTimeout(H),H=null)}function Xe(e,t,n){for(let t=R.items.length-1;t>=0;t--){let r=R.items[t];if(r.kind===`turn`)break;if(r.kind===e){r.streaming&&=(r.text=n,!1);return}}R.items.push({kind:e,seq:t,text:n,streaming:!1})}function Ze(e){let t=e?.usage;if(!t)return null;let n=t.inputTokens??t.promptTokens??t.input_tokens??0,r=t.outputTokens??t.completionTokens??t.output_tokens??0;return n>0||r>0?{inputTokens:n,outputTokens:r}:null}function Q(e,t){for(let n=R.items.length-1;n>=0;n--){let r=R.items[n];if(r.kind===`turn`)return null;if(r.kind===`tool`&&r.result===void 0){if(e!==void 0){if(r.toolCallId===e)return r;continue}if(r.toolName===t)return r}}return null}var Qe=r({isError:o(!0).optional(),error:ne([t().min(1),r()]).optional()}).passthrough();function $(e){let t=Qe.safeParse(e);return t.success?t.data.isError===!0||t.data.error!==void 0:!1}var $e=r({attachments:n(i()).optional()}).passthrough();function et(e){let t=$e.safeParse(e),n=t.success?t.data.attachments:void 0;if(!Array.isArray(n)||n.length===0)return null;let r=[],i=[],a=[];for(let e of n){let t=te.safeParse(e);if(t.success){if(t.data.kind===`image`&&t.data.thumb!==void 0)r.push(t.data.thumb);else{let e=t.data.name??(t.data.kind===`image`?`image`:`file`);i.push(e),t.data.kind===`image`&&a.push(e)}}}return r.length>0||i.length>0?{images:r,files:i,imageChipNames:a}:null}var tt=r({todos:n(i())}),nt=r({content:t(),status:t()}),rt=r({questions:n(ee)}),it=r({from:c,to:c}),at=r({childId:t().min(1),mode:a([`one-shot`,`continuable`]),label:t().optional()});function ot(e){let t=tt.safeParse(e);if(!t.success)return null;let n=[];for(let e of t.data.todos){let t=nt.safeParse(e);t.success&&n.push(t.data)}return n}function st(e){switch(e.kind){case`turn-start`:R.turnStartedAt=e.at,G=new Map,R.items.push({kind:`turn`,seq:e.seq,label:`Turn`});break;case`status`:R.items.push({kind:`status`,seq:e.seq,text:JSON.stringify(e.payload??{})});break;case`auto-compact`:typeof e.text==`string`&&e.text.length>0&&R.items.push({kind:`note`,seq:e.seq,text:e.text});break;case`subagent`:{let t=at.safeParse(e.payload);if(!t.success)break;let n=typeof e.text==`string`&&e.text.length>0?e.text:t.data.childId;R.items.push({kind:`subagent`,seq:e.seq,label:n,mode:t.data.mode});break}case`user-text`:if(typeof e.text==`string`&&e.text.length>0){v(e.text),Y();let t=U.indexOf(e.text);if(t>=0){U.splice(t,1);break}let n=et(e.payload);R.items.push({kind:`user`,seq:e.seq,text:e.text,...n&&n.images.length>0?{images:n.images}:{},...n&&n.files.length>0?{files:n.files}:{},...n&&n.imageChipNames.length>0?{imageChipNames:n.imageChipNames}:{}})}break;case`assistant-delta`:if(typeof e.text==`string`&&e.text.length>0){let t=R.items[R.items.length-1];t?.kind===`assistant`&&t.streaming?t.text+=e.text:R.items.push({kind:`assistant`,seq:e.seq,text:e.text,streaming:!0})}break;case`assistant-reasoning-delta`:if(typeof e.text==`string`&&e.text.length>0){let t=R.items[R.items.length-1];t?.kind===`reasoning`&&t.streaming?t.text+=e.text:R.items.push({kind:`reasoning`,seq:e.seq,text:e.text,streaming:!0})}break;case`assistant-reasoning`:typeof e.text==`string`&&e.text.length>0&&Xe(`reasoning`,e.seq,e.text);break;case`todo-snapshot`:{let t=ot(e.payload);t!==null&&(R.todos=t);break}case`session-title`:{let t=typeof e.text==`string`?e.text.trim():``;if(t.length>0)for(let n of z.sessions)n.sessionId===e.sessionId&&(n.title=t);break}case`assistant-text`:if(typeof e.text==`string`&&e.text.length>0){Xe(`assistant`,e.seq,e.text);let t=Ze(e.payload);t&&(R.lastUsage=t,W=t)}break;case`tool-args-delta`:if(typeof e.text==`string`&&e.text.length>0&&e.toolCallId){let t=Q(e.toolCallId,e.toolName??``);if(t&&t.toolCallId===e.toolCallId&&t.phase===`calling`)t.argsText=(t.argsText??``)+e.text;else if(!t){let t=G.get(e.toolCallId);G.set(e.toolCallId,{...e.toolName?{name:e.toolName}:{},text:(t?.text??``)+e.text})}}break;case`tool-call`:{let t=e.toolName??`tool`,n=e.toolCallId;if(n!==void 0&&Q(n,t)!==null)break;let r=n===void 0?void 0:G.get(n);n!==void 0&&G.delete(n);let i;e.payload!==void 0&&e.payload!==null&&(i=typeof e.payload==`string`?e.payload:ct(e.payload)),(i===void 0||i.length===0)&&r&&(i=r.text),R.items.push({kind:`tool`,seq:e.seq,...n===void 0?{}:{toolCallId:n},toolName:t,...i!==void 0&&i.length>0?{argsText:i}:{},phase:`calling`,startedAt:e.at});break}case`tool-result`:{let t=e.toolName??`tool`,n=Q(e.toolCallId,t);if(n){n.result=e.payload,n.phase=$(e.payload)?`error`:`done`,n.endedAt=e.at;break}R.items.push({kind:`tool`,seq:e.seq,...e.toolCallId===void 0?{}:{toolCallId:e.toolCallId},toolName:t,result:e.payload,phase:$(e.payload)?`error`:`done`,startedAt:e.at,endedAt:e.at});break}case`turn-end`:{let t=typeof e.text==`string`&&e.text.length>0?e.text:`completed`;Y();let n=W;W=null;let r=R.turnStartedAt,i=r===null||Number.isNaN(Date.parse(r))||Number.isNaN(Date.parse(e.at))?void 0:Math.max(0,Date.parse(e.at)-Date.parse(r));R.items.push({kind:`turn-end`,seq:e.seq,reason:t,...n?{usage:n}:{},...i===void 0?{}:{elapsedMs:i}});break}case`approval-request`:{let t=rt.safeParse(e.payload);if(!t.success)break;R.items.push({kind:`approval`,seq:e.seq,questions:t.data.questions,resolved:!1});break}case`approval-resolved`:for(let e of R.items)e.kind===`approval`&&(e.resolved=!0);break;case`mode-changed`:{let t=it.safeParse(e.payload);if(!t.success)break;R.items.push({kind:`mode`,seq:e.seq,from:t.data.from,to:t.data.to}),R.mode=t.data.to;break}}R.items.length>500&&R.items.splice(0,R.items.length-500)}function ct(e){try{return JSON.stringify(e,null,2)??``}catch{return String(e)}}async function lt(){let e=Oe.issue();V.loading=!0;try{let t=await u().agent.settings.get({});return e.isCurrent()?(V.view=t,V.error=null,{view:t,error:null}):{view:null,error:null}}catch(t){if(!e.isCurrent())return{view:null,error:null};let n=t instanceof Error?t.message:String(t);return V.error=n,{view:null,error:n}}finally{e.isCurrent()&&(V.loading=!1)}}async function ut(e){let t=ke.issue();V.updating=!0;try{let n=await u().agent.settings.update(e);return t.isCurrent()?(n.outcome===`updated`&&(V.view=n.view),n):null}catch(e){return t.isCurrent()?{outcome:`error`,message:e instanceof Error?e.message:String(e)}:null}finally{t.isCurrent()&&(V.updating=!1)}}async function dt(e){try{let t=l();return t===null?null:await t.agent.files.pickFiles({mode:e})}catch(e){return f(`File picker failed: ${e instanceof Error?e.message:String(e)}`),null}}async function ft(e){try{let t=l();if(t===null)return null;let n=await t.agent.files.preview({path:e});return n.kind===`image`?n.dataUrl:null}catch{return null}}async function pt(e){await Promise.all(e.map(async e=>{let t=await ft(e.path);if(t===null)return;let n=x.images.find(t=>t.path===e.path&&t.name===e.name&&t.preview===void 0);n!==void 0&&(n.preview=t)}))}async function mt(e,t){let n=N.issue();V.updating=!0;try{let r=await u().agent.credentials.set({provider:e,apiKey:t});return n.isCurrent()?(r.outcome===`stored`&&(V.view=r.view),r):null}catch(e){return n.isCurrent()?{outcome:`rejected`,code:`NETWORK`,detail:e instanceof Error?e.message:String(e)}:null}finally{n.isCurrent()&&(V.updating=!1)}}async function ht(e){let t=N.issue();V.updating=!0;try{let n=await u().agent.credentials.clear({provider:e});if(!t.isCurrent())return;V.view=n}catch(e){if(!t.isCurrent())return;V.error=e instanceof Error?e.message:String(e)}finally{t.isCurrent()&&(V.updating=!1)}}async function gt(e){let t=l();if(t===null)return null;try{return await t.agent.settings.testConnection(e)}catch(e){return{outcome:`failed`,detail:e instanceof Error?e.message:String(e)}}}export{Se as A,g as B,Re as C,j as D,ut as E,ve as F,ae as H,be as I,pe as L,x as M,k as N,M as O,_e as P,h as R,We as S,qe as T,oe as V,He as _,z as a,Pe as b,Ke as c,pt as d,q as f,Be as g,Ve as h,R as i,xe as j,fe as k,Ie as l,dt as m,B as n,Je as o,lt as p,V as r,J as s,I as t,ht as u,Ge as v,gt as w,Fe as x,mt as y,ie as z};
|
|
1
|
+
import{ut as e}from"./CmCJ0SKP.js";import{A as t,C as n,D as r,M as i,S as a,T as o,a as s,d as ee,h as te,j as ne,m as c,o as l,s as u,t as d}from"./pd7EK5wP.js";import{n as f}from"./1aUphu7Y.js";var p=`sc.composer.busyEnter`,m=`sc.composer.draft.`;function re(){try{return localStorage.getItem(p)===`steer`?`steer`:`queue`}catch{return`queue`}}var h=e({mode:re()});function ie(){return h.mode}function ae(e){h.mode=e;try{localStorage.setItem(p,e)}catch{}}function oe(e,t){return e?t===`queue`?`steer`:`queue`:t}var g=e({items:[]}),_=0;function se(e){_+=1,g.items=[...g.items,{id:_,text:e}]}function v(e){let t=g.items.findIndex(t=>t.text===e);t>=0&&(g.items=g.items.filter((e,n)=>n!==t))}function ce(){g.items=[]}function y(e,t){try{t.length===0?localStorage.removeItem(m+e):localStorage.setItem(m+e,t)}catch{}}function le(e){try{return localStorage.getItem(m+e)??``}catch{return``}}var b=`__new__`,x=e({text:``,images:[],files:[],references:[],editing:null}),S=new Map,C=b,w=0;function ue(){return{text:``,images:[],files:[],references:[],editing:null}}function de(){return{text:x.text,images:[...x.images],files:[...x.files],references:[...x.references],editing:x.editing}}function T(e){x.text=e.text,x.images=e.images,x.files=e.files,x.references=e.references,x.editing=e.editing}function fe(e){w+=1;let t=w;return x.references=[...x.references,{...e,uid:t}],t}function pe(e){x.references=x.references.filter(t=>t.uid!==e)}function me(e){if(e===C)return;y(C,de().text),S.set(C,de());let t=S.get(e)??ue();S.delete(e),C=e,t.text.length===0&&(t.text=le(e)),T(t)}function he(e){S.delete(e),y(e,``),e===C&&T(ue())}function ge(e,t){if(e===t)return;let n=S.get(e);n!==void 0&&(S.delete(e),y(e,``),y(t,n.text),C===t?T(n):S.has(t)||S.set(t,n))}function _e(e){x.editing=e,x.text=e}function ve(){x.editing=null}var ye={"image/png":!0,"image/jpeg":!0,"image/webp":!0,"image/gif":!0},E={maxCount:4,maxSizeBytes:4194304},D={maxCount:2,maxSizeBytes:524288};function O(e,t){let n={tooMany:`Too many attachments: ${t}. Nothing was added.`,fileTooLarge:`"${t}" exceeds its size limit. Nothing was added.`,unsupportedType:`Unsupported attachment type: ${t}. Nothing was added.`};f(n[e])}var k=e({pending:0});function A(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>{let e=String(r.result??``);t(e.slice(e.indexOf(`,`)+1))},r.onerror=()=>n(r.error),r.readAsDataURL(e)})}async function j(e){let t=[...e].filter(e=>!e.type.startsWith(`image/`));if(t.length===0)return;if(x.files.length+t.length>D.maxCount){O(`tooMany`,`at most ${D.maxCount} file attachments`);return}let n=t.find(e=>e.size>D.maxSizeBytes);if(n){O(`fileTooLarge`,n.name);return}k.pending+=1;try{let e=await Promise.all(t.map(async e=>({name:e.name,data:await A(e)})));x.files=[...x.files,...e]}finally{--k.pending}}async function M(e){let t=[...e];if(t.length===0)return;let n=t.find(e=>!(e.type in ye));if(n){O(`unsupportedType`,n.type||`unknown`);return}if(x.images.length+t.length>E.maxCount){O(`tooMany`,`at most ${E.maxCount} images`);return}let r=t.find(e=>e.size>E.maxSizeBytes);if(r){O(`fileTooLarge`,r.name);return}k.pending+=1;try{let e=await Promise.all(t.map(async e=>{let t=await A(e);return{mediaType:e.type,data:t,...e.name?{name:e.name}:{},preview:`data:${e.type};base64,${t}`}}));x.images=[...x.images,...e]}finally{--k.pending}}function be(e){let t=[...e.dataTransfer?.files??[]],n=t.filter(e=>e.type.startsWith(`image/`)),r=t.filter(e=>!e.type.startsWith(`image/`));t.length>0&&e.preventDefault(),n.length>0&&M(n),r.length>0&&j(r)}function xe(e){if(e.length!==0){if(x.images.length+e.length>E.maxCount){O(`tooMany`,`at most ${E.maxCount} images`);return}x.images=[...x.images,...e.map(e=>({path:e.path,name:e.name,...e.preview===void 0?{}:{preview:e.preview}}))]}}function Se(e){if(e.length!==0){if(x.files.length+e.length>D.maxCount){O(`tooMany`,`at most ${D.maxCount} file attachments`);return}x.files=[...x.files,...e.map(e=>({name:e.name,path:e.path}))]}}var Ce=d(s),we=d(s),Te=d(s),Ee=d(s),De=d(s),Oe=d(s),ke=d(s),Ae=d(s),N=d(s),je=d(s),Me=d(s),P=`skill-creator.agentPanelWidth.v1`;function F(e){return Number.isFinite(e)?Math.min(720,Math.max(320,Math.round(e))):440}function Ne(){try{let e=sessionStorage.getItem(P);return e===null?440:F(Number(e))}catch{return 440}}var I=e({open:!1,seed:null,width:Ne()}),L=null,R=e({sessionId:null,status:`idle`,mode:null,pendingMode:`free`,items:[],todos:[],turnStartedAt:null,cursor:0,sending:!1,error:null,promptError:null,lastUsage:null}),z=e({loaded:!1,loading:!1,sessions:[],error:null}),B=e({items:[]}),V=e({view:null,loading:!1,updating:!1,error:null}),H=null,U=[],W=null,G=new Map;function Pe(e){I.open=e,e&&!z.loaded&&!z.loading&&q(),e&&R.sessionId&&X(),e||Z()}function Fe(e){I.width=F(e);try{sessionStorage.setItem(P,String(I.width))}catch{}}var K=0;async function q(){if(l()===null){if(K>=25)return;K+=1,setTimeout(()=>void q(),300);return}K=0;let e=Ce.issue();z.loading=!0;try{let t=await u().agent.sessions.list({});if(!e.isCurrent())return;z.sessions=t.sessions,z.loaded=!0,z.error=null}catch(t){if(!e.isCurrent())return;z.error=t instanceof Error?t.message:String(t)}finally{e.isCurrent()&&(z.loading=!1)}}async function Ie(e){let t=je.issue();try{let n=await u().agent.sessions.cleanup(e);if(!t.isCurrent())return null;if(n.kind===`summary`&&R.sessionId!==null){let e=R.sessionId;(n.deletedIds??[]).includes(e)?J():n.deletedIdsTruncated===!0&&(await q(),t.isCurrent()&&!z.sessions.some(t=>t.sessionId===e&&t.hasTranscript!==!1)&&J())}return z.loaded=!1,q(),n}catch(e){return t.isCurrent()?{error:e instanceof Error?e.message:String(e)}:null}}async function Le(e,t,n){let r=we.issue();R.sending=!0;try{let i=await u().agent.session.create({...e?{prompt:e}:{},...t?{mode:t}:{},...n?{metadata:n}:{}});if(!r.isCurrent())return;n!==void 0&&(L=null),Ue(i.session.sessionId,i.session.status,i.session.mode),z.loaded=!1,q(),X()}catch(e){if(!r.isCurrent())return;R.error=e instanceof Error?e.message:String(e)}finally{r.isCurrent()&&(R.sending=!1)}}function Re(e,t){ze(t),J(),I.open=!0,R.pendingMode=e}function ze(e){L=null,e!==void 0&&(I.seed={text:e})}function Be(e){J(),I.open=!0;let t={kind:`finding-propose`,action:e.action,findingId:e.findingId,observedRevision:e.observedRevision,workspaceId:e.skill.workspaceId,providerId:e.skill.providerId,skillId:e.skill.skillId,templateId:e.templateId,templateVersion:e.templateVersion};I.seed={text:e.text,reference:{kind:`skill`,token:`$${e.skillName}`,target:e.skill.skillId,label:e.skillName,skill:e.skill},metadata:t},L=t,R.pendingMode=`free`}function Ve(e){J(),I.open=!0;let t={kind:`test-run`,workspaceId:e.skill.workspaceId,providerId:e.skill.providerId,skillId:e.skill.skillId,revision:e.revision,templateId:e.templateId,templateVersion:e.templateVersion};I.seed={text:e.text,reference:{kind:`skill`,token:`$${e.skillName}`,target:e.skill.skillId,label:e.skillName,skill:e.skill},metadata:t},L=t,R.pendingMode=`free`}function J(){L=null,Z(),R.sessionId=null,R.status=`idle`,R.mode=null,R.pendingMode=`free`,R.items=[],R.todos=[],R.turnStartedAt=null,R.cursor=0,R.error=null,R.promptError=null,R.lastUsage=null,U=[],W=null,G=new Map,me(b),he(b)}function He(e){R.sessionId!==e&&(Ue(e,`idle`,z.sessions.find(t=>t.sessionId===e)?.mode??`free`),X())}function Ue(e,t,n){R.sessionId=e,R.status=t,R.mode=n,R.items=[],R.todos=[],R.turnStartedAt=null,R.cursor=0,R.error=null,R.lastUsage=null,U=[],W=null,G=new Map,ce(),B.items=[],Y(),me(e)}async function We(e){let t=R.sessionId;if(!t||R.mode===e)return!1;if(R.status===`running`)return R.error=`Switch modes after the current turn ends.`,!1;let n=Ae.issue();try{let r=await u().agent.session.setMode({sessionId:t,mode:e});return!n.isCurrent()||R.sessionId!==t?!1:(R.mode=r.session.mode,R.status=r.session.status,R.error=null,z.loaded=!1,q(),X(),!0)}catch(e){return n.isCurrent()&&(R.error=e instanceof Error?e.message:String(e)),!1}}async function Ge(e,t=[],n=[],r=`queue`,i=[]){if(e.trim().length===0&&t.length===0&&n.length===0)return;if(r===`queue`&&R.status===`running`&&se(e),!R.sessionId){if(await Le(void 0,R.pendingMode,L??void 0),!R.sessionId)return;ge(b,R.sessionId)}let a=R.sessionId,o=Ee.issue();R.sending=!0;let s=t.filter(e=>e.preview===void 0).map(e=>e.name??`image`);R.items.push({kind:`user`,seq:-Date.now(),text:e,...t.some(e=>e.preview!==void 0)?{images:t.flatMap(e=>e.preview===void 0?[]:[e.preview])}:{},...n.length>0||s.length>0?{files:[...n.map(e=>e.name??`file`),...s]}:{}}),U.push(e);try{if(await u().agent.session.prompt({sessionId:a,text:e,mode:r,images:t.map(e=>{if(e.path!==void 0)return{path:e.path,...e.name?{name:e.name}:{}};if(e.mediaType===void 0||e.data===void 0)throw Error(`image attachment needs either path or mediaType+data`);return{mediaType:e.mediaType,data:e.data,...e.name?{name:e.name}:{}}}),files:n.map(e=>{if(e.path!==void 0)return{path:e.path};if(e.name===void 0||e.data===void 0)throw Error(`file attachment needs either path or name+data`);return{name:e.name,data:e.data}}),references:i.map(e=>e.kind===`file`?{kind:`file`,path:e.target}:e.kind===`skill`?{kind:`skill`,workspaceId:e.skill.workspaceId,providerId:e.skill.providerId,skillId:e.skill.skillId}:{kind:`session`,sessionId:e.target})}),!o.isCurrent())return;R.promptError=null,he(a),r===`queue`&&Y()}catch(t){if(!o.isCurrent())return;R.promptError=t instanceof Error?t.message:String(t),v(e);let n=U.indexOf(e);n>=0&&U.splice(n,1)}finally{o.isCurrent()&&(R.sending=!1)}X()}async function Ke(){let e=R.sessionId;if(e){try{await u().agent.session.cancel({sessionId:e})}catch(e){R.error=e instanceof Error?e.message:String(e)}X()}}async function Y(){let e=R.sessionId;if(!e){B.items=[];return}let t=Me.issue();try{let n=await u().agent.queue.list({sessionId:e});if(!t.isCurrent()||R.sessionId!==e)return;B.items=n.items}catch{}}async function qe(e){let t=R.sessionId;if(!t)return null;let n=e.action===`edit`?{sessionId:t,messageId:e.messageId,action:`edit`,text:e.text}:e.action===`remove`?{sessionId:t,messageId:e.messageId,action:`remove`}:{sessionId:t,messageId:e.messageId,action:`steer`};try{return await u().agent.queue.update(n),await Y(),{updated:!0}}catch(e){return Y(),{error:e instanceof Error?e.message:String(e)}}}async function Je(e,t){let n=R.sessionId;if(!n)return;let r=De.issue();try{if(await u().agent.session.answer({sessionId:n,requestSeq:e,answers:t}),!r.isCurrent())return;for(let t of R.items)t.kind===`approval`&&t.seq===e&&(t.resolved=!0)}catch(e){if(!r.isCurrent())return;R.error=e instanceof Error?e.message:String(e)}X()}async function X(){let e=R.sessionId;if(!e)return;let t=Te.issue();try{let n=await u().agent.session.stream({sessionId:e,afterSeq:R.cursor,limit:100});if(!t.isCurrent()||R.sessionId!==e)return;R.status=n.status;for(let e of n.frames)st(e),R.cursor=Math.max(R.cursor,e.seq);R.error=null}catch(e){if(!t.isCurrent())return;R.error=e instanceof Error?e.message:String(e),Z();return}Ye()}function Ye(){Z();let e=R.items.some(e=>e.kind===`approval`&&!e.resolved);if(R.status===`running`||e){R.sessionId;let e=R.status===`running`?450:1200;H=setTimeout(()=>{X()},e)}}function Z(){H!==null&&(clearTimeout(H),H=null)}function Xe(e,t,n){for(let t=R.items.length-1;t>=0;t--){let r=R.items[t];if(r.kind===`turn`)break;if(r.kind===e){r.streaming&&=(r.text=n,!1);return}}R.items.push({kind:e,seq:t,text:n,streaming:!1})}function Ze(e){let t=e?.usage;if(!t)return null;let n=t.inputTokens??t.promptTokens??t.input_tokens??0,r=t.outputTokens??t.completionTokens??t.output_tokens??0;return n>0||r>0?{inputTokens:n,outputTokens:r}:null}function Q(e,t){for(let n=R.items.length-1;n>=0;n--){let r=R.items[n];if(r.kind===`turn`)return null;if(r.kind===`tool`&&r.result===void 0){if(e!==void 0){if(r.toolCallId===e)return r;continue}if(r.toolName===t)return r}}return null}var Qe=r({isError:o(!0).optional(),error:ne([t().min(1),r()]).optional()}).passthrough();function $(e){let t=Qe.safeParse(e);return t.success?t.data.isError===!0||t.data.error!==void 0:!1}var $e=r({attachments:n(i()).optional()}).passthrough();function et(e){let t=$e.safeParse(e),n=t.success?t.data.attachments:void 0;if(!Array.isArray(n)||n.length===0)return null;let r=[],i=[],a=[];for(let e of n){let t=te.safeParse(e);if(t.success){if(t.data.kind===`image`&&t.data.thumb!==void 0)r.push(t.data.thumb);else{let e=t.data.name??(t.data.kind===`image`?`image`:`file`);i.push(e),t.data.kind===`image`&&a.push(e)}}}return r.length>0||i.length>0?{images:r,files:i,imageChipNames:a}:null}var tt=r({todos:n(i())}),nt=r({content:t(),status:t()}),rt=r({questions:n(ee)}),it=r({from:c,to:c}),at=r({childId:t().min(1),mode:a([`one-shot`,`continuable`]),label:t().optional()});function ot(e){let t=tt.safeParse(e);if(!t.success)return null;let n=[];for(let e of t.data.todos){let t=nt.safeParse(e);t.success&&n.push(t.data)}return n}function st(e){switch(e.kind){case`turn-start`:R.turnStartedAt=e.at,G=new Map,R.items.push({kind:`turn`,seq:e.seq,label:`Turn`});break;case`status`:R.items.push({kind:`status`,seq:e.seq,text:JSON.stringify(e.payload??{})});break;case`auto-compact`:typeof e.text==`string`&&e.text.length>0&&R.items.push({kind:`note`,seq:e.seq,text:e.text});break;case`subagent`:{let t=at.safeParse(e.payload);if(!t.success)break;let n=typeof e.text==`string`&&e.text.length>0?e.text:t.data.childId;R.items.push({kind:`subagent`,seq:e.seq,label:n,mode:t.data.mode});break}case`user-text`:if(typeof e.text==`string`&&e.text.length>0){v(e.text),Y();let t=U.indexOf(e.text);if(t>=0){U.splice(t,1);break}let n=et(e.payload);R.items.push({kind:`user`,seq:e.seq,text:e.text,...n&&n.images.length>0?{images:n.images}:{},...n&&n.files.length>0?{files:n.files}:{},...n&&n.imageChipNames.length>0?{imageChipNames:n.imageChipNames}:{}})}break;case`assistant-delta`:if(typeof e.text==`string`&&e.text.length>0){let t=R.items[R.items.length-1];t?.kind===`assistant`&&t.streaming?t.text+=e.text:R.items.push({kind:`assistant`,seq:e.seq,text:e.text,streaming:!0})}break;case`assistant-reasoning-delta`:if(typeof e.text==`string`&&e.text.length>0){let t=R.items[R.items.length-1];t?.kind===`reasoning`&&t.streaming?t.text+=e.text:R.items.push({kind:`reasoning`,seq:e.seq,text:e.text,streaming:!0})}break;case`assistant-reasoning`:typeof e.text==`string`&&e.text.length>0&&Xe(`reasoning`,e.seq,e.text);break;case`todo-snapshot`:{let t=ot(e.payload);t!==null&&(R.todos=t);break}case`session-title`:{let t=typeof e.text==`string`?e.text.trim():``;if(t.length>0)for(let n of z.sessions)n.sessionId===e.sessionId&&(n.title=t);break}case`assistant-text`:if(typeof e.text==`string`&&e.text.length>0){Xe(`assistant`,e.seq,e.text);let t=Ze(e.payload);t&&(R.lastUsage=t,W=t)}break;case`tool-args-delta`:if(typeof e.text==`string`&&e.text.length>0&&e.toolCallId){let t=Q(e.toolCallId,e.toolName??``);if(t&&t.toolCallId===e.toolCallId&&t.phase===`calling`)t.argsText=(t.argsText??``)+e.text;else if(!t){let t=G.get(e.toolCallId);G.set(e.toolCallId,{...e.toolName?{name:e.toolName}:{},text:(t?.text??``)+e.text})}}break;case`tool-call`:{let t=e.toolName??`tool`,n=e.toolCallId;if(n!==void 0&&Q(n,t)!==null)break;let r=n===void 0?void 0:G.get(n);n!==void 0&&G.delete(n);let i;e.payload!==void 0&&e.payload!==null&&(i=typeof e.payload==`string`?e.payload:ct(e.payload)),(i===void 0||i.length===0)&&r&&(i=r.text),R.items.push({kind:`tool`,seq:e.seq,...n===void 0?{}:{toolCallId:n},toolName:t,...i!==void 0&&i.length>0?{argsText:i}:{},phase:`calling`,startedAt:e.at});break}case`tool-result`:{let t=e.toolName??`tool`,n=Q(e.toolCallId,t);if(n){n.result=e.payload,n.phase=$(e.payload)?`error`:`done`,n.endedAt=e.at;break}R.items.push({kind:`tool`,seq:e.seq,...e.toolCallId===void 0?{}:{toolCallId:e.toolCallId},toolName:t,result:e.payload,phase:$(e.payload)?`error`:`done`,startedAt:e.at,endedAt:e.at});break}case`turn-end`:{let t=typeof e.text==`string`&&e.text.length>0?e.text:`completed`;Y();let n=W;W=null;let r=R.turnStartedAt,i=r===null||Number.isNaN(Date.parse(r))||Number.isNaN(Date.parse(e.at))?void 0:Math.max(0,Date.parse(e.at)-Date.parse(r));R.items.push({kind:`turn-end`,seq:e.seq,reason:t,...n?{usage:n}:{},...i===void 0?{}:{elapsedMs:i}});break}case`approval-request`:{let t=rt.safeParse(e.payload);if(!t.success)break;R.items.push({kind:`approval`,seq:e.seq,questions:t.data.questions,resolved:!1});break}case`approval-resolved`:for(let e of R.items)e.kind===`approval`&&(e.resolved=!0);break;case`mode-changed`:{let t=it.safeParse(e.payload);if(!t.success)break;R.items.push({kind:`mode`,seq:e.seq,from:t.data.from,to:t.data.to}),R.mode=t.data.to;break}}R.items.length>500&&R.items.splice(0,R.items.length-500)}function ct(e){try{return JSON.stringify(e,null,2)??``}catch{return String(e)}}async function lt(){let e=Oe.issue();V.loading=!0;try{let t=await u().agent.settings.get({});return e.isCurrent()?(V.view=t,V.error=null,{view:t,error:null}):{view:null,error:null}}catch(t){if(!e.isCurrent())return{view:null,error:null};let n=t instanceof Error?t.message:String(t);return V.error=n,{view:null,error:n}}finally{e.isCurrent()&&(V.loading=!1)}}async function ut(e){let t=ke.issue();V.updating=!0;try{let n=await u().agent.settings.update(e);return t.isCurrent()?(n.outcome===`updated`&&(V.view=n.view),n):null}catch(e){return t.isCurrent()?{outcome:`error`,message:e instanceof Error?e.message:String(e)}:null}finally{t.isCurrent()&&(V.updating=!1)}}async function dt(e){try{let t=l();return t===null?null:await t.agent.files.pickFiles({mode:e})}catch(e){return f(`File picker failed: ${e instanceof Error?e.message:String(e)}`),null}}async function ft(e){try{let t=l();if(t===null)return null;let n=await t.agent.files.preview({path:e});return n.kind===`image`?n.dataUrl:null}catch{return null}}async function pt(e){await Promise.all(e.map(async e=>{let t=await ft(e.path);if(t===null)return;let n=x.images.find(t=>t.path===e.path&&t.name===e.name&&t.preview===void 0);n!==void 0&&(n.preview=t)}))}async function mt(e,t){let n=N.issue();V.updating=!0;try{let r=await u().agent.credentials.set({provider:e,apiKey:t});return n.isCurrent()?(r.outcome===`stored`&&(V.view=r.view),r):null}catch(e){return n.isCurrent()?{outcome:`rejected`,code:`NETWORK`,detail:e instanceof Error?e.message:String(e)}:null}finally{n.isCurrent()&&(V.updating=!1)}}async function ht(e){let t=N.issue();V.updating=!0;try{let n=await u().agent.credentials.clear({provider:e});if(!t.isCurrent())return;V.view=n}catch(e){if(!t.isCurrent())return;V.error=e instanceof Error?e.message:String(e)}finally{t.isCurrent()&&(V.updating=!1)}}async function gt(e){let t=l();if(t===null)return null;try{return await t.agent.settings.testConnection(e)}catch(e){return{outcome:`failed`,detail:e instanceof Error?e.message:String(e)}}}export{Se as A,g as B,Re as C,j as D,ut as E,ve as F,ae as H,be as I,pe as L,x as M,k as N,M as O,_e as P,h as R,We as S,qe as T,oe as V,He as _,z as a,Pe as b,Ke as c,pt as d,q as f,Be as g,Ve as h,R as i,xe as j,fe as k,Ie as l,dt as m,B as n,Je as o,lt as p,V as r,J as s,I as t,ht as u,Ge as v,gt as w,Fe as x,mt as y,ie as z};
|