@@ -17,17 +17,12 @@ import {getWorkInProgressTransitions} from './ReactFiberWorkLoop.new';
1717
1818export type SuspenseInfo = { name : string | null } ;
1919
20- export type MarkerTransition = {
21- transition : Transition ,
22- name : string ,
23- } ;
24-
2520export type PendingTransitionCallbacks = {
2621 transitionStart : Array < Transition > | null ,
27- transitionProgress : Map < Transition , PendingSuspenseBoundaries > | null ,
22+ transitionProgress : Map < Transition , PendingBoundaries > | null ,
2823 transitionComplete : Array < Transition > | null ,
2924 markerProgress : Map < string , TracingMarkerInstance> | null ,
30- markerComplete : Array < MarkerTransition > | null ,
25+ markerComplete : Map < string , Set < Transition > > | null ,
3126} ;
3227
3328export type Transition = {
@@ -42,12 +37,12 @@ export type BatchConfigTransition = {
4237} ;
4338
4439export type TracingMarkerInstance = { |
45- pendingSuspenseBoundaries : PendingSuspenseBoundaries | null ,
40+ pendingBoundaries : PendingBoundaries | null ,
4641 transitions : Set < Transition > | null ,
4742 name ?: string ,
4843| } ;
4944
50- export type PendingSuspenseBoundaries = Map < OffscreenInstance , SuspenseInfo > ;
45+ export type PendingBoundaries = Map < OffscreenInstance , SuspenseInfo > ;
5146
5247export function processTransitionCallbacks (
5348 pendingTransitions : PendingTransitionCallbacks ,
@@ -57,12 +52,11 @@ export function processTransitionCallbacks(
5752 if ( enableTransitionTracing ) {
5853 if ( pendingTransitions !== null ) {
5954 const transitionStart = pendingTransitions . transitionStart ;
60- if ( transitionStart !== null ) {
61- transitionStart . forEach ( transition => {
62- if ( callbacks . onTransitionStart != null ) {
63- callbacks . onTransitionStart ( transition . name , transition . startTime ) ;
64- }
65- } ) ;
55+ const onTransitionStart = callbacks . onTransitionStart ;
56+ if ( transitionStart !== null && onTransitionStart != null ) {
57+ transitionStart . forEach ( transition =>
58+ onTransitionStart ( transition . name , transition . startTime ) ,
59+ ) ;
6660 }
6761
6862 const markerProgress = pendingTransitions . markerProgress ;
@@ -71,8 +65,8 @@ export function processTransitionCallbacks(
7165 markerProgress . forEach ( ( markerInstance , markerName ) => {
7266 if ( markerInstance . transitions !== null ) {
7367 const pending =
74- markerInstance . pendingSuspenseBoundaries !== null
75- ? Array . from ( markerInstance . pendingSuspenseBoundaries . values ( ) )
68+ markerInstance . pendingBoundaries !== null
69+ ? Array . from ( markerInstance . pendingBoundaries . values ( ) )
7670 : [ ] ;
7771 markerInstance . transitions . forEach ( transition => {
7872 onMarkerProgress (
@@ -88,16 +82,17 @@ export function processTransitionCallbacks(
8882 }
8983
9084 const markerComplete = pendingTransitions . markerComplete ;
91- if ( markerComplete !== null ) {
92- markerComplete . forEach ( marker => {
93- if ( callbacks . onMarkerComplete != null ) {
94- callbacks . onMarkerComplete (
95- marker . transition . name ,
96- marker . name ,
97- marker . transition . startTime ,
85+ const onMarkerComplete = callbacks . onMarkerComplete ;
86+ if ( markerComplete !== null && onMarkerComplete != null ) {
87+ markerComplete . forEach ( ( transitions , markerName ) => {
88+ transitions . forEach ( transition => {
89+ onMarkerComplete (
90+ transition . name ,
91+ markerName ,
92+ transition . startTime ,
9893 endTime ,
9994 ) ;
100- }
95+ } ) ;
10196 } ) ;
10297 }
10398
@@ -115,16 +110,11 @@ export function processTransitionCallbacks(
115110 }
116111
117112 const transitionComplete = pendingTransitions . transitionComplete ;
118- if ( transitionComplete !== null ) {
119- transitionComplete . forEach ( transition => {
120- if ( callbacks . onTransitionComplete != null ) {
121- callbacks . onTransitionComplete (
122- transition . name ,
123- transition . startTime ,
124- endTime ,
125- ) ;
126- }
127- } ) ;
113+ const onTransitionComplete = callbacks . onTransitionComplete ;
114+ if ( transitionComplete !== null && onTransitionComplete != null ) {
115+ transitionComplete . forEach ( transition =>
116+ onTransitionComplete ( transition . name , transition . startTime , endTime ) ,
117+ ) ;
128118 }
129119 }
130120 }
@@ -157,7 +147,7 @@ export function pushRootMarkerInstance(workInProgress: Fiber): void {
157147 if ( ! root . incompleteTransitions . has ( transition ) ) {
158148 const markerInstance : TracingMarkerInstance = {
159149 transitions : new Set ( [ transition ] ) ,
160- pendingSuspenseBoundaries : null ,
150+ pendingBoundaries : null ,
161151 } ;
162152 root . incompleteTransitions . set ( transition , markerInstance ) ;
163153 }
0 commit comments