{-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverlappingInstances #-} {-# LANGUAGE QuasiQuotes #-} {-# LANGUAGE RankNTypes #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE TupleSections #-} {-# LANGUAGE ViewPatterns #-} module Forml.Static where import Text.InterpolatedString.Perl6 import qualified Data.ByteString.UTF8 as B import qualified Data.ByteString.Lazy as BL import qualified Data.ByteString as BS import Data.FileEmbed import Data.Monoid import qualified Codec.Compression.GZip as G jasmine :: String header :: String css :: String prelude' :: B.ByteString jquery :: String footer :: String report :: String prettify :: String htmljs :: String console :: String scripts :: String css' :: String htmljs = "$('pre').addClass('prettyprint lang-hs');prettyPrint();$('#run_tests').bind('click', $prelude.$html.table_of_contents)" console = "$prelude.$html.console_runner()" prelude' = BS.concat . BL.toChunks . G.decompress $ BL.fromChunks [$(embedFile "prelude.obj")] jquery = B.toString $(embedFile "lib/js/jquery.js") header = B.toString $(embedFile "src/html/header.html") footer = B.toString $(embedFile "src/html/footer.html") report = B.toString $(embedFile "src/js/FormlReporter.js") scripts = [qq||] css' = [qq||] jasmine = B.toString $(embedFile "lib/js/jasmine-1.0.1/jasmine.js") `mappend` B.toString $(embedFile "lib/js/jasmine-1.0.1/jasmine-html.js") prettify = B.toString $(embedFile "lib/js/prettify.js") `mappend` B.toString $(embedFile "lib/js/lang-hs.js") css = B.toString $(embedFile "lib/js/jasmine-1.0.1/jasmine.css") `mappend` B.toString $(embedFile "lib/js/prettify.css") `mappend` B.toString $(embedFile "src/html/styles.css")