@bundle-analyzer/core
Version:
Bundle Analyzer Node.js uploader.
46 lines (35 loc) • 1.24 kB
JavaScript
;
exports.__esModule = true;
exports.resolveConfig = resolveConfig;
exports.resolveConfigFile = resolveConfigFile;
exports.getToken = getToken;
exports.getApiUrl = getApiUrl;
var _cosmiconfig = _interopRequireDefault(require("cosmiconfig"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const explorer = (0, _cosmiconfig.default)('bundle-analyzer', {
sync: true,
cache: true,
rcExtensions: true
});
async function resolveConfig(searchFrom, configFile) {
if (configFile == null) {
const result = await explorer.search(searchFrom);
return result ? result.config : null;
}
const result = await explorer.load(configFile);
return result ? result.config : null;
}
async function resolveConfigFile(filePath) {
const result = await explorer.search(filePath);
return result ? result.filepath : null;
}
function getToken(configToken) {
const token = configToken || process.env.BUNDLE_ANALYZER_TOKEN;
if (!token) {
throw new Error(`Token not found, please specify a token using BUNDLE_ANALYZER_TOKEN env variable`);
}
return token;
}
function getApiUrl() {
return process.env.BUNDLE_ANALYZER_API_URL || 'https://api.bundle-analyzer.com';
}