Exemplo n.º 1
0
const LiveReload = require('broccoli-inject-livereload');
const makeModules = require('broccoli-es6-module-filter');
const Merge = require('broccoli-merge-trees');
const Sass = require('broccoli-sass-source-maps');

const isProduction = process.env.EMBER_ENV === 'production';
const pubFiles = (isProduction) ? new LiveReload('public') : 'public';

const stylePaths = [
  'styles',
  'node_modules/normalize-css',
  'node_modules/font-awesome/scss',
  'node_modules/yoga-sass/assets',
];

const modules = makeModules('src', {
  moduleType: 'cjs',
  compatFix: true
});

const js = browserify(modules, {
  entries: ['./index.js'],
  outputFile: 'app.js'
});

const compiledSass = new Sass(stylePaths, 'app.scss', 'app.css', {});
const optimizedCSS = new CssOptimizer(compiledSass);
const styles = new Autoprefixer(optimizedCSS);

module.exports = new Merge([pubFiles, styles, js]);
Exemplo n.º 2
0
/* jshint node: true */

var pickFiles = require('broccoli-static-compiler');
var browserify = require('broccoli-browserify');
var filterReact = require('broccoli-react');

var client = pickFiles('client/', {
  srcDir: '/',
  files: ['**/*.js'],
  destDir: '/'
});

client = filterReact(client, {extensions: ['js']});

var app = browserify(client, {
  entries: ['./app'],
  outputFile: 'app.js'
});

module.exports = app;
Exemplo n.º 3
0
});

// Library
const antlr4 = pickFiles('node_modules/antlr4', {
   destDir: './antlr4'
});

var tool = pickFiles('./dev', {
  include: ['where-eval.js', 'browserEntry.js', 'where/*'],
  destDir: './dev'
});

tool = esTranspiler(new mergeTrees([tool, antlr4], { overwrite: true }));

tool = browserify(tool, {
  entries: ['./dev/browserEntry.js'],
  debug: true
});

tool = concat(tool, {
  outputFile: '/where-eval.js',
  inputFiles: ['*.js'],
  sourceMapConfig: { enabled: true },
});

tool = pickFiles(tool, {
  include: ['where-eval.js', 'where-eval.map'],
});

var toolMin = rename(tool, 'where-eval.js', 'where-eval-min.js');

toolMin = uglify(toolMin, {
var compileSass = require('broccoli-sass');
var autoprefixer = require('broccoli-autoprefixer');
var pickFiles = require('broccoli-static-compiler');

var treeCss = compileSass(['src/scss/'], './app.scss', 'css/app.css', {
	outputStyle: "compressed"
});

treeCss = autoprefixer(treeCss);

treeTest = jshintTree('src/js/');

var treeJs = browserify(
	'src/js/', 
	{
		entries: ['./app.js'],
		outputFile: 'js/app.js'
	}
);

var tree404 = browserify(
	'src/js/', 
	{
		entries: ['./canvas-component.js'],
		outputFile: 'js/canvas-component.js'
	}
);

tree404 = uglifyJavaScript(tree404);
treeJs = uglifyJavaScript(treeJs);
Exemplo n.º 5
0
  var testIndexTree = funnel("test", {
    srcDir: "/",
    files: ["test.html"],
    destDir: "/"
  });

  var mochaTree = funnel("node_modules", {
    srcDir: "/mocha",
    files: ["mocha.js", "mocha.css"],
    destDir: "/"
  });

  var appTree = mergeTrees([sourceCodeTree, testTree]);

  var appTree = browserify(appTree, {
    entries: ["./test/class_test.js", "./lib/class"],
    outputFile: "bundle.js"
  });

  module.exports = mergeTrees([appTree, testIndexTree, mochaTree]);
} else {

  var appTree = browserify(sourceCodeTree, {
    entries: ["./lib/class"],
    bundle: { standalone: "Class" },
    outputFile: "class.js"
  });

  var minifiedTree = uglify(appTree);

  var minifiedTree = funnel(minifiedTree, {
    srcDir: "class.js",
var helper          = require('./helpers/broccoli');
var jade            = require('broccoli-jade');
var mergeTrees      = require('broccoli-merge-trees');
var templateBuilder = require('broccoli-template-builder');
var uglify          = require('broccoli-uglify-sourcemap');

// Covert main.scss stylesheet to app.css stylesheet in output directory
var styles = compileSass(['app/styles'], 'main.scss', 'app.css');

// Process all the JavaScript.
// First we use babel to convert the ES6 to ES5 for web browsers.
// Then use browserify to handle any `require` statements and automatically
// insert the required library inline.
var scripts = babel("app/scripts");
scripts = browserify(scripts, {
  entries: ['./app.js'],
  outputFile: 'app.js'
});
scripts = babel(scripts, { browserPolyfill: true });

// == Load External Libraries ==
// Order is important. Scripts will be concatenated in this order, and
// styles will be concatenated in this order (into separate JS and CSS files
// obviously).
// Assets will be funnelled into a single tree with the same name
// as the source asset directory. (e.g. 'img' directory will create 'img'
// directory in output.)
helper.loadLibrary('node_modules/jquery/dist', {
  scripts: ['jquery.js'],
  styles: [],
  assets: []
});