@bitsy/hecks
Version:
a collection of re-usable scripts for bitsy game maker
38 lines (32 loc) • 819 B
JavaScript
import {
basename
} from "path";
import rollup from "rollup";
import nodeResolve from "rollup-plugin-node-resolve";
import commonjs from "rollup-plugin-commonjs";
export async function buildOne(src = '', plugins = []) {
const inputOptions = {
input: src,
external: [
'bitsy'
],
plugins: [
nodeResolve(),
commonjs()
].concat(plugins)
};
const outputOptions = {
format: "iife",
globals: {
bitsy: 'window'
},
name: `hacks.${basename(src, '.js').replace(/\s/g,'_')}`,
};
const bundle = await rollup.rollup(inputOptions)
const output = await bundle.generate(outputOptions);
return output.code;
}
export async function build(hacks = [], plugins) {
const output = await Promise.all(hacks.map(hack => buildOne(hack, plugins)));
return output;
}