@@ -1,7 +1,4 @@
11{-# LANGUAGE CPP #-}
2−{-# LANGUAGE DeriveFoldable #-}
3−{-# LANGUAGE DeriveFunctor #-}
4−{-# LANGUAGE DeriveTraversable #-}
52{-# LANGUAGE OverloadedStrings #-}
63{-# LANGUAGE RankNTypes #-}
74{-# LANGUAGE ScopedTypeVariables #-}
@@ -9,11 +6,9 @@
96module Network.API.Mandrill.Types where
107
118import Control.Applicative
12−import Control.Monad (mzero)
139import Data.Char
1410import Data.Maybe
1511import Data.Time
16−import Lens.Micro.TH (makeLenses)
1712import Network.API.Mandrill.Utils
1813import Test.QuickCheck
1914import Text.Email.Validate
@@ -22,15 +17,12 @@ import Data.Time.Format (TimeLocale, defaultTimeLocale)
2217#else
2318import System.Locale (TimeLocale, defaultTimeLocale)
2419#endif
20+import Control.Lens
2521import Data.Aeson
2622import Data.Aeson.TH
2723import Data.Aeson.Types
2824import qualified Data.ByteString as B
2925import qualified Data.ByteString.Base64 as Base64
30−#if !MIN_VERSION_base(4,8,0)
31−import Data.Foldable
32−import Data.Traversable
33−#endif
3426import qualified Data.HashMap.Strict as H
3527import Data.Monoid
3628import qualified Data.Text as T
@@ -38,7 +30,7 @@ import qualified Data.Text.Encoding as TL
3830import qualified Data.Text.Lazy as TL
3931import qualified Text.Blaze.Html as Blaze
4032import qualified Text.Blaze.Html.Renderer.Text as Blaze
41−import qualified Text.Email.Validate as TEV
33+
4234
4335timeParse :: ParseTime t => TimeLocale -> String -> String -> Maybe t
4436#if MIN_VERSION_time(1,5,0)
@@ -53,7 +45,7 @@ data MandrillError = MandrillError {
5345 , _merr_code :: !Int
5446 , _merr_name :: !T.Text
5547 , _merr_message :: !T.Text
56− } deriving (Show, Eq)
48+ } deriving Show
5749
5850makeLenses ''MandrillError
5951deriveJSON defaultOptions { fieldLabelModifier = drop 6 } ''MandrillError
@@ -91,7 +83,7 @@ deriveJSON defaultOptions {
9183-- which can be either a success or a failure.
9284data MandrillResponse k =
9385 MandrillSuccess k
94− | MandrillFailure MandrillError deriving (Show, Eq, Functor, Foldable, Traversable)
86+ | MandrillFailure MandrillError deriving Show
9587
9688instance FromJSON k => FromJSON (MandrillResponse k) where
9789 parseJSON v = case (parseMaybe parseJSON v) :: Maybe k of
@@ -158,11 +150,6 @@ unsafeMkMandrillHtml = MandrillHtml . Blaze.preEscapedToHtml
158150mkMandrillHtml :: Blaze.Html -> MandrillHtml
159151mkMandrillHtml = MandrillHtml
160152
161−#if MIN_VERSION_base(4,11,0)
162−instance Semigroup MandrillHtml where
163− MandrillHtml m1 <> MandrillHtml m2 = MandrillHtml (m1 <> m2)
164−#endif
165−
166153instance Monoid MandrillHtml where
167154 mempty = MandrillHtml mempty
168155 mappend (MandrillHtml m1) (MandrillHtml m2) = MandrillHtml (m1 <> m2)