summaryrefslogtreecommitdiff
path: root/ext/console/02_console.js
diff options
context:
space:
mode:
Diffstat (limited to 'ext/console/02_console.js')
-rw-r--r--ext/console/02_console.js32
1 files changed, 24 insertions, 8 deletions
diff --git a/ext/console/02_console.js b/ext/console/02_console.js
index d3734b6a4..3020c0794 100644
--- a/ext/console/02_console.js
+++ b/ext/console/02_console.js
@@ -1621,10 +1621,18 @@
} else if (css.backgroundColor == "white") {
ansi += `\x1b[47m`;
} else {
- const [r, g, b] = ArrayIsArray(css.backgroundColor)
- ? css.backgroundColor
- : parseCssColor(css.backgroundColor);
- ansi += `\x1b[48;2;${r};${g};${b}m`;
+ if (ArrayIsArray(css.backgroundColor)) {
+ const [r, g, b] = css.backgroundColor;
+ ansi += `\x1b[48;2;${r};${g};${b}m`;
+ } else {
+ const parsed = parseCssColor(css.backgroundColor);
+ if (parsed !== null) {
+ const [r, g, b] = parsed;
+ ansi += `\x1b[48;2;${r};${g};${b}m`;
+ } else {
+ ansi += "\x1b[49m";
+ }
+ }
}
}
if (!colorEquals(css.color, prevCss.color)) {
@@ -1647,10 +1655,18 @@
} else if (css.color == "white") {
ansi += `\x1b[37m`;
} else {
- const [r, g, b] = ArrayIsArray(css.color)
- ? css.color
- : parseCssColor(css.color);
- ansi += `\x1b[38;2;${r};${g};${b}m`;
+ if (ArrayIsArray(css.color)) {
+ const [r, g, b] = css.color;
+ ansi += `\x1b[38;2;${r};${g};${b}m`;
+ } else {
+ const parsed = parseCssColor(css.color);
+ if (parsed !== null) {
+ const [r, g, b] = parsed;
+ ansi += `\x1b[38;2;${r};${g};${b}m`;
+ } else {
+ ansi += "\x1b[39m";
+ }
+ }
}
}
if (css.fontWeight != prevCss.fontWeight) {