diff --git a/.changeset/khaki-rice-peel.md b/.changeset/khaki-rice-peel.md
new file mode 100644
index 0000000000..82910c7ddf
--- /dev/null
+++ b/.changeset/khaki-rice-peel.md
@@ -0,0 +1,5 @@
+---
+'@react-spring/core': patch
+---
+
+Fix issue with Jest and legacy React apps using useTransition
diff --git a/.changeset/pre.json b/.changeset/pre.json
new file mode 100644
index 0000000000..028b1d7680
--- /dev/null
+++ b/.changeset/pre.json
@@ -0,0 +1,24 @@
+{
+ "mode": "pre",
+ "tag": "beta",
+ "initialVersions": {
+ "@react-spring/demo": "1.0.0",
+ "@react-spring/docs": "2.0.0",
+ "@react-spring/animated": "10.0.2",
+ "@react-spring/core": "10.0.2",
+ "eslint-config-react-spring": "0.0.1",
+ "@react-spring/parallax": "10.0.2",
+ "@react-spring/rafz": "10.0.2",
+ "react-spring": "10.0.1",
+ "@react-spring/shared": "10.0.2",
+ "@react-spring/types": "10.0.2",
+ "@react-spring/konva": "10.0.2",
+ "@react-spring/native": "10.0.2",
+ "@react-spring/three": "10.0.2",
+ "@react-spring/web": "10.0.2",
+ "@react-spring/zdog": "10.0.2"
+ },
+ "changesets": [
+ "khaki-rice-peel"
+ ]
+}
diff --git a/packages/animated/package.json b/packages/animated/package.json
index b6f6df4f8c..80bf0d04ce 100644
--- a/packages/animated/package.json
+++ b/packages/animated/package.json
@@ -1,6 +1,6 @@
{
"name": "@react-spring/animated",
- "version": "10.0.2",
+ "version": "10.0.3-beta.0",
"description": "Animated component props for React",
"module": "./dist/react-spring_animated.legacy-esm.js",
"main": "./dist/cjs/index.js",
@@ -52,8 +52,8 @@
"pack": "yarn pack"
},
"dependencies": {
- "@react-spring/shared": "~10.0.2",
- "@react-spring/types": "~10.0.2"
+ "@react-spring/shared": "~10.0.3-beta.0",
+ "@react-spring/types": "~10.0.3-beta.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"
diff --git a/packages/core/package.json b/packages/core/package.json
index 25392fd993..ea12b9d087 100644
--- a/packages/core/package.json
+++ b/packages/core/package.json
@@ -1,6 +1,6 @@
{
"name": "@react-spring/core",
- "version": "10.0.2",
+ "version": "10.0.3-beta.0",
"module": "./dist/react-spring_core.legacy-esm.js",
"main": "./dist/cjs/index.js",
"types": "./dist/react-spring_core.modern.d.mts",
@@ -55,9 +55,9 @@
"pack": "yarn pack"
},
"dependencies": {
- "@react-spring/animated": "~10.0.2",
- "@react-spring/shared": "~10.0.2",
- "@react-spring/types": "~10.0.2"
+ "@react-spring/animated": "~10.0.3-beta.0",
+ "@react-spring/shared": "~10.0.3-beta.0",
+ "@react-spring/types": "~10.0.3-beta.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"
diff --git a/packages/core/src/hooks/useTransition.tsx b/packages/core/src/hooks/useTransition.tsx
index 940b55e6ee..4dccb4d3cd 100644
--- a/packages/core/src/hooks/useTransition.tsx
+++ b/packages/core/src/hooks/useTransition.tsx
@@ -438,11 +438,13 @@ export function useTransition(
const props = elem?.props ?? {}
- if (isLegacyReact) {
- props.ref = elem.ref
- }
+ const elemRef = isLegacyReact ? elem?.ref : props?.ref
- return elem && elem.type ? : elem
+ return elem && elem.type ? (
+
+ ) : (
+ elem
+ )
})}
>
)
diff --git a/packages/parallax/package.json b/packages/parallax/package.json
index 3e8973158e..fcbd16e52f 100644
--- a/packages/parallax/package.json
+++ b/packages/parallax/package.json
@@ -1,6 +1,6 @@
{
"name": "@react-spring/parallax",
- "version": "10.0.2",
+ "version": "10.0.3-beta.0",
"module": "./dist/react-spring_parallax.legacy-esm.js",
"main": "./dist/cjs/index.js",
"types": "./dist/react-spring_parallax.modern.d.mts",
@@ -52,8 +52,8 @@
"test": "vite serve ./test"
},
"dependencies": {
- "@react-spring/shared": "~10.0.2",
- "@react-spring/web": "~10.0.2"
+ "@react-spring/shared": "~10.0.3-beta.0",
+ "@react-spring/web": "~10.0.3-beta.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
diff --git a/packages/rafz/package.json b/packages/rafz/package.json
index df6543da01..5a2f30780d 100644
--- a/packages/rafz/package.json
+++ b/packages/rafz/package.json
@@ -1,6 +1,6 @@
{
"name": "@react-spring/rafz",
- "version": "10.0.2",
+ "version": "10.0.3-beta.0",
"description": "react-spring's fork of rafz one frameloop to rule them all",
"module": "./dist/react-spring_rafz.legacy-esm.js",
"main": "./dist/cjs/index.js",
diff --git a/packages/react-spring/package.json b/packages/react-spring/package.json
index 60dc1b864e..b35d6d8636 100644
--- a/packages/react-spring/package.json
+++ b/packages/react-spring/package.json
@@ -1,6 +1,6 @@
{
"name": "react-spring",
- "version": "10.0.1",
+ "version": "10.0.2-beta.0",
"module": "./dist/react-spring.legacy-esm.js",
"main": "./dist/cjs/index.js",
"types": "./dist/react-spring.modern.d.mts",
@@ -44,12 +44,12 @@
"Josh Ellis (https://github.com/joshuaellis)"
],
"dependencies": {
- "@react-spring/core": "~10.0.1",
- "@react-spring/konva": "~10.0.1",
- "@react-spring/native": "~10.0.1",
- "@react-spring/three": "~10.0.1",
- "@react-spring/web": "~10.0.1",
- "@react-spring/zdog": "~10.0.1"
+ "@react-spring/core": "~10.0.3-beta.0",
+ "@react-spring/konva": "~10.0.3-beta.0",
+ "@react-spring/native": "~10.0.3-beta.0",
+ "@react-spring/three": "~10.0.3-beta.0",
+ "@react-spring/web": "~10.0.3-beta.0",
+ "@react-spring/zdog": "~10.0.3-beta.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
diff --git a/packages/shared/package.json b/packages/shared/package.json
index f27f66b5af..ffd36276f3 100644
--- a/packages/shared/package.json
+++ b/packages/shared/package.json
@@ -1,6 +1,6 @@
{
"name": "@react-spring/shared",
- "version": "10.0.2",
+ "version": "10.0.3-beta.0",
"description": "Globals and shared modules",
"module": "./dist/react-spring_shared.legacy-esm.js",
"main": "./dist/cjs/index.js",
@@ -45,8 +45,8 @@
"Josh Ellis (https://github.com/joshuaellis)"
],
"dependencies": {
- "@react-spring/rafz": "~10.0.2",
- "@react-spring/types": "~10.0.2"
+ "@react-spring/rafz": "~10.0.3-beta.0",
+ "@react-spring/types": "~10.0.3-beta.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"
diff --git a/packages/types/package.json b/packages/types/package.json
index 77f4ba0d7e..8469e13ba5 100644
--- a/packages/types/package.json
+++ b/packages/types/package.json
@@ -1,6 +1,6 @@
{
"name": "@react-spring/types",
- "version": "10.0.2",
+ "version": "10.0.3-beta.0",
"description": "Internal package with TypeScript stuff",
"module": "./dist/react-spring_types.legacy-esm.js",
"main": "./dist/cjs/index.js",
diff --git a/targets/konva/package.json b/targets/konva/package.json
index 84dd97545d..455f3583c7 100644
--- a/targets/konva/package.json
+++ b/targets/konva/package.json
@@ -1,6 +1,6 @@
{
"name": "@react-spring/konva",
- "version": "10.0.2",
+ "version": "10.0.3-beta.0",
"module": "./dist/react-spring_konva.legacy-esm.js",
"main": "./dist/cjs/index.js",
"types": "./dist/react-spring_konva.modern.d.mts",
@@ -44,10 +44,10 @@
"Josh Ellis (https://github.com/joshuaellis)"
],
"dependencies": {
- "@react-spring/animated": "~10.0.2",
- "@react-spring/core": "~10.0.2",
- "@react-spring/shared": "~10.0.2",
- "@react-spring/types": "~10.0.2"
+ "@react-spring/animated": "~10.0.3-beta.0",
+ "@react-spring/core": "~10.0.3-beta.0",
+ "@react-spring/shared": "~10.0.3-beta.0",
+ "@react-spring/types": "~10.0.3-beta.0"
},
"peerDependencies": {
"konva": ">=2.6",
diff --git a/targets/native/package.json b/targets/native/package.json
index fcac1f56f3..b32c3af96e 100644
--- a/targets/native/package.json
+++ b/targets/native/package.json
@@ -1,6 +1,6 @@
{
"name": "@react-spring/native",
- "version": "10.0.2",
+ "version": "10.0.3-beta.0",
"module": "./dist/react-spring_native.legacy-esm.js",
"main": "./dist/cjs/index.js",
"types": "./dist/react-spring_native.modern.d.mts",
@@ -38,10 +38,10 @@
"Josh Ellis (https://github.com/joshuaellis)"
],
"dependencies": {
- "@react-spring/animated": "~10.0.2",
- "@react-spring/core": "~10.0.2",
- "@react-spring/shared": "~10.0.2",
- "@react-spring/types": "~10.0.2"
+ "@react-spring/animated": "~10.0.3-beta.0",
+ "@react-spring/core": "~10.0.3-beta.0",
+ "@react-spring/shared": "~10.0.3-beta.0",
+ "@react-spring/types": "~10.0.3-beta.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
diff --git a/targets/three/package.json b/targets/three/package.json
index 9f3fbc4a72..2ee77c0a4b 100644
--- a/targets/three/package.json
+++ b/targets/three/package.json
@@ -1,6 +1,6 @@
{
"name": "@react-spring/three",
- "version": "10.0.2",
+ "version": "10.0.3-beta.0",
"module": "./dist/react-spring_three.legacy-esm.js",
"main": "./dist/cjs/index.js",
"types": "./dist/react-spring_three.modern.d.mts",
@@ -44,10 +44,10 @@
"Josh Ellis (https://github.com/joshuaellis)"
],
"dependencies": {
- "@react-spring/animated": "~10.0.2",
- "@react-spring/core": "~10.0.2",
- "@react-spring/shared": "~10.0.2",
- "@react-spring/types": "~10.0.2"
+ "@react-spring/animated": "~10.0.3-beta.0",
+ "@react-spring/core": "~10.0.3-beta.0",
+ "@react-spring/shared": "~10.0.3-beta.0",
+ "@react-spring/types": "~10.0.3-beta.0"
},
"peerDependencies": {
"@react-three/fiber": ">=6.0",
diff --git a/targets/web/package.json b/targets/web/package.json
index 8d63a3015a..43501f1993 100644
--- a/targets/web/package.json
+++ b/targets/web/package.json
@@ -1,6 +1,6 @@
{
"name": "@react-spring/web",
- "version": "10.0.2",
+ "version": "10.0.3-beta.0",
"module": "./dist/react-spring_web.legacy-esm.js",
"main": "./dist/cjs/index.js",
"types": "./dist/react-spring_web.modern.d.mts",
@@ -44,10 +44,10 @@
"Josh Ellis (https://github.com/joshuaellis)"
],
"dependencies": {
- "@react-spring/animated": "~10.0.2",
- "@react-spring/core": "~10.0.2",
- "@react-spring/shared": "~10.0.2",
- "@react-spring/types": "~10.0.2"
+ "@react-spring/animated": "~10.0.3-beta.0",
+ "@react-spring/core": "~10.0.3-beta.0",
+ "@react-spring/shared": "~10.0.3-beta.0",
+ "@react-spring/types": "~10.0.3-beta.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
diff --git a/targets/zdog/package.json b/targets/zdog/package.json
index f42f5eb698..81952c0048 100644
--- a/targets/zdog/package.json
+++ b/targets/zdog/package.json
@@ -1,6 +1,6 @@
{
"name": "@react-spring/zdog",
- "version": "10.0.2",
+ "version": "10.0.3-beta.0",
"module": "./dist/react-spring_zdog.legacy-esm.js",
"main": "./dist/cjs/index.js",
"types": "./dist/react-spring_zdog.modern.d.mts",
@@ -44,10 +44,10 @@
"Josh Ellis (https://github.com/joshuaellis)"
],
"dependencies": {
- "@react-spring/animated": "~10.0.2",
- "@react-spring/core": "~10.0.2",
- "@react-spring/shared": "~10.0.2",
- "@react-spring/types": "~10.0.2"
+ "@react-spring/animated": "~10.0.3-beta.0",
+ "@react-spring/core": "~10.0.3-beta.0",
+ "@react-spring/shared": "~10.0.3-beta.0",
+ "@react-spring/types": "~10.0.3-beta.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0 || ^18.0.0",
diff --git a/yarn.lock b/yarn.lock
index ca124ddfee..fc77062e10 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -4403,24 +4403,24 @@ __metadata:
languageName: node
linkType: hard
-"@react-spring/animated@workspace:packages/animated, @react-spring/animated@~10.0.2":
+"@react-spring/animated@workspace:packages/animated, @react-spring/animated@~10.0.3-beta.0":
version: 0.0.0-use.local
resolution: "@react-spring/animated@workspace:packages/animated"
dependencies:
- "@react-spring/shared": ~10.0.2
- "@react-spring/types": ~10.0.2
+ "@react-spring/shared": ~10.0.3-beta.0
+ "@react-spring/types": ~10.0.3-beta.0
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
languageName: unknown
linkType: soft
-"@react-spring/core@workspace:packages/core, @react-spring/core@~10.0.1, @react-spring/core@~10.0.2":
+"@react-spring/core@workspace:packages/core, @react-spring/core@~10.0.3-beta.0":
version: 0.0.0-use.local
resolution: "@react-spring/core@workspace:packages/core"
dependencies:
- "@react-spring/animated": ~10.0.2
- "@react-spring/shared": ~10.0.2
- "@react-spring/types": ~10.0.2
+ "@react-spring/animated": ~10.0.3-beta.0
+ "@react-spring/shared": ~10.0.3-beta.0
+ "@react-spring/types": ~10.0.3-beta.0
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
languageName: unknown
@@ -4515,14 +4515,14 @@ __metadata:
languageName: unknown
linkType: soft
-"@react-spring/konva@workspace:targets/konva, @react-spring/konva@~10.0.1":
+"@react-spring/konva@workspace:targets/konva, @react-spring/konva@~10.0.3-beta.0":
version: 0.0.0-use.local
resolution: "@react-spring/konva@workspace:targets/konva"
dependencies:
- "@react-spring/animated": ~10.0.2
- "@react-spring/core": ~10.0.2
- "@react-spring/shared": ~10.0.2
- "@react-spring/types": ~10.0.2
+ "@react-spring/animated": ~10.0.3-beta.0
+ "@react-spring/core": ~10.0.3-beta.0
+ "@react-spring/shared": ~10.0.3-beta.0
+ "@react-spring/types": ~10.0.3-beta.0
peerDependencies:
konva: ">=2.6"
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
@@ -4530,14 +4530,14 @@ __metadata:
languageName: unknown
linkType: soft
-"@react-spring/native@workspace:targets/native, @react-spring/native@~10.0.1":
+"@react-spring/native@workspace:targets/native, @react-spring/native@~10.0.3-beta.0":
version: 0.0.0-use.local
resolution: "@react-spring/native@workspace:targets/native"
dependencies:
- "@react-spring/animated": ~10.0.2
- "@react-spring/core": ~10.0.2
- "@react-spring/shared": ~10.0.2
- "@react-spring/types": ~10.0.2
+ "@react-spring/animated": ~10.0.3-beta.0
+ "@react-spring/core": ~10.0.3-beta.0
+ "@react-spring/shared": ~10.0.3-beta.0
+ "@react-spring/types": ~10.0.3-beta.0
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
react-native: ">=0.78"
@@ -4548,39 +4548,39 @@ __metadata:
version: 0.0.0-use.local
resolution: "@react-spring/parallax@workspace:packages/parallax"
dependencies:
- "@react-spring/shared": ~10.0.2
- "@react-spring/web": ~10.0.2
+ "@react-spring/shared": ~10.0.3-beta.0
+ "@react-spring/web": ~10.0.3-beta.0
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
languageName: unknown
linkType: soft
-"@react-spring/rafz@workspace:^, @react-spring/rafz@workspace:packages/rafz, @react-spring/rafz@~10.0.2":
+"@react-spring/rafz@workspace:^, @react-spring/rafz@workspace:packages/rafz, @react-spring/rafz@~10.0.3-beta.0":
version: 0.0.0-use.local
resolution: "@react-spring/rafz@workspace:packages/rafz"
languageName: unknown
linkType: soft
-"@react-spring/shared@workspace:packages/shared, @react-spring/shared@~10.0.2":
+"@react-spring/shared@workspace:packages/shared, @react-spring/shared@~10.0.3-beta.0":
version: 0.0.0-use.local
resolution: "@react-spring/shared@workspace:packages/shared"
dependencies:
- "@react-spring/rafz": ~10.0.2
- "@react-spring/types": ~10.0.2
+ "@react-spring/rafz": ~10.0.3-beta.0
+ "@react-spring/types": ~10.0.3-beta.0
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
languageName: unknown
linkType: soft
-"@react-spring/three@workspace:targets/three, @react-spring/three@~10.0.1":
+"@react-spring/three@workspace:targets/three, @react-spring/three@~10.0.3-beta.0":
version: 0.0.0-use.local
resolution: "@react-spring/three@workspace:targets/three"
dependencies:
- "@react-spring/animated": ~10.0.2
- "@react-spring/core": ~10.0.2
- "@react-spring/shared": ~10.0.2
- "@react-spring/types": ~10.0.2
+ "@react-spring/animated": ~10.0.3-beta.0
+ "@react-spring/core": ~10.0.3-beta.0
+ "@react-spring/shared": ~10.0.3-beta.0
+ "@react-spring/types": ~10.0.3-beta.0
peerDependencies:
"@react-three/fiber": ">=6.0"
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
@@ -4588,34 +4588,34 @@ __metadata:
languageName: unknown
linkType: soft
-"@react-spring/types@workspace:packages/types, @react-spring/types@~10.0.2":
+"@react-spring/types@workspace:packages/types, @react-spring/types@~10.0.3-beta.0":
version: 0.0.0-use.local
resolution: "@react-spring/types@workspace:packages/types"
languageName: unknown
linkType: soft
-"@react-spring/web@workspace:^, @react-spring/web@workspace:targets/web, @react-spring/web@~10.0.1, @react-spring/web@~10.0.2":
+"@react-spring/web@workspace:^, @react-spring/web@workspace:targets/web, @react-spring/web@~10.0.3-beta.0":
version: 0.0.0-use.local
resolution: "@react-spring/web@workspace:targets/web"
dependencies:
- "@react-spring/animated": ~10.0.2
- "@react-spring/core": ~10.0.2
- "@react-spring/shared": ~10.0.2
- "@react-spring/types": ~10.0.2
+ "@react-spring/animated": ~10.0.3-beta.0
+ "@react-spring/core": ~10.0.3-beta.0
+ "@react-spring/shared": ~10.0.3-beta.0
+ "@react-spring/types": ~10.0.3-beta.0
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
languageName: unknown
linkType: soft
-"@react-spring/zdog@workspace:targets/zdog, @react-spring/zdog@~10.0.1":
+"@react-spring/zdog@workspace:targets/zdog, @react-spring/zdog@~10.0.3-beta.0":
version: 0.0.0-use.local
resolution: "@react-spring/zdog@workspace:targets/zdog"
dependencies:
- "@react-spring/animated": ~10.0.2
- "@react-spring/core": ~10.0.2
- "@react-spring/shared": ~10.0.2
- "@react-spring/types": ~10.0.2
+ "@react-spring/animated": ~10.0.3-beta.0
+ "@react-spring/core": ~10.0.3-beta.0
+ "@react-spring/shared": ~10.0.3-beta.0
+ "@react-spring/types": ~10.0.3-beta.0
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
@@ -16701,12 +16701,12 @@ __metadata:
version: 0.0.0-use.local
resolution: "react-spring@workspace:packages/react-spring"
dependencies:
- "@react-spring/core": ~10.0.1
- "@react-spring/konva": ~10.0.1
- "@react-spring/native": ~10.0.1
- "@react-spring/three": ~10.0.1
- "@react-spring/web": ~10.0.1
- "@react-spring/zdog": ~10.0.1
+ "@react-spring/core": ~10.0.3-beta.0
+ "@react-spring/konva": ~10.0.3-beta.0
+ "@react-spring/native": ~10.0.3-beta.0
+ "@react-spring/three": ~10.0.3-beta.0
+ "@react-spring/web": ~10.0.3-beta.0
+ "@react-spring/zdog": ~10.0.3-beta.0
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0