From 5f3bd0dd482140752562bd13d5947ce39858f90c Mon Sep 17 00:00:00 2001 From: Wojciech Lewicki Date: Wed, 20 Sep 2023 16:14:35 +0200 Subject: [PATCH] fix: error for transform on web (#2139) Setting transform prop of svg component as undefined in web causes the error, so we set it only if the parsed value is not undefined. --- src/ReactNativeSVG.web.ts | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/ReactNativeSVG.web.ts b/src/ReactNativeSVG.web.ts index 57d22f33..ba940a59 100644 --- a/src/ReactNativeSVG.web.ts +++ b/src/ReactNativeSVG.web.ts @@ -223,9 +223,19 @@ const prepare = ( clean['transform-origin'] = `${originX || 0} ${originY || 0}`; } - clean.transform = parseTransformProp(transform, props); - clean.gradientTransform = parseTransformProp(gradientTransform); - clean.patternTransform = parseTransformProp(patternTransform); + // we do it like this because setting transform as undefined causes error in web + const parsedTransform = parseTransformProp(transform, props); + if (parsedTransform) { + clean.transform = parsedTransform; + } + const parsedGradientTransform = parseTransformProp(gradientTransform); + if (parsedGradientTransform) { + clean.gradientTransform = parsedGradientTransform; + } + const parsedPatternTransform = parseTransformProp(patternTransform); + if (parsedPatternTransform) { + clean.patternTransform = parsedPatternTransform; + } clean.ref = (el: SVGElement | null) => { self.elementRef.current = el;