@tequila99/githuman 0.4.2 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -0
- package/dist/cli/index.js +27 -2
- package/dist/cli/server-runtime.js +1 -0
- package/dist/server/app.js +22 -1
- package/dist/server/errors/terminal.js +4 -0
- package/dist/server/hooks/terminal/local-origin.js +25 -0
- package/dist/server/routes/app-info.js +5 -2
- package/dist/server/routes/terminal.js +63 -0
- package/dist/server/services/terminal/backend.js +216 -0
- package/dist/server/services/terminal/channel.js +200 -0
- package/dist/server/services/terminal/escape-tail.js +93 -0
- package/dist/server/services/terminal/processes.js +115 -0
- package/dist/server/services/terminal/prompt-tracker.js +15 -0
- package/dist/server/services/terminal/registry.js +167 -0
- package/dist/server/services/terminal/session.js +238 -0
- package/dist/server/services/terminal/socket.js +74 -0
- package/dist/server/services/terminal/tokens.js +32 -0
- package/dist/shared/app/schemas.js +5 -1
- package/dist/shared/terminal/constants.js +27 -0
- package/dist/shared/terminal/schemas.js +114 -0
- package/dist/shared/terminal/types.js +1 -0
- package/dist/web/assets/{AppPage-BYrCfRnC.js → AppPage-D_OHhrKS.js} +2 -2
- package/dist/web/assets/CreateReviewFabButton-B737aIvn.js +1 -0
- package/dist/web/assets/ErrorNotFound-jc5_L_-4.js +1 -0
- package/dist/web/assets/IndexPage-DzlFTw_b.js +1 -0
- package/dist/web/assets/IndexPage-u_qqIPRL.css +1 -0
- package/dist/web/assets/MainLayout-DaSyo22r.js +8 -0
- package/dist/web/assets/MainLayout-DoniW026.css +1 -0
- package/dist/web/assets/QBadge-BY-jTQ8w.js +1 -0
- package/dist/web/assets/QBtn-Bgm40omM.js +1 -0
- package/dist/web/assets/QSelect-713AWDd_.js +1 -0
- package/dist/web/assets/QSpace-BLu5AyZv.css +1 -0
- package/dist/web/assets/QSpace-BVBU-0oC.js +17 -0
- package/dist/web/assets/ReviewDetailPage-CLM6aU4u.js +1 -0
- package/dist/web/assets/ReviewsPage-bllnaoOS.js +1 -0
- package/dist/web/assets/StatusSwitcher-BZ4FYVnY.js +2 -0
- package/dist/web/assets/{StatusSwitcher-DLU1h0rK.css → StatusSwitcher-BxRuEHHQ.css} +1 -1
- package/dist/web/assets/TerminalView-B11UHZv3.css +1 -0
- package/dist/web/assets/TerminalView-Ci9CNTyY.js +19 -0
- package/dist/web/assets/_plugin-vue_export-helper-BDNMzG2s.js +1 -0
- package/dist/web/assets/{abnfDiagram-O67JEVCF-dyvffE6R.js → abnfDiagram-O67JEVCF-4qpB0CGh.js} +1 -1
- package/dist/web/assets/agent-store-DIma0R4U.js +1 -0
- package/dist/web/assets/app-info-store-BzsJOxVc.js +1 -0
- package/dist/web/assets/architecture-7GRP2DOG-DG6nf_hE.js +1 -0
- package/dist/web/assets/{architectureDiagram-NJMV4G6O-Dk-QthCI.js → architectureDiagram-NJMV4G6O-CEL-_i5O.js} +1 -1
- package/dist/web/assets/{blockDiagram-BEXU5L5S-sF48dzNS.js → blockDiagram-BEXU5L5S-bMrUf1GU.js} +1 -1
- package/dist/web/assets/{c4Diagram-YGBWAQC7-BWrux-0F.js → c4Diagram-YGBWAQC7-C54mp6dl.js} +1 -1
- package/dist/web/assets/channel-CS4rbjhf.js +1 -0
- package/dist/web/assets/chunk-3FUC2YCW-BtIughAT.js +2 -0
- package/dist/web/assets/{chunk-5DYCD2WN-CpgXf7LJ.js → chunk-5DYCD2WN-BhyMEDuJ.js} +1 -1
- package/dist/web/assets/{chunk-742MDFTN-BGzG-dZE.js → chunk-742MDFTN-8MczzxE2.js} +1 -1
- package/dist/web/assets/{chunk-7INBJB4K-DJGc-gqS.js → chunk-7INBJB4K-BdS9oIIG.js} +1 -1
- package/dist/web/assets/{chunk-7M6MHVWA-CYIOaZel.js → chunk-7M6MHVWA-BU5_UwaZ.js} +1 -1
- package/dist/web/assets/{chunk-7PRAP22T-CJZNYL51.js → chunk-7PRAP22T-BaAw-gEj.js} +1 -1
- package/dist/web/assets/{chunk-GTNCS2PH-DOYGHmMk.js → chunk-GTNCS2PH-DNpH8E_x.js} +1 -1
- package/dist/web/assets/{chunk-GWA4HPMP-RIikrSw1.js → chunk-GWA4HPMP-BvG5tXy2.js} +1 -1
- package/dist/web/assets/{chunk-MBY4JIJT-ZSssyEJi.js → chunk-MBY4JIJT-B8XJMHG2.js} +1 -1
- package/dist/web/assets/{chunk-NETBCI7D-3tnHEq90.js → chunk-NETBCI7D-ClCXW1dx.js} +1 -1
- package/dist/web/assets/{chunk-O7XYJQB3-CDFTy-aQ.js → chunk-O7XYJQB3-BNcB0oiZ.js} +1 -1
- package/dist/web/assets/{chunk-UA2S7LBM-B8rY8Yj-.js → chunk-UA2S7LBM-CS5CtIsj.js} +1 -1
- package/dist/web/assets/{chunk-WEXAMYUT-BdPY0e7q.js → chunk-WEXAMYUT-CJaZJWKF.js} +1 -1
- package/dist/web/assets/{chunk-Z7XXMR3K-Br_E149D.js → chunk-Z7XXMR3K-DP2k1Ci5.js} +1 -1
- package/dist/web/assets/{chunk-ZIGJFQKS-DDjPFexL.js → chunk-ZIGJFQKS-y4KHfdEv.js} +1 -1
- package/dist/web/assets/{classDiagram-v2-NBCMYWYE-D9kneDxy.js → classDiagram-v2-NBCMYWYE-C-kWcloV.js} +1 -1
- package/dist/web/assets/create-CSUVwdx4.js +1 -0
- package/dist/web/assets/{cynefin-OW5HDTMX-Dot1PBqs.js → cynefin-OW5HDTMX-C3AwH_vU.js} +1 -1
- package/dist/web/assets/{cynefinDiagram-VND7K2PF-6uYi0u-j.js → cynefinDiagram-VND7K2PF-DYF_CoB8.js} +1 -1
- package/dist/web/assets/{dagre-6A5THRUB-BDM5YkfJ.js → dagre-6A5THRUB-DWCEmsd1.js} +1 -1
- package/dist/web/assets/debounce-rZaFFwsz.js +1 -0
- package/dist/web/assets/{diagram-22UHCM2B-DxE0D8WB.js → diagram-22UHCM2B-oBFhSpao.js} +1 -1
- package/dist/web/assets/{diagram-3UASUU5V-CuD1fcFQ.js → diagram-3UASUU5V-Cj9rB07y.js} +1 -1
- package/dist/web/assets/{diagram-ATOU4E4O-DX6enGgq.js → diagram-ATOU4E4O-D4H9BqUQ.js} +1 -1
- package/dist/web/assets/{diagram-CDSNMT55-eLqOiVoC.js → diagram-CDSNMT55-qLgJBiIs.js} +1 -1
- package/dist/web/assets/{diagram-MLGK6HIB-DtIMj5y1.js → diagram-MLGK6HIB-Bhhvtx0A.js} +1 -1
- package/dist/web/assets/{diagram-MPIPVDR6-lYcwsjHR.js → diagram-MPIPVDR6-O4wokd54.js} +1 -1
- package/dist/web/assets/{ebnfDiagram-ZINNZB2B-CGmBWaKx.js → ebnfDiagram-ZINNZB2B-BRU7SszO.js} +1 -1
- package/dist/web/assets/{elk-276RUBZZ-B1ntUD9z.js → elk-276RUBZZ-r0X8f7Sv.js} +1 -1
- package/dist/web/assets/{erDiagram-OPXOYQCR-Dqzoldin.js → erDiagram-OPXOYQCR-DbgjsGkX.js} +1 -1
- package/dist/web/assets/eventmodeling-NTZA5JFV-1Q8-FsiO.js +1 -0
- package/dist/web/assets/flowDiagram-KWPJA3E3-BbwsRPsv.js +1 -0
- package/dist/web/assets/{ganttDiagram-FUAMR5RP-CF6kJAoY.js → ganttDiagram-FUAMR5RP-BwhUglGo.js} +1 -1
- package/dist/web/assets/{gitGraph-4MIJSDKK-CUzcGxMa.js → gitGraph-4MIJSDKK-DA11BsSo.js} +1 -1
- package/dist/web/assets/{gitGraphDiagram-X574FWY7-D-XNa6f2.js → gitGraphDiagram-X574FWY7-BdG7d-11.js} +1 -1
- package/dist/web/assets/i18n-D1K2AGeW.js +1 -0
- package/dist/web/assets/index-BatRsx0U.css +1 -0
- package/dist/web/assets/index-DuCIKkvf.js +2 -0
- package/dist/web/assets/{info-A6RAGUB7-CH4SNmU8.js → info-A6RAGUB7-BxzfvGqu.js} +1 -1
- package/dist/web/assets/{infoDiagram-VRGFBTTK-35AKnD7M.js → infoDiagram-VRGFBTTK-veq817ut.js} +1 -1
- package/dist/web/assets/init-app-DKRVN8HV.js +1 -0
- package/dist/web/assets/{is-BB7rJzdU.js → is-EbmiuVzv.js} +1 -1
- package/dist/web/assets/{ishikawaDiagram-OU5B5YK6-D41YBWSb.js → ishikawaDiagram-OU5B5YK6-DMuzkArR.js} +1 -1
- package/dist/web/assets/{journeyDiagram-ZHPQQLJL-CZF6Wwk8.js → journeyDiagram-ZHPQQLJL-Cqj0kbKe.js} +1 -1
- package/dist/web/assets/{kanban-definition-PNTS6WVX-CVGaUle0.js → kanban-definition-PNTS6WVX-DUvral0v.js} +1 -1
- package/dist/web/assets/{line-CeH4KBRO.js → line-DcLaUOyJ.js} +1 -1
- package/dist/web/assets/{mermaid-parser.core-YrU9LTTJ.js → mermaid-parser.core-CY7nVQ2O.js} +3 -3
- package/dist/web/assets/{mermaid.core-BkLEn5Vh.js → mermaid.core-Cz083qmW.js} +4 -4
- package/dist/web/assets/{mindmap-definition-NLK3R4M7-D22lxuXn.js → mindmap-definition-NLK3R4M7--Twjhxcv.js} +1 -1
- package/dist/web/assets/{packet-AYTQ26CC-DMK0BdeB.js → packet-AYTQ26CC-Csf3Pf50.js} +1 -1
- package/dist/web/assets/{pegDiagram-GJSIUBJH-B-e5e5cW.js → pegDiagram-GJSIUBJH-vVjFUYc4.js} +1 -1
- package/dist/web/assets/{pie-WAS4IAKB-BYP5ND4b.js → pie-WAS4IAKB-CyUE71ZQ.js} +1 -1
- package/dist/web/assets/{pieDiagram-5QR66LMP-DrEY0oA_.js → pieDiagram-5QR66LMP-CV24sdEs.js} +1 -1
- package/dist/web/assets/pinia-UjhgYLzw.js +1 -0
- package/dist/web/assets/pinia-ri8AYppz.js +1 -0
- package/dist/web/assets/{quadrantDiagram-O4NWA36T-D12UM_7Y.js → quadrantDiagram-O4NWA36T-GVAUaTqf.js} +1 -1
- package/dist/web/assets/{radar-RG4KPBEZ-50JpTuMu.js → radar-RG4KPBEZ-D7YGMFYX.js} +1 -1
- package/dist/web/assets/{railroad-74A4TZTK-C-7jDcYE.js → railroad-74A4TZTK-BYsDf4cg.js} +1 -1
- package/dist/web/assets/railroad-abnf-HS5TGJTU-Bg7f5Sbu.js +1 -0
- package/dist/web/assets/railroad-ebnf-LZEXJU2U-ufUodNib.js +1 -0
- package/dist/web/assets/railroad-peg-WCYAUIDC-YvUtEf_g.js +1 -0
- package/dist/web/assets/{railroadDiagram-XR7U4H2S-q0-o99ts.js → railroadDiagram-XR7U4H2S-DOyP7Y6B.js} +1 -1
- package/dist/web/assets/{requirementDiagram-PLB6GJNP-DsO-Ejin.js → requirementDiagram-PLB6GJNP-C2CJ05_O.js} +1 -1
- package/dist/web/assets/runtime-core.esm-bundler-CF89Lyp2.js +1 -0
- package/dist/web/assets/{safe-storage-DRouskD4.js → safe-storage-BpHrcFXl.js} +1 -1
- package/dist/web/assets/{sankeyDiagram-IPEJSGJF-Ct9goD-6.js → sankeyDiagram-IPEJSGJF-rYUTxo-7.js} +1 -1
- package/dist/web/assets/{sequenceDiagram-PO4LG4MO-BMO_A2FU.js → sequenceDiagram-PO4LG4MO-Dy-NGv9K.js} +1 -1
- package/dist/web/assets/{stateDiagram-v2-GCMORJYK-BSzg0zQp.js → stateDiagram-v2-GCMORJYK-_uEXf3B4.js} +1 -1
- package/dist/web/assets/{swimlanes-2SLR337P-CcmfFMci.js → swimlanes-2SLR337P-CcejXyI9.js} +1 -1
- package/dist/web/assets/swimlanesDiagram-TC7HE7FX-I9_cJ2VX.js +8 -0
- package/dist/web/assets/theme-Dv0yhgRD.js +1 -0
- package/dist/web/assets/{timeline-definition-EJHVYXUP-0dcHdY2G.js → timeline-definition-EJHVYXUP-CSry3jW1.js} +1 -1
- package/dist/web/assets/{treeView-Q6P3EWNA-KynQIJ_Z.js → treeView-Q6P3EWNA-CUCgNMVi.js} +1 -1
- package/dist/web/assets/{treemap-WGGIJYW6-DPpYRzcH.js → treemap-WGGIJYW6-BtG_xZt4.js} +1 -1
- package/dist/web/assets/use-app-theme-CSRcIN0e.js +1 -0
- package/dist/web/assets/use-panel-width-DNg6NE2M.js +1 -0
- package/dist/web/assets/use-server-events-CYiRauy1.js +1 -0
- package/dist/web/assets/use-virtual-scroll-DTEGubei.js +1 -0
- package/dist/web/assets/{usecaseDiagram-POWQR4AR-DJBtB_eN.js → usecaseDiagram-POWQR4AR-BY2X6VR2.js} +1 -1
- package/dist/web/assets/{vennDiagram-UO4OBE2U-BgllcrO_.js → vennDiagram-UO4OBE2U-D-khbRsr.js} +1 -1
- package/dist/web/assets/{vue-i18n.runtime-D0pkhc7g.js → vue-i18n.runtime-BTqPc4vG.js} +2 -2
- package/dist/web/assets/{wardley-WFR3VGLG-D2Je-cZt.js → wardley-WFR3VGLG-BwwTtxgX.js} +1 -1
- package/dist/web/assets/{wardleyDiagram-VNRHLVJA-B7ktegci.js → wardleyDiagram-VNRHLVJA-N4eN_Mx8.js} +1 -1
- package/dist/web/assets/{xychartDiagram-PMCCYNJV-DL7WkDZI.js → xychartDiagram-PMCCYNJV-Bp3do5lv.js} +1 -1
- package/dist/web/index.html +7 -7
- package/package.json +11 -3
- package/dist/web/assets/CreateReviewFabButton-UdzUa_ra.js +0 -1
- package/dist/web/assets/ErrorNotFound-BAP3n0aC.js +0 -1
- package/dist/web/assets/IndexPage-BtoeYBg2.js +0 -1
- package/dist/web/assets/IndexPage-D894ONbY.css +0 -1
- package/dist/web/assets/MainLayout-ChxXEt_Q.css +0 -1
- package/dist/web/assets/MainLayout-DjoItVv0.js +0 -7
- package/dist/web/assets/QBtn-BDbJU6_B.js +0 -1
- package/dist/web/assets/QMenu-Bh-SjGqz.js +0 -1
- package/dist/web/assets/QSelect-CZqAOLiG.js +0 -1
- package/dist/web/assets/ReviewDetailPage-DvDoJ37c.js +0 -1
- package/dist/web/assets/ReviewsPage-CHUXLKKw.js +0 -1
- package/dist/web/assets/StatusSwitcher-Br_8-_CT.js +0 -2
- package/dist/web/assets/agent-icon-BUd-vCRS.css +0 -1
- package/dist/web/assets/agent-icon-Bc3evt8o.js +0 -17
- package/dist/web/assets/agent-store-FOng_RxK.js +0 -1
- package/dist/web/assets/app-info-store-xZiQfdgO.js +0 -1
- package/dist/web/assets/architecture-7GRP2DOG-JRGyT2Fi.js +0 -1
- package/dist/web/assets/channel-C9BIu6HY.js +0 -1
- package/dist/web/assets/chunk-3FUC2YCW-DM9oDQ0E.js +0 -2
- package/dist/web/assets/create-BkZH2Q0U.js +0 -1
- package/dist/web/assets/debounce-CDIE7CV6.js +0 -1
- package/dist/web/assets/eventmodeling-NTZA5JFV-DblBuyVi.js +0 -1
- package/dist/web/assets/flowDiagram-KWPJA3E3-D5iLm5ip.js +0 -1
- package/dist/web/assets/i18n-DvBemXXT.js +0 -1
- package/dist/web/assets/index-Bn7ByP7x.js +0 -2
- package/dist/web/assets/index-CgeU6Wuu.css +0 -1
- package/dist/web/assets/init-app-C4PeiqQX.js +0 -1
- package/dist/web/assets/pinia-DB8WAJFa.js +0 -1
- package/dist/web/assets/pinia-DmTi2T44.js +0 -1
- package/dist/web/assets/railroad-abnf-HS5TGJTU-Bf3pkLrz.js +0 -1
- package/dist/web/assets/railroad-ebnf-LZEXJU2U-f10AkgiO.js +0 -1
- package/dist/web/assets/railroad-peg-WCYAUIDC-C4FjCCVf.js +0 -1
- package/dist/web/assets/runtime-core.esm-bundler-CUpq88z7.js +0 -1
- package/dist/web/assets/single-flight-r8B7stt1.js +0 -1
- package/dist/web/assets/swimlanesDiagram-TC7HE7FX-DLq4WqTk.js +0 -8
- package/dist/web/assets/theme-DQpF6lSZ.js +0 -1
- package/dist/web/assets/use-app-theme-B1Vh5WKT.js +0 -1
- package/dist/web/assets/use-panel-width-Cs_K2M_v.js +0 -1
- package/dist/web/assets/use-virtual-scroll-BVHTKnoC.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n};export{e as t};
|
package/dist/web/assets/{abnfDiagram-O67JEVCF-dyvffE6R.js → abnfDiagram-O67JEVCF-4qpB0CGh.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{m as e,t}from"./mermaid-parser.core-
|
|
1
|
+
import{m as e,t}from"./mermaid-parser.core-CY7nVQ2O.js";import{n}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as r}from"./src-oBChb5qS.js";import"./chunk-O7XYJQB3-BNcB0oiZ.js";import{n as i,r as a,t as o}from"./chunk-GTNCS2PH-DNpH8E_x.js";import{t as s}from"./chunk-JWPE2WC7-DVXcaiue.js";import"./mermaid.core-Cz083qmW.js";var c=e().RailroadAbnf.parser.LangiumParser,l=n(e=>{let t=e.alternatives.map(u);return t.length===1?t[0]:{type:`choice`,alternatives:t}},`transformAlternation`),u=n(e=>{let t=e.elements.map(f);return t.length===1?t[0]:{type:`sequence`,elements:t}},`transformConcatenation`),d=n(e=>{if(e.includes(`*`)){let[t,n]=e.split(`*`);return{min:t?parseInt(t,10):0,max:n?parseInt(n,10):1/0}}let t=parseInt(e,10);return{min:t,max:t}},`parseRepeat`),f=n(e=>{let t=p(e.primary);if(!e.repeat)return t;let{min:n,max:r}=d(e.repeat);return n===0&&r===1?{type:`optional`,element:t}:{type:`repetition`,element:t,min:n,max:r}},`transformElement`),p=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 l(e.element);case`AbnfOptionalGroup`:return{type:`optional`,element:l(e.element)};default:throw Error(`Unsupported ABNF primary node: ${e.$type}`)}},`transformPrimary`),m=n(e=>({name:e.name,definition:l(e.definition)}),`transformRule`),h=n(e=>{s(e,o),e.title&&o.setTitle(e.title),e.rules.map(e=>o.addRule(m(e)))},`populateDb`),g={parser:{parse:n(e=>{o.clear(),r.debug(`[ABNF Parser] Starting Langium parse`);let n=c.parse(e);if(n.lexerErrors.length>0||n.parserErrors.length>0)throw new t(n);let i=n.value;r.debug(`[ABNF Parser] Parsed rules:`,i.rules.length),h(i),r.debug(`[ABNF Parser] Parse complete`)},`parse`),parser:{yy:o}},db:o,renderer:a,styles:i};export{g as diagram};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{at as e,rt as t,s as n}from"./runtime-core.esm-bundler-CF89Lyp2.js";import{t as r}from"./debounce-rZaFFwsz.js";import{n as i}from"./pinia-ri8AYppz.js";import{c as a,f as o,l as s,n as c,o as ee,p as l,s as u,u as d}from"./use-server-events-CYiRauy1.js";import{t as f}from"./safe-storage-BpHrcFXl.js";var p=10485760;function m(e){return`tool:${e}`}function h(){return{items:[],permissions:[],status:`starting`,usage:null,config:[],autoApprove:!1,lastEventId:0,lastStopReason:null}}function g(e,t){if(t.id<=e.lastEventId)return;e.lastEventId=t.id;let{event:n}=t,r=`ev:${t.id}`;switch(n.type){case`status`:e.status=n.status;break;case`config`:e.config=n.options;break;case`user`:e.items.push({kind:`user`,id:r,text:n.text,context:n.context});break;case`message`:{let t=e.items.at(-1),i=n.role;t&&t.kind===i?t.text+=n.text:e.items.push({kind:i,id:r,text:n.text});break}case`tool`:{let t=e.items.find(e=>e.kind===`tool`&&e.id===m(n.toolCallId));t?(n.title&&(t.title=n.title),n.kind&&(t.toolKind=n.kind),n.status&&(t.status=n.status),n.locations&&(t.locations=n.locations),n.diffs&&(t.diffs=n.diffs),n.output!==void 0&&(t.output=n.output)):e.items.push({kind:`tool`,id:m(n.toolCallId),title:n.title??``,toolKind:n.kind,status:n.status??`pending`,locations:n.locations??[],diffs:n.diffs??[],output:n.output});break}case`permission`:e.permissions.some(e=>e.requestId===n.requestId)||e.permissions.push({requestId:n.requestId,toolCallId:n.toolCallId,title:n.title,options:n.options,diffs:n.diffs});break;case`permission-resolved`:e.permissions=e.permissions.filter(e=>e.requestId!==n.requestId);break;case`auto-approve`:e.autoApprove=n.enabled;break;case`auto-approved`:e.items.push({kind:`auto-approved`,id:r,title:n.title});break;case`usage`:e.usage={used:n.used,size:n.size,cost:n.cost};break;case`stop`:e.lastStopReason=n.stopReason;break;case`error`:e.items.push({kind:`error`,id:r,text:n.message})}}function _(e,t){e.status=t.status,e.autoApprove=t.autoApprove,e.config=t.config,e.permissions=t.permissions.map(({requestId:e,toolCallId:t,title:n,options:r,diffs:i})=>({requestId:e,toolCallId:t,title:n,options:r,diffs:i}))}function te(e){let t;try{t=JSON.parse(e)}catch{return null}return l(t)&&typeof t.sessionId==`string`&&typeof t.status==`string`&&typeof t.autoApprove==`boolean`&&Array.isArray(t.config)&&Array.isArray(t.permissions)?t:null}function v(e){return JSON.stringify(e)}function y(e,t){let n=new Set,r=[];for(let i of[...e,...t]){let e=v(i);n.has(e)||(n.add(e),r.push(i))}return r}function ne(e){return e.some(e=>e.kind===`user`&&e.context.some(e=>e.kind===`review`))}function b(e){let t=x(e);if(!t)return null;let{sessionId:n}=t;return typeof n==`string`&&n!==``?{...t,sessionId:n}:null}function x(e){let t;try{t=JSON.parse(e)}catch{return null}return l(t)&&typeof t.id==`number`&&l(t.event)&&typeof t.event.type==`string`?t:null}var S=`githuman.agent.activeChat`,C=2e3,w=2e3,T=i(`agent`,()=>{let i=e([]),p=e(!1),m=e({}),x=e([]),T=e(null),E=e(!1),D=e(!1),O=e(null),k=e({open:!1,context:[]}),A=null,j=!1,M=r(()=>{j=!1,X()},C),N=!1,P=!1,F=0,I=new Set,L=new Map,R=new Map,z=n(()=>x.value.flatMap(e=>{let t=m.value[e];return t?[t]:[]})),B=n(()=>T.value===null?null:m.value[T.value]??null),V=n(()=>x.value.length<5);function H(e){let t=m.value[e.id];if(t)return t.info=e,t;let n=h();n.status=e.status,n.autoApprove=e.autoApprove,m.value[e.id]={info:e,chat:n,pendingContext:[],error:null,reviewStale:!1,closing:!1,seq:++F},x.value.push(e.id);let r=m.value[e.id];if(!r)throw Error(`unreachable: chat was just registered`);let i=R.get(e.id);i&&_(r.chat,i),R.delete(e.id);for(let t of L.get(e.id)??[])g(r.chat,t);return L.delete(e.id),r}function U(e){let t=x.value.indexOf(e);t!==-1&&(x.value.splice(t,1),delete m.value[e],L.delete(e),R.delete(e),T.value===e&&W(x.value[t]??x.value[t-1]??null))}function W(e){T.value=e,e===null?f.remove(S):f.set(S,e)}function G(e){m.value[e]&&(W(e),E.value=!0)}let K=ee(async()=>{let e=F,t;try{t=await d(`/api/agent/sessions`)}catch(e){O.value=u(e);return}let n=new Set(t.map(e=>e.id));for(let e of t)I.has(e.id)||H(e);let r=x.value.filter(t=>!n.has(t)&&(m.value[t]?.seq??0)<=e);for(let e of r)U(e);for(let e of L.keys())n.has(e)||L.delete(e);for(let e of R.keys())n.has(e)||R.delete(e);if(T.value===null||!m.value[T.value]){let e=f.get(S);W((e!==null&&m.value[e]?e:null)??x.value[0]??null)}});function q(e){let t=m.value[e.sessionId];if(t){g(t.chat,e);return}if(I.has(e.sessionId))return;let n=L.get(e.sessionId)??[];n.length<w&&n.push(e),L.set(e.sessionId,n),K()}function J(){N||j||(j=!0,M())}function Y(){N=!0,M.cancel(),j=!1,A?.close(),A=null}function X(){if(N||A)return;M.cancel(),j=!1;let e=new EventSource(`/api/agent/events`);e.addEventListener(`agent`,t=>{if(A!==e||!(t instanceof MessageEvent))return;let n=b(String(t.data));n&&q(n)}),e.addEventListener(`gap`,t=>{if(A===e&&t instanceof MessageEvent)try{let e=JSON.parse(String(t.data)),n=l(e)&&typeof e.sessionId==`string`?e.sessionId:null,r=n===null?void 0:m.value[n];r?Object.assign(r.chat,h()):n!==null&&L.delete(n)}catch{}}),e.addEventListener(`state`,t=>{if(A!==e||!(t instanceof MessageEvent))return;let n=te(String(t.data));if(!n)return;let r=m.value[n.sessionId];r?_(r.chat,n):I.has(n.sessionId)||R.set(n.sessionId,n)}),e.addEventListener(`sessions`,()=>{A===e&&K()}),e.addEventListener(`open`,()=>{A===e&&K()}),e.addEventListener(`error`,()=>{A===e&&e.readyState===EventSource.CLOSED&&(A=null,J())}),A=e}async function re(){try{i.value=await d(`/api/agent/presets`)}catch(e){if(N)return;p.value=!1,e instanceof a&&e.status===404||(O.value=u(e));return}N||(p.value=!0,await K(),!N&&(X(),P||(P=!0,c([`files:changed`],$))))}function Z(e=[]){return V.value?(k.value={open:!0,context:e},!0):!1}function ie(){k.value={open:!1,context:[]}}async function ae(e,t,n=[]){if(D.value)throw Error(`A chat is already being created`);D.value=!0,O.value=null;try{let r=await o(`/api/agent/sessions`,{presetId:e,name:t}),i=H(r);return i.pendingContext=y(i.pendingContext,n),G(r.id),r.id}catch(e){throw O.value=u(e),e}finally{D.value=!1}}async function oe(e){let t=m.value[e];if(t&&!t.closing){t.closing=!0;try{await s(`/api/agent/sessions/${e}`)}catch(e){if(!(e instanceof a&&e.status===404))throw t.closing=!1,t.error=u(e),e}I.add(e),U(e)}}async function se(e,t=[],n=T.value){let r=n===null?void 0:m.value[n],i=e.trim();if(!r||i===``||r.chat.status!==`ready`)return!1;r.error=null;let a=y(r.pendingContext,t),s={text:i,context:a};try{await o(`/api/agent/sessions/${r.info.id}/prompt`,s);let e=new Set(a.map(v));return r.pendingContext=r.pendingContext.filter(t=>!e.has(v(t))),!0}catch(e){throw r.error=u(e),e}}async function ce(e=T.value){let t=e===null?void 0:m.value[e];t&&t.chat.status===`busy`&&await o(`/api/agent/sessions/${t.info.id}/cancel`)}async function Q(e,t,n=T.value){let r=n===null?void 0:m.value[n];if(!r)return;let i=t===void 0?{}:{optionId:t};await o(`/api/agent/sessions/${r.info.id}/permissions/${e}`,i)}async function le(e,t,n=T.value){let r=n===null?void 0:m.value[n];if(!r||r.chat.status!==`ready`)return;r.error=null;let i={configId:e,value:t};try{await o(`/api/agent/sessions/${r.info.id}/config`,i)}catch(e){throw r.error=u(e),e}}async function ue(e,t=T.value){let n=t===null?void 0:m.value[t];if(!n)return;let r={enabled:e};await o(`/api/agent/sessions/${n.info.id}/auto-approve`,r)}function de(e,t){let n=t===void 0?B.value:m.value[t];if(t!==void 0&&!n)return`missing`;if(!n)return Z([e])?`dialog`:`limit`;let r=v(e);return n.pendingContext.some(e=>v(e)===r)||n.pendingContext.push(e),E.value=!0,`added`}function fe(e,t=T.value){(t===null?void 0:m.value[t])?.pendingContext.splice(e,1)}function $(){for(let e of Object.values(m.value))ne(e.chat.items)&&(e.reviewStale=!0)}return t(Y),{presets:i,enabled:p,chats:m,order:x,list:z,activeId:T,activeChat:B,canAddChat:V,panelOpen:E,creating:D,error:O,newChatDialog:k,init:re,refreshSessions:K,openNewChatDialog:Z,closeNewChatDialog:ie,createChat:ae,closeChat:oe,selectChat:W,openChat:G,send:se,cancel:ce,answerPermission:Q,setConfig:le,setAutoApprove:ue,addContext:de,removeContext:fe,markWorktreeChanged:$}});export{p as n,T as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{at as e,rt as t}from"./runtime-core.esm-bundler-CF89Lyp2.js";import{n}from"./pinia-ri8AYppz.js";import{f as r,i,o as a,p as o,s,u as c}from"./use-server-events-CYiRauy1.js";import{t as l}from"./safe-storage-BpHrcFXl.js";var u=n(`repository`,()=>{let t=e(null),n=e(!1),r=e(null);return{info:t,loading:n,error:r,fetchInfo:a(async()=>{n.value=!0,r.value=null;try{t.value=await c(`/api/git/info`)}catch(e){t.value=null,r.value=s(e)}finally{n.value=!1}})}}),d=5e3,f=class{socket=null;stopped=!1;generation=0;retry;attempts=0;messages=new Set;states=new Set;token;socketFactory;origin;constructor(e=()=>r(`/api/terminal/token`),t=e=>new WebSocket(e),n=()=>window.location.origin){this.token=e,this.socketFactory=t,this.origin=n}onMessage(e){return this.messages.add(e),()=>this.messages.delete(e)}onState(e){return this.states.add(e),()=>this.states.delete(e)}state(e,t){for(let n of this.states)n(e,t)}connect(){if(this.stopped||this.socket)return;let e=++this.generation;this.state(`connecting`),this.token().then(({token:t})=>{if(this.stopped||e!==this.generation)return;let n=new URL(`/api/terminal/ws`,this.origin());n.protocol=n.protocol===`https:`?`wss:`:`ws:`,n.searchParams.set(`token`,t);let r=this.socketFactory(n.href);this.socket=r,r.addEventListener(`open`,()=>{this.attempts=0,this.state(`connected`)}),r.addEventListener(`message`,e=>{try{let t=JSON.parse(String(e.data));for(let e of this.messages)e(t)}catch{r.close()}}),r.addEventListener(`close`,()=>{this.socket===r&&(this.socket=null,this.reconnect())}),r.addEventListener(`error`,()=>{r.close()})}).catch(t=>{e===this.generation&&this.reconnect(s(t))})}reconnect(e){this.state(`disconnected`,e),!this.stopped&&(clearTimeout(this.retry),this.retry=setTimeout(()=>this.connect(),Math.min(1e4,500*2**this.attempts++)+Math.random()*250))}send(e){return this.socket?.readyState===WebSocket.OPEN?this.socket.bufferedAmount>131072?(this.socket.close(),!1):(this.socket.send(JSON.stringify(e)),!0):!1}close(){this.stopped=!0,this.generation++,clearTimeout(this.retry),this.socket?.close(),this.socket=null,this.messages.clear(),this.states.clear()}},p=900,m=520,h=24,g=80,{between:_}=i,v=[`n`,`e`,`s`,`w`,`ne`,`nw`,`se`,`sw`];function y(e){return{width:e.width,height:Math.max(0,e.height-50)}}function b(e){let t=y(e);return{width:Math.min(240,t.width),height:Math.min(180,t.height)}}function x(e,t){let n=e??{width:_(t.width-h,240,p),height:_(t.height-g,180,m)},r=y(t);return{width:Math.min(n.width,r.width),height:Math.min(n.height,r.height)}}function S(e,t,n){return{x:_(e.x,0,Math.max(0,n.width-t.width)),y:_(e.y,50,Math.max(50,n.height-t.height))}}function C(e,t,n,r){let i=b(r),a=e.x,o=e.y,s=e.x+e.width,c=e.y+e.height;return t.includes(`w`)&&(a=_(a+n.x,0,s-i.width)),t.includes(`e`)&&(s=_(s+n.x,a+i.width,r.width)),t.includes(`n`)&&(o=_(o+n.y,50,c-i.height)),t.includes(`s`)&&(c=_(c+n.y,o+i.height,r.height)),{x:a,y:o,width:s-a,height:c-o}}function w(e){let t=e.trim().replace(/\s*[$#%>]\s*$/,``),n=t.match(/^[^\s/]+@[^:]+:\s*(.+)$/)?.[1]??t;return n.replace(/\/+$/,``).split(`/`).at(-1)||n}var T=`githuman:terminal-window`;function E(e){if(!o(e))return null;let{x:t,y:n}=e;return typeof t==`number`&&Number.isFinite(t)&&typeof n==`number`&&Number.isFinite(n)?{x:t,y:n}:null}function D(e){if(!o(e))return null;let{width:t,height:n}=e;return typeof t==`number`&&typeof n==`number`&&t>=240&&n>=180&&Number.isFinite(t)&&Number.isFinite(n)?{width:t,height:n}:null}var O=n(`terminal`,()=>{let n=e(!1),r=e([]),i=e(null),a=e(!1),s=e(!1),c=e(`disconnected`),u=e(null),d=e(!1),p=e({x:260,y:120}),m=e(!1),h=e(null),g=e(!1),_=e(null),v=null,y=null,b=0,x=new Set,S=new Map,C=new Set;function w(){l.set(T,JSON.stringify({position:p.value,windowSize:h.value,minimized:a.value,activeId:i.value}))}function O(e,t){if(e&&!v){n.value=!0;try{let e=JSON.parse(l.get(T)??`null`);o(e)&&(p.value=E(e.position)??p.value,h.value=D(e.windowSize)??h.value,typeof e.minimized==`boolean`&&(a.value=e.minimized),typeof e.activeId==`string`&&(i.value=e.activeId))}catch{}v=t??new f,v.onState((e,t)=>{c.value=e,u.value=t?{text:t}:null,e!==`connected`&&(x.clear(),C.clear(),d.value=!1,y=null)}),v.onMessage(M),v.connect()}}function k(e){let t=v?.send(e)??!1;return t||(u.value={key:`unavailable`}),t}function A(e){let t=i.value;r.value=e;let n=new Set(e.map(e=>e.id));for(let e of x)n.has(e)||x.delete(e);(!i.value||!n.has(i.value))&&(i.value=e[0]?.id??null),s.value=e.length>0;for(let t of e)x.has(t.id)||(x.add(t.id),k({type:`subscribe`,terminalId:t.id}));i.value!==t&&w()}function j(e){let t=S.get(e.terminalId);e.type===`snapshot`?(C.delete(e.terminalId),t?.(e),P(e.terminalId,e.sequence)):t&&!C.has(e.terminalId)?t(e):P(e.terminalId,e.sequence)}function M(e){switch(e.type){case`list`:A(e.sessions);break;case`created`:if(e.requestId!==y)break;i.value=e.terminalId,d.value=!1,y=null,s.value=!0,a.value=!1,w();break;case`error`:u.value={text:e.message},e.requestId===y&&(d.value=!1,y=null);break;case`title`:{let t=r.value.find(t=>t.id===e.terminalId);t&&(t.title=e.title);break}case`snapshot`:case`output`:j(e);break;case`exit`:r.value=r.value.filter(t=>t.id!==e.terminalId),x.delete(e.terminalId),S.delete(e.terminalId),C.delete(e.terminalId)}}function N(e,t){return S.set(e,t),C.add(e),c.value===`connected`&&k({type:`snapshot`,terminalId:e}),()=>{S.get(e)===t&&S.delete(e),C.delete(e)}}function P(e,t){k({type:`ack`,terminalId:e,sequence:t})}function F(){d.value||c.value!==`connected`||r.value.length>=8||(d.value=!0,y=`create-${++b}`,k({type:`create`,requestId:y,cols:100,rows:28})||(d.value=!1,y=null))}function I(){n.value&&(s.value=!0,a.value=!1,r.value.length||F(),w())}function L(){a.value=!0,w()}function R(e){i.value=e,w()}function z(e){k({type:`close`,terminalId:e,requestId:`close-${++b}`})}return t(()=>{v?.close(),S.clear()}),{enabled:n,sessions:r,activeId:i,minimized:a,open:s,state:c,error:u,creating:d,position:p,originalColors:m,windowSize:h,maximized:g,dockPosition:_,init:O,send:k,show:I,minimize:L,activate:R,close:z,create:F,attachView:N,acknowledge:P,remember:w}}),k=n(`appInfo`,()=>{let t=e(null),n=e(!1),r=e(null);async function i(){n.value=!0,r.value=null;try{let e=await c(`/api/app-info`);t.value=e.version,O().init(e.terminal?.available)}catch(e){t.value=null,r.value=s(e)}finally{n.value=!1}}return{version:t,loading:n,error:r,fetchInfo:i}});export{C as a,d as c,S as i,u as l,O as n,w as o,v as r,x as s,k as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./chunk-FOHPRMQF-CoA4358r.js";import{M as e}from"./mermaid-parser.core-CY7nVQ2O.js";export{e as createArchitectureServices};
|