viz: update ansi regex (#12605)

* viz: update ansi regex

* better

* add ansi_colors_light

* javascript
This commit is contained in:
qazal
2025-10-10 13:58:58 +03:00
committed by GitHub
parent ac96d98745
commit 464c56862f
+2 -1
View File
@@ -14,8 +14,9 @@ const darkenHex = (h, p = 0) =>
).toString(16).padStart(6, '0')}`;
const ANSI_COLORS = ["#b3b3b3", "#ff6666", "#66b366", "#ffff66", "#6666ff", "#ff66ff", "#66ffff", "#ffffff"];
const ANSI_COLORS_LIGHT = ["#d9d9d9","#ff9999","#99cc99","#ffff99","#9999ff","#ff99ff","#ccffff","#ffffff"];
const parseColors = (name, defaultColor="#ffffff") => Array.from(name.matchAll(/(?:\u001b\[(\d+)m([\s\S]*?)\u001b\[0m)|([^\u001b]+)/g),
([_, code, colored_st, st]) => ({ st: colored_st ?? st, color: code != null ? ANSI_COLORS[(parseInt(code)-30+60)%60] : defaultColor }));
([_, code, colored_st, st]) => ({ st: colored_st ?? st, color: code != null ? (code>=90 ? ANSI_COLORS_LIGHT : ANSI_COLORS)[(parseInt(code)-30+60)%60] : defaultColor }));
const rect = (s) => (typeof s === "string" ? document.querySelector(s) : s).getBoundingClientRect();