module Slick.Mustache ( compileTemplate' ) where import Development.Shake import Text.Mustache import Text.Mustache.Compile -- | Like 'compileTemplate' but tracks changes to template files and partials -- within Shake. compileTemplate' :: FilePath -> Action Template compileTemplate' fp = do need [fp] result <- liftIO $ localAutomaticCompile fp case result of Right templ -> do need (getPartials . ast $ templ) return templ Left err -> fail $ show err