UNPKG

@kcuf/mere-color

Version:

Mere color utils for generating, manipulation, a11y purposes.

32 lines (31 loc) 1.22 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = parseColorHex; var _matchHex = _interopRequireDefault(require("./match-hex")); var _parseNumberHex = _interopRequireDefault(require("./parse-number-hex")); var _parseNumberHexAlpha = _interopRequireDefault(require("./parse-number-hex-alpha")); /** * Parse any valid Hex3/4/6/8 string into an `RgbColor` object. * * https://developer.mozilla.org/en-US/docs/Web/CSS/hex-color */ function parseColorHex(color) { var match = (0, _matchHex.default)(color); if (!match) { return null; } return match.length < 6 ? { r: (0, _parseNumberHex.default)(match.substring(0, 1)), g: (0, _parseNumberHex.default)(match.substring(1, 2)), b: (0, _parseNumberHex.default)(match.substring(2, 3)), a: (0, _parseNumberHexAlpha.default)(match.substring(3, 4)) } : { r: (0, _parseNumberHex.default)(match.substring(0, 2)), g: (0, _parseNumberHex.default)(match.substring(2, 4)), b: (0, _parseNumberHex.default)(match.substring(4, 6)), a: (0, _parseNumberHexAlpha.default)(match.substring(6, 8)) }; }