Fix the email comment format

This commit is contained in:
2020-12-10 21:38:32 +02:00
parent b483ccb3f4
commit 98ec13e0cd
4 changed files with 24 additions and 8 deletions

View File

@ -29,12 +29,16 @@ decode = parseOnly parseHeader
parseHeader :: Parser Header
parseHeader = parseFrom <|> parseTo
parseFrom :: Parser Header
parseFrom = From <$> (string "From:" *> emptySpace *> email)
parseFrom = From <$> (string "From:" *> emptySpace *> (bracketEmail <|> email))
parseTo :: Parser Header
parseTo = To <$> (string "To:" *> emptySpace *> emails)
emptySpace = many' space
emails :: Parser (Vector Text)
emails = V.fromList <$> email `sepBy` char ','
emails = V.fromList <$> (bracketEmail <|> email) `sepBy` char ','
bracketEmail :: Parser Text
bracketEmail = do
_ <- manyTill anyChar (char '<')
T.pack <$> manyTill anyChar (char '>')
email :: Parser Text
email = do
_ <- many' space