@kcuf/mere-color
Version:
Mere color utils for generating, manipulation, a11y purposes.
43 lines (42 loc) • 1.67 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = toColorString;
var _enum = require("../enum");
var _isRgb = _interopRequireDefault(require("./is-rgb"));
var _isHsl = _interopRequireDefault(require("./is-hsl"));
var _rgbNormalize = _interopRequireDefault(require("./rgb-normalize"));
var _hslNormalize = _interopRequireDefault(require("./hsl-normalize"));
var _rgbToHsl = _interopRequireDefault(require("./rgb-to-hsl"));
var _rgbToHex = _interopRequireDefault(require("./rgb-to-hex"));
var _rgbToString = _interopRequireDefault(require("./rgb-to-string"));
var _hslToRgb = _interopRequireDefault(require("./hsl-to-rgb"));
var _hslToHex = _interopRequireDefault(require("./hsl-to-hex"));
var _hslToString = _interopRequireDefault(require("./hsl-to-string"));
function toColorString(o, format) {
if ((0, _isRgb.default)(o)) {
var rgb = (0, _rgbNormalize.default)(o);
switch (format) {
case _enum.EColorNotation.HSL:
return (0, _hslToString.default)((0, _rgbToHsl.default)(rgb));
case _enum.EColorNotation.HEX:
return (0, _rgbToHex.default)(rgb);
default:
return (0, _rgbToString.default)(rgb);
}
}
if ((0, _isHsl.default)(o)) {
var hsl = (0, _hslNormalize.default)(o);
switch (format) {
case _enum.EColorNotation.RGB:
return (0, _rgbToString.default)((0, _hslToRgb.default)(hsl));
case _enum.EColorNotation.HEX:
return (0, _hslToHex.default)(hsl);
default:
return (0, _hslToString.default)(hsl);
}
}
return '';
}