react-reconciler 0.23.0 → 0.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build-info.json +4 -4
- package/cjs/react-reconciler-persistent.development.js +74 -51
- package/cjs/react-reconciler-persistent.production.min.js +13 -13
- package/cjs/react-reconciler-reflection.development.js +10 -8
- package/cjs/react-reconciler-reflection.production.min.js +1 -1
- package/cjs/react-reconciler.development.js +77 -57
- package/cjs/react-reconciler.production.min.js +13 -13
- package/package.json +2 -2
package/build-info.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"branch": "master",
|
|
3
|
-
"buildNumber": "
|
|
4
|
-
"checksum": "
|
|
5
|
-
"commit": "
|
|
3
|
+
"buildNumber": "59518",
|
|
4
|
+
"checksum": "6f449c4",
|
|
5
|
+
"commit": "b53ea6ca0",
|
|
6
6
|
"environment": "ci",
|
|
7
|
-
"reactVersion": "16.
|
|
7
|
+
"reactVersion": "16.11.0-b53ea6ca0"
|
|
8
8
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license React v0.
|
|
1
|
+
/** @license React v0.24.0
|
|
2
2
|
* react-reconciler-persistent.development.js
|
|
3
3
|
*
|
|
4
4
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
@@ -388,7 +388,6 @@ var ShouldCapture =
|
|
|
388
388
|
/* */
|
|
389
389
|
4096;
|
|
390
390
|
|
|
391
|
-
var debugRenderPhaseSideEffects = false;
|
|
392
391
|
var debugRenderPhaseSideEffectsForStrictMode = false;
|
|
393
392
|
var enableUserTimingAPI = true;
|
|
394
393
|
var warnAboutDeprecatedLifecycles = true;
|
|
@@ -413,6 +412,7 @@ var warnAboutDefaultPropsOnFunctionComponents = false;
|
|
|
413
412
|
var warnAboutStringRefs = false;
|
|
414
413
|
var disableLegacyContext = false;
|
|
415
414
|
var disableSchedulerTimeoutBasedOnReactExpirationTime = false;
|
|
415
|
+
|
|
416
416
|
// Only used in www builds.
|
|
417
417
|
|
|
418
418
|
// Flow magic to verify the exports of this file match the original version.
|
|
@@ -1736,7 +1736,7 @@ function findCurrentUnmaskedContext(fiber) {
|
|
|
1736
1736
|
}
|
|
1737
1737
|
}
|
|
1738
1738
|
|
|
1739
|
-
var
|
|
1739
|
+
var BlockingRoot = 1;
|
|
1740
1740
|
var ConcurrentRoot = 2;
|
|
1741
1741
|
|
|
1742
1742
|
// Intentionally not named imports because Rollup would use dynamic dispatch for
|
|
@@ -1920,10 +1920,10 @@ function flushSyncCallbackQueueImpl() {
|
|
|
1920
1920
|
}
|
|
1921
1921
|
|
|
1922
1922
|
var NoMode = 0;
|
|
1923
|
-
var StrictMode = 1; // TODO: Remove
|
|
1923
|
+
var StrictMode = 1; // TODO: Remove BlockingMode and ConcurrentMode by reading from the root
|
|
1924
1924
|
// tag instead
|
|
1925
1925
|
|
|
1926
|
-
var
|
|
1926
|
+
var BlockingMode = 2;
|
|
1927
1927
|
var ConcurrentMode = 4;
|
|
1928
1928
|
var ProfileMode = 8;
|
|
1929
1929
|
|
|
@@ -3349,7 +3349,7 @@ function getStateFromUpdate(workInProgress, queue, update, prevState, nextProps,
|
|
|
3349
3349
|
{
|
|
3350
3350
|
enterDisallowedContextReadInDEV();
|
|
3351
3351
|
|
|
3352
|
-
if (
|
|
3352
|
+
if (debugRenderPhaseSideEffectsForStrictMode && workInProgress.mode & StrictMode) {
|
|
3353
3353
|
payload.call(instance, prevState, nextProps);
|
|
3354
3354
|
}
|
|
3355
3355
|
}
|
|
@@ -3383,7 +3383,7 @@ function getStateFromUpdate(workInProgress, queue, update, prevState, nextProps,
|
|
|
3383
3383
|
{
|
|
3384
3384
|
enterDisallowedContextReadInDEV();
|
|
3385
3385
|
|
|
3386
|
-
if (
|
|
3386
|
+
if (debugRenderPhaseSideEffectsForStrictMode && workInProgress.mode & StrictMode) {
|
|
3387
3387
|
_payload.call(instance, prevState, nextProps);
|
|
3388
3388
|
}
|
|
3389
3389
|
}
|
|
@@ -3696,7 +3696,7 @@ function applyDerivedStateFromProps(workInProgress, ctor, getDerivedStateFromPro
|
|
|
3696
3696
|
var prevState = workInProgress.memoizedState;
|
|
3697
3697
|
|
|
3698
3698
|
{
|
|
3699
|
-
if (
|
|
3699
|
+
if (debugRenderPhaseSideEffectsForStrictMode && workInProgress.mode & StrictMode) {
|
|
3700
3700
|
// Invoke the function an extra time to help detect side-effects.
|
|
3701
3701
|
getDerivedStateFromProps(nextProps, prevState);
|
|
3702
3702
|
}
|
|
@@ -3943,7 +3943,7 @@ function constructClassInstance(workInProgress, ctor, props, renderExpirationTim
|
|
|
3943
3943
|
|
|
3944
3944
|
|
|
3945
3945
|
{
|
|
3946
|
-
if (
|
|
3946
|
+
if (debugRenderPhaseSideEffectsForStrictMode && workInProgress.mode & StrictMode) {
|
|
3947
3947
|
new ctor(props, context); // eslint-disable-line no-new
|
|
3948
3948
|
}
|
|
3949
3949
|
}
|
|
@@ -7889,7 +7889,7 @@ function updateForwardRef(current$$1, workInProgress, Component, nextProps, rend
|
|
|
7889
7889
|
setCurrentPhase('render');
|
|
7890
7890
|
nextChildren = renderWithHooks(current$$1, workInProgress, render, nextProps, ref, renderExpirationTime);
|
|
7891
7891
|
|
|
7892
|
-
if (
|
|
7892
|
+
if (debugRenderPhaseSideEffectsForStrictMode && workInProgress.mode & StrictMode) {
|
|
7893
7893
|
// Only double-render components with Hooks
|
|
7894
7894
|
if (workInProgress.memoizedState !== null) {
|
|
7895
7895
|
nextChildren = renderWithHooks(current$$1, workInProgress, render, nextProps, ref, renderExpirationTime);
|
|
@@ -8093,7 +8093,7 @@ function updateFunctionComponent(current$$1, workInProgress, Component, nextProp
|
|
|
8093
8093
|
setCurrentPhase('render');
|
|
8094
8094
|
nextChildren = renderWithHooks(current$$1, workInProgress, Component, nextProps, context, renderExpirationTime);
|
|
8095
8095
|
|
|
8096
|
-
if (
|
|
8096
|
+
if (debugRenderPhaseSideEffectsForStrictMode && workInProgress.mode & StrictMode) {
|
|
8097
8097
|
// Only double-render components with Hooks
|
|
8098
8098
|
if (workInProgress.memoizedState !== null) {
|
|
8099
8099
|
nextChildren = renderWithHooks(current$$1, workInProgress, Component, nextProps, context, renderExpirationTime);
|
|
@@ -8216,7 +8216,7 @@ function finishClassComponent(current$$1, workInProgress, Component, shouldUpdat
|
|
|
8216
8216
|
setCurrentPhase('render');
|
|
8217
8217
|
nextChildren = instance.render();
|
|
8218
8218
|
|
|
8219
|
-
if (
|
|
8219
|
+
if (debugRenderPhaseSideEffectsForStrictMode && workInProgress.mode & StrictMode) {
|
|
8220
8220
|
instance.render();
|
|
8221
8221
|
}
|
|
8222
8222
|
|
|
@@ -8589,7 +8589,7 @@ function mountIndeterminateComponent(_current, workInProgress, Component, render
|
|
|
8589
8589
|
warningWithoutStack$1(false, '%s uses the legacy contextTypes API which is no longer supported. ' + 'Use React.createContext() with React.useContext() instead.', getComponentName(Component) || 'Unknown');
|
|
8590
8590
|
}
|
|
8591
8591
|
|
|
8592
|
-
if (
|
|
8592
|
+
if (debugRenderPhaseSideEffectsForStrictMode && workInProgress.mode & StrictMode) {
|
|
8593
8593
|
// Only double-render components with Hooks
|
|
8594
8594
|
if (workInProgress.memoizedState !== null) {
|
|
8595
8595
|
value = renderWithHooks(null, workInProgress, Component, props, context, renderExpirationTime);
|
|
@@ -8765,8 +8765,8 @@ function updateSuspenseComponent(current$$1, workInProgress, renderExpirationTim
|
|
|
8765
8765
|
var primaryChildFragment = createFiberFromFragment(null, mode, NoWork, null);
|
|
8766
8766
|
primaryChildFragment.return = workInProgress;
|
|
8767
8767
|
|
|
8768
|
-
if ((workInProgress.mode &
|
|
8769
|
-
// Outside of
|
|
8768
|
+
if ((workInProgress.mode & BlockingMode) === NoMode) {
|
|
8769
|
+
// Outside of blocking mode, we commit the effects from the
|
|
8770
8770
|
// partially completed, timed-out tree, too.
|
|
8771
8771
|
var progressedState = workInProgress.memoizedState;
|
|
8772
8772
|
var progressedPrimaryChild = progressedState !== null ? workInProgress.child.child : workInProgress.child;
|
|
@@ -8829,8 +8829,8 @@ function updateSuspenseComponent(current$$1, workInProgress, renderExpirationTim
|
|
|
8829
8829
|
|
|
8830
8830
|
_primaryChildFragment.child = null;
|
|
8831
8831
|
|
|
8832
|
-
if ((workInProgress.mode &
|
|
8833
|
-
// Outside of
|
|
8832
|
+
if ((workInProgress.mode & BlockingMode) === NoMode) {
|
|
8833
|
+
// Outside of blocking mode, we commit the effects from the
|
|
8834
8834
|
// partially completed, timed-out tree, too.
|
|
8835
8835
|
var _progressedChild = _primaryChildFragment.child = workInProgress.child;
|
|
8836
8836
|
|
|
@@ -8889,8 +8889,8 @@ function updateSuspenseComponent(current$$1, workInProgress, renderExpirationTim
|
|
|
8889
8889
|
|
|
8890
8890
|
_primaryChildFragment2.return = workInProgress;
|
|
8891
8891
|
|
|
8892
|
-
if ((workInProgress.mode &
|
|
8893
|
-
// Outside of
|
|
8892
|
+
if ((workInProgress.mode & BlockingMode) === NoMode) {
|
|
8893
|
+
// Outside of blocking mode, we commit the effects from the
|
|
8894
8894
|
// partially completed, timed-out tree, too.
|
|
8895
8895
|
var _progressedState = workInProgress.memoizedState;
|
|
8896
8896
|
|
|
@@ -8974,8 +8974,8 @@ function updateSuspenseComponent(current$$1, workInProgress, renderExpirationTim
|
|
|
8974
8974
|
// primaryChildFragment.effectTag |= Placement;
|
|
8975
8975
|
|
|
8976
8976
|
|
|
8977
|
-
if ((workInProgress.mode &
|
|
8978
|
-
// Outside of
|
|
8977
|
+
if ((workInProgress.mode & BlockingMode) === NoMode) {
|
|
8978
|
+
// Outside of blocking mode, we commit the effects from the
|
|
8979
8979
|
// partially completed, timed-out tree, too.
|
|
8980
8980
|
var _progressedState2 = workInProgress.memoizedState;
|
|
8981
8981
|
|
|
@@ -9044,9 +9044,9 @@ function retrySuspenseComponentWithoutHydrating(current$$1, workInProgress, rend
|
|
|
9044
9044
|
function mountDehydratedSuspenseComponent(workInProgress, suspenseInstance, renderExpirationTime) {
|
|
9045
9045
|
// During the first pass, we'll bail out and not drill into the children.
|
|
9046
9046
|
// Instead, we'll leave the content in place and try to hydrate it later.
|
|
9047
|
-
if ((workInProgress.mode &
|
|
9047
|
+
if ((workInProgress.mode & BlockingMode) === NoMode) {
|
|
9048
9048
|
{
|
|
9049
|
-
warning$1(false, 'Cannot hydrate Suspense in legacy mode. Switch from ' + 'ReactDOM.hydrate(element, container) to ' + 'ReactDOM.
|
|
9049
|
+
warning$1(false, 'Cannot hydrate Suspense in legacy mode. Switch from ' + 'ReactDOM.hydrate(element, container) to ' + 'ReactDOM.createBlockingRoot(container, { hydrate: true })' + '.render(element) or remove the Suspense components from ' + 'the server rendered components.');
|
|
9050
9050
|
}
|
|
9051
9051
|
|
|
9052
9052
|
workInProgress.expirationTime = Sync;
|
|
@@ -9088,7 +9088,7 @@ function updateDehydratedSuspenseComponent(current$$1, workInProgress, suspenseI
|
|
|
9088
9088
|
// but after we've already committed once.
|
|
9089
9089
|
warnIfHydrating();
|
|
9090
9090
|
|
|
9091
|
-
if ((workInProgress.mode &
|
|
9091
|
+
if ((workInProgress.mode & BlockingMode) === NoMode) {
|
|
9092
9092
|
return retrySuspenseComponentWithoutHydrating(current$$1, workInProgress, renderExpirationTime);
|
|
9093
9093
|
}
|
|
9094
9094
|
|
|
@@ -9410,8 +9410,8 @@ function updateSuspenseListComponent(current$$1, workInProgress, renderExpiratio
|
|
|
9410
9410
|
|
|
9411
9411
|
pushSuspenseContext(workInProgress, suspenseContext);
|
|
9412
9412
|
|
|
9413
|
-
if ((workInProgress.mode &
|
|
9414
|
-
// Outside of
|
|
9413
|
+
if ((workInProgress.mode & BlockingMode) === NoMode) {
|
|
9414
|
+
// Outside of blocking mode, SuspenseList doesn't work so we just
|
|
9415
9415
|
// use make it a noop by treating it as the default revealOrder.
|
|
9416
9416
|
workInProgress.memoizedState = null;
|
|
9417
9417
|
} else {
|
|
@@ -9783,7 +9783,12 @@ function beginWork$1(current$$1, workInProgress, renderExpirationTime) {
|
|
|
9783
9783
|
|
|
9784
9784
|
case Profiler:
|
|
9785
9785
|
if (enableProfilerTimer) {
|
|
9786
|
-
|
|
9786
|
+
// Profiler should only call onRender when one of its descendants actually rendered.
|
|
9787
|
+
var hasChildWork = workInProgress.childExpirationTime >= renderExpirationTime;
|
|
9788
|
+
|
|
9789
|
+
if (hasChildWork) {
|
|
9790
|
+
workInProgress.effectTag |= Update;
|
|
9791
|
+
}
|
|
9787
9792
|
}
|
|
9788
9793
|
|
|
9789
9794
|
break;
|
|
@@ -9839,10 +9844,11 @@ function beginWork$1(current$$1, workInProgress, renderExpirationTime) {
|
|
|
9839
9844
|
case SuspenseListComponent:
|
|
9840
9845
|
{
|
|
9841
9846
|
var didSuspendBefore = (current$$1.effectTag & DidCapture) !== NoEffect;
|
|
9842
|
-
|
|
9847
|
+
|
|
9848
|
+
var _hasChildWork = workInProgress.childExpirationTime >= renderExpirationTime;
|
|
9843
9849
|
|
|
9844
9850
|
if (didSuspendBefore) {
|
|
9845
|
-
if (
|
|
9851
|
+
if (_hasChildWork) {
|
|
9846
9852
|
// If something was in fallback state last time, and we have all the
|
|
9847
9853
|
// same children then we're still in progressive loading state.
|
|
9848
9854
|
// Something might get unblocked by state updates or retries in the
|
|
@@ -9871,7 +9877,7 @@ function beginWork$1(current$$1, workInProgress, renderExpirationTime) {
|
|
|
9871
9877
|
|
|
9872
9878
|
pushSuspenseContext(workInProgress, suspenseStackCursor.current);
|
|
9873
9879
|
|
|
9874
|
-
if (
|
|
9880
|
+
if (_hasChildWork) {
|
|
9875
9881
|
break;
|
|
9876
9882
|
} else {
|
|
9877
9883
|
// If none of the children had any work, that means that none of
|
|
@@ -10054,14 +10060,19 @@ function getSuspenseFallbackChild(fiber) {
|
|
|
10054
10060
|
return fiber.child.sibling.child;
|
|
10055
10061
|
}
|
|
10056
10062
|
|
|
10063
|
+
var emptyObject$1 = {};
|
|
10064
|
+
|
|
10057
10065
|
function collectScopedNodes(node, fn, scopedNodes) {
|
|
10058
10066
|
if (enableScopeAPI) {
|
|
10059
10067
|
if (node.tag === HostComponent) {
|
|
10060
10068
|
var _type = node.type,
|
|
10061
|
-
memoizedProps = node.memoizedProps
|
|
10069
|
+
memoizedProps = node.memoizedProps,
|
|
10070
|
+
stateNode = node.stateNode;
|
|
10062
10071
|
|
|
10063
|
-
|
|
10064
|
-
|
|
10072
|
+
var _instance = getPublicInstance(stateNode);
|
|
10073
|
+
|
|
10074
|
+
if (_instance !== null && fn(_type, memoizedProps || emptyObject$1, _instance) === true) {
|
|
10075
|
+
scopedNodes.push(_instance);
|
|
10065
10076
|
}
|
|
10066
10077
|
}
|
|
10067
10078
|
|
|
@@ -10081,10 +10092,13 @@ function collectFirstScopedNode(node, fn) {
|
|
|
10081
10092
|
if (enableScopeAPI) {
|
|
10082
10093
|
if (node.tag === HostComponent) {
|
|
10083
10094
|
var _type2 = node.type,
|
|
10084
|
-
memoizedProps = node.memoizedProps
|
|
10095
|
+
memoizedProps = node.memoizedProps,
|
|
10096
|
+
stateNode = node.stateNode;
|
|
10097
|
+
|
|
10098
|
+
var _instance2 = getPublicInstance(stateNode);
|
|
10085
10099
|
|
|
10086
|
-
if (fn(_type2, memoizedProps) === true) {
|
|
10087
|
-
return
|
|
10100
|
+
if (_instance2 !== null && fn(_type2, memoizedProps, _instance2) === true) {
|
|
10101
|
+
return _instance2;
|
|
10088
10102
|
}
|
|
10089
10103
|
}
|
|
10090
10104
|
|
|
@@ -10968,12 +10982,12 @@ function completeWork(current, workInProgress, renderExpirationTime) {
|
|
|
10968
10982
|
}
|
|
10969
10983
|
|
|
10970
10984
|
if (nextDidTimeout && !prevDidTimeout) {
|
|
10971
|
-
// If this subtreee is running in
|
|
10985
|
+
// If this subtreee is running in blocking mode we can suspend,
|
|
10972
10986
|
// otherwise we won't suspend.
|
|
10973
10987
|
// TODO: This will still suspend a synchronous tree if anything
|
|
10974
10988
|
// in the concurrent tree already suspended during this render.
|
|
10975
10989
|
// This is a known bug.
|
|
10976
|
-
if ((workInProgress.mode &
|
|
10990
|
+
if ((workInProgress.mode & BlockingMode) !== NoMode) {
|
|
10977
10991
|
// TODO: Move this back to throwException because this is too late
|
|
10978
10992
|
// if this is a large tree which is common for initial loads. We
|
|
10979
10993
|
// don't know if we should restart a render or not until we get
|
|
@@ -11162,9 +11176,9 @@ function completeWork(current, workInProgress, renderExpirationTime) {
|
|
|
11162
11176
|
|
|
11163
11177
|
cutOffTailIfNeeded(renderState, true); // This might have been modified.
|
|
11164
11178
|
|
|
11165
|
-
if (renderState.tail === null && renderState.tailMode === 'hidden') {
|
|
11179
|
+
if (renderState.tail === null && renderState.tailMode === 'hidden' && !renderedTail.alternate) {
|
|
11166
11180
|
// We need to delete the row we just rendered.
|
|
11167
|
-
// Reset the effect list to what it
|
|
11181
|
+
// Reset the effect list to what it was before we rendered this
|
|
11168
11182
|
// child. The nested children have already appended themselves.
|
|
11169
11183
|
var lastEffect = workInProgress.lastEffect = renderState.lastEffect; // Remove any effects that were appended after this point.
|
|
11170
11184
|
|
|
@@ -13299,17 +13313,17 @@ function throwException(root, returnFiber, sourceFiber, value, renderExpirationT
|
|
|
13299
13313
|
_workInProgress.updateQueue = updateQueue;
|
|
13300
13314
|
} else {
|
|
13301
13315
|
thenables.add(thenable);
|
|
13302
|
-
} // If the boundary is outside of
|
|
13316
|
+
} // If the boundary is outside of blocking mode, we should *not*
|
|
13303
13317
|
// suspend the commit. Pretend as if the suspended component rendered
|
|
13304
13318
|
// null and keep rendering. In the commit phase, we'll schedule a
|
|
13305
13319
|
// subsequent synchronous update to re-render the Suspense.
|
|
13306
13320
|
//
|
|
13307
13321
|
// Note: It doesn't matter whether the component that suspended was
|
|
13308
|
-
// inside a
|
|
13322
|
+
// inside a blocking mode tree. If the Suspense is outside of it, we
|
|
13309
13323
|
// should *not* suspend the commit.
|
|
13310
13324
|
|
|
13311
13325
|
|
|
13312
|
-
if ((_workInProgress.mode &
|
|
13326
|
+
if ((_workInProgress.mode & BlockingMode) === NoMode) {
|
|
13313
13327
|
_workInProgress.effectTag |= DidCapture; // We're going to commit this fiber even though it didn't complete.
|
|
13314
13328
|
// But we shouldn't call any lifecycle methods or callbacks. Remove
|
|
13315
13329
|
// all lifecycle effect tags.
|
|
@@ -13556,7 +13570,7 @@ function getCurrentTime() {
|
|
|
13556
13570
|
function computeExpirationForFiber(currentTime, fiber, suspenseConfig) {
|
|
13557
13571
|
var mode = fiber.mode;
|
|
13558
13572
|
|
|
13559
|
-
if ((mode &
|
|
13573
|
+
if ((mode & BlockingMode) === NoMode) {
|
|
13560
13574
|
return Sync;
|
|
13561
13575
|
}
|
|
13562
13576
|
|
|
@@ -13657,7 +13671,7 @@ function scheduleUpdateOnFiber(fiber, expirationTime) {
|
|
|
13657
13671
|
// a batch. This is intentionally inside scheduleUpdateOnFiber instead of
|
|
13658
13672
|
// scheduleCallbackForFiber to preserve the ability to schedule a callback
|
|
13659
13673
|
// without immediately flushing it. We only do this for user-initiated
|
|
13660
|
-
// updates, to preserve historical behavior of
|
|
13674
|
+
// updates, to preserve historical behavior of legacy mode.
|
|
13661
13675
|
flushSyncCallbackQueue();
|
|
13662
13676
|
}
|
|
13663
13677
|
}
|
|
@@ -14879,7 +14893,16 @@ function commitRoot(root) {
|
|
|
14879
14893
|
}
|
|
14880
14894
|
|
|
14881
14895
|
function commitRootImpl(root, renderPriorityLevel) {
|
|
14882
|
-
|
|
14896
|
+
do {
|
|
14897
|
+
// `flushPassiveEffects` will call `flushSyncUpdateQueue` at the end, which
|
|
14898
|
+
// means `flushPassiveEffects` will sometimes result in additional
|
|
14899
|
+
// passive effects. So we need to keep flushing in a loop until there are
|
|
14900
|
+
// no more pending effects.
|
|
14901
|
+
// TODO: Might be better if `flushPassiveEffects` did not automatically
|
|
14902
|
+
// flush synchronous work at the end, to avoid factoring hazards like this.
|
|
14903
|
+
flushPassiveEffects();
|
|
14904
|
+
} while (rootWithPendingPassiveEffects !== null);
|
|
14905
|
+
|
|
14883
14906
|
flushRenderPhaseStrictModeWarningsInDEV();
|
|
14884
14907
|
|
|
14885
14908
|
if (!((executionContext & (RenderContext | CommitContext)) === NoContext)) {
|
|
@@ -15806,7 +15829,7 @@ var didWarnAboutUnmockedScheduler = false; // TODO Before we release concurrent
|
|
|
15806
15829
|
function warnIfUnmockedScheduler(fiber) {
|
|
15807
15830
|
{
|
|
15808
15831
|
if (didWarnAboutUnmockedScheduler === false && Scheduler.unstable_flushAllWithoutAsserting === undefined) {
|
|
15809
|
-
if (fiber.mode &
|
|
15832
|
+
if (fiber.mode & BlockingMode || fiber.mode & ConcurrentMode) {
|
|
15810
15833
|
didWarnAboutUnmockedScheduler = true;
|
|
15811
15834
|
warningWithoutStack$1(false, 'In Concurrent or Sync modes, the "scheduler" module needs to be mocked ' + 'to guarantee consistent behaviour across tests and browsers. ' + 'For example, with jest: \n' + "jest.mock('scheduler', () => require('scheduler/unstable_mock'));\n\n" + 'For more info, visit https://fb.me/react-mock-scheduler');
|
|
15812
15835
|
} else if (warnAboutUnmockedScheduler === true) {
|
|
@@ -16449,9 +16472,9 @@ function createHostRootFiber(tag) {
|
|
|
16449
16472
|
var mode;
|
|
16450
16473
|
|
|
16451
16474
|
if (tag === ConcurrentRoot) {
|
|
16452
|
-
mode = ConcurrentMode |
|
|
16453
|
-
} else if (tag ===
|
|
16454
|
-
mode =
|
|
16475
|
+
mode = ConcurrentMode | BlockingMode | StrictMode;
|
|
16476
|
+
} else if (tag === BlockingRoot) {
|
|
16477
|
+
mode = BlockingMode | StrictMode;
|
|
16455
16478
|
} else {
|
|
16456
16479
|
mode = NoMode;
|
|
16457
16480
|
}
|
|
@@ -16493,7 +16516,7 @@ key, pendingProps, owner, mode, expirationTime) {
|
|
|
16493
16516
|
|
|
16494
16517
|
case REACT_CONCURRENT_MODE_TYPE:
|
|
16495
16518
|
fiberTag = Mode;
|
|
16496
|
-
mode |= ConcurrentMode |
|
|
16519
|
+
mode |= ConcurrentMode | BlockingMode | StrictMode;
|
|
16497
16520
|
break;
|
|
16498
16521
|
|
|
16499
16522
|
case REACT_STRICT_MODE_TYPE:
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license React v0.
|
|
1
|
+
/** @license React v0.24.0
|
|
2
2
|
* react-reconciler-persistent.production.min.js
|
|
3
3
|
*
|
|
4
4
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
@@ -25,7 +25,7 @@ function Ab(a){var b="";do{a:switch(a.tag){case 3:case 4:case 6:case 7:case 10:c
|
|
|
25
25
|
var Db={},A={current:Db},B={current:!1},Eb=Db;function Fb(a,b){var c=a.type.contextTypes;if(!c)return Db;var d=a.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===b)return d.__reactInternalMemoizedMaskedChildContext;var e={},f;for(f in c)e[f]=b[f];d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=b,a.__reactInternalMemoizedMaskedChildContext=e);return e}function C(a){a=a.childContextTypes;return null!==a&&void 0!==a}function Gb(a){y(B,a);y(A,a)}
|
|
26
26
|
function Hb(a){y(B,a);y(A,a)}function Ib(a,b,c){if(A.current!==Db)throw Error(n(168));z(A,b,a);z(B,c,a)}function Jb(a,b,c){var d=a.stateNode;a=b.childContextTypes;if("function"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in a))throw Error(n(108,ta(b)||"Unknown",e));return aa({},c,{},d)}function Kb(a){var b=a.stateNode;b=b&&b.__reactInternalMemoizedMergedChildContext||Db;Eb=A.current;z(A,b,a);z(B,B.current,a);return!0}
|
|
27
27
|
function Lb(a,b,c){var d=a.stateNode;if(!d)throw Error(n(169));c?(b=Jb(a,b,Eb),d.__reactInternalMemoizedMergedChildContext=b,y(B,a),y(A,a),z(A,b,a)):y(B,a);z(B,c,a)}
|
|
28
|
-
var Mb=m.unstable_runWithPriority,Nb=m.unstable_scheduleCallback,Ob=m.unstable_cancelCallback,Pb=m.unstable_shouldYield,Qb=m.unstable_requestPaint,
|
|
28
|
+
var Mb=m.unstable_runWithPriority,Nb=m.unstable_scheduleCallback,Ob=m.unstable_cancelCallback,Pb=m.unstable_shouldYield,Qb=m.unstable_requestPaint,Rb=m.unstable_now,Ub=m.unstable_getCurrentPriorityLevel,Vb=m.unstable_ImmediatePriority,Wb=m.unstable_UserBlockingPriority,Xb=m.unstable_NormalPriority,Yb=m.unstable_LowPriority,Zb=m.unstable_IdlePriority,$b={},ac=void 0!==Qb?Qb:function(){},bc=null,cc=null,dc=!1,ec=Rb(),E=1E4>ec?Rb:function(){return Rb()-ec};
|
|
29
29
|
function fc(){switch(Ub()){case Vb:return 99;case Wb:return 98;case Xb:return 97;case Yb:return 96;case Zb:return 95;default:throw Error(n(332));}}function gc(a){switch(a){case 99:return Vb;case 98:return Wb;case 97:return Xb;case 96:return Yb;case 95:return Zb;default:throw Error(n(332));}}function hc(a,b){a=gc(a);return Mb(a,b)}function ic(a,b,c){a=gc(a);return Nb(a,b,c)}function jc(a){null===bc?(bc=[a],cc=Nb(Vb,kc)):bc.push(a);return $b}function F(){if(null!==cc){var a=cc;cc=null;Ob(a)}kc()}
|
|
30
30
|
function kc(){if(!dc&&null!==bc){dc=!0;var a=0;try{var b=bc;hc(99,function(){for(;a<b.length;a++){var c=b[a];do c=c(!0);while(null!==c)}});bc=null}catch(c){throw null!==bc&&(bc=bc.slice(a+1)),Nb(Vb,F),c;}finally{dc=!1}}}var lc=3;function mc(a,b,c){c/=10;return 1073741821-(((1073741821-a+b/10)/c|0)+1)*c}function nc(a,b){return a===b&&(0!==a||1/a===1/b)||a!==a&&b!==b}var oc="function"===typeof Object.is?Object.is:nc,pc=Object.prototype.hasOwnProperty;
|
|
31
31
|
function qc(a,b){if(oc(a,b))return!0;if("object"!==typeof a||null===a||"object"!==typeof b||null===b)return!1;var c=Object.keys(a),d=Object.keys(b);if(c.length!==d.length)return!1;for(d=0;d<c.length;d++)if(!pc.call(b,c[d])||!oc(a[c[d]],b[c[d]]))return!1;return!0}function rc(a,b){if(a&&a.defaultProps){b=aa({},b);a=a.defaultProps;for(var c in a)void 0===b[c]&&(b[c]=a[c])}return b}var sc={current:null},tc=null,uc=null,vc=null;function wc(){vc=uc=tc=null}
|
|
@@ -135,23 +135,23 @@ function Wf(a,b){a.finishedWork=null;a.finishedExpirationTime=0;var c=a.timeoutH
|
|
|
135
135
|
function Zf(a,b){do{try{wc();Nd();if(null===V||null===V.return)return X=uf,zf=b,null;a:{var c=a,d=V.return,e=V,f=b;b=W;e.effectTag|=2048;e.firstEffect=e.lastEffect=null;if(null!==f&&"object"===typeof f&&"function"===typeof f.then){var g=f,l=0!==(I.current&1),h=d;do{var k;if(k=13===h.tag){var p=h.memoizedState;if(null!==p)k=null!==p.dehydrated?!0:!1;else{var D=h.memoizedProps;k=void 0===D.fallback?!1:!0!==D.unstable_avoidThisFallback?!0:l?!1:!0}}if(k){var x=h.updateQueue;if(null===x){var K=new Set;
|
|
136
136
|
K.add(g);h.updateQueue=K}else x.add(g);if(0===(h.mode&2)){h.effectTag|=64;e.effectTag&=-2981;if(1===e.tag)if(null===e.alternate)e.tag=17;else{var Ha=Gc(1073741823,null);Ha.tag=2;Ic(e,Ha)}e.expirationTime=1073741823;break a}f=void 0;e=b;var O=c.pingCache;null===O?(O=c.pingCache=new hf,f=new Set,O.set(g,f)):(f=O.get(g),void 0===f&&(f=new Set,O.set(g,f)));if(!f.has(e)){f.add(e);var w=fg.bind(null,c,g,e);g.then(w,w)}h.effectTag|=4096;h.expirationTime=b;break a}h=h.return}while(null!==h);f=Error((ta(e.type)||
|
|
137
137
|
"A React component")+" suspended while rendering, but no fallback UI was specified.\n\nAdd a <Suspense fallback=...> component higher in the tree to provide a loading indicator or placeholder to display."+Ab(e))}X!==yf&&(X=vf);f=Ne(f,e);h=d;do{switch(h.tag){case 3:g=f;h.effectTag|=4096;h.expirationTime=b;var r=jf(h,g,b);Jc(h,r);break a;case 1:g=f;var t=h.type,N=h.stateNode;if(0===(h.effectTag&64)&&("function"===typeof t.getDerivedStateFromError||null!==N&&"function"===typeof N.componentDidCatch&&
|
|
138
|
-
(null===nf||!nf.has(N)))){h.effectTag|=4096;h.expirationTime=b;var Mc=mf(h,g,b);Jc(h,Mc);break a}}h=h.return}while(null!==h)}V=gg(V)}catch(
|
|
138
|
+
(null===nf||!nf.has(N)))){h.effectTag|=4096;h.expirationTime=b;var Mc=mf(h,g,b);Jc(h,Mc);break a}}h=h.return}while(null!==h)}V=gg(V)}catch(Sb){b=Sb;continue}break}while(1)}function Xf(){var a=pf.current;pf.current=Md;return null===a?Md:a}function Oc(a,b){a<Af&&2<a&&(Af=a);null!==b&&a<Bf&&2<a&&(Bf=a,Cf=b)}function Pc(a){a>Df&&(Df=a)}function bg(){for(;null!==V;)V=hg(V)}function Yf(){for(;null!==V&&!Pb();)V=hg(V)}
|
|
139
139
|
function hg(a){var b=ig(a.alternate,a,W);a.memoizedProps=a.pendingProps;null===b&&(b=gg(a));qf.current=null;return b}
|
|
140
140
|
function gg(a){V=a;do{var b=V.alternate;a=V.return;if(0===(V.effectTag&2048)){a:{var c=b;b=V;var d=W,e=b.pendingProps;switch(b.tag){case 2:break;case 16:break;case 15:case 0:break;case 1:C(b.type)&&Gb(b);break;case 3:rd(b);Hb(b);e=b.stateNode;e.pendingContext&&(e.context=e.pendingContext,e.pendingContext=null);(null===c||null===c.child)&&ne(b)&&Fe(b);He(b);break;case 5:td(b);var f=pd(od.current);d=b.type;if(null!==c&&null!=b.stateNode)Ie(c,b,d,e,f),c.ref!==b.ref&&(b.effectTag|=128);else if(e){c=pd(H.current);
|
|
141
141
|
if(ne(b)){e=b;if(!Sa)throw Error(n(175));c=ub(e.stateNode,e.type,e.memoizedProps,f,c,e);e.updateQueue=c;c=null!==c?!0:!1;c&&Fe(b)}else{var g=Ea(d,e,f,c,b);Ge(g,b,!1,!1);b.stateNode=g;Ga(g,d,e,f,c)&&Fe(b)}null!==b.ref&&(b.effectTag|=128)}else if(null===b.stateNode)throw Error(n(166));break;case 6:if(c&&null!=b.stateNode)Je(c,b,c.memoizedProps,e);else{if("string"!==typeof e&&null===b.stateNode)throw Error(n(166));c=pd(od.current);f=pd(H.current);if(ne(b)){c=b;if(!Sa)throw Error(n(176));(c=vb(c.stateNode,
|
|
142
142
|
c.memoizedProps,c))&&Fe(b)}else b.stateNode=La(e,c,f,b)}break;case 11:break;case 13:y(I,b);e=b.memoizedState;if(0!==(b.effectTag&64)){b.expirationTime=d;break a}e=null!==e;f=!1;null===c?void 0!==b.memoizedProps.fallback&&ne(b):(d=c.memoizedState,f=null!==d,e||null===d||(d=c.child.sibling,null!==d&&(g=b.firstEffect,null!==g?(b.firstEffect=d,d.nextEffect=g):(b.firstEffect=b.lastEffect=d,d.nextEffect=null),d.effectTag=8)));if(e&&!f&&0!==(b.mode&2))if(null===c&&!0!==b.memoizedProps.unstable_avoidThisFallback||
|
|
143
143
|
0!==(I.current&1))X===tf&&(X=wf);else{if(X===tf||X===wf)X=xf;0!==Df&&null!==U&&(Pf(U,W),Qf(U,Df))}Ra&&e&&(b.effectTag|=4);Qa&&(e||f)&&(b.effectTag|=4);break;case 7:break;case 8:break;case 12:break;case 4:rd(b);He(b);break;case 10:yc(b);break;case 9:break;case 14:break;case 17:C(b.type)&&Gb(b);break;case 19:y(I,b);e=b.memoizedState;if(null===e)break;f=0!==(b.effectTag&64);g=e.rendering;if(null===g)if(f)Le(e,!1);else{if(X!==tf||null!==c&&0!==(c.effectTag&64))for(c=b.child;null!==c;){g=ud(c);if(null!==
|
|
144
144
|
g){b.effectTag|=64;Le(e,!1);c=g.updateQueue;null!==c&&(b.updateQueue=c,b.effectTag|=4);null===e.lastEffect&&(b.firstEffect=null);b.lastEffect=e.lastEffect;c=d;for(e=b.child;null!==e;)f=e,d=c,f.effectTag&=2,f.nextEffect=null,f.firstEffect=null,f.lastEffect=null,g=f.alternate,null===g?(f.childExpirationTime=0,f.expirationTime=d,f.child=null,f.memoizedProps=null,f.memoizedState=null,f.updateQueue=null,f.dependencies=null):(f.childExpirationTime=g.childExpirationTime,f.expirationTime=g.expirationTime,
|
|
145
|
-
f.child=g.child,f.memoizedProps=g.memoizedProps,f.memoizedState=g.memoizedState,f.updateQueue=g.updateQueue,d=g.dependencies,f.dependencies=null===d?null:{expirationTime:d.expirationTime,firstContext:d.firstContext,responders:d.responders}),e=e.sibling;z(I,I.current&1|2,b);b=b.child;break a}c=c.sibling}}else{if(!f)if(c=ud(g),null!==c){if(b.effectTag|=64,f=!0,c=c.updateQueue,null!==c&&(b.updateQueue=c,b.effectTag|=4),Le(e,!0),null===e.tail&&"hidden"===e.tailMode){b=b.lastEffect=e.lastEffect;
|
|
146
|
-
b&&(b.nextEffect=null);break}}else E()>e.tailExpiration&&1<d&&(b.effectTag|=64,f=!0,Le(e,!1),b.expirationTime=b.childExpirationTime=d-1);e.isBackwards?(g.sibling=b.child,b.child=g):(c=e.last,null!==c?c.sibling=g:b.child=g,e.last=g)}if(null!==e.tail){0===e.tailExpiration&&(e.tailExpiration=E()+500);c=e.tail;e.rendering=c;e.tail=c.sibling;e.lastEffect=b.lastEffect;c.sibling=null;e=I.current;e=f?e&1|2:e&1;z(I,e,b);b=c;break a}break;case 20:break;case 21:break;default:throw Error(n(156,b.tag));
|
|
147
|
-
V;if(1===W||1!==c.childExpirationTime){e=0;for(f=c.child;null!==f;)d=f.expirationTime,g=f.childExpirationTime,d>e&&(e=d),g>e&&(e=g),f=f.sibling;c.childExpirationTime=e}if(null!==b)return b;null!==a&&0===(a.effectTag&2048)&&(null===a.firstEffect&&(a.firstEffect=V.firstEffect),null!==V.lastEffect&&(null!==a.lastEffect&&(a.lastEffect.nextEffect=V.firstEffect),a.lastEffect=V.lastEffect),1<V.effectTag&&(null!==a.lastEffect?a.lastEffect.nextEffect=V:a.firstEffect=V,a.lastEffect=V))}else{b=Me(V,
|
|
148
|
-
b)return b.effectTag&=2047,b;null!==a&&(a.firstEffect=a.lastEffect=null,a.effectTag|=2048)}b=V.sibling;if(null!==b)return b;V=a}while(null!==V);X===tf&&(X=yf);return null}function $f(a){var b=a.expirationTime;a=a.childExpirationTime;return b>a?b:a}function ag(a){var b=fc();hc(99,jg.bind(null,a,b));return null}
|
|
149
|
-
function jg(a,b){Vf();if((T&(S|sf))!==R)throw Error(n(327));var c=a.finishedWork,d=a.finishedExpirationTime;if(null===c)return null;a.finishedWork=null;a.finishedExpirationTime=0;if(c===a.current)throw Error(n(177));a.callbackNode=null;a.callbackExpirationTime=0;a.callbackPriority=90;a.nextKnownPendingLevel=0;var e=$f(c);a.firstPendingTime=e;d<=a.lastSuspendedTime?a.firstSuspendedTime=a.lastSuspendedTime=a.nextKnownPendingLevel=0:d<=a.firstSuspendedTime&&(a.firstSuspendedTime=
|
|
150
|
-
(a.lastPingedTime=0);d<=a.lastExpiredTime&&(a.lastExpiredTime=0);a===U&&(V=U=null,W=0);1<c.effectTag?null!==c.lastEffect?(c.lastEffect.nextEffect=c,e=c.firstEffect):e=c:e=c.firstEffect;if(null!==e){var f=T;T|=sf;qf.current=null;Ca(a.containerInfo);Y=e;do try{kg()}catch(jb){if(null===Y)throw Error(n(330));Re(Y,jb);Y=Y.nextEffect}while(null!==Y);Y=e;do try{for(var g=a,l=b;null!==Y;){var h=Y.effectTag;h&16&&Qa&&bb(Y.stateNode);if(h&128){var k=Y.alternate;if(null!==k){var p=
|
|
151
|
-
typeof p?p(null):p.current=null)}}switch(h&1038){case 2:bf(Y);Y.effectTag&=-3;break;case 6:bf(Y);Y.effectTag&=-3;cf(Y.alternate,Y);break;case 1024:Y.effectTag&=-1025;break;case 1028:Y.effectTag&=-1025;cf(Y.alternate,Y);break;case 4:cf(Y.alternate,Y);break;case 8:var D=g,x=Y,K=l;Qa?Xe(D,x,K):Ze(D,x,K);$e(x)}Y=Y.nextEffect}}catch(jb){if(null===Y)throw Error(n(330));Re(Y,jb);Y=Y.nextEffect}while(null!==Y);Da(a.containerInfo);a.current=c;Y=e;do try{for(h=d;null!==Y;){var Ha=
|
|
152
|
-
Y.alternate;k=Y;p=h;switch(k.tag){case 0:case 11:case 15:Ue(16,32,k);break;case 1:var w=k.stateNode;if(k.effectTag&4)if(null===O)w.componentDidMount();else{var r=k.elementType===k.type?O.memoizedProps:rc(k.type,O.memoizedProps);w.componentDidUpdate(r,O.memoizedState,w.__reactInternalSnapshotBeforeUpdate)}var t=k.updateQueue;null!==t&&Qc(k,t,w,p);break;case 3:var N=k.updateQueue;if(null!==N){g=null;if(null!==k.child)switch(k.child.tag){case 5:g=za(k.child.stateNode);break;
|
|
153
|
-
N,g,p)}break;case 5:var Mc=k.stateNode;null===O&&k.effectTag&4&&Wa(Mc,k.type,k.memoizedProps,k);break;case 6:break;case 4:break;case 12:break;case 13:if(Sa&&null===k.memoizedState){var
|
|
154
|
-
|
|
145
|
+
f.child=g.child,f.memoizedProps=g.memoizedProps,f.memoizedState=g.memoizedState,f.updateQueue=g.updateQueue,d=g.dependencies,f.dependencies=null===d?null:{expirationTime:d.expirationTime,firstContext:d.firstContext,responders:d.responders}),e=e.sibling;z(I,I.current&1|2,b);b=b.child;break a}c=c.sibling}}else{if(!f)if(c=ud(g),null!==c){if(b.effectTag|=64,f=!0,c=c.updateQueue,null!==c&&(b.updateQueue=c,b.effectTag|=4),Le(e,!0),null===e.tail&&"hidden"===e.tailMode&&!g.alternate){b=b.lastEffect=e.lastEffect;
|
|
146
|
+
null!==b&&(b.nextEffect=null);break}}else E()>e.tailExpiration&&1<d&&(b.effectTag|=64,f=!0,Le(e,!1),b.expirationTime=b.childExpirationTime=d-1);e.isBackwards?(g.sibling=b.child,b.child=g):(c=e.last,null!==c?c.sibling=g:b.child=g,e.last=g)}if(null!==e.tail){0===e.tailExpiration&&(e.tailExpiration=E()+500);c=e.tail;e.rendering=c;e.tail=c.sibling;e.lastEffect=b.lastEffect;c.sibling=null;e=I.current;e=f?e&1|2:e&1;z(I,e,b);b=c;break a}break;case 20:break;case 21:break;default:throw Error(n(156,b.tag));
|
|
147
|
+
}b=null}c=V;if(1===W||1!==c.childExpirationTime){e=0;for(f=c.child;null!==f;)d=f.expirationTime,g=f.childExpirationTime,d>e&&(e=d),g>e&&(e=g),f=f.sibling;c.childExpirationTime=e}if(null!==b)return b;null!==a&&0===(a.effectTag&2048)&&(null===a.firstEffect&&(a.firstEffect=V.firstEffect),null!==V.lastEffect&&(null!==a.lastEffect&&(a.lastEffect.nextEffect=V.firstEffect),a.lastEffect=V.lastEffect),1<V.effectTag&&(null!==a.lastEffect?a.lastEffect.nextEffect=V:a.firstEffect=V,a.lastEffect=V))}else{b=Me(V,
|
|
148
|
+
W);if(null!==b)return b.effectTag&=2047,b;null!==a&&(a.firstEffect=a.lastEffect=null,a.effectTag|=2048)}b=V.sibling;if(null!==b)return b;V=a}while(null!==V);X===tf&&(X=yf);return null}function $f(a){var b=a.expirationTime;a=a.childExpirationTime;return b>a?b:a}function ag(a){var b=fc();hc(99,jg.bind(null,a,b));return null}
|
|
149
|
+
function jg(a,b){do Vf();while(null!==Hf);if((T&(S|sf))!==R)throw Error(n(327));var c=a.finishedWork,d=a.finishedExpirationTime;if(null===c)return null;a.finishedWork=null;a.finishedExpirationTime=0;if(c===a.current)throw Error(n(177));a.callbackNode=null;a.callbackExpirationTime=0;a.callbackPriority=90;a.nextKnownPendingLevel=0;var e=$f(c);a.firstPendingTime=e;d<=a.lastSuspendedTime?a.firstSuspendedTime=a.lastSuspendedTime=a.nextKnownPendingLevel=0:d<=a.firstSuspendedTime&&(a.firstSuspendedTime=
|
|
150
|
+
d-1);d<=a.lastPingedTime&&(a.lastPingedTime=0);d<=a.lastExpiredTime&&(a.lastExpiredTime=0);a===U&&(V=U=null,W=0);1<c.effectTag?null!==c.lastEffect?(c.lastEffect.nextEffect=c,e=c.firstEffect):e=c:e=c.firstEffect;if(null!==e){var f=T;T|=sf;qf.current=null;Ca(a.containerInfo);Y=e;do try{kg()}catch(jb){if(null===Y)throw Error(n(330));Re(Y,jb);Y=Y.nextEffect}while(null!==Y);Y=e;do try{for(var g=a,l=b;null!==Y;){var h=Y.effectTag;h&16&&Qa&&bb(Y.stateNode);if(h&128){var k=Y.alternate;if(null!==k){var p=
|
|
151
|
+
k.ref;null!==p&&("function"===typeof p?p(null):p.current=null)}}switch(h&1038){case 2:bf(Y);Y.effectTag&=-3;break;case 6:bf(Y);Y.effectTag&=-3;cf(Y.alternate,Y);break;case 1024:Y.effectTag&=-1025;break;case 1028:Y.effectTag&=-1025;cf(Y.alternate,Y);break;case 4:cf(Y.alternate,Y);break;case 8:var D=g,x=Y,K=l;Qa?Xe(D,x,K):Ze(D,x,K);$e(x)}Y=Y.nextEffect}}catch(jb){if(null===Y)throw Error(n(330));Re(Y,jb);Y=Y.nextEffect}while(null!==Y);Da(a.containerInfo);a.current=c;Y=e;do try{for(h=d;null!==Y;){var Ha=
|
|
152
|
+
Y.effectTag;if(Ha&36){var O=Y.alternate;k=Y;p=h;switch(k.tag){case 0:case 11:case 15:Ue(16,32,k);break;case 1:var w=k.stateNode;if(k.effectTag&4)if(null===O)w.componentDidMount();else{var r=k.elementType===k.type?O.memoizedProps:rc(k.type,O.memoizedProps);w.componentDidUpdate(r,O.memoizedState,w.__reactInternalSnapshotBeforeUpdate)}var t=k.updateQueue;null!==t&&Qc(k,t,w,p);break;case 3:var N=k.updateQueue;if(null!==N){g=null;if(null!==k.child)switch(k.child.tag){case 5:g=za(k.child.stateNode);break;
|
|
153
|
+
case 1:g=k.child.stateNode}Qc(k,N,g,p)}break;case 5:var Mc=k.stateNode;null===O&&k.effectTag&4&&Wa(Mc,k.type,k.memoizedProps,k);break;case 6:break;case 4:break;case 12:break;case 13:if(Sa&&null===k.memoizedState){var Sb=k.alternate;if(null!==Sb){var le=Sb.memoizedState;if(null!==le){var me=le.dehydrated;null!==me&&yb(me)}}}break;case 19:case 17:case 20:case 21:break;default:throw Error(n(163));}}if(Ha&128){k=void 0;var Tb=Y.ref;if(null!==Tb){var v=Y.stateNode;switch(Y.tag){case 5:k=za(v);break;default:k=
|
|
154
|
+
v}"function"===typeof Tb?Tb(k):Tb.current=k}}Y=Y.nextEffect}}catch(jb){if(null===Y)throw Error(n(330));Re(Y,jb);Y=Y.nextEffect}while(null!==Y);Y=null;ac();T=f}else a.current=c;if(Gf)Gf=!1,Hf=a,If=b;else for(Y=e;null!==Y;)b=Y.nextEffect,Y.nextEffect=null,Y=b;b=a.firstPendingTime;0===b&&(nf=null);1073741823===b?a===Lf?Kf++:(Kf=0,Lf=a):Kf=0;"function"===typeof lg&&lg(c.stateNode,d);Z(a);if(kf)throw kf=!1,a=lf,lf=null,a;if((T&rf)!==R)return null;F();return null}
|
|
155
155
|
function kg(){for(;null!==Y;){var a=Y.effectTag;0!==(a&256)&&Te(Y.alternate,Y);0===(a&512)||Gf||(Gf=!0,ic(97,function(){Vf();return null}));Y=Y.nextEffect}}function Vf(){if(90!==If){var a=97<If?97:If;If=90;return hc(a,mg)}}
|
|
156
156
|
function mg(){if(null===Hf)return!1;var a=Hf;Hf=null;if((T&(S|sf))!==R)throw Error(n(331));var b=T;T|=sf;for(a=a.current.firstEffect;null!==a;){try{var c=a;if(0!==(c.effectTag&512))switch(c.tag){case 0:case 11:case 15:Ue(128,0,c),Ue(0,64,c)}}catch(d){if(null===a)throw Error(n(330));Re(a,d)}c=a.nextEffect;a.nextEffect=null;a=c}T=b;F();return!0}function ng(a,b,c){b=Ne(c,b);b=jf(a,b,1073741823);Ic(a,b);a=Nf(a,1073741823);null!==a&&Z(a)}
|
|
157
157
|
function Re(a,b){if(3===a.tag)ng(a,a,b);else for(var c=a.return;null!==c;){if(3===c.tag){ng(c,a,b);break}else if(1===c.tag){var d=c.stateNode;if("function"===typeof c.type.getDerivedStateFromError||"function"===typeof d.componentDidCatch&&(null===nf||!nf.has(d))){a=Ne(b,a);a=mf(c,a,1073741823);Ic(c,a);c=Nf(c,1073741823);null!==c&&Z(c);break}}c=c.return}}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license React v0.
|
|
1
|
+
/** @license React v0.24.0
|
|
2
2
|
* react-reconciler-reflection.development.js
|
|
3
3
|
*
|
|
4
4
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
@@ -277,12 +277,8 @@ var Hydrating =
|
|
|
277
277
|
|
|
278
278
|
// Union of all host effects
|
|
279
279
|
|
|
280
|
-
// Helps identify side effects in
|
|
281
|
-
|
|
282
|
-
// In some cases, StrictMode should also double-render lifecycles.
|
|
283
|
-
// This can be confusing for tests though,
|
|
284
|
-
// And it can be bad for performance in production.
|
|
285
|
-
// This feature flag can be used to control the behavior:
|
|
280
|
+
// Helps identify side effects in render-phase lifecycle hooks and setState
|
|
281
|
+
// reducers by double invoking them in Strict Mode.
|
|
286
282
|
|
|
287
283
|
// To preserve the "Pause on caught exceptions" behavior of the debugger, we
|
|
288
284
|
// replay the begin phase of a failed component inside invokeGuardedCallback.
|
|
@@ -318,7 +314,7 @@ var enableFundamentalAPI = false; // Experimental Scope support.
|
|
|
318
314
|
// New API for JSX transforms to target - https://github.com/reactjs/rfcs/pull/107
|
|
319
315
|
|
|
320
316
|
// We will enforce mocking scheduler with scheduler/unstable_mock at some point. (v17?)
|
|
321
|
-
// Till then, we warn about the missing mock, but still fallback to a
|
|
317
|
+
// Till then, we warn about the missing mock, but still fallback to a legacy mode compatible version
|
|
322
318
|
|
|
323
319
|
// For tests, we flush suspense fallbacks in an act scope;
|
|
324
320
|
// *except* in some of our own tests, where we test incremental loading states.
|
|
@@ -333,6 +329,12 @@ var enableFundamentalAPI = false; // Experimental Scope support.
|
|
|
333
329
|
// from React.createElement to React.jsx
|
|
334
330
|
// https://github.com/reactjs/rfcs/blob/createlement-rfc/text/0000-create-element-changes.md
|
|
335
331
|
|
|
332
|
+
|
|
333
|
+
|
|
334
|
+
|
|
335
|
+
|
|
336
|
+
// Flag to turn event.target and event.currentTarget in ReactNative from a reactTag to a component instance
|
|
337
|
+
|
|
336
338
|
var ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner;
|
|
337
339
|
function getNearestMountedFiber(fiber) {
|
|
338
340
|
var node = fiber;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license React v0.
|
|
1
|
+
/** @license React v0.24.0
|
|
2
2
|
* react-reconciler.development.js
|
|
3
3
|
*
|
|
4
4
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
@@ -388,12 +388,8 @@ var ShouldCapture =
|
|
|
388
388
|
/* */
|
|
389
389
|
4096;
|
|
390
390
|
|
|
391
|
-
var enableUserTimingAPI = true; // Helps identify side effects in
|
|
392
|
-
|
|
393
|
-
var debugRenderPhaseSideEffects = false; // In some cases, StrictMode should also double-render lifecycles.
|
|
394
|
-
// This can be confusing for tests though,
|
|
395
|
-
// And it can be bad for performance in production.
|
|
396
|
-
// This feature flag can be used to control the behavior:
|
|
391
|
+
var enableUserTimingAPI = true; // Helps identify side effects in render-phase lifecycle hooks and setState
|
|
392
|
+
// reducers by double invoking them in Strict Mode.
|
|
397
393
|
|
|
398
394
|
var debugRenderPhaseSideEffectsForStrictMode = true; // To preserve the "Pause on caught exceptions" behavior of the debugger, we
|
|
399
395
|
// replay the begin phase of a failed component inside invokeGuardedCallback.
|
|
@@ -429,7 +425,7 @@ var enableFundamentalAPI = false; // Experimental Scope support.
|
|
|
429
425
|
var enableScopeAPI = false; // New API for JSX transforms to target - https://github.com/reactjs/rfcs/pull/107
|
|
430
426
|
|
|
431
427
|
// We will enforce mocking scheduler with scheduler/unstable_mock at some point. (v17?)
|
|
432
|
-
// Till then, we warn about the missing mock, but still fallback to a
|
|
428
|
+
// Till then, we warn about the missing mock, but still fallback to a legacy mode compatible version
|
|
433
429
|
|
|
434
430
|
var warnAboutUnmockedScheduler = false; // For tests, we flush suspense fallbacks in an act scope;
|
|
435
431
|
// *except* in some of our own tests, where we test incremental loading states.
|
|
@@ -448,6 +444,7 @@ var warnAboutDefaultPropsOnFunctionComponents = false;
|
|
|
448
444
|
var warnAboutStringRefs = false;
|
|
449
445
|
var disableLegacyContext = false;
|
|
450
446
|
var disableSchedulerTimeoutBasedOnReactExpirationTime = false;
|
|
447
|
+
// Flag to turn event.target and event.currentTarget in ReactNative from a reactTag to a component instance
|
|
451
448
|
|
|
452
449
|
var ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner;
|
|
453
450
|
function getNearestMountedFiber(fiber) {
|
|
@@ -1768,7 +1765,7 @@ function findCurrentUnmaskedContext(fiber) {
|
|
|
1768
1765
|
}
|
|
1769
1766
|
}
|
|
1770
1767
|
|
|
1771
|
-
var
|
|
1768
|
+
var BlockingRoot = 1;
|
|
1772
1769
|
var ConcurrentRoot = 2;
|
|
1773
1770
|
|
|
1774
1771
|
// Intentionally not named imports because Rollup would use dynamic dispatch for
|
|
@@ -1952,10 +1949,10 @@ function flushSyncCallbackQueueImpl() {
|
|
|
1952
1949
|
}
|
|
1953
1950
|
|
|
1954
1951
|
var NoMode = 0;
|
|
1955
|
-
var StrictMode = 1; // TODO: Remove
|
|
1952
|
+
var StrictMode = 1; // TODO: Remove BlockingMode and ConcurrentMode by reading from the root
|
|
1956
1953
|
// tag instead
|
|
1957
1954
|
|
|
1958
|
-
var
|
|
1955
|
+
var BlockingMode = 2;
|
|
1959
1956
|
var ConcurrentMode = 4;
|
|
1960
1957
|
var ProfileMode = 8;
|
|
1961
1958
|
|
|
@@ -3381,7 +3378,7 @@ function getStateFromUpdate(workInProgress, queue, update, prevState, nextProps,
|
|
|
3381
3378
|
{
|
|
3382
3379
|
enterDisallowedContextReadInDEV();
|
|
3383
3380
|
|
|
3384
|
-
if (
|
|
3381
|
+
if (debugRenderPhaseSideEffectsForStrictMode && workInProgress.mode & StrictMode) {
|
|
3385
3382
|
payload.call(instance, prevState, nextProps);
|
|
3386
3383
|
}
|
|
3387
3384
|
}
|
|
@@ -3415,7 +3412,7 @@ function getStateFromUpdate(workInProgress, queue, update, prevState, nextProps,
|
|
|
3415
3412
|
{
|
|
3416
3413
|
enterDisallowedContextReadInDEV();
|
|
3417
3414
|
|
|
3418
|
-
if (
|
|
3415
|
+
if (debugRenderPhaseSideEffectsForStrictMode && workInProgress.mode & StrictMode) {
|
|
3419
3416
|
_payload.call(instance, prevState, nextProps);
|
|
3420
3417
|
}
|
|
3421
3418
|
}
|
|
@@ -3728,7 +3725,7 @@ function applyDerivedStateFromProps(workInProgress, ctor, getDerivedStateFromPro
|
|
|
3728
3725
|
var prevState = workInProgress.memoizedState;
|
|
3729
3726
|
|
|
3730
3727
|
{
|
|
3731
|
-
if (
|
|
3728
|
+
if (debugRenderPhaseSideEffectsForStrictMode && workInProgress.mode & StrictMode) {
|
|
3732
3729
|
// Invoke the function an extra time to help detect side-effects.
|
|
3733
3730
|
getDerivedStateFromProps(nextProps, prevState);
|
|
3734
3731
|
}
|
|
@@ -3975,7 +3972,7 @@ function constructClassInstance(workInProgress, ctor, props, renderExpirationTim
|
|
|
3975
3972
|
|
|
3976
3973
|
|
|
3977
3974
|
{
|
|
3978
|
-
if (
|
|
3975
|
+
if (debugRenderPhaseSideEffectsForStrictMode && workInProgress.mode & StrictMode) {
|
|
3979
3976
|
new ctor(props, context); // eslint-disable-line no-new
|
|
3980
3977
|
}
|
|
3981
3978
|
}
|
|
@@ -7921,7 +7918,7 @@ function updateForwardRef(current$$1, workInProgress, Component, nextProps, rend
|
|
|
7921
7918
|
setCurrentPhase('render');
|
|
7922
7919
|
nextChildren = renderWithHooks(current$$1, workInProgress, render, nextProps, ref, renderExpirationTime);
|
|
7923
7920
|
|
|
7924
|
-
if (
|
|
7921
|
+
if (debugRenderPhaseSideEffectsForStrictMode && workInProgress.mode & StrictMode) {
|
|
7925
7922
|
// Only double-render components with Hooks
|
|
7926
7923
|
if (workInProgress.memoizedState !== null) {
|
|
7927
7924
|
nextChildren = renderWithHooks(current$$1, workInProgress, render, nextProps, ref, renderExpirationTime);
|
|
@@ -8125,7 +8122,7 @@ function updateFunctionComponent(current$$1, workInProgress, Component, nextProp
|
|
|
8125
8122
|
setCurrentPhase('render');
|
|
8126
8123
|
nextChildren = renderWithHooks(current$$1, workInProgress, Component, nextProps, context, renderExpirationTime);
|
|
8127
8124
|
|
|
8128
|
-
if (
|
|
8125
|
+
if (debugRenderPhaseSideEffectsForStrictMode && workInProgress.mode & StrictMode) {
|
|
8129
8126
|
// Only double-render components with Hooks
|
|
8130
8127
|
if (workInProgress.memoizedState !== null) {
|
|
8131
8128
|
nextChildren = renderWithHooks(current$$1, workInProgress, Component, nextProps, context, renderExpirationTime);
|
|
@@ -8248,7 +8245,7 @@ function finishClassComponent(current$$1, workInProgress, Component, shouldUpdat
|
|
|
8248
8245
|
setCurrentPhase('render');
|
|
8249
8246
|
nextChildren = instance.render();
|
|
8250
8247
|
|
|
8251
|
-
if (
|
|
8248
|
+
if (debugRenderPhaseSideEffectsForStrictMode && workInProgress.mode & StrictMode) {
|
|
8252
8249
|
instance.render();
|
|
8253
8250
|
}
|
|
8254
8251
|
|
|
@@ -8621,7 +8618,7 @@ function mountIndeterminateComponent(_current, workInProgress, Component, render
|
|
|
8621
8618
|
warningWithoutStack$1(false, '%s uses the legacy contextTypes API which is no longer supported. ' + 'Use React.createContext() with React.useContext() instead.', getComponentName(Component) || 'Unknown');
|
|
8622
8619
|
}
|
|
8623
8620
|
|
|
8624
|
-
if (
|
|
8621
|
+
if (debugRenderPhaseSideEffectsForStrictMode && workInProgress.mode & StrictMode) {
|
|
8625
8622
|
// Only double-render components with Hooks
|
|
8626
8623
|
if (workInProgress.memoizedState !== null) {
|
|
8627
8624
|
value = renderWithHooks(null, workInProgress, Component, props, context, renderExpirationTime);
|
|
@@ -8797,8 +8794,8 @@ function updateSuspenseComponent(current$$1, workInProgress, renderExpirationTim
|
|
|
8797
8794
|
var primaryChildFragment = createFiberFromFragment(null, mode, NoWork, null);
|
|
8798
8795
|
primaryChildFragment.return = workInProgress;
|
|
8799
8796
|
|
|
8800
|
-
if ((workInProgress.mode &
|
|
8801
|
-
// Outside of
|
|
8797
|
+
if ((workInProgress.mode & BlockingMode) === NoMode) {
|
|
8798
|
+
// Outside of blocking mode, we commit the effects from the
|
|
8802
8799
|
// partially completed, timed-out tree, too.
|
|
8803
8800
|
var progressedState = workInProgress.memoizedState;
|
|
8804
8801
|
var progressedPrimaryChild = progressedState !== null ? workInProgress.child.child : workInProgress.child;
|
|
@@ -8861,8 +8858,8 @@ function updateSuspenseComponent(current$$1, workInProgress, renderExpirationTim
|
|
|
8861
8858
|
|
|
8862
8859
|
_primaryChildFragment.child = null;
|
|
8863
8860
|
|
|
8864
|
-
if ((workInProgress.mode &
|
|
8865
|
-
// Outside of
|
|
8861
|
+
if ((workInProgress.mode & BlockingMode) === NoMode) {
|
|
8862
|
+
// Outside of blocking mode, we commit the effects from the
|
|
8866
8863
|
// partially completed, timed-out tree, too.
|
|
8867
8864
|
var _progressedChild = _primaryChildFragment.child = workInProgress.child;
|
|
8868
8865
|
|
|
@@ -8921,8 +8918,8 @@ function updateSuspenseComponent(current$$1, workInProgress, renderExpirationTim
|
|
|
8921
8918
|
|
|
8922
8919
|
_primaryChildFragment2.return = workInProgress;
|
|
8923
8920
|
|
|
8924
|
-
if ((workInProgress.mode &
|
|
8925
|
-
// Outside of
|
|
8921
|
+
if ((workInProgress.mode & BlockingMode) === NoMode) {
|
|
8922
|
+
// Outside of blocking mode, we commit the effects from the
|
|
8926
8923
|
// partially completed, timed-out tree, too.
|
|
8927
8924
|
var _progressedState = workInProgress.memoizedState;
|
|
8928
8925
|
|
|
@@ -9006,8 +9003,8 @@ function updateSuspenseComponent(current$$1, workInProgress, renderExpirationTim
|
|
|
9006
9003
|
// primaryChildFragment.effectTag |= Placement;
|
|
9007
9004
|
|
|
9008
9005
|
|
|
9009
|
-
if ((workInProgress.mode &
|
|
9010
|
-
// Outside of
|
|
9006
|
+
if ((workInProgress.mode & BlockingMode) === NoMode) {
|
|
9007
|
+
// Outside of blocking mode, we commit the effects from the
|
|
9011
9008
|
// partially completed, timed-out tree, too.
|
|
9012
9009
|
var _progressedState2 = workInProgress.memoizedState;
|
|
9013
9010
|
|
|
@@ -9076,9 +9073,9 @@ function retrySuspenseComponentWithoutHydrating(current$$1, workInProgress, rend
|
|
|
9076
9073
|
function mountDehydratedSuspenseComponent(workInProgress, suspenseInstance, renderExpirationTime) {
|
|
9077
9074
|
// During the first pass, we'll bail out and not drill into the children.
|
|
9078
9075
|
// Instead, we'll leave the content in place and try to hydrate it later.
|
|
9079
|
-
if ((workInProgress.mode &
|
|
9076
|
+
if ((workInProgress.mode & BlockingMode) === NoMode) {
|
|
9080
9077
|
{
|
|
9081
|
-
warning$1(false, 'Cannot hydrate Suspense in legacy mode. Switch from ' + 'ReactDOM.hydrate(element, container) to ' + 'ReactDOM.
|
|
9078
|
+
warning$1(false, 'Cannot hydrate Suspense in legacy mode. Switch from ' + 'ReactDOM.hydrate(element, container) to ' + 'ReactDOM.createBlockingRoot(container, { hydrate: true })' + '.render(element) or remove the Suspense components from ' + 'the server rendered components.');
|
|
9082
9079
|
}
|
|
9083
9080
|
|
|
9084
9081
|
workInProgress.expirationTime = Sync;
|
|
@@ -9120,7 +9117,7 @@ function updateDehydratedSuspenseComponent(current$$1, workInProgress, suspenseI
|
|
|
9120
9117
|
// but after we've already committed once.
|
|
9121
9118
|
warnIfHydrating();
|
|
9122
9119
|
|
|
9123
|
-
if ((workInProgress.mode &
|
|
9120
|
+
if ((workInProgress.mode & BlockingMode) === NoMode) {
|
|
9124
9121
|
return retrySuspenseComponentWithoutHydrating(current$$1, workInProgress, renderExpirationTime);
|
|
9125
9122
|
}
|
|
9126
9123
|
|
|
@@ -9442,8 +9439,8 @@ function updateSuspenseListComponent(current$$1, workInProgress, renderExpiratio
|
|
|
9442
9439
|
|
|
9443
9440
|
pushSuspenseContext(workInProgress, suspenseContext);
|
|
9444
9441
|
|
|
9445
|
-
if ((workInProgress.mode &
|
|
9446
|
-
// Outside of
|
|
9442
|
+
if ((workInProgress.mode & BlockingMode) === NoMode) {
|
|
9443
|
+
// Outside of blocking mode, SuspenseList doesn't work so we just
|
|
9447
9444
|
// use make it a noop by treating it as the default revealOrder.
|
|
9448
9445
|
workInProgress.memoizedState = null;
|
|
9449
9446
|
} else {
|
|
@@ -9815,7 +9812,12 @@ function beginWork$1(current$$1, workInProgress, renderExpirationTime) {
|
|
|
9815
9812
|
|
|
9816
9813
|
case Profiler:
|
|
9817
9814
|
if (enableProfilerTimer) {
|
|
9818
|
-
|
|
9815
|
+
// Profiler should only call onRender when one of its descendants actually rendered.
|
|
9816
|
+
var hasChildWork = workInProgress.childExpirationTime >= renderExpirationTime;
|
|
9817
|
+
|
|
9818
|
+
if (hasChildWork) {
|
|
9819
|
+
workInProgress.effectTag |= Update;
|
|
9820
|
+
}
|
|
9819
9821
|
}
|
|
9820
9822
|
|
|
9821
9823
|
break;
|
|
@@ -9871,10 +9873,11 @@ function beginWork$1(current$$1, workInProgress, renderExpirationTime) {
|
|
|
9871
9873
|
case SuspenseListComponent:
|
|
9872
9874
|
{
|
|
9873
9875
|
var didSuspendBefore = (current$$1.effectTag & DidCapture) !== NoEffect;
|
|
9874
|
-
|
|
9876
|
+
|
|
9877
|
+
var _hasChildWork = workInProgress.childExpirationTime >= renderExpirationTime;
|
|
9875
9878
|
|
|
9876
9879
|
if (didSuspendBefore) {
|
|
9877
|
-
if (
|
|
9880
|
+
if (_hasChildWork) {
|
|
9878
9881
|
// If something was in fallback state last time, and we have all the
|
|
9879
9882
|
// same children then we're still in progressive loading state.
|
|
9880
9883
|
// Something might get unblocked by state updates or retries in the
|
|
@@ -9903,7 +9906,7 @@ function beginWork$1(current$$1, workInProgress, renderExpirationTime) {
|
|
|
9903
9906
|
|
|
9904
9907
|
pushSuspenseContext(workInProgress, suspenseStackCursor.current);
|
|
9905
9908
|
|
|
9906
|
-
if (
|
|
9909
|
+
if (_hasChildWork) {
|
|
9907
9910
|
break;
|
|
9908
9911
|
} else {
|
|
9909
9912
|
// If none of the children had any work, that means that none of
|
|
@@ -10086,14 +10089,19 @@ function getSuspenseFallbackChild(fiber) {
|
|
|
10086
10089
|
return fiber.child.sibling.child;
|
|
10087
10090
|
}
|
|
10088
10091
|
|
|
10092
|
+
var emptyObject$1 = {};
|
|
10093
|
+
|
|
10089
10094
|
function collectScopedNodes(node, fn, scopedNodes) {
|
|
10090
10095
|
if (enableScopeAPI) {
|
|
10091
10096
|
if (node.tag === HostComponent) {
|
|
10092
10097
|
var _type = node.type,
|
|
10093
|
-
memoizedProps = node.memoizedProps
|
|
10098
|
+
memoizedProps = node.memoizedProps,
|
|
10099
|
+
stateNode = node.stateNode;
|
|
10094
10100
|
|
|
10095
|
-
|
|
10096
|
-
|
|
10101
|
+
var _instance = getPublicInstance(stateNode);
|
|
10102
|
+
|
|
10103
|
+
if (_instance !== null && fn(_type, memoizedProps || emptyObject$1, _instance) === true) {
|
|
10104
|
+
scopedNodes.push(_instance);
|
|
10097
10105
|
}
|
|
10098
10106
|
}
|
|
10099
10107
|
|
|
@@ -10113,10 +10121,13 @@ function collectFirstScopedNode(node, fn) {
|
|
|
10113
10121
|
if (enableScopeAPI) {
|
|
10114
10122
|
if (node.tag === HostComponent) {
|
|
10115
10123
|
var _type2 = node.type,
|
|
10116
|
-
memoizedProps = node.memoizedProps
|
|
10124
|
+
memoizedProps = node.memoizedProps,
|
|
10125
|
+
stateNode = node.stateNode;
|
|
10126
|
+
|
|
10127
|
+
var _instance2 = getPublicInstance(stateNode);
|
|
10117
10128
|
|
|
10118
|
-
if (fn(_type2, memoizedProps) === true) {
|
|
10119
|
-
return
|
|
10129
|
+
if (_instance2 !== null && fn(_type2, memoizedProps, _instance2) === true) {
|
|
10130
|
+
return _instance2;
|
|
10120
10131
|
}
|
|
10121
10132
|
}
|
|
10122
10133
|
|
|
@@ -11000,12 +11011,12 @@ function completeWork(current, workInProgress, renderExpirationTime) {
|
|
|
11000
11011
|
}
|
|
11001
11012
|
|
|
11002
11013
|
if (nextDidTimeout && !prevDidTimeout) {
|
|
11003
|
-
// If this subtreee is running in
|
|
11014
|
+
// If this subtreee is running in blocking mode we can suspend,
|
|
11004
11015
|
// otherwise we won't suspend.
|
|
11005
11016
|
// TODO: This will still suspend a synchronous tree if anything
|
|
11006
11017
|
// in the concurrent tree already suspended during this render.
|
|
11007
11018
|
// This is a known bug.
|
|
11008
|
-
if ((workInProgress.mode &
|
|
11019
|
+
if ((workInProgress.mode & BlockingMode) !== NoMode) {
|
|
11009
11020
|
// TODO: Move this back to throwException because this is too late
|
|
11010
11021
|
// if this is a large tree which is common for initial loads. We
|
|
11011
11022
|
// don't know if we should restart a render or not until we get
|
|
@@ -11194,9 +11205,9 @@ function completeWork(current, workInProgress, renderExpirationTime) {
|
|
|
11194
11205
|
|
|
11195
11206
|
cutOffTailIfNeeded(renderState, true); // This might have been modified.
|
|
11196
11207
|
|
|
11197
|
-
if (renderState.tail === null && renderState.tailMode === 'hidden') {
|
|
11208
|
+
if (renderState.tail === null && renderState.tailMode === 'hidden' && !renderedTail.alternate) {
|
|
11198
11209
|
// We need to delete the row we just rendered.
|
|
11199
|
-
// Reset the effect list to what it
|
|
11210
|
+
// Reset the effect list to what it was before we rendered this
|
|
11200
11211
|
// child. The nested children have already appended themselves.
|
|
11201
11212
|
var lastEffect = workInProgress.lastEffect = renderState.lastEffect; // Remove any effects that were appended after this point.
|
|
11202
11213
|
|
|
@@ -13331,17 +13342,17 @@ function throwException(root, returnFiber, sourceFiber, value, renderExpirationT
|
|
|
13331
13342
|
_workInProgress.updateQueue = updateQueue;
|
|
13332
13343
|
} else {
|
|
13333
13344
|
thenables.add(thenable);
|
|
13334
|
-
} // If the boundary is outside of
|
|
13345
|
+
} // If the boundary is outside of blocking mode, we should *not*
|
|
13335
13346
|
// suspend the commit. Pretend as if the suspended component rendered
|
|
13336
13347
|
// null and keep rendering. In the commit phase, we'll schedule a
|
|
13337
13348
|
// subsequent synchronous update to re-render the Suspense.
|
|
13338
13349
|
//
|
|
13339
13350
|
// Note: It doesn't matter whether the component that suspended was
|
|
13340
|
-
// inside a
|
|
13351
|
+
// inside a blocking mode tree. If the Suspense is outside of it, we
|
|
13341
13352
|
// should *not* suspend the commit.
|
|
13342
13353
|
|
|
13343
13354
|
|
|
13344
|
-
if ((_workInProgress.mode &
|
|
13355
|
+
if ((_workInProgress.mode & BlockingMode) === NoMode) {
|
|
13345
13356
|
_workInProgress.effectTag |= DidCapture; // We're going to commit this fiber even though it didn't complete.
|
|
13346
13357
|
// But we shouldn't call any lifecycle methods or callbacks. Remove
|
|
13347
13358
|
// all lifecycle effect tags.
|
|
@@ -13588,7 +13599,7 @@ function getCurrentTime() {
|
|
|
13588
13599
|
function computeExpirationForFiber(currentTime, fiber, suspenseConfig) {
|
|
13589
13600
|
var mode = fiber.mode;
|
|
13590
13601
|
|
|
13591
|
-
if ((mode &
|
|
13602
|
+
if ((mode & BlockingMode) === NoMode) {
|
|
13592
13603
|
return Sync;
|
|
13593
13604
|
}
|
|
13594
13605
|
|
|
@@ -13689,7 +13700,7 @@ function scheduleUpdateOnFiber(fiber, expirationTime) {
|
|
|
13689
13700
|
// a batch. This is intentionally inside scheduleUpdateOnFiber instead of
|
|
13690
13701
|
// scheduleCallbackForFiber to preserve the ability to schedule a callback
|
|
13691
13702
|
// without immediately flushing it. We only do this for user-initiated
|
|
13692
|
-
// updates, to preserve historical behavior of
|
|
13703
|
+
// updates, to preserve historical behavior of legacy mode.
|
|
13693
13704
|
flushSyncCallbackQueue();
|
|
13694
13705
|
}
|
|
13695
13706
|
}
|
|
@@ -14911,7 +14922,16 @@ function commitRoot(root) {
|
|
|
14911
14922
|
}
|
|
14912
14923
|
|
|
14913
14924
|
function commitRootImpl(root, renderPriorityLevel) {
|
|
14914
|
-
|
|
14925
|
+
do {
|
|
14926
|
+
// `flushPassiveEffects` will call `flushSyncUpdateQueue` at the end, which
|
|
14927
|
+
// means `flushPassiveEffects` will sometimes result in additional
|
|
14928
|
+
// passive effects. So we need to keep flushing in a loop until there are
|
|
14929
|
+
// no more pending effects.
|
|
14930
|
+
// TODO: Might be better if `flushPassiveEffects` did not automatically
|
|
14931
|
+
// flush synchronous work at the end, to avoid factoring hazards like this.
|
|
14932
|
+
flushPassiveEffects();
|
|
14933
|
+
} while (rootWithPendingPassiveEffects !== null);
|
|
14934
|
+
|
|
14915
14935
|
flushRenderPhaseStrictModeWarningsInDEV();
|
|
14916
14936
|
|
|
14917
14937
|
if (!((executionContext & (RenderContext | CommitContext)) === NoContext)) {
|
|
@@ -15838,7 +15858,7 @@ var didWarnAboutUnmockedScheduler = false; // TODO Before we release concurrent
|
|
|
15838
15858
|
function warnIfUnmockedScheduler(fiber) {
|
|
15839
15859
|
{
|
|
15840
15860
|
if (didWarnAboutUnmockedScheduler === false && Scheduler.unstable_flushAllWithoutAsserting === undefined) {
|
|
15841
|
-
if (fiber.mode &
|
|
15861
|
+
if (fiber.mode & BlockingMode || fiber.mode & ConcurrentMode) {
|
|
15842
15862
|
didWarnAboutUnmockedScheduler = true;
|
|
15843
15863
|
warningWithoutStack$1(false, 'In Concurrent or Sync modes, the "scheduler" module needs to be mocked ' + 'to guarantee consistent behaviour across tests and browsers. ' + 'For example, with jest: \n' + "jest.mock('scheduler', () => require('scheduler/unstable_mock'));\n\n" + 'For more info, visit https://fb.me/react-mock-scheduler');
|
|
15844
15864
|
} else if (warnAboutUnmockedScheduler === true) {
|
|
@@ -16481,9 +16501,9 @@ function createHostRootFiber(tag) {
|
|
|
16481
16501
|
var mode;
|
|
16482
16502
|
|
|
16483
16503
|
if (tag === ConcurrentRoot) {
|
|
16484
|
-
mode = ConcurrentMode |
|
|
16485
|
-
} else if (tag ===
|
|
16486
|
-
mode =
|
|
16504
|
+
mode = ConcurrentMode | BlockingMode | StrictMode;
|
|
16505
|
+
} else if (tag === BlockingRoot) {
|
|
16506
|
+
mode = BlockingMode | StrictMode;
|
|
16487
16507
|
} else {
|
|
16488
16508
|
mode = NoMode;
|
|
16489
16509
|
}
|
|
@@ -16525,7 +16545,7 @@ key, pendingProps, owner, mode, expirationTime) {
|
|
|
16525
16545
|
|
|
16526
16546
|
case REACT_CONCURRENT_MODE_TYPE:
|
|
16527
16547
|
fiberTag = Mode;
|
|
16528
|
-
mode |= ConcurrentMode |
|
|
16548
|
+
mode |= ConcurrentMode | BlockingMode | StrictMode;
|
|
16529
16549
|
break;
|
|
16530
16550
|
|
|
16531
16551
|
case REACT_STRICT_MODE_TYPE:
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license React v0.
|
|
1
|
+
/** @license React v0.24.0
|
|
2
2
|
* react-reconciler.production.min.js
|
|
3
3
|
*
|
|
4
4
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
@@ -25,7 +25,7 @@ function Ab(a){var b="";do{a:switch(a.tag){case 3:case 4:case 6:case 7:case 10:c
|
|
|
25
25
|
var Db={},A={current:Db},B={current:!1},Eb=Db;function Fb(a,b){var c=a.type.contextTypes;if(!c)return Db;var d=a.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===b)return d.__reactInternalMemoizedMaskedChildContext;var e={},f;for(f in c)e[f]=b[f];d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=b,a.__reactInternalMemoizedMaskedChildContext=e);return e}function C(a){a=a.childContextTypes;return null!==a&&void 0!==a}function Gb(a){y(B,a);y(A,a)}
|
|
26
26
|
function Hb(a){y(B,a);y(A,a)}function Ib(a,b,c){if(A.current!==Db)throw Error(n(168));z(A,b,a);z(B,c,a)}function Jb(a,b,c){var d=a.stateNode;a=b.childContextTypes;if("function"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in a))throw Error(n(108,ta(b)||"Unknown",e));return aa({},c,{},d)}function Kb(a){var b=a.stateNode;b=b&&b.__reactInternalMemoizedMergedChildContext||Db;Eb=A.current;z(A,b,a);z(B,B.current,a);return!0}
|
|
27
27
|
function Lb(a,b,c){var d=a.stateNode;if(!d)throw Error(n(169));c?(b=Jb(a,b,Eb),d.__reactInternalMemoizedMergedChildContext=b,y(B,a),y(A,a),z(A,b,a)):y(B,a);z(B,c,a)}
|
|
28
|
-
var Mb=m.unstable_runWithPriority,Nb=m.unstable_scheduleCallback,Ob=m.unstable_cancelCallback,Pb=m.unstable_shouldYield,Qb=m.unstable_requestPaint,
|
|
28
|
+
var Mb=m.unstable_runWithPriority,Nb=m.unstable_scheduleCallback,Ob=m.unstable_cancelCallback,Pb=m.unstable_shouldYield,Qb=m.unstable_requestPaint,Rb=m.unstable_now,Ub=m.unstable_getCurrentPriorityLevel,Vb=m.unstable_ImmediatePriority,Wb=m.unstable_UserBlockingPriority,Xb=m.unstable_NormalPriority,Yb=m.unstable_LowPriority,Zb=m.unstable_IdlePriority,$b={},ac=void 0!==Qb?Qb:function(){},bc=null,cc=null,dc=!1,ec=Rb(),E=1E4>ec?Rb:function(){return Rb()-ec};
|
|
29
29
|
function fc(){switch(Ub()){case Vb:return 99;case Wb:return 98;case Xb:return 97;case Yb:return 96;case Zb:return 95;default:throw Error(n(332));}}function gc(a){switch(a){case 99:return Vb;case 98:return Wb;case 97:return Xb;case 96:return Yb;case 95:return Zb;default:throw Error(n(332));}}function hc(a,b){a=gc(a);return Mb(a,b)}function ic(a,b,c){a=gc(a);return Nb(a,b,c)}function jc(a){null===bc?(bc=[a],cc=Nb(Vb,kc)):bc.push(a);return $b}function F(){if(null!==cc){var a=cc;cc=null;Ob(a)}kc()}
|
|
30
30
|
function kc(){if(!dc&&null!==bc){dc=!0;var a=0;try{var b=bc;hc(99,function(){for(;a<b.length;a++){var c=b[a];do c=c(!0);while(null!==c)}});bc=null}catch(c){throw null!==bc&&(bc=bc.slice(a+1)),Nb(Vb,F),c;}finally{dc=!1}}}var lc=3;function mc(a,b,c){c/=10;return 1073741821-(((1073741821-a+b/10)/c|0)+1)*c}function nc(a,b){return a===b&&(0!==a||1/a===1/b)||a!==a&&b!==b}var oc="function"===typeof Object.is?Object.is:nc,pc=Object.prototype.hasOwnProperty;
|
|
31
31
|
function qc(a,b){if(oc(a,b))return!0;if("object"!==typeof a||null===a||"object"!==typeof b||null===b)return!1;var c=Object.keys(a),d=Object.keys(b);if(c.length!==d.length)return!1;for(d=0;d<c.length;d++)if(!pc.call(b,c[d])||!oc(a[c[d]],b[c[d]]))return!1;return!0}function rc(a,b){if(a&&a.defaultProps){b=aa({},b);a=a.defaultProps;for(var c in a)void 0===b[c]&&(b[c]=a[c])}return b}var sc={current:null},tc=null,uc=null,vc=null;function wc(){vc=uc=tc=null}
|
|
@@ -135,23 +135,23 @@ function Wf(a,b){a.finishedWork=null;a.finishedExpirationTime=0;var c=a.timeoutH
|
|
|
135
135
|
function Zf(a,b){do{try{wc();Nd();if(null===V||null===V.return)return X=uf,zf=b,null;a:{var c=a,d=V.return,e=V,f=b;b=W;e.effectTag|=2048;e.firstEffect=e.lastEffect=null;if(null!==f&&"object"===typeof f&&"function"===typeof f.then){var g=f,l=0!==(I.current&1),h=d;do{var k;if(k=13===h.tag){var p=h.memoizedState;if(null!==p)k=null!==p.dehydrated?!0:!1;else{var D=h.memoizedProps;k=void 0===D.fallback?!1:!0!==D.unstable_avoidThisFallback?!0:l?!1:!0}}if(k){var x=h.updateQueue;if(null===x){var K=new Set;
|
|
136
136
|
K.add(g);h.updateQueue=K}else x.add(g);if(0===(h.mode&2)){h.effectTag|=64;e.effectTag&=-2981;if(1===e.tag)if(null===e.alternate)e.tag=17;else{var Ha=Gc(1073741823,null);Ha.tag=2;Ic(e,Ha)}e.expirationTime=1073741823;break a}f=void 0;e=b;var O=c.pingCache;null===O?(O=c.pingCache=new hf,f=new Set,O.set(g,f)):(f=O.get(g),void 0===f&&(f=new Set,O.set(g,f)));if(!f.has(e)){f.add(e);var w=fg.bind(null,c,g,e);g.then(w,w)}h.effectTag|=4096;h.expirationTime=b;break a}h=h.return}while(null!==h);f=Error((ta(e.type)||
|
|
137
137
|
"A React component")+" suspended while rendering, but no fallback UI was specified.\n\nAdd a <Suspense fallback=...> component higher in the tree to provide a loading indicator or placeholder to display."+Ab(e))}X!==yf&&(X=vf);f=Ne(f,e);h=d;do{switch(h.tag){case 3:g=f;h.effectTag|=4096;h.expirationTime=b;var r=jf(h,g,b);Jc(h,r);break a;case 1:g=f;var t=h.type,N=h.stateNode;if(0===(h.effectTag&64)&&("function"===typeof t.getDerivedStateFromError||null!==N&&"function"===typeof N.componentDidCatch&&
|
|
138
|
-
(null===nf||!nf.has(N)))){h.effectTag|=4096;h.expirationTime=b;var Mc=mf(h,g,b);Jc(h,Mc);break a}}h=h.return}while(null!==h)}V=gg(V)}catch(
|
|
138
|
+
(null===nf||!nf.has(N)))){h.effectTag|=4096;h.expirationTime=b;var Mc=mf(h,g,b);Jc(h,Mc);break a}}h=h.return}while(null!==h)}V=gg(V)}catch(Sb){b=Sb;continue}break}while(1)}function Xf(){var a=pf.current;pf.current=Md;return null===a?Md:a}function Oc(a,b){a<Af&&2<a&&(Af=a);null!==b&&a<Bf&&2<a&&(Bf=a,Cf=b)}function Pc(a){a>Df&&(Df=a)}function bg(){for(;null!==V;)V=hg(V)}function Yf(){for(;null!==V&&!Pb();)V=hg(V)}
|
|
139
139
|
function hg(a){var b=ig(a.alternate,a,W);a.memoizedProps=a.pendingProps;null===b&&(b=gg(a));qf.current=null;return b}
|
|
140
140
|
function gg(a){V=a;do{var b=V.alternate;a=V.return;if(0===(V.effectTag&2048)){a:{var c=b;b=V;var d=W,e=b.pendingProps;switch(b.tag){case 2:break;case 16:break;case 15:case 0:break;case 1:C(b.type)&&Gb(b);break;case 3:rd(b);Hb(b);e=b.stateNode;e.pendingContext&&(e.context=e.pendingContext,e.pendingContext=null);(null===c||null===c.child)&&ne(b)&&Fe(b);He(b);break;case 5:td(b);var f=pd(od.current);d=b.type;if(null!==c&&null!=b.stateNode)Ie(c,b,d,e,f),c.ref!==b.ref&&(b.effectTag|=128);else if(e){c=pd(H.current);
|
|
141
141
|
if(ne(b)){e=b;if(!Sa)throw Error(n(175));c=ub(e.stateNode,e.type,e.memoizedProps,f,c,e);e.updateQueue=c;c=null!==c?!0:!1;c&&Fe(b)}else{var g=Ea(d,e,f,c,b);Ge(g,b,!1,!1);b.stateNode=g;Ga(g,d,e,f,c)&&Fe(b)}null!==b.ref&&(b.effectTag|=128)}else if(null===b.stateNode)throw Error(n(166));break;case 6:if(c&&null!=b.stateNode)Je(c,b,c.memoizedProps,e);else{if("string"!==typeof e&&null===b.stateNode)throw Error(n(166));c=pd(od.current);f=pd(H.current);if(ne(b)){c=b;if(!Sa)throw Error(n(176));(c=vb(c.stateNode,
|
|
142
142
|
c.memoizedProps,c))&&Fe(b)}else b.stateNode=La(e,c,f,b)}break;case 11:break;case 13:y(I,b);e=b.memoizedState;if(0!==(b.effectTag&64)){b.expirationTime=d;break a}e=null!==e;f=!1;null===c?void 0!==b.memoizedProps.fallback&&ne(b):(d=c.memoizedState,f=null!==d,e||null===d||(d=c.child.sibling,null!==d&&(g=b.firstEffect,null!==g?(b.firstEffect=d,d.nextEffect=g):(b.firstEffect=b.lastEffect=d,d.nextEffect=null),d.effectTag=8)));if(e&&!f&&0!==(b.mode&2))if(null===c&&!0!==b.memoizedProps.unstable_avoidThisFallback||
|
|
143
143
|
0!==(I.current&1))X===tf&&(X=wf);else{if(X===tf||X===wf)X=xf;0!==Df&&null!==U&&(Pf(U,W),Qf(U,Df))}Ra&&e&&(b.effectTag|=4);Qa&&(e||f)&&(b.effectTag|=4);break;case 7:break;case 8:break;case 12:break;case 4:rd(b);He(b);break;case 10:yc(b);break;case 9:break;case 14:break;case 17:C(b.type)&&Gb(b);break;case 19:y(I,b);e=b.memoizedState;if(null===e)break;f=0!==(b.effectTag&64);g=e.rendering;if(null===g)if(f)Le(e,!1);else{if(X!==tf||null!==c&&0!==(c.effectTag&64))for(c=b.child;null!==c;){g=ud(c);if(null!==
|
|
144
144
|
g){b.effectTag|=64;Le(e,!1);c=g.updateQueue;null!==c&&(b.updateQueue=c,b.effectTag|=4);null===e.lastEffect&&(b.firstEffect=null);b.lastEffect=e.lastEffect;c=d;for(e=b.child;null!==e;)f=e,d=c,f.effectTag&=2,f.nextEffect=null,f.firstEffect=null,f.lastEffect=null,g=f.alternate,null===g?(f.childExpirationTime=0,f.expirationTime=d,f.child=null,f.memoizedProps=null,f.memoizedState=null,f.updateQueue=null,f.dependencies=null):(f.childExpirationTime=g.childExpirationTime,f.expirationTime=g.expirationTime,
|
|
145
|
-
f.child=g.child,f.memoizedProps=g.memoizedProps,f.memoizedState=g.memoizedState,f.updateQueue=g.updateQueue,d=g.dependencies,f.dependencies=null===d?null:{expirationTime:d.expirationTime,firstContext:d.firstContext,responders:d.responders}),e=e.sibling;z(I,I.current&1|2,b);b=b.child;break a}c=c.sibling}}else{if(!f)if(c=ud(g),null!==c){if(b.effectTag|=64,f=!0,c=c.updateQueue,null!==c&&(b.updateQueue=c,b.effectTag|=4),Le(e,!0),null===e.tail&&"hidden"===e.tailMode){b=b.lastEffect=e.lastEffect;
|
|
146
|
-
b&&(b.nextEffect=null);break}}else E()>e.tailExpiration&&1<d&&(b.effectTag|=64,f=!0,Le(e,!1),b.expirationTime=b.childExpirationTime=d-1);e.isBackwards?(g.sibling=b.child,b.child=g):(c=e.last,null!==c?c.sibling=g:b.child=g,e.last=g)}if(null!==e.tail){0===e.tailExpiration&&(e.tailExpiration=E()+500);c=e.tail;e.rendering=c;e.tail=c.sibling;e.lastEffect=b.lastEffect;c.sibling=null;e=I.current;e=f?e&1|2:e&1;z(I,e,b);b=c;break a}break;case 20:break;case 21:break;default:throw Error(n(156,b.tag));
|
|
147
|
-
V;if(1===W||1!==c.childExpirationTime){e=0;for(f=c.child;null!==f;)d=f.expirationTime,g=f.childExpirationTime,d>e&&(e=d),g>e&&(e=g),f=f.sibling;c.childExpirationTime=e}if(null!==b)return b;null!==a&&0===(a.effectTag&2048)&&(null===a.firstEffect&&(a.firstEffect=V.firstEffect),null!==V.lastEffect&&(null!==a.lastEffect&&(a.lastEffect.nextEffect=V.firstEffect),a.lastEffect=V.lastEffect),1<V.effectTag&&(null!==a.lastEffect?a.lastEffect.nextEffect=V:a.firstEffect=V,a.lastEffect=V))}else{b=Me(V,
|
|
148
|
-
b)return b.effectTag&=2047,b;null!==a&&(a.firstEffect=a.lastEffect=null,a.effectTag|=2048)}b=V.sibling;if(null!==b)return b;V=a}while(null!==V);X===tf&&(X=yf);return null}function $f(a){var b=a.expirationTime;a=a.childExpirationTime;return b>a?b:a}function ag(a){var b=fc();hc(99,jg.bind(null,a,b));return null}
|
|
149
|
-
function jg(a,b){Vf();if((T&(S|sf))!==R)throw Error(n(327));var c=a.finishedWork,d=a.finishedExpirationTime;if(null===c)return null;a.finishedWork=null;a.finishedExpirationTime=0;if(c===a.current)throw Error(n(177));a.callbackNode=null;a.callbackExpirationTime=0;a.callbackPriority=90;a.nextKnownPendingLevel=0;var e=$f(c);a.firstPendingTime=e;d<=a.lastSuspendedTime?a.firstSuspendedTime=a.lastSuspendedTime=a.nextKnownPendingLevel=0:d<=a.firstSuspendedTime&&(a.firstSuspendedTime=
|
|
150
|
-
(a.lastPingedTime=0);d<=a.lastExpiredTime&&(a.lastExpiredTime=0);a===U&&(V=U=null,W=0);1<c.effectTag?null!==c.lastEffect?(c.lastEffect.nextEffect=c,e=c.firstEffect):e=c:e=c.firstEffect;if(null!==e){var f=T;T|=sf;qf.current=null;Ca(a.containerInfo);Y=e;do try{kg()}catch(jb){if(null===Y)throw Error(n(330));Re(Y,jb);Y=Y.nextEffect}while(null!==Y);Y=e;do try{for(var g=a,l=b;null!==Y;){var h=Y.effectTag;h&16&&Qa&&bb(Y.stateNode);if(h&128){var k=Y.alternate;if(null!==k){var p=
|
|
151
|
-
typeof p?p(null):p.current=null)}}switch(h&1038){case 2:bf(Y);Y.effectTag&=-3;break;case 6:bf(Y);Y.effectTag&=-3;cf(Y.alternate,Y);break;case 1024:Y.effectTag&=-1025;break;case 1028:Y.effectTag&=-1025;cf(Y.alternate,Y);break;case 4:cf(Y.alternate,Y);break;case 8:var D=g,x=Y,K=l;Qa?Xe(D,x,K):Ze(D,x,K);$e(x)}Y=Y.nextEffect}}catch(jb){if(null===Y)throw Error(n(330));Re(Y,jb);Y=Y.nextEffect}while(null!==Y);Da(a.containerInfo);a.current=c;Y=e;do try{for(h=d;null!==Y;){var Ha=
|
|
152
|
-
Y.alternate;k=Y;p=h;switch(k.tag){case 0:case 11:case 15:Ue(16,32,k);break;case 1:var w=k.stateNode;if(k.effectTag&4)if(null===O)w.componentDidMount();else{var r=k.elementType===k.type?O.memoizedProps:rc(k.type,O.memoizedProps);w.componentDidUpdate(r,O.memoizedState,w.__reactInternalSnapshotBeforeUpdate)}var t=k.updateQueue;null!==t&&Qc(k,t,w,p);break;case 3:var N=k.updateQueue;if(null!==N){g=null;if(null!==k.child)switch(k.child.tag){case 5:g=za(k.child.stateNode);break;
|
|
153
|
-
N,g,p)}break;case 5:var Mc=k.stateNode;null===O&&k.effectTag&4&&Wa(Mc,k.type,k.memoizedProps,k);break;case 6:break;case 4:break;case 12:break;case 13:if(Sa&&null===k.memoizedState){var
|
|
154
|
-
|
|
145
|
+
f.child=g.child,f.memoizedProps=g.memoizedProps,f.memoizedState=g.memoizedState,f.updateQueue=g.updateQueue,d=g.dependencies,f.dependencies=null===d?null:{expirationTime:d.expirationTime,firstContext:d.firstContext,responders:d.responders}),e=e.sibling;z(I,I.current&1|2,b);b=b.child;break a}c=c.sibling}}else{if(!f)if(c=ud(g),null!==c){if(b.effectTag|=64,f=!0,c=c.updateQueue,null!==c&&(b.updateQueue=c,b.effectTag|=4),Le(e,!0),null===e.tail&&"hidden"===e.tailMode&&!g.alternate){b=b.lastEffect=e.lastEffect;
|
|
146
|
+
null!==b&&(b.nextEffect=null);break}}else E()>e.tailExpiration&&1<d&&(b.effectTag|=64,f=!0,Le(e,!1),b.expirationTime=b.childExpirationTime=d-1);e.isBackwards?(g.sibling=b.child,b.child=g):(c=e.last,null!==c?c.sibling=g:b.child=g,e.last=g)}if(null!==e.tail){0===e.tailExpiration&&(e.tailExpiration=E()+500);c=e.tail;e.rendering=c;e.tail=c.sibling;e.lastEffect=b.lastEffect;c.sibling=null;e=I.current;e=f?e&1|2:e&1;z(I,e,b);b=c;break a}break;case 20:break;case 21:break;default:throw Error(n(156,b.tag));
|
|
147
|
+
}b=null}c=V;if(1===W||1!==c.childExpirationTime){e=0;for(f=c.child;null!==f;)d=f.expirationTime,g=f.childExpirationTime,d>e&&(e=d),g>e&&(e=g),f=f.sibling;c.childExpirationTime=e}if(null!==b)return b;null!==a&&0===(a.effectTag&2048)&&(null===a.firstEffect&&(a.firstEffect=V.firstEffect),null!==V.lastEffect&&(null!==a.lastEffect&&(a.lastEffect.nextEffect=V.firstEffect),a.lastEffect=V.lastEffect),1<V.effectTag&&(null!==a.lastEffect?a.lastEffect.nextEffect=V:a.firstEffect=V,a.lastEffect=V))}else{b=Me(V,
|
|
148
|
+
W);if(null!==b)return b.effectTag&=2047,b;null!==a&&(a.firstEffect=a.lastEffect=null,a.effectTag|=2048)}b=V.sibling;if(null!==b)return b;V=a}while(null!==V);X===tf&&(X=yf);return null}function $f(a){var b=a.expirationTime;a=a.childExpirationTime;return b>a?b:a}function ag(a){var b=fc();hc(99,jg.bind(null,a,b));return null}
|
|
149
|
+
function jg(a,b){do Vf();while(null!==Hf);if((T&(S|sf))!==R)throw Error(n(327));var c=a.finishedWork,d=a.finishedExpirationTime;if(null===c)return null;a.finishedWork=null;a.finishedExpirationTime=0;if(c===a.current)throw Error(n(177));a.callbackNode=null;a.callbackExpirationTime=0;a.callbackPriority=90;a.nextKnownPendingLevel=0;var e=$f(c);a.firstPendingTime=e;d<=a.lastSuspendedTime?a.firstSuspendedTime=a.lastSuspendedTime=a.nextKnownPendingLevel=0:d<=a.firstSuspendedTime&&(a.firstSuspendedTime=
|
|
150
|
+
d-1);d<=a.lastPingedTime&&(a.lastPingedTime=0);d<=a.lastExpiredTime&&(a.lastExpiredTime=0);a===U&&(V=U=null,W=0);1<c.effectTag?null!==c.lastEffect?(c.lastEffect.nextEffect=c,e=c.firstEffect):e=c:e=c.firstEffect;if(null!==e){var f=T;T|=sf;qf.current=null;Ca(a.containerInfo);Y=e;do try{kg()}catch(jb){if(null===Y)throw Error(n(330));Re(Y,jb);Y=Y.nextEffect}while(null!==Y);Y=e;do try{for(var g=a,l=b;null!==Y;){var h=Y.effectTag;h&16&&Qa&&bb(Y.stateNode);if(h&128){var k=Y.alternate;if(null!==k){var p=
|
|
151
|
+
k.ref;null!==p&&("function"===typeof p?p(null):p.current=null)}}switch(h&1038){case 2:bf(Y);Y.effectTag&=-3;break;case 6:bf(Y);Y.effectTag&=-3;cf(Y.alternate,Y);break;case 1024:Y.effectTag&=-1025;break;case 1028:Y.effectTag&=-1025;cf(Y.alternate,Y);break;case 4:cf(Y.alternate,Y);break;case 8:var D=g,x=Y,K=l;Qa?Xe(D,x,K):Ze(D,x,K);$e(x)}Y=Y.nextEffect}}catch(jb){if(null===Y)throw Error(n(330));Re(Y,jb);Y=Y.nextEffect}while(null!==Y);Da(a.containerInfo);a.current=c;Y=e;do try{for(h=d;null!==Y;){var Ha=
|
|
152
|
+
Y.effectTag;if(Ha&36){var O=Y.alternate;k=Y;p=h;switch(k.tag){case 0:case 11:case 15:Ue(16,32,k);break;case 1:var w=k.stateNode;if(k.effectTag&4)if(null===O)w.componentDidMount();else{var r=k.elementType===k.type?O.memoizedProps:rc(k.type,O.memoizedProps);w.componentDidUpdate(r,O.memoizedState,w.__reactInternalSnapshotBeforeUpdate)}var t=k.updateQueue;null!==t&&Qc(k,t,w,p);break;case 3:var N=k.updateQueue;if(null!==N){g=null;if(null!==k.child)switch(k.child.tag){case 5:g=za(k.child.stateNode);break;
|
|
153
|
+
case 1:g=k.child.stateNode}Qc(k,N,g,p)}break;case 5:var Mc=k.stateNode;null===O&&k.effectTag&4&&Wa(Mc,k.type,k.memoizedProps,k);break;case 6:break;case 4:break;case 12:break;case 13:if(Sa&&null===k.memoizedState){var Sb=k.alternate;if(null!==Sb){var le=Sb.memoizedState;if(null!==le){var me=le.dehydrated;null!==me&&yb(me)}}}break;case 19:case 17:case 20:case 21:break;default:throw Error(n(163));}}if(Ha&128){k=void 0;var Tb=Y.ref;if(null!==Tb){var v=Y.stateNode;switch(Y.tag){case 5:k=za(v);break;default:k=
|
|
154
|
+
v}"function"===typeof Tb?Tb(k):Tb.current=k}}Y=Y.nextEffect}}catch(jb){if(null===Y)throw Error(n(330));Re(Y,jb);Y=Y.nextEffect}while(null!==Y);Y=null;ac();T=f}else a.current=c;if(Gf)Gf=!1,Hf=a,If=b;else for(Y=e;null!==Y;)b=Y.nextEffect,Y.nextEffect=null,Y=b;b=a.firstPendingTime;0===b&&(nf=null);1073741823===b?a===Lf?Kf++:(Kf=0,Lf=a):Kf=0;"function"===typeof lg&&lg(c.stateNode,d);Z(a);if(kf)throw kf=!1,a=lf,lf=null,a;if((T&rf)!==R)return null;F();return null}
|
|
155
155
|
function kg(){for(;null!==Y;){var a=Y.effectTag;0!==(a&256)&&Te(Y.alternate,Y);0===(a&512)||Gf||(Gf=!0,ic(97,function(){Vf();return null}));Y=Y.nextEffect}}function Vf(){if(90!==If){var a=97<If?97:If;If=90;return hc(a,mg)}}
|
|
156
156
|
function mg(){if(null===Hf)return!1;var a=Hf;Hf=null;if((T&(S|sf))!==R)throw Error(n(331));var b=T;T|=sf;for(a=a.current.firstEffect;null!==a;){try{var c=a;if(0!==(c.effectTag&512))switch(c.tag){case 0:case 11:case 15:Ue(128,0,c),Ue(0,64,c)}}catch(d){if(null===a)throw Error(n(330));Re(a,d)}c=a.nextEffect;a.nextEffect=null;a=c}T=b;F();return!0}function ng(a,b,c){b=Ne(c,b);b=jf(a,b,1073741823);Ic(a,b);a=Nf(a,1073741823);null!==a&&Z(a)}
|
|
157
157
|
function Re(a,b){if(3===a.tag)ng(a,a,b);else for(var c=a.return;null!==c;){if(3===c.tag){ng(c,a,b);break}else if(1===c.tag){var d=c.stateNode;if("function"===typeof c.type.getDerivedStateFromError||"function"===typeof d.componentDidCatch&&(null===nf||!nf.has(d))){a=Ne(b,a);a=mf(c,a,1073741823);Ic(c,a);c=Nf(c,1073741823);null!==c&&Z(c);break}}c=c.return}}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-reconciler",
|
|
3
3
|
"description": "React package for creating custom renderers.",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.24.0",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react"
|
|
7
7
|
],
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"loose-envify": "^1.1.0",
|
|
34
34
|
"object-assign": "^4.1.1",
|
|
35
35
|
"prop-types": "^15.6.2",
|
|
36
|
-
"scheduler": "^0.
|
|
36
|
+
"scheduler": "^0.18.0"
|
|
37
37
|
},
|
|
38
38
|
"browserify": {
|
|
39
39
|
"transform": [
|