yesod-json compiles
This commit is contained in:
parent
6eddfbc273
commit
1be90d2950
@ -13,7 +13,7 @@ module Yesod.Json
|
|||||||
, toArray
|
, toArray
|
||||||
) where
|
) where
|
||||||
|
|
||||||
import Yesod.Handler (GHandler)
|
import Yesod.Handler (GHandler, waiRequest)
|
||||||
import Yesod.Content
|
import Yesod.Content
|
||||||
( ToContent (toContent), RepHtmlJson (RepHtmlJson), RepHtml (RepHtml)
|
( ToContent (toContent), RepHtmlJson (RepHtmlJson), RepHtml (RepHtml)
|
||||||
, RepJson (RepJson), Content (ContentBuilder)
|
, RepJson (RepJson), Content (ContentBuilder)
|
||||||
@ -23,9 +23,8 @@ import Yesod.Widget (GWidget)
|
|||||||
import qualified Data.Aeson as J
|
import qualified Data.Aeson as J
|
||||||
import qualified Data.Aeson.Encode as JE
|
import qualified Data.Aeson.Encode as JE
|
||||||
import Data.Aeson.Encode (fromValue)
|
import Data.Aeson.Encode (fromValue)
|
||||||
import Data.Attoparsec.Enumerator (iterParser)
|
import Data.Conduit.Attoparsec (sinkParser)
|
||||||
import Data.Text (text, pack)
|
import Data.Text (Text)
|
||||||
import Control.Arrow (first)
|
|
||||||
import Control.Monad.Trans.Class (lift)
|
import Control.Monad.Trans.Class (lift)
|
||||||
import Data.HashMap.Strict (fromList)
|
import Data.HashMap.Strict (fromList)
|
||||||
import qualified Data.Vector as V
|
import qualified Data.Vector as V
|
||||||
@ -34,6 +33,8 @@ import Data.Text.Lazy.Builder (fromLazyText)
|
|||||||
import Data.Text.Lazy.Encoding (decodeUtf8)
|
import Data.Text.Lazy.Encoding (decodeUtf8)
|
||||||
import Data.Text.Lazy.Builder (toLazyText)
|
import Data.Text.Lazy.Builder (toLazyText)
|
||||||
import qualified Blaze.ByteString.Builder.Char.Utf8 as Blaze
|
import qualified Blaze.ByteString.Builder.Char.Utf8 as Blaze
|
||||||
|
import Data.Conduit (($$))
|
||||||
|
import Network.Wai (requestBody)
|
||||||
|
|
||||||
instance ToContent J.Value where
|
instance ToContent J.Value where
|
||||||
toContent = flip ContentBuilder Nothing
|
toContent = flip ContentBuilder Nothing
|
||||||
@ -59,8 +60,9 @@ jsonToRepJson = return . RepJson . toContent
|
|||||||
--
|
--
|
||||||
-- /Since: 0.2.3/
|
-- /Since: 0.2.3/
|
||||||
parseJsonBody :: GHandler sub master J.Value
|
parseJsonBody :: GHandler sub master J.Value
|
||||||
parseJsonBody = lift $ iterParser J.json'
|
parseJsonBody = do
|
||||||
|
req <- waiRequest
|
||||||
|
lift $ requestBody req $$ sinkParser J.json'
|
||||||
|
|
||||||
instance ToJavascript J.Value where
|
instance ToJavascript J.Value where
|
||||||
toJavascript = fromLazyText . decodeUtf8 . JE.encode
|
toJavascript = fromLazyText . decodeUtf8 . JE.encode
|
||||||
|
|||||||
@ -22,8 +22,10 @@ library
|
|||||||
, containers >= 0.2
|
, containers >= 0.2
|
||||||
, unordered-containers
|
, unordered-containers
|
||||||
, blaze-builder
|
, blaze-builder
|
||||||
, attoparsec-enumerator >= 0.3 && < 0.4
|
, attoparsec-conduit >= 0.0 && < 0.1
|
||||||
|
, conduit >= 0.0 && < 0.1
|
||||||
, transformers >= 0.2.2 && < 0.3
|
, transformers >= 0.2.2 && < 0.3
|
||||||
|
, wai >= 1.0 && < 1.1
|
||||||
exposed-modules: Yesod.Json
|
exposed-modules: Yesod.Json
|
||||||
ghc-options: -Wall
|
ghc-options: -Wall
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user