|
|
пре 3 недеља | |
|---|---|---|
| .. | ||
| dist | пре 3 недеља | |
| src | пре 3 недеља | |
| LICENSE | пре 3 недеља | |
| README.md | пре 3 недеља | |
| package.json | пре 3 недеља | |
Resolve and convert CSS colors.
npm i @asamuzakjp/css-color
import { convert, resolve, utils } from '@asamuzakjp/css-color';
const resolvedValue = resolve(
'color-mix(in oklab, lch(67.5345 42.5 258.2), color(srgb 0 0.5 0))'
);
// 'oklab(0.620754 -0.0931934 -0.00374881)'
const convertedValue = convert.colorToHex('lab(46.2775% -47.5621 48.5837)');
// '#008000'
const result = utils.isColor('green');
// true
resolves CSS color
color string color value
opt object? options (optional, default {})
opt.currentColor string?currentcolor keywordrgb(none none none / none)opt.customProperty object?pair of -- prefixed property name as a key and it's value,
e.g.
const opt = {
customProperty: {
'--some-color': '#008000',
'--some-length': '16px'
}
};
and/or callback function to get the value of the custom property,
e.g.
const node = document.getElementById('foo');
const opt = {
customProperty: {
callback: node.style.getPropertyValue
}
};
opt.dimension object?
dimension, e.g. for converting relative length to pixels
pair of unit as a key and number in pixels as it's value,
e.g. suppose 1em === 12px, 1rem === 16px and 100vw === 1024px, then
const opt = {
dimension: {
em: 12,
rem: 16,
vw: 10.24
}
};
and/or callback function to get the value as a number in pixels,
e.g.
const opt = {
dimension: {
callback: unit => {
switch (unit) {
case 'em':
return 12;
case 'rem':
return 16;
case 'vw':
return 10.24;
default:
return;
}
}
}
};
opt.format string?
output format, one of below
computedValue (default), computed value of the colorspecifiedValue, specified value of the colorhex, hex color notation, i.e. #rrggbbhexAlpha, hex color notation with alpha channel, i.e. #rrggbbaaReturns string? one of rgba?(), #rrggbb(aa)?, color-name, color(color-space r g b / alpha), color(color-space x y z / alpha), (ok)?lab(l a b / alpha), (ok)?lch(l c h / alpha), '(empty-string)', null
computedValue, values are numbers, however rgb() values are integersspecifiedValue, returns empty string for unknown and/or invalid colorhex, returns null for transparent, and also returns null if any of r, g, b, alpha is not a numberhexAlpha, returns #00000000 for transparent, however returns null if any of r, g, b, alpha is not a numberContains various color conversion functions.
convert number to hex string
value number color valueReturns string hex string: 00..ff
convert color to hex
Returns string #rrggbb(aa)?
convert color to hsl
Returns Array<number> [h, s, l, alpha]
convert color to hwb
Returns Array<number> [h, w, b, alpha]
convert color to lab
Returns Array<number> [l, a, b, alpha]
convert color to lch
Returns Array<number> [l, c, h, alpha]
convert color to oklab
Returns Array<number> [l, a, b, alpha]
convert color to oklch
Returns Array<number> [l, c, h, alpha]
convert color to rgb
Returns Array<number> [r, g, b, alpha]
convert color to xyz
Returns Array<number> [x, y, z, alpha]
convert color to xyz-d50
Returns Array<number> [x, y, z, alpha]
Contains utility functions.
is valid color type
color string color value
Returns boolean
The following resources have been of great help in the development of the CSS color.
Copyright (c) 2024 asamuzaK (Kazz)