pi-cloud 2.0.2 → 2.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +7 -1
- package/CHANGELOG.md +22 -0
- package/client/dist/.vite/manifest.json +335 -322
- package/client/dist/assets/{EditorPanel-CVtykOZb.css → EditorPanel-05eppUGB.css} +1 -1
- package/client/dist/assets/{EditorPanel-CmUoE78w.js → EditorPanel-DjSEzAcA.js} +196 -194
- package/client/dist/assets/GitChangesView-C19K76Go.css +1 -0
- package/client/dist/assets/GitChangesView-CzdZfPVS.js +4 -0
- package/client/dist/assets/GitHistoryView-CY510Ujt.css +1 -0
- package/client/dist/assets/GitHistoryView-DAW-MXtb.js +3 -0
- package/client/dist/assets/MemoryCenter-pR90CW4C.js +1 -0
- package/client/dist/assets/{PhCaretLeft.vue-mR6H4iil.js → PhCaretLeft.vue-DvBClUvX.js} +1 -1
- package/client/dist/assets/{PhFolderOpen.vue-CBZCIEKc.js → PhFolderOpen.vue-3LXINHx8.js} +1 -1
- package/client/dist/assets/SettingsDialog-Bq1Z3DZI.js +5 -0
- package/client/dist/assets/SettingsDialog-DQPiq1vt.css +1 -0
- package/client/dist/assets/TaskInboxPanel-BPLcGRv9.js +1 -0
- package/client/dist/assets/{TerminalPanel-BKnITvmW.js → TerminalPanel-cKyF8WQc.js} +1 -1
- package/client/dist/assets/{abnfDiagram-VCTEODGH-C0onveOK.js → abnfDiagram-VCTEODGH-E5SFS0yC.js} +1 -1
- package/client/dist/assets/{arc-BtnkAKcM.js → arc-DycaAm6T.js} +1 -1
- package/client/dist/assets/{architectureDiagram-5GKGNRK7-BWzkt3mg.js → architectureDiagram-5GKGNRK7-DuhHAhfl.js} +1 -1
- package/client/dist/assets/{blockDiagram-NRAW4CY4-B5U3jj5J.js → blockDiagram-NRAW4CY4-CtGRxwRI.js} +1 -1
- package/client/dist/assets/{c4Diagram-UCG6FXSJ-BijI8bRn.js → c4Diagram-UCG6FXSJ-BiiMxfZp.js} +1 -1
- package/client/dist/assets/channel-C5r64Ao4.js +1 -0
- package/client/dist/assets/{chunk-2Q5K7J3B-BEieUt6C.js → chunk-2Q5K7J3B-CDZ0_s8n.js} +1 -1
- package/client/dist/assets/{chunk-5VM5RSS4-DK306biR.js → chunk-5VM5RSS4-sB3leBwr.js} +1 -1
- package/client/dist/assets/{chunk-F27PBJKO-jkwA9GYW.js → chunk-F27PBJKO-D8iWeCQF.js} +1 -1
- package/client/dist/assets/{chunk-G27WJ6UU-DnVXeFY7.js → chunk-G27WJ6UU-DD2fIuBW.js} +1 -1
- package/client/dist/assets/{chunk-JWPE2WC7-DpOSXvW8.js → chunk-JWPE2WC7-B3xxW2KI.js} +1 -1
- package/client/dist/assets/{chunk-LCL6LL3I-BD7QKy4w.js → chunk-LCL6LL3I-C21DLXxq.js} +1 -1
- package/client/dist/assets/{chunk-POPQ4Y6H-BqLcddFA.js → chunk-POPQ4Y6H-I4QgfJZx.js} +1 -1
- package/client/dist/assets/{chunk-SVP7TREG-C9GhrbFg.js → chunk-SVP7TREG-VbaUClr5.js} +1 -1
- package/client/dist/assets/{chunk-XXDRQBXY-jQoIqp5a.js → chunk-XXDRQBXY-DLw3kW40.js} +1 -1
- package/client/dist/assets/classDiagram-DTDB5LWJ-ClxIA4Iz.js +1 -0
- package/client/dist/assets/classDiagram-v2-JRS7N3AN-ClxIA4Iz.js +1 -0
- package/client/dist/assets/{cose-bilkent-JH36ORCC-DNt10hsx.js → cose-bilkent-JH36ORCC-BOamffmB.js} +1 -1
- package/client/dist/assets/{cssMode-D5VnGCRL.js → cssMode-CBdHgd4L.js} +1 -1
- package/client/dist/assets/{cynefin-OW5HDTMX-wI0wNPcp.js → cynefin-OW5HDTMX-rQvby0lk.js} +1 -1
- package/client/dist/assets/{cynefinDiagram-5FMLGOSQ-DwksvA8r.js → cynefinDiagram-5FMLGOSQ-BZWSzmhI.js} +1 -1
- package/client/dist/assets/{dagre-3AP2YEHR-ZY-MhFWR.js → dagre-3AP2YEHR-CSYQ78mc.js} +1 -1
- package/client/dist/assets/{diagram-S7CK7UJ4-BKaJVqZu.js → diagram-S7CK7UJ4-TDm0jY-y.js} +1 -1
- package/client/dist/assets/{diagram-UQ7AKVKN-DAaE-rA1.js → diagram-UQ7AKVKN-BEK9v3UO.js} +1 -1
- package/client/dist/assets/{diagram-VSXAHHWV-CJJ9xyap.js → diagram-VSXAHHWV-DN1fDjHm.js} +1 -1
- package/client/dist/assets/{diagram-VX7I27RA-4Er142Er.js → diagram-VX7I27RA-Dps0-Oiv.js} +1 -1
- package/client/dist/assets/{diagram-Z3DM3KII-eEe26_w-.js → diagram-Z3DM3KII-_HuCaT7o.js} +1 -1
- package/client/dist/assets/{ebnfDiagram-PWID7BFC-Dshy_lHs.js → ebnfDiagram-PWID7BFC-DM20IsBH.js} +1 -1
- package/client/dist/assets/{erDiagram-SSCWMZ5O-k7LwDRbW.js → erDiagram-SSCWMZ5O-Wa0fYRpx.js} +1 -1
- package/client/dist/assets/{flowDiagram-A5DVABFB-7_X479bX.js → flowDiagram-A5DVABFB-GI8ygHcX.js} +1 -1
- package/client/dist/assets/{freemarker2-B7Gu__z_.js → freemarker2-BDOhjTEG.js} +1 -1
- package/client/dist/assets/{ganttDiagram-EL5Y4UJY-5WmBzvON.js → ganttDiagram-EL5Y4UJY-VWo3tmSh.js} +1 -1
- package/client/dist/assets/{gitGraphDiagram-WWUBYQGX-CGTy36Lq.js → gitGraphDiagram-WWUBYQGX-BACh_dfL.js} +1 -1
- package/client/dist/assets/{handlebars-DRBRCJNd.js → handlebars-VtJCRZXm.js} +1 -1
- package/client/dist/assets/{html-6prUe0kc.js → html-QKZpDpWm.js} +1 -1
- package/client/dist/assets/{htmlMode-DWoHKeAk.js → htmlMode-CcbYa-9U.js} +1 -1
- package/client/dist/assets/index-7hqurJ6S.css +1 -0
- package/client/dist/assets/index-BEdzBcRP.js +407 -0
- package/client/dist/assets/{index-GTyUzvDG.js → index-CnAFHum-.js} +1 -1
- package/client/dist/assets/{infoDiagram-RXCK75RN-DZVb1P4d.js → infoDiagram-RXCK75RN-HyxwzqeC.js} +1 -1
- package/client/dist/assets/{ishikawaDiagram-5VMMS53U-CMgYHU70.js → ishikawaDiagram-5VMMS53U-DW12nYAB.js} +1 -1
- package/client/dist/assets/{javascript-Celvl7cV.js → javascript-BH2NT4f9.js} +1 -1
- package/client/dist/assets/{journeyDiagram-EYS64GPL-BnqHXNJS.js → journeyDiagram-EYS64GPL-cZq67mKh.js} +1 -1
- package/client/dist/assets/{jsonMode-DLC0POfi.js → jsonMode-DBFCjAht.js} +1 -1
- package/client/dist/assets/{kanban-definition-3QL26DDD-BeStEVi-.js → kanban-definition-3QL26DDD-CTl6MllY.js} +1 -1
- package/client/dist/assets/{layout-B8XEB-tZ.js → layout-COJhPF_X.js} +1 -1
- package/client/dist/assets/{linear-C1qdgmvA.js → linear-CISlOH8-.js} +1 -1
- package/client/dist/assets/{liquid-CiU5o5FX.js → liquid-CJMBQvrh.js} +1 -1
- package/client/dist/assets/{lspLanguageFeatures-BXNRwtlE.js → lspLanguageFeatures-DW0GDbKY.js} +1 -1
- package/client/dist/assets/{mdx-CfTUs1eY.js → mdx-DbvY5p5Q.js} +1 -1
- package/client/dist/assets/{mermaid.core-CFpSBIjf.js → mermaid.core-6wQEj5oY.js} +31 -31
- package/client/dist/assets/{mindmap-definition-FBJOCRG2-CUNP7NW4.js → mindmap-definition-FBJOCRG2-BmDs-Kvc.js} +1 -1
- package/client/dist/assets/{pegDiagram-XKGWAZYB-bRD6LI7t.js → pegDiagram-XKGWAZYB-B9lhiwTj.js} +1 -1
- package/client/dist/assets/{pieDiagram-E7YTZNPT-CUE2D9Mz.js → pieDiagram-E7YTZNPT-BK2wOrkg.js} +1 -1
- package/client/dist/assets/{python-rOgKTqjK.js → python-Dhvww05H.js} +1 -1
- package/client/dist/assets/{quadrantDiagram-AXDQQJYC-zDDE2XzB.js → quadrantDiagram-AXDQQJYC-BwrSFUdz.js} +1 -1
- package/client/dist/assets/{railroadDiagram-O6MQD6OU-3TRS2gLn.js → railroadDiagram-O6MQD6OU-OKUE5uEt.js} +1 -1
- package/client/dist/assets/{razor-DhEzBZvo.js → razor-C-_EHJcK.js} +1 -1
- package/client/dist/assets/{requirementDiagram-EFPCY7ZU-Cgm0MiBG.js → requirementDiagram-EFPCY7ZU-BL_P4bjE.js} +1 -1
- package/client/dist/assets/{sankeyDiagram-P5KCCOFB-DzQfpaqZ.js → sankeyDiagram-P5KCCOFB-Cj1I06hb.js} +1 -1
- package/client/dist/assets/{sequenceDiagram-WJ2MYXX4-D_eKGGY5.js → sequenceDiagram-WJ2MYXX4-D0L0IdkF.js} +1 -1
- package/client/dist/assets/{sizeCapture-X5ZJPWSS-BVFpPdEZ.js → sizeCapture-X5ZJPWSS-CEV3-bek.js} +1 -1
- package/client/dist/assets/{stateDiagram-HBIQ2CUA-Bvp5OM6x.js → stateDiagram-HBIQ2CUA-BOD-54ip.js} +1 -1
- package/client/dist/assets/stateDiagram-v2-4QOOHH4V-Bqqdavzk.js +1 -0
- package/client/dist/assets/{swimlanes-XN3QIQJK-B497DW3A.js → swimlanes-XN3QIQJK-CGiwYks4.js} +1 -1
- package/client/dist/assets/swimlanesDiagram-VK2B7HYN-CgwmAjfg.js +8 -0
- package/client/dist/assets/{timeline-definition-24CTP7MA-BHAeybVL.js → timeline-definition-24CTP7MA-ZgPnjDG_.js} +1 -1
- package/client/dist/assets/{tsMode-BKQ7PNBK.js → tsMode-DT5jMTFM.js} +1 -1
- package/client/dist/assets/{typescript-0T3kV3Fw.js → typescript-BjCX65yY.js} +1 -1
- package/client/dist/assets/{useTerminal-D0Eg4ohV.js → useTerminal-BHIbuphG.js} +1 -1
- package/client/dist/assets/{vennDiagram-4TSXK5OY-C3aoPRLD.js → vennDiagram-4TSXK5OY-Ca2MxBLC.js} +1 -1
- package/client/dist/assets/{wardleyDiagram-VM6X3IG4-D45EDW-W.js → wardleyDiagram-VM6X3IG4-Bqzt0pcq.js} +1 -1
- package/client/dist/assets/{workers-nJulRuKZ.js → workers-BIdikAp3.js} +1 -1
- package/client/dist/assets/{xml-Dm41fNV2.js → xml-CwVKr8bK.js} +1 -1
- package/client/dist/assets/{xychartDiagram-S5SC5T6Z-CCfr24LB.js → xychartDiagram-S5SC5T6Z-CpU075HP.js} +1 -1
- package/client/dist/assets/{yaml-BHs6-_Vy.js → yaml-wprV8sgi.js} +1 -1
- package/client/dist/index.html +2 -2
- package/package.json +1 -1
- package/server/dist/index.js +863 -263
- package/client/dist/assets/GitHistoryView-BZF9vYG5.css +0 -1
- package/client/dist/assets/GitHistoryView-v-2M8_wB.js +0 -2
- package/client/dist/assets/MemoryCenter-C7FlmiQa.js +0 -1
- package/client/dist/assets/SettingsDialog-BaIuifOT.css +0 -1
- package/client/dist/assets/SettingsDialog-CmkVcpN6.js +0 -5
- package/client/dist/assets/TaskInboxPanel-CZiNlRVB.js +0 -1
- package/client/dist/assets/channel-Fc9PxOLB.js +0 -1
- package/client/dist/assets/classDiagram-DTDB5LWJ-D6WMV2bo.js +0 -1
- package/client/dist/assets/classDiagram-v2-JRS7N3AN-D6WMV2bo.js +0 -1
- package/client/dist/assets/index-D8pylZiM.css +0 -1
- package/client/dist/assets/index-nLzofEMh.js +0 -407
- package/client/dist/assets/stateDiagram-v2-4QOOHH4V-CM3P74Kw.js +0 -1
- package/client/dist/assets/swimlanesDiagram-VK2B7HYN-DAMUXB40.js +0 -8
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{d as X,i as T,o as l,c,r as Pe,a as b,m as $e,b as m,e,f as Se,g as Vt,v as R,t as n,u as s,l as y,z as L,V as W,q as oe,s as xe,k as A,al as ut,X as Ae,E as p,_ as Re,a4 as Zt,a6 as st,ao as Ct,ap as rs,a9 as ce,U as ds,a1 as Q,$ as gs,ag as Mt,x as ps,w as J,j as We,aq as vs,ak as ms,a0 as hs,ae as fs,ar as ys,as as bs,O as ws,a7 as ks,T as Ps,at as $s,au as _s}from"./index-BEdzBcRP.js";import{G as rt,D as As}from"./PhFolderOpen.vue-3LXINHx8.js";const Ss=["width","height","fill","transform"],Ds={key:0},Cs=e("path",{d:"M225.29,165.93C216.61,151,212,129.57,212,104a84,84,0,0,0-168,0c0,25.58-4.59,47-13.27,61.93A20.08,20.08,0,0,0,30.66,186,19.77,19.77,0,0,0,48,196H84.18a44,44,0,0,0,87.64,0H208a19.77,19.77,0,0,0,17.31-10A20.08,20.08,0,0,0,225.29,165.93ZM128,212a20,20,0,0,1-19.6-16h39.2A20,20,0,0,1,128,212ZM54.66,172C63.51,154,68,131.14,68,104a60,60,0,0,1,120,0c0,27.13,4.48,50,13.33,68Z"},null,-1),Vs=[Cs],Zs={key:1},Ms=e("path",{d:"M208,192H48a8,8,0,0,1-6.88-12C47.71,168.6,56,139.81,56,104a72,72,0,0,1,144,0c0,35.82,8.3,64.6,14.9,76A8,8,0,0,1,208,192Z",opacity:"0.2"},null,-1),xs=e("path",{d:"M221.8,175.94C216.25,166.38,208,139.33,208,104a80,80,0,1,0-160,0c0,35.34-8.26,62.38-13.81,71.94A16,16,0,0,0,48,200H88.81a40,40,0,0,0,78.38,0H208a16,16,0,0,0,13.8-24.06ZM128,216a24,24,0,0,1-22.62-16h45.24A24,24,0,0,1,128,216ZM48,184c7.7-13.24,16-43.92,16-80a64,64,0,1,1,128,0c0,36.05,8.28,66.73,16,80Z"},null,-1),Hs=[Ms,xs],Ts={key:2},Us=e("path",{d:"M221.8,175.94C216.25,166.38,208,139.33,208,104a80,80,0,1,0-160,0c0,35.34-8.26,62.38-13.81,71.94A16,16,0,0,0,48,200H88.81a40,40,0,0,0,78.38,0H208a16,16,0,0,0,13.8-24.06ZM128,216a24,24,0,0,1-22.62-16h45.24A24,24,0,0,1,128,216Z"},null,-1),Ls=[Us],Is={key:3},Es=e("path",{d:"M220.07,176.94C214.41,167.2,206,139.73,206,104a78,78,0,1,0-156,0c0,35.74-8.42,63.2-14.08,72.94A14,14,0,0,0,48,198H90.48a38,38,0,0,0,75,0H208a14,14,0,0,0,12.06-21.06ZM128,218a26,26,0,0,1-25.29-20h50.58A26,26,0,0,1,128,218Zm81.71-33a1.9,1.9,0,0,1-1.7,1H48a1.9,1.9,0,0,1-1.7-1,2,2,0,0,1,0-2C53.87,170,62,139.69,62,104a66,66,0,1,1,132,0c0,35.68,8.14,65.95,15.71,79A2,2,0,0,1,209.71,185Z"},null,-1),Bs=[Es],Ws={key:4},Rs=e("path",{d:"M221.8,175.94C216.25,166.38,208,139.33,208,104a80,80,0,1,0-160,0c0,35.34-8.26,62.38-13.81,71.94A16,16,0,0,0,48,200H88.81a40,40,0,0,0,78.38,0H208a16,16,0,0,0,13.8-24.06ZM128,216a24,24,0,0,1-22.62-16h45.24A24,24,0,0,1,128,216ZM48,184c7.7-13.24,16-43.92,16-80a64,64,0,1,1,128,0c0,36.05,8.28,66.73,16,80Z"},null,-1),Gs=[Rs],js={key:5},zs=e("path",{d:"M218.35,178C212.58,168,204,140.13,204,104a76,76,0,1,0-152,0c0,36.13-8.59,64-14.36,73.95A12,12,0,0,0,48,196H92.23a36,36,0,0,0,71.54,0H208A12,12,0,0,0,218.35,178ZM128,220a28,28,0,0,1-27.71-24h55.42A28,28,0,0,1,128,220Zm83.45-34a3.91,3.91,0,0,1-3.44,2H48a3.91,3.91,0,0,1-3.44-2,4,4,0,0,1,0-4C52,169.17,60,139.32,60,104a68,68,0,1,1,136,0c0,35.31,8,65.17,15.44,78A4,4,0,0,1,211.45,186Z"},null,-1),Ks=[zs],Ns={name:"PhBell"},Fs=X({...Ns,props:{weight:{type:String},size:{type:[String,Number]},color:{type:String},mirrored:{type:Boolean}},setup(v){const r=v,t=T("weight","regular"),d=T("size","1em"),_=T("color","currentColor"),S=T("mirrored",!1),g=m(()=>r.weight??t),f=m(()=>r.size??d),D=m(()=>r.color??_),Z=m(()=>r.mirrored!==void 0?r.mirrored?"scale(-1, 1)":void 0:S?"scale(-1, 1)":void 0);return(P,x)=>(l(),c("svg",$e({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 256 256",width:f.value,height:f.value,fill:D.value,transform:Z.value},P.$attrs),[Pe(P.$slots,"default"),g.value==="bold"?(l(),c("g",Ds,Vs)):g.value==="duotone"?(l(),c("g",Zs,Hs)):g.value==="fill"?(l(),c("g",Ts,Ls)):g.value==="light"?(l(),c("g",Is,Bs)):g.value==="regular"?(l(),c("g",Ws,Gs)):g.value==="thin"?(l(),c("g",js,Ks)):b("",!0)],16,Ss))}}),Os=["width","height","fill","transform"],qs={key:0},Ys=e("path",{d:"M128,20A108,108,0,0,0,31.85,177.23L21,209.66A20,20,0,0,0,46.34,235l32.43-10.81A108,108,0,1,0,128,20Zm0,192a84,84,0,0,1-42.06-11.27,12,12,0,0,0-6-1.62,12.1,12.1,0,0,0-3.8.62l-29.79,9.93,9.93-29.79a12,12,0,0,0-1-9.81A84,84,0,1,1,128,212Z"},null,-1),Js=[Ys],Qs={key:1},Xs=e("path",{d:"M224,128A96,96,0,0,1,79.93,211.11h0L42.54,223.58a8,8,0,0,1-10.12-10.12l12.47-37.39h0A96,96,0,1,1,224,128Z",opacity:"0.2"},null,-1),ea=e("path",{d:"M128,24A104,104,0,0,0,36.18,176.88L24.83,210.93a16,16,0,0,0,20.24,20.24l34.05-11.35A104,104,0,1,0,128,24Zm0,192a87.87,87.87,0,0,1-44.06-11.81,8,8,0,0,0-6.54-.67L40,216,52.47,178.6a8,8,0,0,0-.66-6.54A88,88,0,1,1,128,216Z"},null,-1),ta=[Xs,ea],sa={key:2},aa=e("path",{d:"M232,128A104,104,0,0,1,79.12,219.82L45.07,231.17a16,16,0,0,1-20.24-20.24l11.35-34.05A104,104,0,1,1,232,128Z"},null,-1),na=[aa],oa={key:3},la=e("path",{d:"M128,26A102,102,0,0,0,38.35,176.69L26.73,211.56a14,14,0,0,0,17.71,17.71l34.87-11.62A102,102,0,1,0,128,26Zm0,192a90,90,0,0,1-45.06-12.08,6.09,6.09,0,0,0-3-.81,6.2,6.2,0,0,0-1.9.31L40.65,217.88a2,2,0,0,1-2.53-2.53L50.58,178a6,6,0,0,0-.5-4.91A90,90,0,1,1,128,218Z"},null,-1),ia=[la],ca={key:4},ua=e("path",{d:"M128,24A104,104,0,0,0,36.18,176.88L24.83,210.93a16,16,0,0,0,20.24,20.24l34.05-11.35A104,104,0,1,0,128,24Zm0,192a87.87,87.87,0,0,1-44.06-11.81,8,8,0,0,0-6.54-.67L40,216,52.47,178.6a8,8,0,0,0-.66-6.54A88,88,0,1,1,128,216Z"},null,-1),ra=[ua],da={key:5},ga=e("path",{d:"M128,28A100,100,0,0,0,40.53,176.5l-11.9,35.69a12,12,0,0,0,15.18,15.18l35.69-11.9A100,100,0,1,0,128,28Zm0,192a92,92,0,0,1-46.07-12.35,4.05,4.05,0,0,0-2-.54,3.93,3.93,0,0,0-1.27.21L41.28,219.78a4,4,0,0,1-5.06-5.06l12.46-37.38a4,4,0,0,0-.33-3.27A92,92,0,1,1,128,220Z"},null,-1),pa=[ga],va={name:"PhChatCircle"},ma=X({...va,props:{weight:{type:String},size:{type:[String,Number]},color:{type:String},mirrored:{type:Boolean}},setup(v){const r=v,t=T("weight","regular"),d=T("size","1em"),_=T("color","currentColor"),S=T("mirrored",!1),g=m(()=>r.weight??t),f=m(()=>r.size??d),D=m(()=>r.color??_),Z=m(()=>r.mirrored!==void 0?r.mirrored?"scale(-1, 1)":void 0:S?"scale(-1, 1)":void 0);return(P,x)=>(l(),c("svg",$e({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 256 256",width:f.value,height:f.value,fill:D.value,transform:Z.value},P.$attrs),[Pe(P.$slots,"default"),g.value==="bold"?(l(),c("g",qs,Js)):g.value==="duotone"?(l(),c("g",Qs,ta)):g.value==="fill"?(l(),c("g",sa,na)):g.value==="light"?(l(),c("g",oa,ia)):g.value==="regular"?(l(),c("g",ca,ra)):g.value==="thin"?(l(),c("g",da,pa)):b("",!0)],16,Os))}}),ha=["width","height","fill","transform"],fa={key:0},ya=e("path",{d:"M224,44H32A20,20,0,0,0,12,64V192a20,20,0,0,0,20,20H224a20,20,0,0,0,20-20V64A20,20,0,0,0,224,44Zm-4,144H36V68H220ZM52,128a12,12,0,0,1,12-12H192a12,12,0,0,1,0,24H64A12,12,0,0,1,52,128Zm0-36A12,12,0,0,1,64,80H192a12,12,0,0,1,0,24H64A12,12,0,0,1,52,92Zm0,72a12,12,0,0,1,12-12h8a12,12,0,0,1,0,24H64A12,12,0,0,1,52,164Zm108,0a12,12,0,0,1-12,12H108a12,12,0,0,1,0-24h40A12,12,0,0,1,160,164Zm44,0a12,12,0,0,1-12,12h-8a12,12,0,0,1,0-24h8A12,12,0,0,1,204,164Z"},null,-1),ba=[ya],wa={key:1},ka=e("path",{d:"M232,64V192a8,8,0,0,1-8,8H32a8,8,0,0,1-8-8V64a8,8,0,0,1,8-8H224A8,8,0,0,1,232,64Z",opacity:"0.2"},null,-1),Pa=e("path",{d:"M224,48H32A16,16,0,0,0,16,64V192a16,16,0,0,0,16,16H224a16,16,0,0,0,16-16V64A16,16,0,0,0,224,48Zm0,144H32V64H224V192Zm-16-64a8,8,0,0,1-8,8H56a8,8,0,0,1,0-16H200A8,8,0,0,1,208,128Zm0-32a8,8,0,0,1-8,8H56a8,8,0,0,1,0-16H200A8,8,0,0,1,208,96ZM72,160a8,8,0,0,1-8,8H56a8,8,0,0,1,0-16h8A8,8,0,0,1,72,160Zm96,0a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h64A8,8,0,0,1,168,160Zm40,0a8,8,0,0,1-8,8h-8a8,8,0,0,1,0-16h8A8,8,0,0,1,208,160Z"},null,-1),$a=[ka,Pa],_a={key:2},Aa=e("path",{d:"M224,48H32A16,16,0,0,0,16,64V192a16,16,0,0,0,16,16H224a16,16,0,0,0,16-16V64A16,16,0,0,0,224,48ZM64,168H48a8,8,0,0,1,0-16H64a8,8,0,0,1,0,16Zm96,0H96a8,8,0,0,1,0-16h64a8,8,0,0,1,0,16Zm48,0H192a8,8,0,0,1,0-16h16a8,8,0,0,1,0,16Zm0-32H48a8,8,0,0,1,0-16H208a8,8,0,0,1,0,16Zm0-32H48a8,8,0,0,1,0-16H208a8,8,0,0,1,0,16Z"},null,-1),Sa=[Aa],Da={key:3},Ca=e("path",{d:"M224,50H32A14,14,0,0,0,18,64V192a14,14,0,0,0,14,14H224a14,14,0,0,0,14-14V64A14,14,0,0,0,224,50Zm2,142a2,2,0,0,1-2,2H32a2,2,0,0,1-2-2V64a2,2,0,0,1,2-2H224a2,2,0,0,1,2,2Zm-20-64a6,6,0,0,1-6,6H56a6,6,0,0,1,0-12H200A6,6,0,0,1,206,128Zm0-32a6,6,0,0,1-6,6H56a6,6,0,0,1,0-12H200A6,6,0,0,1,206,96ZM70,160a6,6,0,0,1-6,6H56a6,6,0,0,1,0-12h8A6,6,0,0,1,70,160Zm96,0a6,6,0,0,1-6,6H96a6,6,0,0,1,0-12h64A6,6,0,0,1,166,160Zm40,0a6,6,0,0,1-6,6h-8a6,6,0,0,1,0-12h8A6,6,0,0,1,206,160Z"},null,-1),Va=[Ca],Za={key:4},Ma=e("path",{d:"M224,48H32A16,16,0,0,0,16,64V192a16,16,0,0,0,16,16H224a16,16,0,0,0,16-16V64A16,16,0,0,0,224,48Zm0,144H32V64H224V192Zm-16-64a8,8,0,0,1-8,8H56a8,8,0,0,1,0-16H200A8,8,0,0,1,208,128Zm0-32a8,8,0,0,1-8,8H56a8,8,0,0,1,0-16H200A8,8,0,0,1,208,96ZM72,160a8,8,0,0,1-8,8H56a8,8,0,0,1,0-16h8A8,8,0,0,1,72,160Zm96,0a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h64A8,8,0,0,1,168,160Zm40,0a8,8,0,0,1-8,8h-8a8,8,0,0,1,0-16h8A8,8,0,0,1,208,160Z"},null,-1),xa=[Ma],Ha={key:5},Ta=e("path",{d:"M224,52H32A12,12,0,0,0,20,64V192a12,12,0,0,0,12,12H224a12,12,0,0,0,12-12V64A12,12,0,0,0,224,52Zm4,140a4,4,0,0,1-4,4H32a4,4,0,0,1-4-4V64a4,4,0,0,1,4-4H224a4,4,0,0,1,4,4Zm-24-64a4,4,0,0,1-4,4H56a4,4,0,0,1,0-8H200A4,4,0,0,1,204,128Zm0-32a4,4,0,0,1-4,4H56a4,4,0,0,1,0-8H200A4,4,0,0,1,204,96ZM68,160a4,4,0,0,1-4,4H56a4,4,0,0,1,0-8h8A4,4,0,0,1,68,160Zm96,0a4,4,0,0,1-4,4H96a4,4,0,0,1,0-8h64A4,4,0,0,1,164,160Zm40,0a4,4,0,0,1-4,4h-8a4,4,0,0,1,0-8h8A4,4,0,0,1,204,160Z"},null,-1),Ua=[Ta],La={name:"PhKeyboard"},Ia=X({...La,props:{weight:{type:String},size:{type:[String,Number]},color:{type:String},mirrored:{type:Boolean}},setup(v){const r=v,t=T("weight","regular"),d=T("size","1em"),_=T("color","currentColor"),S=T("mirrored",!1),g=m(()=>r.weight??t),f=m(()=>r.size??d),D=m(()=>r.color??_),Z=m(()=>r.mirrored!==void 0?r.mirrored?"scale(-1, 1)":void 0:S?"scale(-1, 1)":void 0);return(P,x)=>(l(),c("svg",$e({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 256 256",width:f.value,height:f.value,fill:D.value,transform:Z.value},P.$attrs),[Pe(P.$slots,"default"),g.value==="bold"?(l(),c("g",fa,ba)):g.value==="duotone"?(l(),c("g",wa,$a)):g.value==="fill"?(l(),c("g",_a,Sa)):g.value==="light"?(l(),c("g",Da,Va)):g.value==="regular"?(l(),c("g",Za,xa)):g.value==="thin"?(l(),c("g",Ha,Ua)):b("",!0)],16,ha))}}),Ea=["width","height","fill","transform"],Ba={key:0},Wa=e("path",{d:"M208,76H180V56A52,52,0,0,0,76,56V76H48A20,20,0,0,0,28,96V208a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V96A20,20,0,0,0,208,76ZM100,56a28,28,0,0,1,56,0V76H100ZM204,204H52V100H204Zm-60-52a16,16,0,1,1-16-16A16,16,0,0,1,144,152Z"},null,-1),Ra=[Wa],Ga={key:1},ja=e("path",{d:"M216,96V208a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V96a8,8,0,0,1,8-8H208A8,8,0,0,1,216,96Z",opacity:"0.2"},null,-1),za=e("path",{d:"M208,80H176V56a48,48,0,0,0-96,0V80H48A16,16,0,0,0,32,96V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V96A16,16,0,0,0,208,80ZM96,56a32,32,0,0,1,64,0V80H96ZM208,208H48V96H208V208Zm-68-56a12,12,0,1,1-12-12A12,12,0,0,1,140,152Z"},null,-1),Ka=[ja,za],Na={key:2},Fa=e("path",{d:"M208,80H176V56a48,48,0,0,0-96,0V80H48A16,16,0,0,0,32,96V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V96A16,16,0,0,0,208,80Zm-80,84a12,12,0,1,1,12-12A12,12,0,0,1,128,164Zm32-84H96V56a32,32,0,0,1,64,0Z"},null,-1),Oa=[Fa],qa={key:3},Ya=e("path",{d:"M208,82H174V56a46,46,0,0,0-92,0V82H48A14,14,0,0,0,34,96V208a14,14,0,0,0,14,14H208a14,14,0,0,0,14-14V96A14,14,0,0,0,208,82ZM94,56a34,34,0,0,1,68,0V82H94ZM210,208a2,2,0,0,1-2,2H48a2,2,0,0,1-2-2V96a2,2,0,0,1,2-2H208a2,2,0,0,1,2,2Zm-72-56a10,10,0,1,1-10-10A10,10,0,0,1,138,152Z"},null,-1),Ja=[Ya],Qa={key:4},Xa=e("path",{d:"M208,80H176V56a48,48,0,0,0-96,0V80H48A16,16,0,0,0,32,96V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V96A16,16,0,0,0,208,80ZM96,56a32,32,0,0,1,64,0V80H96ZM208,208H48V96H208V208Zm-68-56a12,12,0,1,1-12-12A12,12,0,0,1,140,152Z"},null,-1),en=[Xa],tn={key:5},sn=e("path",{d:"M208,84H172V56a44,44,0,0,0-88,0V84H48A12,12,0,0,0,36,96V208a12,12,0,0,0,12,12H208a12,12,0,0,0,12-12V96A12,12,0,0,0,208,84ZM92,56a36,36,0,0,1,72,0V84H92ZM212,208a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V96a4,4,0,0,1,4-4H208a4,4,0,0,1,4,4Zm-76-56a8,8,0,1,1-8-8A8,8,0,0,1,136,152Z"},null,-1),an=[sn],nn={name:"PhLock"},on=X({...nn,props:{weight:{type:String},size:{type:[String,Number]},color:{type:String},mirrored:{type:Boolean}},setup(v){const r=v,t=T("weight","regular"),d=T("size","1em"),_=T("color","currentColor"),S=T("mirrored",!1),g=m(()=>r.weight??t),f=m(()=>r.size??d),D=m(()=>r.color??_),Z=m(()=>r.mirrored!==void 0?r.mirrored?"scale(-1, 1)":void 0:S?"scale(-1, 1)":void 0);return(P,x)=>(l(),c("svg",$e({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 256 256",width:f.value,height:f.value,fill:D.value,transform:Z.value},P.$attrs),[Pe(P.$slots,"default"),g.value==="bold"?(l(),c("g",Ba,Ra)):g.value==="duotone"?(l(),c("g",Ga,Ka)):g.value==="fill"?(l(),c("g",Na,Oa)):g.value==="light"?(l(),c("g",qa,Ja)):g.value==="regular"?(l(),c("g",Qa,en)):g.value==="thin"?(l(),c("g",tn,an)):b("",!0)],16,Ea))}}),ln=["width","height","fill","transform"],cn={key:0},un=e("path",{d:"M230.14,25.86a20,20,0,0,0-19.57-5.11l-.22.07L18.44,79a20,20,0,0,0-3.06,37.25L99,157l40.71,83.65a19.81,19.81,0,0,0,18,11.38c.57,0,1.15,0,1.73-.07A19.82,19.82,0,0,0,177,237.56L235.18,45.65a1.42,1.42,0,0,0,.07-.22A20,20,0,0,0,230.14,25.86ZM156.91,221.07l-34.37-70.64,46-45.95a12,12,0,0,0-17-17l-46,46L34.93,99.09,210,46Z"},null,-1),rn=[un],dn={key:1},gn=e("path",{d:"M223.69,42.18l-58.22,192a8,8,0,0,1-14.92,1.25L108,148,20.58,105.45a8,8,0,0,1,1.25-14.92l192-58.22A8,8,0,0,1,223.69,42.18Z",opacity:"0.2"},null,-1),pn=e("path",{d:"M227.32,28.68a16,16,0,0,0-15.66-4.08l-.15,0L19.57,82.84a16,16,0,0,0-2.49,29.8L102,154l41.3,84.87A15.86,15.86,0,0,0,157.74,248q.69,0,1.38-.06a15.88,15.88,0,0,0,14-11.51l58.2-191.94c0-.05,0-.1,0-.15A16,16,0,0,0,227.32,28.68ZM157.83,231.85l-.05.14,0-.07-40.06-82.3,48-48a8,8,0,0,0-11.31-11.31l-48,48L24.08,98.25l-.07,0,.14,0L216,40Z"},null,-1),vn=[gn,pn],mn={key:2},hn=e("path",{d:"M231.4,44.34s0,.1,0,.15l-58.2,191.94a15.88,15.88,0,0,1-14,11.51q-.69.06-1.38.06a15.86,15.86,0,0,1-14.42-9.15L107,164.15a4,4,0,0,1,.77-4.58l57.92-57.92a8,8,0,0,0-11.31-11.31L96.43,148.26a4,4,0,0,1-4.58.77L17.08,112.64a16,16,0,0,1,2.49-29.8l191.94-58.2.15,0A16,16,0,0,1,231.4,44.34Z"},null,-1),fn=[hn],yn={key:3},bn=e("path",{d:"M225.88,30.12a13.83,13.83,0,0,0-13.7-3.58l-.11,0L20.14,84.77A14,14,0,0,0,18,110.85l85.56,41.64L145.12,238a13.87,13.87,0,0,0,12.61,8c.4,0,.81,0,1.21-.05a13.9,13.9,0,0,0,12.29-10.09l58.2-191.93,0-.11A13.83,13.83,0,0,0,225.88,30.12Zm-8,10.4L159.73,232.43l0,.11a2,2,0,0,1-3.76.26l-40.68-83.58,49-49a6,6,0,1,0-8.49-8.49l-49,49L23.15,100a2,2,0,0,1,.31-3.74l.11,0L215.48,38.08a1.94,1.94,0,0,1,1.92.52A2,2,0,0,1,217.92,40.52Z"},null,-1),wn=[bn],kn={key:4},Pn=e("path",{d:"M227.32,28.68a16,16,0,0,0-15.66-4.08l-.15,0L19.57,82.84a16,16,0,0,0-2.49,29.8L102,154l41.3,84.87A15.86,15.86,0,0,0,157.74,248q.69,0,1.38-.06a15.88,15.88,0,0,0,14-11.51l58.2-191.94c0-.05,0-.1,0-.15A16,16,0,0,0,227.32,28.68ZM157.83,231.85l-.05.14,0-.07-40.06-82.3,48-48a8,8,0,0,0-11.31-11.31l-48,48L24.08,98.25l-.07,0,.14,0L216,40Z"},null,-1),$n=[Pn],_n={key:5},An=e("path",{d:"M224.47,31.52a11.87,11.87,0,0,0-11.82-3L20.74,86.67a12,12,0,0,0-1.91,22.38L105,151l41.92,86.15A11.88,11.88,0,0,0,157.74,244c.34,0,.69,0,1,0a11.89,11.89,0,0,0,10.52-8.63l58.21-192,0-.08A11.85,11.85,0,0,0,224.47,31.52Zm-4.62,9.54-58.23,192a4,4,0,0,1-7.48.59l-41.3-84.86,50-50a4,4,0,1,0-5.66-5.66l-50,50-84.9-41.31a3.88,3.88,0,0,1-2.27-4,3.93,3.93,0,0,1,3-3.54L214.9,36.16A3.93,3.93,0,0,1,216,36a4,4,0,0,1,2.79,1.19A3.93,3.93,0,0,1,219.85,41.06Z"},null,-1),Sn=[An],Dn={name:"PhPaperPlaneTilt"},Cn=X({...Dn,props:{weight:{type:String},size:{type:[String,Number]},color:{type:String},mirrored:{type:Boolean}},setup(v){const r=v,t=T("weight","regular"),d=T("size","1em"),_=T("color","currentColor"),S=T("mirrored",!1),g=m(()=>r.weight??t),f=m(()=>r.size??d),D=m(()=>r.color??_),Z=m(()=>r.mirrored!==void 0?r.mirrored?"scale(-1, 1)":void 0:S?"scale(-1, 1)":void 0);return(P,x)=>(l(),c("svg",$e({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 256 256",width:f.value,height:f.value,fill:D.value,transform:Z.value},P.$attrs),[Pe(P.$slots,"default"),g.value==="bold"?(l(),c("g",cn,rn)):g.value==="duotone"?(l(),c("g",dn,vn)):g.value==="fill"?(l(),c("g",mn,fn)):g.value==="light"?(l(),c("g",yn,wn)):g.value==="regular"?(l(),c("g",kn,$n)):g.value==="thin"?(l(),c("g",_n,Sn)):b("",!0)],16,ln))}}),Vn=["width","height","fill","transform"],Zn={key:0},Mn=e("path",{d:"M68,102.06V40a12,12,0,0,0-24,0v62.06a36,36,0,0,0,0,67.88V216a12,12,0,0,0,24,0V169.94a36,36,0,0,0,0-67.88ZM56,148a12,12,0,1,1,12-12A12,12,0,0,1,56,148ZM164,88a36.07,36.07,0,0,0-24-33.94V40a12,12,0,0,0-24,0V54.06a36,36,0,0,0,0,67.88V216a12,12,0,0,0,24,0V121.94A36.07,36.07,0,0,0,164,88Zm-36,12a12,12,0,1,1,12-12A12,12,0,0,1,128,100Zm108,68a36.07,36.07,0,0,0-24-33.94V40a12,12,0,0,0-24,0v94.06a36,36,0,0,0,0,67.88V216a12,12,0,0,0,24,0V201.94A36.07,36.07,0,0,0,236,168Zm-36,12a12,12,0,1,1,12-12A12,12,0,0,1,200,180Z"},null,-1),xn=[Mn],Hn={key:1},Tn=e("path",{d:"M80,136a24,24,0,1,1-24-24A24,24,0,0,1,80,136Zm48-72a24,24,0,1,0,24,24A24,24,0,0,0,128,64Zm72,80a24,24,0,1,0,24,24A24,24,0,0,0,200,144Z",opacity:"0.2"},null,-1),Un=e("path",{d:"M64,105V40a8,8,0,0,0-16,0v65a32,32,0,0,0,0,62v49a8,8,0,0,0,16,0V167a32,32,0,0,0,0-62Zm-8,47a16,16,0,1,1,16-16A16,16,0,0,1,56,152Zm80-95V40a8,8,0,0,0-16,0V57a32,32,0,0,0,0,62v97a8,8,0,0,0,16,0V119a32,32,0,0,0,0-62Zm-8,47a16,16,0,1,1,16-16A16,16,0,0,1,128,104Zm104,64a32.06,32.06,0,0,0-24-31V40a8,8,0,0,0-16,0v97a32,32,0,0,0,0,62v17a8,8,0,0,0,16,0V199A32.06,32.06,0,0,0,232,168Zm-32,16a16,16,0,1,1,16-16A16,16,0,0,1,200,184Z"},null,-1),Ln=[Tn,Un],In={key:2},En=e("path",{d:"M84,136a28,28,0,0,1-20,26.83V216a8,8,0,0,1-16,0V162.83a28,28,0,0,1,0-53.66V40a8,8,0,0,1,16,0v69.17A28,28,0,0,1,84,136Zm52-74.83V40a8,8,0,0,0-16,0V61.17a28,28,0,0,0,0,53.66V216a8,8,0,0,0,16,0V114.83a28,28,0,0,0,0-53.66Zm72,80V40a8,8,0,0,0-16,0V141.17a28,28,0,0,0,0,53.66V216a8,8,0,0,0,16,0V194.83a28,28,0,0,0,0-53.66Z"},null,-1),Bn=[En],Wn={key:3},Rn=e("path",{d:"M62,106.6V40a6,6,0,0,0-12,0v66.6a30,30,0,0,0,0,58.8V216a6,6,0,0,0,12,0V165.4a30,30,0,0,0,0-58.8ZM56,154a18,18,0,1,1,18-18A18,18,0,0,1,56,154Zm78-95.4V40a6,6,0,0,0-12,0V58.6a30,30,0,0,0,0,58.8V216a6,6,0,0,0,12,0V117.4a30,30,0,0,0,0-58.8ZM128,106a18,18,0,1,1,18-18A18,18,0,0,1,128,106Zm102,62a30.05,30.05,0,0,0-24-29.4V40a6,6,0,0,0-12,0v98.6a30,30,0,0,0,0,58.8V216a6,6,0,0,0,12,0V197.4A30.05,30.05,0,0,0,230,168Zm-30,18a18,18,0,1,1,18-18A18,18,0,0,1,200,186Z"},null,-1),Gn=[Rn],jn={key:4},zn=e("path",{d:"M64,105V40a8,8,0,0,0-16,0v65a32,32,0,0,0,0,62v49a8,8,0,0,0,16,0V167a32,32,0,0,0,0-62Zm-8,47a16,16,0,1,1,16-16A16,16,0,0,1,56,152Zm80-95V40a8,8,0,0,0-16,0V57a32,32,0,0,0,0,62v97a8,8,0,0,0,16,0V119a32,32,0,0,0,0-62Zm-8,47a16,16,0,1,1,16-16A16,16,0,0,1,128,104Zm104,64a32.06,32.06,0,0,0-24-31V40a8,8,0,0,0-16,0v97a32,32,0,0,0,0,62v17a8,8,0,0,0,16,0V199A32.06,32.06,0,0,0,232,168Zm-32,16a16,16,0,1,1,16-16A16,16,0,0,1,200,184Z"},null,-1),Kn=[zn],Nn={key:5},Fn=e("path",{d:"M60,108.29V40a4,4,0,0,0-8,0v68.29a28,28,0,0,0,0,55.42V216a4,4,0,0,0,8,0V163.71a28,28,0,0,0,0-55.42ZM56,156a20,20,0,1,1,20-20A20,20,0,0,1,56,156Zm76-95.71V40a4,4,0,0,0-8,0V60.29a28,28,0,0,0,0,55.42V216a4,4,0,0,0,8,0V115.71a28,28,0,0,0,0-55.42ZM128,108a20,20,0,1,1,20-20A20,20,0,0,1,128,108Zm100,60a28,28,0,0,0-24-27.71V40a4,4,0,0,0-8,0V140.29a28,28,0,0,0,0,55.42V216a4,4,0,0,0,8,0V195.71A28,28,0,0,0,228,168Zm-28,20a20,20,0,1,1,20-20A20,20,0,0,1,200,188Z"},null,-1),On=[Fn],qn={name:"PhSliders"},Yn=X({...qn,props:{weight:{type:String},size:{type:[String,Number]},color:{type:String},mirrored:{type:Boolean}},setup(v){const r=v,t=T("weight","regular"),d=T("size","1em"),_=T("color","currentColor"),S=T("mirrored",!1),g=m(()=>r.weight??t),f=m(()=>r.size??d),D=m(()=>r.color??_),Z=m(()=>r.mirrored!==void 0?r.mirrored?"scale(-1, 1)":void 0:S?"scale(-1, 1)":void 0);return(P,x)=>(l(),c("svg",$e({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 256 256",width:f.value,height:f.value,fill:D.value,transform:Z.value},P.$attrs),[Pe(P.$slots,"default"),g.value==="bold"?(l(),c("g",Zn,xn)):g.value==="duotone"?(l(),c("g",Hn,Ln)):g.value==="fill"?(l(),c("g",In,Bn)):g.value==="light"?(l(),c("g",Wn,Gn)):g.value==="regular"?(l(),c("g",jn,Kn)):g.value==="thin"?(l(),c("g",Nn,On)):b("",!0)],16,Vn))}}),Jn=["width","height","fill","transform"],Qn={key:0},Xn=e("path",{d:"M199,125.31l-49.88-18.39L130.69,57a19.92,19.92,0,0,0-37.38,0L74.92,106.92,25,125.31a19.92,19.92,0,0,0,0,37.38l49.88,18.39L93.31,231a19.92,19.92,0,0,0,37.38,0l18.39-49.88L199,162.69a19.92,19.92,0,0,0,0-37.38Zm-63.38,35.16a12,12,0,0,0-7.11,7.11L112,212.28l-16.47-44.7a12,12,0,0,0-7.11-7.11L43.72,144l44.7-16.47a12,12,0,0,0,7.11-7.11L112,75.72l16.47,44.7a12,12,0,0,0,7.11,7.11L180.28,144ZM140,40a12,12,0,0,1,12-12h12V16a12,12,0,0,1,24,0V28h12a12,12,0,0,1,0,24H188V64a12,12,0,0,1-24,0V52H152A12,12,0,0,1,140,40ZM252,88a12,12,0,0,1-12,12h-4v4a12,12,0,0,1-24,0v-4h-4a12,12,0,0,1,0-24h4V72a12,12,0,0,1,24,0v4h4A12,12,0,0,1,252,88Z"},null,-1),eo=[Xn],to={key:1},so=e("path",{d:"M194.82,151.43l-55.09,20.3-20.3,55.09a7.92,7.92,0,0,1-14.86,0l-20.3-55.09-55.09-20.3a7.92,7.92,0,0,1,0-14.86l55.09-20.3,20.3-55.09a7.92,7.92,0,0,1,14.86,0l20.3,55.09,55.09,20.3A7.92,7.92,0,0,1,194.82,151.43Z",opacity:"0.2"},null,-1),ao=e("path",{d:"M197.58,129.06,146,110l-19-51.62a15.92,15.92,0,0,0-29.88,0L78,110l-51.62,19a15.92,15.92,0,0,0,0,29.88L78,178l19,51.62a15.92,15.92,0,0,0,29.88,0L146,178l51.62-19a15.92,15.92,0,0,0,0-29.88ZM137,164.22a8,8,0,0,0-4.74,4.74L112,223.85,91.78,169A8,8,0,0,0,87,164.22L32.15,144,87,123.78A8,8,0,0,0,91.78,119L112,64.15,132.22,119a8,8,0,0,0,4.74,4.74L191.85,144ZM144,40a8,8,0,0,1,8-8h16V16a8,8,0,0,1,16,0V32h16a8,8,0,0,1,0,16H184V64a8,8,0,0,1-16,0V48H152A8,8,0,0,1,144,40ZM248,88a8,8,0,0,1-8,8h-8v8a8,8,0,0,1-16,0V96h-8a8,8,0,0,1,0-16h8V72a8,8,0,0,1,16,0v8h8A8,8,0,0,1,248,88Z"},null,-1),no=[so,ao],oo={key:2},lo=e("path",{d:"M208,144a15.78,15.78,0,0,1-10.42,14.94L146,178l-19,51.62a15.92,15.92,0,0,1-29.88,0L78,178l-51.62-19a15.92,15.92,0,0,1,0-29.88L78,110l19-51.62a15.92,15.92,0,0,1,29.88,0L146,110l51.62,19A15.78,15.78,0,0,1,208,144ZM152,48h16V64a8,8,0,0,0,16,0V48h16a8,8,0,0,0,0-16H184V16a8,8,0,0,0-16,0V32H152a8,8,0,0,0,0,16Zm88,32h-8V72a8,8,0,0,0-16,0v8h-8a8,8,0,0,0,0,16h8v8a8,8,0,0,0,16,0V96h8a8,8,0,0,0,0-16Z"},null,-1),io=[lo],co={key:3},uo=e("path",{d:"M196.89,130.94,144.4,111.6,125.06,59.11a13.92,13.92,0,0,0-26.12,0L79.6,111.6,27.11,130.94a13.92,13.92,0,0,0,0,26.12L79.6,176.4l19.34,52.49a13.92,13.92,0,0,0,26.12,0L144.4,176.4l52.49-19.34a13.92,13.92,0,0,0,0-26.12Zm-4.15,14.86-55.08,20.3a6,6,0,0,0-3.56,3.56l-20.3,55.08a1.92,1.92,0,0,1-3.6,0L89.9,169.66a6,6,0,0,0-3.56-3.56L31.26,145.8a1.92,1.92,0,0,1,0-3.6l55.08-20.3a6,6,0,0,0,3.56-3.56l20.3-55.08a1.92,1.92,0,0,1,3.6,0l20.3,55.08a6,6,0,0,0,3.56,3.56l55.08,20.3a1.92,1.92,0,0,1,0,3.6ZM146,40a6,6,0,0,1,6-6h18V16a6,6,0,0,1,12,0V34h18a6,6,0,0,1,0,12H182V64a6,6,0,0,1-12,0V46H152A6,6,0,0,1,146,40ZM246,88a6,6,0,0,1-6,6H230v10a6,6,0,0,1-12,0V94H208a6,6,0,0,1,0-12h10V72a6,6,0,0,1,12,0V82h10A6,6,0,0,1,246,88Z"},null,-1),ro=[uo],go={key:4},po=e("path",{d:"M197.58,129.06,146,110l-19-51.62a15.92,15.92,0,0,0-29.88,0L78,110l-51.62,19a15.92,15.92,0,0,0,0,29.88L78,178l19,51.62a15.92,15.92,0,0,0,29.88,0L146,178l51.62-19a15.92,15.92,0,0,0,0-29.88ZM137,164.22a8,8,0,0,0-4.74,4.74L112,223.85,91.78,169A8,8,0,0,0,87,164.22L32.15,144,87,123.78A8,8,0,0,0,91.78,119L112,64.15,132.22,119a8,8,0,0,0,4.74,4.74L191.85,144ZM144,40a8,8,0,0,1,8-8h16V16a8,8,0,0,1,16,0V32h16a8,8,0,0,1,0,16H184V64a8,8,0,0,1-16,0V48H152A8,8,0,0,1,144,40ZM248,88a8,8,0,0,1-8,8h-8v8a8,8,0,0,1-16,0V96h-8a8,8,0,0,1,0-16h8V72a8,8,0,0,1,16,0v8h8A8,8,0,0,1,248,88Z"},null,-1),vo=[po],mo={key:5},ho=e("path",{d:"M196.2,132.81l-53.36-19.65L123.19,59.8a11.93,11.93,0,0,0-22.38,0L81.16,113.16,27.8,132.81a11.93,11.93,0,0,0,0,22.38l53.36,19.65,19.65,53.36a11.93,11.93,0,0,0,22.38,0l19.65-53.36,53.36-19.65a11.93,11.93,0,0,0,0-22.38Zm-2.77,14.87L138.35,168a4,4,0,0,0-2.37,2.37l-20.3,55.08a3.92,3.92,0,0,1-7.36,0L88,170.35A4,4,0,0,0,85.65,168l-55.08-20.3a3.92,3.92,0,0,1,0-7.36L85.65,120A4,4,0,0,0,88,117.65l20.3-55.08a3.92,3.92,0,0,1,7.36,0L136,117.65a4,4,0,0,0,2.37,2.37l55.08,20.3a3.92,3.92,0,0,1,0,7.36ZM148,40a4,4,0,0,1,4-4h20V16a4,4,0,0,1,8,0V36h20a4,4,0,0,1,0,8H180V64a4,4,0,0,1-8,0V44H152A4,4,0,0,1,148,40Zm96,48a4,4,0,0,1-4,4H228v12a4,4,0,0,1-8,0V92H208a4,4,0,0,1,0-8h12V72a4,4,0,0,1,8,0V84h12A4,4,0,0,1,244,88Z"},null,-1),fo=[ho],yo={name:"PhSparkle"},bo=X({...yo,props:{weight:{type:String},size:{type:[String,Number]},color:{type:String},mirrored:{type:Boolean}},setup(v){const r=v,t=T("weight","regular"),d=T("size","1em"),_=T("color","currentColor"),S=T("mirrored",!1),g=m(()=>r.weight??t),f=m(()=>r.size??d),D=m(()=>r.color??_),Z=m(()=>r.mirrored!==void 0?r.mirrored?"scale(-1, 1)":void 0:S?"scale(-1, 1)":void 0);return(P,x)=>(l(),c("svg",$e({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 256 256",width:f.value,height:f.value,fill:D.value,transform:Z.value},P.$attrs),[Pe(P.$slots,"default"),g.value==="bold"?(l(),c("g",Qn,eo)):g.value==="duotone"?(l(),c("g",to,no)):g.value==="fill"?(l(),c("g",oo,io)):g.value==="light"?(l(),c("g",co,ro)):g.value==="regular"?(l(),c("g",go,vo)):g.value==="thin"?(l(),c("g",mo,fo)):b("",!0)],16,Jn))}}),wo=["width","height","fill","transform"],ko={key:0},Po=e("path",{d:"M128,44a96,96,0,1,0,96,96A96.11,96.11,0,0,0,128,44Zm0,168a72,72,0,1,1,72-72A72.08,72.08,0,0,1,128,212ZM164.49,99.51a12,12,0,0,1,0,17l-28,28a12,12,0,0,1-17-17l28-28A12,12,0,0,1,164.49,99.51ZM92,16A12,12,0,0,1,104,4h48a12,12,0,0,1,0,24H104A12,12,0,0,1,92,16Z"},null,-1),$o=[Po],_o={key:1},Ao=e("path",{d:"M216,136a88,88,0,1,1-88-88A88,88,0,0,1,216,136Z",opacity:"0.2"},null,-1),So=e("path",{d:"M128,40a96,96,0,1,0,96,96A96.11,96.11,0,0,0,128,40Zm0,176a80,80,0,1,1,80-80A80.09,80.09,0,0,1,128,216ZM173.66,90.34a8,8,0,0,1,0,11.32l-40,40a8,8,0,0,1-11.32-11.32l40-40A8,8,0,0,1,173.66,90.34ZM96,16a8,8,0,0,1,8-8h48a8,8,0,0,1,0,16H104A8,8,0,0,1,96,16Z"},null,-1),Do=[Ao,So],Co={key:2},Vo=e("path",{d:"M128,40a96,96,0,1,0,96,96A96.11,96.11,0,0,0,128,40Zm45.66,61.66-40,40a8,8,0,0,1-11.32-11.32l40-40a8,8,0,0,1,11.32,11.32ZM96,16a8,8,0,0,1,8-8h48a8,8,0,0,1,0,16H104A8,8,0,0,1,96,16Z"},null,-1),Zo=[Vo],Mo={key:3},xo=e("path",{d:"M128,42a94,94,0,1,0,94,94A94.11,94.11,0,0,0,128,42Zm0,176a82,82,0,1,1,82-82A82.1,82.1,0,0,1,128,218ZM172.24,91.76a6,6,0,0,1,0,8.48l-40,40a6,6,0,1,1-8.48-8.48l40-40A6,6,0,0,1,172.24,91.76ZM98,16a6,6,0,0,1,6-6h48a6,6,0,0,1,0,12H104A6,6,0,0,1,98,16Z"},null,-1),Ho=[xo],To={key:4},Uo=e("path",{d:"M128,40a96,96,0,1,0,96,96A96.11,96.11,0,0,0,128,40Zm0,176a80,80,0,1,1,80-80A80.09,80.09,0,0,1,128,216ZM173.66,90.34a8,8,0,0,1,0,11.32l-40,40a8,8,0,0,1-11.32-11.32l40-40A8,8,0,0,1,173.66,90.34ZM96,16a8,8,0,0,1,8-8h48a8,8,0,0,1,0,16H104A8,8,0,0,1,96,16Z"},null,-1),Lo=[Uo],Io={key:5},Eo=e("path",{d:"M128,44a92,92,0,1,0,92,92A92.1,92.1,0,0,0,128,44Zm0,176a84,84,0,1,1,84-84A84.09,84.09,0,0,1,128,220ZM170.83,93.17a4,4,0,0,1,0,5.66l-40,40a4,4,0,1,1-5.66-5.66l40-40A4,4,0,0,1,170.83,93.17ZM100,16a4,4,0,0,1,4-4h48a4,4,0,0,1,0,8H104A4,4,0,0,1,100,16Z"},null,-1),Bo=[Eo],Wo={name:"PhTimer"},Ro=X({...Wo,props:{weight:{type:String},size:{type:[String,Number]},color:{type:String},mirrored:{type:Boolean}},setup(v){const r=v,t=T("weight","regular"),d=T("size","1em"),_=T("color","currentColor"),S=T("mirrored",!1),g=m(()=>r.weight??t),f=m(()=>r.size??d),D=m(()=>r.color??_),Z=m(()=>r.mirrored!==void 0?r.mirrored?"scale(-1, 1)":void 0:S?"scale(-1, 1)":void 0);return(P,x)=>(l(),c("svg",$e({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 256 256",width:f.value,height:f.value,fill:D.value,transform:Z.value},P.$attrs),[Pe(P.$slots,"default"),g.value==="bold"?(l(),c("g",ko,$o)):g.value==="duotone"?(l(),c("g",_o,Do)):g.value==="fill"?(l(),c("g",Co,Zo)):g.value==="light"?(l(),c("g",Mo,Ho)):g.value==="regular"?(l(),c("g",To,Lo)):g.value==="thin"?(l(),c("g",Io,Bo)):b("",!0)],16,wo))}}),Go={key:0,class:"security-header"},jo={class:"security-card two-factor-card"},zo={class:"security-card-header"},Ko={class:"security-status"},No={key:0,class:"totp-setup"},Fo=["src","alt"],Oo=["placeholder"],qo=["placeholder"],Yo=["placeholder"],Jo={key:1,class:"sensitive-action-error"},Qo={class:"security-card"},Xo={class:"audit-header"},el=["disabled"],tl={class:"audit-table-wrap"},sl={class:"audit-table"},al={key:0},nl={colspan:"4",class:"audit-empty"},ol={class:"audit-empty-title"},ll={class:"audit-event-cell"},il={key:0,class:"audit-count"},cl={key:0,class:"audit-pagination"},ul={class:"audit-range"},rl={class:"audit-page-actions"},dl=["disabled"],gl={class:"audit-page-indicator"},pl=["disabled"],vl={class:"sensitive-action-form"},ml=["placeholder"],hl=["placeholder"],fl={key:1,class:"sensitive-action-error"},ct=7,yl=X({__name:"SecurityPanel",props:{totpEnabled:{type:Boolean},embedded:{type:Boolean,default:!1}},emits:["close","updated"],setup(v,{emit:r}){const t=Se.global.t,d=r,_=p(null),S=p(""),g=p(""),f=p(""),D=p(null),Z=p(""),P=p([]),x=p(1);function h(C){return`${C.type}|${C.status}|${C.username||""}|${C.ip||""}|${C.metadata?.path||""}|${C.metadata?.method||""}|${C.metadata?.reason||""}`}const I=m(()=>{const C=[];for(const V of P.value){const $=C[C.length-1],G=h(V);if($?.groupKey===G){$.count+=1;continue}C.push({...V,count:1,groupKey:G})}return C}),M=m(()=>Math.max(1,Math.ceil(I.value.length/ct))),E=m(()=>I.value.length===0?0:(x.value-1)*ct+1),B=m(()=>Math.min(x.value*ct,I.value.length)),F=m(()=>I.value.slice(E.value-1,B.value));function ue(C){const V=new Intl.DateTimeFormat("en-GB",{timeZone:"Asia/Shanghai",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1}).formatToParts(new Date(C)),$=G=>V.find(ae=>ae.type===G)?.value||"";return`${$("year")}/${$("month")}/${$("day")} ${$("hour")}:${$("minute")}:${$("second")}`}const K={login_success:t("components.securityPanel.login"),login_failure:t("components.securityPanel.loginAttempt"),logout:t("components.securityPanel.logout"),totp_success:t("components.securityPanel.twoFactorAuthentication"),totp_failure:t("components.securityPanel.twoFactorAuthentication"),websocket_auth_failure:t("components.securityPanel.websocketAuthentication"),unauthorized_http:t("components.securityPanel.unauthorizedRequest")};function re(C){const V=K[C];return V||C.replaceAll("_"," ").replace(/\b\w/g,$=>$.toUpperCase())}function O(C){return C.charAt(0).toUpperCase()+C.slice(1)}async function z(){const C=await fetch("/api/auth/audit");P.value=(await C.json()).events||[],x.value=1}function me(C){D.value=C,g.value="",f.value="",Z.value=""}function le(){D.value=null,Z.value=""}async function He(){return(await fetch("/api/auth/audit",{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({password:g.value,totpCode:f.value})})).ok===!1?!1:(await z(),!0)}async function ee(){const C=await fetch("/api/auth/2fa/setup",{method:"POST"});_.value=await C.json()}async function de(){if(!_.value)return;if((await fetch("/api/auth/2fa/enable",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({secret:_.value.secret,code:S.value,password:g.value,totpCode:f.value})})).ok===!1){Z.value=t("components.securityPanel.invalidPasswordOrVerificationCode");return}_.value=null,g.value="",f.value="",Z.value="",d("updated"),await z()}async function te(){return(await fetch("/api/auth/2fa/disable",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({password:g.value,totpCode:f.value})})).ok===!1?!1:(d("updated"),await z(),!0)}async function se(){(D.value==="disable2fa"?await te():await He())?le():Z.value=t("components.securityPanel.invalidPasswordOrVerificationCode")}return Vt(z),(C,V)=>(l(),c("section",{class:R(["security-panel",{embedded:v.embedded}])},[v.embedded?b("",!0):(l(),c("header",Go,[e("h2",null,n(s(t)("components.securityPanel.security")),1),e("button",{onClick:V[0]||(V[0]=$=>C.$emit("close"))},n(s(t)("components.securityPanel.close")),1)])),e("section",jo,[e("div",zo,[e("div",null,[e("h3",null,n(s(t)("components.securityPanel.twoFactorAuthentication")),1),e("p",Ko,[y(n(s(t)("components.securityPanel.status"))+" ",1),e("strong",null,n(v.totpEnabled?s(t)("components.securityPanel.enabled"):s(t)("components.securityPanel.disabled")),1)])]),!v.totpEnabled&&!_.value?(l(),c("button",{key:0,class:"start-2fa dialog-action primary-action",onClick:ee},n(s(t)("components.securityPanel.enable2FA")),1)):b("",!0),v.totpEnabled?(l(),c("button",{key:1,class:"disable-2fa dialog-action compact-action danger-action",onClick:V[1]||(V[1]=$=>me("disable2fa"))},n(s(t)("components.securityPanel.disable2FA")),1)):b("",!0)]),_.value?(l(),c("div",No,[e("img",{src:_.value.qrCodeDataUrl,alt:s(t)("components.securityPanel.totpQrCode")},null,8,Fo),e("p",null,[y(n(s(t)("components.securityPanel.manualKey"))+" ",1),e("code",null,n(_.value.secret),1)]),L(e("input",{"onUpdate:modelValue":V[2]||(V[2]=$=>S.value=$),name:"verificationCode",autocomplete:"one-time-code",placeholder:s(t)("components.securityPanel.newVerificationCode")},null,8,Oo),[[W,S.value]]),L(e("input",{"onUpdate:modelValue":V[3]||(V[3]=$=>g.value=$),name:"password",type:"password",autocomplete:"current-password",placeholder:s(t)("components.securityPanel.password")},null,8,qo),[[W,g.value]]),v.totpEnabled?L((l(),c("input",{key:0,"onUpdate:modelValue":V[4]||(V[4]=$=>f.value=$),name:"currentTotpCode",autocomplete:"one-time-code",placeholder:s(t)("components.securityPanel.currentVerificationCode")},null,8,Yo)),[[W,f.value]]):b("",!0),Z.value?(l(),c("p",Jo,n(Z.value),1)):b("",!0),e("button",{class:"verify-2fa dialog-action primary-action",onClick:de},n(s(t)("components.securityPanel.verifyAndEnable")),1)])):b("",!0)]),e("section",Qo,[e("div",Xo,[e("h3",null,n(s(t)("components.securityPanel.auditLog")),1),e("button",{class:"clear-audit",type:"button",disabled:!P.value.length,onClick:V[5]||(V[5]=$=>me("clearAudit"))},n(s(t)("components.securityPanel.clearLog")),9,el)]),e("div",tl,[e("table",sl,[e("thead",null,[e("tr",null,[e("th",null,n(s(t)("components.securityPanel.time")),1),e("th",null,n(s(t)("components.securityPanel.event")),1),e("th",null,n(s(t)("components.securityPanel.status2")),1),e("th",null,n(s(t)("components.securityPanel.ip")),1)])]),e("tbody",null,[F.value.length?b("",!0):(l(),c("tr",al,[e("td",nl,[e("span",ol,n(s(t)("components.securityPanel.noAuditEventsYet")),1),e("span",null,n(s(t)("components.securityPanel.securityActivityWillAppearHereAsIt")),1)])])),(l(!0),c(oe,null,xe(F.value,$=>(l(),c("tr",{key:$.id},[e("td",null,n(ue($.createdAt)),1),e("td",null,[e("div",ll,[e("span",null,n(re($.type)),1),$.count>1?(l(),c("span",il,"×"+n($.count),1)):b("",!0)])]),e("td",null,[e("span",{class:R(["audit-status",[`audit-status-${$.status}`,$.status]])},n(O($.status)),3)]),e("td",null,n($.ip||"—"),1)]))),128))])])]),P.value.length?(l(),c("footer",cl,[e("span",ul,n(s(t)("components.securityPanel.showingGroups",{start:E.value,end:B.value,total:I.value.length})),1),e("div",rl,[e("button",{class:"dialog-action compact-action audit-prev",disabled:x.value===1,onClick:V[6]||(V[6]=$=>x.value-=1)},n(s(t)("components.securityPanel.previous")),9,dl),e("span",gl,n(s(t)("components.securityPanel.pageOf",{page:x.value,total:M.value})),1),e("button",{class:"dialog-action compact-action audit-next",disabled:x.value===M.value,onClick:V[7]||(V[7]=$=>x.value+=1)},n(s(t)("components.securityPanel.next")),9,pl)])])):b("",!0)]),A(ut,{visible:D.value!==null,"confirm-text":D.value==="disable2fa"?s(t)("components.securityPanel.disable2FA"):s(t)("components.securityPanel.clearLog"),variant:"danger",onConfirm:se,onCancel:le},{title:Ae(()=>[y(n(D.value==="disable2fa"?s(t)("components.securityPanel.disable2FA"):s(t)("components.securityPanel.clearAuditLog")),1)]),message:Ae(()=>[e("div",vl,[e("p",null,n(D.value==="disable2fa"?s(t)("components.securityPanel.confirmDisable2FA"):s(t)("components.securityPanel.thisPermanentlyDeletesAllAuditEvents")),1),L(e("input",{"onUpdate:modelValue":V[8]||(V[8]=$=>g.value=$),name:"sensitivePassword",type:"password",autocomplete:"current-password",placeholder:s(t)("components.securityPanel.password")},null,8,ml),[[W,g.value]]),v.totpEnabled?L((l(),c("input",{key:0,"onUpdate:modelValue":V[9]||(V[9]=$=>f.value=$),name:"sensitiveTotpCode",autocomplete:"one-time-code",placeholder:s(t)("components.securityPanel.currentVerificationCode")},null,8,hl)),[[W,f.value]]):b("",!0),Z.value?(l(),c("p",fl,n(Z.value),1)):b("",!0)])]),_:1},8,["visible","confirm-text"])],2))}}),bl=Re(yl,[["__scopeId","data-v-9a119603"]]),wl={class:"skill-presets-panel"},kl={class:"skill-presets-list-section"},Pl={class:"section-header"},$l={key:0,class:"skill-presets-list"},_l={class:"preset-card-copy"},Al={class:"preset-card-header"},Sl={class:"preset-mode-badge"},Dl={class:"preset-skills-summary"},Cl={class:"preset-card-actions"},Vl=["aria-label","title","onClick"],Zl=["aria-label","title","onClick"],Ml={key:1,class:"empty-presets"},xl={class:"skill-presets-form"},Hl={class:"section-header"},Tl={class:"preset-name-row"},Ul=["placeholder"],Ll={class:"preset-mode-row"},Il=X({__name:"SkillPresetsPanel",props:{presets:{},availableSkills:{}},emits:["createPreset","updatePreset","deletePreset"],setup(v,{emit:r}){const t=Se.global.t,d=r,_=p(""),S=p("enabled"),g=p([]),f=p(null);function D(){_.value="",S.value="enabled",g.value=[],f.value=null}function Z(h){f.value=h.id,_.value=h.name,S.value=h.mode,g.value=[...h.skills]}function P(){if(!_.value.trim())return;const h={name:_.value.trim(),mode:S.value,skills:g.value};if(f.value){d("updatePreset",{id:f.value,changes:h}),D();return}d("createPreset",h),D()}function x(h){return t(h==="enabled"?"components.skillPresetsPanel.enableOnlySelectedSkills":"components.skillPresetsPanel.disableSelectedSkills")}return(h,I)=>(l(),c("section",wl,[e("div",kl,[e("div",Pl,[e("h4",null,n(s(t)("components.skillPresetsPanel.existingPresets")),1),e("p",null,n(s(t)("components.skillPresetsPanel.savedPresetsAreAvailableWhenCreatingA")),1)]),v.presets.length?(l(),c("div",$l,[(l(!0),c(oe,null,xe(v.presets,M=>(l(),c("article",{key:M.id,class:"preset-card"},[e("div",_l,[e("div",Al,[e("strong",null,n(M.name),1),e("span",Sl,n(x(M.mode)),1)]),e("p",Dl,n(M.skills.join(", ")||"No skills selected"),1)]),e("div",Cl,[e("button",{type:"button",class:"preset-icon-btn","aria-label":s(t)("components.skillPresetsPanel.editPreset"),title:s(t)("components.skillPresetsPanel.edit"),onClick:E=>Z(M)},[A(s(Zt),{size:15,weight:"bold"})],8,Vl),e("button",{type:"button",class:"preset-icon-btn danger","aria-label":s(t)("components.skillPresetsPanel.deletePreset"),title:s(t)("components.skillPresetsPanel.delete"),onClick:E=>d("deletePreset",M.id)},[A(s(st),{size:15,weight:"bold"})],8,Zl)])]))),128))])):(l(),c("p",Ml,n(s(t)("components.skillPresetsPanel.noPresetsYet")),1))]),e("div",xl,[e("div",Hl,[e("h4",null,n(f.value?s(t)("components.skillPresetsPanel.editPreset"):s(t)("components.skillPresetsPanel.createPreset")),1),e("p",null,n(f.value?s(t)("components.skillPresetsPanel.updateThisPresetThenItWillReturnTo"):s(t)("components.skillPresetsPanel.saveAReusableAllowlistOrBlocklistForFuture")),1)]),e("div",Tl,[L(e("input",{"onUpdate:modelValue":I[0]||(I[0]=M=>_.value=M),class:"preset-name-input",type:"text",placeholder:s(t)("components.skillPresetsPanel.presetName")},null,8,Ul),[[W,_.value]]),e("button",{type:"button",class:"preset-save-btn",onClick:P},n(s(t)("components.skillPresetsPanel.save")),1),f.value?(l(),c("button",{key:0,type:"button",class:"preset-cancel-btn",onClick:D},n(s(t)("components.skillPresetsPanel.cancel")),1)):b("",!0)]),e("div",Ll,[e("label",null,[L(e("input",{"onUpdate:modelValue":I[1]||(I[1]=M=>S.value=M),class:"preset-mode-enabled",type:"radio",value:"enabled"},null,512),[[Ct,S.value]]),y(" "+n(s(t)("components.skillPresetsPanel.enableOnlySelectedSkills")),1)]),e("label",null,[L(e("input",{"onUpdate:modelValue":I[2]||(I[2]=M=>S.value=M),class:"preset-mode-disabled",type:"radio",value:"disabled"},null,512),[[Ct,S.value]]),y(" "+n(s(t)("components.skillPresetsPanel.disableSelectedSkills")),1)])]),A(rs,{modelValue:g.value,"onUpdate:modelValue":I[3]||(I[3]=M=>g.value=M),skills:v.availableSkills},null,8,["modelValue","skills"])])]))}}),El=Re(Il,[["__scopeId","data-v-d93321dc"]]),Bl={class:"kickoff-panel"},Wl={class:"notification-card"},Rl={class:"section-heading"},Gl={class:"section-icon"},jl={class:"field-grid"},zl={class:"field"},Kl={class:"field"},Nl=["placeholder"],Fl={class:"notification-actions"},Ol=["disabled"],ql=["disabled"],Yl={key:0,class:"error-message",role:"alert"},Jl=["onInput"],Ql={class:"card-heading"},Xl={class:"model-heading"},ei={class:"model-label"},ti={class:"provider-name"},si={class:"enabled-switch"},ai=["onUpdate:modelValue"],ni={class:"field-grid"},oi={class:"field"},li={class:"field"},ii={class:"field"},ci={class:"path-picker-field"},ui=["value","title"],ri=["aria-label","title","onClick"],di={class:"field"},gi=["onUpdate:modelValue"],pi={class:"field"},vi=["onUpdate:modelValue"],mi={class:"field"},hi=["onUpdate:modelValue"],fi={class:"field"},yi={class:"field prompt-field"},bi=["onUpdate:modelValue"],wi={class:"status-grid"},ki={key:0,class:"status-error"},Pi={class:"card-actions"},$i={key:0,class:"save-success",role:"status"},_i=["disabled","onClick"],Ai=["disabled","onClick"],Si=["disabled"],Di=X({__name:"ModelWindowKickoffPanel",props:{clientId:{default:""}},setup(v){const r=Se.global.t,t=p([]),d=p({}),_=p([]),S=p([]),g=p("~"),f=p(),D=p("WeCom"),Z=p(""),P=p(!1),x=p(""),h=p({}),I=p(),M=m(()=>!!I.value),E=m(()=>I.value?.projectPath||g.value||"~"),B=m(()=>t.value.map(u=>({value:u.id,label:u.label||u.id}))),F=m(()=>[{value:"",label:r("settings.modelWindowKickoff.none")},..._.value.map(u=>({value:u.id,label:u.name}))]);Vt(ue);async function ue(){x.value="";try{const[u,w,k,U]=await Promise.all([ce("/api/sessions/agent-profiles"),ce("/api/model-window-kickoffs"),ce("/api/model-window-kickoffs/notification-channels"),ce("/api/sessions/project-path")]);t.value=u.profiles,g.value=U.projectPath,S.value=w.kickoffs.map(se),_.value=k.channels,f.value=_.value.find(ye=>ye.configured),f.value&&(D.value=f.value.name);const N=S.value.map(ye=>ye.profileId);t.value[0]&&N.push(t.value[0].id),await Promise.all([...new Set(N)].map(K))}catch(u){x.value=ne(u)}}async function K(u){if(!u||d.value[u])return;const w=await ce(`/api/sessions/agent-profiles/${encodeURIComponent(u)}/models`);d.value[u]=w.models}function re(u){I.value=u}function O(){I.value=void 0}function z(u){I.value&&(j(I.value.id),I.value.projectPath=u.path),O()}async function me(u){P.value=!0,x.value="",h.value[u.id]="saving";try{const w=await ce(`/api/model-window-kickoffs/${u.id}`,{method:"PUT",body:te(u)});Object.assign(u,se(w.kickoff)),h.value[u.id]="saved"}catch(w){x.value=ne(w),j(u.id)}finally{P.value=!1}}async function le(){const u=t.value[0];if(!u)return;await K(u.id);const w=d.value[u.id]||[],U=w.find(N=>N.provider===u.defaultProvider&&N.id===u.defaultModel)||w[0];if(!U){x.value=r("settings.modelWindowKickoff.noModels");return}P.value=!0;try{const N=await ce("/api/model-window-kickoffs",{method:"POST",body:{profileId:u.id,provider:U.provider,modelId:U.id,projectPath:g.value,prompt:"Ping",windowDurationMinutes:300,safetyBufferSeconds:60,nextRunAt:new Date().toISOString(),notificationChannelId:f.value?.id||null}});S.value.push(se(N.kickoff))}catch(N){x.value=ne(N)}finally{P.value=!1}}async function He(u){P.value=!0;try{await ce(`/api/model-window-kickoffs/${u}`,{method:"DELETE"}),S.value=S.value.filter(w=>w.id!==u)}catch(w){x.value=ne(w)}finally{P.value=!1}}async function ee(){if(!f.value)return;P.value=!0,x.value="";const u=f.value.id;try{await ce(`/api/model-window-kickoffs/notification-channels/${encodeURIComponent(u)}`,{method:"DELETE"}),_.value=_.value.filter(w=>w.id!==u),S.value.forEach(w=>{w.notificationChannelId===u&&(w.notificationChannelId=null)}),f.value=void 0,D.value="WeCom",Z.value=""}catch(w){x.value=ne(w)}finally{P.value=!1}}async function de(){P.value=!0;try{const u=await ce("/api/model-window-kickoffs/notification-channels/wecom",{method:"POST",body:{id:f.value?.id,name:D.value,botKey:Z.value}});f.value=u.channel,Z.value="",await ue()}catch(u){x.value=ne(u)}finally{P.value=!1}}function te(u){return{enabled:u.enabled,profileId:u.profileId,provider:u.provider,modelId:u.modelId,projectPath:u.projectPath,prompt:u.prompt,windowDurationMinutes:Math.round(u.windowHours*60),safetyBufferSeconds:u.safetyBufferSeconds,notificationChannelId:u.notificationChannelId,nextRunAt:De(u.nextRunLocal)}}function se(u){return{...u,windowHours:u.windowDurationMinutes/60,nextRunLocal:je(u.nextRunAt)}}function C(u){return`${u.provider}
|
|
2
|
+
${u.modelId}`}function V(u){return(d.value[u]||[]).map(w=>({value:`${w.provider}
|
|
3
|
+
${w.id}`,label:`${w.name||w.id} [${w.provider}]`}))}function $(u,w){j(u.id),u.profileId=w,K(w)}function G(u,w){j(u.id),[u.provider,u.modelId]=w.split(`
|
|
4
|
+
`)}function ae(u,w){j(u.id),u.notificationChannelId=w||null}function j(u){delete h.value[u]}function Ge(u){return h.value[u]==="saving"?r("settings.modelWindowKickoff.saving"):r("settings.modelWindowKickoff.save")}function je(u){const w=new Date(u),k=w.getTimezoneOffset()*6e4;return new Date(w.getTime()-k).toISOString().slice(0,16)}function De(u){return new Date(u).toISOString()}function he(u){if(!u)return"—";const w=new Date(u),k=U=>String(U).padStart(2,"0");return`${w.getFullYear()}-${k(w.getMonth()+1)}-${k(w.getDate())} ${k(w.getHours())}:${k(w.getMinutes())}:${k(w.getSeconds())}`}function ne(u){return u instanceof Error?u.message:String(u)}return(u,w)=>(l(),c("div",Bl,[e("section",Wl,[e("div",Rl,[e("span",Gl,[A(s(Fs),{size:20,weight:"fill"})]),e("div",null,[e("h4",null,n(s(r)("settings.modelWindowKickoff.wecomTitle")),1),e("p",null,n(s(r)("settings.modelWindowKickoff.wecomDescription")),1)])]),e("div",jl,[e("label",zl,[y(n(s(r)("settings.modelWindowKickoff.channelName")),1),L(e("input",{"onUpdate:modelValue":w[0]||(w[0]=k=>D.value=k)},null,512),[[W,D.value]])]),e("label",Kl,[y(n(s(r)("settings.modelWindowKickoff.botKey")),1),L(e("input",{"onUpdate:modelValue":w[1]||(w[1]=k=>Z.value=k),type:"password",placeholder:f.value?.configured?s(r)("settings.modelWindowKickoff.keyConfigured"):""},null,8,Nl),[[W,Z.value]])])]),e("div",Fl,[f.value?(l(),c("button",{key:0,class:"button danger",disabled:P.value,onClick:ee},[A(s(st),{size:16}),y(" "+n(s(r)("settings.modelWindowKickoff.deleteChannel")),1)],8,Ol)):b("",!0),e("button",{class:"button secondary",disabled:P.value||!Z.value&&!f.value,onClick:de},[A(s(rt),{size:16}),y(" "+n(s(r)("settings.modelWindowKickoff.saveChannel")),1)],8,ql)])]),x.value?(l(),c("p",Yl,n(x.value),1)):b("",!0),(l(!0),c(oe,null,xe(S.value,k=>(l(),c("section",{key:k.id,class:"kickoff-card",onInput:U=>j(k.id)},[e("header",Ql,[e("div",Xl,[e("span",ei,n(s(r)("settings.modelWindowKickoff.model")),1),e("strong",null,n(k.modelId),1),e("span",ti,n(k.provider),1)]),e("label",si,[L(e("input",{"onUpdate:modelValue":U=>k.enabled=U,type:"checkbox"},null,8,ai),[[ds,k.enabled]]),w[2]||(w[2]=e("span",{class:"switch-track","aria-hidden":"true"},null,-1)),e("span",null,n(s(r)("settings.modelWindowKickoff.enabled")),1)])]),e("div",ni,[e("label",oi,[y(n(s(r)("settings.modelWindowKickoff.profile"))+" ",1),A(Q,{id:`kickoff-profile-${k.id}`,"model-value":k.profileId,options:B.value,"aria-label":s(r)("settings.modelWindowKickoff.profile"),"onUpdate:modelValue":U=>$(k,U)},null,8,["id","model-value","options","aria-label","onUpdate:modelValue"])]),e("label",li,[y(n(s(r)("settings.modelWindowKickoff.model"))+" ",1),A(Q,{id:`kickoff-model-${k.id}`,"model-value":C(k),options:V(k.profileId),"aria-label":s(r)("settings.modelWindowKickoff.model"),searchable:"","onUpdate:modelValue":U=>G(k,U)},null,8,["id","model-value","options","aria-label","onUpdate:modelValue"])]),e("label",ii,[y(n(s(r)("settings.modelWindowKickoff.projectPath"))+" ",1),e("span",ci,[e("input",{value:k.projectPath,readonly:"",title:k.projectPath},null,8,ui),e("button",{type:"button",class:"path-picker-button","aria-label":s(r)("settings.modelWindowKickoff.selectProjectPath"),title:s(r)("settings.modelWindowKickoff.selectProjectPath"),onClick:U=>re(k)},[A(s(As),{size:18,weight:"bold"})],8,ri)])]),e("label",di,[y(n(s(r)("settings.modelWindowKickoff.windowHours")),1),L(e("input",{"onUpdate:modelValue":U=>k.windowHours=U,type:"number",min:"0.02",step:"0.5"},null,8,gi),[[W,k.windowHours,void 0,{number:!0}]])]),e("label",pi,[y(n(s(r)("settings.modelWindowKickoff.bufferSeconds")),1),L(e("input",{"onUpdate:modelValue":U=>k.safetyBufferSeconds=U,type:"number",min:"0"},null,8,vi),[[W,k.safetyBufferSeconds,void 0,{number:!0}]])]),e("label",mi,[y(n(s(r)("settings.modelWindowKickoff.nextRun")),1),L(e("input",{"onUpdate:modelValue":U=>k.nextRunLocal=U,type:"datetime-local"},null,8,hi),[[W,k.nextRunLocal]])]),e("label",fi,[y(n(s(r)("settings.modelWindowKickoff.notification"))+" ",1),A(Q,{id:`kickoff-notification-${k.id}`,"model-value":k.notificationChannelId||"",options:F.value,"aria-label":s(r)("settings.modelWindowKickoff.notification"),"onUpdate:modelValue":U=>ae(k,U)},null,8,["id","model-value","options","aria-label","onUpdate:modelValue"])]),e("label",yi,[y(n(s(r)("settings.modelWindowKickoff.prompt")),1),L(e("textarea",{"onUpdate:modelValue":U=>k.prompt=U,rows:"3"},null,8,bi),[[W,k.prompt]])])]),e("div",wi,[e("div",null,[e("span",null,n(s(r)("settings.modelWindowKickoff.lastSuccess")),1),e("strong",null,n(he(k.lastSuccessAt)),1)]),e("div",null,[e("span",null,n(s(r)("settings.modelWindowKickoff.lastAttempt")),1),e("strong",null,n(he(k.lastAttemptAt)),1)]),e("div",null,[e("span",null,n(s(r)("settings.modelWindowKickoff.nextScheduled")),1),e("strong",null,n(he(De(k.nextRunLocal))),1)]),k.lastError?(l(),c("div",ki,[e("span",null,n(s(r)("settings.modelWindowKickoff.lastError")),1),e("strong",null,n(k.lastError),1)])):b("",!0)]),e("footer",Pi,[h.value[k.id]==="saved"?(l(),c("span",$i,n(s(r)("settings.modelWindowKickoff.saved")),1)):b("",!0),e("button",{class:"button danger",disabled:P.value,onClick:U=>He(k.id)},[A(s(st),{size:16}),y(n(s(r)("settings.modelWindowKickoff.delete")),1)],8,_i),e("button",{class:"button primary save-button",disabled:P.value,onClick:U=>me(k)},[A(s(rt),{size:16}),y(" "+n(Ge(k.id)),1)],8,Ai)])],40,Jl))),128)),e("button",{class:"add-button",disabled:P.value||!t.value.length,onClick:le},[A(s(gs),{size:18,weight:"bold"}),y(n(s(r)("settings.modelWindowKickoff.add")),1)],8,Si),A(Mt,{visible:M.value,"initial-path":E.value,"client-id":v.clientId,title:s(r)("settings.modelWindowKickoff.selectProjectPath"),"show-clone":!1,onClose:O,onSelect:z},null,8,["visible","initial-path","client-id","title"])]))}}),Ci=Re(Di,[["__scopeId","data-v-394cb0f4"]]),Vi={class:"user-prompts-panel"},Zi={class:"section-header"},Mi={key:0,class:"user-prompts-list"},xi={class:"user-prompt-copy"},Hi={class:"user-prompt-heading"},Ti=["datetime"],Ui={class:"user-prompt-actions"},Li=["aria-label","title","onClick"],Ii=["aria-label","title","onClick"],Ei={key:1,class:"empty-prompts"},Bi={class:"form-field"},Wi=["placeholder"],Ri={class:"form-field"},Gi=["placeholder"],ji={key:0,class:"save-error",role:"alert"},zi={class:"form-actions"},Ki=["disabled"],Ni=["disabled"],Fi=X({__name:"UserPromptsPanel",props:{prompts:{}},emits:["createPrompt","updatePrompt","deletePrompt"],setup(v,{emit:r}){const t=Se.global.t,d=r,_=p(null),S=p(""),g=p(""),f=p(!1),D=p("");function Z(M){_.value=M.id,S.value=M.name,g.value=M.content,D.value=""}function P(){_.value=null,S.value="",g.value="",D.value=""}function x(M){const E=new Date(M),B=Date.now()-E.getTime(),F=Math.floor(B/6e4),ue=Math.floor(F/60),K=Math.floor(ue/24);return F<1?t("components.sessionSidebar.justNow"):F<60?h(F,"minute"):ue<24?h(ue,"hour"):K<7?h(K,"day"):E.toLocaleDateString()}function h(M,E){return Se.global.locale.value!=="en"?new Intl.RelativeTimeFormat(Se.global.locale.value,{numeric:"always",style:"long"}).format(-M,E):E==="minute"?`${M}m ago`:E==="hour"?`${M}h ago`:`${M}d ago`}function I(){const M={name:S.value.trim(),content:g.value.trim()};if(!M.name||!M.content||f.value)return;f.value=!0,D.value="";const E=B=>{if(f.value=!1,B){D.value=B instanceof Error?B.message:t("components.userPromptsPanel.saveFailed");return}P()};_.value?d("updatePrompt",{id:_.value,changes:M},E):d("createPrompt",M,E)}return(M,E)=>(l(),c("section",Vi,[e("div",Zi,[e("h4",null,n(s(t)("components.userPromptsPanel.savedPrompts")),1),e("p",null,n(s(t)("components.userPromptsPanel.description")),1)]),v.prompts.length?(l(),c("div",Mi,[(l(!0),c(oe,null,xe(v.prompts,B=>(l(),c("article",{key:B.id,class:"user-prompt-card"},[e("div",xi,[e("div",Hi,[e("strong",null,n(B.name),1),e("time",{datetime:B.updatedAt},n(s(t)("components.userPromptsPanel.updated",{date:x(B.updatedAt)})),9,Ti)]),e("p",null,n(B.content),1)]),e("div",Ui,[e("button",{type:"button","aria-label":s(t)("components.userPromptsPanel.edit"),title:s(t)("components.userPromptsPanel.edit"),onClick:F=>Z(B)},[A(s(Zt),{size:15,weight:"bold"})],8,Li),e("button",{type:"button",class:"danger","aria-label":s(t)("components.userPromptsPanel.delete"),title:s(t)("components.userPromptsPanel.delete"),onClick:F=>d("deletePrompt",B.id)},[A(s(st),{size:15,weight:"bold"})],8,Ii)])]))),128))])):(l(),c("p",Ei,n(s(t)("components.userPromptsPanel.empty")),1)),e("form",{class:"user-prompt-form",onSubmit:ps(I,["prevent"])},[e("h4",null,n(_.value?s(t)("components.userPromptsPanel.editPrompt"):s(t)("components.userPromptsPanel.addPrompt")),1),e("label",Bi,[e("span",null,n(s(t)("components.userPromptsPanel.name")),1),L(e("input",{"onUpdate:modelValue":E[0]||(E[0]=B=>S.value=B),type:"text",placeholder:s(t)("components.userPromptsPanel.name")},null,8,Wi),[[W,S.value]])]),e("label",Ri,[e("span",null,n(s(t)("components.userPromptsPanel.content")),1),L(e("textarea",{"onUpdate:modelValue":E[1]||(E[1]=B=>g.value=B),rows:"7",placeholder:s(t)("components.userPromptsPanel.content")},null,8,Gi),[[W,g.value]])]),D.value?(l(),c("p",ji,n(D.value),1)):b("",!0),e("div",zi,[_.value?(l(),c("button",{key:0,type:"button",class:"prompt-action-button",disabled:f.value,onClick:P},n(s(t)("components.userPromptsPanel.cancel")),9,Ki)):b("",!0),e("button",{type:"submit",class:"prompt-action-button save-button",disabled:f.value||!S.value.trim()||!g.value.trim()},[A(s(rt),{size:16}),y(" "+n(s(t)("components.userPromptsPanel.save")),1)],8,Ni)])],32)]))}}),Oi=Re(Fi,[["__scopeId","data-v-4fe83f9c"]]),qi={key:0,class:"settings-backdrop"},Yi={class:"settings-dialog",role:"dialog","aria-modal":"true","aria-labelledby":"settings-title"},Ji={class:"settings-sidebar"},Qi={id:"settings-title"},Xi=["aria-label"],e1={class:"settings-body"},t1={class:"settings-body-header"},s1={class:"settings-content"},a1={class:"settings-card theme-settings","aria-labelledby":"theme-settings-title"},n1={class:"settings-card-copy"},o1={id:"theme-settings-title"},l1={class:"settings-select-label"},i1={class:"sr-only"},c1={class:"settings-card language-settings","aria-labelledby":"language-settings-title"},u1={class:"settings-card-copy"},r1={id:"language-settings-title"},d1={class:"settings-select-label"},g1={class:"sr-only"},p1={class:"settings-card display-settings","aria-labelledby":"display-settings-title"},v1={class:"settings-card-copy"},m1={id:"display-settings-title"},h1={class:"settings-switch"},f1=["checked"],y1={class:"settings-switch-text"},b1={class:"settings-card code-language-headers-settings","aria-labelledby":"code-language-headers-title"},w1={class:"settings-card-copy"},k1={id:"code-language-headers-title"},P1={class:"settings-switch"},$1=["checked"],_1={class:"settings-switch-text"},A1={class:"settings-card editor-auto-refresh-settings","aria-labelledby":"editor-auto-refresh-title"},S1={class:"settings-card-copy"},D1={id:"editor-auto-refresh-title"},C1={class:"settings-switch"},V1=["checked"],Z1={class:"settings-switch-text"},M1={class:"settings-card delete-confirm-settings","aria-labelledby":"delete-confirm-title"},x1={class:"settings-card-copy"},H1={id:"delete-confirm-title"},T1={class:"settings-switch"},U1=["checked"],L1={class:"settings-switch-text"},I1={class:"settings-card launch-cache-settings","aria-labelledby":"launch-cache-title"},E1={class:"settings-card-copy"},B1={id:"launch-cache-title"},W1={class:"settings-card go-to-top-settings","aria-labelledby":"go-to-top-title"},R1={class:"settings-card-copy"},G1={id:"go-to-top-title"},j1={class:"settings-switch"},z1=["checked"],K1={class:"settings-switch-text"},N1={class:"settings-card chat-view-options-settings","aria-labelledby":"chat-view-options-title"},F1={class:"settings-card-copy"},O1={id:"chat-view-options-title"},q1={class:"settings-switch"},Y1=["checked"],J1={class:"settings-switch-text"},Q1={class:"settings-card memory-auto-extract-settings","aria-labelledby":"memory-auto-extract-title"},X1={class:"settings-card-copy"},e0={id:"memory-auto-extract-title"},t0={class:"settings-switch"},s0=["checked"],a0={class:"settings-switch-text"},n0={class:"settings-card streaming-behavior-settings","aria-labelledby":"streaming-behavior-title"},o0={class:"settings-card-copy"},l0={id:"streaming-behavior-title"},i0={class:"settings-select-label"},c0={class:"sr-only"},u0={class:"settings-card","aria-labelledby":"tts-auto-speak-title"},r0={class:"settings-card-copy"},d0={id:"tts-auto-speak-title"},g0={class:"settings-switch"},p0=["checked"],v0={class:"settings-switch-text"},m0={class:"settings-card sound-notification-settings","aria-labelledby":"sound-notification-title"},h0={class:"settings-card-copy"},f0={id:"sound-notification-title"},y0={class:"settings-inline-control sound-notification-control"},b0={class:"settings-select-label"},w0={class:"sr-only"},k0=["disabled","title","aria-label"],P0={class:"settings-card new-session-shortcut-settings","aria-labelledby":"new-session-shortcut-title"},$0={class:"settings-card-copy"},_0={id:"new-session-shortcut-title"},A0={class:"settings-select-label keyboard-shortcut-select-label"},S0={class:"sr-only"},D0={class:"settings-card fullscreen-shortcut-settings","aria-labelledby":"fullscreen-shortcut-title"},C0={class:"settings-card-copy"},V0={id:"fullscreen-shortcut-title"},Z0={class:"settings-select-label keyboard-shortcut-select-label"},M0={class:"sr-only"},x0={class:"settings-card keyboard-shortcuts-card","aria-labelledby":"keyboard-shortcuts-title"},H0={class:"settings-card-copy keyboard-shortcuts-copy"},T0={id:"keyboard-shortcuts-title"},U0={class:"keyboard-shortcut-list"},L0={class:"settings-card git-settings","aria-labelledby":"git-settings-title"},I0={class:"git-settings-header"},E0={class:"settings-card-copy"},B0={id:"git-settings-title"},W0={class:"settings-inline-note git-settings-summary"},R0=["disabled"],G0={key:0,class:"git-save-success",role:"status"},j0={class:"git-settings-grid"},z0={class:"git-provider-card"},K0={class:"git-provider-heading"},N0={class:"git-settings-field"},F0=["value"],O0={class:"git-settings-field"},q0=["value","placeholder"],Y0={class:"settings-inline-actions"},J0={class:"git-provider-card"},Q0={class:"git-provider-heading"},X0={class:"git-settings-field"},ec=["value"],tc={class:"git-settings-field"},sc=["value","placeholder"],ac={class:"settings-inline-actions"},nc={class:"git-settings-field git-clone-root-field"},oc={class:"git-clone-root-row"},lc=["value"],ic={class:"git-settings-field git-clone-root-field"},cc={class:"git-clone-root-row"},uc=["value"],rc=["disabled"],dc={class:"settings-inline-note"},gc={class:"settings-card commit-prompt-settings","aria-labelledby":"commit-prompt-settings-title"},pc={class:"settings-card-copy"},vc={id:"commit-prompt-settings-title"},mc={key:0,class:"settings-error-text",role:"alert"},hc={class:"commit-prompt-grid"},fc={class:"commit-prompt-scope"},yc={class:"git-settings-field"},bc=["placeholder"],wc=["disabled"],kc={class:"commit-prompt-scope"},Pc={class:"commit-prompt-project-name"},$c={class:"git-settings-field"},_c=["placeholder"],Ac=["disabled"],Sc={key:1,class:"git-save-success",role:"status"},Dc={class:"settings-card change-reason-prompt-settings","aria-labelledby":"change-reason-prompt-settings-title"},Cc={class:"settings-card-copy"},Vc={id:"change-reason-prompt-settings-title"},Zc={key:0,class:"settings-error-text",role:"alert"},Mc={class:"commit-prompt-grid"},xc={class:"commit-prompt-scope"},Hc={class:"git-settings-field"},Tc=["placeholder"],Uc=["disabled"],Lc={class:"commit-prompt-scope"},Ic={class:"commit-prompt-project-name"},Ec={class:"git-settings-field"},Bc=["placeholder"],Wc=["disabled"],Rc={key:1,class:"git-save-success",role:"status"},Gc={class:"settings-card gateway-settings","aria-labelledby":"gateway-settings-title"},jc={class:"git-settings-header gateway-settings-header"},zc={class:"settings-card-copy"},Kc={id:"gateway-settings-title"},Nc=["disabled"],Fc={key:0,class:"git-save-success",role:"status"},Oc={class:"gateway-defaults-grid"},qc={class:"git-settings-field gateway-default-field"},Yc={class:"git-settings-field gateway-default-field"},Jc={class:"git-settings-field gateway-default-field"},Qc=["aria-label"],Xc={class:"gateway-folder-toolbar"},eu={class:"gateway-folder-actions"},tu={key:0,class:"gateway-empty-state"},su={key:1,class:"gateway-cwd-list"},au={class:"gateway-cwd-index","aria-hidden":"true"},nu=["title"],ou=["aria-label","onClick"],lu={class:"settings-card gateway-settings wecom-settings","aria-labelledby":"wecom-settings-title"},iu={class:"wecom-header"},cu={class:"settings-card-copy"},uu={id:"wecom-settings-title"},ru={class:"wecom-actions"},du=["disabled"],gu=["disabled"],pu={key:0,class:"settings-inline-note"},vu={class:"wecom-form-grid"},mu={class:"git-settings-field"},hu=["disabled"],fu={class:"git-settings-field"},yu=["disabled"],bu={class:"git-settings-field"},wu=["disabled","placeholder"],ku={class:"git-settings-field"},Pu=["disabled","placeholder"],$u={key:1,class:"wecom-actions"},_u=["disabled"],Au=["disabled"],Su={key:2,class:"wecom-callback-panel"},Du={class:"wecom-callback-heading"},Cu={class:"git-settings-field"},Vu={class:"wecom-copy-row"},Zu=["value"],Mu={key:0,class:"wecom-generated-secrets",role:"status"},xu={key:1,class:"settings-inline-note"},Hu={key:3,class:"git-save-success",role:"status"},Tu={key:4,class:"settings-error-text",role:"alert"},Uu={class:"settings-inline-note"},Lu={class:"settings-card gateway-settings weixin-pairing-settings","aria-labelledby":"weixin-pairing-title"},Iu={class:"weixin-pairing-header"},Eu={class:"settings-card-copy"},Bu={id:"weixin-pairing-title"},Wu={class:"weixin-pairing-actions"},Ru=["disabled"],Gu=["disabled"],ju=["aria-label"],zu={class:"weixin-status-primary"},Ku={class:"weixin-status-details"},Nu={class:"settings-inline-note weixin-pairing-note"},Fu={key:0,class:"settings-error-text",role:"alert"},Ou={key:1,class:"weixin-qr-panel"},qu=["src","alt"],Yu={class:"settings-inline-note"},Ju={key:5,class:"settings-card review-sources-settings","aria-labelledby":"review-sources-title"},Qu={class:"settings-card-copy"},Xu={id:"review-sources-title"},er={key:0,class:"settings-loading"},tr={key:1,class:"settings-error-text",role:"alert"},sr={key:2},ar={class:"review-source-info"},nr=["onClick"],or={class:"review-source-form"},lr=["placeholder"],ir=["placeholder"],cr=["disabled"],ur={key:0,class:"settings-error-text",role:"alert"},rr=X({__name:"SettingsDialog",props:{visible:{type:Boolean},clientId:{default:""},projectPath:{default:"~"},totpEnabled:{type:Boolean},showHintInfo:{type:Boolean},showCodeBlockLanguageHeaders:{type:Boolean},streamingMessageBehavior:{},editorAutoRefresh:{type:Boolean},confirmSessionDelete:{type:Boolean,default:!0},newSessionShortcut:{default:"ctrlMetaN"},fullscreenShortcut:{default:"f11"},showGoToTopButton:{type:Boolean,default:!0},showChatViewOptionsButton:{type:Boolean,default:!0},autoExtractMemory:{type:Boolean,default:!1},theme:{default:"system"},language:{default:"en"},soundNotification:{default:"beep"},autoSpeakAssistant:{type:Boolean,default:!1},availableSkills:{default:()=>[]},skillPresets:{default:()=>[]},userPrompts:{default:()=>[]},giteaServerUrl:{default:""},giteaTokenConfigured:{type:Boolean,default:!1},githubServerUrl:{default:"https://github.com"},githubTokenConfigured:{type:Boolean,default:!1},githubProxyUrl:{default:""},gitCloneParentPath:{default:"~/git/github"},gatewayCwds:{default:()=>[]},gatewayDefaultProfile:{default:""},gatewayDefaultSkillset:{default:""},gatewayDefaultModelProvider:{default:""},gatewayDefaultModelId:{default:""},gatewaySaving:{type:Boolean,default:!1},gatewaySaveSuccessTick:{default:0},gitSaving:{type:Boolean,default:!1},gitSaveSuccessTick:{default:0},githubProxyChecking:{type:Boolean,default:!1},githubProxyCheckResult:{default:null},githubProxyCountry:{default:""}},emits:["close","updated","createUserPrompt","updateUserPrompt","deleteUserPrompt","loadUserPrompts","update:showHintInfo","update:showCodeBlockLanguageHeaders","update:streamingMessageBehavior","update:editorAutoRefresh","update:confirmSessionDelete","update:newSessionShortcut","update:fullscreenShortcut","update:showGoToTopButton","update:showChatViewOptionsButton","update:autoExtractMemory","update:theme","update:language","update:soundNotification","update:autoSpeakAssistant","update:gitCloneParentPath","createSkillPreset","updateSkillPreset","deleteSkillPreset","clearLaunchCache","saveGitSettings","saveGatewaySettings","clearGiteaSettings","testGiteaConnection","clearGithubSettings","testGithubConnection","testGithubProxy"],setup(v,{emit:r}){const t=Se.global.t,d=v,_=m(()=>d.projectPath.replace(/\/+$/,"").split("/").pop()||d.projectPath),S=m(()=>d.githubProxyCheckResult==="failed"?"✕":d.githubProxyCountry?`✓ ${d.githubProxyCountry}`:"✓"),g=m(()=>[{value:"system",label:t("settings.theme.system")},{value:"dark",label:t("settings.theme.dark")},{value:"light",label:t("settings.theme.light")}]),f=m(()=>[{value:"en",label:t("settings.language.english")},{value:"zh-CN",label:t("settings.language.chinese")}]),D=m(()=>[{value:"steer",label:t("settings.chat.steer")},{value:"followUp",label:t("settings.chat.followUp")}]),Z=m(()=>[{value:"beep",label:t("settings.chat.beep")},{value:"chime",label:t("settings.chat.chime")},{value:"ding",label:t("settings.chat.ding")},{value:"off",label:t("settings.chat.off")}]),P=m(()=>[{value:"ctrlMetaN",label:"Ctrl+⌘+N / Ctrl+Win+N"},{value:"ctrlAltN",label:"Ctrl+Alt+N"},{value:"disabled",label:t("settings.keyboard.disabled")}]),x=[{value:"f11",label:"F11"},{value:"ctrlShiftF",label:"Ctrl+Shift+F"}],h=p("general"),{sources:I,loading:M,error:E,load:B,add:F,remove:ue}=$s(),K=p([]),re=p("devin"),O=p(""),z=p(""),me=p(!1),le=p(""),He=m(()=>K.value.map(o=>({value:o.type,label:o.label}))),ee=p(d.giteaServerUrl),de=p(""),te=p(d.githubServerUrl),se=p(""),C=p(d.gitCloneParentPath),V=p(d.githubProxyUrl),$=p(Be(d.gatewayCwds)),G=p(d.gatewayDefaultProfile),ae=p(d.gatewayDefaultSkillset),j=p(Me(d.gatewayDefaultModelProvider,d.gatewayDefaultModelId)),Ge=p([]),je=p([]),De=p(!1),he=p(!1),ne=p(!1),u=p(!1),w=p(""),k=p(""),U=p(""),N=p(!1),ye=p(!1),be=p(""),ze=p(""),Ke=p(""),dt=p(""),Ne=p(!1),Fe=p(!1),Oe=p(""),q=p({status:"idle"}),we=p({enabled:!1,running:!1}),Te=p(!1),Ue=p(!1),qe=p(!1),Ce=p("");let Ve;const ge=p({configured:!1,managedBy:"none",allowedUsers:[],callbackVerified:!1}),Le=p(""),Ie=p(""),Ze=p(""),Ye=p(""),ke=p(),Y=p(!1),ie=p(""),pe=p(""),Je=p(!1),gt=m(()=>ee.value!==d.giteaServerUrl||!!de.value),pt=m(()=>te.value!==d.githubServerUrl||!!se.value),vt=m(()=>C.value!==d.gitCloneParentPath),mt=m(()=>V.value!==d.githubProxyUrl),Qe=m(()=>gt.value||pt.value||vt.value||mt.value),xt=m(()=>d.gitSaving?t("components.settingsDialog.saving"):ne.value?t("components.settingsDialog.saved"):Qe.value?t("components.settingsDialog.saveChanges"):t("components.settingsDialog.saved2")),Ht=m(()=>$.value[0]||"~"),Tt=m(()=>it([{value:"",label:"default"},...Ge.value.map(o=>({value:o.id,label:o.label||o.id}))],G.value)),Ut=m(()=>it([{value:"",label:t("components.settingsDialog.profileDefault")},...je.value.map(o=>({value:Me(o.provider,o.id),label:`${o.name||o.id} [${o.provider}]`}))],j.value)),Lt=m(()=>it([{value:"",label:t("components.settingsDialog.allUseAllSkills")},...d.skillPresets.map(o=>({value:o.id,label:`${o.name} (${o.mode})`}))],ae.value)),Xe=m(()=>tt($.value)!==tt(d.gatewayCwds)||G.value!==d.gatewayDefaultProfile||ae.value!==d.gatewayDefaultSkillset||j.value!==Me(d.gatewayDefaultModelProvider,d.gatewayDefaultModelId)),It=m(()=>d.gatewaySaving?t("components.settingsDialog.saving"):u.value?t("components.settingsDialog.saved"):Xe.value?t("components.settingsDialog.saveChanges"):t("components.settingsDialog.saved2")),et=m(()=>q.value.status==="confirmed"||!!we.value.paired),Et=m(()=>Te.value?t("components.settingsDialog.starting"):et.value?t("components.settingsDialog.pairAgain"):t("components.settingsDialog.startQrPairing")),Bt=m(()=>we.value.running?t("components.settingsDialog.running"):t("components.settingsDialog.notRunning")),Wt=m(()=>we.value.enabled?t("components.settingsDialog.enabled"):t("components.settingsDialog.disabled")),Rt=m(()=>q.value.status==="confirmed"?t("components.settingsDialog.pairedAs",{account:q.value.accountId||t("components.settingsDialog.savedAccount")}):q.value.status==="scanned"?t("components.settingsDialog.scannedWaitingForPhoneConfirmation"):q.value.status==="waiting"?t("components.settingsDialog.waitingForScan"):q.value.status==="expired"?t("components.settingsDialog.qrExpiredStartPairingAgain"):q.value.status==="error"?t("components.settingsDialog.pairingFailed"):we.value.paired?t("components.settingsDialog.pairedAs",{account:we.value.accountId||t("components.settingsDialog.savedAccount")}):t("components.settingsDialog.noPairedWechatAccountSavedYet")),_e=m(()=>ge.value.managedBy==="environment"),ht=m(()=>`${window.location.origin}/api/gateways/wecom/callback`);function ft(){ee.value=d.giteaServerUrl,de.value="",te.value=d.githubServerUrl,se.value="",C.value=d.gitCloneParentPath,V.value=d.githubProxyUrl}function yt(){$.value=Be(d.gatewayCwds),G.value=d.gatewayDefaultProfile,ae.value=d.gatewayDefaultSkillset,j.value=Me(d.gatewayDefaultModelProvider,d.gatewayDefaultModelId),he.value=!1}function Gt(){Qe.value&&!window.confirm(t("components.settingsDialog.youHaveUnsavedGitIntegrationChangesClose"))||Xe.value&&!window.confirm(t("components.settingsDialog.youHaveUnsavedGatewayChangesCloseWithout"))||H("close")}function jt(){if(!Qe.value||d.gitSaving)return;const o={};gt.value&&(o.gitea={serverUrl:ee.value,token:de.value}),pt.value&&(o.github={serverUrl:te.value,token:se.value}),vt.value&&(o.gitCloneParentPath=C.value),mt.value&&(o.githubProxyUrl=V.value),H("saveGitSettings",o)}function bt(o){ze.value=o.global.systemPrompt||"",Ke.value=o.project.systemPrompt||"",dt.value=o.effective.systemPrompt}function wt(o){w.value=o.global.userPrompt||"",k.value=o.project.userPrompt||"",U.value=o.effective.userPrompt,o.changeReason&&bt(o.changeReason)}async function at(){be.value="";const o=await fetch(`/api/git/commit-message-prompts?cwd=${encodeURIComponent(d.projectPath)}`);if(!o.ok)throw new Error((await o.json().catch(()=>({}))).error||"Failed to load commit message prompts");wt(await o.json())}async function kt(o){N.value=!0,be.value="",ye.value=!1;try{const a=await fetch("/api/git/commit-message-prompts",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:d.projectPath,scope:o,userPrompt:o==="global"?w.value:k.value})});if(!a.ok)throw new Error((await a.json().catch(()=>({}))).error||"Failed to save commit message prompts");wt(await a.json()),ye.value=!0,window.setTimeout(()=>{ye.value=!1},1800)}catch(a){be.value=a instanceof Error?a.message:"Failed to save commit message prompts"}finally{N.value=!1}}async function Pt(o){Ne.value=!0,Oe.value="",Fe.value=!1;try{const a=await fetch("/api/git/change-reason-prompts",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:d.projectPath,scope:o,systemPrompt:o==="global"?ze.value:Ke.value})});if(!a.ok)throw new Error((await a.json().catch(()=>({}))).error||"Failed to save change explanation prompt");bt(await a.json()),Fe.value=!0,window.setTimeout(()=>{Fe.value=!1},1800)}catch(a){Oe.value=a instanceof Error?a.message:"Failed to save change explanation prompt"}finally{Ne.value=!1}}function zt(){if(!Xe.value||d.gatewaySaving)return;const o=ss(j.value);H("saveGatewaySettings",{cwds:$.value,defaultProfile:G.value,defaultSkillset:ae.value,defaultModelProvider:o.provider,defaultModelId:o.id})}function Kt(o){G.value!==o&&(G.value=o,j.value="",nt().catch(()=>{}))}function Nt(o){const a=o.path.trim();a&&($.value=Be([...$.value,a]),he.value=!1)}function Ft(o){$.value=$.value.filter(a=>a!==o)}async function $t(){const o=await fetch("/api/sessions/agent-profiles"),a=await o.json().catch(()=>({}));o.ok&&(Ge.value=a.profiles||[])}async function nt(){const o=G.value||"default";De.value=!0;try{const a=await fetch(`/api/sessions/agent-profiles/${encodeURIComponent(o)}/models`),i=await a.json().catch(()=>({}));je.value=a.ok?i.models||[]:[]}finally{De.value=!1}}async function ot(){const o=await fe("/api/gateways/weixin/status");we.value=o.status}async function _t(){const o=await fe("/api/gateways/weixin/pairing");q.value=o.pairing}async function Ot(){await Promise.all([ot(),_t()])}async function qt(){Te.value=!0,Ce.value="";try{const o=await fe("/api/gateways/weixin/pairing","POST");q.value=o.pairing,await ot().catch(()=>{}),Jt()}catch(o){Ce.value=o instanceof Error?o.message:t("components.settingsDialog.failedToStartWechatPairing")}finally{Te.value=!1}}async function Yt(){qe.value=!1,Ue.value=!0,Ce.value="",window.clearInterval(Ve);try{const o=await fe("/api/gateways/weixin/pairing","DELETE");q.value=o.pairing,we.value=o.status}catch(o){Ce.value=o instanceof Error?o.message:t("components.settingsDialog.failedToUnbindWechat")}finally{Ue.value=!1}}function Jt(){window.clearInterval(Ve),Ve=window.setInterval(async()=>{try{await _t(),["confirmed","expired","error","idle"].includes(q.value.status)&&(window.clearInterval(Ve),await ot().catch(()=>{}))}catch{window.clearInterval(Ve)}},1500)}function Ee(o){ge.value=o,Le.value=o.corpId||"",Ie.value=o.agentId||"",Ye.value=o.allowedUsers.join(", ")}async function At(){const o=await fe("/api/gateways/wecom/status");Ee(o.status)}async function Qt(){Y.value=!0,ie.value="",pe.value="";try{const o=await fe("/api/gateways/wecom/configuration","PUT",{corpId:Le.value.trim(),corpSecret:Ze.value.trim(),agentId:Ie.value.trim(),allowedUsers:Ye.value.split(",").map(a=>a.trim()).filter(Boolean)});Ee(o.status),Ze.value="",ke.value={callbackToken:o.callbackToken,encodingAesKey:o.encodingAesKey},pe.value=t("components.settingsDialog.wecomConfigurationSaved")}catch(o){ie.value=o instanceof Error?o.message:t("components.settingsDialog.wecomRequestFailed")}finally{Y.value=!1}}async function Xt(){Y.value=!0,ie.value="",pe.value="";try{const o=await fe("/api/gateways/wecom/callback-secrets","POST");Ee(o.status),ke.value={callbackToken:o.callbackToken,encodingAesKey:o.encodingAesKey},pe.value=t("components.settingsDialog.wecomCallbackSecretsRegenerated")}catch(o){ie.value=o instanceof Error?o.message:t("components.settingsDialog.wecomRequestFailed")}finally{Y.value=!1}}async function es(){Y.value=!0,ie.value="",pe.value="";try{const o=await fe("/api/gateways/wecom/test","POST");Ee(o.status),pe.value=t("components.settingsDialog.wecomConnectionSucceeded")}catch(o){ie.value=o instanceof Error?o.message:t("components.settingsDialog.wecomRequestFailed")}finally{Y.value=!1}}async function ts(){Je.value=!1,Y.value=!0,ie.value="",pe.value="";try{const o=await fe("/api/gateways/wecom/configuration","DELETE");Ee(o.status),Ze.value="",ke.value=void 0}catch(o){ie.value=o instanceof Error?o.message:t("components.settingsDialog.wecomRequestFailed")}finally{Y.value=!1}}async function lt(o){try{await navigator.clipboard.writeText(o),pe.value=t("components.settingsDialog.copied")}catch{ie.value=t("components.settingsDialog.copyFailed")}}function fe(o,a="GET",i){return ce(o,{method:a,...i===void 0?{}:{body:i},fallbackMessage:ve=>t("components.settingsDialog.gatewayRequestFailed",{status:ve})})}function it(o,a){const i=o.filter((ve,Dt)=>o.findIndex(us=>us.value===ve.value)===Dt);return!a||i.some(ve=>ve.value===a)?i:[...i,{value:a,label:a}]}function Be(o){return Array.from(new Set((o||[]).map(a=>a.trim()).filter(Boolean)))}function tt(o){return Be(o).join(`
|
|
5
|
+
`)}function Me(o,a){return o&&a?`${o}\0${a}`:""}function ss(o){const[a="",i=""]=o.split("\0");return{provider:a,id:i}}function St(o){const a=K.value.find(i=>i.type===o);a&&(O.value=a.label,z.value=a.defaultDataPath)}async function as(){K.value=await _s(),K.value.some(o=>o.type===re.value)||(re.value=K.value[0]?.type||""),!O.value&&!z.value&&St(re.value)}async function ns(){if(!(!O.value.trim()||!z.value.trim())){le.value="",me.value=!0;try{await F({type:re.value,label:O.value.trim(),dataPath:z.value.trim()}),O.value="",z.value=""}catch(o){le.value=o instanceof Error?o.message:t("components.settingsDialog.failedToAddReviewSource")}finally{me.value=!1}}}async function os(o){le.value="";try{await ue(o)}catch(a){le.value=a instanceof Error?a.message:t("components.settingsDialog.failedToRemoveReviewSource")}}function ls(o,a){H("createUserPrompt",o,a)}function is(o,a){H("updateUserPrompt",o,a)}J(()=>d.visible,o=>{o?(ft(),yt(),Promise.all([B(),as()]).catch(()=>{}),h.value==="prompts"&&H("loadUserPrompts"),h.value==="git"&&at().catch(a=>{be.value=a instanceof Error?a.message:String(a)}),h.value==="gateway"&&($t().catch(()=>{}),nt().catch(()=>{}),At().catch(()=>{}))):window.clearInterval(Ve)}),J(h,o=>{o==="prompts"&&H("loadUserPrompts"),o==="git"&&at().catch(a=>{be.value=a instanceof Error?a.message:String(a)}),o==="gateway"&&($t().catch(()=>{}),nt().catch(()=>{}),Ot().catch(()=>{}),At().catch(()=>{}))}),J(()=>d.projectPath,()=>{d.visible&&h.value==="git"&&at().catch(o=>{be.value=o instanceof Error?o.message:String(o)})}),J(()=>d.giteaServerUrl,(o,a)=>{ee.value===a&&(ee.value=o)}),J(()=>d.githubServerUrl,(o,a)=>{te.value===a&&(te.value=o)}),J(()=>d.gitCloneParentPath,(o,a)=>{C.value===a&&(C.value=o)}),J(()=>d.githubProxyUrl,(o,a)=>{V.value===a&&(V.value=o)}),J(()=>d.gatewayCwds,(o,a)=>{tt($.value)===tt(a)&&($.value=Be(o))}),J(()=>d.gatewayDefaultProfile,(o,a)=>{G.value===a&&(G.value=o)}),J(()=>d.gatewayDefaultSkillset,(o,a)=>{ae.value===a&&(ae.value=o)}),J(()=>[d.gatewayDefaultModelProvider,d.gatewayDefaultModelId],([o,a],[i,ve])=>{j.value===Me(i,ve)&&(j.value=Me(o,a))}),J(()=>d.gitSaveSuccessTick,()=>{d.gitSaveSuccessTick&&(ft(),ne.value=!0,window.setTimeout(()=>{ne.value=!1},1800))}),J(()=>d.gatewaySaveSuccessTick,()=>{d.gatewaySaveSuccessTick&&(yt(),u.value=!0,window.setTimeout(()=>{u.value=!1},1800))});const cs=m(()=>h.value==="general"?t("settings.sections.general"):h.value==="security"?t("settings.sections.securityHeading"):h.value==="prompts"?t("settings.sections.promptsHeading"):h.value==="keyboard"?t("settings.sections.keyboardHeading"):h.value==="skills"?t("settings.sections.skillsHeading"):h.value==="git"?t("settings.sections.gitHeading"):h.value==="gateway"?t("settings.sections.gateway"):h.value==="reviewSources"?t("settings.sections.reviewSources"):h.value==="modelWindowKickoff"?t("settings.sections.modelWindowKickoff"):t("settings.sections.chatHeading")),H=r;return(o,a)=>(l(),c(oe,null,[(l(),We(Ps,{to:"body"},[A(ks,{name:"settings-modal"},{default:Ae(()=>[v.visible?(l(),c("div",qi,[e("section",Yi,[e("aside",Ji,[e("h2",Qi,n(s(t)("settings.title")),1),e("nav",{class:"settings-menu","aria-label":s(t)("settings.sectionsLabel")},[e("button",{class:R(["settings-menu-item",{active:h.value==="general"}]),type:"button",onClick:a[0]||(a[0]=i=>h.value="general")},[A(s(Yn),{size:18,weight:"bold",class:"settings-menu-icon"}),e("span",null,n(s(t)("settings.sections.general")),1)],2),e("button",{class:R(["settings-menu-item",{active:h.value==="security"}]),type:"button",onClick:a[1]||(a[1]=i=>h.value="security")},[A(s(on),{size:18,weight:"bold",class:"settings-menu-icon"}),e("span",null,n(s(t)("settings.sections.security")),1)],2),e("button",{class:R(["settings-menu-item",{active:h.value==="chat"}]),type:"button",onClick:a[2]||(a[2]=i=>h.value="chat")},[A(s(ma),{size:18,weight:"bold",class:"settings-menu-icon"}),e("span",null,n(s(t)("settings.sections.chat")),1)],2),e("button",{class:R(["settings-menu-item",{active:h.value==="prompts"}]),type:"button",onClick:a[3]||(a[3]=i=>h.value="prompts")},[A(s(vs),{size:18,weight:"bold",class:"settings-menu-icon"}),e("span",null,n(s(t)("settings.sections.prompts")),1)],2),e("button",{class:R(["settings-menu-item",{active:h.value==="keyboard"}]),type:"button",onClick:a[4]||(a[4]=i=>h.value="keyboard")},[A(s(Ia),{size:18,weight:"bold",class:"settings-menu-icon"}),e("span",null,n(s(t)("settings.sections.keyboard")),1)],2),e("button",{class:R(["settings-menu-item",{active:h.value==="skills"}]),type:"button",onClick:a[5]||(a[5]=i=>h.value="skills")},[A(s(bo),{size:18,weight:"bold",class:"settings-menu-icon"}),e("span",null,n(s(t)("settings.sections.skills")),1)],2),e("button",{class:R(["settings-menu-item",{active:h.value==="git"}]),type:"button",onClick:a[6]||(a[6]=i=>h.value="git")},[A(s(ms),{size:18,weight:"bold",class:"settings-menu-icon"}),e("span",null,n(s(t)("settings.sections.git")),1)],2),e("button",{class:R(["settings-menu-item",{active:h.value==="gateway"}]),type:"button",onClick:a[7]||(a[7]=i=>h.value="gateway")},[A(s(Cn),{size:18,weight:"bold",class:"settings-menu-icon"}),e("span",null,n(s(t)("settings.sections.gateway")),1)],2),e("button",{class:R(["settings-menu-item",{active:h.value==="reviewSources"}]),type:"button",onClick:a[8]||(a[8]=i=>h.value="reviewSources")},[A(s(hs),{size:18,weight:"bold",class:"settings-menu-icon"}),e("span",null,n(s(t)("settings.sections.reviewSources")),1)],2),e("button",{class:R(["settings-menu-item",{active:h.value==="modelWindowKickoff"}]),type:"button",onClick:a[9]||(a[9]=i=>h.value="modelWindowKickoff")},[A(s(Ro),{size:18,weight:"bold",class:"settings-menu-icon"}),e("span",null,n(s(t)("settings.sections.modelWindowKickoff")),1)],2)],8,Xi)]),e("main",e1,[e("header",t1,[e("div",null,[e("h3",null,n(cs.value),1)]),A(fs,{class:"settings-close",label:s(t)("settings.close"),onClick:Gt},null,8,["label"])]),e("div",s1,[h.value==="general"?(l(),c(oe,{key:0},[e("section",a1,[e("div",n1,[e("h4",o1,n(s(t)("settings.theme.title")),1),e("p",null,n(s(t)("settings.theme.description")),1)]),e("label",l1,[e("span",i1,n(s(t)("settings.theme.title")),1),A(Q,{id:"settings-theme-select","model-value":v.theme,options:g.value,"aria-label":s(t)("settings.theme.title"),"onUpdate:modelValue":a[10]||(a[10]=i=>H("update:theme",i))},null,8,["model-value","options","aria-label"])])]),e("section",c1,[e("div",u1,[e("h4",r1,n(s(t)("settings.language.title")),1),e("p",null,n(s(t)("settings.language.description")),1)]),e("label",d1,[e("span",g1,n(s(t)("settings.language.title")),1),A(Q,{id:"settings-language-select","model-value":v.language,options:f.value,"aria-label":s(t)("settings.language.title"),"onUpdate:modelValue":a[11]||(a[11]=i=>H("update:language",i))},null,8,["model-value","options","aria-label"])])]),e("section",p1,[e("div",v1,[e("h4",m1,n(s(t)("settings.hintInfo.title")),1),e("p",null,n(s(t)("settings.hintInfo.description")),1)]),e("label",h1,[e("input",{class:"hint-info-toggle",type:"checkbox",checked:v.showHintInfo,onChange:a[12]||(a[12]=i=>H("update:showHintInfo",i.target.checked))},null,40,f1),a[68]||(a[68]=e("span",{class:"settings-switch-track","aria-hidden":"true"},null,-1)),e("span",y1,n(s(t)(v.showHintInfo?"settings.state.shown":"settings.state.hidden")),1)])]),e("section",b1,[e("div",w1,[e("h4",k1,n(s(t)("settings.codeHeaders.title")),1),e("p",null,n(s(t)("settings.codeHeaders.description")),1)]),e("label",P1,[e("input",{class:"code-language-headers-toggle",type:"checkbox",checked:v.showCodeBlockLanguageHeaders,onChange:a[13]||(a[13]=i=>H("update:showCodeBlockLanguageHeaders",i.target.checked))},null,40,$1),a[69]||(a[69]=e("span",{class:"settings-switch-track","aria-hidden":"true"},null,-1)),e("span",_1,n(s(t)(v.showCodeBlockLanguageHeaders?"settings.state.shown":"settings.state.hidden")),1)])]),e("section",A1,[e("div",S1,[e("h4",D1,n(s(t)("settings.editorRefresh.title")),1),e("p",null,n(s(t)("settings.editorRefresh.description")),1)]),e("label",C1,[e("input",{class:"editor-auto-refresh-toggle",type:"checkbox",checked:v.editorAutoRefresh,onChange:a[14]||(a[14]=i=>H("update:editorAutoRefresh",i.target.checked))},null,40,V1),a[70]||(a[70]=e("span",{class:"settings-switch-track","aria-hidden":"true"},null,-1)),e("span",Z1,n(s(t)(v.editorAutoRefresh?"settings.state.enabled":"settings.state.disabled")),1)])]),e("section",M1,[e("div",x1,[e("h4",H1,n(s(t)("settings.deleteConfirm.title")),1),e("p",null,n(s(t)("settings.deleteConfirm.description")),1)]),e("label",T1,[e("input",{class:"delete-confirm-toggle",type:"checkbox",checked:v.confirmSessionDelete,onChange:a[15]||(a[15]=i=>H("update:confirmSessionDelete",i.target.checked))},null,40,U1),a[71]||(a[71]=e("span",{class:"settings-switch-track","aria-hidden":"true"},null,-1)),e("span",L1,n(s(t)(v.confirmSessionDelete?"settings.state.yes":"settings.state.no")),1)])]),e("section",I1,[e("div",E1,[e("h4",B1,n(s(t)("settings.launchCache.title")),1),e("p",null,n(s(t)("settings.launchCache.description")),1)]),e("button",{type:"button",class:"settings-action-btn",onClick:a[16]||(a[16]=i=>H("clearLaunchCache"))},n(s(t)("settings.launchCache.clear")),1)])],64)):b("",!0),h.value==="chat"?(l(),c(oe,{key:1},[e("section",W1,[e("div",R1,[e("h4",G1,n(s(t)("settings.chat.goToTopTitle")),1),e("p",null,n(s(t)("settings.chat.goToTopDescription")),1)]),e("label",j1,[e("input",{class:"go-to-top-toggle",type:"checkbox",checked:v.showGoToTopButton,onChange:a[17]||(a[17]=i=>H("update:showGoToTopButton",i.target.checked))},null,40,z1),a[72]||(a[72]=e("span",{class:"settings-switch-track","aria-hidden":"true"},null,-1)),e("span",K1,n(s(t)(v.showGoToTopButton?"settings.state.shown":"settings.state.hidden")),1)])]),e("section",N1,[e("div",F1,[e("h4",O1,n(s(t)("settings.chat.viewOptionsTitle")),1),e("p",null,n(s(t)("settings.chat.viewOptionsDescription")),1)]),e("label",q1,[e("input",{class:"chat-view-options-toggle",type:"checkbox",checked:v.showChatViewOptionsButton,onChange:a[18]||(a[18]=i=>H("update:showChatViewOptionsButton",i.target.checked))},null,40,Y1),a[73]||(a[73]=e("span",{class:"settings-switch-track","aria-hidden":"true"},null,-1)),e("span",J1,n(s(t)(v.showChatViewOptionsButton?"settings.state.shown":"settings.state.hidden")),1)])]),e("section",Q1,[e("div",X1,[e("h4",e0,n(s(t)("settings.chat.memoryTitle")),1),e("p",null,n(s(t)("settings.chat.memoryDescription")),1)]),e("label",t0,[e("input",{class:"memory-auto-extract-toggle",type:"checkbox",checked:v.autoExtractMemory,onChange:a[19]||(a[19]=i=>H("update:autoExtractMemory",i.target.checked))},null,40,s0),a[74]||(a[74]=e("span",{class:"settings-switch-track","aria-hidden":"true"},null,-1)),e("span",a0,n(s(t)(v.autoExtractMemory?"settings.state.enabled":"settings.state.disabled")),1)])]),e("section",n0,[e("div",o0,[e("h4",l0,n(s(t)("settings.chat.streamingTitle")),1),e("p",null,n(s(t)("settings.chat.streamingDescription")),1)]),e("label",i0,[e("span",c0,n(s(t)("settings.chat.streamingTitle")),1),A(Q,{id:"settings-streaming-behavior-select","model-value":v.streamingMessageBehavior,options:D.value,"aria-label":s(t)("settings.chat.streamingTitle"),"onUpdate:modelValue":a[20]||(a[20]=i=>H("update:streamingMessageBehavior",i))},null,8,["model-value","options","aria-label"])])]),e("section",u0,[e("div",r0,[e("h4",d0,n(s(t)("settings.chat.ttsTitle")),1),e("p",null,n(s(t)("settings.chat.ttsDescription")),1)]),e("label",g0,[e("input",{class:"tts-auto-speak-toggle",type:"checkbox",checked:v.autoSpeakAssistant,onChange:a[21]||(a[21]=i=>H("update:autoSpeakAssistant",i.target.checked))},null,40,p0),a[75]||(a[75]=e("span",{class:"settings-switch-track","aria-hidden":"true"},null,-1)),e("span",v0,n(s(t)(v.autoSpeakAssistant?"settings.state.enabled":"settings.state.disabled")),1)])]),e("section",m0,[e("div",h0,[e("h4",f0,n(s(t)("settings.chat.soundTitle")),1),e("p",null,n(s(t)("settings.chat.soundDescription")),1)]),e("div",y0,[e("label",b0,[e("span",w0,n(s(t)("settings.chat.soundTitle")),1),A(Q,{id:"settings-sound-notification-select","model-value":v.soundNotification,options:Z.value,"aria-label":s(t)("settings.chat.soundTitle"),"onUpdate:modelValue":a[22]||(a[22]=i=>H("update:soundNotification",i))},null,8,["model-value","options","aria-label"])]),e("button",{type:"button",class:"settings-icon-btn",disabled:v.soundNotification==="off",title:s(t)("settings.chat.previewSound"),"aria-label":s(t)("settings.chat.previewSound"),onClick:a[23]||(a[23]=i=>s(ys)(v.soundNotification))},[A(s(bs),{size:18,weight:"bold"})],8,k0)])])],64)):b("",!0),h.value==="keyboard"?(l(),c(oe,{key:2},[e("section",P0,[e("div",$0,[e("h4",_0,n(s(t)("settings.keyboard.newSessionTitle")),1),e("p",null,n(s(t)("settings.keyboard.newSessionDescription")),1)]),e("label",A0,[e("span",S0,n(s(t)("settings.keyboard.newSessionTitle")),1),A(Q,{id:"settings-new-session-shortcut-select","model-value":v.newSessionShortcut,options:P.value,"aria-label":s(t)("settings.keyboard.newSessionTitle"),"onUpdate:modelValue":a[24]||(a[24]=i=>H("update:newSessionShortcut",i))},null,8,["model-value","options","aria-label"])])]),e("section",D0,[e("div",C0,[e("h4",V0,n(s(t)("settings.keyboard.fullscreenTitle")),1),e("p",null,n(s(t)("settings.keyboard.fullscreenDescription")),1)]),e("label",Z0,[e("span",M0,n(s(t)("settings.keyboard.fullscreenTitle")),1),A(Q,{id:"settings-fullscreen-shortcut-select","model-value":v.fullscreenShortcut,options:x,"aria-label":s(t)("settings.keyboard.fullscreenTitle"),"onUpdate:modelValue":a[25]||(a[25]=i=>H("update:fullscreenShortcut",i))},null,8,["model-value","aria-label"])])]),e("section",x0,[e("div",H0,[e("h4",T0,n(s(t)("settings.keyboard.title")),1),e("p",null,n(s(t)("settings.keyboard.description")),1),e("dl",U0,[e("div",null,[e("dt",null,[e("kbd",null,n(s(t)("components.settingsDialog.i")),1)]),e("dd",null,n(s(t)("components.settingsDialog.focusTheMessageInput")),1)]),e("div",null,[e("dt",null,[e("kbd",null,n(s(t)("components.settingsDialog.h")),1)]),e("dd",null,n(s(t)("components.settingsDialog.focusTheLatestChatMessageHistory")),1)]),e("div",null,[a[76]||(a[76]=e("dt",null,[e("kbd",null,"/")],-1)),e("dd",null,n(s(t)("components.settingsDialog.focusTheMessageInputAndStartA")),1)]),e("div",null,[a[77]||(a[77]=e("dt",null,[e("kbd",null,"↑")],-1)),e("dd",null,n(s(t)("components.settingsDialog.fromAnEmptyMessageInputMoveFocus")),1)]),e("div",null,[e("dt",null,[a[78]||(a[78]=e("kbd",null,"Esc",-1)),a[79]||(a[79]=y()),e("span",null,n(s(t)("components.settingsDialog.or")),1),a[80]||(a[80]=y()),a[81]||(a[81]=e("kbd",null,"Enter",-1))]),e("dd",null,n(s(t)("components.settingsDialog.fromChatHistoryReturnFocusToThe")),1)]),e("div",null,[e("dt",null,[a[82]||(a[82]=e("kbd",null,"⌘/Ctrl",-1)),a[83]||(a[83]=y(" + ",-1)),e("kbd",null,n(s(t)("components.settingsDialog.k")),1)]),e("dd",null,n(s(t)("components.settingsDialog.openSessionSearch")),1)]),e("div",null,[e("dt",null,[a[84]||(a[84]=e("kbd",null,"Ctrl",-1)),a[85]||(a[85]=y(" + ",-1)),a[86]||(a[86]=e("kbd",null,"Alt",-1)),a[87]||(a[87]=y(" + ",-1)),e("kbd",null,n(s(t)("components.settingsDialog.p")),1)]),e("dd",null,n(s(t)("components.settingsDialog.focusTheProjectSelector")),1)]),e("div",null,[a[88]||(a[88]=e("dt",null,[e("kbd",null,"⌘/Ctrl"),y(" + "),e("kbd",null,"`")],-1)),e("dd",null,n(s(t)("components.settingsDialog.toggleTheTerminalPanel")),1)]),e("div",null,[e("dt",null,[a[89]||(a[89]=e("kbd",null,"Ctrl",-1)),a[90]||(a[90]=y(" + ",-1)),e("kbd",null,n(s(t)("components.settingsDialog.e")),1)]),e("dd",null,n(s(t)("components.settingsDialog.toggleTheEditorPanel")),1)]),e("div",null,[e("dt",null,[a[91]||(a[91]=e("kbd",null,"Ctrl",-1)),a[92]||(a[92]=y(" + ",-1)),e("kbd",null,n(s(t)("components.settingsDialog.q")),1)]),e("dd",null,n(s(t)("components.settingsDialog.toggleTheTaskInbox")),1)]),e("div",null,[e("dt",null,[a[93]||(a[93]=e("kbd",null,"⌘/Ctrl",-1)),a[94]||(a[94]=y(" + ",-1)),e("kbd",null,n(s(t)("components.settingsDialog.b")),1)]),e("dd",null,n(s(t)("components.settingsDialog.toggleTheDesktopSidebar")),1)]),e("div",null,[e("dt",null,[e("kbd",null,n(s(t)("components.settingsDialog.f11")),1),a[95]||(a[95]=y()),e("span",null,n(s(t)("components.settingsDialog.or")),1),a[96]||(a[96]=y()),a[97]||(a[97]=e("kbd",null,"Ctrl",-1)),a[98]||(a[98]=y(" + ",-1)),a[99]||(a[99]=e("kbd",null,"Shift",-1)),a[100]||(a[100]=y(" + ",-1)),e("kbd",null,n(s(t)("components.settingsDialog.f")),1)]),e("dd",null,n(s(t)("components.settingsDialog.toggleMainWindowFullscreenDependingOnYour")),1)])])])])],64)):b("",!0),h.value==="git"?(l(),c(oe,{key:3},[e("section",L0,[e("div",I0,[e("div",E0,[e("h4",B0,n(s(t)("components.settingsDialog.gitIntegration")),1),e("p",null,n(s(t)("components.settingsDialog.configureGiteaAndGitHubTokensPRAnd")),1),e("p",W0,n(s(t)("components.settingsDialog.configuredProviders",{providers:[v.githubTokenConfigured?"GitHub":"",v.giteaTokenConfigured?"Gitea":""].filter(Boolean).join(", ")||s(t)("components.settingsDialog.none")})),1)]),e("button",{type:"button",class:R(["settings-action-btn compact-action settings-save-btn git-save-btn",{saved:ne.value}]),disabled:!Qe.value||v.gitSaving,onClick:jt},n(xt.value),11,R0)]),ne.value?(l(),c("p",G0,n(s(t)("components.settingsDialog.gitIntegrationSettingsSaved")),1)):b("",!0),e("div",j0,[e("div",z0,[e("div",K0,[a[101]||(a[101]=e("strong",null,"Gitea",-1)),e("span",{class:R(["git-provider-status",{configured:v.giteaTokenConfigured}])},n(v.giteaTokenConfigured?s(t)("components.settingsDialog.configured"):s(t)("components.settingsDialog.notConfigured")),3)]),e("label",N0,[y(n(s(t)("components.settingsDialog.serverURL"))+" ",1),e("input",{class:"settings-input",value:ee.value,placeholder:"https://git.example.com",onInput:a[26]||(a[26]=i=>ee.value=i.target.value)},null,40,F0)]),e("label",O0,[y(n(s(t)("components.settingsDialog.personalAccessToken"))+" ",1),e("input",{class:"settings-input",type:"password",value:de.value,placeholder:v.giteaTokenConfigured?s(t)("components.settingsDialog.tokenConfiguredEnterANewTokenToReplace"):s(t)("components.settingsDialog.personalAccessToken"),onInput:a[27]||(a[27]=i=>de.value=i.target.value)},null,40,q0)]),e("div",Y0,[e("button",{type:"button",class:"settings-action-btn compact-action",onClick:a[28]||(a[28]=i=>H("testGiteaConnection",{serverUrl:ee.value,token:de.value}))},n(s(t)("components.settingsDialog.test")),1),e("button",{type:"button",class:"settings-action-btn compact-action",onClick:a[29]||(a[29]=i=>H("clearGiteaSettings"))},n(s(t)("components.settingsDialog.clear")),1)])]),e("div",J0,[e("div",Q0,[a[102]||(a[102]=e("strong",null,"GitHub",-1)),e("span",{class:R(["git-provider-status",{configured:v.githubTokenConfigured}])},n(v.githubTokenConfigured?s(t)("components.settingsDialog.configured"):s(t)("components.settingsDialog.notConfigured")),3)]),e("label",X0,[y(n(s(t)("components.settingsDialog.serverURL"))+" ",1),e("input",{class:"settings-input",value:te.value,placeholder:"https://github.com",onInput:a[30]||(a[30]=i=>te.value=i.target.value)},null,40,ec)]),e("label",tc,[y(n(s(t)("components.settingsDialog.personalAccessToken"))+" ",1),e("input",{class:"settings-input",type:"password",value:se.value,placeholder:v.githubTokenConfigured?s(t)("components.settingsDialog.tokenConfiguredEnterANewTokenToReplace"):s(t)("components.settingsDialog.githubPersonalAccessToken"),onInput:a[31]||(a[31]=i=>se.value=i.target.value)},null,40,sc)]),e("div",ac,[e("button",{type:"button",class:"settings-action-btn compact-action",onClick:a[32]||(a[32]=i=>H("testGithubConnection",{serverUrl:te.value,token:se.value}))},n(s(t)("components.settingsDialog.test")),1),e("button",{type:"button",class:"settings-action-btn compact-action",onClick:a[33]||(a[33]=i=>H("clearGithubSettings"))},n(s(t)("components.settingsDialog.clear")),1)])])]),e("label",nc,[y(n(s(t)("components.settingsDialog.cloneRootFolder"))+" ",1),e("span",oc,[e("input",{class:"settings-input",value:C.value,placeholder:"~/git/github",onInput:a[34]||(a[34]=i=>C.value=i.target.value)},null,40,lc)])]),e("label",ic,[y(n(s(t)("components.settingsDialog.githubHTTPProxy"))+" ",1),e("span",cc,[e("input",{class:"settings-input",value:V.value,placeholder:"http://proxy.example:7890",onInput:a[35]||(a[35]=i=>V.value=i.target.value)},null,40,uc),e("button",{type:"button",class:"settings-action-btn compact-action git-proxy-check-button",disabled:v.githubProxyChecking,onClick:a[36]||(a[36]=i=>H("testGithubProxy",V.value))},[e("span",null,n(v.githubProxyChecking?s(t)("components.settingsDialog.checking"):s(t)("components.settingsDialog.testProxy")),1),v.githubProxyCheckResult?(l(),c("span",{key:0,class:R(v.githubProxyCheckResult==="ok"?"git-check-ok":"git-check-failed"),role:"status"},n(S.value),3)):b("",!0)],8,rc)]),e("span",dc,n(s(t)("components.settingsDialog.usedAsALLPROXYHttpProxyHttps")),1)])]),e("section",gc,[e("div",pc,[e("h4",vc,n(s(t)("components.settingsDialog.commitMessagePrompts")),1),e("p",null,n(s(t)("components.settingsDialog.commitMessagePromptsDescription")),1)]),be.value?(l(),c("div",mc,n(be.value),1)):b("",!0),e("div",hc,[e("fieldset",fc,[e("legend",null,n(s(t)("components.settingsDialog.globalPrompts")),1),e("label",yc,[y(n(s(t)("components.settingsDialog.userPrompt"))+" ",1),L(e("textarea",{"onUpdate:modelValue":a[37]||(a[37]=i=>w.value=i),class:"settings-input commit-prompt-textarea",placeholder:U.value},null,8,bc),[[W,w.value]])]),e("button",{type:"button",class:"settings-action-btn compact-action",disabled:N.value,onClick:a[38]||(a[38]=i=>kt("global"))},n(s(t)("components.settingsDialog.saveGlobalPrompts")),9,wc)]),e("fieldset",kc,[e("legend",null,[y(n(s(t)("components.settingsDialog.projectPrompts"))+" ",1),e("span",Pc,"("+n(_.value)+")",1)]),e("label",$c,[y(n(s(t)("components.settingsDialog.userPrompt"))+" ",1),L(e("textarea",{"onUpdate:modelValue":a[39]||(a[39]=i=>k.value=i),class:"settings-input commit-prompt-textarea",placeholder:s(t)("components.settingsDialog.inheritGlobalPrompt")},null,8,_c),[[W,k.value]])]),e("button",{type:"button",class:"settings-action-btn compact-action",disabled:N.value,onClick:a[40]||(a[40]=i=>kt("project"))},n(s(t)("components.settingsDialog.saveProjectPrompts")),9,Ac)])]),ye.value?(l(),c("p",Sc,n(s(t)("components.settingsDialog.commitMessagePromptsSaved")),1)):b("",!0)]),e("section",Dc,[e("div",Cc,[e("h4",Vc,n(s(t)("components.settingsDialog.changeReasonPrompt")),1),e("p",null,n(s(t)("components.settingsDialog.changeReasonPromptDescription")),1)]),Oe.value?(l(),c("div",Zc,n(Oe.value),1)):b("",!0),e("div",Mc,[e("fieldset",xc,[e("legend",null,n(s(t)("components.settingsDialog.globalPrompts")),1),e("label",Hc,[y(n(s(t)("components.settingsDialog.systemPrompt"))+" ",1),L(e("textarea",{"onUpdate:modelValue":a[41]||(a[41]=i=>ze.value=i),class:"settings-input change-reason-prompt-textarea",placeholder:dt.value},null,8,Tc),[[W,ze.value]])]),e("button",{type:"button",class:"settings-action-btn compact-action",disabled:Ne.value,onClick:a[42]||(a[42]=i=>Pt("global"))},n(s(t)("components.settingsDialog.saveGlobalPrompts")),9,Uc)]),e("fieldset",Lc,[e("legend",null,[y(n(s(t)("components.settingsDialog.projectPrompts"))+" ",1),e("span",Ic,"("+n(_.value)+")",1)]),e("label",Ec,[y(n(s(t)("components.settingsDialog.systemPrompt"))+" ",1),L(e("textarea",{"onUpdate:modelValue":a[43]||(a[43]=i=>Ke.value=i),class:"settings-input change-reason-prompt-textarea",placeholder:s(t)("components.settingsDialog.inheritGlobalPrompt")},null,8,Bc),[[W,Ke.value]])]),e("button",{type:"button",class:"settings-action-btn compact-action",disabled:Ne.value,onClick:a[44]||(a[44]=i=>Pt("project"))},n(s(t)("components.settingsDialog.saveProjectPrompts")),9,Wc)])]),Fe.value?(l(),c("p",Rc,n(s(t)("components.settingsDialog.changeReasonPromptSaved")),1)):b("",!0)])],64)):b("",!0),h.value==="gateway"?(l(),c(oe,{key:4},[e("section",Gc,[e("div",jc,[e("div",zc,[e("h4",Kc,n(s(t)("components.settingsDialog.gatewayDefaults")),1),e("p",null,n(s(t)("components.settingsDialog.configureTheDefaultProfileModelSkillsetAnd")),1)]),e("button",{type:"button",class:R(["settings-action-btn compact-action settings-save-btn gateway-save-btn",{saved:u.value}]),disabled:!Xe.value||v.gatewaySaving,onClick:zt},n(It.value),11,Nc)]),u.value?(l(),c("p",Fc,n(s(t)("components.settingsDialog.gatewaySettingsSaved")),1)):b("",!0),e("div",Oc,[e("label",qc,[y(n(s(t)("components.settingsDialog.defaultProfile"))+" ",1),A(Q,{id:"gateway-default-profile-select","model-value":G.value,options:Tt.value,searchable:"","aria-label":s(t)("components.settingsDialog.gatewayDefaultProfile"),"onUpdate:modelValue":Kt},null,8,["model-value","options","aria-label"])]),e("label",Yc,[y(n(s(t)("components.settingsDialog.defaultModel"))+" ",1),A(Q,{id:"gateway-default-model-select",modelValue:j.value,"onUpdate:modelValue":a[45]||(a[45]=i=>j.value=i),options:Ut.value,disabled:De.value,searchable:"","aria-label":s(t)("components.settingsDialog.gatewayDefaultModel")},null,8,["modelValue","options","disabled","aria-label"])]),e("label",Jc,[y(n(s(t)("components.settingsDialog.defaultSkillset"))+" ",1),A(Q,{id:"gateway-default-skillset-select",modelValue:ae.value,"onUpdate:modelValue":a[46]||(a[46]=i=>ae.value=i),options:Lt.value,searchable:"","aria-label":s(t)("components.settingsDialog.gatewayDefaultSkillset")},null,8,["modelValue","options","aria-label"])])]),e("div",{class:"gateway-folder-manager","aria-label":s(t)("components.settingsDialog.gatewayWorkingDirectories")},[e("div",Xc,[e("div",null,[e("h5",null,n(s(t)("components.settingsDialog.allowedFolders")),1),e("p",null,n(s(t)("components.settingsDialog.shownInCwdsAndPwdsUsersSwitch")),1)]),e("div",eu,[e("button",{type:"button",class:"settings-action-btn compact-action gateway-add-folder-btn",onClick:a[47]||(a[47]=i=>he.value=!0)},n(s(t)("components.settingsDialog.addFolder")),1)])]),$.value.length===0?(l(),c("div",tu,[e("strong",null,n(s(t)("components.settingsDialog.noGatewayFoldersConfigured")),1),e("span",null,n(s(t)("components.settingsDialog.gatewaysWillReportAnErrorUntilAt")),1)])):(l(),c("div",su,[(l(!0),c(oe,null,xe($.value,(i,ve)=>(l(),c("div",{key:i,class:"gateway-cwd-row"},[e("span",au,n(ve+1),1),A(s(ws),{size:18,weight:"bold",class:"gateway-cwd-icon","aria-hidden":"true"}),e("span",{class:"gateway-cwd-path",title:i},n(i),9,nu),e("button",{type:"button",class:"gateway-remove-cwd-btn","aria-label":s(t)("components.settingsDialog.removeGatewayFolder",{cwd:i}),onClick:Dt=>Ft(i)},n(s(t)("components.settingsDialog.remove")),9,ou)]))),128))]))],8,Qc)]),e("section",lu,[e("div",iu,[e("div",cu,[e("h4",uu,n(s(t)("components.settingsDialog.wecomApp")),1),e("p",null,n(s(t)("components.settingsDialog.connectWecomSelfBuiltApp")),1)]),e("div",ru,[e("span",{class:R(["wecom-status-badge",{paired:ge.value.configured}])},n(ge.value.configured?s(t)("components.settingsDialog.configured"):s(t)("components.settingsDialog.notConfigured")),3),ge.value.configured?(l(),c("button",{key:0,type:"button",class:"settings-action-btn compact-action wecom-test-action",disabled:Y.value,onClick:es},n(s(t)("components.settingsDialog.testConnection")),9,du)):b("",!0),ge.value.configured&&!_e.value?(l(),c("button",{key:1,type:"button",class:"settings-action-btn compact-action wecom-disconnect-action",disabled:Y.value,onClick:a[48]||(a[48]=i=>Je.value=!0)},n(s(t)("components.settingsDialog.disconnect")),9,gu)):b("",!0)])]),_e.value?(l(),c("p",pu,n(s(t)("components.settingsDialog.wecomManagedByEnvironment")),1)):b("",!0),e("div",vu,[e("label",mu,[y(n(s(t)("components.settingsDialog.wecomCorpId"))+" ",1),L(e("input",{"onUpdate:modelValue":a[49]||(a[49]=i=>Le.value=i),class:"settings-input wecom-corp-id",disabled:_e.value,autocomplete:"off"},null,8,hu),[[W,Le.value]])]),e("label",fu,[y(n(s(t)("components.settingsDialog.wecomAgentId"))+" ",1),L(e("input",{"onUpdate:modelValue":a[50]||(a[50]=i=>Ie.value=i),class:"settings-input wecom-agent-id",disabled:_e.value,inputmode:"numeric",autocomplete:"off"},null,8,yu),[[W,Ie.value]])]),e("label",bu,[y(n(s(t)("components.settingsDialog.wecomAppSecret"))+" ",1),L(e("input",{"onUpdate:modelValue":a[51]||(a[51]=i=>Ze.value=i),class:"settings-input wecom-corp-secret",disabled:_e.value,type:"password",placeholder:ge.value.configured?s(t)("components.settingsDialog.enterToReplaceSavedSecret"):"",autocomplete:"new-password"},null,8,wu),[[W,Ze.value]])]),e("label",ku,[y(n(s(t)("components.settingsDialog.wecomAllowedUsers"))+" ",1),L(e("input",{"onUpdate:modelValue":a[52]||(a[52]=i=>Ye.value=i),class:"settings-input wecom-allowed-users",disabled:_e.value,placeholder:s(t)("components.settingsDialog.wecomAllowedUsersPlaceholder"),autocomplete:"off"},null,8,Pu),[[W,Ye.value]])])]),_e.value?b("",!0):(l(),c("div",$u,[e("button",{type:"button",class:"settings-action-btn wecom-save-action",disabled:Y.value||!Le.value.trim()||!Ie.value.trim()||!Ze.value.trim(),onClick:Qt},n(Y.value?s(t)("components.settingsDialog.saving"):s(t)("components.settingsDialog.saveAndGenerateCallback")),9,_u),ge.value.configured?(l(),c("button",{key:0,type:"button",class:"settings-action-btn compact-action",disabled:Y.value,onClick:Xt},n(s(t)("components.settingsDialog.regenerateCallbackSecrets")),9,Au)):b("",!0)])),ge.value.configured?(l(),c("div",Su,[e("div",Du,[e("strong",null,n(s(t)("components.settingsDialog.wecomCallbackConfiguration")),1),e("span",null,n(ge.value.callbackVerified?s(t)("components.settingsDialog.callbackVerified"):s(t)("components.settingsDialog.waitingForCallbackVerification")),1)]),e("label",Cu,[y(n(s(t)("components.settingsDialog.callbackUrl"))+" ",1),e("span",Vu,[e("input",{value:ht.value,class:"settings-input wecom-callback-url",readonly:""},null,8,Zu),e("button",{type:"button",class:"settings-action-btn compact-action",onClick:a[53]||(a[53]=i=>lt(ht.value))},n(s(t)("components.settingsDialog.copy")),1)])]),ke.value?(l(),c("div",Mu,[e("p",null,n(s(t)("components.settingsDialog.copyCallbackSecretsNow")),1),e("div",null,[a[103]||(a[103]=e("strong",null,"Token",-1)),e("code",null,n(ke.value.callbackToken),1),e("button",{type:"button",class:"settings-action-btn compact-action",onClick:a[54]||(a[54]=i=>lt(ke.value.callbackToken))},n(s(t)("components.settingsDialog.copy")),1)]),e("div",null,[a[104]||(a[104]=e("strong",null,"EncodingAESKey",-1)),e("code",null,n(ke.value.encodingAesKey),1),e("button",{type:"button",class:"settings-action-btn compact-action",onClick:a[55]||(a[55]=i=>lt(ke.value.encodingAesKey))},n(s(t)("components.settingsDialog.copy")),1)])])):(l(),c("p",xu,n(s(t)("components.settingsDialog.wecomUseConfiguredCallbackSecrets")),1))])):b("",!0),pe.value?(l(),c("p",Hu,n(pe.value),1)):b("",!0),ie.value?(l(),c("p",Tu,n(ie.value),1)):b("",!0),e("p",Uu,n(s(t)("components.settingsDialog.wecomTextOnlyNotice")),1)]),e("section",Lu,[e("div",Iu,[e("div",Eu,[e("h4",Bu,n(s(t)("components.settingsDialog.wechatPairing")),1),e("p",null,n(s(t)("components.settingsDialog.pairATencentILinkWeChatBotAccount")),1)]),e("div",Wu,[et.value?(l(),c("button",{key:0,type:"button",class:"settings-action-btn weixin-unpair-action",disabled:Te.value||Ue.value,onClick:a[56]||(a[56]=i=>qe.value=!0)},n(Ue.value?s(t)("components.settingsDialog.unbinding"):s(t)("components.settingsDialog.unbind")),9,Ru)):b("",!0),e("button",{type:"button",class:"settings-action-btn weixin-pairing-action",disabled:Te.value||Ue.value,onClick:qt},n(Et.value),9,Gu)])]),e("div",{class:"weixin-status-panel","aria-label":s(t)("components.settingsDialog.wechatPairingStatus")},[e("div",zu,[e("span",{class:R(["weixin-status-badge",{paired:et.value}])},n(et.value?s(t)("components.settingsDialog.paired"):s(t)("components.settingsDialog.notPaired")),3),e("span",null,n(Rt.value),1)]),e("dl",Ku,[e("div",null,[e("dt",null,n(s(t)("components.settingsDialog.gateway")),1),e("dd",null,n(Bt.value),1)]),e("div",null,[e("dt",null,n(s(t)("components.settingsDialog.envFlag")),1),e("dd",null,n(Wt.value),1)])])],8,ju),e("p",Nu,n(s(t)(we.value.enabled?"components.settingsDialog.theGatewayStartsAutomaticallyAfterSuccessfulPairing":"components.settingsDialog.pairingSavesCredentialsEnablePICLOUD")),1),Ce.value?(l(),c("p",Fu,n(Ce.value),1)):b("",!0),q.value.qrDataUrl?(l(),c("div",Ou,[e("img",{src:q.value.qrDataUrl,alt:s(t)("components.settingsDialog.weChatPairingQrCode"),class:"weixin-qr-image"},null,8,qu),e("p",Yu,n(s(t)("components.settingsDialog.scanWithWeChatThenConfirmOnYour")),1)])):b("",!0)]),A(Mt,{visible:he.value,"initial-path":Ht.value,"client-id":v.clientId,title:s(t)("components.settingsDialog.addGatewayFolder"),"show-clone":!1,onClose:a[57]||(a[57]=i=>he.value=!1),onSelect:Nt},null,8,["visible","initial-path","client-id","title"])],64)):b("",!0),h.value==="reviewSources"?(l(),c("section",Ju,[e("div",Qu,[e("h4",Xu,n(s(t)("components.settingsDialog.reviewSources")),1),e("p",null,n(s(t)("components.settingsDialog.reviewSourcesHelp")),1)]),s(M)?(l(),c("div",er,n(s(t)("app.loading")),1)):s(E)?(l(),c("p",tr,n(s(E)),1)):(l(),c("div",sr,[(l(!0),c(oe,null,xe(s(I),i=>(l(),c("div",{key:i.id,class:"review-source-row"},[e("div",ar,[e("strong",null,n(i.label),1),e("small",null,n(i.dataPath),1)]),i.capabilities.canDeleteSource?(l(),c("button",{key:0,type:"button",class:"settings-action-btn compact-action",onClick:ve=>os(i.id)},n(s(t)("app.delete")),9,nr)):b("",!0)]))),128)),e("div",or,[A(Q,{id:"review-source-type-select",modelValue:re.value,"onUpdate:modelValue":[a[58]||(a[58]=i=>re.value=i),St],options:He.value,"aria-label":s(t)("components.settingsDialog.reviewSourceType")},null,8,["modelValue","options","aria-label"]),L(e("input",{"onUpdate:modelValue":a[59]||(a[59]=i=>O.value=i),class:"settings-input",placeholder:s(t)("components.settingsDialog.reviewSourceLabel")},null,8,lr),[[W,O.value]]),L(e("input",{"onUpdate:modelValue":a[60]||(a[60]=i=>z.value=i),class:"settings-input",placeholder:s(t)("components.settingsDialog.reviewSourcePath")},null,8,ir),[[W,z.value]]),e("button",{type:"button",class:"settings-action-btn",disabled:!O.value.trim()||!z.value.trim()||me.value,onClick:ns},n(me.value?s(t)("app.loading"):s(t)("components.settingsDialog.addReviewSource")),9,cr)]),le.value?(l(),c("p",ur,n(le.value),1)):b("",!0)]))])):b("",!0),h.value==="prompts"?(l(),We(Oi,{key:6,prompts:v.userPrompts,onCreatePrompt:ls,onUpdatePrompt:is,onDeletePrompt:a[61]||(a[61]=i=>H("deleteUserPrompt",i))},null,8,["prompts"])):b("",!0),h.value==="modelWindowKickoff"?(l(),We(Ci,{key:7,"client-id":v.clientId},null,8,["client-id"])):b("",!0),h.value==="security"?(l(),We(bl,{key:8,"totp-enabled":v.totpEnabled,embedded:"",onUpdated:a[62]||(a[62]=i=>H("updated"))},null,8,["totp-enabled"])):b("",!0),h.value==="skills"?(l(),We(El,{key:9,presets:v.skillPresets,"available-skills":v.availableSkills,onCreatePreset:a[63]||(a[63]=i=>H("createSkillPreset",i)),onUpdatePreset:a[64]||(a[64]=i=>H("updateSkillPreset",i)),onDeletePreset:a[65]||(a[65]=i=>H("deleteSkillPreset",i))},null,8,["presets","available-skills"])):b("",!0)])])])])):b("",!0)]),_:1})])),A(ut,{visible:qe.value,variant:"danger","confirm-text":s(t)("components.settingsDialog.unbind"),onConfirm:Yt,onCancel:a[66]||(a[66]=i=>qe.value=!1)},{title:Ae(()=>[y(n(s(t)("components.settingsDialog.unbindWechatAccount")),1)]),message:Ae(()=>[y(n(s(t)("components.settingsDialog.confirmUnbindWechat")),1)]),_:1},8,["visible","confirm-text"]),A(ut,{visible:Je.value,variant:"danger","confirm-text":s(t)("components.settingsDialog.disconnect"),onConfirm:ts,onCancel:a[67]||(a[67]=i=>Je.value=!1)},{title:Ae(()=>[y(n(s(t)("components.settingsDialog.disconnectWecomApp")),1)]),message:Ae(()=>[y(n(s(t)("components.settingsDialog.confirmDisconnectWecom")),1)]),_:1},8,["visible","confirm-text"])],64))}}),pr=Re(rr,[["__scopeId","data-v-02f816ec"]]);export{pr as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.security-panel[data-v-9a119603]{padding:1rem;overflow:auto;height:100%}.security-panel.embedded[data-v-9a119603]{padding:0}.security-header[data-v-9a119603]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.security-card[data-v-9a119603]{background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;padding:1rem;margin-bottom:1rem}.security-card-header[data-v-9a119603]{display:flex;align-items:center;justify-content:space-between;gap:1rem}.security-card h3[data-v-9a119603]{margin:0 0 .25rem}.audit-header[data-v-9a119603]{display:flex;align-items:center;justify-content:space-between;gap:1rem}.audit-header h3[data-v-9a119603]{margin-bottom:0}.clear-audit[data-v-9a119603]{border:1px solid var(--error);border-radius:var(--radius-md);padding:.4rem .75rem;color:var(--error);font-size:.75rem;font-weight:700}.clear-audit[data-v-9a119603]:hover:not(:disabled){color:#fff;background:var(--error)}.clear-audit[data-v-9a119603]:disabled{cursor:not-allowed;opacity:.45}.security-status[data-v-9a119603]{margin:0;color:var(--text-secondary)}.security-status strong[data-v-9a119603]{color:var(--text-primary)}.primary-action[data-v-9a119603],.danger-action[data-v-9a119603]{border:none;color:#fff;font-weight:600}.primary-action[data-v-9a119603]{background:var(--accent)}.primary-action[data-v-9a119603]:hover{background:var(--accent-hover)}.danger-action[data-v-9a119603]{background:var(--error)}.danger-action[data-v-9a119603]:hover{filter:brightness(.92)}.totp-setup[data-v-9a119603]{display:grid;gap:.75rem;max-width:360px;margin-top:1rem}.totp-setup img[data-v-9a119603]{width:180px;height:180px;background:#fff;padding:.5rem;border-radius:8px}.sensitive-action-form[data-v-9a119603]{display:grid;gap:.75rem}.sensitive-action-form p[data-v-9a119603]{margin:0}.sensitive-action-error[data-v-9a119603]{color:var(--error);font-size:.875rem}@media(max-width:640px){.security-card-header[data-v-9a119603]{align-items:flex-start;flex-direction:column}}.audit-table-wrap[data-v-9a119603]{overflow-x:auto}.audit-table[data-v-9a119603]{width:100%;min-width:600px;border-collapse:collapse;font-size:.875rem}.audit-table th[data-v-9a119603],.audit-table td[data-v-9a119603]{border-bottom:1px solid var(--border);padding:.75rem .5rem;text-align:left}.audit-table th[data-v-9a119603]{color:var(--text-secondary);font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.audit-table tbody tr:last-child td[data-v-9a119603]{border-bottom:0}.audit-empty[data-v-9a119603]{height:8rem;color:var(--text-secondary);text-align:center!important}.audit-empty-title[data-v-9a119603]{display:block;margin-bottom:.25rem;color:var(--text-primary);font-weight:650}.audit-event-cell[data-v-9a119603]{display:flex;align-items:center;gap:.5rem}.audit-count[data-v-9a119603]{color:var(--text-secondary);font-size:.75rem;font-weight:700}.audit-status[data-v-9a119603]{display:inline-flex;align-items:center;border-radius:var(--radius-full);padding:.25rem .625rem;font-size:.75rem;font-weight:700}.audit-status.success[data-v-9a119603]{color:var(--success);background:var(--success-muted)}.audit-status.failure[data-v-9a119603]{color:var(--error);background:var(--error-muted)}.audit-status.info[data-v-9a119603]{color:var(--accent);background:var(--accent-muted)}.audit-pagination[data-v-9a119603]{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:.875rem;color:var(--text-secondary);font-size:.875rem}.audit-page-actions[data-v-9a119603]{display:flex;align-items:center;gap:.75rem}.audit-page-indicator[data-v-9a119603]{color:var(--text-primary);font-weight:650;white-space:nowrap}.audit-page-actions button[data-v-9a119603]{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-primary)}.audit-page-actions button[data-v-9a119603]:disabled{cursor:not-allowed;opacity:.45}@media(max-width:640px){.audit-pagination[data-v-9a119603]{align-items:stretch;flex-direction:column-reverse;gap:.75rem}.audit-range[data-v-9a119603]{text-align:center}.audit-page-actions[data-v-9a119603]{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:.5rem;width:100%}.audit-page-actions button[data-v-9a119603]{justify-content:center;min-width:0;padding-inline:.625rem}.audit-page-indicator[data-v-9a119603]{align-self:center;padding:0 .25rem}}.skill-presets-panel[data-v-d93321dc]{min-height:0;display:grid;gap:1.5rem}.skill-presets-list-section[data-v-d93321dc],.skill-presets-form[data-v-d93321dc]{display:grid;gap:1rem}.preset-name-row[data-v-d93321dc]{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.75rem;align-items:stretch}.preset-name-input[data-v-d93321dc]{min-width:0}.preset-mode-row[data-v-d93321dc]{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.preset-mode-row label[data-v-d93321dc]{display:inline-flex;align-items:center;gap:.5rem}.preset-save-btn[data-v-d93321dc],.preset-cancel-btn[data-v-d93321dc]{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.preset-icon-btn[data-v-d93321dc]{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;align-self:start;padding:0;border:1px solid var(--border);border-radius:7px;color:var(--text-secondary);background:transparent;cursor:pointer;transition:color .12s ease,background .12s ease,transform .12s ease}.preset-icon-btn[data-v-d93321dc]:hover{color:var(--text-primary);background:var(--bg-tertiary)}.preset-icon-btn.danger[data-v-d93321dc]{color:var(--error-color, #ef4444)}@media(max-width:640px){.preset-name-row[data-v-d93321dc]{grid-template-columns:1fr}.preset-save-btn[data-v-d93321dc],.preset-cancel-btn[data-v-d93321dc]{width:100%}}.section-header h4[data-v-d93321dc]{margin:0;color:var(--text-primary)}.section-header p[data-v-d93321dc]{margin:.25rem 0 0;color:var(--text-secondary)}.skill-presets-list[data-v-d93321dc]{display:grid;gap:.75rem;max-height:14rem;overflow:auto;padding-right:.25rem}.preset-card[data-v-d93321dc]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.875rem 1rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.preset-card-actions[data-v-d93321dc]{display:inline-flex;gap:.5rem;align-items:center}.preset-card-copy[data-v-d93321dc]{min-width:0}.preset-card-header[data-v-d93321dc]{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.preset-mode-badge[data-v-d93321dc]{color:var(--text-secondary);font-size:.8125rem}.preset-skills-summary[data-v-d93321dc]{margin:.375rem 0 0;color:var(--text-secondary);word-break:break-word}.empty-presets[data-v-d93321dc]{margin:0;color:var(--text-secondary)}.kickoff-panel[data-v-394cb0f4]{display:grid;gap:1rem;padding-bottom:.25rem}.notification-card[data-v-394cb0f4],.kickoff-card[data-v-394cb0f4]{border:1px solid var(--border);border-radius:12px;background:var(--bg-secondary)}.notification-card[data-v-394cb0f4]{display:grid;gap:1rem;padding:1.1rem 1.2rem}.section-heading[data-v-394cb0f4],.card-heading[data-v-394cb0f4],.card-actions[data-v-394cb0f4],.notification-actions[data-v-394cb0f4]{display:flex;align-items:center}.section-heading[data-v-394cb0f4]{gap:.75rem}.section-heading h4[data-v-394cb0f4],.section-heading p[data-v-394cb0f4]{margin:0}.section-heading h4[data-v-394cb0f4]{font-size:.95rem}.section-heading p[data-v-394cb0f4]{margin-top:.2rem;color:var(--text-secondary);font-size:.8rem}.section-icon[data-v-394cb0f4]{display:grid;flex:0 0 auto;width:2.25rem;height:2.25rem;place-items:center;color:var(--accent);border-radius:9px;background:color-mix(in srgb,var(--accent) 13%,transparent)}.notification-actions[data-v-394cb0f4]{justify-content:flex-end;gap:.6rem}.kickoff-card[data-v-394cb0f4]{overflow:hidden}.card-heading[data-v-394cb0f4]{justify-content:space-between;gap:1rem;padding:1rem 1.2rem;border-bottom:1px solid var(--border)}.model-heading[data-v-394cb0f4]{display:flex;min-width:0;align-items:baseline;gap:.5rem}.model-label[data-v-394cb0f4]{color:var(--text-secondary);font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.model-heading strong[data-v-394cb0f4]{overflow:hidden;font-size:1rem;text-overflow:ellipsis;white-space:nowrap}.provider-name[data-v-394cb0f4]{flex:0 0 auto;padding:.2rem .45rem;color:var(--text-secondary);border:1px solid var(--border);border-radius:999px;font-size:.7rem}.field-grid[data-v-394cb0f4]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1rem}.kickoff-card>.field-grid[data-v-394cb0f4]{padding:1.2rem}.field[data-v-394cb0f4]{display:grid;min-width:0;gap:.4rem;color:var(--text-secondary);font-size:.78rem;font-weight:500}.field input[data-v-394cb0f4],.field textarea[data-v-394cb0f4]{width:100%;box-sizing:border-box;padding:.65rem .75rem;color:var(--text-primary);outline:none;background:var(--bg-primary);border:1px solid var(--border);border-radius:7px;font:inherit;font-size:.86rem;font-weight:400;transition:border-color .15s,box-shadow .15s}.field input[data-v-394cb0f4]:focus,.field textarea[data-v-394cb0f4]:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.field textarea[data-v-394cb0f4]{min-height:5rem;resize:vertical}.prompt-field[data-v-394cb0f4]{grid-column:1 / -1}.path-picker-field[data-v-394cb0f4]{display:flex;min-width:0}.path-picker-field input[data-v-394cb0f4]{min-width:0;border-radius:7px 0 0 7px;cursor:default}.path-picker-button[data-v-394cb0f4]{display:grid;flex:0 0 2.6rem;place-items:center;color:var(--text-secondary);background:var(--bg-primary);border:1px solid var(--border);border-left:0;border-radius:0 7px 7px 0;cursor:pointer}.path-picker-button[data-v-394cb0f4]:hover{color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--bg-primary))}.enabled-switch[data-v-394cb0f4]{display:flex;flex:0 0 auto;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.8rem;cursor:pointer}.enabled-switch input[data-v-394cb0f4]{position:absolute;width:1px;height:1px;opacity:0}.switch-track[data-v-394cb0f4]{position:relative;width:2rem;height:1.1rem;border-radius:999px;background:var(--border);transition:background .15s}.switch-track[data-v-394cb0f4]:after{position:absolute;top:2px;left:2px;width:.85rem;height:.85rem;content:"";border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .15s}.enabled-switch input:checked+.switch-track[data-v-394cb0f4]{background:var(--accent)}.enabled-switch input:checked+.switch-track[data-v-394cb0f4]:after{transform:translate(.9rem)}.enabled-switch input:focus-visible+.switch-track[data-v-394cb0f4]{outline:2px solid var(--accent);outline-offset:2px}.status-grid[data-v-394cb0f4]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0 1.2rem 1.2rem;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:var(--border)}.status-grid>div[data-v-394cb0f4]{display:grid;min-width:0;gap:.2rem;padding:.65rem .75rem;background:var(--bg-primary)}.status-grid span[data-v-394cb0f4]{color:var(--text-secondary);font-size:.68rem}.status-grid strong[data-v-394cb0f4]{overflow:hidden;color:var(--text-primary);font-size:.75rem;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.status-grid .status-error[data-v-394cb0f4]{grid-column:1 / -1}.status-error strong[data-v-394cb0f4],.error-message[data-v-394cb0f4]{color:var(--error)}.error-message[data-v-394cb0f4]{margin:0;padding:.7rem .85rem;border:1px solid color-mix(in srgb,var(--error) 35%,transparent);border-radius:8px;background:color-mix(in srgb,var(--error) 8%,transparent);font-size:.8rem}.card-actions[data-v-394cb0f4]{justify-content:flex-end;gap:.6rem;padding:.8rem 1.2rem;border-top:1px solid var(--border)}.save-success[data-v-394cb0f4]{margin-right:auto;color:var(--success);font-size:.82rem}.button[data-v-394cb0f4],.add-button[data-v-394cb0f4]{display:inline-flex;width:auto;align-items:center;justify-content:center;gap:.4rem;padding:.55rem .85rem;border-radius:7px;font-size:.8rem;font-weight:600;cursor:pointer}.button[data-v-394cb0f4]{border:1px solid transparent}.button.primary[data-v-394cb0f4]{color:#fff;background:var(--accent)}.button.secondary[data-v-394cb0f4]{color:var(--text-primary);background:var(--bg-primary);border-color:var(--border)}.button.danger[data-v-394cb0f4]{color:var(--error);background:transparent;border-color:color-mix(in srgb,var(--error) 35%,var(--border))}.button[data-v-394cb0f4]:hover:not(:disabled),.add-button[data-v-394cb0f4]:hover:not(:disabled){filter:brightness(1.08)}.button[data-v-394cb0f4]:disabled,.add-button[data-v-394cb0f4]:disabled{cursor:not-allowed;opacity:.5}.add-button[data-v-394cb0f4]{min-height:3rem;color:var(--accent);background:color-mix(in srgb,var(--accent) 5%,transparent);border:1px dashed color-mix(in srgb,var(--accent) 50%,var(--border))}.add-button[data-v-394cb0f4]:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 10%,transparent)}@media(max-width:700px){.field-grid[data-v-394cb0f4],.status-grid[data-v-394cb0f4]{grid-template-columns:1fr}.status-grid[data-v-394cb0f4]{gap:1px}.card-heading[data-v-394cb0f4]{align-items:flex-start}.model-heading[data-v-394cb0f4]{flex-wrap:wrap}.model-label[data-v-394cb0f4]{width:100%}}.user-prompts-panel[data-v-4fe83f9c]{min-height:0;display:grid;gap:1.5rem}h4[data-v-4fe83f9c]{margin:0;color:var(--text-primary)}.section-header p[data-v-4fe83f9c],.empty-prompts[data-v-4fe83f9c]{margin:.25rem 0 0;color:var(--text-secondary)}.user-prompts-list[data-v-4fe83f9c]{display:grid;gap:.75rem;max-height:15rem;overflow:auto;padding-right:.25rem}.user-prompt-card[data-v-4fe83f9c]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);transition:border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.user-prompt-card[data-v-4fe83f9c]:hover{border-color:color-mix(in srgb,var(--border) 65%,var(--accent));background:var(--bg-elevated)}.user-prompt-copy[data-v-4fe83f9c]{min-width:0}.user-prompt-heading[data-v-4fe83f9c]{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .75rem}.user-prompt-copy strong[data-v-4fe83f9c]{color:var(--text-primary);line-height:1.4}.user-prompt-heading time[data-v-4fe83f9c]{color:var(--text-muted);font-size:.75rem;white-space:nowrap}.user-prompt-copy p[data-v-4fe83f9c]{display:-webkit-box;margin:.4rem 0 0;overflow:hidden;color:var(--text-secondary);line-height:1.55;overflow-wrap:anywhere;white-space:pre-wrap;-webkit-box-orient:vertical;-webkit-line-clamp:3}.user-prompt-actions[data-v-4fe83f9c]{display:flex;flex:0 0 auto;gap:.5rem}.user-prompt-actions button[data-v-4fe83f9c]{display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid var(--border);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);cursor:pointer;transition:color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.user-prompt-actions button[data-v-4fe83f9c]:hover{color:var(--text-primary);background:var(--bg-tertiary);border-color:color-mix(in srgb,var(--border) 65%,var(--accent))}.user-prompt-actions button.danger[data-v-4fe83f9c]{color:var(--error-color, #ef4444)}.user-prompt-form[data-v-4fe83f9c]{display:grid;gap:1rem;padding-top:1.5rem;border-top:1px solid var(--border)}.form-field[data-v-4fe83f9c]{display:grid;gap:.5rem;color:var(--text-secondary);font-size:.8125rem;font-weight:600}.form-field input[data-v-4fe83f9c],.form-field textarea[data-v-4fe83f9c]{width:100%;box-sizing:border-box;color:var(--text-primary);font-size:.9375rem;font-weight:400}.form-field textarea[data-v-4fe83f9c]{min-height:10rem;resize:vertical;line-height:1.5}.save-error[data-v-4fe83f9c]{margin:0;color:var(--error-color, #ef4444);font-size:.8125rem}.form-actions[data-v-4fe83f9c]{display:flex;justify-content:flex-end;gap:.75rem}.prompt-action-button[data-v-4fe83f9c]{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;box-sizing:border-box;min-width:5.5rem;min-height:36px;padding:.5rem .875rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);font-size:.875rem;font-weight:600}.prompt-action-button[data-v-4fe83f9c]:hover:not(:disabled){background:var(--bg-elevated)}.prompt-action-button.save-button[data-v-4fe83f9c]{color:#fff;background:var(--accent);border-color:transparent}.prompt-action-button.save-button[data-v-4fe83f9c]:hover:not(:disabled){filter:brightness(1.08)}.prompt-action-button[data-v-4fe83f9c]:disabled{cursor:not-allowed;opacity:.55}@media(max-width:640px){.user-prompt-card[data-v-4fe83f9c]{gap:.75rem}.form-actions[data-v-4fe83f9c]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.form-actions .save-button[data-v-4fe83f9c]:only-child{grid-column:2}}.commit-prompt-settings[data-v-02f816ec],.change-reason-prompt-settings[data-v-02f816ec]{align-items:stretch;flex-direction:column}.commit-prompt-grid[data-v-02f816ec]{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr));gap:1rem;width:100%}.commit-prompt-scope[data-v-02f816ec]{display:grid;align-content:start;gap:.875rem;min-width:0;margin:0;padding:1rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md)}.commit-prompt-scope legend[data-v-02f816ec]{max-width:calc(100% - 1rem);padding:0 .35rem;color:var(--text-primary);font-weight:600;line-height:1.4}.commit-prompt-project-name[data-v-02f816ec]{color:var(--text-secondary);font-size:.8rem;font-weight:400}.commit-prompt-scope .settings-action-btn[data-v-02f816ec]{justify-self:end}.commit-prompt-textarea[data-v-02f816ec],.change-reason-prompt-textarea[data-v-02f816ec]{min-height:11rem;line-height:1.45;resize:vertical}.settings-backdrop[data-v-02f816ec]{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#00000094;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.settings-dialog[data-v-02f816ec]{width:min(980px,calc(100vw - 2rem));height:min(720px,calc(100vh - 2rem));min-height:0;display:grid;grid-template-columns:220px minmax(0,1fr);overflow:hidden;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl)}.settings-sidebar[data-v-02f816ec]{min-height:0;overflow:auto;padding:1.25rem;background:var(--bg-secondary);border-right:1px solid var(--border)}.settings-sidebar h2[data-v-02f816ec]{margin:0 0 1.25rem;color:var(--text-primary);font-size:1.125rem}.settings-menu[data-v-02f816ec]{display:grid;gap:.5rem}.settings-menu-item[data-v-02f816ec]{display:flex;align-items:center;gap:.625rem;width:100%;padding:.75rem;color:var(--text-secondary);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);text-align:left;transition:color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.settings-menu-item[data-v-02f816ec]:hover{color:var(--text-primary);background:var(--bg-surface)}.settings-menu-item.active[data-v-02f816ec]{color:var(--text-primary);background:var(--bg-surface);border-color:var(--border)}.settings-menu-icon[data-v-02f816ec]{flex:0 0 auto;color:inherit}.settings-body[data-v-02f816ec]{min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-primary)}.settings-body-header[data-v-02f816ec]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.5rem 1.5rem 1rem;border-bottom:1px solid var(--border)}.settings-body-header h3[data-v-02f816ec]{margin:0;color:var(--text-primary);font-size:1.25rem}.settings-content[data-v-02f816ec]{min-height:0;flex:1;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;padding:1.5rem}.settings-card[data-v-02f816ec]{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:1rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg)}.settings-card-copy h4[data-v-02f816ec]{margin:0 0 .375rem;color:var(--text-primary);font-size:1rem}.settings-card-copy p[data-v-02f816ec]:last-child{margin:0;color:var(--text-secondary);font-size:.875rem;line-height:1.45}.settings-switch[data-v-02f816ec]{display:inline-flex;align-items:center;gap:.625rem;color:var(--text-secondary);font-size:.875rem;cursor:pointer}.settings-switch input[data-v-02f816ec]{position:absolute;opacity:0;pointer-events:none}.settings-switch-track[data-v-02f816ec]{position:relative;width:2.75rem;height:1.5rem;flex:0 0 auto;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-full);transition:background var(--duration-normal) var(--ease-out),border-color var(--duration-normal) var(--ease-out)}.settings-switch-track[data-v-02f816ec]:after{content:"";position:absolute;top:.1875rem;left:.1875rem;width:1rem;height:1rem;background:var(--text-secondary);border-radius:50%;transition:transform var(--duration-normal) var(--ease-out),background var(--duration-normal) var(--ease-out)}.settings-switch input:checked+.settings-switch-track[data-v-02f816ec]{background:color-mix(in srgb,var(--accent) 30%,var(--bg-surface));border-color:var(--accent)}.settings-switch input:checked+.settings-switch-track[data-v-02f816ec]:after{transform:translate(1.25rem);background:var(--accent)}.settings-switch input:focus-visible+.settings-switch-track[data-v-02f816ec]{outline:2px solid var(--accent);outline-offset:2px}.settings-select-label[data-v-02f816ec]{min-width:min(22rem,100%)}:where(.theme-settings) .settings-select-label[data-v-02f816ec]{min-width:0;width:min(10rem,100%)}.keyboard-shortcut-select-label[data-v-02f816ec]{min-width:0;width:min(14rem,100%)}.settings-inline-control[data-v-02f816ec]{display:flex;align-items:center;gap:.75rem;flex-wrap:nowrap}.sound-notification-control .settings-select-label[data-v-02f816ec]{min-width:12rem}.settings-select[data-v-02f816ec]{width:100%;padding:.65rem .8rem;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.settings-select[data-v-02f816ec]:hover{background:var(--bg-elevated);border-color:color-mix(in srgb,var(--border) 60%,var(--accent))}.settings-select[data-v-02f816ec]:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted)}.settings-select option[data-v-02f816ec]{color:var(--text-primary);background:var(--bg-surface)}.settings-action-btn[data-v-02f816ec]{flex:0 0 auto;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border);cursor:pointer}.settings-action-btn[data-v-02f816ec]:hover:not(:disabled){background:var(--bg-elevated)}.settings-action-btn[data-v-02f816ec]:disabled{cursor:not-allowed;opacity:.55}.settings-icon-btn[data-v-02f816ec]{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;flex:0 0 auto;color:var(--text-secondary);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.settings-icon-btn[data-v-02f816ec]:hover:not(:disabled){color:var(--text-primary);background:var(--bg-elevated);border-color:color-mix(in srgb,var(--border) 60%,var(--accent))}.settings-icon-btn[data-v-02f816ec]:active:not(:disabled){transform:scale(.94)}.settings-icon-btn[data-v-02f816ec]:disabled{cursor:not-allowed;opacity:.55}.git-settings[data-v-02f816ec]{align-items:stretch;flex-direction:column}.git-settings-header[data-v-02f816ec]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;width:100%}.git-settings-header .settings-card-copy[data-v-02f816ec]{min-width:0}.git-settings-summary[data-v-02f816ec]{margin-top:.5rem}.settings-save-btn[data-v-02f816ec]{min-width:8.5rem;border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.settings-save-btn.saved[data-v-02f816ec]{color:var(--success);border-color:color-mix(in srgb,var(--success) 50%,var(--border));background:color-mix(in srgb,var(--success) 12%,var(--bg-surface));box-shadow:0 0 0 4px color-mix(in srgb,var(--success) 12%,transparent)}.git-save-success[data-v-02f816ec]{margin:-.25rem 0 0;padding:.65rem .8rem;color:var(--success);background:color-mix(in srgb,var(--success) 10%,var(--bg-surface));border:1px solid color-mix(in srgb,var(--success) 35%,var(--border));border-radius:var(--radius-md);font-size:.85rem}.git-settings-grid[data-v-02f816ec]{display:grid;grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));gap:1rem;width:100%}.git-clone-root-field[data-v-02f816ec]{width:100%}.git-clone-root-row[data-v-02f816ec]{display:flex;gap:.5rem}.git-clone-root-row .settings-input[data-v-02f816ec]{flex:1 1 auto}.git-clone-root-row .settings-action-btn[data-v-02f816ec]{flex:0 0 auto}.git-provider-card[data-v-02f816ec]{display:grid;gap:.75rem;padding:1rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md)}.git-provider-heading[data-v-02f816ec]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:var(--text-primary)}.git-provider-status[data-v-02f816ec]{flex:0 0 auto;padding:.2rem .5rem;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-full);font-size:.75rem}.git-provider-status.configured[data-v-02f816ec]{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--bg-surface))}.git-settings-field[data-v-02f816ec]{display:grid;gap:.35rem;color:var(--text-secondary);font-size:.85rem}.settings-input[data-v-02f816ec]{width:100%;padding:.65rem .8rem;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md)}.gateway-settings[data-v-02f816ec]{align-items:stretch;flex-direction:column}.gateway-settings-header[data-v-02f816ec]{gap:1rem}.gateway-defaults-grid[data-v-02f816ec]{display:grid;grid-template-columns:repeat(2,minmax(16rem,28rem));justify-content:start;gap:.75rem 1.5rem}.gateway-default-field[data-v-02f816ec]{max-width:28rem}.gateway-default-note[data-v-02f816ec]{margin:-.25rem 0 0}.gateway-folder-manager[data-v-02f816ec]{display:grid;gap:.75rem}.gateway-folder-toolbar[data-v-02f816ec]{display:flex;align-items:center;justify-content:space-between;gap:1rem}.gateway-folder-toolbar h5[data-v-02f816ec]{margin:0 0 .25rem;color:var(--text-primary);font-size:.95rem}.gateway-folder-toolbar p[data-v-02f816ec]{margin:0;color:var(--text-secondary);font-size:.82rem;line-height:1.4}.gateway-folder-actions[data-v-02f816ec]{display:inline-flex;align-items:center;gap:.5rem;flex:0 0 auto}.gateway-empty-state[data-v-02f816ec]{display:grid;gap:.35rem;padding:1rem;color:var(--text-secondary);background:var(--bg-surface);border:1px dashed var(--border);border-radius:var(--radius-md);font-size:.875rem}.gateway-empty-state strong[data-v-02f816ec]{color:var(--text-primary)}.gateway-cwd-list[data-v-02f816ec]{display:grid;gap:.5rem}.gateway-cwd-row[data-v-02f816ec]{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:.6rem;padding:.55rem .6rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md)}.gateway-cwd-index[data-v-02f816ec]{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;color:var(--accent);background:var(--accent-muted);border-radius:var(--radius-full);font-size:.75rem;font-weight:700}.gateway-cwd-icon[data-v-02f816ec]{color:var(--text-secondary)}.gateway-cwd-path[data-v-02f816ec]{min-width:0;overflow-wrap:anywhere;color:var(--text-primary);font-family:var(--font-mono, monospace);font-size:.82rem;line-height:1.3;white-space:normal}.gateway-remove-cwd-btn[data-v-02f816ec]{padding:.35rem .55rem;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer}.gateway-remove-cwd-btn[data-v-02f816ec]:hover{color:var(--error);border-color:color-mix(in srgb,var(--error) 45%,var(--border))}.gateway-add-folder-btn[data-v-02f816ec]{white-space:nowrap}.wecom-settings[data-v-02f816ec]{gap:.9rem}.wecom-header[data-v-02f816ec],.wecom-actions[data-v-02f816ec],.wecom-copy-row[data-v-02f816ec],.wecom-callback-heading[data-v-02f816ec]{display:flex;align-items:center;gap:.6rem}.wecom-header[data-v-02f816ec],.wecom-callback-heading[data-v-02f816ec]{justify-content:space-between}.wecom-header[data-v-02f816ec]{align-items:flex-start}.wecom-actions[data-v-02f816ec]{flex-wrap:wrap}.wecom-form-grid[data-v-02f816ec]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem}.wecom-callback-panel[data-v-02f816ec]{display:grid;gap:.75rem;padding:.85rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md)}.wecom-callback-heading span[data-v-02f816ec]{color:var(--text-secondary);font-size:.8rem}.wecom-copy-row input[data-v-02f816ec]{min-width:0}.wecom-copy-row .settings-action-btn[data-v-02f816ec]{flex:0 0 auto}.wecom-generated-secrets[data-v-02f816ec]{display:grid;gap:.55rem;padding:.75rem;background:var(--bg-secondary);border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:var(--radius-md)}.wecom-generated-secrets p[data-v-02f816ec]{margin:0;color:var(--text-secondary);font-size:.82rem}.wecom-generated-secrets div[data-v-02f816ec]{display:grid;grid-template-columns:8rem minmax(0,1fr) auto;align-items:center;gap:.6rem}.wecom-generated-secrets code[data-v-02f816ec]{min-width:0;overflow-wrap:anywhere;color:var(--text-primary)}.weixin-pairing-settings[data-v-02f816ec]{gap:.9rem}.weixin-pairing-header[data-v-02f816ec]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.weixin-pairing-actions[data-v-02f816ec]{display:flex;flex:0 0 auto;gap:.5rem}.weixin-pairing-action[data-v-02f816ec]{flex:0 0 auto}.weixin-status-panel[data-v-02f816ec]{display:grid;gap:.75rem;padding:.85rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md)}.weixin-status-primary[data-v-02f816ec]{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;color:var(--text-primary)}.weixin-status-badge[data-v-02f816ec],.wecom-status-badge[data-v-02f816ec]{display:inline-flex;align-items:center;padding:.2rem .55rem;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-full);font-size:.75rem;font-weight:700}.weixin-status-badge.paired[data-v-02f816ec],.wecom-status-badge.paired[data-v-02f816ec]{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--bg-surface))}.weixin-status-details[data-v-02f816ec]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0}.weixin-status-details div[data-v-02f816ec]{display:grid;gap:.2rem}.weixin-status-details dt[data-v-02f816ec]{color:var(--text-secondary);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.weixin-status-details dd[data-v-02f816ec]{margin:0;color:var(--text-primary);font-size:.9rem}.weixin-qr-panel[data-v-02f816ec]{display:grid;justify-items:start;gap:.5rem}.weixin-qr-image[data-v-02f816ec]{width:180px;height:180px;padding:.5rem;background:#fff;border-radius:var(--radius-md)}.settings-error-text[data-v-02f816ec]{margin:0;color:var(--error);font-size:.875rem}.settings-inline-actions[data-v-02f816ec]{display:flex;flex-wrap:wrap;gap:.5rem}.git-proxy-check-button[data-v-02f816ec]{display:inline-flex;align-items:center;gap:.45rem}.git-check-ok[data-v-02f816ec]{color:var(--success);font-weight:700}.git-check-failed[data-v-02f816ec]{color:var(--error);font-weight:700}.settings-inline-note[data-v-02f816ec]{margin:0;color:var(--text-secondary);font-size:.85rem}.keyboard-shortcuts-card[data-v-02f816ec]{align-items:flex-start}.keyboard-shortcuts-copy[data-v-02f816ec]{width:100%}.keyboard-shortcut-list[data-v-02f816ec]{display:grid;gap:.625rem;margin:1rem 0 0}.keyboard-shortcut-list div[data-v-02f816ec]{display:grid;grid-template-columns:minmax(8rem,max-content) 1fr;align-items:center;gap:1rem}.keyboard-shortcut-list dt[data-v-02f816ec],.keyboard-shortcut-list dd[data-v-02f816ec]{margin:0}.keyboard-shortcut-list dt[data-v-02f816ec]{display:inline-flex;align-items:center;gap:.35rem;color:var(--text-tertiary);font-size:.8125rem}.keyboard-shortcut-list dd[data-v-02f816ec]{color:var(--text-secondary);font-size:.875rem}.keyboard-shortcut-list kbd[data-v-02f816ec]{display:inline-flex;align-items:center;justify-content:center;min-width:1.65rem;padding:.18rem .45rem;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border);border-bottom-color:var(--border-subtle);border-radius:var(--radius-sm);font-family:inherit;font-size:.75rem;font-weight:600;box-shadow:inset 0 -1px #0000002e}.sr-only[data-v-02f816ec]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.settings-modal-enter-active[data-v-02f816ec],.settings-modal-leave-active[data-v-02f816ec]{transition:opacity .18s ease}.settings-modal-enter-from[data-v-02f816ec],.settings-modal-leave-to[data-v-02f816ec]{opacity:0}@media(max-width:760px){.commit-prompt-grid[data-v-02f816ec]{grid-template-columns:1fr}.settings-backdrop[data-v-02f816ec]{padding:.5rem}.settings-dialog[data-v-02f816ec]{width:calc(100vw - 1rem);grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);height:min(760px,calc(100vh - 1rem))}.settings-sidebar[data-v-02f816ec]{padding:.75rem;overflow:hidden;border-right:none;border-bottom:1px solid var(--border)}.settings-sidebar h2[data-v-02f816ec]{margin-bottom:.625rem;font-size:1rem}.settings-menu[data-v-02f816ec]{display:flex;gap:.375rem;overflow-x:auto;padding-bottom:.125rem;scrollbar-width:none}.settings-menu[data-v-02f816ec]::-webkit-scrollbar{display:none}.settings-menu-item[data-v-02f816ec]{flex:0 0 auto;width:auto;padding:.55rem .7rem;white-space:nowrap}.settings-body-header[data-v-02f816ec],.settings-content[data-v-02f816ec]{padding:1rem}.settings-card[data-v-02f816ec]{align-items:stretch;flex-direction:column}.settings-select-label[data-v-02f816ec]{min-width:0;width:100%}.gateway-defaults-grid[data-v-02f816ec]{grid-template-columns:1fr}.gateway-folder-toolbar[data-v-02f816ec],.gateway-folder-actions[data-v-02f816ec]{align-items:stretch;flex-direction:column}.gateway-cwd-row[data-v-02f816ec]{grid-template-columns:auto auto minmax(0,1fr)}.gateway-remove-cwd-btn[data-v-02f816ec]{grid-column:3;justify-self:start}.weixin-pairing-header[data-v-02f816ec],.wecom-header[data-v-02f816ec],.wecom-callback-heading[data-v-02f816ec]{align-items:stretch;flex-direction:column}.wecom-form-grid[data-v-02f816ec]{grid-template-columns:1fr}.wecom-generated-secrets div[data-v-02f816ec]{grid-template-columns:1fr auto}.wecom-generated-secrets code[data-v-02f816ec]{grid-column:1 / -1;grid-row:2}.weixin-pairing-actions[data-v-02f816ec]{flex-wrap:wrap}.weixin-status-details[data-v-02f816ec]{grid-template-columns:1fr}}.review-sources-settings[data-v-02f816ec]{display:flex;flex-direction:column;gap:1rem}.review-source-row[data-v-02f816ec]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--border)}.review-source-info[data-v-02f816ec]{display:flex;flex-direction:column;min-width:0}.review-source-info small[data-v-02f816ec]{color:var(--text-secondary);font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-source-form[data-v-02f816ec]{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.review-source-form input[data-v-02f816ec]{flex:1 1 200px}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a9 as Re,E as c,aa as Qe,d as Ge,f as ge,w as ye,W as Pe,ab as qe,ac as ue,ad as he,o as p,c as v,q as Me,j as we,k as D,a7 as Ze,X as de,e as o,t as i,u as e,ae as et,x as tt,a1 as Ne,z as pe,V as ve,S as He,af as at,a as I,T as st,ag as ot,b as fe,ah as nt,_ as Xe,L as lt,v as N,s as We,ai as it,a4 as rt,a6 as ct,l as ne,aj as ut,ak as dt,al as Be,n as pt,a8 as vt,am as ft}from"./index-BEdzBcRP.js";function mt(P){const H=c([]),X=c("project"),t=c("waiting"),d=c(!1),T=c(""),M=c(null);let y="";async function h(k=y){y=k,d.value=!0,T.value="";try{const g=new URLSearchParams({scope:X.value,status:t.value});X.value==="project"&&k&&g.set("projectPath",k);const A=await Re(`/api/tasks?${g.toString()}`,{fallbackMessage:"Task request failed"});H.value=A.tasks||[]}catch(g){T.value=Ae(g),H.value=[]}finally{d.value=!1}}async function W(k){return(await S("/api/tasks","POST",k)).task}async function m(k,g){return(await S(`/api/tasks/${encodeURIComponent(k)}`,"PUT",g)).task}async function x(k){await S(`/api/tasks/${encodeURIComponent(k)}`,"DELETE")}async function L(k){return(await S(`/api/tasks/${encodeURIComponent(k)}/complete`,"POST")).task}async function U(k){M.value=k,T.value="";try{const g=await Re(`/api/tasks/${encodeURIComponent(k)}/start`,{method:"POST",body:{clientId:P},fallbackMessage:"Task request failed"});return B(),await h(y),g}catch(g){throw T.value=Ae(g),g}finally{M.value=null}}async function S(k,g,A){T.value="";try{const $=await Re(k,{method:g,body:A,fallbackMessage:"Task request failed"});return B(),await h(y),$}catch($){throw T.value=Ae($),$}}function B(){window.dispatchEvent(new Event("refresh-tasks"))}return{tasks:H,scope:X,status:t,loading:d,error:T,startingTaskId:M,load:h,create:W,update:m,remove:x,start:U,complete:L}}function Ae(P){return Qe(P,"Task request failed")}const kt={key:0,class:"task-editor-backdrop"},bt={class:"task-editor-dialog",role:"dialog","aria-modal":"true","aria-labelledby":"task-editor-title"},ht={class:"task-editor-header"},gt={id:"task-editor-title"},yt={class:"task-editor-grid"},Pt={class:"task-content-fields"},wt={for:"task-project"},It={class:"project-control"},xt={for:"task-title"},_t={class:"task-prompt-row"},Tt={for:"task-prompt"},Et=["disabled","title"],St={for:"task-notes"},$t={class:"task-editor-actions"},Ct=["disabled"],jt={class:"task-launch-fields"},Dt={for:"task-profile"},Rt={key:0,class:"task-resource-state"},At={key:0,class:"task-editor-error","aria-live":"polite"},Mt="pi-cloud.newSessionOptions",Lt=Ge({__name:"TaskEditorDialog",props:{visible:{type:Boolean},clientId:{},currentProjectPath:{},selectedAgentProfileId:{},presets:{},task:{default:null},saving:{type:Boolean,default:!1}},emits:["close","save"],setup(P,{expose:H,emit:X}){const t=ge.global.t,d=P,T=X,M=c(null),y=c(""),h=c(""),W=c(""),m=c(""),x=c(""),L=c([]),U=c([]),S=c([]),B=c([]),k=c([]),g=c([]),A=c(""),$=c(!1),R=c(""),w=c(qe()),V=c(!1),O=c(!1),f=c(""),E=c(!1),_=c(!1);let Q=0,z=!1,q=!1;const Y=fe(()=>L.value.map(a=>({value:a,label:a}))),J=fe(()=>U.value.map(a=>({value:a.id,label:a.label}))),Z=fe(()=>d.saving||O.value||!y.value.trim()||!h.value.trim()||!m.value||!x.value||!V.value);ye(()=>d.visible,a=>{if(a){if(q){q=!1,Pe(()=>M.value?.focus());return}le()}},{immediate:!0}),ye(x,(a,s)=>{z||!d.visible||!a||!s||a===s||(w.value={...w.value,modelProvider:"",modelId:""},te())}),ye(m,(a,s)=>{z||!d.visible||!a||!s||a===s||te()});async function le(){await ee(),await Pe(),M.value?.focus()}async function ee(){z=!0,f.value="",y.value=d.task?.title||"",h.value=d.task?.prompt||"",W.value=d.task?.notes||"",m.value=d.task?.projectPath||d.currentProjectPath,w.value=d.task?Se(d.task):qe();try{const[a,s]=await Promise.all([Ie(),me()]);L.value=Array.from(new Set([m.value,...a].filter(Boolean))),U.value=s,x.value=be(),await Pe(),z=!1,await te()}catch(a){z=!1,f.value=ae(a)}}async function Ie(){return ue(he(["project-paths",d.clientId]),async()=>{const a=await fetch(`/api/sessions/project-paths?clientId=${encodeURIComponent(d.clientId)}`);if(a.ok===!1)throw new Error(t("components.taskEditorDialog.failedToLoadProjectPaths"));const s=await a.json();return Array.isArray(s.projectPaths)?s.projectPaths:[]})}async function me(){return ue("agent-profiles",async()=>{const a=await fetch("/api/sessions/agent-profiles");if(a.ok===!1)throw new Error(t("components.taskEditorDialog.failedToLoadAgentProfiles"));const s=await a.json();return Array.isArray(s.profiles)?s.profiles:[]})}async function ke(a){return ue(he(["models",a]),async()=>{const s=await fetch(`/api/sessions/agent-profiles/${encodeURIComponent(a)}/models`);if(s.ok===!1)throw new Error(t("components.taskEditorDialog.failedToLoadModels"));const u=await s.json();return Array.isArray(u.models)?u.models:[]})}async function ie(a,s){return ue(he(["agent-profile-skills",a,s]),async()=>{const u=await fetch(`/api/sessions/agent-profiles/${encodeURIComponent(a)}/skills?projectPath=${encodeURIComponent(s)}`);if(u.ok===!1)throw new Error(t("components.taskEditorDialog.failedToLoadSkills"));const b=await u.json();return Array.isArray(b.skills)?b.skills:[]})}async function xe(a){return ue(he(["worktree-copy-files",d.clientId,a]),async()=>{const s=new URLSearchParams({clientId:d.clientId,projectPath:a}),u=await fetch(`/api/sessions/worktree-copy-files?${s.toString()}`);if(u.ok===!1)throw new Error(t("components.taskEditorDialog.failedToLoadCopyFiles"));const b=await u.json();return Array.isArray(b.files)?b.files:[]}).catch(()=>[])}async function re(a){const s=new URLSearchParams({clientId:d.clientId,projectPath:a}),u=await fetch(`/api/sessions/git-status?${s.toString()}`);return u.ok===!1?{}:u.json()}async function _e(){const a=m.value;if(a){$.value=!0,R.value="";try{const s=new URLSearchParams({clientId:d.clientId,projectPath:a}),u=await fetch(`/api/sessions/worktree-branches?${s.toString()}`);if(!u.ok)throw new Error(t("components.taskEditorDialog.managedWorktreesAreUnavailableForThisProject"));const b=await u.json();if(m.value!==a)return;k.value=Array.isArray(b.branches)?b.branches:[]}catch(s){k.value=[],R.value=ae(s)}finally{$.value=!1}}}async function te(){if(!m.value||!x.value)return;const a=++Q;O.value=!0,f.value="",R.value="";try{k.value=[];const[s,u,b,C]=await Promise.all([ke(x.value),ie(x.value,m.value),xe(m.value),re(m.value)]);if(a!==Q)return;if(S.value=s,B.value=u,g.value=b,A.value=C.isGitRepo&&!C.detached&&C.branch||"",R.value=C.isGitRepo?"":t("components.taskEditorDialog.managedWorktreesAreUnavailableForThisProject"),!S.value.some(K=>K.provider===w.value.modelProvider&&K.id===w.value.modelId)){const K=U.value.find(F=>F.id===x.value),se=S.value.find(F=>F.current)||S.value.find(F=>F.provider===K?.defaultProvider&&F.id===K?.defaultModel)||S.value[0];w.value={...w.value,modelProvider:se?.provider||"",modelId:se?.id||""}}d.task||Te()}catch(s){a===Q&&(f.value=ae(s))}finally{a===Q&&(O.value=!1)}}function be(){return d.task?.agentProfileId?d.task.agentProfileId:U.value.some(s=>s.id===d.selectedAgentProfileId)?d.selectedAgentProfileId:U.value[0]?.id||""}function Te(){const a=Ee(m.value);if(a.mode==="preset"){const b=d.presets.find(C=>C.id===a.selectedPresetId);if(!b)return;w.value={...w.value,skillSelection:"preset",skillMode:b.mode,skills:b.skills,presetId:b.id};return}if(a.mode!=="custom")return;const s=new Set(B.value.map(b=>b.name)),u=Array.isArray(a.selectedSkills)?a.selectedSkills.filter(b=>typeof b=="string"&&s.has(b)):[];w.value={...w.value,skillSelection:"custom",skillMode:a.customMode==="enabled"?"enabled":"disabled",skills:u,presetId:""}}function Ee(a){if(typeof localStorage>"u")return{};try{const s=JSON.parse(localStorage.getItem(`${Mt}:${a||"~"}`)||"{}");return s&&typeof s=="object"?s:{}}catch{return{}}}function Se(a){let s="custom";return a.presetId?s="preset":a.skillMode==="all"&&(s="all"),{modelProvider:a.modelProvider,modelId:a.modelId,skillSelection:s,skillMode:a.skillMode,skills:[...a.skills],presetId:a.presetId||"",worktree:a.worktree}}function $e(a){m.value=typeof a=="string"?a:a.path,L.value.includes(m.value)||L.value.push(m.value),_.value=!1}async function Ce(){if(!(E.value||!h.value.trim())){E.value=!0,f.value="";try{const a=await fetch("/api/tasks/polish",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({clientId:d.clientId,title:y.value,prompt:h.value})}),s=await a.json().catch(()=>({}));if(!a.ok||!s.content?.title||!s.content?.prompt)throw new Error(s.error||t("components.taskEditorDialog.failedToPolishTask"));y.value=s.content.title,h.value=s.content.prompt}catch(a){f.value=ae(a)}finally{E.value=!1}}}function je(){Z.value||T("save",{projectPath:m.value,title:y.value.trim(),prompt:h.value.trim(),notes:W.value,agentProfileId:x.value,...nt(w.value)})}function ae(a){return a instanceof Error?a.message:t("components.taskEditorDialog.failedToLoadTaskSettings")}return H({async preload(){await ee(),q=!0}}),(a,s)=>(p(),v(Me,null,[(p(),we(st,{to:"body"},[D(Ze,{name:"modal"},{default:de(()=>[P.visible?(p(),v("div",kt,[o("section",bt,[o("header",ht,[o("div",null,[o("h2",gt,i(P.task?e(t)("components.taskEditorDialog.editTask"):e(t)("components.taskEditorDialog.newTask")),1),o("p",null,i(e(t)("components.taskEditorDialog.saveTheCompleteSessionSetupNowAnd")),1)]),D(et,{class:"task-editor-close",label:e(t)("components.taskEditorDialog.closeTaskEditor"),onClick:s[0]||(s[0]=u=>T("close"))},null,8,["label"])]),o("form",{onSubmit:tt(je,["prevent"])},[o("div",yt,[o("section",Pt,[o("label",wt,i(e(t)("components.taskEditorDialog.project")),1),o("div",It,[D(Ne,{id:"task-project",modelValue:m.value,"onUpdate:modelValue":s[1]||(s[1]=u=>m.value=u),options:Y.value,"aria-label":e(t)("components.taskEditorDialog.taskProject")},null,8,["modelValue","options","aria-label"]),o("button",{type:"button",class:"dialog-action browse-project",onClick:s[2]||(s[2]=u=>_.value=!0)},i(e(t)("components.taskEditorDialog.browse")),1)]),o("label",xt,i(e(t)("components.taskEditorDialog.title")),1),pe(o("input",{id:"task-title",ref_key:"titleInput",ref:M,"onUpdate:modelValue":s[3]||(s[3]=u=>y.value=u),autocomplete:"off"},null,512),[[ve,y.value]]),o("div",_t,[o("label",Tt,i(e(t)("components.taskEditorDialog.promptSentToPi")),1),o("button",{type:"button",class:"task-ai-polish",disabled:E.value||!h.value.trim(),title:h.value.trim()?e(t)("components.taskEditorDialog.polishTaskTitleAndPromptWithAi"):e(t)("components.taskEditorDialog.enterARoughPromptToPolishWithAi"),onClick:Ce},[D(e(He),{size:16,weight:"bold","aria-hidden":"true"}),o("span",null,i(E.value?e(t)("components.taskEditorDialog.polishing"):e(t)("components.taskEditorDialog.aiPolish")),1)],8,Et)]),pe(o("textarea",{id:"task-prompt","onUpdate:modelValue":s[4]||(s[4]=u=>h.value=u),rows:"12"},null,512),[[ve,h.value]]),o("label",St,i(e(t)("components.taskEditorDialog.privateNotesNotSent")),1),pe(o("textarea",{id:"task-notes","onUpdate:modelValue":s[5]||(s[5]=u=>W.value=u),rows:"4"},null,512),[[ve,W.value]]),o("footer",$t,[o("button",{class:"dialog-action",type:"button",onClick:s[6]||(s[6]=u=>T("close"))},i(e(t)("components.taskEditorDialog.cancel")),1),o("button",{class:"dialog-action task-save",type:"submit",disabled:Z.value},i(P.saving?e(t)("components.taskEditorDialog.saving"):e(t)("components.taskEditorDialog.saveTask")),9,Ct)])]),o("section",jt,[o("label",Dt,i(e(t)("components.taskEditorDialog.agentProfile")),1),D(Ne,{id:"task-profile",modelValue:x.value,"onUpdate:modelValue":s[7]||(s[7]=u=>x.value=u),options:J.value,"aria-label":e(t)("components.taskEditorDialog.taskAgentProfile")},null,8,["modelValue","options","aria-label"]),O.value?(p(),v("div",Rt,i(e(t)("components.taskEditorDialog.loadingLaunchSettings")),1)):(p(),we(at,{key:1,modelValue:w.value,"onUpdate:modelValue":s[8]||(s[8]=u=>w.value=u),"id-prefix":"task","require-model":"",models:S.value,"available-skills":B.value,presets:P.presets,branches:k.value,"copy-files":g.value,"current-branch":A.value,"branches-loading":$.value,"branches-error":R.value,onValidityChange:s[9]||(s[9]=u=>V.value=u),onRequestBranches:_e},null,8,["modelValue","models","available-skills","presets","branches","copy-files","current-branch","branches-loading","branches-error"]))])]),f.value?(p(),v("p",At,i(f.value),1)):I("",!0)],32)])])):I("",!0)]),_:1})])),D(ot,{visible:_.value,"initial-path":m.value,"current-project-path":m.value,onClose:s[10]||(s[10]=u=>_.value=!1),onSelect:$e},null,8,["visible","initial-path","current-project-path"])],64))}}),Ut=Xe(Lt,[["__scopeId","data-v-895c9ddb"]]),Vt=["title"],zt={class:"task-inbox-header"},qt={class:"task-inbox-actions"},Nt=["aria-label"],Wt={class:"task-inbox-toolbar"},Bt={class:"task-filter-group"},Ot={class:"task-filter-label"},Ft=["aria-label"],Gt={class:"task-filter-group task-filter-group-status"},Ht={class:"task-filter-label"},Xt=["aria-label"],Yt=["onClick"],Jt={key:0,class:"task-error","aria-live":"polite"},Kt={key:2,class:"task-empty"},Qt={key:3,class:"task-empty"},Zt={class:"task-empty-card"},ea={class:"task-empty-icon","aria-hidden":"true"},ta={key:0},aa={key:4,class:"task-list"},sa=["data-task-id"],oa={class:"task-row-main"},na={class:"task-copy"},la={class:"task-title-line"},ia={class:"task-title-actions"},ra=["aria-label","title","onClick"],ca=["aria-label","title","onClick"],ua={class:"task-meta"},da={key:0,class:"task-project"},pa=["title"],va={key:1,class:"task-work-location"},fa=["title"],ma=["aria-expanded","onClick"],ka={key:1,class:"task-notes"},ba={class:"task-row-actions task-actions"},ha={class:"task-primary-actions"},ga=["disabled","onClick"],ya=["onClick"],Pa={class:"task-secondary-actions"},wa=["disabled","onClick"],Ia=["onClick"],xa=["href"],_a=["onClick"],Ta=["href","title","aria-label"],Ea={class:"issue-preview-form"},Sa=["value","aria-label"],$a={class:"issue-ai-row"},Ca=["disabled","title"],ja={key:0,class:"issue-generation-error"},Oe=480,Fe=360,Da=.85,Ra=Ge({__name:"TaskInboxPanel",props:{visible:{type:Boolean},clientId:{},currentProjectPath:{},selectedAgentProfileId:{},presets:{},loadPresets:{type:Function}},emits:["close","started","openSession"],setup(P,{expose:H,emit:X}){const t=ge.global.t,d=P,T=X,{tasks:M,scope:y,status:h,loading:W,error:m,startingTaskId:x,load:L,create:U,update:S,remove:B,start:k,complete:g}=mt(d.clientId),A=ft(),$=c(!1),R=c(null),w=c(null),V=c(null),O=c(!1),f=c(""),E=c(null),_=vt({owner:"",repo:"",title:"",body:""}),Q=fe(()=>[_.owner,_.repo].filter(Boolean).join("/")),z=c(!1),q=c(!1),Y=c(""),J=c(null),Z=c(new Set);let le;const ee=c(),Ie=fe(()=>({"--task-inbox-panel-width":`${ee.value||Oe}px`}));let me=0,ke=0;const ie=c(!1),xe=[{value:"waiting",label:t("components.taskInboxPanel.waiting")},{value:"started",label:t("components.taskInboxPanel.started")},{value:"completed",label:t("components.taskInboxPanel.completed")}];ye([()=>d.currentProjectPath,y,h],()=>{L(d.currentProjectPath)},{immediate:!0});function re(){te(null)}function _e(n){te(n)}async function te(n){f.value="",R.value=n,$.value=!0;try{await d.loadPresets(),await Pe(),await w.value?.preload?.()}catch(r){$.value=!1,R.value=null,f.value=G(r)}}function be(){$.value=!1,R.value=null}async function Te(n){O.value=!0,f.value="";try{R.value?await S(R.value.id,n):await U(n),be()}catch(r){f.value=G(r)}finally{O.value=!1}}async function Ee(n){f.value="";try{T("started",await k(n.id))}catch(r){f.value=G(r)}}function Se(n){f.value="";const r=new URL("/",window.location.origin);r.searchParams.set("startTask",n.id),n.projectPath&&n.projectPath!=="~"&&r.searchParams.set("project",n.projectPath),n.agentProfileId&&n.agentProfileId!=="default"&&r.searchParams.set("profile",n.agentProfileId),window.open(r.toString(),"_blank","noopener")}async function $e(n){f.value="";try{await g(n.id)}catch(r){f.value=G(r)}}function Ce(n){V.value=n}async function je(){if(V.value){f.value="";try{await B(V.value.id),V.value=null}catch(n){f.value=G(n)}}}async function ae(n){f.value="",Y.value="";try{const r=await A.previewIssue(n.id);Object.assign(_,r),E.value=n}catch(r){f.value=G(r)}}async function a(){if(!(!E.value||q.value)){q.value=!0,Y.value="";try{const n=await A.generateIssueContent(d.clientId,E.value.id,{..._});_.title=n.title,_.body=n.body}catch(n){Y.value=G(n)}finally{q.value=!1}}}async function s(){if(!(!E.value||z.value)){z.value=!0,f.value="";try{const n=await A.createIssue(E.value.id,{..._});E.value=null,await L(d.currentProjectPath),Ue(n.giteaIssue?t("components.taskInboxPanel.issueNumberCreated",{number:n.giteaIssue.number}):t("components.taskInboxPanel.issueCreated"),"success")}catch(n){f.value=G(n),Ue(f.value,"error")}finally{z.value=!1}}}function u(n){return n.worktree.mode==="managed"?t("components.taskInboxPanel.worktreeBranch",{branch:n.worktree.branchName}):""}function b(n){const r=new Date(n),l=Date.now()-r.getTime(),j=Math.floor(l/6e4),De=Math.floor(j/60),oe=Math.floor(De/24);if(j<1)return t("components.taskInboxPanel.justNow");if(j<60)return C(j,"minute");if(De<24)return C(De,"hour");if(oe<7)return C(oe,"day");if(oe<30)return C(Math.floor(oe/7),"week");const ze=Math.floor(oe/30);return ze<12?C(ze,"month"):C(Math.floor(oe/365),"year")}function C(n,r){return ge.global.locale.value!=="en"?new Intl.RelativeTimeFormat(ge.global.locale.value,{numeric:"always",style:"long"}).format(-n,r):r==="minute"?`${n}m ago`:r==="hour"?`${n}h ago`:r==="day"?`${n}d ago`:`${n} ${r}${n===1?"":"s"} ago`}function Le(n){return new Date(n).toLocaleString()}function K(n){return n.trim().length>240}function se(n){return Z.value.has(n)}function F(n){const r=new Set(Z.value);r.has(n)?r.delete(n):r.add(n),Z.value=r}function G(n){return n instanceof Error?n.message:t("components.taskInboxPanel.taskActionFailed")}function Ue(n,r){J.value={message:n,type:r},window.clearTimeout(le),le=window.setTimeout(()=>{J.value=null},2e3)}function Ye(n){const r=Math.max(Fe,Math.floor(window.innerWidth*Da));return Math.min(r,Math.max(Fe,n))}function Je(){return ee.value||Oe}function Ve(n){const r=me-n.clientX;ee.value=Ye(ke+r)}function ce(){ie.value=!1,document.body.style.cursor="",document.body.style.userSelect="",window.removeEventListener("mousemove",Ve),window.removeEventListener("mouseup",ce),window.removeEventListener("blur",ce)}function Ke(n){n.preventDefault(),ie.value=!0,me=n.clientX,ke=Je(),document.body.style.cursor="col-resize",document.body.style.userSelect="none",window.addEventListener("mousemove",Ve),window.addEventListener("mouseup",ce),window.addEventListener("blur",ce)}return lt(()=>{ce(),window.clearTimeout(le)}),H({openNewTask:re}),(n,r)=>(p(),v("section",{class:N(["task-inbox-panel",{visible:P.visible!==!1}]),style:pt(Ie.value)},[o("div",{class:N(["task-inbox-resize-handle",{"is-resizing":ie.value}]),title:e(t)("components.taskInboxPanel.resizeTaskInbox"),onMousedown:Ke},null,42,Vt),o("header",zt,[o("div",null,[o("h2",null,i(e(t)("components.taskInboxPanel.taskInbox")),1),o("p",null,i(e(t)("components.taskInboxPanel.captureWorkNowAndStartInNew")),1)]),o("div",qt,[o("button",{class:"new-task",type:"button",onClick:re},i(e(t)("components.taskInboxPanel.newTask")),1),o("button",{class:"close-task-inbox",type:"button","aria-label":e(t)("components.taskInboxPanel.closeTaskInbox"),onClick:r[0]||(r[0]=l=>T("close"))},"×",8,Nt)])]),o("div",Wt,[o("div",Bt,[o("span",Ot,i(e(t)("components.taskInboxPanel.scope")),1),o("div",{class:"task-scope",role:"group","aria-label":e(t)("components.taskInboxPanel.taskProjectScope")},[o("button",{class:N(["scope-project",{active:e(y)==="project"}]),type:"button",onClick:r[1]||(r[1]=l=>y.value="project")},i(e(t)("components.taskInboxPanel.currentProject")),3),o("button",{class:N(["scope-all",{active:e(y)==="all"}]),type:"button",onClick:r[2]||(r[2]=l=>y.value="all")},i(e(t)("components.taskInboxPanel.allProjects")),3)],8,Ft)]),o("div",Gt,[o("span",Ht,i(e(t)("components.taskInboxPanel.status")),1),o("div",{class:"task-status-tabs",role:"group","aria-label":e(t)("components.taskInboxPanel.taskStatus")},[(p(),v(Me,null,We(xe,l=>o("button",{key:l.value,class:N({active:e(h)===l.value}),type:"button",onClick:j=>h.value=l.value},i(l.label),11,Yt)),64))],8,Xt)])]),e(m)||f.value?(p(),v("p",Jt,i(f.value||e(m)),1)):I("",!0),J.value?(p(),v("div",{key:1,class:N(["task-toast",J.value.type]),role:"status","aria-live":"polite"},i(J.value.message),3)):I("",!0),e(W)?(p(),v("div",Kt,i(e(t)("components.taskInboxPanel.loadingTasks")),1)):e(M).length===0?(p(),v("div",Qt,[o("div",Zt,[o("div",ea,[D(e(it),{size:28,weight:"duotone"})]),o("h3",null,i(e(t)("components.taskInboxPanel.noStatusTasks",{status:e(t)(`components.taskInboxPanel.statuses.${e(h)}`)})),1),e(h)==="waiting"?(p(),v("p",ta,i(e(t)("components.taskInboxPanel.captureYourNextIdeaWithoutInterruptingYour")),1)):I("",!0),e(h)==="waiting"?(p(),v("button",{key:1,class:"task-empty-action",type:"button",onClick:re},i(e(t)("components.taskInboxPanel.newTask")),1)):I("",!0)])])):(p(),v("div",aa,[(p(!0),v(Me,null,We(e(M),l=>(p(),v("article",{key:l.id,class:"task-row","data-task-id":l.id},[o("div",oa,[o("div",na,[o("div",la,[o("h3",null,i(l.title),1),o("span",{class:N(["task-status",`status-${l.status}`])},i(e(t)(`components.taskInboxPanel.statuses.${l.status}`)),3),o("div",ia,[l.status==="waiting"?(p(),v("button",{key:0,class:"task-icon-btn",type:"button","aria-label":e(t)("components.taskInboxPanel.editTask"),title:e(t)("components.taskInboxPanel.edit"),onClick:j=>_e(l)},[D(e(rt),{size:15,weight:"bold"})],8,ra)):I("",!0),o("button",{class:"task-icon-btn danger",type:"button","aria-label":e(t)("components.taskInboxPanel.deleteTask"),title:e(t)("components.taskInboxPanel.delete"),onClick:j=>Ce(l)},[D(e(ct),{size:15,weight:"bold"})],8,ca)])]),o("div",ua,[e(y)==="all"?(p(),v("span",da,i(l.projectPath),1)):I("",!0),o("span",{class:"task-runtime",title:`${l.agentProfileId} · ${l.modelProvider}/${l.modelId}`},i(l.agentProfileId)+" · "+i(l.modelId),9,pa),l.worktree.mode==="managed"?(p(),v("span",va,i(u(l)),1)):I("",!0),o("span",{class:"task-created-at",title:Le(l.createdAt)},i(b(l.createdAt)),9,fa)]),o("p",{class:N(["task-prompt",{expanded:se(l.id)}])},i(l.prompt),3),K(l.prompt)?(p(),v("button",{key:0,class:"task-prompt-toggle",type:"button","aria-expanded":se(l.id),onClick:j=>F(l.id)},i(se(l.id)?e(t)("components.taskInboxPanel.showLess"):e(t)("components.taskInboxPanel.showMore")),9,ma)):I("",!0),l.notes?(p(),v("p",ka,[o("strong",null,i(e(t)("components.taskInboxPanel.notes")),1),ne(" "+i(l.notes),1)])):I("",!0)])]),o("div",ba,[o("div",ha,[l.status==="waiting"?(p(),v("button",{key:0,class:"task-start primary",type:"button",disabled:e(x)===l.id,onClick:j=>Ee(l)},i(e(x)===l.id?e(t)("components.taskInboxPanel.starting"):e(t)("components.taskInboxPanel.start")),9,ga)):I("",!0),l.status!=="waiting"&&l.sessionId?(p(),v("button",{key:1,class:"task-open-session primary",type:"button",onClick:j=>T("openSession",l.sessionId)},i(e(t)("components.taskInboxPanel.openSession")),9,ya)):I("",!0)]),o("div",Pa,[l.status==="waiting"?(p(),v("button",{key:0,class:"task-start-new-tab",type:"button",disabled:e(x)===l.id,onClick:j=>Se(l)},i(e(t)("components.taskInboxPanel.startInNewTab")),9,wa)):I("",!0),l.status==="started"?(p(),v("button",{key:1,class:"task-complete",type:"button",onClick:j=>$e(l)},i(e(t)("components.taskInboxPanel.complete")),9,Ia)):I("",!0),l.giteaIssue?(p(),v("a",{key:2,class:"task-open-issue",href:l.giteaIssue.url,target:"_blank",rel:"noopener noreferrer"},"Issue #"+i(l.giteaIssue.number),9,xa)):(p(),v("button",{key:3,class:"task-create-issue",type:"button",onClick:j=>ae(l)},i(e(t)("components.taskInboxPanel.createIssue")),9,_a)),l.pullRequest?(p(),v("a",{key:4,class:N(["task-pr-status",l.pullRequest.status]),href:l.pullRequest.url,target:"_blank",rel:"noopener noreferrer",title:l.pullRequest.status==="merged"?e(t)("components.taskInboxPanel.pullRequestMerged"):e(t)("components.taskInboxPanel.pullRequestReady"),"aria-label":l.pullRequest.status==="merged"?e(t)("components.taskInboxPanel.pullRequestMerged"):e(t)("components.taskInboxPanel.pullRequestReady")},[l.pullRequest.status==="merged"?(p(),we(e(ut),{key:0,size:13,weight:"bold","aria-hidden":"true"})):(p(),we(e(dt),{key:1,size:13,weight:"bold","aria-hidden":"true"})),o("span",null,"PR #"+i(l.pullRequest.number),1)],10,Ta)):I("",!0)])])],8,sa))),128))])),D(Ut,{ref_key:"taskEditorRef",ref:w,visible:$.value,"client-id":P.clientId,"current-project-path":P.currentProjectPath,"selected-agent-profile-id":P.selectedAgentProfileId,presets:P.presets,task:R.value,saving:O.value,onClose:be,onSave:Te},null,8,["visible","client-id","current-project-path","selected-agent-profile-id","presets","task","saving"]),D(Be,{visible:!!V.value,variant:"danger","confirm-text":e(t)("components.taskInboxPanel.delete"),onConfirm:je,onCancel:r[3]||(r[3]=l=>V.value=null)},{title:de(()=>[ne(i(e(t)("components.taskInboxPanel.deleteTask")),1)]),message:de(()=>[ne(i(e(t)("components.taskInboxPanel.deleteThisTaskRecordAnyLinkedPi")),1)]),_:1},8,["visible","confirm-text"]),D(Be,{visible:!!E.value,"confirm-text":e(t)("components.taskInboxPanel.createIssue"),onConfirm:s,onCancel:r[6]||(r[6]=l=>E.value=null)},{title:de(()=>[ne(i(e(t)("components.taskInboxPanel.createIssue")),1)]),message:de(()=>[o("div",Ea,[o("label",null,[ne(i(e(t)("components.taskInboxPanel.repository"))+" ",1),o("input",{value:Q.value,readonly:"","aria-label":e(t)("components.taskInboxPanel.issueRepository")},null,8,Sa)]),o("label",null,[ne(i(e(t)("components.taskInboxPanel.title"))+" ",1),pe(o("input",{"onUpdate:modelValue":r[4]||(r[4]=l=>_.title=l)},null,512),[[ve,_.title]])]),o("div",$a,[o("span",null,i(e(t)("components.taskInboxPanel.body")),1),o("button",{type:"button",class:"issue-ai-generate",disabled:q.value,title:P.clientId?e(t)("components.taskInboxPanel.polishIssueTitleAndBodyWithAi"):e(t)("components.taskInboxPanel.openASessionToPolishIssueContentWith"),onClick:a},[D(e(He),{size:16,weight:"bold","aria-hidden":"true"}),o("span",null,i(q.value?e(t)("components.taskInboxPanel.generating"):e(t)("components.taskInboxPanel.aiPolish")),1)],8,Ca)]),o("label",null,[pe(o("textarea",{"onUpdate:modelValue":r[5]||(r[5]=l=>_.body=l),rows:"8"},null,512),[[ve,_.body]])]),Y.value?(p(),v("p",ja,i(Y.value),1)):I("",!0)])]),_:1},8,["visible","confirm-text"])],6))}}),Ma=Xe(Ra,[["__scopeId","data-v-67a4d1cd"]]);export{Ma as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as S,f as I,
|
|
1
|
+
import{d as S,f as I,L as R,z as y,A as M,o as a,c as s,q as z,s as g,v as p,a as L,e as o,t as v,u as r,x as d,n as B,b as $,E as F,_ as O}from"./index-BEdzBcRP.js";const A=["onMousedown"],N={class:"terminal-tabs-label"},Y={class:"terminal-tabs"},G=["onClick"],V={class:"terminal-tab-title"},q=["onClick"],K=["data-tooltip"],U={class:"terminal-panel-actions"},X=["data-tooltip"],j=["data-tooltip"],J=["data-tooltip"],Q=["data-tooltip"],W=["data-tooltip"],Z={class:"terminal-content"},_={key:0,class:"terminal-empty"},C=140,ee=.75,te=S({__name:"TerminalPanel",props:{visible:{type:Boolean},mode:{},isMaximized:{type:Boolean},isFloating:{type:Boolean},sessions:{},activeId:{},terminalHeight:{},floatPanelStyle:{},resizeDirections:{},interaction:{}},emits:["toggleMaximize","popOut","dock","createTerminal","close","switch","closeTerminal","setHostRef","updateHeight","startMove","startResize"],setup(i,{emit:H}){const l=I.global.t,m=i,f=H,P=$(()=>({"terminal-panel-floating":m.isFloating,"terminal-panel-maximized":m.isMaximized,"terminal-panel-dragging":m.interaction.active})),T=$(()=>m.isMaximized?{position:"fixed",top:"0",left:"0",width:"100vw",height:"100vh",zIndex:"1200"}:m.isFloating?m.floatPanelStyle:{"--terminal-panel-height":`${m.terminalHeight}px`});function D(e){m.isFloating&&f("startMove",e)}function E(e){const n=Math.max(C,Math.floor(window.innerHeight*ee));return Math.min(n,Math.max(C,e))}let k=0,w=0;const b=F(!1);function x(e){e.preventDefault(),b.value=!0,k=e.clientY,w=m.terminalHeight,document.body.style.cursor="row-resize",document.body.style.userSelect="none",window.addEventListener("mousemove",h),window.addEventListener("mouseup",c),window.addEventListener("blur",c)}function h(e){f("updateHeight",E(w-(e.clientY-k)))}function c(){b.value=!1,document.body.style.cursor="",document.body.style.userSelect="",window.removeEventListener("mousemove",h),window.removeEventListener("mouseup",c),window.removeEventListener("blur",c)}return R(c),(e,n)=>y((a(),s("div",{class:p(["terminal-panel",P.value]),style:B(T.value)},[i.isFloating?(a(!0),s(z,{key:0},g(i.resizeDirections,t=>(a(),s("div",{key:t,class:p(["resize-handle",`resize-${t}`]),onMousedown:u=>e.$emit("startResize",u,t)},null,42,A))),128)):i.isMaximized?L("",!0):(a(),s("div",{key:1,class:p(["resize-handle resize-docked",{"is-resizing":b.value}]),onMousedown:x},null,34)),o("div",{class:"terminal-tabs-bar",onMousedown:D,onDblclick:n[6]||(n[6]=d(t=>e.$emit("toggleMaximize"),["stop"]))},[o("div",N,v(r(l)("components.terminalPanel.terminal")),1),o("div",Y,[(a(!0),s(z,null,g(i.sessions,t=>(a(),s("div",{key:t.terminal_id,class:p(["terminal-tab",{active:i.activeId===t.terminal_id}]),onClick:u=>e.$emit("switch",t.terminal_id)},[o("span",V,v(t.label||"shell"),1),o("button",{class:"terminal-tab-close",onClick:d(u=>e.$emit("closeTerminal",t.terminal_id),["stop"])},"✕",8,q)],10,G))),128)),o("button",{class:"terminal-tab terminal-tab-new tooltip",onClick:n[0]||(n[0]=d(t=>e.$emit("createTerminal"),["stop"])),"data-tooltip":r(l)("components.terminalPanel.newTerminal")},"+",8,K)]),o("div",U,[i.isFloating||i.isMaximized?(a(),s("button",{key:0,class:"icon-btn tooltip",onClick:n[1]||(n[1]=d(t=>e.$emit("dock"),["stop"])),"data-tooltip":r(l)("components.terminalPanel.dockToBottom")},"⤓",8,X)):(a(),s("button",{key:1,class:"icon-btn tooltip",onClick:n[2]||(n[2]=d(t=>e.$emit("popOut"),["stop"])),"data-tooltip":r(l)("components.terminalPanel.popOut")},"↗",8,j)),o("button",{class:"icon-btn tooltip",onClick:n[3]||(n[3]=d(t=>e.$emit("close"),["stop"])),"data-tooltip":r(l)("components.terminalPanel.minimize")},"—",8,J),o("button",{class:"icon-btn maximize-btn tooltip",onClick:n[4]||(n[4]=d(t=>e.$emit("toggleMaximize"),["stop"])),"data-tooltip":i.isMaximized?r(l)("components.terminalPanel.restore"):r(l)("components.terminalPanel.maximize")},v(i.isMaximized?"❐":"▢"),9,Q),o("button",{class:"icon-btn tooltip",onClick:n[5]||(n[5]=d(t=>e.$emit("close"),["stop"])),"data-tooltip":r(l)("components.terminalPanel.closePanel")},"✕",8,W)])],32),o("div",Z,[i.sessions.length===0?(a(),s("div",_,[o("div",null,v(r(l)("components.terminalPanel.noTerminals")),1),o("button",{class:"terminal-empty-create",onClick:n[7]||(n[7]=t=>e.$emit("createTerminal"))},v(r(l)("components.terminalPanel.newTerminal")),1)])):(a(!0),s(z,{key:1},g(i.sessions,t=>y((a(),s("div",{key:t.terminal_id,class:"terminal-host-wrapper"},[o("div",{ref_for:!0,ref:u=>e.$emit("setHostRef",t.terminal_id,u),class:"terminal-host"},null,512)])),[[M,i.activeId===t.terminal_id]])),128))])],6)),[[M,i.visible]])}}),ie=O(te,[["__scopeId","data-v-6526774d"]]);export{ie as default};
|
package/client/dist/assets/{abnfDiagram-VCTEODGH-C0onveOK.js → abnfDiagram-VCTEODGH-E5SFS0yC.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{g as p,r as u,d as a}from"./chunk-SVP7TREG-
|
|
1
|
+
import{g as p,r as u,d as a}from"./chunk-SVP7TREG-VbaUClr5.js";import{p as f}from"./chunk-JWPE2WC7-B3xxW2KI.js";import{_ as n,l as o}from"./mermaid.core-6wQEj5oY.js";import{M as c,b as d}from"./cynefin-OW5HDTMX-rQvby0lk.js";import"./index-BEdzBcRP.js";var v=d().RailroadAbnf.parser.LangiumParser,i=n(e=>{const r=e.alternatives.map(g);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformAlternation"),g=n(e=>{const r=e.elements.map(y);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformConcatenation"),b=n(e=>{if(e.includes("*")){const[t,s]=e.split("*"),l=t?parseInt(t,10):0,m=s?parseInt(s,10):1/0;return{min:l,max:m}}const r=parseInt(e,10);return{min:r,max:r}},"parseRepeat"),y=n(e=>{const r=A(e.primary);if(!e.repeat)return r;const{min:t,max:s}=b(e.repeat);return t===0&&s===1?{type:"optional",element:r}:{type:"repetition",element:r,min:t,max:s}},"transformElement"),A=n(e=>{switch(e.$type){case"AbnfStringLiteral":return{type:"terminal",value:e.value};case"AbnfNumVal":return{type:"terminal",value:e.value};case"AbnfRuleName":return{type:"nonterminal",name:e.name};case"AbnfGroup":return i(e.element);case"AbnfOptionalGroup":return{type:"optional",element:i(e.element)};default:throw new Error(`Unsupported ABNF primary node: ${e.$type}`)}},"transformPrimary"),P=n(e=>({name:e.name,definition:i(e.definition)}),"transformRule"),h=n(e=>{f(e,a),e.title&&a.setTitle(e.title),e.rules.map(r=>a.addRule(P(r)))},"populateDb"),R={parse:n(e=>{a.clear(),o.debug("[ABNF Parser] Starting Langium parse");const r=v.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new c(r);const t=r.value;o.debug("[ABNF Parser] Parsed rules:",t.rules.length),h(t),o.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:a}},B={parser:R,db:a,renderer:u,styles:p};export{B as diagram};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{H as ln,I as un,J as Q,K as I,L as K,M as an,N as y,O as tn,P as j,Q as _,R as rn,S as o,T as on,V as sn,W as fn}from"./mermaid.core-
|
|
1
|
+
import{H as ln,I as un,J as Q,K as I,L as K,M as an,N as y,O as tn,P as j,Q as _,R as rn,S as o,T as on,V as sn,W as fn}from"./mermaid.core-6wQEj5oY.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function dn(l){return l.endAngle}function mn(l){return l&&l.padAngle}function pn(l,h,q,O,v,R,L,u){var D=q-l,i=O-h,n=L-v,d=u-R,a=d*D-n*i;if(!(a*a<y))return a=(n*(h-R)-d*(l-v))/a,[l+a*D,h+a*i]}function U(l,h,q,O,v,R,L){var u=l-q,D=h-O,i=(L?R:-R)/j(u*u+D*D),n=i*D,d=-i*u,a=l+n,s=h+d,f=q+n,c=O+d,M=(a+f)/2,t=(s+c)/2,m=f-a,g=c-s,A=m*m+g*g,T=v-R,P=a*c-f*s,E=(g<0?-1:1)*j(on(0,T*T*A-P*P)),H=(P*g-m*E)/A,J=(-P*m-g*E)/A,w=(P*g+m*E)/A,p=(-P*m+g*E)/A,x=H-M,e=J-t,r=w-M,N=p-t;return x*x+e*e>r*r+N*N&&(H=w,J=p),{cx:H,cy:J,x01:-n,y01:-d,x11:H*(v/T-1),y11:J*(v/T-1)}}function hn(){var l=cn,h=yn,q=K(0),O=null,v=gn,R=dn,L=mn,u=null,D=ln(i);function i(){var n,d,a=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-an,c=R.apply(this,arguments)-an,M=rn(c-f),t=c>f;if(u||(u=n=D()),s<a&&(d=s,s=a,a=d),!(s>y))u.moveTo(0,0);else if(M>tn-y)u.moveTo(s*Q(f),s*I(f)),u.arc(0,0,s,f,c,!t),a>y&&(u.moveTo(a*Q(c),a*I(c)),u.arc(0,0,a,c,f,t));else{var m=f,g=c,A=f,T=c,P=M,E=M,H=L.apply(this,arguments)/2,J=H>y&&(O?+O.apply(this,arguments):j(a*a+s*s)),w=_(rn(s-a)/2,+q.apply(this,arguments)),p=w,x=w,e,r;if(J>y){var N=sn(J/a*I(H)),z=sn(J/s*I(H));(P-=N*2)>y?(N*=t?1:-1,A+=N,T-=N):(P=0,A=T=(f+c)/2),(E-=z*2)>y?(z*=t?1:-1,m+=z,g-=z):(E=0,m=g=(f+c)/2)}var V=s*Q(m),W=s*I(m),B=a*Q(T),C=a*I(T);if(w>y){var F=s*Q(g),G=s*I(g),X=a*Q(A),Y=a*I(A),S;if(M<un)if(S=pn(V,W,X,Y,F,G,B,C)){var Z=V-S[0],$=W-S[1],k=F-S[0],b=G-S[1],nn=1/I(fn((Z*k+$*b)/(j(Z*Z+$*$)*j(k*k+b*b)))/2),en=j(S[0]*S[0]+S[1]*S[1]);p=_(w,(a-en)/(nn-1)),x=_(w,(s-en)/(nn+1))}else p=x=0}E>y?x>y?(e=U(X,Y,V,W,s,x,t),r=U(F,G,B,C,s,x,t),u.moveTo(e.cx+e.x01,e.cy+e.y01),x<w?u.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(r.y01,r.x01),!t):(u.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(e.y11,e.x11),!t),u.arc(0,0,s,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),!t),u.arc(r.cx,r.cy,x,o(r.y11,r.x11),o(r.y01,r.x01),!t))):(u.moveTo(V,W),u.arc(0,0,s,m,g,!t)):u.moveTo(V,W),!(a>y)||!(P>y)?u.lineTo(B,C):p>y?(e=U(B,C,F,G,a,-p,t),r=U(V,W,X,Y,a,-p,t),u.lineTo(e.cx+e.x01,e.cy+e.y01),p<w?u.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(r.y01,r.x01),!t):(u.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(e.y11,e.x11),!t),u.arc(0,0,a,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),t),u.arc(r.cx,r.cy,p,o(r.y11,r.x11),o(r.y01,r.x01),!t))):u.arc(0,0,a,T,A,t)}if(u.closePath(),n)return u=null,n+""||null}return i.centroid=function(){var n=(+l.apply(this,arguments)+ +h.apply(this,arguments))/2,d=(+v.apply(this,arguments)+ +R.apply(this,arguments))/2-un/2;return[Q(d)*n,I(d)*n]},i.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:K(+n),i):l},i.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:K(+n),i):h},i.cornerRadius=function(n){return arguments.length?(q=typeof n=="function"?n:K(+n),i):q},i.padRadius=function(n){return arguments.length?(O=n==null?null:typeof n=="function"?n:K(+n),i):O},i.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:K(+n),i):v},i.endAngle=function(n){return arguments.length?(R=typeof n=="function"?n:K(+n),i):R},i.padAngle=function(n){return arguments.length?(L=typeof n=="function"?n:K(+n),i):L},i.context=function(n){return arguments.length?(u=n??null,i):u},i}export{hn as d};
|