pace-js
Version:
Automatic page load progress bar
28 lines (22 loc) • 582 B
text/coffeescript
if module?
vm = require('vm')
# Used by the eval'd code
Color = require('color')
loadTheme = (name, cb) ->
$.ajax
url: "/pace/templates/pace-theme-#{ name }.tmpl.css"
success: cb
compileTheme = (body, args={}) ->
body.replace /`([\s\S]*?)`/gm, (match, code) ->
if module?
val = vm.runInNewContext code, {args, Color}
else
# It matters that args is in the context
Color = window.Color
val = eval(code)
val
if module?
module.exports = {compileTheme}
else
window.loadTheme = loadTheme
window.compileTheme = compileTheme