@@ -77,7 +77,7 @@ import Data.Maybe (fromMaybe)
77import Data.Monoid (Dual(..), First(..), Last(..))
77import Data.Monoid (Dual(..), First(..), Last(..))
78import Data.Ratio (Ratio, (%), numerator, denominator)
78import Data.Ratio (Ratio, (%), numerator, denominator)
79import Data.Text (Text, pack, unpack)
79import Data.Text (Text, pack, unpack)
80−import Data.Time (UTCTime, ZonedTime)
80+import Data.Time (Day, UTCTime, ZonedTime)
81import Data.Time.Format (FormatTime, formatTime, parseTime)
81import Data.Time.Format (FormatTime, formatTime, parseTime)
82import Data.Traversable as Tr (sequence, traverse)
82import Data.Traversable as Tr (sequence, traverse)
83import Data.Vector (Vector)
83import Data.Vector (Vector)
@@ -711,6 +711,13 @@ instance FromJSON DotNetTime where
711 _ -> fail "could not parse .NET time"
711 _ -> fail "could not parse .NET time"
712 {-# INLINE parseJSON #-}
712 {-# INLINE parseJSON #-}
714+instance ToJSON Day where
715+ toJSON = stringEncoding
716+ toEncoding z = Encoding (E.day z)
718+instance FromJSON Day where
719+ parseJSON = withText "Day" (Time.run Time.day)
714instance ToJSON ZonedTime where
721instance ToJSON ZonedTime where
715 toJSON = stringEncoding
722 toJSON = stringEncoding