@office-iss/react-native-win32 0.0.0-canary.306 → 0.0.0-canary.307

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 (55) hide show
  1. package/.flowconfig +1 -1
  2. package/CHANGELOG.json +27 -0
  3. package/CHANGELOG.md +11 -1
  4. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +43 -15
  5. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.win32.js +43 -15
  6. package/Libraries/Components/ActivityIndicator/ActivityIndicator.d.ts +2 -2
  7. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.d.ts +2 -2
  8. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.d.ts +2 -2
  9. package/Libraries/Components/RefreshControl/RefreshControl.d.ts +2 -2
  10. package/Libraries/Components/SafeAreaView/SafeAreaView.d.ts +2 -2
  11. package/Libraries/Components/Switch/Switch.d.ts +2 -2
  12. package/Libraries/Components/TextInput/TextInput.d.ts +2 -5
  13. package/Libraries/Components/View/ReactNativeStyleAttributes.js +19 -1
  14. package/Libraries/Components/View/View.d.ts +2 -2
  15. package/Libraries/Components/View/ViewWin32.d.ts +2 -2
  16. package/Libraries/Core/ReactNativeVersion.js +1 -1
  17. package/Libraries/Core/setUpPerformance.js +2 -0
  18. package/Libraries/Debugging/DebuggingOverlayRegistry.js +8 -2
  19. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +5 -2
  20. package/Libraries/Image/Image.d.ts +3 -3
  21. package/Libraries/LogBox/UI/AnsiHighlight.js +4 -1
  22. package/Libraries/NativeComponent/BaseViewConfig.android.js +11 -2
  23. package/Libraries/NativeComponent/NativeComponentRegistryUnstable.js +3 -1
  24. package/Libraries/Network/XMLHttpRequest.js +1 -39
  25. package/Libraries/Pressability/usePressability.js +14 -3
  26. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +20 -82
  27. package/Libraries/ReactNative/getNativeComponentAttributes.js +12 -0
  28. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +2 -9
  29. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +2 -9
  30. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +2 -9
  31. package/Libraries/Renderer/shims/ReactFabric.js +1 -3
  32. package/Libraries/Renderer/shims/ReactFeatureFlags.js +1 -3
  33. package/Libraries/Renderer/shims/ReactNative.js +2 -2
  34. package/Libraries/Renderer/shims/ReactNativeTypes.js +1 -3
  35. package/Libraries/Renderer/shims/ReactNativeTypes.win32.js +1 -3
  36. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +1 -3
  37. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +1 -3
  38. package/Libraries/StyleSheet/StyleSheetTypes.js +44 -0
  39. package/Libraries/StyleSheet/processBackgroundPosition.js +284 -0
  40. package/Libraries/StyleSheet/processBackgroundRepeat.js +105 -0
  41. package/Libraries/StyleSheet/processBackgroundSize.js +104 -0
  42. package/Libraries/Text/Text.d.ts +2 -2
  43. package/Libraries/TurboModule/TurboModuleRegistry.js +3 -9
  44. package/flow/bom.js.flow +1 -0
  45. package/overrides.json +6 -6
  46. package/package.json +29 -16
  47. package/src/private/featureflags/ReactNativeFeatureFlags.js +28 -18
  48. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +5 -3
  49. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +124 -15
  50. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +1 -0
  51. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +1 -0
  52. package/src-win/Libraries/Components/View/ViewWin32.d.ts +2 -2
  53. package/src-win/Libraries/Text/Text.d.ts +2 -2
  54. package/types/public/ReactNativeTypes.d.ts +115 -2
  55. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +0 -152
package/.flowconfig CHANGED
@@ -175,4 +175,4 @@ untyped-import
175
175
  untyped-type-import
176
176
 
177
177
  [version]
178
- ^0.287.0
178
+ ^0.289.0
package/CHANGELOG.json CHANGED
@@ -1,6 +1,33 @@
1
1
  {
2
2
  "name": "@office-iss/react-native-win32",
3
3
  "entries": [
4
+ {
5
+ "date": "Sat, 07 Mar 2026 04:06:59 GMT",
6
+ "version": "0.0.0-canary.307",
7
+ "tag": "@office-iss/react-native-win32_v0.0.0-canary.307",
8
+ "comments": {
9
+ "prerelease": [
10
+ {
11
+ "author": "30809111+acoates-ms@users.noreply.github.com",
12
+ "package": "@office-iss/react-native-win32",
13
+ "commit": "a0e5dd17f852aca8dd005cb75b6cc2294d411bbd",
14
+ "comment": "Fix images not showing in test app"
15
+ },
16
+ {
17
+ "author": "66076509+vineethkuttan@users.noreply.github.com",
18
+ "package": "@office-iss/react-native-win32",
19
+ "commit": "a0e5dd17f852aca8dd005cb75b6cc2294d411bbd",
20
+ "comment": "Integrate 0.83.0-nightly-20251104-502efe1cc"
21
+ },
22
+ {
23
+ "author": "beachball",
24
+ "package": "@office-iss/react-native-win32",
25
+ "comment": "Bump react-native-platform-override to v0.0.0-canary.1020",
26
+ "commit": "not available"
27
+ }
28
+ ]
29
+ }
30
+ },
4
31
  {
5
32
  "date": "Wed, 04 Mar 2026 22:34:24 GMT",
6
33
  "version": "0.0.0-canary.306",
package/CHANGELOG.md CHANGED
@@ -1,9 +1,19 @@
1
1
  # Change Log - @office-iss/react-native-win32
2
2
 
3
- <!-- This log was last generated on Wed, 04 Mar 2026 22:34:24 GMT and should not be manually modified. -->
3
+ <!-- This log was last generated on Sat, 07 Mar 2026 04:06:59 GMT and should not be manually modified. -->
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## 0.0.0-canary.307
8
+
9
+ Sat, 07 Mar 2026 04:06:59 GMT
10
+
11
+ ### Changes
12
+
13
+ - Fix images not showing in test app (30809111+acoates-ms@users.noreply.github.com)
14
+ - Integrate 0.83.0-nightly-20251104-502efe1cc (66076509+vineethkuttan@users.noreply.github.com)
15
+ - Bump react-native-platform-override to v0.0.0-canary.1020
16
+
7
17
  ## 0.0.0-canary.306
8
18
 
9
19
  Wed, 04 Mar 2026 22:34:24 GMT
@@ -99,7 +99,7 @@ const AccessibilityInfo = {
99
99
  reject,
100
100
  );
101
101
  } else {
102
- reject(null);
102
+ reject(new Error('NativeAccessibilityManagerIOS is not available'));
103
103
  }
104
104
  });
105
105
  }
@@ -119,7 +119,11 @@ const AccessibilityInfo = {
119
119
  if (NativeAccessibilityInfoAndroid?.isGrayscaleEnabled != null) {
120
120
  NativeAccessibilityInfoAndroid.isGrayscaleEnabled(resolve);
121
121
  } else {
122
- reject(null);
122
+ reject(
123
+ new Error(
124
+ 'NativeAccessibilityInfoAndroid.isGrayscaleEnabled is not available',
125
+ ),
126
+ );
123
127
  }
124
128
  });
125
129
  } else {
@@ -130,7 +134,7 @@ const AccessibilityInfo = {
130
134
  reject,
131
135
  );
132
136
  } else {
133
- reject(null);
137
+ reject(new Error('AccessibilityInfo native module is not available'));
134
138
  }
135
139
  });
136
140
  }
@@ -150,7 +154,11 @@ const AccessibilityInfo = {
150
154
  if (NativeAccessibilityInfoAndroid?.isInvertColorsEnabled != null) {
151
155
  NativeAccessibilityInfoAndroid.isInvertColorsEnabled(resolve);
152
156
  } else {
153
- reject(null);
157
+ reject(
158
+ new Error(
159
+ 'NativeAccessibilityInfoAndroid.isInvertColorsEnabled is not available',
160
+ ),
161
+ );
154
162
  }
155
163
  });
156
164
  } else {
@@ -161,7 +169,7 @@ const AccessibilityInfo = {
161
169
  reject,
162
170
  );
163
171
  } else {
164
- reject(null);
172
+ reject(new Error('AccessibilityInfo native module is not available'));
165
173
  }
166
174
  });
167
175
  }
@@ -181,7 +189,7 @@ const AccessibilityInfo = {
181
189
  if (NativeAccessibilityInfoAndroid != null) {
182
190
  NativeAccessibilityInfoAndroid.isReduceMotionEnabled(resolve);
183
191
  } else {
184
- reject(null);
192
+ reject(new Error('AccessibilityInfo native module is not available'));
185
193
  }
186
194
  } else {
187
195
  if (NativeAccessibilityManagerIOS != null) {
@@ -190,7 +198,7 @@ const AccessibilityInfo = {
190
198
  reject,
191
199
  );
192
200
  } else {
193
- reject(null);
201
+ reject(new Error('NativeAccessibilityManagerIOS is not available'));
194
202
  }
195
203
  }
196
204
  });
@@ -208,7 +216,11 @@ const AccessibilityInfo = {
208
216
  if (NativeAccessibilityInfoAndroid?.isHighTextContrastEnabled != null) {
209
217
  NativeAccessibilityInfoAndroid.isHighTextContrastEnabled(resolve);
210
218
  } else {
211
- reject(null);
219
+ reject(
220
+ new Error(
221
+ 'NativeAccessibilityInfoAndroid.isHighTextContrastEnabled is not available',
222
+ ),
223
+ );
212
224
  }
213
225
  } else {
214
226
  return Promise.resolve(false);
@@ -236,7 +248,11 @@ const AccessibilityInfo = {
236
248
  reject,
237
249
  );
238
250
  } else {
239
- reject(null);
251
+ reject(
252
+ new Error(
253
+ 'NativeAccessibilityManagerIOS.getCurrentDarkerSystemColorsState is not available',
254
+ ),
255
+ );
240
256
  }
241
257
  }
242
258
  });
@@ -264,7 +280,11 @@ const AccessibilityInfo = {
264
280
  reject,
265
281
  );
266
282
  } else {
267
- reject(null);
283
+ reject(
284
+ new Error(
285
+ 'NativeAccessibilityManagerIOS.getCurrentPrefersCrossFadeTransitionsState is not available',
286
+ ),
287
+ );
268
288
  }
269
289
  }
270
290
  });
@@ -289,7 +309,7 @@ const AccessibilityInfo = {
289
309
  reject,
290
310
  );
291
311
  } else {
292
- reject(null);
312
+ reject(new Error('NativeAccessibilityManagerIOS is not available'));
293
313
  }
294
314
  });
295
315
  }
@@ -309,7 +329,7 @@ const AccessibilityInfo = {
309
329
  if (NativeAccessibilityInfoAndroid != null) {
310
330
  NativeAccessibilityInfoAndroid.isTouchExplorationEnabled(resolve);
311
331
  } else {
312
- reject(null);
332
+ reject(new Error('NativeAccessibilityInfoAndroid is not available'));
313
333
  }
314
334
  } else {
315
335
  if (NativeAccessibilityManagerIOS != null) {
@@ -318,7 +338,7 @@ const AccessibilityInfo = {
318
338
  reject,
319
339
  );
320
340
  } else {
321
- reject(null);
341
+ reject(new Error('NativeAccessibilityManagerIOS is not available'));
322
342
  }
323
343
  }
324
344
  });
@@ -343,10 +363,18 @@ const AccessibilityInfo = {
343
363
  ) {
344
364
  NativeAccessibilityInfoAndroid.isAccessibilityServiceEnabled(resolve);
345
365
  } else {
346
- reject(null);
366
+ reject(
367
+ new Error(
368
+ 'NativeAccessibilityInfoAndroid.isAccessibilityServiceEnabled is not available',
369
+ ),
370
+ );
347
371
  }
348
372
  } else {
349
- reject(null);
373
+ reject(
374
+ new Error(
375
+ 'isAccessibilityServiceEnabled is only available on Android',
376
+ ),
377
+ );
350
378
  }
351
379
  });
352
380
  },
@@ -107,7 +107,7 @@ const AccessibilityInfo = {
107
107
  reject,
108
108
  );
109
109
  } else {
110
- reject(null);
110
+ reject(new Error('NativeAccessibilityManagerIOS is not available'));
111
111
  }
112
112
  });
113
113
  }
@@ -127,7 +127,11 @@ const AccessibilityInfo = {
127
127
  if (NativeAccessibilityInfoAndroid?.isGrayscaleEnabled != null) {
128
128
  NativeAccessibilityInfoAndroid.isGrayscaleEnabled(resolve);
129
129
  } else {
130
- reject(null);
130
+ reject(
131
+ new Error(
132
+ 'NativeAccessibilityInfoAndroid.isGrayscaleEnabled is not available',
133
+ ),
134
+ );
131
135
  }
132
136
  });
133
137
  } else if (Platform.OS === 'win32') {
@@ -140,7 +144,7 @@ const AccessibilityInfo = {
140
144
  reject,
141
145
  );
142
146
  } else {
143
- reject(null);
147
+ reject(new Error('AccessibilityInfo native module is not available'));
144
148
  }
145
149
  });
146
150
  }
@@ -160,7 +164,11 @@ const AccessibilityInfo = {
160
164
  if (NativeAccessibilityInfoAndroid?.isInvertColorsEnabled != null) {
161
165
  NativeAccessibilityInfoAndroid.isInvertColorsEnabled(resolve);
162
166
  } else {
163
- reject(null);
167
+ reject(
168
+ new Error(
169
+ 'NativeAccessibilityInfoAndroid.isInvertColorsEnabled is not available',
170
+ ),
171
+ );
164
172
  }
165
173
  });
166
174
  } else if (Platform.OS === 'win32') {
@@ -173,7 +181,7 @@ const AccessibilityInfo = {
173
181
  reject,
174
182
  );
175
183
  } else {
176
- reject(null);
184
+ reject(new Error('AccessibilityInfo native module is not available'));
177
185
  }
178
186
  });
179
187
  }
@@ -199,7 +207,7 @@ const AccessibilityInfo = {
199
207
  if (NativeAccessibilityInfoWin32 != null) {
200
208
  NativeAccessibilityInfoWin32.isReduceMotionEnabled(resolve);
201
209
  } else {
202
- reject(null);
210
+ reject(new Error('AccessibilityInfo native module is not available'));
203
211
  }
204
212
  } else {
205
213
  if (NativeAccessibilityManagerIOS != null) {
@@ -208,7 +216,7 @@ const AccessibilityInfo = {
208
216
  reject,
209
217
  );
210
218
  } else {
211
- reject(null);
219
+ reject(new Error('NativeAccessibilityManagerIOS is not available'));
212
220
  }
213
221
  }
214
222
  });
@@ -226,7 +234,11 @@ const AccessibilityInfo = {
226
234
  if (NativeAccessibilityInfo?.isHighTextContrastEnabled != null) {
227
235
  NativeAccessibilityInfo.isHighTextContrastEnabled(resolve);
228
236
  } else {
229
- reject(null);
237
+ reject(
238
+ new Error(
239
+ 'NativeAccessibilityInfoAndroid.isHighTextContrastEnabled is not available',
240
+ ),
241
+ );
230
242
  }
231
243
  } else {
232
244
  return Promise.resolve(false);
@@ -254,7 +266,11 @@ const AccessibilityInfo = {
254
266
  reject,
255
267
  );
256
268
  } else {
257
- reject(null);
269
+ reject(
270
+ new Error(
271
+ 'NativeAccessibilityManagerIOS.getCurrentDarkerSystemColorsState is not available',
272
+ ),
273
+ );
258
274
  }
259
275
  }
260
276
  });
@@ -282,7 +298,11 @@ const AccessibilityInfo = {
282
298
  reject,
283
299
  );
284
300
  } else {
285
- reject(null);
301
+ reject(
302
+ new Error(
303
+ 'NativeAccessibilityManagerIOS.getCurrentPrefersCrossFadeTransitionsState is not available',
304
+ ),
305
+ );
286
306
  }
287
307
  }
288
308
  });
@@ -307,7 +327,7 @@ const AccessibilityInfo = {
307
327
  reject,
308
328
  );
309
329
  } else {
310
- reject(null);
330
+ reject(new Error('NativeAccessibilityManagerIOS is not available'));
311
331
  }
312
332
  });
313
333
  }
@@ -333,7 +353,7 @@ const AccessibilityInfo = {
333
353
  if (NativeAccessibilityInfoWin32 != null) {
334
354
  NativeAccessibilityInfoWin32.isTouchExplorationEnabled(resolve);
335
355
  } else {
336
- reject(null);
356
+ reject(new Error('NativeAccessibilityInfoAndroid is not available'));
337
357
  }
338
358
  } else {
339
359
  if (NativeAccessibilityManagerIOS != null) {
@@ -342,7 +362,7 @@ const AccessibilityInfo = {
342
362
  reject,
343
363
  );
344
364
  } else {
345
- reject(null);
365
+ reject(new Error('NativeAccessibilityManagerIOS is not available'));
346
366
  }
347
367
  }
348
368
  });
@@ -367,10 +387,18 @@ const AccessibilityInfo = {
367
387
  ) {
368
388
  NativeAccessibilityInfo.isAccessibilityServiceEnabled(resolve);
369
389
  } else {
370
- reject(null);
390
+ reject(
391
+ new Error(
392
+ 'NativeAccessibilityInfoAndroid.isAccessibilityServiceEnabled is not available',
393
+ ),
394
+ );
371
395
  }
372
396
  } else {
373
- reject(null);
397
+ reject(
398
+ new Error(
399
+ 'isAccessibilityServiceEnabled is only available on Android',
400
+ ),
401
+ );
374
402
  }
375
403
  });
376
404
  },
@@ -9,7 +9,7 @@
9
9
 
10
10
  import type * as React from 'react';
11
11
  import {Constructor} from '../../../types/private/Utilities';
12
- import {NativeMethods} from '../../../types/public/ReactNativeTypes';
12
+ import {HostInstance} from '../../../types/public/ReactNativeTypes';
13
13
  import {ColorValue, StyleProp} from '../../StyleSheet/StyleSheet';
14
14
  import {ViewStyle} from '../../StyleSheet/StyleSheetTypes';
15
15
  import {LayoutChangeEvent} from '../../Types/CoreEventTypes';
@@ -46,7 +46,7 @@ export interface ActivityIndicatorProps extends ViewProps {
46
46
  }
47
47
 
48
48
  declare class ActivityIndicatorComponent extends React.Component<ActivityIndicatorProps> {}
49
- declare const ActivityIndicatorBase: Constructor<NativeMethods> &
49
+ declare const ActivityIndicatorBase: Constructor<HostInstance> &
50
50
  typeof ActivityIndicatorComponent;
51
51
  export class ActivityIndicator extends ActivityIndicatorBase {}
52
52
 
@@ -9,7 +9,7 @@
9
9
 
10
10
  import type * as React from 'react';
11
11
  import {Constructor} from '../../../types/private/Utilities';
12
- import {NativeMethods} from '../../../types/public/ReactNativeTypes';
12
+ import {HostInstance} from '../../../types/public/ReactNativeTypes';
13
13
  import {ColorValue} from '../../StyleSheet/StyleSheet';
14
14
  import {
15
15
  NativeSyntheticEvent,
@@ -121,7 +121,7 @@ interface DrawerPosition {
121
121
  }
122
122
 
123
123
  declare class DrawerLayoutAndroidComponent extends React.Component<DrawerLayoutAndroidProps> {}
124
- declare const DrawerLayoutAndroidBase: Constructor<NativeMethods> &
124
+ declare const DrawerLayoutAndroidBase: Constructor<HostInstance> &
125
125
  typeof DrawerLayoutAndroidComponent;
126
126
  export class DrawerLayoutAndroid extends DrawerLayoutAndroidBase {
127
127
  /**
@@ -9,7 +9,7 @@
9
9
 
10
10
  import type * as React from 'react';
11
11
  import {Constructor} from '../../../types/private/Utilities';
12
- import {NativeMethods} from '../../../types/public/ReactNativeTypes';
12
+ import {HostInstance} from '../../../types/public/ReactNativeTypes';
13
13
  import {ColorValue} from '../../StyleSheet/StyleSheet';
14
14
  import {ViewProps} from '../View/ViewPropTypes';
15
15
 
@@ -72,7 +72,7 @@ export interface ProgressBarAndroidProps extends ViewProps {
72
72
  * that the app is loading or there is some activity in the app.
73
73
  */
74
74
  declare class ProgressBarAndroidComponent extends React.Component<ProgressBarAndroidProps> {}
75
- declare const ProgressBarAndroidBase: Constructor<NativeMethods> &
75
+ declare const ProgressBarAndroidBase: Constructor<HostInstance> &
76
76
  typeof ProgressBarAndroidComponent;
77
77
  /**
78
78
  * ProgressBarAndroid has been extracted from react-native core and will be removed in a future release.
@@ -9,7 +9,7 @@
9
9
 
10
10
  import type * as React from 'react';
11
11
  import {Constructor} from '../../../types/private/Utilities';
12
- import {NativeMethods} from '../../../types/public/ReactNativeTypes';
12
+ import {HostInstance} from '../../../types/public/ReactNativeTypes';
13
13
  import {ColorValue} from '../../StyleSheet/StyleSheet';
14
14
  import {ViewProps} from '../View/ViewPropTypes';
15
15
 
@@ -80,7 +80,7 @@ export interface RefreshControlProps
80
80
  * in the `onRefresh` function otherwise the refresh indicator will stop immediately.
81
81
  */
82
82
  declare class RefreshControlComponent extends React.Component<RefreshControlProps> {}
83
- declare const RefreshControlBase: Constructor<NativeMethods> &
83
+ declare const RefreshControlBase: Constructor<HostInstance> &
84
84
  typeof RefreshControlComponent;
85
85
  export class RefreshControl extends RefreshControlBase {
86
86
  static SIZE: Object; // Undocumented
@@ -9,7 +9,7 @@
9
9
 
10
10
  import type * as React from 'react';
11
11
  import {Constructor} from '../../../types/private/Utilities';
12
- import {NativeMethods} from '../../../types/public/ReactNativeTypes';
12
+ import {HostInstance} from '../../../types/public/ReactNativeTypes';
13
13
  import {ViewProps} from '../View/ViewPropTypes';
14
14
 
15
15
  /**
@@ -23,7 +23,7 @@ import {ViewProps} from '../View/ViewPropTypes';
23
23
  */
24
24
  declare class SafeAreaViewComponent extends React.Component<ViewProps> {}
25
25
 
26
- declare const SafeAreaViewBase: Constructor<NativeMethods> &
26
+ declare const SafeAreaViewBase: Constructor<HostInstance> &
27
27
  typeof SafeAreaViewComponent;
28
28
 
29
29
  /**
@@ -9,7 +9,7 @@
9
9
 
10
10
  import type * as React from 'react';
11
11
  import {Constructor} from '../../../types/private/Utilities';
12
- import {NativeMethods} from '../../../types/public/ReactNativeTypes';
12
+ import {HostInstance} from '../../../types/public/ReactNativeTypes';
13
13
  import {ColorValue, StyleProp} from '../../StyleSheet/StyleSheet';
14
14
  import {ViewStyle} from '../../StyleSheet/StyleSheetTypes';
15
15
  import {ViewProps} from '../View/ViewPropTypes';
@@ -114,5 +114,5 @@ export interface SwitchProps extends SwitchPropsIOS {
114
114
  * the supplied `value` prop instead of the expected result of any user actions.
115
115
  */
116
116
  declare class SwitchComponent extends React.Component<SwitchProps> {}
117
- declare const SwitchBase: Constructor<NativeMethods> & typeof SwitchComponent;
117
+ declare const SwitchBase: Constructor<HostInstance> & typeof SwitchComponent;
118
118
  export class Switch extends SwitchBase {}
@@ -10,10 +10,7 @@
10
10
  import type * as React from 'react';
11
11
  import {Constructor} from '../../../types/private/Utilities';
12
12
  import {TimerMixin} from '../../../types/private/TimerMixin';
13
- import {
14
- HostInstance,
15
- NativeMethods,
16
- } from '../../../types/public/ReactNativeTypes';
13
+ import {HostInstance} from '../../../types/public/ReactNativeTypes';
17
14
  import {ColorValue, StyleProp} from '../../StyleSheet/StyleSheet';
18
15
  import {TextStyle} from '../../StyleSheet/StyleSheetTypes';
19
16
  import {
@@ -1029,7 +1026,7 @@ interface TextInputState {
1029
1026
  * @see https://reactnative.dev/docs/textinput#methods
1030
1027
  */
1031
1028
  declare class TextInputComponent extends React.Component<TextInputProps> {}
1032
- declare const TextInputBase: Constructor<NativeMethods> &
1029
+ declare const TextInputBase: Constructor<HostInstance> &
1033
1030
  Constructor<TimerMixin> &
1034
1031
  typeof TextInputComponent;
1035
1032
  export class TextInput extends TextInputBase {
@@ -13,6 +13,9 @@ import type {AnyAttributeType} from '../../Renderer/shims/ReactNativeTypes';
13
13
  import * as ReactNativeFeatureFlags from '../../../src/private/featureflags/ReactNativeFeatureFlags';
14
14
  import processAspectRatio from '../../StyleSheet/processAspectRatio';
15
15
  import processBackgroundImage from '../../StyleSheet/processBackgroundImage';
16
+ import processBackgroundPosition from '../../StyleSheet/processBackgroundPosition';
17
+ import processBackgroundRepeat from '../../StyleSheet/processBackgroundRepeat';
18
+ import processBackgroundSize from '../../StyleSheet/processBackgroundSize';
16
19
  import processBoxShadow from '../../StyleSheet/processBoxShadow';
17
20
  import processColor from '../../StyleSheet/processColor';
18
21
  import processFilter from '../../StyleSheet/processFilter';
@@ -144,10 +147,25 @@ const ReactNativeStyleAttributes: {[string]: AnyAttributeType, ...} = {
144
147
  : {process: processBoxShadow},
145
148
 
146
149
  /**
147
- * Linear Gradient
150
+ * BackgroundImage
148
151
  */
149
152
  experimental_backgroundImage: {process: processBackgroundImage},
150
153
 
154
+ /**
155
+ * BackgroundSize
156
+ */
157
+ experimental_backgroundSize: {process: processBackgroundSize},
158
+
159
+ /**
160
+ * BackgroundPosition
161
+ */
162
+ experimental_backgroundPosition: {process: processBackgroundPosition},
163
+
164
+ /**
165
+ * BackgroundRepeat
166
+ */
167
+ experimental_backgroundRepeat: {process: processBackgroundRepeat},
168
+
151
169
  /**
152
170
  * View
153
171
  */
@@ -10,7 +10,7 @@
10
10
  import type * as React from 'react';
11
11
  import {Constructor} from '../../../types/private/Utilities';
12
12
  import {ViewProps} from './ViewPropTypes';
13
- import {NativeMethods} from '../../../types/public/ReactNativeTypes';
13
+ import {HostInstance} from '../../../types/public/ReactNativeTypes';
14
14
 
15
15
  /**
16
16
  * The most fundamental component for building UI, View is a container that supports layout with flexbox, style, some touch handling,
@@ -19,7 +19,7 @@ import {NativeMethods} from '../../../types/public/ReactNativeTypes';
19
19
  * whether that is a UIView, <div>, android.view, etc.
20
20
  */
21
21
  declare class ViewComponent extends React.Component<ViewProps> {}
22
- declare const ViewBase: Constructor<NativeMethods> & typeof ViewComponent;
22
+ declare const ViewBase: Constructor<HostInstance> & typeof ViewComponent;
23
23
  export class View extends ViewBase {
24
24
  /**
25
25
  * Is 3D Touch / Force Touch available (i.e. will touch events include `force`)
@@ -10,7 +10,7 @@
10
10
  import type * as React from 'react';
11
11
  import {Constructor} from 'react-native/types/private/Utilities';
12
12
  import {ViewProps} from './ViewPropTypes';
13
- import {NativeMethods} from 'react-native/types/public/ReactNativeTypes';
13
+ import {HostInstance} from 'react-native/types/public/ReactNativeTypes';
14
14
 
15
15
  /**
16
16
  * The most fundamental component for building UI, View is a container that supports layout with flexbox, style, some touch handling,
@@ -19,7 +19,7 @@ import {NativeMethods} from 'react-native/types/public/ReactNativeTypes';
19
19
  * whether that is a UIView, <div>, android.view, etc.
20
20
  */
21
21
  declare class ViewWin32Component extends React.Component<ViewProps> {}
22
- declare const ViewWin32Base: Constructor<NativeMethods> &
22
+ declare const ViewWin32Base: Constructor<HostInstance> &
23
23
  typeof ViewWin32Component;
24
24
  export class ViewWin32 extends ViewWin32Base {
25
25
  /**
@@ -29,7 +29,7 @@ export default class ReactNativeVersion {
29
29
  static major: number = 0;
30
30
  static minor: number = 83;
31
31
  static patch: number = 0;
32
- static prerelease: string | null = 'nightly-20251012-6f482708b';
32
+ static prerelease: string | null = 'nightly-20251104-502efe1cc';
33
33
 
34
34
  static getVersionString(): string {
35
35
  return `${this.major}.${this.minor}.${this.patch}${this.prerelease != null ? `-${this.prerelease}` : ''}`;
@@ -20,7 +20,9 @@ if (NativePerformance) {
20
20
  // $FlowExpectedError[cannot-write]
21
21
  global.performance = {
22
22
  mark: () => {},
23
+ clearMarks: () => {},
23
24
  measure: () => {},
25
+ clearMeasures: () => {},
24
26
  now: () => {
25
27
  const performanceNow = global.nativePerformanceNow || Date.now;
26
28
  return performanceNow();
@@ -332,7 +332,9 @@ class DebuggingOverlayRegistry {
332
332
  instance.measure((x, y, width, height, left, top) => {
333
333
  // measure can execute callback without any values provided to signal error.
334
334
  if (left == null || top == null || width == null || height == null) {
335
- reject('Unexpectedly failed to call measure on an instance.');
335
+ reject(
336
+ new Error('Unexpectedly failed to call measure on an instance.'),
337
+ );
336
338
  }
337
339
 
338
340
  resolve({
@@ -480,7 +482,11 @@ class DebuggingOverlayRegistry {
480
482
  width == null ||
481
483
  height == null
482
484
  ) {
483
- reject('Unexpectedly failed to call measure on an instance.');
485
+ reject(
486
+ new Error(
487
+ 'Unexpectedly failed to call measure on an instance.',
488
+ ),
489
+ );
484
490
  }
485
491
 
486
492
  resolve({x: left, y: top, width, height});
@@ -30,8 +30,11 @@ class RCTDeviceEventEmitterImpl extends EventEmitter<RCTDeviceEventDefinitions>
30
30
  ...args: RCTDeviceEventDefinitions[TEvent]
31
31
  ): void {
32
32
  beginEvent(() => `RCTDeviceEventEmitter.emit#${eventType}`);
33
- super.emit(eventType, ...args);
34
- endEvent();
33
+ try {
34
+ super.emit(eventType, ...args);
35
+ } finally {
36
+ endEvent();
37
+ }
35
38
  }
36
39
  }
37
40
  const RCTDeviceEventEmitter: IEventEmitter<RCTDeviceEventDefinitions> =
@@ -11,7 +11,7 @@ import * as React from 'react';
11
11
  import {Constructor} from '../../types/private/Utilities';
12
12
  import {AccessibilityProps} from '../Components/View/ViewAccessibility';
13
13
  import {Insets} from '../../types/public/Insets';
14
- import {NativeMethods} from '../../types/public/ReactNativeTypes';
14
+ import {HostInstance} from '../../types/public/ReactNativeTypes';
15
15
  import {ColorValue, StyleProp} from '../StyleSheet/StyleSheet';
16
16
  import {ImageStyle, ViewStyle} from '../StyleSheet/StyleSheetTypes';
17
17
  import {LayoutChangeEvent, NativeSyntheticEvent} from '../Types/CoreEventTypes';
@@ -338,7 +338,7 @@ export interface ImageSize {
338
338
  }
339
339
 
340
340
  declare class ImageComponent extends React.Component<ImageProps> {}
341
- declare const ImageBase: Constructor<NativeMethods> & typeof ImageComponent;
341
+ declare const ImageBase: Constructor<HostInstance> & typeof ImageComponent;
342
342
  export class Image extends ImageBase {
343
343
  static getSize(uri: string): Promise<ImageSize>;
344
344
  static getSize(
@@ -384,6 +384,6 @@ export interface ImageBackgroundProps extends ImagePropsBase {
384
384
  }
385
385
 
386
386
  declare class ImageBackgroundComponent extends React.Component<ImageBackgroundProps> {}
387
- declare const ImageBackgroundBase: Constructor<NativeMethods> &
387
+ declare const ImageBackgroundBase: Constructor<HostInstance> &
388
388
  typeof ImageBackgroundComponent;
389
389
  export class ImageBackground extends ImageBackgroundBase {}