@office-iss/react-native-win32 0.72.8 → 0.73.0-preview.2
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/.flowconfig +15 -5
- package/CHANGELOG.json +530 -101
- package/CHANGELOG.md +213 -56
- package/IntegrationTests/PromiseTest.js +1 -0
- package/IntegrationTests/websocket_integration_test_server.js +1 -1
- package/Libraries/Animated/Animated.js +1 -1
- package/Libraries/Animated/AnimatedImplementation.js +1 -1
- package/Libraries/Animated/NativeAnimatedHelper.js +14 -10
- package/Libraries/Animated/NativeAnimatedHelper.win32.js +16 -12
- package/Libraries/Animated/NativeAnimatedModule.js +6 -2
- package/Libraries/Animated/NativeAnimatedTurboModule.js +7 -4
- package/Libraries/Animated/animations/Animation.js +57 -3
- package/Libraries/Animated/animations/DecayAnimation.js +9 -0
- package/Libraries/Animated/animations/SpringAnimation.js +8 -0
- package/Libraries/Animated/animations/TimingAnimation.js +8 -0
- package/Libraries/Animated/components/AnimatedFlatList.js +2 -1
- package/Libraries/Animated/components/AnimatedScrollView.js +2 -0
- package/Libraries/Animated/components/AnimatedSectionList.js +2 -1
- package/Libraries/Animated/createAnimatedComponent.js +1 -0
- package/Libraries/Animated/nodes/AnimatedColor.js +1 -1
- package/Libraries/Animated/nodes/AnimatedObject.js +146 -0
- package/Libraries/Animated/nodes/AnimatedProps.js +19 -7
- package/Libraries/Animated/nodes/AnimatedStyle.js +29 -55
- package/Libraries/Animated/nodes/AnimatedValueXY.js +3 -17
- package/Libraries/Animated/shouldUseTurboAnimatedModule.js +17 -0
- package/Libraries/Animated/useAnimatedProps.js +9 -10
- package/Libraries/AppState/AppState.d.ts +1 -1
- package/Libraries/AppState/NativeAppState.js +8 -4
- package/Libraries/BatchedBridge/MessageQueue.js +45 -36
- package/Libraries/Blob/Blob.js +6 -2
- package/Libraries/Blob/BlobManager.js +9 -10
- package/Libraries/Blob/BlobRegistry.js +14 -9
- package/Libraries/Blob/File.js +1 -1
- package/Libraries/Blob/FileReader.js +1 -2
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +1 -5
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js +7 -48
- package/Libraries/Components/Button/ButtonWin32.Props.d.ts +1 -1
- package/Libraries/Components/Button/ButtonWin32.Props.js.map +1 -1
- package/Libraries/Components/Button/ButtonWin32.d.ts +1 -1
- package/Libraries/Components/Button/ButtonWin32.js +1 -4
- package/Libraries/Components/Button/ButtonWin32.js.map +1 -1
- package/Libraries/Components/Clipboard/Clipboard.d.ts +4 -4
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +3 -1
- package/Libraries/Components/EnterString.win32.d.ts +1 -1
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +26 -6
- package/Libraries/Components/Pressable/Pressable.js +3 -2
- package/Libraries/Components/Pressable/Pressable.win32.js +4 -3
- package/Libraries/Components/Pressable/useAndroidRippleForView.js +1 -1
- package/Libraries/Components/SafeAreaView/SafeAreaView.js +7 -7
- package/Libraries/Components/SafeAreaView/SafeAreaView.win32.js +7 -8
- package/Libraries/Components/ScrollView/ScrollView.js +3 -1
- package/Libraries/Components/ScrollView/ScrollView.win32.js +3 -1
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +39 -46
- package/Libraries/Components/Switch/Switch.js +1 -0
- package/Libraries/Components/Text/TextWin32.d.ts +1 -1
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +1 -0
- package/Libraries/Components/TextInput/TextInput.d.ts +49 -7
- package/Libraries/Components/TextInput/TextInput.flow.js +43 -10
- package/Libraries/Components/TextInput/TextInput.js +62 -10
- package/Libraries/Components/TextInput/TextInput.win32.js +953 -206
- package/Libraries/Components/TextInput/Win32TextInputNativeComponent.js +23 -0
- package/Libraries/Components/ToastAndroid/{ToastAndroid.ios.js → ToastAndroid.js} +9 -1
- package/Libraries/Components/ToastAndroid/ToastAndroid.win32.js +9 -1
- package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js +2 -2
- package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js.map +1 -1
- package/Libraries/Components/Touchable/TouchableBounce.js +1 -1
- package/Libraries/Components/Touchable/TouchableHighlight.js +1 -1
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -1
- package/Libraries/Components/Touchable/TouchableOpacity.js +4 -1
- package/Libraries/Components/Touchable/TouchableWin32.d.ts +1 -1
- package/Libraries/Components/Touchable/TouchableWin32.js.map +1 -1
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +1 -0
- package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlay.js +16 -6
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +9 -0
- package/Libraries/Components/View/ReactNativeViewAttributes.js +1 -0
- package/Libraries/Components/View/ReactNativeViewAttributes.win32.js +1 -0
- package/Libraries/Components/View/View.js +46 -32
- package/Libraries/Components/View/View.win32.js +37 -6
- package/Libraries/Components/View/ViewAccessibility.d.ts +8 -2
- package/Libraries/Components/View/ViewNativeComponent.js +1 -0
- package/Libraries/Components/View/ViewPropTypes.js +18 -3
- package/Libraries/Components/View/ViewPropTypes.win32.js +30 -4
- package/Libraries/Components/View/ViewWin32.js +3 -2
- package/Libraries/Core/Devtools/loadBundleFromServer.js +152 -0
- package/Libraries/Core/Devtools/symbolicateStackTrace.js +2 -1
- package/Libraries/Core/ExceptionsManager.js +16 -7
- package/Libraries/Core/ExtendedError.js +12 -0
- package/Libraries/Core/ReactNativeVersion.js +3 -3
- package/Libraries/Core/ReactNativeVersionCheck.js +0 -2
- package/Libraries/Core/ReactNativeVersionCheck.win32.js +0 -2
- package/Libraries/Core/__mocks__/NativeExceptionsManager.js +20 -0
- package/Libraries/Core/setUpDeveloperTools.js +5 -1
- package/Libraries/Core/setUpIntersectionObserver.js +16 -0
- package/Libraries/{Components/ProgressBarAndroid/ProgressBarAndroid.ios.js → Core/setUpMutationObserver.js} +6 -2
- package/Libraries/Core/setUpPerformance.js +6 -13
- package/Libraries/Core/setUpPerformanceObserver.js +16 -0
- package/Libraries/Core/setUpRegeneratorRuntime.js +4 -2
- package/Libraries/DOM/Nodes/ReactNativeElement.js +135 -18
- package/Libraries/DOM/Nodes/ReadOnlyCharacterData.js +72 -0
- package/Libraries/DOM/Nodes/ReadOnlyElement.js +209 -21
- package/Libraries/DOM/Nodes/ReadOnlyNode.js +206 -17
- package/Libraries/DOM/Nodes/ReadOnlyText.js +30 -0
- package/Libraries/DOM/Nodes/Utilities/Traversal.js +54 -0
- package/Libraries/EventEmitter/NativeEventEmitter.d.ts +0 -6
- package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +15 -4
- package/Libraries/Image/Image.android.js +8 -2
- package/Libraries/Image/Image.d.ts +1 -1
- package/Libraries/Image/Image.ios.js +4 -1
- package/Libraries/Image/Image.win32.js +6 -3
- package/Libraries/Image/ImageBackground.js +3 -0
- package/Libraries/Image/resolveAssetSource.win32.js +1 -1
- package/Libraries/Inspector/DevtoolsOverlay.js +6 -3
- package/Libraries/Inspector/NetworkOverlay.js +2 -2
- package/Libraries/Interaction/JSEventLoopWatchdog.js +1 -5
- package/Libraries/Interaction/PanResponder.js +1 -4
- package/Libraries/IntersectionObserver/IntersectionObserver.js +252 -0
- package/Libraries/IntersectionObserver/IntersectionObserverEntry.js +140 -0
- package/Libraries/IntersectionObserver/IntersectionObserverManager.js +221 -0
- package/Libraries/IntersectionObserver/NativeIntersectionObserver.js +41 -0
- package/Libraries/IntersectionObserver/__mocks__/NativeIntersectionObserver.js +162 -0
- package/Libraries/LayoutAnimation/LayoutAnimation.js +1 -1
- package/Libraries/Lists/FlatList.d.ts +2 -1
- package/Libraries/Lists/FlatList.js +15 -5
- package/Libraries/Lists/SectionList.js +4 -0
- package/Libraries/LogBox/Data/LogBoxData.js +2 -1
- package/Libraries/LogBox/Data/LogBoxLog.js +4 -1
- package/Libraries/LogBox/Data/LogBoxSymbolication.js +5 -2
- package/Libraries/LogBox/Data/parseLogBoxLog.js +57 -20
- package/Libraries/LogBox/UI/AnsiHighlight.js +1 -1
- package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +24 -31
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +1 -1
- package/Libraries/LogBox/UI/LogBoxMessage.js +4 -7
- package/Libraries/MutationObserver/MutationObserver.js +184 -0
- package/Libraries/MutationObserver/MutationObserverManager.js +218 -0
- package/Libraries/MutationObserver/MutationRecord.js +82 -0
- package/Libraries/MutationObserver/NativeMutationObserver.js +58 -0
- package/Libraries/MutationObserver/__mocks__/NativeMutationObserver.js +327 -0
- package/Libraries/NativeComponent/BaseViewConfig.android.js +18 -3
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +33 -0
- package/Libraries/NativeComponent/BaseViewConfig.win32.js +33 -0
- package/Libraries/NativeComponent/NativeComponentRegistry.js +13 -9
- package/Libraries/NativeModules/specs/NativeSourceCode.js +6 -6
- package/Libraries/Network/RCTNetworking.android.js +2 -1
- package/Libraries/Network/XMLHttpRequest.js +1 -1
- package/Libraries/NewAppScreen/components/DebugInstructions.js +4 -4
- package/Libraries/NewAppScreen/components/LearnMoreLinks.js +9 -2
- package/Libraries/Performance/QuickPerformanceLogger.js +1 -1
- package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +1 -0
- package/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +1 -0
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +3 -1
- package/Libraries/Pressability/Pressability.js +28 -3
- package/Libraries/Pressability/Pressability.win32.js +30 -5
- package/Libraries/ReactNative/AppContainer.js +2 -3
- package/Libraries/ReactNative/AppRegistry.d.ts +0 -5
- package/Libraries/ReactNative/AppRegistry.js +66 -53
- package/Libraries/ReactNative/BridgelessUIManager.js +38 -9
- package/Libraries/ReactNative/FabricUIManager.js +143 -34
- package/Libraries/ReactNative/I18nManager.js +5 -11
- package/Libraries/ReactNative/NativeI18nManager.js +7 -5
- package/Libraries/ReactNative/PaperUIManager.win32.js +2 -2
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +151 -0
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +81 -0
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +492 -0
- package/Libraries/ReactNative/ReactFabricPublicInstance/warnForStyleProps.js +32 -0
- package/Libraries/ReactNative/ReactNativeFeatureFlags.js +19 -3
- package/Libraries/ReactNative/UIManager.js +8 -0
- package/Libraries/ReactNative/__mocks__/FabricUIManager.js +648 -0
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +38 -2
- package/Libraries/Renderer/implementations/ReactFabric-dev.js +27 -27
- package/Libraries/Renderer/implementations/ReactFabric-prod.js +3 -3
- package/Libraries/Renderer/implementations/ReactFabric-profiling.js +3 -3
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +27 -27
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +3 -3
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +3 -3
- package/Libraries/Renderer/shims/ReactFabric.js +5 -6
- package/Libraries/Renderer/shims/ReactFeatureFlags.js +2 -3
- package/Libraries/Renderer/shims/ReactNative.js +2 -3
- package/Libraries/Renderer/shims/ReactNativeTypes.js +35 -17
- package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +3 -3
- package/Libraries/Renderer/shims/createReactNativeComponentClass.js +2 -3
- package/Libraries/Settings/{Settings.android.js → Settings.js} +4 -4
- package/Libraries/Share/Share.d.ts +3 -9
- package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +9 -4
- package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +28 -13
- package/Libraries/StyleSheet/PlatformColorValueTypes.win32.js +14 -4
- package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypesWin32.d.ts +1 -1
- package/Libraries/StyleSheet/StyleSheet.d.ts +10 -1
- package/Libraries/StyleSheet/StyleSheet.js +3 -0
- package/Libraries/StyleSheet/StyleSheet.win32.js +3 -0
- package/Libraries/StyleSheet/StyleSheetTypes.d.ts +31 -17
- package/Libraries/StyleSheet/StyleSheetTypes.js +90 -6
- package/Libraries/StyleSheet/flattenStyle.js +4 -0
- package/Libraries/StyleSheet/private/_TransformStyle.js +16 -2
- package/Libraries/StyleSheet/processColor.js +1 -2
- package/Libraries/StyleSheet/processTransformOrigin.js +136 -0
- package/Libraries/StyleSheet/splitLayoutProps.js +1 -0
- package/Libraries/Text/Text.d.ts +5 -5
- package/Libraries/Text/Text.js +17 -10
- package/Libraries/Text/Text.win32.js +354 -0
- package/Libraries/Text/TextProps.win32.js +281 -0
- package/Libraries/TurboModule/TurboModuleRegistry.js +47 -7
- package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +6 -0
- package/Libraries/Types/CoreEventTypes.d.ts +5 -2
- package/Libraries/Utilities/GlobalPerformanceLogger.js +2 -12
- package/Libraries/Utilities/NativeDeviceInfo.js +8 -9
- package/Libraries/Utilities/NativePlatformConstantsAndroid.js +23 -18
- package/Libraries/Utilities/NativePlatformConstantsIOS.js +16 -13
- package/Libraries/Utilities/NativePlatformConstantsWin.js +13 -10
- package/Libraries/Utilities/PerformanceLoggerContext.js +1 -1
- package/Libraries/Utilities/Platform.android.js +12 -8
- package/Libraries/Utilities/Platform.d.ts +1 -0
- package/Libraries/Utilities/Platform.flow.js +84 -0
- package/Libraries/Utilities/Platform.flow.win32.js +111 -0
- package/Libraries/Utilities/Platform.ios.js +12 -8
- package/Libraries/Utilities/Platform.win32.js +12 -8
- package/Libraries/Utilities/PolyfillFunctions.js +1 -1
- package/Libraries/Utilities/ReactNativeTestTools.js +1 -2
- package/Libraries/Utilities/SceneTracker.js +1 -1
- package/Libraries/Utilities/createPerformanceLogger.js +63 -32
- package/Libraries/Utilities/useColorScheme.js +7 -8
- package/Libraries/WebPerformance/MemoryInfo.js +1 -1
- package/Libraries/WebPerformance/NativePerformance.js +3 -8
- package/Libraries/WebPerformance/NativePerformanceObserver.js +4 -0
- package/Libraries/WebPerformance/Performance.js +42 -15
- package/Libraries/WebPerformance/PerformanceEntry.js +14 -6
- package/Libraries/WebPerformance/PerformanceEventTiming.js +18 -1
- package/Libraries/WebPerformance/ReactNativeStartupTiming.js +40 -14
- package/Libraries/WebPerformance/__mocks__/NativePerformance.js +4 -2
- package/Libraries/WebPerformance/__mocks__/NativePerformanceObserver.js +21 -3
- package/Libraries/promiseRejectionTrackingOptions.js +21 -9
- package/Libraries/vendor/emitter/EventEmitter.js +17 -17
- package/flow/global.js +1 -3
- package/flow/jest.js +5 -1
- package/{Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.ios.js → jest/ReactNativeInternalFeatureFlagsMock.js} +2 -1
- package/jest/__tests__/setup-test.js +18 -0
- package/jest/mockModal.js +6 -4
- package/jest/setup.js +61 -30
- package/jest.config.js +1 -1
- package/just-task.js +1 -0
- package/overrides.json +54 -60
- package/package.json +35 -33
- package/src/Libraries/Components/Button/ButtonWin32.Props.ts +1 -1
- package/src/Libraries/Components/Button/ButtonWin32.tsx +0 -2
- package/src/Libraries/Components/Touchable/Tests/TouchableWin32Test.tsx +2 -2
- package/src/Libraries/Components/Touchable/TouchableWin32.tsx +1 -1
- package/src/Libraries/Components/View/ViewAccessibility.d.ts +8 -2
- package/src/Libraries/StyleSheet/PlatformColorValueTypesWin32.d.ts +1 -1
- package/types/experimental.d.ts +44 -0
- package/types/index.d.ts +2 -1
- package/types/modules/Devtools.d.ts +1 -0
- package/types/modules/globals.d.ts +16 -1
- package/IntegrationTests/BUCK +0 -32
- package/IntegrationTests/PropertiesUpdateTest.js +0 -29
- package/IntegrationTests/RCTRootViewIntegrationTestApp.js +0 -86
- package/IntegrationTests/ReactContentSizeUpdateTest.js +0 -89
- package/IntegrationTests/SizeFlexibilityUpdateTest.js +0 -106
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfoWin32.js +0 -37
- package/Libraries/Components/TextInput/TextInput.Types.win32.d.ts +0 -51
- package/Libraries/Components/TextInput/TextInput.Types.win32.js +0 -3
- package/Libraries/Components/TextInput/TextInput.Types.win32.js.map +0 -1
- package/Libraries/Utilities/AcessibilityMapping.js +0 -154
- package/Libraries/Utilities/AcessibilityMapping.win32.js +0 -156
- package/Libraries/Utilities/NativeDevSplitBundleLoader.js +0 -19
- package/Libraries/Utilities/useColorScheme.win32.js +0 -26
- package/flow/use-sync-external-store.js +0 -20
- package/flow-typed/npm/base64-js_v1.x.x.js +0 -12
- package/flow-typed/npm/glob_v7.x.x.js +0 -79
- package/flow-typed/npm/pretty-format_v26.x.x.js +0 -49
- package/flow-typed/npm/promise_v8.x.x.js +0 -30
- package/flow-typed/npm/react-dom_v17.x.x.js +0 -139
- package/flow-typed/npm/react-test-renderer_v16.x.x.js +0 -79
- package/flow-typed/npm/stacktrace-parser_v0.1.x.js +0 -17
- package/flow-typed/npm/yargs_v17.x.x.js +0 -341
- package/src/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +0 -161
- package/src/Libraries/Components/TextInput/TextInput.Types.win32.ts +0 -68
- /package/Libraries/{Renderer/public → ReactNative/ReactFabricPublicInstance}/ReactFabricPublicInstanceUtils.js +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,134 +1,291 @@
|
|
|
1
1
|
# Change Log - @office-iss/react-native-win32
|
|
2
2
|
|
|
3
|
-
This log was last generated on
|
|
3
|
+
This log was last generated on Tue, 24 Oct 2023 18:22:06 GMT and should not be manually modified.
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
-
## 0.
|
|
7
|
+
## 0.73.0-preview.2
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
Tue, 24 Oct 2023 18:22:06 GMT
|
|
10
10
|
|
|
11
|
-
###
|
|
11
|
+
### Changes
|
|
12
12
|
|
|
13
|
-
-
|
|
13
|
+
- integrate 0.73-rc3 (tatianakapos@microsoft.com)
|
|
14
14
|
|
|
15
|
-
## 0.
|
|
15
|
+
## 0.73.0-preview.1
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
Tue, 17 Oct 2023 22:26:52 GMT
|
|
18
18
|
|
|
19
|
-
###
|
|
19
|
+
### Changes
|
|
20
20
|
|
|
21
|
-
-
|
|
21
|
+
- Promote 0.73 to preview (tatianakapos@microsoft.com)
|
|
22
22
|
|
|
23
|
-
## 0.
|
|
23
|
+
## 0.0.0-canary.218
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
Thu, 12 Oct 2023 05:15:53 GMT
|
|
26
26
|
|
|
27
|
-
###
|
|
27
|
+
### Changes
|
|
28
28
|
|
|
29
|
-
-
|
|
29
|
+
- Integrate 9/25 (yajurgrover24@gmail.com)
|
|
30
|
+
- Bump @rnw-scripts/eslint-config to v1.2.3
|
|
31
|
+
- Bump @rnw-scripts/jest-out-of-tree-snapshot-resolver to v1.1.6
|
|
32
|
+
- Bump @rnw-scripts/just-task to v2.3.17
|
|
33
|
+
- Bump react-native-platform-override to v1.9.16
|
|
30
34
|
|
|
31
|
-
## 0.
|
|
35
|
+
## 0.0.0-canary.217
|
|
32
36
|
|
|
33
|
-
|
|
37
|
+
Fri, 06 Oct 2023 05:13:51 GMT
|
|
34
38
|
|
|
35
|
-
###
|
|
39
|
+
### Changes
|
|
36
40
|
|
|
37
|
-
-
|
|
41
|
+
- Integrate 9/20 (34109996+chiaramooney@users.noreply.github.com)
|
|
38
42
|
|
|
39
|
-
## 0.
|
|
43
|
+
## 0.0.0-canary.216
|
|
40
44
|
|
|
41
|
-
|
|
45
|
+
Tue, 03 Oct 2023 05:13:16 GMT
|
|
42
46
|
|
|
43
|
-
###
|
|
47
|
+
### Changes
|
|
48
|
+
|
|
49
|
+
- Have RCTNetworking.win32 fork RCTNetworking.ios (julio.rocha@microsoft.com)
|
|
50
|
+
|
|
51
|
+
## 0.0.0-canary.215
|
|
52
|
+
|
|
53
|
+
Wed, 20 Sep 2023 05:17:49 GMT
|
|
54
|
+
|
|
55
|
+
### Changes
|
|
56
|
+
|
|
57
|
+
- Integrate 8/11 (34109996+chiaramooney@users.noreply.github.com)
|
|
58
|
+
- Bump @rnw-scripts/just-task to v2.3.16
|
|
59
|
+
- Bump react-native-platform-override to v1.9.15
|
|
60
|
+
|
|
61
|
+
## 0.0.0-canary.214
|
|
62
|
+
|
|
63
|
+
Sat, 09 Sep 2023 05:12:55 GMT
|
|
64
|
+
|
|
65
|
+
### Changes
|
|
44
66
|
|
|
45
67
|
- Webpack assets do not prefix paths with /, which causes a lost char in asset path (30809111+acoates-ms@users.noreply.github.com)
|
|
46
68
|
|
|
47
|
-
## 0.
|
|
69
|
+
## 0.0.0-canary.213
|
|
48
70
|
|
|
49
|
-
|
|
71
|
+
Tue, 29 Aug 2023 05:13:35 GMT
|
|
50
72
|
|
|
51
|
-
###
|
|
73
|
+
### Changes
|
|
74
|
+
|
|
75
|
+
- Integrate RN Nightly Build 7/28 (yajurgrover@microsoft.com)
|
|
76
|
+
|
|
77
|
+
## 0.0.0-canary.212
|
|
78
|
+
|
|
79
|
+
Sat, 26 Aug 2023 05:15:06 GMT
|
|
80
|
+
|
|
81
|
+
### Changes
|
|
52
82
|
|
|
53
|
-
- fix a11yState and add support for aria-required and -multiselectable (krsiler@microsoft.com)
|
|
54
83
|
- Remove flow usage from saveAssetPlugin codeflow (30809111+acoates-ms@users.noreply.github.com)
|
|
55
84
|
|
|
56
|
-
## 0.
|
|
85
|
+
## 0.0.0-canary.211
|
|
57
86
|
|
|
58
|
-
|
|
87
|
+
Thu, 24 Aug 2023 05:14:48 GMT
|
|
59
88
|
|
|
60
|
-
###
|
|
89
|
+
### Changes
|
|
90
|
+
|
|
91
|
+
- fix a11yState and add support for aria-required and -multiselectable (krsiler@microsoft.com)
|
|
92
|
+
|
|
93
|
+
## 0.0.0-canary.210
|
|
94
|
+
|
|
95
|
+
Fri, 11 Aug 2023 05:13:37 GMT
|
|
96
|
+
|
|
97
|
+
### Changes
|
|
61
98
|
|
|
62
|
-
- add isDefaultButton check to win32 (email not defined)
|
|
63
99
|
- Add saveAssetPlugin to fix long path assets (30809111+acoates-ms@users.noreply.github.com)
|
|
64
100
|
|
|
65
|
-
## 0.
|
|
101
|
+
## 0.0.0-canary.209
|
|
66
102
|
|
|
67
|
-
|
|
103
|
+
Fri, 28 Jul 2023 05:14:51 GMT
|
|
68
104
|
|
|
69
|
-
###
|
|
105
|
+
### Changes
|
|
70
106
|
|
|
71
|
-
- Integrate
|
|
107
|
+
- Integrate 7/21 (34109996+chiaramooney@users.noreply.github.com)
|
|
108
|
+
- Bump @rnw-scripts/just-task to v2.3.15
|
|
109
|
+
- Bump react-native-platform-override to v1.9.14
|
|
72
110
|
|
|
73
|
-
## 0.
|
|
111
|
+
## 0.0.0-canary.208
|
|
74
112
|
|
|
75
|
-
|
|
113
|
+
Thu, 27 Jul 2023 05:14:48 GMT
|
|
76
114
|
|
|
77
|
-
###
|
|
115
|
+
### Changes
|
|
78
116
|
|
|
79
|
-
-
|
|
117
|
+
- integrate RN Nightly 7/5/23 (email not defined)
|
|
80
118
|
|
|
81
|
-
## 0.
|
|
119
|
+
## 0.0.0-canary.207
|
|
82
120
|
|
|
83
|
-
|
|
121
|
+
Wed, 26 Jul 2023 05:15:46 GMT
|
|
84
122
|
|
|
85
123
|
### Changes
|
|
86
124
|
|
|
87
|
-
-
|
|
125
|
+
- Remove upstream react-native flow typings from repo (jthysell@microsoft.com)
|
|
126
|
+
- Bump @rnw-scripts/just-task to v2.3.14
|
|
127
|
+
- Bump react-native-platform-override to v1.9.13
|
|
88
128
|
|
|
89
|
-
## 0.
|
|
129
|
+
## 0.0.0-canary.206
|
|
90
130
|
|
|
91
|
-
|
|
131
|
+
Tue, 18 Jul 2023 05:13:38 GMT
|
|
132
|
+
|
|
133
|
+
### Changes
|
|
134
|
+
|
|
135
|
+
- add isDefaultButton check to win32 (email not defined)
|
|
136
|
+
|
|
137
|
+
## 0.0.0-canary.205
|
|
138
|
+
|
|
139
|
+
Fri, 14 Jul 2023 05:17:04 GMT
|
|
140
|
+
|
|
141
|
+
### Changes
|
|
142
|
+
|
|
143
|
+
- integration 6/28 (tatianakapos@microsoft.com)
|
|
144
|
+
- Bump @rnw-scripts/eslint-config to v1.2.2
|
|
145
|
+
- Bump @rnw-scripts/jest-out-of-tree-snapshot-resolver to v1.1.5
|
|
146
|
+
- Bump @rnw-scripts/just-task to v2.3.13
|
|
147
|
+
- Bump react-native-platform-override to v1.9.12
|
|
148
|
+
|
|
149
|
+
## 0.0.0-canary.204
|
|
150
|
+
|
|
151
|
+
Sat, 01 Jul 2023 05:14:41 GMT
|
|
152
|
+
|
|
153
|
+
### Changes
|
|
154
|
+
|
|
155
|
+
- integrate 6/16 (tatianakapos@microsoft.com)
|
|
156
|
+
- Bump @rnw-scripts/eslint-config to v1.2.1
|
|
157
|
+
- Bump @rnw-scripts/jest-out-of-tree-snapshot-resolver to v1.1.4
|
|
158
|
+
- Bump @rnw-scripts/just-task to v2.3.12
|
|
159
|
+
- Bump react-native-platform-override to v1.9.11
|
|
160
|
+
|
|
161
|
+
## 0.0.0-canary.203
|
|
162
|
+
|
|
163
|
+
Fri, 16 Jun 2023 05:14:19 GMT
|
|
164
|
+
|
|
165
|
+
### Changes
|
|
166
|
+
|
|
167
|
+
- Add support for more aria props (30809111+acoates-ms@users.noreply.github.com)
|
|
168
|
+
|
|
169
|
+
## 0.0.0-canary.202
|
|
170
|
+
|
|
171
|
+
Tue, 13 Jun 2023 05:15:41 GMT
|
|
172
|
+
|
|
173
|
+
### Changes
|
|
174
|
+
|
|
175
|
+
- Bump @rnw-scripts/eslint-config to v1.2.0
|
|
176
|
+
- Bump @rnw-scripts/jest-out-of-tree-snapshot-resolver to v1.1.3
|
|
177
|
+
- Bump react-native-platform-override to v1.9.10
|
|
178
|
+
|
|
179
|
+
## 0.0.0-canary.201
|
|
180
|
+
|
|
181
|
+
Fri, 09 Jun 2023 05:15:17 GMT
|
|
92
182
|
|
|
93
183
|
### Changes
|
|
94
184
|
|
|
95
|
-
- Export ITouchableWin32State (30809111+acoates-ms@users.noreply.github.com)
|
|
96
|
-
- Fix various text properties not being forwarded to native (30809111+acoates-ms@users.noreply.github.com)
|
|
97
185
|
- Type definition files shouldnt use win32 extension (30809111+acoates-ms@users.noreply.github.com)
|
|
98
|
-
-
|
|
186
|
+
- Fix various text properties not being forwarded to native (30809111+acoates-ms@users.noreply.github.com)
|
|
187
|
+
|
|
188
|
+
## 0.0.0-canary.200
|
|
189
|
+
|
|
190
|
+
Thu, 08 Jun 2023 05:15:28 GMT
|
|
191
|
+
|
|
192
|
+
### Changes
|
|
193
|
+
|
|
194
|
+
- Add missing eventPhase on IHandledKeyboardEvent (30809111+acoates-ms@users.noreply.github.com)
|
|
195
|
+
- Export ITouchableWin32State (30809111+acoates-ms@users.noreply.github.com)
|
|
196
|
+
|
|
197
|
+
## 0.0.0-canary.199
|
|
198
|
+
|
|
199
|
+
Wed, 07 Jun 2023 05:16:10 GMT
|
|
200
|
+
|
|
201
|
+
### Changes
|
|
99
202
|
|
|
100
|
-
|
|
203
|
+
- integrate RN Nightly 6/1/23 (tatianakapos@microsoft.com)
|
|
204
|
+
- Bump @rnw-scripts/just-task to v2.3.11
|
|
205
|
+
- Bump react-native-platform-override to v1.9.9
|
|
101
206
|
|
|
102
|
-
|
|
207
|
+
## 0.0.0-canary.198
|
|
208
|
+
|
|
209
|
+
Tue, 06 Jun 2023 19:06:43 GMT
|
|
103
210
|
|
|
104
211
|
### Changes
|
|
105
212
|
|
|
106
|
-
-
|
|
213
|
+
- integrate RN nightly 5/19/23 (tatianakapos@microsoft.com)
|
|
214
|
+
- Bump @rnw-scripts/just-task to v2.3.10
|
|
215
|
+
- Bump react-native-platform-override to v1.9.8
|
|
107
216
|
|
|
108
|
-
## 0.
|
|
217
|
+
## 0.0.0-canary.197
|
|
109
218
|
|
|
110
|
-
|
|
219
|
+
Tue, 23 May 2023 05:13:44 GMT
|
|
220
|
+
|
|
221
|
+
### Changes
|
|
222
|
+
|
|
223
|
+
- RN integration 5/5/23 (tatianakapos@microsoft.com)
|
|
224
|
+
|
|
225
|
+
## 0.0.0-canary.196
|
|
226
|
+
|
|
227
|
+
Tue, 16 May 2023 05:16:29 GMT
|
|
228
|
+
|
|
229
|
+
### Changes
|
|
230
|
+
|
|
231
|
+
- Integrate 4/28 (34109996+chiaramooney@users.noreply.github.com)
|
|
232
|
+
- Bump @rnw-scripts/just-task to v2.3.9
|
|
233
|
+
- Bump react-native-platform-override to v1.9.7
|
|
234
|
+
|
|
235
|
+
## 0.0.0-canary.195
|
|
236
|
+
|
|
237
|
+
Fri, 12 May 2023 05:14:33 GMT
|
|
111
238
|
|
|
112
239
|
### Changes
|
|
113
240
|
|
|
114
241
|
- Export additional TS types for back compat (30809111+acoates-ms@users.noreply.github.com)
|
|
115
242
|
|
|
116
|
-
## 0.
|
|
243
|
+
## 0.0.0-canary.194
|
|
244
|
+
|
|
245
|
+
Mon, 08 May 2023 17:41:03 GMT
|
|
246
|
+
|
|
247
|
+
### Changes
|
|
248
|
+
|
|
249
|
+
- Fix typos and add `cspell` configuration (jthysell@microsoft.com)
|
|
250
|
+
- Bump @rnw-scripts/just-task to v2.3.8
|
|
251
|
+
- Bump react-native-platform-override to v1.9.6
|
|
252
|
+
|
|
253
|
+
## 0.0.0-canary.193
|
|
254
|
+
|
|
255
|
+
Wed, 03 May 2023 19:30:16 GMT
|
|
256
|
+
|
|
257
|
+
### Changes
|
|
258
|
+
|
|
259
|
+
- Simplify ViewWin32 focus, now devmain properly implements UIManger.focus (30809111+acoates-ms@users.noreply.github.com)
|
|
260
|
+
|
|
261
|
+
## 0.0.0-canary.192
|
|
262
|
+
|
|
263
|
+
Tue, 25 Apr 2023 05:16:56 GMT
|
|
264
|
+
|
|
265
|
+
### Changes
|
|
266
|
+
|
|
267
|
+
- Update Node to 16 (34109996+chiaramooney@users.noreply.github.com)
|
|
268
|
+
- Integrate 4/13 (34109996+chiaramooney@users.noreply.github.com)
|
|
269
|
+
- Bump @rnw-scripts/eslint-config to v1.1.16
|
|
270
|
+
- Bump @rnw-scripts/jest-out-of-tree-snapshot-resolver to v1.1.2
|
|
271
|
+
- Bump @rnw-scripts/just-task to v2.3.7
|
|
272
|
+
- Bump react-native-platform-override to v1.9.5
|
|
273
|
+
|
|
274
|
+
## 0.0.0-canary.191
|
|
117
275
|
|
|
118
|
-
Thu,
|
|
276
|
+
Thu, 13 Apr 2023 05:14:28 GMT
|
|
119
277
|
|
|
120
278
|
### Changes
|
|
121
279
|
|
|
122
|
-
-
|
|
123
|
-
- Fix ref's on ViewWin32 (enables ViewWin32.focus() calls to work again) (30809111+acoates-ms@users.noreply.github.com)
|
|
280
|
+
- Update TextInput.win32 to align with core (30809111+acoates-ms@users.noreply.github.com)
|
|
124
281
|
|
|
125
|
-
## 0.
|
|
282
|
+
## 0.0.0-canary.190
|
|
126
283
|
|
|
127
|
-
|
|
284
|
+
Sat, 08 Apr 2023 05:13:11 GMT
|
|
128
285
|
|
|
129
286
|
### Changes
|
|
130
287
|
|
|
131
|
-
-
|
|
288
|
+
- integrate rn 0.0.0-20230404-2109-62c4da142 (tatianakapos@microsoft.com)
|
|
132
289
|
|
|
133
290
|
## 0.0.0-canary.189
|
|
134
291
|
|
|
@@ -21,7 +21,7 @@ import Platform from '../Utilities/Platform';
|
|
|
21
21
|
import AnimatedImplementation from './AnimatedImplementation';
|
|
22
22
|
import AnimatedMock from './AnimatedMock';
|
|
23
23
|
|
|
24
|
-
const Animated = ((Platform.
|
|
24
|
+
const Animated = ((Platform.isDisableAnimations
|
|
25
25
|
? AnimatedMock
|
|
26
26
|
: AnimatedImplementation): typeof AnimatedImplementation);
|
|
27
27
|
|
|
@@ -378,7 +378,7 @@ const parallel = function (
|
|
|
378
378
|
}
|
|
379
379
|
|
|
380
380
|
animations.forEach((animation, idx) => {
|
|
381
|
-
const cb = function (endResult: EndResult
|
|
381
|
+
const cb = function (endResult: EndResult) {
|
|
382
382
|
hasEnded[idx] = true;
|
|
383
383
|
doneCount++;
|
|
384
384
|
if (doneCount === animations.length) {
|
|
@@ -28,9 +28,7 @@ import invariant from 'invariant';
|
|
|
28
28
|
|
|
29
29
|
// TODO T69437152 @petetheheat - Delete this fork when Fabric ships to 100%.
|
|
30
30
|
const NativeAnimatedModule =
|
|
31
|
-
|
|
32
|
-
? NativeAnimatedTurboModule
|
|
33
|
-
: NativeAnimatedNonTurboModule;
|
|
31
|
+
NativeAnimatedNonTurboModule ?? NativeAnimatedTurboModule;
|
|
34
32
|
|
|
35
33
|
let __nativeAnimatedNodeTagCount = 1; /* used for animated nodes */
|
|
36
34
|
let __nativeAnimationIdCount = 1; /* used for started animations */
|
|
@@ -425,6 +423,9 @@ const SUPPORTED_TRANSFORMS = {
|
|
|
425
423
|
rotateY: true,
|
|
426
424
|
rotateZ: true,
|
|
427
425
|
perspective: true,
|
|
426
|
+
skewX: true,
|
|
427
|
+
skewY: true,
|
|
428
|
+
matrix: ReactNativeFeatureFlags.shouldUseAnimatedObjectForTransform(),
|
|
428
429
|
};
|
|
429
430
|
|
|
430
431
|
const SUPPORTED_INTERPOLATION_PARAMS = {
|
|
@@ -451,19 +452,19 @@ function addWhitelistedInterpolationParam(param: string): void {
|
|
|
451
452
|
}
|
|
452
453
|
|
|
453
454
|
function isSupportedColorStyleProp(prop: string): boolean {
|
|
454
|
-
return SUPPORTED_COLOR_STYLES
|
|
455
|
+
return SUPPORTED_COLOR_STYLES[prop] === true;
|
|
455
456
|
}
|
|
456
457
|
|
|
457
458
|
function isSupportedStyleProp(prop: string): boolean {
|
|
458
|
-
return SUPPORTED_STYLES
|
|
459
|
+
return SUPPORTED_STYLES[prop] === true;
|
|
459
460
|
}
|
|
460
461
|
|
|
461
462
|
function isSupportedTransformProp(prop: string): boolean {
|
|
462
|
-
return SUPPORTED_TRANSFORMS
|
|
463
|
+
return SUPPORTED_TRANSFORMS[prop] === true;
|
|
463
464
|
}
|
|
464
465
|
|
|
465
466
|
function isSupportedInterpolationParam(param: string): boolean {
|
|
466
|
-
return SUPPORTED_INTERPOLATION_PARAMS
|
|
467
|
+
return SUPPORTED_INTERPOLATION_PARAMS[param] === true;
|
|
467
468
|
}
|
|
468
469
|
|
|
469
470
|
function validateTransform(
|
|
@@ -562,10 +563,13 @@ function transformDataType(value: number | string): number | string {
|
|
|
562
563
|
if (typeof value !== 'string') {
|
|
563
564
|
return value;
|
|
564
565
|
}
|
|
565
|
-
|
|
566
|
+
|
|
567
|
+
// Normalize degrees and radians to a number expressed in radians
|
|
568
|
+
if (value.endsWith('deg')) {
|
|
566
569
|
const degrees = parseFloat(value) || 0;
|
|
567
|
-
|
|
568
|
-
|
|
570
|
+
return (degrees * Math.PI) / 180.0;
|
|
571
|
+
} else if (value.endsWith('rad')) {
|
|
572
|
+
return parseFloat(value) || 0;
|
|
569
573
|
} else {
|
|
570
574
|
return value;
|
|
571
575
|
}
|
|
@@ -28,9 +28,7 @@ import invariant from 'invariant';
|
|
|
28
28
|
|
|
29
29
|
// TODO T69437152 @petetheheat - Delete this fork when Fabric ships to 100%.
|
|
30
30
|
const NativeAnimatedModule =
|
|
31
|
-
|
|
32
|
-
? NativeAnimatedTurboModule
|
|
33
|
-
: NativeAnimatedNonTurboModule;
|
|
31
|
+
NativeAnimatedNonTurboModule ?? NativeAnimatedTurboModule;
|
|
34
32
|
|
|
35
33
|
let __nativeAnimatedNodeTagCount = 1; /* used for animated nodes */
|
|
36
34
|
let __nativeAnimationIdCount = 1; /* used for started animations */
|
|
@@ -427,6 +425,9 @@ const SUPPORTED_TRANSFORMS = {
|
|
|
427
425
|
rotateY: true,
|
|
428
426
|
rotateZ: true,
|
|
429
427
|
perspective: true,
|
|
428
|
+
skewX: true,
|
|
429
|
+
skewY: true,
|
|
430
|
+
matrix: ReactNativeFeatureFlags.shouldUseAnimatedObjectForTransform(),
|
|
430
431
|
};
|
|
431
432
|
|
|
432
433
|
const SUPPORTED_INTERPOLATION_PARAMS = {
|
|
@@ -453,19 +454,19 @@ function addWhitelistedInterpolationParam(param: string): void {
|
|
|
453
454
|
}
|
|
454
455
|
|
|
455
456
|
function isSupportedColorStyleProp(prop: string): boolean {
|
|
456
|
-
return SUPPORTED_COLOR_STYLES
|
|
457
|
+
return SUPPORTED_COLOR_STYLES[prop] === true;
|
|
457
458
|
}
|
|
458
459
|
|
|
459
460
|
function isSupportedStyleProp(prop: string): boolean {
|
|
460
|
-
return SUPPORTED_STYLES
|
|
461
|
+
return SUPPORTED_STYLES[prop] === true;
|
|
461
462
|
}
|
|
462
463
|
|
|
463
464
|
function isSupportedTransformProp(prop: string): boolean {
|
|
464
|
-
return SUPPORTED_TRANSFORMS
|
|
465
|
+
return SUPPORTED_TRANSFORMS[prop] === true;
|
|
465
466
|
}
|
|
466
467
|
|
|
467
468
|
function isSupportedInterpolationParam(param: string): boolean {
|
|
468
|
-
return SUPPORTED_INTERPOLATION_PARAMS
|
|
469
|
+
return SUPPORTED_INTERPOLATION_PARAMS[param] === true;
|
|
469
470
|
}
|
|
470
471
|
|
|
471
472
|
function validateTransform(
|
|
@@ -564,10 +565,13 @@ function transformDataType(value: number | string): number | string {
|
|
|
564
565
|
if (typeof value !== 'string') {
|
|
565
566
|
return value;
|
|
566
567
|
}
|
|
567
|
-
|
|
568
|
+
|
|
569
|
+
// Normalize degrees and radians to a number expressed in radians
|
|
570
|
+
if (value.endsWith('deg')) {
|
|
568
571
|
const degrees = parseFloat(value) || 0;
|
|
569
|
-
|
|
570
|
-
|
|
572
|
+
return (degrees * Math.PI) / 180.0;
|
|
573
|
+
} else if (value.endsWith('rad')) {
|
|
574
|
+
return parseFloat(value) || 0;
|
|
571
575
|
} else {
|
|
572
576
|
return value;
|
|
573
577
|
}
|
|
@@ -590,8 +594,8 @@ export default {
|
|
|
590
594
|
assertNativeAnimatedModule,
|
|
591
595
|
shouldUseNativeDriver,
|
|
592
596
|
transformDataType,
|
|
593
|
-
// $FlowExpectedError[unsafe-getters-setters] - unsafe getter lint
|
|
594
|
-
// $FlowExpectedError[missing-type-arg] - unsafe getter lint
|
|
597
|
+
// $FlowExpectedError[unsafe-getters-setters] - unsafe getter lint suppression
|
|
598
|
+
// $FlowExpectedError[missing-type-arg] - unsafe getter lint suppression
|
|
595
599
|
get nativeEventEmitter(): NativeEventEmitter {
|
|
596
600
|
if (!nativeEventEmitter) {
|
|
597
601
|
// $FlowFixMe[underconstrained-implicit-instantiation]
|
|
@@ -11,8 +11,9 @@
|
|
|
11
11
|
import type {TurboModule} from '../TurboModule/RCTExport';
|
|
12
12
|
|
|
13
13
|
import * as TurboModuleRegistry from '../TurboModule/TurboModuleRegistry';
|
|
14
|
+
import shouldUseTurboAnimatedModule from './shouldUseTurboAnimatedModule';
|
|
14
15
|
|
|
15
|
-
type EndResult = {finished: boolean, ...};
|
|
16
|
+
type EndResult = {finished: boolean, value?: number, ...};
|
|
16
17
|
type EndCallback = (result: EndResult) => void;
|
|
17
18
|
type SaveValueCallback = (value: number) => void;
|
|
18
19
|
|
|
@@ -70,4 +71,7 @@ export interface Spec extends TurboModule {
|
|
|
70
71
|
+queueAndExecuteBatchedOperations?: (operationsAndArgs: Array<any>) => void;
|
|
71
72
|
}
|
|
72
73
|
|
|
73
|
-
|
|
74
|
+
const NativeModule: ?Spec = !shouldUseTurboAnimatedModule()
|
|
75
|
+
? TurboModuleRegistry.get<Spec>('NativeAnimatedModule')
|
|
76
|
+
: null;
|
|
77
|
+
export default NativeModule;
|
|
@@ -11,8 +11,9 @@
|
|
|
11
11
|
import type {TurboModule} from '../TurboModule/RCTExport';
|
|
12
12
|
|
|
13
13
|
import * as TurboModuleRegistry from '../TurboModule/TurboModuleRegistry';
|
|
14
|
+
import shouldUseTurboAnimatedModule from './shouldUseTurboAnimatedModule';
|
|
14
15
|
|
|
15
|
-
type EndResult = {finished: boolean, ...};
|
|
16
|
+
type EndResult = {finished: boolean, value?: number, ...};
|
|
16
17
|
type EndCallback = (result: EndResult) => void;
|
|
17
18
|
type SaveValueCallback = (value: number) => void;
|
|
18
19
|
|
|
@@ -70,6 +71,8 @@ export interface Spec extends TurboModule {
|
|
|
70
71
|
+queueAndExecuteBatchedOperations?: (operationsAndArgs: Array<any>) => void;
|
|
71
72
|
}
|
|
72
73
|
|
|
73
|
-
|
|
74
|
-
'NativeAnimatedTurboModule'
|
|
75
|
-
|
|
74
|
+
const NativeModule: ?Spec = shouldUseTurboAnimatedModule()
|
|
75
|
+
? TurboModuleRegistry.get<Spec>('NativeAnimatedTurboModule')
|
|
76
|
+
: null;
|
|
77
|
+
|
|
78
|
+
export default NativeModule;
|
|
@@ -11,11 +11,16 @@
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
13
|
import type {PlatformConfig} from '../AnimatedPlatformConfig';
|
|
14
|
+
import type AnimatedNode from '../nodes/AnimatedNode';
|
|
14
15
|
import type AnimatedValue from '../nodes/AnimatedValue';
|
|
15
16
|
|
|
17
|
+
import Platform from '../../Utilities/Platform';
|
|
16
18
|
import NativeAnimatedHelper from '../NativeAnimatedHelper';
|
|
19
|
+
import AnimatedColor from '../nodes/AnimatedColor';
|
|
20
|
+
import AnimatedProps from '../nodes/AnimatedProps';
|
|
21
|
+
import AnimatedValueXY from '../nodes/AnimatedValueXY';
|
|
17
22
|
|
|
18
|
-
export type EndResult = {finished: boolean, ...};
|
|
23
|
+
export type EndResult = {finished: boolean, value?: number, ...};
|
|
19
24
|
export type EndCallback = (result: EndResult) => void;
|
|
20
25
|
|
|
21
26
|
export type AnimationConfig = {
|
|
@@ -37,6 +42,7 @@ export default class Animation {
|
|
|
37
42
|
__nativeId: number;
|
|
38
43
|
__onEnd: ?EndCallback;
|
|
39
44
|
__iterations: number;
|
|
45
|
+
|
|
40
46
|
start(
|
|
41
47
|
fromValue: number,
|
|
42
48
|
onUpdate: (value: number) => void,
|
|
@@ -44,22 +50,55 @@ export default class Animation {
|
|
|
44
50
|
previousAnimation: ?Animation,
|
|
45
51
|
animatedValue: AnimatedValue,
|
|
46
52
|
): void {}
|
|
53
|
+
|
|
47
54
|
stop(): void {
|
|
48
55
|
if (this.__nativeId) {
|
|
49
56
|
NativeAnimatedHelper.API.stopAnimation(this.__nativeId);
|
|
50
57
|
}
|
|
51
58
|
}
|
|
59
|
+
|
|
52
60
|
__getNativeAnimationConfig(): any {
|
|
53
61
|
// Subclasses that have corresponding animation implementation done in native
|
|
54
62
|
// should override this method
|
|
55
63
|
throw new Error('This animation type cannot be offloaded to native');
|
|
56
64
|
}
|
|
65
|
+
|
|
57
66
|
// Helper function for subclasses to make sure onEnd is only called once.
|
|
58
67
|
__debouncedOnEnd(result: EndResult): void {
|
|
59
68
|
const onEnd = this.__onEnd;
|
|
60
69
|
this.__onEnd = null;
|
|
61
70
|
onEnd && onEnd(result);
|
|
62
71
|
}
|
|
72
|
+
|
|
73
|
+
__findAnimatedPropsNodes(node: AnimatedNode): Array<AnimatedProps> {
|
|
74
|
+
const result = [];
|
|
75
|
+
|
|
76
|
+
if (node instanceof AnimatedProps) {
|
|
77
|
+
result.push(node);
|
|
78
|
+
return result;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
// Vectorized animations (animations on AnimatedValueXY, AnimatedColor nodes)
|
|
82
|
+
// are split into multiple animations for each component that execute in parallel.
|
|
83
|
+
// Calling update() on AnimatedProps when each animation completes results in
|
|
84
|
+
// potential flickering as all animations that are part of the vectorized animation
|
|
85
|
+
// may not have completed yet. For example, only the animation for the red channel of
|
|
86
|
+
// an animating color may have been completed, resulting in a temporary red color
|
|
87
|
+
// being rendered. So, for now, ignore AnimatedProps that use a vectorized animation.
|
|
88
|
+
if (
|
|
89
|
+
Platform.OS === 'ios' &&
|
|
90
|
+
(node instanceof AnimatedValueXY || node instanceof AnimatedColor)
|
|
91
|
+
) {
|
|
92
|
+
return result;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
for (const child of node.__getChildren()) {
|
|
96
|
+
result.push(...this.__findAnimatedPropsNodes(child));
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
return result;
|
|
100
|
+
}
|
|
101
|
+
|
|
63
102
|
__startNativeAnimation(animatedValue: AnimatedValue): void {
|
|
64
103
|
const startNativeAnimationWaitId = `${startNativeAnimationNextId}:startAnimation`;
|
|
65
104
|
startNativeAnimationNextId += 1;
|
|
@@ -74,8 +113,23 @@ export default class Animation {
|
|
|
74
113
|
this.__nativeId,
|
|
75
114
|
animatedValue.__getNativeTag(),
|
|
76
115
|
config,
|
|
77
|
-
|
|
78
|
-
|
|
116
|
+
result => {
|
|
117
|
+
this.__debouncedOnEnd(result);
|
|
118
|
+
|
|
119
|
+
// When using natively driven animations, once the animation completes,
|
|
120
|
+
// we need to ensure that the JS side nodes are synced with the updated
|
|
121
|
+
// values.
|
|
122
|
+
const {value} = result;
|
|
123
|
+
if (value != null) {
|
|
124
|
+
animatedValue.__onAnimatedValueUpdateReceived(value);
|
|
125
|
+
|
|
126
|
+
// Once the JS side node is synced with the updated values, trigger an
|
|
127
|
+
// update on the AnimatedProps nodes to call any registered callbacks.
|
|
128
|
+
this.__findAnimatedPropsNodes(animatedValue).forEach(node =>
|
|
129
|
+
node.update(),
|
|
130
|
+
);
|
|
131
|
+
}
|
|
132
|
+
},
|
|
79
133
|
);
|
|
80
134
|
} catch (e) {
|
|
81
135
|
throw e;
|