mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
Migrate Libraries/Utilities/differ/*.js to export syntax (#49332)
Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/49332 ## Motivation Modernising the RN codebase to allow for modern Flow tooling to process it. ## This diff - Migrates `Libraries/Utilities/differ/*.js` to use the export syntax. - Updates deep-imports of these files to use `.default` - Updates codegen with a compat layer - Updates the current iteration of API snapshots (intended). Changelog: [General][Breaking] - Deep imports to `Libraries/Utilities/differ/...` with `require` syntax need to be appended with '.default'. Reviewed By: yungsters Differential Revision: D69467423 fbshipit-source-id: 2e58a0b9711e9bdf5ca907a5b2252584f6fec9bc
This commit is contained in:
committed by
Facebook GitHub Bot
parent
9073817925
commit
2b30aa5cc8
+2
-2
@@ -582,7 +582,7 @@ export const __INTERNAL_VIEW_CONFIG = {
|
||||
},
|
||||
|
||||
point: {
|
||||
diff: require('react-native/Libraries/Utilities/differ/pointsDiffer'),
|
||||
diff: ((req) => 'default' in req ? req.default : req)(require('react-native/Libraries/Utilities/differ/pointsDiffer')),
|
||||
},
|
||||
},
|
||||
};
|
||||
@@ -685,7 +685,7 @@ export const __INTERNAL_VIEW_CONFIG = {
|
||||
|
||||
validAttributes: {
|
||||
startPoint: {
|
||||
diff: require('react-native/Libraries/Utilities/differ/pointsDiffer'),
|
||||
diff: ((req) => 'default' in req ? req.default : req)(require('react-native/Libraries/Utilities/differ/pointsDiffer')),
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
+2
-2
@@ -74,10 +74,10 @@ function getReactDiffProcessValue(typeAnnotation: PropTypeAnnotation) {
|
||||
throw new Error('ImageRequest should not be used in props');
|
||||
case 'PointPrimitive':
|
||||
return j.template
|
||||
.expression`{ diff: require('react-native/Libraries/Utilities/differ/pointsDiffer') }`;
|
||||
.expression`{ diff: ((req) => 'default' in req ? req.default : req)(require('react-native/Libraries/Utilities/differ/pointsDiffer')) }`;
|
||||
case 'EdgeInsetsPrimitive':
|
||||
return j.template
|
||||
.expression`{ diff: require('react-native/Libraries/Utilities/differ/insetsDiffer') }`;
|
||||
.expression`{ diff: ((req) => 'default' in req ? req.default : req)(require('react-native/Libraries/Utilities/differ/insetsDiffer')) }`;
|
||||
case 'DimensionPrimitive':
|
||||
return j.literal(true);
|
||||
default:
|
||||
|
||||
+3
-3
@@ -707,7 +707,7 @@ export const __INTERNAL_VIEW_CONFIG = {
|
||||
|
||||
validAttributes: {
|
||||
contentInset: {
|
||||
diff: require('react-native/Libraries/Utilities/differ/insetsDiffer'),
|
||||
diff: ((req) => 'default' in req ? req.default : req)(require('react-native/Libraries/Utilities/differ/insetsDiffer')),
|
||||
},
|
||||
},
|
||||
};
|
||||
@@ -907,7 +907,7 @@ export const __INTERNAL_VIEW_CONFIG = {
|
||||
},
|
||||
|
||||
point: {
|
||||
diff: require('react-native/Libraries/Utilities/differ/pointsDiffer'),
|
||||
diff: ((req) => 'default' in req ? req.default : req)(require('react-native/Libraries/Utilities/differ/pointsDiffer')),
|
||||
},
|
||||
},
|
||||
};
|
||||
@@ -1008,7 +1008,7 @@ export const __INTERNAL_VIEW_CONFIG = {
|
||||
|
||||
validAttributes: {
|
||||
startPoint: {
|
||||
diff: require('react-native/Libraries/Utilities/differ/pointsDiffer'),
|
||||
diff: ((req) => 'default' in req ? req.default : req)(require('react-native/Libraries/Utilities/differ/pointsDiffer')),
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
+5
-5
@@ -42,7 +42,7 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig =
|
||||
},
|
||||
validAttributes: {
|
||||
contentOffset: {
|
||||
diff: require('../../Utilities/differ/pointsDiffer'),
|
||||
diff: require('../../Utilities/differ/pointsDiffer').default,
|
||||
},
|
||||
decelerationRate: true,
|
||||
disableIntervalMomentum: true,
|
||||
@@ -126,10 +126,10 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig =
|
||||
canCancelContentTouches: true,
|
||||
centerContent: true,
|
||||
contentInset: {
|
||||
diff: require('../../Utilities/differ/insetsDiffer'),
|
||||
diff: require('../../Utilities/differ/insetsDiffer').default,
|
||||
},
|
||||
contentOffset: {
|
||||
diff: require('../../Utilities/differ/pointsDiffer'),
|
||||
diff: require('../../Utilities/differ/pointsDiffer').default,
|
||||
},
|
||||
contentInsetAdjustmentBehavior: true,
|
||||
decelerationRate: true,
|
||||
@@ -147,7 +147,7 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig =
|
||||
scrollEnabled: true,
|
||||
scrollEventThrottle: true,
|
||||
scrollIndicatorInsets: {
|
||||
diff: require('../../Utilities/differ/insetsDiffer'),
|
||||
diff: require('../../Utilities/differ/insetsDiffer').default,
|
||||
},
|
||||
scrollToOverflowEnabled: true,
|
||||
scrollsToTop: true,
|
||||
@@ -159,7 +159,7 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig =
|
||||
snapToOffsets: true,
|
||||
snapToStart: true,
|
||||
verticalScrollIndicatorInsets: {
|
||||
diff: require('../../Utilities/differ/insetsDiffer'),
|
||||
diff: require('../../Utilities/differ/insetsDiffer').default,
|
||||
},
|
||||
zoomScale: true,
|
||||
...ConditionallyIgnoredEventHandlers({
|
||||
|
||||
+3
-1
@@ -98,7 +98,9 @@ const RCTTextInputViewConfig = {
|
||||
fontWeight: true,
|
||||
fontVariant: true,
|
||||
// flowlint-next-line untyped-import:off
|
||||
textShadowOffset: {diff: require('../../Utilities/differ/sizesDiffer')},
|
||||
textShadowOffset: {
|
||||
diff: require('../../Utilities/differ/sizesDiffer').default,
|
||||
},
|
||||
allowFontScaling: true,
|
||||
fontStyle: true,
|
||||
textTransform: true,
|
||||
|
||||
@@ -142,7 +142,7 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig =
|
||||
validAttributes: {
|
||||
blurRadius: true,
|
||||
capInsets: {
|
||||
diff: require('../Utilities/differ/insetsDiffer'),
|
||||
diff: require('../Utilities/differ/insetsDiffer').default,
|
||||
},
|
||||
defaultSource: {
|
||||
process: require('./resolveAssetSource').default,
|
||||
|
||||
+1
-1
@@ -25,7 +25,7 @@ import memoizeOne from 'memoize-one';
|
||||
import React from 'react';
|
||||
|
||||
const StyleSheet = require('../StyleSheet/StyleSheet');
|
||||
const deepDiffer = require('../Utilities/differ/deepDiffer');
|
||||
const deepDiffer = require('../Utilities/differ/deepDiffer').default;
|
||||
const Platform = require('../Utilities/Platform');
|
||||
const invariant = require('invariant');
|
||||
|
||||
|
||||
@@ -201,13 +201,13 @@ const validAttributesForNonEventProps = {
|
||||
cursor: true,
|
||||
opacity: true,
|
||||
shadowColor: {process: require('../StyleSheet/processColor').default},
|
||||
shadowOffset: {diff: require('../Utilities/differ/sizesDiffer')},
|
||||
shadowOffset: {diff: require('../Utilities/differ/sizesDiffer').default},
|
||||
shadowOpacity: true,
|
||||
shadowRadius: true,
|
||||
needsOffscreenAlphaCompositing: true,
|
||||
overflow: true,
|
||||
shouldRasterizeIOS: true,
|
||||
transform: {diff: require('../Utilities/differ/matricesDiffer')},
|
||||
transform: {diff: require('../Utilities/differ/matricesDiffer').default},
|
||||
transformOrigin: true,
|
||||
accessibilityRole: true,
|
||||
accessibilityState: true,
|
||||
@@ -222,7 +222,7 @@ const validAttributesForNonEventProps = {
|
||||
borderWidth: true,
|
||||
borderBlockWidth: true,
|
||||
borderStyle: true,
|
||||
hitSlop: {diff: require('../Utilities/differ/insetsDiffer')},
|
||||
hitSlop: {diff: require('../Utilities/differ/insetsDiffer').default},
|
||||
collapsable: true,
|
||||
collapsableChildren: true,
|
||||
filter: {
|
||||
|
||||
+4
-4
@@ -20,10 +20,10 @@ const processBackgroundImage =
|
||||
const processColor = require('../StyleSheet/processColor').default;
|
||||
const processColorArray = require('../StyleSheet/processColorArray').default;
|
||||
const processFilter = require('../StyleSheet/processFilter').default;
|
||||
const insetsDiffer = require('../Utilities/differ/insetsDiffer');
|
||||
const matricesDiffer = require('../Utilities/differ/matricesDiffer');
|
||||
const pointsDiffer = require('../Utilities/differ/pointsDiffer');
|
||||
const sizesDiffer = require('../Utilities/differ/sizesDiffer');
|
||||
const insetsDiffer = require('../Utilities/differ/insetsDiffer').default;
|
||||
const matricesDiffer = require('../Utilities/differ/matricesDiffer').default;
|
||||
const pointsDiffer = require('../Utilities/differ/pointsDiffer').default;
|
||||
const sizesDiffer = require('../Utilities/differ/sizesDiffer').default;
|
||||
const UIManager = require('./UIManager').default;
|
||||
const nullthrows = require('nullthrows');
|
||||
|
||||
|
||||
+1
-1
@@ -63,7 +63,7 @@ module.exports = {
|
||||
},
|
||||
// TODO: Remove when React has migrated to `createAttributePayload` and `diffAttributePayloads`
|
||||
get deepDiffer(): deepDiffer {
|
||||
return require('../Utilities/differ/deepDiffer');
|
||||
return require('../Utilities/differ/deepDiffer').default;
|
||||
},
|
||||
get deepFreezeAndThrowOnMutationInDev(): deepFreezeAndThrowOnMutationInDev<
|
||||
{...} | Array<mixed>,
|
||||
|
||||
+1
-1
@@ -10,7 +10,7 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
const deepDiffer = require('../deepDiffer');
|
||||
const deepDiffer = require('../deepDiffer').default;
|
||||
|
||||
describe('deepDiffer', function () {
|
||||
it('should diff primitives of the same type', () => {
|
||||
|
||||
+1
-1
@@ -10,7 +10,7 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
const matricesDiffer = require('../matricesDiffer');
|
||||
const matricesDiffer = require('../matricesDiffer').default;
|
||||
|
||||
describe('matricesDiffer', function () {
|
||||
it('diffs matrices with single element', () => {
|
||||
|
||||
@@ -25,7 +25,7 @@ function unstable_setLogListeners(listeners: ?LogListeners) {
|
||||
/*
|
||||
* @returns {bool} true if different, false if equal
|
||||
*/
|
||||
const deepDiffer = function (
|
||||
function deepDiffer(
|
||||
one: any,
|
||||
two: any,
|
||||
maxDepthOrOptions: Options | number = -1,
|
||||
@@ -95,7 +95,7 @@ const deepDiffer = function (
|
||||
}
|
||||
}
|
||||
return false;
|
||||
};
|
||||
}
|
||||
|
||||
deepDiffer.unstable_setLogListeners = unstable_setLogListeners;
|
||||
module.exports = deepDiffer;
|
||||
export default deepDiffer;
|
||||
|
||||
@@ -25,7 +25,7 @@ const dummyInsets = {
|
||||
bottom: undefined,
|
||||
};
|
||||
|
||||
const insetsDiffer = function (one: Inset, two: Inset): boolean {
|
||||
function insetsDiffer(one: Inset, two: Inset): boolean {
|
||||
one = one || dummyInsets;
|
||||
two = two || dummyInsets;
|
||||
return (
|
||||
@@ -35,6 +35,6 @@ const insetsDiffer = function (one: Inset, two: Inset): boolean {
|
||||
one.right !== two.right ||
|
||||
one.bottom !== two.bottom)
|
||||
);
|
||||
};
|
||||
}
|
||||
|
||||
module.exports = insetsDiffer;
|
||||
export default insetsDiffer;
|
||||
|
||||
@@ -19,10 +19,7 @@
|
||||
* @param {MatrixMath.Matrix} two Second matrix.
|
||||
* @return {boolean} Whether or not the two matrices differ.
|
||||
*/
|
||||
const matricesDiffer = function (
|
||||
one: ?Array<number>,
|
||||
two: ?Array<number>,
|
||||
): boolean {
|
||||
function matricesDiffer(one: ?Array<number>, two: ?Array<number>): boolean {
|
||||
if (one === two) {
|
||||
return false;
|
||||
}
|
||||
@@ -46,6 +43,6 @@ const matricesDiffer = function (
|
||||
one[11] !== two[11] ||
|
||||
one[15] !== two[15]
|
||||
);
|
||||
};
|
||||
}
|
||||
|
||||
module.exports = matricesDiffer;
|
||||
export default matricesDiffer;
|
||||
|
||||
@@ -18,10 +18,10 @@ type Point = {
|
||||
|
||||
const dummyPoint = {x: undefined, y: undefined};
|
||||
|
||||
const pointsDiffer = function (one: ?Point, two: ?Point): boolean {
|
||||
function pointsDiffer(one: ?Point, two: ?Point): boolean {
|
||||
one = one || dummyPoint;
|
||||
two = two || dummyPoint;
|
||||
return one !== two && (one.x !== two.x || one.y !== two.y);
|
||||
};
|
||||
}
|
||||
|
||||
module.exports = pointsDiffer;
|
||||
export default pointsDiffer;
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
const dummySize = {width: undefined, height: undefined};
|
||||
type Size = {width: ?number, height: ?number};
|
||||
|
||||
const sizesDiffer = function (one: Size, two: Size): boolean {
|
||||
function sizesDiffer(one: Size, two: Size): boolean {
|
||||
const defaultedOne = one || dummySize;
|
||||
const defaultedTwo = two || dummySize;
|
||||
return (
|
||||
@@ -21,6 +21,6 @@ const sizesDiffer = function (one: Size, two: Size): boolean {
|
||||
(defaultedOne.width !== defaultedTwo.width ||
|
||||
defaultedOne.height !== defaultedTwo.height)
|
||||
);
|
||||
};
|
||||
}
|
||||
|
||||
module.exports = sizesDiffer;
|
||||
export default sizesDiffer;
|
||||
|
||||
@@ -8502,13 +8502,13 @@ declare module.exports: defineLazyObjectProperty;
|
||||
|
||||
exports[`public API should not change unintentionally Libraries/Utilities/differ/deepDiffer.js 1`] = `
|
||||
"type Options = { +unsafelyIgnoreFunctions?: boolean };
|
||||
declare const deepDiffer: (
|
||||
declare function deepDiffer(
|
||||
one: any,
|
||||
two: any,
|
||||
maxDepthOrOptions: Options | number,
|
||||
maybeOptions?: Options
|
||||
) => boolean;
|
||||
declare module.exports: deepDiffer;
|
||||
): boolean;
|
||||
declare export default typeof deepDiffer;
|
||||
"
|
||||
`;
|
||||
|
||||
@@ -8520,17 +8520,17 @@ exports[`public API should not change unintentionally Libraries/Utilities/differ
|
||||
bottom: ?number,
|
||||
...
|
||||
};
|
||||
declare const insetsDiffer: (one: Inset, two: Inset) => boolean;
|
||||
declare module.exports: insetsDiffer;
|
||||
declare function insetsDiffer(one: Inset, two: Inset): boolean;
|
||||
declare export default typeof insetsDiffer;
|
||||
"
|
||||
`;
|
||||
|
||||
exports[`public API should not change unintentionally Libraries/Utilities/differ/matricesDiffer.js 1`] = `
|
||||
"declare const matricesDiffer: (
|
||||
"declare function matricesDiffer(
|
||||
one: ?Array<number>,
|
||||
two: ?Array<number>
|
||||
) => boolean;
|
||||
declare module.exports: matricesDiffer;
|
||||
): boolean;
|
||||
declare export default typeof matricesDiffer;
|
||||
"
|
||||
`;
|
||||
|
||||
@@ -8540,15 +8540,15 @@ exports[`public API should not change unintentionally Libraries/Utilities/differ
|
||||
y: ?number,
|
||||
...
|
||||
};
|
||||
declare const pointsDiffer: (one: ?Point, two: ?Point) => boolean;
|
||||
declare module.exports: pointsDiffer;
|
||||
declare function pointsDiffer(one: ?Point, two: ?Point): boolean;
|
||||
declare export default typeof pointsDiffer;
|
||||
"
|
||||
`;
|
||||
|
||||
exports[`public API should not change unintentionally Libraries/Utilities/differ/sizesDiffer.js 1`] = `
|
||||
"type Size = { width: ?number, height: ?number };
|
||||
declare const sizesDiffer: (one: Size, two: Size) => boolean;
|
||||
declare module.exports: sizesDiffer;
|
||||
declare function sizesDiffer(one: Size, two: Size): boolean;
|
||||
declare export default typeof sizesDiffer;
|
||||
"
|
||||
`;
|
||||
|
||||
|
||||
@@ -18,7 +18,8 @@ import type {
|
||||
|
||||
const React = require('react');
|
||||
const ReactNative = require('react-native');
|
||||
const deepDiffer = require('react-native/Libraries/Utilities/differ/deepDiffer');
|
||||
const deepDiffer =
|
||||
require('react-native/Libraries/Utilities/differ/deepDiffer').default;
|
||||
|
||||
const {Image, LayoutAnimation, StyleSheet, Text, View} = ReactNative;
|
||||
const {TestModule} = ReactNative.NativeModules;
|
||||
|
||||
Reference in New Issue
Block a user