packages feed

hablo-1.1.0.1: src/Page.hs

module Page (
      Page(..)
    , at
  ) where

import Markdown (Markdown(..), MarkdownContent(..))
import qualified Markdown as Markdown (at)
import Text.ParserCombinators.Parsec (ParseError)

newtype Page = Page Markdown
instance MarkdownContent Page where
  getMarkdown (Page markdown) = markdown

at :: FilePath -> IO (Either ParseError (String, Page))
at filePath = fmap makePage <$> Markdown.at filePath
  where
    makePage markdown = (key markdown, Page markdown)