@anvia/studio 1.1.2 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +52 -0
- package/dist/index.d.ts +31 -4
- package/dist/index.js +19806 -626
- package/dist/index.js.map +1 -1
- package/dist/ui/assets/ArrowClockwise.es-Dn4lp0ac.js +2 -0
- package/dist/ui/assets/{ArrowClockwise.es-5vr4h4OH.js.map → ArrowClockwise.es-Dn4lp0ac.js.map} +1 -1
- package/dist/ui/assets/Check.es-BaQZo8Jl.js +2 -0
- package/dist/ui/assets/{Check.es-DgvuCllR.js.map → Check.es-BaQZo8Jl.js.map} +1 -1
- package/dist/ui/assets/Combination-Cj4UR5tg.js +42 -0
- package/dist/ui/assets/Combination-Cj4UR5tg.js.map +1 -0
- package/dist/ui/assets/Copy.es-CU5v9Pav.js +2 -0
- package/dist/ui/assets/{Copy.es-DV7tb_eC.js.map → Copy.es-CU5v9Pav.js.map} +1 -1
- package/dist/ui/assets/MagnifyingGlass.es-C72UX0bz.js +2 -0
- package/dist/ui/assets/{MagnifyingGlass.es-yzEp9c89.js.map → MagnifyingGlass.es-C72UX0bz.js.map} +1 -1
- package/dist/ui/assets/Wrench.es-Q3fLRWow.js +2 -0
- package/dist/ui/assets/{Wrench.es-rRuP3Mrh.js.map → Wrench.es-Q3fLRWow.js.map} +1 -1
- package/dist/ui/assets/agents-page-6DCSMWnZ.js +2 -0
- package/dist/ui/assets/{agents-page-ByhvVYOx.js.map → agents-page-6DCSMWnZ.js.map} +1 -1
- package/dist/ui/assets/badge-DUs0RCHV.js +2 -0
- package/dist/ui/assets/{badge-C3fkxijh.js.map → badge-DUs0RCHV.js.map} +1 -1
- package/dist/ui/assets/button-BWxpVW85.js +2 -0
- package/dist/ui/assets/{button-B_AoswCu.js.map → button-BWxpVW85.js.map} +1 -1
- package/dist/ui/assets/dialog-DauYXFnG.js +2 -0
- package/dist/ui/assets/{dialog-BfKpnby4.js.map → dialog-DauYXFnG.js.map} +1 -1
- package/dist/ui/assets/dist-BmLOFYIW.js +2 -0
- package/dist/ui/assets/{dist-Dr6EWOhl.js.map → dist-BmLOFYIW.js.map} +1 -1
- package/dist/ui/assets/dist-CHLp-Np4.js +2 -0
- package/dist/ui/assets/dist-CHLp-Np4.js.map +1 -0
- package/dist/ui/assets/dist-DD97Shn_.js +2 -0
- package/dist/ui/assets/{dist-CUv0NHNl.js.map → dist-DD97Shn_.js.map} +1 -1
- package/dist/ui/assets/graphs-page-BA0jzknS.js +2 -0
- package/dist/ui/assets/{graphs-page-vBCjLEva.js.map → graphs-page-BA0jzknS.js.map} +1 -1
- package/dist/ui/assets/icon-ksPSRwE8.js +2 -0
- package/dist/ui/assets/{icon-DyadsXLr.js.map → icon-ksPSRwE8.js.map} +1 -1
- package/dist/ui/assets/index-DDzW7QMd.css +2 -0
- package/dist/ui/assets/{index-D7rMlAzl.js → index-Dyjst4Yt.js} +5 -5
- package/dist/ui/assets/index-Dyjst4Yt.js.map +1 -0
- package/dist/ui/assets/input-DdUxz9c8.js +2 -0
- package/dist/ui/assets/{input-DuERdYTl.js.map → input-DdUxz9c8.js.map} +1 -1
- package/dist/ui/assets/knowledge-page-BVVc4w3w.js +2 -0
- package/dist/ui/assets/{knowledge-page-ZeAUXg01.js.map → knowledge-page-BVVc4w3w.js.map} +1 -1
- package/dist/ui/assets/mcps-page-BfF4B22U.js +2 -0
- package/dist/ui/assets/{mcps-page-BSkygYJM.js.map → mcps-page-BfF4B22U.js.map} +1 -1
- package/dist/ui/assets/{memory-page-B2pWZ4in.js → memory-page-BQkt2BAW.js} +2 -2
- package/dist/ui/assets/memory-page-BQkt2BAW.js.map +1 -0
- package/dist/ui/assets/pipelines-page-Xx2kQNCI.js +2 -0
- package/dist/ui/assets/pipelines-page-Xx2kQNCI.js.map +1 -0
- package/dist/ui/assets/{renderers-DRD34eUr.js → renderers-CrjMPAR2.js} +5 -5
- package/dist/ui/assets/{renderers-DRD34eUr.js.map → renderers-CrjMPAR2.js.map} +1 -1
- package/dist/ui/assets/{request-DbgMKweq.js → request-DYxy87Kp.js} +3 -3
- package/dist/ui/assets/{request-DbgMKweq.js.map → request-DYxy87Kp.js.map} +1 -1
- package/dist/ui/assets/sandboxes-page-BwidNA5G.js +2 -0
- package/dist/ui/assets/{sandboxes-page-Bo4S4ILL.js.map → sandboxes-page-BwidNA5G.js.map} +1 -1
- package/dist/ui/assets/select-C4MbvpHr.js +2 -0
- package/dist/ui/assets/{select-BdCBnmXx.js.map → select-C4MbvpHr.js.map} +1 -1
- package/dist/ui/assets/sessions-page-C3dJDjJb.js +2 -0
- package/dist/ui/assets/{sessions-page-BMnR-r_F.js.map → sessions-page-C3dJDjJb.js.map} +1 -1
- package/dist/ui/assets/status-page-92JD9Hj8.js +2 -0
- package/dist/ui/assets/{status-page-CqmMMSo2.js.map → status-page-92JD9Hj8.js.map} +1 -1
- package/dist/ui/assets/studio-CtQdOoHK.js +2 -0
- package/dist/ui/assets/{studio-DzEdCFsX.js.map → studio-CtQdOoHK.js.map} +1 -1
- package/dist/ui/assets/style-CrHHNFw2.js +8 -0
- package/dist/ui/assets/{style-FGiH1LIC.js.map → style-CrHHNFw2.js.map} +1 -1
- package/dist/ui/assets/team-playground-GcG3j0Hl.js +2 -0
- package/dist/ui/assets/team-playground-GcG3j0Hl.js.map +1 -0
- package/dist/ui/assets/textarea-gPj9-ALc.js +2 -0
- package/dist/ui/assets/{textarea-fAtCF2cf.js.map → textarea-gPj9-ALc.js.map} +1 -1
- package/dist/ui/assets/tool-runner-xLspgGPa.js +2 -0
- package/dist/ui/assets/{tool-runner-CExWna8k.js.map → tool-runner-xLspgGPa.js.map} +1 -1
- package/dist/ui/assets/tools-page-BMyx2xRT.js +2 -0
- package/dist/ui/assets/{tools-page-CdkExqNd.js.map → tools-page-BMyx2xRT.js.map} +1 -1
- package/dist/ui/assets/trace-browser-Axd-aif6.js +4 -0
- package/dist/ui/assets/{trace-browser-Co9iS9HR.js.map → trace-browser-Axd-aif6.js.map} +1 -1
- package/dist/ui/assets/transcript-item-Bl3Yl-NT.js +3 -0
- package/dist/ui/assets/{transcript-item-D9NWsnsD.js.map → transcript-item-Bl3Yl-NT.js.map} +1 -1
- package/dist/ui/assets/with-selector-BIQdjRiO.js +2 -0
- package/dist/ui/assets/{with-selector-B8ah9Wvu.js.map → with-selector-BIQdjRiO.js.map} +1 -1
- package/dist/ui/index.html +17 -17
- package/package.json +8 -8
- package/dist/ui/assets/ArrowClockwise.es-5vr4h4OH.js +0 -2
- package/dist/ui/assets/Check.es-DgvuCllR.js +0 -2
- package/dist/ui/assets/Copy.es-DV7tb_eC.js +0 -2
- package/dist/ui/assets/MagnifyingGlass.es-yzEp9c89.js +0 -2
- package/dist/ui/assets/Wrench.es-rRuP3Mrh.js +0 -2
- package/dist/ui/assets/agents-page-ByhvVYOx.js +0 -2
- package/dist/ui/assets/badge-C3fkxijh.js +0 -2
- package/dist/ui/assets/button-B_AoswCu.js +0 -2
- package/dist/ui/assets/dialog-BfKpnby4.js +0 -2
- package/dist/ui/assets/dist-CUv0NHNl.js +0 -2
- package/dist/ui/assets/dist-Dr6EWOhl.js +0 -2
- package/dist/ui/assets/es2015-DGcxtKLK.js +0 -42
- package/dist/ui/assets/es2015-DGcxtKLK.js.map +0 -1
- package/dist/ui/assets/graphs-page-vBCjLEva.js +0 -2
- package/dist/ui/assets/icon-DyadsXLr.js +0 -2
- package/dist/ui/assets/index-BGl7eOVR.css +0 -2
- package/dist/ui/assets/index-D7rMlAzl.js.map +0 -1
- package/dist/ui/assets/input-DuERdYTl.js +0 -2
- package/dist/ui/assets/knowledge-page-ZeAUXg01.js +0 -2
- package/dist/ui/assets/mcps-page-BSkygYJM.js +0 -2
- package/dist/ui/assets/memory-page-B2pWZ4in.js.map +0 -1
- package/dist/ui/assets/pipelines-page-DAqa699J.js +0 -2
- package/dist/ui/assets/pipelines-page-DAqa699J.js.map +0 -1
- package/dist/ui/assets/sandboxes-page-Bo4S4ILL.js +0 -2
- package/dist/ui/assets/select-BdCBnmXx.js +0 -2
- package/dist/ui/assets/sessions-page-BMnR-r_F.js +0 -2
- package/dist/ui/assets/status-page-CqmMMSo2.js +0 -2
- package/dist/ui/assets/studio-DzEdCFsX.js +0 -2
- package/dist/ui/assets/style-FGiH1LIC.js +0 -8
- package/dist/ui/assets/textarea-fAtCF2cf.js +0 -2
- package/dist/ui/assets/tool-runner-CExWna8k.js +0 -2
- package/dist/ui/assets/tools-page-CdkExqNd.js +0 -2
- package/dist/ui/assets/trace-browser-Co9iS9HR.js +0 -4
- package/dist/ui/assets/transcript-item-D9NWsnsD.js +0 -3
- package/dist/ui/assets/utils-DzstcfqT.js +0 -2
- package/dist/ui/assets/utils-DzstcfqT.js.map +0 -1
- package/dist/ui/assets/with-selector-B8ah9Wvu.js +0 -2
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{i as e,n as t,r as n,s as r}from"./dist-CHLp-Np4.js";import{a as i,t as a}from"./button-BWxpVW85.js";import{n as o,t as s}from"./Check.es-BaQZo8Jl.js";import{t as c}from"./Copy.es-CU5v9Pav.js";import{n as l,t as u}from"./icon-ksPSRwE8.js";import{t as d}from"./textarea-gPj9-ALc.js";import{t as f}from"./badge-DUs0RCHV.js";import{i as p,r as m}from"./renderers-CrjMPAR2.js";var h=r(e(),1),g=new Map([[`bold`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M224,196h-4V40a12,12,0,0,0-12-12H152a12,12,0,0,0-12,12V76H96A12,12,0,0,0,84,88v36H48a12,12,0,0,0-12,12v60H32a12,12,0,0,0,0,24H224a12,12,0,0,0,0-24ZM164,52h32V196H164Zm-56,48h32v96H108ZM60,148H84v48H60Z`}))],[`duotone`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M208,40V208H152V40Z`,opacity:`0.2`}),h.createElement(`path`,{d:`M224,200h-8V40a8,8,0,0,0-8-8H152a8,8,0,0,0-8,8V80H96a8,8,0,0,0-8,8v40H48a8,8,0,0,0-8,8v64H32a8,8,0,0,0,0,16H224a8,8,0,0,0,0-16ZM160,48h40V200H160ZM104,96h40V200H104ZM56,144H88v56H56Z`}))],[`fill`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M232,208a8,8,0,0,1-8,8H32a8,8,0,0,1,0-16h8V136a8,8,0,0,1,8-8H72a8,8,0,0,1,8,8v64H96V88a8,8,0,0,1,8-8h32a8,8,0,0,1,8,8V200h16V40a8,8,0,0,1,8-8h40a8,8,0,0,1,8,8V200h8A8,8,0,0,1,232,208Z`}))],[`light`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M224,202H214V40a6,6,0,0,0-6-6H152a6,6,0,0,0-6,6V82H96a6,6,0,0,0-6,6v42H48a6,6,0,0,0-6,6v66H32a6,6,0,0,0,0,12H224a6,6,0,0,0,0-12ZM158,46h44V202H158ZM102,94h44V202H102ZM54,142H90v60H54Z`}))],[`regular`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M224,200h-8V40a8,8,0,0,0-8-8H152a8,8,0,0,0-8,8V80H96a8,8,0,0,0-8,8v40H48a8,8,0,0,0-8,8v64H32a8,8,0,0,0,0,16H224a8,8,0,0,0,0-16ZM160,48h40V200H160ZM104,96h40V200H104ZM56,144H88v56H56Z`}))],[`thin`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M224,204H212V40a4,4,0,0,0-4-4H152a4,4,0,0,0-4,4V84H96a4,4,0,0,0-4,4v44H48a4,4,0,0,0-4,4v68H32a4,4,0,0,0,0,8H224a4,4,0,0,0,0-8ZM156,44h48V204H156ZM100,92h48V204H100ZM52,140H92v64H52Z`}))]]),_=new Map([[`bold`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M219.71,117.38a12,12,0,0,0-7.25-8.52L161.28,88.39l10.59-70.61a12,12,0,0,0-20.64-10l-112,120a12,12,0,0,0,4.31,19.33l51.18,20.47L84.13,238.22a12,12,0,0,0,20.64,10l112-120A12,12,0,0,0,219.71,117.38ZM113.6,203.55l6.27-41.77a12,12,0,0,0-7.41-12.92L68.74,131.37,142.4,52.45l-6.27,41.77a12,12,0,0,0,7.41,12.92l43.72,17.49Z`}))],[`duotone`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M96,240l16-80L48,136,160,16,144,96l64,24Z`,opacity:`0.2`}),h.createElement(`path`,{d:`M215.79,118.17a8,8,0,0,0-5-5.66L153.18,90.9l14.66-73.33a8,8,0,0,0-13.69-7l-112,120a8,8,0,0,0,3,13l57.63,21.61L88.16,238.43a8,8,0,0,0,13.69,7l112-120A8,8,0,0,0,215.79,118.17ZM109.37,214l10.47-52.38a8,8,0,0,0-5-9.06L62,132.71l84.62-90.66L136.16,94.43a8,8,0,0,0,5,9.06l52.8,19.8Z`}))],[`fill`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M213.85,125.46l-112,120a8,8,0,0,1-13.69-7l14.66-73.33L45.19,143.49a8,8,0,0,1-3-13l112-120a8,8,0,0,1,13.69,7L153.18,90.9l57.63,21.61a8,8,0,0,1,3,12.95Z`}))],[`light`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M213.84,118.63a6,6,0,0,0-3.73-4.25L150.88,92.17l15-75a6,6,0,0,0-10.27-5.27l-112,120a6,6,0,0,0,2.28,9.71l59.23,22.21-15,75a6,6,0,0,0,3.14,6.52A6.07,6.07,0,0,0,96,246a6,6,0,0,0,4.39-1.91l112-120A6,6,0,0,0,213.84,118.63ZM106,220.46l11.85-59.28a6,6,0,0,0-3.77-6.8l-55.6-20.85,91.46-98L138.12,94.82a6,6,0,0,0,3.77,6.8l55.6,20.85Z`}))],[`regular`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M215.79,118.17a8,8,0,0,0-5-5.66L153.18,90.9l14.66-73.33a8,8,0,0,0-13.69-7l-112,120a8,8,0,0,0,3,13l57.63,21.61L88.16,238.43a8,8,0,0,0,13.69,7l112-120A8,8,0,0,0,215.79,118.17ZM109.37,214l10.47-52.38a8,8,0,0,0-5-9.06L62,132.71l84.62-90.66L136.16,94.43a8,8,0,0,0,5,9.06l52.8,19.8Z`}))],[`thin`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M211.89,119.09a4,4,0,0,0-2.49-2.84l-60.81-22.8,15.33-76.67a4,4,0,0,0-6.84-3.51l-112,120a4,4,0,0,0-1,3.64,4,4,0,0,0,2.49,2.84l60.81,22.8L92.08,239.22a4,4,0,0,0,6.84,3.51l112-120A4,4,0,0,0,211.89,119.09ZM102.68,227l13.24-66.2a4,4,0,0,0-2.52-4.53L55,134.36,153.32,29l-13.24,66.2a4,4,0,0,0,2.52,4.53L201,121.64Z`}))]]),v=new Map([[`bold`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M200,164a36.07,36.07,0,0,0-33.94,24H72a28,28,0,0,1,0-56h96a44,44,0,0,0,0-88H72a12,12,0,0,0,0,24h96a20,20,0,0,1,0,40H72a52,52,0,0,0,0,104h94.06A36,36,0,1,0,200,164Zm0,48a12,12,0,1,1,12-12A12,12,0,0,1,200,212Z`}))],[`duotone`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M224,200a24,24,0,1,1-24-24A24,24,0,0,1,224,200Z`,opacity:`0.2`}),h.createElement(`path`,{d:`M200,168a32.06,32.06,0,0,0-31,24H72a32,32,0,0,1,0-64h96a40,40,0,0,0,0-80H72a8,8,0,0,0,0,16h96a24,24,0,0,1,0,48H72a48,48,0,0,0,0,96h97a32,32,0,1,0,31-40Zm0,48a16,16,0,1,1,16-16A16,16,0,0,1,200,216Z`}))],[`fill`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M228,200a28,28,0,0,1-54.83,8H72a48,48,0,0,1,0-96h96a24,24,0,0,0,0-48H72a8,8,0,0,1,0-16h96a40,40,0,0,1,0,80H72a32,32,0,0,0,0,64H173.17A28,28,0,0,1,228,200Z`}))],[`light`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M200,170a30.05,30.05,0,0,0-29.4,24H72a34,34,0,0,1,0-68h96a38,38,0,0,0,0-76H72a6,6,0,0,0,0,12h96a26,26,0,0,1,0,52H72a46,46,0,0,0,0,92h98.6A30,30,0,1,0,200,170Zm0,48a18,18,0,1,1,18-18A18,18,0,0,1,200,218Z`}))],[`regular`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M200,168a32.06,32.06,0,0,0-31,24H72a32,32,0,0,1,0-64h96a40,40,0,0,0,0-80H72a8,8,0,0,0,0,16h96a24,24,0,0,1,0,48H72a48,48,0,0,0,0,96h97a32,32,0,1,0,31-40Zm0,48a16,16,0,1,1,16-16A16,16,0,0,1,200,216Z`}))],[`thin`,h.createElement(h.Fragment,null,h.createElement(`path`,{d:`M200,172a28,28,0,0,0-27.71,24H72a36,36,0,0,1,0-72h96a36,36,0,0,0,0-72H72a4,4,0,0,0,0,8h96a28,28,0,0,1,0,56H72a44,44,0,0,0,0,88H172.29A28,28,0,1,0,200,172Zm0,48a20,20,0,1,1,20-20A20,20,0,0,1,200,220Z`}))]]),y=h.forwardRef((e,t)=>h.createElement(l,{ref:t,...e,weights:g}));y.displayName=`ChartBarIcon`;var b=y,x=h.forwardRef((e,t)=>h.createElement(l,{ref:t,...e,weights:_}));x.displayName=`LightningIcon`;var S=x,C=h.forwardRef((e,t)=>h.createElement(l,{ref:t,...e,weights:v}));C.displayName=`PathIcon`;var w=C,T=n();function E(e){return e.durationMs===void 0?null:(0,T.jsx)(`span`,{"aria-live":`off`,className:t(`inline-flex items-center gap-1.5 text-xs font-medium tabular-nums text-muted-foreground`,e.className),children:D(e.durationMs)})}function D(e){let t=Math.floor((Number.isFinite(e)?Math.max(0,e):0)/1e3),n=Math.floor(t/60),r=t%60;return`Finished - ${n===0?`${r}s`:`${n}m ${r}s`}`}var O=(0,h.memo)(function(e){let n=e.displayText??(`text`in e.entry?e.entry.text:``);if(e.entry.kind===`reasoning`)return(0,T.jsxs)(`article`,{className:`max-w-205 justify-self-start text-muted-foreground`,"data-entry-id":String(e.entry.entryId),"data-entry-kind":`reasoning`,children:[(0,T.jsx)(`div`,{className:`mb-1 text-xs font-semibold uppercase text-muted-foreground`,children:`Reasoning`}),(0,T.jsx)(m,{live:e.live,size:`base`,text:n})]});if(e.entry.kind===`tool`)return(0,T.jsx)(B,{entry:e.entry,live:e.live,decidingApprovals:e.decidingApprovals,answeringQuestions:e.answeringQuestions,onApprovalDecision:e.onApprovalDecision,onQuestionAnswer:e.onQuestionAnswer});let r=e.entry.role===`assistant`?e.entry.traceId:void 0,i=e.entry.role===`assistant`&&z(n),a=e.entry.role===`assistant`&&`tone`in e.entry&&e.entry.tone===`error`,o=e.entry.role===`assistant`&&`tone`in e.entry&&e.entry.tone===`pending`,s=e.entry.role===`assistant`&&!o&&e.entry.text.trim().length>0,c=e.entry.durationMs??e.metrics?.durationMs,l=s||c!==void 0;return e.entry.role===`user`?(0,T.jsxs)(`article`,{className:`grid w-fit max-w-[min(64ch,82%)] justify-items-end justify-self-end self-start text-foreground`,"data-entry-id":String(e.entry.entryId),"data-entry-kind":`message`,children:[e.entry.text.trim().length===0?null:(0,T.jsx)(`div`,{className:`rounded-lg bg-muted px-4 py-2.5`,children:(0,T.jsx)(m,{size:`base`,text:e.entry.text})}),e.entry.attachments===void 0?null:(0,T.jsx)(R,{attachments:e.entry.attachments})]}):(0,T.jsxs)(`article`,{className:t(`self-start`,i?`w-full max-w-full`:`max-w-[min(82ch,100%)]`,e.entry.role===`assistant`&&t(`justify-self-start text-foreground`,a&&`text-destructive`)),"data-entry-id":String(e.entry.entryId),"data-entry-kind":`message`,children:[o?(0,T.jsx)(L,{}):null,n.trim().length===0?null:(0,T.jsx)(m,{live:e.live,size:`base`,text:n}),l?(0,T.jsx)(k,{metrics:e.metrics,showActions:s,text:e.entry.text,traceId:r,durationMs:c,onOpenTrace:e.onOpenTrace}):null]})});function k(e){let[t,n]=(0,h.useState)(!1),r=e.traceId;async function i(){if(!(typeof navigator>`u`||navigator.clipboard===void 0))try{await navigator.clipboard.writeText(e.text),n(!0),window.setTimeout(()=>n(!1),1200)}catch{n(!1)}}return(0,T.jsxs)(`div`,{className:`mt-3 flex min-w-0 items-center gap-1.5`,children:[e.showActions?(0,T.jsx)(a,{"aria-label":t?`Response copied`:`Copy response`,className:`h-8 min-h-8 w-8 rounded-lg border border-hair bg-muted p-0 text-muted-foreground shadow-none hover:border-foreground hover:bg-transparent hover:text-foreground`,title:t?`Copied`:`Copy response`,type:`button`,variant:`ghost`,onClick:()=>void i(),children:(0,T.jsx)(u,{icon:t?s:c,"aria-hidden":`true`})}):null,e.showActions?(0,T.jsxs)(`div`,{className:`group relative`,children:[(0,T.jsx)(a,{"aria-label":`Response metrics`,className:`h-8 min-h-8 w-8 rounded-lg border border-hair bg-muted p-0 text-muted-foreground shadow-none hover:border-foreground hover:bg-transparent hover:text-foreground`,title:P(e.metrics),type:`button`,variant:`ghost`,children:(0,T.jsx)(u,{icon:b,"aria-hidden":`true`})}),(0,T.jsx)(`div`,{className:`pointer-events-none absolute left-0 top-full z-30 mt-2 hidden w-64 rounded-lg border border-hair bg-popover p-3 text-popover-foreground shadow-md group-focus-within:grid group-hover:grid`,role:`tooltip`,children:(0,T.jsx)(A,{metrics:e.metrics})})]}):null,!e.showActions||r===void 0?null:(0,T.jsx)(a,{"aria-label":`Open trace ${r}`,className:`h-8 min-h-8 w-8 rounded-lg border border-hair bg-muted p-0 text-muted-foreground shadow-none hover:border-foreground hover:bg-transparent hover:text-foreground`,title:`Open trace ${r}`,type:`button`,variant:`ghost`,onClick:()=>e.onOpenTrace(r),children:(0,T.jsx)(u,{icon:w,"aria-hidden":`true`})}),(0,T.jsx)(E,{className:e.showActions?`ml-1.5`:void 0,durationMs:e.durationMs})]})}function A(e){let t=M(e.metrics);return(0,T.jsxs)(`div`,{className:`grid min-w-0 gap-2 text-xs leading-5`,children:[(0,T.jsx)(`div`,{className:`font-semibold text-foreground`,children:`Response metrics`}),(0,T.jsxs)(`div`,{className:`grid min-w-0 gap-1`,children:[(0,T.jsx)(j,{label:`Cost`,value:`Unavailable`}),t.length===0?(0,T.jsx)(`div`,{className:`text-muted-foreground`,children:`No usage metrics yet`}):t.map(e=>(0,T.jsx)(j,{label:e.label,value:e.value},e.label))]})]})}function j(e){return(0,T.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-3`,children:[(0,T.jsx)(`span`,{className:`text-muted-foreground`,children:e.label}),(0,T.jsx)(`span`,{className:`shrink-0 font-medium tabular-nums text-foreground`,children:e.value})]})}function M(e){let t=[],n=e?.usage;return n?.totalTokens!==void 0&&t.push({label:`Total`,value:`${F(n.totalTokens)} tokens`}),n?.inputTokens!==void 0&&t.push({label:`Input`,value:F(n.inputTokens)}),n?.outputTokens!==void 0&&t.push({label:`Output`,value:F(n.outputTokens)}),N(t,`Cached`,n,`cachedInputTokens`),N(t,`Cache create`,n,`cacheCreationInputTokens`),e?.durationMs!==void 0&&t.push({label:`Duration`,value:I(e.durationMs)}),t}function N(e,t,n,r){let i=n?.[r];i!==void 0&&i>0&&e.push({label:t,value:F(i)})}function P(e){let t=M(e);return t.length===0?`Cost unavailable. No usage metrics yet.`:[`Cost unavailable`,...t.map(e=>`${e.label}: ${e.value}`)].join(`. `)}function F(e){return e.toLocaleString()}function I(e){return e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}function L(){return(0,T.jsxs)(`div`,{"aria-label":`Assistant is thinking`,"aria-live":`polite`,className:`inline-flex min-h-8 items-center gap-2 py-1 text-muted-foreground`,role:`status`,children:[(0,T.jsx)(`span`,{className:`text-base font-medium`,children:`Thinking`}),(0,T.jsxs)(`span`,{className:`flex items-center gap-1`,"aria-hidden":`true`,children:[(0,T.jsx)(`span`,{className:`size-1 animate-pulse rounded-full bg-current motion-reduce:animate-none`}),(0,T.jsx)(`span`,{className:`size-1 animate-pulse rounded-full bg-current [animation-delay:150ms] motion-reduce:animate-none`}),(0,T.jsx)(`span`,{className:`size-1 animate-pulse rounded-full bg-current [animation-delay:300ms] motion-reduce:animate-none`})]})]})}function R(e){return(0,T.jsx)(`div`,{className:`mt-2 flex max-w-full flex-wrap gap-2`,children:e.attachments.map((e,t)=>{let n=`${e.kind}-${e.name??e.mediaType??t}-${t}`;if(e.kind===`image`){let t=e.url??(e.data===void 0?void 0:`data:${e.mediaType??`image/png`};base64,${e.data}`);return(0,T.jsx)(`div`,{className:`overflow-hidden rounded-lg border border-hair bg-card`,children:t===void 0?(0,T.jsx)(`div`,{className:`grid h-20 w-24 place-items-center px-2 text-center text-xs text-muted-foreground`,children:`Image`}):(0,T.jsx)(`img`,{alt:e.name??`Attached image`,className:`h-20 w-24 object-cover`,src:t})},n)}return(0,T.jsx)(`span`,{className:`inline-flex max-w-full items-center gap-1.5 rounded-lg border border-hair bg-card px-2 py-1 text-xs font-medium text-muted-foreground`,children:(0,T.jsx)(`span`,{className:`min-w-0 truncate`,children:e.name??e.mediaType??`Document`})},n)})})}function z(e){let t=e.split(`
|
|
2
|
+
`);return t.some((e,n)=>{let r=t[n+1];return e.includes(`|`)&&r!==void 0&&/^\s*\|?\s*:?-{3,}:?\s*(\|\s*:?-{3,}:?\s*)+\|?\s*$/.test(r)})}function B(e){let[n,r]=(0,h.useState)(e.entry.approval?.status!==`pending`&&e.entry.question?.status!==`pending`),i=e.entry.approval,s=e.entry.question,c=e.entry.childEvents??[],l=e.entry.args!==void 0||e.entry.result!==void 0||c.length>0||i!==void 0||s!==void 0,d=i?.status===`pending`,f=s?.status===`pending`,m=i?.status===`cancelled`||s?.status===`cancelled`,g=i?.status===`rejected`,_=i?.status===`timed_out`,v=i!==void 0&&e.decidingApprovals.has(i.id),y=s!==void 0&&e.answeringQuestions.has(s.id),b=d?`Approval required`:f?`Input required`:m?`Cancelled`:g?`Rejected`:_?`Timed out`:e.live===!0&&e.entry.result===void 0?`Running`:void 0;return(0,T.jsxs)(`article`,{className:`w-full justify-self-start text-foreground`,"data-entry-id":String(e.entry.entryId),"data-entry-kind":`tool`,children:[(0,T.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 py-0.5`,children:[(0,T.jsxs)(a,{"aria-expanded":l?!n:void 0,"aria-label":`${n?`Expand`:`Collapse`} ${e.entry.toolName} tool call`,className:`h-auto min-h-9 min-w-0 flex-1 justify-start gap-2.5 rounded-lg border-0 bg-transparent px-1 py-0.5 text-left text-inherit shadow-none hover:bg-transparent hover:text-inherit`,type:`button`,variant:`ghost`,onClick:()=>r(e=>!e),children:[(0,T.jsx)(`span`,{className:`grid size-6 shrink-0 place-items-center rounded-md border border-hair bg-muted text-muted-foreground`,"data-tool-icon":`action`,children:(0,T.jsx)(u,{icon:S,className:`size-2.5`,weight:`fill`,"aria-hidden":`true`})}),(0,T.jsx)(`strong`,{className:`min-w-0 truncate font-mono text-sm font-medium text-foreground`,children:e.entry.toolName}),b===void 0?null:(0,T.jsxs)(`span`,{className:`ml-auto inline-flex shrink-0 items-center gap-1.5 text-sm font-normal text-muted-foreground`,children:[(0,T.jsx)(`span`,{className:t(`size-1.5 rounded-full bg-dim`,b===`Running`&&`animate-pulse bg-foreground motion-reduce:animate-none`,(m||g||_)&&`bg-destructive`),"aria-hidden":`true`}),b]}),l?(0,T.jsx)(`span`,{className:`grid size-6 shrink-0 place-items-center text-muted-foreground`,children:(0,T.jsx)(u,{icon:o,className:t(`size-4 transition-transform`,n&&`-rotate-90`),"aria-hidden":`true`})}):null]}),d&&i!==void 0?(0,T.jsx)(K,{disabled:v,onDecision:t=>e.onApprovalDecision(i.id,t)}):null]}),n||!l?null:(0,T.jsxs)(`div`,{className:`ml-8 grid gap-3 py-2`,children:[i===void 0?null:(0,T.jsx)(G,{approval:i}),s===void 0?null:(0,T.jsx)(H,{disabled:y,question:s,onAnswer:t=>e.onQuestionAnswer(s.id,t)}),s!==void 0||e.entry.args===void 0?null:(0,T.jsx)(p,{title:`Input`,value:e.entry.args}),c.length===0?null:(0,T.jsx)(V,{events:c}),s!==void 0||e.entry.result===void 0?null:(0,T.jsx)(p,{title:`Output`,value:e.entry.result})]})]})}function V(e){return(0,T.jsxs)(`div`,{className:`overflow-hidden rounded-none border border-hair bg-background`,children:[(0,T.jsx)(`div`,{className:`bg-muted px-3 py-2 text-xs font-semibold uppercase tracking-[0.18em] text-muted-foreground`,children:`Subagent activity`}),(0,T.jsx)(`div`,{className:`grid gap-3 p-3`,children:e.events.map(e=>{let t=e.agentName??e.agentId;return e.kind===`message`||e.kind===`reasoning`?(0,T.jsxs)(`div`,{className:`grid gap-1 rounded-none border border-hair bg-card p-3`,children:[(0,T.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,T.jsx)(f,{className:`border-border bg-muted px-1.5 py-0.5 text-xs uppercase text-muted-foreground`,children:e.kind===`reasoning`?`Reasoning`:`Response`}),(0,T.jsx)(`span`,{className:`min-w-0 truncate text-xs font-semibold text-muted-foreground`,children:t})]}),(0,T.jsx)(m,{size:`base`,text:e.text})]},`${e.kind}-${e.agentId}-${e.text}`):(0,T.jsxs)(`div`,{className:`grid gap-2 rounded-none border border-hair bg-card p-3`,children:[(0,T.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,T.jsx)(f,{className:`border-hair bg-muted px-1.5 py-0.5 text-xs uppercase text-foreground`,children:`Tool`}),(0,T.jsxs)(`span`,{className:`min-w-0 truncate text-xs font-semibold text-muted-foreground`,children:[t,` / `,e.toolName]})]}),e.args===void 0?null:(0,T.jsx)(p,{title:`Input`,value:e.args}),e.result===void 0?null:(0,T.jsx)(p,{title:`Output`,value:e.result})]},`${e.kind}-${e.agentId}-${e.toolName}-${e.callId??e.args??e.result??``}`)})})]})}function H(e){let[t,n]=(0,h.useState)({}),[r,i]=(0,h.useState)(0),o=e.question.status===`pending`,s=e.question.questions.length,c=e.question.questions.map(e=>{let n=t[e.id],r=n?.customValue?.trim()??``,i=r.length>0?r:n?.answer,a={questionId:e.id,answer:i?.trim()??``};return n?.choice!==void 0&&(a.choice=n.choice),r.length>0&&(a.custom=!0),a}),l=s===0?0:Math.min(r,s-1),u=e.question.questions[l],d=c[l]?.answer??``,f=c.filter(e=>e.answer.length>0).length,p=d.length>0,m=o&&c.every(e=>e.answer.length>0),g=l===0,_=l>=s-1;if(u===void 0)return(0,T.jsx)(`div`,{className:`rounded-none border border-border bg-background p-4 text-sm font-medium text-muted-foreground`,children:`No questions`});let v=()=>i(e=>Math.max(0,e-1)),y=()=>i(t=>Math.min(e.question.questions.length-1,t+1)),b=(e,t)=>n(n=>({...n,[e]:t}));return(0,T.jsxs)(`div`,{className:`grid gap-3`,children:[e.question.status===`cancelled`?(0,T.jsx)(`div`,{className:`rounded-none border border-hair bg-muted px-3 py-2.5 text-sm font-medium text-muted-foreground`,children:`Question cancelled`}):null,(0,T.jsx)(U,{disabled:e.disabled||!o,index:l,total:s,question:u,value:t[u.id],answer:e.question.answers?.find(e=>e.questionId===u.id),onChange:e=>b(u.id,e),onAdvance:_?void 0:y},u.id),o?(0,T.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-3 rounded-none bg-muted px-3 py-2`,children:[(0,T.jsxs)(`div`,{className:`min-w-0 text-xs font-semibold uppercase tracking-[0.2em] text-muted-foreground`,children:[f,`/`,s,` answered`]}),(0,T.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[g?null:(0,T.jsx)(a,{type:`button`,variant:`secondary`,onClick:v,children:`Back`}),_?(0,T.jsx)(a,{className:`h-9 min-h-9 px-4`,disabled:e.disabled||!m,type:`button`,onClick:()=>e.onAnswer(c),children:`Submit answers`}):(0,T.jsx)(a,{className:`h-9 min-h-9 px-4`,disabled:e.disabled||!p,type:`button`,onClick:y,children:`Next question`})]})]}):s>1?(0,T.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-3 rounded-none bg-muted px-3 py-2`,children:[(0,T.jsx)(`div`,{className:`min-w-0 text-xs font-semibold uppercase tracking-[0.2em] text-foreground`,children:`Answered`}),(0,T.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,T.jsx)(a,{disabled:g,type:`button`,variant:`secondary`,onClick:v,children:`Back`}),(0,T.jsx)(a,{disabled:_,type:`button`,variant:`secondary`,onClick:y,children:`Next`})]})]}):null]})}function U(e){let n=e.answer?.answer,r=W(e.value),i=n===void 0?r.length>0?`Ready`:`Waiting`:`Answered`;return(0,T.jsxs)(`section`,{className:`grid gap-4 rounded-none border border-hair bg-background p-4`,children:[(0,T.jsxs)(`div`,{className:`flex min-w-0 items-start justify-between gap-4`,children:[(0,T.jsxs)(`div`,{className:`grid min-w-0 gap-2`,children:[(0,T.jsxs)(`div`,{className:` text-xs font-semibold uppercase tracking-[0.2em] text-muted-foreground`,children:[`Question `,e.index+1,` of `,e.total]}),(0,T.jsx)(`h3`,{className:`m-0 text-base font-semibold leading-7 text-foreground [overflow-wrap:anywhere]`,children:e.question.question})]}),(0,T.jsx)(`span`,{className:t(`shrink-0 text-xs font-semibold uppercase tracking-[0.18em]`,i===`Answered`&&`text-foreground`,i===`Ready`&&`text-foreground`,i===`Waiting`&&`text-muted-foreground`),children:i})]}),n===void 0?null:(0,T.jsx)(`div`,{className:`rounded-lg border border-hair bg-muted px-3 py-2 text-sm font-medium text-foreground`,children:n}),n===void 0&&e.question.choices.length>0?(0,T.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:e.question.choices.map(n=>{let r=e.value?.choice===n.value;return(0,T.jsx)(a,{className:t(`h-8 min-h-8 px-3 text-xs`,r&&`border-foreground`),disabled:e.disabled,size:`sm`,type:`button`,variant:r?`default`:`secondary`,onClick:()=>{e.onChange({answer:n.value,choice:n.value,customValue:e.value?.customValue??``}),e.onAdvance?.()},children:n.label},n.value)})}):null,n!==void 0||e.question.choices.length>0&&!e.question.allowCustom?null:(0,T.jsx)(d,{className:`min-h-24 text-sm`,disabled:e.disabled,placeholder:`Type a custom answer`,rows:3,value:e.value?.customValue??``,onChange:t=>e.onChange({...e.value,customValue:t.currentTarget.value})})]})}function W(e){let t=e?.customValue?.trim()??``;return t.length>0?t:e?.answer?.trim()??``}function G(e){return(0,T.jsxs)(`div`,{className:`grid gap-2 rounded-none border border-hair bg-muted px-3 py-2.5`,children:[(0,T.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,T.jsx)(f,{className:t(`border-hair bg-background px-1.5 py-0.5 text-xs uppercase text-muted-foreground`,e.approval.status===`approved`&&`text-foreground`,e.approval.status===`rejected`&&`text-destructive`),children:`Approval`}),(0,T.jsx)(`div`,{className:`min-w-0`,children:(0,T.jsx)(`div`,{className:`text-sm font-medium text-foreground`,children:i(e.approval)})})]}),e.approval.reason===void 0?null:(0,T.jsx)(`div`,{className:`text-xs font-medium text-muted-foreground [overflow-wrap:anywhere]`,children:e.approval.reason})]})}function K(e){return(0,T.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,T.jsx)(a,{className:`h-8 min-h-8 border-0 bg-transparent px-3 text-sm text-muted-foreground shadow-none hover:bg-status-danger-fill hover:text-destructive`,disabled:e.disabled,size:`sm`,type:`button`,variant:`ghost`,onClick:()=>e.onDecision(!1),children:`Reject`}),(0,T.jsx)(a,{className:`h-8 min-h-8 px-3 text-sm`,disabled:e.disabled,size:`sm`,type:`button`,onClick:()=>e.onDecision(!0),children:`Approve`})]})}export{O as TranscriptItem};
|
|
3
|
+
//# sourceMappingURL=transcript-item-Bl3Yl-NT.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transcript-item-D9NWsnsD.js","names":["e","a","e","m","n","t","e","r","r","e","m"],"sources":["../../../../../node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/@phosphor-icons/react/dist/defs/ChartBar.es.js","../../../../../node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/@phosphor-icons/react/dist/defs/Lightning.es.js","../../../../../node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/@phosphor-icons/react/dist/defs/Path.es.js","../../../../../node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/@phosphor-icons/react/dist/csr/ChartBar.es.js","../../../../../node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/@phosphor-icons/react/dist/csr/Lightning.es.js","../../../../../node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/@phosphor-icons/react/dist/csr/Path.es.js","../../../src/ui/app/modules/playground/working-duration.tsx","../../../src/ui/app/modules/playground/transcript-item.tsx"],"sourcesContent":["import * as a from \"react\";\nconst e = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M224,196h-4V40a12,12,0,0,0-12-12H152a12,12,0,0,0-12,12V76H96A12,12,0,0,0,84,88v36H48a12,12,0,0,0-12,12v60H32a12,12,0,0,0,0,24H224a12,12,0,0,0,0-24ZM164,52h32V196H164Zm-56,48h32v96H108ZM60,148H84v48H60Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M208,40V208H152V40Z\", opacity: \"0.2\" }), /* @__PURE__ */ a.createElement(\"path\", { d: \"M224,200h-8V40a8,8,0,0,0-8-8H152a8,8,0,0,0-8,8V80H96a8,8,0,0,0-8,8v40H48a8,8,0,0,0-8,8v64H32a8,8,0,0,0,0,16H224a8,8,0,0,0,0-16ZM160,48h40V200H160ZM104,96h40V200H104ZM56,144H88v56H56Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M232,208a8,8,0,0,1-8,8H32a8,8,0,0,1,0-16h8V136a8,8,0,0,1,8-8H72a8,8,0,0,1,8,8v64H96V88a8,8,0,0,1,8-8h32a8,8,0,0,1,8,8V200h16V40a8,8,0,0,1,8-8h40a8,8,0,0,1,8,8V200h8A8,8,0,0,1,232,208Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M224,202H214V40a6,6,0,0,0-6-6H152a6,6,0,0,0-6,6V82H96a6,6,0,0,0-6,6v42H48a6,6,0,0,0-6,6v66H32a6,6,0,0,0,0,12H224a6,6,0,0,0,0-12ZM158,46h44V202H158ZM102,94h44V202H102ZM54,142H90v60H54Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M224,200h-8V40a8,8,0,0,0-8-8H152a8,8,0,0,0-8,8V80H96a8,8,0,0,0-8,8v40H48a8,8,0,0,0-8,8v64H32a8,8,0,0,0,0,16H224a8,8,0,0,0,0-16ZM160,48h40V200H160ZM104,96h40V200H104ZM56,144H88v56H56Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M224,204H212V40a4,4,0,0,0-4-4H152a4,4,0,0,0-4,4V84H96a4,4,0,0,0-4,4v44H48a4,4,0,0,0-4,4v68H32a4,4,0,0,0,0,8H224a4,4,0,0,0,0-8ZM156,44h48V204H156ZM100,92h48V204H100ZM52,140H92v64H52Z\" }))\n ]\n]);\nexport {\n e as default\n};\n","import * as l from \"react\";\nconst a = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ l.createElement(l.Fragment, null, /* @__PURE__ */ l.createElement(\"path\", { d: \"M219.71,117.38a12,12,0,0,0-7.25-8.52L161.28,88.39l10.59-70.61a12,12,0,0,0-20.64-10l-112,120a12,12,0,0,0,4.31,19.33l51.18,20.47L84.13,238.22a12,12,0,0,0,20.64,10l112-120A12,12,0,0,0,219.71,117.38ZM113.6,203.55l6.27-41.77a12,12,0,0,0-7.41-12.92L68.74,131.37,142.4,52.45l-6.27,41.77a12,12,0,0,0,7.41,12.92l43.72,17.49Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ l.createElement(l.Fragment, null, /* @__PURE__ */ l.createElement(\"path\", { d: \"M96,240l16-80L48,136,160,16,144,96l64,24Z\", opacity: \"0.2\" }), /* @__PURE__ */ l.createElement(\"path\", { d: \"M215.79,118.17a8,8,0,0,0-5-5.66L153.18,90.9l14.66-73.33a8,8,0,0,0-13.69-7l-112,120a8,8,0,0,0,3,13l57.63,21.61L88.16,238.43a8,8,0,0,0,13.69,7l112-120A8,8,0,0,0,215.79,118.17ZM109.37,214l10.47-52.38a8,8,0,0,0-5-9.06L62,132.71l84.62-90.66L136.16,94.43a8,8,0,0,0,5,9.06l52.8,19.8Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ l.createElement(l.Fragment, null, /* @__PURE__ */ l.createElement(\"path\", { d: \"M213.85,125.46l-112,120a8,8,0,0,1-13.69-7l14.66-73.33L45.19,143.49a8,8,0,0,1-3-13l112-120a8,8,0,0,1,13.69,7L153.18,90.9l57.63,21.61a8,8,0,0,1,3,12.95Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ l.createElement(l.Fragment, null, /* @__PURE__ */ l.createElement(\"path\", { d: \"M213.84,118.63a6,6,0,0,0-3.73-4.25L150.88,92.17l15-75a6,6,0,0,0-10.27-5.27l-112,120a6,6,0,0,0,2.28,9.71l59.23,22.21-15,75a6,6,0,0,0,3.14,6.52A6.07,6.07,0,0,0,96,246a6,6,0,0,0,4.39-1.91l112-120A6,6,0,0,0,213.84,118.63ZM106,220.46l11.85-59.28a6,6,0,0,0-3.77-6.8l-55.6-20.85,91.46-98L138.12,94.82a6,6,0,0,0,3.77,6.8l55.6,20.85Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ l.createElement(l.Fragment, null, /* @__PURE__ */ l.createElement(\"path\", { d: \"M215.79,118.17a8,8,0,0,0-5-5.66L153.18,90.9l14.66-73.33a8,8,0,0,0-13.69-7l-112,120a8,8,0,0,0,3,13l57.63,21.61L88.16,238.43a8,8,0,0,0,13.69,7l112-120A8,8,0,0,0,215.79,118.17ZM109.37,214l10.47-52.38a8,8,0,0,0-5-9.06L62,132.71l84.62-90.66L136.16,94.43a8,8,0,0,0,5,9.06l52.8,19.8Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ l.createElement(l.Fragment, null, /* @__PURE__ */ l.createElement(\"path\", { d: \"M211.89,119.09a4,4,0,0,0-2.49-2.84l-60.81-22.8,15.33-76.67a4,4,0,0,0-6.84-3.51l-112,120a4,4,0,0,0-1,3.64,4,4,0,0,0,2.49,2.84l60.81,22.8L92.08,239.22a4,4,0,0,0,6.84,3.51l112-120A4,4,0,0,0,211.89,119.09ZM102.68,227l13.24-66.2a4,4,0,0,0-2.52-4.53L55,134.36,153.32,29l-13.24,66.2a4,4,0,0,0,2.52,4.53L201,121.64Z\" }))\n ]\n]);\nexport {\n a as default\n};\n","import * as a from \"react\";\nconst e = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M200,164a36.07,36.07,0,0,0-33.94,24H72a28,28,0,0,1,0-56h96a44,44,0,0,0,0-88H72a12,12,0,0,0,0,24h96a20,20,0,0,1,0,40H72a52,52,0,0,0,0,104h94.06A36,36,0,1,0,200,164Zm0,48a12,12,0,1,1,12-12A12,12,0,0,1,200,212Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M224,200a24,24,0,1,1-24-24A24,24,0,0,1,224,200Z\", opacity: \"0.2\" }), /* @__PURE__ */ a.createElement(\"path\", { d: \"M200,168a32.06,32.06,0,0,0-31,24H72a32,32,0,0,1,0-64h96a40,40,0,0,0,0-80H72a8,8,0,0,0,0,16h96a24,24,0,0,1,0,48H72a48,48,0,0,0,0,96h97a32,32,0,1,0,31-40Zm0,48a16,16,0,1,1,16-16A16,16,0,0,1,200,216Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M228,200a28,28,0,0,1-54.83,8H72a48,48,0,0,1,0-96h96a24,24,0,0,0,0-48H72a8,8,0,0,1,0-16h96a40,40,0,0,1,0,80H72a32,32,0,0,0,0,64H173.17A28,28,0,0,1,228,200Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M200,170a30.05,30.05,0,0,0-29.4,24H72a34,34,0,0,1,0-68h96a38,38,0,0,0,0-76H72a6,6,0,0,0,0,12h96a26,26,0,0,1,0,52H72a46,46,0,0,0,0,92h98.6A30,30,0,1,0,200,170Zm0,48a18,18,0,1,1,18-18A18,18,0,0,1,200,218Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M200,168a32.06,32.06,0,0,0-31,24H72a32,32,0,0,1,0-64h96a40,40,0,0,0,0-80H72a8,8,0,0,0,0,16h96a24,24,0,0,1,0,48H72a48,48,0,0,0,0,96h97a32,32,0,1,0,31-40Zm0,48a16,16,0,1,1,16-16A16,16,0,0,1,200,216Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M200,172a28,28,0,0,0-27.71,24H72a36,36,0,0,1,0-72h96a36,36,0,0,0,0-72H72a4,4,0,0,0,0,8h96a28,28,0,0,1,0,56H72a44,44,0,0,0,0,88H172.29A28,28,0,1,0,200,172Zm0,48a20,20,0,1,1,20-20A20,20,0,0,1,200,220Z\" }))\n ]\n]);\nexport {\n e as default\n};\n","import * as r from \"react\";\nimport e from \"../lib/IconBase.es.js\";\nimport m from \"../defs/ChartBar.es.js\";\nconst a = r.forwardRef((o, t) => /* @__PURE__ */ r.createElement(e, { ref: t, ...o, weights: m }));\na.displayName = \"ChartBarIcon\";\nconst n = a;\nexport {\n n as ChartBar,\n a as ChartBarIcon\n};\n","import * as o from \"react\";\nimport e from \"../lib/IconBase.es.js\";\nimport r from \"../defs/Lightning.es.js\";\nconst t = o.forwardRef((n, i) => /* @__PURE__ */ o.createElement(e, { ref: i, ...n, weights: r }));\nt.displayName = \"LightningIcon\";\nconst c = t;\nexport {\n c as Lightning,\n t as LightningIcon\n};\n","import * as o from \"react\";\nimport r from \"../lib/IconBase.es.js\";\nimport m from \"../defs/Path.es.js\";\nconst t = o.forwardRef((a, e) => /* @__PURE__ */ o.createElement(r, { ref: e, ...a, weights: m }));\nt.displayName = \"PathIcon\";\nconst n = t;\nexport {\n n as Path,\n t as PathIcon\n};\n","import { cn } from \"../../lib/utils\";\n\nexport function WorkingDuration(props: {\n className?: string | undefined;\n durationMs?: number | undefined;\n}) {\n if (props.durationMs === undefined) {\n return null;\n }\n\n return (\n <span\n aria-live=\"off\"\n className={cn(\n \"inline-flex items-center gap-1.5 text-xs font-medium tabular-nums text-muted-foreground\",\n props.className,\n )}\n >\n {formatWorkingDuration(props.durationMs)}\n </span>\n );\n}\n\nexport function formatWorkingDuration(durationMs: number): string {\n const normalizedDurationMs = Number.isFinite(durationMs) ? Math.max(0, durationMs) : 0;\n const totalSeconds = Math.floor(normalizedDurationMs / 1_000);\n const minutes = Math.floor(totalSeconds / 60);\n const seconds = totalSeconds % 60;\n const duration = minutes === 0 ? `${seconds}s` : `${minutes}m ${seconds}s`;\n return `Finished - ${duration}`;\n}\n","import { CaretDown, ChartBar, Check, Copy, Lightning, Path } from \"@phosphor-icons/react\";\nimport { memo, useState } from \"react\";\nimport { Badge } from \"../../components/ui/badge\";\nimport { Button } from \"../../components/ui/button\";\nimport { StudioIcon } from \"../../components/ui/icon\";\nimport { Textarea } from \"../../components/ui/textarea\";\nimport { cn } from \"../../lib/utils\";\nimport { approvalLabel } from \"../shared/format\";\nimport { MarkdownText, ToolPayload } from \"../shared/renderers\";\nimport type { ToolApproval, ToolMessage, ToolQuestion, TranscriptEntry } from \"../shared/types\";\nimport type { AssistantResponseMetrics, ResponseUsageMetrics } from \"./response-metrics\";\nimport { WorkingDuration } from \"./working-duration\";\n\nexport const TranscriptItem = memo(function TranscriptItem(props: {\n entry: TranscriptEntry;\n displayText?: string | undefined;\n live?: boolean | undefined;\n metrics?: AssistantResponseMetrics | undefined;\n decidingApprovals: Set<string>;\n answeringQuestions: Set<string>;\n onApprovalDecision: (approvalId: string, approved: boolean) => void;\n onQuestionAnswer: (\n questionId: string,\n answers: Array<{ questionId: string; answer: string; choice?: string; custom?: boolean }>,\n ) => void;\n onOpenTrace: (traceId: string) => void;\n}) {\n const displayText = props.displayText ?? (\"text\" in props.entry ? props.entry.text : \"\");\n if (props.entry.kind === \"reasoning\") {\n return (\n <article\n className=\"max-w-205 justify-self-start text-muted-foreground\"\n data-entry-id={String(props.entry.entryId)}\n data-entry-kind=\"reasoning\"\n >\n <div className=\"mb-1 text-xs font-semibold uppercase text-muted-foreground\">Reasoning</div>\n <MarkdownText live={props.live} size=\"base\" text={displayText} />\n </article>\n );\n }\n\n if (props.entry.kind === \"tool\") {\n return (\n <ToolEntry\n entry={props.entry}\n live={props.live}\n decidingApprovals={props.decidingApprovals}\n answeringQuestions={props.answeringQuestions}\n onApprovalDecision={props.onApprovalDecision}\n onQuestionAnswer={props.onQuestionAnswer}\n />\n );\n }\n\n const traceId = props.entry.role === \"assistant\" ? props.entry.traceId : undefined;\n const hasTable = props.entry.role === \"assistant\" && hasMarkdownTable(displayText);\n const isError =\n props.entry.role === \"assistant\" && \"tone\" in props.entry && props.entry.tone === \"error\";\n const isPending =\n props.entry.role === \"assistant\" && \"tone\" in props.entry && props.entry.tone === \"pending\";\n const showAssistantActions =\n props.entry.role === \"assistant\" && !isPending && props.entry.text.trim().length > 0;\n const persistedDurationMs = props.entry.durationMs ?? props.metrics?.durationMs;\n const showAssistantFooter = showAssistantActions || persistedDurationMs !== undefined;\n\n if (props.entry.role === \"user\") {\n return (\n <article\n className=\"grid w-fit max-w-[min(64ch,82%)] justify-items-end justify-self-end self-start text-foreground\"\n data-entry-id={String(props.entry.entryId)}\n data-entry-kind=\"message\"\n >\n {props.entry.text.trim().length === 0 ? null : (\n <div className=\"rounded-lg bg-muted px-4 py-2.5\">\n <MarkdownText size=\"base\" text={props.entry.text} />\n </div>\n )}\n {props.entry.attachments !== undefined ? (\n <MessageAttachments attachments={props.entry.attachments} />\n ) : null}\n </article>\n );\n }\n\n return (\n <article\n className={cn(\n \"self-start\",\n hasTable ? \"w-full max-w-full\" : \"max-w-[min(82ch,100%)]\",\n props.entry.role === \"assistant\" &&\n cn(\"justify-self-start text-foreground\", isError && \"text-destructive\"),\n )}\n data-entry-id={String(props.entry.entryId)}\n data-entry-kind=\"message\"\n >\n {isPending ? <AssistantLoadingIndicator /> : null}\n {displayText.trim().length === 0 ? null : (\n <MarkdownText live={props.live} size=\"base\" text={displayText} />\n )}\n {showAssistantFooter ? (\n <AssistantResponseFooter\n metrics={props.metrics}\n showActions={showAssistantActions}\n text={props.entry.text}\n traceId={traceId}\n durationMs={persistedDurationMs}\n onOpenTrace={props.onOpenTrace}\n />\n ) : null}\n </article>\n );\n});\n\nfunction AssistantResponseFooter(props: {\n durationMs?: number | undefined;\n metrics?: AssistantResponseMetrics | undefined;\n showActions: boolean;\n text: string;\n traceId?: string | undefined;\n onOpenTrace: (traceId: string) => void;\n}) {\n const [copied, setCopied] = useState(false);\n const traceId = props.traceId;\n\n async function copyResponse() {\n if (typeof navigator === \"undefined\" || navigator.clipboard === undefined) {\n return;\n }\n try {\n await navigator.clipboard.writeText(props.text);\n setCopied(true);\n window.setTimeout(() => setCopied(false), 1200);\n } catch {\n setCopied(false);\n }\n }\n\n return (\n <div className=\"mt-3 flex min-w-0 items-center gap-1.5\">\n {props.showActions ? (\n <Button\n aria-label={copied ? \"Response copied\" : \"Copy response\"}\n className=\"h-8 min-h-8 w-8 rounded-lg border border-hair bg-muted p-0 text-muted-foreground shadow-none hover:border-foreground hover:bg-transparent hover:text-foreground\"\n title={copied ? \"Copied\" : \"Copy response\"}\n type=\"button\"\n variant=\"ghost\"\n onClick={() => void copyResponse()}\n >\n <StudioIcon icon={copied ? Check : Copy} aria-hidden=\"true\" />\n </Button>\n ) : null}\n {props.showActions ? (\n <div className=\"group relative\">\n <Button\n aria-label=\"Response metrics\"\n className=\"h-8 min-h-8 w-8 rounded-lg border border-hair bg-muted p-0 text-muted-foreground shadow-none hover:border-foreground hover:bg-transparent hover:text-foreground\"\n title={metricsTitle(props.metrics)}\n type=\"button\"\n variant=\"ghost\"\n >\n <StudioIcon icon={ChartBar} aria-hidden=\"true\" />\n </Button>\n <div\n className=\"pointer-events-none absolute left-0 top-full z-30 mt-2 hidden w-64 rounded-lg border border-hair bg-popover p-3 text-popover-foreground shadow-md group-focus-within:grid group-hover:grid\"\n role=\"tooltip\"\n >\n <ResponseMetricsTooltip metrics={props.metrics} />\n </div>\n </div>\n ) : null}\n {!props.showActions || traceId === undefined ? null : (\n <Button\n aria-label={`Open trace ${traceId}`}\n className=\"h-8 min-h-8 w-8 rounded-lg border border-hair bg-muted p-0 text-muted-foreground shadow-none hover:border-foreground hover:bg-transparent hover:text-foreground\"\n title={`Open trace ${traceId}`}\n type=\"button\"\n variant=\"ghost\"\n onClick={() => props.onOpenTrace(traceId)}\n >\n <StudioIcon icon={Path} aria-hidden=\"true\" />\n </Button>\n )}\n <WorkingDuration\n className={props.showActions ? \"ml-1.5\" : undefined}\n durationMs={props.durationMs}\n />\n </div>\n );\n}\n\nfunction ResponseMetricsTooltip(props: { metrics?: AssistantResponseMetrics | undefined }) {\n const rows = responseMetricRows(props.metrics);\n return (\n <div className=\"grid min-w-0 gap-2 text-xs leading-5\">\n <div className=\"font-semibold text-foreground\">Response metrics</div>\n <div className=\"grid min-w-0 gap-1\">\n <MetricRow label=\"Cost\" value=\"Unavailable\" />\n {rows.length === 0 ? (\n <div className=\"text-muted-foreground\">No usage metrics yet</div>\n ) : (\n rows.map((row) => <MetricRow label={row.label} value={row.value} key={row.label} />)\n )}\n </div>\n </div>\n );\n}\n\nfunction MetricRow(props: { label: string; value: string }) {\n return (\n <div className=\"flex min-w-0 items-center justify-between gap-3\">\n <span className=\"text-muted-foreground\">{props.label}</span>\n <span className=\"shrink-0 font-medium tabular-nums text-foreground\">{props.value}</span>\n </div>\n );\n}\n\nfunction responseMetricRows(metrics: AssistantResponseMetrics | undefined): Array<{\n label: string;\n value: string;\n}> {\n const rows: Array<{ label: string; value: string }> = [];\n const usage = metrics?.usage;\n if (usage?.totalTokens !== undefined) {\n rows.push({ label: \"Total\", value: `${formatMetricNumber(usage.totalTokens)} tokens` });\n }\n if (usage?.inputTokens !== undefined) {\n rows.push({ label: \"Input\", value: formatMetricNumber(usage.inputTokens) });\n }\n if (usage?.outputTokens !== undefined) {\n rows.push({ label: \"Output\", value: formatMetricNumber(usage.outputTokens) });\n }\n pushOptionalUsageRow(rows, \"Cached\", usage, \"cachedInputTokens\");\n pushOptionalUsageRow(rows, \"Cache create\", usage, \"cacheCreationInputTokens\");\n if (metrics?.durationMs !== undefined) {\n rows.push({ label: \"Duration\", value: formatResponseDuration(metrics.durationMs) });\n }\n return rows;\n}\n\nfunction pushOptionalUsageRow(\n rows: Array<{ label: string; value: string }>,\n label: string,\n usage: ResponseUsageMetrics | undefined,\n key: keyof ResponseUsageMetrics,\n) {\n const value = usage?.[key];\n if (value !== undefined && value > 0) {\n rows.push({ label, value: formatMetricNumber(value) });\n }\n}\n\nfunction metricsTitle(metrics: AssistantResponseMetrics | undefined): string {\n const rows = responseMetricRows(metrics);\n if (rows.length === 0) {\n return \"Cost unavailable. No usage metrics yet.\";\n }\n return [\"Cost unavailable\", ...rows.map((row) => `${row.label}: ${row.value}`)].join(\". \");\n}\n\nfunction formatMetricNumber(value: number): string {\n return value.toLocaleString();\n}\n\nfunction formatResponseDuration(value: number): string {\n if (value < 1000) {\n return `${value}ms`;\n }\n return `${(value / 1000).toFixed(1)}s`;\n}\n\nfunction AssistantLoadingIndicator() {\n return (\n <div\n aria-label=\"Assistant is thinking\"\n aria-live=\"polite\"\n className=\"inline-flex min-h-8 items-center gap-2 py-1 text-muted-foreground\"\n role=\"status\"\n >\n <span className=\"text-base font-medium\">Thinking</span>\n <span className=\"flex items-center gap-1\" aria-hidden=\"true\">\n <span className=\"size-1 animate-pulse rounded-full bg-current motion-reduce:animate-none\" />\n <span className=\"size-1 animate-pulse rounded-full bg-current [animation-delay:150ms] motion-reduce:animate-none\" />\n <span className=\"size-1 animate-pulse rounded-full bg-current [animation-delay:300ms] motion-reduce:animate-none\" />\n </span>\n </div>\n );\n}\n\nfunction MessageAttachments(props: {\n attachments: NonNullable<Extract<TranscriptEntry, { kind: \"message\" }>[\"attachments\"]>;\n}) {\n return (\n <div className=\"mt-2 flex max-w-full flex-wrap gap-2\">\n {props.attachments.map((attachment, index) => {\n const key = `${attachment.kind}-${attachment.name ?? attachment.mediaType ?? index}-${index}`;\n if (attachment.kind === \"image\") {\n const src =\n attachment.url ??\n (attachment.data === undefined\n ? undefined\n : `data:${attachment.mediaType ?? \"image/png\"};base64,${attachment.data}`);\n return (\n <div className=\"overflow-hidden rounded-lg border border-hair bg-card\" key={key}>\n {src === undefined ? (\n <div className=\"grid h-20 w-24 place-items-center px-2 text-center text-xs text-muted-foreground\">\n Image\n </div>\n ) : (\n <img\n alt={attachment.name ?? \"Attached image\"}\n className=\"h-20 w-24 object-cover\"\n src={src}\n />\n )}\n </div>\n );\n }\n return (\n <span\n className=\"inline-flex max-w-full items-center gap-1.5 rounded-lg border border-hair bg-card px-2 py-1 text-xs font-medium text-muted-foreground\"\n key={key}\n >\n <span className=\"min-w-0 truncate\">\n {attachment.name ?? attachment.mediaType ?? \"Document\"}\n </span>\n </span>\n );\n })}\n </div>\n );\n}\n\nfunction hasMarkdownTable(text: string): boolean {\n const lines = text.split(\"\\n\");\n return lines.some((line, index) => {\n const next = lines[index + 1];\n return (\n line.includes(\"|\") &&\n next !== undefined &&\n /^\\s*\\|?\\s*:?-{3,}:?\\s*(\\|\\s*:?-{3,}:?\\s*)+\\|?\\s*$/.test(next)\n );\n });\n}\n\nfunction ToolEntry(props: {\n entry: ToolMessage;\n live?: boolean | undefined;\n decidingApprovals: Set<string>;\n answeringQuestions: Set<string>;\n onApprovalDecision: (approvalId: string, approved: boolean) => void;\n onQuestionAnswer: (\n questionId: string,\n answers: Array<{ questionId: string; answer: string; choice?: string; custom?: boolean }>,\n ) => void;\n}) {\n const [collapsed, setCollapsed] = useState(\n props.entry.approval?.status !== \"pending\" && props.entry.question?.status !== \"pending\",\n );\n const approval = props.entry.approval;\n const question = props.entry.question;\n const childEvents = props.entry.childEvents ?? [];\n const hasPayload =\n props.entry.args !== undefined ||\n props.entry.result !== undefined ||\n childEvents.length > 0 ||\n approval !== undefined ||\n question !== undefined;\n const pendingApproval = approval?.status === \"pending\";\n const pendingQuestion = question?.status === \"pending\";\n const cancelledInteraction = approval?.status === \"cancelled\" || question?.status === \"cancelled\";\n const rejectedApproval = approval?.status === \"rejected\";\n const timedOutApproval = approval?.status === \"timed_out\";\n const deciding = approval !== undefined && props.decidingApprovals.has(approval.id);\n const answering = question !== undefined && props.answeringQuestions.has(question.id);\n const status = pendingApproval\n ? \"Approval required\"\n : pendingQuestion\n ? \"Input required\"\n : cancelledInteraction\n ? \"Cancelled\"\n : rejectedApproval\n ? \"Rejected\"\n : timedOutApproval\n ? \"Timed out\"\n : props.live === true && props.entry.result === undefined\n ? \"Running\"\n : undefined;\n\n return (\n <article\n className=\"w-full justify-self-start text-foreground\"\n data-entry-id={String(props.entry.entryId)}\n data-entry-kind=\"tool\"\n >\n <div className=\"flex min-w-0 items-center gap-2 py-0.5\">\n <Button\n aria-expanded={hasPayload ? !collapsed : undefined}\n aria-label={`${collapsed ? \"Expand\" : \"Collapse\"} ${props.entry.toolName} tool call`}\n className=\"h-auto min-h-9 min-w-0 flex-1 justify-start gap-2.5 rounded-lg border-0 bg-transparent px-1 py-0.5 text-left text-inherit shadow-none hover:bg-transparent hover:text-inherit\"\n type=\"button\"\n variant=\"ghost\"\n onClick={() => setCollapsed((current) => !current)}\n >\n <span\n className=\"grid size-6 shrink-0 place-items-center rounded-md border border-hair bg-muted text-muted-foreground\"\n data-tool-icon=\"action\"\n >\n <StudioIcon icon={Lightning} className=\"size-2.5\" weight=\"fill\" aria-hidden=\"true\" />\n </span>\n <strong className=\"min-w-0 truncate font-mono text-sm font-medium text-foreground\">\n {props.entry.toolName}\n </strong>\n {status === undefined ? null : (\n <span className=\"ml-auto inline-flex shrink-0 items-center gap-1.5 text-sm font-normal text-muted-foreground\">\n <span\n className={cn(\n \"size-1.5 rounded-full bg-dim\",\n status === \"Running\" && \"animate-pulse bg-foreground motion-reduce:animate-none\",\n (cancelledInteraction || rejectedApproval || timedOutApproval) &&\n \"bg-destructive\",\n )}\n aria-hidden=\"true\"\n />\n {status}\n </span>\n )}\n {hasPayload ? (\n <span className=\"grid size-6 shrink-0 place-items-center text-muted-foreground\">\n <StudioIcon\n icon={CaretDown}\n className={cn(\"size-4 transition-transform\", collapsed && \"-rotate-90\")}\n aria-hidden=\"true\"\n />\n </span>\n ) : null}\n </Button>\n {pendingApproval && approval !== undefined ? (\n <ToolApprovalActions\n disabled={deciding}\n onDecision={(approved) => props.onApprovalDecision(approval.id, approved)}\n />\n ) : null}\n </div>\n {collapsed || !hasPayload ? null : (\n <div className=\"ml-8 grid gap-3 py-2\">\n {approval === undefined ? null : <ToolApprovalPanel approval={approval} />}\n {question === undefined ? null : (\n <ToolQuestionPanel\n disabled={answering}\n question={question}\n onAnswer={(answers) => props.onQuestionAnswer(question.id, answers)}\n />\n )}\n {question !== undefined || props.entry.args === undefined ? null : (\n <ToolPayload title=\"Input\" value={props.entry.args} />\n )}\n {childEvents.length === 0 ? null : <ChildAgentActivity events={childEvents} />}\n {question !== undefined || props.entry.result === undefined ? null : (\n <ToolPayload title=\"Output\" value={props.entry.result} />\n )}\n </div>\n )}\n </article>\n );\n}\n\nfunction ChildAgentActivity(props: { events: NonNullable<ToolMessage[\"childEvents\"]> }) {\n return (\n <div className=\"overflow-hidden rounded-none border border-hair bg-background\">\n <div className=\"bg-muted px-3 py-2 text-xs font-semibold uppercase tracking-[0.18em] text-muted-foreground\">\n Subagent activity\n </div>\n <div className=\"grid gap-3 p-3\">\n {props.events.map((event) => {\n const agentLabel = event.agentName ?? event.agentId;\n if (event.kind === \"message\" || event.kind === \"reasoning\") {\n return (\n <div\n className=\"grid gap-1 rounded-none border border-hair bg-card p-3\"\n key={`${event.kind}-${event.agentId}-${event.text}`}\n >\n <div className=\"flex min-w-0 items-center gap-2\">\n <Badge className=\"border-border bg-muted px-1.5 py-0.5 text-xs uppercase text-muted-foreground\">\n {event.kind === \"reasoning\" ? \"Reasoning\" : \"Response\"}\n </Badge>\n <span className=\"min-w-0 truncate text-xs font-semibold text-muted-foreground\">\n {agentLabel}\n </span>\n </div>\n <MarkdownText size=\"base\" text={event.text} />\n </div>\n );\n }\n return (\n <div\n className=\"grid gap-2 rounded-none border border-hair bg-card p-3\"\n key={`${event.kind}-${event.agentId}-${event.toolName}-${event.callId ?? event.args ?? event.result ?? \"\"}`}\n >\n <div className=\"flex min-w-0 items-center gap-2\">\n <Badge className=\"border-hair bg-muted px-1.5 py-0.5 text-xs uppercase text-foreground\">\n Tool\n </Badge>\n <span className=\"min-w-0 truncate text-xs font-semibold text-muted-foreground\">\n {agentLabel} / {event.toolName}\n </span>\n </div>\n {event.args === undefined ? null : <ToolPayload title=\"Input\" value={event.args} />}\n {event.result === undefined ? null : (\n <ToolPayload title=\"Output\" value={event.result} />\n )}\n </div>\n );\n })}\n </div>\n </div>\n );\n}\n\nfunction ToolQuestionPanel(props: {\n question: ToolQuestion;\n disabled: boolean;\n onAnswer: (\n answers: Array<{ questionId: string; answer: string; choice?: string; custom?: boolean }>,\n ) => void;\n}) {\n const [values, setValues] = useState<Record<string, QuestionDraft>>({});\n const [activeQuestionIndex, setActiveQuestionIndex] = useState(0);\n const pending = props.question.status === \"pending\";\n const total = props.question.questions.length;\n\n const answers = props.question.questions.map((question) => {\n const draft = values[question.id];\n const customAnswer = draft?.customValue?.trim() ?? \"\";\n const answer = customAnswer.length > 0 ? customAnswer : draft?.answer;\n const normalized: { questionId: string; answer: string; choice?: string; custom?: boolean } = {\n questionId: question.id,\n answer: answer?.trim() ?? \"\",\n };\n if (draft?.choice !== undefined) normalized.choice = draft.choice;\n if (customAnswer.length > 0) normalized.custom = true;\n return normalized;\n });\n const activeIndex = total === 0 ? 0 : Math.min(activeQuestionIndex, total - 1);\n const activeQuestion = props.question.questions[activeIndex];\n const activeAnswer = answers[activeIndex]?.answer ?? \"\";\n const answeredCount = answers.filter((answer) => answer.answer.length > 0).length;\n const canAdvance = activeAnswer.length > 0;\n const canSubmit = pending && answers.every((answer) => answer.answer.length > 0);\n const firstQuestion = activeIndex === 0;\n const lastQuestion = activeIndex >= total - 1;\n\n if (activeQuestion === undefined) {\n return (\n <div className=\"rounded-none border border-border bg-background p-4 text-sm font-medium text-muted-foreground\">\n No questions\n </div>\n );\n }\n\n const goPrevious = () => setActiveQuestionIndex((current) => Math.max(0, current - 1));\n const goNext = () =>\n setActiveQuestionIndex((current) => Math.min(props.question.questions.length - 1, current + 1));\n const updateDraft = (questionId: string, value: QuestionDraft) =>\n setValues((current) => ({\n ...current,\n [questionId]: value,\n }));\n\n return (\n <div className=\"grid gap-3\">\n {props.question.status === \"cancelled\" ? (\n <div className=\"rounded-none border border-hair bg-muted px-3 py-2.5 text-sm font-medium text-muted-foreground\">\n Question cancelled\n </div>\n ) : null}\n <QuestionPromptControl\n key={activeQuestion.id}\n disabled={props.disabled || !pending}\n index={activeIndex}\n total={total}\n question={activeQuestion}\n value={values[activeQuestion.id]}\n answer={props.question.answers?.find((answer) => answer.questionId === activeQuestion.id)}\n onChange={(value) => updateDraft(activeQuestion.id, value)}\n onAdvance={lastQuestion ? undefined : goNext}\n />\n {pending ? (\n <div className=\"flex min-w-0 items-center justify-between gap-3 rounded-none bg-muted px-3 py-2\">\n <div className=\"min-w-0 text-xs font-semibold uppercase tracking-[0.2em] text-muted-foreground\">\n {answeredCount}/{total} answered\n </div>\n <div className=\"flex shrink-0 items-center gap-2\">\n {firstQuestion ? null : (\n <Button type=\"button\" variant=\"secondary\" onClick={goPrevious}>\n Back\n </Button>\n )}\n {lastQuestion ? (\n <Button\n className=\"h-9 min-h-9 px-4\"\n disabled={props.disabled || !canSubmit}\n type=\"button\"\n onClick={() => props.onAnswer(answers)}\n >\n Submit answers\n </Button>\n ) : (\n <Button\n className=\"h-9 min-h-9 px-4\"\n disabled={props.disabled || !canAdvance}\n type=\"button\"\n onClick={goNext}\n >\n Next question\n </Button>\n )}\n </div>\n </div>\n ) : total > 1 ? (\n <div className=\"flex min-w-0 items-center justify-between gap-3 rounded-none bg-muted px-3 py-2\">\n <div className=\"min-w-0 text-xs font-semibold uppercase tracking-[0.2em] text-foreground\">\n Answered\n </div>\n <div className=\"flex shrink-0 items-center gap-2\">\n <Button disabled={firstQuestion} type=\"button\" variant=\"secondary\" onClick={goPrevious}>\n Back\n </Button>\n <Button disabled={lastQuestion} type=\"button\" variant=\"secondary\" onClick={goNext}>\n Next\n </Button>\n </div>\n </div>\n ) : null}\n </div>\n );\n}\n\ntype QuestionDraft = {\n answer?: string;\n choice?: string;\n customValue?: string;\n};\n\nfunction QuestionPromptControl(props: {\n question: ToolQuestion[\"questions\"][number];\n value: QuestionDraft | undefined;\n answer: NonNullable<ToolQuestion[\"answers\"]>[number] | undefined;\n disabled: boolean;\n index: number;\n total: number;\n onChange: (value: QuestionDraft) => void;\n onAdvance: (() => void) | undefined;\n}) {\n const submittedAnswer = props.answer?.answer;\n const draftAnswer = questionDraftAnswer(props.value);\n const state =\n submittedAnswer !== undefined ? \"Answered\" : draftAnswer.length > 0 ? \"Ready\" : \"Waiting\";\n\n return (\n <section className=\"grid gap-4 rounded-none border border-hair bg-background p-4\">\n <div className=\"flex min-w-0 items-start justify-between gap-4\">\n <div className=\"grid min-w-0 gap-2\">\n <div className=\" text-xs font-semibold uppercase tracking-[0.2em] text-muted-foreground\">\n Question {props.index + 1} of {props.total}\n </div>\n <h3 className=\"m-0 text-base font-semibold leading-7 text-foreground [overflow-wrap:anywhere]\">\n {props.question.question}\n </h3>\n </div>\n <span\n className={cn(\n \"shrink-0 text-xs font-semibold uppercase tracking-[0.18em]\",\n state === \"Answered\" && \"text-foreground\",\n state === \"Ready\" && \"text-foreground\",\n state === \"Waiting\" && \"text-muted-foreground\",\n )}\n >\n {state}\n </span>\n </div>\n {submittedAnswer === undefined ? null : (\n <div className=\"rounded-lg border border-hair bg-muted px-3 py-2 text-sm font-medium text-foreground\">\n {submittedAnswer}\n </div>\n )}\n {submittedAnswer !== undefined ? null : props.question.choices.length > 0 ? (\n <div className=\"flex flex-wrap gap-2\">\n {props.question.choices.map((choice) => {\n const active = props.value?.choice === choice.value;\n return (\n <Button\n key={choice.value}\n className={cn(\"h-8 min-h-8 px-3 text-xs\", active && \"border-foreground\")}\n disabled={props.disabled}\n size=\"sm\"\n type=\"button\"\n variant={active ? \"default\" : \"secondary\"}\n onClick={() => {\n props.onChange({\n answer: choice.value,\n choice: choice.value,\n customValue: props.value?.customValue ?? \"\",\n });\n props.onAdvance?.();\n }}\n >\n {choice.label}\n </Button>\n );\n })}\n </div>\n ) : null}\n {submittedAnswer !== undefined ||\n (props.question.choices.length > 0 && !props.question.allowCustom) ? null : (\n <Textarea\n className=\"min-h-24 text-sm\"\n disabled={props.disabled}\n placeholder=\"Type a custom answer\"\n rows={3}\n value={props.value?.customValue ?? \"\"}\n onChange={(event) =>\n props.onChange({\n ...props.value,\n customValue: event.currentTarget.value,\n })\n }\n />\n )}\n </section>\n );\n}\n\nfunction questionDraftAnswer(value: QuestionDraft | undefined): string {\n const customAnswer = value?.customValue?.trim() ?? \"\";\n return customAnswer.length > 0 ? customAnswer : (value?.answer?.trim() ?? \"\");\n}\n\nfunction ToolApprovalPanel(props: { approval: ToolApproval }) {\n return (\n <div className=\"grid gap-2 rounded-none border border-hair bg-muted px-3 py-2.5\">\n <div className=\"flex min-w-0 items-center gap-2\">\n <Badge\n className={cn(\n \"border-hair bg-background px-1.5 py-0.5 text-xs uppercase text-muted-foreground\",\n props.approval.status === \"approved\" && \"text-foreground\",\n props.approval.status === \"rejected\" && \"text-destructive\",\n )}\n >\n Approval\n </Badge>\n <div className=\"min-w-0\">\n <div className=\"text-sm font-medium text-foreground\">{approvalLabel(props.approval)}</div>\n </div>\n </div>\n {props.approval.reason === undefined ? null : (\n <div className=\"text-xs font-medium text-muted-foreground [overflow-wrap:anywhere]\">\n {props.approval.reason}\n </div>\n )}\n </div>\n );\n}\n\nfunction ToolApprovalActions(props: {\n disabled: boolean;\n onDecision: (approved: boolean) => void;\n}) {\n return (\n <div className=\"flex shrink-0 items-center gap-1\">\n <Button\n className=\"h-8 min-h-8 border-0 bg-transparent px-3 text-sm text-muted-foreground shadow-none hover:bg-status-danger-fill hover:text-destructive\"\n disabled={props.disabled}\n size=\"sm\"\n type=\"button\"\n variant=\"ghost\"\n onClick={() => props.onDecision(false)}\n >\n Reject\n </Button>\n <Button\n className=\"h-8 min-h-8 px-3 text-sm\"\n disabled={props.disabled}\n size=\"sm\"\n type=\"button\"\n onClick={() => props.onDecision(true)}\n >\n Approve\n </Button>\n </div>\n );\n}\n"],"x_google_ignoreList":[0,1,2,3,4,5],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"transcript-item-Bl3Yl-NT.js","names":["e","a","e","m","n","t","e","r","r","e","m"],"sources":["../../../../../node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/@phosphor-icons/react/dist/defs/ChartBar.es.js","../../../../../node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/@phosphor-icons/react/dist/defs/Lightning.es.js","../../../../../node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/@phosphor-icons/react/dist/defs/Path.es.js","../../../../../node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/@phosphor-icons/react/dist/csr/ChartBar.es.js","../../../../../node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/@phosphor-icons/react/dist/csr/Lightning.es.js","../../../../../node_modules/.pnpm/@phosphor-icons+react@2.1.10_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/@phosphor-icons/react/dist/csr/Path.es.js","../../../src/ui/app/modules/playground/working-duration.tsx","../../../src/ui/app/modules/playground/transcript-item.tsx"],"sourcesContent":["import * as a from \"react\";\nconst e = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M224,196h-4V40a12,12,0,0,0-12-12H152a12,12,0,0,0-12,12V76H96A12,12,0,0,0,84,88v36H48a12,12,0,0,0-12,12v60H32a12,12,0,0,0,0,24H224a12,12,0,0,0,0-24ZM164,52h32V196H164Zm-56,48h32v96H108ZM60,148H84v48H60Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M208,40V208H152V40Z\", opacity: \"0.2\" }), /* @__PURE__ */ a.createElement(\"path\", { d: \"M224,200h-8V40a8,8,0,0,0-8-8H152a8,8,0,0,0-8,8V80H96a8,8,0,0,0-8,8v40H48a8,8,0,0,0-8,8v64H32a8,8,0,0,0,0,16H224a8,8,0,0,0,0-16ZM160,48h40V200H160ZM104,96h40V200H104ZM56,144H88v56H56Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M232,208a8,8,0,0,1-8,8H32a8,8,0,0,1,0-16h8V136a8,8,0,0,1,8-8H72a8,8,0,0,1,8,8v64H96V88a8,8,0,0,1,8-8h32a8,8,0,0,1,8,8V200h16V40a8,8,0,0,1,8-8h40a8,8,0,0,1,8,8V200h8A8,8,0,0,1,232,208Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M224,202H214V40a6,6,0,0,0-6-6H152a6,6,0,0,0-6,6V82H96a6,6,0,0,0-6,6v42H48a6,6,0,0,0-6,6v66H32a6,6,0,0,0,0,12H224a6,6,0,0,0,0-12ZM158,46h44V202H158ZM102,94h44V202H102ZM54,142H90v60H54Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M224,200h-8V40a8,8,0,0,0-8-8H152a8,8,0,0,0-8,8V80H96a8,8,0,0,0-8,8v40H48a8,8,0,0,0-8,8v64H32a8,8,0,0,0,0,16H224a8,8,0,0,0,0-16ZM160,48h40V200H160ZM104,96h40V200H104ZM56,144H88v56H56Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M224,204H212V40a4,4,0,0,0-4-4H152a4,4,0,0,0-4,4V84H96a4,4,0,0,0-4,4v44H48a4,4,0,0,0-4,4v68H32a4,4,0,0,0,0,8H224a4,4,0,0,0,0-8ZM156,44h48V204H156ZM100,92h48V204H100ZM52,140H92v64H52Z\" }))\n ]\n]);\nexport {\n e as default\n};\n","import * as l from \"react\";\nconst a = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ l.createElement(l.Fragment, null, /* @__PURE__ */ l.createElement(\"path\", { d: \"M219.71,117.38a12,12,0,0,0-7.25-8.52L161.28,88.39l10.59-70.61a12,12,0,0,0-20.64-10l-112,120a12,12,0,0,0,4.31,19.33l51.18,20.47L84.13,238.22a12,12,0,0,0,20.64,10l112-120A12,12,0,0,0,219.71,117.38ZM113.6,203.55l6.27-41.77a12,12,0,0,0-7.41-12.92L68.74,131.37,142.4,52.45l-6.27,41.77a12,12,0,0,0,7.41,12.92l43.72,17.49Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ l.createElement(l.Fragment, null, /* @__PURE__ */ l.createElement(\"path\", { d: \"M96,240l16-80L48,136,160,16,144,96l64,24Z\", opacity: \"0.2\" }), /* @__PURE__ */ l.createElement(\"path\", { d: \"M215.79,118.17a8,8,0,0,0-5-5.66L153.18,90.9l14.66-73.33a8,8,0,0,0-13.69-7l-112,120a8,8,0,0,0,3,13l57.63,21.61L88.16,238.43a8,8,0,0,0,13.69,7l112-120A8,8,0,0,0,215.79,118.17ZM109.37,214l10.47-52.38a8,8,0,0,0-5-9.06L62,132.71l84.62-90.66L136.16,94.43a8,8,0,0,0,5,9.06l52.8,19.8Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ l.createElement(l.Fragment, null, /* @__PURE__ */ l.createElement(\"path\", { d: \"M213.85,125.46l-112,120a8,8,0,0,1-13.69-7l14.66-73.33L45.19,143.49a8,8,0,0,1-3-13l112-120a8,8,0,0,1,13.69,7L153.18,90.9l57.63,21.61a8,8,0,0,1,3,12.95Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ l.createElement(l.Fragment, null, /* @__PURE__ */ l.createElement(\"path\", { d: \"M213.84,118.63a6,6,0,0,0-3.73-4.25L150.88,92.17l15-75a6,6,0,0,0-10.27-5.27l-112,120a6,6,0,0,0,2.28,9.71l59.23,22.21-15,75a6,6,0,0,0,3.14,6.52A6.07,6.07,0,0,0,96,246a6,6,0,0,0,4.39-1.91l112-120A6,6,0,0,0,213.84,118.63ZM106,220.46l11.85-59.28a6,6,0,0,0-3.77-6.8l-55.6-20.85,91.46-98L138.12,94.82a6,6,0,0,0,3.77,6.8l55.6,20.85Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ l.createElement(l.Fragment, null, /* @__PURE__ */ l.createElement(\"path\", { d: \"M215.79,118.17a8,8,0,0,0-5-5.66L153.18,90.9l14.66-73.33a8,8,0,0,0-13.69-7l-112,120a8,8,0,0,0,3,13l57.63,21.61L88.16,238.43a8,8,0,0,0,13.69,7l112-120A8,8,0,0,0,215.79,118.17ZM109.37,214l10.47-52.38a8,8,0,0,0-5-9.06L62,132.71l84.62-90.66L136.16,94.43a8,8,0,0,0,5,9.06l52.8,19.8Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ l.createElement(l.Fragment, null, /* @__PURE__ */ l.createElement(\"path\", { d: \"M211.89,119.09a4,4,0,0,0-2.49-2.84l-60.81-22.8,15.33-76.67a4,4,0,0,0-6.84-3.51l-112,120a4,4,0,0,0-1,3.64,4,4,0,0,0,2.49,2.84l60.81,22.8L92.08,239.22a4,4,0,0,0,6.84,3.51l112-120A4,4,0,0,0,211.89,119.09ZM102.68,227l13.24-66.2a4,4,0,0,0-2.52-4.53L55,134.36,153.32,29l-13.24,66.2a4,4,0,0,0,2.52,4.53L201,121.64Z\" }))\n ]\n]);\nexport {\n a as default\n};\n","import * as a from \"react\";\nconst e = /* @__PURE__ */ new Map([\n [\n \"bold\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M200,164a36.07,36.07,0,0,0-33.94,24H72a28,28,0,0,1,0-56h96a44,44,0,0,0,0-88H72a12,12,0,0,0,0,24h96a20,20,0,0,1,0,40H72a52,52,0,0,0,0,104h94.06A36,36,0,1,0,200,164Zm0,48a12,12,0,1,1,12-12A12,12,0,0,1,200,212Z\" }))\n ],\n [\n \"duotone\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M224,200a24,24,0,1,1-24-24A24,24,0,0,1,224,200Z\", opacity: \"0.2\" }), /* @__PURE__ */ a.createElement(\"path\", { d: \"M200,168a32.06,32.06,0,0,0-31,24H72a32,32,0,0,1,0-64h96a40,40,0,0,0,0-80H72a8,8,0,0,0,0,16h96a24,24,0,0,1,0,48H72a48,48,0,0,0,0,96h97a32,32,0,1,0,31-40Zm0,48a16,16,0,1,1,16-16A16,16,0,0,1,200,216Z\" }))\n ],\n [\n \"fill\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M228,200a28,28,0,0,1-54.83,8H72a48,48,0,0,1,0-96h96a24,24,0,0,0,0-48H72a8,8,0,0,1,0-16h96a40,40,0,0,1,0,80H72a32,32,0,0,0,0,64H173.17A28,28,0,0,1,228,200Z\" }))\n ],\n [\n \"light\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M200,170a30.05,30.05,0,0,0-29.4,24H72a34,34,0,0,1,0-68h96a38,38,0,0,0,0-76H72a6,6,0,0,0,0,12h96a26,26,0,0,1,0,52H72a46,46,0,0,0,0,92h98.6A30,30,0,1,0,200,170Zm0,48a18,18,0,1,1,18-18A18,18,0,0,1,200,218Z\" }))\n ],\n [\n \"regular\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M200,168a32.06,32.06,0,0,0-31,24H72a32,32,0,0,1,0-64h96a40,40,0,0,0,0-80H72a8,8,0,0,0,0,16h96a24,24,0,0,1,0,48H72a48,48,0,0,0,0,96h97a32,32,0,1,0,31-40Zm0,48a16,16,0,1,1,16-16A16,16,0,0,1,200,216Z\" }))\n ],\n [\n \"thin\",\n /* @__PURE__ */ a.createElement(a.Fragment, null, /* @__PURE__ */ a.createElement(\"path\", { d: \"M200,172a28,28,0,0,0-27.71,24H72a36,36,0,0,1,0-72h96a36,36,0,0,0,0-72H72a4,4,0,0,0,0,8h96a28,28,0,0,1,0,56H72a44,44,0,0,0,0,88H172.29A28,28,0,1,0,200,172Zm0,48a20,20,0,1,1,20-20A20,20,0,0,1,200,220Z\" }))\n ]\n]);\nexport {\n e as default\n};\n","import * as r from \"react\";\nimport e from \"../lib/IconBase.es.js\";\nimport m from \"../defs/ChartBar.es.js\";\nconst a = r.forwardRef((o, t) => /* @__PURE__ */ r.createElement(e, { ref: t, ...o, weights: m }));\na.displayName = \"ChartBarIcon\";\nconst n = a;\nexport {\n n as ChartBar,\n a as ChartBarIcon\n};\n","import * as o from \"react\";\nimport e from \"../lib/IconBase.es.js\";\nimport r from \"../defs/Lightning.es.js\";\nconst t = o.forwardRef((n, i) => /* @__PURE__ */ o.createElement(e, { ref: i, ...n, weights: r }));\nt.displayName = \"LightningIcon\";\nconst c = t;\nexport {\n c as Lightning,\n t as LightningIcon\n};\n","import * as o from \"react\";\nimport r from \"../lib/IconBase.es.js\";\nimport m from \"../defs/Path.es.js\";\nconst t = o.forwardRef((a, e) => /* @__PURE__ */ o.createElement(r, { ref: e, ...a, weights: m }));\nt.displayName = \"PathIcon\";\nconst n = t;\nexport {\n n as Path,\n t as PathIcon\n};\n","import { cn } from \"../../lib/utils\";\n\nexport function WorkingDuration(props: {\n className?: string | undefined;\n durationMs?: number | undefined;\n}) {\n if (props.durationMs === undefined) {\n return null;\n }\n\n return (\n <span\n aria-live=\"off\"\n className={cn(\n \"inline-flex items-center gap-1.5 text-xs font-medium tabular-nums text-muted-foreground\",\n props.className,\n )}\n >\n {formatWorkingDuration(props.durationMs)}\n </span>\n );\n}\n\nexport function formatWorkingDuration(durationMs: number): string {\n const normalizedDurationMs = Number.isFinite(durationMs) ? Math.max(0, durationMs) : 0;\n const totalSeconds = Math.floor(normalizedDurationMs / 1_000);\n const minutes = Math.floor(totalSeconds / 60);\n const seconds = totalSeconds % 60;\n const duration = minutes === 0 ? `${seconds}s` : `${minutes}m ${seconds}s`;\n return `Finished - ${duration}`;\n}\n","import { CaretDown, ChartBar, Check, Copy, Lightning, Path } from \"@phosphor-icons/react\";\nimport { memo, useState } from \"react\";\nimport { Badge } from \"../../components/ui/badge\";\nimport { Button } from \"../../components/ui/button\";\nimport { StudioIcon } from \"../../components/ui/icon\";\nimport { Textarea } from \"../../components/ui/textarea\";\nimport { cn } from \"../../lib/utils\";\nimport { approvalLabel } from \"../shared/format\";\nimport { MarkdownText, ToolPayload } from \"../shared/renderers\";\nimport type { ToolApproval, ToolMessage, ToolQuestion, TranscriptEntry } from \"../shared/types\";\nimport type { AssistantResponseMetrics, ResponseUsageMetrics } from \"./response-metrics\";\nimport { WorkingDuration } from \"./working-duration\";\n\nexport const TranscriptItem = memo(function TranscriptItem(props: {\n entry: TranscriptEntry;\n displayText?: string | undefined;\n live?: boolean | undefined;\n metrics?: AssistantResponseMetrics | undefined;\n decidingApprovals: Set<string>;\n answeringQuestions: Set<string>;\n onApprovalDecision: (approvalId: string, approved: boolean) => void;\n onQuestionAnswer: (\n questionId: string,\n answers: Array<{ questionId: string; answer: string; choice?: string; custom?: boolean }>,\n ) => void;\n onOpenTrace: (traceId: string) => void;\n}) {\n const displayText = props.displayText ?? (\"text\" in props.entry ? props.entry.text : \"\");\n if (props.entry.kind === \"reasoning\") {\n return (\n <article\n className=\"max-w-205 justify-self-start text-muted-foreground\"\n data-entry-id={String(props.entry.entryId)}\n data-entry-kind=\"reasoning\"\n >\n <div className=\"mb-1 text-xs font-semibold uppercase text-muted-foreground\">Reasoning</div>\n <MarkdownText live={props.live} size=\"base\" text={displayText} />\n </article>\n );\n }\n\n if (props.entry.kind === \"tool\") {\n return (\n <ToolEntry\n entry={props.entry}\n live={props.live}\n decidingApprovals={props.decidingApprovals}\n answeringQuestions={props.answeringQuestions}\n onApprovalDecision={props.onApprovalDecision}\n onQuestionAnswer={props.onQuestionAnswer}\n />\n );\n }\n\n const traceId = props.entry.role === \"assistant\" ? props.entry.traceId : undefined;\n const hasTable = props.entry.role === \"assistant\" && hasMarkdownTable(displayText);\n const isError =\n props.entry.role === \"assistant\" && \"tone\" in props.entry && props.entry.tone === \"error\";\n const isPending =\n props.entry.role === \"assistant\" && \"tone\" in props.entry && props.entry.tone === \"pending\";\n const showAssistantActions =\n props.entry.role === \"assistant\" && !isPending && props.entry.text.trim().length > 0;\n const persistedDurationMs = props.entry.durationMs ?? props.metrics?.durationMs;\n const showAssistantFooter = showAssistantActions || persistedDurationMs !== undefined;\n\n if (props.entry.role === \"user\") {\n return (\n <article\n className=\"grid w-fit max-w-[min(64ch,82%)] justify-items-end justify-self-end self-start text-foreground\"\n data-entry-id={String(props.entry.entryId)}\n data-entry-kind=\"message\"\n >\n {props.entry.text.trim().length === 0 ? null : (\n <div className=\"rounded-lg bg-muted px-4 py-2.5\">\n <MarkdownText size=\"base\" text={props.entry.text} />\n </div>\n )}\n {props.entry.attachments !== undefined ? (\n <MessageAttachments attachments={props.entry.attachments} />\n ) : null}\n </article>\n );\n }\n\n return (\n <article\n className={cn(\n \"self-start\",\n hasTable ? \"w-full max-w-full\" : \"max-w-[min(82ch,100%)]\",\n props.entry.role === \"assistant\" &&\n cn(\"justify-self-start text-foreground\", isError && \"text-destructive\"),\n )}\n data-entry-id={String(props.entry.entryId)}\n data-entry-kind=\"message\"\n >\n {isPending ? <AssistantLoadingIndicator /> : null}\n {displayText.trim().length === 0 ? null : (\n <MarkdownText live={props.live} size=\"base\" text={displayText} />\n )}\n {showAssistantFooter ? (\n <AssistantResponseFooter\n metrics={props.metrics}\n showActions={showAssistantActions}\n text={props.entry.text}\n traceId={traceId}\n durationMs={persistedDurationMs}\n onOpenTrace={props.onOpenTrace}\n />\n ) : null}\n </article>\n );\n});\n\nfunction AssistantResponseFooter(props: {\n durationMs?: number | undefined;\n metrics?: AssistantResponseMetrics | undefined;\n showActions: boolean;\n text: string;\n traceId?: string | undefined;\n onOpenTrace: (traceId: string) => void;\n}) {\n const [copied, setCopied] = useState(false);\n const traceId = props.traceId;\n\n async function copyResponse() {\n if (typeof navigator === \"undefined\" || navigator.clipboard === undefined) {\n return;\n }\n try {\n await navigator.clipboard.writeText(props.text);\n setCopied(true);\n window.setTimeout(() => setCopied(false), 1200);\n } catch {\n setCopied(false);\n }\n }\n\n return (\n <div className=\"mt-3 flex min-w-0 items-center gap-1.5\">\n {props.showActions ? (\n <Button\n aria-label={copied ? \"Response copied\" : \"Copy response\"}\n className=\"h-8 min-h-8 w-8 rounded-lg border border-hair bg-muted p-0 text-muted-foreground shadow-none hover:border-foreground hover:bg-transparent hover:text-foreground\"\n title={copied ? \"Copied\" : \"Copy response\"}\n type=\"button\"\n variant=\"ghost\"\n onClick={() => void copyResponse()}\n >\n <StudioIcon icon={copied ? Check : Copy} aria-hidden=\"true\" />\n </Button>\n ) : null}\n {props.showActions ? (\n <div className=\"group relative\">\n <Button\n aria-label=\"Response metrics\"\n className=\"h-8 min-h-8 w-8 rounded-lg border border-hair bg-muted p-0 text-muted-foreground shadow-none hover:border-foreground hover:bg-transparent hover:text-foreground\"\n title={metricsTitle(props.metrics)}\n type=\"button\"\n variant=\"ghost\"\n >\n <StudioIcon icon={ChartBar} aria-hidden=\"true\" />\n </Button>\n <div\n className=\"pointer-events-none absolute left-0 top-full z-30 mt-2 hidden w-64 rounded-lg border border-hair bg-popover p-3 text-popover-foreground shadow-md group-focus-within:grid group-hover:grid\"\n role=\"tooltip\"\n >\n <ResponseMetricsTooltip metrics={props.metrics} />\n </div>\n </div>\n ) : null}\n {!props.showActions || traceId === undefined ? null : (\n <Button\n aria-label={`Open trace ${traceId}`}\n className=\"h-8 min-h-8 w-8 rounded-lg border border-hair bg-muted p-0 text-muted-foreground shadow-none hover:border-foreground hover:bg-transparent hover:text-foreground\"\n title={`Open trace ${traceId}`}\n type=\"button\"\n variant=\"ghost\"\n onClick={() => props.onOpenTrace(traceId)}\n >\n <StudioIcon icon={Path} aria-hidden=\"true\" />\n </Button>\n )}\n <WorkingDuration\n className={props.showActions ? \"ml-1.5\" : undefined}\n durationMs={props.durationMs}\n />\n </div>\n );\n}\n\nfunction ResponseMetricsTooltip(props: { metrics?: AssistantResponseMetrics | undefined }) {\n const rows = responseMetricRows(props.metrics);\n return (\n <div className=\"grid min-w-0 gap-2 text-xs leading-5\">\n <div className=\"font-semibold text-foreground\">Response metrics</div>\n <div className=\"grid min-w-0 gap-1\">\n <MetricRow label=\"Cost\" value=\"Unavailable\" />\n {rows.length === 0 ? (\n <div className=\"text-muted-foreground\">No usage metrics yet</div>\n ) : (\n rows.map((row) => <MetricRow label={row.label} value={row.value} key={row.label} />)\n )}\n </div>\n </div>\n );\n}\n\nfunction MetricRow(props: { label: string; value: string }) {\n return (\n <div className=\"flex min-w-0 items-center justify-between gap-3\">\n <span className=\"text-muted-foreground\">{props.label}</span>\n <span className=\"shrink-0 font-medium tabular-nums text-foreground\">{props.value}</span>\n </div>\n );\n}\n\nfunction responseMetricRows(metrics: AssistantResponseMetrics | undefined): Array<{\n label: string;\n value: string;\n}> {\n const rows: Array<{ label: string; value: string }> = [];\n const usage = metrics?.usage;\n if (usage?.totalTokens !== undefined) {\n rows.push({ label: \"Total\", value: `${formatMetricNumber(usage.totalTokens)} tokens` });\n }\n if (usage?.inputTokens !== undefined) {\n rows.push({ label: \"Input\", value: formatMetricNumber(usage.inputTokens) });\n }\n if (usage?.outputTokens !== undefined) {\n rows.push({ label: \"Output\", value: formatMetricNumber(usage.outputTokens) });\n }\n pushOptionalUsageRow(rows, \"Cached\", usage, \"cachedInputTokens\");\n pushOptionalUsageRow(rows, \"Cache create\", usage, \"cacheCreationInputTokens\");\n if (metrics?.durationMs !== undefined) {\n rows.push({ label: \"Duration\", value: formatResponseDuration(metrics.durationMs) });\n }\n return rows;\n}\n\nfunction pushOptionalUsageRow(\n rows: Array<{ label: string; value: string }>,\n label: string,\n usage: ResponseUsageMetrics | undefined,\n key: keyof ResponseUsageMetrics,\n) {\n const value = usage?.[key];\n if (value !== undefined && value > 0) {\n rows.push({ label, value: formatMetricNumber(value) });\n }\n}\n\nfunction metricsTitle(metrics: AssistantResponseMetrics | undefined): string {\n const rows = responseMetricRows(metrics);\n if (rows.length === 0) {\n return \"Cost unavailable. No usage metrics yet.\";\n }\n return [\"Cost unavailable\", ...rows.map((row) => `${row.label}: ${row.value}`)].join(\". \");\n}\n\nfunction formatMetricNumber(value: number): string {\n return value.toLocaleString();\n}\n\nfunction formatResponseDuration(value: number): string {\n if (value < 1000) {\n return `${value}ms`;\n }\n return `${(value / 1000).toFixed(1)}s`;\n}\n\nfunction AssistantLoadingIndicator() {\n return (\n <div\n aria-label=\"Assistant is thinking\"\n aria-live=\"polite\"\n className=\"inline-flex min-h-8 items-center gap-2 py-1 text-muted-foreground\"\n role=\"status\"\n >\n <span className=\"text-base font-medium\">Thinking</span>\n <span className=\"flex items-center gap-1\" aria-hidden=\"true\">\n <span className=\"size-1 animate-pulse rounded-full bg-current motion-reduce:animate-none\" />\n <span className=\"size-1 animate-pulse rounded-full bg-current [animation-delay:150ms] motion-reduce:animate-none\" />\n <span className=\"size-1 animate-pulse rounded-full bg-current [animation-delay:300ms] motion-reduce:animate-none\" />\n </span>\n </div>\n );\n}\n\nfunction MessageAttachments(props: {\n attachments: NonNullable<Extract<TranscriptEntry, { kind: \"message\" }>[\"attachments\"]>;\n}) {\n return (\n <div className=\"mt-2 flex max-w-full flex-wrap gap-2\">\n {props.attachments.map((attachment, index) => {\n const key = `${attachment.kind}-${attachment.name ?? attachment.mediaType ?? index}-${index}`;\n if (attachment.kind === \"image\") {\n const src =\n attachment.url ??\n (attachment.data === undefined\n ? undefined\n : `data:${attachment.mediaType ?? \"image/png\"};base64,${attachment.data}`);\n return (\n <div className=\"overflow-hidden rounded-lg border border-hair bg-card\" key={key}>\n {src === undefined ? (\n <div className=\"grid h-20 w-24 place-items-center px-2 text-center text-xs text-muted-foreground\">\n Image\n </div>\n ) : (\n <img\n alt={attachment.name ?? \"Attached image\"}\n className=\"h-20 w-24 object-cover\"\n src={src}\n />\n )}\n </div>\n );\n }\n return (\n <span\n className=\"inline-flex max-w-full items-center gap-1.5 rounded-lg border border-hair bg-card px-2 py-1 text-xs font-medium text-muted-foreground\"\n key={key}\n >\n <span className=\"min-w-0 truncate\">\n {attachment.name ?? attachment.mediaType ?? \"Document\"}\n </span>\n </span>\n );\n })}\n </div>\n );\n}\n\nfunction hasMarkdownTable(text: string): boolean {\n const lines = text.split(\"\\n\");\n return lines.some((line, index) => {\n const next = lines[index + 1];\n return (\n line.includes(\"|\") &&\n next !== undefined &&\n /^\\s*\\|?\\s*:?-{3,}:?\\s*(\\|\\s*:?-{3,}:?\\s*)+\\|?\\s*$/.test(next)\n );\n });\n}\n\nfunction ToolEntry(props: {\n entry: ToolMessage;\n live?: boolean | undefined;\n decidingApprovals: Set<string>;\n answeringQuestions: Set<string>;\n onApprovalDecision: (approvalId: string, approved: boolean) => void;\n onQuestionAnswer: (\n questionId: string,\n answers: Array<{ questionId: string; answer: string; choice?: string; custom?: boolean }>,\n ) => void;\n}) {\n const [collapsed, setCollapsed] = useState(\n props.entry.approval?.status !== \"pending\" && props.entry.question?.status !== \"pending\",\n );\n const approval = props.entry.approval;\n const question = props.entry.question;\n const childEvents = props.entry.childEvents ?? [];\n const hasPayload =\n props.entry.args !== undefined ||\n props.entry.result !== undefined ||\n childEvents.length > 0 ||\n approval !== undefined ||\n question !== undefined;\n const pendingApproval = approval?.status === \"pending\";\n const pendingQuestion = question?.status === \"pending\";\n const cancelledInteraction = approval?.status === \"cancelled\" || question?.status === \"cancelled\";\n const rejectedApproval = approval?.status === \"rejected\";\n const timedOutApproval = approval?.status === \"timed_out\";\n const deciding = approval !== undefined && props.decidingApprovals.has(approval.id);\n const answering = question !== undefined && props.answeringQuestions.has(question.id);\n const status = pendingApproval\n ? \"Approval required\"\n : pendingQuestion\n ? \"Input required\"\n : cancelledInteraction\n ? \"Cancelled\"\n : rejectedApproval\n ? \"Rejected\"\n : timedOutApproval\n ? \"Timed out\"\n : props.live === true && props.entry.result === undefined\n ? \"Running\"\n : undefined;\n\n return (\n <article\n className=\"w-full justify-self-start text-foreground\"\n data-entry-id={String(props.entry.entryId)}\n data-entry-kind=\"tool\"\n >\n <div className=\"flex min-w-0 items-center gap-2 py-0.5\">\n <Button\n aria-expanded={hasPayload ? !collapsed : undefined}\n aria-label={`${collapsed ? \"Expand\" : \"Collapse\"} ${props.entry.toolName} tool call`}\n className=\"h-auto min-h-9 min-w-0 flex-1 justify-start gap-2.5 rounded-lg border-0 bg-transparent px-1 py-0.5 text-left text-inherit shadow-none hover:bg-transparent hover:text-inherit\"\n type=\"button\"\n variant=\"ghost\"\n onClick={() => setCollapsed((current) => !current)}\n >\n <span\n className=\"grid size-6 shrink-0 place-items-center rounded-md border border-hair bg-muted text-muted-foreground\"\n data-tool-icon=\"action\"\n >\n <StudioIcon icon={Lightning} className=\"size-2.5\" weight=\"fill\" aria-hidden=\"true\" />\n </span>\n <strong className=\"min-w-0 truncate font-mono text-sm font-medium text-foreground\">\n {props.entry.toolName}\n </strong>\n {status === undefined ? null : (\n <span className=\"ml-auto inline-flex shrink-0 items-center gap-1.5 text-sm font-normal text-muted-foreground\">\n <span\n className={cn(\n \"size-1.5 rounded-full bg-dim\",\n status === \"Running\" && \"animate-pulse bg-foreground motion-reduce:animate-none\",\n (cancelledInteraction || rejectedApproval || timedOutApproval) &&\n \"bg-destructive\",\n )}\n aria-hidden=\"true\"\n />\n {status}\n </span>\n )}\n {hasPayload ? (\n <span className=\"grid size-6 shrink-0 place-items-center text-muted-foreground\">\n <StudioIcon\n icon={CaretDown}\n className={cn(\"size-4 transition-transform\", collapsed && \"-rotate-90\")}\n aria-hidden=\"true\"\n />\n </span>\n ) : null}\n </Button>\n {pendingApproval && approval !== undefined ? (\n <ToolApprovalActions\n disabled={deciding}\n onDecision={(approved) => props.onApprovalDecision(approval.id, approved)}\n />\n ) : null}\n </div>\n {collapsed || !hasPayload ? null : (\n <div className=\"ml-8 grid gap-3 py-2\">\n {approval === undefined ? null : <ToolApprovalPanel approval={approval} />}\n {question === undefined ? null : (\n <ToolQuestionPanel\n disabled={answering}\n question={question}\n onAnswer={(answers) => props.onQuestionAnswer(question.id, answers)}\n />\n )}\n {question !== undefined || props.entry.args === undefined ? null : (\n <ToolPayload title=\"Input\" value={props.entry.args} />\n )}\n {childEvents.length === 0 ? null : <ChildAgentActivity events={childEvents} />}\n {question !== undefined || props.entry.result === undefined ? null : (\n <ToolPayload title=\"Output\" value={props.entry.result} />\n )}\n </div>\n )}\n </article>\n );\n}\n\nfunction ChildAgentActivity(props: { events: NonNullable<ToolMessage[\"childEvents\"]> }) {\n return (\n <div className=\"overflow-hidden rounded-none border border-hair bg-background\">\n <div className=\"bg-muted px-3 py-2 text-xs font-semibold uppercase tracking-[0.18em] text-muted-foreground\">\n Subagent activity\n </div>\n <div className=\"grid gap-3 p-3\">\n {props.events.map((event) => {\n const agentLabel = event.agentName ?? event.agentId;\n if (event.kind === \"message\" || event.kind === \"reasoning\") {\n return (\n <div\n className=\"grid gap-1 rounded-none border border-hair bg-card p-3\"\n key={`${event.kind}-${event.agentId}-${event.text}`}\n >\n <div className=\"flex min-w-0 items-center gap-2\">\n <Badge className=\"border-border bg-muted px-1.5 py-0.5 text-xs uppercase text-muted-foreground\">\n {event.kind === \"reasoning\" ? \"Reasoning\" : \"Response\"}\n </Badge>\n <span className=\"min-w-0 truncate text-xs font-semibold text-muted-foreground\">\n {agentLabel}\n </span>\n </div>\n <MarkdownText size=\"base\" text={event.text} />\n </div>\n );\n }\n return (\n <div\n className=\"grid gap-2 rounded-none border border-hair bg-card p-3\"\n key={`${event.kind}-${event.agentId}-${event.toolName}-${event.callId ?? event.args ?? event.result ?? \"\"}`}\n >\n <div className=\"flex min-w-0 items-center gap-2\">\n <Badge className=\"border-hair bg-muted px-1.5 py-0.5 text-xs uppercase text-foreground\">\n Tool\n </Badge>\n <span className=\"min-w-0 truncate text-xs font-semibold text-muted-foreground\">\n {agentLabel} / {event.toolName}\n </span>\n </div>\n {event.args === undefined ? null : <ToolPayload title=\"Input\" value={event.args} />}\n {event.result === undefined ? null : (\n <ToolPayload title=\"Output\" value={event.result} />\n )}\n </div>\n );\n })}\n </div>\n </div>\n );\n}\n\nfunction ToolQuestionPanel(props: {\n question: ToolQuestion;\n disabled: boolean;\n onAnswer: (\n answers: Array<{ questionId: string; answer: string; choice?: string; custom?: boolean }>,\n ) => void;\n}) {\n const [values, setValues] = useState<Record<string, QuestionDraft>>({});\n const [activeQuestionIndex, setActiveQuestionIndex] = useState(0);\n const pending = props.question.status === \"pending\";\n const total = props.question.questions.length;\n\n const answers = props.question.questions.map((question) => {\n const draft = values[question.id];\n const customAnswer = draft?.customValue?.trim() ?? \"\";\n const answer = customAnswer.length > 0 ? customAnswer : draft?.answer;\n const normalized: { questionId: string; answer: string; choice?: string; custom?: boolean } = {\n questionId: question.id,\n answer: answer?.trim() ?? \"\",\n };\n if (draft?.choice !== undefined) normalized.choice = draft.choice;\n if (customAnswer.length > 0) normalized.custom = true;\n return normalized;\n });\n const activeIndex = total === 0 ? 0 : Math.min(activeQuestionIndex, total - 1);\n const activeQuestion = props.question.questions[activeIndex];\n const activeAnswer = answers[activeIndex]?.answer ?? \"\";\n const answeredCount = answers.filter((answer) => answer.answer.length > 0).length;\n const canAdvance = activeAnswer.length > 0;\n const canSubmit = pending && answers.every((answer) => answer.answer.length > 0);\n const firstQuestion = activeIndex === 0;\n const lastQuestion = activeIndex >= total - 1;\n\n if (activeQuestion === undefined) {\n return (\n <div className=\"rounded-none border border-border bg-background p-4 text-sm font-medium text-muted-foreground\">\n No questions\n </div>\n );\n }\n\n const goPrevious = () => setActiveQuestionIndex((current) => Math.max(0, current - 1));\n const goNext = () =>\n setActiveQuestionIndex((current) => Math.min(props.question.questions.length - 1, current + 1));\n const updateDraft = (questionId: string, value: QuestionDraft) =>\n setValues((current) => ({\n ...current,\n [questionId]: value,\n }));\n\n return (\n <div className=\"grid gap-3\">\n {props.question.status === \"cancelled\" ? (\n <div className=\"rounded-none border border-hair bg-muted px-3 py-2.5 text-sm font-medium text-muted-foreground\">\n Question cancelled\n </div>\n ) : null}\n <QuestionPromptControl\n key={activeQuestion.id}\n disabled={props.disabled || !pending}\n index={activeIndex}\n total={total}\n question={activeQuestion}\n value={values[activeQuestion.id]}\n answer={props.question.answers?.find((answer) => answer.questionId === activeQuestion.id)}\n onChange={(value) => updateDraft(activeQuestion.id, value)}\n onAdvance={lastQuestion ? undefined : goNext}\n />\n {pending ? (\n <div className=\"flex min-w-0 items-center justify-between gap-3 rounded-none bg-muted px-3 py-2\">\n <div className=\"min-w-0 text-xs font-semibold uppercase tracking-[0.2em] text-muted-foreground\">\n {answeredCount}/{total} answered\n </div>\n <div className=\"flex shrink-0 items-center gap-2\">\n {firstQuestion ? null : (\n <Button type=\"button\" variant=\"secondary\" onClick={goPrevious}>\n Back\n </Button>\n )}\n {lastQuestion ? (\n <Button\n className=\"h-9 min-h-9 px-4\"\n disabled={props.disabled || !canSubmit}\n type=\"button\"\n onClick={() => props.onAnswer(answers)}\n >\n Submit answers\n </Button>\n ) : (\n <Button\n className=\"h-9 min-h-9 px-4\"\n disabled={props.disabled || !canAdvance}\n type=\"button\"\n onClick={goNext}\n >\n Next question\n </Button>\n )}\n </div>\n </div>\n ) : total > 1 ? (\n <div className=\"flex min-w-0 items-center justify-between gap-3 rounded-none bg-muted px-3 py-2\">\n <div className=\"min-w-0 text-xs font-semibold uppercase tracking-[0.2em] text-foreground\">\n Answered\n </div>\n <div className=\"flex shrink-0 items-center gap-2\">\n <Button disabled={firstQuestion} type=\"button\" variant=\"secondary\" onClick={goPrevious}>\n Back\n </Button>\n <Button disabled={lastQuestion} type=\"button\" variant=\"secondary\" onClick={goNext}>\n Next\n </Button>\n </div>\n </div>\n ) : null}\n </div>\n );\n}\n\ntype QuestionDraft = {\n answer?: string;\n choice?: string;\n customValue?: string;\n};\n\nfunction QuestionPromptControl(props: {\n question: ToolQuestion[\"questions\"][number];\n value: QuestionDraft | undefined;\n answer: NonNullable<ToolQuestion[\"answers\"]>[number] | undefined;\n disabled: boolean;\n index: number;\n total: number;\n onChange: (value: QuestionDraft) => void;\n onAdvance: (() => void) | undefined;\n}) {\n const submittedAnswer = props.answer?.answer;\n const draftAnswer = questionDraftAnswer(props.value);\n const state =\n submittedAnswer !== undefined ? \"Answered\" : draftAnswer.length > 0 ? \"Ready\" : \"Waiting\";\n\n return (\n <section className=\"grid gap-4 rounded-none border border-hair bg-background p-4\">\n <div className=\"flex min-w-0 items-start justify-between gap-4\">\n <div className=\"grid min-w-0 gap-2\">\n <div className=\" text-xs font-semibold uppercase tracking-[0.2em] text-muted-foreground\">\n Question {props.index + 1} of {props.total}\n </div>\n <h3 className=\"m-0 text-base font-semibold leading-7 text-foreground [overflow-wrap:anywhere]\">\n {props.question.question}\n </h3>\n </div>\n <span\n className={cn(\n \"shrink-0 text-xs font-semibold uppercase tracking-[0.18em]\",\n state === \"Answered\" && \"text-foreground\",\n state === \"Ready\" && \"text-foreground\",\n state === \"Waiting\" && \"text-muted-foreground\",\n )}\n >\n {state}\n </span>\n </div>\n {submittedAnswer === undefined ? null : (\n <div className=\"rounded-lg border border-hair bg-muted px-3 py-2 text-sm font-medium text-foreground\">\n {submittedAnswer}\n </div>\n )}\n {submittedAnswer !== undefined ? null : props.question.choices.length > 0 ? (\n <div className=\"flex flex-wrap gap-2\">\n {props.question.choices.map((choice) => {\n const active = props.value?.choice === choice.value;\n return (\n <Button\n key={choice.value}\n className={cn(\"h-8 min-h-8 px-3 text-xs\", active && \"border-foreground\")}\n disabled={props.disabled}\n size=\"sm\"\n type=\"button\"\n variant={active ? \"default\" : \"secondary\"}\n onClick={() => {\n props.onChange({\n answer: choice.value,\n choice: choice.value,\n customValue: props.value?.customValue ?? \"\",\n });\n props.onAdvance?.();\n }}\n >\n {choice.label}\n </Button>\n );\n })}\n </div>\n ) : null}\n {submittedAnswer !== undefined ||\n (props.question.choices.length > 0 && !props.question.allowCustom) ? null : (\n <Textarea\n className=\"min-h-24 text-sm\"\n disabled={props.disabled}\n placeholder=\"Type a custom answer\"\n rows={3}\n value={props.value?.customValue ?? \"\"}\n onChange={(event) =>\n props.onChange({\n ...props.value,\n customValue: event.currentTarget.value,\n })\n }\n />\n )}\n </section>\n );\n}\n\nfunction questionDraftAnswer(value: QuestionDraft | undefined): string {\n const customAnswer = value?.customValue?.trim() ?? \"\";\n return customAnswer.length > 0 ? customAnswer : (value?.answer?.trim() ?? \"\");\n}\n\nfunction ToolApprovalPanel(props: { approval: ToolApproval }) {\n return (\n <div className=\"grid gap-2 rounded-none border border-hair bg-muted px-3 py-2.5\">\n <div className=\"flex min-w-0 items-center gap-2\">\n <Badge\n className={cn(\n \"border-hair bg-background px-1.5 py-0.5 text-xs uppercase text-muted-foreground\",\n props.approval.status === \"approved\" && \"text-foreground\",\n props.approval.status === \"rejected\" && \"text-destructive\",\n )}\n >\n Approval\n </Badge>\n <div className=\"min-w-0\">\n <div className=\"text-sm font-medium text-foreground\">{approvalLabel(props.approval)}</div>\n </div>\n </div>\n {props.approval.reason === undefined ? null : (\n <div className=\"text-xs font-medium text-muted-foreground [overflow-wrap:anywhere]\">\n {props.approval.reason}\n </div>\n )}\n </div>\n );\n}\n\nfunction ToolApprovalActions(props: {\n disabled: boolean;\n onDecision: (approved: boolean) => void;\n}) {\n return (\n <div className=\"flex shrink-0 items-center gap-1\">\n <Button\n className=\"h-8 min-h-8 border-0 bg-transparent px-3 text-sm text-muted-foreground shadow-none hover:bg-status-danger-fill hover:text-destructive\"\n disabled={props.disabled}\n size=\"sm\"\n type=\"button\"\n variant=\"ghost\"\n onClick={() => props.onDecision(false)}\n >\n Reject\n </Button>\n <Button\n className=\"h-8 min-h-8 px-3 text-sm\"\n disabled={props.disabled}\n size=\"sm\"\n type=\"button\"\n onClick={() => props.onDecision(true)}\n >\n Approve\n </Button>\n </div>\n );\n}\n"],"x_google_ignoreList":[0,1,2,3,4,5],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e,i as t}from"./dist-CHLp-Np4.js";var n=e((e=>{var n=t();function r(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var i=typeof Object.is==`function`?Object.is:r,a=n.useState,o=n.useEffect,s=n.useLayoutEffect,c=n.useDebugValue;function l(e,t){var n=t(),r=a({inst:{value:n,getSnapshot:t}}),i=r[0].inst,l=r[1];return s(function(){i.value=n,i.getSnapshot=t,u(i)&&l({inst:i})},[e,n,t]),o(function(){return u(i)&&l({inst:i}),e(function(){u(i)&&l({inst:i})})},[e]),c(n),n}function u(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!i(e,n)}catch{return!0}}function d(e,t){return t()}var f=typeof window>`u`||window.document===void 0||window.document.createElement===void 0?d:l;e.useSyncExternalStore=n.useSyncExternalStore===void 0?f:n.useSyncExternalStore})),r=e(((e,t)=>{t.exports=n()})),i=e((e=>{var n=t(),i=r();function a(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var o=typeof Object.is==`function`?Object.is:a,s=i.useSyncExternalStore,c=n.useRef,l=n.useEffect,u=n.useMemo,d=n.useDebugValue;e.useSyncExternalStoreWithSelector=function(e,t,n,r,i){var a=c(null);if(a.current===null){var f={hasValue:!1,value:null};a.current=f}else f=a.current;a=u(function(){function e(e){if(!a){if(a=!0,s=e,e=r(e),i!==void 0&&f.hasValue){var t=f.value;if(i(t,e))return c=t}return c=e}if(t=c,o(s,e))return t;var n=r(e);return i!==void 0&&i(t,n)?(s=e,t):(s=e,c=n)}var a=!1,s,c,l=n===void 0?null:n;return[function(){return e(t())},l===null?void 0:function(){return e(l())}]},[t,n,r,i]);var p=s(e,a[0],a[1]);return l(function(){f.hasValue=!0,f.value=p},[p]),d(p),p}})),a=e(((e,t)=>{t.exports=i()}));export{a as t};
|
|
2
|
+
//# sourceMappingURL=with-selector-BIQdjRiO.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"with-selector-
|
|
1
|
+
{"version":3,"file":"with-selector-BIQdjRiO.js","names":[],"sources":["../../../../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.2.8/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js","../../../../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.2.8/node_modules/use-sync-external-store/shim/index.js","../../../../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.2.8/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js","../../../../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.2.8/node_modules/use-sync-external-store/shim/with-selector.js"],"sourcesContent":["/**\n * @license React\n * use-sync-external-store-shim.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar React = require(\"react\");\nfunction is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\nvar objectIs = \"function\" === typeof Object.is ? Object.is : is,\n useState = React.useState,\n useEffect = React.useEffect,\n useLayoutEffect = React.useLayoutEffect,\n useDebugValue = React.useDebugValue;\nfunction useSyncExternalStore$2(subscribe, getSnapshot) {\n var value = getSnapshot(),\n _useState = useState({ inst: { value: value, getSnapshot: getSnapshot } }),\n inst = _useState[0].inst,\n forceUpdate = _useState[1];\n useLayoutEffect(\n function () {\n inst.value = value;\n inst.getSnapshot = getSnapshot;\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n },\n [subscribe, value, getSnapshot]\n );\n useEffect(\n function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n return subscribe(function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n });\n },\n [subscribe]\n );\n useDebugValue(value);\n return value;\n}\nfunction checkIfSnapshotChanged(inst) {\n var latestGetSnapshot = inst.getSnapshot;\n inst = inst.value;\n try {\n var nextValue = latestGetSnapshot();\n return !objectIs(inst, nextValue);\n } catch (error) {\n return !0;\n }\n}\nfunction useSyncExternalStore$1(subscribe, getSnapshot) {\n return getSnapshot();\n}\nvar shim =\n \"undefined\" === typeof window ||\n \"undefined\" === typeof window.document ||\n \"undefined\" === typeof window.document.createElement\n ? useSyncExternalStore$1\n : useSyncExternalStore$2;\nexports.useSyncExternalStore =\n void 0 !== React.useSyncExternalStore ? React.useSyncExternalStore : shim;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim.production.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim.development.js');\n}\n","/**\n * @license React\n * use-sync-external-store-shim/with-selector.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar React = require(\"react\"),\n shim = require(\"use-sync-external-store/shim\");\nfunction is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\nvar objectIs = \"function\" === typeof Object.is ? Object.is : is,\n useSyncExternalStore = shim.useSyncExternalStore,\n useRef = React.useRef,\n useEffect = React.useEffect,\n useMemo = React.useMemo,\n useDebugValue = React.useDebugValue;\nexports.useSyncExternalStoreWithSelector = function (\n subscribe,\n getSnapshot,\n getServerSnapshot,\n selector,\n isEqual\n) {\n var instRef = useRef(null);\n if (null === instRef.current) {\n var inst = { hasValue: !1, value: null };\n instRef.current = inst;\n } else inst = instRef.current;\n instRef = useMemo(\n function () {\n function memoizedSelector(nextSnapshot) {\n if (!hasMemo) {\n hasMemo = !0;\n memoizedSnapshot = nextSnapshot;\n nextSnapshot = selector(nextSnapshot);\n if (void 0 !== isEqual && inst.hasValue) {\n var currentSelection = inst.value;\n if (isEqual(currentSelection, nextSnapshot))\n return (memoizedSelection = currentSelection);\n }\n return (memoizedSelection = nextSnapshot);\n }\n currentSelection = memoizedSelection;\n if (objectIs(memoizedSnapshot, nextSnapshot)) return currentSelection;\n var nextSelection = selector(nextSnapshot);\n if (void 0 !== isEqual && isEqual(currentSelection, nextSelection))\n return (memoizedSnapshot = nextSnapshot), currentSelection;\n memoizedSnapshot = nextSnapshot;\n return (memoizedSelection = nextSelection);\n }\n var hasMemo = !1,\n memoizedSnapshot,\n memoizedSelection,\n maybeGetServerSnapshot =\n void 0 === getServerSnapshot ? null : getServerSnapshot;\n return [\n function () {\n return memoizedSelector(getSnapshot());\n },\n null === maybeGetServerSnapshot\n ? void 0\n : function () {\n return memoizedSelector(maybeGetServerSnapshot());\n }\n ];\n },\n [getSnapshot, getServerSnapshot, selector, isEqual]\n );\n var value = useSyncExternalStore(subscribe, instRef[0], instRef[1]);\n useEffect(\n function () {\n inst.hasValue = !0;\n inst.value = value;\n },\n [value]\n );\n useDebugValue(value);\n return value;\n};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim/with-selector.production.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim/with-selector.development.js');\n}\n"],"x_google_ignoreList":[0,1,2,3],"mappings":"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"}
|
package/dist/ui/index.html
CHANGED
|
@@ -30,24 +30,24 @@
|
|
|
30
30
|
favicon.href = favicon.href.replace("favicon-dark.svg", `favicon-${theme}.svg`);
|
|
31
31
|
})();
|
|
32
32
|
</script>
|
|
33
|
-
<script type="module" crossorigin src="/ui/assets/index-
|
|
34
|
-
<link rel="modulepreload" crossorigin href="/ui/assets/
|
|
35
|
-
<link rel="modulepreload" crossorigin href="/ui/assets/button-
|
|
36
|
-
<link rel="modulepreload" crossorigin href="/ui/assets/dist-
|
|
37
|
-
<link rel="modulepreload" crossorigin href="/ui/assets/with-selector-
|
|
38
|
-
<link rel="modulepreload" crossorigin href="/ui/assets/request-
|
|
39
|
-
<link rel="modulepreload" crossorigin href="/ui/assets/icon-
|
|
40
|
-
<link rel="modulepreload" crossorigin href="/ui/assets/ArrowClockwise.es-
|
|
41
|
-
<link rel="modulepreload" crossorigin href="/ui/assets/Wrench.es-
|
|
42
|
-
<link rel="modulepreload" crossorigin href="/ui/assets/
|
|
43
|
-
<link rel="modulepreload" crossorigin href="/ui/assets/dialog-
|
|
33
|
+
<script type="module" crossorigin src="/ui/assets/index-Dyjst4Yt.js"></script>
|
|
34
|
+
<link rel="modulepreload" crossorigin href="/ui/assets/dist-CHLp-Np4.js">
|
|
35
|
+
<link rel="modulepreload" crossorigin href="/ui/assets/button-BWxpVW85.js">
|
|
36
|
+
<link rel="modulepreload" crossorigin href="/ui/assets/dist-BmLOFYIW.js">
|
|
37
|
+
<link rel="modulepreload" crossorigin href="/ui/assets/with-selector-BIQdjRiO.js">
|
|
38
|
+
<link rel="modulepreload" crossorigin href="/ui/assets/request-DYxy87Kp.js">
|
|
39
|
+
<link rel="modulepreload" crossorigin href="/ui/assets/icon-ksPSRwE8.js">
|
|
40
|
+
<link rel="modulepreload" crossorigin href="/ui/assets/ArrowClockwise.es-Dn4lp0ac.js">
|
|
41
|
+
<link rel="modulepreload" crossorigin href="/ui/assets/Wrench.es-Q3fLRWow.js">
|
|
42
|
+
<link rel="modulepreload" crossorigin href="/ui/assets/Combination-Cj4UR5tg.js">
|
|
43
|
+
<link rel="modulepreload" crossorigin href="/ui/assets/dialog-DauYXFnG.js">
|
|
44
|
+
<link rel="modulepreload" crossorigin href="/ui/assets/Check.es-BaQZo8Jl.js">
|
|
45
|
+
<link rel="modulepreload" crossorigin href="/ui/assets/dist-DD97Shn_.js">
|
|
46
|
+
<link rel="modulepreload" crossorigin href="/ui/assets/select-C4MbvpHr.js">
|
|
44
47
|
<link rel="modulepreload" crossorigin href="/ui/assets/knowledge-model-B6kRb7zc.js">
|
|
45
|
-
<link rel="modulepreload" crossorigin href="/ui/assets/
|
|
46
|
-
<link rel="modulepreload" crossorigin href="/ui/assets/
|
|
47
|
-
<link rel="
|
|
48
|
-
<link rel="modulepreload" crossorigin href="/ui/assets/studio-DzEdCFsX.js">
|
|
49
|
-
<link rel="modulepreload" crossorigin href="/ui/assets/textarea-fAtCF2cf.js">
|
|
50
|
-
<link rel="stylesheet" crossorigin href="/ui/assets/index-BGl7eOVR.css">
|
|
48
|
+
<link rel="modulepreload" crossorigin href="/ui/assets/studio-CtQdOoHK.js">
|
|
49
|
+
<link rel="modulepreload" crossorigin href="/ui/assets/textarea-gPj9-ALc.js">
|
|
50
|
+
<link rel="stylesheet" crossorigin href="/ui/assets/index-DDzW7QMd.css">
|
|
51
51
|
</head>
|
|
52
52
|
<body>
|
|
53
53
|
<div id="anvia-ui" data-ui-path="/ui">
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@anvia/studio",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.0",
|
|
4
4
|
"description": "Studio UI and HTTP runtime for Anvia agents.",
|
|
5
5
|
"author": "anvia",
|
|
6
6
|
"license": "MIT",
|
|
@@ -45,11 +45,11 @@
|
|
|
45
45
|
"react-dom": "^19.2.8",
|
|
46
46
|
"tailwind-merge": "^3.6.0",
|
|
47
47
|
"ws": "^8.21.3",
|
|
48
|
-
"@anvia/
|
|
49
|
-
"@anvia/
|
|
50
|
-
"@anvia/react": "1.1.
|
|
51
|
-
"@anvia/
|
|
52
|
-
"@anvia/
|
|
48
|
+
"@anvia/graph": "1.1.3",
|
|
49
|
+
"@anvia/react": "1.1.3",
|
|
50
|
+
"@anvia/react-ui": "1.1.3",
|
|
51
|
+
"@anvia/server": "1.1.3",
|
|
52
|
+
"@anvia/client": "1.1.3"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
55
|
"@tailwindcss/typography": "^0.5.19",
|
|
@@ -66,10 +66,10 @@
|
|
|
66
66
|
"vite": "^8.2.2",
|
|
67
67
|
"vitest": "^4.0.8",
|
|
68
68
|
"zod": "^4.5.4",
|
|
69
|
-
"@anvia/core": "1.
|
|
69
|
+
"@anvia/core": "1.2.0"
|
|
70
70
|
},
|
|
71
71
|
"peerDependencies": {
|
|
72
|
-
"@anvia/core": "1.
|
|
72
|
+
"@anvia/core": "^1.2.0"
|
|
73
73
|
},
|
|
74
74
|
"engines": {
|
|
75
75
|
"node": ">=20.12.0"
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{i as e,s as t}from"./utils-DzstcfqT.js";import{n}from"./icon-DyadsXLr.js";var r=t(e(),1),i=new Map([[`bold`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M244,56v48a12,12,0,0,1-12,12H184a12,12,0,1,1,0-24H201.1l-19-17.38c-.13-.12-.26-.24-.38-.37A76,76,0,1,0,127,204h1a75.53,75.53,0,0,0,52.15-20.72,12,12,0,0,1,16.49,17.45A99.45,99.45,0,0,1,128,228h-1.37A100,100,0,1,1,198.51,57.06L220,76.72V56a12,12,0,0,1,24,0Z`}))],[`duotone`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M216,128a88,88,0,1,1-88-88A88,88,0,0,1,216,128Z`,opacity:`0.2`}),r.createElement(`path`,{d:`M240,56v48a8,8,0,0,1-8,8H184a8,8,0,0,1,0-16H211.4L184.81,71.64l-.25-.24a80,80,0,1,0-1.67,114.78,8,8,0,0,1,11,11.63A95.44,95.44,0,0,1,128,224h-1.32A96,96,0,1,1,195.75,60L224,85.8V56a8,8,0,1,1,16,0Z`}))],[`fill`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M240,56v48a8,8,0,0,1-8,8H184a8,8,0,0,1-5.66-13.66l17-17-10.55-9.65-.25-.24a80,80,0,1,0-1.67,114.78,8,8,0,1,1,11,11.63A95.44,95.44,0,0,1,128,224h-1.32A96,96,0,1,1,195.75,60l10.93,10L226.34,50.3A8,8,0,0,1,240,56Z`}))],[`light`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M238,56v48a6,6,0,0,1-6,6H184a6,6,0,0,1,0-12h32.55l-30.38-27.8c-.06-.06-.12-.13-.19-.19a82,82,0,1,0-1.7,117.65,6,6,0,0,1,8.24,8.73A93.46,93.46,0,0,1,128,222h-1.28A94,94,0,1,1,194.37,61.4L226,90.35V56a6,6,0,1,1,12,0Z`}))],[`regular`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M240,56v48a8,8,0,0,1-8,8H184a8,8,0,0,1,0-16H211.4L184.81,71.64l-.25-.24a80,80,0,1,0-1.67,114.78,8,8,0,0,1,11,11.63A95.44,95.44,0,0,1,128,224h-1.32A96,96,0,1,1,195.75,60L224,85.8V56a8,8,0,1,1,16,0Z`}))],[`thin`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M236,56v48a4,4,0,0,1-4,4H184a4,4,0,0,1,0-8h37.7L187.53,68.69l-.13-.12a84,84,0,1,0-1.75,120.51,4,4,0,0,1,5.5,5.82A91.43,91.43,0,0,1,128,220h-1.26A92,92,0,1,1,193,62.84l35,32.05V56a4,4,0,1,1,8,0Z`}))]]),a=r.forwardRef((e,t)=>r.createElement(n,{ref:t,...e,weights:i}));a.displayName=`ArrowClockwiseIcon`;var o=a;export{o as t};
|
|
2
|
-
//# sourceMappingURL=ArrowClockwise.es-5vr4h4OH.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{i as e,s as t}from"./utils-DzstcfqT.js";import{n}from"./icon-DyadsXLr.js";var r=t(e(),1),i=new Map([[`bold`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M216.49,104.49l-80,80a12,12,0,0,1-17,0l-80-80a12,12,0,0,1,17-17L128,159l71.51-71.52a12,12,0,0,1,17,17Z`}))],[`duotone`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M208,96l-80,80L48,96Z`,opacity:`0.2`}),r.createElement(`path`,{d:`M215.39,92.94A8,8,0,0,0,208,88H48a8,8,0,0,0-5.66,13.66l80,80a8,8,0,0,0,11.32,0l80-80A8,8,0,0,0,215.39,92.94ZM128,164.69,67.31,104H188.69Z`}))],[`fill`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,48,88H208a8,8,0,0,1,5.66,13.66Z`}))],[`light`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M212.24,100.24l-80,80a6,6,0,0,1-8.48,0l-80-80a6,6,0,0,1,8.48-8.48L128,167.51l75.76-75.75a6,6,0,0,1,8.48,8.48Z`}))],[`regular`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,53.66,90.34L128,164.69l74.34-74.35a8,8,0,0,1,11.32,11.32Z`}))],[`thin`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M210.83,98.83l-80,80a4,4,0,0,1-5.66,0l-80-80a4,4,0,0,1,5.66-5.66L128,170.34l77.17-77.17a4,4,0,1,1,5.66,5.66Z`}))]]),a=new Map([[`bold`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z`}))],[`duotone`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M232,56V200a16,16,0,0,1-16,16H40a16,16,0,0,1-16-16V56A16,16,0,0,1,40,40H216A16,16,0,0,1,232,56Z`,opacity:`0.2`}),r.createElement(`path`,{d:`M205.66,85.66l-96,96a8,8,0,0,1-11.32,0l-40-40a8,8,0,0,1,11.32-11.32L104,164.69l90.34-90.35a8,8,0,0,1,11.32,11.32Z`}))],[`fill`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM205.66,85.66l-96,96a8,8,0,0,1-11.32,0l-40-40a8,8,0,0,1,11.32-11.32L104,164.69l90.34-90.35a8,8,0,0,1,11.32,11.32Z`}))],[`light`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M228.24,76.24l-128,128a6,6,0,0,1-8.48,0l-56-56a6,6,0,0,1,8.48-8.48L96,191.51,219.76,67.76a6,6,0,0,1,8.48,8.48Z`}))],[`regular`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M229.66,77.66l-128,128a8,8,0,0,1-11.32,0l-56-56a8,8,0,0,1,11.32-11.32L96,188.69,218.34,66.34a8,8,0,0,1,11.32,11.32Z`}))],[`thin`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M226.83,74.83l-128,128a4,4,0,0,1-5.66,0l-56-56a4,4,0,0,1,5.66-5.66L96,194.34,221.17,69.17a4,4,0,1,1,5.66,5.66Z`}))]]),o=r.forwardRef((e,t)=>r.createElement(n,{ref:t,...e,weights:i}));o.displayName=`CaretDownIcon`;var s=o,c=r.forwardRef((e,t)=>r.createElement(n,{ref:t,...e,weights:a}));c.displayName=`CheckIcon`;var l=c;export{s as n,l as t};
|
|
2
|
-
//# sourceMappingURL=Check.es-DgvuCllR.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{i as e,s as t}from"./utils-DzstcfqT.js";import{n}from"./icon-DyadsXLr.js";var r=t(e(),1),i=new Map([[`bold`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M216,28H88A12,12,0,0,0,76,40V76H40A12,12,0,0,0,28,88V216a12,12,0,0,0,12,12H168a12,12,0,0,0,12-12V180h36a12,12,0,0,0,12-12V40A12,12,0,0,0,216,28ZM156,204H52V100H156Zm48-48H180V88a12,12,0,0,0-12-12H100V52H204Z`}))],[`duotone`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M216,40V168H168V88H88V40Z`,opacity:`0.2`}),r.createElement(`path`,{d:`M216,32H88a8,8,0,0,0-8,8V80H40a8,8,0,0,0-8,8V216a8,8,0,0,0,8,8H168a8,8,0,0,0,8-8V176h40a8,8,0,0,0,8-8V40A8,8,0,0,0,216,32ZM160,208H48V96H160Zm48-48H176V88a8,8,0,0,0-8-8H96V48H208Z`}))],[`fill`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M216,32H88a8,8,0,0,0-8,8V80H40a8,8,0,0,0-8,8V216a8,8,0,0,0,8,8H168a8,8,0,0,0,8-8V176h40a8,8,0,0,0,8-8V40A8,8,0,0,0,216,32Zm-8,128H176V88a8,8,0,0,0-8-8H96V48H208Z`}))],[`light`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M216,34H88a6,6,0,0,0-6,6V82H40a6,6,0,0,0-6,6V216a6,6,0,0,0,6,6H168a6,6,0,0,0,6-6V174h42a6,6,0,0,0,6-6V40A6,6,0,0,0,216,34ZM162,210H46V94H162Zm48-48H174V88a6,6,0,0,0-6-6H94V46H210Z`}))],[`regular`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M216,32H88a8,8,0,0,0-8,8V80H40a8,8,0,0,0-8,8V216a8,8,0,0,0,8,8H168a8,8,0,0,0,8-8V176h40a8,8,0,0,0,8-8V40A8,8,0,0,0,216,32ZM160,208H48V96H160Zm48-48H176V88a8,8,0,0,0-8-8H96V48H208Z`}))],[`thin`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M216,36H88a4,4,0,0,0-4,4V84H40a4,4,0,0,0-4,4V216a4,4,0,0,0,4,4H168a4,4,0,0,0,4-4V172h44a4,4,0,0,0,4-4V40A4,4,0,0,0,216,36ZM164,212H44V92H164Zm48-48H172V88a4,4,0,0,0-4-4H92V44H212Z`}))]]),a=r.forwardRef((e,t)=>r.createElement(n,{ref:t,...e,weights:i}));a.displayName=`CopyIcon`;var o=a;export{o as t};
|
|
2
|
-
//# sourceMappingURL=Copy.es-DV7tb_eC.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{i as e,s as t}from"./utils-DzstcfqT.js";import{n}from"./icon-DyadsXLr.js";var r=t(e(),1),i=new Map([[`bold`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M232.49,215.51,185,168a92.12,92.12,0,1,0-17,17l47.53,47.54a12,12,0,0,0,17-17ZM44,112a68,68,0,1,1,68,68A68.07,68.07,0,0,1,44,112Z`}))],[`duotone`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M192,112a80,80,0,1,1-80-80A80,80,0,0,1,192,112Z`,opacity:`0.2`}),r.createElement(`path`,{d:`M229.66,218.34,179.6,168.28a88.21,88.21,0,1,0-11.32,11.31l50.06,50.07a8,8,0,0,0,11.32-11.32ZM40,112a72,72,0,1,1,72,72A72.08,72.08,0,0,1,40,112Z`}))],[`fill`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M168,112a56,56,0,1,1-56-56A56,56,0,0,1,168,112Zm61.66,117.66a8,8,0,0,1-11.32,0l-50.06-50.07a88,88,0,1,1,11.32-11.31l50.06,50.06A8,8,0,0,1,229.66,229.66ZM112,184a72,72,0,1,0-72-72A72.08,72.08,0,0,0,112,184Z`}))],[`light`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M228.24,219.76l-51.38-51.38a86.15,86.15,0,1,0-8.48,8.48l51.38,51.38a6,6,0,0,0,8.48-8.48ZM38,112a74,74,0,1,1,74,74A74.09,74.09,0,0,1,38,112Z`}))],[`regular`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M229.66,218.34l-50.07-50.06a88.11,88.11,0,1,0-11.31,11.31l50.06,50.07a8,8,0,0,0,11.32-11.32ZM40,112a72,72,0,1,1,72,72A72.08,72.08,0,0,1,40,112Z`}))],[`thin`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M226.83,221.17l-52.7-52.7a84.1,84.1,0,1,0-5.66,5.66l52.7,52.7a4,4,0,0,0,5.66-5.66ZM36,112a76,76,0,1,1,76,76A76.08,76.08,0,0,1,36,112Z`}))]]),a=r.forwardRef((e,t)=>r.createElement(n,{ref:t,...e,weights:i}));a.displayName=`MagnifyingGlassIcon`;var o=a;export{o as t};
|
|
2
|
-
//# sourceMappingURL=MagnifyingGlass.es-yzEp9c89.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{i as e,s as t}from"./utils-DzstcfqT.js";import{n}from"./icon-DyadsXLr.js";var r=t(e(),1),i=new Map([[`bold`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M228,104a12,12,0,0,1-24,0V69l-59.51,59.51a12,12,0,0,1-17-17L187,52H152a12,12,0,0,1,0-24h64a12,12,0,0,1,12,12Zm-44,24a12,12,0,0,0-12,12v64H52V84h64a12,12,0,0,0,0-24H48A20,20,0,0,0,28,80V208a20,20,0,0,0,20,20H176a20,20,0,0,0,20-20V140A12,12,0,0,0,184,128Z`}))],[`duotone`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M184,80V208a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V80a8,8,0,0,1,8-8H176A8,8,0,0,1,184,80Z`,opacity:`0.2`}),r.createElement(`path`,{d:`M224,104a8,8,0,0,1-16,0V59.32l-66.33,66.34a8,8,0,0,1-11.32-11.32L196.68,48H152a8,8,0,0,1,0-16h64a8,8,0,0,1,8,8Zm-40,24a8,8,0,0,0-8,8v72H48V80h72a8,8,0,0,0,0-16H48A16,16,0,0,0,32,80V208a16,16,0,0,0,16,16H176a16,16,0,0,0,16-16V136A8,8,0,0,0,184,128Z`}))],[`fill`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M192,136v72a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V80A16,16,0,0,1,48,64h72a8,8,0,0,1,0,16H48V208H176V136a8,8,0,0,1,16,0Zm32-96a8,8,0,0,0-8-8H152a8,8,0,0,0-5.66,13.66L172.69,72l-42.35,42.34a8,8,0,0,0,11.32,11.32L184,83.31l26.34,26.35A8,8,0,0,0,224,104Z`}))],[`light`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M222,104a6,6,0,0,1-12,0V54.49l-69.75,69.75a6,6,0,0,1-8.48-8.48L201.51,46H152a6,6,0,0,1,0-12h64a6,6,0,0,1,6,6Zm-38,26a6,6,0,0,0-6,6v72a2,2,0,0,1-2,2H48a2,2,0,0,1-2-2V80a2,2,0,0,1,2-2h72a6,6,0,0,0,0-12H48A14,14,0,0,0,34,80V208a14,14,0,0,0,14,14H176a14,14,0,0,0,14-14V136A6,6,0,0,0,184,130Z`}))],[`regular`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M224,104a8,8,0,0,1-16,0V59.32l-66.33,66.34a8,8,0,0,1-11.32-11.32L196.68,48H152a8,8,0,0,1,0-16h64a8,8,0,0,1,8,8Zm-40,24a8,8,0,0,0-8,8v72H48V80h72a8,8,0,0,0,0-16H48A16,16,0,0,0,32,80V208a16,16,0,0,0,16,16H176a16,16,0,0,0,16-16V136A8,8,0,0,0,184,128Z`}))],[`thin`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M220,104a4,4,0,0,1-8,0V49.66l-73.16,73.17a4,4,0,0,1-5.66-5.66L206.34,44H152a4,4,0,0,1,0-8h64a4,4,0,0,1,4,4Zm-36,28a4,4,0,0,0-4,4v72a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V80a4,4,0,0,1,4-4h72a4,4,0,0,0,0-8H48A12,12,0,0,0,36,80V208a12,12,0,0,0,12,12H176a12,12,0,0,0,12-12V136A4,4,0,0,0,184,132Z`}))]]),a=new Map([[`bold`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M72,104a16,16,0,1,1,16,16A16,16,0,0,1,72,104Zm96,16a16,16,0,1,0-16-16A16,16,0,0,0,168,120Zm68-40V192a36,36,0,0,1-36,36H56a36,36,0,0,1-36-36V80A36,36,0,0,1,56,44h60V16a12,12,0,0,1,24,0V44h60A36,36,0,0,1,236,80Zm-24,0a12,12,0,0,0-12-12H56A12,12,0,0,0,44,80V192a12,12,0,0,0,12,12H200a12,12,0,0,0,12-12Zm-12,82a30,30,0,0,1-30,30H86a30,30,0,0,1,0-60h84A30,30,0,0,1,200,162Zm-80-6v12h16V156ZM86,168H96V156H86a6,6,0,0,0,0,12Zm90-6a6,6,0,0,0-6-6H160v12h10A6,6,0,0,0,176,162Z`}))],[`duotone`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M200,56H56A24,24,0,0,0,32,80V192a24,24,0,0,0,24,24H200a24,24,0,0,0,24-24V80A24,24,0,0,0,200,56ZM164,184H92a20,20,0,0,1,0-40h72a20,20,0,0,1,0,40Z`,opacity:`0.2`}),r.createElement(`path`,{d:`M200,48H136V16a8,8,0,0,0-16,0V48H56A32,32,0,0,0,24,80V192a32,32,0,0,0,32,32H200a32,32,0,0,0,32-32V80A32,32,0,0,0,200,48Zm16,144a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V80A16,16,0,0,1,56,64H200a16,16,0,0,1,16,16ZM72,108a12,12,0,1,1,12,12A12,12,0,0,1,72,108Zm88,0a12,12,0,1,1,12,12A12,12,0,0,1,160,108Zm4,28H92a28,28,0,0,0,0,56h72a28,28,0,0,0,0-56Zm-24,16v24H116V152ZM80,164a12,12,0,0,1,12-12h8v24H92A12,12,0,0,1,80,164Zm84,12h-8V152h8a12,12,0,0,1,0,24Z`}))],[`fill`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M200,48H136V16a8,8,0,0,0-16,0V48H56A32,32,0,0,0,24,80V192a32,32,0,0,0,32,32H200a32,32,0,0,0,32-32V80A32,32,0,0,0,200,48ZM172,96a12,12,0,1,1-12,12A12,12,0,0,1,172,96ZM96,184H80a16,16,0,0,1,0-32H96ZM84,120a12,12,0,1,1,12-12A12,12,0,0,1,84,120Zm60,64H112V152h32Zm32,0H160V152h16a16,16,0,0,1,0,32Z`}))],[`light`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M200,50H134V16a6,6,0,0,0-12,0V50H56A30,30,0,0,0,26,80V192a30,30,0,0,0,30,30H200a30,30,0,0,0,30-30V80A30,30,0,0,0,200,50Zm18,142a18,18,0,0,1-18,18H56a18,18,0,0,1-18-18V80A18,18,0,0,1,56,62H200a18,18,0,0,1,18,18ZM74,108a10,10,0,1,1,10,10A10,10,0,0,1,74,108Zm88,0a10,10,0,1,1,10,10A10,10,0,0,1,162,108Zm2,30H92a26,26,0,0,0,0,52h72a26,26,0,0,0,0-52Zm-22,12v28H114V150ZM78,164a14,14,0,0,1,14-14h10v28H92A14,14,0,0,1,78,164Zm86,14H154V150h10a14,14,0,0,1,0,28Z`}))],[`regular`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M200,48H136V16a8,8,0,0,0-16,0V48H56A32,32,0,0,0,24,80V192a32,32,0,0,0,32,32H200a32,32,0,0,0,32-32V80A32,32,0,0,0,200,48Zm16,144a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V80A16,16,0,0,1,56,64H200a16,16,0,0,1,16,16Zm-52-56H92a28,28,0,0,0,0,56h72a28,28,0,0,0,0-56Zm-24,16v24H116V152ZM80,164a12,12,0,0,1,12-12h8v24H92A12,12,0,0,1,80,164Zm84,12h-8V152h8a12,12,0,0,1,0,24ZM72,108a12,12,0,1,1,12,12A12,12,0,0,1,72,108Zm88,0a12,12,0,1,1,12,12A12,12,0,0,1,160,108Z`}))],[`thin`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M200,52H132V16a4,4,0,0,0-8,0V52H56A28,28,0,0,0,28,80V192a28,28,0,0,0,28,28H200a28,28,0,0,0,28-28V80A28,28,0,0,0,200,52Zm20,140a20,20,0,0,1-20,20H56a20,20,0,0,1-20-20V80A20,20,0,0,1,56,60H200a20,20,0,0,1,20,20ZM76,108a8,8,0,1,1,8,8A8,8,0,0,1,76,108Zm88,0a8,8,0,1,1,8,8A8,8,0,0,1,164,108Zm0,32H92a24,24,0,0,0,0,48h72a24,24,0,0,0,0-48Zm-20,8v32H112V148ZM76,164a16,16,0,0,1,16-16h12v32H92A16,16,0,0,1,76,164Zm88,16H152V148h12a16,16,0,0,1,0,32Z`}))]]),o=new Map([[`bold`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M230.47,67.5a12,12,0,0,0-19.26-4.32L172.43,99l-12.68-2.72L157,83.57l35.79-38.78a12,12,0,0,0-4.32-19.26A76.07,76.07,0,0,0,88.41,121.64L30.92,174.18a4.68,4.68,0,0,0-.39.38,36,36,0,0,0,50.91,50.91l.38-.39,52.54-57.49A76.05,76.05,0,0,0,230.47,67.5ZM160,148a51.5,51.5,0,0,1-23.35-5.52,12,12,0,0,0-14.26,2.62L64.31,208.66a12,12,0,0,1-17-17l63.55-58.07a12,12,0,0,0,2.62-14.26A51.5,51.5,0,0,1,108,96a52.06,52.06,0,0,1,52-52h.89L135.17,71.87a12,12,0,0,0-2.91,10.65l5.66,26.35a12,12,0,0,0,9.21,9.21l26.35,5.66a12,12,0,0,0,10.65-2.91L212,95.12c0,.3,0,.59,0,.89A52.06,52.06,0,0,1,160,148Z`}))],[`duotone`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M224,96a64,64,0,0,1-94.94,56L73,217A24,24,0,0,1,39,183L104,126.94a64,64,0,0,1,80-90.29L144,80l5.66,26.34L176,112l43.35-40A63.8,63.8,0,0,1,224,96Z`,opacity:`0.2`}),r.createElement(`path`,{d:`M226.76,69a8,8,0,0,0-12.84-2.88l-40.3,37.19-17.23-3.7-3.7-17.23,37.19-40.3A8,8,0,0,0,187,29.24,72,72,0,0,0,88,96,72.34,72.34,0,0,0,94,124.94L33.79,177c-.15.12-.29.26-.43.39a32,32,0,0,0,45.26,45.26c.13-.13.27-.28.39-.42L131.06,162A72,72,0,0,0,232,96,71.56,71.56,0,0,0,226.76,69ZM160,152a56.14,56.14,0,0,1-27.07-7,8,8,0,0,0-9.92,1.77L67.11,211.51a16,16,0,0,1-22.62-22.62L109.18,133a8,8,0,0,0,1.77-9.93,56,56,0,0,1,58.36-82.31l-31.2,33.81a8,8,0,0,0-1.94,7.1L141.83,108a8,8,0,0,0,6.14,6.14l26.35,5.66a8,8,0,0,0,7.1-1.94l33.81-31.2A56.06,56.06,0,0,1,160,152Z`}))],[`fill`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M232,96a72,72,0,0,1-100.94,66L79,222.22c-.12.14-.26.29-.39.42a32,32,0,0,1-45.26-45.26c.14-.13.28-.27.43-.39L94,124.94a72.07,72.07,0,0,1,83.54-98.78,8,8,0,0,1,3.93,13.19L144,80l5.66,26.35L176,112l40.65-37.52a8,8,0,0,1,13.19,3.93A72.6,72.6,0,0,1,232,96Z`}))],[`light`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M224.91,69.75a6,6,0,0,0-9.63-2.16l-41.07,37.9L154.7,101.3l-4.19-19.51,37.9-41.07a6,6,0,0,0-2.16-9.63,70,70,0,0,0-89.77,94.39l-61.39,53c-.11.09-.21.19-.32.3A30,30,0,0,0,77.2,221.23c.11-.11.21-.21.3-.32l53-61.39a70,70,0,0,0,94.39-89.77ZM160,154a58,58,0,0,1-28-7.22,6,6,0,0,0-7.45,1.33L68.57,212.88a18,18,0,0,1-25.45-25.45l64.76-55.94A6,6,0,0,0,109.2,124a58,58,0,0,1,64-84.53L139.58,75.93a6,6,0,0,0-1.45,5.33l5.65,26.35a6,6,0,0,0,4.61,4.61l26.35,5.65a6,6,0,0,0,5.33-1.45L216.49,82.8A58.06,58.06,0,0,1,160,154Z`}))],[`regular`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M226.76,69a8,8,0,0,0-12.84-2.88l-40.3,37.19-17.23-3.7-3.7-17.23,37.19-40.3A8,8,0,0,0,187,29.24,72,72,0,0,0,88,96,72.34,72.34,0,0,0,94,124.94L33.79,177c-.15.12-.29.26-.43.39a32,32,0,0,0,45.26,45.26c.13-.13.27-.28.39-.42L131.06,162A72,72,0,0,0,232,96,71.56,71.56,0,0,0,226.76,69ZM160,152a56.14,56.14,0,0,1-27.07-7,8,8,0,0,0-9.92,1.77L67.11,211.51a16,16,0,0,1-22.62-22.62L109.18,133a8,8,0,0,0,1.77-9.93,56,56,0,0,1,58.36-82.31l-31.2,33.81a8,8,0,0,0-1.94,7.1L141.83,108a8,8,0,0,0,6.14,6.14l26.35,5.66a8,8,0,0,0,7.1-1.94l33.81-31.2A56.06,56.06,0,0,1,160,152Z`}))],[`thin`,r.createElement(r.Fragment,null,r.createElement(`path`,{d:`M223.05,70.5a4,4,0,0,0-6.42-1.44l-41.82,38.6L153,103l-4.68-21.79,38.6-41.82a4,4,0,0,0-1.44-6.43A68,68,0,0,0,98.94,126L36.4,180l-.21.2a28,28,0,0,0,39.6,39.6l.2-.21,54-62.54A68,68,0,0,0,228,96,67.51,67.51,0,0,0,223.05,70.5ZM160,156a60,60,0,0,1-29-7.47,4,4,0,0,0-5,.89L70,214.25A20,20,0,0,1,41.75,186l64.82-56a4,4,0,0,0,.89-5,60,60,0,0,1,69.46-86.59L141.05,77.29a4,4,0,0,0-1,3.55l5.66,26.35a4,4,0,0,0,3.07,3.07l26.35,5.66a4,4,0,0,0,3.55-1l38.87-35.87A60.05,60.05,0,0,1,160,156Z`}))]]),s=r.forwardRef((e,t)=>r.createElement(n,{ref:t,...e,weights:i}));s.displayName=`ArrowSquareOutIcon`;var c=s,l=r.forwardRef((e,t)=>r.createElement(n,{ref:t,...e,weights:a}));l.displayName=`RobotIcon`;var u=l,d=r.forwardRef((e,t)=>r.createElement(n,{ref:t,...e,weights:o}));d.displayName=`WrenchIcon`;var f=d;export{u as n,c as r,f as t};
|
|
2
|
-
//# sourceMappingURL=Wrench.es-rRuP3Mrh.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{i as e,r as t,s as n,t as r}from"./utils-DzstcfqT.js";import{a as i,i as a,n as o,r as s,t as c}from"./studio-DzEdCFsX.js";import{t as l}from"./badge-C3fkxijh.js";var u=n(e(),1),d=t();function f(e){let[t,n]=(0,u.useState)({});(0,u.useEffect)(()=>{let t=!1;async function r(){let r=await Promise.all(e.agents.map(async e=>{try{let t=await fetch(`/agents/${encodeURIComponent(e.id)}/runtime`);return t.ok?[e.id,await t.json()]:[e.id,void 0]}catch{return[e.id,void 0]}}));t||n(Object.fromEntries(r))}return r(),()=>{t=!0}},[e.agents]);let r=C(e.agents,t);return(0,d.jsxs)(i,{className:`grid-rows-[auto_minmax(0,1fr)]`,"aria-label":`Agents`,children:[(0,d.jsx)(a,{title:`Studio`,description:`Registered agents and the runtime capabilities exposed to Studio.`,action:(0,d.jsxs)(`div`,{className:`flex min-w-0 flex-wrap justify-end gap-2 max-sm:justify-start`,children:[(0,d.jsx)(o,{label:`agents`,value:e.agents.length}),(0,d.jsx)(o,{label:`tools`,value:r.tools}),(0,d.jsx)(o,{label:`context`,value:r.context}),(0,d.jsx)(o,{label:`prompts`,value:r.prompts})]})}),(0,d.jsx)(s,{className:`overflow-auto`,children:e.agents.length===0?(0,d.jsx)(c,{title:`No agents`,text:`Studio has no registered agents to inspect.`}):(0,d.jsx)(p,{agents:e.agents,runtimeByAgentId:t,selectedAgentId:e.selectedAgentId})})]})}function p(e){return(0,d.jsx)(`div`,{className:`min-w-[980px]`,children:(0,d.jsxs)(`table`,{className:`w-full border-separate border-spacing-0 text-left`,children:[(0,d.jsx)(`thead`,{className:`sticky top-0 z-10 bg-header backdrop-blur`,children:(0,d.jsxs)(`tr`,{children:[(0,d.jsx)(h,{children:`Agent`}),(0,d.jsx)(h,{children:`Model`}),(0,d.jsx)(h,{children:`Runtime`}),(0,d.jsx)(h,{children:`Capabilities`})]})}),(0,d.jsx)(`tbody`,{children:e.agents.map(t=>(0,d.jsx)(m,{agent:t,active:t.id===e.selectedAgentId,runtime:e.runtimeByAgentId[t.id]},t.id))})]})})}function m(e){let t=e.runtime,n=t===void 0?`Runtime unavailable`:t.model===void 0?`No model reported`:w(t.model);return(0,d.jsxs)(`tr`,{children:[(0,d.jsx)(g,{children:(0,d.jsxs)(`div`,{className:`grid min-w-0 gap-1.5`,children:[(0,d.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,d.jsx)(`span`,{className:`min-w-0 truncate text-sm font-semibold text-foreground`,children:e.agent.name??e.agent.id}),e.active?(0,d.jsx)(l,{className:y,children:`selected`}):null]}),(0,d.jsx)(`span`,{className:`min-w-0 break-all text-xs font-medium leading-5 text-muted-foreground`,children:e.agent.id}),(0,d.jsx)(`p`,{className:`m-0 max-w-[64ch] truncate text-sm leading-6 text-muted-foreground`,children:e.agent.description??`No description`})]})}),(0,d.jsx)(g,{children:(0,d.jsx)(`span`,{className:r(`block max-w-[260px] truncate text-sm leading-6`,t===void 0?`text-muted-foreground`:`text-foreground`),title:n,children:n})}),(0,d.jsx)(g,{children:t===void 0?(0,d.jsx)(`span`,{className:`text-sm leading-6 text-muted-foreground`,children:`Waiting for summary`}):(0,d.jsxs)(`div`,{className:`flex min-w-0 flex-wrap gap-2`,children:[(0,d.jsx)(_,{label:`tools`,value:t.toolCount}),(0,d.jsx)(_,{label:`mcp`,value:t.mcpToolCount}),(0,d.jsx)(_,{label:`context`,value:t.staticContextCount+t.dynamicContextCount}),(0,d.jsx)(_,{label:`observers`,value:t.observerCount}),(0,d.jsx)(_,{label:`prompts`,value:e.agent.quickPrompts.length})]})}),(0,d.jsx)(g,{children:t===void 0?(0,d.jsx)(`span`,{className:`text-sm leading-6 text-muted-foreground`,children:`Not loaded`}):(0,d.jsxs)(`div`,{className:`flex min-w-0 flex-wrap gap-2`,children:[(0,d.jsx)(v,{enabled:t.hasMemory,children:`memory`}),(0,d.jsx)(v,{enabled:t.hasLifecycle,children:`lifecycle`}),(0,d.jsx)(v,{enabled:t.hasOutputSchema,children:`schema`}),t.defaultMaxTurns===void 0?null:(0,d.jsxs)(l,{className:S,children:[t.defaultMaxTurns,` turns`]})]})})]})}function h(e){return(0,d.jsx)(`th`,{className:`border-b border-hair py-2.5 pr-5 text-xs font-semibold uppercase tracking-[0.16em] text-muted-foreground first:pl-0`,children:e.children})}function g(e){return(0,d.jsx)(`td`,{className:`border-b border-hair py-3.5 pr-5 align-top first:pl-0`,children:e.children})}function _(e){return(0,d.jsxs)(`span`,{className:`inline-flex min-h-7 items-center gap-1.5 rounded-md bg-muted px-2.5 text-xs font-medium text-muted-foreground`,children:[(0,d.jsx)(`span`,{className:`font-semibold tabular-nums text-foreground`,children:e.value}),e.label]})}function v(e){return(0,d.jsx)(l,{className:e.enabled?b:x,children:e.children})}var y=`border-hair bg-row-selected text-foreground`,b=`border-hair bg-muted text-foreground`,x=`border-transparent bg-transparent text-dim`,S=`border-hair bg-muted text-muted-foreground`;function C(e,t){return e.reduce((e,n)=>{let r=t[n.id];return e.prompts+=n.quickPrompts.length,r!==void 0&&(e.tools+=r.toolCount+r.mcpToolCount,e.context+=r.staticContextCount+r.dynamicContextCount),e},{context:0,prompts:0,tools:0})}function w(e){if(e===null)return`null`;if(typeof e==`string`||typeof e==`number`||typeof e==`boolean`)return String(e);if(Array.isArray(e))return`[${e.length}]`;if(typeof e==`object`){let t=T(e,`modelId`),n=T(e,`provider`),r=T(e,`id`)??T(e,`name`),i=t??r;return n!==void 0&&i!==void 0&&n!==i?`${n} / ${i}`:i??n??`Custom model`}return``}function T(e,t){let n=e;return typeof n[t]==`string`?n[t]:void 0}export{f as AgentsPage};
|
|
2
|
-
//# sourceMappingURL=agents-page-ByhvVYOx.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{n as e,r as t,t as n}from"./utils-DzstcfqT.js";var r=t(),i=e(`inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring`,{variants:{variant:{default:`bg-primary text-primary-foreground`,success:`bg-status-success-fill text-status-success-ink`,destructive:`bg-status-danger-fill text-status-danger-ink`}},defaultVariants:{variant:`default`}});function a({className:e,variant:t,...a}){return(0,r.jsx)(`span`,{className:n(i({variant:t,className:e})),...a})}export{a as t};
|
|
2
|
-
//# sourceMappingURL=badge-C3fkxijh.js.map
|