bowheart/zedux-immer

View on GitHub
rollup.config.js

Summary

Maintainability
A
0 mins
Test Coverage
import babel from 'rollup-plugin-babel'
import replace from 'rollup-plugin-replace'
import uglify from 'rollup-plugin-uglify'


const env = process.env.NODE_ENV


const plugins = [
  babel({
    babelrc: false,
    exclude: 'node_modules/**',
    presets: [
      'es2015-rollup',
      'react',
      'stage-0'
    ],
    plugins: [
      'transform-decorators-legacy'
    ]
  }),

  replace({
    'process.env.NODE_ENV': JSON.stringify(env) // quote the value
  })
]


if (env === 'production') {
  plugins.push(uglify({
    compress: {
      pure_getters: true,
      unsafe: true,
      unsafe_comps: true,
      warnings: false
    }
  }))
}


const config = {
  input: 'src/index.js',
  output: {
    file: 'dist/zedux-immer.js',
    format: 'umd'
  },
  name: 'ZeduxImmer',
  plugins,
  external: [
    'immer',
    'zedux'
  ],
  globals: {
    immer: 'immer',
    zedux: 'Zedux'
  }
}


export default config