diff --git a/packages/react-dom/src/__tests__/ReactComponentLifeCycle-test.js b/packages/react-dom/src/__tests__/ReactComponentLifeCycle-test.js index 4bea59a7b8..3108793c87 100644 --- a/packages/react-dom/src/__tests__/ReactComponentLifeCycle-test.js +++ b/packages/react-dom/src/__tests__/ReactComponentLifeCycle-test.js @@ -373,7 +373,7 @@ describe('ReactComponentLifeCycle', () => { expect(instance.updater.isMounted(instance)).toBe(false); }); - // @gate www && !disableLegacyMode + // @gate www && classic it('warns if legacy findDOMNode is used inside render', async () => { class Component extends React.Component { state = {isMounted: false}; diff --git a/packages/react-dom/src/__tests__/findDOMNodeFB-test.js b/packages/react-dom/src/__tests__/findDOMNodeFB-test.js index 76cb53beba..850ba8f181 100644 --- a/packages/react-dom/src/__tests__/findDOMNodeFB-test.js +++ b/packages/react-dom/src/__tests__/findDOMNodeFB-test.js @@ -14,12 +14,12 @@ const ReactDOM = require('react-dom'); const StrictMode = React.StrictMode; describe('findDOMNode', () => { - // @gate www && !disableLegacyMode + // @gate www && classic it('findDOMNode should return null if passed null', () => { expect(ReactDOM.findDOMNode(null)).toBe(null); }); - // @gate www && !disableLegacyMode + // @gate www && classic && !disableLegacyMode it('findDOMNode should find dom element', () => { class MyNode extends React.Component { render() { @@ -39,7 +39,7 @@ describe('findDOMNode', () => { expect(mySameDiv).toBe(myDiv); }); - // @gate www && !disableLegacyMode + // @gate www && classic && !disableLegacyMode it('findDOMNode should find dom element after an update from null', () => { function Bar({flag}) { if (flag) { @@ -66,14 +66,14 @@ describe('findDOMNode', () => { expect(b.tagName).toBe('SPAN'); }); - // @gate www && !disableLegacyMode + // @gate www && classic it('findDOMNode should reject random objects', () => { expect(function () { ReactDOM.findDOMNode({foo: 'bar'}); }).toThrowError('Argument appears to not be a ReactComponent. Keys: foo'); }); - // @gate www && !disableLegacyMode + // @gate www && classic && !disableLegacyMode it('findDOMNode should reject unmounted objects with render func', () => { class Foo extends React.Component { render() { @@ -90,7 +90,7 @@ describe('findDOMNode', () => { ); }); - // @gate www && !disableLegacyMode + // @gate www && classic && !disableLegacyMode it('findDOMNode should not throw an error when called within a component that is not mounted', () => { class Bar extends React.Component { UNSAFE_componentWillMount() { @@ -107,7 +107,7 @@ describe('findDOMNode', () => { }).not.toThrow(); }); - // @gate www && !disableLegacyMode + // @gate www && classic && !disableLegacyMode it('findDOMNode should warn if used to find a host component inside StrictMode', () => { let parent = undefined; let child = undefined; @@ -141,7 +141,7 @@ describe('findDOMNode', () => { expect(match).toBe(child); }); - // @gate www && !disableLegacyMode + // @gate www && classic && !disableLegacyMode it('findDOMNode should warn if passed a component that is inside StrictMode', () => { let parent = undefined; let child = undefined; diff --git a/packages/shared/forks/ReactFeatureFlags.test-renderer.www.js b/packages/shared/forks/ReactFeatureFlags.test-renderer.www.js index 8bb8df8736..2bd4e07989 100644 --- a/packages/shared/forks/ReactFeatureFlags.test-renderer.www.js +++ b/packages/shared/forks/ReactFeatureFlags.test-renderer.www.js @@ -84,7 +84,7 @@ export const disableStringRefs = false; export const enableFastJSX = false; export const enableReactTestRendererWarning = false; -export const disableLegacyMode = false; +export const disableLegacyMode = true; export const disableDefaultPropsExceptForClasses = false; export const enableAddPropertiesFastPath = false; diff --git a/packages/shared/forks/ReactFeatureFlags.www-dynamic.js b/packages/shared/forks/ReactFeatureFlags.www-dynamic.js index 7ad7c293f2..4ec863c7bb 100644 --- a/packages/shared/forks/ReactFeatureFlags.www-dynamic.js +++ b/packages/shared/forks/ReactFeatureFlags.www-dynamic.js @@ -32,6 +32,7 @@ export const retryLaneExpirationMs = 5000; export const syncLaneExpirationMs = 250; export const transitionLaneExpirationMs = 5000; export const enableAddPropertiesFastPath = __VARIANT__; +export const disableLegacyMode = __VARIANT__; // Enable this flag to help with concurrent mode debugging. // It logs information to the console about React scheduling, rendering, and commit phases. diff --git a/packages/shared/forks/ReactFeatureFlags.www.js b/packages/shared/forks/ReactFeatureFlags.www.js index 25064d60e9..9404b877f5 100644 --- a/packages/shared/forks/ReactFeatureFlags.www.js +++ b/packages/shared/forks/ReactFeatureFlags.www.js @@ -119,7 +119,8 @@ export const useModernStrictMode = true; // because JSX is an extremely hot path. export const disableStringRefs = false; -export const disableLegacyMode = __EXPERIMENTAL__; +export const disableLegacyMode: boolean = + __EXPERIMENTAL__ || dynamicFeatureFlags.disableLegacyMode; export const enableOwnerStacks = false; export const enableShallowPropDiffing = false;