UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

2 lines 1.85 kB
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{$o as t,Qo as n}from"./control-ui-boot-shared-CXVvK2AW.js";async function r(e){let t=e.maxSessionKeys,r=!1,i=t?await(async()=>{let n=new Map,i=Math.max(1,e.maxListPages??1),a=0;for(let o=0;o<i;o+=1){let i=await e.listSessions({...e.listOptions,limit:200,offset:a});if(e.isCurrent&&!e.isCurrent())return[];if(!i)throw Error(`Unable to load sessions for transcript search.`);let o=e.mapPageRows?.(i.sessions)??i.sessions;for(let e of o){if(!n.has(e.key)&&n.size>=t)return r=!0,[...n.values()];n.set(e.key,e)}if(!i.hasMore)return[...n.values()];if(n.size>=t)return r=!0,[...n.values()];let s=i.nextOffset??a+i.sessions.length;if(s<=a)throw Error(`Session pagination did not advance during transcript search.`);a=s}return r=!0,[...n.values()]})():await n({initialResult:e.result,list:t=>e.listSessions({...e.listOptions,limit:200,offset:t}),isCurrent:e.isCurrent,mapPageRows:e.mapPageRows,missingResultError:`Unable to load all sessions for transcript search.`,stalledPaginationError:`Session pagination did not advance during transcript search.`})??[],a=new Map;for(let t of i){let n=e.resolveAgentId(t.key);if(!n)continue;let r=a.get(n)??[];r.push(t.key),a.set(n,r)}let o=[],s=e.maxSearchRequests??1/0,c=!1;for(let[t,n]of a){for(let r=0;r<n.length;r+=200){if(o.length>=s){c=!0;break}o.push(e.client.request(`sessions.search`,{agentId:t,sessionKeys:n.slice(r,r+200),query:e.query,limit:25}))}if(c)break}let l=await Promise.all(o),u=l.flatMap(e=>e.results).toSorted((e,t)=>t.score-e.score||t.timestamp-e.timestamp).slice(0,25);return{sessions:i,results:u,indexing:l.some(e=>e.indexing===!0),truncated:r||c||l.some(e=>e.truncated===!0)||l.reduce((e,t)=>e+t.results.length,0)>u.length}}function i(){return(i=e((()=>{t()})))()}export{r as n,i as t}; //# sourceMappingURL=transcript-search-BNkA0vxn.js.map