@jait/gateway 0.1.321 → 0.1.322

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/package.json +1 -1
  2. package/web-dist/assets/{_basePickBy-DqYuKg37.js → _basePickBy-pBXH9Xdk.js} +1 -1
  3. package/web-dist/assets/{_baseUniq-CAeucxvV.js → _baseUniq-bhd5WbZq.js} +1 -1
  4. package/web-dist/assets/{arc-CJZJ47th.js → arc-DBuRB1ee.js} +1 -1
  5. package/web-dist/assets/{architectureDiagram-2XIMDMQ5-BggCB43_.js → architectureDiagram-2XIMDMQ5-DYYp8d2u.js} +1 -1
  6. package/web-dist/assets/{blockDiagram-WCTKOSBZ-BnR3zASP.js → blockDiagram-WCTKOSBZ-De228qTb.js} +1 -1
  7. package/web-dist/assets/{c4Diagram-IC4MRINW-DcfrLcSD.js → c4Diagram-IC4MRINW-tscVR0CV.js} +1 -1
  8. package/web-dist/assets/channel-BfipQyqG.js +1 -0
  9. package/web-dist/assets/{chunk-4BX2VUAB-C2sQPHMz.js → chunk-4BX2VUAB-Exr_Ix3w.js} +1 -1
  10. package/web-dist/assets/{chunk-55IACEB6-Bcpr1wze.js → chunk-55IACEB6-Chiy1aiJ.js} +1 -1
  11. package/web-dist/assets/{chunk-FMBD7UC4-CI90UWoX.js → chunk-FMBD7UC4-DRbcG0ec.js} +1 -1
  12. package/web-dist/assets/{chunk-JSJVCQXG-BmLGFRX3.js → chunk-JSJVCQXG-CGmtRQ-m.js} +1 -1
  13. package/web-dist/assets/{chunk-KX2RTZJC-BSHZHIU2.js → chunk-KX2RTZJC-lZwvxdGq.js} +1 -1
  14. package/web-dist/assets/{chunk-NQ4KR5QH-DhuxrvLH.js → chunk-NQ4KR5QH-CAPb9Nzk.js} +1 -1
  15. package/web-dist/assets/{chunk-QZHKN3VN-Bc_7kIDX.js → chunk-QZHKN3VN-BBnV1b52.js} +1 -1
  16. package/web-dist/assets/{chunk-WL4C6EOR-CY_xcsxd.js → chunk-WL4C6EOR-DvzUUOCF.js} +1 -1
  17. package/web-dist/assets/classDiagram-VBA2DB6C-BQ_dcoDu.js +1 -0
  18. package/web-dist/assets/classDiagram-v2-RAHNMMFH-BQ_dcoDu.js +1 -0
  19. package/web-dist/assets/clone-DVv52-UO.js +1 -0
  20. package/web-dist/assets/{cose-bilkent-S5V4N54A-B2pswFgf.js → cose-bilkent-S5V4N54A-68vIQuVf.js} +1 -1
  21. package/web-dist/assets/{dagre-KLK3FWXG-B_mm1iyq.js → dagre-KLK3FWXG-C5KN8CH-.js} +1 -1
  22. package/web-dist/assets/{diagram-E7M64L7V-BHrtFCGY.js → diagram-E7M64L7V-C7dPZ_kU.js} +1 -1
  23. package/web-dist/assets/{diagram-IFDJBPK2-BPaeYs9k.js → diagram-IFDJBPK2-DfAnycK1.js} +1 -1
  24. package/web-dist/assets/{diagram-P4PSJMXO-CoJfUz1J.js → diagram-P4PSJMXO-KS_0Knri.js} +1 -1
  25. package/web-dist/assets/{erDiagram-INFDFZHY-C1mGGfuV.js → erDiagram-INFDFZHY-B4ln8GEH.js} +1 -1
  26. package/web-dist/assets/{flowDiagram-PKNHOUZH-C8E940FU.js → flowDiagram-PKNHOUZH-D-vEhWXW.js} +1 -1
  27. package/web-dist/assets/{ganttDiagram-A5KZAMGK-lsxut-te.js → ganttDiagram-A5KZAMGK-Bj899JeY.js} +1 -1
  28. package/web-dist/assets/{gitGraphDiagram-K3NZZRJ6-WAIA_EDl.js → gitGraphDiagram-K3NZZRJ6-CE7PvMtY.js} +1 -1
  29. package/web-dist/assets/{graph-DnOLJvId.js → graph-BkHpfg-I.js} +1 -1
  30. package/web-dist/assets/index-B4LDZCMn.css +32 -0
  31. package/web-dist/assets/{index-Cjh6YjA3.js → index-CXqaXSdQ.js} +5 -5
  32. package/web-dist/assets/{infoDiagram-LFFYTUFH-DAYPFri7.js → infoDiagram-LFFYTUFH-CEhE__0L.js} +1 -1
  33. package/web-dist/assets/{ishikawaDiagram-PHBUUO56-vWJG7ZId.js → ishikawaDiagram-PHBUUO56-CXJZ5j4h.js} +1 -1
  34. package/web-dist/assets/{journeyDiagram-4ABVD52K-CkOKI0GQ.js → journeyDiagram-4ABVD52K-k37UkiLR.js} +1 -1
  35. package/web-dist/assets/{kanban-definition-K7BYSVSG-D-lG42qT.js → kanban-definition-K7BYSVSG-DpvMA_RV.js} +1 -1
  36. package/web-dist/assets/{layout-vKh9YxQS.js → layout-Xoaf8rua.js} +1 -1
  37. package/web-dist/assets/{linear-C7DESrz9.js → linear-Be_HTHcu.js} +1 -1
  38. package/web-dist/assets/{mindmap-definition-YRQLILUH-B6-Jp-gS.js → mindmap-definition-YRQLILUH-A3awregK.js} +1 -1
  39. package/web-dist/assets/{pieDiagram-SKSYHLDU-CdEt4jXx.js → pieDiagram-SKSYHLDU-BDkWKQxj.js} +1 -1
  40. package/web-dist/assets/{quadrantDiagram-337W2JSQ-COpDolym.js → quadrantDiagram-337W2JSQ-CxtaLznn.js} +1 -1
  41. package/web-dist/assets/{requirementDiagram-Z7DCOOCP-6fH45fuw.js → requirementDiagram-Z7DCOOCP-DEJRaUqC.js} +1 -1
  42. package/web-dist/assets/{sankeyDiagram-WA2Y5GQK-CcVfHwuS.js → sankeyDiagram-WA2Y5GQK-DCyLHPB4.js} +1 -1
  43. package/web-dist/assets/{sequenceDiagram-2WXFIKYE-Dh5ZCrw5.js → sequenceDiagram-2WXFIKYE-v_aeEc1X.js} +1 -1
  44. package/web-dist/assets/{stateDiagram-RAJIS63D-B4pzyUVO.js → stateDiagram-RAJIS63D-CQhLl93Z.js} +1 -1
  45. package/web-dist/assets/stateDiagram-v2-FVOUBMTO-CmkHVf0O.js +1 -0
  46. package/web-dist/assets/{timeline-definition-YZTLITO2-D-djwhRp.js → timeline-definition-YZTLITO2-DSwPp95l.js} +1 -1
  47. package/web-dist/assets/{treemap-KZPCXAKY-YjnKAro2.js → treemap-KZPCXAKY-Cd_0mFOI.js} +1 -1
  48. package/web-dist/assets/{vennDiagram-LZ73GAT5-PvZjAvwQ.js → vennDiagram-LZ73GAT5-CmNDpWuq.js} +1 -1
  49. package/web-dist/assets/{xychartDiagram-JWTSCODW-Cj5Ew7sU.js → xychartDiagram-JWTSCODW-Bksk64Qe.js} +1 -1
  50. package/web-dist/index.html +2 -2
  51. package/web-dist/assets/channel-BzqujRwQ.js +0 -1
  52. package/web-dist/assets/classDiagram-VBA2DB6C-1QOu-ssk.js +0 -1
  53. package/web-dist/assets/classDiagram-v2-RAHNMMFH-1QOu-ssk.js +0 -1
  54. package/web-dist/assets/clone-DuihtWIP.js +0 -1
  55. package/web-dist/assets/index-DvocPyQi.css +0 -32
  56. package/web-dist/assets/stateDiagram-v2-FVOUBMTO-Bsf8fXIh.js +0 -1
@@ -1,4 +1,4 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./angular-html-DA-rfuFy.js","./html-pp8916En.js","./javascript-wDzz0qaB.js","./css-CLj8gQPS.js","./angular-ts-BrjP3tb8.js","./scss-D5BDwBP9.js","./astro-HNnZUWAn.js","./json-Cp-IABpG.js","./typescript-BPQ3VLAy.js","./postcss-CXtECtnM.js","./tsx-COt5Ahok.js","./blade-BjGOyj-B.js","./html-derivative-DlHx6ybY.js","./xml-sdJ4AIDG.js","./java-CylS5w8V.js","./sql-BLtJtn59.js","./coffee-Ch7k5sss.js","./cpp-CofmeUqb.js","./regexp-CDVJQ6XC.js","./glsl-DplSGwfg.js","./c-BIGW1oBm.js","./graphql-ChdNCCLP.js","./jsx-g9-lgVsj.js","./haml-D5jkg6IW.js","./handlebars-BpdQsYii.js","./yaml-Buea-lGh.js","./http-jrhK8wxY.js","./shellscript-Yzrsuije.js","./hurl-irOxFIW8.js","./csv-fuZLfV_i.js","./jinja-f2NsQr07.js","./jison-wvAkD_A8.js","./julia-CxzCAyBv.js","./python-B6aJPvgy.js","./r-Dspwwk_N.js","./marko-DjSrsDqO.js","./less-B1dDrJ26.js","./mdc-DTYItulj.js","./markdown-Cvjx9yec.js","./php-R6g_5hLQ.js","./pug-DKIMFp6K.js","./svelte-Cy7k_4gC.js","./ts-tags-DQrlYJgV.js","./vue-D2xRrEX4.js","./vue-html-AaS7Mt5G.js","./vue-vine-BoDAl6tE.js","./stylus-BEDo0Tqx.js","./dagre-KLK3FWXG-B_mm1iyq.js","./graph-DnOLJvId.js","./_baseUniq-CAeucxvV.js","./layout-vKh9YxQS.js","./_basePickBy-DqYuKg37.js","./clone-DuihtWIP.js","./cose-bilkent-S5V4N54A-B2pswFgf.js","./cytoscape.esm-BQaXIfA_.js","./c4Diagram-IC4MRINW-DcfrLcSD.js","./chunk-JSJVCQXG-BmLGFRX3.js","./flowDiagram-PKNHOUZH-C8E940FU.js","./chunk-FMBD7UC4-CI90UWoX.js","./chunk-55IACEB6-Bcpr1wze.js","./chunk-KX2RTZJC-BSHZHIU2.js","./channel-BzqujRwQ.js","./erDiagram-INFDFZHY-C1mGGfuV.js","./gitGraphDiagram-K3NZZRJ6-WAIA_EDl.js","./chunk-4BX2VUAB-C2sQPHMz.js","./chunk-QZHKN3VN-Bc_7kIDX.js","./treemap-KZPCXAKY-YjnKAro2.js","./ganttDiagram-A5KZAMGK-lsxut-te.js","./linear-C7DESrz9.js","./defaultLocale-DX6XiGOO.js","./infoDiagram-LFFYTUFH-DAYPFri7.js","./pieDiagram-SKSYHLDU-CdEt4jXx.js","./arc-CJZJ47th.js","./quadrantDiagram-337W2JSQ-COpDolym.js","./xychartDiagram-JWTSCODW-Cj5Ew7sU.js","./requirementDiagram-Z7DCOOCP-6fH45fuw.js","./sequenceDiagram-2WXFIKYE-Dh5ZCrw5.js","./classDiagram-VBA2DB6C-1QOu-ssk.js","./chunk-WL4C6EOR-CY_xcsxd.js","./classDiagram-v2-RAHNMMFH-1QOu-ssk.js","./stateDiagram-RAJIS63D-B4pzyUVO.js","./chunk-NQ4KR5QH-DhuxrvLH.js","./stateDiagram-v2-FVOUBMTO-Bsf8fXIh.js","./journeyDiagram-4ABVD52K-CkOKI0GQ.js","./timeline-definition-YZTLITO2-D-djwhRp.js","./mindmap-definition-YRQLILUH-B6-Jp-gS.js","./kanban-definition-K7BYSVSG-D-lG42qT.js","./diagram-P4PSJMXO-CoJfUz1J.js","./diagram-IFDJBPK2-BPaeYs9k.js","./blockDiagram-WCTKOSBZ-BnR3zASP.js","./architectureDiagram-2XIMDMQ5-BggCB43_.js","./diagram-E7M64L7V-BHrtFCGY.js"])))=>i.map(i=>d[i]);
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./angular-html-DA-rfuFy.js","./html-pp8916En.js","./javascript-wDzz0qaB.js","./css-CLj8gQPS.js","./angular-ts-BrjP3tb8.js","./scss-D5BDwBP9.js","./astro-HNnZUWAn.js","./json-Cp-IABpG.js","./typescript-BPQ3VLAy.js","./postcss-CXtECtnM.js","./tsx-COt5Ahok.js","./blade-BjGOyj-B.js","./html-derivative-DlHx6ybY.js","./xml-sdJ4AIDG.js","./java-CylS5w8V.js","./sql-BLtJtn59.js","./coffee-Ch7k5sss.js","./cpp-CofmeUqb.js","./regexp-CDVJQ6XC.js","./glsl-DplSGwfg.js","./c-BIGW1oBm.js","./graphql-ChdNCCLP.js","./jsx-g9-lgVsj.js","./haml-D5jkg6IW.js","./handlebars-BpdQsYii.js","./yaml-Buea-lGh.js","./http-jrhK8wxY.js","./shellscript-Yzrsuije.js","./hurl-irOxFIW8.js","./csv-fuZLfV_i.js","./jinja-f2NsQr07.js","./jison-wvAkD_A8.js","./julia-CxzCAyBv.js","./python-B6aJPvgy.js","./r-Dspwwk_N.js","./marko-DjSrsDqO.js","./less-B1dDrJ26.js","./mdc-DTYItulj.js","./markdown-Cvjx9yec.js","./php-R6g_5hLQ.js","./pug-DKIMFp6K.js","./svelte-Cy7k_4gC.js","./ts-tags-DQrlYJgV.js","./vue-D2xRrEX4.js","./vue-html-AaS7Mt5G.js","./vue-vine-BoDAl6tE.js","./stylus-BEDo0Tqx.js","./dagre-KLK3FWXG-C5KN8CH-.js","./graph-BkHpfg-I.js","./_baseUniq-bhd5WbZq.js","./layout-Xoaf8rua.js","./_basePickBy-pBXH9Xdk.js","./clone-DVv52-UO.js","./cose-bilkent-S5V4N54A-68vIQuVf.js","./cytoscape.esm-BQaXIfA_.js","./c4Diagram-IC4MRINW-tscVR0CV.js","./chunk-JSJVCQXG-CGmtRQ-m.js","./flowDiagram-PKNHOUZH-D-vEhWXW.js","./chunk-FMBD7UC4-DRbcG0ec.js","./chunk-55IACEB6-Chiy1aiJ.js","./chunk-KX2RTZJC-lZwvxdGq.js","./channel-BfipQyqG.js","./erDiagram-INFDFZHY-B4ln8GEH.js","./gitGraphDiagram-K3NZZRJ6-CE7PvMtY.js","./chunk-4BX2VUAB-Exr_Ix3w.js","./chunk-QZHKN3VN-BBnV1b52.js","./treemap-KZPCXAKY-Cd_0mFOI.js","./ganttDiagram-A5KZAMGK-Bj899JeY.js","./linear-Be_HTHcu.js","./defaultLocale-DX6XiGOO.js","./infoDiagram-LFFYTUFH-CEhE__0L.js","./pieDiagram-SKSYHLDU-BDkWKQxj.js","./arc-DBuRB1ee.js","./quadrantDiagram-337W2JSQ-CxtaLznn.js","./xychartDiagram-JWTSCODW-Bksk64Qe.js","./requirementDiagram-Z7DCOOCP-DEJRaUqC.js","./sequenceDiagram-2WXFIKYE-v_aeEc1X.js","./classDiagram-VBA2DB6C-BQ_dcoDu.js","./chunk-WL4C6EOR-DvzUUOCF.js","./classDiagram-v2-RAHNMMFH-BQ_dcoDu.js","./stateDiagram-RAJIS63D-CQhLl93Z.js","./chunk-NQ4KR5QH-CAPb9Nzk.js","./stateDiagram-v2-FVOUBMTO-CmkHVf0O.js","./journeyDiagram-4ABVD52K-k37UkiLR.js","./timeline-definition-YZTLITO2-DSwPp95l.js","./mindmap-definition-YRQLILUH-A3awregK.js","./kanban-definition-K7BYSVSG-DpvMA_RV.js","./diagram-P4PSJMXO-KS_0Knri.js","./diagram-IFDJBPK2-DfAnycK1.js","./blockDiagram-WCTKOSBZ-De228qTb.js","./architectureDiagram-2XIMDMQ5-DYYp8d2u.js","./diagram-E7M64L7V-C7dPZ_kU.js"])))=>i.map(i=>d[i]);
2
2
  var ehe=Object.defineProperty;var the=(e,r,n)=>r in e?ehe(e,r,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[r]=n;var He=(e,r,n)=>the(e,typeof r!="symbol"?r+"":r,n);function rhe(e,r){for(var n=0;n<r.length;n++){const i=r[n];if(typeof i!="string"&&!Array.isArray(i)){for(const s in i)if(s!=="default"&&!(s in e)){const o=Object.getOwnPropertyDescriptor(i,s);o&&Object.defineProperty(e,s,o.get?o:{enumerable:!0,get:()=>i[s]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const r=document.createElement("link").relList;if(r&&r.supports&&r.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))i(s);new MutationObserver(s=>{for(const o of s)if(o.type==="childList")for(const a of o.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&i(a)}).observe(document,{childList:!0,subtree:!0});function n(s){const o={};return s.integrity&&(o.integrity=s.integrity),s.referrerPolicy&&(o.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?o.credentials="include":s.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function i(s){if(s.ep)return;s.ep=!0;const o=n(s);fetch(s.href,o)}})();function T0(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Cyt(e){if(Object.prototype.hasOwnProperty.call(e,"__esModule"))return e;var r=e.default;if(typeof r=="function"){var n=function i(){return this instanceof i?Reflect.construct(r,arguments,this.constructor):r.apply(this,arguments)};n.prototype=r.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach(function(i){var s=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(n,i,s.get?s:{enumerable:!0,get:function(){return e[i]}})}),n}var G6={exports:{}},Fx={};/**
3
3
  * @license React
4
4
  * react-jsx-runtime.production.js
@@ -811,7 +811,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
811
811
  `});return}for(const s of i.childNodes)n(s)}};for(const i of e.childNodes)n(i);return Ts(r)}function m2(e){const r=Number.parseInt(e.getAttribute("data-line-start")??"",10),n=Number.parseInt(e.getAttribute("data-line-end")??"",10);return!Number.isFinite(r)||!Number.isFinite(n)||r<1||n<r?{}:{lineRange:{startLine:r,endLine:n}}}function Sf(e){return!!(e!=null&&e.querySelector("[data-chip-ref]"))}function jB(e,r,n){const i=window.getSelection();if(!i)return;const s=document.createRange();(r==null?void 0:r.nodeType)===Node.TEXT_NODE?s.setStart(r,0):(r==null?void 0:r.parentNode)===e?s.setStart(e,Array.from(e.childNodes).indexOf(r)):s.setStart(e,F7e(n,e.childNodes.length)),s.collapse(!0),i.removeAllRanges(),i.addRange(s)}function TB(e,r,n){jB(e,r,n),requestAnimationFrame(()=>{e.isConnected&&jB(e,r,n)})}function mN(e,r,n,i){e.innerHTML="";const s=Ts(r);if(s.length===0){n&&e.appendChild(document.createTextNode(n));return}for(const o of s)iA(e,o,i)}function iA(e,r,n){if(r.type==="text"){e.appendChild(document.createTextNode(r.text));return}if(r.type==="file"||r.type==="workspace"||r.type==="terminal"){e.appendChild(r5(r,n));return}e.appendChild(document.createTextNode(`[image:${r.name}]`))}function G7e(e,r,n){var u;const i=window.getSelection();if(!i||i.rangeCount===0){for(const c of r)iA(e,c,n);e1(e);return}const s=i.getRangeAt(0);s.deleteContents();const o=document.createDocumentFragment();for(const c of r)iA(o,c,n);const a=o.lastChild;if(s.insertNode(o),!a)return;const l=document.createRange();a.nodeType===Node.TEXT_NODE?l.setStart(a,((u=a.textContent)==null?void 0:u.length)??0):l.setStartAfter(a),l.collapse(!0),i.removeAllRanges(),i.addRange(l)}function e1(e){const r=window.getSelection();if(r){const n=document.createRange();n.selectNodeContents(e),n.collapse(!1),r.removeAllRanges(),r.addRange(n)}}function sA(e){for(let r=e.childNodes.length-1;r>=0;r--){const n=e.childNodes[r];(n instanceof HTMLElement&&n.tagName==="BR"||n.nodeType===Node.TEXT_NODE&&!n.textContent)&&n.remove()}}function NB(e,r,n){sA(e);for(const i of Ts(r)){if(i.type==="text"){i.text&&e.appendChild(document.createTextNode(i.text));continue}i.type!=="image"&&(e.querySelector(`[data-chip-ref="${CSS.escape(t5(i))}"]`)||(e.appendChild(r5(i,n)),e.appendChild(document.createTextNode(" "))))}}const q3=new Map,K7e=560;function Y7e({levels:e=[],compact:r=!1}){const n=e.length>0?e:Array.from({length:28},()=>.05),i=r?n.slice(-16):n,s=r?24:30;return d.jsx("span",{className:Ye("flex min-w-0 flex-1 items-center gap-1.5 overflow-hidden rounded-full border border-black/10 bg-gradient-to-b from-black/5 via-black/10 to-black/5 px-3 py-1 dark:border-white/10 dark:from-white/5 dark:via-white/10 dark:to-white/5",r?"h-8 max-w-[210px]":"h-10 max-w-[320px]"),children:i.map((o,a)=>d.jsx("span",{className:Ye("block shrink-0 rounded-full bg-black/75 transition-[height,opacity,transform] duration-300 ease-out dark:bg-white/80",r?"w-[2px]":"w-[3px]"),style:{height:`${6+o*s}px`,opacity:.18+o*.82,transform:`translateY(${(1-o)*1.5}px)`}},a))})}const zb=y.forwardRef(function({value:r,onChange:n,onSubmit:i,onStop:s,onQueue:o,isLoading:a,disabled:l,controlsDisabled:u,placeholder:c="Ask anything...",className:f,footerLeadingContent:p,footerTrailingContent:g,onVoiceInput:v,voiceRecording:b,voiceLevels:_,voiceTranscribing:k,onVoiceStop:w,mode:C,onModeChange:j,sendTarget:T,onSendTargetChange:A,showSendTargetSelector:E=!0,provider:R,onProviderChange:M,responseStyle:W,onResponseStyleChange:$,providerRuntimeMode:U,onProviderRuntimeModeChange:B,cliModel:K,onCliModelChange:P,repoRuntime:F,onMoveToGateway:L,sessionInfo:I,workspaceNodeId:H,availableFiles:Y=CB,segments:z,onSearchFiles:q,workspaceOpen:Q=!1,draftStateKey:V},te){const re=y.useRef(null),ae=y.useRef(null),ce=y.useRef(null),ne=_v(),[ue,xe]=y.useState(!1),[Z,Pe]=y.useState(!1),De=y.useRef(0),[Ce,Xe]=y.useState(wf(r)),[Je,We]=y.useState(()=>V?q3.get(V)??[]:[]),Ie=y.useRef(null),it=y.useRef(Ts(z)),Tt=y.useRef(null),_t=y.useRef([]),Dt=y.useRef([]),Gt=y.useRef(null),[Ct,Kt]=y.useState(!1),[_e,Be]=y.useState(""),[Oe,ge]=y.useState(0),Se=y.useRef(!1);y.useEffect(()=>{Se.current=Ct},[Ct]);const Qe=y.useRef(Y);y.useEffect(()=>{Qe.current=Y},[Y]);const nt=y.useRef(n);y.useEffect(()=>{nt.current=n},[n]);const Le=y.useRef(q);y.useEffect(()=>{Le.current=q},[q]);const et=y.useRef(Q);y.useEffect(()=>{et.current=Q},[Q]);const ze=y.useRef(()=>{}),[ot,ft]=y.useState([]),[ct,Bt]=y.useState(!1),pt=y.useRef(null),Re=!!l,nr=!!(u??l??!1),Te=!!(R&&M&&P),Rr=!!(W&&$),Xt=!!(R&&U&&B),Ft=!!(C&&j&&T!=="thread"&&(!R||R==="jait")),Xr=E&&!!(T&&A),jr=Xr||Te||Rr||Xt||Ft||!!p;y.useEffect(()=>{const ve=re.current;if(!ve||typeof ResizeObserver>"u"){xe(!1);return}const le=()=>{xe(ve.clientWidth<K7e)};le();const $e=new ResizeObserver(()=>le());return $e.observe(ve),()=>$e.disconnect()},[]);const br=y.useRef(!1);y.useEffect(()=>{V&&We(q3.get(V)??[])},[V]),y.useEffect(()=>{if(V){if(Je.length===0){q3.delete(V);return}q3.set(V,Je)}},[V,Je]);const vr=y.useCallback(ve=>{var $e;const le=ae.current;le&&(ze.current(!0),($e=le.querySelector(`[data-chip-ref="${CSS.escape(ve)}"]`))==null||$e.remove(),it.current=za(le),br.current=!0,nt.current(Fo(le)),br.current=!1,Xe(wf(Fo(le))&&!Sf(le)))},[]),yn=y.useCallback(()=>{const ve=ae.current;ve&&(mN(ve,[],"",vr),it.current=[],Tt.current=Qk("",[]),br.current=!0,nt.current(""),br.current=!1,Xe(!0),_t.current=[],Dt.current=[])},[vr]),Pt=y.useCallback(ve=>{const le=()=>{const $e=[...it.current],ut=_t.current;ut.length>0&&JSON.stringify(ut[ut.length-1])===JSON.stringify($e)||(ut.push($e),ut.length>100&&ut.shift(),Dt.current=[])};ve?(Gt.current&&(clearTimeout(Gt.current),Gt.current=null),le()):(Gt.current&&clearTimeout(Gt.current),Gt.current=setTimeout(le,300))},[]);y.useEffect(()=>{ze.current=Pt},[Pt]);const En=y.useCallback(ve=>{const le=ae.current;if(!le)return;br.current=!0,mN(le,ve,"",vr),it.current=za(le);const $e=Fo(le);nt.current($e),Xe(wf($e)&&!Sf(le)),br.current=!1,e1(le)},[vr]);y.useImperativeHandle(te,()=>({insertChip:ve=>{const le=ae.current;if(!le||le.querySelector(`[data-chip-ref="${CSS.escape(t5(ve))}"]`))return;ze.current(!0),sA(le);const $e=r5(ve,vr);le.appendChild($e),le.appendChild(document.createTextNode(" ")),it.current=za(le),e1(le),br.current=!0,nt.current(Fo(le)),br.current=!1,Xe(!1)},insertSegments:ve=>{const le=ae.current;if(!le)return;const $e=Ts(ve);$e.length&&(ze.current(!0),NB(le,$e,vr),it.current=za(le),e1(le),br.current=!0,nt.current(Fo(le)),br.current=!1,Xe(!1))},getSegments:()=>{const ve=ae.current;return ve?za(ve):Ts(z)},focus:()=>{const ve=ae.current;ve&&(ve.focus(),e1(ve))},addAttachment:ve=>{We(le=>[...le,ve]),Xe(!1)}}),[vr,z]),y.useEffect(()=>{var jt;if(!Ct){ft(tr=>tr.length===0?tr:CB);return}(jt=pt.current)==null||jt.abort();const ve=new Set(ae.current?q7e(ae.current):[]),le=Qe.current;if(!_e){const tr=le.filter(qt=>!ve.has(qt.path)).slice(0,15);ft(tr),Bt(!1);return}const $e=le.filter(tr=>{if(ve.has(tr.path))return!1;const qt=_e.toLowerCase();return tr.name.toLowerCase().includes(qt)||tr.path.toLowerCase().includes(qt)}).slice(0,10);ft($e);const ut=Le.current;if(!ut){Bt(!1);return}Bt(!0);const tt=new AbortController;pt.current=tt;const Yt=setTimeout(async()=>{try{const tr=await ut(_e,15,tt.signal);if(tt.signal.aborted)return;const qt=new Set,rr=[];for(const xr of tr)ve.has(xr.path)||qt.has(xr.path)||(qt.add(xr.path),rr.push(xr));for(const xr of $e)qt.has(xr.path)||(qt.add(xr.path),rr.push(xr));ft(rr.slice(0,15))}catch{}finally{tt.signal.aborted||Bt(!1)}},150);return()=>{clearTimeout(Yt),tt.abort()}},[Ct,_e]),y.useEffect(()=>{const ve=ae.current;if(!ve||br.current)return;if(ve.childNodes.length>0&&((ve.textContent??"").length>0||Sf(ve))&&!B7e(Tt.current,r,z,it.current)){Tt.current=Qk(r,z);return}br.current=!0,mN(ve,z,r,vr),it.current=za(ve),Xe(wf(r)&&!Sf(ae.current)),br.current=!1,Tt.current=Qk(r,z)},[r,z,vr]),y.useEffect(()=>{if(!Ct)return;const ve=le=>{ce.current&&!ce.current.contains(le.target)&&Kt(!1)};return document.addEventListener("mousedown",ve),()=>document.removeEventListener("mousedown",ve)},[Ct]),y.useEffect(()=>{ge(0)},[_e]);const Wt=y.useCallback(ve=>{const le=ae.current;if(!le)return;Pt(!0);const $e=window.getSelection();if($e&&$e.rangeCount>0){const ut=$e.getRangeAt(0),tt=ut.startContainer;if(tt.nodeType===Node.TEXT_NODE&&tt.textContent){const Yt=tt.textContent,jt=ut.startOffset,tr=Yt.lastIndexOf("@",jt-1);if(tr>=0){tt.textContent=Yt.slice(0,tr)+Yt.slice(jt);const qt=tt.textContent.slice(0,tr),rr=tt.textContent.slice(tr);tt.textContent=qt;const xr=r5(ve,vr),Ur=document.createTextNode(rr||" "),Hr=tt.parentNode;if(qt)tt.nextSibling?(Hr.insertBefore(Ur,tt.nextSibling),Hr.insertBefore(xr,Ur)):(Hr.appendChild(xr),Hr.appendChild(Ur));else{const Zr=tt.nextSibling;Hr.removeChild(tt),Zr?(Hr.insertBefore(Ur,Zr),Hr.insertBefore(xr,Ur)):(Hr.appendChild(xr),Hr.appendChild(Ur))}const ur=document.createRange();ur.setStart(Ur,rr?0:1),ur.collapse(!0),$e.removeAllRanges(),$e.addRange(ur)}}}Kt(!1),Be(""),it.current=za(le),br.current=!0,n(Fo(le)),br.current=!1},[n,Pt]);y.useEffect(()=>{const ve=ae.current;if(!ve)return;const le=()=>{br.current=!0;const $e=Fo(ve);it.current=za(ve),nt.current($e),Xe(wf($e)&&!Sf(ve)),br.current=!1,ze.current();const ut=window.getSelection();if(!ut||ut.rangeCount===0)return;const tt=ut.getRangeAt(0);let Yt=tt.startContainer,jt=tt.startOffset;if(Yt.nodeType!==Node.TEXT_NODE){const rr=Yt.childNodes[jt-1]??Yt.childNodes[jt];if((rr==null?void 0:rr.nodeType)===Node.TEXT_NODE)Yt=rr,jt=rr.length;else if(jt>0&&Yt.childNodes[jt-1]){let xr=Yt.childNodes[jt-1];for(;xr&&xr.nodeType!==Node.TEXT_NODE&&xr.lastChild;)xr=xr.lastChild;if((xr==null?void 0:xr.nodeType)===Node.TEXT_NODE)Yt=xr,jt=xr.length;else return}else return}const tr=Yt.textContent??"";if(Se.current){const rr=tr.lastIndexOf("@",jt-1);if(rr<0||jt<=rr){Kt(!1);return}const xr=tr.slice(rr+1,jt);xr.includes(" ")||xr.includes(`
812
812
  `)?Kt(!1):Be(xr)}else if(jt>0&&tr[jt-1]==="@"){const rr=jt>1?tr[jt-2]:" ";(rr===" "||rr===`
813
813
  `||rr===" "||jt===1)&&et.current&&(Be(""),Kt(!0))}};return ve.addEventListener("input",le),()=>ve.removeEventListener("input",le)},[]);const Br=y.useCallback(ve=>{if((ve.ctrlKey||ve.metaKey)&&!ve.altKey){if(ve.key==="z"&&!ve.shiftKey){ve.preventDefault();const le=_t.current;if(le.length===0)return;Dt.current.push([...it.current]);const $e=le.pop();En($e);return}if(ve.key==="z"&&ve.shiftKey||ve.key==="y"){ve.preventDefault();const le=Dt.current;if(le.length===0)return;_t.current.push([...it.current]);const $e=le.pop();En($e);return}}if(Ct){if(ve.key==="ArrowDown"){ve.preventDefault(),ge(le=>Math.min(le+1,ot.length-1));return}if(ve.key==="ArrowUp"){ve.preventDefault(),ge(le=>Math.max(le-1,0));return}if(ve.key==="Enter"||ve.key==="Tab"){ve.preventDefault(),ot[Oe]&&Wt(ot[Oe]);return}if(ve.key==="Escape"){ve.preventDefault(),Kt(!1);return}}if(ve.key==="Backspace"){const le=ae.current;if(!le)return;const $e=window.getSelection();if(!$e||$e.rangeCount===0)return;const ut=$e.getRangeAt(0);if(!ut.collapsed)return;const{startContainer:tt,startOffset:Yt}=ut;if(tt===le||tt.parentNode===le){const jt=tt===le?Yt:Array.from(le.childNodes).indexOf(tt);if(z7e({startContainerIsRoot:tt===le,startContainerIsText:tt.nodeType===Node.TEXT_NODE,startOffset:Yt,childIndex:jt})){const qt=le.childNodes[jt-1];if(qt instanceof HTMLElement&&qt.hasAttribute("data-chip-ref")){ve.preventDefault();const rr=qt.nextSibling;qt.remove(),TB(le,rr,jt),it.current=za(le),br.current=!0,nt.current(Fo(le)),br.current=!1,Xe(wf(Fo(le))&&!Sf(le));return}}}if(tt.nodeType===Node.TEXT_NODE&&Yt===0){const jt=tt.previousSibling;if(jt instanceof HTMLElement&&jt.hasAttribute("data-chip-ref")){ve.preventDefault();const tr=jt.nextSibling;jt.remove(),TB(le,tr,Array.from(le.childNodes).indexOf(tt)+1),it.current=za(le),br.current=!0,nt.current(Fo(le)),br.current=!1,Xe(wf(Fo(le))&&!Sf(le));return}}}if(ve.key==="Enter"&&!ve.shiftKey){ve.preventDefault();const le=ae.current,$e=le?Fo(le).trim():r.trim(),ut=le?pN(le):[],tt=le?za(le):Ts(z),Yt=tt.some(jt=>jt.type!=="text"&&jt.type!=="image");if(!($e||ut.length>0||Yt||Je.length>0))return;if(a&&o){o(ut,Je,tt),We([]),yn();return}a||(i(ut,Je,tt),We([]),yn())}},[Ct,ot,Oe,Wt,r,a,o,i,Je,z,yn,En]),Sn=y.useCallback(ve=>new Promise((le,$e)=>{const ut=new FileReader;ut.onload=()=>{const tt=ut.result,Yt=tt.split(",")[1]??"",jt=ve.type.startsWith("image/");le({name:ve.name,mimeType:ve.type||"application/octet-stream",data:Yt,preview:jt?tt:void 0})},ut.onerror=$e,ut.readAsDataURL(ve)}),[]),An=y.useCallback(async ve=>{const le=await Promise.all(Array.from(ve).map(Sn));We($e=>{const ut=new Set($e.map(tt=>tt.name));return[...$e,...le.filter(tt=>!ut.has(tt.name))]}),Xe(!1)},[Sn]),lt=y.useCallback(ve=>{We(le=>{const $e=le.filter(tt=>tt.name!==ve),ut=ae.current;return $e.length===0&&ut&&wf(Fo(ut))&&!Sf(ut)&&Xe(!0),$e})},[]),yt=y.useCallback(ve=>{if(!ae.current)return;const $e=window.getSelection();if(!$e||$e.rangeCount===0||$e.isCollapsed)return;const tt=$e.getRangeAt(0).cloneContents(),Yt=document.createElement("div");Yt.appendChild(tt);const jt=[],tr=qt=>{if(qt.nodeType===Node.TEXT_NODE){const rr=qt.textContent??"";rr&&jt.push({type:"text",text:rr});return}if(qt instanceof HTMLElement){if(qt.hasAttribute("data-chip-ref")){const rr=qt.getAttribute("data-segment-type");if(rr==="workspace"){const Hr=qt.getAttribute("data-workspace-path");jt.push({type:"workspace",path:Hr,name:qt.getAttribute("data-chip-name")||Hr.split("/").pop()||Hr});return}if(rr==="terminal"){const Hr=qt.getAttribute("data-terminal-id"),ur=qt.getAttribute("data-workspace-root");jt.push({type:"terminal",terminalId:Hr,name:qt.getAttribute("data-chip-name")||Hr,...ur?{workspaceRoot:ur}:{},...m2(qt),...qt.getAttribute("data-selected-text")?{selectedText:qt.getAttribute("data-selected-text")}:{}});return}const xr=qt.getAttribute("data-file-path"),Ur=qt.getAttribute("data-kind");jt.push({type:"file",path:xr,name:qt.getAttribute("data-chip-name")||xr.split(/[\\/]/).pop()||xr,...Ur==="file"||Ur==="dir"?{kind:Ur}:{},...m2(qt)});return}if(qt.tagName==="BR"){jt.push({type:"text",text:`
814
- `});return}for(const rr of qt.childNodes)tr(rr)}};for(const qt of Yt.childNodes)tr(qt);if(jt.some(qt=>qt.type==="file"||qt.type==="workspace"||qt.type==="terminal")){ve.preventDefault(),ve.clipboardData.setData("text/plain",bJ(jt));const qt=_J(jt);qt&&ve.clipboardData.setData(XC,qt)}},[]),ln=y.useCallback(ve=>{var tr,qt;const le=ae.current,$e=ve.clipboardData.items,ut=[];for(let rr=0;rr<$e.length;rr++)if((tr=$e[rr])!=null&&tr.type.startsWith("image/")){const xr=(qt=$e[rr])==null?void 0:qt.getAsFile();xr&&ut.push(xr)}if(ut.length>0){ve.preventDefault(),An(ut);return}if(!le)return;const tt=oEe(ve.clipboardData.getData(XC)),Yt=tt.length>0?tt:sEe(ve.clipboardData.getData("text/plain"));if(Yt.length>0){ve.preventDefault(),G7e(le,Yt,vr),it.current=za(le),br.current=!0,n(Fo(le)),br.current=!1,Xe(wf(Fo(le))&&!Sf(le));return}ve.preventDefault();const jt=ve.clipboardData.getData("text/plain");document.execCommand("insertText",!1,jt)},[An,vr,n]),Tr=y.useCallback(ve=>{ve.preventDefault(),ve.stopPropagation(),De.current++,De.current===1&&Pe(!0)},[]),Lr=y.useCallback(ve=>{ve.preventDefault(),ve.stopPropagation(),De.current--,De.current===0&&Pe(!1)},[]),cs=y.useCallback(ve=>{ve.preventDefault(),ve.stopPropagation(),ve.dataTransfer.dropEffect="copy"},[]),Ea=y.useCallback(ve=>{var tr,qt,rr,xr,Ur;ve.preventDefault(),ve.stopPropagation(),De.current=0,Pe(!1);const le=ae.current;if(!le)return;const $e=Hr=>{if(le.querySelector(`[data-chip-ref="${CSS.escape(t5(Hr))}"]`))return!1;const ur="type"in Hr?Hr:{type:"file",path:Hr.path,name:Hr.name,...Hr.kind?{kind:Hr.kind}:{}};return NB(le,[ur],vr),it.current=za(le),e1(le),br.current=!0,n(Fo(le)),br.current=!1,Xe(!1),!0},ut=ve.dataTransfer.getData("text/jait-file");if(ut){try{const Hr=JSON.parse(ut);$e(Hr)}catch{}return}const tt=ve.dataTransfer.getData(e5);if(tt){try{const Hr=JSON.parse(tt);$e({type:"workspace",...Hr})}catch{}return}const Yt=ve.dataTransfer.getData(fQ);if(Yt){try{const Hr=JSON.parse(Yt);$e({type:"terminal",...Hr})}catch{}return}const jt=(tr=window.jaitDesktop)==null?void 0:tr.getPathForFile;if((qt=ve.dataTransfer.files)!=null&&qt.length&&jt){const Hr=Array.from(ve.dataTransfer.files),ur=ve.dataTransfer.items;let Zr=!1;sA(le);for(let Jr=0;Jr<Hr.length;Jr++){const ri=Hr[Jr];if(!ri)continue;const Ue=jt(ri);if(!Ue)continue;const us=Ue.split(/[\\/]/).pop()??Ue,ll=(xr=(rr=ur==null?void 0:ur[Jr])==null?void 0:rr.webkitGetAsEntry)==null?void 0:xr.call(rr),_d=ll!=null&&ll.isDirectory||ri.type===""&&ri.size===0?"dir":"file";Zr=$e({path:Ue,name:us,kind:_d})||Zr}Zr&&ze.current(!0)}else(Ur=ve.dataTransfer.files)!=null&&Ur.length&&An(ve.dataTransfer.files)},[n,vr,An]);return d.jsxs("div",{ref:re,className:Ye("relative z-10 flex flex-col rounded-2xl border bg-background dark:bg-card focus-within:border-primary/50 focus-within:ring-2 focus-within:ring-primary/20",Z&&"ring-2 ring-primary/30 border-primary/40",f),onDragEnter:Tr,onDragLeave:Lr,onDragOver:cs,onDrop:Ea,children:[Je.length>0&&d.jsx("div",{className:"flex flex-wrap gap-2 px-3 pt-3",children:Je.map(ve=>d.jsxs("div",{className:"group relative flex items-center gap-1.5 rounded-lg border bg-muted/50 px-2 py-1.5 text-xs",children:[ve.preview?d.jsx("img",{src:ve.preview,alt:ve.name,className:"h-8 w-8 rounded object-cover"}):d.jsx(xo,{filename:ve.name,className:"h-4 w-4 shrink-0"}),d.jsx("span",{className:"max-w-[120px] truncate",children:ve.name}),d.jsx("button",{type:"button",className:"ml-0.5 rounded-full p-0.5 text-muted-foreground hover:bg-destructive/10 hover:text-destructive transition-colors",onClick:()=>lt(ve.name),children:d.jsx(ei,{className:"h-3 w-3"})})]},ve.name))}),d.jsx("input",{ref:Ie,type:"file",multiple:!0,accept:"image/*,.txt,.md,.ts,.tsx,.js,.jsx,.py,.json,.yaml,.yml,.toml,.css,.html,.xml,.csv,.log,.sh,.bat,.rs,.go,.java,.c,.cpp,.h,.hpp",className:"hidden",onChange:ve=>{var le;(le=ve.target.files)!=null&&le.length&&(An(ve.target.files),ve.target.value="")}}),d.jsxs("div",{className:"relative px-3 pt-3 pb-1.5",children:[Ce&&d.jsx("div",{className:"absolute top-5 left-5 pointer-events-none text-muted-foreground text-base leading-relaxed select-none",children:c}),d.jsx("div",{ref:ae,contentEditable:!Re,role:"textbox","aria-multiline":!0,suppressContentEditableWarning:!0,onKeyDown:Br,onPaste:ln,onCopy:yt,onDrop:ve=>{ve.preventDefault()},className:Ye("min-h-[40px] max-h-[200px] overflow-y-auto text-base leading-relaxed outline-none py-2 px-2 text-foreground","whitespace-pre-wrap break-words",Re&&"cursor-not-allowed opacity-50"),style:{wordBreak:"break-word"}})]}),Ct&&(ot.length>0||ct)&&d.jsxs("div",{ref:ce,className:"absolute left-3 bottom-full mb-1 w-72 max-h-52 overflow-y-auto rounded-lg border bg-popover p-1 shadow-lg z-50",children:[ot.map((ve,le)=>d.jsxs("button",{type:"button",className:Ye("flex items-center gap-2 w-full text-left text-xs px-2 py-1.5 rounded-md transition-colors",le===Oe?"bg-accent text-accent-foreground":"hover:bg-muted"),onMouseDown:$e=>{$e.preventDefault(),Wt(ve)},onMouseEnter:()=>ge(le),children:[ve.kind==="dir"?d.jsx(uj,{name:ve.name,className:"h-3.5 w-3.5 shrink-0"}):d.jsx(xo,{filename:ve.name,className:"h-3.5 w-3.5 shrink-0"}),d.jsx("span",{className:"truncate",children:ve.path})]},ve.path)),ct&&d.jsxs("div",{className:"flex items-center gap-2 px-2 py-1.5 text-xs text-muted-foreground",children:[d.jsx("span",{className:"h-3 w-3 animate-spin rounded-full border-2 border-current border-t-transparent"}),"Searching..."]}),!ct&&ot.length===0&&d.jsx("div",{className:"text-xs text-muted-foreground px-2 py-1.5",children:"No matching files or folders"})]}),d.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-2 px-3 pb-2.5 pt-0.5",children:[jr&&d.jsx("div",{className:"min-w-0 flex-[999_1_18rem] overflow-x-auto scrollbar-none",children:d.jsxs("div",{className:"flex min-w-max items-center gap-1 pr-1",children:[p,Xr&&d.jsx(J8,{target:T,onChange:A,disabled:nr,compact:ue}),Rr&&d.jsx(cEe,{value:W,onChange:$,disabled:nr,compact:ue}),Te&&d.jsx($7e,{provider:R,model:K??null,onProviderChange:M,onModelChange:P,disabled:nr,compact:ue,repoRuntime:F,onMoveToGateway:L,sessionInfo:I,workspaceNodeId:H}),Xt&&d.jsx(D7e,{provider:R,value:U,onChange:B,disabled:nr,compact:ue}),Ft&&d.jsx(lEe,{mode:C,onChange:j,disabled:nr,compact:ue})]})}),d.jsxs("div",{className:Ye("ml-auto flex shrink-0 items-center gap-1.5",jr&&"pl-1"),children:[d.jsx(ke,{type:"button",size:"icon",variant:"ghost",className:"h-8 w-8 shrink-0 rounded-lg",onClick:()=>{var ve;return(ve=Ie.current)==null?void 0:ve.click()},title:"Attach files",children:d.jsx(P0e,{className:"h-4 w-4"})}),v&&!b&&!k&&d.jsx(ke,{type:"button",size:"icon",variant:"ghost",className:"h-8 w-8 shrink-0 rounded-lg",onClick:v,title:"Voice input",children:d.jsx(Jy,{className:"h-4 w-4"})}),b&&w&&d.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[d.jsxs("span",{className:"flex shrink-0 items-center gap-1.5 text-xs font-medium text-foreground/80",children:[d.jsx("span",{className:"h-2 w-2 rounded-full bg-foreground/70 animate-pulse"}),!ne&&"Listening..."]}),d.jsx(Y7e,{levels:_,compact:ne}),d.jsxs(ke,{type:"button",size:"sm",variant:"outline",className:Ye("h-7 shrink-0 rounded-lg text-xs",ne?"px-2":"px-2.5"),onClick:w,children:[d.jsx(Fk,{className:Ye("h-3.5 w-3.5",!ne&&"mr-1")}),!ne&&"Done"]})]}),k&&d.jsxs("div",{className:"flex items-center gap-1.5 text-xs text-muted-foreground",children:[d.jsx(Zt,{className:"h-3.5 w-3.5 animate-spin"}),"Transcribing..."]}),g,a&&T!=="thread"&&d.jsx(ke,{type:"button",size:"icon",variant:"outline",className:"h-8 w-8 shrink-0 rounded-lg",onClick:s,title:"Stop generating",children:d.jsx(I1,{className:"h-3.5 w-3.5 fill-current"})}),a&&T!=="thread"&&o?d.jsx(ke,{type:"button",size:"icon",variant:"secondary",className:"h-8 w-8 shrink-0 rounded-lg",disabled:Ce&&Je.length===0||Re,title:"Add to queue",onClick:()=>{const ve=ae.current,le=ve?pN(ve):[],$e=ve?za(ve):Ts(z);o(le,Je,$e),We([]),yn()},children:d.jsx(l9,{className:"h-4 w-4"})}):!a||T==="thread"?d.jsx(ke,{type:"button",size:"icon",className:"h-8 w-8 shrink-0 rounded-lg",disabled:Ce&&Je.length===0||Re,onClick:()=>{const ve=ae.current,le=ve?pN(ve):[],$e=ve?za(ve):Ts(z);i(le,Je,$e),We([]),yn()},children:d.jsx($G,{className:"h-4 w-4"})}):null]})]})]})});function EB(e,r){(r==null||r>e.length)&&(r=e.length);for(var n=0,i=Array(r);n<r;n++)i[n]=e[n];return i}function X7e(e){if(Array.isArray(e))return e}function Z7e(e,r,n){return(r=i9e(r))in e?Object.defineProperty(e,r,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[r]=n,e}function J7e(e,r){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var i,s,o,a,l=[],u=!0,c=!1;try{if(o=(n=n.call(e)).next,r!==0)for(;!(u=(i=o.call(n)).done)&&(l.push(i.value),l.length!==r);u=!0);}catch(f){c=!0,s=f}finally{try{if(!u&&n.return!=null&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw s}}return l}}function Q7e(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
814
+ `});return}for(const rr of qt.childNodes)tr(rr)}};for(const qt of Yt.childNodes)tr(qt);if(jt.some(qt=>qt.type==="file"||qt.type==="workspace"||qt.type==="terminal")){ve.preventDefault(),ve.clipboardData.setData("text/plain",bJ(jt));const qt=_J(jt);qt&&ve.clipboardData.setData(XC,qt)}},[]),ln=y.useCallback(ve=>{var tr,qt;const le=ae.current,$e=ve.clipboardData.items,ut=[];for(let rr=0;rr<$e.length;rr++)if((tr=$e[rr])!=null&&tr.type.startsWith("image/")){const xr=(qt=$e[rr])==null?void 0:qt.getAsFile();xr&&ut.push(xr)}if(ut.length>0){ve.preventDefault(),An(ut);return}if(!le)return;const tt=oEe(ve.clipboardData.getData(XC)),Yt=tt.length>0?tt:sEe(ve.clipboardData.getData("text/plain"));if(Yt.length>0){ve.preventDefault(),G7e(le,Yt,vr),it.current=za(le),br.current=!0,n(Fo(le)),br.current=!1,Xe(wf(Fo(le))&&!Sf(le));return}ve.preventDefault();const jt=ve.clipboardData.getData("text/plain");document.execCommand("insertText",!1,jt)},[An,vr,n]),Tr=y.useCallback(ve=>{ve.preventDefault(),ve.stopPropagation(),De.current++,De.current===1&&Pe(!0)},[]),Lr=y.useCallback(ve=>{ve.preventDefault(),ve.stopPropagation(),De.current--,De.current===0&&Pe(!1)},[]),cs=y.useCallback(ve=>{ve.preventDefault(),ve.stopPropagation(),ve.dataTransfer.dropEffect="copy"},[]),Ea=y.useCallback(ve=>{var tr,qt,rr,xr,Ur;ve.preventDefault(),ve.stopPropagation(),De.current=0,Pe(!1);const le=ae.current;if(!le)return;const $e=Hr=>{if(le.querySelector(`[data-chip-ref="${CSS.escape(t5(Hr))}"]`))return!1;const ur="type"in Hr?Hr:{type:"file",path:Hr.path,name:Hr.name,...Hr.kind?{kind:Hr.kind}:{}};return NB(le,[ur],vr),it.current=za(le),e1(le),br.current=!0,n(Fo(le)),br.current=!1,Xe(!1),!0},ut=ve.dataTransfer.getData("text/jait-file");if(ut){try{const Hr=JSON.parse(ut);$e(Hr)}catch{}return}const tt=ve.dataTransfer.getData(e5);if(tt){try{const Hr=JSON.parse(tt);$e({type:"workspace",...Hr})}catch{}return}const Yt=ve.dataTransfer.getData(fQ);if(Yt){try{const Hr=JSON.parse(Yt);$e({type:"terminal",...Hr})}catch{}return}const jt=(tr=window.jaitDesktop)==null?void 0:tr.getPathForFile;if((qt=ve.dataTransfer.files)!=null&&qt.length&&jt){const Hr=Array.from(ve.dataTransfer.files),ur=ve.dataTransfer.items;let Zr=!1;sA(le);for(let Jr=0;Jr<Hr.length;Jr++){const ri=Hr[Jr];if(!ri)continue;const Ue=jt(ri);if(!Ue)continue;const us=Ue.split(/[\\/]/).pop()??Ue,ll=(xr=(rr=ur==null?void 0:ur[Jr])==null?void 0:rr.webkitGetAsEntry)==null?void 0:xr.call(rr),_d=ll!=null&&ll.isDirectory||ri.type===""&&ri.size===0?"dir":"file";Zr=$e({path:Ue,name:us,kind:_d})||Zr}Zr&&ze.current(!0)}else(Ur=ve.dataTransfer.files)!=null&&Ur.length&&An(ve.dataTransfer.files)},[n,vr,An]);return d.jsxs("div",{ref:re,className:Ye("relative z-10 flex flex-col rounded-2xl border bg-background dark:bg-card focus-within:border-primary/50 focus-within:ring-2 focus-within:ring-primary/20",Z&&"ring-2 ring-primary/30 border-primary/40",f),onDragEnter:Tr,onDragLeave:Lr,onDragOver:cs,onDrop:Ea,children:[Je.length>0&&d.jsx("div",{className:"flex flex-wrap gap-2 px-3 pt-3",children:Je.map(ve=>d.jsxs("div",{className:"group relative flex items-center gap-1.5 rounded-lg border bg-muted/50 px-2 py-1.5 text-xs",children:[ve.preview?d.jsx("img",{src:ve.preview,alt:ve.name,className:"h-8 w-8 rounded object-cover"}):d.jsx(xo,{filename:ve.name,className:"h-4 w-4 shrink-0"}),d.jsx("span",{className:"max-w-[120px] truncate",children:ve.name}),d.jsx("button",{type:"button",className:"ml-0.5 rounded-full p-0.5 text-muted-foreground hover:bg-destructive/10 hover:text-destructive transition-colors",onClick:()=>lt(ve.name),children:d.jsx(ei,{className:"h-3 w-3"})})]},ve.name))}),d.jsx("input",{ref:Ie,type:"file",multiple:!0,accept:"image/*,.txt,.md,.ts,.tsx,.js,.jsx,.py,.json,.yaml,.yml,.toml,.css,.html,.xml,.csv,.log,.sh,.bat,.rs,.go,.java,.c,.cpp,.h,.hpp",className:"hidden",onChange:ve=>{var le;(le=ve.target.files)!=null&&le.length&&(An(ve.target.files),ve.target.value="")}}),d.jsxs("div",{className:"relative px-3 pt-3 pb-1.5",children:[Ce&&d.jsx("div",{className:"absolute top-5 left-5 pointer-events-none text-muted-foreground text-base leading-relaxed select-none",children:c}),d.jsx("div",{ref:ae,contentEditable:!Re,role:"textbox","aria-multiline":!0,suppressContentEditableWarning:!0,onKeyDown:Br,onPaste:ln,onCopy:yt,onDrop:ve=>{ve.preventDefault()},className:Ye("min-h-[40px] max-h-[200px] overflow-y-auto text-base leading-relaxed outline-none py-2 px-2 text-foreground","whitespace-pre-wrap break-words",Re&&"cursor-not-allowed opacity-50"),style:{wordBreak:"break-word"}})]}),Ct&&(ot.length>0||ct)&&d.jsxs("div",{ref:ce,className:"absolute left-3 bottom-full mb-1 w-72 max-h-52 overflow-y-auto rounded-lg border bg-popover p-1 shadow-lg z-50",children:[ot.map((ve,le)=>d.jsxs("button",{type:"button",className:Ye("flex items-center gap-2 w-full text-left text-xs px-2 py-1.5 rounded-md transition-colors",le===Oe?"bg-accent text-accent-foreground":"hover:bg-muted"),onMouseDown:$e=>{$e.preventDefault(),Wt(ve)},onMouseEnter:()=>ge(le),children:[ve.kind==="dir"?d.jsx(uj,{name:ve.name,className:"h-3.5 w-3.5 shrink-0"}):d.jsx(xo,{filename:ve.name,className:"h-3.5 w-3.5 shrink-0"}),d.jsx("span",{className:"truncate",children:ve.path})]},ve.path)),ct&&d.jsxs("div",{className:"flex items-center gap-2 px-2 py-1.5 text-xs text-muted-foreground",children:[d.jsx("span",{className:"h-3 w-3 animate-spin rounded-full border-2 border-current border-t-transparent"}),"Searching..."]}),!ct&&ot.length===0&&d.jsx("div",{className:"text-xs text-muted-foreground px-2 py-1.5",children:"No matching files or folders"})]}),d.jsxs("div",{className:"flex min-w-0 items-center gap-2 px-3 pb-2.5 pt-0.5",children:[jr&&d.jsx("div",{className:"min-w-0 flex-1 overflow-x-auto scrollbar-none",children:d.jsxs("div",{className:"flex min-w-max items-center gap-1 pr-1",children:[p,Xr&&d.jsx(J8,{target:T,onChange:A,disabled:nr,compact:ue}),Rr&&d.jsx(cEe,{value:W,onChange:$,disabled:nr,compact:ue}),Te&&d.jsx($7e,{provider:R,model:K??null,onProviderChange:M,onModelChange:P,disabled:nr,compact:ue,repoRuntime:F,onMoveToGateway:L,sessionInfo:I,workspaceNodeId:H}),Xt&&d.jsx(D7e,{provider:R,value:U,onChange:B,disabled:nr,compact:ue}),Ft&&d.jsx(lEe,{mode:C,onChange:j,disabled:nr,compact:ue})]})}),d.jsxs("div",{className:Ye("flex shrink-0 items-center gap-1.5",jr?"pl-1":"ml-auto"),children:[d.jsx(ke,{type:"button",size:"icon",variant:"ghost",className:"h-8 w-8 shrink-0 rounded-lg",onClick:()=>{var ve;return(ve=Ie.current)==null?void 0:ve.click()},title:"Attach files",children:d.jsx(P0e,{className:"h-4 w-4"})}),v&&!b&&!k&&d.jsx(ke,{type:"button",size:"icon",variant:"ghost",className:"h-8 w-8 shrink-0 rounded-lg",onClick:v,title:"Voice input",children:d.jsx(Jy,{className:"h-4 w-4"})}),b&&w&&d.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[d.jsxs("span",{className:"flex shrink-0 items-center gap-1.5 text-xs font-medium text-foreground/80",children:[d.jsx("span",{className:"h-2 w-2 rounded-full bg-foreground/70 animate-pulse"}),!ne&&"Listening..."]}),d.jsx(Y7e,{levels:_,compact:ne}),d.jsxs(ke,{type:"button",size:"sm",variant:"outline",className:Ye("h-7 shrink-0 rounded-lg text-xs",ne?"px-2":"px-2.5"),onClick:w,children:[d.jsx(Fk,{className:Ye("h-3.5 w-3.5",!ne&&"mr-1")}),!ne&&"Done"]})]}),k&&d.jsxs("div",{className:"flex items-center gap-1.5 text-xs text-muted-foreground",children:[d.jsx(Zt,{className:"h-3.5 w-3.5 animate-spin"}),"Transcribing..."]}),g,a&&T!=="thread"&&d.jsx(ke,{type:"button",size:"icon",variant:"outline",className:"h-8 w-8 shrink-0 rounded-lg",onClick:s,title:"Stop generating",children:d.jsx(I1,{className:"h-3.5 w-3.5 fill-current"})}),a&&T!=="thread"&&o?d.jsx(ke,{type:"button",size:"icon",variant:"secondary",className:"h-8 w-8 shrink-0 rounded-lg",disabled:Ce&&Je.length===0||Re,title:"Add to queue",onClick:()=>{const ve=ae.current,le=ve?pN(ve):[],$e=ve?za(ve):Ts(z);o(le,Je,$e),We([]),yn()},children:d.jsx(l9,{className:"h-4 w-4"})}):!a||T==="thread"?d.jsx(ke,{type:"button",size:"icon",className:"h-8 w-8 shrink-0 rounded-lg",disabled:Ce&&Je.length===0||Re,onClick:()=>{const ve=ae.current,le=ve?pN(ve):[],$e=ve?za(ve):Ts(z);i(le,Je,$e),We([]),yn()},children:d.jsx($G,{className:"h-4 w-4"})}):null]})]})]})});function EB(e,r){(r==null||r>e.length)&&(r=e.length);for(var n=0,i=Array(r);n<r;n++)i[n]=e[n];return i}function X7e(e){if(Array.isArray(e))return e}function Z7e(e,r,n){return(r=i9e(r))in e?Object.defineProperty(e,r,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[r]=n,e}function J7e(e,r){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var i,s,o,a,l=[],u=!0,c=!1;try{if(o=(n=n.call(e)).next,r!==0)for(;!(u=(i=o.call(n)).done)&&(l.push(i.value),l.length!==r);u=!0);}catch(f){c=!0,s=f}finally{try{if(!u&&n.return!=null&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw s}}return l}}function Q7e(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
815
815
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function AB(e,r){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);r&&(i=i.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,i)}return n}function OB(e){for(var r=1;r<arguments.length;r++){var n=arguments[r]!=null?arguments[r]:{};r%2?AB(Object(n),!0).forEach(function(i){Z7e(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):AB(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function e9e(e,r){if(e==null)return{};var n,i,s=t9e(e,r);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i<o.length;i++)n=o[i],r.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(s[n]=e[n])}return s}function t9e(e,r){if(e==null)return{};var n={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(r.indexOf(i)!==-1)continue;n[i]=e[i]}return n}function r9e(e,r){return X7e(e)||J7e(e,r)||s9e(e,r)||Q7e()}function n9e(e,r){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,r);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(r==="string"?String:Number)(e)}function i9e(e){var r=n9e(e,"string");return typeof r=="symbol"?r:r+""}function s9e(e,r){if(e){if(typeof e=="string")return EB(e,r);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?EB(e,r):void 0}}function o9e(e,r,n){return r in e?Object.defineProperty(e,r,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[r]=n,e}function RB(e,r){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);r&&(i=i.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,i)}return n}function MB(e){for(var r=1;r<arguments.length;r++){var n=arguments[r]!=null?arguments[r]:{};r%2?RB(Object(n),!0).forEach(function(i){o9e(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):RB(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function a9e(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];return function(i){return r.reduceRight(function(s,o){return o(s)},i)}}function Fb(e){return function r(){for(var n=this,i=arguments.length,s=new Array(i),o=0;o<i;o++)s[o]=arguments[o];return s.length>=e.length?e.apply(this,s):function(){for(var a=arguments.length,l=new Array(a),u=0;u<a;u++)l[u]=arguments[u];return r.apply(n,[].concat(s,l))}}}function n5(e){return{}.toString.call(e).includes("Object")}function l9e(e){return!Object.keys(e).length}function g2(e){return typeof e=="function"}function c9e(e,r){return Object.prototype.hasOwnProperty.call(e,r)}function u9e(e,r){return n5(r)||wm("changeType"),Object.keys(r).some(function(n){return!c9e(e,n)})&&wm("changeField"),r}function d9e(e){g2(e)||wm("selectorType")}function h9e(e){g2(e)||n5(e)||wm("handlerType"),n5(e)&&Object.values(e).some(function(r){return!g2(r)})&&wm("handlersType")}function f9e(e){e||wm("initialIsRequired"),n5(e)||wm("initialType"),l9e(e)&&wm("initialContent")}function p9e(e,r){throw new Error(e[r]||e.default)}var m9e={initialIsRequired:"initial state is required",initialType:"initial state should be an object",initialContent:"initial state shouldn't be an empty object",handlerType:"handler should be an object or a function",handlersType:"all handlers should be a functions",selectorType:"selector should be a function",changeType:"provided value of changes should be an object",changeField:'it seams you want to change a field in the state which is not specified in the "initial" state',default:"an unknown error accured in `state-local` package"},wm=Fb(p9e)(m9e),G3={changes:u9e,selector:d9e,handler:h9e,initial:f9e};function g9e(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};G3.initial(e),G3.handler(r);var n={current:e},i=Fb(x9e)(n,r),s=Fb(v9e)(n),o=Fb(G3.changes)(e),a=Fb(y9e)(n);function l(){var c=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(f){return f};return G3.selector(c),c(n.current)}function u(c){a9e(i,s,o,a)(c)}return[l,u]}function y9e(e,r){return g2(r)?r(e.current):r}function v9e(e,r){return e.current=MB(MB({},e.current),r),r}function x9e(e,r,n){return g2(r)?r(e.current):Object.keys(n).forEach(function(i){var s;return(s=r[i])===null||s===void 0?void 0:s.call(r,e.current[i])}),n}var b9e={create:g9e},_9e={paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.55.1/min/vs"}};function w9e(e){return function r(){for(var n=this,i=arguments.length,s=new Array(i),o=0;o<i;o++)s[o]=arguments[o];return s.length>=e.length?e.apply(this,s):function(){for(var a=arguments.length,l=new Array(a),u=0;u<a;u++)l[u]=arguments[u];return r.apply(n,[].concat(s,l))}}}function S9e(e){return{}.toString.call(e).includes("Object")}function k9e(e){return e||PB("configIsRequired"),S9e(e)||PB("configType"),e.urls?(C9e(),{paths:{vs:e.urls.monacoBase}}):e}function C9e(){console.warn(pQ.deprecation)}function j9e(e,r){throw new Error(e[r]||e.default)}var pQ={configIsRequired:"the configuration object is required",configType:"the configuration object should be an object",default:"an unknown error accured in `@monaco-editor/loader` package",deprecation:`Deprecation warning!
816
816
  You are using deprecated way of configuration.
817
817
 
@@ -1066,8 +1066,8 @@ Please report this to https://github.com/markedjs/marked.`,r){let s="<p>An error
1066
1066
  node : x:${e.x} y:${e.y} w:${e.width} h:${e.height}`);const i=e.x,s=e.y,o=Math.abs(i-n.x),a=e.width/2;let l=n.x<r.x?a-o:a+o;const u=e.height/2,c=Math.abs(r.y-n.y),f=Math.abs(r.x-n.x);if(Math.abs(s-r.y)*a>Math.abs(i-r.x)*u){let p=n.y<r.y?r.y-u-s:s-u-r.y;l=f*p/c;const g={x:n.x<r.x?n.x+l:n.x-f+l,y:n.y<r.y?n.y+c-p:n.y-c+p};return l===0&&(g.x=r.x,g.y=r.y),f===0&&(g.x=r.x),c===0&&(g.y=r.y),xt.debug(`abc89 top/bottom calc, Q ${c}, q ${p}, R ${f}, r ${l}`,g),g}else{n.x<r.x?l=r.x-a-i:l=i-a-r.x;let p=c*l/f,g=n.x<r.x?n.x+f-l:n.x-f+l,v=n.y<r.y?n.y+p:n.y-p;return xt.debug(`sides calc abc89, Q ${c}, q ${p}, R ${f}, r ${l}`,{_x:g,_y:v}),l===0&&(g=r.x,v=r.y),f===0&&(g=r.x),c===0&&(v=r.y),{x:g,y:v}}},"intersection"),gF=X((e,r)=>{xt.warn("abc88 cutPathAtIntersect",e,r);let n=[],i=e[0],s=!1;return e.forEach(o=>{if(xt.info("abc88 checking point",o,r),!wUe(r,o)&&!s){const a=SUe(r,i,o);xt.debug("abc88 inside",o,i,a),xt.debug("abc88 intersection",a,r);let l=!1;n.forEach(u=>{l=l||u.x===a.x&&u.y===a.y}),n.some(u=>u.x===a.x&&u.y===a.y)?xt.warn("abc88 no intersect",a,n):n.push(a),s=!0}else xt.warn("abc88 outside",o,i),i=o,s||n.push(o)}),xt.debug("returning points",n),n},"cutPathAtIntersect");function Jie(e){const r=[],n=[];for(let i=1;i<e.length-1;i++){const s=e[i-1],o=e[i],a=e[i+1];(s.x===o.x&&o.y===a.y&&Math.abs(o.x-a.x)>5&&Math.abs(o.y-s.y)>5||s.y===o.y&&o.x===a.x&&Math.abs(o.x-s.x)>5&&Math.abs(o.y-a.y)>5)&&(r.push(o),n.push(i))}return{cornerPoints:r,cornerPointPositions:n}}X(Jie,"extractCornerPoints");var yF=X(function(e,r,n){const i=r.x-e.x,s=r.y-e.y,o=Math.sqrt(i*i+s*s),a=n/o;return{x:r.x-a*i,y:r.y-a*s}},"findAdjacentPoint"),kUe=X(function(e){const{cornerPointPositions:r}=Jie(e),n=[];for(let i=0;i<e.length;i++)if(r.includes(i)){const s=e[i-1],o=e[i+1],a=e[i],l=yF(s,a,5),u=yF(o,a,5),c=u.x-l.x,f=u.y-l.y;n.push(l);const p=Math.sqrt(2)*2;let g={x:a.x,y:a.y};if(Math.abs(o.x-s.x)>10&&Math.abs(o.y-s.y)>=10){xt.debug("Corner point fixing",Math.abs(o.x-s.x),Math.abs(o.y-s.y));const v=5;a.x===l.x?g={x:c<0?l.x-v+p:l.x+v-p,y:f<0?l.y-p:l.y+p}:g={x:c<0?l.x-p:l.x+p,y:f<0?l.y-v+p:l.y+v-p}}else xt.debug("Corner point skipping fixing",Math.abs(o.x-s.x),Math.abs(o.y-s.y));n.push(g,u)}else n.push(e[i]);return n},"fixCorners"),CUe=X((e,r,n)=>{const i=e-r-n,s=2,o=2,a=s+o,l=Math.floor(i/a),u=Array(l).fill(`${s} ${o}`).join(" ");return`0 ${r} ${u} ${n}`},"generateDashArray"),jUe=X(function(e,r,n,i,s,o,a,l=!1){var L;const{handDrawnSeed:u}=Xn();let c=r.points,f=!1;const p=s;var g=o;const v=[];for(const I in r.cssCompiledStyles)Jre(I)||v.push(r.cssCompiledStyles[I]);xt.debug("UIO intersect check",r.points,g.x,p.x),g.intersect&&p.intersect&&!l&&(c=c.slice(1,r.points.length-1),c.unshift(p.intersect(c[0])),xt.debug("Last point UIO",r.start,"-->",r.end,c[c.length-1],g,g.intersect(c[c.length-1])),c.push(g.intersect(c[c.length-1])));const b=btoa(JSON.stringify(c));r.toCluster&&(xt.info("to cluster abc88",n.get(r.toCluster)),c=gF(r.points,n.get(r.toCluster).node),f=!0),r.fromCluster&&(xt.debug("from cluster abc88",n.get(r.fromCluster),JSON.stringify(c,null,2)),c=gF(c.reverse(),n.get(r.fromCluster).node).reverse(),f=!0);let _=c.filter(I=>!Number.isNaN(I.y));const k=xUe(r.curve);k!=="rounded"&&(_=kUe(_));let w=b_;switch(k){case"linear":w=b_;break;case"basis":w=SA;break;case"cardinal":w=Ree;break;case"bumpX":w=Tee;break;case"bumpY":w=Nee;break;case"catmullRom":w=Pee;break;case"monotoneX":w=zee;break;case"monotoneY":w=Fee;break;case"natural":w=Wee;break;case"step":w=Uee;break;case"stepAfter":w=qee;break;case"stepBefore":w=Vee;break;case"rounded":w=b_;break;default:w=SA}const{x:C,y:j}=wBe(r),T=JDe().x(C).y(j).curve(w);let A;switch(r.thickness){case"normal":A="edge-thickness-normal";break;case"thick":A="edge-thickness-thick";break;case"invisible":A="edge-thickness-invisible";break;default:A="edge-thickness-normal"}switch(r.pattern){case"solid":A+=" edge-pattern-solid";break;case"dotted":A+=" edge-pattern-dotted";break;case"dashed":A+=" edge-pattern-dashed";break;default:A+=" edge-pattern-solid"}let E,R=k==="rounded"?Qie(ese(_,r),5):T(_);const M=Array.isArray(r.style)?r.style:[r.style];let W=M.find(I=>I==null?void 0:I.startsWith("stroke:")),$="";r.animate&&($="edge-animation-fast"),r.animation&&($="edge-animation-"+r.animation);let U=!1;if(r.look==="handDrawn"){const I=cr.svg(e);Object.assign([],_);const H=I.path(R,{roughness:.3,seed:u});A+=" transition",E=Ar(H).select("path").attr("id",r.id).attr("class"," "+A+(r.classes?" "+r.classes:"")+($?" "+$:"")).attr("style",M?M.reduce((z,q)=>z+";"+q,""):"");let Y=E.attr("d");E.attr("d",Y),e.node().appendChild(E.node())}else{const I=v.join(";"),H=M?M.reduce((te,re)=>te+re+";",""):"",Y=(I?I+";"+H+";":H)+";"+(M?M.reduce((te,re)=>te+";"+re,""):"");E=e.append("path").attr("d",R).attr("id",r.id).attr("class"," "+A+(r.classes?" "+r.classes:"")+($?" "+$:"")).attr("style",Y),W=(L=Y.match(/stroke:([^;]+)/))==null?void 0:L[1],U=r.animate===!0||!!r.animation||I.includes("animation");const z=E.node(),q=typeof z.getTotalLength=="function"?z.getTotalLength():0,Q=Rz[r.arrowTypeStart]||0,V=Rz[r.arrowTypeEnd]||0;if(r.look==="neo"&&!U){const re=`stroke-dasharray: ${r.pattern==="dotted"||r.pattern==="dashed"?CUe(q,Q,V):`0 ${Q} ${q-Q-V} ${V}`}; stroke-dashoffset: 0;`;E.attr("style",re+E.attr("style"))}}E.attr("data-edge",!0),E.attr("data-et","edge"),E.attr("data-id",r.id),E.attr("data-points",b),r.showPoints&&_.forEach(I=>{e.append("circle").style("stroke","red").style("fill","red").attr("r",1).attr("cx",I.x).attr("cy",I.y)});let B="";(Xn().flowchart.arrowMarkerAbsolute||Xn().state.arrowMarkerAbsolute)&&(B=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,B=B.replace(/\(/g,"\\(").replace(/\)/g,"\\)")),xt.info("arrowTypeStart",r.arrowTypeStart),xt.info("arrowTypeEnd",r.arrowTypeEnd),yUe(E,r,B,a,i,W);const K=Math.floor(c.length/2),P=c[K];ed.isLabelCoordinateInPath(P,E.attr("d"))||(f=!0);let F={};return f&&(F.updatedPath=c),F.originalPath=r.points,F},"insertEdge");function Qie(e,r){if(e.length<2)return"";let n="";const i=e.length,s=1e-5;for(let o=0;o<i;o++){const a=e[o],l=e[o-1],u=e[o+1];if(o===0)n+=`M${a.x},${a.y}`;else if(o===i-1)n+=`L${a.x},${a.y}`;else{const c=a.x-l.x,f=a.y-l.y,p=u.x-a.x,g=u.y-a.y,v=Math.hypot(c,f),b=Math.hypot(p,g);if(v<s||b<s){n+=`L${a.x},${a.y}`;continue}const _=c/v,k=f/v,w=p/b,C=g/b,j=_*w+k*C,T=Math.max(-1,Math.min(1,j)),A=Math.acos(T);if(A<s||Math.abs(Math.PI-A)<s){n+=`L${a.x},${a.y}`;continue}const E=Math.min(r/Math.sin(A/2),v/2,b/2),R=a.x-_*E,M=a.y-k*E,W=a.x+w*E,$=a.y+C*E;n+=`L${R},${M}`,n+=`Q${a.x},${a.y} ${W},${$}`}}return n}X(Qie,"generateRoundedPath");function ZA(e,r){if(!e||!r)return{angle:0,deltaX:0,deltaY:0};const n=r.x-e.x,i=r.y-e.y;return{angle:Math.atan2(i,n),deltaX:n,deltaY:i}}X(ZA,"calculateDeltaAndAngle");function ese(e,r){const n=e.map(s=>({...s}));if(e.length>=2&&ga[r.arrowTypeStart]){const s=ga[r.arrowTypeStart],o=e[0],a=e[1],{angle:l}=ZA(o,a),u=s*Math.cos(l),c=s*Math.sin(l);n[0].x=o.x+u,n[0].y=o.y+c}const i=e.length;if(i>=2&&ga[r.arrowTypeEnd]){const s=ga[r.arrowTypeEnd],o=e[i-1],a=e[i-2],{angle:l}=ZA(a,o),u=s*Math.cos(l),c=s*Math.sin(l);n[i-1].x=o.x-u,n[i-1].y=o.y-c}return n}X(ese,"applyMarkerOffsetsToPoints");var TUe=X((e,r,n,i)=>{r.forEach(s=>{WUe[s](e,n,i)})},"insertMarkers"),NUe=X((e,r,n)=>{xt.trace("Making markers for ",n),e.append("defs").append("marker").attr("id",n+"_"+r+"-extensionStart").attr("class","marker extension "+r).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),e.append("defs").append("marker").attr("id",n+"_"+r+"-extensionEnd").attr("class","marker extension "+r).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},"extension"),EUe=X((e,r,n)=>{e.append("defs").append("marker").attr("id",n+"_"+r+"-compositionStart").attr("class","marker composition "+r).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id",n+"_"+r+"-compositionEnd").attr("class","marker composition "+r).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),AUe=X((e,r,n)=>{e.append("defs").append("marker").attr("id",n+"_"+r+"-aggregationStart").attr("class","marker aggregation "+r).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id",n+"_"+r+"-aggregationEnd").attr("class","marker aggregation "+r).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),OUe=X((e,r,n)=>{e.append("defs").append("marker").attr("id",n+"_"+r+"-dependencyStart").attr("class","marker dependency "+r).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id",n+"_"+r+"-dependencyEnd").attr("class","marker dependency "+r).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),RUe=X((e,r,n)=>{e.append("defs").append("marker").attr("id",n+"_"+r+"-lollipopStart").attr("class","marker lollipop "+r).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),e.append("defs").append("marker").attr("id",n+"_"+r+"-lollipopEnd").attr("class","marker lollipop "+r).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},"lollipop"),MUe=X((e,r,n)=>{e.append("marker").attr("id",n+"_"+r+"-pointEnd").attr("class","marker "+r).attr("viewBox","0 0 10 10").attr("refX",5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),e.append("marker").attr("id",n+"_"+r+"-pointStart").attr("class","marker "+r).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"point"),PUe=X((e,r,n)=>{e.append("marker").attr("id",n+"_"+r+"-circleEnd").attr("class","marker "+r).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),e.append("marker").attr("id",n+"_"+r+"-circleStart").attr("class","marker "+r).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"circle"),LUe=X((e,r,n)=>{e.append("marker").attr("id",n+"_"+r+"-crossEnd").attr("class","marker cross "+r).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),e.append("marker").attr("id",n+"_"+r+"-crossStart").attr("class","marker cross "+r).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},"cross"),$Ue=X((e,r,n)=>{e.append("defs").append("marker").attr("id",n+"_"+r+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),DUe=X((e,r,n)=>{e.append("defs").append("marker").attr("id",n+"_"+r+"-onlyOneStart").attr("class","marker onlyOne "+r).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M9,0 L9,18 M15,0 L15,18"),e.append("defs").append("marker").attr("id",n+"_"+r+"-onlyOneEnd").attr("class","marker onlyOne "+r).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M3,0 L3,18 M9,0 L9,18")},"only_one"),IUe=X((e,r,n)=>{const i=e.append("defs").append("marker").attr("id",n+"_"+r+"-zeroOrOneStart").attr("class","marker zeroOrOne "+r).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),i.append("path").attr("d","M9,0 L9,18");const s=e.append("defs").append("marker").attr("id",n+"_"+r+"-zeroOrOneEnd").attr("class","marker zeroOrOne "+r).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");s.append("circle").attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),s.append("path").attr("d","M21,0 L21,18")},"zero_or_one"),BUe=X((e,r,n)=>{e.append("defs").append("marker").attr("id",n+"_"+r+"-oneOrMoreStart").attr("class","marker oneOrMore "+r).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),e.append("defs").append("marker").attr("id",n+"_"+r+"-oneOrMoreEnd").attr("class","marker oneOrMore "+r).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18")},"one_or_more"),zUe=X((e,r,n)=>{const i=e.append("defs").append("marker").attr("id",n+"_"+r+"-zeroOrMoreStart").attr("class","marker zeroOrMore "+r).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),i.append("path").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18");const s=e.append("defs").append("marker").attr("id",n+"_"+r+"-zeroOrMoreEnd").attr("class","marker zeroOrMore "+r).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");s.append("circle").attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),s.append("path").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")},"zero_or_more"),FUe=X((e,r,n)=>{e.append("defs").append("marker").attr("id",n+"_"+r+"-requirement_arrowEnd").attr("refX",20).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("path").attr("d",`M0,0
1067
1067
  L20,10
1068
1068
  M20,10
1069
- L0,20`)},"requirement_arrow"),HUe=X((e,r,n)=>{const i=e.append("defs").append("marker").attr("id",n+"_"+r+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("g");i.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),i.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),i.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10)},"requirement_contains"),WUe={extension:NUe,composition:EUe,aggregation:AUe,dependency:OUe,lollipop:RUe,point:MUe,circle:PUe,cross:LUe,barb:$Ue,only_one:DUe,zero_or_one:IUe,one_or_more:BUe,zero_or_more:zUe,requirement_arrow:FUe,requirement_contains:HUe},UUe=TUe,VUe={common:lS,getConfig:Sa,insertCluster:ZWe,insertEdge:jUe,insertEdgeLabel:bUe,insertMarkers:UUe,insertNode:Zie,interpolateToCurve:dM,labelHelper:Pr,log:xt,positionEdgeLabel:_Ue},O2={},tse=X(e=>{for(const r of e)O2[r.name]=r},"registerLayoutLoaders"),qUe=X(()=>{tse([{name:"dagre",loader:X(async()=>await Ke(()=>import("./dagre-KLK3FWXG-B_mm1iyq.js"),__vite__mapDeps([47,48,49,50,51,52]),import.meta.url),"loader")},{name:"cose-bilkent",loader:X(async()=>await Ke(()=>import("./cose-bilkent-S5V4N54A-B2pswFgf.js"),__vite__mapDeps([53,54]),import.meta.url),"loader")}])},"registerDefaultLayoutLoaders");qUe();var h1t=X(async(e,r)=>{if(!(e.layoutAlgorithm in O2))throw new Error(`Unknown layout algorithm: ${e.layoutAlgorithm}`);const n=O2[e.layoutAlgorithm];return(await n.loader()).render(e,r,VUe,{algorithm:n.algorithm})},"render"),f1t=X((e="",{fallback:r="dagre"}={})=>{if(e in O2)return e;if(r in O2)return xt.warn(`Layout algorithm ${e} is not registered. Using ${r} as fallback.`),r;throw new Error(`Both layout algorithms ${e} and ${r} are not registered.`)},"getRegisteredLayoutAlgorithm"),GUe=Ore(Object.keys,Object),KUe=Object.prototype,YUe=KUe.hasOwnProperty;function XUe(e){if(!Mj(e))return GUe(e);var r=[];for(var n in Object(e))YUe.call(e,n)&&n!="constructor"&&r.push(n);return r}var JA=I0(bd,"DataView"),QA=I0(bd,"Promise"),eO=I0(bd,"Set"),tO=I0(bd,"WeakMap"),vF="[object Map]",ZUe="[object Object]",xF="[object Promise]",bF="[object Set]",_F="[object WeakMap]",wF="[object DataView]",JUe=D0(JA),QUe=D0(E2),eVe=D0(QA),tVe=D0(eO),rVe=D0(tO),Pg=$0;(JA&&Pg(new JA(new ArrayBuffer(1)))!=wF||E2&&Pg(new E2)!=vF||QA&&Pg(QA.resolve())!=xF||eO&&Pg(new eO)!=bF||tO&&Pg(new tO)!=_F)&&(Pg=function(e){var r=$0(e),n=r==ZUe?e.constructor:void 0,i=n?D0(n):"";if(i)switch(i){case JUe:return wF;case QUe:return vF;case eVe:return xF;case tVe:return bF;case rVe:return _F}return r});var nVe="[object Map]",iVe="[object Set]",sVe=Object.prototype,oVe=sVe.hasOwnProperty;function SF(e){if(e==null)return!0;if(Pj(e)&&(N5(e)||typeof e=="string"||typeof e.splice=="function"||cM(e)||uM(e)||T5(e)))return!e.length;var r=Pg(e);if(r==nVe||r==iVe)return!e.size;if(Mj(e))return!XUe(e).length;for(var n in e)if(oVe.call(e,n))return!1;return!0}var rse="c4",aVe=X(e=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(e),"detector"),lVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./c4Diagram-IC4MRINW-DcfrLcSD.js");return{diagram:r}},__vite__mapDeps([55,56]),import.meta.url);return{id:rse,diagram:e}},"loader"),cVe={id:rse,detector:aVe,loader:lVe},uVe=cVe,nse="flowchart",dVe=X((e,r)=>{var n,i;return((n=r==null?void 0:r.flowchart)==null?void 0:n.defaultRenderer)==="dagre-wrapper"||((i=r==null?void 0:r.flowchart)==null?void 0:i.defaultRenderer)==="elk"?!1:/^\s*graph/.test(e)},"detector"),hVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./flowDiagram-PKNHOUZH-C8E940FU.js");return{diagram:r}},__vite__mapDeps([57,58,56,59,60,61]),import.meta.url);return{id:nse,diagram:e}},"loader"),fVe={id:nse,detector:dVe,loader:hVe},pVe=fVe,ise="flowchart-v2",mVe=X((e,r)=>{var n,i,s;return((n=r==null?void 0:r.flowchart)==null?void 0:n.defaultRenderer)==="dagre-d3"?!1:(((i=r==null?void 0:r.flowchart)==null?void 0:i.defaultRenderer)==="elk"&&(r.layout="elk"),/^\s*graph/.test(e)&&((s=r==null?void 0:r.flowchart)==null?void 0:s.defaultRenderer)==="dagre-wrapper"?!0:/^\s*flowchart/.test(e))},"detector"),gVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./flowDiagram-PKNHOUZH-C8E940FU.js");return{diagram:r}},__vite__mapDeps([57,58,56,59,60,61]),import.meta.url);return{id:ise,diagram:e}},"loader"),yVe={id:ise,detector:mVe,loader:gVe},vVe=yVe,sse="er",xVe=X(e=>/^\s*erDiagram/.test(e),"detector"),bVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./erDiagram-INFDFZHY-C1mGGfuV.js");return{diagram:r}},__vite__mapDeps([62,59,60,61]),import.meta.url);return{id:sse,diagram:e}},"loader"),_Ve={id:sse,detector:xVe,loader:bVe},wVe=_Ve,ose="gitGraph",SVe=X(e=>/^\s*gitGraph/.test(e),"detector"),kVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./gitGraphDiagram-K3NZZRJ6-WAIA_EDl.js");return{diagram:r}},__vite__mapDeps([63,64,65,66,49,51,52]),import.meta.url);return{id:ose,diagram:e}},"loader"),CVe={id:ose,detector:SVe,loader:kVe},jVe=CVe,ase="gantt",TVe=X(e=>/^\s*gantt/.test(e),"detector"),NVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./ganttDiagram-A5KZAMGK-lsxut-te.js");return{diagram:r}},__vite__mapDeps([67,68,69]),import.meta.url);return{id:ase,diagram:e}},"loader"),EVe={id:ase,detector:TVe,loader:NVe},AVe=EVe,lse="info",OVe=X(e=>/^\s*info/.test(e),"detector"),RVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./infoDiagram-LFFYTUFH-DAYPFri7.js");return{diagram:r}},__vite__mapDeps([70,66,49,51,52]),import.meta.url);return{id:lse,diagram:e}},"loader"),MVe={id:lse,detector:OVe,loader:RVe},cse="pie",PVe=X(e=>/^\s*pie/.test(e),"detector"),LVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./pieDiagram-SKSYHLDU-CdEt4jXx.js");return{diagram:r}},__vite__mapDeps([71,64,66,49,51,52,72]),import.meta.url);return{id:cse,diagram:e}},"loader"),$Ve={id:cse,detector:PVe,loader:LVe},use="quadrantChart",DVe=X(e=>/^\s*quadrantChart/.test(e),"detector"),IVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./quadrantDiagram-337W2JSQ-COpDolym.js");return{diagram:r}},__vite__mapDeps([73,68,69]),import.meta.url);return{id:use,diagram:e}},"loader"),BVe={id:use,detector:DVe,loader:IVe},zVe=BVe,dse="xychart",FVe=X(e=>/^\s*xychart(-beta)?/.test(e),"detector"),HVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./xychartDiagram-JWTSCODW-Cj5Ew7sU.js");return{diagram:r}},__vite__mapDeps([74,68,69]),import.meta.url);return{id:dse,diagram:e}},"loader"),WVe={id:dse,detector:FVe,loader:HVe},UVe=WVe,hse="requirement",VVe=X(e=>/^\s*requirement(Diagram)?/.test(e),"detector"),qVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./requirementDiagram-Z7DCOOCP-6fH45fuw.js");return{diagram:r}},__vite__mapDeps([75,59,60]),import.meta.url);return{id:hse,diagram:e}},"loader"),GVe={id:hse,detector:VVe,loader:qVe},KVe=GVe,fse="sequence",YVe=X(e=>/^\s*sequenceDiagram/.test(e),"detector"),XVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./sequenceDiagram-2WXFIKYE-Dh5ZCrw5.js");return{diagram:r}},__vite__mapDeps([76,56,65]),import.meta.url);return{id:fse,diagram:e}},"loader"),ZVe={id:fse,detector:YVe,loader:XVe},JVe=ZVe,pse="class",QVe=X((e,r)=>{var n;return((n=r==null?void 0:r.class)==null?void 0:n.defaultRenderer)==="dagre-wrapper"?!1:/^\s*classDiagram/.test(e)},"detector"),eqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./classDiagram-VBA2DB6C-1QOu-ssk.js");return{diagram:r}},__vite__mapDeps([77,78,58,56,59,60]),import.meta.url);return{id:pse,diagram:e}},"loader"),tqe={id:pse,detector:QVe,loader:eqe},rqe=tqe,mse="classDiagram",nqe=X((e,r)=>{var n;return/^\s*classDiagram/.test(e)&&((n=r==null?void 0:r.class)==null?void 0:n.defaultRenderer)==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(e)},"detector"),iqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./classDiagram-v2-RAHNMMFH-1QOu-ssk.js");return{diagram:r}},__vite__mapDeps([79,78,58,56,59,60]),import.meta.url);return{id:mse,diagram:e}},"loader"),sqe={id:mse,detector:nqe,loader:iqe},oqe=sqe,gse="state",aqe=X((e,r)=>{var n;return((n=r==null?void 0:r.state)==null?void 0:n.defaultRenderer)==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(e)},"detector"),lqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./stateDiagram-RAJIS63D-B4pzyUVO.js");return{diagram:r}},__vite__mapDeps([80,81,59,60,48,49,50,51]),import.meta.url);return{id:gse,diagram:e}},"loader"),cqe={id:gse,detector:aqe,loader:lqe},uqe=cqe,yse="stateDiagram",dqe=X((e,r)=>{var n;return!!(/^\s*stateDiagram-v2/.test(e)||/^\s*stateDiagram/.test(e)&&((n=r==null?void 0:r.state)==null?void 0:n.defaultRenderer)==="dagre-wrapper")},"detector"),hqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./stateDiagram-v2-FVOUBMTO-Bsf8fXIh.js");return{diagram:r}},__vite__mapDeps([82,81,59,60]),import.meta.url);return{id:yse,diagram:e}},"loader"),fqe={id:yse,detector:dqe,loader:hqe},pqe=fqe,vse="journey",mqe=X(e=>/^\s*journey/.test(e),"detector"),gqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./journeyDiagram-4ABVD52K-CkOKI0GQ.js");return{diagram:r}},__vite__mapDeps([83,58,56,72]),import.meta.url);return{id:vse,diagram:e}},"loader"),yqe={id:vse,detector:mqe,loader:gqe},vqe=yqe,xqe=X((e,r,n)=>{xt.debug(`rendering svg for syntax error
1070
- `);const i=pIe(r),s=i.append("g");i.attr("viewBox","0 0 2412 512"),GQ(i,100,512,!0),s.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),s.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),s.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),s.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),s.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),s.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),s.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),s.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${n}`)},"draw"),xse={draw:xqe},bqe=xse,_qe={db:{},renderer:xse,parser:{parse:X(()=>{},"parse")}},wqe=_qe,bse="flowchart-elk",Sqe=X((e,r={})=>{var n;return/^\s*flowchart-elk/.test(e)||/^\s*(flowchart|graph)/.test(e)&&((n=r==null?void 0:r.flowchart)==null?void 0:n.defaultRenderer)==="elk"?(r.layout="elk",!0):!1},"detector"),kqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./flowDiagram-PKNHOUZH-C8E940FU.js");return{diagram:r}},__vite__mapDeps([57,58,56,59,60,61]),import.meta.url);return{id:bse,diagram:e}},"loader"),Cqe={id:bse,detector:Sqe,loader:kqe},jqe=Cqe,_se="timeline",Tqe=X(e=>/^\s*timeline/.test(e),"detector"),Nqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./timeline-definition-YZTLITO2-D-djwhRp.js");return{diagram:r}},__vite__mapDeps([84,72]),import.meta.url);return{id:_se,diagram:e}},"loader"),Eqe={id:_se,detector:Tqe,loader:Nqe},Aqe=Eqe,wse="mindmap",Oqe=X(e=>/^\s*mindmap/.test(e),"detector"),Rqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./mindmap-definition-YRQLILUH-B6-Jp-gS.js");return{diagram:r}},__vite__mapDeps([85,59,60]),import.meta.url);return{id:wse,diagram:e}},"loader"),Mqe={id:wse,detector:Oqe,loader:Rqe},Pqe=Mqe,Sse="kanban",Lqe=X(e=>/^\s*kanban/.test(e),"detector"),$qe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./kanban-definition-K7BYSVSG-D-lG42qT.js");return{diagram:r}},__vite__mapDeps([86,58]),import.meta.url);return{id:Sse,diagram:e}},"loader"),Dqe={id:Sse,detector:Lqe,loader:$qe},Iqe=Dqe,kse="sankey",Bqe=X(e=>/^\s*sankey(-beta)?/.test(e),"detector"),zqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./sankeyDiagram-WA2Y5GQK-CcVfHwuS.js");return{diagram:r}},[],import.meta.url);return{id:kse,diagram:e}},"loader"),Fqe={id:kse,detector:Bqe,loader:zqe},Hqe=Fqe,Cse="packet",Wqe=X(e=>/^\s*packet(-beta)?/.test(e),"detector"),Uqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./diagram-P4PSJMXO-CoJfUz1J.js");return{diagram:r}},__vite__mapDeps([87,64,66,49,51,52]),import.meta.url);return{id:Cse,diagram:e}},"loader"),Vqe={id:Cse,detector:Wqe,loader:Uqe},jse="radar",qqe=X(e=>/^\s*radar-beta/.test(e),"detector"),Gqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./diagram-IFDJBPK2-BPaeYs9k.js");return{diagram:r}},__vite__mapDeps([88,64,66,49,51,52]),import.meta.url);return{id:jse,diagram:e}},"loader"),Kqe={id:jse,detector:qqe,loader:Gqe},Tse="block",Yqe=X(e=>/^\s*block(-beta)?/.test(e),"detector"),Xqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./blockDiagram-WCTKOSBZ-BnR3zASP.js");return{diagram:r}},__vite__mapDeps([89,58,52,49,48,61]),import.meta.url);return{id:Tse,diagram:e}},"loader"),Zqe={id:Tse,detector:Yqe,loader:Xqe},Jqe=Zqe,Nse="architecture",Qqe=X(e=>/^\s*architecture/.test(e),"detector"),eGe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./architectureDiagram-2XIMDMQ5-BggCB43_.js");return{diagram:r}},__vite__mapDeps([90,64,66,49,51,52,54]),import.meta.url);return{id:Nse,diagram:e}},"loader"),tGe={id:Nse,detector:Qqe,loader:eGe},rGe=tGe,Ese="ishikawa",nGe=X(e=>/^\s*ishikawa(-beta)?\b/i.test(e),"detector"),iGe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./ishikawaDiagram-PHBUUO56-vWJG7ZId.js");return{diagram:r}},[],import.meta.url);return{id:Ese,diagram:e}},"loader"),sGe={id:Ese,detector:nGe,loader:iGe},Ase="venn",oGe=X(e=>/^\s*venn-beta/.test(e),"detector"),aGe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./vennDiagram-LZ73GAT5-PvZjAvwQ.js");return{diagram:r}},[],import.meta.url);return{id:Ase,diagram:e}},"loader"),lGe={id:Ase,detector:oGe,loader:aGe},cGe=lGe,Ose="treemap",uGe=X(e=>/^\s*treemap/.test(e),"detector"),dGe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./diagram-E7M64L7V-BHrtFCGY.js");return{diagram:r}},__vite__mapDeps([91,60,64,66,49,51,52,69]),import.meta.url);return{id:Ose,diagram:e}},"loader"),hGe={id:Ose,detector:uGe,loader:dGe},kF=!1,Hj=X(()=>{kF||(kF=!0,c5("error",wqe,e=>e.toLowerCase().trim()==="error"),c5("---",{db:{clear:X(()=>{},"clear")},styles:{},renderer:{draw:X(()=>{},"draw")},parser:{parse:X(()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")},"parse")},init:X(()=>null,"init")},e=>e.toLowerCase().trimStart().startsWith("---")),lA(jqe,Pqe,rGe),lA(uVe,Iqe,oqe,rqe,wVe,AVe,MVe,$Ve,KVe,JVe,vVe,pVe,Aqe,jVe,pqe,uqe,vqe,zVe,Hqe,Vqe,UVe,Jqe,Kqe,sGe,hGe,cGe))},"addDiagrams"),fGe=X(async()=>{xt.debug("Loading registered diagrams");const r=(await Promise.allSettled(Object.entries(f0).map(async([n,{detector:i,loader:s}])=>{if(s)try{hA(n)}catch{try{const{diagram:o,id:a}=await s();c5(a,o,i)}catch(o){throw xt.error(`Failed to load external diagram with key ${n}. Removing from detectors.`),delete f0[n],o}}}))).filter(n=>n.status==="rejected");if(r.length>0){xt.error(`Failed to load ${r.length} external diagrams`);for(const n of r)xt.error(n);throw new Error(`Failed to load ${r.length} external diagrams`)}},"loadRegisteredDiagrams"),pGe="graphics-document document";function Rse(e,r){e.attr("role",pGe),r!==""&&e.attr("aria-roledescription",r)}X(Rse,"setA11yDiagramInfo");function Mse(e,r,n,i){if(e.insert!==void 0){if(n){const s=`chart-desc-${i}`;e.attr("aria-describedby",s),e.insert("desc",":first-child").attr("id",s).text(n)}if(r){const s=`chart-title-${i}`;e.attr("aria-labelledby",s),e.insert("title",":first-child").attr("id",s).text(r)}}}X(Mse,"addSVGa11yTitleDescription");var n0,rO=(n0=class{constructor(r,n,i,s,o){this.type=r,this.text=n,this.db=i,this.parser=s,this.renderer=o}static async fromText(r,n={}){var c,f;const i=Sa(),s=RR(r,i);r=yHe(r)+`
1069
+ L0,20`)},"requirement_arrow"),HUe=X((e,r,n)=>{const i=e.append("defs").append("marker").attr("id",n+"_"+r+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("g");i.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),i.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),i.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10)},"requirement_contains"),WUe={extension:NUe,composition:EUe,aggregation:AUe,dependency:OUe,lollipop:RUe,point:MUe,circle:PUe,cross:LUe,barb:$Ue,only_one:DUe,zero_or_one:IUe,one_or_more:BUe,zero_or_more:zUe,requirement_arrow:FUe,requirement_contains:HUe},UUe=TUe,VUe={common:lS,getConfig:Sa,insertCluster:ZWe,insertEdge:jUe,insertEdgeLabel:bUe,insertMarkers:UUe,insertNode:Zie,interpolateToCurve:dM,labelHelper:Pr,log:xt,positionEdgeLabel:_Ue},O2={},tse=X(e=>{for(const r of e)O2[r.name]=r},"registerLayoutLoaders"),qUe=X(()=>{tse([{name:"dagre",loader:X(async()=>await Ke(()=>import("./dagre-KLK3FWXG-C5KN8CH-.js"),__vite__mapDeps([47,48,49,50,51,52]),import.meta.url),"loader")},{name:"cose-bilkent",loader:X(async()=>await Ke(()=>import("./cose-bilkent-S5V4N54A-68vIQuVf.js"),__vite__mapDeps([53,54]),import.meta.url),"loader")}])},"registerDefaultLayoutLoaders");qUe();var h1t=X(async(e,r)=>{if(!(e.layoutAlgorithm in O2))throw new Error(`Unknown layout algorithm: ${e.layoutAlgorithm}`);const n=O2[e.layoutAlgorithm];return(await n.loader()).render(e,r,VUe,{algorithm:n.algorithm})},"render"),f1t=X((e="",{fallback:r="dagre"}={})=>{if(e in O2)return e;if(r in O2)return xt.warn(`Layout algorithm ${e} is not registered. Using ${r} as fallback.`),r;throw new Error(`Both layout algorithms ${e} and ${r} are not registered.`)},"getRegisteredLayoutAlgorithm"),GUe=Ore(Object.keys,Object),KUe=Object.prototype,YUe=KUe.hasOwnProperty;function XUe(e){if(!Mj(e))return GUe(e);var r=[];for(var n in Object(e))YUe.call(e,n)&&n!="constructor"&&r.push(n);return r}var JA=I0(bd,"DataView"),QA=I0(bd,"Promise"),eO=I0(bd,"Set"),tO=I0(bd,"WeakMap"),vF="[object Map]",ZUe="[object Object]",xF="[object Promise]",bF="[object Set]",_F="[object WeakMap]",wF="[object DataView]",JUe=D0(JA),QUe=D0(E2),eVe=D0(QA),tVe=D0(eO),rVe=D0(tO),Pg=$0;(JA&&Pg(new JA(new ArrayBuffer(1)))!=wF||E2&&Pg(new E2)!=vF||QA&&Pg(QA.resolve())!=xF||eO&&Pg(new eO)!=bF||tO&&Pg(new tO)!=_F)&&(Pg=function(e){var r=$0(e),n=r==ZUe?e.constructor:void 0,i=n?D0(n):"";if(i)switch(i){case JUe:return wF;case QUe:return vF;case eVe:return xF;case tVe:return bF;case rVe:return _F}return r});var nVe="[object Map]",iVe="[object Set]",sVe=Object.prototype,oVe=sVe.hasOwnProperty;function SF(e){if(e==null)return!0;if(Pj(e)&&(N5(e)||typeof e=="string"||typeof e.splice=="function"||cM(e)||uM(e)||T5(e)))return!e.length;var r=Pg(e);if(r==nVe||r==iVe)return!e.size;if(Mj(e))return!XUe(e).length;for(var n in e)if(oVe.call(e,n))return!1;return!0}var rse="c4",aVe=X(e=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(e),"detector"),lVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./c4Diagram-IC4MRINW-tscVR0CV.js");return{diagram:r}},__vite__mapDeps([55,56]),import.meta.url);return{id:rse,diagram:e}},"loader"),cVe={id:rse,detector:aVe,loader:lVe},uVe=cVe,nse="flowchart",dVe=X((e,r)=>{var n,i;return((n=r==null?void 0:r.flowchart)==null?void 0:n.defaultRenderer)==="dagre-wrapper"||((i=r==null?void 0:r.flowchart)==null?void 0:i.defaultRenderer)==="elk"?!1:/^\s*graph/.test(e)},"detector"),hVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./flowDiagram-PKNHOUZH-D-vEhWXW.js");return{diagram:r}},__vite__mapDeps([57,58,56,59,60,61]),import.meta.url);return{id:nse,diagram:e}},"loader"),fVe={id:nse,detector:dVe,loader:hVe},pVe=fVe,ise="flowchart-v2",mVe=X((e,r)=>{var n,i,s;return((n=r==null?void 0:r.flowchart)==null?void 0:n.defaultRenderer)==="dagre-d3"?!1:(((i=r==null?void 0:r.flowchart)==null?void 0:i.defaultRenderer)==="elk"&&(r.layout="elk"),/^\s*graph/.test(e)&&((s=r==null?void 0:r.flowchart)==null?void 0:s.defaultRenderer)==="dagre-wrapper"?!0:/^\s*flowchart/.test(e))},"detector"),gVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./flowDiagram-PKNHOUZH-D-vEhWXW.js");return{diagram:r}},__vite__mapDeps([57,58,56,59,60,61]),import.meta.url);return{id:ise,diagram:e}},"loader"),yVe={id:ise,detector:mVe,loader:gVe},vVe=yVe,sse="er",xVe=X(e=>/^\s*erDiagram/.test(e),"detector"),bVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./erDiagram-INFDFZHY-B4ln8GEH.js");return{diagram:r}},__vite__mapDeps([62,59,60,61]),import.meta.url);return{id:sse,diagram:e}},"loader"),_Ve={id:sse,detector:xVe,loader:bVe},wVe=_Ve,ose="gitGraph",SVe=X(e=>/^\s*gitGraph/.test(e),"detector"),kVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./gitGraphDiagram-K3NZZRJ6-CE7PvMtY.js");return{diagram:r}},__vite__mapDeps([63,64,65,66,49,51,52]),import.meta.url);return{id:ose,diagram:e}},"loader"),CVe={id:ose,detector:SVe,loader:kVe},jVe=CVe,ase="gantt",TVe=X(e=>/^\s*gantt/.test(e),"detector"),NVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./ganttDiagram-A5KZAMGK-Bj899JeY.js");return{diagram:r}},__vite__mapDeps([67,68,69]),import.meta.url);return{id:ase,diagram:e}},"loader"),EVe={id:ase,detector:TVe,loader:NVe},AVe=EVe,lse="info",OVe=X(e=>/^\s*info/.test(e),"detector"),RVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./infoDiagram-LFFYTUFH-CEhE__0L.js");return{diagram:r}},__vite__mapDeps([70,66,49,51,52]),import.meta.url);return{id:lse,diagram:e}},"loader"),MVe={id:lse,detector:OVe,loader:RVe},cse="pie",PVe=X(e=>/^\s*pie/.test(e),"detector"),LVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./pieDiagram-SKSYHLDU-BDkWKQxj.js");return{diagram:r}},__vite__mapDeps([71,64,66,49,51,52,72]),import.meta.url);return{id:cse,diagram:e}},"loader"),$Ve={id:cse,detector:PVe,loader:LVe},use="quadrantChart",DVe=X(e=>/^\s*quadrantChart/.test(e),"detector"),IVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./quadrantDiagram-337W2JSQ-CxtaLznn.js");return{diagram:r}},__vite__mapDeps([73,68,69]),import.meta.url);return{id:use,diagram:e}},"loader"),BVe={id:use,detector:DVe,loader:IVe},zVe=BVe,dse="xychart",FVe=X(e=>/^\s*xychart(-beta)?/.test(e),"detector"),HVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./xychartDiagram-JWTSCODW-Bksk64Qe.js");return{diagram:r}},__vite__mapDeps([74,68,69]),import.meta.url);return{id:dse,diagram:e}},"loader"),WVe={id:dse,detector:FVe,loader:HVe},UVe=WVe,hse="requirement",VVe=X(e=>/^\s*requirement(Diagram)?/.test(e),"detector"),qVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./requirementDiagram-Z7DCOOCP-DEJRaUqC.js");return{diagram:r}},__vite__mapDeps([75,59,60]),import.meta.url);return{id:hse,diagram:e}},"loader"),GVe={id:hse,detector:VVe,loader:qVe},KVe=GVe,fse="sequence",YVe=X(e=>/^\s*sequenceDiagram/.test(e),"detector"),XVe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./sequenceDiagram-2WXFIKYE-v_aeEc1X.js");return{diagram:r}},__vite__mapDeps([76,56,65]),import.meta.url);return{id:fse,diagram:e}},"loader"),ZVe={id:fse,detector:YVe,loader:XVe},JVe=ZVe,pse="class",QVe=X((e,r)=>{var n;return((n=r==null?void 0:r.class)==null?void 0:n.defaultRenderer)==="dagre-wrapper"?!1:/^\s*classDiagram/.test(e)},"detector"),eqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./classDiagram-VBA2DB6C-BQ_dcoDu.js");return{diagram:r}},__vite__mapDeps([77,78,58,56,59,60]),import.meta.url);return{id:pse,diagram:e}},"loader"),tqe={id:pse,detector:QVe,loader:eqe},rqe=tqe,mse="classDiagram",nqe=X((e,r)=>{var n;return/^\s*classDiagram/.test(e)&&((n=r==null?void 0:r.class)==null?void 0:n.defaultRenderer)==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(e)},"detector"),iqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./classDiagram-v2-RAHNMMFH-BQ_dcoDu.js");return{diagram:r}},__vite__mapDeps([79,78,58,56,59,60]),import.meta.url);return{id:mse,diagram:e}},"loader"),sqe={id:mse,detector:nqe,loader:iqe},oqe=sqe,gse="state",aqe=X((e,r)=>{var n;return((n=r==null?void 0:r.state)==null?void 0:n.defaultRenderer)==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(e)},"detector"),lqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./stateDiagram-RAJIS63D-CQhLl93Z.js");return{diagram:r}},__vite__mapDeps([80,81,59,60,48,49,50,51]),import.meta.url);return{id:gse,diagram:e}},"loader"),cqe={id:gse,detector:aqe,loader:lqe},uqe=cqe,yse="stateDiagram",dqe=X((e,r)=>{var n;return!!(/^\s*stateDiagram-v2/.test(e)||/^\s*stateDiagram/.test(e)&&((n=r==null?void 0:r.state)==null?void 0:n.defaultRenderer)==="dagre-wrapper")},"detector"),hqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./stateDiagram-v2-FVOUBMTO-CmkHVf0O.js");return{diagram:r}},__vite__mapDeps([82,81,59,60]),import.meta.url);return{id:yse,diagram:e}},"loader"),fqe={id:yse,detector:dqe,loader:hqe},pqe=fqe,vse="journey",mqe=X(e=>/^\s*journey/.test(e),"detector"),gqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./journeyDiagram-4ABVD52K-k37UkiLR.js");return{diagram:r}},__vite__mapDeps([83,58,56,72]),import.meta.url);return{id:vse,diagram:e}},"loader"),yqe={id:vse,detector:mqe,loader:gqe},vqe=yqe,xqe=X((e,r,n)=>{xt.debug(`rendering svg for syntax error
1070
+ `);const i=pIe(r),s=i.append("g");i.attr("viewBox","0 0 2412 512"),GQ(i,100,512,!0),s.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),s.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),s.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),s.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),s.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),s.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),s.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),s.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${n}`)},"draw"),xse={draw:xqe},bqe=xse,_qe={db:{},renderer:xse,parser:{parse:X(()=>{},"parse")}},wqe=_qe,bse="flowchart-elk",Sqe=X((e,r={})=>{var n;return/^\s*flowchart-elk/.test(e)||/^\s*(flowchart|graph)/.test(e)&&((n=r==null?void 0:r.flowchart)==null?void 0:n.defaultRenderer)==="elk"?(r.layout="elk",!0):!1},"detector"),kqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./flowDiagram-PKNHOUZH-D-vEhWXW.js");return{diagram:r}},__vite__mapDeps([57,58,56,59,60,61]),import.meta.url);return{id:bse,diagram:e}},"loader"),Cqe={id:bse,detector:Sqe,loader:kqe},jqe=Cqe,_se="timeline",Tqe=X(e=>/^\s*timeline/.test(e),"detector"),Nqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./timeline-definition-YZTLITO2-DSwPp95l.js");return{diagram:r}},__vite__mapDeps([84,72]),import.meta.url);return{id:_se,diagram:e}},"loader"),Eqe={id:_se,detector:Tqe,loader:Nqe},Aqe=Eqe,wse="mindmap",Oqe=X(e=>/^\s*mindmap/.test(e),"detector"),Rqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./mindmap-definition-YRQLILUH-A3awregK.js");return{diagram:r}},__vite__mapDeps([85,59,60]),import.meta.url);return{id:wse,diagram:e}},"loader"),Mqe={id:wse,detector:Oqe,loader:Rqe},Pqe=Mqe,Sse="kanban",Lqe=X(e=>/^\s*kanban/.test(e),"detector"),$qe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./kanban-definition-K7BYSVSG-DpvMA_RV.js");return{diagram:r}},__vite__mapDeps([86,58]),import.meta.url);return{id:Sse,diagram:e}},"loader"),Dqe={id:Sse,detector:Lqe,loader:$qe},Iqe=Dqe,kse="sankey",Bqe=X(e=>/^\s*sankey(-beta)?/.test(e),"detector"),zqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./sankeyDiagram-WA2Y5GQK-DCyLHPB4.js");return{diagram:r}},[],import.meta.url);return{id:kse,diagram:e}},"loader"),Fqe={id:kse,detector:Bqe,loader:zqe},Hqe=Fqe,Cse="packet",Wqe=X(e=>/^\s*packet(-beta)?/.test(e),"detector"),Uqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./diagram-P4PSJMXO-KS_0Knri.js");return{diagram:r}},__vite__mapDeps([87,64,66,49,51,52]),import.meta.url);return{id:Cse,diagram:e}},"loader"),Vqe={id:Cse,detector:Wqe,loader:Uqe},jse="radar",qqe=X(e=>/^\s*radar-beta/.test(e),"detector"),Gqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./diagram-IFDJBPK2-DfAnycK1.js");return{diagram:r}},__vite__mapDeps([88,64,66,49,51,52]),import.meta.url);return{id:jse,diagram:e}},"loader"),Kqe={id:jse,detector:qqe,loader:Gqe},Tse="block",Yqe=X(e=>/^\s*block(-beta)?/.test(e),"detector"),Xqe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./blockDiagram-WCTKOSBZ-De228qTb.js");return{diagram:r}},__vite__mapDeps([89,58,52,49,48,61]),import.meta.url);return{id:Tse,diagram:e}},"loader"),Zqe={id:Tse,detector:Yqe,loader:Xqe},Jqe=Zqe,Nse="architecture",Qqe=X(e=>/^\s*architecture/.test(e),"detector"),eGe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./architectureDiagram-2XIMDMQ5-DYYp8d2u.js");return{diagram:r}},__vite__mapDeps([90,64,66,49,51,52,54]),import.meta.url);return{id:Nse,diagram:e}},"loader"),tGe={id:Nse,detector:Qqe,loader:eGe},rGe=tGe,Ese="ishikawa",nGe=X(e=>/^\s*ishikawa(-beta)?\b/i.test(e),"detector"),iGe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./ishikawaDiagram-PHBUUO56-CXJZ5j4h.js");return{diagram:r}},[],import.meta.url);return{id:Ese,diagram:e}},"loader"),sGe={id:Ese,detector:nGe,loader:iGe},Ase="venn",oGe=X(e=>/^\s*venn-beta/.test(e),"detector"),aGe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./vennDiagram-LZ73GAT5-CmNDpWuq.js");return{diagram:r}},[],import.meta.url);return{id:Ase,diagram:e}},"loader"),lGe={id:Ase,detector:oGe,loader:aGe},cGe=lGe,Ose="treemap",uGe=X(e=>/^\s*treemap/.test(e),"detector"),dGe=X(async()=>{const{diagram:e}=await Ke(async()=>{const{diagram:r}=await import("./diagram-E7M64L7V-C7dPZ_kU.js");return{diagram:r}},__vite__mapDeps([91,60,64,66,49,51,52,69]),import.meta.url);return{id:Ose,diagram:e}},"loader"),hGe={id:Ose,detector:uGe,loader:dGe},kF=!1,Hj=X(()=>{kF||(kF=!0,c5("error",wqe,e=>e.toLowerCase().trim()==="error"),c5("---",{db:{clear:X(()=>{},"clear")},styles:{},renderer:{draw:X(()=>{},"draw")},parser:{parse:X(()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")},"parse")},init:X(()=>null,"init")},e=>e.toLowerCase().trimStart().startsWith("---")),lA(jqe,Pqe,rGe),lA(uVe,Iqe,oqe,rqe,wVe,AVe,MVe,$Ve,KVe,JVe,vVe,pVe,Aqe,jVe,pqe,uqe,vqe,zVe,Hqe,Vqe,UVe,Jqe,Kqe,sGe,hGe,cGe))},"addDiagrams"),fGe=X(async()=>{xt.debug("Loading registered diagrams");const r=(await Promise.allSettled(Object.entries(f0).map(async([n,{detector:i,loader:s}])=>{if(s)try{hA(n)}catch{try{const{diagram:o,id:a}=await s();c5(a,o,i)}catch(o){throw xt.error(`Failed to load external diagram with key ${n}. Removing from detectors.`),delete f0[n],o}}}))).filter(n=>n.status==="rejected");if(r.length>0){xt.error(`Failed to load ${r.length} external diagrams`);for(const n of r)xt.error(n);throw new Error(`Failed to load ${r.length} external diagrams`)}},"loadRegisteredDiagrams"),pGe="graphics-document document";function Rse(e,r){e.attr("role",pGe),r!==""&&e.attr("aria-roledescription",r)}X(Rse,"setA11yDiagramInfo");function Mse(e,r,n,i){if(e.insert!==void 0){if(n){const s=`chart-desc-${i}`;e.attr("aria-describedby",s),e.insert("desc",":first-child").attr("id",s).text(n)}if(r){const s=`chart-title-${i}`;e.attr("aria-labelledby",s),e.insert("title",":first-child").attr("id",s).text(r)}}}X(Mse,"addSVGa11yTitleDescription");var n0,rO=(n0=class{constructor(r,n,i,s,o){this.type=r,this.text=n,this.db=i,this.parser=s,this.renderer=o}static async fromText(r,n={}){var c,f;const i=Sa(),s=RR(r,i);r=yHe(r)+`
1071
1071
  `;try{hA(s)}catch{const p=sMe(s);if(!p)throw new MQ(`Diagram ${s} not found.`);const{id:g,diagram:v}=await p();c5(g,v)}const{db:o,parser:a,renderer:l,init:u}=hA(s);return a.parser&&(a.parser.yy=o),(c=o.clear)==null||c.call(o),u==null||u(i),n.title&&((f=o.setDiagramTitle)==null||f.call(o,n.title)),await a.parse(r),new n0(s,r,o,a,l)}async render(r,n){await this.renderer.draw(this.text,r,n,this)}getParser(){return this.parser}getType(){return this.type}},X(n0,"Diagram"),n0),CF=[],mGe=X(()=>{CF.forEach(e=>{e()}),CF=[]},"attachFunctions"),gGe=X(e=>e.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart(),"cleanupComments");function Pse(e){const r=e.match(RQ);if(!r)return{text:e,metadata:{}};let n=_Be(r[1],{schema:bBe})??{};n=typeof n=="object"&&!Array.isArray(n)?n:{};const i={};return n.displayMode&&(i.displayMode=n.displayMode.toString()),n.title&&(i.title=n.title.toString()),n.config&&(i.config=n.config),{text:e.slice(r[0].length),metadata:i}}X(Pse,"extractFrontMatter");var yGe=X(e=>e.replace(/\r\n?/g,`
1072
1072
  `).replace(/<(\w+)([^>]*)>/g,(r,n,i)=>"<"+n+i.replace(/="([^"]*)"/g,"='$1'")+">"),"cleanupText"),vGe=X(e=>{const{text:r,metadata:n}=Pse(e),{displayMode:i,title:s,config:o={}}=n;return i&&(o.gantt||(o.gantt={}),o.gantt.displayMode=i),{title:s,config:o,text:r}},"processFrontmatter"),xGe=X(e=>{const r=ed.detectInit(e)??{},n=ed.detectDirective(e,"wrap");return Array.isArray(n)?r.wrap=n.some(({type:i})=>i==="wrap"):(n==null?void 0:n.type)==="wrap"&&(r.wrap=!0),{text:iHe(e),directive:r}},"processDirectives");function RM(e){const r=yGe(e),n=vGe(r),i=xGe(n.text),s=gM(n.config,i.directive);return e=gGe(i.text),{code:e,title:n.title,config:s}}X(RM,"preprocessDiagram");function Lse(e){const r=new TextEncoder().encode(e),n=Array.from(r,i=>String.fromCodePoint(i)).join("");return btoa(n)}X(Lse,"toBase64");var bGe=5e4,_Ge="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",wGe="sandbox",SGe="loose",kGe="http://www.w3.org/2000/svg",CGe="http://www.w3.org/1999/xlink",jGe="http://www.w3.org/1999/xhtml",TGe="100%",NGe="100%",EGe="border:0;margin:0;",AGe="margin:0",OGe="allow-top-navigation-by-user-activation allow-popups",RGe='The "iframe" tag is not supported by your browser.',MGe=["foreignobject"],PGe=["dominant-baseline"];function MM(e){const r=RM(e);return a5(),_Me(r.config??{}),r}X(MM,"processAndSetConfigs");async function $se(e,r){Hj();try{const{code:n,config:i}=MM(e);return{diagramType:(await Ise(n)).type,config:i}}catch(n){if(r!=null&&r.suppressErrors)return!1;throw n}}X($se,"parse");var jF=X((e,r,n=[])=>`
1073
1073
  .${e} ${r} { ${n.join(" !important; ")} !important; }`,"cssImportantStyles"),LGe=X((e,r=new Map)=>{let n="";if(e.themeCSS!==void 0&&(n+=`
@@ -1396,4 +1396,4 @@ ${Cn.content.slice(0,2e3)}
1396
1396
 
1397
1397
  `:""}${Wr.join(`
1398
1398
 
1399
- `)}`:me,displayContent:me,referencedFiles:Ae.length>0?Ae:void 0,displaySegments:he,attachments:Rt.size>0?[...Rt]:void 0}},[dl]),dg=y.useCallback(async(D,ee,fe)=>{const he=await Pu(e,D,fe);if(!he)return;const me=Lk(he.displaySegments,ee);Us({content:he.promptWithReferences,displayContent:he.displayContent||he.promptWithReferences,mode:Ft,provider:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,responseStyle:jr,model:lt??void 0,referencedFiles:he.referencedFiles,displaySegments:me,attachments:ee}),r(""),i(void 0)},[Ft,Pt,Wt,jr,lt,Us,e,Pu]),Ap=y.useCallback(async(D,ee)=>{if(!cyt(Nc==null?void 0:Nc.name))return;const fe=a8(ee);!fe||fe==="New Chat"||await ku(D,fe)},[Nc==null?void 0:Nc.name,ku]),hg=async(D,ee,fe)=>{if(yt==="manager"||vr==="thread")return ax(D,ee,fe);const he=await Pu(e,D,fe);if(!he&&(!ee||ee.length===0))return;if(!kt){o(!0);return}const me=(he==null?void 0:he.promptWithReferences)??e.trim(),Ae=Lk(he==null?void 0:he.displaySegments,ee),mt=a8((he==null?void 0:he.displayContent)||me);let bt=st;if(!bt){const zt=await uo(void 0,mt);bt=(zt==null?void 0:zt.id)??null}if(bt){if(await Ap(bt,(he==null?void 0:he.displayContent)||me),rs||yi.length>0){Us({content:me,displayContent:(he==null?void 0:he.displayContent)||me,mode:Ft,provider:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,responseStyle:jr,model:lt??void 0,referencedFiles:he==null?void 0:he.referencedFiles,displaySegments:Ae,attachments:ee}),r(""),i(void 0);return}Oc(me,{token:kt,sessionId:bt,mode:Ft,provider:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,responseStyle:jr,model:lt??void 0,onLoginRequired:()=>o(!0),attachments:ee,...he!=null&&he.displayContent?{displayContent:he.displayContent||me}:{},...he!=null&&he.referencedFiles?{referencedFiles:he.referencedFiles}:{},...Ae!=null&&Ae.length?{displaySegments:Ae}:{}}),r(""),i(void 0)}},ax=async(D,ee,fe)=>{var mt;const he=await Pu(e,D,fe);if(!he||Lo)return;const me=Lk(he.displaySegments,ee),Ae=be.selectedThread?((mt=ci[be.selectedThread.id])==null?void 0:mt.length)??0:0;if(be.selectedThread&&(be.selectedThread.status==="running"||Ae>0)){Op(be.selectedThread.id,{id:`mq-${Date.now()}-${Math.random().toString(36).slice(2,6)}`,content:he.displayContent||he.promptWithReferences,displayContent:he.displayContent||he.promptWithReferences,fullContent:he.promptWithReferences,referencedFiles:he.referencedFiles,displaySegments:me,attachments:he.attachments,providerId:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,model:lt??void 0,queuedAt:Date.now()}),r(""),i(void 0);return}r(""),i(void 0),await be.handleSend(he.promptWithReferences,Pt,Pt!=="jait"?Wt:void 0,lt??void 0,{displayContent:he.displayContent||he.promptWithReferences,referencedFiles:he.referencedFiles,displaySegments:me,attachments:he.attachments})},lx=y.useRef(!1);y.useEffect(()=>{var ee,fe,he;if(yt==="manager"||vr==="thread"||!kt||!st||rs||Mo||lx.current)return;const[D]=yi;D&&(lx.current=!0,Vs(D.id),Promise.resolve(Oc(D.content,{token:kt,sessionId:st,mode:D.mode,provider:D.provider,runtimeMode:D.runtimeMode,responseStyle:D.responseStyle,model:D.model,onLoginRequired:()=>o(!0),...(ee=D.attachments)!=null&&ee.length?{attachments:D.attachments}:{},...D.displayContent?{displayContent:D.displayContent}:{},...(fe=D.referencedFiles)!=null&&fe.length?{referencedFiles:D.referencedFiles}:{},...(he=D.displaySegments)!=null&&he.length?{displaySegments:D.displaySegments}:{}})).catch(me=>{Us({content:D.content,displayContent:D.displayContent,mode:D.mode,provider:D.provider,runtimeMode:D.runtimeMode,responseStyle:D.responseStyle,model:D.model,referencedFiles:D.referencedFiles,displaySegments:D.displaySegments,attachments:D.attachments}),ai.error(Eq(me instanceof Error?me.message:null,"Failed to send queued message"))}).finally(()=>{lx.current=!1}))},[st,Vs,Us,rs,Mo,yi,Oc,vr,kt,yt]);const Op=y.useCallback((D,ee)=>{ia(fe=>({...fe,[D]:[...fe[D]??[],ee]}))},[]),cy=y.useCallback((D,ee)=>{ia(fe=>{const he=fe[D]??[],me=he.filter(Ae=>Ae.id!==ee);if(me.length===he.length)return fe;if(me.length===0){const{[D]:Ae,...mt}=fe;return mt}return{...fe,[D]:me}})},[]),zS=y.useCallback((D,ee,fe)=>{const he=fe.trim();he&&ia(me=>{const Ae=me[D]??[];return Ae.length===0?me:{...me,[D]:Ae.map(mt=>mt.id===ee?{...mt,content:he,displayContent:he,fullContent:he,referencedFiles:void 0,displaySegments:void 0,attachments:void 0}:mt)}})},[]),FS=y.useCallback((D,ee,fe,he)=>{ia(me=>{const Ae=me[D]??[];if(Ae.length===0)return me;const mt=Ae.findIndex(Rt=>Rt.id===ee);if(mt<0)return me;const bt=[...Ae],[zt]=bt.splice(mt,1);if(!zt)return me;if(fe==null)bt.push(zt);else{const Rt=bt.findIndex(Wr=>Wr.id===fe);if(Rt<0)return me;bt.splice(Rt+(he==="after"?1:0),0,zt)}return bt===Ae?me:{...me,[D]:bt}})},[]),HS=y.useCallback(D=>{var me;const ee=be.selectedThread,fe=be.selectedRepo;if(!ee||!fe)return;const he=(me=ci[ee.id])==null?void 0:me.find(Ae=>Ae.id===D);he&&(cy(ee.id,D),(async()=>{const Ae=`jait/${Math.random().toString(16).slice(2,10)}`;let mt;try{mt=(await no.createWorktree(fe.localPath,fe.defaultBranch,Ae)).path}catch{try{await no.createBranch(fe.localPath,Ae,fe.defaultBranch)}catch{}}const bt=await qr.createThread({title:`[${fe.name}] Generating title…`,providerId:he.providerId,runtimeMode:he.runtimeMode,...he.model?{model:he.model}:{},kind:"delivery",workingDirectory:mt??fe.localPath,branch:Ae});await qr.startThread(bt.id,{message:he.fullContent,titlePrefix:`[${fe.name}] `,...he.displayContent?{displayContent:he.displayContent}:{},...he.referencedFiles?{referencedFiles:he.referencedFiles}:{},...he.displaySegments?{displaySegments:he.displaySegments}:{},...he.attachments?{attachments:he.attachments}:{}})})())},[be.selectedThread,be.selectedRepo,ci,cy]),cx=y.useCallback(async(D,ee,fe)=>{const he=be.selectedThread;if(!he)return;const me=await Pu(e,D,fe);if(!me)return;const Ae=Lk(me.displaySegments,ee);Op(he.id,{id:`mq-${Date.now()}-${Math.random().toString(36).slice(2,6)}`,content:me.displayContent||me.promptWithReferences,displayContent:me.displayContent||me.promptWithReferences,fullContent:me.promptWithReferences,referencedFiles:me.referencedFiles,displaySegments:Ae,attachments:me.attachments,providerId:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,model:lt??void 0,queuedAt:Date.now()}),r(""),i(void 0)},[be.selectedThread,Pt,Wt,lt,Op,e,Pu]);y.useEffect(()=>{if(!st)for(const[D,ee]of Object.entries(ci)){if(ee.length===0||Ld.current.has(D))continue;const fe=be.threads.find(me=>me.id===D);if(!fe){ia(me=>{if(!(D in me))return me;const{[D]:Ae,...mt}=me;return mt});continue}if(fe.status==="running")continue;const[he]=ee;he&&(Ld.current.add(D),ia(me=>{const Ae=me[D]??[],[,...mt]=Ae;if(mt.length===0){const{[D]:bt,...zt}=me;return zt}return{...me,[D]:mt}}),be.handleSendToThread(D,he.fullContent,he.providerId,he.runtimeMode,he.model,{displayContent:he.displayContent??he.content,referencedFiles:he.referencedFiles,displaySegments:he.displaySegments,attachments:he.attachments}).catch(me=>{ia(Ae=>({...Ae,[D]:[he,...Ae[D]??[]]})),be.setError(me instanceof Error?me.message:"Failed to process queued thread message")}).finally(()=>{Ld.current.delete(D)}))}},[st,be.handleSendToThread,be.setError,be.threads,ci]);const cf=y.useCallback(async()=>{const D=be.selectedRepo;if(D)try{await qr.updateRepo(D.id,{deviceId:""}),await be.refresh()}catch{be.setError("Failed to move repository to gateway")}},[be.selectedRepo,be.refresh,be.setError]),uy=async D=>{if(!kt){o(!0);return}let ee=st;if(!ee){const fe=await uo();ee=(fe==null?void 0:fe.id)??null}if(ee){if(D==="Generate architecture diagram"){Gt(!0),We(!0),Oc("Analyze the workspace architecture and generate a mermaid diagram using the architecture.generate tool. Include all major modules, their relationships, data flow, and external dependencies.",{token:kt,sessionId:ee,mode:Ft,provider:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,model:lt??void 0,onLoginRequired:()=>o(!0)});return}Oc(D,{token:kt,sessionId:ee,mode:Ft,provider:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,model:lt??void 0,onLoginRequired:()=>o(!0)})}},ux=y.useCallback(async(D,ee,fe,he,me)=>{if(!st||!kt)return;const Ae=await Pu(ee,me==null?void 0:me.referencedFiles,me==null?void 0:me.displaySegments);Ae&&await eg(D,Ae.promptWithReferences,fe,he,{token:kt,sessionId:st,mode:Ft,provider:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,model:lt??void 0,displayContent:Ae.displayContent,referencedFiles:Ae.referencedFiles,displaySegments:Ae.displaySegments,onLoginRequired:()=>o(!0)})},[st,eg,kt,Ft,Pt,Wt,lt,Pu]),dx=async D=>{if(D.preventDefault(),!rr){l(null),xr(!0);try{await ji(Lr,Ea),o(!1),ve(""),c("chat")}catch(ee){l(ee instanceof Error?ee.message:"Login failed")}finally{xr(!1)}}},hx=async D=>{if(D.preventDefault(),!rr){if(l(null),!le||!ut){l("Username and password are required");return}if(ut!==Yt){l("Passwords do not match");return}xr(!0);try{await qh(le,ut),o(!1),tt(""),jt(""),c("chat")}catch(ee){l(ee instanceof Error?ee.message:"Registration failed")}finally{xr(!1)}}},WS=y.useCallback(async D=>{D.preventDefault();const ee=ll.trim();if(!ee){Ci("Please enter a gateway URL");return}bs(!0),Ci(null);try{const fe=ee.replace(/\/+$/,""),he=await fetch(`${fe}/health`,{signal:AbortSignal.timeout(5e3)});if(!he.ok)throw new Error(`Server returned ${he.status}`);const me=Mn();if(uQ(fe),fe!==me){window.location.reload();return}Eo("auth")}catch(fe){Ci(fe instanceof Error?fe.name==="TimeoutError"||fe.name==="AbortError"?"Connection timed out":fe.message:"Failed to connect")}finally{bs(!1)}},[ll]),dy=()=>{dp(),gp(),c("chat"),o(!0)},fx=y.useCallback(()=>{gp(),uo()},[gp,uo]),px=y.useCallback(async()=>{const D=Aa[0]??await uo(null);D&&Oa(null,D.id)},[uo,Aa,Oa]),mx=async D=>{const ee=Object.fromEntries(Object.entries(D).map(([fe,he])=>[fe,he.trim()]).filter(([,fe])=>fe.length>0));await pl({api_keys:ee})},US=async()=>{const D=await U0();return await Kh(),D.removed},VS=async()=>{const D=await V0();return await Kh(),D},o6=async D=>{const ee=await Jm(D);return ee&&await Kh(),ee},a6=y.useCallback(async()=>{if(st)try{await fetch(`${Xi}/api/consent/pending/${st}/approve-all`,{method:"DELETE"}),Xt(!1)}catch{}},[st]),qS=y.useCallback(async D=>{var me;const ee=Que(D);if(!ee)return;if(yt==="manager"||vr==="thread"){const Ae=be.selectedThread,mt=Ae?((me=ci[Ae.id])==null?void 0:me.length)??0:0;if(Ae&&(Ae.status==="running"||mt>0)){Op(Ae.id,{id:`mq-${Date.now()}-${Math.random().toString(36).slice(2,6)}`,content:ee,displayContent:ee,fullContent:ee,referencedFiles:void 0,attachments:void 0,providerId:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,model:lt??void 0,queuedAt:Date.now()});return}await be.handleSend(ee,Pt,Pt!=="jait"?Wt:void 0,lt??void 0);return}const fe=a8(ee);let he=st;if(!he){const Ae=await uo(void 0,fe);he=(Ae==null?void 0:Ae.id)??null}if(!(!he||!kt)){if(await Ap(he,ee),rs||yi.length>0){Us({content:ee,displayContent:ee,mode:Ft,provider:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,model:lt??void 0});return}Oc(ee,{token:kt,sessionId:he,mode:Ft,provider:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,model:lt??void 0,onLoginRequired:()=>o(!0)})}},[st,be.handleSend,be.selectedThread,Ft,Pt,Wt,lt,uo,Op,Us,Ap,rs,ci,yi.length,Oc,vr,kt,yt]),[Ql,hy]=y.useState(!1),[Lu,gx]=y.useState(!1),[uf,Rp]=y.useState(()=>l8()),fg=y.useRef(null),Mp=y.useRef([]),df=y.useRef(null),hf=y.useRef(l8()),pg=y.useRef(null),fy=y.useRef(null),py=y.useRef(null),$u=y.useRef(null),mg=y.useRef(null),gg=y.useCallback(()=>{const D=l8();hf.current=D,Rp(D)},[]),Zd=y.useCallback(()=>{var ee;mg.current!==null&&(cancelAnimationFrame(mg.current),mg.current=null),(ee=fy.current)==null||ee.disconnect(),fy.current=null,py.current=null,$u.current=null;const D=pg.current;pg.current=null,D&&D.state!=="closed"&&D.close().catch(()=>{}),gg()},[gg]),yg=y.useCallback(D=>{Zd();try{const ee=new AudioContext,fe=ee.createAnalyser();fe.fftSize=256,fe.smoothingTimeConstant=.58;const he=ee.createMediaStreamSource(D);he.connect(fe);const me=new Uint8Array(new ArrayBuffer(fe.frequencyBinCount));pg.current=ee,fy.current=he,py.current=fe,$u.current=me;const Ae=()=>{const mt=py.current,bt=$u.current;if(!mt||!bt)return;mt.getByteTimeDomainData(bt);let zt=0;for(let Cn=0;Cn<bt.length;Cn++)zt+=Math.abs((bt[Cn]-128)/128);const Rt=bt.length>0?zt/bt.length:0,Wr=Math.pow(Math.min(1,Rt*6.8),.78),Qr=Math.min(1,Math.max(J7,Wr)),rn=(hf.current[hf.current.length-1]??J7)*.2+Qr*.8,cn=[...hf.current.slice(-(Jue-1)),rn];hf.current=cn,Rp(cn),mg.current=requestAnimationFrame(Ae)};Ae()}catch(ee){console.warn("Voice visualizer unavailable:",ee),gg()}},[gg,Zd]),yx=y.useCallback(D=>{const fe=D.sampleRate,he=D.getChannelData(0),me=new ArrayBuffer(44+he.length*2),Ae=new DataView(me),mt=(zt,Rt)=>{for(let Wr=0;Wr<Rt.length;Wr++)Ae.setUint8(zt+Wr,Rt.charCodeAt(Wr))};mt(0,"RIFF"),Ae.setUint32(4,36+he.length*2,!0),mt(8,"WAVE"),mt(12,"fmt "),Ae.setUint32(16,16,!0),Ae.setUint16(20,1,!0),Ae.setUint16(22,1,!0),Ae.setUint32(24,fe,!0),Ae.setUint32(28,fe*1*2,!0),Ae.setUint16(32,2,!0),Ae.setUint16(34,16,!0),mt(36,"data"),Ae.setUint32(40,he.length*2,!0);let bt=44;for(let zt=0;zt<he.length;zt++){const Rt=Math.max(-1,Math.min(1,he[zt]));Ae.setInt16(bt,Rt<0?Rt*32768:Rt*32767,!0),bt+=2}return new Blob([me],{type:"audio/wav"})},[]),Jd=y.useCallback(async()=>{var fe,he;hy(!1),Zd();const D=fg.current;if(!D||D.state==="inactive"){(fe=df.current)==null||fe.getTracks().forEach(me=>me.stop()),df.current=null,fg.current=null;return}const ee=await new Promise(me=>{D.ondataavailable=Ae=>{Ae.data.size>0&&Mp.current.push(Ae.data)},D.onstop=()=>{me(new Blob(Mp.current,{type:D.mimeType}))},D.stop()});if((he=df.current)==null||he.getTracks().forEach(me=>me.stop()),df.current=null,fg.current=null,ee.size!==0&&(_s.stt_provider==="wyoming"||_s.stt_provider==="whisper")){gx(!0);try{const me=await ee.arrayBuffer(),Ae=new AudioContext({sampleRate:16e3}),mt=await Ae.decodeAudioData(me),bt=yx(mt);await Ae.close();const zt=await bt.arrayBuffer(),Rt=new Uint8Array(zt);let Wr="";for(let cn=0;cn<Rt.length;cn++)Wr+=String.fromCharCode(Rt[cn]);const Qr=btoa(Wr),rn=await(await fetch(`${Xi}/api/voice/transcribe-audio`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${kt}`},body:JSON.stringify({audioBase64:Qr,sessionId:st??"voice-input",provider:_s.stt_provider})})).json();rn.text?r(cn=>uyt(cn,rn.text??"")):console.warn("Transcription failed:",rn.details??rn.error)}catch(me){console.error("Transcription error:",me)}finally{gx(!1)}}},[st,yx,_s.stt_provider,kt]),ff=y.useCallback(async()=>{if(!kt){o(!0);return}try{const D=await navigator.mediaDevices.getUserMedia({audio:{echoCancellation:!0,noiseSuppression:!0,sampleRate:16e3}});df.current=D,Mp.current=[],yg(D);const ee=new MediaRecorder(D);fg.current=ee,ee.ondataavailable=fe=>{fe.data.size>0&&Mp.current.push(fe.data)},ee.start(),hy(!0)}catch(D){Zd(),console.error("Microphone access denied:",D),window.alert("Microphone access is required for push-to-talk.")}},[st,_s.stt_provider,yg,Zd,qS,kt]),[Du,l6]=y.useState(()=>{try{return localStorage.getItem("jait:wake-word")==="true"}catch{return!1}}),my=y.useCallback(()=>{l6(D=>{const ee=!D;try{localStorage.setItem("jait:wake-word",String(ee))}catch{}return ee})},[]),is=y.useCallback(()=>{Nt(!0),At.connect()},[At]),Ti=_pt({enabled:Du&&Wl&&!Ql&&!Ve,lang:navigator.language,onCommand:()=>{is()},onWakeWordDetected:()=>{is()}});y.useEffect(()=>()=>{var D;Zd(),(D=df.current)==null||D.getTracks().forEach(ee=>ee.stop())},[Zd]);const vx=Ra==="limit_reached",Pp=!hl&&!Wl,GS=yt==="developer"&&u==="chat"&&!Pp&&(hl||Nr||!!st&&(Mo||_p||Ou||X0||rf)),KS=Rs.length>0||Mo,pf=y.useMemo(()=>Zue({showWorkspace:E,showTerminal:b,showWorkspaceTree:re,showWorkspaceEditor:ce,treeTab:ue}),[ue,b,E,ce,re]),xx=It&&Km&&pf!==null&&pf!=="terminal",vg=It&&u==="chat"&&yt==="developer"&&pf==="terminal",Iu=y.useMemo(()=>({showWorkspace:E,showTerminal:b,showWorkspaceTree:re,showWorkspaceEditor:ce,treeTab:ue}),[ue,b,E,ce,re]),YS=((yy=(gy=Oo==null?void 0:Oo.username)==null?void 0:gy[0])==null?void 0:yy.toUpperCase())??"?",xg=y.useCallback(()=>{Jd()},[Jd]),bg=y.useCallback(()=>{be.setFolderPickerOpen(!0)},[be.setFolderPickerOpen]),bx=vr==="thread"?d.jsx(c8,{repositories:be.repositories,selectedRepo:be.selectedRepo,disabled:be.creating,getRuntimeInfo:be.getRuntimeInfoForRepository,onSelect:be.setSelectedRepoId,onAddRepository:bg}):null,_x=y.useMemo(()=>{if(vr==="thread")return d.jsx(c8,{repositories:be.repositories,selectedRepo:be.selectedRepo,disabled:be.creating,getRuntimeInfo:be.getRuntimeInfoForRepository,onSelect:be.setSelectedRepoId,onAddRepository:bg})},[vr,be.repositories,be.selectedRepo,be.creating,be.getRuntimeInfoForRepository,be.setSelectedRepoId,bg]),XS=y.useMemo(()=>({onVoiceInput:ff,voiceRecording:Ql,voiceLevels:uf,voiceTranscribing:Lu,onVoiceStop:xg,mode:Ft,onModeChange:Xr,sendTarget:vr,onSendTargetChange:yn,provider:Pt,onProviderChange:Dr,responseStyle:jr,onResponseStyleChange:Rn,providerRuntimeMode:Wt,onProviderRuntimeModeChange:xi,cliModel:lt,onCliModelChange:Mu,repoRuntime:vr==="thread"?oa:null,onMoveToGateway:vr==="thread"?cf:void 0,footerLeadingContent:_x,availableFiles:lo,onSearchFiles:qc,workspaceOpen:E,sessionInfo:Gl,workspaceNodeId:Z==null?void 0:Z.nodeId}),[ff,Ql,uf,Lu,xg,Ft,Xr,vr,yn,Pt,Dr,jr,Rn,Wt,xi,lt,Mu,oa,cf,_x,lo,qc,E,Gl,Z==null?void 0:Z.nodeId]),wx=[...Rs.slice(-10).map(D=>hV({id:`msg-${D.id}`,source:"chat",title:`Message: ${D.role}`,detail:D.content.slice(0,120)||"(empty message)"})),...yl.map(D=>hV({id:`term-${D.id}`,source:"terminal",title:"Terminal session",detail:`${D.id} (${D.state})`}))];return Ht?d.jsx(Zht,{detachedTabId:Ht}):Ln?d.jsx(tft,{detachedId:Ln}):Zo===!1?d.jsx(nft,{onRetry:()=>{_u.current=!1,cl(null),zs()}}):d.jsx(ZY,{children:d.jsxs("div",{className:"fixed inset-0 flex flex-col overflow-hidden safe-top safe-bottom safe-left safe-right",children:[!Pp&&d.jsxs(d.Fragment,{children:[d.jsxs("header",{className:It?"fixed top-2 left-2 right-2 z-40 flex items-center gap-1 pointer-events-none h-10":`relative flex items-center gap-1 shrink-0 border-b bg-background px-2 sm:gap-2 sm:px-5 ${Mi?"h-10 !pl-[0.8rem]":"h-14"}`,style:Mi?{WebkitAppRegion:"drag",paddingLeft:Li==="darwin"?70:void 0,paddingRight:Li==="win32"?140:void 0}:void 0,children:[d.jsxs("div",{className:`flex items-center gap-1 shrink-0 ${It?"pointer-events-auto rounded-2xl bg-background/70 backdrop-blur-lg shadow-lg border px-2 h-10":""}`,style:Mi?{WebkitAppRegion:"no-drag"}:void 0,children:[d.jsx(iae,{size:20,className:"shrink-0"}),Ti.isSupported&&d.jsx("button",{className:`md:hidden flex items-center justify-center h-8 w-8 rounded-lg shrink-0 transition-colors ${Ve?"text-green-400 bg-green-500/10":Du?Ti.isListening?"text-green-400 bg-green-500/10":"text-blue-400 bg-blue-500/10":"text-muted-foreground hover:bg-accent"}`,onClick:Ve?()=>{At.disconnect(),Nt(!1)}:my,"aria-label":Ve?"Disconnect voice":Du?"Disable wake word":"Enable wake word",children:Ve?d.jsx(Jy,{className:"h-4 w-4 animate-pulse"}):Du?d.jsx(Jy,{className:`h-4 w-4 ${Ti.isListening?"animate-pulse":""}`}):d.jsx(Fk,{className:"h-4 w-4"})})]}),d.jsxs("nav",{className:"hidden md:flex items-center gap-1 min-w-0 overflow-x-auto scrollbar-none",style:Mi?{WebkitAppRegion:"no-drag"}:void 0,children:[d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:u==="chat"?"secondary":"ghost",size:"sm",className:"h-8 shrink-0 rounded-lg gap-1.5 px-2 text-xs",onClick:()=>c("chat"),"aria-label":"Chat",children:[d.jsx(dm,{className:"h-3.5 w-3.5"}),d.jsx("span",{children:"Chat"})]})}),d.jsx(mn,{side:"bottom",children:"Chat"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:u==="jobs"?"secondary":"ghost",size:"sm",className:"h-8 shrink-0 rounded-lg gap-1.5 px-2 text-xs",onClick:()=>c("jobs"),"aria-label":"Jobs",children:[d.jsx(u_,{className:"h-3.5 w-3.5"}),d.jsx("span",{children:"Jobs"})]})}),d.jsx(mn,{side:"bottom",children:"Jobs"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:u==="network"?"secondary":"ghost",size:"sm",className:"h-8 shrink-0 rounded-lg gap-1.5 px-2 text-xs",onClick:()=>c("network"),"aria-label":"Network",children:[d.jsx(m1,{className:"h-3.5 w-3.5"}),d.jsx("span",{children:"Network"})]})}),d.jsx(mn,{side:"bottom",children:"Network"})]}),yt==="developer"&&!It&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:V?"secondary":"ghost",size:"sm",className:"h-8 shrink-0 rounded-lg gap-1.5 px-2 text-xs",onClick:()=>V?Gd():jp(),"aria-label":"Screen sharing",children:[d.jsx(Ig,{className:"h-3.5 w-3.5"}),d.jsx("span",{children:"Screen Share"})]})}),d.jsx(mn,{side:"bottom",children:"Screen sharing"})]})]}),Ve?d.jsxs("div",{className:`absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-10 flex items-center gap-1.5 rounded-full border border-border/60 bg-background/80 backdrop-blur-sm px-1.5 py-1 ${It?"pointer-events-auto":""}`,style:Mi?{WebkitAppRegion:"no-drag"}:void 0,children:[d.jsx("button",{onClick:At.toggleMic,className:`flex items-center justify-center h-7 w-7 rounded-full transition-colors ${At.micActive?"bg-muted hover:bg-muted/80 text-foreground":"bg-destructive/15 text-destructive hover:bg-destructive/25"}`,"aria-label":At.micActive?"Mute":"Unmute",children:At.micActive?d.jsx(Jy,{className:"h-3.5 w-3.5"}):d.jsx(Fk,{className:"h-3.5 w-3.5"})}),d.jsx(ryt,{state:At.assistantSpeaking?"speaking":At.status,size:"sm",lineWidth:2,className:"!aspect-auto !h-7 w-24 sm:w-36"}),d.jsx("button",{onClick:()=>{At.disconnect(),Nt(!1)},className:"flex items-center justify-center h-7 w-7 rounded-full bg-destructive text-destructive-foreground hover:bg-destructive/90 transition-colors","aria-label":"End call",children:d.jsx(B0e,{className:"h-3.5 w-3.5"})})]}):u==="chat"?d.jsx("div",{className:`absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-10 ${It?"pointer-events-auto rounded-2xl bg-background/70 backdrop-blur-lg shadow-lg border px-1.5 h-10 flex items-center":""}`,style:Mi?{WebkitAppRegion:"no-drag"}:void 0,children:d.jsx(vpt,{mode:yt,onChange:ln,compact:It})}):null,d.jsx("div",{className:"flex-1 min-w-0"}),d.jsxs("div",{className:`flex items-center gap-1 sm:gap-1.5 shrink-0 ${It?"pointer-events-auto rounded-2xl bg-background/70 backdrop-blur-lg shadow-lg border px-1 py-0.5 h-10":""}`,style:Mi?{WebkitAppRegion:"no-drag"}:void 0,children:[u==="chat"&&Kn.length>0&&d.jsx(_yt,{threads:Kn,getRepositoryForThread:be.getRepositoryForThread,threadPrStates:be.threadPrStates,ghAvailable:be.ghAvailable,onOpenThread:D=>{c("chat"),be.setSelectedThreadId(D),yn("thread")},onStopThread:D=>be.handleStop(D)}),d.jsxs("div",{className:"hidden md:flex items-center gap-1 sm:gap-1.5",children:[sa.isActive&&d.jsxs("span",{className:"ui-pill shrink-0",children:[d.jsx(Ig,{className:"h-3 w-3 text-green-500 animate-pulse"}),d.jsx("span",{className:"hidden sm:inline",children:"Sharing"})]}),Ti.isSupported&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs("button",{onClick:Ve?()=>{At.disconnect(),Nt(!1)}:my,className:`ui-pill shrink-0 cursor-pointer transition-colors ${Ve?"text-green-400 animate-pulse":Du?Ti.isListening?"text-green-400":"text-blue-400":"text-muted-foreground opacity-50"}`,children:[Ve?d.jsx(Jy,{className:"h-3 w-3 animate-pulse"}):Du?d.jsx(Jy,{className:`h-3 w-3 ${Ti.isListening?"animate-pulse":""}`}):d.jsx(Fk,{className:"h-3 w-3"}),d.jsx("span",{className:"hidden sm:inline text-xs",children:Ve?"Voice active":Ti.isListening?"Listening...":Du?"Hey Jait":"Wake word"})]})}),d.jsx(mn,{side:"bottom",children:Ve?"Voice assistant active — click to disconnect":Du?Ti.isListening?"Listening for your command...":'Say "Hey Jait" to start voice assistant — click to disable':'Click to enable always-on "Hey Jait" wake word'})]}),d.jsx(hXe,{usage:ju}),(()=>{const D=Pt==="codex"?"openai":Pt==="claude-code"?"anthropic":Zn??"ollama",ee=Pt==="codex"?lt??"Codex":Pt==="claude-code"?lt??"Claude Code":fo?ntt(fo):null,fe=Pt==="codex"?`OpenAI Codex CLI${lt?` · ${lt}`:""}`:Pt==="claude-code"?`Anthropic Claude Code CLI${lt?` · ${lt}`:""}`:fo??"";return ee?d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs("div",{className:"ui-pill cursor-default sm:mr-2",children:[d.jsx(V5,{provider:D,model:Pt==="codex"?"codex":Pt==="claude-code"?"claude-3":fo??void 0,size:16}),d.jsx("span",{className:"text-xs text-muted-foreground hidden sm:inline",children:ee})]})}),d.jsx(mn,{side:"bottom",children:fe})]}):null})(),ml!==null&&ml<=5&&d.jsxs("span",{className:"text-xs text-muted-foreground mr-1 sm:mr-2 hidden sm:inline",children:[ml," remaining"]})]}),(In==null?void 0:In.hasUpdate)&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{onClick:async()=>{if(Hi==="web")!Pi&&!Jo&&await hp();else if(Hi==="electron"){const D=window.jaitDesktop;ai.info("Downloading update...");const ee=await D.downloadUpdate();ee!=null&&ee.ok?(ai.success("Update downloaded. Restarting..."),await D.installUpdate()):ai.error("Download failed")}else window.open("https://github.com/Widev-e-U/Jait/releases/latest","_blank")},variant:"outline",size:"sm",disabled:Hi==="web"&&(Pi||Jo),className:"h-8 shrink-0 border-amber-500/30 bg-amber-500/10 px-2 text-amber-700 hover:bg-amber-500/15 hover:text-amber-800 dark:text-amber-300",children:[Hi==="web"&&(Pi||Jo)?d.jsx(Zt,{className:"h-3.5 w-3.5 animate-spin"}):d.jsx(IG,{className:"h-3.5 w-3.5"}),d.jsx("span",{className:"hidden sm:inline",children:Hi==="web"&&(Pi||Jo)?"Updating...":`v${In.latestVersion}`})]})}),d.jsx(mn,{side:"bottom",children:Hi==="web"&&(Pi||Jo)?"Updating and refreshing...":`Update available — v${In.latestVersion}`})]}),It?d.jsxs("div",{className:"flex items-center gap-0.5 shrink-0",children:[d.jsxs(uu,{children:[d.jsx(du,{asChild:!0,children:d.jsx(ke,{variant:"ghost",size:"sm",className:"h-9 w-9 p-0 shrink-0 rounded-lg",children:d.jsx(TC,{className:"h-4 w-4"})})}),d.jsxs(hc,{align:"end",children:[d.jsx(Fg,{children:"Navigate"}),d.jsxs(Fi,{onSelect:()=>c("chat"),children:[d.jsx(dm,{className:"h-4 w-4 mr-2"}),"Chat"]}),d.jsxs(Fi,{onSelect:()=>c("jobs"),children:[d.jsx(u_,{className:"h-4 w-4 mr-2"}),"Jobs"]}),d.jsxs(Fi,{onSelect:()=>c("network"),children:[d.jsx(m1,{className:"h-4 w-4 mr-2"}),"Network"]}),yt==="developer"&&d.jsxs(Fi,{onSelect:()=>V?Gd():jp(),children:[d.jsx(Ig,{className:"h-4 w-4 mr-2"}),V?"Hide Share":"Screen Share"]}),d.jsx(Ku,{}),d.jsxs(Fi,{onSelect:()=>c("settings"),children:[d.jsx(R3,{className:"h-4 w-4 mr-2"}),"Settings"]})]})]}),Wl?d.jsxs(uu,{children:[d.jsx(du,{asChild:!0,children:d.jsx("button",{className:"rounded-full ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",children:d.jsx(v8,{className:"h-8 w-8",children:d.jsx(x8,{className:"text-sm font-medium",children:YS})})})}),d.jsxs(hc,{align:"end",children:[d.jsx(Fg,{children:Oo==null?void 0:Oo.username}),d.jsx(Ku,{}),d.jsxs(Fi,{onSelect:()=>c("settings"),children:[d.jsx(R3,{className:"h-4 w-4 mr-2"}),"Settings"]}),d.jsx(Ku,{}),d.jsxs("div",{className:"px-2 py-1.5",children:[d.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"Theme"}),d.jsx("div",{className:"flex items-center h-7 w-fit rounded-full border bg-muted/50 p-0.5 mt-1.5",children:[["light",J$],["system",wa],["dark",K$]].map(([D,ee])=>d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx("button",{onClick:()=>{oy(D)},className:`relative flex items-center justify-center h-6 w-6 rounded-full transition-colors ${f===D?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"}`,children:d.jsx(ee,{className:"h-3.5 w-3.5"})})}),d.jsx(mn,{side:"bottom",children:D.charAt(0).toUpperCase()+D.slice(1)})]},D))})]}),d.jsx(Ku,{}),d.jsxs(Fi,{onSelect:dy,children:[d.jsx(G$,{className:"h-4 w-4 mr-2"}),"Logout"]})]})]}):d.jsx(ke,{variant:"ghost",size:"sm",className:"h-8 rounded-lg text-xs",onClick:()=>o(!0),children:"Sign in"})]}):d.jsxs(d.Fragment,{children:[d.jsx("div",{className:"md:hidden shrink-0",children:d.jsxs(uu,{children:[d.jsx(du,{asChild:!0,children:d.jsx(ke,{variant:"ghost",size:"sm",className:"h-9 w-9 p-0 shrink-0",children:d.jsx(TC,{className:"h-4 w-4"})})}),d.jsxs(hc,{align:"end",children:[d.jsx(Fg,{children:"Navigate"}),d.jsxs(Fi,{onSelect:()=>c("chat"),children:[d.jsx(dm,{className:"h-4 w-4 mr-2"}),"Chat"]}),d.jsxs(Fi,{onSelect:()=>c("jobs"),children:[d.jsx(u_,{className:"h-4 w-4 mr-2"}),"Jobs"]}),d.jsxs(Fi,{onSelect:()=>c("network"),children:[d.jsx(m1,{className:"h-4 w-4 mr-2"}),"Network"]}),yt==="developer"&&d.jsxs(Fi,{onSelect:()=>V?Gd():jp(),children:[d.jsx(Ig,{className:"h-4 w-4 mr-2"}),V?"Hide Share":"Screen Share"]}),d.jsx(Ku,{}),d.jsxs(Fi,{onSelect:()=>c("settings"),children:[d.jsx(R3,{className:"h-4 w-4 mr-2"}),"Settings"]})]})]})}),Wl?d.jsxs(uu,{children:[d.jsx(du,{asChild:!0,children:d.jsx("button",{className:"rounded-full ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",children:d.jsx(v8,{className:"h-7 w-7",children:d.jsx(x8,{className:"text-xs",children:YS})})})}),d.jsxs(hc,{align:"end",children:[d.jsx(Fg,{children:Oo==null?void 0:Oo.username}),d.jsx(Ku,{}),d.jsxs(Fi,{onSelect:()=>c("settings"),children:[d.jsx(R3,{className:"h-4 w-4 mr-2"}),"Settings"]}),d.jsx(Ku,{}),d.jsxs("div",{className:"px-2 py-1.5",children:[d.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"Theme"}),d.jsx("div",{className:"flex items-center h-7 w-fit rounded-full border bg-muted/50 p-0.5 mt-1.5",children:[["light",J$],["system",wa],["dark",K$]].map(([D,ee])=>d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx("button",{onClick:()=>{oy(D)},className:`relative flex items-center justify-center h-6 w-6 rounded-full transition-colors ${f===D?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"}`,children:d.jsx(ee,{className:"h-3.5 w-3.5"})})}),d.jsx(mn,{side:"bottom",children:D.charAt(0).toUpperCase()+D.slice(1)})]},D))})]}),d.jsx(Ku,{}),d.jsxs(Fi,{onSelect:dy,children:[d.jsx(G$,{className:"h-4 w-4 mr-2"}),"Logout"]})]})]}):d.jsx(ke,{variant:"ghost",size:"sm",className:"h-8 rounded-lg text-xs",onClick:()=>o(!0),children:"Sign in"})]}),Mi&&Li==="linux"&&d.jsxs("div",{className:"flex items-center ml-2 -mr-2",children:[d.jsx("button",{onClick:()=>window.jaitDesktop.windowMinimize(),className:"flex h-[35px] w-11 items-center justify-center hover:bg-muted/80 transition-colors",children:d.jsx(Hk,{className:"h-4 w-4"})}),d.jsx("button",{onClick:()=>window.jaitDesktop.windowMaximize(),className:"flex h-[35px] w-11 items-center justify-center hover:bg-muted/80 transition-colors",children:Sc?d.jsx("svg",{width:"10",height:"10",viewBox:"0 0 10 10",className:"fill-current",children:d.jsx("path",{d:"M2 0v2H0v8h8V8h2V0zm5 7H1V3h6zM9 1v6H8V2H3V1z"})}):d.jsx(I1,{className:"h-3 w-3"})}),d.jsx("button",{onClick:()=>window.jaitDesktop.windowClose(),className:"flex h-[35px] w-11 items-center justify-center hover:bg-red-600 hover:text-white transition-colors",children:d.jsx(ei,{className:"h-4 w-4"})})]})]})]}),u==="chat"&&d.jsxs("div",{className:`border-b bg-muted/30 px-2 sm:px-5 shrink-0 ${It?"hidden":"flex"} ${on?"min-h-[35px] flex-wrap items-start gap-2 py-1.5":"h-11 md:h-[35px] items-center gap-1 overflow-x-auto overflow-y-visible scrollbar-none"}`,children:[yt==="developer"&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:zn===null?"secondary":"ghost",size:"sm",className:It?"h-9 w-9 shrink-0 rounded-md p-0":"h-7 shrink-0 rounded-md px-2 text-xs",onClick:()=>{px()},"aria-label":"Personal chat",children:[d.jsx(dm,{className:`h-3 w-3${It?"":" mr-1"}`}),!It&&"Personal"]})}),d.jsx(mn,{side:"bottom",children:"Switch to personal chat"})]}),yt==="developer"&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:g?"secondary":"ghost",size:"sm",className:It?"h-9 w-9 shrink-0 rounded-md p-0":"h-7 shrink-0 rounded-md px-2 text-xs",onClick:()=>v(D=>!D),"aria-label":"Toggle workspaces sidebar",children:[g?d.jsx(cT,{className:`h-3 w-3${It?" rotate-90":" mr-1"}`}):d.jsx(uT,{className:`h-3 w-3${It?" rotate-90":" mr-1"}`}),!It&&"Workspaces"]})}),d.jsx(mn,{side:"bottom",children:"Toggle workspaces sidebar"})]}),yt==="developer"&&!It&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:b?"secondary":"ghost",size:"sm",className:"h-7 shrink-0 rounded-md px-2 text-xs",onClick:()=>{IS()},children:[d.jsx(qo,{className:"h-3 w-3 mr-1"}),"Terminal"]})}),d.jsx(mn,{side:"bottom",children:"Toggle terminal panel"})]}),yt==="developer"&&It&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:Af(Iu,"terminal")?"secondary":"ghost",size:"sm",className:"h-9 w-9 shrink-0 rounded-md p-0","aria-label":"Terminal",onClick:()=>{Vc("terminal")},children:d.jsx(qo,{className:"h-4 w-4"})})}),d.jsx(mn,{side:"bottom",children:"Terminal"})]}),zn&&(yt==="developer"||yt==="manager"&&be.selectedThread)&&d.jsxs(d.Fragment,{children:[d.jsx("div",{className:`flex items-center shrink-0 ${It?"gap-1":""}`,children:It?d.jsxs(d.Fragment,{children:[d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:Af(Iu,"files")?"secondary":"ghost",size:"sm",className:"h-9 w-9 rounded-md p-0","aria-label":"Files",onClick:()=>{Vc("files")},children:d.jsx(hu,{className:"h-4 w-4"})})}),d.jsx(mn,{side:"bottom",children:"Files"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:Af(Iu,"git")?"secondary":"ghost",size:"sm",className:"relative h-9 w-9 rounded-md p-0","aria-label":"Changes",onClick:()=>{Vc("git")},children:[d.jsx(Xg,{className:"h-4 w-4"}),ws.length>0&&d.jsx("span",{className:"absolute -right-1 -top-1 z-10 min-w-[14px] rounded-full bg-primary px-1 text-2xs font-bold leading-[14px] text-primary-foreground",children:ws.length>99?"99+":ws.length})]})}),d.jsx(mn,{side:"bottom",children:"Changes"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:Af(Iu,"editor")?"secondary":"ghost",size:"sm",className:"h-9 w-9 rounded-md p-0","aria-label":"Editor",onClick:()=>{Vc("editor")},children:d.jsx(Bk,{className:"h-4 w-4"})})}),d.jsx(mn,{side:"bottom",children:"Editor"})]})]}):d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:E?"secondary":"ghost",size:"sm",className:"h-7 rounded-md px-2 text-xs",onClick:()=>{Ep()},children:[d.jsx(Bk,{className:"h-3 w-3 mr-1"}),"Editor",E&&d.jsx(ei,{className:"h-3 w-3 ml-1"})]})}),d.jsx(mn,{side:"bottom",children:E?"Hide editor":"Show editor"})]})}),yt==="developer"&&E&&Z&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:Kd?"secondary":"ghost",size:"sm",className:It?"h-9 w-9 shrink-0 rounded-md p-0":"h-7 shrink-0 rounded-md px-2 text-xs","aria-label":Kd?"Close preview":"Open preview",onClick:()=>{var D;if(Kd)Tp();else{const ee=q.target??(I==null?void 0:I.trim())??((D=Xl==null?void 0:Xl.target)==null?void 0:D.trim())??null;if(Cc(ee,(Z==null?void 0:Z.workspaceRoot)??null))return;Io()}},children:[d.jsx(wi,{className:`h-3 w-3${It?"":" mr-1"}`}),!It&&"Preview",!It&&Kd&&d.jsx(ei,{className:"h-3 wer-3 ml-1"})]})}),d.jsx(mn,{side:"bottom",children:Kd?"Close preview":"Open dev preview"})]})]}),yt==="developer"&&E&&Z&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:Je?"secondary":"ghost",size:"sm",className:It?"h-9 w-9 shrink-0 rounded-md p-0":"h-7 shrink-0 rounded-md px-2 text-xs","aria-label":Je?"Close architecture":"Open architecture",onClick:()=>{var D;Je?((D=hs.current)==null||D.closeArchitectureTab(),Kt(null),We(!1)):(We(!0),co())},children:[d.jsx(jC,{className:`h-3 w-3${It?"":" mr-1"}`}),!It&&"Architecture",!It&&Je&&d.jsx(ei,{className:"h-3 w-3 ml-1"})]})}),d.jsx(mn,{side:"bottom",children:"Software architecture diagram"})]}),yt==="developer"&&E&&Z&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:Ce?"secondary":"ghost",size:"sm",className:"ml-auto h-6 w-6 shrink-0 p-0",onClick:()=>Xe(D=>!D),children:d.jsx(ige,{className:"h-3 w-3"})})}),d.jsx(mn,{side:"bottom",children:"SSE debug stream"})]}),yt==="manager"&&d.jsxs(d.Fragment,{children:[be.selectedThread?d.jsxs(ke,{variant:"ghost",size:"sm",className:"h-6 text-xs px-2 shrink-0",onClick:()=>{be.setSelectedThreadId(null),r("")},children:[d.jsx(Xme,{className:"h-3 w-3 mr-1"}),"Back"]}):d.jsxs(d.Fragment,{children:[d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:k?"secondary":"ghost",size:"sm",className:"h-6 text-xs px-2 shrink-0",onClick:()=>w(D=>!D),children:[k?d.jsx(cT,{className:`h-3 w-3 mr-1${It?" rotate-90":""}`}):d.jsx(uT,{className:`h-3 w-3 mr-1${It?" rotate-90":""}`}),"Repositories"]})}),d.jsx(mn,{side:"bottom",children:"Toggle repositories panel"})]}),be.selectedRepo&&be.selectedRepo.source==="local"&&d.jsxs(d.Fragment,{children:[d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:"ghost",size:"sm",className:"h-6 text-xs px-2 shrink-0",onClick:()=>j(be.selectedRepo),children:[d.jsx(qG,{className:"h-3 w-3 mr-1"}),"Strategy"]})}),d.jsx(mn,{side:"bottom",children:"Open repository strategy"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:"ghost",size:"sm",className:"h-6 text-xs px-2 shrink-0",onClick:()=>A(be.selectedRepo),children:[d.jsx(UG,{className:"h-3 w-3 mr-1"}),"Todos"]})}),d.jsx(mn,{side:"bottom",children:"Open todo plan"})]})]})]}),d.jsx("div",{className:"flex-1"}),be.selectedThread?d.jsxs("div",{className:It?"flex min-w-0 basis-full items-start gap-1.5":"flex min-w-0 items-center gap-2 shrink-0",children:[d.jsxs("div",{className:"flex min-w-0 flex-1 items-start gap-2",children:[d.jsx(FP,{status:be.selectedThread.status}),It?d.jsxs("div",{className:"min-w-0 flex-1",children:[x4(be.selectedThread.title)?d.jsx(Q7,{className:"text-xs h-3.5 w-28"}):d.jsx("span",{className:"block truncate text-2xs leading-tight text-muted-foreground sm:text-xs",children:be.selectedThread.title.replace(/^\[.*?\]\s*/,"")}),d.jsxs("div",{className:"mt-0.5 flex min-w-0 items-center gap-1.5 overflow-hidden text-2xs leading-tight text-muted-foreground",children:[be.selectedRepo&&d.jsxs("span",{className:"min-w-0 truncate",children:[be.selectedRepo.name," · ",be.selectedRepo.defaultBranch]}),d.jsx(e9,{kind:be.selectedThread.kind}),be.selectedThread.branch&&d.jsx("span",{className:"shrink min-w-0 truncate font-mono",children:be.selectedThread.branch})]})]}):d.jsxs("div",{className:"min-w-0 flex items-center gap-2",children:[x4(be.selectedThread.title)?d.jsx(Q7,{className:"text-xs h-3.5 w-28"}):d.jsx("span",{className:"max-w-[200px] truncate text-2xs text-muted-foreground sm:text-xs",children:be.selectedThread.title.replace(/^\[.*?\]\s*/,"")}),d.jsx(e9,{kind:be.selectedThread.kind}),be.selectedRepo&&d.jsxs("span",{className:"max-w-[160px] truncate text-2xs text-muted-foreground",children:[be.selectedRepo.name," · ",be.selectedRepo.defaultBranch]})]})]}),d.jsxs("div",{className:"flex shrink-0 items-center gap-0.5 sm:gap-1",children:[d.jsx(ort,{token:kt,threadId:be.selectedThread.id,selectedSkillIds:be.selectedThread.skillIds}),!It&&be.selectedThread.branch&&d.jsx(Kr,{variant:"outline",className:"text-2xs px-1 py-0 font-mono",children:be.selectedThread.branch}),zP(be.selectedThread)&&d.jsx(ke,{variant:"ghost",size:"icon",className:"h-[18px] w-[18px] sm:h-5 sm:w-5",onClick:()=>void be.handleStop(be.selectedThread.id),title:be.selectedThread.kind==="delegation"?"End helper thread":"Stop thread",children:d.jsx(I1,{className:"h-2.5 w-2.5"})}),be.showGitActions&&be.selectedRepo&&d.jsx("div",{className:It?"shrink-0":"ml-2 shrink-0",children:d.jsx(GM,{threadId:be.selectedThread.id,cwd:be.selectedThread.workingDirectory??be.selectedRepo.localPath,branch:be.selectedThread.branch,baseBranch:be.selectedRepo.defaultBranch,threadTitle:be.selectedThread.title,threadStatus:be.selectedThread.status,threadKind:be.selectedThread.kind,prUrl:be.selectedThread.prUrl,prState:be.selectedThread.id in be.threadPrStates?be.threadPrStates[be.selectedThread.id]:be.selectedThread.prState,ghAvailable:be.ghAvailable,showStatusBadge:!It})})]})]}):null]})]}),u==="jobs"?d.jsx("div",{className:`flex-1 overflow-y-auto ${It?"pt-12":""}`,children:d.jsx(Jtt,{})}):u==="network"?d.jsx("div",{className:`flex-1 overflow-y-auto ${It?"pt-12":""}`,children:d.jsx(Iht,{token:kt,sessionId:st??"default"})}):u==="settings"?d.jsx("div",{className:`flex-1 overflow-y-auto ${It?"pt-12":""}`,children:d.jsx(jst,{username:(Oo==null?void 0:Oo.username)??"",token:kt,apiKeys:_s.api_keys,onSaveApiKeys:mx,sttProvider:_s.stt_provider,onSttProviderChange:async D=>{await pl({stt_provider:D})},jaitBackend:_s.jait_backend??"openai",onJaitBackendChange:async D=>{await pl({jait_backend:D})},onClearArchive:US,onClearArchivedWorkspaces:VS,onFetchArchivedWorkspaces:Vl,onRestoreWorkspace:o6,activityEvents:wx,updateInfo:In,updateChecking:kd,onCheckUpdate:()=>{jc()},onApplyUpdate:()=>{hp()},updateApplying:Pi,platform:Hi})}):d.jsxs("div",{className:`flex flex-1 min-h-0 overflow-hidden ${It?"flex-col relative":""}`,children:[d.jsxs("div",{className:It?"contents":`relative flex min-h-0 ${U?"flex-1 min-w-0":"shrink-0"}`,children:[yt==="developer"&&g&&It&&d.jsx("div",{className:"fixed inset-0 z-20",onClick:()=>v(!1)}),yt==="developer"&&g&&d.jsx("aside",{className:`overflow-hidden ${It?"fixed bottom-16 left-4 right-4 z-30 max-h-[50vh] max-w-sm mx-auto rounded-xl border bg-background shadow-2xl":"w-64 border-r shrink-0"}`,children:d.jsx(ZYe,{workspaces:ps,personalSessions:Aa,activeWorkspaceId:zn,activeSessionId:st,loading:Nr,hasMoreWorkspaces:Yh,showFewerWorkspaces:ps.length>Qm,onSelectWorkspace:iy,onSelectPersonalSession:D=>Oa(null,D),onNewPersonalSession:()=>{uo(null)},onCreateWorkspace:lg,onRemoveWorkspace:D=>{mp(D)},onChangeDirectory:G0,onShowMore:Ui,onShowFewer:q0,sessionInfo:Gl,nodes:Nd})}),(yt==="developer"&&u==="chat"&&!It&&(ts||b)||yt==="manager"&&be.selectedThread&&ts)&&d.jsxs("div",{className:`relative flex min-h-0 flex-col ${!ts&&b||U?"flex-1 min-w-0":"shrink-0"}`,style:!ts&&b?{width:Le,maxWidth:"70vw"}:void 0,children:[!ts&&b&&d.jsx("div",{onMouseDown:LS,className:"absolute inset-y-0 right-0 w-1.5 cursor-col-resize hover:bg-primary/30 transition-colors z-10"}),(yt==="developer"||yt==="manager"&&be.selectedThread)&&ts&&d.jsx("div",{className:"flex min-h-0 flex-1",children:d.jsx(YF,{ref:hs,autoOpenRemotePath:(Z==null?void 0:Z.workspaceRoot)??null,surfaceId:(Z==null?void 0:Z.surfaceId)??null,files:dl,activeFileId:Ao,onActiveFileChange:As,onFileDrop:D=>{ox(D)},onReferenceFile:tx,onReferenceSelection:DS,onReferencePreviewElement:nx,onAvailableFilesChange:Td,showTree:re,showEditor:ce,onToggleTree:MS,onToggleEditor:ty,changedPaths:sy,fsWatcherVersion:kc,sourceControlRefreshSignal:vp,savedTabsState:Qv,stateReady:Sp,previewRequest:Y,onTabsStateChange:aa,onPreviewOpenChange:Di,previewSessionId:st,previewToken:kt,previewWorkspaceRoot:(Z==null?void 0:Z.workspaceRoot)??null,previewInitialTarget:I,architectureDiagram:Ie,architectureGenerating:Dt,architectureRequest:Ct,onArchitectureOpenChange:We,onArchitectureRenderResult:Q0,onGenerateArchitecture:()=>{Gt(!0),uy("Analyze the workspace architecture and generate a mermaid diagram using the architecture.generate tool. Include all major modules, their relationships, data flow, and external dependencies.")},onApplyDiff:BS,provider:Pt,cliModel:lt,onCollapsedChange:F,onMaxCollapsedChange:B,restoreRef:K})}),yt==="developer"&&b&&!It&&u==="chat"&&d.jsxs("div",{className:`flex min-h-0 flex-col bg-background ${Se?"absolute inset-0 z-20 border-r":`relative border-r border-t ${ts?"shrink-0":"flex-1"}`}`,style:Se||!ts?void 0:{height:Oe},children:[!Se&&d.jsx("div",{onMouseDown:PS,className:"absolute inset-x-0 top-0 h-1.5 cursor-row-resize hover:bg-primary/30 transition-colors z-10"}),d.jsxs("div",{className:"relative shrink-0",children:[d.jsx(aV,{terminals:Xd,activeTerminalId:Hn,onSelect:qs,onCreate:D=>$i(st??"default",Bo??void 0,D),onKill:ay,onDetach:ix,availableShells:ho}),d.jsxs("div",{className:"absolute right-0 top-0 bottom-0 flex items-center gap-1 pr-2 pl-3 bg-gradient-to-l from-background via-background to-transparent z-10",children:[ts&&d.jsx("button",{onClick:()=>{Se?(Qe(!1),ge(nt.current)):(nt.current=Oe,Qe(!0))},className:"p-1 rounded hover:bg-muted text-muted-foreground hover:text-foreground transition-colors","aria-label":Se?"Exit fullscreen":"Fullscreen terminal",children:Se?d.jsx(u9,{className:"h-4 w-4"}):d.jsx(c9,{className:"h-4 w-4"})}),d.jsx("button",{onClick:()=>{Hn&&ix(Hn)},className:"p-1 rounded hover:bg-muted text-muted-foreground hover:text-foreground transition-colors","aria-label":"Open terminal in new window",children:d.jsx(jm,{className:"h-4 w-4"})}),d.jsx("button",{onClick:Uc,className:"p-1 rounded hover:bg-muted text-muted-foreground hover:text-foreground transition-colors","aria-label":"Close terminal",children:d.jsx(ei,{className:"h-4 w-4"})})]})]}),Hn?d.jsx(o4,{ref:Gs,terminalId:Hn,className:"flex-1 min-h-0",token:kt,workspaceRoot:Bo??void 0,onReferenceSelection:rx}):d.jsx("div",{className:"flex items-center justify-center flex-1 text-sm text-muted-foreground",children:d.jsx("button",{onClick:()=>$i(st??"default",Bo??void 0),className:"hover:text-foreground transition-colors",children:"+ New Terminal"})})]})]})]}),vg&&d.jsxs("section",{className:"flex flex-1 min-h-0 flex-col border-b bg-background overflow-hidden",children:[d.jsxs("div",{className:"relative shrink-0 border-b",children:[d.jsx(aV,{terminals:Xd,activeTerminalId:Hn,onSelect:qs,onCreate:D=>$i(st??"default",Bo??void 0,D),onKill:ay,availableShells:ho}),d.jsx("button",{onClick:Uc,className:"absolute right-2 top-1/2 -translate-y-1/2 p-1 rounded hover:bg-muted text-muted-foreground hover:text-foreground transition-colors","aria-label":"Close terminal",children:d.jsx(ei,{className:"h-4 w-4"})})]}),Hn?d.jsx(o4,{ref:Gs,terminalId:Hn,className:"flex-1 min-h-0",token:kt,workspaceRoot:Bo??void 0,onReferenceSelection:rx}):d.jsx("div",{className:"flex items-center justify-center flex-1 text-sm text-muted-foreground",children:d.jsx("button",{onClick:()=>$i(st??"default",Bo??void 0),className:"hover:text-foreground transition-colors",children:"+ New Terminal"})})]}),(yt==="developer"||yt==="manager"&&be.selectedThread)&&xx&&d.jsx("section",{className:"flex-1 min-h-0 border-b bg-background overflow-hidden",children:d.jsx(YF,{ref:hs,autoOpenRemotePath:(Z==null?void 0:Z.workspaceRoot)??null,surfaceId:(Z==null?void 0:Z.surfaceId)??null,files:dl,activeFileId:Ao,onActiveFileChange:As,onFileDrop:D=>{ox(D)},onReferenceFile:tx,onReferenceSelection:DS,onReferencePreviewElement:nx,onAvailableFilesChange:Td,showTree:re,showEditor:ce,onToggleTree:MS,onToggleEditor:ty,treeTab:ue,onTreeTabChange:xe,changedPaths:sy,sourceControlRefreshSignal:vp,isMobile:!0,savedTabsState:Qv,stateReady:Sp,previewRequest:Y,onTabsStateChange:aa,onPreviewOpenChange:Di,previewSessionId:st,previewToken:kt,previewWorkspaceRoot:(Z==null?void 0:Z.workspaceRoot)??null,previewInitialTarget:I,architectureDiagram:Ie,architectureGenerating:Dt,architectureRequest:Ct,onArchitectureOpenChange:We,onArchitectureRenderResult:Q0,onGenerateArchitecture:()=>{Gt(!0),uy("Analyze the workspace architecture and generate a mermaid diagram using the architecture.generate tool. Include all major modules, their relationships, data flow, and external dependencies.")},onApplyDiff:BS,provider:Pt,cliModel:lt})}),!xx&&!vg&&(yt==="manager"?d.jsx("div",{className:"flex-1 min-w-0 flex flex-col min-h-0",children:be.selectedThread?d.jsxs(d.Fragment,{children:[d.jsxs(wT,{className:"min-h-0 flex-1 border-b",loading:be.loadingActivities,loadingLabel:"Loading activity",messageContents:$d.map(D=>D.content),children:[$d.length===0&&!be.loadingActivities&&d.jsx("div",{className:"text-center text-sm text-muted-foreground py-8",children:"No activity yet"}),$d.map((D,ee)=>{var fe,he;return d.jsx(bO,{messageId:D.id,messageIndex:ee,messageFromEnd:$d.length-1-ee,role:D.role,content:D.content,contextFlow:D.contextFlow,toolCalls:D.toolCalls,segments:D.segments,isStreaming:((fe=be.selectedThread)==null?void 0:fe.status)==="running"&&ee===$d.length-1,compact:!0,preferLlmUi:!1,provider:(he=be.selectedThread)==null?void 0:he.providerId,onOpenPath:sx,onOpenDiff:ly},D.id)})]},((Sx=be.selectedThread)==null?void 0:Sx.id)??"manager-empty"),d.jsx("div",{className:"shrink-0 py-3 px-4",children:d.jsxs("div",{className:"mx-auto max-w-3xl",children:[be.error&&d.jsxs("div",{className:"flex items-center gap-2.5 rounded-lg border border-red-500/40 bg-red-500/10 px-3.5 py-2.5 text-sm text-red-400 mb-2",children:[d.jsx(Wk,{className:"h-4 w-4 shrink-0"}),d.jsx("span",{className:"min-w-0 break-words",children:be.error})]}),xl.length>0&&be.selectedThread&&d.jsx(lH,{items:xl,onRemove:D=>cy(be.selectedThread.id,D),onEdit:(D,ee)=>zS(be.selectedThread.id,D,ee),onReorder:(D,ee,fe)=>FS(be.selectedThread.id,D,ee,fe),onSendToParallelThread:HS,className:"mb-2"}),d.jsx(zb,{ref:Hs,draftStateKey:`manager:${((vy=be.selectedThread)==null?void 0:vy.id)??"new-thread"}`,value:e,onChange:r,onSubmit:hg,onQueue:cx,onStop:()=>{be.selectedThread&&be.handleStop(be.selectedThread.id)},isLoading:((_g=be.selectedThread)==null?void 0:_g.status)==="running",disabled:be.creating,placeholder:(xy=be.selectedThread)!=null&&xy.providerSessionId||((kx=be.selectedThread)==null?void 0:kx.status)==="running"?"Send a follow-up message...":"Describe what you want to do...",onVoiceInput:ff,voiceRecording:Ql,voiceLevels:uf,voiceTranscribing:Lu,onVoiceStop:()=>{Jd()},responseStyle:jr,onResponseStyleChange:Rn,provider:Pt,onProviderChange:Dr,providerRuntimeMode:Wt,onProviderRuntimeModeChange:xi,cliModel:lt,onCliModelChange:Mu,repoRuntime:vi,onMoveToGateway:cf,availableFiles:lo,onSearchFiles:qc,workspaceOpen:E}),d.jsxs("div",{className:"flex items-center gap-2 px-1 mt-1.5",children:[vi&&d.jsx(b4,{runtime:vi}),be.selectedThread&&be.selectedThread.status!=="running"&&!be.selectedThread.providerSessionId&&d.jsx("span",{className:"text-xs text-muted-foreground truncate",children:"Thread finished — start a new one"})]})]})})]}):d.jsxs("div",{className:`flex flex-1 min-h-0 ${It?"flex-col":""}`,children:[k&&d.jsx("div",{className:`overflow-hidden ${It?"h-52 shrink-0 border-b":"w-56 shrink-0 border-r"}`,children:d.jsx(xyt,{repositories:be.repositories,selectedRepoId:((by=be.selectedRepo)==null?void 0:by.id)??null,isMobile:It,getRuntimeInfo:be.getRuntimeInfoForRepository,onSelect:be.setSelectedRepoId,onAddRepository:()=>be.setFolderPickerOpen(!0),onRemoveRepository:D=>{be.removeRepository(D)},onOpenStrategy:D=>j(D),onOpenPlan:D=>A(D)})}),d.jsxs("div",{className:`flex-1 flex flex-col min-w-0 overflow-y-auto ${It?"pt-12":""}`,children:[d.jsx("div",{className:"relative z-10 flex flex-col items-center px-3 pb-1.5 pt-3 sm:px-4 sm:pb-2 sm:pt-4",children:d.jsxs("div",{className:"w-full max-w-3xl",children:[d.jsx("h1",{className:"mb-3 text-center text-xl font-semibold tracking-tight sm:mb-4 sm:text-2xl",children:"What do you want to build?"}),be.error&&d.jsxs("div",{className:"flex items-center gap-2.5 rounded-lg border border-red-500/40 bg-red-500/10 px-3.5 py-2.5 text-sm text-red-400 mb-3",children:[d.jsx(Wk,{className:"h-4 w-4 shrink-0"}),d.jsx("span",{className:"min-w-0 break-words",children:be.error})]}),d.jsx(zb,{ref:Hs,draftStateKey:`manager:${((Cx=be.selectedRepo)==null?void 0:Cx.id)??"repo-draft"}`,value:e,onChange:r,onSubmit:hg,disabled:Lo,controlsDisabled:be.creating||Dd,placeholder:Qh,onVoiceInput:ff,voiceRecording:Ql,voiceLevels:uf,voiceTranscribing:Lu,onVoiceStop:()=>{Jd()},responseStyle:jr,onResponseStyleChange:Rn,provider:Pt,onProviderChange:Dr,providerRuntimeMode:Wt,onProviderRuntimeModeChange:xi,cliModel:lt,onCliModelChange:Mu,repoRuntime:oa,onMoveToGateway:cf}),d.jsx("div",{className:"overflow-x-auto px-1 pt-1",children:d.jsxs("div",{className:"flex min-w-max items-center gap-2 whitespace-nowrap",children:[d.jsx(c8,{repositories:be.repositories,selectedRepo:be.selectedRepo,disabled:be.creating,getRuntimeInfo:be.getRuntimeInfoForRepository,onSelect:be.setSelectedRepoId,onAddRepository:()=>be.setFolderPickerOpen(!0)}),oa&&d.jsx(b4,{runtime:oa})]})})]})}),d.jsx("div",{className:"flex-1 overflow-y-auto",children:d.jsxs("div",{className:"mx-auto w-full max-w-3xl",children:[d.jsxs("div",{className:"flex h-[35px] items-center justify-between border-b px-2.5 sm:px-3",children:[d.jsxs("div",{className:"flex items-center gap-3",children:[d.jsx("span",{className:"text-sm font-medium",children:"Threads"}),d.jsx(Kr,{variant:"secondary",className:"h-5 rounded-md px-1.5 text-2xs",children:Dc.length})]}),d.jsx(ke,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:()=>void be.refresh(),children:d.jsx(va,{className:`h-3.5 w-3.5 ${be.loading?"animate-spin":""}`})})]}),Dc.length===0?d.jsx("div",{className:"px-4 py-8 text-center text-sm text-muted-foreground sm:py-12",children:"No threads yet"}):d.jsxs("div",{className:"flex flex-col",children:[Dc.map(D=>{const ee=be.getRepositoryForThread(D),fe=(ee==null?void 0:ee.name)??i6(D)??"Unknown repo",he=ede(D,D.id in be.threadPrStates?be.threadPrStates[D.id]:void 0);return d.jsx(byt,{thread:D,repo:ee,repoName:fe,prState:he,ghAvailable:be.ghAvailable,onOpen:()=>be.setSelectedThreadId(D.id),onStop:()=>{be.handleStop(D.id)},onDelete:()=>be.handleDelete(D.id)},D.id)}),be.hasMoreThreads&&d.jsxs("button",{className:"inline-flex items-center justify-center gap-1.5 px-3 py-1.5 text-xs text-muted-foreground transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-70 sm:px-4 sm:py-2",disabled:be.loading,onClick:be.showMoreThreads,children:[be.loading?d.jsx(Zt,{className:"h-3 w-3 animate-spin"}):null,"Show more threads"]}),Dc.length>be.threadListLimit&&d.jsx("button",{className:"px-3 py-1.5 text-xs text-muted-foreground transition-colors hover:text-foreground sm:px-4 sm:py-2",onClick:be.showFewerThreads,children:"Show less"})]})]})})]})]})}):GS?d.jsx("div",{className:"flex flex-col min-h-0 min-w-0 overflow-hidden",style:{flex:U?"0 0 0px":"1 1 0%",width:U?0:void 0,minWidth:U?0:void 0,visibility:U?"hidden":void 0},children:!U&&d.jsx(wT,{className:"min-h-0 flex-1 border-b",compact:ts,loading:!0,loadingLabel:"Loading chat",messageContents:[],children:null},st??"developer-loading")}):KS?d.jsx("div",{className:"flex flex-col min-h-0 min-w-0 overflow-hidden",style:{flex:U?"0 0 0px":"1 1 0%",width:U?0:void 0,minWidth:U?0:void 0,visibility:U?"hidden":void 0},children:!U&&d.jsxs(d.Fragment,{children:[d.jsxs(wT,{className:"min-h-0 flex-1 border-b",compact:ts,loading:Mo,loadingLabel:"Loading chat",messageContents:Rs.map(D=>D.content),children:[Rs.map((D,ee)=>d.jsx(bO,{messageId:D.id,messageIndex:ee,messageFromEnd:Rs.length-1-ee,role:D.role,content:D.content,contextFlow:D.contextFlow,displayContent:D.displayContent,referencedFiles:D.referencedFiles,displaySegments:D.displaySegments,attachments:D.attachments,thinking:D.thinking,thinkingDuration:D.thinkingDuration,toolCalls:D.toolCalls,segments:D.segments,isStreaming:rs&&D===Rs[Rs.length-1],compact:E||V||Kd,preferLlmUi:!0,provider:Pt,onOpenTerminal:$S,onEditMessage:ux,editComposer:XS,onOpenPath:sx,onOpenDiff:ly},D.id)),yi.length>0&&d.jsx(lH,{items:yi,onRemove:Vs,onEdit:Rc,onReorder:yp})]},st??"developer-empty"),d.jsx("div",{className:`shrink-0 ${It?"pt-2 px-2":`py-3 ${ts?"px-3":"px-4"}`}`,style:It?{paddingBottom:"0.35rem"}:void 0,children:d.jsxs("div",{className:"mx-auto w-full max-w-3xl space-y-1.5",children:[Rd.length>0&&d.jsx(aXe,{items:Rd}),Ra&&Ra!=="login_required"&&Ra!=="limit_reached"&&!rs&&d.jsxs("div",{className:"flex items-center gap-2.5 rounded-lg border border-red-500/40 bg-red-500/10 px-3.5 py-2.5 text-sm text-red-400 dark:text-red-400 dark:border-red-400/40 dark:bg-red-400/10",children:[d.jsx(Wk,{className:"h-4 w-4 shrink-0"}),d.jsx("span",{className:"min-w-0 break-words",children:Ra})]}),Ac&&!rs&&d.jsxs("div",{className:"flex items-center justify-center gap-2 py-1.5",children:[d.jsxs("button",{onClick:()=>K0({token:kt,sessionId:st}),className:"inline-flex items-center gap-1.5 rounded-md border bg-background px-3 py-1.5 text-xs font-medium text-foreground shadow-sm hover:bg-accent transition-colors",children:[d.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:d.jsx("polygon",{points:"5 3 19 12 5 21 5 3"})}),"Continue"]}),d.jsx("span",{className:"text-xs text-muted-foreground",children:"Agent stopped — hit the tool execution limit"})]}),d.jsx(xXe,{compact:!0,sessionId:st,onApproveAllEnabled:()=>Xt(!0)}),Ma&&d.jsx(sXe,{plan:Ma,onApprove:tg,onReject:ra,isExecuting:rs}),vx&&d.jsx("p",{className:"text-center text-sm text-destructive",children:"Daily limit reached. Come back tomorrow."}),ws.length>0&&d.jsx(lXe,{files:ws,onAccept:Tu,onReject:Pd,onAcceptAll:Mc,onRejectAll:Jh,onFileClick:ly}),d.jsx(zb,{ref:Hs,draftStateKey:`developer:${st??"new-chat"}`,value:e,segments:n,onChange:r,onSubmit:hg,onStop:Cr,onQueue:dg,isLoading:rs,disabled:vx,placeholder:Id,onVoiceInput:ff,voiceRecording:Ql,voiceLevels:uf,voiceTranscribing:Lu,onVoiceStop:()=>{Jd()},mode:Ft,onModeChange:Xr,responseStyle:jr,onResponseStyleChange:Rn,sendTarget:vr,onSendTargetChange:yn,showSendTargetSelector:!1,provider:Pt,onProviderChange:Dr,providerRuntimeMode:Wt,onProviderRuntimeModeChange:xi,cliModel:lt,onCliModelChange:Mu,repoRuntime:vr==="thread"?oa:null,onMoveToGateway:vr==="thread"?cf:void 0,availableFiles:lo,onSearchFiles:qc,workspaceOpen:E,sessionInfo:Gl,workspaceNodeId:Z==null?void 0:Z.nodeId}),d.jsx("div",{className:It?"px-0.5":"px-1",children:d.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[d.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:[yt==="developer"&&vr==="thread"?bx:yt==="developer"?d.jsx(aH,{sessions:pp,activeSessionId:st,workspaceTitle:(fn==null?void 0:fn.title)??"Personal chat",onSelectSession:D=>{Oa(zn,D)},onNewSession:()=>{uo()},onOpenChange:cg,showTitle:!1,triggerLabel:"History"}):null,Rr&&d.jsxs(d.Fragment,{children:[d.jsx("span",{className:"text-xs text-green-600 dark:text-green-400 truncate",children:"Approved all commands for this session"}),d.jsx("button",{onClick:a6,className:"text-xs text-muted-foreground hover:text-foreground transition-colors shrink-0",children:"Clear approve all"})]})]}),d.jsx("div",{className:"order-3 flex w-full justify-center sm:order-2 sm:w-auto sm:flex-none",children:yt==="developer"&&d.jsx(J8,{target:vr,onChange:yn,disabled:rs})}),d.jsxs("div",{className:"ml-auto flex shrink-0 items-center gap-2 sm:ml-0",children:[yt==="developer"&&vr!=="thread"&&d.jsx(d.Fragment,{children:d.jsx("button",{onClick:fx,className:"text-xs text-muted-foreground hover:text-foreground transition-colors shrink-0",children:"New chat"})}),yt==="manager"&&d.jsx("button",{onClick:()=>be.setSelectedThreadId(null),className:"text-xs text-muted-foreground hover:text-foreground transition-colors shrink-0",children:"New thread"}),ml!==null&&d.jsxs("span",{className:"text-xs text-muted-foreground shrink-0",children:[ml," remaining"]})]})]})})]})})]})}):d.jsxs("div",{className:`flex-1 min-w-0 flex flex-col items-center justify-center overflow-hidden ${U?"":"px-4"} ${It?"pt-12":""}`,style:{flex:U?"0 0 0px":void 0,width:U?0:void 0,minWidth:U?0:void 0,visibility:U?"hidden":void 0},children:[" ",d.jsxs("div",{className:"w-full max-w-3xl space-y-8",children:[d.jsxs("div",{className:"text-center",children:[d.jsx("h1",{className:"text-3xl font-semibold tracking-tight",children:"Jait"}),d.jsx("p",{className:"text-base text-muted-foreground mt-1",children:"Just Another Intelligent Tool"})]}),!Nr&&ps.length===0?d.jsxs("div",{className:"text-center space-y-3",children:[d.jsx("p",{className:"text-sm text-muted-foreground",children:"Add a workspace folder to start chatting with your code."}),d.jsxs(ke,{variant:"default",size:"lg",onClick:()=>{Hl("workspace"),Os(!0)},children:[d.jsx(hu,{className:"h-4 w-4 mr-2"}),"Add Workspace"]})]}):d.jsx(QYe,{suggestions:E&&Z?gyt:myt,onSelect:uy}),d.jsx(zb,{ref:Hs,draftStateKey:`developer:${st??"new-chat"}`,value:e,segments:n,onChange:r,onSubmit:hg,onStop:Cr,onQueue:dg,isLoading:rs,placeholder:Id,onVoiceInput:ff,voiceRecording:Ql,voiceLevels:uf,voiceTranscribing:Lu,onVoiceStop:()=>{Jd()},mode:Ft,onModeChange:Xr,responseStyle:jr,onResponseStyleChange:Rn,sendTarget:vr,onSendTargetChange:yn,showSendTargetSelector:!1,provider:Pt,onProviderChange:Dr,providerRuntimeMode:Wt,onProviderRuntimeModeChange:xi,cliModel:lt,onCliModelChange:Mu,repoRuntime:vr==="thread"?oa:null,onMoveToGateway:vr==="thread"?cf:void 0,availableFiles:lo,onSearchFiles:qc,workspaceOpen:E,sessionInfo:Gl,workspaceNodeId:Z==null?void 0:Z.nodeId}),yt==="developer"&&d.jsx("div",{className:"px-1",children:d.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[d.jsx("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:vr==="thread"?bx:d.jsx(aH,{sessions:pp,activeSessionId:st,workspaceTitle:(fn==null?void 0:fn.title)??"Personal chat",onSelectSession:D=>{Oa(zn,D)},onNewSession:()=>{uo()},onOpenChange:cg,showTitle:!1,triggerLabel:"History"})}),d.jsx("div",{className:"order-3 flex w-full justify-center sm:order-2 sm:w-auto sm:flex-none",children:d.jsx(J8,{target:vr,onChange:yn,disabled:rs})}),d.jsx("div",{className:"ml-auto flex shrink-0 items-center gap-2 sm:ml-0",children:vr!=="thread"&&d.jsx(d.Fragment,{children:d.jsx("button",{onClick:fx,className:"text-xs text-muted-foreground hover:text-foreground transition-colors shrink-0",children:"New chat"})})})]})})]})]}))]}),yt==="developer"&&Ce&&d.jsx("div",{className:"fixed top-14 right-0 bottom-0 w-[420px] border-l z-50 shadow-xl",children:d.jsx(kXe,{onClose:()=>Xe(!1)})}),It&&yt==="developer"&&u==="chat"&&d.jsxs(d.Fragment,{children:[!M&&d.jsx("button",{className:"fixed bottom-2 left-1/2 -translate-x-1/2 z-30 flex items-center justify-center h-6 w-12 rounded-full bg-background/60 backdrop-blur border shadow-md transition-all active:scale-95",onClick:()=>W(!0),"aria-label":"Show toolbar",children:d.jsx(T4,{className:"h-3.5 w-3.5 text-muted-foreground"})}),d.jsxs("div",{className:`fixed left-1/2 -translate-x-1/2 z-30 flex items-center gap-0.5 rounded-2xl border bg-background/70 backdrop-blur-lg shadow-lg px-1.5 py-1 transition-all duration-200 ${M?"bottom-3 opacity-100":"bottom-[-60px] opacity-0 pointer-events-none"}`,children:[d.jsx("button",{className:"absolute -top-3 left-1/2 -translate-x-1/2 flex items-center justify-center h-5 w-8 rounded-full bg-muted/60 backdrop-blur border border-border/40 shadow-sm",onClick:()=>W(!1),"aria-label":"Hide toolbar",children:d.jsx(el,{className:"h-3 w-3 text-muted-foreground"})}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:zn===null?"secondary":"ghost",size:"sm",className:"h-10 w-10 shrink-0 rounded-xl p-0",onClick:()=>{px()},"aria-label":"Personal chat",children:d.jsx(dm,{className:"h-5 w-5"})})}),d.jsx(mn,{side:"top",children:"Personal chat"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:g?"secondary":"ghost",size:"sm",className:"h-10 w-10 shrink-0 rounded-xl p-0",onClick:()=>v(D=>!D),"aria-label":"Workspaces",children:g?d.jsx(cT,{className:"h-5 w-5 rotate-90"}):d.jsx(uT,{className:"h-5 w-5 rotate-90"})})}),d.jsx(mn,{side:"top",children:"Workspaces"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:Af(Iu,"terminal")?"secondary":"ghost",size:"sm",className:"h-10 w-10 shrink-0 rounded-xl p-0",onClick:()=>{Vc("terminal")},"aria-label":"Terminal",children:d.jsx(qo,{className:"h-5 w-5"})})}),d.jsx(mn,{side:"top",children:"Terminal"})]}),zn&&d.jsxs(d.Fragment,{children:[d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:Af(Iu,"files")?"secondary":"ghost",size:"sm",className:"h-10 w-10 shrink-0 rounded-xl p-0",onClick:()=>{Vc("files")},"aria-label":"Files",children:d.jsx(hu,{className:"h-5 w-5"})})}),d.jsx(mn,{side:"top",children:"Files"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:Af(Iu,"git")?"secondary":"ghost",size:"sm",className:"relative h-10 w-10 shrink-0 rounded-xl p-0",onClick:()=>{Vc("git")},"aria-label":"Changes",children:[d.jsx(Xg,{className:"h-5 w-5"}),ws.length>0&&d.jsx("span",{className:"absolute -right-1 -top-1 z-10 min-w-[14px] rounded-full bg-primary px-1 text-2xs font-bold leading-[14px] text-primary-foreground",children:ws.length>99?"99+":ws.length})]})}),d.jsx(mn,{side:"top",children:"Changes"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:Af(Iu,"editor")?"secondary":"ghost",size:"sm",className:"h-10 w-10 shrink-0 rounded-xl p-0",onClick:()=>{Vc("editor")},"aria-label":"Editor",children:d.jsx(Bk,{className:"h-5 w-5"})})}),d.jsx(mn,{side:"top",children:"Editor"})]})]})]})]})]}),Pp&&Mi&&d.jsx("div",{className:"fixed top-0 left-0 right-0 h-10 z-[60]",style:{WebkitAppRegion:"drag"}}),Pp&&d.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-[hsl(220,17%,10%)]",children:d.jsx("div",{className:"w-full max-w-md border bg-background p-6 shadow-sm rounded-lg",children:jd==="url"?d.jsxs(d.Fragment,{children:[d.jsxs("div",{className:"flex flex-col space-y-1.5 text-center sm:text-left",children:[d.jsxs("h2",{className:"text-lg font-semibold leading-none tracking-tight flex items-center gap-2",children:[d.jsx(to,{className:"h-5 w-5"}),"Connect to Gateway"]}),d.jsx("p",{className:"text-sm text-muted-foreground",children:"Enter your Jait gateway URL to get started."})]}),d.jsxs("form",{onSubmit:WS,className:"space-y-4 pt-2",children:[d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"gateway-url",children:"Gateway URL"}),d.jsx($n,{id:"gateway-url",placeholder:"https://jait.example.com",value:ll,onChange:D=>{_d(D.target.value),Ci(null)},autoFocus:!0})]}),Fs&&d.jsxs("div",{className:"flex items-center gap-2 text-sm text-destructive",children:[d.jsx(Th,{className:"h-4 w-4 shrink-0"}),Fs]}),d.jsx(ke,{type:"submit",className:"w-full",disabled:ds,children:ds?d.jsxs(d.Fragment,{children:[d.jsx(Zt,{className:"h-4 w-4 mr-2 animate-spin"}),"Connecting…"]}):"Connect"})]})]}):d.jsxs(d.Fragment,{children:[d.jsxs("div",{className:"flex flex-col space-y-1.5 text-center sm:text-left",children:[d.jsx("h2",{className:"text-lg font-semibold leading-none tracking-tight",children:Ue===!1?"Welcome to Jait":"Account"}),d.jsx("div",{className:"text-sm text-muted-foreground",children:bu?d.jsxs("div",{className:"flex items-center gap-1.5 flex-wrap",children:[d.jsx(to,{className:"h-3 w-3 text-green-500"}),d.jsx("code",{className:"text-xs bg-muted px-1.5 py-0.5 rounded",children:Xi}),d.jsx("button",{type:"button",className:"text-xs text-primary underline underline-offset-2 hover:opacity-80",onClick:()=>Eo("url"),children:"Change"})]}):Ue===!1?d.jsx("p",{children:"Create your account to get started."}):d.jsx("p",{children:"Sign in with a username and password."})})]}),d.jsxs(z1,{value:tr,onValueChange:D=>qt(D),children:[d.jsxs(a0,{className:"grid grid-cols-2 w-full",children:[d.jsx(Go,{value:"login",children:"Login"}),d.jsx(Go,{value:"register",children:"Register"})]}),d.jsx(Ko,{value:"login",className:"pt-4",children:d.jsxs("form",{className:"space-y-4",onSubmit:dx,children:[d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"login-username",children:"Username"}),d.jsx($n,{id:"login-username",value:Lr,onChange:D=>cs(D.target.value),autoComplete:"username",required:!0})]}),d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"login-password",children:"Password"}),d.jsxs("div",{className:"group/pw relative",children:[d.jsx($n,{id:"login-password",type:Ur?"text":"password",value:Ea,onChange:D=>ve(D.target.value),autoComplete:"current-password",required:!0,className:"pr-10"}),d.jsx(ke,{type:"button",variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-full px-3 hover:bg-transparent opacity-0 group-focus-within/pw:opacity-100 transition-opacity",onClick:()=>Hr(!Ur),tabIndex:-1,children:Ur?d.jsx(ph,{className:"h-4 w-4 text-muted-foreground"}):d.jsx(Mf,{className:"h-4 w-4 text-muted-foreground"})})]})]}),d.jsx(ke,{type:"submit",className:"w-full",disabled:rr,children:rr?"Signing in…":"Login"})]})}),d.jsx(Ko,{value:"register",className:"pt-4",children:d.jsxs("form",{className:"space-y-4",onSubmit:hx,children:[d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"register-username",children:"Username"}),d.jsx($n,{id:"register-username",value:le,onChange:D=>$e(D.target.value),autoComplete:"username",required:!0})]}),d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"register-password",children:"Password"}),d.jsxs("div",{className:"group/pw relative",children:[d.jsx($n,{id:"register-password",type:ur?"text":"password",value:ut,onChange:D=>tt(D.target.value),autoComplete:"new-password",required:!0,className:"pr-10"}),d.jsx(ke,{type:"button",variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-full px-3 hover:bg-transparent opacity-0 group-focus-within/pw:opacity-100 transition-opacity",onClick:()=>Zr(!ur),tabIndex:-1,children:ur?d.jsx(ph,{className:"h-4 w-4 text-muted-foreground"}):d.jsx(Mf,{className:"h-4 w-4 text-muted-foreground"})})]})]}),d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"register-password-confirm",children:"Confirm password"}),d.jsxs("div",{className:"group/pw relative",children:[d.jsx($n,{id:"register-password-confirm",type:Jr?"text":"password",value:Yt,onChange:D=>jt(D.target.value),autoComplete:"new-password",required:!0,className:"pr-10"}),d.jsx(ke,{type:"button",variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-full px-3 hover:bg-transparent opacity-0 group-focus-within/pw:opacity-100 transition-opacity",onClick:()=>ri(!Jr),tabIndex:-1,children:Jr?d.jsx(ph,{className:"h-4 w-4 text-muted-foreground"}):d.jsx(Mf,{className:"h-4 w-4 text-muted-foreground"})})]})]}),d.jsx(ke,{type:"submit",className:"w-full",disabled:rr,children:rr?"Creating account…":Ue===!1?"Get Started":"Create account"})]})})]}),a&&d.jsx("p",{className:"text-sm text-destructive",children:a})]})})}),d.jsx(tp,{open:s&&!Pp,onOpenChange:D=>{o(D)},children:d.jsx($h,{className:"sm:max-w-md",children:jd==="url"?d.jsxs(d.Fragment,{children:[d.jsxs(Nh,{children:[d.jsxs(Eh,{className:"flex items-center gap-2",children:[d.jsx(to,{className:"h-5 w-5"}),"Connect to Gateway"]}),d.jsx(s0,{children:"Enter your Jait gateway URL to get started."})]}),d.jsxs("form",{onSubmit:WS,className:"space-y-4 pt-2",children:[d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"gateway-url",children:"Gateway URL"}),d.jsx($n,{id:"gateway-url",placeholder:"https://jait.example.com",value:ll,onChange:D=>{_d(D.target.value),Ci(null)},autoFocus:!0})]}),Fs&&d.jsxs("div",{className:"flex items-center gap-2 text-sm text-destructive",children:[d.jsx(Th,{className:"h-4 w-4 shrink-0"}),Fs]}),d.jsx(ke,{type:"submit",className:"w-full",disabled:ds,children:ds?d.jsxs(d.Fragment,{children:[d.jsx(Zt,{className:"h-4 w-4 mr-2 animate-spin"}),"Connecting…"]}):"Connect"})]})]}):d.jsxs(d.Fragment,{children:[d.jsxs(Nh,{children:[d.jsx(Eh,{children:Ue===!1?"Welcome to Jait":"Account"}),d.jsx(s0,{asChild:!0,children:bu?d.jsxs("div",{className:"flex items-center gap-1.5 flex-wrap",children:[d.jsx(to,{className:"h-3 w-3 text-green-500"}),d.jsx("code",{className:"text-xs bg-muted px-1.5 py-0.5 rounded",children:Xi}),d.jsx("button",{type:"button",className:"text-xs text-primary underline underline-offset-2 hover:opacity-80",onClick:()=>Eo("url"),children:"Change"})]}):Ue===!1?d.jsx("p",{children:"Create your account to get started."}):d.jsx("p",{children:"Sign in with a username and password."})})]}),d.jsxs(z1,{value:tr,onValueChange:D=>qt(D),children:[d.jsxs(a0,{className:"grid grid-cols-2 w-full",children:[d.jsx(Go,{value:"login",children:"Login"}),d.jsx(Go,{value:"register",children:"Register"})]}),d.jsx(Ko,{value:"login",className:"pt-4",children:d.jsxs("form",{className:"space-y-4",onSubmit:dx,children:[d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"login-username",children:"Username"}),d.jsx($n,{id:"login-username",value:Lr,onChange:D=>cs(D.target.value),autoComplete:"username",required:!0})]}),d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"login-password",children:"Password"}),d.jsxs("div",{className:"group/pw relative",children:[d.jsx($n,{id:"login-password",type:Ur?"text":"password",value:Ea,onChange:D=>ve(D.target.value),autoComplete:"current-password",required:!0,className:"pr-10"}),d.jsx(ke,{type:"button",variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-full px-3 hover:bg-transparent opacity-0 group-focus-within/pw:opacity-100 transition-opacity",onClick:()=>Hr(!Ur),tabIndex:-1,children:Ur?d.jsx(ph,{className:"h-4 w-4 text-muted-foreground"}):d.jsx(Mf,{className:"h-4 w-4 text-muted-foreground"})})]})]}),d.jsx(ke,{type:"submit",className:"w-full",disabled:rr,children:rr?"Signing in…":"Login"})]})}),d.jsx(Ko,{value:"register",className:"pt-4",children:d.jsxs("form",{className:"space-y-4",onSubmit:hx,children:[d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"register-username",children:"Username"}),d.jsx($n,{id:"register-username",value:le,onChange:D=>$e(D.target.value),autoComplete:"username",required:!0})]}),d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"register-password",children:"Password"}),d.jsxs("div",{className:"group/pw relative",children:[d.jsx($n,{id:"register-password",type:ur?"text":"password",value:ut,onChange:D=>tt(D.target.value),autoComplete:"new-password",required:!0,className:"pr-10"}),d.jsx(ke,{type:"button",variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-full px-3 hover:bg-transparent opacity-0 group-focus-within/pw:opacity-100 transition-opacity",onClick:()=>Zr(!ur),tabIndex:-1,children:ur?d.jsx(ph,{className:"h-4 w-4 text-muted-foreground"}):d.jsx(Mf,{className:"h-4 w-4 text-muted-foreground"})})]})]}),d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"register-password-confirm",children:"Confirm password"}),d.jsxs("div",{className:"group/pw relative",children:[d.jsx($n,{id:"register-password-confirm",type:Jr?"text":"password",value:Yt,onChange:D=>jt(D.target.value),autoComplete:"new-password",required:!0,className:"pr-10"}),d.jsx(ke,{type:"button",variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-full px-3 hover:bg-transparent opacity-0 group-focus-within/pw:opacity-100 transition-opacity",onClick:()=>ri(!Jr),tabIndex:-1,children:Jr?d.jsx(ph,{className:"h-4 w-4 text-muted-foreground"}):d.jsx(Mf,{className:"h-4 w-4 text-muted-foreground"})})]})]}),d.jsx(ke,{type:"submit",className:"w-full",disabled:rr,children:rr?"Creating account…":Ue===!1?"Get Started":"Create account"})]})})]}),a&&d.jsx("p",{className:"text-sm text-destructive",children:a})]})})}),d.jsx(dV,{open:Et,onOpenChange:D=>{Os(D),D||Wh(null)},initialPath:_s.workspace_picker_path,initialNodeId:_s.workspace_picker_node_id,onSelect:(D,ee)=>{Np(D,ee).catch(fe=>{console.error("Failed to select workspace:",fe),ai.error(`Failed to select workspace: ${fe instanceof Error?fe.message:"Unknown error"}`)})}}),d.jsx(dV,{open:be.folderPickerOpen,onOpenChange:be.setFolderPickerOpen,onSelect:(D,ee)=>{be.handleFolderSelected(D,ee)}}),d.jsx(lyt,{token:kt,sessionId:st}),C&&d.jsx(art,{open:!!C,onOpenChange:D=>{D||j(null)},repoId:C.id,repoName:C.name}),T&&d.jsx(urt,{open:!!T,onOpenChange:D=>{D||A(null)},repoId:T.id,repoName:T.name,defaultBranch:T.defaultBranch,repoLocalPath:T.localPath,provider:Pt,model:lt,onStartThread:(D,ee,fe)=>{(async()=>{const he=T,me=`jait/${Math.random().toString(16).slice(2,10)}`;let Ae;try{Ae=(await no.createWorktree(he.localPath,he.defaultBranch,me)).path}catch{try{await no.createBranch(he.localPath,me,he.defaultBranch)}catch{}}const mt=await qr.createThread({title:`[${he.name}] ${D.title}`,providerId:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,kind:"delivery",workingDirectory:Ae??he.localPath,branch:me});await qr.startThread(mt.id,{message:D.description||D.title,titleTask:D.title,titlePrefix:`[${he.name}] `});const bt=ee.tasks.map(zt=>zt.id===D.id?{...zt,status:"running",threadId:mt.id}:zt);await qr.updatePlan(ee.id,{tasks:bt})})()}}),V&&d.jsxs("div",{className:"fixed z-50 bg-background border rounded-lg shadow-2xl overflow-hidden flex flex-col",style:{left:ft.x<0?void 0:ft.x,top:ft.y<0?void 0:ft.y,right:ft.x<0?16:void 0,bottom:ft.y<0?16:void 0,width:Bt.w,height:Bt.h},children:[d.jsxs("div",{className:"flex items-center justify-between h-8 px-3 border-b bg-muted/30 shrink-0 cursor-move select-none",onPointerDown:Gv,style:{touchAction:"none"},children:[d.jsxs("span",{className:"text-xs font-medium flex items-center gap-1.5",children:[d.jsx(Ig,{className:"h-3 w-3"})," Screen Share"]}),d.jsx(ke,{variant:"ghost",size:"sm",className:"h-5 w-5 p-0",onPointerDown:D=>D.stopPropagation(),onClick:Gd,children:d.jsx(ei,{className:"h-3 w-3"})})]}),d.jsx(Fht,{screenShare:sa}),d.jsx("div",{className:"absolute bottom-0 right-0 w-3 h-3 cursor-nwse-resize opacity-50 hover:opacity-100",onPointerDown:up,style:{touchAction:"none"},children:d.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",className:"text-muted-foreground",children:d.jsx("path",{d:"M10 2L2 10M10 6L6 10M10 10L10 10",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})})})]})]})})}function Syt(){const[e,r]=St.useState(()=>document.documentElement.classList.contains("dark")?"dark":"light");St.useEffect(()=>{const i=document.documentElement,s=()=>r(i.classList.contains("dark")?"dark":"light");s();const o=new MutationObserver(s);return o.observe(i,{attributes:!0,attributeFilter:["class"]}),()=>o.disconnect()},[]);const n=!!window.jaitDesktop&&navigator.userAgent.includes("Windows");return d.jsx(Bhe,{position:"top-right",theme:e,closeButton:!0,gap:8,visibleToasts:4,offset:n?44:void 0})}hhe.createRoot(document.getElementById("root")).render(d.jsx(St.StrictMode,{children:d.jsx(Iye,{children:d.jsxs(Dye,{children:[d.jsx(wyt,{}),d.jsx(Syt,{})]})})}));export{Uyt as $,FMe as A,Pyt as B,y_ as C,Oh as D,ERe as E,YMe as F,gM as G,DQ as H,Sa as I,bBe as J,cHe as K,pIe as L,KDe as M,kz as N,Sz as O,Wyt as P,Iyt as Q,Fyt as R,zyt as S,$yt as T,Fr as U,GR as V,Hyt as W,Dyt as X,Wy as Y,Vyt as Z,X as _,WMe as a,Ire as a$,Byt as a0,dMe as a1,v2 as a2,Ryt as a3,Lj as a4,eHe as a5,EMe as a6,qQ as a7,ZB as a8,JDe as a9,d1t as aA,a1t as aB,mr as aC,l1t as aD,jUe as aE,_Ue as aF,bUe as aG,kee as aH,VDe as aI,jWe as aJ,TQ as aK,YDe as aL,Oyt as aM,T0 as aN,mS as aO,kWe as aP,SWe as aQ,qDe as aR,AW as aS,ZFe as aT,Bre as aU,Aj as aV,Pj as aW,N5 as aX,Gst as aY,Fre as aZ,yd as a_,SA as aa,lHe as ab,DMe as ac,oS as ad,sr as ae,kr as af,KQ as ag,ZWe as ah,Zie as ai,u1t as aj,wBe as ak,ja as al,sp as am,lb as an,yM as ao,Gre as ap,jv as aq,Zre as ar,cr as as,XFe as at,Hze as au,WFe as av,aM as aw,SF as ax,UUe as ay,c1t as az,HMe as b,TFe as b0,FR as b1,am as b2,w2 as b3,pz as b4,o$e as b5,fr as b6,Jre as b7,Dl as b8,QLe as b9,Pze as bA,cM as bB,Oze as bC,Dze as bD,kv as bE,Um as bF,zz as bG,uM as bH,Pre as bI,eO as bJ,JFe as bK,Mj as bL,$0 as bM,Cyt as bN,Ke as bO,zR as ba,cee as bb,dS as bc,hee as bd,Lyt as be,nz as bf,rz as bg,PEe as bh,YFe as bi,HFe as bj,Eze as bk,lM as bl,SFe as bm,QFe as bn,C5 as bo,PFe as bp,XUe as bq,fS as br,T5 as bs,NFe as bt,Rre as bu,Rze as bv,Mze as bw,Cv as bx,Pg as by,Vz as bz,Xn as c,Ar as d,GQ as e,io as f,VMe as g,Zf as h,gd as i,CBe as j,lS as k,xt as l,Yre as m,aS as n,Myt as o,f1t as p,qMe as q,h1t as r,UMe as s,GMe as t,ed as u,_Be as v,hHe as w,gUe as x,qyt as y,Z1 as z};
1399
+ `)}`:me,displayContent:me,referencedFiles:Ae.length>0?Ae:void 0,displaySegments:he,attachments:Rt.size>0?[...Rt]:void 0}},[dl]),dg=y.useCallback(async(D,ee,fe)=>{const he=await Pu(e,D,fe);if(!he)return;const me=Lk(he.displaySegments,ee);Us({content:he.promptWithReferences,displayContent:he.displayContent||he.promptWithReferences,mode:Ft,provider:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,responseStyle:jr,model:lt??void 0,referencedFiles:he.referencedFiles,displaySegments:me,attachments:ee}),r(""),i(void 0)},[Ft,Pt,Wt,jr,lt,Us,e,Pu]),Ap=y.useCallback(async(D,ee)=>{if(!cyt(Nc==null?void 0:Nc.name))return;const fe=a8(ee);!fe||fe==="New Chat"||await ku(D,fe)},[Nc==null?void 0:Nc.name,ku]),hg=async(D,ee,fe)=>{if(yt==="manager"||vr==="thread")return ax(D,ee,fe);const he=await Pu(e,D,fe);if(!he&&(!ee||ee.length===0))return;if(!kt){o(!0);return}const me=(he==null?void 0:he.promptWithReferences)??e.trim(),Ae=Lk(he==null?void 0:he.displaySegments,ee),mt=a8((he==null?void 0:he.displayContent)||me);let bt=st;if(!bt){const zt=await uo(void 0,mt);bt=(zt==null?void 0:zt.id)??null}if(bt){if(await Ap(bt,(he==null?void 0:he.displayContent)||me),rs||yi.length>0){Us({content:me,displayContent:(he==null?void 0:he.displayContent)||me,mode:Ft,provider:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,responseStyle:jr,model:lt??void 0,referencedFiles:he==null?void 0:he.referencedFiles,displaySegments:Ae,attachments:ee}),r(""),i(void 0);return}Oc(me,{token:kt,sessionId:bt,mode:Ft,provider:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,responseStyle:jr,model:lt??void 0,onLoginRequired:()=>o(!0),attachments:ee,...he!=null&&he.displayContent?{displayContent:he.displayContent||me}:{},...he!=null&&he.referencedFiles?{referencedFiles:he.referencedFiles}:{},...Ae!=null&&Ae.length?{displaySegments:Ae}:{}}),r(""),i(void 0)}},ax=async(D,ee,fe)=>{var mt;const he=await Pu(e,D,fe);if(!he||Lo)return;const me=Lk(he.displaySegments,ee),Ae=be.selectedThread?((mt=ci[be.selectedThread.id])==null?void 0:mt.length)??0:0;if(be.selectedThread&&(be.selectedThread.status==="running"||Ae>0)){Op(be.selectedThread.id,{id:`mq-${Date.now()}-${Math.random().toString(36).slice(2,6)}`,content:he.displayContent||he.promptWithReferences,displayContent:he.displayContent||he.promptWithReferences,fullContent:he.promptWithReferences,referencedFiles:he.referencedFiles,displaySegments:me,attachments:he.attachments,providerId:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,model:lt??void 0,queuedAt:Date.now()}),r(""),i(void 0);return}r(""),i(void 0),await be.handleSend(he.promptWithReferences,Pt,Pt!=="jait"?Wt:void 0,lt??void 0,{displayContent:he.displayContent||he.promptWithReferences,referencedFiles:he.referencedFiles,displaySegments:me,attachments:he.attachments})},lx=y.useRef(!1);y.useEffect(()=>{var ee,fe,he;if(yt==="manager"||vr==="thread"||!kt||!st||rs||Mo||lx.current)return;const[D]=yi;D&&(lx.current=!0,Vs(D.id),Promise.resolve(Oc(D.content,{token:kt,sessionId:st,mode:D.mode,provider:D.provider,runtimeMode:D.runtimeMode,responseStyle:D.responseStyle,model:D.model,onLoginRequired:()=>o(!0),...(ee=D.attachments)!=null&&ee.length?{attachments:D.attachments}:{},...D.displayContent?{displayContent:D.displayContent}:{},...(fe=D.referencedFiles)!=null&&fe.length?{referencedFiles:D.referencedFiles}:{},...(he=D.displaySegments)!=null&&he.length?{displaySegments:D.displaySegments}:{}})).catch(me=>{Us({content:D.content,displayContent:D.displayContent,mode:D.mode,provider:D.provider,runtimeMode:D.runtimeMode,responseStyle:D.responseStyle,model:D.model,referencedFiles:D.referencedFiles,displaySegments:D.displaySegments,attachments:D.attachments}),ai.error(Eq(me instanceof Error?me.message:null,"Failed to send queued message"))}).finally(()=>{lx.current=!1}))},[st,Vs,Us,rs,Mo,yi,Oc,vr,kt,yt]);const Op=y.useCallback((D,ee)=>{ia(fe=>({...fe,[D]:[...fe[D]??[],ee]}))},[]),cy=y.useCallback((D,ee)=>{ia(fe=>{const he=fe[D]??[],me=he.filter(Ae=>Ae.id!==ee);if(me.length===he.length)return fe;if(me.length===0){const{[D]:Ae,...mt}=fe;return mt}return{...fe,[D]:me}})},[]),zS=y.useCallback((D,ee,fe)=>{const he=fe.trim();he&&ia(me=>{const Ae=me[D]??[];return Ae.length===0?me:{...me,[D]:Ae.map(mt=>mt.id===ee?{...mt,content:he,displayContent:he,fullContent:he,referencedFiles:void 0,displaySegments:void 0,attachments:void 0}:mt)}})},[]),FS=y.useCallback((D,ee,fe,he)=>{ia(me=>{const Ae=me[D]??[];if(Ae.length===0)return me;const mt=Ae.findIndex(Rt=>Rt.id===ee);if(mt<0)return me;const bt=[...Ae],[zt]=bt.splice(mt,1);if(!zt)return me;if(fe==null)bt.push(zt);else{const Rt=bt.findIndex(Wr=>Wr.id===fe);if(Rt<0)return me;bt.splice(Rt+(he==="after"?1:0),0,zt)}return bt===Ae?me:{...me,[D]:bt}})},[]),HS=y.useCallback(D=>{var me;const ee=be.selectedThread,fe=be.selectedRepo;if(!ee||!fe)return;const he=(me=ci[ee.id])==null?void 0:me.find(Ae=>Ae.id===D);he&&(cy(ee.id,D),(async()=>{const Ae=`jait/${Math.random().toString(16).slice(2,10)}`;let mt;try{mt=(await no.createWorktree(fe.localPath,fe.defaultBranch,Ae)).path}catch{try{await no.createBranch(fe.localPath,Ae,fe.defaultBranch)}catch{}}const bt=await qr.createThread({title:`[${fe.name}] Generating title…`,providerId:he.providerId,runtimeMode:he.runtimeMode,...he.model?{model:he.model}:{},kind:"delivery",workingDirectory:mt??fe.localPath,branch:Ae});await qr.startThread(bt.id,{message:he.fullContent,titlePrefix:`[${fe.name}] `,...he.displayContent?{displayContent:he.displayContent}:{},...he.referencedFiles?{referencedFiles:he.referencedFiles}:{},...he.displaySegments?{displaySegments:he.displaySegments}:{},...he.attachments?{attachments:he.attachments}:{}})})())},[be.selectedThread,be.selectedRepo,ci,cy]),cx=y.useCallback(async(D,ee,fe)=>{const he=be.selectedThread;if(!he)return;const me=await Pu(e,D,fe);if(!me)return;const Ae=Lk(me.displaySegments,ee);Op(he.id,{id:`mq-${Date.now()}-${Math.random().toString(36).slice(2,6)}`,content:me.displayContent||me.promptWithReferences,displayContent:me.displayContent||me.promptWithReferences,fullContent:me.promptWithReferences,referencedFiles:me.referencedFiles,displaySegments:Ae,attachments:me.attachments,providerId:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,model:lt??void 0,queuedAt:Date.now()}),r(""),i(void 0)},[be.selectedThread,Pt,Wt,lt,Op,e,Pu]);y.useEffect(()=>{if(!st)for(const[D,ee]of Object.entries(ci)){if(ee.length===0||Ld.current.has(D))continue;const fe=be.threads.find(me=>me.id===D);if(!fe){ia(me=>{if(!(D in me))return me;const{[D]:Ae,...mt}=me;return mt});continue}if(fe.status==="running")continue;const[he]=ee;he&&(Ld.current.add(D),ia(me=>{const Ae=me[D]??[],[,...mt]=Ae;if(mt.length===0){const{[D]:bt,...zt}=me;return zt}return{...me,[D]:mt}}),be.handleSendToThread(D,he.fullContent,he.providerId,he.runtimeMode,he.model,{displayContent:he.displayContent??he.content,referencedFiles:he.referencedFiles,displaySegments:he.displaySegments,attachments:he.attachments}).catch(me=>{ia(Ae=>({...Ae,[D]:[he,...Ae[D]??[]]})),be.setError(me instanceof Error?me.message:"Failed to process queued thread message")}).finally(()=>{Ld.current.delete(D)}))}},[st,be.handleSendToThread,be.setError,be.threads,ci]);const cf=y.useCallback(async()=>{const D=be.selectedRepo;if(D)try{await qr.updateRepo(D.id,{deviceId:""}),await be.refresh()}catch{be.setError("Failed to move repository to gateway")}},[be.selectedRepo,be.refresh,be.setError]),uy=async D=>{if(!kt){o(!0);return}let ee=st;if(!ee){const fe=await uo();ee=(fe==null?void 0:fe.id)??null}if(ee){if(D==="Generate architecture diagram"){Gt(!0),We(!0),Oc("Analyze the workspace architecture and generate a mermaid diagram using the architecture.generate tool. Include all major modules, their relationships, data flow, and external dependencies.",{token:kt,sessionId:ee,mode:Ft,provider:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,model:lt??void 0,onLoginRequired:()=>o(!0)});return}Oc(D,{token:kt,sessionId:ee,mode:Ft,provider:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,model:lt??void 0,onLoginRequired:()=>o(!0)})}},ux=y.useCallback(async(D,ee,fe,he,me)=>{if(!st||!kt)return;const Ae=await Pu(ee,me==null?void 0:me.referencedFiles,me==null?void 0:me.displaySegments);Ae&&await eg(D,Ae.promptWithReferences,fe,he,{token:kt,sessionId:st,mode:Ft,provider:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,model:lt??void 0,displayContent:Ae.displayContent,referencedFiles:Ae.referencedFiles,displaySegments:Ae.displaySegments,onLoginRequired:()=>o(!0)})},[st,eg,kt,Ft,Pt,Wt,lt,Pu]),dx=async D=>{if(D.preventDefault(),!rr){l(null),xr(!0);try{await ji(Lr,Ea),o(!1),ve(""),c("chat")}catch(ee){l(ee instanceof Error?ee.message:"Login failed")}finally{xr(!1)}}},hx=async D=>{if(D.preventDefault(),!rr){if(l(null),!le||!ut){l("Username and password are required");return}if(ut!==Yt){l("Passwords do not match");return}xr(!0);try{await qh(le,ut),o(!1),tt(""),jt(""),c("chat")}catch(ee){l(ee instanceof Error?ee.message:"Registration failed")}finally{xr(!1)}}},WS=y.useCallback(async D=>{D.preventDefault();const ee=ll.trim();if(!ee){Ci("Please enter a gateway URL");return}bs(!0),Ci(null);try{const fe=ee.replace(/\/+$/,""),he=await fetch(`${fe}/health`,{signal:AbortSignal.timeout(5e3)});if(!he.ok)throw new Error(`Server returned ${he.status}`);const me=Mn();if(uQ(fe),fe!==me){window.location.reload();return}Eo("auth")}catch(fe){Ci(fe instanceof Error?fe.name==="TimeoutError"||fe.name==="AbortError"?"Connection timed out":fe.message:"Failed to connect")}finally{bs(!1)}},[ll]),dy=()=>{dp(),gp(),c("chat"),o(!0)},fx=y.useCallback(()=>{gp(),uo()},[gp,uo]),px=y.useCallback(async()=>{const D=Aa[0]??await uo(null);D&&Oa(null,D.id)},[uo,Aa,Oa]),mx=async D=>{const ee=Object.fromEntries(Object.entries(D).map(([fe,he])=>[fe,he.trim()]).filter(([,fe])=>fe.length>0));await pl({api_keys:ee})},US=async()=>{const D=await U0();return await Kh(),D.removed},VS=async()=>{const D=await V0();return await Kh(),D},o6=async D=>{const ee=await Jm(D);return ee&&await Kh(),ee},a6=y.useCallback(async()=>{if(st)try{await fetch(`${Xi}/api/consent/pending/${st}/approve-all`,{method:"DELETE"}),Xt(!1)}catch{}},[st]),qS=y.useCallback(async D=>{var me;const ee=Que(D);if(!ee)return;if(yt==="manager"||vr==="thread"){const Ae=be.selectedThread,mt=Ae?((me=ci[Ae.id])==null?void 0:me.length)??0:0;if(Ae&&(Ae.status==="running"||mt>0)){Op(Ae.id,{id:`mq-${Date.now()}-${Math.random().toString(36).slice(2,6)}`,content:ee,displayContent:ee,fullContent:ee,referencedFiles:void 0,attachments:void 0,providerId:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,model:lt??void 0,queuedAt:Date.now()});return}await be.handleSend(ee,Pt,Pt!=="jait"?Wt:void 0,lt??void 0);return}const fe=a8(ee);let he=st;if(!he){const Ae=await uo(void 0,fe);he=(Ae==null?void 0:Ae.id)??null}if(!(!he||!kt)){if(await Ap(he,ee),rs||yi.length>0){Us({content:ee,displayContent:ee,mode:Ft,provider:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,model:lt??void 0});return}Oc(ee,{token:kt,sessionId:he,mode:Ft,provider:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,model:lt??void 0,onLoginRequired:()=>o(!0)})}},[st,be.handleSend,be.selectedThread,Ft,Pt,Wt,lt,uo,Op,Us,Ap,rs,ci,yi.length,Oc,vr,kt,yt]),[Ql,hy]=y.useState(!1),[Lu,gx]=y.useState(!1),[uf,Rp]=y.useState(()=>l8()),fg=y.useRef(null),Mp=y.useRef([]),df=y.useRef(null),hf=y.useRef(l8()),pg=y.useRef(null),fy=y.useRef(null),py=y.useRef(null),$u=y.useRef(null),mg=y.useRef(null),gg=y.useCallback(()=>{const D=l8();hf.current=D,Rp(D)},[]),Zd=y.useCallback(()=>{var ee;mg.current!==null&&(cancelAnimationFrame(mg.current),mg.current=null),(ee=fy.current)==null||ee.disconnect(),fy.current=null,py.current=null,$u.current=null;const D=pg.current;pg.current=null,D&&D.state!=="closed"&&D.close().catch(()=>{}),gg()},[gg]),yg=y.useCallback(D=>{Zd();try{const ee=new AudioContext,fe=ee.createAnalyser();fe.fftSize=256,fe.smoothingTimeConstant=.58;const he=ee.createMediaStreamSource(D);he.connect(fe);const me=new Uint8Array(new ArrayBuffer(fe.frequencyBinCount));pg.current=ee,fy.current=he,py.current=fe,$u.current=me;const Ae=()=>{const mt=py.current,bt=$u.current;if(!mt||!bt)return;mt.getByteTimeDomainData(bt);let zt=0;for(let Cn=0;Cn<bt.length;Cn++)zt+=Math.abs((bt[Cn]-128)/128);const Rt=bt.length>0?zt/bt.length:0,Wr=Math.pow(Math.min(1,Rt*6.8),.78),Qr=Math.min(1,Math.max(J7,Wr)),rn=(hf.current[hf.current.length-1]??J7)*.2+Qr*.8,cn=[...hf.current.slice(-(Jue-1)),rn];hf.current=cn,Rp(cn),mg.current=requestAnimationFrame(Ae)};Ae()}catch(ee){console.warn("Voice visualizer unavailable:",ee),gg()}},[gg,Zd]),yx=y.useCallback(D=>{const fe=D.sampleRate,he=D.getChannelData(0),me=new ArrayBuffer(44+he.length*2),Ae=new DataView(me),mt=(zt,Rt)=>{for(let Wr=0;Wr<Rt.length;Wr++)Ae.setUint8(zt+Wr,Rt.charCodeAt(Wr))};mt(0,"RIFF"),Ae.setUint32(4,36+he.length*2,!0),mt(8,"WAVE"),mt(12,"fmt "),Ae.setUint32(16,16,!0),Ae.setUint16(20,1,!0),Ae.setUint16(22,1,!0),Ae.setUint32(24,fe,!0),Ae.setUint32(28,fe*1*2,!0),Ae.setUint16(32,2,!0),Ae.setUint16(34,16,!0),mt(36,"data"),Ae.setUint32(40,he.length*2,!0);let bt=44;for(let zt=0;zt<he.length;zt++){const Rt=Math.max(-1,Math.min(1,he[zt]));Ae.setInt16(bt,Rt<0?Rt*32768:Rt*32767,!0),bt+=2}return new Blob([me],{type:"audio/wav"})},[]),Jd=y.useCallback(async()=>{var fe,he;hy(!1),Zd();const D=fg.current;if(!D||D.state==="inactive"){(fe=df.current)==null||fe.getTracks().forEach(me=>me.stop()),df.current=null,fg.current=null;return}const ee=await new Promise(me=>{D.ondataavailable=Ae=>{Ae.data.size>0&&Mp.current.push(Ae.data)},D.onstop=()=>{me(new Blob(Mp.current,{type:D.mimeType}))},D.stop()});if((he=df.current)==null||he.getTracks().forEach(me=>me.stop()),df.current=null,fg.current=null,ee.size!==0&&(_s.stt_provider==="wyoming"||_s.stt_provider==="whisper")){gx(!0);try{const me=await ee.arrayBuffer(),Ae=new AudioContext({sampleRate:16e3}),mt=await Ae.decodeAudioData(me),bt=yx(mt);await Ae.close();const zt=await bt.arrayBuffer(),Rt=new Uint8Array(zt);let Wr="";for(let cn=0;cn<Rt.length;cn++)Wr+=String.fromCharCode(Rt[cn]);const Qr=btoa(Wr),rn=await(await fetch(`${Xi}/api/voice/transcribe-audio`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${kt}`},body:JSON.stringify({audioBase64:Qr,sessionId:st??"voice-input",provider:_s.stt_provider})})).json();rn.text?r(cn=>uyt(cn,rn.text??"")):console.warn("Transcription failed:",rn.details??rn.error)}catch(me){console.error("Transcription error:",me)}finally{gx(!1)}}},[st,yx,_s.stt_provider,kt]),ff=y.useCallback(async()=>{if(!kt){o(!0);return}try{const D=await navigator.mediaDevices.getUserMedia({audio:{echoCancellation:!0,noiseSuppression:!0,sampleRate:16e3}});df.current=D,Mp.current=[],yg(D);const ee=new MediaRecorder(D);fg.current=ee,ee.ondataavailable=fe=>{fe.data.size>0&&Mp.current.push(fe.data)},ee.start(),hy(!0)}catch(D){Zd(),console.error("Microphone access denied:",D),window.alert("Microphone access is required for push-to-talk.")}},[st,_s.stt_provider,yg,Zd,qS,kt]),[Du,l6]=y.useState(()=>{try{return localStorage.getItem("jait:wake-word")==="true"}catch{return!1}}),my=y.useCallback(()=>{l6(D=>{const ee=!D;try{localStorage.setItem("jait:wake-word",String(ee))}catch{}return ee})},[]),is=y.useCallback(()=>{Nt(!0),At.connect()},[At]),Ti=_pt({enabled:Du&&Wl&&!Ql&&!Ve,lang:navigator.language,onCommand:()=>{is()},onWakeWordDetected:()=>{is()}});y.useEffect(()=>()=>{var D;Zd(),(D=df.current)==null||D.getTracks().forEach(ee=>ee.stop())},[Zd]);const vx=Ra==="limit_reached",Pp=!hl&&!Wl,GS=yt==="developer"&&u==="chat"&&!Pp&&(hl||Nr||!!st&&(Mo||_p||Ou||X0||rf)),KS=Rs.length>0||Mo,pf=y.useMemo(()=>Zue({showWorkspace:E,showTerminal:b,showWorkspaceTree:re,showWorkspaceEditor:ce,treeTab:ue}),[ue,b,E,ce,re]),xx=It&&Km&&pf!==null&&pf!=="terminal",vg=It&&u==="chat"&&yt==="developer"&&pf==="terminal",Iu=y.useMemo(()=>({showWorkspace:E,showTerminal:b,showWorkspaceTree:re,showWorkspaceEditor:ce,treeTab:ue}),[ue,b,E,ce,re]),YS=((yy=(gy=Oo==null?void 0:Oo.username)==null?void 0:gy[0])==null?void 0:yy.toUpperCase())??"?",xg=y.useCallback(()=>{Jd()},[Jd]),bg=y.useCallback(()=>{be.setFolderPickerOpen(!0)},[be.setFolderPickerOpen]),bx=vr==="thread"?d.jsx(c8,{repositories:be.repositories,selectedRepo:be.selectedRepo,disabled:be.creating,getRuntimeInfo:be.getRuntimeInfoForRepository,onSelect:be.setSelectedRepoId,onAddRepository:bg}):null,_x=y.useMemo(()=>{if(vr==="thread")return d.jsx(c8,{repositories:be.repositories,selectedRepo:be.selectedRepo,disabled:be.creating,getRuntimeInfo:be.getRuntimeInfoForRepository,onSelect:be.setSelectedRepoId,onAddRepository:bg})},[vr,be.repositories,be.selectedRepo,be.creating,be.getRuntimeInfoForRepository,be.setSelectedRepoId,bg]),XS=y.useMemo(()=>({onVoiceInput:ff,voiceRecording:Ql,voiceLevels:uf,voiceTranscribing:Lu,onVoiceStop:xg,mode:Ft,onModeChange:Xr,sendTarget:vr,onSendTargetChange:yn,provider:Pt,onProviderChange:Dr,responseStyle:jr,onResponseStyleChange:Rn,providerRuntimeMode:Wt,onProviderRuntimeModeChange:xi,cliModel:lt,onCliModelChange:Mu,repoRuntime:vr==="thread"?oa:null,onMoveToGateway:vr==="thread"?cf:void 0,footerLeadingContent:_x,availableFiles:lo,onSearchFiles:qc,workspaceOpen:E,sessionInfo:Gl,workspaceNodeId:Z==null?void 0:Z.nodeId}),[ff,Ql,uf,Lu,xg,Ft,Xr,vr,yn,Pt,Dr,jr,Rn,Wt,xi,lt,Mu,oa,cf,_x,lo,qc,E,Gl,Z==null?void 0:Z.nodeId]),wx=[...Rs.slice(-10).map(D=>hV({id:`msg-${D.id}`,source:"chat",title:`Message: ${D.role}`,detail:D.content.slice(0,120)||"(empty message)"})),...yl.map(D=>hV({id:`term-${D.id}`,source:"terminal",title:"Terminal session",detail:`${D.id} (${D.state})`}))];return Ht?d.jsx(Zht,{detachedTabId:Ht}):Ln?d.jsx(tft,{detachedId:Ln}):Zo===!1?d.jsx(nft,{onRetry:()=>{_u.current=!1,cl(null),zs()}}):d.jsx(ZY,{children:d.jsxs("div",{className:"fixed inset-0 flex flex-col overflow-hidden safe-top safe-bottom safe-left safe-right",children:[!Pp&&d.jsxs(d.Fragment,{children:[d.jsxs("header",{className:It?"fixed top-2 left-2 right-2 z-40 flex items-center gap-1 pointer-events-none h-10":`relative flex items-center gap-1 shrink-0 border-b bg-background px-2 sm:gap-2 sm:px-5 ${Mi?"h-10 !pl-[0.8rem]":"h-14"}`,style:Mi?{WebkitAppRegion:"drag",paddingLeft:Li==="darwin"?70:void 0,paddingRight:Li==="win32"?140:void 0}:void 0,children:[d.jsxs("div",{className:`flex items-center gap-1 shrink-0 ${It?"pointer-events-auto rounded-2xl bg-background/70 backdrop-blur-lg shadow-lg border px-2 h-10":""}`,style:Mi?{WebkitAppRegion:"no-drag"}:void 0,children:[d.jsx(iae,{size:20,className:"shrink-0"}),Ti.isSupported&&d.jsx("button",{className:`md:hidden flex items-center justify-center h-8 w-8 rounded-lg shrink-0 transition-colors ${Ve?"text-green-400 bg-green-500/10":Du?Ti.isListening?"text-green-400 bg-green-500/10":"text-blue-400 bg-blue-500/10":"text-muted-foreground hover:bg-accent"}`,onClick:Ve?()=>{At.disconnect(),Nt(!1)}:my,"aria-label":Ve?"Disconnect voice":Du?"Disable wake word":"Enable wake word",children:Ve?d.jsx(Jy,{className:"h-4 w-4 animate-pulse"}):Du?d.jsx(Jy,{className:`h-4 w-4 ${Ti.isListening?"animate-pulse":""}`}):d.jsx(Fk,{className:"h-4 w-4"})})]}),d.jsxs("nav",{className:"hidden md:flex items-center gap-1 min-w-0 overflow-x-auto scrollbar-none",style:Mi?{WebkitAppRegion:"no-drag"}:void 0,children:[d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:u==="chat"?"secondary":"ghost",size:"sm",className:"h-8 shrink-0 rounded-lg gap-1.5 px-2 text-xs",onClick:()=>c("chat"),"aria-label":"Chat",children:[d.jsx(dm,{className:"h-3.5 w-3.5"}),d.jsx("span",{children:"Chat"})]})}),d.jsx(mn,{side:"bottom",children:"Chat"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:u==="jobs"?"secondary":"ghost",size:"sm",className:"h-8 shrink-0 rounded-lg gap-1.5 px-2 text-xs",onClick:()=>c("jobs"),"aria-label":"Jobs",children:[d.jsx(u_,{className:"h-3.5 w-3.5"}),d.jsx("span",{children:"Jobs"})]})}),d.jsx(mn,{side:"bottom",children:"Jobs"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:u==="network"?"secondary":"ghost",size:"sm",className:"h-8 shrink-0 rounded-lg gap-1.5 px-2 text-xs",onClick:()=>c("network"),"aria-label":"Network",children:[d.jsx(m1,{className:"h-3.5 w-3.5"}),d.jsx("span",{children:"Network"})]})}),d.jsx(mn,{side:"bottom",children:"Network"})]}),yt==="developer"&&!It&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:V?"secondary":"ghost",size:"sm",className:"h-8 shrink-0 rounded-lg gap-1.5 px-2 text-xs",onClick:()=>V?Gd():jp(),"aria-label":"Screen sharing",children:[d.jsx(Ig,{className:"h-3.5 w-3.5"}),d.jsx("span",{children:"Screen Share"})]})}),d.jsx(mn,{side:"bottom",children:"Screen sharing"})]})]}),Ve?d.jsxs("div",{className:`absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-10 flex items-center gap-1.5 rounded-full border border-border/60 bg-background/80 backdrop-blur-sm px-1.5 py-1 ${It?"pointer-events-auto":""}`,style:Mi?{WebkitAppRegion:"no-drag"}:void 0,children:[d.jsx("button",{onClick:At.toggleMic,className:`flex items-center justify-center h-7 w-7 rounded-full transition-colors ${At.micActive?"bg-muted hover:bg-muted/80 text-foreground":"bg-destructive/15 text-destructive hover:bg-destructive/25"}`,"aria-label":At.micActive?"Mute":"Unmute",children:At.micActive?d.jsx(Jy,{className:"h-3.5 w-3.5"}):d.jsx(Fk,{className:"h-3.5 w-3.5"})}),d.jsx(ryt,{state:At.assistantSpeaking?"speaking":At.status,size:"sm",lineWidth:2,className:"!aspect-auto !h-7 w-24 sm:w-36"}),d.jsx("button",{onClick:()=>{At.disconnect(),Nt(!1)},className:"flex items-center justify-center h-7 w-7 rounded-full bg-destructive text-destructive-foreground hover:bg-destructive/90 transition-colors","aria-label":"End call",children:d.jsx(B0e,{className:"h-3.5 w-3.5"})})]}):u==="chat"?d.jsx("div",{className:`absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-10 ${It?"pointer-events-auto rounded-2xl bg-background/70 backdrop-blur-lg shadow-lg border px-1.5 h-10 flex items-center":""}`,style:Mi?{WebkitAppRegion:"no-drag"}:void 0,children:d.jsx(vpt,{mode:yt,onChange:ln,compact:It})}):null,d.jsx("div",{className:"flex-1 min-w-0"}),d.jsxs("div",{className:`flex items-center gap-1 sm:gap-1.5 shrink-0 ${It?"pointer-events-auto rounded-2xl bg-background/70 backdrop-blur-lg shadow-lg border px-1 py-0.5 h-10":""}`,style:Mi?{WebkitAppRegion:"no-drag"}:void 0,children:[u==="chat"&&Kn.length>0&&d.jsx(_yt,{threads:Kn,getRepositoryForThread:be.getRepositoryForThread,threadPrStates:be.threadPrStates,ghAvailable:be.ghAvailable,onOpenThread:D=>{c("chat"),be.setSelectedThreadId(D),yn("thread")},onStopThread:D=>be.handleStop(D)}),d.jsxs("div",{className:"hidden md:flex items-center gap-1 sm:gap-1.5",children:[sa.isActive&&d.jsxs("span",{className:"ui-pill shrink-0",children:[d.jsx(Ig,{className:"h-3 w-3 text-green-500 animate-pulse"}),d.jsx("span",{className:"hidden sm:inline",children:"Sharing"})]}),Ti.isSupported&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs("button",{onClick:Ve?()=>{At.disconnect(),Nt(!1)}:my,className:`ui-pill shrink-0 cursor-pointer transition-colors ${Ve?"text-green-400 animate-pulse":Du?Ti.isListening?"text-green-400":"text-blue-400":"text-muted-foreground opacity-50"}`,children:[Ve?d.jsx(Jy,{className:"h-3 w-3 animate-pulse"}):Du?d.jsx(Jy,{className:`h-3 w-3 ${Ti.isListening?"animate-pulse":""}`}):d.jsx(Fk,{className:"h-3 w-3"}),d.jsx("span",{className:"hidden sm:inline text-xs",children:Ve?"Voice active":Ti.isListening?"Listening...":Du?"Hey Jait":"Wake word"})]})}),d.jsx(mn,{side:"bottom",children:Ve?"Voice assistant active — click to disconnect":Du?Ti.isListening?"Listening for your command...":'Say "Hey Jait" to start voice assistant — click to disable':'Click to enable always-on "Hey Jait" wake word'})]}),d.jsx(hXe,{usage:ju}),(()=>{const D=Pt==="codex"?"openai":Pt==="claude-code"?"anthropic":Zn??"ollama",ee=Pt==="codex"?lt??"Codex":Pt==="claude-code"?lt??"Claude Code":fo?ntt(fo):null,fe=Pt==="codex"?`OpenAI Codex CLI${lt?` · ${lt}`:""}`:Pt==="claude-code"?`Anthropic Claude Code CLI${lt?` · ${lt}`:""}`:fo??"";return ee?d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs("div",{className:"ui-pill cursor-default sm:mr-2",children:[d.jsx(V5,{provider:D,model:Pt==="codex"?"codex":Pt==="claude-code"?"claude-3":fo??void 0,size:16}),d.jsx("span",{className:"text-xs text-muted-foreground hidden sm:inline",children:ee})]})}),d.jsx(mn,{side:"bottom",children:fe})]}):null})(),ml!==null&&ml<=5&&d.jsxs("span",{className:"text-xs text-muted-foreground mr-1 sm:mr-2 hidden sm:inline",children:[ml," remaining"]})]}),(In==null?void 0:In.hasUpdate)&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{onClick:async()=>{if(Hi==="web")!Pi&&!Jo&&await hp();else if(Hi==="electron"){const D=window.jaitDesktop;ai.info("Downloading update...");const ee=await D.downloadUpdate();ee!=null&&ee.ok?(ai.success("Update downloaded. Restarting..."),await D.installUpdate()):ai.error("Download failed")}else window.open("https://github.com/Widev-e-U/Jait/releases/latest","_blank")},variant:"outline",size:"sm",disabled:Hi==="web"&&(Pi||Jo),className:"h-8 shrink-0 border-amber-500/30 bg-amber-500/10 px-2 text-amber-700 hover:bg-amber-500/15 hover:text-amber-800 dark:text-amber-300",children:[Hi==="web"&&(Pi||Jo)?d.jsx(Zt,{className:"h-3.5 w-3.5 animate-spin"}):d.jsx(IG,{className:"h-3.5 w-3.5"}),d.jsx("span",{className:"hidden sm:inline",children:Hi==="web"&&(Pi||Jo)?"Updating...":`v${In.latestVersion}`})]})}),d.jsx(mn,{side:"bottom",children:Hi==="web"&&(Pi||Jo)?"Updating and refreshing...":`Update available — v${In.latestVersion}`})]}),It?d.jsxs("div",{className:"flex items-center gap-0.5 shrink-0",children:[d.jsxs(uu,{children:[d.jsx(du,{asChild:!0,children:d.jsx(ke,{variant:"ghost",size:"sm",className:"h-9 w-9 p-0 shrink-0 rounded-lg",children:d.jsx(TC,{className:"h-4 w-4"})})}),d.jsxs(hc,{align:"end",children:[d.jsx(Fg,{children:"Navigate"}),d.jsxs(Fi,{onSelect:()=>c("chat"),children:[d.jsx(dm,{className:"h-4 w-4 mr-2"}),"Chat"]}),d.jsxs(Fi,{onSelect:()=>c("jobs"),children:[d.jsx(u_,{className:"h-4 w-4 mr-2"}),"Jobs"]}),d.jsxs(Fi,{onSelect:()=>c("network"),children:[d.jsx(m1,{className:"h-4 w-4 mr-2"}),"Network"]}),yt==="developer"&&d.jsxs(Fi,{onSelect:()=>V?Gd():jp(),children:[d.jsx(Ig,{className:"h-4 w-4 mr-2"}),V?"Hide Share":"Screen Share"]}),d.jsx(Ku,{}),d.jsxs(Fi,{onSelect:()=>c("settings"),children:[d.jsx(R3,{className:"h-4 w-4 mr-2"}),"Settings"]})]})]}),Wl?d.jsxs(uu,{children:[d.jsx(du,{asChild:!0,children:d.jsx("button",{className:"rounded-full ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",children:d.jsx(v8,{className:"h-8 w-8",children:d.jsx(x8,{className:"text-sm font-medium",children:YS})})})}),d.jsxs(hc,{align:"end",children:[d.jsx(Fg,{children:Oo==null?void 0:Oo.username}),d.jsx(Ku,{}),d.jsxs(Fi,{onSelect:()=>c("settings"),children:[d.jsx(R3,{className:"h-4 w-4 mr-2"}),"Settings"]}),d.jsx(Ku,{}),d.jsxs("div",{className:"px-2 py-1.5",children:[d.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"Theme"}),d.jsx("div",{className:"flex items-center h-7 w-fit rounded-full border bg-muted/50 p-0.5 mt-1.5",children:[["light",J$],["system",wa],["dark",K$]].map(([D,ee])=>d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx("button",{onClick:()=>{oy(D)},className:`relative flex items-center justify-center h-6 w-6 rounded-full transition-colors ${f===D?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"}`,children:d.jsx(ee,{className:"h-3.5 w-3.5"})})}),d.jsx(mn,{side:"bottom",children:D.charAt(0).toUpperCase()+D.slice(1)})]},D))})]}),d.jsx(Ku,{}),d.jsxs(Fi,{onSelect:dy,children:[d.jsx(G$,{className:"h-4 w-4 mr-2"}),"Logout"]})]})]}):d.jsx(ke,{variant:"ghost",size:"sm",className:"h-8 rounded-lg text-xs",onClick:()=>o(!0),children:"Sign in"})]}):d.jsxs(d.Fragment,{children:[d.jsx("div",{className:"md:hidden shrink-0",children:d.jsxs(uu,{children:[d.jsx(du,{asChild:!0,children:d.jsx(ke,{variant:"ghost",size:"sm",className:"h-9 w-9 p-0 shrink-0",children:d.jsx(TC,{className:"h-4 w-4"})})}),d.jsxs(hc,{align:"end",children:[d.jsx(Fg,{children:"Navigate"}),d.jsxs(Fi,{onSelect:()=>c("chat"),children:[d.jsx(dm,{className:"h-4 w-4 mr-2"}),"Chat"]}),d.jsxs(Fi,{onSelect:()=>c("jobs"),children:[d.jsx(u_,{className:"h-4 w-4 mr-2"}),"Jobs"]}),d.jsxs(Fi,{onSelect:()=>c("network"),children:[d.jsx(m1,{className:"h-4 w-4 mr-2"}),"Network"]}),yt==="developer"&&d.jsxs(Fi,{onSelect:()=>V?Gd():jp(),children:[d.jsx(Ig,{className:"h-4 w-4 mr-2"}),V?"Hide Share":"Screen Share"]}),d.jsx(Ku,{}),d.jsxs(Fi,{onSelect:()=>c("settings"),children:[d.jsx(R3,{className:"h-4 w-4 mr-2"}),"Settings"]})]})]})}),Wl?d.jsxs(uu,{children:[d.jsx(du,{asChild:!0,children:d.jsx("button",{className:"rounded-full ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",children:d.jsx(v8,{className:"h-7 w-7",children:d.jsx(x8,{className:"text-xs",children:YS})})})}),d.jsxs(hc,{align:"end",children:[d.jsx(Fg,{children:Oo==null?void 0:Oo.username}),d.jsx(Ku,{}),d.jsxs(Fi,{onSelect:()=>c("settings"),children:[d.jsx(R3,{className:"h-4 w-4 mr-2"}),"Settings"]}),d.jsx(Ku,{}),d.jsxs("div",{className:"px-2 py-1.5",children:[d.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"Theme"}),d.jsx("div",{className:"flex items-center h-7 w-fit rounded-full border bg-muted/50 p-0.5 mt-1.5",children:[["light",J$],["system",wa],["dark",K$]].map(([D,ee])=>d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx("button",{onClick:()=>{oy(D)},className:`relative flex items-center justify-center h-6 w-6 rounded-full transition-colors ${f===D?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"}`,children:d.jsx(ee,{className:"h-3.5 w-3.5"})})}),d.jsx(mn,{side:"bottom",children:D.charAt(0).toUpperCase()+D.slice(1)})]},D))})]}),d.jsx(Ku,{}),d.jsxs(Fi,{onSelect:dy,children:[d.jsx(G$,{className:"h-4 w-4 mr-2"}),"Logout"]})]})]}):d.jsx(ke,{variant:"ghost",size:"sm",className:"h-8 rounded-lg text-xs",onClick:()=>o(!0),children:"Sign in"})]}),Mi&&Li==="linux"&&d.jsxs("div",{className:"flex items-center ml-2 -mr-2",children:[d.jsx("button",{onClick:()=>window.jaitDesktop.windowMinimize(),className:"flex h-[35px] w-11 items-center justify-center hover:bg-muted/80 transition-colors",children:d.jsx(Hk,{className:"h-4 w-4"})}),d.jsx("button",{onClick:()=>window.jaitDesktop.windowMaximize(),className:"flex h-[35px] w-11 items-center justify-center hover:bg-muted/80 transition-colors",children:Sc?d.jsx("svg",{width:"10",height:"10",viewBox:"0 0 10 10",className:"fill-current",children:d.jsx("path",{d:"M2 0v2H0v8h8V8h2V0zm5 7H1V3h6zM9 1v6H8V2H3V1z"})}):d.jsx(I1,{className:"h-3 w-3"})}),d.jsx("button",{onClick:()=>window.jaitDesktop.windowClose(),className:"flex h-[35px] w-11 items-center justify-center hover:bg-red-600 hover:text-white transition-colors",children:d.jsx(ei,{className:"h-4 w-4"})})]})]})]}),u==="chat"&&d.jsxs("div",{className:`border-b bg-muted/30 px-2 sm:px-5 shrink-0 ${It?"hidden":"flex"} ${on?"min-h-[35px] flex-wrap items-start gap-2 py-1.5":"h-11 md:h-[35px] items-center gap-1 overflow-x-auto overflow-y-visible scrollbar-none"}`,children:[yt==="developer"&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:zn===null?"secondary":"ghost",size:"sm",className:It?"h-9 w-9 shrink-0 rounded-md p-0":"h-7 shrink-0 rounded-md px-2 text-xs",onClick:()=>{px()},"aria-label":"Personal chat",children:[d.jsx(dm,{className:`h-3 w-3${It?"":" mr-1"}`}),!It&&"Personal"]})}),d.jsx(mn,{side:"bottom",children:"Switch to personal chat"})]}),yt==="developer"&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:g?"secondary":"ghost",size:"sm",className:It?"h-9 w-9 shrink-0 rounded-md p-0":"h-7 shrink-0 rounded-md px-2 text-xs",onClick:()=>v(D=>!D),"aria-label":"Toggle workspaces sidebar",children:[g?d.jsx(cT,{className:`h-3 w-3${It?" rotate-90":" mr-1"}`}):d.jsx(uT,{className:`h-3 w-3${It?" rotate-90":" mr-1"}`}),!It&&"Workspaces"]})}),d.jsx(mn,{side:"bottom",children:"Toggle workspaces sidebar"})]}),yt==="developer"&&!It&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:b?"secondary":"ghost",size:"sm",className:"h-7 shrink-0 rounded-md px-2 text-xs",onClick:()=>{IS()},children:[d.jsx(qo,{className:"h-3 w-3 mr-1"}),"Terminal"]})}),d.jsx(mn,{side:"bottom",children:"Toggle terminal panel"})]}),yt==="developer"&&It&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:Af(Iu,"terminal")?"secondary":"ghost",size:"sm",className:"h-9 w-9 shrink-0 rounded-md p-0","aria-label":"Terminal",onClick:()=>{Vc("terminal")},children:d.jsx(qo,{className:"h-4 w-4"})})}),d.jsx(mn,{side:"bottom",children:"Terminal"})]}),zn&&(yt==="developer"||yt==="manager"&&be.selectedThread)&&d.jsxs(d.Fragment,{children:[d.jsx("div",{className:`flex items-center shrink-0 ${It?"gap-1":""}`,children:It?d.jsxs(d.Fragment,{children:[d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:Af(Iu,"files")?"secondary":"ghost",size:"sm",className:"h-9 w-9 rounded-md p-0","aria-label":"Files",onClick:()=>{Vc("files")},children:d.jsx(hu,{className:"h-4 w-4"})})}),d.jsx(mn,{side:"bottom",children:"Files"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:Af(Iu,"git")?"secondary":"ghost",size:"sm",className:"relative h-9 w-9 rounded-md p-0","aria-label":"Changes",onClick:()=>{Vc("git")},children:[d.jsx(Xg,{className:"h-4 w-4"}),ws.length>0&&d.jsx("span",{className:"absolute -right-1 -top-1 z-10 min-w-[14px] rounded-full bg-primary px-1 text-2xs font-bold leading-[14px] text-primary-foreground",children:ws.length>99?"99+":ws.length})]})}),d.jsx(mn,{side:"bottom",children:"Changes"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:Af(Iu,"editor")?"secondary":"ghost",size:"sm",className:"h-9 w-9 rounded-md p-0","aria-label":"Editor",onClick:()=>{Vc("editor")},children:d.jsx(Bk,{className:"h-4 w-4"})})}),d.jsx(mn,{side:"bottom",children:"Editor"})]})]}):d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:E?"secondary":"ghost",size:"sm",className:"h-7 rounded-md px-2 text-xs",onClick:()=>{Ep()},children:[d.jsx(Bk,{className:"h-3 w-3 mr-1"}),"Editor",E&&d.jsx(ei,{className:"h-3 w-3 ml-1"})]})}),d.jsx(mn,{side:"bottom",children:E?"Hide editor":"Show editor"})]})}),yt==="developer"&&E&&Z&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:Kd?"secondary":"ghost",size:"sm",className:It?"h-9 w-9 shrink-0 rounded-md p-0":"h-7 shrink-0 rounded-md px-2 text-xs","aria-label":Kd?"Close preview":"Open preview",onClick:()=>{var D;if(Kd)Tp();else{const ee=q.target??(I==null?void 0:I.trim())??((D=Xl==null?void 0:Xl.target)==null?void 0:D.trim())??null;if(Cc(ee,(Z==null?void 0:Z.workspaceRoot)??null))return;Io()}},children:[d.jsx(wi,{className:`h-3 w-3${It?"":" mr-1"}`}),!It&&"Preview",!It&&Kd&&d.jsx(ei,{className:"h-3 wer-3 ml-1"})]})}),d.jsx(mn,{side:"bottom",children:Kd?"Close preview":"Open dev preview"})]})]}),yt==="developer"&&E&&Z&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:Je?"secondary":"ghost",size:"sm",className:It?"h-9 w-9 shrink-0 rounded-md p-0":"h-7 shrink-0 rounded-md px-2 text-xs","aria-label":Je?"Close architecture":"Open architecture",onClick:()=>{var D;Je?((D=hs.current)==null||D.closeArchitectureTab(),Kt(null),We(!1)):(We(!0),co())},children:[d.jsx(jC,{className:`h-3 w-3${It?"":" mr-1"}`}),!It&&"Architecture",!It&&Je&&d.jsx(ei,{className:"h-3 w-3 ml-1"})]})}),d.jsx(mn,{side:"bottom",children:"Software architecture diagram"})]}),yt==="developer"&&E&&Z&&d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:Ce?"secondary":"ghost",size:"sm",className:"ml-auto h-6 w-6 shrink-0 p-0",onClick:()=>Xe(D=>!D),children:d.jsx(ige,{className:"h-3 w-3"})})}),d.jsx(mn,{side:"bottom",children:"SSE debug stream"})]}),yt==="manager"&&d.jsxs(d.Fragment,{children:[be.selectedThread?d.jsxs(ke,{variant:"ghost",size:"sm",className:"h-6 text-xs px-2 shrink-0",onClick:()=>{be.setSelectedThreadId(null),r("")},children:[d.jsx(Xme,{className:"h-3 w-3 mr-1"}),"Back"]}):d.jsxs(d.Fragment,{children:[d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:k?"secondary":"ghost",size:"sm",className:"h-6 text-xs px-2 shrink-0",onClick:()=>w(D=>!D),children:[k?d.jsx(cT,{className:`h-3 w-3 mr-1${It?" rotate-90":""}`}):d.jsx(uT,{className:`h-3 w-3 mr-1${It?" rotate-90":""}`}),"Repositories"]})}),d.jsx(mn,{side:"bottom",children:"Toggle repositories panel"})]}),be.selectedRepo&&be.selectedRepo.source==="local"&&d.jsxs(d.Fragment,{children:[d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:"ghost",size:"sm",className:"h-6 text-xs px-2 shrink-0",onClick:()=>j(be.selectedRepo),children:[d.jsx(qG,{className:"h-3 w-3 mr-1"}),"Strategy"]})}),d.jsx(mn,{side:"bottom",children:"Open repository strategy"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:"ghost",size:"sm",className:"h-6 text-xs px-2 shrink-0",onClick:()=>A(be.selectedRepo),children:[d.jsx(UG,{className:"h-3 w-3 mr-1"}),"Todos"]})}),d.jsx(mn,{side:"bottom",children:"Open todo plan"})]})]})]}),d.jsx("div",{className:"flex-1"}),be.selectedThread?d.jsxs("div",{className:It?"flex min-w-0 basis-full items-start gap-1.5":"flex min-w-0 items-center gap-2 shrink-0",children:[d.jsxs("div",{className:"flex min-w-0 flex-1 items-start gap-2",children:[d.jsx(FP,{status:be.selectedThread.status}),It?d.jsxs("div",{className:"min-w-0 flex-1",children:[x4(be.selectedThread.title)?d.jsx(Q7,{className:"text-xs h-3.5 w-28"}):d.jsx("span",{className:"block truncate text-2xs leading-tight text-muted-foreground sm:text-xs",children:be.selectedThread.title.replace(/^\[.*?\]\s*/,"")}),d.jsxs("div",{className:"mt-0.5 flex min-w-0 items-center gap-1.5 overflow-hidden text-2xs leading-tight text-muted-foreground",children:[be.selectedRepo&&d.jsxs("span",{className:"min-w-0 truncate",children:[be.selectedRepo.name," · ",be.selectedRepo.defaultBranch]}),d.jsx(e9,{kind:be.selectedThread.kind}),be.selectedThread.branch&&d.jsx("span",{className:"shrink min-w-0 truncate font-mono",children:be.selectedThread.branch})]})]}):d.jsxs("div",{className:"min-w-0 flex items-center gap-2",children:[x4(be.selectedThread.title)?d.jsx(Q7,{className:"text-xs h-3.5 w-28"}):d.jsx("span",{className:"max-w-[200px] truncate text-2xs text-muted-foreground sm:text-xs",children:be.selectedThread.title.replace(/^\[.*?\]\s*/,"")}),d.jsx(e9,{kind:be.selectedThread.kind}),be.selectedRepo&&d.jsxs("span",{className:"max-w-[160px] truncate text-2xs text-muted-foreground",children:[be.selectedRepo.name," · ",be.selectedRepo.defaultBranch]})]})]}),d.jsxs("div",{className:"flex shrink-0 items-center gap-0.5 sm:gap-1",children:[d.jsx(ort,{token:kt,threadId:be.selectedThread.id,selectedSkillIds:be.selectedThread.skillIds}),!It&&be.selectedThread.branch&&d.jsx(Kr,{variant:"outline",className:"text-2xs px-1 py-0 font-mono",children:be.selectedThread.branch}),zP(be.selectedThread)&&d.jsx(ke,{variant:"ghost",size:"icon",className:"h-[18px] w-[18px] sm:h-5 sm:w-5",onClick:()=>void be.handleStop(be.selectedThread.id),title:be.selectedThread.kind==="delegation"?"End helper thread":"Stop thread",children:d.jsx(I1,{className:"h-2.5 w-2.5"})}),be.showGitActions&&be.selectedRepo&&d.jsx("div",{className:It?"shrink-0":"ml-2 shrink-0",children:d.jsx(GM,{threadId:be.selectedThread.id,cwd:be.selectedThread.workingDirectory??be.selectedRepo.localPath,branch:be.selectedThread.branch,baseBranch:be.selectedRepo.defaultBranch,threadTitle:be.selectedThread.title,threadStatus:be.selectedThread.status,threadKind:be.selectedThread.kind,prUrl:be.selectedThread.prUrl,prState:be.selectedThread.id in be.threadPrStates?be.threadPrStates[be.selectedThread.id]:be.selectedThread.prState,ghAvailable:be.ghAvailable,showStatusBadge:!It})})]})]}):null]})]}),u==="jobs"?d.jsx("div",{className:`flex-1 overflow-y-auto ${It?"pt-12":""}`,children:d.jsx(Jtt,{})}):u==="network"?d.jsx("div",{className:`flex-1 overflow-y-auto ${It?"pt-12":""}`,children:d.jsx(Iht,{token:kt,sessionId:st??"default"})}):u==="settings"?d.jsx("div",{className:`flex-1 overflow-y-auto ${It?"pt-12":""}`,children:d.jsx(jst,{username:(Oo==null?void 0:Oo.username)??"",token:kt,apiKeys:_s.api_keys,onSaveApiKeys:mx,sttProvider:_s.stt_provider,onSttProviderChange:async D=>{await pl({stt_provider:D})},jaitBackend:_s.jait_backend??"openai",onJaitBackendChange:async D=>{await pl({jait_backend:D})},onClearArchive:US,onClearArchivedWorkspaces:VS,onFetchArchivedWorkspaces:Vl,onRestoreWorkspace:o6,activityEvents:wx,updateInfo:In,updateChecking:kd,onCheckUpdate:()=>{jc()},onApplyUpdate:()=>{hp()},updateApplying:Pi,platform:Hi})}):d.jsxs("div",{className:`flex flex-1 min-h-0 overflow-hidden ${It?"flex-col relative":""}`,children:[d.jsxs("div",{className:It?"contents":`relative flex min-h-0 ${U?"flex-1 min-w-0":"shrink-0"}`,children:[yt==="developer"&&g&&It&&d.jsx("div",{className:"fixed inset-0 z-20",onClick:()=>v(!1)}),yt==="developer"&&g&&d.jsx("aside",{className:`overflow-hidden ${It?"fixed bottom-16 left-4 right-4 z-30 max-h-[50vh] max-w-sm mx-auto rounded-xl border bg-background shadow-2xl":"w-64 border-r shrink-0"}`,children:d.jsx(ZYe,{workspaces:ps,personalSessions:Aa,activeWorkspaceId:zn,activeSessionId:st,loading:Nr,hasMoreWorkspaces:Yh,showFewerWorkspaces:ps.length>Qm,onSelectWorkspace:iy,onSelectPersonalSession:D=>Oa(null,D),onNewPersonalSession:()=>{uo(null)},onCreateWorkspace:lg,onRemoveWorkspace:D=>{mp(D)},onChangeDirectory:G0,onShowMore:Ui,onShowFewer:q0,sessionInfo:Gl,nodes:Nd})}),(yt==="developer"&&u==="chat"&&!It&&(ts||b)||yt==="manager"&&be.selectedThread&&ts)&&d.jsxs("div",{className:`relative flex min-h-0 flex-col ${!ts&&b||U?"flex-1 min-w-0":"shrink-0"}`,style:!ts&&b?{width:Le,maxWidth:"70vw"}:void 0,children:[!ts&&b&&d.jsx("div",{onMouseDown:LS,className:"absolute inset-y-0 right-0 w-1.5 cursor-col-resize hover:bg-primary/30 transition-colors z-10"}),(yt==="developer"||yt==="manager"&&be.selectedThread)&&ts&&d.jsx("div",{className:"flex min-h-0 flex-1",children:d.jsx(YF,{ref:hs,autoOpenRemotePath:(Z==null?void 0:Z.workspaceRoot)??null,surfaceId:(Z==null?void 0:Z.surfaceId)??null,files:dl,activeFileId:Ao,onActiveFileChange:As,onFileDrop:D=>{ox(D)},onReferenceFile:tx,onReferenceSelection:DS,onReferencePreviewElement:nx,onAvailableFilesChange:Td,showTree:re,showEditor:ce,onToggleTree:MS,onToggleEditor:ty,changedPaths:sy,fsWatcherVersion:kc,sourceControlRefreshSignal:vp,savedTabsState:Qv,stateReady:Sp,previewRequest:Y,onTabsStateChange:aa,onPreviewOpenChange:Di,previewSessionId:st,previewToken:kt,previewWorkspaceRoot:(Z==null?void 0:Z.workspaceRoot)??null,previewInitialTarget:I,architectureDiagram:Ie,architectureGenerating:Dt,architectureRequest:Ct,onArchitectureOpenChange:We,onArchitectureRenderResult:Q0,onGenerateArchitecture:()=>{Gt(!0),uy("Analyze the workspace architecture and generate a mermaid diagram using the architecture.generate tool. Include all major modules, their relationships, data flow, and external dependencies.")},onApplyDiff:BS,provider:Pt,cliModel:lt,onCollapsedChange:F,onMaxCollapsedChange:B,restoreRef:K})}),yt==="developer"&&b&&!It&&u==="chat"&&d.jsxs("div",{className:`flex min-h-0 flex-col bg-background ${Se?"absolute inset-0 z-20 border-r":`relative border-r border-t ${ts?"shrink-0":"flex-1"}`}`,style:Se||!ts?void 0:{height:Oe},children:[!Se&&d.jsx("div",{onMouseDown:PS,className:"absolute inset-x-0 top-0 h-1.5 cursor-row-resize hover:bg-primary/30 transition-colors z-10"}),d.jsxs("div",{className:"relative shrink-0",children:[d.jsx(aV,{terminals:Xd,activeTerminalId:Hn,onSelect:qs,onCreate:D=>$i(st??"default",Bo??void 0,D),onKill:ay,onDetach:ix,availableShells:ho}),d.jsxs("div",{className:"absolute right-0 top-0 bottom-0 flex items-center gap-1 pr-2 pl-3 bg-gradient-to-l from-background via-background to-transparent z-10",children:[ts&&d.jsx("button",{onClick:()=>{Se?(Qe(!1),ge(nt.current)):(nt.current=Oe,Qe(!0))},className:"p-1 rounded hover:bg-muted text-muted-foreground hover:text-foreground transition-colors","aria-label":Se?"Exit fullscreen":"Fullscreen terminal",children:Se?d.jsx(u9,{className:"h-4 w-4"}):d.jsx(c9,{className:"h-4 w-4"})}),d.jsx("button",{onClick:()=>{Hn&&ix(Hn)},className:"p-1 rounded hover:bg-muted text-muted-foreground hover:text-foreground transition-colors","aria-label":"Open terminal in new window",children:d.jsx(jm,{className:"h-4 w-4"})}),d.jsx("button",{onClick:Uc,className:"p-1 rounded hover:bg-muted text-muted-foreground hover:text-foreground transition-colors","aria-label":"Close terminal",children:d.jsx(ei,{className:"h-4 w-4"})})]})]}),Hn?d.jsx(o4,{ref:Gs,terminalId:Hn,className:"flex-1 min-h-0",token:kt,workspaceRoot:Bo??void 0,onReferenceSelection:rx}):d.jsx("div",{className:"flex items-center justify-center flex-1 text-sm text-muted-foreground",children:d.jsx("button",{onClick:()=>$i(st??"default",Bo??void 0),className:"hover:text-foreground transition-colors",children:"+ New Terminal"})})]})]})]}),vg&&d.jsxs("section",{className:"flex flex-1 min-h-0 flex-col overflow-hidden border-b bg-background pt-16",children:[d.jsxs("div",{className:"relative shrink-0 border-b",children:[d.jsx(aV,{terminals:Xd,activeTerminalId:Hn,onSelect:qs,onCreate:D=>$i(st??"default",Bo??void 0,D),onKill:ay,availableShells:ho}),d.jsx("button",{onClick:Uc,className:"absolute right-2 top-1/2 -translate-y-1/2 p-1 rounded hover:bg-muted text-muted-foreground hover:text-foreground transition-colors","aria-label":"Close terminal",children:d.jsx(ei,{className:"h-4 w-4"})})]}),Hn?d.jsx(o4,{ref:Gs,terminalId:Hn,className:"flex-1 min-h-0",token:kt,workspaceRoot:Bo??void 0,onReferenceSelection:rx}):d.jsx("div",{className:"flex items-center justify-center flex-1 text-sm text-muted-foreground",children:d.jsx("button",{onClick:()=>$i(st??"default",Bo??void 0),className:"hover:text-foreground transition-colors",children:"+ New Terminal"})})]}),(yt==="developer"||yt==="manager"&&be.selectedThread)&&xx&&d.jsx("section",{className:"flex-1 min-h-0 overflow-hidden border-b bg-background pt-16",children:d.jsx(YF,{ref:hs,autoOpenRemotePath:(Z==null?void 0:Z.workspaceRoot)??null,surfaceId:(Z==null?void 0:Z.surfaceId)??null,files:dl,activeFileId:Ao,onActiveFileChange:As,onFileDrop:D=>{ox(D)},onReferenceFile:tx,onReferenceSelection:DS,onReferencePreviewElement:nx,onAvailableFilesChange:Td,showTree:re,showEditor:ce,onToggleTree:MS,onToggleEditor:ty,treeTab:ue,onTreeTabChange:xe,changedPaths:sy,sourceControlRefreshSignal:vp,isMobile:!0,savedTabsState:Qv,stateReady:Sp,previewRequest:Y,onTabsStateChange:aa,onPreviewOpenChange:Di,previewSessionId:st,previewToken:kt,previewWorkspaceRoot:(Z==null?void 0:Z.workspaceRoot)??null,previewInitialTarget:I,architectureDiagram:Ie,architectureGenerating:Dt,architectureRequest:Ct,onArchitectureOpenChange:We,onArchitectureRenderResult:Q0,onGenerateArchitecture:()=>{Gt(!0),uy("Analyze the workspace architecture and generate a mermaid diagram using the architecture.generate tool. Include all major modules, their relationships, data flow, and external dependencies.")},onApplyDiff:BS,provider:Pt,cliModel:lt})}),!xx&&!vg&&(yt==="manager"?d.jsx("div",{className:"flex-1 min-w-0 flex flex-col min-h-0",children:be.selectedThread?d.jsxs(d.Fragment,{children:[d.jsxs(wT,{className:"min-h-0 flex-1 border-b",loading:be.loadingActivities,loadingLabel:"Loading activity",messageContents:$d.map(D=>D.content),children:[$d.length===0&&!be.loadingActivities&&d.jsx("div",{className:"text-center text-sm text-muted-foreground py-8",children:"No activity yet"}),$d.map((D,ee)=>{var fe,he;return d.jsx(bO,{messageId:D.id,messageIndex:ee,messageFromEnd:$d.length-1-ee,role:D.role,content:D.content,contextFlow:D.contextFlow,toolCalls:D.toolCalls,segments:D.segments,isStreaming:((fe=be.selectedThread)==null?void 0:fe.status)==="running"&&ee===$d.length-1,compact:!0,preferLlmUi:!1,provider:(he=be.selectedThread)==null?void 0:he.providerId,onOpenPath:sx,onOpenDiff:ly},D.id)})]},((Sx=be.selectedThread)==null?void 0:Sx.id)??"manager-empty"),d.jsx("div",{className:"shrink-0 py-3 px-4",children:d.jsxs("div",{className:"mx-auto max-w-3xl",children:[be.error&&d.jsxs("div",{className:"flex items-center gap-2.5 rounded-lg border border-red-500/40 bg-red-500/10 px-3.5 py-2.5 text-sm text-red-400 mb-2",children:[d.jsx(Wk,{className:"h-4 w-4 shrink-0"}),d.jsx("span",{className:"min-w-0 break-words",children:be.error})]}),xl.length>0&&be.selectedThread&&d.jsx(lH,{items:xl,onRemove:D=>cy(be.selectedThread.id,D),onEdit:(D,ee)=>zS(be.selectedThread.id,D,ee),onReorder:(D,ee,fe)=>FS(be.selectedThread.id,D,ee,fe),onSendToParallelThread:HS,className:"mb-2"}),d.jsx(zb,{ref:Hs,draftStateKey:`manager:${((vy=be.selectedThread)==null?void 0:vy.id)??"new-thread"}`,value:e,onChange:r,onSubmit:hg,onQueue:cx,onStop:()=>{be.selectedThread&&be.handleStop(be.selectedThread.id)},isLoading:((_g=be.selectedThread)==null?void 0:_g.status)==="running",disabled:be.creating,placeholder:(xy=be.selectedThread)!=null&&xy.providerSessionId||((kx=be.selectedThread)==null?void 0:kx.status)==="running"?"Send a follow-up message...":"Describe what you want to do...",onVoiceInput:ff,voiceRecording:Ql,voiceLevels:uf,voiceTranscribing:Lu,onVoiceStop:()=>{Jd()},responseStyle:jr,onResponseStyleChange:Rn,provider:Pt,onProviderChange:Dr,providerRuntimeMode:Wt,onProviderRuntimeModeChange:xi,cliModel:lt,onCliModelChange:Mu,repoRuntime:vi,onMoveToGateway:cf,availableFiles:lo,onSearchFiles:qc,workspaceOpen:E}),d.jsxs("div",{className:"flex items-center gap-2 px-1 mt-1.5",children:[vi&&d.jsx(b4,{runtime:vi}),be.selectedThread&&be.selectedThread.status!=="running"&&!be.selectedThread.providerSessionId&&d.jsx("span",{className:"text-xs text-muted-foreground truncate",children:"Thread finished — start a new one"})]})]})})]}):d.jsxs("div",{className:`flex flex-1 min-h-0 ${It?"flex-col":""}`,children:[k&&d.jsx("div",{className:`overflow-hidden ${It?"h-52 shrink-0 border-b":"w-56 shrink-0 border-r"}`,children:d.jsx(xyt,{repositories:be.repositories,selectedRepoId:((by=be.selectedRepo)==null?void 0:by.id)??null,isMobile:It,getRuntimeInfo:be.getRuntimeInfoForRepository,onSelect:be.setSelectedRepoId,onAddRepository:()=>be.setFolderPickerOpen(!0),onRemoveRepository:D=>{be.removeRepository(D)},onOpenStrategy:D=>j(D),onOpenPlan:D=>A(D)})}),d.jsxs("div",{className:`flex-1 flex flex-col min-w-0 overflow-y-auto ${It?"pt-12":""}`,children:[d.jsx("div",{className:"relative z-10 flex flex-col items-center px-3 pb-1.5 pt-3 sm:px-4 sm:pb-2 sm:pt-4",children:d.jsxs("div",{className:"w-full max-w-3xl",children:[d.jsx("h1",{className:"mb-3 text-center text-xl font-semibold tracking-tight sm:mb-4 sm:text-2xl",children:"What do you want to build?"}),be.error&&d.jsxs("div",{className:"flex items-center gap-2.5 rounded-lg border border-red-500/40 bg-red-500/10 px-3.5 py-2.5 text-sm text-red-400 mb-3",children:[d.jsx(Wk,{className:"h-4 w-4 shrink-0"}),d.jsx("span",{className:"min-w-0 break-words",children:be.error})]}),d.jsx(zb,{ref:Hs,draftStateKey:`manager:${((Cx=be.selectedRepo)==null?void 0:Cx.id)??"repo-draft"}`,value:e,onChange:r,onSubmit:hg,disabled:Lo,controlsDisabled:be.creating||Dd,placeholder:Qh,onVoiceInput:ff,voiceRecording:Ql,voiceLevels:uf,voiceTranscribing:Lu,onVoiceStop:()=>{Jd()},responseStyle:jr,onResponseStyleChange:Rn,provider:Pt,onProviderChange:Dr,providerRuntimeMode:Wt,onProviderRuntimeModeChange:xi,cliModel:lt,onCliModelChange:Mu,repoRuntime:oa,onMoveToGateway:cf}),d.jsx("div",{className:"overflow-x-auto px-1 pt-1",children:d.jsxs("div",{className:"flex min-w-max items-center gap-2 whitespace-nowrap",children:[d.jsx(c8,{repositories:be.repositories,selectedRepo:be.selectedRepo,disabled:be.creating,getRuntimeInfo:be.getRuntimeInfoForRepository,onSelect:be.setSelectedRepoId,onAddRepository:()=>be.setFolderPickerOpen(!0)}),oa&&d.jsx(b4,{runtime:oa})]})})]})}),d.jsx("div",{className:"flex-1 overflow-y-auto",children:d.jsxs("div",{className:"mx-auto w-full max-w-3xl",children:[d.jsxs("div",{className:"flex h-[35px] items-center justify-between border-b px-2.5 sm:px-3",children:[d.jsxs("div",{className:"flex items-center gap-3",children:[d.jsx("span",{className:"text-sm font-medium",children:"Threads"}),d.jsx(Kr,{variant:"secondary",className:"h-5 rounded-md px-1.5 text-2xs",children:Dc.length})]}),d.jsx(ke,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:()=>void be.refresh(),children:d.jsx(va,{className:`h-3.5 w-3.5 ${be.loading?"animate-spin":""}`})})]}),Dc.length===0?d.jsx("div",{className:"px-4 py-8 text-center text-sm text-muted-foreground sm:py-12",children:"No threads yet"}):d.jsxs("div",{className:"flex flex-col",children:[Dc.map(D=>{const ee=be.getRepositoryForThread(D),fe=(ee==null?void 0:ee.name)??i6(D)??"Unknown repo",he=ede(D,D.id in be.threadPrStates?be.threadPrStates[D.id]:void 0);return d.jsx(byt,{thread:D,repo:ee,repoName:fe,prState:he,ghAvailable:be.ghAvailable,onOpen:()=>be.setSelectedThreadId(D.id),onStop:()=>{be.handleStop(D.id)},onDelete:()=>be.handleDelete(D.id)},D.id)}),be.hasMoreThreads&&d.jsxs("button",{className:"inline-flex items-center justify-center gap-1.5 px-3 py-1.5 text-xs text-muted-foreground transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-70 sm:px-4 sm:py-2",disabled:be.loading,onClick:be.showMoreThreads,children:[be.loading?d.jsx(Zt,{className:"h-3 w-3 animate-spin"}):null,"Show more threads"]}),Dc.length>be.threadListLimit&&d.jsx("button",{className:"px-3 py-1.5 text-xs text-muted-foreground transition-colors hover:text-foreground sm:px-4 sm:py-2",onClick:be.showFewerThreads,children:"Show less"})]})]})})]})]})}):GS?d.jsx("div",{className:"flex flex-col min-h-0 min-w-0 overflow-hidden",style:{flex:U?"0 0 0px":"1 1 0%",width:U?0:void 0,minWidth:U?0:void 0,visibility:U?"hidden":void 0},children:!U&&d.jsx(wT,{className:"min-h-0 flex-1 border-b",compact:ts,loading:!0,loadingLabel:"Loading chat",messageContents:[],children:null},st??"developer-loading")}):KS?d.jsx("div",{className:"flex flex-col min-h-0 min-w-0 overflow-hidden",style:{flex:U?"0 0 0px":"1 1 0%",width:U?0:void 0,minWidth:U?0:void 0,visibility:U?"hidden":void 0},children:!U&&d.jsxs(d.Fragment,{children:[d.jsxs(wT,{className:"min-h-0 flex-1 border-b",compact:ts,loading:Mo,loadingLabel:"Loading chat",messageContents:Rs.map(D=>D.content),children:[Rs.map((D,ee)=>d.jsx(bO,{messageId:D.id,messageIndex:ee,messageFromEnd:Rs.length-1-ee,role:D.role,content:D.content,contextFlow:D.contextFlow,displayContent:D.displayContent,referencedFiles:D.referencedFiles,displaySegments:D.displaySegments,attachments:D.attachments,thinking:D.thinking,thinkingDuration:D.thinkingDuration,toolCalls:D.toolCalls,segments:D.segments,isStreaming:rs&&D===Rs[Rs.length-1],compact:E||V||Kd,preferLlmUi:!0,provider:Pt,onOpenTerminal:$S,onEditMessage:ux,editComposer:XS,onOpenPath:sx,onOpenDiff:ly},D.id)),yi.length>0&&d.jsx(lH,{items:yi,onRemove:Vs,onEdit:Rc,onReorder:yp})]},st??"developer-empty"),d.jsx("div",{className:`shrink-0 ${It?"px-2 pt-2 pb-16":`py-3 ${ts?"px-3":"px-4"}`}`,children:d.jsxs("div",{className:"mx-auto w-full max-w-3xl space-y-1.5",children:[Rd.length>0&&d.jsx(aXe,{items:Rd}),Ra&&Ra!=="login_required"&&Ra!=="limit_reached"&&!rs&&d.jsxs("div",{className:"flex items-center gap-2.5 rounded-lg border border-red-500/40 bg-red-500/10 px-3.5 py-2.5 text-sm text-red-400 dark:text-red-400 dark:border-red-400/40 dark:bg-red-400/10",children:[d.jsx(Wk,{className:"h-4 w-4 shrink-0"}),d.jsx("span",{className:"min-w-0 break-words",children:Ra})]}),Ac&&!rs&&d.jsxs("div",{className:"flex items-center justify-center gap-2 py-1.5",children:[d.jsxs("button",{onClick:()=>K0({token:kt,sessionId:st}),className:"inline-flex items-center gap-1.5 rounded-md border bg-background px-3 py-1.5 text-xs font-medium text-foreground shadow-sm hover:bg-accent transition-colors",children:[d.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:d.jsx("polygon",{points:"5 3 19 12 5 21 5 3"})}),"Continue"]}),d.jsx("span",{className:"text-xs text-muted-foreground",children:"Agent stopped — hit the tool execution limit"})]}),d.jsx(xXe,{compact:!0,sessionId:st,onApproveAllEnabled:()=>Xt(!0)}),Ma&&d.jsx(sXe,{plan:Ma,onApprove:tg,onReject:ra,isExecuting:rs}),vx&&d.jsx("p",{className:"text-center text-sm text-destructive",children:"Daily limit reached. Come back tomorrow."}),ws.length>0&&d.jsx(lXe,{files:ws,onAccept:Tu,onReject:Pd,onAcceptAll:Mc,onRejectAll:Jh,onFileClick:ly}),d.jsx(zb,{ref:Hs,draftStateKey:`developer:${st??"new-chat"}`,value:e,segments:n,onChange:r,onSubmit:hg,onStop:Cr,onQueue:dg,isLoading:rs,disabled:vx,placeholder:Id,onVoiceInput:ff,voiceRecording:Ql,voiceLevels:uf,voiceTranscribing:Lu,onVoiceStop:()=>{Jd()},mode:Ft,onModeChange:Xr,responseStyle:jr,onResponseStyleChange:Rn,sendTarget:vr,onSendTargetChange:yn,showSendTargetSelector:!1,provider:Pt,onProviderChange:Dr,providerRuntimeMode:Wt,onProviderRuntimeModeChange:xi,cliModel:lt,onCliModelChange:Mu,repoRuntime:vr==="thread"?oa:null,onMoveToGateway:vr==="thread"?cf:void 0,availableFiles:lo,onSearchFiles:qc,workspaceOpen:E,sessionInfo:Gl,workspaceNodeId:Z==null?void 0:Z.nodeId}),d.jsx("div",{className:`overflow-x-auto ${It?"px-0.5":"px-1"}`,children:d.jsxs("div",{className:`grid min-w-max grid-cols-[1fr_auto_1fr] items-center whitespace-nowrap ${It?"gap-2":"gap-3"}`,children:[d.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:[yt==="developer"&&vr==="thread"?bx:yt==="developer"?d.jsx(aH,{sessions:pp,activeSessionId:st,workspaceTitle:(fn==null?void 0:fn.title)??"Personal chat",onSelectSession:D=>{Oa(zn,D)},onNewSession:()=>{uo()},onOpenChange:cg,showTitle:!1,triggerLabel:"History"}):null,Rr&&d.jsxs(d.Fragment,{children:[d.jsx("span",{className:"text-xs text-green-600 dark:text-green-400 truncate",children:"Approved all commands for this session"}),d.jsx("button",{onClick:a6,className:"text-xs text-muted-foreground hover:text-foreground transition-colors shrink-0",children:"Clear approve all"})]})]}),d.jsx("div",{className:"justify-self-center",children:yt==="developer"&&d.jsx(J8,{target:vr,onChange:yn,disabled:rs})}),d.jsxs("div",{className:"flex shrink-0 items-center justify-self-end gap-2",children:[yt==="developer"&&vr!=="thread"&&d.jsx(d.Fragment,{children:d.jsx("button",{onClick:fx,className:"text-xs text-muted-foreground hover:text-foreground transition-colors shrink-0",children:"New chat"})}),yt==="manager"&&d.jsx("button",{onClick:()=>be.setSelectedThreadId(null),className:"text-xs text-muted-foreground hover:text-foreground transition-colors shrink-0",children:"New thread"}),ml!==null&&d.jsxs("span",{className:"text-xs text-muted-foreground shrink-0",children:[ml," remaining"]})]})]})})]})})]})}):d.jsxs("div",{className:`flex-1 min-w-0 flex flex-col items-center justify-center overflow-hidden ${U?"":"px-4"} ${It?"pt-12":""}`,style:{flex:U?"0 0 0px":void 0,width:U?0:void 0,minWidth:U?0:void 0,visibility:U?"hidden":void 0},children:[" ",d.jsxs("div",{className:"w-full max-w-3xl space-y-8",children:[d.jsxs("div",{className:"text-center",children:[d.jsx("h1",{className:"text-3xl font-semibold tracking-tight",children:"Jait"}),d.jsx("p",{className:"text-base text-muted-foreground mt-1",children:"Just Another Intelligent Tool"})]}),!Nr&&ps.length===0?d.jsxs("div",{className:"text-center space-y-3",children:[d.jsx("p",{className:"text-sm text-muted-foreground",children:"Add a workspace folder to start chatting with your code."}),d.jsxs(ke,{variant:"default",size:"lg",onClick:()=>{Hl("workspace"),Os(!0)},children:[d.jsx(hu,{className:"h-4 w-4 mr-2"}),"Add Workspace"]})]}):d.jsx(QYe,{suggestions:E&&Z?gyt:myt,onSelect:uy}),d.jsx(zb,{ref:Hs,draftStateKey:`developer:${st??"new-chat"}`,value:e,segments:n,onChange:r,onSubmit:hg,onStop:Cr,onQueue:dg,isLoading:rs,placeholder:Id,onVoiceInput:ff,voiceRecording:Ql,voiceLevels:uf,voiceTranscribing:Lu,onVoiceStop:()=>{Jd()},mode:Ft,onModeChange:Xr,responseStyle:jr,onResponseStyleChange:Rn,sendTarget:vr,onSendTargetChange:yn,showSendTargetSelector:!1,provider:Pt,onProviderChange:Dr,providerRuntimeMode:Wt,onProviderRuntimeModeChange:xi,cliModel:lt,onCliModelChange:Mu,repoRuntime:vr==="thread"?oa:null,onMoveToGateway:vr==="thread"?cf:void 0,availableFiles:lo,onSearchFiles:qc,workspaceOpen:E,sessionInfo:Gl,workspaceNodeId:Z==null?void 0:Z.nodeId}),yt==="developer"&&d.jsx("div",{className:"overflow-x-auto px-1",children:d.jsxs("div",{className:"grid min-w-max grid-cols-[1fr_auto_1fr] items-center gap-3 whitespace-nowrap",children:[d.jsx("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:vr==="thread"?bx:d.jsx(aH,{sessions:pp,activeSessionId:st,workspaceTitle:(fn==null?void 0:fn.title)??"Personal chat",onSelectSession:D=>{Oa(zn,D)},onNewSession:()=>{uo()},onOpenChange:cg,showTitle:!1,triggerLabel:"History"})}),d.jsx("div",{className:"justify-self-center",children:d.jsx(J8,{target:vr,onChange:yn,disabled:rs})}),d.jsx("div",{className:"flex shrink-0 items-center justify-self-end gap-2",children:vr!=="thread"&&d.jsx(d.Fragment,{children:d.jsx("button",{onClick:fx,className:"text-xs text-muted-foreground hover:text-foreground transition-colors shrink-0",children:"New chat"})})})]})})]})]}))]}),yt==="developer"&&Ce&&d.jsx("div",{className:"fixed top-14 right-0 bottom-0 w-[420px] border-l z-50 shadow-xl",children:d.jsx(kXe,{onClose:()=>Xe(!1)})}),It&&yt==="developer"&&u==="chat"&&d.jsxs(d.Fragment,{children:[!M&&d.jsx("button",{className:"fixed bottom-2 left-1/2 -translate-x-1/2 z-30 flex items-center justify-center h-6 w-12 rounded-full bg-background/60 backdrop-blur border shadow-md transition-all active:scale-95",onClick:()=>W(!0),"aria-label":"Show toolbar",children:d.jsx(T4,{className:"h-3.5 w-3.5 text-muted-foreground"})}),d.jsxs("div",{className:`fixed left-1/2 -translate-x-1/2 z-30 flex items-center gap-0.5 rounded-2xl border bg-background/70 backdrop-blur-lg shadow-lg px-1.5 py-1 transition-all duration-200 ${M?"bottom-3 opacity-100":"bottom-[-60px] opacity-0 pointer-events-none"}`,children:[d.jsx("button",{className:"absolute -top-3 left-1/2 -translate-x-1/2 flex items-center justify-center h-5 w-8 rounded-full bg-muted/60 backdrop-blur border border-border/40 shadow-sm",onClick:()=>W(!1),"aria-label":"Hide toolbar",children:d.jsx(el,{className:"h-3 w-3 text-muted-foreground"})}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:zn===null?"secondary":"ghost",size:"sm",className:"h-10 w-10 shrink-0 rounded-xl p-0",onClick:()=>{px()},"aria-label":"Personal chat",children:d.jsx(dm,{className:"h-5 w-5"})})}),d.jsx(mn,{side:"top",children:"Personal chat"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:g?"secondary":"ghost",size:"sm",className:"h-10 w-10 shrink-0 rounded-xl p-0",onClick:()=>v(D=>!D),"aria-label":"Workspaces",children:g?d.jsx(cT,{className:"h-5 w-5 rotate-90"}):d.jsx(uT,{className:"h-5 w-5 rotate-90"})})}),d.jsx(mn,{side:"top",children:"Workspaces"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:Af(Iu,"terminal")?"secondary":"ghost",size:"sm",className:"h-10 w-10 shrink-0 rounded-xl p-0",onClick:()=>{Vc("terminal")},"aria-label":"Terminal",children:d.jsx(qo,{className:"h-5 w-5"})})}),d.jsx(mn,{side:"top",children:"Terminal"})]}),zn&&d.jsxs(d.Fragment,{children:[d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:Af(Iu,"files")?"secondary":"ghost",size:"sm",className:"h-10 w-10 shrink-0 rounded-xl p-0",onClick:()=>{Vc("files")},"aria-label":"Files",children:d.jsx(hu,{className:"h-5 w-5"})})}),d.jsx(mn,{side:"top",children:"Files"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsxs(ke,{variant:Af(Iu,"git")?"secondary":"ghost",size:"sm",className:"relative h-10 w-10 shrink-0 rounded-xl p-0",onClick:()=>{Vc("git")},"aria-label":"Changes",children:[d.jsx(Xg,{className:"h-5 w-5"}),ws.length>0&&d.jsx("span",{className:"absolute -right-1 -top-1 z-10 min-w-[14px] rounded-full bg-primary px-1 text-2xs font-bold leading-[14px] text-primary-foreground",children:ws.length>99?"99+":ws.length})]})}),d.jsx(mn,{side:"top",children:"Changes"})]}),d.jsxs(bn,{children:[d.jsx(_n,{asChild:!0,children:d.jsx(ke,{variant:Af(Iu,"editor")?"secondary":"ghost",size:"sm",className:"h-10 w-10 shrink-0 rounded-xl p-0",onClick:()=>{Vc("editor")},"aria-label":"Editor",children:d.jsx(Bk,{className:"h-5 w-5"})})}),d.jsx(mn,{side:"top",children:"Editor"})]})]})]})]})]}),Pp&&Mi&&d.jsx("div",{className:"fixed top-0 left-0 right-0 h-10 z-[60]",style:{WebkitAppRegion:"drag"}}),Pp&&d.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-[hsl(220,17%,10%)]",children:d.jsx("div",{className:"w-full max-w-md border bg-background p-6 shadow-sm rounded-lg",children:jd==="url"?d.jsxs(d.Fragment,{children:[d.jsxs("div",{className:"flex flex-col space-y-1.5 text-center sm:text-left",children:[d.jsxs("h2",{className:"text-lg font-semibold leading-none tracking-tight flex items-center gap-2",children:[d.jsx(to,{className:"h-5 w-5"}),"Connect to Gateway"]}),d.jsx("p",{className:"text-sm text-muted-foreground",children:"Enter your Jait gateway URL to get started."})]}),d.jsxs("form",{onSubmit:WS,className:"space-y-4 pt-2",children:[d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"gateway-url",children:"Gateway URL"}),d.jsx($n,{id:"gateway-url",placeholder:"https://jait.example.com",value:ll,onChange:D=>{_d(D.target.value),Ci(null)},autoFocus:!0})]}),Fs&&d.jsxs("div",{className:"flex items-center gap-2 text-sm text-destructive",children:[d.jsx(Th,{className:"h-4 w-4 shrink-0"}),Fs]}),d.jsx(ke,{type:"submit",className:"w-full",disabled:ds,children:ds?d.jsxs(d.Fragment,{children:[d.jsx(Zt,{className:"h-4 w-4 mr-2 animate-spin"}),"Connecting…"]}):"Connect"})]})]}):d.jsxs(d.Fragment,{children:[d.jsxs("div",{className:"flex flex-col space-y-1.5 text-center sm:text-left",children:[d.jsx("h2",{className:"text-lg font-semibold leading-none tracking-tight",children:Ue===!1?"Welcome to Jait":"Account"}),d.jsx("div",{className:"text-sm text-muted-foreground",children:bu?d.jsxs("div",{className:"flex items-center gap-1.5 flex-wrap",children:[d.jsx(to,{className:"h-3 w-3 text-green-500"}),d.jsx("code",{className:"text-xs bg-muted px-1.5 py-0.5 rounded",children:Xi}),d.jsx("button",{type:"button",className:"text-xs text-primary underline underline-offset-2 hover:opacity-80",onClick:()=>Eo("url"),children:"Change"})]}):Ue===!1?d.jsx("p",{children:"Create your account to get started."}):d.jsx("p",{children:"Sign in with a username and password."})})]}),d.jsxs(z1,{value:tr,onValueChange:D=>qt(D),children:[d.jsxs(a0,{className:"grid grid-cols-2 w-full",children:[d.jsx(Go,{value:"login",children:"Login"}),d.jsx(Go,{value:"register",children:"Register"})]}),d.jsx(Ko,{value:"login",className:"pt-4",children:d.jsxs("form",{className:"space-y-4",onSubmit:dx,children:[d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"login-username",children:"Username"}),d.jsx($n,{id:"login-username",value:Lr,onChange:D=>cs(D.target.value),autoComplete:"username",required:!0})]}),d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"login-password",children:"Password"}),d.jsxs("div",{className:"group/pw relative",children:[d.jsx($n,{id:"login-password",type:Ur?"text":"password",value:Ea,onChange:D=>ve(D.target.value),autoComplete:"current-password",required:!0,className:"pr-10"}),d.jsx(ke,{type:"button",variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-full px-3 hover:bg-transparent opacity-0 group-focus-within/pw:opacity-100 transition-opacity",onClick:()=>Hr(!Ur),tabIndex:-1,children:Ur?d.jsx(ph,{className:"h-4 w-4 text-muted-foreground"}):d.jsx(Mf,{className:"h-4 w-4 text-muted-foreground"})})]})]}),d.jsx(ke,{type:"submit",className:"w-full",disabled:rr,children:rr?"Signing in…":"Login"})]})}),d.jsx(Ko,{value:"register",className:"pt-4",children:d.jsxs("form",{className:"space-y-4",onSubmit:hx,children:[d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"register-username",children:"Username"}),d.jsx($n,{id:"register-username",value:le,onChange:D=>$e(D.target.value),autoComplete:"username",required:!0})]}),d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"register-password",children:"Password"}),d.jsxs("div",{className:"group/pw relative",children:[d.jsx($n,{id:"register-password",type:ur?"text":"password",value:ut,onChange:D=>tt(D.target.value),autoComplete:"new-password",required:!0,className:"pr-10"}),d.jsx(ke,{type:"button",variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-full px-3 hover:bg-transparent opacity-0 group-focus-within/pw:opacity-100 transition-opacity",onClick:()=>Zr(!ur),tabIndex:-1,children:ur?d.jsx(ph,{className:"h-4 w-4 text-muted-foreground"}):d.jsx(Mf,{className:"h-4 w-4 text-muted-foreground"})})]})]}),d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"register-password-confirm",children:"Confirm password"}),d.jsxs("div",{className:"group/pw relative",children:[d.jsx($n,{id:"register-password-confirm",type:Jr?"text":"password",value:Yt,onChange:D=>jt(D.target.value),autoComplete:"new-password",required:!0,className:"pr-10"}),d.jsx(ke,{type:"button",variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-full px-3 hover:bg-transparent opacity-0 group-focus-within/pw:opacity-100 transition-opacity",onClick:()=>ri(!Jr),tabIndex:-1,children:Jr?d.jsx(ph,{className:"h-4 w-4 text-muted-foreground"}):d.jsx(Mf,{className:"h-4 w-4 text-muted-foreground"})})]})]}),d.jsx(ke,{type:"submit",className:"w-full",disabled:rr,children:rr?"Creating account…":Ue===!1?"Get Started":"Create account"})]})})]}),a&&d.jsx("p",{className:"text-sm text-destructive",children:a})]})})}),d.jsx(tp,{open:s&&!Pp,onOpenChange:D=>{o(D)},children:d.jsx($h,{className:"sm:max-w-md",children:jd==="url"?d.jsxs(d.Fragment,{children:[d.jsxs(Nh,{children:[d.jsxs(Eh,{className:"flex items-center gap-2",children:[d.jsx(to,{className:"h-5 w-5"}),"Connect to Gateway"]}),d.jsx(s0,{children:"Enter your Jait gateway URL to get started."})]}),d.jsxs("form",{onSubmit:WS,className:"space-y-4 pt-2",children:[d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"gateway-url",children:"Gateway URL"}),d.jsx($n,{id:"gateway-url",placeholder:"https://jait.example.com",value:ll,onChange:D=>{_d(D.target.value),Ci(null)},autoFocus:!0})]}),Fs&&d.jsxs("div",{className:"flex items-center gap-2 text-sm text-destructive",children:[d.jsx(Th,{className:"h-4 w-4 shrink-0"}),Fs]}),d.jsx(ke,{type:"submit",className:"w-full",disabled:ds,children:ds?d.jsxs(d.Fragment,{children:[d.jsx(Zt,{className:"h-4 w-4 mr-2 animate-spin"}),"Connecting…"]}):"Connect"})]})]}):d.jsxs(d.Fragment,{children:[d.jsxs(Nh,{children:[d.jsx(Eh,{children:Ue===!1?"Welcome to Jait":"Account"}),d.jsx(s0,{asChild:!0,children:bu?d.jsxs("div",{className:"flex items-center gap-1.5 flex-wrap",children:[d.jsx(to,{className:"h-3 w-3 text-green-500"}),d.jsx("code",{className:"text-xs bg-muted px-1.5 py-0.5 rounded",children:Xi}),d.jsx("button",{type:"button",className:"text-xs text-primary underline underline-offset-2 hover:opacity-80",onClick:()=>Eo("url"),children:"Change"})]}):Ue===!1?d.jsx("p",{children:"Create your account to get started."}):d.jsx("p",{children:"Sign in with a username and password."})})]}),d.jsxs(z1,{value:tr,onValueChange:D=>qt(D),children:[d.jsxs(a0,{className:"grid grid-cols-2 w-full",children:[d.jsx(Go,{value:"login",children:"Login"}),d.jsx(Go,{value:"register",children:"Register"})]}),d.jsx(Ko,{value:"login",className:"pt-4",children:d.jsxs("form",{className:"space-y-4",onSubmit:dx,children:[d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"login-username",children:"Username"}),d.jsx($n,{id:"login-username",value:Lr,onChange:D=>cs(D.target.value),autoComplete:"username",required:!0})]}),d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"login-password",children:"Password"}),d.jsxs("div",{className:"group/pw relative",children:[d.jsx($n,{id:"login-password",type:Ur?"text":"password",value:Ea,onChange:D=>ve(D.target.value),autoComplete:"current-password",required:!0,className:"pr-10"}),d.jsx(ke,{type:"button",variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-full px-3 hover:bg-transparent opacity-0 group-focus-within/pw:opacity-100 transition-opacity",onClick:()=>Hr(!Ur),tabIndex:-1,children:Ur?d.jsx(ph,{className:"h-4 w-4 text-muted-foreground"}):d.jsx(Mf,{className:"h-4 w-4 text-muted-foreground"})})]})]}),d.jsx(ke,{type:"submit",className:"w-full",disabled:rr,children:rr?"Signing in…":"Login"})]})}),d.jsx(Ko,{value:"register",className:"pt-4",children:d.jsxs("form",{className:"space-y-4",onSubmit:hx,children:[d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"register-username",children:"Username"}),d.jsx($n,{id:"register-username",value:le,onChange:D=>$e(D.target.value),autoComplete:"username",required:!0})]}),d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"register-password",children:"Password"}),d.jsxs("div",{className:"group/pw relative",children:[d.jsx($n,{id:"register-password",type:ur?"text":"password",value:ut,onChange:D=>tt(D.target.value),autoComplete:"new-password",required:!0,className:"pr-10"}),d.jsx(ke,{type:"button",variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-full px-3 hover:bg-transparent opacity-0 group-focus-within/pw:opacity-100 transition-opacity",onClick:()=>Zr(!ur),tabIndex:-1,children:ur?d.jsx(ph,{className:"h-4 w-4 text-muted-foreground"}):d.jsx(Mf,{className:"h-4 w-4 text-muted-foreground"})})]})]}),d.jsxs("div",{className:"space-y-1.5",children:[d.jsx(pi,{htmlFor:"register-password-confirm",children:"Confirm password"}),d.jsxs("div",{className:"group/pw relative",children:[d.jsx($n,{id:"register-password-confirm",type:Jr?"text":"password",value:Yt,onChange:D=>jt(D.target.value),autoComplete:"new-password",required:!0,className:"pr-10"}),d.jsx(ke,{type:"button",variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-full px-3 hover:bg-transparent opacity-0 group-focus-within/pw:opacity-100 transition-opacity",onClick:()=>ri(!Jr),tabIndex:-1,children:Jr?d.jsx(ph,{className:"h-4 w-4 text-muted-foreground"}):d.jsx(Mf,{className:"h-4 w-4 text-muted-foreground"})})]})]}),d.jsx(ke,{type:"submit",className:"w-full",disabled:rr,children:rr?"Creating account…":Ue===!1?"Get Started":"Create account"})]})})]}),a&&d.jsx("p",{className:"text-sm text-destructive",children:a})]})})}),d.jsx(dV,{open:Et,onOpenChange:D=>{Os(D),D||Wh(null)},initialPath:_s.workspace_picker_path,initialNodeId:_s.workspace_picker_node_id,onSelect:(D,ee)=>{Np(D,ee).catch(fe=>{console.error("Failed to select workspace:",fe),ai.error(`Failed to select workspace: ${fe instanceof Error?fe.message:"Unknown error"}`)})}}),d.jsx(dV,{open:be.folderPickerOpen,onOpenChange:be.setFolderPickerOpen,onSelect:(D,ee)=>{be.handleFolderSelected(D,ee)}}),d.jsx(lyt,{token:kt,sessionId:st}),C&&d.jsx(art,{open:!!C,onOpenChange:D=>{D||j(null)},repoId:C.id,repoName:C.name}),T&&d.jsx(urt,{open:!!T,onOpenChange:D=>{D||A(null)},repoId:T.id,repoName:T.name,defaultBranch:T.defaultBranch,repoLocalPath:T.localPath,provider:Pt,model:lt,onStartThread:(D,ee,fe)=>{(async()=>{const he=T,me=`jait/${Math.random().toString(16).slice(2,10)}`;let Ae;try{Ae=(await no.createWorktree(he.localPath,he.defaultBranch,me)).path}catch{try{await no.createBranch(he.localPath,me,he.defaultBranch)}catch{}}const mt=await qr.createThread({title:`[${he.name}] ${D.title}`,providerId:Pt,runtimeMode:Pt!=="jait"?Wt:void 0,kind:"delivery",workingDirectory:Ae??he.localPath,branch:me});await qr.startThread(mt.id,{message:D.description||D.title,titleTask:D.title,titlePrefix:`[${he.name}] `});const bt=ee.tasks.map(zt=>zt.id===D.id?{...zt,status:"running",threadId:mt.id}:zt);await qr.updatePlan(ee.id,{tasks:bt})})()}}),V&&d.jsxs("div",{className:"fixed z-50 bg-background border rounded-lg shadow-2xl overflow-hidden flex flex-col",style:{left:ft.x<0?void 0:ft.x,top:ft.y<0?void 0:ft.y,right:ft.x<0?16:void 0,bottom:ft.y<0?16:void 0,width:Bt.w,height:Bt.h},children:[d.jsxs("div",{className:"flex items-center justify-between h-8 px-3 border-b bg-muted/30 shrink-0 cursor-move select-none",onPointerDown:Gv,style:{touchAction:"none"},children:[d.jsxs("span",{className:"text-xs font-medium flex items-center gap-1.5",children:[d.jsx(Ig,{className:"h-3 w-3"})," Screen Share"]}),d.jsx(ke,{variant:"ghost",size:"sm",className:"h-5 w-5 p-0",onPointerDown:D=>D.stopPropagation(),onClick:Gd,children:d.jsx(ei,{className:"h-3 w-3"})})]}),d.jsx(Fht,{screenShare:sa}),d.jsx("div",{className:"absolute bottom-0 right-0 w-3 h-3 cursor-nwse-resize opacity-50 hover:opacity-100",onPointerDown:up,style:{touchAction:"none"},children:d.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",className:"text-muted-foreground",children:d.jsx("path",{d:"M10 2L2 10M10 6L6 10M10 10L10 10",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})})})]})]})})}function Syt(){const[e,r]=St.useState(()=>document.documentElement.classList.contains("dark")?"dark":"light");St.useEffect(()=>{const i=document.documentElement,s=()=>r(i.classList.contains("dark")?"dark":"light");s();const o=new MutationObserver(s);return o.observe(i,{attributes:!0,attributeFilter:["class"]}),()=>o.disconnect()},[]);const n=!!window.jaitDesktop&&navigator.userAgent.includes("Windows");return d.jsx(Bhe,{position:"top-right",theme:e,closeButton:!0,gap:8,visibleToasts:4,offset:n?44:void 0})}hhe.createRoot(document.getElementById("root")).render(d.jsx(St.StrictMode,{children:d.jsx(Iye,{children:d.jsxs(Dye,{children:[d.jsx(wyt,{}),d.jsx(Syt,{})]})})}));export{Uyt as $,FMe as A,Pyt as B,y_ as C,Oh as D,ERe as E,YMe as F,gM as G,DQ as H,Sa as I,bBe as J,cHe as K,pIe as L,KDe as M,kz as N,Sz as O,Wyt as P,Iyt as Q,Fyt as R,zyt as S,$yt as T,Fr as U,GR as V,Hyt as W,Dyt as X,Wy as Y,Vyt as Z,X as _,WMe as a,Ire as a$,Byt as a0,dMe as a1,v2 as a2,Ryt as a3,Lj as a4,eHe as a5,EMe as a6,qQ as a7,ZB as a8,JDe as a9,d1t as aA,a1t as aB,mr as aC,l1t as aD,jUe as aE,_Ue as aF,bUe as aG,kee as aH,VDe as aI,jWe as aJ,TQ as aK,YDe as aL,Oyt as aM,T0 as aN,mS as aO,kWe as aP,SWe as aQ,qDe as aR,AW as aS,ZFe as aT,Bre as aU,Aj as aV,Pj as aW,N5 as aX,Gst as aY,Fre as aZ,yd as a_,SA as aa,lHe as ab,DMe as ac,oS as ad,sr as ae,kr as af,KQ as ag,ZWe as ah,Zie as ai,u1t as aj,wBe as ak,ja as al,sp as am,lb as an,yM as ao,Gre as ap,jv as aq,Zre as ar,cr as as,XFe as at,Hze as au,WFe as av,aM as aw,SF as ax,UUe as ay,c1t as az,HMe as b,TFe as b0,FR as b1,am as b2,w2 as b3,pz as b4,o$e as b5,fr as b6,Jre as b7,Dl as b8,QLe as b9,Pze as bA,cM as bB,Oze as bC,Dze as bD,kv as bE,Um as bF,zz as bG,uM as bH,Pre as bI,eO as bJ,JFe as bK,Mj as bL,$0 as bM,Cyt as bN,Ke as bO,zR as ba,cee as bb,dS as bc,hee as bd,Lyt as be,nz as bf,rz as bg,PEe as bh,YFe as bi,HFe as bj,Eze as bk,lM as bl,SFe as bm,QFe as bn,C5 as bo,PFe as bp,XUe as bq,fS as br,T5 as bs,NFe as bt,Rre as bu,Rze as bv,Mze as bw,Cv as bx,Pg as by,Vz as bz,Xn as c,Ar as d,GQ as e,io as f,VMe as g,Zf as h,gd as i,CBe as j,lS as k,xt as l,Yre as m,aS as n,Myt as o,f1t as p,qMe as q,h1t as r,UMe as s,GMe as t,ed as u,_Be as v,hHe as w,gUe as x,qyt as y,Z1 as z};