UNPKG

@alauda-fe/common

Version:

Alauda frontend team common codes.

66 lines 7.76 kB
export const RESOURCE_MAC_TYPES = ['cpu', 'memory']; export const RESOURCE_REQUIREMENT_KEYS = ['requests', 'limits']; export function getResourceViewModel(data, type, preferEmptyOrC) { // 对于 '2' 的cpu大小,视图上展示为 '2c' if (type === 'cpu' && !isNaN(+data)) { data = `${data}c`; } if (type === 'memory' && !isNaN(+data)) { data = `${data}Bytes`; } const reg = /^(\d?\.?\d+)([A-Za-z]+)$/; const res = { value: '', unit: '', }; if (!isNaN(parseFloat(data))) { const _res = reg.exec(data) || []; res.value = _res[1] || ''; const unit = _res[2]; switch (type) { case 'cpu': { res.unit = preferEmptyOrC && unit === 'c' ? '' : unit || 'm'; break; } case 'memory': { res.unit = unit || ''; break; } } } return res; } export const resourceUnits = { cpu: [ { value: 'm', label: 'unit_m', }, { value: 'c', label: 'core', }, ], memory: ['Mi', 'Gi'], }; export function getResourceValue(data) { if (typeof data === 'string') { return data; } if (data.value) { return !data.unit || data.unit === 'c' || data.unit === 'Bytes' ? data.value : `${data.value}${data.unit}`; } return ''; } export function transferResource(resource) { return Object.keys(resource).reduce((item, type) => { const value = getResourceValue(resource[type]); if (value) { item[type] = value; } return item; }, {}); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NvcmUvdXRpbHMvcmVzb3VyY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBVSxDQUFDO0FBQzdELE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBVSxDQUFDO0FBZ0J6RSxNQUFNLFVBQVUsb0JBQW9CLENBQ2xDLElBQVksRUFDWixJQUFzQixFQUN0QixjQUF3QjtJQUV4Qiw0QkFBNEI7SUFDNUIsSUFBSSxJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNwQyxJQUFJLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFBSSxJQUFJLEtBQUssUUFBUSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUN2QyxJQUFJLEdBQUcsR0FBRyxJQUFJLE9BQU8sQ0FBQztJQUN4QixDQUFDO0lBQ0QsTUFBTSxHQUFHLEdBQUcsMEJBQTBCLENBQUM7SUFDdkMsTUFBTSxHQUFHLEdBQUc7UUFDVixLQUFLLEVBQUUsRUFBRTtRQUNULElBQUksRUFBRSxFQUFFO0tBQ1QsQ0FBQztJQUVGLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUM3QixNQUFNLElBQUksR0FBYSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM1QyxHQUFHLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDMUIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JCLFFBQVEsSUFBSSxFQUFFLENBQUM7WUFDYixLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ1gsR0FBRyxDQUFDLElBQUksR0FBRyxjQUFjLElBQUksSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDO2dCQUM3RCxNQUFNO1lBQ1IsQ0FBQztZQUNELEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQztnQkFDZCxHQUFHLENBQUMsSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7Z0JBQ3RCLE1BQU07WUFDUixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUc7SUFDM0IsR0FBRyxFQUFFO1FBQ0g7WUFDRSxLQUFLLEVBQUUsR0FBRztZQUNWLEtBQUssRUFBRSxRQUFRO1NBQ2hCO1FBQ0Q7WUFDRSxLQUFLLEVBQUUsR0FBRztZQUNWLEtBQUssRUFBRSxNQUFNO1NBQ2Q7S0FDRjtJQUNELE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUM7Q0FDckIsQ0FBQztBQUVGLE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxJQUE4QjtJQUM3RCxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzdCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNELElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2YsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxPQUFPO1lBQzdELENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSztZQUNaLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFDRCxPQUFPLEVBQUUsQ0FBQztBQUNaLENBQUM7QUFFRCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsUUFBOEI7SUFDN0QsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxJQUFvQixFQUFFLEVBQUU7UUFDakUsTUFBTSxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDL0MsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNWLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDckIsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQyxFQUFFLEVBQWtCLENBQUMsQ0FBQztBQUN6QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVzb3VyY2VDb250cm9sIH0gZnJvbSAnLi4vLi4vZm9ybS92YWxpZGF0b3JzL3Jlc291cmNlLWxpbWl0JztcblxuZXhwb3J0IGNvbnN0IFJFU09VUkNFX01BQ19UWVBFUyA9IFsnY3B1JywgJ21lbW9yeSddIGFzIGNvbnN0O1xuZXhwb3J0IGNvbnN0IFJFU09VUkNFX1JFUVVJUkVNRU5UX0tFWVMgPSBbJ3JlcXVlc3RzJywgJ2xpbWl0cyddIGFzIGNvbnN0O1xuXG5leHBvcnQgdHlwZSBSZXNvdXJjZU1hY0tleSA9ICh0eXBlb2YgUkVTT1VSQ0VfTUFDX1RZUEVTKVtudW1iZXJdO1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VNYWNzID0gUmVjb3JkPFJlc291cmNlTWFjS2V5LCBzdHJpbmc+O1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VNYWNGb3JtTW9kYWwgPSBSZWNvcmQ8UmVzb3VyY2VNYWNLZXksIFJlc291cmNlQ29udHJvbD47XG5leHBvcnQgdHlwZSBSZXNvdXJjZVJlcXVpcmVtZW50S2V5ID0gKHR5cGVvZiBSRVNPVVJDRV9SRVFVSVJFTUVOVF9LRVlTKVtudW1iZXJdO1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VSZXF1aXJlbWVudFN0cmljdCA9IFJlY29yZDxcbiAgUmVzb3VyY2VSZXF1aXJlbWVudEtleSxcbiAgUmVzb3VyY2VNYWNzXG4+O1xuXG5leHBvcnQgdHlwZSBSZXNvdXJjZVJlcXVpcmVtZW50Rm9ybU1vZGFsID0gUmVjb3JkPFxuICBSZXNvdXJjZVJlcXVpcmVtZW50S2V5LFxuICBSZXNvdXJjZU1hY0Zvcm1Nb2RhbFxuPjtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJlc291cmNlVmlld01vZGVsKFxuICBkYXRhOiBzdHJpbmcsXG4gIHR5cGU6ICdjcHUnIHwgJ21lbW9yeScsXG4gIHByZWZlckVtcHR5T3JDPzogYm9vbGVhbixcbik6IFJlc291cmNlQ29udHJvbCB7XG4gIC8vIOWvueS6jiAnMicg55qEY3B15aSn5bCP77yM6KeG5Zu+5LiK5bGV56S65Li6ICcyYydcbiAgaWYgKHR5cGUgPT09ICdjcHUnICYmICFpc05hTigrZGF0YSkpIHtcbiAgICBkYXRhID0gYCR7ZGF0YX1jYDtcbiAgfVxuICBpZiAodHlwZSA9PT0gJ21lbW9yeScgJiYgIWlzTmFOKCtkYXRhKSkge1xuICAgIGRhdGEgPSBgJHtkYXRhfUJ5dGVzYDtcbiAgfVxuICBjb25zdCByZWcgPSAvXihcXGQ/XFwuP1xcZCspKFtBLVphLXpdKykkLztcbiAgY29uc3QgcmVzID0ge1xuICAgIHZhbHVlOiAnJyxcbiAgICB1bml0OiAnJyxcbiAgfTtcblxuICBpZiAoIWlzTmFOKHBhcnNlRmxvYXQoZGF0YSkpKSB7XG4gICAgY29uc3QgX3Jlczogc3RyaW5nW10gPSByZWcuZXhlYyhkYXRhKSB8fCBbXTtcbiAgICByZXMudmFsdWUgPSBfcmVzWzFdIHx8ICcnO1xuICAgIGNvbnN0IHVuaXQgPSBfcmVzWzJdO1xuICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgY2FzZSAnY3B1Jzoge1xuICAgICAgICByZXMudW5pdCA9IHByZWZlckVtcHR5T3JDICYmIHVuaXQgPT09ICdjJyA/ICcnIDogdW5pdCB8fCAnbSc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAnbWVtb3J5Jzoge1xuICAgICAgICByZXMudW5pdCA9IHVuaXQgfHwgJyc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiByZXM7XG59XG5cbmV4cG9ydCBjb25zdCByZXNvdXJjZVVuaXRzID0ge1xuICBjcHU6IFtcbiAgICB7XG4gICAgICB2YWx1ZTogJ20nLFxuICAgICAgbGFiZWw6ICd1bml0X20nLFxuICAgIH0sXG4gICAge1xuICAgICAgdmFsdWU6ICdjJyxcbiAgICAgIGxhYmVsOiAnY29yZScsXG4gICAgfSxcbiAgXSxcbiAgbWVtb3J5OiBbJ01pJywgJ0dpJ10sXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0UmVzb3VyY2VWYWx1ZShkYXRhOiBSZXNvdXJjZUNvbnRyb2wgfCBzdHJpbmcpIHtcbiAgaWYgKHR5cGVvZiBkYXRhID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiBkYXRhO1xuICB9XG4gIGlmIChkYXRhLnZhbHVlKSB7XG4gICAgcmV0dXJuICFkYXRhLnVuaXQgfHwgZGF0YS51bml0ID09PSAnYycgfHwgZGF0YS51bml0ID09PSAnQnl0ZXMnXG4gICAgICA/IGRhdGEudmFsdWVcbiAgICAgIDogYCR7ZGF0YS52YWx1ZX0ke2RhdGEudW5pdH1gO1xuICB9XG4gIHJldHVybiAnJztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZmVyUmVzb3VyY2UocmVzb3VyY2U6IFJlc291cmNlTWFjRm9ybU1vZGFsKSB7XG4gIHJldHVybiBPYmplY3Qua2V5cyhyZXNvdXJjZSkucmVkdWNlKChpdGVtLCB0eXBlOiBSZXNvdXJjZU1hY0tleSkgPT4ge1xuICAgIGNvbnN0IHZhbHVlID0gZ2V0UmVzb3VyY2VWYWx1ZShyZXNvdXJjZVt0eXBlXSk7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICBpdGVtW3R5cGVdID0gdmFsdWU7XG4gICAgfVxuICAgIHJldHVybiBpdGVtO1xuICB9LCB7fSBhcyBSZXNvdXJjZU1hY3MpO1xufVxuIl19