@@ -1,17 +1,18 @@
11{-# LANGUAGE OverloadedStrings #-}
22module Obelisk.ExecutableConfig.Inject where
33
4−import Data.ByteString (ByteString)
5−import qualified Data.ByteString as BS
64import Data.Semigroup ((<>))
5+import Data.ByteString (ByteString)
76import qualified Data.Text as T
8−import qualified Data.Text.Encoding as T
7+import qualified Data.Text.IO as T
98import Reflex.Dom
109import System.FilePath ((</>))
1110
1211inject :: FilePath -> IO ByteString
1312inject item = do
14− f <- BS.readFile $ "config" </> item
15− fmap snd $ renderStatic $
16− elAttr "script" ("type" =: "text/plain" <> "id" =: ("config-" <> T.pack item)) $
17− text $ T.decodeUtf8 f
13+ f <- T.readFile $ "config" </> item
14+ fmap snd $ renderStatic $ injectPure item f
15+
16+injectPure :: DomBuilder t m => FilePath -> T.Text -> m ()
17+injectPure item content = elAttr "script" ("type" =: "text/plain" <> "id" =: ("config-" <> T.pack item)) $
18+ text content