@recombine-ai/bosun 0.8.0 → 0.8.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/bosun.js +8 -8
- package/build/client/_app/immutable/assets/{0.CeYdzR0K.css → 0.DkT7Ji57.css} +1 -1
- package/build/client/_app/immutable/assets/0.DkT7Ji57.css.br +0 -0
- package/build/client/_app/immutable/assets/{0.CeYdzR0K.css.gz → 0.DkT7Ji57.css.gz} +0 -0
- package/build/client/_app/immutable/assets/{Input.D_a_Hn-e.css → Input.CJ8KyccG.css} +1 -1
- package/build/client/_app/immutable/assets/Input.CJ8KyccG.css.br +0 -0
- package/build/client/_app/immutable/assets/Input.CJ8KyccG.css.gz +0 -0
- package/build/client/_app/immutable/chunks/{B5pH84aF.js → 2QZUjt52.js} +1 -1
- package/build/client/_app/immutable/chunks/2QZUjt52.js.br +0 -0
- package/build/client/_app/immutable/chunks/2QZUjt52.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{CxPv-oiS.js → BU7aeYn4.js} +1 -1
- package/build/client/_app/immutable/chunks/BU7aeYn4.js.br +0 -0
- package/build/client/_app/immutable/chunks/BU7aeYn4.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{BALCah_8.js → Bb9ZigkD.js} +2 -2
- package/build/client/_app/immutable/chunks/Bb9ZigkD.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bb9ZigkD.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{De71gW9B.js → BiBGf8wR.js} +1 -1
- package/build/client/_app/immutable/chunks/BiBGf8wR.js.br +0 -0
- package/build/client/_app/immutable/chunks/BiBGf8wR.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{DGK-Y22B.js → C8-d_pGN.js} +8 -5
- package/build/client/_app/immutable/chunks/C8-d_pGN.js.br +0 -0
- package/build/client/_app/immutable/chunks/C8-d_pGN.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{BfU3a6pG.js → CYF48L9_.js} +1 -1
- package/build/client/_app/immutable/chunks/CYF48L9_.js.br +0 -0
- package/build/client/_app/immutable/chunks/CYF48L9_.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CnRh8Bgk.js +33 -0
- package/build/client/_app/immutable/chunks/CnRh8Bgk.js.br +0 -0
- package/build/client/_app/immutable/chunks/CnRh8Bgk.js.gz +0 -0
- package/build/client/_app/immutable/chunks/aFZ7RY4i.js +5 -0
- package/build/client/_app/immutable/chunks/aFZ7RY4i.js.br +0 -0
- package/build/client/_app/immutable/chunks/aFZ7RY4i.js.gz +0 -0
- package/build/client/_app/immutable/entry/{app.z0HZlVW2.js → app.CBFo0y_h.js} +2 -2
- package/build/client/_app/immutable/entry/app.CBFo0y_h.js.br +0 -0
- package/build/client/_app/immutable/entry/app.CBFo0y_h.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.B7Oj0YZC.js +1 -0
- package/build/client/_app/immutable/entry/start.B7Oj0YZC.js.br +2 -0
- package/build/client/_app/immutable/entry/start.B7Oj0YZC.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{0.K529fk47.js → 0.BS46Erbu.js} +1 -1
- package/build/client/_app/immutable/nodes/0.BS46Erbu.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.BS46Erbu.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{1.Do0rKYuZ.js → 1.BkQc4vam.js} +1 -1
- package/build/client/_app/immutable/nodes/1.BkQc4vam.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.BkQc4vam.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{10.IAMYOUml.js → 10.CNlp77FZ.js} +3 -3
- package/build/client/_app/immutable/nodes/10.CNlp77FZ.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.CNlp77FZ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{17.DeKTr1ON.js → 17.C7bkiGOl.js} +2 -1
- package/build/client/_app/immutable/nodes/17.C7bkiGOl.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.C7bkiGOl.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{18.CCXr28ln.js → 18.CjBHM2ng.js} +2 -2
- package/build/client/_app/immutable/nodes/18.CjBHM2ng.js.br +0 -0
- package/build/client/_app/immutable/nodes/18.CjBHM2ng.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.CAYQyVDJ.js +35 -0
- package/build/client/_app/immutable/nodes/2.CAYQyVDJ.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.CAYQyVDJ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{3.CFCUpmUO.js → 3.CoWzFM8T.js} +1 -1
- package/build/client/_app/immutable/nodes/3.CoWzFM8T.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.CoWzFM8T.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{4.BYbOpI2z.js → 4.BC-cU8Pp.js} +1 -1
- package/build/client/_app/immutable/nodes/4.BC-cU8Pp.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.BC-cU8Pp.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{5.DPO0SD9J.js → 5.BqUmLlVD.js} +1 -1
- package/build/client/_app/immutable/nodes/5.BqUmLlVD.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.BqUmLlVD.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{6.BJVVMbLC.js → 6.D4x8Wh9M.js} +1 -1
- package/build/client/_app/immutable/nodes/6.D4x8Wh9M.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.D4x8Wh9M.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{8.BAyrbFTp.js → 8.CaESldgZ.js} +1 -1
- package/build/client/_app/immutable/nodes/8.CaESldgZ.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.CaESldgZ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.BwiEOYkX.js +2 -0
- package/build/client/_app/immutable/nodes/9.BwiEOYkX.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.BwiEOYkX.js.gz +0 -0
- package/build/client/_app/version.json +1 -1
- package/build/client/_app/version.json.br +0 -0
- package/build/client/_app/version.json.gz +0 -0
- package/build/server/chunks/{0-BAKgi60O.js → 0-6QwqOuSN.js} +3 -3
- package/build/server/chunks/{0-BAKgi60O.js.map → 0-6QwqOuSN.js.map} +1 -1
- package/build/server/chunks/{1-jYHJB-tb.js → 1-BqEYCSqb.js} +2 -2
- package/build/server/chunks/{1-jYHJB-tb.js.map → 1-BqEYCSqb.js.map} +1 -1
- package/build/server/chunks/{10-YF1bugMU.js → 10-BWSo2Lz2.js} +4 -4
- package/build/server/chunks/{10-YF1bugMU.js.map → 10-BWSo2Lz2.js.map} +1 -1
- package/build/server/chunks/{17-D9vMxjRh.js → 17-C5jRC6rL.js} +3 -3
- package/build/server/chunks/{17-D9vMxjRh.js.map → 17-C5jRC6rL.js.map} +1 -1
- package/build/server/chunks/{18-BLN7cTaf.js → 18-BzERVoaR.js} +3 -3
- package/build/server/chunks/{18-BLN7cTaf.js.map → 18-BzERVoaR.js.map} +1 -1
- package/build/server/chunks/{2-B4P_qP3q.js → 2-DTdewCMV.js} +3 -3
- package/build/server/chunks/{2-B4P_qP3q.js.map → 2-DTdewCMV.js.map} +1 -1
- package/build/server/chunks/{3-njAy3GOi.js → 3-Xnzo0PPo.js} +4 -4
- package/build/server/chunks/{3-njAy3GOi.js.map → 3-Xnzo0PPo.js.map} +1 -1
- package/build/server/chunks/{4-DPlYm_DX.js → 4-BKFeDeOj.js} +2 -2
- package/build/server/chunks/{4-DPlYm_DX.js.map → 4-BKFeDeOj.js.map} +1 -1
- package/build/server/chunks/{5-BcfdXwaX.js → 5-QQH3C-Ro.js} +3 -3
- package/build/server/chunks/{5-BcfdXwaX.js.map → 5-QQH3C-Ro.js.map} +1 -1
- package/build/server/chunks/{6-DtBEsI4e.js → 6-CYC178cM.js} +3 -3
- package/build/server/chunks/{6-DtBEsI4e.js.map → 6-CYC178cM.js.map} +1 -1
- package/build/server/chunks/{8-DVq9JSHT.js → 8-msXmgb8C.js} +2 -2
- package/build/server/chunks/{8-DVq9JSHT.js.map → 8-msXmgb8C.js.map} +1 -1
- package/build/server/chunks/{9-BMEiMRkj.js → 9-COYHphb5.js} +4 -4
- package/build/server/chunks/{9-BMEiMRkj.js.map → 9-COYHphb5.js.map} +1 -1
- package/build/server/chunks/{AgentSidebar-BYk5FBc0.js → AgentSidebar-DqMxRWln.js} +2 -2
- package/build/server/chunks/{AgentSidebar-BYk5FBc0.js.map → AgentSidebar-DqMxRWln.js.map} +1 -1
- package/build/server/chunks/{Button-CMHzABlu.js → Button-qfXYs6Cv.js} +5 -2
- package/build/server/chunks/Button-qfXYs6Cv.js.map +1 -0
- package/build/server/chunks/{ChatStepTrace-BWp_rIDm.js → ChatStepTrace-Bvxmgz7y.js} +12 -4
- package/build/server/chunks/ChatStepTrace-Bvxmgz7y.js.map +1 -0
- package/build/server/chunks/{ContextEditor-DwSmZH0Y.js → ContextEditor-CsiHhmH8.js} +30 -2
- package/build/server/chunks/ContextEditor-CsiHhmH8.js.map +1 -0
- package/build/server/chunks/{Icon-DdOrLZIU.js → Icon-SOvOgynh.js} +5 -1
- package/build/server/chunks/Icon-SOvOgynh.js.map +1 -0
- package/build/server/chunks/{_layout.svelte-BxARmfhE.js → _layout.svelte-CqwbWo_W.js} +15 -5
- package/build/server/chunks/_layout.svelte-CqwbWo_W.js.map +1 -0
- package/build/server/chunks/{_layout.svelte-BnR072vW.js → _layout.svelte-DuOlsMHY.js} +4 -4
- package/build/server/chunks/{_layout.svelte-BnR072vW.js.map → _layout.svelte-DuOlsMHY.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-DKRvXTam.js → _page.svelte-B8NFVmqA.js} +3 -3
- package/build/server/chunks/{_page.svelte-DKRvXTam.js.map → _page.svelte-B8NFVmqA.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-CoCvoIxm.js → _page.svelte-Ch8DnIjK.js} +5 -5
- package/build/server/chunks/_page.svelte-Ch8DnIjK.js.map +1 -0
- package/build/server/chunks/{_page.svelte-CYLWOoKK.js → _page.svelte-DASkT6Tk.js} +4 -3
- package/build/server/chunks/_page.svelte-DASkT6Tk.js.map +1 -0
- package/build/server/chunks/{_page.svelte-DYCzxw9U.js → _page.svelte-Tl1k8pGd.js} +3 -3
- package/build/server/chunks/{_page.svelte-DYCzxw9U.js.map → _page.svelte-Tl1k8pGd.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-BzEHuU3o.js → _page.svelte-VFizsKQC.js} +2 -2
- package/build/server/chunks/{_page.svelte-BzEHuU3o.js.map → _page.svelte-VFizsKQC.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-Bqd9YZKg.js → _page.svelte-c2LBV2K4.js} +39 -10
- package/build/server/chunks/_page.svelte-c2LBV2K4.js.map +1 -0
- package/build/server/chunks/{_server.ts-B-GidZqI.js → _server.ts-C8SkG6z-.js} +8 -3
- package/build/server/chunks/_server.ts-C8SkG6z-.js.map +1 -0
- package/build/server/index.js +1 -1
- package/build/server/index.js.map +1 -1
- package/build/server/manifest.js +14 -14
- package/build/server/manifest.js.map +1 -1
- package/package.json +16 -3
- package/src/backend/roleplay/agents.ts +18 -0
- package/src/backend/roleplay/old-server.ts +3 -0
- package/src/backend/tests/academy.ts +2 -2
- package/src/backend/traces/latency-recordings.ts +2 -4
- package/build/client/_app/immutable/assets/0.CeYdzR0K.css.br +0 -0
- package/build/client/_app/immutable/assets/Input.D_a_Hn-e.css.br +0 -0
- package/build/client/_app/immutable/assets/Input.D_a_Hn-e.css.gz +0 -0
- package/build/client/_app/immutable/chunks/B5pH84aF.js.br +0 -0
- package/build/client/_app/immutable/chunks/B5pH84aF.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BALCah_8.js.br +0 -0
- package/build/client/_app/immutable/chunks/BALCah_8.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BfU3a6pG.js.br +0 -0
- package/build/client/_app/immutable/chunks/BfU3a6pG.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CMCi0U-6.js +0 -5
- package/build/client/_app/immutable/chunks/CMCi0U-6.js.br +0 -0
- package/build/client/_app/immutable/chunks/CMCi0U-6.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CxPv-oiS.js.br +0 -0
- package/build/client/_app/immutable/chunks/CxPv-oiS.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DGK-Y22B.js.br +0 -0
- package/build/client/_app/immutable/chunks/DGK-Y22B.js.gz +0 -0
- package/build/client/_app/immutable/chunks/De71gW9B.js.br +0 -0
- package/build/client/_app/immutable/chunks/De71gW9B.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dh5nRfGH.js +0 -33
- package/build/client/_app/immutable/chunks/Dh5nRfGH.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dh5nRfGH.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.z0HZlVW2.js.br +0 -0
- package/build/client/_app/immutable/entry/app.z0HZlVW2.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.BI2d1Cy8.js +0 -1
- package/build/client/_app/immutable/entry/start.BI2d1Cy8.js.br +0 -2
- package/build/client/_app/immutable/entry/start.BI2d1Cy8.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.K529fk47.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.K529fk47.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.Do0rKYuZ.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.Do0rKYuZ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/10.IAMYOUml.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.IAMYOUml.js.gz +0 -0
- package/build/client/_app/immutable/nodes/17.DeKTr1ON.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.DeKTr1ON.js.gz +0 -0
- package/build/client/_app/immutable/nodes/18.CCXr28ln.js.br +0 -0
- package/build/client/_app/immutable/nodes/18.CCXr28ln.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.B6rYWR87.js +0 -35
- package/build/client/_app/immutable/nodes/2.B6rYWR87.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.B6rYWR87.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.CFCUpmUO.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.CFCUpmUO.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.BYbOpI2z.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.BYbOpI2z.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.DPO0SD9J.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.DPO0SD9J.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.BJVVMbLC.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.BJVVMbLC.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.BAyrbFTp.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.BAyrbFTp.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.BUcdtwTB.js +0 -2
- package/build/client/_app/immutable/nodes/9.BUcdtwTB.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.BUcdtwTB.js.gz +0 -0
- package/build/server/chunks/Button-CMHzABlu.js.map +0 -1
- package/build/server/chunks/ChatStepTrace-BWp_rIDm.js.map +0 -1
- package/build/server/chunks/ContextEditor-DwSmZH0Y.js.map +0 -1
- package/build/server/chunks/Icon-DdOrLZIU.js.map +0 -1
- package/build/server/chunks/_layout.svelte-BxARmfhE.js.map +0 -1
- package/build/server/chunks/_page.svelte-Bqd9YZKg.js.map +0 -1
- package/build/server/chunks/_page.svelte-CYLWOoKK.js.map +0 -1
- package/build/server/chunks/_page.svelte-CoCvoIxm.js.map +0 -1
- package/build/server/chunks/_server.ts-B-GidZqI.js.map +0 -1
- /package/build/client/_app/immutable/chunks/{CU1-H3C1.js → DT74mAuZ.js} +0 -0
- /package/build/client/_app/immutable/chunks/{CU1-H3C1.js.br → DT74mAuZ.js.br} +0 -0
- /package/build/client/_app/immutable/chunks/{CU1-H3C1.js.gz → DT74mAuZ.js.gz} +0 -0
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import"../chunks/CWj6FrbW.js";import{p as it,f as A,d as T,a as xe,r as w,s as R,h as e,u as S,t as ce,b as x,l as i,i as q,c as lt,e as St,k as Ee,n as Ve,g as he,j as xt,C as mt,q as ze}from"../chunks/BRMnbBOX.js";import{i as $}from"../chunks/BFchB-2I.js";import{B as de}from"../chunks/DGK-Y22B.js";import{D as wt,c as re,i as bt,a as vt,b as Re,d as Tt}from"../chunks/DJH8-Pxb.js";import{s as Ce,o as kt,a as Mt}from"../chunks/CB3MYTwM.js";import{e as Ge,i as ht}from"../chunks/D_iTaAhh.js";import{s as ot,c as Pt}from"../chunks/DMtzEpj5.js";import{p as be}from"../chunks/DCT4VKzQ.js";import{I as st}from"../chunks/BALCah_8.js";import{t as Ke}from"../chunks/BEJ5fU19.js";import{P as yt,g as At}from"../chunks/Bk5z628g.js";import{c as Nt,s as Rt}from"../chunks/3HVf2z3Q.js";import{b as It}from"../chunks/CmatTLDp.js";import{C as Et,b as Dt,a as Ft}from"../chunks/CMCi0U-6.js";import{I as _t}from"../chunks/CU1-H3C1.js";import{l as at,c as Ut}from"../chunks/C3cmQ-ZQ.js";var Ot=A('<span class="min-w-0 flex-1 truncate text-left"> </span> <!>',1),Vt=A('<div class="truncate p-1 text-base font-semibold text-rc-green-200"> </div>'),zt=A('<div class="truncate p-1 text-base font-semibold text-rc-gray-100"> </div>'),Ht=A('<div class="flex items-start gap-2"><div class="min-w-0"><div class="truncate p-1 text-sm text-rc-gray-300 group-hover:text-rc-gray-200"> </div> <!></div></div>'),Lt=A('<div class="mt-1 max-h-96 w-max min-w-full max-w-[min(26rem,90vw)] overflow-y-auto overflow-x-hidden rounded-lg border border-rc-gray-110 bg-rc-gray-930 backdrop-blur-2xl" role="listbox"></div>'),qt=A("<div><!> <!></div>");function $t(s,r){it(r,!0);let n=be(r,"class",3,""),o=q(!1),f=q(null);const l=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function v(){i(o,!e(o))}function M(_){r.onSelectState(_),i(o,!1)}function g(_){const U=_.userMessage;return U==null?"No message":(typeof U=="string"?U:String(U)).trim()||"No message"}function d(_,U=50,I="…"){if(!_)return"";if(_.length<=U)return _;const h=_.slice(0,U+1),D=Math.max(h.lastIndexOf(" "),h.lastIndexOf(" "),h.lastIndexOf(" "),h.lastIndexOf(`
|
|
2
|
-
`),h.lastIndexOf("\r"));return(D>0?h.slice(0,D):_.slice(0,U)).trimEnd()+I}function N(_){_.key==="ArrowDown"&&!e(o)?(i(o,!0),_.preventDefault()):_.key==="ArrowUp"&&e(o)&&(i(o,!1),_.preventDefault())}function se(_){const U=_.getDate(),I=l[_.getMonth()];let h=_.getHours();const D=h>=12?"PM":"AM";h=h%12,h===0&&(h=12);const ne=String(_.getMinutes()).padStart(2,"0"),ye=new Date,ie=_.getFullYear(),_e=ie!==ye.getFullYear()?` ${ie}`:"";return`${U} ${I}${_e}, ${h}:${ne} ${D}`}function V(_){const U=new Date(_.id);if(!Number.isNaN(U.getTime()))return se(U);const I=new Date(_.name);return Number.isNaN(I.getTime())?_.name||"History":se(I)}let j=S(()=>r.agentStates.find(_=>_.id===r.currentState)??null),Y=S(()=>e(j)?V(e(j)):"History");var fe=qt(),G=T(fe);de(G,{variant:"ghost",get"aria-expanded"(){return e(o)},"aria-haspopup":"listbox","aria-controls":"history-dropdown",onclick:v,onkeydown:N,class:"inline-flex w-40 items-center rounded-lg border border-transparent !bg-rc-gray-700 !px-3 !pb-1 !pt-[5px] text-rc-gray-200 hover:border hover:border-rc-gray-500 focus:outline-none focus:ring-0",get el(){return e(f)},set el(_){i(f,_,!0)},children:(_,U)=>{var I=Ot(),h=xe(I),D=T(h,!0);w(h);var ne=R(h,2);{let ye=S(()=>"size-7 shrink-0 text-rc-gray-500 transition-transform duration-200 "+(e(o)?"rotate-180":""));st(ne,{name:"chevron-down",get class(){return e(ye)}})}ce(()=>Ce(D,e(Y))),x(_,I)},$$slots:{default:!0}});var ge=R(G,2);wt(ge,{id:"history-dropdown",get open(){return e(o)},onClose:()=>i(o,!1),get anchorEl(){return e(f)},placement:"bottom-start",offset:[0,1],children:U=>{var I=Lt();Ge(I,21,()=>r.agentStates.slice().reverse(),ht,(h,D)=>{{let ne=S(()=>e(D).id===r.currentState);de(h,{variant:"ghost",size:"small",role:"option",get"aria-selected"(){return e(ne)},onclick:()=>M(e(D).id),class:"group w-full rounded-none border-b border-rc-gray-110 py-2 pr-3 text-left backdrop-blur-2xl last:border-b-0 hover:bg-rc-gray-700 focus:bg-rc-gray-400",children:(ye,ie)=>{var _e=Ht(),De=T(_e),Te=T(De),Fe=T(Te,!0);w(Te);var He=R(Te,2);{var Be=J=>{var ae=Vt(),ke=T(ae,!0);w(ae),ce(Ue=>Ce(ke,Ue),[()=>d(g(e(D)))]),x(J,ae)},Pe=J=>{var ae=zt(),ke=T(ae,!0);w(ae),ce(Ue=>Ce(ke,Ue),[()=>d(g(e(D)))]),x(J,ae)};$(He,J=>{e(D).id===r.currentState?J(Be):J(Pe,!1)})}w(De),w(_e),ce(J=>Ce(Fe,J),[()=>V(e(D))]),x(ye,_e)},$$slots:{default:!0}})}}),w(I),x(U,I)},$$slots:{default:!0}}),w(fe),ce(()=>ot(fe,1,`relative ${n()}`)),x(s,fe),lt()}var Bt=A('<dialog class="dialog m-auto bg-transparent p-0 text-rc-gray-100 shadow-md svelte-jby388"><!> <!></dialog>');function jt(s,r){it(r,!0);let n,o=be(r,"showCloseButton",3,!1),f=be(r,"onClose",3,()=>{}),l=be(r,"onOpen",3,()=>{}),v=be(r,"isOpen",3,!1);Ee(()=>{v()?(console.log("show"),n==null||n.showModal(),l()()):n!=null&&n.open&&(console.log("close"),n.close())});function M(){f()()}kt(()=>(n.addEventListener("close",M),()=>{n.removeEventListener("close",M)}));function g(j){j.target===n&&n.close()}var d=Bt();d.__mousedown=g;var N=T(d);Mt(N,()=>r.children);var se=R(N,2);{var V=j=>{de(j,{variant:"ghost",onclick:()=>n.close(),class:"absolute right-2 top-2",children:(Y,fe)=>{Ve();var G=he("✕");x(Y,G)},$$slots:{default:!0}})};$(se,j=>{o()&&j(V)})}w(d),It(d,j=>n=j,()=>n),x(s,d),lt()}St(["mousedown"]);function Jt(s){if(!Array.isArray(s))return[];const r=[];for(const n of s){if(!n||typeof n!="object")continue;const o=n.text,f=n.lastSeen,l=n.uses;if(typeof o!="string"||typeof f!="number"||!Number.isFinite(f)||typeof l!="number"||!Number.isFinite(l))continue;const v=o.trim();v&&r.push({text:v,lastSeen:f,uses:l})}return r.sort((n,o)=>o.lastSeen-n.lastSeen),r}function Wt(s,r,n=2e3){var M;const o=r.trim();if(!o)return s;const f=(((M=s[0])==null?void 0:M.lastSeen)??0)+1,l=s.findIndex(g=>g.text===o);let v;if(l!==-1){const g=s[l];v=[{text:g.text,lastSeen:f,uses:(g.uses??0)+1},...s.slice(0,l),...s.slice(l+1)]}else v=[{text:o,lastSeen:f,uses:1},...s];return v.length>n?v.slice(0,n):v}function Gt(s,r,n=2e3){var M,g;if(!r.length)return s;if(!s.length)return r;const o=((M=s[0])==null?void 0:M.lastSeen)??0,l=(((g=r[0])==null?void 0:g.lastSeen)??0)>o?r:r.map((d,N)=>({...d,lastSeen:o+(r.length-N)})),v=new Map;for(const d of s)v.set(d.text,d);for(const d of l){const N=v.get(d.text);if(!N){v.set(d.text,d);continue}v.set(d.text,{text:d.text,lastSeen:Math.max(N.lastSeen,d.lastSeen),uses:N.uses+d.uses})}return Array.from(v.values()).sort((d,N)=>N.lastSeen-d.lastSeen).slice(0,n)}function Kt(s,r,n=5){if(!r.length)return[];const f=s.trim().toLowerCase(),l=pt(s,!1).text,v=/\s$/u.test(s);if(!pt(s,!0).text)return[];const M=[];for(const g of r){const d=pt(g.text);if(!d.text||g.text.trim().toLowerCase()===f)continue;const N=Xt(d,g.text,l,v);N&&M.push({item:g,match:N})}return M.sort((g,d)=>g.match.kindRank!==d.match.kindRank?g.match.kindRank-d.match.kindRank:g.match.span!==d.match.span?g.match.span-d.match.span:g.match.start!==d.match.start?g.match.start-d.match.start:g.item.lastSeen!==d.item.lastSeen?d.item.lastSeen-g.item.lastSeen:g.item.uses!==d.item.uses?d.item.uses-g.item.uses:g.item.text.length-d.item.text.length),M.slice(0,n).map(g=>({text:g.item.text,prefixEndIndex:g.match.prefixEndIndex,segments:nr(g.item.text,g.match.ranges)}))}function pt(s,r=!0){const n=[],o=[];for(let f=0;f<s.length;f++){const l=Yt(s[f]);if(l===" "){if(!n.length)continue;const v=n.length-1;if(n[v]===" "){o[v][1]=f+1;continue}}n.push(l),o.push([f,f+1])}return r&&n[n.length-1]===" "&&(n.pop(),o.pop()),{text:n.join(""),ranges:o}}function Yt(s){if(/\s/u.test(s))return" ";try{return/[\p{P}\p{S}]/u.test(s)?" ":s.toLowerCase()}catch{return/[^a-z0-9\s]/i.test(s)?" ":s.toLowerCase()}}function Xt(s,r,n,o){if(!s.text)return null;if(s.text.startsWith(n)){const l=rr(r,n,o)??r.length,v=Math.max(0,Math.min(r.length,l));return{kindRank:0,start:0,span:n.length,ranges:[[0,v]],prefixEndIndex:v}}const f=s.text.indexOf(n);return f!==-1?{kindRank:er(s.text,f,n.length),start:f,span:n.length,ranges:tr(s,f,f+n.length),prefixEndIndex:r.length}:null}function Zt(s,r){return r<=0?!0:s[r-1]===" "}function Qt(s,r){return r>=s.length?!0:s[r]===" "}function er(s,r,n){const o=Zt(s,r),f=Qt(s,r+n);return o&&f?1:o?2:3}function tr(s,r,n){const o=Math.max(0,Math.min(s.ranges.length,r)),f=Math.max(o,Math.min(s.ranges.length,n));return Ct(s.ranges.slice(o,f))}function rr(s,r,n){if(!r)return null;let o="",f=!0;for(let l=0;l<s.length;l++){const v=s[l];let M;if(/\s/u.test(v))M=" ";else try{M=/[\p{P}\p{S}]/u.test(v)?" ":v.toLowerCase()}catch{M=/[^a-z0-9\s]/i.test(v)?" ":v.toLowerCase()}if(M===" "){if(f)continue;o+=" ",f=!0}else o+=M,f=!1;if(o.length===r.length){if(o!==r)return null;let g=l+1;if(n&&r.endsWith(" ")){let d=g;for(;d<s.length;){const N=s[d];if(/\s/u.test(N)){d+=1;continue}try{if(/[\p{P}\p{S}]/u.test(N)){d+=1;continue}}catch{if(/[^a-z0-9\s]/i.test(N)){d+=1;continue}}break}g=d}return g}if(o.length>r.length)return null}return null}function nr(s,r){const n=Ct(r);if(!n.length)return[{text:s,matched:!1}];const o=[];let f=0;for(const[l,v]of n)l>f&&o.push({text:s.slice(f,l),matched:!1}),o.push({text:s.slice(l,v),matched:!0}),f=v;return f<s.length&&o.push({text:s.slice(f),matched:!1}),o.filter(l=>l.text.length>0)}function Ct(s){if(!s.length)return[];const r=s.map(([o,f])=>[Math.max(0,o),Math.max(0,f)]).filter(([o,f])=>f>o).sort((o,f)=>o[0]-f[0]||o[1]-f[1]);if(!r.length)return[];const n=[[r[0][0],r[0][1]]];for(let o=1;o<r.length;o++){const[f,l]=r[o],v=n[n.length-1];if(f<=v[1]){v[1]=Math.max(v[1],l);continue}n.push([f,l])}return n}var ar=A('<form><h2 class="text-l mb-4 text-gray-300">Image URL</h2> <!> <!></form>'),or=A('<div class="my-2 flex w-full justify-center"><div class="rounded-full border border-rc-gray-650 bg-rc-gray-800/40 px-3 py-1 text-xs text-rc-gray-200"> </div></div>'),sr=A('<div class="rounded-lg border border-rc-green-450 bg-transparent px-3 py-2 text-sm text-rc-gray-300">Generating 9 more variants…</div>'),ir=A('<div class="rounded-lg border border-red-500/70 bg-red-950/20 px-3 py-2 text-sm text-red-200"> </div>'),lr=(s,r,n)=>{var o;return(o=r.onChooseVariant)==null?void 0:o.call(r,e(n).id)},ur=A('<button type="button"><div class="whitespace-pre-line break-words"> </div></button>'),cr=A('<div class="ml-7 mt-2 flex flex-col gap-2"><!> <!> <!></div>'),dr=A('<!> <div class="log-element"><div><!></div> <!></div>',1),fr=(s,r)=>{var n;return(n=r.onRegenerateVariants)==null?void 0:n.call(r)},gr=(s,r)=>{var n;return(n=r.onCancelVariants)==null?void 0:n.call(r)},mr=A('<div class="absolute bottom-2 left-2 right-2 z-10 flex items-center gap-3 rounded-lg border border-rc-green-450 bg-rc-gray-930/90 px-3 py-3 font-semibold text-rc-gray-100 shadow-inner-white-soft backdrop-blur-3xl"><span>Choose a variant above to continue</span> <button type="button" class="rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-300 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-100 focus:outline-none focus-visible:outline-none disabled:cursor-wait disabled:opacity-50">Regenerate</button> <button type="button" class="rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-300 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-100 focus:outline-none focus-visible:outline-none">Cancel</button></div>'),vr=(s,r,n)=>{s.preventDefault(),r(e(n))},pr=A("<span> </span>"),hr=A('<button type="button" role="option" tabindex="-1"></button>'),xr=A('<div class="absolute bottom-full left-0 right-0 mb-1 max-h-60 overflow-y-auto rounded-lg border border-rc-gray-110 bg-rc-gray-930 shadow-inner-white-soft backdrop-blur-2xl" role="listbox"></div>'),br=A('<div class="pointer-events-none absolute inset-0 z-10 overflow-hidden rounded-lg" aria-hidden="true"><div class="whitespace-pre text-rc-gray-400/70"><span class="invisible"> </span><span> </span></div></div>'),yr=A('<form class="absolute bottom-2 left-2 right-2 z-10 flex gap-2 rounded"><div class="relative flex-1"><!> <!> <!></div> <!> <!></form>'),_r=A('<div class="rc-scroll min-h-0 flex-1 overflow-y-auto pr-1"></div> <!>',1),Sr=A("<!> <!>",1);function wr(s,r){it(r,!0);let n=be(r,"analyzeDisabled",3,!1),o=be(r,"variantSourceTrace",3,null),f=be(r,"variantChoices",19,()=>[]),l=be(r,"variantLoading",3,!1),v=be(r,"variantApplyingId",3,null),M=be(r,"variantError",3,null),g=xt(new Set),d=q(""),N=q(""),se=q(""),V,j=q(!1),Y=q(null),fe=q(""),G=q(!1),ge=q(xt([])),_=q(null),U=q(!1),I=q(!1),h=q(null);const D=S(()=>Kt(e(d),e(ge))),ne=S(()=>e(h)==null?null:e(D)[e(h)]??null),ye=S(()=>e(ne)?e(ne).text.slice(e(ne).prefixEndIndex):""),ie=S(()=>!o()&&!e(se)&&e(d).trim().length===0);Ee(()=>{if(typeof window>"u")return;if(!e(Y)){i(fe,"");return}const t=window.getComputedStyle(e(Y)),u=`calc(${t.paddingTop} + ${t.borderTopWidth})`,m=`calc(${t.paddingRight} + ${t.borderRightWidth})`,p=`calc(${t.paddingBottom} + ${t.borderBottomWidth})`,H=`calc(${t.paddingLeft} + ${t.borderLeftWidth})`;i(fe,[`padding:${u} ${m} ${p} ${H}`,`font:${t.font}`,`letter-spacing:${t.letterSpacing}`,`line-height:${t.lineHeight}`,`text-indent:${t.textIndent}`,`text-transform:${t.textTransform}`,`text-align:${t.textAlign}`,`box-sizing:${t.boxSizing}`].join(";"),!0)}),Ee(()=>{e(h)!=null&&e(h)>=e(D).length&&i(h,null)});const _e=S(()=>o()||!e(U)||e(I)?!1:e(D).length>0);function De(t){i(d,t.text,!0),i(h,null),i(I,!0)}function Te(){i(U,!0),i(I,!1)}function Fe(){i(U,!1),i(h,null),i(I,!1)}function He(){i(h,null),i(I,!1)}function Be(t){if(t.key==="Escape"){e(_e)&&t.preventDefault(),i(I,!0),i(h,null);return}if(t.key==="ArrowUp"||t.key==="ArrowDown"){if(!e(D).length)return;e(I)&&i(I,!1),t.preventDefault();const u=e(D).length-1;if(e(h)===null)i(h,t.key==="ArrowUp"?u:0,!0);else{const m=t.key==="ArrowUp"?-1:1;i(h,Math.max(0,Math.min(u,e(h)+m)),!0)}return}if(t.key==="Enter"||t.key==="Tab"&&!t.shiftKey){if(e(h)===null)return;const u=e(D)[e(h)];if(!u)return;t.preventDefault(),De(u);return}}let Pe=null,J=!1,ae=0;function ke(){typeof window>"u"||V&&(!J&&g.has(V)||Pe==null&&(Pe=requestAnimationFrame(()=>{if(Pe=null,!V||!J&&g.has(V))return;const t=V.scrollHeight-(V.scrollTop+V.clientHeight),u=J||t>V.clientHeight?"auto":"smooth";V.scrollTo({top:V.scrollHeight,behavior:u}),J=!1})))}Ee(()=>{const t=re.length;t===0&&ae>0&&(J=!0,V&&g.delete(V)),ae=t,t>0&&ke()});function Ue(t){t.scrollTop+t.clientHeight+200>t.scrollHeight?g.delete(t):g.add(t)}function Ye(t){if(t.preventDefault(),e(G))return;(e(d).trim().length>0||e(se))&&(i(ge,Wt(e(ge),e(d)),!0),r.onmessage({sender:"user",text:e(d),imageUrl:e(se)}),i(se,""),i(d,""),i(I,!1),i(h,null))}function ut(t){t.preventDefault(),i(se,e(N),!0),i(N,""),i(j,!1)}function Xe(t){return t&&typeof t.renderedPrompt=="string"?t.renderedPrompt:null}function ct(t,u){for(let m=u-1;m>=0;m--){const p=t[m];if(Re(p)&&p.name==="main"&&Xe(p))return p}for(let m=u-1;m>=0;m--){const p=t[m];if(Re(p)&&p.name==="prewarm"&&Xe(p))return p}return null}function a(t){return t.eventName==="received-message"||t.eventName==="llm-handler-stream-requested"||t.eventName==="finished-main-streaming-step"||t.eventName==="sent-message"||t.eventName==="transfer-requested"}function c(t){return!!(r.agentId&&r.agentId.trim())&&t.eventName!=="transfer-requested"&&(t.eventName==="finished-main-streaming-step"||t.eventName==="sent-message")}function b(t){const u=String(t??"").trim();return!u||/^\[image\]\s+/.test(u)?"":u}function C(t){if(!r.onRevertToState)return;const u=t==null?void 0:t.bosunPrevStateId,m=typeof u=="string"&&u.trim().length>0?u:null;r.onRevertToState(m);const p=typeof(t==null?void 0:t.bosunUserMessage)=="string"?t.bosunUserMessage:t.content;i(d,b(p),!0),requestAnimationFrame(()=>{var H,Se;try{(H=e(Y))==null||H.focus(),(Se=e(Y))==null||Se.select()}catch{}})}const F=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function k(t){if(typeof t!="number"||!Number.isFinite(t))return null;const u=new Date(t);if(Number.isNaN(u.getTime()))return null;const m=u.getFullYear(),p=String(u.getMonth()+1).padStart(2,"0"),H=String(u.getDate()).padStart(2,"0");return`${m}-${p}-${H}`}function O(t){if(typeof t!="number"||!Number.isFinite(t))return null;const u=new Date(t);if(Number.isNaN(u.getTime()))return null;const m=u.getDate(),p=F[u.getMonth()],H=u.getFullYear();return`${m} ${p} ${H}`}const y=S(()=>re.filter(t=>bt(t)||Re(t)?!0:vt(t)?a(t):!1)),L=S(()=>{for(let t=e(y).length-1;t>=0;t--){const u=e(y)[t];if(vt(u)&&c(u))return u}return null}),le=S(()=>{const t=e(L);if(!t)return null;try{const u=me(t);return{model:u.model,stringifiedConversation:u.stringifiedConversation,response:u.response}}catch{return null}});function je(t){for(let u=t-1;u>=0;u--){const m=re[u];if(Re(m)&&!(m.name!=="main"&&m.name!=="mainReply")&&typeof m.renderedPrompt=="string"&&m.renderedPrompt.trim())return m}for(let u=t+1;u<re.length;u++){const m=re[u];if(Re(m)&&!(m.name!=="main"&&m.name!=="mainReply")&&typeof m.renderedPrompt=="string"&&m.renderedPrompt.trim())return m}return null}function Je(t){for(let u=t-1;u>=0;u--){const m=re[u];if(!Re(m)||typeof m.stringifiedConversation!="string")continue;const p=m.stringifiedConversation.trim();if(p)return p}return null}function me(t){if(!(r.agentId??"").trim())throw new Error("Agent id is not available; cannot analyze");const m=re.indexOf(t);if(m===-1)throw new Error("Could not locate trace in chat history");const p=je(m);if(!p)throw new Error("Could not find main step trace for this message");const H=typeof p.renderedPrompt=="string"?p.renderedPrompt:"";if(!H.trim())throw new Error("Main step rendered prompt is missing");const Se=typeof p.stringifiedConversation=="string"&&p.stringifiedConversation.trim()?p.stringifiedConversation:Je(m)??"";if(!Se.trim())throw new Error("Main step conversation is missing");const Le=String((t==null?void 0:t.content)??"");if(!Le.trim())throw new Error("Message content is missing");const B=typeof(p==null?void 0:p.model)=="string"?String(p.model):void 0,P=t==null?void 0:t.createdAt,X=typeof P=="number"&&Number.isFinite(P)?P:void 0;return{trace:t,stepTrace:p,renderedPrompt:H,stringifiedConversation:Se,response:Le,model:B,createdAt:X}}function E(t){if(r.onAnalyzeTrace)try{r.onAnalyzeTrace(me(t))}catch(u){console.error(u)}}async function dt(){if(e(G))return;const t=e(le);if(t){i(I,!0),i(h,null),i(G,!0);try{const u=await Ke.agents.generateUserResponse.mutate(t);i(d,u.text,!0),i(I,!0),i(h,null),requestAnimationFrame(()=>{var m,p;try{(m=e(Y))==null||m.focus(),(p=e(Y))==null||p.setSelectionRange(u.text.length,u.text.length)}catch{}})}catch(u){console.error("Failed to generate suggested user response",u)}finally{i(G,!1)}}}Ee(()=>{if(typeof window>"u")return;const t=(r.agentId??"").trim();if(!t||t===e(_))return;i(_,t,!0),i(ge,[],!0);const u=t;Ke.agents.userMessageHistory.query({agentId:u}).then(m=>{if(e(_)!==u)return;const p=Jt(m);i(ge,Gt(p,e(ge)),!0),i(h,null)}).catch(m=>{console.error("Failed to load user message history",m),e(_)===u&&(i(ge,[],!0),i(h,null))})}),Ee(()=>{const t=o(),u=f().length,m=l(),p=M(),H=v();!t&&!u&&!m&&!p&&!H||ke()});var Ze=Sr(),Qe=xe(Ze);jt(Qe,{get isOpen(){return e(j)},onClose:()=>i(j,!1),showCloseButton:!0,children:(t,u)=>{yt(t,{class:"p-4",children:(m,p)=>{var H=ar(),Se=R(T(H),2);_t(Se,{class:"mb-2 w-80",get value(){return e(N)},set value(B){i(N,B,!0)}});var Le=R(Se,2);de(Le,{variant:"secondary",type:"submit",class:"ml-2 p-2",children:(B,P)=>{Ve();var X=he("Attach");x(B,X)},$$slots:{default:!0}}),w(H),mt("submit",H,ut),x(m,H)}})},$$slots:{default:!0}});var Ae=R(Qe,2);yt(Ae,{get class(){return`relative flex min-h-0 flex-col p-2 pb-16 ${r.class??""}`},children:(t,u)=>{var m=_r(),p=xe(m);Ge(p,21,()=>e(y),ht,(B,P,X)=>{const Oe=S(()=>k(e(P).createdAt)),ft=S(()=>X>0?k(e(y)[X-1].createdAt):null),We=S(()=>O(e(P).createdAt));var et=dr(),tt=xe(et);{var rt=z=>{var Z=or(),ee=T(Z),Me=T(ee,!0);w(ee),w(Z),ce(()=>Ce(Me,e(We))),x(z,Z)};$(tt,z=>{e(Oe)&&e(We)&&e(Oe)!==e(ft)&&z(rt)})}var nt=R(tt,2),W=T(nt),K=T(W);{var ve=z=>{Et(z,{get trace(){return e(P)}})},we=z=>{var Z=ze(),ee=xe(Z);{var Me=Ne=>{{let qe=S(()=>r.onAnalyzeTrace?E:void 0),Q=S(()=>r.onRevertToState?C:void 0),oe=S(()=>!!r.onSeeVariants&&!o()&&e(P)===e(L)),te=S(()=>o()&&e(P)===o()?"source":"none"),$e=S(()=>v()===null&&o()&&e(P)===o()?r.onChooseOriginalVariant:void 0),gt=S(()=>!!o()&&e(P)===o());Dt(Ne,{get trace(){return e(P)},get context(){return r.context},get agentId(){return r.agentId},get analyzeDisabled(){return n()},get onAnalyze(){return e(qe)},get onRegenerate(){return r.onRegenerateTrace},get onRevert(){return e(Q)},get showSeeVariants(){return e(oe)},get onSeeVariants(){return r.onSeeVariants},get variantSelectionState(){return e(te)},get onSelectInVariantMode(){return e($e)},get suppressActionRow(){return e(gt)}})}},pe=Ne=>{var qe=ze(),Q=xe(qe);{var oe=te=>{{let $e=S(()=>e(P).name==="main"?ct(e(y),X):null);Ft(te,{get trace(){return e(P)},get compareTrace(){return e($e)}})}};$(Q,te=>{Re(e(P))&&te(oe)},!0)}x(Ne,qe)};$(ee,Ne=>{vt(e(P))?Ne(Me):Ne(pe,!1)},!0)}x(z,Z)};$(K,z=>{bt(e(P))?z(ve):z(we,!1)})}w(W);var Ie=R(W,2);{var ue=z=>{var Z=cr(),ee=T(Z);{var Me=Q=>{var oe=sr();x(Q,oe)};$(ee,Q=>{l()&&Q(Me)})}var pe=R(ee,2);{var Ne=Q=>{var oe=ir(),te=T(oe,!0);w(oe),ce(()=>Ce(te,M())),x(Q,oe)};$(pe,Q=>{M()&&Q(Ne)})}var qe=R(pe,2);Ge(qe,17,f,Q=>Q.id,(Q,oe)=>{var te=ur();te.__click=[lr,r,oe];var $e=T(te),gt=T($e,!0);w($e),w(te),ce(()=>{te.disabled=v()!==null,ot(te,1,`w-full max-w-[83%] cursor-pointer rounded-lg border border-rc-green-450 bg-transparent p-2 pt-1 text-left text-rc-gray-100 backdrop-blur-md transition-colors hover:bg-rc-green-700 focus:outline-none focus-visible:outline-none disabled:cursor-wait disabled:opacity-70 ${v()===e(oe).id?"bg-rc-green-700":""}`),Ce(gt,e(oe).text)}),x(Q,te)}),w(Z),x(z,Z)};$(Ie,z=>{o()&&e(P)===o()&&z(ue)})}w(nt),x(B,et)}),w(p),It(p,B=>V=B,()=>V);var H=R(p,2);{var Se=B=>{var P=mr(),X=R(T(P),2);X.__click=[fr,r];var Oe=R(X,2);Oe.__click=[gr,r],w(P),ce(()=>X.disabled=!r.onRegenerateVariants||l()||v()!==null),x(B,P)},Le=B=>{var P=yr(),X=T(P),Oe=T(X);{var ft=W=>{var K=xr();Ge(K,23,()=>e(D),ve=>ve.text,(ve,we,Ie)=>{var ue=hr();ue.__mousedown=[vr,De,we],Ge(ue,21,()=>e(we).segments,ht,(z,Z)=>{var ee=pr(),Me=T(ee,!0);w(ee),ce(()=>{ot(ee,1,Pt(e(Z).matched?"text-rc-green-200":"")),Ce(Me,e(Z).text)}),x(z,ee)}),w(ue),ce(()=>{Nt(ue,"aria-selected",e(h)===e(Ie)),ot(ue,1,`w-full select-none border-b border-rc-gray-110 px-3 py-2 text-left font-semibold text-rc-gray-100 last:border-b-0 hover:bg-rc-gray-700/70 ${e(h)===e(Ie)?"bg-rc-gray-700/70":""}`)}),x(ve,ue)}),w(K),x(W,K)};$(Oe,W=>{e(_e)&&W(ft)})}var We=R(Oe,2);{let W=S(()=>e(G)?"Generating":"Enter user's message...");_t(We,{variant:"chat",get placeholder(){return e(W)},autocomplete:"off",get readonly(){return e(G)},onfocus:Te,onblur:Fe,oninput:He,onkeydown:Be,get value(){return e(d)},set value(K){i(d,K,!0)},get el(){return e(Y)},set el(K){i(Y,K,!0)}})}var et=R(We,2);{var tt=W=>{var K=br(),ve=T(K),we=T(ve),Ie=T(we,!0);w(we);var ue=R(we),z=T(ue,!0);w(ue),w(ve),w(K),ce(()=>{Rt(ve,e(fe)),Ce(Ie,e(d)),Ce(z,e(ye))}),x(W,K)};$(et,W=>{e(h)!==null&&e(ye)&&W(tt)})}w(X);var rt=R(X,2);de(rt,{size:"small",variant:"secondary",get disabled(){return e(G)},onclick:()=>i(j,!0),children:(W,K)=>{st(W,{name:"paperclip"})},$$slots:{default:!0}});var nt=R(rt,2);{let W=S(()=>e(ie)?"button":"submit"),K=S(()=>e(ie)?"Generate response":void 0),ve=S(()=>e(ie)?"Generate response":"Send message"),we=S(()=>e(G)||e(ie)&&!e(le));de(nt,{size:"small",get type(){return e(W)},get title(){return e(K)},get"aria-label"(){return e(ve)},get disabled(){return e(we)},onclick:Ie=>{e(ie)&&(Ie.preventDefault(),dt())},children:(Ie,ue)=>{var z=ze(),Z=xe(z);{var ee=pe=>{st(pe,{name:"sparkles"})},Me=pe=>{st(pe,{name:"send"})};$(Z,pe=>{e(ie)?pe(ee):pe(Me,!1)})}x(Ie,z)},$$slots:{default:!0}})}w(P),mt("submit",P,Ye),x(B,P)};$(H,B=>{o()?B(Se):B(Le,!1)})}mt("scroll",p,B=>Ue(B.target)),x(t,m)}}),x(s,Ze),lt()}St(["click","mousedown"]);var Ir=A('<div class="mt-1 w-max overflow-hidden rounded-lg border border-rc-gray-110 bg-rc-gray-930 shadow-inner-white-soft backdrop-blur-2xl" role="listbox"><!> <!> <!></div>'),Cr=A('<div class="flex h-full items-center justify-center text-sm text-rc-gray-300">Connecting…</div>'),Tr=A('<div class="flex h-full items-center justify-center text-sm text-rc-gray-300">Select an agent to start chatting</div>'),kr=A('<div class="h-full min-h-0 p-2"><!></div>'),Mr=A('<div class="relative flex h-full min-h-0 flex-col"><div class="flex flex-none flex-nowrap items-center gap-2 p-2"><!> <div class="ml-auto flex flex-none flex-nowrap items-center gap-2"><!> <!> <!> <!></div></div> <div class="min-h-0 flex-1"><!></div></div>');function Jr(s,r){it(r,!0);const{state:n,actions:o}=At();let f=q(!1),l=q(null),v=q(null),M=null,g=q(!1),d=q(null);Ee(()=>{!re.length&&!at.length&&e(g)&&i(g,!1)});function N(a){const c=(a||"").trim();return c?c.split("/").at(-1)??c:"Agent"}function se(a){if(typeof a!="number"||!Number.isFinite(a))return null;const c=new Date(a);if(Number.isNaN(c.getTime()))return null;const b=String(c.getHours()).padStart(2,"0"),C=String(c.getMinutes()).padStart(2,"0"),F=String(c.getSeconds()).padStart(2,"0");return`${b}:${C}:${F}`}async function V(a){var k,O;if(e(f))return;i(f,!0);const c=o.openPopover("analyze"),b=se(a.createdAt),C=b?` • ${b}`:"",F=`Analysis — ${N(n.agentId)}${C}`;try{const y=await Ke.agents.analyzeTrace.mutate({agentId:n.agentId,traceId:(k=a.trace)==null?void 0:k.traceId,eventName:a.trace.eventName,createdAt:a.createdAt,model:a.model,renderedPrompt:a.renderedPrompt,stringifiedConversation:a.stringifiedConversation,response:a.response,stepTrace:a.stepTrace});if(((O=n.edit.popover)==null?void 0:O.requestId)!==c)return;o.setHighlightQuotes(y.quotes);let L=null;try{L=JSON.stringify(y.raw,null,2)}catch{L=null}o.setPopoverReady(c,{title:F,quotes:y.quotes,rationales:y.rationales,parallelCalls:y.parallelCalls,raw:L})}catch(y){console.error(y);const L=typeof(y==null?void 0:y.message)=="string"?y.message:(()=>{try{return JSON.stringify(y)}catch{return String(y)}})();o.setPopoverError(c,L||"Failed to analyze this response",{raw:L})}finally{i(f,!1)}}function j(a){return a?re:re.map(c=>{if(!Re(c))return c;const{receivedPrompt:b,renderedPrompt:C,...F}=c;return F})}function Y(a){i(v,a,!0),M&&clearTimeout(M),M=window.setTimeout(()=>{i(v,null),M=null},2e3)}async function fe(){try{await navigator.clipboard.writeText(JSON.stringify(at,null,2)),Y("logs")}catch(a){console.error("Failed to copy logs",a)}}async function G(a){try{await navigator.clipboard.writeText(JSON.stringify(j(a),null,2)),Y(a?"with-prompts":"without-prompts")}catch(c){console.error("Failed to copy traces",c)}}function ge(){I(),o.closePopover(),o.closeContextPopover(),o.selectState(null)}function _(a){const c=String(a??"").trim();if(!c)return null;const b=/^\[image\]\s+(.+)$/.exec(c);if(b){const C=(b[1]??"").trim();return C?{text:"",imageUrl:C}:null}return{text:c}}function U(a){I();const c=a==null?void 0:a.bosunPrevStateId,b=typeof c=="string"&&c.trim()?c:null,C=typeof(a==null?void 0:a.bosunUserMessage)=="string"&&a.bosunUserMessage||null;let F=C?_(C):null;if(!F){const k=a==null?void 0:a.bosunStateId;if(typeof k=="string"&&k.trim()){const O=n.agentStates.find(y=>y.id===k);F=_((O==null?void 0:O.userMessage)??"")}}F&&(o.selectState(b),o.sendChatMessage({sender:"user",text:F.text,imageUrl:F.imageUrl}))}function I(){i(l,null)}function h(){var b,C;const a=(C=(b=n.currentStep)==null?void 0:b.name)==null?void 0:C.trim();if(!a)return null;const c=n.promptDrafts[a];return typeof c!="string"?null:{step:a,prompt:c}}function D(a){const c=typeof(a==null?void 0:a.bosunUserMessage)=="string"?a.bosunUserMessage:null;if(c&&c.trim())return c;const b=a==null?void 0:a.bosunStateId;if(typeof b!="string"||!b.trim())return null;const C=n.agentStates.find(k=>k.id===b);return(typeof(C==null?void 0:C.userMessage)=="string"?C.userMessage.trim():"")||null}async function ne(a){const c=typeof(a==null?void 0:a.bosunStateId)=="string"&&a.bosunStateId.trim()?a.bosunStateId.trim():null;if(!n.agentId||!c)return;const b=D(a);if(!b)return;const C=typeof(a==null?void 0:a.bosunPrevStateId)=="string"&&a.bosunPrevStateId.trim()?a.bosunPrevStateId.trim():null,F=h();await o.flushPromptSave(),i(l,{sourceTrace:a,targetStateId:c,choices:[],loading:!0,applyingId:null,error:null},!0);try{const k=await Ke.agents.generateVariants.mutate({agentId:n.agentId,region:n.region,prevStateId:C,rawUserMessage:b,context:n.context,promptUpdate:F,count:9});if(!e(l)||e(l).sourceTrace!==a||e(l).targetStateId!==c)return;i(l,{...e(l),choices:k,loading:!1,error:null},!0)}catch(k){if(console.error("Failed to generate variants",k),!e(l)||e(l).sourceTrace!==a||e(l).targetStateId!==c)return;i(l,{...e(l),choices:[],loading:!1,error:typeof(k==null?void 0:k.message)=="string"?k.message:"Failed to generate variants"},!0)}}function ye(a){ne(a)}function ie(){var c;const a=(c=e(l))==null?void 0:c.sourceTrace;a&&ne(a)}async function _e(a){if(!e(l)||!n.agentId)return;const c=e(l).choices.find(b=>b.id===a);if(c){i(l,{...e(l),applyingId:a,error:null},!0);try{await Ke.agents.commitVariant.mutate({agentId:n.agentId,region:n.region,targetStateId:e(l).targetStateId,state:c.state}),I(),Tt(),Ut(),o.sendAppEvent({type:"reload-project"})}catch(b){if(console.error("Failed to apply variant",b),!e(l))return;i(l,{...e(l),applyingId:null,error:typeof(b==null?void 0:b.message)=="string"?b.message:"Failed to apply variant"},!0)}}}function De(){I()}Ee(()=>{const a=e(l),c=n.agentId,b=a==null?void 0:a.sourceTrace;!a||!b||(!c||!re.includes(b))&&i(l,null)});var Te=Mr(),Fe=T(Te),He=T(Fe);{var Be=a=>{$t(a,{get agentStates(){return n.agentStates},get currentState(){return n.currentState},class:"ml-9",onSelectState:c=>o.selectState(c)})};$(He,a=>{n.agentStates.length>1&&a(Be)})}var Pe=R(He,2),J=T(Pe);{let a=S(()=>!n.agentId);de(J,{variant:"secondary",size:"small",get disabled(){return e(a)},get"aria-expanded"(){return n.contextPopoverOpen},"aria-haspopup":"dialog",get onclick(){return o.toggleContextPopover},children:(c,b)=>{Ve();var C=he("Edit context");x(c,C)},$$slots:{default:!0}})}var ae=R(J,2);{let a=S(()=>!re.length&&!at.length);de(ae,{variant:"secondary",size:"small",get disabled(){return e(a)},get"aria-expanded"(){return e(g)},"aria-haspopup":"listbox","aria-controls":"roleplay-copy-dropdown",onclick:c=>{c.stopPropagation(),i(g,!e(g))},get el(){return e(d)},set el(c){i(d,c,!0)},children:(c,b)=>{var C=ze(),F=xe(C);{var k=y=>{var L=he("Copied logs");x(y,L)},O=y=>{var L=ze(),le=xe(L);{var je=me=>{var E=he("Copied traces (with prompts)");x(me,E)},Je=me=>{var E=ze(),dt=xe(E);{var Ze=Ae=>{var t=he("Copied traces (without prompts)");x(Ae,t)},Qe=Ae=>{var t=he("Copy...");x(Ae,t)};$(dt,Ae=>{e(v)==="without-prompts"?Ae(Ze):Ae(Qe,!1)},!0)}x(me,E)};$(le,me=>{e(v)==="with-prompts"?me(je):me(Je,!1)},!0)}x(y,L)};$(F,y=>{e(v)==="logs"?y(k):y(O,!1)})}x(c,C)},$$slots:{default:!0}})}var ke=R(ae,2);wt(ke,{id:"roleplay-copy-dropdown",get open(){return e(g)},onClose:()=>i(g,!1),get anchorEl(){return e(d)},placement:"bottom-end",offset:[0,1],children:c=>{var b=Ir(),C=T(b);{let O=S(()=>!at.length);de(C,{variant:"ghost",size:"small",role:"option",get disabled(){return e(O)},onclick:y=>{y.stopPropagation(),i(g,!1),fe()},class:"block rounded-none border-b border-rc-gray-110 py-2 pr-3 text-left backdrop-blur-2xl hover:bg-rc-gray-700 focus:bg-rc-gray-400",children:(y,L)=>{Ve();var le=he("Copy logs");x(y,le)},$$slots:{default:!0}})}var F=R(C,2);{let O=S(()=>!re.length);de(F,{variant:"ghost",size:"small",role:"option",get disabled(){return e(O)},onclick:y=>{y.stopPropagation(),i(g,!1),G(!0)},class:"block rounded-none border-b border-rc-gray-110 py-2 pr-3 text-left backdrop-blur-2xl hover:bg-rc-gray-700 focus:bg-rc-gray-400",children:(y,L)=>{Ve();var le=he("Copy traces with prompts");x(y,le)},$$slots:{default:!0}})}var k=R(F,2);{let O=S(()=>!re.length);de(k,{variant:"ghost",size:"small",role:"option",get disabled(){return e(O)},onclick:y=>{y.stopPropagation(),i(g,!1),G(!1)},class:"block rounded-none py-2 pr-3 text-left backdrop-blur-2xl hover:bg-rc-gray-700 focus:bg-rc-gray-400",children:(y,L)=>{Ve();var le=he("Copy traces without prompts");x(y,le)},$$slots:{default:!0}})}w(b),x(c,b)},$$slots:{default:!0}});var Ue=R(ke,2);de(Ue,{size:"small",onclick:ge,children:(a,c)=>{Ve();var b=he("New chat");x(a,b)},$$slots:{default:!0}}),w(Pe),w(Fe);var Ye=R(Fe,2),ut=T(Ye);{var Xe=a=>{var c=Cr();x(a,c)},ct=a=>{var c=ze(),b=xe(c);{var C=k=>{var O=Tr();x(k,O)},F=k=>{var O=kr(),y=T(O);{let L=S(()=>{var E;return((E=e(l))==null?void 0:E.sourceTrace)??null}),le=S(()=>{var E;return((E=e(l))==null?void 0:E.choices)??[]}),je=S(()=>{var E;return((E=e(l))==null?void 0:E.loading)??!1}),Je=S(()=>{var E;return((E=e(l))==null?void 0:E.applyingId)??null}),me=S(()=>{var E;return((E=e(l))==null?void 0:E.error)??null});wr(y,{class:"h-full min-w-0",get context(){return n.context},get agentId(){return n.agentId},onmessage:E=>o.sendChatMessage(E),get analyzeDisabled(){return e(f)},onAnalyzeTrace:V,onRegenerateTrace:U,onRevertToState:E=>o.selectState(E),onSeeVariants:ye,get variantSourceTrace(){return e(L)},get variantChoices(){return e(le)},get variantLoading(){return e(je)},get variantApplyingId(){return e(Je)},get variantError(){return e(me)},onCancelVariants:I,onRegenerateVariants:ie,onChooseOriginalVariant:De,onChooseVariant:_e})}w(O),x(k,O)};$(b,k=>{n.agentId?k(F,!1):k(C)},!0)}x(a,c)};$(ut,a=>{!n.wsLoaded||!n.chatReady?a(Xe):a(ct,!1)})}w(Ye),w(Te),x(s,Te),lt()}export{Jr as component};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Button-CMHzABlu.js","sources":["../../../.svelte-kit/adapter-node/chunks/Button.js"],"sourcesContent":["import { g as attributes, j as clsx, d as bind_props } from \"./index2.js\";\nfunction Button($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let {\n variant = \"primary\",\n size = \"medium\",\n type = \"button\",\n disabled = false,\n class: className = \"\",\n children,\n el = void 0,\n $$slots,\n $$events,\n ...rest\n } = $$props;\n const variantClasses = {\n primary: \"border border-thin border-rc-green-450 backdrop-blur-xl rounded-lg text-rc-gray-100 font-bold bg-rc-green-350 hover:bg-rc-green-250 focus:bg-rc-green-200 focus:outline-none active:bg-rc-green-250\",\n secondary: \"border border-thin border-rc-gray-050 backdrop-blur-2xl rounded-lg text-rc-gray-100 font-bold bg-rc-gray-930 hover:bg-double-gradient focus:bg-double-gradient focus:outline-none active:bg-double-gradient\",\n outlined: \"border border-rc-gray-500 bg-rc-gray-900 font-semibold hover:bg-rc-gray-700 hover:border-rc-gray-400 focus:outline-none focus:ring-0 focus:border-rc-gray-400 active:border-rc-gray-400\",\n ghost: \"bg-transparent rounded-lg hover:text-gray-100 focus:text-gray-100 active:text-gray-100\"\n };\n const sizeClasses = {\n big: \"px-4 py-2 text-base\",\n medium: \"px-4 py-2 text-base\",\n small: \"px-4 py-2 text-base\"\n };\n let buttonClasses = `text-gray-200\n rounded\n transition-colors\n ${variantClasses[variant]}\n ${sizeClasses[size]}\n ${disabled ? \"opacity-50 cursor-not-allowed\" : \"cursor-pointer\"}\n ${className}\n `.trim();\n $$renderer2.push(`<button${attributes({ type, class: clsx(buttonClasses), disabled, ...rest })}>`);\n children($$renderer2);\n $$renderer2.push(`<!----></button>`);\n bind_props($$props, { el });\n });\n}\nexport {\n Button as B\n};\n"],"names":[],"mappings":";;AACA,SAAS,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE;AACrC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,KAAK;AACxC,IAAI,IAAI;AACR,MAAM,OAAO,GAAG,SAAS;AACzB,MAAM,IAAI,GAAG,QAAQ;AACrB,MAAM,IAAI,GAAG,QAAQ;AACrB,MAAM,QAAQ,GAAG,KAAK;AACtB,MAAM,KAAK,EAAE,SAAS,GAAG,EAAE;AAC3B,MAAM,QAAQ;AACd,MAAM,EAAE,GAAG,MAAM;AACjB,MAAM,OAAO;AACb,MAAM,QAAQ;AACd,MAAM,GAAG;AACT,KAAK,GAAG,OAAO;AACf,IAAI,MAAM,cAAc,GAAG;AAC3B,MAAM,OAAO,EAAE,qMAAqM;AACpN,MAAM,SAAS,EAAE,6MAA6M;AAC9N,MAAM,QAAQ,EAAE,yLAAyL;AACzM,MAAM,KAAK,EAAE;AACb,KAAK;AACL,IAAI,MAAM,WAAW,GAAG;AACxB,MAAM,GAAG,EAAE,qBAAqB;AAChC,MAAM,MAAM,EAAE,qBAAqB;AACnC,MAAM,KAAK,EAAE;AACb,KAAK;AACL,IAAI,IAAI,aAAa,GAAG,CAAC;AACzB;AACA;AACA,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC;AAC7B,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC;AACvB,IAAI,EAAE,QAAQ,GAAG,+BAA+B,GAAG,gBAAgB;AACnE,IAAI,EAAE,SAAS;AACf,EAAE,CAAC,CAAC,IAAI,EAAE;AACV,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACtG,IAAI,QAAQ,CAAC,WAAW,CAAC;AACzB,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,CAAC;AACxC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC;AAC/B,EAAE,CAAC,CAAC;AACJ;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ChatStepTrace-BWp_rIDm.js","sources":["../../../.svelte-kit/adapter-node/chunks/ChatStepTrace.js"],"sourcesContent":["import { b as attr_class, j as clsx, s as stringify, a as attr } from \"./index2.js\";\nimport { o as onDestroy } from \"./index-server.js\";\n/* empty css */\n/* empty css */\nimport { I as Icon } from \"./Icon.js\";\nimport { W as escape_html } from \"./context.js\";\nimport \"@sveltejs/kit/internal\";\nimport \"./exports.js\";\nimport \"./utils.js\";\nimport \"@sveltejs/kit/internal/server\";\nimport \"./state.svelte.js\";\nimport \"./trpc-client.js\";\nfunction createDragSelectClickGuard(options = {}) {\n const thresholdPx = options.thresholdPx ?? 4;\n const dragCursor = options.dragCursor ?? \"text\";\n let startX = 0;\n let startY = 0;\n let didDrag = false;\n let pointerDown = false;\n let cursorEl = null;\n let abortController = null;\n function cleanup() {\n pointerDown = false;\n didDrag = false;\n cursorEl?.style.removeProperty(\"cursor\");\n cursorEl = null;\n abortController?.abort();\n abortController = null;\n }\n function onPointerDown(event) {\n if (typeof window === \"undefined\") return;\n if (event.button !== 0) return;\n abortController?.abort();\n abortController = null;\n cursorEl?.style.removeProperty(\"cursor\");\n startX = event.clientX;\n startY = event.clientY;\n didDrag = false;\n pointerDown = true;\n cursorEl = event.currentTarget instanceof HTMLElement ? event.currentTarget : null;\n const controller = new AbortController();\n abortController = controller;\n const onMove = (moveEvent) => {\n if (!pointerDown || didDrag) return;\n const dx = Math.abs(moveEvent.clientX - startX);\n const dy = Math.abs(moveEvent.clientY - startY);\n if (dx + dy < thresholdPx) return;\n didDrag = true;\n cursorEl?.style.setProperty(\"cursor\", dragCursor);\n };\n const onEnd = () => {\n pointerDown = false;\n cursorEl?.style.removeProperty(\"cursor\");\n cursorEl = null;\n controller.abort();\n if (abortController === controller) abortController = null;\n };\n window.addEventListener(\"pointermove\", onMove, { signal: controller.signal });\n window.addEventListener(\"pointerup\", onEnd, { signal: controller.signal });\n window.addEventListener(\"pointercancel\", onEnd, { signal: controller.signal });\n }\n function shouldSuppressClick(event) {\n return event.detail > 0 && didDrag;\n }\n return { onPointerDown, shouldSuppressClick, cleanup };\n}\nfunction ChatApiCallTrace($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let { trace } = $$props;\n const clickGuard = createDragSelectClickGuard();\n onDestroy(clickGuard.cleanup);\n function safeJson(value) {\n try {\n if (typeof value === \"string\") {\n const trimmed = value.trim();\n if (!trimmed) return \"\";\n const maybe = JSON.parse(trimmed);\n return JSON.stringify(maybe, null, 2);\n }\n } catch {\n }\n try {\n return JSON.stringify(value ?? null, null, 2);\n } catch {\n return String(value);\n }\n }\n function fmtDate(ms) {\n return new Date(ms).toISOString();\n }\n function formatHHmmss(ms) {\n if (typeof ms !== \"number\" || !Number.isFinite(ms)) return null;\n const d = new Date(ms);\n if (Number.isNaN(d.getTime())) return null;\n const hh = String(d.getHours()).padStart(2, \"0\");\n const mm = String(d.getMinutes()).padStart(2, \"0\");\n const ss = String(d.getSeconds()).padStart(2, \"0\");\n return `${hh}:${mm}:${ss}`;\n }\n const time = (() => formatHHmmss(trace.createdAt))();\n const derivedError = (() => {\n if (trace.error != null) return trace.error;\n const isFailed = trace.ok === false || typeof trace.status === \"number\" && trace.status >= 400;\n if (!isFailed) return void 0;\n const resp = trace.response;\n if (resp && typeof resp === \"object\") {\n if (\"error\" in resp && resp.error != null) return resp.error;\n }\n return { status: trace.status, ok: trace.ok };\n })();\n const hasError = derivedError != null;\n `API: ${trace.operationName}`;\n const oneLine = trace.operationName;\n (() => {\n if (typeof trace.createdAt !== \"number\") return \"—\";\n return fmtDate(trace.createdAt);\n })();\n safeJson({\n method: trace.method,\n path: trace.path,\n baseUrl: trace.baseUrl,\n request: trace.request\n });\n safeJson({\n status: trace.status,\n ok: trace.ok,\n response: trace.response,\n error: derivedError\n });\n derivedError != null ? safeJson(derivedError) : \"\";\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n $$renderer3.push(`<button type=\"button\" class=\"flex w-full cursor-pointer select-text items-baseline gap-2 truncate rounded-md bg-transparent px-2 py-1 text-left text-sm text-rc-gray-200 hover:bg-rc-gray-800/40\">`);\n Icon($$renderer3, {\n name: hasError ? \"close\" : \"checkmark\",\n width: 18,\n height: 18,\n class: hasError ? \"self-center text-red-400\" : \"self-center text-rc-green-200\"\n });\n $$renderer3.push(`<!----> `);\n if (time) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span class=\"text-[13px] leading-none text-rc-gray-400\">${escape_html(time)}</span>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--> <span${attr_class(clsx(hasError ? \"text-red-200\" : \"\"))}>${escape_html(oneLine)}</span></button> `);\n {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]-->`);\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n });\n}\nfunction ChatConversationalTrace($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let {\n trace,\n context,\n agentId,\n analyzeDisabled = false,\n onAnalyze,\n onRegenerate,\n onRevert,\n showSeeVariants = false,\n onSeeVariants,\n variantSelectionState = \"none\",\n onSelectInVariantMode,\n suppressActionRow = false\n } = $$props;\n const clickGuard = createDragSelectClickGuard();\n onDestroy(clickGuard.cleanup);\n function agentName(id) {\n if (!id) return \"\";\n return id.split(\"/\").at(-1) ?? id;\n }\n function getInitial(id) {\n const first = agentName(id).trim().charAt(0);\n return first ? first.toUpperCase() : \"?\";\n }\n const sender = (() => {\n if (trace.role === \"system\") return \"system\";\n if (trace.eventName === \"finished-main-streaming-step\" || trace.eventName === \"sent-message\") {\n return \"agent\";\n }\n return trace.role === \"user\" ? \"user\" : \"user\";\n })();\n const bubbleMaxWidthClass = (() => {\n if (sender === \"agent\") return \"max-w-[83%]\";\n if (sender === \"user\") return \"max-w-[90%] sm:max-w-[80%] md:max-w-[70%]\";\n if (sender === \"system\") return \"max-w-[90%] sm:max-w-[85%] md:max-w-[75%]\";\n return \"\";\n })();\n const showRevert = (() => sender === \"user\" && !!onRevert && // Hide for older traces that predate bosun state metadata.\n trace?.bosunPrevStateId !== void 0)();\n const hasError = (() => trace.error != null)();\n const metrics = (() => trace?.metrics)();\n const llmToAudioLatencyMs = (() => metrics?.summary?.llmToAudioLatencyMs)();\n const isHighLatency = (() => typeof llmToAudioLatencyMs === \"number\" && llmToAudioLatencyMs > 800)();\n const isVariantSelectable = /* @__PURE__ */ (() => variantSelectionState === \"source\")();\n function formatHHmmss(ms) {\n if (typeof ms !== \"number\" || !Number.isFinite(ms)) return null;\n const d = new Date(ms);\n if (Number.isNaN(d.getTime())) return null;\n const hh = String(d.getHours()).padStart(2, \"0\");\n const mm = String(d.getMinutes()).padStart(2, \"0\");\n const ss = String(d.getSeconds()).padStart(2, \"0\");\n return `${hh}:${mm}:${ss}`;\n }\n const time = (() => formatHHmmss(trace?.createdAt))();\n function isAddTestEligible() {\n return sender === \"agent\" && trace.eventName !== \"transfer-requested\" && !!(agentId && agentId.trim()) && (trace.eventName === \"finished-main-streaming-step\" || trace.eventName === \"sent-message\");\n }\n function isAnalyzeEligible() {\n return sender === \"agent\" && trace.eventName !== \"transfer-requested\" && !!(agentId && agentId.trim()) && (trace.eventName === \"finished-main-streaming-step\" || trace.eventName === \"sent-message\");\n }\n function isRegenerateEligible() {\n return isAnalyzeEligible();\n }\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n $$renderer3.push(`<div${attr_class(\"group mb-2 flex w-full items-start\", void 0, { \"justify-end\": sender === \"user\" || sender === \"system\" })}>`);\n if (trace.eventName === \"transfer-requested\") {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<div class=\"flex w-full justify-center\"><div${attr_class(`cursor-pointer select-text rounded-full border border-rc-gray-650 bg-rc-gray-800/40 px-4 py-2 text-sm text-rc-gray-100 ${stringify(hasError ? \"border-red-500 bg-red-950/30 text-red-200\" : \"\")}`)} role=\"button\" tabindex=\"0\"><div class=\"flex flex-wrap items-baseline gap-x-2 gap-y-0\">`);\n if (time) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span class=\"text-[13px] leading-none text-rc-gray-400\">${escape_html(time)}</span>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--> <div class=\"min-w-0 break-words\">Transfer requested: ${escape_html(trace.content)}</div></div></div></div>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n if (sender === \"agent\" && agentId) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<div class=\"mr-2 mt-1 flex h-5 w-5 shrink-0 items-center justify-center rounded-sm bg-rc-green-700 text-sm uppercase text-rc-gray-100 backdrop-blur-md\"${attr(\"title\", agentName(agentId))}>${escape_html(getInitial(agentId))}</div>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--> `);\n if (showRevert) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<button type=\"button\" title=\"Revert to before this message\" class=\"mr-2 mt-1 shrink-0 self-start rounded p-1 text-rc-gray-500 opacity-80 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none\">`);\n Icon($$renderer3, { name: \"undo\", width: 16, height: 16 });\n $$renderer3.push(`<!----></button>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--> <div${attr_class(`min-w-0 ${stringify(bubbleMaxWidthClass)}`)}><div role=\"button\" tabindex=\"0\" class=\"cursor-pointer select-text\"><div${attr_class(`rounded-lg ${stringify(sender === \"system\" ? \"justify-between whitespace-pre-line break-words border border-emerald-500 text-emerald-500\" : isVariantSelectable ? \"w-full whitespace-pre-line break-words border border-rc-green-450 bg-transparent backdrop-blur-md hover:bg-rc-green-700\" : sender !== \"user\" ? \"w-full whitespace-pre-line break-words bg-rc-green-700 backdrop-blur-md\" : \"whitespace-pre-line break-words bg-rc-gray-700\")} ${stringify(sender === \"system\" || isVariantSelectable ? \"\" : \"border-thin border-rc-gray-110\")} p-2 pt-1 text-rc-gray-100 ${stringify(hasError ? \"border-red-500 bg-red-950/30 text-red-200\" : \"\")} ${stringify(isHighLatency ? \"relative pb-5 ring-1 ring-red-500/60\" : \"\")} ${stringify(isHighLatency && !hasError ? \"border-red-500\" : \"\")}`)}><div>${escape_html(trace.content)}</div> `);\n if (time) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<div${attr_class(`${stringify(isHighLatency ? \"absolute bottom-1 right-2\" : \"mt-1 text-right\")} text-xs text-rc-gray-200/70`)}>${escape_html(time)}</div>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--> `);\n if (isHighLatency) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<div class=\"absolute bottom-1 left-2 rounded bg-red-950/60 px-2 py-0.5 text-[11px] text-red-200\">High LLM to audio latency: ${escape_html(Math.round(llmToAudioLatencyMs))} ms</div>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--></div></div> `);\n if (!suppressActionRow && (isAnalyzeEligible() || isAddTestEligible() || isRegenerateEligible() && onRegenerate || showSeeVariants)) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<div class=\"mt-1 flex flex-wrap items-center gap-x-2 gap-y-1\">`);\n if (isAddTestEligible()) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<button type=\"button\"${attr_class(`inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 transition-colors focus:outline-none focus-visible:outline-none ${stringify(\"cursor-pointer text-rc-gray-400 hover:bg-rc-gray-900 hover:text-rc-gray-200\")}`)}>`);\n {\n $$renderer3.push(\"<!--[!-->\");\n {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(`Add test`);\n }\n $$renderer3.push(`<!--]-->`);\n }\n $$renderer3.push(`<!--]--></button>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--> `);\n if (isAnalyzeEligible() && onAnalyze) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<button type=\"button\"${attr(\"disabled\", analyzeDisabled, true)} class=\"inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-transparent disabled:hover:text-rc-gray-400\">Analyze</button>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--> `);\n if (isRegenerateEligible() && onRegenerate) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<button type=\"button\" class=\"inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none\">Regenerate</button>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--> `);\n if (showSeeVariants && onSeeVariants) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<button type=\"button\" class=\"inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none\">See variants</button>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--></div>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--></div>`);\n }\n $$renderer3.push(`<!--]--></div> `);\n {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]-->`);\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n });\n}\nfunction ChatStepTrace($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let { trace, compareTrace } = $$props;\n const clickGuard = createDragSelectClickGuard();\n onDestroy(clickGuard.cleanup);\n function getPromptForDiff(t) {\n if (!t) return null;\n if (typeof t.renderedPrompt === \"string\") return t.renderedPrompt;\n return null;\n }\n function commonPrefixLength(a, b) {\n if (a === b) return a.length;\n const max = Math.min(a.length, b.length);\n for (let i = 0; i < max; i++) {\n if (a.charCodeAt(i) !== b.charCodeAt(i)) return i;\n }\n return max;\n }\n function similarityPercent(current, baseline) {\n const denom = Math.max(current.length, baseline.length);\n if (denom === 0) return 100;\n const prefixLen = commonPrefixLength(current, baseline);\n return Math.floor(prefixLen / denom * 100);\n }\n function similarityDetails(current, baseline) {\n const currentLength = current.length;\n const baselineLength = baseline.length;\n const commonPrefixLen = commonPrefixLength(current, baseline);\n const denom = Math.max(currentLength, baselineLength);\n const similarityPct = denom === 0 ? 100 : Math.floor(commonPrefixLen / denom * 100);\n return {\n currentLength,\n baselineLength,\n commonPrefixLength: commonPrefixLen,\n denom,\n similarityPct\n };\n }\n function stringPreview(value, opts) {\n const headChars = 600;\n const tailChars = 600;\n const head = value.slice(0, headChars);\n const tail = value.slice(Math.max(head.length, value.length - tailChars));\n const omittedChars = Math.max(0, value.length - head.length - tail.length);\n return { length: value.length, head, tail, omittedChars };\n }\n function cachedPromptTokensPercent(trace2) {\n const usage = trace2.llmUsage;\n if (!usage) return null;\n if (typeof usage.promptTokens !== \"number\" || !Number.isFinite(usage.promptTokens)) return null;\n if (usage.promptTokens <= 0) return null;\n if (typeof usage.cachedPromptTokens !== \"number\" || !Number.isFinite(usage.cachedPromptTokens)) return null;\n if (usage.cachedPromptTokens < 0) return null;\n return Math.max(0, Math.min(100, Math.floor(usage.cachedPromptTokens / usage.promptTokens * 100)));\n }\n function safeJsonStringify(value) {\n const seen = /* @__PURE__ */ new WeakSet();\n try {\n return JSON.stringify(\n value,\n (_, v) => {\n if (typeof v === \"bigint\") return v.toString();\n if (v instanceof Error) {\n return { name: v.name, message: v.message, stack: v.stack };\n }\n if (typeof v === \"object\" && v !== null) {\n if (seen.has(v)) return \"[Circular]\";\n seen.add(v);\n }\n return v;\n },\n 2\n ) ?? \"\";\n } catch {\n return String(value);\n }\n }\n function formatMaybeJson(value) {\n if (value == null) return \"\";\n if (typeof value === \"string\") {\n const trimmed = value.trim();\n if (!trimmed) return \"\";\n try {\n return JSON.stringify(JSON.parse(trimmed), null, 2);\n } catch {\n return value;\n }\n }\n return safeJsonStringify(value);\n }\n function formatHHmmss(ms) {\n if (typeof ms !== \"number\" || !Number.isFinite(ms)) return null;\n const d = new Date(ms);\n if (Number.isNaN(d.getTime())) return null;\n const hh = String(d.getHours()).padStart(2, \"0\");\n const mm = String(d.getMinutes()).padStart(2, \"0\");\n const ss = String(d.getSeconds()).padStart(2, \"0\");\n return `${hh}:${mm}:${ss}`;\n }\n const time = (() => formatHHmmss(trace.createdAt))();\n const hasError = trace.error != null;\n `AI: ${trace.name}`;\n const oneLine = trace.name;\n const mainPromptSimilarityPct = (() => {\n if (trace.name !== \"main\") return null;\n const current = getPromptForDiff(trace);\n const baseline = getPromptForDiff(compareTrace);\n if (current == null || baseline == null) return null;\n return similarityPercent(current, baseline);\n })();\n const mainCachedTokensPct = (() => {\n if (trace.name !== \"main\") return null;\n return cachedPromptTokensPercent(trace);\n })();\n const CACHE_OK_THRESHOLD_PCT = 90;\n const CACHE_MISS_SIMILARITY_THRESHOLD_PCT = 90;\n const mainPromptCacheLabel = (() => {\n if (trace.name !== \"main\") return null;\n if (mainCachedTokensPct != null) {\n const cacheMiss = mainCachedTokensPct === 0 && mainPromptSimilarityPct != null && mainPromptSimilarityPct >= CACHE_MISS_SIMILARITY_THRESHOLD_PCT;\n if (cacheMiss) {\n return {\n text: \"0% tokens cached. Cache miss\",\n className: \"text-red-200\"\n };\n }\n const ok = mainCachedTokensPct >= CACHE_OK_THRESHOLD_PCT;\n return ok ? {\n text: `${mainCachedTokensPct}% tokens cached`,\n className: \"text-rc-gray-400\"\n } : {\n text: `${mainCachedTokensPct}% tokens cached - move dynamic parts of prompt to the bottom`,\n className: \"text-red-200\"\n };\n }\n if (mainPromptSimilarityPct != null) {\n const ok = mainPromptSimilarityPct >= CACHE_OK_THRESHOLD_PCT;\n return ok ? {\n text: `${mainPromptSimilarityPct}%`,\n className: \"text-rc-gray-400\"\n } : {\n text: `${mainPromptSimilarityPct}% cached - move dynamic parts of prompt to the bottom`,\n className: \"text-red-200\"\n };\n }\n return null;\n })();\n const cacheDebugPayload = (() => {\n if (trace.name !== \"main\") return null;\n const currentPrompt = getPromptForDiff(trace);\n const baselinePrompt = getPromptForDiff(compareTrace);\n const promptSimilarity = currentPrompt != null && baselinePrompt != null ? similarityDetails(currentPrompt, baselinePrompt) : null;\n const usage = trace.llmUsage ?? null;\n const cachedTokensPct = mainCachedTokensPct;\n const cacheMiss = cachedTokensPct === 0 && promptSimilarity?.similarityPct != null && promptSimilarity.similarityPct >= CACHE_MISS_SIMILARITY_THRESHOLD_PCT;\n const labelSource = cachedTokensPct != null ? \"llmUsage\" : mainPromptSimilarityPct != null ? \"promptSimilarityFallback\" : \"none\";\n return {\n version: 1,\n labelSource,\n thresholds: {\n okPct: CACHE_OK_THRESHOLD_PCT,\n cacheMissSimilarityPct: CACHE_MISS_SIMILARITY_THRESHOLD_PCT\n },\n inputs: {\n llmUsage: usage,\n currentRenderedPrompt: currentPrompt != null ? stringPreview(currentPrompt) : null,\n baselineRenderedPrompt: baselinePrompt != null ? stringPreview(baselinePrompt) : null\n },\n computed: {\n cachedTokensPct,\n promptSimilarityPct: promptSimilarity?.similarityPct ?? null,\n promptSimilarity,\n cacheMiss\n },\n decision: { text: mainPromptCacheLabel?.text ?? null }\n };\n })();\n (() => {\n if (!cacheDebugPayload) return \"{}\";\n return safeJsonStringify(cacheDebugPayload);\n })();\n formatMaybeJson(trace.response);\n (() => {\n const raw = trace.response;\n if (typeof raw !== \"string\") return \"json\";\n try {\n JSON.parse(raw);\n return \"json\";\n } catch {\n return \"text\";\n }\n })();\n trace.stringifiedConversation ?? \"\";\n formatMaybeJson(trace.renderedPrompt);\n formatMaybeJson(trace.receivedPrompt);\n formatMaybeJson(trace.receivedContext);\n formatMaybeJson(trace.schema);\n trace.error ? safeJsonStringify(trace.error) : \"\";\n function toCopyablePrompt(value) {\n if (value == null) return \"\";\n if (typeof value === \"string\") return value;\n return safeJsonStringify(value);\n }\n toCopyablePrompt(trace.receivedPrompt);\n toCopyablePrompt(trace.renderedPrompt);\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n $$renderer3.push(`<button type=\"button\" class=\"flex w-full cursor-pointer select-text items-baseline gap-2 truncate rounded-md bg-transparent px-2 py-1 text-left text-sm text-rc-gray-200 hover:bg-rc-gray-800/40\">`);\n Icon($$renderer3, {\n name: hasError ? \"close\" : \"checkmark\",\n width: 18,\n height: 18,\n class: hasError ? \"self-center text-red-400\" : \"self-center text-rc-green-200\"\n });\n $$renderer3.push(`<!----> `);\n if (time) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span class=\"text-[13px] leading-none text-rc-gray-400\">${escape_html(time)}</span>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--> <span${attr_class(clsx(hasError ? \"text-red-200\" : \"\"))}>AI: ${escape_html(oneLine)}</span> `);\n if (mainPromptCacheLabel != null) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span${attr_class(`shrink-0 text-xs ${mainPromptCacheLabel.className}`)}><span class=\"cursor-pointer\" title=\"Show prompt-cache calc JSON\">${escape_html(mainPromptCacheLabel.text)}</span></span>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--></button> `);\n {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--> `);\n {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]-->`);\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n });\n}\nexport {\n ChatApiCallTrace as C,\n ChatConversationalTrace as a,\n ChatStepTrace as b\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ContextEditor-DwSmZH0Y.js","sources":["../../../.svelte-kit/adapter-node/chunks/ContextEditor.js"],"sourcesContent":["import { s as stringify } from \"./index2.js\";\nimport \"js-yaml\";\nimport { P as Panel } from \"./edit-workspace-context.js\";\nimport { o as onDestroy } from \"./index-server.js\";\nfunction ContextEditor($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let editor = null;\n let model = null;\n let editorDisposables = [];\n let {\n context,\n onContextChanged,\n class: className,\n suppressErrors = false,\n defaultFormat = \"yaml\",\n hideHeader = false\n } = $$props;\n onDestroy(() => {\n for (const d of editorDisposables) {\n try {\n d.dispose();\n } catch {\n }\n }\n editorDisposables = [];\n const toDisposeModel = model;\n model = null;\n try {\n if (editor) {\n try {\n editor.setModel(null);\n } catch {\n }\n editor.dispose();\n }\n } finally {\n editor = null;\n }\n try {\n toDisposeModel?.dispose();\n } catch {\n }\n });\n Panel($$renderer2, {\n class: `min-h-0 overflow-hidden ${stringify(\n // Keep model language in sync without recreating the editor\n // Update value only when actual text differs to avoid caret jumps\n // If the next canonical text equals the last user-emitted serialization,\n // skip setting the value to preserve caret/selection.\n className\n )}`,\n children: ($$renderer3) => {\n $$renderer3.push(`<div class=\"h-full min-h-0 w-full\"></div>`);\n },\n $$slots: { default: true }\n });\n });\n}\nexport {\n ContextEditor as C\n};\n"],"names":[],"mappings":";;;;;AAIA,SAAS,aAAa,CAAC,UAAU,EAAE,OAAO,EAAE;AAC5C,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,KAAK;AACxC,IAAI,IAAI,MAAM,GAAG,IAAI;AACrB,IAAI,IAAI,KAAK,GAAG,IAAI;AACpB,IAAI,IAAI,iBAAiB,GAAG,EAAE;AAC9B,IAAI,IAAI;AACR,MAAM,OAAO;AACb,MAAM,gBAAgB;AACtB,MAAM,KAAK,EAAE,SAAS;AACtB,MAAM,cAAc,GAAG,KAAK;AAC5B,MAAM,aAAa,GAAG,MAAM;AAC5B,MAAM,UAAU,GAAG;AACnB,KAAK,GAAG,OAAO;AACf,IAAI,SAAS,CAAC,MAAM;AACpB,MAAM,KAAK,MAAM,CAAC,IAAI,iBAAiB,EAAE;AACzC,QAAQ,IAAI;AACZ,UAAU,CAAC,CAAC,OAAO,EAAE;AACrB,QAAQ,CAAC,CAAC,MAAM;AAChB,QAAQ;AACR,MAAM;AACN,MAAM,iBAAiB,GAAG,EAAE;AAC5B,MAAM,MAAM,cAAc,GAAG,KAAK;AAClC,MAAM,KAAK,GAAG,IAAI;AAClB,MAAM,IAAI;AACV,QAAQ,IAAI,MAAM,EAAE;AACpB,UAAU,IAAI;AACd,YAAY,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;AACjC,UAAU,CAAC,CAAC,MAAM;AAClB,UAAU;AACV,UAAU,MAAM,CAAC,OAAO,EAAE;AAC1B,QAAQ;AACR,MAAM,CAAC,SAAS;AAChB,QAAQ,MAAM,GAAG,IAAI;AACrB,MAAM;AACN,MAAM,IAAI;AACV,QAAQ,cAAc,EAAE,OAAO,EAAE;AACjC,MAAM,CAAC,CAAC,MAAM;AACd,MAAM;AACN,IAAI,CAAC,CAAC;AACN,IAAI,KAAK,CAAC,WAAW,EAAE;AACvB,MAAM,KAAK,EAAE,CAAC,wBAAwB,EAAE,SAAS;AACjD;AACA;AACA;AACA;AACA,QAAQ;AACR,OAAO,CAAC,CAAC;AACT,MAAM,QAAQ,EAAE,CAAC,WAAW,KAAK;AACjC,QAAQ,WAAW,CAAC,IAAI,CAAC,CAAC,yCAAyC,CAAC,CAAC;AACrE,MAAM,CAEF,CAAC,CAAC;AACN,EAAE,CAAC,CAAC;AACJ;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Icon-DdOrLZIU.js","sources":["../../../.svelte-kit/adapter-node/chunks/Icon.js"],"sourcesContent":["import { a as attr, b as attr_class, j as clsx } from \"./index2.js\";\nfunction html(value) {\n var html2 = String(value ?? \"\");\n var open = \"<!---->\";\n return open + html2 + \"<!---->\";\n}\nfunction Icon($$renderer, $$props) {\n let { name, width = 25, height = 25, class: className = \"\" } = $$props;\n const icons = {\n paperclip: {\n viewBox: \"0 0 32 32\",\n path: '<image href=\"/ui/paperclip.svg\" width=\"32\" height=\"32\" />'\n },\n send: {\n viewBox: \"0 0 32 32\",\n path: '<image href=\"/ui/send.svg\" width=\"32\" height=\"32\" />'\n },\n sparkles: {\n viewBox: \"0 0 24 24\",\n path: '<path d=\"M12 2.75l1.18 3.46L16.5 7.4l-3.32 1.19L12 12l-1.18-3.41L7.5 7.4l3.32-1.19L12 2.75z\" /><path d=\"M18.25 11.5l.74 2.11 2.11.74-2.11.74-.74 2.11-.74-2.11-2.11-.74 2.11-.74.74-2.11z\" /><path d=\"M7 13.25l.96 2.79 2.79.96-2.79.96L7 20.75l-.96-2.79-2.79-.96 2.79-.96L7 13.25z\" />'\n },\n checkmark: {\n viewBox: \"0 0 24 24\",\n path: '<path d=\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\" />'\n },\n \"chevron-down\": {\n viewBox: \"0 0 24 24\",\n path: '<path d=\"M7.41 8.59L12 13.17l4.59-4.58L18 10l-6 6-6-6 1.41-1.41z\" />'\n },\n \"chevron-up\": {\n viewBox: \"0 0 24 24\",\n path: '<path d=\"M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6 1.41 1.41z\" />'\n },\n \"chevron-left\": {\n viewBox: \"0 0 24 24\",\n path: '<path d=\"M14.41 7.41L13 6l-6 6 6 6 1.41-1.41L9.83 12z\" />'\n },\n \"chevron-right\": {\n viewBox: \"0 0 24 24\",\n path: '<path d=\"M9.59 16.59L11 18l6-6-6-6-1.41 1.41L14.17 12z\" />'\n },\n log: {\n viewBox: \"0 0 24 24\",\n path: '<path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm-1-6h2v2h-2v-2zm0-4h2v3h-2v-3z\" />'\n },\n close: {\n viewBox: \"0 0 24 24\",\n path: `<path d=\"M6 6L18 18\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"/>\n\t\t\t<path d=\"M18 6L6 18\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"/>`\n },\n copy: {\n viewBox: \"0 0 24 24\",\n path: '<rect x=\"4\" y=\"4\" width=\"11\" height=\"11\" rx=\"2\" ry=\"2\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linejoin=\"round\" /><rect x=\"9\" y=\"9\" width=\"11\" height=\"11\" rx=\"2\" ry=\"2\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linejoin=\"round\" />'\n },\n undo: {\n viewBox: \"0 0 24 24\",\n path: '<path d=\"M12 5V1L7 6l5 5V7c3.31 0 6 2.69 6 6 0 1.09-.29 2.11-.8 3l1.46 1.46C19.54 16.14 20 14.62 20 13c0-4.42-3.58-8-8-8z\" />'\n }\n };\n let icon = icons[name];\n if (icon) {\n $$renderer.push(\"<!--[-->\");\n $$renderer.push(`<svg xmlns=\"http://www.w3.org/2000/svg\"${attr(\"width\", width)}${attr(\"height\", height)}${attr(\"viewBox\", icon.viewBox)} fill=\"currentColor\" stroke-width=\"1\"${attr_class(clsx(className))} aria-hidden=\"true\">${html(icon.path)}</svg>`);\n } else {\n $$renderer.push(\"<!--[!-->\");\n $$renderer.push(`<div class=\"flex h-xl w-xl items-center justify-center rounded bg-gray-200 text-xs text-gray-500\">?</div>`);\n }\n $$renderer.push(`<!--]-->`);\n}\nexport {\n Icon as I,\n html as h\n};\n"],"names":[],"mappings":";;AACA,SAAS,IAAI,CAAC,KAAK,EAAE;AACrB,EAAE,IAAI,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;AACjC,EAAE,IAAI,IAAI,GAAG,SAAS;AACtB,EAAE,OAAO,IAAI,GAAG,KAAK,GAAG,SAAS;AACjC;AACA,SAAS,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE;AACnC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,KAAK,EAAE,SAAS,GAAG,EAAE,EAAE,GAAG,OAAO;AACxE,EAAE,MAAM,KAAK,GAAG;AAChB,IAAI,SAAS,EAAE;AACf,MAAM,OAAO,EAAE,WAAW;AAC1B,MAAM,IAAI,EAAE;AACZ,KAAK;AACL,IAAI,IAAI,EAAE;AACV,MAAM,OAAO,EAAE,WAAW;AAC1B,MAAM,IAAI,EAAE;AACZ,KAAK;AACL,IAAI,QAAQ,EAAE;AACd,MAAM,OAAO,EAAE,WAAW;AAC1B,MAAM,IAAI,EAAE;AACZ,KAAK;AACL,IAAI,SAAS,EAAE;AACf,MAAM,OAAO,EAAE,WAAW;AAC1B,MAAM,IAAI,EAAE;AACZ,KAAK;AACL,IAAI,cAAc,EAAE;AACpB,MAAM,OAAO,EAAE,WAAW;AAC1B,MAAM,IAAI,EAAE;AACZ,KAAK;AACL,IAAI,YAAY,EAAE;AAClB,MAAM,OAAO,EAAE,WAAW;AAC1B,MAAM,IAAI,EAAE;AACZ,KAAK;AACL,IAAI,cAAc,EAAE;AACpB,MAAM,OAAO,EAAE,WAAW;AAC1B,MAAM,IAAI,EAAE;AACZ,KAAK;AACL,IAAI,eAAe,EAAE;AACrB,MAAM,OAAO,EAAE,WAAW;AAC1B,MAAM,IAAI,EAAE;AACZ,KAAK;AACL,IAAI,GAAG,EAAE;AACT,MAAM,OAAO,EAAE,WAAW;AAC1B,MAAM,IAAI,EAAE;AACZ,KAAK;AACL,IAAI,KAAK,EAAE;AACX,MAAM,OAAO,EAAE,WAAW;AAC1B,MAAM,IAAI,EAAE,CAAC;AACb,yFAAyF;AACzF,KAAK;AACL,IAAI,IAAI,EAAE;AACV,MAAM,OAAO,EAAE,WAAW;AAC1B,MAAM,IAAI,EAAE;AACZ,KAAK;AACL,IAAI,IAAI,EAAE;AACV,MAAM,OAAO,EAAE,WAAW;AAC1B,MAAM,IAAI,EAAE;AACZ;AACA,GAAG;AACH,EAAE,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;AACxB,EAAE,IAAI,IAAI,EAAE;AACZ,IAAI,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC;AAC/B,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,uCAAuC,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,qCAAqC,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;AAC7P,EAAE,CAAC,MAAM;AACT,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAChC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,yGAAyG,CAAC,CAAC;AAChI,EAAE;AACF,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC7B;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"_layout.svelte-BxARmfhE.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/edit/_agent_/_layout.svelte.js"],"sourcesContent":["import { s as stringify, a as attr, e as ensure_array_like, b as attr_class } from \"../../../../chunks/index2.js\";\nimport { P as Panel, g as getEditWorkspaceContext, s as setEditWorkspaceContext } from \"../../../../chunks/edit-workspace-context.js\";\nimport { B as Button } from \"../../../../chunks/Button.js\";\nimport { D as Dropdown } from \"../../../../chunks/Dropdown.js\";\nimport { I as Icon } from \"../../../../chunks/Icon.js\";\nimport { T as Tabs, a as Tab } from \"../../../../chunks/Tab.js\";\nimport { M as Modal } from \"../../../../chunks/Modal.js\";\nimport { W as escape_html } from \"../../../../chunks/context.js\";\nimport \"clsx\";\nimport { o as onDestroy } from \"../../../../chunks/index-server.js\";\nimport { p as page, g as goto, r as replaceState } from \"../../../../chunks/index3.js\";\nimport { p as public_env } from \"../../../../chunks/shared-server.js\";\nimport { t as trpc } from \"../../../../chunks/trpc-client.js\";\nimport \"nunjucks\";\nimport { A as AgentSidebar } from \"../../../../chunks/AgentSidebar.js\";\nimport { g as getAgentsContext } from \"../../../../chunks/agents-context.js\";\nimport { C as ContextEditor } from \"../../../../chunks/ContextEditor.js\";\nimport { c as clearChatContent, a as clearLogs } from \"../../../../chunks/log-content.svelte.js\";\nfunction PopoverModal($$renderer, $$props) {\n let { title, onClose, children } = $$props;\n $$renderer.push(`<div class=\"absolute inset-0 z-20 bg-black/20\"></div> <div class=\"absolute inset-2 z-30 flex min-w-0 flex-col overflow-hidden rounded-lg border border-rc-gray-600 bg-rc-gray-900 shadow-2xl\"><div class=\"flex items-center justify-between border-b border-rc-gray-700 px-3 py-2\"><button type=\"button\" class=\"inline-flex h-7 w-7 items-center justify-center rounded-md text-rc-gray-200 hover:bg-rc-gray-700\" aria-label=\"Close\" title=\"Close\">X</button> <div class=\"text-sm font-semibold text-rc-gray-200\">${escape_html(title)}</div> <div class=\"w-7\"></div></div> <div class=\"flex min-h-0 flex-1 flex-col overflow-hidden\">`);\n children($$renderer);\n $$renderer.push(`<!----></div></div>`);\n}\nclass WebSocketClient {\n constructor(wsUrl) {\n this.wsUrl = wsUrl;\n }\n ws = null;\n openHandler = null;\n closeHandler = null;\n errorHandler = null;\n messageHandler = null;\n retries = 0;\n maxRetries = 5;\n retryDelay = 500;\n retryTimeout = null;\n isOpen = false;\n isDestroyed = false;\n agentsLoaded = false;\n init = () => {\n if (this.isOpen) {\n return;\n }\n this.agentsLoaded = false;\n console.log(`Initializing websocket connection with [${this.wsUrl}]`);\n try {\n this.ws = new WebSocket(this.wsUrl);\n } catch (e) {\n this.retryConnect();\n return;\n }\n this.isDestroyed = false;\n this.ws.onmessage = (event) => {\n const message = JSON.parse(event.data);\n if (message.channel === \"error\") {\n this.errorHandler?.(message.message);\n } else if (message.channel === \"app-events\") {\n console.log(\"MSG:\", message.event.type);\n if (message.event.type === \"agents-loaded\") {\n this.agentsLoaded = true;\n }\n } else if (message.channel === \"log\") {\n console.log(`MSG: log [${message.message.severity}]`, message.message.message);\n } else if (message.channel === \"api-call-trace\") {\n console.log(\n \"MSG: api-call-trace\",\n message.trace?.operationName,\n message.trace?.method,\n message.trace?.path\n );\n } else if (message.channel === \"conversational-trace\") {\n console.log(\n \"MSG: conversational-trace\",\n message.trace?.eventName,\n message.trace?.role,\n message.trace?.medium\n );\n }\n this.messageHandler?.(message);\n };\n this.ws.onerror = (error) => {\n console.error(\"Websocket error:\", error);\n this.ws?.close();\n this.retryConnect();\n };\n this.ws.onclose = () => {\n console.log(\"Websocket closed\");\n this.isOpen = false;\n this.retryConnect();\n };\n this.ws.onopen = () => {\n this.retries = 0;\n this.isOpen = true;\n if (this.retryTimeout) {\n clearTimeout(this.retryTimeout);\n }\n this.openHandler?.();\n console.log(\"Websocket connected\");\n };\n };\n destroy = () => {\n this.isDestroyed = true;\n this.ws?.close();\n };\n onOpen = (handler) => {\n this.openHandler = handler;\n if (this.isOpen) {\n handler();\n }\n };\n onClose = (handler) => {\n this.closeHandler = handler;\n if (!this.isOpen) {\n handler();\n }\n };\n onError = (handler) => {\n this.errorHandler = handler;\n };\n onMessage = (handler) => {\n this.messageHandler = handler;\n };\n sendMessage = (message) => {\n if (message.channel === \"app-events\") ;\n this.ws?.send(JSON.stringify(message));\n };\n isReady = () => this.isOpen && this.agentsLoaded;\n retryConnect = () => {\n if (this.isDestroyed) return;\n if (!this.isOpen && this.retries < this.maxRetries) {\n this.retries++;\n this.init();\n this.retryTimeout = setTimeout(this.retryConnect, this.retryDelay);\n } else {\n this.errorHandler?.(\"WebSocket Error, please reload the browser\");\n this.closeHandler?.();\n }\n };\n}\nconst wsHost = public_env.PUBLIC_WS_HOST ?? \"ws://localhost:8080\";\nconst wsClient = new WebSocketClient(wsHost);\nfunction SchemaEditor($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let editor = null;\n let model = null;\n let disposables = [];\n let { class: className } = $$props;\n onDestroy(() => {\n for (const d of disposables) {\n try {\n d.dispose();\n } catch {\n }\n }\n disposables = [];\n const toDisposeModel = model;\n model = null;\n try {\n if (editor) {\n try {\n editor.setModel(null);\n } catch {\n }\n editor.dispose();\n }\n } finally {\n editor = null;\n }\n try {\n toDisposeModel?.dispose();\n } catch {\n }\n });\n Panel($$renderer2, {\n class: `overflow-hidden ${stringify(className)}`,\n children: ($$renderer3) => {\n $$renderer3.push(`<div class=\"flex h-full flex-col\"><div class=\"h-full w-full\"></div></div>`);\n }\n });\n });\n}\nfunction PromptEditor($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let {\n class: className,\n showSchemaButton,\n onSchemaClick,\n readOnly = false,\n showPreviewToggle = true,\n preview = null\n } = $$props;\n let internalPreview = false;\n const effectivePreview = preview !== null ? preview : internalPreview;\n Panel($$renderer2, {\n class: `relative overflow-hidden ${stringify(className)}`,\n children: ($$renderer3) => {\n $$renderer3.push(`<div class=\"prompt-editor flex h-full flex-col\"><div class=\"relative flex-1\"><div class=\"h-full w-full\"></div> `);\n if (showPreviewToggle && !readOnly) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<label class=\"absolute right-6 top-1 z-10 inline-flex cursor-pointer items-center gap-2 bg-transparent text-rc-gray-100 focus:outline-none focus:ring-0\"><input type=\"checkbox\"${attr(\"checked\", effectivePreview, true)} class=\"checkbox svelte-1br1z62\"/> <span>Preview</span></label>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--></div> `);\n if (showSchemaButton && onSchemaClick) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<div class=\"flex justify-end\">`);\n Button($$renderer3, {\n variant: \"secondary\",\n onclick: onSchemaClick,\n class: \"absolute bottom-2 right-6 !font-medium\",\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->Schema`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----></div>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--></div>`);\n }\n });\n });\n}\nfunction ModeAsyncPopoverContent($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n const { state: workspace, actions } = getEditWorkspaceContext();\n let popoverTab = \"results\";\n if (workspace.edit.popover) {\n $$renderer2.push(\"<!--[-->\");\n const popover = workspace.edit.popover;\n $$renderer2.push(`<div class=\"border-b border-rc-gray-700 px-2 py-1\">`);\n Tabs($$renderer2, {\n value: popoverTab,\n ariaLabel: \"Popover tabs\",\n onChange: ({ value }) => popoverTab = value,\n children: ($$renderer3) => {\n Tab($$renderer3, {\n value: \"results\",\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->Results`);\n }\n });\n $$renderer3.push(`<!----> `);\n Tab($$renderer3, {\n value: \"raw\",\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->Raw`);\n }\n });\n $$renderer3.push(`<!---->`);\n },\n $$slots: { default: true }\n });\n $$renderer2.push(`<!----></div> <div class=\"min-h-0 flex-1 overflow-auto p-3\">`);\n if (popover.status === \"loading\") {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`<div class=\"flex h-full items-center justify-center text-sm text-rc-gray-300\">Loading</div>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n if (popover.status === \"error\") {\n $$renderer2.push(\"<!--[-->\");\n if (popoverTab === \"raw\") {\n $$renderer2.push(\"<!--[-->\");\n const raw = typeof popover.data?.raw === \"string\" ? popover.data.raw : popover.error;\n $$renderer2.push(`<pre class=\"whitespace-pre-wrap font-mono text-xs text-rc-gray-200\">${escape_html(raw || \"—\")}</pre>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n $$renderer2.push(`<div class=\"flex h-full flex-col gap-3\"><div class=\"text-sm text-red-400\">${escape_html(popover.error)}</div></div>`);\n }\n $$renderer2.push(`<!--]-->`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n const data = popover.data;\n if (popoverTab === \"raw\") {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`<pre class=\"whitespace-pre-wrap font-mono text-xs text-rc-gray-200\">${escape_html(typeof data?.raw === \"string\" ? data.raw : \"—\")}</pre>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n if (popover.kind === \"analyze\") {\n $$renderer2.push(\"<!--[-->\");\n const totalCalls = typeof data?.parallelCalls === \"number\" && Number.isFinite(data.parallelCalls) ? data.parallelCalls : 10;\n $$renderer2.push(`<div class=\"mb-3 text-sm font-semibold text-rc-gray-100\">${escape_html(data?.title ?? \"Analysis\")}</div> `);\n if (Array.isArray(data?.rationales) && data.rationales.length > 0) {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`<div class=\"mb-4\"><div class=\"mb-2 text-xs font-semibold text-rc-gray-400\">Why this response</div> <div class=\"flex flex-col gap-2\"><!--[-->`);\n const each_array = ensure_array_like(data.rationales);\n for (let i = 0, $$length = each_array.length; i < $$length; i++) {\n let r = each_array[i];\n $$renderer2.push(`<div class=\"rounded-md border border-rc-gray-700 bg-rc-gray-900/40 px-3 py-2\"><div class=\"flex items-center justify-between text-xs text-rc-gray-400\"><div>Analysis ${escape_html(r.attempt ?? i + 1)}</div> `);\n if (r.status === \"error\") {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`<div class=\"text-red-400\">Error</div>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n }\n $$renderer2.push(`<!--]--></div> <div class=\"whitespace-pre-wrap break-words text-sm text-rc-gray-100\">${escape_html(r.text)}</div></div>`);\n }\n $$renderer2.push(`<!--]--></div></div>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n }\n $$renderer2.push(`<!--]--> `);\n if (Array.isArray(data?.quotes) && data.quotes.length > 0) {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`<div class=\"flex flex-col gap-2\"><!--[-->`);\n const each_array_1 = ensure_array_like(data.quotes);\n for (let i = 0, $$length = each_array_1.length; i < $$length; i++) {\n let q = each_array_1[i];\n $$renderer2.push(`<button type=\"button\" class=\"rounded-md border border-rc-gray-700 bg-rc-gray-900/40 px-3 py-2 text-left hover:border-rc-gray-500\"><div class=\"flex items-center justify-between text-xs text-rc-gray-400\"><div>Quote ${escape_html(i + 1)}</div> <div>x${escape_html(q.count)}/${escape_html(totalCalls)}</div></div> <div class=\"whitespace-pre-wrap break-words text-sm text-rc-gray-100\">${escape_html(q.quote)}</div></button>`);\n }\n $$renderer2.push(`<!--]--></div>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n $$renderer2.push(`<div class=\"text-sm text-rc-gray-300\">No quotes returned.</div>`);\n }\n $$renderer2.push(`<!--]-->`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n $$renderer2.push(`<div class=\"mb-3 text-sm font-semibold text-rc-gray-100\">${escape_html(data?.title ?? \"Prompt issues\")}</div> `);\n if (Array.isArray(data?.issues) && data.issues.length > 0) {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`<div class=\"flex flex-col gap-3\"><!--[-->`);\n const each_array_2 = ensure_array_like(data.issues);\n for (let i = 0, $$length = each_array_2.length; i < $$length; i++) {\n let issue = each_array_2[i];\n $$renderer2.push(`<div class=\"rounded-md border border-rc-gray-700 bg-rc-gray-900/40 p-3\"><div class=\"flex items-start justify-between gap-3\"><div class=\"text-xs font-semibold text-rc-gray-400\">Issue ${escape_html(i + 1)}</div> <div class=\"text-xs text-rc-gray-500\">${escape_html(issue.type)}</div></div> <div class=\"mt-1 whitespace-pre-wrap break-words text-sm text-rc-gray-100\">${escape_html(issue.reason)}</div> `);\n if (issue.contradictingQuotes && issue.contradictingQuotes.length > 0) {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`<div class=\"mt-3 flex flex-col gap-2\"><!--[-->`);\n const each_array_3 = ensure_array_like(issue.contradictingQuotes);\n for (let $$index_2 = 0, $$length2 = each_array_3.length; $$index_2 < $$length2; $$index_2++) {\n let q = each_array_3[$$index_2];\n $$renderer2.push(`<button type=\"button\" class=\"rounded-md border border-rc-gray-700 bg-rc-gray-900/40 px-3 py-2 text-left hover:border-rc-gray-500\"><div class=\"whitespace-pre-wrap break-words text-sm text-rc-gray-100\">${escape_html(q)}</div></button>`);\n }\n $$renderer2.push(`<!--]--></div>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n }\n $$renderer2.push(`<!--]--></div>`);\n }\n $$renderer2.push(`<!--]--></div>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n $$renderer2.push(`<div class=\"text-sm text-rc-gray-300\">No issues found.</div>`);\n }\n $$renderer2.push(`<!--]-->`);\n }\n $$renderer2.push(`<!--]-->`);\n }\n $$renderer2.push(`<!--]-->`);\n }\n $$renderer2.push(`<!--]-->`);\n }\n $$renderer2.push(`<!--]--></div>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n }\n $$renderer2.push(`<!--]-->`);\n });\n}\nfunction ModeContextPopoverContent($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n const tmp = getEditWorkspaceContext(), workspace = tmp.state, actions = tmp.actions;\n function handleContextChanged(newContext) {\n workspace.context = newContext;\n actions.sendAppEvent({ type: \"context-updated\", context: newContext });\n }\n $$renderer2.push(`<div class=\"min-h-0 flex-1 overflow-hidden p-3\">`);\n ContextEditor($$renderer2, {\n class: \"h-full min-h-0 border-thin border-rc-gray-650 shadow-inner-white-soft backdrop-blur-3xl focus:outline-none focus:ring-0\",\n context: workspace.context,\n onContextChanged: handleContextChanged,\n suppressErrors: true\n });\n $$renderer2.push(`<!----></div>`);\n });\n}\nfunction safeDecodeURIComponent(raw) {\n try {\n return decodeURIComponent(raw);\n } catch {\n return raw;\n }\n}\nfunction parseEditPath(pathname) {\n const cleaned = String(pathname || \"\").split(\"?\")[0]?.split(\"#\")[0] ?? \"\";\n const parts = cleaned.split(\"/\").filter(Boolean);\n if (parts[0] !== \"edit\") return { agentId: null, tab: null };\n if (parts.length === 1) return { agentId: null, tab: null };\n const agentId = safeDecodeURIComponent(parts[1] ?? \"\");\n const maybeTab = parts[2] ?? null;\n if (!maybeTab) return { agentId, tab: \"roleplay\" };\n if (maybeTab === \"roleplay\") return { agentId, tab: \"roleplay\" };\n if (maybeTab === \"tests\") return { agentId, tab: \"tests\" };\n if (maybeTab === \"configure\") return { agentId, tab: \"configure\" };\n return { agentId, tab: null };\n}\nfunction initEditState(input) {\n const parsed = parseEditPath(input.pathname);\n const tab = parsed.tab ?? \"roleplay\";\n return {\n tab,\n popover: null,\n highlights: null,\n requestSeq: 0\n };\n}\nfunction openPopover(state, input) {\n const requestSeq = state.requestSeq + 1;\n return {\n ...state,\n requestSeq,\n popover: {\n kind: input.kind,\n status: \"loading\",\n requestId: requestSeq\n },\n highlights: null\n };\n}\nfunction setPopoverReady(state, input) {\n if (!state.popover) return state;\n if (state.popover.requestId !== input.requestId) return state;\n return {\n ...state,\n popover: { ...state.popover, status: \"ready\", data: input.data, error: void 0 }\n };\n}\nfunction setPopoverError(state, input) {\n if (!state.popover) return state;\n if (state.popover.requestId !== input.requestId) return state;\n return {\n ...state,\n popover: {\n ...state.popover,\n status: \"error\",\n error: String(input.error || \"Unknown error\"),\n data: input.data\n }\n };\n}\nfunction closePopover(state) {\n return {\n ...state,\n popover: null,\n highlights: null\n };\n}\nfunction setHighlightQuotes(state, quotes) {\n return {\n ...state,\n highlights: {\n quotes: quotes ?? [],\n focusQuote: null,\n focusNonce: 0\n }\n };\n}\nfunction focusQuote(state, quote) {\n const q = String(quote || \"\");\n if (!q) return state;\n const prev = state.highlights ?? { quotes: [], focusQuote: null, focusNonce: 0 };\n return {\n ...state,\n highlights: {\n ...prev,\n focusQuote: q,\n focusNonce: (prev.focusNonce ?? 0) + 1\n }\n };\n}\nfunction _layout($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let { params, children } = $$props;\n const { onError } = getAgentsContext();\n let agents = [];\n const dec = (s) => {\n try {\n return s ? decodeURIComponent(s) : \"\";\n } catch {\n return s || \"\";\n }\n };\n const enc = (s) => encodeURIComponent(s);\n function normalizeAgentId(raw) {\n return dec(raw).trim().replace(/^\\/+|\\/+$/g, \"\");\n }\n (() => normalizeAgentId(params.agent))();\n const workspace = {\n agentId: normalizeAgentId(params.agent),\n region: null,\n availableRegions: [],\n defaultRegion: null,\n wsLoaded: false,\n chatReady: false,\n steps: [],\n currentStep: null,\n promptDrafts: {},\n context: null,\n promptContext: null,\n agentStates: [],\n currentState: null,\n contextPopoverOpen: false,\n edit: initEditState({ pathname: page.url.pathname })\n };\n const regionDropdownId = \"region-dropdown\";\n let regionDropdownOpen = false;\n let regionDropdownAnchorEl = null;\n function setQueryParam(key, value) {\n if (typeof window === \"undefined\") return;\n const url = new URL(window.location.href);\n if (value === null) url.searchParams.delete(key);\n else url.searchParams.set(key, value);\n replaceState(url.toString());\n }\n function sendAppEvent(event) {\n wsClient.sendMessage({ channel: \"app-events\", event });\n }\n const activeStepName = workspace.currentStep?.name ?? null;\n const activePromptDraft = (() => {\n const stepName = activeStepName;\n if (!stepName) return \"\";\n const draft = workspace.promptDrafts[stepName];\n return typeof draft === \"string\" ? draft : \"\";\n })();\n Promise.resolve();\n async function flushPromptSave() {\n return;\n }\n const schemaValue = workspace.currentStep?.schema ?? null;\n const hasSchema = !!schemaValue && schemaValue.trim().length > 0;\n let schemaModalOpen = false;\n function openSchemaModal() {\n if (!schemaValue) return;\n schemaModalOpen = true;\n }\n function handleModeTabChange({ value }) {\n if (value === workspace.edit.tab) return;\n void flushPromptSave();\n closeAllPopovers();\n const stepName = page.url.searchParams.get(\"step\");\n const region = page.url.searchParams.get(\"region\");\n const base = `/edit/${enc(workspace.agentId)}/${value}`;\n const qs = new URLSearchParams();\n if (stepName) qs.set(\"step\", stepName);\n if (region) qs.set(\"region\", region);\n qs.size ? `${base}?${qs.toString()}` : base;\n goto();\n }\n const activeTopTab = (() => {\n const head = page.url.pathname.split(\"/\")[1];\n return head === \"traces\" ? \"view\" : head;\n })();\n function handleTopTabChange({ value }) {\n if (value === activeTopTab) return;\n void flushPromptSave();\n closeAllPopovers();\n if (value === \"edit\") return goto();\n if (value === \"view\") return goto(`/view?agent=${enc(workspace.agentId)}`);\n goto();\n }\n function openModePopover(kind) {\n workspace.contextPopoverOpen = false;\n workspace.edit = openPopover(workspace.edit, { kind });\n return workspace.edit.popover?.requestId ?? 0;\n }\n function setModePopoverReady(requestId, data) {\n workspace.edit = setPopoverReady(workspace.edit, { requestId, data });\n }\n function setModePopoverError(requestId, error, data) {\n workspace.edit = setPopoverError(workspace.edit, { requestId, error, data });\n }\n function closeModePopover() {\n workspace.edit = closePopover(workspace.edit);\n }\n function openContextPopover() {\n closeModePopover();\n workspace.contextPopoverOpen = true;\n }\n function closeContextPopover() {\n workspace.contextPopoverOpen = false;\n }\n function toggleContextPopover() {\n if (workspace.contextPopoverOpen) closeContextPopover();\n else openContextPopover();\n }\n function closeAllPopovers() {\n closeModePopover();\n closeContextPopover();\n }\n function popoverTitle(kind) {\n if (kind === \"analyze\") return \"Analyze\";\n return \"Find issues\";\n }\n function setQuotes(quotes) {\n workspace.edit = setHighlightQuotes(workspace.edit, quotes);\n }\n function focusOnQuote(quote) {\n workspace.edit = focusQuote(workspace.edit, quote);\n }\n let promptHighlighter = null;\n let previewEnabled = false;\n function clamp(n, min, max) {\n return Math.max(min, Math.min(max, n));\n }\n function buildQuoteCountsFromIssues(issues) {\n const counts = /* @__PURE__ */ new Map();\n for (const issue of issues || []) {\n for (const raw of issue.contradictingQuotes || []) {\n const q = String(raw || \"\").trim();\n if (!q) continue;\n counts.set(q, (counts.get(q) || 0) + 1);\n }\n }\n return [...counts.entries()].map(([quote, count]) => ({ quote, count: clamp(count, 1, 10) })).sort((a, b) => b.count - a.count || a.quote.localeCompare(b.quote));\n }\n let findIssuesRunning = false;\n async function handleFindIssues() {\n if (findIssuesRunning) return;\n if (!workspace.currentStep) return;\n findIssuesRunning = true;\n const requestId = openModePopover(\"findIssues\");\n try {\n const res = await trpc.tests.findPromptIssues.mutate({\n agent: workspace.agentId,\n step: workspace.currentStep.name,\n prompt: activePromptDraft\n });\n const quoteCounts = buildQuoteCountsFromIssues(res.issues || []);\n if (workspace.edit.popover?.requestId !== requestId) return;\n setQuotes(quoteCounts);\n let raw = null;\n try {\n raw = JSON.stringify(res.raw, null, 2);\n } catch {\n raw = null;\n }\n setModePopoverReady(requestId, {\n title: `Prompt issues — ${workspace.currentStep.name}`,\n issues: res.issues,\n raw\n });\n } catch (e) {\n console.error(e);\n const message = typeof e?.message === \"string\" ? e.message : (() => {\n try {\n return JSON.stringify(e);\n } catch {\n return String(e);\n }\n })();\n setModePopoverError(requestId, message || \"Failed to find issues in this prompt\", {\n title: `Prompt issues failed — ${workspace.currentStep.name}`,\n raw: message\n });\n } finally {\n findIssuesRunning = false;\n }\n }\n function handleAgentClick(agentId) {\n void flushPromptSave();\n closeAllPopovers();\n const stepName = page.url.searchParams.get(\"step\");\n const region = page.url.searchParams.get(\"region\");\n const base = `/edit/${enc(agentId)}/${workspace.edit.tab}`;\n const qs = new URLSearchParams();\n if (stepName) qs.set(\"step\", stepName);\n if (region) qs.set(\"region\", region);\n qs.size ? `${base}?${qs.toString()}` : base;\n goto();\n }\n function handleRegionSelectChange(next) {\n if (!next || next === workspace.region) return;\n void flushPromptSave();\n workspace.region = next;\n setQueryParam(\"region\", next);\n }\n setEditWorkspaceContext({\n state: workspace,\n actions: {\n openPopover: openModePopover,\n setPopoverReady: setModePopoverReady,\n setPopoverError: setModePopoverError,\n closePopover: closeModePopover,\n setHighlightQuotes: setQuotes,\n focusQuote: focusOnQuote,\n openContextPopover,\n closeContextPopover,\n toggleContextPopover,\n sendAppEvent,\n sendChatMessage: (message) => {\n if (!workspace.wsLoaded || !workspace.chatReady) {\n console.warn(\"[roleplay] Ignoring chat message while websocket session is reconnecting\");\n return;\n }\n wsClient.sendMessage({ channel: \"chat\", message });\n },\n flushPromptSave,\n selectState: (stateId) => {\n void flushPromptSave();\n closeAllPopovers();\n workspace.currentState = stateId;\n clearChatContent();\n clearLogs();\n sendAppEvent({\n type: \"select-agent\",\n agent: workspace.agentId,\n state: stateId,\n region: workspace.region\n });\n }\n }\n });\n onDestroy(() => {\n void flushPromptSave();\n promptHighlighter?.dispose();\n promptHighlighter = null;\n });\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n $$renderer3.push(`<div class=\"flex h-screen\">`);\n AgentSidebar($$renderer3, {\n className: \"flex-none\",\n agents,\n currentAgent: workspace.agentId,\n onAgentClick: handleAgentClick\n });\n $$renderer3.push(`<!----> <div class=\"flex h-full min-w-0 flex-1 flex-col bg-rc-gray-980 pb-3 pr-4 pt-2\"><nav class=\"flex flex-none items-center bg-rc-gray-980\"><div class=\"flex w-1/3 justify-start\"></div> <div class=\"flex w-1/3 justify-center\">`);\n Tabs($$renderer3, {\n value: activeTopTab,\n ariaLabel: \"Top tabs\",\n onChange: handleTopTabChange,\n children: ($$renderer4) => {\n Tab($$renderer4, {\n value: \"edit\",\n children: ($$renderer5) => {\n $$renderer5.push(`<!---->Edit`);\n }\n });\n $$renderer4.push(`<!----> `);\n Tab($$renderer4, {\n value: \"view\",\n children: ($$renderer5) => {\n $$renderer5.push(`<!---->View`);\n }\n });\n $$renderer4.push(`<!---->`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----></div> <div class=\"flex w-1/3 items-center justify-end gap-2 pr-2\">`);\n if (workspace.availableRegions.length > 0 && workspace.region) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<span class=\"text-sm text-rc-gray-300\">Region</span> <div>`);\n Button($$renderer3, {\n variant: \"secondary\",\n size: \"small\",\n \"aria-expanded\": regionDropdownOpen,\n \"aria-haspopup\": \"listbox\",\n \"aria-controls\": regionDropdownId,\n onclick: (e) => {\n e.stopPropagation();\n regionDropdownOpen = !regionDropdownOpen;\n },\n class: \"flex w-32 items-center justify-between gap-1 !px-3 !py-1\",\n get el() {\n return regionDropdownAnchorEl;\n },\n set el($$value) {\n regionDropdownAnchorEl = $$value;\n $$settled = false;\n },\n children: ($$renderer4) => {\n $$renderer4.push(`<span class=\"truncate\">${escape_html(workspace.region)}</span> `);\n Icon($$renderer4, {\n name: \"chevron-down\",\n class: \"size-5 text-rc-gray-400 transition-transform duration-200 \" + (regionDropdownOpen ? \"rotate-180\" : \"\")\n });\n $$renderer4.push(`<!---->`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----> `);\n {\n let children2 = function($$renderer4) {\n $$renderer4.push(`<div class=\"mt-1 overflow-hidden rounded-lg border border-rc-gray-110 bg-rc-gray-930 shadow-inner-white-soft backdrop-blur-2xl\" role=\"listbox\" aria-label=\"Region\"><!--[-->`);\n const each_array = ensure_array_like(workspace.availableRegions);\n for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n let r = each_array[$$index];\n Button($$renderer4, {\n variant: \"ghost\",\n size: \"small\",\n role: \"option\",\n \"aria-selected\": r === workspace.region,\n onclick: (e) => {\n e.stopPropagation();\n regionDropdownOpen = false;\n handleRegionSelectChange(r);\n },\n class: `w-full rounded-none py-2 pr-3 text-left backdrop-blur-2xl hover:bg-rc-gray-700 focus:bg-rc-gray-400 ${r === workspace.region ? \"bg-rc-gray-800 text-rc-gray-100\" : \"text-rc-gray-200\"}`,\n children: ($$renderer5) => {\n $$renderer5.push(`<!---->${escape_html(r)}`);\n },\n $$slots: { default: true }\n });\n }\n $$renderer4.push(`<!--]--></div>`);\n };\n Dropdown($$renderer3, {\n id: regionDropdownId,\n open: regionDropdownOpen,\n onClose: () => regionDropdownOpen = false,\n anchorEl: regionDropdownAnchorEl,\n placement: \"bottom-end\",\n offset: [0, 1],\n children: children2\n });\n }\n $$renderer3.push(`<!----></div>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--></div></nav> <div class=\"flex-1 overflow-hidden\"><div class=\"grid h-full w-full grid-cols-[minmax(140px,2fr)_minmax(0,10fr)_minmax(0,11fr)]\">`);\n Panel($$renderer3, {\n class: \"flex h-full min-w-0 flex-col !rounded-none p-0\",\n children: ($$renderer4) => {\n $$renderer4.push(`<div class=\"rc-scroll min-h-0 flex-1 overflow-auto p-2\">`);\n if (!workspace.wsLoaded) {\n $$renderer4.push(\"<!--[-->\");\n $$renderer4.push(`<div class=\"p-2 text-rc-gray-400\">Connecting…</div>`);\n } else {\n $$renderer4.push(\"<!--[!-->\");\n if (workspace.steps.length === 0) {\n $$renderer4.push(\"<!--[-->\");\n $$renderer4.push(`<div class=\"p-2 text-rc-gray-400\">No steps</div>`);\n } else {\n $$renderer4.push(\"<!--[!-->\");\n $$renderer4.push(`<!--[-->`);\n const each_array_1 = ensure_array_like(workspace.steps);\n for (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {\n let step = each_array_1[$$index_1];\n $$renderer4.push(`<button${attr_class(`my-1 w-full rounded-lg px-3 py-2 text-left text-rc-gray-200 hover:bg-rc-gray-700 ${stringify(step.name === workspace.currentStep?.name ? \"bg-rc-gray-600\" : \"bg-transparent\")}`)}><span class=\"block truncate\">${escape_html(step.name)}</span></button>`);\n }\n $$renderer4.push(`<!--]-->`);\n }\n $$renderer4.push(`<!--]-->`);\n }\n $$renderer4.push(`<!--]--></div>`);\n }\n });\n $$renderer3.push(`<!----> <div class=\"flex h-full min-w-0 flex-col\"><div class=\"flex h-14 flex-none items-center justify-between gap-3 border-b border-rc-gray-700 p-2\"><div class=\"min-w-0\"><div class=\"truncate font-semibold text-rc-gray-100\">${escape_html(workspace.currentStep?.name ?? \"Prompt\")}</div></div> <div class=\"flex items-center gap-3\"><label class=\"inline-flex items-center gap-2 text-rc-gray-300\"><input type=\"checkbox\"${attr(\"checked\", previewEnabled, true)}${attr(\"disabled\", !workspace.currentStep, true)} aria-label=\"Preview rendered prompt\" class=\"h-4 w-4 appearance-none rounded border border-rc-gray-300 bg-rc-gray-600 !accent-rc-gray-600 outline-none ring-0 checked:border-rc-gray-200 checked:bg-rc-gray-600 hover:border-rc-gray-200 hover:bg-rc-gray-600 focus:outline-none focus:ring-0 active:border-rc-gray-200 active:bg-rc-gray-600 disabled:cursor-not-allowed disabled:opacity-50\"/> <span>Preview</span></label> `);\n Button($$renderer3, {\n variant: \"secondary\",\n disabled: !workspace.currentStep || findIssuesRunning,\n onclick: handleFindIssues,\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->Find issues`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----></div></div> <div class=\"min-h-0 flex-1\">`);\n if (workspace.currentStep) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<!---->`);\n {\n PromptEditor($$renderer3, {\n class: \"h-full min-w-0 border-thin border-rc-gray-650 bg-rc-gray-800 shadow-inner-white-soft backdrop-blur-3xl focus:outline-none focus:ring-0\",\n agentId: workspace.agentId,\n showSchemaButton: hasSchema,\n onSchemaClick: openSchemaModal,\n showPreviewToggle: false,\n preview: previewEnabled\n });\n }\n $$renderer3.push(`<!---->`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n Panel($$renderer3, {\n class: \"flex h-full min-w-0 items-center justify-center !rounded-none p-4 text-sm text-rc-gray-400\",\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->Select a step to edit its prompt`);\n }\n });\n }\n $$renderer3.push(`<!--]--></div></div> `);\n Panel($$renderer3, {\n class: \"relative flex h-full min-w-0 flex-col overflow-hidden !rounded-none p-0\",\n children: ($$renderer4) => {\n $$renderer4.push(`<div class=\"border-b border-rc-gray-700 p-2\">`);\n Tabs($$renderer4, {\n value: workspace.edit.tab,\n ariaLabel: \"Mode tabs\",\n onChange: handleModeTabChange,\n children: ($$renderer5) => {\n Tab($$renderer5, {\n value: \"roleplay\",\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->Roleplay`);\n }\n });\n $$renderer5.push(`<!----> `);\n Tab($$renderer5, {\n value: \"tests\",\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->Tests`);\n }\n });\n $$renderer5.push(`<!----> `);\n if (workspace.defaultRegion !== null) {\n $$renderer5.push(\"<!--[-->\");\n Tab($$renderer5, {\n value: \"configure\",\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->Configure`);\n }\n });\n } else {\n $$renderer5.push(\"<!--[!-->\");\n }\n $$renderer5.push(`<!--]-->`);\n },\n $$slots: { default: true }\n });\n $$renderer4.push(`<!----></div> <div class=\"min-h-0 flex-1\">`);\n children($$renderer4);\n $$renderer4.push(`<!----></div> `);\n if (workspace.edit.popover) {\n $$renderer4.push(\"<!--[-->\");\n {\n let children2 = function($$renderer5) {\n ModeAsyncPopoverContent($$renderer5);\n };\n PopoverModal($$renderer4, {\n title: popoverTitle(workspace.edit.popover.kind),\n onClose: closeModePopover,\n children: children2\n });\n }\n } else {\n $$renderer4.push(\"<!--[!-->\");\n }\n $$renderer4.push(`<!--]--> `);\n if (workspace.contextPopoverOpen) {\n $$renderer4.push(\"<!--[-->\");\n {\n let children2 = function($$renderer5) {\n ModeContextPopoverContent($$renderer5);\n };\n PopoverModal($$renderer4, {\n title: \"Edit context\",\n onClose: closeContextPopover,\n children: children2\n });\n }\n } else {\n $$renderer4.push(\"<!--[!-->\");\n }\n $$renderer4.push(`<!--]-->`);\n }\n });\n $$renderer3.push(`<!----></div></div></div></div> `);\n if (schemaValue) {\n $$renderer3.push(\"<!--[-->\");\n {\n let children2 = function($$renderer4) {\n SchemaEditor($$renderer4, {\n class: \"h-[70vh] min-w-0\"\n });\n };\n Modal($$renderer3, {\n title: \"Schema\",\n class: \"!w-[80vw] !max-w-5xl\",\n get open() {\n return schemaModalOpen;\n },\n set open($$value) {\n schemaModalOpen = $$value;\n $$settled = false;\n },\n children: children2,\n $$slots: { default: true }\n });\n }\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]-->`);\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n });\n}\nexport {\n _layout as default\n};\n"],"names":[],"mappings":"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"}
|