Mirror: CSS prefixing helpers in less than 1KB 馃寛
1import commonjs from '@rollup/plugin-commonjs';
2import nodeResolve from '@rollup/plugin-node-resolve';
3import buble from '@rollup/plugin-buble';
4import babel from 'rollup-plugin-babel';
5import { terser } from 'rollup-plugin-terser';
6
7const terserMinified = terser({
8 sourcemap: false,
9 warnings: true,
10 ecma: 5,
11 ie8: false,
12 toplevel: true,
13 compress: {
14 keep_infinity: true,
15 pure_getters: true,
16 passes: 10
17 },
18 output: {
19 comments: false
20 }
21});
22
23const plugins = [
24 nodeResolve({
25 mainFields: ['module', 'jsnext', 'main'],
26 browser: true
27 }),
28 commonjs({
29 ignoreGlobal: true,
30 include: /\/node_modules\//,
31 }),
32 buble({
33 transforms: {
34 unicodeRegExp: false,
35 dangerousForOf: true,
36 dangerousTaggedTemplateString: true
37 },
38 objectAssign: 'Object.assign',
39 exclude: 'node_modules/**'
40 }),
41 babel({
42 babelrc: false,
43 exclude: 'node_modules/**',
44 presets: [],
45 plugins: [
46 'babel-plugin-codegen'
47 ]
48 }),
49 terserMinified,
50];
51
52export default {
53 input: './src/index.js',
54 external: () => true,
55 treeshake: { propertyReadSideEffects: false },
56 plugins,
57 output: [
58 {
59 sourcemap: false,
60 legacy: true,
61 freeze: false,
62 esModule: false,
63 file: `./dist/tiny-css-prefixer.js`,
64 format: 'cjs',
65 },
66 {
67 sourcemap: false,
68 legacy: true,
69 freeze: false,
70 esModule: false,
71 file: `./dist/tiny-css-prefixer.es.js`,
72 format: 'esm',
73 },
74 ],
75};