diff --git a/solutions/gleam/log-levels/1/src/log_levels.gleam b/solutions/gleam/log-levels/1/src/log_levels.gleam new file mode 100644 index 0000000..83bfcc3 --- /dev/null +++ b/solutions/gleam/log-levels/1/src/log_levels.gleam @@ -0,0 +1,22 @@ +import gleam/string +pub fn message(log_line: String) -> String { + case log_line { + "[INFO]:" <> err -> err + "[WARNING]:" <> err -> err + "[ERROR]:" <> err -> err + _ -> "" + } |> string.trim +} + +pub fn log_level(log_line: String) -> String { + case log_line { + "[INFO]" <> _ -> "info" + "[WARNING]" <> _ -> "warning" + "[ERROR]" <> _ -> "error" + _ -> "" + } +} + +pub fn reformat(log_line: String) -> String { + message(log_line) <> " (" <> log_level(log_line) <> ")" +}