@danielkalen/simplybind
Version:
Magically simple, framework-less one-way/two-way data binding for frontend/backend in ~5kb.
25 lines (21 loc) • 662 B
text/coffeescript
extend = require 'smart-extend'
module.exports = (file, options, file_, content)->
if options._flags.debug
return content
else
Closure = require('google-closure-compiler-js')
result = Closure.compile(extend jsCode:[src:content], config)
if result.errors.length
console.error(result.errors)
throw new Error('closure compiler failed')
else if result.warnings.length
console.error(result.warnings)
return result.compiledCode
config =
applyInputSourceMaps: false
languageIn: 'ECMASCRIPT5'
languageOut: 'ECMASCRIPT5'
compilationLevel: 'SIMPLE'
assumeFunctionWrapper: false
exportLocalPropertyDefinitions: true
createSourceMap: true