openclaw
Version:
Multi-channel AI gateway with extensible messaging integrations
3 lines • 1.08 kB
JavaScript
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{K as t,X as n}from"./lit-runtime-CV_MH99K.js";import{A as r,O as i,k as a}from"./dist-Bkc2S6Bd.js";import{n as o,t as s}from"./code-language-69WYW1tT.js";async function c(e,t,r=t){let s=new Map,c=0;for(let t of e)if(c+=t.text.length+1,c>l)return s;let u={path:t,oldPath:r,lines:[]},d=[];for(let t of e)t.kind===`file`||t.kind===`skip`?(d.push(u),u=t.kind===`file`?{path:t.path??``,oldPath:t.oldPath??t.path??``,lines:[]}:{...u,lines:[]}):u.lines.push(t);return d.push(u),await Promise.all(d.map(async e=>{if(e.lines.length)for(let t of[`add`,`del`]){let r=await o(t===`add`?e.oldPath:e.path);if(!r)continue;let c=e.lines.filter(e=>e.kind!==t),l=c.map(e=>e.text).join(`
`),u=[[]];a(l,r.language.parser.parse(l),i,(e,t)=>u.at(-1).push(t?n`<span class=${t}>${e}</span>`:e),()=>{u.push([])}),c.forEach((e,n)=>{e.text&&(t===`del`||e.kind===`del`)&&s.set(e,u[n])})}})),s}var l;function u(){return(u=e((()=>{r(),t(),s(),l=12e4})))()}u();export{c as highlightDiffLines};
//# sourceMappingURL=chat-diff-highlight.runtime-DwW40l-1.js.map