Files
tankz/build/prepare.js

43 lines
1.0 KiB
JavaScript
Executable File

const AdobeAir = require('../tasks/adobeAir');
const Haxe = require('../tasks/haxe');
const FlashPlayer = require('../tasks/flashplayer');
const packages = [
{name:'openfl', version:'6.0.1'},
{name:'lime', version:'5.3.0'},
'promhx',
'protohx',
//'haxework',
{name:'haxework', git:'git@bitbucket.org:shmyga/haxework.git'},
'orm',
];
const prepareOne = (value) => {
switch (value) {
case Haxe.ID:
const haxe = new Haxe();
return haxe.prepare().then(() => haxe.install(packages));
case AdobeAir.ID:
return new AdobeAir().prepare();
case FlashPlayer.ID:
return new FlashPlayer().prepare();
default:
throw Error(`Unknown target: ${value}`)
}
};
const prepare = (...targets) => function prepare() {
const tasks = targets.map((target) => prepareOne(target));
return Promise.all(tasks);
};
const update = () => {
return new Haxe().upgrade();
};
module.exports = prepare;
module.exports.update = update;