@wix/css-property-parser
Version:
A comprehensive TypeScript library for parsing and serializing CSS property values with full MDN specification compliance
60 lines (59 loc) • 2.34 kB
JavaScript
// Shared logical border property parser
// Handles parsing of CSS logical border properties (border-inline-start, border-inline-end and their components)
// https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_logical_properties_and_values
import { parseBorderIndividualProperty, borderIndividualToCSSValue } from './shared-border-individual.js';
import { parseBorderWidthProperty, borderWidthToCSSValue } from './shared-border-width.js';
import { parseBorderStyleProperty, borderStyleToCSSValue } from './shared-border-style.js';
import { parseBorderColorProperty, borderColorToCSSValue } from './shared-border-color.js';
/**
* Parse logical border shorthand property value (border-inline-start, border-inline-end)
* Uses the same syntax as individual border shorthand properties
*/
export function parseLogicalBorderProperty(value) {
return parseBorderIndividualProperty(value);
}
/**
* Convert logical border shorthand value to CSS string
*/
export function logicalBorderToCSSValue(parsed) {
return borderIndividualToCSSValue(parsed);
}
/**
* Parse logical border width property value (border-inline-start-width, border-inline-end-width)
* Uses the same syntax as individual border width properties
*/
export function parseLogicalBorderWidthProperty(value) {
return parseBorderWidthProperty(value);
}
/**
* Convert logical border width value to CSS string
*/
export function logicalBorderWidthToCSSValue(parsed) {
return borderWidthToCSSValue(parsed);
}
/**
* Parse logical border style property value (border-inline-start-style, border-inline-end-style)
* Uses the same syntax as individual border style properties
*/
export function parseLogicalBorderStyleProperty(value) {
return parseBorderStyleProperty(value);
}
/**
* Convert logical border style value to CSS string
*/
export function logicalBorderStyleToCSSValue(parsed) {
return borderStyleToCSSValue(parsed);
}
/**
* Parse logical border color property value (border-inline-start-color, border-inline-end-color)
* Uses the same syntax as individual border color properties
*/
export function parseLogicalBorderColorProperty(value) {
return parseBorderColorProperty(value);
}
/**
* Convert logical border color value to CSS string
*/
export function logicalBorderColorToCSSValue(parsed) {
return borderColorToCSSValue(parsed);
}