web-routes-hsp 0.21.3 → 0.22.0
raw patch · 2 files changed
+17/−9 lines, 2 filesdep ~web-routes
Dependency ranges changed: web-routes
Files
- Web/Routes/XMLGenT.hs +11/−7
- web-routes-hsp.cabal +6/−2
Web/Routes/XMLGenT.hs view
@@ -1,4 +1,4 @@-{-# LANGUAGE MultiParamTypeClasses, TypeSynonymInstances, FlexibleInstances, TypeFamilies #-}+{-# LANGUAGE CPP, MultiParamTypeClasses, TypeSynonymInstances, FlexibleInstances, TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-orphans #-} module Web.Routes.XMLGenT where @@ -7,13 +7,18 @@ import qualified Data.Text as T import qualified Data.Text.Lazy as TL import qualified HSX.XMLGenerator as HSX-import Web.Routes.RouteT (RouteT, ShowURL(showURLParams), showURL, URL)+import Web.Routes.RouteT (RouteT, MonadRoute(..), showURL, URL) instance (Functor m, Monad m) => HSX.XMLGen (RouteT url m) where+#if __GLASGOW_HASKELL__ < 702 type HSX.XML (RouteT url m) = XML newtype HSX.Child (RouteT url m) = UChild { unUChild :: XML } newtype HSX.Attribute (RouteT url m) = UAttr { unUAttr :: Attribute }-+#else+ type XML (RouteT url m) = XML+ newtype Child (RouteT url m) = UChild { unUChild :: XML }+ newtype Attribute (RouteT url m) = UAttr { unUAttr :: Attribute }+#endif genElement n attrs children = do attribs <- map unUAttr <$> asAttr attrs childer <- flattenCDATA . map unUChild <$> asChild children@@ -70,7 +75,7 @@ instance (Functor m, Monad m) => EmbedAsAttr (RouteT url m) (Attr String url) where asAttr (n := u) = do url <- showURL u- asAttr $ MkAttr (toName n, pAttrVal url)+ asAttr $ MkAttr (toName n, pAttrVal (T.unpack url)) instance (Functor m, Monad m) => EmbedAsChild (RouteT url m) Char where asChild = XMLGenT . return . (:[]) . UChild . pcdata . (:[])@@ -106,7 +111,6 @@ instance (Functor m, Monad m) => XMLGenerator (RouteT url m) --instance (ShowURL m) => ShowURL (XMLGenT m) where+instance (MonadRoute m) => MonadRoute (XMLGenT m) where type URL (XMLGenT m) = URL m- showURLParams url params = XMLGenT $ showURLParams url params+ askRouteFn = XMLGenT $ askRouteFn
web-routes-hsp.cabal view
@@ -1,5 +1,5 @@ Name: web-routes-hsp-Version: 0.21.3+Version: 0.22.0 License: BSD3 License-File: LICENSE Author: jeremy@seereason.com@@ -11,7 +11,11 @@ Build-type: Simple Library- Build-Depends: base >= 4 && < 5, hsx >= 0.7.0, hsp, web-routes >= 0.23, text+ Build-Depends: base >= 4 && < 5,+ hsx >= 0.7.0, + hsp, + text,+ web-routes >= 0.26 Exposed-Modules: Web.Routes.XMLGenT source-repository head