MCPcopy Index your code
hub / github.com/caseywebdev/react-list / scheduleTaskForRootDuringMicrotask

Function scheduleTaskForRootDuringMicrotask

docs/index.js:14902–14970  ·  view source on GitHub ↗
(root, currentTime)

Source from the content-addressed store, hash-verified

14900 flushSyncWorkAcrossRoots_impl(syncTransitionLanes, !1);
14901}
14902function scheduleTaskForRootDuringMicrotask(root, currentTime) {
14903 for (
14904 var suspendedLanes = root.suspendedLanes,
14905 pingedLanes = root.pingedLanes,
14906 expirationTimes = root.expirationTimes,
14907 lanes = root.pendingLanes & -62914561;
14908 0 < lanes;
14909
14910 ) {
14911 var index$5 = 31 - clz32(lanes),
14912 lane = 1 << index$5,
14913 expirationTime = expirationTimes[index$5];
14914 if (-1 === expirationTime) {
14915 if (0 === (lane & suspendedLanes) || 0 !== (lane & pingedLanes))
14916 expirationTimes[index$5] = computeExpirationTime(lane, currentTime);
14917 } else expirationTime <= currentTime && (root.expiredLanes |= lane);
14918 lanes &= ~lane;
14919 }
14920 currentTime = workInProgressRoot;
14921 suspendedLanes = workInProgressRootRenderLanes;
14922 suspendedLanes = getNextLanes(
14923 root,
14924 root === currentTime ? suspendedLanes : 0
14925 );
14926 pingedLanes = root.callbackNode;
14927 if (
14928 0 === suspendedLanes ||
14929 (root === currentTime && 2 === workInProgressSuspendedReason) ||
14930 null !== root.cancelPendingCommit
14931 )
14932 return (
14933 null !== pingedLanes &&
14934 null !== pingedLanes &&
14935 cancelCallback$1(pingedLanes),
14936 (root.callbackNode = null),
14937 (root.callbackPriority = 0)
14938 );
14939 if (
14940 0 === (suspendedLanes & 3) ||
14941 checkIfRootIsPrerendering(root, suspendedLanes)
14942 ) {
14943 currentTime = suspendedLanes & -suspendedLanes;
14944 if (currentTime === root.callbackPriority) return currentTime;
14945 null !== pingedLanes && cancelCallback$1(pingedLanes);
14946 switch (lanesToEventPriority(suspendedLanes)) {
14947 case 2:
14948 case 8:
14949 suspendedLanes = UserBlockingPriority;
14950 break;
14951 case 32:
14952 suspendedLanes = NormalPriority$1;
14953 break;
14954 case 268435456:
14955 suspendedLanes = IdlePriority;
14956 break;
14957 default:
14958 suspendedLanes = NormalPriority$1;
14959 }

Calls 5

computeExpirationTimeFunction · 0.85
getNextLanesFunction · 0.85
lanesToEventPriorityFunction · 0.85
cancelCallbackFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…