zen-gitsync 2.17.19 → 2.17.21
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/README.md +10 -8
- package/package.json +3 -1
- package/src/config.js +3 -0
- package/src/ui/public/assets/AgentEngineSelector-DR3r5eQE.css +1 -0
- package/src/ui/public/assets/AgentEngineSelector-D_8VedA0.js +1 -0
- package/src/ui/public/assets/AgentView-CpKIfQLq.js +1 -0
- package/src/ui/public/assets/AgentView-DnN-vCMi.css +1 -0
- package/src/ui/public/assets/{AppVersionBadge-DDYQqoy7.css → AppVersionBadge--5If494j.css} +1 -1
- package/src/ui/public/assets/AppVersionBadge-kyk4Mmvf.js +2 -0
- package/src/ui/public/assets/{BranchSelector-F4ibldMN.css → BranchSelector-BTCMYwG0.css} +1 -1
- package/src/ui/public/assets/BranchSelector-BUPiKcdW.js +1 -0
- package/src/ui/public/assets/CommitForm-C-cL8_vz.css +1 -0
- package/src/ui/public/assets/CommitForm-CMe1gjY-.js +6 -0
- package/src/ui/public/assets/CommonDialog-Bzi5ISqT.css +1 -0
- package/src/ui/public/assets/CommonDialog-DMWtstZq.js +1 -0
- package/src/ui/public/assets/EditorView-C6msf9YP.js +1 -0
- package/src/ui/public/assets/EditorView-mUmFBb7H.css +1 -0
- package/src/ui/public/assets/FileDiffViewer-B6zy6NiA.css +1 -0
- package/src/ui/public/assets/FileDiffViewer-CvN5b1ZC.js +14 -0
- package/src/ui/public/assets/FlowExecutionViewer-B5kh7VxS.css +1 -0
- package/src/ui/public/assets/FlowExecutionViewer-Ynr4q8qE.js +1 -0
- package/src/ui/public/assets/FlowOrchestrationWorkspace-CM2_9TW3.css +1 -0
- package/src/ui/public/assets/FlowOrchestrationWorkspace-DPDZc9uf.js +21 -0
- package/src/ui/public/assets/IconButton-CFJkDLVG.js +1 -0
- package/src/ui/public/assets/IconButton-W2X09OKH.css +1 -0
- package/src/ui/public/assets/LogList-C7q0Y4J_.css +1 -0
- package/src/ui/public/assets/LogList-CbfsCVsy.js +7 -0
- package/src/ui/public/assets/MindmapView-C4xg3TwX.css +1 -0
- package/src/ui/public/assets/MindmapView-D8A1V-Fd.js +1 -0
- package/src/ui/public/assets/MonitorView-BWOQfPtI.css +1 -0
- package/src/ui/public/assets/MonitorView-Bm_vUP8Y.js +1 -0
- package/src/ui/public/assets/ProjectStartupButton-BBND5XcZ.js +1 -0
- package/src/ui/public/assets/ProjectStartupButton-VoQqFee4.css +1 -0
- package/src/ui/public/assets/RecentDirectoriesChat-BQbncY1L.css +1 -0
- package/src/ui/public/assets/RecentDirectoriesChat-D9fMFh8r.js +1 -0
- package/src/ui/public/assets/RemoteManagerDialog-BSOph2h2.css +1 -0
- package/src/ui/public/assets/RemoteManagerDialog-BVQeIr8U.js +1 -0
- package/src/ui/public/assets/RemoteRepoCard-CG9WPcA_.css +1 -0
- package/src/ui/public/assets/RemoteRepoCard-vuCu_cpA.js +1 -0
- package/src/ui/public/assets/SourceMapView-BZjgxQM8.js +3 -0
- package/src/ui/public/assets/SourceMapView-CO_BZJKu.css +1 -0
- package/src/ui/public/assets/{SvgIcon-CDNsk4-Q.css → SvgIcon-BQ6bR7l0.css} +1 -1
- package/src/ui/public/assets/SvgIcon-D0hK-p1U.js +1 -0
- package/src/ui/public/assets/TemplateManager-DiM3vrbf.css +1 -0
- package/src/ui/public/assets/TemplateManager-XoPZv_i6.js +1 -0
- package/src/ui/public/assets/UserInputNode-CZarmsrv.js +1 -0
- package/src/ui/public/assets/UserInputNode-d-oRXM_J.css +1 -0
- package/src/ui/public/assets/WorkbenchView-BLyXsdYw.css +1 -0
- package/src/ui/public/assets/WorkbenchView-CPur8WEj.js +6 -0
- package/src/ui/public/assets/{_plugin-vue_export-helper-Ut942ckG.js → _plugin-vue_export-helper-N8Vc5eEs.js} +5 -5
- package/src/ui/public/assets/{agentConversations-C2864Cya.js → agentConversations-Da7zLPfP.js} +2 -2
- package/src/ui/public/assets/configStore-BFb0I8eP.js +1 -0
- package/src/ui/public/assets/element-plus-Bx3j6vzG.js +28 -0
- package/src/ui/public/assets/{flow-mindmap-DnzM9SlK.css → flow-mindmap-BMpmHdqh.css} +1 -1
- package/src/ui/public/assets/flow-mindmap-OPE_D4da.js +257 -0
- package/src/ui/public/assets/{gitStore-DyaXgTSR.js → gitStore-grKwgyHH.js} +1 -1
- package/src/ui/public/assets/index-BHYAwndE.js +29 -0
- package/src/ui/public/assets/index-DVJITdth.css +1 -0
- package/src/ui/public/assets/office-docx-B0sJQnr-.js +31 -0
- package/src/ui/public/assets/{office-excel-BOjWK-1x.js → office-excel-DMRySOdK.js} +1 -1
- package/src/ui/public/assets/office-pptx-Do2blxao.js +60 -0
- package/src/ui/public/assets/previewSandbox-D4455rKO.js +9 -0
- package/src/ui/public/assets/previewSandbox-SqNQvuHv.css +1 -0
- package/src/ui/public/assets/socket-io-TBtw0msS.js +1 -0
- package/src/ui/public/assets/{toolsStore-DrPVMxvn.js → toolsStore-B49mCaQ_.js} +1 -1
- package/src/ui/public/assets/{useThemeObserver-CiUpR4zj.js → useThemeObserver-DYxFoHh1.js} +1 -1
- package/src/ui/public/assets/{vendor-B5GNSK12.js → vendor-CyWsJd6S.js} +252 -109
- package/src/ui/public/assets/vue-flow-fVVGZspa.js +39 -0
- package/src/ui/public/index.html +25 -25
- package/src/ui/server/index.js +8 -0
- package/src/ui/server/routes/fs.js +98 -0
- package/src/ui/server/routes/workbench/index.js +156 -7
- package/src/ui/server/routes/workbench/jobStore.js +141 -48
- package/src/ui/server/routes/workbench/jobStore.test.js +139 -2
- package/src/ui/server/routes/workbench/liveJobs.js +226 -0
- package/src/ui/server/routes/workbench/liveJobs.test.js +215 -0
- package/src/ui/server/routes/workbench/orchestratorStore.js +113 -2
- package/src/ui/server/routes/workbench/progressReport.js +293 -0
- package/src/ui/server/routes/workbench/progressReport.test.js +344 -0
- package/src/ui/server/routes/workbench/shared.js +28 -0
- package/src/ui/server/routes/workbench/taskRunner.js +8 -0
- package/src/ui/public/assets/AgentEngineSelector-DUf0TfaU.css +0 -1
- package/src/ui/public/assets/AgentEngineSelector-j7LYtcCD.js +0 -2
- package/src/ui/public/assets/AgentView-B8zgTjEM.js +0 -10
- package/src/ui/public/assets/AgentView-phgvR10P.css +0 -1
- package/src/ui/public/assets/AppVersionBadge-eo7ROtED.js +0 -2
- package/src/ui/public/assets/BranchSelector-BwrAEUNg.js +0 -1
- package/src/ui/public/assets/CommitForm-4kI2csgs.css +0 -1
- package/src/ui/public/assets/CommitForm-BIx30QyK.js +0 -6
- package/src/ui/public/assets/CommonDialog-CXmqa6q4.js +0 -1
- package/src/ui/public/assets/CommonDialog-w6EmBEXv.css +0 -1
- package/src/ui/public/assets/EditorView-Bo176FOY.js +0 -31
- package/src/ui/public/assets/EditorView-D10uW5AV.css +0 -1
- package/src/ui/public/assets/FileDiffViewer-DXnoEMNi.js +0 -15
- package/src/ui/public/assets/FileDiffViewer-n5ea9qMe.css +0 -1
- package/src/ui/public/assets/FlowExecutionViewer-D_pSWT0R.js +0 -1
- package/src/ui/public/assets/FlowExecutionViewer-jNHI5zdm.css +0 -1
- package/src/ui/public/assets/FlowOrchestrationWorkspace-CcG6dBBg.js +0 -21
- package/src/ui/public/assets/FlowOrchestrationWorkspace-DwuSSxJ1.css +0 -1
- package/src/ui/public/assets/IconButton-RlXqKOeu.css +0 -1
- package/src/ui/public/assets/IconButton-jqB5gLxI.js +0 -1
- package/src/ui/public/assets/LogList-CtrKeYUA.js +0 -7
- package/src/ui/public/assets/LogList-XspUhx-C.css +0 -1
- package/src/ui/public/assets/MindmapView-DUWUbAgc.js +0 -2
- package/src/ui/public/assets/MindmapView-Diq2Cu4O.css +0 -1
- package/src/ui/public/assets/MonitorView-CLW2-HBy.js +0 -1
- package/src/ui/public/assets/MonitorView-DwUwJXnY.css +0 -1
- package/src/ui/public/assets/ProjectStartupButton-CB8IOg1E.css +0 -1
- package/src/ui/public/assets/ProjectStartupButton-CErZT4zR.js +0 -1
- package/src/ui/public/assets/RecentDirectoriesChat-CO7G6tRt.css +0 -1
- package/src/ui/public/assets/RecentDirectoriesChat-cVsO1elA.js +0 -1
- package/src/ui/public/assets/RemoteManagerDialog-D4WphMtO.css +0 -1
- package/src/ui/public/assets/RemoteManagerDialog-sksn2MmQ.js +0 -4
- package/src/ui/public/assets/RemoteRepoCard-Cz_aoLZb.js +0 -7
- package/src/ui/public/assets/RemoteRepoCard-o01IrbVz.css +0 -1
- package/src/ui/public/assets/SourceMapView-CfDydtsu.css +0 -1
- package/src/ui/public/assets/SourceMapView-D5qkdXhn.js +0 -3
- package/src/ui/public/assets/SvgIcon-D54dZy2f.js +0 -1
- package/src/ui/public/assets/TemplateManager-DO7EPfj8.css +0 -1
- package/src/ui/public/assets/TemplateManager-DRHRpB64.js +0 -1
- package/src/ui/public/assets/UserInputNode-C4NV2vaL.js +0 -1
- package/src/ui/public/assets/UserInputNode-DDNSarag.css +0 -1
- package/src/ui/public/assets/WorkbenchView-B3VcBlk7.js +0 -70
- package/src/ui/public/assets/WorkbenchView-ZDvzGafG.css +0 -1
- package/src/ui/public/assets/configStore-DG0VBR3h.js +0 -1
- package/src/ui/public/assets/element-plus-AaVXaSqv.js +0 -48
- package/src/ui/public/assets/flow-mindmap-j-zhcNPe.js +0 -139
- package/src/ui/public/assets/index-B5MKbT-v.css +0 -1
- package/src/ui/public/assets/index-Dq6OyCrE.js +0 -127
- package/src/ui/public/assets/office-docx-CJ6JSCs6.js +0 -32
- package/src/ui/public/assets/office-pptx-CF43ZwXE.js +0 -74
- package/src/ui/public/assets/previewSandbox-CxLaNg4X.css +0 -1
- package/src/ui/public/assets/previewSandbox-D2ioUBVm.js +0 -0
- package/src/ui/public/assets/socket-io-BFqQXqAp.js +0 -1
- package/src/ui/public/assets/vue-flow-DwYB6Myr.js +0 -39
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.common-dialog__footer[data-v-6969f391]{justify-content:flex-end;align-items:center;gap:var(--spacing-md);width:100%;display:flex}.common-dialog__footer .el-button[data-v-6969f391]{border-radius:var(--btn-radius);min-width:88px}[data-v-6969f391] .common-dialog--flex .el-dialog{flex-direction:column;min-height:0;max-height:90vh;display:flex;height:auto!important}[data-v-6969f391] .common-dialog--flex .el-dialog__header,[data-v-6969f391] .common-dialog--flex .el-dialog__footer{flex:none}[data-v-6969f391] .common-dialog--flex .el-dialog__body{min-height:0;padding:var(--spacing-md);box-sizing:border-box;overscroll-behavior:contain;flex-direction:column;flex:1;display:flex;overflow:hidden auto}[data-v-6969f391] .common-dialog--fullscreen .el-dialog{border-radius:0;width:100vw;margin:0;height:100vh!important;max-height:100vh!important}[data-v-6969f391] .common-dialog--fullscreen.common-dialog--flex .el-dialog{width:100vw;height:100vh!important;max-height:100vh!important}[data-v-6969f391] .common-dialog--full-height .el-dialog{flex-direction:column;height:auto;min-height:0;display:flex}[data-v-6969f391] .common-dialog--full-height .el-dialog__header,[data-v-6969f391] .common-dialog--full-height .el-dialog__footer{flex:none}[data-v-6969f391] .common-dialog--full-height .el-dialog__body{overscroll-behavior:contain;min-height:0;padding:8px var(--spacing-md) var(--spacing-md);box-sizing:border-box;flex-direction:column;flex:1;display:flex;overflow:hidden auto}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./rolldown-runtime-C0FnF6B9.js";import{$n as e,Cn as t,E as n,En as r,Er as i,L as a,Mn as o,Pn as s,Pr as c,Qr as l,Rn as u,Tn as d,Un as f,Xn as p,Yr as m,cr as h,jn as g,kn as _,pr as v,qr as y,rr as b,wn as x}from"./element-plus-Bx3j6vzG.js";import{n as S,t as C}from"./_plugin-vue_export-helper-N8Vc5eEs.js";u(),v(),c();var w=[`id`],T={class:`common-dialog__footer`},E=s({__name:`CommonDialog`,props:{modelValue:{type:Boolean},title:{},size:{default:`medium`},type:{default:`default`},width:{},height:{},top:{default:`50px`},closeOnClickModal:{type:Boolean,default:!1},closeOnPressEscape:{type:Boolean,default:!0},destroyOnClose:{type:Boolean,default:!1},draggable:{type:Boolean,default:!1},customClass:{},modalClass:{},appendToBody:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},zIndex:{},showClose:{type:Boolean,default:!0},heightMode:{default:`max`},heightOffset:{default:`100px`},showFooter:{type:Boolean,default:!1},confirmText:{default:S(`@803A9:确定`)},cancelText:{default:S(`@803A9:取消`)},showCancel:{type:Boolean,default:!0},confirmLoading:{type:Boolean,default:!1}},emits:[`update:modelValue`,`confirm`,`cancel`,`close`,`opened`,`closed`],setup(s,{emit:c}){let u=s,v=c,S=t(()=>{if(u.width)return u.width;switch(u.size){case`small`:return`30%`;case`medium`:return`50%`;case`large`:return`80%`;case`extra-large`:return`90%`;case`fullscreen`:return`100vw`;default:return`50%`}}),C=b(),E=null;function D(){v(`opened`),f(()=>{let e=document.querySelector(`.el-dialog__wrapper:not([style*="display: none"]) .el-dialog`);e&&(e.querySelector(`button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])`)||e).focus?.()})}function O(){v(`closed`),E&&typeof E.focus==`function`&&(f(()=>E?.focus()),E=null)}function k(e){e&&!u.modelValue&&(E=document.activeElement),v(`update:modelValue`,e)}let A=t(()=>u.size===`fullscreen`?`0`:u.top),j=t(()=>{let e=[];return u.customClass&&e.push(u.customClass),u.type===`flex`&&e.push(`common-dialog--flex`),u.type===`full-height`&&e.push(`common-dialog--full-height`),u.size===`fullscreen`&&e.push(`common-dialog--fullscreen`),e.join(` `)}),M=t(()=>{if(u.size===`fullscreen`)return{height:`100vh`,maxHeight:`100vh`};let e=`calc(100% - ${u.heightOffset})`;return u.heightMode===`fixed`?{height:e}:{maxHeight:e}});function N(){v(`update:modelValue`,!1),v(`close`)}function P(){v(`confirm`)}function F(){v(`cancel`),N()}return(t,c)=>{let u=a;return p(),d(i(n),{"model-value":s.modelValue,title:s.title,width:S.value,top:A.value,style:m(M.value),"z-index":s.zIndex,fullscreen:s.size===`fullscreen`,"close-on-click-modal":s.closeOnClickModal,"close-on-press-escape":s.closeOnPressEscape,"destroy-on-close":s.destroyOnClose,draggable:s.draggable,class:y(j.value),"show-close":s.showClose,"modal-class":s.modalClass,"data-dialog-shell":`common`,"append-to-body":s.appendToBody,"lock-scroll":s.lockScroll,"aria-modal":!0,"aria-labelledby":i(C),role:`dialog`,onClose:N,"onUpdate:modelValue":k,onOpened:D,onClosed:O},_({header:h(({titleClass:e})=>[x(`span`,{id:i(C),class:y([`el-dialog__title`,e]),role:`heading`,"aria-level":`2`},l(s.title),11,w)]),default:h(()=>[e(t.$slots,`default`,{},void 0,!0)]),_:2},[s.showFooter||t.$slots.footer?{name:`footer`,fn:h(()=>[e(t.$slots,`footer`,{},()=>[x(`div`,T,[s.showCancel?(p(),d(u,{key:0,type:`button`,onClick:F},{default:h(()=>[g(l(s.cancelText),1)]),_:1})):r(``,!0),o(u,{type:`primary`,loading:s.confirmLoading,onClick:P},{default:h(()=>[g(l(s.confirmText),1)]),_:1},8,[`loading`])])],!0)]),key:`0`}:void 0]),1032,[`model-value`,`title`,`width`,`top`,`style`,`z-index`,`fullscreen`,`close-on-click-modal`,`close-on-press-escape`,`destroy-on-close`,`draggable`,`class`,`show-close`,`modal-class`,`append-to-body`,`lock-scroll`,`aria-labelledby`])}}}),D=C(E,[[`__scopeId`,`data-v-6969f391`]]);export{D as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./rolldown-runtime-C0FnF6B9.js";import{An as e,Cn as t,Dn as n,En as r,Er as i,H as a,Jn as o,Kn as s,Mn as c,Pn as ee,Pr as l,Qn as te,Qr as u,Rn as d,Tn as f,Un as p,Xn as m,Yr as h,_n as ne,a as g,br as _,cr as re,gn as ie,hn as v,jn as y,ln as b,lr as x,or as S,pr as C,qr as w,vn as T,wn as E,xn as ae,xr as oe,yn as D}from"./element-plus-Bx3j6vzG.js";import{o as se,r as O,t as ce}from"./vendor-CyWsJd6S.js";import{n as k,t as A}from"./_plugin-vue_export-helper-N8Vc5eEs.js";import{t as le}from"./SvgIcon-D0hK-p1U.js";import{t as ue}from"./configStore-BFb0I8eP.js";import{n as de,t as fe}from"./fileIcon-B5p5pGN9.js";import{a as pe,i as me,n as he,r as ge,s as _e,t as ve}from"./previewSandbox-D4455rKO.js";import{a as ye,c as be,l as xe,n as Se,o as Ce,r as we,s as Te}from"./monaco-DkJuNcCr.js";import{t as Ee}from"./useThemeObserver-DYxFoHh1.js";import{r as De,t as j}from"./flow-mindmap-OPE_D4da.js";import{r as Oe}from"./index-BHYAwndE.js";import{a as ke,i as Ae,n as je,o as Me,r as Ne,s as Pe,t as Fe}from"./agentConversations-Da7zLPfP.js";import{n as Ie,t as M}from"./AgentEngineSelector-D_8VedA0.js";function Le(e){return{ts:`typescript`,tsx:`typescript`,js:`javascript`,mjs:`javascript`,cjs:`javascript`,jsx:`javascript`,vue:`html`,html:`html`,htm:`html`,css:`css`,scss:`scss`,less:`less`,json:`json`,jsonc:`json`,md:`markdown`,markdown:`markdown`,yaml:`yaml`,yml:`yaml`,toml:`ini`,xml:`xml`,svg:`xml`,sh:`shell`,bash:`shell`,zsh:`shell`,fish:`shell`,ps1:`powershell`,py:`python`,go:`go`,rs:`rust`,java:`java`,kt:`kotlin`,rb:`ruby`,php:`php`,c:`c`,cpp:`cpp`,h:`cpp`,cs:`csharp`,sql:`sql`,graphql:`graphql`,gql:`graphql`,txt:`plaintext`,log:`plaintext`,ini:`ini`,env:`ini`,gitignore:`ini`,dockerfile:`dockerfile`}[e.toLowerCase()]??`plaintext`}d(),C();var N={class:`mindmap-preview`},P={class:`mindmap-preview-canvas`},F=A(ee({__name:`MindmapPreview`,props:{content:{}},setup(e){let r=e,a=t(()=>j(r.content||``,`未命名文档`));return(e,t)=>(m(),n(`div`,N,[t[0]||=E(`div`,{class:`mindmap-preview-header`},[E(`span`,{class:`mindmap-preview-title`},`整篇导图`),E(`span`,{class:`mindmap-preview-hint`},`基于整篇 Markdown 自动生成 · 阅读模式`)],-1),E(`div`,P,[c(i(De),{data:a.value,"preview-mode":``},null,8,[`data`])])]))}}),[[`__scopeId`,`data-v-d2fe328b`]]);d(),C(),l(),b();var Re={class:`agent-panel-header`},ze=[`title`,`aria-label`],Be={class:`agent-panel-title`},Ve={key:1,class:`agent-panel-title`},He=[`title`,`aria-label`],I=[`title`],Ue={class:`agent-panel-convs`},We=[`data-theme`],L=[`title`],R={class:`agent-context-att-name`},z=[`title`,`aria-label`],Ge=A(ee({__name:`EditorAgentPanel`,props:{activeFilePath:{},activeFileName:{},active:{type:Boolean}},emits:[`close`],setup(a,{emit:ee}){let l=a,te=ee,{theme:d}=Ee(),h=t(()=>d.value===`dark`?`dark`:`light`),{sessions:ne,sessionsLoading:g,currentSessionId:re,messages:v,isStreaming:y,pendingQuestion:b,answeringQuestion:C,isSessionGenerating:T,currentEngine:oe,pendingEngine:A,isEngineLocked:le,pickEngine:ue,loadSessions:de,loadSession:fe,deleteSession:pe,renameSession:me,newSession:he,sendMessage:ge,answerQuestion:_e,stop:ve}=Pe(),ye=t(()=>le.value?oe.value:A.value);function be(e){le.value||ue(e)}let xe=t(()=>ke(ne.value,T)),Se=Ne(),Ce=Ae(),we=_(null),Te=_(null),De=_(null),j=_(null),Oe=_(null),{width:Le,narrow:N}=Ie(Oe),P=_(`chat`),F=_(null),Ge=_(!1),B=null,Ke=t(()=>!!l.activeFileName&&!Ge.value);function qe(e){return Array.from(e.children).find(e=>e.classList?.contains(`acu-input-attachments`))??null}function Je(){let e=Te.value?.$el;if(!e)return;let t=e.querySelector(`.agent-context-slot`);if(!Ke.value){if(!t)return;F.value=null,p(()=>t.remove());return}let n=F.value&&e.contains(F.value)?F.value:t;n||(n=document.createElement(`div`),n.className=`agent-context-slot`);let r=qe(e),i=r??e;n.parentElement!==i&&i.insertBefore(n,r?r.firstChild:e.firstChild),F.value=n}function Ye(e=!0){we.value?.scrollToBottom(e)}async function Xe(e){let t=Ge.value?void 0:l.activeFilePath||void 0;await ge(e.text,e.files,{openFilePath:t}),await p(),Ye()}function Ze(e){fe(e),P.value=`chat`}function Qe(){he(),P.value=`chat`}S(()=>v.value.length,()=>{p(()=>Ye(!1))});function $e(){let e=j.value;e&&typeof MutationObserver<`u`&&(B?.disconnect(),B=new MutationObserver(()=>Je()),B.observe(e,{childList:!0,subtree:!0}))}return S(()=>l.active,e=>{e&&(P.value=`chat`,de().catch(()=>{}),p(()=>{Je(),Ye(!1)}))}),S(N,e=>{e||(P.value=`chat`)}),S(()=>l.activeFilePath,()=>{Ge.value=!1}),S(Ke,e=>{e&&p(Je)}),o(()=>{de().catch(()=>{}),p(()=>{Je(),$e()})}),s(()=>{B?.disconnect(),B=null,F.value=null}),(t,o)=>(m(),n(`div`,{ref_key:`rootRef`,ref:Oe,class:`editor-agent-panel`},[E(`div`,Re,[i(N)&&P.value===`list`?(m(),n(D,{key:0},[E(`button`,{class:`agent-panel-icon-btn agent-panel-back-btn`,title:i(k)(`@EDITOR:返回对话`),"aria-label":i(k)(`@EDITOR:返回对话`),onClick:o[0]||=e=>P.value=`chat`},[...o[4]||=[E(`svg`,{viewBox:`0 0 24 24`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[E(`line`,{x1:`19`,y1:`12`,x2:`5`,y2:`12`}),E(`polyline`,{points:`12 19 5 12 12 5`})],-1)]],8,ze),E(`span`,Be,u(i(k)(`@EDITOR:会话列表`)),1)],64)):(m(),n(`span`,Ve,u(i(k)(`@EDITOR:g ai 对话`)),1)),o[7]||=E(`div`,{class:`agent-panel-spacer`},null,-1),!i(N)||P.value===`chat`?(m(),f(M,{key:2,class:`agent-panel-engine`,engine:ye.value,locked:i(le),onSelect:be},null,8,[`engine`,`locked`])):r(``,!0),i(N)&&P.value===`chat`?(m(),n(`button`,{key:3,class:`agent-panel-icon-btn agent-panel-list-btn`,title:i(k)(`@EDITOR:会话列表`),"aria-label":i(k)(`@EDITOR:会话列表`),onClick:o[1]||=e=>P.value=`list`},[...o[5]||=[e(`<svg viewBox="0 0 24 24" width="13" height="13" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" data-v-d910c906><line x1="8" y1="6" x2="21" y2="6" data-v-d910c906></line><line x1="8" y1="12" x2="21" y2="12" data-v-d910c906></line><line x1="8" y1="18" x2="21" y2="18" data-v-d910c906></line><line x1="3" y1="6" x2="3.01" y2="6" data-v-d910c906></line><line x1="3" y1="12" x2="3.01" y2="12" data-v-d910c906></line><line x1="3" y1="18" x2="3.01" y2="18" data-v-d910c906></line></svg>`,1)]],8,He)):r(``,!0),E(`button`,{class:`agent-panel-icon-btn`,title:i(k)(`@EDITOR:关闭对话`),onClick:o[2]||=e=>te(`close`)},[...o[6]||=[E(`svg`,{viewBox:`0 0 24 24`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,"stroke-width":`2.5`,"stroke-linecap":`round`},[E(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`}),E(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`})],-1)]],8,I)]),E(`div`,{class:w([`agent-panel-body`,{"is-wide":!i(N)}])},[x(E(`div`,Ue,[c(i(O),{"show-search":!0,items:xe.value,"active-id":i(re),loading:i(g),labels:i(Se),onSelect:Ze,onNew:Qe,onRename:i(me),onDelete:i(pe)},null,8,[`items`,`active-id`,`loading`,`labels`,`onRename`,`onDelete`])],512),[[ie,!i(N)||P.value===`list`]]),x(E(`div`,{ref_key:`chatHostRef`,ref:De,class:`agent-panel-chat`},[c(i(ce),{ref_key:`chatRef`,ref:we,"show-input":!1,messages:i(v),"assistant-name":i(je),"assistant-avatar":i(Fe),theme:h.value,question:i(b),"question-submitting":i(C),"question-labels":i(Ce),onAnswer:i(_e)},null,8,[`messages`,`assistant-name`,`assistant-avatar`,`theme`,`question`,`question-submitting`,`question-labels`,`onAnswer`])],512),[[ie,!i(N)||P.value===`chat`]]),i(Le)>0?(m(),n(`div`,{key:0,ref_key:`composerRef`,ref:j,class:`agent-panel-composer acu-root`,"data-theme":h.value},[c(i(se),{ref_key:`inputRef`,ref:Te,disabled:i(y),generating:i(y),placeholder:i(y)?i(k)(`@AGENT:正在生成中...`):i(k)(`@AGENT:输入消息,Enter 发送`),"upload-config":{accept:i(Me)},onSend:Xe,onStop:i(ve)},null,8,[`disabled`,`generating`,`placeholder`,`upload-config`,`onStop`]),F.value?(m(),f(ae,{key:0,to:F.value},[Ke.value?(m(),n(`div`,{key:0,class:`agent-context-att`,title:a.activeFilePath||``},[o[9]||=E(`svg`,{class:`agent-context-att-icon`,viewBox:`0 0 24 24`,width:`14`,height:`14`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.7`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"aria-hidden":`true`},[E(`path`,{d:`M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z`}),E(`polyline`,{points:`14 3 14 8 19 8`})],-1),E(`span`,R,u(a.activeFileName),1),E(`button`,{type:`button`,class:`agent-context-att-remove`,title:i(k)(`@EDITOR:不引用当前文档`),"aria-label":i(k)(`@EDITOR:不引用当前文档`),onClick:o[3]||=e=>Ge.value=!0},[...o[8]||=[E(`svg`,{viewBox:`0 0 24 24`,width:`10`,height:`10`,fill:`none`,stroke:`currentColor`,"stroke-width":`3`,"stroke-linecap":`round`,"aria-hidden":`true`},[E(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`}),E(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`})],-1)]],8,z)],8,L)):r(``,!0)],8,[`to`])):r(``,!0)],8,We)):r(``,!0)],2)],512))}}),[[`__scopeId`,`data-v-d910c906`]]);d(),C(),l(),b();var B={class:`sidebar-header`},Ke={class:`sidebar-title`},qe={class:`sidebar-actions`},Je={class:`sidebar-search`},Ye=[`placeholder`,`title`],Xe=[`title`,`aria-label`],Ze={key:0,class:`sidebar-tree`},Qe={key:1,class:`tree-arrow-spacer`},$e={class:`tree-icon mit-icon`,"aria-hidden":`true`},et=[`xlink:href`],tt=[`onClick`,`onContextmenu`],nt={key:1,class:`tree-arrow-spacer`},rt={key:2,class:`tree-icon mit-icon`,"aria-hidden":`true`},it=[`xlink:href`],at={key:3,class:`tree-icon mit-icon`,"aria-hidden":`true`},ot=[`xlink:href`],st=[`title`],ct={key:0,class:`tree-name-hit`},lt={key:4,class:`tree-loading`},ut={key:0,viewBox:`0 0 24 24`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,style:{"flex-shrink":`0`,color:`var(--color-warning)`}},dt={key:1,viewBox:`0 0 24 24`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,style:{"flex-shrink":`0`,color:`var(--text-tertiary)`}},ft=[`placeholder`],pt={key:0,class:`tree-node tree-inline-input-row`,style:{paddingLeft:`12px`}},mt={key:0,viewBox:`0 0 24 24`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,style:{"flex-shrink":`0`,color:`var(--color-warning)`}},ht={key:1,viewBox:`0 0 24 24`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,style:{"flex-shrink":`0`,color:`var(--text-tertiary)`}},gt=[`placeholder`],_t={key:1,class:`tree-empty`},vt={key:1,class:`sidebar-loading`},yt={class:`editor-main`},bt={key:0,class:`editor-tabs`},xt=[`onClick`,`title`],St={class:`tab-name`},Ct={key:0,class:`tab-dirty-dot`},wt=[`onClick`],Tt=[`title`],Et=[`disabled`,`title`],Dt=[`title`],Ot={key:1,class:`editor-empty`},kt={viewBox:`0 0 24 24`,width:`48`,height:`48`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,style:{opacity:`.3`}},At={class:`editor-empty-hint`},jt={class:`editor-body`},Mt={key:0,class:`image-tab-placeholder`},Nt={viewBox:`0 0 24 24`,width:`56`,height:`56`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,style:{opacity:`.35`}},Pt={class:`image-tab-placeholder-title`},Ft={class:`image-tab-placeholder-hint`},It={class:`preview-header`},Lt={class:`preview-title`},Rt={class:`preview-ext-badge`},zt=[`title`],Bt={class:`preview-body`},Vt=[`sandbox`,`srcdoc`],Ht=6e4,Ut=A(ee({__name:`EditorView`,props:{pendingFilePath:{}},setup(ee){self.MonacoEnvironment={getWorker(e,t){return t===`json`?new be:t===`css`||t===`scss`||t===`less`?new Te:t===`html`||t===`handlebars`||t===`razor`?new Ce:t===`typescript`||t===`javascript`?new ye:new xe}};let l=ee,d=ue(),b=Oe(),C=_([]),se=_(!1),O=_(``),ce=_(``),A=null;function De(){O.value=``,ce.value=``,A&&=(clearTimeout(A),null)}S(O,e=>{A&&clearTimeout(A),A=setTimeout(()=>{ce.value=e,A=null},180)}),s(()=>{A&&clearTimeout(A),Ae()});let j=null;function ke(){Ae(),d.ui.fileTreeAutoRefresh&&(j=setInterval(()=>{document.hidden||d.currentDirectory&&(O.value.trim()||M())},Ht))}function Ae(){j&&=(clearInterval(j),null)}S(()=>d.currentDirectory,()=>{ke()}),S(()=>d.ui.fileTreeAutoRefresh,()=>{ke()});async function je(e,t=0){let n=await(await fetch(`/api/browse_directory?path=${encodeURIComponent(e)}`)).json();return n.success?n.items.map(e=>({...e,depth:t,expanded:!1,loading:!1,children:(e.type,void 0)})):[]}async function Me(){let e=d.currentDirectory;if(e){se.value=!0;try{C.value=await je(e,0)}finally{se.value=!1}}}function Ne(e,t=new Set){for(let n of e)n.type===`directory`&&n.expanded&&(t.add(n.path),n.children&&Ne(n.children,t));return t}function Pe(e,t=0){return(e||[]).map(e=>{let n={name:e.name,path:e.path,type:e.type,depth:t,expanded:!1,loading:!1};return n.type===`directory`&&Array.isArray(e.children)&&(n.children=Pe(e.children,t+1),n.expanded=!0),n})}async function Fe(e){let t=d.currentDirectory;if(!t)return null;try{let n=await(await fetch(`/api/browse_directory_tree`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({path:t,expand:e})})).json().catch(()=>null);return!n?.success||!Array.isArray(n.items)?null:Pe(n.items,0)}catch{return null}}function Ie(e,t){let n=new Map(e.map(e=>[e.path,e])),r=e.length!==t.length;if(!r){for(let n=0;n<t.length;n++)if(e[n].path!==t[n].path){r=!0;break}}for(let e=0;e<t.length;e++){let i=t[e],a=n.get(i.path);a&&(t[e]=a,a.name!==i.name&&(a.name=i.name,r=!0),a.type===`directory`&&a.expanded&&Array.isArray(i.children)&&(Array.isArray(a.children)?Ie(a.children,i.children)&&(a.children=i.children,r=!0):(a.children=i.children,r=!0)))}return r}async function M(e={}){if(!d.currentDirectory)return;let t=await Fe([...Ne(C.value)]);if(!t){e.notifyOnError&&g.error(k(`@EDITOR:刷新失败`));return}if(C.value.length===0){C.value=t;return}Ie(C.value,t)&&(C.value=t)}async function N(e){if(e.type===`directory`){if(e.expanded)e.expanded=!1;else{if(!e.children){e.loading=!0;try{e.children=await je(e.path,e.depth+1)}finally{e.loading=!1}}e.expanded=!0}}}function P(e){let t=[];for(let n of e)t.push(n),n.type===`directory`&&n.expanded&&n.children&&t.push(...P(n.children));return t}let Re=t(()=>ce.value.trim().toLowerCase());function ze(e,t){if(!t)return e;let n=[];for(let r of e){let e=r.children?ze(r.children,t):[],i=r.name.toLowerCase().includes(t);r.type===`directory`?(i||e.length>0)&&(r.expanded=!0,r.children!==void 0&&(r.children=e),n.push(r)):i&&n.push(r)}return n}let Be=t(()=>ze(C.value,Re.value)),Ve=t(()=>Re.value.length>0&&Be.value.length===0);function He(e){let t=ce.value.trim();if(!t)return[{text:e,hit:!1}];let n=e.toLowerCase(),r=t.toLowerCase(),i=[],a=0,o=n.indexOf(r,a);for(;o!==-1;)o>a&&i.push({text:e.slice(a,o),hit:!1}),i.push({text:e.slice(o,o+r.length),hit:!0}),a=o+r.length,o=n.indexOf(r,a);return a<e.length&&i.push({text:e.slice(a),hit:!1}),i}let I=_(null);function Ue(){let e=I.value;e&&(e.focus(),e.select())}function We(){O.value?(De(),I.value?.focus()):(I.value?.blur(),V.value?.focus())}let L=_([]),R=_(null),z=_(null);async function Ut(e){if(z.value=e,e.type!==`file`){N(e);return}let t=L.value.find(t=>t.path===e.path);if(console.log(`[debug-open-in-editor] EditorView openFile existing tab check:`,{path:e.path,found:!!t,tabsCount:L.value.length}),t){R.value=e.path,p(()=>Xt());return}let n=e.name.split(`.`).pop()||``;if(Fn.has(n.toLowerCase())){let t={path:e.path,name:e.name,content:``,originalContent:``,isDirty:!1,language:`plaintext`};L.value.push(t),R.value=e.path,J.value=!0;return}if(_e(e.name)){let t={path:e.path,name:e.name,content:``,originalContent:``,isDirty:!1,language:`office`};L.value.push(t),R.value=e.path,Y.value=!1,J.value=!0;return}try{let t=await fetch(`/api/editor/file?path=${encodeURIComponent(e.path)}`),r=await t.json();if(console.log(`[debug-open-in-editor] EditorView fetch /api/editor/file response:`,{path:e.path,status:t.status,data:r}),!r.success){g.error(`${k(`@EDITOR:打开文件失败: `)}${r.error}`);return}let i=Le(n),a={path:e.path,name:e.name,content:r.content,originalContent:r.content,isDirty:!1,language:i};console.log(`[debug-open-in-editor] EditorView pushing tab:`,{path:a.path,name:a.name,contentLen:a.content.length,lang:a.language}),L.value.push(a),R.value=e.path,console.log(`[debug-open-in-editor] EditorView tabs after push:`,L.value.length,`activeTabPath=`,R.value)}catch(e){console.log(`[debug-open-in-editor] EditorView fetch threw:`,e),g.error(`${k(`@EDITOR:打开文件失败: `)}${e.message}`)}}S(()=>l.pendingFilePath,async e=>{if(console.log(`[debug-open-in-editor] EditorView watcher fired, filePath=`,e),!e)return;await p();let t=e.split(/[\\/]/).pop()||e;console.log(`[debug-open-in-editor] EditorView calling openFile, name=`,t,`path=`,e),await Ut({name:t,path:e,type:`file`,depth:0}),console.log(`[debug-open-in-editor] EditorView openFile returned`)},{immediate:!0});function Wt(e,t){t.stopPropagation();let n=L.value.findIndex(t=>t.path===e);n!==-1&&(!L.value[n].isDirty||confirm(k(`@EDITOR:文件未保存,确认关闭?`)))&&(L.value.splice(n,1),R.value===e&&(R.value=L.value[Math.min(n,L.value.length-1)]?.path??null))}let Gt=()=>L.value.find(e=>e.path===R.value)??null,Kt=_(null),V=oe(null),qt=new Map;function Jt(e){let t=qt.get(e.path);return(!t||t.isDisposed())&&(t=we.createModel(e.content,e.language,Se.file(e.path)),qt.set(e.path,t)),t}function Yt(){if(!Kt.value)return;let e=document.documentElement.getAttribute(`data-theme`)===`dark`;V.value=we.create(Kt.value,{theme:e?`vs-dark`:`vs`,fontSize:13,lineHeight:20,fontFamily:`'JetBrains Mono', 'Fira Code', 'Cascadia Code', Consolas, monospace`,minimap:{enabled:!0},scrollBeyondLastLine:!1,renderWhitespace:`selection`,automaticLayout:!0,tabSize:2,wordWrap:`off`,smoothScrolling:!0,cursorBlinking:`smooth`,padding:{top:8,bottom:8},editContext:!1}),V.value.onDidChangeModelContent(()=>{let e=Gt();if(!e)return;let t=V.value.getValue();e.content=t,e.isDirty=t!==e.originalContent}),V.value.onDidBlurEditorText(()=>{d.ui.editorAutoSave&&Gt()?.isDirty&&$t(!1),requestAnimationFrame(()=>{if(!H.value||H.value.offsetParent===null)return;let e=document.activeElement;e&&(e.tagName===`INPUT`||e.tagName===`TEXTAREA`||e.isContentEditable||e.classList?.contains(`native-edit-context`)||e.classList?.contains(`monaco-editor`))||Xt()})})}S(R,e=>{if(!V.value||!e)return;let t=L.value.find(t=>t.path===e);if(!t)return;let n=Jt(t);V.value.setModel(n),p(()=>Xt())});function Xt(){if(!V.value)return;V.value.focus();let e=document.querySelector(`.monaco-editor .native-edit-context`);e&&document.activeElement!==e&&requestAnimationFrame(()=>e.focus?.())}S(()=>L.value.filter(e=>e.isDirty).length,e=>{b.setDirtyCount(e)},{immediate:!0}),s(()=>b.setDirtyCount(0)),Ee(()=>{let e=document.documentElement.getAttribute(`data-theme`)===`dark`;we.setTheme(e?`vs-dark`:`vs`)});let Zt=null;function Qt(){if(Zt||!H.value)return;let e=[H.value],t=H.value.parentElement;for(;t;){if(t.classList.contains(`view-pane`)||t.classList.contains(`editor-pane`)){e.push(t);break}t=t.parentElement}Zt=new MutationObserver(()=>{H.value&&H.value.offsetParent!==null&&R.value&&V.value&&requestAnimationFrame(()=>{let e=document.activeElement;e&&(e.tagName===`INPUT`||e.tagName===`TEXTAREA`||e.isContentEditable||e.classList?.contains(`native-edit-context`)||e.classList?.contains(`monaco-editor`))||Xt()})});let n=Zt;e.forEach(e=>n.observe(e,{attributes:!0,attributeFilter:[`style`,`class`,`hidden`]}))}o(async()=>{Yt(),await Me(),Qt(),ke(),R.value&&p(()=>Xt())}),s(()=>{Zt?.disconnect(),Zt=null,V.value?.dispose(),qt.forEach(e=>e.dispose()),qt.clear()});async function $t(e=!1){let t=Gt();if(t)try{let n=await(await fetch(`/api/editor/file`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({path:t.path,content:t.content})})).json();if(!n.success){g.error(`${k(`@EDITOR:保存失败: `)}${n.error}`);return}t.originalContent=t.content,t.isDirty=!1,e||g.success(k(`@EDITOR:已保存`))}catch(e){g.error(`${k(`@EDITOR:保存失败: `)}${e.message}`)}}function en(e){let t=e.ctrlKey||e.metaKey;if(t&&e.key.toLowerCase()===`f`){e.preventDefault(),Ue();return}t&&e.key===`s`&&(e.preventDefault(),$t())}o(()=>window.addEventListener(`keydown`,en)),s(()=>window.removeEventListener(`keydown`,en));let H=_(null),tn=_(220),nn=!1,rn=0,an=0;function on(e){nn=!0,rn=e.clientX,an=tn.value,document.addEventListener(`mousemove`,sn),document.addEventListener(`mouseup`,cn),e.preventDefault()}function sn(e){if(!nn)return;let t=e.clientX-rn;tn.value=Math.max(140,Math.min(400,an+t))}function cn(){nn=!1,document.removeEventListener(`mousemove`,sn),document.removeEventListener(`mouseup`,cn)}function ln(e){return e.type===`directory`?de(e.name):fe(e.name)}let U=_(null),W=_(null),G=_(null),un=_(null);function dn(){let e=z.value;return e?e.type===`directory`?{parentPath:e.path,afterNode:e,depth:e.depth+1}:{parentPath:e.path.includes(`/`)||e.path.includes(`\\`)?e.path.replace(/[\\/][^\\/]+$/,``):d.currentDirectory??``,afterNode:e,depth:e.depth}:{parentPath:d.currentDirectory??``,afterNode:null,depth:0}}async function fn(){let e=dn();z.value?.type===`directory`&&!z.value.expanded&&await N(z.value),U.value={...e,kind:`file`,value:``},await p(),G.value?.focus()}async function pn(){let e=dn();z.value?.type===`directory`&&!z.value.expanded&&await N(z.value),U.value={...e,kind:`directory`,value:``},await p(),G.value?.focus()}function mn(){U.value=null}async function hn(){let e=U.value;if(!e||!e.value.trim()){U.value=null;return}let t=e.value.trim(),n=e.parentPath.replace(/[/\\]$/,``)+`/`+t;if(e.kind===`file`){let e=await(await fetch(`/api/editor/file`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({path:n})})).json();if(!e.success){g.error(e.error);return}g.success(k(`@EDITOR:创建成功`))}else{let e=await(await fetch(`/api/editor/directory`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({path:n})})).json();if(!e.success){g.error(e.error);return}g.success(k(`@EDITOR:创建成功`))}U.value=null,await M()}function gn(e){e.key===`Enter`&&(e.preventDefault(),hn()),e.key===`Escape`&&(e.preventDefault(),mn())}let K=_(null),_n=_(null);function vn(e,t){e.preventDefault(),K.value={x:e.clientX,y:e.clientY,node:t}}function q(){K.value=null}async function yn(){let e=K.value?.node;q(),e&&(z.value=e),e?.type===`directory`&&!e.expanded&&await N(e);let t=dn();U.value={...t,kind:`file`,value:``},await p(),G.value?.focus()}async function bn(){let e=K.value?.node;q(),e&&(z.value=e),e?.type===`directory`&&!e.expanded&&await N(e);let t=dn();U.value={...t,kind:`directory`,value:``},await p(),G.value?.focus()}async function xn(){let e=K.value?.node;q(),e&&(W.value={node:e,value:e.name},await p(),un.value?.focus(),un.value?.select())}async function Sn(){let e=W.value;if(!e||!e.value.trim()||e.value.trim()===e.node.name){W.value=null;return}let t=e.value.trim(),n=e.node.path.replace(/[\\/][^\\/]+$/,``).replace(/[/\\]$/,``)+`/`+t,r=await(await fetch(`/api/editor/rename`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({oldPath:e.node.path,newPath:n})})).json();if(!r.success){g.error(r.error);return}let i=L.value.find(t=>t.path===e.node.path);i&&(i.path=n,i.name=t,R.value===e.node.path&&(R.value=n)),W.value=null,await M()}function Cn(e){e.key===`Enter`&&(e.preventDefault(),Sn()),e.key===`Escape`&&(e.preventDefault(),W.value=null)}async function wn(){let e=K.value?.node;if(q(),!e)return;let t=e.type===`directory`?k(`@EDITOR:文件夹`):k(`@EDITOR:文件`);if(!confirm(`${k(`@EDITOR:确认删除`)} ${t} "${e.name}"?`))return;let n=await(await fetch(`/api/editor/entry?path=${encodeURIComponent(e.path)}`,{method:`DELETE`})).json();if(!n.success){g.error(n.error);return}let r=L.value.findIndex(t=>t.path===e.path);r!==-1&&(L.value.splice(r,1),R.value===e.path&&(R.value=L.value[Math.max(0,r-1)]?.path??null)),g.success(k(`@EDITOR:已删除`)),await M()}async function Tn(){let e=K.value?.node;if(q(),e)try{let t=await(await fetch(`/api/editor/reveal`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({path:e.path})})).json();t.success||g.error(t.error)}catch(e){g.error(e?.message||String(e))}}function En(e){let t=d.currentDirectory;if(!t)return e;let n=e=>e.replace(/\\/g,`/`).replace(/\/+$/,``),r=n(t),i=n(e);return i===r?`.`:i.startsWith(r+`/`)?i.slice(r.length+1):i}async function Dn(e){try{if(navigator.clipboard&&window.isSecureContext)return await navigator.clipboard.writeText(e),!0}catch{}try{let t=document.createElement(`textarea`);t.value=e,t.style.position=`fixed`,t.style.left=`-9999px`,document.body.appendChild(t),t.select();let n=document.execCommand(`copy`);return document.body.removeChild(t),n}catch{return!1}}async function On(){let e=K.value?.node;q(),e&&(await Dn(e.path)?g.success(k(`@EDITOR:已复制到剪贴板`)):g.error(k(`@EDITOR:复制失败`)))}async function kn(){let e=K.value?.node;q(),e&&(await Dn(En(e.path))?g.success(k(`@EDITOR:已复制到剪贴板`)):g.error(k(`@EDITOR:复制失败`)))}async function An(){let e=K.value?.node;if(q(),e)try{let t=await(await fetch(`/api/editor/open-in-vscode`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({path:e.path})})).json();t.success||g.error(t.error||k(`@EDITOR:VSCode 未安装`))}catch(e){g.error(e?.message||String(e))}}let jn=new Set([`html`,`htm`]),Mn=t(()=>{let e=K.value?.node;if(!e||e.type!==`file`)return!1;let t=e.name.slice(e.name.lastIndexOf(`.`)+1).toLowerCase();return jn.has(t)});async function Nn(){let e=K.value?.node;if(q(),e)try{let t=await(await fetch(`/api/editor/open-in-browser`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({path:e.path})})).json();t.success||g.error(t.error||k(`@EDITOR:浏览器打开失败`))}catch(e){g.error(e?.message||String(e))}}o(()=>document.addEventListener(`click`,q)),s(()=>document.removeEventListener(`click`,q));let Pn=new Set([`md`,`html`,`htm`,`svg`]),Fn=new Set([`png`,`jpg`,`jpeg`,`gif`,`webp`,`ico`,`bmp`]),J=_(!1),Y=_(!1),X=_(!1),In=_(!1),Ln=_(0),Z=t(()=>L.value.find(e=>e.path===R.value)??null),Rn=t(()=>Z.value?.language===`plaintext`&&Z.value?.content===``),zn=t(()=>Z.value?.language===`office`),Q=t(()=>(Z.value?.name??``).split(`.`).pop()?.toLowerCase()??``),Bn=t(()=>Pn.has(Q.value)||Fn.has(Q.value)||_e(Q.value)),Vn=t(()=>((Z.value?.content??``).match(/^#{1,6}\s+/gm)||[]).length),$=t(()=>Q.value===`md`&&Vn.value>0);S(R,()=>{J.value&&!Bn.value&&(J.value=!1),Y.value&&!$.value&&(Y.value=!1)});function Hn(){Bn.value&&(J.value||(Y.value=!1,X.value=!1),J.value=!J.value)}function Un(){$.value&&(Y.value||(J.value=!1,X.value=!1),Y.value=!Y.value)}function Wn(){X.value||(J.value=!1,Y.value=!1),X.value=!X.value,In.value=!0}let Gn=t(()=>{let e=Z.value;if(!e)return``;let t=Q.value,n=document.documentElement.getAttribute(`data-theme`)===`light`?`#ffffff`:`#0d1117`;return t===`html`||t===`htm`?he(e.content):t===`svg`?`<!DOCTYPE html><html><head><meta charset="utf-8"><style>html,body{margin:0;padding:0;background:${n};display:flex;align-items:center;justify-content:center;min-height:100vh;}svg{max-width:100%;max-height:90vh;}</style></head><body>${e.content}</body></html>`:``}),Kn=!1,qn=0,Jn=0;function Yn(e){Kn=!0,qn=e.clientX,Jn=Ln.value,document.addEventListener(`mousemove`,Xn),document.addEventListener(`mouseup`,Zn),e.preventDefault()}function Xn(e){if(!Kn)return;let t=e.clientX-qn;Ln.value=Math.max(200,Math.min(900,Jn+t))}function Zn(){Kn=!1,document.removeEventListener(`mousemove`,Xn),document.removeEventListener(`mouseup`,Zn)}return(t,o)=>(m(),n(D,null,[E(`div`,{class:`editor-view`,ref_key:`containerRef`,ref:H},[E(`div`,{class:`editor-sidebar`,style:h({width:tn.value+`px`})},[E(`div`,B,[E(`span`,Ke,u(i(k)(`@EDITOR:资源管理器`)),1),E(`div`,qe,[c(i(a),{content:i(k)(`@EDITOR:新建文件`),placement:`bottom`,"show-after":300},{default:re(()=>[E(`button`,{class:`sidebar-action-btn`,onClick:fn},[...o[11]||=[E(`svg`,{viewBox:`0 0 24 24`,width:`14`,height:`14`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[E(`path`,{d:`M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z`}),E(`polyline`,{points:`14 2 14 8 20 8`}),E(`line`,{x1:`12`,y1:`13`,x2:`12`,y2:`19`}),E(`line`,{x1:`9`,y1:`16`,x2:`15`,y2:`16`})],-1)]])]),_:1},8,[`content`]),c(i(a),{content:i(k)(`@EDITOR:新建文件夹`),placement:`bottom`,"show-after":300},{default:re(()=>[E(`button`,{class:`sidebar-action-btn`,onClick:pn},[...o[12]||=[E(`svg`,{viewBox:`0 0 24 24`,width:`14`,height:`14`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[E(`path`,{d:`M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z`}),E(`line`,{x1:`12`,y1:`11`,x2:`12`,y2:`17`}),E(`line`,{x1:`9`,y1:`14`,x2:`15`,y2:`14`})],-1)]])]),_:1},8,[`content`]),c(i(a),{content:i(k)(`@EDITOR:刷新`),placement:`bottom`,"show-after":300},{default:re(()=>[E(`button`,{class:`sidebar-action-btn`,onClick:o[0]||=e=>M({notifyOnError:!0})},[...o[13]||=[E(`svg`,{viewBox:`0 0 24 24`,width:`14`,height:`14`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[E(`polyline`,{points:`1 4 1 10 7 10`}),E(`polyline`,{points:`23 20 23 14 17 14`}),E(`path`,{d:`M20.49 9A9 9 0 0 0 5.64 5.64L1 10m22 4l-4.64 4.36A9 9 0 0 1 3.51 15`})],-1)]])]),_:1},8,[`content`])])]),E(`div`,Je,[o[15]||=E(`svg`,{class:`sidebar-search-icon`,viewBox:`0 0 24 24`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"aria-hidden":`true`},[E(`circle`,{cx:`11`,cy:`11`,r:`7`}),E(`line`,{x1:`21`,y1:`21`,x2:`16.65`,y2:`16.65`})],-1),x(E(`input`,{ref_key:`searchInputRef`,ref:I,"onUpdate:modelValue":o[1]||=e=>O.value=e,type:`text`,class:`sidebar-search-input`,placeholder:i(k)(`@EDITOR:搜索文件...`),title:i(k)(`@EDITOR:搜索文件...`),spellcheck:`false`,autocomplete:`off`,onKeydown:ne(We,[`escape`])},null,40,Ye),[[v,O.value]]),O.value?(m(),n(`button`,{key:0,class:`sidebar-search-clear`,title:i(k)(`@EDITOR:清除搜索`),"aria-label":i(k)(`@EDITOR:清除搜索`),onClick:De},[...o[14]||=[E(`svg`,{viewBox:`0 0 24 24`,width:`12`,height:`12`,fill:`none`,stroke:`currentColor`,"stroke-width":`2.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"aria-hidden":`true`},[E(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`}),E(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`})],-1)]],8,Xe)):r(``,!0)]),se.value?(m(),n(`div`,vt,[...o[24]||=[E(`span`,{class:`spin-icon`},null,-1)]])):(m(),n(`div`,Ze,[(m(!0),n(D,null,te(P(Be.value),e=>(m(),n(D,{key:e.path},[W.value&&W.value.node.path===e.path?(m(),n(`div`,{key:0,class:`tree-node tree-inline-input-row`,style:h({paddingLeft:12+e.depth*14+`px`})},[e.type===`directory`?(m(),n(`span`,{key:0,class:w([`tree-arrow`,{expanded:e.expanded}])},[...o[16]||=[E(`svg`,{viewBox:`0 0 24 24`,width:`10`,height:`10`,fill:`none`,stroke:`currentColor`,"stroke-width":`2.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[E(`polyline`,{points:`9 18 15 12 9 6`})],-1)]],2)):(m(),n(`span`,Qe)),(m(),n(`svg`,$e,[E(`use`,{"xlink:href":`#${ln(e)}`},null,8,et)])),x(E(`input`,{ref_for:!0,ref_key:`renameInputRef`,ref:un,"onUpdate:modelValue":o[2]||=e=>W.value.value=e,onKeydown:Cn,onBlur:Sn,onClick:o[3]||=T(()=>{},[`stop`])},null,544),[[v,W.value.value]])],4)):(m(),n(`div`,{key:1,class:w([`tree-node`,{"tree-node--dir":e.type===`directory`,"tree-node--file":e.type===`file`,"tree-node--active":R.value===e.path,"tree-node--selected":z.value?.path===e.path&&R.value!==e.path}]),style:h({paddingLeft:12+e.depth*14+`px`}),onClick:t=>Ut(e),onContextmenu:t=>vn(t,e)},[e.type===`directory`?(m(),n(`span`,{key:0,class:w([`tree-arrow`,{expanded:e.expanded}])},[...o[17]||=[E(`svg`,{viewBox:`0 0 24 24`,width:`10`,height:`10`,fill:`none`,stroke:`currentColor`,"stroke-width":`2.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[E(`polyline`,{points:`9 18 15 12 9 6`})],-1)]],2)):(m(),n(`span`,nt)),e.type===`directory`?(m(),n(`svg`,rt,[E(`use`,{"xlink:href":`#${ln(e)}`},null,8,it)])):(m(),n(`svg`,at,[E(`use`,{"xlink:href":`#${ln(e)}`},null,8,ot)])),E(`span`,{class:`tree-name`,title:e.path},[(m(!0),n(D,null,te(He(e.name),(e,t)=>(m(),n(D,{key:t},[e.hit?(m(),n(`span`,ct,u(e.text),1)):(m(),n(D,{key:1},[y(u(e.text),1)],64))],64))),128))],8,st),e.loading?(m(),n(`span`,lt)):r(``,!0)],46,tt)),U.value&&U.value.afterNode?.path===e.path?(m(),n(`div`,{key:2,class:`tree-node tree-inline-input-row`,style:h({paddingLeft:12+U.value.depth*14+`px`})},[o[20]||=E(`span`,{class:`tree-arrow-spacer`},null,-1),U.value.kind===`directory`?(m(),n(`svg`,ut,[...o[18]||=[E(`path`,{d:`M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z`},null,-1)]])):(m(),n(`svg`,dt,[...o[19]||=[E(`path`,{d:`M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z`},null,-1),E(`polyline`,{points:`14 2 14 8 20 8`},null,-1)]])),x(E(`input`,{ref_for:!0,ref_key:`inlineInputRef`,ref:G,class:`tree-inline-input`,"onUpdate:modelValue":o[4]||=e=>U.value.value=e,placeholder:U.value.kind===`file`?i(k)(`@EDITOR:输入文件名`):i(k)(`@EDITOR:输入文件夹名`),onKeydown:gn,onBlur:mn,onClick:o[5]||=T(()=>{},[`stop`])},null,40,ft),[[v,U.value.value]])],4)):r(``,!0)],64))),128)),U.value&&U.value.afterNode===null?(m(),n(`div`,pt,[o[23]||=E(`span`,{class:`tree-arrow-spacer`},null,-1),U.value.kind===`directory`?(m(),n(`svg`,mt,[...o[21]||=[E(`path`,{d:`M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z`},null,-1)]])):(m(),n(`svg`,ht,[...o[22]||=[E(`path`,{d:`M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z`},null,-1),E(`polyline`,{points:`14 2 14 8 20 8`},null,-1)]])),x(E(`input`,{ref_key:`inlineInputRef`,ref:G,class:`tree-inline-input`,"onUpdate:modelValue":o[6]||=e=>U.value.value=e,placeholder:U.value.kind===`file`?i(k)(`@EDITOR:输入文件名`):i(k)(`@EDITOR:输入文件夹名`),onKeydown:gn,onBlur:mn,onClick:o[7]||=T(()=>{},[`stop`])},null,40,gt),[[v,U.value.value]])])):r(``,!0),!U.value&&(Ve.value||C.value.length===0)?(m(),n(`div`,_t,u(Ve.value?i(k)(`@EDITOR:未找到匹配文件`):i(k)(`@EDITOR:暂无文件`)),1)):r(``,!0)]))],4),E(`div`,{class:`editor-resizer`,onMousedown:on},null,32),E(`div`,yt,[L.value.length>0?(m(),n(`div`,bt,[(m(!0),n(D,null,te(L.value,e=>(m(),n(`div`,{key:e.path,class:w([`editor-tab`,{active:R.value===e.path,dirty:e.isDirty}]),onClick:t=>R.value=e.path,title:e.path},[E(`span`,St,u(e.name),1),e.isDirty?(m(),n(`span`,Ct)):r(``,!0),E(`button`,{class:`tab-close`,onClick:t=>Wt(e.path,t)},[...o[25]||=[E(`svg`,{viewBox:`0 0 24 24`,width:`12`,height:`12`,fill:`none`,stroke:`currentColor`,"stroke-width":`2.5`,"stroke-linecap":`round`},[E(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`}),E(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`})],-1)]],8,wt)],10,xt))),128)),o[29]||=E(`div`,{class:`editor-tabs-spacer`},null,-1),Bn.value?(m(),n(`button`,{key:0,class:w([`preview-toggle-btn`,{active:J.value}]),title:J.value?i(k)(`@EDITOR:关闭预览`):i(k)(`@EDITOR:打开预览`),onClick:Hn},[o[26]||=E(`svg`,{viewBox:`0 0 24 24`,width:`14`,height:`14`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[E(`path`,{d:`M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z`}),E(`circle`,{cx:`12`,cy:`12`,r:`3`})],-1),E(`span`,null,u(i(k)(`@EDITOR:预览`)),1)],10,Tt)):r(``,!0),$.value?(m(),n(`button`,{key:1,class:w([`preview-toggle-btn mindmap-toggle-btn`,{active:Y.value,disabled:!$.value}]),disabled:!$.value,title:$.value?Y.value?i(k)(`@EDITOR:关闭思维导图`):i(k)(`@EDITOR:打开思维导图`):i(k)(`@EDITOR:需要至少一个 # 标题`),onClick:Un},[o[27]||=e(`<svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-v-4ce372fa><circle cx="12" cy="12" r="2" data-v-4ce372fa></circle><circle cx="5" cy="6" r="1.6" data-v-4ce372fa></circle><circle cx="19" cy="6" r="1.6" data-v-4ce372fa></circle><circle cx="5" cy="18" r="1.6" data-v-4ce372fa></circle><circle cx="19" cy="18" r="1.6" data-v-4ce372fa></circle><line x1="11" y1="11" x2="6.4" y2="7" data-v-4ce372fa></line><line x1="13" y1="11" x2="17.6" y2="7" data-v-4ce372fa></line><line x1="11" y1="13" x2="6.4" y2="17" data-v-4ce372fa></line><line x1="13" y1="13" x2="17.6" y2="17" data-v-4ce372fa></line></svg>`,1),E(`span`,null,u(i(k)(`@EDITOR:思维导图`)),1)],10,Et)):r(``,!0),E(`button`,{class:w([`preview-toggle-btn agent-toggle-btn`,{active:X.value}]),title:X.value?i(k)(`@EDITOR:关闭 g ai 对话`):i(k)(`@EDITOR:打开 g ai 对话`),onClick:Wn},[o[28]||=E(`svg`,{viewBox:`0 0 24 24`,width:`14`,height:`14`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[E(`path`,{d:`M12 3l1.9 4.6L18.5 9.5l-4.6 1.9L12 16l-1.9-4.6L5.5 9.5l4.6-1.9z`}),E(`path`,{d:`M18 16.5l.9 2.1 2.1.9-2.1.9-.9 2.1-.9-2.1-2.1-.9 2.1-.9z`})],-1),E(`span`,null,u(i(k)(`@EDITOR:g ai 对话`)),1)],10,Dt)])):r(``,!0),L.value.length===0?(m(),n(`div`,Ot,[(m(),n(`svg`,kt,[...o[30]||=[E(`path`,{d:`M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z`},null,-1),E(`polyline`,{points:`14 2 14 8 20 8`},null,-1)]])),E(`p`,null,u(i(k)(`@EDITOR:从左侧选择文件打开`)),1),E(`p`,At,u(i(k)(`@EDITOR:Ctrl+S 保存`)),1)])):r(``,!0),E(`div`,jt,[E(`div`,{class:w([`monaco-container`,{hidden:L.value.length===0||Rn.value||zn.value}]),ref_key:`editorContainerRef`,ref:Kt},null,2),Rn.value&&L.value.length>0&&!J.value&&!Y.value?(m(),n(`div`,Mt,[(m(),n(`svg`,Nt,[...o[31]||=[E(`rect`,{x:`3`,y:`3`,width:`18`,height:`18`,rx:`2`},null,-1),E(`circle`,{cx:`9`,cy:`9`,r:`2`},null,-1),E(`path`,{d:`m21 15-5-5L5 21`},null,-1)]])),E(`p`,Pt,u(Z.value?.name),1),E(`p`,Ft,u(i(k)(`@EDITOR:这是图片文件,已在右侧预览面板中打开`)),1)])):r(``,!0),(J.value||Y.value||X.value)&&L.value.length>0?(m(),n(`div`,{key:1,class:`preview-resizer`,onMousedown:Yn},null,32)):r(``,!0),In.value?x((m(),f(Ge,{key:2,active:X.value&&L.value.length>0,"active-file-path":R.value,"active-file-name":Z.value?.name??``,style:h({flexBasis:Ln.value+`px`}),onClose:o[8]||=e=>X.value=!1},null,8,[`active`,`active-file-path`,`active-file-name`,`style`])),[[ie,X.value&&L.value.length>0]]):r(``,!0),(J.value||Y.value)&&L.value.length>0?(m(),n(`div`,{key:3,class:`preview-panel`,style:h({flexBasis:Ln.value+`px`})},[E(`div`,It,[E(`span`,Lt,u(Y.value?i(k)(`@EDITOR:思维导图`):i(k)(`@EDITOR:预览`)),1),E(`span`,Rt,u(Q.value.toUpperCase()),1),o[33]||=E(`div`,{class:`preview-header-spacer`},null,-1),E(`button`,{class:`preview-close-btn`,title:Y.value?i(k)(`@EDITOR:关闭思维导图`):i(k)(`@EDITOR:关闭预览`),onClick:o[9]||=e=>Y.value?Y.value=!1:J.value=!1},[...o[32]||=[E(`svg`,{viewBox:`0 0 24 24`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,"stroke-width":`2.5`,"stroke-linecap":`round`},[E(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`}),E(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`})],-1)]],8,zt)]),E(`div`,Bt,[Y.value&&Q.value===`md`&&Z.value?(m(),f(F,{key:0,content:Z.value.content,class:`preview-mindmap`},null,8,[`content`])):J.value&&Q.value===`md`&&Z.value?(m(),f(me,{key:1,content:Z.value.content,class:`preview-markdown`},null,8,[`content`])):J.value&&[`html`,`htm`,`svg`].includes(Q.value)?(m(),n(`iframe`,{key:2,class:`preview-iframe`,sandbox:i(ve),srcdoc:Gn.value},null,8,Vt)):J.value&&i(Fn).has(Q.value)&&Z.value?(m(),f(pe,{key:3,"file-path":Z.value.path,"file-name":Z.value.name},null,8,[`file-path`,`file-name`])):J.value&&zn.value&&Z.value?(m(),f(ge,{key:4,"file-path":Z.value.path},null,8,[`file-path`])):r(``,!0)])],4)):r(``,!0)])])],512),(m(),f(ae,{to:`body`},[K.value?(m(),n(`div`,{key:0,ref_key:`ctxMenuRef`,ref:_n,class:`ctx-menu`,style:h({left:K.value.x+`px`,top:K.value.y+`px`}),onClick:o[10]||=T(()=>{},[`stop`])},[E(`button`,{class:`ctx-menu-item`,onClick:yn},[o[34]||=E(`svg`,{viewBox:`0 0 24 24`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[E(`path`,{d:`M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z`}),E(`polyline`,{points:`14 2 14 8 20 8`}),E(`line`,{x1:`12`,y1:`13`,x2:`12`,y2:`19`}),E(`line`,{x1:`9`,y1:`16`,x2:`15`,y2:`16`})],-1),y(` `+u(i(k)(`@EDITOR:新建文件`)),1)]),E(`button`,{class:`ctx-menu-item`,onClick:bn},[o[35]||=E(`svg`,{viewBox:`0 0 24 24`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[E(`path`,{d:`M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z`}),E(`line`,{x1:`12`,y1:`11`,x2:`12`,y2:`17`}),E(`line`,{x1:`9`,y1:`14`,x2:`15`,y2:`14`})],-1),y(` `+u(i(k)(`@EDITOR:新建文件夹`)),1)]),o[42]||=E(`div`,{class:`ctx-menu-sep`},null,-1),E(`button`,{class:`ctx-menu-item`,onClick:On},[o[36]||=E(`svg`,{viewBox:`0 0 24 24`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[E(`rect`,{x:`9`,y:`9`,width:`13`,height:`13`,rx:`2`,ry:`2`}),E(`path`,{d:`M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1`})],-1),y(` `+u(i(k)(`@EDITOR:复制绝对路径`)),1)]),E(`button`,{class:`ctx-menu-item`,onClick:kn},[o[37]||=E(`svg`,{viewBox:`0 0 24 24`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[E(`path`,{d:`M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71`}),E(`path`,{d:`M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71`})],-1),y(` `+u(i(k)(`@EDITOR:复制相对路径`)),1)]),o[43]||=E(`div`,{class:`ctx-menu-sep`},null,-1),Mn.value?(m(),n(`button`,{key:0,class:`ctx-menu-item`,onClick:Nn},[o[38]||=E(`svg`,{viewBox:`0 0 24 24`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[E(`circle`,{cx:`12`,cy:`12`,r:`9`}),E(`line`,{x1:`3`,y1:`12`,x2:`21`,y2:`12`}),E(`path`,{d:`M12 3a13 13 0 0 1 3.5 9 13 13 0 0 1-3.5 9 13 13 0 0 1-3.5-9A13 13 0 0 1 12 3z`})],-1),y(` `+u(i(k)(`@EDITOR:在浏览器中打开`)),1)])):r(``,!0),E(`button`,{class:`ctx-menu-item`,onClick:Tn},[o[39]||=E(`svg`,{viewBox:`0 0 24 24`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[E(`path`,{d:`M3 7a2 2 0 0 1 2-2h4l2 2h8a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`}),E(`path`,{d:`M3 7v10a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2`})],-1),y(` `+u(i(k)(`@EDITOR:在资源管理器中打开`)),1)]),E(`button`,{class:`ctx-menu-item`,onClick:An},[c(le,{"icon-class":`vscode`,"class-name":`ctx-menu-icon`}),y(` `+u(i(k)(`@EDITOR:在 VSCode 中打开`)),1)]),E(`button`,{class:`ctx-menu-item`,onClick:xn},[o[40]||=E(`svg`,{viewBox:`0 0 24 24`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[E(`path`,{d:`M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7`}),E(`path`,{d:`M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z`})],-1),y(` `+u(i(k)(`@EDITOR:重命名`)),1)]),E(`button`,{class:`ctx-menu-item ctx-menu-item--danger`,onClick:wn},[o[41]||=E(`svg`,{viewBox:`0 0 24 24`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[E(`polyline`,{points:`3 6 5 6 21 6`}),E(`path`,{d:`M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6`}),E(`path`,{d:`M10 11v6`}),E(`path`,{d:`M14 11v6`}),E(`path`,{d:`M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2`})],-1),y(` `+u(i(k)(`@EDITOR:删除`)),1)])],4)):r(``,!0)]))],64))}}),[[`__scopeId`,`data-v-4ce372fa`]]);export{Ut as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.mindmap-preview[data-v-d2fe328b]{background:var(--bg-container,#fff);flex-direction:column;width:100%;height:100%;display:flex}.mindmap-preview-header[data-v-d2fe328b]{background:var(--bg-panel,var(--md-bg-subtle));font-size:var(--font-size-sm);align-items:center;gap:12px;padding:8px 14px;display:flex}.mindmap-preview-title[data-v-d2fe328b]{color:var(--text-primary,var(--md-text-strong));letter-spacing:.5px;font-weight:600}.mindmap-preview-hint[data-v-d2fe328b]{color:var(--text-secondary,var(--md-text-muted));font-size:var(--font-size-xs)}.mindmap-preview-canvas[data-v-d2fe328b]{flex:1;width:100%;min-height:0}.mindmap-preview-canvas[data-v-d2fe328b] .zm-mindmap,.mindmap-preview-canvas[data-v-d2fe328b]>*{width:100%;height:100%}.editor-agent-panel[data-v-d910c906]{background:var(--bg-panel);border-left:1px solid var(--border-color);flex-direction:column;flex-grow:1;flex-basis:0;min-width:200px;min-height:0;display:flex;overflow:hidden}.agent-panel-header[data-v-d910c906]{border-bottom:1px solid var(--border-color);flex-shrink:0;align-items:center;gap:8px;height:34px;padding:0 6px 0 12px;display:flex}.agent-panel-title[data-v-d910c906]{font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:700;overflow:hidden}.agent-panel-spacer[data-v-d910c906]{flex:1}.agent-panel-engine[data-v-d910c906]{flex:none}.agent-panel-icon-btn[data-v-d910c906]{border-radius:var(--radius-xs);width:24px;height:24px;color:var(--text-tertiary);cursor:pointer;transition:var(--transition-ui-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.agent-panel-icon-btn[data-v-d910c906]:hover{background:var(--bg-hover);color:var(--text-secondary)}.agent-panel-body[data-v-d910c906]{flex:1;grid-template:"stage"minmax(0,1fr)"composer"/minmax(0,1fr);min-height:0;display:grid}.agent-panel-body.is-wide[data-v-d910c906]{grid-template-columns:240px minmax(0,1fr);grid-template-areas:"list chat""list composer"}.agent-panel-convs[data-v-d910c906]{grid-area:stage;min-height:0;padding:8px 10px;overflow-y:auto}.agent-panel-chat[data-v-d910c906]{grid-area:stage;min-height:0;display:flex}.agent-panel-body.is-wide .agent-panel-convs[data-v-d910c906]{grid-area:list}.agent-panel-body.is-wide .agent-panel-chat[data-v-d910c906]{grid-area:chat}.agent-panel-composer[data-v-d910c906]{padding:var(--acu-space-3) var(--acu-space-4) var(--acu-space-4);background:linear-gradient(to top, var(--acu-bg) 70%, transparent);grid-area:composer}.agent-panel-chat[data-v-d910c906]>.acu-chat{flex:1;min-width:0}.agent-panel-chat[data-v-d910c906] .acu-avatar--left{background:0 0}.agent-panel-composer[data-v-d910c906] .acu-input-wrap>.agent-context-slot{gap:var(--acu-space-2,8px);padding:var(--acu-space-2,8px) var(--acu-space-2,8px) 0;flex-wrap:wrap;display:flex}.agent-panel-composer[data-v-d910c906] .acu-input-attachments>.agent-context-slot{display:inline-flex}.agent-context-att[data-v-d910c906]{align-items:center;gap:var(--acu-space-2,8px);max-width:180px;padding:var(--acu-space-2,8px) var(--acu-space-3,12px);border:1px solid var(--acu-border);border-radius:var(--acu-radius-sm,8px);background:var(--acu-bg,var(--bg-container));color:var(--acu-text-secondary,var(--text-secondary));font-size:var(--acu-font-size-xs,12px);display:inline-flex;position:relative}.agent-context-att-icon[data-v-d910c906]{opacity:.75;flex-shrink:0}.agent-context-att-name[data-v-d910c906]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.agent-context-att-remove[data-v-d910c906]{border-radius:var(--acu-radius-full,999px);background:var(--acu-text,var(--text-primary));width:18px;height:18px;color:var(--acu-bg,var(--bg-container));cursor:pointer;box-shadow:var(--acu-shadow-sm,0 1px 2px #0003);transition:transform var(--acu-duration-fast,.15s) var(--acu-easing,ease);border:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:-6px;right:-6px}.agent-context-att-remove[data-v-d910c906]:hover{transform:scale(1.12)}.agent-context-att-remove[data-v-d910c906]:active{transform:scale(1.02)}.editor-view[data-v-4ce372fa]{background:var(--bg-container);width:100%;height:100%;box-shadow:var(--shadow-sm);border-radius:0;display:flex;overflow:hidden}.editor-sidebar[data-v-4ce372fa]{background:var(--bg-panel);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.sidebar-header[data-v-4ce372fa]{flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 10px 6px;display:flex}.sidebar-title[data-v-4ce372fa]{font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);-webkit-user-select:none;user-select:none;font-weight:700}.sidebar-action-btn[data-v-4ce372fa]{cursor:pointer;color:var(--text-tertiary);border-radius:var(--radius-base);background:0 0;border:none;align-items:center;padding:3px;display:flex}.sidebar-action-btn[data-v-4ce372fa]:hover{color:var(--text-primary);background:var(--bg-hover)}.sidebar-search[data-v-4ce372fa]{flex-shrink:0;align-items:center;padding:6px 10px;display:flex;position:relative}.sidebar-search-icon[data-v-4ce372fa]{color:var(--text-tertiary);pointer-events:none;position:absolute;left:18px}.sidebar-search-input[data-v-4ce372fa]{min-width:0;height:26px;font-size:var(--font-size-sm);color:var(--text-primary);background:var(--bg-input,#ffffff0a);border:1px solid var(--border-color);border-radius:var(--radius-base);transition:border-color var(--transition-fast), background var(--transition-fast);outline:none;flex:1;padding:0 24px 0 26px}.sidebar-search-input[data-v-4ce372fa]::placeholder{color:var(--text-tertiary)}.sidebar-search-input[data-v-4ce372fa]:hover{border-color:var(--text-tertiary)}.sidebar-search-input[data-v-4ce372fa]:focus{border-color:var(--color-primary);background:var(--bg-panel)}.sidebar-search-clear[data-v-4ce372fa]{cursor:pointer;width:18px;height:18px;color:var(--text-tertiary);transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;right:14px}.sidebar-search-clear[data-v-4ce372fa]:hover{background:var(--bg-hover);color:var(--text-primary)}.tree-name-hit[data-v-4ce372fa]{color:var(--color-warning-light);border-radius:var(--radius-xs);background:#f59e0b26;padding:0 1px}.sidebar-tree[data-v-4ce372fa]{flex:1;padding:4px 0;overflow:hidden auto}.tree-node[data-v-4ce372fa]{cursor:pointer;border-radius:var(--radius-base);-webkit-user-select:none;user-select:none;height:24px;color:var(--text-primary);font-size:var(--font-size-mid);transition:background var(--transition-fast);white-space:nowrap;align-items:center;gap:4px;padding-right:8px;display:flex;overflow:hidden}.tree-node[data-v-4ce372fa]:hover{background:var(--bg-hover)}.tree-node--active[data-v-4ce372fa]{background:var(--tint-primary-12);color:var(--color-primary)}.tree-node--selected[data-v-4ce372fa]{outline-offset:-1px;background:#63b3ed26;outline:1px solid #63b3ed59}.tree-arrow[data-v-4ce372fa]{color:var(--text-tertiary);transition:transform var(--transition-fast);flex-shrink:0;align-items:center;width:12px;display:flex}.tree-arrow.expanded[data-v-4ce372fa]{transform:rotate(90deg)}.tree-arrow-spacer[data-v-4ce372fa]{flex-shrink:0;width:12px}.tree-icon[data-v-4ce372fa]{font-size:var(--font-size-base);flex-shrink:0;align-items:center;line-height:1;display:flex}.tree-icon.mit-icon[data-v-4ce372fa]{fill:currentColor;vertical-align:middle;width:14px;height:14px;display:inline-block}.tree-icon--dir[data-v-4ce372fa]{color:#e8b84b}.tree-name[data-v-4ce372fa]{text-overflow:ellipsis;min-width:0;font-size:var(--font-size-mid);flex:1;overflow:hidden}.tree-loading[data-v-4ce372fa]{border:1.5px solid var(--color-primary);border-top-color:#0000;border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:.8s linear infinite spin-4ce372fa;display:inline-block}.tree-empty[data-v-4ce372fa]{font-size:var(--font-size-sm);color:var(--text-tertiary);text-align:center;padding:24px 12px}.sidebar-loading[data-v-4ce372fa]{flex:1;justify-content:center;align-items:center;display:flex}.spin-icon[data-v-4ce372fa]{border:2px solid var(--color-primary);border-top-color:#0000;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin-4ce372fa;display:inline-block}@keyframes spin-4ce372fa{to{transform:rotate(360deg)}}.editor-resizer[data-v-4ce372fa]{cursor:col-resize;width:6px;transition:background var(--transition-fast);z-index:2;background:0 0;flex-shrink:0;position:relative}.editor-resizer[data-v-4ce372fa]:after{content:"";background:var(--color-gray-300);border-radius:var(--radius-xs);width:2px;height:32px;transition:background var(--transition-fast), height var(--transition-fast);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.editor-resizer[data-v-4ce372fa]:hover{background:var(--tint-primary-06)}.editor-resizer[data-v-4ce372fa]:hover:after{background:var(--color-primary);height:48px;box-shadow:0 0 8px #3b82f666}.editor-main[data-v-4ce372fa]{flex-direction:column;flex:1;display:flex;overflow:hidden}.editor-tabs[data-v-4ce372fa]{background:var(--bg-panel);scrollbar-width:none;flex-shrink:0;display:flex;overflow:auto hidden}.editor-tabs[data-v-4ce372fa]::-webkit-scrollbar{display:none}.editor-tab[data-v-4ce372fa]{cursor:pointer;height:34px;font-size:var(--font-size-mid);color:var(--text-secondary);transition:background var(--transition-fast), color var(--transition-fast);-webkit-user-select:none;user-select:none;flex-shrink:0;align-items:center;gap:6px;min-width:80px;max-width:200px;padding:0 12px;display:flex}.editor-tab[data-v-4ce372fa]:hover{background:var(--bg-hover);color:var(--text-primary)}.editor-tab.active[data-v-4ce372fa]{background:var(--bg-container);color:var(--text-primary);border-bottom:2px solid var(--color-primary)}.tab-name[data-v-4ce372fa]{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tab-dirty-dot[data-v-4ce372fa]{background:var(--color-warning);border-radius:50%;flex-shrink:0;width:6px;height:6px}.tab-close[data-v-4ce372fa]{cursor:pointer;color:var(--text-tertiary);border-radius:var(--radius-base);opacity:0;transition:opacity var(--transition-fast), background var(--transition-fast);background:0 0;border:none;flex-shrink:0;align-items:center;padding:2px;display:flex}.editor-tab:hover .tab-close[data-v-4ce372fa],.editor-tab.active .tab-close[data-v-4ce372fa]{opacity:1}.tab-close[data-v-4ce372fa]:hover{background:var(--bg-hover);color:var(--color-danger)}.editor-empty[data-v-4ce372fa]{color:var(--text-tertiary);font-size:var(--font-size-mid);-webkit-user-select:none;user-select:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;display:flex}.editor-empty p[data-v-4ce372fa]{margin:0}.editor-empty-hint[data-v-4ce372fa]{font-size:var(--font-size-xs);opacity:.6}.monaco-container[data-v-4ce372fa]{flex:1;min-width:0;overflow:hidden}.monaco-container.hidden[data-v-4ce372fa]{display:none}.image-tab-placeholder[data-v-4ce372fa]{justify-content:center;align-items:center;gap:var(--spacing-sm);color:var(--text-secondary);background:var(--bg-container);text-align:center;padding:var(--spacing-lg);flex-direction:column;flex:1;display:flex}.image-tab-placeholder-title[data-v-4ce372fa]{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--text-primary);word-break:break-all;margin:0}.image-tab-placeholder-hint[data-v-4ce372fa]{font-size:var(--font-size-sm);color:var(--text-tertiary);margin:0}.editor-body[data-v-4ce372fa]{flex:1;min-height:0;display:flex;overflow:hidden}.preview-resizer[data-v-4ce372fa]{cursor:col-resize;width:6px;transition:background var(--transition-fast);z-index:2;background:0 0;flex-shrink:0;order:99;margin-left:auto;position:relative}.preview-resizer[data-v-4ce372fa]:after{content:"";background:var(--color-gray-300);border-radius:var(--radius-xs);width:2px;height:32px;transition:background var(--transition-fast), height var(--transition-fast);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.preview-resizer[data-v-4ce372fa]:hover{background:var(--tint-primary-06)}.preview-resizer[data-v-4ce372fa]:hover:after{background:var(--color-primary);height:48px;box-shadow:0 0 8px #3b82f666}.preview-panel[data-v-4ce372fa]{background:var(--bg-panel);flex-direction:column;flex:1 1 0;min-width:200px;display:flex;overflow:hidden}.preview-header[data-v-4ce372fa]{background:var(--bg-panel);flex-shrink:0;align-items:center;gap:6px;height:34px;padding:0 10px;display:flex}.preview-title[data-v-4ce372fa]{font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);-webkit-user-select:none;user-select:none;font-weight:700}.preview-ext-badge[data-v-4ce372fa]{font-size:var(--font-size-xs);border-radius:var(--radius-base);background:var(--tint-primary-16);color:var(--color-primary);letter-spacing:.04em;padding:1px 5px;font-weight:600}.preview-header-spacer[data-v-4ce372fa]{flex:1}.preview-close-btn[data-v-4ce372fa]{cursor:pointer;color:var(--text-tertiary);border-radius:var(--radius-base);transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;align-items:center;padding:3px;display:flex}.preview-close-btn[data-v-4ce372fa]:hover{color:var(--color-danger);background:var(--bg-hover)}.preview-body[data-v-4ce372fa]{flex-direction:column;flex:1;display:flex;overflow:hidden}.preview-iframe[data-v-4ce372fa]{background:0 0;border:none;flex:1;width:100%;height:100%}.preview-markdown[data-v-4ce372fa]{background:var(--bg-container,#fff);width:100%;height:100%;color:var(--text-primary,var(--md-text-strong));flex:1;overflow:auto}.preview-mindmap[data-v-4ce372fa]{background:var(--bg-container,#fff);flex-direction:column;flex:1;width:100%;height:100%;display:flex;overflow:hidden}.mindmap-toggle-btn.disabled[data-v-4ce372fa]{opacity:.45;cursor:not-allowed}.mindmap-toggle-btn.active[data-v-4ce372fa]{color:#fff;background:linear-gradient(#6366f1 0%,#4f46e5 100%);border-color:#4f46e5}.preview-image-wrap[data-v-4ce372fa]{background:var(--bg-container);flex:1;justify-content:center;align-items:center;padding:16px;display:flex;overflow:auto}.preview-image-wrap img[data-v-4ce372fa]{object-fit:contain;border-radius:var(--radius-base);max-width:100%;max-height:100%;box-shadow:0 2px 12px #0003}.editor-tabs-spacer[data-v-4ce372fa]{flex:1}.preview-toggle-btn[data-v-4ce372fa]{cursor:pointer;height:34px;color:var(--text-secondary);font-size:var(--font-size-sm);white-space:nowrap;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;flex-shrink:0;align-items:center;gap:5px;padding:0 10px;display:flex}.preview-toggle-btn[data-v-4ce372fa]:hover{background:var(--bg-hover);color:var(--text-primary)}.preview-toggle-btn.active[data-v-4ce372fa]{color:var(--color-primary);background:var(--tint-primary-08)}.sidebar-actions[data-v-4ce372fa]{align-items:center;gap:2px;display:flex}.tree-inline-input-row[data-v-4ce372fa]{cursor:default;background:var(--bg-hover)}.tree-inline-input[data-v-4ce372fa]{min-width:0;height:20px;font-size:var(--font-size-mid);background:var(--bg-container);border:1px solid var(--color-primary);border-radius:var(--radius-base);color:var(--text-primary);outline:none;flex:1;padding:0 5px;font-family:inherit}.ctx-menu[data-v-4ce372fa]{z-index:9999;background:var(--bg-container);border:1px solid var(--border-color);border-radius:var(--radius-md);-webkit-user-select:none;user-select:none;min-width:160px;padding:4px;position:fixed;box-shadow:0 8px 24px #00000059}.ctx-menu-icon[data-v-4ce372fa]{flex-shrink:0;width:13px;height:13px}.ctx-menu-item[data-v-4ce372fa]{border-radius:var(--radius-base);cursor:pointer;width:100%;font-size:var(--font-size-mid);color:var(--text-primary);text-align:left;transition:background var(--transition-fast);background:0 0;border:none;align-items:center;gap:8px;padding:6px 10px;display:flex}.ctx-menu-item[data-v-4ce372fa]:hover{background:var(--bg-hover)}.ctx-menu-item--danger[data-v-4ce372fa]{color:var(--color-danger)}.ctx-menu-item--danger[data-v-4ce372fa]:hover{background:#ef44441a}.ctx-menu-sep[data-v-4ce372fa]{background:var(--border-color);height:1px;margin:4px 2px}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.file-action-buttons[data-v-e552faf2]{justify-content:center;align-items:center;margin-left:auto;display:flex}.file-action-btn[data-v-e552faf2]{padding:var(--spacing-sm);min-width:24px;height:24px}.tree-node-wrapper[data-v-ec49f691]{width:100%}.tree-node[data-v-ec49f691]{align-items:center;gap:var(--spacing-sm);padding:6px var(--spacing-md);cursor:pointer;transition:var(--transition-all);background:0 0;border-bottom:1px solid #ffffff1a;min-height:32px;display:flex;position:relative}.tree-node[data-v-ec49f691]:before{content:"";width:3px;height:100%;transition:var(--transition-all);background:0 0;position:absolute;top:0;left:0}.tree-node[data-v-ec49f691]:hover{background:var(--bg-panel)}.tree-node[data-v-ec49f691]:hover:before{background:var(--color-primary)}.tree-node.is-selected[data-v-ec49f691]{background:var(--action-blue-soft);color:var(--color-primary);border-left:3px solid var(--color-primary)}.tree-node.is-selected[data-v-ec49f691]:before{background:var(--color-primary);width:4px}.tree-node.is-selected .node-icon[data-v-ec49f691]{color:var(--color-primary)}[data-theme=dark] .tree-node.is-selected[data-v-ec49f691]{color:var(--color-primary);border-left-color:var(--color-primary);background:#1890ff26}[data-theme=dark] .tree-node.is-selected[data-v-ec49f691]:before{background:var(--color-primary)}[data-theme=dark] .tree-node.is-selected .node-icon[data-v-ec49f691]{color:var(--color-primary)}.tree-node.is-directory[data-v-ec49f691]{font-weight:var(--font-weight-medium)}.tree-node.is-directory[data-v-ec49f691]:hover{background:var(--bg-icon-hover)}.tree-node.file-type-added[data-v-ec49f691]:before{background:var(--git-status-added)}.tree-node.file-type-added[data-v-ec49f691]:not(.is-selected):hover{background:linear-gradient(90deg,#10b9811a 0%,#fffc 100%)}.tree-node.file-type-added[data-v-ec49f691]:not(.is-selected):hover:before{background:var(--git-status-added);width:4px}.tree-node.file-type-modified[data-v-ec49f691]:before{background:var(--git-status-modified)}.tree-node.file-type-modified[data-v-ec49f691]:not(.is-selected):hover{background:linear-gradient(90deg,#f59e0b1a 0%,#fffc 100%)}.tree-node.file-type-modified[data-v-ec49f691]:not(.is-selected):hover:before{background:var(--git-status-modified);width:4px}.tree-node.file-type-deleted[data-v-ec49f691]:before{background:var(--git-status-deleted)}.tree-node.file-type-deleted[data-v-ec49f691]:not(.is-selected):hover{background:linear-gradient(90deg,#ef44441a 0%,#fffc 100%)}.tree-node.file-type-deleted[data-v-ec49f691]:not(.is-selected):hover:before{background:var(--git-status-deleted);width:4px}.tree-node.file-type-untracked[data-v-ec49f691]:before{background:var(--git-status-untracked)}.tree-node.file-type-untracked[data-v-ec49f691]:not(.is-selected):hover{background:linear-gradient(90deg,#8b5cf61a 0%,#fffc 100%)}.tree-node.file-type-untracked[data-v-ec49f691]:not(.is-selected):hover:before{background:var(--git-status-untracked);width:4px}.node-icon[data-v-ec49f691]{font-size:var(--font-size-md);margin-right:var(--spacing-xs);flex-shrink:0;line-height:1}.node-icon.folder-icon[data-v-ec49f691]{color:#faad14}.mit-icon[data-v-ec49f691]{fill:currentColor;vertical-align:middle;width:16px;height:16px;display:inline-block}.node-name[data-v-ec49f691]{text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);transition:var(--transition-color);flex:1;min-width:40px;overflow:hidden}.is-selected .node-name[data-v-ec49f691]{color:var(--color-primary);font-weight:var(--font-weight-semibold)}[data-theme=dark] .is-selected .node-name[data-v-ec49f691]{color:var(--color-primary)}.is-directory .node-name[data-v-ec49f691]{font-weight:var(--font-weight-semibold)}.file-type-tag[data-v-ec49f691]{font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-base);border-radius:var(--radius-base);background:var(--bg-panel);color:var(--text-tertiary);flex-shrink:0}.lock-icon[data-v-ec49f691]{opacity:.9;flex-shrink:0;margin-left:auto}.file-actions[data-v-ec49f691]{align-items:center;gap:var(--spacing-xs);border-radius:var(--radius-base);background:var(--bg-container);box-shadow:var(--shadow-sm);border:1px solid var(--border-color-light);display:none;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.tree-node:hover .file-actions[data-v-ec49f691]{display:flex}.tree-children[data-v-ec49f691]{width:100%}.file-tree-view[data-v-267015cf]{width:100%;height:100%;overflow:hidden auto}.monaco-diff-container[data-v-0c23e676]{height:100%;min-height:320px}.monaco-editor-container[data-v-1432c6d1]{width:100%;height:100%}.monaco-editor-container[data-v-1432c6d1] .merge-highlight-current{background:#3b82f629}.monaco-editor-container[data-v-1432c6d1] .merge-highlight-current-dim{background:#3b82f612}.monaco-editor-container[data-v-1432c6d1] .merge-highlight-incoming{background:#22c55e29}.monaco-editor-container[data-v-1432c6d1] .merge-highlight-incoming-dim{background:#22c55e12}.monaco-editor-container[data-v-1432c6d1] .merge-highlight-merged{background:#f59e0b24}.monaco-editor-container[data-v-1432c6d1] .merge-highlight-merged-dim{background:#f59e0b0f}.monaco-editor-container[data-v-1432c6d1] .merge-glyph-current{cursor:pointer}.monaco-editor-container[data-v-1432c6d1] .merge-glyph-current:before{content:"→";text-align:center;color:#3b82f6f2;width:100%;font-weight:700;display:inline-block}.monaco-editor-container[data-v-1432c6d1] .merge-glyph-incoming{cursor:pointer}.monaco-editor-container[data-v-1432c6d1] .merge-glyph-incoming:before{content:"←";text-align:center;color:#22c55ef2;width:100%;font-weight:700;display:inline-block}.monaco-editor-container[data-v-1432c6d1] .merge-right-actions{pointer-events:none;z-index:5;position:absolute;inset:0}.monaco-editor-container[data-v-1432c6d1] .merge-right-action-wrapper{pointer-events:auto;flex-direction:row;width:44px;display:flex;position:absolute}.monaco-editor-container[data-v-1432c6d1] .merge-right-action{text-align:center;cursor:pointer;pointer-events:auto;-webkit-user-select:none;user-select:none;border-radius:var(--radius-base);justify-content:center;align-items:center;width:22px;font-weight:700;display:flex}.monaco-editor-container[data-v-1432c6d1] .merge-right-action:hover{background:#0000000f}.monaco-editor-container[data-v-1432c6d1] .merge-right-action-current{color:#3b82f6f2}.monaco-editor-container[data-v-1432c6d1] .merge-right-action-incoming{color:#22c55ef2}.monaco-editor-container[data-v-1432c6d1] .merge-right-action-close{color:#ef4444d9}.monaco-editor-container[data-v-1432c6d1] .merge-right-action-close:hover{color:#ef4444;background:#ef44441a}.monaco-editor-container[data-v-1432c6d1] .merge-right-action.is-applied{font-weight:700;color:#22c55e!important;background:#22c55e26!important}.monaco-editor-container[data-v-1432c6d1] .merge-right-action.is-discarded{font-weight:700;color:#ef4444!important;background:#ef444426!important}.monaco-editor-container[data-v-1432c6d1] .merge-glyph-current.is-applied:before,.monaco-editor-container[data-v-1432c6d1] .merge-glyph-incoming.is-applied:before{content:"✓";color:#22c55ef2}.ai-diff-summary[data-v-36297805]{border-bottom:1px solid var(--border-color);background:var(--bg-container);flex:none;overflow:hidden}.ai-diff-summary.is-overall[data-v-36297805]{border-left:3px solid var(--color-primary);background:color-mix(in srgb, var(--color-primary) 3%, var(--bg-container))}.summary-head[data-v-36297805]{align-items:center;gap:var(--spacing-sm);min-height:36px;padding:4px var(--spacing-md);background:color-mix(in srgb, var(--bg-panel) 88%, transparent);display:flex}.summary-heading[data-v-36297805],.summary-actions[data-v-36297805]{flex:none;align-items:center;display:flex}.summary-heading[data-v-36297805]{gap:6px}.summary-actions[data-v-36297805]{gap:2px;margin-left:auto}.ai-badge[data-v-36297805]{border-radius:var(--radius-base);background:color-mix(in srgb, var(--color-primary) 9%, transparent);width:20px;height:20px;color:color-mix(in srgb, var(--color-primary) 82%, var(--text-primary));font-size:var(--font-size-mid)}.summary-label[data-v-36297805]{color:var(--text-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.summary-context[data-v-36297805]{min-width:0;color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.summary-body[data-v-36297805]{min-height:40px;max-height:180px;padding:8px var(--spacing-md) 10px;color:var(--text-primary);font-size:var(--font-size-sm);overflow:auto}.summary-body[data-v-36297805] .md-preview{padding:0}.summary-body[data-v-36297805] .md-preview p:last-child,.summary-body[data-v-36297805] .md-preview ul:last-child,.summary-body[data-v-36297805] .md-preview ol:last-child{margin-bottom:0}.summary-placeholder[data-v-36297805]{color:var(--text-tertiary);line-height:24px}.summary-placeholder.is-loading[data-v-36297805]{color:var(--text-secondary)}.summary-error[data-v-36297805]{align-items:center;gap:var(--spacing-xs);color:var(--color-danger,var(--color-danger));display:flex}.err-msg[data-v-36297805]{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.spin[data-v-36297805]{color:var(--color-primary);animation:1s linear infinite ai-spin-36297805}@keyframes ai-spin-36297805{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ai-summary-dialog[data-v-36297805] .el-dialog__body{padding:0}.dialog-context[data-v-36297805]{padding:8px var(--spacing-lg) 0;color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--font-size-sm);word-break:break-all}.dialog-body[data-v-36297805]{max-height:60vh;padding:var(--spacing-md) var(--spacing-lg) var(--spacing-lg);font-size:var(--font-size-base);line-height:var(--line-height-normal);overflow:auto}.dialog-body[data-v-36297805] .md-preview{padding:0}@media (width<=720px){.summary-context[data-v-36297805]{display:none}.summary-head[data-v-36297805]{gap:var(--spacing-xs);padding-inline:var(--spacing-sm)}.summary-body[data-v-36297805]{max-height:140px;padding-inline:var(--spacing-sm)}}.diff-preview-panel[data-v-1c750348]{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-base);flex-direction:column;height:100%;display:flex;overflow:hidden}.diff-preview-header[data-v-1c750348]{background:var(--bg-panel);border-bottom:1px solid var(--border-color-light);flex-shrink:0;align-items:center;gap:6px;height:34px;padding:0 10px;display:flex}.diff-preview-title[data-v-1c750348]{font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);-webkit-user-select:none;user-select:none;font-weight:700}.diff-preview-ext-badge[data-v-1c750348]{font-size:var(--font-size-xs);border-radius:var(--radius-base);background:var(--tint-primary-16);color:var(--color-primary);letter-spacing:.04em;padding:1px 5px;font-weight:600}.diff-preview-spacer[data-v-1c750348]{flex:1}.diff-preview-btn[data-v-1c750348]{cursor:pointer;color:var(--text-tertiary);border-radius:var(--radius-base);transition:color var(--transition-fast), background var(--transition-fast);font-size:var(--font-size-mid);background:0 0;border:none;align-items:center;padding:3px;display:flex}.diff-preview-btn[data-v-1c750348]:hover{color:var(--color-primary);background:var(--bg-hover)}.diff-preview-body[data-v-1c750348]{background:var(--bg-container,#fff);color:var(--text-primary,inherit);flex-direction:column;flex:1;display:flex;overflow:hidden}.diff-preview-iframe[data-v-1c750348]{background:0 0;border:none;flex:1;width:100%;height:100%}.diff-preview-markdown[data-v-1c750348]{flex:1;width:100%;height:100%;overflow:auto}.diff-preview-loading[data-v-1c750348],.diff-preview-error[data-v-1c750348]{color:var(--text-secondary);font-size:var(--font-size-mid);flex:1;justify-content:center;align-items:center;display:flex}.diff-preview-error[data-v-1c750348]{color:var(--color-danger,var(--color-danger))}.diff-preview-unsupported[data-v-1c750348]{background:0 0;border-style:dashed}.diff-preview-empty[data-v-1c750348]{color:var(--text-tertiary);font-size:var(--font-size-sm)}.file-diff-viewer[data-v-5deced47]{border:1px solid var(--border-color);border-radius:var(--radius-lg);background-color:var(--bg-container);height:100%;min-height:0;box-shadow:var(--shadow-base);transition:var(--transition-all);flex-direction:column;flex:1;display:flex;overflow:hidden}.diff-viewer-main[data-v-5deced47]{flex:1;width:100%;min-height:0;display:flex;overflow:hidden}.plain-text[data-v-5deced47]{white-space:pre;word-break:break-word}.compare-view[data-v-5deced47]{flex:1;height:100%;min-height:320px}[data-v-5deced47] .el-splitter{width:100%;height:100%}[data-v-5deced47] .el-splitter__panel{flex:none;overflow:hidden}[data-v-5deced47] .el-splitter__panel:first-child{min-width:250px}[data-v-5deced47] .el-splitter__panel:last-child{min-width:360px}.files-panel[data-v-5deced47]{background:var(--bg-icon);flex-direction:column;width:100%;height:100%;display:flex}.ai-summary-float[data-v-5deced47]{border-top:1px solid var(--border-color);background:var(--bg-container);flex-direction:column;flex:none;min-height:0;max-height:45%;display:flex;overflow:hidden}.ai-summary-item[data-v-5deced47]{flex:none;min-height:0}.ai-summary-item+.ai-summary-item[data-v-5deced47]{border-top:1px solid var(--border-color-light)}.diff-panel[data-v-5deced47]{background:var(--bg-container);flex-direction:column;flex:1;min-width:0;height:100%;display:flex}.diff-panel.full-width[data-v-5deced47]{width:100%}.diff-panel.is-locked .lock-icon[data-v-5deced47]{opacity:1}.panel-header[data-v-5deced47]{padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-container);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;display:flex}.panel-header h4[data-v-5deced47]{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin:0}.header-left[data-v-5deced47]{align-items:center;gap:var(--spacing-sm);display:flex}.view-mode-toggle[data-v-5deced47]{gap:var(--spacing-xs);padding:var(--spacing-xs);background:var(--bg-panel);border-radius:var(--radius-base);border:1px solid var(--border-card);display:flex}.header-right[data-v-5deced47]{align-items:center;gap:var(--spacing-sm);display:flex}.action-buttons[data-v-5deced47]{align-items:center;gap:var(--spacing-xs);display:flex}.file-count[data-v-5deced47]{font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:var(--font-weight-medium);background:var(--bg-panel);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);border:1px solid var(--border-card)}.search-box[data-v-5deced47]{padding:var(--spacing-sm) 0;background:var(--bg-container)}.search-box[data-v-5deced47] .el-input .el-input__wrapper{background:var(--bg-input);border:1px solid var(--border-input);border-radius:var(--radius-base);transition:var(--transition-all)}.search-box[data-v-5deced47] .el-input .el-input__wrapper:hover{background:var(--bg-input-hover);border-color:var(--color-primary)}.search-box[data-v-5deced47] .el-input .el-input__wrapper.is-focus{background:var(--bg-input);border-color:var(--color-primary);box-shadow:0 0 0 2px var(--tint-primary-10)}.search-box[data-v-5deced47] .el-input .el-input__inner{color:var(--text-primary)}.search-box[data-v-5deced47] .el-input .el-input__inner::placeholder{color:var(--text-tertiary)}.search-box[data-v-5deced47] .el-input .el-input__prefix,.search-box[data-v-5deced47] .el-input .el-input__suffix .el-input__clear{color:var(--text-secondary)}.search-box[data-v-5deced47] .el-input .el-input__suffix .el-input__clear:hover{color:var(--color-primary)}.selected-file[data-v-5deced47]{font-size:var(--font-size-sm);color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;background:var(--bg-icon);max-width:360px;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-base);align-items:center;gap:var(--spacing-xs);font-family:var(--font-mono);border:1px solid #d9d9d9;display:inline-flex;overflow:hidden}.path-dir[data-v-5deced47]{color:var(--text-tertiary)}.path-name[data-v-5deced47]{font-weight:var(--font-weight-semibold)}.diff-stats-badge[data-v-5deced47]{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-base);border-radius:var(--radius-base);background:var(--bg-container);border:1px solid var(--border-color);font-size:var(--font-size-sm);font-family:var(--font-mono);font-weight:500;display:inline-flex}.stats-added[data-v-5deced47]{color:#52c41a}.stats-deleted[data-v-5deced47]{color:#ff4d4f}.files-list[data-v-5deced47]{background:var(--bg-container);flex:1;min-height:0;overflow:hidden}.file-item[data-v-5deced47]{align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-base) var(--spacing-md);cursor:pointer;transition:var(--transition-all);background:0 0;border-bottom:1px solid #ffffff1a;display:flex;position:relative}.file-item .conflict-marker[data-v-5deced47]{color:var(--git-status-conflicted);font-size:var(--font-size-md);margin-left:-4px;margin-right:var(--spacing-xs);animation:2s ease-in-out infinite pulse-5deced47}.file-item[data-v-5deced47]:before{content:"";width:3px;height:100%;transition:var(--transition-all);background:0 0;position:absolute;top:0;left:0}.file-item[data-v-5deced47]:hover{background:var(--bg-panel)}.file-item[data-v-5deced47]:hover:before{background:var(--color-primary)}.file-item.file-type-added[data-v-5deced47]:before{background:var(--git-status-added)}.file-item.file-type-added[data-v-5deced47]:not(.active):hover,.file-item.file-type-added.active[data-v-5deced47]{background:linear-gradient(90deg,#10b9811a 0%,#fffc 100%)}.file-item.file-type-added[data-v-5deced47]:not(.active):hover:before,.file-item.file-type-added.active[data-v-5deced47]:before{background:var(--git-status-added);width:4px}.file-item.file-type-modified[data-v-5deced47]:before{background:var(--git-status-modified)}.file-item.file-type-modified[data-v-5deced47]:not(.active):hover,.file-item.file-type-modified.active[data-v-5deced47]{background:linear-gradient(90deg,#f59e0b1a 0%,#fffc 100%)}.file-item.file-type-modified[data-v-5deced47]:not(.active):hover:before,.file-item.file-type-modified.active[data-v-5deced47]:before{background:var(--git-status-modified);width:4px}.file-item.file-type-deleted[data-v-5deced47]:before{background:var(--git-status-deleted)}.file-item.file-type-deleted[data-v-5deced47]:not(.active):hover,.file-item.file-type-deleted.active[data-v-5deced47]{background:linear-gradient(90deg,#ef44441a 0%,#fffc 100%)}.file-item.file-type-deleted[data-v-5deced47]:not(.active):hover:before,.file-item.file-type-deleted.active[data-v-5deced47]:before{background:var(--git-status-deleted);width:4px}.file-item.file-type-untracked[data-v-5deced47]:before{background:var(--git-status-untracked)}.file-item.file-type-untracked[data-v-5deced47]:not(.active):hover,.file-item.file-type-untracked.active[data-v-5deced47]{background:linear-gradient(90deg,#8b5cf61a 0%,#fffc 100%)}.file-item.file-type-untracked[data-v-5deced47]:not(.active):hover:before,.file-item.file-type-untracked.active[data-v-5deced47]:before{background:var(--git-status-untracked);width:4px}.file-item.file-type-conflicted[data-v-5deced47]{background-color:#f9731614!important}.file-item.file-type-conflicted .file-icon[data-v-5deced47]{color:var(--git-status-conflicted)}.file-item.file-type-conflicted[data-v-5deced47]:not(.active):hover,.file-item.file-type-conflicted.active[data-v-5deced47]{border-left-color:var(--git-status-conflicted);box-shadow:0 0 0 1px #f9731633;background:linear-gradient(90deg,#f9731626 0%,#f9731614 100%)!important}.file-item.file-type-conflicted[data-v-5deced47]:not(.active):hover:before,.file-item.file-type-conflicted.active[data-v-5deced47]:before{background:var(--git-status-conflicted)}.file-item.is-locked[data-v-5deced47]{opacity:.5}.file-item.is-locked[data-v-5deced47]:hover{opacity:.65}.file-icon[data-v-5deced47]{margin-right:var(--spacing-base);font-size:var(--font-size-md);flex-shrink:0;line-height:1;display:inline-block}.file-icon.mit-icon[data-v-5deced47]{fill:currentColor;vertical-align:middle;width:16px;height:16px}.file-name[data-v-5deced47]{text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);transition:var(--transition-color);min-width:40px;overflow:hidden}.active .file-name[data-v-5deced47]{color:var(--color-primary);font-weight:var(--font-weight-semibold)}.file-path-section[data-v-5deced47]{min-width:0;overflow:hidden}.file-path-section[data-v-5deced47] .el-tooltip__trigger{width:100%;display:block;overflow:hidden}.path-badge[data-v-5deced47]{text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-xs);color:var(--text-tertiary);background:var(--bg-file-path);padding:1px var(--spacing-sm);border-radius:var(--radius-base);margin-left:var(--spacing-sm);box-sizing:border-box;overflow:hidden}.file-item:hover .path-badge[data-v-5deced47]{background:var(--bg-file-path-hover);color:var(--color-file-path-hover)}.file-actions[data-v-5deced47]{align-items:center;gap:var(--spacing-xs);border-radius:var(--radius-base);background:var(--bg-container);box-shadow:var(--shadow-sm);border:1px solid var(--border-color-light);display:none;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.file-item:hover .file-actions[data-v-5deced47]{display:flex}.conflict-resolution-container[data-v-5deced47],.conflict-resolved-container[data-v-5deced47]{background:var(--bg-container);flex-direction:column;flex:1;display:flex;overflow:hidden}.conflict-resolved-container .resolved-notice[data-v-5deced47]{padding:var(--spacing-lg) var(--spacing-xl);border-bottom:2px solid var(--color-success);align-items:center;gap:var(--spacing-md);background:linear-gradient(135deg,#67c23a1a 0%,#67c23a0d 100%);display:flex}.conflict-resolved-container .resolved-notice .success-icon[data-v-5deced47]{flex-shrink:0}.conflict-resolved-container .resolved-notice .notice-text[data-v-5deced47]{color:var(--text-primary);flex:1;font-weight:500}.conflict-resolved-container .resolved-notice .el-button[data-v-5deced47]{flex-shrink:0}.conflict-resolved-container .diff-content[data-v-5deced47]{flex:1;overflow-y:auto}.resolution-mode-switch[data-v-5deced47]{padding:var(--spacing-sm) var(--spacing-lg);background:var(--bg-container);gap:var(--spacing-base);flex-shrink:0;justify-content:center;display:flex}.resolution-mode-switch .el-button[data-v-5deced47]{min-width:100px}.block-conflict-resolution[data-v-5deced47]{gap:var(--spacing-sm);flex-direction:column;flex:1;min-height:0;display:flex}.merge-three-pane[data-v-5deced47]{gap:var(--spacing-sm);flex:1;grid-template-columns:1fr 1.2fr 1fr;min-height:0;display:grid;overflow:hidden}.pane[data-v-5deced47]{border:1px solid var(--border-component);border-radius:var(--radius-lg);background:var(--bg-container);flex-direction:column;min-width:0;max-height:100%;display:flex;overflow:hidden}.pane-header[data-v-5deced47]{justify-content:space-between;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-panel);flex-shrink:0;display:flex}.pane-subhint[data-v-5deced47]{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-xs);color:var(--text-secondary);background:var(--bg-container);box-sizing:border-box;flex-shrink:0;height:20px;line-height:20px}.pane-subhint.placeholder[data-v-5deced47]{visibility:hidden}.pane-title[data-v-5deced47]{color:var(--text-title);font-weight:600}.pane-hint[data-v-5deced47]{font-size:var(--font-size-sm);color:var(--text-secondary)}.pane-body[data-v-5deced47]{padding:var(--spacing-sm);background:var(--bg-container);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.save-resolution-bar[data-v-5deced47]{padding:var(--spacing-sm) var(--spacing-lg);background:var(--bg-container);flex-shrink:0;justify-content:center;display:flex;box-shadow:0 -2px 8px #0000000d}.save-resolution-bar .el-button[data-v-5deced47]{min-width:160px}.global-conflict-wrapper[data-v-5deced47]{flex-direction:column;flex:1;display:flex;overflow:hidden}.global-conflict-resolution[data-v-5deced47]{padding:var(--spacing-md) var(--spacing-lg);border-left:4px solid var(--git-status-conflicted);justify-content:space-between;align-items:center;gap:var(--spacing-lg);background:#f973161a;border-bottom:1px solid #f9731633;flex-wrap:wrap;flex-shrink:0;display:flex}.conflict-warning[data-v-5deced47]{align-items:center;gap:var(--spacing-base);color:var(--git-status-conflicted);font-weight:var(--font-weight-medium);flex:1;min-width:200px;display:flex}.warning-icon[data-v-5deced47]{font-size:var(--font-size-lg);color:var(--git-status-conflicted)}.conflict-buttons[data-v-5deced47]{gap:var(--spacing-base);flex-wrap:wrap;display:flex}.diff-content[data-v-5deced47]{padding:var(--spacing-lg);background:var(--bg-container);flex:1;min-height:0;position:relative;overflow:auto}.diff-content .diff-text[data-v-5deced47]{font-family:var(--font-mono);font-size:var(--font-size-sm);line-height:var(--line-height-normal);white-space:pre-wrap;word-break:break-all;padding:var(--spacing-md);background:var(--bg-code);border-radius:var(--radius-base);border:1px solid var(--border-color-light)}.diff-and-preview-wrapper[data-v-5deced47]{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.diff-content-top[data-v-5deced47]{border-bottom:1px solid #0000;flex-grow:0;flex-shrink:0}.diff-content-bottom[data-v-5deced47]{padding:0 var(--spacing-lg) var(--spacing-lg) var(--spacing-lg);flex-direction:column;flex-grow:0;flex-shrink:0;min-height:0;display:flex;overflow:hidden}.preview-vertical-resizer[data-v-5deced47]{cursor:row-resize;background:var(--border-color-light,transparent);-webkit-user-select:none;user-select:none;transition:background var(--transition-fast);flex:0 0 6px;position:relative}.preview-vertical-resizer[data-v-5deced47]:after{content:"";background:var(--text-tertiary,#888);opacity:.5;border-radius:1px;width:32px;height:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.preview-vertical-resizer[data-v-5deced47]:hover,.preview-vertical-resizer[data-v-5deced47]:active{background:var(--color-primary,var(--color-primary));opacity:.3}.modern-btn.btn-icon-24.active[data-v-5deced47]{color:var(--color-primary);background:var(--tint-primary-10);border-color:var(--color-primary)}[data-v-5deced47] .el-scrollbar__view{height:100%}[data-v-5deced47] .el-scrollbar__bar .el-scrollbar__thumb{background-color:var(--scrollbar-thumb)}[data-v-5deced47] .el-scrollbar__bar .el-scrollbar__thumb:hover{background-color:var(--scrollbar-thumb-hover)}@keyframes pulse-5deced47{0%,to{opacity:1}50%{opacity:.5}}.diff-text[data-v-5deced47]{border-radius:var(--radius-base);background:var(--bg-code);border:1px solid var(--border-color-light)}@media (width<=720px){.panel-header[data-v-5deced47]{padding:var(--spacing-sm);gap:4px}.panel-header h4[data-v-5deced47]{font-size:var(--font-size-xs);white-space:nowrap;flex:none}.header-left[data-v-5deced47],.header-right[data-v-5deced47]{gap:4px;min-width:0}.file-count[data-v-5deced47],.diff-panel .action-buttons[data-v-5deced47]{display:none}.view-mode-toggle[data-v-5deced47]{gap:0;padding:2px}.selected-file[data-v-5deced47]{max-width:92px;font-size:var(--font-size-xs);padding-inline:4px}.diff-content[data-v-5deced47]{padding:var(--spacing-sm)}}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/monaco-DkJuNcCr.js","assets/rolldown-runtime-C0FnF6B9.js","assets/monaco-B2lPvkrc.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import"./rolldown-runtime-C0FnF6B9.js";import{$n as e,$t as t,An as n,At as r,B as i,Bt as a,Cn as o,Dn as s,En as c,Er as l,H as u,Ht as d,Jn as f,K as p,Kn as ee,L as m,Mn as h,Ot as g,Pn as _,Pr as v,Qn as y,Qr as b,Rn as x,St as S,Tn as C,Ut as w,V as te,X as T,Xn as E,Yr as D,a as O,br as k,c as ne,cr as A,dt as re,er as j,et as ie,gn as M,it as N,jn as P,kt as F,ln as I,lr as ae,nn as oe,o as se,or as L,ot as ce,pr as R,q as le,qr as ue,rn as de,s as fe,tr as z,ut as pe,wn as B,x as V,xt as me,yn as he}from"./element-plus-Bx3j6vzG.js";import{n as H,t as U}from"./_plugin-vue_export-helper-N8Vc5eEs.js";import{t as ge}from"./SvgIcon-D0hK-p1U.js";import{t as _e}from"./IconButton-CFJkDLVG.js";import{t as ve}from"./configStore-BFb0I8eP.js";import{r as ye}from"./gitStore-grKwgyHH.js";import{r as W,t as be}from"./fileIcon-B5p5pGN9.js";import{a as xe,c as Se,i as G,n as Ce,o as we,r as Te,s as Ee,t as De}from"./previewSandbox-D4455rKO.js";import{a as Oe,c as K,i as ke,l as Ae,o as je,s as Me}from"./monaco-DkJuNcCr.js";import{t as Ne}from"./useThemeObserver-DYxFoHh1.js";import{t as q}from"./CommonDialog-DMWtstZq.js";x();var Pe=[`width`,`height`],Fe=_({__name:`TreeIcon`,props:{size:{default:`1em`}},setup(e){return(t,r)=>(E(),s(`svg`,{viewBox:`0 0 16 16`,xmlns:`http://www.w3.org/2000/svg`,width:e.size,height:e.size,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`},[...r[0]||=[n(`<line x1="3" y1="2" x2="3" y2="14"></line><line x1="3" y1="4" x2="6" y2="4"></line><rect x="2" y="3" width="8" height="2" rx="0.5" fill="currentColor" stroke="none"></rect><line x1="3" y1="8" x2="6" y2="8"></line><rect x="4" y="7" width="8" height="2" rx="0.5" fill="currentColor" stroke="none"></rect><line x1="3" y1="12" x2="6" y2="12"></line><rect x="6" y="11" width="8" height="2" rx="0.5" fill="currentColor" stroke="none"></rect>`,7)]],8,Pe))}});x();var Ie=[`width`,`height`],Le=_({__name:`ListIcon`,props:{size:{default:`1em`}},setup(e){return(t,n)=>(E(),s(`svg`,{viewBox:`0 0 16 16`,xmlns:`http://www.w3.org/2000/svg`,width:e.size,height:e.size,fill:`currentColor`,stroke:`none`},[...n[0]||=[B(`rect`,{x:`2`,y:`3`,width:`12`,height:`2`,rx:`0.5`},null,-1),B(`rect`,{x:`2`,y:`7`,width:`12`,height:`2`,rx:`0.5`},null,-1),B(`rect`,{x:`2`,y:`11`,width:`12`,height:`2`,rx:`0.5`},null,-1)]],8,Ie))}});function Re(e){return e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/"/g,`"`).replace(/'/g,`'`)}function ze(e){if(!e)return``;let t=e.split(`
|
|
3
|
+
`),n=!1,r=null;return t.map(e=>{let t=Re(e);return e.startsWith(`diff --git`)||e.startsWith(`diff --cc`)||e.startsWith(`diff --combined`)?`<div class="diff-header">${t}</div>`:e.startsWith(`---`)?`<div class="diff-old-file">${t}</div>`:e.startsWith(`+++`)?`<div class="diff-new-file">${t}</div>`:e.startsWith(`@@`)?`<div class="diff-hunk-header">${t}</div>`:e.match(/^[+\-\s]*<{7,}\s+(HEAD|.*)/)?(n=!0,r=`current`,`<div class="diff-conflict-start">${t}</div>`):e.match(/^[+\-\s]*={7,}\s*$/)?(r=`incoming`,`<div class="diff-conflict-separator">${t}</div>`):e.match(/^[+\-\s]*>{7,}\s+.*/)?(n=!1,r=null,`<div class="diff-conflict-end">${t}</div>`):n&&r?r===`current`?`<div class="diff-conflict-current">${t}</div>`:`<div class="diff-conflict-incoming">${t}</div>`:e.startsWith(`+`)?`<div class="diff-added">${` `+t.substring(1)}</div>`:e.startsWith(`-`)?`<div class="diff-removed">${` `+t.substring(1)}</div>`:`<div class="diff-context">${t}</div>`}).join(``)}function Be(e){if(!e)return``;let t=e.match(/^(feat|fix|docs|style|refactor|perf|test|chore|build|ci|revert)(\([^)]+\))?\s*:\s*(.+)$/s);return t?t[3].trim():e.trim()}x(),R(),v();var Ve={class:`file-action-buttons`},He={key:1,style:{"font-size":`var(--font-size-md)`,"font-weight":`bold`}},Ue=U(_({__name:`FileActionButtons`,props:{filePath:{},fileType:{},isLocked:{type:Boolean,default:!1},isLocking:{type:Boolean,default:!1},showLockButton:{type:Boolean,default:!0}},emits:[`toggleLock`,`stage`,`unstage`,`revert`,`manageLockedFiles`],setup(e,{emit:n}){let r=e,i=n,a=o(()=>{switch(r.fileType){case`added`:return[{type:`unstage`,tooltip:H(`@0883F:取消暂存`),buttonType:`warning`,icon:`-`,handler:()=>i(`unstage`,r.filePath)}];case`modified`:case`deleted`:return[{type:`stage`,tooltip:H(`@0883F:添加到暂存区`),buttonType:`success`,icon:`+`,handler:()=>i(`stage`,r.filePath)},{type:`revert`,tooltip:H(`@0883F:撤回修改`),buttonType:`danger`,icon:d,handler:()=>i(`revert`,r.filePath)}];case`untracked`:return[{type:`stage`,tooltip:H(`@0883F:添加到暂存区`),buttonType:`success`,icon:`+`,handler:()=>i(`stage`,r.filePath)},{type:`delete`,tooltip:H(`@0883F:删除文件`),buttonType:`danger`,icon:N,handler:()=>i(`revert`,r.filePath)}];default:return[]}});function f(e){e.stopPropagation(),i(`toggleLock`,r.filePath)}function ee(e,t){t.stopPropagation(),e()}function g(e){e.stopPropagation(),i(`manageLockedFiles`)}return(n,r)=>{let i=p,o=m,d=u;return E(),s(`div`,Ve,[e.showLockButton?(E(),C(d,{key:0,content:e.isLocking?l(H)(`@0883F:处理中...`):e.isLocked?l(H)(`@0883F:解锁文件`):l(H)(`@0883F:锁定文件`),placement:`top`,disabled:e.isLocking,"show-after":200},{default:A(()=>[h(o,{type:e.isLocked?`danger`:`info`,size:`small`,text:``,loading:e.isLocking,disabled:e.isLocking,onClick:f,class:`file-action-btn`},{default:A(()=>[e.isLocking?c(``,!0):(E(),C(i,{key:0,size:`16`},{default:A(()=>[(E(),C(z(e.isLocked?l(F):l(t))))]),_:1}))]),_:1},8,[`type`,`loading`,`disabled`])]),_:1},8,[`content`,`disabled`])):c(``,!0),e.isLocked?(E(),C(d,{key:1,content:l(H)(`@13D1C:管理锁定文件`),placement:`top`,"show-after":200},{default:A(()=>[h(o,{type:`warning`,size:`small`,text:``,onClick:g,class:`file-action-btn`},{default:A(()=>[h(i,{size:`16`},{default:A(()=>[...r[0]||=[B(`svg`,{viewBox:`0 0 1024 1024`,xmlns:`http://www.w3.org/2000/svg`},[B(`path`,{fill:`currentColor`,d:`M600.704 64a32 32 0 0 1 30.464 22.208l35.2 109.376c14.784 7.232 28.928 15.36 42.432 24.512l112.384-24.192a32 32 0 0 1 34.432 15.36L944.32 364.8a32 32 0 0 1-4.032 37.504l-77.12 85.12a357.12 357.12 0 0 1 0 49.024l77.12 85.248a32 32 0 0 1 4.032 37.504l-88.704 153.6a32 32 0 0 1-34.432 15.296L708.8 803.904c-13.44 9.088-27.648 17.28-42.368 24.512l-35.264 109.376A32 32 0 0 1 600.704 960H423.296a32 32 0 0 1-30.464-22.208L357.696 828.48a351.616 351.616 0 0 1-42.56-24.64l-112.32 24.256a32 32 0 0 1-34.432-15.36L79.68 659.2a32 32 0 0 1 4.032-37.504l77.12-85.248a357.12 357.12 0 0 1 0-48.896l-77.12-85.248A32 32 0 0 1 79.68 364.8l88.704-153.6a32 32 0 0 1 34.432-15.296L315.2 220.096c13.568-9.152 27.776-17.408 42.56-24.64l35.2-109.312A32 32 0 0 1 423.232 64H600.64zm-23.424 64H446.72l-36.352 113.088-24.512 11.968a294.113 294.113 0 0 0-34.816 20.096l-22.656 15.36-116.224-25.088-65.28 113.152 79.68 88.192-1.92 27.136a293.12 293.12 0 0 0 0 40.192l1.92 27.136-79.808 88.192 65.344 113.152 116.224-25.024 22.656 15.296a294.113 294.113 0 0 0 34.816 20.096l24.512 11.968L446.72 896h130.688l36.48-113.152 24.448-11.904a288.282 288.282 0 0 0 34.752-20.096l22.592-15.296 116.288 25.024 65.28-113.152-79.744-88.192 1.92-27.136a293.12 293.12 0 0 0 0-40.256l-1.92-27.136 79.808-88.128-65.344-113.152-116.288 24.96-22.592-15.232a287.616 287.616 0 0 0-34.752-20.096l-24.448-11.904L577.344 128zM512 320a192 192 0 1 1 0 384 192 192 0 0 1 0-384zm0 64a128 128 0 1 0 0 256 128 128 0 0 0 0-256z`})],-1)]]),_:1})]),_:1})]),_:1},8,[`content`])):c(``,!0),(E(!0),s(he,null,y(a.value,e=>(E(),C(d,{key:e.type,content:e.tooltip,placement:`top`,"show-after":200},{default:A(()=>[h(o,{type:e.buttonType,size:`small`,text:``,onClick:t=>ee(e.handler,t),class:`file-action-btn`},{default:A(()=>[typeof e.icon==`string`?(E(),s(`span`,He,b(e.icon),1)):(E(),C(i,{key:0,size:`16`},{default:A(()=>[(E(),C(z(e.icon)))]),_:2},1024))]),_:2},1032,[`type`,`onClick`])]),_:2},1032,[`content`]))),128))])}}}),[[`__scopeId`,`data-v-e552faf2`]]);function We(e){let t=[],n=new Map;return[...e].sort((e,t)=>e.path.localeCompare(t.path)).forEach(e=>{let r=e.path.split(`/`).filter(e=>e),i=``,a=t;r.forEach((t,o)=>{let s=o===r.length-1;i=i?`${i}/${t}`:t;let c=n.get(i);c||(c={name:t,path:i,isDirectory:!s,expanded:!0},s?(c.file=e,c.type=e.type,c.locked=e.locked):c.children=[],n.set(i,c),a.push(c)),!s&&c.children&&(a=c.children)})}),t}function Ge(e){e.expanded=!e.expanded}function Ke(e,t){let n=new Map,r=e=>{e.forEach(e=>{e.isDirectory&&(n.set(e.path,e.expanded||!1),e.children&&r(e.children))})},i=e=>{e.forEach(e=>{if(e.isDirectory){let t=n.get(e.path);t!==void 0&&(e.expanded=t),e.children&&i(e.children)}})};r(t),i(e)}x(),v(),R();var qe={class:`tree-node-wrapper`},J=[`xlink:href`],Y={class:`node-name`},X={key:0,class:`file-type-tag`},Je={key:2,class:`file-actions`},Ye={key:0,class:`tree-children`},Z=U(_({__name:`TreeNodeItem`,props:{node:{},level:{},selectedFile:{default:``},showActionButtons:{type:Boolean,default:!1},isFileLocked:{type:Function,default:()=>!1},isLocking:{type:Function,default:()=>!1}},emits:[`file-select`,`toggle-lock`,`stage`,`unstage`,`revert`,`node-click`],setup(e,{emit:t}){let n=e,r=t;function i(e){return`${e*20+10}px`}function a(e){return W(e.name,e.isDirectory,!!e.expanded)}function o(e){return!e.isDirectory&&e.path===n.selectedFile}function d(){r(`node-click`,n.node)}return(t,n)=>{let f=j(`TreeNodeItem`,!0);return E(),s(`div`,qe,[B(`div`,{class:ue([`tree-node`,{"is-directory":e.node.isDirectory,"is-file":!e.node.isDirectory,"is-selected":o(e.node),"is-locked":e.node.locked,[`file-type-${e.node.type}`]:e.node.type}]),style:D({paddingLeft:i(e.level)}),onClick:d},[(E(),s(`svg`,{class:ue([`node-icon mit-icon`,{"folder-icon":a(e.node).key.startsWith(`folder-`)}]),"aria-hidden":`true`},[B(`use`,{"xlink:href":`#${a(e.node).spriteId}`},null,8,J)],2)),h(l(u),{content:e.node.path,placement:`top`,disabled:e.node.name.length<=35,"show-after":200},{default:A(()=>[B(`span`,Y,b(e.node.name),1)]),_:1},8,[`content`,`disabled`]),e.node.isDirectory?c(``,!0):(E(),s(`span`,X,b(e.node.type||`modified`),1)),e.node.locked?(E(),C(l(u),{key:1,content:l(H)(`@E80AC:该文件已被锁定,提交时会被跳过`),placement:`top`,"show-after":200},{default:A(()=>[h(l(p),{class:`lock-icon`,color:`var(--color-warning)`},{default:A(()=>[h(l(F))]),_:1})]),_:1},8,[`content`])):c(``,!0),e.showActionButtons&&!e.node.isDirectory&&e.node.file?(E(),s(`div`,Je,[h(Ue,{"file-path":e.node.path,"file-type":e.node.type||`modified`,"is-locked":e.isFileLocked(e.node.path),"is-locking":e.isLocking(e.node.path),onToggleLock:n[0]||=e=>r(`toggle-lock`,e),onStage:n[1]||=e=>r(`stage`,e),onUnstage:n[2]||=e=>r(`unstage`,e),onRevert:n[3]||=e=>r(`revert`,e)},null,8,[`file-path`,`file-type`,`is-locked`,`is-locking`])])):c(``,!0)],6),e.node.isDirectory&&e.node.expanded&&e.node.children&&e.node.children.length>0?(E(),s(`div`,Ye,[(E(!0),s(he,null,y(e.node.children,t=>(E(),C(f,{key:t.path+`-`+(t.expanded?`open`:`closed`),node:t,level:e.level+1,"selected-file":e.selectedFile,"show-action-buttons":e.showActionButtons,"is-file-locked":e.isFileLocked,"is-locking":e.isLocking,onFileSelect:n[4]||=e=>r(`file-select`,e),onToggleLock:n[5]||=e=>r(`toggle-lock`,e),onStage:n[6]||=e=>r(`stage`,e),onUnstage:n[7]||=e=>r(`unstage`,e),onRevert:n[8]||=e=>r(`revert`,e),onNodeClick:n[9]||=e=>r(`node-click`,e)},null,8,[`node`,`level`,`selected-file`,`show-action-buttons`,`is-file-locked`,`is-locking`]))),128))])):c(``,!0)])}}}),[[`__scopeId`,`data-v-ec49f691`]]);x(),R();var Xe={class:`file-tree-view`},Ze=U(_({__name:`FileTreeView`,props:{treeData:{},selectedFile:{default:``},showActionButtons:{type:Boolean,default:!1},isFileLocked:{type:Function,default:()=>!1},isLocking:{type:Function,default:()=>!1}},emits:[`file-select`,`toggle-lock`,`stage`,`unstage`,`revert`],setup(e,{emit:t}){let n=t,r=k(0);function i(e){e.isDirectory?(Ge(e),r.value++):e.file&&n(`file-select`,e.path)}return(t,r)=>(E(),s(`div`,Xe,[(E(!0),s(he,null,y(e.treeData,t=>(E(),C(Z,{key:t.path+`-`+(t.expanded?`open`:`closed`),node:t,level:0,"selected-file":e.selectedFile,"show-action-buttons":e.showActionButtons,"is-file-locked":e.isFileLocked,"is-locking":e.isLocking,onFileSelect:r[0]||=e=>n(`file-select`,e),onToggleLock:r[1]||=e=>n(`toggle-lock`,e),onStage:r[2]||=e=>n(`stage`,e),onUnstage:r[3]||=e=>n(`unstage`,e),onRevert:r[4]||=e=>n(`revert`,e),onNodeClick:i},null,8,[`node`,`selected-file`,`show-action-buttons`,`is-file-locked`,`is-locking`]))),128))]))}}),[[`__scopeId`,`data-v-267015cf`]]);x(),R();var Qe=U(_({__name:`MonacoDiffViewer`,props:{original:{},modified:{},language:{default:`plaintext`},filePath:{default:``},theme:{default:`auto`},readOnly:{type:Boolean,default:!0}},setup(e){let t=e,n=k(null),r=null,i=null,a=null,o=null,c=null;async function l(){return r||c||(c=(async()=>{let e=self;return e.MonacoEnvironment||={getWorker(e,t){return t===`json`?new K:t===`css`||t===`scss`||t===`less`?new Me:t===`html`||t===`handlebars`||t===`razor`?new je:t===`typescript`||t===`javascript`?new Oe:new Ae}},r=await ke(()=>import(`./monaco-DkJuNcCr.js`).then(e=>e.t),__vite__mapDeps([0,1,2])),r})(),c)}function u(e){let t=(e||``).toLowerCase().match(/\.([a-z0-9]+)$/),n=t?t[1]:``;return n===`ts`||n===`tsx`?`typescript`:n===`js`||n===`jsx`||n===`cjs`||n===`mjs`?`javascript`:n===`json`?`json`:n===`html`||n===`htm`||n===`vue`?`html`:n===`css`?`css`:n===`scss`?`scss`:n===`less`?`less`:n===`md`||n===`markdown`?`markdown`:n===`yml`||n===`yaml`?`yaml`:n===`xml`?`xml`:n===`sh`?`shell`:n===`ps1`?`powershell`:n===`go`?`go`:n===`rs`?`rust`:n===`py`?`python`:n===`java`?`java`:n===`cpp`||n===`cc`||n===`cxx`||n===`hpp`||n===`h`?`cpp`:n===`cs`?`csharp`:`plaintext`}function d(){return t.language===`auto`?u(t.filePath||``):t.language||`plaintext`}function p(){return t.theme&&t.theme!==`auto`?t.theme:document.documentElement.getAttribute(`data-theme`)===`dark`?`vs-dark`:`vs`}function m(){if(!r)return;let e=p();r.editor.setTheme(e)}Ne(()=>m());function h(){if(!r)return;a?.dispose(),o?.dispose();let e=d();a=r.editor.createModel(t.original||``,e),o=r.editor.createModel(t.modified||``,e)}function g(){i&&a&&o&&i.setModel({original:a,modified:o})}function _(){a&&a.getValue()!==(t.original||``)&&a.setValue(t.original||``),o&&o.getValue()!==(t.modified||``)&&o.setValue(t.modified||``)}return f(async()=>{n.value&&(r=await l(),m(),h(),i=r.editor.createDiffEditor(n.value,{automaticLayout:!0,readOnly:t.readOnly,renderSideBySide:!0,minimap:{enabled:!1},fontSize:13,wordWrap:`on`,scrollBeyondLastLine:!1,renderWhitespace:`selection`,originalEditable:!t.readOnly}),g())}),L(()=>t.language,()=>{if(!r)return;let e=d();a&&r.editor.setModelLanguage(a,e),o&&r.editor.setModelLanguage(o,e)}),L(()=>t.filePath,()=>{if(!r||t.language!==`auto`)return;let e=d();a&&r.editor.setModelLanguage(a,e),o&&r.editor.setModelLanguage(o,e)}),L(()=>t.theme,()=>{m()}),L(()=>[t.original,t.modified],()=>{_()}),ee(()=>{i?.dispose(),i=null,a?.dispose(),o?.dispose(),a=null,o=null}),(e,t)=>(E(),s(`div`,{ref_key:`containerRef`,ref:n,class:`monaco-diff-container`},null,512))}}),[[`__scopeId`,`data-v-0c23e676`]]);x(),v(),R();var $e=U(_({__name:`MonacoEditor`,props:{modelValue:{},language:{default:`plaintext`},filePath:{default:``},theme:{default:`auto`},readOnly:{type:Boolean,default:!1},minHeight:{default:`360px`},revealLine:{default:null},highlightRange:{default:null},dimHighlightRanges:{default:null},highlightKind:{default:``},gutterPlacement:{default:`glyph`},gutterItems:{default:()=>[]},rightActions:{default:()=>[]},appliedBlocks:{default:()=>[]},syncGroup:{default:null},syncScrollTop:{default:null}},emits:[`update:modelValue`,`gutter-click`,`scroll-change`],setup(e,{emit:t}){let n=e,r=t,i=k(null),a=null,o=null,c=null,l=null,u=!1,d=[],p=[],m=[],h=null,g=null,_=new Map,v=null,y=null;function b(){if(!o)return;let e=n.gutterItems||[],t=n.gutterPlacement===`glyph`&&e.length>0;try{o.updateOptions({glyphMargin:t})}catch{}}function x(){if(!o||g)return;let e=o.getDomNode?.();e&&(g=document.createElement(`div`),g.className=`merge-right-actions`,e.appendChild(g))}function S(){g&&(g.innerHTML=``,_.clear())}function C(){if(!o||!a||!g)return;let e=n.rightActions||[];if(!e.length)return;let t=o.getLayoutInfo?.(),r=t?.contentLeft??0,i=t?.contentWidth??0,s=Math.max(0,r+i-44);for(let t of e){let e=_.get(t.blockId);if(!e)continue;let n=c?.getLineMaxColumn?.(t.line)??1,r=o.getScrolledVisiblePosition?.({lineNumber:t.line,column:n});if(!r){e.style.display=`none`;continue}e.style.display=``,e.style.top=`${r.top}px`,e.style.left=`${s}px`,e.style.height=`${r.height}px`}}function w(e,t){let r=(n.appliedBlocks||[]).find(t=>t.blockId===e);return r?t===`current`?r.choice===`current`||r.choice===`both`:r.choice===`incoming`||r.choice===`both`:!1}function te(e,t){let r=(n.appliedBlocks||[]).find(t=>t.blockId===e);return r?t===`current`?r.choice===`incoming`:r.choice===`current`:!1}function T(e,t,n){e.setAttribute(`role`,`button`),e.setAttribute(`tabindex`,`0`),e.setAttribute(`aria-label`,t),n&&e.setAttribute(`aria-pressed`,`true`),e.addEventListener(`keydown`,t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),e.click())})}function O(){if(!o||(x(),!g))return;let e=(n.rightActions||[]).filter(e=>e&&e.line&&e.line>0);if(!e.length){S();return}S();for(let t of e){let e=w(t.blockId,t.kind),n=te(t.blockId,t.kind),i=document.createElement(`div`);if(i.className=`merge-right-action-wrapper`,t.kind===`current`){let a=document.createElement(`div`);a.className=`merge-right-action merge-right-action-current${e?` is-applied`:``}`,a.textContent=e?`✓`:`→`,a.title=e?`已采用当前更改`:`采用当前更改`,T(a,a.title,e),a.addEventListener(`mousedown`,e=>{e.preventDefault(),e.stopPropagation()}),a.addEventListener(`click`,e=>{e.preventDefault(),e.stopPropagation(),r(`gutter-click`,t.blockId,`accept`)});let o=document.createElement(`div`);o.className=`merge-right-action merge-right-action-close${n?` is-discarded`:``}`,o.textContent=`✕`,o.title=n?`已丢弃当前更改`:`丢弃当前更改`,T(o,o.title,n),o.addEventListener(`mousedown`,e=>{e.preventDefault(),e.stopPropagation()}),o.addEventListener(`click`,e=>{e.preventDefault(),e.stopPropagation(),r(`gutter-click`,t.blockId,`discard`)}),i.appendChild(a),i.appendChild(o)}else{let a=document.createElement(`div`);a.className=`merge-right-action merge-right-action-close${n?` is-discarded`:``}`,a.textContent=`✕`,a.title=n?`已丢弃传入更改`:`丢弃传入更改`,T(a,a.title,n),a.addEventListener(`mousedown`,e=>{e.preventDefault(),e.stopPropagation()}),a.addEventListener(`click`,e=>{e.preventDefault(),e.stopPropagation(),r(`gutter-click`,t.blockId,`discard`)});let o=document.createElement(`div`);o.className=`merge-right-action merge-right-action-incoming${e?` is-applied`:``}`,o.textContent=e?`✓`:`←`,o.title=e?`已采用传入更改`:`采用传入更改`,T(o,o.title,e),o.addEventListener(`mousedown`,e=>{e.preventDefault(),e.stopPropagation()}),o.addEventListener(`click`,e=>{e.preventDefault(),e.stopPropagation(),r(`gutter-click`,t.blockId,`accept`)}),i.appendChild(a),i.appendChild(o)}g.appendChild(i),_.set(t.blockId,i)}C()}async function ne(){return a||l||(l=(async()=>{let e=self;return e.MonacoEnvironment||={getWorker(e,t){return t===`json`?new K:t===`css`||t===`scss`||t===`less`?new Me:t===`html`||t===`handlebars`||t===`razor`?new je:t===`typescript`||t===`javascript`?new Oe:new Ae}},a=await ke(()=>import(`./monaco-DkJuNcCr.js`).then(e=>e.t),__vite__mapDeps([0,1,2])),a})(),l)}function A(e){let t=(e||``).toLowerCase().match(/\.([a-z0-9]+)$/),n=t?t[1]:``;return n===`ts`||n===`tsx`?`typescript`:n===`js`||n===`jsx`||n===`cjs`||n===`mjs`?`javascript`:n===`json`?`json`:n===`html`||n===`htm`||n===`vue`?`html`:n===`css`?`css`:n===`scss`?`scss`:n===`less`?`less`:n===`md`||n===`markdown`?`markdown`:n===`yml`||n===`yaml`?`yaml`:n===`xml`?`xml`:n===`sh`?`shell`:n===`ps1`?`powershell`:n===`go`?`go`:n===`rs`?`rust`:n===`py`?`python`:n===`java`?`java`:n===`cpp`||n===`cc`||n===`cxx`||n===`hpp`||n===`h`?`cpp`:n===`cs`?`csharp`:`plaintext`}function re(){return n.language===`auto`?A(n.filePath||``):n.language||`plaintext`}function j(){return n.theme&&n.theme!==`auto`?n.theme:document.documentElement.getAttribute(`data-theme`)===`dark`?`vs-dark`:`vs`}function ie(){a&&a.editor.setTheme(j())}Ne(()=>ie());function M(){if(!a)return;let e=re();if(!c){c=a.editor.createModel(n.modelValue||``,e);return}try{a.editor.setModelLanguage(c,e)}catch{}}function N(){if(!c)return;let e=n.modelValue||``;c.getValue()!==e&&(u=!0,c.setValue(e),u=!1)}function P(){if(!o)return;let e=n.revealLine;if(!(!e||e<=0))try{o.revealLineInCenter(e)}catch{}}function F(){if(!a||!o)return;if(!n.dimHighlightRanges||!n.dimHighlightRanges.length||!n.highlightKind)p=o.deltaDecorations(p,[]);else{let e=n.highlightKind===`current`?`merge-highlight-current-dim`:n.highlightKind===`incoming`?`merge-highlight-incoming-dim`:`merge-highlight-merged-dim`;p=o.deltaDecorations(p,n.dimHighlightRanges.filter(e=>e&&e.startLine>0&&e.endLine>0).map(t=>{let n=Math.max(1,t.startLine),r=Math.max(n,t.endLine);return{range:new a.Range(n,1,r,1),options:{isWholeLine:!0,className:e,linesDecorationsClassName:e}}}))}if(!n.highlightRange||!n.highlightKind){d=o.deltaDecorations(d,[]);return}let e=Math.max(1,n.highlightRange.startLine),t=Math.max(e,n.highlightRange.endLine),r=n.highlightKind===`current`?`merge-highlight-current`:n.highlightKind===`incoming`?`merge-highlight-incoming`:`merge-highlight-merged`;d=o.deltaDecorations(d,[{range:new a.Range(e,1,t,1),options:{isWholeLine:!0,className:r,linesDecorationsClassName:r}}])}function I(){if(!a||!o)return;let e=n.gutterItems||[];if(!e.length){m=o.deltaDecorations(m,[]),b();return}b();let t=n.gutterPlacement===`line`;m=o.deltaDecorations(m,e.filter(e=>e&&e.line&&e.line>0).map(e=>{let n=w(e.blockId,e.kind),r=e.kind===`current`?n?`merge-glyph-current is-applied`:`merge-glyph-current`:n?`merge-glyph-incoming is-applied`:`merge-glyph-incoming`;return{range:new a.Range(e.line,1,e.line,1),options:{isWholeLine:!0,...t?{linesDecorationsClassName:r}:{glyphMarginClassName:r}}}}))}return f(async()=>{i.value&&(a=await ne(),ie(),M(),o=a.editor.create(i.value,{automaticLayout:!0,readOnly:n.readOnly,glyphMargin:!1,minimap:{enabled:!1},fontSize:13,wordWrap:`on`,scrollBeyondLastLine:!1,renderWhitespace:`selection`,scrollbar:{verticalScrollbarSize:10,horizontalScrollbarSize:10}}),o.setModel(c),o.onDidChangeModelContent(()=>{if(u)return;let e=c?.getValue?.()??``;r(`update:modelValue`,e)}),P(),F(),I(),O(),v=o.onDidScrollChange(e=>{C(),n.syncGroup&&e.scrollTopChanged&&r(`scroll-change`,e.scrollTop)}),y=o.onDidLayoutChange(()=>{C()}),h=o.onMouseDown(e=>{try{let t=e?.target,i=t?.position;if(!i?.lineNumber)return;let o=t?.type;if(o!==a.editor.MouseTargetType.GUTTER_GLYPH_MARGIN&&o!==a.editor.MouseTargetType.GUTTER_LINE_DECORATIONS)return;let s=i.lineNumber,c=(n.gutterItems||[]).find(e=>e.line===s);if(!c)return;r(`gutter-click`,c.blockId)}catch{}}))}),L(()=>n.modelValue,()=>{N()}),L(()=>n.revealLine,()=>{P()}),L(()=>[n.highlightRange,n.highlightKind],()=>{F()},{deep:!0}),L(()=>n.dimHighlightRanges,()=>{F()},{deep:!0}),L(()=>n.gutterItems,()=>{I()},{deep:!0}),L(()=>n.rightActions,()=>{O()},{deep:!0}),L(()=>n.appliedBlocks,()=>{O(),I()},{deep:!0}),L(()=>n.syncScrollTop,e=>{if(e!=null&&o){let t=o.getScrollTop();Math.abs(t-e)>5&&o.setScrollTop(e)}}),L(()=>n.gutterPlacement,()=>{I()}),L(()=>[n.language,n.filePath],()=>{a&&M()}),L(()=>n.theme,()=>{ie()}),L(()=>n.readOnly,e=>{o&&o.updateOptions({readOnly:e})}),ee(()=>{try{h?.dispose?.()}catch{}h=null;try{v?.dispose?.()}catch{}v=null;try{y?.dispose?.()}catch{}y=null;try{g?.remove?.()}catch{}g=null,_.clear(),o?.dispose(),o=null,p=[],c?.dispose(),c=null}),(t,n)=>(E(),s(`div`,{ref_key:`containerRef`,ref:i,class:`monaco-editor-container`,style:D(e.minHeight?{minHeight:e.minHeight}:{flex:1,minHeight:`200px`})},null,4))}}),[[`__scopeId`,`data-v-1432c6d1`]]);x(),R(),v(),I();var et={class:`summary-head`},Q={class:`summary-heading`},$={class:`summary-label`},tt=[`title`],nt={class:`summary-actions`},rt={class:`summary-body`},it={key:1,class:`summary-placeholder is-loading`},at={key:2,class:`summary-placeholder`},ot={key:3,class:`summary-placeholder`},st={key:4,class:`summary-error`},ct={class:`err-msg`},lt={key:0,class:`dialog-context`},ut={class:`dialog-body`},dt={key:1,class:`summary-placeholder is-loading`},ft={key:2,class:`summary-placeholder`},pt=U(_({__name:`AiDiffSummary`,props:{source:{},scope:{},commitHash:{default:``},file:{default:``},fileName:{default:``},fileRevision:{default:``},revision:{default:``},auto:{type:Boolean,default:!0}},setup(e){let t=e,n=ve(),i=o(()=>Array.isArray(n.models)&&n.models.length>0),u=o(()=>(n.locale||``).startsWith(`en`)?`en`:`zh`),d=o(()=>{let e=Array.isArray(n.models)?n.models:[],t=e.find(e=>e.isDefault)||e[0];return t?`${t.id}|${t.baseURL}|${t.model}`:``}),f=k({status:`idle`,text:``,error:``}),_=k(!1),v=k(!1),y=new Map,x=null,w=null;function te(e){let t=2166136261;for(let n=0;n<e.length;n+=1)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return`${e.length}:${(t>>>0).toString(36)}`}function D(){let e=`${t.source}|${t.commitHash||``}|${t.scope}|${u.value}|${d.value}`;if(t.scope===`overall`)return`${e}|${t.source===`worktree`?te(t.revision):``}`;let n=t.source===`worktree`?te(t.fileRevision):``;return`${e}|${t.file||``}|${n}`}function O(){let e=y.get(D());f.value=e?{status:`done`,text:e,error:``}:{status:`idle`,text:``,error:``}}function ne(){x?.abort(),x=null}async function re(e=!1){if(!i.value||t.scope===`file`&&!t.file||t.source===`commit`&&!t.commitHash)return;let n=D();if(!e&&y.has(n)){f.value={status:`done`,text:y.get(n)||``,error:``};return}ne();let r=new AbortController;x=r,f.value={status:`loading`,text:``,error:``};let a=``,o=e=>{let t=e.trim();if(!t.startsWith(`data:`))return;let n=t.slice(5).trim();if(!n)return;let r;try{r=JSON.parse(n)}catch{return}if(r.type===`delta`)a+=r.content||``,f.value={status:`loading`,text:a,error:``};else if(r.type===`done`)f.value={status:`done`,text:a,error:``};else if(r.type===`error`){let e=r.code===`NO_MODEL`?`no-model`:r.code===`EMPTY_DIFF`?`empty`:`error`;f.value={status:e,text:``,error:r.error||H(`@DIFFAI:生成失败`)}}};try{let i={scope:t.scope,source:t.source,locale:u.value};t.scope===`file`&&(i.file=t.file),t.source===`commit`&&(i.hash=t.commitHash),e&&(i.bypassCache=!0);let s=await fetch(`/api/ai/diff-summary`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`text/event-stream`},body:JSON.stringify(i),signal:r.signal});if(!s.ok||!s.body)throw Error(`HTTP ${s.status}`);let c=s.body.getReader(),l=new TextDecoder,d=``;for(;;){let{done:e,value:t}=await c.read();if(e)break;d+=l.decode(t,{stream:!0});let n=d.split(`
|
|
4
|
+
`);d=n.pop()||``,n.forEach(o)}d+=l.decode(),d&&o(d),f.value.status===`loading`&&(f.value={status:a?`done`:`empty`,text:a,error:``}),f.value.status===`done`&&a&&y.set(n,a)}catch(e){e?.name!==`AbortError`&&x===r&&(f.value={status:`error`,text:``,error:e?.message||H(`@DIFFAI:生成失败`)})}finally{x===r&&(x=null)}}function j(){y.delete(D()),re(!0)}function ie(){t.auto&&i.value&&(t.scope!==`file`||t.file)&&re()}function N(){w&&clearTimeout(w),w=setTimeout(ie,350)}L(()=>[t.file,t.fileRevision,t.revision,t.commitHash,t.source,t.scope,i.value,u.value,d.value,t.auto],()=>{ne(),O(),i.value&&N()},{immediate:!0}),ee(()=>{ne(),w&&clearTimeout(w)});let F=o(()=>t.scope===`file`?H(`@DIFFAI:AI 文件说明`):H(`@DIFFAI:AI 整体说明`)),I=o(()=>t.scope===`file`?t.fileName||t.file:t.source===`commit`?H(`@DIFFAI:本次提交`):H(`@DIFFAI:未提交变更`));return(t,n)=>{let o=p,u=m;return i.value?(E(),s(`section`,{key:0,class:ue([`ai-diff-summary`,`is-${e.scope}`])},[B(`header`,et,[B(`div`,Q,[h(o,{class:`ai-badge`},{default:A(()=>[h(l(r))]),_:1}),B(`span`,$,b(F.value),1)]),B(`span`,{class:`summary-context`,title:I.value},b(I.value),9,tt),B(`div`,nt,[f.value.status===`loading`?(E(),C(o,{key:0,class:`spin`},{default:A(()=>[h(l(g))]),_:1})):c(``,!0),h(u,{text:``,size:`small`,icon:l(S),disabled:!f.value.text,title:l(H)(`@DIFFAI:弹窗查看`),onClick:n[0]||=e=>v.value=!0},null,8,[`icon`,`disabled`,`title`]),h(u,{text:``,size:`small`,icon:l(a),disabled:f.value.status===`loading`,title:l(H)(`@DIFFAI:重新生成`),onClick:j},null,8,[`icon`,`disabled`,`title`]),h(u,{text:``,size:`small`,icon:_.value?l(le):l(T),title:_.value?l(H)(`@DIFFAI:展开说明`):l(H)(`@DIFFAI:收起说明`),onClick:n[1]||=e=>_.value=!_.value},null,8,[`icon`,`title`])])]),ae(B(`div`,rt,[f.value.text?(E(),C(G,{key:0,content:f.value.text,"allow-html":!1},null,8,[`content`])):f.value.status===`loading`?(E(),s(`div`,it,b(l(H)(`@DIFFAI:正在生成差异说明...`)),1)):f.value.status===`empty`?(E(),s(`div`,at,b(e.scope===`file`?l(H)(`@DIFFAI:该文件没有可总结的变更`):l(H)(`@DIFFAI:没有可总结的变更`)),1)):f.value.status===`no-model`?(E(),s(`div`,ot,b(f.value.error),1)):f.value.status===`error`?(E(),s(`div`,st,[h(o,null,{default:A(()=>[h(l(de))]),_:1}),B(`span`,ct,b(f.value.error),1),h(u,{text:``,size:`small`,icon:l(a),onClick:j},{default:A(()=>[P(b(l(H)(`@DIFFAI:重试`)),1)]),_:1},8,[`icon`])])):c(``,!0)],512),[[M,!_.value]]),h(q,{modelValue:v.value,"onUpdate:modelValue":n[2]||=e=>v.value=e,title:F.value,width:`680px`,type:`flex`,"close-on-click-modal":!0,"destroy-on-close":``,"custom-class":`ai-summary-dialog`},{default:A(()=>[I.value?(E(),s(`div`,lt,b(I.value),1)):c(``,!0),B(`div`,ut,[f.value.text?(E(),C(G,{key:0,content:f.value.text,"allow-html":!1},null,8,[`content`])):f.value.status===`loading`?(E(),s(`div`,dt,b(l(H)(`@DIFFAI:正在生成差异说明...`)),1)):(E(),s(`div`,ft,b(l(H)(`@DIFFAI:暂无说明内容`)),1))])]),_:1},8,[`modelValue`,`title`])],2)):c(``,!0)}}}),[[`__scopeId`,`data-v-36297805`]]);x(),v(),R();var mt={key:0,class:`diff-preview-panel`},ht={class:`diff-preview-header`},gt={class:`diff-preview-title`},_t={class:`diff-preview-ext-badge`},vt=[`title`],yt={class:`diff-preview-body`},bt={key:0,class:`diff-preview-loading`},xt={key:1,class:`diff-preview-error`},St=[`sandbox`,`srcdoc`],Ct={key:1,class:`diff-preview-panel diff-preview-unsupported`},wt={class:`diff-preview-body`},Tt={class:`diff-preview-empty`},Et=U(_({__name:`DiffPreviewPanel`,props:{filePath:{},content:{},loading:{type:Boolean,default:!1},error:{default:``},context:{default:`git-status`},commitHash:{default:``},officePreviewUrl:{default:``}},emits:[`refresh`],setup(e,{emit:t}){let n=e,r=t,i=o(()=>(n.filePath||``).split(`.`).pop()?.toLowerCase()??``),d=o(()=>i.value===`md`||i.value===`markdown`),f=o(()=>i.value===`html`||i.value===`htm`||i.value===`svg`),ee=o(()=>[`doc`,`docx`,`xls`,`xlsx`,`ppt`,`pptx`,`odt`,`ods`,`odp`].includes(i.value)),m=o(()=>d.value||f.value||ee.value&&!!n.officePreviewUrl),g=k(!0);function _(){typeof document<`u`&&(g.value=document.documentElement.getAttribute(`data-theme`)!==`light`)}let v=o(()=>{if(!f.value)return``;let e=g.value?`#0d1117`:`#ffffff`,t=g.value?`#e6edf3`:`var(--md-text-strong)`;return i.value===`svg`?`<!DOCTYPE html><html><head><meta charset="utf-8"><style>html,body{margin:0;padding:0;background:${e};color:${t};display:flex;align-items:center;justify-content:center;min-height:100vh;}svg{max-width:100%;max-height:90vh;}</style></head><body>${n.content||``}</body></html>`:Ce(n.content||``)});return L(()=>n.filePath,()=>{_()},{immediate:!0}),_(),(t,o)=>m.value?(E(),s(`div`,mt,[B(`div`,ht,[B(`span`,gt,b(t.$t(`@E80AC:文件预览`)),1),B(`span`,_t,b(i.value.toUpperCase()),1),o[1]||=B(`div`,{class:`diff-preview-spacer`},null,-1),h(l(u),{content:t.$t(`@E80AC:刷新预览`),placement:`top`},{default:A(()=>[B(`button`,{class:`diff-preview-btn`,title:t.$t(`@E80AC:刷新预览`),onClick:o[0]||=e=>r(`refresh`)},[h(l(p),null,{default:A(()=>[h(l(a))]),_:1})],8,vt)]),_:1},8,[`content`])]),B(`div`,yt,[e.loading?(E(),s(`div`,bt,[B(`span`,null,b(t.$t(`@E80AC:正在加载预览...`)),1)])):e.error?(E(),s(`div`,xt,[B(`span`,null,b(e.error),1)])):f.value?(E(),s(`iframe`,{key:2,class:`diff-preview-iframe`,sandbox:l(De),srcdoc:v.value},null,8,St)):ee.value&&e.officePreviewUrl?(E(),C(Te,{key:3,"file-path":e.filePath,source:e.context===`commit-detail`?`git`:`worktree`,rev:e.commitHash},null,8,[`file-path`,`source`,`rev`])):d.value?(E(),C(G,{key:4,content:n.content||``,class:`diff-preview-markdown`},null,8,[`content`])):c(``,!0)])])):(E(),s(`div`,Ct,[B(`div`,wt,[B(`span`,Tt,b(t.$t(`@E80AC:当前文件类型不支持预览`)),1)])]))}}),[[`__scopeId`,`data-v-1c750348`]]);x(),R(),v();var Dt={class:`diff-viewer-main`},Ot={class:`files-panel`},kt={class:`panel-header`},At={class:`header-left`},jt={key:0,class:`file-count`},Mt={class:`view-mode-toggle`},Nt={class:`search-box`},Pt={class:`files-list`},Ft=[`onClick`],It={class:`file-icon mit-icon`,"aria-hidden":`true`},Lt=[`xlink:href`],Rt={key:0,class:`conflict-marker`,title:`冲突文件`},zt={class:`file-name`},Bt=[`title`],Vt={class:`file-directory path-badge`},Ht={key:2,class:`file-actions`},Ut={key:0,class:`ai-summary-float`},Wt={class:`diff-panel`},Gt={class:`panel-header`},Kt={class:`header-right`},qt={class:`selected-file`},Jt={class:`path-dir`},Yt={class:`path-name`},Xt={key:1,class:`diff-stats-badge`},Zt={class:`stats-added`},Qt={class:`stats-deleted`},$t={key:2,class:`action-buttons`},en=[`aria-pressed`],tn={key:0,class:`conflict-resolution-container`},nn={key:0,class:`resolution-mode-switch`},rn={key:1,class:`block-conflict-resolution`},an={class:`merge-three-pane`},on={class:`pane`},sn={class:`pane-header`},cn={class:`pane-title`},ln={class:`pane-body`},un={class:`pane pane-merged`},dn={class:`pane-header`},fn={class:`pane-title`},pn={class:`pane-subhint`},mn={class:`pane-body`},hn={class:`pane`},gn={class:`pane-header`},_n={class:`pane-title`},vn={class:`pane-body`},yn={class:`save-resolution-bar`},bn={key:2,class:`global-conflict-wrapper`},xn={class:`global-conflict-resolution`},Sn={class:`conflict-warning`},Cn={class:`conflict-buttons`},wn={class:`diff-content`},Tn=[`textContent`],En=[`innerHTML`],Dn={key:1,class:`conflict-resolved-container`},On={class:`resolved-notice`},kn={class:`notice-text`},An={class:`diff-content`},jn=[`textContent`],Mn=[`innerHTML`],Nn={key:2,class:`diff-and-preview-wrapper`},Pn={key:2,class:`compare-view`},Fn=[`textContent`],In=[`innerHTML`],Ln={key:1,class:`diff-panel full-width`},Rn={class:`panel-header`},zn={class:`header-right`},Bn={class:`selected-file`},Vn={class:`path-dir`},Hn={class:`path-name`},Un={key:1,class:`action-buttons`},Wn={key:0,class:`conflict-resolution-container`},Gn={key:0,class:`resolution-mode-switch`},Kn={key:1,class:`block-conflict-resolution`},qn={class:`merge-three-pane`},Jn={class:`pane`},Yn={class:`pane-header`},Xn={class:`pane-title`},Zn={class:`pane-body`},Qn={class:`pane pane-merged`},$n={class:`pane-header`},er={class:`pane-title`},tr={class:`pane-subhint`},nr={class:`pane-body`},rr={class:`pane`},ir={class:`pane-header`},ar={class:`pane-title`},or={class:`pane-body`},sr={class:`save-resolution-bar`},cr={key:2,class:`global-conflict-wrapper`},lr={class:`global-conflict-resolution`},ur={class:`conflict-warning`},dr={class:`conflict-buttons`},fr={class:`diff-content`},pr=[`textContent`],mr=[`innerHTML`],hr={key:1,class:`diff-and-preview-wrapper`},gr={key:2,class:`compare-view`},_r=[`textContent`],vr=[`innerHTML`],yr=`merge-three-pane`,br=_({__name:`FileDiffViewer`,props:{files:{},emptyText:{default:H(`@E80AC:没有找到变更文件`)},diffContent:{default:``},diffStats:{default:null},selectedFile:{default:``},isLoading:{type:Boolean,default:!1},plainText:{type:Boolean,default:!1},compareMode:{type:Boolean,default:!1},compareOriginal:{default:``},compareModified:{default:``},height:{default:`100%`},showFileList:{type:Boolean,default:!0},context:{default:`git-status`},showOpenButton:{type:Boolean,default:!0},showActionButtons:{type:Boolean,default:!1},showVscodeButton:{type:Boolean,default:!0},showEditorButton:{type:Boolean,default:!0},isFileLocked:{type:Function,default:()=>!1},isLocking:{type:Function,default:()=>!1},commitHash:{default:``}},emits:[`file-select`,`open-file`,`open-with-vscode`,`open-in-editor`,`toggle-lock`,`stage`,`unstage`,`revert`],setup(t,{emit:n}){let r=new Set([`md`,`markdown`,`html`,`htm`,`svg`,`doc`,`docx`,`xls`,`xlsx`,`ppt`,`pptx`,`odt`,`ods`,`odp`]),a=t,d=n,g=ve(),_=ye(),v=k(``),x=k(``),S=e=>Math.min(85,Math.max(15,e)),T=o({get:()=>g.ui.fileListViewMode,set:e=>{g.ui.fileListViewMode=e}}),j=o({get:()=>S(g.ui.fileDiffSplitPercent),set:e=>{g.ui.fileDiffSplitPercent=S(e)}}),M=k(!1),N=k(``),F=k(!1),I=k(``),R=k(``),le=0,z=o({get:()=>S(g.ui.diffPreviewSplitPercent??55),set:e=>{g.ui.diffPreviewSplitPercent=S(e)}}),U=o(()=>{let e=G.value||``;return(e.split(`/`).pop()||e).split(`.`).pop()?.toLowerCase()??``}),W=o(()=>r.has(U.value)),G=o(()=>a.selectedFile||v.value),Ce=o(()=>a.context===`commit-detail`?`commit`:a.context===`git-status`?`worktree`:``),Te=o(()=>!!(Ce.value&&g.aiDiffSummaryEnabled)),De=o(()=>a.files.map(e=>`${e.path}\0${e.type||``}`).sort().join(`\0`)),Oe=o(()=>Se(G.value||``)),K=o(()=>G.value?a.files.find(e=>e.path===G.value)?.type===`conflicted`:!1),ke=o(()=>J.value.length>0),Ae=o(()=>a.files.map(e=>{let t=e.name||e.path.split(`/`).pop()||e.path;return{...e,displayName:t,dirPath:(()=>{let t=(e.path||``).split(`/`);return t.length>1?t.slice(0,-1).join(`/`):``})(),iconClass:be(t)}})),je=o(()=>{if(!x.value.trim())return Ae.value;let e=x.value.toLowerCase().trim();return Ae.value.filter(t=>t.displayName.toLowerCase().includes(e)||t.path.toLowerCase().includes(e))}),Me=k([]);function Ne(){let e=We(je.value);Me.value.length>0&&Ke(e,Me.value),Me.value=e}L(je,()=>{T.value===`tree`&&Ne()},{deep:!0}),L(T,e=>{e===`tree`&&Ne(),window.dispatchEvent(new CustomEvent(`file-list-view-mode-change`,{detail:{mode:e}}))});let q=o(()=>a.compareMode?!0:a.diffContent&&a.diffContent.trim()!==``),Pe=o(()=>{if(!G.value)return``;let e=G.value.split(`/`);return e.slice(0,-1).join(`/`)+(e.length>1?`/`:``)}),Ie=o(()=>{if(!G.value)return``;let e=G.value.split(`/`);return e[e.length-1]||G.value});function Re(e){v.value=e,d(`file-select`,e)}function Be(){if(!G.value){O.warning(H(`@E80AC:请先选择一个文件`));return}d(`open-file`,G.value,a.context)}function Ve(){if(!G.value){O.warning(H(`@E80AC:请先选择一个文件`));return}navigator.clipboard.writeText(G.value).then(()=>{O.success(H(`@E80AC:文件路径已复制到剪贴板`))}).catch(()=>{O.error(H(`@E80AC:复制失败`))})}function He(){_.copyCurrentDiff()}function Ge(){if(!G.value){O.warning(H(`@E80AC:请先选择一个文件`));return}d(`open-with-vscode`,G.value,a.context)}function qe(){if(console.log(`[debug-open-in-editor] FileDiffViewer handleOpenInEditor start`),!G.value){O.warning(H(`@E80AC:请先选择一个文件`));return}console.log(`[debug-open-in-editor] FileDiffViewer emit, filePath=`,G.value,`context=`,a.context),d(`open-in-editor`,G.value,a.context)}let J=k([]),Y=k(!0),X=k(``),Je=k(!1),Ye=k(``),Z=k(``),Xe=k(``),et=k(``),Q=k(new Map),$=k(null),tt=k(null),nt=k(new Map),rt=k(new Map),it=k(new Map);async function at(e){let t=await(await fetch(`/api/file-content?file=${encodeURIComponent(e)}`)).json();if(!t.success)throw Error(t.error||H(`@E80AC:无法读取文件内容`));return String(t.content??``)}async function ot(){let e=G.value;if(!e||!W.value)return;let t=++le;F.value=!0,I.value=``,R.value=``;try{if(Ee(e)){R.value=we(e,{source:a.context===`commit-detail`?`git`:`worktree`,rev:a.context===`commit-detail`?a.commitHash:void 0}),F.value=!1;return}let n=null;if(n=a.context===`commit-detail`&&a.commitHash?await(await fetch(`/api/git-file-content?rev=${encodeURIComponent(a.commitHash)}&file=${encodeURIComponent(e)}`)).json():await(await fetch(`/api/file-content?file=${encodeURIComponent(e)}`)).json(),t!==le)return;if(!n||!n.success){I.value=n?.error||H(`@E80AC:无法读取文件内容`),N.value=``;return}N.value=String(n.content??``)}catch(e){if(t!==le)return;I.value=e.message||H(`@E80AC:无法读取文件内容`),N.value=``}finally{t===le&&(F.value=!1)}}function st(){W.value&&(M.value=!M.value,M.value&&!N.value&&!F.value&&ot())}L([G,()=>a.context,()=>a.commitHash],()=>{if(N.value=``,R.value=``,I.value=``,!W.value&&M.value){M.value=!1;return}M.value&&ot()});let ct=!1,lt=0,ut=0;function dt(e){ct=!0,lt=e.clientY,ut=z.value,document.addEventListener(`mousemove`,ft),document.addEventListener(`mouseup`,mt),e.preventDefault()}function ft(e){if(!ct)return;let t=e.target?.closest(`.diff-panel`);if(!t)return;let n=t.getBoundingClientRect().height-34;if(n<=0)return;let r=e.clientY-lt,i=ut+r/n*100;z.value=S(i)}function mt(){ct=!1,document.removeEventListener(`mousemove`,ft),document.removeEventListener(`mouseup`,mt)}ee(()=>{ct&&mt()});function ht(e,t){let n=e.split(`
|
|
5
|
+
`),r=[],i=new Map,a=0,o=0;for(;a<n.length;){let e=n[a];if(e.includes(`<<<<<<<`)){o++;let e=[],s=[];for(a++;a<n.length&&!n[a].includes(`=======`);)e.push(n[a]),a++;for(a++;a<n.length&&!n[a].includes(`>>>>>>>`);)s.push(n[a]),a++;a<n.length&&n[a].includes(`>>>>>>>`)&&a++;let c=t(o),l=[];l=c===`incoming`?s:c===`both`?[...e,...s]:c===`none`?[]:e;let u=r.length+1;r.push(...l);let d=Math.max(u,r.length);i.set(o,{startLine:u,endLine:d});continue}r.push(e),a++}return{text:r.join(`
|
|
6
|
+
`),anchors:i}}let gt=o(()=>$.value&&nt.value.get($.value)||null),_t=o(()=>$.value&&rt.value.get($.value)||null),vt=o(()=>$.value&&it.value.get($.value)||null),yt=o(()=>{let e=$.value;return J.value.filter(t=>t.id!==e).map(e=>nt.value.get(e.id)).filter(Boolean)}),bt=o(()=>{let e=$.value;return J.value.filter(t=>t.id!==e).map(e=>rt.value.get(e.id)).filter(Boolean)}),xt=o(()=>{let e=$.value;return J.value.filter(t=>t.id!==e).map(e=>it.value.get(e.id)).filter(Boolean)}),St=o(()=>gt.value?.startLine??null),Ct=o(()=>_t.value?.startLine??null),wt=o(()=>vt.value?.startLine??null),Tt=o(()=>J.value.map(e=>{let t=nt.value.get(e.id);return t?{blockId:e.id,line:t.startLine,kind:`current`}:null}).filter(Boolean)),br=o(()=>J.value.map(e=>{let t=rt.value.get(e.id);return t?{blockId:e.id,line:t.startLine,kind:`incoming`}:null}).filter(Boolean)),xr=o(()=>{let e=[];return Q.value.forEach((t,n)=>{t!==`none`&&e.push({blockId:n,choice:t})}),e});function Sr(){if(!et.value)return;let{text:e,anchors:t}=ht(et.value,e=>Q.value.get(e)||`current`);X.value=e,it.value=t,Je.value=!0}function Cr(e,t,n){let r=Q.value.get(e),i=null;if(t===`current`){if(n===`discard`)switch(r){case`current`:case null:case void 0:i=`none`;break;case`incoming`:i=`incoming`;break;case`both`:i=`incoming`;break;case`none`:i=`none`}else switch(r){case`current`:i=`current`;break;case null:case void 0:i=`current`;break;case`incoming`:i=`both`;break;case`both`:i=`both`;break;case`none`:i=`current`}}else if(t===`incoming`){if(n===`discard`)switch(r){case`incoming`:i=`none`;break;case null:case void 0:i=`current`;break;case`current`:i=`current`;break;case`both`:i=`current`;break;case`none`:i=`none`}else switch(r){case`incoming`:i=`incoming`;break;case null:case void 0:i=`incoming`;break;case`current`:i=`both`;break;case`both`:i=`both`;break;case`none`:i=`incoming`}}i===null?Q.value.delete(e):Q.value.set(e,i),$.value=e,Sr()}function wr(e){let t=[],n=e.split(`
|
|
7
|
+
`),r=0,i=0;for(;i<n.length;){let e=n[i];if(e.includes(`<<<<<<<`)){r++;let a=e.replace(/^<<<<<<< /,``).trim()||`HEAD`,o=[],s=[],c=[],l=[],u=Math.max(0,i-3);for(let e=u;e<i;e++)o.push(n[e]);let d=i+1;for(i++;i<n.length&&!n[i].includes(`=======`);)s.push(n[i]),i++;i++;let f=``;for(;i<n.length&&!n[i].includes(`>>>>>>>`);)c.push(n[i]),i++;i<n.length&&n[i].includes(`>>>>>>>`)&&(f=n[i].replace(/^>>>>>>> /,``).trim()||`incoming`,i++);let p=Math.min(n.length,i+3);for(let e=i;e<p&&e<n.length;e++)l.push(n[e]);t.push({id:r,startLine:d,currentLines:s,incomingLines:c,beforeLines:o,afterLines:l,currentLabel:a,incomingLabel:f})}else i++}return t}function Tr(e){let t=[],n=e.split(`
|
|
8
|
+
`),r=`common`,i=[];for(let e=0;e<n.length;e++){let a=n[e];a.includes(`<<<<<<<`)?(i.length>0&&(t.push({type:`common`,lines:[...i]}),i=[]),r=`current`):a.includes(`=======`)?(i.length>0&&(t.push({type:`current`,lines:[...i]}),i=[]),t.push({type:`separator`,lines:[a]}),r=`incoming`):a.includes(`>>>>>>>`)?(i.length>0&&(t.push({type:`incoming`,lines:[...i]}),i=[]),r=`common`):i.push(a)}return i.length>0&&t.push({type:r,lines:[...i]}),t}async function Er(){if(G.value)try{let e=await(await fetch(`/api/file-content?file=${encodeURIComponent(G.value)}`)).json();if(!e.success||!e.content){O.error(H(`@E80AC:无法读取文件内容`));return}let t=e.content,n=Tr(t),r=``;for(let e of n)if(e.type===`current`||e.type===`common`)r+=e.lines.join(`
|
|
9
|
+
`)+`
|
|
10
|
+
`;else if(e.type===`separator`||e.type===`incoming`)continue;await kr(r.trim())}catch(e){O.error(`${H(`@E80AC:解决冲突失败: `)}${e.message}`)}}async function Dr(){if(G.value)try{let e=await(await fetch(`/api/file-content?file=${encodeURIComponent(G.value)}`)).json();if(!e.success||!e.content){O.error(H(`@E80AC:无法读取文件内容`));return}let t=e.content,n=Tr(t),r=``;for(let e of n)if(e.type===`incoming`||e.type===`common`)r+=e.lines.join(`
|
|
11
|
+
`)+`
|
|
12
|
+
`;else if(e.type===`separator`||e.type===`current`)continue;await kr(r.trim())}catch(e){O.error(`${H(`@E80AC:解决冲突失败: `)}${e.message}`)}}async function Or(){if(G.value)try{let e=await(await fetch(`/api/file-content?file=${encodeURIComponent(G.value)}`)).json();if(!e.success||!e.content){O.error(H(`@E80AC:无法读取文件内容`));return}let t=e.content,n=Tr(t),r=``;for(let e of n)(e.type===`common`||e.type===`current`||e.type===`incoming`)&&(r+=e.lines.join(`
|
|
13
|
+
`)+`
|
|
14
|
+
`);await kr(r.trim())}catch(e){O.error(`${H(`@E80AC:解决冲突失败: `)}${e.message}`)}}async function kr(e){if(G.value)try{let t=await(await fetch(`/api/resolve-conflict`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({filePath:G.value,content:e})})).json();t.success?(O.success(H(`@E80AC:冲突已解决,文件已更新`)),window.dispatchEvent(new CustomEvent(`git-status-refresh`)),setTimeout(()=>{d(`file-select`,G.value)},500)):O.error(t.error||H(`@E80AC:保存失败`))}catch(e){O.error(`${H(`@E80AC:保存失败: `)}${e.message}`)}}let Ar=o(()=>{switch(a.context){case`git-status`:return H(`@E80AC:在系统默认编辑器中打开文件`);case`commit-detail`:return H(`@E80AC:打开该提交时的文件版本`);case`stash-detail`:return H(`@E80AC:打开该stash中的文件版本`);default:return H(`@E80AC:打开文件`)}});async function jr(){if(G.value&&Y.value){if(X.value.trim().length===0){O.warning(H(`@E80AC:保存失败`));return}await kr(X.value),Je.value=!1;return}}L(()=>a.selectedFile,e=>{e!==void 0&&(v.value=e)}),L([()=>a.diffContent,G,K],async([e,t,n])=>{if(J.value=[],X.value=``,Je.value=!1,Ye.value=``,Z.value=``,Xe.value=``,et.value=``,Q.value.clear(),$.value=null,nt.value=new Map,rt.value=new Map,it.value=new Map,n&&t)try{console.log(`[ConflictParse] Fetching content for conflicted file:`,t);let e=await at(t);if(e){console.log(`[ConflictParse] File content loaded, parsing blocks...`),et.value=e;let t=wr(e);console.log(`[ConflictParse] Parsed blocks:`,t.length),J.value=t,$.value=t.length>0?t[0].id:null;let n=ht(e,()=>`current`),r=ht(e,()=>`incoming`),i=ht(e,()=>`both`),a=ht(e,e=>Q.value.get(e)||`current`);Ye.value=n.text,Z.value=r.text,Xe.value=i.text,X.value=a.text,nt.value=n.anchors,rt.value=r.anchors,it.value=a.anchors}else console.error(`[ConflictParse] Failed to load file content`)}catch(e){console.error(`[ConflictParse] Error fetching file content:`,e)}else console.log(`[ConflictParse] File is not conflicted or no file selected`)},{immediate:!0}),L(()=>a.files,e=>{if(e.length>0&&!G.value){let t=e[0];Re(t.path)}},{immediate:!0}),f(()=>{T.value===`tree`&&Ne();let e=e=>{let t=e.detail.mode;T.value!==t&&(T.value=t)};return window.addEventListener(`file-list-view-mode-change`,e),()=>{window.removeEventListener(`file-list-view-mode-change`,e)}});let Mr=k(null),Nr=()=>{let e=Mr.value?.$el??Mr.value;if(e&&e.clientWidth)return e.clientWidth;try{return e?.getBoundingClientRect?.().width??0}catch{return 0}},Pr=()=>{let e=Mr.value?.$el??Mr.value;if(!e)return;let t=e.querySelectorAll?.(`.el-splitter__panel`),n=Nr();if(!t||t.length<1||n<=0)return;let r=t[0]?.getBoundingClientRect?.().width??0;if(r>0){let e=S(r/n*100);e!==j.value&&(j.value=e)}},Fr=o({get(){return`${S(j.value)}%`},set(e){let t=NaN;if(typeof e==`number`){let n=e,r=Nr();r>0&&!isNaN(n)&&(t=n/r*100)}else if(typeof e==`string`){if(e.endsWith(`%`))t=parseFloat(e);else if(e.endsWith(`px`)){let n=parseFloat(e),r=Nr();r>0&&!isNaN(n)&&(t=n/r*100)}}isNaN(t)||(j.value=S(t))}});return(n,r)=>{let o=ne,f=se;return E(),s(`div`,{class:`file-diff-viewer`,style:D({height:t.height})},[B(`div`,Dt,[t.showFileList?(E(),C(l(fe),{key:0,ref_key:`splitterRef`,ref:Mr,layout:`horizontal`,onResize:Pr,onResizeEnd:Pr},{default:A(()=>[h(o,{size:Fr.value,"onUpdate:size":r[11]||=e=>Fr.value=e,min:`15%`,max:`85%`},{default:A(()=>[B(`div`,Ot,[B(`div`,kt,[B(`div`,At,[B(`h4`,null,b(l(H)(`@E80AC:变更文件`)),1),t.files.length>0?(E(),s(`span`,jt,`(`+b(t.files.length)+`)`,1)):c(``,!0),t.files.length>0?(E(),C(l(u),{key:1,content:l(H)(`@E80AC:复制全量 Diff`),placement:`top`,effect:`light`},{default:A(()=>[B(`button`,{class:`modern-btn btn-icon-24`,onClick:He},[h(l(p),{class:`btn-icon`},{default:A(()=>[h(l(ce))]),_:1})])]),_:1},8,[`content`])):c(``,!0)]),B(`div`,Mt,[h(_e,{tooltip:l(H)(`@E80AC:列表视图`),size:`small`,active:T.value===`list`,onClick:r[0]||=e=>T.value=`list`},{default:A(()=>[h(Le,{style:{width:`1em`,height:`1em`}})]),_:1},8,[`tooltip`,`active`]),h(_e,{tooltip:l(H)(`@E80AC:树状视图`),size:`small`,active:T.value===`tree`,onClick:r[1]||=e=>T.value=`tree`},{default:A(()=>[h(Fe,{style:{width:`1em`,height:`1em`}})]),_:1},8,[`tooltip`,`active`])])]),B(`div`,Nt,[h(l(te),{modelValue:x.value,"onUpdate:modelValue":r[2]||=e=>x.value=e,placeholder:l(H)(`@E80AC:搜索文件名或路径...`),"prefix-icon":l(w),clearable:``,size:`small`},null,8,[`modelValue`,`placeholder`,`prefix-icon`])]),B(`div`,Pt,[h(l(i),{height:`100%`},{default:A(()=>[t.files.length===0?(E(),C(l(V),{key:0,description:t.emptyText,"image-size":60},null,8,[`description`])):je.value.length===0?(E(),C(l(V),{key:1,description:l(H)(`@E80AC:没有找到匹配的文件`),"image-size":60},null,8,[`description`])):T.value===`list`?(E(!0),s(he,{key:2},y(je.value,e=>(E(),s(`div`,{key:e.path,class:ue([`file-item`,{active:e.path===G.value,[`file-type-${e.type}`]:e.type,"is-locked":e.locked}]),onClick:t=>Re(e.path)},[(E(),s(`svg`,It,[B(`use`,{"xlink:href":`#${e.iconClass}`},null,8,Lt)])),e.type===`conflicted`?(E(),s(`span`,Rt,`⚠`)):c(``,!0),h(l(u),{content:e.path,placement:`top`,disabled:e.displayName.length<=35,"show-after":200},{default:A(()=>[B(`span`,zt,b(e.displayName),1)]),_:2},1032,[`content`,`disabled`]),e.dirPath?(E(),s(`div`,{key:1,class:`file-path-section`,title:e.dirPath},[h(l(u),{content:e.dirPath,placement:`top`,disabled:e.dirPath.length<=30,"show-after":200},{default:A(()=>[B(`div`,Vt,b(e.dirPath),1)]),_:2},1032,[`content`,`disabled`])],8,Bt)):c(``,!0),t.showActionButtons?(E(),s(`div`,Ht,[h(Ue,{"file-path":e.path,"file-type":e.type||`modified`,"is-locked":t.isFileLocked(e.path),"is-locking":t.isLocking(e.path),onToggleLock:r[3]||=e=>d(`toggle-lock`,e),onStage:r[4]||=e=>d(`stage`,e),onUnstage:r[5]||=e=>d(`unstage`,e),onRevert:r[6]||=e=>d(`revert`,e)},null,8,[`file-path`,`file-type`,`is-locked`,`is-locking`])])):c(``,!0)],10,Ft))),128)):(E(),C(Ze,{key:3,"tree-data":Me.value,"selected-file":G.value,"show-action-buttons":t.showActionButtons,"is-file-locked":t.isFileLocked,"is-locking":t.isLocking,onFileSelect:Re,onToggleLock:r[7]||=e=>d(`toggle-lock`,e),onStage:r[8]||=e=>d(`stage`,e),onUnstage:r[9]||=e=>d(`unstage`,e),onRevert:r[10]||=e=>d(`revert`,e)},null,8,[`tree-data`,`selected-file`,`show-action-buttons`,`is-file-locked`,`is-locking`]))]),_:1})]),Te.value?(E(),s(`div`,Ut,[h(pt,{class:`ai-summary-item`,source:Ce.value||`worktree`,scope:`overall`,"commit-hash":t.commitHash,revision:De.value},null,8,[`source`,`commit-hash`,`revision`]),G.value?(E(),C(pt,{key:0,class:`ai-summary-item`,source:Ce.value||`worktree`,scope:`file`,"commit-hash":t.commitHash,file:G.value,"file-name":Ie.value,"file-revision":t.diffContent},null,8,[`source`,`commit-hash`,`file`,`file-name`,`file-revision`])):c(``,!0)])):c(``,!0)])]),_:1},8,[`size`]),h(o,{min:`15%`,max:`85%`},{default:A(()=>[B(`div`,Wt,[B(`div`,Gt,[B(`h4`,null,b(l(H)(`@E80AC:文件差异`)),1),B(`div`,Kt,[e(n.$slots,`header-extra`,{},void 0,!0),G.value?(E(),C(l(u),{key:0,content:G.value,placement:`top`,effect:`light`,"show-after":200},{default:A(()=>[B(`span`,qt,[B(`span`,Jt,b(Pe.value),1),B(`span`,Yt,b(Ie.value),1)])]),_:1},8,[`content`])):c(``,!0),t.diffStats?(E(),s(`div`,Xt,[B(`span`,Zt,`+`+b(t.diffStats.added),1),B(`span`,Qt,`-`+b(t.diffStats.deleted),1)])):c(``,!0),t.showOpenButton&&G.value?(E(),s(`div`,$t,[h(l(u),{content:l(H)(`@E80AC:复制文件路径`),placement:`top`,effect:`light`},{default:A(()=>[B(`button`,{class:`modern-btn btn-icon-24`,onClick:Ve},[h(l(p),{class:`btn-icon`},{default:A(()=>[h(l(pe))]),_:1})])]),_:1},8,[`content`]),h(l(u),{content:Ar.value,placement:`top`,effect:`light`},{default:A(()=>[B(`button`,{class:`modern-btn btn-icon-24`,onClick:Be},[h(l(p),{class:`btn-icon`},{default:A(()=>[h(l(me))]),_:1})])]),_:1},8,[`content`]),t.showVscodeButton?(E(),C(l(u),{key:0,content:l(H)(`@E80AC:用VSCode打开文件`),placement:`top`,effect:`light`},{default:A(()=>[B(`button`,{class:`modern-btn btn-icon-24`,onClick:Ge},[h(ge,{"icon-class":`vscode`,class:`btn-icon`})])]),_:1},8,[`content`])):c(``,!0),t.showEditorButton?(E(),C(l(u),{key:1,content:l(H)(`@E80AC:在编辑器中打开`),placement:`top`,effect:`light`},{default:A(()=>[B(`button`,{class:`modern-btn btn-icon-24`,onClick:qe},[h(l(p),{class:`btn-icon`},{default:A(()=>[h(l(re))]),_:1})])]),_:1},8,[`content`])):c(``,!0),W.value?(E(),C(l(u),{key:2,content:l(H)(`@E80AC:预览HTML/MD文件`),placement:`top`,effect:`light`},{default:A(()=>[B(`button`,{class:ue([`modern-btn btn-icon-24`,{active:M.value}]),"aria-pressed":M.value,onClick:st},[h(l(p),{class:`btn-icon`},{default:A(()=>[h(l(oe))]),_:1})],10,en)]),_:1},8,[`content`])):c(``,!0)])):c(``,!0)])]),K.value&&ke.value?(E(),s(`div`,tn,[J.value.length>0?(E(),s(`div`,nn,[h(l(m),{type:Y.value?`primary`:`default`,size:`small`,onClick:r[12]||=e=>Y.value=!0},{default:A(()=>[P(b(l(H)(`@E80AC:逐块解决`)),1)]),_:1},8,[`type`]),h(l(m),{type:Y.value?`default`:`primary`,size:`small`,onClick:r[13]||=e=>Y.value=!1},{default:A(()=>[P(b(l(H)(`@E80AC:全局解决`)),1)]),_:1},8,[`type`])])):c(``,!0),J.value.length>0&&Y.value?(E(),s(`div`,rn,[B(`div`,an,[B(`div`,on,[B(`div`,sn,[B(`div`,cn,b(l(H)(`@E80AC:当前更改`)),1)]),r[30]||=B(`div`,{class:`pane-subhint placeholder`},null,-1),B(`div`,ln,[h($e,{"model-value":Ye.value,language:`auto`,"file-path":G.value,theme:`auto`,"read-only":!0,"min-height":`280px`,"reveal-line":St.value,"highlight-range":gt.value,"dim-highlight-ranges":yt.value,"highlight-kind":`current`,onGutterClick:r[14]||=(e,t)=>Cr(e,`current`,t),"right-actions":Tt.value,"applied-blocks":xr.value,"sync-group":yr,"sync-scroll-top":tt.value,onScrollChange:r[15]||=e=>tt.value=e,"onUpdate:modelValue":()=>{}},null,8,[`model-value`,`file-path`,`reveal-line`,`highlight-range`,`dim-highlight-ranges`,`right-actions`,`applied-blocks`,`sync-scroll-top`])])]),B(`div`,un,[B(`div`,dn,[B(`div`,fn,b(l(H)(`@E80AC:合并结果`)),1)]),B(`div`,pn,b(l(H)(`@E80AC:可直接编辑合并结果(整文件)`)),1),B(`div`,mn,[h($e,{modelValue:X.value,"onUpdate:modelValue":[r[16]||=e=>X.value=e,r[18]||=()=>Je.value=!0],language:`auto`,"file-path":G.value,theme:`auto`,"read-only":!1,"min-height":`280px`,"reveal-line":wt.value,"highlight-range":vt.value,"dim-highlight-ranges":xt.value,"highlight-kind":`merged`,"sync-group":yr,"sync-scroll-top":tt.value,onScrollChange:r[17]||=e=>tt.value=e},null,8,[`modelValue`,`file-path`,`reveal-line`,`highlight-range`,`dim-highlight-ranges`,`sync-scroll-top`])])]),B(`div`,hn,[B(`div`,gn,[B(`div`,_n,b(l(H)(`@E80AC:传入的更改`)),1)]),r[31]||=B(`div`,{class:`pane-subhint placeholder`},null,-1),B(`div`,vn,[h($e,{"model-value":Z.value,language:`auto`,"file-path":G.value,theme:`auto`,"read-only":!0,"min-height":`280px`,"reveal-line":Ct.value,"highlight-range":_t.value,"dim-highlight-ranges":bt.value,"highlight-kind":`incoming`,"right-actions":br.value,"applied-blocks":xr.value,"sync-group":yr,"sync-scroll-top":tt.value,onScrollChange:r[19]||=e=>tt.value=e,onGutterClick:r[20]||=(e,t)=>Cr(e,`incoming`,t),"onUpdate:modelValue":()=>{}},null,8,[`model-value`,`file-path`,`reveal-line`,`highlight-range`,`dim-highlight-ranges`,`right-actions`,`applied-blocks`,`sync-scroll-top`])])])]),B(`div`,yn,[h(l(m),{type:`primary`,size:`large`,onClick:jr},{default:A(()=>[P(b(l(H)(`@E80AC:保存所有解决方案`)),1)]),_:1})])])):c(``,!0),!Y.value||J.value.length===0?(E(),s(`div`,bn,[B(`div`,xn,[B(`div`,Sn,[h(l(p),{class:`warning-icon`},{default:A(()=>[h(l(de))]),_:1}),B(`span`,null,b(l(H)(`@E80AC:检测到冲突,请选择解决方式`)),1)]),B(`div`,Cn,[h(l(m),{type:`primary`,size:`small`,onClick:Er},{default:A(()=>[P(b(l(H)(`@E80AC:接受当前版本`)),1)]),_:1}),h(l(m),{type:`success`,size:`small`,onClick:Dr},{default:A(()=>[P(b(l(H)(`@E80AC:接受传入版本`)),1)]),_:1}),h(l(m),{type:`warning`,size:`small`,onClick:Or},{default:A(()=>[P(b(l(H)(`@E80AC:接受两者`)),1)]),_:1})])]),ae((E(),s(`div`,wn,[!q.value&&!t.isLoading?(E(),C(l(V),{key:0,description:l(H)(`@E80AC:该文件没有差异内容`),"image-size":80},null,8,[`description`])):q.value&&t.plainText?(E(),s(`pre`,{key:1,class:`diff-text plain-text`,textContent:b(t.diffContent)},null,8,Tn)):q.value?(E(),s(`div`,{key:2,class:`diff-text`,innerHTML:l(ze)(t.diffContent)},null,8,En)):c(``,!0)])),[[f,t.isLoading]])])):c(``,!0)])):K.value&&!ke.value?(E(),s(`div`,Dn,[B(`div`,On,[h(l(p),{class:`success-icon`,style:{color:`var(--color-success)`,"font-size":`var(--font-size-xl)`}},{default:A(()=>[h(l(ie))]),_:1}),B(`span`,kn,b(l(H)(`@E80AC:冲突已解决,可以添加到暂存区`)),1),h(l(m),{type:`success`,size:`default`,onClick:r[21]||=e=>d(`stage`,G.value)},{default:A(()=>[P(b(l(H)(`@E80AC:添加到暂存区`)),1)]),_:1})]),ae((E(),s(`div`,An,[!q.value&&!t.isLoading?(E(),C(l(V),{key:0,description:l(H)(`@E80AC:该文件没有差异内容`),"image-size":80},null,8,[`description`])):q.value&&t.plainText?(E(),s(`pre`,{key:1,class:`diff-text plain-text`,textContent:b(t.diffContent)},null,8,jn)):q.value?(E(),s(`div`,{key:2,class:`diff-text`,innerHTML:l(ze)(t.diffContent)},null,8,Mn)):c(``,!0)])),[[f,t.isLoading]])])):K.value?c(``,!0):(E(),s(`div`,Nn,[ae((E(),s(`div`,{class:`diff-content diff-content-top`,style:D({flexBasis:M.value?z.value+`%`:`100%`})},[Oe.value?(E(),C(xe,{key:0,"file-path":G.value||``},null,8,[`file-path`])):!q.value&&!t.isLoading?(E(),C(l(V),{key:1,description:G.value?l(H)(`@E80AC:该文件没有差异内容`):l(H)(`@E80AC:请选择文件查看差异`),"image-size":80},null,8,[`description`])):t.compareMode&&!Oe.value?(E(),s(`div`,Pn,[h(Qe,{original:t.compareOriginal,modified:t.compareModified,language:`auto`,"file-path":G.value,theme:`auto`,"read-only":!0},null,8,[`original`,`modified`,`file-path`])])):q.value&&t.plainText?(E(),s(`pre`,{key:3,class:`diff-text plain-text`,textContent:b(t.diffContent)},null,8,Fn)):q.value?(E(),s(`div`,{key:4,class:`diff-text`,innerHTML:l(ze)(t.diffContent)},null,8,In)):c(``,!0)],4)),[[f,t.isLoading]]),M.value&&W.value?(E(),s(`div`,{key:0,class:`preview-vertical-resizer`,onMousedown:dt},null,32)):c(``,!0),M.value&&W.value?(E(),C(Et,{key:1,class:`diff-content-bottom`,style:D({flexBasis:100-z.value+`%`}),"file-path":G.value||``,content:N.value,loading:F.value,error:I.value,"office-preview-url":R.value,context:a.context,"commit-hash":t.commitHash,onRefresh:ot},null,8,[`style`,`file-path`,`content`,`loading`,`error`,`office-preview-url`,`context`,`commit-hash`])):c(``,!0)]))])]),_:3})]),_:3},512)):(E(),s(`div`,Ln,[B(`div`,Rn,[B(`h4`,null,b(l(H)(`@E80AC:文件差异`)),1),B(`div`,zn,[e(n.$slots,`header-extra`,{},void 0,!0),G.value?(E(),C(l(u),{key:0,content:G.value,placement:`top`,effect:`light`,"show-after":200},{default:A(()=>[B(`span`,Bn,[B(`span`,Vn,b(Pe.value),1),B(`span`,Hn,b(Ie.value),1)])]),_:1},8,[`content`])):c(``,!0),t.showOpenButton&&G.value?(E(),s(`div`,Un,[h(l(u),{content:l(H)(`@E80AC:复制文件路径`),placement:`top`,effect:`light`},{default:A(()=>[B(`button`,{class:`modern-btn btn-icon-24`,onClick:Ve},[h(l(p),{class:`btn-icon`},{default:A(()=>[h(l(pe))]),_:1})])]),_:1},8,[`content`]),h(l(u),{content:Ar.value,placement:`top`,effect:`light`},{default:A(()=>[B(`button`,{class:`modern-btn btn-icon-24 btn-primary`,onClick:Be},[h(l(p),{class:`btn-icon`},{default:A(()=>[h(l(me))]),_:1})])]),_:1},8,[`content`]),t.showVscodeButton?(E(),C(l(u),{key:0,content:l(H)(`@E80AC:用VSCode打开文件`),placement:`top`,effect:`light`},{default:A(()=>[B(`button`,{class:`modern-btn btn-icon-24 btn-success`,onClick:Ge},[h(ge,{"icon-class":`vscode`,class:`btn-icon`})])]),_:1},8,[`content`])):c(``,!0)])):c(``,!0)])]),K.value?(E(),s(`div`,Wn,[J.value.length>0?(E(),s(`div`,Gn,[h(l(m),{type:Y.value?`primary`:`default`,size:`small`,onClick:r[22]||=e=>Y.value=!0},{default:A(()=>[P(b(l(H)(`@E80AC:逐块解决`)),1)]),_:1},8,[`type`]),h(l(m),{type:Y.value?`default`:`primary`,size:`small`,onClick:r[23]||=e=>Y.value=!1},{default:A(()=>[P(b(l(H)(`@E80AC:全局解决`)),1)]),_:1},8,[`type`])])):c(``,!0),J.value.length>0&&Y.value?(E(),s(`div`,Kn,[B(`div`,qn,[B(`div`,Jn,[B(`div`,Yn,[B(`div`,Xn,b(l(H)(`@E80AC:当前更改`)),1)]),B(`div`,Zn,[h($e,{modelValue:Ye.value,"onUpdate:modelValue":[r[24]||=e=>Ye.value=e,()=>{}],language:`auto`,"file-path":G.value,theme:`auto`,"read-only":!0,"min-height":`360px`,"reveal-line":St.value,"highlight-range":gt.value,"dim-highlight-ranges":yt.value,"highlight-kind":`current`,"right-actions":Tt.value,"applied-blocks":xr.value,onGutterClick:r[25]||=(e,t)=>Cr(e,`current`,t)},null,8,[`modelValue`,`file-path`,`reveal-line`,`highlight-range`,`dim-highlight-ranges`,`right-actions`,`applied-blocks`])])]),B(`div`,Qn,[B(`div`,$n,[B(`div`,er,b(l(H)(`@E80AC:合并结果`)),1)]),B(`div`,tr,b(l(H)(`@E80AC:可直接编辑合并结果(整文件)`)),1),B(`div`,nr,[h($e,{modelValue:X.value,"onUpdate:modelValue":[r[26]||=e=>X.value=e,r[27]||=()=>Je.value=!0],language:`auto`,"file-path":G.value,theme:`auto`,"read-only":!1,"min-height":`360px`,"reveal-line":wt.value,"highlight-range":vt.value,"dim-highlight-ranges":xt.value,"highlight-kind":`merged`},null,8,[`modelValue`,`file-path`,`reveal-line`,`highlight-range`,`dim-highlight-ranges`])])]),B(`div`,rr,[B(`div`,ir,[B(`div`,ar,b(l(H)(`@E80AC:传入的更改`)),1)]),B(`div`,or,[h($e,{modelValue:Z.value,"onUpdate:modelValue":[r[28]||=e=>Z.value=e,()=>{}],language:`auto`,"file-path":G.value,theme:`auto`,"read-only":!0,"min-height":`360px`,"reveal-line":Ct.value,"highlight-range":_t.value,"dim-highlight-ranges":bt.value,"highlight-kind":`incoming`,"right-actions":br.value,"applied-blocks":xr.value,onGutterClick:r[29]||=(e,t)=>Cr(e,`incoming`,t)},null,8,[`modelValue`,`file-path`,`reveal-line`,`highlight-range`,`dim-highlight-ranges`,`right-actions`,`applied-blocks`])])])]),B(`div`,sr,[h(l(m),{type:`primary`,size:`large`,onClick:jr},{default:A(()=>[P(b(l(H)(`@E80AC:保存所有解决方案`)),1)]),_:1})])])):c(``,!0),!Y.value||J.value.length===0?(E(),s(`div`,cr,[B(`div`,lr,[B(`div`,ur,[h(l(p),{class:`warning-icon`},{default:A(()=>[h(l(de))]),_:1}),B(`span`,null,b(l(H)(`@E80AC:检测到冲突,请选择解决方式`)),1)]),B(`div`,dr,[h(l(m),{type:`primary`,size:`small`,onClick:Er},{default:A(()=>[P(b(l(H)(`@E80AC:接受当前版本`)),1)]),_:1}),h(l(m),{type:`success`,size:`small`,onClick:Dr},{default:A(()=>[P(b(l(H)(`@E80AC:接受传入版本`)),1)]),_:1}),h(l(m),{type:`warning`,size:`small`,onClick:Or},{default:A(()=>[P(b(l(H)(`@E80AC:接受两者`)),1)]),_:1})])]),ae((E(),s(`div`,fr,[!q.value&&!t.isLoading?(E(),C(l(V),{key:0,description:l(H)(`@E80AC:该文件没有差异内容`),"image-size":80},null,8,[`description`])):q.value&&t.plainText?(E(),s(`pre`,{key:1,class:`diff-text plain-text`,textContent:b(t.diffContent)},null,8,pr)):q.value?(E(),s(`div`,{key:2,class:`diff-text`,innerHTML:l(ze)(t.diffContent)},null,8,mr)):c(``,!0)])),[[f,t.isLoading]])])):c(``,!0)])):K.value?c(``,!0):(E(),s(`div`,hr,[ae((E(),s(`div`,{class:`diff-content diff-content-top`,style:D({flexBasis:M.value?z.value+`%`:`100%`})},[Oe.value?(E(),C(xe,{key:0,"file-path":G.value||``},null,8,[`file-path`])):!q.value&&!t.isLoading?(E(),C(l(V),{key:1,description:G.value?l(H)(`@E80AC:该文件没有差异内容`):l(H)(`@E80AC:请选择文件查看差异`),"image-size":80},null,8,[`description`])):t.compareMode&&!Oe.value?(E(),s(`div`,gr,[h(Qe,{original:t.compareOriginal,modified:t.compareModified,language:`auto`,"file-path":G.value,theme:`auto`,"read-only":!0},null,8,[`original`,`modified`,`file-path`])])):q.value&&t.plainText?(E(),s(`pre`,{key:3,class:`diff-text plain-text`,textContent:b(t.diffContent)},null,8,_r)):q.value?(E(),s(`div`,{key:4,class:`diff-text`,innerHTML:l(ze)(t.diffContent)},null,8,vr)):c(``,!0)],4)),[[f,t.isLoading]]),M.value&&W.value?(E(),s(`div`,{key:0,class:`preview-vertical-resizer`,onMousedown:dt},null,32)):c(``,!0),M.value&&W.value?(E(),C(Et,{key:1,class:`diff-content-bottom`,style:D({flexBasis:100-z.value+`%`}),"file-path":G.value||``,content:N.value,loading:F.value,error:I.value,"office-preview-url":R.value,context:a.context,"commit-hash":t.commitHash,onRefresh:ot},null,8,[`style`,`file-path`,`content`,`loading`,`error`,`office-preview-url`,`context`,`commit-hash`])):c(``,!0)]))]))])],4)}}}),xr=U(br,[[`__scopeId`,`data-v-5deced47`]]);export{Ge as a,Le as c,Ke as i,Fe as l,Z as n,Ue as o,We as r,Be as s,xr as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.flow-exec-viewer[data-v-d2ccb36e]{border:1px solid var(--border-component);background:var(--bg-code);height:240px;overflow:hidden}[data-v-d2ccb36e] .vue-flow__node.exec-node-done{opacity:.85}[data-v-d2ccb36e] .vue-flow__edge.exec-edge-done .vue-flow__edge-path{stroke:var(--color-success);stroke-width:2.5px}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Cn as e,Dn as t,Er as n,In as r,Mn as i,Pn as a,Rn as o,Un as s,Xn as c,Yn as l,cr as u,gr as d,or as f,pr as p}from"./element-plus-Bx3j6vzG.js";import{n as m,t as h}from"./_plugin-vue_export-helper-N8Vc5eEs.js";import{i as g,l as _,n as v,s as y}from"./vue-flow-fVVGZspa.js";import{a as b,c as x,i as S,n as C,o as w,r as T,s as E,t as D}from"./UserInputNode-CZarmsrv.js";o(),p();var O={class:`flow-exec-viewer`},k=`flow-execution-viewer`,A=h(a({__name:`FlowExecutionViewer`,props:{flowData:{type:Object,required:!0},currentNodeId:{type:String,default:void 0},executedNodeIds:{type:Array,default:()=>[]},failedNodeIds:{type:Array,default:()=>[]},executedEdgeIds:{type:Array,default:()=>[]}},setup(o){function p(e){switch(e){case`command`:return`📋`;case`wait`:return`⏰`;case`version`:return`📦`;case`confirm`:return`✋`;case`code`:return`🧩`;case`start`:return`🚀`;case`condition`:return`🔀`;case`user_input`:return`⌨️`;default:return``}}let h=a({name:`FlowExecStartNodeRenderer`,props:{id:{type:String,required:!0},data:{type:Object,required:!0}},setup(e){return()=>r(x,{id:e.id,nodeId:e.id,nodeType:`start`,title:m(`@FLOWNODE:开始`),icon:p(`start`),enabled:e.data?.enabled,selected:e.data?.selected,execStatus:e.data?.execStatus,deletable:!1},{})}});function A(t){return a({name:`FlowExecWrappedNode`,props:{id:{type:String,required:!0},data:{type:Object,required:!0}},setup(n){let i=e(()=>{let e=n.data?.config,t=[...Array.isArray(e?.conditionBranches)?e.conditionBranches:[]].sort((e,t)=>{let n=e?.handleId==="default"||e?.isDefault,r=t?.handleId==="default"||t?.isDefault;return n&&!r?1:!n&&r?-1:Number(e?.priority??0)-Number(t?.priority??0)}).map(e=>String(e?.handleId||``).trim()).filter(e=>!!e);return t.includes(`default`)||t.push(`default`),t.length?t:[`default`]});return()=>r(x,{id:n.id,nodeId:n.id,nodeType:n.data?.type,title:n.data?.label,icon:p(n.data?.type),enabled:n.data?.enabled,selected:n.data?.selected,execStatus:n.data?.execStatus,sourceHandleIds:n.data?.type===`condition`?i.value:void 0,deletable:!1},{default:()=>r(t,{data:n.data,id:n.id})})}})}let j={start:d(h),command:d(A(E)),wait:d(A(w)),version:d(A(b)),confirm:d(A(S)),code:d(A(T)),condition:d(A(C)),user_input:d(A(D))},M=o,{onPaneReady:N}=_({id:k}),P=null,F=null;async function I(e){if(e){if(!P){F=e;return}for(let t=0;t<6;t+=1){if(await s(),await new Promise(e=>requestAnimationFrame(()=>e())),!(typeof P?.findNode==`function`&&P.findNode(e))){await new Promise(e=>window.setTimeout(()=>e(),60));continue}try{await P.fitView({nodes:[e],padding:.35,includeHiddenNodes:!0,minZoom:.35,maxZoom:1.2,duration:200})}catch{}break}}}N(e=>{P=e,console.log(`[FlowExecutionViewer] onPaneReady, flowId=`,k),console.log(`[FlowExecutionViewer] instance keys=`,Object.keys(e||{}));try{P.fitView({padding:.2,includeHiddenNodes:!0,duration:0})}catch{}let t=(M.currentNodeId||F||``).trim();t&&(F=null,I(t))});let L=null;f(()=>M.currentNodeId,async e=>{e&&(L&&=(window.clearTimeout(L),null),L=window.setTimeout(async()=>{if(console.log(`[FlowExecutionViewer] focus request, flowId=`,k,`nodeId=`,e),!P){F=e,console.log(`[FlowExecutionViewer] flowInstance not ready, pendingFocusNodeId=`,F);return}I(e)},150))}),l(()=>{L&&=(window.clearTimeout(L),null)});let R=e(()=>{let e=Array.isArray(M.flowData?.nodes)?M.flowData.nodes:[],t=new Set(M.executedNodeIds),n=new Set(M.failedNodeIds),r=M.currentNodeId;return e.map(e=>{let i;r&&e.id===r?i=`running`:n.has(e.id)?i=`failed`:t.has(e.id)&&(i=`success`);let a=[];return t.has(e.id)&&a.push(`exec-node-done`),{...e,data:{...e.data,execStatus:i},class:a.join(` `)}})}),z=e(()=>{let e=Array.isArray(M.flowData?.edges)?M.flowData.edges:[],t=new Set(M.executedEdgeIds);return e.map(e=>{let n=[];return t.has(e.id)&&n.push(`exec-edge-done`),{...e,class:n.join(` `)}})});return(e,r)=>(c(),t(`div`,O,[i(n(y),{id:k,nodes:R.value,edges:z.value,"node-types":j,"nodes-draggable":!1,"nodes-connectable":!1,"elements-selectable":!1,"zoom-on-scroll":!0,"zoom-on-double-click":!1,"pan-on-drag":!0,"min-zoom":.2,"max-zoom":1.5},{default:u(()=>[i(n(g)),i(n(v))]),_:1},8,[`nodes`,`edges`])]))}}),[[`__scopeId`,`data-v-d2ccb36e`]]);export{A as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.package-json-selector[data-v-cae26f6e]{gap:var(--spacing-base);flex-direction:column;display:flex}.selector-container[data-v-cae26f6e]{gap:var(--spacing-base);align-items:center;display:flex}.package-select[data-v-cae26f6e]{flex:1;min-width:0}.refresh-btn[data-v-cae26f6e],.custom-dir-btn[data-v-cae26f6e]{flex-shrink:0}.option-content[data-v-cae26f6e]{gap:var(--spacing-xs);flex-direction:column;width:100%;display:flex}.option-main[data-v-cae26f6e]{align-items:center;gap:6px;display:flex}.folder-icon[data-v-cae26f6e]{color:var(--color-success);flex-shrink:0}.package-name[data-v-cae26f6e]{color:var(--text-title);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.option-path[data-v-cae26f6e]{font-size:var(--font-size-xs);color:var(--text-secondary);font-family:var(--font-mono);margin-left:var(--spacing-xl);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.empty-hint[data-v-cae26f6e]{padding:var(--spacing-base) var(--spacing-md);background:var(--bg-panel);border:1px solid var(--border-component);border-radius:var(--radius-base);text-align:center}[data-theme=dark] .folder-icon[data-v-cae26f6e]{color:#95d475}.param-list[data-v-e8a38cd0]{gap:var(--spacing-md);flex-direction:column;display:flex}.param-list__title[data-v-e8a38cd0]{align-items:center;gap:var(--spacing-md);display:flex}.param-list__title-text[data-v-e8a38cd0]{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.param-list__title-actions[data-v-e8a38cd0]{align-items:center;gap:var(--spacing-sm);margin-left:auto;display:flex}.param-list__empty[data-v-e8a38cd0]{color:var(--text-tertiary);font-size:var(--font-size-sm);padding:var(--spacing-lg);text-align:center;background:var(--bg-component-area);border-radius:var(--radius-md)}.param-list__body[data-v-e8a38cd0]{gap:var(--spacing-md);flex-direction:column;display:flex}.param-list__row[data-v-e8a38cd0]{gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-component-area);border-radius:var(--radius-md);border:1px solid var(--border-component);transition:var(--transition-all);grid-template-columns:1fr 44px;align-items:start;display:grid}.param-list__row.param-list__row--no-actions[data-v-e8a38cd0]{grid-template-columns:1fr}.param-list__row[data-v-e8a38cd0]:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.param-list__row-content[data-v-e8a38cd0]{min-width:0}.param-list__row-actions[data-v-e8a38cd0]{justify-content:flex-end;display:flex}.node-input-config .empty-tip[data-v-27875a5d]{color:var(--text-tertiary);font-size:var(--font-size-sm);padding:var(--spacing-lg);text-align:center;background:var(--bg-component-area);border-radius:var(--radius-md)}.node-input-config .input-list[data-v-27875a5d]{gap:var(--spacing-md);flex-direction:column;display:flex}.node-input-config .input-item[data-v-27875a5d]{padding:var(--spacing-md);background:var(--bg-component-area);border-radius:var(--radius-md);border:1px solid var(--border-component);transition:var(--transition-all)}.node-input-config .input-item[data-v-27875a5d]:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.node-input-config .input-row[data-v-27875a5d]{gap:var(--spacing-md);grid-template-columns:200px 150px 1fr 90px;align-items:end;display:grid}.node-input-config .required-field[data-v-27875a5d]{justify-content:flex-end;align-items:center}.node-input-config .input-field[data-v-27875a5d]{gap:var(--spacing-sm);flex-direction:column;display:flex}.node-input-config .input-field .field-label[data-v-27875a5d]{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:var(--font-weight-medium)}.node-input-config .tree-node-label[data-v-27875a5d]{align-items:center;gap:6px;display:flex}.node-input-config .tree-node-label .el-icon[data-v-27875a5d]{color:var(--color-primary);font-size:var(--font-size-base)}.code-node-input-config[data-v-b90fd34c]{width:100%}.sub-title[data-v-b90fd34c]{margin-bottom:var(--spacing-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);justify-content:space-between;align-items:center;display:flex}.empty-tip[data-v-b90fd34c]{color:var(--text-tertiary);font-size:var(--font-size-base);padding:12px 0}.input-list[data-v-b90fd34c]{gap:var(--spacing-md);flex-direction:column;display:flex}.input-row[data-v-b90fd34c]{gap:var(--spacing-md);grid-template-columns:220px 130px 1fr 90px;align-items:end;display:grid}.field-label[data-v-b90fd34c]{font-size:var(--font-size-sm);color:var(--text-tertiary);margin-bottom:var(--spacing-sm);display:block}.value-field[data-v-b90fd34c] .el-tree-select{width:100%}.action-field[data-v-b90fd34c]{justify-content:flex-end;display:flex}.user-input-param-config[data-v-ed92e4fb]{width:100%}.input-row[data-v-ed92e4fb]{gap:var(--spacing-md);grid-template-columns:220px 150px 1fr 90px;align-items:end;display:grid}.field-label[data-v-ed92e4fb]{font-size:var(--font-size-sm);color:var(--text-tertiary);margin-bottom:var(--spacing-sm);display:block}.value-field[data-v-ed92e4fb] .el-tree-select{width:100%}.action-field[data-v-ed92e4fb]{justify-content:flex-end;display:flex}.tree-node-label[data-v-ed92e4fb]{align-items:center;gap:6px;display:flex}.tree-node-label .el-icon[data-v-ed92e4fb]{color:var(--color-primary);font-size:var(--font-size-base)}.config-section[data-v-078bfaa4]{padding:var(--spacing-lg);background:var(--bg-component-area);border-radius:var(--radius-lg);margin-bottom:20px}.config-section .section-title[data-v-078bfaa4]{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-lg);align-items:center;gap:var(--spacing-base);color:var(--text-primary);display:flex}.command-list[data-v-078bfaa4]{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));width:100%;display:grid}.code-examples[data-v-078bfaa4]{margin-top:var(--spacing-md);padding-top:var(--spacing-md)}.examples-title[data-v-078bfaa4]{font-size:var(--font-size-sm);color:var(--text-tertiary);margin-bottom:var(--spacing-sm)}.examples-actions[data-v-078bfaa4]{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}[data-v-078bfaa4] .el-form-item__content{width:100%}.command-item[data-v-078bfaa4]{padding:var(--spacing-md);border-radius:var(--radius-md);border:2px solid var(--border-component);cursor:pointer;transition:var(--transition-all);justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);display:flex}.command-item[data-v-078bfaa4]:hover{border-color:var(--color-primary);background:var(--bg-input-hover)}.command-item.selected[data-v-078bfaa4]{border-color:var(--color-primary);background:var(--tint-primary-12)}.command-item.selected .command-name[data-v-078bfaa4]{color:var(--color-primary)}.command-item .command-info[data-v-078bfaa4]{flex:1;min-width:0}.command-item .command-info .command-header[data-v-078bfaa4]{align-items:center;gap:var(--spacing-base);margin-bottom:var(--spacing-sm);flex-wrap:wrap;display:flex}.command-item .command-info .command-name[data-v-078bfaa4]{font-weight:var(--font-weight-semibold);font-size:var(--font-size-md)}.command-item .command-info .command-desc[data-v-078bfaa4]{font-size:var(--font-size-sm);color:var(--text-tertiary)}.command-item .command-info .command-code[data-v-078bfaa4]{padding:var(--spacing-sm) var(--spacing-base);background:var(--bg-container);border-radius:var(--radius-base);font-size:var(--font-size-sm);color:var(--text-primary);margin-bottom:var(--spacing-sm);word-break:break-all;display:block}.command-item .command-info .command-dir[data-v-078bfaa4]{align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-tertiary);display:flex}.command-item .command-info .command-dir .el-icon[data-v-078bfaa4]{color:var(--color-warning);font-size:var(--font-size-base)}.command-item .command-info .command-dir span[data-v-078bfaa4]{word-break:break-all}.command-item .check-icon[data-v-078bfaa4]{color:var(--color-primary);font-size:var(--font-size-2xl);flex-shrink:0}.empty-tip[data-v-078bfaa4]{color:var(--text-tertiary);font-size:var(--font-size-base);text-align:center;padding:20px}.condition-branch-list[data-v-078bfaa4]{gap:var(--spacing-md);flex-direction:column;display:flex}.condition-branch-card[data-v-078bfaa4]{border:1px solid var(--border-component);border-radius:var(--radius-md);padding:var(--spacing-md);gap:var(--spacing-md);background:#ffffff05;grid-template-columns:1fr auto;display:grid}.branch-main[data-v-078bfaa4]{min-width:0}.branch-header[data-v-078bfaa4]{justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md);display:flex}.branch-title[data-v-078bfaa4]{align-items:center;gap:var(--spacing-sm);flex:1;min-width:0;display:flex}.branch-title[data-v-078bfaa4] .el-input{width:100%}.branch-badge[data-v-078bfaa4]{height:20px;font-size:var(--font-size-sm);color:var(--action-amber-bright);background:#f59e0b1f;border:1px solid #f59e0b40;border-radius:999px;flex-shrink:0;align-items:center;padding:0 8px;display:inline-flex}.branch-actions[data-v-078bfaa4]{padding-left:var(--spacing-md);border-left:1px solid var(--border-component);justify-content:center;align-items:center;display:flex}[data-v-078bfaa4] .icon-btn.el-button{border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:inline-flex}[data-v-078bfaa4] .icon-btn.el-button.is-circle{padding:0}[data-v-078bfaa4] .icon-btn.el-button.is-plain{background:0 0}[data-v-078bfaa4] .icon-btn.el-button:hover{filter:brightness(1.03)}[data-v-078bfaa4] .icon-btn.el-button:active{transform:translateY(.5px)}.branch-meta[data-v-078bfaa4]{margin-bottom:var(--spacing-md)}.branch-meta[data-v-078bfaa4] .el-form{gap:var(--spacing-md);grid-template-columns:1fr 1fr;align-items:start;display:grid}.branch-meta[data-v-078bfaa4] .el-form-item{margin-bottom:0}.branch-meta[data-v-078bfaa4] .el-form-item__content{width:100%}.rules-header[data-v-078bfaa4]{margin-bottom:var(--spacing-sm);color:var(--text-primary);font-weight:var(--font-weight-medium);justify-content:space-between;align-items:center;display:flex}.rule-row[data-v-078bfaa4]{gap:var(--spacing-md);padding:var(--spacing-md);border:1px solid var(--border-component);border-radius:var(--radius-md);background:var(--bg-container);margin-bottom:var(--spacing-sm);grid-template-columns:minmax(280px,2fr) minmax(140px,1fr) minmax(220px,2fr) auto;display:grid}.rule-row .rule-col[data-v-078bfaa4]:last-child{justify-content:center;display:flex}.rule-col[data-v-078bfaa4]{min-width:0}.rule-col[data-v-078bfaa4] .el-select,.rule-col[data-v-078bfaa4] .el-input,.rule-col[data-v-078bfaa4] .el-input-number{width:100%}.field-label[data-v-078bfaa4]{font-size:var(--font-size-sm);color:var(--text-tertiary);margin-bottom:6px}.branch-default-tip[data-v-078bfaa4]{font-size:var(--font-size-sm);color:var(--text-tertiary);padding:var(--spacing-sm);border-radius:var(--radius-md);background:var(--tint-primary-08);border:1px solid #409eff2e}.form-tip[data-v-078bfaa4]{align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-tertiary);display:flex}.form-tip .el-icon[data-v-078bfaa4]{font-size:var(--font-size-base);color:var(--color-primary)}.reference-tip[data-v-078bfaa4]{align-items:center;gap:var(--spacing-base);padding:var(--spacing-md);margin-top:var(--spacing-base);background:var(--tint-primary-08);border-radius:var(--radius-md);border:1px solid var(--tint-primary-18);font-size:var(--font-size-sm);color:var(--color-primary);display:flex}.reference-tip .el-icon[data-v-078bfaa4]{font-size:var(--font-size-md)}.node-option[data-v-078bfaa4]{justify-content:space-between;align-items:center;width:100%;display:flex}.node-option .node-name[data-v-078bfaa4]{font-weight:var(--font-weight-medium);color:var(--text-primary)}.node-option .node-id[data-v-078bfaa4]{font-size:var(--font-size-xs);color:var(--text-tertiary);font-family:var(--font-mono)}.output-rows[data-v-078bfaa4]{gap:var(--spacing-sm);flex-direction:column;width:100%;display:flex}.output-row[data-v-078bfaa4]{gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-component-area);border-radius:var(--radius-md);border:1px solid var(--border-component);transition:var(--transition-all);grid-template-columns:160px 1fr 44px;display:grid}.output-row[data-v-078bfaa4]:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.output-row.output-row-header[data-v-078bfaa4]{box-shadow:none;background:0 0;border:0;grid-template-columns:160px 1fr 44px;align-items:center;padding:2px 0}.output-param-row[data-v-078bfaa4]{gap:var(--spacing-md);grid-template-columns:220px 1fr;align-items:end;display:grid}.output-param-field[data-v-078bfaa4]{gap:var(--spacing-sm);flex-direction:column;display:flex}.field-label[data-v-078bfaa4]{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:var(--font-weight-medium)}.output-row.output-row-footer[data-v-078bfaa4]{grid-template-columns:1fr}.output-col-title[data-v-078bfaa4]{font-size:var(--font-size-sm);color:var(--text-tertiary)}.output-col-actions[data-v-078bfaa4]{justify-content:flex-end;display:flex}.sub-section[data-v-078bfaa4]{background:var(--bg-container);border:1px solid var(--border-component);border-radius:var(--radius-md);padding:var(--spacing-lg)}.sub-title[data-v-078bfaa4]{margin-bottom:var(--spacing-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);justify-content:space-between;align-items:center;display:flex}.table-rows[data-v-078bfaa4]{gap:var(--spacing-md);flex-direction:column;display:flex}.table-row[data-v-078bfaa4]{gap:var(--spacing-md);grid-template-columns:220px 1fr 44px;align-items:center;display:grid}.table-row.table-header[data-v-078bfaa4]{grid-template-columns:220px 1fr 44px;padding:2px 0}.col-title[data-v-078bfaa4]{font-size:var(--font-size-sm);color:var(--text-tertiary)}.col-actions[data-v-078bfaa4]{justify-content:flex-end;display:flex}.value-cell[data-v-078bfaa4]{align-items:center;gap:var(--spacing-md);min-width:0;display:flex}[data-v-765c04fa] .flow-node-handle{border:2px solid var(--bg-page)!important;cursor:crosshair!important;border-radius:50%!important;width:12px!important;height:12px!important}.flow-workspace-container[data-v-765c04fa]{padding:var(--spacing-md);gap:var(--spacing-md);background:var(--bg-page);height:100%;display:flex}.left-sidebar[data-v-765c04fa],.right-sidebar[data-v-765c04fa]{background:var(--bg-container);border-radius:var(--radius-lg);padding:var(--spacing-md);box-shadow:var(--shadow-md)}.left-sidebar[data-v-765c04fa]{flex-direction:column;width:200px;display:flex}.right-sidebar[data-v-765c04fa]{flex-direction:column;width:160px;min-height:0;display:flex}.sidebar-header[data-v-765c04fa]{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.sidebar-header h3[data-v-765c04fa]{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin:0}.orchestration-list[data-v-765c04fa]{flex:1;overflow-y:auto}.orchestration-item[data-v-765c04fa]{padding:var(--spacing-sm) var(--spacing-base);margin-bottom:var(--spacing-sm);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-all);border:1px solid var(--border-component)}.orchestration-item[data-v-765c04fa]:hover{background:var(--bg-component-hover);border-color:var(--color-primary);box-shadow:0 2px 8px #0000001a}.orchestration-item.active[data-v-765c04fa]{background:var(--tint-primary-16);border-color:var(--color-primary)}.orchestration-item.active h4[data-v-765c04fa]{color:var(--color-primary)}.orchestration-item .item-content h4[data-v-765c04fa]{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-base)}.orchestration-item .item-content .description[data-v-765c04fa]{margin:0 0 var(--spacing-base) 0;font-size:var(--font-size-sm);color:var(--text-tertiary)}.orchestration-item .item-content .item-actions[data-v-765c04fa]{gap:var(--spacing-sm);display:flex}.flow-canvas[data-v-765c04fa]{background:var(--bg-container);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-direction:column;flex:1;display:flex;overflow:hidden}.canvas-header[data-v-765c04fa]{padding:var(--spacing-lg);background:var(--bg-container);justify-content:space-between;align-items:center;display:flex}.canvas-header .flow-header-info[data-v-765c04fa]{align-items:center;display:flex}.canvas-header .header-actions[data-v-765c04fa]{gap:var(--spacing-md);display:flex}.vue-flow-container[data-v-765c04fa]{background:var(--bg-panel);flex:1}.node-toolbox[data-v-765c04fa]{gap:var(--spacing-sm);flex-direction:column;flex:1;min-height:0;margin-bottom:12px;display:flex;overflow-y:auto}.tool-item[data-v-765c04fa]{padding:var(--spacing-sm) var(--spacing-base);border-radius:var(--radius-md);border:1px solid var(--border-component);cursor:pointer;transition:var(--transition-all);text-align:center}.tool-item[data-v-765c04fa]:hover{border-color:var(--color-primary);background:var(--tint-primary-08);box-shadow:var(--shadow-hover)}.tool-item:hover .tool-label[data-v-765c04fa]{color:var(--color-primary)}.tool-item .tool-icon[data-v-765c04fa]{font-size:var(--font-size-xl);margin-bottom:var(--spacing-sm)}.tool-item .tool-label[data-v-765c04fa]{font-weight:var(--font-weight-semibold);font-size:var(--font-size-base);margin-bottom:var(--spacing-sm)}.tool-item .tool-desc[data-v-765c04fa]{font-size:var(--font-size-sm);color:var(--text-tertiary)}[data-v-765c04fa] .vue-flow__controls button.vue-flow__controls-button,[data-v-765c04fa] .vue-flow__controls .vue-flow__controls-button{box-shadow:var(--shadow-sm);justify-content:center;align-items:center;display:flex;background:var(--bg-container)!important;border:1px solid var(--border-component)!important;color:var(--text-primary)!important}[data-v-765c04fa] .vue-flow__controls button.vue-flow__controls-button svg,[data-v-765c04fa] .vue-flow__controls .vue-flow__controls-button svg{color:var(--text-primary);fill:var(--text-primary)}[data-v-765c04fa] .vue-flow__controls button.vue-flow__controls-button:hover,[data-v-765c04fa] .vue-flow__controls .vue-flow__controls-button:hover{background:var(--bg-component-hover)!important;border-color:var(--color-primary)!important;color:var(--color-primary)!important}[data-v-765c04fa] .vue-flow__controls button.vue-flow__controls-button:hover svg,[data-v-765c04fa] .vue-flow__controls .vue-flow__controls-button:hover svg{color:var(--color-primary);fill:var(--color-primary)}[data-v-765c04fa] .vue-flow__controls button.vue-flow__controls-button .el-icon,[data-v-765c04fa] .vue-flow__controls .vue-flow__controls-button .el-icon{font-size:var(--font-size-md);color:var(--text-primary)}[data-v-765c04fa] .flow-node-dropdown{z-index:9999!important}
|