forked from
jollywhoppers.com/witchsky.app
Bluesky app fork with some witchin' additions 馃挮
1import {LogLevel, type Metadata, type Serializable} from '#/logger/types'
2
3export const enabledLogLevels: {
4 [key in LogLevel]: LogLevel[]
5} = {
6 [LogLevel.Debug]: [
7 LogLevel.Debug,
8 LogLevel.Info,
9 LogLevel.Log,
10 LogLevel.Warn,
11 LogLevel.Error,
12 ],
13 [LogLevel.Info]: [LogLevel.Info, LogLevel.Log, LogLevel.Warn, LogLevel.Error],
14 [LogLevel.Log]: [LogLevel.Log, LogLevel.Warn, LogLevel.Error],
15 [LogLevel.Warn]: [LogLevel.Warn, LogLevel.Error],
16 [LogLevel.Error]: [LogLevel.Error],
17}
18
19export function prepareMetadata(
20 metadata: Metadata,
21): Record<string, Serializable> {
22 return Object.keys(metadata).reduce((acc, key) => {
23 let value = metadata[key]
24 if (value instanceof Error) {
25 value = value.toString()
26 }
27 return {...acc, [key]: value}
28 }, {})
29}