@kilocode/cli-darwin-arm64 7.5.16 → 7.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/console/assets/AgentsRoute-DJcYrv6h.js +3 -0
- package/bin/console/assets/CliNotificationsRoute-Bxfy6kBS.js +1 -0
- package/bin/console/assets/CliUiRoute-kOIr2sXL.js +1 -0
- package/bin/console/assets/ConfigLayout-DjHPFaCq.css +1 -0
- package/bin/console/assets/ConfigLayout-zgXVE6dF.js +1 -0
- package/bin/console/assets/ConfigPage-CFkfj5pU.js +1 -0
- package/bin/console/assets/ConfirmDialog-kzGpMvPd.js +1 -0
- package/bin/console/assets/ConsoleUiRoute--VRAeLR0.js +1 -0
- package/bin/console/assets/CustomSelect-BukE91GR.js +1 -0
- package/bin/console/assets/FormattersRoute-5K8HEXB2.css +1 -0
- package/bin/console/assets/FormattersRoute-BWodvsWm.js +3 -0
- package/bin/console/assets/GhosttyTerminal-CYFOlDbt.js +13 -0
- package/bin/console/assets/IndexingRoute-2yel9lrf.js +1 -0
- package/bin/console/assets/IndexingRoute-D0nIx9Pv.css +1 -0
- package/bin/console/assets/KeybindsRoute-DPP8xngh.css +1 -0
- package/bin/console/assets/KeybindsRoute-McnML03L.js +1 -0
- package/bin/console/assets/LoginRoute-CyJAA6AC.js +1 -0
- package/bin/console/assets/McpRoute-D22Npdv0.css +1 -0
- package/bin/console/assets/McpRoute-D2NCS8W_.js +138 -0
- package/bin/console/assets/ModelsRoute-BcNQLrbm.js +1 -0
- package/bin/console/assets/ModelsRoute-Dk1uAzWQ.css +1 -0
- package/bin/console/assets/OverviewRoute-JXN401zJ.js +1 -0
- package/bin/console/assets/OverviewRoute-neFLWBjP.css +1 -0
- package/bin/console/assets/PermissionsRoute-BIjHuwFU.css +1 -0
- package/bin/console/assets/PermissionsRoute-FkoN6ci-.js +1 -0
- package/bin/console/assets/ProfileRoute-ChHcJQ6b.js +1 -0
- package/bin/console/assets/ProjectConsoleRoute-Df0w2iOW.css +1 -0
- package/bin/console/assets/ProjectConsoleRoute-xIHV_Od_.js +4 -0
- package/bin/console/assets/ProvidersRoute-DXIU7yYj.js +5 -0
- package/bin/console/assets/ServersRoute-BBRszzTY.css +1 -0
- package/bin/console/assets/ServersRoute-CNBMyJ4o.js +1 -0
- package/bin/console/assets/SourcesRoute-DMPIzkTG.js +1 -0
- package/bin/console/assets/SourcesRoute-DMunRt3T.css +1 -0
- package/bin/console/assets/ToolsRoute-CtJ1CPKJ.js +1 -0
- package/bin/console/assets/agents-tools-DXx49OgX.css +1 -0
- package/bin/console/assets/button-BT_ytG5s.js +1 -0
- package/bin/console/assets/cli-ui-DymkjzY0.css +1 -0
- package/bin/console/assets/config-De5WBuy1.js +1 -0
- package/bin/console/assets/console-DBczKSnI.js +1 -0
- package/bin/console/assets/dialogs-BCnEWnpn.css +1 -0
- package/bin/console/assets/file-B0aQP9j1.js +649 -0
- package/bin/console/assets/index-6uAP9-SB.js +19 -0
- package/bin/console/assets/index-B-RNivcl.css +1 -0
- package/bin/console/assets/models-C5w_34p2.js +1 -0
- package/bin/console/assets/models-CkIsKFzm.css +1 -0
- package/bin/console/assets/profile-BT3_Yn05.js +1 -0
- package/bin/console/assets/profile-Do_gK9qi.css +1 -0
- package/bin/console/assets/session-review-C49EA5sE.js +30 -0
- package/bin/console/assets/tag-ndRFRrjh.js +1 -0
- package/bin/console/assets/ui-DeoAcBNH.js +1 -0
- package/bin/console/index.html +2 -2
- package/bin/kilo +0 -0
- package/package.json +1 -1
- package/bin/console/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- package/bin/console/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- package/bin/console/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- package/bin/console/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- package/bin/console/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- package/bin/console/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- package/bin/console/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- package/bin/console/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- package/bin/console/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- package/bin/console/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- package/bin/console/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- package/bin/console/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- package/bin/console/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- package/bin/console/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- package/bin/console/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- package/bin/console/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- package/bin/console/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- package/bin/console/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- package/bin/console/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- package/bin/console/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- package/bin/console/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- package/bin/console/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- package/bin/console/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- package/bin/console/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- package/bin/console/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- package/bin/console/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- package/bin/console/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- package/bin/console/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- package/bin/console/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- package/bin/console/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- package/bin/console/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- package/bin/console/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- package/bin/console/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- package/bin/console/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- package/bin/console/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- package/bin/console/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- package/bin/console/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- package/bin/console/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- package/bin/console/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- package/bin/console/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- package/bin/console/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- package/bin/console/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- package/bin/console/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- package/bin/console/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- package/bin/console/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- package/bin/console/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- package/bin/console/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- package/bin/console/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- package/bin/console/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- package/bin/console/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- package/bin/console/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- package/bin/console/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- package/bin/console/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- package/bin/console/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- package/bin/console/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- package/bin/console/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- package/bin/console/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- package/bin/console/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- package/bin/console/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- package/bin/console/assets/index-B2oknisZ.css +0 -1
- package/bin/console/assets/index-oVVWPmdA.js +0 -857
- package/bin/console/logo.lottie +0 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{c as x,d as w,e as Le,P as wt,y as J,Q as Xe,R as St,E as Z,D as Ve,T as xt,U as Pt,V as At,f as t,u as Dt,a as Mt,W as Tt,h as It,w as _e,i as r,S as y,F as O,X as H,g as M,s as Q,C as ne,x as Bt,m as Ne,v as le,t as u}from"./index-6uAP9-SB.js";import{B as D}from"./button-BT_ytG5s.js";import{a as ze,d as ke,c as K,b as E,S as Ot,e as Y}from"./ConfigPage-CFkfj5pU.js";import{C as jt}from"./CustomSelect-BukE91GR.js";import{u as He}from"./config-De5WBuy1.js";import{r as ae,d as Lt,a as Nt,A as ve,l as Rt,t as Et}from"./PermissionsRoute-FkoN6ci-.js";import{a as Ft,c as qt}from"./models-C5w_34p2.js";/* empty css */import"./tag-ndRFRrjh.js";const Ut=["Review the current diff and report risks, regressions, and missing tests.","Plan the work in small steps, then implement the smallest correct change.","Inspect relevant files first, then summarize the root cause before editing.","Run the smallest relevant validation checks and report any remaining failures."];function Gt(n,o){return n.provider.id===o.providerID&&n.model.id===o.modelID?!0:n.model.providerID===o.providerID&&n.model.id===o.modelID}function $e(n){const o=J(n);if(o)return o}function Xt(n){const o=Number(n);if(Number.isInteger(o)&&o>0)return o}function R(n){return n&&typeof n=="object"&&!Array.isArray(n)?n:{}}function G(n){return typeof n=="string"?n:""}function Vt(n){if(typeof n=="number"&&Number.isFinite(n))return n}function Re(n,o="ask"){return n==="allow"||n==="deny"||n==="ask"?n:o}function ye(n,o,v){if(!(v!=="allow"&&v!=="deny"&&v!=="ask"))return{tool:n,pattern:o,action:v}}function Ee(n,o){const v=R(o);if(Object.keys(v).length)return Object.entries(v).flatMap(([S,T])=>ye(n,S,T)??[]);const e=ye(n,"*",o);return e?[e]:[]}const zt=new Set(ae.map(n=>n.id)),Ht=new Set(Lt.map(n=>n.id));function Qt(n){const o=n.options.source;if(typeof o=="string")return o}function Wt(n){const o=Object.entries(Jt(n));return{tools:Xe(o.filter(([,v])=>v==="allow").map(([v])=>v)),permission:Object.fromEntries(o.filter(([,v])=>v!=="allow"))}}function Jt(n){return Array.isArray(n)?n.reduce((o,v)=>{const e=R(v),S=G(e.permission),T=G(e.action);if(!S||!T)return o;const g=G(e.pattern)||"*";if(g==="*")return{...o,[S]:T};const m=o[S],p=m&&typeof m=="object"&&!Array.isArray(m)?m:{};return{...o,[S]:{...p,[g]:T}}},{}):R(n)}function Kt(n,o){return(n.overlay.collections.agent??[]).find(v=>v.key===o)}function W(n){return n.displayName??Pt(n.name)}function Yt(n){return n.model?`${n.model.providerID}/${n.model.modelID}`:""}function Ce(n,o){return!(n.native||o?.inherited||o?.editable===!1||Qt(n)==="organization")}function Zt(n){const o=He(),v=()=>o.data(),e=x(()=>o.query()?.scope??"project"),[S,T]=w(),[g,m]=w(!0),[p,a]=w(!1),[s,f]=w("reviewer"),[c,i]=w(""),[h,b]=w("subagent"),[_,C]=w(""),[B,P]=w(""),[j,A]=w(""),[L,X]=w([]),[se,ee]=w(""),[oe,ce]=w("external_directory"),[we,de]=w(""),[Se,ue]=w("ask"),[F,q]=w({}),[We,te]=w(),[Je,z]=w("closed"),[xe,ge]=w(""),[Pe,pe]=w(""),[Ae,he]=w(""),[me,fe]=w([]),Ke=x(()=>Ft(v())),De=x(()=>Ke().flatMap(l=>Object.values(l.models).map(d=>({id:`${l.id}/${d.id}`,provider:l,model:d})))),Ye=x(()=>v()?.modelState.favorite??[]),Me=l=>Ye().some(d=>Gt(l,d)),Ze=x(()=>qt(xe(),De(),Me)),et=l=>{if(typeof l=="string")return De().find(d=>d.id===l||`${d.model.providerID}/${d.model.id}`===l)},tt=x(()=>et(_())),rt=x(()=>{const l=v();if(!l)return[];const d=Ae().trim().toLowerCase(),$=new Map(l.toolDetails.map(k=>[k.id,k]));return l.tools.map(k=>({id:k,detail:$.get(k)})).filter(k=>d?`${k.id} ${Z(k.id)} ${Ve(k).join(" ")}`.toLowerCase().includes(d):!0).sort((k,N)=>Z(k.id).localeCompare(Z(N.id)))}),nt=x(()=>new Set(me())),lt=x(()=>Object.entries(F()).flatMap(([l,d])=>Ee(l,d))),it=x(()=>ae.map(l=>{const d=F()[l.id],$=R(d);return{...l,action:Re(typeof d=="string"?d:$["*"]),rules:Object.entries($).filter(([k])=>k!=="*").flatMap(([k,N])=>ye(l.id,k,N)??[])}})),at=x(()=>Nt.map(l=>{const d=F()[l.id],$=R(d);return{...l,action:Re(typeof d=="string"?d:$["*"])}})),st=x(()=>Object.entries(F()).filter(([l])=>!Ht.has(l)).flatMap(([l,d])=>Ee(l,d)).sort((l,d)=>l.tool.localeCompare(d.tool)||l.pattern.localeCompare(d.pattern))),Te=x(()=>ae.find(l=>l.id===oe())??ae[0]);function Ie(l="reviewer"){f(l),i(""),b("subagent"),C(""),P(""),A(""),X([]),ee(""),q({}),te(void 0),a(!1),z("closed"),ce("external_directory"),de(""),ue("ask"),ge(""),pe(""),he(""),fe([])}Le(()=>{n?.()||S()!==""&&(Ie(),m(!0),T(""))}),Le(()=>{const l=v(),d=n?.();if(!l||!d||S()===d)return;Ie(d),m(!1),T(d);const $=l.agents.find(Ct=>Ct.name===d);if(!$){o.fail(`Agent not found: ${d}`);return}const k=Kt(l,d),N=Ce($,k);o.fail(""),m(!0),a(!N);const V=R(k?.value),Oe=Wt(V.permission??(N?void 0:$.permission)),je=Vt(V.steps)??$.steps;f($.name),i(G(V.description)||$.description||""),b(xt(G(V.mode)||$.mode)),C(G(V.model)||Yt($)),P(G(V.color)||$.color||""),A(je?String(je):""),X(Oe.tools),q(Oe.permission),ee(G(V.prompt)||$.prompt||"")});function re(){z("closed")}function I(){return p()?(o.fail("Inspected agents are read-only."),!1):!0}function ot(){const l=Be();l&&(te(void 0),z("markdown"),o.run("Previewing agent",()=>St(o.target(),l).then(te),{refetch:!1}))}function ct(){I()&&(ge(""),pe(_()),z("model"))}function dt(l){pe(l.id)}function ut(){if(!I())return;const l=Pe();if(!l){o.fail("Select a model before saving the agent model field.");return}C(l),re()}function gt(){I()&&C("")}function pt(){I()&&(he(""),fe(L()),z("tools"))}function ht(l){if(!I())return;const d=new Set(me());d.has(l)?d.delete(l):d.add(l),fe(Xe(d))}function mt(){I()&&(X(me()),re())}function ft(){I()&&X([])}function vt(l){I()&&(ce(l),de(""),ue("ask"),z("permission"))}function $t(l,d){if(!I())return;const $={...F()};if(!zt.has(l)){$[l]=d,q($);return}const k=R($[l]);$[l]={...k,"*":d},q($)}function bt(){if(!I())return;const l=J(we());if(!l){o.fail(`Enter a ${Te().noun} pattern before saving.`);return}const d=oe(),$={...F()},k=$[d],N=k&&typeof k=="object"&&!Array.isArray(k)?{...k}:{};N[l]=Se(),$[d]=N,q($),re()}function _t(l){if(!I())return;const d={...F()};if(l.pattern==="*"){const k={...R(d[l.tool])};if(Object.keys(k).length){delete k["*"],Object.keys(k).length?d[l.tool]=k:delete d[l.tool],q(d);return}delete d[l.tool],q(d);return}const $={...R(d[l.tool])};delete $[l.pattern],Object.keys($).length?d[l.tool]=$:delete d[l.tool],q(d)}function kt(l){if(!I())return;const d=J(se());ee(d?`${d}
|
|
2
|
+
|
|
3
|
+
${l}`:l)}function Be(){if(!g()){o.fail("Select an agent before previewing or saving.");return}const l=J(s()),d=J(se());if(!l||!d){o.fail("Enter an agent id and prompt before previewing or saving.");return}const $=F();return{scope:e(),id:l,description:$e(c()),mode:h(),model:$e(_()),color:$e(B()),steps:Xt(j()),tools:L().length?L():void 0,permission:Object.keys($).length?$:void 0,prompt:d}}function yt(){if(!I())return;const l=Be();l&&o.run("Saving agent",()=>wt(o.target(),l).then(te))}return{ctx:o,snap:v,scope:e,id:s,setId:f,desc:c,setDesc:i,mode:h,setMode:b,model:_,setModel:C,color:B,setColor:P,steps:j,setSteps:A,tools:L,prompt:se,setPrompt:ee,permTool:oe,setPermTool:ce,permPattern:we,setPermPattern:de,permAction:Se,setPermAction:ue,permissionGroups:it,permissionDefaults:at,permissionOther:st,selectedPermission:Te,draft:We,ready:g,locked:p,panel:Je,close:re,openMarkdown:ot,picker:xe,setPicker:ge,choice:Pe,models:Ze,selected:tt,fav:Me,openModel:ct,selectModel:dt,saveModel:ut,clearModel:gt,search:Ae,setSearch:he,options:rt,pickedDraft:nt,openTools:pt,rules:lt,openPermission:vt,setPermissionDefault:$t,removePermission:_t,toggleTool:ht,saveTools:mt,clearTools:ft,addPermission:bt,insert:kt,save:yt}}var er=u("<div class=agent-builder-field-actions>"),tr=u('<div class="ui-field agent-builder-field"><div class=agent-builder-field-head><div><span></span></div></div><div class=agent-builder-control>'),rr=u("<small>"),nr=u("<div class=permission-row-meta>"),lr=u("<div class=agents>"),ir=u("<span class=config-title-count>Agents"),ar=u("<p class=empty>"),sr=u("<section class=agent-section>"),or=u("<div>"),cr=u("<span class=agent-mode-dot aria-hidden=true>"),dr=u("<span class=agent-subtitle><span class=agent-id></span><span class=agent-description>"),ur=u('<div class="tags agent-tags">'),gr=u("<header class=ui-card-header><div><h2>Identity</h2><p>Name, mode, and display metadata for this agent."),pr=u("<input class=mono placeholder=reviewer>"),hr=u('<input placeholder="Review code and report risks">'),mr=u('<div class=agent-color-control><input class=mono placeholder=#0e639c><div class=agent-color-swatches aria-label="Preset colors">'),fr=u("<input class=mono placeholder=optional inputmode=numeric>"),Fe=u('<div class="ui-form agent-builder-form">'),vr=u("<header class=ui-card-header><div><h2>Model And Tools</h2><p>Choose the model and default tool access written into the agent frontmatter."),be=u("<strong>"),$r=u('<div class="tag-cloud agent-tool-summary">'),br=u("<header class=ui-card-header><div><h2>System Prompt</h2><p>Markdown instructions that define how this agent behaves."),_r=u('<textarea class="mono agent-prompt-input"placeholder="Describe how this agent should behave.">'),kr=u('<div class="ui-form agent-builder-form"><div class=agent-snippets><div class=block-title><strong>Prompt snippets</strong><span>Insert a starter instruction into the prompt, then customize it.</span></div><div class=snippet-list>'),yr=u("<header class=ui-card-header><div><h2>Agent Permissions</h2><p>Add scalar or pattern-specific overrides before previewing markdown."),Cr=u("<section class=permission-group><div class=permission-rules>"),wr=u('<div class="ui-card-body agent-permissions-body"><div class="permissions agent-permissions"><section class=permission-group><div class=permission-rules>'),Sr=u('<div class="builder agent-builder"><section class="builder-form agent-builder-stack">'),ie=u("<div class=drawer-scrim>"),xr=u('<aside class=provider-drawer aria-label="Agent model selector"><header class=drawer-header><div><h2>Choose Model</h2><span>Favorites are listed first, then models are sorted alphabetically.</span></div></header><div class="provider-picker model-picker"></div><footer class=drawer-footer>'),Pr=u('<aside class=provider-drawer aria-label="Agent tool access selector"><header class=drawer-header><div><h2>Choose Tool Access</h2><span>Selected tools are written as allow permissions in the agent frontmatter.</span></div></header><div class="provider-picker tool-picker"></div><footer class=drawer-footer>'),Ar=u('<aside class="provider-drawer permission-drawer"aria-label="Agent permission rule configuration"><header class=drawer-header><div><h2></h2><span></span></div></header><div class="provider-form permission-form"><label class="required-field wide"><input></label><label class="required-field wide">Method</label></div><footer class=drawer-footer>'),Dr=u('<aside class=provider-drawer aria-label="Generated agent markdown"><header class=drawer-header><div><h2>Markdown</h2><span></span></div></header><div class="provider-picker markdown-picker">'),Mr=u("<button class=agent-color-swatch type=button>"),qe=u("<span class=mono>"),Tr=u("<strong>No tools selected"),Ir=u("<span>No allow permissions will be written."),Br=u("<section class=permission-group><header class=permission-group-header><div class=permission-group-copy><h2></h2><span></span><p></p></div><div class=permission-section-actions></div></header><div class=permission-rules>"),Or=u("<p class=permission-empty>No specific <!> rules."),jr=u("<span class=permission-pattern>"),Lr=u("<span class=permission-subtitle><span></span><span class=permission-pattern>"),Nr=u("<p class=empty>No models match this filter."),Rr=u('<button class="provider-option model-option"type=button><span class=model-star aria-hidden=true></span><div><strong></strong><span></span></div><div class=tags>'),Er=u("<p class=empty>No tools match this filter."),Fr=u('<button class="provider-option tool-option"type=button><div class="model-main tool-main"><div class=model-title><div><strong></strong><span></span></div></div><div class=tags></div></div><ul class=tool-capabilities>'),qr=u("<li>"),Ur=u("<p class=empty>Generating markdown preview..."),Gr=u("<pre class=markdown-preview>");const Xr=["#0e639c","#89d185","#cca700","#f14c4c","#3794ff","#c586c0","#9cdcfe"],Vr=[{value:"primary",label:"Primary"},{value:"subagent",label:"Subagent"},{value:"all",label:"Both"}];function Ue(n){return n.description??"No description available."}function zr(n){return n===0?"Project Agents":"Global Agents"}function Qe(){const n=Dt(),o=Mt();return{href:e=>{const S=e?`/${encodeURIComponent(e)}`:"";return`${Tt(n.pathname)}/agents${S}${n.search}`},nav:o}}function Hr(n){return n.length===1?"1 tool":`${n.length} tools`}function U(n){return(()=>{var o=tr(),v=o.firstChild,e=v.firstChild,S=e.firstChild,T=v.nextSibling;return r(S,()=>n.label),r(e,t(y,{get when(){return n.description},children:g=>(()=>{var m=rr();return r(m,g),m})()}),null),r(v,t(y,{get when(){return n.actions},get children(){var g=er();return r(g,()=>n.actions),g}}),null),r(T,()=>n.children),o})()}function Ge(n){return(()=>{var o=nr();return r(o,t(E,{get tone(){return Et(n.action)},get children(){return Rt(n.action)}})),o})()}function nn(){const n=Qe(),o=He(),[v,e]=w(""),S=()=>o.data(),T=x(()=>{const a=S();if(!a)return[];const s=o.query()?.scope??"global",f=new Map((a.overlay.collections.agent??[]).map(i=>[i.key,i])),c=new Set((a.overlay.collections.agent??[]).filter(i=>i.source==="project").map(i=>i.key));return a.agents.filter(i=>{const h=f.get(i.name);return s==="global"?!h?.local:c.has(i.name)||!h?.local}).map(i=>({item:i,entry:f.get(i.name),rank:c.has(i.name)?0:1})).sort((i,h)=>i.rank-h.rank||W(i.item).localeCompare(W(h.item)))}),g=x(()=>{const a=v().trim().toLowerCase();return a?T().filter(s=>`${W(s.item)} ${s.item.name} ${Ue(s.item)}`.toLowerCase().includes(a)):T()}),m=x(()=>[0,1].map(a=>g().filter(s=>s.rank===a)).filter(a=>a.length)),p=x(()=>T().length?"No agents match this filter.":"No agents loaded.");return t(y,{get when(){return S()},children:a=>t(ze,{get title(){return(()=>{var s=ir();return s.firstChild,r(s,t(Y,{get children(){return T().length}}),null),s})()},description:"Agents are reusable model, prompt, and tool configurations. Primary agents drive sessions; subagents are delegated to.",get actions(){return t(D,{icon:"plus",variant:"primary",onClick:()=>n.nav(n.href("new")),children:"New agent"})},get children(){return[t(_e,{label:"Filter agents",get value(){return v()},placeholder:"Filter by name or ID...",onValue:e}),(()=>{var s=lr();return r(s,t(y,{get when(){return m().length},get fallback(){return(()=>{var f=ar();return r(f,p),f})()},get children(){return t(O,{get each(){return m()},children:f=>(()=>{var c=sr();return r(c,t(y,{get when(){return o.query()?.scope==="project"},get children(){return t(ke,{get children(){return zr(f[0]?.rank??1)}})}}),null),r(c,t(O,{each:f,children:i=>(()=>{var h=or();return r(h,t(K,{get leading(){return(()=>{var b=cr();return M(()=>Q(b,"data-mode",i.item.mode)),b})()},get title(){return W(i.item)},get subtitle(){return(()=>{var b=dr(),_=b.firstChild,C=_.nextSibling;return r(_,()=>i.item.name),r(C,()=>Ue(i.item)),b})()},get status(){return(()=>{var b=ur();return r(b,t(E,{get tone(){return i.item.mode==="primary"?"brand":"neutral"},get children(){return i.item.mode}}),null),r(b,t(E,{get children(){return i.item.native?"Native":"Custom"}}),null),r(b,t(y,{get when(){return i.item.hidden},get children(){return t(E,{children:"Hidden"})}}),null),r(b,t(y,{get when(){return i.item.deprecated},get children(){return t(E,{children:"Deprecated"})}}),null),r(b,t(y,{get when(){return i.entry},children:_=>t(Ot,{get source(){return _().source},get inherited(){return _().inherited},get overridden(){return _().overridden}})}),null),b})()},get actions(){return t(H,{get icon(){return Ce(i.item,i.entry)?"edit":"eye"},variant:"ghost",get"aria-label"(){return`${Ce(i.item,i.entry)?"Edit":"Inspect"} ${W(i.item)}`},onClick:()=>n.nav(n.href(i.item.name))})}})),M(()=>h.classList.toggle("inherited",!!i.entry?.inherited)),h})()}),null),c})()})}})),s})()]}})})}function ln(){const n=Qe(),o=At(),v=()=>o.agentID==="new"?void 0:o.agentID,e=Zt(v),S=x(()=>v()?e.locked()?"Inspect Agent":"Edit Agent":"Agent Builder");return t(y,{get when(){return e.snap()},children:T=>t(ze,{get title(){return S()},description:"Build a reusable agent by combining a prompt, model, mode, and tool permissions.",get actions(){return[t(D,{variant:"secondary",get disabled(){return!!e.ctx.saving()||!e.ready()},get onClick(){return e.openMarkdown},children:"Markdown"}),t(y,{get when(){return!e.locked()},get children(){return t(D,{variant:"primary",get disabled(){return!!e.ctx.saving()||!e.ready()},get onClick(){return e.save},children:"Save"})}}),t(H,{icon:"close",variant:"secondary","aria-label":"Close agent builder",onClick:()=>n.nav(n.href())})]},get children(){return[(()=>{var g=Sr(),m=g.firstChild;return r(m,t(ne,{class:"ui-card agent-builder-card",padding:0,get children(){return[gr(),(()=>{var p=Fe();return r(p,t(U,{label:"Agent id",description:"Used in @ mentions, commands, and agent files.",get children(){var a=pr();return a.$$input=s=>e.setId(s.currentTarget.value),Q(a,"spellcheck",!1),M(()=>a.readOnly=e.locked()),M(()=>a.value=e.id()),a}}),null),r(p,t(U,{label:"Description",description:"Shown when choosing or delegating to the agent.",get children(){var a=hr();return a.$$input=s=>e.setDesc(s.currentTarget.value),M(()=>a.readOnly=e.locked()),M(()=>a.value=e.desc()),a}}),null),r(p,t(U,{label:"Mode",description:"Primary agents can run sessions directly; subagents are delegated to by other agents.",get children(){return t(jt,{label:"Agent mode",get value(){return e.mode()},options:Vr,get disabled(){return e.locked()},get onSelect(){return e.setMode}})}}),null),r(p,t(U,{label:"Color",get children(){var a=mr(),s=a.firstChild,f=s.nextSibling;return s.$$input=c=>e.setColor(c.currentTarget.value),r(f,t(O,{each:Xr,children:c=>(()=>{var i=Mr();return i.$$click=()=>e.setColor(c),Q(i,"aria-label",`Use color ${c}`),Bt(i,"background-color",c),M(h=>{var b=e.color()===c,_=e.locked();return b!==h.e&&i.classList.toggle("selected",h.e=b),_!==h.t&&(i.disabled=h.t=_),h},{e:void 0,t:void 0}),i})()})),M(()=>s.readOnly=e.locked()),M(()=>s.value=e.color()),a}}),null),r(p,t(U,{label:"Max steps",description:"Optional hard cap on tool-call iterations.",get children(){var a=fr();return a.$$input=s=>e.setSteps(s.currentTarget.value),M(()=>a.readOnly=e.locked()),M(()=>a.value=e.steps()),a}}),null),p})()]}}),null),r(m,t(ne,{class:"ui-card agent-builder-card",padding:0,get children(){return[vr(),(()=>{var p=Fe();return r(p,t(U,{label:"Model",description:"Leave unset to inherit the default model, or choose one to pin this agent to a specific model.",get actions(){return[t(y,{get when(){return Ne(()=>!e.locked())()&&e.model()},get children(){return t(D,{variant:"secondary",get disabled(){return!!e.ctx.saving()},get onClick(){return e.clearModel},children:"Use Default"})}}),t(H,{icon:"edit",variant:"secondary","aria-label":"Edit agent model",get disabled(){return!!e.ctx.saving()||e.locked()},get onClick(){return e.openModel}})]},get children(){return t(y,{get when(){return e.selected()},get fallback(){return[(()=>{var a=be();return r(a,()=>e.model()||"Inherit default model"),a})(),t(y,{get when(){return e.model()},children:a=>(()=>{var s=qe();return r(s,a),s})()})]},children:a=>[(()=>{var s=be();return r(s,()=>`${a().provider.name} / ${a().model.name}`),s})(),(()=>{var s=qe();return r(s,()=>a().id),s})()]})}}),null),r(p,t(U,{label:"Tool access",description:"Selected tools are written as allow permissions.",get actions(){return[t(y,{get when(){return Ne(()=>!e.locked())()&&e.tools().length},get children(){return t(D,{variant:"secondary",get disabled(){return!!e.ctx.saving()},get onClick(){return e.clearTools},children:"Clear"})}}),t(H,{icon:"edit",variant:"secondary","aria-label":"Edit tool access",get disabled(){return!!e.ctx.saving()||e.locked()},get onClick(){return e.openTools}})]},get children(){return t(y,{get when(){return e.tools().length},get fallback(){return[Tr(),Ir()]},get children(){return[(()=>{var a=be();return r(a,()=>Hr(e.tools())),a})(),(()=>{var a=$r();return r(a,t(O,{get each(){return e.tools()},children:s=>t(E,{children:s})})),a})()]}})}}),null),p})()]}}),null),r(m,t(ne,{class:"ui-card agent-builder-card",padding:0,get children(){return[br(),(()=>{var p=kr(),a=p.firstChild,s=a.firstChild,f=s.nextSibling;return r(p,t(U,{label:"Prompt",get children(){var c=_r();return c.$$input=i=>e.setPrompt(i.currentTarget.value),M(()=>c.readOnly=e.locked()),M(()=>c.value=e.prompt()),c}}),a),r(f,t(O,{each:Ut,children:c=>t(D,{variant:"secondary",get disabled(){return!!e.ctx.saving()||e.locked()},onClick:()=>e.insert(c),children:c})})),p})()]}}),null),r(m,t(ne,{class:"ui-card agent-builder-card",padding:0,get children(){return[(()=>{var p=yr();return p.firstChild,r(p,t(Y,{get children(){return e.rules().length}}),null),p})(),(()=>{var p=wr(),a=p.firstChild,s=a.firstChild,f=s.firstChild;return r(a,t(O,{get each(){return e.permissionGroups()},children:c=>(()=>{var i=Br(),h=i.firstChild,b=h.firstChild,_=b.firstChild,C=_.nextSibling,B=C.nextSibling,P=b.nextSibling,j=h.nextSibling;return r(_,()=>c.title),r(C,()=>c.id),r(B,()=>c.description),r(P,t(Y,{get children(){return c.rules.length}}),null),r(P,t(D,{icon:"plus",variant:"primary",get disabled(){return!!e.ctx.saving()||e.locked()},onClick:()=>e.openPermission(c.id),children:"Add rule"}),null),r(i,t(K,{title:"Default method",get subtitle(){return`Used for ${c.noun}s that do not match a specific rule.`},get actions(){return t(ve,{get label(){return`Default method for ${c.title}`},get value(){return c.action},get disabled(){return!!e.ctx.saving()||e.locked()},onSelect:A=>e.setPermissionDefault(c.id,A)})}}),j),r(j,t(y,{get when(){return c.rules.length},get fallback(){return(()=>{var A=Or(),L=A.firstChild,X=L.nextSibling;return X.nextSibling,r(A,()=>c.noun,X),A})()},get children(){return t(O,{get each(){return c.rules},children:A=>t(K,{get title(){return(()=>{var L=jr();return r(L,()=>A.pattern),L})()},get subtitle(){return`${c.title} ${c.noun} rule`},get status(){return t(Ge,{get action(){return A.action}})},get actions(){return t(H,{icon:"trash",variant:"ghost",get"aria-label"(){return`Delete ${c.title} rule ${A.pattern}`},get disabled(){return!!e.ctx.saving()||e.locked()},onClick:()=>e.removePermission(A)})}})})}})),i})()}),s),r(s,t(ke,{get trailing(){return t(Y,{get children(){return e.permissionDefaults().length}})},description:"Default methods for additional built-in tool permissions.",children:"Tool Defaults"}),f),r(f,t(O,{get each(){return e.permissionDefaults()},children:c=>t(K,{get title(){return c.title},get subtitle(){return`${c.id} · ${c.description}`},get actions(){return t(ve,{get label(){return`Default method for ${c.title}`},get value(){return c.action},get disabled(){return!!e.ctx.saving()||e.locked()},onSelect:i=>e.setPermissionDefault(c.id,i)})}})})),r(a,t(y,{get when(){return e.permissionOther().length},get children(){var c=Cr(),i=c.firstChild;return r(c,t(ke,{get trailing(){return t(Y,{get children(){return e.permissionOther().length}})},description:"Additional tool permission rules from this agent.",children:"Other Permissions"}),i),r(i,t(O,{get each(){return e.permissionOther()},children:h=>t(K,{get title(){return Z(h.tool)},get subtitle(){return(()=>{var b=Lr(),_=b.firstChild,C=_.nextSibling;return r(_,()=>h.tool),r(C,()=>h.pattern),b})()},get status(){return t(Ge,{get action(){return h.action}})},get actions(){return t(H,{icon:"trash",variant:"ghost",get"aria-label"(){return`Delete ${h.tool} rule ${h.pattern}`},get disabled(){return!!e.ctx.saving()||e.locked()},onClick:()=>e.removePermission(h)})}})})),c}}),null),p})()]}}),null),g})(),t(y,{get when(){return e.panel()==="model"},get children(){return[(()=>{var g=ie();return le(g,"click",e.close,!0),g})(),(()=>{var g=xr(),m=g.firstChild;m.firstChild;var p=m.nextSibling,a=p.nextSibling;return r(m,t(D,{variant:"ghost","aria-label":"Close model selector",get onClick(){return e.close},children:"X"}),null),r(g,t(_e,{class:"drawer-search",hideLabel:!1,label:"Filter models",get value(){return e.picker()},variant:"drawer",placeholder:"Search by name, provider, or ID",get onValue(){return e.setPicker}}),p),r(p,t(y,{get when(){return e.models().length},get fallback(){return Nr()},get children(){return t(O,{get each(){return e.models()},children:s=>(()=>{var f=Rr(),c=f.firstChild,i=c.nextSibling,h=i.firstChild,b=h.nextSibling,_=i.nextSibling;return f.$$click=()=>e.selectModel(s),r(h,()=>s.model.name),r(b,()=>s.id),r(_,t(E,{get children(){return s.provider.name}}),null),r(_,t(E,{get children(){return s.model.isFree?"free":"paid"}}),null),M(C=>{var B=e.choice()===s.id,P=!!e.fav(s);return B!==C.e&&f.classList.toggle("selected",C.e=B),P!==C.t&&c.classList.toggle("active",C.t=P),C},{e:void 0,t:void 0}),f})()})}})),r(a,t(D,{variant:"ghost",get onClick(){return e.close},children:"Cancel"}),null),r(a,t(D,{variant:"primary",get disabled(){return!!e.ctx.saving()||e.locked()||!e.choice()},get onClick(){return e.saveModel},children:"Save"}),null),g})()]}}),t(y,{get when(){return e.panel()==="tools"},get children(){return[(()=>{var g=ie();return le(g,"click",e.close,!0),g})(),(()=>{var g=Pr(),m=g.firstChild;m.firstChild;var p=m.nextSibling,a=p.nextSibling;return r(m,t(D,{variant:"ghost","aria-label":"Close tool selector",get onClick(){return e.close},children:"X"}),null),r(g,t(_e,{class:"drawer-search",hideLabel:!1,label:"Filter tools",get value(){return e.search()},variant:"drawer",placeholder:"Search by tool name, ID, or capability",get onValue(){return e.setSearch}}),p),r(p,t(y,{get when(){return e.options().length},get fallback(){return Er()},get children(){return t(O,{get each(){return e.options()},children:s=>(()=>{var f=Fr(),c=f.firstChild,i=c.firstChild,h=i.firstChild,b=h.firstChild,_=b.nextSibling,C=i.nextSibling,B=c.nextSibling;return f.$$click=()=>e.toggleTool(s.id),r(b,()=>Z(s.id)),r(_,()=>s.id),r(C,t(E,{get children(){return e.pickedDraft().has(s.id)?"Allowed":"Off"}})),r(B,t(O,{get each(){return Ve(s)},children:P=>(()=>{var j=qr();return r(j,P),j})()})),M(P=>{var j=!!e.pickedDraft().has(s.id),A=e.pickedDraft().has(s.id);return j!==P.e&&f.classList.toggle("selected",P.e=j),A!==P.t&&Q(f,"aria-pressed",P.t=A),P},{e:void 0,t:void 0}),f})()})}})),r(a,t(D,{variant:"ghost",get onClick(){return e.close},children:"Cancel"}),null),r(a,t(D,{variant:"primary",get disabled(){return!!e.ctx.saving()||e.locked()},get onClick(){return e.saveTools},children:"Save"}),null),g})()]}}),t(y,{get when(){return e.panel()==="permission"},get children(){return[(()=>{var g=ie();return le(g,"click",e.close,!0),g})(),(()=>{var g=Ar(),m=g.firstChild,p=m.firstChild,a=p.firstChild,s=a.nextSibling,f=m.nextSibling,c=f.firstChild,i=c.firstChild,h=c.nextSibling;h.firstChild;var b=f.nextSibling;return r(a,()=>`Add ${e.selectedPermission().title} Rule`),r(s,()=>`${e.selectedPermission().id} · ${e.selectedPermission().description}`),r(m,t(D,{variant:"ghost","aria-label":"Close permission rule overlay",get onClick(){return e.close},children:"X"}),null),r(c,()=>e.selectedPermission().noun==="command"?"Command pattern":"Path pattern",i),i.$$input=_=>e.setPermPattern(_.currentTarget.value),Q(i,"spellcheck",!1),r(h,t(ve,{label:"Rule method",get value(){return e.permAction()},get disabled(){return!!e.ctx.saving()||e.locked()},get onSelect(){return e.setPermAction}}),null),r(b,t(D,{variant:"ghost",get onClick(){return e.close},children:"Cancel"}),null),r(b,t(D,{variant:"primary",get disabled(){return!!e.ctx.saving()||e.locked()},get onClick(){return e.addPermission},children:"Save Rule"}),null),M(_=>{var C=e.selectedPermission().placeholder,B=e.locked();return C!==_.e&&Q(i,"placeholder",_.e=C),B!==_.t&&(i.readOnly=_.t=B),_},{e:void 0,t:void 0}),M(()=>i.value=e.permPattern()),g})()]}}),t(y,{get when(){return e.panel()==="markdown"},get children(){return[(()=>{var g=ie();return le(g,"click",e.close,!0),g})(),(()=>{var g=Dr(),m=g.firstChild,p=m.firstChild,a=p.firstChild,s=a.nextSibling,f=m.nextSibling;return r(s,()=>e.draft()?.path??"Previewing the current agent configuration."),r(m,t(D,{variant:"ghost","aria-label":"Close markdown preview",get onClick(){return e.close},children:"X"}),null),r(f,t(y,{get when(){return e.draft()},get fallback(){return Ur()},children:c=>(()=>{var i=Gr();return r(i,()=>c().markdown),i})()})),g})()]}})]}})})}It(["input","click"]);export{ln as AgentBuilderRoute,nn as AgentsRoute};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{f as n,h as p,i as a,C as u,g as c,t as s}from"./index-6uAP9-SB.js";import{B as g}from"./button-BT_ytG5s.js";import{C as f}from"./CustomSelect-BukE91GR.js";import{C as d,a as h}from"./ConfigPage-CFkfj5pU.js";import{u as v}from"./ui-DeoAcBNH.js";/* empty css */import"./tag-ndRFRrjh.js";import"./config-De5WBuy1.js";var C=s("<header class=ui-card-header><div><h2>Terminal title</h2><p>Choose how session status appears in the terminal tab title."),b=s("<div class=ui-form><div class=ui-field><span>Title Icon</span><small>None hides status icons. Unicode and Emojis show working, attention, and finished states."),$=s("<header class=ui-card-header><div><h2>Attention</h2><p>Control when the TUI asks for attention and how it notifies you."),_=s('<div class="ui-form attention-form"><label class=ui-field><span>Volume</span><input type=number min=0 max=1 step=0.05><small>Use a value from 0 to 1. The docs example uses 0.4.'),T=s("<div class=ui-settings>");const x=[{value:"none",label:"None"},{value:"unicode",label:"Unicode"},{value:"emojis",label:"Emojis"}];function E(){const e=v();return n(h,{title:"CLI Notifications",description:"Configure terminal title indicators, TUI attention alerts, desktop notifications, and sound defaults.",get actions(){return n(g,{variant:"primary",get disabled(){return!!e.ctx.saving()||!e.dirty()},get onClick(){return e.save},children:"Save"})},get children(){var l=T();return a(l,n(u,{class:"ui-card",padding:0,get children(){return[C(),(()=>{var t=b(),i=t.firstChild,r=i.firstChild,o=r.nextSibling;return a(i,n(f,{class:"title-icon-select",label:"Title Icon",get value(){return e.icon()},options:x,get disabled(){return!!e.ctx.saving()},get onSelect(){return e.setIcon}}),o),t})()]}}),null),a(l,n(u,{class:"ui-card",padding:0,get children(){return[$(),(()=>{var t=_(),i=t.firstChild,r=i.firstChild,o=r.nextSibling;return a(t,n(d,{label:"Attention alerts",description:"Turn on TUI attention events.",get checked(){return e.alert()},get disabled(){return!!e.ctx.saving()},onChange:()=>e.setAlert(!e.alert())}),i),a(t,n(d,{label:"Desktop notifications",description:"Show desktop notifications when attention alerts fire.",get checked(){return e.notify()},get disabled(){return!!e.ctx.saving()||!e.alert()},onChange:()=>e.setNotify(!e.notify())}),i),a(t,n(d,{label:"Sound",description:"Play an attention sound when alerts fire.",get checked(){return e.sound()},get disabled(){return!!e.ctx.saving()||!e.alert()},onChange:()=>e.setSound(!e.sound())}),i),o.$$input=m=>e.setVolume(m.currentTarget.value),c(()=>o.disabled=!e.alert()),c(()=>o.value=e.volume()),t})()]}}),null),l}})}p(["input"]);export{E as CliNotificationsRoute};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{f as t,h as y,i as r,C as g,g as p,S as v,v as x,w as T,F as _,m as C,t as s,x as I}from"./index-6uAP9-SB.js";import{B as u}from"./button-BT_ytG5s.js";import{C as D}from"./CustomSelect-BukE91GR.js";import{C as f,a as B}from"./ConfigPage-CFkfj5pU.js";import{a as U,t as b}from"./ui-DeoAcBNH.js";/* empty css */import"./tag-ndRFRrjh.js";import"./config-De5WBuy1.js";var A=s("<div class=theme-swatches aria-hidden=true>"),E=s("<span class=theme-swatch>"),F=s("<div class=theme-preview><div><strong></strong><span class=mono>"),L=s("<header class=ui-card-header><div><h2>Theme</h2><p>Choose the TUI palette. Custom theme IDs can still be typed in the selector search."),P=s("<div class=ui-card-body>"),M=s("<header class=ui-card-header><div><h2>Interaction</h2><p>Control mouse capture, scrolling, and diff rendering behavior in the terminal."),R=s("<div class=ui-form><label class=ui-field><span>Diff style</span><small>Auto adapts to terminal width; stacked always uses a single-column diff.</small></label><label class=ui-field><span>Scroll speed</span><input type=number min=0.001 step=0.25><small>Default is 3. Use lower values for slower scrolling."),j=s("<div class=ui-settings>"),N=s("<div class=drawer-scrim>"),O=s('<aside class="provider-drawer theme-drawer"aria-label="Theme selector"><header class=drawer-header><div><h2>Choose Theme</h2><span>Select a built-in theme or type a custom theme ID in search.</span></div></header><div class="provider-picker theme-picker"></div><footer class="drawer-footer theme-footer"><div>'),V=s("<p class=empty>No themes match this filter."),X=s('<button class="provider-option theme-option"type=button><div><strong></strong><span>');const q=[{value:"auto",label:"Auto"},{value:"stacked",label:"Stacked"}];function w(e){return(()=>{var a=A();return r(a,t(_,{get each(){return e.swatches},children:l=>(()=>{var i=E();return I(i,"background-color",l),i})()})),a})()}function $(e){return(()=>{var a=F(),l=a.firstChild,i=l.firstChild,d=i.nextSibling;return r(i,()=>b(e.item.id)),r(d,(()=>{var c=C(()=>!!e.item.custom);return()=>c()?`${e.item.id} / custom`:e.item.id})()),r(a,t(w,{get swatches(){return e.item.swatches}}),null),a})()}function Z(){const e=U();return t(B,{title:"CLI UI",description:"Configure terminal UI preferences saved in tui.json.",get actions(){return t(u,{variant:"primary",get disabled(){return!!e.ctx.saving()||!e.dirty()},get onClick(){return e.save},children:"Save"})},get children(){return[(()=>{var a=j();return r(a,t(g,{class:"ui-card ui-theme-card",padding:0,get children(){return[(()=>{var l=L();return l.firstChild,r(l,t(u,{variant:"secondary",get disabled(){return!!e.ctx.saving()},get onClick(){return e.edit},children:"Change Theme"}),null),l})(),(()=>{var l=P();return r(l,t($,{get item(){return e.active()}})),l})()]}}),null),r(a,t(g,{class:"ui-card",padding:0,get children(){return[M(),(()=>{var l=R(),i=l.firstChild,d=i.firstChild,c=d.nextSibling,n=i.nextSibling,o=n.firstChild,h=o.nextSibling;return r(i,t(D,{label:"Diff style",get value(){return e.diff()},options:q,get onSelect(){return e.setDiff}}),c),h.$$input=m=>e.setSpeed(m.currentTarget.value),r(l,t(f,{label:"Mouse capture",description:"Allow the TUI to receive mouse input. Defaults to on.",get checked(){return e.mouse()},get disabled(){return!!e.ctx.saving()},onChange:()=>e.setMouse(!e.mouse())}),null),r(l,t(f,{label:"Scroll acceleration",description:"Enable macOS-style scroll acceleration.",get checked(){return e.accel()},get disabled(){return!!e.ctx.saving()},onChange:()=>e.setAccel(!e.accel())}),null),p(()=>h.value=e.speed()),l})()]}}),null),a})(),t(v,{get when(){return e.mode()==="theme"},get children(){return[(()=>{var a=N();return x(a,"click",e.close,!0),a})(),(()=>{var a=O(),l=a.firstChild;l.firstChild;var i=l.nextSibling,d=i.nextSibling,c=d.firstChild;return r(l,t(u,{variant:"ghost","aria-label":"Close theme selector",get onClick(){return e.close},children:"X"}),null),r(a,t(T,{class:"drawer-search",hideLabel:!1,label:"Filter themes",get value(){return e.picker()},variant:"drawer",placeholder:"Search theme or type a custom ID",get onValue(){return e.setPicker}}),i),r(i,t(v,{get when(){return e.options().length},get fallback(){return V()},get children(){return t(_,{get each(){return e.options()},children:n=>(()=>{var o=X(),h=o.firstChild,m=h.firstChild,S=m.nextSibling;return o.$$click=()=>e.select(n),r(m,()=>b(n.id)),r(S,(()=>{var k=C(()=>!!n.custom);return()=>k()?`${n.id} / custom theme`:n.id})()),r(o,t(w,{get swatches(){return n.swatches}}),null),p(()=>o.classList.toggle("selected",e.choice()===n.id)),o})()})}})),r(d,t($,{get item(){return e.selected()}}),c),r(c,t(u,{variant:"ghost",get onClick(){return e.close},children:"Cancel"}),null),r(c,t(u,{variant:"primary",get disabled(){return!!e.ctx.saving()||!e.choice()},get onClick(){return e.saveTheme},children:"Save Theme"}),null),a})()]}})]}})}y(["input","click"]);export{Z as CliUiRoute};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.kilo-console .config-page{display:grid;gap:.85rem;max-width:64rem;margin:0 auto}.kilo-console .config-page-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:start;min-height:auto;border-bottom:0;padding:0 0 1.25rem}.kilo-console .config-page-header h1,.kilo-console .route-empty h1{margin:0;color:var(--foreground);font-size:1rem;font-weight:500;letter-spacing:-.01em;line-height:1}.kilo-console .config-page-header p{max-width:42rem;margin:.75rem 0 0;color:var(--muted-foreground);font-size:.75rem;line-height:1.45}.kilo-console .config-title-count{display:inline-flex;gap:.625rem;align-items:center}.kilo-console .config-page-actions{display:flex;gap:.5rem;align-items:center;justify-content:flex-end}.kilo-console .config-page-actions [data-component=button][data-variant=primary] [data-component=icon],.kilo-console .config-page-actions [data-component=button][data-variant=primary] [data-slot=icon-svg]{color:var(--primary-foreground)}.kilo-console .config-toolbar{display:flex;gap:.5rem;align-items:center;min-height:3rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:.75rem}.kilo-console .config-toolbar label,.kilo-console .config-toolbar-controls>label>span{color:var(--text-weaker);font-size:var(--font-size-small)}.kilo-console .config-toolbar-controls>label>span{position:absolute;overflow:hidden;width:1px;height:1px;clip:rect(0 0 0 0);white-space:nowrap}.kilo-console .config-toolbar-controls{flex:1 1 auto;display:flex;gap:.5rem;align-items:end;flex-wrap:wrap}.kilo-console .config-toolbar-controls label{position:relative;display:grid;gap:0;flex:0 1 12rem;min-width:min(10rem,100%)}.kilo-console .config-toolbar-controls input,.kilo-console .config-toolbar-controls select{height:2.35rem;min-height:2.35rem;line-height:1.2}.kilo-console .config-toolbar-controls input[type=range]{height:2.35rem;min-height:2.35rem;padding:0}.kilo-console .config-toolbar-meta{flex:0 0 auto;display:flex;justify-content:flex-end;margin-left:auto}.kilo-console .context-filter{align-self:center;gap:.25rem!important}.kilo-console .context-range{position:relative;height:2.35rem;border:1px solid var(--border-base);border-radius:var(--radius-lg);background:var(--input-base);padding:0 .75rem}.kilo-console .context-track,.kilo-console .context-fill{position:absolute;top:.88rem;right:1rem;left:1rem;height:.25rem;border-radius:999px;pointer-events:none}.kilo-console .context-track{background:var(--border-base)}.kilo-console .context-fill{left:clamp(.75rem,var(--context-min),calc(100% - .75rem));right:clamp(.75rem,calc(100% - var(--context-max)),calc(100% - .75rem));background:var(--border-focus)}.kilo-console .context-min,.kilo-console .context-max{position:absolute;top:.5rem;z-index:2;width:1rem;height:1rem;min-height:1rem;margin:0;border:0;border-radius:999px;background:var(--border-focus);cursor:grab;padding:0;touch-action:none}.kilo-console .context-min{left:clamp(.75rem,var(--context-min),calc(100% - .75rem));transform:translate(-50%)}.kilo-console .context-max{left:clamp(.75rem,var(--context-max),calc(100% - .75rem));transform:translate(-50%)}.kilo-console .context-min:active,.kilo-console .context-max:active{cursor:grabbing}.kilo-console .context-min:focus-visible,.kilo-console .context-max:focus-visible{outline:2px solid color-mix(in srgb,var(--border-focus) 45%,transparent);outline-offset:2px}.kilo-console .context-filter small{position:absolute;right:.75rem;bottom:.32rem;left:.75rem;overflow:hidden;color:var(--text-weaker);font-size:.68rem;line-height:1;text-align:center;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.kilo-console .multi-check{position:relative;flex:0 1 12rem;min-width:min(10rem,100%);font-size:var(--font-size-small)}.kilo-console .multi-check summary{display:flex;align-items:center;height:2.35rem;border:1px solid var(--border-base);border-radius:var(--radius-lg);background:var(--input-base);color:var(--text-strong);cursor:pointer;font:inherit;line-height:1.2;list-style:none;padding:0 2.5rem 0 .75rem}.kilo-console .multi-check summary::-webkit-details-marker{display:none}.kilo-console .multi-check summary:after{position:absolute;right:.75rem;width:1rem;height:1rem;background-image:url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 6L8 10L12 6' stroke='%23a1a1aa' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:1rem;content:""}.kilo-console .multi-check-menu{position:absolute;z-index:30;top:calc(100% + .35rem);left:0;display:grid;gap:.15rem;width:100%;max-height:16rem;overflow-y:auto;border:1px solid var(--border-base);border-radius:var(--radius-lg);background:var(--background-stronger);box-shadow:0 1rem 2rem color-mix(in srgb,var(--background-base) 55%,transparent);font-size:var(--font-size-small);padding:.25rem}.kilo-console .multi-check-menu label{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.5rem;align-items:center;min-width:0;border-radius:var(--radius-md);color:var(--text-weak);font:inherit;padding:.25rem .35rem}.kilo-console .multi-check-menu label:hover{background:var(--surface-raised-base);color:var(--text-strong)}.kilo-console .multi-check-menu input[type=checkbox]{width:1rem;height:1rem;min-height:1rem;padding:0}.kilo-console .providers{display:flex;flex-direction:column;gap:.5rem}.kilo-console .provider{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.75rem;align-items:center;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);padding:.625rem .75rem}.kilo-console .configured-provider{grid-template-columns:minmax(0,1fr) auto auto}.kilo-console .provider-title,.kilo-console .provider-actions{display:flex;gap:.75rem;align-items:center}.kilo-console .provider-title,.kilo-console .provider-title>div{min-width:0}.kilo-console .provider-config-header,.kilo-console .provider-drawer-title{align-items:flex-start}.kilo-console .provider-drawer-title .provider-icon{margin-top:.2rem}.kilo-console .provider-actions{gap:.25rem;justify-content:flex-end}.kilo-console .provider-icon{flex:0 0 auto;width:1.75rem;height:1.75rem}.kilo-console .provider-title strong,.kilo-console .provider-title span{display:block}.kilo-console .provider-title strong{overflow:hidden;color:var(--foreground);font-size:.75rem;font-weight:500;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.kilo-console .provider-title span{overflow:hidden;color:var(--muted-foreground);font-family:var(--font-family-mono);font-size:.6875rem;text-overflow:ellipsis;white-space:nowrap}.kilo-console .provider .provider-model-count{display:inline-flex;align-items:center;color:var(--muted-foreground);font-family:var(--font-family-sans);font-size:.6875rem;line-height:1.25rem}.kilo-console .provider .tags{flex-wrap:nowrap;gap:.625rem}.kilo-console .drawer-scrim{position:fixed;z-index:40;top:var(--app-header-height);right:0;bottom:0;left:var(--app-rail-width);background:#000000b8;backdrop-filter:blur(2px)}.kilo-console .provider-drawer{position:fixed;z-index:41;top:var(--app-header-height);right:0;display:flex;flex-direction:column;width:min(44rem,calc(100vw - var(--app-rail-width)));height:calc(100vh - var(--app-header-height));overflow:hidden;border-left:1px solid var(--border);background:var(--popover);color:var(--popover-foreground);box-shadow:-1.5rem 0 4rem color-mix(in srgb,black 22%,transparent)}.kilo-console .drawer-header{display:flex;gap:1rem;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--border-weak-base);padding:.75rem 1.25rem}.kilo-console .drawer-header h2{margin:0 0 .25rem;color:var(--text-strong);font-size:.875rem;font-weight:500;line-height:1.45}.kilo-console .drawer-header span{color:var(--muted-foreground);font-size:.75rem;line-height:1.45}.kilo-console .drawer-footer{display:flex;gap:.5rem;align-items:center;justify-content:flex-end;border-top:1px solid var(--border-weak-base);border-bottom:0;margin-top:auto;padding:.75rem 1.25rem}.kilo-console .drawer-search{display:grid;gap:.35rem;color:var(--text-weak);font-size:var(--font-size-small);padding:1rem}.kilo-console .add-provider-body{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:16px 0}.kilo-console .add-provider-field{flex:1 1 auto;display:flex;flex-direction:column;gap:.75rem;min-height:0}.kilo-console .add-provider-field h3{padding:0 16px;color:var(--foreground);font-size:.75rem;font-weight:500;line-height:1.45}.kilo-console .add-provider-search{padding:0 16px}.kilo-console .add-provider-search input{height:2rem;min-height:2rem;border-radius:var(--radius-md);font-size:.75rem;line-height:1rem;padding:0 .5rem}.kilo-console .provider-picker,.kilo-console .provider-form{flex:1 1 auto;min-height:0;overflow:auto;padding-left:16px}.kilo-console .provider-picker{display:grid;align-content:start;gap:.5rem}.kilo-console .add-provider-picker{flex:1 1 auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:.375rem;min-height:0;overflow:auto;padding-right:0;scrollbar-gutter:stable}.kilo-console .provider-option{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.75rem;align-items:center;width:auto;border:1px solid var(--border-weak-base);border-radius:var(--radius-lg);background:var(--surface-base);color:inherit;cursor:pointer;font:inherit;padding:.85rem;text-align:left;margin-right:8px}.kilo-console .add-provider-option{width:auto;min-height:3rem;border-color:var(--border);border-radius:var(--radius-md);background:var(--card);margin-right:0;padding:.625rem}.kilo-console .provider-option>div:not(.tags)>strong,.kilo-console .provider-option .model-title strong{color:var(--foreground);font-size:.75rem;font-weight:400;line-height:1.45}.kilo-console .provider-option>div:not(.tags)>span,.kilo-console .provider-option .model-title span{font-family:var(--font-family-mono);font-size:.6875rem;line-height:1.45}.kilo-console .add-provider-option.selected{border-color:var(--primary);background:color-mix(in oklab,var(--primary) 10%,var(--card));box-shadow:inset 0 0 0 1px var(--primary)}.kilo-console .provider-option:hover,.kilo-console .provider-option:focus-visible{border-color:var(--border-focus);background:color-mix(in srgb,var(--surface-brand-base) 12%,var(--surface-base));outline:0}.kilo-console .provider-option>div:not(.tags)>strong,.kilo-console .provider-option>div:not(.tags)>span,.kilo-console .provider-option .model-title strong,.kilo-console .provider-option .model-title span{display:block}.kilo-console .provider-option>div:not(.tags)>span,.kilo-console .provider-option .model-title span{overflow:hidden;color:var(--text-weaker);text-overflow:ellipsis;white-space:nowrap}.kilo-console .add-provider-step{flex:0 0 auto;margin-top:1rem;margin-right:var(--add-provider-scrollbar);color:var(--muted-foreground);font-size:.75rem}.kilo-console .add-provider-step strong{color:var(--foreground);font-weight:400}.kilo-console .provider-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.kilo-console .provider-form label,.kilo-console .provider-auth label{display:grid;gap:.35rem;align-content:start;color:var(--text-weak);font-size:var(--font-size-small)}.kilo-console .provider-form .required-field{color:var(--text-base);font-weight:600}.kilo-console .provider-form .required-field input{border-color:color-mix(in srgb,var(--border-focus) 45%,var(--border-base));background:color-mix(in srgb,var(--surface-base) 88%,var(--surface-brand-base));color:var(--text-strong)}.kilo-console .provider-form .optional-field{color:var(--text-weaker)}.kilo-console .provider-form .optional-field input,.kilo-console .provider-form .optional-field textarea{border-color:var(--border-weak-base);background:color-mix(in srgb,var(--surface-base) 72%,transparent);color:var(--text-weak)}.kilo-console .provider-form .optional-field input::placeholder,.kilo-console .provider-form .optional-field textarea::placeholder{color:color-mix(in srgb,var(--text-weaker) 70%,transparent)}.kilo-console .provider-form .optional-field:focus-within{color:var(--text-weak)}.kilo-console .provider-form .optional-field:focus-within input,.kilo-console .provider-form .optional-field:focus-within textarea{background:var(--surface-base);color:var(--text-base)}.kilo-console .provider-auth{flex:1 1 auto;display:grid;align-content:start;gap:1rem;min-height:0;overflow:auto;padding:1rem}.kilo-console .provider-auth p{margin:0;color:var(--text-weak)}.kilo-console .provider-auth a{color:var(--text-brand)}.kilo-console .provider-auth code{display:block;border:1px solid var(--border-weak-base);border-radius:var(--radius-md);background:var(--surface-base);color:var(--text-base);padding:.75rem}.kilo-console .auth-methods{display:grid;gap:.5rem}.kilo-console .form-error{color:var(--status-error-base)!important}.kilo-console input.invalid,.kilo-console select.invalid{border-color:var(--status-error-base)}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{u as N,V as O,c as i,d as W,ad as V,y as E,b as F,ae as se,af as ae,e as j,a9 as oe,a8 as k,a5 as H,a6 as ie,a7 as ce,f as n,j as J,ag as le,ah as ue,ai as fe,aj as de,U as z,W as ge,ak as pe,i as c,A,I as M,F as T,g as he,s as ve,t as C,C as B,S as q,L as me,m as $e}from"./index-6uAP9-SB.js";import{C as Ce,u as Q}from"./config-De5WBuy1.js";/* empty css *//* empty css */const X=new URLSearchParams(window.location.search),be=new Set(["3017","3018"]);function D(t=X){return t.get("server")?!1:be.has(window.location.port)}function _e(t=X){const s=t.get("server");if(s)return s;const l=D(t)?H():"";return l||(D(t)?"":window.location.origin)}function Se(t){const s=N(),l=O(),a=i(()=>new URLSearchParams(s.search)),u=()=>D(a()),p=()=>_e(a()),[h,v]=W(p()),x=i(()=>V(s.pathname)),S=i(()=>x().startsWith("/projects/")?"project":"global"),[P,y]=W(),[r,m]=W(),b=i(()=>S()==="project"),I=i(()=>{const e=E(h())||p();if(!(!e||!b()))return{url:e,dir:""}}),[_]=F(I,se),w=i(()=>b()?_()?.find(e=>e.id===l.project)?.worktree??"":""),o=i(()=>{const e=E(h())||p();if(e&&!(b()&&!w()))return{url:e,dir:w(),scope:S()}}),[g,{refetch:L}]=F(o,ae);function $(){const e=o();if(!e)throw new Error("Kilo server discovery is still running");return e}j(()=>{!b()||_.loading||_.error||!_()||w()||m(`Project not found: ${l.project}`)}),j(()=>{const e=a().get("server");e&&e!==h()&&v(e)}),j(()=>{u()&&oe().then(e=>{e&&(k(e),v(e))})}),j(()=>{const e=g(),d=o();!e||!d||!u()||k(d.url)}),j(()=>{if(!g.error||!u())return;const e=H();!e||e!==h()||(ie(),v(""),ce().then(d=>{d&&(k(d),v(d))}))});function U(e){m(e)}function f(e,d,te){y(e),m(void 0),d().then(()=>te?.refetch===!1?void 0:L()).then(()=>{}).catch(ne=>m(J(ne))).finally(()=>y(void 0))}function R(e){f("Saving config",()=>le($(),e))}function Y(e,d){f("Saving config",()=>ue($(),e,d))}function Z(e){f("Saving config",()=>fe($(),e))}function ee(e){f("Saving TUI config",()=>de($(),e))}const re={data:g,query:o,saving:P,failure:r,target:$,fail:U,run:f,save:R,patch:Y,unset:Z,tui:ee};return n(Ce.Provider,{value:re,get children(){return t.children}})}var we=C('<aside class=config-sidebar aria-label="Configuration sections"><div class=config-sidebar-title><span>Settings</span><span class=config-sidebar-scope><span></span></span></div><nav class=config-options>'),G=C("<span>"),je=C("<section class=config-group><div class=config-group-title><span></span></div><div class=config-group-items>");function xe(t){return t.split(/[\\/]/).filter(Boolean).at(-1)??"Project"}function Pe(){const t=N(),s=O(),l=Q(),a=i(()=>V(t.pathname)),u=i(()=>a().startsWith("/projects/")),p=i(()=>{if(!u())return"Global";const r=l.query()?.dir;return r?z(xe(r)):z(decodeURIComponent(s.project??"Project"))}),h=i(()=>ge(a())),v=i(()=>{const r=a().slice(h().length);return r==="/models"?"/models/default":r||"/"}),x=r=>`${r==="/"?h():`${h()}${r}`}${t.search}`,S=r=>r===v()||r!=="/"&&v().startsWith(`${r}/`),P=r=>"items"in r,y=i(()=>pe.filter(r=>!u()||!P(r)||!r.globalOnly));return(()=>{var r=we(),m=r.firstChild,b=m.firstChild,I=b.nextSibling,_=I.firstChild,w=m.nextSibling;return c(_,p),c(w,n(T,{get each(){return y()},children:o=>P(o)?(()=>{var g=je(),L=g.firstChild,$=L.firstChild,U=L.nextSibling;return c($,()=>o.label),c(U,n(T,{get each(){return o.items},children:f=>n(A,{class:"config-option",get classList(){return{active:S(f.path)}},get href(){return x(f.path)},get children(){return[n(M,{get name(){return f.icon},size:"small"}),(()=>{var R=G();return c(R,()=>f.label),R})()]}})})),he(()=>ve(U,"id",`config-group-${o.id}`)),g})():n(A,{class:"config-top-option",get classList(){return{active:S(o.path)}},get href(){return x(o.path)},get children(){return[n(M,{get name(){return o.icon},size:"small"}),(()=>{var g=G();return c(g,()=>o.label),g})()]}})})),r})()}var ye=C("<strong>Dashboard request failed"),K=C("<span>"),Le=C("<section class=config-shell><section class=content>"),Ue=C("<strong>Dashboard update failed");function De(t){return n(Se,{get children(){return n(Re,{get children(){return t.children}})}})}function Re(t){const s=Q();return(()=>{var l=Le(),a=l.firstChild;return c(l,n(Pe,{}),a),c(a,n(q,{get when(){return s.failure()},children:u=>n(B,{class:"banner",variant:"error",get children(){return[Ue(),(()=>{var p=K();return c(p,u),p})()]}})}),null),c(a,n(q,{get when(){return s.data.error},get children(){return n(B,{class:"banner",variant:"error",get children(){return[ye(),(()=>{var u=K();return c(u,()=>J(s.data.error)),u})()]}})}}),null),c(a,n(q,{get when(){return $e(()=>!!s.data.loading)()&&!s.data()},get children(){return n(me,{variant:"content"})}}),null),c(a,()=>t.children,null),l})()}export{De as ConfigLayout};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{h as _,f as c,H as m,i as r,g,s,v as w,S as d,t as o,m as $,I as k}from"./index-6uAP9-SB.js";import{T as y}from"./tag-ndRFRrjh.js";var S=o("<span data-slot=status-dot aria-hidden=true>"),T=o("<p>"),j=o("<section data-component=section-title><div><h2>"),B=o("<div data-component=banner role=alert><div><span>"),E=o("<strong>"),O=o("<span data-slot=config-row-accent>"),R=o("<div data-slot=config-row-body><div data-slot=config-row-title>"),U=o("<div data-slot=config-row-trailing>"),x=o("<div data-slot=config-row-leading>"),H=o("<div data-slot=config-row-subtitle>"),I=o("<div data-slot=config-row-actions>"),L=o("<a data-component=config-row>"),P=o("<button type=button data-component=config-row>"),z=o("<div data-component=config-row>");function h(e){return c(y,m(e,{"data-slot":"config-tag"}))}function V(e){return c(h,m(e,{tone:"neutral"}))}function b(e){return e.source==="project"||e.source==="local override"?"project":e.source==="global"||e.source==="inherited"?"global":e.overridden?"project":e.inherited?"global":"default"}function A(e){return(()=>{var n=S();return g(()=>s(n,"data-tone",e.tone)),n})()}function W(e){const n=()=>["connected","healthy","running"].includes(e.status)?{tone:"success",label:e.status==="healthy"?"Healthy":e.status==="running"?"Running":"Connected"}:["failed","error","unhealthy"].includes(e.status)?{tone:"critical",label:e.status==="unhealthy"?"Unhealthy":e.status==="failed"?"Failed":"Error"}:e.status==="stopped"?{tone:"neutral",label:"Stopped"}:{tone:"neutral",label:e.status||"Unknown"};return c(h,{get tone(){return n().tone},class:"kw-status-tag",get children(){return[c(A,{get tone(){return $(()=>n().tone==="critical")()?"critical":n().tone==="success"?"success":"neutral"}}),$(()=>n().label)]}})}function C(e){const n=()=>b(e),a=()=>n().toUpperCase();return c(h,{class:"mono",get tone(){return n()==="project"?"info":"neutral"},get children(){return a()}})}function X(e){return(()=>{var n=j(),a=n.firstChild,t=a.firstChild;return r(t,()=>e.children),r(a,()=>e.trailing,null),r(n,c(d,{get when(){return e.description},children:i=>(()=>{var l=T();return r(l,i),l})()}),null),n})()}function Y(e){const n=()=>e.tone==="critical"||e.tone==="warning"?"warning":e.tone==="success"?"circle-check":"help";return(()=>{var a=B(),t=a.firstChild,i=t.firstChild;return r(a,c(k,{get name(){return n()},size:"small"}),t),r(t,c(d,{get when(){return e.title},children:l=>(()=>{var u=E();return r(u,l),u})()}),i),r(i,()=>e.children),r(a,()=>e.action,null),g(()=>s(a,"data-tone",e.tone??"info")),a})()}function Z(e){const n=()=>b({source:e.source})==="project"||e.highlightOverride,a=()=>[c(d,{get when(){return n()},get children(){return O()}}),c(d,{get when(){return e.leading},children:t=>(()=>{var i=x();return r(i,t),i})()}),(()=>{var t=R(),i=t.firstChild;return r(i,()=>e.title),r(t,c(d,{get when(){return e.subtitle},children:l=>(()=>{var u=H();return r(u,l),u})()}),null),t})(),(()=>{var t=U();return r(t,c(d,{get when(){return e.source!==void 0},get children(){return c(C,{get source(){return e.source}})}}),null),r(t,()=>e.status,null),r(t,c(d,{get when(){return e.actions},children:i=>(()=>{var l=I();return r(l,i),l})()}),null),t})()];return e.href?(()=>{var t=L();return r(t,a),g(i=>{var l=n()||void 0,u=e.href;return l!==i.e&&s(t,"data-override",i.e=l),u!==i.t&&s(t,"href",i.t=u),i},{e:void 0,t:void 0}),t})():e.onClick?(()=>{var t=P();return w(t,"click",e.onClick,!0),r(t,a),g(()=>s(t,"data-override",n()||void 0)),t})():(()=>{var t=z();return r(t,a),g(()=>s(t,"data-override",n()||void 0)),t})()}_(["click"]);var D=o("<main class=config-page><section class=config-page-header><div><h1>"),F=o("<p>"),q=o("<div class=config-page-actions>"),G=o("<section class=config-toolbar>"),J=o("<div class=config-toolbar-controls>"),K=o("<div class=config-toolbar-meta>"),M=o("<button class=ui-toggle type=button><span><strong></strong><small>");function p(e){return(()=>{var n=D(),a=n.firstChild,t=a.firstChild,i=t.firstChild;return r(i,()=>e.title),r(t,c(d,{get when(){return e.description},children:l=>(()=>{var u=F();return r(u,l),u})()}),null),r(a,c(d,{get when(){return e.actions},children:l=>(()=>{var u=q();return r(u,l),u})()}),null),r(n,()=>e.children,null),n})()}function ee(e){return c(d,{get when(){return e.children||e.meta},get children(){var n=G();return r(n,c(d,{get when(){return e.children},children:a=>(()=>{var t=J();return r(t,a),t})()}),null),r(n,c(d,{get when(){return e.meta},children:a=>(()=>{var t=K();return r(t,a),t})()}),null),n}})}function te(e){return(()=>{var n=M(),a=n.firstChild,t=a.firstChild,i=t.nextSibling;return w(n,"click",e.onChange,!0),r(t,()=>e.label),r(i,()=>e.description),r(n,c(h,{get tone(){return e.checked?"success":"neutral"},get children(){return e.checked?"On":"Off"}}),null),g(l=>{var u=!!e.checked,f=e.checked,v=e.disabled;return u!==l.e&&n.classList.toggle("selected",l.e=u),f!==l.t&&s(n,"aria-pressed",l.t=f),v!==l.a&&(n.disabled=l.a=v),l},{e:void 0,t:void 0,a:void 0}),n})()}function ne(e){return c(C,e)}_(["click"]);export{Y as B,te as C,ne as S,p as a,h as b,Z as c,X as d,V as e,W as f,A as g,ee as h};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{h as b,z as _,f as i,s as n,i as t,I as y,S as v,g as w,t as $}from"./index-6uAP9-SB.js";import{B as C}from"./button-BT_ytG5s.js";var k=$("<div class=confirm-scrim><section class=confirm-dialog role=alertdialog aria-modal=true><div class=confirm-body><div class=confirm-icon aria-hidden=true></div><div><h2></h2></div></div><footer class=confirm-actions>"),S=$("<p>");function I(e){const c=_(),d=`${c}-title`,o=`${c}-message`;return i(v,{get when(){return e.open},get children(){var r=k(),a=r.firstChild,m=a.firstChild,u=m.firstChild,g=u.nextSibling,f=g.firstChild,h=m.nextSibling;return r.$$keydown=l=>l.key==="Escape"&&e.onCancel(),n(a,"aria-labelledby",d),t(u,i(y,{name:"warning"})),n(f,"id",d),t(f,()=>e.title),t(g,i(v,{get when(){return e.message},children:l=>(()=>{var s=S();return n(s,"id",o),t(s,l),s})()}),null),t(h,i(C,{variant:"ghost",get disabled(){return e.busy},get onClick(){return e.onCancel},autofocus:!0,get children(){return e.cancel??"Cancel"}}),null),t(h,i(C,{variant:"primary",get disabled(){return e.busy},get onClick(){return e.onConfirm},get children(){return e.confirm??"Confirm"}}),null),w(()=>n(a,"aria-describedby",e.message?o:void 0)),r}})}b(["keydown"]);export{I as C};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{f as t,h as S,i as r,C as g,s as h,g as $,S as f,t as l}from"./index-6uAP9-SB.js";import{B as p}from"./button-BT_ytG5s.js";import{u as x,M as m,a as v,S as y}from"./console-DBczKSnI.js";import{C as w}from"./CustomSelect-BukE91GR.js";import{a as B}from"./ConfigPage-CFkfj5pU.js";/* empty css */import"./config-De5WBuy1.js";import"./tag-ndRFRrjh.js";var T=l("<header class=ui-card-header><div><h2>Project context sidebar</h2><p>Set the default width used by the Context and Changes panel in project consoles."),D=l("<div class=ui-form><label class=ui-field><span>Sidebar width</span><input type=number step=1><small>Width in pixels, between <!> and <!>. You can also resize the sidebar by dragging its left edge."),E=l("<header class=ui-card-header><div><h2>Diff review</h2><p>Choose the default layout used when reviewing changed files in project consoles."),I=l("<div class=ui-form><div class=ui-field><span>Diff layout</span><small>Unified shows changes in one column. Split shows the original and modified file side by side."),U=l("<div class=ui-settings>");const A=[{value:"unified",label:"Unified"},{value:"split",label:"Split"}];function O(){const e=x();return t(B,{title:"Console UI",description:"Configure the local Kilo Console interface. These preferences are saved in your user config.",get actions(){return[t(f,{get when(){return e.configured()},get children(){return t(p,{variant:"secondary",get disabled(){return!!e.ctx.saving()},get onClick(){return e.reset},children:"Use default"})}}),t(p,{variant:"primary",get disabled(){return!!e.ctx.saving()||!e.dirty()},get"aria-busy"(){return!!e.ctx.saving()},get onClick(){return e.save},get children(){return[t(f,{get when(){return e.ctx.saving()},get children(){return t(y,{})}}),"Save"]}})]},get children(){var a=U();return r(a,t(g,{class:"ui-card",padding:0,get children(){return[T(),(()=>{var n=D(),s=n.firstChild,o=s.firstChild,i=o.nextSibling,d=i.nextSibling,_=d.firstChild,u=_.nextSibling,b=u.nextSibling,c=b.nextSibling;return c.nextSibling,i.$$input=C=>e.setWidth(C.currentTarget.value),h(i,"min",m),h(i,"max",v),r(d,m,u),r(d,v,c),$(()=>i.value=e.width()),n})()]}}),null),r(a,t(g,{class:"ui-card",padding:0,get children(){return[E(),(()=>{var n=I(),s=n.firstChild,o=s.firstChild,i=o.nextSibling;return r(s,t(w,{class:"console-diff-select",label:"Diff layout",get value(){return e.style()},options:A,get disabled(){return!!e.ctx.saving()},get onSelect(){return e.setStyle}}),i),n})()]}}),null),a}})}S(["input"]);export{O as ConsoleUiRoute};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{h as A,i as u,f as E,g as b,s as v,F as L,B as T,t as g}from"./index-6uAP9-SB.js";var y=g("<details><summary></summary><div class=models-select-menu role=listbox>"),C=g("<button class=models-select-option type=button role=option>");function x(t){const m=()=>t.options.find(l=>l.value===t.value)?.label??t.value;function f(l,r){t.disabled||l.disabled||(t.onSelect(l.value),r.currentTarget.closest("details")?.removeAttribute("open"))}function h(l){if(t.disabled){l.currentTarget.removeAttribute("open");return}l.currentTarget.open&&l.currentTarget.parentElement?.querySelectorAll(".models-select[open]").forEach(r=>{r!==l.currentTarget&&r.removeAttribute("open")})}return(()=>{var l=y(),r=l.firstChild,o=r.nextSibling;return l.addEventListener("toggle",h),u(r,m),u(o,E(L,{get each(){return t.options},children:e=>(()=>{var i=C();return i.$$click=a=>f(e,a),u(i,()=>e.label),b(a=>{var s=e.value===t.value,d=!!e.disabled,n=e.value===t.value,c=t.disabled||e.disabled;return s!==a.e&&i.classList.toggle("selected",a.e=s),d!==a.t&&i.classList.toggle("disabled",a.t=d),n!==a.a&&v(i,"aria-selected",a.a=n),c!==a.o&&(i.disabled=a.o=c),a},{e:void 0,t:void 0,a:void 0,o:void 0}),i})()})),b(e=>{var i=`models-select ${t.class??""}`,a=!!t.disabled,s=!!t.invalid,d=t.label,n=t.disabled,c=t.label;return i!==e.e&&T(l,e.e=i),a!==e.t&&l.classList.toggle("disabled",e.t=a),s!==e.a&&l.classList.toggle("invalid",e.a=s),d!==e.o&&v(r,"aria-label",e.o=d),n!==e.i&&v(r,"aria-disabled",e.i=n),c!==e.n&&v(o,"aria-label",e.n=c),e},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0}),l})()}A(["click"]);export{x as C};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.kilo-console .formatters,.kilo-console .formatter-group,.kilo-console .formatter-rules{display:grid;gap:.5rem}.kilo-console .formatter-group [data-component=section-title]{margin:.75rem 0 .25rem}.kilo-console .formatters [data-component=config-row]{align-items:flex-start}.kilo-console .formatters [data-slot=config-row-subtitle]{overflow:visible;white-space:normal}.kilo-console .formatter-row-subtitle{display:grid;gap:.125rem;min-width:0}.kilo-console .formatter-row-id,.kilo-console .formatter-command{overflow-wrap:anywhere;font-family:var(--font-family-mono)}.kilo-console .formatter-row-meta{display:flex;gap:.5rem;align-items:center;justify-content:flex-end;flex-wrap:wrap}.kilo-console .formatter-empty{margin:0;border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--muted-foreground);font-size:.75rem;padding:.75rem}.kilo-console .formatter-drawer{width:min(42rem,calc(100vw - var(--app-rail-width)))}.kilo-console .formatter-form{grid-template-columns:minmax(0,1fr);align-content:start;padding:1rem}.kilo-console .formatter-form .wide{grid-column:1}.kilo-console .formatter-form textarea{min-height:5rem;resize:vertical}.kilo-console .formatter-check{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.5rem;align-items:center;color:var(--text-weak);font-size:var(--font-size-small)}.kilo-console .formatter-check input{width:1rem;height:1rem;min-height:1rem;margin:0;padding:0}@media(max-width:760px){.kilo-console .formatter-drawer{width:calc(100vw - var(--app-rail-width))}}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{d as B,c as g,y as Q,aa as ae,ab as ie,U as ne,f as r,h as Le,i as s,S as T,m as H,t as h,F as Ee,v as fe,s as L,g as v,X as le}from"./index-6uAP9-SB.js";import{B as q}from"./button-BT_ytG5s.js";import{d as W,e as I,a as ge,c as Ae,b as se,S as Fe}from"./ConfigPage-CFkfj5pU.js";import{u as Oe}from"./config-De5WBuy1.js";import"./tag-ndRFRrjh.js";const ve=[{id:"air",ext:[".R"],req:"air command available"},{id:"biome",ext:[".js",".jsx",".ts",".tsx",".html",".css",".md",".json",".yaml"],req:"biome.json(c) config file"},{id:"cargofmt",ext:[".rs"],req:"cargo fmt command available"},{id:"clang-format",ext:[".c",".cpp",".h",".hpp",".ino"],req:".clang-format config file"},{id:"cljfmt",ext:[".clj",".cljs",".cljc",".edn"],req:"cljfmt command available"},{id:"dart",ext:[".dart"],req:"dart command available"},{id:"dfmt",ext:[".d"],req:"dfmt command available"},{id:"gleam",ext:[".gleam"],req:"gleam command available"},{id:"gofmt",ext:[".go"],req:"gofmt command available"},{id:"htmlbeautifier",ext:[".erb",".html.erb"],req:"htmlbeautifier command available"},{id:"ktlint",ext:[".kt",".kts"],req:"ktlint command available"},{id:"latexindent",ext:[".tex"],req:"latexindent command available"},{id:"mix",ext:[".ex",".exs",".eex",".heex",".leex",".neex",".sface"],req:"mix command available"},{id:"nixfmt",ext:[".nix"],req:"nixfmt command available"},{id:"ocamlformat",ext:[".ml",".mli"],req:"ocamlformat command and .ocamlformat config file"},{id:"ormolu",ext:[".hs"],req:"ormolu command available"},{id:"oxfmt",ext:[".js",".jsx",".ts",".tsx"],req:"oxfmt dependency and experimental flag",note:"Experimental"},{id:"pint",ext:[".php"],req:"laravel/pint dependency in composer.json"},{id:"prettier",ext:[".js",".jsx",".ts",".tsx",".html",".css",".md",".json",".yaml"],req:"prettier dependency in package.json"},{id:"rubocop",ext:[".rb",".rake",".gemspec",".ru"],req:"rubocop command available"},{id:"ruff",ext:[".py",".pyi"],req:"ruff command available with config"},{id:"rustfmt",ext:[".rs"],req:"rustfmt command available"},{id:"shfmt",ext:[".sh",".bash"],req:"shfmt command available"},{id:"standardrb",ext:[".rb",".rake",".gemspec",".ru"],req:"standardrb command available"},{id:"terraform",ext:[".tf",".tfvars"],req:"terraform command available"},{id:"uv",ext:[".py",".pyi"],req:"uv command available"},{id:"zig",ext:[".zig",".zon"],req:"zig command available"}],be=[{id:"astro",ext:[".astro"],req:"Auto-installs for Astro projects"},{id:"bash",ext:[".sh",".bash",".zsh",".ksh"],req:"Auto-installs bash-language-server"},{id:"biome",ext:[".js",".jsx",".ts",".tsx",".json",".jsonc",".css"],req:"biome dependency or config available"},{id:"clangd",ext:[".c",".cpp",".cc",".cxx",".c++",".h",".hpp",".hh",".hxx",".h++"],req:"Auto-installs for C/C++ projects"},{id:"clojure-lsp",ext:[".clj",".cljs",".cljc",".edn"],req:"clojure-lsp command available"},{id:"csharp",title:"C#",ext:[".cs",".csx"],req:".NET SDK installed"},{id:"dart",ext:[".dart"],req:"dart command available"},{id:"deno",ext:[".ts",".tsx",".js",".jsx",".mjs"],req:"deno command available with deno.json/c"},{id:"dockerfile",title:"Dockerfile",ext:["Dockerfile",".dockerfile"],req:"Docker language server available"},{id:"elixir-ls",ext:[".ex",".exs"],req:"elixir command available"},{id:"eslint",title:"ESLint",ext:[".ts",".tsx",".js",".jsx",".mjs",".cjs",".mts",".cts",".vue"],req:"eslint dependency in project"},{id:"fsharp",title:"F#",ext:[".fs",".fsi",".fsx",".fsscript"],req:".NET SDK installed"},{id:"gleam",ext:[".gleam"],req:"gleam command available"},{id:"gopls",ext:[".go"],req:"go command available"},{id:"haskell-language-server",title:"HLS",ext:[".hs",".lhs"],req:"haskell-language-server-wrapper command available"},{id:"jdtls",title:"JDTLS",ext:[".java"],req:"Java SDK 21+ installed"},{id:"julials",title:"JuliaLS",ext:[".jl"],req:"julia and LanguageServer.jl installed"},{id:"kotlin-ls",ext:[".kt",".kts"],req:"Auto-installs for Kotlin projects"},{id:"lua-ls",ext:[".lua"],req:"Auto-installs for Lua projects"},{id:"nixd",ext:[".nix"],req:"nixd command available"},{id:"ocaml-lsp",ext:[".ml",".mli"],req:"ocamllsp command available"},{id:"oxlint",ext:[".ts",".tsx",".js",".jsx",".mjs",".cjs",".mts",".cts",".vue",".astro",".svelte"],req:"oxlint dependency in project"},{id:"php intelephense",title:"PHP Intelephense",ext:[".php"],req:"Auto-installs for PHP projects"},{id:"prisma",ext:[".prisma"],req:"prisma command available"},{id:"pyright",ext:[".py",".pyi"],req:"pyright dependency installed"},{id:"razor",ext:[".razor",".cshtml"],req:".NET SDK and VS Code C# extension installed"},{id:"ruby-lsp",ext:[".rb",".rake",".gemspec",".ru"],req:"ruby and gem commands available"},{id:"rust",ext:[".rs"],req:"rust-analyzer command available"},{id:"sourcekit-lsp",ext:[".swift",".objc",".objcpp"],req:"swift installed, Xcode on macOS"},{id:"svelte",ext:[".svelte"],req:"Auto-installs for Svelte projects"},{id:"terraform",ext:[".tf",".tfvars"],req:"Auto-installs from GitHub releases"},{id:"texlab",ext:[".tex"],req:"Auto-installs texlab"},{id:"tinymist",ext:[".typ",".typc"],req:"Auto-installs from GitHub releases"},{id:"ty",title:"Ty",ext:[".py",".pyi"],req:"Experimental Python LSP",note:"Experimental"},{id:"typescript",title:"TypeScript",ext:[".ts",".tsx",".js",".jsx",".mjs",".cjs",".mts",".cts"],req:"typescript dependency in project"},{id:"vue",ext:[".vue"],req:"Auto-installs for Vue projects"},{id:"yaml-ls",title:"YAML LS",ext:[".yaml",".yml"],req:"Auto-installs Red Hat yaml-language-server"},{id:"zls",title:"ZLS",ext:[".zig",".zon"],req:"zig command available"}],Pe=new Set(ve.map(e=>e.id)),ze=new Set(be.map(e=>e.id));function E(e){return!e||typeof e!="object"||Array.isArray(e)?{}:e}function he(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"):[]}function oe(e){return new Map(e.map(t=>[t.key,t]))}function ce(e){return e===!0||!!(e&&typeof e=="object")}function V(e){return E(e?.value).disabled===!0}function Z(e){return he(E(e?.value).command)}function U(e,t){return Object.fromEntries(Object.entries(E(E(e?.value)[t])).filter(a=>typeof a[1]=="string"))}function de(e){return E(E(e?.value).initialization)}function re(e,t,a){const l=he(E(t?.value).extensions);return l.length?l:a.length?a:e.ext}function De(e){return Object.entries(e).map(t=>`${t[0]}=${t[1]}`).join(`
|
|
2
|
+
`)}function Be(e){return Object.keys(e).length?JSON.stringify(e,null,2):""}function ue(e){const t=e.split(`
|
|
3
|
+
`).map(Q).filter(Boolean),a=t.find(l=>!/^[A-Za-z_][A-Za-z0-9_]*=/.test(l));return a?{error:`Invalid environment variable: ${a}`}:{value:Object.fromEntries(t.map(l=>{const f=l.indexOf("=");return[l.slice(0,f),l.slice(f+1)]}))}}function Te(e){const t=Q(e);if(!t)return{value:void 0};try{const a=JSON.parse(t);return!a||typeof a!="object"||Array.isArray(a)?{error:"Initialization must be a JSON object."}:{value:a}}catch(a){return{error:a instanceof Error?a.message:"Invalid initialization JSON."}}}function Y(e){return!!(e?.editable&&!e.inherited)}function me(e){return e.title??ne(e.id)}function xe(){const e=Oe(),t=()=>e.data(),[a,l]=B(),[f,x]=B(),[A,w]=B(""),[F,$]=B(""),[p,k]=B(""),[_,S]=B(""),[N,C]=B(""),[j,O]=B(!1),P=g(()=>t()?.overlay.collections.formatter??[]),z=g(()=>t()?.overlay.collections.lsp??[]),y=g(()=>ce(t()?.effective.formatter)),D=g(()=>ce(t()?.effective.lsp)),m=g(()=>oe(P())),te=g(()=>oe(z())),R=g(()=>new Map((t()?.formatter??[]).map(o=>[o.name,o]))),M=g(()=>new Map((t()?.lsp??[]).map(o=>[o.id,o]))),d=g(()=>{const o=ve.map(n=>{const i=m().get(n.id),c=R().get(n.id),b=!y()||V(i)?"disabled":c?.enabled?"active":c?"missing":"enabled";return{...n,command:Z(i),custom:!1,disabled:V(i),entry:i,env:U(i,"environment"),ext:re(n,i,c?.extensions??[]),init:{},removable:Y(i),state:b,title:me(n)}}),u=P().filter(n=>!Pe.has(n.key)).map(n=>{const i=E(n.value),c=R().get(n.key),b=!y()||i.disabled===!0?"disabled":c?.enabled?"active":c?"missing":"enabled";return{id:n.key,title:ne(n.key),command:Z(n),custom:!0,disabled:i.disabled===!0,entry:n,env:U(n,"environment"),ext:re({id:n.key,ext:[]},n,c?.extensions??[]),init:{},removable:Y(n),req:"Custom formatter",state:b}});return[...o,...u]}),J=g(()=>{const o=be.map(n=>{const i=te().get(n.id),c=M().get(n.id),b=!D()||V(i)?"disabled":c?.status==="error"?"error":c?"connected":"idle";return{...n,command:Z(i),custom:!1,disabled:V(i),entry:i,env:U(i,"env"),init:de(i),removable:Y(i),state:b,title:me(n)}}),u=z().filter(n=>!ze.has(n.key)).map(n=>{const i=E(n.value),c=M().get(n.key),b=!D()||i.disabled===!0?"disabled":c?.status==="error"?"error":c?"connected":"idle";return{id:n.key,title:ne(n.key),command:Z(n),custom:!0,disabled:i.disabled===!0,entry:n,env:U(n,"env"),ext:re({id:n.key,ext:[]},n,[]),init:de(n),removable:Y(n),req:"Custom LSP server",state:b}});return[...o,...u]}),K=g(()=>d().filter(o=>o.custom)),X=g(()=>J().filter(o=>o.custom)),Se=g(()=>d().filter(o=>!o.custom)),je=g(()=>J().filter(o=>!o.custom)),qe=g(()=>!!f());function we(o,u){l(o),x(u),w(u?.id??""),$(u?.command.join(" ")??""),k(u?.ext.join(", ")??""),S(De(u?.env??{})),C(Be(u?.init??{})),O(u?.disabled??!1)}function G(){l(void 0),x(void 0),w(""),$(""),k(""),S(""),C(""),O(!1)}function _e(){const o=Q(A()),u=ae(F()),n=ie(p()),i=ue(_());if(!o){e.fail("Enter a formatter name before saving.");return}if(!f()&&u.length===0){e.fail("Enter a formatter command before saving.");return}if(!f()&&n.length===0){e.fail("Enter at least one formatter extension before saving.");return}if(i.error){e.fail(i.error);return}const c={};j()&&(c.disabled=!0),u.length&&(c.command=u),n.length&&(c.extensions=n),i.value&&Object.keys(i.value).length&&(c.environment=i.value),e.save({formatter:{[o]:c}}),G()}function Ce(){const o=Q(A()),u=ae(F()),n=ie(p()),i=ue(_()),c=Te(N());if(!o){e.fail("Enter an LSP server name before saving.");return}if(i.error){e.fail(i.error);return}if(c.error){e.fail(c.error);return}if(j()){e.save({lsp:{[o]:{disabled:!0}}}),G();return}if(u.length===0){e.fail("Enter an LSP command before saving, or disable the server.");return}if(!f()&&n.length===0){e.fail("Enter at least one extension for a custom LSP server.");return}const b={command:u};n.length&&(b.extensions=n),i.value&&Object.keys(i.value).length&&(b.env=i.value),c.value&&Object.keys(c.value).length&&(b.initialization=c.value),e.save({lsp:{[o]:b}}),G()}function ye(o){const u=o.entry?.path;u&&e.unset([u])}return{builtinFmt:Se,builtinLsp:je,close:G,command:F,customFmt:K,customLsp:X,ctx:e,disabled:j,enableFmt:()=>e.save({formatter:{}}),enableLsp:()=>e.save({lsp:{}}),environment:_,extensions:p,fmtOn:y,initialization:N,locked:qe,lspOn:D,mode:a,name:A,open:we,remove:ye,saveFormatter:_e,saveLsp:Ce,setCommand:$,setDisabled:O,setEnvironment:S,setExtensions:k,setInitialization:C,setName:w,snap:t,disableFmt:()=>e.save({formatter:!1}),disableLsp:()=>e.save({lsp:!1})}}var Ne=h("<div class=formatter-row-meta>"),Ie=h("<span class=formatter-command>"),Re=h("<span class=formatter-row-subtitle><span class=formatter-row-id></span><span></span><span>"),Me=h("<div class=formatter-rules>"),Je=h("<p class=formatter-empty>No entries configured."),pe=h("<div class=drawer-scrim>"),He=h('<aside class="provider-drawer formatter-drawer"aria-label="Formatter configuration"><header class=drawer-header><div><h2></h2><span>Configure command, extensions, and environment for a formatter.</span></div></header><div class="provider-form formatter-form"><label class="required-field wide">Name<input placeholder=custom-formatter></label><label class="required-field wide">Command<input placeholder="prettier --write $FILE"></label><label class="required-field wide">Extensions<input placeholder=".js, .ts, .tsx"></label><label class="optional-field wide">Environment<textarea placeholder="NODE_ENV=development"></textarea></label><label class="formatter-check wide"><input type=checkbox>Disable this formatter</label></div><footer class=drawer-footer>'),Ke=h('<aside class="provider-drawer formatter-drawer"aria-label="LSP server configuration"><header class=drawer-header><div><h2></h2><span>Configure command, extensions, environment, and initialization options.</span></div></header><div class="provider-form formatter-form"><label class="required-field wide">Name<input placeholder=custom-lsp></label><label class=wide>Command<input placeholder="custom-lsp --stdio"></label><label class="required-field wide">Extensions<input placeholder=".ts, .tsx"></label><label class="optional-field wide">Environment<textarea placeholder="RUST_LOG=debug"></textarea></label><label class="optional-field wide">Initialization JSON<textarea placeholder="{"preferences":{"importModuleSpecifierPreference":"relative"}}"></textarea></label><label class="formatter-check wide"><input type=checkbox>Disable this LSP server</label></div><footer class=drawer-footer>'),$e=h("<section class=formatter-group>"),ke=h("<div class=formatters><section class=formatter-group>"),Xe=h("<span class=config-title-count>Formatters"),Ge=h("<span class=config-title-count>LSP Servers");function Ve(e){return e==="active"||e==="connected"?"success":e==="error"?"critical":e==="missing"?"warning":"neutral"}function Ze(e){return e==="active"?"Available":e==="connected"?"Connected":e==="disabled"?"Disabled":e==="error"?"Error":e==="idle"?"Idle":e==="missing"?"Missing requirement":"Enabled"}function Ue(e){return(()=>{var t=Ne();return s(t,r(T,{get when(){return e.row.note},children:a=>r(se,{tone:"warning",get children(){return a()}})}),null),s(t,r(se,{get tone(){return Ve(e.row.state)},get children(){return Ze(e.row.state)}}),null),s(t,r(T,{get when(){return e.row.entry},children:a=>r(Fe,{get source(){return a().source},get inherited(){return a().inherited},get overridden(){return a().overridden}})}),null),t})()}function Ye(e){return(()=>{var t=Re(),a=t.firstChild,l=a.nextSibling,f=l.nextSibling;return s(a,()=>e.row.id),s(l,(()=>{var x=H(()=>!!e.row.ext.length);return()=>x()?e.row.ext.join(", "):"No extensions configured"})()),s(f,()=>e.row.req),s(t,r(T,{get when(){return e.row.command.length},get children(){var x=Ie();return s(x,()=>e.row.command.join(" ")),x}}),null),t})()}function Qe(e){return r(Ae,{get title(){return e.row.title??e.row.id},get subtitle(){return r(Ye,{get row(){return e.row}})},get status(){return r(Ue,{get row(){return e.row}})},get highlightOverride(){return!!(e.row.entry&&!e.row.entry.inherited)},get actions(){return[r(le,{icon:"edit",variant:"ghost",get"aria-label"(){return`Edit ${e.row.id}`},get disabled(){return!!e.state.ctx.saving()},onClick:()=>e.state.open(e.kind,e.row)}),r(T,{get when(){return e.row.removable},get children(){return r(le,{icon:"trash",variant:"ghost",get"aria-label"(){return`Delete ${e.row.id}`},get disabled(){return!!e.state.ctx.saving()},onClick:()=>e.state.remove(e.row)})}})]}})}function ee(e){return(()=>{var t=Me();return s(t,r(Ee,{get each(){return e.rows},get fallback(){return Je()},children:a=>r(Qe,{get kind(){return e.kind},row:a,get state(){return e.state}})})),t})()}function We(e){const t=()=>e.state.locked();return r(T,{get when(){return e.state.mode()==="formatter"},get children(){return[(()=>{var a=pe();return fe(a,"click",e.state.close,!0),a})(),(()=>{var a=He(),l=a.firstChild,f=l.firstChild,x=f.firstChild,A=l.nextSibling,w=A.firstChild,F=w.firstChild,$=F.nextSibling,p=w.nextSibling,k=p.firstChild,_=k.nextSibling,S=p.nextSibling,N=S.firstChild,C=N.nextSibling,j=S.nextSibling,O=j.firstChild,P=O.nextSibling,z=j.nextSibling,y=z.firstChild,D=A.nextSibling;return s(x,(()=>{var m=H(()=>!!t());return()=>m()?`Edit ${e.state.name()}`:"Add Formatter"})()),s(l,r(q,{variant:"ghost","aria-label":"Close formatter overlay",get onClick(){return e.state.close},children:"X"}),null),$.$$input=m=>e.state.setName(m.currentTarget.value),L($,"spellcheck",!1),_.$$input=m=>e.state.setCommand(m.currentTarget.value),L(_,"spellcheck",!1),C.$$input=m=>e.state.setExtensions(m.currentTarget.value),L(C,"spellcheck",!1),P.$$input=m=>e.state.setEnvironment(m.currentTarget.value),L(P,"spellcheck",!1),y.addEventListener("change",m=>e.state.setDisabled(m.currentTarget.checked)),s(D,r(q,{variant:"ghost",get onClick(){return e.state.close},children:"Cancel"}),null),s(D,r(q,{variant:"primary",get disabled(){return!!e.state.ctx.saving()},get onClick(){return e.state.saveFormatter},children:"Save Formatter"}),null),v(()=>$.disabled=e.state.locked()),v(()=>$.value=e.state.name()),v(()=>_.value=e.state.command()),v(()=>C.value=e.state.extensions()),v(()=>P.value=e.state.environment()),v(()=>y.checked=e.state.disabled()),a})()]}})}function et(e){const t=()=>e.state.locked(),a=()=>e.state.disabled();return r(T,{get when(){return e.state.mode()==="lsp"},get children(){return[(()=>{var l=pe();return fe(l,"click",e.state.close,!0),l})(),(()=>{var l=Ke(),f=l.firstChild,x=f.firstChild,A=x.firstChild,w=f.nextSibling,F=w.firstChild,$=F.firstChild,p=$.nextSibling,k=F.nextSibling,_=k.firstChild,S=_.nextSibling,N=k.nextSibling,C=N.firstChild,j=C.nextSibling,O=N.nextSibling,P=O.firstChild,z=P.nextSibling,y=O.nextSibling,D=y.firstChild,m=D.nextSibling,te=y.nextSibling,R=te.firstChild,M=w.nextSibling;return s(A,(()=>{var d=H(()=>!!t());return()=>d()?`Edit ${e.state.name()}`:"Add LSP Server"})()),s(f,r(q,{variant:"ghost","aria-label":"Close LSP overlay",get onClick(){return e.state.close},children:"X"}),null),p.$$input=d=>e.state.setName(d.currentTarget.value),L(p,"spellcheck",!1),S.$$input=d=>e.state.setCommand(d.currentTarget.value),L(S,"spellcheck",!1),j.$$input=d=>e.state.setExtensions(d.currentTarget.value),L(j,"spellcheck",!1),z.$$input=d=>e.state.setEnvironment(d.currentTarget.value),L(z,"spellcheck",!1),m.$$input=d=>e.state.setInitialization(d.currentTarget.value),L(m,"spellcheck",!1),R.addEventListener("change",d=>e.state.setDisabled(d.currentTarget.checked)),s(M,r(q,{variant:"ghost",get onClick(){return e.state.close},children:"Cancel"}),null),s(M,r(q,{variant:"primary",get disabled(){return!!e.state.ctx.saving()},get onClick(){return e.state.saveLsp},children:"Save LSP Server"}),null),v(d=>{var J=e.state.locked(),K=!a(),X=!!a();return J!==d.e&&(p.disabled=d.e=J),K!==d.t&&k.classList.toggle("required-field",d.t=K),X!==d.a&&k.classList.toggle("optional-field",d.a=X),d},{e:void 0,t:void 0,a:void 0}),v(()=>p.value=e.state.name()),v(()=>S.value=e.state.command()),v(()=>j.value=e.state.extensions()),v(()=>z.value=e.state.environment()),v(()=>m.value=e.state.initialization()),v(()=>R.checked=e.state.disabled()),l})()]}})}function lt(){const e=xe();return r(ge,{get title(){return(()=>{var t=Xe();return t.firstChild,s(t,r(I,{get children(){return e.builtinFmt().length+e.customFmt().length}}),null),t})()},description:"Control native and custom formatters Kilo can run after editing files.",get actions(){return[r(q,{variant:"secondary",get disabled(){return!!e.ctx.saving()},get onClick(){return H(()=>!!e.fmtOn())()?e.disableFmt:e.enableFmt},get children(){return e.fmtOn()?"Disable All":"Enable Built-ins"}}),r(q,{icon:"plus",variant:"primary",get disabled(){return!!e.ctx.saving()},onClick:()=>e.open("formatter"),children:"Add Formatter"})]},get children(){return[(()=>{var t=ke(),a=t.firstChild;return s(a,r(W,{get trailing(){return r(I,{get children(){return e.builtinFmt().length}})},description:"Native formatter integrations from OpenCode. Edit a row to override command, extensions, or environment.",children:"Built-in Formatters"}),null),s(a,r(ee,{kind:"formatter",get rows(){return e.builtinFmt()},state:e}),null),s(t,r(T,{get when(){return e.customFmt().length},get children(){var l=$e();return s(l,r(W,{get trailing(){return r(I,{get children(){return e.customFmt().length}})},description:"Project or global formatter entries added through config.",children:"Custom Formatters"}),null),s(l,r(ee,{kind:"formatter",get rows(){return e.customFmt()},state:e}),null),l}}),null),t})(),r(We,{state:e})]}})}function st(){const e=xe();return r(ge,{get title(){return(()=>{var t=Ge();return t.firstChild,s(t,r(I,{get children(){return e.builtinLsp().length+e.customLsp().length}}),null),t})()},description:"Control native and custom Language Server Protocol integrations for diagnostics and code intelligence.",get actions(){return[r(q,{variant:"secondary",get disabled(){return!!e.ctx.saving()},get onClick(){return H(()=>!!e.lspOn())()?e.disableLsp:e.enableLsp},get children(){return e.lspOn()?"Disable All":"Enable Built-ins"}}),r(q,{icon:"plus",variant:"primary",get disabled(){return!!e.ctx.saving()},onClick:()=>e.open("lsp"),children:"Add LSP Server"})]},get children(){return[(()=>{var t=ke(),a=t.firstChild;return s(a,r(W,{get trailing(){return r(I,{get children(){return e.builtinLsp().length}})},description:"Native LSP servers from OpenCode. Edit a row to disable it or provide a custom launch command.",children:"Built-in LSP Servers"}),null),s(a,r(ee,{kind:"lsp",get rows(){return e.builtinLsp()},state:e}),null),s(t,r(T,{get when(){return e.customLsp().length},get children(){var l=$e();return s(l,r(W,{get trailing(){return r(I,{get children(){return e.customLsp().length}})},description:"Project or global LSP entries added through config.",children:"Custom LSP Servers"}),null),s(l,r(ee,{kind:"lsp",get rows(){return e.customLsp()},state:e}),null),l}}),null),t})(),r(et,{state:e})]}})}Le(["click","input"]);export{lt as FormattersRoute,st as LspRoute};
|