react-native-tvos 0.83.9-0 → 0.83.10-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 (187) hide show
  1. package/Libraries/ActionSheetIOS/React-RCTActionSheet.podspec +1 -1
  2. package/Libraries/Animated/components/AnimatedScrollView.js +1 -1
  3. package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +1 -1
  4. package/Libraries/Blob/React-RCTBlob.podspec +1 -1
  5. package/Libraries/Components/Button.js +2 -2
  6. package/Libraries/Components/ScrollView/ScrollView.d.ts +1 -1
  7. package/Libraries/Components/ScrollView/ScrollView.js +1 -1
  8. package/Libraries/Components/TV/TVViewPropTypes.js +9 -0
  9. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +1 -1
  10. package/Libraries/Components/TextInput/TextInput.flow.js +1 -1
  11. package/Libraries/Components/Touchable/Touchable.d.ts +1 -1
  12. package/Libraries/Components/View/View.js +7 -3
  13. package/Libraries/Components/View/ViewAccessibility.d.ts +1 -1
  14. package/Libraries/Components/View/ViewAccessibility.js +1 -1
  15. package/Libraries/Core/ReactNativeVersion.js +2 -2
  16. package/Libraries/Core/Timers/JSTimers.js +1 -1
  17. package/Libraries/Core/setUpNavigator.js +1 -1
  18. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.d.ts +1 -1
  19. package/Libraries/FBLazyVector/FBLazyVector.podspec +1 -1
  20. package/Libraries/Image/ImageSource.d.ts +1 -1
  21. package/Libraries/Image/RCTImageLoader.mm +1 -1
  22. package/Libraries/Image/React-RCTImage.podspec +1 -1
  23. package/Libraries/Interaction/PanResponder.js +1 -1
  24. package/Libraries/LinkingIOS/React-RCTLinking.podspec +1 -1
  25. package/Libraries/NativeAnimation/React-RCTAnimation.podspec +1 -1
  26. package/Libraries/NativeComponent/TVViewConfig.js +1 -0
  27. package/Libraries/Network/React-RCTNetwork.podspec +1 -1
  28. package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +1 -1
  29. package/Libraries/Renderer/README.md +2 -2
  30. package/Libraries/Required/RCTRequired.podspec +1 -1
  31. package/Libraries/Settings/React-RCTSettings.podspec +1 -1
  32. package/Libraries/Text/React-RCTText.podspec +1 -1
  33. package/Libraries/TypeSafety/RCTTypeSafety.podspec +1 -1
  34. package/Libraries/Utilities/PolyfillFunctions.js +1 -1
  35. package/Libraries/Vibration/React-RCTVibration.podspec +1 -1
  36. package/README-core.md +6 -6
  37. package/README.md +13 -1
  38. package/React/Base/RCTVersion.m +2 -2
  39. package/React/CoreModules/React-CoreModules.podspec +1 -1
  40. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +49 -17
  41. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +12 -1
  42. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +34 -5
  43. package/React/React-RCTFBReactNativeSpec.podspec +1 -1
  44. package/React/React-RCTFabric.podspec +1 -1
  45. package/React/Runtime/React-RCTRuntime.podspec +1 -1
  46. package/React/Tests/Mounting/RCTViewComponentViewTests.mm +145 -0
  47. package/React/Views/ScrollView/RCTScrollView.m +1 -1
  48. package/React-Core.podspec +1 -1
  49. package/React.podspec +1 -1
  50. package/ReactAndroid/build.gradle.kts +1 -1
  51. package/ReactAndroid/gradle.properties +1 -1
  52. package/ReactAndroid/hermes-engine/build.gradle.kts +6 -0
  53. package/ReactAndroid/publish.gradle +5 -5
  54. package/ReactAndroid/src/main/AndroidManifest.xml +1 -1
  55. package/ReactAndroid/src/main/java/com/facebook/react/DebugCorePackage.kt +1 -1
  56. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +5 -1
  57. package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.kt +11 -2
  58. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/MessageQueueThreadImpl.kt +5 -1
  59. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDownloader.kt +2 -1
  60. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.kt +99 -9
  61. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DebugOverlayController.kt +8 -2
  62. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/MultipartStreamReader.kt +2 -1
  63. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingsObserver.kt +6 -0
  64. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkHelper.kt +1 -1
  65. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +2 -2
  66. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JavaTimerManager.kt +1 -1
  67. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactAndroidHWInputDeviceHelper.java +1 -0
  68. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.kt +8 -1
  69. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.kt +1 -1
  70. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +3 -3
  71. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/PermissionsModule.kt +17 -3
  72. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +2 -2
  73. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +6 -1
  74. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.kt +1 -1
  75. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +1 -1
  76. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.kt +2 -1
  77. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundDrawable.kt +0 -1
  78. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundImageDrawable.kt +0 -1
  79. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BorderDrawable.kt +0 -1
  80. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/CompositeBackgroundDrawable.kt +4 -1
  81. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/Drawable.kt +30 -0
  82. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/LayerDrawable.kt +32 -0
  83. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/OutlineDrawable.kt +0 -1
  84. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +14 -4
  85. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +14 -4
  86. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +46 -10
  87. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.kt +1 -1
  88. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.kt +12 -2
  89. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.kt +5 -0
  90. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.kt +38 -28
  91. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +23 -8
  92. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.kt +7 -0
  93. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +9 -4
  94. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputLocalData.kt +13 -2
  95. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.kt +2 -2
  96. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.kt +13 -2
  97. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextSelectionWatcher.kt +1 -1
  98. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.kt +11 -2
  99. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.kt +1 -0
  100. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +13 -0
  101. package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnectionWebSocket.cpp +29 -2
  102. package/ReactApple/Libraries/RCTFoundation/RCTDeprecation/RCTDeprecation.podspec +1 -1
  103. package/ReactApple/RCTSwiftUI/RCTSwiftUI.podspec +1 -1
  104. package/ReactApple/RCTSwiftUIWrapper/RCTSwiftUIWrapper.podspec +1 -1
  105. package/ReactCommon/React-Fabric.podspec +1 -1
  106. package/ReactCommon/React-FabricComponents.podspec +1 -1
  107. package/ReactCommon/React-FabricImage.podspec +1 -1
  108. package/ReactCommon/React-Mapbuffer.podspec +1 -1
  109. package/ReactCommon/ReactCommon.podspec +1 -1
  110. package/ReactCommon/callinvoker/React-callinvoker.podspec +1 -1
  111. package/ReactCommon/cxxreact/React-cxxreact.podspec +1 -1
  112. package/ReactCommon/cxxreact/ReactNativeVersion.h +3 -3
  113. package/ReactCommon/hermes/React-hermes.podspec +1 -1
  114. package/ReactCommon/hermes/executor/React-jsitracing.podspec +1 -1
  115. package/ReactCommon/jserrorhandler/React-jserrorhandler.podspec +1 -1
  116. package/ReactCommon/jsi/React-jsi.podspec +1 -1
  117. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +1 -1
  118. package/ReactCommon/jsinspector-modern/InspectorInterfaces.cpp +7 -3
  119. package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +1 -1
  120. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +1 -5
  121. package/ReactCommon/jsinspector-modern/cdp/React-jsinspectorcdp.podspec +1 -1
  122. package/ReactCommon/jsinspector-modern/network/React-jsinspectornetwork.podspec +1 -1
  123. package/ReactCommon/jsinspector-modern/tracing/React-jsinspectortracing.podspec +1 -1
  124. package/ReactCommon/jsitooling/React-jsitooling.podspec +1 -1
  125. package/ReactCommon/logger/React-logger.podspec +1 -1
  126. package/ReactCommon/oscompat/React-oscompat.podspec +1 -1
  127. package/ReactCommon/react/debug/React-debug.podspec +1 -1
  128. package/ReactCommon/react/debug/redbox/JscSafeUrl.h +1 -1
  129. package/ReactCommon/react/featureflags/React-featureflags.podspec +1 -1
  130. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +1 -1
  131. package/ReactCommon/react/nativemodule/core/platform/ios/React-NativeModulesApple.podspec +1 -1
  132. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +1 -1
  133. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +1 -1
  134. package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +1 -1
  135. package/ReactCommon/react/nativemodule/dom/React-domnativemodule.podspec +1 -1
  136. package/ReactCommon/react/nativemodule/featureflags/React-featureflagsnativemodule.podspec +1 -1
  137. package/ReactCommon/react/nativemodule/idlecallbacks/React-idlecallbacksnativemodule.podspec +1 -1
  138. package/ReactCommon/react/nativemodule/intersectionobserver/React-intersectionobservernativemodule.podspec +1 -1
  139. package/ReactCommon/react/nativemodule/microtasks/React-microtasksnativemodule.podspec +1 -1
  140. package/ReactCommon/react/nativemodule/mutationobserver/React-mutationobservernativemodule.podspec +1 -1
  141. package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +1 -1
  142. package/ReactCommon/react/nativemodule/webperformance/React-webperformancenativemodule.podspec +1 -1
  143. package/ReactCommon/react/networking/React-networking.podspec +1 -1
  144. package/ReactCommon/react/performance/cdpmetrics/React-performancecdpmetrics.podspec +1 -1
  145. package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +1 -1
  146. package/ReactCommon/react/renderer/animated/internal/primitives.h +1 -1
  147. package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +7 -0
  148. package/ReactCommon/react/renderer/components/view/BaseViewProps.h +1 -0
  149. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +18 -0
  150. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.h +1 -0
  151. package/ReactCommon/react/renderer/consistency/React-rendererconsistency.podspec +1 -1
  152. package/ReactCommon/react/renderer/css/React-renderercss.podspec +1 -1
  153. package/ReactCommon/react/renderer/debug/React-rendererdebug.podspec +1 -1
  154. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +1 -1
  155. package/ReactCommon/react/renderer/imagemanager/platform/ios/React-ImageManager.podspec +1 -1
  156. package/ReactCommon/react/renderer/mounting/internal/CullingContext.cpp +1 -1
  157. package/ReactCommon/react/renderer/runtimescheduler/React-runtimescheduler.podspec +1 -1
  158. package/ReactCommon/react/runtime/React-RuntimeCore.podspec +1 -1
  159. package/ReactCommon/react/runtime/React-RuntimeHermes.podspec +1 -1
  160. package/ReactCommon/react/runtime/platform/ios/React-RuntimeApple.podspec +1 -1
  161. package/ReactCommon/react/timing/React-timing.podspec +1 -1
  162. package/ReactCommon/react/utils/React-utils.podspec +1 -1
  163. package/ReactCommon/reactperflogger/React-perflogger.podspec +1 -1
  164. package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +1 -1
  165. package/ReactCommon/yoga/Yoga.podspec +2 -2
  166. package/ReactCommon/yoga/yoga/algorithm/AbsoluteLayout.cpp +2 -0
  167. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +11 -7
  168. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.h +2 -0
  169. package/ReactCommon/yoga/yoga/node/Node.cpp +6 -1
  170. package/gradle/libs.versions.toml +1 -1
  171. package/package.json +9 -9
  172. package/scripts/cocoapods/rncore.rb +26 -8
  173. package/scripts/cocoapods/rndependencies.rb +26 -5
  174. package/scripts/cocoapods/spm.rb +1 -1
  175. package/scripts/cocoapods/utils.rb +2 -2
  176. package/scripts/codegen/templates/ReactAppDependencyProvider.podspec.template +1 -1
  177. package/scripts/codegen/templates/ReactCodegen.podspec.template +1 -1
  178. package/scripts/ios-configure-glog.sh +1 -1
  179. package/sdks/hermes-engine/hermes-engine.podspec +6 -1
  180. package/sdks/hermes-engine/hermes-utils.rb +27 -5
  181. package/src/private/types/HostInstance.js +1 -1
  182. package/src/types/globals.d.ts +2 -2
  183. package/third-party-podspecs/RCT-Folly.podspec +1 -1
  184. package/third-party-podspecs/ReactNativeDependencies.podspec +1 -1
  185. package/third-party-podspecs/glog.podspec +1 -1
  186. package/types/public/ReactNativeTVTypes.d.ts +9 -0
  187. package/types/public/ReactNativeTypes.d.ts +2 -2
@@ -212,21 +212,26 @@ public constructor(reactTextViewManagerCallback: ReactTextViewManagerCallback? =
212
212
  // Is used when the width is not known and the text is not boring, ie. if it contains
213
213
  // unicode characters.
214
214
  val hintWidth = ceil(desiredWidth.toDouble()).toInt()
215
- val builder =
216
- StaticLayout.Builder.obtain(text, 0, text.length, textPaint, hintWidth)
217
- .setAlignment(alignment)
218
- .setLineSpacing(0f, 1f)
219
- .setIncludePad(includeFontPadding)
220
- .setBreakStrategy(textBreakStrategy)
221
- .setHyphenationFrequency(hyphenationFrequency)
222
-
223
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
224
- builder.setJustificationMode(justificationMode)
225
- }
226
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
227
- builder.setUseLineSpacingFromFallbacks(true)
215
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
216
+ val builder =
217
+ StaticLayout.Builder.obtain(text, 0, text.length, textPaint, hintWidth)
218
+ .setAlignment(alignment)
219
+ .setLineSpacing(0f, 1f)
220
+ .setIncludePad(includeFontPadding)
221
+ .setBreakStrategy(textBreakStrategy)
222
+ .setHyphenationFrequency(hyphenationFrequency)
223
+
224
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
225
+ builder.setJustificationMode(justificationMode)
226
+ }
227
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
228
+ builder.setUseLineSpacingFromFallbacks(true)
229
+ }
230
+ layout = builder.build()
231
+ } else {
232
+ // StaticLayout.Builder was introduced in API 23 (M); use the legacy constructor below.
233
+ layout = StaticLayout(text, textPaint, hintWidth, alignment, 1f, 0f, includeFontPadding)
228
234
  }
229
- layout = builder.build()
230
235
  } else if (boring != null && (unconstrainedWidth || boring.width <= width)) {
231
236
  // Is used for single-line, boring text when the width is either unknown or bigger
232
237
  // than the width of the text.
@@ -250,22 +255,27 @@ public constructor(reactTextViewManagerCallback: ReactTextViewManagerCallback? =
250
255
  width = ceil(width.toDouble()).toFloat()
251
256
  }
252
257
 
253
- val builder =
254
- StaticLayout.Builder.obtain(text, 0, text.length, textPaint, width.toInt())
255
- .setAlignment(alignment)
256
- .setLineSpacing(0f, 1f)
257
- .setIncludePad(includeFontPadding)
258
- .setBreakStrategy(textBreakStrategy)
259
- .setHyphenationFrequency(hyphenationFrequency)
260
-
261
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
262
- builder.setJustificationMode(justificationMode)
263
- }
258
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
259
+ val builder =
260
+ StaticLayout.Builder.obtain(text, 0, text.length, textPaint, width.toInt())
261
+ .setAlignment(alignment)
262
+ .setLineSpacing(0f, 1f)
263
+ .setIncludePad(includeFontPadding)
264
+ .setBreakStrategy(textBreakStrategy)
265
+ .setHyphenationFrequency(hyphenationFrequency)
266
+
267
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
268
+ builder.setJustificationMode(justificationMode)
269
+ }
264
270
 
265
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
266
- builder.setUseLineSpacingFromFallbacks(true)
271
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
272
+ builder.setUseLineSpacingFromFallbacks(true)
273
+ }
274
+ layout = builder.build()
275
+ } else {
276
+ // StaticLayout.Builder was introduced in API 23 (M); use the legacy constructor below.
277
+ layout = StaticLayout(text, textPaint, width.toInt(), alignment, 1f, 0f, includeFontPadding)
267
278
  }
268
- layout = builder.build()
269
279
  }
270
280
  return layout
271
281
  }
@@ -119,7 +119,10 @@ public class ReactTextView extends AppCompatTextView implements ReactCompoundVie
119
119
 
120
120
  // Defaults for these fields:
121
121
  // https://github.com/aosp-mirror/platform_frameworks_base/blob/master/core/java/android/widget/TextView.java#L1061
122
- setBreakStrategy(Layout.BREAK_STRATEGY_SIMPLE);
122
+ // Break strategies were introduced in API 23 (M).
123
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
124
+ setBreakStrategy(Layout.BREAK_STRATEGY_SIMPLE);
125
+ }
123
126
  setMovementMethod(getDefaultMovementMethod());
124
127
  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
125
128
  setJustificationMode(Layout.JUSTIFICATION_MODE_NONE);
@@ -156,7 +159,10 @@ public class ReactTextView extends AppCompatTextView implements ReactCompoundVie
156
159
  // focus engine from landing on text views when no other views are available
157
160
  setFocusable(View.NOT_FOCUSABLE);
158
161
 
159
- setHyphenationFrequency(Layout.HYPHENATION_FREQUENCY_NONE);
162
+ // Hyphenation frequency was introduced in API 23 (M).
163
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
164
+ setHyphenationFrequency(Layout.HYPHENATION_FREQUENCY_NONE);
165
+ }
160
166
  updateView(); // call after changing ellipsizeLocation in particular
161
167
  }
162
168
 
@@ -375,8 +381,10 @@ public class ReactTextView extends AppCompatTextView implements ReactCompoundVie
375
381
  mMinimumFontSize,
376
382
  mNumberOfLines,
377
383
  getIncludeFontPadding(),
378
- getBreakStrategy(),
379
- getHyphenationFrequency(),
384
+ // Break strategy / hyphenation getters were introduced in API 23 (M); pass a -1
385
+ // sentinel before then (the value is unused by the legacy StaticLayout path).
386
+ (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) ? -1 : getBreakStrategy(),
387
+ (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) ? -1 : getHyphenationFrequency(),
380
388
  // always passing ALIGN_NORMAL here should be fine, since this method doesn't depend on
381
389
  // how exactly lines are aligned, just their width
382
390
  Layout.Alignment.ALIGN_NORMAL,
@@ -405,7 +413,7 @@ public class ReactTextView extends AppCompatTextView implements ReactCompoundVie
405
413
  mContainsImages = update.containsImages();
406
414
  // Android's TextView crashes when it tries to relayout if LayoutParams are
407
415
  // null; explicitly set the LayoutParams to prevent this crash. See:
408
- // https://github.com/facebook/react-native/pull/7011
416
+ // https://github.com/react/react-native/pull/7011
409
417
  if (getLayoutParams() == null) {
410
418
  setLayoutParams(EMPTY_LAYOUT_PARAMS);
411
419
  }
@@ -439,7 +447,8 @@ public class ReactTextView extends AppCompatTextView implements ReactCompoundVie
439
447
  if (nextTextAlign != getGravityHorizontal()) {
440
448
  setGravityHorizontal(nextTextAlign);
441
449
  }
442
- if (getBreakStrategy() != update.getTextBreakStrategy()) {
450
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M
451
+ && getBreakStrategy() != update.getTextBreakStrategy()) {
443
452
  setBreakStrategy(update.getTextBreakStrategy());
444
453
  }
445
454
  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
@@ -660,13 +669,19 @@ public class ReactTextView extends AppCompatTextView implements ReactCompoundVie
660
669
 
661
670
  @Override
662
671
  public void setBreakStrategy(int breakStrategy) {
663
- super.setBreakStrategy(breakStrategy);
672
+ // TextView.setBreakStrategy was introduced in API 23 (M).
673
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
674
+ super.setBreakStrategy(breakStrategy);
675
+ }
664
676
  mShouldAdjustSpannableFontSize = true;
665
677
  }
666
678
 
667
679
  @Override
668
680
  public void setHyphenationFrequency(int hyphenationFrequency) {
669
- super.setHyphenationFrequency(hyphenationFrequency);
681
+ // TextView.setHyphenationFrequency was introduced in API 23 (M).
682
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
683
+ super.setHyphenationFrequency(hyphenationFrequency);
684
+ }
670
685
  mShouldAdjustSpannableFontSize = true;
671
686
  }
672
687
 
@@ -629,6 +629,13 @@ internal object TextLayoutManager {
629
629
  else -> desiredWidth
630
630
  }
631
631
 
632
+ if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
633
+ // StaticLayout.Builder (with break-strategy / hyphenation / ellipsize / maxLines support) was
634
+ // introduced in API 23 (M); fall back to the legacy constructor on older platforms.
635
+ @Suppress("DEPRECATION")
636
+ return StaticLayout(text, paint, layoutWidth, alignment, 1f, 0f, includeFontPadding)
637
+ }
638
+
632
639
  val builder =
633
640
  StaticLayout.Builder.obtain(text, 0, text.length, paint, layoutWidth)
634
641
  .setAlignment(alignment)
@@ -270,7 +270,10 @@ public open class ReactEditText public constructor(context: Context) : AppCompat
270
270
  override fun onDestroyActionMode(mode: ActionMode) = Unit
271
271
  }
272
272
  customSelectionActionModeCallback = customActionModeCallback
273
- customInsertionActionModeCallback = customActionModeCallback
273
+ // setCustomInsertionActionModeCallback was introduced in API 23 (M).
274
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
275
+ customInsertionActionModeCallback = customActionModeCallback
276
+ }
274
277
  }
275
278
 
276
279
  @SuppressLint("ClassImplementsFinalize")
@@ -734,7 +737,9 @@ public open class ReactEditText public constructor(context: Context) : AppCompat
734
737
  }
735
738
  disableTextDiffing = false
736
739
 
737
- if (breakStrategy != reactTextUpdate.textBreakStrategy) {
740
+ // TextView break strategies were introduced in API 23 (M).
741
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M &&
742
+ breakStrategy != reactTextUpdate.textBreakStrategy) {
738
743
  breakStrategy = reactTextUpdate.textBreakStrategy
739
744
  }
740
745
 
@@ -781,7 +786,7 @@ public open class ReactEditText public constructor(context: Context) : AppCompat
781
786
  /**
782
787
  * Remove spans from the SpannableStringBuilder which can be represented by TextAppearance
783
788
  * attributes on the underlying EditText. This works around instability on Samsung devices with
784
- * the presence of spans https://github.com/facebook/react-native/issues/35936 (S318090)
789
+ * the presence of spans https://github.com/react/react-native/issues/35936 (S318090)
785
790
  */
786
791
  private fun stripStyleEquivalentSpans(sb: SpannableStringBuilder) {
787
792
  stripSpansOfKind(sb, ReactAbsoluteSizeSpan::class.java) { span: ReactAbsoluteSizeSpan ->
@@ -1047,7 +1052,7 @@ public open class ReactEditText public constructor(context: Context) : AppCompat
1047
1052
  val selectionEnd = selectionEnd
1048
1053
 
1049
1054
  // Used to ensure that text is selectable inside of removeClippedSubviews
1050
- // See https://github.com/facebook/react-native/issues/6805 for original
1055
+ // See https://github.com/react/react-native/issues/6805 for original
1051
1056
  // fix that was ported to here.
1052
1057
  super.setTextIsSelectable(true)
1053
1058
 
@@ -7,18 +7,26 @@
7
7
 
8
8
  package com.facebook.react.views.textinput
9
9
 
10
+ import android.annotation.TargetApi
11
+ import android.os.Build
12
+ import android.text.Layout
10
13
  import android.text.SpannableStringBuilder
11
14
  import android.util.TypedValue
12
15
  import android.widget.EditText
13
16
 
14
17
  /** Local state bearer for EditText instance. */
18
+ // EditText break-strategy accessors / Layout constants below were added in API 23 (M).
19
+ @TargetApi(Build.VERSION_CODES.M)
15
20
  public class ReactTextInputLocalData(editText: EditText) {
16
21
  private val text = SpannableStringBuilder(editText.text)
17
22
  private val textSize = editText.textSize
18
23
  private val minLines = editText.minLines
19
24
  private val maxLines = editText.maxLines
20
25
  private val inputType = editText.inputType
21
- private val breakStrategy = editText.breakStrategy
26
+ // EditText.getBreakStrategy was introduced in API 23 (M).
27
+ private val breakStrategy =
28
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) editText.breakStrategy
29
+ else Layout.BREAK_STRATEGY_SIMPLE
22
30
  private val placeholder: CharSequence? = editText.hint
23
31
 
24
32
  public fun apply(editText: EditText) {
@@ -28,6 +36,9 @@ public class ReactTextInputLocalData(editText: EditText) {
28
36
  editText.maxLines = maxLines
29
37
  editText.inputType = inputType
30
38
  editText.hint = placeholder
31
- editText.breakStrategy = breakStrategy
39
+ // EditText.setBreakStrategy was introduced in API 23 (M).
40
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
41
+ editText.breakStrategy = breakStrategy
42
+ }
32
43
  }
33
44
  }
@@ -414,7 +414,7 @@ public open class ReactTextInputManager public constructor() :
414
414
  return
415
415
  }
416
416
 
417
- // Based on https://github.com/facebook/react-native/pull/31007
417
+ // Based on https://github.com/react/react-native/pull/31007
418
418
  if (Build.VERSION.SDK_INT == Build.VERSION_CODES.P) {
419
419
  return
420
420
  }
@@ -770,7 +770,7 @@ public open class ReactTextInputManager public constructor() :
770
770
  // crash happens when focusing on a email EditText, during which a prompt will be triggered
771
771
  // but
772
772
  // the system fail to locate it properly. Here is an example post discussing about this
773
- // issue: https://github.com/facebook/react-native/issues/27204
773
+ // issue: https://github.com/react/react-native/issues/27204
774
774
  if (shouldHideCursorForEmailTextInput()) {
775
775
  view.isCursorVisible = false
776
776
  }
@@ -10,6 +10,8 @@
10
10
  package com.facebook.react.views.textinput
11
11
 
12
12
  import android.annotation.SuppressLint
13
+ import android.annotation.TargetApi
14
+ import android.os.Build
13
15
  import android.text.Layout
14
16
  import android.util.TypedValue
15
17
  import android.view.ViewGroup
@@ -43,6 +45,8 @@ import com.facebook.yoga.YogaNode
43
45
  message = "This class is part of Legacy Architecture and will be removed in a future release",
44
46
  level = DeprecationLevel.WARNING,
45
47
  )
48
+ // Break-strategy Layout constants / EditText break-strategy accessors were added in API 23 (M).
49
+ @TargetApi(Build.VERSION_CODES.M)
46
50
  internal class ReactTextInputShadowNode
47
51
  @JvmOverloads
48
52
  constructor(reactTextViewManagerCallback: ReactTextViewManagerCallback? = null) :
@@ -67,7 +71,8 @@ constructor(reactTextViewManagerCallback: ReactTextViewManagerCallback? = null)
67
71
  }
68
72
 
69
73
  init {
70
- textBreakStrategy = Layout.BREAK_STRATEGY_HIGH_QUALITY
74
+ textBreakStrategy =
75
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) Layout.BREAK_STRATEGY_HIGH_QUALITY else 0
71
76
  setMeasureFunction(this)
72
77
  }
73
78
 
@@ -122,8 +127,10 @@ constructor(reactTextViewManagerCallback: ReactTextViewManagerCallback? = null)
122
127
  editText.setLines(numberOfLines)
123
128
  }
124
129
 
130
+ // EditText break-strategy accessors were introduced in API 23 (M).
125
131
  @SuppressLint("WrongConstant")
126
- if (editText.breakStrategy != textBreakStrategy) {
132
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M &&
133
+ editText.breakStrategy != textBreakStrategy) {
127
134
  editText.breakStrategy = textBreakStrategy
128
135
  }
129
136
  }
@@ -156,6 +163,10 @@ constructor(reactTextViewManagerCallback: ReactTextViewManagerCallback? = null)
156
163
  }
157
164
 
158
165
  override fun setTextBreakStrategy(textBreakStrategy: String?) {
166
+ // Layout break strategies were introduced in API 23 (M); they are unused before then.
167
+ if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
168
+ return
169
+ }
159
170
  when (textBreakStrategy) {
160
171
  null,
161
172
  "simple" -> this.textBreakStrategy = Layout.BREAK_STRATEGY_SIMPLE
@@ -30,7 +30,7 @@ internal class ReactTextSelectionWatcher(private val editText: ReactEditText) :
30
30
  // forward it on if we have new values
31
31
 
32
32
  // Apparently Android might call this with an end value that is less than the start value
33
- // Lets normalize them. See https://github.com/facebook/react-native/issues/18579
33
+ // Lets normalize them. See https://github.com/react/react-native/issues/18579
34
34
  val realStart = min(start.toDouble(), end.toDouble()).toInt()
35
35
  val realEnd = max(start.toDouble(), end.toDouble()).toInt()
36
36
 
@@ -14,6 +14,7 @@ import android.graphics.Color
14
14
  import android.graphics.drawable.ColorDrawable
15
15
  import android.graphics.drawable.Drawable
16
16
  import android.graphics.drawable.RippleDrawable
17
+ import android.os.Build
17
18
  import android.util.TypedValue
18
19
  import com.facebook.react.bridge.JSApplicationIllegalArgumentException
19
20
  import com.facebook.react.bridge.ReadableMap
@@ -83,7 +84,10 @@ public object ReactDrawableHelper {
83
84
  private fun setRadius(drawableDescriptionDict: ReadableMap, drawable: Drawable?): Drawable? {
84
85
  if (drawableDescriptionDict.hasKey("rippleRadius") && drawable is RippleDrawable) {
85
86
  val rippleRadius = drawableDescriptionDict.getDouble("rippleRadius")
86
- drawable.radius = PixelUtil.toPixelFromDIP(rippleRadius).toInt()
87
+ // RippleDrawable.setRadius was introduced in API 23 (M).
88
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
89
+ drawable.radius = PixelUtil.toPixelFromDIP(rippleRadius).toInt()
90
+ }
87
91
  }
88
92
  return drawable
89
93
  }
@@ -102,7 +106,12 @@ public object ReactDrawableHelper {
102
106
  true,
103
107
  )
104
108
  ) {
105
- context.resources.getColor(resolveOutValue.resourceId, context.theme)
109
+ // Resources.getColor(int, Theme) was introduced in API 23 (M).
110
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
111
+ context.resources.getColor(resolveOutValue.resourceId, context.theme)
112
+ } else {
113
+ @Suppress("DEPRECATION") context.resources.getColor(resolveOutValue.resourceId)
114
+ }
106
115
  } else {
107
116
  throw JSApplicationIllegalArgumentException(
108
117
  "Attribute colorControlHighlight couldn't be resolved into a drawable"
@@ -174,6 +174,7 @@ public open class ReactViewGroup public constructor(context: Context?) :
174
174
  private var onInterceptTouchEventListener: OnInterceptTouchEventListener? = null
175
175
  private var needsOffscreenAlphaCompositing = false
176
176
  public var scrollSnapAlign: String? = null
177
+ public var scrollSnapOffset: Int? = null
177
178
  private var backfaceOpacity = 0f
178
179
  private var backfaceVisible = false
179
180
  private var childrenRemovedWhileTransitioning: MutableSet<Int>? = null
@@ -8,9 +8,11 @@
8
8
  package com.facebook.react.views.view
9
9
 
10
10
  import android.accessibilityservice.AccessibilityServiceInfo
11
+ import android.annotation.TargetApi
11
12
  import android.content.Context
12
13
  import android.content.pm.PackageManager
13
14
  import android.graphics.Rect
15
+ import android.os.Build
14
16
  import android.view.View
15
17
  import android.view.View.OnFocusChangeListener
16
18
  import android.view.ViewGroup
@@ -195,6 +197,11 @@ public open class ReactViewManager : ReactClippingViewManager<ReactViewGroup>()
195
197
  view.scrollSnapAlign = value
196
198
  }
197
199
 
200
+ @ReactProp(name = "scrollSnapOffset", defaultFloat = Float.NaN)
201
+ public open fun setScrollSnapOffset(view: ReactViewGroup, value: Float) {
202
+ view.scrollSnapOffset = if (value.isNaN()) null else value.dpToPx().toInt()
203
+ }
204
+
198
205
  @ReactProp(name = ViewProps.BACKGROUND_IMAGE, customType = "BackgroundImage")
199
206
  public open fun setBackgroundImage(view: ReactViewGroup, backgroundImage: ReadableArray?) {
200
207
  if (ViewUtil.getUIManagerType(view) == UIManagerType.FABRIC) {
@@ -390,7 +397,13 @@ public open class ReactViewManager : ReactClippingViewManager<ReactViewGroup>()
390
397
  }
391
398
 
392
399
  @ReactProp(name = "nativeForegroundAndroid")
400
+ @TargetApi(Build.VERSION_CODES.M)
393
401
  public open fun setNativeForeground(view: ReactViewGroup, foreground: ReadableMap?) {
402
+ // ReactViewGroup extends ViewGroup (not FrameLayout), so View.setForeground crashes before
403
+ // API 23 (M). Treat it as a no-op on older platforms.
404
+ if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
405
+ return
406
+ }
394
407
  view.foreground =
395
408
  foreground?.let { ReactDrawableHelper.createDrawableFromJSDescription(view.context, it) }
396
409
  }
@@ -5,6 +5,8 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
+ #include <fbjni/ByteBuffer.h>
9
+
8
10
  #include "JCxxInspectorPackagerConnectionWebSocket.h"
9
11
 
10
12
  using namespace facebook::jni;
@@ -12,10 +14,35 @@ using namespace facebook::react::jsinspector_modern;
12
14
 
13
15
  namespace facebook::react::jsinspector_modern {
14
16
 
17
+ namespace {
18
+
19
+ local_ref<JByteBuffer::javaobject> getReadOnlyByteBufferFromStringView(
20
+ std::string_view sv) {
21
+ auto buffer = JByteBuffer::wrapBytes(
22
+ const_cast<uint8_t*>(reinterpret_cast<const uint8_t*>(sv.data())),
23
+ sv.size());
24
+
25
+ /**
26
+ * Return a read-only buffer that shares the underlying contents.
27
+ * This guards from accidential mutations on the Java side, since we did
28
+ * casting above.
29
+ *
30
+ * https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html#asReadOnlyBuffer--
31
+ */
32
+ static auto method =
33
+ buffer->javaClassStatic()->getMethod<JByteBuffer::javaobject()>(
34
+ "asReadOnlyBuffer");
35
+ return method(buffer);
36
+ }
37
+
38
+ } // namespace
39
+
15
40
  void JCxxInspectorPackagerConnectionWebSocket::send(std::string_view message) {
16
41
  static auto method =
17
- javaClassStatic()->getMethod<void(const std::string&)>("send");
18
- method(self(), std::string(message));
42
+ javaClassStatic()->getMethod<void(local_ref<JByteBuffer::javaobject>)>(
43
+ "send");
44
+ auto byteBuffer = getReadOnlyByteBufferFromStringView(message);
45
+ method(self(), byteBuffer);
19
46
  }
20
47
 
21
48
  void JCxxInspectorPackagerConnectionWebSocket::close() {
@@ -14,7 +14,7 @@ Pod::Spec.new do |s|
14
14
  s.author = "Meta Platforms, Inc. and its affiliates"
15
15
  s.license = package["license"]
16
16
  s.homepage = "https://reactnative.dev/"
17
- s.source = { :git => 'https://github.com/facebook/react-native.git', :tag => 'v#{version}' }
17
+ s.source = { :git => 'https://github.com/react/react-native.git', :tag => 'v#{version}' }
18
18
  s.summary = "Macros for marking APIs as deprecated"
19
19
  s.source_files = podspec_sources(["Exported/*.h", "RCTDeprecation.m"], "Exported/*.h")
20
20
  s.pod_target_xcconfig = {
@@ -8,7 +8,7 @@ require "json"
8
8
  package = JSON.parse(File.read(File.join(__dir__, "..", "..", "package.json")))
9
9
  version = package['version']
10
10
 
11
- source = { :git => 'https://github.com/facebook/react-native.git' }
11
+ source = { :git => 'https://github.com/react/react-native.git' }
12
12
  if version == '1000.0.0'
13
13
  # This is an unpublished version, use the latest commit hash of the react-native repo, which we're presumably in.
14
14
  source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")
@@ -8,7 +8,7 @@ require "json"
8
8
  package = JSON.parse(File.read(File.join(__dir__, "..", "..", "package.json")))
9
9
  version = package['version']
10
10
 
11
- source = { :git => 'https://github.com/facebook/react-native.git' }
11
+ source = { :git => 'https://github.com/react/react-native.git' }
12
12
  if version == '1000.0.0'
13
13
  # This is an unpublished version, use the latest commit hash of the react-native repo, which we're presumably in.
14
14
  source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")
@@ -8,7 +8,7 @@ require "json"
8
8
  package = JSON.parse(File.read(File.join(__dir__, "..", "package.json")))
9
9
  version = package['version']
10
10
 
11
- source = { :git => 'https://github.com/facebook/react-native.git' }
11
+ source = { :git => 'https://github.com/react/react-native.git' }
12
12
  if version == '1000.0.0'
13
13
  # This is an unpublished version, use the latest commit hash of the react-native repo, which we’re presumably in.
14
14
  source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")
@@ -8,7 +8,7 @@ require "json"
8
8
  package = JSON.parse(File.read(File.join(__dir__, "..", "package.json")))
9
9
  version = package['version']
10
10
 
11
- source = { :git => 'https://github.com/facebook/react-native.git' }
11
+ source = { :git => 'https://github.com/react/react-native.git' }
12
12
  if version == '1000.0.0'
13
13
  # This is an unpublished version, use the latest commit hash of the react-native repo, which we’re presumably in.
14
14
  source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")
@@ -8,7 +8,7 @@ require "json"
8
8
  package = JSON.parse(File.read(File.join(__dir__, "..", "package.json")))
9
9
  version = package['version']
10
10
 
11
- source = { :git => 'https://github.com/facebook/react-native.git' }
11
+ source = { :git => 'https://github.com/react/react-native.git' }
12
12
  if version == '1000.0.0'
13
13
  # This is an unpublished version, use the latest commit hash of the react-native repo, which we’re presumably in.
14
14
  source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")
@@ -8,7 +8,7 @@ require "json"
8
8
  package = JSON.parse(File.read(File.join(__dir__, "..", "package.json")))
9
9
  version = package['version']
10
10
 
11
- source = { :git => 'https://github.com/facebook/react-native.git' }
11
+ source = { :git => 'https://github.com/react/react-native.git' }
12
12
  if version == '1000.0.0'
13
13
  # This is an unpublished version, use the latest commit hash of the react-native repo, which we’re presumably in.
14
14
  source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")
@@ -8,7 +8,7 @@ require "json"
8
8
  package = JSON.parse(File.read(File.join(__dir__, "..", "package.json")))
9
9
  version = package['version']
10
10
 
11
- source = { :git => 'https://github.com/facebook/react-native.git' }
11
+ source = { :git => 'https://github.com/react/react-native.git' }
12
12
  if version == '1000.0.0'
13
13
  # This is an unpublished version, use the latest commit hash of the react-native repo, which we’re presumably in.
14
14
  source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")
@@ -8,7 +8,7 @@ require "json"
8
8
  package = JSON.parse(File.read(File.join(__dir__, "..", "..", "package.json")))
9
9
  version = package['version']
10
10
 
11
- source = { :git => 'https://github.com/facebook/react-native.git' }
11
+ source = { :git => 'https://github.com/react/react-native.git' }
12
12
  if version == '1000.0.0'
13
13
  # This is an unpublished version, use the latest commit hash of the react-native repo, which we’re presumably in.
14
14
  source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")
@@ -9,7 +9,7 @@ require "json"
9
9
  package = JSON.parse(File.read(File.join(__dir__, "..", "..", "package.json")))
10
10
  version = package['version']
11
11
 
12
- source = { :git => 'https://github.com/facebook/react-native.git' }
12
+ source = { :git => 'https://github.com/react/react-native.git' }
13
13
  if version == '1000.0.0'
14
14
  # This is an unpublished version, use the latest commit hash of the react-native repo, which we’re presumably in.
15
15
  source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")
@@ -14,15 +14,15 @@
14
14
 
15
15
  #define REACT_NATIVE_VERSION_MAJOR 0
16
16
  #define REACT_NATIVE_VERSION_MINOR 83
17
- #define REACT_NATIVE_VERSION_PATCH 9
17
+ #define REACT_NATIVE_VERSION_PATCH 10
18
18
 
19
19
  namespace facebook::react {
20
20
 
21
21
  constexpr struct {
22
22
  int32_t Major = 0;
23
23
  int32_t Minor = 83;
24
- int32_t Patch = 9;
25
- std::string_view Prerelease = "0";
24
+ int32_t Patch = 10;
25
+ std::string_view Prerelease = "1";
26
26
  } ReactNativeVersion;
27
27
 
28
28
  } // namespace facebook::react
@@ -9,7 +9,7 @@ require "json"
9
9
  package = JSON.parse(File.read(File.join(__dir__, "..", "..", "package.json")))
10
10
  version = package['version']
11
11
 
12
- source = { :git => 'https://github.com/facebook/react-native.git' }
12
+ source = { :git => 'https://github.com/react/react-native.git' }
13
13
  if version == '1000.0.0'
14
14
  # This is an unpublished version, use the latest commit hash of the react-native repo, which we’re presumably in.
15
15
  source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")
@@ -8,7 +8,7 @@ require "json"
8
8
  package = JSON.parse(File.read(File.join(__dir__, "../../..", "package.json")))
9
9
  version = package['version']
10
10
 
11
- source = { :git => 'https://github.com/facebook/react-native.git' }
11
+ source = { :git => 'https://github.com/react/react-native.git' }
12
12
  if version == '1000.0.0'
13
13
  # This is an unpublished version, use the latest commit hash of the react-native repo, which we’re presumably in.
14
14
  source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")
@@ -8,7 +8,7 @@ require "json"
8
8
  package = JSON.parse(File.read(File.join(__dir__, "..", "..", "package.json")))
9
9
  version = package['version']
10
10
 
11
- source = { :git => 'https://github.com/facebook/react-native.git' }
11
+ source = { :git => 'https://github.com/react/react-native.git' }
12
12
  if version == '1000.0.0'
13
13
  # This is an unpublished version, use the latest commit hash of the react-native repo, which we’re presumably in.
14
14
  source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")
@@ -8,7 +8,7 @@ require "json"
8
8
  package = JSON.parse(File.read(File.join(__dir__, "..", "..", "package.json")))
9
9
  version = package['version']
10
10
 
11
- source = { :git => 'https://github.com/facebook/react-native.git' }
11
+ source = { :git => 'https://github.com/react/react-native.git' }
12
12
  if version == '1000.0.0'
13
13
  # This is an unpublished version, use the latest commit hash of the react-native repo, which we’re presumably in.
14
14
  source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")