@office-iss/react-native-win32 0.73.1 → 0.74.0-preview.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.
Files changed (478) hide show
  1. package/.eslintignore +1 -1
  2. package/.flowconfig +11 -3
  3. package/CHANGELOG.json +422 -44
  4. package/CHANGELOG.md +162 -26
  5. package/IntegrationTests/AccessibilityManagerTest.js +2 -2
  6. package/IntegrationTests/AppEventsTest.js +2 -2
  7. package/IntegrationTests/LayoutEventsTest.js +8 -10
  8. package/IntegrationTests/LoggingTestModule.js +1 -2
  9. package/IntegrationTests/websocket_integration_test_server.js +1 -1
  10. package/Libraries/ActionSheetIOS/ActionSheetIOS.d.ts +6 -0
  11. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +6 -0
  12. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +4 -45
  13. package/Libraries/Alert/NativeAlertManager.js +4 -26
  14. package/Libraries/Animated/Animated.js +2 -2
  15. package/Libraries/Animated/AnimatedPlatformConfig.js +1 -1
  16. package/Libraries/Animated/NativeAnimatedHelper.js +14 -11
  17. package/Libraries/Animated/NativeAnimatedHelper.win32.js +14 -11
  18. package/Libraries/Animated/NativeAnimatedModule.js +4 -68
  19. package/Libraries/Animated/NativeAnimatedTurboModule.js +4 -69
  20. package/Libraries/Animated/animations/Animation.js +6 -22
  21. package/Libraries/Animated/components/AnimatedFlatList.js +1 -16
  22. package/Libraries/Animated/components/AnimatedScrollView.js +36 -31
  23. package/Libraries/Animated/components/AnimatedSectionList.js +1 -20
  24. package/Libraries/Animated/createAnimatedComponent.js +45 -40
  25. package/Libraries/Animated/nodes/AnimatedStyle.js +1 -1
  26. package/Libraries/Animated/shouldUseTurboAnimatedModule.js +1 -1
  27. package/Libraries/Animated/useAnimatedProps.js +21 -1
  28. package/Libraries/AppState/NativeAppState.js +4 -24
  29. package/Libraries/BatchedBridge/NativeModules.js +1 -1
  30. package/Libraries/Blob/Blob.js +1 -4
  31. package/Libraries/Blob/BlobManager.js +6 -8
  32. package/Libraries/Blob/File.js +1 -1
  33. package/Libraries/Blob/NativeBlobModule.js +4 -50
  34. package/Libraries/Blob/NativeFileReaderModule.js +4 -13
  35. package/Libraries/BugReporting/NativeBugReporting.js +4 -12
  36. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +5 -1
  37. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js +48 -7
  38. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +3 -23
  39. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfoWin32.js +11 -0
  40. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +4 -57
  41. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +3 -2
  42. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.win32.js +3 -2
  43. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +9 -40
  44. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +3 -43
  45. package/Libraries/Components/Button/ButtonWin32.Props.d.ts +36 -36
  46. package/Libraries/Components/Button/ButtonWin32.Props.js +2 -2
  47. package/Libraries/Components/Button/ButtonWin32.Props.js.map +1 -1
  48. package/Libraries/Components/Button/ButtonWin32.d.ts +19 -19
  49. package/Libraries/Components/Button/ButtonWin32.js +82 -82
  50. package/Libraries/Components/Button/ButtonWin32.js.map +1 -1
  51. package/Libraries/Components/Button.js +103 -107
  52. package/Libraries/Components/Button.win32.js +297 -301
  53. package/Libraries/Components/Clipboard/NativeClipboard.js +3 -11
  54. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +3 -114
  55. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +1 -5
  56. package/Libraries/Components/EnterString.win32.d.ts +12 -12
  57. package/Libraries/Components/EnterString.win32.js +81 -81
  58. package/Libraries/Components/EnterString.win32.js.map +1 -1
  59. package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +3 -10
  60. package/Libraries/Components/PopupMenuAndroid/PopupMenuAndroid.android.js +69 -0
  61. package/Libraries/Components/PopupMenuAndroid/PopupMenuAndroid.d.ts +24 -0
  62. package/Libraries/Components/PopupMenuAndroid/PopupMenuAndroid.js +33 -0
  63. package/Libraries/Components/PopupMenuAndroid/PopupMenuAndroidNativeComponent.js +13 -0
  64. package/Libraries/Components/Pressable/Pressable.js +1 -1
  65. package/Libraries/Components/Pressable/Pressable.win32.js +1 -1
  66. package/Libraries/Components/Pressable/useAndroidRippleForView.js +5 -4
  67. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +4 -24
  68. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +3 -64
  69. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +3 -61
  70. package/Libraries/Components/RefreshControl/RefreshControl.js +1 -1
  71. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +3 -15
  72. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +3 -16
  73. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +1 -1
  74. package/Libraries/Components/ScrollView/ScrollView.d.ts +5 -6
  75. package/Libraries/Components/ScrollView/ScrollView.js +12 -38
  76. package/Libraries/Components/ScrollView/ScrollView.win32.js +12 -38
  77. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -2
  78. package/Libraries/Components/Sound/NativeSoundManager.js +3 -12
  79. package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +3 -58
  80. package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +3 -79
  81. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +4 -53
  82. package/Libraries/Components/Switch/Switch.js +0 -2
  83. package/Libraries/Components/Switch/SwitchNativeComponent.js +4 -52
  84. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +8 -0
  85. package/Libraries/Components/TextInput/InputAccessoryView.js +18 -20
  86. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +4 -17
  87. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +3 -6
  88. package/Libraries/Components/TextInput/Tests/TextInputTest.d.ts +8 -8
  89. package/Libraries/Components/TextInput/Tests/TextInputTest.js +127 -127
  90. package/Libraries/Components/TextInput/Tests/TextInputTest.js.map +1 -1
  91. package/Libraries/Components/TextInput/TextInput.d.ts +16 -0
  92. package/Libraries/Components/TextInput/TextInput.flow.js +16 -0
  93. package/Libraries/Components/TextInput/TextInput.js +65 -32
  94. package/Libraries/Components/TextInput/TextInput.win32.js +70 -37
  95. package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +3 -28
  96. package/Libraries/Components/Touchable/PooledClass.js +1 -1
  97. package/Libraries/Components/Touchable/Tests/TouchableWin32Test.d.ts +8 -8
  98. package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js +343 -344
  99. package/Libraries/Components/Touchable/Tests/TouchableWin32Test.js.map +1 -1
  100. package/Libraries/Components/Touchable/Touchable.js +2 -3
  101. package/Libraries/Components/Touchable/Touchable.win32.js +2 -3
  102. package/Libraries/Components/Touchable/TouchableHighlight.js +4 -4
  103. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +2 -1
  104. package/Libraries/Components/Touchable/TouchableOpacity.js +5 -2
  105. package/Libraries/Components/Touchable/TouchableWin32.Props.d.ts +37 -37
  106. package/Libraries/Components/Touchable/TouchableWin32.Props.js +2 -2
  107. package/Libraries/Components/Touchable/TouchableWin32.Props.js.map +1 -1
  108. package/Libraries/Components/Touchable/TouchableWin32.Types.d.ts +114 -114
  109. package/Libraries/Components/Touchable/TouchableWin32.Types.js +2 -2
  110. package/Libraries/Components/Touchable/TouchableWin32.Types.js.map +1 -1
  111. package/Libraries/Components/Touchable/TouchableWin32.d.ts +91 -91
  112. package/Libraries/Components/Touchable/TouchableWin32.js +506 -506
  113. package/Libraries/Components/Touchable/TouchableWin32.js.map +1 -1
  114. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +3 -16
  115. package/Libraries/Components/View/ReactNativeStyleAttributes.js +1 -1
  116. package/Libraries/Components/View/View.js +0 -11
  117. package/Libraries/Components/View/View.win32.js +18 -17
  118. package/Libraries/Components/View/ViewAccessibility.d.ts +33 -17
  119. package/Libraries/Components/View/ViewPropTypes.d.ts +28 -17
  120. package/Libraries/Components/View/ViewPropTypes.js +36 -36
  121. package/Libraries/Components/View/ViewPropTypes.win32.js +36 -36
  122. package/Libraries/Core/InitializeCore.js +1 -1
  123. package/Libraries/Core/NativeExceptionsManager.js +3 -93
  124. package/Libraries/Core/ReactNativeVersion.js +12 -6
  125. package/Libraries/Core/ReactNativeVersionCheck.js +6 -6
  126. package/Libraries/Core/ReactNativeVersionCheck.win32.js +6 -6
  127. package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +3 -18
  128. package/Libraries/Core/Timers/NativeTiming.js +3 -16
  129. package/Libraries/Core/registerCallableModule.js +42 -0
  130. package/Libraries/Core/setUpPerformance.js +2 -2
  131. package/Libraries/Core/setUpPerformanceObserver.js +3 -1
  132. package/Libraries/Debugging/DebuggingOverlay.js +111 -0
  133. package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +13 -0
  134. package/Libraries/Debugging/DebuggingOverlayRegistry.js +513 -0
  135. package/Libraries/Debugging/useSubscribeToDebuggingOverlayRegistry.js +32 -0
  136. package/Libraries/DevToolsSettings/NativeDevToolsSettingsManager.js +3 -14
  137. package/Libraries/HeapCapture/NativeJSCHeapCapture.js +3 -9
  138. package/Libraries/Image/AssetSourceResolver.js +5 -5
  139. package/Libraries/Image/AssetUtils.js +4 -5
  140. package/Libraries/Image/Image.android.js +146 -174
  141. package/Libraries/Image/Image.d.ts +1 -1
  142. package/Libraries/Image/Image.ios.js +53 -79
  143. package/Libraries/Image/Image.win32.js +52 -74
  144. package/Libraries/Image/ImageBackground.js +2 -2
  145. package/Libraries/Image/ImageInjection.js +76 -18
  146. package/Libraries/Image/ImageTypes.d.ts +25 -25
  147. package/Libraries/Image/ImageTypes.flow.js +71 -0
  148. package/Libraries/Image/ImageTypes.js +7 -7
  149. package/Libraries/Image/ImageTypes.js.map +1 -1
  150. package/Libraries/Image/ImageUtils.js +1 -1
  151. package/Libraries/Image/ImageViewNativeComponent.js +18 -0
  152. package/Libraries/Image/NativeImageEditor.js +3 -42
  153. package/Libraries/Image/NativeImageLoaderAndroid.js +4 -28
  154. package/Libraries/Image/NativeImageLoaderIOS.js +4 -28
  155. package/Libraries/Image/NativeImageLoaderWin32.js +4 -36
  156. package/Libraries/Image/NativeImageStoreAndroid.js +3 -16
  157. package/Libraries/Image/NativeImageStoreIOS.js +3 -23
  158. package/Libraries/Image/Tests/ImageWin32Test.d.ts +8 -8
  159. package/Libraries/Image/Tests/ImageWin32Test.js +21 -21
  160. package/Libraries/Image/Tests/ImageWin32Test.js.map +1 -1
  161. package/Libraries/Image/resolveAssetSource.js +59 -26
  162. package/Libraries/Inspector/ElementProperties.js +26 -52
  163. package/Libraries/Inspector/Inspector.js +122 -186
  164. package/Libraries/Inspector/Inspector.win32.js +118 -185
  165. package/Libraries/Inspector/InspectorOverlay.js +21 -33
  166. package/Libraries/Inspector/InspectorOverlay.win32.js +22 -33
  167. package/Libraries/Inspector/InspectorPanel.js +3 -17
  168. package/Libraries/Inspector/ReactDevToolsOverlay.js +171 -0
  169. package/Libraries/Inspector/getInspectorDataForViewAtPoint.js +20 -8
  170. package/Libraries/Interaction/FrameRateLogger.js +8 -18
  171. package/Libraries/Interaction/NativeFrameRateLogger.js +4 -16
  172. package/Libraries/IntersectionObserver/IntersectionObserver.js +1 -1
  173. package/Libraries/IntersectionObserver/IntersectionObserverEntry.js +20 -19
  174. package/Libraries/IntersectionObserver/IntersectionObserverManager.js +84 -6
  175. package/Libraries/IntersectionObserver/NativeIntersectionObserver.js +3 -31
  176. package/Libraries/IntersectionObserver/__mocks__/NativeIntersectionObserver.js +12 -2
  177. package/Libraries/LayoutAnimation/LayoutAnimation.js +1 -2
  178. package/Libraries/Linking/NativeIntentAndroid.js +3 -20
  179. package/Libraries/Linking/NativeLinkingManager.js +3 -17
  180. package/Libraries/Lists/FillRateHelper.js +1 -1
  181. package/Libraries/Lists/FlatList.d.ts +2 -2
  182. package/Libraries/Lists/FlatList.js +6 -1
  183. package/Libraries/Lists/SectionList.d.ts +6 -1
  184. package/Libraries/Lists/ViewabilityHelper.js +1 -1
  185. package/Libraries/Lists/VirtualizeUtils.js +1 -1
  186. package/Libraries/Lists/VirtualizedList.js +1 -1
  187. package/Libraries/Lists/VirtualizedListContext.js +1 -1
  188. package/Libraries/Lists/VirtualizedSectionList.js +1 -1
  189. package/Libraries/LogBox/LogBoxInspectorContainer.js +1 -1
  190. package/Libraries/Modal/Modal.js +43 -11
  191. package/Libraries/Modal/NativeModalManager.js +3 -11
  192. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +3 -129
  193. package/Libraries/MutationObserver/MutationObserver.js +1 -1
  194. package/Libraries/MutationObserver/MutationObserverManager.js +2 -2
  195. package/Libraries/MutationObserver/MutationRecord.js +12 -10
  196. package/Libraries/MutationObserver/NativeMutationObserver.js +3 -48
  197. package/Libraries/MutationObserver/__mocks__/NativeMutationObserver.js +1 -1
  198. package/Libraries/NativeComponent/BaseViewConfig.android.js +1 -0
  199. package/Libraries/NativeComponent/NativeComponentRegistry.js +1 -1
  200. package/Libraries/NativeModules/specs/NativeAnimationsDebugModule.js +3 -10
  201. package/Libraries/NativeModules/specs/NativeDevMenu.js +3 -13
  202. package/Libraries/NativeModules/specs/NativeDevSettings.js +3 -23
  203. package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +3 -9
  204. package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +3 -38
  205. package/Libraries/NativeModules/specs/NativeLogBox.js +3 -10
  206. package/Libraries/NativeModules/specs/NativeRedBox.js +4 -11
  207. package/Libraries/NativeModules/specs/NativeSourceCode.js +2 -25
  208. package/Libraries/Network/FormData.js +3 -1
  209. package/Libraries/Network/NativeNetworkingAndroid.js +4 -28
  210. package/Libraries/Network/NativeNetworkingIOS.js +4 -28
  211. package/Libraries/Performance/NativeJSCSamplingProfiler.js +3 -9
  212. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +4 -68
  213. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +3 -3
  214. package/Libraries/PersonaCoin/PersonaCoin.d.ts +3 -3
  215. package/Libraries/PersonaCoin/PersonaCoin.js +14 -14
  216. package/Libraries/PersonaCoin/PersonaCoin.js.map +1 -1
  217. package/Libraries/PersonaCoin/PersonaCoinPropTypes.d.ts +2 -2
  218. package/Libraries/PersonaCoin/PersonaCoinPropTypes.js +19 -19
  219. package/Libraries/PersonaCoin/PersonaCoinPropTypes.js.map +1 -1
  220. package/Libraries/PersonaCoin/PersonaCoinTypes.d.ts +33 -33
  221. package/Libraries/PersonaCoin/PersonaCoinTypes.js +23 -23
  222. package/Libraries/PersonaCoin/PersonaCoinTypes.js.map +1 -1
  223. package/Libraries/Pressability/Pressability.js +12 -2
  224. package/Libraries/Pressability/Pressability.win32.js +12 -2
  225. package/Libraries/Pressability/usePressability.js +7 -0
  226. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +4 -70
  227. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +45 -39
  228. package/Libraries/ReactNative/AppContainer-dev.js +192 -0
  229. package/Libraries/ReactNative/AppContainer-prod.js +53 -0
  230. package/Libraries/ReactNative/AppContainer.js +6 -149
  231. package/Libraries/ReactNative/AppRegistry.js +3 -1
  232. package/Libraries/ReactNative/BridgelessUIManager.js +375 -128
  233. package/Libraries/ReactNative/FabricUIManager.js +6 -0
  234. package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +3 -10
  235. package/Libraries/ReactNative/NativeI18nManager.js +3 -18
  236. package/Libraries/ReactNative/NativeUIManager.js +4 -112
  237. package/Libraries/ReactNative/PaperUIManager.js +8 -7
  238. package/Libraries/ReactNative/PaperUIManager.win32.js +26 -7
  239. package/Libraries/ReactNative/ReactFabricInternals.js +1 -1
  240. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +24 -5
  241. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +0 -45
  242. package/Libraries/ReactNative/RendererImplementation.js +11 -0
  243. package/Libraries/ReactNative/UIManager.d.ts +11 -34
  244. package/Libraries/ReactNative/UIManager.js +2 -23
  245. package/Libraries/ReactNative/UIManagerProperties.js +0 -2
  246. package/Libraries/ReactNative/__mocks__/FabricUIManager.js +23 -1
  247. package/Libraries/ReactNative/getNativeComponentAttributes.js +5 -1
  248. package/Libraries/ReactNative/renderApplication.js +9 -6
  249. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +6 -1
  250. package/Libraries/Renderer/implementations/ReactFabric-dev.js +24771 -21123
  251. package/Libraries/Renderer/implementations/ReactFabric-prod.js +4160 -3109
  252. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +4384 -3322
  253. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +25194 -21398
  254. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +3763 -2636
  255. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +4027 -2867
  256. package/Libraries/Renderer/shims/ReactNativeTypes.js +8 -9
  257. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +7 -12
  258. package/Libraries/Settings/NativeSettingsManager.js +4 -16
  259. package/Libraries/Share/NativeShareModule.js +3 -13
  260. package/Libraries/StyleSheet/PlatformColorValueTypes.win32.js +1 -1
  261. package/Libraries/StyleSheet/PlatformColorValueTypesWin32.d.ts +1 -1
  262. package/Libraries/StyleSheet/PlatformColorValueTypesWin32.js +1 -1
  263. package/Libraries/StyleSheet/StyleSheet.d.ts +1 -20
  264. package/Libraries/StyleSheet/StyleSheet.js +5 -28
  265. package/Libraries/StyleSheet/StyleSheet.win32.js +5 -28
  266. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +47 -7
  267. package/Libraries/StyleSheet/StyleSheetTypes.js +16 -11
  268. package/Libraries/StyleSheet/flattenStyle.js +2 -2
  269. package/Libraries/StyleSheet/normalizeColor.js +1 -1
  270. package/Libraries/StyleSheet/processAspectRatio.js +1 -1
  271. package/Libraries/StyleSheet/processFontVariant.js +1 -1
  272. package/Libraries/Text/Text.d.ts +85 -0
  273. package/Libraries/Text/Text.js +0 -6
  274. package/Libraries/Text/Text.win32.js +0 -6
  275. package/Libraries/Text/TextAncestor.js +2 -3
  276. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +4 -41
  277. package/Libraries/Types/ReactDevToolsTypes.js +58 -0
  278. package/Libraries/Types/UIManagerJSInterface.js +16 -0
  279. package/Libraries/Utilities/DebugEnvironment.js +1 -4
  280. package/Libraries/Utilities/Dimensions.js +8 -16
  281. package/Libraries/Utilities/Dimensions.win32.js +8 -16
  282. package/Libraries/Utilities/FocusManager.win32.js +2 -0
  283. package/Libraries/Utilities/GlobalPerformanceLogger.js +1 -2
  284. package/Libraries/Utilities/NativeAppearance.js +3 -26
  285. package/Libraries/Utilities/NativeDevLoadingView.js +3 -14
  286. package/Libraries/Utilities/NativeDeviceInfo.js +2 -47
  287. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +3 -34
  288. package/Libraries/Utilities/NativePlatformConstantsIOS.js +3 -26
  289. package/Libraries/Utilities/NativePlatformConstantsWin.js +3 -23
  290. package/Libraries/Utilities/PixelRatio.d.ts +4 -4
  291. package/Libraries/Utilities/Platform.android.js +4 -0
  292. package/Libraries/Utilities/Platform.d.ts +3 -0
  293. package/Libraries/Utilities/Platform.flow.js +7 -0
  294. package/Libraries/Utilities/Platform.flow.win32.js +18 -5
  295. package/Libraries/Utilities/Platform.ios.js +11 -0
  296. package/Libraries/Utilities/Platform.win32.js +9 -1
  297. package/Libraries/Utilities/binaryToBase64.js +1 -1
  298. package/Libraries/Utilities/codegenNativeComponent.js +4 -6
  299. package/Libraries/Utilities/createPerformanceLogger.js +2 -74
  300. package/Libraries/Utilities/useMergeRefs.js +5 -9
  301. package/Libraries/Vibration/NativeVibration.js +3 -14
  302. package/Libraries/WebSocket/NativeWebSocketModule.js +4 -25
  303. package/Libraries/YellowBox/YellowBoxDeprecated.js +1 -1
  304. package/Libraries/platform-types.d.ts +2 -3
  305. package/Libraries/vendor/emitter/EventEmitter.js +1 -0
  306. package/babel.config.js +1 -1
  307. package/flow/jest.js +1 -1
  308. package/flow/react.js +15 -0
  309. package/index.js +66 -99
  310. package/index.win32.js +60 -101
  311. package/jest/assetFileTransformer.js +1 -1
  312. package/jest/local-setup.js +0 -5
  313. package/jest/mockModal.js +2 -1
  314. package/jest/mockScrollView.js +1 -2
  315. package/jest/renderer.js +1 -1
  316. package/jest/setup.js +6 -3
  317. package/jest.config.js +2 -1
  318. package/overrides.json +157 -130
  319. package/package.json +26 -26
  320. package/{Libraries/Core → src/private/core}/setUpDOM.js +2 -2
  321. package/src/private/featureflags/NativeReactNativeFeatureFlags.js +42 -0
  322. package/src/private/featureflags/ReactNativeFeatureFlags.js +140 -0
  323. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +84 -0
  324. package/src/private/featureflags/__tests__/ReactNativeFeatureFlags-test.js +92 -0
  325. package/src/private/specs/components/ActivityIndicatorViewNativeComponent.js +53 -0
  326. package/src/private/specs/components/AndroidDrawerLayoutNativeComponent.js +124 -0
  327. package/src/private/specs/components/AndroidHorizontalScrollContentViewNativeComponent.js +26 -0
  328. package/src/private/specs/components/AndroidSwipeRefreshLayoutNativeComponent.js +74 -0
  329. package/src/private/specs/components/AndroidSwitchNativeComponent.js +62 -0
  330. package/src/private/specs/components/DebuggingOverlayNativeComponent.js +61 -0
  331. package/src/private/specs/components/PopupMenuAndroidNativeComponent.js +47 -0
  332. package/src/private/specs/components/ProgressBarAndroidNativeComponent.js +36 -0
  333. package/src/private/specs/components/PullToRefreshViewNativeComponent.js +71 -0
  334. package/src/private/specs/components/RCTInputAccessoryViewNativeComponent.js +26 -0
  335. package/src/private/specs/components/RCTModalHostViewNativeComponent.js +139 -0
  336. package/src/private/specs/components/RCTSafeAreaViewNativeComponent.js +25 -0
  337. package/src/private/specs/components/SwitchNativeComponent.js +61 -0
  338. package/src/private/specs/components/UnimplementedNativeViewNativeComponent.js +26 -0
  339. package/src/private/specs/modules/NativeAccessibilityInfo.js +33 -0
  340. package/src/private/specs/modules/NativeAccessibilityInfoWin32.js +39 -0
  341. package/src/private/specs/modules/NativeAccessibilityManager.js +66 -0
  342. package/src/private/specs/modules/NativeActionSheetManager.js +54 -0
  343. package/src/private/specs/modules/NativeAlertManager.js +35 -0
  344. package/src/private/specs/modules/NativeAnimatedModule.js +77 -0
  345. package/src/private/specs/modules/NativeAnimatedTurboModule.js +78 -0
  346. package/src/private/specs/modules/NativeAnimationsDebugModule.js +20 -0
  347. package/src/private/specs/modules/NativeAppState.js +33 -0
  348. package/src/private/specs/modules/NativeAppearance.js +36 -0
  349. package/src/private/specs/modules/NativeBlobModule.js +59 -0
  350. package/src/private/specs/modules/NativeBugReporting.js +20 -0
  351. package/src/private/specs/modules/NativeClipboard.js +21 -0
  352. package/src/private/specs/modules/NativeDevLoadingView.js +24 -0
  353. package/src/private/specs/modules/NativeDevMenu.js +23 -0
  354. package/src/private/specs/modules/NativeDevSettings.js +33 -0
  355. package/src/private/specs/modules/NativeDevToolsSettingsManager.js +24 -0
  356. package/src/private/specs/modules/NativeDeviceEventManager.js +19 -0
  357. package/src/private/specs/modules/NativeDeviceInfo.js +58 -0
  358. package/src/private/specs/modules/NativeDialogManagerAndroid.js +48 -0
  359. package/src/private/specs/modules/NativeExceptionsManager.js +103 -0
  360. package/src/private/specs/modules/NativeFileReaderModule.js +22 -0
  361. package/src/private/specs/modules/NativeFrameRateLogger.js +22 -0
  362. package/src/private/specs/modules/NativeHeadlessJsTaskSupport.js +20 -0
  363. package/src/private/specs/modules/NativeI18nManager.js +28 -0
  364. package/src/private/specs/modules/NativeImageEditor.js +52 -0
  365. package/src/private/specs/modules/NativeImageLoaderAndroid.js +30 -0
  366. package/src/private/specs/modules/NativeImageLoaderIOS.js +37 -0
  367. package/src/private/specs/modules/NativeImageLoaderWin32.js +45 -0
  368. package/src/private/specs/modules/NativeImageStoreAndroid.js +26 -0
  369. package/src/private/specs/modules/NativeImageStoreIOS.js +33 -0
  370. package/src/private/specs/modules/NativeIntentAndroid.js +30 -0
  371. package/src/private/specs/modules/NativeIntersectionObserver.js +41 -0
  372. package/src/private/specs/modules/NativeJSCHeapCapture.js +19 -0
  373. package/src/private/specs/modules/NativeJSCSamplingProfiler.js +19 -0
  374. package/src/private/specs/modules/NativeKeyboardObserver.js +20 -0
  375. package/src/private/specs/modules/NativeLinkingManager.js +27 -0
  376. package/src/private/specs/modules/NativeLogBox.js +20 -0
  377. package/src/private/specs/modules/NativeModalManager.js +21 -0
  378. package/src/private/specs/modules/NativeMutationObserver.js +58 -0
  379. package/src/private/specs/modules/NativeNetworkingAndroid.js +37 -0
  380. package/src/private/specs/modules/NativeNetworkingIOS.js +37 -0
  381. package/src/private/specs/modules/NativePermissionsAndroid.js +77 -0
  382. package/src/private/specs/modules/NativePlatformConstantsAndroid.js +44 -0
  383. package/src/private/specs/modules/NativePlatformConstantsIOS.js +37 -0
  384. package/src/private/specs/modules/NativePlatformConstantsWin.js +37 -0
  385. package/src/private/specs/modules/NativePushNotificationManagerIOS.js +107 -0
  386. package/src/private/specs/modules/NativeRedBox.js +20 -0
  387. package/src/private/specs/modules/NativeSampleTurboModule.js +53 -0
  388. package/src/private/specs/modules/NativeSegmentFetcher.js +28 -0
  389. package/src/private/specs/modules/NativeSettingsManager.js +25 -0
  390. package/src/private/specs/modules/NativeShareModule.js +23 -0
  391. package/src/private/specs/modules/NativeSoundManager.js +22 -0
  392. package/src/private/specs/modules/NativeSourceCode.js +36 -0
  393. package/src/private/specs/modules/NativeStatusBarManagerAndroid.js +68 -0
  394. package/src/private/specs/modules/NativeStatusBarManagerIOS.js +89 -0
  395. package/src/private/specs/modules/NativeTiming.js +26 -0
  396. package/src/private/specs/modules/NativeToastAndroid.js +38 -0
  397. package/src/private/specs/modules/NativeUIManager.js +118 -0
  398. package/src/private/specs/modules/NativeVibration.js +24 -0
  399. package/src/private/specs/modules/NativeWebSocketModule.js +34 -0
  400. package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReactNativeElement.js +6 -6
  401. package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyCharacterData.js +2 -2
  402. package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyElement.js +5 -5
  403. package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyNode.js +19 -10
  404. package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/DOMRectList.js +1 -1
  405. package/src/private/webapis/dom/oldstylecollections/__tests__/DOMRectList-test.js +85 -0
  406. package/src/private/webapis/dom/oldstylecollections/__tests__/HTMLCollection-test.js +80 -0
  407. package/src/private/webapis/dom/oldstylecollections/__tests__/NodeList-test.js +161 -0
  408. package/{Libraries/WebPerformance → src/private/webapis/performance}/NativePerformance.js +2 -2
  409. package/{Libraries/WebPerformance → src/private/webapis/performance}/NativePerformanceObserver.js +3 -2
  410. package/{Libraries/WebPerformance → src/private/webapis/performance}/Performance.js +2 -2
  411. package/{Libraries/WebPerformance → src/private/webapis/performance}/PerformanceEventTiming.js +1 -1
  412. package/{Libraries/WebPerformance → src/private/webapis/performance}/PerformanceObserver.js +21 -2
  413. package/{Libraries/WebPerformance → src/private/webapis/performance}/RawPerformanceEntry.js +1 -1
  414. package/{Libraries/WebPerformance → src/private/webapis/performance}/__mocks__/NativePerformanceObserver.js +9 -0
  415. package/src/private/webapis/performance/__tests__/EventCounts-test.js +116 -0
  416. package/src/private/webapis/performance/__tests__/NativePerformanceMock-test.js +82 -0
  417. package/src/private/webapis/performance/__tests__/NativePerformanceObserverMock-test.js +108 -0
  418. package/src/private/webapis/performance/__tests__/Performance-test.js +117 -0
  419. package/src/private/webapis/performance/__tests__/PerformanceObserver-test.js +208 -0
  420. package/src-win/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +161 -0
  421. package/{src → src-win}/Libraries/Components/Button/ButtonWin32.tsx +3 -3
  422. package/{src → src-win}/Libraries/Components/Touchable/Tests/TouchableWin32Test.tsx +9 -10
  423. package/{src → src-win}/Libraries/Components/View/ViewAccessibility.d.ts +33 -17
  424. package/{src → src-win}/Libraries/Components/View/ViewPropTypes.d.ts +28 -17
  425. package/{src → src-win}/Libraries/StyleSheet/PlatformColorValueTypesWin32.d.ts +1 -1
  426. package/src-win/Libraries/Text/Text.d.ts +304 -0
  427. package/{src → src-win}/Libraries/platform-types.d.ts +2 -3
  428. package/types/modules/globals.d.ts +1 -0
  429. package/Libraries/Components/Button.flow.js +0 -265
  430. package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +0 -85
  431. package/Libraries/Components/Text/TextWin32.Props.d.ts +0 -63
  432. package/Libraries/Components/Text/TextWin32.Props.js +0 -3
  433. package/Libraries/Components/Text/TextWin32.Props.js.map +0 -1
  434. package/Libraries/Components/Text/TextWin32.d.ts +0 -6
  435. package/Libraries/Components/Text/TextWin32.js +0 -18
  436. package/Libraries/Components/Text/TextWin32.js.map +0 -1
  437. package/Libraries/Components/Touchable/Touchable.flow.js +0 -284
  438. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlay.js +0 -189
  439. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlayNativeComponent.js +0 -43
  440. package/Libraries/Image/Image.flow.js +0 -64
  441. package/Libraries/Inspector/DevtoolsOverlay.js +0 -223
  442. package/Libraries/Performance/QuickPerformanceLogger.js +0 -142
  443. package/src/Libraries/Components/Text/TextWin32.Props.ts +0 -82
  444. package/src/Libraries/Components/Text/TextWin32.tsx +0 -25
  445. /package/{Libraries/DOM/Geometry → src/private/webapis/dom/geometry}/DOMRect.js +0 -0
  446. /package/{Libraries/DOM/Geometry → src/private/webapis/dom/geometry}/DOMRectReadOnly.js +0 -0
  447. /package/{Libraries/DOM/Nodes → src/private/webapis/dom/nodes}/ReadOnlyText.js +0 -0
  448. /package/{Libraries/DOM/Nodes/Utilities → src/private/webapis/dom/nodes/utilities}/Traversal.js +0 -0
  449. /package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/ArrayLikeUtils.js +0 -0
  450. /package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/HTMLCollection.js +0 -0
  451. /package/{Libraries/DOM/OldStyleCollections → src/private/webapis/dom/oldstylecollections}/NodeList.js +0 -0
  452. /package/{Libraries/WebPerformance → src/private/webapis/performance}/EventCounts.js +0 -0
  453. /package/{Libraries/WebPerformance → src/private/webapis/performance}/MemoryInfo.js +0 -0
  454. /package/{Libraries/WebPerformance → src/private/webapis/performance}/PerformanceEntry.js +0 -0
  455. /package/{Libraries/WebPerformance → src/private/webapis/performance}/ReactNativeStartupTiming.js +0 -0
  456. /package/{Libraries/WebPerformance → src/private/webapis/performance}/__mocks__/NativePerformance.js +0 -0
  457. /package/{src → src-win}/Libraries/Components/Button/ButtonWin32.Props.ts +0 -0
  458. /package/{src → src-win}/Libraries/Components/EnterString.win32.tsx +0 -0
  459. /package/{src → src-win}/Libraries/Components/TextInput/Tests/TextInputTest.tsx +0 -0
  460. /package/{src → src-win}/Libraries/Components/Touchable/TouchableNativeFeedback.d.ts +0 -0
  461. /package/{src → src-win}/Libraries/Components/Touchable/TouchableWin32.Props.tsx +0 -0
  462. /package/{src → src-win}/Libraries/Components/Touchable/TouchableWin32.Types.tsx +0 -0
  463. /package/{src → src-win}/Libraries/Components/Touchable/TouchableWin32.tsx +0 -0
  464. /package/{src → src-win}/Libraries/Components/View/ViewWin32.d.ts +0 -0
  465. /package/{src → src-win}/Libraries/Image/ImageTypes.ts +0 -0
  466. /package/{src → src-win}/Libraries/Image/Tests/ImageWin32Test.tsx +0 -0
  467. /package/{src → src-win}/Libraries/Image/Tests/img/dpitest.png +0 -0
  468. /package/{src → src-win}/Libraries/Image/Tests/img/dpitest@1.5x.png +0 -0
  469. /package/{src → src-win}/Libraries/Image/Tests/img/dpitest@2x.png +0 -0
  470. /package/{src → src-win}/Libraries/Image/Tests/img/dpitest@3x.png +0 -0
  471. /package/{src → src-win}/Libraries/Image/Tests/img/en-us/dpitest.png +0 -0
  472. /package/{src → src-win}/Libraries/Image/Tests/img/en-us/dpitest@1.5x.png +0 -0
  473. /package/{src → src-win}/Libraries/Image/Tests/img/en-us/dpitest@3x.png +0 -0
  474. /package/{src → src-win}/Libraries/PersonaCoin/PersonaCoin.tsx +0 -0
  475. /package/{src → src-win}/Libraries/PersonaCoin/PersonaCoinPropTypes.ts +0 -0
  476. /package/{src → src-win}/Libraries/PersonaCoin/PersonaCoinTypes.ts +0 -0
  477. /package/{src → src-win}/Libraries/Utilities/FocusManager.win32.d.ts +0 -0
  478. /package/{src → src-win}/Libraries/__tests__/__snapshots__/ButtonWin32-test.js.snap +0 -0
@@ -61,13 +61,6 @@ export interface AccessibilityProps
61
61
  'aria-required'?: boolean | undefined; // Win32
62
62
  'aria-selected'?: boolean | undefined;
63
63
 
64
- /**
65
- * Represents the nativeID of the associated label text. When the assistive technology focuses on the component with this props, the text is read aloud.
66
- *
67
- * @platform android
68
- */
69
- 'aria-labelledby'?: string | undefined;
70
-
71
64
  /**
72
65
  * An accessibility hint helps users understand what will happen when they perform an action on the accessibility element when that result is not obvious from the accessibility label.
73
66
  */
@@ -102,7 +95,6 @@ export interface AccessibilityProps
102
95
  */
103
96
  'aria-hidden'?: boolean | undefined;
104
97
 
105
- 'aria-live'?: ('polite' | 'assertive' | 'off') | undefined;
106
98
  'aria-modal'?: boolean | undefined;
107
99
 
108
100
  /**
@@ -274,13 +266,41 @@ export type AccessibilityRole =
274
266
 
275
267
  export interface AccessibilityPropsAndroid {
276
268
  /**
277
- * Indicates to accessibility services whether the user should be notified when this view changes.
278
- * Works for Android API >= 19 only.
279
- * See http://developer.android.com/reference/android/view/View.html#attr_android:accessibilityLiveRegion for references.
269
+ * Identifies the element that labels the element it is applied to. When the assistive technology focuses on the component with this props,
270
+ * the text is read aloud. The value should should match the nativeID of the related element.
271
+ *
272
+ * @platform android
273
+ */
274
+ accessibilityLabelledBy?: string | string[] | undefined;
275
+
276
+ /**
277
+ * Identifies the element that labels the element it is applied to. When the assistive technology focuses on the component with this props,
278
+ * the text is read aloud. The value should should match the nativeID of the related element.
279
+ *
280
280
  * @platform android
281
281
  */
282
+ 'aria-labelledby'?: string | undefined;
283
+
284
+ /**
285
+ * Indicates to accessibility services whether the user should be notified
286
+ * when this view changes. Works for Android API >= 19 only.
287
+ *
288
+ * @platform android
289
+ *
290
+ * See https://reactnative.dev/docs/view#accessibilityliveregion
291
+ */
282
292
  accessibilityLiveRegion?: 'none' | 'polite' | 'assertive' | undefined;
283
293
 
294
+ /**
295
+ * Indicates to accessibility services whether the user should be notified
296
+ * when this view changes. Works for Android API >= 19 only.
297
+ *
298
+ * @platform android
299
+ *
300
+ * See https://reactnative.dev/docs/view#accessibilityliveregion
301
+ */
302
+ 'aria-live'?: ('polite' | 'assertive' | 'off') | undefined;
303
+
284
304
  /**
285
305
  * Controls how view is important for accessibility which is if it fires accessibility events
286
306
  * and if it is reported to accessibility services that query the screen.
@@ -291,6 +311,8 @@ export interface AccessibilityPropsAndroid {
291
311
  * 'yes' - The view is important for accessibility.
292
312
  * 'no' - The view is not important for accessibility.
293
313
  * 'no-hide-descendants' - The view is not important for accessibility, nor are any of its descendant views.
314
+ *
315
+ * @platform android
294
316
  */
295
317
  importantForAccessibility?:
296
318
  | 'auto'
@@ -298,12 +320,6 @@ export interface AccessibilityPropsAndroid {
298
320
  | 'no'
299
321
  | 'no-hide-descendants'
300
322
  | undefined;
301
-
302
- /**
303
- * A reference to another element `nativeID` used to build complex forms. The value of `accessibilityLabelledBy` should match the `nativeID` of the related element.
304
- * @platform android
305
- */
306
- accessibilityLabelledBy?: string | string[] | undefined;
307
323
  }
308
324
 
309
325
  export interface AccessibilityPropsIOS {
@@ -137,22 +137,6 @@ export interface ViewPropsAndroid {
137
137
  */
138
138
  collapsable?: boolean | undefined;
139
139
 
140
- /**
141
- * Whether this view needs to rendered offscreen and composited with an alpha in order to preserve 100% correct colors and blending behavior.
142
- * The default (false) falls back to drawing the component and its children
143
- * with an alpha applied to the paint used to draw each element instead of rendering the full component offscreen and compositing it back with an alpha value.
144
- * This default may be noticeable and undesired in the case where the View you are setting an opacity on
145
- * has multiple overlapping elements (e.g. multiple overlapping Views, or text and a background).
146
- *
147
- * Rendering offscreen to preserve correct alpha behavior is extremely expensive
148
- * and hard to debug for non-native developers, which is why it is not turned on by default.
149
- * If you do need to enable this property for an animation,
150
- * consider combining it with renderToHardwareTextureAndroid if the view contents are static (i.e. it doesn't need to be redrawn each frame).
151
- * If that property is enabled, this View will be rendered off-screen once,
152
- * saved in a hardware texture, and then composited onto the screen with an alpha each frame without having to switch rendering targets on the GPU.
153
- */
154
- needsOffscreenAlphaCompositing?: boolean | undefined;
155
-
156
140
  /**
157
141
  * Whether this view should render itself (and all of its children) into a single hardware texture on the GPU.
158
142
  *
@@ -166,6 +150,17 @@ export interface ViewPropsAndroid {
166
150
  * Whether this `View` should be focusable with a non-touch input device, eg. receive focus with a hardware keyboard.
167
151
  */
168
152
  focusable?: boolean | undefined;
153
+
154
+ /**
155
+ * Indicates whether this `View` should be focusable with a non-touch input device, eg. receive focus with a hardware keyboard.
156
+ * See https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex
157
+ * for more details.
158
+ *
159
+ * Supports the following values:
160
+ * - 0 (View is focusable)
161
+ * - -1 (View is not focusable)
162
+ */
163
+ // tabIndex?: 0 | -1 | undefined; [Windows fix to get react-native-picker working #12548]
169
164
  }
170
165
 
171
166
  // [Win32
@@ -316,13 +311,29 @@ export interface ViewProps
316
311
  * the Z-index of sibling views always takes precedence if a touch
317
312
  * hits two overlapping views.
318
313
  */
319
- hitSlop?: Insets | undefined;
314
+ hitSlop?: null | Insets | number | undefined;
320
315
 
321
316
  /**
322
317
  * Used to reference react managed views from native code.
323
318
  */
324
319
  id?: string | undefined;
325
320
 
321
+ /**
322
+ * Whether this view needs to rendered offscreen and composited with an alpha in order to preserve 100% correct colors and blending behavior.
323
+ * The default (false) falls back to drawing the component and its children
324
+ * with an alpha applied to the paint used to draw each element instead of rendering the full component offscreen and compositing it back with an alpha value.
325
+ * This default may be noticeable and undesired in the case where the View you are setting an opacity on
326
+ * has multiple overlapping elements (e.g. multiple overlapping Views, or text and a background).
327
+ *
328
+ * Rendering offscreen to preserve correct alpha behavior is extremely expensive
329
+ * and hard to debug for non-native developers, which is why it is not turned on by default.
330
+ * If you do need to enable this property for an animation,
331
+ * consider combining it with renderToHardwareTextureAndroid if the view contents are static (i.e. it doesn't need to be redrawn each frame).
332
+ * If that property is enabled, this View will be rendered off-screen once,
333
+ * saved in a hardware texture, and then composited onto the screen with an alpha each frame without having to switch rendering targets on the GPU.
334
+ */
335
+ needsOffscreenAlphaCompositing?: boolean | undefined;
336
+
326
337
  /**
327
338
  * Invoked on mount and layout changes with
328
339
  *
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
3
  *
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
@@ -0,0 +1,304 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @format
8
+ */
9
+
10
+ import type * as React from 'react';
11
+ import {Constructor} from '../../types/private/Utilities';
12
+ import {AccessibilityProps} from '../Components/View/ViewAccessibility';
13
+ import {NativeMethods} from '../../types/public/ReactNativeTypes';
14
+ import {ColorValue, StyleProp} from '../StyleSheet/StyleSheet';
15
+ import {TextStyle} from '../StyleSheet/StyleSheetTypes';
16
+ import {
17
+ GestureResponderEvent,
18
+ LayoutChangeEvent,
19
+ NativeSyntheticEvent,
20
+ TextLayoutEventData,
21
+ } from '../Types/CoreEventTypes';
22
+ import type {
23
+ IKeyboardEvent,
24
+ IHandledKeyboardEvent,
25
+ } from '../View/ViewPropTypes'; // Win32
26
+
27
+ export interface TextPropsIOS {
28
+ /**
29
+ * Specifies whether font should be scaled down automatically to fit given style constraints.
30
+ */
31
+ adjustsFontSizeToFit?: boolean | undefined;
32
+
33
+ /**
34
+ * The Dynamic Type scale ramp to apply to this element on iOS.
35
+ */
36
+ dynamicTypeRamp?:
37
+ | 'caption2'
38
+ | 'caption1'
39
+ | 'footnote'
40
+ | 'subheadline'
41
+ | 'callout'
42
+ | 'body'
43
+ | 'headline'
44
+ | 'title3'
45
+ | 'title2'
46
+ | 'title1'
47
+ | 'largeTitle'
48
+ | undefined;
49
+
50
+ /**
51
+ * When `true`, no visual change is made when text is pressed down. By
52
+ * default, a gray oval highlights the text on press down.
53
+ */
54
+ suppressHighlighting?: boolean | undefined;
55
+
56
+ /**
57
+ * Set line break strategy on iOS.
58
+ */
59
+ lineBreakStrategyIOS?:
60
+ | 'none'
61
+ | 'standard'
62
+ | 'hangul-word'
63
+ | 'push-out'
64
+ | undefined;
65
+ }
66
+
67
+ export interface TextPropsAndroid {
68
+ /**
69
+ * Specifies the disabled state of the text view for testing purposes.
70
+ */
71
+ disabled?: boolean | undefined;
72
+
73
+ /**
74
+ * Lets the user select text, to use the native copy and paste functionality.
75
+ */
76
+ selectable?: boolean | undefined;
77
+
78
+ /**
79
+ * The highlight color of the text.
80
+ */
81
+ selectionColor?: ColorValue | undefined;
82
+
83
+ /**
84
+ * Set text break strategy on Android API Level 23+
85
+ * default is `highQuality`.
86
+ */
87
+ textBreakStrategy?: 'simple' | 'highQuality' | 'balanced' | undefined;
88
+
89
+ /**
90
+ * Determines the types of data converted to clickable URLs in the text element.
91
+ * By default no data types are detected.
92
+ */
93
+ dataDetectorType?:
94
+ | null
95
+ | 'phoneNumber'
96
+ | 'link'
97
+ | 'email'
98
+ | 'none'
99
+ | 'all'
100
+ | undefined;
101
+
102
+ /**
103
+ * Hyphenation strategy
104
+ */
105
+ android_hyphenationFrequency?: 'normal' | 'none' | 'full' | undefined;
106
+ }
107
+
108
+ /**
109
+ * Role-based text style names.
110
+ */
111
+ export type TextWin32TextStyle =
112
+ | 'None'
113
+ | 'SmallStandard'
114
+ | 'SmallSecondary'
115
+ | 'MediumStandard'
116
+ | 'MediumSecondary'
117
+ | 'MediumApp'
118
+ | 'MediumBold'
119
+ | 'MediumBoldApp'
120
+ | 'LargeStandard'
121
+ | 'LargePlusStandard'
122
+ | 'ExtraLargeStandard'
123
+ | 'HugeStandard';
124
+
125
+ export interface TextPropsWin32 {
126
+ onKeyDown?: (args: IKeyboardEvent) => void;
127
+ onKeyDownCapture?: (args: IKeyboardEvent) => void;
128
+ onKeyUp?: (args: IKeyboardEvent) => void;
129
+ onKeyUpCapture?: (args: IKeyboardEvent) => void;
130
+
131
+ keyDownEvents?: IHandledKeyboardEvent[];
132
+ keyUpEvents?: IHandledKeyboardEvent[];
133
+
134
+ /** Enables a focusable label with copyability but without character selectability (property:selectable) */
135
+ focusable?: boolean;
136
+
137
+ /**
138
+ * The onBlur event occurs when an element loses focus. The opposite of onBlur is onFocus. Note that in React
139
+ * Native, unlike in the web, the onBlur event bubbles (similar to onFocusOut in the web).
140
+ *
141
+ * `ev.target === ev.currentTarget` when the focus is being lost from this component.
142
+ * `ev.target !== ev.currentTarget` when the focus is being lost from a descendant.
143
+ */
144
+ onBlur?: (ev: NativeSyntheticEvent<{}>) => void;
145
+ /**
146
+ * The onBlur event occurs when an element loses focus. The opposite of onBlur is onFocus. Note that in React
147
+ * Native, unlike in the web, the onBlur event bubbles (similar to onFocusOut in the web).
148
+ *
149
+ * `ev.target === ev.currentTarget` when the focus is being lost from this component.
150
+ * `ev.target !== ev.currentTarget` when the focus is being lost from a descendant.
151
+ */
152
+ onBlurCapture?: (ev: NativeSyntheticEvent<{}>) => void;
153
+ /**
154
+ * The onFocus event occurs when an element gets focus. The opposite of onFocus is onBlur. Note that in React
155
+ * Native, unlike in the web, the onFocus event bubbles (similar to onFocusIn in the web).
156
+ *
157
+ * `ev.target === ev.currentTarget` when the focus is being lost from this component.
158
+ * `ev.target !== ev.currentTarget` when the focus is being lost from a descendant.
159
+ */
160
+ onFocus?: (ev: NativeSyntheticEvent<{}>) => void;
161
+ /**
162
+ * The onFocus event occurs when an element gets focus. The opposite of onFocus is onBlur. Note that in React
163
+ * Native, unlike in the web, the onFocus event bubbles (similar to onFocusIn in the web).
164
+ *
165
+ * `ev.target === ev.currentTarget` when the focus is being lost from this component.
166
+ * `ev.target !== ev.currentTarget` when the focus is being lost from a descendant.
167
+ */
168
+ onFocusCapture?: (ev: NativeSyntheticEvent<{}>) => void;
169
+
170
+ /**
171
+ * Role-based styling of the text control. The styles applied include
172
+ * font face, size, weight and color. These styles take precedence over
173
+ * the `style` property.
174
+ *
175
+ * @remarks
176
+ * The default value is `MediumStandard`.
177
+ *
178
+ * When set to `None`, role-based styling is disabled.
179
+ *
180
+ * @deprecated Use `style` instead.
181
+ */
182
+ textStyle?: TextWin32TextStyle;
183
+
184
+ /** Tooltip displayed on mouse hover of this element */
185
+ tooltip?: string;
186
+ }
187
+
188
+ // https://reactnative.dev/docs/text#props
189
+ export interface TextProps
190
+ extends TextPropsIOS,
191
+ TextPropsAndroid,
192
+ TextPropsWin32, // Win32
193
+ AccessibilityProps {
194
+ /**
195
+ * Specifies whether fonts should scale to respect Text Size accessibility settings.
196
+ * The default is `true`.
197
+ */
198
+ allowFontScaling?: boolean | undefined;
199
+
200
+ children?: React.ReactNode | undefined;
201
+
202
+ /**
203
+ * This can be one of the following values:
204
+ *
205
+ * - `head` - The line is displayed so that the end fits in the container and the missing text
206
+ * at the beginning of the line is indicated by an ellipsis glyph. e.g., "...wxyz"
207
+ * - `middle` - The line is displayed so that the beginning and end fit in the container and the
208
+ * missing text in the middle is indicated by an ellipsis glyph. "ab...yz"
209
+ * - `tail` - The line is displayed so that the beginning fits in the container and the
210
+ * missing text at the end of the line is indicated by an ellipsis glyph. e.g., "abcd..."
211
+ * - `clip` - Lines are not drawn past the edge of the text container.
212
+ *
213
+ * The default is `tail`.
214
+ *
215
+ * `numberOfLines` must be set in conjunction with this prop.
216
+ *
217
+ * > `clip` is working only for iOS
218
+ */
219
+ ellipsizeMode?: 'head' | 'middle' | 'tail' | 'clip' | undefined;
220
+
221
+ /**
222
+ * Used to reference react managed views from native code.
223
+ */
224
+ id?: string | undefined;
225
+
226
+ /**
227
+ * Line Break mode. Works only with numberOfLines.
228
+ * clip is working only for iOS
229
+ */
230
+ lineBreakMode?: 'head' | 'middle' | 'tail' | 'clip' | undefined;
231
+
232
+ /**
233
+ * Used to truncate the text with an ellipsis after computing the text
234
+ * layout, including line wrapping, such that the total number of lines
235
+ * does not exceed this number.
236
+ *
237
+ * This prop is commonly used with `ellipsizeMode`.
238
+ */
239
+ numberOfLines?: number | undefined;
240
+
241
+ /**
242
+ * Invoked on mount and layout changes with
243
+ *
244
+ * {nativeEvent: { layout: {x, y, width, height}}}.
245
+ */
246
+ onLayout?: ((event: LayoutChangeEvent) => void) | undefined;
247
+
248
+ /**
249
+ * Invoked on Text layout
250
+ */
251
+ onTextLayout?:
252
+ | ((event: NativeSyntheticEvent<TextLayoutEventData>) => void)
253
+ | undefined;
254
+
255
+ /**
256
+ * This function is called on press.
257
+ * Text intrinsically supports press handling with a default highlight state (which can be disabled with suppressHighlighting).
258
+ */
259
+ onPress?: ((event: GestureResponderEvent) => void) | undefined;
260
+
261
+ onPressIn?: ((event: GestureResponderEvent) => void) | undefined;
262
+ onPressOut?: ((event: GestureResponderEvent) => void) | undefined;
263
+
264
+ /**
265
+ * This function is called on long press.
266
+ * e.g., `onLongPress={this.increaseSize}>``
267
+ */
268
+ onLongPress?: ((event: GestureResponderEvent) => void) | undefined;
269
+
270
+ /**
271
+ * @see https://reactnative.dev/docs/text#style
272
+ */
273
+ style?: StyleProp<TextStyle> | undefined;
274
+
275
+ /**
276
+ * Used to locate this view in end-to-end tests.
277
+ */
278
+ testID?: string | undefined;
279
+
280
+ /**
281
+ * Used to reference react managed views from native code.
282
+ */
283
+ nativeID?: string | undefined;
284
+
285
+ /**
286
+ * Specifies largest possible scale a font can reach when allowFontScaling is enabled. Possible values:
287
+ * - null/undefined (default): inherit from the parent node or the global default (0)
288
+ * - 0: no max, ignore parent/global default
289
+ * - >= 1: sets the maxFontSizeMultiplier of this node to this value
290
+ */
291
+ maxFontSizeMultiplier?: number | null | undefined;
292
+
293
+ /**
294
+ * Specifies smallest possible scale a font can reach when adjustsFontSizeToFit is enabled. (values 0.01-1.0).
295
+ */
296
+ minimumFontScale?: number | undefined;
297
+ }
298
+
299
+ /**
300
+ * A React component for displaying text which supports nesting, styling, and touch handling.
301
+ */
302
+ declare class TextComponent extends React.Component<TextProps> {}
303
+ declare const TextBase: Constructor<NativeMethods> & typeof TextComponent;
304
+ export class Text extends TextBase {}
@@ -11,10 +11,9 @@ export { AccessibilityPropsWin32 } from '@office-iss/react-native-win32/Librarie
11
11
  export type IViewWin32Props = IViewWin32PropsOnly & AccessibilityPropsWin32;
12
12
  export {ViewWin32} from './Components/View/ViewWin32';
13
13
  export {IKeyboardEvent, IHandledKeyboardEvent, EventPhase} from './Components/View/ViewPropTypes';
14
- import {ITextWin32Props as ITextWin32PropsOnly} from './Components/Text/TextWin32.Props';
14
+ import {TextPropsWin32 as ITextWin32PropsOnly} from './Components/Text/Text';
15
15
  export type ITextWin32Props = ITextWin32PropsOnly & AccessibilityPropsWin32;
16
- export {TextWin32TextStyle } from './Components/Text/TextWin32.Props';
17
- export {TextWin32} from './Components/Text/TextWin32';
16
+ export {TextWin32TextStyle, Text as TextWin32 } from './Components/Text/Text';
18
17
  export {IButtonWin32Props, IButtonWin32Style} from './Components/Button/ButtonWin32.Props';
19
18
  export {ButtonWin32} from './Components/Button/ButtonWin32';
20
19
  export {GradientColorStop, GradientColorValueWin32, ColorGradientWin32} from './StyleSheet/PlatformColorValueTypesWin32';
@@ -460,6 +460,7 @@ interface WebSocket extends EventTarget {
460
460
  readonly readyState: number;
461
461
  send(data: string | ArrayBuffer | ArrayBufferView | Blob): void;
462
462
  close(code?: number, reason?: string): void;
463
+ ping(): void;
463
464
  onopen: (() => void) | null;
464
465
  onmessage: ((event: WebSocketMessageEvent) => void) | null;
465
466
  onerror: ((event: WebSocketErrorEvent) => void) | null;