module.exports = class TaskHelper extends require(‘./abstract’)
getGruntTask: -> 'sass' getGruntTaskTarget: -> "graspi-css-sass_compile-#{super()}" isEnabled: -> return false unless super() == true return false unless @_.isObject(@getAppConfig().css.files) return false unless @getConfig().cssSass.enabled == true @_.isObject(@getAppConfig().css.files.sassFiles) buildConfig: -> sassConfig = @getConfig().cssSass changed = false @_.each @g.file.expand("#{@getAppConfig().css.basePath}/**/*.{sass,scss}"), (file) => return if changed == true return if @fileCacheHasChanged(file) == false changed = true return {} unless changed == true cfg = {} cfg.options = {} cfg.options.trace = sassConfig.trace cfg.options.cacheLocation = sassConfig.cacheLocation cfg.options.compass = sassConfig.compass cfg.options.debugInfo = sassConfig.debugInfo cfg.options.lineNumbers = sassConfig.lineNumbers cfg.options.precision = sassConfig.precision cfg.options.quiet = sassConfig.quiet cfg.options.sourcemap = sassConfig.sourcemap cfg.options.style = sassConfig.style cfg.options.update = sassConfig.update cfg.options.loadPath = @_.clone(sassConfig.loadPath) cfg.files = [{ expand: true ext: '.css' src: @getAppConfig().css.files.sassFiles || [] cwd: "#{@getAppConfig().css.basePath}" dest: "#{@getConfig().tmp.css}/#{@getAppConfig().css.destFile}" }] cfg.options.loadPath.push @getAppConfig().css.basePath @_.each @g.file.expand("#{@getAppConfig().css.basePath}/**/*.{sass,scss}"), (file) => @fileCacheUpdate(file) cfg