summaryrefslogtreecommitdiff
path: root/Settings/StaticFiles.hs
diff options
context:
space:
mode:
Diffstat (limited to 'Settings/StaticFiles.hs')
-rw-r--r--Settings/StaticFiles.hs17
1 files changed, 17 insertions, 0 deletions
diff --git a/Settings/StaticFiles.hs b/Settings/StaticFiles.hs
index 2510795..cb37905 100644
--- a/Settings/StaticFiles.hs
+++ b/Settings/StaticFiles.hs
@@ -5,6 +5,8 @@ import Yesod.Static
import qualified Yesod.Static as Static
import Settings (staticDir)
import Settings.Development
+import Language.Haskell.TH (Q, Exp, Name)
+import Data.Default (def)
-- | use this to create your static file serving site
staticSite :: IO Static.Static
@@ -16,3 +18,18 @@ staticSite = if development then Static.staticDevel staticDir
-- Warning: any files added to your static directory during run-time can't be
-- accessed this way. You'll have to use their FilePath or URL to access them.
$(staticFiles Settings.staticDir)
+
+combineSettings :: CombineSettings
+combineSettings = def
+
+-- The following two functions can be used to combine multiple CSS or JS files
+-- at compile time to decrease the number of http requests.
+-- Sample usage (inside a Widget):
+--
+-- > $(combineStylesheets 'StaticR [style1_css, style2_css])
+
+combineStylesheets :: Name -> [Route Static] -> Q Exp
+combineStylesheets = combineStylesheets' development combineSettings
+
+combineScripts :: Name -> [Route Static] -> Q Exp
+combineScripts = combineScripts' development combineSettings