mirror of
https://github.com/the-djmaze/snappymail.git
synced 2025-01-01 04:22:15 +08:00
57 lines
1.1 KiB
JavaScript
57 lines
1.1 KiB
JavaScript
/* SnappyMail Webmail (c) SnappyMail Team | Licensed under AGPL 3 */
|
|
const rollup2 = require('gulp-rollup-2');
|
|
const babel = require('rollup-plugin-babel');
|
|
const includePaths = require('rollup-plugin-includepaths');
|
|
const externalGlobals = require('rollup-plugin-external-globals');
|
|
const html = require('rollup-plugin-html');
|
|
const { config } = require('./config');
|
|
|
|
let includePathOptions = {
|
|
include: {},
|
|
paths: ['dev'],
|
|
external: [],
|
|
extensions: ['.js', '.html']
|
|
};
|
|
|
|
let babelConfig = {
|
|
exclude: 'node_modules/**',
|
|
babelrc: false,
|
|
presets: [
|
|
[
|
|
'@babel/preset-env',
|
|
{
|
|
targets: {"chrome": "60"},
|
|
loose: true,
|
|
modules: false
|
|
}
|
|
]
|
|
],
|
|
plugins: [
|
|
[
|
|
'@babel/plugin-proposal-decorators',
|
|
{
|
|
legacy: true
|
|
}
|
|
],
|
|
'@babel/plugin-proposal-class-properties'
|
|
]
|
|
};
|
|
|
|
exports.rollupJS = (inputFile) =>
|
|
rollup2.src({
|
|
external: ['ko'],
|
|
input: 'dev/' + inputFile,
|
|
output: [
|
|
{file: config.paths.staticJS + inputFile, format: 'iife'}
|
|
],
|
|
plugins: [
|
|
babel(babelConfig),
|
|
includePaths(includePathOptions),
|
|
externalGlobals({
|
|
ko: 'ko'
|
|
}),
|
|
html({
|
|
include: '**/*.html'
|
|
})
|
|
]
|
|
});
|