Forked RN renderers for FB and OSS (52afbe0...0887c7d)
Reviewed By: fkgozali Differential Revision: D7658727 fbshipit-source-id: 2fdd30694b169d180b40bc1059ecc297b07cd18d
This commit is contained in:
Родитель
2ad0a92d38
Коммит
908e8850b9
|
@ -1 +1 @@
|
||||||
52afbe0ebb6fca0fe480e77c6fa8482870ddb2c9
|
0887c7d56cb9b83f36dcb490b4245d7bc33bda1f
|
|
@ -5,7 +5,6 @@
|
||||||
* LICENSE file in the root directory of this source tree.
|
* LICENSE file in the root directory of this source tree.
|
||||||
*
|
*
|
||||||
* @noflow
|
* @noflow
|
||||||
* @providesModule ReactFabric-dev
|
|
||||||
* @preventMunge
|
* @preventMunge
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -2392,7 +2391,7 @@ var injection$2 = {
|
||||||
|
|
||||||
// TODO: this is special because it gets imported during build.
|
// TODO: this is special because it gets imported during build.
|
||||||
|
|
||||||
var ReactVersion = "16.3.1";
|
var ReactVersion = "16.3.2";
|
||||||
|
|
||||||
// Modules provided by RN:
|
// Modules provided by RN:
|
||||||
var emptyObject$1 = {};
|
var emptyObject$1 = {};
|
||||||
|
@ -3387,6 +3386,15 @@ function getComponentName(fiber) {
|
||||||
case REACT_RETURN_TYPE:
|
case REACT_RETURN_TYPE:
|
||||||
return "ReactReturn";
|
return "ReactReturn";
|
||||||
}
|
}
|
||||||
|
if (typeof type === "object" && type !== null) {
|
||||||
|
switch (type.$$typeof) {
|
||||||
|
case REACT_FORWARD_REF_TYPE:
|
||||||
|
var functionName = type.render.displayName || type.render.name || "";
|
||||||
|
return functionName !== ""
|
||||||
|
? "ForwardRef(" + functionName + ")"
|
||||||
|
: "ForwardRef";
|
||||||
|
}
|
||||||
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4735,6 +4743,7 @@ var shouldIgnoreFiber = function(fiber) {
|
||||||
case Fragment:
|
case Fragment:
|
||||||
case ContextProvider:
|
case ContextProvider:
|
||||||
case ContextConsumer:
|
case ContextConsumer:
|
||||||
|
case Mode:
|
||||||
return true;
|
return true;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
|
@ -12377,8 +12386,19 @@ var ReactFiberScheduler = function(config) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function computeInteractiveExpiration(currentTime) {
|
function computeInteractiveExpiration(currentTime) {
|
||||||
|
var expirationMs = void 0;
|
||||||
|
// We intentionally set a higher expiration time for interactive updates in
|
||||||
|
// dev than in production.
|
||||||
|
// If the main thread is being blocked so long that you hit the expiration,
|
||||||
|
// it's a problem that could be solved with better scheduling.
|
||||||
|
// People will be more likely to notice this and fix it with the long
|
||||||
|
// expiration time in development.
|
||||||
|
// In production we opt for better UX at the risk of masking scheduling
|
||||||
|
// problems, by expiring fast.
|
||||||
|
{
|
||||||
// Should complete within ~500ms. 600ms max.
|
// Should complete within ~500ms. 600ms max.
|
||||||
var expirationMs = 500;
|
expirationMs = 500;
|
||||||
|
}
|
||||||
var bucketSizeMs = 100;
|
var bucketSizeMs = 100;
|
||||||
return computeExpirationBucket(currentTime, expirationMs, bucketSizeMs);
|
return computeExpirationBucket(currentTime, expirationMs, bucketSizeMs);
|
||||||
}
|
}
|
|
@ -5,7 +5,6 @@
|
||||||
* LICENSE file in the root directory of this source tree.
|
* LICENSE file in the root directory of this source tree.
|
||||||
*
|
*
|
||||||
* @noflow
|
* @noflow
|
||||||
* @providesModule ReactFabric-prod
|
|
||||||
* @preventMunge
|
* @preventMunge
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -1242,6 +1241,14 @@ function getComponentName(fiber) {
|
||||||
case REACT_RETURN_TYPE:
|
case REACT_RETURN_TYPE:
|
||||||
return "ReactReturn";
|
return "ReactReturn";
|
||||||
}
|
}
|
||||||
|
if ("object" === typeof fiber && null !== fiber)
|
||||||
|
switch (fiber.$$typeof) {
|
||||||
|
case REACT_FORWARD_REF_TYPE:
|
||||||
|
return (
|
||||||
|
(fiber = fiber.render.displayName || fiber.render.name || ""),
|
||||||
|
"" !== fiber ? "ForwardRef(" + fiber + ")" : "ForwardRef"
|
||||||
|
);
|
||||||
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
function isFiberMountedImpl(fiber) {
|
function isFiberMountedImpl(fiber) {
|
||||||
|
@ -2753,15 +2760,17 @@ function ChildReconciler(shouldTrackSideEffects) {
|
||||||
currentFirstChild,
|
currentFirstChild,
|
||||||
newChild,
|
newChild,
|
||||||
expirationTime
|
expirationTime
|
||||||
)))
|
)),
|
||||||
|
(currentFirstChild["return"] = returnFiber),
|
||||||
|
(returnFiber = currentFirstChild))
|
||||||
: (deleteRemainingChildren(returnFiber, currentFirstChild),
|
: (deleteRemainingChildren(returnFiber, currentFirstChild),
|
||||||
(currentFirstChild = createFiberFromText(
|
(currentFirstChild = createFiberFromText(
|
||||||
newChild,
|
newChild,
|
||||||
returnFiber.mode,
|
returnFiber.mode,
|
||||||
expirationTime
|
expirationTime
|
||||||
))),
|
)),
|
||||||
(currentFirstChild["return"] = returnFiber),
|
(currentFirstChild["return"] = returnFiber),
|
||||||
(returnFiber = currentFirstChild),
|
(returnFiber = currentFirstChild)),
|
||||||
placeSingleChild(returnFiber)
|
placeSingleChild(returnFiber)
|
||||||
);
|
);
|
||||||
if (isArray$1(newChild))
|
if (isArray$1(newChild))
|
||||||
|
@ -4768,7 +4777,7 @@ function ReactFiberScheduler(config) {
|
||||||
? isCommitting ? 1 : nextRenderExpirationTime
|
? isCommitting ? 1 : nextRenderExpirationTime
|
||||||
: fiber.mode & 1
|
: fiber.mode & 1
|
||||||
? isBatchingInteractiveUpdates
|
? isBatchingInteractiveUpdates
|
||||||
? 10 * ((((recalculateCurrentTime() + 50) / 10) | 0) + 1)
|
? 10 * ((((recalculateCurrentTime() + 15) / 10) | 0) + 1)
|
||||||
: 25 * ((((recalculateCurrentTime() + 500) / 25) | 0) + 1)
|
: 25 * ((((recalculateCurrentTime() + 500) / 25) | 0) + 1)
|
||||||
: 1;
|
: 1;
|
||||||
isBatchingInteractiveUpdates &&
|
isBatchingInteractiveUpdates &&
|
||||||
|
@ -5856,7 +5865,7 @@ ReactFabricRenderer.injectIntoDevTools({
|
||||||
findFiberByHostInstance: getInstanceFromTag,
|
findFiberByHostInstance: getInstanceFromTag,
|
||||||
getInspectorDataForViewTag: getInspectorDataForViewTag,
|
getInspectorDataForViewTag: getInspectorDataForViewTag,
|
||||||
bundleType: 0,
|
bundleType: 0,
|
||||||
version: "16.3.1",
|
version: "16.3.2",
|
||||||
rendererPackageName: "react-native-renderer"
|
rendererPackageName: "react-native-renderer"
|
||||||
});
|
});
|
||||||
var ReactFabric$2 = Object.freeze({ default: ReactFabric }),
|
var ReactFabric$2 = Object.freeze({ default: ReactFabric }),
|
|
@ -5,7 +5,6 @@
|
||||||
* LICENSE file in the root directory of this source tree.
|
* LICENSE file in the root directory of this source tree.
|
||||||
*
|
*
|
||||||
* @noflow
|
* @noflow
|
||||||
* @providesModule ReactNativeRenderer-dev
|
|
||||||
* @preventMunge
|
* @preventMunge
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -2773,7 +2772,7 @@ function createPortal(
|
||||||
|
|
||||||
// TODO: this is special because it gets imported during build.
|
// TODO: this is special because it gets imported during build.
|
||||||
|
|
||||||
var ReactVersion = "16.3.1";
|
var ReactVersion = "16.3.2";
|
||||||
|
|
||||||
var describeComponentFrame = function(name, source, ownerName) {
|
var describeComponentFrame = function(name, source, ownerName) {
|
||||||
return (
|
return (
|
||||||
|
@ -2808,6 +2807,15 @@ function getComponentName(fiber) {
|
||||||
case REACT_RETURN_TYPE:
|
case REACT_RETURN_TYPE:
|
||||||
return "ReactReturn";
|
return "ReactReturn";
|
||||||
}
|
}
|
||||||
|
if (typeof type === "object" && type !== null) {
|
||||||
|
switch (type.$$typeof) {
|
||||||
|
case REACT_FORWARD_REF_TYPE:
|
||||||
|
var functionName = type.render.displayName || type.render.name || "";
|
||||||
|
return functionName !== ""
|
||||||
|
? "ForwardRef(" + functionName + ")"
|
||||||
|
: "ForwardRef";
|
||||||
|
}
|
||||||
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -5071,6 +5079,7 @@ var shouldIgnoreFiber = function(fiber) {
|
||||||
case Fragment:
|
case Fragment:
|
||||||
case ContextProvider:
|
case ContextProvider:
|
||||||
case ContextConsumer:
|
case ContextConsumer:
|
||||||
|
case Mode:
|
||||||
return true;
|
return true;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
|
@ -12747,8 +12756,19 @@ var ReactFiberScheduler = function(config) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function computeInteractiveExpiration(currentTime) {
|
function computeInteractiveExpiration(currentTime) {
|
||||||
|
var expirationMs = void 0;
|
||||||
|
// We intentionally set a higher expiration time for interactive updates in
|
||||||
|
// dev than in production.
|
||||||
|
// If the main thread is being blocked so long that you hit the expiration,
|
||||||
|
// it's a problem that could be solved with better scheduling.
|
||||||
|
// People will be more likely to notice this and fix it with the long
|
||||||
|
// expiration time in development.
|
||||||
|
// In production we opt for better UX at the risk of masking scheduling
|
||||||
|
// problems, by expiring fast.
|
||||||
|
{
|
||||||
// Should complete within ~500ms. 600ms max.
|
// Should complete within ~500ms. 600ms max.
|
||||||
var expirationMs = 500;
|
expirationMs = 500;
|
||||||
|
}
|
||||||
var bucketSizeMs = 100;
|
var bucketSizeMs = 100;
|
||||||
return computeExpirationBucket(currentTime, expirationMs, bucketSizeMs);
|
return computeExpirationBucket(currentTime, expirationMs, bucketSizeMs);
|
||||||
}
|
}
|
|
@ -5,7 +5,6 @@
|
||||||
* LICENSE file in the root directory of this source tree.
|
* LICENSE file in the root directory of this source tree.
|
||||||
*
|
*
|
||||||
* @noflow
|
* @noflow
|
||||||
* @providesModule ReactNativeRenderer-prod
|
|
||||||
* @preventMunge
|
* @preventMunge
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -1172,6 +1171,14 @@ function getComponentName(fiber) {
|
||||||
case REACT_RETURN_TYPE:
|
case REACT_RETURN_TYPE:
|
||||||
return "ReactReturn";
|
return "ReactReturn";
|
||||||
}
|
}
|
||||||
|
if ("object" === typeof fiber && null !== fiber)
|
||||||
|
switch (fiber.$$typeof) {
|
||||||
|
case REACT_FORWARD_REF_TYPE:
|
||||||
|
return (
|
||||||
|
(fiber = fiber.render.displayName || fiber.render.name || ""),
|
||||||
|
"" !== fiber ? "ForwardRef(" + fiber + ")" : "ForwardRef"
|
||||||
|
);
|
||||||
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
function getStackAddendumByWorkInProgressFiber(workInProgress) {
|
function getStackAddendumByWorkInProgressFiber(workInProgress) {
|
||||||
|
@ -3009,15 +3016,17 @@ function ChildReconciler(shouldTrackSideEffects) {
|
||||||
currentFirstChild,
|
currentFirstChild,
|
||||||
newChild,
|
newChild,
|
||||||
expirationTime
|
expirationTime
|
||||||
)))
|
)),
|
||||||
|
(currentFirstChild["return"] = returnFiber),
|
||||||
|
(returnFiber = currentFirstChild))
|
||||||
: (deleteRemainingChildren(returnFiber, currentFirstChild),
|
: (deleteRemainingChildren(returnFiber, currentFirstChild),
|
||||||
(currentFirstChild = createFiberFromText(
|
(currentFirstChild = createFiberFromText(
|
||||||
newChild,
|
newChild,
|
||||||
returnFiber.mode,
|
returnFiber.mode,
|
||||||
expirationTime
|
expirationTime
|
||||||
))),
|
)),
|
||||||
(currentFirstChild["return"] = returnFiber),
|
(currentFirstChild["return"] = returnFiber),
|
||||||
(returnFiber = currentFirstChild),
|
(returnFiber = currentFirstChild)),
|
||||||
placeSingleChild(returnFiber)
|
placeSingleChild(returnFiber)
|
||||||
);
|
);
|
||||||
if (isArray$1(newChild))
|
if (isArray$1(newChild))
|
||||||
|
@ -5166,7 +5175,7 @@ function ReactFiberScheduler(config) {
|
||||||
? isCommitting ? 1 : nextRenderExpirationTime
|
? isCommitting ? 1 : nextRenderExpirationTime
|
||||||
: fiber.mode & 1
|
: fiber.mode & 1
|
||||||
? isBatchingInteractiveUpdates
|
? isBatchingInteractiveUpdates
|
||||||
? 10 * ((((recalculateCurrentTime() + 50) / 10) | 0) + 1)
|
? 10 * ((((recalculateCurrentTime() + 15) / 10) | 0) + 1)
|
||||||
: 25 * ((((recalculateCurrentTime() + 500) / 25) | 0) + 1)
|
: 25 * ((((recalculateCurrentTime() + 500) / 25) | 0) + 1)
|
||||||
: 1;
|
: 1;
|
||||||
isBatchingInteractiveUpdates &&
|
isBatchingInteractiveUpdates &&
|
||||||
|
@ -6375,7 +6384,7 @@ NativeRenderer.injectIntoDevTools({
|
||||||
findFiberByHostInstance: getInstanceFromTag,
|
findFiberByHostInstance: getInstanceFromTag,
|
||||||
getInspectorDataForViewTag: getInspectorDataForViewTag,
|
getInspectorDataForViewTag: getInspectorDataForViewTag,
|
||||||
bundleType: 0,
|
bundleType: 0,
|
||||||
version: "16.3.1",
|
version: "16.3.2",
|
||||||
rendererPackageName: "react-native-renderer"
|
rendererPackageName: "react-native-renderer"
|
||||||
});
|
});
|
||||||
var ReactNativeRenderer$2 = Object.freeze({ default: ReactNativeRenderer }),
|
var ReactNativeRenderer$2 = Object.freeze({ default: ReactNativeRenderer }),
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -77,6 +77,11 @@ type SecretInternalsType = {
|
||||||
// And how much information to fill in for the above types.
|
// And how much information to fill in for the above types.
|
||||||
};
|
};
|
||||||
|
|
||||||
|
type SecretInternalsFabricType = {
|
||||||
|
NativeMethodsMixin: NativeMethodsMixinType,
|
||||||
|
ReactNativeComponentTree: any,
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Flat ReactNative renderer bundles are too big for Flow to parse efficiently.
|
* Flat ReactNative renderer bundles are too big for Flow to parse efficiently.
|
||||||
* Provide minimal Flow typing for the high-level RN API and call it a day.
|
* Provide minimal Flow typing for the high-level RN API and call it a day.
|
||||||
|
@ -106,5 +111,5 @@ export type ReactFabricType = {
|
||||||
): any,
|
): any,
|
||||||
unmountComponentAtNode(containerTag: number): any,
|
unmountComponentAtNode(containerTag: number): any,
|
||||||
|
|
||||||
__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED: SecretInternalsType,
|
__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED: SecretInternalsFabricType,
|
||||||
};
|
};
|
||||||
|
|
|
@ -142,7 +142,7 @@
|
||||||
"react-native": "local-cli/wrong-react-native.js"
|
"react-native": "local-cli/wrong-react-native.js"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"react": "16.3.1"
|
"react": "16.3.2"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"absolute-path": "^0.0.0",
|
"absolute-path": "^0.0.0",
|
||||||
|
@ -210,8 +210,8 @@
|
||||||
"jest": "23.0.0-alpha.4",
|
"jest": "23.0.0-alpha.4",
|
||||||
"jest-junit": "3.6.0",
|
"jest-junit": "3.6.0",
|
||||||
"prettier": "1.9.1",
|
"prettier": "1.9.1",
|
||||||
"react": "16.3.1",
|
"react": "16.3.2",
|
||||||
"react-test-renderer": "16.3.1",
|
"react-test-renderer": "16.3.2",
|
||||||
"shelljs": "^0.7.8",
|
"shelljs": "^0.7.8",
|
||||||
"sinon": "^2.2.0"
|
"sinon": "^2.2.0"
|
||||||
}
|
}
|
||||||
|
|
Загрузка…
Ссылка в новой задаче