@@ -1,3 +1,4 @@
1+{-# LANGUAGE CPP #-}
12{-# LANGUAGE ScopedTypeVariables #-}
23module Foreign.JavaScript.Utils
34 ( bsFromMutableArrayBuffer
@@ -6,7 +7,6 @@ module Foreign.JavaScript.Utils
67 , js_jsonParse
78 ) where
89
9−import Control.Exception (SomeException)
1010import Control.Lens
1111import Data.Aeson
1212import Data.ByteString (ByteString)
@@ -15,10 +15,18 @@ import Foreign.JavaScript.Internal.Utils (js_dataView)
1515import qualified GHCJS.Buffer as JS
1616import GHCJS.DOM.Types (ArrayBuffer (..))
1717import GHCJS.Marshal ()
18−import Language.Javascript.JSaddle (fromJSVal, catch, jsg, js1)
18+import Language.Javascript.JSaddle (jsg, js1)
1919import qualified JavaScript.TypedArray.ArrayBuffer as JS
2020import Language.Javascript.JSaddle.Types (JSString, JSM, JSVal, MonadJSM, ghcjsPure, jsval, liftJSM)
21+#ifdef ghcjs_HOST_OS
22+import Control.Exception (SomeException)
23+import Language.Javascript.JSaddle (fromJSVal, catch)
2124import System.IO.Unsafe
25+#else
26+import qualified Data.ByteString.Lazy as LBS
27+import Data.Text.Encoding
28+import Language.Javascript.JSaddle (textFromJSString)
29+#endif
2230
2331{-# INLINABLE bsFromMutableArrayBuffer #-}
2432bsFromMutableArrayBuffer :: MonadJSM m => JS.MutableArrayBuffer -> m ByteString