@axiom-lattice/react-sdk 4.11.2 → 6.0.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.
Files changed (77) hide show
  1. package/dist/{AgentDetailSideApp-GSO53ECQ.mjs → AgentDetailSideApp-QZPV7MNB.mjs} +8 -8
  2. package/dist/AgentGovernanceWorkbench-25C3AKQI.mjs +20 -0
  3. package/dist/{MessageGraph-RUU5W4OT.mjs → MessageGraph-JX6Y3VFH.mjs} +4 -4
  4. package/dist/{ReactChart-KU4TD7TM.mjs → ReactChart-LYUXL5M6.mjs} +4 -4
  5. package/dist/{SkillFlow-MLSQCF4X.mjs → SkillFlow-7OCWAF5V.mjs} +4 -4
  6. package/dist/{TasksSideApp-LWM6XAWN.mjs → TasksSideApp-TWDLVB4D.mjs} +5 -7
  7. package/dist/TasksSideApp-TWDLVB4D.mjs.map +1 -0
  8. package/dist/{TeamWorkspace-3NLKUNRK.mjs → TeamWorkspace-FGFAUD5Z.mjs} +4 -4
  9. package/dist/{TopologyRuntimeView-NVFFMHTP.mjs → TopologyRuntimeView-O3VL4A7R.mjs} +5 -5
  10. package/dist/{WorkflowAutomationView-WBVKM73F.mjs → WorkflowAutomationView-D4YMZLRJ.mjs} +7 -7
  11. package/dist/{chunk-YDIVRYML.mjs → chunk-3ZEMSWAC.mjs} +4 -4
  12. package/dist/{chunk-ZX53OESZ.mjs → chunk-466FV4VM.mjs} +3 -3
  13. package/dist/{chunk-QM3NPPQJ.mjs → chunk-6BWBE7MR.mjs} +8 -8
  14. package/dist/{chunk-PMICYMSW.mjs → chunk-7JDWJZ5M.mjs} +1176 -944
  15. package/dist/chunk-7JDWJZ5M.mjs.map +1 -0
  16. package/dist/{chunk-RDC4ZHXF.mjs → chunk-IFRTNJ2P.mjs} +2 -2
  17. package/dist/{chunk-PEEXMLMK.mjs → chunk-IODHU3BD.mjs} +3 -3
  18. package/dist/{chunk-NRT6JXPT.mjs → chunk-JJIGSAPR.mjs} +129 -222
  19. package/dist/chunk-JJIGSAPR.mjs.map +1 -0
  20. package/dist/{chunk-BXPPM4ZX.mjs → chunk-QABSNIMF.mjs} +3 -3
  21. package/dist/{chunk-ZQ7G446O.mjs → chunk-UDSGQ7R7.mjs} +3 -3
  22. package/dist/{chunk-ZXEY5OGX.mjs → chunk-UZWBRDTU.mjs} +6 -6
  23. package/dist/{embed-page-AgentDetailSideApp-FHC56ARN.js → embed-page-AgentDetailSideApp-JYVZKSUU.js} +1 -1
  24. package/dist/embed-page-AgentGovernanceWorkbench-SD2EHW2B.js +1 -0
  25. package/dist/{embed-page-MessageGraph-DMP5EZBM.js → embed-page-MessageGraph-GLQXKAVC.js} +1 -1
  26. package/dist/{embed-page-ReactChart-PYGNSRHG.js → embed-page-ReactChart-74MHCE2K.js} +1 -1
  27. package/dist/{embed-page-SkillFlow-6LPE2VG3.js → embed-page-SkillFlow-NDAK3GAD.js} +1 -1
  28. package/dist/{embed-page-TasksSideApp-MPYOPRXW.js → embed-page-TasksSideApp-DA4LUTMD.js} +5 -5
  29. package/dist/{embed-page-TeamWorkspace-EXUAXKAH.js → embed-page-TeamWorkspace-DUB3L6V6.js} +1 -1
  30. package/dist/{embed-page-TopologyRuntimeView-MH4YMU7D.js → embed-page-TopologyRuntimeView-NFBHAICN.js} +1 -1
  31. package/dist/{embed-page-WorkflowAutomationView-KQYFSLLH.js → embed-page-WorkflowAutomationView-43YGTXGF.js} +1 -1
  32. package/dist/{embed-page-chunk-O44JEYLD.js → embed-page-chunk-2PFKLMTR.js} +5 -5
  33. package/dist/{embed-page-chunk-NW37OVAX.js → embed-page-chunk-BVSC3MSO.js} +1 -1
  34. package/dist/{embed-page-chunk-YQZI5LNV.js → embed-page-chunk-C4ZV4IXK.js} +2 -2
  35. package/dist/{embed-page-chunk-QGXGVLAX.js → embed-page-chunk-DWIBLGBW.js} +1 -1
  36. package/dist/{embed-page-chunk-I7BVN6EY.js → embed-page-chunk-GKHIPXZ2.js} +1 -1
  37. package/dist/{embed-page-chunk-QHXKZNDU.js → embed-page-chunk-P477ZTUO.js} +307 -191
  38. package/dist/{embed-page-chunk-JSAUTBU5.js → embed-page-chunk-UHH575CK.js} +1 -1
  39. package/dist/{embed-page-en-PQZ2ZCEH.js → embed-page-en-GLT2HEZZ.js} +1 -1
  40. package/dist/{embed-page-zh-D3EX4GW4.js → embed-page-zh-XMEJPDMF.js} +1 -1
  41. package/dist/embed-page.js +1 -1
  42. package/dist/{en-WQVDOIB7.mjs → en-FDNQNTHX.mjs} +7 -2
  43. package/dist/{en-WQVDOIB7.mjs.map → en-FDNQNTHX.mjs.map} +1 -1
  44. package/dist/index.d.mts +24 -26
  45. package/dist/index.d.ts +24 -26
  46. package/dist/index.js +2806 -2782
  47. package/dist/index.js.map +1 -1
  48. package/dist/index.mjs +92 -222
  49. package/dist/index.mjs.map +1 -1
  50. package/dist/web-app.js +12 -2
  51. package/dist/web-app.js.map +1 -1
  52. package/dist/web-app.mjs +1 -1
  53. package/dist/{zh-6PHD4AY5.mjs → zh-2EJFFUSY.mjs} +7 -2
  54. package/dist/zh-2EJFFUSY.mjs.map +1 -0
  55. package/package.json +2 -2
  56. package/dist/AgentGovernanceWorkbench-LHXFBEYO.mjs +0 -20
  57. package/dist/TasksSideApp-LWM6XAWN.mjs.map +0 -1
  58. package/dist/chunk-NRT6JXPT.mjs.map +0 -1
  59. package/dist/chunk-PMICYMSW.mjs.map +0 -1
  60. package/dist/embed-page-AgentGovernanceWorkbench-KAPZJBE6.js +0 -5
  61. package/dist/zh-6PHD4AY5.mjs.map +0 -1
  62. /package/dist/{AgentDetailSideApp-GSO53ECQ.mjs.map → AgentDetailSideApp-QZPV7MNB.mjs.map} +0 -0
  63. /package/dist/{AgentGovernanceWorkbench-LHXFBEYO.mjs.map → AgentGovernanceWorkbench-25C3AKQI.mjs.map} +0 -0
  64. /package/dist/{MessageGraph-RUU5W4OT.mjs.map → MessageGraph-JX6Y3VFH.mjs.map} +0 -0
  65. /package/dist/{ReactChart-KU4TD7TM.mjs.map → ReactChart-LYUXL5M6.mjs.map} +0 -0
  66. /package/dist/{SkillFlow-MLSQCF4X.mjs.map → SkillFlow-7OCWAF5V.mjs.map} +0 -0
  67. /package/dist/{TeamWorkspace-3NLKUNRK.mjs.map → TeamWorkspace-FGFAUD5Z.mjs.map} +0 -0
  68. /package/dist/{TopologyRuntimeView-NVFFMHTP.mjs.map → TopologyRuntimeView-O3VL4A7R.mjs.map} +0 -0
  69. /package/dist/{WorkflowAutomationView-WBVKM73F.mjs.map → WorkflowAutomationView-D4YMZLRJ.mjs.map} +0 -0
  70. /package/dist/{chunk-YDIVRYML.mjs.map → chunk-3ZEMSWAC.mjs.map} +0 -0
  71. /package/dist/{chunk-ZX53OESZ.mjs.map → chunk-466FV4VM.mjs.map} +0 -0
  72. /package/dist/{chunk-QM3NPPQJ.mjs.map → chunk-6BWBE7MR.mjs.map} +0 -0
  73. /package/dist/{chunk-RDC4ZHXF.mjs.map → chunk-IFRTNJ2P.mjs.map} +0 -0
  74. /package/dist/{chunk-PEEXMLMK.mjs.map → chunk-IODHU3BD.mjs.map} +0 -0
  75. /package/dist/{chunk-BXPPM4ZX.mjs.map → chunk-QABSNIMF.mjs.map} +0 -0
  76. /package/dist/{chunk-ZQ7G446O.mjs.map → chunk-UDSGQ7R7.mjs.map} +0 -0
  77. /package/dist/{chunk-ZXEY5OGX.mjs.map → chunk-UZWBRDTU.mjs.map} +0 -0
@@ -1,5 +0,0 @@
1
- import{a as Pe,b as Ne,c as Ft,d as Pt,e as Mt,f as Et,g as Kt,h as Bt,i as Nt,j as Lt,k as Ot,l as _t}from"./embed-page-chunk-YQZI5LNV.js";import{a as qe}from"./embed-page-chunk-NW37OVAX.js";import"./embed-page-chunk-I7BVN6EY.js";import"./embed-page-chunk-JSAUTBU5.js";import"./embed-page-chunk-WTOAQDQN.js";import{b as Ue,e as $e,f as kt,g as Tt,h as wt,i as St,l as It,m as Rt}from"./embed-page-chunk-V2GBFWLG.js";import{a as ht,b as Ct,c as At,d as bt,e as vt}from"./embed-page-chunk-SV2BM3WO.js";import"./embed-page-chunk-S4XZPBRM.js";import"./embed-page-chunk-QGXGVLAX.js";import{$ as pt,Aa as yt,C as lt,Da as xt,F as ct,L as dt,Oa as je,X as gt,g as Fe,ka as mt,pb as Dt,ra as ut,s as rt,sa as ft}from"./embed-page-chunk-QHXKZNDU.js";import{D as Ce,r as _,y as nt}from"./embed-page-chunk-O44JEYLD.js";import{a as M}from"./embed-page-chunk-QV7QAJ4N.js";import"./embed-page-chunk-VW3NF5NT.js";import"./embed-page-chunk-QULNM5O2.js";import{$b as Be,Cb as ot,Fa as et,Ia as De,Ja as tt,La as te,Ua as at,W as Q,_ as Ie,aa as Re,ea as Ke,ka as Ge,la as Je,lc as it,ma as Qe,oa as Xe,ra as D,ta as j,wa as ze,xa as w,xc as st,ya as he}from"./embed-page-chunk-MHGVD4EV.js";import{a as ye}from"./embed-page-chunk-R5QL57JJ.js";import"./embed-page-chunk-QOWM3LMZ.js";import"./embed-page-chunk-EUOOO2LS.js";import"./embed-page-chunk-5JDQ456X.js";import{f as T}from"./embed-page-chunk-QBTAJ2YI.js";var u=T(ye());var ae=T(ye());var X=T(ye());var Vt=T(ye());var ce=T(M()),Gt=60,zt=72,He=(0,Vt.memo)(({data:n})=>{let s=Pe(n.type),g=Math.min(12+Math.sqrt(n.subAgentCount)*10,48);return(0,ce.jsxs)("div",{style:{display:"flex",flexDirection:"column",alignItems:"center"},children:[(0,ce.jsx)($e,{type:"target",position:Ue.Top,style:{left:"50%",top:"50%",transform:"translate(-50%, -50%)",background:"transparent",border:"none",width:0,height:0},isConnectable:!1}),(0,ce.jsx)("div",{title:n.label,style:{width:g,height:g,borderRadius:"50%",background:Ne(s.color),display:"flex",alignItems:"center",justifyContent:"center",color:"#fff",fontSize:Math.max(10,g*.4),fontWeight:600,cursor:"pointer",boxShadow:"0 2px 8px rgba(0,0,0,0.15)"},children:n.label.charAt(0).toUpperCase()}),(0,ce.jsx)("div",{style:{fontSize:11,maxWidth:120,textAlign:"center",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",marginTop:4},children:n.label}),(0,ce.jsx)($e,{type:"source",position:Ue.Top,style:{left:"50%",top:"50%",transform:"translate(-50%, -50%)",background:"transparent",border:"none",width:0,height:0},isConnectable:!1})]})});He.displayName="AgentGraphNode";var ne=T(M()),ln=({assistants:n,onNodeClick:s})=>{let[g,r,d]=wt([]),[i,e,h]=St([]),[f,l]=(0,X.useState)(null),k=(0,X.useMemo)(()=>({agent:He}),[]),O=(0,X.useMemo)(()=>Mt(n),[n]);(0,X.useEffect)(()=>{let C=O.nodes.map(o=>({id:o.id})),R=O.edges.map(o=>({source:o.source,target:o.target})),K=new Map(O.nodes.map(o=>[o.id,o])),W=bt(C).force("link",At(R).id(o=>o.id).distance(80)).force("charge",vt().strength(-220)).force("center",ht(0,0)).force("collide",Ct(45)).stop();for(let o=0;o<300;o++)W.tick();let $=C.map(o=>({id:o.id,type:"agent",data:K.get(o.id),position:{x:o.x-Gt/2,y:o.y-zt/2}})),F=O.edges.map(o=>({id:`e${o.source}-${o.target}`,source:o.source,target:o.target,style:{stroke:"#1677ff",strokeWidth:2},type:"straight"}));r($),e(F)},[O,r,e]);let G=(0,X.useMemo)(()=>f===null?g:g.map(C=>{let R=C.id===f||i.some(K=>K.source===f&&K.target===C.id||K.target===f&&K.source===C.id);return{...C,style:{opacity:R?1:.2,transition:"opacity 0.2s ease"}}}),[g,i,f]),p=(0,X.useMemo)(()=>f===null?i.map(C=>({...C,style:{stroke:"#1677ff",strokeWidth:1.5,opacity:.25,transition:"opacity 0.2s ease"}})):i.map(C=>{let R=C.source===f||C.target===f;return{...C,style:{stroke:"#1677ff",strokeWidth:R?2.5:1,opacity:R?1:.04,transition:"opacity 0.2s ease"}}}),[i,f]);return(0,ne.jsx)("div",{style:{width:"100%",height:"100%",background:"#fafafa",position:"relative"},children:(0,ne.jsxs)(Tt,{nodes:G,edges:p,onNodesChange:d,onEdgesChange:h,onNodeMouseEnter:(C,R)=>l(R.id),onNodeMouseLeave:()=>l(null),onNodeClick:(C,R)=>s?.(String(R.id)),nodeTypes:k,fitView:!0,fitViewOptions:{padding:.25},children:[(0,ne.jsx)(It,{color:"#eee",gap:20}),(0,ne.jsx)(Rt,{})]})})},jt=n=>(0,ne.jsx)(kt,{children:(0,ne.jsx)(ln,{...n})});var E=T(M()),cn=(n,s)=>{if(!n)return"\u2014";let g=Date.now()-new Date(n).getTime(),r=Math.floor(g/6e4);if(r<1)return s?s("common.time.justNow"):"just now";if(r<60)return s?s("common.time.minutesAgo",{count:r}):`${r}m ago`;let d=Math.floor(r/60);if(d<24)return s?s("common.time.hoursAgo",{count:d}):`${d}h ago`;let i=Math.floor(d/24);return s?s("common.time.daysAgo",{count:i}):`${i}d ago`},dn=n=>n===null?"#d9d9d9":n>=80?"#22c55e":n>=50?"#f59e0b":"#ef4444",gn=ut(({css:n})=>({row:n`
2
- display: flex;
3
- justify-content: space-between;
4
- align-items: flex-end;
5
- `})),Ut={fontSize:16,fontWeight:700,lineHeight:1.2,cursor:"help"},We={fontSize:10,color:"rgba(0, 0, 0, 0.45)",whiteSpace:"nowrap",marginTop:1},Ze={display:"flex",flexDirection:"column",alignItems:"center"},$t=({stats:n})=>{let{styles:s}=gn(),g=_();if(!n)return(0,E.jsxs)("div",{style:{display:"flex",fontSize:11,color:"#d9d9d9"},children:[(0,E.jsx)("span",{style:{flex:1},children:g("governance.cardStats.scoreEmpty")}),(0,E.jsx)("span",{style:{flex:1},children:g("governance.cardStats.threadsEmpty")})]});let r=n.evalScore!==null?Number(n.evalScore).toFixed(1):"\u2014",d=n.threadCount>0?n.threadCount:"\u2014",i=dn(n.evalScore),e=n.evalPassRate!==null?`${n.evalPassRate}%`:"\u2014";return(0,E.jsxs)("div",{className:s.row,children:[(0,E.jsxs)("div",{style:{display:"flex",gap:16,alignItems:"flex-end"},children:[(0,E.jsx)(Re,{title:g("governance.cardStats.evalTooltip",{score:r,passRate:e,runs:n.evalRuns}),children:(0,E.jsxs)("div",{style:Ze,children:[(0,E.jsx)("span",{style:{...Ut,color:i},children:r}),(0,E.jsx)("span",{className:"lattice-stat-label",style:We,children:g("governance.cardStats.evalScore")})]})}),(0,E.jsx)(Re,{title:n.lastActive?g("governance.cardStats.conversationsTooltipActive",{total:n.threadCount,last7d:n.last7d,last30d:n.last30d,lastActive:cn(n.lastActive,g)}):g("governance.cardStats.conversationsTooltip",{total:n.threadCount,last7d:n.last7d,last30d:n.last30d}),children:(0,E.jsxs)("div",{style:Ze,children:[(0,E.jsx)("span",{style:{...Ut,color:d==="\u2014"?"#d9d9d9":"#595959"},children:d}),(0,E.jsx)("span",{className:"lattice-stat-label",style:We,children:g("governance.cardStats.threads")})]})})]}),n.daily7d.length>0&&(0,E.jsxs)("div",{style:Ze,children:[(0,E.jsx)(Et,{values:n.daily7d,width:40,height:24,color:"#8c8c8c"}),(0,E.jsx)("span",{className:"lattice-stat-label",style:We,children:g("governance.cardStats.threads7d")})]})]})};var x=T(M()),pn=[{key:"all",labelKey:"governance.list.tab.all"},{key:"capability",labelKey:"governance.list.tab.capability"},{key:"orchestrator",labelKey:"governance.list.tab.orchestrator"},{key:"team",labelKey:"governance.list.tab.team"},{key:"workflow",labelKey:"governance.list.tab.workflow"}],qt=({items:n,assistants:s=[],stats:g,loading:r,onItemClick:d,onOpenPlayground:i,onOpenEval:e,onCreate:h,onDelete:f})=>{let l=_(),[k,O]=(0,ae.useState)("all"),[G,p]=(0,ae.useState)(null),[C,R]=(0,ae.useState)(null),K=(0,ae.useMemo)(()=>{let o=new Set;return n.forEach(P=>P.tags.forEach(ie=>o.add(ie))),Array.from(o).map(P=>({value:P,label:P}))},[n]),W=(0,ae.useMemo)(()=>n.filter(o=>!(k!=="all"&&o.type!==k||G&&!o.tags.includes(G)||C&&o.status!==C)),[n,k,G,C]),$=[{key:"edit",icon:pt,label:l("common.edit"),onClick:o=>d(o.id)},{key:"playground",icon:rt,label:l("governance.list.action.playground"),onClick:o=>i(o.id)},{key:"eval",icon:ct,label:l("governance.list.action.eval"),onClick:o=>e(o.id)}];f&&$.push({key:"delete",icon:mt,label:l("common.delete"),danger:!0,onClick:o=>f(o.id)});let F=(0,ae.useMemo)(()=>[{mode:"graph",icon:gt,label:l("governance.list.viewMode.graph"),render:()=>(0,x.jsx)(jt,{assistants:s,onNodeClick:d})}],[s,d,l]);return(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)("span",{"data-testid":"agent-list-state","data-loading":String(r),"data-count":W.length,hidden:!0,"aria-hidden":"true"}),(0,x.jsx)(yt,{title:l("governance.list.title"),itemName:"common.item.agent",items:W,loading:r,keyExtractor:o=>o.id,tabs:pn.map(o=>({key:o.key,label:l(o.labelKey)})),activeTab:k,onTabChange:o=>O(o),headerLeft:(0,x.jsxs)("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[(0,x.jsx)(je,{value:G,onChange:p,options:K,placeholder:l("governance.list.filter.domain"),allLabel:l("governance.list.filter.allDomains")}),(0,x.jsx)(je,{value:C,onChange:R,options:[{value:"enabled",label:l("governance.list.status.enabled")},{value:"draft",label:l("governance.list.status.draft")},{value:"disabled",label:l("governance.list.status.disabled")}],placeholder:l("governance.list.filter.status"),allLabel:l("governance.list.filter.allStatuses")})]}),renderIcon:o=>{let P=Ne(Pe(o.type).color);return(0,x.jsx)("div",{title:l("governance.list.typeIconTitle",{type:o.type}),style:{width:32,height:32,borderRadius:8,background:`${P}1A`,color:P,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:(0,x.jsx)(Fe,{size:18})})},renderPrimary:o=>(0,x.jsx)("span",{"data-testid":"agent-name","data-agent-id":o.id,children:o.name}),renderSecondary:o=>o.description||void 0,renderDetails:o=>(0,x.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:8,flexWrap:"wrap"},children:[(0,x.jsxs)("div",{style:{display:"flex",gap:4,flexWrap:"wrap",alignItems:"center"},children:[o.tags.map(P=>(0,x.jsx)(De,{color:"magenta",style:{margin:0,borderRadius:10,border:"none"},children:P},P)),(0,x.jsx)(De,{color:Pe(o.type).color,style:{margin:0,borderRadius:10,border:"none"},children:o.type})]}),(0,x.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,flexShrink:0},children:[(0,x.jsx)(Re,{title:l("governance.list.statusTooltip",{status:o.status}),children:(0,x.jsx)("span",{style:{width:8,height:8,borderRadius:"50%",background:Ft(o.status),display:"inline-block",cursor:"help"}})}),(0,x.jsx)("span",{style:{fontSize:12,color:"#8c8c8c"},children:o.version})]})]}),renderFooter:o=>(0,x.jsx)("div",{style:{borderTop:"1px dashed #f0f0f0",paddingTop:10},children:(0,x.jsx)($t,{stats:g?.[o.id]})}),itemActions:$,actionsStyle:"icon",actionsPosition:"hover",onItemClick:o=>d(o.id),createLabel:l("governance.list.create"),onCreateClick:h,viewModeExtensions:F,emptyIcon:(0,x.jsx)(Fe,{size:48,style:{opacity:.5}}),emptyTitle:l("governance.list.emptyTitle"),emptyDescription:l("governance.list.emptyDescription")})]})};var b=T(ye());var de=T(ye());var Ae=T(M()),{Text:mn}=te,Ht=({onSelect:n,value:s,placeholder:g})=>{let r=_(),d=g??r("chatConfig.parentAgent.selectPlaceholder"),[i,e]=(0,de.useState)([]),[h,f]=(0,de.useState)(!1),{get:l}=Ce(),k=(0,de.useCallback)(async()=>{f(!0);try{let p=await l("/api/assistants");p.success&&e(p.data?.records||[])}catch(p){console.error("Failed to fetch assistants:",p)}finally{f(!1)}},[l]);return(0,de.useEffect)(()=>{k()},[k]),(0,Ae.jsx)(Ie,{showSearch:!0,allowClear:!0,value:s,placeholder:d,loading:h,onChange:p=>{if(!p){n(null);return}let C=i.find(R=>R.id===p);n(C||null)},onDropdownVisibleChange:p=>{p&&k()},optionFilterProp:"label",style:{width:"100%"},options:i.map(p=>({value:p.id,label:p.name||p.id,description:p.description})),optionRender:p=>(0,Ae.jsxs)("div",{children:[(0,Ae.jsx)("div",{children:p.label}),p.data.description&&(0,Ae.jsx)(mn,{type:"secondary",style:{fontSize:12},children:p.data.description})]})})};var L=T(M()),{Text:Wt}=te,Zt=({subAgentKeys:n,decisions:s,onChange:g})=>{let{token:r}=tt.useToken(),d=_(),i=(h,f)=>{let l=s.map(k=>k.originalKey===h?{...k,clone:f,cloneKey:f?`${h}_clone`:void 0}:k);g(l)},e=(h,f)=>{let l=s.map(k=>k.originalKey===h?{...k,cloneKey:f}:k);g(l)};return n.length===0?null:(0,L.jsxs)("div",{children:[(0,L.jsx)(Wt,{type:"secondary",style:{display:"block",marginBottom:8},children:d("chatConfig.subAgentInherit.hint")}),(0,L.jsx)(ze,{size:"small",bordered:!0,dataSource:s,style:{borderRadius:r.borderRadius},renderItem:h=>(0,L.jsxs)(ze.Item,{style:{display:"flex",flexDirection:"column",alignItems:"stretch",gap:8,padding:"8px 16px"},children:[(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[h.clone?(0,L.jsx)(Be,{style:{color:r.colorPrimary}}):(0,L.jsx)(it,{style:{color:r.colorTextSecondary}}),(0,L.jsx)(Wt,{style:{fontFamily:"monospace"},children:h.originalKey})]}),(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,L.jsx)(De,{color:h.clone?"blue":"default",children:h.clone?d("chatConfig.subAgentInherit.clone"):d("chatConfig.subAgentInherit.reuse")}),(0,L.jsx)(et,{size:"small",checked:h.clone,onChange:f=>i(h.originalKey,f)})]})]}),h.clone&&(0,L.jsx)(j,{size:"small",placeholder:d("chatConfig.subAgentInherit.cloneKeyPlaceholder"),value:h.cloneKey,onChange:f=>e(h.originalKey,f.target.value),style:{fontFamily:"monospace",fontSize:12},addonBefore:d("chatConfig.keyValue.key")})]})})]})};function Yt(n,s){return n.mode!=="local"||n.templateKey||typeof n.executable=="string"&&n.executable.trim().length>0?null:s?s("chat.config.executableRequired"):"Choose a template or enter a custom executable"}var a=T(M()),{TextArea:Jt}=j,{Text:oe}=te,Qt="/.well-known/agent-card.json",un=[{value:"http://",label:"http://"},{value:"https://",label:"https://"}],fn={react:"chatConfig.createAssistant.typeDesc.react",deep_agent:"chatConfig.createAssistant.typeDesc.deepAgent",team:"chatConfig.createAssistant.typeDesc.team",processing:"chatConfig.createAssistant.typeDesc.processing",a2a_remote:"chatConfig.createAssistant.typeDesc.a2aRemote"};function Xt(n,s,g="https://"){let r=String(n??"").trim();if(!r)return"";let d=s==="http://"||s==="https://"?s:g,e=(/^https?:\/\//i.test(r)?r:`${d}${r.replace(/^\/+/,"")}`).replace(/\/+$/,"");return e.endsWith(Qt)?e:`${e}${Qt}`}function yn(n){try{return new URL(n).port||void 0}catch{return}}function hn(n){return n.some(s=>s==="--port"||s==="-p"||/^--port=/.test(s)||/^-p=/.test(s))}function en(n,s){let g=[...n.args],r=yn(s);return r&&!hn(g)&&g.push("--port",r),{...n,args:g,...n.env?{env:{...n.env}}:{}}}var tn=({open:n,onCancel:s,onSuccess:g,initialMode:r,initialValues:d})=>{let[i]=D.useForm(),e=_(),[h,f]=(0,b.useState)(!1),[l,k]=(0,b.useState)("learn"),[O,G]=(0,b.useState)(""),[p,C]=(0,b.useState)(null),[R,K]=(0,b.useState)([]),W=D.useWatch("type",i)||"react",$=W==="a2a_remote",[F,o]=(0,b.useState)("remote"),[P,ie]=(0,b.useState)(void 0),[ge,be]=(0,b.useState)([]),[pe,me]=(0,b.useState)(!1),Y=(0,b.useRef)(0),[Le,ve]=(0,b.useState)(!1),[Oe,se]=(0,b.useState)(!1),{get:J,post:Z,put:_e}=Ce(),Me=nt("agent-architect"),{workspaceId:z,trainingProjects:ue,loading:ee}=ft(),[Ve,fe]=(0,b.useState)(null),xe=JSON.stringify(d??null),B=ue.find(t=>t.id===Ve)??ue[0]??null,[ke,Te]=(0,b.useState)([]),Ee=(0,b.useCallback)(()=>{C(null),K([])},[]),re=(0,b.useCallback)(()=>{i.resetFields(),Ee(),k("learn"),G(""),Te([]),fe(null),o("remote"),ie(void 0),be([]),se(!1),ve(!1)},[i,Ee]);(0,b.useEffect)(()=>{if(n){re(),k(r??"learn");let t=d?.a2aMode;(t==="remote"||t==="local")&&o(t),i.setFieldsValue({type:"react",agentCardProtocol:"https://",a2aMode:"remote",timeout:3e5,...d})}},[n,i,r,xe,re]),(0,b.useEffect)(()=>{let t=++Y.current,c=!0;return n&&$?(i.setFieldValue("prompt",""),F==="local"?(me(!0),J("/api/local-a2a/templates").then(v=>{c&&t===Y.current&&v?.data?.records&&be(v.data.records)}).catch(()=>{c&&t===Y.current&&be([])}).finally(()=>{c&&t===Y.current&&me(!1)})):me(!1)):me(!1),()=>{c=!1,Y.current+=1}},[i,$,F,J,n]);let le=ge.find(t=>t.key===P),we=(0,b.useCallback)(()=>{let t=Yt({mode:F,templateKey:P,executable:i.getFieldValue("commandExecutable")},e);return t?(se(!0),i.setFields([{name:"commandExecutable",errors:[t]}]),w.warning(t),!1):!0},[F,P,i,e]);(0,b.useEffect)(()=>{le&&i.setFieldsValue({agentCardProtocol:"http://"})},[i,le]);let m=(0,b.useCallback)(async()=>{if(!we())return;let t=Xt(i.getFieldValue("agentCardUrl"),i.getFieldValue("agentCardProtocol"),F==="local"?"http://":"https://");if(!t){w.warning(e("chatConfig.createAssistant.a2aUrlWarning"));return}ve(!0);try{let c={agentCardUrl:t,apiKey:i.getFieldValue("apiKey")};if(F==="local"){let y=le;if(y)c.localRuntime={label:i.getFieldValue("name")||void 0,agentCardUrl:t,command:en(y.command,t)};else{let N=i.getFieldValue("commandArgs")||"",H=N?N.split(/\s+/).filter(Boolean):[],I=String(i.getFieldValue(["command","cwd"])||"").trim();c.localRuntime={label:i.getFieldValue("name")||void 0,agentCardUrl:t,command:{executable:String(i.getFieldValue("commandExecutable")||"").trim(),args:H,...I?{cwd:I}:{}}}}}let v=await Z("/api/a2a/test-connection",c);if(v.data?.reachable){let y=v.data.agentCard;w.success(e("chatConfig.createAssistant.connectedTo",{name:v.data.agentName||t}))}else w.error(v.data?.error||e("chatConfig.createAssistant.connectionFailed"))}catch{w.error(e("chatConfig.createAssistant.connectionTestFailed"))}finally{ve(!1)}},[i,Z,F,le,we,e]),A=(0,b.useCallback)(t=>{if(C(t),!t){i.resetFields(["key","name","description","type","prompt"]),K([]);return}let c=typeof t.graphDefinition=="object"&&t.graphDefinition!==null?t.graphDefinition:{},v=c.key||t.id,y=t.name||c.name||"";i.setFieldsValue({key:`${v}_ext`,name:y?`${y} (Extended)`:"",description:t.description||c.description||"",type:c.type||"react",prompt:c.prompt||""});let N=c.subAgents||[];K(N.map(H=>({originalKey:H,clone:!1})))},[i]),S=async(t,c)=>{let v=await J(`/api/assistants/${t}`);if(!v.success)throw new Error(e("chatConfig.createAssistant.cloneFetchFailed",{key:t}));let y=v.data,N=typeof y.graphDefinition=="object"?y.graphDefinition:{},H={id:c,name:`${y.name} (Clone)`,description:y.description||"",graphDefinition:{...N,key:c,name:`${y.name} (Clone)`}},I=await Z("/api/assistants",H);if(!I.success)throw new Error(I.message||e("chatConfig.createAssistant.cloneFailed",{key:t}));return I.data},q=t=>{let c={id:t.key,name:t.name,description:t.description||"",graphDefinition:{key:t.key,name:t.name,description:t.description||"",type:t.type,prompt:t.prompt||"",tools:[],skills:[],subAgents:t.type==="deep_agent"||t.type==="processing"?[]:void 0,middleware:[]}};if(t.type==="a2a_remote"&&(c.graphDefinition.agentCardUrl=Xt(t.agentCardUrl,t.agentCardProtocol,(t.a2aMode||F)==="local"?"http://":"https://"),t.apiKey&&(c.graphDefinition.apiKey=t.apiKey),t.timeout&&(c.graphDefinition.timeout=t.timeout),(t.a2aMode||F)==="local")){let v=le;if(v)c.graphDefinition.localRuntime={label:t.name||void 0,agentCardUrl:c.graphDefinition.agentCardUrl,command:en(v.command,c.graphDefinition.agentCardUrl)};else{let y=t.commandArgs||"",N=y?y.split(/\s+/).filter(Boolean):[],H=String(t.command?.cwd||"").trim();c.graphDefinition.localRuntime={label:t.name||void 0,agentCardUrl:c.graphDefinition.agentCardUrl,command:{executable:String(t.commandExecutable||"").trim(),args:N,...H?{cwd:H}:{}}}}}return c},Se=async(t,c)=>{if(!p)throw new Error(e("chatConfig.createAssistant.noParentAgent"));let v=R.filter(I=>I.clone);for(let I of v){if(!I.cloneKey||!I.cloneKey.trim())throw new Error(e("chatConfig.createAssistant.cloneKeyRequired",{key:I.originalKey}));if(!/^[a-zA-Z][a-zA-Z0-9_-]*$/.test(I.cloneKey))throw new Error(e("chatConfig.createAssistant.cloneKeyInvalid",{key:I.cloneKey,originalKey:I.originalKey}))}let y=[];for(let I of R)if(I.clone){let rn=await S(I.originalKey,I.cloneKey);c.push(rn),y.push(I.cloneKey)}else y.push(I.originalKey);let N=typeof p.graphDefinition=="object"?p.graphDefinition:{},H={key:t.key,name:t.name,description:t.description||"",extendsAgent:p.id,type:t.type||N.type};return t.prompt&&t.prompt!==N.prompt&&(H.prompt=t.prompt),(y.length>0||N.subAgents&&N.subAgents.length>0)&&(H.subAgents=y),{id:t.key,name:t.name,description:t.description||"",graphDefinition:H}},on=async()=>{if(l==="learn"){let t=O.trim();if(!t){w.error(e("chatConfig.createAssistant.trainingGoalRequired"));return}if(!B){w.error(e("chatConfig.createAssistant.noTrainingProject"));return}f(!0);try{let c=`agent-${Bt(t+Date.now())}`,v=await Z("/api/assistants",{id:c,name:c,graphDefinition:{key:c,name:c,description:"",type:"react",prompt:"To be trained",metadata:{trainingProjectId:B.id,learningPlaceholder:"true",architectureStatus:"undecided"}}});if(!v.data)throw new Error(e("chatConfig.createAssistant.agentCreateFailed"));let{roundTaskId:y}=await Lt({goal:t,targetAgentId:c,workspaceId:z??void 0,projectId:B.id,existingThreadId:Nt(Me.tenantId,c),files:ke,post:Z,put:_e});w.success(e("chatConfig.createAssistant.agentCreated")),G(""),Te([]),k("learn"),g?.(v.data,{initialMessage:Ot({goal:t,roundTaskId:y,targetAgentId:c,targetMode:"placeholder",files:ke,projectId:B.id,workspaceId:B.workspaceId??z??void 0}),projectId:B.id,initialMessageCustomRunConfig:{execution:{taskId:y}}}),s()}catch(c){w.error(c instanceof Error?c.message:e("chatConfig.createAssistant.agentCreateFailed"))}finally{f(!1)}return}try{if(l==="scratch"&&$&&!we())return;let t=await i.validateFields();f(!0);let c=[],v=l==="scratch"?q(t):await Se(t,c),y=await Z("/api/assistants",v);if(y.success){w.success(l==="extend"?e("chatConfig.createAssistant.createdByExtending",{name:p?.name??""}):e("chatConfig.createAssistant.created")),re();for(let N of c)g?.(N);g?.(y.data),s()}else w.error(y.message||e("chatConfig.createAssistant.createFailed"))}catch(t){if(t?.errorFields){let c={key:e("chatConfig.createAssistant.field.key"),name:e("chatConfig.createAssistant.field.name"),description:e("chatConfig.createAssistant.field.description"),prompt:e("chatConfig.createAssistant.field.systemPrompt")},v=t.errorFields.map(y=>c[String((y.name??[])[0])]??String((y.name??[])[0])).filter(Boolean);w.warning(v.length>0?e("chatConfig.createAssistant.requiredFields",{fields:[...new Set(v)].join(", ")}):e("chatConfig.createAssistant.requiredFieldsGeneric"));return}w.error(t.message||e("chatConfig.createAssistant.createError"))}finally{f(!1)}},Ye=p?.graphDefinition?.subAgents||[],sn=l==="extend"&&p&&Ye.length>0;return(0,a.jsxs)(he,{title:e("chatConfig.createAssistant.title"),open:n,onCancel:()=>{re(),s()},footer:[(0,a.jsx)(Q,{onClick:()=>{re(),s()},children:e("common.cancel")},"cancel"),(0,a.jsx)(Q,{type:"primary",icon:l==="extend"?(0,a.jsx)(Be,{}):l==="learn"?(0,a.jsx)(ot,{}):(0,a.jsx)(st,{}),loading:h,disabled:l==="learn"&&(ee||!B),onClick:on,children:e(l==="extend"?"chatConfig.createAssistant.createExtend":l==="learn"?"chatConfig.createAssistant.startLearning":"common.create")},"submit")],width:760,children:[l==="extend"&&(0,a.jsxs)("div",{style:{marginBottom:20},children:[(0,a.jsx)(oe,{type:"secondary",style:{display:"block",marginBottom:8},children:e("chatConfig.createAssistant.parentAgent")}),(0,a.jsx)(Ht,{value:p?.id,onSelect:A}),p&&(0,a.jsx)(oe,{type:"secondary",style:{display:"block",marginTop:4,fontSize:12},children:e("chatConfig.createAssistant.inheritHint")})]}),l==="extend"&&p&&(0,a.jsx)(Ge,{style:{margin:"12px 0"}}),l==="learn"&&(0,a.jsxs)("div",{children:[(0,a.jsx)(oe,{style:{display:"block",marginBottom:8},children:e("chatConfig.createAssistant.learnHint")}),(0,a.jsx)(j.TextArea,{rows:3,value:O,onChange:t=>G(t.target.value),placeholder:"e.g. Handle price disputes using the price protection policy"}),B&&(0,a.jsxs)("div",{style:{marginTop:12},children:[(0,a.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:12,marginBottom:8},children:[(0,a.jsx)(oe,{type:"secondary",children:e("chatConfig.createAssistant.referenceFiles")}),(0,a.jsx)(qe,{project:B,projects:ue,value:B?.id??null,onChange:fe,loading:ee})]}),(0,a.jsx)(Kt,{projectId:B.id,value:ke,onChange:Te}),(0,a.jsx)(oe,{type:"secondary",style:{display:"block",marginTop:6,fontSize:12},children:e("chatConfig.createAssistant.referenceFilesHint")})]}),!B&&!ee&&(0,a.jsx)("div",{style:{marginTop:12},children:(0,a.jsx)(qe,{project:B,projects:ue,value:null,onChange:fe,loading:ee})})]}),l!=="learn"&&(0,a.jsxs)(D,{form:i,layout:"vertical",autoComplete:"off",initialValues:{type:"react",agentCardProtocol:"https://",a2aMode:"remote"},children:[(0,a.jsx)(D.Item,{name:"key",label:e("chatConfig.createAssistant.field.key"),rules:[{required:!0,message:e("chatConfig.createAssistant.validation.keyRequired")},{pattern:/^[a-zA-Z][a-zA-Z0-9_-]*$/,message:e("chatConfig.createAssistant.validation.keyPattern")}],style:{marginBottom:16},children:(0,a.jsx)(j,{placeholder:"e.g., my_assistant"})}),(0,a.jsx)(D.Item,{name:"name",label:e("chatConfig.createAssistant.field.name"),rules:[{required:!0,message:e("chatConfig.createAssistant.validation.nameRequired")}],style:{marginBottom:16},children:(0,a.jsx)(j,{placeholder:"e.g., My Assistant"})}),(0,a.jsx)(D.Item,{name:"description",label:e("chatConfig.createAssistant.field.description"),rules:[{required:!0,message:e("chatConfig.createAssistant.validation.descriptionRequired")}],style:{marginBottom:16},children:(0,a.jsx)(Jt,{placeholder:e("chatConfig.createAssistant.descriptionPlaceholder"),autoSize:{minRows:2,maxRows:4}})}),(0,a.jsx)(D.Item,{name:"type",label:e("chatConfig.createAssistant.field.agentType"),rules:[{required:!0}],style:{marginBottom:16},children:(0,a.jsx)(Je,{options:[{value:"react",label:e("chatConfig.agentType.executor")},{value:"deep_agent",label:e("chatConfig.agentType.orchestrator")},{value:"team",label:e("chatConfig.agentType.team")},{value:"processing",label:e("chatConfig.agentType.workflow")},{value:"a2a_remote",label:e("chatConfig.agentType.a2aRemote")}],block:!0})}),(0,a.jsx)(oe,{type:"secondary",style:{fontSize:12,display:"block",marginTop:-12,marginBottom:16,lineHeight:1.5},children:e(fn[W]??"chatConfig.createAssistant.typeDesc.react")}),$&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(D.Item,{label:e("chatConfig.createAssistant.field.connectionMode"),style:{marginBottom:16},children:(0,a.jsxs)(Ke.Group,{value:F,onChange:t=>{let c=t.target.value;o(c),i.setFieldValue("a2aMode",c),c==="local"&&i.setFieldValue("agentCardProtocol","http://"),ie(void 0)},optionType:"button",buttonStyle:"solid",children:[(0,a.jsx)(Ke.Button,{value:"remote",children:e("chatConfig.createAssistant.mode.remoteUrl")}),(0,a.jsx)(Ke.Button,{value:"local",children:e("chatConfig.createAssistant.mode.localManaged")})]})}),(0,a.jsx)(D.Item,{name:"a2aMode",noStyle:!0,hidden:!0,children:(0,a.jsx)(j,{})}),F==="local"&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(D.Item,{label:e("chatConfig.createAssistant.field.template"),style:{marginBottom:16},children:(0,a.jsx)(Ie,{placeholder:e("chatConfig.createAssistant.templatePlaceholder"),allowClear:!0,loading:pe,value:P,onChange:t=>{ie(t),t&&se(!1)},options:ge.map(t=>({value:t.key,label:t.name||t.key})),notFoundContent:pe?void 0:(0,a.jsx)(oe,{type:"secondary",style:{padding:8,display:"block"},children:e("chatConfig.createAssistant.noTemplates")})})}),!P&&(0,a.jsx)(a.Fragment,{children:Oe?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(D.Item,{name:"commandExecutable",label:e("chatConfig.createAssistant.field.executable"),rules:[{required:!0,whitespace:!0,message:e("chatConfig.createAssistant.validation.executableRequired")}],style:{marginBottom:16},children:(0,a.jsx)(j,{placeholder:"e.g. node, opencode, /usr/local/bin/my-server"})}),(0,a.jsx)(D.Item,{name:"commandArgs",label:e("chatConfig.createAssistant.field.arguments"),style:{marginBottom:16},children:(0,a.jsx)(j,{placeholder:"e.g. --serve --port 4301"})}),(0,a.jsx)(D.Item,{name:["command","cwd"],label:e("chatConfig.createAssistant.field.workingDirectory"),style:{marginBottom:16},children:(0,a.jsx)(j,{placeholder:"e.g. /Users/me/project"})}),(0,a.jsx)(Q,{type:"link",onClick:()=>{se(!1),i.setFieldsValue({commandExecutable:"",commandArgs:"",command:{cwd:void 0}})},style:{padding:0,marginBottom:16,display:"block"},children:e("chatConfig.createAssistant.hideCustomCommand")})]}):(0,a.jsx)(Q,{type:"link",onClick:()=>se(!0),style:{padding:0,marginBottom:16,display:"block"},children:e("chatConfig.createAssistant.customCommand")})})]}),(0,a.jsx)(D.Item,{label:e("chatConfig.createAssistant.field.agentCardUrl"),required:!0,style:{marginBottom:16},children:(0,a.jsxs)(Xe.Compact,{style:{width:"100%"},children:[(0,a.jsx)(D.Item,{name:"agentCardProtocol",noStyle:!0,children:(0,a.jsx)(Ie,{style:{width:100},options:un})}),(0,a.jsx)(D.Item,{name:"agentCardUrl",noStyle:!0,rules:[{required:!0,message:e("chatConfig.createAssistant.validation.urlRequired")}],children:(0,a.jsx)(j,{placeholder:F==="local"?"localhost:4301":"host:port or full URL"})}),(0,a.jsx)(Q,{icon:(0,a.jsx)(at,{}),onClick:m,loading:Le,children:e("chatConfig.connection.action.test")})]})}),F==="remote"&&(0,a.jsx)(D.Item,{name:"apiKey",label:e("chatConfig.createAssistant.field.apiKeyOptional"),style:{marginBottom:16},children:(0,a.jsx)(j.Password,{placeholder:e("chatConfig.createAssistant.apiKeyPlaceholder")})}),(0,a.jsx)(D.Item,{name:"timeout",label:e("chatConfig.createAssistant.field.timeout"),style:{marginBottom:16},initialValue:3e5,children:(0,a.jsx)(Qe,{min:1e3,max:36e5,style:{width:"100%"},placeholder:"300000"})})]}),!$&&(0,a.jsx)(D.Item,{name:"prompt",label:e(l==="extend"&&p?"chatConfig.createAssistant.field.systemPromptInherit":"chatConfig.createAssistant.field.systemPrompt"),rules:l==="scratch"?[{required:!0,message:e("chatConfig.createAssistant.validation.systemPromptRequired")}]:[],children:(0,a.jsx)(Jt,{placeholder:e(l==="extend"&&p?"chatConfig.createAssistant.systemPromptInheritPlaceholder":"chatConfig.createAssistant.systemPromptPlaceholder"),autoSize:{minRows:4,maxRows:8},style:{fontFamily:"monospace",fontSize:13,lineHeight:1.6}})})]}),sn&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(Ge,{style:{margin:"12px 0"}}),(0,a.jsx)(oe,{strong:!0,style:{display:"block",marginBottom:8},children:e("chatConfig.createAssistant.subAgents")}),(0,a.jsx)(Zt,{subAgentKeys:Ye,decisions:R,onChange:K})]})]})};var V=T(M()),{Paragraph:Cn,Text:nn}=te,An=[{key:"manual",icon:Fe,titleKey:"governance.creation.manual.title",descriptionKey:"governance.creation.manual.description"},{key:"external",icon:lt,titleKey:"governance.creation.external.title",descriptionKey:"governance.creation.external.description"},{key:"learn",icon:dt,titleKey:"governance.creation.learn.title",descriptionKey:"governance.creation.learn.description"}],an=({open:n,onCancel:s,onSelectMethod:g,focusTriggerAfterClose:r=!0})=>{let d=_();return(0,V.jsx)(he,{title:d("governance.creation.title"),open:n,onCancel:s,footer:null,width:560,centered:!0,destroyOnHidden:!0,focusTriggerAfterClose:r,children:(0,V.jsxs)("div",{style:{padding:"8px 4px 4px"},children:[(0,V.jsx)(Cn,{style:{color:"#595959",fontSize:15,margin:"8px 0 24px"},children:d("governance.creation.subtitle")}),(0,V.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:12},children:An.map(i=>{let e=i.icon,h=d(i.titleKey);return(0,V.jsxs)(Q,{type:"default",onClick:()=>g(i.key),"aria-label":h,style:{display:"flex",flexDirection:"row",alignItems:"center",gap:16,width:"100%",minHeight:88,height:"auto",padding:16,borderRadius:16,textAlign:"left",whiteSpace:"normal"},children:[(0,V.jsx)("div",{style:{width:40,height:40,borderRadius:12,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,color:"#6366f1",background:"#eeeeff"},children:(0,V.jsx)(e,{size:19})}),(0,V.jsxs)("div",{style:{minWidth:0},children:[(0,V.jsx)(nn,{strong:!0,style:{display:"block",fontSize:15,marginBottom:3},children:h}),(0,V.jsx)(nn,{style:{color:"#737373",lineHeight:1.5},children:d(i.descriptionKey)})]})]},i.key)})}),(0,V.jsx)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,flexWrap:"wrap",marginTop:24},children:(0,V.jsx)(Q,{onClick:s,children:d("governance.creation.notNow")})})]})})};var U=T(M()),bn=n=>{let s=n;if(typeof n=="string")try{s=JSON.parse(n)}catch{return{}}return s!==null&&typeof s=="object"&&!Array.isArray(s)?s:{}},La=()=>{let{get:n,del:s,put:g}=Ce(),r=_(),[d,i]=(0,u.useState)([]),[e,h]=(0,u.useState)({}),[f,l]=(0,u.useState)(null),[k,O]=(0,u.useState)(!1),[G,p]=(0,u.useState)(null),[C,R]=(0,u.useState)("graph"),[K,W]=(0,u.useState)(null),[$,F]=(0,u.useState)(null),[o,P]=(0,u.useState)(null),[ie,ge]=(0,u.useState)(!1),[be,pe]=(0,u.useState)(!0),[me,Y]=(0,u.useState)(!1),[Le,ve]=(0,u.useState)("learn"),[Oe,se]=(0,u.useState)({}),[J,Z]=(0,u.useState)(null),[_e,Me]=(0,u.useState)(!1),z=(0,u.useCallback)(async()=>{O(!0);try{let[m,A]=await Promise.all([n("/api/assistants"),n("/api/assistants/stats").catch(()=>null)]);if(m.success&&m.data?.records&&i(m.data.records),A?.success&&A.data?.records){let S={};for(let q of A.data.records)S[q.id]=q;h(S),l(A.cache?.expiresAt??null)}}catch{w.error(r("governance.workbench.loadFailed"))}finally{O(!1)}},[n,r]);(0,u.useEffect)(()=>{z()},[z]);let ue=u.default.useMemo(()=>Pt(d),[d]),ee=d.find(m=>m.id===G)??null,Ve=(0,u.useCallback)((m,A="graph")=>{p(m),R(A),W(null),P(null)},[]),fe=xt(),xe=(0,u.useCallback)((m,A)=>{let S=d.find(q=>q.id===m)?.name??r("governance.workbench.agentFallback");fe({component_key:"agent_detail_side_app",data:{assistantId:m,initialTab:A},message:S})},[d,fe,r]),B=(0,u.useCallback)(()=>{pe(!0),ge(!0)},[]),ke=(0,u.useCallback)(m=>{let S={manual:{mode:"scratch",values:{}},external:{mode:"scratch",values:{type:"a2a_remote"}},learn:{mode:"learn",values:{}}}[m];ve(S.mode),se(S.values),pe(!1),ge(!1),Y(!0)},[]),Te=(0,u.useCallback)(async(m,A)=>{let S=bn(m.graphDefinition),q;try{q=await g(`/api/assistants/${m.id}`,{name:A.name!==void 0?A.name:m.name,description:A.description!==void 0?A.description:m.description,graphDefinition:{...S,...A}})}catch(Se){throw w.error(r("governance.detail.saveFailed")),Se}if(!q.success)throw w.error(r("governance.detail.saveFailed")),new Error("Failed to save agent");w.success(r("common.saved")),z()},[g,z,r]),Ee=(0,u.useCallback)(m=>{i(A=>A.map(S=>S.id===m.id?m:S))},[]),re=(0,u.useCallback)(m=>{Z(m)},[]),le=(0,u.useCallback)(async()=>{if(J){Me(!0);try{(await s(`/api/assistants/${J}`)).success?(w.success(r("governance.detail.deleted")),i(A=>A.filter(S=>S.id!==J)),z(),Z(null)):w.error(r("governance.detail.deleteFailed"))}catch{w.error(r("governance.detail.deleteFailed"))}finally{Me(!1)}}},[J,s,z,r]),we=(0,u.useCallback)(async m=>{if(!(await s(`/api/assistants/${m}`)).success)throw new Error("Failed to delete agent");w.success(r("governance.detail.deleted")),i(S=>S.filter(q=>q.id!==m)),z()},[s,z,r]);return(0,U.jsxs)("div",{style:{height:"100%",background:"#fafafa",overflow:"hidden"},children:[ee?(0,U.jsx)(Dt,{defaultProjectId:o??void 0,children:(0,U.jsx)(_t,{assistant:ee,allAssistants:d,onBack:()=>p(null),onDeleted:we,onSave:Te,onAssistantUpdated:Ee,onAgentListInvalidated:z,initialTab:C,initialMessage:K,initialMessageCustomRunConfig:$,initialProjectId:o})},ee.id):(0,U.jsx)(U.Fragment,{children:(0,U.jsx)(qt,{items:ue,assistants:d,stats:e,statsExpiresAt:f,loading:k,onItemClick:m=>xe(m,"graph"),onOpenPlayground:m=>xe(m,"playground"),onOpenEval:m=>xe(m,"eval"),onCreate:B,onDelete:re})}),(0,U.jsx)(an,{open:ie,onCancel:()=>{pe(!0),ge(!1)},onSelectMethod:ke,focusTriggerAfterClose:be}),(0,U.jsx)(tn,{open:me,initialMode:Le,initialValues:Oe,onCancel:()=>Y(!1),onSuccess:(m,A)=>{Y(!1),i(S=>S.some(Se=>Se.id===m.id)?S:[m,...S]),Ve(m.id,"graph"),W(A?.initialMessage??null),F(A?.initialMessageCustomRunConfig??null),P(A?.projectId??null),z()}}),(0,U.jsx)(he,{title:r("governance.deleteAgent"),open:J!==null,onCancel:()=>Z(null),onOk:le,okText:r("common.delete"),okButtonProps:{danger:!0,loading:_e},cancelText:r("common.cancel"),children:(0,U.jsx)("p",{children:r("governance.delete.irreversible")})})]})};export{La as AgentGovernanceWorkbench};
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/i18n/locales/mcpapp/zh.json"],"sourcesContent":["{\n \"messages\": {\n \"mcpapp.fallbackTitle\": \"MCP App\",\n \"mcpapp.openInSideApp\": \"在侧栏中打开\",\n \"mcpapp.unavailable\": \"MCP App 不可用\",\n \"mcpapp.unavailableDescription\": \"MCP App 要求网关沙箱与控制台由不同源(origin)提供服务。\",\n \"mcpapp.failedToLoad\": \"MCP App 加载失败:{{error}}\",\n \"mcpapp.resourceLoadFailed\": \"加载 MCP App 资源失败\",\n \"mcpapp.toolResultAlt\": \"工具执行结果\"\n }\n}\n"],"mappings":";;;AACE,eAAY;AAAA,EACV,wBAAwB;AAAA,EACxB,wBAAwB;AAAA,EACxB,sBAAsB;AAAA,EACtB,iCAAiC;AAAA,EACjC,uBAAuB;AAAA,EACvB,6BAA6B;AAAA,EAC7B,wBAAwB;AAC1B;AATF;AAAA,EACE;AASF;","names":[]}