-
Notifications
You must be signed in to change notification settings - Fork 4
/
rollup.config.js
48 lines (46 loc) · 1.21 KB
/
rollup.config.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
import {eslint} from 'rollup-plugin-eslint';
import strip from 'rollup-plugin-strip';
import buble from 'rollup-plugin-buble';
import {uglify} from 'rollup-plugin-uglify';
import filesize from 'rollup-plugin-filesize';
import pkg from './package.json';
var browser = (process.env.NODE_ENV === 'browser' || process.env.NODE_ENV === 'minify'),
minify = (process.env.NODE_ENV === 'minify'),
banner = `/**
* @name ${pkg.name}
* @version ${pkg.version}
* @description ${pkg.description}
* @author ${pkg.author}
* @license ${pkg.license}
*/
`;
export default {
input: 'src/index.js',
plugins: [
eslint(),
buble(),
(browser && strip({
debugger: true,
functions: ['console.log', 'assert.*', 'debug', 'alert'],
sourceMap: false
})),
(minify && uglify({
output: {
comments: (node, comment) => {
if (comment.type == 'comment2') {
return /@name|@version|@author|@license/i.test(comment.value);
}
}
}
})),
filesize()
],
output: {
banner: !minify ? banner : false,
name: 'Scorm',
format: browser ? 'iife' : 'cjs',
sourcemap: !browser,
sourcemapFile: 'index.js.map',
file: minify && 'simple-scorm-wrapper.min.js' || browser && 'simple-scorm-wrapper.js' || 'index.js'
},
}