UNPKG

@tsclean/core

Version:

Plugin for API Rest Full development, based on Clean Architecture, IoC and Dependency Injection.

17 lines 2.41 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.loadPackage = loadPackage; const services_1 = require("../services"); const MISSING_REQUIRED_DEPENDENCY = (name, reason) => `The "${name}" package is missing. Please, make sure to install it to take advantage of ${reason}.`; const logger = new services_1.Logger('PackageLoader'); function loadPackage(packageName, context, loaderFn) { try { return loaderFn ? loaderFn() : require(packageName); } catch (e) { logger.error(MISSING_REQUIRED_DEPENDENCY(packageName, context)); services_1.Logger.flush(); process.exit(1); } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC1wYWNrYWdlLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvbG9hZC1wYWNrYWdlLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFPRSxrQ0FZQztBQW5CSCwwQ0FBcUM7QUFFckMsTUFBTSwyQkFBMkIsR0FBRyxDQUFDLElBQVksRUFBRSxNQUFjLEVBQUUsRUFBRSxDQUNqRSxRQUFRLElBQUksOEVBQThFLE1BQU0sR0FBRyxDQUFDO0FBRXRHLE1BQU0sTUFBTSxHQUFHLElBQUksaUJBQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztBQUUzQyxTQUFnQixXQUFXLENBQ3pCLFdBQW1CLEVBQ25CLE9BQWUsRUFDZixRQUFtQjtJQUVuQixJQUFJLENBQUM7UUFDSCxPQUFPLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNYLE1BQU0sQ0FBQyxLQUFLLENBQUMsMkJBQTJCLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDaEUsaUJBQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2dnZXIgfSBmcm9tIFwiLi4vc2VydmljZXNcIjtcblxuY29uc3QgTUlTU0lOR19SRVFVSVJFRF9ERVBFTkRFTkNZID0gKG5hbWU6IHN0cmluZywgcmVhc29uOiBzdHJpbmcpID0+XG4gICAgYFRoZSBcIiR7bmFtZX1cIiBwYWNrYWdlIGlzIG1pc3NpbmcuIFBsZWFzZSwgbWFrZSBzdXJlIHRvIGluc3RhbGwgaXQgdG8gdGFrZSBhZHZhbnRhZ2Ugb2YgJHtyZWFzb259LmA7XG4gIFxuICBjb25zdCBsb2dnZXIgPSBuZXcgTG9nZ2VyKCdQYWNrYWdlTG9hZGVyJyk7XG4gIFxuICBleHBvcnQgZnVuY3Rpb24gbG9hZFBhY2thZ2UoXG4gICAgcGFja2FnZU5hbWU6IHN0cmluZyxcbiAgICBjb250ZXh0OiBzdHJpbmcsXG4gICAgbG9hZGVyRm4/OiBGdW5jdGlvbixcbiAgKSB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBsb2FkZXJGbiA/IGxvYWRlckZuKCkgOiByZXF1aXJlKHBhY2thZ2VOYW1lKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBsb2dnZXIuZXJyb3IoTUlTU0lOR19SRVFVSVJFRF9ERVBFTkRFTkNZKHBhY2thZ2VOYW1lLCBjb250ZXh0KSk7XG4gICAgICBMb2dnZXIuZmx1c2goKTtcbiAgICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgICB9XG4gIH1cbiAgIl19