From b003211b63c1f9be320037ff815f827acec30133 Mon Sep 17 00:00:00 2001 From: Igor Klemenski Date: Wed, 7 Apr 2021 17:57:40 -0700 Subject: [PATCH 1/5] Integrate 3/18 nightly RN build. --- .../react-native-win32-tester/overrides.json | 4 +- .../react-native-win32-tester/package.json | 4 +- .../src/js/utils/RNTesterList.win32.js | 15 + .../react-native-win32/.flowconfig | 1 + .../react-native-win32/overrides.json | 6 +- .../react-native-win32/package.json | 4 +- .../Libraries/Utilities/Dimensions.win32.js | 12 +- .../tester/overrides.json | 4 +- .../@react-native-windows/tester/package.json | 4 +- .../src/js/utils/RNTesterList.windows.js | 26 +- .../@react-native/repo-config/overrides.json | 2 +- .../Accessibility/AccessibilityExample.js | 2 +- .../js/examples/Button/ButtonExample.js | 23 ++ .../examples/Dimensions/DimensionsExample.js | 20 +- .../FlatList/FlatList-onEndReached.js | 28 ++ .../FlatList-onViewableItemsChanged.js | 38 +++ .../FlatList/FlatList-withSeparators.js | 27 ++ .../js/examples/FlatList/FlatListExamples.js | 312 ++++++++++++++++++ .../examples/ScrollView/ScrollViewExample.js | 134 +++++--- .../SectionList-onViewableItemsChanged.js | 12 +- .../SectionList/SectionListExamples.js | 47 ++- .../tester/js/utils/RNTesterList.android.js | 15 + .../tester/js/utils/RNTesterList.ios.js | 15 + packages/@react-native/tester/overrides.json | 4 +- packages/e2e-test-app/package.json | 2 +- packages/integration-test-app/package.json | 2 +- packages/node-rnw-rpc/package.json | 2 +- packages/playground/package.json | 2 +- packages/sample-apps/package.json | 2 +- vnext/.flowconfig | 1 + vnext/ReactCommon/ReactCommon.vcxproj | 4 +- .../react/renderer/mapbuffer/MapBuffer.cpp | 135 -------- vnext/ReactCommon/Yoga.cpp | 239 ++++++-------- vnext/overrides.json | 22 +- vnext/package.json | 4 +- .../Libraries/Components/Button.windows.js | 22 +- .../RefreshControl/RefreshControl.windows.js | 10 +- .../Pressability/Pressability.windows.js | 18 +- yarn.lock | 8 +- 39 files changed, 816 insertions(+), 416 deletions(-) create mode 100644 packages/@react-native/tester/js/examples/FlatList/FlatList-onEndReached.js create mode 100644 packages/@react-native/tester/js/examples/FlatList/FlatList-onViewableItemsChanged.js create mode 100644 packages/@react-native/tester/js/examples/FlatList/FlatList-withSeparators.js create mode 100644 packages/@react-native/tester/js/examples/FlatList/FlatListExamples.js delete mode 100644 vnext/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/mapbuffer/MapBuffer.cpp diff --git a/packages/@office-iss/react-native-win32-tester/overrides.json b/packages/@office-iss/react-native-win32-tester/overrides.json index 30708ad5239..2bcda44146c 100644 --- a/packages/@office-iss/react-native-win32-tester/overrides.json +++ b/packages/@office-iss/react-native-win32-tester/overrides.json @@ -5,7 +5,7 @@ "excludePatterns": [ "src/js/examples-win32/**" ], - "baseVersion": "0.0.0-d477f8011", + "baseVersion": "0.0.0-cfb5b5e20", "overrides": [ { "type": "patch", @@ -37,7 +37,7 @@ "type": "derived", "file": "src/js/utils/RNTesterList.win32.js", "baseFile": "packages/rn-tester/js/utils/RNTesterList.android.js", - "baseHash": "58b0acccf835104dec310ced6f7149739e4e06ff" + "baseHash": "94f48ba9b8613e1e04177ea43f4f1d411bc3cd0b" }, { "type": "patch", diff --git a/packages/@office-iss/react-native-win32-tester/package.json b/packages/@office-iss/react-native-win32-tester/package.json index 0765e4502d2..a7e8746032e 100644 --- a/packages/@office-iss/react-native-win32-tester/package.json +++ b/packages/@office-iss/react-native-win32-tester/package.json @@ -15,7 +15,7 @@ }, "peerDependencies": { "@office-iss/react-native-win32": "^0.0.0-canary.85", - "react-native": "0.0.0-d477f8011" + "react-native": "0.0.0-cfb5b5e20" }, "devDependencies": { "@office-iss/react-native-win32": "^0.0.0-canary.85", @@ -24,7 +24,7 @@ "@types/node": "^14.14.22", "eslint": "7.12.0", "just-scripts": "^1.3.3", - "react-native": "0.0.0-d477f8011", + "react-native": "0.0.0-cfb5b5e20", "react-native-platform-override": "^1.4.13", "typescript": "^3.8.3" } diff --git a/packages/@office-iss/react-native-win32-tester/src/js/utils/RNTesterList.win32.js b/packages/@office-iss/react-native-win32-tester/src/js/utils/RNTesterList.win32.js index 13c3ebb40e2..1efff3c9377 100644 --- a/packages/@office-iss/react-native-win32-tester/src/js/utils/RNTesterList.win32.js +++ b/packages/@office-iss/react-native-win32-tester/src/js/utils/RNTesterList.win32.js @@ -29,6 +29,21 @@ const ComponentExamples: Array = [ category: 'ListView', module: require('../examples/FlatList/FlatListExample'), }, + { + key: 'FlatList-withSeparators', + module: require('../examples/FlatList/FlatList-withSeparators'), + category: 'ListView', + }, + { + key: 'FlatList-onViewableItemsChanged', + module: require('../examples/FlatList/FlatList-onViewableItemsChanged'), + category: 'ListView', + }, + { + key: 'FlatList-onEndReached', + module: require('../examples/FlatList/FlatList-onEndReached'), + category: 'ListView', + }, { key: 'ImageExample', category: 'Basic', diff --git a/packages/@office-iss/react-native-win32/.flowconfig b/packages/@office-iss/react-native-win32/.flowconfig index dbf24d51def..942bd21e94e 100644 --- a/packages/@office-iss/react-native-win32/.flowconfig +++ b/packages/@office-iss/react-native-win32/.flowconfig @@ -89,6 +89,7 @@ suppress_type=$FlowFixMeState suppress_type=$FlowFixMeEmpty experimental.abstract_locations=true +experimental.new_signatures=true [lints] sketchy-null-number=warn diff --git a/packages/@office-iss/react-native-win32/overrides.json b/packages/@office-iss/react-native-win32/overrides.json index 09857f61da2..4cac06b5f20 100644 --- a/packages/@office-iss/react-native-win32/overrides.json +++ b/packages/@office-iss/react-native-win32/overrides.json @@ -3,13 +3,13 @@ ".flowconfig", "src/**" ], - "baseVersion": "0.0.0-d477f8011", + "baseVersion": "0.0.0-cfb5b5e20", "overrides": [ { "type": "derived", "file": ".flowconfig", "baseFile": ".flowconfig", - "baseHash": "f4da69b0623292df17b4cb39406edf68fecabe9d" + "baseHash": "718336b53dd84d09a5331cc4c6a3726114510030" }, { "type": "derived", @@ -376,7 +376,7 @@ "type": "derived", "file": "src/Libraries/Utilities/Dimensions.win32.js", "baseFile": "Libraries/Utilities/Dimensions.js", - "baseHash": "33e55564b8716ff243e36de554cdcd90fccbe7e3" + "baseHash": "cc2a5b68d9207ece63b461f875ea91b7d1949cb6" }, { "type": "platform", diff --git a/packages/@office-iss/react-native-win32/package.json b/packages/@office-iss/react-native-win32/package.json index 465a35beced..572b37da323 100644 --- a/packages/@office-iss/react-native-win32/package.json +++ b/packages/@office-iss/react-native-win32/package.json @@ -66,14 +66,14 @@ "just-scripts": "^1.3.3", "prettier": "1.19.1", "react": "17.0.1", - "react-native": "0.0.0-d477f8011", + "react-native": "0.0.0-cfb5b5e20", "react-native-platform-override": "^1.4.13", "react-shallow-renderer": "16.14.1", "typescript": "^3.8.3" }, "peerDependencies": { "react": "17.0.1", - "react-native": "0.0.0-d477f8011" + "react-native": "0.0.0-cfb5b5e20" }, "beachball": { "defaultNpmTag": "canary", diff --git a/packages/@office-iss/react-native-win32/src/Libraries/Utilities/Dimensions.win32.js b/packages/@office-iss/react-native-win32/src/Libraries/Utilities/Dimensions.win32.js index 73080b63ea4..1679a302914 100644 --- a/packages/@office-iss/react-native-win32/src/Libraries/Utilities/Dimensions.win32.js +++ b/packages/@office-iss/react-native-win32/src/Libraries/Utilities/Dimensions.win32.js @@ -6,6 +6,10 @@ * @flow */ + import { + type EventSubscription, +} from '../vendor/emitter/EventEmitter'; + class Dimensions { static get(dim: string): Object { throw new Error( @@ -19,12 +23,18 @@ class Dimensions { ); } - static addEventListener(type: 'change', handler: Function) { + static addEventListener( + type: 'change', + handler: Function + ): EventSubscription { throw new Error( 'Having a global Dimensions object is too simplistic for Win32, so this API does not work', ); } + /** + * @deprecated Use `remove` on the EventSubscription from `addEventListener`. + */ static removeEventListener(type: 'change', handler: Function) { throw new Error( 'Having a global Dimensions object is too simplistic for Win32, so this API does not work', diff --git a/packages/@react-native-windows/tester/overrides.json b/packages/@react-native-windows/tester/overrides.json index 7810048e43b..34ab72d5f8b 100644 --- a/packages/@react-native-windows/tester/overrides.json +++ b/packages/@react-native-windows/tester/overrides.json @@ -5,7 +5,7 @@ "excludePatterns": [ "src/js/examples-win/**" ], - "baseVersion": "0.0.0-d477f8011", + "baseVersion": "0.0.0-cfb5b5e20", "overrides": [ { "type": "patch", @@ -45,7 +45,7 @@ "type": "derived", "file": "src/js/utils/RNTesterList.windows.js", "baseFile": "packages/rn-tester/js/utils/RNTesterList.android.js", - "baseHash": "58b0acccf835104dec310ced6f7149739e4e06ff" + "baseHash": "94f48ba9b8613e1e04177ea43f4f1d411bc3cd0b" } ] } \ No newline at end of file diff --git a/packages/@react-native-windows/tester/package.json b/packages/@react-native-windows/tester/package.json index 2819d0981f2..d5d4b3e09dc 100644 --- a/packages/@react-native-windows/tester/package.json +++ b/packages/@react-native-windows/tester/package.json @@ -14,7 +14,7 @@ "@react-native/tester": "0.0.1" }, "peerDependencies": { - "react-native": "0.0.0-d477f8011", + "react-native": "0.0.0-cfb5b5e20", "react-native-windows": "^0.0.0-canary.287" }, "devDependencies": { @@ -23,7 +23,7 @@ "@types/node": "^14.14.22", "eslint": "7.12.0", "just-scripts": "^1.3.3", - "react-native": "0.0.0-d477f8011", + "react-native": "0.0.0-cfb5b5e20", "react-native-platform-override": "^1.4.13", "react-native-windows": "^0.0.0-canary.287", "typescript": "^3.8.3" diff --git a/packages/@react-native-windows/tester/src/js/utils/RNTesterList.windows.js b/packages/@react-native-windows/tester/src/js/utils/RNTesterList.windows.js index a1bf577674e..583a90f2e48 100644 --- a/packages/@react-native-windows/tester/src/js/utils/RNTesterList.windows.js +++ b/packages/@react-native-windows/tester/src/js/utils/RNTesterList.windows.js @@ -26,9 +26,24 @@ const ComponentExamples: Array = [ module: require('../examples/FlatList/FlatListExample'), }, { - key: 'DatePickerExample', - category: 'UI', - module: require('../examples-win/DatePicker/DatePickerExample'), + key: 'FlatList-withSeparators', + module: require('../examples/FlatList/FlatList-withSeparators'), + category: 'ListView', + }, + { + key: 'FlatList-onViewableItemsChanged', + module: require('../examples/FlatList/FlatList-onViewableItemsChanged'), + category: 'ListView', + }, + { + key: 'FlatList-onEndReached', + module: require('../examples/FlatList/FlatList-onEndReached'), + category: 'ListView', + }, + { + key: 'ImageExample', + category: 'Basic', + module: require('../examples/Image/ImageExample'), }, { key: 'FastTextExample', @@ -45,11 +60,6 @@ const ComponentExamples: Array = [ category: 'UI', module: require('../examples-win/Glyph/GlyphExample'), }, - { - key: 'ImageExample', - category: 'Basic', - module: require('../examples/Image/ImageExample'), - }, // { // key: 'ModalExample', // category: 'UI', diff --git a/packages/@react-native/repo-config/overrides.json b/packages/@react-native/repo-config/overrides.json index e830c7a156c..2df7258dfeb 100644 --- a/packages/@react-native/repo-config/overrides.json +++ b/packages/@react-native/repo-config/overrides.json @@ -1,5 +1,5 @@ { - "baseVersion": "0.0.0-d477f8011", + "baseVersion": "0.0.0-cfb5b5e20", "overrides": [ { "type": "copy", diff --git a/packages/@react-native/tester/js/examples/Accessibility/AccessibilityExample.js b/packages/@react-native/tester/js/examples/Accessibility/AccessibilityExample.js index 22b2c0710eb..d13b53db474 100644 --- a/packages/@react-native/tester/js/examples/Accessibility/AccessibilityExample.js +++ b/packages/@react-native/tester/js/examples/Accessibility/AccessibilityExample.js @@ -716,7 +716,7 @@ class SetAccessibilityFocusExample extends React.Component<{}> { const onClose = () => { if (myRef && myRef.current) { - AccessibilityInfo.sendAccessiblityEvent_unstable( + AccessibilityInfo.sendAccessibilityEvent_unstable( myRef.current, 'focus', ); diff --git a/packages/@react-native/tester/js/examples/Button/ButtonExample.js b/packages/@react-native/tester/js/examples/Button/ButtonExample.js index c15a4515895..f3b3e057832 100644 --- a/packages/@react-native/tester/js/examples/Button/ButtonExample.js +++ b/packages/@react-native/tester/js/examples/Button/ButtonExample.js @@ -174,6 +174,29 @@ exports.examples = [ ); }, }, + { + title: 'Button with accessibilityState={{disabled: true}}', + description: ('Note: This prop will announce on TalkBack that the button is disabled. ' + + 'The "disabled" prop has higher precedence on the state of the component': string), + render: function(): React.Node { + return ( + + {theme => { + return ( +