Files
start-os/web/projects/shared/src/util/convert-ansi.ts
Alex Inkin 9a0ae549f6 feat: refactor logs (#2555)
* feat: refactor logs

* chore: comments

* feat: add system logs

* feat: update shared logs
2024-02-05 19:26:00 -07:00

21 lines
522 B
TypeScript

import { Log } from '../types/api'
import { toLocalIsoString } from './to-local-iso-string'
const Convert = require('ansi-to-html')
const CONVERT = new Convert({
bg: 'transparent',
colors: { 4: 'Cyan' },
escapeXML: true,
})
export function convertAnsi(entries: readonly Log[]): string {
return entries
.map(
({ timestamp, message }) =>
`<b style="color: #FFF">${toLocalIsoString(
new Date(timestamp),
)}</b>&nbsp;&nbsp;${CONVERT.toHtml(message)}`,
)
.join('<br />')
}