UNPKG

zhu-jiang-yi-yuan-mobile

Version:

南方医科大学珠江医院移动端

65 lines (55 loc) 3.2 kB
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } import { NConst } from 'nsn-const'; import { NNum, NStr, NType } from 'nsn-util'; var getPieDataTotal = function getPieDataTotal(pieData) { return pieData.map(function (d) { return d.value || 0; }).reduce(function (total, current) { if (NType.isNumber(current)) { return total + current; } else if (NType.isString(current)) { return total + parseFloat(current); } return total; }); }; var transformPieData = function transformPieData(pieData) { var total = getPieDataTotal(pieData); return pieData.map(function (d) { if (!NStr.isEqual(total, 0)) { if (NType.isNumber(d.value)) { d.value = d.value / total; } else if (NType.isString(d.value)) { d.value = parseFloat(d.value) / total; } } return _objectSpread(_objectSpread({}, d), {}, { value: d.value || 0 }); }); }; var transformBarData = function transformBarData(barData) { var newBarData = []; var newBarDataObj = barData || {}; Object.keys(newBarDataObj).forEach(function (k) { return newBarData.push({ dept: k, value: newBarDataObj[k] || 0 }); }); return newBarData; }; var getTooltipTpl = function getTooltipTpl(props) { var title = props.title, data = props.data, _props$suffix = props.suffix, suffix = _props$suffix === void 0 ? NConst.EMPTY : _props$suffix; var lis = data.map(function (item) { var vtext = NNum.translate(item.value); return "<li class=\"g2-tooltip-list-item\">\n <span class=\"g2-tooltip-marker\" style=\"background-color:".concat(item === null || item === void 0 ? void 0 : item.color, "\"></span>\n <span class=\"g2-tooltip-name\">").concat(title, "</span>:<span class=\"g2-tooltip-value\">").concat(vtext).concat(suffix, "</span>\n </li>"); }); return "<div class=\"g2-tooltip\">\n <div class=\"g2-tooltip-title\" style=\"display: none;\">".concat(title, "</div>\n <ul class=\"g2-tooltip-list\">\n ").concat(lis.join(''), "\n </ul>\n </div>"); }; export { transformPieData, transformBarData, getTooltipTpl };