@office-iss/react-native-win32 0.0.0-canary.270 → 0.0.0-canary.272

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 (117) hide show
  1. package/.flowconfig +1 -1
  2. package/CHANGELOG.json +31 -1
  3. package/CHANGELOG.md +20 -4
  4. package/Libraries/Animated/animations/Animation.js +63 -24
  5. package/Libraries/Animated/animations/DecayAnimation.js +26 -38
  6. package/Libraries/Animated/animations/SpringAnimation.js +33 -39
  7. package/Libraries/Animated/animations/TimingAnimation.js +34 -42
  8. package/Libraries/Animated/createAnimatedComponent.js +46 -32
  9. package/Libraries/Animated/nodes/AnimatedProps.js +16 -10
  10. package/Libraries/Animated/nodes/AnimatedStyle.js +4 -0
  11. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +19 -3
  12. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +61 -3
  13. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js +61 -3
  14. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +4 -4
  15. package/Libraries/Components/Button.js +9 -4
  16. package/Libraries/Components/Button.win32.js +12 -4
  17. package/Libraries/Components/Pressable/Pressable.js +4 -4
  18. package/Libraries/Components/Pressable/Pressable.win32.js +4 -4
  19. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +9 -6
  20. package/Libraries/Components/SafeAreaView/SafeAreaView.js +4 -4
  21. package/Libraries/Components/SafeAreaView/SafeAreaView.win32.js +4 -4
  22. package/Libraries/Components/ScrollView/ScrollView.js +10 -10
  23. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +4 -4
  24. package/Libraries/Components/Switch/Switch.js +8 -6
  25. package/Libraries/Components/TextInput/TextInput.d.ts +4 -4
  26. package/Libraries/Components/TextInput/TextInput.flow.js +7 -10
  27. package/Libraries/Components/TextInput/TextInput.js +11 -11
  28. package/Libraries/Components/TextInput/TextInput.win32.js +11 -11
  29. package/Libraries/Components/TextInput/TextInputState.js +11 -13
  30. package/Libraries/Components/TextInput/TextInputState.win32.js +13 -16
  31. package/Libraries/Components/Touchable/TouchableBounce.js +4 -1
  32. package/Libraries/Components/Touchable/TouchableHighlight.js +4 -4
  33. package/Libraries/Components/Touchable/TouchableOpacity.js +4 -4
  34. package/Libraries/Components/View/ReactNativeStyleAttributes.js +1 -0
  35. package/Libraries/Components/View/View.js +4 -4
  36. package/Libraries/Components/View/View.win32.js +4 -4
  37. package/Libraries/Components/View/ViewNativeComponent.js +3 -10
  38. package/Libraries/Core/ExceptionsManager.js +3 -2
  39. package/Libraries/Core/ReactNativeVersion.js +1 -1
  40. package/Libraries/Core/setUpBatchedBridge.js +1 -10
  41. package/Libraries/Core/setUpReactDevTools.js +3 -3
  42. package/Libraries/Core/setUpSegmentFetcher.js +1 -0
  43. package/Libraries/Core/setUpTimers.js +8 -8
  44. package/Libraries/Debugging/DebuggingOverlay.js +4 -5
  45. package/Libraries/Image/ImageBackground.js +2 -5
  46. package/Libraries/Image/ImageProps.js +5 -5
  47. package/Libraries/Image/ImageTypes.flow.js +11 -9
  48. package/Libraries/Image/ImageViewNativeComponent.js +2 -2
  49. package/Libraries/Inspector/ReactDevToolsOverlay.js +0 -1
  50. package/Libraries/Inspector/getInspectorDataForViewAtPoint.js +3 -5
  51. package/Libraries/JSInspector/NetworkAgent.js +1 -1
  52. package/Libraries/Lists/FlatList.d.ts +1 -2
  53. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +2 -2
  54. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +1 -1
  55. package/Libraries/LogBox/Data/LogBoxData.js +1 -1
  56. package/Libraries/LogBox/LogBox.js +18 -5
  57. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +1 -1
  58. package/Libraries/LogBox/UI/LogBoxMessage.js +2 -2
  59. package/Libraries/NativeComponent/BaseViewConfig.android.js +1 -0
  60. package/Libraries/NativeComponent/BaseViewConfig.ios.js +1 -0
  61. package/Libraries/NativeComponent/BaseViewConfig.win32.js +1 -0
  62. package/Libraries/Network/XMLHttpRequest.js +26 -1
  63. package/Libraries/Pressability/HoverState.js +2 -0
  64. package/Libraries/Pressability/HoverState.win32.js +2 -0
  65. package/Libraries/Pressability/Pressability.js +2 -3
  66. package/Libraries/Pressability/Pressability.win32.js +2 -3
  67. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +2 -3
  68. package/Libraries/ReactNative/RendererImplementation.js +4 -3
  69. package/Libraries/Renderer/shims/ReactNativeTypes.js +13 -18
  70. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +1 -0
  71. package/Libraries/StyleSheet/StyleSheetTypes.js +13 -0
  72. package/Libraries/StyleSheet/processTransform.js +3 -34
  73. package/Libraries/Text/Text.js +248 -249
  74. package/Libraries/Text/Text.win32.js +282 -295
  75. package/Libraries/Types/CoreEventTypes.d.ts +3 -10
  76. package/Libraries/Types/CoreEventTypes.js +4 -6
  77. package/Libraries/Types/CoreEventTypes.win32.js +4 -6
  78. package/Libraries/Utilities/Platform.flow.js +2 -2
  79. package/Libraries/Utilities/Platform.flow.win32.js +3 -2
  80. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +5 -4
  81. package/Libraries/promiseRejectionTrackingOptions.js +1 -1
  82. package/index.js +5 -2
  83. package/index.win32.js +5 -2
  84. package/jest/setup.js +30 -0
  85. package/overrides.json +21 -21
  86. package/package.json +13 -13
  87. package/src/private/animated/NativeAnimatedHelper.js +2 -4
  88. package/src/private/animated/NativeAnimatedHelper.win32.js +2 -3
  89. package/src/private/components/HScrollViewNativeComponents.js +4 -5
  90. package/src/private/components/VScrollViewNativeComponents.js +4 -5
  91. package/src/private/{fusebox → debugging}/setUpFuseboxReactDevToolsDispatcher.js +6 -0
  92. package/src/private/featureflags/ReactNativeFeatureFlags.js +13 -22
  93. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +2 -5
  94. package/src/private/fusebox/specs/NativeReactDevToolsRuntimeSettingsModule.js +34 -0
  95. package/src/private/specs/modules/NativeAccessibilityInfo.js +3 -0
  96. package/src/private/specs/modules/NativeAccessibilityInfoWin32.js +3 -0
  97. package/src/private/specs/modules/NativeAccessibilityManager.js +4 -0
  98. package/src/private/specs/modules/NativeAppearance.js +4 -10
  99. package/src/private/webapis/dom/nodes/ReactNativeElement.js +2 -3
  100. package/src/private/webapis/performance/EventTiming.js +13 -8
  101. package/src/private/webapis/performance/Performance.js +30 -40
  102. package/src/private/webapis/performance/PerformanceEntry.js +2 -5
  103. package/src/private/webapis/performance/PerformanceObserver.js +20 -32
  104. package/src/private/webapis/performance/RawPerformanceEntry.js +1 -1
  105. package/src/private/webapis/performance/UserTiming.js +6 -2
  106. package/src/private/webapis/performance/Utilities.js +0 -7
  107. package/src/private/webapis/performance/specs/NativePerformance.js +53 -0
  108. package/src/private/webapis/performance/specs/__mocks__/NativePerformanceMock.js +247 -0
  109. package/src-win/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +19 -3
  110. package/types/public/ReactNativeTypes.d.ts +4 -4
  111. package/src/private/webapis/performance/specs/NativePerformanceObserver.js +0 -69
  112. package/src/private/webapis/performance/specs/__mocks__/NativePerformance.js +0 -69
  113. package/src/private/webapis/performance/specs/__mocks__/NativePerformanceObserver.js +0 -154
  114. /package/src/private/{fusebox → debugging}/FuseboxSessionObserver.js +0 -0
  115. /package/src/private/{reactdevtools → debugging}/ReactDevToolsSettingsManager.android.js +0 -0
  116. /package/src/private/{reactdevtools → debugging}/ReactDevToolsSettingsManager.ios.js +0 -0
  117. /package/src/private/{reactdevtools → debugging}/ReactDevToolsSettingsManager.win32.js +0 -0
@@ -8,7 +8,7 @@
8
8
  */
9
9
 
10
10
  import type * as React from 'react';
11
- import {HostComponent} from '../../types/public/ReactNativeTypes';
11
+ import {HostInstance} from '../../types/public/ReactNativeTypes';
12
12
 
13
13
  export interface LayoutRectangle {
14
14
  x: number;
@@ -41,11 +41,7 @@ export interface TextLayoutEventData extends TargetedEvent {
41
41
 
42
42
  // Similar to React.SyntheticEvent except for nativeEvent
43
43
  export interface NativeSyntheticEvent<T>
44
- extends React.BaseSyntheticEvent<
45
- T,
46
- React.ElementRef<HostComponent<unknown>>,
47
- React.ElementRef<HostComponent<unknown>>
48
- > {}
44
+ extends React.BaseSyntheticEvent<T, HostInstance, HostInstance> {}
49
45
 
50
46
  export interface NativeTouchEvent {
51
47
  /**
@@ -173,10 +169,7 @@ export interface NativeMouseEvent extends NativeUIEvent {
173
169
  /**
174
170
  * The secondary target for the event, if there is one.
175
171
  */
176
- readonly relatedTarget:
177
- | null
178
- | number
179
- | React.ElementRef<HostComponent<unknown>>;
172
+ readonly relatedTarget: null | number | HostInstance;
180
173
  // offset is proposed: https://drafts.csswg.org/cssom-view/#extensions-to-the-mouseevent-interface
181
174
  /**
182
175
  * The X coordinate of the mouse pointer between that event and the padding edge of the target node
@@ -8,14 +8,12 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {HostComponent} from '../Renderer/shims/ReactNativeTypes';
12
-
13
- import * as React from 'react';
11
+ import type {HostInstance} from '../Renderer/shims/ReactNativeTypes';
14
12
 
15
13
  export type SyntheticEvent<+T> = $ReadOnly<{|
16
14
  bubbles: ?boolean,
17
15
  cancelable: ?boolean,
18
- currentTarget: number | React.ElementRef<HostComponent<mixed>>,
16
+ currentTarget: number | HostInstance,
19
17
  defaultPrevented: ?boolean,
20
18
  dispatchConfig: $ReadOnly<{|
21
19
  registrationName: string,
@@ -28,7 +26,7 @@ export type SyntheticEvent<+T> = $ReadOnly<{|
28
26
  isTrusted: ?boolean,
29
27
  nativeEvent: T,
30
28
  persist: () => void,
31
- target: ?number | React.ElementRef<HostComponent<mixed>>,
29
+ target: ?number | HostInstance,
32
30
  timeStamp: number,
33
31
  type: ?string,
34
32
  |}>;
@@ -157,7 +155,7 @@ export interface NativeMouseEvent extends NativeUIEvent {
157
155
  /**
158
156
  * The secondary target for the event, if there is one.
159
157
  */
160
- +relatedTarget: null | number | React.ElementRef<HostComponent<mixed>>;
158
+ +relatedTarget: null | number | HostInstance;
161
159
  // offset is proposed: https://drafts.csswg.org/cssom-view/#extensions-to-the-mouseevent-interface
162
160
  /**
163
161
  * The X coordinate of the mouse pointer between that event and the padding edge of the target node
@@ -8,14 +8,12 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {HostComponent} from '../Renderer/shims/ReactNativeTypes';
12
-
13
- import * as React from 'react';
11
+ import type {HostInstance} from '../Renderer/shims/ReactNativeTypes';
14
12
 
15
13
  export type SyntheticEvent<+T> = $ReadOnly<{|
16
14
  bubbles: ?boolean,
17
15
  cancelable: ?boolean,
18
- currentTarget: number | React.ElementRef<HostComponent<mixed>>,
16
+ currentTarget: number | HostInstance,
19
17
  defaultPrevented: ?boolean,
20
18
  dispatchConfig: $ReadOnly<{|
21
19
  registrationName: string,
@@ -28,7 +26,7 @@ export type SyntheticEvent<+T> = $ReadOnly<{|
28
26
  isTrusted: ?boolean,
29
27
  nativeEvent: T,
30
28
  persist: () => void,
31
- target: ?number | React.ElementRef<HostComponent<mixed>>,
29
+ target: ?number | HostInstance,
32
30
  timeStamp: number,
33
31
  type: ?string,
34
32
  |}>;
@@ -157,7 +155,7 @@ export interface NativeMouseEvent extends NativeUIEvent {
157
155
  /**
158
156
  * The secondary target for the event, if there is one.
159
157
  */
160
- +relatedTarget: null | number | React.ElementRef<HostComponent<mixed>>;
158
+ +relatedTarget: null | number | HostInstance;
161
159
  // offset is proposed: https://drafts.csswg.org/cssom-view/#extensions-to-the-mouseevent-interface
162
160
  /**
163
161
  * The X coordinate of the mouse pointer between that event and the padding edge of the target node
@@ -18,7 +18,7 @@ export type PlatformSelectSpec<T> = {
18
18
 
19
19
  type IOSPlatform = {
20
20
  __constants: null,
21
- OS: $TEMPORARY$string<'ios'>,
21
+ OS: 'ios',
22
22
  // $FlowFixMe[unsafe-getters-setters]
23
23
  get Version(): string,
24
24
  // $FlowFixMe[unsafe-getters-setters]
@@ -54,7 +54,7 @@ type IOSPlatform = {
54
54
 
55
55
  type AndroidPlatform = {
56
56
  __constants: null,
57
- OS: $TEMPORARY$string<'android'>,
57
+ OS: 'android',
58
58
  // $FlowFixMe[unsafe-getters-setters]
59
59
  get Version(): number,
60
60
  // $FlowFixMe[unsafe-getters-setters]
@@ -19,7 +19,7 @@ export type PlatformSelectSpec<T> = {
19
19
 
20
20
  type IOSPlatform = {
21
21
  __constants: null,
22
- OS: $TEMPORARY$string<'ios'>,
22
+ OS: 'ios',
23
23
  // $FlowFixMe[unsafe-getters-setters]
24
24
  get Version(): number,
25
25
  // $FlowFixMe[unsafe-getters-setters]
@@ -55,7 +55,7 @@ type IOSPlatform = {
55
55
 
56
56
  type AndroidPlatform = {
57
57
  __constants: null,
58
- OS: $TEMPORARY$string<'android'>,
58
+ OS: 'android',
59
59
  // $FlowFixMe[unsafe-getters-setters]
60
60
  get Version(): number,
61
61
  // $FlowFixMe[unsafe-getters-setters]
@@ -91,6 +91,7 @@ type AndroidPlatform = {
91
91
 
92
92
  type Win32Platform = {
93
93
  __constants: null,
94
+ // $FlowFixMe[cannot-resolve-name]
94
95
  OS: $TEMPORARY$string<'win32'>,
95
96
  // $FlowFixMe[unsafe-getters-setters]
96
97
  get Version(): number,
@@ -8,13 +8,14 @@
8
8
  * @format
9
9
  */
10
10
 
11
- import type {HostComponent} from '../Renderer/shims/ReactNativeTypes';
11
+ import type {
12
+ HostComponent,
13
+ HostInstance,
14
+ } from '../Renderer/shims/ReactNativeTypes';
12
15
 
13
16
  import * as React from 'react';
14
17
 
15
- function takesHostComponentInstance(
16
- instance: React.ElementRef<HostComponent<mixed>> | null,
17
- ): void {}
18
+ function takesHostComponentInstance(instance: HostInstance | null): void {}
18
19
 
19
20
  const MyHostComponent = (('Host': any): HostComponent<mixed>);
20
21
 
@@ -36,7 +36,7 @@ let rejectionTrackingOptions: $NonMaybeType<Parameters<enable>[0]> = {
36
36
  }
37
37
  // It could although this object is not a standard error, it still has stack information to unwind
38
38
  // $FlowFixMe ignore types just check if stack is there
39
- if (rejection.stack && typeof rejection.stack === 'string') {
39
+ if (rejection?.stack && typeof rejection.stack === 'string') {
40
40
  stack = rejection.stack;
41
41
  }
42
42
  }
package/index.js CHANGED
@@ -71,7 +71,10 @@ import typeof I18nManager from './Libraries/ReactNative/I18nManager';
71
71
  import typeof {RootTagContext} from './Libraries/ReactNative/RootTag';
72
72
  import typeof UIManager from './Libraries/ReactNative/UIManager';
73
73
  import typeof ReactNative from './Libraries/Renderer/shims/ReactNative';
74
- import type {HostComponent as _HostComponentInternal} from './Libraries/Renderer/shims/ReactNativeTypes';
74
+ import type {
75
+ HostComponent,
76
+ HostInstance,
77
+ } from './Libraries/Renderer/shims/ReactNativeTypes';
75
78
  import typeof Settings from './Libraries/Settings/Settings';
76
79
  import typeof Share from './Libraries/Share/Share';
77
80
  import typeof {PlatformColor} from './Libraries/StyleSheet/PlatformColorValueTypes';
@@ -98,7 +101,7 @@ import typeof YellowBox from './Libraries/YellowBox/YellowBoxDeprecated';
98
101
  const warnOnce = require('./Libraries/Utilities/warnOnce');
99
102
  const invariant = require('invariant');
100
103
 
101
- export type HostComponent<T> = _HostComponentInternal<T>;
104
+ export type {HostComponent, HostInstance};
102
105
 
103
106
  module.exports = {
104
107
  get registerCallableModule(): RegisterCallableModule {
package/index.win32.js CHANGED
@@ -71,7 +71,10 @@ import typeof I18nManager from './Libraries/ReactNative/I18nManager';
71
71
  import typeof {RootTagContext} from './Libraries/ReactNative/RootTag';
72
72
  import typeof UIManager from './Libraries/ReactNative/UIManager';
73
73
  import typeof ReactNative from './Libraries/Renderer/shims/ReactNative';
74
- import type {HostComponent as _HostComponentInternal} from './Libraries/Renderer/shims/ReactNativeTypes';
74
+ import type {
75
+ HostComponent,
76
+ HostInstance,
77
+ } from './Libraries/Renderer/shims/ReactNativeTypes';
75
78
  import typeof Settings from './Libraries/Settings/Settings';
76
79
  import typeof Share from './Libraries/Share/Share';
77
80
  import typeof {PlatformColor} from './Libraries/StyleSheet/PlatformColorValueTypes';
@@ -101,7 +104,7 @@ const invariant = require('invariant');
101
104
  // Windows types
102
105
  import typeof {ColorGradientWin32} from './Libraries/StyleSheet/PlatformColorValueTypesWin32';
103
106
 
104
- export type HostComponent<T> = _HostComponentInternal<T>;
107
+ export type {HostComponent, HostInstance};
105
108
 
106
109
  module.exports = {
107
110
  // Components
package/jest/setup.js CHANGED
@@ -151,6 +151,8 @@ jest
151
151
  isGrayscaleEnabled: jest.fn(() => Promise.resolve(false)),
152
152
  isInvertColorsEnabled: jest.fn(() => Promise.resolve(false)),
153
153
  isReduceMotionEnabled: jest.fn(() => Promise.resolve(false)),
154
+ isHighTextContrastEnabled: jest.fn(() => Promise.resolve(false)),
155
+ isDarkerSystemColorsEnabled: jest.fn(() => Promise.resolve(false)),
154
156
  prefersCrossFadeTransitions: jest.fn(() => Promise.resolve(false)),
155
157
  isReduceTransparencyEnabled: jest.fn(() => Promise.resolve(false)),
156
158
  isScreenReaderEnabled: jest.fn(() => Promise.resolve(false)),
@@ -279,6 +281,34 @@ jest
279
281
  addListener: jest.fn(),
280
282
  removeListeners: jest.fn(),
281
283
  },
284
+ NativeAnimatedModule: {
285
+ createAnimatedNode: jest.fn(),
286
+ updateAnimatedNodeConfig: jest.fn(),
287
+ getValue: jest.fn(),
288
+ startListeningToAnimatedNodeValue: jest.fn(),
289
+ stopListeningToAnimatedNodeValue: jest.fn(),
290
+ connectAnimatedNodes: jest.fn(),
291
+ disconnectAnimatedNodes: jest.fn(),
292
+ startAnimatingNode: jest.fn(
293
+ (animationId, nodeTag, config, endCallback) => {
294
+ setTimeout(() => endCallback({finished: true}), 16);
295
+ },
296
+ ),
297
+ stopAnimation: jest.fn(),
298
+ setAnimatedNodeValue: jest.fn(),
299
+ setAnimatedNodeOffset: jest.fn(),
300
+ flattenAnimatedNodeOffset: jest.fn(),
301
+ extractAnimatedNodeOffset: jest.fn(),
302
+ connectAnimatedNodeToView: jest.fn(),
303
+ disconnectAnimatedNodeFromView: jest.fn(),
304
+ restoreDefaultValues: jest.fn(),
305
+ dropAnimatedNode: jest.fn(),
306
+ addAnimatedEventToView: jest.fn(),
307
+ removeAnimatedEventFromView: jest.fn(),
308
+ addListener: jest.fn(),
309
+ removeListener: jest.fn(),
310
+ removeListeners: jest.fn(),
311
+ },
282
312
  Networking: {
283
313
  sendRequest: jest.fn(),
284
314
  abortRequest: jest.fn(),
package/overrides.json CHANGED
@@ -7,19 +7,19 @@
7
7
  "**/__snapshots__/**",
8
8
  "src-win/rntypes/**"
9
9
  ],
10
- "baseVersion": "0.77.0-nightly-20241001-223e98cc4",
10
+ "baseVersion": "0.77.0-nightly-20241015-3485e9ed8",
11
11
  "overrides": [
12
12
  {
13
13
  "type": "derived",
14
14
  "file": ".flowconfig",
15
15
  "baseFile": ".flowconfig",
16
- "baseHash": "0ef50a705dc56608e4a8bd11d3b0d3daedfc0012"
16
+ "baseHash": "fa800520804222b3f944f7ffbb6a82f5ad89dc76"
17
17
  },
18
18
  {
19
19
  "type": "derived",
20
20
  "file": "src-win/index.win32.js",
21
21
  "baseFile": "packages/react-native/index.js",
22
- "baseHash": "70b04f859a60e3752e6937b9fc294ffee30e6366"
22
+ "baseHash": "ad455e241e35ebd718a6304f3de9d04c1f9e4f2b"
23
23
  },
24
24
  {
25
25
  "type": "platform",
@@ -35,13 +35,13 @@
35
35
  "type": "derived",
36
36
  "file": "src-win/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts",
37
37
  "baseFile": "packages/react-native/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts",
38
- "baseHash": "f55fda723b8dc0f9836f2fa4a4a766ed45c71c00"
38
+ "baseHash": "30a3c7351c6a466e2ed95e9b416907ac677d71ca"
39
39
  },
40
40
  {
41
41
  "type": "derived",
42
42
  "file": "src-win/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js",
43
43
  "baseFile": "packages/react-native/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js",
44
- "baseHash": "163927cc271b53109f06eaf5fc6d30a9af8cb27e"
44
+ "baseHash": "af6ef360caf09cee7b488a3fa7439f749216c51c"
45
45
  },
46
46
  {
47
47
  "type": "copy",
@@ -60,7 +60,7 @@
60
60
  "type": "derived",
61
61
  "file": "src-win/Libraries/Components/Button.win32.js",
62
62
  "baseFile": "packages/react-native/Libraries/Components/Button.js",
63
- "baseHash": "b59e0b119a7a930e835ff3eefa780e757a97b31f"
63
+ "baseHash": "e1464525e6950f773370855ccbe60217ef638613"
64
64
  },
65
65
  {
66
66
  "type": "platform",
@@ -85,7 +85,7 @@
85
85
  "type": "patch",
86
86
  "file": "src-win/Libraries/Components/Pressable/Pressable.win32.js",
87
87
  "baseFile": "packages/react-native/Libraries/Components/Pressable/Pressable.js",
88
- "baseHash": "77ec40a2f6a75280b170fe839813d8712c90fbfb",
88
+ "baseHash": "5f8baef36e1cbba73ff2c21b0ccbf310d125b334",
89
89
  "issue": 6240
90
90
  },
91
91
  {
@@ -99,7 +99,7 @@
99
99
  "type": "copy",
100
100
  "file": "src-win/Libraries/Components/SafeAreaView/SafeAreaView.win32.js",
101
101
  "baseFile": "packages/react-native/Libraries/Components/SafeAreaView/SafeAreaView.js",
102
- "baseHash": "ae5845b576484b3600e395d3b1ee03223530b8f7"
102
+ "baseHash": "e1372371cf14c8abd4fb5f2328513596f6553497"
103
103
  },
104
104
  {
105
105
  "type": "platform",
@@ -109,13 +109,13 @@
109
109
  "type": "derived",
110
110
  "file": "src-win/Libraries/Components/TextInput/TextInput.win32.js",
111
111
  "baseFile": "packages/react-native/Libraries/Components/TextInput/TextInput.js",
112
- "baseHash": "19224f9b870df6e0c82d8da36f1f7b22bdd6b596"
112
+ "baseHash": "d7364ef8dd1c0bc25cc189d135e846522b02b3a7"
113
113
  },
114
114
  {
115
115
  "type": "patch",
116
116
  "file": "src-win/Libraries/Components/TextInput/TextInputState.win32.js",
117
117
  "baseFile": "packages/react-native/Libraries/Components/TextInput/TextInputState.js",
118
- "baseHash": "60655baaca427e1c7c1b8884833b848335c4033b"
118
+ "baseHash": "7a12ca2e17da0a0f487af5a27c120ef59b2ab9ef"
119
119
  },
120
120
  {
121
121
  "type": "platform",
@@ -173,7 +173,7 @@
173
173
  "type": "patch",
174
174
  "file": "src-win/Libraries/Components/View/View.win32.js",
175
175
  "baseFile": "packages/react-native/Libraries/Components/View/View.js",
176
- "baseHash": "1905f72f4d202d466ea7d8ed4b36df0845f2c310"
176
+ "baseHash": "85d97fc0638ce73353898f67d0f891a86ee83f3f"
177
177
  },
178
178
  {
179
179
  "type": "derived",
@@ -331,7 +331,7 @@
331
331
  "type": "derived",
332
332
  "file": "src-win/Libraries/NativeComponent/BaseViewConfig.win32.js",
333
333
  "baseFile": "packages/react-native/Libraries/NativeComponent/BaseViewConfig.ios.js",
334
- "baseHash": "af602af3c3acc6521f5535f2fe14bfe08cf1b5e9"
334
+ "baseHash": "51ae58fc739dc6c0679dc888550c2af41787b959"
335
335
  },
336
336
  {
337
337
  "type": "copy",
@@ -360,14 +360,14 @@
360
360
  "type": "patch",
361
361
  "file": "src-win/Libraries/Pressability/HoverState.win32.js",
362
362
  "baseFile": "packages/react-native/Libraries/Pressability/HoverState.js",
363
- "baseHash": "50800642b413cb469ced8d1d6b32ee0e249f4d1e",
363
+ "baseHash": "8a97880597ea72d61464d07d1a082582320e7234",
364
364
  "issue": 6240
365
365
  },
366
366
  {
367
367
  "type": "patch",
368
368
  "file": "src-win/Libraries/Pressability/Pressability.win32.js",
369
369
  "baseFile": "packages/react-native/Libraries/Pressability/Pressability.js",
370
- "baseHash": "8e70142f3acab570d188c617a1811da11b6e9da4",
370
+ "baseHash": "3be9533787a90b2fae462faee1bb8b692d025c31",
371
371
  "issue": 6240
372
372
  },
373
373
  {
@@ -426,7 +426,7 @@
426
426
  "type": "derived",
427
427
  "file": "src-win/Libraries/Text/Text.win32.js",
428
428
  "baseFile": "packages/react-native/Libraries/Text/Text.js",
429
- "baseHash": "8ad2e56ba09c1b5428d50cfd71972c60502ed2e2"
429
+ "baseHash": "64cdf1c520112ead78e348bc306c208f212ac3c5"
430
430
  },
431
431
  {
432
432
  "type": "derived",
@@ -445,7 +445,7 @@
445
445
  "type": "patch",
446
446
  "file": "src-win/Libraries/Types/CoreEventTypes.win32.js",
447
447
  "baseFile": "packages/react-native/Libraries/Types/CoreEventTypes.js",
448
- "baseHash": "7fe2b87cf49f4674d731d07f0883bab2f5cfc356",
448
+ "baseHash": "87532a8f108dad9c3ae07b911dd7344e7c244c20",
449
449
  "issue": 6240
450
450
  },
451
451
  {
@@ -485,7 +485,7 @@
485
485
  "type": "derived",
486
486
  "file": "src-win/Libraries/Utilities/Platform.flow.win32.js",
487
487
  "baseFile": "packages/react-native/Libraries/Utilities/Platform.flow.js",
488
- "baseHash": "f38efa527b9426ae0178bb2336be2e93af0392ba"
488
+ "baseHash": "ae1dbc0afd40655cb18e00eecf21b7ca5db538f2"
489
489
  },
490
490
  {
491
491
  "type": "derived",
@@ -503,20 +503,20 @@
503
503
  "type": "patch",
504
504
  "file": "src-win/src/private/animated/NativeAnimatedHelper.win32.js",
505
505
  "baseFile": "packages/react-native/src/private/animated/NativeAnimatedHelper.js",
506
- "baseHash": "bc63f57b28f1e98755101f650a2c15b6aa263abf",
506
+ "baseHash": "96fb410d7d408c49297f9f99a760f954264bce91",
507
507
  "issue": 11041
508
508
  },
509
509
  {
510
510
  "type": "copy",
511
- "file": "src-win/src/private/reactdevtools/ReactDevToolsSettingsManager.win32.js",
512
- "baseFile": "packages/react-native/src/private/reactdevtools/ReactDevToolsSettingsManager.android.js",
511
+ "file": "src-win/src/private/debugging/ReactDevToolsSettingsManager.win32.js",
512
+ "baseFile": "packages/react-native/src/private/debugging/ReactDevToolsSettingsManager.android.js",
513
513
  "baseHash": "df41b76dc3d2df9455fae588748261d7b0a22d01"
514
514
  },
515
515
  {
516
516
  "type": "derived",
517
517
  "file": "src-win/src/private/specs/modules/NativeAccessibilityInfoWin32.js",
518
518
  "baseFile": "packages/react-native/src/private/specs/modules/NativeAccessibilityInfo.js",
519
- "baseHash": "3c15b48f632de6b939697ae114734cc54e003027"
519
+ "baseHash": "f719796211617b9fd439f74622757e2af5288281"
520
520
  },
521
521
  {
522
522
  "type": "derived",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@office-iss/react-native-win32",
3
- "version": "0.0.0-canary.270",
3
+ "version": "0.0.0-canary.272",
4
4
  "description": "Implementation of react native on top of Office's Win32 platform.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -30,19 +30,19 @@
30
30
  "@react-native-community/cli-platform-android": "15.0.0-alpha.2",
31
31
  "@react-native-community/cli-platform-ios": "15.0.0-alpha.2",
32
32
  "@react-native/assets": "1.0.0",
33
- "@react-native/assets-registry": "0.77.0-nightly-20241001-223e98cc4",
34
- "@react-native/codegen": "0.77.0-nightly-20241001-223e98cc4",
35
- "@react-native/community-cli-plugin": "0.77.0-nightly-20241001-223e98cc4",
36
- "@react-native/gradle-plugin": "0.77.0-nightly-20241001-223e98cc4",
37
- "@react-native/js-polyfills": "0.77.0-nightly-20241001-223e98cc4",
38
- "@react-native/normalize-colors": "0.77.0-nightly-20241001-223e98cc4",
39
- "@react-native/virtualized-lists": "0.77.0-nightly-20241001-223e98cc4",
33
+ "@react-native/assets-registry": "0.77.0-nightly-20241015-3485e9ed8",
34
+ "@react-native/codegen": "0.77.0-nightly-20241015-3485e9ed8",
35
+ "@react-native/community-cli-plugin": "0.77.0-nightly-20241015-3485e9ed8",
36
+ "@react-native/gradle-plugin": "0.77.0-nightly-20241015-3485e9ed8",
37
+ "@react-native/js-polyfills": "0.77.0-nightly-20241015-3485e9ed8",
38
+ "@react-native/normalize-colors": "0.77.0-nightly-20241015-3485e9ed8",
39
+ "@react-native/virtualized-lists": "0.77.0-nightly-20241015-3485e9ed8",
40
40
  "abort-controller": "^3.0.0",
41
41
  "anser": "^1.4.9",
42
42
  "ansi-regex": "^5.0.0",
43
43
  "art": "^0.10.0",
44
44
  "babel-jest": "^29.7.0",
45
- "babel-plugin-syntax-hermes-parser": "^0.23.1",
45
+ "babel-plugin-syntax-hermes-parser": "0.24.0",
46
46
  "base64-js": "^1.5.1",
47
47
  "chalk": "^4.0.0",
48
48
  "commander": "^12.0.0",
@@ -53,8 +53,8 @@
53
53
  "jest-environment-node": "^29.6.3",
54
54
  "jsc-android": "^250231.0.0",
55
55
  "memoize-one": "^5.0.0",
56
- "metro-runtime": "^0.81.0-alpha.0",
57
- "metro-source-map": "^0.81.0-alpha.0",
56
+ "metro-runtime": "^0.81.0",
57
+ "metro-source-map": "^0.81.0",
58
58
  "mkdirp": "^0.5.1",
59
59
  "nullthrows": "^1.1.1",
60
60
  "pretty-format": "^29.7.0",
@@ -90,14 +90,14 @@
90
90
  "just-scripts": "^1.3.3",
91
91
  "prettier": "2.8.8",
92
92
  "react": "19.0.0-rc-fb9a90fa48-20240614",
93
- "react-native": "0.77.0-nightly-20241001-223e98cc4",
93
+ "react-native": "0.77.0-nightly-20241015-3485e9ed8",
94
94
  "react-native-platform-override": "^1.9.49",
95
95
  "typescript": "5.0.4"
96
96
  },
97
97
  "peerDependencies": {
98
98
  "@types/react": "^18.2.6",
99
99
  "react": "^19.0.0-rc-fb9a90fa48-20240614",
100
- "react-native": "0.77.0-nightly-20241001-223e98cc4"
100
+ "react-native": "0.77.0-nightly-20241015-3485e9ed8"
101
101
  },
102
102
  "beachball": {
103
103
  "defaultNpmTag": "canary",
@@ -175,9 +175,8 @@ const API = {
175
175
 
176
176
  flushQueue: (isSingleOpBatching
177
177
  ? (): void => {
178
- // TODO: (T136971132)
179
178
  invariant(
180
- NativeAnimatedModule || process.env.NODE_ENV === 'test',
179
+ NativeAnimatedModule,
181
180
  'Native animated module is not available',
182
181
  );
183
182
  flushQueueImmediate = null;
@@ -197,9 +196,8 @@ const API = {
197
196
  singleOpQueue.length = 0;
198
197
  }
199
198
  : (): void => {
200
- // TODO: (T136971132)
201
199
  invariant(
202
- NativeAnimatedModule || process.env.NODE_ENV === 'test',
200
+ NativeAnimatedModule,
203
201
  'Native animated module is not available',
204
202
  );
205
203
  flushQueueImmediate = null;
@@ -178,7 +178,7 @@ const API = {
178
178
  /* [Windows #11041
179
179
  // TODO: (T136971132)
180
180
  invariant(
181
- NativeAnimatedModule || process.env.NODE_ENV === 'test',
181
+ NativeAnimatedModule,
182
182
  'Native animated module is not available',
183
183
  );
184
184
  Windows] */
@@ -199,9 +199,8 @@ const API = {
199
199
  singleOpQueue.length = 0;
200
200
  }
201
201
  : (): void => {
202
- // TODO: (T136971132)
203
202
  invariant(
204
- NativeAnimatedModule || process.env.NODE_ENV === 'test',
203
+ NativeAnimatedModule,
205
204
  'Native animated module is not available',
206
205
  );
207
206
  flushQueueImmediate = null;
@@ -29,11 +29,10 @@ const HScrollViewNativeComponentForPlatform =
29
29
  : ScrollViewNativeComponent;
30
30
 
31
31
  // TODO: After upgrading to React 19, remove `forwardRef` from this component.
32
- export const HScrollViewNativeComponent: React.AbstractComponent<
33
- ScrollViewNativeProps,
34
- TScrollViewNativeImperativeHandle,
35
- // $FlowExpectedError[incompatible-type] - Flow cannot model imperative handles, yet.
36
- > = forwardRef(function HScrollViewNativeComponent(
32
+ export const HScrollViewNativeComponent: component(
33
+ ref: React.RefSetter<TScrollViewNativeImperativeHandle>,
34
+ ...ScrollViewNativeProps
35
+ ) = forwardRef(function HScrollViewNativeComponent(
37
36
  props: ScrollViewNativeProps,
38
37
  ref: ?React.RefSetter<TScrollViewNativeImperativeHandle | null>,
39
38
  ): React.Node {
@@ -23,11 +23,10 @@ import * as React from 'react';
23
23
  import {forwardRef} from 'react';
24
24
 
25
25
  // TODO: After upgrading to React 19, remove `forwardRef` from this component.
26
- export const VScrollViewNativeComponent: React.AbstractComponent<
27
- ScrollViewNativeProps,
28
- TScrollViewNativeImperativeHandle,
29
- // $FlowExpectedError[incompatible-type] - Flow cannot model imperative handles, yet.
30
- > = forwardRef(function VScrollViewNativeComponent(
26
+ export const VScrollViewNativeComponent: component(
27
+ ref: React.RefSetter<TScrollViewNativeImperativeHandle>,
28
+ ...props: ScrollViewNativeProps
29
+ ) = forwardRef(function VScrollViewNativeComponent(
31
30
  props: ScrollViewNativeProps,
32
31
  ref: ?React.RefSetter<TScrollViewNativeImperativeHandle | null>,
33
32
  ): React.Node {
@@ -62,6 +62,12 @@ export class Domain {
62
62
  }
63
63
  }
64
64
 
65
+ /**
66
+ * Globally bound object providing a hook for React DevTools runtime API calls
67
+ * over CDP.
68
+ *
69
+ * @see {@link ./__docs__/FuseboxReactDevToolsDispatcher.excalidraw-embedded.png}
70
+ */
65
71
  class FuseboxReactDevToolsDispatcher {
66
72
  static #domainNameToDomainMap: Map<DomainName, Domain> = new Map();
67
73