@@ -114,9 +114,11 @@ const parsers: {
114
114
"border-inline-end" : parseBorderInlineEnd ,
115
115
"border-inline-end-color" : parseColorDeclaration ,
116
116
"border-inline-end-width" : parseBorderSideWidthDeclaration ,
117
+ "border-inline-end-style" : parseBorderInlineStyle ,
117
118
"border-inline-start" : parseBorderInlineStart ,
118
119
"border-inline-start-color" : parseColorDeclaration ,
119
120
"border-inline-start-width" : parseBorderSideWidthDeclaration ,
121
+ "border-inline-start-style" : parseBorderInlineStyle ,
120
122
"border-inline-width" : parseBorderInlineWidth ,
121
123
"border-inline-style" : parseBorderInlineStyle ,
122
124
"border-left" : parseBorderSide ,
@@ -493,10 +495,19 @@ export function parseBorderInlineWidth(
493
495
}
494
496
495
497
export function parseBorderInlineStyle (
496
- declaration : DeclarationType < "border-inline-style" > ,
498
+ declaration : DeclarationType <
499
+ | "border-inline-style"
500
+ | "border-inline-start-style"
501
+ | "border-inline-end-style"
502
+ > ,
497
503
builder : StylesheetBuilder ,
498
504
) {
499
- if ( declaration . value . start === declaration . value . end ) {
505
+ if ( typeof declaration . value === "string" ) {
506
+ builder . addDescriptor (
507
+ "border-style" ,
508
+ parseBorderStyle ( declaration . value , builder ) ,
509
+ ) ;
510
+ } else if ( declaration . value . start === declaration . value . end ) {
500
511
builder . addDescriptor (
501
512
"border-style" ,
502
513
parseBorderStyle ( declaration . value . start , builder ) ,
@@ -1965,10 +1976,33 @@ function parseBorderBlockStyle(
1965
1976
}
1966
1977
1967
1978
export function parseBorderSideWidthDeclaration (
1968
- declaration : { value : BorderSideWidth } ,
1979
+ declaration : DeclarationType <
1980
+ | "border-block-end-width"
1981
+ | "border-block-start-width"
1982
+ | "border-bottom-width"
1983
+ | "border-inline-end-width"
1984
+ | "border-inline-start-width"
1985
+ | "border-left-width"
1986
+ | "border-right-width"
1987
+ | "border-top-width"
1988
+ > ,
1969
1989
builder : StylesheetBuilder ,
1970
1990
) {
1971
- return parseBorderSideWidth ( declaration . value , builder ) ;
1991
+ if ( declaration . property . includes ( "block" ) ) {
1992
+ builder . addDescriptor (
1993
+ `border-${ declaration . property . includes ( "start" ) ? "top" : "bottom" } -width` ,
1994
+ parseBorderSideWidth ( declaration . value , builder ) ,
1995
+ ) ;
1996
+ return ;
1997
+ } else if ( declaration . property . includes ( "inline" ) ) {
1998
+ builder . addDescriptor (
1999
+ `border-${ declaration . property . includes ( "start" ) ? "left" : "right" } -width` ,
2000
+ parseBorderSideWidth ( declaration . value , builder ) ,
2001
+ ) ;
2002
+ return ;
2003
+ } else {
2004
+ return parseBorderSideWidth ( declaration . value , builder ) ;
2005
+ }
1972
2006
}
1973
2007
1974
2008
export function parseBorderSideWidth (
0 commit comments