tarsk 0.5.82 → 0.5.83
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +1115 -236
- package/dist/public/assets/{account-view-CC_IRw14.js → account-view-CJyN7iRT.js} +1 -1
- package/dist/public/assets/{alert-dialog-CVooKafv.js → alert-dialog-Dq9tEk9t.js} +1 -1
- package/dist/public/assets/api-CX0sFbpL.js +2 -0
- package/dist/public/assets/{async-error-boundary-Did-c5sq.js → async-error-boundary-BS6v_PGo.js} +1 -1
- package/dist/public/assets/browser-tab-Cj4ztL1i.js +12 -0
- package/dist/public/assets/{button-DVIjvd2G.js → button-zYjzm__g.js} +1 -1
- package/dist/public/assets/{card-DaHPdrGh.js → card-CpchkvHM.js} +1 -1
- package/dist/public/assets/chat-dock-context-DQmDS2i8.js +1 -0
- package/dist/public/assets/{commit-dialog-29_bboof.js → commit-dialog-D6hchKSJ.js} +1 -1
- package/dist/public/assets/{commit-error-dialog-ASd71LX_.js → commit-error-dialog-f7e8Qzpk.js} +1 -1
- package/dist/public/assets/{commit-method-fields-Bylj8VjO.js → commit-method-fields-6Ag-XY8a.js} +1 -1
- package/dist/public/assets/conversation-history-view-Dd6vfz4F.js +1 -0
- package/dist/public/assets/create-project-dialog-DkxC6wM-.js +2 -0
- package/dist/public/assets/{create-repo-dialog-DKcWU21A.js → create-repo-dialog-Y8dcOitj.js} +1 -1
- package/dist/public/assets/{delete-confirm-dialog-C9CQzpYL.js → delete-confirm-dialog-DvJ5VuAy.js} +1 -1
- package/dist/public/assets/diff-view-L1jxq-Ig.js +4 -0
- package/dist/public/assets/{dist-VhqWx9-S.js → dist-B-I0i8QZ.js} +1 -1
- package/dist/public/assets/{dist-GRNTsriM.js → dist-B6u0s1jB.js} +1 -1
- package/dist/public/assets/{dist-BYYtqVYm.js → dist-BJaGHz0F.js} +1 -1
- package/dist/public/assets/{dist-DqKWH8sc.js → dist-BhdiICUV.js} +1 -1
- package/dist/public/assets/{dist-BVQgAd-x.js → dist-CPtOAqwP.js} +1 -1
- package/dist/public/assets/{dist-BI_HNW9c.js → dist-CX9ud_WC.js} +1 -1
- package/dist/public/assets/dist-FJzwWcMv.js +2 -0
- package/dist/public/assets/{dist-BKsOX8kk.js → dist-lnsB93_y.js} +1 -1
- package/dist/public/assets/{es2015-CxOm1WGv.js → es2015-D67vh4rt.js} +1 -1
- package/dist/public/assets/{explorer-monaco-editor-DMvtDzfX.js → explorer-monaco-editor-C9uTsYgh.js} +1 -1
- package/dist/public/assets/explorer-tab-view-BD924tmt.js +2 -0
- package/dist/public/assets/explorer-tree-Cn6lp8jD.js +1 -0
- package/dist/public/assets/explorer-view-5wUektaN.js +76 -0
- package/dist/public/assets/{git-history-dialog-C3tayM-K.js → git-history-dialog-CgH_0Ho0.js} +1 -1
- package/dist/public/assets/index-DCWejG57.css +1 -0
- package/dist/public/assets/index-DpDgcOE9.js +114 -0
- package/dist/public/assets/{lucide-react-C-dX1rVz.js → lucide-react-CMzSV2MP.js} +1 -1
- package/dist/public/assets/{model-list-controls-Yu77SyTe.js → model-list-controls-ueD5Yk6B.js} +1 -1
- package/dist/public/assets/onboarding-dialog-pDK_d92N.js +1 -0
- package/dist/public/assets/{pill-tabs-B_YP0wlG.js → pill-tabs-CVcpOO4f.js} +1 -1
- package/dist/public/assets/{progress-indicator-QgGbLfer.js → progress-indicator-_fEKurQg.js} +1 -1
- package/dist/public/assets/project-coding-view-CCT83rVv.js +1 -0
- package/dist/public/assets/{project-danger-zone-view-y2DDNkUE.js → project-danger-zone-view-CtOeSKHP.js} +1 -1
- package/dist/public/assets/{project-env-vars-view-BAiGaui1.js → project-env-vars-view-D8zFtC0r.js} +1 -1
- package/dist/public/assets/project-model-aliases-view-t1nijA2C.js +1 -0
- package/dist/public/assets/project-settings-view-C4kg3nDX.js +1 -0
- package/dist/public/assets/project-tools-view-DrwiTff5.js +1 -0
- package/dist/public/assets/providers-list-view-DXRbYpKr.js +1 -0
- package/dist/public/assets/pull-request-dialog-D4JEkCWC.js +1 -0
- package/dist/public/assets/{pull-with-changes-dialog-DqH8eFaG.js → pull-with-changes-dialog-Mrdm4wbB.js} +1 -1
- package/dist/public/assets/{push-before-pr-dialog-CxdsKSp0.js → push-before-pr-dialog-Ce8MMKT-.js} +1 -1
- package/dist/public/assets/query-keys-C2vEjHA1.js +1 -0
- package/dist/public/assets/{scroll-area-DnAXfBMQ.js → scroll-area-BTpvIsIG.js} +1 -1
- package/dist/public/assets/settings-general-tabs-view-Cg4sWryU.js +2 -0
- package/dist/public/assets/settings-general-view-Cl1qPgIX.js +1 -0
- package/dist/public/assets/{settings-list-CvCGue_y.js → settings-list-DajPoFxt.js} +1 -1
- package/dist/public/assets/settings-logs-view-C2SUOaIF.js +5 -0
- package/dist/public/assets/settings-mcp-servers-view-BuGFdY9u.js +5 -0
- package/dist/public/assets/settings-models-view-Dh8eZR6v.js +1 -0
- package/dist/public/assets/settings-plugins-view-CJvYXOb6.js +2 -0
- package/dist/public/assets/settings-providers-view-CxZnVxuu.js +2 -0
- package/dist/public/assets/settings-setup-view-0NvbMts_.js +2 -0
- package/dist/public/assets/settings-skills-view-DT6Ldvfn.js +2 -0
- package/dist/public/assets/{settings-slack-view-xWc3HZl5.js → settings-slack-view-DH7r2apv.js} +1 -1
- package/dist/public/assets/settings-slash-commands-view-DxlXk7eT.js +1 -0
- package/dist/public/assets/{settings-statistics-view-BhrL3BwB.js → settings-statistics-view-mlcoR26Q.js} +1 -1
- package/dist/public/assets/settings-storage-view-DuN42zRw.js +1 -0
- package/dist/public/assets/{settings-subagents-view-C1WIOO6x.js → settings-subagents-view-C1r3Jtpe.js} +2 -2
- package/dist/public/assets/{settings-system-prompt-view-b3IaVlp1.js → settings-system-prompt-view-DcbUbDfa.js} +1 -1
- package/dist/public/assets/{settings-tab-bar-cx4BrJIY.js → settings-tab-bar-T8v2_Dfk.js} +1 -1
- package/dist/public/assets/settings-view-Bv5QDh0H.js +2 -0
- package/dist/public/assets/{slug-utils-D5qfm2sn.js → slug-utils-DhQjuU2J.js} +1 -1
- package/dist/public/assets/{store-CEYCdhjW.js → store-DCnnNgwq.js} +3 -3
- package/dist/public/assets/{table-DHvBIex4.js → table-DuD2DtkR.js} +1 -1
- package/dist/public/assets/tasks-view-D_TwmLgM.js +1 -0
- package/dist/public/assets/{terminal-panel-2T2Kc4CN.js → terminal-panel-BmphDRj0.js} +3 -3
- package/dist/public/assets/{toggle-group-DaT4acSz.js → toggle-group-D0gDKZ9x.js} +1 -1
- package/dist/public/assets/{tooltip-Cqmpv-M5.js → tooltip-6qlOE6WT.js} +1 -1
- package/dist/public/assets/{use-active-dock-panel-instance-CuYvC5Us.js → use-active-dock-panel-instance-CDcYJhbD.js} +1 -1
- package/dist/public/assets/{use-git-check-CmtXehtR.js → use-git-check-CZxYYnQ8.js} +1 -1
- package/dist/public/assets/{use-installed-ai-files-Cdzy29ie.js → use-installed-ai-files-uH9h6W5v.js} +1 -1
- package/dist/public/assets/useBaseQuery-DqLwB2Sq.js +1 -0
- package/dist/public/assets/{utils-CWTBjUlE.js → utils-uGptTPGm.js} +1 -1
- package/dist/public/assets/{web-bYOmn95I.js → web-B5i03FJP.js} +1 -1
- package/dist/public/assets/{web-CsChMX5V.js → web-CutQ8Xsm.js} +1 -1
- package/dist/public/assets/{web-BlBW8SWJ.js → web-D8PJDFGq.js} +1 -1
- package/dist/public/assets/{web-CIGP6pa8.js → web-Us0pibUb.js} +1 -1
- package/dist/public/index.html +23 -22
- package/package.json +1 -1
- package/dist/public/assets/api-IMkL19mR.js +0 -2
- package/dist/public/assets/browser-tab-CjdUnNr2.js +0 -12
- package/dist/public/assets/chat-dock-context-BA8EIToZ.js +0 -1
- package/dist/public/assets/conversation-history-view-CXHmQEA6.js +0 -1
- package/dist/public/assets/create-project-dialog-CtEUqqAd.js +0 -2
- package/dist/public/assets/diff-view-eYW3Jliv.js +0 -4
- package/dist/public/assets/dist-Ch137qdo.js +0 -2
- package/dist/public/assets/explorer-tab-view-CPN5epzi.js +0 -2
- package/dist/public/assets/explorer-tree-EjBLSWxV.js +0 -1
- package/dist/public/assets/explorer-view-DZh1FGrc.js +0 -76
- package/dist/public/assets/index-C3E_66vw.js +0 -114
- package/dist/public/assets/index-D42A6A6A.css +0 -1
- package/dist/public/assets/onboarding-dialog-C3vpTe8y.js +0 -1
- package/dist/public/assets/project-coding-view-DXtPNlL1.js +0 -1
- package/dist/public/assets/project-model-aliases-view-z5KtzKTK.js +0 -1
- package/dist/public/assets/project-settings-view-CvNtaVMG.js +0 -1
- package/dist/public/assets/project-tools-view-D3j7nVpp.js +0 -1
- package/dist/public/assets/providers-list-view-BY11UIaf.js +0 -1
- package/dist/public/assets/pull-request-dialog-D7Tc-DZW.js +0 -1
- package/dist/public/assets/settings-general-tabs-view-YngdB7te.js +0 -2
- package/dist/public/assets/settings-general-view-BLovSe8Y.js +0 -1
- package/dist/public/assets/settings-logs-view-B2vFqetG.js +0 -5
- package/dist/public/assets/settings-mcp-servers-view-BiWEZyG-.js +0 -5
- package/dist/public/assets/settings-models-view-B7STNfBy.js +0 -1
- package/dist/public/assets/settings-plugins-view-D8wypO3V.js +0 -2
- package/dist/public/assets/settings-providers-view-C5x9gCg7.js +0 -2
- package/dist/public/assets/settings-setup-view-VuWyf9Ey.js +0 -2
- package/dist/public/assets/settings-skills-view-cu2mzI28.js +0 -2
- package/dist/public/assets/settings-slash-commands-view-C9slbf4z.js +0 -1
- package/dist/public/assets/settings-storage-view-y4GyGxD-.js +0 -1
- package/dist/public/assets/settings-view-C_ggbCIB.js +0 -2
- package/dist/public/assets/tasks-view-DFBi6JaW.js +0 -1
- package/dist/public/assets/useBaseQuery-D6c39Xb1.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{Wt as i}from"./dist-FJzwWcMv.js";import{r as a}from"./store-DCnnNgwq.js";import{s as o,t as s}from"./utils-uGptTPGm.js";import{cn as c,p as l}from"./lucide-react-CMzSV2MP.js";import{t as u}from"./button-zYjzm__g.js";import{g as d,h as f,n as p,t as m,u as h}from"./dist-BhdiICUV.js";import{o as g}from"./dist-lnsB93_y.js";import{C as _,N as v,pr as y,vr as b,zt as x}from"./api-CX0sFbpL.js";import{t as S}from"./dist-OixawqbU.js";import{n as C,r as w,t as T}from"./dist-B6u0s1jB.js";import{n as E}from"./explorer-tab-context-BxUVwWQQ.js";import{t as D}from"./use-toast-xpb5jNtN.js";import{t as O}from"./dist-CSssbxDI.js";import{Ct as k,Dr as A,Er as j,Ft as M,Mt as N,Ot as P,Pt as F,Tr as I,bt as L,er as R,jt as ee,wr as z,wt as B,xt as V}from"./index-DpDgcOE9.js";import{t as te}from"./delete-confirm-dialog-DvJ5VuAy.js";import{t as H}from"./use-settings-page-loading-CpaBd260.js";import{i as ne,r as re,s as ie}from"./settings-list-DajPoFxt.js";import{i as U,n as W,r as G}from"./slug-utils-DhQjuU2J.js";var K=t(),q=e(n(),1),J=r(),Y=`Radio`,[X,Z]=f(Y),[Q,ae]=X(Y),oe=q.forwardRef((e,t)=>{let{__scopeRadio:n,name:r,checked:i=!1,required:a,disabled:s,value:c=`on`,onCheck:l,form:u,...f}=e,[p,m]=q.useState(null),g=o(t,e=>m(e)),_=q.useRef(!1),v=p?u||!!p.closest(`form`):!0;return(0,J.jsxs)(Q,{scope:n,checked:i,disabled:s,children:[(0,J.jsx)(h.button,{type:`button`,role:`radio`,"aria-checked":i,"data-state":de(i),"data-disabled":s?``:void 0,disabled:s,value:c,...f,ref:g,onClick:d(e.onClick,e=>{i||l?.(),v&&(_.current=e.isPropagationStopped(),_.current||e.stopPropagation())})}),v&&(0,J.jsx)(ue,{control:p,bubbles:!_.current,name:r,value:c,checked:i,required:a,disabled:s,form:u,style:{transform:`translateX(-100%)`}})]})});oe.displayName=Y;var se=`RadioIndicator`,ce=q.forwardRef((e,t)=>{let{__scopeRadio:n,forceMount:r,...i}=e,a=ae(se,n);return(0,J.jsx)(p,{present:r||a.checked,children:(0,J.jsx)(h.span,{"data-state":de(a.checked),"data-disabled":a.disabled?``:void 0,...i,ref:t})})});ce.displayName=se;var le=`RadioBubbleInput`,ue=q.forwardRef(({__scopeRadio:e,control:t,checked:n,bubbles:r=!0,...i},a)=>{let s=q.useRef(null),c=o(s,a),l=O(n),u=g(t);return q.useEffect(()=>{let e=s.current;if(!e)return;let t=window.HTMLInputElement.prototype,i=Object.getOwnPropertyDescriptor(t,`checked`).set;if(l!==n&&i){let t=new Event(`click`,{bubbles:r});i.call(e,n),e.dispatchEvent(t)}},[l,n,r]),(0,J.jsx)(h.input,{type:`radio`,"aria-hidden":!0,defaultChecked:n,...i,tabIndex:-1,ref:c,style:{...i.style,...u,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}})});ue.displayName=le;function de(e){return e?`checked`:`unchecked`}var fe=[`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`],$=`RadioGroup`,[pe,me]=f($,[w,Z]),he=w(),ge=Z(),[_e,ve]=pe($),ye=q.forwardRef((e,t)=>{let{__scopeRadioGroup:n,name:r,defaultValue:i,value:a,required:o=!1,disabled:s=!1,orientation:c,dir:l,loop:u=!0,onValueChange:d,...f}=e,p=he(n),g=S(l),[_,v]=m({prop:a,defaultProp:i??null,onChange:d,caller:$});return(0,J.jsx)(_e,{scope:n,name:r,required:o,disabled:s,value:_,onValueChange:v,children:(0,J.jsx)(C,{asChild:!0,...p,orientation:c,dir:g,loop:u,children:(0,J.jsx)(h.div,{role:`radiogroup`,"aria-required":o,"aria-orientation":c,"data-disabled":s?``:void 0,dir:g,...f,ref:t})})})});ye.displayName=$;var be=`RadioGroupItem`,xe=q.forwardRef((e,t)=>{let{__scopeRadioGroup:n,disabled:r,...i}=e,a=ve(be,n),s=a.disabled||r,c=he(n),l=ge(n),u=q.useRef(null),f=o(t,u),p=a.value===i.value,m=q.useRef(!1);return q.useEffect(()=>{let e=e=>{fe.includes(e.key)&&(m.current=!0)},t=()=>m.current=!1;return document.addEventListener(`keydown`,e),document.addEventListener(`keyup`,t),()=>{document.removeEventListener(`keydown`,e),document.removeEventListener(`keyup`,t)}},[]),(0,J.jsx)(T,{asChild:!0,...c,focusable:!s,active:p,children:(0,J.jsx)(oe,{disabled:s,required:a.required,checked:p,...l,...i,name:a.name,ref:f,onCheck:()=>a.onValueChange(i.value),onKeyDown:d(e=>{e.key===`Enter`&&e.preventDefault()}),onFocus:d(i.onFocus,()=>{m.current&&u.current?.click()})})})});xe.displayName=be;var Se=`RadioGroupIndicator`,Ce=q.forwardRef((e,t)=>{let{__scopeRadioGroup:n,...r}=e;return(0,J.jsx)(ce,{...ge(n),...r,ref:t})});Ce.displayName=Se;var we=ye,Te=xe,Ee=Ce,De=q.forwardRef((e,t)=>{let n=(0,K.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=s(`grid gap-2`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,J.jsx)(we,{className:a,...i,ref:t}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});De.displayName=we.displayName;var Oe=q.forwardRef((e,t)=>{let n=(0,K.c)(10),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=s(`aspect-square h-4 w-4 rounded-full border border-brand text-brand ring-offset-background focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50`,r),n[3]=r,n[4]=a);let o;n[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,J.jsx)(Ee,{className:`flex items-center justify-center`,children:(0,J.jsx)(c,{className:`h-2.5 w-2.5 fill-current text-current`})}),n[5]=o):o=n[5];let l;return n[6]!==i||n[7]!==t||n[8]!==a?(l=(0,J.jsx)(Te,{ref:t,className:a,...i,children:o}),n[6]=i,n[7]=t,n[8]=a,n[9]=l):l=n[9],l});Oe.displayName=Te.displayName;function ke({projectId:e,threadId:t,onCommandCreated:n}){let[r,a]=(0,q.useState)(``),[o,c]=(0,q.useState)(``),[l,u]=(0,q.useState)(``),[d,f]=(0,q.useState)(`default`),[p,m]=(0,q.useState)(!1),h=G(r),g=W(h),v=async()=>{if(!(!g||!e)){m(!0);try{await _(h,``,{description:o.trim()||void 0,argumentHint:l.trim()||void 0,mode:d===`plan`?`plan`:void 0},`project`,t??void 0),D({title:`Command created`,description:`Command '/${h}' was created successfully.`}),a(``),c(``),u(``),f(`default`),n?.(h)}catch(e){D({title:`Error`,description:e instanceof Error?e.message:`Failed to create command`,variant:`destructive`})}finally{m(!1)}}};return e?(0,J.jsx)(F,{children:(0,J.jsxs)(L,{children:[(0,J.jsx)(B,{title:`Add Slash Command`,description:`Saved as a .md file in .agents/commands in the selected project workspace.`,sticky:!0,className:`pr-10`}),(0,J.jsxs)(`div`,{children:[(0,J.jsxs)(V,{title:`Command Name`,controlLayout:`stack`,className:`pt-6`,children:[(0,J.jsx)(I,{id:`commandName`,value:r,onChange:e=>a(e.target.value),placeholder:`e.g. review`,disabled:p}),r?(0,J.jsxs)(`p`,{className:s(i.caption,`mt-2`),children:[`Command: `,(0,J.jsxs)(`span`,{className:`font-mono`,children:[`/`,h||`...`]})]}):null]}),(0,J.jsx)(V,{title:`Description`,controlLayout:`stack`,className:`pt-6`,children:(0,J.jsx)(I,{id:`commandDescription`,value:o,onChange:e=>c(e.target.value),placeholder:`Brief description shown in autocomplete`,disabled:p})}),(0,J.jsx)(V,{title:`Argument Hint`,description:`Shows after the command name to guide users what to type`,controlLayout:`stack`,className:`pt-6`,children:(0,J.jsx)(I,{id:`argumentHint`,value:l,onChange:e=>u(e.target.value),placeholder:`e.g. <focus-area> or <branch-name>`,disabled:p})}),(0,J.jsx)(V,{title:`Mode`,description:d==="default"?`Standard chat mode`:`Activates plan mode when this command is used`,controlLayout:`stack`,className:`pt-6`,children:(0,J.jsxs)(De,{value:d,onValueChange:e=>f(e),className:`flex gap-4`,disabled:p,children:[(0,J.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,J.jsx)(Oe,{value:`default`,id:`mode-default`}),(0,J.jsx)(z,{htmlFor:`mode-default`,className:s(i.labelNormal,`cursor-pointer`),children:`Default`})]}),(0,J.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,J.jsx)(Oe,{value:`plan`,id:`mode-plan`}),(0,J.jsx)(z,{htmlFor:`mode-plan`,className:s(i.labelNormal,`cursor-pointer`),children:`Plan`})]})]})}),(0,J.jsx)(U,{onContinue:()=>void v(),disabled:!g,creating:p})]})]})}):(0,J.jsx)(ee,{title:`No project selected`,children:`Please select a project to add a slash command.`})}function Ae(e,t){let[n,r]=(0,q.useState)([]),[i,a]=(0,q.useState)(!0),[o,s]=(0,q.useState)(new Map),c=(0,q.useCallback)(async()=>{if(!t){a(!1),r([]),s(new Map);return}a(!0);try{let e=(await x(t)).filter(function(e){return e.scope===`project`&&!e.isBuiltIn});r(e),s(new Map(e.map(e=>[e.name,e.filePath])))}catch{r([]),s(new Map)}finally{a(!1)}},[t]);return(0,q.useLayoutEffect)(()=>{t&&a(!0)},[e,t]),(0,q.useEffect)(()=>{c()},[c]),{commands:n,loading:i,installedCommands:o,setInstalledCommands:s,loadCommands:c}}function je(){let e=(0,K.c)(6),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=[],e[0]=t):t=e[0];let[n,r]=(0,q.useState)(t),[i,a]=(0,q.useState)(!0),o,s;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(o=()=>{a(!0),y().then(r).catch(()=>r([])).finally(()=>a(!1))},s=[],e[1]=o,e[2]=s):(o=e[1],s=e[2]),(0,q.useEffect)(o,s);let c;return e[3]!==i||e[4]!==n?(c={popularCommands:n,loadingPopularCommands:i},e[3]=i,e[4]=n,e[5]=c):c=e[5],c}function Me(e){let t=e.metadata?.description?.trim();return t&&t.length>0?t:`No description`}function Ne(e,t){return e.filter(e=>!t.has(e.name))}function Pe(e,t){let n=(0,K.c)(3),r;return n[0]!==t||n[1]!==e?(r=function(n){e(n),t(`explorer`)},n[0]=t,n[1]=e,n[2]=r):r=n[2],r}function Fe(e){return(0,q.useCallback)(async function(t){e.setDeleting(!0);try{if(!e.selectedThreadId)return;await v(t.filePath,e.selectedThreadId),e.setExplorerClearPath(t.filePath),e.triggerExplorerRefresh(),e.setInstalledCommands(e=>{let n=new Map(e);return n.delete(t.name),n}),D({title:`Command removed`,description:`/${t.name}`}),e.setDeleteConfirm(null),await e.loadCommands()}catch(e){D({title:`Error`,description:e instanceof Error?e.message:`Failed to remove command`,variant:`destructive`})}finally{e.setDeleting(!1)}},[e.loadCommands,e.selectedThreadId,e.triggerExplorerRefresh,e.setExplorerClearPath])}function Ie(e){return(0,q.useCallback)(async function(t){if(!(!e.selectedThreadId||e.installedCommands.has(t.name)))try{if(t.gitHubRepo&&t.gitHubFolder){let n=`.agents/commands`;await b(e.selectedThreadId,t.gitHubRepo,t.gitHubFolder,n);let r=`${n}/${t.name}.md`;e.setInstalledCommands(e=>new Map(e).set(t.name,r))}else{let n=await _(t.name,t.content,{description:t.description,argumentHint:t.argumentHint},`project`,e.selectedThreadId);e.setInstalledCommands(e=>new Map(e).set(t.name,n.filePath))}e.triggerExplorerRefresh(),e.loadCommands(),D({title:`Command installed`,description:`/${t.name}`})}catch(e){D({title:`Error`,description:e instanceof Error?e.message:`Failed to install command`,variant:`destructive`})}},[e.selectedThreadId,e.installedCommands,e.triggerExplorerRefresh,e.loadCommands])}function Le(){let e=(0,K.c)(7),t=a(ze),n=a(Re),{openChatDockPanel:r}=R(),{setPendingExplorerPath:i,triggerExplorerRefresh:o,setExplorerClearPath:s}=E(),c;return e[0]!==r||e[1]!==t||e[2]!==n||e[3]!==s||e[4]!==i||e[5]!==o?(c={selectedProjectId:t,selectedThreadId:n,openChatDockPanel:r,setPendingExplorerPath:i,triggerExplorerRefresh:o,setExplorerClearPath:s},e[0]=r,e[1]=t,e[2]=n,e[3]=s,e[4]=i,e[5]=o,e[6]=c):c=e[6],c}function Re(e){return e.selectedThreadId}function ze(e){return e.selectedProjectId}function Be(){let e=(0,K.c)(5),[t,n]=(0,q.useState)(!1),[r,i]=(0,q.useState)(null),[a,o]=(0,q.useState)(!1),[s,c]=(0,q.useState)(``),l;return e[0]!==s||e[1]!==r||e[2]!==a||e[3]!==t?(l={showAddDialog:t,setShowAddDialog:n,deleteConfirm:r,setDeleteConfirm:i,deleting:a,setDeleting:o,availableSearch:s,setAvailableSearch:c},e[0]=s,e[1]=r,e[2]=a,e[3]=t,e[4]=l):l=e[4],l}function Ve(e,t){return e?`${e}:${t??``}`:null}function He(){let e=(0,K.c)(41),t=Le(),n=Be(),{selectedProjectId:r,selectedThreadId:i,openChatDockPanel:a,setPendingExplorerPath:o,triggerExplorerRefresh:s,setExplorerClearPath:c}=t,{showAddDialog:l,setShowAddDialog:u,deleteConfirm:d,setDeleteConfirm:f,deleting:p,setDeleting:m,availableSearch:h,setAvailableSearch:g}=n,{commands:_,loading:v,installedCommands:y,setInstalledCommands:b,loadCommands:x}=Ae(r,i),{popularCommands:S,loadingPopularCommands:C}=je(),w;e[0]!==r||e[1]!==i?(w=Ve(r,i),e[0]=r,e[1]=i,e[2]=w):w=e[2];let T;e[3]!==v||e[4]!==C?(T=[v,C],e[3]=v,e[4]=C,e[5]=T):T=e[5];let E=H(w,T),D=Pe(o,a),O;e[6]!==x||e[7]!==i||e[8]!==f||e[9]!==m||e[10]!==c||e[11]!==b||e[12]!==s?(O={selectedThreadId:i,loadCommands:x,triggerExplorerRefresh:s,setExplorerClearPath:c,setDeleting:m,setDeleteConfirm:f,setInstalledCommands:b},e[6]=x,e[7]=i,e[8]=f,e[9]=m,e[10]=c,e[11]=b,e[12]=s,e[13]=O):O=e[13];let k=Fe(O),A;e[14]!==y||e[15]!==x||e[16]!==i||e[17]!==b||e[18]!==s?(A={selectedThreadId:i,installedCommands:y,setInstalledCommands:b,triggerExplorerRefresh:s,loadCommands:x},e[14]=y,e[15]=x,e[16]=i,e[17]=b,e[18]=s,e[19]=A):A=e[19];let j=Ie(A),M;e[20]!==y||e[21]!==S?(M=Ne(S,y),e[20]=y,e[21]=S,e[22]=M):M=e[22];let N=M,P;return e[23]!==N||e[24]!==h||e[25]!==_||e[26]!==d||e[27]!==p||e[28]!==k||e[29]!==j||e[30]!==D||e[31]!==x||e[32]!==E||e[33]!==r||e[34]!==i||e[35]!==g||e[36]!==f||e[37]!==u||e[38]!==l||e[39]!==s?(P={selectedProjectId:r,selectedThreadId:i,commands:_,showAddDialog:l,setShowAddDialog:u,deleteConfirm:d,setDeleteConfirm:f,deleting:p,availableSearch:h,setAvailableSearch:g,pageLoading:E,availableCommands:N,handleDelete:k,handleOpenInExplorer:D,getCommandSubtitle:Me,handleInstallPopular:j,loadCommands:x,triggerExplorerRefresh:s},e[23]=N,e[24]=h,e[25]=_,e[26]=d,e[27]=p,e[28]=k,e[29]=j,e[30]=D,e[31]=x,e[32]=E,e[33]=r,e[34]=i,e[35]=g,e[36]=f,e[37]=u,e[38]=l,e[39]=s,e[40]=P):P=e[40],P}function Ue(){let e=(0,K.c)(63),{selectedProjectId:t,selectedThreadId:n,commands:r,showAddDialog:a,setShowAddDialog:o,deleteConfirm:c,setDeleteConfirm:d,deleting:f,availableSearch:p,setAvailableSearch:m,pageLoading:h,availableCommands:g,handleDelete:_,handleOpenInExplorer:v,getCommandSubtitle:y,handleInstallPopular:b,loadCommands:x,triggerExplorerRefresh:S}=He();if(!t){let t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,J.jsx)(ee,{children:`Select a project to manage slash commands.`}),e[0]=t):t=e[0],t}let C;e[1]===o?C=e[2]:(C=()=>o(!0),e[1]=o,e[2]=C);let w=!n,T;e[3]!==C||e[4]!==w?(T=(0,J.jsx)(ie,{title:`Installed Slash Commands`,tooltip:`Project slash commands you run with / in chat.`,action:(0,J.jsx)(u,{onClick:C,disabled:w,children:`Add Command`})}),e[3]=C,e[4]=w,e[5]=T):T=e[5];let E;e[6]===n?E=e[7]:(E=!n&&(0,J.jsx)(k,{children:`Select a thread to add or install slash commands.`}),e[6]=n,e[7]=E);let D;e[8]===Symbol.for(`react.memo_cache_sentinel`)?(D={icon:l,title:`No slash commands installed`,description:`Add slash commands to create quick actions in chat.`},e[8]=D):D=e[8];let O;e[9]===y?O=e[10]:(O=e=>(0,J.jsxs)(`div`,{className:`min-w-0 text-left`,children:[(0,J.jsxs)(`div`,{className:s(i.body,`truncate`),children:[`/`,e.name]}),(0,J.jsx)(`div`,{className:s(i.compact,`truncate text-muted-foreground`),children:y(e)})]}),e[9]=y,e[10]=O);let F;e[11]===v?F=e[12]:(F=e=>v(e.filePath),e[11]=v,e[12]=F);let I;e[13]!==r||e[14]!==d||e[15]!==O||e[16]!==F?(I=(0,J.jsx)(re,{showHeader:!1,loading:!1,items:r,emptyState:D,getKey:Xe,columnsClassName:`grid-cols-[minmax(0,1fr)_auto_1.75rem]`,renderContent:O,renderMiddle:Ye,onItemClick:F,itemClickLabel:Je,onDelete:d,deleteAriaLabel:qe,deleteTooltip:`Remove this slash command from the project`}),e[13]=r,e[14]=d,e[15]=O,e[16]=F,e[17]=I):I=e[17];let L;e[18]!==E||e[19]!==I?(L=(0,J.jsxs)(N,{className:`pt-6`,children:[E,I]}),e[18]=E,e[19]=I,e[20]=L):L=e[20];let R;e[21]!==T||e[22]!==L?(R=(0,J.jsxs)(M,{className:`shrink-0`,children:[T,L]}),e[21]=T,e[22]=L,e[23]=R):R=e[23];let z;e[24]!==b||e[25]!==n?(z=e=>(0,J.jsx)(u,{type:`button`,variant:`outline`,size:`sm`,className:`opacity-0 transition-opacity group-hover:opacity-100 focus-visible:opacity-100`,disabled:!n,onClick:()=>void b(e),children:`Install`}),e[24]=b,e[25]=n,e[26]=z):z=e[26];let B;e[27]!==g||e[28]!==p||e[29]!==m||e[30]!==z?(B=(0,J.jsx)(ne,{title:`Available Slash Commands`,tooltip:`Browse and install slash commands from the catalog.`,emptyLabel:`No available commands found.`,searchValue:p,onSearchChange:m,items:g,getKey:Ke,renderName:Ge,getSubtitle:We,renderAction:z}),e[27]=g,e[28]=p,e[29]=m,e[30]=z,e[31]=B):B=e[31];let V;e[32]!==h||e[33]!==B||e[34]!==R?(V=(0,J.jsxs)(P,{loading:h,children:[R,B]}),e[32]=h,e[33]=B,e[34]=R,e[35]=V):V=e[35];let H;e[36]!==x||e[37]!==o||e[38]!==S?(H=()=>{o(!1),x(),S()},e[36]=x,e[37]=o,e[38]=S,e[39]=H):H=e[39];let U;e[40]!==t||e[41]!==n||e[42]!==H?(U=(0,J.jsx)(A,{className:`max-w-2xl max-h-[90vh] overflow-y-auto p-0`,children:(0,J.jsx)(ke,{projectId:t,threadId:n,onCommandCreated:H})}),e[40]=t,e[41]=n,e[42]=H,e[43]=U):U=e[43];let W;e[44]!==o||e[45]!==a||e[46]!==U?(W=(0,J.jsx)(j,{open:a,onOpenChange:o,children:U}),e[44]=o,e[45]=a,e[46]=U,e[47]=W):W=e[47];let G=c!==null,q;e[48]===d?q=e[49]:(q=e=>!e&&d(null),e[48]=d,e[49]=q);let Y=`Are you sure you want to delete "/${c?.name}"? This action cannot be undone.`,X;e[50]!==c||e[51]!==_?(X=()=>{c&&_(c)},e[50]=c,e[51]=_,e[52]=X):X=e[52];let Z;e[53]!==f||e[54]!==G||e[55]!==q||e[56]!==Y||e[57]!==X?(Z=(0,J.jsx)(te,{open:G,onOpenChange:q,title:`Delete Slash Command`,description:Y,onConfirm:X,confirming:f}),e[53]=f,e[54]=G,e[55]=q,e[56]=Y,e[57]=X,e[58]=Z):Z=e[58];let Q;return e[59]!==V||e[60]!==W||e[61]!==Z?(Q=(0,J.jsxs)(J.Fragment,{children:[V,W,Z]}),e[59]=V,e[60]=W,e[61]=Z,e[62]=Q):Q=e[62],Q}function We(e){return e.description}function Ge(e){return`/${e.name}`}function Ke(e){return e.id}function qe(e){return`Delete /${e.name}`}function Je(e){return`Open /${e.name} in Files`}function Ye(e){return e.metadata?.mode?(0,J.jsx)(`span`,{className:s(i.compact,`bg-muted px-1.5 py-0.5 rounded flex-shrink-0`),children:e.metadata.mode}):(0,J.jsx)(`div`,{})}function Xe(e){return e.filePath}export{Ue as SettingsSlashCommandsView,Ue as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{
|
|
1
|
+
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{Vt as i,W as a,Wt as o}from"./dist-FJzwWcMv.js";import{t as s}from"./utils-uGptTPGm.js";import{P as c}from"./lucide-react-CMzSV2MP.js";import{t as l}from"./button-zYjzm__g.js";import{ft as u,hn as d}from"./api-CX0sFbpL.js";import{n as f}from"./use-toast-xpb5jNtN.js";import{Nt as p}from"./index-DpDgcOE9.js";import{t as m}from"./delete-confirm-dialog-DvJ5VuAy.js";import{i as h,n as g,o as _,r as v,t as y}from"./table-DuD2DtkR.js";import{n as b,t as x}from"./toggle-group-D0gDKZ9x.js";var S=t(),C=e(n(),1),w=a(`app.use-latency-stats.hook`),T={tools:[],models:[]};function E(){let[e,t]=(0,C.useState)([]),[n,r]=(0,C.useState)([]),[i,a]=(0,C.useState)(!0),[o,s]=(0,C.useState)(!1),[c,l]=(0,C.useState)(null),f=(0,C.useCallback)(async function(){try{l(null);let e=await u();t(e.tools??T.tools),r(e.models??T.models)}catch(e){w.error(`Failed to load latency statistics`,e),l(e instanceof Error?e.message:`Failed to load statistics`)}finally{a(!1)}},[]),p=(0,C.useCallback)(async function(){s(!0);try{return l(null),await d(),t(T.tools),r(T.models),!0}catch(e){return w.error(`Failed to reset latency statistics`,e),l(e instanceof Error?e.message:`Failed to reset statistics`),!1}finally{s(!1)}},[]);return(0,C.useEffect)(()=>{f()},[f]),{tools:e,models:n,isLoading:i,isResetting:o,error:c,refresh:f,reset:p}}var D=r(),O=[{value:`tools`,label:`Tools`},{value:`models`,label:`Models`}],k=`inline-flex rounded-full border bg-muted/40 p-1`,A=`rounded-full border-0 px-4 data-[state=on]:bg-foreground data-[state=on]:text-background data-[state=on]:shadow-sm`,j=`flex items-center gap-2`,M=`gap-1.5 text-muted-foreground hover:text-foreground`,N=`h-9`,P=`table-fixed`,F=s(o.body,`py-1.5`),I=s(o.body,`w-28 py-1.5 text-right tabular-nums`),L=s(o.body,`w-32 py-1.5 text-right tabular-nums`),R=`h-9 w-28 bg-transparent py-2 text-right`,z=`h-9 w-32 bg-transparent py-2 text-right`;function B(e){if(!Number.isFinite(e)||e<0)return`—`;if(e<1e3)return`${Math.round(e)}ms`;let t=e/1e3;return t<10?`${t.toFixed(1)}s`:`${Math.round(t)}s`}var V=`No tool call timings recorded yet. Stats appear after agent tool calls complete.`,H=`No model timings recorded yet. Stats appear after assistant responses complete.`;function U(e){return O.some(t=>t.value===e)}function W(e){let t=(0,S.c)(3),{view:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=s(`w-full caption-bottom`,P,o.body),t[0]=r):r=t[0];let i;return t[1]===n?i=t[2]:(i=(0,D.jsx)(`table`,{className:r,children:(0,D.jsx)(`thead`,{className:`[&_tr]:border-b [&_tr]:border-table-border`,children:(0,D.jsx)(`tr`,{children:n===`tools`?(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(h,{className:`h-9 bg-transparent py-2`,children:`Tool`}),(0,D.jsx)(h,{className:R,children:`Calls`}),(0,D.jsx)(h,{className:z,children:`Latency`})]}):(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(h,{className:`h-9 bg-transparent py-2`,children:`Model`}),(0,D.jsx)(h,{className:R,children:`Requests`}),(0,D.jsx)(h,{className:z,children:`Latency`})]})})})}),t[1]=n,t[2]=i),i}function G(e){let t=(0,S.c)(6),{view:n,onViewChange:r}=e,i;t[0]===r?i=t[1]:(i=function(e){U(e)&&r(e)},t[0]=r,t[1]=i);let a=i,o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=O.map(K),t[2]=o):o=t[2];let s;return t[3]!==a||t[4]!==n?(s=(0,D.jsx)(x,{type:`single`,value:n,onValueChange:a,"aria-label":`Statistics view`,variant:`outline`,className:k,children:o}),t[3]=a,t[4]=n,t[5]=s):s=t[5],s}function K(e){return(0,D.jsx)(b,{value:e.value,"aria-label":e.label,className:A,children:e.label},e.value)}function q(e){let t=(0,S.c)(5),{isResetting:n,canReset:r,onReset:i}=e,a=n||!r,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,D.jsx)(c,{}),t[0]=o):o=t[0];let s=n?`Resetting...`:`Reset`,u;return t[1]!==i||t[2]!==a||t[3]!==s?(u=(0,D.jsxs)(l,{variant:`outline`,size:`sm`,className:M,disabled:a,onClick:i,children:[o,s]}),t[1]=i,t[2]=a,t[3]=s,t[4]=u):u=t[4],u}function J(e){let t=(0,S.c)(10),{view:n,isResetting:r,canReset:i,onViewChange:a,onResetClick:o}=e,s;t[0]!==a||t[1]!==n?(s=(0,D.jsx)(G,{view:n,onViewChange:a}),t[0]=a,t[1]=n,t[2]=s):s=t[2];let c;t[3]!==i||t[4]!==r||t[5]!==o?(c=(0,D.jsx)(q,{isResetting:r,canReset:i,onReset:o}),t[3]=i,t[4]=r,t[5]=o,t[6]=c):c=t[6];let l;return t[7]!==s||t[8]!==c?(l=(0,D.jsxs)(`div`,{className:j,children:[s,c]}),t[7]=s,t[8]=c,t[9]=l):l=t[9],l}function Y(e){let t=(0,S.c)(4),{tools:n}=e,r;t[0]===n?r=t[1]:(r=n.map(X),t[0]=n,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,D.jsx)(y,{className:P,children:(0,D.jsx)(g,{children:r})}),t[2]=r,t[3]=i),i}function X(e){return(0,D.jsxs)(_,{className:N,children:[(0,D.jsx)(v,{className:F,children:i(e.toolName)}),(0,D.jsx)(v,{className:I,children:e.callCount.toLocaleString()}),(0,D.jsx)(v,{className:L,children:B(e.averageDurationMs)})]},e.toolName)}function Z(e){let t=(0,S.c)(4),{models:n}=e,r;t[0]===n?r=t[1]:(r=n.map(Q),t[0]=n,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,D.jsx)(y,{className:P,children:(0,D.jsx)(g,{children:r})}),t[2]=r,t[3]=i),i}function Q(e){return(0,D.jsxs)(_,{className:N,children:[(0,D.jsx)(v,{className:F,children:e.modelId}),(0,D.jsx)(v,{className:I,children:e.requestCount.toLocaleString()}),(0,D.jsx)(v,{className:L,children:B(e.averageDurationMs)})]},e.modelId)}function $(e){let t=(0,S.c)(7),{view:n,isLoading:r,tools:i,models:a}=e;if(r){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,D.jsx)(`p`,{className:o.bodyMuted,children:`Loading…`}),t[0]=e):e=t[0],e}if(n===`tools`){if(i.length===0){let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,D.jsx)(`p`,{className:o.bodyMuted,children:V}),t[1]=e):e=t[1],e}let e;return t[2]===i?e=t[3]:(e=(0,D.jsx)(Y,{tools:i}),t[2]=i,t[3]=e),e}if(a.length===0){let e;return t[4]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,D.jsx)(`p`,{className:o.bodyMuted,children:H}),t[4]=e):e=t[4],e}let s;return t[5]===a?s=t[6]:(s=(0,D.jsx)(Z,{models:a}),t[5]=a,t[6]=s),s}function ee(){let e=(0,S.c)(31),{tools:t,models:n,isLoading:r,isResetting:i,error:a,reset:c}=E(),{toast:l}=f(),[u,d]=(0,C.useState)(`tools`),[h,g]=(0,C.useState)(!1),_=t.length>0||n.length>0,v=!r&&(u===`tools`?t.length>0:n.length>0),y=!r&&_,b;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(b=function(){g(!0)},e[0]=b):b=e[0];let x=b,w;e[1]!==c||e[2]!==l?(w=async function(){if(g(!1),await c()){l({title:`Statistics cleared`,description:`All tool and model latency data has been reset.`});return}l({title:`Error`,description:`Failed to reset statistics. Please try again.`,variant:`destructive`})},e[1]=c,e[2]=l,e[3]=w):w=e[3];let T=w,O;e[4]!==v||e[5]!==u?(O=v?(0,D.jsx)(W,{view:u}):void 0,e[4]=v,e[5]=u,e[6]=O):O=e[6];let k;e[7]!==y||e[8]!==i||e[9]!==u?(k=(0,D.jsx)(J,{view:u,isResetting:i,canReset:y,onViewChange:d,onResetClick:x}),e[7]=y,e[8]=i,e[9]=u,e[10]=k):k=e[10];let A;e[11]===a?A=e[12]:(A=a?(0,D.jsx)(`p`,{className:s(o.bodyMuted,`mb-6 text-destructive`),children:a}):null,e[11]=a,e[12]=A);let j;e[13]!==r||e[14]!==n||e[15]!==t||e[16]!==u?(j=(0,D.jsx)($,{view:u,isLoading:r,tools:t,models:n}),e[13]=r,e[14]=n,e[15]=t,e[16]=u,e[17]=j):j=e[17];let M;e[18]!==O||e[19]!==k||e[20]!==A||e[21]!==j?(M=(0,D.jsxs)(p,{title:`Statistics`,description:`Average latency and request counts for tool calls and model responses.`,tableHeader:O,action:k,children:[A,j]}),e[18]=O,e[19]=k,e[20]=A,e[21]=j,e[22]=M):M=e[22];let N;e[23]===T?N=e[24]:(N=()=>void T(),e[23]=T,e[24]=N);let P;e[25]!==h||e[26]!==N?(P=(0,D.jsx)(m,{open:h,onOpenChange:g,title:`Reset statistics?`,description:`This clears all recorded tool call and model response latency data. This action cannot be undone.`,onConfirm:N,confirmLabel:`Reset`,confirmingLabel:`Resetting...`}),e[25]=h,e[26]=N,e[27]=P):P=e[27];let F;return e[28]!==M||e[29]!==P?(F=(0,D.jsxs)(D.Fragment,{children:[M,P]}),e[28]=M,e[29]=P,e[30]=F):F=e[30],F}export{ee as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{Wt as i,_ as a}from"./dist-FJzwWcMv.js";import{Z as o,q as s,r as c}from"./store-DCnnNgwq.js";import{t as l,u}from"./utils-uGptTPGm.js";import{Sn as d,Tn as f,d as p,dt as m}from"./lucide-react-CMzSV2MP.js";import{t as h}from"./button-zYjzm__g.js";import{i as g,n as _,t as v}from"./tooltip-6qlOE6WT.js";import{t as y}from"./progress-indicator-_fEKurQg.js";import{n as ee}from"./use-toast-xpb5jNtN.js";import{F as te,Gn as ne,Mt as re,nn as ie,rt as ae,wt as oe}from"./index-DpDgcOE9.js";import{t as se}from"./delete-confirm-dialog-DvJ5VuAy.js";import{i as ce,r as b}from"./table-DuD2DtkR.js";import{t as le}from"./settings-list-DajPoFxt.js";var x=t(),ue=e(n(),1),S=r(),de=36,fe=`table-fixed`,pe=`h-9 w-48 bg-transparent py-2`,me=`h-9 bg-transparent py-2`,he=`h-9 w-32 bg-transparent py-2`,ge=`h-9 w-10 bg-transparent py-2`,_e=l(i.bodyMuted,`w-48 truncate py-1.5`),ve=l(i.body,`truncate py-1.5`),ye=l(i.bodyMuted,`w-32 truncate py-1.5`),be=`w-10 py-1.5`,xe={column:`project`,direction:`asc`};function Se(e){let t=(0,x.c)(11),n,r;t[0]===e?(n=t[1],r=t[2]):({style:r,...n}=e,t[0]=e,t[1]=n,t[2]=r);let a;t[3]===r?a=t[4]:(a={...r,width:`100%`},t[3]=r,t[4]=a);let o;t[5]===n.className?o=t[6]:(o=l(`w-full caption-bottom`,fe,i.body,n.className),t[5]=n.className,t[6]=o);let s;return t[7]!==n||t[8]!==a||t[9]!==o?(s=(0,S.jsx)(`table`,{...n,style:a,className:o}),t[7]=n,t[8]=a,t[9]=o,t[10]=s):s=t[10],s}function Ce(e){let t=(0,x.c)(5),n;t[0]===e.className?n=t[1]:(n=l(`hidden`,e.className),t[0]=e.className,t[1]=n);let r;return t[2]!==e||t[3]!==n?(r=(0,S.jsx)(`thead`,{...e,className:n}),t[2]=e,t[3]=n,t[4]=r):r=t[4],r}function we(e){let t=(0,x.c)(5),n;t[0]===e.className?n=t[1]:(n=l(`[&_tr:last-child]:border-0`,e.className),t[0]=e.className,t[1]=n);let r;return t[2]!==e||t[3]!==n?(r=(0,S.jsx)(`tbody`,{...e,className:n}),t[2]=e,t[3]=n,t[4]=r):r=t[4],r}function Te(e){let t=(0,x.c)(5),n;t[0]===e.className?n=t[1]:(n=l(`frosted-scrollbar`,e.className),t[0]=e.className,t[1]=n);let r;return t[2]!==e||t[3]!==n?(r=(0,S.jsx)(`div`,{...e,className:n}),t[2]=e,t[3]=n,t[4]=r):r=t[4],r}function Ee(e,t){return t?a(t,e):e}function C(e,t,n){switch(t){case`project`:return e.projectName;case`path`:return Ee(e.path,n);case`branch`:return e.branch}}function De(e){let t=[];for(let n of e){let e=u(n);for(let r of n.threads)t.push({threadId:r.threadId,projectId:n.projectId,projectName:e,path:r.path,branch:r.currentBranch||r.title})}return t}function Oe(e,t,n,r){return[...e].sort((e,i)=>{let a=C(e,t,r).localeCompare(C(i,t,r),void 0,{sensitivity:`base`});return n===`asc`?a:-a})}function ke(e){let t=(0,x.c)(17),{label:n,column:r,sortColumn:i,sortDirection:a,className:o,onSort:s}=e,c=i===r,u=a===`asc`?d:f,p=c?`text-foreground`:`text-muted-foreground`,m;t[0]===p?m=t[1]:(m=l(`inline-flex items-center gap-1 transition-colors hover:text-foreground`,p),t[0]=p,t[1]=m);let h;t[2]!==r||t[3]!==s?(h=()=>s(r),t[2]=r,t[3]=s,t[4]=h):h=t[4];let g=c?a===`asc`?`ascending`:`descending`:`none`,_;t[5]!==u||t[6]!==c?(_=c?(0,S.jsx)(u,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":`true`}):null,t[5]=u,t[6]=c,t[7]=_):_=t[7];let v;t[8]!==n||t[9]!==m||t[10]!==h||t[11]!==g||t[12]!==_?(v=(0,S.jsxs)(`button`,{type:`button`,className:m,onClick:h,"aria-sort":g,children:[n,_]}),t[8]=n,t[9]=m,t[10]=h,t[11]=g,t[12]=_,t[13]=v):v=t[13];let y;return t[14]!==o||t[15]!==v?(y=(0,S.jsx)(ce,{className:o,children:v}),t[14]=o,t[15]=v,t[16]=y):y=t[16],y}function w(){let e=(0,x.c)(55),t=c(Re),n=c(Le),r=c(Ie),a=c(Fe),s=c(Pe),u=c(Ne),d=c(Me),f=c(je),{handleDeleteThread:C,refreshWorkspaces:w}=ne(),{toast:ze}=ee(),[T,Be]=(0,ue.useState)(null),[E,Ve]=(0,ue.useState)(xe),He=te()?`Finder`:`Explorer`,D,O;e[0]===w?(D=e[1],O=e[2]):(D=()=>{w()},O=[w],e[0]=w,e[1]=D,e[2]=O),(0,ue.useEffect)(D,O);let k;e[3]!==n||e[4]!==t||e[5]!==E.column||e[6]!==E.direction?(k=Oe(De(t),E.column,E.direction,n),e[3]=n,e[4]=t,e[5]=E.column,e[6]=E.direction,e[7]=k):k=e[7];let A=k,j;e[8]===Symbol.for(`react.memo_cache_sentinel`)?(j=function(e){Ve(t=>t.column===e?{column:e,direction:t.direction===`asc`?`desc`:`asc`}:{column:e,direction:`asc`})},e[8]=j):j=e[8];let Ue=j,M;e[9]===Symbol.for(`react.memo_cache_sentinel`)?(M=function(e){let{...t}=e;return(0,S.jsx)(`tr`,{...t,className:l(`group border-0 transition-colors hover:bg-muted/50`,t.className)})},e[9]=M):M=e[9];let We=M,N;e[10]===Symbol.for(`react.memo_cache_sentinel`)?(N={Table:Se,TableHead:Ce,TableBody:we,TableRow:We,Scroller:Te},e[10]=N):N=e[10];let Ge=N,P;e[11]!==C||e[12]!==T?(P=function(){if(!T)return;let{projectId:e,threadId:t}=T;Be(null),C(e,t)},e[11]=C,e[12]=T,e[13]=P):P=e[13];let F=P,I;e[14]===ze?I=e[15]:(I=async function(e){try{await ae(e.threadId,`.`)}catch{ze({title:`Error`,description:`Failed to open folder in ${He}.`,variant:`destructive`})}},e[14]=ze,e[15]=I);let L=I,R;e[16]!==n||e[17]!==u||e[18]!==a||e[19]!==L||e[20]!==f||e[21]!==s||e[22]!==d?(R=function(e,t){let r=a.includes(t.threadId),c=o(t.threadId,s,d,f),y=u.includes(t.threadId),ee=!c&&!r&&!y,te=Ee(t.path,n);return(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(b,{className:_e,children:t.projectName}),(0,S.jsx)(b,{className:ve,children:(0,S.jsx)(`button`,{type:`button`,className:l(i.body,`block w-full truncate text-left hover:underline`),title:`${t.path}\nOpen in ${He}`,onClick:()=>void L(t),children:te})}),(0,S.jsx)(b,{className:ye,children:t.branch}),(0,S.jsx)(b,{className:be,children:(0,S.jsx)(`div`,{className:`ml-auto flex h-7 w-7 items-center justify-center`,children:r?(0,S.jsx)(m,{className:`h-4 w-4 animate-spin text-muted-foreground`,"aria-label":`Deleting`}):ee?(0,S.jsxs)(v,{children:[(0,S.jsx)(g,{asChild:!0,children:(0,S.jsxs)(h,{variant:`ghost`,size:`icon-sm`,className:le,onClick:e=>{e.stopPropagation(),Be(t)},children:[(0,S.jsx)(p,{}),(0,S.jsx)(`span`,{className:`sr-only`,children:`Delete workspace`})]})}),(0,S.jsx)(_,{side:`left`,children:`Delete branch and files from the repo`})]}):null})})]})},e[16]=n,e[17]=u,e[18]=a,e[19]=L,e[20]=f,e[21]=s,e[22]=d,e[23]=R):R=e[23];let z=R,B;e[24]===Symbol.for(`react.memo_cache_sentinel`)?(B=l(`w-full caption-bottom`,fe,i.body),e[24]=B):B=e[24];let V,H,U;e[25]!==E.column||e[26]!==E.direction?(V=(0,S.jsx)(ke,{label:`Project`,column:`project`,sortColumn:E.column,sortDirection:E.direction,className:pe,onSort:Ue}),H=(0,S.jsx)(ke,{label:`Path`,column:`path`,sortColumn:E.column,sortDirection:E.direction,className:me,onSort:Ue}),U=(0,S.jsx)(ke,{label:`Branch`,column:`branch`,sortColumn:E.column,sortDirection:E.direction,className:he,onSort:Ue}),e[25]=E.column,e[26]=E.direction,e[27]=V,e[28]=H,e[29]=U):(V=e[27],H=e[28],U=e[29]);let W;e[30]===Symbol.for(`react.memo_cache_sentinel`)?(W=(0,S.jsx)(ce,{className:ge,children:(0,S.jsx)(`span`,{className:`sr-only`,children:`Actions`})}),e[30]=W):W=e[30];let G;e[31]!==V||e[32]!==H||e[33]!==U?(G=(0,S.jsx)(`table`,{className:B,children:(0,S.jsx)(`thead`,{className:`[&_tr]:border-b [&_tr]:border-table-border`,children:(0,S.jsxs)(`tr`,{children:[V,H,U,W]})})}),e[31]=V,e[32]=H,e[33]=U,e[34]=G):G=e[34];let Ke=G,K=A.length>0?Ke:void 0,q;e[35]===K?q=e[36]:(q=(0,S.jsx)(oe,{title:`Storage`,description:`Workspaces and branches stored on disk across all projects.`,tableHeader:K}),e[35]=K,e[36]=q);let J;e[37]!==r||e[38]!==z||e[39]!==A?(J=(0,S.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:r&&A.length===0?(0,S.jsx)(y,{centered:!0,label:`Loading workspaces...`,size:`lg`}):A.length===0?(0,S.jsx)(`div`,{className:`flex h-full items-center justify-center p-6`,children:(0,S.jsxs)(`div`,{className:`max-w-md space-y-2 text-center`,children:[(0,S.jsx)(`h3`,{className:i.emptyStateTitle,children:`No workspaces`}),(0,S.jsx)(`p`,{className:i.bodyMuted,children:`No branches or workspaces found yet.`})]})}):(0,S.jsx)(ie,{style:{height:`100%`},data:A,computeItemKey:Ae,itemContent:z,defaultItemHeight:de,increaseViewportBy:de*5,components:Ge})}),e[37]=r,e[38]=z,e[39]=A,e[40]=J):J=e[40];let Y;e[41]!==q||e[42]!==J?(Y=(0,S.jsxs)(re,{className:`flex w-full max-w-none min-w-0 min-h-0 flex-1 flex-col pb-0 pt-0`,children:[q,J]}),e[41]=q,e[42]=J,e[43]=Y):Y=e[43];let qe=T!==null,X;e[44]===Symbol.for(`react.memo_cache_sentinel`)?(X=e=>{e||Be(null)},e[44]=X):X=e[44];let Z;e[45]!==n||e[46]!==T?(Z=T?`Are you sure you want to delete the workspace at "${Ee(T.path,n)}"? This removes the branch and all its files. This action cannot be undone.`:``,e[45]=n,e[46]=T,e[47]=Z):Z=e[47];let Q;e[48]!==F||e[49]!==qe||e[50]!==Z?(Q=(0,S.jsx)(se,{open:qe,onOpenChange:X,title:`Delete workspace?`,description:Z,onConfirm:F,confirmLabel:`Delete`,confirmingLabel:`Deleting...`}),e[48]=F,e[49]=qe,e[50]=Z,e[51]=Q):Q=e[51];let $;return e[52]!==Y||e[53]!==Q?($=(0,S.jsxs)(`div`,{className:`flex h-full min-h-0 w-full min-w-0 flex-1 flex-col`,children:[Y,Q]}),e[52]=Y,e[53]=Q,e[54]=$):$=e[54],$}function Ae(e,t){return t.threadId}function je(e){return e.pendingChatMessage}function Me(e){return s(e.threadStreamingStates)}function Ne(e){return e.completedThreadIds}function Pe(e){return e.processingThreadIds}function Fe(e){return e.deletingThreadIds}function Ie(e){return e.projectsLoading}function Le(e){return e.cloneRootPath}function Re(e){return e.projects}export{w as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{o as t,t as n}from"./react-vendor-Ee0-5T4I.js";import{
|
|
2
|
-
`))}C(e=>new Set(e).add(n)),M(),w(),d({title:`Agent installed`,description:e.name})}catch(e){d({title:`Error`,description:e instanceof Error?e.message:`Failed to install agent`,variant:`destructive`})}},[t,x,M,w]);return e?(0,F.jsxs)(F.Fragment,{children:[(0,F.jsxs)(
|
|
1
|
+
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{o as t,t as n}from"./react-vendor-Ee0-5T4I.js";import{Wt as r}from"./dist-FJzwWcMv.js";import{t as i}from"./utils-uGptTPGm.js";import{o as a}from"./lucide-react-CMzSV2MP.js";import{t as o}from"./button-zYjzm__g.js";import{T as s,dr as c,kn as l,vr as u}from"./api-CX0sFbpL.js";import{t as d}from"./use-toast-xpb5jNtN.js";import{Ct as f,Dr as p,Er as m,Ft as h,Mt as g,Ot as _,Pt as v,Tr as y,V as b,bt as x,jt as S,wt as C,xt as w}from"./index-DpDgcOE9.js";import{t as T}from"./delete-confirm-dialog-DvJ5VuAy.js";import{t as E}from"./use-settings-page-loading-CpaBd260.js";import{i as D,r as O,s as k}from"./settings-list-DajPoFxt.js";import{i as A,n as j,r as M}from"./slug-utils-DhQjuU2J.js";import{t as N}from"./use-installed-ai-files-uH9h6W5v.js";var P=e(t(),1),F=n();function I({threadId:e,onAgentCreated:t}){let[n,a]=(0,P.useState)(``),[o,c]=(0,P.useState)(``),[l,u]=(0,P.useState)(``),[f,p]=(0,P.useState)(!1),m=M(n),h=j(m),g=async()=>{if(!(!h||!o.trim()||!e)){p(!0);try{let n=await s(e,m,o.trim(),l.trim()||void 0);d({title:`Agent created`,description:`Agent '${m}' was created successfully.`}),a(``),c(``),u(``),t?.(n.path,`AGENTS.md`)}catch(e){d({title:`Error`,description:e instanceof Error?e.message:`Failed to create agent`,variant:`destructive`})}finally{p(!1)}}};return e?(0,F.jsx)(v,{children:(0,F.jsxs)(x,{children:[(0,F.jsx)(C,{title:`Add Agent`,description:`Saved as AGENT.md in .agents/agents.`,sticky:!0,className:`pr-10`}),(0,F.jsxs)(`div`,{children:[(0,F.jsxs)(w,{title:`Agent Name`,controlLayout:`stack`,className:`pt-6`,children:[(0,F.jsx)(y,{id:`agentName`,value:n,onChange:e=>a(e.target.value),placeholder:`e.g. Code Reviewer`,disabled:f}),n?(0,F.jsxs)(`p`,{className:i(r.caption,`mt-2`),children:[`Folder name: `,(0,F.jsx)(`span`,{className:`font-mono`,children:m||`...`})]}):null]}),(0,F.jsx)(w,{title:`Description`,controlLayout:`stack`,className:`pt-6`,children:(0,F.jsx)(b,{id:`agentDescription`,value:o,onChange:e=>c(e.target.value),placeholder:`Describe the agent's purpose and behavior...`,className:`resize-none min-h-[120px]`,disabled:f})}),(0,F.jsx)(w,{title:`Tools`,description:`Optional space-separated list of tools this agent can use`,controlLayout:`stack`,className:`pt-6`,children:(0,F.jsx)(y,{id:`agentTools`,value:l,onChange:e=>u(e.target.value),placeholder:`e.g. read grep glob`,disabled:f})}),(0,F.jsx)(A,{onContinue:()=>void g(),disabled:!h||!o.trim(),creating:f})]})]})}):(0,F.jsx)(S,{title:`No thread selected`,children:`Please select a thread to add an agent.`})}function L(e){let t=[];for(let n of e)n.path.startsWith(`.agents/agents/`)&&n.type===`folder`&&t.push(n),n.children&&n.children.length>0&&t.push(...L(n.children));return t}function R(){let{selectedProjectId:e,selectedThreadId:t,items:n,loading:s,deleteConfirm:v,setDeleteConfirm:y,deleting:b,installedFilePaths:x,setInstalledFilePaths:C,loadItems:w,handleDelete:A,handleOpenInExplorer:j,triggerExplorerRefresh:M}=N({findItems:L,installedPathSuffix:`/AGENT.md`,explorerPathSuffix:`/AGENT.md`,sortByName:!0,removedToastTitle:`Agent removed`}),[R,z]=(0,P.useState)(!1),[B,V]=(0,P.useState)([]),[H,U]=(0,P.useState)(!0),[W,G]=(0,P.useState)(``);(0,P.useEffect)(()=>{U(!0),c().then(V).catch(()=>V([])).finally(()=>U(!1))},[]);let K=E(e?`${e}:${t??``}`:null,[s,H]),q=(0,P.useCallback)(async e=>{let n=`.agents/agents/${e.id}/AGENT.md`;if(!(!t||x.has(n)))try{if(e.gitHubRepo&&e.gitHubFolder)await u(t,e.gitHubRepo,e.gitHubFolder,`.agents/agents/${e.id}`);else{let r=[`---`,`name: ${e.id}`,`description: ${e.description}`];e.tools&&r.push(`tools: ${e.tools}`),r.push(`---`,``,e.systemPrompt),await l(t,n,r.join(`
|
|
2
|
+
`))}C(e=>new Set(e).add(n)),M(),w(),d({title:`Agent installed`,description:e.name})}catch(e){d({title:`Error`,description:e instanceof Error?e.message:`Failed to install agent`,variant:`destructive`})}},[t,x,M,w]);return e?(0,F.jsxs)(F.Fragment,{children:[(0,F.jsxs)(_,{loading:K,children:[(0,F.jsxs)(h,{className:`shrink-0`,children:[(0,F.jsx)(k,{title:`Installed Subagents`,tooltip:`Project subagents available for focused tasks.`,action:(0,F.jsx)(o,{onClick:()=>z(!0),disabled:!t,children:`Add Subagent`})}),(0,F.jsxs)(g,{className:`pt-6`,children:[!t&&(0,F.jsx)(f,{children:`Select a thread to add or install subagents.`}),(0,F.jsx)(O,{showHeader:!1,loading:!1,items:n,emptyState:{icon:a,title:`No subagents installed`,description:`Add subagents for specialized, focused tasks.`,bordered:!1},getKey:e=>e.id,columnsClassName:`grid-cols-[minmax(0,1fr)_1.75rem]`,renderContent:e=>(0,F.jsxs)(`div`,{className:`min-w-0 text-left`,children:[(0,F.jsx)(`div`,{className:i(r.body,`truncate`),children:e.name}),(0,F.jsx)(`div`,{className:i(r.compact,`truncate text-muted-foreground`),children:e.path})]}),onItemClick:e=>j(e.path),itemClickLabel:e=>`Open ${e.name} in Files`,onDelete:y,deleteAriaLabel:e=>`Delete ${e.name}`,deleteTooltip:`Remove this subagent from the project`})]})]}),(0,F.jsx)(D,{title:`Available Subagents`,tooltip:`Browse and install subagents from the catalog.`,emptyLabel:`No available subagents found.`,searchValue:W,onSearchChange:G,items:B,getKey:e=>e.id,renderName:e=>e.name,getSubtitle:e=>e.description,renderAction:e=>{let n=x.has(`.agents/agents/${e.id}/AGENT.md`);return(0,F.jsx)(o,{type:`button`,variant:`outline`,size:`sm`,className:`opacity-100 transition-opacity can-hover:opacity-0 can-hover:group-hover:opacity-100 focus-visible:opacity-100`,disabled:!t||n,onClick:()=>void q(e),children:n?`Installed`:`Install`})}})]}),(0,F.jsx)(m,{open:R,onOpenChange:z,children:(0,F.jsx)(p,{className:`max-w-2xl max-h-[90vh] overflow-y-auto p-0`,children:(0,F.jsx)(I,{threadId:t,onAgentCreated:()=>{z(!1),w(),M()}})})}),(0,F.jsx)(T,{open:v!==null,onOpenChange:e=>!e&&y(null),title:`Delete Subagent`,description:`Are you sure you want to delete the subagent "${v?.name}"? This action cannot be undone.`,onConfirm:()=>{v&&A(v)},confirming:b})]}):(0,F.jsx)(S,{children:`Select a project to manage subagents.`})}export{R as SettingsSubagentsView,R as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{o as t,t as n}from"./react-vendor-Ee0-5T4I.js";import{
|
|
1
|
+
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{o as t,t as n}from"./react-vendor-Ee0-5T4I.js";import{Wt as r}from"./dist-FJzwWcMv.js";import{r as i}from"./store-DCnnNgwq.js";import{t as a}from"./utils-uGptTPGm.js";import{dt as ee}from"./lucide-react-CMzSV2MP.js";import{t as o}from"./button-zYjzm__g.js";import{i as s,n as c,t as l}from"./tooltip-6qlOE6WT.js";import{Dt as u,Yt as d,nr as f}from"./api-CX0sFbpL.js";import{a as p,c as m,i as h,n as g,o as _,r as v,s as y,t as b}from"./alert-dialog-Dq9tEk9t.js";import{t as x}from"./use-toast-xpb5jNtN.js";import{Dt as S,Et as C,Mt as w,V as T,jt as E,ut as D,wt as O}from"./index-DpDgcOE9.js";import{t as k}from"./use-settings-page-loading-CpaBd260.js";var A=e(t(),1),j=n();function M(){let e=i(e=>e.selectedProjectId),[t,n]=(0,A.useState)(``),[M,N]=(0,A.useState)(``),[P,F]=(0,A.useState)(!0),[I,L]=(0,A.useState)(!1),[R,z]=(0,A.useState)(``),[B,V]=(0,A.useState)(!0),[H,U]=(0,A.useState)(!1),[W,G]=(0,A.useState)(!1);(0,A.useLayoutEffect)(()=>{e&&V(!0)},[e]),(0,A.useEffect)(()=>{if(!e){V(!1);return}V(!0),u(e).then(e=>{let t=e.useCustomSystemPrompt;n(e.generatedPrompt),L(t),z(e.customSystemPrompt),F(!t),N(t?e.customSystemPrompt:e.generatedPrompt)}).catch(()=>{n(``),N(``),F(!0),L(!1),z(``)}).finally(()=>V(!1))},[e]);let K=k(e,[B]);function q(){return P?I:M.trim()!==R.trim()}function J(e){N(e),P&&F(!1)}function Y(){N(t),F(!0)}function X(e){if(!e){F(!1);return}if(M===t){Y();return}G(!0)}function Z(){Y(),G(!1)}function Q(){G(!1)}async function $(){if(e){if(!P&&!M.trim()){x({title:`System prompt required`,description:`Enter a system prompt or enable Generated.`,variant:`destructive`});return}U(!0);try{await f(e,{customSystemPrompt:P?null:M.trim(),useCustomSystemPrompt:!P}),d(),L(!P),z(P?``:M.trim()),x({title:`System prompt settings saved`})}catch(e){x({title:`Error`,description:e instanceof Error?e.message:`Failed to save system prompt settings`,variant:`destructive`})}finally{U(!1)}}}return e?(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(S,{loading:K,children:(0,j.jsx)(C,{children:(0,j.jsxs)(w,{className:`w-full flex-1 flex flex-col min-h-0 pt-0`,children:[(0,j.jsx)(O,{title:`System Prompt`,description:`View the default system prompt or override it for this project.`,sticky:!1,action:(0,j.jsx)(o,{onClick:$,disabled:H||!q(),children:H?(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(ee,{className:`mr-2 h-4 w-4 animate-spin`}),`Saving...`]}):`Save`})}),(0,j.jsxs)(`div`,{className:`mb-4 flex w-full items-center justify-end gap-2`,children:[(0,j.jsxs)(l,{children:[(0,j.jsx)(s,{asChild:!0,children:(0,j.jsx)(`span`,{tabIndex:0,className:a(r.label,`cursor-help`),children:`Generated`})}),(0,j.jsx)(c,{side:`top`,className:`max-w-xs`,children:`Use the auto-generated system prompt instead of a custom override.`})]}),(0,j.jsx)(D,{value:P,onChange:X,disabled:H,ariaLabel:`Generated system prompt`})]}),(0,j.jsx)(T,{value:M,onChange:e=>J(e.target.value),className:a(r.mono,`flex-1 min-h-0 resize-none`),placeholder:`System prompt will appear here...`,disabled:H})]})})}),(0,j.jsx)(b,{open:W,onOpenChange:G,children:(0,j.jsxs)(h,{children:[(0,j.jsxs)(y,{children:[(0,j.jsx)(m,{children:`Overwrite custom system prompt?`}),(0,j.jsx)(p,{children:`This will replace your custom system prompt with the generated default. You can save the change after confirming.`})]}),(0,j.jsxs)(_,{children:[(0,j.jsx)(v,{onClick:Q,children:`No`}),(0,j.jsx)(g,{onClick:Z,children:`Yes`})]})]})})]}):(0,j.jsx)(E,{children:`Select a project to edit the system prompt.`})}export{M as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e,t}from"./react-vendor-Ee0-5T4I.js";import{t as n}from"./pill-tabs-
|
|
1
|
+
import{n as e,t}from"./react-vendor-Ee0-5T4I.js";import{t as n}from"./pill-tabs-CVcpOO4f.js";var r=e(),i=t();function a(e){let t=(0,r.c)(4),{value:a,onValueChange:o,options:s}=e,c;return t[0]!==o||t[1]!==s||t[2]!==a?(c=(0,i.jsx)(`div`,{className:`frosted-scrollbar shrink-0 overflow-x-auto px-6 pb-2 pt-4`,children:(0,i.jsx)(`div`,{className:`flex w-max min-w-full justify-center`,children:(0,i.jsx)(n,{value:a,onValueChange:o,options:s})})}),t[0]=o,t[1]=s,t[2]=a,t[3]=c):c=t[3],c}export{a as t};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/settings-general-tabs-view-Cg4sWryU.js","assets/rolldown-runtime-aKtaBQYM.js","assets/react-vendor-Ee0-5T4I.js","assets/progress-indicator-_fEKurQg.js","assets/utils-uGptTPGm.js","assets/dist-FJzwWcMv.js","assets/settings-tab-bar-T8v2_Dfk.js","assets/pill-tabs-CVcpOO4f.js","assets/index-DpDgcOE9.js","assets/alert-dialog-Dq9tEk9t.js","assets/button-zYjzm__g.js","assets/use-browser-overlay-block-DyprQSIG.js","assets/browser-overlay-block-CiDtkfup.js","assets/dist-BhdiICUV.js","assets/dist-CPtOAqwP.js","assets/es2015-D67vh4rt.js","assets/scroll-area-BTpvIsIG.js","assets/dist-OixawqbU.js","assets/tooltip-6qlOE6WT.js","assets/dist-lnsB93_y.js","assets/use-toast-xpb5jNtN.js","assets/chat-dock-context-DQmDS2i8.js","assets/api-CX0sFbpL.js","assets/store-DCnnNgwq.js","assets/explorer-tab-context-BxUVwWQQ.js","assets/main-tab-context-CNgxXqnH.js","assets/terminal-output-activity-B1bjjsl7.js","assets/query-keys-C2vEjHA1.js","assets/suspense-resource-DzlMlIgR.js","assets/dist-BJaGHz0F.js","assets/dist-B-I0i8QZ.js","assets/dist-B6u0s1jB.js","assets/dist-CX9ud_WC.js","assets/dist-CSssbxDI.js","assets/useBaseQuery-DqLwB2Sq.js","assets/lucide-react-CMzSV2MP.js","assets/chunk-QFMPRPBF-COsSkB7x.js","assets/index-DCWejG57.css","assets/project-settings-view-C4kg3nDX.js","assets/use-settings-page-loading-CpaBd260.js","assets/settings-setup-view-0NvbMts_.js","assets/project-env-vars-view-D8zFtC0r.js","assets/project-danger-zone-view-CtOeSKHP.js","assets/project-model-aliases-view-t1nijA2C.js","assets/table-DuD2DtkR.js","assets/settings-plugins-view-CJvYXOb6.js","assets/settings-providers-view-CxZnVxuu.js","assets/account-view-CJyN7iRT.js","assets/delete-confirm-dialog-DvJ5VuAy.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,r,t as i}from"./react-vendor-Ee0-5T4I.js";import{c as a,o,s}from"./chunk-QFMPRPBF-COsSkB7x.js";import{Ct as c,W as l,Wt as u,vt as d,xt as f}from"./dist-FJzwWcMv.js";import{n as p,r as m,tt as h}from"./store-DCnnNgwq.js";import{t as g,u as _}from"./utils-uGptTPGm.js";import{D as v,L as y,Y as b,nn as x,on as S,r as C,s as w,u as T,yn as E}from"./lucide-react-CMzSV2MP.js";import{t as D}from"./button-zYjzm__g.js";import{Yt as O,gn as k,kt as A}from"./api-CX0sFbpL.js";import{n as j}from"./scroll-area-BTpvIsIG.js";import{t as M}from"./progress-indicator-_fEKurQg.js";import{Hn as N,Un as ee,Vn as P,ar as F,ir as I,jt as L,nr as R,pr as z,tr as B}from"./index-DpDgcOE9.js";var V=t(),H=e(n(),1),U=i(),W=(0,H.forwardRef)(function(e,t){let n=(0,V.c)(29),{sidebar:r,children:i,defaultSidebarSize:a,minSidebarSize:o,maxSidebarSize:s,minContentSize:c,collapsible:l,collapsedSize:u,className:d,onCollapse:f,onExpand:p,isMobile:m,mobileShowSidebar:h,sidebarClassName:_}=e,v=a===void 0?25:a,y=o===void 0?20:o,b=s===void 0?30:s,x=c===void 0?40:c,S=l===void 0?!1:l,C=u===void 0?0:u,w=d===void 0?``:d,T=m===void 0?!1:m,E=h===void 0?!0:h,D=T&&!E,O=T&&E,k=`h-full ${w}`,A=T?100:v,j=T?50:y,M=T?100:b,F=D&&`hidden`,I;n[0]!==_||n[1]!==F?(I=g(`border-r border-transparent`,F,_),n[0]=_,n[1]=F,n[2]=I):I=n[2];let L;n[3]!==C||n[4]!==S||n[5]!==f||n[6]!==p||n[7]!==t||n[8]!==r||n[9]!==A||n[10]!==j||n[11]!==M||n[12]!==I?(L=(0,U.jsx)(N,{ref:t,defaultSize:A,minSize:j,maxSize:M,collapsible:S,collapsedSize:C,onCollapse:f,onExpand:p,className:I,children:r}),n[3]=C,n[4]=S,n[5]=f,n[6]=p,n[7]=t,n[8]=r,n[9]=A,n[10]=j,n[11]=M,n[12]=I,n[13]=L):L=n[13];let R;n[14]===T?R=n[15]:(R=!T&&(0,U.jsx)(P,{withHandle:!0,className:`ml-[-10px]`}),n[14]=T,n[15]=R);let z=O&&`hidden`,B;n[16]===z?B=n[17]:(B=g(`overflow-hidden`,z),n[16]=z,n[17]=B);let H;n[18]!==i||n[19]!==x||n[20]!==B?(H=(0,U.jsx)(N,{minSize:x,className:B,children:i}),n[18]=i,n[19]=x,n[20]=B,n[21]=H):H=n[21];let W;n[22]!==L||n[23]!==R||n[24]!==H?(W=(0,U.jsxs)(ee,{direction:`horizontal`,className:`h-full`,children:[L,R,H]}),n[22]=L,n[23]=R,n[24]=H,n[25]=W):W=n[25];let G;return n[26]!==k||n[27]!==W?(G=(0,U.jsx)(`div`,{className:k,children:W}),n[26]=k,n[27]=W,n[28]=G):G=n[28],G});function G(e){return e.startsWith(`/settings/project/`)?e.endsWith(`/model-aliases`)?`project-model-aliases`:e.endsWith(`/env-vars`)?`project-env-vars`:/^\/settings\/project\/[^/]+\/coding(?:\/[^/]+)?\/?$/.test(e)?`project-coding`:e.endsWith(`/danger-zone`)?`project-danger-zone`:`project`:null}function K(e,t){if(d(e))return`project-plugins`;if(f(e))return`general`;if(c(e))return`providers`;let n=G(e);if(n)return n;for(let n of t)if(e.startsWith(n.route))return n.id;return`general`}var q=[{id:`project-plugins`,label:`Plugins`,icon:(0,U.jsx)(y,{className:`h-4 w-4`}),route:`/settings/plugins`},{id:`general`,label:`Settings`,icon:(0,U.jsx)(v,{className:`h-4 w-4`}),route:`/settings/general`},{id:`providers`,label:`Providers`,icon:(0,U.jsx)(x,{className:`h-4 w-4`}),route:`/settings/providers`},{id:`account`,label:`Account`,icon:(0,U.jsx)(w,{className:`h-4 w-4`}),route:`/settings/account`}],J=new Set([`project`,`project-coding`,`project-danger-zone`,`project-env-vars`,`project-plugins`]),Y=new Set([`general`,`providers`,`account`]);function te(e){return J.has(e)?`project`:`general`}function X(e){let t=(0,V.c)(18),{label:n,items:r,activeTabId:i,onItemClick:a,showSeparator:o,className:s}=e,c=o===void 0?!0:o;if(r.length===0)return null;let l;t[0]===n?l=t[1]:(l=n?(0,U.jsx)(B,{className:`text-xs`,children:n}):null,t[0]=n,t[1]=l);let u;if(t[2]!==i||t[3]!==r||t[4]!==a){let e;t[6]!==i||t[7]!==a?(e=e=>(0,U.jsx)(F,{selected:i===e.id,asChild:!0,children:(0,U.jsx)(`button`,{className:`justify-start`,onClick:()=>a(e),children:(0,U.jsxs)(`span`,{className:`flex items-center gap-2`,children:[e.icon,(0,U.jsx)(`span`,{children:e.label})]})})},e.id),t[6]=i,t[7]=a,t[8]=e):e=t[8],u=r.map(e),t[2]=i,t[3]=r,t[4]=a,t[5]=u}else u=t[5];let d;t[9]===u?d=t[10]:(d=(0,U.jsx)(`div`,{className:`space-y-1`,children:u}),t[9]=u,t[10]=d);let f;t[11]===c?f=t[12]:(f=c?(0,U.jsx)(I,{className:`my-2`}):null,t[11]=c,t[12]=f);let p;return t[13]!==s||t[14]!==l||t[15]!==d||t[16]!==f?(p=(0,U.jsxs)(`div`,{className:s,children:[l,d,f]}),t[13]=s,t[14]=l,t[15]=d,t[16]=f,t[17]=p):p=t[17],p}function ne(e){let t=[...q];if(!e)return t;let n=t.findIndex(e=>e.id===`project-plugins`);n!==-1&&t.splice(n,1);let r=t.findIndex(e=>e.id===`general`);return t.splice(r,0,{id:`project`,label:`Settings`,icon:(0,U.jsx)(v,{className:`h-4 w-4`}),route:`/settings/project/${e}`},{id:`project-plugins`,label:`Plugins`,icon:(0,U.jsx)(y,{className:`h-4 w-4`}),route:`/settings/project/${e}/plugins`},{id:`project-coding`,label:`Setup`,icon:(0,U.jsx)(S,{className:`h-4 w-4`}),route:`/settings/project/${e}/coding`},{id:`project-env-vars`,label:`Variables`,icon:(0,U.jsx)(E,{className:`h-4 w-4`}),route:`/settings/project/${e}/env-vars`},{id:`project-danger-zone`,label:`Danger Zone`,icon:(0,U.jsx)(T,{className:`h-4 w-4`}),route:`/settings/project/${e}/danger-zone`}),t}function re(e){let t=(0,V.c)(32),{className:n,selectedProjectId:r,onResetOnboarding:i,onNavItemSelect:a}=e,c=s(),l=o(),u=(0,H.useRef)(0),d=(0,H.useRef)(null),f,p;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(f=()=>()=>{d.current&&clearTimeout(d.current)},p=[],t[0]=f,t[1]=p):(f=t[0],p=t[1]),(0,H.useEffect)(f,p);let m=R(),h;t[2]===r?h=t[3]:(h=ne(r),t[2]=r,t[3]=h);let _=h,v;t[4]!==m||t[5]!==_?(v=m?_.filter(oe):_,t[4]=m,t[5]=_,t[6]=v):v=t[6];let y=v,b;t[7]!==l.pathname||t[8]!==y?(b=K(l.pathname,y),t[7]=l.pathname,t[8]=y,t[9]=b):b=t[9];let x=b,S;t[10]!==c||t[11]!==a||t[12]!==i?(S=function(e){e.id===`general`&&i&&(d.current&&clearTimeout(d.current),u.current+=1,u.current>=3?(u.current=0,i()):d.current=setTimeout(()=>{u.current=0},1500)),a?.(),c(e.route)},t[10]=c,t[11]=a,t[12]=i,t[13]=S):S=t[13];let C=S,w;t[14]===y?w=t[15]:(w=y.filter(ae),t[14]=y,t[15]=w);let T=w,E;t[16]===y?E=t[17]:(E=y.filter(ie),t[16]=y,t[17]=E);let D=E,O;t[18]===n?O=t[19]:(O=g(`space-y-1`,n),t[18]=n,t[19]=O);let k;t[20]!==x||t[21]!==D||t[22]!==C?(k=(0,U.jsx)(X,{label:`General`,items:D,activeTabId:x,onItemClick:C,showSeparator:!1}),t[20]=x,t[21]=D,t[22]=C,t[23]=k):k=t[23];let A;t[24]!==x||t[25]!==C||t[26]!==T?(A=(0,U.jsx)(X,{label:`Project`,items:T,activeTabId:x,onItemClick:C,showSeparator:!1,className:`pt-3`}),t[24]=x,t[25]=C,t[26]=T,t[27]=A):A=t[27];let j;return t[28]!==k||t[29]!==A||t[30]!==O?(j=(0,U.jsxs)(`div`,{className:O,children:[k,A]}),t[28]=k,t[29]=A,t[30]=O,t[31]=j):j=t[31],j}function ie(e){return Y.has(e.id)}function ae(e){return J.has(e.id)}function oe(e){return e.id!==`account`}var se=l(`app.settings-view.ui`),ce=`frosted-surface backdrop-blur-2xl`,le=(0,H.lazy)(function(){return r(()=>import(`./settings-general-tabs-view-Cg4sWryU.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37]))}),ue=(0,H.lazy)(()=>r(()=>import(`./project-settings-view-C4kg3nDX.js`),__vite__mapDeps([38,1,8,2,3,4,5,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,39]))),de=(0,H.lazy)(function(){return r(()=>import(`./settings-setup-view-0NvbMts_.js`),__vite__mapDeps([40,1,8,2,3,4,5,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,6,7]))}),fe=(0,H.lazy)(()=>r(()=>import(`./project-env-vars-view-D8zFtC0r.js`),__vite__mapDeps([41,1,8,2,3,4,5,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,39]))),pe=(0,H.lazy)(()=>r(()=>import(`./project-danger-zone-view-CtOeSKHP.js`),__vite__mapDeps([42,8,1,2,3,4,5,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37]))),me=(0,H.lazy)(()=>r(()=>import(`./project-model-aliases-view-t1nijA2C.js`),__vite__mapDeps([43,1,8,2,3,4,5,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,44,39]))),he=(0,H.lazy)(function(){return r(()=>import(`./settings-plugins-view-CJvYXOb6.js`),__vite__mapDeps([45,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37]))}),ge=(0,H.lazy)(function(){return r(()=>import(`./settings-providers-view-CxZnVxuu.js`),__vite__mapDeps([46,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37]))}),_e=(0,H.lazy)(()=>r(()=>import(`./account-view-CJyN7iRT.js`),__vite__mapDeps([47,1,8,2,3,4,5,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,48]))),ve=[`plugins`,`general`,`providers`,`models`,`model-aliases`,`skills`,`slash-commands`,`subagents`,`system-prompt`,`mcp-servers`,`slack`,`logs`,`statistics`,`history`,`storage`,`account`];function ye(e){let t=(0,V.c)(2),{title:n}=e,r;return t[0]===n?r=t[1]:(r=(0,U.jsx)(L,{title:n,children:`Content coming soon...`}),t[0]=n,t[1]=r),r}function be(e){return d(e)?`plugins`:f(e)?`general`:c(e)?`providers`:e.startsWith(`/settings/skills`)?`skills`:e.startsWith(`/settings/slash-commands`)?`slash-commands`:e.startsWith(`/settings/subagents`)?`subagents`:e.startsWith(`/settings/system-prompt`)?`system-prompt`:e.startsWith(`/settings/mcp-servers`)?`mcp-servers`:e.startsWith(`/settings/slack`)?`slack`:e.startsWith(`/settings/logs`)?`logs`:e.startsWith(`/settings/statistics`)?`statistics`:e.startsWith(`/settings/history`)?`history`:e.startsWith(`/settings/storage`)?`storage`:e.startsWith(`/settings/account`)?`account`:`general`}function xe(e){let t=e.match(/^\/settings\/providers\/([^/]+)$/);return t?decodeURIComponent(t[1]):null}function Se(e,t,n){return e&&ve.includes(e)?e:t&&ve.includes(t)?t:be(n)}var Z=new Set([`plugins`,`skills`,`mcp-servers`,`system-prompt`,`slash-commands`,`subagents`]),Q=new Set([`general`,`history`,`storage`,`statistics`,`logs`,`slack`]),$=new Set([`providers`,`models`,`model-aliases`]);function Ce(e){return[[e.isProjectToolsRoute,`project-plugins`],[e.isProjectModelAliasesRoute,`project-model-aliases`],[e.isProjectEnvVarsRoute,`project-env-vars`],[e.isProjectCodingRoute,`project-coding`],[e.isProjectDangerZoneRoute,`project-danger-zone`],[e.isProjectRoute,`project`]].find(function([e]){return e})?.[1]}function we(e){return Q.has(e)?`general`:$.has(e)?`providers`:e}function Te(e){return Z.has(e.activeTab)?`project-plugins`:Ce(e)??we(e.activeTab)}function Ee(e){return[[e.isProjectToolsRoute,`Plugins`],[e.isProjectModelAliasesRoute,`Default Models`],[e.isProjectEnvVarsRoute,`Variables`],[e.isProjectCodingRoute,`Setup`],[e.isProjectDangerZoneRoute,`Danger Zone`],[e.isProjectSettingsRoute,`Project`]].find(function([e]){return e})?.[1]}function De(e){return Q.has(e)?`Settings`:$.has(e)?`Providers`:q.find(t=>t.id===e)?.label??`Settings`}function Oe(e){return Z.has(e.activeTab)?`Plugins`:Ee(e)??De(e.activeTab)}function ke(e,t){return e===`/settings`||e===`/settings/project`||[`/settings/mcp-server-edit`,`/settings/add-skill`,`/settings/add-command`,`/settings/add-rule`,`/settings/add-agent`,`/settings/rules`].some(t=>e.startsWith(t))||t&&e.startsWith(`/settings/account`)}function Ae(e){return!e.endsWith(`/tools`)&&!/\/plugins(?:\/[^/]+)?\/?$/.test(e)&&!e.endsWith(`/model-aliases`)&&!e.endsWith(`/env-vars`)&&!/\/coding(?:\/[^/]+)?\/?$/.test(e)&&!e.endsWith(`/danger-zone`)}function je(e,t){let n=!!e&&t.startsWith(`/settings/project/`);return{isProjectRoute:n,isProjectToolsRoute:n&&t.endsWith(`/tools`),isProjectPluginsRoute:n&&/\/plugins(?:\/[^/]+)?\/?$/.test(t),isProjectModelAliasesRoute:n&&t.endsWith(`/model-aliases`),isProjectEnvVarsRoute:n&&t.endsWith(`/env-vars`),isProjectCodingRoute:n&&/\/coding(?:\/[^/]+)?\/?$/.test(t),isProjectDangerZoneRoute:n&&t.endsWith(`/danger-zone`),isProjectSettingsRoute:n&&Ae(t)}}function Me(e,t){let n=(0,V.c)(5),r;n[0]!==t||n[1]!==e?(r=()=>{let n=e.current;if(!n)return;let r=function(e){if(e.key!==`Escape`)return;let n=document.activeElement;if(n instanceof HTMLInputElement||n instanceof HTMLTextAreaElement||n instanceof HTMLElement&&n.isContentEditable){n.blur();return}t()};return n.addEventListener(`keydown`,r),()=>n.removeEventListener(`keydown`,r)},n[0]=t,n[1]=e,n[2]=r):r=n[2];let i;n[3]===t?i=n[4]:(i=[t],n[3]=t,n[4]=i),(0,H.useEffect)(r,i)}function Ne(e){let t=(0,V.c)(7),{selectedProjectId:n,onResetOnboarding:r,onNavItemSelect:i,header:a}=e,o;t[0]!==i||t[1]!==r||t[2]!==n?(o=(0,U.jsx)(`div`,{className:`min-h-0 flex-1 p-2.5`,children:(0,U.jsx)(j,{className:`h-full`,children:(0,U.jsx)(`div`,{className:`py-2`,children:(0,U.jsx)(re,{selectedProjectId:n,onResetOnboarding:r,onNavItemSelect:i})})})}),t[0]=i,t[1]=r,t[2]=n,t[3]=o):o=t[3];let s;return t[4]!==a||t[5]!==o?(s=(0,U.jsxs)(`div`,{className:`flex h-full flex-col overflow-hidden`,children:[a,o]}),t[4]=a,t[5]=o,t[6]=s):s=t[6],s}function Pe(e){let t=(0,V.c)(16),{settingsHeaderTitle:n,isProjectSettingsScope:r,selectedProject:i,onRequestClose:a}=e,o;t[0]!==r||t[1]!==i?(o=r&&i?(0,U.jsx)(z,{project:i,className:`h-7 w-7 shrink-0 rounded-md`,iconClassName:`h-3.5 w-3.5`}):(0,U.jsx)(`div`,{className:`flex h-7 w-7 shrink-0 items-center justify-center overflow-hidden rounded-md border border-border shadow-sm`,children:(0,U.jsx)(`img`,{src:`/tarsk.svg`,alt:`Tarsk`,className:`h-full w-full`})}),t[0]=r,t[1]=i,t[2]=o):o=t[2];let s;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(s=g(u.sectionTitle,`min-w-0 truncate`),t[3]=s):s=t[3];let c;t[4]===n?c=t[5]:(c=(0,U.jsx)(`span`,{className:s,children:n}),t[4]=n,t[5]=c);let l;t[6]!==o||t[7]!==c?(l=(0,U.jsxs)(`div`,{className:`col-start-2 flex min-w-0 max-w-full items-center gap-2 justify-self-center electrobun-webkit-app-region-no-drag`,children:[o,c]}),t[6]=o,t[7]=c,t[8]=l):l=t[8];let d,f;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,U.jsx)(C,{className:`h-4 w-4`}),f=(0,U.jsx)(`span`,{className:`sr-only`,children:`Close`}),t[9]=d,t[10]=f):(d=t[9],f=t[10]);let p;t[11]===a?p=t[12]:(p=(0,U.jsx)(`div`,{className:`col-start-3 flex items-center justify-self-end electrobun-webkit-app-region-no-drag`,children:(0,U.jsxs)(D,{variant:`ghost`,size:`icon`,className:`h-7 w-7`,onClick:a,children:[d,f]})}),t[11]=a,t[12]=p);let m;return t[13]!==l||t[14]!==p?(m=(0,U.jsxs)(`div`,{className:`grid h-14 shrink-0 grid-cols-[2.75rem_minmax(0,1fr)_2.75rem] items-center px-4 electrobun-webkit-app-region-drag`,children:[l,p]}),t[13]=l,t[14]=p,t[15]=m):m=t[15],m}function Fe(e){let t=(0,V.c)(10),{isMobile:n,mobileShowSidebar:r,isProviderDetailRoute:i,activeSectionLabel:a,onShowSidebar:o}=e;if(!n||r||i)return null;let s,c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,U.jsx)(b,{className:`h-4 w-4`}),c=(0,U.jsx)(`span`,{className:`sr-only`,children:`Show settings menu`}),t[0]=s,t[1]=c):(s=t[0],c=t[1]);let l;t[2]===o?l=t[3]:(l=(0,U.jsxs)(D,{variant:`ghost`,size:`icon`,className:`h-8 w-8 shrink-0 text-muted-foreground`,onClick:o,children:[s,c]}),t[2]=o,t[3]=l);let d;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(d=g(u.sectionTitle,`truncate text-foreground`),t[4]=d):d=t[4];let f;t[5]===a?f=t[6]:(f=(0,U.jsx)(`span`,{className:d,children:a}),t[5]=a,t[6]=f);let p;return t[7]!==l||t[8]!==f?(p=(0,U.jsx)(`div`,{className:`px-6 pb-0 pt-6`,children:(0,U.jsxs)(`div`,{className:`mb-4 flex min-w-0 items-center gap-2`,children:[l,f]})}),t[7]=l,t[8]=f,t[9]=p):p=t[9],p}var Ie=new Set([`skills`,`mcp-servers`,`system-prompt`,`slash-commands`,`subagents`]);function Le(e){return e.isProjectToolsRoute||e.isProjectPluginsRoute}function Re(e){return Ie.has(e)?e:void 0}function ze(e,t){return e.isProjectCodingRoute?{kind:`project-coding`,projectId:t}:e.isProjectDangerZoneRoute?{kind:`project-danger-zone`,projectId:t}:e.selectedProjectId!==t&&Le(e)?{kind:`project-plugins-loading`}:void 0}function Be(e,t){return e.isProjectModelAliasesRoute?{kind:`project-model-aliases`}:e.isProjectEnvVarsRoute?{kind:`project-env-vars`,projectId:t}:e.isProjectSettingsRoute?{kind:`project-settings`,projectId:t}:void 0}function Ve(e){let{projectId:t}=e;return(t?ze(e,t):void 0)||(Le(e)||Z.has(e.activeTab)?{kind:`plugins`,projectId:t??e.selectedProjectId,fallbackTab:Re(e.activeTab)}:t?Be(e,t):void 0)}function He(e){return Ve(e)||(Q.has(e.activeTab)?{kind:`general`,fallbackTab:e.activeTab}:$.has(e.activeTab)?{kind:`providers`,fallbackTab:e.activeTab}:e.activeTab===`account`?{kind:`account`}:{kind:`blank`})}function Ue(e){let t=(0,V.c)(32),n;t[0]===e?n=t[1]:(n=He(e),t[0]=e,t[1]=n);let r=n;switch(r.kind){case`project-coding`:{let n;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,U.jsx)(M,{centered:!0,label:`Loading coding settings...`}),t[2]=n):n=t[2];let i;return t[3]!==e.handleProjectUpdated||t[4]!==r.projectId?(i=(0,U.jsx)(H.Suspense,{fallback:n,children:(0,U.jsx)(de,{projectId:r.projectId,onProjectUpdated:e.handleProjectUpdated})}),t[3]=e.handleProjectUpdated,t[4]=r.projectId,t[5]=i):i=t[5],i}case`project-danger-zone`:{let e;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,U.jsx)(M,{centered:!0,label:`Loading danger zone...`}),t[6]=e):e=t[6];let n;return t[7]===r.projectId?n=t[8]:(n=(0,U.jsx)(H.Suspense,{fallback:e,children:(0,U.jsx)(pe,{projectId:r.projectId})}),t[7]=r.projectId,t[8]=n),n}case`project-plugins-loading`:{let e;return t[9]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,U.jsx)(M,{centered:!0,label:`Loading project plugins...`}),t[9]=e):e=t[9],e}case`plugins`:{let n;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,U.jsx)(M,{centered:!0,label:`Loading plugin settings...`}),t[10]=n):n=t[10];let i;return t[11]!==e.handleProjectUpdated||t[12]!==r.fallbackTab||t[13]!==r.projectId?(i=(0,U.jsx)(H.Suspense,{fallback:n,children:(0,U.jsx)(he,{projectId:r.projectId,fallbackTab:r.fallbackTab,onProjectUpdated:e.handleProjectUpdated})}),t[11]=e.handleProjectUpdated,t[12]=r.fallbackTab,t[13]=r.projectId,t[14]=i):i=t[14],i}case`project-model-aliases`:{let e;return t[15]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,U.jsx)(H.Suspense,{fallback:(0,U.jsx)(M,{centered:!0,label:`Loading project model aliases...`}),children:(0,U.jsx)(me,{})}),t[15]=e):e=t[15],e}case`project-env-vars`:{let e;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,U.jsx)(M,{centered:!0,label:`Loading environment variables...`}),t[16]=e):e=t[16];let n;return t[17]===r.projectId?n=t[18]:(n=(0,U.jsx)(H.Suspense,{fallback:e,children:(0,U.jsx)(fe,{projectId:r.projectId})}),t[17]=r.projectId,t[18]=n),n}case`project-settings`:{let n;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,U.jsx)(M,{centered:!0,label:`Loading project settings...`}),t[19]=n):n=t[19];let i;return t[20]!==e.handleProjectUpdated||t[21]!==r.projectId?(i=(0,U.jsx)(H.Suspense,{fallback:n,children:(0,U.jsx)(ue,{projectId:r.projectId,onProjectUpdated:e.handleProjectUpdated})}),t[20]=e.handleProjectUpdated,t[21]=r.projectId,t[22]=i):i=t[22],i}case`general`:{let n;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,U.jsx)(M,{centered:!0,label:`Loading general settings...`}),t[23]=n):n=t[23];let i;return t[24]!==e.onboardingResetSignal||t[25]!==r.fallbackTab?(i=(0,U.jsx)(H.Suspense,{fallback:n,children:(0,U.jsx)(le,{fallbackTab:r.fallbackTab,onboardingResetSignal:e.onboardingResetSignal})}),t[24]=e.onboardingResetSignal,t[25]=r.fallbackTab,t[26]=i):i=t[26],i}case`providers`:{let e;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,U.jsx)(M,{centered:!0,label:`Loading provider settings...`}),t[27]=e):e=t[27];let n;return t[28]===r.fallbackTab?n=t[29]:(n=(0,U.jsx)(H.Suspense,{fallback:e,children:(0,U.jsx)(ge,{fallbackTab:r.fallbackTab})}),t[28]=r.fallbackTab,t[29]=n),n}case`account`:{let e;return t[30]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,U.jsx)(H.Suspense,{fallback:(0,U.jsx)(M,{centered:!0,label:`Loading account settings...`}),children:(0,U.jsx)(_e,{})}),t[30]=e):e=t[30],e}case`blank`:{let e;return t[31]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,U.jsx)(ye,{title:`Settings`}),t[31]=e):e=t[31],e}}}function We({onRequestClose:e}){let{tab:t,projectId:n}=a(),r=s(),i=o(),c=p(),l=m(e=>e.selectedProjectId),u=m(e=>e.projects),{isProjectRoute:d,isProjectToolsRoute:f,isProjectPluginsRoute:v,isProjectModelAliasesRoute:y,isProjectEnvVarsRoute:b,isProjectCodingRoute:x,isProjectDangerZoneRoute:S,isProjectSettingsRoute:C}=je(n,i.pathname),w=xe(i.pathname)!==null,T=Se(new URLSearchParams(i.search).get(`tab`),t,i.pathname),E=R();(0,H.useEffect)(()=>{n&&l!==n&&c({type:h.SelectProject,projectId:n})},[c,n,l]);let[D,j]=(0,H.useState)(!0),[M,N]=(0,H.useState)(0),ee=(0,H.useRef)(null),P=(0,H.useRef)(null),F=Te({isProjectToolsRoute:f,isProjectModelAliasesRoute:y,isProjectEnvVarsRoute:b,isProjectCodingRoute:x,isProjectDangerZoneRoute:S,isProjectRoute:d,activeTab:T}),I=(0,H.useMemo)(()=>u.find(e=>e.projectId===l)??null,[u,l]),L=te(F)===`project`&&I!==null,z=L?`${_(I)} Settings`:`General Settings`,B=(0,H.useMemo)(()=>Oe({isProjectToolsRoute:f,isProjectModelAliasesRoute:y,isProjectEnvVarsRoute:b,isProjectCodingRoute:x,isProjectDangerZoneRoute:S,isProjectSettingsRoute:C,activeTab:T}),[T,x,S,b,y,C,f]),V=(0,H.useCallback)(()=>{E&&j(!1)},[E]),G=(0,H.useCallback)(()=>{j(!0)},[]),K=(0,H.useCallback)(async()=>{try{await k(),N(e=>e+1)}catch(e){se.error(`Failed to reset onboarding:`,e)}},[]),q=(0,H.useCallback)(async()=>{O(n??l??void 0);try{let e=await A();c({type:h.SetProjects,projects:e.projects,cloneRootPath:e.cloneRootPath})}catch(e){throw se.error(`Failed to refresh projects after settings update:`,e),e}},[c,n,l]);(0,H.useEffect)(()=>{if(y){r(`/settings/model-aliases`,{replace:!0});return}ke(i.pathname,E)&&r(`/settings/general`,{replace:!0})},[y,i.pathname,r,E]),Me(P,e);function J(){return(0,U.jsx)(Pe,{settingsHeaderTitle:z,isProjectSettingsScope:L,selectedProject:I,onRequestClose:e})}function Y(){return E?J():(0,U.jsx)(`div`,{"aria-hidden":`true`,className:`h-14 shrink-0 electrobun-webkit-app-region-drag`})}function X(){return(0,U.jsx)(Ne,{selectedProjectId:l,onResetOnboarding:K,onNavItemSelect:V,header:Y()})}function ne(){return(0,U.jsx)(Ue,{isProjectToolsRoute:f,isProjectPluginsRoute:v,isProjectModelAliasesRoute:y,isProjectEnvVarsRoute:b,isProjectCodingRoute:x,isProjectDangerZoneRoute:S,isProjectSettingsRoute:C,projectId:n,selectedProjectId:l,activeTab:T,onboardingResetSignal:M,handleProjectUpdated:q})}function re(){return(0,U.jsx)(Fe,{isMobile:E,mobileShowSidebar:D,isProviderDetailRoute:w,activeSectionLabel:B,onShowSidebar:G})}return(0,U.jsx)(`div`,{ref:P,role:`dialog`,"aria-modal":`true`,"aria-label":`Settings`,className:g(`rounded-2xl border border-border shadow-lg`,ce,`flex h-full w-full flex-col overflow-hidden md:h-[95vh] md:w-[80vw] md:max-w-[1400px]`),children:(0,U.jsx)(W,{ref:ee,collapsible:!0,isMobile:E,mobileShowSidebar:D,sidebarClassName:g(`overflow-hidden border-r border-divider`,ce),sidebar:X(),children:(0,U.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col`,children:[J(),(0,U.jsxs)(`div`,{className:g(`relative flex min-h-0 flex-1 flex-col overflow-hidden py-2.5 pl-2.5`,E?null:`ml-2.5`),children:[re(),ne()]})]})})})}export{Ue as SettingsContent,We as default,be as getActiveTab,Te as resolveActiveNavTabId,Oe as resolveActiveSectionLabel,He as resolveSettingsContentView};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e,t}from"./react-vendor-Ee0-5T4I.js";import{dt as n,
|
|
1
|
+
import{n as e,t}from"./react-vendor-Ee0-5T4I.js";import{dt as n,mn as r}from"./lucide-react-CMzSV2MP.js";import{t as i}from"./button-zYjzm__g.js";var a=e(),o=t();function s(e){let t=(0,a.c)(6),{onContinue:s,disabled:c,creating:l}=e,u=c||l,d;t[0]===l?d=t[1]:(d=l?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n,{className:`mr-2 h-4 w-4 animate-spin`}),`Creating...`]}):(0,o.jsxs)(o.Fragment,{children:[`Continue`,(0,o.jsx)(r,{className:`ml-2 h-4 w-4`})]}),t[0]=l,t[1]=d);let f;return t[2]!==s||t[3]!==u||t[4]!==d?(f=(0,o.jsx)(`div`,{className:`mt-6 border-t pt-4 flex justify-end`,children:(0,o.jsx)(i,{onClick:s,disabled:u,children:d})}),t[2]=s,t[3]=u,t[4]=d,t[5]=f):f=t[5],f}function c(e){return e.toLowerCase().replace(/\s+/g,`-`).replace(/[^a-z0-9-]/g,``).replace(/-+/g,`-`).replace(/^-|-$/g,``)}function l(e){return e.replace(/-/g,` `).split(/\s+/).filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function u(e){return e.length>0&&e.length<=64}export{s as i,u as n,c as r,l as t};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n}from"./react-vendor-Ee0-5T4I.js";import{Ft as r,It as i,Lt as a,Nt as o,Pt as s,Rt as c,W as l,at as u,fn as d,hn as f}from"./dist-Ch137qdo.js";import{f as p}from"./utils-CWTBjUlE.js";var m=function(e){return e.SetProjects=`SET_PROJECTS`,e.SetProjectsLoading=`SET_PROJECTS_LOADING`,e.ClearUnreadAutomatedChat=`CLEAR_UNREAD_AUTOMATED_CHAT`,e.SelectThread=`SELECT_THREAD`,e.SelectProject=`SELECT_PROJECT`,e.SetMessages=`SET_MESSAGES`,e.AddMessage=`ADD_MESSAGE`,e.EnqueueChatMessage=`ENQUEUE_CHAT_MESSAGE`,e.RemoveQueuedChatMessage=`REMOVE_QUEUED_CHAT_MESSAGE`,e.RestoreQueuedChatMessage=`RESTORE_QUEUED_CHAT_MESSAGE`,e.SetStreaming=`SET_STREAMING`,e.AppendStreamContent=`APPEND_STREAM_CONTENT`,e.SetStreamContent=`SET_STREAM_CONTENT`,e.AppendStreamThinking=`APPEND_STREAM_THINKING`,e.AppendStreamChunk=`APPEND_STREAM_CHUNK`,e.SetStreamModel=`SET_STREAM_MODEL`,e.SetStreamAgentMode=`SET_STREAM_AGENT_MODE`,e.SetStreamGoalRun=`SET_STREAM_GOAL_RUN`,e.SetContextUsage=`SET_CONTEXT_USAGE`,e.SetProjectModel=`SET_PROJECT_MODEL`,e.ResetStream=`RESET_STREAM`,e.StopStream=`STOP_STREAM`,e.ToggleSidebar=`TOGGLE_SIDEBAR`,e.OpenSidebar=`OPEN_SIDEBAR`,e.CloseSidebar=`CLOSE_SIDEBAR`,e.OpenProjectPanel=`OPEN_PROJECT_PANEL`,e.CloseProjectPanel=`CLOSE_PROJECT_PANEL`,e.SetCreatingProject=`SET_CREATING_PROJECT`,e.SetGitAuthRequest=`SET_GIT_AUTH_REQUEST`,e.ConfigUpdated=`CONFIG_UPDATED`,e.SetProcessingThreads=`SET_PROCESSING_THREADS`,e.AddProcessingThread=`ADD_PROCESSING_THREAD`,e.RemoveProcessingThread=`REMOVE_PROCESSING_THREAD`,e.AddCreatingProject=`ADD_CREATING_PROJECT`,e.AddCreatingThread=`ADD_CREATING_THREAD`,e.RemoveCreatingProject=`REMOVE_CREATING_PROJECT`,e.RemoveCreatingThread=`REMOVE_CREATING_THREAD`,e.RemoveThread=`REMOVE_THREAD`,e.MarkThreadCompleted=`MARK_THREAD_COMPLETED`,e.ClearThreadCompleted=`CLEAR_THREAD_COMPLETED`,e.ClearPaneCompleted=`CLEAR_PANE_COMPLETED`,e.AddDeletingThread=`ADD_DELETING_THREAD`,e.RemoveDeletingThread=`REMOVE_DELETING_THREAD`,e.AddDeletingProject=`ADD_DELETING_PROJECT`,e.RemoveDeletingProject=`REMOVE_DELETING_PROJECT`,e.AppendCommandOutput=`APPEND_COMMAND_OUTPUT`,e.SetRunningCommand=`SET_RUNNING_COMMAND`,e.ClearCommandOutput=`CLEAR_COMMAND_OUTPUT`,e.ToggleTerminal=`TOGGLE_TERMINAL`,e.SetTerminalOpen=`SET_TERMINAL_OPEN`,e.QueueTerminalCommand=`QUEUE_TERMINAL_COMMAND`,e.ClearQueuedTerminalCommand=`CLEAR_QUEUED_TERMINAL_COMMAND`,e.AppendTerminalLine=`APPEND_TERMINAL_LINE`,e.ClearTerminalOutput=`CLEAR_TERMINAL_OUTPUT`,e.SetTerminalHeight=`SET_TERMINAL_HEIGHT`,e.SetTerminalCwd=`SET_TERMINAL_CWD`,e.SetTerminalRunning=`SET_TERMINAL_RUNNING`,e.SetTerminalHistory=`SET_TERMINAL_HISTORY`,e.SetTerminalHistoryIndex=`SET_TERMINAL_HISTORY_INDEX`,e.UpdateThreadTitle=`UPDATE_THREAD_TITLE`,e.UpdateChatTitle=`UPDATE_CHAT_TITLE`,e.FocusChatInput=`FOCUS_CHAT_INPUT`,e.ClearFocusChatInput=`CLEAR_FOCUS_CHAT_INPUT`,e.ClearMessages=`CLEAR_MESSAGES`,e.UpdateMessage=`UPDATE_MESSAGE`,e.UpdateMessageCheckpointRef=`UPDATE_MESSAGE_CHECKPOINT_REF`,e.SetDevServerToolSession=`SET_DEV_SERVER_TOOL_SESSION`,e.SetThreadToolSession=`SET_THREAD_TOOL_SESSION`,e.ClearThreadToolSession=`CLEAR_THREAD_TOOL_SESSION`,e.SetThreadCreationSummary=`SET_THREAD_CREATION_SUMMARY`,e.ClearThreadCreationSummary=`CLEAR_THREAD_CREATION_SUMMARY`,e.UpdateToolCallProgress=`UPDATE_TOOL_CALL_PROGRESS`,e.UpdateToolExecutionOutput=`UPDATE_TOOL_EXECUTION_OUTPUT`,e.AppendToolExecutionOutput=`APPEND_TOOL_EXECUTION_OUTPUT`,e.AppendSubagentEvent=`APPEND_SUBAGENT_EVENT`,e.AppendSubagentEvents=`APPEND_SUBAGENT_EVENTS`,e.ClearToolCallProgress=`CLEAR_TOOL_CALL_PROGRESS`,e.SetPendingChatMessage=`SET_PENDING_CHAT_MESSAGE`,e.ClearPendingChatMessage=`CLEAR_PENDING_CHAT_MESSAGE`,e.IncrementStreamEventCount=`INCREMENT_STREAM_EVENT_COUNT`,e.SetDiffComments=`SET_DIFF_COMMENTS`,e.ClearSelection=`CLEAR_SELECTION`,e.SetChatInputDraft=`SET_CHAT_INPUT_DRAFT`,e.ClearChatInputDraft=`CLEAR_CHAT_INPUT_DRAFT`,e.StartAutoRoute=`START_AUTO_ROUTE`,e.EndAutoRoute=`END_AUTO_ROUTE`,e.AddChatPane=`ADD_CHAT_PANE`,e.RemoveChatPane=`REMOVE_CHAT_PANE`,e.SetFocusedPane=`SET_FOCUSED_PANE`,e.SetNewChatStarting=`SET_NEW_CHAT_STARTING`,e.SetPrimaryConversationId=`SET_PRIMARY_CONVERSATION_ID`,e.SetPaneConversationId=`SET_PANE_CONVERSATION_ID`,e.SetPaneMessages=`SET_PANE_MESSAGES`,e.AddPaneMessage=`ADD_PANE_MESSAGE`,e.SetActiveStreamPane=`SET_ACTIVE_STREAM_PANE`,e.HydrateProjectChatPanes=`HYDRATE_PROJECT_CHAT_PANES`,e.SetRunCommandSaved=`SET_RUN_COMMAND_SAVED`,e.ClearRunCommandSaved=`CLEAR_RUN_COMMAND_SAVED`,e}({}),h=u,ee={projects:[],cloneRootPath:null,projectsLoading:!0,selectedThreadId:null,selectedProjectId:null,messages:[],messagesLoaded:!1,startingNewChatPaneIds:[],chatHistoryEpoch:0,primaryConversationId:void 0,queuedChatMessages:[],isStreaming:!1,streamingContent:``,streamingThinking:``,streamingSegments:[],streamingModel:``,streamingAgentMode:null,streamingEventCount:0,threadStreamingStates:{},threadMultiPaneStates:{},projectModelSelections:{},conversationModelSelections:{},sidebarOpen:!0,projectPanelView:`projects`,projectPanelProjectId:null,savedRunCommandProjectId:null,isCreatingProject:!1,gitAuthRequest:null,configUpdatedAt:0,processingThreadIds:[],processingRuns:[],completedThreadIds:[],completedThreadPaneIds:{},completedPaneIds:[],deletingThreadIds:[],deletingProjectIds:[],commandOutput:``,isRunningCommand:!1,terminalStates:{},focusChatInput:!1,toolCallProgress:{},subagentTranscripts:{},devServerToolSession:null,threadToolSessions:{},threadCreationSummaries:{},pendingChatMessage:null,diffComments:{},chatInputDrafts:{},pendingAutoRoutes:{},focusedPane:`primary`,extraChatPanes:{},activeStreamPane:null},te={open:!1,queuedCommand:null,queuedRelativeFolder:null,outputLines:[],height:300,history:[],historyIndex:-1,cwd:`.`,isRunning:!1};function g(e,t){return`${e}:${t}`}function ne(e,t,n=h){return t?e[g(t,n)]??null:null}function re(e,t){switch(t.type){case m.StartAutoRoute:{let n=g(t.route.threadId,t.route.paneId);return{...e,pendingAutoRoutes:{...e.pendingAutoRoutes,[n]:t.route}}}case m.EndAutoRoute:{let n=g(t.threadId,t.paneId);if(!e.pendingAutoRoutes[n])return e;let{[n]:r,...i}=e.pendingAutoRoutes;return{...e,pendingAutoRoutes:i}}default:return null}}function ie(e,t){let n=`${t}:`,r=new Set([h]);for(let t of Object.keys(e))t.startsWith(n)&&r.add(t.slice(n.length));return[...r]}function ae(e,t){let n=t?`${t}:`:null,r=``;for(let t of Object.keys(e))n&&!t.startsWith(n)||e[t].isStreaming&&(r+=`${t}\n`);return r}function oe(e,t,n=h){return e.includes(`${y(t,n)}\n`)}function se(e,t){return e.includes(`${t}:`)}function ce(e,t,n,r){return t.includes(e)||se(n,e)?!0:r?.threadId===e}var le={isStreaming:!1,streamingContent:``,streamingThinking:``,streamingSegments:[],streamingModel:``,streamingAgentMode:null,streamingGoalRun:!1,streamingEventCount:0},_=le;function v(){return{...le,streamingSegments:[]}}function y(e,t=h){return`${e}:${t}`}function b(e,t,n=h){return t?e[y(t,n)]??_:_}function ue(e,t){let n=new Set([h,...t.sessionPaneIds??[],...ie(t.streamingStates,e)]);for(let r of n)if(t.hasSession(r)||b(t.streamingStates,e,r).isStreaming)return!0;return!1}function x(e,t){return t.threadId??e.selectedThreadId}function de(e){return e??h}function fe(e,t,n,r){return!n||!t.includes(n)?!1:de(e)===r}function pe(e,t,n){return t?b(e.threadStreamingStates,t,n).isStreaming?!0:fe(e.activeStreamPane,e.processingThreadIds,t,n):!1}function S(e,t){return t.paneId??e.activeStreamPane??h}function me(e,t,n){return t===e.selectedThreadId?e.activeStreamPane===null?n===h:e.activeStreamPane===n:!1}function C(e,t,n,r,i=!1){if(!t)return{...e,...r,toolCallProgress:i?{}:e.toolCallProgress};let a=y(t,n),o={...e.threadStreamingStates,[a]:r};return me(e,t,n)?{...e,...r,threadStreamingStates:o,toolCallProgress:i?{}:e.toolCallProgress}:{...e,threadStreamingStates:o}}function he(){return{open:!1,queuedCommand:null,queuedRelativeFolder:null,outputLines:[],height:300,history:[],historyIndex:-1,cwd:`.`,isRunning:!1}}var w={focusedPane:h,extraChatPanes:{},activeStreamPane:null};function ge(){return{focusedPane:h,extraChatPanes:{},activeStreamPane:null}}function T(e){return{focusedPane:e.focusedPane,extraChatPanes:e.extraChatPanes,activeStreamPane:e.activeStreamPane}}function _e(e,t){return t?e[t]??w:w}function ve(e){let t={};for(let[n,r]of Object.entries(e))t[n]={...r,messages:[...r.messages]};return t}function E(e){return{...e,extraChatPanes:ve(e.extraChatPanes)}}function D(e,t,n){let r=E(n),i=t===null?e.threadMultiPaneStates:{...e.threadMultiPaneStates,[t]:r};return t===e.selectedThreadId?{...e,...r,threadMultiPaneStates:i}:{...e,threadMultiPaneStates:i}}function ye(e,t,n){let r=e.threadMultiPaneStates;return t&&(r={...r,[t]:E(T(e))}),{...E(_e(r,n)),threadMultiPaneStates:r}}function O(e,t){return D(e,e.selectedThreadId,{...T(e),...t})}function be(e,t){let n=e.chatPanesByThread[t];if(!n)return E(w);let r={};for(let e of n.panes)r[e.paneId]={conversationId:e.conversationId,messages:[],messagesLoaded:!1};return{focusedPane:n.focusedPaneId,extraChatPanes:r,activeStreamPane:null}}function xe(e,t){if(!t)return e;let n=ve(e.extraChatPanes);for(let[e,r]of Object.entries(t.extraChatPanes)){let t=n[e];if(!t){n[e]=r;continue}r.messagesLoaded&&(n[e]={...t,messages:r.messages,messagesLoaded:!0})}let r=t.focusedPane in n&&!(t.focusedPane in e.extraChatPanes);return{...e,extraChatPanes:n,focusedPane:r?t.focusedPane:e.focusedPane}}var Se=[];function Ce(e,t){return t===h?e.messages:e.extraChatPanes[t]?.messages??Se}function we(e,t){return t===h?e.primaryConversationId:e.extraChatPanes[t]?.conversationId}function Te(e,t){return t===h?e.messagesLoaded:e.extraChatPanes[t]?.messagesLoaded??!1}function Ee(e,t){let n=new Set(t.threadIds),r={...e.threadMultiPaneStates};for(let n of t.threadIds)r[n]=xe(be(t,n),n===e.selectedThreadId?T(e):e.threadMultiPaneStates[n]);return!e.selectedThreadId||!n.has(e.selectedThreadId)?{...e,threadMultiPaneStates:r}:{...e,...r[e.selectedThreadId],threadMultiPaneStates:r}}function De(e,t){return t.paneId===h?e:e.extraChatPanes[t.paneId]?O(e,{focusedPane:t.paneId}):O(e,{focusedPane:t.paneId,extraChatPanes:{...e.extraChatPanes,[t.paneId]:{conversationId:t.conversationId,messages:[],messagesLoaded:!1}}})}function Oe(e,t){if(t.paneId===h||!e.extraChatPanes[t.paneId])return e;let{[t.paneId]:n,...r}=e.extraChatPanes;return O(e,{extraChatPanes:r,focusedPane:e.focusedPane===t.paneId?h:e.focusedPane,activeStreamPane:e.activeStreamPane===t.paneId?null:e.activeStreamPane})}function ke(e,t){if(t.paneId===h)return{...e,messages:t.messages,messagesLoaded:!0};let n=e.extraChatPanes[t.paneId];return n?O(e,{extraChatPanes:{...e.extraChatPanes,[t.paneId]:{...n,messages:t.messages,messagesLoaded:!0}}}):e}function Ae(e,t){if(t.paneId===h)return e;let n=e.extraChatPanes[t.paneId];return n?O(e,{extraChatPanes:{...e.extraChatPanes,[t.paneId]:{...n,conversationId:t.conversationId,messages:[],messagesLoaded:!0}}}):e}function je(e,t){if(t.paneId===h)return{...e,messages:[...e.messages,t.message]};let n=e.extraChatPanes[t.paneId];return n?O(e,{extraChatPanes:{...e.extraChatPanes,[t.paneId]:{...n,messages:[...n.messages,t.message]}}}):e}function Me(e,t){if(!e.selectedThreadId||t.paneId===null)return O(e,{activeStreamPane:null});let n=b(e.threadStreamingStates,e.selectedThreadId,t.paneId);return{...O(e,{activeStreamPane:t.paneId}),...n}}function Ne(e,t){switch(t.type){case m.HydrateProjectChatPanes:return Ee(e,t);case m.AddChatPane:return De(e,t);case m.RemoveChatPane:return Oe(e,t);case m.SetFocusedPane:return O(e,{focusedPane:t.paneId});case m.SetPaneConversationId:return Ae(e,t);case m.SetPaneMessages:return ke(e,t);case m.AddPaneMessage:return je(e,t);case m.SetActiveStreamPane:return Me(e,t);default:return null}}function Pe(e,t){return!!(t.historyEpoch!==void 0&&t.historyEpoch!==e.chatHistoryEpoch||t.conversationId&&e.primaryConversationId&&t.conversationId!==e.primaryConversationId)}function Fe(e,t){let n=e.selectedThreadId?e.threadCreationSummaries[e.selectedThreadId]:void 0;return!n||t.some(e=>e.messageId===n.messageId)?t:[n,...t]}function Ie(e,t){let n=t.paneId??h;if(n!==h){if(t.threadId&&t.threadId!==e.selectedThreadId)return e;let r=e.extraChatPanes[n];return r?D(e,e.selectedThreadId,{...T(e),extraChatPanes:{...e.extraChatPanes,[n]:{...r,messages:[...r.messages,t.message]}}}):e}return t.threadId&&t.threadId!==e.selectedThreadId?e:{...e,messages:[...e.messages,t.message]}}function Le(e,t){if(t.threadId!==e.selectedThreadId)return e;let n=e.messages.some(e=>e.messageId===t.messageId)?e.messages.map(e=>e.messageId===t.messageId?{...e,content:t.content}:e):[...e.messages,{messageId:t.messageId,sender:`agent`,content:t.content,contentType:`markdown`,timestamp:new Date().toISOString(),isThinking:!1}];return{...e,messages:n}}function Re(e,t){if(t.threadId!==e.selectedThreadId)return e;let n=t.paneId??h;if(n!==h){let r=e.extraChatPanes[n];return r?D(e,e.selectedThreadId,{...T(e),extraChatPanes:{...e.extraChatPanes,[n]:{...r,messages:r.messages.map(e=>e.messageId===t.messageId?{...e,checkpointRef:t.checkpointRef}:e)}}}):e}return{...e,messages:e.messages.map(e=>e.messageId===t.messageId?{...e,checkpointRef:t.checkpointRef}:e)}}function ze(e,t){if(!e.threadToolSessions[t.threadId])return e;let{[t.threadId]:n,...r}=e.threadToolSessions;return{...e,threadToolSessions:r}}function Be(e,t){if(!e.threadCreationSummaries[t.threadId])return e;let{[t.threadId]:n,...r}=e.threadCreationSummaries;return{...e,threadCreationSummaries:r}}function Ve(e,t){let n=e.toolCallProgress[t.toolCallId];return{...e,toolCallProgress:{...e.toolCallProgress,[t.toolCallId]:{toolCallId:t.toolCallId,threadId:t.threadId||(n?.threadId??``),toolName:t.toolName??n?.toolName??``,delta:n?.delta??``,partial:n?.partial??{role:`tool`,content:[]},executionOutput:t.executionOutput}}}}function He(e,t){let n=e.toolCallProgress[t.toolCallId],r=n?.executionOutput??``;return{...e,toolCallProgress:{...e.toolCallProgress,[t.toolCallId]:{toolCallId:t.toolCallId,threadId:t.threadId||(n?.threadId??``),toolName:t.toolName??n?.toolName??`agent`,delta:n?.delta??``,partial:n?.partial??{role:`tool`,content:[]},executionOutput:r+t.delta}}}}function Ue(e,t){if(!t.toolCallId)return{...e,toolCallProgress:{}};let{[t.toolCallId]:n,...r}=e.toolCallProgress;return{...e,toolCallProgress:r}}function We(e,t){let{[t.threadId]:n,...r}=e.chatInputDrafts;return{...e,chatInputDrafts:r}}function Ge(e,t){let n=new Set(e.startingNewChatPaneIds);return t.isStarting?n.add(t.paneId):n.delete(t.paneId),{...e,startingNewChatPaneIds:[...n]}}function Ke(e,t){if(e.selectedThreadId===t.threadId&&e.selectedProjectId===t.projectId&&t.initialMessages===void 0)return t.focusInput&&!e.focusChatInput?{...e,focusChatInput:!0}:e;let n=ye(e,e.selectedThreadId,t.threadId),r=b(e.threadStreamingStates,t.threadId,h);return{...e,...r,...n,selectedThreadId:t.threadId,selectedProjectId:t.projectId,messages:t.initialMessages??[],messagesLoaded:!1,startingNewChatPaneIds:[],chatHistoryEpoch:e.chatHistoryEpoch+1,primaryConversationId:void 0,focusChatInput:t.focusInput??!1,subagentTranscripts:{}}}function qe(e,t){let n=ye(e,e.selectedThreadId,``);return{...e,...v(),...n,selectedThreadId:null,selectedProjectId:t.projectId,messages:[],messagesLoaded:!0,startingNewChatPaneIds:[],chatHistoryEpoch:e.chatHistoryEpoch+1,primaryConversationId:void 0,focusChatInput:t.focusInput??!1,subagentTranscripts:{}}}function Je(e,t){return Pe(e,t)?e:{...e,messages:Fe(e,t.messages),messagesLoaded:!0}}function Ye(e,t){let n=t.conversationId?.trim()||void 0;return e.primaryConversationId===n?e:{...e,primaryConversationId:n}}function Xe(e,t){return{...e,queuedChatMessages:[...e.queuedChatMessages,t.message]}}function Ze(e,t){return{...e,queuedChatMessages:e.queuedChatMessages.filter(e=>e.id!==t.queuedMessageId)}}function Qe(e,t){let n=e.queuedChatMessages.filter(e=>e.id!==t.message.id),r=Math.min(Math.max(t.index,0),n.length),i=[...n];return i.splice(r,0,t.message),{...e,queuedChatMessages:i}}function $e(e,t){let n=t.conversationId?.trim()||void 0;return{...e,messages:Fe(e,[]),messagesLoaded:!0,chatHistoryEpoch:e.chatHistoryEpoch+1,primaryConversationId:n}}function et(e,t){return{...e,devServerToolSession:t.session}}function tt(e,t){return{...e,threadToolSessions:{...e.threadToolSessions,[t.session.threadId]:t.session}}}function nt(e,t){return{...e,threadCreationSummaries:{...e.threadCreationSummaries,[t.threadId]:t.message}}}function rt(e,t){let n=e.toolCallProgress[t.toolCallId];return{...e,toolCallProgress:{...e.toolCallProgress,[t.toolCallId]:{...n,...t.progress}}}}function k(e,t,n){let r=e.subagentTranscripts[t]??[];return{...e,subagentTranscripts:{...e.subagentTranscripts,[t]:r.concat(n)}}}function it(e,t){return k(e,t.toolCallId,[t.event])}function at(e,t){return k(e,t.toolCallId,t.events)}function ot(e,t){return{...e,pendingChatMessage:t.message}}function st(e,t){return{...e,pendingChatMessage:null}}function ct(e,t){return{...e,chatInputDrafts:{...e.chatInputDrafts,[t.threadId]:t.draft}}}function lt(e,t){return{...e,...v(),selectedThreadId:null,selectedProjectId:null,messages:[],messagesLoaded:!1,startingNewChatPaneIds:[],chatHistoryEpoch:e.chatHistoryEpoch+1,primaryConversationId:void 0,...ge()}}var ut={[m.SetMessages]:Je,[m.SetPrimaryConversationId]:Ye,[m.AddMessage]:Ie,[m.EnqueueChatMessage]:Xe,[m.RemoveQueuedChatMessage]:Ze,[m.RestoreQueuedChatMessage]:Qe,[m.ClearMessages]:$e,[m.UpdateMessage]:Le,[m.UpdateMessageCheckpointRef]:Re,[m.SetDevServerToolSession]:et,[m.SetThreadToolSession]:tt,[m.ClearThreadToolSession]:ze,[m.SetThreadCreationSummary]:nt,[m.ClearThreadCreationSummary]:Be,[m.UpdateToolCallProgress]:rt,[m.UpdateToolExecutionOutput]:Ve,[m.AppendToolExecutionOutput]:He,[m.AppendSubagentEvent]:it,[m.AppendSubagentEvents]:at,[m.ClearToolCallProgress]:Ue,[m.SetPendingChatMessage]:ot,[m.ClearPendingChatMessage]:st,[m.SetChatInputDraft]:ct,[m.ClearChatInputDraft]:We,[m.SetNewChatStarting]:Ge,[m.SelectThread]:Ke,[m.SelectProject]:qe,[m.ClearSelection]:lt};function dt(e,t){let n=ut[t.type];return n?n(e,t):null}var ft=l(`store.project`);function pt(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}function mt(e,t){return e.length===t.length&&e.every((e,n)=>e.threadId===t[n]?.threadId&&e.conversationId===t[n]?.conversationId&&e.isAwaitingHuman===t[n]?.isAwaitingHuman)}function ht(e,t,n){return e.some(e=>e.threadId===t&&e.conversationId===n)?e:[...e,{threadId:t,conversationId:n}]}function gt(e,t,n){return e?{id:t,provider:n,name:e.name??t,description:e.description??``,contextWindow:e.contextWindow,pricing:e.pricing,tarsk_use:e.tarsk_use,coding_index:e.coding_index,supportsImages:e.supportsImages}:{id:t,provider:n,name:t,description:``}}function _t(e,t){let n={...e};for(let e of t)for(let t of e.threads)t.model&&(n[t.threadId]=gt(n[t.threadId],t.model,t.modelProvider));return n}function vt(e,t){let n={...e};for(let e of t)for(let t of e.threads)for(let[e,r]of Object.entries(t.conversationModels??{}))n[e]||(n[e]=gt(void 0,r.model,r.modelProvider??void 0));return n}function yt(e,t){switch(t.type){case m.SetProjects:return{...e,projects:p(e.projects,t.projects),cloneRootPath:t.cloneRootPath===void 0?e.cloneRootPath:t.cloneRootPath,projectModelSelections:_t(e.projectModelSelections,t.projects),conversationModelSelections:vt(e.conversationModelSelections,t.projects)};case m.SetProjectsLoading:return{...e,projectsLoading:t.projectsLoading};case m.ClearUnreadAutomatedChat:return e.projects.some(e=>e.threads.some(e=>e.threadId===t.threadId&&e.hasUnreadAutomatedChat===!0))?{...e,projects:e.projects.map(e=>({...e,threads:e.threads.map(e=>e.threadId===t.threadId?{...e,hasUnreadAutomatedChat:!1}:e)}))}:e;default:return null}}function bt(e,t){return e?.id===t.id&&e?.provider===t.provider}function xt(e,t){switch(t.type){case m.SetProjectModel:{let n=t.conversationId??null,r=e.projectModelSelections[t.threadId],i=n?e.conversationModelSelections[n]:void 0,a=e.projects.some(e=>e.threads.some(e=>e.threadId===t.threadId&&e.model===t.model.id&&e.modelProvider===t.model.provider)),o=n===null||bt(i,t.model);return a&&bt(r,t.model)&&o?e:(ft.debug(`Set project model`,{threadId:t.threadId,conversationId:t.conversationId,model:{id:t.model.id,provider:t.model.provider}}),{...e,projects:e.projects.map(e=>{let n=e.threads.some(e=>e.threadId===t.threadId);return{...e,...t.conversationId&&n?{lastSelectedModel:t.model.id,lastSelectedModelProvider:t.model.provider}:{},threads:e.threads.map(e=>e.threadId===t.threadId?{...e,model:t.model.id,modelProvider:t.model.provider}:e)}}),projectModelSelections:{...e.projectModelSelections,[t.threadId]:t.model},conversationModelSelections:n?{...e.conversationModelSelections,[n]:t.model}:e.conversationModelSelections})}default:return null}}function St(e,t){switch(t.type){case m.SetProcessingThreads:{let n=t.processingRuns??e.processingRuns.filter(e=>t.threadIds.includes(e.threadId));return pt(e.processingThreadIds,t.threadIds)&&mt(e.processingRuns,n)?e:{...e,processingThreadIds:t.threadIds,processingRuns:n}}case m.AddProcessingThread:{let n=e.processingThreadIds.includes(t.threadId)?e.processingThreadIds:[...e.processingThreadIds,t.threadId],r=t.conversationId?.trim(),i=r?ht(e.processingRuns,t.threadId,r):e.processingRuns;return n===e.processingThreadIds&&i===e.processingRuns?e:{...e,processingThreadIds:n,processingRuns:i}}case m.RemoveProcessingThread:return{...e,processingThreadIds:e.processingThreadIds.filter(e=>e!==t.threadId),processingRuns:e.processingRuns.filter(e=>e.threadId!==t.threadId)};default:return null}}function Ct(e,t){switch(t.type){case m.AddCreatingProject:return{...e,projects:[...e.projects,{projectId:t.projectId,name:t.projectName,gitUrl:t.gitUrl,type:t.projectType,threads:[{threadId:t.threadId,title:`thread-1`,path:``,currentBranch:``}]}]};case m.AddCreatingThread:return{...e,projects:e.projects.map(e=>e.projectId===t.projectId?{...e,threads:[...e.threads,{threadId:t.threadId,title:t.title,path:``,currentBranch:``}]}:e)};case m.RemoveCreatingProject:return{...e,projects:e.projects.filter(e=>e.projectId!==t.projectId)};default:return null}}function wt(e,t){switch(t.type){case m.AddDeletingThread:return{...e,deletingThreadIds:e.deletingThreadIds.includes(t.threadId)?e.deletingThreadIds:[...e.deletingThreadIds,t.threadId]};case m.RemoveDeletingThread:return{...e,deletingThreadIds:e.deletingThreadIds.filter(e=>e!==t.threadId)};case m.AddDeletingProject:return{...e,deletingProjectIds:e.deletingProjectIds.includes(t.projectId)?e.deletingProjectIds:[...e.deletingProjectIds,t.projectId]};case m.RemoveDeletingProject:return{...e,deletingProjectIds:e.deletingProjectIds.filter(e=>e!==t.projectId)};default:return null}}function Tt(e,t){switch(t.type){case m.RemoveCreatingThread:return{...e,projects:e.projects.map(e=>e.projectId===t.projectId?{...e,threads:e.threads.filter(e=>e.threadId!==t.threadId)}:e)};case m.RemoveThread:return{...e,projects:e.projects.map(e=>e.projectId===t.projectId?{...e,threads:e.threads.filter(e=>e.threadId!==t.threadId)}:e)};case m.UpdateThreadTitle:return{...e,projects:e.projects.map(e=>e.projectId===t.projectId?{...e,threads:e.threads.map(e=>e.threadId===t.threadId?{...e,title:t.title}:e)}:e)};case m.UpdateChatTitle:return{...e,projects:e.projects.map(e=>e.projectId===t.projectId?{...e,threads:e.threads.map(e=>e.threadId===t.threadId?{...e,chatTitles:{...e.chatTitles,[t.paneId]:t.title}}:e)}:e)};default:return null}}function Et(e,t){switch(t.type){case m.MarkThreadCompleted:return{...e,completedThreadIds:e.completedThreadIds.includes(t.threadId)?e.completedThreadIds:[...e.completedThreadIds,t.threadId],completedThreadPaneIds:t.paneId===void 0?e.completedThreadPaneIds:{...e.completedThreadPaneIds,[t.threadId]:t.paneId},completedPaneIds:t.paneId===void 0||t.paneId===e.focusedPane||e.completedPaneIds.includes(t.paneId)?e.completedPaneIds:[...e.completedPaneIds,t.paneId]};case m.ClearThreadCompleted:return{...e,completedThreadIds:e.completedThreadIds.filter(e=>e!==t.threadId)};case m.ClearPaneCompleted:{let n=Object.entries(e.completedThreadPaneIds).filter(([,e])=>e===t.paneId).map(([e])=>e);return{...e,completedThreadIds:e.completedThreadIds.filter(e=>!n.includes(e)),completedThreadPaneIds:Object.fromEntries(Object.entries(e.completedThreadPaneIds).filter(([,e])=>e!==t.paneId)),completedPaneIds:e.completedPaneIds.filter(e=>e!==t.paneId)}}default:return null}}function Dt(e,t){return yt(e,t)??xt(e,t)??St(e,t)??Ct(e,t)??wt(e,t)??Tt(e,t)??Et(e,t)}function Ot(e){return e.projects.find(t=>t.projectId===e.selectedProjectId)}function kt(e){return Ot(e)?.threads.find(t=>t.threadId===e.selectedThreadId)?.path}function A(e){return e.type===`tool-call-group`}var At=91;function jt(e){return e>=65&&e<=90||e>=97&&e<=122}function Mt(e,t){let n=e.length-1;for(;n>=t&&jt(e.charCodeAt(n));)n--;return n>=t&&e.charCodeAt(n)===At?n:-1}function Nt(e,t){let n=t!==void 0&&t.labelResumeOffset<=e.length,r=n?t.labelResumeOffset:0,i=n?t.label:void 0,a=n?t.contentStart:0,o=-1,s=-1,c=/\[([A-Za-z]+)\]\s*/g;c.lastIndex=r;for(let t=c.exec(e);t!==null;t=c.exec(e))i=t[1],o=t.index,s=t.index+t[0].length,a=s;let l=e.length;s===e.length&&(l=o);let u=Mt(e,Math.max(r,s));return u!==-1&&(l=Math.min(l,u)),{label:i,contentStart:a,labelResumeOffset:l}}function Pt(e,t,n,r){try{let i=JSON.parse(e.slice(t,n+1));if(Array.isArray(i)){for(let e of i)if(e&&typeof e==`object`&&`type`in e){let t=e.type;(t===`tool-result`||t===`tool_use`)&&r.push(e)}}return!0}catch{return!1}}function Ft(e,t,n){let r=e?.openArray;if(!(!r||r.start<t||r.offset>n))return r}function It(e,t){let n=t!==void 0&&t.committedPos<=e,r=n?t.committedBlocks.slice():[],i=n?t.committedPos:0;return{blocks:r,pos:i,committedPos:i,committedCount:r.length,openArray:n?Ft(t,i,e):void 0}}function j(e,t){let n=t.trim();n&&e.push({type:`reasoning`,text:n})}function Lt(e,t){e.pos=t,e.committedPos=t,e.committedCount=e.blocks.length}function Rt(e,t){let n=t.openArray?.start??e.indexOf(`[`,t.pos);if(n===-1)return j(t.blocks,e.slice(t.pos)),!1;j(t.blocks,e.slice(t.pos,n));let r=t.openArray??Ut(n),i=Wt(e,r);return i===-1?(t.openArray=r,j(t.blocks,e.slice(n)),!1):(t.openArray=void 0,Pt(e,n,i,t.blocks)||j(t.blocks,e.slice(n,i+1)),Lt(t,i+1),!0)}function zt(e){let t=e.committedCount===e.blocks.length?e.blocks:e.blocks.slice(0,e.committedCount);return{blocks:e.blocks,committedBlocks:t,committedPos:e.committedPos,openArray:e.openArray}}function Bt(e,t){let n=It(e.length,t);for(;n.pos<e.length&&Rt(e,n););return zt(n)}function Vt(e,t){if(!e||typeof e!=`string`)return{blocks:null,scan:void 0};let n=e.trim();if(!n)return{blocks:null,scan:void 0};let r=Nt(n,t);if(r.label){let e=n.slice(r.contentStart);if(e)return{blocks:[{type:`reasoning`,text:e,label:r.label}],scan:{...r,committedBlocks:t?.committedBlocks??[],committedPos:t?.committedPos??0,openArray:t?.openArray}}}let{blocks:i,committedBlocks:a,committedPos:o,openArray:s}=Bt(n,t);return{blocks:i.length>0?i:null,scan:{...r,committedBlocks:a,committedPos:o,openArray:s}}}function Ht(e){return Vt(e).blocks}function Ut(e){return{start:e,offset:e,depth:0,inString:!1,escape:!1}}function Wt(e,t){let{depth:n,inString:r,escape:i}=t,a=t.offset;for(;a<e.length;a++){let o=e[a];if(r){i?i=!1:o===`\\`?i=!0:o===`"`&&(r=!1);continue}if(o===`"`){r=!0;continue}if(o===`[`)n++;else if(o===`]`&&(n--,n===0))return t.offset=a+1,t.depth=0,t.inString=!1,t.escape=!1,a}return t.offset=a,t.depth=n,t.inString=r,t.escape=i,-1}function Gt(e,t){return Wt(e,Ut(t))}function Kt(e,t=0){let n=[],r=t;for(;r<e.length;){for(;r<e.length&&/\s/.test(e.charAt(r));)r++;if(r>=e.length||e.charAt(r)!==`[`)break;let t=Gt(e,r);if(t===-1)break;try{let i=JSON.parse(e.slice(r,t+1));if(!Array.isArray(i))break;n.push(...M(i))}catch{break}r=t+1}return n.length===0?null:{blocks:n,nextIndex:r}}function M(e){return e.map(e=>{if(typeof e==`object`&&e&&!(`type`in e)){let t=e;if(t.reasoning)return{type:`reasoning`,text:typeof t.reasoning==`string`?t.reasoning:JSON.stringify(t.reasoning)};let n=t.text??t.content??t.answer;if(n)return{type:`text`,text:typeof n==`string`?n:JSON.stringify(n)}}return e})}function qt(e){return Array.isArray(e)?e.filter(e=>typeof e==`object`&&!!e&&typeof e.label==`string`&&typeof e.pattern==`string`&&(e.scope===`session`||e.scope===`project`)):[]}function Jt(e){if(e.type!==`long_running_confirmation`||typeof e.prompt!=`object`||e.prompt===null||typeof e.prompt.question!=`string`||!Array.isArray(e.prompt.options))return[];let t=e.prompt;return[{type:`long_running_confirmation`,prompt:{toolCallId:typeof t.toolCallId==`string`?t.toolCallId:void 0,question:t.question,options:t.options.filter(e=>typeof e==`string`),context:typeof t.context==`string`?t.context:void 0}}]}function Yt(e){if(e.type!==`shell_permission`||typeof e.shellPermission!=`object`||e.shellPermission===null||typeof e.shellPermission.command!=`string`)return[];let t=e.shellPermission;return[{type:`shell_permission`,prompt:{toolCallId:typeof t.toolCallId==`string`?t.toolCallId:`shell-permission`,command:t.command,source:t.source===`bash`||t.source===`skill_script`||t.source===`browser_js`?t.source:`bash`,wildcardOptions:qt(t.wildcardOptions)}}]}function Xt(e){if(e.type!==`seatbelt_escalation`||typeof e.seatbeltEscalation!=`object`||e.seatbeltEscalation===null)return[];let t=e.seatbeltEscalation;return typeof t.command==`string`?[{type:`seatbelt_escalation`,prompt:{toolCallId:typeof t.toolCallId==`string`?t.toolCallId:`seatbelt-escalation`,command:t.command,projectId:typeof t.projectId==`string`?t.projectId:``,scopes:[`once`,`project`,`session`]}}]:[]}function Zt(e){if(e.type!==`web_fetch_permission`||typeof e.webFetchPermission!=`object`||e.webFetchPermission===null||typeof e.webFetchPermission.hostname!=`string`)return[];let t=e.webFetchPermission;return[{type:`web_fetch_permission`,prompt:{toolCallId:typeof t.toolCallId==`string`?t.toolCallId:`web-fetch-permission`,hostname:t.hostname,url:typeof t.url==`string`?t.url:``,wildcardOptions:qt(t.wildcardOptions)}}]}function Qt(e){let t=[...Jt(e),...Yt(e),...Xt(e),...Zt(e)];if(t.length>0)return t;e.reasoning&&typeof e.reasoning==`string`&&t.push({type:`reasoning`,text:e.reasoning});let n=(typeof e.text==`string`?e.text:null)??(typeof e.content==`string`?e.content:null)??(typeof e.answer==`string`?e.answer:null);return n&&t.push({type:`text`,text:n}),t.length===0&&Object.keys(e).length>0&&t.push({type:`text`,text:JSON.stringify(e,null,2)}),t}function $t(e){return P(e)?.some(e=>e.type===`tool_use`||e.type===`tool-result`)??!1}var en=/^```+|^~~~+/;function tn(e){let t=e.indexOf(`{`),n=e.indexOf(`[`);return t===-1?n:n===-1?t:Math.min(t,n)}function N(e){return en.test(e.trimStart())}function nn(e,t){return!t||t.resumeOffset===0||t.resumeOffset>e?{offset:0,inFence:!1}:{offset:t.resumeOffset,inFence:t.inFence}}function rn(e,t,n){if(N(e))return{kind:`fence`,inFence:!n};if(n)return{kind:`skip`};let r=tn(e);if(r===-1)return{kind:`skip`};let i=t+r;return{kind:`json`,index:i,scan:{fixedIndex:i,resumeOffset:t,inFence:n}}}function an(e,t,n){let r=e.slice(t),i=n||N(r)?-1:tn(r);return{index:i===-1?-1:t+i,scan:{fixedIndex:-1,resumeOffset:t,inFence:n}}}function on(e,t){if(t&&t.fixedIndex>=0)return{index:t.fixedIndex,scan:t};let n=nn(e.length,t),r=n.offset,i=n.inFence;for(;;){let t=e.indexOf(`
|
|
1
|
+
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n}from"./react-vendor-Ee0-5T4I.js";import{Ft as r,It as i,Lt as a,Pt as o,Rt as s,W as c,at as l,gn as u,pn as d,zt as f}from"./dist-FJzwWcMv.js";import{f as p}from"./utils-uGptTPGm.js";var m=function(e){return e.SetProjects=`SET_PROJECTS`,e.SetProjectsLoading=`SET_PROJECTS_LOADING`,e.ClearUnreadAutomatedChat=`CLEAR_UNREAD_AUTOMATED_CHAT`,e.SelectThread=`SELECT_THREAD`,e.SelectProject=`SELECT_PROJECT`,e.SetMessages=`SET_MESSAGES`,e.AddMessage=`ADD_MESSAGE`,e.EnqueueChatMessage=`ENQUEUE_CHAT_MESSAGE`,e.RemoveQueuedChatMessage=`REMOVE_QUEUED_CHAT_MESSAGE`,e.RestoreQueuedChatMessage=`RESTORE_QUEUED_CHAT_MESSAGE`,e.SetStreaming=`SET_STREAMING`,e.AppendStreamContent=`APPEND_STREAM_CONTENT`,e.SetStreamContent=`SET_STREAM_CONTENT`,e.AppendStreamThinking=`APPEND_STREAM_THINKING`,e.AppendStreamChunk=`APPEND_STREAM_CHUNK`,e.SetStreamModel=`SET_STREAM_MODEL`,e.SetStreamAgentMode=`SET_STREAM_AGENT_MODE`,e.SetStreamGoalRun=`SET_STREAM_GOAL_RUN`,e.SetContextUsage=`SET_CONTEXT_USAGE`,e.SetProjectModel=`SET_PROJECT_MODEL`,e.ResetStream=`RESET_STREAM`,e.StopStream=`STOP_STREAM`,e.ToggleSidebar=`TOGGLE_SIDEBAR`,e.OpenSidebar=`OPEN_SIDEBAR`,e.CloseSidebar=`CLOSE_SIDEBAR`,e.OpenProjectPanel=`OPEN_PROJECT_PANEL`,e.CloseProjectPanel=`CLOSE_PROJECT_PANEL`,e.SetCreatingProject=`SET_CREATING_PROJECT`,e.SetGitAuthRequest=`SET_GIT_AUTH_REQUEST`,e.ConfigUpdated=`CONFIG_UPDATED`,e.SetProcessingThreads=`SET_PROCESSING_THREADS`,e.AddProcessingThread=`ADD_PROCESSING_THREAD`,e.RemoveProcessingThread=`REMOVE_PROCESSING_THREAD`,e.AddCreatingProject=`ADD_CREATING_PROJECT`,e.AddCreatingThread=`ADD_CREATING_THREAD`,e.RemoveCreatingProject=`REMOVE_CREATING_PROJECT`,e.RemoveCreatingThread=`REMOVE_CREATING_THREAD`,e.RemoveThread=`REMOVE_THREAD`,e.MarkThreadCompleted=`MARK_THREAD_COMPLETED`,e.ClearThreadCompleted=`CLEAR_THREAD_COMPLETED`,e.ClearPaneCompleted=`CLEAR_PANE_COMPLETED`,e.AddDeletingThread=`ADD_DELETING_THREAD`,e.RemoveDeletingThread=`REMOVE_DELETING_THREAD`,e.AddDeletingProject=`ADD_DELETING_PROJECT`,e.RemoveDeletingProject=`REMOVE_DELETING_PROJECT`,e.AppendCommandOutput=`APPEND_COMMAND_OUTPUT`,e.SetRunningCommand=`SET_RUNNING_COMMAND`,e.ClearCommandOutput=`CLEAR_COMMAND_OUTPUT`,e.ToggleTerminal=`TOGGLE_TERMINAL`,e.SetTerminalOpen=`SET_TERMINAL_OPEN`,e.QueueTerminalCommand=`QUEUE_TERMINAL_COMMAND`,e.ClearQueuedTerminalCommand=`CLEAR_QUEUED_TERMINAL_COMMAND`,e.AppendTerminalLine=`APPEND_TERMINAL_LINE`,e.ClearTerminalOutput=`CLEAR_TERMINAL_OUTPUT`,e.SetTerminalHeight=`SET_TERMINAL_HEIGHT`,e.SetTerminalCwd=`SET_TERMINAL_CWD`,e.SetTerminalRunning=`SET_TERMINAL_RUNNING`,e.SetTerminalHistory=`SET_TERMINAL_HISTORY`,e.SetTerminalHistoryIndex=`SET_TERMINAL_HISTORY_INDEX`,e.UpdateThreadTitle=`UPDATE_THREAD_TITLE`,e.UpdateChatTitle=`UPDATE_CHAT_TITLE`,e.FocusChatInput=`FOCUS_CHAT_INPUT`,e.ClearFocusChatInput=`CLEAR_FOCUS_CHAT_INPUT`,e.ClearMessages=`CLEAR_MESSAGES`,e.UpdateMessage=`UPDATE_MESSAGE`,e.UpdateMessageCheckpointRef=`UPDATE_MESSAGE_CHECKPOINT_REF`,e.SetDevServerToolSession=`SET_DEV_SERVER_TOOL_SESSION`,e.SetThreadToolSession=`SET_THREAD_TOOL_SESSION`,e.ClearThreadToolSession=`CLEAR_THREAD_TOOL_SESSION`,e.SetThreadCreationSummary=`SET_THREAD_CREATION_SUMMARY`,e.ClearThreadCreationSummary=`CLEAR_THREAD_CREATION_SUMMARY`,e.UpdateToolCallProgress=`UPDATE_TOOL_CALL_PROGRESS`,e.UpdateToolExecutionOutput=`UPDATE_TOOL_EXECUTION_OUTPUT`,e.AppendToolExecutionOutput=`APPEND_TOOL_EXECUTION_OUTPUT`,e.AppendSubagentEvent=`APPEND_SUBAGENT_EVENT`,e.AppendSubagentEvents=`APPEND_SUBAGENT_EVENTS`,e.ClearToolCallProgress=`CLEAR_TOOL_CALL_PROGRESS`,e.SetPendingChatMessage=`SET_PENDING_CHAT_MESSAGE`,e.ClearPendingChatMessage=`CLEAR_PENDING_CHAT_MESSAGE`,e.IncrementStreamEventCount=`INCREMENT_STREAM_EVENT_COUNT`,e.SetDiffComments=`SET_DIFF_COMMENTS`,e.ClearSelection=`CLEAR_SELECTION`,e.SetChatInputDraft=`SET_CHAT_INPUT_DRAFT`,e.ClearChatInputDraft=`CLEAR_CHAT_INPUT_DRAFT`,e.StartAutoRoute=`START_AUTO_ROUTE`,e.EndAutoRoute=`END_AUTO_ROUTE`,e.AddChatPane=`ADD_CHAT_PANE`,e.RemoveChatPane=`REMOVE_CHAT_PANE`,e.SetFocusedPane=`SET_FOCUSED_PANE`,e.SetNewChatStarting=`SET_NEW_CHAT_STARTING`,e.SetPrimaryConversationId=`SET_PRIMARY_CONVERSATION_ID`,e.SetPaneConversationId=`SET_PANE_CONVERSATION_ID`,e.SetPaneMessages=`SET_PANE_MESSAGES`,e.AddPaneMessage=`ADD_PANE_MESSAGE`,e.SetActiveStreamPane=`SET_ACTIVE_STREAM_PANE`,e.HydrateProjectChatPanes=`HYDRATE_PROJECT_CHAT_PANES`,e.SetRunCommandSaved=`SET_RUN_COMMAND_SAVED`,e.ClearRunCommandSaved=`CLEAR_RUN_COMMAND_SAVED`,e}({}),h=l,ee={projects:[],cloneRootPath:null,projectsLoading:!0,selectedThreadId:null,selectedProjectId:null,messages:[],messagesLoaded:!1,startingNewChatPaneIds:[],chatHistoryEpoch:0,primaryConversationId:void 0,queuedChatMessages:[],isStreaming:!1,streamingContent:``,streamingThinking:``,streamingSegments:[],streamingModel:``,streamingAgentMode:null,streamingEventCount:0,threadStreamingStates:{},threadMultiPaneStates:{},projectModelSelections:{},conversationModelSelections:{},sidebarOpen:!0,projectPanelView:`projects`,projectPanelProjectId:null,savedRunCommandProjectId:null,isCreatingProject:!1,gitAuthRequest:null,configUpdatedAt:0,processingThreadIds:[],processingRuns:[],completedThreadIds:[],completedThreadPaneIds:{},completedPaneIds:[],deletingThreadIds:[],deletingProjectIds:[],commandOutput:``,isRunningCommand:!1,terminalStates:{},focusChatInput:!1,toolCallProgress:{},subagentTranscripts:{},devServerToolSession:null,threadToolSessions:{},threadCreationSummaries:{},pendingChatMessage:null,diffComments:{},chatInputDrafts:{},pendingAutoRoutes:{},focusedPane:`primary`,extraChatPanes:{},activeStreamPane:null},te={open:!1,queuedCommand:null,queuedRelativeFolder:null,outputLines:[],height:300,history:[],historyIndex:-1,cwd:`.`,isRunning:!1};function g(e,t){return`${e}:${t}`}function ne(e,t,n=h){return t?e[g(t,n)]??null:null}function re(e,t){switch(t.type){case m.StartAutoRoute:{let n=g(t.route.threadId,t.route.paneId);return{...e,pendingAutoRoutes:{...e.pendingAutoRoutes,[n]:t.route}}}case m.EndAutoRoute:{let n=g(t.threadId,t.paneId);if(!e.pendingAutoRoutes[n])return e;let{[n]:r,...i}=e.pendingAutoRoutes;return{...e,pendingAutoRoutes:i}}default:return null}}function ie(e,t){let n=`${t}:`,r=new Set([h]);for(let t of Object.keys(e))t.startsWith(n)&&r.add(t.slice(n.length));return[...r]}function ae(e,t){let n=t?`${t}:`:null,r=``;for(let t of Object.keys(e))n&&!t.startsWith(n)||e[t].isStreaming&&(r+=`${t}\n`);return r}function oe(e,t,n=h){return e.includes(`${y(t,n)}\n`)}function se(e,t){return e.includes(`${t}:`)}function ce(e,t,n,r){return t.includes(e)||se(n,e)?!0:r?.threadId===e}var le={isStreaming:!1,streamingContent:``,streamingThinking:``,streamingSegments:[],streamingModel:``,streamingAgentMode:null,streamingGoalRun:!1,streamingEventCount:0},_=le;function v(){return{...le,streamingSegments:[]}}function y(e,t=h){return`${e}:${t}`}function b(e,t,n=h){return t?e[y(t,n)]??_:_}function ue(e,t){let n=new Set([h,...t.sessionPaneIds??[],...ie(t.streamingStates,e)]);for(let r of n)if(t.hasSession(r)||b(t.streamingStates,e,r).isStreaming)return!0;return!1}function x(e,t){return t.threadId??e.selectedThreadId}function de(e){return e??h}function fe(e,t,n,r){return!n||!t.includes(n)?!1:de(e)===r}function pe(e,t,n){return t?b(e.threadStreamingStates,t,n).isStreaming?!0:fe(e.activeStreamPane,e.processingThreadIds,t,n):!1}function S(e,t){return t.paneId??e.activeStreamPane??h}function me(e,t,n){return t===e.selectedThreadId?e.activeStreamPane===null?n===h:e.activeStreamPane===n:!1}function C(e,t,n,r,i=!1){if(!t)return{...e,...r,toolCallProgress:i?{}:e.toolCallProgress};let a=y(t,n),o={...e.threadStreamingStates,[a]:r};return me(e,t,n)?{...e,...r,threadStreamingStates:o,toolCallProgress:i?{}:e.toolCallProgress}:{...e,threadStreamingStates:o}}function he(){return{open:!1,queuedCommand:null,queuedRelativeFolder:null,outputLines:[],height:300,history:[],historyIndex:-1,cwd:`.`,isRunning:!1}}var w={focusedPane:h,extraChatPanes:{},activeStreamPane:null};function ge(){return{focusedPane:h,extraChatPanes:{},activeStreamPane:null}}function T(e){return{focusedPane:e.focusedPane,extraChatPanes:e.extraChatPanes,activeStreamPane:e.activeStreamPane}}function _e(e,t){return t?e[t]??w:w}function ve(e){let t={};for(let[n,r]of Object.entries(e))t[n]={...r,messages:[...r.messages]};return t}function E(e){return{...e,extraChatPanes:ve(e.extraChatPanes)}}function D(e,t,n){let r=E(n),i=t===null?e.threadMultiPaneStates:{...e.threadMultiPaneStates,[t]:r};return t===e.selectedThreadId?{...e,...r,threadMultiPaneStates:i}:{...e,threadMultiPaneStates:i}}function ye(e,t,n){let r=e.threadMultiPaneStates;return t&&(r={...r,[t]:E(T(e))}),{...E(_e(r,n)),threadMultiPaneStates:r}}function O(e,t){return D(e,e.selectedThreadId,{...T(e),...t})}function be(e,t){let n=e.chatPanesByThread[t];if(!n)return E(w);let r={};for(let e of n.panes)r[e.paneId]={conversationId:e.conversationId,messages:[],messagesLoaded:!1};return{focusedPane:n.focusedPaneId,extraChatPanes:r,activeStreamPane:null}}function xe(e,t){if(!t)return e;let n=ve(e.extraChatPanes);for(let[e,r]of Object.entries(t.extraChatPanes)){let t=n[e];if(!t){n[e]=r;continue}r.messagesLoaded&&(n[e]={...t,messages:r.messages,messagesLoaded:!0})}let r=t.focusedPane in n&&!(t.focusedPane in e.extraChatPanes);return{...e,extraChatPanes:n,focusedPane:r?t.focusedPane:e.focusedPane}}var Se=[];function Ce(e,t){return t===h?e.messages:e.extraChatPanes[t]?.messages??Se}function we(e,t){return t===h?e.primaryConversationId:e.extraChatPanes[t]?.conversationId}function Te(e,t){return t===h?e.messagesLoaded:e.extraChatPanes[t]?.messagesLoaded??!1}function Ee(e,t){let n=new Set(t.threadIds),r={...e.threadMultiPaneStates};for(let n of t.threadIds)r[n]=xe(be(t,n),n===e.selectedThreadId?T(e):e.threadMultiPaneStates[n]);return!e.selectedThreadId||!n.has(e.selectedThreadId)?{...e,threadMultiPaneStates:r}:{...e,...r[e.selectedThreadId],threadMultiPaneStates:r}}function De(e,t){return t.paneId===h?e:e.extraChatPanes[t.paneId]?O(e,{focusedPane:t.paneId}):O(e,{focusedPane:t.paneId,extraChatPanes:{...e.extraChatPanes,[t.paneId]:{conversationId:t.conversationId,messages:[],messagesLoaded:!1}}})}function Oe(e,t){if(t.paneId===h||!e.extraChatPanes[t.paneId])return e;let{[t.paneId]:n,...r}=e.extraChatPanes;return O(e,{extraChatPanes:r,focusedPane:e.focusedPane===t.paneId?h:e.focusedPane,activeStreamPane:e.activeStreamPane===t.paneId?null:e.activeStreamPane})}function ke(e,t){if(t.paneId===h)return{...e,messages:t.messages,messagesLoaded:!0};let n=e.extraChatPanes[t.paneId];return n?O(e,{extraChatPanes:{...e.extraChatPanes,[t.paneId]:{...n,messages:t.messages,messagesLoaded:!0}}}):e}function Ae(e,t){if(t.paneId===h)return e;let n=e.extraChatPanes[t.paneId];return n?O(e,{extraChatPanes:{...e.extraChatPanes,[t.paneId]:{...n,conversationId:t.conversationId,messages:[],messagesLoaded:!0}}}):e}function je(e,t){if(t.paneId===h)return{...e,messages:[...e.messages,t.message]};let n=e.extraChatPanes[t.paneId];return n?O(e,{extraChatPanes:{...e.extraChatPanes,[t.paneId]:{...n,messages:[...n.messages,t.message]}}}):e}function Me(e,t){if(!e.selectedThreadId||t.paneId===null)return O(e,{activeStreamPane:null});let n=b(e.threadStreamingStates,e.selectedThreadId,t.paneId);return{...O(e,{activeStreamPane:t.paneId}),...n}}function Ne(e,t){switch(t.type){case m.HydrateProjectChatPanes:return Ee(e,t);case m.AddChatPane:return De(e,t);case m.RemoveChatPane:return Oe(e,t);case m.SetFocusedPane:return O(e,{focusedPane:t.paneId});case m.SetPaneConversationId:return Ae(e,t);case m.SetPaneMessages:return ke(e,t);case m.AddPaneMessage:return je(e,t);case m.SetActiveStreamPane:return Me(e,t);default:return null}}function Pe(e,t){return!!(t.historyEpoch!==void 0&&t.historyEpoch!==e.chatHistoryEpoch||t.conversationId&&e.primaryConversationId&&t.conversationId!==e.primaryConversationId)}function Fe(e,t){let n=e.selectedThreadId?e.threadCreationSummaries[e.selectedThreadId]:void 0;return!n||t.some(e=>e.messageId===n.messageId)?t:[n,...t]}function Ie(e,t){let n=t.paneId??h;if(n!==h){if(t.threadId&&t.threadId!==e.selectedThreadId)return e;let r=e.extraChatPanes[n];return r?D(e,e.selectedThreadId,{...T(e),extraChatPanes:{...e.extraChatPanes,[n]:{...r,messages:[...r.messages,t.message]}}}):e}return t.threadId&&t.threadId!==e.selectedThreadId?e:{...e,messages:[...e.messages,t.message]}}function Le(e,t){if(t.threadId!==e.selectedThreadId)return e;let n=e.messages.some(e=>e.messageId===t.messageId)?e.messages.map(e=>e.messageId===t.messageId?{...e,content:t.content}:e):[...e.messages,{messageId:t.messageId,sender:`agent`,content:t.content,contentType:`markdown`,timestamp:new Date().toISOString(),isThinking:!1}];return{...e,messages:n}}function Re(e,t){if(t.threadId!==e.selectedThreadId)return e;let n=t.paneId??h;if(n!==h){let r=e.extraChatPanes[n];return r?D(e,e.selectedThreadId,{...T(e),extraChatPanes:{...e.extraChatPanes,[n]:{...r,messages:r.messages.map(e=>e.messageId===t.messageId?{...e,checkpointRef:t.checkpointRef}:e)}}}):e}return{...e,messages:e.messages.map(e=>e.messageId===t.messageId?{...e,checkpointRef:t.checkpointRef}:e)}}function ze(e,t){if(!e.threadToolSessions[t.threadId])return e;let{[t.threadId]:n,...r}=e.threadToolSessions;return{...e,threadToolSessions:r}}function Be(e,t){if(!e.threadCreationSummaries[t.threadId])return e;let{[t.threadId]:n,...r}=e.threadCreationSummaries;return{...e,threadCreationSummaries:r}}function Ve(e,t){let n=e.toolCallProgress[t.toolCallId];return{...e,toolCallProgress:{...e.toolCallProgress,[t.toolCallId]:{toolCallId:t.toolCallId,threadId:t.threadId||(n?.threadId??``),toolName:t.toolName??n?.toolName??``,delta:n?.delta??``,partial:n?.partial??{role:`tool`,content:[]},executionOutput:t.executionOutput}}}}function He(e,t){let n=e.toolCallProgress[t.toolCallId],r=n?.executionOutput??``;return{...e,toolCallProgress:{...e.toolCallProgress,[t.toolCallId]:{toolCallId:t.toolCallId,threadId:t.threadId||(n?.threadId??``),toolName:t.toolName??n?.toolName??`agent`,delta:n?.delta??``,partial:n?.partial??{role:`tool`,content:[]},executionOutput:r+t.delta}}}}function Ue(e,t){if(!t.toolCallId)return{...e,toolCallProgress:{}};let{[t.toolCallId]:n,...r}=e.toolCallProgress;return{...e,toolCallProgress:r}}function We(e,t){let{[t.threadId]:n,...r}=e.chatInputDrafts;return{...e,chatInputDrafts:r}}function Ge(e,t){let n=new Set(e.startingNewChatPaneIds);return t.isStarting?n.add(t.paneId):n.delete(t.paneId),{...e,startingNewChatPaneIds:[...n]}}function Ke(e,t){if(e.selectedThreadId===t.threadId&&e.selectedProjectId===t.projectId&&t.initialMessages===void 0)return t.focusInput&&!e.focusChatInput?{...e,focusChatInput:!0}:e;let n=ye(e,e.selectedThreadId,t.threadId),r=b(e.threadStreamingStates,t.threadId,h);return{...e,...r,...n,selectedThreadId:t.threadId,selectedProjectId:t.projectId,messages:t.initialMessages??[],messagesLoaded:!1,startingNewChatPaneIds:[],chatHistoryEpoch:e.chatHistoryEpoch+1,primaryConversationId:void 0,focusChatInput:t.focusInput??!1,subagentTranscripts:{}}}function qe(e,t){let n=ye(e,e.selectedThreadId,``);return{...e,...v(),...n,selectedThreadId:null,selectedProjectId:t.projectId,messages:[],messagesLoaded:!0,startingNewChatPaneIds:[],chatHistoryEpoch:e.chatHistoryEpoch+1,primaryConversationId:void 0,focusChatInput:t.focusInput??!1,subagentTranscripts:{}}}function Je(e,t){return Pe(e,t)?e:{...e,messages:Fe(e,t.messages),messagesLoaded:!0}}function Ye(e,t){let n=t.conversationId?.trim()||void 0;return e.primaryConversationId===n?e:{...e,primaryConversationId:n}}function Xe(e,t){return{...e,queuedChatMessages:[...e.queuedChatMessages,t.message]}}function Ze(e,t){return{...e,queuedChatMessages:e.queuedChatMessages.filter(e=>e.id!==t.queuedMessageId)}}function Qe(e,t){let n=e.queuedChatMessages.filter(e=>e.id!==t.message.id),r=Math.min(Math.max(t.index,0),n.length),i=[...n];return i.splice(r,0,t.message),{...e,queuedChatMessages:i}}function $e(e,t){let n=t.conversationId?.trim()||void 0;return{...e,messages:Fe(e,[]),messagesLoaded:!0,chatHistoryEpoch:e.chatHistoryEpoch+1,primaryConversationId:n}}function et(e,t){return{...e,devServerToolSession:t.session}}function tt(e,t){return{...e,threadToolSessions:{...e.threadToolSessions,[t.session.threadId]:t.session}}}function nt(e,t){return{...e,threadCreationSummaries:{...e.threadCreationSummaries,[t.threadId]:t.message}}}function rt(e,t){let n=e.toolCallProgress[t.toolCallId];return{...e,toolCallProgress:{...e.toolCallProgress,[t.toolCallId]:{...n,...t.progress}}}}function k(e,t,n){let r=e.subagentTranscripts[t]??[];return{...e,subagentTranscripts:{...e.subagentTranscripts,[t]:r.concat(n)}}}function it(e,t){return k(e,t.toolCallId,[t.event])}function at(e,t){return k(e,t.toolCallId,t.events)}function ot(e,t){return{...e,pendingChatMessage:t.message}}function st(e,t){return{...e,pendingChatMessage:null}}function ct(e,t){return{...e,chatInputDrafts:{...e.chatInputDrafts,[t.threadId]:t.draft}}}function lt(e,t){return{...e,...v(),selectedThreadId:null,selectedProjectId:null,messages:[],messagesLoaded:!1,startingNewChatPaneIds:[],chatHistoryEpoch:e.chatHistoryEpoch+1,primaryConversationId:void 0,...ge()}}var ut={[m.SetMessages]:Je,[m.SetPrimaryConversationId]:Ye,[m.AddMessage]:Ie,[m.EnqueueChatMessage]:Xe,[m.RemoveQueuedChatMessage]:Ze,[m.RestoreQueuedChatMessage]:Qe,[m.ClearMessages]:$e,[m.UpdateMessage]:Le,[m.UpdateMessageCheckpointRef]:Re,[m.SetDevServerToolSession]:et,[m.SetThreadToolSession]:tt,[m.ClearThreadToolSession]:ze,[m.SetThreadCreationSummary]:nt,[m.ClearThreadCreationSummary]:Be,[m.UpdateToolCallProgress]:rt,[m.UpdateToolExecutionOutput]:Ve,[m.AppendToolExecutionOutput]:He,[m.AppendSubagentEvent]:it,[m.AppendSubagentEvents]:at,[m.ClearToolCallProgress]:Ue,[m.SetPendingChatMessage]:ot,[m.ClearPendingChatMessage]:st,[m.SetChatInputDraft]:ct,[m.ClearChatInputDraft]:We,[m.SetNewChatStarting]:Ge,[m.SelectThread]:Ke,[m.SelectProject]:qe,[m.ClearSelection]:lt};function dt(e,t){let n=ut[t.type];return n?n(e,t):null}var ft=c(`store.project`);function pt(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}function mt(e,t){return e.length===t.length&&e.every((e,n)=>e.threadId===t[n]?.threadId&&e.conversationId===t[n]?.conversationId&&e.isAwaitingHuman===t[n]?.isAwaitingHuman)}function ht(e,t,n){return e.some(e=>e.threadId===t&&e.conversationId===n)?e:[...e,{threadId:t,conversationId:n}]}function gt(e,t,n){return e?{id:t,provider:n,name:e.name??t,description:e.description??``,contextWindow:e.contextWindow,pricing:e.pricing,tarsk_use:e.tarsk_use,coding_index:e.coding_index,supportsImages:e.supportsImages}:{id:t,provider:n,name:t,description:``}}function _t(e,t){let n={...e};for(let e of t)for(let t of e.threads)t.model&&(n[t.threadId]=gt(n[t.threadId],t.model,t.modelProvider));return n}function vt(e,t){let n={...e};for(let e of t)for(let t of e.threads)for(let[e,r]of Object.entries(t.conversationModels??{}))n[e]||(n[e]=gt(void 0,r.model,r.modelProvider??void 0));return n}function yt(e,t){switch(t.type){case m.SetProjects:return{...e,projects:p(e.projects,t.projects),cloneRootPath:t.cloneRootPath===void 0?e.cloneRootPath:t.cloneRootPath,projectModelSelections:_t(e.projectModelSelections,t.projects),conversationModelSelections:vt(e.conversationModelSelections,t.projects)};case m.SetProjectsLoading:return{...e,projectsLoading:t.projectsLoading};case m.ClearUnreadAutomatedChat:return e.projects.some(e=>e.threads.some(e=>e.threadId===t.threadId&&e.hasUnreadAutomatedChat===!0))?{...e,projects:e.projects.map(e=>({...e,threads:e.threads.map(e=>e.threadId===t.threadId?{...e,hasUnreadAutomatedChat:!1}:e)}))}:e;default:return null}}function bt(e,t){return e?.id===t.id&&e?.provider===t.provider}function xt(e,t){switch(t.type){case m.SetProjectModel:{let n=t.conversationId??null,r=e.projectModelSelections[t.threadId],i=n?e.conversationModelSelections[n]:void 0,a=e.projects.some(e=>e.threads.some(e=>e.threadId===t.threadId&&e.model===t.model.id&&e.modelProvider===t.model.provider)),o=n===null||bt(i,t.model);return a&&bt(r,t.model)&&o?e:(ft.debug(`Set project model`,{threadId:t.threadId,conversationId:t.conversationId,model:{id:t.model.id,provider:t.model.provider}}),{...e,projects:e.projects.map(e=>{let n=e.threads.some(e=>e.threadId===t.threadId);return{...e,...t.conversationId&&n?{lastSelectedModel:t.model.id,lastSelectedModelProvider:t.model.provider}:{},threads:e.threads.map(e=>e.threadId===t.threadId?{...e,model:t.model.id,modelProvider:t.model.provider}:e)}}),projectModelSelections:{...e.projectModelSelections,[t.threadId]:t.model},conversationModelSelections:n?{...e.conversationModelSelections,[n]:t.model}:e.conversationModelSelections})}default:return null}}function St(e,t){switch(t.type){case m.SetProcessingThreads:{let n=t.processingRuns??e.processingRuns.filter(e=>t.threadIds.includes(e.threadId));return pt(e.processingThreadIds,t.threadIds)&&mt(e.processingRuns,n)?e:{...e,processingThreadIds:t.threadIds,processingRuns:n}}case m.AddProcessingThread:{let n=e.processingThreadIds.includes(t.threadId)?e.processingThreadIds:[...e.processingThreadIds,t.threadId],r=t.conversationId?.trim(),i=r?ht(e.processingRuns,t.threadId,r):e.processingRuns;return n===e.processingThreadIds&&i===e.processingRuns?e:{...e,processingThreadIds:n,processingRuns:i}}case m.RemoveProcessingThread:return{...e,processingThreadIds:e.processingThreadIds.filter(e=>e!==t.threadId),processingRuns:e.processingRuns.filter(e=>e.threadId!==t.threadId)};default:return null}}function Ct(e,t){switch(t.type){case m.AddCreatingProject:return{...e,projects:[...e.projects,{projectId:t.projectId,name:t.projectName,gitUrl:t.gitUrl,type:t.projectType,threads:[{threadId:t.threadId,title:`thread-1`,path:``,currentBranch:``}]}]};case m.AddCreatingThread:return{...e,projects:e.projects.map(e=>e.projectId===t.projectId?{...e,threads:[...e.threads,{threadId:t.threadId,title:t.title,path:``,currentBranch:``}]}:e)};case m.RemoveCreatingProject:return{...e,projects:e.projects.filter(e=>e.projectId!==t.projectId)};default:return null}}function wt(e,t){switch(t.type){case m.AddDeletingThread:return{...e,deletingThreadIds:e.deletingThreadIds.includes(t.threadId)?e.deletingThreadIds:[...e.deletingThreadIds,t.threadId]};case m.RemoveDeletingThread:return{...e,deletingThreadIds:e.deletingThreadIds.filter(e=>e!==t.threadId)};case m.AddDeletingProject:return{...e,deletingProjectIds:e.deletingProjectIds.includes(t.projectId)?e.deletingProjectIds:[...e.deletingProjectIds,t.projectId]};case m.RemoveDeletingProject:return{...e,deletingProjectIds:e.deletingProjectIds.filter(e=>e!==t.projectId)};default:return null}}function Tt(e,t){switch(t.type){case m.RemoveCreatingThread:return{...e,projects:e.projects.map(e=>e.projectId===t.projectId?{...e,threads:e.threads.filter(e=>e.threadId!==t.threadId)}:e)};case m.RemoveThread:return{...e,projects:e.projects.map(e=>e.projectId===t.projectId?{...e,threads:e.threads.filter(e=>e.threadId!==t.threadId)}:e)};case m.UpdateThreadTitle:return{...e,projects:e.projects.map(e=>e.projectId===t.projectId?{...e,threads:e.threads.map(e=>e.threadId===t.threadId?{...e,title:t.title}:e)}:e)};case m.UpdateChatTitle:return{...e,projects:e.projects.map(e=>e.projectId===t.projectId?{...e,threads:e.threads.map(e=>e.threadId===t.threadId?{...e,chatTitles:{...e.chatTitles,[t.paneId]:t.title}}:e)}:e)};default:return null}}function Et(e,t){switch(t.type){case m.MarkThreadCompleted:return{...e,completedThreadIds:e.completedThreadIds.includes(t.threadId)?e.completedThreadIds:[...e.completedThreadIds,t.threadId],completedThreadPaneIds:t.paneId===void 0?e.completedThreadPaneIds:{...e.completedThreadPaneIds,[t.threadId]:t.paneId},completedPaneIds:t.paneId===void 0||t.paneId===e.focusedPane||e.completedPaneIds.includes(t.paneId)?e.completedPaneIds:[...e.completedPaneIds,t.paneId]};case m.ClearThreadCompleted:return{...e,completedThreadIds:e.completedThreadIds.filter(e=>e!==t.threadId)};case m.ClearPaneCompleted:{let n=Object.entries(e.completedThreadPaneIds).filter(([,e])=>e===t.paneId).map(([e])=>e);return{...e,completedThreadIds:e.completedThreadIds.filter(e=>!n.includes(e)),completedThreadPaneIds:Object.fromEntries(Object.entries(e.completedThreadPaneIds).filter(([,e])=>e!==t.paneId)),completedPaneIds:e.completedPaneIds.filter(e=>e!==t.paneId)}}default:return null}}function Dt(e,t){return yt(e,t)??xt(e,t)??St(e,t)??Ct(e,t)??wt(e,t)??Tt(e,t)??Et(e,t)}function Ot(e){return e.projects.find(t=>t.projectId===e.selectedProjectId)}function kt(e){return Ot(e)?.threads.find(t=>t.threadId===e.selectedThreadId)?.path}function A(e){return e.type===`tool-call-group`}var At=91;function jt(e){return e>=65&&e<=90||e>=97&&e<=122}function Mt(e,t){let n=e.length-1;for(;n>=t&&jt(e.charCodeAt(n));)n--;return n>=t&&e.charCodeAt(n)===At?n:-1}function Nt(e,t){let n=t!==void 0&&t.labelResumeOffset<=e.length,r=n?t.labelResumeOffset:0,i=n?t.label:void 0,a=n?t.contentStart:0,o=-1,s=-1,c=/\[([A-Za-z]+)\]\s*/g;c.lastIndex=r;for(let t=c.exec(e);t!==null;t=c.exec(e))i=t[1],o=t.index,s=t.index+t[0].length,a=s;let l=e.length;s===e.length&&(l=o);let u=Mt(e,Math.max(r,s));return u!==-1&&(l=Math.min(l,u)),{label:i,contentStart:a,labelResumeOffset:l}}function Pt(e,t,n,r){try{let i=JSON.parse(e.slice(t,n+1));if(Array.isArray(i)){for(let e of i)if(e&&typeof e==`object`&&`type`in e){let t=e.type;(t===`tool-result`||t===`tool_use`)&&r.push(e)}}return!0}catch{return!1}}function Ft(e,t,n){let r=e?.openArray;if(!(!r||r.start<t||r.offset>n))return r}function It(e,t){let n=t!==void 0&&t.committedPos<=e,r=n?t.committedBlocks.slice():[],i=n?t.committedPos:0;return{blocks:r,pos:i,committedPos:i,committedCount:r.length,openArray:n?Ft(t,i,e):void 0}}function j(e,t){let n=t.trim();n&&e.push({type:`reasoning`,text:n})}function Lt(e,t){e.pos=t,e.committedPos=t,e.committedCount=e.blocks.length}function Rt(e,t){let n=t.openArray?.start??e.indexOf(`[`,t.pos);if(n===-1)return j(t.blocks,e.slice(t.pos)),!1;j(t.blocks,e.slice(t.pos,n));let r=t.openArray??Ut(n),i=Wt(e,r);return i===-1?(t.openArray=r,j(t.blocks,e.slice(n)),!1):(t.openArray=void 0,Pt(e,n,i,t.blocks)||j(t.blocks,e.slice(n,i+1)),Lt(t,i+1),!0)}function zt(e){let t=e.committedCount===e.blocks.length?e.blocks:e.blocks.slice(0,e.committedCount);return{blocks:e.blocks,committedBlocks:t,committedPos:e.committedPos,openArray:e.openArray}}function Bt(e,t){let n=It(e.length,t);for(;n.pos<e.length&&Rt(e,n););return zt(n)}function Vt(e,t){if(!e||typeof e!=`string`)return{blocks:null,scan:void 0};let n=e.trim();if(!n)return{blocks:null,scan:void 0};let r=Nt(n,t);if(r.label){let e=n.slice(r.contentStart);if(e)return{blocks:[{type:`reasoning`,text:e,label:r.label}],scan:{...r,committedBlocks:t?.committedBlocks??[],committedPos:t?.committedPos??0,openArray:t?.openArray}}}let{blocks:i,committedBlocks:a,committedPos:o,openArray:s}=Bt(n,t);return{blocks:i.length>0?i:null,scan:{...r,committedBlocks:a,committedPos:o,openArray:s}}}function Ht(e){return Vt(e).blocks}function Ut(e){return{start:e,offset:e,depth:0,inString:!1,escape:!1}}function Wt(e,t){let{depth:n,inString:r,escape:i}=t,a=t.offset;for(;a<e.length;a++){let o=e[a];if(r){i?i=!1:o===`\\`?i=!0:o===`"`&&(r=!1);continue}if(o===`"`){r=!0;continue}if(o===`[`)n++;else if(o===`]`&&(n--,n===0))return t.offset=a+1,t.depth=0,t.inString=!1,t.escape=!1,a}return t.offset=a,t.depth=n,t.inString=r,t.escape=i,-1}function Gt(e,t){return Wt(e,Ut(t))}function Kt(e,t=0){let n=[],r=t;for(;r<e.length;){for(;r<e.length&&/\s/.test(e.charAt(r));)r++;if(r>=e.length||e.charAt(r)!==`[`)break;let t=Gt(e,r);if(t===-1)break;try{let i=JSON.parse(e.slice(r,t+1));if(!Array.isArray(i))break;n.push(...M(i))}catch{break}r=t+1}return n.length===0?null:{blocks:n,nextIndex:r}}function M(e){return e.map(e=>{if(typeof e==`object`&&e&&!(`type`in e)){let t=e;if(t.reasoning)return{type:`reasoning`,text:typeof t.reasoning==`string`?t.reasoning:JSON.stringify(t.reasoning)};let n=t.text??t.content??t.answer;if(n)return{type:`text`,text:typeof n==`string`?n:JSON.stringify(n)}}return e})}function qt(e){return Array.isArray(e)?e.filter(e=>typeof e==`object`&&!!e&&typeof e.label==`string`&&typeof e.pattern==`string`&&(e.scope===`session`||e.scope===`project`)):[]}function Jt(e){if(e.type!==`long_running_confirmation`||typeof e.prompt!=`object`||e.prompt===null||typeof e.prompt.question!=`string`||!Array.isArray(e.prompt.options))return[];let t=e.prompt;return[{type:`long_running_confirmation`,prompt:{toolCallId:typeof t.toolCallId==`string`?t.toolCallId:void 0,question:t.question,options:t.options.filter(e=>typeof e==`string`),context:typeof t.context==`string`?t.context:void 0}}]}function Yt(e){if(e.type!==`shell_permission`||typeof e.shellPermission!=`object`||e.shellPermission===null||typeof e.shellPermission.command!=`string`)return[];let t=e.shellPermission;return[{type:`shell_permission`,prompt:{toolCallId:typeof t.toolCallId==`string`?t.toolCallId:`shell-permission`,command:t.command,source:t.source===`bash`||t.source===`skill_script`||t.source===`browser_js`?t.source:`bash`,wildcardOptions:qt(t.wildcardOptions)}}]}function Xt(e){if(e.type!==`seatbelt_escalation`||typeof e.seatbeltEscalation!=`object`||e.seatbeltEscalation===null)return[];let t=e.seatbeltEscalation;return typeof t.command==`string`?[{type:`seatbelt_escalation`,prompt:{toolCallId:typeof t.toolCallId==`string`?t.toolCallId:`seatbelt-escalation`,command:t.command,projectId:typeof t.projectId==`string`?t.projectId:``,scopes:[`once`,`project`,`session`]}}]:[]}function Zt(e){if(e.type!==`web_fetch_permission`||typeof e.webFetchPermission!=`object`||e.webFetchPermission===null||typeof e.webFetchPermission.hostname!=`string`)return[];let t=e.webFetchPermission;return[{type:`web_fetch_permission`,prompt:{toolCallId:typeof t.toolCallId==`string`?t.toolCallId:`web-fetch-permission`,hostname:t.hostname,url:typeof t.url==`string`?t.url:``,wildcardOptions:qt(t.wildcardOptions)}}]}function Qt(e){let t=[...Jt(e),...Yt(e),...Xt(e),...Zt(e)];if(t.length>0)return t;e.reasoning&&typeof e.reasoning==`string`&&t.push({type:`reasoning`,text:e.reasoning});let n=(typeof e.text==`string`?e.text:null)??(typeof e.content==`string`?e.content:null)??(typeof e.answer==`string`?e.answer:null);return n&&t.push({type:`text`,text:n}),t.length===0&&Object.keys(e).length>0&&t.push({type:`text`,text:JSON.stringify(e,null,2)}),t}function $t(e){return P(e)?.some(e=>e.type===`tool_use`||e.type===`tool-result`)??!1}var en=/^```+|^~~~+/;function tn(e){let t=e.indexOf(`{`),n=e.indexOf(`[`);return t===-1?n:n===-1?t:Math.min(t,n)}function N(e){return en.test(e.trimStart())}function nn(e,t){return!t||t.resumeOffset===0||t.resumeOffset>e?{offset:0,inFence:!1}:{offset:t.resumeOffset,inFence:t.inFence}}function rn(e,t,n){if(N(e))return{kind:`fence`,inFence:!n};if(n)return{kind:`skip`};let r=tn(e);if(r===-1)return{kind:`skip`};let i=t+r;return{kind:`json`,index:i,scan:{fixedIndex:i,resumeOffset:t,inFence:n}}}function an(e,t,n){let r=e.slice(t),i=n||N(r)?-1:tn(r);return{index:i===-1?-1:t+i,scan:{fixedIndex:-1,resumeOffset:t,inFence:n}}}function on(e,t){if(t&&t.fixedIndex>=0)return{index:t.fixedIndex,scan:t};let n=nn(e.length,t),r=n.offset,i=n.inFence;for(;;){let t=e.indexOf(`
|
|
2
2
|
`,r);if(t===-1)return an(e,r,i);let n=rn(e.slice(r,t),r,i);if(n.kind===`json`)return{index:n.index,scan:n.scan};n.kind===`fence`&&(i=n.inFence),r=t+1}}function sn(e){return on(e).index}function cn(e){try{let t=JSON.parse(e);return Array.isArray(t)?M(t):typeof t==`object`&&t?Qt(t):null}catch{return e.startsWith(`[`)?ln(e):null}}function ln(e){let t=Kt(e);if(!t)return null;let n=e.slice(t.nextIndex).trim();return n?[...t.blocks,{type:`text`,text:n}]:t.blocks}function un(e){let t=Math.max(e.lastIndexOf(`]`),e.lastIndexOf(`}`));if(t===-1)return null;let n=e.substring(0,t+1);try{let r=JSON.parse(n),i=Array.isArray(r)?M(r):Qt(r),a=e.substring(t+1).trim();return a&&i.push({type:`text`,text:a}),i}catch{return null}}function P(e){return e?dn(e,sn(e)):null}function dn(e,t){return e?hn(e,e.trim(),t):null}var fn={failedLength:-1,failedJsonStart:-1};function pn(e,t){return e.indexOf(`]`,t)!==-1||e.indexOf(`}`,t)!==-1}function mn(e,t,n){let r=e.trim();if(n&&n.failedLength>=0&&n.failedJsonStart===t&&n.failedLength<=r.length&&!pn(r,n.failedLength))return{blocks:null,scan:n};let i=e?hn(e,r,t):null;return{blocks:i,scan:i===null?{failedLength:r.length,failedJsonStart:t}:fn}}function hn(e,t,n){if(t.startsWith(`{`)||t.startsWith(`[`)){let e=cn(t);if(e)return e}let r=[];if(n===-1)return null;let i=e.slice(0,n).trim();i&&r.push({type:`text`,text:i});let a=e.slice(n),o=ln(a);if(o)return r.push(...o),r;let s=un(a);return s?(r.push(...s),r):null}function F(e){return e.type===`tool_use`}function I(e){return e.type===`tool-result`}function gn(e){return e.type===`text`}function L(e){return typeof e==`string`?e.replace(/\\n/g,`
|
|
3
3
|
`).replace(/✅/g,`✓`):``}function _n(e){let t=0;for(let n=e.length-1;n>=0;n--){let r=e[n];if(!r||!gn(r))break;t+=1}return t}function vn(e){let t=_n(e);return t===0?null:e.slice(e.length-t).filter(gn).map(e=>L(e.text).trim()).filter(e=>e.length>0).join(`
|
|
4
4
|
|
|
5
5
|
`).trim()||null}function yn(e){let t=P(e);return t?vn(t):L(e).trim()||null}var R=new WeakMap,bn=new WeakMap;function xn(e,t){let n=e.blocks.length;e.blocks.push(t),e.serializedBlocks.push(JSON.stringify(t)),t.type===`tool_use`?e.toolUseIndex.has(t.id)||e.toolUseIndex.set(t.id,n):t.type===`tool-result`&&(e.toolResultIndex.has(t.toolCallId)||e.toolResultIndex.set(t.toolCallId,n))}function Sn(e){return`[${e.join(`,`)}]`}function z(e,t){let n={blocks:e?e.blocks.slice():[],serializedBlocks:e?e.serializedBlocks.slice():[],toolUseIndex:e?new Map(e.toolUseIndex):new Map,toolResultIndex:e?new Map(e.toolResultIndex):new Map,serialized:``};for(let e of t){let t=e.type===`tool_use`?n.toolUseIndex.get(e.id):e.type===`tool-result`?n.toolResultIndex.get(e.toolCallId):void 0;t===void 0?xn(n,e):(n.blocks[t]=e,n.serializedBlocks[t]=JSON.stringify(e))}return n.serialized=Sn(n.serializedBlocks),n}function Cn(e){return z(void 0,e)}function wn(e){let t=bn.get(e);if(!(!t||e.chunks.length!==1||e.chunks[0]!==t.serialized))return t}function Tn(e){let t={type:`content`,chunks:[e.serialized]};return bn.set(t,e),R.set(t,{chunks:t.chunks,chunkCount:1,text:e.serialized,scan:void 0,parseScan:void 0,thinkingScan:void 0,blocks:e.blocks}),t}function En(e,t){let n={type:`content`,chunks:[e]};return R.set(n,{chunks:n.chunks,chunkCount:1,text:e,scan:void 0,parseScan:void 0,thinkingScan:void 0,blocks:t??(e.trim()?[{type:`text`,text:e}]:[])}),n}function Dn(e,t,n){let r=e[e.length-1];return r?.type===t?(r.chunks.push(n),[...e]):[...e,{type:t,chunks:[n]}]}function On(e){for(let t=e.length-1;t>=0;t--){let n=e[t];if(n){if(n.type===`content`)return t;if(n.type!==`thinking`)return-1}}return-1}function kn(e){for(let t=e.length-1;t>=0;t--)if(e[t]?.type===`content`)return t;return-1}function B(e){return e.some(e=>e.type===`tool_use`||e.type===`tool-result`)}function An(e){let t=new Set,n=new Set,r=[];for(let i=e.length-1;i>=0;i--){let a=e[i];if(a){if(a.type===`tool_use`){if(t.has(a.id))continue;t.add(a.id),r.push(a);continue}if(a.type===`tool-result`){if(n.has(a.toolCallId))continue;n.add(a.toolCallId),r.push(a);continue}r.push(a)}}return r.reverse(),r}function jn(e,t){let n=kn(e),r=P(t);if(n===-1)return[...e,En(t,r)];let i=e[n],a;if(i?.type===`content`&&r&&B(r)){let e=wn(i),t=e?.blocks??V(i);B(t)&&(a=Tn(z(e??Cn(t),r)))}return[...e.slice(0,n),a??En(t,r),...e.slice(n+1)]}function Mn(e,t){let n=P(t);if(!n||!B(n))return Dn(e,`content`,t);let r=On(e),i;if(r>=0){let t=e[r];t?.type===`content`&&(i=wn(t)??Cn(V(t)))}let a=Tn(z(i,n));return r>=0?[...e.slice(0,r),a,...e.slice(r+1)]:[...e,a]}function Nn(e){for(let t=e.length-1;t>=0;t--){let n=e[t];if(n.type===`content`)return n.chunks.join(``)}return``}function Pn(e,t){return[...e,{type:`long_running_confirmation`,prompt:t}]}function Fn(e,t){return[...e,{type:`shell_permission`,prompt:t}]}function In(e,t){return[...e,{type:`seatbelt_escalation`,prompt:t}]}function Ln(e,t){return[...e,{type:`web_fetch_permission`,prompt:t}]}function Rn(e,t,n){if(t.length<n)return!1;for(let r=0;r<n;r++)if(e[r]!==t[r])return!1;return!0}function V(e){let t=R.get(e),n=t?Rn(t.chunks,e.chunks,t.chunkCount):!1;if(t&&n&&e.chunks.length===t.chunkCount)return t.blocks;let r=t!==void 0&&n,i=r?t.text+e.chunks.slice(t.chunkCount).join(``):e.chunks.join(``),a,o,s,c;if(e.type===`thinking`){let e=Vt(i,r?t.thinkingScan:void 0);c=e.scan,a=e.blocks??[]}else{let e=on(i,r?t.scan:void 0);o=e.scan;let n=mn(i,e.index,r?t.parseScan:void 0);s=n.scan,a=n.blocks??(i.trim()?[{type:`text`,text:i}]:[])}return R.set(e,{chunks:e.chunks,chunkCount:e.chunks.length,text:i,scan:o,parseScan:s,thinkingScan:c,blocks:a}),a}function H(e){let t=[];for(let n of e){if(n.type===`long_running_confirmation`){t.push({type:`long_running_confirmation`,prompt:n.prompt});continue}if(n.type===`shell_permission`){t.push({type:`shell_permission`,prompt:n.prompt});continue}if(n.type===`seatbelt_escalation`){t.push({type:`seatbelt_escalation`,prompt:n.prompt});continue}if(n.type===`web_fetch_permission`){t.push({type:`web_fetch_permission`,prompt:n.prompt});continue}t.push(...V(n))}return An(t)}function U(e){return e.type===`thinking-group`}function W(e,t=!1){let n=[],r=[],i,a=()=>{r.length>0&&(n.push({type:`thinking-group`,text:r.join(`
|
|
6
6
|
|
|
7
|
-
`),label:i,isCurrentlyStreaming:!1}),r=[],i=void 0)};for(let t of e)if(t.type===`reasoning`&&`text`in t){let e=t;r.push(e.text),e.label&&(i=e.label)}else a(),n.push(t);if(a(),t&&n.length>0){let e=n[n.length-1];e.type===`thinking-group`&&(e.isCurrentlyStreaming=!0)}return n}function zn(e,t){let n=e>0?` (${
|
|
8
|
-
`).length}function Gn(e){let t=0,n=0;if(Array.isArray(e.replacements)){for(let r of e.replacements)if(r&&typeof r==`object`){let e=r;typeof e.newText==`string`&&(t+=q(e.newText)),typeof e.oldText==`string`&&(n+=q(e.oldText))}return{added:t,removed:n}}return typeof e.newText==`string`&&(t+=q(e.newText)),typeof e.oldText==`string`&&(n+=q(e.oldText)),{added:t,removed:n}}var Kn=new WeakMap;function qn(e){let t=Kn.get(e);if(t&&t.blockCount===e.length)return t;let n={blockCount:e.length,toolUsesById:new Map,resultToolCallIds:new Set,permissionCallIds:new Set};for(let t of e)F(t)?n.toolUsesById.has(t.id)||n.toolUsesById.set(t.id,t):I(t)?G.has(t.toolName)||n.resultToolCallIds.add(t.toolCallId):(t.type===`shell_permission`||t.type===`web_fetch_permission`||t.type===`long_running_confirmation`&&t.prompt.toolCallId)&&n.permissionCallIds.add(t.prompt.toolCallId);return Kn.set(e,n),n}function Jn(e){let t=typeof e.path==`string`&&e.path?e.path:null;return t?t.split(`/`).pop()??t:null}function Yn(e){let t=typeof e.description==`string`?e.description.trim():``;return t?`${t}…`:null}function Xn(e){return(typeof e.intention==`string`?e.intention.trim():``)||null}function Zn(e){let t=Xn(e);return t?`${t}…`:null}function Qn(e){let t=e.toLowerCase();return t===`run_js`||t===`run_web_worker`}function $n(e){return
|
|
7
|
+
`),label:i,isCurrentlyStreaming:!1}),r=[],i=void 0)};for(let t of e)if(t.type===`reasoning`&&`text`in t){let e=t;r.push(e.text),e.label&&(i=e.label)}else a(),n.push(t);if(a(),t&&n.length>0){let e=n[n.length-1];e.type===`thinking-group`&&(e.isCurrentlyStreaming=!0)}return n}function zn(e,t){let n=e>0?` (${u(e)} token${e===1?``:`s`})`:``;return t===`MCP`?`Connecting MCP servers...${n}`:`Thinking${n}`}function Bn(e){let t=W(e,!0),n=t[t.length-1];return!n||!U(n)||!n.isCurrentlyStreaming?null:zn(d(n.text),n.label)}var Vn=new Set([`todo`]),G=new Set([`todo`,`ask_user`]),Hn=new Map(s.map((e,t)=>[e.id,t]));function Un(e){if(U(e))return!1;switch(e.type){case`text`:return e.text.trim().length>0;case`shell_permission`:case`seatbelt_escalation`:case`web_fetch_permission`:case`long_running_confirmation`:return!0;case`tool_use`:return e.name===`ask_user`;case`tool-result`:return!1}}function Wn(e){return U(e)?!1:e.type===`tool_use`?!Vn.has(e.name):e.type===`tool-result`?!G.has(e.toolName):!1}function K(e){let t=[],n=[];function r(){n.some(Wn)?t.push({type:`tool-call-group`,items:n}):t.push(...n),n=[]}for(let i of e)Un(i)?(n.length>0&&r(),t.push(i)):n.push(i);return n.length>0&&r(),t}function q(e){return e.length===0?0:e.split(`
|
|
8
|
+
`).length}function Gn(e){let t=0,n=0;if(Array.isArray(e.replacements)){for(let r of e.replacements)if(r&&typeof r==`object`){let e=r;typeof e.newText==`string`&&(t+=q(e.newText)),typeof e.oldText==`string`&&(n+=q(e.oldText))}return{added:t,removed:n}}return typeof e.newText==`string`&&(t+=q(e.newText)),typeof e.oldText==`string`&&(n+=q(e.oldText)),{added:t,removed:n}}var Kn=new WeakMap;function qn(e){let t=Kn.get(e);if(t&&t.blockCount===e.length)return t;let n={blockCount:e.length,toolUsesById:new Map,resultToolCallIds:new Set,permissionCallIds:new Set};for(let t of e)F(t)?n.toolUsesById.has(t.id)||n.toolUsesById.set(t.id,t):I(t)?G.has(t.toolName)||n.resultToolCallIds.add(t.toolCallId):(t.type===`shell_permission`||t.type===`web_fetch_permission`||t.type===`long_running_confirmation`&&t.prompt.toolCallId)&&n.permissionCallIds.add(t.prompt.toolCallId);return Kn.set(e,n),n}function Jn(e){let t=typeof e.path==`string`&&e.path?e.path:null;return t?t.split(`/`).pop()??t:null}function Yn(e){let t=typeof e.description==`string`?e.description.trim():``;return t?`${t}…`:null}function Xn(e){return(typeof e.intention==`string`?e.intention.trim():``)||null}function Zn(e){let t=Xn(e);return t?`${t}…`:null}function Qn(e){let t=e.toLowerCase();return t===`run_js`||t===`run_web_worker`}function $n(e){return a(e.name,e.input)?i(`subagents`):r(e.name)}function er(e){return e.filter(e=>e===`subagents`).length}function tr(e,t){let n=e[0];return i(n!==void 0&&e.every(e=>e===n)?n:`other`).formatNeutral(t)}function J(e){return e.charAt(0).toUpperCase()+e.slice(1)}function nr(){return{categoryCounts:new Map,editedPaths:new Set,completedCommandBlocks:[],linesAdded:0,linesRemoved:0}}function rr(e){let t=[],n=new Map;for(let r of e)U(r)||(F(r)?t.push(r):I(r)&&n.set(r.toolCallId,r));return{toolUses:t,groupResults:n,groupToolUseIds:new Set(t.map(e=>e.id))}}function ir(e,t){let n=$n(e);t.categoryCounts.set(n.id,(t.categoryCounts.get(n.id)??0)+1),n.id===`commands`&&t.completedCommandBlocks.push(e);let r=e.name.toLowerCase();if(r===`edit`||r===`write`){let n=typeof e.input.path==`string`&&e.input.path?e.input.path:e.id;if(t.editedPaths.add(n),r===`edit`){let n=Gn(e.input);t.linesAdded+=n.added,t.linesRemoved+=n.removed}else typeof e.input.content==`string`&&(t.linesAdded+=q(e.input.content))}}function ar(e,t,n,r,i){let a=[],o=0,s=null;for(let c of e){if(Vn.has(c.name))continue;let e=t.has(c.id),l=r?.has(c.id)||n.resultToolCallIds.has(c.id);e?ir(c,i):l||(o+=1,a.push($n(c).id),s=c)}return{pendingCount:o,pendingCategoryIds:a,lastPending:s}}function or(e,t,n,r){let i=0;for(let a of e.values())if(!G.has(a.toolName)&&(a.isError===!0&&(i+=1),!t.has(a.toolCallId))){let e=n.toolUsesById.get(a.toolCallId);e?ir(e,r):r.categoryCounts.set(`other`,(r.categoryCounts.get(`other`)??0)+1)}return i}function sr(e,t){let n=[];for(let[r,i]of e)r===`other`||i===0||n.push({id:r,count:r===`files`?t.size:i});return n.sort((e,t)=>(Hn.get(e.id)??2**53-1)-(Hn.get(t.id)??2**53-1)),n}function cr(e,t,n,r){if(!e)return null;if(r.has(e.id))return`Awaiting permission · ${tr(n,t)}`;if(a(e.name,e.input))return Yn(e.input)??`${e.activeDisplayName??f(e.name)}…`;if(Qn(e.name))return Zn(e.input)??`${e.activeDisplayName??f(e.name)}…`;let i=e.activeDisplayName??f(e.name),o=Jn(e.input);return o?`${i} ${o}…`:`${i}…`}function lr(e){if(e.length!==1)return null;let t=e[0];return t&&Qn(t.name)?Xn(t.input):null}function ur(e){return e.toLowerCase()===`bash`}var dr=2e3,fr=/(?<!\d)(\d{1,3})(?:\.\d+)?%(?!\d)/g;function pr(e){if(!e)return null;let t=e.length>dr?e.slice(-2e3):e,n=null;for(let e of t.matchAll(fr)){let t=Number(e[1]);t>=0&&t<=100&&(n=t)}return n}function Y(e,t,n){let{toolUses:r,groupResults:i,groupToolUseIds:a}=rr(e),o=qn(t),s=o.permissionCallIds,c=nr(),{pendingCount:l,pendingCategoryIds:u,lastPending:d}=ar(r,i,o,n,c),f=or(i,a,o,c),p=sr(c.categoryCounts,c.editedPaths),m=c.editedPaths.size,h=cr(d,l,u,s),ee=lr(c.completedCommandBlocks),te=d&&ur(d.name)&&!s.has(d.id)?d.id:null;return{categories:p,distinctFiles:m,otherCount:c.categoryCounts.get(`other`)??0,pendingCount:l,pendingCategoryIds:u,linesAdded:c.linesAdded,linesRemoved:c.linesRemoved,errorCount:f,activeLabel:h,pendingCommandToolId:te,singleCommandTitle:ee}}function mr(e,t){let n=e.categories.slice(0,3),r=e.categories.slice(3).reduce((e,t)=>e+t.count,0),a=e.otherCount+r,s=n.map(t=>t.id===`commands`&&t.count===1&&e.singleCommandTitle?e.singleCommandTitle:i(t.id).formatPhrase(t.count)),c=``;s.length>0?(c=s.join(`, `),a>0&&(c+=`, and ${a} more`),c=J(c)):a>0&&(c=J(i(`other`).formatPhrase(a)));let l=er(e.pendingCategoryIds);if(l>0){let e=o(l);c=c?`${c} · ${e}`:J(e)}let u=t.showActive&&e.activeLabel!==null,d=e.pendingCount-l;if(!u&&d>0){let t=tr(e.pendingCategoryIds.filter(e=>e!==`subagents`),d);c=c?`${c} · ${t}`:J(t)}let f=e.linesAdded+e.linesRemoved>0?`+${e.linesAdded} −${e.linesRemoved}`:null,p=t.runningCommandProgress,m=u&&p!=null&&e.pendingCommandToolId!==null?`Running ${p}%…`:u?e.activeLabel:null;return{text:c,lineStats:f,errorCount:e.errorCount,activeLabel:m}}function hr(e){let t=K(W(e,!0));for(let n=t.length-1;n>=0;n--){let r=t[n];if(!A(r))continue;let i=Y(r.items,e);if(i.activeLabel===null)continue;if(i.pendingCommandToolId===null)return null;let a=r.items.find(e=>e.type===`tool_use`&&e.id===i.pendingCommandToolId)?.input.command;return typeof a==`string`?{toolCallId:i.pendingCommandToolId,command:a}:null}return null}function gr(e,t){let n=K(W(e,!0));for(let r=n.length-1;r>=0;r--){let i=n[r];if(!A(i))continue;let a=mr(Y(i.items,e),{showActive:!0,runningCommandProgress:t});if(a.activeLabel!==null)return a.activeLabel}return null}function _r(e){for(let t=e.length-1;t>=0;t--){let n=e[t];if(n.type===`long_running_confirmation`||n.type===`shell_permission`||n.type===`web_fetch_permission`)return t}return-1}function vr(e){return e.type===`content`||e.type===`thinking`?e.chunks.some(e=>e.trim().length>0):!1}function yr(e){let t=H(e),n=t.some(e=>F(e)&&e.name===`ask_user`),r=t.some(e=>I(e)&&e.toolName===`ask_user`);if(n&&!r)return!0;let i=_r(e);return i===-1?!1:!e.slice(i+1).some(vr)}function br(e){let t=H(e);return t.length===0?`...`:t.length===1&&t[0]?.type===`text`&&`text`in t[0]?t[0].text:JSON.stringify(t)}var xr=5e3;function Sr(){return{scan:{scannedText:``,processedOffset:0,inFence:!1,boundaryEnd:0},pendingStartedAt:null,revealed:!1,pendingText:``}}function Cr(e,t){t.startsWith(e.scannedText)||(e.scannedText=``,e.processedOffset=0,e.inFence=!1,e.boundaryEnd=0);let n=e.processedOffset;for(;;){let r=t.indexOf(`
|
|
9
9
|
`,n);if(r===-1)break;let i=t.slice(n,r);N(i)?e.inFence=!e.inFence:!e.inFence&&i.trim()===``&&(e.boundaryEnd=r+1),n=r+1}e.processedOffset=n,e.scannedText=t}function wr(e,t,n){Cr(e.scan,t);let r=t.slice(e.scan.boundaryEnd),i=t.slice(0,e.scan.boundaryEnd);return r===``?(e.pendingStartedAt=null,e.revealed=!1):e.pendingText!==``&&r.startsWith(e.pendingText)||(e.pendingStartedAt=n,e.revealed=!1),e.pendingText=r,!e.revealed&&e.pendingStartedAt!==null&&n-e.pendingStartedAt>=5e3&&(e.revealed=!0),{committedText:i,pendingText:r,revealed:e.revealed}}function Tr(e,t){switch(t.type){case m.SetStreaming:{let n=x(e,t),r=S(e,t);return C(e,n,r,{...b(e.threadStreamingStates,n,r),isStreaming:t.isStreaming})}case m.AppendStreamContent:{let n=x(e,t),r=S(e,t),i=b(e.threadStreamingStates,n,r);return C(e,n,r,{...i,streamingContent:i.streamingContent+t.content})}case m.SetStreamContent:{let n=x(e,t),r=S(e,t),i=b(e.threadStreamingStates,n,r),a=jn(i.streamingSegments,t.content);return C(e,n,r,{...i,streamingContent:t.content,streamingSegments:a})}case m.AppendStreamThinking:{let n=x(e,t),r=S(e,t),i=b(e.threadStreamingStates,n,r);return C(e,n,r,{...i,streamingThinking:i.streamingThinking+t.content})}case m.IncrementStreamEventCount:{let n=x(e,t),r=S(e,t),i=b(e.threadStreamingStates,n,r);return C(e,n,r,{...i,streamingEventCount:i.streamingEventCount+1})}case m.AppendStreamChunk:{let n=x(e,t),r=S(e,t),i=b(e.threadStreamingStates,n,r);return C(e,n,r,{...i,streamingSegments:t.segments,streamingContent:t.chunkType===`content`?i.streamingContent+t.content:i.streamingContent,streamingThinking:t.chunkType===`thinking`?i.streamingThinking+t.content:i.streamingThinking})}case m.SetStreamModel:{let n=x(e,t),r=S(e,t);return C(e,n,r,{...b(e.threadStreamingStates,n,r),streamingModel:t.model})}case m.SetStreamAgentMode:{let n=x(e,t),r=S(e,t);return C(e,n,r,{...b(e.threadStreamingStates,n,r),streamingAgentMode:t.mode})}case m.SetStreamGoalRun:{let n=x(e,t),r=S(e,t);return C(e,n,r,{...b(e.threadStreamingStates,n,r),streamingGoalRun:!0})}case m.SetContextUsage:{let n=x(e,t),r=S(e,t);return C(e,n,r,{...b(e.threadStreamingStates,n,r),contextUsage:t.contextUsage})}case m.ResetStream:return C(e,x(e,t),S(e,t),v(),!0);case m.StopStream:{let n=x(e,t),r=S(e,t);return C(e,n,r,{...b(e.threadStreamingStates,n,r),isStreaming:!1,streamingGoalRun:!1})}default:return null}}function X(e,t){return e.terminalStates[t]??he()}function Er(e,t){switch(t.type){case m.AppendCommandOutput:return{...e,commandOutput:e.commandOutput+t.content};case m.SetRunningCommand:return{...e,isRunningCommand:t.isRunning};case m.ClearCommandOutput:return{...e,commandOutput:``};case m.ToggleTerminal:{let n=X(e,t.threadId);return{...e,terminalStates:{...e.terminalStates,[t.threadId]:{...n,open:!n.open}}}}case m.SetTerminalOpen:{let n=t.threadId??`default`,r=X(e,n);return{...e,terminalStates:{...e.terminalStates,[n]:{...r,open:t.open}}}}case m.QueueTerminalCommand:{let n=X(e,t.threadId);return{...e,terminalStates:{...e.terminalStates,[t.threadId]:{...n,queuedCommand:t.command,queuedRelativeFolder:t.relativeFolder??null,open:!0}}}}case m.ClearQueuedTerminalCommand:{let n=X(e,t.threadId);return{...e,terminalStates:{...e.terminalStates,[t.threadId]:{...n,queuedCommand:null}}}}case m.AppendTerminalLine:{let n=t.threadId??`default`,r=X(e,n);return{...e,terminalStates:{...e.terminalStates,[n]:{...r,outputLines:[...r.outputLines,t.line]}}}}case m.ClearTerminalOutput:{let n=t.threadId??`default`,r=X(e,n);return{...e,terminalStates:{...e.terminalStates,[n]:{...r,outputLines:[]}}}}case m.SetTerminalHeight:{let n=X(e,t.threadId);return{...e,terminalStates:{...e.terminalStates,[t.threadId]:{...n,height:t.height}}}}case m.SetTerminalCwd:{let n=X(e,t.threadId);return{...e,terminalStates:{...e.terminalStates,[t.threadId]:{...n,cwd:t.cwd}}}}case m.SetTerminalRunning:{let n=X(e,t.threadId);return{...e,terminalStates:{...e.terminalStates,[t.threadId]:{...n,isRunning:t.isRunning}}}}case m.SetTerminalHistory:{let n=X(e,t.threadId);return{...e,terminalStates:{...e.terminalStates,[t.threadId]:{...n,history:t.history}}}}case m.SetTerminalHistoryIndex:{let n=X(e,t.threadId);return{...e,terminalStates:{...e.terminalStates,[t.threadId]:{...n,historyIndex:t.index}}}}default:return null}}function Dr(e,t){switch(t.type){case m.ToggleSidebar:return{...e,sidebarOpen:!e.sidebarOpen};case m.OpenSidebar:return e.sidebarOpen?e:{...e,sidebarOpen:!0};case m.CloseSidebar:return e.sidebarOpen?{...e,sidebarOpen:!1}:e;case m.OpenProjectPanel:return{...e,projectPanelView:`actions`,projectPanelProjectId:t.projectId};case m.CloseProjectPanel:return{...e,projectPanelView:`projects`,projectPanelProjectId:null};case m.SetCreatingProject:return{...e,isCreatingProject:t.isCreating};case m.SetGitAuthRequest:return{...e,gitAuthRequest:t.request};case m.ConfigUpdated:return{...e,configUpdatedAt:Date.now()};case m.FocusChatInput:return{...e,focusChatInput:!0};case m.ClearFocusChatInput:return{...e,focusChatInput:!1};case m.SetDiffComments:return{...e,diffComments:{...e.diffComments,[t.threadId]:t.comments}};case m.SetRunCommandSaved:return e.savedRunCommandProjectId===t.projectId?e:{...e,savedRunCommandProjectId:t.projectId};case m.ClearRunCommandSaved:return e.savedRunCommandProjectId===null?e:{...e,savedRunCommandProjectId:null};default:return null}}var Or=[Tr,re,dt,Ne,Dt,Er,Dr];function kr(e,t){for(let n of Or){let r=n(e,t);if(r!==null)return r}return e}var Ar=new Set([m.AppendStreamChunk,m.IncrementStreamEventCount,m.SetStreamModel,m.AppendStreamContent,m.AppendStreamThinking,m.SetStreamContent,m.AppendSubagentEvent,m.AppendToolExecutionOutput,m.UpdateToolCallProgress,m.UpdateToolExecutionOutput]);function Z(e){return`${`threadId`in e&&typeof e.threadId==`string`?e.threadId:``}:${`paneId`in e&&typeof e.paneId==`string`?e.paneId:``}`}function jr(){return{appendChunkByPane:new Map,eventCountByPane:new Map,modelByPane:new Map,contentByPane:new Map,thinkingByPane:new Map,setContentByPane:new Map,lastSegmentActionByPane:new Map,toolProgressById:new Map,toolOutputById:new Map,subagentEventsByToolCallId:new Map,other:[]}}function Mr(e,t){let n=Z(t),r=e.appendChunkByPane.get(n);if(!r){e.appendChunkByPane.set(n,{thinkingContent:t.chunkType===`thinking`?t.content:``,contentContent:t.chunkType===`content`?t.content:``,lastAction:t});return}t.chunkType===`thinking`?r.thinkingContent+=t.content:t.chunkType===`content`&&(r.contentContent+=t.content),r.lastAction=t}function Nr(e,t){let n=Z(t),r=e.get(n);if(!r){e.set(n,{value:t.content,last:t});return}r.value+=t.content,r.last=t}function Pr(e){let t=jr();for(let n of e)switch(n.type){case m.AppendStreamChunk:Mr(t,n),t.lastSegmentActionByPane.set(Z(n),`append-chunk`);break;case m.IncrementStreamEventCount:t.eventCountByPane.set(Z(n),n);break;case m.SetStreamModel:t.modelByPane.set(Z(n),n);break;case m.AppendStreamContent:Nr(t.contentByPane,n);break;case m.AppendStreamThinking:Nr(t.thinkingByPane,n);break;case m.SetStreamContent:t.setContentByPane.set(Z(n),n),t.lastSegmentActionByPane.set(Z(n),`set-content`);break;case m.UpdateToolCallProgress:t.toolProgressById.set(n.toolCallId,n);break;case m.UpdateToolExecutionOutput:t.toolOutputById.set(n.toolCallId,n);break;case m.AppendSubagentEvent:{let e=t.subagentEventsByToolCallId.get(n.toolCallId);e?e.push(n.event):t.subagentEventsByToolCallId.set(n.toolCallId,[n.event]);break}default:t.other.push(n);break}return t}function Fr(e,t,n){for(let{value:r,last:i}of t.values())i.type===n&&e.push({...i,content:r})}function Ir(e){let t=[],{thinkingContent:n,contentContent:r,lastAction:i}=e;return n&&t.push({...i,chunkType:`thinking`,content:n,segments:i.segments}),r&&t.push({...i,chunkType:`content`,content:r,segments:i.segments}),!n&&!r&&t.push(i),t}function Lr(e,t){let n=new Set([...t.setContentByPane.keys(),...t.appendChunkByPane.keys()]);for(let r of n){let n=t.setContentByPane.get(r),i=t.appendChunkByPane.get(r),a=i?Ir(i):[];t.lastSegmentActionByPane.get(r)===`set-content`?(e.push(...a),n&&e.push(n)):(n&&e.push(n),e.push(...a))}}function Rr(e){let t=[];for(let n of e.modelByPane.values())t.push(n);for(let n of e.eventCountByPane.values())t.push(n);Fr(t,e.contentByPane,m.AppendStreamContent),Fr(t,e.thinkingByPane,m.AppendStreamThinking),Lr(t,e);for(let n of e.toolProgressById.values())t.push(n);for(let n of e.toolOutputById.values())t.push(n);for(let[n,r]of e.subagentEventsByToolCallId)t.push({type:m.AppendSubagentEvents,toolCallId:n,events:r});return t.push(...e.other),t}function zr(e){return e.length<=1?e:Rr(Pr(e))}function Br(e=ee){let t=e,n=new Set,r=0,i=[];function a(){return t}function o(){for(let e of n)e()}function s(e){let n=kr(t,e);n!==t&&(t=n)}function c(){if(r=0,i.length===0)return;let e=i.splice(0,i.length);for(let t of zr(e))s(t);o()}function l(e){if(Ar.has(e.type)){i.push(e),r===0&&(r=requestAnimationFrame(c));return}i.length>0&&(r!==0&&(cancelAnimationFrame(r),r=0),c()),s(e),o()}function u(e){return n.add(e),function(){n.delete(e)}}return{getState:a,dispatch:l,subscribe:u}}var Vr=t(),Q=e(n(),1),Hr=(0,Q.createContext)(null);function $(){let e=(0,Q.useContext)(Hr);if(!e)throw Error(`useAppStore must be used within an AppStoreContext.Provider`);return e}function Ur(e){let t=(0,Vr.c)(3),n=$(),r;t[0]!==e||t[1]!==n?(r=function(){return e(n.getState())},t[0]=e,t[1]=n,t[2]=r):r=t[2];let i=r;return(0,Q.useSyncExternalStore)(n.subscribe,i,i)}function Wr(){return $().dispatch}function Gr(e){let t=(0,Vr.c)(8),n=Wr(),r;t[0]===e?r=t[1]:(r=t=>(e?t.terminalStates[e]:void 0)??te,t[0]=e,t[1]=r);let i=Ur(r),a;t[2]!==n||t[3]!==e?(a=t=>{e&&n({...t,threadId:e})},t[2]=n,t[3]=e,t[4]=a):a=t[4];let o=a,s;return t[5]!==o||t[6]!==i?(s={terminalState:i,dispatch:o},t[5]=o,t[6]=i,t[7]=s):s=t[7],s}export{oe as $,jn as A,A as B,V as C,Pn as D,Dn as E,F,Te as G,kt as H,L as I,b as J,y as K,$t as L,Ln as M,yn as N,Mn as O,I as P,ue as Q,P as R,An as S,H as T,we as U,Ot as V,Ce as W,pe as X,fe as Y,ce as Z,Y as _,Gr as a,W as b,wr as c,yr as d,ne as et,pr as f,K as g,gr as h,$ as i,Fn as j,In as k,Sr as l,hr as m,Wr as n,h as nt,Br as o,mr as p,ae as q,Ur as r,xr as s,Hr as t,m as tt,br as u,zn as v,Nn as w,U as x,Bn as y,Ht as z};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{
|
|
1
|
+
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,o as n,t as r}from"./react-vendor-Ee0-5T4I.js";import{Wt as i}from"./dist-FJzwWcMv.js";import{t as a}from"./utils-uGptTPGm.js";var o=t(),s=e(n(),1),c=r(),l=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,s;n[0]===e?(r=n[1],s=n[2]):({className:r,...s}=e,n[0]=e,n[1]=r,n[2]=s);let l;n[3]===r?l=n[4]:(l=a(`w-full caption-bottom`,i.body,r),n[3]=r,n[4]=l);let u;return n[5]!==s||n[6]!==t||n[7]!==l?(u=(0,c.jsx)(`div`,{className:`relative w-full overflow-auto`,children:(0,c.jsx)(`table`,{ref:t,className:l,...s})}),n[5]=s,n[6]=t,n[7]=l,n[8]=u):u=n[8],u});l.displayName=`Table`;var u=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let s;n[3]===r?s=n[4]:(s=a(`[&_tr]:border-b`,r),n[3]=r,n[4]=s);let l;return n[5]!==i||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`thead`,{ref:t,className:s,...i}),n[5]=i,n[6]=t,n[7]=s,n[8]=l):l=n[8],l});u.displayName=`TableHeader`;var d=s.forwardRef((e,t)=>{let n=(0,o.c)(7),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;return n[3]!==r||n[4]!==i||n[5]!==t?(a=(0,c.jsx)(`tbody`,{ref:t,className:r,...i}),n[3]=r,n[4]=i,n[5]=t,n[6]=a):a=n[6],a});d.displayName=`TableBody`;var f=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let s;n[3]===r?s=n[4]:(s=a(`border-t font-medium [&>tr]:last:border-b-0`,r),n[3]=r,n[4]=s);let l;return n[5]!==i||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`tfoot`,{ref:t,className:s,...i}),n[5]=i,n[6]=t,n[7]=s,n[8]=l):l=n[8],l});f.displayName=`TableFooter`;var p=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let s;n[3]===r?s=n[4]:(s=a(`transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted`,r),n[3]=r,n[4]=s);let l;return n[5]!==i||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`tr`,{ref:t,className:s,...i}),n[5]=i,n[6]=t,n[7]=s,n[8]=l):l=n[8],l});p.displayName=`TableRow`;var m=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let s;n[3]===r?s=n[4]:(s=a(`h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0`,r),n[3]=r,n[4]=s);let l;return n[5]!==i||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`th`,{ref:t,className:s,...i}),n[5]=i,n[6]=t,n[7]=s,n[8]=l):l=n[8],l});m.displayName=`TableHead`;var h=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let s;n[3]===r?s=n[4]:(s=a(`p-4 align-middle [&:has([role=checkbox])]:pr-0`,r),n[3]=r,n[4]=s);let l;return n[5]!==i||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`td`,{ref:t,className:s,...i}),n[5]=i,n[6]=t,n[7]=s,n[8]=l):l=n[8],l});h.displayName=`TableCell`;var g=s.forwardRef((e,t)=>{let n=(0,o.c)(9),r,s;n[0]===e?(r=n[1],s=n[2]):({className:r,...s}=e,n[0]=e,n[1]=r,n[2]=s);let l;n[3]===r?l=n[4]:(l=a(i.caption,`mt-4`,r),n[3]=r,n[4]=l);let u;return n[5]!==s||n[6]!==t||n[7]!==l?(u=(0,c.jsx)(`caption`,{ref:t,className:l,...s}),n[5]=s,n[6]=t,n[7]=l,n[8]=u):u=n[8],u});g.displayName=`TableCaption`;export{u as a,m as i,d as n,p as o,h as r,l as t};
|