Example #1
0
            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]));
            })
Example #2
0
                .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));
                    }
                })
Example #3
0
            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;
                    })));
                }
            });
Example #4
0
    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));
    };