From dbee729eee6afce691d8abe17bfd6dfbeef0581c Mon Sep 17 00:00:00 2001 From: beckerinj Date: Wed, 3 May 2023 03:13:42 -0400 Subject: [PATCH] show ansi colors in the logs correctly --- .../src/components/deployment/tabs/log/Log.tsx | 9 ++++++--- package.json | 5 +++++ yarn.lock | 15 +++++++++++++++ 3 files changed, 26 insertions(+), 3 deletions(-) create mode 100644 package.json create mode 100644 yarn.lock diff --git a/frontend/src/components/deployment/tabs/log/Log.tsx b/frontend/src/components/deployment/tabs/log/Log.tsx index 408efe509..f25061dbf 100644 --- a/frontend/src/components/deployment/tabs/log/Log.tsx +++ b/frontend/src/components/deployment/tabs/log/Log.tsx @@ -6,6 +6,7 @@ import { onCleanup, Show, } from "solid-js"; +import Convert from "ansi-to-html"; import { pushNotification } from "../../../.."; import { useAppState } from "../../../../state/StateProvider"; import { DockerContainerState, Log as LogType } from "../../../../types"; @@ -22,6 +23,8 @@ const POLLING_RATE = 5000; let interval = -1; +const convert = new Convert(); + const Log: Component<{ log?: LogType; logTail: number; @@ -60,9 +63,9 @@ const Log: Component<{ if (deployment()?.state === DockerContainerState.NotDeployed) { return "not deployed"; } else { - return ( + return convert.toHtml( (p.error ? p.log?.stderr : p.log?.stdout) || - `no${p.error ? " error" : ""} log` + `no${p.error ? " error" : ""} log` ); } }; @@ -145,7 +148,7 @@ const Log: Component<{ } }} > -
{log()}
+