jsev
Version:
Environment for building Web API's.
42 lines • 1.53 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
result["default"] = mod;
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
const callsites_1 = __importDefault(require("callsites"));
const path_1 = require("path");
const source_map_support_1 = __importDefault(require("source-map-support"));
const Environment_1 = require("./Environment");
const errors = __importStar(require("./errors"));
exports.errors = errors;
const utilities = __importStar(require("./utilities"));
exports.utilities = utilities;
var graphql_tag_1 = require("graphql-tag");
exports.gql = graphql_tag_1.default;
source_map_support_1.default.install();
let env;
async function defaultInit(ev) {
ev.log.info("No initialization function specified");
}
function jsev(initFunc = defaultInit) {
if (!env) {
const parent = callsites_1.default()[1];
const callerPath = path_1.dirname(parent.getFileName());
env = new Environment_1.Environment(callerPath);
env.initPromise
.then(async () => {
await initFunc(env);
await env.run();
});
}
return env;
}
exports.jsev = jsev;
//# sourceMappingURL=index.js.map