UNPKG

t-comm

Version:

专业、稳定、纯粹的工具库

57 lines (55 loc) 1.94 kB
function getImageName(_a) { var projectName = _a.projectName, subProjectName = _a.subProjectName, branch = _a.branch; var innerParse = function innerParse(str) { return str.replace(/\//g, '.'); }; var prefix = "".concat(innerParse(projectName), ".").concat(innerParse(subProjectName)); if (branch === 'release') { return prefix; } var result = "".concat(prefix, ".").concat(innerParse(branch)); return result; } function parseGrayPublishConfig(config) { if (config === void 0) { config = {}; } var map = {}; Object.keys(config).forEach(function (projectName) { var projectMap = config[projectName]; Object.keys(projectMap).forEach(function (subProjectName) { var subProjectMap = projectMap[subProjectName]; Object.keys(subProjectMap).forEach(function (branch) { var coreConfig = subProjectMap[branch]; var curPackageName = getImageName({ projectName: projectName, subProjectName: subProjectName, branch: branch }); map[curPackageName] = coreConfig; }); }); }); return map; } function getCurrentProjectUseGray(fullSubProjectName, globalGrayPublishConfig) { var keys = Object.keys(globalGrayPublishConfig); var list = keys.filter(function (key) { return key === fullSubProjectName || key.startsWith("".concat(fullSubProjectName, ".")); }).filter(function (packageName) { var info = globalGrayPublishConfig[packageName]; return !!(info.grayVersion && info.grayPercent && info.cookieId); }).map(function (packageName) { var parsedBranch = packageName.replace(fullSubProjectName, ''); return { fullSubProjectName: fullSubProjectName, packageName: packageName, parsedBranch: parsedBranch, cookieId: globalGrayPublishConfig[packageName].cookieId || '' }; }); return list; } export { getCurrentProjectUseGray, getImageName, parseGrayPublishConfig };