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