1
0
mirror of https://github.com/twbs/bootstrap.git synced 2025-08-18 03:11:19 +02:00

build bootstrap in esm

This commit is contained in:
Johann-S
2019-03-01 11:11:41 +02:00
committed by XhmikosR
parent 3ffe3a5d82
commit 2fd50f98a5
8 changed files with 86 additions and 80 deletions

View File

@@ -6,8 +6,10 @@ const resolve = require('rollup-plugin-node-resolve')
const banner = require('./banner.js')
const BUNDLE = process.env.BUNDLE === 'true'
const ESM = process.env.ESM === 'true'
let fileDest = 'bootstrap.js'
let fileDest = `bootstrap${ESM ? '.esm' : ''}.js`
const indexPath = ESM ? '../js/index.esm.js' : '../js/index.umd.js'
const external = ['popper.js']
const plugins = [
babel({
@@ -28,22 +30,27 @@ const globals = {
}
if (BUNDLE) {
fileDest = 'bootstrap.bundle.js'
fileDest = `bootstrap${ESM ? '.esm' : ''}.bundle.js`
// Remove last entry in external array to bundle Popper
external.pop()
delete globals['popper.js']
plugins.push(resolve())
}
module.exports = {
input: path.resolve(__dirname, '../js/src/index.js'),
const rollupConfig = {
input: path.resolve(__dirname, indexPath),
output: {
banner,
file: path.resolve(__dirname, `../dist/js/${fileDest}`),
format: 'umd',
globals,
name: 'bootstrap'
format: ESM ? 'esm' : 'umd',
globals
},
external,
plugins
}
if (!ESM) {
rollupConfig.output.name = 'bootstrap'
}
module.exports = rollupConfig