@wix/css-property-parser
Version:
A comprehensive TypeScript library for parsing and serializing CSS property values with full MDN specification compliance
33 lines (32 loc) • 1.29 kB
JavaScript
// Border-bottom-color property evaluator
// https://developer.mozilla.org/en-US/docs/Web/CSS/border-bottom-color
import { parseBorderColorProperty, borderColorToCSSValue } from './shared-border-color.js';
/**
* Parse CSS border-bottom-color property
*
* @param value - CSS border-bottom-color property value
* @returns Parsed border color value or null if invalid
*
* @example
* parse('green') // { type: 'color', format: 'named', values: { name: 'green' } }
* parse('hsl(120, 100%, 50%)') // { type: 'color', format: 'hsl', values: { h: 120, s: 100, l: 50 } }
* parse('currentcolor') // { type: 'keyword', keyword: 'currentcolor' }
* parse('var(--color)') // null (CSS variables handled at runtime)
*/
export function parse(value) {
return parseBorderColorProperty(value);
}
/**
* Convert parsed border-bottom-color back to CSS string
*
* @param parsed - Parsed border color value
* @returns CSS string representation or null if invalid
*
* @example
* toCSSValue({ type: 'color', format: 'named', values: { name: 'green' } }) // 'green'
* toCSSValue({ type: 'keyword', keyword: 'currentcolor' }) // 'currentcolor'
* toCSSValue({ type: 'keyword', keyword: 'unset' }) // 'unset'
*/
export function toCSSValue(parsed) {
return borderColorToCSSValue(parsed);
}