Files
openclaw-config/cache/control-ui-assets/d08fd045b9cb86d13f0b4aa403c8a06ddcd32e533058ae463245169e5cff5e85/assets/chat-diff-highlight.runtime-CbXKn64d.js
T

3 lines
1.1 KiB
JavaScript

import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{J as t,W as n}from"./lit-runtime-BEtFSUCp.js";import{A as r,O as i,k as a}from"./dist-CknG_5Uc.js";import{n as o,t as s}from"./code-language-Dtrc3ZLp.js";async function c(e,n,r=n){let s=new Map,c=0;for(let t of e)if(c+=t.text.length+1,c>l)return s;let u={path:n,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 n of[`add`,`del`]){let r=await o(n===`add`?e.oldPath:e.path);if(!r)continue;let c=e.lines.filter(e=>e.kind!==n),l=c.map(e=>e.text).join(`
`),u=[[]];a(l,r.language.parser.parse(l),i,(e,n)=>u.at(-1).push(n?t`<span class=${n}>${e}</span>`:e),()=>{u.push([])}),c.forEach((e,t)=>{e.text&&(n===`del`||e.kind===`del`)&&s.set(e,u[t])})}})),s}var l;function u(){return(u=e((()=>{r(),n(),s(),l=12e4})))()}u();export{c as highlightDiffLines};
//# sourceMappingURL=chat-diff-highlight.runtime-CbXKn64d.js.map