@react-native-oh/react-native-harmony 0.72.82 → 0.77.18-1
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/LICENSE +21 -0
- package/LICENSE-Meta +21 -0
- package/Libraries/ActionSheetIOS/ActionSheetIOS.d.ts +87 -0
- package/Libraries/ActionSheetIOS/ActionSheetIOS.js +175 -0
- package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +13 -0
- package/Libraries/ActionSheetIOS/React-RCTActionSheet.podspec +34 -0
- package/Libraries/Alert/Alert.d.ts +91 -0
- package/Libraries/Alert/Alert.js +181 -0
- package/Libraries/Alert/NativeAlertManager.js +13 -0
- package/Libraries/Alert/RCTAlertManager.android.js +27 -0
- package/Libraries/Alert/RCTAlertManager.ios.js +25 -0
- package/Libraries/Alert/RCTAlertManager.js.flow +18 -0
- package/Libraries/Alert/delegates/AlertDelegate.harmony.ts +84 -0
- package/Libraries/Alert/delegates/AlertDelegate.ts +33 -0
- package/Libraries/Alert/{AlertManager.ts → delegates/AlertManager.harmony.ts} +10 -4
- package/Libraries/Alert/delegates/BaseAlertDelegate.ts +37 -0
- package/Libraries/Animated/Animated.d.ts +626 -0
- package/Libraries/Animated/Animated.js +48 -0
- package/Libraries/Animated/AnimatedEvent.js +256 -0
- package/Libraries/Animated/AnimatedImplementation.js +754 -0
- package/Libraries/Animated/AnimatedMock.js +195 -0
- package/Libraries/Animated/AnimatedPlatformConfig.js +13 -0
- package/Libraries/Animated/AnimatedWeb.js +26 -0
- package/Libraries/Animated/Easing.d.ts +37 -0
- package/Libraries/Animated/Easing.js +250 -0
- package/Libraries/Animated/NativeAnimatedAllowlist.js +122 -0
- package/Libraries/Animated/NativeAnimatedModule.js +13 -0
- package/Libraries/Animated/NativeAnimatedTurboModule.js +13 -0
- package/Libraries/Animated/SpringConfig.js +98 -0
- package/Libraries/Animated/animations/Animation.js +171 -0
- package/Libraries/Animated/animations/DecayAnimation.js +121 -0
- package/Libraries/Animated/animations/SpringAnimation.js +372 -0
- package/Libraries/Animated/animations/TimingAnimation.js +173 -0
- package/Libraries/Animated/bezier.js +164 -0
- package/Libraries/Animated/components/AnimatedFlatList.js +20 -0
- package/Libraries/Animated/components/AnimatedImage.js +22 -0
- package/Libraries/Animated/components/AnimatedScrollView.js +137 -0
- package/Libraries/Animated/components/AnimatedSectionList.js +22 -0
- package/Libraries/Animated/components/AnimatedText.js +22 -0
- package/Libraries/Animated/components/AnimatedView.js +20 -0
- package/Libraries/Animated/createAnimatedComponent.js +101 -0
- package/Libraries/Animated/nodes/AnimatedAddition.js +64 -0
- package/Libraries/Animated/nodes/AnimatedColor.js +320 -0
- package/Libraries/Animated/nodes/AnimatedDiffClamp.js +72 -0
- package/Libraries/Animated/nodes/AnimatedDivision.js +80 -0
- package/Libraries/Animated/nodes/AnimatedInterpolation.js +416 -0
- package/Libraries/Animated/nodes/AnimatedModulo.js +63 -0
- package/Libraries/Animated/nodes/AnimatedMultiplication.js +63 -0
- package/Libraries/Animated/nodes/AnimatedNode.js +200 -0
- package/Libraries/Animated/nodes/AnimatedObject.js +162 -0
- package/Libraries/Animated/nodes/AnimatedProps.js +281 -0
- package/Libraries/Animated/nodes/AnimatedStyle.js +251 -0
- package/Libraries/Animated/nodes/AnimatedSubtraction.js +64 -0
- package/Libraries/Animated/nodes/AnimatedTracking.js +100 -0
- package/Libraries/Animated/nodes/AnimatedTransform.js +198 -0
- package/Libraries/Animated/nodes/AnimatedValue.js +303 -0
- package/Libraries/Animated/nodes/AnimatedValueXY.js +236 -0
- package/Libraries/Animated/nodes/AnimatedWithChildren.js +85 -0
- package/Libraries/Animated/shouldUseTurboAnimatedModule.harmony.ts +10 -0
- package/Libraries/Animated/shouldUseTurboAnimatedModule.js +17 -0
- package/Libraries/Animated/useAnimatedProps.js +389 -0
- package/Libraries/Animated/useAnimatedValue.d.ts +15 -0
- package/Libraries/Animated/useAnimatedValue.js +25 -0
- package/Libraries/AppDelegate/RCTAppDelegate+Protected.h +16 -0
- package/Libraries/AppDelegate/RCTAppDelegate.h +122 -0
- package/Libraries/AppDelegate/RCTAppDelegate.mm +330 -0
- package/Libraries/AppDelegate/RCTAppSetupUtils.h +59 -0
- package/Libraries/AppDelegate/RCTAppSetupUtils.mm +167 -0
- package/Libraries/AppDelegate/RCTArchConfiguratorProtocol.h +32 -0
- package/Libraries/AppDelegate/RCTDependencyProvider.h +26 -0
- package/Libraries/AppDelegate/RCTRootViewFactory.h +198 -0
- package/Libraries/AppDelegate/RCTRootViewFactory.mm +310 -0
- package/Libraries/AppDelegate/RCTUIConfiguratorProtocol.h +56 -0
- package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +99 -0
- package/Libraries/AppState/AppState.d.ts +58 -0
- package/Libraries/AppState/AppState.js +128 -0
- package/Libraries/AppState/NativeAppState.js +13 -0
- package/Libraries/BatchedBridge/BatchedBridge.js +28 -0
- package/Libraries/BatchedBridge/MessageQueue.js +492 -0
- package/Libraries/BatchedBridge/NativeModules.d.ts +25 -0
- package/Libraries/BatchedBridge/NativeModules.js +212 -0
- package/Libraries/BatchedBridge/__mocks__/MessageQueueTestConfig.js +38 -0
- package/Libraries/BatchedBridge/__mocks__/MessageQueueTestModule.js +22 -0
- package/Libraries/Blob/Blob.js +158 -0
- package/Libraries/Blob/BlobManager.js +179 -0
- package/Libraries/Blob/BlobRegistry.js +43 -0
- package/Libraries/Blob/BlobTypes.js +30 -0
- package/Libraries/Blob/File.js +55 -0
- package/Libraries/Blob/FileReader.js +186 -0
- package/Libraries/Blob/NativeBlobModule.js +13 -0
- package/Libraries/Blob/NativeFileReaderModule.js +13 -0
- package/Libraries/Blob/RCTBlobCollector.h +26 -0
- package/Libraries/Blob/RCTBlobCollector.mm +57 -0
- package/Libraries/Blob/RCTBlobManager.h +35 -0
- package/Libraries/Blob/RCTBlobManager.mm +358 -0
- package/Libraries/Blob/RCTBlobPlugins.h +41 -0
- package/Libraries/Blob/RCTBlobPlugins.mm +34 -0
- package/Libraries/Blob/RCTFileReaderModule.h +12 -0
- package/Libraries/Blob/RCTFileReaderModule.mm +96 -0
- package/Libraries/Blob/React-RCTBlob.podspec +68 -0
- package/Libraries/Blob/URL.js +173 -0
- package/Libraries/Blob/URLSearchParams.js +71 -0
- package/Libraries/Blob/URLSearchParams.js.flow +23 -0
- package/Libraries/Blob/__mocks__/BlobModule.js +16 -0
- package/Libraries/Blob/__mocks__/FileReaderModule.js +20 -0
- package/Libraries/BugReporting/BugReporting.js +140 -0
- package/Libraries/BugReporting/NativeBugReporting.js +13 -0
- package/Libraries/BugReporting/dumpReactTree.js +151 -0
- package/Libraries/BugReporting/getReactData.js +187 -0
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +173 -0
- package/Libraries/Components/AccessibilityInfo/{AccessibilityInfo.harmony.js → AccessibilityInfo.js} +142 -69
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +13 -0
- package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +13 -0
- package/Libraries/Components/AccessibilityInfo/delegates/AccessibilityInfoDelegate.harmony.ts +44 -0
- package/Libraries/Components/AccessibilityInfo/delegates/AccessibilityInfoDelegate.ts +28 -0
- package/Libraries/Components/AccessibilityInfo/delegates/BaseAccessibilityInfoDelegate.ts +69 -0
- package/Libraries/Components/AccessibilityInfo/{NativeAccessibilityInfoHarmony.ts → delegates/NativeAccessibilityInfoHarmony.harmony.ts} +9 -2
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +36 -0
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.ios.js +26 -0
- package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.js.flow +20 -0
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.d.ts +86 -0
- package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +177 -0
- package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +13 -0
- package/Libraries/Components/Button.d.ts +42 -0
- package/Libraries/Components/{Button/Button.harmony.js → Button.js} +132 -133
- package/Libraries/Components/Clipboard/Clipboard.d.ts +28 -0
- package/Libraries/Components/Clipboard/Clipboard.js +40 -0
- package/Libraries/Components/Clipboard/NativeClipboard.js +13 -0
- package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +13 -0
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +394 -0
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.d.ts +141 -0
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +14 -0
- package/Libraries/Components/Keyboard/Keyboard.d.ts +109 -0
- package/Libraries/Components/Keyboard/Keyboard.js +205 -0
- package/Libraries/Components/Keyboard/KeyboardAvoidingView.d.ts +46 -0
- package/Libraries/Components/Keyboard/{KeyboardAvoidingView.harmony.js → KeyboardAvoidingView.js} +72 -23
- package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +13 -0
- package/Libraries/Components/Keyboard/delegates/BaseKeyboardAvoidingViewDelegate.ts +28 -0
- package/Libraries/Components/Keyboard/delegates/KeyboardAvoidingViewDelegate.harmony.ts +42 -0
- package/Libraries/Components/Keyboard/delegates/KeyboardAvoidingViewDelegate.ts +6 -0
- package/Libraries/Components/Pressable/Pressable.d.ts +167 -0
- package/Libraries/Components/Pressable/Pressable.js +369 -0
- package/Libraries/Components/Pressable/useAndroidRippleForView.js +109 -0
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +113 -0
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.d.ts +83 -0
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +20 -0
- package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +13 -0
- package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +13 -0
- package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +13 -0
- package/Libraries/Components/RefreshControl/RefreshControl.d.ts +87 -0
- package/Libraries/Components/RefreshControl/{RefreshControl.harmony.js → RefreshControl.js} +62 -53
- package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +31 -0
- package/Libraries/Components/RefreshControl/delegates/BaseRefreshControlDelegate.ts +31 -0
- package/Libraries/Components/RefreshControl/delegates/RefreshControlDelegate.harmony.tsx +29 -0
- package/Libraries/Components/RefreshControl/delegates/RefreshControlDelegate.ts +21 -0
- package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +13 -0
- package/Libraries/Components/SafeAreaView/SafeAreaView.d.ts +24 -0
- package/Libraries/Components/SafeAreaView/SafeAreaView.harmony.tsx +93 -31
- package/Libraries/Components/SafeAreaView/SafeAreaView.js +34 -0
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +13 -0
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +73 -0
- package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +32 -0
- package/Libraries/Components/ScrollView/ScrollView.d.ts +910 -0
- package/Libraries/Components/ScrollView/{ScrollView.harmony.js → ScrollView.js} +342 -357
- package/Libraries/Components/ScrollView/ScrollViewCommands.js +52 -0
- package/Libraries/Components/ScrollView/ScrollViewContext.js +24 -0
- package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +31 -0
- package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +81 -0
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +310 -0
- package/Libraries/Components/ScrollView/delegates/BaseScrollViewDelegate.ts +36 -0
- package/Libraries/Components/ScrollView/delegates/BaseScrollViewNativeComponentDelegate.ts +12 -0
- package/Libraries/Components/ScrollView/delegates/ScrollViewDelegate.harmony.tsx +41 -0
- package/Libraries/Components/ScrollView/delegates/ScrollViewDelegate.ts +23 -0
- package/Libraries/Components/ScrollView/delegates/ScrollViewNativeComponentDelegate.harmony.ts +89 -0
- package/Libraries/Components/ScrollView/delegates/ScrollViewNativeComponentDelegate.ts +14 -0
- package/Libraries/Components/ScrollView/delegates/types.ts +1 -0
- package/Libraries/Components/ScrollView/processDecelerationRate.harmony.ts +19 -0
- package/Libraries/Components/ScrollView/{processDecelerationRate.harmony.js → processDecelerationRate.js} +12 -6
- package/Libraries/Components/Sound/NativeSoundManager.js +13 -0
- package/Libraries/Components/Sound/SoundManager.js +21 -0
- package/Libraries/Components/StaticRenderer.js +37 -0
- package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +13 -0
- package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +13 -0
- package/Libraries/Components/StatusBar/StatusBar.d.ts +138 -0
- package/Libraries/Components/StatusBar/{StatusBar.harmony.js → StatusBar.js} +124 -91
- package/Libraries/Components/StatusBar/delegates/BaseStatusBarDelegate.ts +25 -0
- package/Libraries/Components/StatusBar/delegates/NativeStatusBarManagerHarmony.harmony.ts +53 -0
- package/Libraries/Components/StatusBar/delegates/StatusBarDelegate.harmony.ts +83 -0
- package/Libraries/Components/StatusBar/delegates/StatusBarDelegate.ts +44 -0
- package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +13 -0
- package/Libraries/Components/Switch/Switch.d.ts +115 -0
- package/Libraries/Components/Switch/Switch.js +257 -0
- package/Libraries/Components/Switch/SwitchNativeComponent.js +13 -0
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +751 -0
- package/Libraries/Components/TextInput/InputAccessoryView.d.ts +34 -0
- package/Libraries/Components/TextInput/InputAccessoryView.js +123 -0
- package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +13 -0
- package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +45 -0
- package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +43 -0
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +168 -0
- package/Libraries/Components/TextInput/TextInput.d.ts +1007 -0
- package/Libraries/Components/TextInput/TextInput.flow.js +1109 -0
- package/Libraries/Components/TextInput/{TextInput.harmony.js → TextInput.js} +568 -336
- package/Libraries/Components/TextInput/TextInputNativeCommands.js +29 -0
- package/Libraries/Components/TextInput/TextInputState.js +216 -0
- package/Libraries/Components/TextInput/delegates/BaseTextInputDelegate.ts +39 -0
- package/Libraries/Components/TextInput/delegates/BaseTextInputStateDelegate.ts +12 -0
- package/Libraries/Components/TextInput/delegates/TextInputDelegate.harmony.tsx +98 -0
- package/Libraries/Components/TextInput/delegates/TextInputDelegate.ts +40 -0
- package/Libraries/Components/TextInput/delegates/TextInputStateDelegate.harmony.tsx +20 -0
- package/Libraries/Components/TextInput/delegates/TextInputStateDelegate.ts +15 -0
- package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +13 -0
- package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +74 -0
- package/Libraries/Components/ToastAndroid/ToastAndroid.d.ts +47 -0
- package/Libraries/Components/ToastAndroid/ToastAndroid.js +45 -0
- package/Libraries/Components/Touchable/BoundingDimensions.js +53 -0
- package/Libraries/Components/Touchable/PooledClass.js +133 -0
- package/Libraries/Components/Touchable/Position.js +40 -0
- package/Libraries/Components/Touchable/Touchable.d.ts +90 -0
- package/Libraries/Components/Touchable/Touchable.js +973 -0
- package/Libraries/Components/Touchable/TouchableBounce.js +222 -0
- package/Libraries/Components/Touchable/TouchableHighlight.d.ts +62 -0
- package/Libraries/Components/Touchable/{TouchableHighlight.harmony.js → TouchableHighlight.js} +49 -47
- package/Libraries/Components/Touchable/TouchableNativeFeedback.d.ts +114 -0
- package/Libraries/Components/Touchable/{TouchableNativeFeedback.harmony.js → TouchableNativeFeedback.js} +79 -73
- package/Libraries/Components/Touchable/TouchableOpacity.d.ts +81 -0
- package/Libraries/Components/Touchable/TouchableOpacity.js +339 -0
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.d.ts +151 -0
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +238 -0
- package/Libraries/Components/Touchable/delegates/BaseTouchableHighlightDelegate.ts +13 -0
- package/Libraries/Components/Touchable/delegates/BaseTouchableNativeFeedbackDelegate.ts +13 -0
- package/Libraries/Components/Touchable/delegates/BaseTouchableWithoutFeedbackDelegate.ts +13 -0
- package/Libraries/Components/Touchable/delegates/TouchableHighlightDelegate.harmony.ts +14 -0
- package/Libraries/Components/Touchable/delegates/TouchableHighlightDelegate.ts +6 -0
- package/Libraries/Components/Touchable/delegates/TouchableNativeFeedbackDelegate.harmony.ts +14 -0
- package/Libraries/Components/Touchable/delegates/TouchableNativeFeedbackDelegate.ts +6 -0
- package/Libraries/Components/Touchable/delegates/TouchableWithoutFeedbackDelegate.harmony.ts +14 -0
- package/Libraries/Components/Touchable/delegates/TouchableWithoutFeedbackDelegate.ts +6 -0
- package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +13 -0
- package/Libraries/Components/UnimplementedViews/UnimplementedView.js +41 -0
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +218 -0
- package/Libraries/Components/View/ReactNativeViewAttributes.js +60 -0
- package/Libraries/Components/View/View.d.ts +29 -0
- package/Libraries/Components/View/{View.harmony.js → View.js} +37 -53
- package/Libraries/Components/View/ViewAccessibility.d.ts +404 -0
- package/Libraries/Components/View/ViewAccessibility.js +167 -0
- package/Libraries/Components/View/ViewNativeComponent.js +36 -0
- package/Libraries/Components/View/ViewPropTypes.d.ts +221 -0
- package/Libraries/Components/View/ViewPropTypes.js +656 -0
- package/Libraries/Components/delegates/BaseButtonDelegate.ts +15 -0
- package/Libraries/Components/delegates/ButtonDelegate.harmony.ts +41 -0
- package/Libraries/Components/delegates/ButtonDelegate.ts +27 -0
- package/Libraries/Core/Devtools/getDevServer.js +43 -0
- package/Libraries/Core/Devtools/loadBundleFromServer.js +152 -0
- package/Libraries/Core/Devtools/openFileInEditor.js +26 -0
- package/Libraries/Core/Devtools/openURLInBrowser.js +23 -0
- package/Libraries/Core/Devtools/parseErrorStack.js +59 -0
- package/Libraries/Core/Devtools/parseHermesStack.js +147 -0
- package/Libraries/Core/Devtools/symbolicateStackTrace.js +50 -0
- package/Libraries/Core/ExceptionsManager.js +282 -0
- package/Libraries/Core/ExtendedError.js +33 -0
- package/Libraries/Core/InitializeCore.js +60 -0
- package/Libraries/Core/NativeExceptionsManager.js +13 -0
- package/Libraries/Core/RawEventEmitter.js +39 -0
- package/Libraries/Core/ReactFiberErrorDialog.js +65 -0
- package/Libraries/Core/ReactNativeVersion.js +23 -0
- package/Libraries/Core/ReactNativeVersionCheck.js +52 -0
- package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +13 -0
- package/Libraries/Core/Timers/JSTimers.js +487 -0
- package/Libraries/Core/Timers/NativeTiming.js +13 -0
- package/Libraries/Core/Timers/immediateShim.js +68 -0
- package/Libraries/Core/Timers/queueMicrotask.js +41 -0
- package/Libraries/Core/__mocks__/ErrorUtils.js +33 -0
- package/Libraries/Core/__mocks__/NativeExceptionsManager.js +19 -0
- package/Libraries/Core/checkNativeVersion.js +18 -0
- package/Libraries/Core/polyfillPromise.js +38 -0
- package/Libraries/Core/registerCallableModule.d.ts +16 -0
- package/Libraries/Core/registerCallableModule.js +42 -0
- package/Libraries/Core/setUpAlert.js +23 -0
- package/Libraries/Core/setUpBatchedBridge.js +50 -0
- package/Libraries/Core/setUpDeveloperTools.js +82 -0
- package/Libraries/Core/setUpErrorHandling.js +35 -0
- package/Libraries/Core/setUpGlobals.js +36 -0
- package/Libraries/Core/setUpNavigator.js +22 -0
- package/Libraries/Core/setUpPerformance.js +31 -0
- package/Libraries/Core/setUpPlatform.harmony.js +30 -0
- package/Libraries/Core/setUpPlatform.js +1 -0
- package/Libraries/Core/setUpReactDevTools.js +252 -0
- package/Libraries/Core/setUpReactRefresh.js +47 -0
- package/Libraries/Core/setUpRegeneratorRuntime.js +46 -0
- package/Libraries/Core/setUpSegmentFetcher.js +53 -0
- package/Libraries/Core/setUpTimers.js +125 -0
- package/Libraries/Core/setUpXHR.js +41 -0
- package/Libraries/Debugging/DebuggingOverlay.js +110 -0
- package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +13 -0
- package/Libraries/Debugging/DebuggingOverlayRegistry.js +513 -0
- package/Libraries/Debugging/useSubscribeToDebuggingOverlayRegistry.js +32 -0
- package/Libraries/EventEmitter/NativeEventEmitter.d.ts +63 -0
- package/Libraries/EventEmitter/NativeEventEmitter.js +122 -0
- package/Libraries/EventEmitter/RCTDeviceEventEmitter.d.ts +29 -0
- package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +43 -0
- package/Libraries/EventEmitter/RCTEventEmitter.js +25 -0
- package/Libraries/EventEmitter/RCTNativeAppEventEmitter.d.ts +32 -0
- package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +18 -0
- package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +48 -0
- package/Libraries/Events/CustomEvent.js +32 -0
- package/Libraries/Events/EventPolyfill.js +239 -0
- package/Libraries/FBLazyVector/FBLazyVector/FBLazyIterator.h +127 -0
- package/Libraries/FBLazyVector/FBLazyVector/FBLazyVector.h +102 -0
- package/Libraries/FBLazyVector/FBLazyVector.podspec +31 -0
- package/Libraries/HeapCapture/HeapCapture.js +29 -0
- package/Libraries/HeapCapture/NativeJSCHeapCapture.js +13 -0
- package/Libraries/Image/AssetRegistry.js +13 -0
- package/Libraries/Image/AssetSourceResolver.harmony.ts +75 -29
- package/Libraries/Image/AssetSourceResolver.js +202 -0
- package/Libraries/Image/AssetUtils.js +47 -0
- package/Libraries/Image/Image.android.js +322 -0
- package/Libraries/Image/Image.d.ts +373 -0
- package/Libraries/Image/Image.harmony.ts +17 -0
- package/Libraries/Image/Image.ios.js +252 -0
- package/Libraries/Image/Image.js.flow +13 -0
- package/Libraries/Image/ImageAnalyticsTagContext.js +22 -0
- package/Libraries/Image/ImageBackground.js +106 -0
- package/Libraries/Image/ImageInjection.js +87 -0
- package/Libraries/Image/ImageProps.js +296 -0
- package/Libraries/Image/ImageResizeMode.d.ts +56 -0
- package/Libraries/Image/ImageResizeMode.js +39 -0
- package/Libraries/Image/ImageSource.d.ts +74 -0
- package/Libraries/Image/ImageSource.js +135 -0
- package/Libraries/Image/ImageSourceUtils.js +80 -0
- package/Libraries/Image/ImageTypes.flow.js +78 -0
- package/Libraries/Image/ImageUtils.js +25 -0
- package/Libraries/Image/ImageViewNativeComponent.js +175 -0
- package/Libraries/Image/NativeImageEditor.js +13 -0
- package/Libraries/Image/NativeImageLoaderAndroid.js +13 -0
- package/Libraries/Image/NativeImageLoaderIOS.js +13 -0
- package/Libraries/Image/NativeImageStoreAndroid.js +13 -0
- package/Libraries/Image/NativeImageStoreIOS.js +13 -0
- package/Libraries/Image/RCTAnimatedImage.h +21 -0
- package/Libraries/Image/RCTAnimatedImage.mm +175 -0
- package/Libraries/Image/RCTBundleAssetImageLoader.h +12 -0
- package/Libraries/Image/RCTBundleAssetImageLoader.mm +83 -0
- package/Libraries/Image/RCTDisplayWeakRefreshable.h +23 -0
- package/Libraries/Image/RCTDisplayWeakRefreshable.mm +31 -0
- package/Libraries/Image/RCTGIFImageDecoder.h +12 -0
- package/Libraries/Image/RCTGIFImageDecoder.mm +63 -0
- package/Libraries/Image/RCTImageBlurUtils.h +13 -0
- package/Libraries/Image/RCTImageBlurUtils.mm +100 -0
- package/Libraries/Image/RCTImageCache.h +45 -0
- package/Libraries/Image/RCTImageCache.mm +164 -0
- package/Libraries/Image/RCTImageDataDecoder.h +53 -0
- package/Libraries/Image/RCTImageEditingManager.h +12 -0
- package/Libraries/Image/RCTImageEditingManager.mm +113 -0
- package/Libraries/Image/RCTImageLoader.h +43 -0
- package/Libraries/Image/RCTImageLoader.mm +1302 -0
- package/Libraries/Image/RCTImageLoaderLoggable.h +32 -0
- package/Libraries/Image/RCTImageLoaderProtocol.h +135 -0
- package/Libraries/Image/RCTImageLoaderWithAttributionProtocol.h +48 -0
- package/Libraries/Image/RCTImagePlugins.h +44 -0
- package/Libraries/Image/RCTImagePlugins.mm +37 -0
- package/Libraries/Image/RCTImageShadowView.h +12 -0
- package/Libraries/Image/RCTImageShadowView.mm +24 -0
- package/Libraries/Image/RCTImageStoreManager.h +55 -0
- package/Libraries/Image/RCTImageStoreManager.mm +296 -0
- package/Libraries/Image/RCTImageURLLoader.h +83 -0
- package/Libraries/Image/RCTImageURLLoaderWithAttribution.h +78 -0
- package/Libraries/Image/RCTImageURLLoaderWithAttribution.mm +32 -0
- package/Libraries/Image/RCTImageUtils.h +94 -0
- package/Libraries/Image/RCTImageUtils.mm +389 -0
- package/Libraries/Image/RCTImageView.h +27 -0
- package/Libraries/Image/RCTImageView.mm +504 -0
- package/Libraries/Image/RCTImageViewManager.h +12 -0
- package/Libraries/Image/RCTImageViewManager.mm +116 -0
- package/Libraries/Image/RCTLocalAssetImageLoader.h +13 -0
- package/Libraries/Image/RCTLocalAssetImageLoader.mm +83 -0
- package/Libraries/Image/RCTResizeMode.h +53 -0
- package/Libraries/Image/RCTResizeMode.mm +25 -0
- package/Libraries/Image/RCTUIImageViewAnimated.h +13 -0
- package/Libraries/Image/RCTUIImageViewAnimated.mm +346 -0
- package/Libraries/Image/React-RCTImage.podspec +60 -0
- package/Libraries/Image/RelativeImageStub.js +28 -0
- package/Libraries/Image/TextInlineImageNativeComponent.js +51 -0
- package/Libraries/Image/nativeImageSource.js +64 -0
- package/Libraries/Image/resolveAssetSource.js +143 -0
- package/Libraries/Inspector/BorderBox.js +32 -0
- package/Libraries/Inspector/BoxInspector.js +109 -0
- package/Libraries/Inspector/ElementBox.js +143 -0
- package/Libraries/Inspector/ElementProperties.js +120 -0
- package/Libraries/Inspector/Inspector.js +206 -0
- package/Libraries/Inspector/InspectorOverlay.js +65 -0
- package/Libraries/Inspector/InspectorPanel.js +164 -0
- package/Libraries/Inspector/NetworkOverlay.js +611 -0
- package/Libraries/Inspector/PerformanceOverlay.js +63 -0
- package/Libraries/Inspector/ReactDevToolsOverlay.js +165 -0
- package/Libraries/Inspector/StyleInspector.js +70 -0
- package/Libraries/Inspector/getInspectorDataForViewAtPoint.js +81 -0
- package/Libraries/Inspector/resolveBoxStyle.js +114 -0
- package/Libraries/Interaction/FrameRateLogger.js +72 -0
- package/Libraries/Interaction/InteractionManager.d.ts +74 -0
- package/Libraries/Interaction/InteractionManager.js +216 -0
- package/Libraries/Interaction/InteractionManagerStub.js +176 -0
- package/Libraries/Interaction/JSEventLoopWatchdog.js +88 -0
- package/Libraries/Interaction/NativeFrameRateLogger.js +13 -0
- package/Libraries/Interaction/PanResponder.d.ts +202 -0
- package/Libraries/Interaction/PanResponder.js +579 -0
- package/Libraries/Interaction/TaskQueue.js +183 -0
- package/Libraries/Interaction/TouchHistoryMath.js +156 -0
- package/Libraries/JSInspector/InspectorAgent.js +27 -0
- package/Libraries/JSInspector/JSInspector.js +33 -0
- package/Libraries/JSInspector/NetworkAgent.js +295 -0
- package/Libraries/LayoutAnimation/LayoutAnimation.d.ts +84 -0
- package/Libraries/LayoutAnimation/LayoutAnimation.js +200 -0
- package/Libraries/Linking/Linking.d.ts +61 -0
- package/Libraries/Linking/Linking.js +133 -0
- package/Libraries/Linking/NativeIntentAndroid.js +13 -0
- package/Libraries/Linking/NativeLinkingManager.js +13 -0
- package/Libraries/LinkingIOS/RCTLinkingManager.h +27 -0
- package/Libraries/LinkingIOS/RCTLinkingManager.mm +204 -0
- package/Libraries/LinkingIOS/RCTLinkingPlugins.h +40 -0
- package/Libraries/LinkingIOS/RCTLinkingPlugins.mm +33 -0
- package/Libraries/LinkingIOS/React-RCTLinking.podspec +56 -0
- package/Libraries/Lists/FillRateHelper.js +19 -0
- package/Libraries/Lists/FlatList.d.ts +244 -0
- package/Libraries/Lists/FlatList.js +717 -0
- package/Libraries/Lists/SectionList.d.ts +267 -0
- package/Libraries/Lists/SectionList.js +269 -0
- package/Libraries/Lists/SectionListModern.js +249 -0
- package/Libraries/Lists/ViewabilityHelper.js +24 -0
- package/Libraries/Lists/VirtualizeUtils.js +18 -0
- package/Libraries/Lists/VirtualizedList.js +23 -0
- package/Libraries/Lists/VirtualizedListContext.js +18 -0
- package/Libraries/Lists/VirtualizedSectionList.js +22 -0
- package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +118 -0
- package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +134 -0
- package/Libraries/LogBox/Data/LogBoxData.js +511 -0
- package/Libraries/LogBox/Data/LogBoxLog.js +257 -0
- package/Libraries/LogBox/Data/LogBoxSymbolication.js +65 -0
- package/Libraries/LogBox/Data/parseLogBoxLog.js +514 -0
- package/Libraries/LogBox/LogBox.d.ts +28 -0
- package/Libraries/LogBox/LogBox.js +291 -0
- package/Libraries/LogBox/LogBoxInspectorContainer.js +68 -0
- package/Libraries/LogBox/LogBoxNotificationContainer.js +105 -0
- package/Libraries/LogBox/UI/AnsiHighlight.js +121 -0
- package/Libraries/LogBox/UI/LogBoxButton.js +70 -0
- package/Libraries/LogBox/UI/LogBoxImages/alert-triangle.png +0 -0
- package/Libraries/LogBox/UI/LogBoxImages/chevron-left.png +0 -0
- package/Libraries/LogBox/UI/LogBoxImages/chevron-right.png +0 -0
- package/Libraries/LogBox/UI/LogBoxImages/close.png +0 -0
- package/Libraries/LogBox/UI/LogBoxImages/loader.png +0 -0
- package/Libraries/LogBox/UI/LogBoxInspector.js +89 -0
- package/Libraries/LogBox/UI/LogBoxInspectorBody.js +87 -0
- package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +164 -0
- package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +70 -0
- package/Libraries/LogBox/UI/LogBoxInspectorFooterButton.js +58 -0
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +108 -0
- package/Libraries/LogBox/UI/LogBoxInspectorHeaderButton.js +76 -0
- package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +125 -0
- package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +188 -0
- package/Libraries/LogBox/UI/LogBoxInspectorSection.js +58 -0
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +133 -0
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +114 -0
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +221 -0
- package/Libraries/LogBox/UI/LogBoxMessage.js +169 -0
- package/Libraries/LogBox/UI/LogBoxNotification.js +83 -0
- package/Libraries/LogBox/UI/LogBoxNotificationCountBadge.js +63 -0
- package/Libraries/LogBox/UI/LogBoxNotificationDismissButton.js +67 -0
- package/Libraries/LogBox/UI/LogBoxNotificationMessage.js +57 -0
- package/Libraries/LogBox/UI/LogBoxStyle.js +65 -0
- package/Libraries/Modal/Modal.d.ts +116 -0
- package/Libraries/Modal/Modal.js +365 -0
- package/Libraries/Modal/ModalInjection.js +15 -0
- package/Libraries/Modal/NativeModalManager.js +13 -0
- package/Libraries/Modal/RCTModalHostViewNativeComponent.js +13 -0
- package/Libraries/NativeAnimation/Drivers/RCTAnimationDriver.h +38 -0
- package/Libraries/NativeAnimation/Drivers/RCTDecayAnimation.h +12 -0
- package/Libraries/NativeAnimation/Drivers/RCTDecayAnimation.mm +125 -0
- package/Libraries/NativeAnimation/Drivers/RCTEventAnimation.h +20 -0
- package/Libraries/NativeAnimation/Drivers/RCTEventAnimation.mm +36 -0
- package/Libraries/NativeAnimation/Drivers/RCTFrameAnimation.h +12 -0
- package/Libraries/NativeAnimation/Drivers/RCTFrameAnimation.mm +151 -0
- package/Libraries/NativeAnimation/Drivers/RCTSpringAnimation.h +12 -0
- package/Libraries/NativeAnimation/Drivers/RCTSpringAnimation.mm +200 -0
- package/Libraries/NativeAnimation/Nodes/RCTAdditionAnimatedNode.h +12 -0
- package/Libraries/NativeAnimation/Nodes/RCTAdditionAnimatedNode.mm +25 -0
- package/Libraries/NativeAnimation/Nodes/RCTAnimatedNode.h +50 -0
- package/Libraries/NativeAnimation/Nodes/RCTAnimatedNode.mm +126 -0
- package/Libraries/NativeAnimation/Nodes/RCTColorAnimatedNode.h +14 -0
- package/Libraries/NativeAnimation/Nodes/RCTColorAnimatedNode.mm +29 -0
- package/Libraries/NativeAnimation/Nodes/RCTDiffClampAnimatedNode.h +12 -0
- package/Libraries/NativeAnimation/Nodes/RCTDiffClampAnimatedNode.mm +64 -0
- package/Libraries/NativeAnimation/Nodes/RCTDivisionAnimatedNode.h +12 -0
- package/Libraries/NativeAnimation/Nodes/RCTDivisionAnimatedNode.mm +32 -0
- package/Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.h +26 -0
- package/Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.mm +169 -0
- package/Libraries/NativeAnimation/Nodes/RCTModuloAnimatedNode.h +12 -0
- package/Libraries/NativeAnimation/Nodes/RCTModuloAnimatedNode.mm +22 -0
- package/Libraries/NativeAnimation/Nodes/RCTMultiplicationAnimatedNode.h +12 -0
- package/Libraries/NativeAnimation/Nodes/RCTMultiplicationAnimatedNode.mm +26 -0
- package/Libraries/NativeAnimation/Nodes/RCTObjectAnimatedNode.h +14 -0
- package/Libraries/NativeAnimation/Nodes/RCTObjectAnimatedNode.mm +66 -0
- package/Libraries/NativeAnimation/Nodes/RCTPropsAnimatedNode.h +26 -0
- package/Libraries/NativeAnimation/Nodes/RCTPropsAnimatedNode.mm +146 -0
- package/Libraries/NativeAnimation/Nodes/RCTStyleAnimatedNode.h +14 -0
- package/Libraries/NativeAnimation/Nodes/RCTStyleAnimatedNode.mm +62 -0
- package/Libraries/NativeAnimation/Nodes/RCTSubtractionAnimatedNode.h +12 -0
- package/Libraries/NativeAnimation/Nodes/RCTSubtractionAnimatedNode.mm +25 -0
- package/Libraries/NativeAnimation/Nodes/RCTTrackingAnimatedNode.h +12 -0
- package/Libraries/NativeAnimation/Nodes/RCTTrackingAnimatedNode.mm +47 -0
- package/Libraries/NativeAnimation/Nodes/RCTTransformAnimatedNode.h +14 -0
- package/Libraries/NativeAnimation/Nodes/RCTTransformAnimatedNode.mm +55 -0
- package/Libraries/NativeAnimation/Nodes/RCTValueAnimatedNode.h +30 -0
- package/Libraries/NativeAnimation/Nodes/RCTValueAnimatedNode.mm +60 -0
- package/Libraries/NativeAnimation/RCTAnimationPlugins.h +41 -0
- package/Libraries/NativeAnimation/RCTAnimationPlugins.mm +34 -0
- package/Libraries/NativeAnimation/RCTAnimationUtils.h +46 -0
- package/Libraries/NativeAnimation/RCTAnimationUtils.mm +129 -0
- package/Libraries/NativeAnimation/RCTNativeAnimatedModule.h +28 -0
- package/Libraries/NativeAnimation/RCTNativeAnimatedModule.mm +395 -0
- package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.h +94 -0
- package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.mm +511 -0
- package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.h +25 -0
- package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +411 -0
- package/Libraries/NativeAnimation/React-RCTAnimation.podspec +56 -0
- package/Libraries/NativeComponent/BaseViewConfig.android.js +423 -0
- package/Libraries/NativeComponent/BaseViewConfig.harmony.js +12 -326
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +423 -0
- package/Libraries/NativeComponent/BaseViewConfig.js.flow +14 -0
- package/Libraries/NativeComponent/NativeComponentRegistry.js +164 -0
- package/Libraries/NativeComponent/NativeComponentRegistryUnstable.js +30 -0
- package/Libraries/NativeComponent/PlatformBaseViewConfig.js +25 -0
- package/Libraries/NativeComponent/StaticViewConfigValidator.js +144 -0
- package/Libraries/NativeComponent/ViewConfig.js +52 -0
- package/Libraries/NativeComponent/ViewConfigIgnore.js +55 -0
- package/Libraries/NativeComponent/delegates/BaseViewConfigIgnoreDelegate.ts +10 -0
- package/Libraries/NativeComponent/delegates/ViewConfigIgnoreDelegate.harmony.ts +13 -0
- package/Libraries/NativeComponent/delegates/ViewConfigIgnoreDelegate.ts +10 -0
- package/Libraries/NativeModules/specs/NativeDevMenu.js +13 -0
- package/Libraries/NativeModules/specs/NativeDevSettings.js +13 -0
- package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +13 -0
- package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +13 -0
- package/Libraries/NativeModules/specs/NativeLogBox.js +13 -0
- package/Libraries/NativeModules/specs/NativeRedBox.js +13 -0
- package/Libraries/NativeModules/specs/NativeSourceCode.js +13 -0
- package/Libraries/Network/FormData.js +108 -0
- package/Libraries/Network/NativeNetworkingAndroid.js +13 -0
- package/Libraries/Network/NativeNetworkingIOS.js +13 -0
- package/Libraries/Network/RCTDataRequestHandler.h +16 -0
- package/Libraries/Network/RCTDataRequestHandler.mm +86 -0
- package/Libraries/Network/RCTFileRequestHandler.h +16 -0
- package/Libraries/Network/RCTFileRequestHandler.mm +100 -0
- package/Libraries/Network/RCTHTTPRequestHandler.h +22 -0
- package/Libraries/Network/RCTHTTPRequestHandler.mm +195 -0
- package/Libraries/Network/RCTNetworkPlugins.h +43 -0
- package/Libraries/Network/RCTNetworkPlugins.mm +36 -0
- package/Libraries/Network/RCTNetworkTask.h +47 -0
- package/Libraries/Network/RCTNetworkTask.mm +228 -0
- package/Libraries/Network/RCTNetworking.android.js +95 -0
- package/Libraries/Network/RCTNetworking.h +86 -0
- package/Libraries/Network/RCTNetworking.ios.js +112 -0
- package/Libraries/Network/RCTNetworking.js.flow +89 -0
- package/Libraries/Network/RCTNetworking.mm +823 -0
- package/Libraries/Network/React-RCTNetwork.podspec +56 -0
- package/Libraries/Network/XHRInterceptor.js +214 -0
- package/Libraries/Network/XMLHttpRequest.js +698 -0
- package/Libraries/Network/convertRequestBody.js +43 -0
- package/Libraries/Network/fetch.js +19 -0
- package/Libraries/NewAppScreen/components/Colors.js +19 -0
- package/Libraries/NewAppScreen/components/DebugInstructions.js +41 -0
- package/Libraries/NewAppScreen/components/Header.js +77 -0
- package/Libraries/NewAppScreen/components/HermesBadge.js +53 -0
- package/Libraries/NewAppScreen/components/LearnMoreLinks.js +148 -0
- package/Libraries/NewAppScreen/components/ReloadInstructions.js +39 -0
- package/Libraries/NewAppScreen/components/logo.png +0 -0
- package/Libraries/NewAppScreen/index.js +25 -0
- package/Libraries/Performance/NativeJSCSamplingProfiler.js +13 -0
- package/Libraries/Performance/SamplingProfiler.js +39 -0
- package/Libraries/Performance/Systrace.d.ts +66 -0
- package/Libraries/Performance/Systrace.js +139 -0
- package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +13 -0
- package/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +163 -0
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +299 -0
- package/Libraries/Pressability/HoverState.js +58 -0
- package/Libraries/Pressability/Pressability.js +954 -0
- package/Libraries/Pressability/PressabilityDebug.js +85 -0
- package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +49 -0
- package/Libraries/Pressability/PressabilityTypes.js +18 -0
- package/Libraries/Pressability/usePressability.js +60 -0
- package/Libraries/Promise.js +23 -0
- package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +13 -0
- package/Libraries/PushNotificationIOS/PushNotificationIOS.d.ts +295 -0
- package/Libraries/PushNotificationIOS/PushNotificationIOS.js +569 -0
- package/Libraries/PushNotificationIOS/RCTPushNotificationManager.h +48 -0
- package/Libraries/PushNotificationIOS/RCTPushNotificationManager.mm +590 -0
- package/Libraries/PushNotificationIOS/RCTPushNotificationPlugins.h +40 -0
- package/Libraries/PushNotificationIOS/RCTPushNotificationPlugins.mm +33 -0
- package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +56 -0
- package/Libraries/ReactNative/AppContainer-dev.js +208 -0
- package/Libraries/ReactNative/AppContainer-prod.js +50 -0
- package/Libraries/ReactNative/AppContainer.js +31 -0
- package/Libraries/ReactNative/AppRegistry.d.ts +121 -0
- package/Libraries/ReactNative/AppRegistry.js +360 -0
- package/Libraries/ReactNative/BridgelessUIManager.js +430 -0
- package/Libraries/ReactNative/DisplayMode.js +32 -0
- package/Libraries/ReactNative/FabricUIManager.js +145 -0
- package/Libraries/ReactNative/HeadlessJsTaskError.js +11 -0
- package/Libraries/ReactNative/I18nManager.d.ts +25 -0
- package/Libraries/ReactNative/{I18nManager.harmony.js → I18nManager.js} +11 -25
- package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +13 -0
- package/Libraries/ReactNative/NativeI18nManager.js +13 -0
- package/Libraries/ReactNative/NativeUIManager.js +13 -0
- package/Libraries/ReactNative/PaperUIManager.js +191 -0
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +150 -0
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +100 -0
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstanceUtils.js +38 -0
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +492 -0
- package/Libraries/ReactNative/ReactFabricPublicInstance/warnForStyleProps.js +33 -0
- package/Libraries/ReactNative/ReactNativeFeatureFlags.js +31 -0
- package/Libraries/ReactNative/ReactNativeRuntimeDiagnostics.js +68 -0
- package/Libraries/ReactNative/RendererImplementation.js +164 -0
- package/Libraries/ReactNative/RendererProxy.d.ts +20 -0
- package/Libraries/ReactNative/RendererProxy.js +26 -0
- package/Libraries/ReactNative/RootTag.d.ts +13 -0
- package/Libraries/ReactNative/RootTag.js +27 -0
- package/Libraries/ReactNative/UIManager.d.ts +113 -0
- package/Libraries/ReactNative/{UIManager.harmony.js → UIManager.js} +16 -33
- package/Libraries/ReactNative/UIManagerProperties.js +61 -0
- package/Libraries/ReactNative/__mocks__/FabricUIManager.js +334 -0
- package/Libraries/ReactNative/delegates/BaseBridgelessUIManagerDelegate.ts +14 -0
- package/Libraries/ReactNative/delegates/BaseI18nManagerDelegate.ts +18 -0
- package/Libraries/ReactNative/delegates/BridgelessUIManagerDelegate.harmony.ts +14 -0
- package/Libraries/ReactNative/delegates/BridgelessUIManagerDelegate.ts +11 -0
- package/Libraries/ReactNative/delegates/I18nManagerDelegate.harmony.ts +22 -0
- package/Libraries/ReactNative/delegates/I18nManagerDelegate.ts +24 -0
- package/Libraries/ReactNative/getCachedComponentWithDebugName.js +33 -0
- package/Libraries/ReactNative/getNativeComponentAttributes.js +212 -0
- package/Libraries/ReactNative/renderApplication.js +108 -0
- package/Libraries/ReactNative/requireNativeComponent.d.ts +23 -0
- package/Libraries/ReactNative/requireNativeComponent.js +35 -0
- package/Libraries/ReactPrivate/README +1 -0
- package/Libraries/ReactPrivate/ReactNativePrivateInitializeCore.js +11 -0
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +116 -0
- package/Libraries/Renderer/README.md +22 -0
- package/Libraries/Renderer/implementations/ReactFabric-dev.js +27376 -0
- package/Libraries/Renderer/implementations/ReactFabric-prod.js +9152 -0
- package/Libraries/Renderer/implementations/ReactFabric-profiling.js +9642 -0
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +27830 -0
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +9379 -0
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +9896 -0
- package/Libraries/Renderer/shims/ReactFabric.js +33 -0
- package/Libraries/Renderer/shims/ReactFeatureFlags.js +19 -0
- package/Libraries/Renderer/shims/ReactNative.js +24 -0
- package/Libraries/Renderer/shims/ReactNativeTypes.js +320 -0
- package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +123 -0
- package/Libraries/Renderer/shims/createReactNativeComponentClass.js +35 -0
- package/Libraries/Required/RCTRequired.h +90 -0
- package/Libraries/Required/RCTRequired.podspec +30 -0
- package/Libraries/Settings/NativeSettingsManager.js +13 -0
- package/Libraries/Settings/RCTSettingsManager.h +16 -0
- package/Libraries/Settings/RCTSettingsManager.mm +123 -0
- package/Libraries/Settings/RCTSettingsPlugins.h +40 -0
- package/Libraries/Settings/RCTSettingsPlugins.mm +33 -0
- package/Libraries/Settings/React-RCTSettings.podspec +56 -0
- package/Libraries/Settings/Settings.d.ts +18 -0
- package/Libraries/Settings/Settings.harmony.ts +20 -0
- package/Libraries/Settings/Settings.ios.js +81 -0
- package/Libraries/Settings/Settings.js +33 -0
- package/Libraries/Share/NativeShareModule.js +13 -0
- package/Libraries/Share/Share.d.ts +80 -0
- package/Libraries/Share/{Share.harmony.js → Share.js} +32 -30
- package/Libraries/Share/delegates/BaseShareDelegate.ts +21 -0
- package/Libraries/Share/delegates/ShareDelegate.harmony.ts +42 -0
- package/Libraries/Share/delegates/ShareDelegate.ts +20 -0
- package/Libraries/StyleSheet/EdgeInsetsPropType.js +18 -0
- package/Libraries/StyleSheet/NativePlatformColor.harmony.ts +15 -0
- package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +40 -0
- package/Libraries/StyleSheet/PlatformColorValueTypes.d.ts +18 -0
- package/Libraries/StyleSheet/PlatformColorValueTypes.harmony.ts +8 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +113 -0
- package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +22 -0
- package/Libraries/StyleSheet/PlatformColorValueTypesIOS.d.ts +25 -0
- package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +29 -0
- package/Libraries/StyleSheet/PlatformColorValueTypesIOS.js +22 -0
- package/Libraries/StyleSheet/PointPropType.js +17 -0
- package/Libraries/StyleSheet/Rect.js +26 -0
- package/Libraries/StyleSheet/StyleSheet.d.ts +150 -0
- package/Libraries/StyleSheet/StyleSheet.js +356 -0
- package/Libraries/StyleSheet/StyleSheetTypes.d.ts +573 -0
- package/Libraries/StyleSheet/StyleSheetTypes.js +1004 -0
- package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +58 -0
- package/Libraries/StyleSheet/flattenStyle.js +46 -0
- package/Libraries/StyleSheet/normalizeColor.js +34 -0
- package/Libraries/StyleSheet/private/_StyleSheetTypesOverrides.js +15 -0
- package/Libraries/StyleSheet/private/_TransformStyle.js +69 -0
- package/Libraries/StyleSheet/processAspectRatio.js +63 -0
- package/Libraries/StyleSheet/processBackgroundImage.js +361 -0
- package/Libraries/StyleSheet/processBoxShadow.js +209 -0
- package/Libraries/StyleSheet/processColor.d.ts +16 -0
- package/Libraries/StyleSheet/processColor.js +59 -0
- package/Libraries/StyleSheet/processColorArray.js +35 -0
- package/Libraries/StyleSheet/processFilter.js +321 -0
- package/Libraries/StyleSheet/processFontVariant.js +30 -0
- package/Libraries/StyleSheet/processTransform.js +263 -0
- package/Libraries/StyleSheet/processTransformOrigin.js +136 -0
- package/Libraries/StyleSheet/setNormalizedColorAlpha.js +31 -0
- package/Libraries/StyleSheet/splitLayoutProps.js +72 -0
- package/Libraries/Text/BaseText/RCTBaseTextShadowView.h +29 -0
- package/Libraries/Text/BaseText/RCTBaseTextShadowView.mm +158 -0
- package/Libraries/Text/BaseText/RCTBaseTextViewManager.h +16 -0
- package/Libraries/Text/BaseText/RCTBaseTextViewManager.mm +60 -0
- package/Libraries/Text/RCTConvert+Text.h +23 -0
- package/Libraries/Text/RCTConvert+Text.mm +44 -0
- package/Libraries/Text/RCTTextAttributes.h +100 -0
- package/Libraries/Text/RCTTextAttributes.mm +354 -0
- package/Libraries/Text/RCTTextTransform.h +16 -0
- package/Libraries/Text/RawText/RCTRawTextShadowView.h +18 -0
- package/Libraries/Text/RawText/RCTRawTextShadowView.mm +34 -0
- package/Libraries/Text/RawText/RCTRawTextViewManager.h +16 -0
- package/Libraries/Text/RawText/RCTRawTextViewManager.mm +28 -0
- package/Libraries/Text/React-RCTText.podspec +37 -0
- package/Libraries/Text/Text/NSTextStorage+FontScaling.h +20 -0
- package/Libraries/Text/Text/NSTextStorage+FontScaling.m +122 -0
- package/Libraries/Text/Text/RCTDynamicTypeRamp.h +37 -0
- package/Libraries/Text/Text/RCTDynamicTypeRamp.mm +82 -0
- package/Libraries/Text/Text/RCTTextShadowView.h +28 -0
- package/Libraries/Text/Text/RCTTextShadowView.mm +466 -0
- package/Libraries/Text/Text/RCTTextView.h +29 -0
- package/Libraries/Text/Text/RCTTextView.mm +294 -0
- package/Libraries/Text/Text/RCTTextViewManager.h +14 -0
- package/Libraries/Text/Text/RCTTextViewManager.mm +93 -0
- package/Libraries/Text/Text.d.ts +219 -0
- package/Libraries/Text/Text.js +537 -0
- package/Libraries/Text/TextAncestor.js +23 -0
- package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputView.h +16 -0
- package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputView.mm +63 -0
- package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputViewManager.h +16 -0
- package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputViewManager.mm +24 -0
- package/Libraries/Text/TextInput/Multiline/RCTUITextView.h +44 -0
- package/Libraries/Text/TextInput/Multiline/RCTUITextView.mm +338 -0
- package/Libraries/Text/TextInput/RCTBackedTextInputDelegate.h +46 -0
- package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.h +36 -0
- package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.mm +307 -0
- package/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h +57 -0
- package/Libraries/Text/TextInput/RCTBaseTextInputShadowView.h +25 -0
- package/Libraries/Text/TextInput/RCTBaseTextInputShadowView.mm +364 -0
- package/Libraries/Text/TextInput/RCTBaseTextInputView.h +63 -0
- package/Libraries/Text/TextInput/RCTBaseTextInputView.mm +817 -0
- package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.h +12 -0
- package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm +178 -0
- package/Libraries/Text/TextInput/RCTInputAccessoryShadowView.h +12 -0
- package/Libraries/Text/TextInput/RCTInputAccessoryShadowView.mm +20 -0
- package/Libraries/Text/TextInput/RCTInputAccessoryView.h +17 -0
- package/Libraries/Text/TextInput/RCTInputAccessoryView.mm +78 -0
- package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.h +12 -0
- package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.mm +74 -0
- package/Libraries/Text/TextInput/RCTInputAccessoryViewManager.h +12 -0
- package/Libraries/Text/TextInput/RCTInputAccessoryViewManager.mm +29 -0
- package/Libraries/Text/TextInput/RCTTextSelection.h +26 -0
- package/Libraries/Text/TextInput/RCTTextSelection.mm +36 -0
- package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputView.h +16 -0
- package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputView.mm +39 -0
- package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputViewManager.h +16 -0
- package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputViewManager.mm +31 -0
- package/Libraries/Text/TextInput/Singleline/RCTUITextField.h +40 -0
- package/Libraries/Text/TextInput/Singleline/RCTUITextField.mm +255 -0
- package/Libraries/Text/TextNativeComponent.js +82 -0
- package/Libraries/Text/TextProps.js +268 -0
- package/Libraries/Text/VirtualText/RCTVirtualTextShadowView.h +12 -0
- package/Libraries/Text/VirtualText/RCTVirtualTextShadowView.mm +38 -0
- package/Libraries/Text/VirtualText/RCTVirtualTextView.h +23 -0
- package/Libraries/Text/VirtualText/RCTVirtualTextView.mm +12 -0
- package/Libraries/Text/VirtualText/RCTVirtualTextViewManager.h +12 -0
- package/Libraries/Text/VirtualText/RCTVirtualTextViewManager.mm +26 -0
- package/Libraries/TurboModule/RCTExport.d.ts +12 -0
- package/Libraries/TurboModule/RCTExport.js +38 -0
- package/Libraries/TurboModule/TurboModuleRegistry.d.ts +13 -0
- package/Libraries/TurboModule/TurboModuleRegistry.js +53 -0
- package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +13 -0
- package/Libraries/TypeSafety/RCTConvertHelpers.h +83 -0
- package/Libraries/TypeSafety/RCTConvertHelpers.mm +51 -0
- package/Libraries/TypeSafety/RCTTypeSafety.podspec +39 -0
- package/Libraries/TypeSafety/RCTTypedModuleConstants.h +47 -0
- package/Libraries/TypeSafety/RCTTypedModuleConstants.mm +50 -0
- package/Libraries/Types/CodegenTypes.js +47 -0
- package/Libraries/Types/CoreEventTypes.d.ts +259 -0
- package/Libraries/Types/CoreEventTypes.js +291 -0
- package/Libraries/Types/ReactDevToolsTypes.js +58 -0
- package/Libraries/Types/RootTagTypes.js +11 -0
- package/Libraries/Types/UIManagerJSInterface.js +16 -0
- package/Libraries/UTFSequence.js +56 -0
- package/Libraries/Utilities/Appearance.d.ts +53 -0
- package/Libraries/Utilities/Appearance.js +133 -0
- package/Libraries/Utilities/{BackHandler.harmony.js → BackHandler.android.js} +8 -22
- package/Libraries/Utilities/BackHandler.d.ts +34 -0
- package/Libraries/Utilities/BackHandler.harmony.ts +10 -0
- package/Libraries/Utilities/BackHandler.ios.js +34 -0
- package/Libraries/Utilities/BackHandler.js.flow +23 -0
- package/Libraries/Utilities/DebugEnvironment.js +16 -0
- package/Libraries/Utilities/DevLoadingView.js +64 -0
- package/Libraries/Utilities/DevSettings.d.ts +32 -0
- package/Libraries/Utilities/DevSettings.js +72 -0
- package/Libraries/Utilities/DeviceInfo.js +13 -0
- package/Libraries/Utilities/Dimensions.d.ts +79 -0
- package/Libraries/Utilities/Dimensions.js +123 -0
- package/Libraries/Utilities/FeatureDetection.js +31 -0
- package/Libraries/Utilities/GlobalPerformanceLogger.js +24 -0
- package/Libraries/Utilities/HMRClient.js +362 -0
- package/Libraries/Utilities/HMRClientProdShim.js +30 -0
- package/Libraries/Utilities/IPerformanceLogger.d.ts +48 -0
- package/Libraries/Utilities/IPerformanceLogger.js +49 -0
- package/Libraries/Utilities/NativeAppearance.js +13 -0
- package/Libraries/Utilities/NativeDevLoadingView.js +13 -0
- package/Libraries/Utilities/NativeDeviceInfo.js +13 -0
- package/Libraries/Utilities/NativePlatformConstantsAndroid.js +13 -0
- package/Libraries/Utilities/NativePlatformConstantsHarmony.harmony.ts +17 -0
- package/Libraries/Utilities/NativePlatformConstantsIOS.js +13 -0
- package/Libraries/Utilities/PerformanceLoggerContext.js +33 -0
- package/Libraries/Utilities/PixelRatio.d.ts +64 -0
- package/Libraries/Utilities/PixelRatio.js +127 -0
- package/Libraries/Utilities/Platform.android.js +87 -0
- package/Libraries/Utilities/Platform.d.ts +21 -11
- package/Libraries/Utilities/Platform.flow.js +91 -0
- package/Libraries/Utilities/Platform.harmony.ts +38 -13
- package/Libraries/Utilities/Platform.ios.js +88 -0
- package/Libraries/Utilities/Platform.js.flow +13 -0
- package/Libraries/Utilities/PolyfillFunctions.js +56 -0
- package/Libraries/Utilities/RCTLog.js +56 -0
- package/Libraries/Utilities/ReactNativeTestTools.js +225 -0
- package/Libraries/Utilities/SceneTracker.js +42 -0
- package/Libraries/Utilities/__mocks__/BackHandler.js +45 -0
- package/Libraries/Utilities/__mocks__/GlobalPerformanceLogger.js +16 -0
- package/Libraries/Utilities/__mocks__/PixelRatio.js +25 -0
- package/Libraries/Utilities/binaryToBase64.js +31 -0
- package/Libraries/Utilities/codegenNativeCommands.js +31 -0
- package/Libraries/Utilities/codegenNativeComponent.js +73 -0
- package/Libraries/Utilities/{createPerformanceLogger.harmony.js → createPerformanceLogger.js} +12 -50
- package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +90 -0
- package/Libraries/Utilities/defineLazyObjectProperty.js +66 -0
- package/Libraries/Utilities/differ/deepDiffer.js +101 -0
- package/Libraries/Utilities/differ/insetsDiffer.js +40 -0
- package/Libraries/Utilities/differ/matricesDiffer.js +51 -0
- package/Libraries/Utilities/differ/pointsDiffer.js +27 -0
- package/Libraries/Utilities/differ/sizesDiffer.js +26 -0
- package/Libraries/Utilities/dismissKeyboard.js +21 -0
- package/Libraries/Utilities/infoLog.js +20 -0
- package/Libraries/Utilities/logError.js +27 -0
- package/Libraries/Utilities/mapWithSeparator.js +28 -0
- package/Libraries/Utilities/stringifySafe.js +121 -0
- package/Libraries/Utilities/stringifyViewConfig.js +22 -0
- package/Libraries/Utilities/useColorScheme.js +25 -0
- package/Libraries/Utilities/useMergeRefs.js +59 -0
- package/Libraries/Utilities/useRefEffect.js +45 -0
- package/Libraries/Utilities/useWindowDimensions.js +47 -0
- package/Libraries/Utilities/warnOnce.js +32 -0
- package/Libraries/Vibration/NativeVibration.js +13 -0
- package/Libraries/Vibration/RCTVibration.h +12 -0
- package/Libraries/Vibration/RCTVibration.mm +54 -0
- package/Libraries/Vibration/RCTVibrationPlugins.h +40 -0
- package/Libraries/Vibration/RCTVibrationPlugins.mm +33 -0
- package/Libraries/Vibration/React-RCTVibration.podspec +56 -0
- package/Libraries/Vibration/Vibration.d.ts +43 -0
- package/Libraries/Vibration/Vibration.js +115 -0
- package/Libraries/Vibration/delegates/BaseVibrationDelegate.ts +11 -0
- package/Libraries/Vibration/delegates/VibrationDelegate.harmony.ts +14 -0
- package/Libraries/Vibration/delegates/VibrationDelegate.ts +11 -0
- package/Libraries/WebSocket/NativeWebSocketModule.js +13 -0
- package/Libraries/WebSocket/RCTReconnectingWebSocket.h +37 -0
- package/Libraries/WebSocket/RCTReconnectingWebSocket.m +109 -0
- package/Libraries/WebSocket/WebSocket.js +297 -0
- package/Libraries/WebSocket/WebSocketEvent.js +30 -0
- package/Libraries/WebSocket/WebSocketInterceptor.js +247 -0
- package/Libraries/WebSocket/__mocks__/event-target-shim.js +27 -0
- package/Libraries/Wrapper/Example/RCTWrapperExampleView.h +16 -0
- package/Libraries/Wrapper/Example/RCTWrapperExampleView.m +53 -0
- package/Libraries/Wrapper/Example/RCTWrapperExampleViewController.h +16 -0
- package/Libraries/Wrapper/Example/RCTWrapperExampleViewController.m +23 -0
- package/Libraries/Wrapper/Example/RCTWrapperReactRootViewController.h +20 -0
- package/Libraries/Wrapper/Example/RCTWrapperReactRootViewController.m +46 -0
- package/Libraries/Wrapper/Example/RCTWrapperReactRootViewManager.h +18 -0
- package/Libraries/Wrapper/Example/RCTWrapperReactRootViewManager.m +31 -0
- package/Libraries/Wrapper/RCTWrapper.h +68 -0
- package/Libraries/Wrapper/RCTWrapperShadowView.h +22 -0
- package/Libraries/Wrapper/RCTWrapperShadowView.m +134 -0
- package/Libraries/Wrapper/RCTWrapperView.h +36 -0
- package/Libraries/Wrapper/RCTWrapperView.m +95 -0
- package/Libraries/Wrapper/RCTWrapperViewControllerHostingView.h +25 -0
- package/Libraries/Wrapper/RCTWrapperViewControllerHostingView.m +133 -0
- package/Libraries/Wrapper/RCTWrapperViewManager.h +20 -0
- package/Libraries/Wrapper/RCTWrapperViewManager.m +27 -0
- package/Libraries/YellowBox/YellowBoxDeprecated.d.ts +19 -0
- package/Libraries/YellowBox/YellowBoxDeprecated.js +75 -0
- package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +32 -0
- package/Libraries/promiseRejectionTrackingOptions.js +72 -0
- package/Libraries/vendor/core/ErrorUtils.d.ts +15 -0
- package/Libraries/vendor/core/ErrorUtils.js +25 -0
- package/Libraries/vendor/emitter/EventEmitter.d.ts +164 -0
- package/Libraries/vendor/emitter/EventEmitter.js +158 -0
- package/Libraries/vendor/emitter/__flowtests__/EventEmitter-flowtest.js +81 -0
- package/NOTICE.md +846 -0
- package/README.md +2 -2
- package/delegates/DelegateError.ts +10 -0
- package/index.js +53 -63
- package/jest.config.js +0 -7
- package/metro.config.d.ts +17 -0
- package/metro.config.js +398 -115
- package/package.json +58 -37
- package/react-native.config.js +57 -9
- package/react_native_openharmony.har +0 -0
- package/src/private/animated/NativeAnimatedHelper.js +440 -0
- package/src/private/animated/NativeAnimatedValidation.js +64 -0
- package/src/private/animated/useAnimatedPropsMemo.js +356 -0
- package/src/private/components/HScrollViewNativeComponents.js +30 -0
- package/src/private/components/SafeAreaView_INTERNAL_DO_NOT_USE.js +32 -0
- package/src/private/components/VScrollViewNativeComponents.js +25 -0
- package/src/private/debugging/FuseboxSessionObserver.js +42 -0
- package/src/private/debugging/ReactDevToolsSettingsManager.android.js +20 -0
- package/src/private/debugging/ReactDevToolsSettingsManager.ios.js +30 -0
- package/src/private/debugging/ReactDevToolsSettingsManager.js.flow +16 -0
- package/src/private/debugging/setUpFuseboxReactDevToolsDispatcher.js +114 -0
- package/src/private/devmenu/DevMenu.d.ts +20 -0
- package/src/private/devmenu/DevMenu.js +31 -0
- package/src/private/featureflags/ReactNativeFeatureFlags.js +369 -0
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +109 -0
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +78 -0
- package/src/private/fusebox/specs/NativeReactDevToolsRuntimeSettingsModule.js +34 -0
- package/src/private/renderer/errorhandling/ErrorHandlers.js +126 -0
- package/src/private/setup/setUpDOM.js +36 -0
- package/src/private/setup/setUpIntersectionObserver.js +27 -0
- package/src/private/setup/setUpMutationObserver.js +31 -0
- package/src/private/setup/setUpPerformanceObserver.js +64 -0
- package/src/private/specs/components/ActivityIndicatorViewNativeComponent.js +53 -0
- package/src/private/specs/components/AndroidDrawerLayoutNativeComponent.js +124 -0
- package/src/private/specs/components/AndroidHorizontalScrollContentViewNativeComponent.js +27 -0
- package/src/private/specs/components/AndroidSwipeRefreshLayoutNativeComponent.js +74 -0
- package/src/private/specs/components/AndroidSwitchNativeComponent.js +62 -0
- package/src/private/specs/components/DebuggingOverlayNativeComponent.js +61 -0
- package/src/private/specs/components/ProgressBarAndroidNativeComponent.js +36 -0
- package/src/private/specs/components/PullToRefreshViewNativeComponent.js +71 -0
- package/src/private/specs/components/RCTInputAccessoryViewNativeComponent.js +26 -0
- package/src/private/specs/components/RCTModalHostViewNativeComponent.js +147 -0
- package/src/private/specs/components/RCTSafeAreaViewNativeComponent.js +25 -0
- package/src/private/specs/components/SwitchNativeComponent.js +61 -0
- package/src/private/specs/components/UnimplementedNativeViewNativeComponent.js +26 -0
- package/src/private/specs/modules/NativeAccessibilityInfo.js +42 -0
- package/src/private/specs/modules/NativeAccessibilityManager.js +70 -0
- package/src/private/specs/modules/NativeActionSheetManager.js +56 -0
- package/src/private/specs/modules/NativeAlertManager.js +35 -0
- package/src/private/specs/modules/NativeAnimatedModule.js +77 -0
- package/src/private/specs/modules/NativeAnimatedTurboModule.js +78 -0
- package/src/private/specs/modules/NativeAppState.js +33 -0
- package/src/private/specs/modules/NativeAppearance.js +30 -0
- package/src/private/specs/modules/NativeBlobModule.js +61 -0
- package/src/private/specs/modules/NativeBugReporting.js +20 -0
- package/src/private/specs/modules/NativeClipboard.js +21 -0
- package/src/private/specs/modules/NativeDevLoadingView.js +24 -0
- package/src/private/specs/modules/NativeDevMenu.js +23 -0
- package/src/private/specs/modules/NativeDevSettings.js +34 -0
- package/src/private/specs/modules/NativeDeviceEventManager.js +19 -0
- package/src/private/specs/modules/NativeDeviceInfo.js +58 -0
- package/src/private/specs/modules/NativeDialogManagerAndroid.js +48 -0
- package/src/private/specs/modules/NativeExceptionsManager.js +91 -0
- package/src/private/specs/modules/NativeFileReaderModule.js +22 -0
- package/src/private/specs/modules/NativeFrameRateLogger.js +22 -0
- package/src/private/specs/modules/NativeHeadlessJsTaskSupport.js +20 -0
- package/src/private/specs/modules/NativeI18nManager.js +28 -0
- package/src/private/specs/modules/NativeImageEditor.js +52 -0
- package/src/private/specs/modules/NativeImageLoaderAndroid.js +30 -0
- package/{Libraries/Components/Image/NativeImageLoaderHarmony.js → src/private/specs/modules/NativeImageLoaderIOS.js} +4 -5
- package/src/private/specs/modules/NativeImageStoreAndroid.js +26 -0
- package/src/private/specs/modules/NativeImageStoreIOS.js +33 -0
- package/src/private/specs/modules/NativeIntentAndroid.js +30 -0
- package/src/private/specs/modules/NativeJSCHeapCapture.js +19 -0
- package/src/private/specs/modules/NativeJSCSamplingProfiler.js +19 -0
- package/src/private/specs/modules/NativeKeyboardObserver.js +20 -0
- package/src/private/specs/modules/NativeLinkingManager.js +27 -0
- package/src/private/specs/modules/NativeLogBox.js +20 -0
- package/src/private/specs/modules/NativeModalManager.js +21 -0
- package/src/private/specs/modules/NativeNetworkingAndroid.js +37 -0
- package/src/private/specs/modules/NativeNetworkingIOS.js +37 -0
- package/src/private/specs/modules/NativePermissionsAndroid.js +77 -0
- package/src/private/specs/modules/NativePlatformConstantsAndroid.js +44 -0
- package/src/private/specs/modules/NativePlatformConstantsIOS.js +37 -0
- package/src/private/specs/modules/NativePushNotificationManagerIOS.js +103 -0
- package/src/private/specs/modules/NativeReactDevToolsSettingsManager.js +22 -0
- package/src/private/specs/modules/NativeRedBox.js +20 -0
- package/src/private/specs/modules/NativeSampleTurboModule.js +66 -0
- package/src/private/specs/modules/NativeSegmentFetcher.js +28 -0
- package/src/private/specs/modules/NativeSettingsManager.js +25 -0
- package/src/private/specs/modules/NativeShareModule.js +23 -0
- package/src/private/specs/modules/NativeSoundManager.js +22 -0
- package/src/private/specs/modules/NativeSourceCode.js +36 -0
- package/{Libraries/Components/StatusBar/NativeStatusBarManagerHarmony.js → src/private/specs/modules/NativeStatusBarManagerAndroid.js} +10 -13
- package/src/private/specs/modules/NativeStatusBarManagerIOS.js +89 -0
- package/src/private/specs/modules/NativeTiming.js +26 -0
- package/src/private/specs/modules/NativeToastAndroid.js +38 -0
- package/src/private/specs/modules/NativeUIManager.js +111 -0
- package/src/private/specs/modules/NativeVibration.js +24 -0
- package/src/private/specs/modules/NativeWebSocketModule.js +34 -0
- package/src/private/styles/composeStyles.js +27 -0
- package/src/private/webapis/dom/geometry/DOMRect.js +82 -0
- package/src/private/webapis/dom/geometry/DOMRectReadOnly.js +188 -0
- package/src/private/webapis/dom/nodes/ReactNativeElement.js +188 -0
- package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +71 -0
- package/src/private/webapis/dom/nodes/ReadOnlyElement.js +247 -0
- package/src/private/webapis/dom/nodes/ReadOnlyNode.js +359 -0
- package/src/private/webapis/dom/nodes/ReadOnlyText.js +30 -0
- package/src/private/webapis/dom/nodes/specs/NativeDOM.js +468 -0
- package/src/private/webapis/dom/nodes/specs/__mocks__/NativeDOMMock.js +413 -0
- package/src/private/webapis/dom/nodes/utilities/Traversal.js +54 -0
- package/src/private/webapis/dom/oldstylecollections/ArrayLikeUtils.js +46 -0
- package/src/private/webapis/dom/oldstylecollections/DOMRectList.js +76 -0
- package/src/private/webapis/dom/oldstylecollections/DOMRectList.js.flow +27 -0
- package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +82 -0
- package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js.flow +27 -0
- package/src/private/webapis/dom/oldstylecollections/NodeList.js +104 -0
- package/src/private/webapis/dom/oldstylecollections/NodeList.js.flow +31 -0
- package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +34 -0
- package/src/private/webapis/intersectionobserver/IntersectionObserver.js +345 -0
- package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +167 -0
- package/src/private/webapis/intersectionobserver/IntersectionObserverManager.js +277 -0
- package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +42 -0
- package/src/private/webapis/intersectionobserver/specs/__mocks__/NativeIntersectionObserver.js +181 -0
- package/src/private/webapis/microtasks/specs/NativeMicrotasks.js +21 -0
- package/src/private/webapis/mutationobserver/MutationObserver.js +186 -0
- package/src/private/webapis/mutationobserver/MutationObserverManager.js +227 -0
- package/src/private/webapis/mutationobserver/MutationRecord.js +82 -0
- package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +58 -0
- package/src/private/webapis/mutationobserver/specs/__mocks__/NativeMutationObserver.js +327 -0
- package/src/private/webapis/performance/EventTiming.js +145 -0
- package/src/private/webapis/performance/LongTasks.js +39 -0
- package/src/private/webapis/performance/MemoryInfo.js +54 -0
- package/src/private/webapis/performance/Performance.js +299 -0
- package/src/private/webapis/performance/PerformanceEntry.js +68 -0
- package/src/private/webapis/performance/PerformanceObserver.js +232 -0
- package/src/private/webapis/performance/RawPerformanceEntry.js +105 -0
- package/src/private/webapis/performance/ReactNativeStartupTiming.js +91 -0
- package/src/private/webapis/performance/UserTiming.js +72 -0
- package/src/private/webapis/performance/Utilities.js +18 -0
- package/src/private/webapis/performance/specs/NativePerformance.js +103 -0
- package/src/private/webapis/performance/specs/__mocks__/NativePerformanceMock.js +267 -0
- package/tsconfig.json +10 -4
- package/types/index.d.ts +204 -97
- package/types/index.harmony.d.ts +99 -0
- package/types/modules/BatchedBridge.d.ts +32 -0
- package/types/modules/Codegen.d.ts +80 -0
- package/types/modules/Devtools.d.ts +32 -0
- package/types/modules/LaunchScreen.d.ts +18 -0
- package/types/modules/globals.d.ts +599 -0
- package/types/private/TimerMixin.d.ts +19 -0
- package/types/private/Utilities.d.ts +10 -0
- package/types/public/DeprecatedPropertiesAlias.d.ts +185 -0
- package/types/public/Insets.d.ts +15 -0
- package/types/public/ReactNativeRenderer.d.ts +144 -0
- package/types/public/ReactNativeTypes.d.ts +139 -0
- package/types/tsconfig.json +15 -0
- package/types/tslint.json +24 -0
- package/Libraries/Alert/Alert.harmony.js +0 -77
- package/Libraries/Animated/NativeAnimatedHelper.harmony.js +0 -601
- package/Libraries/Components/Image/Image.flow.harmony.js +0 -53
- package/Libraries/Components/Image/Image.harmony.js +0 -317
- package/Libraries/Components/TextInput/TextInputState.harmony.js +0 -220
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.harmony.js +0 -227
- package/Libraries/Core/setUpReactDevTools.harmony.js +0 -93
- package/Libraries/Settings/Settings.harmony.js +0 -15
- package/Libraries/StyleSheet/NativePlatformColor.ts +0 -8
- package/Libraries/Utilities/NativePlatformConstants.harmony.ts +0 -8
- package/Libraries/Vibration/Vibration.harmony.js +0 -88
- package/harmony/.keep +0 -0
- package/harmony/rnoh-hvigor-plugin-0.2.0.tgz +0 -0
- package/react_native_openharmony_release.har +0 -0
|
@@ -7,37 +7,45 @@
|
|
|
7
7
|
* @flow strict-local
|
|
8
8
|
* @format
|
|
9
9
|
*/
|
|
10
|
-
const OS = "ios" // RNOH: patch - replaced occurrences Platform.OS with OS
|
|
11
10
|
|
|
12
|
-
|
|
13
|
-
import type {
|
|
11
|
+
import type {HostInstance} from '../../Renderer/shims/ReactNativeTypes';
|
|
12
|
+
import type {____TextStyle_Internal as TextStyleInternal} from '../../StyleSheet/StyleSheetTypes';
|
|
14
13
|
import type {
|
|
15
14
|
PressEvent,
|
|
16
15
|
ScrollEvent,
|
|
17
16
|
SyntheticEvent,
|
|
18
|
-
} from '
|
|
19
|
-
import type {ViewProps} from '
|
|
20
|
-
import type {TextInputType} from '
|
|
17
|
+
} from '../../Types/CoreEventTypes';
|
|
18
|
+
import type {ViewProps} from '../View/ViewPropTypes';
|
|
19
|
+
import type {TextInputType} from './TextInput.flow';
|
|
21
20
|
|
|
22
|
-
import
|
|
23
|
-
import
|
|
21
|
+
import * as ReactNativeFeatureFlags from '../../../src/private/featureflags/ReactNativeFeatureFlags';
|
|
22
|
+
import usePressability from '../../Pressability/usePressability';
|
|
23
|
+
import flattenStyle from '../../StyleSheet/flattenStyle';
|
|
24
24
|
import StyleSheet, {
|
|
25
25
|
type ColorValue,
|
|
26
26
|
type TextStyleProp,
|
|
27
27
|
type ViewStyleProp,
|
|
28
|
-
} from '
|
|
29
|
-
import Text from '
|
|
30
|
-
import TextAncestor from '
|
|
28
|
+
} from '../../StyleSheet/StyleSheet';
|
|
29
|
+
import Text from '../../Text/Text';
|
|
30
|
+
import TextAncestor from '../../Text/TextAncestor';
|
|
31
31
|
import Platform from '../../Utilities/Platform';
|
|
32
|
-
import useMergeRefs from '
|
|
33
|
-
import
|
|
32
|
+
import useMergeRefs from '../../Utilities/useMergeRefs';
|
|
33
|
+
import TextInputDelegate from './delegates/TextInputDelegate';
|
|
34
|
+
import TextInputState from './TextInputState';
|
|
34
35
|
import invariant from 'invariant';
|
|
35
36
|
import nullthrows from 'nullthrows';
|
|
36
37
|
import * as React from 'react';
|
|
38
|
+
import {useCallback, useLayoutEffect, useRef, useState} from 'react';
|
|
37
39
|
|
|
38
|
-
const
|
|
40
|
+
const DELEGATE = new TextInputDelegate({});
|
|
39
41
|
|
|
40
42
|
type ReactRefSetter<T> = {current: null | T, ...} | ((ref: null | T) => mixed);
|
|
43
|
+
type TextInputInstance = HostInstance & {
|
|
44
|
+
+clear: () => void,
|
|
45
|
+
+isFocused: () => boolean,
|
|
46
|
+
+getNativeRef: () => ?HostInstance,
|
|
47
|
+
+setSelection: (start: number, end: number) => void,
|
|
48
|
+
};
|
|
41
49
|
|
|
42
50
|
let AndroidTextInput;
|
|
43
51
|
let AndroidTextInputCommands;
|
|
@@ -46,19 +54,19 @@ let RCTSinglelineTextInputNativeCommands;
|
|
|
46
54
|
let RCTMultilineTextInputView;
|
|
47
55
|
let RCTMultilineTextInputNativeCommands;
|
|
48
56
|
|
|
49
|
-
if (OS === 'android') {
|
|
50
|
-
AndroidTextInput = require('
|
|
57
|
+
if (Platform.OS === 'android') {
|
|
58
|
+
AndroidTextInput = require('./AndroidTextInputNativeComponent').default;
|
|
51
59
|
AndroidTextInputCommands =
|
|
52
|
-
require('
|
|
53
|
-
} else if (OS === 'ios') {
|
|
60
|
+
require('./AndroidTextInputNativeComponent').Commands;
|
|
61
|
+
} else if (Platform.OS === 'ios') {
|
|
54
62
|
RCTSinglelineTextInputView =
|
|
55
|
-
require('
|
|
63
|
+
require('./RCTSingelineTextInputNativeComponent').default;
|
|
56
64
|
RCTSinglelineTextInputNativeCommands =
|
|
57
|
-
require('
|
|
65
|
+
require('./RCTSingelineTextInputNativeComponent').Commands;
|
|
58
66
|
RCTMultilineTextInputView =
|
|
59
|
-
require('
|
|
67
|
+
require('./RCTMultilineTextInputNativeComponent').default;
|
|
60
68
|
RCTMultilineTextInputNativeCommands =
|
|
61
|
-
require('
|
|
69
|
+
require('./RCTMultilineTextInputNativeComponent').Commands;
|
|
62
70
|
}
|
|
63
71
|
|
|
64
72
|
export type ChangeEvent = SyntheticEvent<
|
|
@@ -134,6 +142,9 @@ type DataDetectorTypesType =
|
|
|
134
142
|
| 'link'
|
|
135
143
|
| 'address'
|
|
136
144
|
| 'calendarEvent'
|
|
145
|
+
| 'trackingNumber'
|
|
146
|
+
| 'flightNumber'
|
|
147
|
+
| 'lookupSuggestion'
|
|
137
148
|
| 'none'
|
|
138
149
|
| 'all';
|
|
139
150
|
|
|
@@ -197,6 +208,15 @@ export type TextContentType =
|
|
|
197
208
|
| 'addressState'
|
|
198
209
|
| 'countryName'
|
|
199
210
|
| 'creditCardNumber'
|
|
211
|
+
| 'creditCardExpiration'
|
|
212
|
+
| 'creditCardExpirationMonth'
|
|
213
|
+
| 'creditCardExpirationYear'
|
|
214
|
+
| 'creditCardSecurityCode'
|
|
215
|
+
| 'creditCardType'
|
|
216
|
+
| 'creditCardName'
|
|
217
|
+
| 'creditCardGivenName'
|
|
218
|
+
| 'creditCardMiddleName'
|
|
219
|
+
| 'creditCardFamilyName'
|
|
200
220
|
| 'emailAddress'
|
|
201
221
|
| 'familyName'
|
|
202
222
|
| 'fullStreetAddress'
|
|
@@ -217,16 +237,28 @@ export type TextContentType =
|
|
|
217
237
|
| 'username'
|
|
218
238
|
| 'password'
|
|
219
239
|
| 'newPassword'
|
|
220
|
-
| 'oneTimeCode'
|
|
240
|
+
| 'oneTimeCode'
|
|
241
|
+
| 'birthdate'
|
|
242
|
+
| 'birthdateDay'
|
|
243
|
+
| 'birthdateMonth'
|
|
244
|
+
| 'birthdateYear'
|
|
245
|
+
| 'cellularEID'
|
|
246
|
+
| 'cellularIMEI'
|
|
247
|
+
| 'dateTime'
|
|
248
|
+
| 'flightNumber'
|
|
249
|
+
| 'shipmentTrackingNumber';
|
|
221
250
|
|
|
222
251
|
export type enterKeyHintType =
|
|
223
|
-
|
|
252
|
+
// Cross Platform
|
|
224
253
|
| 'done'
|
|
225
254
|
| 'go'
|
|
226
255
|
| 'next'
|
|
227
|
-
| 'previous'
|
|
228
256
|
| 'search'
|
|
229
|
-
| 'send'
|
|
257
|
+
| 'send'
|
|
258
|
+
// Android-only
|
|
259
|
+
| 'previous'
|
|
260
|
+
// iOS-only
|
|
261
|
+
| 'enter';
|
|
230
262
|
|
|
231
263
|
type PasswordRules = string;
|
|
232
264
|
|
|
@@ -281,6 +313,12 @@ type IOSProps = $ReadOnly<{|
|
|
|
281
313
|
*/
|
|
282
314
|
inputAccessoryViewID?: ?string,
|
|
283
315
|
|
|
316
|
+
/**
|
|
317
|
+
* An optional label that overrides the default input accessory view button label.
|
|
318
|
+
* @platform ios
|
|
319
|
+
*/
|
|
320
|
+
inputAccessoryViewButtonLabel?: ?string,
|
|
321
|
+
|
|
284
322
|
/**
|
|
285
323
|
* Determines the color of the keyboard.
|
|
286
324
|
* @platform ios
|
|
@@ -333,6 +371,29 @@ type IOSProps = $ReadOnly<{|
|
|
|
333
371
|
* @platform ios
|
|
334
372
|
*/
|
|
335
373
|
lineBreakStrategyIOS?: ?('none' | 'standard' | 'hangul-word' | 'push-out'),
|
|
374
|
+
|
|
375
|
+
/**
|
|
376
|
+
* Set line break mode on iOS.
|
|
377
|
+
* @platform ios
|
|
378
|
+
*/
|
|
379
|
+
lineBreakModeIOS?: ?(
|
|
380
|
+
| 'wordWrapping'
|
|
381
|
+
| 'char'
|
|
382
|
+
| 'clip'
|
|
383
|
+
| 'head'
|
|
384
|
+
| 'middle'
|
|
385
|
+
| 'tail'
|
|
386
|
+
),
|
|
387
|
+
|
|
388
|
+
/**
|
|
389
|
+
* If `false`, the iOS system will not insert an extra space after a paste operation
|
|
390
|
+
* neither delete one or two spaces after a cut or delete operation.
|
|
391
|
+
*
|
|
392
|
+
* The default value is `true`.
|
|
393
|
+
*
|
|
394
|
+
* @platform ios
|
|
395
|
+
*/
|
|
396
|
+
smartInsertDelete?: ?boolean,
|
|
336
397
|
|}>;
|
|
337
398
|
|
|
338
399
|
type AndroidProps = $ReadOnly<{|
|
|
@@ -446,7 +507,16 @@ export type Props = $ReadOnly<{|
|
|
|
446
507
|
* - `additional-name`
|
|
447
508
|
* - `address-line1`
|
|
448
509
|
* - `address-line2`
|
|
510
|
+
* - `birthdate-day` (iOS 17+)
|
|
511
|
+
* - `birthdate-full` (iOS 17+)
|
|
512
|
+
* - `birthdate-month` (iOS 17+)
|
|
513
|
+
* - `birthdate-year` (iOS 17+)
|
|
449
514
|
* - `cc-number`
|
|
515
|
+
* - `cc-csc` (iOS 17+)
|
|
516
|
+
* - `cc-exp` (iOS 17+)
|
|
517
|
+
* - `cc-exp-day` (iOS 17+)
|
|
518
|
+
* - `cc-exp-month` (iOS 17+)
|
|
519
|
+
* - `cc-exp-year` (iOS 17+)
|
|
450
520
|
* - `country`
|
|
451
521
|
* - `current-password`
|
|
452
522
|
* - `email`
|
|
@@ -465,6 +535,11 @@ export type Props = $ReadOnly<{|
|
|
|
465
535
|
*
|
|
466
536
|
* The following values work on iOS only:
|
|
467
537
|
*
|
|
538
|
+
* - `cc-name` (iOS 17+)
|
|
539
|
+
* - `cc-given-name` (iOS 17+)
|
|
540
|
+
* - `cc-middle-name` (iOS 17+)
|
|
541
|
+
* - `cc-family-name` (iOS 17+)
|
|
542
|
+
* - `cc-type` (iOS 17+)
|
|
468
543
|
* - `nickname`
|
|
469
544
|
* - `organization`
|
|
470
545
|
* - `organization-title`
|
|
@@ -472,15 +547,6 @@ export type Props = $ReadOnly<{|
|
|
|
472
547
|
*
|
|
473
548
|
* The following values work on Android only:
|
|
474
549
|
*
|
|
475
|
-
* - `birthdate-day`
|
|
476
|
-
* - `birthdate-full`
|
|
477
|
-
* - `birthdate-month`
|
|
478
|
-
* - `birthdate-year`
|
|
479
|
-
* - `cc-csc`
|
|
480
|
-
* - `cc-exp`
|
|
481
|
-
* - `cc-exp-day`
|
|
482
|
-
* - `cc-exp-month`
|
|
483
|
-
* - `cc-exp-year`
|
|
484
550
|
* - `gender`
|
|
485
551
|
* - `name-family`
|
|
486
552
|
* - `name-given`
|
|
@@ -516,6 +582,11 @@ export type Props = $ReadOnly<{|
|
|
|
516
582
|
| 'cc-exp-month'
|
|
517
583
|
| 'cc-exp-year'
|
|
518
584
|
| 'cc-number'
|
|
585
|
+
| 'cc-name'
|
|
586
|
+
| 'cc-given-name'
|
|
587
|
+
| 'cc-middle-name'
|
|
588
|
+
| 'cc-family-name'
|
|
589
|
+
| 'cc-type'
|
|
519
590
|
| 'country'
|
|
520
591
|
| 'current-password'
|
|
521
592
|
| 'email'
|
|
@@ -699,33 +770,12 @@ export type Props = $ReadOnly<{|
|
|
|
699
770
|
*/
|
|
700
771
|
onChange?: ?(e: ChangeEvent) => mixed,
|
|
701
772
|
|
|
702
|
-
/**
|
|
703
|
-
* DANGER: this API is not stable and will change in the future.
|
|
704
|
-
*
|
|
705
|
-
* Callback will be called on the main thread and may result in dropped frames.
|
|
706
|
-
* Callback that is called when the text input's text changes.
|
|
707
|
-
*
|
|
708
|
-
* @platform ios
|
|
709
|
-
*/
|
|
710
|
-
unstable_onChangeSync?: ?(e: ChangeEvent) => mixed,
|
|
711
|
-
|
|
712
773
|
/**
|
|
713
774
|
* Callback that is called when the text input's text changes.
|
|
714
775
|
* Changed text is passed as an argument to the callback handler.
|
|
715
776
|
*/
|
|
716
777
|
onChangeText?: ?(text: string) => mixed,
|
|
717
778
|
|
|
718
|
-
/**
|
|
719
|
-
* DANGER: this API is not stable and will change in the future.
|
|
720
|
-
*
|
|
721
|
-
* Callback will be called on the main thread and may result in dropped frames.
|
|
722
|
-
* Callback that is called when the text input's text changes.
|
|
723
|
-
* Changed text is passed as an argument to the callback handler.
|
|
724
|
-
*
|
|
725
|
-
* @platform ios
|
|
726
|
-
*/
|
|
727
|
-
unstable_onChangeTextSync?: ?(text: string) => mixed,
|
|
728
|
-
|
|
729
779
|
/**
|
|
730
780
|
* Callback that is called when the text input's content size changes.
|
|
731
781
|
* This will be called with
|
|
@@ -755,19 +805,9 @@ export type Props = $ReadOnly<{|
|
|
|
755
805
|
onKeyPress?: ?(e: KeyPressEvent) => mixed,
|
|
756
806
|
|
|
757
807
|
/**
|
|
758
|
-
*
|
|
759
|
-
*
|
|
760
|
-
* Callback will be called on the main thread and may result in dropped frames.
|
|
761
|
-
*
|
|
762
|
-
* Callback that is called when a key is pressed.
|
|
763
|
-
* This will be called with `{ nativeEvent: { key: keyValue } }`
|
|
764
|
-
* where `keyValue` is `'Enter'` or `'Backspace'` for respective keys and
|
|
765
|
-
* the typed-in character otherwise including `' '` for space.
|
|
766
|
-
* Fires before `onChange` callbacks.
|
|
767
|
-
*
|
|
768
|
-
* @platform ios
|
|
808
|
+
* Called when a single tap gesture is detected.
|
|
769
809
|
*/
|
|
770
|
-
|
|
810
|
+
onPress?: ?(event: PressEvent) => mixed,
|
|
771
811
|
|
|
772
812
|
/**
|
|
773
813
|
* Called when a touch is engaged.
|
|
@@ -870,6 +910,12 @@ export type Props = $ReadOnly<{|
|
|
|
870
910
|
*/
|
|
871
911
|
selectionColor?: ?ColorValue,
|
|
872
912
|
|
|
913
|
+
/**
|
|
914
|
+
* The text selection handle color.
|
|
915
|
+
* @platform android
|
|
916
|
+
*/
|
|
917
|
+
selectionHandleColor?: ?ColorValue,
|
|
918
|
+
|
|
873
919
|
/**
|
|
874
920
|
* If `true`, all text will automatically be selected on focus.
|
|
875
921
|
*/
|
|
@@ -940,8 +986,188 @@ export type Props = $ReadOnly<{|
|
|
|
940
986
|
value?: ?Stringish,
|
|
941
987
|
|}>;
|
|
942
988
|
|
|
989
|
+
type ViewCommands = $NonMaybeType<
|
|
990
|
+
| typeof AndroidTextInputCommands
|
|
991
|
+
| typeof RCTMultilineTextInputNativeCommands
|
|
992
|
+
| typeof RCTSinglelineTextInputNativeCommands,
|
|
993
|
+
>;
|
|
994
|
+
|
|
995
|
+
type LastNativeSelection = {|
|
|
996
|
+
selection: Selection,
|
|
997
|
+
mostRecentEventCount: number,
|
|
998
|
+
|};
|
|
999
|
+
|
|
943
1000
|
const emptyFunctionThatReturnsTrue = () => true;
|
|
944
1001
|
|
|
1002
|
+
/**
|
|
1003
|
+
* This hook handles the synchronization between the state of the text input
|
|
1004
|
+
* in native and in JavaScript. This is necessary due to the asynchronous nature
|
|
1005
|
+
* of text input events.
|
|
1006
|
+
*/
|
|
1007
|
+
function useTextInputStateSynchronization_STATE({
|
|
1008
|
+
props,
|
|
1009
|
+
mostRecentEventCount,
|
|
1010
|
+
selection,
|
|
1011
|
+
inputRef,
|
|
1012
|
+
text,
|
|
1013
|
+
viewCommands,
|
|
1014
|
+
}: {
|
|
1015
|
+
props: Props,
|
|
1016
|
+
mostRecentEventCount: number,
|
|
1017
|
+
selection: ?Selection,
|
|
1018
|
+
inputRef: React.RefObject<null | HostInstance>,
|
|
1019
|
+
text: string,
|
|
1020
|
+
viewCommands: ViewCommands,
|
|
1021
|
+
}): {
|
|
1022
|
+
setLastNativeText: string => void,
|
|
1023
|
+
setLastNativeSelection: LastNativeSelection => void,
|
|
1024
|
+
} {
|
|
1025
|
+
const [lastNativeText, setLastNativeText] = useState<?Stringish>(props.value);
|
|
1026
|
+
const [lastNativeSelectionState, setLastNativeSelection] =
|
|
1027
|
+
useState<LastNativeSelection>({
|
|
1028
|
+
selection: {start: -1, end: -1},
|
|
1029
|
+
mostRecentEventCount: mostRecentEventCount,
|
|
1030
|
+
});
|
|
1031
|
+
|
|
1032
|
+
const lastNativeSelection = lastNativeSelectionState.selection;
|
|
1033
|
+
|
|
1034
|
+
// This is necessary in case native updates the text and JS decides
|
|
1035
|
+
// that the update should be ignored and we should stick with the value
|
|
1036
|
+
// that we have in JS.
|
|
1037
|
+
useLayoutEffect(() => {
|
|
1038
|
+
const nativeUpdate: {text?: string, selection?: Selection} = {};
|
|
1039
|
+
|
|
1040
|
+
if (lastNativeText !== props.value && typeof props.value === 'string') {
|
|
1041
|
+
nativeUpdate.text = props.value;
|
|
1042
|
+
setLastNativeText(props.value);
|
|
1043
|
+
}
|
|
1044
|
+
|
|
1045
|
+
if (
|
|
1046
|
+
selection &&
|
|
1047
|
+
lastNativeSelection &&
|
|
1048
|
+
(lastNativeSelection.start !== selection.start ||
|
|
1049
|
+
lastNativeSelection.end !== selection.end)
|
|
1050
|
+
) {
|
|
1051
|
+
nativeUpdate.selection = selection;
|
|
1052
|
+
setLastNativeSelection({selection, mostRecentEventCount});
|
|
1053
|
+
}
|
|
1054
|
+
|
|
1055
|
+
if (Object.keys(nativeUpdate).length === 0) {
|
|
1056
|
+
return;
|
|
1057
|
+
}
|
|
1058
|
+
|
|
1059
|
+
if (inputRef.current != null) {
|
|
1060
|
+
viewCommands.setTextAndSelection(
|
|
1061
|
+
inputRef.current,
|
|
1062
|
+
mostRecentEventCount,
|
|
1063
|
+
text,
|
|
1064
|
+
selection?.start ?? -1,
|
|
1065
|
+
selection?.end ?? -1,
|
|
1066
|
+
);
|
|
1067
|
+
}
|
|
1068
|
+
}, [
|
|
1069
|
+
mostRecentEventCount,
|
|
1070
|
+
inputRef,
|
|
1071
|
+
props.value,
|
|
1072
|
+
props.defaultValue,
|
|
1073
|
+
lastNativeText,
|
|
1074
|
+
selection,
|
|
1075
|
+
lastNativeSelection,
|
|
1076
|
+
text,
|
|
1077
|
+
viewCommands,
|
|
1078
|
+
]);
|
|
1079
|
+
|
|
1080
|
+
return {setLastNativeText, setLastNativeSelection};
|
|
1081
|
+
}
|
|
1082
|
+
|
|
1083
|
+
/**
|
|
1084
|
+
* This hook handles the synchronization between the state of the text input
|
|
1085
|
+
* in native and in JavaScript. This is necessary due to the asynchronous nature
|
|
1086
|
+
* of text input events.
|
|
1087
|
+
*/
|
|
1088
|
+
function useTextInputStateSynchronization_REFS({
|
|
1089
|
+
props,
|
|
1090
|
+
mostRecentEventCount,
|
|
1091
|
+
selection,
|
|
1092
|
+
inputRef,
|
|
1093
|
+
text,
|
|
1094
|
+
viewCommands,
|
|
1095
|
+
}: {
|
|
1096
|
+
props: Props,
|
|
1097
|
+
mostRecentEventCount: number,
|
|
1098
|
+
selection: ?Selection,
|
|
1099
|
+
inputRef: React.RefObject<null | HostInstance>,
|
|
1100
|
+
text: string,
|
|
1101
|
+
viewCommands: ViewCommands,
|
|
1102
|
+
}): {
|
|
1103
|
+
setLastNativeText: string => void,
|
|
1104
|
+
setLastNativeSelection: LastNativeSelection => void,
|
|
1105
|
+
} {
|
|
1106
|
+
const lastNativeTextRef = useRef<?Stringish>(props.value);
|
|
1107
|
+
const lastNativeSelectionRef = useRef<LastNativeSelection>({
|
|
1108
|
+
selection: {start: -1, end: -1},
|
|
1109
|
+
mostRecentEventCount: mostRecentEventCount,
|
|
1110
|
+
});
|
|
1111
|
+
|
|
1112
|
+
// This is necessary in case native updates the text and JS decides
|
|
1113
|
+
// that the update should be ignored and we should stick with the value
|
|
1114
|
+
// that we have in JS.
|
|
1115
|
+
useLayoutEffect(() => {
|
|
1116
|
+
const nativeUpdate: {text?: string, selection?: Selection} = {};
|
|
1117
|
+
|
|
1118
|
+
const lastNativeSelection = lastNativeSelectionRef.current.selection;
|
|
1119
|
+
|
|
1120
|
+
if (
|
|
1121
|
+
lastNativeTextRef.current !== props.value &&
|
|
1122
|
+
typeof props.value === 'string'
|
|
1123
|
+
) {
|
|
1124
|
+
nativeUpdate.text = props.value;
|
|
1125
|
+
lastNativeTextRef.current = props.value;
|
|
1126
|
+
}
|
|
1127
|
+
|
|
1128
|
+
if (
|
|
1129
|
+
selection &&
|
|
1130
|
+
lastNativeSelection &&
|
|
1131
|
+
(lastNativeSelection.start !== selection.start ||
|
|
1132
|
+
lastNativeSelection.end !== selection.end)
|
|
1133
|
+
) {
|
|
1134
|
+
nativeUpdate.selection = selection;
|
|
1135
|
+
lastNativeSelectionRef.current = {selection, mostRecentEventCount};
|
|
1136
|
+
}
|
|
1137
|
+
|
|
1138
|
+
if (Object.keys(nativeUpdate).length === 0) {
|
|
1139
|
+
return;
|
|
1140
|
+
}
|
|
1141
|
+
|
|
1142
|
+
if (inputRef.current != null) {
|
|
1143
|
+
viewCommands.setTextAndSelection(
|
|
1144
|
+
inputRef.current,
|
|
1145
|
+
mostRecentEventCount,
|
|
1146
|
+
text,
|
|
1147
|
+
selection?.start ?? -1,
|
|
1148
|
+
selection?.end ?? -1,
|
|
1149
|
+
);
|
|
1150
|
+
}
|
|
1151
|
+
}, [
|
|
1152
|
+
mostRecentEventCount,
|
|
1153
|
+
inputRef,
|
|
1154
|
+
props.value,
|
|
1155
|
+
props.defaultValue,
|
|
1156
|
+
selection,
|
|
1157
|
+
text,
|
|
1158
|
+
viewCommands,
|
|
1159
|
+
]);
|
|
1160
|
+
|
|
1161
|
+
return {
|
|
1162
|
+
setLastNativeText: lastNativeText => {
|
|
1163
|
+
lastNativeTextRef.current = lastNativeText;
|
|
1164
|
+
},
|
|
1165
|
+
setLastNativeSelection: lastNativeSelection => {
|
|
1166
|
+
lastNativeSelectionRef.current = lastNativeSelection;
|
|
1167
|
+
},
|
|
1168
|
+
};
|
|
1169
|
+
}
|
|
1170
|
+
|
|
945
1171
|
/**
|
|
946
1172
|
* A foundational component for inputting text into the app via a
|
|
947
1173
|
* keyboard. Props provide configurability for several features, such as
|
|
@@ -996,8 +1222,8 @@ const emptyFunctionThatReturnsTrue = () => true;
|
|
|
996
1222
|
* return (
|
|
997
1223
|
* <TextInput
|
|
998
1224
|
* {...this.props} // Inherit any props passed to it; e.g., multiline, numberOfLines below
|
|
999
|
-
* editable
|
|
1000
|
-
* maxLength
|
|
1225
|
+
* editable={true}
|
|
1226
|
+
* maxLength={40}
|
|
1001
1227
|
* />
|
|
1002
1228
|
* );
|
|
1003
1229
|
* }
|
|
@@ -1021,8 +1247,8 @@ const emptyFunctionThatReturnsTrue = () => true;
|
|
|
1021
1247
|
* borderBottomWidth: 1 }}
|
|
1022
1248
|
* >
|
|
1023
1249
|
* <UselessTextInput
|
|
1024
|
-
* multiline
|
|
1025
|
-
* numberOfLines
|
|
1250
|
+
* multiline={true}
|
|
1251
|
+
* numberOfLines={4}
|
|
1026
1252
|
* onChangeText={(text) => this.setState({text})}
|
|
1027
1253
|
* value={this.state.text}
|
|
1028
1254
|
* />
|
|
@@ -1064,12 +1290,14 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1064
1290
|
id,
|
|
1065
1291
|
tabIndex,
|
|
1066
1292
|
selection: propsSelection,
|
|
1293
|
+
selectionColor,
|
|
1294
|
+
selectionHandleColor,
|
|
1295
|
+
cursorColor,
|
|
1067
1296
|
...otherProps
|
|
1068
1297
|
} = props;
|
|
1069
1298
|
|
|
1070
|
-
const inputRef = useRef<null |
|
|
1299
|
+
const inputRef = useRef<null | HostInstance>(null);
|
|
1071
1300
|
|
|
1072
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
1073
1301
|
const selection: ?Selection =
|
|
1074
1302
|
propsSelection == null
|
|
1075
1303
|
? null
|
|
@@ -1078,78 +1306,29 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1078
1306
|
end: propsSelection.end ?? propsSelection.start,
|
|
1079
1307
|
};
|
|
1080
1308
|
|
|
1081
|
-
const [mostRecentEventCount, setMostRecentEventCount] = useState<number>(0);
|
|
1082
|
-
|
|
1083
|
-
const [lastNativeText, setLastNativeText] = useState<?Stringish>(props.value);
|
|
1084
|
-
const [lastNativeSelectionState, setLastNativeSelection] = useState<{|
|
|
1085
|
-
selection: ?Selection,
|
|
1086
|
-
mostRecentEventCount: number,
|
|
1087
|
-
|}>({selection, mostRecentEventCount});
|
|
1088
|
-
|
|
1089
|
-
const lastNativeSelection = lastNativeSelectionState.selection;
|
|
1090
|
-
|
|
1091
|
-
let viewCommands;
|
|
1092
|
-
if (AndroidTextInputCommands) {
|
|
1093
|
-
viewCommands = AndroidTextInputCommands;
|
|
1094
|
-
} else {
|
|
1095
|
-
viewCommands =
|
|
1096
|
-
props.multiline === true
|
|
1097
|
-
? RCTMultilineTextInputNativeCommands
|
|
1098
|
-
: RCTSinglelineTextInputNativeCommands;
|
|
1099
|
-
}
|
|
1100
|
-
|
|
1101
1309
|
const text =
|
|
1102
1310
|
typeof props.value === 'string'
|
|
1103
1311
|
? props.value
|
|
1104
1312
|
: typeof props.defaultValue === 'string'
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
// This is necessary in case native updates the text and JS decides
|
|
1109
|
-
// that the update should be ignored and we should stick with the value
|
|
1110
|
-
// that we have in JS.
|
|
1111
|
-
useLayoutEffect(() => {
|
|
1112
|
-
const nativeUpdate: {text?: string, selection?: Selection} = {};
|
|
1113
|
-
|
|
1114
|
-
if (lastNativeText !== props.value && typeof props.value === 'string') {
|
|
1115
|
-
nativeUpdate.text = props.value;
|
|
1116
|
-
setLastNativeText(props.value);
|
|
1117
|
-
}
|
|
1118
|
-
|
|
1119
|
-
if (
|
|
1120
|
-
selection &&
|
|
1121
|
-
lastNativeSelection &&
|
|
1122
|
-
(lastNativeSelection.start !== selection.start ||
|
|
1123
|
-
lastNativeSelection.end !== selection.end)
|
|
1124
|
-
) {
|
|
1125
|
-
nativeUpdate.selection = selection;
|
|
1126
|
-
setLastNativeSelection({selection, mostRecentEventCount});
|
|
1127
|
-
}
|
|
1313
|
+
? props.defaultValue
|
|
1314
|
+
: '';
|
|
1128
1315
|
|
|
1129
|
-
|
|
1130
|
-
return;
|
|
1131
|
-
}
|
|
1316
|
+
const viewCommands = DELEGATE.getTextInputCommands(props.multiline);
|
|
1132
1317
|
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
lastNativeText,
|
|
1148
|
-
selection,
|
|
1149
|
-
lastNativeSelection,
|
|
1150
|
-
text,
|
|
1151
|
-
viewCommands,
|
|
1152
|
-
]);
|
|
1318
|
+
const [mostRecentEventCount, setMostRecentEventCount] = useState<number>(0);
|
|
1319
|
+
const useTextInputStateSynchronization =
|
|
1320
|
+
ReactNativeFeatureFlags.useRefsForTextInputState()
|
|
1321
|
+
? useTextInputStateSynchronization_REFS
|
|
1322
|
+
: useTextInputStateSynchronization_STATE;
|
|
1323
|
+
const {setLastNativeText, setLastNativeSelection} =
|
|
1324
|
+
useTextInputStateSynchronization({
|
|
1325
|
+
props,
|
|
1326
|
+
inputRef,
|
|
1327
|
+
mostRecentEventCount,
|
|
1328
|
+
selection,
|
|
1329
|
+
text,
|
|
1330
|
+
viewCommands,
|
|
1331
|
+
});
|
|
1153
1332
|
|
|
1154
1333
|
useLayoutEffect(() => {
|
|
1155
1334
|
const inputRefValue = inputRef.current;
|
|
@@ -1165,7 +1344,7 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1165
1344
|
}
|
|
1166
1345
|
};
|
|
1167
1346
|
}
|
|
1168
|
-
}, [
|
|
1347
|
+
}, []);
|
|
1169
1348
|
|
|
1170
1349
|
const setLocalRef = useCallback(
|
|
1171
1350
|
(instance: TextInputInstance | null) => {
|
|
@@ -1202,8 +1381,8 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1202
1381
|
inputRef.current,
|
|
1203
1382
|
mostRecentEventCount,
|
|
1204
1383
|
'',
|
|
1205
|
-
|
|
1206
|
-
|
|
1384
|
+
0,
|
|
1385
|
+
0,
|
|
1207
1386
|
);
|
|
1208
1387
|
}
|
|
1209
1388
|
},
|
|
@@ -1211,7 +1390,7 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1211
1390
|
isFocused(): boolean {
|
|
1212
1391
|
return TextInputState.currentlyFocusedInput() === inputRef.current;
|
|
1213
1392
|
},
|
|
1214
|
-
getNativeRef(): ?
|
|
1393
|
+
getNativeRef(): ?HostInstance {
|
|
1215
1394
|
return inputRef.current;
|
|
1216
1395
|
},
|
|
1217
1396
|
setSelection(start: number, end: number): void {
|
|
@@ -1231,10 +1410,7 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1231
1410
|
[mostRecentEventCount, viewCommands],
|
|
1232
1411
|
);
|
|
1233
1412
|
|
|
1234
|
-
const ref = useMergeRefs<TextInputInstance
|
|
1235
|
-
setLocalRef,
|
|
1236
|
-
props.forwardedRef,
|
|
1237
|
-
);
|
|
1413
|
+
const ref = useMergeRefs<TextInputInstance>(setLocalRef, props.forwardedRef);
|
|
1238
1414
|
|
|
1239
1415
|
const _onChange = (event: ChangeEvent) => {
|
|
1240
1416
|
const currentText = event.nativeEvent.text;
|
|
@@ -1255,26 +1431,6 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1255
1431
|
setMostRecentEventCount(event.nativeEvent.eventCount);
|
|
1256
1432
|
};
|
|
1257
1433
|
|
|
1258
|
-
const _onChangeSync = (event: ChangeEvent) => {
|
|
1259
|
-
const currentText = event.nativeEvent.text;
|
|
1260
|
-
props.unstable_onChangeSync && props.unstable_onChangeSync(event);
|
|
1261
|
-
props.unstable_onChangeTextSync &&
|
|
1262
|
-
props.unstable_onChangeTextSync(currentText);
|
|
1263
|
-
|
|
1264
|
-
if (inputRef.current == null) {
|
|
1265
|
-
// calling `props.onChange` or `props.onChangeText`
|
|
1266
|
-
// may clean up the input itself. Exits here.
|
|
1267
|
-
return;
|
|
1268
|
-
}
|
|
1269
|
-
|
|
1270
|
-
setLastNativeText(currentText);
|
|
1271
|
-
// This must happen last, after we call setLastNativeText.
|
|
1272
|
-
// Different ordering can cause bugs when editing AndroidTextInputs
|
|
1273
|
-
// with multiple Fragments.
|
|
1274
|
-
// We must update this so that controlled input updates work.
|
|
1275
|
-
setMostRecentEventCount(event.nativeEvent.eventCount);
|
|
1276
|
-
};
|
|
1277
|
-
|
|
1278
1434
|
const _onSelectionChange = (event: SelectionChangeEvent) => {
|
|
1279
1435
|
props.onSelectionChange && props.onSelectionChange(event);
|
|
1280
1436
|
|
|
@@ -1312,7 +1468,7 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1312
1468
|
|
|
1313
1469
|
const multiline = props.multiline ?? false;
|
|
1314
1470
|
|
|
1315
|
-
let blurOnSubmit = props.blurOnSubmit; //
|
|
1471
|
+
let blurOnSubmit = props.blurOnSubmit; // RNC_patch
|
|
1316
1472
|
|
|
1317
1473
|
let submitBehavior: SubmitBehavior;
|
|
1318
1474
|
if (props.submitBehavior != null) {
|
|
@@ -1332,7 +1488,7 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1332
1488
|
} else {
|
|
1333
1489
|
// Single line
|
|
1334
1490
|
if (props.blurOnSubmit !== false) {
|
|
1335
|
-
blurOnSubmit = true; //
|
|
1491
|
+
blurOnSubmit = true; // RNC_patch: The default value is true for single-line fields
|
|
1336
1492
|
submitBehavior = 'blurAndSubmit';
|
|
1337
1493
|
} else {
|
|
1338
1494
|
submitBehavior = 'submit';
|
|
@@ -1342,25 +1498,37 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1342
1498
|
const accessible = props.accessible !== false;
|
|
1343
1499
|
const focusable = props.focusable !== false;
|
|
1344
1500
|
|
|
1501
|
+
const {
|
|
1502
|
+
editable,
|
|
1503
|
+
hitSlop,
|
|
1504
|
+
onPress,
|
|
1505
|
+
onPressIn,
|
|
1506
|
+
onPressOut,
|
|
1507
|
+
rejectResponderTermination,
|
|
1508
|
+
} = props;
|
|
1509
|
+
|
|
1345
1510
|
const config = React.useMemo(
|
|
1346
1511
|
() => ({
|
|
1512
|
+
hitSlop,
|
|
1347
1513
|
onPress: (event: PressEvent) => {
|
|
1348
|
-
|
|
1514
|
+
onPress?.(event);
|
|
1515
|
+
if (editable !== false) {
|
|
1349
1516
|
if (inputRef.current != null) {
|
|
1350
1517
|
inputRef.current.focus();
|
|
1351
1518
|
}
|
|
1352
1519
|
}
|
|
1353
1520
|
},
|
|
1354
|
-
onPressIn:
|
|
1355
|
-
onPressOut:
|
|
1356
|
-
cancelable:
|
|
1357
|
-
OS === 'ios' ? !props.rejectResponderTermination : null,
|
|
1521
|
+
onPressIn: onPressIn,
|
|
1522
|
+
onPressOut: onPressOut,
|
|
1523
|
+
cancelable: DELEGATE.shouldBeCancellable(rejectResponderTermination),
|
|
1358
1524
|
}),
|
|
1359
1525
|
[
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1526
|
+
editable,
|
|
1527
|
+
hitSlop,
|
|
1528
|
+
onPress,
|
|
1529
|
+
onPressIn,
|
|
1530
|
+
onPressOut,
|
|
1531
|
+
rejectResponderTermination,
|
|
1364
1532
|
],
|
|
1365
1533
|
);
|
|
1366
1534
|
|
|
@@ -1373,7 +1541,7 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1373
1541
|
|
|
1374
1542
|
// TextInput handles onBlur and onFocus events
|
|
1375
1543
|
// so omitting onBlur and onFocus pressability handlers here.
|
|
1376
|
-
const {onBlur, onFocus, ...eventHandlers} = usePressability(config)
|
|
1544
|
+
const {onBlur, onFocus, ...eventHandlers} = usePressability(config);
|
|
1377
1545
|
|
|
1378
1546
|
let _accessibilityState;
|
|
1379
1547
|
if (
|
|
@@ -1393,114 +1561,181 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1393
1561
|
};
|
|
1394
1562
|
}
|
|
1395
1563
|
|
|
1396
|
-
//
|
|
1397
|
-
let
|
|
1398
|
-
|
|
1399
|
-
if (
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
? RCTMultilineTextInputView
|
|
1407
|
-
: RCTSinglelineTextInputView;
|
|
1408
|
-
|
|
1409
|
-
style = props.multiline === true ? [styles.multilineInput, style] : style;
|
|
1410
|
-
|
|
1411
|
-
const useOnChangeSync =
|
|
1412
|
-
(props.unstable_onChangeSync || props.unstable_onChangeTextSync) &&
|
|
1413
|
-
!(props.onChange || props.onChangeText);
|
|
1414
|
-
|
|
1415
|
-
textInput = (
|
|
1416
|
-
<RCTTextInputView
|
|
1417
|
-
// $FlowFixMe[incompatible-type] - Figure out imperative + forward refs.
|
|
1418
|
-
ref={ref}
|
|
1419
|
-
{...otherProps}
|
|
1420
|
-
{...eventHandlers}
|
|
1421
|
-
accessibilityState={_accessibilityState}
|
|
1422
|
-
accessibilityLabelledBy={_accessibilityLabelledBy} // RNOH patch
|
|
1423
|
-
accessible={accessible}
|
|
1424
|
-
submitBehavior={submitBehavior}
|
|
1425
|
-
caretHidden={caretHidden}
|
|
1426
|
-
dataDetectorTypes={props.dataDetectorTypes}
|
|
1427
|
-
focusable={tabIndex !== undefined ? !tabIndex : focusable}
|
|
1428
|
-
mostRecentEventCount={mostRecentEventCount}
|
|
1429
|
-
nativeID={id ?? props.nativeID}
|
|
1430
|
-
onBlur={_onBlur}
|
|
1431
|
-
onKeyPressSync={props.unstable_onKeyPressSync}
|
|
1432
|
-
onChange={_onChange}
|
|
1433
|
-
onChangeSync={useOnChangeSync === true ? _onChangeSync : null}
|
|
1434
|
-
onContentSizeChange={props.onContentSizeChange}
|
|
1435
|
-
onFocus={_onFocus}
|
|
1436
|
-
onScroll={_onScroll}
|
|
1437
|
-
onSelectionChange={_onSelectionChange}
|
|
1438
|
-
onSelectionChangeShouldSetResponder={emptyFunctionThatReturnsTrue}
|
|
1439
|
-
selection={selection}
|
|
1440
|
-
style={style}
|
|
1441
|
-
text={text}
|
|
1442
|
-
blurOnSubmit={blurOnSubmit} // RNOH patch
|
|
1443
|
-
/>
|
|
1444
|
-
);
|
|
1445
|
-
} else if (OS === 'android') {
|
|
1446
|
-
const autoCapitalize = props.autoCapitalize || 'sentences';
|
|
1447
|
-
const _accessibilityLabelledBy =
|
|
1448
|
-
props?.['aria-labelledby'] ?? props?.accessibilityLabelledBy;
|
|
1449
|
-
const placeholder = props.placeholder ?? '';
|
|
1450
|
-
let children = props.children;
|
|
1451
|
-
const childCount = React.Children.count(children);
|
|
1452
|
-
invariant(
|
|
1453
|
-
!(props.value != null && childCount),
|
|
1454
|
-
'Cannot specify both value and children.',
|
|
1455
|
-
);
|
|
1456
|
-
if (childCount > 1) {
|
|
1457
|
-
children = <Text>{children}</Text>;
|
|
1564
|
+
// Keep the original (potentially nested) style when possible, as React can diff these more efficiently
|
|
1565
|
+
let _style = props.style;
|
|
1566
|
+
const flattenedStyle = flattenStyle<TextStyleProp>(props.style);
|
|
1567
|
+
if (flattenedStyle != null) {
|
|
1568
|
+
let overrides: ?{...TextStyleInternal} = null;
|
|
1569
|
+
if (typeof flattenedStyle?.fontWeight === 'number') {
|
|
1570
|
+
overrides = overrides || ({}: {...TextStyleInternal});
|
|
1571
|
+
overrides.fontWeight =
|
|
1572
|
+
// $FlowFixMe[incompatible-cast]
|
|
1573
|
+
(flattenedStyle.fontWeight.toString(): TextStyleInternal['fontWeight']);
|
|
1458
1574
|
}
|
|
1459
1575
|
|
|
1460
|
-
|
|
1461
|
-
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
|
|
1466
|
-
|
|
1467
|
-
|
|
1468
|
-
|
|
1469
|
-
|
|
1470
|
-
|
|
1471
|
-
ref={ref}
|
|
1472
|
-
{...otherProps}
|
|
1473
|
-
{...eventHandlers}
|
|
1474
|
-
accessibilityState={_accessibilityState}
|
|
1475
|
-
accessibilityLabelledBy={_accessibilityLabelledBy}
|
|
1476
|
-
accessible={accessible}
|
|
1477
|
-
autoCapitalize={autoCapitalize}
|
|
1478
|
-
submitBehavior={submitBehavior}
|
|
1479
|
-
caretHidden={caretHidden}
|
|
1480
|
-
children={children}
|
|
1481
|
-
disableFullscreenUI={props.disableFullscreenUI}
|
|
1482
|
-
focusable={tabIndex !== undefined ? !tabIndex : focusable}
|
|
1483
|
-
mostRecentEventCount={mostRecentEventCount}
|
|
1484
|
-
nativeID={id ?? props.nativeID}
|
|
1485
|
-
numberOfLines={props.rows ?? props.numberOfLines}
|
|
1486
|
-
onBlur={_onBlur}
|
|
1487
|
-
onChange={_onChange}
|
|
1488
|
-
onFocus={_onFocus}
|
|
1489
|
-
/* $FlowFixMe[prop-missing] the types for AndroidTextInput don't match
|
|
1490
|
-
* up exactly with the props for TextInput. This will need to get fixed
|
|
1491
|
-
*/
|
|
1492
|
-
/* $FlowFixMe[incompatible-type-arg] the types for AndroidTextInput
|
|
1493
|
-
* don't match up exactly with the props for TextInput. This will need
|
|
1494
|
-
* to get fixed */
|
|
1495
|
-
onScroll={_onScroll}
|
|
1496
|
-
onSelectionChange={_onSelectionChange}
|
|
1497
|
-
placeholder={placeholder}
|
|
1498
|
-
style={style}
|
|
1499
|
-
text={text}
|
|
1500
|
-
textBreakStrategy={props.textBreakStrategy}
|
|
1501
|
-
/>
|
|
1502
|
-
);
|
|
1576
|
+
if (flattenedStyle.verticalAlign != null) {
|
|
1577
|
+
overrides = overrides || ({}: {...TextStyleInternal});
|
|
1578
|
+
overrides.textAlignVertical =
|
|
1579
|
+
verticalAlignToTextAlignVerticalMap[flattenedStyle.verticalAlign];
|
|
1580
|
+
overrides.verticalAlign = undefined;
|
|
1581
|
+
}
|
|
1582
|
+
|
|
1583
|
+
if (overrides != null) {
|
|
1584
|
+
// $FlowFixMe[incompatible-type]
|
|
1585
|
+
_style = [_style, overrides];
|
|
1586
|
+
}
|
|
1503
1587
|
}
|
|
1588
|
+
|
|
1589
|
+
// RNC_patch
|
|
1590
|
+
const _accessibilityLabelledBy =
|
|
1591
|
+
props?.['aria-labelledby'] ?? props?.accessibilityLabelledBy;
|
|
1592
|
+
const useMultilineDefaultStyle =
|
|
1593
|
+
props.multiline === true &&
|
|
1594
|
+
(_style == null ||
|
|
1595
|
+
(_style.padding == null &&
|
|
1596
|
+
_style.paddingVertical == null &&
|
|
1597
|
+
_style.paddingTop == null));
|
|
1598
|
+
textInput = DELEGATE.createNativeTextInput({
|
|
1599
|
+
ref,
|
|
1600
|
+
...otherProps,
|
|
1601
|
+
...eventHandlers,
|
|
1602
|
+
accessibilityState,
|
|
1603
|
+
accessibilityLabelledBy: _accessibilityLabelledBy,
|
|
1604
|
+
accessible,
|
|
1605
|
+
submitBehavior,
|
|
1606
|
+
caretHidden,
|
|
1607
|
+
dataDetectorTypes: props.dataDetectorTypes,
|
|
1608
|
+
focusable: tabIndex !== undefined ? !tabIndex : focusable,
|
|
1609
|
+
mostRecentEventCount,
|
|
1610
|
+
nativeID: id ?? props.nativeID,
|
|
1611
|
+
onBlur: _onBlur,
|
|
1612
|
+
onChange: _onChange,
|
|
1613
|
+
onContentSizeChange: props.onContentSizeChange,
|
|
1614
|
+
onFocus: _onFocus,
|
|
1615
|
+
onScroll: _onScroll,
|
|
1616
|
+
onSelectionChange: _onSelectionChange,
|
|
1617
|
+
onSelectionChangeShouldSetResponder: emptyFunctionThatReturnsTrue,
|
|
1618
|
+
selection,
|
|
1619
|
+
selectionColor: selectionColor,
|
|
1620
|
+
cursorColor: cursorColor === undefined ? selectionColor : cursorColor,
|
|
1621
|
+
style: StyleSheet.compose(
|
|
1622
|
+
useMultilineDefaultStyle ? styles.multilineDefault : null,
|
|
1623
|
+
_style,
|
|
1624
|
+
),
|
|
1625
|
+
text,
|
|
1626
|
+
blurOnSubmit,
|
|
1627
|
+
});
|
|
1628
|
+
// if (Platform.OS === 'ios') {
|
|
1629
|
+
// const RCTTextInputView =
|
|
1630
|
+
// props.multiline === true
|
|
1631
|
+
// ? RCTMultilineTextInputView
|
|
1632
|
+
// : RCTSinglelineTextInputView;
|
|
1633
|
+
|
|
1634
|
+
// const useMultilineDefaultStyle =
|
|
1635
|
+
// props.multiline === true &&
|
|
1636
|
+
// (flattenedStyle == null ||
|
|
1637
|
+
// (flattenedStyle.padding == null &&
|
|
1638
|
+
// flattenedStyle.paddingVertical == null &&
|
|
1639
|
+
// flattenedStyle.paddingTop == null));
|
|
1640
|
+
|
|
1641
|
+
// textInput = (
|
|
1642
|
+
// <RCTTextInputView
|
|
1643
|
+
// // $FlowFixMe[incompatible-type] - Figure out imperative + forward refs.
|
|
1644
|
+
// ref={ref}
|
|
1645
|
+
// {...otherProps}
|
|
1646
|
+
// {...eventHandlers}
|
|
1647
|
+
// accessibilityState={_accessibilityState}
|
|
1648
|
+
// accessible={accessible}
|
|
1649
|
+
// submitBehavior={submitBehavior}
|
|
1650
|
+
// caretHidden={caretHidden}
|
|
1651
|
+
// dataDetectorTypes={props.dataDetectorTypes}
|
|
1652
|
+
// focusable={tabIndex !== undefined ? !tabIndex : focusable}
|
|
1653
|
+
// mostRecentEventCount={mostRecentEventCount}
|
|
1654
|
+
// nativeID={id ?? props.nativeID}
|
|
1655
|
+
// onBlur={_onBlur}
|
|
1656
|
+
// onChange={_onChange}
|
|
1657
|
+
// onContentSizeChange={props.onContentSizeChange}
|
|
1658
|
+
// onFocus={_onFocus}
|
|
1659
|
+
// onScroll={_onScroll}
|
|
1660
|
+
// onSelectionChange={_onSelectionChange}
|
|
1661
|
+
// onSelectionChangeShouldSetResponder={emptyFunctionThatReturnsTrue}
|
|
1662
|
+
// selection={selection}
|
|
1663
|
+
// selectionColor={selectionColor}
|
|
1664
|
+
// style={StyleSheet.compose(
|
|
1665
|
+
// useMultilineDefaultStyle ? styles.multilineDefault : null,
|
|
1666
|
+
// _style,
|
|
1667
|
+
// )}
|
|
1668
|
+
// text={text}
|
|
1669
|
+
// />
|
|
1670
|
+
// );
|
|
1671
|
+
// } else if (Platform.OS === 'android') {
|
|
1672
|
+
// const autoCapitalize = props.autoCapitalize || 'sentences';
|
|
1673
|
+
// const _accessibilityLabelledBy =
|
|
1674
|
+
// props?.['aria-labelledby'] ?? props?.accessibilityLabelledBy;
|
|
1675
|
+
// const placeholder = props.placeholder ?? '';
|
|
1676
|
+
// let children = props.children;
|
|
1677
|
+
// const childCount = React.Children.count(children);
|
|
1678
|
+
// invariant(
|
|
1679
|
+
// !(props.value != null && childCount),
|
|
1680
|
+
// 'Cannot specify both value and children.',
|
|
1681
|
+
// );
|
|
1682
|
+
// if (childCount > 1) {
|
|
1683
|
+
// children = <Text>{children}</Text>;
|
|
1684
|
+
// }
|
|
1685
|
+
// // For consistency with iOS set cursor/selectionHandle color as selectionColor
|
|
1686
|
+
// const colorProps = {
|
|
1687
|
+
// selectionColor,
|
|
1688
|
+
// selectionHandleColor:
|
|
1689
|
+
// selectionHandleColor === undefined
|
|
1690
|
+
// ? selectionColor
|
|
1691
|
+
// : selectionHandleColor,
|
|
1692
|
+
// cursorColor: cursorColor === undefined ? selectionColor : cursorColor,
|
|
1693
|
+
// };
|
|
1694
|
+
// textInput = (
|
|
1695
|
+
// /* $FlowFixMe[prop-missing] the types for AndroidTextInput don't match up
|
|
1696
|
+
// * exactly with the props for TextInput. This will need to get fixed */
|
|
1697
|
+
// /* $FlowFixMe[incompatible-type] the types for AndroidTextInput don't
|
|
1698
|
+
// * match up exactly with the props for TextInput. This will need to get
|
|
1699
|
+
// * fixed */
|
|
1700
|
+
// /* $FlowFixMe[incompatible-type-arg] the types for AndroidTextInput don't
|
|
1701
|
+
// * match up exactly with the props for TextInput. This will need to get
|
|
1702
|
+
// * fixed */
|
|
1703
|
+
// <AndroidTextInput
|
|
1704
|
+
// // $FlowFixMe[incompatible-type] - Figure out imperative + forward refs.
|
|
1705
|
+
// ref={ref}
|
|
1706
|
+
// {...otherProps}
|
|
1707
|
+
// {...colorProps}
|
|
1708
|
+
// {...eventHandlers}
|
|
1709
|
+
// accessibilityState={_accessibilityState}
|
|
1710
|
+
// accessibilityLabelledBy={_accessibilityLabelledBy}
|
|
1711
|
+
// accessible={accessible}
|
|
1712
|
+
// autoCapitalize={autoCapitalize}
|
|
1713
|
+
// submitBehavior={submitBehavior}
|
|
1714
|
+
// caretHidden={caretHidden}
|
|
1715
|
+
// children={children}
|
|
1716
|
+
// disableFullscreenUI={props.disableFullscreenUI}
|
|
1717
|
+
// focusable={tabIndex !== undefined ? !tabIndex : focusable}
|
|
1718
|
+
// mostRecentEventCount={mostRecentEventCount}
|
|
1719
|
+
// nativeID={id ?? props.nativeID}
|
|
1720
|
+
// numberOfLines={props.rows ?? props.numberOfLines}
|
|
1721
|
+
// onBlur={_onBlur}
|
|
1722
|
+
// onChange={_onChange}
|
|
1723
|
+
// onFocus={_onFocus}
|
|
1724
|
+
// /* $FlowFixMe[prop-missing] the types for AndroidTextInput don't match
|
|
1725
|
+
// * up exactly with the props for TextInput. This will need to get fixed
|
|
1726
|
+
// */
|
|
1727
|
+
// /* $FlowFixMe[incompatible-type-arg] the types for AndroidTextInput
|
|
1728
|
+
// * don't match up exactly with the props for TextInput. This will need
|
|
1729
|
+
// * to get fixed */
|
|
1730
|
+
// onScroll={_onScroll}
|
|
1731
|
+
// onSelectionChange={_onSelectionChange}
|
|
1732
|
+
// placeholder={placeholder}
|
|
1733
|
+
// style={_style}
|
|
1734
|
+
// text={text}
|
|
1735
|
+
// textBreakStrategy={props.textBreakStrategy}
|
|
1736
|
+
// />
|
|
1737
|
+
// );
|
|
1738
|
+
// }
|
|
1504
1739
|
return (
|
|
1505
1740
|
<TextAncestor.Provider value={true}>{textInput}</TextAncestor.Provider>
|
|
1506
1741
|
);
|
|
@@ -1517,14 +1752,14 @@ const enterKeyHintToReturnTypeMap = {
|
|
|
1517
1752
|
};
|
|
1518
1753
|
|
|
1519
1754
|
const inputModeToKeyboardTypeMap = {
|
|
1520
|
-
none: '
|
|
1521
|
-
text: '
|
|
1522
|
-
decimal: 'decimal
|
|
1523
|
-
numeric: '
|
|
1524
|
-
tel: '
|
|
1525
|
-
search:
|
|
1526
|
-
email: 'email
|
|
1527
|
-
url: 'url',
|
|
1755
|
+
none: DELEGATE.getKeyboardTypeByInputMode('none'),
|
|
1756
|
+
text: DELEGATE.getKeyboardTypeByInputMode('text'),
|
|
1757
|
+
decimal: DELEGATE.getKeyboardTypeByInputMode('decimal'),
|
|
1758
|
+
numeric: DELEGATE.getKeyboardTypeByInputMode('numeric'),
|
|
1759
|
+
tel: DELEGATE.getKeyboardTypeByInputMode('tel'),
|
|
1760
|
+
search: DELEGATE.getKeyboardTypeByInputMode('search'),
|
|
1761
|
+
email: DELEGATE.getKeyboardTypeByInputMode('email'),
|
|
1762
|
+
url: DELEGATE.getKeyboardTypeByInputMode('url'),
|
|
1528
1763
|
};
|
|
1529
1764
|
|
|
1530
1765
|
// Map HTML autocomplete values to Android autoComplete values
|
|
@@ -1565,7 +1800,20 @@ const autoCompleteWebToAutoCompleteAndroidMap = {
|
|
|
1565
1800
|
const autoCompleteWebToTextContentTypeMap = {
|
|
1566
1801
|
'address-line1': 'streetAddressLine1',
|
|
1567
1802
|
'address-line2': 'streetAddressLine2',
|
|
1803
|
+
bday: 'birthdate',
|
|
1804
|
+
'bday-day': 'birthdateDay',
|
|
1805
|
+
'bday-month': 'birthdateMonth',
|
|
1806
|
+
'bday-year': 'birthdateYear',
|
|
1807
|
+
'cc-csc': 'creditCardSecurityCode',
|
|
1808
|
+
'cc-exp-month': 'creditCardExpirationMonth',
|
|
1809
|
+
'cc-exp-year': 'creditCardExpirationYear',
|
|
1810
|
+
'cc-exp': 'creditCardExpiration',
|
|
1811
|
+
'cc-given-name': 'creditCardGivenName',
|
|
1812
|
+
'cc-additional-name': 'creditCardMiddleName',
|
|
1813
|
+
'cc-family-name': 'creditCardFamilyName',
|
|
1814
|
+
'cc-name': 'creditCardName',
|
|
1568
1815
|
'cc-number': 'creditCardNumber',
|
|
1816
|
+
'cc-type': 'creditCardType',
|
|
1569
1817
|
'current-password': 'password',
|
|
1570
1818
|
country: 'countryName',
|
|
1571
1819
|
email: 'emailAddress',
|
|
@@ -1588,10 +1836,11 @@ const autoCompleteWebToTextContentTypeMap = {
|
|
|
1588
1836
|
username: 'username',
|
|
1589
1837
|
};
|
|
1590
1838
|
|
|
1591
|
-
const ExportedForwardRef:
|
|
1592
|
-
React.
|
|
1593
|
-
|
|
1594
|
-
|
|
1839
|
+
const ExportedForwardRef: component(
|
|
1840
|
+
ref: React.RefSetter<TextInputInstance>,
|
|
1841
|
+
...props: React.ElementConfig<typeof InternalTextInput>
|
|
1842
|
+
// $FlowFixMe[incompatible-call]
|
|
1843
|
+
) = React.forwardRef(function TextInput(
|
|
1595
1844
|
{
|
|
1596
1845
|
allowFontScaling = true,
|
|
1597
1846
|
rejectResponderTermination = true,
|
|
@@ -1609,25 +1858,14 @@ const ExportedForwardRef: React.AbstractComponent<
|
|
|
1609
1858
|
},
|
|
1610
1859
|
forwardedRef: ReactRefSetter<TextInputInstance>,
|
|
1611
1860
|
) {
|
|
1612
|
-
// $FlowFixMe[underconstrained-implicit-instantiation]
|
|
1613
|
-
let style = flattenStyle(restProps.style);
|
|
1614
1861
|
|
|
1615
|
-
|
|
1616
|
-
style.textAlignVertical =
|
|
1617
|
-
verticalAlignToTextAlignVerticalMap[style.verticalAlign];
|
|
1618
|
-
delete style.verticalAlign;
|
|
1619
|
-
}
|
|
1620
|
-
|
|
1621
|
-
// RNOH patch: invalid `keyboardType` prop values crash the app
|
|
1862
|
+
// RNC_patch: invalid `keyboardType` prop values crash the app
|
|
1622
1863
|
{
|
|
1623
1864
|
// supported keyboard types from `textinput/conversions.h`
|
|
1624
|
-
|
|
1625
|
-
|
|
1626
|
-
|
|
1627
|
-
}
|
|
1865
|
+
if (keyboardType && !DELEGATE.getSupportedKeyboardTypes().includes(keyboardType)) {
|
|
1866
|
+
keyboardType = 'default';
|
|
1867
|
+
}
|
|
1628
1868
|
}
|
|
1629
|
-
// END RNOH patch
|
|
1630
|
-
|
|
1631
1869
|
return (
|
|
1632
1870
|
<InternalTextInput
|
|
1633
1871
|
allowFontScaling={allowFontScaling}
|
|
@@ -1644,40 +1882,34 @@ const ExportedForwardRef: React.AbstractComponent<
|
|
|
1644
1882
|
inputMode == null ? showSoftInputOnFocus : inputMode !== 'none'
|
|
1645
1883
|
}
|
|
1646
1884
|
autoComplete={
|
|
1647
|
-
|
|
1648
|
-
|
|
1649
|
-
|
|
1650
|
-
|
|
1651
|
-
|
|
1652
|
-
|
|
1885
|
+
DELEGATE.getNativeAutocomplete(autoComplete)
|
|
1886
|
+
// Platform.OS === 'android'
|
|
1887
|
+
// ? // $FlowFixMe[invalid-computed-prop]
|
|
1888
|
+
// // $FlowFixMe[prop-missing]
|
|
1889
|
+
// autoCompleteWebToAutoCompleteAndroidMap[autoComplete] ??
|
|
1890
|
+
// autoComplete
|
|
1891
|
+
// : undefined
|
|
1653
1892
|
}
|
|
1654
1893
|
textContentType={
|
|
1655
|
-
textContentType
|
|
1656
|
-
|
|
1657
|
-
|
|
1658
|
-
|
|
1659
|
-
|
|
1660
|
-
|
|
1661
|
-
|
|
1662
|
-
|
|
1663
|
-
|
|
1894
|
+
DELEGATE.getNativeTextContentType(textContentType, {autocomplete: autoComplete, autocompleteWebToTextContentTypeMap: autoCompleteWebToTextContentTypeMap})
|
|
1895
|
+
// textContentType != null
|
|
1896
|
+
// ? textContentType
|
|
1897
|
+
// : Platform.OS === 'ios' &&
|
|
1898
|
+
// autoComplete &&
|
|
1899
|
+
// autoComplete in autoCompleteWebToTextContentTypeMap
|
|
1900
|
+
// ? // $FlowFixMe[invalid-computed-prop]
|
|
1901
|
+
// // $FlowFixMe[prop-missing]
|
|
1902
|
+
// autoCompleteWebToTextContentTypeMap[autoComplete]
|
|
1903
|
+
// : textContentType
|
|
1664
1904
|
}
|
|
1665
1905
|
{...restProps}
|
|
1666
1906
|
forwardedRef={forwardedRef}
|
|
1667
|
-
style={style}
|
|
1668
1907
|
/>
|
|
1669
1908
|
);
|
|
1670
1909
|
});
|
|
1671
1910
|
|
|
1672
1911
|
ExportedForwardRef.displayName = 'TextInput';
|
|
1673
1912
|
|
|
1674
|
-
/**
|
|
1675
|
-
* Switch to `deprecated-react-native-prop-types` for compatibility with future
|
|
1676
|
-
* releases. This is deprecated and will be removed in the future.
|
|
1677
|
-
*/
|
|
1678
|
-
ExportedForwardRef.propTypes =
|
|
1679
|
-
require('deprecated-react-native-prop-types').TextInputPropTypes;
|
|
1680
|
-
|
|
1681
1913
|
// $FlowFixMe[prop-missing]
|
|
1682
1914
|
ExportedForwardRef.State = {
|
|
1683
1915
|
currentlyFocusedInput: TextInputState.currentlyFocusedInput,
|
|
@@ -1697,7 +1929,7 @@ export type TextInputComponentStatics = $ReadOnly<{|
|
|
|
1697
1929
|
|}>;
|
|
1698
1930
|
|
|
1699
1931
|
const styles = StyleSheet.create({
|
|
1700
|
-
|
|
1932
|
+
multilineDefault: {
|
|
1701
1933
|
// This default top inset makes RCTMultilineTextInputView seem as close as possible
|
|
1702
1934
|
// to single-line RCTSinglelineTextInputView defaults, using the system defaults
|
|
1703
1935
|
// of font size 17 and a height of 31 points.
|