@recombine-ai/platform 0.8.0-test.2 → 0.8.1
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/agent/experiment.d.ts +21 -0
- package/build/agent/experiment.d.ts.map +1 -0
- package/build/agent/experiment.js +29 -0
- package/build/agent/index.d.ts +2 -0
- package/build/agent/index.d.ts.map +1 -1
- package/build/agent/index.js +1 -0
- package/build/bosun/index.d.ts +1 -0
- package/build/bosun/index.d.ts.map +1 -1
- package/build/bosun/interfaces/agent.d.ts +1 -0
- package/build/bosun/interfaces/agent.d.ts.map +1 -1
- package/build/bosun/interfaces/project.d.ts +25 -0
- package/build/bosun/interfaces/project.d.ts.map +1 -0
- package/build/bosun/interfaces/project.js +1 -0
- package/build/bosun-app/backend/server.js +252 -60
- package/build/bosun-app/backend/server.js.map +2 -2
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{CR5IRTqC.js → AmpxVxY6.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/AmpxVxY6.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/AmpxVxY6.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{DjDpMqch.js → B-5g3xS8.js} +20 -20
- package/build/bosun-app/frontend/client/_app/immutable/chunks/B-5g3xS8.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/B-5g3xS8.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{BBk8_Xpk.js → B1MxGo6p.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/B1MxGo6p.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/B1MxGo6p.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BTw6JswM.js +1 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BTw6JswM.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BTw6JswM.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{joiJcRPz.js → BqH4VDQz.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BqH4VDQz.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BqH4VDQz.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CBW06aCF.js +1 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CBW06aCF.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CBW06aCF.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{C0rPkxmP.js → CVZT6n14.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CVZT6n14.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CVZT6n14.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{Diqx_kju.js → CXS28GEZ.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CXS28GEZ.js.br +1 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CXS28GEZ.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{ouMvMh56.js → CkstLsmI.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CkstLsmI.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CkstLsmI.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{C3cROXCy.js → CuwQtXBl.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CuwQtXBl.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CuwQtXBl.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{BEdAvgYp.js → D9YsE4-8.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/D9YsE4-8.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/D9YsE4-8.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/DzqCKWaI.js +3 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/DzqCKWaI.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/DzqCKWaI.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/Xf8YUGwh.js +1 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/Xf8YUGwh.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/Xf8YUGwh.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/{DJnDF3d9.js → dL_jwANm.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/dL_jwANm.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/dL_jwANm.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/{app.DYrvpbQq.js → app.DaDBScXg.js} +2 -2
- package/build/bosun-app/frontend/client/_app/immutable/entry/app.DaDBScXg.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/app.DaDBScXg.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/start.CWqX8UwM.js +1 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/start.CWqX8UwM.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/start.CWqX8UwM.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/{0.DXIuJQso.js → 0._S0yln6w.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/nodes/0._S0yln6w.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/0._S0yln6w.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/{1.CsX5iplT.js → 1.BSNKOkyF.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/nodes/1.BSNKOkyF.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/1.BSNKOkyF.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/10.NIQt0c21.js +35 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/10.NIQt0c21.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/10.NIQt0c21.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/{17.BIO8m3DR.js → 17.Bn1yI4kt.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/nodes/17.Bn1yI4kt.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/17.Bn1yI4kt.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/18.DAa7yKtf.js +11 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/18.DAa7yKtf.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/18.DAa7yKtf.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/2.DTjCxUv0.js +35 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/2.DTjCxUv0.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/2.DTjCxUv0.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/3.CzgpFcXZ.js +1 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/3.CzgpFcXZ.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/3.CzgpFcXZ.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/{4.BzhaMuo5.js → 4.3i9fJNn9.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/nodes/4.3i9fJNn9.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/4.3i9fJNn9.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/{5.BG8ylHWg.js → 5.C2R3wdz0.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/nodes/5.C2R3wdz0.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/5.C2R3wdz0.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/{6.DkDEANSN.js → 6.CarWVMPM.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/nodes/6.CarWVMPM.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/6.CarWVMPM.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/{8.3fEbISY6.js → 8.joumIYrl.js} +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/nodes/8.joumIYrl.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/8.joumIYrl.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/9.BGKMyDx1.js +2 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/9.BGKMyDx1.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/9.BGKMyDx1.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/version.json +1 -1
- package/build/bosun-app/frontend/client/_app/version.json.br +0 -0
- package/build/bosun-app/frontend/client/_app/version.json.gz +0 -0
- package/build/bosun-app/frontend/handler.js +4 -4
- package/build/bosun-app/frontend/index.js +4 -4
- package/build/bosun-app/frontend/server/chunks/chunks/{ChatStepTrace.js-VTtwaKGp.js → ChatStepTrace.js-BY0y3Vbb.js} +3 -1
- package/build/bosun-app/frontend/server/chunks/chunks/ChatStepTrace.js-BY0y3Vbb.js.map +1 -0
- package/build/bosun-app/frontend/server/chunks/chunks/{internal.js-B7oaNMJQ.js → internal.js-ChM9druZ.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/chunks/{internal.js-B7oaNMJQ.js.map → internal.js-ChM9druZ.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/chunks/{source-selection.js-D5B8gfq2.js → source-selection.js-DFpObbhz.js} +3 -1
- package/build/bosun-app/frontend/server/chunks/chunks/source-selection.js-DFpObbhz.js.map +1 -0
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/{_layout.svelte.js-B2wHKJV7.js → _layout.svelte.js-b9Q5TFEZ.js} +134 -24
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/_layout.svelte.js-b9Q5TFEZ.js.map +1 -0
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/roleplay/{_page.svelte.js-DDcIjgZD.js → _page.svelte.js-Chv8ybaj.js} +10 -4
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/roleplay/_page.svelte.js-Chv8ybaj.js.map +1 -0
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/tests/{_page.svelte.js-UVUg89-t.js → _page.svelte.js-Dkst1C_3.js} +3 -1
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/tests/_page.svelte.js-Dkst1C_3.js.map +1 -0
- package/build/bosun-app/frontend/server/chunks/entries/pages/traces/conversations/_conversationId_/latency/{_page.svelte.js-SjAtxtA0.js → _page.svelte.js-DFZznMhQ.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/entries/pages/traces/conversations/_conversationId_/latency/{_page.svelte.js-SjAtxtA0.js.map → _page.svelte.js-DFZznMhQ.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/entries/pages/traces/conversations/_conversationId_/traces/{_page.svelte.js-DiZKDT2v.js → _page.svelte.js-Bxdn8vG5.js} +7 -3
- package/build/bosun-app/frontend/server/chunks/entries/pages/traces/conversations/_conversationId_/traces/_page.svelte.js-Bxdn8vG5.js.map +1 -0
- package/build/bosun-app/frontend/server/chunks/entries/pages/traces/conversations/{_layout.svelte.js-CfkCQ2Th.js → _layout.svelte.js-UAHBCAaS.js} +62 -10
- package/build/bosun-app/frontend/server/chunks/entries/pages/traces/conversations/_layout.svelte.js-UAHBCAaS.js.map +1 -0
- package/build/bosun-app/frontend/server/chunks/{handler-D9QLNo8w.js → handler-KSixAuP8.js} +3 -3
- package/build/bosun-app/frontend/server/chunks/{handler-D9QLNo8w.js.map → handler-KSixAuP8.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/{index.js-B0gyG8Jr.js → index.js-xzEg77OG.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/{index.js-B0gyG8Jr.js.map → index.js-xzEg77OG.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/{manifest.js-BJwjpIJ3.js → manifest.js-BW4X3pHs.js} +14 -14
- package/build/bosun-app/frontend/server/chunks/{manifest.js-BJwjpIJ3.js.map → manifest.js-BW4X3pHs.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{0.js-CzIAnGix.js → 0.js-B1rx1DOM.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/nodes/{0.js-CzIAnGix.js.map → 0.js-B1rx1DOM.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{1.js-dcMNeOrp.js → 1.js-h7GlMehw.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/nodes/{1.js-dcMNeOrp.js.map → 1.js-h7GlMehw.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{10.js-BJiZIzMv.js → 10.js-C6xRYZtL.js} +3 -3
- package/build/bosun-app/frontend/server/chunks/nodes/{10.js-BJiZIzMv.js.map → 10.js-C6xRYZtL.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{17.js-D2Tp888g.js → 17.js-CavP10f9.js} +3 -3
- package/build/bosun-app/frontend/server/chunks/nodes/{17.js-D2Tp888g.js.map → 17.js-CavP10f9.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{18.js-u_njdfH1.js → 18.js-DC7Bv1j_.js} +3 -3
- package/build/bosun-app/frontend/server/chunks/nodes/{18.js-u_njdfH1.js.map → 18.js-DC7Bv1j_.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{2.js-CmkWii-m.js → 2.js-BhiMP7Sz.js} +3 -3
- package/build/bosun-app/frontend/server/chunks/nodes/{2.js-CmkWii-m.js.map → 2.js-BhiMP7Sz.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{3.js-CEcqDZwI.js → 3.js-C7zctWo-.js} +3 -3
- package/build/bosun-app/frontend/server/chunks/nodes/{3.js-CEcqDZwI.js.map → 3.js-C7zctWo-.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{4.js-DoWmHMTv.js → 4.js-5G8VLxJe.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/nodes/{4.js-DoWmHMTv.js.map → 4.js-5G8VLxJe.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{5.js-hFh1mvzS.js → 5.js-HO1CExm6.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/nodes/{5.js-hFh1mvzS.js.map → 5.js-HO1CExm6.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{6.js-C9qNqJg2.js → 6.js-CDW8tRHL.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/nodes/{6.js-C9qNqJg2.js.map → 6.js-CDW8tRHL.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{8.js-Btfm0qj5.js → 8.js-BjO10Jpo.js} +2 -2
- package/build/bosun-app/frontend/server/chunks/nodes/{8.js-Btfm0qj5.js.map → 8.js-BjO10Jpo.js.map} +1 -1
- package/build/bosun-app/frontend/server/chunks/nodes/{9.js-Ca7GzK3u.js → 9.js-Csa_leV9.js} +3 -3
- package/build/bosun-app/frontend/server/chunks/nodes/{9.js-Ca7GzK3u.js.map → 9.js-Csa_leV9.js.map} +1 -1
- package/build/call-control/call-control.d.ts.map +1 -1
- package/build/call-control/call-control.js +0 -2
- package/build/call-control/index.d.ts +0 -1
- package/build/call-control/index.d.ts.map +1 -1
- package/build/call-control/index.js +0 -1
- package/build/call-control/schemas.generated.d.ts +2 -1
- package/build/call-control/schemas.generated.d.ts.map +1 -1
- package/build/call-control/schemas.generated.js +4 -4
- package/build/call-control/types.d.ts +156 -3
- package/build/call-control/types.d.ts.map +1 -1
- package/build/call-control/types.js +3 -3
- package/build/engine/interfaces/other.d.ts +1 -1
- package/build/engine/interfaces/other.d.ts.map +1 -1
- package/build/telescope/api.d.ts.map +1 -1
- package/build/telescope/api.js +8 -2
- package/build/telescope/index.d.ts +1 -1
- package/build/telescope/index.d.ts.map +1 -1
- package/build/telescope/interfaces/conversation.d.ts +8 -0
- package/build/telescope/interfaces/conversation.d.ts.map +1 -1
- package/build/telescope/interfaces/event-tracer.d.ts +8 -0
- package/build/telescope/interfaces/event-tracer.d.ts.map +1 -1
- package/build/telescope/interfaces/storage.d.ts +2 -2
- package/build/telescope/interfaces/storage.d.ts.map +1 -1
- package/build/telescope/interfaces/telescope.d.ts +1 -0
- package/build/telescope/interfaces/telescope.d.ts.map +1 -1
- package/build/telescope/stub-storage.d.ts +2 -2
- package/build/telescope/stub-storage.d.ts.map +1 -1
- package/build/telescope/stub-storage.js +3 -8
- package/build/telescope/tracers/event-tracer.d.ts.map +1 -1
- package/build/telescope/tracers/event-tracer.js +5 -0
- package/build/text-agent-handlers/incoming-message.js +1 -1
- package/build/text-agent-handlers/index.d.ts +1 -0
- package/build/text-agent-handlers/index.d.ts.map +1 -1
- package/build/text-agent-handlers/index.js +1 -0
- package/build/text-agent-handlers/instrument.d.ts +1 -0
- package/build/text-agent-handlers/instrument.d.ts.map +1 -1
- package/build/text-agent-handlers/instrument.js +6 -2
- package/build/text-agent-handlers/jobs-handler.js +1 -1
- package/build/text-agent-handlers/jobs.d.ts +1 -0
- package/build/text-agent-handlers/jobs.d.ts.map +1 -1
- package/build/text-agent-handlers/message-acceptor.d.ts +4 -0
- package/build/text-agent-handlers/message-acceptor.d.ts.map +1 -1
- package/build/text-agent-handlers/message-acceptor.js +8 -2
- package/build/text-agent-handlers/ports.d.ts +2 -1
- package/build/text-agent-handlers/ports.d.ts.map +1 -1
- package/build/text-agent-handlers/ports.js +6 -5
- package/build/text-agent-handlers/variant-scheduler.d.ts +3 -0
- package/build/text-agent-handlers/variant-scheduler.d.ts.map +1 -0
- package/build/text-agent-handlers/variant-scheduler.js +9 -0
- package/build/voice-agent-api/index.d.ts +2 -0
- package/build/voice-agent-api/index.d.ts.map +1 -1
- package/build/voice-agent-api/index.js +1 -0
- package/build/voice-agent-api/route-resolver.d.ts +19 -0
- package/build/voice-agent-api/route-resolver.d.ts.map +1 -0
- package/build/voice-agent-api/route-resolver.js +57 -0
- package/build/voice-agent-api/voice-http.d.ts +8 -4
- package/build/voice-agent-api/voice-http.d.ts.map +1 -1
- package/build/voice-agent-api/voice-http.js +31 -32
- package/package.json +1 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/B3N9vN4_.js +0 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/B3N9vN4_.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/B3N9vN4_.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BBk8_Xpk.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BBk8_Xpk.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BEdAvgYp.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BEdAvgYp.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BaP19BGR.js +0 -3
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BaP19BGR.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/BaP19BGR.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/Bwiy-Sk7.js +0 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/Bwiy-Sk7.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/Bwiy-Sk7.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/C0rPkxmP.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/C0rPkxmP.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/C3cROXCy.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/C3cROXCy.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CR5IRTqC.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/CR5IRTqC.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/D89azUgT.js +0 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/D89azUgT.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/D89azUgT.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/DJnDF3d9.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/DJnDF3d9.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/Diqx_kju.js.br +0 -1
- package/build/bosun-app/frontend/client/_app/immutable/chunks/Diqx_kju.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/DjDpMqch.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/DjDpMqch.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/joiJcRPz.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/joiJcRPz.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/ouMvMh56.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/chunks/ouMvMh56.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/app.DYrvpbQq.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/app.DYrvpbQq.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/start.ZRGJFDNa.js +0 -1
- package/build/bosun-app/frontend/client/_app/immutable/entry/start.ZRGJFDNa.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/entry/start.ZRGJFDNa.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/0.DXIuJQso.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/0.DXIuJQso.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/1.CsX5iplT.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/1.CsX5iplT.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/10.D6gFo5CY.js +0 -35
- package/build/bosun-app/frontend/client/_app/immutable/nodes/10.D6gFo5CY.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/10.D6gFo5CY.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/17.BIO8m3DR.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/17.BIO8m3DR.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/18.D4L67K6t.js +0 -11
- package/build/bosun-app/frontend/client/_app/immutable/nodes/18.D4L67K6t.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/18.D4L67K6t.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/2.6RK8LtTD.js +0 -35
- package/build/bosun-app/frontend/client/_app/immutable/nodes/2.6RK8LtTD.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/2.6RK8LtTD.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/3.CbcbRLFb.js +0 -1
- package/build/bosun-app/frontend/client/_app/immutable/nodes/3.CbcbRLFb.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/3.CbcbRLFb.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/4.BzhaMuo5.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/4.BzhaMuo5.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/5.BG8ylHWg.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/5.BG8ylHWg.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/6.DkDEANSN.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/6.DkDEANSN.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/8.3fEbISY6.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/8.3fEbISY6.js.gz +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/9.CoX3jzbC.js +0 -2
- package/build/bosun-app/frontend/client/_app/immutable/nodes/9.CoX3jzbC.js.br +0 -0
- package/build/bosun-app/frontend/client/_app/immutable/nodes/9.CoX3jzbC.js.gz +0 -0
- package/build/bosun-app/frontend/server/chunks/chunks/ChatStepTrace.js-VTtwaKGp.js.map +0 -1
- package/build/bosun-app/frontend/server/chunks/chunks/source-selection.js-D5B8gfq2.js.map +0 -1
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/_layout.svelte.js-B2wHKJV7.js.map +0 -1
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/roleplay/_page.svelte.js-DDcIjgZD.js.map +0 -1
- package/build/bosun-app/frontend/server/chunks/entries/pages/edit/_agent_/tests/_page.svelte.js-UVUg89-t.js.map +0 -1
- package/build/bosun-app/frontend/server/chunks/entries/pages/traces/conversations/_conversationId_/traces/_page.svelte.js-DiZKDT2v.js.map +0 -1
- package/build/bosun-app/frontend/server/chunks/entries/pages/traces/conversations/_layout.svelte.js-CfkCQ2Th.js.map +0 -1
- package/build/call-control/voice-agent-config.d.ts +0 -155
- package/build/call-control/voice-agent-config.d.ts.map +0 -1
- package/build/call-control/voice-agent-config.js +0 -53
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as b,f as E,d as Ft,b as Le,t as ye,e as pt,c as Ot}from"../chunks/CCYriF4C.js";import{p as nt,c as C,f as Ee,r as I,s as N,j as e,t as ie,y as s,n as v,a as at,w as U,d as Pe,o as De,x as Pt}from"../chunks/CR-uVjxM.js";import{i as ne}from"../chunks/BQIf5msi.js";import{B as ce}from"../chunks/BqH4VDQz.js";import{D as zt,c as oe,i as At,a as Ue,b as Ke,d as Wt}from"../chunks/CkstLsmI.js";import{s as me}from"../chunks/B0nqNj93.js";import{e as Ye,i as bt}from"../chunks/DuQdgMax.js";import{s as rt,c as Gt}from"../chunks/C9yBjdYI.js";import{p as ue}from"../chunks/BcbX6huO.js";import{I as Xe}from"../chunks/B1MxGo6p.js";import{t as Ze}from"../chunks/CBW06aCF.js";import{P as Rt,g as Kt}from"../chunks/CHCMKZAC.js";import{c as ht,s as Yt}from"../chunks/AmpxVxY6.js";import{b as Vt}from"../chunks/ClLUwVGq.js";import{C as Xt,b as Zt,a as $t,c as yt,f as Nt,m as Qt,d as er,e as tr}from"../chunks/DzqCKWaI.js";import{i as Et}from"../chunks/DgGeUDDh.js";import{o as rr}from"../chunks/DnMQeiTY.js";import{s as nr}from"../chunks/9mOMnnWN.js";import{I as Dt}from"../chunks/dL_jwANm.js";import{l as tt,c as ar}from"../chunks/B1dhmiqQ.js";var or=E('<span class="min-w-0 flex-1 truncate text-left"> </span> <!>',1),sr=E('<div class="truncate p-1 text-base font-semibold text-rc-green-200"> </div>'),ir=E('<div class="truncate p-1 text-base font-semibold text-rc-gray-100"> </div>'),lr=E('<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>'),ur=E('<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>'),cr=E("<div><!> <!></div>");function dr(u,r){nt(r,!0);let n=ue(r,"class",3,""),o=U(!1),g=U(null);const i=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function x(){s(o,!e(o))}function T(p){r.onSelectState(p),s(o,!1)}function m(p){const k=p.userMessage;if(k==null)return"No message";const D=(typeof k=="string"?k:String(k)).trim();return D?p.userMessageSender==="system"?`System: ${D}`:D:"No message"}function d(p,k=50,D="…"){if(!p)return"";if(p.length<=k)return p;const M=p.slice(0,k+1),B=Math.max(M.lastIndexOf(" "),M.lastIndexOf(" "),M.lastIndexOf(" "),M.lastIndexOf(`
|
|
2
|
+
`),M.lastIndexOf("\r"));return(B>0?M.slice(0,B):p.slice(0,k)).trimEnd()+D}function A(p){p.key==="ArrowDown"&&!e(o)?(s(o,!0),p.preventDefault()):p.key==="ArrowUp"&&e(o)&&(s(o,!1),p.preventDefault())}function J(p){const k=p.getDate(),D=i[p.getMonth()];let M=p.getHours();const B=M>=12?"PM":"AM";M=M%12,M===0&&(M=12);const ee=String(p.getMinutes()).padStart(2,"0"),j=new Date,P=p.getFullYear(),te=P!==j.getFullYear()?` ${P}`:"";return`${k} ${D}${te}, ${M}:${ee} ${B}`}function ve(p){const k=new Date(p.id);if(!Number.isNaN(k.getTime()))return J(k);const D=new Date(p.name);return Number.isNaN(D.getTime())?p.name||"History":J(D)}let G=v(()=>r.agentStates.find(p=>p.id===r.currentState)??null),L=v(()=>e(G)?ve(e(G)):"History");var de=cr(),Y=C(de);ce(Y,{variant:"ghost",get"aria-expanded"(){return e(o)},"aria-haspopup":"listbox","aria-controls":"history-dropdown",onclick:x,onkeydown:A,class:"inline-flex w-40 items-center rounded-lg border border-transparent !bg-rc-gray-700 !px-3 !pb-1 !pt-[5px] text-rc-gray-200 hover:border hover:border-rc-gray-500 focus:outline-none focus:ring-0",get el(){return e(g)},set el(p){s(g,p,!0)},children:(p,k)=>{var D=or(),M=Ee(D),B=C(M,!0);I(M);var ee=N(M,2);{let j=v(()=>"size-7 shrink-0 text-rc-gray-500 transition-transform duration-200 "+(e(o)?"rotate-180":""));Xe(ee,{name:"chevron-down",get class(){return e(j)}})}ie(()=>me(B,e(L))),b(p,D)},$$slots:{default:!0}});var Ae=N(Y,2);zt(Ae,{id:"history-dropdown",get open(){return e(o)},onClose:()=>s(o,!1),get anchorEl(){return e(g)},placement:"bottom-start",offset:[0,1],children:k=>{var D=ur();Ye(D,21,()=>r.agentStates.slice().reverse(),bt,(M,B)=>{{let ee=v(()=>e(B).id===r.currentState);ce(M,{variant:"ghost",size:"small",role:"option",get"aria-selected"(){return e(ee)},onclick:()=>T(e(B).id),class:"group w-full rounded-none border-b border-rc-gray-110 py-2 pr-3 text-left backdrop-blur-2xl last:border-b-0 hover:bg-rc-gray-700 focus:bg-rc-gray-400",children:(j,P)=>{var te=lr(),Ie=C(te),Ce=C(Ie),Be=C(Ce,!0);I(Ce);var Fe=N(Ce,2);{var Oe=se=>{var ge=sr(),Ne=C(ge,!0);I(ge),ie(Se=>me(Ne,Se),[()=>d(m(e(B)))]),b(se,ge)},Re=se=>{var ge=ir(),Ne=C(ge,!0);I(ge),ie(Se=>me(Ne,Se),[()=>d(m(e(B)))]),b(se,ge)};ne(Fe,se=>{e(B).id===r.currentState?se(Oe):se(Re,-1)})}I(Ie),I(te),ie(se=>me(Be,se),[()=>ve(e(B))]),b(j,te)},$$slots:{default:!0}})}}),I(D),b(k,D)},$$slots:{default:!0}}),I(de),ie(()=>rt(de,1,`relative ${n()}`)),b(u,de),at()}var gr=E('<dialog class="dialog m-auto bg-transparent p-0 text-rc-gray-100 shadow-md svelte-jby388"><!> <!></dialog>');function fr(u,r){nt(r,!0);let n,o=ue(r,"showCloseButton",3,!1),g=ue(r,"onClose",3,()=>{}),i=ue(r,"onOpen",3,()=>{}),x=ue(r,"isOpen",3,!1);Pe(()=>{x()?(console.log("show"),n==null||n.showModal(),i()()):n!=null&&n.open&&(console.log("close"),n.close())});function T(){g()()}rr(()=>(n.addEventListener("close",T),()=>{n.removeEventListener("close",T)}));function m(G){G.target===n&&n.close()}var d=gr(),A=C(d);nr(A,()=>r.children);var J=N(A,2);{var ve=G=>{ce(G,{variant:"ghost",onclick:()=>n.close(),class:"absolute right-2 top-2",children:(L,de)=>{De();var Y=ye("✕");b(L,Y)},$$slots:{default:!0}})};ne(J,G=>{o()&&G(ve)})}I(d),Vt(d,G=>n=G,()=>n),Le("mousedown",d,m),b(u,d),at()}Ft(["mousedown"]);function mr(u){if(!Array.isArray(u))return[];const r=[];for(const n of u){if(!n||typeof n!="object")continue;const o=n.text,g=n.lastSeen,i=n.uses;if(typeof o!="string"||typeof g!="number"||!Number.isFinite(g)||typeof i!="number"||!Number.isFinite(i))continue;const x=o.trim();x&&r.push({text:x,lastSeen:g,uses:i})}return r.sort((n,o)=>o.lastSeen-n.lastSeen),r}function vr(u,r,n=2e3){var T;const o=r.trim();if(!o)return u;const g=(((T=u[0])==null?void 0:T.lastSeen)??0)+1,i=u.findIndex(m=>m.text===o);let x;if(i!==-1){const m=u[i];x=[{text:m.text,lastSeen:g,uses:(m.uses??0)+1},...u.slice(0,i),...u.slice(i+1)]}else x=[{text:o,lastSeen:g,uses:1},...u];return x.length>n?x.slice(0,n):x}function pr(u,r,n=2e3){var T,m;if(!r.length)return u;if(!u.length)return r;const o=((T=u[0])==null?void 0:T.lastSeen)??0,i=(((m=r[0])==null?void 0:m.lastSeen)??0)>o?r:r.map((d,A)=>({...d,lastSeen:o+(r.length-A)})),x=new Map;for(const d of u)x.set(d.text,d);for(const d of i){const A=x.get(d.text);if(!A){x.set(d.text,d);continue}x.set(d.text,{text:d.text,lastSeen:Math.max(A.lastSeen,d.lastSeen),uses:A.uses+d.uses})}return Array.from(x.values()).sort((d,A)=>A.lastSeen-d.lastSeen).slice(0,n)}function hr(u,r,n=5){if(!r.length)return[];const g=u.trim().toLowerCase(),i=xt(u,!1).text,x=/\s$/u.test(u);if(!xt(u,!0).text)return[];const T=[];for(const m of r){const d=xt(m.text);if(!d.text||m.text.trim().toLowerCase()===g)continue;const A=br(d,m.text,i,x);A&&T.push({item:m,match:A})}return T.sort((m,d)=>m.match.kindRank!==d.match.kindRank?m.match.kindRank-d.match.kindRank:m.match.span!==d.match.span?m.match.span-d.match.span:m.match.start!==d.match.start?m.match.start-d.match.start:m.item.lastSeen!==d.item.lastSeen?d.item.lastSeen-m.item.lastSeen:m.item.uses!==d.item.uses?d.item.uses-m.item.uses:m.item.text.length-d.item.text.length),T.slice(0,n).map(m=>({text:m.item.text,prefixEndIndex:m.match.prefixEndIndex,segments:Cr(m.item.text,m.match.ranges)}))}function xt(u,r=!0){const n=[],o=[];for(let g=0;g<u.length;g++){const i=xr(u[g]);if(i===" "){if(!n.length)continue;const x=n.length-1;if(n[x]===" "){o[x][1]=g+1;continue}}n.push(i),o.push([g,g+1])}return r&&n[n.length-1]===" "&&(n.pop(),o.pop()),{text:n.join(""),ranges:o}}function xr(u){if(/\s/u.test(u))return" ";try{return/[\p{P}\p{S}]/u.test(u)?" ":u.toLowerCase()}catch{return/[^a-z0-9\s]/i.test(u)?" ":u.toLowerCase()}}function br(u,r,n,o){if(!u.text)return null;if(u.text.startsWith(n)){const i=Ir(r,n,o)??r.length,x=Math.max(0,Math.min(r.length,i));return{kindRank:0,start:0,span:n.length,ranges:[[0,x]],prefixEndIndex:x}}const g=u.text.indexOf(n);return g!==-1?{kindRank:wr(u.text,g,n.length),start:g,span:n.length,ranges:_r(u,g,g+n.length),prefixEndIndex:r.length}:null}function yr(u,r){return r<=0?!0:u[r-1]===" "}function Sr(u,r){return r>=u.length?!0:u[r]===" "}function wr(u,r,n){const o=yr(u,r),g=Sr(u,r+n);return o&&g?1:o?2:3}function _r(u,r,n){const o=Math.max(0,Math.min(u.ranges.length,r)),g=Math.max(o,Math.min(u.ranges.length,n));return Ht(u.ranges.slice(o,g))}function Ir(u,r,n){if(!r)return null;let o="",g=!0;for(let i=0;i<u.length;i++){const x=u[i];let T;if(/\s/u.test(x))T=" ";else try{T=/[\p{P}\p{S}]/u.test(x)?" ":x.toLowerCase()}catch{T=/[^a-z0-9\s]/i.test(x)?" ":x.toLowerCase()}if(T===" "){if(g)continue;o+=" ",g=!0}else o+=T,g=!1;if(o.length===r.length){if(o!==r)return null;let m=i+1;if(n&&r.endsWith(" ")){let d=m;for(;d<u.length;){const A=u[d];if(/\s/u.test(A)){d+=1;continue}try{if(/[\p{P}\p{S}]/u.test(A)){d+=1;continue}}catch{if(/[^a-z0-9\s]/i.test(A)){d+=1;continue}}break}m=d}return m}if(o.length>r.length)return null}return null}function Cr(u,r){const n=Ht(r);if(!n.length)return[{text:u,matched:!1}];const o=[];let g=0;for(const[i,x]of n)i>g&&o.push({text:u.slice(g,i),matched:!1}),o.push({text:u.slice(i,x),matched:!0}),g=x;return g<u.length&&o.push({text:u.slice(g),matched:!1}),o.filter(i=>i.text.length>0)}function Ht(u){if(!u.length)return[];const r=u.map(([o,g])=>[Math.max(0,o),Math.max(0,g)]).filter(([o,g])=>g>o).sort((o,g)=>o[0]-g[0]||o[1]-g[1]);if(!r.length)return[];const n=[[r[0][0],r[0][1]]];for(let o=1;o<r.length;o++){const[g,i]=r[o],x=n[n.length-1];if(g<=x[1]){x[1]=Math.max(x[1],i);continue}n.push([g,i])}return n}var Tr=E('<form><h2 class="text-l mb-4 text-gray-300">Image URL</h2> <!> <!></form>'),kr=E('<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>'),Mr=E('<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>'),Pr=E('<div class="rounded-lg border border-red-500/70 bg-red-950/20 px-3 py-2 text-sm text-red-200"> </div>'),Ar=E('<button type="button"><div class="whitespace-pre-line break-words"> </div></button>'),Rr=E('<div class="ml-7 mt-2 flex flex-col gap-2"><!> <!> <!></div>'),Nr=E('<!> <div class="log-element"><div><!></div> <!></div>',1),Er=E('<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>'),Dr=E('<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>'),Fr=E("<span> </span>"),Or=E('<button type="button" role="option" tabindex="-1"></button>'),zr=E('<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>'),Vr=E('<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>'),Hr=E('<!> <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),qr=E('<div class="rc-scroll min-h-0 flex-1 overflow-y-auto pr-1"></div> <!>',1),Ur=E("<!> <!>",1);function Lr(u,r){nt(r,!0);let n=ue(r,"variant",3,null),o=ue(r,"promptEditProposalId",3,null),g=ue(r,"analyzeDisabled",3,!1),i=ue(r,"variantSourceTrace",3,null),x=ue(r,"variantChoices",19,()=>[]),T=ue(r,"variantLoading",3,!1),m=ue(r,"variantApplyingId",3,null),d=ue(r,"variantError",3,null),A=Pt(new Set),J=U(""),ve=U(""),G=U(""),L,de=U(!1),Y=U(null),Ae=U(""),p=U(!1),k=U("user"),D=U(null),M=U(Pt([])),B=U(null),ee=U(!1),j=U(!1),P=U(null);const te=v(()=>hr(e(J),e(M))),Ie=v(()=>e(P)==null?null:e(te)[e(P)]??null),Ce=v(()=>e(Ie)?e(Ie).text.slice(e(Ie).prefixEndIndex):""),Be=v(()=>!i()&&!e(G)&&e(J).trim().length===0);Pe(()=>{if(typeof window>"u")return;if(!e(Y)){s(Ae,"");return}const t=window.getComputedStyle(e(Y)),c=`calc(${t.paddingTop} + ${t.borderTopWidth})`,S=`calc(${t.paddingRight} + ${t.borderRightWidth})`,h=`calc(${t.paddingBottom} + ${t.borderBottomWidth})`,V=`calc(${t.paddingLeft} + ${t.borderLeftWidth})`;s(Ae,[`padding:${c} ${S} ${h} ${V}`,`font:${t.font}`,`letter-spacing:${t.letterSpacing}`,`line-height:${t.lineHeight}`,`text-indent:${t.textIndent}`,`text-transform:${t.textTransform}`,`text-align:${t.textAlign}`,`box-sizing:${t.boxSizing}`].join(";"),!0)}),Pe(()=>{e(P)!=null&&e(P)>=e(te).length&&s(P,null)});const Fe=v(()=>i()||!e(ee)||e(j)?!1:e(te).length>0);function Oe(t){s(J,t.text,!0),s(P,null),s(j,!0)}function Re(){s(ee,!0),s(j,!1)}function se(){s(ee,!1),s(P,null),s(j,!1)}function ge(){s(P,null),s(j,!1)}function Ne(t){if(t.key==="Escape"){e(Fe)&&t.preventDefault(),s(j,!0),s(P,null);return}if(t.key==="ArrowUp"||t.key==="ArrowDown"){if(!e(te).length)return;e(j)&&s(j,!1),t.preventDefault();const c=e(te).length-1;if(e(P)===null)s(P,t.key==="ArrowUp"?c:0,!0);else{const S=t.key==="ArrowUp"?-1:1;s(P,Math.max(0,Math.min(c,e(P)+S)),!0)}return}if(t.key==="Enter"||t.key==="Tab"&&!t.shiftKey){if(e(P)===null)return;const c=e(te)[e(P)];if(!c)return;t.preventDefault(),Oe(c);return}}let Se=null,Te=!1,je=0;function Je(){typeof window>"u"||L&&(!Te&&A.has(L)||Se==null&&(Se=requestAnimationFrame(()=>{if(Se=null,!L||!Te&&A.has(L))return;const t=L.scrollHeight-(L.scrollTop+L.clientHeight),c=Te||t>L.clientHeight?"auto":"smooth";L.scrollTo({top:L.scrollHeight,behavior:c}),Te=!1})))}Pe(()=>{const t=oe.length;t===0&&je>0&&(Te=!0,L&&A.delete(L)),je=t,t>0&&Je()});function ot(t){t.scrollTop+t.clientHeight+200>t.scrollHeight?A.delete(t):A.add(t)}function $e(t){if(e(p))return;(e(J).trim().length>0||e(G))&&(s(M,vr(e(M),e(J)),!0),r.onmessage({sender:t,text:e(J),imageUrl:e(G)}),s(G,""),s(J,""),s(k,"user"),s(j,!1),s(P,null))}function st(t){t.preventDefault(),$e(e(k))}function it(){s(k,e(k)==="system"?"user":"system",!0),requestAnimationFrame(()=>{var t;return(t=e(Y))==null?void 0:t.focus()})}function lt(t){t.preventDefault(),s(G,e(ve),!0),s(ve,""),s(de,!1)}function Qe(t){return t&&typeof t.renderedPrompt=="string"?t.renderedPrompt:null}function a(t,c){for(let S=c-1;S>=0;S--){const h=t[S];if(Ke(h)&&Et(h.name)&&Qe(h))return h}for(let S=c-1;S>=0;S--){const h=t[S];if(Ke(h)&&h.name==="prewarm"&&Qe(h))return h}return null}function l(t){return(t.eventName==="received-message"||t.eventName==="llm-handler-stream-requested")&&!String(t.content??"").trim()?!1:t.eventName==="received-message"||t.eventName==="llm-handler-stream-requested"||t.eventName==="finished-main-streaming-step"||t.eventName==="sent-message"||t.eventName==="transfer-requested"||t.eventName==="hangup-requested"}function f(t){return!!(r.agentId&&r.agentId.trim())&&t.eventName!=="transfer-requested"&&(t.eventName==="finished-main-streaming-step"||t.eventName==="sent-message")}function O(t){return t.role==="user"||t.eventName==="received-message"||t.eventName==="llm-handler-stream-requested"}function W(t){const c=String(t??"").trim();return!c||/^\[image\]\s+/.test(c)?"":c}function X(t){const c=t==null?void 0:t.bosunInputMessageSender;return c==="system"?"system":c==="user"?"user":t.role==="system"?"system":"user"}function K(t){if(!r.onRevertToState)return;const c=t==null?void 0:t.bosunPrevStateId,S=typeof c=="string"&&c.trim().length>0?c:null;r.onRevertToState(S);const h=typeof(t==null?void 0:t.bosunUserMessage)=="string"?t.bosunUserMessage:t.content;s(J,W(h),!0),s(k,X(t),!0),s(j,!1),s(P,null),requestAnimationFrame(()=>{var V,pe;try{(V=e(Y))==null||V.focus(),(pe=e(Y))==null||pe.select()}catch{}})}function w(){var t;r.agentType==="text"?s(de,!0):r.agentType==="voice"&&((t=r.onHangup)==null||t.call(r))}const Z=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function y(t){if(typeof t!="number"||!Number.isFinite(t))return null;const c=new Date(t);if(Number.isNaN(c.getTime()))return null;const S=c.getFullYear(),h=String(c.getMonth()+1).padStart(2,"0"),V=String(c.getDate()).padStart(2,"0");return`${S}-${h}-${V}`}function we(t){if(typeof t!="number"||!Number.isFinite(t))return null;const c=new Date(t);if(Number.isNaN(c.getTime()))return null;const S=c.getDate(),h=Z[c.getMonth()],V=c.getFullYear();return`${S} ${h} ${V}`}const ke=v(()=>oe.filter(t=>At(t)||Ke(t)?!0:Ue(t)?l(t):!1)),qt=v(()=>{var t;return((t=oe.findLast(c=>Ue(c)))==null?void 0:t.eventName)==="hangup-requested"}),St=v(()=>{const t=e(ke).map((c,S)=>({entry:c,index:S})).reverse().find(({entry:c,index:S})=>!Ue(c)||!f(c)?!1:e(ke).slice(0,S).some(h=>Ue(h)&&O(h)));return t&&Ue(t.entry)?t.entry:null}),wt=v(()=>{const t=e(St);if(!t)return null;try{const c=_t(t);return{model:c.model,stringifiedConversation:c.stringifiedConversation,response:c.response}}catch{return null}});function _t(t){if(!(r.agentId??"").trim())throw new Error("Agent id is not available; cannot analyze");const S=oe.indexOf(t);if(S===-1)throw new Error("Could not locate trace in chat history");const h=yt(oe,S,{requireRenderedPrompt:!0});if(!h)throw new Error("Could not find main step trace for this message");const V=typeof h.renderedPrompt=="string"?h.renderedPrompt:"";if(!V.trim())throw new Error("Main step rendered prompt is missing");const pe=typeof h.stringifiedConversation=="string"&&h.stringifiedConversation.trim()?h.stringifiedConversation:Nt(oe,S)??"",_e=String((t==null?void 0:t.content)??"");if(!_e.trim())throw new Error("Message content is missing");const H=typeof(h==null?void 0:h.model)=="string"?String(h.model):void 0,R=t==null?void 0:t.createdAt,re=typeof R=="number"&&Number.isFinite(R)?R:void 0;return{trace:t,stepTrace:h,renderedPrompt:V,stringifiedConversation:pe,response:_e,model:H,createdAt:re}}function Ut(t){if(r.onAnalyzeTrace)try{s(D,null),r.onAnalyzeTrace(_t(t))}catch(c){console.error(c),s(D,c instanceof Error?c.message:String(c),!0)}}function Lt(t){if(r.onRegenerateTrace)try{s(D,null),r.onRegenerateTrace(t)}catch(c){console.error(c),s(D,c instanceof Error?c.message:String(c),!0)}}async function Bt(){if(e(p))return;const t=e(wt);if(t){s(j,!0),s(P,null),s(p,!0);try{const c=await Ze.agents.generateUserResponse.mutate(t);s(J,c.text,!0),s(j,!0),s(P,null),requestAnimationFrame(()=>{var S,h;try{(S=e(Y))==null||S.focus(),(h=e(Y))==null||h.setSelectionRange(c.text.length,c.text.length)}catch{}})}catch(c){console.error("Failed to generate suggested user response",c)}finally{s(p,!1)}}}Pe(()=>{if(typeof window>"u")return;const t=(r.agentId??"").trim(),c=(r.region??"").trim()||null,S=`${t}::${c??""}::${n()??""}`;if(!t||S===e(B))return;s(B,S),s(M,[],!0);const h=t,V=c,pe=n(),_e=S;Ze.agents.userMessageHistory.query({agentId:h,region:V,variant:pe}).then(H=>{if(e(B)!==_e)return;const R=mr(H);s(M,pr(R,e(M)),!0),s(P,null)}).catch(H=>{console.error("Failed to load user message history",H),e(B)===_e&&(s(M,[],!0),s(P,null))})}),Pe(()=>{const t=i(),c=x().length,S=T(),h=d(),V=m();!t&&!c&&!S&&!h&&!V||Je()});var It=Ur(),Ct=Ee(It);fr(Ct,{get isOpen(){return e(de)},onClose:()=>s(de,!1),showCloseButton:!0,children:(t,c)=>{Rt(t,{class:"p-4",children:(S,h)=>{var V=Tr(),pe=N(C(V),2);Dt(pe,{class:"mb-2 w-80",get value(){return e(ve)},set value(H){s(ve,H,!0)}});var _e=N(pe,2);ce(_e,{variant:"secondary",type:"submit",class:"ml-2 p-2",children:(H,R)=>{De();var re=ye("Attach");b(H,re)},$$slots:{default:!0}}),I(V),pt("submit",V,lt),b(S,V)}})},$$slots:{default:!0}});var jt=N(Ct,2);Rt(jt,{get class(){return`relative flex min-h-0 flex-col p-2 pb-16 ${r.class??""}`},children:(t,c)=>{var S=qr(),h=Ee(S);Ye(h,21,()=>e(ke),bt,(H,R,re)=>{const ze=v(()=>y(e(R).createdAt)),he=v(()=>re>0?y(e(ke)[re-1].createdAt):null),Ve=v(()=>we(e(R).createdAt));var He=Nr(),We=Ee(He);{var ut=_=>{var z=kr(),$=C(z),Q=C($,!0);I($),I(z),ie(()=>me(Q,e(Ve))),b(_,z)};ne(We,_=>{e(ze)&&e(Ve)&&e(ze)!==e(he)&&_(ut)})}var Ge=N(We,2),xe=C(Ge),ct=C(xe);{var dt=_=>{Xt(_,{get trace(){return e(R)}})},gt=v(()=>At(e(R))),et=_=>{{let z=v(()=>yt(e(ke),re)),$=v(()=>r.onAnalyzeTrace?Ut:void 0),Q=v(()=>r.onRegenerateTrace?Lt:void 0),fe=v(()=>r.onRevertToState?K:void 0),le=v(()=>!!r.onSeeVariants&&!i()&&e(R)===e(St)),Me=v(()=>i()&&e(R)===i()?"source":"none"),ae=v(()=>m()===null&&i()&&e(R)===i()?r.onChooseOriginalVariant:void 0),be=v(()=>!!i()&&e(R)===i());Zt(_,{testCreationMode:"direct",get trace(){return e(R)},get context(){return r.context},get agentId(){return r.agentId},get region(){return r.region},get variant(){return n()},get promptEditProposalId(){return o()},get testSourceStep(){return e(z)},get testEntries(){return e(ke)},get analyzeDisabled(){return g()},get onAnalyze(){return e($)},get onRegenerate(){return e(Q)},get onRevert(){return e(fe)},get showSeeVariants(){return e(le)},get onSeeVariants(){return r.onSeeVariants},get variantSelectionState(){return e(Me)},get onSelectInVariantMode(){return e(ae)},get suppressActionRow(){return e(be)}})}},ft=v(()=>Ue(e(R))),mt=_=>{{let z=v(()=>Nt(e(ke),re)),$=v(()=>Et(e(R).name)?a(e(ke),re):null);$t(_,{testCreationMode:"direct",get trace(){return e(R)},get agentId(){return r.agentId},get region(){return r.region},get variant(){return n()},get promptEditProposalId(){return o()},get fallbackConversation(){return e(z)},get runtimeContext(){return r.context},get compareTrace(){return e($)}})}},vt=v(()=>Ke(e(R)));ne(ct,_=>{e(gt)?_(dt):e(ft)?_(et,1):e(vt)&&_(mt,2)})}I(xe);var F=N(xe,2);{var q=_=>{var z=Rr(),$=C(z);{var Q=ae=>{var be=Mr();b(ae,be)};ne($,ae=>{T()&&ae(Q)})}var fe=N($,2);{var le=ae=>{var be=Pr(),Tt=C(be,!0);I(be),ie(()=>me(Tt,d())),b(ae,be)};ne(fe,ae=>{d()&&ae(le)})}var Me=N(fe,2);Ye(Me,17,x,ae=>ae.id,(ae,be,Tt,Kr)=>{var qe=Ar(),kt=C(qe),Jt=C(kt,!0);I(kt),I(qe),ie(()=>{qe.disabled=m()!==null,rt(qe,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 ${m()===e(be).id?"bg-rc-green-700":""}`),me(Jt,e(be).text)}),Le("click",qe,()=>{var Mt;return(Mt=r.onChooseVariant)==null?void 0:Mt.call(r,e(be).id)}),b(ae,qe)}),I(z),b(_,z)};ne(F,_=>{i()&&e(R)===i()&&_(q)})}I(Ge),b(H,He)}),I(h),Vt(h,H=>L=H,()=>L);var V=N(h,2);{var pe=H=>{var R=Er(),re=N(C(R),2),ze=N(re,2);I(R),ie(()=>re.disabled=!r.onRegenerateVariants||T()||m()!==null),Le("click",re,()=>{var he;return(he=r.onRegenerateVariants)==null?void 0:he.call(r)}),Le("click",ze,()=>{var he;return(he=r.onCancelVariants)==null?void 0:he.call(r)}),b(H,R)},_e=H=>{var R=Hr(),re=Ee(R);{var ze=F=>{var q=Dr(),_=C(q,!0);I(q),ie(()=>me(_,e(D))),b(F,q)};ne(re,F=>{e(D)&&F(ze)})}var he=N(re,2),Ve=C(he),He=C(Ve),We=C(He);{var ut=F=>{var q=zr();Ye(q,23,()=>e(te),_=>_.text,(_,z,$)=>{var Q=Or();Ye(Q,21,()=>e(z).segments,bt,(fe,le)=>{var Me=Fr(),ae=C(Me,!0);I(Me),ie(()=>{rt(Me,1,Gt(e(le).matched?"text-rc-green-200":"")),me(ae,e(le).text)}),b(fe,Me)}),I(Q),ie(()=>{ht(Q,"aria-selected",e(P)===e($)),rt(Q,1,`w-full select-none border-b border-rc-gray-110 px-3 py-2 text-left font-semibold text-rc-gray-100 last:border-b-0 hover:bg-rc-gray-700/70 ${e(P)===e($)?"bg-rc-gray-700/70":""}`)}),Le("mousedown",Q,fe=>{fe.preventDefault(),Oe(e(z))}),b(_,Q)}),I(q),b(F,q)};ne(We,F=>{e(Fe)&&F(ut)})}var Ge=N(We,2);{let F=v(()=>e(k)==="system"?"!border-emerald-500 !pl-[5.5rem] hover:!border-emerald-500 focus:!border-emerald-500":"!pl-[4.25rem]"),q=v(()=>e(p)?"Generating":"Enter message...");Dt(Ge,{variant:"chat",get class(){return`!text-base !leading-6 !duration-75 ${e(F)??""}`},get placeholder(){return e(q)},autocomplete:"off",get readonly(){return e(p)},onfocus:Re,onblur:se,oninput:ge,onkeydown:Ne,get value(){return e(J)},set value(_){s(J,_,!0)},get el(){return e(Y)},set el(_){s(Y,_,!0)}})}var xe=N(Ge,2),ct=C(xe,!0);I(xe);var dt=N(xe,2);{var gt=F=>{var q=Vr(),_=C(q),z=C(_),$=C(z,!0);I(z);var Q=N(z),fe=C(Q,!0);I(Q),I(_),I(q),ie(()=>{Yt(_,e(Ae)),me($,e(J)),me(fe,e(Ce))}),b(F,q)};ne(dt,F=>{e(P)!==null&&e(Ce)&&F(gt)})}I(He);var et=N(He,2);{let F=v(()=>e(p)||!r.agentType);ce(et,{size:"small",variant:"secondary",get disabled(){return e(F)},onclick:w,children:(q,_)=>{var z=Ot(),$=Ee(z);{var Q=le=>{Xe(le,{name:"paperclip"})},fe=le=>{Xe(le,{name:"hangup"})};ne($,le=>{r.agentType==="text"?le(Q):r.agentType==="voice"&&le(fe,1)})}b(q,z)},$$slots:{default:!0}})}var ft=N(et,2);{var mt=F=>{{let q=v(()=>e(p)||!e(wt));ce(F,{size:"small",type:"button",title:"Generate response","aria-label":"Generate response",get disabled(){return e(q)},class:"inline-flex !w-[59px] items-center justify-center !px-0",onclick:_=>{_.preventDefault(),Bt()},children:(_,z)=>{Xe(_,{name:"sparkles"})},$$slots:{default:!0}})}},vt=F=>{{let q=v(()=>e(k)==="system"?"Send as system":"Send as user"),_=v(()=>e(k)==="system"?"Send as system":"Send as user");ce(F,{size:"small",type:"submit",get title(){return e(q)},get"aria-label"(){return e(_)},get disabled(){return e(p)},class:"inline-flex !w-[59px] items-center justify-center !px-0",children:(z,$)=>{Xe(z,{name:"send"})},$$slots:{default:!0}})}};ne(ft,F=>{e(Be)?F(mt):F(vt,-1)})}I(Ve),I(he),ie(()=>{Ve.disabled=e(qt),ht(xe,"title",e(k)==="system"?"Switch to user":"Switch to system"),ht(xe,"aria-label",e(k)==="system"?"Switch to user":"Switch to system"),xe.disabled=e(p),me(ct,e(k)==="system"?"System":"User")}),pt("submit",he,st),Le("click",xe,F=>{F.preventDefault(),F.stopPropagation(),it()}),b(H,R)};ne(V,H=>{i()?H(pe):H(_e,-1)})}pt("scroll",h,H=>ot(H.target)),b(t,S)}}),b(u,It),at()}Ft(["click","mousedown"]);var Br=E('<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>'),jr=E('<div class="flex h-full items-center justify-center text-sm text-rc-gray-300">Connecting…</div>'),Jr=E('<div class="flex h-full items-center justify-center text-sm text-rc-gray-300">Select an agent to start chatting</div>'),Wr=E('<div class="h-full min-h-0 p-2"><!></div>'),Gr=E('<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 pn(u,r){nt(r,!0);const{state:n,actions:o}=Kt();let g=U(!1),i=U(null);const x=v(()=>{var l,f;const a=(l=n.currentStep)==null?void 0:l.name;return a?((f=Object.values(n.promptEdits).find(O=>O.agentId===n.agentId&&O.step===a))==null?void 0:f.id)??null:null});let T=U(null),m=null,d=U(!1),A=U(null);const J=v(()=>{var l;const a=((l=n.agentStates.at(-1))==null?void 0:l.id)??null;return!!a&&n.currentState===a});Pe(()=>{!oe.length&&!tt.length&&e(d)&&s(d,!1)});function ve(a){const l=(a||"").trim();return l?l.split("/").at(-1)??l:"Agent"}function G(a){if(typeof a!="number"||!Number.isFinite(a))return null;const l=new Date(a);if(Number.isNaN(l.getTime()))return null;const f=String(l.getHours()).padStart(2,"0"),O=String(l.getMinutes()).padStart(2,"0"),W=String(l.getSeconds()).padStart(2,"0");return`${f}:${O}:${W}`}async function L(a){var X,K;if(e(g))return;s(g,!0);const l=o.openPopover("analyze"),f=G(a.createdAt),O=f?` • ${f}`:"",W=`Analysis — ${ve(n.agentId)}${O}`;try{const w=await Ze.agents.analyzeTrace.mutate({agentId:n.agentId,traceId:(X=a.trace)==null?void 0:X.traceId,eventName:a.trace.eventName,createdAt:a.createdAt,model:a.model,renderedPrompt:a.renderedPrompt,stringifiedConversation:a.stringifiedConversation,response:a.response,stepTrace:a.stepTrace});if(((K=n.edit.popover)==null?void 0:K.requestId)!==l)return;o.setHighlightQuotes(w.quotes);let Z=null;try{Z=JSON.stringify(w.raw,null,2)}catch{Z=null}o.setPopoverReady(l,{title:W,quotes:w.quotes,rationales:w.rationales,parallelCalls:w.parallelCalls,raw:Z})}catch(w){console.error(w);const Z=typeof(w==null?void 0:w.message)=="string"?w.message:(()=>{try{return JSON.stringify(w)}catch{return String(w)}})();o.setPopoverError(l,Z||"Failed to analyze this response",{raw:Z})}finally{s(g,!1)}}function de(a){return a?oe:oe.map(l=>{if(!Ke(l))return l;const{receivedPrompt:f,renderedPrompt:O,...W}=l;return W})}function Y(a){s(T,a,!0),m&&clearTimeout(m),m=window.setTimeout(()=>{s(T,null),m=null},2e3)}async function Ae(){try{await navigator.clipboard.writeText(JSON.stringify(tt,null,2)),Y("logs")}catch(a){console.error("Failed to copy logs",a)}}async function p(a){try{await navigator.clipboard.writeText(JSON.stringify(de(a),null,2)),Y(a?"with-prompts":"without-prompts")}catch(l){console.error("Failed to copy traces",l)}}function k(){ee(),o.closePopover(),o.closeContextPopover(),o.selectState(null)}function D(a,l="user"){const f=String(a??"").trim();if(!f)return null;const O=/^\[image\]\s+(.+)$/.exec(f);if(O){const W=(O[1]??"").trim();return W?{sender:l,text:"",imageUrl:W}:null}return{sender:l,text:f}}function M(a){return a==="system"?"system":"user"}function B(a){ee();const l=a==null?void 0:a.bosunPrevStateId,f=typeof l=="string"&&l.trim()?l:null,O=typeof(a==null?void 0:a.bosunUserMessage)=="string"&&a.bosunUserMessage||null,W=M(a==null?void 0:a.bosunInputMessageSender);let X=O?D(O,W):null;if(!X){const K=a==null?void 0:a.bosunStateId;if(typeof K=="string"&&K.trim()){const w=n.agentStates.find(Z=>Z.id===K);X=D((w==null?void 0:w.userMessage)??"",M(w==null?void 0:w.userMessageSender))}}if(!X){if(l===void 0)throw new Error("Cannot regenerate: this response has no saved state metadata");o.selectState(f);return}o.selectState(f),o.sendChatMessage({sender:X.sender,text:X.text,imageUrl:X.imageUrl})}function ee(){s(i,null)}function j(a){const l=oe.indexOf(a),f=l===-1?null:yt(oe,l);return f&&typeof f.receivedContext<"u"?er(f.receivedContext):tr(n.context)}function P(a){const l=j(a),f=Qt(n.context);return f?{context:l,mocks:f}:l}async function te(a){if(!n.agentId)return;const l=o.getPromptOverrides();await o.flushPromptSave(),s(i,{sourceTrace:a,choices:[],loading:!0,applyingId:null,error:null},!0);try{const f=await Ze.agents.generateVariants.mutate({agentId:n.agentId,region:n.region,variant:n.variant,context:P(a),promptOverrides:l,count:9});if(!e(i)||e(i).sourceTrace!==a)return;s(i,{...e(i),choices:f,loading:!1,error:null},!0)}catch(f){if(console.error("Failed to generate variants",f),!e(i)||e(i).sourceTrace!==a)return;s(i,{...e(i),choices:[],loading:!1,error:typeof(f==null?void 0:f.message)=="string"?f.message:"Failed to generate variants"},!0)}}function Ie(a){te(a)}function Ce(){o.hangup()}function Be(){var l;const a=(l=e(i))==null?void 0:l.sourceTrace;a&&te(a)}async function Fe(a){if(!e(i)||!n.agentId)return;const l=e(i).choices.find(f=>f.id===a);if(l){s(i,{...e(i),applyingId:a,error:null},!0);try{await Ze.agents.commitVariant.mutate({agentId:n.agentId,region:n.region,variant:n.variant,state:l.state}),ee(),Wt(),ar(),o.sendAppEvent({type:"reload-project"})}catch(f){if(console.error("Failed to apply variant",f),!e(i))return;s(i,{...e(i),applyingId:null,error:typeof(f==null?void 0:f.message)=="string"?f.message:"Failed to apply variant"},!0)}}}function Oe(){ee()}Pe(()=>{const a=e(i),l=n.agentId,f=a==null?void 0:a.sourceTrace;!a||!f||(!l||!oe.includes(f))&&s(i,null)});var Re=Gr(),se=C(Re),ge=C(se);{var Ne=a=>{dr(a,{get agentStates(){return n.agentStates},get currentState(){return n.currentState},class:"ml-9",onSelectState:l=>o.selectState(l)})};ne(ge,a=>{n.agentStates.length>1&&a(Ne)})}var Se=N(ge,2),Te=C(Se);{let a=v(()=>!n.agentId);ce(Te,{variant:"secondary",size:"small",get disabled(){return e(a)},get"aria-expanded"(){return n.contextPopoverOpen},"aria-haspopup":"dialog",get onclick(){return o.toggleContextPopover},children:(l,f)=>{De();var O=ye("Edit context");b(l,O)},$$slots:{default:!0}})}var je=N(Te,2);{let a=v(()=>!oe.length&&!tt.length);ce(je,{variant:"secondary",size:"small",get disabled(){return e(a)},get"aria-expanded"(){return e(d)},"aria-haspopup":"listbox","aria-controls":"roleplay-copy-dropdown",onclick:l=>{l.stopPropagation(),s(d,!e(d))},get el(){return e(A)},set el(l){s(A,l,!0)},children:(l,f)=>{var O=Ot(),W=Ee(O);{var X=y=>{var we=ye("Copied logs");b(y,we)},K=y=>{var we=ye("Copied traces (with prompts)");b(y,we)},w=y=>{var we=ye("Copied traces (without prompts)");b(y,we)},Z=y=>{var we=ye("Copy...");b(y,we)};ne(W,y=>{e(T)==="logs"?y(X):e(T)==="with-prompts"?y(K,1):e(T)==="without-prompts"?y(w,2):y(Z,-1)})}b(l,O)},$$slots:{default:!0}})}var Je=N(je,2);zt(Je,{id:"roleplay-copy-dropdown",get open(){return e(d)},onClose:()=>s(d,!1),get anchorEl(){return e(A)},placement:"bottom-end",offset:[0,1],children:l=>{var f=Br(),O=C(f);{let K=v(()=>!tt.length);ce(O,{variant:"ghost",size:"small",role:"option",get disabled(){return e(K)},onclick:w=>{w.stopPropagation(),s(d,!1),Ae()},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:(w,Z)=>{De();var y=ye("Copy logs");b(w,y)},$$slots:{default:!0}})}var W=N(O,2);{let K=v(()=>!oe.length);ce(W,{variant:"ghost",size:"small",role:"option",get disabled(){return e(K)},onclick:w=>{w.stopPropagation(),s(d,!1),p(!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:(w,Z)=>{De();var y=ye("Copy traces with prompts");b(w,y)},$$slots:{default:!0}})}var X=N(W,2);{let K=v(()=>!oe.length);ce(X,{variant:"ghost",size:"small",role:"option",get disabled(){return e(K)},onclick:w=>{w.stopPropagation(),s(d,!1),p(!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:(w,Z)=>{De();var y=ye("Copy traces without prompts");b(w,y)},$$slots:{default:!0}})}I(f),b(l,f)},$$slots:{default:!0}});var ot=N(Je,2);ce(ot,{size:"small",onclick:k,children:(a,l)=>{De();var f=ye("New chat");b(a,f)},$$slots:{default:!0}}),I(Se),I(se);var $e=N(se,2),st=C($e);{var it=a=>{var l=jr();b(a,l)},lt=a=>{var l=Jr();b(a,l)},Qe=a=>{var l=Wr(),f=C(l);{let O=v(()=>e(J)?Ie:void 0),W=v(()=>{var y;return((y=e(i))==null?void 0:y.sourceTrace)??null}),X=v(()=>{var y;return((y=e(i))==null?void 0:y.choices)??[]}),K=v(()=>{var y;return((y=e(i))==null?void 0:y.loading)??!1}),w=v(()=>{var y;return((y=e(i))==null?void 0:y.applyingId)??null}),Z=v(()=>{var y;return((y=e(i))==null?void 0:y.error)??null});Lr(f,{class:"h-full min-w-0",get context(){return n.context},get agentId(){return n.agentId},get region(){return n.region},get variant(){return n.variant},get promptEditProposalId(){return e(x)},get agentType(){return n.agentType},onmessage:y=>o.sendChatMessage(y),get analyzeDisabled(){return e(g)},onAnalyzeTrace:L,onRegenerateTrace:B,onRevertToState:y=>o.selectState(y),get onSeeVariants(){return e(O)},onHangup:Ce,get variantSourceTrace(){return e(W)},get variantChoices(){return e(X)},get variantLoading(){return e(K)},get variantApplyingId(){return e(w)},get variantError(){return e(Z)},onCancelVariants:ee,onRegenerateVariants:Be,onChooseOriginalVariant:Oe,onChooseVariant:Fe})}I(l),b(a,l)};ne(st,a=>{!n.wsLoaded||!n.chatReady?a(it):n.agentId?a(Qe,-1):a(lt,1)})}I($e),I(Re),b(u,Re),at()}export{pn as component};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"
|
|
1
|
+
{"version":"1789061388155"}
|
|
Binary file
|
|
Binary file
|
|
@@ -2,9 +2,9 @@ import './shims.js';
|
|
|
2
2
|
import 'node:fs';
|
|
3
3
|
import 'node:path';
|
|
4
4
|
import 'node:process';
|
|
5
|
-
export { h as handler } from './server/chunks/handler-
|
|
6
|
-
import './server/chunks/index.js-
|
|
7
|
-
import './server/chunks/manifest.js-
|
|
5
|
+
export { h as handler } from './server/chunks/handler-KSixAuP8.js';
|
|
6
|
+
import './server/chunks/index.js-xzEg77OG.js';
|
|
7
|
+
import './server/chunks/manifest.js-BW4X3pHs.js';
|
|
8
8
|
import './env.js';
|
|
9
9
|
import 'node:buffer';
|
|
10
10
|
import 'node:crypto';
|
|
@@ -23,6 +23,6 @@ import './server/chunks/chunks/server.js-Bf8x1V_n.js';
|
|
|
23
23
|
import './server/chunks/chunks/exports.js-8HOoaa4e.js';
|
|
24
24
|
import './server/chunks/chunks/index4.js-C9gg2iSH.js';
|
|
25
25
|
import './server/chunks/chunks/shared-server.js-DaWdgxVh.js';
|
|
26
|
-
import './server/chunks/chunks/internal.js-
|
|
26
|
+
import './server/chunks/chunks/internal.js-ChM9druZ.js';
|
|
27
27
|
import './server/chunks/chunks/root.js-CJvqqGUj.js';
|
|
28
28
|
//# sourceMappingURL=handler.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import http from 'node:http';
|
|
2
2
|
import fs__default from 'node:fs';
|
|
3
3
|
import process from 'node:process';
|
|
4
|
-
import { p as polka, h as handler, f as format_listening_address } from './server/chunks/handler-
|
|
4
|
+
import { p as polka, h as handler, f as format_listening_address } from './server/chunks/handler-KSixAuP8.js';
|
|
5
5
|
import { env, timeout_env } from './env.js';
|
|
6
6
|
import { rm } from 'node:fs/promises';
|
|
7
7
|
import './shims.js';
|
|
@@ -11,7 +11,7 @@ import 'node:path';
|
|
|
11
11
|
import 'node:timers';
|
|
12
12
|
import 'node:querystring';
|
|
13
13
|
import 'node:stream';
|
|
14
|
-
import './server/chunks/index.js-
|
|
14
|
+
import './server/chunks/index.js-xzEg77OG.js';
|
|
15
15
|
import './server/chunks/chunks/utils2.js-DyJSCbBx.js';
|
|
16
16
|
import './server/chunks/chunks/utils.js-BQzn9ikS.js';
|
|
17
17
|
import './server/chunks/chunks/uneval.js-5Y6J9rDU.js';
|
|
@@ -22,9 +22,9 @@ import './server/chunks/chunks/server.js-Bf8x1V_n.js';
|
|
|
22
22
|
import './server/chunks/chunks/exports.js-8HOoaa4e.js';
|
|
23
23
|
import './server/chunks/chunks/index4.js-C9gg2iSH.js';
|
|
24
24
|
import './server/chunks/chunks/shared-server.js-DaWdgxVh.js';
|
|
25
|
-
import './server/chunks/chunks/internal.js-
|
|
25
|
+
import './server/chunks/chunks/internal.js-ChM9druZ.js';
|
|
26
26
|
import './server/chunks/chunks/root.js-CJvqqGUj.js';
|
|
27
|
-
import './server/chunks/manifest.js-
|
|
27
|
+
import './server/chunks/manifest.js-BW4X3pHs.js';
|
|
28
28
|
import 'node:url';
|
|
29
29
|
|
|
30
30
|
const path = env('SOCKET_PATH', false);
|
|
@@ -142,6 +142,7 @@ function ChatConversationalTrace($$renderer, $$props) {
|
|
|
142
142
|
context,
|
|
143
143
|
agentId,
|
|
144
144
|
region = null,
|
|
145
|
+
variant = null,
|
|
145
146
|
promptEditProposalId = null,
|
|
146
147
|
allowAddTest = true,
|
|
147
148
|
testSourceStep = void 0,
|
|
@@ -329,6 +330,7 @@ function ChatStepTrace($$renderer, $$props) {
|
|
|
329
330
|
compareTrace,
|
|
330
331
|
agentId,
|
|
331
332
|
region = null,
|
|
333
|
+
variant = null,
|
|
332
334
|
promptEditProposalId = null,
|
|
333
335
|
fallbackConversation = null,
|
|
334
336
|
runtimeContext,
|
|
@@ -555,4 +557,4 @@ function ChatStepTrace($$renderer, $$props) {
|
|
|
555
557
|
}
|
|
556
558
|
|
|
557
559
|
export { ChatApiCallTrace as C, ChatConversationalTrace as a, ChatStepTrace as b, findStringifiedConversationBefore as c, findMainStepTraceNear as f };
|
|
558
|
-
//# sourceMappingURL=ChatStepTrace.js-
|
|
560
|
+
//# sourceMappingURL=ChatStepTrace.js-BY0y3Vbb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChatStepTrace.js-BY0y3Vbb.js","sources":["../../../../.svelte-kit/output/server/chunks/ChatStepTrace.js"],"sourcesContent":["import { e as escape_html, b as attr_class, i as clsx, f as derived, d as attr, s as stringify } from \"./index.js\";\nimport { o as onDestroy } from \"./index-server.js\";\n/* empty css */\n/* empty css */\nimport { I as Icon } from \"./Icon.js\";\nimport { i as isMainStepName } from \"./steps.js\";\nimport \"./trpc-client.js\";\nfunction createDragSelectClickGuard(options = {}) {\n const thresholdPx = options.thresholdPx ?? 4;\n const dragCursor = options.dragCursor ?? \"text\";\n let startX = 0;\n let startY = 0;\n let didDrag = false;\n let pointerDown = false;\n let cursorEl = null;\n let abortController = null;\n function cleanup() {\n pointerDown = false;\n didDrag = false;\n cursorEl?.style.removeProperty(\"cursor\");\n cursorEl = null;\n abortController?.abort();\n abortController = null;\n }\n function onPointerDown(event) {\n if (typeof window === \"undefined\") return;\n if (event.button !== 0) return;\n abortController?.abort();\n abortController = null;\n cursorEl?.style.removeProperty(\"cursor\");\n startX = event.clientX;\n startY = event.clientY;\n didDrag = false;\n pointerDown = true;\n cursorEl = event.currentTarget instanceof HTMLElement ? event.currentTarget : null;\n const controller = new AbortController();\n abortController = controller;\n const onMove = (moveEvent) => {\n if (!pointerDown || didDrag) return;\n const dx = Math.abs(moveEvent.clientX - startX);\n const dy = Math.abs(moveEvent.clientY - startY);\n if (dx + dy < thresholdPx) return;\n didDrag = true;\n cursorEl?.style.setProperty(\"cursor\", dragCursor);\n };\n const onEnd = () => {\n pointerDown = false;\n cursorEl?.style.removeProperty(\"cursor\");\n cursorEl = null;\n controller.abort();\n if (abortController === controller) abortController = null;\n };\n window.addEventListener(\"pointermove\", onMove, { signal: controller.signal });\n window.addEventListener(\"pointerup\", onEnd, { signal: controller.signal });\n window.addEventListener(\"pointercancel\", onEnd, { signal: controller.signal });\n }\n function shouldSuppressClick(event) {\n return event.detail > 0 && didDrag;\n }\n return { onPointerDown, shouldSuppressClick, cleanup };\n}\nfunction ChatApiCallTrace($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let { trace } = $$props;\n const clickGuard = createDragSelectClickGuard();\n onDestroy(clickGuard.cleanup);\n function formatHHmmss(ms) {\n if (typeof ms !== \"number\" || !Number.isFinite(ms)) return null;\n const d = new Date(ms);\n if (Number.isNaN(d.getTime())) return null;\n const hh = String(d.getHours()).padStart(2, \"0\");\n const mm = String(d.getMinutes()).padStart(2, \"0\");\n const ss = String(d.getSeconds()).padStart(2, \"0\");\n return `${hh}:${mm}:${ss}`;\n }\n const time = derived(() => formatHHmmss(trace.createdAt));\n const derivedError = derived(() => {\n if (trace.error != null) return trace.error;\n const isFailed = trace.ok === false || typeof trace.status === \"number\" && trace.status >= 400;\n if (!isFailed) return void 0;\n const resp = trace.response;\n if (resp && typeof resp === \"object\") {\n if (\"error\" in resp && resp.error != null) return resp.error;\n }\n return { status: trace.status, ok: trace.ok };\n });\n const hasError = derived(() => derivedError() != null);\n const oneLine = derived(() => trace.operationName);\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n $$renderer3.push(`<button type=\"button\" class=\"flex w-full cursor-pointer select-text items-baseline gap-2 truncate rounded-md bg-transparent px-2 py-1 text-left text-sm text-rc-gray-200 hover:bg-rc-gray-800/40\">`);\n Icon($$renderer3, {\n name: hasError() ? \"close\" : \"checkmark\",\n width: 18,\n height: 18,\n class: hasError() ? \"self-center text-red-400\" : \"self-center text-rc-green-200\"\n });\n $$renderer3.push(`<!----> `);\n if (time()) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<span class=\"text-[13px] leading-none text-rc-gray-400\">${escape_html(time())}</span>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> <span${attr_class(clsx(hasError() ? \"text-red-200\" : \"\"))}>${escape_html(oneLine())}</span></button> `);\n {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]-->`);\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n });\n}\nfunction isStepTrace(entry) {\n return !(\"operationName\" in entry) && !(\"eventName\" in entry);\n}\nfunction isMainStepTrace(entry) {\n return isStepTrace(entry) && isMainStepName(entry.name);\n}\nfunction findMainStepTraceNear(entries, index, options = {}) {\n if (index < 0) return null;\n const matches = (entry) => {\n if (!isMainStepTrace(entry)) return false;\n if (!options.requireRenderedPrompt) return true;\n return typeof entry.renderedPrompt === \"string\" && entry.renderedPrompt.trim().length > 0;\n };\n return [...entries.slice(0, index)].reverse().find(matches) ?? entries.slice(index + 1).find(matches) ?? null;\n}\nfunction findStringifiedConversationBefore(entries, index) {\n if (index <= 0) return null;\n return [...entries.slice(0, index)].reverse().map((entry) => isStepTrace(entry) ? entry.stringifiedConversation?.trim() : \"\").find(Boolean) ?? null;\n}\nfunction ChatConversationalTrace($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let {\n trace,\n context,\n agentId,\n region = null,\n variant = null,\n promptEditProposalId = null,\n allowAddTest = true,\n testSourceStep = void 0,\n testEntries = void 0,\n requireTestSourceStep = false,\n testCreationMode,\n analyzeDisabled = false,\n onAnalyze,\n onRegenerate,\n onRevert,\n showSeeVariants = false,\n onSeeVariants,\n variantSelectionState = \"none\",\n onSelectInVariantMode,\n suppressActionRow = false\n } = $$props;\n let added = \"idle\";\n let testDraftOpen = false;\n const clickGuard = createDragSelectClickGuard();\n onDestroy(clickGuard.cleanup);\n function agentName(id) {\n if (!id) return \"\";\n return id.split(\"/\").at(-1) ?? id;\n }\n function getInitial(id) {\n const first = agentName(id).trim().charAt(0);\n return first ? first.toUpperCase() : \"?\";\n }\n const sender = derived(() => {\n if (trace.eventName === \"finished-main-streaming-step\" || trace.eventName === \"sent-message\") {\n return \"agent\";\n }\n if (trace.role === \"system\" || trace?.bosunInputMessageSender === \"system\") {\n return \"system\";\n }\n return trace.role === \"user\" ? \"user\" : \"user\";\n });\n const bubbleMaxWidthClass = derived(() => {\n if (sender() === \"agent\") return \"max-w-[83%]\";\n if (sender() === \"user\") return \"max-w-[90%] sm:max-w-[80%] md:max-w-[70%]\";\n if (sender() === \"system\") return \"max-w-[90%] sm:max-w-[85%] md:max-w-[75%]\";\n return \"\";\n });\n const showRevert = derived(() => (sender() === \"user\" || sender() === \"system\") && !!onRevert && // Hide for older traces that predate bosun state metadata.\n trace?.bosunPrevStateId !== void 0);\n const hasError = derived(() => trace.error != null);\n const isVariantSelectable = derived(() => variantSelectionState === \"source\");\n function formatHHmmss(ms) {\n if (typeof ms !== \"number\" || !Number.isFinite(ms)) return null;\n const d = new Date(ms);\n if (Number.isNaN(d.getTime())) return null;\n const hh = String(d.getHours()).padStart(2, \"0\");\n const mm = String(d.getMinutes()).padStart(2, \"0\");\n const ss = String(d.getSeconds()).padStart(2, \"0\");\n return `${hh}:${mm}:${ss}`;\n }\n const time = derived(() => formatHHmmss(trace?.createdAt));\n function isAddTestCandidate() {\n return allowAddTest && sender() === \"agent\" && trace.eventName !== \"transfer-requested\" && (trace.eventName === \"finished-main-streaming-step\" || trace.eventName === \"sent-message\");\n }\n function isAddTestEligible() {\n if (!isAddTestCandidate() || !(agentId && agentId.trim())) return false;\n if (!requireTestSourceStep) return true;\n return !!testSourceStep && typeof testSourceStep.receivedContext !== \"undefined\";\n }\n function isAnalyzeEligible() {\n return sender() === \"agent\" && trace.eventName !== \"transfer-requested\" && !!(agentId && agentId.trim()) && (trace.eventName === \"finished-main-streaming-step\" || trace.eventName === \"sent-message\");\n }\n function isRegenerateEligible() {\n return isAnalyzeEligible();\n }\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n $$renderer3.push(`<div${attr_class(\"group mb-2 flex w-full items-start\", void 0, { \"justify-end\": sender() === \"user\" || sender() === \"system\" })}>`);\n if (trace.eventName === \"transfer-requested\" || trace.eventName === \"hangup-requested\") {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<div class=\"flex w-full justify-center\"><div${attr_class(`cursor-pointer select-text rounded-full border border-rc-gray-650 bg-rc-gray-800/40 px-4 py-2 text-sm text-rc-gray-100 ${hasError() ? \"border-red-500 bg-red-950/30 text-red-200\" : \"\"}`)} role=\"button\" tabindex=\"0\"><div class=\"flex flex-wrap items-baseline gap-x-2 gap-y-0\">`);\n if (time()) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<span class=\"text-[13px] leading-none text-rc-gray-400\">${escape_html(time())}</span>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n if (trace.eventName === \"transfer-requested\") {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<div class=\"min-w-0 break-words\">Transfer requested: ${escape_html(trace.content)}</div>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n $$renderer3.push(`<div class=\"min-w-0 break-words\">Conversation hanged up.</div>`);\n }\n $$renderer3.push(`<!--]--></div></div></div>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n if (sender() === \"agent\" && agentId) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<div class=\"mr-2 mt-1 flex h-5 w-5 shrink-0 items-center justify-center rounded-sm bg-rc-green-700 text-sm uppercase text-rc-gray-100 backdrop-blur-md\"${attr(\"title\", agentName(agentId))}>${escape_html(getInitial(agentId))}</div>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n if (showRevert()) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<button type=\"button\" title=\"Edit this message\" class=\"mr-2 mt-1 shrink-0 self-start rounded p-1 text-rc-gray-500 opacity-80 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none\">`);\n Icon($$renderer3, { name: \"undo\", width: 16, height: 16 });\n $$renderer3.push(`<!----></button>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> <div${attr_class(`min-w-0 ${stringify(bubbleMaxWidthClass())}`)}><div role=\"button\" tabindex=\"0\" class=\"cursor-pointer select-text\"><div${attr_class(`rounded-lg ${sender() === \"system\" ? \"justify-between whitespace-pre-line break-words border border-emerald-500 text-emerald-500\" : isVariantSelectable() ? \"w-full whitespace-pre-line break-words border border-rc-green-450 bg-transparent backdrop-blur-md hover:bg-rc-green-700\" : sender() !== \"user\" ? \"w-full whitespace-pre-line break-words bg-rc-green-700 backdrop-blur-md\" : \"whitespace-pre-line break-words bg-rc-gray-700\"} ${sender() === \"system\" || isVariantSelectable() ? \"\" : \"border-thin border-rc-gray-110\"} p-2 pt-1 text-rc-gray-100 ${hasError() ? \"border-red-500 bg-red-950/30 text-red-200\" : \"\"}`)}><div>${escape_html(trace.content)}</div> `);\n if (time()) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<div class=\"mt-1 text-right text-xs text-rc-gray-200/70\">${escape_html(time())}</div>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--></div></div> `);\n if (!suppressActionRow && (isAnalyzeEligible() || isAddTestCandidate() || isRegenerateEligible() && onRegenerate || showSeeVariants)) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<div class=\"mt-1 flex flex-wrap items-center gap-x-2 gap-y-1\">`);\n if (isAddTestCandidate()) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<button type=\"button\"${attr(\"disabled\", !isAddTestEligible() || added !== \"idle\" || testDraftOpen, true)}${attr(\"title\", !isAddTestEligible() ? \"Select an agent in the sidebar before adding a test\" : void 0)}${attr_class(`inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 transition-colors focus:outline-none focus-visible:outline-none ${!isAddTestEligible() ? \"cursor-default text-rc-gray-400\" : \"cursor-pointer text-rc-gray-400 hover:bg-rc-gray-900 hover:text-rc-gray-200\"}`)}>`);\n if (!isAddTestEligible()) {\n $$renderer3.push(\"<!--[2-->\");\n $$renderer3.push(`Select agent to add test`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n $$renderer3.push(`Add test`);\n }\n $$renderer3.push(`<!--]--></button>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n if (isAnalyzeEligible() && onAnalyze) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<button type=\"button\"${attr(\"disabled\", analyzeDisabled, true)} class=\"inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-transparent disabled:hover:text-rc-gray-400\">Analyze</button>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n if (isRegenerateEligible() && onRegenerate) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<button type=\"button\" class=\"inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none\">Regenerate</button>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n if (showSeeVariants && onSeeVariants) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<button type=\"button\" class=\"inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none\">See variants</button>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--></div>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--></div>`);\n }\n $$renderer3.push(`<!--]--></div> `);\n {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]-->`);\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n });\n}\nfunction ChatStepTrace($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let {\n trace,\n compareTrace,\n agentId,\n region = null,\n variant = null,\n promptEditProposalId = null,\n fallbackConversation = null,\n runtimeContext,\n testCreationMode\n } = $$props;\n let addStatus = \"idle\";\n let testDraftOpen = false;\n const clickGuard = createDragSelectClickGuard();\n onDestroy(clickGuard.cleanup);\n function getPromptForDiff(t) {\n if (!t) return null;\n if (typeof t.renderedPrompt === \"string\") return t.renderedPrompt;\n return null;\n }\n function commonPrefixLength(a, b) {\n if (a === b) return a.length;\n const max = Math.min(a.length, b.length);\n for (let i = 0; i < max; i++) {\n if (a.charCodeAt(i) !== b.charCodeAt(i)) return i;\n }\n return max;\n }\n function similarityPercent(current, baseline) {\n const denom = Math.max(current.length, baseline.length);\n if (denom === 0) return 100;\n const prefixLen = commonPrefixLength(current, baseline);\n return Math.floor(prefixLen / denom * 100);\n }\n function cachedPromptTokensPercent(trace2) {\n const usage = trace2.llmUsage;\n if (!usage) return null;\n if (typeof usage.promptTokens !== \"number\" || !Number.isFinite(usage.promptTokens)) return null;\n if (usage.promptTokens <= 0) return null;\n if (typeof usage.cachedPromptTokens !== \"number\" || !Number.isFinite(usage.cachedPromptTokens)) return null;\n if (usage.cachedPromptTokens < 0) return null;\n return Math.max(0, Math.min(100, Math.floor(usage.cachedPromptTokens / usage.promptTokens * 100)));\n }\n function safeJsonStringify(value) {\n const seen = /* @__PURE__ */ new WeakSet();\n try {\n return JSON.stringify(\n value,\n (_, v) => {\n if (typeof v === \"bigint\") return v.toString();\n if (v instanceof Error) {\n return { name: v.name, message: v.message, stack: v.stack };\n }\n if (typeof v === \"object\" && v !== null) {\n if (seen.has(v)) return \"[Circular]\";\n seen.add(v);\n }\n return v;\n },\n 2\n ) ?? \"\";\n } catch {\n return String(value);\n }\n }\n function formatMaybeJson(value) {\n if (value == null) return \"\";\n if (typeof value === \"string\") {\n const trimmed = value.trim();\n if (!trimmed) return \"\";\n try {\n return JSON.stringify(JSON.parse(trimmed), null, 2);\n } catch {\n return value;\n }\n }\n return safeJsonStringify(value);\n }\n function jsonPreview(value) {\n const formatted = formatMaybeJson(value);\n const lines = formatted.split(\"\\n\");\n if (lines.length <= 1) return formatted;\n const opening = lines[0]?.trim();\n const firstContentLine = lines.slice(1).find((line) => line.trim())?.trim();\n if (!opening || !firstContentLine) return formatted;\n const closing = opening === \"[\" ? \"]\" : \"}\";\n if (lines.length === 3 && lines.at(-1)?.trim() === closing) {\n return `${opening} ${firstContentLine} ${closing}`;\n }\n const nestedClosing = firstContentLine.endsWith(\"{\") ? \" }\" : firstContentLine.endsWith(\"[\") ? \" ]\" : \"\";\n return `${opening} ${firstContentLine} …${nestedClosing} ${closing}`;\n }\n function formatHHmmss(ms) {\n if (typeof ms !== \"number\" || !Number.isFinite(ms)) return null;\n const d = new Date(ms);\n if (Number.isNaN(d.getTime())) return null;\n const hh = String(d.getHours()).padStart(2, \"0\");\n const mm = String(d.getMinutes()).padStart(2, \"0\");\n const ss = String(d.getSeconds()).padStart(2, \"0\");\n return `${hh}:${mm}:${ss}`;\n }\n const time = derived(() => formatHHmmss(trace.createdAt));\n const hasError = derived(() => trace.error != null);\n const oneLine = derived(() => trace.name);\n const mainPromptSimilarityPct = derived(() => {\n if (!isMainStepName(trace.name)) return null;\n const current = getPromptForDiff(trace);\n const baseline = getPromptForDiff(compareTrace);\n if (current == null || baseline == null) return null;\n return similarityPercent(current, baseline);\n });\n const mainCachedTokensPct = derived(() => {\n if (!isMainStepName(trace.name)) return null;\n return cachedPromptTokensPercent(trace);\n });\n const CACHE_OK_THRESHOLD_PCT = 90;\n const CACHE_MISS_SIMILARITY_THRESHOLD_PCT = 90;\n const BREAK_TAG_REGEX = /<break\\b[^>]*\\/?>/i;\n const BREAK_TAG_TOOLTIP = '<break /> tag disables streaming and increases latency. If pauses are not large enough, use \"...\" instead.';\n function hasBreakTag(value) {\n return typeof value === \"string\" && BREAK_TAG_REGEX.test(value);\n }\n const mainPromptCacheLabel = derived(() => {\n if (!isMainStepName(trace.name)) return null;\n if (mainCachedTokensPct() != null) {\n const cacheMiss = mainCachedTokensPct() === 0 && mainPromptSimilarityPct() != null && mainPromptSimilarityPct() >= CACHE_MISS_SIMILARITY_THRESHOLD_PCT;\n if (cacheMiss) {\n return {\n text: \"0% tokens cached. Cache miss\",\n className: \"text-red-200\"\n };\n }\n const ok = mainCachedTokensPct() >= CACHE_OK_THRESHOLD_PCT;\n return ok ? {\n text: `${mainCachedTokensPct()}% tokens cached`,\n className: \"text-rc-gray-400\"\n } : {\n text: `${mainCachedTokensPct()}% tokens cached - move dynamic parts of prompt to the bottom`,\n className: \"text-red-200\"\n };\n }\n if (mainPromptSimilarityPct() != null) {\n const ok = mainPromptSimilarityPct() >= CACHE_OK_THRESHOLD_PCT;\n return ok ? {\n text: `${mainPromptSimilarityPct()}%`,\n className: \"text-rc-gray-400\"\n } : {\n text: `${mainPromptSimilarityPct()}% cached - move dynamic parts of prompt to the bottom`,\n className: \"text-red-200\"\n };\n }\n return null;\n });\n const breakTagLabel = derived(() => {\n if (!hasBreakTag(trace.response)) return null;\n return {\n text: \"LLM output has <break /> tags\",\n className: \"text-red-200\"\n };\n });\n const responsePreview = derived(() => jsonPreview(trace.response));\n const hasJsonResponse = derived(() => {\n if (typeof trace.response !== \"string\" || !trace.response.trim()) return false;\n try {\n const parsed = JSON.parse(trace.response);\n return typeof parsed === \"object\" && parsed !== null;\n } catch {\n return false;\n }\n });\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n $$renderer3.push(`<div class=\"flex w-full select-text items-baseline gap-2 truncate rounded-md bg-transparent px-2 py-1 text-left text-sm text-rc-gray-200 hover:bg-rc-gray-800/40\"><button type=\"button\" class=\"flex min-w-0 cursor-pointer items-baseline gap-2 truncate bg-transparent p-0 text-left text-sm text-rc-gray-200\">`);\n Icon($$renderer3, {\n name: hasError() ? \"close\" : \"checkmark\",\n width: 18,\n height: 18,\n class: hasError() ? \"self-center text-red-400\" : \"self-center text-rc-green-200\"\n });\n $$renderer3.push(`<!----> `);\n if (time()) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<span class=\"text-[13px] leading-none text-rc-gray-400\">${escape_html(time())}</span>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> <span${attr_class(clsx(hasError() ? \"text-red-200\" : \"\"))}>AI: ${escape_html(oneLine())}</span></button> `);\n if (mainPromptCacheLabel() != null) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<span${attr_class(`shrink-0 text-xs ${mainPromptCacheLabel().className}`)}><span class=\"cursor-pointer\" title=\"Show prompt-cache calc\">${escape_html(mainPromptCacheLabel().text)}</span></span>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n if (breakTagLabel() != null) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<span${attr_class(`shrink-0 text-xs ${breakTagLabel().className}`)}${attr(\"title\", BREAK_TAG_TOOLTIP)}>${escape_html(breakTagLabel().text)}</span>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--></div> `);\n if (hasJsonResponse()) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<div class=\"mb-2 ml-7 max-w-[83%]\"><button type=\"button\" class=\"block w-full cursor-pointer overflow-hidden rounded-lg border border-rc-gray-110 bg-rc-gray-800 p-3 text-left hover:bg-rc-gray-700\"><pre class=\"truncate whitespace-pre font-mono text-sm text-rc-gray-100\">${escape_html(responsePreview())}</pre></button> <div class=\"mt-1 flex items-center\"><button type=\"button\"${attr(\"disabled\", !agentId?.trim() || typeof trace.receivedContext === \"undefined\" || addStatus !== \"idle\" || testDraftOpen, true)} class=\"inline-flex items-center rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 disabled:cursor-not-allowed disabled:opacity-50\">${escape_html(\"Add test\")}</button></div></div>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]-->`);\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n });\n}\nexport {\n ChatApiCallTrace as C,\n ChatConversationalTrace as a,\n ChatStepTrace as b,\n findStringifiedConversationBefore as c,\n findMainStepTraceNear as f\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -95,7 +95,7 @@ const options = {
|
|
|
95
95
|
app: ({ head, body, assets, nonce, env }) => '<!doctype html>\n<html lang="en">\n <head>\n <meta charset="utf-8" />\n <link rel="icon" href="' + assets + '/favicon.png" />\n <meta name="viewport" content="width=device-width, initial-scale=1" />\n ' + head + '\n </head>\n <body data-sveltekit-preload-data="hover">\n <div style="display: contents">' + body + "</div>\n </body>\n</html>\n",
|
|
96
96
|
error
|
|
97
97
|
},
|
|
98
|
-
version_hash: "
|
|
98
|
+
version_hash: "uj0ejb"
|
|
99
99
|
};
|
|
100
100
|
async function get_hooks() {
|
|
101
101
|
let handle;
|
|
@@ -118,4 +118,4 @@ async function get_hooks() {
|
|
|
118
118
|
}
|
|
119
119
|
|
|
120
120
|
export { get_hooks as g, options as o, read_implementation as r, set_read_implementation as s };
|
|
121
|
-
//# sourceMappingURL=internal.js-
|
|
121
|
+
//# sourceMappingURL=internal.js-ChM9druZ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal.js-
|
|
1
|
+
{"version":3,"file":"internal.js-ChM9druZ.js","sources":["../../../../.svelte-kit/output/server/chunks/internal.js"],"sourcesContent":["import { r as root } from \"./root.js\";\nimport \"./server.js\";\nimport \"./shared-server.js\";\nlet read_implementation = null;\nfunction set_read_implementation(fn) {\n read_implementation = fn;\n}\nfunction set_manifest(_) {\n}\nconst error = ({ status, message }) => '<!doctype html>\\n<html lang=\"en\">\\n\t<head>\\n\t\t<meta charset=\"utf-8\" />\\n\t\t<title>' + message + `</title>\n\n\t\t<style>\n\t\t\tbody {\n\t\t\t\t--bg: white;\n\t\t\t\t--fg: #222;\n\t\t\t\t--divider: #ccc;\n\t\t\t\tbackground: var(--bg);\n\t\t\t\tcolor: var(--fg);\n\t\t\t\tfont-family:\n\t\t\t\t\tsystem-ui,\n\t\t\t\t\t-apple-system,\n\t\t\t\t\tBlinkMacSystemFont,\n\t\t\t\t\t'Segoe UI',\n\t\t\t\t\tRoboto,\n\t\t\t\t\tOxygen,\n\t\t\t\t\tUbuntu,\n\t\t\t\t\tCantarell,\n\t\t\t\t\t'Open Sans',\n\t\t\t\t\t'Helvetica Neue',\n\t\t\t\t\tsans-serif;\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\tjustify-content: center;\n\t\t\t\theight: 100vh;\n\t\t\t\tmargin: 0;\n\t\t\t}\n\n\t\t\t.error {\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\tmax-width: 32rem;\n\t\t\t\tmargin: 0 1rem;\n\t\t\t}\n\n\t\t\t.status {\n\t\t\t\tfont-weight: 200;\n\t\t\t\tfont-size: 3rem;\n\t\t\t\tline-height: 1;\n\t\t\t\tposition: relative;\n\t\t\t\ttop: -0.05rem;\n\t\t\t}\n\n\t\t\t.message {\n\t\t\t\tborder-left: 1px solid var(--divider);\n\t\t\t\tpadding: 0 0 0 1rem;\n\t\t\t\tmargin: 0 0 0 1rem;\n\t\t\t\tmin-height: 2.5rem;\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t}\n\n\t\t\t.message h1 {\n\t\t\t\tfont-weight: 400;\n\t\t\t\tfont-size: 1em;\n\t\t\t\tmargin: 0;\n\t\t\t}\n\n\t\t\t@media (prefers-color-scheme: dark) {\n\t\t\t\tbody {\n\t\t\t\t\t--bg: #222;\n\t\t\t\t\t--fg: #ddd;\n\t\t\t\t\t--divider: #666;\n\t\t\t\t}\n\t\t\t}\n\t\t</style>\n\t</head>\n\t<body>\n\t\t<div class=\"error\">\n\t\t\t<span class=\"status\">` + status + '</span>\\n\t\t\t<div class=\"message\">\\n\t\t\t\t<h1>' + message + \"</h1>\\n\t\t\t</div>\\n\t\t</div>\\n\t</body>\\n</html>\\n\";\nconst options = {\n app_template_contains_nonce: false,\n async: false,\n csp: { \"mode\": \"auto\", \"directives\": { \"upgrade-insecure-requests\": false, \"block-all-mixed-content\": false }, \"reportOnly\": { \"upgrade-insecure-requests\": false, \"block-all-mixed-content\": false } },\n csrf_check_origin: true,\n csrf_trusted_origins: [],\n embedded: false,\n env_public_prefix: \"PUBLIC_\",\n env_private_prefix: \"\",\n hash_routing: false,\n hooks: null,\n // added lazily, via `get_hooks`\n preload_strategy: \"modulepreload\",\n root,\n service_worker: false,\n service_worker_options: void 0,\n server_error_boundaries: false,\n templates: {\n app: ({ head, body, assets, nonce, env }) => '<!doctype html>\\n<html lang=\"en\">\\n <head>\\n <meta charset=\"utf-8\" />\\n <link rel=\"icon\" href=\"' + assets + '/favicon.png\" />\\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\\n ' + head + '\\n </head>\\n <body data-sveltekit-preload-data=\"hover\">\\n <div style=\"display: contents\">' + body + \"</div>\\n </body>\\n</html>\\n\",\n error\n },\n version_hash: \"uj0ejb\"\n};\nasync function get_hooks() {\n let handle;\n let handleFetch;\n let handleError;\n let handleValidationError;\n let init;\n let reroute;\n let transport;\n ({ reroute, transport } = await import(\"../entries/hooks.universal.js\"));\n return {\n handle,\n handleFetch,\n handleError,\n handleValidationError,\n init,\n reroute,\n transport\n };\n}\nexport {\n set_manifest as a,\n get_hooks as g,\n options as o,\n read_implementation as r,\n set_read_implementation as s\n};\n"],"names":[],"mappings":";;AAGG,IAAC,mBAAmB,GAAG;AAC1B,SAAS,uBAAuB,CAAC,EAAE,EAAE;AACrC,EAAE,mBAAmB,GAAG,EAAE;AAC1B;AAGA,MAAM,KAAK,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,mFAAmF,GAAG,OAAO,GAAG,CAAC;;AAExI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,CAAC,GAAG,MAAM,GAAG,6CAA6C,GAAG,OAAO,GAAG,iDAAiD;AAC3I,MAAC,OAAO,GAAG;AAChB,EAAE,2BAA2B,EAAE,KAAK;AACpC,EAAE,KAAK,EAAE,KAAK;AACd,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,2BAA2B,EAAE,KAAK,EAAE,yBAAyB,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,2BAA2B,EAAE,KAAK,EAAE,yBAAyB,EAAE,KAAK,EAAE,EAAE;AACzM,EAAE,iBAAiB,EAAE,IAAI;AACzB,EAAE,oBAAoB,EAAE,EAAE;AAC1B,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,iBAAiB,EAAE,SAAS;AAC9B,EAAE,kBAAkB,EAAE,EAAE;AACxB,EAAE,YAAY,EAAE,KAAK;AACrB,EAAE,KAAK,EAAE,IAAI;AACb;AACA,EAAE,gBAAgB,EAAE,eAAe;AACnC,EAAE,IAAI;AACN,EAAE,cAAc,EAAE,KAAK;AACvB,EAAE,sBAAsB,EAAE,MAAM;AAChC,EAAE,uBAAuB,EAAE,KAAK;AAChC,EAAE,SAAS,EAAE;AACb,IAAI,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,kHAAkH,GAAG,MAAM,GAAG,4GAA4G,GAAG,IAAI,GAAG,wGAAwG,GAAG,IAAI,GAAG,gCAAgC;AACvb,IAAI;AACJ,GAAG;AACH,EAAE,YAAY,EAAE;AAChB;AACA,eAAe,SAAS,GAAG;AAC3B,EAAE,IAAI,MAAM;AACZ,EAAE,IAAI,WAAW;AACjB,EAAE,IAAI,WAAW;AACjB,EAAE,IAAI,qBAAqB;AAC3B,EAAE,IAAI,IAAI;AACV,EAAE,IAAI,OAAO;AACb,EAAE,IAAI,SAAS;AACf,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,MAAM,OAAO,2CAA+B,CAAC;AACzE,EAAE,OAAO;AACT,IAAI,MAAM;AACV,IAAI,WAAW;AACf,IAAI,WAAW;AACf,IAAI,qBAAqB;AACzB,IAAI,IAAI;AACR,IAAI,OAAO;AACX,IAAI;AACJ,GAAG;AACH;;;;"}
|
|
@@ -13,6 +13,7 @@ const ConversationSchema = object({
|
|
|
13
13
|
medium: string(),
|
|
14
14
|
// 'phone' | 'whatsapp' | ...
|
|
15
15
|
agentId: string().optional(),
|
|
16
|
+
variantId: string().optional(),
|
|
16
17
|
phoneNumber: string().optional(),
|
|
17
18
|
duration: number().optional(),
|
|
18
19
|
// The voice service stores the recording object key here, not a URL.
|
|
@@ -154,6 +155,7 @@ class TelescopeClient {
|
|
|
154
155
|
searchParams.append("lastConversationId", params.lastConversationId);
|
|
155
156
|
if (params.phoneNumber) searchParams.append("phoneNumber", params.phoneNumber);
|
|
156
157
|
if (params.agentId) searchParams.append("agentId", params.agentId);
|
|
158
|
+
if (params.variantId) searchParams.append("variantId", params.variantId);
|
|
157
159
|
const res = await this.fetch("GET", `/conversations?${searchParams.toString()}`);
|
|
158
160
|
if (!res.ok) {
|
|
159
161
|
throw new Error(`Error fetching conversations: ${res.status} ${res.statusText}`);
|
|
@@ -241,4 +243,4 @@ function persistTelescopeSourceId(sourceId) {
|
|
|
241
243
|
}
|
|
242
244
|
|
|
243
245
|
export { TelescopeClient as T, getPersistedTelescopeSourceId as g, persistTelescopeSourceId as p };
|
|
244
|
-
//# sourceMappingURL=source-selection.js-
|
|
246
|
+
//# sourceMappingURL=source-selection.js-DFpObbhz.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source-selection.js-DFpObbhz.js","sources":["../../../../.svelte-kit/output/server/chunks/source-selection.js"],"sourcesContent":["import { o as object, n as number, s as string, u as union, a as array, b as any, l as literal, c as boolean, d as discriminatedUnion } from \"./schemas.js\";\nconst TranscriptSegmentSchema = object({\n text: string(),\n role: string(),\n // 'Agent' or 'User'\n time: string(),\n // ISO timestamp\n duration: number()\n});\nconst ConversationSchema = object({\n conversationId: string(),\n medium: string(),\n // 'phone' | 'whatsapp' | ...\n agentId: string().optional(),\n variantId: string().optional(),\n phoneNumber: string().optional(),\n duration: number().optional(),\n // The voice service stores the recording object key here, not a URL.\n audioUrl: string().optional(),\n transcript: union([string(), array(TranscriptSegmentSchema)]).optional(),\n createdAt: number()\n}).passthrough();\nconst PaginatedConversationsResponseSchema = object({\n limit: number(),\n items: array(ConversationSchema),\n lastConversationId: string().optional()\n});\nconst LlmUsageSchema = object({\n promptTokens: number().optional(),\n completionTokens: number().optional(),\n totalTokens: number().optional(),\n cachedPromptTokens: number().optional()\n}).passthrough();\nconst StepTraceSchema = object({\n traceType: literal(\"STEP\"),\n traceId: string().optional(),\n conversationId: string().optional(),\n scopeId: string().optional(),\n workflowId: string().optional(),\n workflowRunId: string().optional(),\n name: string().optional(),\n renderedPrompt: string().optional(),\n receivedContext: any().optional(),\n receivedPrompt: any().optional(),\n stringifiedConversation: string().optional(),\n response: string().optional(),\n model: string().optional(),\n llmUsage: LlmUsageSchema.optional(),\n createdAt: number(),\n error: any().optional()\n}).passthrough();\nconst ApiCallTraceSchema = object({\n traceType: literal(\"API_CALL\"),\n traceId: string().optional(),\n conversationId: string().optional(),\n scopeId: string().optional(),\n operationName: string(),\n method: string(),\n path: string(),\n baseUrl: string().optional(),\n request: any().optional(),\n response: any().optional(),\n status: number().optional(),\n ok: boolean().optional(),\n durationMs: number().optional(),\n createdAt: number(),\n error: any().optional()\n}).passthrough();\nconst ConversationalTraceSchema = object({\n traceType: literal(\"CONVERSATIONAL\"),\n traceId: string().optional(),\n conversationId: string().optional(),\n scopeId: string().optional(),\n eventName: string(),\n role: string(),\n medium: string(),\n content: string(),\n createdAt: number(),\n error: any().optional()\n}).passthrough();\nconst LatencyTraceSchema = object({\n traceType: literal(\"LATENCY\"),\n traceId: string().optional(),\n conversationId: string().optional(),\n seq: number(),\n atMs: number(),\n eventType: string(),\n payload: any().optional(),\n createdAt: number()\n}).passthrough();\nconst TraceSchema = discriminatedUnion(\"traceType\", [\n StepTraceSchema,\n ApiCallTraceSchema,\n ConversationalTraceSchema\n]);\nconst PaginatedTracesResponseSchema = object({\n items: array(TraceSchema),\n limit: number(),\n lastTraceId: string().optional()\n});\nconst PaginatedLatencyTracesResponseSchema = object({\n items: array(LatencyTraceSchema),\n limit: number(),\n lastTraceId: string().optional()\n});\nconst SOURCE_HEADER = \"x-bosun-telescope-source\";\nclass TelescopeClient {\n /**\n * @param fetchFn Custom fetch function (e.g., from SvelteKit's load context). Defaults to global fetch if not provided.\n */\n constructor(fetchFn = globalThis.fetch, sourceId) {\n this.fetchFn = fetchFn;\n this.sourceId = sourceId;\n }\n setSourceId(sourceId) {\n this.sourceId = sourceId;\n }\n /**\n * Get the actual URL to use (always uses proxy)\n */\n getUrl(path) {\n const cleanPath = path.startsWith(\"/\") ? path.slice(1) : path;\n const pathWithoutDev = cleanPath.replace(/^dev\\//, \"\");\n return `/traces/api/proxy/${pathWithoutDev}`;\n }\n async fetch(method = \"GET\", path, schema) {\n const url = this.getUrl(path);\n const headers = {};\n if (this.sourceId && this.sourceId.trim()) {\n headers[SOURCE_HEADER] = this.sourceId;\n }\n const response = await this.fetchFn(url, { method, headers });\n if (!response) {\n throw new Error(\"No response from server\");\n }\n if (!response.ok) {\n throw new Error(`Error fetching data: ${response.statusText}`);\n }\n if (schema) {\n return schema.parse(await response.json());\n }\n return response;\n }\n /**\n * Get a list of conversations\n * @param phoneNumber full or partial phone number\n * @param limit number of conversations to fetch\n * @param lastConversationId id of the last conversation from the previous page, for pagination\n * @returns a list of conversations\n */\n async getConversations(params = {}) {\n const searchParams = new URLSearchParams({ limit: params.limit?.toString() ?? \"10\" });\n if (params.lastConversationId)\n searchParams.append(\"lastConversationId\", params.lastConversationId);\n if (params.phoneNumber) searchParams.append(\"phoneNumber\", params.phoneNumber);\n if (params.agentId) searchParams.append(\"agentId\", params.agentId);\n if (params.variantId) searchParams.append(\"variantId\", params.variantId);\n const res = await this.fetch(\"GET\", `/conversations?${searchParams.toString()}`);\n if (!res.ok) {\n throw new Error(`Error fetching conversations: ${res.status} ${res.statusText}`);\n }\n const json = await res.json();\n if (Array.isArray(json?.items)) {\n json.items = json.items.map((it) => ({\n ...it,\n phoneNumber: typeof it?.phoneNumber === \"string\" ? it.phoneNumber : \"\"\n }));\n } else {\n json.items = [];\n }\n return PaginatedConversationsResponseSchema.parse(json);\n }\n /**\n * Get a single conversation by ID\n * @param conversationId the conversation ID\n * @returns a single conversation\n */\n async getConversation(conversationId) {\n return await this.fetch(\n \"GET\",\n `/conversations/${conversationId}`,\n ConversationSchema\n );\n }\n /**\n * Get mixed traces for a conversation (chronological timeline)\n * @param conversationId the conversation ID\n * @param limit number of traces to fetch\n * @param lastTraceId id of the last trace from the previous page, for pagination\n * @returns paginated traces\n */\n async getTraces(conversationId, limit, lastTraceId) {\n const params = new URLSearchParams();\n if (limit) params.set(\"limit\", String(limit));\n if (lastTraceId) params.set(\"lastTraceId\", lastTraceId);\n const path = `/conversations/${conversationId}/traces${params.toString() ? `?${params.toString()}` : \"\"}`;\n const res = await this.fetch(\"GET\", path);\n if (!res.ok) {\n throw new Error(`Failed to fetch traces: ${res.status} ${res.statusText}`);\n }\n return PaginatedTracesResponseSchema.parse(await res.json());\n }\n async getLatencyTraces(conversationId, limit, lastTraceId) {\n const params = new URLSearchParams();\n params.set(\"traceType\", \"LATENCY\");\n if (limit) params.set(\"limit\", String(limit));\n if (lastTraceId) params.set(\"lastTraceId\", lastTraceId);\n const path = `/conversations/${conversationId}/traces${params.toString() ? `?${params.toString()}` : \"\"}`;\n const res = await this.fetch(\"GET\", path);\n if (!res.ok) {\n throw new Error(`Failed to fetch latency traces: ${res.status} ${res.statusText}`);\n }\n return PaginatedLatencyTracesResponseSchema.parse(await res.json());\n }\n // Backwards-compatible aliases (older UI paths)\n getCalls(params = {}) {\n return this.getConversations(params);\n }\n getCall(conversationId) {\n return this.getConversation(conversationId);\n }\n getStepTraces(conversationId, limit) {\n return this.getTraces(conversationId, limit);\n }\n}\nconst TELESCOPE_SOURCE_STORAGE_KEY = \"bosun.traces.telescopeSourceId\";\nfunction getPersistedTelescopeSourceId() {\n if (typeof window === \"undefined\") return null;\n try {\n return window.localStorage.getItem(TELESCOPE_SOURCE_STORAGE_KEY);\n } catch {\n return null;\n }\n}\nfunction persistTelescopeSourceId(sourceId) {\n if (typeof window === \"undefined\") return;\n if (!sourceId || !sourceId.trim()) return;\n try {\n window.localStorage.setItem(TELESCOPE_SOURCE_STORAGE_KEY, sourceId);\n } catch {\n }\n}\nexport {\n TelescopeClient as T,\n getPersistedTelescopeSourceId as g,\n persistTelescopeSourceId as p\n};\n"],"names":[],"mappings":";;AACA,MAAM,uBAAuB,GAAG,MAAM,CAAC;AACvC,EAAE,IAAI,EAAE,MAAM,EAAE;AAChB,EAAE,IAAI,EAAE,MAAM,EAAE;AAChB;AACA,EAAE,IAAI,EAAE,MAAM,EAAE;AAChB;AACA,EAAE,QAAQ,EAAE,MAAM;AAClB,CAAC,CAAC;AACF,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAClC,EAAE,cAAc,EAAE,MAAM,EAAE;AAC1B,EAAE,MAAM,EAAE,MAAM,EAAE;AAClB;AACA,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC9B,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAChC,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAClC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC/B;AACA,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC/B,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;AAC1E,EAAE,SAAS,EAAE,MAAM;AACnB,CAAC,CAAC,CAAC,WAAW,EAAE;AAChB,MAAM,oCAAoC,GAAG,MAAM,CAAC;AACpD,EAAE,KAAK,EAAE,MAAM,EAAE;AACjB,EAAE,KAAK,EAAE,KAAK,CAAC,kBAAkB,CAAC;AAClC,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,QAAQ;AACvC,CAAC,CAAC;AACF,MAAM,cAAc,GAAG,MAAM,CAAC;AAC9B,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AACnC,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AACvC,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAClC,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,QAAQ;AACvC,CAAC,CAAC,CAAC,WAAW,EAAE;AAChB,MAAM,eAAe,GAAG,MAAM,CAAC;AAC/B,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC;AAC5B,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC9B,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AACrC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC9B,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AACjC,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AACpC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC3B,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AACrC,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE;AACnC,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE;AAClC,EAAE,uBAAuB,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC9C,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC/B,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC5B,EAAE,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE;AACrC,EAAE,SAAS,EAAE,MAAM,EAAE;AACrB,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,QAAQ;AACvB,CAAC,CAAC,CAAC,WAAW,EAAE;AAChB,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAClC,EAAE,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC;AAChC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC9B,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AACrC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC9B,EAAE,aAAa,EAAE,MAAM,EAAE;AACzB,EAAE,MAAM,EAAE,MAAM,EAAE;AAClB,EAAE,IAAI,EAAE,MAAM,EAAE;AAChB,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC9B,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE;AAC3B,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE;AAC5B,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC7B,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,QAAQ,EAAE;AAC1B,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AACjC,EAAE,SAAS,EAAE,MAAM,EAAE;AACrB,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,QAAQ;AACvB,CAAC,CAAC,CAAC,WAAW,EAAE;AAChB,MAAM,yBAAyB,GAAG,MAAM,CAAC;AACzC,EAAE,SAAS,EAAE,OAAO,CAAC,gBAAgB,CAAC;AACtC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC9B,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AACrC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC9B,EAAE,SAAS,EAAE,MAAM,EAAE;AACrB,EAAE,IAAI,EAAE,MAAM,EAAE;AAChB,EAAE,MAAM,EAAE,MAAM,EAAE;AAClB,EAAE,OAAO,EAAE,MAAM,EAAE;AACnB,EAAE,SAAS,EAAE,MAAM,EAAE;AACrB,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,QAAQ;AACvB,CAAC,CAAC,CAAC,WAAW,EAAE;AAChB,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAClC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC;AAC/B,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC9B,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE;AACrC,EAAE,GAAG,EAAE,MAAM,EAAE;AACf,EAAE,IAAI,EAAE,MAAM,EAAE;AAChB,EAAE,SAAS,EAAE,MAAM,EAAE;AACrB,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE;AAC3B,EAAE,SAAS,EAAE,MAAM;AACnB,CAAC,CAAC,CAAC,WAAW,EAAE;AAChB,MAAM,WAAW,GAAG,kBAAkB,CAAC,WAAW,EAAE;AACpD,EAAE,eAAe;AACjB,EAAE,kBAAkB;AACpB,EAAE;AACF,CAAC,CAAC;AACF,MAAM,6BAA6B,GAAG,MAAM,CAAC;AAC7C,EAAE,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC;AAC3B,EAAE,KAAK,EAAE,MAAM,EAAE;AACjB,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,QAAQ;AAChC,CAAC,CAAC;AACF,MAAM,oCAAoC,GAAG,MAAM,CAAC;AACpD,EAAE,KAAK,EAAE,KAAK,CAAC,kBAAkB,CAAC;AAClC,EAAE,KAAK,EAAE,MAAM,EAAE;AACjB,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,QAAQ;AAChC,CAAC,CAAC;AACF,MAAM,aAAa,GAAG,0BAA0B;AAChD,MAAM,eAAe,CAAC;AACtB;AACA;AACA;AACA,EAAE,WAAW,CAAC,OAAO,GAAG,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE;AACpD,IAAI,IAAI,CAAC,OAAO,GAAG,OAAO;AAC1B,IAAI,IAAI,CAAC,QAAQ,GAAG,QAAQ;AAC5B,EAAE;AACF,EAAE,WAAW,CAAC,QAAQ,EAAE;AACxB,IAAI,IAAI,CAAC,QAAQ,GAAG,QAAQ;AAC5B,EAAE;AACF;AACA;AACA;AACA,EAAE,MAAM,CAAC,IAAI,EAAE;AACf,IAAI,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI;AACjE,IAAI,MAAM,cAAc,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;AAC1D,IAAI,OAAO,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;AAChD,EAAE;AACF,EAAE,MAAM,KAAK,CAAC,MAAM,GAAG,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE;AAC5C,IAAI,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;AACjC,IAAI,MAAM,OAAO,GAAG,EAAE;AACtB,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE;AAC/C,MAAM,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,QAAQ;AAC5C,IAAI;AACJ,IAAI,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AACjE,IAAI,IAAI,CAAC,QAAQ,EAAE;AACnB,MAAM,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC;AAChD,IAAI;AACJ,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;AACtB,MAAM,MAAM,IAAI,KAAK,CAAC,CAAC,qBAAqB,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;AACpE,IAAI;AACJ,IAAI,IAAI,MAAM,EAAE;AAChB,MAAM,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;AAChD,IAAI;AACJ,IAAI,OAAO,QAAQ;AACnB,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,MAAM,gBAAgB,CAAC,MAAM,GAAG,EAAE,EAAE;AACtC,IAAI,MAAM,YAAY,GAAG,IAAI,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC;AACzF,IAAI,IAAI,MAAM,CAAC,kBAAkB;AACjC,MAAM,YAAY,CAAC,MAAM,CAAC,oBAAoB,EAAE,MAAM,CAAC,kBAAkB,CAAC;AAC1E,IAAI,IAAI,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,WAAW,CAAC;AAClF,IAAI,IAAI,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC;AACtE,IAAI,IAAI,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC;AAC5E,IAAI,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,eAAe,EAAE,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AACpF,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;AACjB,MAAM,MAAM,IAAI,KAAK,CAAC,CAAC,8BAA8B,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;AACtF,IAAI;AACJ,IAAI,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE;AACjC,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE;AACpC,MAAM,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM;AAC3C,QAAQ,GAAG,EAAE;AACb,QAAQ,WAAW,EAAE,OAAO,EAAE,EAAE,WAAW,KAAK,QAAQ,GAAG,EAAE,CAAC,WAAW,GAAG;AAC5E,OAAO,CAAC,CAAC;AACT,IAAI,CAAC,MAAM;AACX,MAAM,IAAI,CAAC,KAAK,GAAG,EAAE;AACrB,IAAI;AACJ,IAAI,OAAO,oCAAoC,CAAC,KAAK,CAAC,IAAI,CAAC;AAC3D,EAAE;AACF;AACA;AACA;AACA;AACA;AACA,EAAE,MAAM,eAAe,CAAC,cAAc,EAAE;AACxC,IAAI,OAAO,MAAM,IAAI,CAAC,KAAK;AAC3B,MAAM,KAAK;AACX,MAAM,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;AACxC,MAAM;AACN,KAAK;AACL,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,MAAM,SAAS,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE;AACtD,IAAI,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE;AACxC,IAAI,IAAI,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;AACjD,IAAI,IAAI,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,WAAW,CAAC;AAC3D,IAAI,MAAM,IAAI,GAAG,CAAC,eAAe,EAAE,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;AAC7G,IAAI,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC;AAC7C,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;AACjB,MAAM,MAAM,IAAI,KAAK,CAAC,CAAC,wBAAwB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;AAChF,IAAI;AACJ,IAAI,OAAO,6BAA6B,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;AAChE,EAAE;AACF,EAAE,MAAM,gBAAgB,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE;AAC7D,IAAI,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE;AACxC,IAAI,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC;AACtC,IAAI,IAAI,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;AACjD,IAAI,IAAI,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,WAAW,CAAC;AAC3D,IAAI,MAAM,IAAI,GAAG,CAAC,eAAe,EAAE,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;AAC7G,IAAI,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC;AAC7C,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;AACjB,MAAM,MAAM,IAAI,KAAK,CAAC,CAAC,gCAAgC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;AACxF,IAAI;AACJ,IAAI,OAAO,oCAAoC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;AACvE,EAAE;AACF;AACA,EAAE,QAAQ,CAAC,MAAM,GAAG,EAAE,EAAE;AACxB,IAAI,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC;AACxC,EAAE;AACF,EAAE,OAAO,CAAC,cAAc,EAAE;AAC1B,IAAI,OAAO,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC;AAC/C,EAAE;AACF,EAAE,aAAa,CAAC,cAAc,EAAE,KAAK,EAAE;AACvC,IAAI,OAAO,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,KAAK,CAAC;AAChD,EAAE;AACF;AACA,MAAM,4BAA4B,GAAG,gCAAgC;AACrE,SAAS,6BAA6B,GAAG;AACzC,EAAE,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,OAAO,IAAI;AAChD,EAAE,IAAI;AACN,IAAI,OAAO,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,4BAA4B,CAAC;AACpE,EAAE,CAAC,CAAC,MAAM;AACV,IAAI,OAAO,IAAI;AACf,EAAE;AACF;AACA,SAAS,wBAAwB,CAAC,QAAQ,EAAE;AAC5C,EAAE,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;AACrC,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE;AACrC,EAAE,IAAI;AACN,IAAI,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,4BAA4B,EAAE,QAAQ,CAAC;AACvE,EAAE,CAAC,CAAC,MAAM;AACV,EAAE;AACF;;;;"}
|