less.render(lessData, options, function (err, result) { if (err) { return bygglib.logger.error('less', error); } deps = result.imports.filter(function (path) { return path !== lessFile; }); watcher.watch(deps); var outputNode = bygglib.tree.cloneNode(node); var outputPrefix = path.dirname(node.name) + '/'; if (outputPrefix === './') { outputPrefix = ''; } outputNode.name = outputPrefix + path.basename(node.name, path.extname(node.name)) + '.css'; outputNode.metadata.mime = 'text/css'; outputNode.data = new Buffer(result.css, 'utf8'); // var sourceMap = JSON.parse(result.map); // outputNode = bygglib.tree.sourceMap.set(outputNode, sourceMap, { sourceBase: path.join(node.base, outputPrefix) }); bygglib.logger.log('less', 'Compiled ' + outputNode.name, new Date() - start); output.push(bygglib.tree([outputNode])); })
.then(function (result) { var outputNode = bygglib.tree.cloneNode(node); outputNode.data = new Buffer(result.css, 'utf8'); var sourceMap = JSON.parse(result.map); outputNode = bygglib.tree.sourceMap.set(outputNode, sourceMap, { sourceBase: path.dirname(node.name) }); nodes[index] = outputNode; processed++; if (processed === tree.nodes.length) { bygglib.logger.log(name || 'postcss', 'Processed ' + tree.nodes.length + ' stylesheets'); output.push(bygglib.tree(nodes)); } })
b.bundle(function (err, buf) { if (err) { bygglib.logger.error('browserify', err.message); return; } bundle.watcher.watch(bundle.watched); // Result var outputNode = bygglib.tree.cloneNode(entrypointNode); var outputPrefix = path.dirname(entrypointNode.name) + '/'; outputPrefix = (outputPrefix === './') ? '' : outputPrefix; outputNode.name = outputPrefix + path.basename(entrypointNode.name, path.extname(entrypointNode.name)) + '.js'; outputNode.metadata.mime = 'application/javascript'; var data = buf.toString('utf-8'); var outputBundle = convertSourceMap.removeComments(data); outputNode.data = new Buffer(outputBundle, 'utf-8'); // Source map var sourceMap = convertSourceMap.fromSource(data).toObject(); sourceMap.sources = sourceMap.sources.map(function (source) { return (source[0] === '/') ? path.relative(entrypointNode.base, source) : source; }); outputNode = bygglib.tree.sourceMap.set(outputNode, sourceMap, { sourceBase: outputPrefix }); bygglib.logger.log('browserify', 'Bundled ' + outputNode.name, new Date() - start); // Push upstream if required if (bundle.outputNode === undefined) { processed++; } bundle.outputNode = outputNode; if (processed === tree.nodes.length) { output.push(bygglib.tree(bundles.map(function (bundle) { return bundle.outputNode; }))); } });
return function (tree) { var nodes = tree.nodes.map(function (node) { var outputNode = bygglib.tree.cloneNode(node); outputNode.name = node.name.replace(from, to); outputNode.siblings = node.siblings.map(function (sibling) { var outputSibling = bygglib.tree.cloneSibling(sibling, outputNode); outputSibling.name = sibling.name.replace(from, to); return outputSibling; }); var sourceMap = bygglib.tree.sourceMap.get(outputNode); if (sourceMap !== undefined) { outputNode = bygglib.tree.sourceMap.set(outputNode, sourceMap, { annotate: true }); } bygglib.logger.log('rename', 'Renamed ' + node.name + ' to ' + outputNode.name); return outputNode; }); return bygglib.signal.constant(bygglib.tree(nodes)); };