@enjin/ionic1
Version:
A comprehensive build system for Ionic 1 apps by Madness Labs as part of the Madness Enjin
40 lines (36 loc) • 1.49 kB
JavaScript
const fs = require('fs-extra');
const argv = require('yargs').argv
const merge = require('./merge');
module.exports = function() {
if (global.enjin) {
global.lastEnjin = global.enjin;
}
var envFiles = [process.cwd() + '/enjin.json'];
var enjins = [
require(process.cwd() + '/node_modules/@enjin/ionic1/enjin.defaults.json'),
JSON.parse(fs.readFileSync(envFiles[0]))
];
if (argv.env || argv.e) {
argv.env = argv.env ? argv.env : argv.e ? argv.e : null;
process.env.NODE_ENV = argv.env;
try {
var newEnv = `${process.cwd()}/enjin.${argv.env}.json`;
envFiles.push(newEnv);
enjins.push(JSON.parse(fs.readFileSync(newEnv)), {env: argv.env});
console.log(`Loading enjin.${argv.env}.json environment...`);
} catch(e) {
console.log(`Couldn't find enjin.${argv.env}.json file in current directory!`);
throw e;
return false;
}
}
global.enjin = merge(...enjins, {envFiles: envFiles});
global.enjin.tmplDir = global.enjin.tmplDir ? global.enjin.tmplDir : process.cwd() + '/node_modules/@enjin/ionic1/templates/';
global.enjin.path = process.cwd() + '/enjin.json';
if (global.enjin.stenciljs && !global.enjin.stenciljs.watch) {
global.enjin.stenciljs.watch = [
`${global.enjin.stenciljs.srcDir}/**`,
`!${global.enjin.stenciljs.srcDir}/components.d.ts`
];
}
};