@onescience/onecode-web 1.14.50-202609020913 → 1.14.50-202609031600

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.
Files changed (105) hide show
  1. package/assets/3Dmol-CcTSgS_I.js +1697 -0
  2. package/assets/account-system-DRcY1oD1.js +1 -0
  3. package/assets/{alert-05-D1IWFO_i.js → alert-01-CPXWs6nf.js} +1 -1
  4. package/assets/{alert-01-ImzJnM2f.js → alert-02-DI1DD_3d.js} +1 -1
  5. package/assets/{alert-02-DM5DjRTn.js → alert-04-Db4ZS6xF.js} +1 -1
  6. package/assets/{alert-04-BOZydbs5.js → alert-05-BrjFsUk3.js} +1 -1
  7. package/assets/alert-06-CBhGhcW9.js +1 -0
  8. package/assets/alert-07-BiN6DBuL.js +1 -0
  9. package/assets/alert-08-pH5OhsOk.js +1 -0
  10. package/assets/alert-10-kyJVFv2A.js +1 -0
  11. package/assets/ar-CRS0YItR.js +3 -0
  12. package/assets/{bip-bop-03-CdTAnbed.js → bip-bop-03-CYdvX8k_.js} +1 -1
  13. package/assets/{bip-bop-04-2YPkB6EQ.js → bip-bop-04-KJbD4lUd.js} +1 -1
  14. package/assets/{bip-bop-06-CAXCdaqV.js → bip-bop-06-Cc85gIuq.js} +1 -1
  15. package/assets/{bip-bop-08-CGLaYnIr.js → bip-bop-08-DQAl-h9L.js} +1 -1
  16. package/assets/bip-bop-09-C5SnVe_l.js +1 -0
  17. package/assets/br-C2b1ZzN8.js +3 -0
  18. package/assets/bs-DlPORdH0.js +3 -0
  19. package/assets/center-Cp7MBrmk.js +1 -0
  20. package/assets/da-CgZKWPLe.js +3 -0
  21. package/assets/de-WHP5Q3QL.js +3 -0
  22. package/assets/dialog-edit-project-TXt8WU1J.js +1 -0
  23. package/assets/dialog-fork-fs_cIK4A.js +1 -0
  24. package/assets/dialog-project-upload-B8QKyumt.js +2 -0
  25. package/assets/dialog-select-file-CfgzSPbz.js +1 -0
  26. package/assets/dialog-select-model-C8p6HIH2.js +2 -0
  27. package/assets/dialog-terminal-unavailable-BPf6D9pa.js +3 -0
  28. package/assets/docs-BW2dQfrB.js +1 -0
  29. package/assets/es-BNvaGpG5.js +3 -0
  30. package/assets/fr-C1I6lhhO.js +3 -0
  31. package/assets/ghostty-web-CbT7vRAF.js +13 -0
  32. package/assets/home-v-RyEJXO.js +1 -0
  33. package/assets/index-Cxa2Vk80.js +2774 -0
  34. package/assets/index-q70uwQje.css +1 -0
  35. package/assets/intro-BwCcm56A.js +1 -0
  36. package/assets/ja-CTlM540D.js +3 -0
  37. package/assets/ko-BXzqqq2m.js +3 -0
  38. package/assets/no-CGCSQg0e.js +3 -0
  39. package/assets/{nope-02-Rk-bufQI.js → nope-02-CEsZCG3w.js} +1 -1
  40. package/assets/{nope-05-Bj_PwYFA.js → nope-05-BpK9LKjZ.js} +1 -1
  41. package/assets/{nope-08-CWtWXclo.js → nope-08-D-5nAWNU.js} +1 -1
  42. package/assets/{nope-11-BIRm-gY5.js → nope-11-COnsf8VE.js} +1 -1
  43. package/assets/nope-12-UlwuxqTc.js +1 -0
  44. package/assets/onescience/onescience-logo.png +0 -0
  45. package/assets/onescience-DBtZsoEm.js +82 -0
  46. package/assets/onescience-docs-CH5KBTI9.js +1 -0
  47. package/assets/onescience-skill-detail-dialog-C23957tN.js +1 -0
  48. package/assets/pl-Cb8jpwrH.js +3 -0
  49. package/assets/resources-C7NB-V9a.js +2 -0
  50. package/assets/ru-0WdMlTHS.js +3 -0
  51. package/assets/shell-Bex4QMb_.js +2 -0
  52. package/assets/skills-BgxyM9mc.js +1 -0
  53. package/assets/{staplebops-03-Dv8q46Xf.js → staplebops-03-DSwM4GRQ.js} +1 -1
  54. package/assets/{staplebops-04-Djf2xuEn.js → staplebops-04-ze2zihJz.js} +1 -1
  55. package/assets/{staplebops-06-Dc23JLVv.js → staplebops-06-BJVX7hv9.js} +1 -1
  56. package/assets/{staplebops-07-BPycXvWV.js → staplebops-07-B3Bn5VQK.js} +1 -1
  57. package/assets/status-popover-body-BhWWbkYJ.js +2 -0
  58. package/assets/th-De3uKpxt.js +3 -0
  59. package/assets/tr-CgwEwxOR.js +3 -0
  60. package/assets/wizard-BQDxCspK.js +1 -0
  61. package/assets/{yup-01-BCft7bMi.js → yup-01-Ctxq7OVz.js} +1 -1
  62. package/assets/{yup-03-BELNb0mF.js → yup-03-C8Lemx9x.js} +1 -1
  63. package/assets/{yup-04-CXuIcnhN.js → yup-04-tKpnqLFc.js} +1 -1
  64. package/assets/{yup-05-CMLdNtGP.js → yup-05-ByOdNO_N.js} +1 -1
  65. package/assets/zh-hGVdj13G.js +5 -0
  66. package/assets/zht-D5OqTOhl.js +4 -0
  67. package/index.html +11 -11
  68. package/package.json +2 -2
  69. package/workbench-shell-preview.html +88 -0
  70. package/assets/account-system-BUUxUyj2.js +0 -1
  71. package/assets/alert-06-DLolO-kG.js +0 -1
  72. package/assets/alert-07-CFbEfR4h.js +0 -1
  73. package/assets/alert-08-CGO5F2Ie.js +0 -1
  74. package/assets/alert-10-z3R22nyn.js +0 -1
  75. package/assets/ar-ngSPIv5X.js +0 -3
  76. package/assets/bip-bop-09-N00EcNSI.js +0 -1
  77. package/assets/br-DxpogF86.js +0 -3
  78. package/assets/bs-CqJGNDi-.js +0 -3
  79. package/assets/da-DF3QwPzK.js +0 -3
  80. package/assets/de-D5xa6B41.js +0 -3
  81. package/assets/dialog-create-project-folder-CMPt3ozV.js +0 -1
  82. package/assets/dialog-edit-project-DoL-Ez7C.js +0 -1
  83. package/assets/dialog-fork-CE0DvWUd.js +0 -1
  84. package/assets/dialog-project-upload-Ci2jAnxe.js +0 -2
  85. package/assets/dialog-select-directory-Bp3ZhnZ3.js +0 -4
  86. package/assets/dialog-select-file-DGRyOXkY.js +0 -1
  87. package/assets/dialog-select-mcp-CPyIwRn3.js +0 -2
  88. package/assets/dialog-select-model-BDamoYUk.js +0 -2
  89. package/assets/dialog-terminal-unavailable-ZrAz6UCQ.js +0 -3
  90. package/assets/es-CvyAguO4.js +0 -3
  91. package/assets/fr-clDbSE9o.js +0 -3
  92. package/assets/ghostty-web-BCuhkIU7.js +0 -13
  93. package/assets/index-BkP6Yi9h.js +0 -2576
  94. package/assets/index-XyIgYjWh.css +0 -1
  95. package/assets/ja-9HOMN5MO.js +0 -3
  96. package/assets/ko-CuZDWRP0.js +0 -3
  97. package/assets/no-C3loBrd4.js +0 -3
  98. package/assets/nope-12-VkiLEhL8.js +0 -1
  99. package/assets/pl-Dr_rjW4y.js +0 -3
  100. package/assets/ru-CFMdbrLR.js +0 -3
  101. package/assets/status-popover-body-CfgEKCW8.js +0 -2
  102. package/assets/th-BzujCzA2.js +0 -3
  103. package/assets/tr-Cn1UypYx.js +0 -3
  104. package/assets/zh-D4XY_6IZ.js +0 -5
  105. package/assets/zht-BPEX960-.js +0 -4
@@ -0,0 +1 @@
1
+ const e=[{id:"产品介绍-onescience的科学模型开发平台-pdf",title:"OneScience 科学模型开发平台介绍",copy:"介绍 OneScience 科学模型开发平台的定位、核心能力和典型使用场景,PDF 格式。",tags:["用户手册","产品介绍","PDF"],provider:"OneScience",size:"产品介绍",format:"PDF",href:"https://gitee.com/liuzonglei0713/document/blob/master/用户手册/产品介绍/OneScience的科学模型开发平台.pdf",metricLabel:"类型",action:"打开"},{id:"使用手册-v0-3-0-oneskills-minimal-user-guide-md",title:"OneSkills 极简使用手册(Markdown)",copy:"面向 OneSkills v0.3.0 的快速入门使用说明,适合了解基础流程和最小可用配置。",tags:["用户手册","使用手册","v0.3.0","Markdown"],provider:"OneScience",size:"使用手册",format:"Markdown",href:"https://gitee.com/liuzonglei0713/document/blob/master/用户手册/使用手册/v0.3.0/OneSkills-Minimal-User-Guide.md",metricLabel:"类型",action:"打开"},{id:"使用手册-v0-3-0-oneskills-minimal-user-guide-pdf",title:"OneSkills 极简使用手册(PDF)",copy:"面向 OneSkills v0.3.0 的快速入门使用说明,适合下载、归档和离线阅读。",tags:["用户手册","使用手册","v0.3.0","PDF"],provider:"OneScience",size:"使用手册",format:"PDF",href:"https://gitee.com/liuzonglei0713/document/blob/master/用户手册/使用手册/v0.3.0/OneSkills-Minimal-User-Guide.pdf",metricLabel:"类型",action:"打开"},{id:"使用手册-v0-3-1-oneskills-user-guide-codex-md",title:"OneSkills Codex 使用手册(Markdown)",copy:"说明在 Codex 环境中使用 OneSkills 的安装、配置和工作流执行方法。",tags:["用户手册","使用手册","Codex","Markdown"],provider:"OneScience",size:"使用手册",format:"Markdown",href:"https://gitee.com/liuzonglei0713/document/blob/master/用户手册/使用手册/v0.3.1/OneSkills-User-Guide-Codex.md",metricLabel:"类型",action:"打开"},{id:"使用手册-v0-3-1-oneskills-user-guide-codex-pdf",title:"OneSkills Codex 使用手册(PDF)",copy:"Codex 环境下 OneSkills 使用流程的 PDF 版本,便于分享和离线阅读。",tags:["用户手册","使用手册","Codex","PDF"],provider:"OneScience",size:"使用手册",format:"PDF",href:"https://gitee.com/liuzonglei0713/document/blob/master/用户手册/使用手册/v0.3.1/OneSkills-User-Guide-Codex.pdf",metricLabel:"类型",action:"打开"},{id:"使用手册-v0-3-1-oneskills-user-guide-cursor-md",title:"OneSkills Cursor 使用手册(Markdown)",copy:"说明在 Cursor 中使用 OneSkills 的配置方式、技能调用流程和常见操作。",tags:["用户手册","使用手册","Cursor","Markdown"],provider:"OneScience",size:"使用手册",format:"Markdown",href:"https://gitee.com/liuzonglei0713/document/blob/master/用户手册/使用手册/v0.3.1/OneSkills-User-Guide-Cursor.md",metricLabel:"类型",action:"打开"},{id:"使用手册-v0-3-1-oneskills-user-guide-cursor-pdf",title:"OneSkills Cursor 使用手册(PDF)",copy:"Cursor 环境下 OneSkills 使用流程的 PDF 版本,便于分享和离线阅读。",tags:["用户手册","使用手册","Cursor","PDF"],provider:"OneScience",size:"使用手册",format:"PDF",href:"https://gitee.com/liuzonglei0713/document/blob/master/用户手册/使用手册/v0.3.1/OneSkills-User-Guide-Cursor.pdf",metricLabel:"类型",action:"打开"},{id:"使用手册-v0-3-1-oneskills-user-guide-opencode-md",title:"OneSkills OpenCode 使用手册(Markdown)",copy:"说明在 OpenCode 中使用 OneSkills 的配置方式、技能调用流程和常见操作。",tags:["用户手册","使用手册","OpenCode","Markdown"],provider:"OneScience",size:"使用手册",format:"Markdown",href:"https://gitee.com/liuzonglei0713/document/blob/master/用户手册/使用手册/v0.3.1/OneSkills-User-Guide-OpenCode.md",metricLabel:"类型",action:"打开"},{id:"使用手册-v0-3-1-oneskills-user-guide-opencode-pdf",title:"OneSkills OpenCode 使用手册(PDF)",copy:"OpenCode 环境下 OneSkills 使用流程的 PDF 版本,便于分享和离线阅读。",tags:["用户手册","使用手册","OpenCode","PDF"],provider:"OneScience",size:"使用手册",format:"PDF",href:"https://gitee.com/liuzonglei0713/document/blob/master/用户手册/使用手册/v0.3.1/OneSkills-User-Guide-OpenCode.pdf",metricLabel:"类型",action:"打开"},{id:"使用手册-v0-3-1-oneskills-user-guide-trae-md",title:"OneSkills Trae 使用手册(Markdown)",copy:"说明在 Trae 中使用 OneSkills 的配置方式、技能调用流程和常见操作。",tags:["用户手册","使用手册","Trae","Markdown"],provider:"OneScience",size:"使用手册",format:"Markdown",href:"https://gitee.com/liuzonglei0713/document/blob/master/用户手册/使用手册/v0.3.1/OneSkills-User-Guide-Trae.md",metricLabel:"类型",action:"打开"},{id:"使用手册-v0-3-1-oneskills-user-guide-trae-pdf",title:"OneSkills Trae 使用手册(PDF)",copy:"Trae 环境下 OneSkills 使用流程的 PDF 版本,便于分享和离线阅读。",tags:["用户手册","使用手册","Trae","PDF"],provider:"OneScience",size:"使用手册",format:"PDF",href:"https://gitee.com/liuzonglei0713/document/blob/master/用户手册/使用手册/v0.3.1/OneSkills-User-Guide-Trae.pdf",metricLabel:"类型",action:"打开"},{id:"使用手册-v0-3-1-oneskills-user-guide-vscode-md",title:"OneSkills VS Code 使用手册(Markdown)",copy:"说明在 VS Code 中使用 OneSkills 的配置方式、技能调用流程和常见操作。",tags:["用户手册","使用手册","VS Code","Markdown"],provider:"OneScience",size:"使用手册",format:"Markdown",href:"https://gitee.com/liuzonglei0713/document/blob/master/用户手册/使用手册/v0.3.1/OneSkills-User-Guide-VSCode.md",metricLabel:"类型",action:"打开"},{id:"使用手册-v0-3-1-oneskills-user-guide-vscode-pdf",title:"OneSkills VS Code 使用手册(PDF)",copy:"VS Code 环境下 OneSkills 使用流程的 PDF 版本,便于分享和离线阅读。",tags:["用户手册","使用手册","VS Code","PDF"],provider:"OneScience",size:"使用手册",format:"PDF",href:"https://gitee.com/liuzonglei0713/document/blob/master/用户手册/使用手册/v0.3.1/OneSkills-User-Guide-VSCode.pdf",metricLabel:"类型",action:"打开"},{id:"插件-镜像-md",title:"插件与镜像说明(Markdown)",copy:"介绍 OneScience 插件、运行环境镜像和相关资源的使用方式。",tags:["插件","镜像","Markdown"],provider:"OneScience",size:"插件说明",format:"Markdown",href:"https://gitee.com/liuzonglei0713/document/blob/master/插件/插件&镜像.md",metricLabel:"类型",action:"打开"},{id:"插件-镜像-pdf",title:"插件与镜像说明(PDF)",copy:"OneScience 插件与镜像说明的 PDF 版本,适合下载、分享和归档。",tags:["插件","镜像","PDF"],provider:"OneScience",size:"插件说明",format:"PDF",href:"https://gitee.com/liuzonglei0713/document/blob/master/插件/插件&镜像.pdf",metricLabel:"类型",action:"打开"},{id:"插件介绍-md",title:"插件介绍(Markdown)",copy:"介绍 OneScience 插件体系、基本概念和使用入口。",tags:["插件","Markdown"],provider:"OneScience",size:"插件说明",format:"Markdown",href:"https://gitee.com/liuzonglei0713/document/blob/master/插件/插件介绍.md",metricLabel:"类型",action:"打开"},{id:"插件介绍-pdf",title:"插件介绍(PDF)",copy:"OneScience 插件体系介绍的 PDF 版本,适合下载、分享和归档。",tags:["插件","PDF"],provider:"OneScience",size:"插件说明",format:"PDF",href:"https://gitee.com/liuzonglei0713/document/blob/master/插件/插件介绍.pdf",metricLabel:"类型",action:"打开"},{id:"release-version-record",title:"发版版本记录",copy:"记录 OneScience 与 OneSkills 的版本变化、能力更新和重要调整,PDF 格式。",tags:["发版记录","版本记录","PDF"],provider:"OneScience / OneSkills",size:"发版记录",format:"PDF",href:"https://gitee.com/liuzonglei0713/document/blob/master/发版版本记录.pdf",metricLabel:"类型",action:"打开"}];export{e as d};
@@ -0,0 +1 @@
1
+ import{d as nt,c as C,B as at,a as ot,cW as dt,x as ct,b as n,P as ut,i,S as h,F as j,f as x,s as A,e as J,m as N,cX as gt,ar as D,t as a}from"./index-Cxa2Vk80.js";function It(e){return{prompt:`请基于 OneSkills 技能「${e.title}」进行科研开发。`,skill:{name:e.id,title:e.title}}}const Z=["name","description","layer","tags","references","allowed-tools","metadata"],vt={name:"名称",description:"描述",tags:"标签",references:"引用资源","allowed-tools":"可用工具",metadata:"元数据",layer:"分层"};function ft(e){return vt[e]??e}function et(e){const o=Object.keys(e);return[...Z.filter(b=>o.includes(b)),...o.filter(b=>!Z.includes(b)).sort()].flatMap(b=>{const k=e[b];return k==null||k===""?[]:[[b,k]]})}function ht(e){return e?et(e).length>0:!1}function bt(e){return typeof e=="boolean"?e?"是":"否":typeof e=="number"?String(e):typeof e=="string"?e:JSON.stringify(e,null,2)}function M(e){return Array.isArray(e)?e.flatMap(o=>o==null||o===""?[]:[typeof o=="string"?o:JSON.stringify(o)]):[]}function tt(e){if(!(e===null||typeof e!="object"||Array.isArray(e)))return JSON.stringify(e,null,2)}var kt=a("<section class=os-skill-detail-meta><div class=os-skill-detail-section-label>技能元数据</div><dl class=os-skill-detail-meta-grid>"),mt=a("<dt>"),yt=a('<div class="os-tag-row os-skill-detail-meta-tags">'),$t=a("<span class=os-skill-detail-meta-value>"),pt=a("<dd>"),wt=a("<span class=os-tag>"),_t=a("<pre class=os-skill-detail-meta-nested>"),St=a("<div class=os-skill-detail-chips>"),Lt=a('<div class=os-skill-detail-loading><div class=os-skill-detail-loading-bar></div><div class="os-skill-detail-loading-bar os-skill-detail-loading-bar-short"></div><div class=os-skill-detail-loading-bar></div><p>正在加载 SKILL.md...'),Ct=a("<section class=os-skill-detail-content><div class=os-skill-detail-section-label>技能说明"),xt=a("<div role=presentation><div role=dialog aria-modal=true><div><div class=os-skill-detail-head-main><div>OneSkills</div><h2></h2><p class=os-skill-detail-summary></p></div><button type=button aria-label=关闭>×</button></div><div class=os-skill-detail-body></div><div><div><button type=button>关闭</button><button type=button>开发"),Ft=a("<span class=os-skill-detail-chip>"),Ot=a("<div>"),Et=a("<p class=os-section-copy>该技能暂无正文内容。"),At=a("<div class=os-skill-detail-markdown>"),Dt=a("<span class=os-skill-detail-path-empty>路径待加载"),Mt=a("<code class=os-skill-detail-path><span class=os-skill-detail-path-label>路径</span><span class=os-skill-detail-path-value>");function Nt(e){const o=()=>et(e.data);return(()=>{var y=kt(),b=y.firstChild,k=b.nextSibling;return i(k,n(j,{get each(){return o()},children:([F,u])=>[(()=>{var m=mt();return i(m,()=>ft(F)),m})(),(()=>{var m=pt();return i(m,n(h,{get when(){return M(u).length>0},get children(){var g=yt();return i(g,n(j,{get each(){return M(u)},children:$=>(()=>{var p=wt();return i(p,$),p})()})),g}}),null),i(m,n(h,{get when(){return N(()=>M(u).length===0)()&&tt(u)},children:g=>(()=>{var $=_t();return i($,g),$})()}),null),i(m,n(h,{get when(){return N(()=>M(u).length===0)()&&!tt(u)},get children(){var g=$t();return i(g,()=>bt(u)),g}}),null),m})()]})),x(()=>y.classList.toggle("is-workbench",!!e.workbench)),y})()}function Jt(e){const[o,y]=C(!1),[b,k]=C(),[F,u]=C(),[m,g]=C(),[$,p]=C(),l=()=>e.variant==="workbench",w=at(()=>e.open?e.item:void 0);ot(()=>{const r=w(),c=e.serverUrl;if(!r||!c){y(!1),k(void 0),u(void 0),g(void 0),p(void 0);return}let v=!0;y(!0),k(void 0),u(void 0),g(void 0),p(void 0),dt(c,r.id).then(f=>{if(v){if(y(!1),!f.loaded){p(f.error??"无法加载技能内容");return}if(g(f.location),f.content){k(f.content),u(f.frontmatter);return}p(f.error??"技能文件不可用")}}),ct(()=>{v=!1})});const B=()=>{const r=w();if(!r)return[];const c=[];r.layer&&c.push({label:r.layer,tone:"layer"}),r.provider&&c.push({label:r.provider,tone:"provider"});for(const v of(r.tags??[]).slice(0,4))v===r.layer||v===r.provider||c.push({label:v});return c};return n(h,{get when(){return w()},get children(){return n(ut,{get mount(){return typeof document>"u"?void 0:document.body},get children(){var r=xt(),c=r.firstChild,v=c.firstChild,f=v.firstChild,P=f.firstChild,H=P.nextSibling,lt=H.nextSibling,K=f.nextSibling,_=v.nextSibling,O=_.nextSibling,E=O.firstChild,I=E.firstChild,U=I.nextSibling;return r.$$click=t=>{t.target===t.currentTarget&&e.onClose()},c.$$click=t=>t.stopPropagation(),i(H,()=>w().title),i(lt,()=>w().copy),i(f,n(h,{get when(){return B().length>0},get children(){var t=St();return i(t,n(j,{get each(){return B()},children:d=>(()=>{var s=Ft();return i(s,()=>d.label),x(()=>A(s,"data-tone",d.tone)),s})()})),t}}),null),J(K,"click",e.onClose,!0),i(_,n(h,{get when(){return o()},get children(){return Lt()}}),null),i(_,n(h,{get when(){return N(()=>!o())()&&$()},children:t=>(()=>{var d=Ot();return i(d,t),x(s=>{var S=!l(),L=!!l();return S!==s.e&&d.classList.toggle("os-upload-error",s.e=S),L!==s.t&&d.classList.toggle("os-client-capability-skill-detail-error",s.t=L),s},{e:void 0,t:void 0}),d})()}),null),i(_,n(h,{get when(){return N(()=>!o())()&&!$()},get children(){return[n(h,{get when(){return ht(F())},get children(){return n(Nt,{get data(){return F()},get workbench(){return l()}})}}),(()=>{var t=Ct();return t.firstChild,i(t,n(h,{get when(){return b()},get fallback(){return Et()},children:d=>(()=>{var s=At();return i(s,n(gt,{get text(){return d()},get cacheKey(){return`skill-detail:${w().id}`}})),s})()}),null),t})()]}}),null),i(O,n(h,{get when(){return m()},get fallback(){return Dt()},children:t=>(()=>{var d=Mt(),s=d.firstChild,S=s.nextSibling;return i(S,t),x(()=>A(d,"title",t())),d})()}),E),J(I,"click",e.onClose,!0),J(U,"click",e.onDevelop,!0),x(t=>{var d=!l(),s=!!l(),S={"os-upload-dialog os-skill-detail-dialog":!l(),"os-client-capability-skill-detail-dialog":l()},L=`技能详情 ${w().title}`,q=!l(),R=!!l(),T=!l(),W=!!l(),it={"os-button os-button-secondary os-button-square":!l(),"os-client-capability-skill-detail-close":l()},X=!!l(),z=o(),G=!l(),Q=!!l(),V=!l(),Y=!!l(),rt={"os-button os-button-secondary":!l(),"os-client-capability-skill-detail-action":l()},st={"os-button os-button-primary":!l(),"os-client-capability-skill-detail-action is-primary":l()};return d!==t.e&&r.classList.toggle("os-modal-backdrop",t.e=d),s!==t.t&&r.classList.toggle("os-client-capability-skill-detail-overlay",t.t=s),t.a=D(c,S,t.a),L!==t.o&&A(c,"aria-label",t.o=L),q!==t.i&&v.classList.toggle("os-skill-detail-head",t.i=q),R!==t.n&&v.classList.toggle("os-client-capability-skill-detail-head",t.n=R),T!==t.s&&P.classList.toggle("os-eyebrow",t.s=T),W!==t.h&&P.classList.toggle("os-client-capability-skill-detail-eyebrow",t.h=W),t.r=D(K,it,t.r),X!==t.d&&_.classList.toggle("is-workbench",t.d=X),z!==t.l&&A(_,"aria-busy",t.l=z),G!==t.u&&O.classList.toggle("os-skill-detail-footer",t.u=G),Q!==t.c&&O.classList.toggle("os-client-capability-skill-detail-footer",t.c=Q),V!==t.w&&E.classList.toggle("os-upload-actions",t.w=V),Y!==t.m&&E.classList.toggle("os-client-capability-skill-detail-actions",t.m=Y),t.f=D(I,rt,t.f),t.y=D(U,st,t.y),t},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0,l:void 0,u:void 0,c:void 0,w:void 0,m:void 0,f:void 0,y:void 0}),r}})}})}nt(["click"]);export{Jt as S,It as s};
@@ -0,0 +1,3 @@
1
+ const e={"command.category.suggested":"Sugerowane","command.category.view":"Widok","command.category.project":"Projekt","command.category.provider":"Dostawca","command.category.server":"Serwer","command.category.session":"Sesja","command.category.theme":"Motyw","command.category.language":"Język","command.category.file":"Plik","command.category.context":"Kontekst","command.category.terminal":"Terminal","command.category.model":"Model","command.category.mcp":"MCP","command.category.agent":"Agent","command.category.permissions":"Uprawnienia","command.category.workspace":"Przestrzeń robocza","command.category.settings":"Ustawienia","theme.scheme.system":"Systemowy","theme.scheme.light":"Jasny","theme.scheme.dark":"Ciemny","command.sidebar.toggle":"Przełącz pasek boczny","command.project.open":"Otwórz projekt","command.provider.connect":"Połącz dostawcę","command.server.switch":"Przełącz serwer","command.settings.open":"Otwórz ustawienia","command.session.previous":"Poprzednia sesja","command.session.next":"Następna sesja","command.session.previous.unseen":"Poprzednia nieprzeczytana sesja","command.session.next.unseen":"Następna nieprzeczytana sesja","command.session.archive":"Zarchiwizuj sesję","command.palette":"Paleta poleceń","command.theme.cycle":"Przełącz motyw","command.theme.set":"Użyj motywu: {{theme}}","command.theme.scheme.cycle":"Przełącz schemat kolorów","command.theme.scheme.set":"Użyj schematu kolorów: {{scheme}}","command.language.cycle":"Przełącz język","command.language.set":"Użyj języka: {{language}}","command.session.new":"Nowa sesja","command.file.open":"Otwórz plik","command.tab.close":"Zamknij kartę","command.context.addSelection":"Dodaj zaznaczenie do kontekstu","command.context.addSelection.description":"Dodaj zaznaczone linie z bieżącego pliku","command.input.focus":"Fokus na pole wejściowe","command.terminal.toggle":"Przełącz terminal","command.fileTree.toggle":"Przełącz drzewo plików","command.review.toggle":"Przełącz przegląd","command.terminal.new":"Nowy terminal","command.terminal.new.description":"Utwórz nową kartę terminala","command.steps.toggle":"Przełącz kroki","command.steps.toggle.description":"Pokaż lub ukryj kroki dla bieżącej wiadomości","command.message.previous":"Poprzednia wiadomość","command.message.previous.description":"Przejdź do poprzedniej wiadomości użytkownika","command.message.next":"Następna wiadomość","command.message.next.description":"Przejdź do następnej wiadomości użytkownika","command.model.choose":"Wybierz model","command.model.choose.description":"Wybierz inny model","command.mcp.toggle":"Przełącz MCP","command.mcp.toggle.description":"Przełącz MCP","command.agent.cycle":"Przełącz agenta","command.agent.cycle.description":"Przełącz na następnego agenta","command.agent.cycle.reverse":"Przełącz agenta wstecz","command.agent.cycle.reverse.description":"Przełącz na poprzedniego agenta","command.model.variant.cycle":"Przełącz wysiłek myślowy","command.model.variant.cycle.description":"Przełącz na następny poziom wysiłku","command.prompt.mode.shell":"Terminal","command.prompt.mode.normal":"Prompt","command.permissions.autoaccept.enable":"Automatycznie akceptuj uprawnienia","command.permissions.autoaccept.disable":"Zatrzymaj automatyczne akceptowanie uprawnień","command.workspace.toggle":"Przełącz przestrzenie robocze","command.workspace.toggle.description":"Włącz lub wyłącz wiele przestrzeni roboczych na pasku bocznym","command.session.undo":"Cofnij","command.session.undo.description":"Cofnij ostatnią wiadomość","command.session.redo":"Ponów","command.session.redo.description":"Ponów ostatnią cofniętą wiadomość","command.session.compact":"Kompaktuj sesję","command.session.compact.description":"Podsumuj sesję, aby zmniejszyć rozmiar kontekstu","command.session.fork":"Rozwidlij od wiadomości","command.session.fork.description":"Utwórz nową sesję od poprzedniej wiadomości","command.session.share":"Udostępnij sesję","command.session.share.description":"Udostępnij tę sesję i skopiuj URL do schowka","command.session.unshare":"Przestań udostępniać sesję","command.session.unshare.description":"Zatrzymaj udostępnianie tej sesji","palette.search.placeholder":"Szukaj plików, poleceń i sesji","palette.empty":"Brak wyników","palette.group.commands":"Polecenia","palette.group.files":"Pliki","dialog.provider.search.placeholder":"Szukaj dostawców","dialog.provider.empty":"Nie znaleziono dostawców","dialog.provider.group.popular":"Popularne","dialog.provider.group.other":"Inne","dialog.provider.tag.recommended":"Zalecane","dialog.provider.tag.connected":"Połączono","dialog.provider.opencode.note":"Wyselekcjonowane modele, w tym Claude, GPT, Gemini i inne","dialog.provider.opencode.tagline":"Niezawodne, zoptymalizowane modele","dialog.provider.opencodeGo.tagline":"Tania subskrypcja dla każdego","dialog.provider.anthropic.note":"Bezpośredni dostęp do modeli Claude, w tym Pro i Max","dialog.provider.copilot.note":"Modele AI do pomocy w kodowaniu przez GitHub Copilot","dialog.provider.openai.note":"Modele GPT do szybkich i wszechstronnych zadań AI","dialog.provider.google.note":"Modele Gemini do szybkich i ustrukturyzowanych odpowiedzi","dialog.provider.openrouter.note":"Dostęp do wszystkich obsługiwanych modeli od jednego dostawcy","dialog.provider.vercel.note":"Ujednolicony dostęp do modeli AI z inteligentnym routingiem","dialog.model.select.title":"Wybierz model","dialog.model.search.placeholder":"Szukaj modeli","dialog.model.empty":"Brak wyników modelu","dialog.model.manage":"Zarządzaj modelami","dialog.model.manage.description":"Dostosuj, które modele pojawiają się w wyborze modelu.","dialog.model.manage.provider.toggle":"Przełącz wszystkie modele {{provider}}","dialog.model.unpaid.freeModels.title":"Darmowe modele dostarczane przez OpenCode","dialog.model.unpaid.addMore.title":"Dodaj więcej modeli od popularnych dostawców","dialog.provider.viewAll":"Zobacz więcej dostawców","provider.connect.title":"Połącz {{provider}}","provider.connect.title.anthropicProMax":"Zaloguj się z Claude Pro/Max","provider.connect.selectMethod":"Wybierz metodę logowania dla {{provider}}.","provider.connect.method.apiKey":"Klucz API","provider.connect.status.inProgress":"Autoryzacja w toku...","provider.connect.status.waiting":"Oczekiwanie na autoryzację...","provider.connect.status.failed":"Autoryzacja nie powiodła się: {{error}}","provider.connect.apiKey.description":"Wprowadź swój klucz API {{provider}}, aby połączyć konto i używać modeli {{provider}} w OpenCode.","provider.connect.apiKey.label":"Klucz API {{provider}}","provider.connect.apiKey.placeholder":"Klucz API","provider.connect.apiKey.required":"Klucz API jest wymagany","provider.connect.opencodeZen.line1":"OpenCode Zen daje dostęp do wybranego zestawu niezawodnych, zoptymalizowanych modeli dla agentów kodujących.","provider.connect.opencodeZen.line2":"Z jednym kluczem API uzyskasz dostęp do modeli takich jak Claude, GPT, Gemini, GLM i więcej.","provider.connect.opencodeZen.visit.prefix":"Odwiedź ","provider.connect.opencodeZen.visit.link":"opencode.ai/zen","provider.connect.opencodeZen.visit.suffix":", aby odebrać swój klucz API.","provider.connect.oauth.code.visit.prefix":"Odwiedź ","provider.connect.oauth.code.visit.link":"ten link","provider.connect.oauth.code.visit.suffix":", aby odebrać kod autoryzacyjny, połączyć konto i używać modeli {{provider}} w OpenCode.","provider.connect.oauth.code.label":"Kod autoryzacyjny {{method}}","provider.connect.oauth.code.placeholder":"Kod autoryzacyjny","provider.connect.oauth.code.required":"Kod autoryzacyjny jest wymagany","provider.connect.oauth.code.invalid":"Nieprawidłowy kod autoryzacyjny","provider.connect.oauth.auto.visit.prefix":"Odwiedź ","provider.connect.oauth.auto.visit.link":"ten link","provider.connect.oauth.auto.visit.suffix":" i wprowadź poniższy kod, aby połączyć konto i używać modeli {{provider}} w OpenCode.","provider.connect.oauth.auto.confirmationCode":"Kod potwierdzający","provider.connect.toast.connected.title":"Połączono {{provider}}","provider.connect.toast.connected.description":"Modele {{provider}} są teraz dostępne do użycia.","provider.custom.title":"Dostawca niestandardowy","provider.custom.description.prefix":"Skonfiguruj dostawcę zgodnego z OpenAI. Zobacz ","provider.custom.description.link":"dokumentację konfiguracji dostawcy","provider.custom.description.suffix":".","provider.custom.field.providerID.label":"ID dostawcy","provider.custom.field.providerID.placeholder":"mojdostawca","provider.custom.field.providerID.description":"Małe litery, cyfry, łączniki lub podkreślenia","provider.custom.field.name.label":"Nazwa wyświetlana","provider.custom.field.name.placeholder":"Mój Dostawca AI","provider.custom.field.baseURL.label":"Bazowy URL","provider.custom.field.baseURL.placeholder":"https://api.mojdostawca.com/v1","provider.custom.field.apiKey.label":"Klucz API","provider.custom.field.apiKey.placeholder":"Klucz API","provider.custom.field.apiKey.description":"Opcjonalne. Pozostaw puste, jeśli zarządzasz autoryzacją przez nagłówki.","provider.custom.models.label":"Modele","provider.custom.models.id.label":"ID","provider.custom.models.id.placeholder":"model-id","provider.custom.models.name.label":"Nazwa","provider.custom.models.name.placeholder":"Nazwa wyświetlana","provider.custom.models.remove":"Usuń model","provider.custom.models.add":"Dodaj model","provider.custom.headers.label":"Nagłówki (opcjonalne)","provider.custom.headers.key.label":"Nagłówek","provider.custom.headers.key.placeholder":"Nazwa-Naglowka","provider.custom.headers.value.label":"Wartość","provider.custom.headers.value.placeholder":"wartość","provider.custom.headers.remove":"Usuń nagłówek","provider.custom.headers.add":"Dodaj nagłówek","provider.custom.error.providerID.required":"ID dostawcy jest wymagane","provider.custom.error.providerID.format":"Używaj małych liter, cyfr, łączników lub podkreśleń","provider.custom.error.providerID.exists":"To ID dostawcy już istnieje","provider.custom.error.name.required":"Nazwa wyświetlana jest wymagana","provider.custom.error.baseURL.required":"Bazowy URL jest wymagany","provider.custom.error.baseURL.format":"Musi zaczynać się od http:// lub https://","provider.custom.error.required":"Wymagane","provider.custom.error.duplicate":"Duplikat","provider.disconnect.toast.disconnected.title":"Rozłączono {{provider}}","provider.disconnect.toast.disconnected.description":"Modele {{provider}} nie są już dostępne.","model.tag.free":"Darmowy","model.tag.latest":"Najnowszy","model.provider.anthropic":"Anthropic","model.provider.openai":"OpenAI","model.provider.google":"Google","model.provider.xai":"xAI","model.provider.meta":"Meta","model.input.text":"tekst","model.input.image":"obraz","model.input.audio":"audio","model.input.video":"wideo","model.input.pdf":"pdf","model.tooltip.allows":"Obsługuje: {{inputs}}","model.tooltip.reasoning.allowed":"Obsługuje wnioskowanie","model.tooltip.reasoning.none":"Brak wnioskowania","model.tooltip.context":"Limit kontekstu {{limit}}","common.search.placeholder":"Szukaj","common.goBack":"Wstecz","common.goForward":"Dalej","common.loading":"Ładowanie","common.loading.ellipsis":"...","common.cancel":"Anuluj","common.connect":"Połącz","common.disconnect":"Rozłącz","common.continue":"Prześlij","common.submit":"Prześlij","common.save":"Zapisz","common.saving":"Zapisywanie...","common.default":"Domyślny","common.attachment":"załącznik","prompt.placeholder.shell":"Wpisz polecenie terminala... {{example}}","prompt.placeholder.normal":'Zapytaj o cokolwiek... "{{example}}"',"prompt.placeholder.simple":"Zapytaj o cokolwiek...","prompt.placeholder.summarizeComments":"Podsumuj komentarze…","prompt.placeholder.summarizeComment":"Podsumuj komentarz…","prompt.mode.shell":"Terminal","prompt.mode.normal":"Prompt","prompt.mode.shell.exit":"esc aby wyjść","prompt.example.1":"Napraw TODO w bazie kodu","prompt.example.2":"Jaki jest stos technologiczny tego projektu?","prompt.example.3":"Napraw zepsute testy","prompt.example.4":"Wyjaśnij jak działa uwierzytelnianie","prompt.example.5":"Znajdź i napraw luki w zabezpieczeniach","prompt.example.6":"Dodaj testy jednostkowe dla serwisu użytkownika","prompt.example.7":"Zrefaktoryzuj tę funkcję, aby była bardziej czytelna","prompt.example.8":"Co oznacza ten błąd?","prompt.example.9":"Pomóż mi zdebugować ten problem","prompt.example.10":"Wygeneruj dokumentację API","prompt.example.11":"Zoptymalizuj zapytania do bazy danych","prompt.example.12":"Dodaj walidację danych wejściowych","prompt.example.13":"Utwórz nowy komponent dla...","prompt.example.14":"Jak wdrożyć ten projekt?","prompt.example.15":"Sprawdź mój kod pod kątem najlepszych praktyk","prompt.example.16":"Dodaj obsługę błędów do tej funkcję","prompt.example.17":"Wyjaśnij ten wzorzec regex","prompt.example.18":"Przekonwertuj to na TypeScript","prompt.example.19":"Dodaj logowanie w całej bazie kodu","prompt.example.20":"Które zależności są przestarzałe?","prompt.example.21":"Pomóż mi napisać skrypt migracyjny","prompt.example.22":"Zaimplementuj cachowanie dla tego punktu końcowego","prompt.example.23":"Dodaj stronicowanie do tej listy","prompt.example.24":"Utwórz polecenie CLI dla...","prompt.example.25":"Jak działają tutaj zmienne środowiskowe?","prompt.popover.emptyResults":"Brak pasujących wyników","prompt.popover.emptyCommands":"Brak pasujących poleceń","prompt.dropzone.label":"Upuść tutaj obrazy, pliki PDF lub pliki tekstowe","prompt.dropzone.file.label":"Upuść, aby @wspomnieć plik","prompt.slash.badge.custom":"własne","prompt.slash.badge.skill":"skill","prompt.slash.badge.mcp":"mcp","prompt.context.active":"aktywny","prompt.context.includeActiveFile":"Dołącz aktywny plik","prompt.context.removeActiveFile":"Usuń aktywny plik z kontekstu","prompt.context.removeFile":"Usuń plik z kontekstu","prompt.action.attachFile":"Załącz plik","prompt.attachment.remove":"Usuń załącznik","prompt.action.send":"Wyślij","prompt.action.stop":"Zatrzymaj","prompt.toast.pasteUnsupported.title":"Nieobsługiwany załącznik","prompt.toast.pasteUnsupported.description":"Można tutaj załączać tylko obrazy, pliki PDF lub pliki tekstowe.","prompt.toast.modelAgentRequired.title":"Wybierz agenta i model","prompt.toast.modelAgentRequired.description":"Wybierz agenta i model przed wysłaniem zapytania.","prompt.toast.worktreeCreateFailed.title":"Nie udało się utworzyć drzewa roboczego","prompt.toast.sessionCreateFailed.title":"Nie udało się utworzyć sesji","prompt.toast.shellSendFailed.title":"Nie udało się wysłać polecenia powłoki","prompt.toast.commandSendFailed.title":"Nie udało się wysłać polecenia","prompt.toast.promptSendFailed.title":"Nie udało się wysłać zapytania","prompt.toast.promptSendFailed.description":"Nie udało się pobrać sesji","dialog.mcp.title":"MCP","dialog.mcp.description":"{{enabled}} z {{total}} włączone","dialog.mcp.empty":"Brak skonfigurowanych MCP","dialog.lsp.empty":"LSP wykryte automatycznie na podstawie typów plików","dialog.plugins.empty":"Wtyczki skonfigurowane w opencode.json","mcp.status.connected":"połączono","mcp.status.failed":"niepowodzenie","mcp.status.needs_auth":"wymaga autoryzacji","mcp.status.disabled":"wyłączone","dialog.fork.empty":"Brak wiadomości do rozwidlenia","dialog.directory.search.placeholder":"Szukaj folderów","dialog.directory.empty":"Nie znaleziono folderów","dialog.server.title":"Serwery","dialog.server.description":"Przełącz serwer OneCode, z którym łączy się ta aplikacja.","dialog.server.search.placeholder":"Szukaj serwerów","dialog.server.empty":"Brak serwerów","dialog.server.add.title":"Dodaj serwer","dialog.server.add.url":"URL serwera","dialog.server.add.placeholder":"http://127.0.0.1:4096","dialog.server.add.error":"Nie można połączyć się z serwerem","dialog.server.add.checking":"Sprawdzanie...","dialog.server.add.button":"Dodaj serwer","dialog.server.add.name":"Nazwa serwera (opcjonalnie)","dialog.server.add.namePlaceholder":"Localhost","dialog.server.add.username":"Nazwa użytkownika (opcjonalnie)","dialog.server.add.password":"Hasło (opcjonalnie)","dialog.server.edit.title":"Edytuj serwer","dialog.server.default.title":"Domyślny serwer","dialog.server.default.description":"Połącz z tym serwerem przy uruchomieniu aplikacji zamiast uruchamiać lokalny serwer. Wymaga restartu.","dialog.server.default.none":"Nie wybrano serwera","dialog.server.default.set":"Ustaw bieżący serwer jako domyślny","dialog.server.default.clear":"Wyczyść","dialog.server.action.remove":"Usuń serwer","dialog.server.menu.edit":"Edytuj","dialog.server.menu.default":"Ustaw jako domyślny","dialog.server.menu.defaultRemove":"Usuń domyślny","dialog.server.menu.delete":"Usuń","dialog.server.current":"Obecny serwer","dialog.server.status.default":"Domyślny","dialog.project.edit.title":"Edytuj projekt","dialog.project.edit.name":"Nazwa","dialog.project.edit.icon":"Ikona","dialog.project.edit.icon.alt":"Ikona projektu","dialog.project.edit.icon.hint":"Kliknij lub przeciągnij obraz","dialog.project.edit.icon.recommended":"Zalecane: 128x128px","dialog.project.edit.color":"Kolor","dialog.project.edit.color.select":"Wybierz kolor {{color}}","dialog.project.edit.worktree.startup":"Skrypt uruchamiania przestrzeni roboczej","dialog.project.edit.worktree.startup.description":"Runs after creating a new workspace (worktree).","dialog.project.edit.worktree.startup.placeholder":"np. bun install","context.breakdown.title":"Podział kontekstu","context.breakdown.note":'Przybliżony podział tokenów wejściowych. "Inne" obejmuje definicje narzędzi i narzut.',"context.breakdown.system":"System","context.breakdown.user":"Użytkownik","context.breakdown.assistant":"Asystent","context.breakdown.tool":"Wywołania narzędzi","context.breakdown.other":"Inne","context.systemPrompt.title":"Prompt systemowy","context.rawMessages.title":"Surowe wiadomości","context.stats.session":"Sesja","context.stats.messages":"Wiadomości","context.stats.provider":"Dostawca","context.stats.model":"Model","context.stats.limit":"Limit kontekstu","context.stats.totalTokens":"Całkowita liczba tokenów","context.stats.usage":"Użycie","context.stats.inputTokens":"Tokeny wejściowe","context.stats.outputTokens":"Tokeny wyjściowe","context.stats.reasoningTokens":"Tokeny wnioskowania","context.stats.cacheTokens":"Tokeny pamięci podręcznej (odczyt/zapis)","context.stats.userMessages":"Wiadomości użytkownika","context.stats.assistantMessages":"Wiadomości asystenta","context.stats.totalCost":"Całkowity koszt","context.stats.sessionCreated":"Utworzono sesję","context.stats.lastActivity":"Ostatnia aktywność","context.usage.tokens":"Tokeny","context.usage.usage":"Użycie","context.usage.cost":"Koszt","context.usage.clickToView":"Kliknij, aby zobaczyć kontekst","context.usage.view":"Pokaż użycie kontekstu","language.en":"English","language.zh":"简体中文","language.zht":"繁體中文","language.ko":"한국어","language.de":"Deutsch","language.es":"Español","language.fr":"Français","language.da":"Dansk","language.ja":"日本語","language.pl":"Polski","language.ru":"Русский","language.ar":"العربية","language.no":"Norsk","language.br":"Português (Brasil)","language.bs":"Bosanski","language.th":"ไทย","language.tr":"Türkçe","toast.language.title":"Język","toast.language.description":"Przełączono na {{language}}","toast.theme.title":"Przełączono motyw","toast.scheme.title":"Schemat kolorów","toast.workspace.enabled.title":"Przestrzenie robocze włączone","toast.workspace.enabled.description":"Kilka worktree jest teraz wyświetlanych na pasku bocznym","toast.workspace.disabled.title":"Przestrzenie robocze wyłączone","toast.workspace.disabled.description":"Tylko główny worktree jest wyświetlany na pasku bocznym","toast.permissions.autoaccept.on.title":"Automatyczne akceptowanie uprawnień","toast.permissions.autoaccept.on.description":"Żądania uprawnień będą automatycznie zatwierdzane","toast.permissions.autoaccept.off.title":"Zatrzymano automatyczne akceptowanie uprawnień","toast.permissions.autoaccept.off.description":"Żądania uprawnień będą wymagały zatwierdzenia","toast.model.none.title":"Nie wybrano modelu","toast.model.none.description":"Połącz dostawcę, aby podsumować tę sesję","toast.file.loadFailed.title":"Nie udało się załadować pliku","toast.file.listFailed.title":"Nie udało się wyświetlić listy plików","toast.context.noLineSelection.title":"Brak zaznaczenia linii","toast.context.noLineSelection.description":"Najpierw wybierz zakres linii w zakładce pliku.","toast.session.share.copyFailed.title":"Nie udało się skopiować URL do schowka","toast.session.share.success.title":"Sesja udostępniona","toast.session.share.success.description":"Link udostępniania skopiowany do schowka!","toast.session.share.failed.title":"Nie udało się udostępnić sesji","toast.session.share.failed.description":"Wystąpił błąd podczas udostępniania sesji","toast.session.unshare.success.title":"Zatrzymano udostępnianie sesji","toast.session.unshare.success.description":"Udostępnianie sesji zostało pomyślnie zatrzymane!","toast.session.unshare.failed.title":"Nie udało się zatrzymać udostępniania sesji","toast.session.unshare.failed.description":"Wystąpił błąd podczas zatrzymywania udostępniania sesji","toast.session.listFailed.title":"Nie udało się załadować sesji dla {{project}}","toast.update.title":"Dostępna aktualizacja","toast.update.description":"Nowa wersja OneCode ({{version}}) jest teraz dostępna do instalacji.","toast.update.action.installRestart":"Zainstaluj i zrestartuj","toast.update.action.notYet":"Jeszcze nie","error.page.title":"Coś poszło nie tak","error.page.description":"Wystąpił błąd podczas ładowania aplikacji.","error.page.details.label":"Szczegóły błędu","error.page.action.restart":"Restartuj","error.page.action.report":"Zgłoś błąd","error.page.action.reported":"Błąd zgłoszony","error.page.action.checking":"Sprawdzanie...","error.page.action.checkUpdates":"Sprawdź aktualizacje","error.page.action.updateTo":"Zaktualizuj do {{version}}","error.page.report.prefix":"Proszę zgłosić ten błąd do zespołu OpenCode","error.page.report.discord":"na Discordzie","error.page.version":"Wersja: {{version}}","error.dev.rootNotFound":"Nie znaleziono elementu głównego. Czy zapomniałeś dodać go do swojego index.html? A może atrybut id został błędnie wpisany?","error.globalSync.connectFailed":"Nie można połączyć się z serwerem. Czy serwer działa pod adresem `{{url}}`?","directory.error.invalidUrl":"Nieprawidłowy katalog w URL.","error.chain.unknown":"Nieznany błąd","error.chain.causedBy":"Spowodowany przez:","error.chain.apiError":"Błąd API","error.chain.status":"Status: {{status}}","error.chain.retryable":"Można ponowić: {{retryable}}","error.chain.responseBody":`Treść odpowiedzi:
2
+ {{body}}`,"error.chain.didYouMean":"Czy miałeś na myśli: {{suggestions}}","error.chain.modelNotFound":"Model nie znaleziony: {{provider}}/{{model}}","error.chain.checkConfig":"Sprawdź swoją konfigurację (opencode.json) nazwy dostawców/modeli","error.chain.mcpFailed":'MCP server "{{name}}" failed. Note, OpenCode does not support MCP authentication yet.',"error.chain.providerAuthFailed":"Uwierzytelnianie dostawcy nie powiodło się ({{provider}}): {{message}}","error.chain.providerInitFailed":'Nie udało się zainicjować dostawcy "{{provider}}". Sprawdź poświadczenia i konfigurację.',"error.chain.configJsonInvalid":"Plik konfiguracyjny w {{path}} nie jest poprawnym JSON(C)","error.chain.configJsonInvalidWithMessage":"Plik konfiguracyjny w {{path}} nie jest poprawnym JSON(C): {{message}}","error.chain.configDirectoryTypo":'Katalog "{{dir}}" w {{path}} jest nieprawidłowy. Zmień nazwę katalogu na "{{suggestion}}" lub usuń go. To częsta literówka.',"error.chain.configFrontmatterError":`Nie udało się przetworzyć frontmatter w {{path}}:
3
+ {{message}}`,"error.chain.configInvalid":"Plik konfiguracyjny w {{path}} jest nieprawidłowy","error.chain.configInvalidWithMessage":"Plik konfiguracyjny w {{path}} jest nieprawidłowy: {{message}}","notification.permission.title":"Wymagane uprawnienie","notification.permission.description":"{{sessionTitle}} w {{projectName}} potrzebuje uprawnienia","notification.question.title":"Pytanie","notification.question.description":"{{sessionTitle}} w {{projectName}} ma pytanie","notification.action.goToSession":"Przejdź do sesji","notification.session.responseReady.title":"Odpowiedź gotowa","notification.session.error.title":"Błąd sesji","notification.session.error.fallbackDescription":"Wystąpił błąd","home.recentProjects":"Ostatnie projekty","home.empty.title":"Brak ostatnich projektów","home.empty.description":"Zacznij od otwarcia lokalnego projektu","session.tab.session":"Sesja","session.tab.review":"Przegląd","session.tab.context":"Kontekst","session.panel.reviewAndFiles":"Przegląd i pliki","session.review.filesChanged":"Zmieniono {{count}} plików","session.review.change.one":"Zmiana","session.review.change.other":"Zmiany","session.review.loadingChanges":"Ładowanie zmian...","session.review.empty":"Brak zmian w tej sesji","session.review.noVcs":"Nie wykryto systemu kontroli wersji Git, zmiany nie są wyświetlane","session.review.noSnapshot":"Śledzenie migawek jest wyłączone w konfiguracji, więc zmiany w sesji są niedostępne","session.review.noChanges":"Brak zmian","session.files.selectToOpen":"Wybierz plik do otwarcia","session.files.all":"Wszystkie pliki","session.files.empty":"Brak plików","session.files.binaryContent":"Plik binarny (zawartość nie może być wyświetlona)","session.messages.renderEarlier":"Renderuj wcześniejsze wiadomości","session.messages.loadingEarlier":"Ładowanie wcześniejszych wiadomości...","session.messages.loadEarlier":"Załaduj wcześniejsze wiadomości","session.messages.loading":"Ładowanie wiadomości...","session.messages.jumpToLatest":"Przejdź do najnowszych","session.context.addToContext":"Dodaj {{selection}} do kontekstu","session.todo.title":"Zadania","session.todo.collapse":"Zwiń","session.todo.expand":"Rozwiń","session.followupDock.summary.one":"{{count}} wiadomość w kolejce","session.followupDock.summary.other":"{{count}} wiadomości w kolejce","session.followupDock.sendNow":"Wyślij teraz","session.followupDock.edit":"Edytuj","session.followupDock.collapse":"Zwiń wiadomości w kolejce","session.followupDock.expand":"Rozwiń wiadomości w kolejce","session.revertDock.summary.one":"{{count}} cofnięta wiadomość","session.revertDock.summary.other":"{{count}} cofnięte wiadomości","session.revertDock.collapse":"Zwiń cofnięte wiadomości","session.revertDock.expand":"Rozwiń cofnięte wiadomości","session.revertDock.restore":"Przywróć wiadomość","session.new.title":"Zbuduj cokolwiek","session.new.worktree.main":"Główna gałąź","session.new.worktree.mainWithBranch":"Główna gałąź ({{branch}})","session.new.worktree.create":"Utwórz nowe drzewo robocze","session.new.lastModified":"Ostatnio zmodyfikowano","session.header.search.placeholder":"Szukaj {{project}}","session.header.searchFiles":"Szukaj plików","session.header.openIn":"Otwórz w","session.header.open.action":"Otwórz {{app}}","session.header.open.ariaLabel":"Otwórz w {{app}}","session.header.open.menu":"Opcje otwierania","session.header.open.copyPath":"Kopiuj ścieżkę","status.popover.trigger":"Status","status.popover.ariaLabel":"Konfiguracje serwerów","status.popover.tab.servers":"Serwery","status.popover.tab.mcp":"MCP","status.popover.tab.lsp":"LSP","status.popover.tab.plugins":"Wtyczki","status.popover.action.manageServers":"Zarządzaj serwerami","session.share.popover.title":"Opublikuj w sieci","session.share.popover.description.shared":"Ta sesja jest publiczna w sieci. Jest dostępna dla każdego, kto posiada link.","session.share.popover.description.unshared":"Udostępnij sesję publicznie w sieci. Będzie dostępna dla każdego, kto posiada link.","session.share.action.share":"Udostępnij","session.share.action.publish":"Opublikuj","session.share.action.publishing":"Publikowanie...","session.share.action.unpublish":"Cofnij publikację","session.share.action.unpublishing":"Cofanie publikacji...","session.share.action.view":"Widok","session.share.copy.copied":"Skopiowano","session.share.copy.copyLink":"Kopiuj link","lsp.tooltip.none":"Brak serwerów LSP","lsp.label.connected":"{{count}} LSP","prompt.loading":"Ładowanie promptu...","terminal.loading":"Ładowanie terminala...","terminal.title":"Terminal","terminal.title.numbered":"Terminal {{number}}","terminal.close":"Zamknij terminal","terminal.connectionLost.title":"Utracono połączenie","terminal.connectionLost.description":"Połączenie z terminalem zostało przerwane. Może się to zdarzyć przy restarcie serwera.","common.closeTab":"Zamknij kartę","common.dismiss":"Odrzuć","common.requestFailed":"Żądanie nie powiodło się","common.moreOptions":"Więcej opcji","common.learnMore":"Dowiedz się więcej","common.rename":"Zmień nazwę","common.reset":"Resetuj","common.archive":"Archiwizuj","common.delete":"Usuń","common.close":"Zamknij","common.edit":"Edytuj","common.loadMore":"Załaduj więcej","common.key.esc":"ESC","sidebar.menu.toggle":"Przełącz menu","sidebar.nav.projectsAndSessions":"Projekty i sesje","sidebar.settings":"Ustawienia","sidebar.help":"Pomoc","sidebar.workspaces.enable":"Włącz przestrzenie robocze","sidebar.workspaces.disable":"Wyłącz przestrzenie robocze","sidebar.gettingStarted.title":"Pierwsze kroki","sidebar.gettingStarted.line1":"OpenCode zawiera darmowe modele, więc możesz zacząć od razu.","sidebar.gettingStarted.line2":"Połącz dowolnego dostawcę, aby używać modeli, w tym Claude, GPT, Gemini itp.","sidebar.project.recentSessions":"Ostatnie sesje","sidebar.project.viewAllSessions":"Zobacz wszystkie sesje","sidebar.project.clearNotifications":"Wyczyść powiadomienia","app.name.desktop":"OneCode Desktop","settings.section.desktop":"Pulpit","settings.section.server":"Serwer","settings.tab.general":"Ogólne","settings.tab.shortcuts":"Skróty","settings.desktop.section.wsl":"WSL","settings.desktop.wsl.title":"WSL integration","settings.desktop.wsl.description":"Run the OneCode server inside WSL on Windows.","settings.general.section.appearance":"Wygląd","settings.general.section.notifications":"Powiadomienia systemowe","settings.general.section.updates":"Aktualizacje","settings.general.section.sounds":"Efekty dźwiękowe","settings.general.section.feed":"Kanał","settings.general.section.display":"Ekran","settings.general.row.language.title":"Język","settings.general.row.language.description":"Zmień język wyświetlania dla OneCode","settings.general.row.appearance.title":"Wygląd","settings.general.row.appearance.description":"Dostosuj wygląd OneCode na swoim urządzeniu","settings.general.row.colorScheme.title":"Schemat kolorów","settings.general.row.colorScheme.description":"Wybierz, czy OneCode ma używać motywu systemowego, jasnego czy ciemnego","settings.general.row.theme.title":"Motyw","settings.general.row.theme.description":"Dostosuj motyw OneCode.","settings.general.row.font.title":"Czcionka kodu","settings.general.row.font.description":"Dostosuj czcionkę używaną w blokach kodu","settings.general.row.terminalFont.title":"Terminal Font","settings.general.row.terminalFont.description":"Customise the font used in the terminal","settings.general.row.uiFont.title":"Czcionka interfejsu","settings.general.row.uiFont.description":"Dostosuj czcionkę używaną w całym interfejsie","settings.general.row.followup.title":"Zachowanie kontynuacji","settings.general.row.followup.description":"Wybierz, czy kontynuacja ma być natychmiastowa, czy czekać w kolejce","settings.general.row.followup.option.queue":"Kolejka","settings.general.row.followup.option.steer":"Sterowanie","settings.general.row.reasoningSummaries.title":"Pokaż podsumowania wnioskowania","settings.general.row.reasoningSummaries.description":"Wyświetlaj podsumowania wnioskowania modelu na osi czasu","settings.general.row.shellToolPartsExpanded.title":"Rozwijaj elementy narzędzia shell","settings.general.row.shellToolPartsExpanded.description":"Domyślnie pokazuj rozwinięte elementy narzędzia shell na osi czasu","settings.general.row.editToolPartsExpanded.title":"Rozwijaj elementy narzędzia edit","settings.general.row.editToolPartsExpanded.description":"Domyślnie pokazuj rozwinięte elementy narzędzi edit, write i patch na osi czasu","settings.general.row.showSessionProgressBar.title":"Pokazuj pasek postępu sesji","settings.general.row.showSessionProgressBar.description":"Wyświetlaj animowany pasek postępu u góry sesji, gdy agent pracuje","settings.general.row.wayland.title":"Użyj natywnego Wayland","settings.general.row.wayland.description":"Wyłącz fallback X11 na Wayland. Wymaga restartu.","settings.general.row.wayland.tooltip":"Na Linuxie z monitorami o różnym odświeżaniu, natywny Wayland może być bardziej stabilny.","settings.general.row.releaseNotes.title":"Informacje o wydaniu","settings.general.row.releaseNotes.description":'Pokazuj wyskakujące okna "Co nowego" po aktualizacjach',"settings.updates.row.startup.title":"Sprawdzaj aktualizacje przy uruchomieniu","settings.updates.row.startup.description":"Automatycznie sprawdzaj aktualizacje podczas uruchamiania OneCode","settings.updates.row.check.title":"Sprawdź aktualizacje","settings.updates.row.check.description":"Ręcznie sprawdź aktualizacje i zainstaluj, jeśli są dostępne","settings.updates.action.checkNow":"Sprawdź teraz","settings.updates.action.checking":"Sprawdzanie...","settings.updates.toast.latest.title":"Masz najnowszą wersję","settings.updates.toast.latest.description":"Korzystasz z najnowszej wersji OneCode.","sound.option.none":"Brak","sound.option.alert01":"Alert 01","sound.option.alert02":"Alert 02","sound.option.alert03":"Alert 03","sound.option.alert04":"Alert 04","sound.option.alert05":"Alert 05","sound.option.alert06":"Alert 06","sound.option.alert07":"Alert 07","sound.option.alert08":"Alert 08","sound.option.alert09":"Alert 09","sound.option.alert10":"Alert 10","sound.option.bipbop01":"Bip-bop 01","sound.option.bipbop02":"Bip-bop 02","sound.option.bipbop03":"Bip-bop 03","sound.option.bipbop04":"Bip-bop 04","sound.option.bipbop05":"Bip-bop 05","sound.option.bipbop06":"Bip-bop 06","sound.option.bipbop07":"Bip-bop 07","sound.option.bipbop08":"Bip-bop 08","sound.option.bipbop09":"Bip-bop 09","sound.option.bipbop10":"Bip-bop 10","sound.option.staplebops01":"Staplebops 01","sound.option.staplebops02":"Staplebops 02","sound.option.staplebops03":"Staplebops 03","sound.option.staplebops04":"Staplebops 04","sound.option.staplebops05":"Staplebops 05","sound.option.staplebops06":"Staplebops 06","sound.option.staplebops07":"Staplebops 07","sound.option.nope01":"Nope 01","sound.option.nope02":"Nope 02","sound.option.nope03":"Nope 03","sound.option.nope04":"Nope 04","sound.option.nope05":"Nope 05","sound.option.nope06":"Nope 06","sound.option.nope07":"Nope 07","sound.option.nope08":"Nope 08","sound.option.nope09":"Nope 09","sound.option.nope10":"Nope 10","sound.option.nope11":"Nope 11","sound.option.nope12":"Nope 12","sound.option.yup01":"Yup 01","sound.option.yup02":"Yup 02","sound.option.yup03":"Yup 03","sound.option.yup04":"Yup 04","sound.option.yup05":"Yup 05","sound.option.yup06":"Yup 06","settings.general.notifications.agent.title":"Agent","settings.general.notifications.agent.description":"Pokaż powiadomienie systemowe, gdy agent zakończy pracę lub wymaga uwagi","settings.general.notifications.permissions.title":"Uprawnienia","settings.general.notifications.permissions.description":"Pokaż powiadomienie systemowe, gdy wymagane jest uprawnienie","settings.general.notifications.errors.title":"Błędy","settings.general.notifications.errors.description":"Pokaż powiadomienie systemowe, gdy wystąpi błąd","settings.general.sounds.agent.title":"Agent","settings.general.sounds.agent.description":"Odtwórz dźwięk, gdy agent zakończy pracę lub wymaga uwagi","settings.general.sounds.permissions.title":"Uprawnienia","settings.general.sounds.permissions.description":"Odtwórz dźwięk, gdy wymagane jest uprawnienie","settings.general.sounds.errors.title":"Błędy","settings.general.sounds.errors.description":"Odtwórz dźwięk, gdy wystąpi błąd","settings.shortcuts.title":"Skróty klawiszowe","settings.shortcuts.reset.button":"Przywróć domyślne","settings.shortcuts.reset.toast.title":"Zresetowano skróty","settings.shortcuts.reset.toast.description":"Skróty klawiszowe zostały przywrócone do ustawień domyślnych.","settings.shortcuts.conflict.title":"Skrót już w użyciu","settings.shortcuts.conflict.description":"{{keybind}} jest już przypisany do {{titles}}.","settings.shortcuts.unassigned":"Nieprzypisany","settings.shortcuts.pressKeys":"Naciśnij klawisze","settings.shortcuts.search.placeholder":"Szukaj skrótów","settings.shortcuts.search.empty":"Nie znaleziono skrótów","settings.shortcuts.group.general":"Ogólne","settings.shortcuts.group.session":"Sesja","settings.shortcuts.group.navigation":"Nawigacja","settings.shortcuts.group.modelAndAgent":"Model i agent","settings.shortcuts.group.terminal":"Terminal","settings.shortcuts.group.prompt":"Prompt","settings.providers.title":"Dostawcy","settings.providers.description":"Ustawienia dostawców będą tutaj konfigurowalne.","settings.providers.section.connected":"Połączeni dostawcy","settings.providers.connected.empty":"Brak połączonych dostawców","settings.providers.section.popular":"Popularni dostawcy","settings.providers.tag.environment":"Środowisko","settings.providers.tag.config":"Konfiguracja","settings.providers.tag.custom":"Niestandardowe","settings.providers.tag.other":"Inne","settings.models.title":"Modele","settings.models.description":"Ustawienia modeli będą tutaj konfigurowalne.","settings.agents.title":"Agenci","settings.agents.description":"Ustawienia agentów będą tutaj konfigurowalne.","settings.commands.title":"Polecenia","settings.commands.description":"Ustawienia poleceń będą tutaj konfigurowalne.","settings.mcp.title":"MCP","settings.mcp.description":"Ustawienia MCP będą tutaj konfigurowalne.","settings.permissions.title":"Uprawnienia","settings.permissions.description":"Kontroluj, jakich narzędzi serwer może używać domyślnie.","settings.permissions.section.tools":"Narzędzia","settings.permissions.toast.updateFailed.title":"Nie udało się zaktualizować uprawnień","settings.permissions.action.allow":"Zezwól","settings.permissions.action.ask":"Pytaj","settings.permissions.action.deny":"Odmów","settings.permissions.tool.read.title":"Odczyt","settings.permissions.tool.read.description":"Odczyt pliku (pasuje do ścieżki pliku)","settings.permissions.tool.edit.title":"Edycja","settings.permissions.tool.edit.description":"Modyfikacja plików, w tym edycje, zapisy, łatki i multi-edycje","settings.permissions.tool.glob.title":"Glob","settings.permissions.tool.glob.description":"Dopasowywanie plików za pomocą wzorców glob","settings.permissions.tool.grep.title":"Grep","settings.permissions.tool.grep.description":"Przeszukiwanie zawartości plików za pomocą wyrażeń regularnych","settings.permissions.tool.list.title":"Lista","settings.permissions.tool.list.description":"Wyświetlanie listy plików w katalogu","settings.permissions.tool.bash.title":"Bash","settings.permissions.tool.bash.description":"Uruchamianie poleceń powłoki","settings.permissions.tool.task.title":"Zadanie","settings.permissions.tool.task.description":"Uruchamianie pod-agentów","settings.permissions.tool.skill.title":"Umiejętność","settings.permissions.tool.skill.description":"Ładowanie umiejętności według nazwy","settings.permissions.tool.lsp.title":"LSP","settings.permissions.tool.lsp.description":"Uruchamianie zapytań serwera językowego","settings.permissions.tool.todowrite.title":"Zapis Todo","settings.permissions.tool.todowrite.description":"Aktualizacja listy zadań","settings.permissions.tool.webfetch.title":"Pobieranie z sieci","settings.permissions.tool.webfetch.description":"Pobieranie zawartości z adresu URL","settings.permissions.tool.websearch.title":"Wyszukiwanie w sieci","settings.permissions.tool.websearch.description":"Przeszukiwanie sieci","settings.permissions.tool.external_directory.title":"Katalog zewnętrzny","settings.permissions.tool.external_directory.description":"Dostęp do plików poza katalogiem projektu","settings.permissions.tool.doom_loop.title":"Zapętlenie","settings.permissions.tool.doom_loop.description":"Wykrywanie powtarzających się wywołań narzędzi (doom loop)","session.delete.failed.title":"Nie udało się usunąć sesji","session.delete.title":"Usuń sesję","session.delete.confirm":'Usunąć sesję "{{name}}"?',"session.delete.button":"Usuń sesję","workspace.new":"Nowa przestrzeń robocza","workspace.type.local":"lokalna","workspace.type.sandbox":"piaskownica","workspace.create.failed.title":"Nie udało się utworzyć przestrzeni roboczej","workspace.delete.failed.title":"Nie udało się usunąć przestrzeni roboczej","workspace.resetting.title":"Resetowanie przestrzeni roboczej","workspace.resetting.description":"To może potrwać minutę.","workspace.reset.failed.title":"Nie udało się zresetować przestrzeni roboczej","workspace.reset.success.title":"Przestrzeń robocza zresetowana","workspace.reset.success.description":"Przestrzeń robocza odpowiada teraz domyślnej gałęzi.","workspace.error.stillPreparing":"Przestrzeń robocza jest wciąż przygotowywana","workspace.status.checking":"Sprawdzanie niezscalonych zmian...","workspace.status.error":"Nie można zweryfikować statusu git.","workspace.status.clean":"Nie wykryto niezscalonych zmian.","workspace.status.dirty":"Wykryto niezscalone zmiany w tej przestrzeni roboczej.","workspace.delete.title":"Usuń przestrzeń roboczą","workspace.delete.confirm":'Usunąć przestrzeń roboczą "{{name}}"?',"workspace.delete.button":"Usuń przestrzeń roboczą","workspace.reset.title":"Resetuj przestrzeń roboczą","workspace.reset.confirm":'Zresetować przestrzeń roboczą "{{name}}"?',"workspace.reset.button":"Resetuj przestrzeń roboczą","workspace.reset.archived.none":"Żadne aktywne sesje nie zostaną zarchiwizowane.","workspace.reset.archived.one":"1 sesja zostanie zarchiwizowana.","workspace.reset.archived.many":"{{count}} sesji zostanie zarchiwizowanych.","workspace.reset.note":"To zresetuje przestrzeń roboczą, aby odpowiadała domyślnej gałęzi.","common.open":"Otwórz","dialog.releaseNotes.action.getStarted":"Rozpocznij","dialog.releaseNotes.action.next":"Dalej","dialog.releaseNotes.action.hideFuture":"Nie pokazuj tego w przyszłości","dialog.releaseNotes.media.alt":"Podgląd wydania","toast.project.reloadFailed.title":"Nie udało się ponownie wczytać {{project}}","error.server.invalidConfiguration":"Nieprawidłowa konfiguracja","common.moreCountSuffix":" (jeszcze {{count}})","common.time.justNow":"Przed chwilą","common.time.minutesAgo.short":"{{count}} min temu","common.time.hoursAgo.short":"{{count}} godz. temu","common.time.daysAgo.short":"{{count}} dni temu","settings.providers.connected.environmentDescription":"Połączono ze zmiennymi środowiskowymi","settings.providers.custom.description":"Dodaj dostawcę zgodnego z OpenAI poprzez podstawowy URL.","app.server.unreachable":"Nie można połączyć z {{server}}","app.server.retrying":"Ponawianie automatycznie...","app.server.otherServers":"Inne serwery","dialog.server.add.usernamePlaceholder":"nazwa użytkownika","dialog.server.add.passwordPlaceholder":"hasło","server.row.noUsername":"brak nazwy użytkownika","session.review.noVcs.createGit.title":"Utwórz repozytorium Git","session.review.noVcs.createGit.description":"Śledź, przeglądaj i cofaj zmiany w tym projekcie","session.review.noVcs.createGit.actionLoading":"Tworzenie repozytorium Git...","session.review.noVcs.createGit.action":"Utwórz repozytorium Git","session.todo.progress":"Ukończono {{done}} z {{total}} zadań","session.question.progress":"{{current}} z {{total}} pytań","session.header.open.finder":"Finder","session.header.open.fileExplorer":"Eksplorator plików","session.header.open.fileManager":"Menedżer plików","session.header.open.app.vscode":"VS Code","session.header.open.app.cursor":"Cursor","session.header.open.app.zed":"Zed","session.header.open.app.textmate":"TextMate","session.header.open.app.antigravity":"Antigravity","session.header.open.app.terminal":"Terminal","session.header.open.app.iterm2":"iTerm2","session.header.open.app.ghostty":"Ghostty","session.header.open.app.warp":"Warp","session.header.open.app.xcode":"Xcode","session.header.open.app.androidStudio":"Android Studio","session.header.open.app.powershell":"PowerShell","session.header.open.app.sublimeText":"Sublime Text","debugBar.ariaLabel":"Diagnostyka wydajności deweloperskiej","debugBar.na":"n.d.","debugBar.nav.label":"NAV","debugBar.nav.tip":"Ostatnie zakończone przejście trasy dotykające strony sesji, mierzone od startu routera do pierwszego odrysowania po ustaleniu.","debugBar.fps.label":"FPS","debugBar.fps.tip":"Średnia liczba klatek na sekundę w ciągu ostatnich 5 sekund.","debugBar.frame.label":"FRAME","debugBar.frame.tip":"Najgorszy czas klatki w ciągu ostatnich 5 sekund.","debugBar.jank.label":"JANK","debugBar.jank.tip":"Klatki powyżej 32ms w ciągu ostatnich 5 sekund.","debugBar.long.label":"LONG","debugBar.long.tip":"Zablokowany czas i liczba długich zadań w ciągu ostatnich 5 sekund. Maksymalne zadanie: {{max}}.","debugBar.delay.label":"DELAY","debugBar.delay.tip":"Najgorsze zaobserwowane opóźnienie wejścia w ciągu ostatnich 5 sekund.","debugBar.inp.label":"INP","debugBar.inp.tip":"Przybliżony czas trwania interakcji w ciągu ostatnich 5 sekund. Jest to podobne do INP, a nie oficjalne Web Vitals INP.","debugBar.cls.label":"CLS","debugBar.cls.tip":"Skumulowane przesunięcie układu dla bieżącego czasu życia aplikacji.","debugBar.mem.label":"MEM","debugBar.mem.tipUnavailable":"Użyta sterta JS vs limit sterty. Tylko Chromium.","debugBar.mem.tip":"Użyta sterta JS vs limit sterty. {{used}} z {{limit}}.","common.key.ctrl":"Ctrl","common.key.alt":"Alt","common.key.shift":"Shift","common.key.meta":"Meta","common.key.space":"Spacja","common.key.backspace":"Backspace","common.key.enter":"Enter","common.key.tab":"Tab","common.key.delete":"Delete","common.key.home":"Home","common.key.end":"End","common.key.pageUp":"Page Up","common.key.pageDown":"Page Down","common.key.insert":"Insert","common.unknown":"nieznany","error.page.circular":"[Cykliczne]","error.globalSDK.noServerAvailable":"Brak dostępnego serwera","error.globalSDK.serverNotAvailable":"Serwer niedostępny","error.childStore.persistedCacheCreateFailed":"Nie udało się utworzyć trwałej pamięci podręcznej","error.childStore.persistedProjectMetadataCreateFailed":"Nie udało się utworzyć trwałych metadanych projektu","error.childStore.persistedProjectIconCreateFailed":"Nie udało się utworzyć trwałej ikony projektu","error.childStore.storeCreateFailed":"Nie udało się utworzyć magazynu","terminal.connectionLost.abnormalClose":"WebSocket zamknięty nieprawidłowo: {{code}}"};export{e as dict};
@@ -0,0 +1,2 @@
1
+ import{T as oe,V as ce,bC as se,at as de,di as me,B as E,dj as ue,ab as ge,dk as pe,az as U,b3 as fe,dl as X,bk as G,i as r,b as c,dm as he,S as P,m as R,dn as Y,dp as q,dq as be,f as I,s as ae,t as b,d as ie,db as ve,c as Z,a as $e,af as ye,A as we,F as _e,dr as xe}from"./index-Cxa2Vk80.js";function Q(i){return{name:"",transport:"local",command:"",environment:"",url:"",headers:"",enabled:!0,...i}}function le(i){const n=[],u=/"([^"]*)"|'([^']*)'|(\S+)/g;let e;for(;e=u.exec(i.trim());)n.push(e[1]??e[2]??e[3]??"");return n.filter(g=>g.length>0)}function Ce(i){return i.map(n=>/[\s"']/.test(n)?`"${n.replaceAll('"','\\"')}"`:n).join(" ")}function ee(i){const n={};for(const u of i.split(/\r?\n/)){const e=u.trim();if(!e||e.startsWith("#"))continue;const g=e.indexOf("=");if(g<=0)continue;const k=e.slice(0,g).trim(),v=e.slice(g+1).trim();k&&(n[k]=v)}return Object.keys(n).length>0?n:void 0}function te(i){return i?Object.entries(i).map(([n,u])=>`${n}=${u}`).join(`
2
+ `):""}function Se(i,n){return n.type==="remote"?Q({name:i,transport:"remote",url:n.url??"",headers:te(n.headers),enabled:n.enabled!==!1}):Q({name:i,transport:"local",command:Ce(n.command??[]),environment:te(n.environment),enabled:n.enabled!==!1})}function Pe(i,n,u){const e=i.name.trim();if(!e)return"name";if(e!==u&&n.includes(e))return"duplicate";if(i.transport==="local")return le(i.command).length===0?"command":void 0;if(!i.url.trim())return"url"}function ke(i){const n=i.enabled;return i.transport==="remote"?{type:"remote",url:i.url.trim(),enabled:n,headers:ee(i.headers)}:{type:"local",command:le(i.command),enabled:n,environment:ee(i.environment)}}var Me=b('<div class=os-wb-ssh-list-shell><div class=os-wb-ssh-toolbar><button type=button class="os-wb-ssh-action os-wb-ssh-action-primary">'),Fe=b("<div class=os-wb-mcp-panel>"),re=b('<div class="flex flex-col gap-5">'),Ee=b('<p class="text-12-regular text-text-critical-base">'),Ke=b('<div class=os-wb-ssh-form-shell><button type=button class=os-wb-ssh-form-back>← 返回列表</button><div class="min-h-0 flex-1 overflow-y-auto pr-1"><div class="os-wb-ssh-form-card flex flex-col gap-5 p-5"><div class="flex flex-col gap-2"><span class="text-12-medium text-text-strong"></span></div><div class="flex items-center justify-between gap-3 rounded-xl border border-[#e8ebf0] px-3 py-3"><div class="flex flex-col gap-1"><span class="text-13-medium text-text-strong"></span><span class="text-12-regular text-text-weak"></span></div></div></div></div><div class=os-wb-ssh-form-actions><button type=button class=os-wb-ssh-action></button><button type=button class="os-wb-ssh-action os-wb-ssh-action-primary">'),je=b("<span class=os-wb-ssh-row-badge>"),Le=b("<span class=os-wb-ssh-row-meta>"),Oe=b("<span class=os-wb-ssh-row-path>"),Ae=b('<div class=os-wb-ssh-row><div class="flex flex-col gap-0.5 min-w-0 flex-1"><div class="flex items-center gap-2 min-w-0"><span class=os-wb-ssh-row-title></span></div></div><div class="flex items-center gap-2 shrink-0"><button type=button class=os-wb-ssh-action>');const qe={connected:"mcp.status.connected",failed:"mcp.status.failed",needs_auth:"mcp.status.needs_auth",disabled:"mcp.status.disabled"},ne={name:"dialog.mcp.error.name",command:"dialog.mcp.error.command",url:"dialog.mcp.error.url",duplicate:"dialog.mcp.error.duplicate"};function Qe(i={}){const n=oe(),u=ce(),e=se(),g=de(),k=me(),v=E(()=>ue(ge())?.trim()||n.data.path.directory?.trim()||""),K=E(()=>u.createClient({directory:v()||void 0,throwOnError:!0})),V=pe(()=>({...k.mcp(U(v()||"__mcp__")),enabled:!!v()})),[s,$]=fe({mode:i.initialMode==="add"?"form":"list",editing:void 0,form:Q(),error:""}),C=E(()=>n.data.config.mcp??{}),S=E(()=>V.data??{}),W=E(()=>{const t=new Set([...Object.keys(C()),...Object.keys(S())]);return Array.from(t).map(l=>({name:l,status:S()[l]?.status??(C()[l]?"disabled":void 0)})).sort((l,f)=>l.name.localeCompare(f.name))}),T=E(()=>Object.keys(C())),w=t=>$("form",t),D=()=>{if(v())return g.refetchQueries(k.mcp(U(v())))},p=X(()=>({mutationFn:async t=>{S()[t]?.status==="connected"?await K().mcp.disconnect({name:t}):await K().mcp.connect({name:t})},onSuccess:()=>D(),onError:t=>{G({variant:"error",title:e.t("common.requestFailed"),description:t instanceof Error?t.message:String(t)})}})),m=X(()=>({mutationFn:async()=>{const t=Pe(s.form,T(),s.editing);if(t)throw $("error",e.t(ne[t])),new Error(t);$("error","");const l=s.form.name.trim(),f=ke(s.form),x={...C()};return s.editing&&s.editing!==l&&delete x[s.editing],x[l]=f,await n.updateConfig({mcp:x}),f.enabled!==!1&&await K().mcp.add({name:l,config:f}).catch(()=>{}),l},onSuccess:async()=>{G({title:e.t("dialog.mcp.toast.saved")});const t=async()=>{await Promise.all([D(),g.invalidateQueries({queryKey:["config"]})])};await t(),setTimeout(()=>void t(),500),setTimeout(()=>void t(),1500),_()},onError:t=>{t instanceof Error&&t.message in ne||G({variant:"error",title:e.t("common.requestFailed"),description:t instanceof Error?t.message:String(t)})}}));function _(){$({mode:"list",editing:void 0,form:Q(),error:""})}function M(){$({mode:"form",editing:void 0,form:Q(),error:""})}function H(t){const l=C()[t];if(!l||!("type"in l)){G({variant:"error",title:e.t("dialog.mcp.error.missingConfig")});return}$({mode:"form",editing:t,form:Se(t,l),error:""})}return(()=>{var t=Fe();return r(t,c(P,{get when(){return s.mode==="list"},get fallback(){return(()=>{var l=Ke(),f=l.firstChild,x=f.nextSibling,d=x.firstChild,y=d.firstChild,B=y.firstChild,j=y.nextSibling,z=j.firstChild,h=z.firstChild,O=h.nextSibling,A=x.nextSibling,L=A.firstChild,F=L.nextSibling;return f.$$click=_,r(d,c(q,{get label(){return e.t("dialog.mcp.form.name")},get placeholder(){return e.t("dialog.mcp.form.namePlaceholder")},get value(){return s.form.name},get disabled(){return m.isPending||!!s.editing},onChange:a=>w({name:a})}),y),r(B,()=>e.t("dialog.mcp.form.transport")),r(y,c(be,{options:["local","remote"],get current(){return s.form.transport},value:a=>a,label:a=>a==="local"?e.t("dialog.mcp.form.transport.local"):e.t("dialog.mcp.form.transport.remote"),onSelect:a=>{!a||m.isPending||w({transport:a})}}),null),r(d,c(P,{get when(){return s.form.transport==="local"},get fallback(){return(()=>{var a=re();return r(a,c(q,{get label(){return e.t("dialog.mcp.form.url")},get placeholder(){return e.t("dialog.mcp.form.urlPlaceholder")},get value(){return s.form.url},get disabled(){return m.isPending},onChange:o=>w({url:o})}),null),r(a,c(q,{multiline:!0,get label(){return e.t("dialog.mcp.form.headers")},get placeholder(){return e.t("dialog.mcp.form.headersPlaceholder")},get value(){return s.form.headers},get disabled(){return m.isPending},onChange:o=>w({headers:o}),class:"min-h-24"}),null),a})()},get children(){var a=re();return r(a,c(q,{get label(){return e.t("dialog.mcp.form.command")},get placeholder(){return e.t("dialog.mcp.form.commandPlaceholder")},get value(){return s.form.command},get disabled(){return m.isPending},onChange:o=>w({command:o})}),null),r(a,c(q,{multiline:!0,get label(){return e.t("dialog.mcp.form.environment")},get placeholder(){return e.t("dialog.mcp.form.environmentPlaceholder")},get value(){return s.form.environment},get disabled(){return m.isPending},onChange:o=>w({environment:o}),class:"min-h-24"}),null),a}}),j),r(h,()=>e.t("dialog.mcp.form.enabled")),r(O,()=>e.t("dialog.mcp.form.enabledDescription")),r(j,c(Y,{get checked(){return s.form.enabled},get disabled(){return m.isPending},onChange:a=>w({enabled:a})}),null),r(d,c(P,{get when(){return s.error},get children(){var a=Ee();return r(a,()=>s.error),a}}),null),L.$$click=_,r(L,()=>e.t("common.cancel")),F.$$click=()=>{m.isPending||m.mutate()},r(F,(()=>{var a=R(()=>!!m.isPending);return()=>a()?e.t("common.saving"):e.t("common.save")})()),I(a=>{var o=m.isPending,J=m.isPending;return o!==a.e&&(L.disabled=a.e=o),J!==a.t&&(F.disabled=a.t=J),a},{e:void 0,t:void 0}),l})()},get children(){var l=Me(),f=l.firstChild,x=f.firstChild;return r(l,c(he,{get search(){return{placeholder:e.t("common.search.placeholder"),autofocus:!0}},get emptyMessage(){return e.t("dialog.mcp.empty")},key:d=>d?.name??"",items:W,filterKeys:["name","status"],sortBy:(d,y)=>d.name.localeCompare(y.name),class:"os-wb-ssh-list flex-1 min-h-0",onSelect:d=>{!d||p.isPending||p.mutate(d.name)},children:d=>{const y=()=>S()[d.name]?.status??d.status,B=()=>{const h=y()?qe[y()]:void 0;if(h)return e.t(h)},j=()=>{const h=S()[d.name];return h?.status==="failed"?h.error:void 0},z=()=>y()==="connected";return(()=>{var h=Ae(),O=h.firstChild,A=O.firstChild,L=A.firstChild,F=O.nextSibling,a=F.firstChild;return r(L,()=>d.name),r(A,c(P,{get when(){return B()},get children(){var o=je();return r(o,B),o}}),null),r(A,c(P,{get when(){return R(()=>!!p.isPending)()&&p.variables===d.name},get children(){var o=Le();return r(o,()=>e.t("common.loading.ellipsis")),o}}),null),r(O,c(P,{get when(){return j()},get children(){var o=Oe();return r(o,j),o}}),null),F.$$click=o=>o.stopPropagation(),a.$$click=()=>H(d.name),r(a,()=>e.t("common.edit")),r(F,c(Y,{get checked(){return z()},get disabled(){return R(()=>!!p.isPending)()&&p.variables===d.name},onChange:()=>{p.isPending||p.mutate(d.name)}}),null),h})()}}),f),x.$$click=M,r(x,()=>e.t("dialog.mcp.addButton")),l}})),I(()=>ae(t,"data-mode",s.mode)),t})()}ie(["click"]);var Te=b('<div class="os-client-capability-page os-client-resources-page"><header class=os-client-resources-head><div class=os-client-resources-head-copy><h2>资源配置</h2><p>SSH 连接与 MCP 工具链接</p></div></header><section class=os-client-capability-selector aria-label=资源配置><div class=os-client-capability-current-domain><span>当前配置:</span><strong></strong><small></small></div><div class=os-client-capability-domain-row role=tablist aria-label=资源配置类型></div></section><div class="os-client-capability-page-body os-client-resources-body">'),De=b("<button type=button>");const N=[{id:"ssh",label:"SSH 连接",descriptionKey:"dialog.ssh.description"},{id:"mcp",label:"MCP 链接",descriptionKey:"dialog.server.mcp.description"}];function Be(){const i=se(),[n,u]=ve(),[e,g]=Z("ssh"),[k,v]=Z(!1);$e(()=>{const s=n.section==="mcp"?"mcp":"ssh";g(s),v(s==="mcp"&&n.mode==="add")});const K=E(()=>N.find(s=>s.id===e())??N[0]),V=s=>{g(s),v(!1),u({section:s==="ssh"?void 0:s,mode:void 0},{replace:!0})};return(()=>{var s=Te(),$=s.firstChild;$.firstChild;var C=$.nextSibling,S=C.firstChild,W=S.firstChild,T=W.nextSibling,w=T.nextSibling,D=S.nextSibling,p=C.nextSibling;return r($,c(we,{get href(){return ye()},class:"os-client-resources-close","aria-label":"关闭资源配置",children:"×"}),null),r(T,()=>K().label),r(w,()=>i.t(K().descriptionKey)),r(D,c(_e,{each:N,children:m=>(()=>{var _=De();return _.$$click=()=>V(m.id),r(_,()=>m.label),I(M=>{var H=m.id===e(),t=m.id===e();return H!==M.e&&_.classList.toggle("is-active",M.e=H),t!==M.t&&ae(_,"aria-pressed",M.t=t),M},{e:void 0,t:void 0}),_})()})),r(p,c(P,{get when(){return e()==="ssh"},get children(){return c(xe,{variant:"page"})}}),null),r(p,c(P,{get when(){return R(()=>e()==="mcp")()?k()?"add":"list":!1},keyed:!0,children:m=>c(Qe,{initialMode:m==="add"?"add":void 0})}),null),s})()}ie(["click"]);export{Be as WorkbenchResourcesPage};
@@ -0,0 +1,3 @@
1
+ const e={"command.category.suggested":"Предложено","command.category.view":"Просмотр","command.category.project":"Проект","command.category.provider":"Провайдер","command.category.server":"Сервер","command.category.session":"Сессия","command.category.theme":"Тема","command.category.language":"Язык","command.category.file":"Файл","command.category.context":"Контекст","command.category.terminal":"Терминал","command.category.model":"Модель","command.category.mcp":"MCP","command.category.agent":"Агент","command.category.permissions":"Разрешения","command.category.workspace":"Рабочее пространство","command.category.settings":"Настройки","theme.scheme.system":"Системная","theme.scheme.light":"Светлая","theme.scheme.dark":"Тёмная","command.sidebar.toggle":"Переключить боковую панель","command.project.open":"Открыть проект","command.provider.connect":"Подключить провайдера","command.server.switch":"Переключить сервер","command.settings.open":"Открыть настройки","command.session.previous":"Предыдущая сессия","command.session.next":"Следующая сессия","command.session.previous.unseen":"Предыдущая непрочитанная сессия","command.session.next.unseen":"Следующая непрочитанная сессия","command.session.archive":"Архивировать сессию","command.palette":"Палитра команд","command.theme.cycle":"Цикл тем","command.theme.set":"Использовать тему: {{theme}}","command.theme.scheme.cycle":"Цикл цветовой схемы","command.theme.scheme.set":"Использовать цветовую схему: {{scheme}}","command.language.cycle":"Цикл языков","command.language.set":"Использовать язык: {{language}}","command.session.new":"Новая сессия","command.file.open":"Открыть файл","command.tab.close":"Закрыть вкладку","command.context.addSelection":"Добавить выделение в контекст","command.context.addSelection.description":"Добавить выбранные строки из текущего файла","command.input.focus":"Фокус на поле ввода","command.terminal.toggle":"Переключить терминал","command.fileTree.toggle":"Переключить дерево файлов","command.review.toggle":"Переключить обзор","command.terminal.new":"Новый терминал","command.terminal.new.description":"Создать новую вкладку терминала","command.steps.toggle":"Переключить шаги","command.steps.toggle.description":"Показать или скрыть шаги для текущего сообщения","command.message.previous":"Предыдущее сообщение","command.message.previous.description":"Перейти к предыдущему сообщению пользователя","command.message.next":"Следующее сообщение","command.message.next.description":"Перейти к следующему сообщению пользователя","command.model.choose":"Выбрать модель","command.model.choose.description":"Выбрать другую модель","command.mcp.toggle":"Переключить MCP","command.mcp.toggle.description":"Переключить MCP","command.agent.cycle":"Цикл агентов","command.agent.cycle.description":"Переключиться к следующему агенту","command.agent.cycle.reverse":"Цикл агентов назад","command.agent.cycle.reverse.description":"Переключиться к предыдущему агенту","command.model.variant.cycle":"Цикл режимов мышления","command.model.variant.cycle.description":"Переключиться к следующему уровню усилий","command.prompt.mode.shell":"Оболочка","command.prompt.mode.normal":"Промпт","command.permissions.autoaccept.enable":"Автоматически принимать разрешения","command.permissions.autoaccept.disable":"Остановить автоматическое принятие разрешений","command.workspace.toggle":"Переключить рабочие пространства","command.workspace.toggle.description":"Включить или отключить несколько рабочих пространств в боковой панели","command.session.undo":"Отменить","command.session.undo.description":"Отменить последнее сообщение","command.session.redo":"Повторить","command.session.redo.description":"Повторить отменённое сообщение","command.session.compact":"Сжать сессию","command.session.compact.description":"Сократить сессию для уменьшения размера контекста","command.session.fork":"Создать ответвление","command.session.fork.description":"Создать новую сессию из сообщения","command.session.share":"Поделиться сессией","command.session.share.description":"Поделиться сессией и скопировать URL в буфер обмена","command.session.unshare":"Отменить публикацию","command.session.unshare.description":"Прекратить публикацию сессии","palette.search.placeholder":"Поиск файлов, команд и сессий","palette.empty":"Ничего не найдено","palette.group.commands":"Команды","palette.group.files":"Файлы","dialog.provider.search.placeholder":"Поиск провайдеров","dialog.provider.empty":"Провайдеры не найдены","dialog.provider.group.popular":"Популярные","dialog.provider.group.other":"Другие","dialog.provider.tag.recommended":"Рекомендуемые","dialog.provider.tag.connected":"Подключено","dialog.provider.opencode.note":"Отобранные модели, включая Claude, GPT, Gemini и другие","dialog.provider.opencode.tagline":"Надежные оптимизированные модели","dialog.provider.opencodeGo.tagline":"Доступная подписка для всех","dialog.provider.anthropic.note":"Прямой доступ к моделям Claude, включая Pro и Max","dialog.provider.copilot.note":"ИИ-модели для помощи в кодировании через GitHub Copilot","dialog.provider.openai.note":"Модели GPT для быстрых и мощных задач общего ИИ","dialog.provider.google.note":"Модели Gemini для быстрых и структурированных ответов","dialog.provider.openrouter.note":"Доступ ко всем поддерживаемым моделям через одного провайдера","dialog.provider.vercel.note":"Единый доступ к ИИ-моделям с умной маршрутизацией","dialog.model.select.title":"Выбрать модель","dialog.model.search.placeholder":"Поиск моделей","dialog.model.empty":"Модели не найдены","dialog.model.manage":"Управление моделями","dialog.model.manage.description":"Настройте какие модели появляются в выборе модели","dialog.model.manage.provider.toggle":"Переключить все модели {{provider}}","dialog.model.unpaid.freeModels.title":"Бесплатные модели от OpenCode","dialog.model.unpaid.addMore.title":"Добавьте больше моделей от популярных провайдеров","dialog.provider.viewAll":"Показать больше провайдеров","provider.connect.title":"Подключить {{provider}}","provider.connect.title.anthropicProMax":"Войти с помощью Claude Pro/Max","provider.connect.selectMethod":"Выберите способ входа для {{provider}}.","provider.connect.method.apiKey":"API ключ","provider.connect.status.inProgress":"Авторизация...","provider.connect.status.waiting":"Ожидание авторизации...","provider.connect.status.failed":"Ошибка авторизации: {{error}}","provider.connect.apiKey.description":"Введите ваш API ключ {{provider}} для подключения аккаунта и использования моделей {{provider}} в OpenCode.","provider.connect.apiKey.label":"{{provider}} API ключ","provider.connect.apiKey.placeholder":"API ключ","provider.connect.apiKey.required":"API ключ обязателен","provider.connect.opencodeZen.line1":"OpenCode Zen даёт вам доступ к отобранным надёжным оптимизированным моделям для агентов программирования.","provider.connect.opencodeZen.line2":"С одним API ключом вы получите доступ к таким моделям как Claude, GPT, Gemini, GLM и другим.","provider.connect.opencodeZen.visit.prefix":"Посетите ","provider.connect.opencodeZen.visit.link":"opencode.ai/zen","provider.connect.opencodeZen.visit.suffix":" чтобы получить ваш API ключ.","provider.connect.oauth.code.visit.prefix":"Посетите ","provider.connect.oauth.code.visit.link":"эту ссылку","provider.connect.oauth.code.visit.suffix":" чтобы получить код авторизации для подключения аккаунта и использования моделей {{provider}} в OpenCode.","provider.connect.oauth.code.label":"{{method}} код авторизации","provider.connect.oauth.code.placeholder":"Код авторизации","provider.connect.oauth.code.required":"Код авторизации обязателен","provider.connect.oauth.code.invalid":"Неверный код авторизации","provider.connect.oauth.auto.visit.prefix":"Посетите ","provider.connect.oauth.auto.visit.link":"эту ссылку","provider.connect.oauth.auto.visit.suffix":" и введите код ниже для подключения аккаунта и использования моделей {{provider}} в OpenCode.","provider.connect.oauth.auto.confirmationCode":"Код подтверждения","provider.connect.toast.connected.title":"{{provider}} подключён","provider.connect.toast.connected.description":"Модели {{provider}} теперь доступны.","provider.custom.title":"Пользовательский провайдер","provider.custom.description.prefix":"Настройте OpenAI-совместимого провайдера. См. ","provider.custom.description.link":"документацию по настройке провайдера","provider.custom.description.suffix":".","provider.custom.field.providerID.label":"ID провайдера","provider.custom.field.providerID.placeholder":"myprovider","provider.custom.field.providerID.description":"Строчные буквы, цифры, дефисы или подчёркивания","provider.custom.field.name.label":"Отображаемое имя","provider.custom.field.name.placeholder":"Мой AI провайдер","provider.custom.field.baseURL.label":"Базовый URL","provider.custom.field.baseURL.placeholder":"https://api.myprovider.com/v1","provider.custom.field.apiKey.label":"API ключ","provider.custom.field.apiKey.placeholder":"API ключ","provider.custom.field.apiKey.description":"Необязательно. Оставьте пустым, если управляете авторизацией через заголовки.","provider.custom.models.label":"Модели","provider.custom.models.id.label":"ID","provider.custom.models.id.placeholder":"model-id","provider.custom.models.name.label":"Имя","provider.custom.models.name.placeholder":"Отображаемое имя","provider.custom.models.remove":"Удалить модель","provider.custom.models.add":"Добавить модель","provider.custom.headers.label":"Заголовки (необязательно)","provider.custom.headers.key.label":"Заголовок","provider.custom.headers.key.placeholder":"Header-Name","provider.custom.headers.value.label":"Значение","provider.custom.headers.value.placeholder":"значение","provider.custom.headers.remove":"Удалить заголовок","provider.custom.headers.add":"Добавить заголовок","provider.custom.error.providerID.required":"Требуется ID провайдера","provider.custom.error.providerID.format":"Используйте строчные буквы, цифры, дефисы или подчёркивания","provider.custom.error.providerID.exists":"Такой ID провайдера уже существует","provider.custom.error.name.required":"Требуется отображаемое имя","provider.custom.error.baseURL.required":"Требуется базовый URL","provider.custom.error.baseURL.format":"Должен начинаться с http:// или https://","provider.custom.error.required":"Обязательно","provider.custom.error.duplicate":"Дубликат","provider.disconnect.toast.disconnected.title":"{{provider}} отключён","provider.disconnect.toast.disconnected.description":"Модели {{provider}} больше недоступны.","model.tag.free":"Бесплатно","model.tag.latest":"Последняя","model.provider.anthropic":"Anthropic","model.provider.openai":"OpenAI","model.provider.google":"Google","model.provider.xai":"xAI","model.provider.meta":"Meta","model.input.text":"текст","model.input.image":"изображение","model.input.audio":"аудио","model.input.video":"видео","model.input.pdf":"pdf","model.tooltip.allows":"Разрешено: {{inputs}}","model.tooltip.reasoning.allowed":"Разрешает рассуждение","model.tooltip.reasoning.none":"Без рассуждения","model.tooltip.context":"Лимит контекста {{limit}}","common.search.placeholder":"Поиск","common.goBack":"Назад","common.goForward":"Вперёд","common.loading":"Загрузка","common.loading.ellipsis":"...","common.cancel":"Отмена","common.connect":"Подключить","common.disconnect":"Отключить","common.continue":"Отправить","common.submit":"Отправить","common.save":"Сохранить","common.saving":"Сохранение...","common.default":"По умолчанию","common.attachment":"вложение","prompt.placeholder.shell":"Введите команду оболочки... {{example}}","prompt.placeholder.normal":'Спросите что угодно... "{{example}}"',"prompt.placeholder.simple":"Спросите что угодно...","prompt.placeholder.summarizeComments":"Суммировать комментарии…","prompt.placeholder.summarizeComment":"Суммировать комментарий…","prompt.mode.shell":"Оболочка","prompt.mode.normal":"Промпт","prompt.mode.shell.exit":"esc для выхода","prompt.example.1":"Исправить TODO в коде","prompt.example.2":"Какой технологический стек этого проекта?","prompt.example.3":"Исправить сломанные тесты","prompt.example.4":"Объясни как работает аутентификация","prompt.example.5":"Найти и исправить уязвимости безопасности","prompt.example.6":"Добавить юнит-тесты для сервиса пользователя","prompt.example.7":"Рефакторить эту функцию для лучшей читаемости","prompt.example.8":"Что означает эта ошибка?","prompt.example.9":"Помоги мне отладить эту проблему","prompt.example.10":"Сгенерировать документацию API","prompt.example.11":"Оптимизировать запросы к базе данных","prompt.example.12":"Добавить валидацию ввода","prompt.example.13":"Создать новый компонент для...","prompt.example.14":"Как развернуть этот проект?","prompt.example.15":"Проверь мой код на лучшие практики","prompt.example.16":"Добавить обработку ошибок в эту функцию","prompt.example.17":"Объясни этот паттерн regex","prompt.example.18":"Конвертировать это в TypeScript","prompt.example.19":"Добавить логирование по всему проекту","prompt.example.20":"Какие зависимости устарели?","prompt.example.21":"Помоги написать скрипт миграции","prompt.example.22":"Реализовать кэширование для этой конечной точки","prompt.example.23":"Добавить пагинацию в этот список","prompt.example.24":"Создать CLI команду для...","prompt.example.25":"Как работают переменные окружения здесь?","prompt.popover.emptyResults":"Нет совпадений","prompt.popover.emptyCommands":"Нет совпадающих команд","prompt.dropzone.label":"Перетащите сюда изображения, PDF или текстовые файлы","prompt.dropzone.file.label":"Отпустите для @упоминания файла","prompt.slash.badge.custom":"своё","prompt.slash.badge.skill":"навык","prompt.slash.badge.mcp":"mcp","prompt.context.active":"активно","prompt.context.includeActiveFile":"Включить активный файл","prompt.context.removeActiveFile":"Удалить активный файл из контекста","prompt.context.removeFile":"Удалить файл из контекста","prompt.action.attachFile":"Прикрепить файл","prompt.attachment.remove":"Удалить вложение","prompt.action.send":"Отправить","prompt.action.stop":"Остановить","prompt.toast.pasteUnsupported.title":"Неподдерживаемое вложение","prompt.toast.pasteUnsupported.description":"Здесь можно прикрепить только изображения, PDF или текстовые файлы.","prompt.toast.modelAgentRequired.title":"Выберите агента и модель","prompt.toast.modelAgentRequired.description":"Выберите агента и модель перед отправкой запроса.","prompt.toast.worktreeCreateFailed.title":"Не удалось создать worktree","prompt.toast.sessionCreateFailed.title":"Не удалось создать сессию","prompt.toast.shellSendFailed.title":"Не удалось отправить команду оболочки","prompt.toast.commandSendFailed.title":"Не удалось отправить команду","prompt.toast.promptSendFailed.title":"Не удалось отправить запрос","prompt.toast.promptSendFailed.description":"Не удалось получить сессию","dialog.mcp.title":"MCP","dialog.mcp.description":"{{enabled}} из {{total}} включено","dialog.mcp.empty":"MCP не настроены","dialog.lsp.empty":"LSP автоматически обнаружены по типам файлов","dialog.plugins.empty":"Плагины настроены в opencode.json","mcp.status.connected":"подключено","mcp.status.failed":"ошибка","mcp.status.needs_auth":"требуется авторизация","mcp.status.disabled":"отключено","dialog.fork.empty":"Нет сообщений для ответвления","dialog.directory.search.placeholder":"Поиск папок","dialog.directory.empty":"Папки не найдены","dialog.server.title":"Серверы","dialog.server.description":"Переключите сервер OneCode к которому подключается приложение.","dialog.server.search.placeholder":"Поиск серверов","dialog.server.empty":"Серверов пока нет","dialog.server.add.title":"Добавить сервер","dialog.server.add.url":"URL сервера","dialog.server.add.placeholder":"http://127.0.0.1:4096","dialog.server.add.error":"Не удалось подключиться к серверу","dialog.server.add.checking":"Проверка...","dialog.server.add.button":"Добавить сервер","dialog.server.add.name":"Имя сервера (необязательно)","dialog.server.add.namePlaceholder":"Localhost","dialog.server.add.username":"Имя пользователя (необязательно)","dialog.server.add.password":"Пароль (необязательно)","dialog.server.edit.title":"Редактировать сервер","dialog.server.default.title":"Сервер по умолчанию","dialog.server.default.description":"Подключаться к этому серверу при запуске приложения вместо запуска локального сервера. Требуется перезапуск.","dialog.server.default.none":"Сервер не выбран","dialog.server.default.set":"Установить текущий сервер по умолчанию","dialog.server.default.clear":"Очистить","dialog.server.action.remove":"Удалить сервер","dialog.server.menu.edit":"Редактировать","dialog.server.menu.default":"Сделать по умолчанию","dialog.server.menu.defaultRemove":"Удалить по умолчанию","dialog.server.menu.delete":"Удалить","dialog.server.current":"Текущий сервер","dialog.server.status.default":"По умолч.","dialog.project.edit.title":"Редактировать проект","dialog.project.edit.name":"Название","dialog.project.edit.icon":"Иконка","dialog.project.edit.icon.alt":"Иконка проекта","dialog.project.edit.icon.hint":"Нажмите или перетащите изображение","dialog.project.edit.icon.recommended":"Рекомендуется: 128x128px","dialog.project.edit.color":"Цвет","dialog.project.edit.color.select":"Выбрать цвет {{color}}","dialog.project.edit.worktree.startup":"Скрипт запуска рабочего пространства","dialog.project.edit.worktree.startup.description":"Запускается после создания нового рабочего пространства (worktree).","dialog.project.edit.worktree.startup.placeholder":"например, bun install","context.breakdown.title":"Разбивка контекста","context.breakdown.note":'Приблизительная разбивка входных токенов. "Другое" включает определения инструментов и накладные расходы.',"context.breakdown.system":"Система","context.breakdown.user":"Пользователь","context.breakdown.assistant":"Ассистент","context.breakdown.tool":"Вызовы инструментов","context.breakdown.other":"Другое","context.systemPrompt.title":"Системный промпт","context.rawMessages.title":"Исходные сообщения","context.stats.session":"Сессия","context.stats.messages":"Сообщения","context.stats.provider":"Провайдер","context.stats.model":"Модель","context.stats.limit":"Лимит контекста","context.stats.totalTokens":"Всего токенов","context.stats.usage":"Использование","context.stats.inputTokens":"Входные токены","context.stats.outputTokens":"Выходные токены","context.stats.reasoningTokens":"Токены рассуждения","context.stats.cacheTokens":"Токены кэша (чтение/запись)","context.stats.userMessages":"Сообщения пользователя","context.stats.assistantMessages":"Сообщения ассистента","context.stats.totalCost":"Общая стоимость","context.stats.sessionCreated":"Сессия создана","context.stats.lastActivity":"Последняя активность","context.usage.tokens":"Токены","context.usage.usage":"Использование","context.usage.cost":"Стоимость","context.usage.clickToView":"Нажмите для просмотра контекста","context.usage.view":"Показать использование контекста","language.en":"English","language.zh":"简体中文","language.zht":"繁體中文","language.ko":"한국어","language.de":"Deutsch","language.es":"Español","language.fr":"Français","language.da":"Dansk","language.ja":"日本語","language.pl":"Polski","language.ru":"Русский","language.ar":"العربية","language.no":"Norsk","language.br":"Português (Brasil)","language.bs":"Bosanski","language.th":"ไทย","language.tr":"Türkçe","toast.language.title":"Язык","toast.language.description":"Переключено на {{language}}","toast.theme.title":"Тема переключена","toast.scheme.title":"Цветовая схема","toast.permissions.autoaccept.on.title":"Разрешения принимаются автоматически","toast.permissions.autoaccept.on.description":"Запросы на разрешения будут одобряться автоматически","toast.permissions.autoaccept.off.title":"Автоматическое принятие разрешений остановлено","toast.permissions.autoaccept.off.description":"Запросы на разрешения будут требовать одобрения","toast.workspace.enabled.title":"Рабочие пространства включены","toast.workspace.enabled.description":"В боковой панели теперь отображаются несколько рабочих деревьев","toast.workspace.disabled.title":"Рабочие пространства отключены","toast.workspace.disabled.description":"В боковой панели отображается только главное рабочее дерево","toast.model.none.title":"Модель не выбрана","toast.model.none.description":"Подключите провайдера для суммаризации сессии","toast.file.loadFailed.title":"Не удалось загрузить файл","toast.file.listFailed.title":"Не удалось получить список файлов","toast.context.noLineSelection.title":"Нет выделения строк","toast.context.noLineSelection.description":"Сначала выберите диапазон строк во вкладке файла.","toast.session.share.copyFailed.title":"Не удалось скопировать URL в буфер обмена","toast.session.share.success.title":"Сессия опубликована","toast.session.share.success.description":"URL скопирован в буфер обмена!","toast.session.share.failed.title":"Не удалось опубликовать сессию","toast.session.share.failed.description":"Произошла ошибка при публикации сессии","toast.session.unshare.success.title":"Публикация отменена","toast.session.unshare.success.description":"Публикация успешно отменена!","toast.session.unshare.failed.title":"Не удалось отменить публикацию","toast.session.unshare.failed.description":"Произошла ошибка при отмене публикации","toast.session.listFailed.title":"Не удалось загрузить сессии для {{project}}","toast.update.title":"Доступно обновление","toast.update.description":"Новая версия OneCode ({{version}}) доступна для установки.","toast.update.action.installRestart":"Установить и перезапустить","toast.update.action.notYet":"Пока нет","error.page.title":"Что-то пошло не так","error.page.description":"Произошла ошибка при загрузке приложения.","error.page.details.label":"Детали ошибки","error.page.action.restart":"Перезапустить","error.page.action.report":"Сообщить об ошибке","error.page.action.reported":"Об ошибке сообщено","error.page.action.checking":"Проверка...","error.page.action.checkUpdates":"Проверить обновления","error.page.action.updateTo":"Обновить до {{version}}","error.page.report.prefix":"Пожалуйста, сообщите об этой ошибке команде OpenCode","error.page.report.discord":"в Discord","error.page.version":"Версия: {{version}}","error.dev.rootNotFound":"Корневой элемент не найден. Вы забыли добавить его в index.html? Или, может быть, атрибут id был написан неправильно?","error.globalSync.connectFailed":"Не удалось подключиться к серверу. Запущен ли сервер по адресу `{{url}}`?","directory.error.invalidUrl":"Недопустимая директория в URL.","error.chain.unknown":"Неизвестная ошибка","error.chain.causedBy":"Причина:","error.chain.apiError":"Ошибка API","error.chain.status":"Статус: {{status}}","error.chain.retryable":"Повторная попытка: {{retryable}}","error.chain.responseBody":`Тело ответа:
2
+ {{body}}`,"error.chain.didYouMean":"Возможно, вы имели в виду: {{suggestions}}","error.chain.modelNotFound":"Модель не найдена: {{provider}}/{{model}}","error.chain.checkConfig":"Проверьте названия провайдера/модели в конфиге (opencode.json)","error.chain.mcpFailed":'MCP сервер "{{name}}" завершился с ошибкой. Обратите внимание, что OpenCode пока не поддерживает MCP авторизацию.',"error.chain.providerAuthFailed":"Ошибка аутентификации провайдера ({{provider}}): {{message}}","error.chain.providerInitFailed":'Не удалось инициализировать провайдера "{{provider}}". Проверьте учётные данные и конфигурацию.',"error.chain.configJsonInvalid":"Конфигурационный файл по адресу {{path}} не является валидным JSON(C)","error.chain.configJsonInvalidWithMessage":"Конфигурационный файл по адресу {{path}} не является валидным JSON(C): {{message}}","error.chain.configDirectoryTypo":'Папка "{{dir}}" в {{path}} невалидна. Переименуйте папку в "{{suggestion}}" или удалите её. Это распространённая опечатка.',"error.chain.configFrontmatterError":`Не удалось разобрать frontmatter в {{path}}:
3
+ {{message}}`,"error.chain.configInvalid":"Конфигурационный файл по адресу {{path}} невалиден","error.chain.configInvalidWithMessage":"Конфигурационный файл по адресу {{path}} невалиден: {{message}}","notification.permission.title":"Требуется разрешение","notification.permission.description":"{{sessionTitle}} в {{projectName}} требуется разрешение","notification.question.title":"Вопрос","notification.question.description":"У {{sessionTitle}} в {{projectName}} есть вопрос","notification.action.goToSession":"Перейти к сессии","notification.session.responseReady.title":"Ответ готов","notification.session.error.title":"Ошибка сессии","notification.session.error.fallbackDescription":"Произошла ошибка","home.recentProjects":"Недавние проекты","home.empty.title":"Нет недавних проектов","home.empty.description":"Начните с открытия локального проекта","session.tab.session":"Сессия","session.tab.review":"Обзор","session.tab.context":"Контекст","session.panel.reviewAndFiles":"Обзор и файлы","session.review.filesChanged":"{{count}} файлов изменено","session.review.change.one":"Изменение","session.review.change.other":"Изменения","session.review.loadingChanges":"Загрузка изменений...","session.review.empty":"Изменений в этой сессии пока нет","session.review.noVcs":"Система контроля версий Git не обнаружена, изменения не отображаются","session.review.noSnapshot":"Отслеживание снимков отключено в настройках, поэтому изменения сессии недоступны","session.review.noChanges":"Нет изменений","session.files.selectToOpen":"Выберите файл, чтобы открыть","session.files.all":"Все файлы","session.files.empty":"Нет файлов","session.files.binaryContent":"Двоичный файл (содержимое не может быть отображено)","session.messages.renderEarlier":"Показать предыдущие сообщения","session.messages.loadingEarlier":"Загрузка предыдущих сообщений...","session.messages.loadEarlier":"Загрузить предыдущие сообщения","session.messages.loading":"Загрузка сообщений...","session.messages.jumpToLatest":"Перейти к последнему","session.context.addToContext":"Добавить {{selection}} в контекст","session.todo.title":"Задачи","session.todo.collapse":"Свернуть","session.todo.expand":"Развернуть","session.followupDock.summary.one":"{{count}} сообщение в очереди","session.followupDock.summary.other":"{{count}} сообщений в очереди","session.followupDock.sendNow":"Отправить сейчас","session.followupDock.edit":"Редактировать","session.followupDock.collapse":"Свернуть сообщения в очереди","session.followupDock.expand":"Развернуть сообщения в очереди","session.revertDock.summary.one":"{{count}} сообщение возвращено","session.revertDock.summary.other":"{{count}} сообщений возвращено","session.revertDock.collapse":"Свернуть возвращённые сообщения","session.revertDock.expand":"Развернуть возвращённые сообщения","session.revertDock.restore":"Восстановить сообщение","session.new.title":"Создавайте что угодно","session.new.worktree.main":"Основная ветка","session.new.worktree.mainWithBranch":"Основная ветка ({{branch}})","session.new.worktree.create":"Создать новый worktree","session.new.lastModified":"Последнее изменение","session.header.search.placeholder":"Поиск {{project}}","session.header.searchFiles":"Поиск файлов","session.header.openIn":"Открыть в","session.header.open.action":"Открыть {{app}}","session.header.open.ariaLabel":"Открыть в {{app}}","session.header.open.menu":"Варианты открытия","session.header.open.copyPath":"Копировать путь","status.popover.trigger":"Статус","status.popover.ariaLabel":"Настройки серверов","status.popover.tab.servers":"Серверы","status.popover.tab.mcp":"MCP","status.popover.tab.lsp":"LSP","status.popover.tab.plugins":"Плагины","status.popover.action.manageServers":"Управлять серверами","session.share.popover.title":"Опубликовать в интернете","session.share.popover.description.shared":"Эта сессия общедоступна. Доступ к ней может получить любой, у кого есть ссылка.","session.share.popover.description.unshared":"Опубликуйте сессию в интернете. Доступ к ней сможет получить любой, у кого есть ссылка.","session.share.action.share":"Поделиться","session.share.action.publish":"Опубликовать","session.share.action.publishing":"Публикация...","session.share.action.unpublish":"Отменить публикацию","session.share.action.unpublishing":"Отмена публикации...","session.share.action.view":"Посмотреть","session.share.copy.copied":"Скопировано","session.share.copy.copyLink":"Копировать ссылку","lsp.tooltip.none":"Нет LSP серверов","lsp.label.connected":"{{count}} LSP","prompt.loading":"Загрузка запроса...","terminal.loading":"Загрузка терминала...","terminal.title":"Терминал","terminal.title.numbered":"Терминал {{number}}","terminal.close":"Закрыть терминал","terminal.connectionLost.title":"Соединение потеряно","terminal.connectionLost.description":"Соединение с терминалом прервано. Это может произойти при перезапуске сервера.","common.closeTab":"Закрыть вкладку","common.dismiss":"Закрыть","common.requestFailed":"Запрос не выполнен","common.moreOptions":"Дополнительные опции","common.learnMore":"Подробнее","common.rename":"Переименовать","common.reset":"Сбросить","common.archive":"Архивировать","common.delete":"Удалить","common.close":"Закрыть","common.edit":"Редактировать","common.loadMore":"Загрузить ещё","common.key.esc":"ESC","sidebar.menu.toggle":"Переключить меню","sidebar.nav.projectsAndSessions":"Проекты и сессии","sidebar.settings":"Настройки","sidebar.help":"Помощь","sidebar.workspaces.enable":"Включить рабочие пространства","sidebar.workspaces.disable":"Отключить рабочие пространства","sidebar.gettingStarted.title":"Начало работы","sidebar.gettingStarted.line1":"OpenCode включает бесплатные модели, чтобы вы могли начать сразу.","sidebar.gettingStarted.line2":"Подключите любого провайдера для использования моделей, включая Claude, GPT, Gemini и др.","sidebar.project.recentSessions":"Недавние сессии","sidebar.project.viewAllSessions":"Посмотреть все сессии","sidebar.project.clearNotifications":"Очистить уведомления","app.name.desktop":"OneCode Desktop","settings.section.desktop":"Приложение","settings.section.server":"Сервер","settings.tab.general":"Основные","settings.tab.shortcuts":"Горячие клавиши","settings.desktop.section.wsl":"WSL","settings.desktop.wsl.title":"Интеграция с WSL","settings.desktop.wsl.description":"Запускать сервер OneCode внутри WSL на Windows.","settings.general.section.appearance":"Внешний вид","settings.general.section.notifications":"Системные уведомления","settings.general.section.updates":"Обновления","settings.general.section.sounds":"Звуковые эффекты","settings.general.section.feed":"Лента","settings.general.section.display":"Дисплей","settings.general.row.language.title":"Язык","settings.general.row.language.description":"Изменить язык отображения OneCode","settings.general.row.appearance.title":"Внешний вид","settings.general.row.appearance.description":"Настройте как OneCode выглядит на вашем устройстве","settings.general.row.colorScheme.title":"Цветовая схема","settings.general.row.colorScheme.description":"Выберите, следует ли OneCode системной, светлой или тёмной теме","settings.general.row.theme.title":"Тема","settings.general.row.theme.description":"Настройте оформление OneCode.","settings.general.row.font.title":"Шрифт кода","settings.general.row.font.description":"Настройте шрифт, используемый в блоках кода","settings.general.row.terminalFont.title":"Terminal Font","settings.general.row.terminalFont.description":"Customise the font used in the terminal","settings.general.row.uiFont.title":"Шрифт интерфейса","settings.general.row.uiFont.description":"Настройте шрифт, используемый во всем интерфейсе","settings.general.row.followup.title":"Поведение уточняющих вопросов","settings.general.row.followup.description":"Выберите, отправлять ли уточняющие вопросы сразу или помещать их в очередь","settings.general.row.followup.option.queue":"Очередь","settings.general.row.followup.option.steer":"Направлять","settings.general.row.reasoningSummaries.title":"Показывать сводки рассуждений","settings.general.row.reasoningSummaries.description":"Отображать сводки рассуждений модели в ленте","settings.general.row.shellToolPartsExpanded.title":"Разворачивать элементы инструмента shell","settings.general.row.shellToolPartsExpanded.description":"Показывать элементы инструмента shell в ленте развернутыми по умолчанию","settings.general.row.editToolPartsExpanded.title":"Разворачивать элементы инструмента edit","settings.general.row.editToolPartsExpanded.description":"Показывать элементы инструментов edit, write и patch в ленте развернутыми по умолчанию","settings.general.row.showSessionProgressBar.title":"Показывать индикатор прогресса сессии","settings.general.row.showSessionProgressBar.description":"Показывать анимированный индикатор прогресса вверху сессии, когда агент работает","settings.general.row.wayland.title":"Использовать нативный Wayland","settings.general.row.wayland.description":"Отключить X11 fallback на Wayland. Требуется перезапуск.","settings.general.row.wayland.tooltip":"На Linux с мониторами разной частоты обновления нативный Wayland может быть стабильнее.","settings.general.row.releaseNotes.title":"Примечания к выпуску","settings.general.row.releaseNotes.description":'Показывать всплывающие окна "Что нового" после обновлений',"settings.updates.row.startup.title":"Проверять обновления при запуске","settings.updates.row.startup.description":"Автоматически проверять обновления при запуске OneCode","settings.updates.row.check.title":"Проверить обновления","settings.updates.row.check.description":"Проверить обновления вручную и установить, если доступны","settings.updates.action.checkNow":"Проверить сейчас","settings.updates.action.checking":"Проверка...","settings.updates.toast.latest.title":"У вас последняя версия","settings.updates.toast.latest.description":"Вы используете последнюю версию OneCode.","sound.option.none":"Нет","sound.option.alert01":"Alert 01","sound.option.alert02":"Alert 02","sound.option.alert03":"Alert 03","sound.option.alert04":"Alert 04","sound.option.alert05":"Alert 05","sound.option.alert06":"Alert 06","sound.option.alert07":"Alert 07","sound.option.alert08":"Alert 08","sound.option.alert09":"Alert 09","sound.option.alert10":"Alert 10","sound.option.bipbop01":"Bip-bop 01","sound.option.bipbop02":"Bip-bop 02","sound.option.bipbop03":"Bip-bop 03","sound.option.bipbop04":"Bip-bop 04","sound.option.bipbop05":"Bip-bop 05","sound.option.bipbop06":"Bip-bop 06","sound.option.bipbop07":"Bip-bop 07","sound.option.bipbop08":"Bip-bop 08","sound.option.bipbop09":"Bip-bop 09","sound.option.bipbop10":"Bip-bop 10","sound.option.staplebops01":"Staplebops 01","sound.option.staplebops02":"Staplebops 02","sound.option.staplebops03":"Staplebops 03","sound.option.staplebops04":"Staplebops 04","sound.option.staplebops05":"Staplebops 05","sound.option.staplebops06":"Staplebops 06","sound.option.staplebops07":"Staplebops 07","sound.option.nope01":"Nope 01","sound.option.nope02":"Nope 02","sound.option.nope03":"Nope 03","sound.option.nope04":"Nope 04","sound.option.nope05":"Nope 05","sound.option.nope06":"Nope 06","sound.option.nope07":"Nope 07","sound.option.nope08":"Nope 08","sound.option.nope09":"Nope 09","sound.option.nope10":"Nope 10","sound.option.nope11":"Nope 11","sound.option.nope12":"Nope 12","sound.option.yup01":"Yup 01","sound.option.yup02":"Yup 02","sound.option.yup03":"Yup 03","sound.option.yup04":"Yup 04","sound.option.yup05":"Yup 05","sound.option.yup06":"Yup 06","settings.general.notifications.agent.title":"Агент","settings.general.notifications.agent.description":"Показывать системное уведомление когда агент завершён или требует внимания","settings.general.notifications.permissions.title":"Разрешения","settings.general.notifications.permissions.description":"Показывать системное уведомление когда требуется разрешение","settings.general.notifications.errors.title":"Ошибки","settings.general.notifications.errors.description":"Показывать системное уведомление когда происходит ошибка","settings.general.sounds.agent.title":"Агент","settings.general.sounds.agent.description":"Воспроизводить звук когда агент завершён или требует внимания","settings.general.sounds.permissions.title":"Разрешения","settings.general.sounds.permissions.description":"Воспроизводить звук когда требуется разрешение","settings.general.sounds.errors.title":"Ошибки","settings.general.sounds.errors.description":"Воспроизводить звук когда происходит ошибка","settings.shortcuts.title":"Горячие клавиши","settings.shortcuts.reset.button":"Сбросить к умолчаниям","settings.shortcuts.reset.toast.title":"Горячие клавиши сброшены","settings.shortcuts.reset.toast.description":"Горячие клавиши были сброшены к значениям по умолчанию.","settings.shortcuts.conflict.title":"Сочетание уже используется","settings.shortcuts.conflict.description":"{{keybind}} уже назначено для {{titles}}.","settings.shortcuts.unassigned":"Не назначено","settings.shortcuts.pressKeys":"Нажмите клавиши","settings.shortcuts.search.placeholder":"Поиск горячих клавиш","settings.shortcuts.search.empty":"Горячие клавиши не найдены","settings.shortcuts.group.general":"Основные","settings.shortcuts.group.session":"Сессия","settings.shortcuts.group.navigation":"Навигация","settings.shortcuts.group.modelAndAgent":"Модель и агент","settings.shortcuts.group.terminal":"Терминал","settings.shortcuts.group.prompt":"Запрос","settings.providers.title":"Провайдеры","settings.providers.description":"Настройки провайдеров будут доступны здесь.","settings.providers.section.connected":"Подключённые провайдеры","settings.providers.connected.empty":"Нет подключённых провайдеров","settings.providers.section.popular":"Популярные провайдеры","settings.providers.tag.environment":"Среда","settings.providers.tag.config":"Конфигурация","settings.providers.tag.custom":"Пользовательский","settings.providers.tag.other":"Другое","settings.models.title":"Модели","settings.models.description":"Настройки моделей будут доступны здесь.","settings.agents.title":"Агенты","settings.agents.description":"Настройки агентов будут доступны здесь.","settings.commands.title":"Команды","settings.commands.description":"Настройки команд будут доступны здесь.","settings.mcp.title":"MCP","settings.mcp.description":"Настройки MCP будут доступны здесь.","settings.permissions.title":"Разрешения","settings.permissions.description":"Контролируйте какие инструменты сервер может использовать по умолчанию.","settings.permissions.section.tools":"Инструменты","settings.permissions.toast.updateFailed.title":"Не удалось обновить разрешения","settings.permissions.action.allow":"Разрешить","settings.permissions.action.ask":"Спрашивать","settings.permissions.action.deny":"Запретить","settings.permissions.tool.read.title":"Чтение","settings.permissions.tool.read.description":"Чтение файла (по совпадению пути)","settings.permissions.tool.edit.title":"Редактирование","settings.permissions.tool.edit.description":"Изменение файлов, включая редактирование, запись, патчи и мульти-редактирование","settings.permissions.tool.glob.title":"Glob","settings.permissions.tool.glob.description":"Сопоставление файлов по паттернам glob","settings.permissions.tool.grep.title":"Grep","settings.permissions.tool.grep.description":"Поиск по содержимому файлов с использованием регулярных выражений","settings.permissions.tool.list.title":"List","settings.permissions.tool.list.description":"Список файлов в директории","settings.permissions.tool.bash.title":"Bash","settings.permissions.tool.bash.description":"Запуск команд оболочки","settings.permissions.tool.task.title":"Task","settings.permissions.tool.task.description":"Запуск подагентов","settings.permissions.tool.skill.title":"Skill","settings.permissions.tool.skill.description":"Загрузка навыка по имени","settings.permissions.tool.lsp.title":"LSP","settings.permissions.tool.lsp.description":"Запросы к языковому серверу","settings.permissions.tool.todowrite.title":"Todo Write","settings.permissions.tool.todowrite.description":"Обновление списка задач","settings.permissions.tool.webfetch.title":"Web Fetch","settings.permissions.tool.webfetch.description":"Получение контента по URL","settings.permissions.tool.websearch.title":"Web Search","settings.permissions.tool.websearch.description":"Поиск в интернете","settings.permissions.tool.external_directory.title":"Внешняя директория","settings.permissions.tool.external_directory.description":"Доступ к файлам вне директории проекта","settings.permissions.tool.doom_loop.title":"Doom Loop","settings.permissions.tool.doom_loop.description":"Обнаружение повторяющихся вызовов инструментов с одинаковыми входными данными","session.delete.failed.title":"Не удалось удалить сессию","session.delete.title":"Удалить сессию","session.delete.confirm":'Удалить сессию "{{name}}"?',"session.delete.button":"Удалить сессию","workspace.new":"Новое рабочее пространство","workspace.type.local":"локальное","workspace.type.sandbox":"песочница","workspace.create.failed.title":"Не удалось создать рабочее пространство","workspace.delete.failed.title":"Не удалось удалить рабочее пространство","workspace.resetting.title":"Сброс рабочего пространства","workspace.resetting.description":"Это может занять минуту.","workspace.reset.failed.title":"Не удалось сбросить рабочее пространство","workspace.reset.success.title":"Рабочее пространство сброшено","workspace.reset.success.description":"Рабочее пространство теперь соответствует ветке по умолчанию.","workspace.error.stillPreparing":"Рабочее пространство всё ещё подготавливается","workspace.status.checking":"Проверка незафиксированных изменений...","workspace.status.error":"Не удалось проверить статус git.","workspace.status.clean":"Незафиксированных изменений не обнаружено.","workspace.status.dirty":"В этом рабочем пространстве обнаружены незафиксированные изменения.","workspace.delete.title":"Удалить рабочее пространство","workspace.delete.confirm":'Удалить рабочее пространство "{{name}}"?',"workspace.delete.button":"Удалить рабочее пространство","workspace.reset.title":"Сбросить рабочее пространство","workspace.reset.confirm":'Сбросить рабочее пространство "{{name}}"?',"workspace.reset.button":"Сбросить рабочее пространство","workspace.reset.archived.none":"Активные сессии не будут архивированы.","workspace.reset.archived.one":"1 сессия будет архивирована.","workspace.reset.archived.many":"{{count}} сессий будет архивировано.","workspace.reset.note":"Это сбросит рабочее пространство до соответствия ветке по умолчанию.","common.open":"Открыть","dialog.releaseNotes.action.getStarted":"Начать","dialog.releaseNotes.action.next":"Далее","dialog.releaseNotes.action.hideFuture":"Больше не показывать","dialog.releaseNotes.media.alt":"Превью релиза","toast.project.reloadFailed.title":"Не удалось перезагрузить {{project}}","error.server.invalidConfiguration":"Недопустимая конфигурация","common.moreCountSuffix":" (ещё {{count}})","common.time.justNow":"Только что","common.time.minutesAgo.short":"{{count}} мин назад","common.time.hoursAgo.short":"{{count}} ч назад","common.time.daysAgo.short":"{{count}} д назад","settings.providers.connected.environmentDescription":"Подключено из ваших переменных окружения","settings.providers.custom.description":"Добавить провайдера, совместимого с OpenAI, по базовому URL.","app.server.unreachable":"Не удалось связаться с {{server}}","app.server.retrying":"Автоматическая повторная попытка...","app.server.otherServers":"Другие серверы","dialog.server.add.usernamePlaceholder":"имя пользователя","dialog.server.add.passwordPlaceholder":"пароль","server.row.noUsername":"нет имени пользователя","session.review.noVcs.createGit.title":"Создать репозиторий Git","session.review.noVcs.createGit.description":"Отслеживайте, просматривайте и отменяйте изменения в этом проекте","session.review.noVcs.createGit.actionLoading":"Создание репозитория Git...","session.review.noVcs.createGit.action":"Создать репозиторий Git","session.todo.progress":"Выполнено {{done}} из {{total}} задач","session.question.progress":"{{current}} из {{total}} вопросов","session.header.open.finder":"Finder","session.header.open.fileExplorer":"Проводник","session.header.open.fileManager":"Файловый менеджер","session.header.open.app.vscode":"VS Code","session.header.open.app.cursor":"Cursor","session.header.open.app.zed":"Zed","session.header.open.app.textmate":"TextMate","session.header.open.app.antigravity":"Antigravity","session.header.open.app.terminal":"Терминал","session.header.open.app.iterm2":"iTerm2","session.header.open.app.ghostty":"Ghostty","session.header.open.app.warp":"Warp","session.header.open.app.xcode":"Xcode","session.header.open.app.androidStudio":"Android Studio","session.header.open.app.powershell":"PowerShell","session.header.open.app.sublimeText":"Sublime Text","debugBar.ariaLabel":"Диагностика производительности разработки","debugBar.na":"н/д","debugBar.nav.label":"NAV","debugBar.nav.tip":"Последний завершенный переход маршрута, затрагивающий страницу сеанса, измеренный от запуска маршрутизатора до первой отрисовки после стабилизации.","debugBar.fps.label":"FPS","debugBar.fps.tip":"Скользящая частота кадров в секунду за последние 5 секунд.","debugBar.frame.label":"FRAME","debugBar.frame.tip":"Худшее время кадра за последние 5 секунд.","debugBar.jank.label":"JANK","debugBar.jank.tip":"Кадры более 32 мс за последние 5 секунд.","debugBar.long.label":"LONG","debugBar.long.tip":"Заблокированное время и количество длинных задач за последние 5 секунд. Макс. задача: {{max}}.","debugBar.delay.label":"DELAY","debugBar.delay.tip":"Худшая наблюдаемая задержка ввода за последние 5 секунд.","debugBar.inp.label":"INP","debugBar.inp.tip":"Приблизительная продолжительность взаимодействия за последние 5 секунд. Это похоже на INP, а не официальный Web Vitals INP.","debugBar.cls.label":"CLS","debugBar.cls.tip":"Кумулятивный сдвиг макета за текущее время жизни приложения.","debugBar.mem.label":"MEM","debugBar.mem.tipUnavailable":"Используемая куча JS по сравнению с лимитом кучи. Только Chromium.","debugBar.mem.tip":"Используемая куча JS по сравнению с лимитом кучи. {{used}} из {{limit}}.","common.key.ctrl":"Ctrl","common.key.alt":"Alt","common.key.shift":"Shift","common.key.meta":"Meta","common.key.space":"Пробел","common.key.backspace":"Backspace","common.key.enter":"Enter","common.key.tab":"Tab","common.key.delete":"Delete","common.key.home":"Home","common.key.end":"End","common.key.pageUp":"Page Up","common.key.pageDown":"Page Down","common.key.insert":"Insert","common.unknown":"неизвестно","error.page.circular":"[Циклично]","error.globalSDK.noServerAvailable":"Нет доступного сервера","error.globalSDK.serverNotAvailable":"Сервер недоступен","error.childStore.persistedCacheCreateFailed":"Не удалось создать постоянный кэш","error.childStore.persistedProjectMetadataCreateFailed":"Не удалось создать постоянные метаданные проекта","error.childStore.persistedProjectIconCreateFailed":"Не удалось создать постоянный значок проекта","error.childStore.storeCreateFailed":"Не удалось создать хранилище","terminal.connectionLost.abnormalClose":"WebSocket закрыт аварийно: {{code}}"};export{e as dict};
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dialog-terminal-unavailable-BPf6D9pa.js","assets/index-Cxa2Vk80.js","assets/index-q70uwQje.css"])))=>i.map(i=>d[i]);
2
+ import{bC as De,b as e,I as ue,b8 as k,i as r,S as _,F as pe,bD as Ne,t as i,az as de,bE as _e,ab as J,d as ye,R as et,Q as Nt,U as tt,T as Ot,V as Bt,M as qt,O as Kt,W as Lt,c as F,B as w,am as Xt,bm as ct,bt as Ut,bF as nt,a as U,X as dt,bG as Ke,bH as Vt,bI as ut,bJ as Gt,bw as ce,Y as Qt,Z as Zt,bK as Yt,bL as Jt,bM as en,A as ie,af as tn,$ as nn,bN as rn,bO as sn,f as N,m as ve,s as R,bP as on,ah as ln,bQ as Pt,bp as Xe,r as ht,p as gt,bR as an,bS as cn,bk as we,bT as Fe,bU as mt,bV as Ue,ap as dn,bW as un,bX as hn,bY as gn,bZ as mn,b_ as vn,b$ as pn,c0 as fn,c1 as bn,y as Be,c2 as vt,aj as Et,c3 as $n,e as Je,c4 as wn,c5 as Dt,c6 as oe,c7 as _n,c8 as pt,c9 as yn,ca as kn,cb as Sn,cc as xn,cd as Cn,C as Oe,ce as Ln,cf as Pn,cg as En,ch as Mt,ci as It,x as Ee,cj as Rt,ck as Dn,cl as Mn,cm as In,cn as Rn,co as Tn,cp as jn,cq as zn,cr as ft,cs as bt,ct as $t,cu as wt,cv as An,cw as Wn,cx as Fn,ak as Le}from"./index-Cxa2Vk80.js";import{DialogEditProject as Hn}from"./dialog-edit-project-TXt8WU1J.js";var Nn=i("<span class=os-client-session-menu-label>"),On=i("<div class=os-client-session-menu-empty>");const Ve="os-client-session-menu",Bn="os-client-session-menu os-client-session-menu-sub";function qn(c){const o=De(),s=()=>J(),L=()=>_e(s(),c.currentDirectory),u=()=>c.projects().filter(h=>de(h.worktree)!==de(c.currentDirectory)).filter(h=>!_e(s(),h.worktree));return e(_,{get when(){return L()},get children(){return e(k.Sub,{get children(){return[e(k.SubTrigger,{"data-action":"session-move",class:"os-client-session-menu-item",get children(){return[e(ue,{name:"folder",size:"small",class:"os-client-session-menu-icon"}),(()=>{var h=Nn();return r(h,()=>o.t("session.move.toProject")),h})(),e(ue,{name:"chevron-right",size:"small",class:"os-client-session-menu-chevron"})]}}),e(k.Portal,{get children(){return e(k.SubContent,{class:Bn,get children(){return[e(k.Item,{"data-action":"session-move-new-project",class:"os-client-session-menu-item",onSelect:()=>c.onNewProject(),get children(){return[e(ue,{name:"plus",size:"small",class:"os-client-session-menu-icon"}),e(k.ItemLabel,{class:"os-client-session-menu-label",get children(){return o.t("session.move.newProject")}})]}}),e(k.Separator,{class:"os-client-session-menu-separator"}),e(_,{get when(){return u().length>0},get fallback(){return(()=>{var h=On();return r(h,()=>o.t("session.move.emptyProjects")),h})()},get children(){return e(pe,{get each(){return u()},children:h=>e(k.Item,{"data-action":"session-move-target",class:"os-client-session-menu-item",onSelect:()=>c.onMove(h.worktree),get children(){return[e(ue,{name:"folder",size:"small",class:"os-client-session-menu-icon"}),e(k.ItemLabel,{class:"os-client-session-menu-label",get children(){return Ne(h)}})]}})})}})]}})}})]}})}})}function _t(c){const o=De();return[e(k.Item,{"data-action":"session-archive",class:"os-client-session-menu-item",onSelect:()=>c.onArchive(),get children(){return[e(ue,{name:"archive",size:"small",class:"os-client-session-menu-icon"}),e(k.ItemLabel,{class:"os-client-session-menu-label",get children(){return o.t("common.archive")}})]}}),e(qn,{get currentDirectory(){return c.currentDirectory},get projects(){return c.projects},get onMove(){return c.onMove},get onNewProject(){return c.onNewProject}}),e(k.Separator,{class:"os-client-session-menu-separator"}),e(k.Item,{"data-action":"session-delete",class:"os-client-session-menu-item is-danger",onSelect:()=>c.onDelete(),get children(){return[e(ue,{name:"trash",size:"small",class:"os-client-session-menu-icon"}),e(k.ItemLabel,{class:"os-client-session-menu-label",get children(){return o.t("common.delete")}})]}})]}var yt=i('<div class="flex flex-col gap-4 pl-6 pr-2.5 pb-3"><span class="text-14-regular text-text-strong"></span><div class="flex justify-end gap-2">'),Kn=i("<span class=os-sidebar-label>"),Xn=i('<svg class=os-sidebar-icon viewBox="0 0 24 24"aria-hidden=true><path d="M21 15a2 2 0 0 1-2 2H8l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z">'),Un=i("<span class=os-sidebar-label>新建会话"),Vn=i('<svg class=os-sidebar-icon viewBox="0 0 24 24"aria-hidden=true><path d="M5 5h5v5H5z"></path><path d="M14 5h5v5h-5z"></path><path d="M5 14h5v5H5z"></path><path d="M14 14h5v5h-5z">'),Gn=i("<span class=os-sidebar-label>能力中心"),Qn=i('<svg class=os-sidebar-icon viewBox="0 0 24 24"aria-hidden=true><path d="M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.5-3.5a5.8 5.8 0 0 1-7.6 7.6l-6.8 6.8a2.1 2.1 0 0 1-3-3l6.8-6.8a5.8 5.8 0 0 1 7.6-7.6z">'),Zn=i("<span class=os-sidebar-label>skills设置"),Yn=i('<svg class=os-sidebar-icon viewBox="0 0 24 24"aria-hidden=true><rect x=3 y=4 width=18 height=6 rx=1.5></rect><rect x=3 y=14 width=18 height=6 rx=1.5></rect><path d="M7 7h.01"></path><path d="M7 17h.01">'),Jn=i("<span class=os-sidebar-label>资源配置"),er=i("<p class=os-client-empty-hint>登录后同步个人空间"),tr=i("<div class=os-client-task-list-scroll>"),nr=i("<button type=button class=os-client-task-more data-action=recent-expand>展开更多"),rr=i("<button type=button class=os-client-task-more data-action=recent-collapse>收起"),sr=i("<p class=os-client-empty-hint>登录后查看未分类会话"),ir=i("<button type=button class=os-client-shared-cases-more data-action=shared-cases-expand>展开更多"),or=i("<button type=button class=os-client-shared-cases-more data-action=shared-cases-collapse>收起"),lr=i("<div class=os-client-shared-cases-list>"),ar=i('<section class="os-sidebar-group os-client-shared-cases"data-section=shared-cases><button type=button class=os-client-shared-cases-toggle data-action=shared-cases-toggle><span class=os-client-shared-cases-chevron aria-hidden=true></span><span>'),cr=i('<svg class=os-sidebar-icon viewBox="0 0 24 24"aria-hidden=true><path d="M7 4h7l3 3v13H7z"></path><path d="M14 4v4h4"></path><path d="M10 12h5"></path><path d="M10 16h5">'),dr=i("<span class=os-sidebar-label>帮助"),ur=i('<aside class=os-sidebar><div class=os-sidebar-brand></div><nav class=os-sidebar-nav><div class=os-sidebar-nav-scroll><div class="os-sidebar-group os-client-capability-group"></div><div class="os-sidebar-group os-client-list-section"><div class=os-client-section-title><span>项目</span><span class=os-client-section-actions><button type=button aria-label=新建项目>+</button></span></div><div class=os-client-project-list></div></div><div class="os-sidebar-group os-client-list-section"><div class=os-client-section-title><span>未分类</span><span class=os-client-section-actions><button type=button aria-label=新建会话>+</button></span></div><div class=os-client-task-list></div></div></div></nav><div class=os-sidebar-footer><div class=os-sidebar-footer-actions><button type=button class=os-sidebar-footer-action><svg class=os-sidebar-icon viewBox="0 0 24 24"aria-hidden=true><path d="M12 8.5a3.5 3.5 0 1 0 0 7 3.5 3.5 0 0 0 0-7Z"></path><path d="M12 3.5v2"></path><path d="M12 18.5v2"></path><path d="m5.6 5.6 1.4 1.4"></path><path d="m17 17 1.4 1.4"></path><path d="M3.5 12h2"></path><path d="M18.5 12h2"></path><path d="m5.6 18.4 1.4-1.4"></path><path d="m17 7 1.4-1.4"></path></svg><span class=os-sidebar-label>设置'),hr=i("<p class=os-client-empty-hint>暂无项目,点击 + 打开目录"),gr=i("<div class=os-client-project-sessions>"),mr=i("<div class=os-client-project-block><div class=os-client-project-row>"),Ge=i("<span class=os-client-task-main><span>"),kt=i("<div class=os-client-session-row>"),vr=i("<p class=os-client-empty-hint>暂无未分类会话,点击 + 新建"),pr=i("<p class=os-client-empty-hint>暂无默认案例");const He=4,St=200,Qe=4;function fr(){const c=et(),o=Nt(),s=De(),L=tt(),u=Ot(),h=Bt(),m=qt(),z=Kt(),P=Lt(),$=()=>!!J(),D=()=>Pt(c.pathname),T=()=>c.pathname.startsWith("/workspace/capabilities"),f=()=>c.pathname.startsWith("/workspace/skills"),y=()=>c.pathname.startsWith("/workspace/resources"),se=()=>c.pathname.startsWith("/workspace/docs"),[O,C]=F(!0),[S,E]=F(!1),[X,Q]=F(!1),le=w(()=>Xt(L.projects.list(),J())),q=w(()=>le().filter(t=>!_e(J(),t.worktree))),ee=w(()=>ct(J())?.trim()||""),ae=w(()=>Ut(J())?.trim()||""),he=w(()=>{const t=/^\/workspace\/([^/]+)\/session/.exec(c.pathname)?.[1];return t?nt(t)??"":""}),V=()=>/\/session\/([^/?#]+)/.exec(c.pathname)?.[1],me=t=>{const l=he();if(!l)return!1;const g=de(l);return de(t.worktree)===g?!0:t.sandboxes?.some(W=>de(W)===g)??!1};U(()=>{if(!$())return;const t=[...q().flatMap(l=>[l.worktree,...l.sandboxes??[]]),ee()].filter(l=>l.length>0);for(const l of t)dt(()=>{u.project.loadSessions(l)})}),U(()=>{const t=ae();if(!t)return;const[l,g]=u.child(t,{bootstrap:!1});(l.limit??0)<St&&g("limit",St),dt(()=>{u.project.loadSessions(t)})});const te=w(()=>{const t=ee();if(!t)return[];const[l]=u.child(t,{bootstrap:!1});return Ke(l,Date.now(),t).map(g=>({session:g,directory:t}))}),ge=w(()=>X()?te():te().slice(0,Qe)),d=w(()=>!X()&&te().length>Qe),M=w(()=>X()&&te().length>Qe),a=w(()=>{const t=ae();if(!t)return[];const[l]=u.child(t,{bootstrap:!1});return Vt(Ke(l,Date.now(),t).filter(g=>ut(g.id)))}),b=w(()=>O()?S()?a():a().slice(0,He):[]),p=w(()=>O()&&!S()&&a().length>He),v=w(()=>O()&&S()&&a().length>He);U(()=>{const t=Gt(c.search),l=V(),g=t&&t!=="open"?t:ut(l)?l:void 0;if((t||g)&&C(!0),g&&a().findIndex(G=>G.id===g)>=He&&E(!0),!t||t==="open")return;const W=ae();W&&l!==t&&o(ce(W,t),{replace:!0})});function n(t,l=!0){L.projects.open(t),z.projects.touchCode(t),l&&o(ce(t))}function A(){P.show(()=>e(vn,{onCreated:t=>n(t)}))}function K(t){P.show(()=>e(Hn,{project:t}))}function Me(t){const l=t.worktree;if(_e(J(),l))return;const g=q(),W=de(l),j=g.findIndex(re=>de(re.worktree)===W);if(j===-1)return;if(me(t)){const re=g[j+1]??g[j-1];o(re?ce(re.worktree):"/workspace")}L.projects.close(l)}async function Ie(){const t=m.openDirectoryPickerDialog;function l(g){if(Array.isArray(g)){g.forEach((W,j)=>n(W,j===0));return}g&&n(g)}if(t&&un({hasNativePicker:!!t,isLocalServer:!!z.isLocal(),hasPlatformSession:!!J()})){const g=await t({title:s.t("command.project.open"),multiple:!0});l(g);return}P.show(()=>e(hn,{multiple:!0,onSelect:l,onCreateFolder:A}),()=>l(null))}function fe(){Xe({navigate:o,action:{type:"install",resourceId:"__project__"},isLoggedIn:$()})&&Ie()}function Re(){if(!Xe({navigate:o,action:{type:"install",resourceId:"__task__"},isLoggedIn:$()}))return;const t=ct(J());t&&(ht(gt(t)),n(t))}function Te(t){Xe({navigate:o,action:{type:"install",resourceId:"__task__"},isLoggedIn:$()})&&(ht(gt(t)),n(t))}function ke(t){if(V()!==t.id)return;const l=he();if(!l){o("/workspace");return}o(ce(l))}function be(t,l){const[,g]=u.child(t,{bootstrap:!1});g(gn(W=>{const j=mn.search(W.session,l,re=>re.id);if(!j.found)return;const G=W.session[j.index];W.session.splice(j.index,1),G&&!G.parentID&&(W.sessionTotal=Math.max(0,W.sessionTotal-1))}))}async function Se(t){be(t.directory,t.id),ke(t),await h.client.session.update({directory:t.directory,sessionID:t.id,time:{archived:Date.now()}}).then(()=>!0).catch(g=>(we({title:s.t("common.archive"),description:Ue(g,s.t("common.requestFailed"))}),!1))||u.project.loadSessions(t.directory)}async function je(t){return await h.client.session.delete({sessionID:t.id,directory:t.directory}).then(g=>g.data).catch(g=>(we({title:s.t("session.delete.failed.title"),description:Ue(g,s.t("common.requestFailed"))}),!1))?(be(t.directory,t.id),ke(t),!0):!1}function xe(t){const l=$e(t);P.show(()=>e(mt,{get title(){return s.t("session.delete.title")},fit:!0,get children(){var g=yt(),W=g.firstChild,j=W.nextSibling;return r(W,()=>s.t("session.delete.confirm",{name:l})),r(j,e(Fe,{variant:"ghost",size:"large",onClick:()=>P.close(),get children(){return s.t("common.cancel")}}),null),r(j,e(Fe,{variant:"primary",size:"large",onClick:()=>{je(t).then(G=>{G&&P.close()})},get children(){return s.t("session.delete.button")}}),null),g}}))}function ze(t){const[l]=u.child(t,{bootstrap:!1});return Ke(l,Date.now(),t).map(g=>({session:g,directory:t}))}function $e(t){const[l]=u.child(t.directory,{bootstrap:!1});return an({title:t.title,fallbackText:cn(t.id,l.message,l.part),emptyLabel:s.t("command.session.new")})}function Ce(t,l){if(de(t.directory)===de(l))return;if(!_e(J(),t.directory)){we({title:s.t("session.move.failed.title"),description:s.t("session.move.failed.onlyDefault")});return}if(_e(J(),l)){we({title:s.t("session.move.failed.title"),description:s.t("session.move.failed.onlyDefault")});return}const g=Ne({worktree:l});P.show(()=>e(mt,{get title(){return s.t("session.move.confirm.title")},fit:!0,get children(){var W=yt(),j=W.firstChild,G=j.nextSibling;return r(j,()=>s.t("session.move.confirm.description",{project:g})),r(G,e(Fe,{variant:"ghost",size:"large",onClick:()=>P.close(),get children(){return s.t("common.cancel")}}),null),r(G,e(Fe,{variant:"primary",size:"large",onClick:()=>{Ae(t,l).then(re=>{re&&P.close()})},get children(){return s.t("session.move.confirm.action")}}),null),W}}))}async function Ae(t,l){const g=t.directory;return await h.client.session.update({directory:t.directory,sessionID:t.id,moveTo:l}).then(()=>!0).catch(j=>(we({title:s.t("session.move.failed.title"),description:Ue(j,s.t("common.requestFailed"))}),!1))?(be(g,t.id),L.projects.open(l),z.projects.touchCode(l),u.project.loadSessions(g),u.project.loadSessions(l),V()===t.id?(o(ce(l,t.id)),!0):(we({title:s.t("session.move.success.title"),description:s.t("session.move.success.description",{project:Ne({worktree:l})})}),!0)):!1}function We(){P.show(()=>e(dn,{tab:"account"}))}return(()=>{var t=ur(),l=t.firstChild,g=l.nextSibling,W=g.firstChild,j=W.firstChild,G=j.nextSibling,re=G.firstChild,Tt=re.firstChild,jt=Tt.nextSibling,rt=jt.firstChild,zt=re.nextSibling,st=G.nextSibling,it=st.firstChild,At=it.firstChild,Wt=At.nextSibling,ot=Wt.firstChild,Ft=it.nextSibling,Ht=g.nextSibling,lt=Ht.firstChild,at=lt.firstChild;return Qt(l,Zt(()=>m.platform==="desktop"?{"data-tauri-drag-region":!0}:{}),!1,!0),r(l,e(ie,{get href(){return en(m.platform)},class:"os-sidebar-brand-link",get children(){return[e(Yt,{class:"os-sidebar-brand-mark"}),(()=>{var x=Kn();return r(x,()=>Jt(m.platform)),x})()]}})),r(j,e(ie,{get href(){return tn()},class:"os-sidebar-link",get classList(){return{"is-active":D()}},get children(){return[Xn(),Un()]}}),null),r(j,e(ie,{get href(){return nn()},class:"os-sidebar-link",get classList(){return{"is-active":T()}},get children(){return[Vn(),Gn()]}}),null),r(j,e(ie,{get href(){return rn()},class:"os-sidebar-link",get classList(){return{"is-active":f()}},get children(){return[Qn(),Zn()]}}),null),r(j,e(ie,{get href(){return sn()},class:"os-sidebar-link",get classList(){return{"is-active":y()}},get children(){return[Yn(),Jn()]}}),null),rt.$$click=fe,r(zt,e(_,{get when(){return ve(()=>!!$())()&&q().length>0},get fallback(){return e(_,{get when(){return $()},get children(){return hr()}})},get children(){return e(pe,{get each(){return q()},children:x=>(()=>{var H=mr(),Z=H.firstChild;return r(Z,e(ie,{get href(){return ce(x.worktree)},class:"os-client-project-item",get children(){return Ne(x)}}),null),r(Z,e(k,{get children(){return[e(k.Trigger,{type:"button",class:"os-client-project-more",get"aria-label"(){return s.t("common.moreOptions")},onClick:Y=>Y.stopPropagation(),children:"..."}),e(k.Portal,{get children(){return e(k.Content,{class:Ve,get children(){return[e(k.Item,{"data-action":"project-new-session",class:"os-client-session-menu-item",onSelect:()=>Te(x.worktree),get children(){return[e(ue,{name:"new-session",size:"small",class:"os-client-session-menu-icon"}),e(k.ItemLabel,{class:"os-client-session-menu-label",get children(){return s.t("command.session.new")}})]}}),e(k.Item,{"data-action":"project-rename",class:"os-client-session-menu-item",onSelect:()=>K(x),get children(){return[e(ue,{name:"edit",size:"small",class:"os-client-session-menu-icon"}),e(k.ItemLabel,{class:"os-client-session-menu-label",get children(){return s.t("common.rename")}})]}}),e(k.Separator,{class:"os-client-session-menu-separator"}),e(k.Item,{"data-action":"project-remove-from-view",class:"os-client-session-menu-item",onSelect:()=>Me(x),get children(){return[e(ue,{name:"close-small",size:"small",class:"os-client-session-menu-icon"}),e(k.ItemLabel,{class:"os-client-session-menu-label",get children(){return s.t("sidebar.project.removeFromView")}})]}})]}})}})]}}),null),r(H,e(_,{get when(){return me(x)},get children(){var Y=gr();return r(Y,e(pe,{get each(){return ze(x.worktree)},children:I=>(()=>{var B=kt();return r(B,e(ie,{get href(){return ce(I.directory,I.session.id)},class:"os-client-task-item",get classList(){return{"is-active":V()===I.session.id}},get"data-session-id"(){return I.session.id},get children(){var ne=Ge(),qe=ne.firstChild;return r(qe,()=>$e(I.session)),ne}}),null),r(B,e(k,{get children(){return[e(k.Trigger,{type:"button",class:"os-client-session-more",get"aria-label"(){return s.t("common.moreOptions")},onClick:ne=>ne.stopPropagation(),children:"..."}),e(k.Portal,{get children(){return e(k.Content,{class:Ve,get children(){return e(_t,{get currentDirectory(){return I.directory},projects:q,onArchive:()=>void Se(I.session),onDelete:()=>xe(I.session),onMove:ne=>Ce(I.session,ne),onNewProject:fe})}})}})]}}),null),N(()=>B.classList.toggle("is-active",V()===I.session.id)),B})()})),Y}}),null),H})()})}})),r(G,e(_,{get when(){return!$()},get children(){return er()}}),null),ot.$$click=Re,r(Ft,e(_,{get when(){return ve(()=>!!$())()&&te().length>0},get fallback(){return e(_,{get when(){return $()},get children(){return vr()}})},get children(){return[(()=>{var x=tr();return r(x,e(pe,{get each(){return ge()},children:H=>(()=>{var Z=kt();return r(Z,e(ie,{get href(){return ce(H.directory,H.session.id)},class:"os-client-task-item",get classList(){return{"is-active":V()===H.session.id}},get"data-session-id"(){return H.session.id},get children(){var Y=Ge(),I=Y.firstChild;return r(I,()=>$e(H.session)),Y}}),null),r(Z,e(k,{get children(){return[e(k.Trigger,{type:"button",class:"os-client-session-more",get"aria-label"(){return s.t("common.moreOptions")},onClick:Y=>Y.stopPropagation(),children:"..."}),e(k.Portal,{get children(){return e(k.Content,{class:Ve,get children(){return e(_t,{get currentDirectory(){return H.directory},projects:q,onArchive:()=>void Se(H.session),onDelete:()=>xe(H.session),onMove:Y=>Ce(H.session,Y),onNewProject:fe})}})}})]}}),null),N(()=>Z.classList.toggle("is-active",V()===H.session.id)),Z})()})),N(()=>R(x,"data-expanded",X()?"true":"false")),x})(),e(_,{get when(){return d()},get children(){var x=nr();return x.$$click=()=>Q(!0),x}}),e(_,{get when(){return M()},get children(){var x=rr();return x.$$click=()=>Q(!1),x}})]}})),r(st,e(_,{get when(){return!$()},get children(){return sr()}}),null),r(g,e(_,{get when(){return ae()},get children(){var x=ar(),H=x.firstChild,Z=H.firstChild,Y=Z.nextSibling;return H.$$click=()=>C(I=>!I),r(Y,()=>s.t("sidebar.section.sharedCases")),r(x,e(_,{get when(){return O()},get children(){var I=lr();return r(I,e(_,{get when(){return b().length>0},get fallback(){return pr()},get children(){return e(pe,{get each(){return b()},children:B=>e(ie,{get href(){return ce(ae(),B.id)},class:"os-client-task-item",get classList(){return{"is-active":V()===B.id}},get"data-session-id"(){return B.id},get children(){var ne=Ge(),qe=ne.firstChild;return r(qe,()=>on(B.title)??B.id),ne}})})}}),null),r(I,e(_,{get when(){return p()},get children(){var B=ir();return B.$$click=()=>E(!0),B}}),null),r(I,e(_,{get when(){return v()},get children(){var B=or();return B.$$click=()=>E(!1),B}}),null),I}}),null),N(I=>{var B=O(),ne=O()?"true":"false";return B!==I.e&&R(H,"aria-expanded",I.e=B),ne!==I.t&&R(Z,"data-open",I.t=ne),I},{e:void 0,t:void 0}),x}}),null),r(lt,e(ie,{get href(){return ln()},class:"os-sidebar-footer-action",get classList(){return{"is-active":se()}},get children(){return[cr(),dr()]}}),at),at.$$click=We,N(x=>{var H=!$(),Z=!$();return H!==x.e&&rt.classList.toggle("is-muted",x.e=H),Z!==x.t&&ot.classList.toggle("is-muted",x.t=Z),x},{e:void 0,t:void 0}),t})()}ye(["click"]);var br=i('<pre class="os-client-right-files-preview whitespace-pre-wrap break-all p-3 text-12-regular m-0">'),$r=i("<button type=button class=os-client-right-files-back>← 返回目录"),wr=i("<span class=os-client-right-files-title>"),_r=i("<button type=button>"),yr=i("<div class=os-client-right-files-actions><button type=button>关闭"),kr=i("<p class=os-client-right-files-hint>正在加载目录…"),Sr=i("<p class=os-client-right-files-hint>该目录为空"),xr=i("<div class=os-client-right-files-tree><p class=os-client-right-files-root></p><div class=os-client-right-files-tree-scroll>"),Cr=i("<div class=os-client-right-files-unsaved>"),Lr=i("<p class=os-client-right-files-hint>…"),Pr=i("<textarea class=os-client-right-files-textarea autocapitalize=off autocomplete=off autocorrect=off>"),Er=i("<pre class=os-client-right-files-preview>"),Dr=i("<div class=os-client-right-files-editor>"),Mr=i("<section class=os-client-right-files><header class=os-client-right-files-header>"),Ir=i("<strong>目录"),Rr=i("<div class=os-client-right-files-actions><button type=button aria-label=刷新>刷新</button><button type=button>关闭"),Tr=i("<p class=os-client-right-files-hint>加载失败:"),jr=i("<p class=os-client-right-files-hint>");function zr(c){const o=c.replace(/\\/g,"/").split("/");return o[o.length-1]||c}function Ar(c){const o=pn(),s=fn(),L=De(),[u,h]=F("tree"),[m,z]=F(),[P,$]=F(""),[D,T]=F(!1),[f,y]=F(!1),[se,O]=F(0);let C;const S=w(()=>o.tree.state("")),E=w(()=>o.tree.children("")),X=w(()=>bn(m())),Q=(a=!1)=>{s.directory&&(a?o.tree.refresh(""):o.tree.list(""))};Be(()=>{queueMicrotask(()=>Q(!0))}),U(()=>{if(!s.directory||u()!=="tree")return;const b=S();b?.loading||b?.loaded||b?.error||o.tree.list("")});const le=w(()=>{const a=m();if(a)return o.get(a)}),q=w(()=>le()?.content?.content??""),ee=w(()=>!!le()?.loaded),ae=w(()=>!!le()?.loading),he=w(()=>le()?.error),V=w(()=>{const a=le();return!(!a?.loaded||a.content?.type!=="text"||a.content.encoding==="base64"||vt(m()))}),me=w(()=>V()&&X()==="text"),te=w(()=>{if(!(!V()||me()))return{draft:P,setDraft:a=>{$(a),T(!0)},textareaRef:a=>{C=a},class:"os-client-right-files-textarea"}}),ge=a=>(()=>{var b=br();return r(b,a),b})();U(()=>{const a=m();a&&o.load(a)}),U(Et(m,()=>{T(!1),$(ee()?q():""),O(0)},{defer:!1})),U(()=>{!ee()||D()||$(q())});const d=async()=>{const a=m();if(!(!a||f()||!D()||!V())){y(!0);try{await o.write(a,P()),T(!1),pt(a)&&O(b=>b+1)}finally{y(!1)}}};U(()=>{if(typeof window>"u")return;$n(window,"keydown",b=>{!(b.metaKey||b.ctrlKey)||b.key.toLowerCase()!=="s"||!C?.contains(document.activeElement)&&document.activeElement!==C||(b.preventDefault(),d())})});const M=a=>{z(a),h("editor")};return(()=>{var a=Mr(),b=a.firstChild;return r(b,e(_,{get when(){return u()==="editor"},get fallback(){return[Ir(),(()=>{var p=Rr(),v=p.firstChild,n=v.nextSibling;return v.$$click=()=>{Q(!0),o.tree.refreshAll()},Je(n,"click",c.onClose,!0),p})()]},get children(){return[(()=>{var p=$r();return p.$$click=()=>h("tree"),p})(),(()=>{var p=wr();return r(p,(()=>{var v=ve(()=>!!m());return()=>v()?zr(m()):""})()),N(()=>R(p,"title",m())),p})(),(()=>{var p=yr(),v=p.firstChild;return r(p,e(_,{get when(){return V()},get children(){var n=_r();return n.$$click=()=>void d(),r(n,(()=>{var A=ve(()=>!!f());return()=>A()?L.t("common.saving"):L.t("common.save")})()),N(()=>n.disabled=!D()||f()),n}}),v),Je(v,"click",c.onClose,!0),p})()]}})),r(a,e(_,{get when(){return u()==="tree"},get children(){var p=xr(),v=p.firstChild,n=v.nextSibling;return r(v,()=>s.directory),r(p,e(_,{get when(){return ve(()=>!!S()?.loading)()&&E().length===0},get children(){return kr()}}),n),r(p,e(_,{get when(){return S()?.error},children:A=>(()=>{var K=Tr();return K.firstChild,r(K,A,null),K})()}),n),r(p,e(_,{get when(){return ve(()=>!!(S()?.loaded&&E().length===0))()&&!S()?.error},get children(){return Sr()}}),n),r(n,e(wn,{path:"",class:"os-client-right-file-tree",nodeClass:"os-client-right-file-node",get active(){return m()},draggable:!1,onFileClick:A=>M(A.path)})),N(()=>R(v,"title",s.directory)),p}}),null),r(a,e(_,{get when(){return u()==="editor"},get children(){var p=Dr();return r(p,e(_,{get when(){return D()},get children(){var v=Cr();return r(v,()=>L.t("session.file.unsaved")),v}}),null),r(p,e(_,{get when(){return ve(()=>!!ae())()&&!ee()},get children(){var v=Lr(),n=v.firstChild;return r(v,()=>L.t("common.loading"),n),v}}),null),r(p,e(_,{get when(){return he()},children:v=>(()=>{var n=jr();return r(n,v),n})()}),null),r(p,e(_,{get when(){return ee()},get children(){return e(Dt,{get children(){return[e(oe,{get when(){return pt(m())},get children(){return e(_n,{path:m,contents:q,renderSource:ge,get editSource(){return te()},previewRevision:se,chrome:"workbench"})}}),e(oe,{get when(){return X()==="markdown"},get children(){return e(yn,{path:m,contents:q,renderSource:ge,get editSource(){return te()},chrome:"workbench"})}}),e(oe,{get when(){return X()==="csv"},get children(){return e(kn,{path:m,contents:q,renderSource:ge,get editSource(){return te()},chrome:"workbench"})}}),e(oe,{get when(){return vt(m())},get children(){return e(Sn,{path:m,chrome:"workbench"})}}),e(oe,{get when(){return Cn(m())},get children(){return e(xn,{path:m,contents:q,renderSource:ge,get editSource(){return te()},chrome:"workbench"})}}),e(oe,{get when(){return me()},get children(){var v=Pr();v.$$input=A=>{$(A.currentTarget.value),T(!0)};var n=C;return typeof n=="function"?Oe(n,v):C=v,R(v,"spellcheck",!1),N(()=>v.value=P()),v}}),e(oe,{when:!0,get children(){var v=Er();return r(v,()=>q()||"(二进制或不支持预览的文件)"),v}})]}})}}),null),p}}),null),N(()=>R(a,"data-view",u())),a})()}ye(["click","input"]);var Wr=i('<svg viewBox="0 0 12 12"width=12 height=12 fill=currentColor aria-hidden=true><circle cx=6 cy=6 r=3 class=os-client-right-todo-pulse>'),Fr=i("<ul class=os-client-right-todo-list>"),Hr=i("<span class=os-client-right-todo-text>"),Nr=i("<li class=os-client-right-todo-item>"),Or=i("<p class=os-client-right-todo-progress>已完成 <!> / "),Br=i("<section class=os-client-right-todo><header class=os-client-right-todo-header><strong></strong><button type=button>关闭"),qr=i("<p class=os-client-right-todo-empty>暂无场景工作流。从能力中心场景创建任务后,步骤会显示在这里。"),Kr=i("<span class=os-client-right-todo-stop> · ");function Xr(c){return c==="completed"?"completed":c==="in_progress"?"in_progress":c==="failed"?"cancelled":"pending"}function Ur(c){if(c==="in_progress")return Wr()}function Vr(c){return(()=>{var o=Fr();return r(o,e(pe,{get each(){return c.items},children:s=>(()=>{var L=Nr();return r(L,e(En,{readOnly:!0,get checked(){return s.status==="completed"},get indeterminate(){return s.status==="in_progress"},get icon(){return Ur(s.status)},get children(){var u=Hr();return r(u,()=>s.content),N(h=>{var m=s.status==="completed"||s.status==="cancelled",z=s.status==="pending";return m!==h.e&&u.classList.toggle("is-done",h.e=m),z!==h.t&&u.classList.toggle("is-pending",h.t=z),h},{e:void 0,t:void 0}),u}})),N(()=>R(L,"data-state",s.status)),L})()})),o})()}function Gr(c){Ln();const o=w(()=>Pn(c.directoryKey)),s=w(()=>{const h=o();return h?.steps.length?h.steps.map(m=>({content:m.name,status:Xr(m.status)})):[]}),L=w(()=>s().filter(h=>h.status==="completed").length),u=w(()=>o()?.title||"待办");return(()=>{var h=Br(),m=h.firstChild,z=m.firstChild,P=z.nextSibling;return r(z,u),Je(P,"click",c.onClose,!0),r(h,e(_,{get when(){return s().length>0},get fallback(){return qr()},get children(){return[(()=>{var $=Or(),D=$.firstChild,T=D.nextSibling;return T.nextSibling,r($,L,T),r($,()=>s().length,null),r($,e(_,{get when(){return o()?.stopReason},children:f=>(()=>{var y=Kr();return y.firstChild,r(y,f,null),y})()}),null),$})(),e(Vr,{get items(){return s()}})]}}),null),N(()=>R(z,"title",u())),h})()}ye(["click"]);var Qr=i("<div class=os-client-right-add-dropdown role=menu>"),Zr=i('<aside class="os-client-right-sidebar os-client-right-dock"><div class=os-client-right-toolbar><div class=os-client-right-add-menu><button type=button class=os-client-right-add-button aria-label=打开页面><span class=os-client-right-add-icon aria-hidden=true></span></button></div></div><div class=os-client-right-dock-body>'),Yr=i("<button type=button role=menuitem>"),Jr=i("<section class=os-client-right-empty><strong>尚未打开页面</strong><p>点击 + 打开目录、可视化组件或待办;在会话中可从目录点文件到右侧编辑。"),es=i("<section class=os-client-right-pane-stub><header><strong>可视化组件</strong><button type=button>关闭</button></header><p>请从「目录」中打开 `.html` / `.md` / `.csv` / `.pdf` / `.xyz` 文件查看可视化预览;后续版本将提供独立可视化入口。"),ts=i("<section class=os-client-right-pane-stub><header><strong>目录</strong><button type=button>关闭</button></header><p>请先打开项目或任务后再查看目录。"),ns=i("<section class=os-client-right-pane-stub><header><strong>待办</strong><button type=button>关闭</button></header><p>请先打开项目或任务后再查看待办。");const rs=[{id:"directory",label:"目录"},{id:"viz",label:"可视化组件"},{id:"todo",label:"待办"}];function ss(){const c=et(),[o,s]=F(!1),[L,u]=F();let h;const m=w(()=>Mt(c.pathname)),z=w(()=>{const D=m()?.dir;return D?nt(D)??"":""}),P=w(()=>It(c.pathname)&&!!z());Be(()=>{const D=T=>{o()&&(h?.contains(T.target)||s(!1))};document.addEventListener("pointerdown",D),Ee(()=>document.removeEventListener("pointerdown",D))}),U(()=>{if(!Rt())return;const T=Dn();T&&(u(T),s(!1))});const $=D=>{u(D),s(!1)};return(()=>{var D=Zr(),T=D.firstChild,f=T.firstChild,y=f.firstChild,se=T.nextSibling,O=h;return typeof O=="function"?Oe(O,T):h=T,y.$$click=()=>s(C=>!C),r(f,e(_,{get when(){return o()},get children(){var C=Qr();return r(C,e(pe,{get each(){return[...rs]},children:S=>(()=>{var E=Yr();return E.$$click=()=>$(S.id),r(E,()=>S.label),E})()})),C}}),null),r(se,e(_,{get when(){return L()},get fallback(){return Jr()},children:C=>e(Dt,{get children(){return[e(oe,{get when(){return C()==="directory"},get children(){return e(_,{get when(){return P()},get fallback(){return(()=>{var S=ts(),E=S.firstChild,X=E.firstChild,Q=X.nextSibling;return Q.$$click=()=>u(void 0),S})()},get children(){return e(Mn,{params:()=>({dir:m().dir,id:m()?.id}),get children(){return e(In,{directory:()=>z(),get children(){return e(Rn,{get children(){return e(Tn,{get children(){return e(Ar,{onClose:()=>u(void 0)})}})}})}})}})}})}}),e(oe,{get when(){return C()==="todo"},get children(){return e(_,{get when(){return m()?.dir},get fallback(){return(()=>{var S=ns(),E=S.firstChild,X=E.firstChild,Q=X.nextSibling;return Q.$$click=()=>u(void 0),S})()},children:S=>e(Gr,{get directoryKey(){return S()},get sessionID(){return m()?.id},onClose:()=>u(void 0)})})}}),e(oe,{get when(){return C()==="viz"},get children(){var S=es(),E=S.firstChild,X=E.firstChild,Q=X.nextSibling;return Q.$$click=()=>u(void 0),S}})]}})})),N(C=>{var S=!!o(),E=o();return S!==C.e&&y.classList.toggle("is-open",C.e=S),E!==C.t&&R(y,"aria-expanded",C.t=E),C},{e:void 0,t:void 0}),D})()}ye(["click"]);var is=i('<button type=button class="os-client-panel-toggle os-client-terminal-toggle"aria-controls=terminal-panel>'),os=i('<svg class=os-client-pane-toggle-icon viewBox="0 0 24 24"aria-hidden=true><rect x=4.5 y=5.5 width=15 height=13 rx=1.35 fill=none stroke=currentColor stroke-width=1.4></rect><path d="M8 10.25l2.4 2.25L8 14.75M12.25 14.75H16"fill=none stroke=currentColor stroke-width=1.4 stroke-linecap=round stroke-linejoin=round>');function ls(){const c=et(),o=tt(),s=De(),L=jn(),u=Lt(),[h,m]=F(J()),z=w(()=>Pt(c.pathname)||It(c.pathname)),P=w(()=>!z()||zn()&&!h()?!1:o.terminal.enabled()?!0:ft(h())),$=w(()=>o.view("workbench").terminal.opened()),D=w(()=>{const f=Mt(c.pathname);return f?.dir?nt(f.dir)??"":""});Be(()=>{const f=()=>m(J());window.addEventListener(bt,f),window.addEventListener($t,f),window.addEventListener("storage",f),Ee(()=>{window.removeEventListener(bt,f),window.removeEventListener($t,f),window.removeEventListener("storage",f)})}),U(()=>{P()&&wt()}),U(Et(z,(f,y)=>{y===void 0||f||!y||$()&&(o.view("workbench").terminal.close(),o.terminal.closeFullscreen())}));const T=()=>{if(ft(h())||!o.terminal.enabled()){An(()=>import("./dialog-terminal-unavailable-BPf6D9pa.js"),__vite__mapDeps([0,1,2])).then(f=>{u.show(()=>e(f.DialogTerminalUnavailable,{}))});return}if(!$()){const f=D();if(f&&!Wn(h(),f))return;wt()}o.view("workbench").terminal.toggle()};return e(_,{get when(){return P()},get children(){var f=is();return f.$$click=y=>y.preventDefault(),f.$$pointerdown=y=>{y.button===0&&(y.preventDefault(),T())},r(f,e(as,{get active(){return $()}})),N(y=>{var se=!!$(),O=s.t("command.terminal.toggle"),C=s.t("command.terminal.toggle"),S=$(),E=`${s.t("command.terminal.toggle")} (${L.keybind("terminal.toggle")})`;return se!==y.e&&f.classList.toggle("is-active",y.e=se),O!==y.t&&R(f,"data-tooltip",y.t=O),C!==y.a&&R(f,"aria-label",y.a=C),S!==y.o&&R(f,"aria-expanded",y.o=S),E!==y.i&&R(f,"title",y.i=E),y},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),f}})}function as(c){return(()=>{var o=os(),s=o.firstChild,L=s.nextSibling;return N(()=>R(L,"opacity",c.active?1:.85)),o})()}ye(["pointerdown","click"]);var cs=i('<svg class=os-client-pane-toggle-icon viewBox="0 0 24 24"aria-hidden=true><rect class=os-client-pane-toggle-icon-main x=4.5 y=5.5 width=7.7 height=13 rx=1.35></rect><rect class=os-client-pane-toggle-icon-divider x=12.15 y=5.5 width=1.15 height=13 rx=0.55></rect><rect class=os-client-pane-toggle-icon-side x=14.05 y=5.5 width=5.45 height=13 rx=1.35>'),ds=i('<div class="os-client-pane-resizer os-client-pane-resizer-sidebar"role=separator aria-orientation=vertical aria-label=调整左边栏宽度 aria-valuemin=230 aria-valuemax=430 tabindex=0>'),us=i('<div class="os-client-pane-resizer os-client-pane-resizer-tool"role=separator aria-orientation=vertical aria-label=调整右边栏宽度 aria-valuemin=200 aria-valuemax=1280 tabindex=0>'),hs=i("<main class=os-client-workbench><div class=os-client-workbench-chrome><button type=button class=os-client-panel-toggle></button><button type=button class=os-client-panel-toggle></button></div><section class=os-workspace-main></section><div class=os-client-terminal-dock>");const Pe=320,gs=230,ms=430,vs=200,xt=1280;function Ct(c){return(()=>{var o=cs();return N(s=>{var L=c.side,u=c.open?"true":"false";return L!==s.e&&R(o,"data-side",s.e=L),u!==s.t&&R(o,"data-open",s.t=u),s},{e:void 0,t:void 0}),o})()}function Ze(c){return Math.min(ms,Math.max(gs,Math.round(c)))}function Ye(c){const o=typeof window>"u"?xt:Math.min(xt,Math.floor(window.innerWidth*.85));return Math.min(o,Math.max(vs,Math.round(c)))}function bs(c){const o=tt(),[s,L]=F(!0),[u,h]=F(!1),[m,z]=F(Pe),[P,$]=F(Pe),[D,T]=F(!1),[f,y]=F(!1),[se,O]=F(0),[C,S]=F({left:0,right:0}),[E,X]=F(),[Q,le]=F(),q=w(()=>o.view("workbench").terminal.opened()),ee=()=>q(),ae=w(()=>{if(!q())return 0;const d=se();return d>0?d:o.terminal.height()}),he=()=>{const d=E();if(!d)return;const M=d.querySelector(":scope > .os-workspace-main");if(!M)return;const a=d.getBoundingClientRect(),b=getComputedStyle(d),p=a.left+(parseFloat(b.borderLeftWidth)||0),v=a.right-(parseFloat(b.borderRightWidth)||0),n=M.getBoundingClientRect(),K=d.querySelector(":scope > .os-client-right-sidebar")?.getBoundingClientRect()??n;S({left:Math.max(0,Math.round(n.left-p)),right:Math.max(0,Math.round(v-K.right))})},V=()=>{L(d=>(d||z(Pe),!d))},me=()=>{h(d=>(d||$(Pe),!d))};U(()=>{Rt()&&(h(!0),$(M=>M>0?M:Pe))});const te=d=>{if(d.button!==0)return;d.preventDefault();const M=d.clientX,a=m();T(!0);const b=v=>{z(Ze(a+(v.clientX-M)))},p=()=>{T(!1),window.removeEventListener("pointermove",b),window.removeEventListener("pointerup",p),window.removeEventListener("pointercancel",p)};window.addEventListener("pointermove",b),window.addEventListener("pointerup",p),window.addEventListener("pointercancel",p)},ge=d=>{if(d.button!==0)return;d.preventDefault();const M=d.clientX,a=P();y(!0);const b=v=>{$(Ye(a+(M-v.clientX)))},p=()=>{y(!1),window.removeEventListener("pointermove",b),window.removeEventListener("pointerup",p),window.removeEventListener("pointercancel",p)};window.addEventListener("pointermove",b),window.addEventListener("pointerup",p),window.addEventListener("pointercancel",p)};return U(()=>{const d=Q();if(!d||typeof ResizeObserver>"u")return;const M=()=>{const b=d.querySelector("#terminal-panel");O(b?Math.round(b.getBoundingClientRect().height):0)};M();const a=new ResizeObserver(M);a.observe(d),Ee(()=>a.disconnect())}),U(()=>{q()||O(0)}),Be(()=>{o.view("workbench").terminal.close(),o.terminal.closeFullscreen(),O(0)}),U(()=>{s(),u(),m(),P(),D(),f(),ee(),E(),he();const d=requestAnimationFrame(he);Ee(()=>cancelAnimationFrame(d))}),U(()=>{const d=E();if(!d||typeof ResizeObserver>"u")return;const M=new ResizeObserver(()=>he());M.observe(d);const a=d.querySelector(":scope > .os-workspace-main");a&&M.observe(a);const b=d.querySelector(":scope > .os-client-right-sidebar");b&&M.observe(b),Ee(()=>M.disconnect())}),(()=>{var d=hs(),M=d.firstChild,a=M.firstChild,b=a.nextSibling,p=M.nextSibling,v=p.nextSibling;return Oe(X,d),a.$$click=V,r(a,e(Ct,{side:"left",get open(){return s()}})),r(M,e(ls,{}),b),b.$$click=me,r(b,e(Ct,{side:"right",get open(){return u()}})),r(d,e(_,{get when(){return s()},get children(){return[e(fr,{}),(()=>{var n=ds();return n.$$keydown=A=>{if(A.key==="ArrowLeft"){A.preventDefault(),z(K=>Ze(K-16));return}A.key==="ArrowRight"&&(A.preventDefault(),z(K=>Ze(K+16)))},n.$$pointerdown=te,N(()=>R(n,"aria-valuenow",m())),n})()]}}),p),r(p,()=>c.children),r(d,e(_,{get when(){return u()},get children(){return[(()=>{var n=us();return n.$$keydown=A=>{if(A.key==="ArrowLeft"){A.preventDefault(),$(K=>Ye(K+16));return}A.key==="ArrowRight"&&(A.preventDefault(),$(K=>Ye(K-16)))},n.$$pointerdown=ge,N(()=>R(n,"aria-valuenow",P())),n})(),e(ss,{})]}}),v),Oe(le,v),R(v,"id",Fn),N(n=>{var A=!!s(),K=!!u(),Me=!!D(),Ie=!!f(),fe=!!ee(),Re=!!(o.terminal.fullscreen()&&o.view("workbench").terminal.opened()),Te=`${m()}px`,ke=`${P()}px`,be=`${ae()}px`,Se=`${C().left}px`,je=`${C().right}px`,xe=!!s(),ze=s()?"关闭左侧栏":"打开左侧栏",$e=s()?"关闭左侧栏":"打开左侧栏",Ce=!!u(),Ae=u()?"关闭右侧栏":"打开右侧栏",We=u()?"关闭右侧栏":"打开右侧栏",t=!!ee(),l=!ee();return A!==n.e&&d.classList.toggle("has-left-sidebar",n.e=A),K!==n.t&&d.classList.toggle("has-right-sidebar",n.t=K),Me!==n.a&&d.classList.toggle("is-resizing-left",n.a=Me),Ie!==n.o&&d.classList.toggle("is-resizing-right",n.o=Ie),fe!==n.i&&d.classList.toggle("has-terminal-open",n.i=fe),Re!==n.n&&d.classList.toggle("has-terminal-fullscreen",n.n=Re),Te!==n.s&&Le(d,"--os-client-sidebar-w",n.s=Te),ke!==n.h&&Le(d,"--os-client-tool-w",n.h=ke),be!==n.r&&Le(d,"--os-client-terminal-h",n.r=be),Se!==n.d&&Le(d,"--os-client-terminal-left",n.d=Se),je!==n.l&&Le(d,"--os-client-terminal-right",n.l=je),xe!==n.u&&a.classList.toggle("is-active",n.u=xe),ze!==n.c&&R(a,"data-tooltip",n.c=ze),$e!==n.w&&R(a,"aria-label",n.w=$e),Ce!==n.m&&b.classList.toggle("is-active",n.m=Ce),Ae!==n.f&&R(b,"data-tooltip",n.f=Ae),We!==n.y&&R(b,"aria-label",n.y=We),t!==n.g&&v.classList.toggle("is-open",n.g=t),l!==n.p&&R(v,"aria-hidden",n.p=l),n},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0,l:void 0,u:void 0,c:void 0,w:void 0,m:void 0,f:void 0,y:void 0,g:void 0,p:void 0}),d})()}ye(["click","pointerdown","keydown"]);export{bs as WorkbenchShell};
@@ -0,0 +1 @@
1
+ import{R as q,Q as D,O as I,c as k,B as g,y as N,i as a,b as o,t as v,dg as u,d as O,ab as E,cK as B,bm as H,cy as _,ct as C,cs as L,x as K,A as Q,bN as x,S as z,f as G,s as J,F as V,m as X,dh as Y}from"./index-Cxa2Vk80.js";var Z=v("<p class=os-client-skills-login-hint>登录后可同步个人空间技能。 "),ee=v('<div class="os-client-capability-page os-client-skills-page"><section class=os-client-capability-selector aria-label=技能设置><div class=os-client-capability-current-domain><span>技能设置:</span><strong></strong><small></small></div><div class="os-client-capability-tabs os-client-skills-tabs"role=tablist aria-label=技能管理视图></div></section><div class=os-client-capability-page-body>'),te=v("<button type=button><strong></strong><small>");function ae(c){const s=new URLSearchParams(c).get("tab");if(s==="list"||s==="repo"||s==="upload")return s}function ne(){const c=q(),s=D(),A=I(),[b,P]=k(0),R=g(()=>(b(),!!E())),d=g(()=>!R()),[n,T]=k(ae(c.search)??"list"),M=g(()=>{b();const e=E();return e&&(B(e,A.projects.lastCode())||H(e))||""}),p=e=>{T(e),s(x(e),{replace:!0})};N(()=>{const e=()=>P(i=>i+1);window.addEventListener(_,e),window.addEventListener(C,e),window.addEventListener(L,e),K(()=>{window.removeEventListener(_,e),window.removeEventListener(C,e),window.removeEventListener(L,e)})});const h=()=>u.find(e=>e.id===n())??u[0];return(()=>{var e=ee(),i=e.firstChild,m=i.firstChild,F=m.firstChild,f=F.nextSibling,U=f.nextSibling,w=m.nextSibling,W=i.nextSibling;return a(f,()=>h().label),a(U,()=>h().hint),a(i,o(z,{get when(){return d()},get children(){var t=Z();return t.firstChild,a(t,o(Q,{get href(){return`/login?redirect=${encodeURIComponent(x(n()))}`},children:"去登录"}),null),t}}),w),a(w,o(V,{each:u,children:t=>(()=>{var r=te(),S=r.firstChild,j=S.nextSibling;return r.$$click=()=>p(t.id),a(S,()=>t.label),a(j,()=>t.hint),G(l=>{var $=n()===t.id,y=n()===t.id;return $!==l.e&&r.classList.toggle("is-active",l.e=$),y!==l.t&&J(r,"aria-pressed",l.t=y),l},{e:void 0,t:void 0}),r})()})),a(W,o(Y,{get directory(){return X(()=>!!d())()?void 0:M()||void 0},get loginRequired(){return d()},get tab(){return n()},onTabChange:p,variant:"page-body"})),e})()}O(["click"]);export{ne as WorkbenchSkillsPage};
@@ -1 +1 @@
1
- const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609020913/assets/staplebops-03-Aug82oH0.aac";export{e as default};
1
+ const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609031600/assets/staplebops-03-Aug82oH0.aac";export{e as default};
@@ -1 +1 @@
1
- const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609020913/assets/staplebops-04-olyHi8qQ.aac";export{e as default};
1
+ const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609031600/assets/staplebops-04-olyHi8qQ.aac";export{e as default};
@@ -1 +1 @@
1
- const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609020913/assets/staplebops-06-Cj_2vOI4.aac";export{e as default};
1
+ const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609031600/assets/staplebops-06-Cj_2vOI4.aac";export{e as default};
@@ -1 +1 @@
1
- const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609020913/assets/staplebops-07-cqQEvbIf.aac";export{e as default};
1
+ const e="https://cdn.jsdelivr.net/npm/@onescience/onecode-web@1.14.50-202609031600/assets/staplebops-07-cqQEvbIf.aac";export{e as default};
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-Cxa2Vk80.js","assets/index-q70uwQje.css"])))=>i.map(i=>d[i]);
2
+ import{d_ as z,T as X,V as Y,at as I,W as Z,Q as ee,bC as H,x as K,c as te,a as ae,e1 as se,e2 as Q,e3 as ne,e4 as re,B as O,e5 as le,i as a,b as s,e6 as b,S as _,F as A,dn as ce,m as T,f as G,ar as oe,bT as w,e7 as ie,s as ue,c0 as de,di as ge,dl as pe,bk as he,az as ve,t as u,bO as be,cv as me,d as fe}from"./index-Cxa2Vk80.js";var xe=u("<div class=os-ssh-dialog-stack>"),N=u('<div class="flex flex-col px-2 pb-2"><div class="flex flex-col p-3 bg-background-base rounded-sm min-h-14 gap-2"><div class="flex flex-wrap gap-2 pt-1">'),ye=u('<div class="flex items-center gap-1 w-[360px] rounded-xl shadow-[var(--shadow-lg-border-base)]">'),V=u('<div class="text-14-regular text-text-base text-center my-auto py-2">'),_e=u('<button type=button class="flex items-center gap-2 w-full h-8 pl-3 pr-2 py-1 rounded-md hover:bg-surface-raised-base-hover transition-colors text-left"><div></div><span class="text-14-regular text-text-base truncate flex-1"></span><div>'),$e=u('<span class="text-11-regular text-text-weaker shrink-0">· 检测中...'),ke=u('<span class="text-12-regular text-text-weak truncate pl-3.5">'),Se=u('<button type=button class="flex flex-col gap-0.5 w-full px-3 py-1.5 rounded-md hover:bg-surface-raised-base-hover transition-colors text-left"><div class="flex items-center gap-2 min-w-0"><span class="os-ssh-connectivity-dot shrink-0"aria-hidden=true></span><span class="text-14-regular text-text-base truncate"></span><span class="text-11-regular text-text-weaker shrink-0">'),we=u('<span class="text-11-regular text-text-weaker shrink-0">· ');const Ce=()=>{const $=z(),m=de(),f=H(),k=I(),C=ge();return pe(()=>({mutationFn:async i=>{await($.data.mcp[i]?.status==="connected"?m.client.mcp.disconnect({name:i}):m.client.mcp.connect({name:i}))},onSuccess:()=>k.refetchQueries(C.mcp(ve($.directory))),onError:i=>{he({variant:"error",title:f.t("common.requestFailed"),description:i instanceof Error?i.message:String(i)})}}))};function De($){const m=z(),f=X(),k=Y(),C=I(),i=Z(),E=ee(),c=H();let M=0,F=!1;K(()=>{F=!0,M+=1});const[L,R]=te();ae(()=>{if(!$.shown()){R(void 0);return}let r=!1;const e=Q();(async()=>{const t=await se(k.url);r||e!==Q()||t===void 0||(R(t),ne(t),await re({serverUrl:k.url,queryClient:C}).catch(()=>{}))})(),K(()=>{r=!0})});const d=Ce(),B=O(()=>{const r=new Set([...Object.keys(f.data.config.mcp??{}),...Object.keys(m.data.mcp??{})]);return Array.from(r).sort((e,t)=>e.localeCompare(t))}),U=r=>m.data.mcp?.[r]?.status,j=O(()=>{const r=L()??f.data.config.ssh??{};return Object.entries(r).map(([e,t])=>({name:e,config:t})).filter(e=>!!e.config&&typeof e.config=="object"&&"host"in e.config).sort((e,t)=>e.name.localeCompare(t.name))}),W=O(()=>L()??f.data.config.ssh),D=le({ssh:W}),P=r=>{const e=++M;me(()=>import("./index-Cxa2Vk80.js").then(t=>t.e9),__vite__mapDeps([0,1])).then(t=>{F||M!==e||i.show(()=>(()=>{var o=xe();return a(o,s(t.DialogSelectSsh,{initialMode:r})),o})())})},q=r=>{E(be("mcp",r))};return(()=>{var r=ye();return a(r,s(b,{get"aria-label"(){return c.t("status.popover.ariaLabel")},class:"tabs bg-background-strong rounded-xl overflow-hidden","data-component":"tabs","data-active":"mcp",defaultValue:"mcp",variant:"alt",get children(){return[s(b.List,{"data-slot":"tablist",class:"bg-transparent border-b-0 px-4 pt-2 pb-0 gap-3 h-10",get children(){return[s(b.Trigger,{value:"mcp","data-slot":"tab",class:"text-12-regular",get children(){return c.t("status.popover.tab.mcp")}}),s(b.Trigger,{value:"ssh","data-slot":"tab",class:"text-12-regular",get children(){return c.t("status.popover.tab.ssh")}})]}}),s(b.Content,{value:"mcp",get children(){var e=N(),t=e.firstChild,o=t.firstChild;return a(t,s(_,{get when(){return B().length>0},get fallback(){return(()=>{var n=V();return a(n,()=>c.t("dialog.mcp.empty")),n})()},get children(){return s(A,{get each(){return B()},children:n=>{const h=()=>U(n),g=()=>h()==="connected";return(()=>{var p=_e(),x=p.firstChild,y=x.nextSibling,S=y.nextSibling;return p.$$click=()=>{d.isPending||d.mutate(n)},a(y,n),S.$$click=l=>l.stopPropagation(),a(S,s(ce,{get checked(){return g()},get disabled(){return T(()=>!!d.isPending)()&&d.variables===n},onChange:()=>{d.isPending||d.mutate(n)}})),G(l=>{var v=d.isPending&&d.variables===n,J={"size-2 rounded-full shrink-0":!0,"bg-icon-success-base":g(),"bg-border-weak-base":!g()};return v!==l.e&&(p.disabled=l.e=v),l.t=oe(x,J,l.t),l},{e:void 0,t:void 0}),p})()}})}}),o),a(o,s(w,{variant:"secondary",class:"h-8 px-3 py-1.5",onClick:()=>q(),get children(){return c.t("status.popover.action.manageMcp")}}),null),a(o,s(w,{variant:"secondary",icon:"plus-small",class:"h-8 px-3 py-1.5",onClick:()=>q("add"),get children(){return c.t("dialog.mcp.addButton")}}),null),e}}),s(b.Content,{value:"ssh",get children(){var e=N(),t=e.firstChild,o=t.firstChild;return a(t,s(_,{get when(){return j().length>0},get fallback(){return(()=>{var n=V();return a(n,()=>c.t("dialog.ssh.empty")),n})()},get children(){return s(A,{get each(){return j()},children:n=>{const h=()=>D.byName()[n.name];return(()=>{var g=Se(),p=g.firstChild,x=p.firstChild,y=x.nextSibling,S=y.nextSibling;return g.$$click=()=>P(),a(y,()=>n.name),a(S,(()=>{var l=T(()=>n.config.enabled===!1);return()=>l()?c.t("dialog.ssh.status.disabled"):c.t("dialog.ssh.status.enabled")})()),a(p,s(_,{get when(){return h()},children:l=>(()=>{var v=we();return v.firstChild,a(v,()=>ie(l().connectivity),null),v})()}),null),a(p,s(_,{get when(){return T(()=>!!D.loading())()&&!h()},get children(){return $e()}}),null),a(g,s(_,{get when(){return n.config.remotePath},get children(){var l=ke();return a(l,()=>n.config.remotePath),l}}),null),G(()=>ue(x,"data-state",D.loading()&&!h()?"testing":h()?.connectivity??"idle")),g})()}})}}),o),a(o,s(w,{variant:"secondary",class:"h-8 px-3 py-1.5",onClick:()=>P(),get children(){return c.t("status.popover.action.manageSsh")}}),null),a(o,s(w,{variant:"secondary",icon:"plus-small",class:"h-8 px-3 py-1.5",onClick:()=>P("add"),get children(){return c.t("dialog.ssh.addButton")}}),null),e}})]}})),r})()}fe(["click"]);export{De as StatusPopoverBody};