Add more package types, allow for node snippets

This commit is contained in:
atomiks
2018-01-02 01:02:57 +11:00
parent b7b35c4af4
commit 5dce7c771c
5 changed files with 1113 additions and 80 deletions

View File

@ -1,19 +1,58 @@
import babel from 'rollup-plugin-babel';
import minify from 'rollup-plugin-babel-minify';
const fs = require('fs-extra');
const { rollup } = require('rollup');
const babel = require('rollup-plugin-babel');
const minify = require('rollup-plugin-babel-minify');
export default {
input: './imports.js',
output: {
file: './module/TSOC.js',
format: 'umd',
name: 'TSOC'
},
externalHelpers: true,
plugins: [
babel({
presets: ['es2015-rollup'],
plugins: ['transform-object-assign', 'transform-object-rest-spread']
}),
minify({ comments: false })
]
};
const INPUT_FILE = './imports.js';
const MODULE_NAME = '_30s';
const DIST = './dist';
if (!fs.existsSync(DIST)) fs.mkdirSync(DIST);
const es5 = () => babel({ presets: [['env', { modules: false }]] });
const min = () => minify({ comments: false });
(async () => {
const bundle = await rollup({ input: INPUT_FILE });
const bundleES5 = await rollup({ input: INPUT_FILE, plugins: [es5()] });
const bundleMin = await rollup({ input: INPUT_FILE, plugins: [min()] });
const bundleES5Min = await rollup({
input: INPUT_FILE,
plugins: [es5(), min()]
});
// UMD ES2017
await bundle.write({
file: `${DIST}/${MODULE_NAME}.js`,
name: MODULE_NAME,
format: 'umd'
});
// UMD ES2017 minified
await bundleMin.write({
file: `${DIST}/${MODULE_NAME}.min.js`,
name: MODULE_NAME,
format: 'umd'
});
// UMD ES5
await bundleES5.write({
file: `${DIST}/${MODULE_NAME}.es5.js`,
name: MODULE_NAME,
format: 'umd'
});
// UMD ES5 min
await bundleES5Min.write({
file: `${DIST}/${MODULE_NAME}.es5.min.js`,
name: MODULE_NAME,
format: 'umd'
});
// ESM ES2017
await bundle.write({
file: `${DIST}/${MODULE_NAME}.esm.js`,
name: MODULE_NAME,
format: 'es'
});
})();