| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- import glob from 'glob'
- import babel from 'rollup-plugin-babel'
- import resolve from 'rollup-plugin-node-resolve'
- import commonjs from 'rollup-plugin-commonjs'
- import minify from 'rollup-plugin-babel-minify'
- import inject from 'rollup-plugin-inject'
- import multiEntry from 'rollup-plugin-multi-entry'
- import vue from 'rollup-plugin-vue'
- const files = glob.sync('src/**/*.js', {
- ignore: [
- 'src/constants/**',
- 'src/utils/**',
- 'src/virtual-scroll/**',
- 'src/vue/**'
- ]
- })
- const external = ['jquery']
- const globals = {
- jquery: 'jQuery'
- }
- const config = []
- const plugins = [
- inject({
- include: '**/*.js',
- exclude: 'node_modules/**',
- $: 'jquery'
- }),
- resolve(),
- commonjs(),
- babel({
- exclude: 'node_modules/**'
- })
- ]
- if (process.env.NODE_ENV === 'production') {
- plugins.push(minify({
- comments: false
- }))
- }
- for (const file of files) {
- let out = `dist/${file.replace('src/', '')}`
- if (process.env.NODE_ENV === 'production') {
- out = out.replace(/.js$/, '.min.js')
- }
- config.push({
- input: file,
- output: {
- name: 'BootstrapTable',
- file: out,
- format: 'umd',
- globals
- },
- external,
- plugins
- })
- }
- let out = 'dist/bootstrap-table-locale-all.js'
- if (process.env.NODE_ENV === 'production') {
- out = out.replace(/.js$/, '.min.js')
- }
- config.push({
- input: 'src/locale/**/*.js',
- output: {
- name: 'BootstrapTable',
- file: out,
- format: 'umd',
- globals
- },
- external,
- plugins: [
- multiEntry(),
- ...plugins
- ]
- })
- out = 'dist/bootstrap-table-vue.js'
- if (process.env.NODE_ENV === 'production') {
- out = out.replace(/.js$/, '.min.js')
- }
- config.push({
- input: 'src/vue/index.js',
- output: {
- name: 'BootstrapTable',
- file: out,
- format: 'umd'
- },
- plugins: [
- vue(),
- ...plugins
- ]
- })
- out = 'dist/bootstrap-table-vue.esm.js'
- if (process.env.NODE_ENV === 'production') {
- out = out.replace(/.js$/, '.min.js')
- }
- config.push({
- input: 'src/vue/BootstrapTable.vue',
- output: {
- name: 'BootstrapTable',
- file: out,
- format: 'esm'
- },
- plugins: [
- vue(),
- ...plugins
- ]
- })
- export default config
|