UNPKG

build-easy

Version:
61 lines (45 loc) 1.41 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = _default; function _path() { const data = _interopRequireDefault(require("path")); _path = function _path() { return data; }; return data; } function _fs() { const data = _interopRequireDefault(require("fs")); _fs = function _fs() { return data; }; return data; } var _utils = require("./utils"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _default(options) { const cwd = options.cwd, schema = options.schema, configFileNames = options.configFileNames, typeKey = options.typeKey; const configFile = configFileNames.map(configName => _path().default.join(cwd, configName)); const userConfig = configFile.find(configPath => _fs().default.existsSync(configPath)); let config = {}; if (userConfig) { // https://github.com/facebook/jest/issues/7864 /* istanbul ignore next */ process.env.NODE_ENV !== 'test' && (0, _utils.registerBabel)(userConfig); config = (0, _utils.isDefault)(require(userConfig)); if (typeKey) { config = config[typeKey]; } const _schema$validate = schema.validate(config), error = _schema$validate.error; if (error) { throw new Error(`Invalid options in ${error.message}`); } } return config; }