Commit 12a738f
authored
[Transition Tracing] Add Support for Multiple Transitions on Root (#24732)
We can think of transitions on the root as a bunch of tracing markers. Therefore, we can map each transition to a map of pending suspense boundaries. When a transition's pending suspense boundary map is empty, we know that it's complete. This PR:
* Combines the `pendingSuspenseBoundaries` and `transitions` into one `incompleteTransitions` object. This object is a map from a `transition` to a map of `pendingSuspenseBoundaries`
* Refactored code to make it so that every transition has its own `pendingSuspenseBoundaries` map rather than sharing just one.
* Moves the transition complete callback to the root. Alternatively, we can also keep a map of pendingSuspenseBoundaries to transitions on the Offscreen marker, but it's simpler to just call the transition complete callback on the root instead. We also only do this if there are transitions pending, so it shouldn't make too big of a difference1 parent 72ebc70 commit 12a738f
File tree
10 files changed
+394
-198
lines changed- packages/react-reconciler/src
- __tests__
10 files changed
+394
-198
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
717 | 717 | | |
718 | 718 | | |
719 | 719 | | |
| 720 | + | |
| 721 | + | |
720 | 722 | | |
721 | 723 | | |
722 | 724 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
717 | 717 | | |
718 | 718 | | |
719 | 719 | | |
| 720 | + | |
| 721 | + | |
720 | 722 | | |
721 | 723 | | |
722 | 724 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
675 | 675 | | |
676 | 676 | | |
677 | 677 | | |
678 | | - | |
679 | 678 | | |
680 | 679 | | |
681 | 680 | | |
| |||
709 | 708 | | |
710 | 709 | | |
711 | 710 | | |
712 | | - | |
713 | 711 | | |
714 | 712 | | |
715 | 713 | | |
| |||
745 | 743 | | |
746 | 744 | | |
747 | 745 | | |
748 | | - | |
749 | 746 | | |
750 | 747 | | |
751 | 748 | | |
| |||
780 | 777 | | |
781 | 778 | | |
782 | 779 | | |
783 | | - | |
784 | | - | |
785 | | - | |
786 | | - | |
| 780 | + | |
787 | 781 | | |
788 | 782 | | |
789 | | - | |
| 783 | + | |
790 | 784 | | |
791 | 785 | | |
792 | 786 | | |
| |||
1323 | 1317 | | |
1324 | 1318 | | |
1325 | 1319 | | |
1326 | | - | |
1327 | | - | |
| 1320 | + | |
1328 | 1321 | | |
1329 | 1322 | | |
1330 | 1323 | | |
| |||
1920 | 1913 | | |
1921 | 1914 | | |
1922 | 1915 | | |
1923 | | - | |
1924 | 1916 | | |
1925 | 1917 | | |
1926 | 1918 | | |
| |||
1955 | 1947 | | |
1956 | 1948 | | |
1957 | 1949 | | |
1958 | | - | |
1959 | 1950 | | |
1960 | 1951 | | |
1961 | 1952 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
675 | 675 | | |
676 | 676 | | |
677 | 677 | | |
678 | | - | |
679 | 678 | | |
680 | 679 | | |
681 | 680 | | |
| |||
709 | 708 | | |
710 | 709 | | |
711 | 710 | | |
712 | | - | |
713 | 711 | | |
714 | 712 | | |
715 | 713 | | |
| |||
745 | 743 | | |
746 | 744 | | |
747 | 745 | | |
748 | | - | |
749 | 746 | | |
750 | 747 | | |
751 | 748 | | |
| |||
780 | 777 | | |
781 | 778 | | |
782 | 779 | | |
783 | | - | |
784 | | - | |
785 | | - | |
786 | | - | |
| 780 | + | |
787 | 781 | | |
788 | 782 | | |
789 | | - | |
| 783 | + | |
790 | 784 | | |
791 | 785 | | |
792 | 786 | | |
| |||
1323 | 1317 | | |
1324 | 1318 | | |
1325 | 1319 | | |
1326 | | - | |
1327 | | - | |
| 1320 | + | |
1328 | 1321 | | |
1329 | 1322 | | |
1330 | 1323 | | |
| |||
1920 | 1913 | | |
1921 | 1914 | | |
1922 | 1915 | | |
1923 | | - | |
1924 | 1916 | | |
1925 | 1917 | | |
1926 | 1918 | | |
| |||
1955 | 1947 | | |
1956 | 1948 | | |
1957 | 1949 | | |
1958 | | - | |
1959 | 1950 | | |
1960 | 1951 | | |
1961 | 1952 | | |
| |||
Lines changed: 81 additions & 80 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1066 | 1066 | | |
1067 | 1067 | | |
1068 | 1068 | | |
1069 | | - | |
1070 | | - | |
1071 | | - | |
1072 | | - | |
| 1069 | + | |
1073 | 1070 | | |
1074 | 1071 | | |
1075 | 1072 | | |
| |||
1094 | 1091 | | |
1095 | 1092 | | |
1096 | 1093 | | |
1097 | | - | |
1098 | | - | |
1099 | | - | |
1100 | | - | |
1101 | | - | |
1102 | | - | |
| 1094 | + | |
1103 | 1095 | | |
1104 | 1096 | | |
1105 | 1097 | | |
| |||
1112 | 1104 | | |
1113 | 1105 | | |
1114 | 1106 | | |
1115 | | - | |
1116 | | - | |
1117 | | - | |
1118 | | - | |
1119 | | - | |
| 1107 | + | |
| 1108 | + | |
| 1109 | + | |
| 1110 | + | |
| 1111 | + | |
| 1112 | + | |
1120 | 1113 | | |
1121 | 1114 | | |
1122 | | - | |
1123 | | - | |
1124 | | - | |
1125 | | - | |
1126 | | - | |
1127 | | - | |
1128 | | - | |
1129 | | - | |
1130 | | - | |
1131 | | - | |
1132 | | - | |
1133 | | - | |
1134 | | - | |
1135 | | - | |
1136 | | - | |
1137 | | - | |
1138 | | - | |
| 1115 | + | |
| 1116 | + | |
| 1117 | + | |
| 1118 | + | |
| 1119 | + | |
| 1120 | + | |
| 1121 | + | |
| 1122 | + | |
| 1123 | + | |
| 1124 | + | |
1139 | 1125 | | |
1140 | | - | |
1141 | | - | |
1142 | | - | |
1143 | | - | |
1144 | | - | |
1145 | | - | |
1146 | | - | |
| 1126 | + | |
1147 | 1127 | | |
1148 | 1128 | | |
1149 | 1129 | | |
| |||
2830 | 2810 | | |
2831 | 2811 | | |
2832 | 2812 | | |
2833 | | - | |
2834 | | - | |
2835 | | - | |
2836 | | - | |
2837 | | - | |
2838 | | - | |
2839 | | - | |
| 2813 | + | |
2840 | 2814 | | |
2841 | 2815 | | |
| 2816 | + | |
| 2817 | + | |
| 2818 | + | |
| 2819 | + | |
2842 | 2820 | | |
2843 | 2821 | | |
2844 | 2822 | | |
2845 | 2823 | | |
2846 | 2824 | | |
2847 | | - | |
| 2825 | + | |
| 2826 | + | |
| 2827 | + | |
| 2828 | + | |
2848 | 2829 | | |
2849 | 2830 | | |
2850 | | - | |
2851 | | - | |
2852 | | - | |
2853 | | - | |
2854 | | - | |
| 2831 | + | |
| 2832 | + | |
| 2833 | + | |
| 2834 | + | |
| 2835 | + | |
| 2836 | + | |
2855 | 2837 | | |
2856 | 2838 | | |
2857 | 2839 | | |
2858 | 2840 | | |
2859 | | - | |
2860 | | - | |
2861 | | - | |
2862 | | - | |
| 2841 | + | |
| 2842 | + | |
| 2843 | + | |
2863 | 2844 | | |
2864 | 2845 | | |
2865 | 2846 | | |
2866 | 2847 | | |
2867 | 2848 | | |
2868 | | - | |
2869 | | - | |
| 2849 | + | |
| 2850 | + | |
2870 | 2851 | | |
2871 | | - | |
| 2852 | + | |
2872 | 2853 | | |
2873 | 2854 | | |
2874 | 2855 | | |
| |||
2909 | 2890 | | |
2910 | 2891 | | |
2911 | 2892 | | |
| 2893 | + | |
2912 | 2894 | | |
2913 | 2895 | | |
2914 | | - | |
2915 | | - | |
2916 | | - | |
2917 | | - | |
2918 | | - | |
2919 | | - | |
2920 | | - | |
2921 | 2896 | | |
2922 | 2897 | | |
2923 | | - | |
2924 | | - | |
2925 | | - | |
2926 | | - | |
2927 | | - | |
2928 | | - | |
2929 | | - | |
2930 | | - | |
2931 | | - | |
2932 | | - | |
2933 | | - | |
| 2898 | + | |
| 2899 | + | |
| 2900 | + | |
| 2901 | + | |
| 2902 | + | |
| 2903 | + | |
| 2904 | + | |
| 2905 | + | |
| 2906 | + | |
| 2907 | + | |
| 2908 | + | |
| 2909 | + | |
| 2910 | + | |
| 2911 | + | |
| 2912 | + | |
| 2913 | + | |
| 2914 | + | |
2934 | 2915 | | |
| 2916 | + | |
2935 | 2917 | | |
| 2918 | + | |
| 2919 | + | |
| 2920 | + | |
2936 | 2921 | | |
| 2922 | + | |
| 2923 | + | |
| 2924 | + | |
| 2925 | + | |
| 2926 | + | |
| 2927 | + | |
| 2928 | + | |
| 2929 | + | |
| 2930 | + | |
| 2931 | + | |
| 2932 | + | |
2937 | 2933 | | |
2938 | 2934 | | |
2939 | 2935 | | |
2940 | | - | |
2941 | 2936 | | |
2942 | | - | |
| 2937 | + | |
2943 | 2938 | | |
2944 | | - | |
| 2939 | + | |
| 2940 | + | |
| 2941 | + | |
| 2942 | + | |
| 2943 | + | |
| 2944 | + | |
| 2945 | + | |
2945 | 2946 | | |
2946 | 2947 | | |
2947 | 2948 | | |
| |||
0 commit comments