diff options
Diffstat (limited to 'node_modules/tmpl/lib/tmpl.js')
-rw-r--r-- | node_modules/tmpl/lib/tmpl.js | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/node_modules/tmpl/lib/tmpl.js b/node_modules/tmpl/lib/tmpl.js new file mode 100644 index 0000000..63ed9b2 --- /dev/null +++ b/node_modules/tmpl/lib/tmpl.js @@ -0,0 +1,17 @@ +var INTERPOLATE = /{([^{]+?)}/g + +module.exports = function(str, data) { + var tmpl = 'var __p=[],print=function(){__p.push.apply(__p,arguments);};' + + 'with(obj||{}){__p.push(\'' + + str.replace(/\\/g, '\\\\') + .replace(/'/g, "\\'") + .replace(INTERPOLATE, function(match, code) { + return "'," + code.replace(/\\'/g, "'") + ",'" + }) + .replace(/\r/g, '\\r') + .replace(/\n/g, '\\n') + .replace(/\t/g, '\\t') + + "');}return __p.join('');" + var func = new Function('obj', tmpl) + return data ? func(data) : func +} |