-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathember-cli-build.js
104 lines (94 loc) · 3.25 KB
/
ember-cli-build.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
/*jshint node:true*/
/* global require, module */
require('dotenv').config();
const EmberApp = require('ember-cli/lib/broccoli/ember-app');
const BroccoliMergeTrees = require('broccoli-merge-trees');
const transpiler = require('broccoli-babel-transpiler');
const Funnel = require('broccoli-funnel');
module.exports = function(defaults) {
const workerDestDir = '/assets/workers';
const workers = transpiler(
new Funnel('app/workers', {
include: ['*.js'],
destDir: workerDestDir
}),
{
comments: false,
compact: true
}
);
const workerDeps = new Funnel('bower_components', {
include: ['bcryptjs/dist/bcrypt.min.js'],
destDir: workerDestDir
});
const app = new EmberApp(defaults, {
sourcemaps: {
enabled: true
},
minifyJS: {
enabled: EmberApp.env() === 'production'
},
minifyCSS: {
enabled: EmberApp.env() === 'production'
},
sassOptions: {
includePaths: [
'app/styles'
]
},
emberWowza: {
// Config for video recorder config
asp: JSON.parse(process.env.WOWZA_ASP),
// Config for actual video recording
php: JSON.parse(process.env.WOWZA_PHP)
},
'ember-bootstrap': {
importBootstrapFont: false
},
babel: {
optional: ['es6.spec.symbols'],
includePolyfill: true
},
});
app.import('bower_components/ace-builds/src/ace.js');
app.import('bower_components/ace-builds/src/mode-json.js');
app.import('bower_components/ace-builds/src/ext-beautify.js');
app.import('bower_components/moment/moment.js');
app.import('bower_components/file-saver.js/FileSaver.js');
app.import('bower_components/font-awesome/css/font-awesome.css');
app.import('bower_components/font-awesome/fonts/fontawesome-webfont.eot', {
destDir: 'fonts'
});
app.import('bower_components/font-awesome/fonts/fontawesome-webfont.svg', {
destDir: 'fonts'
});
app.import('bower_components/font-awesome/fonts/fontawesome-webfont.ttf', {
destDir: 'fonts'
});
app.import('bower_components/font-awesome/fonts/fontawesome-webfont.woff', {
destDir: 'fonts'
});
app.import('bower_components/font-awesome/fonts/fontawesome-webfont.woff2', {
destDir: 'fonts'
});
app.import('bower_components/font-awesome/fonts/FontAwesome.otf', {
destDir: 'fonts'
});
// Use `app.import` to add additional libraries to the generated
// output files.
//
// If you need to use different assets in different
// environments, specify an object as the first parameter. That
// object's keys should be the environment name and the values
// should be the asset to use in that environment.
//
// If the library that you are including contains AMD or ES6
// modules that you would like to import into your application
// please specify an object with the list of modules as keys
// along with the exports of each module as its value.
return new BroccoliMergeTrees([
app.toTree(),
workers,
workerDeps
]);
};