@@ -24,9 +24,12 @@ import Data.Time
24import GHC.Generics (Generic)
24import GHC.Generics (Generic)
25import GHC.TypeLits
25import GHC.TypeLits
26import Test.QuickCheck
26import Test.QuickCheck
27+import Web.HttpApiData
27import Text.XML.DOM.Parser
30import Text.XML.DOM.Parser
28import Text.XML.Writer
31import Text.XML.Writer
29−import Web.HttpApiData
32+#endif
31#if !MIN_VERSION_base(4,13,0)
34#if !MIN_VERSION_base(4,13,0)
32import Control.Monad.Fail
35import Control.Monad.Fail
@@ -82,6 +85,7 @@ instance (ParseTime a, KnownSymbol fmt) => FromHttpApiData (FmtTime fmt a) where
82 parseUrlPiece t =
85 parseUrlPiece t =
83 maybe (Left $ errParseFmtTime @fmt t) Right $ fmtTimeFromString $ T.unpack t
86 maybe (Left $ errParseFmtTime @fmt t) Right $ fmtTimeFromString $ T.unpack t
85instance (FormatTime a, KnownSymbol fmt) => ToXML (FmtTime fmt a) where
89instance (FormatTime a, KnownSymbol fmt) => ToXML (FmtTime fmt a) where
86 toXML = toXML . T.pack . fmtTimeToString
90 toXML = toXML . T.pack . fmtTimeToString
@@ -90,6 +94,7 @@ instance (ParseTime a, KnownSymbol fmt) => FromDom (FmtTime fmt a) where
90 s <- fromDom
94 s <- fromDom
91 maybe (throwParserError $ PEContentWrongFormat $ errParseFmtTime @fmt s)
95 maybe (throwParserError $ PEContentWrongFormat $ errParseFmtTime @fmt s)
92 pure $ fmtTimeFromString $ T.unpack s
96 pure $ fmtTimeFromString $ T.unpack s
94type ZonedISO8601 = ("%FT%T%Q%z" :: Symbol)
99type ZonedISO8601 = ("%FT%T%Q%z" :: Symbol)