From 9ee5a28b37edf403c503aed4f37edbaebe201eb0 Mon Sep 17 00:00:00 2001 From: Mikael Sand Date: Sun, 20 Oct 2019 17:28:57 +0300 Subject: [PATCH] fix: camelCase css from style elements --- src/css.js | 4 ++-- src/xml.tsx | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/css.js b/src/css.js index 9de66c7b..bedef943 100644 --- a/src/css.js +++ b/src/css.js @@ -1,5 +1,5 @@ import React, { useEffect, useMemo, useState } from 'react'; -import { parse, SvgAst } from './xml'; +import { camelCase, parse, SvgAst } from './xml'; import baseCssAdapter from 'css-select-base-adapter'; import csstree, { List } from 'css-tree'; import cssSelect from 'css-select'; @@ -563,7 +563,7 @@ CSSStyleDeclaration.prototype.setProperty = function( }; let key = propertyName.trim(); properties.set(key, property); - this.parentNode.props.style[key] = trimmedValue; + this.parentNode.props.style[camelCase(key)] = trimmedValue; return property; }; diff --git a/src/xml.tsx b/src/xml.tsx index d283ab60..eb690742 100644 --- a/src/xml.tsx +++ b/src/xml.tsx @@ -174,7 +174,7 @@ export class SvgFromUri extends Component { const upperCase = (_match: string, letter: string) => letter.toUpperCase(); -const camelCase = (phrase: string) => +export const camelCase = (phrase: string) => phrase.replace(/[:\-]([a-z])/g, upperCase); type Styles = { [property: string]: string };