eidolon/Settings/StaticFiles.hs

36 lines
1.4 KiB
Haskell

module Settings.StaticFiles where
import Prelude (IO)
import Yesod.Static (staticFiles)
import qualified Yesod.Static as Static
import Settings (appStaticDir, compileTimeAppSettings)
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
-- staticSite = if development then Static.staticDevel staticDir
-- else Static.static staticDir
-- | This generates easy references to files in the static directory at compile time,
-- giving you compile-time verification that referenced files exist.
-- 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 (appStaticDir compileTimeAppSettings)
-- 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