UNPKG

@evg-b/evg-ui

Version:

EVG-UI library inspired by Material Design.

53 lines (43 loc) 1.72 kB
import _construct from '@babel/runtime/helpers/construct'; import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray'; import ColorDetective from './ColorDetective.js'; import RGBtoRGBAraw from './inrgb/RGBtoRGBAraw.js'; import RGBAtoRGBAraw from './inrgb/RGBAtoRGBAraw.js'; import HEXtoRGBAraw from './inrgb/HEXtoRGBAraw.js'; import HEXAtoRGBAraw from './inrgb/HEXAtoRGBAraw.js'; import HSLtoRGBAraw from './inrgb/HSLtoRGBAraw.js'; import HSLAtoRGBAraw from './inrgb/HSLAtoRGBAraw.js'; import ColorObject from './ColorObject.js'; function Color() { var colorName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ''; // console.log('Color:', colorName, nameComponent) // тут будет switch по результатам ColorDetective создавать Color объект и возвращать его var detective = ColorDetective(colorName); var RGBAraw = [255, 255, 255, 0]; switch (detective.format) { // сюда попадает format - RGB/RGBA/HEX/HEXA/HSL/HSLA // тут идет расщепление на R G B A case 'RGB': RGBAraw = RGBtoRGBAraw(detective.value); break; case 'RGBA': RGBAraw = RGBAtoRGBAraw(detective.value); break; case 'HEX': RGBAraw = HEXtoRGBAraw(detective.value); break; case 'HEXA': RGBAraw = HEXAtoRGBAraw(detective.value); break; case 'HSL': RGBAraw = HSLtoRGBAraw(detective.value); break; case 'HSLA': RGBAraw = HSLAtoRGBAraw(detective.value); break; // case 'unknown': // break } return _construct(ColorObject, _toConsumableArray(RGBAraw).concat([detective.format])); } export default Color;