@@ -17,16 +17,11 @@ import {getWorkInProgressTransitions} from './ReactFiberWorkLoop.old';
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 ,
29- markerComplete : Array < MarkerTransition > | null ,
24+ markerComplete : Map < string , Set < Transition > > | null ,
3025} ;
3126
3227export type Transition = {
@@ -41,11 +36,11 @@ export type BatchConfigTransition = {
4136} ;
4237
4338export type TracingMarkerInstance = { |
44- pendingSuspenseBoundaries : PendingSuspenseBoundaries | null ,
39+ pendingBoundaries : PendingBoundaries | null ,
4540 transitions : Set < Transition > | null ,
4641| } ;
4742
48- export type PendingSuspenseBoundaries = Map < OffscreenInstance , SuspenseInfo > ;
43+ export type PendingBoundaries = Map < OffscreenInstance , SuspenseInfo > ;
4944
5045export function processTransitionCallbacks (
5146 pendingTransitions : PendingTransitionCallbacks ,
@@ -55,25 +50,25 @@ export function processTransitionCallbacks(
5550 if ( enableTransitionTracing ) {
5651 if ( pendingTransitions !== null ) {
5752 const transitionStart = pendingTransitions . transitionStart ;
58- if ( transitionStart !== null ) {
59- transitionStart . forEach ( transition => {
60- if ( callbacks . onTransitionStart != null ) {
61- callbacks . onTransitionStart ( transition . name , transition . startTime ) ;
62- }
63- } ) ;
53+ const onTransitionStart = callbacks . onTransitionStart ;
54+ if ( transitionStart !== null && onTransitionStart != null ) {
55+ transitionStart . forEach ( transition =>
56+ onTransitionStart ( transition . name , transition . startTime ) ,
57+ ) ;
6458 }
6559
6660 const markerComplete = pendingTransitions . markerComplete ;
67- if ( markerComplete !== null ) {
68- markerComplete . forEach ( marker => {
69- if ( callbacks . onMarkerComplete != null ) {
70- callbacks . onMarkerComplete (
71- marker . transition . name ,
72- marker . name ,
73- marker . transition . startTime ,
61+ const onMarkerComplete = callbacks . onMarkerComplete ;
62+ if ( markerComplete !== null && onMarkerComplete != null ) {
63+ markerComplete . forEach ( ( transitions , markerName ) => {
64+ transitions . forEach ( transition => {
65+ onMarkerComplete (
66+ transition . name ,
67+ markerName ,
68+ transition . startTime ,
7469 endTime ,
7570 ) ;
76- }
71+ } ) ;
7772 } ) ;
7873 }
7974
@@ -91,16 +86,11 @@ export function processTransitionCallbacks(
9186 }
9287
9388 const transitionComplete = pendingTransitions . transitionComplete ;
94- if ( transitionComplete !== null ) {
95- transitionComplete . forEach ( transition => {
96- if ( callbacks . onTransitionComplete != null ) {
97- callbacks . onTransitionComplete (
98- transition . name ,
99- transition . startTime ,
100- endTime ,
101- ) ;
102- }
103- } ) ;
89+ const onTransitionComplete = callbacks . onTransitionComplete ;
90+ if ( transitionComplete !== null && onTransitionComplete != null ) {
91+ transitionComplete . forEach ( transition =>
92+ onTransitionComplete ( transition . name , transition . startTime , endTime ) ,
93+ ) ;
10494 }
10595 }
10696 }
@@ -133,7 +123,7 @@ export function pushRootMarkerInstance(workInProgress: Fiber): void {
133123 if ( ! root . incompleteTransitions . has ( transition ) ) {
134124 const markerInstance : TracingMarkerInstance = {
135125 transitions : new Set ( [ transition ] ) ,
136- pendingSuspenseBoundaries : null ,
126+ pendingBoundaries : null ,
137127 } ;
138128 root . incompleteTransitions . set ( transition , markerInstance ) ;
139129 }
0 commit comments