tarsk 0.5.70 → 0.5.72
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 +76443 -75147
- package/dist/public/assets/Combination-lwI_j-mU.js +41 -0
- package/dist/public/assets/account-view-C_WBVXA3.js +1 -0
- package/dist/public/assets/alert-dialog-FQ5_FqBX.js +7 -0
- package/dist/public/assets/api-ODizoHnY.js +2 -0
- package/dist/public/assets/async-error-boundary-DCDTsNTO.js +1 -0
- package/dist/public/assets/async-loading-fallback-C173aA9v.js +1 -0
- package/dist/public/assets/browser-overlay-block-CiDtkfup.js +1 -0
- package/dist/public/assets/browser-tab-Cl9d7ESj.js +12 -0
- package/dist/public/assets/button-sfGyFWfz.js +1 -0
- package/dist/public/assets/card-D5k0GHxM.js +1 -0
- package/dist/public/assets/chat-dock-context-DIyMsJHM.js +1 -0
- package/dist/public/assets/chunk-QFMPRPBF-COsSkB7x.js +3 -0
- package/dist/public/assets/commit-dialog-Bmh1QdHK.js +1 -0
- package/dist/public/assets/commit-error-dialog-Dpu8C-0w.js +1 -0
- package/dist/public/assets/commit-method-fields-CYzy7rmY.js +1 -0
- package/dist/public/assets/context-menu-Bo0OMC7-.js +1 -0
- package/dist/public/assets/conversation-history-view-COFXqD0e.js +1 -0
- package/dist/public/assets/create-project-dialog-DQ4AbwQP.js +6 -0
- package/dist/public/assets/create-project-workspace-BiRMezO9.js +1 -0
- package/dist/public/assets/create-repo-dialog-CYiCHWgi.js +1 -0
- package/dist/public/assets/delete-confirm-dialog-B99gEJN8.js +1 -0
- package/dist/public/assets/dialog-CP2cYR59.js +1 -0
- package/dist/public/assets/diff-view-Cnuntc3l.js +4 -0
- package/dist/public/assets/dist-BZvmHCxP.js +5 -0
- package/dist/public/assets/dist-CSssbxDI.js +1 -0
- package/dist/public/assets/dist-CWnEmdyL.js +1 -0
- package/dist/public/assets/dist-CWq9XRXF.js +1 -0
- package/dist/public/assets/dist-DIjomljy.js +1 -0
- package/dist/public/assets/dist-DiMgghKn.js +1 -0
- package/dist/public/assets/dist-DjKXDRW7.js +1 -0
- package/dist/public/assets/dist-DrpdKPSI.js +1 -0
- package/dist/public/assets/dist-OixawqbU.js +1 -0
- package/dist/public/assets/dist-ZlK7I-y-.js +2 -0
- package/dist/public/assets/dist-mdooLpmq.js +1 -0
- package/dist/public/assets/explorer-tab-context-BxUVwWQQ.js +1 -0
- package/dist/public/assets/explorer-tab-view-BoCoREoE.js +2 -0
- package/dist/public/assets/explorer-tree-DvD1-WW3.js +1 -0
- package/dist/public/assets/explorer-view-B4WJUy7s.js +75 -0
- package/dist/public/assets/git-history-dialog-DHdzijZS.js +1 -0
- package/dist/public/assets/index-Bmkj1Qwa.js +3380 -0
- package/dist/public/assets/index-DPMRI86E.css +1 -0
- package/dist/public/assets/main-tab-context-Byl1LybL.js +1 -0
- package/dist/public/assets/markdown-renderer-Dx9-Ljv0.js +8 -0
- package/dist/public/assets/mcp-server-card-DPNG9Up7.js +1 -0
- package/dist/public/assets/merged-pr-dialog-CEvS2z8D.js +1 -0
- package/dist/public/assets/model-list-controls-ChoemIJa.js +1 -0
- package/dist/public/assets/{monaco-D1hpqXQ0.js → monaco-lJcjGRXq.js} +189 -199
- package/dist/public/assets/monaco-setup-DU2h1v3K.js +11 -0
- package/dist/public/assets/onboarding-dialog-DCull5p_.js +1 -0
- package/dist/public/assets/pending-changes-Bn-0ak1d.js +1 -0
- package/dist/public/assets/project-env-vars-view-DTGwl4wr.js +1 -0
- package/dist/public/assets/project-model-aliases-view-CEDz_6NW.js +1 -0
- package/dist/public/assets/project-settings-view-DniUno1i.js +1 -0
- package/dist/public/assets/project-tools-view-DknCaJu_.js +1 -0
- package/dist/public/assets/providers-list-view-D_n1Ai6S.js +1 -0
- package/dist/public/assets/pull-request-dialog-BkQBaJkw.js +1 -0
- package/dist/public/assets/pull-with-changes-dialog-rKmqSi73.js +1 -0
- package/dist/public/assets/push-before-pr-dialog-BeEx6Po_.js +1 -0
- package/dist/public/assets/query-keys-5QPW6Dv-.js +1 -0
- package/dist/public/assets/radio-group-CU59hGiA.js +1 -0
- package/dist/public/assets/react-vendor-Ee0-5T4I.js +9 -0
- package/dist/public/assets/scenic-chrome-CbN3vum7.js +1 -0
- package/dist/public/assets/scroll-area-nbNFO91g.js +1 -0
- package/dist/public/assets/settings-general-view-CVHlxpTM.js +1 -0
- package/dist/public/assets/settings-instructions-view-Bpx_dUaJ.js +1 -0
- package/dist/public/assets/settings-list-PMi8ZniW.js +1 -0
- package/dist/public/assets/settings-logs-view-64Aq1hEw.js +5 -0
- package/dist/public/assets/settings-mcp-servers-view-B84c4h47.js +5 -0
- package/dist/public/assets/settings-models-view-DdRC4YXo.js +1 -0
- package/dist/public/assets/settings-rules-view-CGLh95Ta.js +8 -0
- package/dist/public/assets/settings-skills-view-DeVnXDl-.js +3 -0
- package/dist/public/assets/settings-slack-view-OFNrG_DW.js +1 -0
- package/dist/public/assets/settings-slash-commands-view-DOo0BimH.js +1 -0
- package/dist/public/assets/settings-statistics-view-DpaSoVqG.js +1 -0
- package/dist/public/assets/settings-storage-view-DlyXWB__.js +1 -0
- package/dist/public/assets/settings-subagents-view-D7o69YzB.js +2 -0
- package/dist/public/assets/settings-system-prompt-view-BFGfrXfe.js +1 -0
- package/dist/public/assets/settings-view-Dw1Zh2Qn.js +2 -0
- package/dist/public/assets/skeleton-DvLd14RU.js +1 -0
- package/dist/public/assets/sorting-DqwxPMRN.js +1 -0
- package/dist/public/assets/store-Be_7VK0D.js +8 -0
- package/dist/public/assets/suspense-resource-DnYnmTbs.js +1 -0
- package/dist/public/assets/switch-pIBaqatj.js +1 -0
- package/dist/public/assets/table-B2TDbGGl.js +1 -0
- package/dist/public/assets/tasks-view-FR7c1qFr.js +2 -0
- package/dist/public/assets/{terminal-panel-ozKXkKxm.js → terminal-panel-DBZpuMz9.js} +3 -3
- package/dist/public/assets/toggle-group-BiUqOiP6.js +1 -0
- package/dist/public/assets/tooltip-B6ziVyTv.js +1 -0
- package/dist/public/assets/{use-active-dock-panel-instance-CN8Djesu.js → use-active-dock-panel-instance-CcCdDHzX.js} +1 -1
- package/dist/public/assets/use-browser-overlay-block-DyprQSIG.js +1 -0
- package/dist/public/assets/use-deferred-search-Dgxosq55.js +1 -0
- package/dist/public/assets/use-installed-ai-files-BNrsyACe.js +1 -0
- package/dist/public/assets/use-open-chat-dock-panel-D1D5bnsL.js +1 -0
- package/dist/public/assets/use-settings-page-loading-BTySlInF.js +1 -0
- package/dist/public/assets/use-suspense-resource-Dkz6ddFN.js +1 -0
- package/dist/public/assets/use-toast-xpb5jNtN.js +1 -0
- package/dist/public/assets/useInfiniteQuery-DUeUxDcu.js +1 -0
- package/dist/public/assets/utils-CT-Dw22R.js +1 -0
- package/dist/public/assets/{web-DdKg_e2t.js → web-C5UYr_H-.js} +1 -1
- package/dist/public/assets/{web-DUuz6a51.js → web-DaSLtaQ7.js} +1 -1
- package/dist/public/assets/{web-BdMnTk6x.js → web-Rx_XWVAQ.js} +1 -1
- package/dist/public/assets/{web-Brg1tgLR.js → web-iwWEZ1P2.js} +1 -1
- package/dist/public/index.html +39 -16
- package/dist/recommended-models.txt +2 -2
- package/package.json +3 -4
- package/dist/public/assets/account-view-B3-h2Omm.js +0 -1
- package/dist/public/assets/alert-dialog-hMK0ERPv.js +0 -1
- package/dist/public/assets/async-error-boundary-Ca8lx8YM.js +0 -1
- package/dist/public/assets/browser-tab-C6INAmPZ.js +0 -12
- package/dist/public/assets/card-BDQUHsPD.js +0 -1
- package/dist/public/assets/chat-dock-context-CjVDawH_.js +0 -1
- package/dist/public/assets/commit-dialog-ClrhP7Jd.js +0 -1
- package/dist/public/assets/commit-error-dialog-Clt0BgiE.js +0 -1
- package/dist/public/assets/commit-method-fields-BwX9cAYJ.js +0 -1
- package/dist/public/assets/context-menu-C5sSYyMw.js +0 -1
- package/dist/public/assets/conversation-history-view-CcBBgh8V.js +0 -1
- package/dist/public/assets/create-project-dialog-CPz95RZY.js +0 -6
- package/dist/public/assets/create-repo-dialog-CUm5YAtV.js +0 -1
- package/dist/public/assets/delete-confirm-dialog-CUm3m7WO.js +0 -1
- package/dist/public/assets/diff-view-BJga_mCE.js +0 -4
- package/dist/public/assets/explorer-tab-context-BdjTEbFh.js +0 -1
- package/dist/public/assets/explorer-tab-view-D9bH6cb1.js +0 -2
- package/dist/public/assets/explorer-tree-Bciwq7MW.js +0 -1
- package/dist/public/assets/explorer-view-Ufv--EPU.js +0 -75
- package/dist/public/assets/git-history-dialog-NdDkNMAP.js +0 -1
- package/dist/public/assets/index-Cndc50ux.css +0 -1
- package/dist/public/assets/index-CsUbYVa9.js +0 -3359
- package/dist/public/assets/interactive-BrHVRHmQ.js +0 -21
- package/dist/public/assets/main-tab-context-zQSuRQQG.js +0 -1
- package/dist/public/assets/mcp-server-card-CzXVgu1Z.js +0 -1
- package/dist/public/assets/merged-pr-dialog-ClxYJI_m.js +0 -1
- package/dist/public/assets/model-list-controls-KE0f0BLj.js +0 -1
- package/dist/public/assets/monaco-setup-Bpe6FBYw.js +0 -1
- package/dist/public/assets/onboarding-DTF0L4Nt.js +0 -46
- package/dist/public/assets/project-env-vars-view-xuiGkrnJ.js +0 -1
- package/dist/public/assets/project-model-aliases-view-BdbzKmYL.js +0 -1
- package/dist/public/assets/project-settings-view-CuwlpN98.js +0 -1
- package/dist/public/assets/project-tools-view-kZysTxYq.js +0 -1
- package/dist/public/assets/providers-list-view-BF3ctCjJ.js +0 -1
- package/dist/public/assets/pull-request-dialog-BC_tPcL-.js +0 -1
- package/dist/public/assets/pull-with-changes-dialog-CaOxy8gu.js +0 -1
- package/dist/public/assets/push-before-pr-dialog-GZEUiZUR.js +0 -1
- package/dist/public/assets/react-vendor-CCZMLxmy.js +0 -22
- package/dist/public/assets/settings-general-view-CscBURgS.js +0 -1
- package/dist/public/assets/settings-instructions-view-DcmFP_43.js +0 -1
- package/dist/public/assets/settings-list-XkmhqNbT.js +0 -1
- package/dist/public/assets/settings-logs-view-CcjSlyGf.js +0 -5
- package/dist/public/assets/settings-mcp-servers-view-dtuAjs13.js +0 -5
- package/dist/public/assets/settings-models-view-BxcooRk0.js +0 -1
- package/dist/public/assets/settings-rules-view-C-ykSCar.js +0 -8
- package/dist/public/assets/settings-skills-view-B3mgDInQ.js +0 -3
- package/dist/public/assets/settings-slack-view-CppRZhMV.js +0 -1
- package/dist/public/assets/settings-slash-commands-view-DTjTThgi.js +0 -1
- package/dist/public/assets/settings-statistics-view-B88qkfOC.js +0 -1
- package/dist/public/assets/settings-storage-view-DR7vf1Zh.js +0 -1
- package/dist/public/assets/settings-subagents-view-B7vHT4_J.js +0 -2
- package/dist/public/assets/settings-system-prompt-view-D5fjsQT6.js +0 -1
- package/dist/public/assets/settings-view-DOMStvOg.js +0 -2
- package/dist/public/assets/skeleton-CJSNEi3C.js +0 -1
- package/dist/public/assets/store-B_cK-gsT.js +0 -8
- package/dist/public/assets/table-Cb2C1rQy.js +0 -1
- package/dist/public/assets/tasks-view-KcH0lX_t.js +0 -2
- package/dist/public/assets/thread-tool-blocks-D9HUkPHB.js +0 -1
- package/dist/public/assets/ui-components-D63KPVFX.js +0 -1
- package/dist/public/assets/use-deferred-search-0sV7mSzX.js +0 -1
- package/dist/public/assets/use-installed-ai-files-Bx9lPbQB.js +0 -1
- package/dist/public/assets/use-settings-page-loading-BU2CDnfE.js +0 -1
- package/dist/public/assets/use-suspense-resource-CExc4Svq.js +0 -1
- package/dist/public/assets/use-toast-hxHsVv6a.js +0 -1
- package/dist/public/assets/utils-SsF94Pkg.js +0 -1
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Ar as t,Mr as n,Nr as r,Oi as i,Pr as a,jr as o,ki as s,kr as c,mr as l,tr as u}from"./interactive-BrHVRHmQ.js";var d=function(e){return e.SetProjects=`SET_PROJECTS`,e.SetProjectsLoading=`SET_PROJECTS_LOADING`,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.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.SetContextUsage=`SET_CONTEXT_USAGE`,e.SetProjectModel=`SET_PROJECT_MODEL`,e.ResetStream=`RESET_STREAM`,e.StopStream=`STOP_STREAM`,e.ToggleSidebar=`TOGGLE_SIDEBAR`,e.CloseSidebar=`CLOSE_SIDEBAR`,e.OpenProjectPanel=`OPEN_PROJECT_PANEL`,e.CloseProjectPanel=`CLOSE_PROJECT_PANEL`,e.SetCreatingProject=`SET_CREATING_PROJECT`,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.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}({}),f=l,p={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:{},paneModelSelections:{},sidebarOpen:!0,projectPanelView:`projects`,projectPanelProjectId:null,isCreatingProject:!1,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},m={open:!1,queuedCommand:null,queuedRelativeFolder:null,outputLines:[],height:300,history:[],historyIndex:-1,cwd:`.`,isRunning:!1};function h(e,t){return`${e}:${t}`}function ee(e,t,n=f){return t?e[h(t,n)]??null:null}function te(e,t){switch(t.type){case d.StartAutoRoute:{let n=h(t.route.threadId,t.route.paneId);return{...e,pendingAutoRoutes:{...e.pendingAutoRoutes,[n]:t.route}}}case d.EndAutoRoute:{let n=h(t.threadId,t.paneId);if(!e.pendingAutoRoutes[n])return e;let{[n]:r,...i}=e.pendingAutoRoutes;return{...e,pendingAutoRoutes:i}}default:return null}}function g(e,t){let n=`${t}:`,r=new Set([f]);for(let t of Object.keys(e))t.startsWith(n)&&r.add(t.slice(n.length));return[...r]}function ne(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 re(e,t,n=f){return e.includes(`${y(t,n)}\n`)}function ie(e,t){return e.includes(`${t}:`)}function ae(e,t,n,r){return t.includes(e)||ie(n,e)?!0:r?.threadId===e}var oe={isStreaming:!1,streamingContent:``,streamingThinking:``,streamingSegments:[],streamingModel:``,streamingAgentMode:null,streamingEventCount:0},_=oe;function v(){return{...oe,streamingSegments:[]}}function y(e,t=f){return`${e}:${t}`}function b(e,t,n=f){return t?e[y(t,n)]??_:_}function se(e,t){let n=new Set([f,...t.sessionPaneIds??[],...g(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 ce(e){return e??f}function le(e,t,n,r){return!n||!t.includes(n)?!1:ce(e)===r}function ue(e,t,n){return t?b(e.threadStreamingStates,t,n).isStreaming?!0:le(e.activeStreamPane,e.processingThreadIds,t,n):!1}function S(e,t){return t.paneId??e.activeStreamPane??f}function de(e,t,n){return t===e.selectedThreadId?e.activeStreamPane===null?n===f: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 de(e,t,n)?{...e,...r,threadStreamingStates:o,toolCallProgress:i?{}:e.toolCallProgress}:{...e,threadStreamingStates:o}}function fe(){return{open:!1,queuedCommand:null,queuedRelativeFolder:null,outputLines:[],height:300,history:[],historyIndex:-1,cwd:`.`,isRunning:!1}}var w={focusedPane:f,extraChatPanes:{},activeStreamPane:null};function pe(){return{focusedPane:f,extraChatPanes:{},activeStreamPane:null}}function T(e){return{focusedPane:e.focusedPane,extraChatPanes:e.extraChatPanes,activeStreamPane:e.activeStreamPane}}function me(e,t){return t?e[t]??w:w}function he(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:he(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 O(e,t,n){let r=e.threadMultiPaneStates;return t&&(r={...r,[t]:E(T(e))}),{...E(me(r,n)),threadMultiPaneStates:r}}function k(e,t){return D(e,e.selectedThreadId,{...T(e),...t})}function ge(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 _e(e,t){if(!t)return e;let n=he(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}}function ve(e,t){return t===f?e.messages:e.extraChatPanes[t]?.messages??[]}function ye(e,t){return t===f?e.primaryConversationId:e.extraChatPanes[t]?.conversationId}function be(e,t){return t===f?e.messagesLoaded:e.extraChatPanes[t]?.messagesLoaded??!1}function xe(e){return Object.keys(e.extraChatPanes)}function Se(e,t){let n=new Set(t.threadIds),r={...e.threadMultiPaneStates};for(let n of t.threadIds)r[n]=_e(ge(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 Ce(e,t){return t.paneId===f?e:e.extraChatPanes[t.paneId]?k(e,{focusedPane:t.paneId}):k(e,{focusedPane:t.paneId,extraChatPanes:{...e.extraChatPanes,[t.paneId]:{conversationId:t.conversationId,messages:[],messagesLoaded:!1}}})}function we(e,t){if(t.paneId===f||!e.extraChatPanes[t.paneId])return e;let{[t.paneId]:n,...r}=e.extraChatPanes;return k(e,{extraChatPanes:r,focusedPane:e.focusedPane===t.paneId?f:e.focusedPane,activeStreamPane:e.activeStreamPane===t.paneId?null:e.activeStreamPane})}function Te(e,t){if(t.paneId===f)return{...e,messages:t.messages,messagesLoaded:!0};let n=e.extraChatPanes[t.paneId];return n?k(e,{extraChatPanes:{...e.extraChatPanes,[t.paneId]:{...n,messages:t.messages,messagesLoaded:!0}}}):e}function Ee(e,t){if(t.paneId===f)return e;let n=e.extraChatPanes[t.paneId];return n?k(e,{extraChatPanes:{...e.extraChatPanes,[t.paneId]:{...n,conversationId:t.conversationId,messages:[],messagesLoaded:!0}}}):e}function De(e,t){if(t.paneId===f)return{...e,messages:[...e.messages,t.message]};let n=e.extraChatPanes[t.paneId];return n?k(e,{extraChatPanes:{...e.extraChatPanes,[t.paneId]:{...n,messages:[...n.messages,t.message]}}}):e}function Oe(e,t){if(!e.selectedThreadId||t.paneId===null)return k(e,{activeStreamPane:null});let n=b(e.threadStreamingStates,e.selectedThreadId,t.paneId);return{...k(e,{activeStreamPane:t.paneId}),...n}}function ke(e,t){switch(t.type){case d.HydrateProjectChatPanes:return Se(e,t);case d.AddChatPane:return Ce(e,t);case d.RemoveChatPane:return we(e,t);case d.SetFocusedPane:return k(e,{focusedPane:t.paneId});case d.SetPaneConversationId:return Ee(e,t);case d.SetPaneMessages:return Te(e,t);case d.AddPaneMessage:return De(e,t);case d.SetActiveStreamPane:return Oe(e,t);default:return null}}function Ae(e,t){return!!(t.historyEpoch!==void 0&&t.historyEpoch!==e.chatHistoryEpoch||t.conversationId&&e.primaryConversationId&&t.conversationId!==e.primaryConversationId)}function A(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 je(e,t){let n=t.paneId??f;if(n!==f){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 Me(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 Ne(e,t){if(t.threadId!==e.selectedThreadId)return e;let n=t.paneId??f;if(n!==f){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 Pe(e,t){if(!e.threadToolSessions[t.threadId])return e;let{[t.threadId]:n,...r}=e.threadToolSessions;return{...e,threadToolSessions:r}}function Fe(e,t){if(!e.threadCreationSummaries[t.threadId])return e;let{[t.threadId]:n,...r}=e.threadCreationSummaries;return{...e,threadCreationSummaries:r}}function Ie(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 Le(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 Re(e,t){if(!t.toolCallId)return{...e,toolCallProgress:{}};let{[t.toolCallId]:n,...r}=e.toolCallProgress;return{...e,toolCallProgress:r}}function ze(e,t){let{[t.threadId]:n,...r}=e.chatInputDrafts;return{...e,chatInputDrafts:r}}function Be(e,t){let n=new Set(e.startingNewChatPaneIds);return t.isStarting?n.add(t.paneId):n.delete(t.paneId),{...e,startingNewChatPaneIds:[...n]}}function Ve(e,t){let n=O(e,e.selectedThreadId,t.threadId),r=b(e.threadStreamingStates,t.threadId,f);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 He(e,t){let n=O(e,e.selectedThreadId,``);return{...e,...v(),...n,selectedThreadId:null,selectedProjectId:t.projectId,messages:[],messagesLoaded:!1,startingNewChatPaneIds:[],chatHistoryEpoch:e.chatHistoryEpoch+1,primaryConversationId:void 0,focusChatInput:!1,subagentTranscripts:{}}}function Ue(e,t){return Ae(e,t)?e:{...e,messages:A(e,t.messages),messagesLoaded:!0}}function We(e,t){let n=t.conversationId?.trim()||void 0;return e.primaryConversationId===n?e:{...e,primaryConversationId:n}}function Ge(e,t){return{...e,queuedChatMessages:[...e.queuedChatMessages,t.message]}}function Ke(e,t){return{...e,queuedChatMessages:e.queuedChatMessages.filter(e=>e.id!==t.queuedMessageId)}}function qe(e,t){let n=t.conversationId?.trim()||void 0;return{...e,messages:A(e,[]),messagesLoaded:!0,chatHistoryEpoch:e.chatHistoryEpoch+1,primaryConversationId:n}}function Je(e,t){return{...e,devServerToolSession:t.session}}function Ye(e,t){return{...e,threadToolSessions:{...e.threadToolSessions,[t.session.threadId]:t.session}}}function Xe(e,t){return{...e,threadCreationSummaries:{...e.threadCreationSummaries,[t.threadId]:t.message}}}function Ze(e,t){let n=e.toolCallProgress[t.toolCallId];return{...e,toolCallProgress:{...e.toolCallProgress,[t.toolCallId]:{...n,...t.progress}}}}function Qe(e,t){let n=e.subagentTranscripts[t.toolCallId]??[];return{...e,subagentTranscripts:{...e.subagentTranscripts,[t.toolCallId]:[...n,t.event]}}}function $e(e,t){return{...e,pendingChatMessage:t.message}}function et(e,t){return{...e,pendingChatMessage:null}}function tt(e,t){return{...e,chatInputDrafts:{...e.chatInputDrafts,[t.threadId]:t.draft}}}function nt(e,t){return{...e,...v(),selectedThreadId:null,selectedProjectId:null,messages:[],messagesLoaded:!1,startingNewChatPaneIds:[],chatHistoryEpoch:e.chatHistoryEpoch+1,primaryConversationId:void 0,...pe()}}var rt={[d.SetMessages]:Ue,[d.SetPrimaryConversationId]:We,[d.AddMessage]:je,[d.EnqueueChatMessage]:Ge,[d.RemoveQueuedChatMessage]:Ke,[d.ClearMessages]:qe,[d.UpdateMessage]:Me,[d.UpdateMessageCheckpointRef]:Ne,[d.SetDevServerToolSession]:Je,[d.SetThreadToolSession]:Ye,[d.ClearThreadToolSession]:Pe,[d.SetThreadCreationSummary]:Xe,[d.ClearThreadCreationSummary]:Fe,[d.UpdateToolCallProgress]:Ze,[d.UpdateToolExecutionOutput]:Ie,[d.AppendToolExecutionOutput]:Le,[d.AppendSubagentEvent]:Qe,[d.ClearToolCallProgress]:Re,[d.SetPendingChatMessage]:$e,[d.ClearPendingChatMessage]:et,[d.SetChatInputDraft]:tt,[d.ClearChatInputDraft]:ze,[d.SetNewChatStarting]:Be,[d.SelectThread]:Ve,[d.SelectProject]:He,[d.ClearSelection]:nt};function it(e,t){let n=rt[t.type];return n?n(e,t):null}var at=u(`store.project`);function ot(e,t){switch(t.type){case d.SetProjects:{let n={...e.projectModelSelections};for(let e of t.projects)for(let t of e.threads){if(!t.model)continue;let e=n[t.threadId];n[t.threadId]={id:t.model,provider:t.modelProvider,name:e?.name??t.model,description:e?.description??``,context_length:e?.context_length,contextWindow:e?.contextWindow,features:e?.features,input_modalities:e?.input_modalities,max_output:e?.max_output,pricing:e?.pricing,tarsk_use:e?.tarsk_use,coding_index:e?.coding_index,supportsImages:e?.supportsImages}}return{...e,projects:t.projects,cloneRootPath:t.cloneRootPath===void 0?e.cloneRootPath:t.cloneRootPath,projectModelSelections:n}}case d.SetProjectsLoading:return{...e,projectsLoading:t.projectsLoading};case d.SetProjectModel:{at.debug(`Set project model`,{threadId:t.threadId,paneId:t.paneId,model:{id:t.model.id,provider:t.model.provider}});let n=t.paneId??null;return{...e,projects:e.projects.map(e=>{let n=e.threads.some(e=>e.threadId===t.threadId);return{...e,...t.paneId&&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},paneModelSelections:n?{...e.paneModelSelections,[n]:t.model}:e.paneModelSelections}}case d.SetProcessingThreads:return{...e,processingThreadIds:t.threadIds,processingRuns:t.processingRuns??e.processingRuns.filter(e=>t.threadIds.includes(e.threadId))};case d.AddProcessingThread:return{...e,processingThreadIds:e.processingThreadIds.includes(t.threadId)?e.processingThreadIds:[...e.processingThreadIds,t.threadId]};case d.RemoveProcessingThread:return{...e,processingThreadIds:e.processingThreadIds.filter(e=>e!==t.threadId),processingRuns:e.processingRuns.filter(e=>e.threadId!==t.threadId)};case d.AddCreatingProject:return{...e,projects:[...e.projects,{projectId:t.projectId,name:t.projectName,gitUrl:t.gitUrl,threads:[{threadId:t.threadId,title:`thread-1`,path:``,currentBranch:``}]}]};case d.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 d.RemoveCreatingProject:return{...e,projects:e.projects.filter(e=>e.projectId!==t.projectId)};case d.RemoveCreatingThread:return{...e,projects:e.projects.map(e=>e.projectId===t.projectId?{...e,threads:e.threads.filter(e=>e.threadId!==t.threadId)}:e)};case d.RemoveThread:return{...e,projects:e.projects.map(e=>e.projectId===t.projectId?{...e,threads:e.threads.filter(e=>e.threadId!==t.threadId)}:e)};case d.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 d.ClearThreadCompleted:return{...e,completedThreadIds:e.completedThreadIds.filter(e=>e!==t.threadId)};case d.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)}}case d.AddDeletingThread:return{...e,deletingThreadIds:e.deletingThreadIds.includes(t.threadId)?e.deletingThreadIds:[...e.deletingThreadIds,t.threadId]};case d.RemoveDeletingThread:return{...e,deletingThreadIds:e.deletingThreadIds.filter(e=>e!==t.threadId)};case d.AddDeletingProject:return{...e,deletingProjectIds:e.deletingProjectIds.includes(t.projectId)?e.deletingProjectIds:[...e.deletingProjectIds,t.projectId]};case d.RemoveDeletingProject:return{...e,deletingProjectIds:e.deletingProjectIds.filter(e=>e!==t.projectId)};case d.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 d.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 j(e){return e.type===`tool_use`}function M(e){return e.type===`tool-result`}function N(e){return e.type===`text`}function P(e){return typeof e==`string`?e.replace(/\\n/g,`
|
|
2
|
-
`).replace(/✅/g,`✓`):``}function st(e){let t=0;for(let n=e.length-1;n>=0;n--){let r=e[n];if(!r||!N(r))break;t+=1}return t}function ct(e){let t=st(e);return t===0?null:e.slice(e.length-t).filter(N).map(e=>P(e.text).trim()).filter(e=>e.length>0).join(`
|
|
3
|
-
|
|
4
|
-
`).trim()||null}function lt(e){let t=U(e);return t?ct(t):P(e).trim()||null}function ut(e){let t=/\[([A-Za-z]+)\]\s*/g,n,r=0;for(let i of e.matchAll(t))n=i[1],r=i.index+i[0].length;return{label:n,contentStart:r}}function dt(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 F(e){if(!e||typeof e!=`string`)return null;let t=e.trim();if(!t)return null;let{label:n,contentStart:r}=ut(t);if(n){let e=t.slice(r);if(e)return[{type:`reasoning`,text:e,label:n}]}let i=[],a=0;for(;a<t.length;){let e=t.indexOf(`[`,a);if(e===-1){let e=t.slice(a).trim();e&&i.push({type:`reasoning`,text:e});break}let n=t.slice(a,e).trim();n&&i.push({type:`reasoning`,text:n});let r=I(t,e);if(r===-1){let n=t.slice(e).trim();n&&i.push({type:`reasoning`,text:n});break}if(!dt(t,e,r,i)){let n=t.slice(e,r+1).trim();n&&i.push({type:`reasoning`,text:n})}a=r+1}return i.length>0?i:null}function I(e,t){let n=0,r=!1,i=!1;for(let a=t;a<e.length;a++){let t=e[a];if(r){i?i=!1:t===`\\`?i=!0:t===`"`&&(r=!1);continue}if(t===`"`){r=!0;continue}if(t===`[`)n++;else if(t===`]`&&(n--,n===0))return a}return-1}function ft(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=I(e,r);if(t===-1)break;try{let i=JSON.parse(e.slice(r,t+1));if(!Array.isArray(i))break;n.push(...R(i))}catch{break}r=t+1}return n.length===0?null:{blocks:n,nextIndex:r}}function L(e,t){let n=[...e];for(let e of t){if(e.type===`tool_use`){let t=n.findIndex(t=>t.type===`tool_use`&&t.id===e.id);t>=0?n[t]=e:n.push(e);continue}if(e.type===`tool-result`){let t=n.findIndex(t=>t.type===`tool-result`&&t.toolCallId===e.toolCallId);t>=0?n[t]=e:n.push(e);continue}n.push(e)}return n}function R(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 z(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 pt(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 mt(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:z(t.wildcardOptions)}}]}function ht(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 gt(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:z(t.wildcardOptions)}}]}function B(e){let t=[...pt(e),...mt(e),...ht(e),...gt(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 U(e)?.some(e=>e.type===`tool_use`||e.type===`tool-result`)??!1}var V=/^```+|^~~~+/;function H(e){let t=e.indexOf(`{`),n=e.indexOf(`[`);return t===-1?n:n===-1?t:Math.min(t,n)}function vt(e,t){if(t&&t.fixedIndex>=0)return{index:t.fixedIndex,scan:t};let n=t?.resumeOffset??0;n>e.length&&(n=0);let r=n===0?!1:t?.inFence??!1,i=n;for(;;){let t=e.indexOf(`
|
|
5
|
-
`,i);if(t===-1){let t=e.slice(i),n=V.test(t.trimStart()),a=r||n?-1:H(t);return{index:a===-1?-1:i+a,scan:{fixedIndex:-1,resumeOffset:i,inFence:r}}}let n=e.slice(i,t);if(V.test(n.trimStart()))r=!r;else if(!r){let e=H(n);if(e!==-1){let t=i+e;return{index:t,scan:{fixedIndex:t,resumeOffset:i,inFence:r}}}}i=t+1}}function yt(e){return vt(e).index}function bt(e){try{let t=JSON.parse(e);return Array.isArray(t)?R(t):typeof t==`object`&&t?B(t):null}catch{return e.startsWith(`[`)?xt(e):null}}function xt(e){let t=ft(e);if(!t)return null;let n=e.slice(t.nextIndex).trim();return n?[...t.blocks,{type:`text`,text:n}]:t.blocks}function St(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)?R(r):B(r),a=e.substring(t+1).trim();return a&&i.push({type:`text`,text:a}),i}catch{return null}}function U(e){return e?Ct(e,yt(e)):null}function Ct(e,t){if(!e)return null;let n=e.trim();if(n.startsWith(`{`)||n.startsWith(`[`)){let e=bt(n);if(e)return e}let r=[];if(t===-1)return null;let i=e.slice(0,t).trim();i&&r.push({type:`text`,text:i});let a=e.slice(t),o=xt(a);if(o)return r.push(...o),r;let s=St(a);return s&&r.push(...s),r.length>0?r:null}function wt(e,t,n){let r=e[e.length-1];return r?.type===t?[...e.slice(0,-1),{type:t,chunks:[...r.chunks,n]}]:[...e,{type:t,chunks:[n]}]}function Tt(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 Et(e){for(let t=e.length-1;t>=0;t--)if(e[t]?.type===`content`)return t;return-1}function Dt(e){let t=e.chunks.join(``);return U(t)??(t.trim()?[{type:`text`,text:t}]:[])}function Ot(e){return e.some(e=>e.type===`tool_use`||e.type===`tool-result`)}function kt(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 At(e,t){let n=Et(e);if(n===-1)return[...e,{type:`content`,chunks:[t]}];let r=e[n],i=t;if(r?.type===`content`){let e=U(t),n=Dt(r);e&&Ot(e)&&Ot(n)&&(i=JSON.stringify(L(n,e)))}return[...e.slice(0,n),{type:`content`,chunks:[i]},...e.slice(n+1)]}function jt(e,t){let n=U(t);if(!n?.some(e=>e.type===`tool_use`||e.type===`tool-result`))return wt(e,`content`,t);let r=Tt(e),i=n;if(r>=0){let t=e[r];t?.type===`content`&&(i=L(Dt(t),n))}let a=JSON.stringify(i);return r>=0?[...e.slice(0,r),{type:`content`,chunks:[a]},...e.slice(r+1)]:[...e,{type:`content`,chunks:[a]}]}function Mt(e){for(let t=e.length-1;t>=0;t--){let n=e[t];if(n.type===`content`)return n.chunks.join(``)}return``}function Nt(e,t){return[...e,{type:`long_running_confirmation`,prompt:t}]}function Pt(e,t){return[...e,{type:`shell_permission`,prompt:t}]}function Ft(e,t){return[...e,{type:`seatbelt_escalation`,prompt:t}]}function It(e,t){return[...e,{type:`web_fetch_permission`,prompt:t}]}var Lt=new WeakMap;function Rt(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 zt(e){let t=Lt.get(e),n=t?Rt(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;if(e.type===`thinking`)a=F(i)??[];else{let e=vt(i,r?t.scan:void 0);o=e.scan,a=Ct(i,e.index)??(i.trim()?[{type:`text`,text:i}]:[])}return Lt.set(e,{chunks:e.chunks,chunkCount:e.chunks.length,text:i,scan:o,blocks:a}),a}function W(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(...zt(n))}return kt(t)}function G(e){return e.type===`thinking-group`}function Bt(e,t=!1){let n=[],r=[],i,a=()=>{r.length>0&&(n.push({type:`thinking-group`,text:r.join(`
|
|
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];if(e.type===`thinking-group`){let t=e;t.label!==`Validated`&&(t.isCurrentlyStreaming=!0)}}return n}function Vt(e){return e.type===`tool-call-group`}var Ht=new Set([`todo`]),K=new Set([`todo`,`ask_user`]),Ut=new Map(r.map((e,t)=>[e.id,t]));function Wt(e){if(G(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 Gt(e){return G(e)?!1:e.type===`tool_use`?!Ht.has(e.name):e.type===`tool-result`?!K.has(e.toolName):!1}function Kt(e){let t=[],n=[];function r(){n.some(Gt)?t.push({type:`tool-call-group`,items:n}):t.push(...n),n=[]}for(let i of e)Wt(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 qt(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}}function Jt(e){let t=new Set;for(let n of e)(n.type===`shell_permission`||n.type===`web_fetch_permission`||n.type===`long_running_confirmation`&&n.prompt.toolCallId)&&t.add(n.prompt.toolCallId);return t}function Yt(e){let t=typeof e.path==`string`&&e.path?e.path:null;return t?t.split(`/`).pop()??t:null}function Xt(e){let t=typeof e.description==`string`?e.description.trim():``;return t?`${t}…`:null}function Zt(e){return(typeof e.intention==`string`?e.intention.trim():``)||null}function Qt(e){let t=Zt(e);return t?`${t}…`:null}function $t(e){let t=e.toLowerCase();return t===`run_js`||t===`run_web_worker`}function en(e){return n(e.name,e.input)?o(`subagents`):t(e.name)}function tn(e){return e.filter(e=>e===`subagents`).length}function nn(e,t){let n=e[0];return o(n!==void 0&&e.every(e=>e===n)?n:`other`).formatNeutral(t)}function J(e){return e.charAt(0).toUpperCase()+e.slice(1)}function rn(){return{categoryCounts:new Map,editedPaths:new Set,completedCommandBlocks:[],linesAdded:0,linesRemoved:0}}function an(e){let t=[],n=new Map;for(let r of e)G(r)||(j(r)?t.push(r):M(r)&&n.set(r.toolCallId,r));return{toolUses:t,groupResults:n,groupToolUseIds:new Set(t.map(e=>e.id))}}function on(e,t){let n=en(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=qt(e.input);t.linesAdded+=n.added,t.linesRemoved+=n.removed}else typeof e.input.content==`string`&&(t.linesAdded+=q(e.input.content))}}function sn(e,t,n,r,i){let a=[],o=0,s=null;for(let c of e){if(Ht.has(c.name))continue;let e=t.has(c.id),l=r?.has(c.id)||n.some(e=>M(e)&&e.toolCallId===c.id&&!K.has(e.toolName));e?on(c,i):l||(o+=1,a.push(en(c).id),s=c)}return{pendingCount:o,pendingCategoryIds:a,lastPending:s}}function cn(e,t,n,r){let i=0;for(let a of e.values())if(!K.has(a.toolName)&&(a.isError===!0&&(i+=1),!t.has(a.toolCallId))){let e=n.find(e=>j(e)&&e.id===a.toolCallId);e?on(e,r):r.categoryCounts.set(`other`,(r.categoryCounts.get(`other`)??0)+1)}return i}function ln(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)=>(Ut.get(e.id)??2**53-1)-(Ut.get(t.id)??2**53-1)),n}function un(e,t,r,i){if(!e)return null;if(i.has(e.id))return`Awaiting permission · ${nn(r,t)}`;if(n(e.name,e.input))return Xt(e.input)??`${e.activeDisplayName??a(e.name)}…`;if($t(e.name))return Qt(e.input)??`${e.activeDisplayName??a(e.name)}…`;let o=e.activeDisplayName??a(e.name),s=Yt(e.input);return s?`${o} ${s}…`:`${o}…`}function dn(e){if(e.length!==1)return null;let t=e[0];return t&&$t(t.name)?Zt(t.input):null}function Y(e,t,n){let{toolUses:r,groupResults:i,groupToolUseIds:a}=an(e),o=Jt(t),s=rn(),{pendingCount:c,pendingCategoryIds:l,lastPending:u}=sn(r,i,t,n,s),d=cn(i,a,t,s),f=ln(s.categoryCounts,s.editedPaths),p=s.editedPaths.size,m=un(u,c,l,o),h=dn(s.completedCommandBlocks);return{categories:f,distinctFiles:p,otherCount:s.categoryCounts.get(`other`)??0,pendingCount:c,pendingCategoryIds:l,linesAdded:s.linesAdded,linesRemoved:s.linesRemoved,errorCount:d,activeLabel:m,singleCommandTitle:h}}function fn(e,t){let n=e.categories.slice(0,3),r=e.categories.slice(3).reduce((e,t)=>e+t.count,0),i=e.otherCount+r,a=n.map(t=>t.id===`commands`&&t.count===1&&e.singleCommandTitle?e.singleCommandTitle:o(t.id).formatPhrase(t.count)),s=``;a.length>0?(s=a.join(`, `),i>0&&(s+=`, and ${i} more`),s=J(s)):i>0&&(s=J(o(`other`).formatPhrase(i)));let l=tn(e.pendingCategoryIds);if(l>0){let e=c(l);s=s?`${s} · ${e}`:J(e)}let u=t.showActive&&e.activeLabel!==null,d=e.pendingCount-l;if(!u&&d>0){let t=nn(e.pendingCategoryIds.filter(e=>e!==`subagents`),d);s=s?`${s} · ${t}`:J(t)}let f=e.linesAdded+e.linesRemoved>0?`+${e.linesAdded} −${e.linesRemoved}`:null;return{text:s,lineStats:f,errorCount:e.errorCount,activeLabel:u?e.activeLabel:null}}function pn(e){let t=Kt(Bt(e,!0));for(let n=t.length-1;n>=0;n--){let r=t[n];if(!Vt(r))continue;let i=fn(Y(r.items,e),{showActive:!0});if(i.activeLabel!==null)return i.activeLabel}return null}function mn(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 hn(e){return e.type===`content`||e.type===`thinking`?e.chunks.some(e=>e.trim().length>0):!1}function gn(e){let t=W(e),n=t.some(e=>j(e)&&e.name===`ask_user`),r=t.some(e=>M(e)&&e.toolName===`ask_user`);if(n&&!r)return!0;let i=mn(e);return i===-1?!1:!e.slice(i+1).some(hn)}function _n(e){let t=W(e);return t.length===0?`...`:t.length===1&&t[0]?.type===`text`&&`text`in t[0]?t[0].text:JSON.stringify(t)}function vn(e,t){switch(t.type){case d.SetStreaming:{let n=x(e,t),r=S(e,t);return C(e,n,r,{...b(e.threadStreamingStates,n,r),isStreaming:t.isStreaming})}case d.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 d.SetStreamContent:{let n=x(e,t),r=S(e,t),i=b(e.threadStreamingStates,n,r),a=At(i.streamingSegments,t.content);return C(e,n,r,{...i,streamingContent:t.content,streamingSegments:a})}case d.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 d.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 d.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 d.SetStreamModel:{let n=x(e,t),r=S(e,t);return C(e,n,r,{...b(e.threadStreamingStates,n,r),streamingModel:t.model})}case d.SetStreamAgentMode:{let n=x(e,t),r=S(e,t);return C(e,n,r,{...b(e.threadStreamingStates,n,r),streamingAgentMode:t.mode})}case d.SetContextUsage:{let n=x(e,t),r=S(e,t);return C(e,n,r,{...b(e.threadStreamingStates,n,r),contextUsage:t.contextUsage})}case d.ResetStream:return C(e,x(e,t),S(e,t),v(),!0);case d.StopStream:{let n=x(e,t),r=S(e,t);return C(e,n,r,{...b(e.threadStreamingStates,n,r),isStreaming:!1})}default:return null}}function X(e,t){return e.terminalStates[t]??fe()}function yn(e,t){switch(t.type){case d.AppendCommandOutput:return{...e,commandOutput:e.commandOutput+t.content};case d.SetRunningCommand:return{...e,isRunningCommand:t.isRunning};case d.ClearCommandOutput:return{...e,commandOutput:``};case d.ToggleTerminal:{let n=X(e,t.threadId);return{...e,terminalStates:{...e.terminalStates,[t.threadId]:{...n,open:!n.open}}}}case d.SetTerminalOpen:{let n=t.threadId??`default`,r=X(e,n);return{...e,terminalStates:{...e.terminalStates,[n]:{...r,open:t.open}}}}case d.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 d.ClearQueuedTerminalCommand:{let n=X(e,t.threadId);return{...e,terminalStates:{...e.terminalStates,[t.threadId]:{...n,queuedCommand:null}}}}case d.AppendTerminalLine:{let n=t.threadId??`default`,r=X(e,n);return{...e,terminalStates:{...e.terminalStates,[n]:{...r,outputLines:[...r.outputLines,t.line]}}}}case d.ClearTerminalOutput:{let n=t.threadId??`default`,r=X(e,n);return{...e,terminalStates:{...e.terminalStates,[n]:{...r,outputLines:[]}}}}case d.SetTerminalHeight:{let n=X(e,t.threadId);return{...e,terminalStates:{...e.terminalStates,[t.threadId]:{...n,height:t.height}}}}case d.SetTerminalCwd:{let n=X(e,t.threadId);return{...e,terminalStates:{...e.terminalStates,[t.threadId]:{...n,cwd:t.cwd}}}}case d.SetTerminalRunning:{let n=X(e,t.threadId);return{...e,terminalStates:{...e.terminalStates,[t.threadId]:{...n,isRunning:t.isRunning}}}}case d.SetTerminalHistory:{let n=X(e,t.threadId);return{...e,terminalStates:{...e.terminalStates,[t.threadId]:{...n,history:t.history}}}}case d.SetTerminalHistoryIndex:{let n=X(e,t.threadId);return{...e,terminalStates:{...e.terminalStates,[t.threadId]:{...n,historyIndex:t.index}}}}default:return null}}function bn(e,t){switch(t.type){case d.ToggleSidebar:return{...e,sidebarOpen:!e.sidebarOpen};case d.CloseSidebar:return e.sidebarOpen?{...e,sidebarOpen:!1}:e;case d.OpenProjectPanel:return{...e,projectPanelView:`actions`,projectPanelProjectId:t.projectId};case d.CloseProjectPanel:return{...e,projectPanelView:`projects`,projectPanelProjectId:null};case d.SetCreatingProject:return{...e,isCreatingProject:t.isCreating};case d.ConfigUpdated:return{...e,configUpdatedAt:Date.now()};case d.FocusChatInput:return{...e,focusChatInput:!0};case d.ClearFocusChatInput:return{...e,focusChatInput:!1};case d.SetDiffComments:return{...e,diffComments:{...e.diffComments,[t.threadId]:t.comments}};default:return null}}var xn=[vn,te,it,ke,ot,yn,bn];function Sn(e,t){for(let n of xn){let r=n(e,t);if(r!==null)return r}return e}var Cn=new Set([d.AppendStreamChunk,d.IncrementStreamEventCount,d.SetStreamModel,d.AppendStreamContent,d.AppendStreamThinking,d.SetStreamContent,d.AppendSubagentEvent,d.AppendToolExecutionOutput,d.UpdateToolCallProgress,d.UpdateToolExecutionOutput]);function Z(e){return`${`threadId`in e&&typeof e.threadId==`string`?e.threadId:``}:${`paneId`in e&&typeof e.paneId==`string`?e.paneId:``}`}function wn(e){if(e.length<=1)return e;let t=[],n=new Map,r=new Map,i=new Map,a=new Map,o=new Map,s=new Map,c=new Map,l=new Map,u=new Map,f=[];for(let t of e)switch(t.type){case d.AppendStreamChunk:{let e=Z(t),r=n.get(e);r?(t.chunkType===`thinking`?r.thinkingContent+=t.content:t.chunkType===`content`&&(r.contentContent+=t.content),r.lastAction=t):n.set(e,{thinkingContent:t.chunkType===`thinking`?t.content:``,contentContent:t.chunkType===`content`?t.content:``,lastAction:t}),c.set(e,`append-chunk`);break}case d.IncrementStreamEventCount:r.set(Z(t),t);break;case d.SetStreamModel:i.set(Z(t),t);break;case d.AppendStreamContent:{let e=Z(t),n=a.get(e);n?(n.value+=t.content,n.last=t):a.set(e,{value:t.content,last:t});break}case d.AppendStreamThinking:{let e=Z(t),n=o.get(e);n?(n.value+=t.content,n.last=t):o.set(e,{value:t.content,last:t});break}case d.SetStreamContent:{let e=Z(t);s.set(e,t),c.set(e,`set-content`);break}case d.UpdateToolCallProgress:l.set(t.toolCallId,t);break;case d.UpdateToolExecutionOutput:u.set(t.toolCallId,t);break;default:f.push(t);break}for(let e of i.values())t.push(e);for(let e of r.values())t.push(e);for(let{value:e,last:n}of a.values())n.type===d.AppendStreamContent&&t.push({...n,content:e});for(let{value:e,last:n}of o.values())n.type===d.AppendStreamThinking&&t.push({...n,content:e});let p=new Set([...s.keys(),...n.keys()]);for(let e of p){let r=s.get(e),i=n.get(e),a=[];if(i){let{thinkingContent:e,contentContent:t,lastAction:n}=i;e&&a.push({...n,chunkType:`thinking`,content:e,segments:n.segments}),t&&a.push({...n,chunkType:`content`,content:t,segments:n.segments}),!e&&!t&&a.push(n)}c.get(e)===`set-content`?(t.push(...a),r&&t.push(r)):(r&&t.push(r),t.push(...a))}for(let e of l.values())t.push(e);for(let e of u.values())t.push(e);return t.push(...f),t}function Tn(e=p){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=Sn(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 wn(e))s(t);o()}function l(e){if(Cn.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 En=i(),Q=e(s(),1),Dn=(0,Q.createContext)(null);function $(){let e=(0,Q.useContext)(Dn);if(!e)throw Error(`useAppStore must be used within an AppStoreContext.Provider`);return e}function On(e){let t=(0,En.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 kn(){return $().dispatch}function An(e){let t=(0,En.c)(8),n=kn(),r;t[0]===e?r=t[1]:(r=t=>(e?t.terminalStates[e]:void 0)??m,t[0]=e,t[1]=r);let i=On(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{P as A,g as B,Bt as C,Vt as D,G as E,ye as F,se as G,le as H,ve as I,d as J,re as K,be as L,F as M,Y as N,M as O,xe as P,y as R,It as S,gn as T,ue as U,b as V,ae as W,f as Y,Nt as _,An as a,At as b,_t as c,pn as d,zt as f,wt as g,W as h,$ as i,U as j,j as k,kt as l,lt as m,kn as n,Tn as o,Mt as p,ee as q,On as r,_n as s,Dn as t,fn as u,jt as v,Kt as w,Pt as x,Ft as y,ne as z};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Di as t,Oi as n,Rr as r,i,ki as a}from"./interactive-BrHVRHmQ.js";var o=n(),s=e(a(),1),c=t(),l=s.forwardRef((e,t)=>{let n=(0,o.c)(9),a,s;n[0]===e?(a=n[1],s=n[2]):({className:a,...s}=e,n[0]=e,n[1]=a,n[2]=s);let l;n[3]===a?l=n[4]:(l=i(`w-full caption-bottom`,r.body,a),n[3]=a,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,a;n[0]===e?(r=n[1],a=n[2]):({className:r,...a}=e,n[0]=e,n[1]=r,n[2]=a);let s;n[3]===r?s=n[4]:(s=i(`[&_tr]:border-b`,r),n[3]=r,n[4]=s);let l;return n[5]!==a||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`thead`,{ref:t,className:s,...a}),n[5]=a,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,a;n[0]===e?(r=n[1],a=n[2]):({className:r,...a}=e,n[0]=e,n[1]=r,n[2]=a);let s;n[3]===r?s=n[4]:(s=i(`border-t font-medium [&>tr]:last:border-b-0`,r),n[3]=r,n[4]=s);let l;return n[5]!==a||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`tfoot`,{ref:t,className:s,...a}),n[5]=a,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,a;n[0]===e?(r=n[1],a=n[2]):({className:r,...a}=e,n[0]=e,n[1]=r,n[2]=a);let s;n[3]===r?s=n[4]:(s=i(`transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted`,r),n[3]=r,n[4]=s);let l;return n[5]!==a||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`tr`,{ref:t,className:s,...a}),n[5]=a,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,a;n[0]===e?(r=n[1],a=n[2]):({className:r,...a}=e,n[0]=e,n[1]=r,n[2]=a);let s;n[3]===r?s=n[4]:(s=i(`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]!==a||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`th`,{ref:t,className:s,...a}),n[5]=a,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,a;n[0]===e?(r=n[1],a=n[2]):({className:r,...a}=e,n[0]=e,n[1]=r,n[2]=a);let s;n[3]===r?s=n[4]:(s=i(`p-4 align-middle [&:has([role=checkbox])]:pr-0`,r),n[3]=r,n[4]=s);let l;return n[5]!==a||n[6]!==t||n[7]!==s?(l=(0,c.jsx)(`td`,{ref:t,className:s,...a}),n[5]=a,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),a,s;n[0]===e?(a=n[1],s=n[2]):({className:a,...s}=e,n[0]=e,n[1]=a,n[2]=s);let l;n[3]===a?l=n[4]:(l=i(r.caption,`mt-4`,a),n[3]=a,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{p as a,m as i,d as n,h as r,l as t};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/onboarding-DTF0L4Nt.js","assets/rolldown-runtime-aKtaBQYM.js","assets/interactive-BrHVRHmQ.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{$ as t,B as n,Bn as r,C as i,Di as a,Gn as o,Hn as s,K as c,Kn as l,Oi as u,Rr as d,Sn as f,Un as p,Vn as m,Wn as h,X as g,Zn as _,b as v,cr as y,dr as b,f as x,fr as S,i as C,in as w,ki as T,lr as E,mr as D,on as O,tr as k,ur as A,yt as j}from"./interactive-BrHVRHmQ.js";import{A as ee,Ct as M,D as te,Eo as N,Er as P,Pr as ne,St as F,T as re,Tt as ie,_ as I,a as ae,b as L,bt as oe,h as se,ht as ce,in as le,j as ue,k as de,m as fe,mn as pe,mr as me,o as R,p as he,sr as ge,v as _e,x as z}from"./onboarding-DTF0L4Nt.js";import{l as ve}from"./monaco-D1hpqXQ0.js";import{J as B,n as ye,r as V}from"./store-B_cK-gsT.js";import{n as be}from"./chat-dock-context-CjVDawH_.js";import{n as xe,r as Se,t as Ce}from"./use-suspense-resource-CExc4Svq.js";import{t as we}from"./ndjson-stream-DeGpE5o5.js";import{At as H,B as Te,Bt as U,Ct as Ee,Et as De,F as Oe,H as ke,Ht as Ae,Kt as je,Lt as Me,Rt as Ne,St as Pe,Tt as Fe,U as Ie,V as Le,bt as Re,jt as ze,kt as Be,vt as Ve,wt as W,xt as He,yt as Ue,zt as We}from"./index-CsUbYVa9.js";import{n as Ge,t as G}from"./commit-method-fields-BwX9cAYJ.js";import{t as Ke}from"./async-error-boundary-Ca8lx8YM.js";var K=e(T(),1),q=u();function qe(e){return e.status!==`Done`&&!e.working}function J(e){return e.status!==`Done`&&!e.working&&!!e.triggerType}function Je(e){if(!e.triggerType)return null;let t=e.enabled===!1?`Paused · `:``;if(e.triggerType===`schedule`&&e.scheduledAt){let n=new Date(e.scheduledAt);if(!Number.isNaN(n.getTime()))return`${t}Scheduled ${n.toLocaleString()}`}if(e.triggerType===`schedule`&&e.scheduleCron&&e.timezone){let n=l(e.scheduleCron),r=n?s(n):e.scheduleCron,i=o(e.scheduleCron,e.timezone),a=i?p(i):null;return a?`${t}${r} · ${a}`:`${t}${r}`}return e.triggerType===`event`&&e.eventKey?`${t}Event: ${e.eventKey}`:null}function Ye(e){return[...e].sort((e,t)=>e.status===`Done`&&t.status!==`Done`?1:e.status!==`Done`&&t.status===`Done`||e.working&&!t.working?-1:!e.working&&t.working?1:new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime())}function Xe(e,t){if(t)return t;let n=e?.threads.map(e=>e.title)??[],r=/^thread-(\d+)$/i,i=0;for(let e of n){let t=e.match(r);t&&(i=Math.max(i,parseInt(t[1],10)))}return`thread-${i+1}`}function Y(e,t){return`project-tasks:${e}:${t}`}async function Ze(e){ne(),Se(`projects:bootstrap:`);let t=await me();e({type:B.SetProjects,projects:t.projects,cloneRootPath:t.cloneRootPath}),e({type:B.SetProjectsLoading,projectsLoading:!1})}async function Qe(e){let t=await Ee(e),n=t.filter(e=>e.threadId&&e.status!==`Done`),r=[...t];return await Promise.all(n.map(async t=>{try{await P(t.threadId)}catch(n){if(n instanceof Error&&n.message.includes(`not found`)){let n=await De(e,t.id,{status:`Done`}),i=r.findIndex(e=>e.id===t.id);i!==-1&&(r[i]=n)}}})),r}async function $e(e,t){let n=null;try{await we(e,e=>{if(!e||typeof e!=`object`)return;let r=e;r.type===`progress`&&typeof r.threadId==`string`&&!n&&(n=r.threadId,t(n))})}catch{}return n}var X=a();function et({task:e,disabled:t=!1,onImplementInNewThread:n,onImplementInThisThread:r,onMarkDone:i,onRunNow:a}){let[o,s]=(0,K.useState)(!1),c=qe(e),l=e.status!==`Done`,u=J(e),d=t||o||!c&&!l&&!u;async function f(e){s(!0);try{await e()}finally{s(!1)}}return(0,X.jsxs)(Me,{children:[(0,X.jsx)(je,{asChild:!0,children:(0,X.jsxs)(N,{variant:`ghost`,size:`icon`,className:C(`h-8 w-8 shrink-0`,e.working&&`text-primary`),disabled:d,children:[o||e.working?(0,X.jsx)(j,{className:`h-4 w-4 animate-spin`}):(0,X.jsx)(O,{className:`h-4 w-4`}),(0,X.jsx)(`span`,{className:`sr-only`,children:`Task actions`})]})}),(0,X.jsxs)(We,{align:`end`,children:[c&&(0,X.jsx)(U,{onClick:()=>void f(()=>r(e)),children:`Do This`}),u&&(0,X.jsx)(U,{onClick:()=>void f(()=>a(e)),children:`Run Now`}),c&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(Ae,{}),(0,X.jsx)(U,{onClick:()=>void f(()=>n(e)),children:`Do this in a new thread`})]}),l&&(0,X.jsx)(U,{onClick:()=>void f(()=>i(e)),children:`Mark as Done`})]})]})}function tt(e){let t=(0,q.c)(14),{tag:n,onRemove:r,className:i}=e,a;t[0]===i?a=t[1]:(a=C(d.compact,`inline-flex items-center gap-1 rounded-full border border-border/50 bg-background px-2 py-0.5`,i),t[0]=i,t[1]=a);let o;t[2]===n.color?o=t[3]:(o=(0,X.jsx)(`span`,{className:`h-2 w-2 shrink-0 rounded-full`,style:{backgroundColor:n.color}}),t[2]=n.color,t[3]=o);let s;t[4]===n.name?s=t[5]:(s=(0,X.jsx)(`span`,{className:`truncate`,children:n.name}),t[4]=n.name,t[5]=s);let c;t[6]!==r||t[7]!==n.name?(c=r&&(0,X.jsx)(`button`,{type:`button`,className:`ml-0.5 shrink-0 rounded-full opacity-60 hover:opacity-100`,onClick:e=>{e.stopPropagation(),r()},"aria-label":`Remove ${n.name}`,children:(0,X.jsxs)(`svg`,{className:`h-3 w-3`,viewBox:`0 0 12 12`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,children:[(0,X.jsx)(`line`,{x1:`3`,y1:`3`,x2:`9`,y2:`9`}),(0,X.jsx)(`line`,{x1:`9`,y1:`3`,x2:`3`,y2:`9`})]})}),t[6]=r,t[7]=n.name,t[8]=c):c=t[8];let l;return t[9]!==a||t[10]!==o||t[11]!==s||t[12]!==c?(l=(0,X.jsxs)(`span`,{className:a,children:[o,s,c]}),t[9]=a,t[10]=o,t[11]=s,t[12]=c,t[13]=l):l=t[13],l}var nt={Plan:`#EAB308`,Build:`#3B82F6`,Test:`#8B5CF6`,Review:`#F97316`,Done:`#22C55E`};function rt(e){let t=(0,q.c)(10),{status:n,className:r}=e,i;t[0]===r?i=t[1]:(i=C(d.compact,`inline-flex items-center gap-1 rounded-full border border-border/50 bg-background px-2 py-0.5`,r),t[0]=r,t[1]=i);let a=nt[n],o;t[2]===a?o=t[3]:(o=(0,X.jsx)(`span`,{className:`h-2 w-2 shrink-0 rounded-full`,style:{backgroundColor:a}}),t[2]=a,t[3]=o);let s;t[4]===n?s=t[5]:(s=(0,X.jsx)(`span`,{className:`truncate`,children:n}),t[4]=n,t[5]=s);let c;return t[6]!==i||t[7]!==o||t[8]!==s?(c=(0,X.jsxs)(`span`,{className:i,children:[o,s]}),t[6]=i,t[7]=o,t[8]=s,t[9]=c):c=t[9],c}function it({selectedTags:e,existingTags:t,onChange:n,placeholder:r=`Add tags...`,allowCreate:i=!0}){let[a,o]=(0,K.useState)(``),[s,c]=(0,K.useState)(!1),[l,u]=(0,K.useState)(0),f=(0,K.useRef)(null),p=(0,K.useMemo)(()=>new Set(e.map(e=>A(e.name))),[e]),m=e.length>=10,h=(0,K.useMemo)(()=>{let e=a.trim(),n=e.toLowerCase(),r=new Map;for(let e of t){let t=A(e.name);p.has(t)||r.set(t,{name:e.name,color:e.color})}for(let e of y){let t=A(e);!p.has(t)&&!r.has(t)&&r.set(t,{name:e,color:E(t)})}let o=(n?[...r.values()].filter(e=>e.name.toLowerCase().includes(n)):[...r.values()]).map(e=>({name:e.name,color:e.color,isCreate:!1}));if(e&&i&&!m){let t=b(e),n=A(t),i=p.has(n)||r.has(n),a=!S(t);!i&&a&&o.push({name:t,color:E(n),isCreate:!0})}return o},[a,t,p,m]);(0,K.useEffect)(()=>{u(0)},[a]),(0,K.useEffect)(function(){if(!s||m)return;let e=requestAnimationFrame(function(){f.current?.focus()});return function(){cancelAnimationFrame(e)}},[s,m]);function _(r){if(m)return;let i=b(r),a=A(i);if(p.has(a))return;let s=t.find(e=>A(e.name)===a)??{id:`new:${a}`,name:i,color:E(a)};n([...e,s]),o(``)}function v(t){n(e.filter(e=>e.id!==t.id))}function x(t){if(t.key===`ArrowDown`)t.preventDefault(),s||c(!0),u(e=>(e+1)%Math.max(h.length,1));else if(t.key===`ArrowUp`)t.preventDefault(),u(e=>(e-1+h.length)%Math.max(h.length,1));else if(t.key===`Enter`){t.preventDefault();let e=h[l];e&&_(e.name)}else t.key===`Backspace`&&!a&&e.length>0?v(e[e.length-1]):t.key===`Escape`&&(c(!1),f.current?.blur())}return(0,X.jsxs)(Be,{open:s,onOpenChange:function(e){c(e),e||o(``)},children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:[e.map(function(e){return(0,X.jsx)(tt,{tag:e,onRemove:()=>v(e)},e.id)}),(0,X.jsx)(ze,{asChild:!0,children:(0,X.jsx)(N,{type:`button`,variant:`outline`,size:`icon-xs`,disabled:m,"aria-label":m?`Max 10 tags`:`Add tag`,className:C(`h-6 w-6 rounded-full border-dashed text-muted-foreground`,m&&`opacity-50`),children:(0,X.jsx)(g,{className:`h-3 w-3`})})})]}),(0,X.jsxs)(H,{align:`start`,className:`w-72 p-0`,onOpenAutoFocus:e=>e.preventDefault(),children:[(0,X.jsx)(`div`,{className:`border-b border-border p-2`,children:(0,X.jsx)(`input`,{ref:f,type:`text`,value:a,onChange:function(e){o(e.target.value)},onKeyDown:x,placeholder:m?`Max 10 tags`:r,disabled:m,className:C(d.body,`w-full rounded-md border border-input bg-background px-3 py-2 outline-none placeholder:text-muted-foreground focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50`)})}),(0,X.jsx)(`div`,{className:`overflow-y-auto overscroll-contain`,style:{maxHeight:220},children:h.length===0?(0,X.jsx)(`p`,{className:C(d.bodyMuted,`px-3 py-4 text-center`),children:m?`Tag limit reached`:`No tags found`}):h.map(function(e,t){return(0,X.jsxs)(`button`,{type:`button`,className:C(d.body,`flex w-full items-center gap-2 px-3 py-2 text-left hover:bg-accent`,l===t&&`bg-accent`),onClick:function(){_(e.name),f.current?.focus()},children:[(0,X.jsx)(`span`,{className:`h-2 w-2 shrink-0 rounded-full`,style:{backgroundColor:e.color}}),e.isCreate?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`span`,{className:`text-muted-foreground`,children:`Create`}),(0,X.jsx)(`span`,{className:`truncate font-medium`,children:e.name})]}):(0,X.jsx)(`span`,{className:`truncate`,children:e.name})]},e.isCreate?`create:${e.name}`:e.name)})})]})]})}function at({open:e,onOpenChange:t,projectId:n,tags:r,onTagsChanged:i}){let[a,o]=(0,K.useState)(null),[s,c]=(0,K.useState)(``),[l,u]=(0,K.useState)(``),[p,m]=(0,K.useState)(!1),[h,g]=(0,K.useState)(!1),[_,y]=(0,K.useState)(null),[b,S]=(0,K.useState)(null);function w(e){o(e.id),c(e.name),y(null)}function T(){o(null),c(``),y(null)}async function E(){let e=l.trim();if(e){g(!0),y(null);try{let t=await Ve(n,e);i([...r,t]),u(``)}catch(e){y(e instanceof Error?e.message:`Failed to create tag`)}finally{g(!1)}}}async function D(e){let t=s.trim();if(t){m(!0),y(null);try{let a=await W(n,e,t);i(r.map(e=>e.id===a.id?{...e,name:a.name,color:a.color}:e)),T()}catch(e){y(e instanceof Error?e.message:`Failed to rename tag`)}finally{m(!1)}}}async function O(e){m(!0),y(null);try{await Re(n,e),i(r.filter(t=>t.id!==e)),S(null),a===e&&T()}catch(e){y(e instanceof Error?e.message:`Failed to delete tag`)}finally{m(!1)}}return(0,X.jsx)(re,{open:e,onOpenChange:t,children:(0,X.jsxs)(te,{className:`flex max-h-[min(36rem,85vh)] flex-col sm:max-w-md`,children:[(0,X.jsx)(ee,{children:(0,X.jsx)(ue,{children:`Manage Tags`})}),(0,X.jsxs)(`div`,{className:`flex items-center gap-2 py-2`,children:[(0,X.jsx)(z,{value:l,onChange:e=>u(e.target.value),onKeyDown:e=>{e.key===`Enter`&&E(),e.key===`Escape`&&u(``)},placeholder:`New tag name...`,className:`h-8 flex-1`,disabled:h}),(0,X.jsx)(N,{size:`sm`,className:`h-8 shrink-0 bg-foreground text-background hover:bg-foreground/90`,onClick:()=>void E(),disabled:h||!l.trim(),children:h?(0,X.jsx)(j,{className:`h-3.5 w-3.5 animate-spin`}):`Add`})]}),r.length===0?(0,X.jsx)(`p`,{className:C(d.bodyMuted,`py-4 text-center`),children:`No tags yet. Create one above to get started.`}):(0,X.jsx)(ce,{className:`min-h-0 flex-1`,children:(0,X.jsx)(`div`,{className:`space-y-1 py-2 pr-3`,children:r.map(e=>{let t=a===e.id,n=b===e.id;return(0,X.jsx)(`div`,{className:C(`group flex items-center gap-2 rounded-md px-2 py-1.5 hover:bg-accent/40`,!t&&!n&&!p&&`cursor-pointer`),onClick:()=>{!p&&!t&&!n&&w(e)},children:t?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(z,{value:s,onChange:e=>c(e.target.value),onKeyDown:t=>{t.key===`Enter`&&D(e.id),t.key===`Escape`&&T()},className:`h-8 flex-1 text-sm`,autoFocus:!0,disabled:p}),(0,X.jsx)(N,{variant:`ghost`,size:`icon`,className:`h-8 w-8 shrink-0`,onClick:()=>void D(e.id),disabled:p||!s.trim(),children:p?(0,X.jsx)(j,{className:`h-4 w-4 animate-spin`}):(0,X.jsx)(f,{className:`h-4 w-4`})}),(0,X.jsx)(N,{variant:`ghost`,size:`icon`,className:`h-8 w-8 shrink-0`,onClick:T,disabled:p,children:(0,X.jsx)(x,{className:`h-4 w-4`})})]}):n?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`span`,{className:C(d.body,`flex-1 truncate`),children:[`Delete `,e.name,`? Removes from `,e.taskCount,` `,e.taskCount===1?`task`:`tasks`,`.`]}),(0,X.jsx)(N,{variant:`ghost`,size:`icon`,className:`h-8 w-8 shrink-0 text-destructive hover:text-destructive`,onClick:()=>void O(e.id),disabled:p,children:p?(0,X.jsx)(j,{className:`h-4 w-4 animate-spin`}):(0,X.jsx)(f,{className:`h-4 w-4`})}),(0,X.jsx)(N,{variant:`ghost`,size:`icon`,className:`h-8 w-8 shrink-0`,onClick:()=>S(null),disabled:p,children:(0,X.jsx)(x,{className:`h-4 w-4`})})]}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`span`,{className:`h-2.5 w-2.5 shrink-0 rounded-full`,style:{backgroundColor:e.color}}),(0,X.jsx)(`span`,{className:C(d.body,`min-w-0 flex-1 truncate`),children:e.name}),(0,X.jsxs)(`span`,{className:C(d.caption,`shrink-0 text-muted-foreground`),children:[e.taskCount,` `,e.taskCount===1?`task`:`tasks`]}),(0,X.jsx)(N,{variant:`ghost`,size:`icon`,className:`h-8 w-8 shrink-0 text-destructive opacity-0 pointer-events-none transition-opacity can-hover:group-hover:opacity-100 can-hover:group-hover:pointer-events-auto focus-visible:opacity-100 focus-visible:pointer-events-auto can-hover:hover:text-destructive`,onClick:t=>{t.stopPropagation(),S(e.id)},disabled:p,"aria-label":`Delete ${e.name}`,children:(0,X.jsx)(v,{className:`h-3.5 w-3.5`})})]})},e.id)})})}),_&&(0,X.jsx)(`p`,{className:C(d.caption,`text-destructive`),children:_})]})})}var ot=`09:00`;function Z(e){return String(e).padStart(2,`0`)}function st(){let e=new Date(Date.now()+3600*1e3);return`${e.getFullYear()}-${Z(e.getMonth()+1)}-${Z(e.getDate())}T${Z(e.getHours())}:${Z(e.getMinutes())}`}function ct(){return{kind:`manual`,scheduleMode:`once`,scheduledAtLocal:st(),preset:`daily`,presetTime:ot,dayOfWeek:new Date().getDay(),timezone:h(),enabled:!0,eventKey:``}}function lt(e){let t=ct();if(e.triggerType===`schedule`){if(e.scheduleCron){let n=l(e.scheduleCron);return{kind:`schedule`,scheduleMode:`repeating`,scheduledAtLocal:t.scheduledAtLocal,preset:n?.preset??`daily`,presetTime:n?.time??ot,dayOfWeek:n?.dayOfWeek??new Date().getDay(),timezone:e.timezone??t.timezone,enabled:e.enabled!==!1,eventKey:``}}if(e.scheduledAt){let n=new Date(e.scheduledAt);return{kind:`schedule`,scheduleMode:`once`,scheduledAtLocal:Number.isNaN(n.getTime())?t.scheduledAtLocal:`${n.getFullYear()}-${Z(n.getMonth()+1)}-${Z(n.getDate())}T${Z(n.getHours())}:${Z(n.getMinutes())}`,preset:t.preset,presetTime:t.presetTime,dayOfWeek:t.dayOfWeek,timezone:e.timezone??t.timezone,enabled:e.enabled!==!1,eventKey:``}}}return e.triggerType===`event`?{...t,kind:`event`,enabled:e.enabled!==!1,eventKey:e.eventKey??``}:t}function ut(e){let t=new Date(e);return Number.isNaN(t.getTime())?null:t.toISOString()}function dt(e){return e.kind===`manual`?{triggerType:null,scheduledAt:null,scheduleCron:null,timezone:null,enabled:!0,eventKey:null}:e.kind===`event`?{triggerType:`event`,scheduledAt:null,scheduleCron:null,timezone:null,enabled:e.enabled,eventKey:e.eventKey.trim()||null}:e.scheduleMode===`once`?{triggerType:`schedule`,scheduledAt:ut(e.scheduledAtLocal),scheduleCron:null,timezone:e.timezone,enabled:e.enabled,eventKey:null}:{triggerType:`schedule`,scheduledAt:null,scheduleCron:m(e.preset,e.presetTime,e.dayOfWeek),timezone:e.timezone,enabled:e.enabled,eventKey:null}}function ft(e){return e.kind!==`manual`}function pt(e){return e.kind===`manual`?null:r(dt(e))}function mt(e){return e.replace(/^eventKey is required for event triggers$/,`Event key is required`).replace(/^eventKey must be (\d+) characters or fewer$/,`Event key must be $1 characters or fewer`).replace(/^eventKey may only contain letters, numbers, dots, colons, underscores, and hyphens$/,`Event key may only contain letters, numbers, dots, colons, underscores, and hyphens`)}function ht(e){return e.startsWith(`Event key`)}function gt(e,t){return JSON.stringify(e)===JSON.stringify(t)}var _t=[{value:`0`,label:`Sunday`},{value:`1`,label:`Monday`},{value:`2`,label:`Tuesday`},{value:`3`,label:`Wednesday`},{value:`4`,label:`Thursday`},{value:`5`,label:`Friday`},{value:`6`,label:`Saturday`}];function Q(e,t){return{...e,...t}}function vt(e){let t=(0,q.c)(42),{value:n,onChange:r,collapsed:i,onCollapsedChange:a,showCollapseControl:o,error:s}=e,c=i===void 0?!1:i,l=o===void 0?!1:o,u=s===void 0?null:s,f;t[0]!==r||t[1]!==n?(f=function(e){r(Q(n,{kind:e}))},t[0]=r,t[1]=n,t[2]=f):f=t[2];let p=f,m;t[3]!==r||t[4]!==n?(m=function(e){r(Q(n,{scheduleMode:e}))},t[3]=r,t[4]=n,t[5]=m):m=t[5];let h=m;if(l&&c){let e;return t[6]===a?e=t[7]:(e=(0,X.jsx)(`div`,{className:`mt-4`,children:(0,X.jsx)(N,{type:`button`,variant:`outline`,size:`sm`,onClick:()=>a?.(!1),children:`Add schedule or event trigger`})}),t[6]=a,t[7]=e),e}let g;t[8]!==r||t[9]!==a||t[10]!==l||t[11]!==n?(g=l&&(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,X.jsx)(`p`,{className:C(d.label),children:`Trigger`}),(0,X.jsxs)(N,{type:`button`,variant:`ghost`,size:`icon`,className:`h-8 w-8 shrink-0 text-muted-foreground`,onClick:()=>{r(Q(n,{kind:`manual`})),a?.(!0)},children:[(0,X.jsx)(x,{className:`h-4 w-4`}),(0,X.jsx)(`span`,{className:`sr-only`,children:`Remove trigger`})]})]}),t[8]=r,t[9]=a,t[10]=l,t[11]=n,t[12]=g):g=t[12];let _;t[13]===p?_=t[14]:(_=e=>{(e===`manual`||e===`schedule`||e===`event`)&&p(e)},t[13]=p,t[14]=_);let v;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,X.jsx)(R,{value:`manual`,"aria-label":`Manual`,className:C(d.body,Ge),children:`Manual`}),t[15]=v):v=t[15];let y;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,X.jsx)(R,{value:`schedule`,"aria-label":`Schedule`,className:C(d.body,Ge),children:`Schedule`}),t[16]=y):y=t[16];let b;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,X.jsx)(R,{value:`event`,"aria-label":`Event`,className:C(d.body,Ge),children:`Event`}),t[17]=b):b=t[17];let S;t[18]!==_||t[19]!==n.kind?(S=(0,X.jsxs)(ae,{type:`single`,value:n.kind,onValueChange:_,"aria-label":`Trigger type`,className:G,children:[v,y,b]}),t[18]=_,t[19]=n.kind,t[20]=S):S=t[20];let w;t[21]!==r||t[22]!==h||t[23]!==n?(w=n.kind===`schedule`&&(0,X.jsxs)(`div`,{className:`space-y-4 border-t border-border pt-4`,children:[(0,X.jsxs)(ae,{type:`single`,value:n.scheduleMode,onValueChange:e=>{(e===`once`||e===`repeating`)&&h(e)},"aria-label":`Schedule mode`,className:`inline-flex h-auto w-fit justify-start rounded-full border-0 bg-background p-1 text-muted-foreground`,children:[(0,X.jsx)(R,{value:`once`,"aria-label":`Once`,className:C(d.body,`h-auto min-h-0 min-w-0 rounded-full border-0 bg-background px-4 py-1.5 data-[state=on]:bg-foreground data-[state=on]:text-background data-[state=on]:shadow-sm hover:bg-background hover:text-muted-foreground data-[state=on]:hover:bg-foreground data-[state=on]:hover:text-background`),children:`Once`}),(0,X.jsx)(R,{value:`repeating`,"aria-label":`Repeating`,className:C(d.body,`h-auto min-h-0 min-w-0 rounded-full border-0 bg-background px-4 py-1.5 data-[state=on]:bg-foreground data-[state=on]:text-background data-[state=on]:shadow-sm hover:bg-background hover:text-muted-foreground data-[state=on]:hover:bg-foreground data-[state=on]:hover:text-background`),children:`Repeating`})]}),n.scheduleMode===`once`?(0,X.jsxs)(`div`,{className:`space-y-2`,children:[(0,X.jsx)(L,{htmlFor:`schedule-once-at`,children:`Run at`}),(0,X.jsx)(z,{id:`schedule-once-at`,type:`datetime-local`,value:n.scheduledAtLocal,onChange:e=>r(Q(n,{scheduledAtLocal:e.target.value}))})]}):(0,X.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[(0,X.jsxs)(`div`,{className:`space-y-2`,children:[(0,X.jsx)(L,{children:`Preset`}),(0,X.jsxs)(he,{value:n.preset,onValueChange:e=>r(Q(n,{preset:e})),children:[(0,X.jsx)(I,{children:(0,X.jsx)(_e,{})}),(0,X.jsxs)(fe,{children:[(0,X.jsx)(se,{value:`daily`,children:`Daily`}),(0,X.jsx)(se,{value:`weekdays`,children:`Weekdays`}),(0,X.jsx)(se,{value:`weekly`,children:`Weekly`})]})]})]}),n.preset===`weekly`&&(0,X.jsxs)(`div`,{className:`space-y-2`,children:[(0,X.jsx)(L,{children:`Day`}),(0,X.jsxs)(he,{value:String(n.dayOfWeek),onValueChange:e=>r(Q(n,{dayOfWeek:Number(e)})),children:[(0,X.jsx)(I,{children:(0,X.jsx)(_e,{})}),(0,X.jsx)(fe,{children:_t.map(function(e){return(0,X.jsx)(se,{value:e.value,children:e.label},e.value)})})]})]}),(0,X.jsxs)(`div`,{className:`space-y-2`,children:[(0,X.jsx)(L,{htmlFor:`schedule-time`,children:`Time`}),(0,X.jsx)(z,{id:`schedule-time`,type:`time`,value:n.presetTime,onChange:e=>r(Q(n,{presetTime:e.target.value}))})]})]}),(0,X.jsxs)(`p`,{className:C(d.caption,`text-muted-foreground`),children:[`Timezone: `,n.timezone]})]}),t[21]=r,t[22]=h,t[23]=n,t[24]=w):w=t[24];let T;t[25]!==u||t[26]!==r||t[27]!==n?(T=n.kind===`event`&&(0,X.jsxs)(`div`,{className:`space-y-2 border-t border-border pt-4`,children:[(0,X.jsx)(L,{htmlFor:`event-key`,children:`Event Key`}),(0,X.jsx)(z,{id:`event-key`,value:n.eventKey,placeholder:`door.opened`,"aria-invalid":!!(u&&ht(u)),onChange:e=>r(Q(n,{eventKey:e.target.value}))}),u&&ht(u)?(0,X.jsx)(`p`,{className:C(d.caption,`text-destructive`),children:u}):(0,X.jsxs)(`p`,{className:C(d.caption,`text-muted-foreground`),children:[`Test in chat with `,(0,X.jsxs)(`code`,{children:[`/send-event `,n.eventKey.trim()||`event.key`]})]})]}),t[25]=u,t[26]=r,t[27]=n,t[28]=T):T=t[28];let E;t[29]!==u||t[30]!==n.kind?(E=u&&n.kind!==`event`?(0,X.jsx)(`p`,{className:C(d.caption,`text-destructive`),children:u}):null,t[29]=u,t[30]=n.kind,t[31]=E):E=t[31];let D;t[32]!==r||t[33]!==n?(D=n.kind!==`manual`&&(0,X.jsxs)(`div`,{className:`space-y-2 border-t border-border pt-4`,children:[(0,X.jsx)(L,{children:`Status`}),(0,X.jsxs)(ae,{type:`single`,value:n.enabled?`active`:`paused`,onValueChange:e=>{(e===`active`||e===`paused`)&&r(Q(n,{enabled:e===`active`}))},"aria-label":`Trigger status`,className:`inline-flex h-auto w-fit justify-start rounded-full border-0 bg-background p-1 text-muted-foreground`,children:[(0,X.jsx)(R,{value:`active`,"aria-label":`Active`,className:C(d.body,`h-auto min-h-0 min-w-0 rounded-full border-0 bg-background px-4 py-1.5 data-[state=on]:bg-foreground data-[state=on]:text-background data-[state=on]:shadow-sm hover:bg-background hover:text-muted-foreground data-[state=on]:hover:bg-foreground data-[state=on]:hover:text-background`),children:`Active`}),(0,X.jsx)(R,{value:`paused`,"aria-label":`Paused`,className:C(d.body,`h-auto min-h-0 min-w-0 rounded-full border-0 bg-background px-4 py-1.5 data-[state=on]:bg-foreground data-[state=on]:text-background data-[state=on]:shadow-sm hover:bg-background hover:text-muted-foreground data-[state=on]:hover:bg-foreground data-[state=on]:hover:text-background`),children:`Paused`})]})]}),t[32]=r,t[33]=n,t[34]=D):D=t[34];let O;return t[35]!==S||t[36]!==w||t[37]!==T||t[38]!==E||t[39]!==D||t[40]!==g?(O=(0,X.jsxs)(`div`,{className:`mt-4 space-y-4 rounded-lg border border-border p-4`,children:[g,S,w,T,E,D]}),t[35]=S,t[36]=w,t[37]=T,t[38]=E,t[39]=D,t[40]=g,t[41]=O):O=t[41],O}var $=k(`app.task-list.ui`);function yt(e){let t=(0,q.c)(28),{onSearchTermChange:r}=e,[i,a]=(0,K.useState)(!1),[o,s]=(0,K.useState)(``),c;t[0]===r?c=t[1]:(c=function(e){s(e),r(e)},t[0]=r,t[1]=c);let l=c,u;t[2]===r?u=t[3]:(u=function(){s(``),r(``),a(!1)},t[2]=r,t[3]=u);let d=u,f;t[4]!==d||t[5]!==i?(f=()=>{i?d():a(!0)},t[4]=d,t[5]=i,t[6]=f):f=t[6];let p,m;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,X.jsx)(n,{className:`h-4 w-4`}),m=(0,X.jsx)(`span`,{className:`sr-only`,children:`Search tasks`}),t[7]=p,t[8]=m):(p=t[7],m=t[8]);let h;t[9]!==i||t[10]!==f?(h=(0,X.jsx)(ie,{asChild:!0,children:(0,X.jsxs)(N,{type:`button`,variant:`ghost`,size:`icon-sm`,className:`text-muted-foreground`,onClick:f,"aria-expanded":i,children:[p,m]})}),t[9]=i,t[10]=f,t[11]=h):h=t[11];let g;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,X.jsx)(M,{children:`Search tasks`}),t[12]=g):g=t[12];let _;t[13]===h?_=t[14]:(_=(0,X.jsxs)(F,{children:[h,g]}),t[13]=h,t[14]=_);let v=i?`ml-1 w-44 opacity-100`:`w-0 opacity-0`,y;t[15]===v?y=t[16]:(y=C(`overflow-hidden transition-[width,opacity] duration-200`,v),t[15]=v,t[16]=y);let b;t[17]!==d||t[18]!==l||t[19]!==i||t[20]!==o?(b=i&&(0,X.jsx)(z,{type:`search`,value:o,onChange:e=>l(e.target.value),onKeyDown:e=>{e.key===`Escape`&&d()},placeholder:`Search`,"aria-label":`Search tasks`,autoFocus:!0,className:`h-8 min-w-44 px-2`}),t[17]=d,t[18]=l,t[19]=i,t[20]=o,t[21]=b):b=t[21];let x;t[22]!==y||t[23]!==b?(x=(0,X.jsx)(`div`,{className:y,children:b}),t[22]=y,t[23]=b,t[24]=x):x=t[24];let S;return t[25]!==x||t[26]!==_?(S=(0,X.jsxs)(`div`,{className:`flex items-center`,children:[_,x]}),t[25]=x,t[26]=_,t[27]=S):S=t[27],S}function bt({projectId:e,onThreadSelect:n,initialTasks:r}){let a=ye(),o=V(e=>e.projects),s=V(e=>e.selectedThreadId),l=V(e=>e.processingThreadIds),u=V(e=>e.pendingChatMessage),f=V(e=>e.queuedChatMessages),p=V(e=>e.projectModelSelections),m=o.find(t=>t.projectId===e),h=m?.threads.find(e=>e.threadId===s),v=s?p[s]:void 0,[y,b]=(0,K.useState)(r),[x,S]=(0,K.useState)(!1),[T,E]=(0,K.useState)(null),[D,O]=(0,K.useState)(``),[k,P]=(0,K.useState)(!1),[I,ae]=(0,K.useState)([]),[L,oe]=(0,K.useState)(new Set),[se,fe]=(0,K.useState)(``),[R,he]=(0,K.useState)(!1),[ge,_e]=(0,K.useState)(!1),[z,ve]=(0,K.useState)([]),[be,xe]=(0,K.useState)([]),[Ce,we]=(0,K.useState)(ct),[H,Re]=(0,K.useState)(ct),[ze,Be]=(0,K.useState)(!0),[Ve,W]=(0,K.useState)(null),[Ge,G]=(0,K.useState)(null);(0,K.useEffect)(()=>{Pe(e).then(ae).catch(e=>$.error(`Failed to fetch project tags:`,e))},[e]);let{setActions:Ke}=Oe(),q=(0,K.useCallback)(function(e){oe(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),qe=(0,K.useCallback)(async function(){_e(!0);try{await le(e),b(await Ee(e)),J(),Q(),ne();let t=await me();a({type:B.SetProjects,projects:t.projects,cloneRootPath:t.cloneRootPath})}catch(e){$.error(`Failed to refresh project tasks:`,e)}finally{_e(!1)}},[e,a]);(0,K.useEffect)(()=>(Ke((0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(yt,{onSearchTermChange:fe}),(0,X.jsxs)(F,{children:[(0,X.jsx)(ie,{asChild:!0,children:(0,X.jsxs)(N,{type:`button`,variant:`ghost`,size:`icon-sm`,className:`text-muted-foreground`,onClick:()=>void qe(),disabled:ge,children:[(0,X.jsx)(c,{className:C(`h-4 w-4`,ge&&`animate-spin`)}),(0,X.jsx)(`span`,{className:`sr-only`,children:`Refresh tasks`})]})}),(0,X.jsx)(M,{children:`Refresh`})]}),(0,X.jsxs)(Me,{children:[(0,X.jsxs)(F,{children:[(0,X.jsx)(ie,{asChild:!0,children:(0,X.jsx)(je,{asChild:!0,children:(0,X.jsxs)(N,{type:`button`,variant:`ghost`,size:`icon-sm`,className:`text-muted-foreground`,children:[(0,X.jsx)(i,{className:`h-4 w-4`}),(0,X.jsx)(`span`,{className:`sr-only`,children:`Filter and manage tags`})]})})}),(0,X.jsx)(M,{children:`Tags`})]}),(0,X.jsxs)(We,{align:`end`,className:`max-h-[var(--radix-dropdown-menu-content-available-height)] w-56 overflow-y-auto`,children:[I.length===0?(0,X.jsx)(U,{disabled:!0,className:`text-muted-foreground`,children:`No tags yet`}):I.map(function(e){return(0,X.jsxs)(Ne,{checked:L.has(e.id),onCheckedChange:()=>q(e.id),onSelect:e=>e.preventDefault(),children:[(0,X.jsx)(`span`,{className:`h-2 w-2 shrink-0 rounded-full`,style:{backgroundColor:e.color}}),(0,X.jsx)(`span`,{className:`truncate`,children:e.name})]},e.id)}),(0,X.jsx)(Ae,{}),(0,X.jsxs)(U,{onClick:()=>he(!0),children:[(0,X.jsx)(t,{className:`h-4 w-4`}),`Edit Tags`]})]})]})]})),()=>Ke(null)),[Ke,I,L,q,ge,qe]);function J(){Se(`project-tasks:${e}:`)}let Y=m?.tasksModifiedCount??0,Qe=(0,K.useRef)({});(0,K.useEffect)(()=>{let t=Qe.current[e]??0;if(Y===0){Qe.current[e]=0;return}t!==Y&&(Qe.current[e]=Y,Y>t&&qe())},[Y,e,qe]),(0,K.useEffect)(()=>{if(!y.some(e=>e.working))return;let t=setInterval(async()=>{try{let n=await Ee(e);b(n),n.some(e=>e.working)||clearInterval(t)}catch(e){$.error(`Failed to poll project tasks:`,e)}},2e3);return()=>clearInterval(t)},[y,e]),(0,K.useEffect)(()=>{b(r)},[r]),(0,K.useEffect)(()=>{x&&(O(``),ve([]),we(ct()),Be(!0))},[x]),(0,K.useEffect)(()=>{T&&(xe(T.task.tags??[]),Re(lt(T.task)))},[T]);function nt(e){b(t=>t.map(t=>t.id===e.id?e:t))}function ot(e){O(e.description),E({task:e}),G(null)}function Z(){E(null),O(``),G(null)}function st(e,t){if(e)return null;let n=pt(t);return n?mt(n):null}async function ut(){if(!D.trim())return;let t=st(ze,Ce);if(t){W(t);return}W(null),P(!0);try{let t=z.map(e=>e.name),n=ze?{}:dt(Ce),r=await Ue(e,D,{threadId:s??void 0,provider:v?.provider??h?.modelProvider,model:v?.id??h?.model,tags:t.length>0?t:void 0,...n});b(e=>[...e,r]),J(),Q(),S(!1),O(``),ve([]),W(null)}catch(e){W(mt(e instanceof Error?e.message:`Failed to add task`)),$.error(`Failed to add task:`,e)}finally{P(!1)}}async function ht(){if(!D.trim()||!T)return;let t=st(!ft(H),H);if(t){G(t);return}G(null),P(!0);try{let t=D.trim(),n=t!==T.task.description.trim(),r=be.map(e=>e.name),i=new Set((T.task.tags??[]).map(e=>A(e.name))),a=new Set(r.map(e=>A(e))),o=i.size!==a.size||[...a].some(e=>!i.has(e)),c=!gt(lt(T.task),H),l=c?dt(H):{};if(!n&&!o&&!c){Z();return}let u=await De(e,T.task.id,{description:n?t:void 0,threadId:s??void 0,provider:v?.provider??h?.modelProvider,model:v?.id??h?.model,tags:o?r:void 0,...l});b(e=>e.map(e=>e.id===u.id?u:e)),J(),o&&Q(),Z()}catch(e){G(mt(e instanceof Error?e.message:`Failed to save task`)),$.error(`Failed to save task:`,e)}finally{P(!1)}}async function _t(){if(T){P(!0);try{await He(e,T.task.id),b(e=>e.filter(e=>e.id!==T.task.id)),J(),Q(),Z()}catch(e){$.error(`Failed to delete task:`,e)}finally{P(!1)}}}function Q(){Pe(e).then(ae).catch(e=>$.error(`Failed to refresh project tags:`,e))}function bt(t){let n=new Set(t.map(function(e){return e.id}));ae(t),oe(function(e){return new Set([...e].filter(e=>n.has(e)))}),Ee(e).then(b).catch(e=>$.error(`Failed to refresh tasks after tag change:`,e))}async function xt(t){let r=await pe(e);if(!r)return;let i=null,o=null,s=await $e(r,n=>{o||(o=n,a({type:B.AddCreatingThread,projectId:e,threadId:n,title:Xe(m)}),a({type:B.AddProcessingThread,threadId:n})),De(e,t.id,{status:`Build`,working:!0,threadId:n}).then(e=>{i=e,nt(e)})});if(!s){o&&(a({type:B.RemoveCreatingThread,projectId:e,threadId:o}),a({type:B.RemoveProcessingThread,threadId:o}));return}a({type:B.RemoveProcessingThread,threadId:s});try{await Ze(a)}catch(e){$.error(`Failed to refresh projects after task thread creation:`,e)}await Le(e,t,`Build`,s,i,nt);let c=await ke(e,s);if(!c){$.error(`No model configuration found. Please configure a model and provider for this project first.`);return}Te(a,s,c.model,c.provider),n?await n(s):a({type:B.SelectThread,threadId:s,projectId:e}),a({type:B.SetPendingChatMessage,message:{threadId:s,message:t.description,model:c.model,provider:c.provider}})}async function St(t){if(!s){$.error(`No selected thread found for project task implementation.`);return}let r=await ke(e,s);if(!r){$.error(`No model configuration found. Please configure a model and provider for this project first.`);return}if(Te(a,s,r.model,r.provider),nt(await De(e,t.id,{status:`Build`,working:!0,threadId:s})),n?await n(s):a({type:B.SelectThread,threadId:s,projectId:e}),l.includes(s)||u?.threadId===s||f.some(e=>e.threadId===s)){a({type:B.EnqueueChatMessage,message:{id:_(),threadId:s,paneId:`primary`,message:t.description,model:r.model,attachments:[],provider:r.provider}});return}a({type:B.SetPendingChatMessage,message:{threadId:s,message:t.description,model:r.model,provider:r.provider}})}async function Ct(t){nt(await Fe(e,t.id)),J()}async function wt(t){nt(await De(e,t.id,{status:`Done`,working:!1})),J()}let Tt=Ye(y).filter(function(e){return e.status!==`Done`}),Et=se.trim().toLocaleLowerCase(),Dt=Tt.filter(e=>{let t=new Set((e.tags??[]).map(function(e){return e.id})),n=L.size===0||[...L].every(e=>t.has(e)),r=[e.title,e.description,...(e.tags??[]).map(function(e){return e.name})].join(` `).toLocaleLowerCase(),i=!Et||r.includes(Et);return n&&i});return(0,X.jsxs)(`div`,{className:`relative flex h-full min-h-0 min-w-0 flex-col overflow-hidden`,children:[(0,X.jsx)(ce,{className:`min-h-0 min-w-0 flex-1 overflow-hidden [&>[data-radix-scroll-area-viewport]>div]:block`,children:(0,X.jsx)(`div`,{className:`pb-14`,children:Tt.length===0?(0,X.jsx)(`p`,{className:C(d.bodyMuted,`px-4 py-8 text-center`),children:`No active tasks yet. Add one to get started.`}):Dt.length===0?(0,X.jsx)(`p`,{className:C(d.bodyMuted,`px-4 py-8 text-center`),children:`No tasks match the current filters.`}):(0,X.jsx)(`div`,{className:`min-w-0 w-full divide-y divide-border`,children:Dt.map(e=>(0,X.jsxs)(`div`,{className:`grid min-w-0 grid-cols-[minmax(0,1fr)_auto] grid-rows-[auto_auto] gap-x-2 gap-y-1 px-4 py-3 hover:bg-accent/40 sm:flex sm:items-start sm:gap-4`,children:[(0,X.jsxs)(`button`,{type:`button`,className:`col-start-1 row-start-1 block min-w-0 overflow-hidden text-left sm:flex-1`,onClick:()=>ot(e),children:[(0,X.jsx)(`p`,{className:C(d.label,`truncate leading-normal`),children:e.title}),(0,X.jsx)(`p`,{className:C(d.caption,`mt-1 line-clamp-2 break-all text-muted-foreground max-sm:hidden`),children:e.description}),Je(e)&&(0,X.jsx)(`p`,{className:C(d.caption,`mt-1 text-muted-foreground`),children:Je(e)}),(e.status!==`Ready`||(e.tags?.length??0)>0||e.modified)&&(0,X.jsxs)(`div`,{className:`mt-2 flex flex-wrap gap-1`,children:[e.status!==`Ready`&&(0,X.jsx)(rt,{status:e.status}),e.modified&&(0,X.jsx)(`span`,{className:`inline-flex items-center rounded-full bg-brand/15 px-2 py-0.5 text-[11px] font-medium leading-none text-brand`,children:`modified`}),e.tags?.map(function(e){return(0,X.jsx)(tt,{tag:e},e.id)})]})]}),(0,X.jsx)(`button`,{type:`button`,className:`col-span-2 row-start-2 block min-w-0 overflow-hidden text-left sm:hidden`,onClick:()=>ot(e),children:(0,X.jsx)(`p`,{className:C(d.caption,`line-clamp-4 break-all text-muted-foreground`),children:e.description})}),(e.status!==`Ready`||(e.tags?.length??0)>0||e.modified)&&(0,X.jsxs)(`div`,{className:`col-span-2 row-start-3 flex min-w-0 flex-wrap gap-1 sm:hidden`,children:[e.status!==`Ready`&&(0,X.jsx)(rt,{status:e.status}),e.modified&&(0,X.jsx)(`span`,{className:`inline-flex items-center rounded-full bg-brand/15 px-2 py-0.5 text-[11px] font-medium leading-none text-brand`,children:`modified`}),e.tags?.map(function(e){return(0,X.jsx)(tt,{tag:e},e.id)})]}),(0,X.jsxs)(`div`,{className:`col-start-2 row-start-1 flex shrink-0 items-center gap-1.5 self-start`,children:[e.threadId&&n&&(0,X.jsxs)(F,{children:[(0,X.jsx)(ie,{asChild:!0,children:(0,X.jsxs)(N,{variant:`ghost`,size:`icon`,className:`h-8 w-8 shrink-0`,onClick:()=>n(e.threadId),children:[(0,X.jsx)(w,{className:`h-4 w-4`}),(0,X.jsx)(`span`,{className:`sr-only`,children:`Open thread`})]})}),(0,X.jsx)(M,{children:`Open thread`})]}),(0,X.jsx)(et,{task:e,onImplementInNewThread:xt,onImplementInThisThread:St,onMarkDone:wt,onRunNow:Ct})]})]},e.id))})})}),(0,X.jsxs)(F,{children:[(0,X.jsx)(ie,{asChild:!0,children:(0,X.jsxs)(N,{size:`icon`,className:`absolute bottom-6 right-6 z-10 h-10 w-10 rounded-full shadow-lg`,onClick:()=>S(!0),children:[(0,X.jsx)(g,{className:`h-5 w-5`}),(0,X.jsx)(`span`,{className:`sr-only`,children:`Add task`})]})}),(0,X.jsx)(M,{children:`Add task`})]}),(0,X.jsx)(re,{open:x,onOpenChange:e=>{S(e),e||W(null)},children:(0,X.jsxs)(te,{className:`max-w-2xl flex-col max-md:top-[max(1rem,env(safe-area-inset-top,0px))] max-md:max-h-[calc(100dvh-2rem)] max-md:translate-y-0 max-md:overflow-y-auto max-md:data-[state=closed]:slide-out-to-top max-md:data-[state=open]:slide-in-from-top max-md:data-[state=closed]:slide-out-to-left-0 max-md:data-[state=open]:slide-in-from-left-0 max-md:data-[state=closed]:zoom-out-100 max-md:data-[state=open]:zoom-in-100 md:max-h-[calc(100svh-2rem)]`,children:[(0,X.jsx)(ee,{children:(0,X.jsxs)(F,{children:[(0,X.jsx)(ie,{asChild:!0,children:(0,X.jsx)(ue,{className:`w-fit cursor-help`,children:`Add Task`})}),(0,X.jsx)(M,{side:`top`,className:`max-w-xs`,children:`A title will be generated automatically from your description.`})]})}),(0,X.jsxs)(`div`,{className:`py-2`,children:[(0,X.jsx)(Ie,{placeholder:`Describe what needs to be done...`,value:D,onChange:e=>O(e.target.value),rows:12,className:`max-h-[min(16rem,40svh)] resize-none text-base sm:max-h-none`,autoFocus:!0,onKeyDown:e=>{e.key===`Enter`&&(e.metaKey||e.ctrlKey)&&ut()}}),(0,X.jsx)(`div`,{className:`mt-4`,children:(0,X.jsx)(it,{selectedTags:z,existingTags:I,onChange:ve,allowCreate:!1})}),(0,X.jsx)(vt,{value:Ce,onChange:e=>{we(e),W(null)},collapsed:ze,onCollapsedChange:Be,showCollapseControl:!0,error:Ve})]}),(0,X.jsx)(de,{children:(0,X.jsx)(N,{onClick:()=>void ut(),disabled:k||!D.trim(),children:k?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(j,{className:`mr-1 h-3 w-3 animate-spin`}),`Generating title...`]}):`Add`})})]})}),(0,X.jsx)(re,{open:T!==null,onOpenChange:e=>!e&&Z(),children:(0,X.jsxs)(te,{className:`max-w-2xl flex-col max-md:top-[max(1rem,env(safe-area-inset-top,0px))] max-md:max-h-[calc(100dvh-2rem)] max-md:translate-y-0 max-md:overflow-y-auto max-md:data-[state=closed]:slide-out-to-top max-md:data-[state=open]:slide-in-from-top max-md:data-[state=closed]:slide-out-to-left-0 max-md:data-[state=open]:slide-in-from-left-0 max-md:data-[state=closed]:zoom-out-100 max-md:data-[state=open]:zoom-in-100 md:max-h-[calc(100svh-2rem)]`,children:[(0,X.jsx)(ee,{children:(0,X.jsx)(ue,{children:`Edit Task`})}),(0,X.jsxs)(`div`,{className:`py-2`,children:[(0,X.jsx)(Ie,{placeholder:`Describe what needs to be done...`,value:D,onChange:e=>O(e.target.value),rows:12,className:`max-h-[min(16rem,40svh)] resize-none text-base sm:max-h-none`,autoFocus:!0,onKeyDown:e=>{e.key===`Enter`&&(e.metaKey||e.ctrlKey)&&ht()}}),(0,X.jsx)(`div`,{className:`mt-4`,children:(0,X.jsx)(it,{selectedTags:be,existingTags:I,onChange:xe,allowCreate:!1})}),(0,X.jsx)(vt,{value:H,onChange:e=>{Re(e),G(null)},showCollapseControl:!0,collapsed:!ft(H),onCollapsedChange:e=>{e&&Re(ct()),G(null)},error:Ge})]}),(0,X.jsxs)(de,{className:`flex-row justify-between gap-2 sm:gap-0`,children:[(0,X.jsx)(N,{variant:`destructive`,onClick:()=>void _t(),disabled:k,children:`Delete`}),(0,X.jsx)(N,{onClick:()=>void ht(),disabled:k||!D.trim(),className:`w-auto`,children:k?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(j,{className:`mr-1 h-3 w-3 animate-spin`}),`Saving...`]}):`Save`})]})]})}),(0,X.jsx)(at,{open:R,onOpenChange:he,projectId:e,tags:I,onTagsChanged:bt})]})}function xt(e){let t=(0,q.c)(13),n,r,i;t[0]===e?(n=t[1],r=t[2],i=t[3]):({projectId:r,loadVersion:n,...i}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i);let a;t[4]!==n||t[5]!==r?(a=Y(r,n),t[4]=n,t[5]=r,t[6]=a):a=t[6];let o;t[7]===r?o=t[8]:(o=()=>Qe(r),t[7]=r,t[8]=o);let s=Ce(a,o),c;return t[9]!==s||t[10]!==r||t[11]!==i?(c=(0,X.jsx)(bt,{projectId:r,initialTasks:s,...i}),t[9]=s,t[10]=r,t[11]=i,t[12]=c):c=t[12],c}function St(e){let t=(0,q.c)(18),n,r;t[0]===e?(n=t[1],r=t[2]):({refreshTrigger:r,...n}=e,t[0]=e,t[1]=n,t[2]=r);let i=r===void 0?0:r,[a,o]=(0,K.useState)(0),s,c;t[3]!==n.projectId||t[4]!==i?(s=()=>{i!==0&&o(e=>(xe(Y(n.projectId,e)),e+1))},c=[i,n.projectId],t[3]=n.projectId,t[4]=i,t[5]=s,t[6]=c):(s=t[5],c=t[6]),(0,K.useEffect)(s,c);let l;t[7]!==a||t[8]!==n.projectId?(l=function(){xe(Y(n.projectId,a)),o(Ct)},t[7]=a,t[8]=n.projectId,t[9]=l):l=t[9];let u=l,d;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,X.jsx)(oe,{className:`h-64`}),t[10]=d):d=t[10];let f=`${n.projectId}:${a}`,p;t[11]!==a||t[12]!==n||t[13]!==f?(p=(0,X.jsx)(K.Suspense,{fallback:d,children:(0,X.jsx)(xt,{...n,loadVersion:a},f)}),t[11]=a,t[12]=n,t[13]=f,t[14]=p):p=t[14];let m;return t[15]!==u||t[16]!==p?(m=(0,X.jsx)(Ke,{fallbackTitle:`Failed to load tasks`,onRetry:u,children:p}),t[15]=u,t[16]=p,t[17]=m):m=t[17],m}function Ct(e){return e+1}var wt=k(`app.tasks-view.ui`);function Tt({projectId:e,refreshTrigger:t}){let n=ye(),r=V(e=>e.projects),i=V(e=>e.selectedThreadId),a=V(e=>e.selectedProjectId),{expandWindow:o,hasOpenWindows:s}=be();(0,K.useEffect)(()=>{let e=!1;return(async()=>{try{let{getProjects:t,invalidateProjectsCache:r}=await ve(async()=>{let{getProjects:e,invalidateProjectsCache:t}=await import(`./onboarding-DTF0L4Nt.js`).then(e=>e.Xt);return{getProjects:e,invalidateProjectsCache:t}},__vite__mapDeps([0,1,2]));r();let i=await t();e||n({type:B.SetProjects,projects:i.projects,cloneRootPath:i.cloneRootPath})}catch(e){wt.error(`Failed to refresh projects on tasks view mount:`,e)}})(),()=>{e=!0}},[n]);async function c(t){if(r.find(t=>t.projectId===e)){s&&o(D);try{let{getProjects:r,invalidateProjectsCache:o}=await ve(async()=>{let{getProjects:e,invalidateProjectsCache:t}=await import(`./onboarding-DTF0L4Nt.js`).then(e=>e.Xt);return{getProjects:e,invalidateProjectsCache:t}},__vite__mapDeps([0,1,2]));o();let s=await r();n({type:B.SetProjects,projects:s.projects,cloneRootPath:s.cloneRootPath});let c=s.projects.find(t=>t.projectId===e);if(c&&c.threads.find(e=>e.threadId===t)){(i!==t||a!==e)&&n({type:B.SelectThread,threadId:t,projectId:e});try{let e=await ge();n({type:B.SetProcessingThreads,threadIds:e})}catch(e){wt.error(`Failed to fetch processing threads after thread selection:`,e)}}}catch(r){wt.error(`Failed to refresh projects for thread selection:`,r),(i!==t||a!==e)&&n({type:B.SelectThread,threadId:t,projectId:e});try{let e=await ge();n({type:B.SetProcessingThreads,threadIds:e})}catch(e){wt.error(`Failed to fetch processing threads after fallback thread selection:`,e)}}}}return(0,X.jsx)(`div`,{className:`relative flex h-full min-w-0 flex-col overflow-hidden`,children:(0,X.jsx)(`div`,{className:`min-w-0 flex-1 overflow-hidden`,children:(0,X.jsx)(St,{projectId:e,refreshTrigger:t,onThreadSelect:c})})})}export{Tt as TasksView};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{J as e}from"./store-B_cK-gsT.js";function t(e,t,n){return JSON.stringify([{type:`tool_use`,name:`bash`,id:t,input:e===null?{}:{command:e},...n?.displayName?{displayName:n.displayName}:{},...n?.activeDisplayName?{activeDisplayName:n.activeDisplayName}:{}}])}function n(e,t,n,r){return JSON.stringify([{type:`tool-result`,toolCallId:e,toolName:`bash`,content:t,isError:n,...r?.displayName?{displayName:r.displayName}:{},...r?.activeDisplayName?{activeDisplayName:r.activeDisplayName}:{}}])}function r(e,t,r,i,a){return e+n(t,r,i,a)}function i(e){return{messageId:e.messageId,sender:`agent`,content:t(e.command,e.toolCallId,e.labels),contentType:`markdown`,timestamp:new Date().toISOString(),isThinking:!1}}var a={create:`Creating thread`,delete:`Deleting thread`},o={create:`Created thread`,delete:`Deleted thread`},s={create:`Thread creation failed`,delete:`Thread deletion failed`},c={webapp:`Creating app`,clone:`Cloning repository`,folder:`Creating project`,zip:`Creating project from zip`},l={webapp:`App creation failed`,clone:`Clone failed`,folder:`Project creation failed`,zip:`Project creation failed`};function u(e){return e?.kind===`create`||e?.kind===`create-project`}function d(e){return e.mode??`webapp`}function f(e){return e.kind===`create-project`?c[d(e)]:a[e.kind]}function p(e){return e.kind===`create-project`?l[d(e)]:s[e.kind]}function m(e){return{displayName:f(e),activeDisplayName:f(e)}}function h(e,t){return t?`The branch I created is ${t} and I'm ready to start working on ${e}.`:`I'm ready to start working on ${e}.`}function g(e,t){let n=`thread-${e}-${t.threadId}`;return{kind:e,...e===`create-project`?{mode:t.mode??`webapp`}:{},threadId:t.threadId,projectId:t.projectId,projectName:t.projectName,toolCallId:n,messageId:`msg-${n}`}}function _(e){return g(`create`,e)}function v(e){return g(`delete`,e)}function y(e){return g(`create-project`,e)}function b(e){return i({messageId:e.messageId,command:e.projectName,toolCallId:e.toolCallId,labels:m(e)})}function x(t,n,r){t({type:e.SetThreadToolSession,session:n}),t({type:e.UpdateToolExecutionOutput,toolCallId:n.toolCallId,threadId:n.threadId,toolName:`bash`,executionOutput:r})}function S(t,n,r){t({type:e.SetThreadToolSession,session:n}),t({type:e.SelectThread,threadId:n.threadId,projectId:n.projectId,focusInput:!0}),t({type:e.SetMessages,messages:[b(n)]}),x(t,n,r)}function C(t,n,r){t({type:e.AddMessage,message:b(n),threadId:n.threadId}),x(t,n,r)}function w(t,n,r,i){i&&t({type:e.AppendToolExecutionOutput,toolCallId:n,threadId:r,toolName:`bash`,delta:i})}function T(n,i,a,s){let c=s?.isError===!0,l=u(i),d=l?h(i.projectName,i.kind===`create`?s?.branch:void 0):o.delete,m={displayName:c?p(i):d,activeDisplayName:f(i)},g=r(t(!c&&l?null:i.projectName,i.toolCallId,m),i.toolCallId,a,c,m);n({type:e.UpdateMessage,messageId:i.messageId,threadId:i.threadId,content:g}),l&&!c&&n({type:e.SetThreadCreationSummary,threadId:i.threadId,message:{...b(i),content:g}}),n({type:e.ClearToolCallProgress,toolCallId:i.toolCallId}),n({type:e.ClearThreadToolSession,threadId:i.threadId})}export{b as a,S as c,t as d,i as f,v as i,C as l,y as n,T as o,_ as r,u as s,w as t,r as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{ki as t}from"./interactive-BrHVRHmQ.js";import{Ao as n,C as r,F as i,I as a,It as o,L as s,N as c}from"./onboarding-DTF0L4Nt.js";var l=1,u=.9,d=.8,f=.17,p=.1,m=.999,h=.9999,g=.99,_=/[\\\/_+.#"@\[\(\{&]/,v=/[\\\/_+.#"@\[\(\{&]/g,y=/[\s-]/,b=/[\s-]/g;function x(e,t,n,r,i,a,o){if(a===t.length)return i===e.length?l:g;var s=`${i},${a}`;if(o[s]!==void 0)return o[s];for(var c=r.charAt(a),S=n.indexOf(c,i),C=0,w,T,E,D;S>=0;)w=x(e,t,n,r,S+1,a+1,o),w>C&&(S===i?w*=l:_.test(e.charAt(S-1))?(w*=d,E=e.slice(i,S-1).match(v),E&&i>0&&(w*=m**+E.length)):y.test(e.charAt(S-1))?(w*=u,D=e.slice(i,S-1).match(b),D&&i>0&&(w*=m**+D.length)):(w*=f,i>0&&(w*=m**+(S-i))),e.charAt(S)!==t.charAt(a)&&(w*=h)),(w<p&&n.charAt(S-1)===r.charAt(a+1)||r.charAt(a+1)===r.charAt(a)&&n.charAt(S-1)!==r.charAt(a))&&(T=x(e,t,n,r,S+1,a+2,o),T*p>w&&(w=T*p)),w>C&&(C=w),S=n.indexOf(c,S+1);return o[s]=C,C}function S(e){return e.toLowerCase().replace(b,` `)}function C(e,t,n){return e=n&&n.length>0?`${e+` `+n.join(` `)}`:e,x(e,t,S(e),S(t),0,0,{})}var w=e(t(),1),T=`[cmdk-group=""]`,E=`[cmdk-group-items=""]`,D=`[cmdk-group-heading=""]`,O=`[cmdk-item=""]`,k=`${O}:not([aria-disabled="true"])`,A=`cmdk-item-select`,j=`data-value`,ee=(e,t,n)=>C(e,t,n),M=w.createContext(void 0),N=()=>w.useContext(M),P=w.createContext(void 0),F=()=>w.useContext(P),I=w.createContext(void 0),L=w.forwardRef((e,t)=>{let n=Y(()=>({search:``,value:e.value??e.defaultValue??``,selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}})),i=Y(()=>new Set),a=Y(()=>new Map),s=Y(()=>new Map),c=Y(()=>new Set),l=q(e),{label:u,children:d,value:f,onValueChange:p,filter:m,shouldFilter:h,loop:g,disablePointerSelection:_=!1,vimBindings:v=!0,...y}=e,b=o(),x=o(),S=o(),C=w.useRef(null),N=re();J(()=>{if(f!==void 0){let e=f.trim();n.current.value=e,F.emit()}},[f]),J(()=>{N(6,V)},[]);let F=w.useMemo(()=>({subscribe:e=>(c.current.add(e),()=>c.current.delete(e)),snapshot:()=>n.current,setState:(e,t,r)=>{var i,a,o;if(!Object.is(n.current[e],t)){if(n.current[e]=t,e===`search`)B(),R(),N(1,z);else if(e===`value`){if(document.activeElement.hasAttribute(`cmdk-input`)||document.activeElement.hasAttribute(`cmdk-root`)){let e=document.getElementById(S);e?e.focus():(i=document.getElementById(b))==null||i.focus()}if(N(7,()=>{n.current.selectedItemId=H()?.id,F.emit()}),r||N(5,V),l.current?.value!==void 0){let e=t??``;(o=(a=l.current).onValueChange)==null||o.call(a,e);return}}F.emit()}},emit:()=>{c.current.forEach(e=>e())}}),[]),I=w.useMemo(()=>({value:(e,t,r)=>{t!==s.current.get(e)?.value&&(s.current.set(e,{value:t,keywords:r}),n.current.filtered.items.set(e,L(t,r)),N(2,()=>{R(),F.emit()}))},item:(e,t)=>(i.current.add(e),t&&(a.current.has(t)?a.current.get(t).add(e):a.current.set(t,new Set([e]))),N(3,()=>{B(),R(),n.current.value||z(),F.emit()}),()=>{s.current.delete(e),i.current.delete(e),n.current.filtered.items.delete(e);let t=H();N(4,()=>{B(),t?.getAttribute(`id`)===e&&z(),F.emit()})}),group:e=>(a.current.has(e)||a.current.set(e,new Set),()=>{s.current.delete(e),a.current.delete(e)}),filter:()=>l.current.shouldFilter,label:u||e[`aria-label`],getDisablePointerSelection:()=>l.current.disablePointerSelection,listId:b,inputId:S,labelId:x,listInnerRef:C}),[]);function L(e,t){let r=l.current?.filter??ee;return e?r(e,n.current.search,t):0}function R(){if(!n.current.search||l.current.shouldFilter===!1)return;let e=n.current.filtered.items,t=[];n.current.filtered.groups.forEach(n=>{let r=a.current.get(n),i=0;r.forEach(t=>{let n=e.get(t);i=Math.max(n,i)}),t.push([n,i])});let r=C.current;U().sort((t,n)=>{let r=t.getAttribute(`id`),i=n.getAttribute(`id`);return(e.get(i)??0)-(e.get(r)??0)}).forEach(e=>{let t=e.closest(E);t?t.appendChild(e.parentElement===t?e:e.closest(`${E} > *`)):r.appendChild(e.parentElement===r?e:e.closest(`${E} > *`))}),t.sort((e,t)=>t[1]-e[1]).forEach(e=>{let t=C.current?.querySelector(`${T}[${j}="${encodeURIComponent(e[0])}"]`);t?.parentElement.appendChild(t)})}function z(){let e=U().find(e=>e.getAttribute(`aria-disabled`)!==`true`)?.getAttribute(j);F.setState(`value`,e||void 0)}function B(){if(!n.current.search||l.current.shouldFilter===!1){n.current.filtered.count=i.current.size;return}n.current.filtered.groups=new Set;let e=0;for(let t of i.current){let r=L(s.current.get(t)?.value??``,s.current.get(t)?.keywords??[]);n.current.filtered.items.set(t,r),r>0&&e++}for(let[e,t]of a.current)for(let r of t)if(n.current.filtered.items.get(r)>0){n.current.filtered.groups.add(e);break}n.current.filtered.count=e}function V(){var e;let t=H();t&&(t.parentElement?.firstChild===t&&((e=t.closest(T)?.querySelector(D))==null||e.scrollIntoView({block:`nearest`})),t.scrollIntoView({block:`nearest`}))}function H(){return C.current?.querySelector(`${O}[aria-selected="true"]`)}function U(){return Array.from(C.current?.querySelectorAll(k)||[])}function W(e){let t=U()[e];t&&F.setState(`value`,t.getAttribute(j))}function G(e){var t;let n=H(),r=U(),i=r.findIndex(e=>e===n),a=r[i+e];(t=l.current)!=null&&t.loop&&(a=i+e<0?r[r.length-1]:i+e===r.length?r[0]:r[i+e]),a&&F.setState(`value`,a.getAttribute(j))}function K(e){let t=H()?.closest(T),n;for(;t&&!n;)t=e>0?te(t,T):ne(t,T),n=t?.querySelector(k);n?F.setState(`value`,n.getAttribute(j)):G(e)}let X=()=>W(U().length-1),Z=e=>{e.preventDefault(),e.metaKey?X():e.altKey?K(1):G(1)},Q=e=>{e.preventDefault(),e.metaKey?W(0):e.altKey?K(-1):G(-1)};return w.createElement(r.div,{ref:t,tabIndex:-1,...y,"cmdk-root":``,onKeyDown:e=>{var t;(t=y.onKeyDown)==null||t.call(y,e);let n=e.nativeEvent.isComposing||e.keyCode===229;if(!(e.defaultPrevented||n))switch(e.key){case`n`:case`j`:v&&e.ctrlKey&&Z(e);break;case`ArrowDown`:Z(e);break;case`p`:case`k`:v&&e.ctrlKey&&Q(e);break;case`ArrowUp`:Q(e);break;case`Home`:e.preventDefault(),W(0);break;case`End`:e.preventDefault(),X();break;case`Enter`:{e.preventDefault();let t=H();if(t){let e=new Event(A);t.dispatchEvent(e)}}}}},w.createElement(`label`,{"cmdk-label":``,htmlFor:I.inputId,id:I.labelId,style:ie},u),$(e,e=>w.createElement(P.Provider,{value:F},w.createElement(M.Provider,{value:I},e))))}),R=w.forwardRef((e,t)=>{let i=o(),a=w.useRef(null),s=w.useContext(I),c=N(),l=q(e),u=l.current?.forceMount??s?.forceMount;J(()=>{if(!u)return c.item(i,s?.id)},[u]);let d=Z(i,a,[e.value,e.children,a],e.keywords),f=F(),p=X(e=>e.value&&e.value===d.current),m=X(e=>u||c.filter()===!1?!0:e.search?e.filtered.items.get(i)>0:!0);w.useEffect(()=>{let t=a.current;if(!(!t||e.disabled))return t.addEventListener(A,h),()=>t.removeEventListener(A,h)},[m,e.onSelect,e.disabled]);function h(){var e,t;g(),(t=(e=l.current).onSelect)==null||t.call(e,d.current)}function g(){f.setState(`value`,d.current,!0)}if(!m)return null;let{disabled:_,value:v,onSelect:y,forceMount:b,keywords:x,...S}=e;return w.createElement(r.div,{ref:n(a,t),...S,id:i,"cmdk-item":``,role:`option`,"aria-disabled":!!_,"aria-selected":!!p,"data-disabled":!!_,"data-selected":!!p,onPointerMove:_||c.getDisablePointerSelection()?void 0:g,onClick:_?void 0:h},e.children)}),z=w.forwardRef((e,t)=>{let{heading:i,children:a,forceMount:s,...c}=e,l=o(),u=w.useRef(null),d=w.useRef(null),f=o(),p=N(),m=X(e=>s||p.filter()===!1?!0:e.search?e.filtered.groups.has(l):!0);J(()=>p.group(l),[]),Z(l,u,[e.value,e.heading,d]);let h=w.useMemo(()=>({id:l,forceMount:s}),[s]);return w.createElement(r.div,{ref:n(u,t),...c,"cmdk-group":``,role:`presentation`,hidden:m?void 0:!0},i&&w.createElement(`div`,{ref:d,"cmdk-group-heading":``,"aria-hidden":!0,id:f},i),$(e,e=>w.createElement(`div`,{"cmdk-group-items":``,role:`group`,"aria-labelledby":i?f:void 0},w.createElement(I.Provider,{value:h},e))))}),B=w.forwardRef((e,t)=>{let{alwaysRender:i,...a}=e,o=w.useRef(null),s=X(e=>!e.search);return!i&&!s?null:w.createElement(r.div,{ref:n(o,t),...a,"cmdk-separator":``,role:`separator`})}),V=w.forwardRef((e,t)=>{let{onValueChange:n,...i}=e,a=e.value!=null,o=F(),s=X(e=>e.search),c=X(e=>e.selectedItemId),l=N();return w.useEffect(()=>{e.value!=null&&o.setState(`search`,e.value)},[e.value]),w.createElement(r.input,{ref:t,...i,"cmdk-input":``,autoComplete:`off`,autoCorrect:`off`,spellCheck:!1,"aria-autocomplete":`list`,role:`combobox`,"aria-expanded":!0,"aria-controls":l.listId,"aria-labelledby":l.labelId,"aria-activedescendant":c,id:l.inputId,type:`text`,value:a?e.value:s,onChange:e=>{a||o.setState(`search`,e.target.value),n?.(e.target.value)}})}),H=w.forwardRef((e,t)=>{let{children:i,label:a=`Suggestions`,...o}=e,s=w.useRef(null),c=w.useRef(null),l=X(e=>e.selectedItemId),u=N();return w.useEffect(()=>{if(c.current&&s.current){let e=c.current,t=s.current,n,r=new ResizeObserver(()=>{n=requestAnimationFrame(()=>{let n=e.offsetHeight;t.style.setProperty(`--cmdk-list-height`,n.toFixed(1)+`px`)})});return r.observe(e),()=>{cancelAnimationFrame(n),r.unobserve(e)}}},[]),w.createElement(r.div,{ref:n(s,t),...o,"cmdk-list":``,role:`listbox`,tabIndex:-1,"aria-activedescendant":l,"aria-label":a,id:u.listId},$(e,e=>w.createElement(`div`,{ref:n(c,u.listInnerRef),"cmdk-list-sizer":``},e)))}),U=w.forwardRef((e,t)=>{let{open:n,onOpenChange:r,overlayClassName:o,contentClassName:l,container:u,...d}=e;return w.createElement(s,{open:n,onOpenChange:r},w.createElement(a,{container:u},w.createElement(i,{"cmdk-overlay":``,className:o}),w.createElement(c,{"aria-label":e.label,"cmdk-dialog":``,className:l},w.createElement(L,{ref:t,...d}))))}),W=w.forwardRef((e,t)=>X(e=>e.filtered.count===0)?w.createElement(r.div,{ref:t,...e,"cmdk-empty":``,role:`presentation`}):null),G=w.forwardRef((e,t)=>{let{progress:n,children:i,label:a=`Loading...`,...o}=e;return w.createElement(r.div,{ref:t,...o,"cmdk-loading":``,role:`progressbar`,"aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":100,"aria-label":a},$(e,e=>w.createElement(`div`,{"aria-hidden":!0},e)))}),K=Object.assign(L,{List:H,Item:R,Input:V,Group:z,Separator:B,Dialog:U,Empty:W,Loading:G});function te(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return n;n=n.nextElementSibling}}function ne(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return n;n=n.previousElementSibling}}function q(e){let t=w.useRef(e);return J(()=>{t.current=e}),t}var J=typeof window>`u`?w.useEffect:w.useLayoutEffect;function Y(e){let t=w.useRef();return t.current===void 0&&(t.current=e()),t}function X(e){let t=F(),n=()=>e(t.snapshot());return w.useSyncExternalStore(t.subscribe,n,n)}function Z(e,t,n,r=[]){let i=w.useRef(),a=N();return J(()=>{var o;let s=(()=>{for(let e of n){if(typeof e==`string`)return e.trim();if(typeof e==`object`&&`current`in e)return e.current?e.current.textContent?.trim():i.current}})(),c=r.map(e=>e.trim());a.value(e,s,c),(o=t.current)==null||o.setAttribute(j,s),i.current=s}),i}var re=()=>{let[e,t]=w.useState(),n=Y(()=>new Map);return J(()=>{n.current.forEach(e=>e()),n.current=new Map},[e]),(e,r)=>{n.current.set(e,r),t({})}};function Q(e){let t=e.type;return typeof t==`function`?t(e.props):`render`in t?t.render(e.props):e}function $({asChild:e,children:t},n){return e&&w.isValidElement(t)?w.cloneElement(Q(t),{ref:t.ref},n(t.props.children)):n(t)}var ie={position:`absolute`,width:`1px`,height:`1px`,padding:`0`,margin:`-1px`,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,borderWidth:`0`};export{K as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Oi as t,ki as n}from"./interactive-BrHVRHmQ.js";var r=t(),i=e(n(),1);function a(e){let t=(0,r.c)(3),[n,a]=(0,i.useState)(e===void 0?``:e),o=(0,i.useDeferredValue)(n),s;return t[0]!==o||t[1]!==n?(s={query:n,setQuery:a,deferredQuery:o},t[0]=o,t[1]=n,t[2]=s):s=t[2],s}export{a as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{ki as t}from"./interactive-BrHVRHmQ.js";import{En as n,Or as r,Sn as i,lr as a}from"./onboarding-DTF0L4Nt.js";import{J as o,n as s,r as c}from"./store-B_cK-gsT.js";import{t as l}from"./use-toast-hxHsVv6a.js";import{n as u}from"./explorer-tab-context-BdjTEbFh.js";import{Nt as d,q as f}from"./index-CsUbYVa9.js";var p=e(t(),1);function m({findItems:e,installedPathSuffix:t=``,explorerPathSuffix:m=``,sortByName:h=!1,removedToastTitle:g}){let _=s(),v=c(e=>e.projects),y=c(e=>e.selectedProjectId),b=c(e=>e.selectedThreadId),{handleSelectThread:x}=f(),{openChatDockPanel:S}=d(),{setPendingExplorerPath:C,triggerExplorerRefresh:w,setExplorerClearPath:T}=u(),[E,D]=(0,p.useState)([]),[O,k]=(0,p.useState)(!0),[A,j]=(0,p.useState)(null),[M,N]=(0,p.useState)(!1),[P,F]=(0,p.useState)(new Set),I=(0,p.useCallback)(async()=>{if(!y){k(!1);return}k(!0);try{let n=e(await a(y));if(b)try{let t=e(await r(b)),i=new Set(n.map(e=>e.path));for(let e of t)i.has(e.path)||n.push(e)}catch{}h&&(n=[...n].sort((e,t)=>e.name.localeCompare(t.name))),D(n),F(new Set(n.map(e=>`${e.path}${t}`)))}catch{D([]),F(new Set)}finally{k(!1)}},[y,b,e,t,h]);return(0,p.useLayoutEffect)(()=>{y&&k(!0)},[y,b]),(0,p.useEffect)(()=>{I()},[I]),{selectedProjectId:y,selectedThreadId:b,items:E,loading:O,deleteConfirm:A,setDeleteConfirm:j,deleting:M,installedFilePaths:P,setInstalledFilePaths:F,loadItems:I,handleDelete:(0,p.useCallback)(async e=>{if(!y)return;let r=e.name,a=e.path;N(!0);try{try{await i(y,a)}catch{if(b)await n(b,a);else throw Error(`No thread selected to delete from`)}T(a),w(),F(e=>{let n=new Set(e);return n.delete(`${a}${t}`),n}),l({title:g,description:r}),j(null),await I()}catch(e){l({title:`Error`,description:e instanceof Error?e.message:`Failed to remove item`,variant:`destructive`})}finally{N(!1)}},[y,b,I,w,T,t,g]),handleOpenInExplorer:(0,p.useCallback)(e=>{if(!y)return;let t=v.find(e=>e.projectId===y);if(t){if(_({type:o.OpenProjectPanel,projectId:y}),!t.threads.some(e=>e.threadId===b)){let e=t.threads.find(e=>e.isSelected)??t.threads[0]??null;e&&x(y,e.threadId)}C(`${e}${m}`),S(`explorer`)}},[y,b,v,_,x,C,S,m]),triggerExplorerRefresh:w}}export{m as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Oi as t,ki as n}from"./interactive-BrHVRHmQ.js";var r=t(),i=e(n(),1);function a(e,t){let n=(0,r.c)(10),a;n[0]===t?a=n[1]:(a=t.some(Boolean),n[0]=t,n[1]=a);let o=a,[s,c]=(0,i.useState)(!0),l=(0,i.useRef)(!0),u;n[2]===Symbol.for(`react.memo_cache_sentinel`)?(u=()=>{l.current=!0,c(!0)},n[2]=u):u=n[2];let d;n[3]===e?d=n[4]:(d=[e],n[3]=e,n[4]=d),(0,i.useEffect)(u,d);let f;n[5]===o?f=n[6]:(f=()=>{o||!l.current||(l.current=!1,c(!1))},n[5]=o,n[6]=f);let p;return n[7]!==o||n[8]!==e?(p=[o,e],n[7]=o,n[8]=e,n[9]=p):p=n[9],(0,i.useEffect)(f,p),s}export{a as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{ki as t}from"./interactive-BrHVRHmQ.js";var n=e(t(),1),r=new Map;function i(e,t){let n=r.get(e);return n||(n={promise:t().catch(t=>{throw r.delete(e),t})},r.set(e,n)),n.promise}function a(e){r.delete(e)}function o(e){for(let t of r.keys())t.startsWith(e)&&r.delete(t)}function s(e,t){return(0,n.use)(i(e,t))}export{a as n,o as r,s as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{Oi as t,ki as n}from"./interactive-BrHVRHmQ.js";var r=t(),i=e(n(),1),a=1,o=1e3,s=0;function c(){return s=(s+1)%(2**53-1),s.toString()}var l=new Map,u=e=>{if(l.has(e))return;let t=setTimeout(()=>{l.delete(e),m({type:`REMOVE_TOAST`,toastId:e})},o);l.set(e,t)},d=(e,t)=>{switch(t.type){case`ADD_TOAST`:return{...e,toasts:[t.toast,...e.toasts].slice(0,a)};case`UPDATE_TOAST`:return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case`DISMISS_TOAST`:{let{toastId:n}=t;return n?u(n):e.toasts.forEach(e=>{u(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===n||n===void 0?{...e,open:!1}:e)}}case`REMOVE_TOAST`:return t.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)}}},f=[],p={toasts:[]};function m(e){p=d(p,e),f.forEach(e=>{e(p)})}function h({...e}){let t=c(),n=e=>m({type:`UPDATE_TOAST`,toast:{...e,id:t}}),r=()=>m({type:`DISMISS_TOAST`,toastId:t});return m({type:`ADD_TOAST`,toast:{...e,id:t,open:!0,onOpenChange:e=>{e||r()}}}),{id:t,dismiss:r,update:n}}function g(){let e=(0,r.c)(4),[t,n]=i.useState(p),a,o;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=()=>(f.push(n),()=>{let e=f.indexOf(n);e>-1&&f.splice(e,1)}),o=[],e[0]=a,e[1]=o):(a=e[0],o=e[1]),i.useEffect(a,o);let s;return e[2]===t?s=e[3]:(s={...t,toast:h,dismiss:_},e[2]=t,e[3]=s),s}function _(e){return m({type:`DISMISS_TOAST`,toastId:e})}export{g as n,h as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{ki as t}from"./interactive-BrHVRHmQ.js";var n=e(t(),1),r=(e,t,n,r,i,a,o,s)=>{let c=document.documentElement,l=[`light`,`dark`];function u(t){(Array.isArray(e)?e:[e]).forEach(e=>{let n=e===`class`,r=n&&a?i.map(e=>a[e]||e):i;n?(c.classList.remove(...r),c.classList.add(a&&a[t]?a[t]:t)):c.setAttribute(e,t)}),d(t)}function d(e){s&&l.includes(e)&&(c.style.colorScheme=e)}function f(){return window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`}if(r)u(r);else try{let e=localStorage.getItem(t)||n;u(o&&e===`system`?f():e)}catch{}},i=[`light`,`dark`],a=`(prefers-color-scheme: dark)`,o=typeof window>`u`,s=n.createContext(void 0),c={setTheme:e=>{},themes:[]},l=()=>n.useContext(s)??c,u=e=>n.useContext(s)?n.createElement(n.Fragment,null,e.children):n.createElement(f,{...e}),d=[`light`,`dark`],f=({forcedTheme:e,disableTransitionOnChange:t=!1,enableSystem:r=!0,enableColorScheme:o=!0,storageKey:c=`theme`,themes:l=d,defaultTheme:u=r?`system`:`light`,attribute:f=`data-theme`,value:_,children:v,nonce:y,scriptProps:b})=>{let[x,S]=n.useState(()=>m(c,u)),[C,w]=n.useState(()=>x===`system`?g():x),T=_?Object.values(_):l,E=n.useCallback(e=>{let n=e;if(!n)return;e===`system`&&r&&(n=g());let a=_?_[n]:n,s=t?h(y):null,c=document.documentElement,l=e=>{e===`class`?(c.classList.remove(...T),a&&c.classList.add(a)):e.startsWith(`data-`)&&(a?c.setAttribute(e,a):c.removeAttribute(e))};if(Array.isArray(f)?f.forEach(l):l(f),o){let e=i.includes(u)?u:null,t=i.includes(n)?n:e;c.style.colorScheme=t}s?.()},[y]),D=n.useCallback(e=>{let t=typeof e==`function`?e(x):e;S(t);try{localStorage.setItem(c,t)}catch{}},[x]),O=n.useCallback(t=>{w(g(t)),x===`system`&&r&&!e&&E(`system`)},[x,e]);n.useEffect(()=>{let e=window.matchMedia(a);return e.addListener(O),O(e),()=>e.removeListener(O)},[O]),n.useEffect(()=>{let e=e=>{e.key===c&&(e.newValue?S(e.newValue):D(u))};return window.addEventListener(`storage`,e),()=>window.removeEventListener(`storage`,e)},[D]),n.useEffect(()=>{E(e??x)},[e,x]);let k=n.useMemo(()=>({theme:x,setTheme:D,forcedTheme:e,resolvedTheme:x===`system`?C:x,themes:r?[...l,`system`]:l,systemTheme:r?C:void 0}),[x,D,e,C,r,l]);return n.createElement(s.Provider,{value:k},n.createElement(p,{forcedTheme:e,storageKey:c,attribute:f,enableSystem:r,enableColorScheme:o,defaultTheme:u,value:_,themes:l,nonce:y,scriptProps:b}),v)},p=n.memo(({forcedTheme:e,storageKey:t,attribute:i,enableSystem:a,enableColorScheme:o,defaultTheme:s,value:c,themes:l,nonce:u,scriptProps:d})=>{let f=JSON.stringify([i,t,s,e,l,c,a,o]).slice(1,-1);return n.createElement(`script`,{...d,suppressHydrationWarning:!0,nonce:typeof window>`u`?u:``,dangerouslySetInnerHTML:{__html:`(${r.toString()})(${f})`}})}),m=(e,t)=>{if(o)return;let n;try{n=localStorage.getItem(e)||void 0}catch{}return n||t},h=e=>{let t=document.createElement(`style`);return e&&t.setAttribute(`nonce`,e),t.appendChild(document.createTextNode(`*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}`)),document.head.appendChild(t),()=>{window.getComputedStyle(document.body),setTimeout(()=>{document.head.removeChild(t)},1)}},g=e=>(e||=window.matchMedia(a),e.matches?`dark`:`light`);export{l as n,u as t};
|