From fddf263dbc66bfd9babd6531357c8751573a6883 Mon Sep 17 00:00:00 2001 From: Tim Yung Date: Fri, 19 Sep 2025 05:10:47 -0700 Subject: [PATCH] RN: Deprecate `InteractionManager` (#53832) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/53832 Deprecates `InteractionManager` by adding a warning when it is imported. Changelog: [General][Changed] - InteractionManager has been deprecated and no longer respects interaction handles. Instead, it is now recommended to avoid executing long-running JavaScript tasks by breaking them up into smaller tasks and scheduling them using `requestIdleCallback()`. Reviewed By: javache Differential Revision: D82704809 fbshipit-source-id: 99474cd7949abfe323c366b9ab8d8fc195578395 --- packages/react-native/index.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/react-native/index.js b/packages/react-native/index.js index c05f619f6ff..519f1c622b4 100644 --- a/packages/react-native/index.js +++ b/packages/react-native/index.js @@ -224,6 +224,12 @@ module.exports = { * @deprecated */ get InteractionManager() { + warnOnce( + 'interaction-manager-deprecated', + 'InteractionManager has been deprecated and will be removed in a ' + + 'future release. Please refactor long tasks into smaller ones, and ' + + " use 'requestIdleCallback' instead.", + ); return require('./Libraries/Interaction/InteractionManager').default; }, get Keyboard() {