bkdotcom/PHPDebugConsole

View on GitHub
src/Debug/rollup.config.js

Summary

Maintainability
A
0 mins
Test Coverage
/**
 * see https://github.com/mishoo/UglifyJS2/blob/master/README.md#minify-options
 */

import { uglify } from 'rollup-plugin-uglify'
import { nodeResolve } from '@rollup/plugin-node-resolve' // so can resolve tippy.js
// import css from 'rollup-plugin-import-css'
import replace from '@rollup/plugin-replace'

var tasks = [
  {
    input: 'js_src/main.js',
    external: ['clipboardjs', 'jquery'],
    output: {
      file: 'js/Debug.jquery.js',
      format: 'iife', // immediately invoked function expression
      globals: {
        clipboardjs: 'window.ClipboardJS',
        jquery: 'window.jQuery'
      }
    },
    plugins: [
      /*
      css({
        output: 'css/bktippy.css',
        alwaysOutput: true
        // output: null
      }),
      */
      nodeResolve(),
      replace({
        'process.env.NODE_ENV': JSON.stringify('development')
      })
    ]
  }
]

if (process.env.NODE_ENV !== 'watch') {
  tasks.push({
    input: 'js_src/main.js',
    external: ['clipboardjs', 'jquery'],
    output: {
      file: 'js/Debug.jquery.min.js',
      format: 'iife', // immediately invoked function expression
      globals: {
        clipboardjs: 'window.ClipboardJS',
        jquery: 'window.jQuery'
      }
    },
    plugins: [
      /*
      css({
        output: 'css/bktippy.css',
        alwaysOutput: true
        // output: null
      }),
      */
      nodeResolve(),
      replace({
        'process.env.NODE_ENV': JSON.stringify('production')
      }),
      uglify({
        compress: {
          drop_console: true
        }
      })
    ]
  })
}

export default tasks