UNPKG

vue-croppa

Version:

A simple straightforward customizable lightweight mobile-friendly image cropper for Vue 2.0.

79 lines (76 loc) 2.13 kB
const json = require('rollup-plugin-json') const resolve = require('rollup-plugin-node-resolve') const commentjs = require('rollup-plugin-commonjs') const babel = require('rollup-plugin-babel') const vue = require('rollup-plugin-vue') const eslint = require('rollup-plugin-eslint') const uglify = require('rollup-plugin-uglify') const autoprefixer = require('autoprefixer') const clean = require('postcss-clean') const postcss = require('postcss') const fs = require('fs') const { version } = require('./package.json') let production = /^production/.test(process.env.BUILD) let min = process.env.BUILD === 'production-min' module.exports = { entry: 'src/main.js', dest: `${production ? 'dist' : 'docs/src/croppa'}/vue-croppa${ min ? '.min' : '' }.js`, format: 'umd', moduleName: 'Croppa', sourceMap: production ? false : 'inline', banner: `\ /* * vue-croppa v${version} * https://github.com/zhanziyang/vue-croppa * * Copyright (c) ${new Date().getFullYear()} zhanziyang * Released under the ISC license */ `, plugins: [ commentjs(), resolve(), json(), vue({ css: function(css, allStyles, compile) { postcss(min ? [autoprefixer, clean] : [autoprefixer]) .process(css) .then(function(result) { result.warnings().forEach(function(warn) { console.warn(warn.toString()) }) fs.writeFile( `${production ? 'dist' : 'docs/src/croppa'}/vue-croppa${ min ? '.min' : '' }.css`, result.css, err => { if (err) throw err } ) }) } }), production && eslint(), babel({ presets: [ [ 'es2015', { modules: false } ] ], plugins: ['external-helpers', 'transform-object-rest-spread'], exclude: 'node_modules/**' }), min && uglify({ output: { comments: /zhanziyang/ } }) ] }