diff --git a/package.json b/package.json
index 3dc634f8f..b88779def 100644
--- a/package.json
+++ b/package.json
@@ -54,7 +54,7 @@
"@radix-ui/react-dialog": "^1.0.4",
"@radix-ui/react-slider": "^1.1.2",
"@radix-ui/react-visually-hidden": "^1.0.3",
- "@react-spring/web": "^9.4.4",
+ "@react-spring/web": "^10.0.0",
"@sentry/react": "^8.0.0",
"@sentry/vite-plugin": "^3.0.0",
"@stylistic/eslint-plugin": "^3.0.0",
@@ -70,8 +70,8 @@
"@types/node": "^22.0.0",
"@types/pako": "^2.0.3",
"@types/qrcode": "^1.5.5",
- "@types/react": "^18.3.0",
- "@types/react-dom": "^18.3.0",
+ "@types/react": "^19.0.0",
+ "@types/react-dom": "^19.0.0",
"@types/sdp-transform": "^2.4.5",
"@types/uuid": "10",
"@typescript-eslint/eslint-plugin": "^8.31.0",
@@ -83,6 +83,7 @@
"@vitest/coverage-v8": "^3.0.0",
"babel-plugin-transform-vite-meta-env": "^1.0.3",
"classnames": "^2.3.1",
+ "copy-to-clipboard": "^3.3.3",
"eslint": "^8.14.0",
"eslint-config-google": "^0.14.0",
"eslint-config-prettier": "^10.0.0",
@@ -113,11 +114,10 @@
"posthog-js": "1.160.3",
"prettier": "^3.0.0",
"qrcode": "^1.5.4",
- "react": "18",
- "react-dom": "18",
+ "react": "19",
+ "react-dom": "19",
"react-i18next": "^15.0.0",
"react-router-dom": "^7.0.0",
- "react-use-clipboard": "^1.0.7",
"react-use-measure": "^2.1.1",
"rxjs": "^7.8.1",
"sass": "^1.42.1",
diff --git a/src/__snapshots__/Modal.test.tsx.snap b/src/__snapshots__/Modal.test.tsx.snap
index 8262eb9b8..92d837d1c 100644
--- a/src/__snapshots__/Modal.test.tsx.snap
+++ b/src/__snapshots__/Modal.test.tsx.snap
@@ -2,10 +2,10 @@
exports[`the content is rendered when the modal is open 1`] = `
My modal
@@ -36,7 +36,7 @@ exports[`the content is rendered when the modal is open 1`] = `
exports[`the modal renders as a drawer in mobile viewports 1`] = `
My modal
diff --git a/src/__snapshots__/Toast.test.tsx.snap b/src/__snapshots__/Toast.test.tsx.snap
index 60e8d41bb..5807fb8b4 100644
--- a/src/__snapshots__/Toast.test.tsx.snap
+++ b/src/__snapshots__/Toast.test.tsx.snap
@@ -2,10 +2,10 @@
exports[`Toast > renders 1`] = `