Skip to content

Commit 56109e7

Browse files
authored
Only forward defined refs (#3208)
1 parent de80631 commit 56109e7

File tree

4 files changed

+16
-5
lines changed

4 files changed

+16
-5
lines changed

.changeset/metal-boxes-admire.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
'@emotion/primitives-core': patch
3+
'@emotion/styled': patch
4+
'@emotion/react': patch
5+
---
6+
7+
Only forward defined `ref`s to improve compatibility with the upcoming React 19

packages/primitives-core/src/styled.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,9 +76,10 @@ export function createStyled(
7676
newProps[key] = props[key]
7777
}
7878
}
79-
8079
newProps.style = [css.apply(mergedProps, styles), props.style]
81-
newProps.ref = ref
80+
if (ref) {
81+
newProps.ref = ref
82+
}
8283

8384
return React.createElement(finalTag, newProps)
8485
})

packages/react/src/emotion-element.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,8 +149,10 @@ let Emotion = /* #__PURE__ */ withEmotionCache(
149149
newProps[key] = props[key]
150150
}
151151
}
152-
newProps.ref = ref
153152
newProps.className = className
153+
if (ref) {
154+
newProps.ref = ref
155+
}
154156

155157
return (
156158
<>

packages/styled/src/base.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -155,9 +155,10 @@ let createStyled /*: CreateStyled */ = (
155155
newProps[key] = props[key]
156156
}
157157
}
158-
159158
newProps.className = className
160-
newProps.ref = ref
159+
if (ref) {
160+
newProps.ref = ref
161+
}
161162

162163
return (
163164
<>

0 commit comments

Comments
 (0)