@@ -410,11 +410,15 @@ exports.parseImage = function parseImage(val) {
410410} ;
411411
412412// utility to translate from border-width to borderWidth
413- var dashedToCamelCase = function ( dashed ) {
414- var i ;
413+ exports . dashedToCamelCase = function ( dashed ) {
414+ if ( dashed . startsWith ( '--' ) ) {
415+ return dashed ;
416+ }
417+ // skip leading hyphen in vendor prefixed value, e.g. -webkit-foo
418+ var i = / ^ \- [ a - z ] / . test ( dashed ) ? 1 : 0 ;
415419 var camel = '' ;
416420 var nextCap = false ;
417- for ( i = 0 ; i < dashed . length ; i ++ ) {
421+ for ( ; i < dashed . length ; i ++ ) {
418422 if ( dashed [ i ] !== '-' ) {
419423 camel += nextCap ? dashed [ i ] . toUpperCase ( ) : dashed [ i ] ;
420424 nextCap = false ;
@@ -424,7 +428,6 @@ var dashedToCamelCase = function (dashed) {
424428 }
425429 return camel ;
426430} ;
427- exports . dashedToCamelCase = dashedToCamelCase ;
428431
429432var isSpace = / \s / ;
430433var openingDeliminators = [ '"' , "'" , '(' ] ;
@@ -525,7 +528,7 @@ exports.shorthandSetter = function (property, shorthandFor) {
525528 Object . keys ( obj ) . forEach ( function ( subprop ) {
526529 // in case subprop is an implicit property, this will clear
527530 // *its* subpropertiesX
528- var camel = dashedToCamelCase ( subprop ) ;
531+ var camel = exports . dashedToCamelCase ( subprop ) ;
529532 this [ camel ] = obj [ subprop ] ;
530533 // in case it gets translated into something else (0 -> 0px)
531534 obj [ subprop ] = this [ camel ] ;
0 commit comments