@recombine-ai/bosun 0.20.3 → 0.20.5
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/build/_app/immutable/assets/{0.CdQBFG7k.css → 0.BaQKRsv_.css} +1 -1
- package/build/_app/immutable/assets/0.BaQKRsv_.css.br +0 -0
- package/build/_app/immutable/assets/{0.CdQBFG7k.css.gz → 0.BaQKRsv_.css.gz} +0 -0
- package/build/_app/immutable/chunks/{Bmkwccsg.js → BaUo4AYS.js} +1 -1
- package/build/_app/immutable/chunks/BaUo4AYS.js.br +0 -0
- package/build/_app/immutable/chunks/BaUo4AYS.js.gz +0 -0
- package/build/_app/immutable/chunks/{DdNCOsWe.js → C9p6yGAG.js} +1 -1
- package/build/_app/immutable/chunks/C9p6yGAG.js.br +0 -0
- package/build/_app/immutable/chunks/{DdNCOsWe.js.gz → C9p6yGAG.js.gz} +0 -0
- package/build/_app/immutable/chunks/C_lx-sL6.js +1 -0
- package/build/_app/immutable/chunks/C_lx-sL6.js.br +2 -0
- package/build/_app/immutable/chunks/C_lx-sL6.js.gz +0 -0
- package/build/_app/immutable/chunks/{BFUe72xu.js → CaUCcDHI.js} +1 -1
- package/build/_app/immutable/chunks/CaUCcDHI.js.br +1 -0
- package/build/_app/immutable/chunks/CaUCcDHI.js.gz +0 -0
- package/build/_app/immutable/entry/{app.L5djN6KO.js → app.CxRWmgCQ.js} +2 -2
- package/build/_app/immutable/entry/app.CxRWmgCQ.js.br +0 -0
- package/build/_app/immutable/entry/app.CxRWmgCQ.js.gz +0 -0
- package/build/_app/immutable/entry/start.By8y392C.js +1 -0
- package/build/_app/immutable/entry/start.By8y392C.js.br +1 -0
- package/build/_app/immutable/entry/start.By8y392C.js.gz +0 -0
- package/build/_app/immutable/nodes/{0.DxT2ZCBH.js → 0.BTXrMtNp.js} +1 -1
- package/build/_app/immutable/nodes/0.BTXrMtNp.js.br +0 -0
- package/build/_app/immutable/nodes/0.BTXrMtNp.js.gz +0 -0
- package/build/_app/immutable/nodes/{1.CuGmyB-B.js → 1.Jfuz02fG.js} +1 -1
- package/build/_app/immutable/nodes/1.Jfuz02fG.js.br +2 -0
- package/build/_app/immutable/nodes/1.Jfuz02fG.js.gz +0 -0
- package/build/_app/immutable/nodes/{16.RilBjs7p.js → 16.BfX5703e.js} +1 -1
- package/build/_app/immutable/nodes/16.BfX5703e.js.br +0 -0
- package/build/_app/immutable/nodes/16.BfX5703e.js.gz +0 -0
- package/build/_app/immutable/nodes/17.DOR5yQVm.js +2 -0
- package/build/_app/immutable/nodes/17.DOR5yQVm.js.br +0 -0
- package/build/_app/immutable/nodes/17.DOR5yQVm.js.gz +0 -0
- package/build/_app/immutable/nodes/{17.lZCHazN-.js → 18.KIU8tKM7.js} +3 -3
- package/build/_app/immutable/nodes/18.KIU8tKM7.js.br +0 -0
- package/build/_app/immutable/nodes/18.KIU8tKM7.js.gz +0 -0
- package/build/_app/immutable/nodes/{2.47DRuv-7.js → 2.wEp5zss5.js} +2 -2
- package/build/_app/immutable/nodes/2.wEp5zss5.js.br +0 -0
- package/build/_app/immutable/nodes/2.wEp5zss5.js.gz +0 -0
- package/build/_app/immutable/nodes/3.DWCLBLue.js +1 -0
- package/build/_app/immutable/nodes/3.DWCLBLue.js.br +0 -0
- package/build/_app/immutable/nodes/3.DWCLBLue.js.gz +0 -0
- package/build/_app/immutable/nodes/4.DRyEBVph.js +1 -0
- package/build/_app/immutable/nodes/4.DRyEBVph.js.br +0 -0
- package/build/_app/immutable/nodes/4.DRyEBVph.js.gz +0 -0
- package/build/_app/immutable/nodes/{6.C7VHMxJG.js → 6.DxbD8svh.js} +1 -1
- package/build/_app/immutable/nodes/6.DxbD8svh.js.br +0 -0
- package/build/_app/immutable/nodes/6.DxbD8svh.js.gz +0 -0
- package/build/_app/immutable/nodes/8.BESB58-w.js +2 -0
- package/build/_app/immutable/nodes/8.BESB58-w.js.br +0 -0
- package/build/_app/immutable/nodes/8.BESB58-w.js.gz +0 -0
- package/build/_app/immutable/nodes/{9.DGHLzn6-.js → 9.CBINh_ET.js} +1 -1
- package/build/_app/immutable/nodes/9.CBINh_ET.js.br +0 -0
- package/build/_app/immutable/nodes/9.CBINh_ET.js.gz +0 -0
- package/build/_app/version.json +1 -1
- package/build/_app/version.json.br +0 -0
- package/build/_app/version.json.gz +0 -0
- package/build/index.html +10 -10
- package/build/index.html.br +0 -0
- package/build/index.html.gz +0 -0
- package/dist/index.js +25 -6
- package/dist/index.js.map +2 -2
- package/dist/types/backend/roleplay/conversation-store.d.ts +3 -2
- package/dist/types/backend/roleplay/router.d.ts +1 -1
- package/dist/types/backend/roleplay/variants.d.ts +1 -1
- package/dist/types/backend/server.d.ts +5 -5
- package/dist/types/backend/tests/router.d.ts +4 -4
- package/dist/types/lib/conversation.d.ts +3 -1
- package/dist/types/lib/tests/pii-sanitized-test-draft.d.ts +1 -1
- package/package.json +5 -5
- package/build/_app/immutable/assets/0.CdQBFG7k.css.br +0 -0
- package/build/_app/immutable/chunks/BFUe72xu.js.br +0 -0
- package/build/_app/immutable/chunks/BFUe72xu.js.gz +0 -0
- package/build/_app/immutable/chunks/Bmkwccsg.js.br +0 -0
- package/build/_app/immutable/chunks/Bmkwccsg.js.gz +0 -0
- package/build/_app/immutable/chunks/CZcJNBdK.js +0 -1
- package/build/_app/immutable/chunks/CZcJNBdK.js.br +0 -2
- package/build/_app/immutable/chunks/CZcJNBdK.js.gz +0 -0
- package/build/_app/immutable/chunks/DdNCOsWe.js.br +0 -0
- package/build/_app/immutable/entry/app.L5djN6KO.js.br +0 -0
- package/build/_app/immutable/entry/app.L5djN6KO.js.gz +0 -0
- package/build/_app/immutable/entry/start.CGCxa4r9.js +0 -1
- package/build/_app/immutable/entry/start.CGCxa4r9.js.br +0 -0
- package/build/_app/immutable/entry/start.CGCxa4r9.js.gz +0 -0
- package/build/_app/immutable/nodes/0.DxT2ZCBH.js.br +0 -0
- package/build/_app/immutable/nodes/0.DxT2ZCBH.js.gz +0 -0
- package/build/_app/immutable/nodes/1.CuGmyB-B.js.br +0 -2
- package/build/_app/immutable/nodes/1.CuGmyB-B.js.gz +0 -0
- package/build/_app/immutable/nodes/16.RilBjs7p.js.br +0 -0
- package/build/_app/immutable/nodes/16.RilBjs7p.js.gz +0 -0
- package/build/_app/immutable/nodes/17.lZCHazN-.js.br +0 -0
- package/build/_app/immutable/nodes/17.lZCHazN-.js.gz +0 -0
- package/build/_app/immutable/nodes/2.47DRuv-7.js.br +0 -0
- package/build/_app/immutable/nodes/2.47DRuv-7.js.gz +0 -0
- package/build/_app/immutable/nodes/3.BTFj2TcK.js +0 -1
- package/build/_app/immutable/nodes/3.BTFj2TcK.js.br +0 -0
- package/build/_app/immutable/nodes/3.BTFj2TcK.js.gz +0 -0
- package/build/_app/immutable/nodes/4.D7rKFBIq.js +0 -1
- package/build/_app/immutable/nodes/4.D7rKFBIq.js.br +0 -0
- package/build/_app/immutable/nodes/4.D7rKFBIq.js.gz +0 -0
- package/build/_app/immutable/nodes/6.C7VHMxJG.js.br +0 -0
- package/build/_app/immutable/nodes/6.C7VHMxJG.js.gz +0 -0
- package/build/_app/immutable/nodes/8.B-2mfKlr.js +0 -2
- package/build/_app/immutable/nodes/8.B-2mfKlr.js.br +0 -0
- package/build/_app/immutable/nodes/8.B-2mfKlr.js.gz +0 -0
- package/build/_app/immutable/nodes/9.DGHLzn6-.js.br +0 -0
- package/build/_app/immutable/nodes/9.DGHLzn6-.js.gz +0 -0
- /package/build/_app/immutable/assets/{17.BR6pkKJY.css → 18.BR6pkKJY.css} +0 -0
- /package/build/_app/immutable/assets/{17.BR6pkKJY.css.br → 18.BR6pkKJY.css.br} +0 -0
- /package/build/_app/immutable/assets/{17.BR6pkKJY.css.gz → 18.BR6pkKJY.css.gz} +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../chunks/CUZn05nQ.js","../chunks/hePW80VL.js","../chunks/HclGiUj8.js","../chunks/C_yvzB4Z.js","../assets/editor.chSTM-fo.css","../assets/editor.BoJhDcRF.css"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{r as e,t}from"../chunks/hePW80VL.js";import{A as n,B as r,Dt as i,E as a,F as o,G as s,I as c,J as l,L as u,N as d,Nt as f,O as p,Ot as m,Pt as h,V as g,a as _,at as v,c as y,d as b,dt as x,et as S,f as C,gt as w,h as T,ht as E,it as D,j as O,k,l as A,m as ee,n as j,o as M,ot as N,p as te,pt as P,q as F,r as ne,st as I,tt as L,u as re,vt as R,x as z,z as B}from"../chunks/CPCsWwEy.js";import{n as ie,t as V}from"../chunks/Bmkwccsg.js";import{t as H}from"../chunks/HclGiUj8.js";import"../chunks/xihTtKlq.js";import{t as ae}from"../chunks/DDZ8GqHh.js";import{t as U}from"../chunks/BFUe72xu.js";import"../chunks/CZcJNBdK.js";import{n as oe,r as se,t as W}from"../chunks/oarl--hZ.js";import{t as G}from"../chunks/6OCsQ6r7.js";import"../chunks/Cf3l6QEG.js";import{n as ce,t as le}from"../chunks/BJqZY8o2.js";import{t as ue}from"../chunks/BP0Xadq7.js";import"../chunks/CfzHeBbL.js";import{i as de,n as fe,r as K,t as pe}from"../chunks/BT98u4gR.js";import{t as q}from"../chunks/DWoqp3ac.js";import{a as me,c as he,i as ge,n as _e,o as ve,s as J,t as ye}from"../chunks/12bfCwgn.js";import{t as be}from"../chunks/B9YnyJ2j.js";import{t as xe}from"../chunks/D_MTg6YY.js";import{a as Se,n as Ce,r as we,t as Te}from"../chunks/By9tvIIw.js";import{n as Ee,t as De}from"../chunks/BOHUKGg_.js";var Oe=new Set([`$$slots`,`$$events`,`$$legacy`,`class`,`value`,`variant`,`el`]),ke=u(`<textarea></textarea>`);function Ae(e,t){m(t,!0);let n=_(t,`class`,3,``),r=_(t,`value`,15,``),a=_(t,`variant`,3,`config`),c=_(t,`el`,15),l=M(t,Oe),u=w(()=>a()===`chat`?`textarea-chat ${n()}`:`textarea-config ${n()}`);var d=ke();R(d),C(d,()=>({class:s(u),...l}),void 0,void 0,void 0,`svelte-1ilrf3m`),A(d,e=>c(e),()=>c()),b(d,r),o(e,d),i()}var je=new class{resolveUrl;ws=null;openHandler=null;closeHandler=null;errorHandler=null;eventHandler=null;retries=0;maxRetries=5;retryDelay=500;retryTimeout=null;isOpen=!1;isDestroyed=!1;constructor(e){this.resolveUrl=e}init=()=>{if(this.isOpen)return;let e=this.resolveUrl();console.log(`Initializing websocket connection with [${e}]`);try{this.ws=new WebSocket(e)}catch{this.retryConnect();return}this.isDestroyed=!1,this.ws.onmessage=e=>{let t=JSON.parse(e.data);if(t.type===`error`){this.errorHandler?.(t.message);return}this.eventHandler?.(t)},this.ws.onerror=e=>{console.error(`Websocket error:`,e),this.ws?.close(),this.retryConnect()},this.ws.onclose=()=>{console.log(`Websocket closed`),this.isOpen=!1,this.closeHandler?.(),this.retryConnect()},this.ws.onopen=()=>{this.retries=0,this.isOpen=!0,this.retryTimeout&&clearTimeout(this.retryTimeout),this.openHandler?.(),console.log(`Websocket connected`)}};destroy=()=>{this.isDestroyed=!0,this.ws?.close()};onOpen=e=>{this.openHandler=e,this.isOpen&&e()};onClose=e=>{this.closeHandler=e,this.isOpen||e()};onError=e=>{this.errorHandler=e};onEvent=e=>{this.eventHandler=e};send=e=>{this.ws?.send(JSON.stringify(e))};isReady=()=>this.isOpen;retryConnect=()=>{this.isDestroyed||(!this.isOpen&&this.retries<this.maxRetries?(this.retries++,this.init(),this.retryTimeout=setTimeout(this.retryConnect,this.retryDelay)):(this.errorHandler?.(`WebSocket Error, please reload the browser`),this.closeHandler?.()))}}(()=>`${location.protocol===`https:`?`wss:`:`ws:`}//${location.host}/ws`),Me=u(`<div class="flex h-full flex-col"><div class="h-full w-full"></div></div>`);function Ne(e,t){m(t,!0);let n=P(null),r=null,a=!1,c;ne(async()=>{if(!c)return;J();let e=await H(()=>import(`../chunks/CUZn05nQ.js`).then(e=>e.t),__vite__mapDeps([0,1,2,3,4,5]),import.meta.url);a||(ve(e),x(n,e.editor.create(c,{value:t.schema??``,language:`typescript`,theme:`bosun-dark`,readOnly:!0,lineNumbers:`off`,automaticLayout:!0,minimap:{enabled:!1},matchBrackets:`never`,bracketPairColorization:{enabled:!1},guides:{highlightActiveBracketPair:!1,bracketPairs:!1,bracketPairsHorizontal:!1},occurrencesHighlight:`off`,selectionHighlight:!1,unicodeHighlight:{ambiguousCharacters:!1,nonBasicASCII:!1,invisibleCharacters:!1,includeStrings:!1,includeComments:!1},autoClosingQuotes:`never`}),!0),r=s(n).getModel())}),j(()=>{a=!0;let e=r;r=null;try{if(s(n)){try{s(n).setModel(null)}catch{}s(n).dispose()}}finally{x(n,null)}try{e?.dispose()}catch{}}),L(()=>{if(!s(n))return;let e=t.schema??``;s(n).getValue()!==e&&s(n).setValue(e)}),se(e,{get class(){return`overflow-hidden ${t.class??``}`},children:(e,t)=>{var n=Me(),r=D(n);A(r,e=>c=e,()=>c),h(n),o(e,n)},$$slots:{default:!0}}),i()}function Pe(e,t){return e.languages.registerCompletionItemProvider(`markdown`,{triggerCharacters:[` `,`.`],provideCompletionItems:(n,r)=>{let i=n.getValueInRange({startLineNumber:r.lineNumber,startColumn:1,endLineNumber:r.lineNumber,endColumn:r.column}),a=i.match(/\{%\s*(if|elif|for)\s+([^%]*)$/),o=i.match(/\{\{\s*([^}]*)$/);if(a||o){let n=``;a?n=a[2].trim():o&&(n=o[1].trim());let{keys:i,lastPartLength:s}=Fe(t,n);return{suggestions:i.map(t=>({label:t,kind:e.languages.CompletionItemKind.Variable,insertText:t,range:{startLineNumber:r.lineNumber,endLineNumber:r.lineNumber,startColumn:r.column-s,endColumn:r.column}}))}}let s=i.match(/\{%\s*([^%]*)$/);if(s){let t=s[1].trim();return{suggestions:Y([`if`,`elif`,`else`,`endif`,`for`,`endfor`],t).map((n,i)=>({label:n,kind:e.languages.CompletionItemKind.Keyword,insertText:n,sortText:String(i).padStart(2,`0`),range:{startLineNumber:r.lineNumber,endLineNumber:r.lineNumber,startColumn:r.column-t.length,endColumn:r.column}}))}}return{suggestions:[]}}})}function Fe(e,t){let n=e,r=[],i=0;if(t===``)r=Object.keys(e??{}),i=0;else if(t.includes(`.`)){let e=t.split(`.`),a=e.pop()||``;i=a.length;for(let t of e)if(n&&typeof n==`object`&&t in n)n=n[t];else{n=null;break}n&&typeof n==`object`&&(r=Y(Object.keys(n),a))}else i=t.length,r=Y(Object.keys(e??{}),t);return{keys:r,lastPartLength:i}}function Y(e,t){return t?e.map((e,n)=>({value:e,index:n,match:Ie(e,t)})).filter(e=>e.match!==null).sort((e,t)=>e.match.kindRank===t.match.kindRank?e.match.span===t.match.span?e.match.gapCount===t.match.gapCount?e.match.start===t.match.start?e.index-t.index:e.match.start-t.match.start:e.match.gapCount-t.match.gapCount:e.match.span-t.match.span:e.match.kindRank-t.match.kindRank).map(e=>e.value):e}function Ie(e,t){let n=e.toLowerCase(),r=t.toLowerCase();if(!r)return null;if(n.startsWith(r))return{kindRank:0,start:0,span:r.length,gapCount:0};let i=n.indexOf(r);if(i!==-1)return{kindRank:Be(e,i,r.length),start:i,span:r.length,gapCount:0};let a=Le(n,r);return a?{kindRank:4,start:a.start,span:a.span,gapCount:a.gapCount}:null}function Le(e,t){if(!e||!t)return null;let n=null,r=0;for(;r<e.length;){let i=r,a=0;for(;i<e.length&&a<t.length;)e[i]===t[a]&&(a+=1),i+=1;if(a!==t.length)break;let o=Array(t.length),s=i-1;for(let r=t.length-1;r>=0;r--){for(;s>=0&&e[s]!==t[r];)--s;if(s<0)return n;o[r]=s,--s}let c=0;for(let e=1;e<o.length;e++)c+=o[e]-o[e-1]-1;let l={start:o[0],span:o[o.length-1]-o[0]+1,gapCount:c};(!n||l.span<n.span||l.span===n.span&&l.gapCount<n.gapCount||l.span===n.span&&l.gapCount===n.gapCount&&l.start<n.start)&&(n=l),r=o[0]+1}return n}function Re(e,t){return t<=0||/[\s._-]/.test(e[t-1]??``)}function ze(e,t){return t>=e.length||/[\s._-]/.test(e[t]??``)}function Be(e,t,n){let r=Re(e,t),i=ze(e,t+n);return r&&i?1:r?2:3}var Ve=/^(#{1,6})\s/,He=/^\s*\{%\s*(if|elif|elseif|else|endif|for|endfor)\b/,Ue={provideFoldingRanges(e){return Ge(e)}},We={provideFoldingRanges(e){return Ke(e)}};function Ge(e){let t=[],n=e.getLineCount(),r=[];for(let t=1;t<=n;t++){let n=Ve.exec(e.getLineContent(t));n&&r.push({line:t,level:n[1].length})}for(let i=0;i<r.length;i++){let{line:a,level:o}=r[i],s=n;for(let e=i+1;e<r.length;e++)if(r[e].level<=o){s=r[e].line-1;break}s=Ye(e,a,s),s>a&&t.push({start:a,end:s})}return t}function Ke(e){let t=[],n=[],r=e.getLineCount();for(let i=1;i<=r;i++){let r=He.exec(e.getLineContent(i));if(!r)continue;let a=r[1];if(a===`if`){n.push({kind:`if`,branchStarts:[i],startLine:i});continue}if(a===`for`){n.push({kind:`for`,branchStarts:[i],startLine:i});continue}if(a===`elif`||a===`elseif`||a===`else`){let r=qe(n,`if`);if(!r)continue;X(t,e,r.branchStarts.at(-1)??r.startLine,i-1),r.branchStarts.push(i);continue}if(a===`endif`){let r=Je(n,`if`);if(!r)continue;X(t,e,r.branchStarts.at(-1)??r.startLine,i-1);continue}if(a===`endfor`){let r=Je(n,`for`);if(!r)continue;X(t,e,r.startLine,i-1)}}for(let i of n)X(t,e,i.kind===`if`?i.branchStarts.at(-1)??i.startLine:i.startLine,r);return t}function qe(e,t){for(let n=e.length-1;n>=0;n--)if(e[n].kind===t)return e[n];return null}function Je(e,t){for(let n=e.length-1;n>=0;n--)if(e[n].kind===t)return e.splice(n,1)[0];return null}function X(e,t,n,r){let i=Ye(t,n,r);i>n&&e.push({start:n,end:i})}function Ye(e,t,n){let r=n;for(;r>t&&e.getLineContent(r).trim()===``;)--r;return r}var Z=/\{%[-\s]*(if|elif|elseif|else|endif|for|endfor)\b/,Xe={provideDocumentHighlights(e,t){let n=Qe(e),r=t.lineNumber,i=t.column;for(let e of n)for(let t of e)if(t.line===r&&i>=t.startColumn&&i<=t.endColumn)return e.map(e=>({range:{startLineNumber:e.line,startColumn:e.startColumn,endLineNumber:e.line,endColumn:e.endColumn},kind:1}));return[]}};function Ze(e,t){let n=e.getLineContent(t),r=Z.exec(n);if(!r)return null;let i=r[1],a=r.index+r[0].length-i.length;return{line:t,startColumn:a+1,endColumn:a+i.length+1,keyword:i}}function Qe(e){let t=[],n=e.getLineCount(),r=[];for(let i=1;i<=n;i++){let n=Ze(e,i);if(!n)continue;let a=n.keyword;if(a===`if`){r.push({kind:`if`,tags:[n]});continue}if(a===`for`){r.push({kind:`for`,tags:[n]});continue}if(a===`elif`||a===`elseif`||a===`else`){let e=$e(r,`if`);e&&e.tags.push(n);continue}if(a===`endif`){let e=et(r,`if`);e&&(e.tags.push(n),t.push(e.tags));continue}if(a===`endfor`){let e=et(r,`for`);e&&(e.tags.push(n),t.push(e.tags))}}return t}function $e(e,t){for(let n=e.length-1;n>=0;n--)if(e[n].kind===t)return e[n];return null}function et(e,t){for(let n=e.length-1;n>=0;n--)if(e[n].kind===t)return e.splice(n,1)[0];return null}var tt=e(t(((e,t)=>{(function(n,r){typeof e==`object`&&typeof t==`object`?t.exports=r():typeof define==`function`&&define.amd?define([],r):typeof e==`object`?e.nunjucks=r():n.nunjucks=r()})(typeof self<`u`?self:e,function(){return(function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,`a`,t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=``,n(n.s=11)})([(function(e,t,n){var r=Array.prototype,i=Object.prototype,a={"&":`&`,'"':`"`,"'":`'`,"<":`<`,">":`>`,"\\":`\`},o=/[&"'<>\\]/g,t=e.exports={};function s(e,t){return i.hasOwnProperty.call(e,t)}t.hasOwnProp=s;function c(e){return a[e]}function l(e,n,r){if(r.Update||(r=new t.TemplateError(r)),r.Update(e),!n){var i=r;r=Error(i.message),r.name=i.name}return r}t._prettifyError=l;function u(e,t,n){var r,i;e instanceof Error&&(i=e,e=i.name+`: `+i.message),Object.setPrototypeOf?(r=Error(e),Object.setPrototypeOf(r,u.prototype)):(r=this,Object.defineProperty(r,"message",{enumerable:!1,writable:!0,value:e})),Object.defineProperty(r,"name",{value:`Template render error`}),Error.captureStackTrace&&Error.captureStackTrace(r,this.constructor);var a;if(i){var o=Object.getOwnPropertyDescriptor(i,`stack`);a=o&&(o.get||function(){return o.value}),a||=function(){return i.stack}}else{var s=Error(e).stack;a=function(){return s}}return Object.defineProperty(r,"stack",{get:function(){return a.call(r)}}),Object.defineProperty(r,"cause",{value:i}),r.lineno=t,r.colno=n,r.firstUpdate=!0,r.Update=function(e){var t=`(`+(e||`unknown path`)+`)`;return this.firstUpdate&&(this.lineno&&this.colno?t+=` [Line `+this.lineno+`, Column `+this.colno+`]`:this.lineno&&(t+=` [Line `+this.lineno+`]`)),t+=`
|
|
2
|
+
import{r as e,t}from"../chunks/hePW80VL.js";import{A as n,B as r,Dt as i,E as a,F as o,G as s,I as c,J as l,L as u,N as d,Nt as f,O as p,Ot as m,Pt as h,V as g,a as _,at as v,c as y,d as b,dt as x,et as S,f as C,gt as w,h as T,ht as E,it as D,j as O,k,l as A,m as ee,n as j,o as M,ot as N,p as te,pt as P,q as F,r as ne,st as I,tt as L,u as re,vt as R,x as z,z as B}from"../chunks/CPCsWwEy.js";import{n as ie,t as V}from"../chunks/BaUo4AYS.js";import{t as H}from"../chunks/HclGiUj8.js";import"../chunks/xihTtKlq.js";import{t as ae}from"../chunks/DDZ8GqHh.js";import{t as U}from"../chunks/CaUCcDHI.js";import"../chunks/C_lx-sL6.js";import{n as oe,r as se,t as W}from"../chunks/oarl--hZ.js";import{t as G}from"../chunks/6OCsQ6r7.js";import"../chunks/Cf3l6QEG.js";import{n as ce,t as le}from"../chunks/BJqZY8o2.js";import{t as ue}from"../chunks/BP0Xadq7.js";import"../chunks/CfzHeBbL.js";import{i as de,n as fe,r as K,t as pe}from"../chunks/BT98u4gR.js";import{t as q}from"../chunks/DWoqp3ac.js";import{a as me,c as he,i as ge,n as _e,o as ve,s as J,t as ye}from"../chunks/12bfCwgn.js";import{t as be}from"../chunks/B9YnyJ2j.js";import{t as xe}from"../chunks/D_MTg6YY.js";import{a as Se,n as Ce,r as we,t as Te}from"../chunks/By9tvIIw.js";import{n as Ee,t as De}from"../chunks/BOHUKGg_.js";var Oe=new Set([`$$slots`,`$$events`,`$$legacy`,`class`,`value`,`variant`,`el`]),ke=u(`<textarea></textarea>`);function Ae(e,t){m(t,!0);let n=_(t,`class`,3,``),r=_(t,`value`,15,``),a=_(t,`variant`,3,`config`),c=_(t,`el`,15),l=M(t,Oe),u=w(()=>a()===`chat`?`textarea-chat ${n()}`:`textarea-config ${n()}`);var d=ke();R(d),C(d,()=>({class:s(u),...l}),void 0,void 0,void 0,`svelte-1ilrf3m`),A(d,e=>c(e),()=>c()),b(d,r),o(e,d),i()}var je=new class{resolveUrl;ws=null;openHandler=null;closeHandler=null;errorHandler=null;eventHandler=null;retries=0;maxRetries=5;retryDelay=500;retryTimeout=null;isOpen=!1;isDestroyed=!1;constructor(e){this.resolveUrl=e}init=()=>{if(this.isOpen)return;let e=this.resolveUrl();console.log(`Initializing websocket connection with [${e}]`);try{this.ws=new WebSocket(e)}catch{this.retryConnect();return}this.isDestroyed=!1,this.ws.onmessage=e=>{let t=JSON.parse(e.data);if(t.type===`error`){this.errorHandler?.(t.message);return}this.eventHandler?.(t)},this.ws.onerror=e=>{console.error(`Websocket error:`,e),this.ws?.close(),this.retryConnect()},this.ws.onclose=()=>{console.log(`Websocket closed`),this.isOpen=!1,this.closeHandler?.(),this.retryConnect()},this.ws.onopen=()=>{this.retries=0,this.isOpen=!0,this.retryTimeout&&clearTimeout(this.retryTimeout),this.openHandler?.(),console.log(`Websocket connected`)}};destroy=()=>{this.isDestroyed=!0,this.ws?.close()};onOpen=e=>{this.openHandler=e,this.isOpen&&e()};onClose=e=>{this.closeHandler=e,this.isOpen||e()};onError=e=>{this.errorHandler=e};onEvent=e=>{this.eventHandler=e};send=e=>{this.ws?.send(JSON.stringify(e))};isReady=()=>this.isOpen;retryConnect=()=>{this.isDestroyed||(!this.isOpen&&this.retries<this.maxRetries?(this.retries++,this.init(),this.retryTimeout=setTimeout(this.retryConnect,this.retryDelay)):(this.errorHandler?.(`WebSocket Error, please reload the browser`),this.closeHandler?.()))}}(()=>`${location.protocol===`https:`?`wss:`:`ws:`}//${location.host}/ws`),Me=u(`<div class="flex h-full flex-col"><div class="h-full w-full"></div></div>`);function Ne(e,t){m(t,!0);let n=P(null),r=null,a=!1,c;ne(async()=>{if(!c)return;J();let e=await H(()=>import(`../chunks/CUZn05nQ.js`).then(e=>e.t),__vite__mapDeps([0,1,2,3,4,5]),import.meta.url);a||(ve(e),x(n,e.editor.create(c,{value:t.schema??``,language:`typescript`,theme:`bosun-dark`,readOnly:!0,lineNumbers:`off`,automaticLayout:!0,minimap:{enabled:!1},matchBrackets:`never`,bracketPairColorization:{enabled:!1},guides:{highlightActiveBracketPair:!1,bracketPairs:!1,bracketPairsHorizontal:!1},occurrencesHighlight:`off`,selectionHighlight:!1,unicodeHighlight:{ambiguousCharacters:!1,nonBasicASCII:!1,invisibleCharacters:!1,includeStrings:!1,includeComments:!1},autoClosingQuotes:`never`}),!0),r=s(n).getModel())}),j(()=>{a=!0;let e=r;r=null;try{if(s(n)){try{s(n).setModel(null)}catch{}s(n).dispose()}}finally{x(n,null)}try{e?.dispose()}catch{}}),L(()=>{if(!s(n))return;let e=t.schema??``;s(n).getValue()!==e&&s(n).setValue(e)}),se(e,{get class(){return`overflow-hidden ${t.class??``}`},children:(e,t)=>{var n=Me(),r=D(n);A(r,e=>c=e,()=>c),h(n),o(e,n)},$$slots:{default:!0}}),i()}function Pe(e,t){return e.languages.registerCompletionItemProvider(`markdown`,{triggerCharacters:[` `,`.`],provideCompletionItems:(n,r)=>{let i=n.getValueInRange({startLineNumber:r.lineNumber,startColumn:1,endLineNumber:r.lineNumber,endColumn:r.column}),a=i.match(/\{%\s*(if|elif|for)\s+([^%]*)$/),o=i.match(/\{\{\s*([^}]*)$/);if(a||o){let n=``;a?n=a[2].trim():o&&(n=o[1].trim());let{keys:i,lastPartLength:s}=Fe(t,n);return{suggestions:i.map(t=>({label:t,kind:e.languages.CompletionItemKind.Variable,insertText:t,range:{startLineNumber:r.lineNumber,endLineNumber:r.lineNumber,startColumn:r.column-s,endColumn:r.column}}))}}let s=i.match(/\{%\s*([^%]*)$/);if(s){let t=s[1].trim();return{suggestions:Y([`if`,`elif`,`else`,`endif`,`for`,`endfor`],t).map((n,i)=>({label:n,kind:e.languages.CompletionItemKind.Keyword,insertText:n,sortText:String(i).padStart(2,`0`),range:{startLineNumber:r.lineNumber,endLineNumber:r.lineNumber,startColumn:r.column-t.length,endColumn:r.column}}))}}return{suggestions:[]}}})}function Fe(e,t){let n=e,r=[],i=0;if(t===``)r=Object.keys(e??{}),i=0;else if(t.includes(`.`)){let e=t.split(`.`),a=e.pop()||``;i=a.length;for(let t of e)if(n&&typeof n==`object`&&t in n)n=n[t];else{n=null;break}n&&typeof n==`object`&&(r=Y(Object.keys(n),a))}else i=t.length,r=Y(Object.keys(e??{}),t);return{keys:r,lastPartLength:i}}function Y(e,t){return t?e.map((e,n)=>({value:e,index:n,match:Ie(e,t)})).filter(e=>e.match!==null).sort((e,t)=>e.match.kindRank===t.match.kindRank?e.match.span===t.match.span?e.match.gapCount===t.match.gapCount?e.match.start===t.match.start?e.index-t.index:e.match.start-t.match.start:e.match.gapCount-t.match.gapCount:e.match.span-t.match.span:e.match.kindRank-t.match.kindRank).map(e=>e.value):e}function Ie(e,t){let n=e.toLowerCase(),r=t.toLowerCase();if(!r)return null;if(n.startsWith(r))return{kindRank:0,start:0,span:r.length,gapCount:0};let i=n.indexOf(r);if(i!==-1)return{kindRank:Be(e,i,r.length),start:i,span:r.length,gapCount:0};let a=Le(n,r);return a?{kindRank:4,start:a.start,span:a.span,gapCount:a.gapCount}:null}function Le(e,t){if(!e||!t)return null;let n=null,r=0;for(;r<e.length;){let i=r,a=0;for(;i<e.length&&a<t.length;)e[i]===t[a]&&(a+=1),i+=1;if(a!==t.length)break;let o=Array(t.length),s=i-1;for(let r=t.length-1;r>=0;r--){for(;s>=0&&e[s]!==t[r];)--s;if(s<0)return n;o[r]=s,--s}let c=0;for(let e=1;e<o.length;e++)c+=o[e]-o[e-1]-1;let l={start:o[0],span:o[o.length-1]-o[0]+1,gapCount:c};(!n||l.span<n.span||l.span===n.span&&l.gapCount<n.gapCount||l.span===n.span&&l.gapCount===n.gapCount&&l.start<n.start)&&(n=l),r=o[0]+1}return n}function Re(e,t){return t<=0||/[\s._-]/.test(e[t-1]??``)}function ze(e,t){return t>=e.length||/[\s._-]/.test(e[t]??``)}function Be(e,t,n){let r=Re(e,t),i=ze(e,t+n);return r&&i?1:r?2:3}var Ve=/^(#{1,6})\s/,He=/^\s*\{%\s*(if|elif|elseif|else|endif|for|endfor)\b/,Ue={provideFoldingRanges(e){return Ge(e)}},We={provideFoldingRanges(e){return Ke(e)}};function Ge(e){let t=[],n=e.getLineCount(),r=[];for(let t=1;t<=n;t++){let n=Ve.exec(e.getLineContent(t));n&&r.push({line:t,level:n[1].length})}for(let i=0;i<r.length;i++){let{line:a,level:o}=r[i],s=n;for(let e=i+1;e<r.length;e++)if(r[e].level<=o){s=r[e].line-1;break}s=Ye(e,a,s),s>a&&t.push({start:a,end:s})}return t}function Ke(e){let t=[],n=[],r=e.getLineCount();for(let i=1;i<=r;i++){let r=He.exec(e.getLineContent(i));if(!r)continue;let a=r[1];if(a===`if`){n.push({kind:`if`,branchStarts:[i],startLine:i});continue}if(a===`for`){n.push({kind:`for`,branchStarts:[i],startLine:i});continue}if(a===`elif`||a===`elseif`||a===`else`){let r=qe(n,`if`);if(!r)continue;X(t,e,r.branchStarts.at(-1)??r.startLine,i-1),r.branchStarts.push(i);continue}if(a===`endif`){let r=Je(n,`if`);if(!r)continue;X(t,e,r.branchStarts.at(-1)??r.startLine,i-1);continue}if(a===`endfor`){let r=Je(n,`for`);if(!r)continue;X(t,e,r.startLine,i-1)}}for(let i of n)X(t,e,i.kind===`if`?i.branchStarts.at(-1)??i.startLine:i.startLine,r);return t}function qe(e,t){for(let n=e.length-1;n>=0;n--)if(e[n].kind===t)return e[n];return null}function Je(e,t){for(let n=e.length-1;n>=0;n--)if(e[n].kind===t)return e.splice(n,1)[0];return null}function X(e,t,n,r){let i=Ye(t,n,r);i>n&&e.push({start:n,end:i})}function Ye(e,t,n){let r=n;for(;r>t&&e.getLineContent(r).trim()===``;)--r;return r}var Z=/\{%[-\s]*(if|elif|elseif|else|endif|for|endfor)\b/,Xe={provideDocumentHighlights(e,t){let n=Qe(e),r=t.lineNumber,i=t.column;for(let e of n)for(let t of e)if(t.line===r&&i>=t.startColumn&&i<=t.endColumn)return e.map(e=>({range:{startLineNumber:e.line,startColumn:e.startColumn,endLineNumber:e.line,endColumn:e.endColumn},kind:1}));return[]}};function Ze(e,t){let n=e.getLineContent(t),r=Z.exec(n);if(!r)return null;let i=r[1],a=r.index+r[0].length-i.length;return{line:t,startColumn:a+1,endColumn:a+i.length+1,keyword:i}}function Qe(e){let t=[],n=e.getLineCount(),r=[];for(let i=1;i<=n;i++){let n=Ze(e,i);if(!n)continue;let a=n.keyword;if(a===`if`){r.push({kind:`if`,tags:[n]});continue}if(a===`for`){r.push({kind:`for`,tags:[n]});continue}if(a===`elif`||a===`elseif`||a===`else`){let e=$e(r,`if`);e&&e.tags.push(n);continue}if(a===`endif`){let e=et(r,`if`);e&&(e.tags.push(n),t.push(e.tags));continue}if(a===`endfor`){let e=et(r,`for`);e&&(e.tags.push(n),t.push(e.tags))}}return t}function $e(e,t){for(let n=e.length-1;n>=0;n--)if(e[n].kind===t)return e[n];return null}function et(e,t){for(let n=e.length-1;n>=0;n--)if(e[n].kind===t)return e.splice(n,1)[0];return null}var tt=e(t(((e,t)=>{(function(n,r){typeof e==`object`&&typeof t==`object`?t.exports=r():typeof define==`function`&&define.amd?define([],r):typeof e==`object`?e.nunjucks=r():n.nunjucks=r()})(typeof self<`u`?self:e,function(){return(function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,`a`,t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=``,n(n.s=11)})([(function(e,t,n){var r=Array.prototype,i=Object.prototype,a={"&":`&`,'"':`"`,"'":`'`,"<":`<`,">":`>`,"\\":`\`},o=/[&"'<>\\]/g,t=e.exports={};function s(e,t){return i.hasOwnProperty.call(e,t)}t.hasOwnProp=s;function c(e){return a[e]}function l(e,n,r){if(r.Update||(r=new t.TemplateError(r)),r.Update(e),!n){var i=r;r=Error(i.message),r.name=i.name}return r}t._prettifyError=l;function u(e,t,n){var r,i;e instanceof Error&&(i=e,e=i.name+`: `+i.message),Object.setPrototypeOf?(r=Error(e),Object.setPrototypeOf(r,u.prototype)):(r=this,Object.defineProperty(r,"message",{enumerable:!1,writable:!0,value:e})),Object.defineProperty(r,"name",{value:`Template render error`}),Error.captureStackTrace&&Error.captureStackTrace(r,this.constructor);var a;if(i){var o=Object.getOwnPropertyDescriptor(i,`stack`);a=o&&(o.get||function(){return o.value}),a||=function(){return i.stack}}else{var s=Error(e).stack;a=function(){return s}}return Object.defineProperty(r,"stack",{get:function(){return a.call(r)}}),Object.defineProperty(r,"cause",{value:i}),r.lineno=t,r.colno=n,r.firstUpdate=!0,r.Update=function(e){var t=`(`+(e||`unknown path`)+`)`;return this.firstUpdate&&(this.lineno&&this.colno?t+=` [Line `+this.lineno+`, Column `+this.colno+`]`:this.lineno&&(t+=` [Line `+this.lineno+`]`)),t+=`
|
|
3
3
|
`,this.firstUpdate&&(t+=` `),this.message=t+(this.message||``),this.firstUpdate=!1,this},r}Object.setPrototypeOf?Object.setPrototypeOf(u.prototype,Error.prototype):u.prototype=Object.create(Error.prototype,{constructor:{value:u}}),t.TemplateError=u;function d(e){return e.replace(o,c)}t.escape=d;function f(e){return i.toString.call(e)===`[object Function]`}t.isFunction=f;function p(e){return i.toString.call(e)===`[object Array]`}t.isArray=p;function m(e){return i.toString.call(e)===`[object String]`}t.isString=m;function h(e){return i.toString.call(e)===`[object Object]`}t.isObject=h;function g(e){return e?typeof e==`string`?e.split(`.`):[e]:[]}function _(e){var t=g(e);return function(e){for(var n=e,r=0;r<t.length;r++){var i=t[r];if(s(n,i))n=n[i];else return}return n}}t.getAttrGetter=_;function v(e,t,n){for(var r={},i=f(t)?t:_(t),a=0;a<e.length;a++){var o=e[a],s=i(o,a);if(s===void 0&&n===!0)throw TypeError(`groupby: attribute "`+t+`" resolved to undefined`);(r[s]||(r[s]=[])).push(o)}return r}t.groupBy=v;function y(e){return Array.prototype.slice.call(e)}t.toArray=y;function b(e){var t=[];if(!e)return t;for(var n=e.length,r=y(arguments).slice(1),i=-1;++i<n;)E(r,e[i])===-1&&t.push(e[i]);return t}t.without=b;function x(e,t){for(var n=``,r=0;r<t;r++)n+=e;return n}t.repeat=x;function S(e,t,n){if(e!=null){if(r.forEach&&e.forEach===r.forEach)e.forEach(t,n);else if(e.length===+e.length)for(var i=0,a=e.length;i<a;i++)t.call(n,e[i],i,e)}}t.each=S;function C(e,t){var n=[];if(e==null)return n;if(r.map&&e.map===r.map)return e.map(t);for(var i=0;i<e.length;i++)n[n.length]=t(e[i],i);return e.length===+e.length&&(n.length=e.length),n}t.map=C;function w(e,t,n){var r=-1;function i(){r++,r<e.length?t(e[r],r,i,n):n()}i()}t.asyncIter=w;function T(e,t,n){var r=D(e||{}),i=r.length,a=-1;function o(){a++;var s=r[a];a<i?t(s,e[s],a,i,o):n()}o()}t.asyncFor=T;function E(e,t,n){return Array.prototype.indexOf.call(e||[],t,n)}t.indexOf=E;function D(e){var t=[];for(var n in e)s(e,n)&&t.push(n);return t}t.keys=D;function O(e){return D(e).map(function(t){return[t,e[t]]})}t._entries=O;function k(e){return D(e).map(function(t){return e[t]})}t._values=k;function A(e,t){return e||={},D(t).forEach(function(n){e[n]=t[n]}),e}t._assign=t.extend=A;function ee(e,t){if(p(t)||m(t))return t.indexOf(e)!==-1;if(h(t))return e in t;throw Error(`Cannot use "in" operator to search for "`+e+`" in unexpected types.`)}t.inOperator=ee}),(function(e,t,n){function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,a(r.key),r)}}function i(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function a(e){var t=o(e,`string`);return typeof t==`symbol`?t:String(t)}function o(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function s(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,c(e,t)}function c(e,t){return c=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},c(e,t)}var l=n(16),u=n(0);function d(e,t){return typeof e!=`function`||typeof t!=`function`?t:function(){var n=this.parent;this.parent=e;var r=t.apply(this,arguments);return this.parent=n,r}}function f(e,t,n){n||={},u.keys(n).forEach(function(t){n[t]=d(e.prototype[t],n[t])});var r=function(e){s(n,e);function n(){return e.apply(this,arguments)||this}return i(n,[{key:`typename`,get:function(){return t}}]),n}(e);return u._assign(r.prototype,n),r}e.exports={Obj:function(){function e(){this.init.apply(this,arguments)}var t=e.prototype;return t.init=function(){},e.extend=function(e,t){return typeof e==`object`&&(t=e,e=`anonymous`),f(this,e,t)},i(e,[{key:`typename`,get:function(){return this.constructor.name}}]),e}(),EmitterObj:function(e){s(t,e);function t(){var t,n=e.call(this)||this;return(t=n).init.apply(t,arguments),n}var n=t.prototype;return n.init=function(){},t.extend=function(e,t){return typeof e==`object`&&(t=e,e=`anonymous`),f(this,e,t)},i(t,[{key:`typename`,get:function(){return this.constructor.name}}]),t}(l)}}),(function(e,t,n){var r=n(0),i=Array.from,a=typeof Symbol==`function`&&Symbol.iterator&&typeof i==`function`,o=function(){function e(e,t){this.variables=Object.create(null),this.parent=e,this.topLevel=!1,this.isolateWrites=t}var t=e.prototype;return t.set=function(e,t,n){var r=e.split(`.`),i=this.variables,a=this;if(n&&(a=this.resolve(r[0],!0))){a.set(e,t);return}for(var o=0;o<r.length-1;o++){var s=r[o];i[s]||(i[s]={}),i=i[s]}i[r[r.length-1]]=t},t.get=function(e){var t=this.variables[e];return t===void 0?null:t},t.lookup=function(e){var t=this.parent,n=this.variables[e];return n===void 0?t&&t.lookup(e):n},t.resolve=function(e,t){var n=t&&this.isolateWrites?void 0:this.parent;return this.variables[e]===void 0?n&&n.resolve(e):this},t.push=function(t){return new e(this,t)},t.pop=function(){return this.parent},e}();function s(e,t,n){return function(){var r=[...arguments],i=d(r),a,o=u(r);if(i>e.length)a=r.slice(0,e.length),r.slice(a.length,i).forEach(function(e,n){n<t.length&&(o[t[n]]=e)}),a.push(o);else if(i<e.length){a=r.slice(0,i);for(var s=i;s<e.length;s++){var c=e[s];a.push(o[c]),delete o[c]}a.push(o)}else a=r;return n.apply(this,a)}}function c(e){return e.__keywords=!0,e}function l(e){return e&&Object.prototype.hasOwnProperty.call(e,`__keywords`)}function u(e){var t=e.length;if(t){var n=e[t-1];if(l(n))return n}return{}}function d(e){var t=e.length;if(t===0)return 0;var n=e[t-1];return l(n)?t-1:t}function f(e){if(typeof e!=`string`)return e;this.val=e,this.length=e.length}f.prototype=Object.create(String.prototype,{length:{writable:!0,configurable:!0,value:0}}),f.prototype.valueOf=function(){return this.val},f.prototype.toString=function(){return this.val};function p(e,t){return e instanceof f?new f(t):t.toString()}function m(e){var t=typeof e;return t===`string`?new f(e):t===`function`?function(t){var n=e.apply(this,arguments);return typeof n==`string`?new f(n):n}:e}function h(e,t){return e??=``,t&&!(e instanceof f)&&(e=r.escape(e.toString())),e}function g(e,t,n){if(e==null)throw new r.TemplateError(`attempted to output null or undefined value`,t+1,n+1);return e}function _(e,t){if(e!=null)return typeof e[t]==`function`?function(){var n=[...arguments];return e[t].apply(e,n)}:e[t]}function v(e,t,n,r){if(!e)throw Error("Unable to call `"+t+"`, which is undefined or falsey");if(typeof e!=`function`)throw Error("Unable to call `"+t+"`, which is not a function");return e.apply(n,r)}function y(e,t,n){var r=t.lookup(n);return r===void 0?e.lookup(n):r}function b(e,t,n){return e.lineno?e:new r.TemplateError(e,t,n)}function x(e,t,n,i){if(r.isArray(e)){var a=e.length;r.asyncIter(e,function(e,r,i){switch(t){case 1:n(e,r,a,i);break;case 2:n(e[0],e[1],r,a,i);break;case 3:n(e[0],e[1],e[2],r,a,i);break;default:e.push(r,a,i),n.apply(this,e)}},i)}else r.asyncFor(e,function(e,t,r,i,a){n(e,t,r,i,a)},i)}function S(e,t,n,i){var a=0,o,s;function c(e,t){a++,s[e]=t,a===o&&i(null,s.join(``))}if(r.isArray(e)){if(o=e.length,s=Array(o),o===0)i(null,``);else for(var l=0;l<e.length;l++){var u=e[l];switch(t){case 1:n(u,l,o,c);break;case 2:n(u[0],u[1],l,o,c);break;case 3:n(u[0],u[1],u[2],l,o,c);break;default:u.push(l,o,c),n.apply(this,u)}}}else{var d=r.keys(e||{});if(o=d.length,s=Array(o),o===0)i(null,``);else for(var f=0;f<d.length;f++){var p=d[f];n(p,e[p],f,o,c)}}}function C(e){return typeof e!=`object`||!e||r.isArray(e)?e:a&&Symbol.iterator in e?i(e):e}e.exports={Frame:o,makeMacro:s,makeKeywordArgs:c,numArgs:d,suppressValue:h,ensureDefined:g,memberLookup:_,contextOrFrameLookup:y,callWrap:v,handleError:b,isArray:r.isArray,keys:r.keys,SafeString:f,copySafeness:p,markSafe:m,asyncEach:x,asyncAll:S,inOperator:r.inOperator,fromIterator:C}}),(function(e,t,n){function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,a(r.key),r)}}function i(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function a(e){var t=o(e,`string`);return typeof t==`symbol`?t:String(t)}function o(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function s(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,c(e,t)}function c(e,t){return c=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},c(e,t)}var l=n(1).Obj;function u(e,t,n){e instanceof t&&n.push(e),e instanceof d&&e.findAll(t,n)}var d=function(e){s(t,e);function t(){return e.apply(this,arguments)||this}var n=t.prototype;return n.init=function(e,t){var n=arguments,r=this;this.lineno=e,this.colno=t,this.fields.forEach(function(e,t){var i=n[t+2];i===void 0&&(i=null),r[e]=i})},n.findAll=function(e,t){var n=this;return t||=[],this instanceof p?this.children.forEach(function(n){return u(n,e,t)}):this.fields.forEach(function(r){return u(n[r],e,t)}),t},n.iterFields=function(e){var t=this;this.fields.forEach(function(n){e(t[n],n)})},t}(l),f=function(e){s(t,e);function t(){return e.apply(this,arguments)||this}return i(t,[{key:`typename`,get:function(){return`Value`}},{key:`fields`,get:function(){return[`value`]}}]),t}(d),p=function(e){s(t,e);function t(){return e.apply(this,arguments)||this}var n=t.prototype;return n.init=function(t,n,r){e.prototype.init.call(this,t,n,r||[])},n.addChild=function(e){this.children.push(e)},i(t,[{key:`typename`,get:function(){return`NodeList`}},{key:`fields`,get:function(){return[`children`]}}]),t}(d),m=p.extend(`Root`),h=f.extend(`Literal`),g=f.extend(`Symbol`),_=p.extend(`Group`),v=p.extend(`Array`),y=d.extend(`Pair`,{fields:[`key`,`value`]}),b=p.extend(`Dict`),x=d.extend(`LookupVal`,{fields:[`target`,`val`]}),S=d.extend(`If`,{fields:[`cond`,`body`,`else_`]}),C=S.extend(`IfAsync`),w=d.extend(`InlineIf`,{fields:[`cond`,`body`,`else_`]}),T=d.extend(`For`,{fields:[`arr`,`name`,`body`,`else_`]}),E=T.extend(`AsyncEach`),D=T.extend(`AsyncAll`),O=d.extend(`Macro`,{fields:[`name`,`args`,`body`]}),k=O.extend(`Caller`),A=d.extend(`Import`,{fields:[`template`,`target`,`withContext`]}),ee=function(e){s(t,e);function t(){return e.apply(this,arguments)||this}var n=t.prototype;return n.init=function(t,n,r,i,a){e.prototype.init.call(this,t,n,r,i||new p,a)},i(t,[{key:`typename`,get:function(){return`FromImport`}},{key:`fields`,get:function(){return[`template`,`names`,`withContext`]}}]),t}(d),j=d.extend(`FunCall`,{fields:[`name`,`args`]}),M=j.extend(`Filter`),N=M.extend(`FilterAsync`,{fields:[`name`,`args`,`symbol`]}),te=b.extend(`KeywordArgs`),P=d.extend(`Block`,{fields:[`name`,`body`]}),F=d.extend(`Super`,{fields:[`blockName`,`symbol`]}),ne=d.extend(`TemplateRef`,{fields:[`template`]}).extend(`Extends`),I=d.extend(`Include`,{fields:[`template`,`ignoreMissing`]}),L=d.extend(`Set`,{fields:[`targets`,`value`]}),re=d.extend(`Switch`,{fields:[`expr`,`cases`,`default`]}),R=d.extend(`Case`,{fields:[`cond`,`body`]}),z=p.extend(`Output`),B=d.extend(`Capture`,{fields:[`body`]}),ie=h.extend(`TemplateData`),V=d.extend(`UnaryOp`,{fields:[`target`]}),H=d.extend(`BinOp`,{fields:[`left`,`right`]}),ae=H.extend(`In`),U=H.extend(`Is`),oe=H.extend(`Or`),se=H.extend(`And`),W=V.extend(`Not`),G=H.extend(`Add`),ce=H.extend(`Concat`),le=H.extend(`Sub`),ue=H.extend(`Mul`),de=H.extend(`Div`),fe=H.extend(`FloorDiv`),K=H.extend(`Mod`),pe=H.extend(`Pow`),q=V.extend(`Neg`),me=V.extend(`Pos`),he=d.extend(`Compare`,{fields:[`expr`,`ops`]}),ge=d.extend(`CompareOperand`,{fields:[`expr`,`type`]}),_e=d.extend(`CallExtension`,{init:function(e,t,n,r){this.parent(),this.extName=e.__name||e,this.prop=t,this.args=n||new p,this.contentArgs=r||[],this.autoescape=e.autoescape},fields:[`extName`,`prop`,`args`,`contentArgs`]}),ve=_e.extend(`CallExtensionAsync`);function J(e,t,n){var r=e.split(`
|
|
4
4
|
`);r.forEach(function(e,i){e&&(n&&i>0||!n)&&process.stdout.write(` `.repeat(t));var a=i===r.length-1?``:`
|
|
5
5
|
`;process.stdout.write(``+e+a)})}function ye(e,t){if(t||=0,J(e.typename+`: `,t),e instanceof p)J(`
|
|
@@ -32,4 +32,4 @@ else {`),this._emit(`cb()`)),this._emitLine(`}`)},n.compileIfAsync=function(e,t)
|
|
|
32
32
|
`,t.asFunction&&(n+=`return function(ctx, cb) { return nunjucks.render(`+i+`, ctx, cb); }
|
|
33
33
|
`),n+=`})();
|
|
34
34
|
`}return n}e.exports=r}),(function(e,t,n){function r(){var e=this.runtime,t=this.lib,n=this.compiler.Compiler,r=this.parser.Parser,i=this.nodes,a=this.lexer,o=e.contextOrFrameLookup,s=e.memberLookup,c,l;n&&(c=n.prototype.assertType),r&&(l=r.prototype.parseAggregate);function u(){e.contextOrFrameLookup=o,e.memberLookup=s,n&&(n.prototype.assertType=c),r&&(r.prototype.parseAggregate=l)}e.contextOrFrameLookup=function(e,t,n){var r=o.apply(this,arguments);if(r!==void 0)return r;switch(n){case`True`:return!0;case`False`:return!1;case`None`:return null;default:return}};function d(e){return{index:e.index,lineno:e.lineno,colno:e.colno}}if(i&&n&&r){var f=i.Node.extend(`Slice`,{fields:[`start`,`stop`,`step`],init:function(e,t,n,r,a){n||=new i.Literal(e,t,null),r||=new i.Literal(e,t,null),a||=new i.Literal(e,t,1),this.parent(e,t,n,r,a)}});n.prototype.assertType=function(e){e instanceof f||c.apply(this,arguments)},n.prototype.compileSlice=function(e,t){this._emit(`(`),this._compileExpression(e.start,t),this._emit(`),(`),this._compileExpression(e.stop,t),this._emit(`),(`),this._compileExpression(e.step,t),this._emit(`)`)},r.prototype.parseAggregate=function(){var e=this,n=d(this.tokens);n.colno--,n.index--;try{return l.apply(this)}catch(l){var r=d(this.tokens),o=function(){return t._assign(e.tokens,r),l};t._assign(this.tokens,n),this.peeked=!1;var s=this.peekToken();if(s.type!==a.TOKEN_LEFT_BRACKET)throw o();this.nextToken();for(var c=new f(s.lineno,s.colno),u=!1,p=0;p<=c.fields.length&&!this.skip(a.TOKEN_RIGHT_BRACKET);p++){if(p===c.fields.length){if(u)this.fail(`parseSlice: too many slice components`,s.lineno,s.colno);else break}if(this.skip(a.TOKEN_COLON))u=!0;else{var m=c.fields[p];c[m]=this.parseExpression(),u=this.skip(a.TOKEN_COLON)||u}}if(!u)throw o();return new i.Array(s.lineno,s.colno,[c])}}}function p(t,n,r,i){t||=[],n===null&&(n=i<0?t.length-1:0),r===null?r=i<0?-1:t.length:r<0&&(r+=t.length),n<0&&(n+=t.length);for(var a=[],o=n;!(o<0||o>t.length||i>0&&o>=r||i<0&&o<=r);o+=i)a.push(e.memberLookup(t,o));return a}function m(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var h={pop:function(e){if(e===void 0)return this.pop();if(e>=this.length||e<0)throw Error(`KeyError`);return this.splice(e,1)},append:function(e){return this.push(e)},remove:function(e){for(var t=0;t<this.length;t++)if(this[t]===e)return this.splice(t,1);throw Error(`ValueError`)},count:function(e){for(var t=0,n=0;n<this.length;n++)this[n]===e&&t++;return t},index:function(e){var t;if((t=this.indexOf(e))===-1)throw Error(`ValueError`);return t},find:function(e){return this.indexOf(e)},insert:function(e,t){return this.splice(e,0,t)}},g={items:function(){return t._entries(this)},values:function(){return t._values(this)},keys:function(){return t.keys(this)},get:function(e,t){var n=this[e];return n===void 0&&(n=t),n},has_key:function(e){return m(this,e)},pop:function(e,t){var n=this[e];if(n===void 0&&t!==void 0)n=t;else if(n===void 0)throw Error(`KeyError`);else delete this[e];return n},popitem:function(){var e=t.keys(this);if(!e.length)throw Error(`KeyError`);var n=e[0],r=this[n];return delete this[n],[n,r]},setdefault:function(e,t){return t===void 0&&(t=null),e in this||(this[e]=t),this[e]},update:function(e){return t._assign(this,e),null}};return g.iteritems=g.items,g.itervalues=g.values,g.iterkeys=g.keys,e.memberLookup=function(e,n,r){return arguments.length===4?p.apply(this,arguments):(e||={},t.isArray(e)&&m(h,n)?h[n].bind(e):t.isObject(e)&&m(g,n)?g[n].bind(e):s.apply(this,arguments))},u}e.exports=r})])})}))()),nt=u(`<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" class="checkbox svelte-1br1z62"/> <span>Preview</span></label>`),rt=u(`<div class="flex justify-end"><!></div>`),Q=u(`<div class="prompt-editor flex h-full flex-col"><div class="relative flex-1"><div class="h-full w-full"></div> <!></div> <!></div>`);function it(e,t){m(t,!0);let n=P(null),r,a=_(t,`readOnly`,3,!1),c=_(t,`readOnlyMessage`,3,``),l=_(t,`bottomPadding`,3,0),u=_(t,`showPreviewToggle`,3,!0),d=_(t,`preview`,3,null),p=!1,v=null,y=P(!1),b=null,C=[],E=null,k=null,ee=P(!1),j=w(()=>d()===null?s(ee):d()),M=w(()=>`editorState/prompt/${t.agentId}/${t.stepName}`),F=w(()=>`editorState/prompt/${t.agentId}/${t.stepName}/preview`),I=w(()=>s(j)?s(F):s(M));function re(){K(s(I),s(n))}function R(e,t){let n=fe(t);if(!n)return;let r=e.getContribution(`editor.contrib.folding`);if(r?.getFoldingModel)r.getFoldingModel().then(()=>{try{e.restoreViewState(n)}catch{}});else try{e.restoreViewState(n)}catch{}}function z(){k!=null&&clearTimeout(k),k=setTimeout(()=>{k=null,re()},180)}ne(()=>{if(!r)return;J();let e=!1;return H(()=>import(`../chunks/CUZn05nQ.js`).then(e=>e.t).then(i=>{if(e)return;ve(i),C.push(i.languages.registerFoldingRangeProvider(`markdown`,Ue)),C.push(i.languages.registerFoldingRangeProvider(`markdown`,We)),C.push(i.languages.registerDocumentHighlightProvider(`markdown`,Xe)),x(n,i.editor.create(r,{...me(`prompt`,{bottomPadding:l()}),value:``,language:`markdown`,readOnly:a(),readOnlyMessage:c()?{value:c()}:void 0}),!0),b=s(n).getModel(),C.push(ge(s(n),i)),C.push(s(n).onDidChangeModelDecorations(()=>z())),C.push(s(n).onDidScrollChange(()=>z())),C.push(s(n).onDidChangeCursorPosition(()=>z())),C.push(s(n).onDidBlurEditorText(()=>re())),q.agents.context.query({agentId:t.agentId}).then(t=>{e||(E?.dispose(),E=Pe(i,t),C.push(E))}),v=_e(i,s(n));let o=t.initialPrompt??``;if(p=!0,s(n).setValue(o),p=!1,requestAnimationFrame(()=>{v?.update(),s(n)&&R(s(n),s(I))}),C.push(s(n).onDidChangeModelContent(()=>{if(s(n)&&(v?.update(),!p)){z();try{let e=s(n).getValue();t.onPromptChanged(e)}catch(e){console.error(`Error updating prompt`,e)}}})),x(y,!0),t.onEditorReady)try{t.onEditorReady(s(n),i)}catch(e){console.error(`PromptEditor onEditorReady error`,e)}}),__vite__mapDeps([0,1,2,3,4,5]),import.meta.url).catch(e=>{console.error(`Error initializing Monaco editor:`,e)}),()=>{e=!0,x(y,!1),k!=null&&clearTimeout(k),k=null,re(),E=null;for(let e of C)try{e.dispose()}catch{}C=[],v?.dispose(),v=null;let t=b;if(b=null,s(n)){try{s(n).setModel(null)}catch{}s(n).dispose(),x(n,null)}try{t?.dispose()}catch{}}}),L(()=>{let e=a(),t=c(),r=me(`prompt`,{bottomPadding:l()});!s(n)||!s(y)||s(n).updateOptions({readOnly:e,readOnlyMessage:t?{value:t}:void 0,padding:r.padding})}),L(()=>{let e=t.initialPrompt??``;if(!(!s(n)||!s(y)||s(j)&&!a())&&s(n).getValue()!==e){p=!0;try{s(n).setValue(e),v?.update()}finally{p=!1}}});function ie(e,t){return tt.default.configure({autoescape:!1,trimBlocks:!0,lstripBlocks:!0}),tt.default.renderString(e,t||{})}let V=``,ae=0;function U(e){if(d()!==null){t.onPreviewChange?.(e);return}x(ee,e,!0)}function oe(){if(ae+=1,s(n)){K(s(F),s(n)),p=!0;try{V&&=(s(n).setValue(V),``),s(n).updateOptions({readOnly:a()})}finally{p=!1}R(s(n),s(M))}}async function W(){if(!s(n)||a())return;K(s(M),s(n)),V=s(n).getValue();let e=ae+=1,r=null;try{r=await q.agents.context.query({agentId:t.agentId})}catch(e){console.error(`Failed to load agent context for preview:`,e),r=null}if(e!==ae||!s(n)||!s(j))return;let i=ie(V,r||{});p=!0;try{s(n).setValue(i),s(n).updateOptions({readOnly:!0})}finally{p=!1}R(s(n),s(F))}let ce=P(!1);L(()=>{let e=!!s(j)&&!a();!s(n)||!s(y)||e!==s(ce)&&(x(ce,e,!0),e?W():oe())}),se(e,{get class(){return`prompt-editor-frame relative overflow-hidden ${t.class??``}`},children:(e,n)=>{var i=Q(),c=D(i),l=D(c);A(l,e=>r=e,()=>r);var d=N(l,2),p=e=>{var t=nt(),n=D(t);te(n),f(2),h(t),S(()=>T(n,s(j))),g(`change`,n,e=>U(e.currentTarget.checked)),o(e,t)};O(d,e=>{u()&&!a()&&e(p)}),h(c);var m=N(c,2),_=e=>{var n=rt(),r=D(n);G(r,{variant:`secondary`,get onclick(){return t.onSchemaClick},class:`absolute bottom-2 right-6 !font-medium`,children:(e,t)=>{f();var n=B(`Schema`);o(e,n)},$$slots:{default:!0}}),h(n),o(e,n)};O(m,e=>{t.showSchemaButton&&t.onSchemaClick&&e(_)}),h(i),o(e,i)},$$slots:{default:!0}}),i()}r([`change`]);var at=u(`<!> <!>`,1),ot=u(`<div class="flex h-full items-center justify-center text-sm text-rc-gray-300">Loading</div>`),st=u(`<pre class="whitespace-pre-wrap font-mono text-xs text-rc-gray-200"> </pre>`),ct=u(`<div class="flex h-full flex-col gap-3"><div class="text-sm text-red-400"> </div></div>`),lt=u(`<div class="text-red-400">Error</div>`),ut=u(`<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> </div> <!></div> <div class="whitespace-pre-wrap break-words text-sm text-rc-gray-100"> </div></div>`),dt=u(`<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"></div></div>`),ft=u(`<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> </div> <div> </div></div> <div class="whitespace-pre-wrap break-words text-sm text-rc-gray-100"> </div></button>`),pt=u(`<div class="flex flex-col gap-2"></div>`),mt=u(`<div class="text-sm text-rc-gray-300">No quotes returned.</div>`),ht=u(`<div class="mb-3 text-sm font-semibold text-rc-gray-100"> </div> <!> <!>`,1),gt=u(`<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"> </div></button>`),_t=u(`<div class="mt-3 flex flex-col gap-2"></div>`),vt=u(`<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"></div> <div class="text-xs text-rc-gray-500"> </div></div> <div class="mt-1 whitespace-pre-wrap break-words text-sm text-rc-gray-100"> </div> <!></div>`),yt=u(`<div class="flex flex-col gap-3"></div>`),bt=u(`<div class="text-sm text-rc-gray-300">No issues found.</div>`),xt=u(`<div class="mb-3 text-sm font-semibold text-rc-gray-100"> </div> <!>`,1),St=u(`<div class="border-b border-rc-gray-700 px-2 py-1"><!></div> <div class="min-h-0 flex-1 overflow-auto p-3"><!></div>`,1);function Ct(e,t){m(t,!0);let{state:n,actions:r}=W(),a=P(`results`),l=P(null);L(()=>{let e=n.edit.popover?.requestId??null;e!==s(l)&&(x(l,e,!0),x(a,`results`))});var u=c(),_=v(u),y=e=>{let t=w(()=>n.edit.popover);var i=St(),l=v(i),u=D(l);ce(u,{get value(){return s(a)},ariaLabel:`Popover tabs`,onChange:({value:e})=>x(a,e,!0),children:(e,t)=>{var n=at(),r=v(n);le(r,{value:`results`,children:(e,t)=>{f();var n=B(`Results`);o(e,n)},$$slots:{default:!0}});var i=N(r,2);le(i,{value:`raw`,children:(e,t)=>{f();var n=B(`Raw`);o(e,n)},$$slots:{default:!0}}),o(e,n)},$$slots:{default:!0}}),h(l);var m=N(l,2),_=D(m),y=e=>{var t=ot();o(e,t)},b=e=>{var n=c(),r=v(n),i=e=>{let n=w(()=>typeof s(t).data?.raw==`string`?s(t).data.raw:s(t).error);var r=st(),i=D(r,!0);h(r),S(()=>d(i,s(n)||`—`)),o(e,r)},l=e=>{var n=ct(),r=D(n),i=D(r,!0);h(r),h(n),S(()=>d(i,s(t).error)),o(e,n)};O(r,e=>{s(a)===`raw`?e(i):e(l,-1)}),o(e,n)},C=e=>{let n=w(()=>s(t).data);var i=c(),l=v(i),u=e=>{var t=st(),r=D(t,!0);h(t),S(()=>d(r,typeof s(n)?.raw==`string`?s(n).raw:`—`)),o(e,t)},f=e=>{let t=w(()=>typeof s(n)?.parallelCalls==`number`&&Number.isFinite(s(n).parallelCalls)?s(n).parallelCalls:10);var i=ht(),a=v(i),c=D(a,!0);h(a);var l=N(a,2),u=e=>{var t=dt(),r=N(D(t),2);p(r,23,()=>s(n).rationales,(e,t)=>e.attempt??t,(e,t,n)=>{var r=ut(),i=D(r),a=D(i),c=D(a);h(a);var l=N(a,2),u=e=>{var t=lt();o(e,t)};O(l,e=>{s(t).status===`error`&&e(u)}),h(i);var f=N(i,2),p=D(f,!0);h(f),h(r),S(()=>{d(c,`Analysis ${s(t).attempt??s(n)+1??``}`),d(p,s(t).text)}),o(e,r)}),h(r),h(t),o(e,t)},f=w(()=>Array.isArray(s(n)?.rationales)&&s(n).rationales.length>0);O(l,e=>{s(f)&&e(u)});var m=N(l,2),_=e=>{var i=pt();p(i,23,()=>s(n).quotes,e=>e.quote,(e,n,i)=>{var a=ft(),c=D(a),l=D(c),u=D(l);h(l);var f=N(l,2),p=D(f);h(f),h(c);var m=N(c,2),_=D(m,!0);h(m),h(a),S(()=>{d(u,`Quote ${s(i)+1}`),d(p,`x${s(n).count??``}/${s(t)??``}`),d(_,s(n).quote)}),g(`click`,a,()=>r.focusQuote(s(n).quote)),o(e,a)}),h(i),o(e,i)},y=w(()=>Array.isArray(s(n)?.quotes)&&s(n).quotes.length>0),b=e=>{var t=mt();o(e,t)};O(m,e=>{s(y)?e(_):e(b,-1)}),S(()=>d(c,s(n)?.title??`Analysis`)),o(e,i)},m=e=>{var t=xt(),i=v(t),a=D(i,!0);h(i);var c=N(i,2),l=e=>{var t=yt();p(t,21,()=>s(n).issues,k,(e,t,n)=>{var i=vt(),a=D(i),c=D(a);c.textContent=`Issue ${n+1}`;var l=N(c,2),u=D(l,!0);h(l),h(a);var f=N(a,2),m=D(f,!0);h(f);var _=N(f,2),v=e=>{var n=_t();p(n,20,()=>s(t).contradictingQuotes,e=>e,(e,t)=>{var n=gt(),i=D(n),a=D(i,!0);h(i),h(n),S(()=>d(a,t)),g(`click`,n,()=>r.focusQuote(t)),o(e,n)}),h(n),o(e,n)};O(_,e=>{s(t).contradictingQuotes&&s(t).contradictingQuotes.length>0&&e(v)}),h(i),S(()=>{d(u,s(t).type),d(m,s(t).reason)}),o(e,i)}),h(t),o(e,t)},u=w(()=>Array.isArray(s(n)?.issues)&&s(n).issues.length>0),f=e=>{var t=bt();o(e,t)};O(c,e=>{s(u)?e(l):e(f,-1)}),S(()=>d(a,s(n)?.title??`Prompt issues`)),o(e,t)};O(l,e=>{s(a)===`raw`?e(u):s(t).kind===`analyze`?e(f,1):e(m,-1)}),o(e,i)};O(_,e=>{s(t).status===`loading`?e(y):s(t).status===`error`?e(b,1):e(C,-1)}),h(m),o(e,i)};O(_,e=>{n.edit.popover&&e(y)}),o(e,u),i()}r([`click`]);var wt=u(`<div class="min-h-0 flex-1 overflow-hidden p-3"><!></div>`);function Tt(e,t){m(t,!1);let{state:n}=W();y();var r=wt(),a=D(r);{let e=E(()=>`editorState/context/${n.agentId}/${n.currentStep?.name??`main`}`);pe(a,{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`,get context(){return n.context},readOnly:!0,get editorStateKey(){return s(e)},suppressErrors:!0})}h(r),o(e,r),i()}function Et(e){try{return decodeURIComponent(e)}catch{return e}}function Dt(e){let t=(String(e||``).split(`?`)[0]?.split(`#`)[0]??``).split(`/`).filter(Boolean);if(t[0]!==`edit`||t.length===1)return{agentId:null,tab:null};let n=Et(t[1]??``),r=t[2]??null;return!r||r===`roleplay`?{agentId:n,tab:`roleplay`}:r===`tests`?{agentId:n,tab:`tests`}:r===`configure`?{agentId:n,tab:`configure`}:{agentId:n,tab:null}}function Ot(e){return{tab:Dt(e.pathname).tab??`roleplay`,popover:null,highlights:null,requestSeq:0}}function kt(e,t){let n=Dt(t.pathname).tab??`roleplay`;return{...e,tab:n,popover:null,highlights:null}}function At(e,t){let n=e.requestSeq+1;return{...e,requestSeq:n,popover:{kind:t.kind,status:`loading`,requestId:n},highlights:null}}function jt(e,t){return!e.popover||e.popover.requestId!==t.requestId?e:{...e,popover:{...e.popover,status:`ready`,data:t.data,error:void 0}}}function Mt(e,t){return!e.popover||e.popover.requestId!==t.requestId?e:{...e,popover:{...e.popover,status:`error`,error:String(t.error||`Unknown error`),data:t.data}}}function Nt(e){return{...e,popover:null,highlights:null}}function Pt(e,t){return{...e,highlights:{quotes:t??[],focusQuote:null,focusNonce:0}}}function Ft(e,t){let n=String(t||``);if(!n)return e;let r=e.highlights??{quotes:[],focusQuote:null,focusNonce:0};return{...e,highlights:{...r,focusQuote:n,focusNonce:(r.focusNonce??0)+1}}}function It(e,t){let n=String(e??``),r=Rt(t),i=zt(n);for(let e of r){let t=Lt(n,e);if(t.length>0)return t;let r=$(n,e);if(r.length>0)return r;let a=zt(e);if(i!==n||a!==e){let e=Lt(i,a);if(e.length>0)return e;let t=$(i,a);if(t.length>0)return t}}return[]}function Lt(e,t){let n=String(t??``);if(!n)return[];let r=[],i=0;for(;i<=e.length-n.length;){let t=e.indexOf(n,i);if(t===-1)break;r.push({start:t,end:t+n.length}),i=t+1}return r}function $(e,t){let n=String(t??``);if(!n.trim())return[];let r=Bt(n).replace(/\s+/g,`\\s+`),i;try{i=RegExp(`(?=(${r}))`,`gu`)}catch{return[]}let a=[],o;for(;(o=i.exec(e))!==null;){let e=o.index,t=e+(o[1]??``).length;t>e&&a.push({start:e,end:t}),i.lastIndex===e&&(i.lastIndex+=1)}return a}function Rt(e){let t=String(e??``),n=t.trim(),r=new Set;for(let e of[t,n])e&&r.add(e);let i=n.replace(/^[-*•]\s+/,``);i&&i!==n&&r.add(i);let a=n.replace(/^(?:\(?\d+\)?[.)]|[a-zA-Z][.)])\s+/,``);return a&&a!==n&&r.add(a),[...r].filter(e=>e.trim().length>0)}function zt(e){return String(e??``).replace(/\r/g,`
|
|
35
|
-
`).replace(/[\u00A0\u2007\u202F\u2009\u200A\u200B\uFEFF]/g,` `).replace(/[\u201C\u201D\u201E\u00AB\u00BB]/g,`"`).replace(/[\u2018\u2019]/g,`'`).replace(/[\u2013\u2014]/g,`-`)}function Bt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function Vt(e,t){let n=e.createDecorationsCollection(),r=e.createDecorationsCollection(),i=null,a=new Map,o=new Map,s=0;function c(){a=new Map,o=new Map,s=0}function l(e,t,n){return Number.isNaN(e)?t:Math.max(t,Math.min(n,e))}function u(e){return`rgba(220, 38, 38, ${l(.22+l(e,1,10)*.06,.28,.82)})`}function d(e,t){let n=String(e??``);if(!n)return[];let r=a.get(n);if(r)return r;let i=It(t,n);return a.set(n,i),i}function f(r){let i=e.getModel();if(!i)return;let a=i.getValue()??``,o=[],s=[...r||[]].sort((e,t)=>(e.count||0)-(t.count||0));for(let e of s){let n=String(e.quote||``);if(!n)continue;let r=l(Number(e.count||0),1,10),s=u(r),c=d(n,a);for(let e of c){let n=i.getPositionAt(e.start),a=i.getPositionAt(e.end);o.push({range:new t.Range(n.lineNumber,n.column,a.lineNumber,a.column),options:{inlineClassName:`analysis-quote analysis-quote-l${r}`,overviewRuler:{color:s,position:t.editor.OverviewRulerLane.Center}}})}}n.set(o)}function p(n){let i=e.getModel();if(!i)return;let a=d(n,i.getValue()??``);if(a.length===0)return;let s=((o.get(n)??-1)+1)%a.length;o.set(n,s);let c=a[s],l=i.getPositionAt(c.start),u=i.getPositionAt(c.end),f=new t.Range(l.lineNumber,l.column,u.lineNumber,u.column);r.set([{range:f,options:{inlineClassName:`analysis-quote-focus`}}]),e.setSelection(f),e.revealRangeInCenter(f,t.editor.ScrollType.Smooth),e.focus()}function m(e){if(i=e,!i){n.clear(),r.clear(),c();return}f(i.quotes||[]),i.focusQuote&&i.focusNonce!==s?(s=i.focusNonce,p(i.focusQuote)):i.focusQuote||r.clear()}let h=e.onDidChangeModelContent(()=>{i&&(a=new Map,r.clear(),f(i.quotes||[]))});return{setHighlights:m,dispose:()=>{try{h.dispose(),n.clear(),r.clear()}finally{i=null,c()}}}}var Ht=u(`<!> <!>`,1),Ut=u(`<div class="p-2 text-rc-gray-400">Connecting…</div>`),Wt=u(`<div class="p-2 text-rc-gray-400">No steps</div>`),Gt=u(`<button><span class="block truncate"> </span></button>`),Kt=u(`<div class="rc-scroll min-h-0 flex-1 overflow-auto p-2"><!></div>`),qt=u(`<span class="max-w-64 text-sm text-red-300"> </span>`),Jt=u(`<div class="absolute inset-0 z-10 min-w-0"><!> <div class="absolute bottom-2 left-3 z-20 flex items-center gap-2"><!> <!> <!></div> <!></div>`),Yt=u(`<div class="relative h-full min-w-0"><!> <!></div>`),Xt=u(`<div class="border-b border-rc-gray-700 p-2"><!></div> <div class="min-h-0 flex-1"><!></div> <!> <!>`,1),Zt=u(`<div class="text-sm text-red-300"> </div>`),Qt=u(`<div class="flex flex-col gap-2"><label for="ai-edit-request" class="font-semibold text-rc-gray-100">What do you want to change?</label> <!> <!></div>`),$t=u(`<div class="min-w-0 truncate whitespace-nowrap text-base text-rc-gray-300"> </div>`),en=u(`<p class="text-rc-gray-200">Try changing your request and suggest edits again.</p>`),tn=u(`<div class="flex h-screen"><!> <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"><!></div> <div class="flex w-1/3 items-center justify-end gap-2 pr-2"></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)]"><!> <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"> </div></div> <div class="flex items-center gap-3"><label class="inline-flex items-center gap-2 text-rc-gray-300"><input type="checkbox" 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> <!> <!></div></div> <div class="min-h-0 flex-1"><!></div></div> <!></div></div></div></div> <!> <!> <!>`,1);function nn(e,t){m(t,!0);let{onError:r}=ae(),u=P(I([])),_=e=>{try{return e?decodeURIComponent(e):``}catch{return e||``}},y=e=>encodeURIComponent(e);function b(e){return _(e).trim().replace(/^\/+|\/+$/g,``)}let C=w(()=>b(t.params.agent)),T=w(()=>he().editable),E=I({agentId:l(()=>b(t.params.agent)),agentType:void 0,wsLoaded:!1,chatReady:!1,turnRunning:!1,steps:[],currentStep:null,promptDrafts:{},promptEdits:{},testHistoryEdits:{},conversations:[],conversationId:null,context:null,contextPopoverOpen:!1,edit:Ot({pathname:U.url.pathname})}),A=null;function M(e,t){if(typeof window>`u`)return;let n=new URL(window.location.href);t===null?n.searchParams.delete(e):n.searchParams.set(e,t),ie(n.toString(),{})}function R(e){e?.name&&E.promptDrafts[e.name]===void 0&&(E.promptDrafts[e.name]=e.prompt??``)}let H=w(()=>E.currentStep?.name??null),W=(e,t)=>`${e}\u0000${t}`,fe=(e,t)=>`${e}\u0000${t}`,K=w(()=>{let e=s(H);return e?E.promptEdits[W(E.agentId,e)]??null:null}),pe=w(()=>{let e=s(H);if(!e)return``;let t=E.promptDrafts[e];return typeof t==`string`?t:``}),me=w(()=>s(K)?.suggestedPrompt??s(pe));function ge(e=E.agentId){let t={};for(let n of Object.values(E.promptEdits))n.agentId===e&&(t[n.step]=n.suggestedPrompt);return t}function _e(e=E.agentId){let t={};for(let n of Object.values(E.testHistoryEdits))n.agentId===e&&(t[n.testId]={conversation:n.suggestedConversation});return t}function ve(e,t){return t?E.promptEdits[W(e,t)]??null:null}let J=null,Oe=null,ke=Promise.resolve();function Me(){J&&=(clearTimeout(J),null)}async function Pe(e,t,n){try{await q.agents.savePrompt.mutate({agentId:e,step:t,prompt:n}),E.agentId===e&&(E.steps=E.steps.map(e=>e.name===t?{...e,prompt:n}:e),E.currentStep=E.steps.find(e=>e.name===s(H))??E.currentStep)}catch(r){console.error(`Failed to save prompt`,r);let i=E.promptDrafts[t];throw E.agentId===e&&i===n&&(Oe={stepName:t,prompt:n}),r}}function Fe(e,t,n){let r=ke.catch(()=>{}).then(()=>Pe(e,t,n));return ke=r.catch(()=>{}),r}async function Y(){if(!Oe)return;let e=E.agentId.trim();if(!e)return;let{stepName:t,prompt:n}=Oe;Me(),Oe=null,await Fe(e,t,n)}function Ie(e,t){Oe={stepName:e,prompt:t},Me(),J=setTimeout(()=>{J=null,Y()},800)}L(()=>{E.wsLoaded&&Y()});async function Le(e){try{let t=await q.agents.get.query({agentId:e});if(E.agentId!==e)return;E.steps=t.steps,E.agentType=t.type;let n={};for(let e of E.steps){let t=E.promptDrafts[e.name];n[e.name]=typeof t==`string`?t:e.prompt??``}E.promptDrafts=n,Re()}catch(e){console.error(`Failed to load agent`,e),r(e instanceof Error?e.message:String(e))}}function Re(){let e=(U.url.searchParams.get(`step`)||``).trim()||null,t=e?E.steps.find(t=>t.name===e)??null:null,n=E.steps.find(e=>e.name.toLowerCase()===`main`)??E.steps.find(e=>be(e.name))??E.steps[0]??null,r=t??n;E.currentStep=r,r?(R(r),r.name!==e&&M(`step`,r.name),Y()):M(`step`,null)}function ze(e){Se(),Ee();for(let t of e.entries)Be(t)}function Be(e){switch(e.kind){case`log`:De(e.payload);break;case`step-trace`:we({...e.payload,bosunTurn:e.turn});break;case`api-call-trace`:Te({...e.payload,bosunTurn:e.turn});break;case`conversational-trace`:Ce({...e.payload,bosunTurn:e.turn})}}async function Ve(e){try{E.conversations=await q.conversations.list.query({agentId:e})}catch(e){console.error(`Failed to list conversations`,e),E.conversations=[]}}async function He(e){try{let t=await q.conversations.get.query({conversationId:e});if(t.agentId!==E.agentId)return;E.conversationId=e,E.context=t.context,M(`conversation`,e),ze(t),E.chatReady=!0}catch(e){console.error(`Failed to open conversation`,e),r(e instanceof Error?e.message:String(e))}}async function Ue(e){try{let t=await q.conversations.get.query({conversationId:e});if(E.conversationId!==e)return;E.context=t.context}catch(e){console.error(`Failed to refresh conversation context`,e)}}async function We(e){let t=await q.conversations.create.mutate({agentId:e});E.conversationId=t.conversationId,E.context=t.context,M(`conversation`,t.conversationId),Se(),Ee(),E.chatReady=!0,await Ve(e),Sn({type:`start`,agentId:e,conversationId:t.conversationId,promptOverrides:ge()})}async function Ge(e){await Ve(e);let t=(U.url.searchParams.get(`conversation`)||``).trim()||null,n=E.conversations.some(e=>e.conversationId===t);if(t&&n){await He(t);return}let r=E.conversations[0]?.conversationId;if(r){await He(r);return}await We(e)}function Ke(e){Y(),$();let t=E.steps.find(t=>t.name===e)||null;E.currentStep=t,t?(R(t),M(`step`,t.name),M(`promptEdit`,ve(E.agentId,t.name)?.id??null)):M(`step`,null)}function qe(e){let t=s(H);!t||!s(T)||(E.promptDrafts[t]=e,Ie(t,e))}let Je=P(!1),X=P(``),Ye=P(null),Z=P(!1),Xe=P(null);function Ze(e){return(e||``).replace(/[*_`]/g,``).replace(/(^|\s)#{1,6}\s+/g,` `).replace(/\s+/g,` `).trim()||`Thinking...`}let Qe=w(()=>Ze(s(Xe)?.summary)),$e=P(null),et=P(null),nt=P(!1),rt=P(!1),Q=0,at=!1,ot=new Set;L(()=>{let e=s(Je);at&&!e&&s(Z)&&(Q+=1,x(Z,!1)),at=e});function st(e=``,t){if(!E.currentStep)return;let n=t?ve(E.agentId,t.step):s(K);(!t||t.kind===`test-fix`)&&n||(x(X,e,!0),x(Ye,t??null,!0),x($e,null),x(rt,!1),x(Je,!0))}function ct(){Q+=1,x(Z,!1),x(Je,!1),x(Ye,null),x(rt,!1)}async function lt(e,t){for(;t===Q&&s(Z);){try{let n=await q.agents.promptEditProgress.query({id:e});if(t!==Q||!s(Z))return;n&&x(Xe,{phase:n.phase,activity:n.activity,summary:n.summary},!0)}catch(e){t===Q&&console.warn(`Failed to read prompt edit progress`,e)}await new Promise(e=>setTimeout(e,400))}}async function ut(){let e=s(X).trim(),t=s(Ye),n=t?.step??s(H),r=E.agentId.trim();if(!e||!n||!r||s(Z))return;let i=++Q,a=crypto.randomUUID();x(Z,!0),x(Xe,null),x($e,null),lt(a,i);try{if(!t&&(await Y(),i!==Q))return;let o=null,s=null,c=null;if(t?.kind===`test-fix`){let i=await q.agents.suggestTestFix.mutate({agentId:r,testId:t.testId,step:n,request:e,prompt:t.prompt,basePrompt:t.basePrompt,currentIncorrectOutcome:t.currentIncorrectOutcome??``,progressId:a});s=i.history,c=i.prompt}else t?s=await q.tests.suggestHistoryEdit.mutate({agent:r,testId:t.testId,step:n,request:e,prompt:t.prompt,basePrompt:t.basePrompt,progressId:a}):c=await q.agents.suggestPromptEdit.mutate({agentId:r,step:n,request:e,progressId:a});if(i!==Q)return;if(t&&s?.status===`changed`&&(o=s.proposal),!o&&(!c||c.status===`unchanged`)){x(rt,!0);return}if(o&&(E.testHistoryEdits[fe(o.agentId,o.testId)]=o),c?.status===`changed`){let e=c.proposal;E.promptEdits[W(e.agentId,e.step)]=e,M(`promptEdit`,e.id)}x(Je,!1),x(cn,!1),x(Ye,null)}catch(e){if(i!==Q)return;console.error(`Failed to suggest prompt edits`,e),x($e,e instanceof Error?e.message:`Failed to suggest edits`,!0)}finally{i===Q&&(x(Z,!1),x(Xe,null))}}function dt(e){for(let[t,n]of Object.entries(E.promptEdits))n.id===e&&delete E.promptEdits[t];U.url.searchParams.get(`promptEdit`)===e&&M(`promptEdit`,null)}function ft(){let e=s(K);!e||s(nt)||(Et(),x(et,null),dt(e.id),q.agents.rejectPromptEdit.mutate({id:e.id}).catch(e=>{console.error(`Failed to release rejected prompt edit`,e)}))}async function pt(){let e=s(K);if(!e||s(nt))return;let t=on??sn,n=t?.saveViewState()??null,r=t?.getVisibleRanges()[0]?.startLineNumber??null,i=r&&t?t.getTopForLineNumber(r)-t.getScrollTop():0;Et(),x(nt,!0),x(et,null);try{let t=await q.agents.acceptPromptEdit.mutate({id:e.id});if(E.promptDrafts[e.step]=t.prompt,E.steps=E.steps.map(n=>n.name===e.step?{...n,prompt:t.prompt}:n),E.currentStep=E.steps.find(e=>e.name===s(H))??E.currentStep,await F(),dt(e.id),await F(),n&&an){let e=an;requestAnimationFrame(()=>{if(an===e)try{e.restoreViewState(n),r&&e.setScrollTop(e.getTopForLineNumber(r)-i)}catch(e){console.warn(`Failed to preserve accepted prompt scroll position`,e)}})}}catch(e){console.error(`Failed to accept prompt edit`,e),x(et,e instanceof Error?e.message:`Failed to save prompt`,!0)}finally{x(nt,!1)}}L(()=>{let e=(U.url.searchParams.get(`promptEdit`)||``).trim();!e||ot.has(e)||(ot.add(e),q.agents.promptEditProposal.query({id:e}).then(e=>{!e||e.agentId!==E.agentId||(E.promptEdits[W(e.agentId,e.step)]=e)}).catch(e=>console.error(`Failed to restore prompt edit`,e)))});let mt=w(()=>E.currentStep?.schema??null),ht=w(()=>!!s(mt)&&s(mt).trim().length>0),gt=P(!1);function _t(){s(mt)&&x(gt,!0)}function vt({value:e}){if(e===E.edit.tab)return;Y(),$();let t=U.url.searchParams.get(`step`),n=`/edit/${y(E.agentId)}/${e}`,r=new URLSearchParams;t&&r.set(`step`,t),E.conversationId&&r.set(`conversation`,E.conversationId),s(K)&&r.set(`promptEdit`,s(K).id);let i=r.size?`${n}?${r.toString()}`:n;V(i)}let yt=w(()=>{let e=U.url.pathname.split(`/`)[1];return e===`traces`?`view`:e});function bt({value:e}){if(e!==s(yt)){if(Y(),$(),e===`edit`)return V(`/edit`);if(e===`view`){let e=new URLSearchParams({agent:E.agentId});return V(`/view?${e.toString()}`)}V(`/`+e)}}function xt(e){return E.contextPopoverOpen=!1,E.edit=At(E.edit,{kind:e}),E.edit.popover?.requestId??0}function St(e,t){E.edit=jt(E.edit,{requestId:e,data:t})}function wt(e,t,n){E.edit=Mt(E.edit,{requestId:e,error:t,data:n})}function Et(){E.edit=Nt(E.edit)}function Dt(){Et(),E.contextPopoverOpen=!0}function It(){E.contextPopoverOpen=!1}function Lt(){E.contextPopoverOpen?It():Dt()}function $(){Et(),It()}function Rt(e){return e===`analyze`?`Analyze`:`Find issues`}function zt(e){E.edit=Pt(E.edit,e)}function Bt(e){E.edit=Ft(E.edit,e)}let nn=null,rn=null,an=null,on=null,sn=null,cn=P(!1),ln=null,un=P(I({}));function dn(e){try{return tt.default.configure({autoescape:!1,trimBlocks:!0,lstripBlocks:!0}),tt.default.renderString(e,s(un))}catch(t){return console.error(`Failed to render prompt preview`,t),e}}let fn=w(()=>{let e=s(K);return e?s(cn)?dn(e.originalPrompt):e.originalPrompt:``}),pn=w(()=>{let e=s(K);return e?s(cn)?dn(e.suggestedPrompt):e.suggestedPrompt:``});L(()=>{let e=E.currentStep?.name??null;e!==ln&&(ln=e,x(cn,!1))});function mn(e,t){an=e,nn?.dispose(),nn=Vt(e,t),nn.setHighlights(E.edit.highlights)}function hn(e,t){on=e,rn?.dispose(),rn=Vt(e,t),rn.setHighlights(E.edit.highlights)}L(()=>{let e=E.edit.highlights;s(K)&&E.edit.popover?rn?.setHighlights(e):nn?.setHighlights(e)}),L(()=>{s(K)&&E.edit.popover||(rn?.dispose(),rn=null,on=null)});let gn=P(``);L(()=>{let e=U.url.toString();e!==s(gn)&&(x(gn,e,!0),E.edit=kt(E.edit,{pathname:U.url.pathname}),E.contextPopoverOpen=!1)});function _n(e,t,n){return Math.max(t,Math.min(n,e))}function vn(e){let t=new Map;for(let n of e||[])for(let e of n.contradictingQuotes||[]){let n=String(e||``).trim();n&&t.set(n,(t.get(n)||0)+1)}return[...t.entries()].map(([e,t])=>({quote:e,count:_n(t,1,10)})).sort((e,t)=>t.count-e.count||e.quote.localeCompare(t.quote))}let yn=P(!1);async function bn(){if(s(yn)||!E.currentStep)return;x(yn,!0);let e=xt(`findIssues`);try{let t=await q.tests.findPromptIssues.mutate({agent:E.agentId,step:E.currentStep.name,prompt:s(me)}),n=vn(t.issues||[]);if(E.edit.popover?.requestId!==e)return;zt(n);let r=null;try{r=JSON.stringify(t.raw,null,2)}catch{r=null}St(e,{title:`Prompt issues — ${E.currentStep.name}`,issues:t.issues,raw:r})}catch(t){console.error(t);let n=typeof t?.message==`string`?t.message:(()=>{try{return JSON.stringify(t)}catch{return String(t)}})();wt(e,n||`Failed to find issues in this prompt`,{title:`Prompt issues failed — ${E.currentStep.name}`,raw:n})}finally{x(yn,!1)}}function xn(e){Y(),$();let t=U.url.searchParams.get(`step`),n=`/edit/${y(e)}/${E.edit.tab}`,r=new URLSearchParams;t&&r.set(`step`,t);let i=ve(e,t);i&&r.set(`promptEdit`,i.id);let a=r.size?`${n}?${r.toString()}`:n;V(a)}function Sn(e){if(!E.wsLoaded){console.warn(`[roleplay] Ignoring request while websocket is reconnecting`);return}E.turnRunning=!0,je.send(e)}oe({state:E,actions:{openPopover:xt,setPopoverReady:St,setPopoverError:wt,closePopover:Et,setHighlightQuotes:zt,focusQuote:Bt,openAiEdit:(e,t)=>st(e,t),openContextPopover:Dt,closeContextPopover:It,toggleContextPopover:Lt,sendChatMessage:e=>{let t=E.conversationId;if(!t||!E.chatReady){console.warn(`[roleplay] Ignoring chat message: no open conversation`);return}Sn({type:`message`,agentId:E.agentId,conversationId:t,message:e,promptOverrides:ge()})},selectConversation:e=>{Y(),$(),e&&He(e)},newConversation:async()=>{Y(),$(),await We(E.agentId)},deleteConversation:async e=>{if(await q.conversations.delete.mutate({conversationId:e}),await Ve(E.agentId),E.conversationId!==e)return;let t=E.conversations[0]?.conversationId;t?await He(t):await We(E.agentId)},regenerateFromTurn:async e=>{let t=E.conversationId;if(!t)return;await Y(),$();let{inboundMessage:n}=await q.conversations.truncate.mutate({conversationId:t,fromTurn:e});ze(await q.conversations.get.query({conversationId:t})),n&&Sn({type:`message`,agentId:E.agentId,conversationId:t,message:n,promptOverrides:ge()})},flushPromptSave:Y,getPromptOverrides:()=>ge(),getTestHistoryOverrides:()=>_e(),getActivePromptEditId:()=>s(K)?.id??null,hangup(){let e=E.conversationId;e&&Sn({type:`hangup`,agentId:E.agentId,conversationId:e})}}}),ne(async()=>{try{x(u,await q.agents.catalog.query(),!0)}catch(e){console.error(`Failed to load agents`,e)}je.onClose(()=>{E.wsLoaded=!1,E.chatReady=!1,E.turnRunning=!1}),je.onError(e=>{E.turnRunning=!1,r(e)}),je.onEvent(e=>{if(e.conversationId===E.conversationId){if(e.type===`entry`){Be(e.entry);return}if(e.type===`turn-started`){E.turnRunning=!0;return}e.type===`turn-finished`&&(E.turnRunning=!1,Ve(E.agentId),Ue(e.conversationId))}}),je.onOpen(()=>{E.wsLoaded=!0}),je.init(),E.wsLoaded=je.isReady()}),j(()=>{Y(),Me(),nn?.dispose(),nn=null,an=null,rn?.dispose(),rn=null,on=null,sn=null}),L(()=>{let e=s(C);e!==A&&(Y(),Oe=null,Me(),A=e,E.agentId=e,E.chatReady=!1,E.turnRunning=!1,E.promptDrafts={},E.steps=[],E.currentStep=null,E.conversations=[],E.conversationId=null,E.context=null,x(un,{},!0),Se(),Ee(),$(),e&&(Le(e),Ge(e),q.agents.context.query({agentId:e}).then(t=>{E.agentId===e&&x(un,t??{},!0)}).catch(e=>console.error(`Failed to load prompt preview context`,e))))});var Cn=tn(),wn=v(Cn),Tn=D(wn);xe(Tn,{className:`flex-none`,get agents(){return s(u)},get currentAgent(){return E.agentId},onAgentClick:xn});var En=N(Tn,2),Dn=D(En),On=N(D(Dn),2),kn=D(On);ce(kn,{get value(){return s(yt)},ariaLabel:`Top tabs`,onChange:bt,children:(e,t)=>{var n=Ht(),r=v(n);le(r,{value:`edit`,children:(e,t)=>{f();var n=B(`Edit`);o(e,n)},$$slots:{default:!0}});var i=N(r,2);le(i,{value:`view`,children:(e,t)=>{f();var n=B(`View`);o(e,n)},$$slots:{default:!0}}),o(e,n)},$$slots:{default:!0}}),h(On),f(2),h(Dn);var An=N(Dn,2),jn=D(An),Mn=D(jn);se(Mn,{class:`flex h-full min-w-0 flex-col !rounded-none p-0`,children:(e,t)=>{var n=Kt(),r=D(n),i=e=>{var t=Ut();o(e,t)},a=e=>{var t=Wt();o(e,t)},l=e=>{var t=c(),n=v(t);p(n,17,()=>E.steps,k,(e,t)=>{var n=Gt(),r=D(n),i=D(r,!0);h(r),h(n),S(()=>{z(n,1,`my-1 w-full rounded-lg px-3 py-2 text-left text-rc-gray-200 hover:bg-rc-gray-700 ${s(t).name===E.currentStep?.name?`bg-rc-gray-600`:`bg-transparent`}`),d(i,s(t).name)}),g(`click`,n,()=>Ke(s(t).name)),o(e,n)}),o(e,t)};O(r,e=>{E.wsLoaded?E.steps.length===0?e(a,1):e(l,-1):e(i)}),h(n),o(e,n)},$$slots:{default:!0}});var Nn=N(Mn,2),Pn=D(Nn),Fn=D(Pn),In=D(Fn),Ln=D(In,!0);h(In),h(Fn);var Rn=N(Fn,2),zn=D(Rn),Bn=D(zn);te(Bn),f(2),h(zn);var Vn=N(zn,2);{let e=w(()=>!E.currentStep||s(yn));G(Vn,{variant:`secondary`,get disabled(){return s(e)},onclick:bn,children:(e,t)=>{f();var n=B(`Find issues`);o(e,n)},$$slots:{default:!0}})}var Hn=N(Vn,2);{let e=w(()=>!E.currentStep||!!s(K)||s(Z));G(Hn,{variant:`secondary`,get disabled(){return s(e)},onclick:()=>st(),children:(e,t)=>{f();var n=B(`Edit with AI`);o(e,n)},$$slots:{default:!0}})}h(Rn),h(Pn);var Un=N(Pn,2),Wn=D(Un),Gn=e=>{var t=Yt(),r=D(t);n(r,()=>E.currentStep.name,e=>{{let t=w(()=>s(ht)&&!s(K)),n=w(()=>!s(T)||!!s(K)),r=w(()=>s(K)?`Accept or reject the AI suggestion before editing.`:s(T)?``:`Bosun is running in read-only mode.`),i=w(()=>!s(K)&&s(cn));it(e,{class:`h-full min-w-0 focus:outline-none focus:ring-0`,get initialPrompt(){return s(pe)},get agentId(){return E.agentId},get stepName(){return E.currentStep.name},onPromptChanged:qe,get showSchemaButton(){return s(t)},onSchemaClick:_t,get readOnly(){return s(n)},get readOnlyMessage(){return s(r)},showPreviewToggle:!1,get preview(){return s(i)},onEditorReady:mn})}});var i=N(r,2),a=e=>{var t=Jt(),n=D(t),r=e=>{it(e,{class:`h-full min-w-0 focus:outline-none focus:ring-0`,get initialPrompt(){return s(K).suggestedPrompt},get agentId(){return E.agentId},get stepName(){return E.currentStep.name},onPromptChanged:()=>{},showSchemaButton:!1,readOnly:!0,readOnlyMessage:`Accept or reject the AI suggestion before editing.`,bottomPadding:56,showPreviewToggle:!1,onEditorReady:hn})},i=e=>{ye(e,{variant:`prompt`,class:`h-full min-w-0`,get original(){return s(fn)},get modified(){return s(pn)},inline:!0,bottomPadding:56,readOnlyMessage:`Accept or reject the AI suggestion before editing.`,onModifiedEditorReady:e=>sn=e})};O(n,e=>{E.edit.popover?e(r):e(i,-1)});var a=N(n,2),c=D(a);G(c,{variant:`secondary`,get disabled(){return s(nt)},onclick:ft,children:(e,t)=>{f();var n=B(`✕ Reject`);o(e,n)},$$slots:{default:!0}});var l=N(c,2);{let e=w(()=>s(nt)||!s(T));G(l,{get disabled(){return s(e)},onclick:pt,children:(e,t)=>{f();var n=B(`✓ Accept`);o(e,n)},$$slots:{default:!0}})}var u=N(l,2),p=e=>{var t=qt(),n=D(t,!0);h(t),S(()=>d(n,s(et))),o(e,t)};O(u,e=>{s(et)&&e(p)}),h(a);var m=N(a,2),g=e=>{G(e,{variant:`secondary`,onclick:_t,class:`absolute bottom-2 right-6 z-20 !font-medium`,children:(e,t)=>{f();var n=B(`Schema`);o(e,n)},$$slots:{default:!0}})};O(m,e=>{s(ht)&&e(g)}),h(t),o(e,t)};O(i,e=>{s(K)&&e(a)}),h(t),o(e,t)},Kn=e=>{se(e,{class:`flex h-full min-w-0 items-center justify-center !rounded-none p-4 text-sm text-rc-gray-400`,children:(e,t)=>{f();var n=B(`Select a step to edit its prompt`);o(e,n)},$$slots:{default:!0}})};O(Wn,e=>{E.currentStep?e(Gn):e(Kn,-1)}),h(Un),h(Nn);var qn=N(Nn,2);se(qn,{class:`relative flex h-full min-w-0 flex-col overflow-hidden !rounded-none p-0`,children:(e,n)=>{var r=Xt(),i=v(r),c=D(i);ce(c,{get value(){return E.edit.tab},ariaLabel:`Mode tabs`,onChange:vt,children:(e,t)=>{var n=Ht(),r=v(n);le(r,{value:`roleplay`,children:(e,t)=>{f();var n=B(`Roleplay`);o(e,n)},$$slots:{default:!0}});var i=N(r,2);le(i,{value:`tests`,children:(e,t)=>{f();var n=B(`Tests`);o(e,n)},$$slots:{default:!0}}),o(e,n)},$$slots:{default:!0}}),h(i);var l=N(i,2),u=D(l);a(u,()=>t.children),h(l);var d=N(l,2),p=e=>{{let t=e=>{Ct(e,{})},n=w(()=>Rt(E.edit.popover.kind));de(e,{get title(){return s(n)},onClose:Et,children:t,$$slots:{default:!0}})}};O(d,e=>{E.edit.popover&&e(p)});var m=N(d,2),g=e=>{de(e,{title:`Context`,onClose:It,children:e=>{Tt(e,{})},$$slots:{default:!0}})};O(m,e=>{E.contextPopoverOpen&&e(g)}),o(e,r)},$$slots:{default:!0}}),h(jn),h(An),h(En),h(wn);var Jn=N(wn,2);ue(Jn,{title:`Edit with AI`,class:`!max-w-xl`,get underlayOpen(){return s(Z)},get open(){return s(Je)},set open(e){x(Je,e,!0)},children:e=>{var t=Qt(),n=N(D(t),2);Ae(n,{id:`ai-edit-request`,rows:6,get disabled(){return s(Z)},placeholder:`I want the agent to ask the user's name during the greeting`,class:`rc-scroll disabled:cursor-wait disabled:opacity-70`,get value(){return s(X)},set value(e){x(X,e,!0)}});var r=N(n,2),i=e=>{var t=Zt(),n=D(t,!0);h(t),S(()=>d(n,s($e))),o(e,t)};O(r,e=>{s($e)&&e(i)}),h(t),o(e,t)},footer:e=>{var t=Ht(),n=v(t);G(n,{variant:`outlined`,size:`small`,onclick:ct,children:(e,t)=>{f();var n=B(`Cancel`);o(e,n)},$$slots:{default:!0}});var r=N(n,2);{let e=w(()=>!s(X).trim()||s(Z));G(r,{size:`small`,get disabled(){return s(e)},onclick:ut,children:(e,t)=>{f();var n=B();S(()=>d(n,s(Z)?`Suggesting edits…`:`Suggest edits`)),o(e,n)},$$slots:{default:!0}})}o(e,t)},underlay:e=>{var t=$t(),n=D(t,!0);h(t),S(()=>{ee(t,`title`,s(Qe)),d(n,s(Qe))}),o(e,t)},$$slots:{default:!0,footer:!0,underlay:!0}});var Yn=N(Jn,2);ue(Yn,{title:`No changes were suggested`,class:`!z-[60] !max-w-md`,overlayClass:`!z-[60]`,get open(){return s(rt)},set open(e){x(rt,e,!0)},children:e=>{var t=en();o(e,t)},footer:e=>{G(e,{size:`small`,onclick:()=>x(rt,!1),children:(e,t)=>{f();var n=B(`Close`);o(e,n)},$$slots:{default:!0}})},$$slots:{default:!0,footer:!0}});var Xn=N(Yn,2),Zn=e=>{ue(e,{title:`Schema`,class:`!w-[80vw] !max-w-5xl`,get open(){return s(gt)},set open(e){x(gt,e,!0)},children:e=>{Ne(e,{class:`h-[70vh] min-w-0`,get schema(){return s(mt)}})},footer:e=>{G(e,{size:`small`,onclick:()=>x(gt,!1),children:(e,t)=>{f();var n=B(`Close`);o(e,n)},$$slots:{default:!0}})},$$slots:{default:!0,footer:!0}})};O(Xn,e=>{s(mt)&&e(Zn)}),S(()=>{d(Ln,E.currentStep?.name??`Prompt`),Bn.disabled=!E.currentStep||!!s(K)&&!!E.edit.popover}),re(Bn,()=>s(cn),e=>x(cn,e)),o(e,Cn),i()}r([`click`]);export{nn as component};
|
|
35
|
+
`).replace(/[\u00A0\u2007\u202F\u2009\u200A\u200B\uFEFF]/g,` `).replace(/[\u201C\u201D\u201E\u00AB\u00BB]/g,`"`).replace(/[\u2018\u2019]/g,`'`).replace(/[\u2013\u2014]/g,`-`)}function Bt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function Vt(e,t){let n=e.createDecorationsCollection(),r=e.createDecorationsCollection(),i=null,a=new Map,o=new Map,s=0;function c(){a=new Map,o=new Map,s=0}function l(e,t,n){return Number.isNaN(e)?t:Math.max(t,Math.min(n,e))}function u(e){return`rgba(220, 38, 38, ${l(.22+l(e,1,10)*.06,.28,.82)})`}function d(e,t){let n=String(e??``);if(!n)return[];let r=a.get(n);if(r)return r;let i=It(t,n);return a.set(n,i),i}function f(r){let i=e.getModel();if(!i)return;let a=i.getValue()??``,o=[],s=[...r||[]].sort((e,t)=>(e.count||0)-(t.count||0));for(let e of s){let n=String(e.quote||``);if(!n)continue;let r=l(Number(e.count||0),1,10),s=u(r),c=d(n,a);for(let e of c){let n=i.getPositionAt(e.start),a=i.getPositionAt(e.end);o.push({range:new t.Range(n.lineNumber,n.column,a.lineNumber,a.column),options:{inlineClassName:`analysis-quote analysis-quote-l${r}`,overviewRuler:{color:s,position:t.editor.OverviewRulerLane.Center}}})}}n.set(o)}function p(n){let i=e.getModel();if(!i)return;let a=d(n,i.getValue()??``);if(a.length===0)return;let s=((o.get(n)??-1)+1)%a.length;o.set(n,s);let c=a[s],l=i.getPositionAt(c.start),u=i.getPositionAt(c.end),f=new t.Range(l.lineNumber,l.column,u.lineNumber,u.column);r.set([{range:f,options:{inlineClassName:`analysis-quote-focus`}}]),e.setSelection(f),e.revealRangeInCenter(f,t.editor.ScrollType.Smooth),e.focus()}function m(e){if(i=e,!i){n.clear(),r.clear(),c();return}f(i.quotes||[]),i.focusQuote&&i.focusNonce!==s?(s=i.focusNonce,p(i.focusQuote)):i.focusQuote||r.clear()}let h=e.onDidChangeModelContent(()=>{i&&(a=new Map,r.clear(),f(i.quotes||[]))});return{setHighlights:m,dispose:()=>{try{h.dispose(),n.clear(),r.clear()}finally{i=null,c()}}}}var Ht=u(`<!> <!>`,1),Ut=u(`<div class="p-2 text-rc-gray-400">Connecting…</div>`),Wt=u(`<div class="p-2 text-rc-gray-400">No steps</div>`),Gt=u(`<button><span class="block truncate"> </span></button>`),Kt=u(`<div class="rc-scroll min-h-0 flex-1 overflow-auto p-2"><!></div>`),qt=u(`<span class="max-w-64 text-sm text-red-300"> </span>`),Jt=u(`<div class="absolute inset-0 z-10 min-w-0"><!> <div class="absolute bottom-2 left-3 z-20 flex items-center gap-2"><!> <!> <!></div> <!></div>`),Yt=u(`<div class="relative h-full min-w-0"><!> <!></div>`),Xt=u(`<div class="border-b border-rc-gray-700 p-2"><!></div> <div class="min-h-0 flex-1"><!></div> <!> <!>`,1),Zt=u(`<div class="text-sm text-red-300"> </div>`),Qt=u(`<div class="flex flex-col gap-2"><label for="ai-edit-request" class="font-semibold text-rc-gray-100">What do you want to change?</label> <!> <!></div>`),$t=u(`<div class="min-w-0 truncate whitespace-nowrap text-base text-rc-gray-300"> </div>`),en=u(`<p class="text-rc-gray-200">Try changing your request and suggest edits again.</p>`),tn=u(`<div class="flex h-screen"><!> <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"><!></div> <div class="flex w-1/3 items-center justify-end gap-2 pr-2"></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)]"><!> <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"> </div></div> <div class="flex items-center gap-3"><label class="inline-flex items-center gap-2 text-rc-gray-300"><input type="checkbox" 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> <!> <!></div></div> <div class="min-h-0 flex-1"><!></div></div> <!></div></div></div></div> <!> <!> <!>`,1);function nn(e,t){m(t,!0);let{onError:r}=ae(),u=P(I([])),_=e=>{try{return e?decodeURIComponent(e):``}catch{return e||``}},y=e=>encodeURIComponent(e);function b(e){return _(e).trim().replace(/^\/+|\/+$/g,``)}let C=w(()=>b(t.params.agent)),T=w(()=>he().editable),E=I({agentId:l(()=>b(t.params.agent)),agentType:void 0,wsLoaded:!1,chatReady:!1,turnRunning:!1,steps:[],currentStep:null,promptDrafts:{},promptEdits:{},testHistoryEdits:{},conversations:[],conversationId:null,context:null,contextPopoverOpen:!1,edit:Ot({pathname:U.url.pathname})}),A=null;function M(e,t){if(typeof window>`u`)return;let n=new URL(window.location.href);t===null?n.searchParams.delete(e):n.searchParams.set(e,t),ie(n.toString(),{})}function R(e){e?.name&&E.promptDrafts[e.name]===void 0&&(E.promptDrafts[e.name]=e.prompt??``)}let H=w(()=>E.currentStep?.name??null),W=(e,t)=>`${e}\u0000${t}`,fe=(e,t)=>`${e}\u0000${t}`,K=w(()=>{let e=s(H);return e?E.promptEdits[W(E.agentId,e)]??null:null}),pe=w(()=>{let e=s(H);if(!e)return``;let t=E.promptDrafts[e];return typeof t==`string`?t:``}),me=w(()=>s(K)?.suggestedPrompt??s(pe));function ge(e=E.agentId){let t={};for(let n of Object.values(E.promptEdits))n.agentId===e&&(t[n.step]=n.suggestedPrompt);return t}function _e(e=E.agentId){let t={};for(let n of Object.values(E.testHistoryEdits))n.agentId===e&&(t[n.testId]={conversation:n.suggestedConversation});return t}function ve(e,t){return t?E.promptEdits[W(e,t)]??null:null}let J=null,Oe=null,ke=Promise.resolve();function Me(){J&&=(clearTimeout(J),null)}async function Pe(e,t,n){try{await q.agents.savePrompt.mutate({agentId:e,step:t,prompt:n}),E.agentId===e&&(E.steps=E.steps.map(e=>e.name===t?{...e,prompt:n}:e),E.currentStep=E.steps.find(e=>e.name===s(H))??E.currentStep)}catch(r){console.error(`Failed to save prompt`,r);let i=E.promptDrafts[t];throw E.agentId===e&&i===n&&(Oe={stepName:t,prompt:n}),r}}function Fe(e,t,n){let r=ke.catch(()=>{}).then(()=>Pe(e,t,n));return ke=r.catch(()=>{}),r}async function Y(){if(!Oe)return;let e=E.agentId.trim();if(!e)return;let{stepName:t,prompt:n}=Oe;Me(),Oe=null,await Fe(e,t,n)}function Ie(e,t){Oe={stepName:e,prompt:t},Me(),J=setTimeout(()=>{J=null,Y()},800)}L(()=>{E.wsLoaded&&Y()});async function Le(e){try{let t=await q.agents.get.query({agentId:e});if(E.agentId!==e)return;E.steps=t.steps,E.agentType=t.type;let n={};for(let e of E.steps){let t=E.promptDrafts[e.name];n[e.name]=typeof t==`string`?t:e.prompt??``}E.promptDrafts=n,Re()}catch(e){console.error(`Failed to load agent`,e),r(e instanceof Error?e.message:String(e))}}function Re(){let e=(U.url.searchParams.get(`step`)||``).trim()||null,t=e?E.steps.find(t=>t.name===e)??null:null,n=E.steps.find(e=>e.name.toLowerCase()===`main`)??E.steps.find(e=>be(e.name))??E.steps[0]??null,r=t??n;E.currentStep=r,r?(R(r),r.name!==e&&M(`step`,r.name),Y()):M(`step`,null)}function ze(e){Se(),Ee();for(let t of e.entries)Be(t)}function Be(e){switch(e.kind){case`log`:De(e.payload);break;case`step-trace`:we({...e.payload,bosunTurn:e.turn});break;case`api-call-trace`:Te({...e.payload,bosunTurn:e.turn});break;case`conversational-trace`:Ce({...e.payload,bosunTurn:e.turn})}}async function Ve(e){try{E.conversations=await q.conversations.list.query({agentId:e})}catch(e){console.error(`Failed to list conversations`,e),E.conversations=[]}}async function He(e){try{let t=await q.conversations.get.query({conversationId:e});if(t.agentId!==E.agentId)return;E.conversationId=e,E.context=t.context,M(`conversation`,e),ze(t),E.chatReady=!0}catch(e){console.error(`Failed to open conversation`,e),r(e instanceof Error?e.message:String(e))}}async function Ue(e){try{let t=await q.conversations.get.query({conversationId:e});if(E.conversationId!==e)return;E.context=t.context}catch(e){console.error(`Failed to refresh conversation context`,e)}}async function We(e){let t=await q.conversations.create.mutate({agentId:e});E.conversationId=t.conversationId,E.context=t.context,M(`conversation`,t.conversationId),Se(),Ee(),E.chatReady=!0,await Ve(e),Sn({type:`start`,agentId:e,conversationId:t.conversationId,promptOverrides:ge()})}async function Ge(e){await Ve(e);let t=(U.url.searchParams.get(`conversation`)||``).trim()||null,n=E.conversations.some(e=>e.conversationId===t);if(t&&n){await He(t);return}let r=E.conversations[0]?.conversationId;if(r){await He(r);return}await We(e)}function Ke(e){Y(),$();let t=E.steps.find(t=>t.name===e)||null;E.currentStep=t,t?(R(t),M(`step`,t.name),M(`promptEdit`,ve(E.agentId,t.name)?.id??null)):M(`step`,null)}function qe(e){let t=s(H);!t||!s(T)||(E.promptDrafts[t]=e,Ie(t,e))}let Je=P(!1),X=P(``),Ye=P(null),Z=P(!1),Xe=P(null);function Ze(e){return(e||``).replace(/[*_`]/g,``).replace(/(^|\s)#{1,6}\s+/g,` `).replace(/\s+/g,` `).trim()||`Thinking...`}let Qe=w(()=>Ze(s(Xe)?.summary)),$e=P(null),et=P(null),nt=P(!1),rt=P(!1),Q=0,at=!1,ot=new Set;L(()=>{let e=s(Je);at&&!e&&s(Z)&&(Q+=1,x(Z,!1)),at=e});function st(e=``,t){if(!E.currentStep)return;let n=t?ve(E.agentId,t.step):s(K);(!t||t.kind===`test-fix`)&&n||(x(X,e,!0),x(Ye,t??null,!0),x($e,null),x(rt,!1),x(Je,!0))}function ct(){Q+=1,x(Z,!1),x(Je,!1),x(Ye,null),x(rt,!1)}async function lt(e,t){for(;t===Q&&s(Z);){try{let n=await q.agents.promptEditProgress.query({id:e});if(t!==Q||!s(Z))return;n&&x(Xe,{phase:n.phase,activity:n.activity,summary:n.summary},!0)}catch(e){t===Q&&console.warn(`Failed to read prompt edit progress`,e)}await new Promise(e=>setTimeout(e,400))}}async function ut(){let e=s(X).trim(),t=s(Ye),n=t?.step??s(H),r=E.agentId.trim();if(!e||!n||!r||s(Z))return;let i=++Q,a=crypto.randomUUID();x(Z,!0),x(Xe,null),x($e,null),lt(a,i);try{if(!t&&(await Y(),i!==Q))return;let o=null,s=null,c=null;if(t?.kind===`test-fix`){let i=await q.agents.suggestTestFix.mutate({agentId:r,testId:t.testId,step:n,request:e,prompt:t.prompt,basePrompt:t.basePrompt,currentIncorrectOutcome:t.currentIncorrectOutcome??``,progressId:a});s=i.history,c=i.prompt}else t?s=await q.tests.suggestHistoryEdit.mutate({agent:r,testId:t.testId,step:n,request:e,prompt:t.prompt,basePrompt:t.basePrompt,progressId:a}):c=await q.agents.suggestPromptEdit.mutate({agentId:r,step:n,request:e,progressId:a});if(i!==Q)return;if(t&&s?.status===`changed`&&(o=s.proposal),!o&&(!c||c.status===`unchanged`)){x(rt,!0);return}if(o&&(E.testHistoryEdits[fe(o.agentId,o.testId)]=o),c?.status===`changed`){let e=c.proposal;E.promptEdits[W(e.agentId,e.step)]=e,M(`promptEdit`,e.id)}x(Je,!1),x(cn,!1),x(Ye,null)}catch(e){if(i!==Q)return;console.error(`Failed to suggest prompt edits`,e),x($e,e instanceof Error?e.message:`Failed to suggest edits`,!0)}finally{i===Q&&(x(Z,!1),x(Xe,null))}}function dt(e){for(let[t,n]of Object.entries(E.promptEdits))n.id===e&&delete E.promptEdits[t];U.url.searchParams.get(`promptEdit`)===e&&M(`promptEdit`,null)}function ft(){let e=s(K);!e||s(nt)||(Et(),x(et,null),dt(e.id),q.agents.rejectPromptEdit.mutate({id:e.id}).catch(e=>{console.error(`Failed to release rejected prompt edit`,e)}))}async function pt(){let e=s(K);if(!e||s(nt))return;let t=on??sn,n=t?.saveViewState()??null,r=t?.getVisibleRanges()[0]?.startLineNumber??null,i=r&&t?t.getTopForLineNumber(r)-t.getScrollTop():0;Et(),x(nt,!0),x(et,null);try{let t=await q.agents.acceptPromptEdit.mutate({id:e.id});if(E.promptDrafts[e.step]=t.prompt,E.steps=E.steps.map(n=>n.name===e.step?{...n,prompt:t.prompt}:n),E.currentStep=E.steps.find(e=>e.name===s(H))??E.currentStep,await F(),dt(e.id),await F(),n&&an){let e=an;requestAnimationFrame(()=>{if(an===e)try{e.restoreViewState(n),r&&e.setScrollTop(e.getTopForLineNumber(r)-i)}catch(e){console.warn(`Failed to preserve accepted prompt scroll position`,e)}})}}catch(e){console.error(`Failed to accept prompt edit`,e),x(et,e instanceof Error?e.message:`Failed to save prompt`,!0)}finally{x(nt,!1)}}L(()=>{let e=(U.url.searchParams.get(`promptEdit`)||``).trim();!e||ot.has(e)||(ot.add(e),q.agents.promptEditProposal.query({id:e}).then(e=>{!e||e.agentId!==E.agentId||(E.promptEdits[W(e.agentId,e.step)]=e)}).catch(e=>console.error(`Failed to restore prompt edit`,e)))});let mt=w(()=>E.currentStep?.schema??null),ht=w(()=>!!s(mt)&&s(mt).trim().length>0),gt=P(!1);function _t(){s(mt)&&x(gt,!0)}function vt({value:e}){if(e===E.edit.tab)return;Y(),$();let t=U.url.searchParams.get(`step`),n=`/edit/${y(E.agentId)}/${e}`,r=new URLSearchParams;t&&r.set(`step`,t),E.conversationId&&r.set(`conversation`,E.conversationId),s(K)&&r.set(`promptEdit`,s(K).id);let i=r.size?`${n}?${r.toString()}`:n;V(i)}let yt=w(()=>{let e=U.url.pathname.split(`/`)[1];return e===`traces`?`view`:e});function bt({value:e}){if(e!==s(yt)){if(Y(),$(),e===`edit`)return V(`/edit`);if(e===`view`){let e=new URLSearchParams({agent:E.agentId});return V(`/view?${e.toString()}`)}V(`/`+e)}}function xt(e){return E.contextPopoverOpen=!1,E.edit=At(E.edit,{kind:e}),E.edit.popover?.requestId??0}function St(e,t){E.edit=jt(E.edit,{requestId:e,data:t})}function wt(e,t,n){E.edit=Mt(E.edit,{requestId:e,error:t,data:n})}function Et(){E.edit=Nt(E.edit)}function Dt(){Et(),E.contextPopoverOpen=!0}function It(){E.contextPopoverOpen=!1}function Lt(){E.contextPopoverOpen?It():Dt()}function $(){Et(),It()}function Rt(e){return e===`analyze`?`Analyze`:`Find issues`}function zt(e){E.edit=Pt(E.edit,e)}function Bt(e){E.edit=Ft(E.edit,e)}let nn=null,rn=null,an=null,on=null,sn=null,cn=P(!1),ln=null,un=P(I({}));function dn(e){try{return tt.default.configure({autoescape:!1,trimBlocks:!0,lstripBlocks:!0}),tt.default.renderString(e,s(un))}catch(t){return console.error(`Failed to render prompt preview`,t),e}}let fn=w(()=>{let e=s(K);return e?s(cn)?dn(e.originalPrompt):e.originalPrompt:``}),pn=w(()=>{let e=s(K);return e?s(cn)?dn(e.suggestedPrompt):e.suggestedPrompt:``});L(()=>{let e=E.currentStep?.name??null;e!==ln&&(ln=e,x(cn,!1))});function mn(e,t){an=e,nn?.dispose(),nn=Vt(e,t),nn.setHighlights(E.edit.highlights)}function hn(e,t){on=e,rn?.dispose(),rn=Vt(e,t),rn.setHighlights(E.edit.highlights)}L(()=>{let e=E.edit.highlights;s(K)&&E.edit.popover?rn?.setHighlights(e):nn?.setHighlights(e)}),L(()=>{s(K)&&E.edit.popover||(rn?.dispose(),rn=null,on=null)});let gn=P(``);L(()=>{let e=U.url.toString();e!==s(gn)&&(x(gn,e,!0),E.edit=kt(E.edit,{pathname:U.url.pathname}),E.contextPopoverOpen=!1)});function _n(e,t,n){return Math.max(t,Math.min(n,e))}function vn(e){let t=new Map;for(let n of e||[])for(let e of n.contradictingQuotes||[]){let n=String(e||``).trim();n&&t.set(n,(t.get(n)||0)+1)}return[...t.entries()].map(([e,t])=>({quote:e,count:_n(t,1,10)})).sort((e,t)=>t.count-e.count||e.quote.localeCompare(t.quote))}let yn=P(!1);async function bn(){if(s(yn)||!E.currentStep)return;x(yn,!0);let e=xt(`findIssues`);try{let t=await q.tests.findPromptIssues.mutate({agent:E.agentId,step:E.currentStep.name,prompt:s(me)}),n=vn(t.issues||[]);if(E.edit.popover?.requestId!==e)return;zt(n);let r=null;try{r=JSON.stringify(t.raw,null,2)}catch{r=null}St(e,{title:`Prompt issues — ${E.currentStep.name}`,issues:t.issues,raw:r})}catch(t){console.error(t);let n=typeof t?.message==`string`?t.message:(()=>{try{return JSON.stringify(t)}catch{return String(t)}})();wt(e,n||`Failed to find issues in this prompt`,{title:`Prompt issues failed — ${E.currentStep.name}`,raw:n})}finally{x(yn,!1)}}function xn(e){Y(),$();let t=U.url.searchParams.get(`step`),n=`/edit/${y(e)}/${E.edit.tab}`,r=new URLSearchParams;t&&r.set(`step`,t);let i=ve(e,t);i&&r.set(`promptEdit`,i.id);let a=r.size?`${n}?${r.toString()}`:n;V(a)}function Sn(e){if(!E.wsLoaded){console.warn(`[roleplay] Ignoring request while websocket is reconnecting`);return}E.turnRunning=!0,je.send(e)}oe({state:E,actions:{openPopover:xt,setPopoverReady:St,setPopoverError:wt,closePopover:Et,setHighlightQuotes:zt,focusQuote:Bt,openAiEdit:(e,t)=>st(e,t),openContextPopover:Dt,closeContextPopover:It,toggleContextPopover:Lt,sendChatMessage:e=>{let t=E.conversationId;if(!t||!E.chatReady){console.warn(`[roleplay] Ignoring chat message: no open conversation`);return}Sn({type:`message`,agentId:E.agentId,conversationId:t,message:e,promptOverrides:ge()})},selectConversation:e=>{Y(),$(),e&&He(e)},newConversation:async()=>{Y(),$(),await We(E.agentId)},deleteConversation:async e=>{if(await q.conversations.delete.mutate({conversationId:e}),await Ve(E.agentId),E.conversationId!==e)return;let t=E.conversations[0]?.conversationId;t?await He(t):await We(E.agentId)},regenerateFromTurn:async e=>{let t=E.conversationId;if(!t)return;await Y(),$();let{inboundMessage:n}=await q.conversations.truncate.mutate({conversationId:t,fromTurn:e}),r=await q.conversations.get.query({conversationId:t});E.context=r.context,ze(r),n&&Sn({type:`message`,agentId:E.agentId,conversationId:t,message:n,promptOverrides:ge()})},flushPromptSave:Y,getPromptOverrides:()=>ge(),getTestHistoryOverrides:()=>_e(),getActivePromptEditId:()=>s(K)?.id??null,hangup(){let e=E.conversationId;e&&Sn({type:`hangup`,agentId:E.agentId,conversationId:e})}}}),ne(async()=>{try{x(u,await q.agents.catalog.query(),!0)}catch(e){console.error(`Failed to load agents`,e)}je.onClose(()=>{E.wsLoaded=!1,E.chatReady=!1,E.turnRunning=!1}),je.onError(e=>{E.turnRunning=!1,r(e)}),je.onEvent(e=>{if(e.conversationId===E.conversationId){if(e.type===`entry`){Be(e.entry);return}if(e.type===`turn-started`){E.turnRunning=!0;return}e.type===`turn-finished`&&(E.turnRunning=!1,Ve(E.agentId),Ue(e.conversationId))}}),je.onOpen(()=>{E.wsLoaded=!0}),je.init(),E.wsLoaded=je.isReady()}),j(()=>{Y(),Me(),nn?.dispose(),nn=null,an=null,rn?.dispose(),rn=null,on=null,sn=null}),L(()=>{let e=s(C);e!==A&&(Y(),Oe=null,Me(),A=e,E.agentId=e,E.chatReady=!1,E.turnRunning=!1,E.promptDrafts={},E.steps=[],E.currentStep=null,E.conversations=[],E.conversationId=null,E.context=null,x(un,{},!0),Se(),Ee(),$(),e&&(Le(e),Ge(e),q.agents.context.query({agentId:e}).then(t=>{E.agentId===e&&x(un,t??{},!0)}).catch(e=>console.error(`Failed to load prompt preview context`,e))))});var Cn=tn(),wn=v(Cn),Tn=D(wn);xe(Tn,{className:`flex-none`,get agents(){return s(u)},get currentAgent(){return E.agentId},onAgentClick:xn});var En=N(Tn,2),Dn=D(En),On=N(D(Dn),2),kn=D(On);ce(kn,{get value(){return s(yt)},ariaLabel:`Top tabs`,onChange:bt,children:(e,t)=>{var n=Ht(),r=v(n);le(r,{value:`edit`,children:(e,t)=>{f();var n=B(`Edit`);o(e,n)},$$slots:{default:!0}});var i=N(r,2);le(i,{value:`view`,children:(e,t)=>{f();var n=B(`View`);o(e,n)},$$slots:{default:!0}}),o(e,n)},$$slots:{default:!0}}),h(On),f(2),h(Dn);var An=N(Dn,2),jn=D(An),Mn=D(jn);se(Mn,{class:`flex h-full min-w-0 flex-col !rounded-none p-0`,children:(e,t)=>{var n=Kt(),r=D(n),i=e=>{var t=Ut();o(e,t)},a=e=>{var t=Wt();o(e,t)},l=e=>{var t=c(),n=v(t);p(n,17,()=>E.steps,k,(e,t)=>{var n=Gt(),r=D(n),i=D(r,!0);h(r),h(n),S(()=>{z(n,1,`my-1 w-full rounded-lg px-3 py-2 text-left text-rc-gray-200 hover:bg-rc-gray-700 ${s(t).name===E.currentStep?.name?`bg-rc-gray-600`:`bg-transparent`}`),d(i,s(t).name)}),g(`click`,n,()=>Ke(s(t).name)),o(e,n)}),o(e,t)};O(r,e=>{E.wsLoaded?E.steps.length===0?e(a,1):e(l,-1):e(i)}),h(n),o(e,n)},$$slots:{default:!0}});var Nn=N(Mn,2),Pn=D(Nn),Fn=D(Pn),In=D(Fn),Ln=D(In,!0);h(In),h(Fn);var Rn=N(Fn,2),zn=D(Rn),Bn=D(zn);te(Bn),f(2),h(zn);var Vn=N(zn,2);{let e=w(()=>!E.currentStep||s(yn));G(Vn,{variant:`secondary`,get disabled(){return s(e)},onclick:bn,children:(e,t)=>{f();var n=B(`Find issues`);o(e,n)},$$slots:{default:!0}})}var Hn=N(Vn,2);{let e=w(()=>!E.currentStep||!!s(K)||s(Z));G(Hn,{variant:`secondary`,get disabled(){return s(e)},onclick:()=>st(),children:(e,t)=>{f();var n=B(`Edit with AI`);o(e,n)},$$slots:{default:!0}})}h(Rn),h(Pn);var Un=N(Pn,2),Wn=D(Un),Gn=e=>{var t=Yt(),r=D(t);n(r,()=>E.currentStep.name,e=>{{let t=w(()=>s(ht)&&!s(K)),n=w(()=>!s(T)||!!s(K)),r=w(()=>s(K)?`Accept or reject the AI suggestion before editing.`:s(T)?``:`Bosun is running in read-only mode.`),i=w(()=>!s(K)&&s(cn));it(e,{class:`h-full min-w-0 focus:outline-none focus:ring-0`,get initialPrompt(){return s(pe)},get agentId(){return E.agentId},get stepName(){return E.currentStep.name},onPromptChanged:qe,get showSchemaButton(){return s(t)},onSchemaClick:_t,get readOnly(){return s(n)},get readOnlyMessage(){return s(r)},showPreviewToggle:!1,get preview(){return s(i)},onEditorReady:mn})}});var i=N(r,2),a=e=>{var t=Jt(),n=D(t),r=e=>{it(e,{class:`h-full min-w-0 focus:outline-none focus:ring-0`,get initialPrompt(){return s(K).suggestedPrompt},get agentId(){return E.agentId},get stepName(){return E.currentStep.name},onPromptChanged:()=>{},showSchemaButton:!1,readOnly:!0,readOnlyMessage:`Accept or reject the AI suggestion before editing.`,bottomPadding:56,showPreviewToggle:!1,onEditorReady:hn})},i=e=>{ye(e,{variant:`prompt`,class:`h-full min-w-0`,get original(){return s(fn)},get modified(){return s(pn)},inline:!0,bottomPadding:56,readOnlyMessage:`Accept or reject the AI suggestion before editing.`,onModifiedEditorReady:e=>sn=e})};O(n,e=>{E.edit.popover?e(r):e(i,-1)});var a=N(n,2),c=D(a);G(c,{variant:`secondary`,get disabled(){return s(nt)},onclick:ft,children:(e,t)=>{f();var n=B(`✕ Reject`);o(e,n)},$$slots:{default:!0}});var l=N(c,2);{let e=w(()=>s(nt)||!s(T));G(l,{get disabled(){return s(e)},onclick:pt,children:(e,t)=>{f();var n=B(`✓ Accept`);o(e,n)},$$slots:{default:!0}})}var u=N(l,2),p=e=>{var t=qt(),n=D(t,!0);h(t),S(()=>d(n,s(et))),o(e,t)};O(u,e=>{s(et)&&e(p)}),h(a);var m=N(a,2),g=e=>{G(e,{variant:`secondary`,onclick:_t,class:`absolute bottom-2 right-6 z-20 !font-medium`,children:(e,t)=>{f();var n=B(`Schema`);o(e,n)},$$slots:{default:!0}})};O(m,e=>{s(ht)&&e(g)}),h(t),o(e,t)};O(i,e=>{s(K)&&e(a)}),h(t),o(e,t)},Kn=e=>{se(e,{class:`flex h-full min-w-0 items-center justify-center !rounded-none p-4 text-sm text-rc-gray-400`,children:(e,t)=>{f();var n=B(`Select a step to edit its prompt`);o(e,n)},$$slots:{default:!0}})};O(Wn,e=>{E.currentStep?e(Gn):e(Kn,-1)}),h(Un),h(Nn);var qn=N(Nn,2);se(qn,{class:`relative flex h-full min-w-0 flex-col overflow-hidden !rounded-none p-0`,children:(e,n)=>{var r=Xt(),i=v(r),c=D(i);ce(c,{get value(){return E.edit.tab},ariaLabel:`Mode tabs`,onChange:vt,children:(e,t)=>{var n=Ht(),r=v(n);le(r,{value:`roleplay`,children:(e,t)=>{f();var n=B(`Roleplay`);o(e,n)},$$slots:{default:!0}});var i=N(r,2);le(i,{value:`tests`,children:(e,t)=>{f();var n=B(`Tests`);o(e,n)},$$slots:{default:!0}}),o(e,n)},$$slots:{default:!0}}),h(i);var l=N(i,2),u=D(l);a(u,()=>t.children),h(l);var d=N(l,2),p=e=>{{let t=e=>{Ct(e,{})},n=w(()=>Rt(E.edit.popover.kind));de(e,{get title(){return s(n)},onClose:Et,children:t,$$slots:{default:!0}})}};O(d,e=>{E.edit.popover&&e(p)});var m=N(d,2),g=e=>{de(e,{title:`Context`,onClose:It,children:e=>{Tt(e,{})},$$slots:{default:!0}})};O(m,e=>{E.contextPopoverOpen&&e(g)}),o(e,r)},$$slots:{default:!0}}),h(jn),h(An),h(En),h(wn);var Jn=N(wn,2);ue(Jn,{title:`Edit with AI`,class:`!max-w-xl`,get underlayOpen(){return s(Z)},get open(){return s(Je)},set open(e){x(Je,e,!0)},children:e=>{var t=Qt(),n=N(D(t),2);Ae(n,{id:`ai-edit-request`,rows:6,get disabled(){return s(Z)},placeholder:`I want the agent to ask the user's name during the greeting`,class:`rc-scroll disabled:cursor-wait disabled:opacity-70`,get value(){return s(X)},set value(e){x(X,e,!0)}});var r=N(n,2),i=e=>{var t=Zt(),n=D(t,!0);h(t),S(()=>d(n,s($e))),o(e,t)};O(r,e=>{s($e)&&e(i)}),h(t),o(e,t)},footer:e=>{var t=Ht(),n=v(t);G(n,{variant:`outlined`,size:`small`,onclick:ct,children:(e,t)=>{f();var n=B(`Cancel`);o(e,n)},$$slots:{default:!0}});var r=N(n,2);{let e=w(()=>!s(X).trim()||s(Z));G(r,{size:`small`,get disabled(){return s(e)},onclick:ut,children:(e,t)=>{f();var n=B();S(()=>d(n,s(Z)?`Suggesting edits…`:`Suggest edits`)),o(e,n)},$$slots:{default:!0}})}o(e,t)},underlay:e=>{var t=$t(),n=D(t,!0);h(t),S(()=>{ee(t,`title`,s(Qe)),d(n,s(Qe))}),o(e,t)},$$slots:{default:!0,footer:!0,underlay:!0}});var Yn=N(Jn,2);ue(Yn,{title:`No changes were suggested`,class:`!z-[60] !max-w-md`,overlayClass:`!z-[60]`,get open(){return s(rt)},set open(e){x(rt,e,!0)},children:e=>{var t=en();o(e,t)},footer:e=>{G(e,{size:`small`,onclick:()=>x(rt,!1),children:(e,t)=>{f();var n=B(`Close`);o(e,n)},$$slots:{default:!0}})},$$slots:{default:!0,footer:!0}});var Xn=N(Yn,2),Zn=e=>{ue(e,{title:`Schema`,class:`!w-[80vw] !max-w-5xl`,get open(){return s(gt)},set open(e){x(gt,e,!0)},children:e=>{Ne(e,{class:`h-[70vh] min-w-0`,get schema(){return s(mt)}})},footer:e=>{G(e,{size:`small`,onclick:()=>x(gt,!1),children:(e,t)=>{f();var n=B(`Close`);o(e,n)},$$slots:{default:!0}})},$$slots:{default:!0,footer:!0}})};O(Xn,e=>{s(mt)&&e(Zn)}),S(()=>{d(Ln,E.currentStep?.name??`Prompt`),Bn.disabled=!E.currentStep||!!s(K)&&!!E.edit.popover}),re(Bn,()=>s(cn),e=>x(cn,e)),o(e,Cn),i()}r([`click`]);export{nn as component};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{B as e,Dt as t,E as n,F as r,G as i,I as a,L as o,N as s,Nt as c,O as l,Ot as u,Pt as d,V as f,X as p,_ as m,a as h,at as g,dt as _,et as v,gt as y,h as b,it as x,j as S,k as C,m as w,ot as T,p as ee,pt as E,r as D,rt as O,st as k,tt as te,v as ne,w as re,x as ie,y as A,z as j}from"../chunks/CPCsWwEy.js";import{t as M}from"../chunks/BaUo4AYS.js";import"../chunks/xihTtKlq.js";import{t as ae}from"../chunks/DDZ8GqHh.js";import{t as N}from"../chunks/CaUCcDHI.js";import"../chunks/C_lx-sL6.js";import{t as P}from"../chunks/6OCsQ6r7.js";import{t as F}from"../chunks/Cf3l6QEG.js";import{n as oe,t as se}from"../chunks/BJqZY8o2.js";import{t as I}from"../chunks/BP0Xadq7.js";import{t as ce}from"../chunks/DWoqp3ac.js";import{t as le}from"../chunks/D_MTg6YY.js";import{t as ue}from"../chunks/D3fLfD-Y.js";import{t as de}from"../chunks/UZ6smZpJ.js";import{a as fe,c as pe,i as me,n as he,o as ge,r as _e,s as ve,t as ye}from"../chunks/CCtAgMW8.js";var L=o(`<p class="text-sm text-rc-gray-200">There are no more analytics fields to filter.</p>`),be=o(`<option> </option>`),R=o(`<label class="flex flex-col gap-1.5 text-sm text-rc-gray-200"><span>Value</span> <!> <span class="text-xs text-rc-gray-400"> </span></label>`),z=o(`<label class="flex cursor-pointer items-center gap-3 rounded px-3 py-2 text-sm text-rc-gray-100"><input type="checkbox" class="h-4 w-4 rounded border-rc-gray-500 bg-rc-gray-800 text-rc-green-200 focus:ring-1 focus:ring-rc-green-200/40 focus:ring-offset-0"/> <span class="min-w-0 flex-1 break-words"> </span> <span class="ml-auto text-[calc(0.875rem-1pt)] tabular-nums text-rc-gray-400"> </span></label>`),B=o(`<fieldset class="flex flex-col gap-1.5"><legend class="mb-1 text-sm text-rc-gray-200">Values</legend> <div class="rc-scroll max-h-72 overflow-y-auto rounded-lg border border-rc-gray-600 bg-rc-gray-900 p-1"></div></fieldset>`),V=o(`<label class="flex flex-col gap-1.5 text-sm text-rc-gray-200"><span>Field</span> <select class="rounded-lg border border-rc-gray-500 bg-rc-gray-900 px-3 py-2 text-rc-gray-100 focus:border-rc-gray-400 focus:outline-none focus:ring-0"></select></label> <!>`,1),H=o(`<div class="flex flex-col gap-4"><!></div>`),xe=o(`<!> <!>`,1);function Se(e,n){u(n,!0);let o=h(n,`open`,15,!1),p=E(``),m=E(k([])),w=E(``),D=!1,O=y(()=>n.fields.find(e=>e.key===i(p))),re=y(()=>(i(O)?.variantCount??0)>50),ie=y(()=>{let e=i(O),t=String(i(w)).trim();if(!(!e||!t)){if(e.type===`number`){let e=Number(t);return Number.isFinite(e)?e:void 0}return e.type===`boolean`?t.toLowerCase()===`true`||t.toLowerCase()!==`false`&&void 0:t}}),M=y(()=>!!i(O)&&(i(re)?i(ie)!==void 0:i(m).length>0));te(()=>{let e=o();e&&!D&&(_(p,n.fields[0]?.key??``,!0),_(m,[],!0),_(w,``)),D=e});function ae(e){_(p,e.currentTarget.value,!0),_(m,[],!0),_(w,``)}function N(e,t){return typeof e==typeof t&&e===t}function F(e){return i(m).some(t=>N(t,e))}function oe(e){_(m,F(e)?i(m).filter(t=>!N(t,e)):[...i(m),e],!0)}function se(e){return typeof e==`boolean`?e?`Yes`:`No`:String(e)}function ce(){let e=i(O);!e||!i(M)||(n.onAdd({key:e.key,type:e.type,values:i(re)?[i(ie)]:i(m)}),o(!1))}I(e,{title:`Add analytics filter`,class:`!max-w-lg`,get open(){return o()},set open(e){o(e)},children:e=>{var t=H(),o=x(t),c=e=>{var t=L();r(e,t)},u=e=>{var t=V(),o=g(t),c=T(x(o),2);l(c,21,()=>n.fields,C,(e,t)=>{var n=be(),a=x(n,!0);d(n);var o={};v(()=>{s(a,i(t).key),o!==(o=i(t).key)&&(n.value=(n.__value=i(t).key)??``)}),r(e,n)}),d(c);var u;ne(c),d(o);var m=T(o,2),h=e=>{var t=a(),n=g(t),o=e=>{var t=R(),n=T(x(t),2);{let e=y(()=>i(O).type===`number`?`number`:`text`);ue(n,{get type(){return i(e)},class:`w-full !border-rc-gray-500 !bg-rc-gray-900 !py-2`,onkeydown:e=>{e.key===`Enter`&&i(M)&&ce()},get value(){return i(w)},set value(e){_(w,e,!0)}})}var a=T(n,2),o=x(a);d(a),d(t),v(()=>s(o,`This field has ${i(O).variantCount??``} distinct values.`)),r(e,t)},c=e=>{var t=B(),n=T(x(t),2);l(n,21,()=>i(O).values,C,(e,t)=>{var n=z(),a=x(n);ee(a);var o=T(a,2),c=x(o,!0);d(o);var l=T(o,2),u=x(l,!0);d(l),d(n),v((e,n)=>{b(a,e),s(c,n),s(u,i(t).count)},[()=>F(i(t).value),()=>se(i(t).value)]),f(`change`,a,()=>oe(i(t).value)),r(e,n)}),d(n),d(t),r(e,t)};S(n,e=>{i(re)?e(o):e(c,-1)}),r(e,t)};S(m,e=>{i(O)&&e(h)}),v(()=>{u!==(u=i(p))&&(c.value=(c.__value=i(p))??``,A(c,i(p)))}),f(`change`,c,ae),r(e,t)};S(o,e=>{n.fields.length===0?e(c):e(u,-1)}),d(t),r(e,t)},footer:e=>{var t=xe(),n=g(t);P(n,{variant:`secondary`,onclick:()=>o(!1),children:(e,t)=>{c();var n=j(`Cancel`);r(e,n)},$$slots:{default:!0}});var a=T(n,2);{let e=y(()=>!i(M));P(a,{onclick:ce,get disabled(){return i(e)},children:(e,t)=>{c();var n=j(`Add filter`);r(e,n)},$$slots:{default:!0}})}r(e,t)},$$slots:{default:!0,footer:!0}}),t()}e([`change`]);var Ce=o(`<!> <!>`,1),we=o(`<option> </option>`),Te=o(`<button type="button" aria-label="Clear search" class="absolute right-2 top-1/2 flex -translate-y-1/2 items-center justify-center rounded p-1 text-rc-gray-200 hover:bg-rc-gray-600 hover:text-rc-gray-100 focus:outline-none"><!></button>`),Ee=o(`<div class="flex max-w-80 items-center gap-1 rounded-lg border border-rc-gray-500 bg-rc-gray-700 py-1 pl-3 pr-1 text-sm text-rc-gray-100"><span class="truncate"> </span> <button type="button" class="flex-none rounded p-1 text-rc-gray-300 hover:bg-rc-gray-600 hover:text-rc-gray-100"><!></button></div>`),De=o(`<p class="py-8 text-center text-rc-gray-200">Loading...</p>`),Oe=o(`<p class="py-8 text-center text-rc-gray-300">No conversations found</p>`),ke=o(`<span class="text-rc-gray-200">, Agent Id:</span> <span class="text-rc-green-200"> </span>`,1),Ae=o(`<li><div class="flex w-full flex-col gap-2"><div class="flex w-full items-center justify-between"><div class="text-gray-300"> </div> <div class="flex items-center gap-2"><span class="text-xs text-rc-gray-300"> </span> <span class="font-semibold text-rc-gray-100"> </span></div></div> <div class="flex items-center justify-between gap-4"><div class="text-sm"><span class="text-rc-gray-200">Conversation Id:</span> <span class="text-rc-green-200"> </span> <!></div> <p class="text-sm text-gray-400"> </p></div></div></li>`),je=o(`<ul class="space-y-2"></ul>`),Me=o(`<div class="flex h-screen"><!> <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 flex-col bg-rc-gray-980"><div class="flex items-center justify-center"><!></div> <div class="flex flex-wrap items-center gap-4"><div class="flex-1"><label class="block"><div class="flex gap-2"><select class="select svelte-1uk1thp" aria-label="Telescope source"><!></select> <div class="relative"><!><!></div> <!> <!> <!></div></label></div> <div class="hidden items-center gap-2"><div class="text-rc-gray-200">Sort:</div> <!></div> <div class="hidden items-center gap-2"><div class="text-rc-gray-200">Page size:</div> <select class="rounded-sm border border-rc-gray-300 bg-rc-gray-700 p-2 pr-8 text-rc-gray-100"><option>5</option><option>10</option><option>20</option><option>50</option></select></div> <div class="flex items-center gap-3"><div class="flex items-center gap-2"><!> <!> <div class="text-sm text-rc-gray-200"> </div></div></div> <div class="ml-auto whitespace-nowrap text-sm"><span class="text-gray-400">API Mode:</span> <span class="font-semibold text-rc-green-200"> </span></div></div></nav> <main class="flex flex-1 overflow-hidden"><div class="flex h-full w-1/3 flex-col"><div class="flex-none border-b border-rc-gray-300/40 p-4"><h2 class="text-lg font-semibold text-rc-gray-100">Conversations</h2></div> <div class="rc-scroll min-h-0 flex-1 overflow-scroll px-3 py-4"><!></div></div> <div class="flex h-full w-2/3 flex-col bg-rc-gray-980"><!></div></main></div></div> <!>`,1);function U(e,o){u(o,!0);let b=new ve,ee=E(k([])),ne=E(void 0),A=E(null),I=y(()=>(N.url.searchParams.get(`agent`)??``).trim()),L=E(``),be=E(20),R=E(`20`),z=E(!0),B=E(k([])),V=E(null),H=E(!1),xe=E(null),U=E(k([])),W=E(``),Ne=E(!1),Pe=E(null),Fe=E(!1),Ie=E(null),Le=E(k([])),G=E(k([])),K=E(!1),q=E(null),Re=E(!1),J=0,Y=0,ze=y(()=>i(Le).filter(e=>!i(G).some(t=>t.key===e.key))),Be=E(null),Ve=y(()=>JSON.stringify([i(I),i(W),i(G)])),X=y(()=>i(Be)===i(Ve)?i(ne):void 0),He=y(()=>i(X)?.items.length??0),Ue=h(o,`useMock`,3,!1),{onError:We}=ae();function Ge(e){return new Date(e).toLocaleString()}function Ke(e){return new Date(e).toLocaleTimeString()}function qe(e){let t=Math.round(e),n=Math.floor(t/60),r=t%60;return`${n}:${String(r).padStart(2,`0`)}`}function Je(){J+=1,Y+=1,_(A,null),_(ne,void 0),_(Be,null),_(Le,[],!0),_(G,[],!0),_(B,[],!0),_(V,null),_(H,!0),_(K,!0),_(q,null),_(Re,!1)}function Ye(e=i(I)){let t=new URLSearchParams;e&&t.set(`agent`,e),i(W)&&t.set(ye,i(W));let n=t.toString();return n?`?${n}`:``}function Z(e=i(I)){return`${i(gt)}/conversations${Ye(e)}`}let Xe=y(()=>{let e=N.url.pathname.split(`/`).at(-1);return e===`predictions`?`predictions`:e===`latency`?`latency`:`traces`});function Ze(e,t=i(Xe),n=i(I)){return`${i(gt)}/conversations/${encodeURIComponent(e)}/${t}${Ye(n)}`}async function Qe(e,t=i(be),n,r,a=i(G)){return Ue()?de.fetchConversations(t,e,n??void 0):b.getConversations({phoneNumber:e,agentId:r,analyticsFilters:a,limit:Number(t),lastConversationId:n??void 0})}async function Q(){_(B,[],!0),_(V,null),await nt()}async function $e(){_(Ne,!0),_(Pe,null);try{if(_(U,await pe(),!0),!i(U).length)throw Error(`No sources returned`);let e=_e(N.url),t=fe(i(U),e,he());if(!t)throw Error(`No sources returned`);if(_(W,t,!0),me(t),b.setSourceId(t),e!==t){let e=ge(N.url,t);await M(`${e.pathname}${e.search}`,{replaceState:!0})}}catch(e){console.error(`Failed to load Telescope sources:`,e),_(Pe,e?.message??`Failed to load Telescope sources`,!0),_(U,[],!0),_(W,``),b.setSourceId(void 0)}finally{_(Ne,!1)}}async function et(e){let t=e.target.value;_(W,t,!0),me(t),b.setSourceId(t),Je(),await M(Z()),await Promise.all([rt(),Q()])}async function tt(){try{_(ee,await ce.agents.catalog.query(),!0)}catch(e){let t=e instanceof Error?e.message:e?String(e):`Unknown error`;console.error(`Failed to load agents:`,e),We(`Failed to load agents: ${t}`)}}async function nt(){let e=++J,t=i(G).map(e=>({...e,values:[...e.values]})),n=i(I),r=JSON.stringify([n,i(W),t]);_(H,!0),_(xe,null);try{let a=await Qe(i(L)||void 0,i(be),i(V)??void 0,n||void 0,t);if(e!==J||r!==i(Ve))return;let o=Array.isArray(a.items)?a.items.slice():[];_(ne,{limit:a.limit,items:o,lastConversationId:a.lastConversationId},!0),_(Be,r,!0),_(V,a.lastConversationId??null,!0)}catch(t){if(e!==J||r!==i(Ve))return;_(xe,`Conversations could not be loaded for this selection.`),We(i(xe)),console.error(`Load page error:`,t)}finally{e===J&&_(H,!1)}}async function rt(){let e=++Y;if(_(K,!0),_(q,null),_(Le,[],!0),Ue()){_(K,!1);return}if(!i(I)){_(q,`Select an agent to add filters.`),_(K,!1);return}try{let t=await b.getAnalyticsFields(i(I));if(e!==Y)return;_(Le,t.items,!0)}catch(t){if(e!==Y)return;_(q,`Filters are unavailable for this selection.`),console.error(`Failed to load analytics fields:`,t)}finally{e===Y&&_(K,!1)}}function it(e){_(G,[...i(G),e],!0),Q()}function at(e){_(G,i(G).filter(t=>t.key!==e),!0),Q()}function ot(e){return typeof e==`boolean`?e?`Yes`:`No`:String(e)}function st(e){return`${e.key}: ${e.values.map(ot).join(`, `)}`}async function ct(){i(X)?.lastConversationId&&(i(B).push(i(X).lastConversationId),_(V,i(X).lastConversationId,!0),await nt())}async function lt(){i(B).length&&(i(B).pop(),_(V,i(B).length?i(B)[i(B).length-1]:null,!0),await nt())}function ut(){_(z,!i(z)),i(X)?.items&&i(X).items.sort((e,t)=>i(z)?t.createdAt-e.createdAt:e.createdAt-t.createdAt)}async function dt(e,t){if(t?.stopPropagation(),N.params.conversationId&&N.params.conversationId===e.conversationId||!N.params.conversationId&&i(A)?.conversationId===e.conversationId){_(A,null),await M(Z());return}_(A,e,!0),await M(Ze(e.conversationId))}function ft(e){let t=e.target.value;_(R,t,!0),_(be,parseInt(i(R),10)||20,!0)}async function pt(){await Q()}async function mt(e){e?.preventDefault(),e?.stopPropagation(),_(L,``),_(B,[],!0),_(V,null),await Q()}let ht=y(()=>{let e=N.url.pathname.split(`/`)[1];return e===`traces`?`view`:e}),gt=y(()=>N.url.pathname.startsWith(`/view`)?`/view`:`/traces`);function _t({value:e}){if(e!==i(ht)){if(e===`edit`)return i(I)?M(`/edit/${encodeURIComponent(i(I))}/roleplay`):M(`/edit`);if(e===`view`)return M(Z());M(`/`+e)}}async function vt(e,t){t?.stopPropagation(),e!==i(I)&&(Je(),await M(Z(e)))}async function yt(e){e?.stopPropagation(),i(I)&&(Je(),await M(Z(``)))}te(()=>{let e=i(I);i(Fe)&&e!==i(Ie)&&(_(Ie,e,!0),Je(),Promise.all([rt(),Q()]))}),D(()=>{(async()=>{await Promise.all([tt(),$e()]),await Promise.all([rt(),Q()]),_(Ie,i(I),!0),_(Fe,!0)})()});var bt=Me();re(`1uk1thp`,e=>{p(()=>{O.title=`Bosun: Telescope`})});var xt=g(bt),St=x(xt);le(St,{get agents(){return i(ee)},get currentAgent(){return i(I)},onAgentClick:vt,showAllAgentsOption:!0,onAllAgentsClick:yt,className:`flex-none`});var Ct=T(St,2),wt=x(Ct),Tt=x(wt),Et=x(Tt);oe(Et,{get value(){return i(ht)},ariaLabel:`Top tabs`,onChange:_t,children:(e,t)=>{var n=Ce(),i=g(n);se(i,{value:`edit`,children:(e,t)=>{c();var n=j(`Edit`);r(e,n)},$$slots:{default:!0}});var a=T(i,2);se(a,{value:`view`,children:(e,t)=>{c();var n=j(`View`);r(e,n)},$$slots:{default:!0}}),r(e,n)},$$slots:{default:!0}}),d(Tt);var Dt=T(Tt,2),Ot=x(Dt),kt=x(Ot),At=x(kt),$=x(At),jt=x($),Mt=e=>{var t=a(),n=g(t);l(n,17,()=>i(U),C,(e,t)=>{var n=we(),a=x(n,!0);d(n);var o={};v(()=>{s(a,i(t).label),o!==(o=i(t).id)&&(n.value=(n.__value=i(t).id)??``)}),r(e,n)}),r(e,t)},Nt=e=>{var t=we(),n=x(t,!0);d(t),t.value=t.__value=``,v(()=>s(n,i(Ne)?`Loading…`:`No sources`)),r(e,t)};S(jt,e=>{i(U).length?e(Mt):e(Nt,-1)}),d($);var Pt=T($,2),Ft=x(Pt);ue(Ft,{class:`w-56 rounded-r-none !border !border-rc-gray-500 !p-2 !pr-8 hover:border-rc-gray-400`,placeholder:`Search by phone...`,onkeydown:e=>{e.key===`Enter`&&(e.preventDefault(),e.stopPropagation(),pt())},get value(){return i(L)},set value(e){_(L,e,!0)}});var It=T(Ft),Lt=e=>{var t=Te(),n=x(t);F(n,{name:`close`,width:18,height:18}),d(t),f(`click`,t,mt),r(e,t)};S(It,e=>{i(L)&&e(Lt)}),d(Pt);var Rt=T(Pt,2);P(Rt,{onclick:pt,children:(e,t)=>{c();var n=j(`Search`);r(e,n)},$$slots:{default:!0}});var zt=T(Rt,2);l(zt,17,()=>i(G),e=>e.key,(e,t)=>{var n=Ee(),a=x(n),o=x(a,!0);d(a);var c=T(a,2),l=x(c);F(l,{name:`close`,width:16,height:16,class:`relative top-px`}),d(c),d(n),v((e,r)=>{w(n,`title`,e),s(o,r),w(c,`aria-label`,`Remove ${i(t).key} filter`)},[()=>st(i(t)),()=>st(i(t))]),f(`click`,c,()=>at(i(t).key)),r(e,n)});var Bt=T(zt,2),Vt=e=>{P(e,{variant:`secondary`,title:`Add analytics filter`,onclick:()=>_(Re,!0),children:(e,t)=>{c();var n=j(`Add filter`);r(e,n)},$$slots:{default:!0}})};S(Bt,e=>{!i(K)&&!i(q)&&i(ze).length>0&&e(Vt)}),d(At),d(kt),d(Ot);var Ht=T(Ot,2),Ut=T(x(Ht),2);P(Ut,{onclick:ut,children:(e,t)=>{c();var n=j();v(()=>s(n,i(z)?`Newest first`:`Oldest first`)),r(e,n)},$$slots:{default:!0}}),d(Ht);var Wt=T(Ht,2),Gt=T(x(Wt),2),Kt=x(Gt);Kt.value=Kt.__value=`5`;var qt=T(Kt);qt.value=qt.__value=`10`;var Jt=T(qt);Jt.value=Jt.__value=`20`;var Yt=T(Jt);Yt.value=Yt.__value=`50`,d(Gt),d(Wt);var Xt=T(Wt,2),Zt=x(Xt),Qt=x(Zt);{let e=y(()=>i(B).length===0&&!i(V));P(Qt,{onclick:lt,get disabled(){return i(e)},children:(e,t)=>{c();var n=j(`Prev`);r(e,n)},$$slots:{default:!0}})}var $t=T(Qt,2);{let e=y(()=>!i(X)?.items.length);P($t,{onclick:ct,get disabled(){return i(e)},children:(e,t)=>{c();var n=j(`Next`);r(e,n)},$$slots:{default:!0}})}var en=T($t,2),tn=x(en);d(en),d(Zt),d(Xt);var nn=T(Xt,2),rn=T(x(nn),2),an=x(rn,!0);d(rn),d(nn),d(Dt),d(wt);var on=T(wt,2),sn=x(on),cn=T(x(sn),2),ln=x(cn),un=e=>{var t=De();r(e,t)},dn=e=>{var t=Oe();r(e,t)},fn=e=>{var t=je();l(t,21,()=>i(X).items,C,(e,t)=>{var n=Ae(),a=x(n),o=x(a),c=x(o),l=x(c);d(c);var u=T(c,2),p=x(u),m=x(p,!0);d(p);var h=T(p,2),_=x(h,!0);d(h),d(u),d(o);var y=T(o,2),b=x(y),C=T(x(b),2),ee=x(C,!0);d(C);var E=T(C,2),D=e=>{var n=ke(),a=T(g(n),2),o=x(a,!0);d(a),v(()=>s(o,i(t).agentId)),r(e,n)};S(E,e=>{!i(I)&&i(t).agentId&&e(D)}),d(b);var O=T(b,2),k=x(O);d(O),d(y),d(a),d(n),v((e,r,a)=>{ie(n,1,`cursor-pointer rounded-lg p-3 transition-colors ${(N.params.conversationId?i(t).conversationId===N.params.conversationId:i(t).conversationId===i(A)?.conversationId)?`bg-rc-gray-600`:`bg-rc-gray-700 hover:bg-rc-gray-650`}`,`svelte-1uk1thp`),w(n,`aria-selected`,N.params.conversationId?i(t).conversationId===N.params.conversationId:i(t).conversationId===i(A)?.conversationId),s(l,`${e??``} – ${r??``}`),s(m,i(t).medium),s(_,i(t).phoneNumber),s(ee,i(t).conversationId),s(k,`Duration: ${a??``}`)},[()=>Ge(i(t).createdAt-(i(t).duration??0)*1e3),()=>Ke(i(t).createdAt),()=>qe(i(t).duration??0)]),f(`click`,n,e=>dt(i(t),e)),r(e,n)}),d(t),r(e,t)};S(ln,e=>{i(H)?e(un):i(X)?.items?.length?e(fn,-1):e(dn,1)}),d(cn),d(sn);var pn=T(sn,2),mn=x(pn);n(mn,()=>o.children),d(pn),d(on),d(Ct),d(xt),Se(T(xt,2),{get fields(){return i(ze)},onAdd:it,get open(){return i(Re)},set open(e){_(Re,e,!0)}}),v(()=>{$.disabled=i(Ne)||!i(U).length,w($,`title`,i(Pe)??`Telescope source`),s(tn,`Items: ${i(He)??``}`),s(an,Ue()?`Mock (local)`:`Live`)}),f(`change`,$,et),m($,()=>i(W),e=>_(W,e)),f(`change`,Gt,ft),m(Gt,()=>i(R),e=>_(R,e)),f(`click`,pn,e=>e.stopPropagation()),r(e,bt),t()}e([`change`,`click`]);export{U as component};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{B as e,Dt as t,E as n,F as r,G as i,L as a,Nt as o,Ot as s,Pt as c,V as l,at as u,gt as d,it as f,ot as p,z as m}from"../chunks/CPCsWwEy.js";import{t as h}from"../chunks/BaUo4AYS.js";import"../chunks/xihTtKlq.js";import{t as g}from"../chunks/CaUCcDHI.js";import"../chunks/C_lx-sL6.js";import{n as _,t as v}from"../chunks/BJqZY8o2.js";import{r as y}from"../chunks/DkJi5BM4.js";var b=a(`<!> <!> <!>`,1),x=a(`<div class="flex h-full min-h-0 flex-col bg-rc-gray-980"><div class="flex-none border-b border-rc-gray-300/40 px-4 pt-3"><!></div> <div class="min-h-0 flex-1"><!></div></div>`);function S(e,a){s(a,!0),y();let S=d(()=>{let e=g.url.pathname.split(`/`).at(-1);return e===`predictions`?`predictions`:e===`latency`?`latency`:`traces`}),C=d(()=>g.url.pathname.startsWith(`/view`)?`/view`:`/traces`);function w(e){let t=g.params.conversationId??``,n=g.url.search;return`${i(C)}/conversations/${encodeURIComponent(t)}/${e}${n}`}function T({value:e}){(e===`traces`||e===`predictions`||e===`latency`)&&e!==i(S)&&h(w(e))}var E=x(),D=f(E),O=f(D);_(O,{get value(){return i(S)},ariaLabel:`View conversation tabs`,onChange:T,children:(e,t)=>{var n=b(),i=u(n);v(i,{value:`traces`,children:(e,t)=>{o();var n=m(`Traces`);r(e,n)},$$slots:{default:!0}});var a=p(i,2);v(a,{value:`predictions`,children:(e,t)=>{o();var n=m(`Predictions`);r(e,n)},$$slots:{default:!0}});var s=p(a,2);v(s,{value:`latency`,children:(e,t)=>{o();var n=m(`Latency`);r(e,n)},$$slots:{default:!0}}),r(e,n)},$$slots:{default:!0}}),c(D);var k=p(D,2),A=f(k);n(A,()=>a.children),c(k),c(E),l(`click`,E,e=>e.stopPropagation()),r(e,E),t()}e([`click`]);export{S as component};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Dt as e,F as t,G as n,L as r,Nt as i,Ot as a,Pt as o,X as s,at as c,dt as l,gt as u,it as d,ot as f,pt as p,r as m,rt as h,st as g,tt as _,w as v,z as y}from"../chunks/CPCsWwEy.js";import{t as b}from"../chunks/
|
|
1
|
+
import{Dt as e,F as t,G as n,L as r,Nt as i,Ot as a,Pt as o,X as s,at as c,dt as l,gt as u,it as d,ot as f,pt as p,r as m,rt as h,st as g,tt as _,w as v,z as y}from"../chunks/CPCsWwEy.js";import{t as b}from"../chunks/BaUo4AYS.js";import"../chunks/xihTtKlq.js";import{t as x}from"../chunks/DDZ8GqHh.js";import{t as S}from"../chunks/CaUCcDHI.js";import"../chunks/C_lx-sL6.js";import{n as C,t as w}from"../chunks/BJqZY8o2.js";import{t as T}from"../chunks/DWoqp3ac.js";import{t as E}from"../chunks/D_MTg6YY.js";var D=r(`<!> <!>`,1),O=r(`<div class="flex h-screen"><!> <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 justify-center bg-rc-gray-980"><!></nav> <main class="flex-1 pr-80 pt-40"><div class="flex h-full items-start justify-center text-rc-gray-200">Select an agent on the left panel to start editing</div></main></div></div>`);function k(r,k){a(k,!0);let{onAgentSelect:A,onError:j}=x(),M=p(g([])),N=p(!1),P=u(()=>S.url.pathname.split(`/`)[1]);function F({value:e}){if(e!==n(P)){if(e===`edit`)return b(`/edit`);if(e===`view`)return b(`/view`);b(`/`+e)}}function I(e){A(e)}_(()=>{n(N)||S.url.pathname===`/edit`&&n(M).length&&(l(N,!0),A(n(M)[0].id))}),m(async()=>{try{l(M,await T.agents.catalog.query(),!0)}catch(e){let t=e instanceof Error?e.message:e?String(e):`Unknown error`;console.error(`Failed to load agents:`,e),j(`Failed to load agents: ${t}`)}});var L=O();v(`17v3h6h`,e=>{s(()=>{h.title=`Bosun: Edit`})});var R=d(L);E(R,{className:`flex-none`,get agents(){return n(M)},currentAgent:``,onAgentClick:I});var z=f(R,2),B=d(z),V=d(B);C(V,{get value(){return n(P)},ariaLabel:`Top tabs`,onChange:F,children:(e,n)=>{var r=D(),a=c(r);w(a,{value:`edit`,children:(e,n)=>{i();var r=y(`Edit`);t(e,r)},$$slots:{default:!0}});var o=f(a,2);w(o,{value:`view`,children:(e,n)=>{i();var r=y(`View`);t(e,r)},$$slots:{default:!0}}),t(e,r)},$$slots:{default:!0}}),o(B),i(2),o(z),o(L),t(r,L),e()}export{k as component};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{B as e,Dt as t,E as n,F as r,G as i,H as a,I as o,L as s,N as c,Nt as l,O as u,Ot as d,Pt as f,S as p,V as m,a as h,at as g,b as _,dt as v,et as y,gt as b,it as x,j as S,k as C,l as w,m as ee,ot as T,pt as E,r as te,st as D,tt as O,x as k,z as A}from"../chunks/CPCsWwEy.js";import"../chunks/xihTtKlq.js";import{r as j,t as M}from"../chunks/oarl--hZ.js";import{t as N}from"../chunks/6OCsQ6r7.js";import{t as P}from"../chunks/Cf3l6QEG.js";import{t as F}from"../chunks/DWoqp3ac.js";import{t as ne}from"../chunks/B9YnyJ2j.js";import{c as re,i as I,o as ie,s as L}from"../chunks/By9tvIIw.js";import{r as R}from"../chunks/BOHUKGg_.js";import{t as ae}from"../chunks/D3fLfD-Y.js";import{a as oe,i as se,n as ce,o as le,r as ue,t as de}from"../chunks/C9p6yGAG.js";var z=s(`<span class="min-w-0 flex-1 truncate text-left"> </span> <!>`,1),B=s(`<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></div></div>`),V=s(`<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>`),H=s(`<div><!> <!></div>`);function fe(e,n){d(n,!0);let a=h(n,`class`,3,``),o=E(!1),s=E(null),l=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`];function p(){v(o,!i(o))}function m(e){n.onSelect(e),v(o,!1)}function _(e){return(e.lastMessage??``).trim()||`No messages`}function S(e,t=50,n=`…`){if(!e)return``;if(e.length<=t)return e;let r=e.slice(0,t+1),i=Math.max(r.lastIndexOf(` `),r.lastIndexOf(`\xA0`),r.lastIndexOf(` `),r.lastIndexOf(`
|
|
2
|
+
`),r.lastIndexOf(`\r`));return(i>0?r.slice(0,i):e.slice(0,t)).trimEnd()+n}function w(e){e.key===`ArrowDown`&&!i(o)?(v(o,!0),e.preventDefault()):e.key===`ArrowUp`&&i(o)&&(v(o,!1),e.preventDefault())}function ee(e){let t=e.getDate(),n=l[e.getMonth()],r=e.getHours(),i=r>=12?`PM`:`AM`;r%=12,r===0&&(r=12);let a=String(e.getMinutes()).padStart(2,`0`),o=new Date,s=e.getFullYear();return`${t} ${n}${s===o.getFullYear()?``:` ${s}`}, ${r}:${a} ${i}`}function te(e){return ee(new Date(e.createdAt))}let D=b(()=>n.conversations.find(e=>e.conversationId===n.currentConversationId)??null),O=b(()=>i(D)?te(i(D)):`History`);var A=H(),j=x(A);N(j,{variant:`ghost`,get"aria-expanded"(){return i(o)},"aria-haspopup":`listbox`,"aria-controls":`history-dropdown`,onclick:p,onkeydown:w,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 i(s)},set el(e){v(s,e,!0)},children:(e,t)=>{var n=z(),a=g(n),s=x(a,!0);f(a);var l=T(a,2);{let e=b(()=>`size-7 shrink-0 text-rc-gray-500 transition-transform duration-200 `+(i(o)?`rotate-180`:``));P(l,{name:`chevron-down`,get class(){return i(e)}})}y(()=>c(s,i(O))),r(e,n)},$$slots:{default:!0}});var M=T(j,2);le(M,{id:`history-dropdown`,get open(){return i(o)},onClose:()=>v(o,!1),get anchorEl(){return i(s)},placement:`bottom-start`,offset:[0,1],children:e=>{var t=V();u(t,21,()=>n.conversations,C,(e,t)=>{{let a=b(()=>i(t).conversationId===n.currentConversationId);N(e,{variant:`ghost`,size:`small`,role:`option`,get"aria-selected"(){return i(a)},onclick:()=>m(i(t).conversationId),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:(e,a)=>{var o=B(),s=x(o),l=x(s),u=x(l,!0);f(l);var d=T(l,2),p=x(d,!0);f(d),f(s),f(o),y((e,r)=>{c(u,e),k(d,1,`truncate p-1 text-base font-semibold `+(i(t).conversationId===n.currentConversationId?`text-rc-green-200`:`text-rc-gray-100`)),c(p,r)},[()=>te(i(t)),()=>S(_(i(t)))]),r(e,o)},$$slots:{default:!0}})}}),f(t),r(e,t)},$$slots:{default:!0}}),f(A),y(()=>k(A,1,`relative ${a()}`)),r(e,A),t()}var U=s(`<dialog class="dialog m-auto bg-transparent p-0 text-rc-gray-100 shadow-md svelte-jby388"><!> <!></dialog>`);function pe(e,i){d(i,!0);let a,o=h(i,`showCloseButton`,3,!1),s=h(i,`onClose`,3,()=>{}),c=h(i,`onOpen`,3,()=>{}),u=h(i,`isOpen`,3,!1);O(()=>{u()?(console.log(`show`),a?.showModal(),c()()):a?.open&&(console.log(`close`),a.close())});function p(){s()()}te(()=>(a.addEventListener(`close`,p),()=>{a.removeEventListener(`close`,p)}));function g(e){e.target===a&&a.close()}var _=U(),v=x(_);n(v,()=>i.children);var y=T(v,2),b=e=>{N(e,{variant:`ghost`,onclick:()=>a.close(),class:`absolute right-2 top-2`,children:(e,t)=>{l();var n=A(`✕`);r(e,n)},$$slots:{default:!0}})};S(y,e=>{o()&&e(b)}),f(_),w(_,e=>a=e,()=>a),m(`mousedown`,_,g),r(e,_),t()}e([`mousedown`]);function me(e){if(!Array.isArray(e))return[];let t=[];for(let n of e){if(!n||typeof n!=`object`)continue;let e=n.text,r=n.lastSeen,i=n.uses;if(typeof e!=`string`||typeof r!=`number`||!Number.isFinite(r)||typeof i!=`number`||!Number.isFinite(i))continue;let a=e.trim();a&&t.push({text:a,lastSeen:r,uses:i})}return t.sort((e,t)=>t.lastSeen-e.lastSeen),t}function he(e,t,n=2e3){let r=t.trim();if(!r)return e;let i=(e[0]?.lastSeen??0)+1,a=e.findIndex(e=>e.text===r),o;if(a!==-1){let t=e[a];o=[{text:t.text,lastSeen:i,uses:(t.uses??0)+1},...e.slice(0,a),...e.slice(a+1)]}else o=[{text:r,lastSeen:i,uses:1},...e];return o.length>n?o.slice(0,n):o}function ge(e,t,n=2e3){if(!t.length)return e;if(!e.length)return t;let r=e[0]?.lastSeen??0,i=(t[0]?.lastSeen??0)>r?t:t.map((e,n)=>({...e,lastSeen:r+(t.length-n)})),a=new Map;for(let t of e)a.set(t.text,t);for(let e of i){let t=a.get(e.text);if(!t){a.set(e.text,e);continue}a.set(e.text,{text:e.text,lastSeen:Math.max(t.lastSeen,e.lastSeen),uses:t.uses+e.uses})}return Array.from(a.values()).sort((e,t)=>t.lastSeen-e.lastSeen).slice(0,n)}function _e(e,t,n=5){if(!t.length)return[];let r=e.trim().toLowerCase(),i=W(e,!1).text,a=/\s$/u.test(e);if(!W(e,!0).text)return[];let o=[];for(let e of t){let t=W(e.text);if(!t.text||e.text.trim().toLowerCase()===r)continue;let n=G(t,e.text,i,a);n&&o.push({item:e,match:n})}return o.sort((e,t)=>e.match.kindRank===t.match.kindRank?e.match.span===t.match.span?e.match.start===t.match.start?e.item.lastSeen===t.item.lastSeen?e.item.uses===t.item.uses?e.item.text.length-t.item.text.length:t.item.uses-e.item.uses:t.item.lastSeen-e.item.lastSeen:e.match.start-t.match.start:e.match.span-t.match.span:e.match.kindRank-t.match.kindRank),o.slice(0,n).map(e=>({text:e.item.text,prefixEndIndex:e.match.prefixEndIndex,segments:be(e.item.text,e.match.ranges)}))}function W(e,t=!0){let n=[],r=[];for(let t=0;t<e.length;t++){let i=ve(e[t]);if(i===` `){if(!n.length)continue;let e=n.length-1;if(n[e]===` `){r[e][1]=t+1;continue}}n.push(i),r.push([t,t+1])}return t&&n[n.length-1]===` `&&(n.pop(),r.pop()),{text:n.join(``),ranges:r}}function ve(e){if(/\s/u.test(e))return` `;try{return/[\p{P}\p{S}]/u.test(e)?` `:e.toLowerCase()}catch{return/[^a-z0-9\s]/i.test(e)?` `:e.toLowerCase()}}function G(e,t,n,r){if(!e.text)return null;if(e.text.startsWith(n)){let e=Y(t,n,r)??t.length,i=Math.max(0,Math.min(t.length,e));return{kindRank:0,start:0,span:n.length,ranges:[[0,i]],prefixEndIndex:i}}let i=e.text.indexOf(n);return i===-1?null:{kindRank:q(e.text,i,n.length),start:i,span:n.length,ranges:J(e,i,i+n.length),prefixEndIndex:t.length}}function ye(e,t){return t<=0||e[t-1]===` `}function K(e,t){return t>=e.length||e[t]===` `}function q(e,t,n){let r=ye(e,t),i=K(e,t+n);return r&&i?1:r?2:3}function J(e,t,n){let r=Math.max(0,Math.min(e.ranges.length,t)),i=Math.max(r,Math.min(e.ranges.length,n));return xe(e.ranges.slice(r,i))}function Y(e,t,n){if(!t)return null;let r=``,i=!0;for(let a=0;a<e.length;a++){let o=e[a],s;if(/\s/u.test(o))s=` `;else try{s=/[\p{P}\p{S}]/u.test(o)?` `:o.toLowerCase()}catch{s=/[^a-z0-9\s]/i.test(o)?` `:o.toLowerCase()}if(s===` `){if(i)continue;r+=` `,i=!0}else r+=s,i=!1;if(r.length===t.length){if(r!==t)return null;let i=a+1;if(n&&t.endsWith(` `)){let t=i;for(;t<e.length;){let n=e[t];if(/\s/u.test(n)){t+=1;continue}try{if(/[\p{P}\p{S}]/u.test(n)){t+=1;continue}}catch{if(/[^a-z0-9\s]/i.test(n)){t+=1;continue}}break}i=t}return i}if(r.length>t.length)return null}return null}function be(e,t){let n=xe(t);if(!n.length)return[{text:e,matched:!1}];let r=[],i=0;for(let[t,a]of n)t>i&&r.push({text:e.slice(i,t),matched:!1}),r.push({text:e.slice(t,a),matched:!0}),i=a;return i<e.length&&r.push({text:e.slice(i),matched:!1}),r.filter(e=>e.text.length>0)}function xe(e){if(!e.length)return[];let t=e.map(([e,t])=>[Math.max(0,e),Math.max(0,t)]).filter(([e,t])=>t>e).sort((e,t)=>e[0]-t[0]||e[1]-t[1]);if(!t.length)return[];let n=[[t[0][0],t[0][1]]];for(let e=1;e<t.length;e++){let[r,i]=t[e],a=n[n.length-1];if(r<=a[1]){a[1]=Math.max(a[1],i);continue}n.push([r,i])}return n}var Se=s(`<form><h2 class="text-l mb-4 text-gray-300">Image URL</h2> <!> <!></form>`),Ce=s(`<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>`),we=s(`<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>`),Te=s(`<div class="rounded-lg border border-red-500/70 bg-red-950/20 px-3 py-2 text-sm text-red-200"> </div>`),Ee=s(`<button type="button"><div class="whitespace-pre-line break-words"> </div></button>`),De=s(`<div class="ml-7 mt-2 flex flex-col gap-2"><!> <!> <!></div>`),Oe=s(`<!> <div class="log-element"><div><!></div> <!></div>`,1),ke=s(`<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>`),Ae=s(`<div class="absolute bottom-16 left-2 right-2 z-20 rounded-lg border border-red-500/60 bg-red-950/90 px-3 py-2 text-sm text-red-100 shadow-lg" role="alert"> </div>`),je=s(`<span> </span>`),Me=s(`<button type="button" role="option" tabindex="-1"></button>`),Ne=s(`<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>`),Pe=s(`<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>`),Fe=s(`<!> <form><fieldset class="absolute bottom-2 left-2 right-2 z-10 flex gap-2 disabled:opacity-35"><div class="relative flex-1"><!> <!> <button type="button" class="absolute bottom-0 left-3 top-0 z-20 inline-flex items-center border-r border-rc-gray-500/70 bg-transparent pr-2 text-base font-semibold leading-6 text-rc-gray-300 transition-colors duration-75 hover:text-rc-gray-300 focus:outline-none focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50"> </button> <!></div> <!> <!></fieldset></form>`,1),Ie=s(`<div class="rc-scroll min-h-0 flex-1 overflow-y-auto pr-1"></div> <!>`,1),Le=s(`<!> <!>`,1);function X(e,n){d(n,!0);let s=h(n,`promptEditProposalId`,3,null),te=h(n,`analyzeDisabled`,3,!1),M=h(n,`variantSourceTrace`,3,null),R=h(n,`variantChoices`,19,()=>[]),le=h(n,`variantLoading`,3,!1),z=h(n,`variantApplyingId`,3,null),B=h(n,`variantError`,3,null),V=D(new Set),H=E(``),fe=E(``),U=E(``),W,ve=E(!1),G=E(null),ye=E(``),K=E(!1),q=E(`user`),J=E(null),Y=E(D([])),be=E(null),xe=E(!1),X=E(!1),Z=E(null),Q=b(()=>_e(i(H),i(Y))),Re=b(()=>i(Z)==null?null:i(Q)[i(Z)]??null),ze=b(()=>i(Re)?i(Re).text.slice(i(Re).prefixEndIndex):``),Be=b(()=>!M()&&!i(U)&&i(H).trim().length===0);O(()=>{if(typeof window>`u`)return;if(!i(G)){v(ye,``);return}let e=window.getComputedStyle(i(G)),t=`calc(${e.paddingTop} + ${e.borderTopWidth})`,n=`calc(${e.paddingRight} + ${e.borderRightWidth})`,r=`calc(${e.paddingBottom} + ${e.borderBottomWidth})`,a=`calc(${e.paddingLeft} + ${e.borderLeftWidth})`;v(ye,[`padding:${t} ${n} ${r} ${a}`,`font:${e.font}`,`letter-spacing:${e.letterSpacing}`,`line-height:${e.lineHeight}`,`text-indent:${e.textIndent}`,`text-transform:${e.textTransform}`,`text-align:${e.textAlign}`,`box-sizing:${e.boxSizing}`].join(`;`),!0)}),O(()=>{i(Z)!=null&&i(Z)>=i(Q).length&&v(Z,null)});let Ve=b(()=>M()||!i(xe)||i(X)?!1:i(Q).length>0);function He(e){v(H,e.text,!0),v(Z,null),v(X,!0)}function Ue(){v(xe,!0),v(X,!1)}function We(){v(xe,!1),v(Z,null),v(X,!1)}function Ge(){v(Z,null),v(X,!1)}function Ke(e){if(e.key===`Escape`){i(Ve)&&e.preventDefault(),v(X,!0),v(Z,null);return}if(e.key===`ArrowUp`||e.key===`ArrowDown`){if(!i(Q).length)return;i(X)&&v(X,!1),e.preventDefault();let t=i(Q).length-1;if(i(Z)===null)v(Z,e.key===`ArrowUp`?t:0,!0);else{let n=e.key===`ArrowUp`?-1:1;v(Z,Math.max(0,Math.min(t,i(Z)+n)),!0)}return}if(e.key===`Enter`||e.key===`Tab`&&!e.shiftKey){if(i(Z)===null)return;let t=i(Q)[i(Z)];if(!t)return;e.preventDefault(),He(t);return}}let qe=null,Je=!1,Ye=0;function Xe(){typeof window>`u`||W&&(!Je&&V.has(W)||(qe??=requestAnimationFrame(()=>{if(qe=null,!W||!Je&&V.has(W))return;let e=W.scrollHeight-(W.scrollTop+W.clientHeight),t=Je||e>W.clientHeight?`auto`:`smooth`;W.scrollTo({top:W.scrollHeight,behavior:t}),Je=!1})))}O(()=>{let e=I.length;e===0&&Ye>0&&(Je=!0,W&&V.delete(W)),Ye=e,e>0&&Xe()});function Ze(e){e.scrollTop+e.clientHeight+200>e.scrollHeight?V.delete(e):V.add(e)}function Qe(e){i(K)||(i(H).trim().length>0||i(U))&&(v(Y,he(i(Y),i(H)),!0),n.onmessage({sender:e,text:i(H),imageUrl:i(U)}),v(U,``),v(H,``),v(q,`user`),v(X,!1),v(Z,null))}function $e(e){e.preventDefault(),Qe(i(q))}function et(){v(q,i(q)===`system`?`user`:`system`,!0),requestAnimationFrame(()=>i(G)?.focus())}function tt(e){e.preventDefault(),v(U,i(fe),!0),v(fe,``),v(ve,!1)}function nt(e){return e&&typeof e.renderedPrompt==`string`?e.renderedPrompt:null}function rt(e,t){for(let n=t-1;n>=0;n--){let t=e[n];if(re(t)&&ne(t.name)&&nt(t))return t}for(let n=t-1;n>=0;n--){let t=e[n];if(re(t)&&t.name===`prewarm`&&nt(t))return t}return null}function it(e){return(e.eventName===`received-message`||e.eventName===`llm-handler-stream-requested`)&&!String(e.content??``).trim()?!1:e.eventName===`received-message`||e.eventName===`llm-handler-stream-requested`||e.eventName===`finished-main-streaming-step`||e.eventName===`sent-message`||e.eventName===`transfer-requested`||e.eventName===`hangup-requested`}function at(e){return!!(n.agentId&&n.agentId.trim())&&e.eventName!==`transfer-requested`&&(e.eventName===`finished-main-streaming-step`||e.eventName===`sent-message`)}function ot(e){return e.role===`user`||e.eventName===`received-message`||e.eventName===`llm-handler-stream-requested`}function st(e){let t=String(e??``).trim();return!t||/^\[image\]\s+/.test(t)?``:t}function ct(e){let t=e?.bosunInputMessageSender;return t===`system`?`system`:t===`user`?`user`:e.role===`system`?`system`:`user`}function lt(e){if(!n.onRevertToState)return;let t=e?.bosunPrevStateId,r=typeof t==`string`&&t.trim().length>0?t:null;n.onRevertToState(r);let a=typeof e?.bosunUserMessage==`string`?e.bosunUserMessage:e.content;v(H,st(a),!0),v(q,ct(e),!0),v(X,!1),v(Z,null),requestAnimationFrame(()=>{try{i(G)?.focus(),i(G)?.select()}catch{}})}function ut(){n.agentType===`text`?v(ve,!0):n.agentType===`voice`&&n.onHangup?.()}let dt=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`];function ft(e){if(typeof e!=`number`||!Number.isFinite(e))return null;let t=new Date(e);return Number.isNaN(t.getTime())?null:`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,`0`)}-${String(t.getDate()).padStart(2,`0`)}`}function pt(e){if(typeof e!=`number`||!Number.isFinite(e))return null;let t=new Date(e);return Number.isNaN(t.getTime())?null:`${t.getDate()} ${dt[t.getMonth()]} ${t.getFullYear()}`}let $=b(()=>I.filter(e=>ie(e)||re(e)?!0:L(e)?it(e):!1)),mt=b(()=>I.findLast(e=>L(e))?.eventName===`hangup-requested`),ht=b(()=>{let e=i($).map((e,t)=>({entry:e,index:t})).reverse().find(({entry:e,index:t})=>!L(e)||!at(e)?!1:i($).slice(0,t).some(e=>L(e)&&ot(e)));return e&&L(e.entry)?e.entry:null}),gt=b(()=>{let e=i(ht);if(!e)return null;try{let t=_t(e);return{model:t.model,stringifiedConversation:t.stringifiedConversation,response:t.response}}catch{return null}});function _t(e){if(!(n.agentId??``).trim())throw Error(`Agent id is not available; cannot analyze`);let t=I.indexOf(e);if(t===-1)throw Error(`Could not locate trace in chat history`);let r=ue(I,t,{requireRenderedPrompt:!0});if(!r)throw Error(`Could not find main step trace for this message`);let i=typeof r.renderedPrompt==`string`?r.renderedPrompt:``;if(!i.trim())throw Error(`Main step rendered prompt is missing`);let a=typeof r.stringifiedConversation==`string`&&r.stringifiedConversation.trim()?r.stringifiedConversation:se(I,t)??``,o=String(e?.content??``);if(!o.trim())throw Error(`Message content is missing`);let s=typeof r?.model==`string`?String(r.model):void 0,c=e?.createdAt;return{trace:e,stepTrace:r,renderedPrompt:i,stringifiedConversation:a,response:o,model:s,createdAt:typeof c==`number`&&Number.isFinite(c)?c:void 0}}function vt(e){if(n.onAnalyzeTrace)try{v(J,null),n.onAnalyzeTrace(_t(e))}catch(e){console.error(e),v(J,e instanceof Error?e.message:String(e),!0)}}function yt(e){if(n.onRegenerateTrace)try{v(J,null),n.onRegenerateTrace(e)}catch(e){console.error(e),v(J,e instanceof Error?e.message:String(e),!0)}}async function bt(){if(i(K))return;let e=i(gt);if(e){v(X,!0),v(Z,null),v(K,!0);try{let t=await F.agents.generateUserResponse.mutate(e);v(H,t.text,!0),v(X,!0),v(Z,null),requestAnimationFrame(()=>{try{i(G)?.focus(),i(G)?.setSelectionRange(t.text.length,t.text.length)}catch{}})}catch(e){console.error(`Failed to generate suggested user response`,e)}finally{v(K,!1)}}}O(()=>{if(typeof window>`u`)return;let e=(n.agentId??``).trim();if(!e||e===i(be))return;v(be,e,!0),v(Y,[],!0);let t=e,r=e;F.agents.userMessageHistory.query({agentId:t}).then(e=>{if(i(be)!==r)return;let t=me(e);v(Y,ge(t,i(Y)),!0),v(Z,null)}).catch(e=>{console.error(`Failed to load user message history`,e),i(be)===r&&(v(Y,[],!0),v(Z,null))})}),O(()=>{let e=M(),t=R().length,n=le(),r=B(),i=z();!e&&!t&&!n&&!r&&!i||Xe()});var xt=Le(),St=g(xt);pe(St,{get isOpen(){return i(ve)},onClose:()=>v(ve,!1),showCloseButton:!0,children:(e,t)=>{j(e,{class:`p-4`,children:(e,t)=>{var n=Se(),o=T(x(n),2);ae(o,{class:`mb-2 w-80`,get value(){return i(fe)},set value(e){v(fe,e,!0)}});var s=T(o,2);N(s,{variant:`secondary`,type:`submit`,class:`ml-2 p-2`,children:(e,t)=>{l();var n=A(`Attach`);r(e,n)},$$slots:{default:!0}}),f(n),a(`submit`,n,tt),r(e,n)},$$slots:{default:!0}})},$$slots:{default:!0}});var Ct=T(St,2);j(Ct,{get class(){return`relative flex min-h-0 flex-col p-2 pb-16 ${n.class??``}`},children:(e,t)=>{var l=Ie(),d=g(l);u(d,21,()=>i($),C,(e,t,a)=>{let o=b(()=>ft(i(t).createdAt)),l=b(()=>a>0?ft(i($)[a-1].createdAt):null),d=b(()=>pt(i(t).createdAt));var p=Oe(),h=g(p),_=e=>{var t=Ce(),n=x(t),a=x(n,!0);f(n),f(t),y(()=>c(a,i(d))),r(e,t)};S(h,e=>{i(o)&&i(d)&&i(o)!==i(l)&&e(_)});var v=T(h,2),C=x(v),w=x(C),ee=e=>{oe(e,{get trace(){return i(t)}})},E=b(()=>ie(i(t))),D=e=>{{let r=b(()=>ue(i($),a)),o=b(()=>n.onAnalyzeTrace?vt:void 0),c=b(()=>n.onRegenerateTrace?yt:void 0),l=b(()=>n.onRevertToState?lt:void 0),u=b(()=>!!n.onSeeVariants&&!M()&&i(t)===i(ht)),d=b(()=>M()&&i(t)===M()?`source`:`none`),f=b(()=>z()===null&&M()&&i(t)===M()?n.onChooseOriginalVariant:void 0),p=b(()=>!!M()&&i(t)===M());ce(e,{testCreationMode:`direct`,get trace(){return i(t)},get context(){return n.context},get agentId(){return n.agentId},get promptEditProposalId(){return s()},get testSourceStep(){return i(r)},get testEntries(){return i($)},get analyzeDisabled(){return te()},get onAnalyze(){return i(o)},get onRegenerate(){return i(c)},get onRevert(){return i(l)},get showSeeVariants(){return i(u)},get onSeeVariants(){return n.onSeeVariants},get variantSelectionState(){return i(d)},get onSelectInVariantMode(){return i(f)},get suppressActionRow(){return i(p)}})}},O=b(()=>L(i(t))),A=e=>{{let r=b(()=>se(i($),a)),o=b(()=>ne(i(t).name)?rt(i($),a):null);de(e,{testCreationMode:`direct`,get trace(){return i(t)},get agentId(){return n.agentId},get promptEditProposalId(){return s()},get fallbackConversation(){return i(r)},get runtimeContext(){return n.context},get compareTrace(){return i(o)}})}},j=b(()=>re(i(t)));S(w,e=>{i(E)?e(ee):i(O)?e(D,1):i(j)&&e(A,2)}),f(C);var N=T(C,2),P=e=>{var t=De(),a=x(t),o=e=>{var t=we();r(e,t)};S(a,e=>{le()&&e(o)});var s=T(a,2),l=e=>{var t=Te(),n=x(t,!0);f(t),y(()=>c(n,B())),r(e,t)};S(s,e=>{B()&&e(l)});var d=T(s,2);u(d,17,R,e=>e.id,(e,t)=>{var a=Ee(),o=x(a),s=x(o,!0);f(o),f(a),y(()=>{a.disabled=z()!==null,k(a,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 ${z()===i(t).id?`bg-rc-green-700`:``}`),c(s,i(t).text)}),m(`click`,a,()=>n.onChooseVariant?.(i(t).id)),r(e,a)}),f(t),r(e,t)};S(N,e=>{M()&&i(t)===M()&&e(P)}),f(v),r(e,p)}),f(d),w(d,e=>W=e,()=>W);var h=T(d,2),E=e=>{var t=ke(),i=T(x(t),2),a=T(i,2);f(t),y(()=>i.disabled=!n.onRegenerateVariants||le()||z()!==null),m(`click`,i,()=>n.onRegenerateVariants?.()),m(`click`,a,()=>n.onCancelVariants?.()),r(e,t)},D=e=>{var t=Fe(),s=g(t),l=e=>{var t=Ae(),n=x(t,!0);f(t),y(()=>c(n,i(J))),r(e,t)};S(s,e=>{i(J)&&e(l)});var d=T(s,2),h=x(d),w=x(h),E=x(w),te=e=>{var t=Ne();u(t,23,()=>i(Q),e=>e.text,(e,t,n)=>{var a=Me();u(a,21,()=>i(t).segments,C,(e,t)=>{var n=je(),a=x(n,!0);f(n),y(()=>{k(n,1,p(i(t).matched?`text-rc-green-200`:``)),c(a,i(t).text)}),r(e,n)}),f(a),y(()=>{ee(a,`aria-selected`,i(Z)===i(n)),k(a,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 ${i(Z)===i(n)?`bg-rc-gray-700/70`:``}`)}),m(`mousedown`,a,e=>{e.preventDefault(),He(i(t))}),r(e,a)}),f(t),r(e,t)};S(E,e=>{i(Ve)&&e(te)});var D=T(E,2);{let e=b(()=>i(q)===`system`?`!border-emerald-500 !pl-[5.5rem] hover:!border-emerald-500 focus:!border-emerald-500`:`!pl-[4.25rem]`),t=b(()=>i(K)?`Generating`:`Enter message...`);ae(D,{variant:`chat`,get class(){return`!text-base !leading-6 !duration-75 ${i(e)??``}`},get placeholder(){return i(t)},autocomplete:`off`,get readonly(){return i(K)},onfocus:Ue,onblur:We,oninput:Ge,onkeydown:Ke,get value(){return i(H)},set value(e){v(H,e,!0)},get el(){return i(G)},set el(e){v(G,e,!0)}})}var O=T(D,2),A=x(O,!0);f(O);var j=T(O,2),M=e=>{var t=Pe(),n=x(t),a=x(n),o=x(a,!0);f(a);var s=T(a),l=x(s,!0);f(s),f(n),f(t),y(()=>{_(n,i(ye)),c(o,i(H)),c(l,i(ze))}),r(e,t)};S(j,e=>{i(Z)!==null&&i(ze)&&e(M)}),f(w);var F=T(w,2);{let e=b(()=>i(K)||!n.agentType);N(F,{size:`small`,variant:`secondary`,get disabled(){return i(e)},onclick:ut,children:(e,t)=>{var i=o(),a=g(i),s=e=>{P(e,{name:`paperclip`})},c=e=>{P(e,{name:`hangup`})};S(a,e=>{n.agentType===`text`?e(s):n.agentType===`voice`&&e(c,1)}),r(e,i)},$$slots:{default:!0}})}var ne=T(F,2),re=e=>{{let t=b(()=>i(K)||!i(gt));N(e,{size:`small`,type:`button`,title:`Generate response`,"aria-label":`Generate response`,get disabled(){return i(t)},class:`inline-flex !w-[59px] items-center justify-center !px-0`,onclick:e=>{e.preventDefault(),bt()},children:(e,t)=>{P(e,{name:`sparkles`})},$$slots:{default:!0}})}},I=e=>{{let t=b(()=>i(q)===`system`?`Send as system`:`Send as user`),n=b(()=>i(q)===`system`?`Send as system`:`Send as user`);N(e,{size:`small`,type:`submit`,get title(){return i(t)},get"aria-label"(){return i(n)},get disabled(){return i(K)},class:`inline-flex !w-[59px] items-center justify-center !px-0`,children:(e,t)=>{P(e,{name:`send`})},$$slots:{default:!0}})}};S(ne,e=>{i(Be)?e(re):e(I,-1)}),f(h),f(d),y(()=>{h.disabled=i(mt),ee(O,`title`,i(q)===`system`?`Switch to user`:`Switch to system`),ee(O,`aria-label`,i(q)===`system`?`Switch to user`:`Switch to system`),O.disabled=i(K),c(A,i(q)===`system`?`System`:`User`)}),a(`submit`,d,$e),m(`click`,O,e=>{e.preventDefault(),e.stopPropagation(),et()}),r(e,t)};S(h,e=>{M()?e(E):e(D,-1)}),a(`scroll`,d,e=>Ze(e.target)),r(e,l)},$$slots:{default:!0}}),r(e,xt),t()}e([`click`,`mousedown`]);var Z=s(`<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>`),Q=s(`<div class="flex h-full items-center justify-center text-sm text-rc-gray-300">Connecting…</div>`),Re=s(`<div class="flex h-full items-center justify-center text-sm text-rc-gray-300">Select an agent to start chatting</div>`),ze=s(`<div class="h-full min-h-0 p-2"><!></div>`),Be=s(`<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 Ve(e,n){d(n,!0);let{state:a,actions:s}=M(),c=E(!1),u=E(null),p=b(()=>{let e=a.currentStep?.name;return e?Object.values(a.promptEdits).find(t=>t.agentId===a.agentId&&t.step===e)?.id??null:null}),m=E(null),h=null,_=E(!1),y=E(null);b(()=>I.reduce((e,t)=>Math.max(e,ne(t)??0),0)),O(()=>{!I.length&&!R.length&&i(_)&&v(_,!1)});function C(e){let t=(e||``).trim();return t?t.split(`/`).at(-1)??t:`Agent`}function w(e){if(typeof e!=`number`||!Number.isFinite(e))return null;let t=new Date(e);return Number.isNaN(t.getTime())?null:`${String(t.getHours()).padStart(2,`0`)}:${String(t.getMinutes()).padStart(2,`0`)}:${String(t.getSeconds()).padStart(2,`0`)}`}async function ee(e){if(i(c))return;v(c,!0);let t=s.openPopover(`analyze`),n=w(e.createdAt),r=n?` • ${n}`:``,o=`Analysis — ${C(a.agentId)}${r}`;try{let n=await F.agents.analyzeTrace.mutate({agentId:a.agentId,traceId:e.trace?.traceId,eventName:e.trace.eventName,createdAt:e.createdAt,model:e.model,renderedPrompt:e.renderedPrompt,stringifiedConversation:e.stringifiedConversation,response:e.response,stepTrace:e.stepTrace});if(a.edit.popover?.requestId!==t)return;s.setHighlightQuotes(n.quotes);let r=null;try{r=JSON.stringify(n.raw,null,2)}catch{r=null}s.setPopoverReady(t,{title:o,quotes:n.quotes,rationales:n.rationales,parallelCalls:n.parallelCalls,raw:r})}catch(e){console.error(e);let n=typeof e?.message==`string`?e.message:(()=>{try{return JSON.stringify(e)}catch{return String(e)}})();s.setPopoverError(t,n||`Failed to analyze this response`,{raw:n})}finally{v(c,!1)}}function te(e){return e?I:I.map(e=>{if(!re(e))return e;let{receivedPrompt:t,renderedPrompt:n,...r}=e;return r})}function D(e){v(m,e,!0),h&&clearTimeout(h),h=window.setTimeout(()=>{v(m,null),h=null},2e3)}async function k(){try{await navigator.clipboard.writeText(JSON.stringify(R,null,2)),D(`logs`)}catch(e){console.error(`Failed to copy logs`,e)}}async function j(e){try{await navigator.clipboard.writeText(JSON.stringify(te(e),null,2)),D(e?`with-prompts`:`without-prompts`)}catch(e){console.error(`Failed to copy traces`,e)}}function P(){L(),s.closePopover(),s.newConversation()}function ne(e){let t=e?.bosunTurn;return typeof t==`number`&&t>0?t:null}function ie(e){L();let t=ne(e);if(!t){console.warn(`Cannot regenerate: this response has no turn metadata`);return}s.regenerateFromTurn(t)}function L(){v(u,null)}async function ae(e){let t=a.conversationId;if(!t)return;let n=s.getPromptOverrides();await s.flushPromptSave(),v(u,{sourceTrace:e,choices:[],loading:!0,applyingId:null,error:null},!0);try{let r=await F.agents.generateVariants.mutate({conversationId:t,promptOverrides:n,count:9});if(!i(u)||i(u).sourceTrace!==e)return;v(u,{...i(u),choices:r,loading:!1,error:null},!0)}catch(t){if(console.error(`Failed to generate variants`,t),!i(u)||i(u).sourceTrace!==e)return;v(u,{...i(u),choices:[],loading:!1,error:typeof t?.message==`string`?t.message:`Failed to generate variants`},!0)}}function oe(e){ae(e)}function se(){s.hangup()}function ce(){let e=i(u)?.sourceTrace;e&&ae(e)}async function ue(e){let t=a.conversationId;if(!i(u)||!t)return;let n=i(u).choices.find(t=>t.id===e);if(n){v(u,{...i(u),applyingId:e,error:null},!0);try{await F.agents.commitVariant.mutate({conversationId:t,entries:n.entries,context:n.context}),L(),s.selectConversation(t)}catch(e){if(console.error(`Failed to apply variant`,e),!i(u))return;v(u,{...i(u),applyingId:null,error:typeof e?.message==`string`?e.message:`Failed to apply variant`},!0)}}}function de(){L()}O(()=>{let e=i(u),t=a.agentId,n=e?.sourceTrace;!e||!n||(!t||!I.includes(n))&&v(u,null)});var z=Be(),B=x(z),V=x(B),H=e=>{fe(e,{get conversations(){return a.conversations},get currentConversationId(){return a.conversationId},class:`ml-9`,onSelect:e=>s.selectConversation(e)})};S(V,e=>{a.conversations.length>0&&e(H)});var U=T(V,2),pe=x(U);{let e=b(()=>!a.context);N(pe,{variant:`secondary`,size:`small`,get disabled(){return i(e)},get"aria-expanded"(){return a.contextPopoverOpen},"aria-haspopup":`dialog`,get onclick(){return s.toggleContextPopover},children:(e,t)=>{l();var n=A(`Show context`);r(e,n)},$$slots:{default:!0}})}var me=T(pe,2);{let e=b(()=>!I.length&&!R.length);N(me,{variant:`secondary`,size:`small`,get disabled(){return i(e)},get"aria-expanded"(){return i(_)},"aria-haspopup":`listbox`,"aria-controls":`roleplay-copy-dropdown`,onclick:e=>{e.stopPropagation(),v(_,!i(_))},get el(){return i(y)},set el(e){v(y,e,!0)},children:(e,t)=>{var n=o(),a=g(n),s=e=>{var t=A(`Copied logs`);r(e,t)},c=e=>{var t=A(`Copied traces (with prompts)`);r(e,t)},l=e=>{var t=A(`Copied traces (without prompts)`);r(e,t)},u=e=>{var t=A(`Copy...`);r(e,t)};S(a,e=>{i(m)===`logs`?e(s):i(m)===`with-prompts`?e(c,1):i(m)===`without-prompts`?e(l,2):e(u,-1)}),r(e,n)},$$slots:{default:!0}})}var he=T(me,2);le(he,{id:`roleplay-copy-dropdown`,get open(){return i(_)},onClose:()=>v(_,!1),get anchorEl(){return i(y)},placement:`bottom-end`,offset:[0,1],children:e=>{var t=Z(),n=x(t);{let e=b(()=>!R.length);N(n,{variant:`ghost`,size:`small`,role:`option`,get disabled(){return i(e)},onclick:e=>{e.stopPropagation(),v(_,!1),k()},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:(e,t)=>{l();var n=A(`Copy logs`);r(e,n)},$$slots:{default:!0}})}var a=T(n,2);{let e=b(()=>!I.length);N(a,{variant:`ghost`,size:`small`,role:`option`,get disabled(){return i(e)},onclick:e=>{e.stopPropagation(),v(_,!1),j(!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:(e,t)=>{l();var n=A(`Copy traces with prompts`);r(e,n)},$$slots:{default:!0}})}var o=T(a,2);{let e=b(()=>!I.length);N(o,{variant:`ghost`,size:`small`,role:`option`,get disabled(){return i(e)},onclick:e=>{e.stopPropagation(),v(_,!1),j(!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:(e,t)=>{l();var n=A(`Copy traces without prompts`);r(e,n)},$$slots:{default:!0}})}f(t),r(e,t)},$$slots:{default:!0}});var ge=T(he,2);N(ge,{size:`small`,onclick:P,children:(e,t)=>{l();var n=A(`New chat`);r(e,n)},$$slots:{default:!0}}),f(U),f(B);var _e=T(B,2),W=x(_e),ve=e=>{var t=Q();r(e,t)},G=e=>{var t=Re();r(e,t)},ye=e=>{var t=ze(),n=x(t);{let e=b(()=>i(u)?.sourceTrace??null),t=b(()=>i(u)?.choices??[]),r=b(()=>i(u)?.loading??!1),o=b(()=>i(u)?.applyingId??null),l=b(()=>i(u)?.error??null);X(n,{class:`h-full min-w-0`,context:null,get agentId(){return a.agentId},get promptEditProposalId(){return i(p)},get agentType(){return a.agentType},onmessage:e=>s.sendChatMessage(e),get analyzeDisabled(){return i(c)},onAnalyzeTrace:ee,onRegenerateTrace:ie,onSeeVariants:oe,onHangup:se,get variantSourceTrace(){return i(e)},get variantChoices(){return i(t)},get variantLoading(){return i(r)},get variantApplyingId(){return i(o)},get variantError(){return i(l)},onCancelVariants:L,onRegenerateVariants:ce,onChooseOriginalVariant:de,onChooseVariant:ue})}f(t),r(e,t)};S(W,e=>{!a.wsLoaded||!a.chatReady?e(ve):a.agentId?e(ye,-1):e(G,1)}),f(_e),f(z),r(e,z),t()}export{Ve as component};
|
|
Binary file
|
|
Binary file
|