@kcuf/mere-color
Version:
Mere color utils for generating, manipulation, a11y purposes.
45 lines (44 loc) • 1.57 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = getColorNotationDetailed;
var _enum = require("../enum");
var _matchName = _interopRequireDefault(require("./match-name"));
var _matchHex = _interopRequireDefault(require("./match-hex"));
var _matchRgb = _interopRequireDefault(require("./match-rgb"));
var _matchRgbLegacy = _interopRequireDefault(require("./match-rgb-legacy"));
var _matchHsl = _interopRequireDefault(require("./match-hsl"));
var _matchHslLegacy = _interopRequireDefault(require("./match-hsl-legacy"));
function getColorNotationDetailed(color) {
if ((0, _matchName.default)(color)) {
return _enum.EColorNotationDetailed.NAME;
}
var hex = (0, _matchHex.default)(color);
if (hex) {
switch (hex.length) {
case 3:
return _enum.EColorNotationDetailed.HEX3;
case 4:
return _enum.EColorNotationDetailed.HEX4;
case 8:
return _enum.EColorNotationDetailed.HEX8;
default:
return _enum.EColorNotationDetailed.HEX6;
}
}
if ((0, _matchRgb.default)(color)) {
return _enum.EColorNotationDetailed.RGB;
}
if ((0, _matchRgbLegacy.default)(color)) {
return _enum.EColorNotationDetailed.RGB_LEGACY;
}
if ((0, _matchHsl.default)(color)) {
return _enum.EColorNotationDetailed.HSL;
}
if ((0, _matchHslLegacy.default)(color)) {
return _enum.EColorNotationDetailed.HSL_LEGACY;
}
return _enum.EColorNotationDetailed.UNKNOWN;
}