UNPKG

zent

Version:

一套前端设计语言和基于React的实现

46 lines (45 loc) 1.31 kB
import tinycolor from '../../utils/tinycolor'; export default { simpleCheckForValidColor: function (data) { var keysToCheck = ['r', 'g', 'b', 'a', 'h', 's', 'a', 'v']; var checked = 0; var passed = 0; keysToCheck.forEach(function (letter) { var v = data[letter]; if (v) { checked += 1; if (!isNaN(v)) { passed += 1; } } }); return checked === passed ? data : false; }, toState: function (data, oldHue) { var color = data.hex ? tinycolor(data.hex) : tinycolor(data); var hsl = color.toHsl(); var hsv = color.toHsv(); if (hsl.s === 0) { hsl.h = oldHue || 0; hsv.h = oldHue || 0; } return { hsl: hsl, hex: "#" + color.toHex(), rgb: color.toRgb(), rgba: color.toRgbString(), hsv: hsv, oldHue: data.h || oldHue || hsl.h, source: data.source, }; }, isValidHex: function (hex) { return tinycolor(hex).isValid; }, }; export var red = { hsl: { a: 1, h: 0, l: 0.5, s: 1 }, hex: '#ff0000', rgb: { r: 255, g: 0, b: 0, a: 1 }, hsv: { h: 0, s: 1, v: 1, a: 1 }, };