forked from Shopify/js-buy-sdk
-
Notifications
You must be signed in to change notification settings - Fork 0
/
rollup.config.js
63 lines (59 loc) · 1.32 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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
/* eslint-env node */
import {readFileSync} from 'fs';
import babel from 'rollup-plugin-babel';
import json from 'rollup-plugin-json';
import nodeResolve from 'rollup-plugin-node-resolve';
import graphqlCompiler from 'rollup-plugin-graphql-js-client-compiler';
import sizes from 'rollup-plugin-sizes';
const plugins = [
graphqlCompiler({
schema: './schema.json',
optimize: true,
profileDocuments: ['src/graphql/**/*.graphql']
}),
json({
exclude: './schema.json'
}),
nodeResolve({
jsnext: true,
main: true
}),
babel({
babelrc: false,
presets: [
[`${process.cwd()}/node_modules/babel-preset-env/lib/index`, {
targets: {
browsers: ['last 2 versions'],
node: '8.1.2'
},
modules: false
}]
],
plugins: [
`${process.cwd()}/node_modules/babel-plugin-external-helpers/lib/index`
]
}),
sizes()
];
const targets = [
{format: 'cjs', suffix: ''},
{format: 'amd', suffix: '.amd'},
{format: 'es', suffix: '.es'},
{format: 'umd', suffix: '.umd'}
].map((config) => {
return {
dest: `index${config.suffix}.js`,
format: config.format
};
});
const banner = `/*
${readFileSync('./LICENSE.txt')}
*/`;
export default {
plugins,
targets,
banner,
entry: 'src/client.js',
moduleName: 'ShopifyBuy',
sourceMap: true
};