dillon1000/react
Commit
Browse files Prepare placeholders before timing out (#13092)
* Prepare placeholders before timing out While a tree is suspended, prepare for the timeout by pre-rendering the placeholder state. This simplifies the implementation a bit because every render now results in a completed tree. * Suspend inside an already timed out Placeholder A component should be able to suspend inside an already timed out placeholder. The time at which the placeholder committed is used as the start time for a subsequent suspend. So, if a placeholder times out after 3 seconds, and an inner placeholder has a threshold of 2 seconds, the inner placeholder will not time out until 5 seconds total have elapsed.
Changed paths17 files
First-parent comparisonpackages/react-art/src/ReactARTHostConfig.js ModifiedM packages/react-dom/src/client/ReactDOMHostConfig.js ModifiedM packages/react-native-renderer/src/ReactFabricHostConfig.js ModifiedM packages/react-native-renderer/src/ReactNativeHostConfig.js ModifiedM packages/react-noop-renderer/src/createReactNoop.js ModifiedM packages/react-reconciler/src/ReactFiberBeginWork.js ModifiedM packages/react-reconciler/src/ReactFiberCommitWork.js ModifiedM packages/react-reconciler/src/ReactFiberExpirationTime.js ModifiedM packages/react-reconciler/src/ReactFiberPendingPriority.js ModifiedM packages/react-reconciler/src/ReactFiberRoot.js ModifiedM packages/react-reconciler/src/ReactFiberScheduler.js ModifiedM packages/react-reconciler/src/ReactFiberUnwindWork.js ModifiedM packages/react-reconciler/src/__tests__/ReactIncrementalErrorHandling-test.internal.js ModifiedM packages/react-reconciler/src/__tests__/ReactSuspense-test.internal.js ModifiedM packages/react-reconciler/src/__tests__/__snapshots__/ReactIncrementalPerf-test.internal.js.snap ModifiedM packages/react-reconciler/src/forks/ReactFiberHostConfig.custom.js ModifiedM packages/react-test-renderer/src/ReactTestHostConfig.js ModifiedPatch
Files changed
Rendering syntax-highlighted changes…