@@ -26,6 +26,7 @@ import Prelude hiding (id, (.))
26import Control.Category
26import Control.Category
27import Control.Monad
27import Control.Monad
28import Control.Monad.Except
28import Control.Monad.Except
29+import Control.Monad.Fail (MonadFail)
29import Control.Categorical.Bifunctor
30import Control.Categorical.Bifunctor
30import Data.ByteString (ByteString)
31import Data.ByteString (ByteString)
31import qualified Data.ByteString.Char8 as BSC8
32import qualified Data.ByteString.Char8 as BSC8
@@ -144,7 +145,7 @@ serveObeliskApp urlEnc serveStaticAsset frontendApp config = \case
144 writeText msg
145 writeText msg
145 ResourceRoute_Version :=> Identity () -> doNotCache >> serveFileIfExistsAs "text/plain" "version"
146 ResourceRoute_Version :=> Identity () -> doNotCache >> serveFileIfExistsAs "text/plain" "version"
147−serveStaticAssets :: MonadSnap m => StaticAssets -> [Text] -> m ()
148+serveStaticAssets :: (MonadSnap m, MonadFail m) => StaticAssets -> [Text] -> m ()
148serveStaticAssets assets pathSegments = serveAsset (_staticAssets_processed assets) (_staticAssets_unprocessed assets) $ T.unpack $ T.intercalate "/" pathSegments
149serveStaticAssets assets pathSegments = serveAsset (_staticAssets_processed assets) (_staticAssets_unprocessed assets) $ T.unpack $ T.intercalate "/" pathSegments
150data StaticAssets = StaticAssets
151data StaticAssets = StaticAssets
@@ -162,7 +163,7 @@ staticRenderContentType = "text/html; charset=utf-8"
163--TODO: Don't assume we're being served at "/"
164--TODO: Don't assume we're being served at "/"
164serveGhcjsApp
165serveGhcjsApp
165− :: (MonadSnap m, HasCookies m)
166+ :: (MonadSnap m, HasCookies m, MonadFail m)
166 => (R appRouteComponent -> Text)
167 => (R appRouteComponent -> Text)
167 -> GhcjsApp (R appRouteComponent)
168 -> GhcjsApp (R appRouteComponent)
168 -> Map Text ByteString
169 -> Map Text ByteString