1import{n as e,o as t}from"./rolldown-runtime-CMxvf4Kt.js";import{Bt as n}from"../i18n/i18n-ar-O-z3xW8i.js";import{A as r,F as i,L as a,k as o}from"../vendor/vendor-data-runtime-nLFaCKB0.js";import{Bt as s,Mt as c,Rt as l}from"../vendor/vendor-ai-runtime-DrDK77gy.js";import{Ao as u,g as d,jo as f,lt as p,ut as m}from"./app-const-BzFqCjOv.js";import{Do as h,Fn as g,Mo as _,X as v,bo as y,jo as b,to as x,vo as S,wo as C,zn as w}from"./ScrollArea-CdDxdn_v.js";import{Ia as T,Ka as ee,fa as te,n as E,oi as D,qn as ne,va as O}from"./es-D7HWafs1.js";import{n as k,xn as re}from"./es-D3_QMuVV.js";import{$c as ie,$d as A,Dl as ae,La as oe,Ld as j,Li as M,Uc as se,Un as N,Us as P,Vs as ce,_v as le,at as ue,et as F,hn as de,jh as fe,lp as pe,pr as me,qc as he,qd as ge,sc as _e,st as ve,tg as ye,th as be,yt as xe}from"../vendor/vendor-icons-BXJMWD35.js";import{O as Se,_ as Ce,n as we,r as Te}from"./base-ui-Bi3Dz7GG.js";import{C as Ee,D as De,E as Oe,T as ke,b as Ae,t as je,w as Me}from"./selectors-IDJ5-Ts8.js";import{Eo as Ne,dt as Pe,ft as Fe,n as I}from"./store-JX60g0Lu.js";import{is as Ie,nt as Le,rs as Re,rt as ze}from"./index-Doip7UYu.js";import{n as Be,t as Ve}from"./useWorkspaceAwareNavigate--pLVtz2A.js";import{D as He,O as Ue}from"./Verify-CHf1aFKf.js";import{n as We,t as Ge}from"./AsyncError-DaHIxwPg.js";import{n as Ke,t as qe}from"./useActivityTime-DTQWkBHZ.js";import{o as Je,s as Ye}from"./ShareModal-De2KU3hn.js";import{i as Xe,n as Ze,r as Qe,t as $e}from"./useDropdownMenu-DUyM41pr.js";import{n as et,t as tt}from"./NavHeader-DeWZ4kV0.js";import{n as nt,t as rt}from"./AgentBreadcrumb-CahCo-5U.js";var it,L,R=e((()=>{o(),it={groupBy:`byTime`,groupIds:[],search:``,selectMode:!1,selectedIds:[],sortBy:`updatedAt`,status:`active`,timeRange:`all`,triggers:[`chat`],viewMode:`card`},L=r(e=>({...it,clearSelected:()=>e({selectedIds:[]}),exitSelectMode:()=>e({selectMode:!1,selectedIds:[]}),reset:()=>e(it),selectAll:t=>e({selectedIds:t}),setGroupBy:t=>e({groupBy:t}),setGroupIds:t=>e({groupIds:t}),setSearch:t=>e({search:t}),setSortBy:t=>e({sortBy:t}),setStatus:t=>e({status:t}),setTimeRange:t=>e({timeRange:t}),setTriggers:t=>e({triggers:t}),setViewMode:t=>e({viewMode:t}),toggleSelectMode:()=>e(e=>({selectMode:!e.selectMode,selectedIds:e.selectMode?[]:e.selectedIds})),toggleSelected:t=>e(e=>({selectedIds:e.selectedIds.includes(t)?e.selectedIds.filter(e=>e!==t):[...e.selectedIds,t]}))}))})),at,ot,st,ct=e((()=>{E(),F(),at=t(f()),i(),Ne(),Xe(),R(),ot=t(u()),st=(0,at.memo)(()=>{let{t:e}=a(`topic`),t=L(e=>e.selectedIds),n=L(e=>e.exitSelectMode),r=I(e=>e.activeAgentId);return(0,ot.jsx)(T,{icon:ge,size:`small`,title:e(`management.bulk.move`),onClick:()=>{t.length!==0&&Qe({onMoved:n,sourceAgentId:r,topicIds:t})}})}),st.displayName=`AgentTopicManagerMoveToAgentButton`})),lt,z,ut,dt,ft=e((()=>{E(),y(),F(),lt=t(f()),i(),Ye(),Ne(),ct(),R(),z=t(u()),ut=C(({css:e})=>({bar:e` 2 pointer-events: auto; 3 4 padding-block: 8px; 5 padding-inline: 16px; 6 border: 1px solid ${h.colorBorderSecondary}; 7 border-radius: 999px; 8 9 background: ${h.colorBgElevated}; 10 box-shadow: ${h.boxShadowSecondary}; 11 `,divider:e` 12 width: 1px; 13 height: 16px; 14 margin-inline: 2px; 15 background: ${h.colorBorderSecondary}; 16 `,overlay:e` 17 pointer-events: none; 18 19 position: fixed; 20 z-index: 1000; 21 inset-block-end: 24px; 22 inset-inline: 0; 23 24 display: flex; 25 justify-content: center; 26 `})),dt=(0,lt.memo)(()=>{let{t:e}=a(`topic`),t=L(e=>e.selectedIds),n=L(e=>e.exitSelectMode),r=I(e=>e.favoriteTopic),i=I(e=>e.updateTopicStatus),o=I(e=>e.removeTopic),s=(0,lt.useCallback)(async()=>{await Promise.all(t.map(e=>r(e,!0))),n()},[t,r,n]),c=(0,lt.useCallback)(async()=>{await Promise.all(t.map(e=>i({status:`completed`,topicId:e}))),n()},[t,i,n]),l=(0,lt.useCallback)(()=>{Je({content:e(`management.bulk.deleteConfirm`,{count:t.length}),okText:e(`management.bulk.delete`),onConfirm:async e=>{for(let n of t)await o(n,e);n()},title:e(`management.bulk.deleteTitle`),topicIds:t})},[t,e,o,n]);return t.length===0?null:(0,z.jsx)(`div`,{className:ut.overlay,children:(0,z.jsxs)(S,{horizontal:!0,align:`center`,className:ut.bar,gap:4,children:[(0,z.jsx)(g,{style:{marginInlineEnd:8},weight:500,children:e(`management.bulk.selectedCount`,{count:t.length})}),(0,z.jsx)(T,{icon:me,size:`small`,title:e(`management.bulk.favorite`),onClick:s}),(0,z.jsx)(T,{icon:le,size:`small`,title:e(`management.bulk.archive`),onClick:c}),(0,z.jsx)(st,{}),(0,z.jsx)(T,{icon:de,size:`small`,style:{color:h.colorError},title:e(`management.bulk.delete`),onClick:l}
26),(0,z.jsx)(`span`,{className:ut.divider}),(0,z.jsx)(T,{icon:ve,size:`small`,title:e(`management.bulk.cancel`),onClick:n})]})})}),dt.displayName=`AgentTopicManagerBulkActionBar`})),pt,B,mt,ht=e((()=>{d(),E(),we(),y(),F(),pt=t(f()),i(),Ve(),B=t(u()),mt=(0,pt.memo)(({agentId:e,hasFilters:t,onClearFilters:n})=>{let{t:r}=a(`topic`),i=Be();return(0,B.jsxs)(S,{align:`center`,flex:1,gap:16,justify:`center`,paddingBlock:64,children:[(0,B.jsx)(x,{icon:ce,size:48,style:{color:h.colorTextQuaternary}}),(0,B.jsxs)(S,{align:`center`,gap:4,children:[(0,B.jsx)(g,{fontSize:16,weight:600,children:r(t?`management.empty.filtered.title`:`management.empty.noTopics.title`)}),(0,B.jsx)(g,{fontSize:13,type:`secondary`,children:r(t?`management.empty.filtered.desc`:`management.empty.noTopics.desc`)})]}),t?(0,B.jsx)(Se,{onClick:n,children:r(`management.empty.filtered.action`)}):(0,B.jsx)(Se,{type:`primary`,onClick:()=>i(m(e)),children:r(`management.empty.noTopics.action`)})]})}),mt.displayName=`AgentTopicManagerEmptyState`})),gt,_t,vt,yt=e((()=>{E(),F(),gt=t(f()),i(),nt(),et(),R(),_t=t(u()),vt=(0,gt.memo)(({agentId:e})=>{let{t}=a(`topic`),n=L(e=>e.search),r=L(e=>e.setSearch);return(0,_t.jsx)(tt,{left:(0,_t.jsx)(rt,{agentId:e,title:t(`management.title`)}),right:(0,_t.jsx)(D,{placeholder:t(`searchPlaceholder`),prefix:(0,_t.jsx)(x,{icon:M,size:`small`,style:{marginInlineEnd:4}}),size:`small`,value:n,variant:`filled`,onChange:e=>r(e.target.value)}),styles:{left:{paddingInlineStart:8},right:{flex:1,maxWidth:400}}})}),vt.displayName=`AgentTopicManagerHeader`})),V,H,U,bt,W,xt,St,Ct,wt,Tt,Et,G,Dt,Ot,kt=e((()=>{E(),we(),k(),y(),F(),V=t(f()),i(),Ne(),je(),R(),H=t(u()),U=32,bt=2160*60*60*1e3,W=C(({css:e})=>({addPill:e` 27 cursor: pointer; 28 user-select: none; 29 30 display: inline-flex; 31 gap: 6px; 32 align-items: center; 33 34 height: ${U}px; 35 padding-inline: 12px; 36 border: 1px dashed ${h.colorBorder}; 37 border-radius: ${U/2}px; 38 39 font-size: 13px; 40 color: ${h.colorTextSecondary}; 41 42 transition: all 0.15s; 43 44 &:hover { 45 border-color: ${h.colorPrimary}; 46 color: ${h.colorText}; 47 } 48 `,chip:e` 49 display: inline-flex; 50 align-items: stretch; 51 52 height: ${U}px; 53 border: 1px solid ${h.colorBorderSecondary}; 54 border-radius: ${U/2}px; 55 56 background: ${h.colorFillTertiary}; 57 58 transition: border-color 0.15s; 59 60 &:hover { 61 border-color: ${h.colorBorder}; 62 } 63 `,chipClose:e` 64 all: unset; 65 66 cursor: pointer; 67 68 display: inline-flex; 69 align-items: center; 70 71 padding-inline: 8px 12px; 72 border-start-end-radius: ${U/2}px; 73 border-end-end-radius: ${U/2}px; 74 75 color: ${h.colorTextTertiary}; 76 77 &:hover { 78 color: ${h.colorText}; 79 background: ${h.colorFillSecondary}; 80 } 81 `,chipMain:e` 82 cursor: pointer; 83 84 display: inline-flex; 85 gap: 6px; 86 align-items: center; 87 88 padding-block: 0; 89 padding-inline: 12px 6px; 90 91 font-size: 13px; 92 color: ${h.colorText}; 93 `,chipValue:e` 94 font-weight: 500; 95 color: ${h.colorText}; 96 `,divider:e` 97 width: 1px; 98 height: 16px; 99 margin-inline: 4px; 100 background: ${h.colorBorderSecondary}; 101 `,sortPill:e` 102 cursor: pointer; 103 user-select: none; 104 105 display: inline-flex; 106 gap: 6px; 107 align-items: center; 108 109 height: ${U}px; 110 padding-inline: 12px; 111 border-radius: ${U/2}px; 112 113 font-size: 13px; 114 color: ${h.colorText}; 115 116 background: ${h.colorFillTertiary}; 117 118 &:hover { 119 background: ${h.colorFillSecondary}; 120 } 121 `})),xt=[{key:`all`,labelKey:`management.filters.status.all`},{key:`active`,labelKey:`management.filters.status.active`},{key:`running`,labelKey:`management.filters.status.running`},{key:`completed`,labelKey:`management.filters.status.completed`}],St=[`chat`,`api`,`task`,`eval`],Ct={api:xe,chat:_e,eval:N,task:he},wt=[`all`,`today`,`week`,`month`],Tt=[`updatedAt`,`createdAt`,`title`],Et=[`byTime`,`byProject`,`none`],G=({visible:e})=>(0,H.jsx)(`span`,{style:{display:`inline-block`,width:12},children:e?`â`:``}),Dt=(0,V.memo)(({icon:e,label:t,value:n,items:r,onClear:i})=>(0,H.jsxs)(`span`,{className:W.chip,children:[(0,H.jsx)(v,{items:r,children:(0,H.jsxs)(`span`,{className:W.chipMain,children:[e&&(0,H.jsx)(x,{icon:e,size:12}),(0,H.jsxs)(g,{style:{color:h.colorTextSecondary,fontSize:12},children:[t,`:`]}),(0,H.jsx)(`span`,{className:W.chipValue,children:n}),(0,H.jsx)(x,{icon:fe,size:10})]})}),(0,H.jsx)(`button`,{"aria-label":`Clear ${t}`,className:W.chipClose,type:`button`,onClick:e=>{e.stopPropagation(),i()},children:(0,H.jsx)(x,{icon:ve,size:12})})]})),Ot=(0,V.memo)(({projects:e,statusCounts:t})=>{let{t:n}=a(`topic`),{message:r}=re.useApp(),i=I(Ae.agentTopicsViewTopics),o=I(e=>e.updateTopicStatus),s=L(e=>e.status),c=L(e=>e.setStatus),l=L(e=>e.groupIds),u=L(e=>e.setGroupIds),d=L(e=>e.triggers),f=L(e=>e.setTriggers),p=L(e=>e.timeRange),m=L(e=>e.setTimeRange),_=L(e=>e.sortBy),y=L(e=>e.setSortBy),b=L(e=>e.groupBy),C=L(e=>e.setGroupBy),ee=L(e=>e.viewMode),te=L(e=>e.setViewMode),E=(0,V.useMemo)(()=>St.map(e=>({extra:(0,H.jsx)(G,{visible:d.includes(e)}),icon:(0,H.jsx)(x,{icon:Ct[e],size:14}),key:e,label:n(`management.filters.trigger.${e}`),onClick:()=>f(d.includes(e)?d.filter(t=>t!==e):[...d,e])})),[d,n,f]),D=(0,V.useMemo)(()=>e.length===0?[{disabled:!0,key:`empty`,label:n(`management.filters.project.empty`)}]:e.map(e=>({icon:(0,H.jsx)(G,{visible:l.includes(e.value)}),key:e.value,label:e.label,onClick:()=>u(l.includes(e.value)?l.filter(t=>t!==e.value):[...l,e.value])})),[e,l,n,u]),ne=(0,V.useMemo)(()=>wt.map(e=>({icon:(0,H.jsx)(G,{visible:p===e}),key:e,label:n(`management.filters.time.${e}`),onClick:()=>m(e)})),[p,n,m]),O=(0,V.useMemo)(()=>Tt.map(e=>({icon:(0,H.jsx)(G,{visible:_===e}),key:e,label:n(`management.sort.${e}`),onClick:()=>y(e)})),[_,n,y]),k=(0,V.useMemo)(()=>Et.map(e=>({icon:(0,H.jsx)(G,{visible:b===e}),key:e,label:n(`management.group.${e}`),onClick:()=>C(e)})),[b,n,C]),j=d.length>0,M=l.length>0,N=p!==`all`,P=j||M||N,ce=(0,V.useMemo)(()=>{let e=[];return j||e.push({children:E,icon:(0,H.jsx)(x,{icon:ie,size:14}),key:`trigger`,label:n(`management.filters.trigger.label`),type:`submenu`}),M||e.push({children:D,icon:(0,H.jsx)(x,{icon:A,size:14}),key:`project`,label:n(`management.filters.project.label`),type:`submenu`}),N||e.push({children:ne,icon:(0,H.jsx)(x,{icon:ye,size:14}),key:`time`,label:n(`management.filters.time.label`),type:`submenu`}),e},[j,M,N,E,D,ne,n]),ue=(0,V.useMemo)(()=>l.length===1?e.find(e=>e.value===l[0])?.label??l[0]:`${l.length} selected`,[l,e]),F=d.length===1?n(`management.filters.trigger.${d[0]}`):`${d.length} selected`,de=(0,V.useCallback)(()=>{let e=Date.now()-bt,t=(i??[]).filter(t=>t.status===`completed`?!1:(typeof t.updatedAt==`number`?t.updatedAt:new Date(t.updatedAt).getTime())<e);if(t.length===0){r.info(n(`management.actionsMenu.archiveStale.noneFound`));return}Ce({content:n(`management.actionsMenu.archiveStale.confirm`,{count:t.length}),okText:n(`management.actionsMenu.archiveStale.confirmOk`),onOk:async()=>{for(let e of t)await o({status:`completed`,topicId:e.id});r.success(n(`management.actionsMenu.archiveStale.done`,{count:t.length}))},title:n(`management.actionsMenu.archiveStale.title`)})},[i,o,r,n]),me=(0,V.useMemo)(()=>{let e=[{children:k,key:`group`,label:`${n(`management.group.label`)}: ${n(`management.group.${b}`)}`,type:`submenu`}];return P&&e.push({key:`d1`,type:`divider`},{icon:(0,H.jsx)(x,{icon:ve,size:14}),key:`clear`,label:n(`management.filters.clearAll`,{defaultValue:`Clear all filters`}),onClick:()=>{f([]),u([]),m(`all`)}}),e.push({key:`d2`,type:`divider`},{icon:(0,H.jsx)(x,{icon:le,size:14}),key:`archive-stale`,label:n(`management.actionsMenu.archiveStale.label`),onClick:de}),e},[k,b,P,n,f,u,m,de]);return(0,H.jsxs)(S,{horizontal:!0,align:`center`,gap:6,wrap:`wrap`,children:[(0,H.jsx)(Te,{activeKey:s,size:`small`,style:{width:`auto`},items:xt.map(e=>{let r=t[e.key]??0;return{key:e.key,label:(0,H.jsxs)(S,{horizontal:!0,align:`center`,gap:6,children:[(0,H.jsx)(`span`,{children:n(e.labelKey)}
121),(0,H.jsx)(g,{style:{color:s===e.key?`inherit`:h.colorTextTertiary,fontSize:12,fontVariantNumeric:`tabular-nums`,opacity:s===e.key?.7:1},children:r})]})}}),onChange:e=>c(e)}),(0,H.jsx)(`span`,{className:W.divider}),j&&(0,H.jsx)(Dt,{icon:ie,items:E,label:n(`management.filters.trigger.label`),value:F,onClear:()=>f([])}),M&&(0,H.jsx)(Dt,{icon:A,items:D,label:n(`management.filters.project.label`),value:ue,onClear:()=>u([])}),N&&(0,H.jsx)(Dt,{icon:ye,items:ne,label:n(`management.filters.time.label`),value:n(`management.filters.time.${p}`),onClear:()=>m(`all`)}),ce.length>0&&(0,H.jsx)(v,{items:ce,children:(0,H.jsxs)(`span`,{className:W.addPill,children:[(0,H.jsx)(x,{icon:oe,size:12}),n(`management.filters.add`,{defaultValue:P?`Add filter`:`Filter`})]})}),(0,H.jsx)(S,{flex:1}),(0,H.jsx)(Te,{activeKey:ee,size:`small`,style:{width:`auto`},items:[{key:`card`,label:(0,H.jsx)(w,{title:n(`management.view.card`),children:(0,H.jsx)(x,{icon:ae})})},{key:`list`,label:(0,H.jsx)(w,{title:n(`management.view.list`),children:(0,H.jsx)(x,{icon:se})})}],onChange:e=>te(e)}),(0,H.jsx)(`span`,{className:W.divider}),(0,H.jsx)(v,{items:O,children:(0,H.jsxs)(`span`,{className:W.sortPill,children:[(0,H.jsxs)(g,{style:{color:h.colorTextSecondary,fontSize:12},children:[n(`management.sort.label`),`:`]}),(0,H.jsx)(`span`,{style:{fontWeight:500},children:n(`management.sort.${_}`)}),(0,H.jsx)(x,{icon:fe,size:10})]})}),(0,H.jsx)(v,{items:me,placement:`bottomRight`,children:(0,H.jsx)(T,{icon:pe,size:{blockSize:U,size:18},title:n(`management.actionsMenu.title`)})})]})}),Ot.displayName=`AgentTopicManagerToolbar`})),At,jt,Mt,Nt,Pt=e((()=>{E(),y(),At=t(f()),i(),ze(),Ue(),jt=t(u()),Mt={...Object.fromEntries(Object.entries(Le).map(([e,t])=>[e,t.color])),idle:h.colorTextQuaternary},Nt=(0,At.memo)(({status:e})=>{let{t}=a(`topic`),{isDarkMode:n}=_(),r=e||`idle`,i=Mt[r]??h.colorTextQuaternary,o=`management.status.${r}`,s=r===`running`,c=n?h.colorWarningBorder:`color-mix(in srgb, ${h.colorWarning} 45%, transparent)`;return(0,jt.jsxs)(S,{horizontal:!0,align:`center`,gap:6,children:[s?(0,jt.jsx)(He,{ringColor:c,size:10,style:{color:h.colorWarning}}):(0,jt.jsx)(`span`,{style:{background:i,borderRadius:`50%`,flexShrink:0,height:6,width:6}}),(0,jt.jsx)(`span`,{style:{color:h.colorTextSecondary,fontSize:11},children:t(o)})]})}),Nt.displayName=`AgentTopicManagerStatusDot`})),Ft,It,K,Lt,Rt,zt,Bt,Vt,Ht,Ut,Wt,Gt,Kt=e((()=>{De(),Ft=t(n()),It=1440*60*1e3,K=(e,t)=>{switch(t){case`all`:return!0;case`archived`:return e.status===`archived`;case`completed`:return e.status===`completed`;case`running`:return e.status===`running`;case`active`:return!e.status||e.status===`active`;default:return!0}},Lt=(e,t)=>{if(t.length===0)return!0;let n=Me(e)??``;return t.includes(n)},Rt=(e,t)=>{if(t.length===0)return!0;let n=e.trigger??`chat`;return t.includes(n)},zt=(e,t)=>{if(t===`all`)return!0;let n=e.updatedAt?new Date(e.updatedAt).getTime():0;if(!n)return!1;let r=Date.now()-n;switch(t){case`today`:return r<It;case`week`:return r<7*It;case`month`:return r<30*It;default:return!0}},Bt=(e,t)=>
121{let n=[...e];switch(t){case`updatedAt`:n.sort((e,t)=>new Date(t.updatedAt??0).getTime()-new Date(e.updatedAt??0).getTime());break;case`createdAt`:n.sort((e,t)=>new Date(t.createdAt??0).getTime()-new Date(e.createdAt??0).getTime());break;case`title`:n.sort((e,t)=>(e.title??``).localeCompare(t.title??``));break}return n},Vt=e=>e.split(/[/\\]+/).findLast(Boolean)??e,Ht=e=>{let t=Me(e);return t?Vt(t):void 0},Ut=e=>{let t=Me(e),n=Ee(e)??t;if(!n)return;let r=Vt(n),i=t?Vt(t):void 0,a=i&&i!==r?`${i}/${r}`:r,o=e.metadata?.workingDirectoryConfig?.git?.branch;return o?`${a} · ${o}`:a},Wt=(e,t)=>/^\d{4}/.test(e)?e.includes(`-`)?(0,Ft.default)(e).format(`MMMM`):e:t(`groupTitle.byTime.${e}`),Gt=(e,t,n)=>e===`no-project`?n(`management.group.noProject`):t??e.replace(/^project:/,``)})),qt,q,J,Jt,Yt=e((()=>{d(),s(),E(),y(),F(),qt=t(f()),i(),Ve(),qe(),Pt(),R(),Kt(),q=t(u()),J=C(({css:e})=>({card:e` 122 cursor: pointer; 123 124 position: relative; 125 126 display: flex; 127 flex-direction: column; 128 129 /* min-height keeps short cards consistent without forcing tall empty 130 whitespace â preview + footer can still grow the card naturally. */ 131 min-height: 140px; 132 padding: 14px; 133 134 transition: 135 transform 0.18s, 136 box-shadow 0.18s, 137 border-color 0.18s; 138 139 &:hover { 140 transform: translateY(-1px); 141 box-shadow: 0 4px 12px rgb(0 0 0 / 6%); 142 } 143 `,cardSelected:e` 144 border-color: ${h.colorPrimary}; 145 box-shadow: 0 0 0 1px ${h.colorPrimary}; 146 `,checkbox:e` 147 position: absolute; 148 z-index: 1; 149 inset-block-start: 10px; 150 inset-inline-end: 10px; 151 `,checkboxBox:e` 152 border-color: ${h.colorBorder}; 153 `,description:e` 154 overflow: hidden; 155 display: -webkit-box; 156 -webkit-box-orient: vertical; 157 -webkit-line-clamp: 2; 158 `,footer:e` 159 /* push to bottom so cards with short content keep the stats row anchored */ 160 margin-block-start: auto; 161 padding-block-start: 10px; 162 border-block-start: 1px solid ${h.colorSplit}; 163 `,title:e` 164 overflow: hidden; 165 display: -webkit-box; 166 flex: 1; 167 -webkit-box-orient: vertical; 168 -webkit-line-clamp: 1; 169 `,titleRow:e` 170 padding-inline-end: 28px; 171 `})),Jt=(0,qt.memo)(({topic:e,agentId:t})=>{let{t:n}=a(`topic`),r=Be(),i=L(e=>e.selectMode),o=L(t=>t.selectedIds.includes(e.id)),s=L(e=>e.toggleSelected),u=L(e=>e.toggleSelectMode),d=(0,qt.useCallback)(n=>{if(i||n.metaKey||n.ctrlKey){n.preventDefault(),s(e.id);return}r(p(t,e.id))},[i,e.id,t,s,r]),f=(0,qt.useCallback)(()=>{i||u(),s(e.id)},[i,e.id,s,u]),m=(0,qt.useCallback)(e=>{e.stopPropagation()},[]),_=Ut(e),v=e.status??`active`,y=e.description?.trim()||e.historySummary?.trim()||e.firstUserMessage?.trim(),b=Ke(e.updatedAt),C=Number(e.messageCount??0),w=Number(e.tokenUsage??0),T=Number(e.cost??0);return(0,q.jsxs)(ee,{className:[J.card,o&&J.cardSelected].filter(Boolean).join(` `),gap:8,variant:`outlined`,onClick:d,children:[(0,q.jsx)(`div`,{className:J.checkbox,onClick:m,children:(0,q.jsx)(O,{checked:o,classNames:{checkbox:J.checkboxBox},size:18,onChange:f})}),(0,q.jsxs)(S,{horizontal:!0,align:`center`,className:J.titleRow,gap:6,children:[e.favorite&&(0,q.jsx)(x,{icon:me,size:13,style:{color:h.colorWarning,flexShrink:0}}),(0,q.jsx)(g,{className:J.title,fontSize:14,weight:600,children:e.title||n(`defaultTitle`)})]}),y&&(0,q.jsx)(g,{className:J.description,fontSize:12,type:`secondary`,children:y}),_&&(0,q.jsx)(te,{bordered:!1,icon:(0,q.jsx)(x,{icon:j,size:11}),size:`small`,children:_}),(0,q.jsxs)(S,{horizontal:!0,align:`center`,className:J.footer,justify:`space-between`,children:[(0,q.jsxs)(S,{horizontal:!0,align:`center`,gap:10,style:{color:h.colorTextQuaternary,fontSize:11},children:[C>0&&(0,q.jsxs)(S,{horizontal:!0,align:`center`,gap:3,children:[(0,q.jsx)(x,{icon:P,size:11}),C]}),w>0&&(0,q.jsxs)(S,{horizontal:!0,align:`center`,gap:3,title:`${w} tokens`,children:[(0,q.jsx)(x,{icon:ue,size:11}),l(w)]}),T>0&&(0,q.jsxs)(S,{horizontal:!0,align:`center`,gap:3,title:`$${T.toFixed(4)}`,children:[(0,q.jsx)(x,{icon:be,size:11}),c(T,2)]}),(0,q.jsx)(`span`,{title:b.title,children:b.text})]}),(0,q.jsx)(Nt,{status:v})]})]})}
171),Jt.displayName=`AgentTopicCard`})),Xt,Y,Zt,Qt,$t=e((()=>{E(),y(),Xt=t(f()),i(),Yt(),Kt(),Y=t(u()),Zt=C(({css:e})=>({grid:e` 172 display: grid; 173 174 /* 175 min(280px, 100%) lets columns shrink below 280px when the available 176 width itself is narrower (e.g. agent sidebar expanded), so the layout 177 keeps wrapping instead of overflowing horizontally. 178 */ 179 grid-template-columns: repeat(auto-fill, minmax(min(280px, 100%), 1fr)); 180 gap: 12px; 181 182 width: 100%; 183 min-width: 0; 184 185 ${b.md} { 186 grid-template-columns: repeat(auto-fill, minmax(min(240px, 100%), 1fr)); 187 } 188 `,groupTitle:e` 189 margin-block-start: 8px; 190 padding-block-end: 4px; 191 192 font-size: 13px; 193 font-weight: 500; 194 color: ${h.colorTextSecondary}; 195 `})),Qt=(0,Xt.memo)(({groups:e,agentId:t,showGroupTitles:n,groupBy:r})=>{let{t:i}=a(`topic`);return(0,Y.jsx)(S,{gap:12,children:e.map(e=>{if(e.children.length===0)return null;let a=r===`byProject`?Gt(e.id,e.title,i):e.title||Wt(e.id,i);return(0,Y.jsxs)(Xt.Fragment,{children:[n&&(0,Y.jsx)(g,{as:`div`,className:Zt.groupTitle,children:a}),(0,Y.jsx)(`div`,{className:Zt.grid,children:e.children.map(e=>(0,Y.jsx)(Jt,{agentId:t,topic:e},e.id))})]},e.id)})})}),Qt.displayName=`AgentTopicManagerGrid`})),en,X,tn,Z,nn,rn,an=e((()=>{d(),E(),y(),F(),en=t(f()),i(),Ve(),qe(),$e(),Pt(),R(),Kt(),X=t(u()),tn=[`chat`,`api`,`task`,`eval`],Z=C(({css:e})=>({cell:e` 196 overflow: hidden; 197 min-width: 0; 198 `,checkboxBox:e` 199 border-color: ${h.colorBorder}; 200 `,groupBar:e` 201 display: flex; 202 gap: 6px; 203 align-items: baseline; 204 205 padding-block: 8px; 206 padding-inline: 16px; 207 border-block-end: 1px solid ${h.colorSplit}; 208 209 font-size: 12px; 210 font-weight: 500; 211 color: ${h.colorTextSecondary}; 212 213 background: ${h.colorFillQuaternary}; 214 `,groupCount:e` 215 font-size: 11px; 216 font-weight: 400; 217 color: ${h.colorTextQuaternary}; 218 `,header:e` 219 position: sticky; 220 z-index: 2; 221 inset-block-start: 0; 222 223 display: grid; 224 grid-template-columns: 24px minmax(0, 1fr) 120px 100px 80px 100px 32px; 225 gap: 12px; 226 align-items: center; 227 228 padding-block: 10px; 229 padding-inline: 16px; 230 border-block-end: 1px solid ${h.colorSplit}; 231 232 font-size: 12px; 233 font-weight: 500; 234 color: ${h.colorTextSecondary}; 235 236 /* opaque so scrolled rows don't bleed through */ 237 background: ${h.colorBgElevated}; 238 `,headerCellEnd:e` 239 text-align: end; 240 `,list:e` 241 position: relative; 242 243 overflow: hidden; 244 245 border: 1px solid ${h.colorBorderSecondary}; 246 border-radius: 12px; 247 248 background: ${h.colorBgContainer}; 249 `,row:e` 250 cursor: pointer; 251 252 display: grid; 253 grid-template-columns: 24px minmax(0, 1fr) 120px 100px 80px 100px 32px; 254 gap: 12px; 255 align-items: center; 256 257 padding-block: 10px; 258 padding-inline: 16px; 259 border-block-end: 1px solid ${h.colorSplit}; 260 261 transition: background 0.12s; 262 263 &:hover { 264 background: ${h.colorFillTertiary}; 265 } 266 267 &:last-child { 268 border-block-end: none; 269 } 270 `,rowSelected:e` 271 background: ${h.colorPrimaryBg}; 272 273 &:hover { 274 background: ${h.colorPrimaryBgHover}; 275 } 276 `,sub:e` 277 overflow: hidden; 278 margin-block-start: 2px; 279 text-overflow: ellipsis; 280 white-space: nowrap; 281 `,title:e` 282 overflow: hidden; 283 text-overflow: ellipsis; 284 white-space: nowrap; 285 `})),nn=(0,en.memo)(({topic:e,agentId:t})=>{let{t:n}=a(`topic`),r=Be(),i=L(e=>e.selectMode),o=L(t=>t.selectedIds.includes(e.id)),s=L(e=>e.toggleSelected),c=L(e=>e.toggleSelectMode),{dropdownMenu:l}=Ze({fav:e.favorite,id:e.id,status:e.status,title:e.title}),u=(0,en.useCallback)(n=>{if(i||n.metaKey||n.ctrlKey){n.preventDefault(),s(e.id);return}r(p(t,e.id))},[i,e.id,t,s,r]),d=(0,en.useCallback)(()=>{i||c(),s(e.id)},[i,e.id,s,c]),f=e.status??`active`,m=Ut(e),_=Ke(e.updatedAt),y=e.trigger??`chat`,b=n(`management.filters.trigger.${tn.includes(y)?y:`chat`}`);return(0,X.jsxs)(`div`,{className:[Z.row,o&&Z.rowSelected].filter(Boolean).join(` `),onClick:u,children:[(0,X.jsx)(`div`,{onClick:e=>e.stopPropagation(),children:(0,X.jsx)(O,{checked:o,classNames:{checkbox:Z.checkboxBox},size:18,onChange:d})}),(0,X.jsxs)(`div`,{className:Z.cell,children:[(0,X.jsxs)(S,{horizontal:!0,align:`center`,gap:6,children:[e.favorite&&(0,X.jsx)(x,{icon:me,size:12,style:{color:h.colorWarning,flexShrink:0}}),(0,X.jsx)(g,{className:Z.title,fontSize:13,weight:500,children:e.title||n(`defaultTitle`)})]}),e.historySummary&&(0,X.jsx)(g,{className:Z.sub,fontSize:11,type:`secondary`,children:e.historySummary})]}),(0,X.jsx)(`div`,{className:Z.cell,children:m?(0,X.jsx)(te,{bordered:!1,icon:(0,X.jsx)(x,{icon:j,size:11}),size:`small`,children:m}):(0,X.jsx)(g,{fontSize:12,type:`secondary`,children:`â`})}),(0,X.jsx)(Nt,{status:f}),(0,X.jsx)(g,{fontSize:12,type:`secondary`,children:b}),(0,X.jsx)(g,{fontSize:12,style:{color:h.colorTextQuaternary,textAlign:`end`},title:_.title,children:_.text}),(0,X.jsx)(v,{items:l,children:(0,X.jsx)(T,{icon:pe,size:`small`,onClick:e=>e.stopPropagation()})})]})}),nn.displayName=`AgentTopicManagerRow`,rn=(0,en.memo)(({groups:e,agentId:t,showGroupTitles:n,groupBy:r})=>{let{t:i}=a(`topic`),o=L(e=>e.selectedIds),s=L(e=>e.selectMode),c=L(e=>e.selectAll),l=L(e=>e.clearSelected),u=L(e=>e.toggleSelectMode),d=e.flatMap(e=>e.children.map(e=>e.id)),f=new Set(o),p=d.reduce((e,t)=>
285e+ +!!f.has(t),0),m=d.length>0&&p===d.length,h=p>0&&!m;return(0,X.jsxs)(`div`,{className:Z.list,children:[(0,X.jsxs)(`div`,{className:Z.header,children:[(0,X.jsx)(O,{checked:m,classNames:{checkbox:Z.checkboxBox},indeterminate:h,size:18,onChange:()=>{m?l():(s||u(),c(d))}}),(0,X.jsx)(`span`,{children:i(`management.columns.title`)}),(0,X.jsx)(`span`,{children:i(`management.columns.project`)}),(0,X.jsx)(`span`,{children:i(`management.columns.status`)}),(0,X.jsx)(`span`,{children:i(`management.columns.trigger`)}),(0,X.jsx)(`span`,{className:Z.headerCellEnd,children:i(`management.columns.updated`)}),(0,X.jsx)(`span`,{})]}),e.map(e=>{if(e.children.length===0)return null;let a=r===`byProject`?Gt(e.id,e.title,i):e.title||Wt(e.id,i);return(0,X.jsxs)(en.Fragment,{children:[n&&(0,X.jsxs)(`div`,{className:Z.groupBar,children:[(0,X.jsx)(`span`,{children:a}),(0,X.jsx)(`span`,{className:Z.groupCount,children:e.children.length})]}),e.children.map(e=>(0,X.jsx)(nn,{agentId:t,topic:e},e.id))]},e.id)})]})}),rn.displayName=`AgentTopicManagerListView`})),Q,$,on,sn,cn=e((()=>{De(),E(),Q=t(f()),i(),We(),Ie(),Ne(),je(),Pe(),ft(),ht(),yt(),R(),kt(),$t(),an(),Kt(),$=t(u()),on=30,sn=(0,Q.memo)(()=>{let{t:e}=a(`topic`),t=I(e=>e.activeAgentId),n=I(e=>e.useFetchAgentTopicsView),r=I(e=>e.useSearchTopics),i=I(e=>e.loadMoreAgentTopicsView),o=I(Ae.agentTopicsViewTopics),s=I(Ae.agentTopicsViewHasMore),c=I(Ae.agentTopicsViewIsLoadingMore),l=I(Ae.agentTopicsViewLoadMoreError),u=L(e=>e.reset),d=L(e=>e.search),f=L(e=>e.status),p=L(e=>e.groupIds),m=L(e=>e.triggers),h=L(e=>e.timeRange),g=L(e=>e.sortBy),_=L(e=>e.groupBy),v=L(e=>e.viewMode),y=L(e=>e.setStatus),b=L(e=>e.setGroupIds),x=L(e=>e.setTriggers),C=L(e=>e.setTimeRange),w=L(e=>e.setSearch);(0,Q.useEffect)(()=>{u()},[t,u]);let{error:T,isLoading:ee,mutate:te}=n(!0,{agentId:t,pageSize:on,withDetails:!0}),E=d.trim(),{data:D}=r(E.length>0?E:void 0,{agentId:t}),O=(0,Q.useMemo)(()=>E.length>0?D??[]:o??[],[E,D,o]),k=(0,Q.useMemo)(()=>O.filter(e=>Lt(e,p)&&Rt(e,m)&&zt(e,h)),[O,p,m,h]),re=(0,Q.useMemo)(()=>Bt(k.filter(e=>K(e,f)),g),[k,f,g]),ie=(0,Q.useMemo)(()=>({active:k.filter(e=>K(e,`active`)).length,all:k.length,archived:k.filter(e=>K(e,`archived`)).length,completed:k.filter(e=>K(e,`completed`)).length,running:k.filter(e=>K(e,`running`)).length}),[k]),A=E.length>0,ae=_!==`none`&&!A,oe=(0,Q.useMemo)(()=>ae?_===`byProject`?ke(re,g===`createdAt`?`createdAt`:`updatedAt`):Oe(re):[{children:re,id:`all`}],[re,ae,_,g]),j=(0,Q.useMemo)(()=>{let e=new Map;for(let t of O){let n=Me(t);n&&!e.has(n)&&e.set(n,Ht(t)??n)}return Array.from(e,([e,t])=>({label:t,value:e}))},[O]),M=re.length,se=f!==`active`&&f!==`all`||p.length>0||m.length>0||h!==`all`||E.length>0,N=()=>{y(`all`),b([]),x([]),C(`all`),w(``)},P=(0,Q.useRef)(null),ce=(0,Q.useRef)(null);return(0,Q.useEffect)(()=>{if(A)return;let e=P.current,t=ce.current;if(!e||!t)return;let n=new IntersectionObserver(([e])=>{e.isIntersecting&&s&&!c&&!l&&i()},{root:e,rootMargin:`300px`});return n.observe(t),()=>n.disconnect()},[s,c,A,i,l]),t?(0,$.jsxs)(S,{flex:1,height:`100%`,style:{overflow:`hidden`},children:[(0,$.jsx)(vt,{agentId:t}),(0,$.jsx)(`div`,{ref:P,style:{display:`flex`,flex:1,flexDirection:`column`,minWidth:0,overflowY:`auto`,padding:`20px 24px`},children:(0,$.jsxs)(S,{gap:16,style:{marginInline:`auto`,maxWidth:1440,width:`100%`},children:[(0,$.jsx)(Ot,{projects:j,statusCounts:ie}),(0,$.jsx)(dt,{}),!A&&T&&!ee&&O.length===0?(0,$.jsx)(Ge,{error:T,variant:`block`,onRetry:()=>{te()}}):ee&&O.length===0?(0,$.jsx)(ne,{active:!0,paragraph:{rows:6},title:!1}):M===0?(0,$.jsx)(mt,{agentId:t,hasFilters:se,onClearFilters:N}):(0,$.jsxs)($.Fragment,{children:[v===`card`?(0,$.jsx)(Qt,{agentId:t,groupBy:_,groups:oe,showGroupTitles:ae}):(0,$.jsx)(rn,{agentId:t,groupBy:_,groups:oe,showGroupTitles:ae}),!A&&s&&(0,$.jsx)(`div`,{"aria-hidden":!0,ref:ce,style:{height:1}}),!A&&c&&(0,$.jsx)(S,{align:`center`,paddingBlock:12,children:(0,$.jsx)(`span`,{className:Fe.shinyText,style:{fontSize:12},children:e(`management.loadingMore`)})}),!A&&l&&!c&&(0,$.jsx)(S,{align:`center`,paddingBlock:12,children:(0,$.jsx)(Ge,{error:l,variant:`inline`,onRetry:()=>{i()}})})]})]})})]}):(0,$.jsx)(Re,{debugId:`AgentTopicManager`})}),sn.displayName=`AgentTopicManager`})),ln,un,dn;e((()=>{ln=t(f()),Ie(),cn(),un=t(u()),dn=(0,ln.memo)(()=>(0,un.jsx)(ln.Suspense,{fallback:(0,un.jsx)(Re,{debugId:`AgentTopicManager`}),children:(0,un.jsx)(sn,{})}))}))();export{dn as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.