spinjs
Version:
<p align="center"><a href="#"><img width="150" src="https://rawgit.com/sysgears/spin.js/master/logo.svg"></a></p>
54 lines • 2.43 kB
JavaScript
;
var __assign = (this && this.__assign) || Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
Object.defineProperty(exports, "__esModule", { value: true });
var fs = require("fs");
var requireModule_1 = require("./requireModule");
var Stack_1 = require("./Stack");
var pkg = requireModule_1.default('./package.json');
var SPIN_CONFIG_NAME = '.spinrc.json';
var ConfigRc = (function () {
function ConfigRc(plugins) {
var config = pkg.spin ? pkg.spin :
JSON.parse(fs.readFileSync(SPIN_CONFIG_NAME).toString());
if (typeof config === 'string' || (typeof config === 'object' && config.constructor === Array)) {
config = {
builders: (_a = {},
_a[pkg.name] = config,
_a),
};
}
if (!config.options) {
config.options = {};
}
var builders = {};
for (var _i = 0, _b = Object.keys(config.builders); _i < _b.length; _i++) {
var name = _b[_i];
var builderVal = config.builders[name];
var builder = (typeof builderVal === 'object' && builderVal.constructor !== Array) ? __assign({}, builderVal) : { stack: builderVal };
builder.name = name;
builder.stack = new Stack_1.default(config.options.stack, typeof builder === 'object' ? builder.stack : builder);
builder.roles = builder.roles || ['build', 'watch'];
builders[builder.name] = builder;
}
this.builders = builders;
this.options = __assign({}, config.options);
this.plugins = plugins.concat((config.plugins || []).map(function (name) { return new (require(name)); }));
var options = this.options;
options.backendBuildDir = options.backendBuildDir || 'build/server';
options.frontendBuildDir = options.frontendBuildDir || 'build/client';
options.dllBuildDir = options.dllBuildDir || 'build/dll';
options.backendUrl = options.backendUrl || 'http://localhost:8080';
options.webpackDll = options.webpackDll !== undefined ? options.webpackDll : true;
var _a;
}
return ConfigRc;
}());
exports.default = ConfigRc;
//# sourceMappingURL=configRc.js.map