{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE QuasiQuotes #-}
{-# LANGUAGE NoImplicitPrelude #-}


module Web.Geek.MarkupEngine.Markdown where

import Air.Env
import Air.TH
import Data.Text (Text, pack, unpack)
import GHC.Exts( IsString(..) )
import Test.Hspec
import Text.Pandoc (readMarkdown, writeHtmlString)
import Web.Geek.Type
import qualified Data.ByteString.Char8 as B
import qualified Data.Default as Default

markdown :: MarkupEngine
markdown = def
  {
    markup_engine_name = "markdown"
  , extensions = ["md", "markdown"]
  , transformer = _transformer
  }
  where
    _transformer = 
        unpack
      > readMarkdown Default.def
      > writeHtmlString Default.def
      > fromString