UNPKG

antd

Version:

An enterprise-class UI design language and React components implementation

84 lines (83 loc) 2.48 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getStrokeColor = exports.getSize = exports.getPercentage = void 0; exports.getSuccessPercent = getSuccessPercent; exports.validProgress = validProgress; var _colors = require("@ant-design/colors"); function validProgress(progress) { if (!progress || progress < 0) { return 0; } if (progress > 100) { return 100; } return progress; } function getSuccessPercent({ success }) { let percent; if (success && 'percent' in success) { percent = success.percent; } return percent; } const getPercentage = ({ percent, success }) => { const realSuccessPercent = validProgress(getSuccessPercent({ success })); return [realSuccessPercent, validProgress(validProgress(percent) - realSuccessPercent)]; }; exports.getPercentage = getPercentage; const getStrokeColor = ({ success = {}, strokeColor }) => { const { strokeColor: successColor } = success; return [successColor || _colors.presetPrimaryColors.green, strokeColor || null]; }; exports.getStrokeColor = getStrokeColor; const getSize = (size, type, extra) => { let width = -1; let height = -1; if (type === 'step') { const steps = extra.steps; const strokeWidth = extra.strokeWidth; if (typeof size === 'string' || typeof size === 'undefined') { width = size === 'small' ? 2 : 14; height = strokeWidth ?? 8; } else if (typeof size === 'number') { [width, height] = [size, size]; } else { [width = 14, height = 8] = Array.isArray(size) ? size : [size.width, size.height]; } width *= steps; } else if (type === 'line') { const strokeWidth = extra?.strokeWidth; if (typeof size === 'string' || typeof size === 'undefined') { height = strokeWidth || (size === 'small' ? 6 : 8); } else if (typeof size === 'number') { [width, height] = [size, size]; } else { [width = -1, height = 8] = Array.isArray(size) ? size : [size.width, size.height]; } } else if (type === 'circle' || type === 'dashboard') { if (typeof size === 'string' || typeof size === 'undefined') { [width, height] = size === 'small' ? [60, 60] : [120, 120]; } else if (typeof size === 'number') { [width, height] = [size, size]; } else if (Array.isArray(size)) { width = size[0] ?? size[1] ?? 120; height = size[0] ?? size[1] ?? 120; } } return [width, height]; }; exports.getSize = getSize;