@reactant/config
Version:
97 lines (74 loc) • 7.94 kB
JavaScript
;
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
require("core-js/modules/es.function.name");
require("core-js/modules/es.regexp.exec");
require("core-js/modules/es.string.search");
Object.defineProperty(exports, "__esModule", {
value: true
});
var _exportNames = {
getUserConfig: true,
loadConfig: true,
setConfig: true,
sanitizeConfig: true,
defaultConfig: true
};
exports.getUserConfig = getUserConfig;
exports.loadConfig = loadConfig;
exports.default = getConfig;
exports.setConfig = setConfig;
exports.sanitizeConfig = sanitizeConfig;
Object.defineProperty(exports, "defaultConfig", {
enumerable: true,
get: function get() {
return _defaultConfig.default;
}
});
var _node = _interopRequireWildcard(require("@reactant/context/node"));
var _pkgDir = _interopRequireDefault(require("pkg-dir"));
var _cosmiconfig = require("cosmiconfig");
var _defaultConfig = _interopRequireDefault(require("./defaultConfig"));
var _config = require("@reactant/types/lib/config");
Object.keys(_config).forEach(function (key) {
if (key === "default" || key === "__esModule") return;
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
Object.defineProperty(exports, key, {
enumerable: true,
get: function get() {
return _config[key];
}
});
});
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function getUserConfig() {
var rootPath = _pkgDir.default.sync(process.cwd()) || process.cwd();
var userConfig = {};
try {
var payload = (0, _cosmiconfig.cosmiconfigSync)('reactant').search(rootPath); // TODO
userConfig = payload && payload.config ? payload.config : {};
} catch (err) {
if (err.name !== 'YAMLException') throw err; // eslint-disable-next-line import/no-dynamic-require,global-require,no-eval
userConfig = eval("require(".concat(err.mark.name, ")"));
}
return userConfig;
}
function loadConfig() {
return (0, _node.merge)(_defaultConfig.default, getUserConfig());
}
function getConfig() {
return (0, _node.default)().config || _defaultConfig.default;
}
function setConfig(config) {
var mergeConfig = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
(0, _node.syncContext)(function (context) {
context.config = mergeConfig ? (0, _node.merge)(context.config || _defaultConfig.default, config) : config;
return context;
});
return getConfig();
}
function sanitizeConfig(config, rootPath) {
return (0, _node.sanitizeConfig)(config, rootPath);
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ub2RlLnRzIl0sIm5hbWVzIjpbImdldFVzZXJDb25maWciLCJyb290UGF0aCIsInBrZ0RpciIsInN5bmMiLCJwcm9jZXNzIiwiY3dkIiwidXNlckNvbmZpZyIsInBheWxvYWQiLCJzZWFyY2giLCJjb25maWciLCJlcnIiLCJuYW1lIiwiZXZhbCIsIm1hcmsiLCJsb2FkQ29uZmlnIiwiZGVmYXVsdENvbmZpZyIsImdldENvbmZpZyIsInNldENvbmZpZyIsIm1lcmdlQ29uZmlnIiwiY29udGV4dCIsInNhbml0aXplQ29uZmlnIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUtBOztBQUVBOztBQUNBOztBQTBDQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7Ozs7Ozs7QUF4Q08sU0FBU0EsYUFBVCxHQUEwQztBQUMvQyxNQUFNQyxRQUFRLEdBQUdDLGdCQUFPQyxJQUFQLENBQVlDLE9BQU8sQ0FBQ0MsR0FBUixFQUFaLEtBQThCRCxPQUFPLENBQUNDLEdBQVIsRUFBL0M7QUFDQSxNQUFJQyxVQUEyQixHQUFHLEVBQWxDOztBQUNBLE1BQUk7QUFDRixRQUFNQyxPQUFPLEdBQUcsa0NBQWdCLFVBQWhCLEVBQTRCQyxNQUE1QixDQUFtQ1AsUUFBbkMsQ0FBaEIsQ0FERSxDQUVGOztBQUNBSyxJQUFBQSxVQUFVLEdBQUlDLE9BQU8sSUFBSUEsT0FBTyxDQUFDRSxNQUFuQixHQUE0QkYsT0FBTyxDQUFDRSxNQUFwQyxHQUE2QyxFQUEzRDtBQUdELEdBTkQsQ0FNRSxPQUFPQyxHQUFQLEVBQVk7QUFDWixRQUFJQSxHQUFHLENBQUNDLElBQUosS0FBYSxlQUFqQixFQUFrQyxNQUFNRCxHQUFOLENBRHRCLENBRVo7O0FBQ0FKLElBQUFBLFVBQVUsR0FBR00sSUFBSSxtQkFBWUYsR0FBRyxDQUFDRyxJQUFKLENBQVNGLElBQXJCLE9BQWpCO0FBQ0Q7O0FBQ0QsU0FBT0wsVUFBUDtBQUNEOztBQUVNLFNBQVNRLFVBQVQsR0FBOEI7QUFDbkMsU0FBTyxpQkFBTUMsc0JBQU4sRUFBcUJmLGFBQWEsRUFBbEMsQ0FBUDtBQUNEOztBQUVjLFNBQVNnQixTQUFULEdBQTZCO0FBQzFDLFNBQVEsb0JBQUQsQ0FBMEJQLE1BQTFCLElBQW9DTSxzQkFBM0M7QUFDRDs7QUFFTSxTQUFTRSxTQUFULENBQW1CUixNQUFuQixFQUErRDtBQUFBLE1BQTVCUyxXQUE0Qix1RUFBZCxJQUFjO0FBQ3BFLHlCQUFZLFVBQUNDLE9BQUQsRUFBc0I7QUFDaENBLElBQUFBLE9BQU8sQ0FBQ1YsTUFBUixHQUFpQlMsV0FBVyxHQUN4QixpQkFBTUMsT0FBTyxDQUFDVixNQUFSLElBQWtCTSxzQkFBeEIsRUFBdUNOLE1BQXZDLENBRHdCLEdBRXhCQSxNQUZKO0FBR0EsV0FBT1UsT0FBUDtBQUNELEdBTEQ7QUFNQSxTQUFPSCxTQUFTLEVBQWhCO0FBQ0Q7O0FBRU0sU0FBU0ksY0FBVCxDQUF3QlgsTUFBeEIsRUFBd0NSLFFBQXhDLEVBQW1FO0FBQ3hFLFNBQU8sMEJBQXNCUSxNQUF0QixFQUE4QlIsUUFBOUIsQ0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGdldENvbnRleHQsIHtcbiAgbWVyZ2UsXG4gIHNhbml0aXplQ29uZmlnIGFzIGNvbnRleHRTYW5pdGl6ZUNvbmZpZyxcbiAgc3luY0NvbnRleHRcbn0gZnJvbSAnQHJlYWN0YW50L2NvbnRleHQvbm9kZSc7XG5pbXBvcnQgcGtnRGlyIGZyb20gJ3BrZy1kaXInO1xuaW1wb3J0IHsgQ29uZmlnLCBDb250ZXh0IH0gZnJvbSAnQHJlYWN0YW50L3R5cGVzJztcbmltcG9ydCB7IGNvc21pY29uZmlnU3luYyB9IGZyb20gJ2Nvc21pY29uZmlnJztcbmltcG9ydCBkZWZhdWx0Q29uZmlnIGZyb20gJy4vZGVmYXVsdENvbmZpZyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRVc2VyQ29uZmlnKCk6IFBhcnRpYWw8Q29uZmlnPiB7XG4gIGNvbnN0IHJvb3RQYXRoID0gcGtnRGlyLnN5bmMocHJvY2Vzcy5jd2QoKSkgfHwgcHJvY2Vzcy5jd2QoKTtcbiAgbGV0IHVzZXJDb25maWc6IFBhcnRpYWw8Q29uZmlnPiA9IHt9O1xuICB0cnkge1xuICAgIGNvbnN0IHBheWxvYWQgPSBjb3NtaWNvbmZpZ1N5bmMoJ3JlYWN0YW50Jykuc2VhcmNoKHJvb3RQYXRoKTtcbiAgICAvLyBUT0RPXG4gICAgdXNlckNvbmZpZyA9IChwYXlsb2FkICYmIHBheWxvYWQuY29uZmlnID8gcGF5bG9hZC5jb25maWcgOiB7fSkgYXMgUGFydGlhbDxcbiAgICAgIENvbmZpZ1xuICAgID47XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIGlmIChlcnIubmFtZSAhPT0gJ1lBTUxFeGNlcHRpb24nKSB0aHJvdyBlcnI7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby1keW5hbWljLXJlcXVpcmUsZ2xvYmFsLXJlcXVpcmUsbm8tZXZhbFxuICAgIHVzZXJDb25maWcgPSBldmFsKGByZXF1aXJlKCR7ZXJyLm1hcmsubmFtZX0pYCk7XG4gIH1cbiAgcmV0dXJuIHVzZXJDb25maWc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsb2FkQ29uZmlnKCk6IENvbmZpZyB7XG4gIHJldHVybiBtZXJnZShkZWZhdWx0Q29uZmlnLCBnZXRVc2VyQ29uZmlnKCkpO1xufVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRDb25maWcoKTogQ29uZmlnIHtcbiAgcmV0dXJuIChnZXRDb250ZXh0KCkgYXMgQ29udGV4dCkuY29uZmlnIHx8IGRlZmF1bHRDb25maWc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRDb25maWcoY29uZmlnOiBDb25maWcsIG1lcmdlQ29uZmlnID0gdHJ1ZSk6IENvbmZpZyB7XG4gIHN5bmNDb250ZXh0KChjb250ZXh0OiBDb250ZXh0KSA9PiB7XG4gICAgY29udGV4dC5jb25maWcgPSBtZXJnZUNvbmZpZ1xuICAgICAgPyBtZXJnZShjb250ZXh0LmNvbmZpZyB8fCBkZWZhdWx0Q29uZmlnLCBjb25maWcpXG4gICAgICA6IGNvbmZpZztcbiAgICByZXR1cm4gY29udGV4dDtcbiAgfSk7XG4gIHJldHVybiBnZXRDb25maWcoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNhbml0aXplQ29uZmlnKGNvbmZpZzogQ29uZmlnLCByb290UGF0aD86IHN0cmluZyk6IENvbmZpZyB7XG4gIHJldHVybiBjb250ZXh0U2FuaXRpemVDb25maWcoY29uZmlnLCByb290UGF0aCk7XG59XG5cbmV4cG9ydCB7IGRlZmF1bHRDb25maWcgfTtcbmV4cG9ydCAqIGZyb20gJ0ByZWFjdGFudC90eXBlcy9saWIvY29uZmlnJztcbiJdfQ==