var version = [0, 0, 4]; var uglify = require('uglify-js'); // metadata var str = 1, list = 2, metadata = { types: { string: str, list: list }, keys: { name: str, version: str, description: str, repository: str, author: str, email: str, url: str, license: str, script: list, style: list } }; function quoteEscape(x) { return x.replace('"', '\\"').replace("'", "\\'"); } function loadScript(code, path) { return ('' + 'function callback(){' // + (isJQuery ? '(function($){var jQuery=$;' : '') + code // + (isJQuery ? '})(jQuery.noConflict(true))' : '') + '}' + 'var s = document.createElement("script");' + 'if (s.addEventListener) {' + ' s.addEventListener("load", callback, false)' + '} else if (s.readyState) {' + ' s.onreadystatechange = callback' + '}' + 's.src = "' + quoteEscape(path) + '";' + 'document.body.appendChild(s);' ); } function minify(code) { return uglify.minify(code, {fromString: true}).code; } function convert(code, options) { code = minify(code); var stylesCode = ''; if (options.script) { options.script = options.script.reverse(); for (var i=0, len=options.script.length; i