expo 54.0.0-canary-20250729-d8899ae → 54.0.0-canary-20250826-f475166

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 (84) hide show
  1. package/android/build.gradle +2 -2
  2. package/android/src/main/java/expo/modules/ExpoReactHostFactory.kt +1 -7
  3. package/android/src/main/java/expo/modules/ReactActivityDelegateWrapper.kt +33 -8
  4. package/android/src/main/java/expo/modules/ReactNativeHostWrapper.kt +0 -5
  5. package/android/src/test/resources/robolectric.properties +1 -0
  6. package/build/Expo.d.ts +9 -1
  7. package/build/Expo.d.ts.map +1 -1
  8. package/build/async-require/fetchAsync.native.d.ts.map +1 -1
  9. package/build/winter/fetch/FetchResponse.d.ts +2 -2
  10. package/build/winter/fetch/FetchResponse.d.ts.map +1 -1
  11. package/build/winter/fetch/NativeRequest.d.ts +1 -1
  12. package/build/winter/fetch/NativeRequest.d.ts.map +1 -1
  13. package/build/winter/installGlobal.d.ts +25 -0
  14. package/build/winter/installGlobal.d.ts.map +1 -0
  15. package/bundledNativeModules.json +97 -97
  16. package/devtools.d.ts +1 -1
  17. package/devtools.js +1 -1
  18. package/internal/babel-preset.d.ts +2 -0
  19. package/internal/babel-preset.js +2 -0
  20. package/internal/install-global.d.ts +2 -0
  21. package/internal/install-global.js +5 -0
  22. package/internal/unstable-autolinking-exports.d.ts +2 -0
  23. package/internal/unstable-autolinking-exports.js +2 -0
  24. package/internal/unstable-expo-updates-cli-exports.d.ts +2 -0
  25. package/internal/unstable-expo-updates-cli-exports.js +2 -0
  26. package/ios/AppDelegates/ExpoReactNativeFactory.swift +14 -1
  27. package/ios/AppDelegates/ExpoReactNativeFactoryDelegate.swift +1 -1
  28. package/ios/AppDelegates/RCTAppDelegateUmbrella.h +5 -0
  29. package/package.json +29 -28
  30. package/src/Expo.ts +4 -0
  31. package/src/async-require/fetchAsync.native.ts +48 -10
  32. package/src/async-require/messageSocket.native.ts +0 -3
  33. package/src/winter/__tests__/structuredClone.test.ios.ts +27 -0
  34. package/src/winter/fetch/FetchResponse.ts +4 -4
  35. package/src/winter/fetch/NativeRequest.ts +1 -1
  36. package/src/winter/fetch/__tests__/RequestUtils-test.ts +7 -7
  37. package/src/winter/installGlobal.ts +109 -0
  38. package/src/winter/runtime.native.ts +4 -20
  39. package/template.tgz +0 -0
  40. package/build/devtools/DevToolsPluginClient.d.ts +0 -72
  41. package/build/devtools/DevToolsPluginClient.d.ts.map +0 -1
  42. package/build/devtools/DevToolsPluginClientFactory.d.ts +0 -16
  43. package/build/devtools/DevToolsPluginClientFactory.d.ts.map +0 -1
  44. package/build/devtools/DevToolsPluginClientImplApp.d.ts +0 -15
  45. package/build/devtools/DevToolsPluginClientImplApp.d.ts.map +0 -1
  46. package/build/devtools/DevToolsPluginClientImplBrowser.d.ts +0 -14
  47. package/build/devtools/DevToolsPluginClientImplBrowser.d.ts.map +0 -1
  48. package/build/devtools/MessageFramePacker.d.ts +0 -50
  49. package/build/devtools/MessageFramePacker.d.ts.map +0 -1
  50. package/build/devtools/ProtocolVersion.d.ts +0 -7
  51. package/build/devtools/ProtocolVersion.d.ts.map +0 -1
  52. package/build/devtools/WebSocketBackingStore.d.ts +0 -10
  53. package/build/devtools/WebSocketBackingStore.d.ts.map +0 -1
  54. package/build/devtools/WebSocketWithReconnect.d.ts +0 -81
  55. package/build/devtools/WebSocketWithReconnect.d.ts.map +0 -1
  56. package/build/devtools/devtools.types.d.ts +0 -42
  57. package/build/devtools/devtools.types.d.ts.map +0 -1
  58. package/build/devtools/getConnectionInfo.d.ts +0 -6
  59. package/build/devtools/getConnectionInfo.d.ts.map +0 -1
  60. package/build/devtools/getConnectionInfo.native.d.ts +0 -6
  61. package/build/devtools/getConnectionInfo.native.d.ts.map +0 -1
  62. package/build/devtools/index.d.ts +0 -12
  63. package/build/devtools/index.d.ts.map +0 -1
  64. package/build/devtools/logger.d.ts +0 -6
  65. package/build/devtools/logger.d.ts.map +0 -1
  66. package/src/devtools/DevToolsPluginClient.ts +0 -240
  67. package/src/devtools/DevToolsPluginClientFactory.ts +0 -73
  68. package/src/devtools/DevToolsPluginClientImplApp.ts +0 -56
  69. package/src/devtools/DevToolsPluginClientImplBrowser.ts +0 -38
  70. package/src/devtools/MessageFramePacker.ts +0 -235
  71. package/src/devtools/ProtocolVersion.ts +0 -6
  72. package/src/devtools/WebSocketBackingStore.ts +0 -10
  73. package/src/devtools/WebSocketWithReconnect.ts +0 -318
  74. package/src/devtools/__tests__/DevToolsPluginClient-test.ts +0 -285
  75. package/src/devtools/__tests__/DevToolsPluginClientFactory-test.ts +0 -120
  76. package/src/devtools/__tests__/MessageFramePack-test.node.ts +0 -157
  77. package/src/devtools/__tests__/MockWebSocket.ts +0 -100
  78. package/src/devtools/__tests__/WebSocketWithReconnect-test.node.ts +0 -184
  79. package/src/devtools/__tests__/logger-test.ts +0 -20
  80. package/src/devtools/devtools.types.ts +0 -50
  81. package/src/devtools/getConnectionInfo.native.ts +0 -18
  82. package/src/devtools/getConnectionInfo.ts +0 -16
  83. package/src/devtools/index.ts +0 -53
  84. package/src/devtools/logger.ts +0 -29
@@ -32,7 +32,7 @@ buildscript {
32
32
  def reactNativeVersion = project.extensions.getByType(ExpoModuleExtension).reactNativeVersion
33
33
 
34
34
  group = 'host.exp.exponent'
35
- version = '54.0.0-canary-20250729-d8899ae'
35
+ version = '54.0.0-canary-20250826-f475166'
36
36
 
37
37
  expoModule {
38
38
  // We can't prebuild the module because it depends on the generated files.
@@ -43,7 +43,7 @@ android {
43
43
  namespace "expo.core"
44
44
  defaultConfig {
45
45
  versionCode 1
46
- versionName "54.0.0-canary-20250729-d8899ae"
46
+ versionName "54.0.0-canary-20250826-f475166"
47
47
  consumerProguardFiles("proguard-rules.pro")
48
48
  }
49
49
  testOptions {
@@ -3,7 +3,6 @@
3
3
  package expo.modules
4
4
 
5
5
  import android.content.Context
6
- import com.facebook.react.JSEngineResolutionAlgorithm
7
6
  import com.facebook.react.ReactHost
8
7
  import com.facebook.react.ReactInstanceEventListener
9
8
  import com.facebook.react.ReactNativeHost
@@ -16,7 +15,6 @@ import com.facebook.react.defaults.DefaultComponentsRegistry
16
15
  import com.facebook.react.defaults.DefaultTurboModuleManagerDelegate
17
16
  import com.facebook.react.fabric.ComponentFactory
18
17
  import com.facebook.react.runtime.BindingsInstaller
19
- import com.facebook.react.runtime.JSCInstance
20
18
  import com.facebook.react.runtime.JSRuntimeFactory
21
19
  import com.facebook.react.runtime.ReactHostDelegate
22
20
  import com.facebook.react.runtime.ReactHostImpl
@@ -58,11 +56,7 @@ object ExpoReactHostFactory {
58
56
  get() = reactNativeHostWrapper.jsMainModuleName
59
57
 
60
58
  override val jsRuntimeFactory: JSRuntimeFactory
61
- get() = if (reactNativeHostWrapper.jsEngineResolutionAlgorithm == JSEngineResolutionAlgorithm.HERMES) {
62
- HermesInstance()
63
- } else {
64
- JSCInstance()
65
- }
59
+ get() = HermesInstance()
66
60
 
67
61
  override val reactPackages: List<ReactPackage>
68
62
  get() = reactNativeHostWrapper.packages
@@ -12,6 +12,7 @@ import android.os.Bundle
12
12
  import android.util.Log
13
13
  import android.view.KeyEvent
14
14
  import android.view.ViewGroup
15
+ import android.view.Window
15
16
  import androidx.annotation.VisibleForTesting
16
17
  import androidx.collection.ArrayMap
17
18
  import androidx.lifecycle.lifecycleScope
@@ -155,6 +156,11 @@ class ReactActivityDelegateWrapper(
155
156
  activity.window.colorMode = ActivityInfo.COLOR_MODE_WIDE_COLOR_GAMUT
156
157
  }
157
158
 
159
+ val edgeToEdgeEnabled = invokeWindowUtilKtMethod<Boolean>("isEdgeToEdgeFeatureFlagOn") ?: true
160
+ if (edgeToEdgeEnabled) {
161
+ invokeWindowUtilKtMethod<Unit>("enableEdgeToEdge", Pair(Window::class.java, plainActivity.window))
162
+ }
163
+
158
164
  val launchOptions = composeLaunchOptions()
159
165
  val reactDelegate: ReactDelegate
160
166
  if (ReactNativeFeatureFlags.enableBridgelessArchitecture) {
@@ -172,7 +178,7 @@ class ReactActivityDelegateWrapper(
172
178
  launchOptions,
173
179
  isFabricEnabled
174
180
  ) {
175
- override fun createRootView(): ReactRootView {
181
+ override fun createRootView(): ReactRootView? {
176
182
  return this@ReactActivityDelegateWrapper.createRootView() ?: super.createRootView()
177
183
  }
178
184
  }
@@ -292,7 +298,7 @@ class ReactActivityDelegateWrapper(
292
298
  }
293
299
  }
294
300
 
295
- override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean {
301
+ override fun onKeyDown(keyCode: Int, event: KeyEvent): Boolean {
296
302
  if (!loadAppReady.isCompleted) {
297
303
  return false
298
304
  }
@@ -303,7 +309,7 @@ class ReactActivityDelegateWrapper(
303
309
  .fold(false) { accu, current -> accu || current } || delegate.onKeyDown(keyCode, event)
304
310
  }
305
311
 
306
- override fun onKeyUp(keyCode: Int, event: KeyEvent?): Boolean {
312
+ override fun onKeyUp(keyCode: Int, event: KeyEvent): Boolean {
307
313
  if (!loadAppReady.isCompleted) {
308
314
  return false
309
315
  }
@@ -314,7 +320,7 @@ class ReactActivityDelegateWrapper(
314
320
  .fold(false) { accu, current -> accu || current } || delegate.onKeyUp(keyCode, event)
315
321
  }
316
322
 
317
- override fun onKeyLongPress(keyCode: Int, event: KeyEvent?): Boolean {
323
+ override fun onKeyLongPress(keyCode: Int, event: KeyEvent): Boolean {
318
324
  if (!loadAppReady.isCompleted) {
319
325
  return false
320
326
  }
@@ -354,14 +360,14 @@ class ReactActivityDelegateWrapper(
354
360
  }
355
361
  }
356
362
 
357
- override fun requestPermissions(permissions: Array<out String>?, requestCode: Int, listener: PermissionListener?) {
363
+ override fun requestPermissions(permissions: Array<out String>, requestCode: Int, listener: PermissionListener?) {
358
364
  launchLifecycleScopeWithLock {
359
365
  loadAppReady.await()
360
366
  delegate.requestPermissions(permissions, requestCode, listener)
361
367
  }
362
368
  }
363
369
 
364
- override fun onRequestPermissionsResult(requestCode: Int, permissions: Array<out String>?, grantResults: IntArray?) {
370
+ override fun onRequestPermissionsResult(requestCode: Int, permissions: Array<out String>, grantResults: IntArray) {
365
371
  launchLifecycleScopeWithLock {
366
372
  loadAppReady.await()
367
373
  delegate.onRequestPermissionsResult(requestCode, permissions, grantResults)
@@ -388,7 +394,7 @@ class ReactActivityDelegateWrapper(
388
394
  return invokeDelegateMethod("composeLaunchOptions")
389
395
  }
390
396
 
391
- override fun onConfigurationChanged(newConfig: Configuration?) {
397
+ override fun onConfigurationChanged(newConfig: Configuration) {
392
398
  launchLifecycleScopeWithLock {
393
399
  loadAppReady.await()
394
400
  delegate.onConfigurationChanged(newConfig)
@@ -426,6 +432,25 @@ class ReactActivityDelegateWrapper(
426
432
  return method!!.invoke(delegate, *args) as T
427
433
  }
428
434
 
435
+ private inline fun <reified T> invokeWindowUtilKtMethod(
436
+ methodName: String,
437
+ vararg args: Pair<Class<*>, Any?>
438
+ ): T? {
439
+ val windowUtilClassName = "com.facebook.react.views.view.WindowUtilKt"
440
+
441
+ return runCatching {
442
+ val windowUtilKtClass = Class.forName(windowUtilClassName)
443
+ val parameterTypes = args.map { it.first }.toTypedArray()
444
+ val parameterValues = args.map { it.second }.toTypedArray()
445
+ val method = windowUtilKtClass.getDeclaredMethod(methodName, *parameterTypes)
446
+
447
+ method.isAccessible = true
448
+ method.invoke(null, *parameterValues) as? T
449
+ }.onFailure {
450
+ Log.e(TAG, "Failed to invoke '$methodName' on $windowUtilClassName", it)
451
+ }.getOrNull()
452
+ }
453
+
429
454
  private suspend fun loadAppImpl(appKey: String?, supportsDelayLoad: Boolean) {
430
455
  // Give modules a chance to wrap the ReactRootView in a container ViewGroup. If some module
431
456
  // wants to do this, we override the functionality of `loadApp` and call `setContentView` with
@@ -438,7 +463,7 @@ class ReactActivityDelegateWrapper(
438
463
  mReactDelegate.isAccessible = true
439
464
  val reactDelegate = mReactDelegate[delegate] as ReactDelegate
440
465
 
441
- reactDelegate.loadApp(appKey)
466
+ reactDelegate.loadApp(requireNotNull(appKey))
442
467
  val reactRootView = reactDelegate.reactRootView
443
468
  (reactRootView?.parent as? ViewGroup)?.removeView(reactRootView)
444
469
  rootViewContainer.addView(reactRootView, ViewGroup.LayoutParams.MATCH_PARENT)
@@ -2,7 +2,6 @@ package expo.modules
2
2
 
3
3
  import android.app.Application
4
4
  import android.content.Context
5
- import com.facebook.react.JSEngineResolutionAlgorithm
6
5
  import com.facebook.react.ReactHost
7
6
  import com.facebook.react.ReactNativeHost
8
7
  import com.facebook.react.ReactPackageTurboModuleManagerDelegate
@@ -31,10 +30,6 @@ class ReactNativeHostWrapper(
31
30
  return invokeDelegateMethod("getUIManagerProvider")
32
31
  }
33
32
 
34
- public override fun getJSEngineResolutionAlgorithm(): JSEngineResolutionAlgorithm? {
35
- return invokeDelegateMethod("getJSEngineResolutionAlgorithm")
36
- }
37
-
38
33
  override fun getShouldRequireActivity(): Boolean {
39
34
  return host.shouldRequireActivity
40
35
  }
package/build/Expo.d.ts CHANGED
@@ -3,6 +3,14 @@ export { disableErrorHandling } from './errors/ExpoErrorManager';
3
3
  export { default as registerRootComponent } from './launch/registerRootComponent';
4
4
  export { isRunningInExpoGo, getExpoGoProjectConfig } from './environment/ExpoGo';
5
5
  export { EventEmitter, SharedObject, SharedRef, NativeModule, requireNativeModule, requireOptionalNativeModule, requireNativeViewManager as requireNativeView, registerWebModule, reloadAppAsync, } from 'expo-modules-core';
6
- export type { SharedRef as SharedRefType, EventEmitter as EventEmitterType, NativeModule as NativeModuleType, SharedObject as SharedObjectType, } from 'expo-modules-core/types';
6
+ export type {
7
+ /** @deprecated Move to `SharedRef` with a type-only import instead */
8
+ SharedRef as SharedRefType,
9
+ /** @deprecated Move to `EventEmitter` with a type-only import instead */
10
+ EventEmitter as EventEmitterType,
11
+ /** @deprecated Move to `NativeModule` with a type-only import instead */
12
+ NativeModule as NativeModuleType,
13
+ /** @deprecated Move to `SharedObject` with a type-only import instead */
14
+ SharedObject as SharedObjectType, } from 'expo-modules-core/types';
7
15
  export { useEvent, useEventListener } from './hooks/useEvent';
8
16
  //# sourceMappingURL=Expo.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Expo.d.ts","sourceRoot":"","sources":["../src/Expo.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,CAAC;AAEnB,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAElF,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAEjF,OAAO,EAEL,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,YAAY,EAGZ,mBAAmB,EACnB,2BAA2B,EAC3B,wBAAwB,IAAI,iBAAiB,EAC7C,iBAAiB,EACjB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,SAAS,IAAI,aAAa,EAC1B,YAAY,IAAI,gBAAgB,EAChC,YAAY,IAAI,gBAAgB,EAChC,YAAY,IAAI,gBAAgB,GACjC,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"Expo.d.ts","sourceRoot":"","sources":["../src/Expo.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,CAAC;AAEnB,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAElF,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAEjF,OAAO,EAEL,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,YAAY,EAGZ,mBAAmB,EACnB,2BAA2B,EAC3B,wBAAwB,IAAI,iBAAiB,EAC7C,iBAAiB,EACjB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAE3B,YAAY;AACV,sEAAsE;AACtE,SAAS,IAAI,aAAa;AAC1B,yEAAyE;AACzE,YAAY,IAAI,gBAAgB;AAChC,yEAAyE;AACzE,YAAY,IAAI,gBAAgB;AAChC,yEAAyE;AACzE,YAAY,IAAI,gBAAgB,GACjC,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"fetchAsync.native.d.ts","sourceRoot":"","sources":["../../src/async-require/fetchAsync.native.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH,wBAAgB,UAAU,CACxB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAC,CA2D5E"}
1
+ {"version":3,"file":"fetchAsync.native.d.ts","sourceRoot":"","sources":["../../src/async-require/fetchAsync.native.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAwBH,wBAAgB,UAAU,CACxB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAC,CAgF5E"}
@@ -11,7 +11,7 @@ export declare class FetchResponse extends ConcreteNativeResponse implements Res
11
11
  private streamingState;
12
12
  private bodyStream;
13
13
  constructor(abortCleanupFunction: AbortSubscriptionCleanupFunction);
14
- get body(): ReadableStream<Uint8Array> | null;
14
+ get body(): ReadableStream<Uint8Array<ArrayBuffer>> | null;
15
15
  get headers(): Headers;
16
16
  get ok(): boolean;
17
17
  readonly type = "default";
@@ -21,7 +21,7 @@ export declare class FetchResponse extends ConcreteNativeResponse implements Res
21
21
  blob(): Promise<Blob>;
22
22
  formData(): Promise<UniversalFormData>;
23
23
  json(): Promise<any>;
24
- bytes(): Promise<Uint8Array>;
24
+ bytes(): Promise<Uint8Array<ArrayBuffer>>;
25
25
  toString(): string;
26
26
  toJSON(): object;
27
27
  clone(): Response;
@@ -1 +1 @@
1
- {"version":3,"file":"FetchResponse.d.ts","sourceRoot":"","sources":["../../../src/winter/fetch/FetchResponse.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD,QAAA,MAAM,sBAAsB,EAAqC,OAAO,cAAc,CAAC;AACvF,MAAM,MAAM,gCAAgC,GAAG,MAAM,IAAI,CAAC;AAI1D,KAAK,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AACvE,KAAK,iBAAiB,GAAG,UAAU,CAAC,QAAQ,GAAG,UAAU,CAAC;AAE1D;;GAEG;AACH,qBAAa,aAAc,SAAQ,sBAAuB,YAAW,QAAQ;IAI/D,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IAHjD,OAAO,CAAC,cAAc,CAA4C;IAClE,OAAO,CAAC,UAAU,CAA2C;gBAEhC,oBAAoB,EAAE,gCAAgC;IAKnF,IAAI,IAAI,IAAI,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAuD5C;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,IAAI,EAAE,IAAI,OAAO,CAEhB;IAED,SAAgB,IAAI,aAAa;IAEjC;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAKrB,QAAQ,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAYtC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC;IAKpB,KAAK,IAAI,OAAO,CAAC,UAAU,CAAC;IAIlC,QAAQ,IAAI,MAAM;IAIlB,MAAM,IAAI,MAAM;IAShB,KAAK,IAAI,QAAQ;IAIjB,OAAO,CAAC,QAAQ,CAQd;CACH"}
1
+ {"version":3,"file":"FetchResponse.d.ts","sourceRoot":"","sources":["../../../src/winter/fetch/FetchResponse.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD,QAAA,MAAM,sBAAsB,EAAqC,OAAO,cAAc,CAAC;AACvF,MAAM,MAAM,gCAAgC,GAAG,MAAM,IAAI,CAAC;AAI1D,KAAK,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AACvE,KAAK,iBAAiB,GAAG,UAAU,CAAC,QAAQ,GAAG,UAAU,CAAC;AAE1D;;GAEG;AACH,qBAAa,aAAc,SAAQ,sBAAuB,YAAW,QAAQ;IAI/D,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IAHjD,OAAO,CAAC,cAAc,CAA4C;IAClE,OAAO,CAAC,UAAU,CAAwD;gBAE7C,oBAAoB,EAAE,gCAAgC;IAKnF,IAAI,IAAI,IAAI,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,GAAG,IAAI,CAuDzD;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,IAAI,EAAE,IAAI,OAAO,CAEhB;IAED,SAAgB,IAAI,aAAa;IAEjC;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAKrB,QAAQ,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAYtC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC;IAKpB,KAAK,IAAI,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAI/C,QAAQ,IAAI,MAAM;IAIlB,MAAM,IAAI,MAAM;IAShB,KAAK,IAAI,QAAQ;IAIjB,OAAO,CAAC,QAAQ,CAQd;CACH"}
@@ -23,7 +23,7 @@ export declare class NativeResponse extends SharedObject<NativeResponseEvents> {
23
23
  readonly statusText: string;
24
24
  readonly url: string;
25
25
  readonly redirected: boolean;
26
- startStreaming(): Promise<Uint8Array | null>;
26
+ startStreaming(): Promise<Uint8Array<ArrayBuffer> | null>;
27
27
  cancelStreaming(reason: string): void;
28
28
  arrayBuffer(): Promise<ArrayBuffer>;
29
29
  text(): Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"NativeRequest.d.ts","sourceRoot":"","sources":["../../../src/winter/fetch/NativeRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,MAAM,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;AAEnD,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,YAAY;IAC9C,KAAK,CACV,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,iBAAiB,EAC9B,WAAW,EAAE,UAAU,GAAG,IAAI,GAC7B,OAAO,CAAC,cAAc,CAAC;IACnB,MAAM,IAAI,IAAI;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,sBAAsB,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IAC/C,WAAW,IAAI,IAAI,CAAC;IACpB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,sBAAsB,IAAI,IAAI,CAAC;CAChC,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,YAAY,CAAC,oBAAoB,CAAC;IAC5E,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,cAAc,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAC5C,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IACrC,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC;IACnC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;CACxB"}
1
+ {"version":3,"file":"NativeRequest.d.ts","sourceRoot":"","sources":["../../../src/winter/fetch/NativeRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,MAAM,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;AAEnD,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,YAAY;IAC9C,KAAK,CACV,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,iBAAiB,EAC9B,WAAW,EAAE,UAAU,GAAG,IAAI,GAC7B,OAAO,CAAC,cAAc,CAAC;IACnB,MAAM,IAAI,IAAI;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,sBAAsB,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IAC/C,WAAW,IAAI,IAAI,CAAC;IACpB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,sBAAsB,IAAI,IAAI,CAAC;CAChC,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,YAAY,CAAC,oBAAoB,CAAC;IAC5E,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;IACzD,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IACrC,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC;IACnC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;CACxB"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Copyright © 2025 650 Industries.
3
+ * Copyright © Meta Platforms, Inc. and affiliates.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ *
8
+ * Fork of unexposed react-native module
9
+ * https://github.com/facebook/react-native/blob/c5fb371061c1083684a23aa0852f6dbfb74a8b52/packages/react-native/Libraries/Utilities/PolyfillFunctions.js#L1
10
+ */
11
+ /**
12
+ * Sets an object's property. If a property with the same name exists, this will
13
+ * replace it but maintain its descriptor configuration. The property will be
14
+ * replaced with a lazy getter.
15
+ *
16
+ * In DEV mode the original property value will be preserved as `original[PropertyName]`
17
+ * so that, if necessary, it can be restored. For example, if you want to route
18
+ * network requests through DevTools (to trace them):
19
+ *
20
+ * global.XMLHttpRequest = global.originalXMLHttpRequest;
21
+ *
22
+ * @see https://github.com/facebook/react-native/issues/934
23
+ */
24
+ export declare function installGlobal<T extends object>(name: string, getValue: () => T): void;
25
+ //# sourceMappingURL=installGlobal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"installGlobal.d.ts","sourceRoot":"","sources":["../../src/winter/installGlobal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAyDH;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,IAAI,CA6BrF"}
@@ -1,116 +1,116 @@
1
1
  {
2
- "@expo/fingerprint": "0.13.5-canary-20250729-d8899ae",
3
- "@expo/metro-runtime": "6.0.0-canary-20250729-d8899ae",
4
- "@expo/vector-icons": "^14.1.0",
5
- "@expo/ui": "0.1.1-canary-20250729-d8899ae",
2
+ "@expo/fingerprint": "0.14.4-canary-20250826-f475166",
3
+ "@expo/metro-runtime": "6.1.1-canary-20250826-f475166",
4
+ "@expo/vector-icons": "^15.0.0",
5
+ "@expo/ui": "0.2.0-canary-20250826-f475166",
6
6
  "@react-native-async-storage/async-storage": "2.2.0",
7
- "@react-native-community/datetimepicker": "8.4.3",
7
+ "@react-native-community/datetimepicker": "8.4.4",
8
8
  "@react-native-masked-view/masked-view": "0.3.2",
9
9
  "@react-native-community/netinfo": "11.4.1",
10
- "@react-native-community/slider": "4.5.7",
10
+ "@react-native-community/slider": "5.0.1",
11
11
  "@react-native-community/viewpager": "5.0.11",
12
12
  "@react-native-picker/picker": "2.11.1",
13
13
  "@react-native-segmented-control/segmented-control": "2.5.7",
14
- "@stripe/stripe-react-native": "0.50.1",
15
- "eslint-config-expo": "9.3.0-canary-20250729-d8899ae",
14
+ "@stripe/stripe-react-native": "0.50.3",
15
+ "eslint-config-expo": "10.0.1-canary-20250826-f475166",
16
16
  "expo-analytics-amplitude": "~11.3.0",
17
17
  "expo-app-auth": "~11.1.0",
18
18
  "expo-app-loader-provider": "~8.0.0",
19
- "expo-apple-authentication": "7.2.5-canary-20250729-d8899ae",
20
- "expo-application": "6.1.6-canary-20250729-d8899ae",
21
- "expo-asset": "11.2.0-canary-20250729-d8899ae",
22
- "expo-audio": "0.4.9-canary-20250729-d8899ae",
23
- "expo-auth-session": "6.1.6-canary-20250729-d8899ae",
24
- "expo-av": "15.1.8-canary-20250729-d8899ae",
25
- "expo-background-fetch": "13.1.7-canary-20250729-d8899ae",
26
- "expo-background-task": "0.2.9-canary-20250729-d8899ae",
27
- "expo-battery": "9.1.5-canary-20250729-d8899ae",
28
- "expo-blur": "14.1.6-canary-20250729-d8899ae",
29
- "expo-brightness": "13.1.5-canary-20250729-d8899ae",
30
- "expo-build-properties": "0.15.0-canary-20250729-d8899ae",
31
- "expo-calendar": "14.1.5-canary-20250729-d8899ae",
32
- "expo-camera": "16.2.0-canary-20250729-d8899ae",
33
- "expo-cellular": "7.1.6-canary-20250729-d8899ae",
34
- "expo-checkbox": "4.1.5-canary-20250729-d8899ae",
35
- "expo-clipboard": "7.1.6-canary-20250729-d8899ae",
36
- "expo-constants": "17.1.8-canary-20250729-d8899ae",
37
- "expo-contacts": "14.2.6-canary-20250729-d8899ae",
38
- "expo-crypto": "14.1.6-canary-20250729-d8899ae",
39
- "expo-dev-client": "5.1.9-canary-20250729-d8899ae",
40
- "expo-device": "7.1.5-canary-20250729-d8899ae",
41
- "expo-document-picker": "14.0.0-canary-20250729-d8899ae",
42
- "expo-file-system": "18.2.0-canary-20250729-d8899ae",
43
- "expo-font": "13.4.0-canary-20250729-d8899ae",
44
- "expo-gl": "15.1.8-canary-20250729-d8899ae",
19
+ "expo-apple-authentication": "8.0.4-canary-20250826-f475166",
20
+ "expo-application": "7.0.4-canary-20250826-f475166",
21
+ "expo-asset": "12.0.5-canary-20250826-f475166",
22
+ "expo-audio": "1.0.6-canary-20250826-f475166",
23
+ "expo-auth-session": "7.0.4-canary-20250826-f475166",
24
+ "expo-av": "16.0.4-canary-20250826-f475166",
25
+ "expo-background-fetch": "14.0.4-canary-20250826-f475166",
26
+ "expo-background-task": "1.0.4-canary-20250826-f475166",
27
+ "expo-battery": "10.0.4-canary-20250826-f475166",
28
+ "expo-blur": "15.0.4-canary-20250826-f475166",
29
+ "expo-brightness": "14.0.4-canary-20250826-f475166",
30
+ "expo-build-properties": "1.0.5-canary-20250826-f475166",
31
+ "expo-calendar": "15.0.4-canary-20250826-f475166",
32
+ "expo-camera": "17.0.4-canary-20250826-f475166",
33
+ "expo-cellular": "8.0.4-canary-20250826-f475166",
34
+ "expo-checkbox": "5.0.4-canary-20250826-f475166",
35
+ "expo-clipboard": "8.0.4-canary-20250826-f475166",
36
+ "expo-constants": "18.0.5-canary-20250826-f475166",
37
+ "expo-contacts": "15.0.5-canary-20250826-f475166",
38
+ "expo-crypto": "15.0.4-canary-20250826-f475166",
39
+ "expo-dev-client": "6.0.6-canary-20250826-f475166",
40
+ "expo-device": "8.0.4-canary-20250826-f475166",
41
+ "expo-document-picker": "14.0.4-canary-20250826-f475166",
42
+ "expo-file-system": "19.0.6-canary-20250826-f475166",
43
+ "expo-font": "14.0.4-canary-20250826-f475166",
44
+ "expo-gl": "16.0.4-canary-20250826-f475166",
45
45
  "expo-google-app-auth": "~8.3.0",
46
- "expo-haptics": "14.1.5-canary-20250729-d8899ae",
47
- "expo-image": "2.5.0-canary-20250729-d8899ae",
48
- "expo-image-loader": "5.1.1-canary-20250729-d8899ae",
49
- "expo-image-manipulator": "13.1.8-canary-20250729-d8899ae",
50
- "expo-image-picker": "17.0.0-canary-20250729-d8899ae",
51
- "expo-intent-launcher": "13.0.0-canary-20250729-d8899ae",
52
- "expo-insights": "0.9.4-canary-20250729-d8899ae",
53
- "expo-keep-awake": "14.1.5-canary-20250729-d8899ae",
54
- "expo-linear-gradient": "14.1.6-canary-20250729-d8899ae",
55
- "expo-linking": "7.1.8-canary-20250729-d8899ae",
56
- "expo-local-authentication": "16.1.0-canary-20250729-d8899ae",
57
- "expo-localization": "16.2.0-canary-20250729-d8899ae",
58
- "expo-location": "18.1.7-canary-20250729-d8899ae",
59
- "expo-mail-composer": "14.1.6-canary-20250729-d8899ae",
60
- "expo-manifests": "0.17.0-canary-20250729-d8899ae",
61
- "expo-maps": "0.10.1-canary-20250729-d8899ae",
62
- "expo-media-library": "18.0.0-canary-20250729-d8899ae",
63
- "expo-mesh-gradient": "0.4.0-canary-20250729-d8899ae",
64
- "expo-module-template": "10.16.8-canary-20250729-d8899ae",
65
- "expo-modules-core": "2.6.0-canary-20250729-d8899ae",
66
- "expo-navigation-bar": "4.2.8-canary-20250729-d8899ae",
67
- "expo-network": "7.1.6-canary-20250729-d8899ae",
68
- "expo-notifications": "0.31.5-canary-20250729-d8899ae",
69
- "expo-print": "14.1.5-canary-20250729-d8899ae",
70
- "expo-live-photo": "0.1.5-canary-20250729-d8899ae",
71
- "expo-router": "5.2.0-canary-20250729-d8899ae",
72
- "expo-screen-capture": "7.3.0-canary-20250729-d8899ae",
73
- "expo-screen-orientation": "8.1.8-canary-20250729-d8899ae",
74
- "expo-secure-store": "14.2.4-canary-20250729-d8899ae",
75
- "expo-sensors": "14.1.5-canary-20250729-d8899ae",
76
- "expo-sharing": "13.1.6-canary-20250729-d8899ae",
77
- "expo-sms": "13.1.5-canary-20250729-d8899ae",
78
- "expo-speech": "13.2.0-canary-20250729-d8899ae",
79
- "expo-splash-screen": "0.30.11-canary-20250729-d8899ae",
80
- "expo-sqlite": "15.2.15-canary-20250729-d8899ae",
81
- "expo-status-bar": "2.2.4-canary-20250729-d8899ae",
82
- "expo-store-review": "8.1.6-canary-20250729-d8899ae",
83
- "expo-symbols": "0.4.6-canary-20250729-d8899ae",
84
- "expo-system-ui": "5.0.11-canary-20250729-d8899ae",
85
- "expo-task-manager": "13.1.7-canary-20250729-d8899ae",
86
- "expo-tracking-transparency": "5.2.5-canary-20250729-d8899ae",
87
- "expo-updates": "0.29.0-canary-20250729-d8899ae",
88
- "expo-video-thumbnails": "9.1.4-canary-20250729-d8899ae",
89
- "expo-video": "3.0.0-canary-20250729-d8899ae",
90
- "expo-web-browser": "14.1.7-canary-20250729-d8899ae",
91
- "jest-expo": "54.0.0-canary-20250729-d8899ae",
46
+ "expo-haptics": "15.0.4-canary-20250826-f475166",
47
+ "expo-image": "3.0.4-canary-20250826-f475166",
48
+ "expo-image-loader": "6.0.1-canary-20250826-f475166",
49
+ "expo-image-manipulator": "14.0.4-canary-20250826-f475166",
50
+ "expo-image-picker": "17.0.4-canary-20250826-f475166",
51
+ "expo-intent-launcher": "13.0.4-canary-20250826-f475166",
52
+ "expo-insights": "0.10.4-canary-20250826-f475166",
53
+ "expo-keep-awake": "15.0.4-canary-20250826-f475166",
54
+ "expo-linear-gradient": "15.0.4-canary-20250826-f475166",
55
+ "expo-linking": "8.0.4-canary-20250826-f475166",
56
+ "expo-local-authentication": "17.0.4-canary-20250826-f475166",
57
+ "expo-localization": "17.0.4-canary-20250826-f475166",
58
+ "expo-location": "19.0.4-canary-20250826-f475166",
59
+ "expo-mail-composer": "15.0.4-canary-20250826-f475166",
60
+ "expo-manifests": "1.0.5-canary-20250826-f475166",
61
+ "expo-maps": "0.12.4-canary-20250826-f475166",
62
+ "expo-media-library": "18.0.4-canary-20250826-f475166",
63
+ "expo-mesh-gradient": "0.4.4-canary-20250826-f475166",
64
+ "expo-module-template": "11.0.5-canary-20250826-f475166",
65
+ "expo-modules-core": "3.0.7-canary-20250826-f475166",
66
+ "expo-navigation-bar": "5.0.5-canary-20250826-f475166",
67
+ "expo-network": "8.0.4-canary-20250826-f475166",
68
+ "expo-notifications": "0.32.6-canary-20250826-f475166",
69
+ "expo-print": "15.0.4-canary-20250826-f475166",
70
+ "expo-live-photo": "1.0.4-canary-20250826-f475166",
71
+ "expo-router": "6.0.0-canary-20250826-f475166",
72
+ "expo-screen-capture": "8.0.4-canary-20250826-f475166",
73
+ "expo-screen-orientation": "9.0.4-canary-20250826-f475166",
74
+ "expo-secure-store": "15.0.4-canary-20250826-f475166",
75
+ "expo-sensors": "15.0.4-canary-20250826-f475166",
76
+ "expo-sharing": "14.0.4-canary-20250826-f475166",
77
+ "expo-sms": "14.0.4-canary-20250826-f475166",
78
+ "expo-speech": "14.0.4-canary-20250826-f475166",
79
+ "expo-splash-screen": "31.0.5-canary-20250826-f475166",
80
+ "expo-sqlite": "16.0.5-canary-20250826-f475166",
81
+ "expo-status-bar": "3.0.5-canary-20250826-f475166",
82
+ "expo-store-review": "9.0.4-canary-20250826-f475166",
83
+ "expo-symbols": "1.0.4-canary-20250826-f475166",
84
+ "expo-system-ui": "6.0.4-canary-20250826-f475166",
85
+ "expo-task-manager": "14.0.4-canary-20250826-f475166",
86
+ "expo-tracking-transparency": "6.0.4-canary-20250826-f475166",
87
+ "expo-updates": "29.0.5-canary-20250826-f475166",
88
+ "expo-video-thumbnails": "10.0.4-canary-20250826-f475166",
89
+ "expo-video": "3.0.6-canary-20250826-f475166",
90
+ "expo-web-browser": "15.0.4-canary-20250826-f475166",
91
+ "jest-expo": "54.0.0-canary-20250826-f475166",
92
+ "lottie-react-native": "~7.3.1",
92
93
  "react": "19.1.0",
93
94
  "react-dom": "19.1.0",
94
- "react-native": "0.80.1",
95
- "react-native-web": "~0.20.0",
96
- "react-native-edge-to-edge": "1.6.0",
97
- "react-native-gesture-handler": "~2.26.0",
95
+ "react-native": "0.81.0",
96
+ "react-native-web": "~0.21.0",
97
+ "react-native-gesture-handler": "~2.28.0",
98
98
  "react-native-get-random-values": "~1.11.0",
99
- "react-native-keyboard-controller": "1.17.5",
99
+ "react-native-keyboard-controller": "1.18.4",
100
100
  "react-native-maps": "1.20.1",
101
- "react-native-pager-view": "6.8.1",
102
- "react-native-worklets": "~0.4.0",
103
- "react-native-reanimated": "~4.0.1",
104
- "react-native-screens": "~4.11.1",
105
- "react-native-safe-area-context": "5.4.0",
106
- "react-native-svg": "15.12.0",
101
+ "react-native-pager-view": "6.9.1",
102
+ "react-native-worklets": "~0.4.1",
103
+ "react-native-reanimated": "~4.0.2",
104
+ "react-native-screens": "~4.15.3",
105
+ "react-native-safe-area-context": "~5.6.0",
106
+ "react-native-svg": "15.12.1",
107
107
  "react-native-view-shot": "4.0.3",
108
- "react-native-webview": "13.13.5",
108
+ "react-native-webview": "13.15.0",
109
109
  "sentry-expo": "~7.0.0",
110
- "unimodules-app-loader": "5.1.4-canary-20250729-d8899ae",
110
+ "unimodules-app-loader": "6.0.4-canary-20250826-f475166",
111
111
  "unimodules-image-loader-interface": "~6.1.0",
112
- "@shopify/react-native-skia": "v2.0.0-next.4",
113
- "@shopify/flash-list": "1.8.3",
114
- "@sentry/react-native": "~6.14.0",
115
- "react-native-bootsplash": "^6.3.7"
112
+ "@shopify/react-native-skia": "2.2.3",
113
+ "@shopify/flash-list": "2.0.2",
114
+ "@sentry/react-native": "~6.20.0",
115
+ "react-native-bootsplash": "^6.3.10"
116
116
  }
package/devtools.d.ts CHANGED
@@ -1 +1 @@
1
- export * from './build/devtools';
1
+ export * from '@expo/devtools';
package/devtools.js CHANGED
@@ -1 +1 @@
1
- module.exports = require('./src/devtools');
1
+ module.exports = require('@expo/devtools');
@@ -0,0 +1,2 @@
1
+ // WARN: Internal re-export, don't rely on this to be a public API or use it outside of `expo/expo`'s monorepo
2
+ export * from 'babel-preset-expo';
@@ -0,0 +1,2 @@
1
+ // WARN: Internal re-export, don't rely on this to be a public API or use it outside of `expo/expo`'s monorepo
2
+ module.exports = require('babel-preset-expo');
@@ -0,0 +1,2 @@
1
+ // WARN: Internal re-export, don't rely on this to be a public API or use it outside of `expo/expo`'s monorepo
2
+ export { installGlobal } from '../src/winter/installGlobal';
@@ -0,0 +1,5 @@
1
+ // WARN: Internal re-export, don't rely on this to be a public API or use it outside of `expo/expo`'s monorepo
2
+ const { installGlobal } = require('../src/winter/installGlobal');
3
+ module.exports = {
4
+ installGlobal,
5
+ };
@@ -0,0 +1,2 @@
1
+ // WARN: Internal re-export, you should avoid relying on this, if possible. Expect breaking changes between SDK releases
2
+ export * from 'expo-modules-autolinking/exports';
@@ -0,0 +1,2 @@
1
+ // WARN: Internal re-export, you should avoid relying on this, if possible. Expect breaking changes between SDK releases
2
+ module.exports = require('expo-modules-autolinking/exports');
@@ -0,0 +1,2 @@
1
+ // WARN: Internal re-export, don't rely on this to be a public API or use it outside of `expo/expo`'s monorepo
2
+ export * from '@expo/cli/internal/unstable-expo-updates-exports';
@@ -0,0 +1,2 @@
1
+ // WARN: Internal re-export, don't rely on this to be a public API or use it outside of `expo/expo`'s monorepo
2
+ module.exports = require('@expo/cli/internal/unstable-expo-updates-exports');
@@ -1,10 +1,23 @@
1
1
  // Copyright 2015-present 650 Industries. All rights reserved.
2
2
 
3
- import React_RCTAppDelegate
3
+ import React
4
4
 
5
5
  @MainActor public class ExpoReactNativeFactory: RCTReactNativeFactory {
6
6
  private let reactDelegate = ExpoReactDelegate(handlers: ExpoAppDelegateSubscriberRepository.reactDelegateHandlers)
7
7
 
8
+ @objc public override init(delegate: any RCTReactNativeFactoryDelegate) {
9
+ let releaseLevel = (Bundle.main.object(forInfoDictionaryKey: "ReactNativeReleaseLevel") as? String)
10
+ .flatMap { [
11
+ "canary": RCTReleaseLevel.Canary,
12
+ "experimental": RCTReleaseLevel.Experimental,
13
+ "stable": RCTReleaseLevel.Stable
14
+ ][$0.lowercased()]
15
+ }
16
+ ?? RCTReleaseLevel.Stable
17
+
18
+ super.init(delegate: delegate, releaseLevel: releaseLevel)
19
+ }
20
+
8
21
  @objc func createRCTRootViewFactory() -> RCTRootViewFactory {
9
22
  // Alan: This is temporary. We need to cast to ExpoReactNativeFactoryDelegate here because currently, if you extend RCTReactNativeFactory
10
23
  // from Swift, customizeRootView will not work on the new arch because the cast to RCTRootView will never
@@ -1,4 +1,4 @@
1
- import React_RCTAppDelegate
1
+ import React
2
2
 
3
3
  open class ExpoReactNativeFactoryDelegate: RCTDefaultReactNativeFactoryDelegate {
4
4
  open override func customize(_ rootView: UIView) {
@@ -14,7 +14,12 @@
14
14
  #endif // USE_HERMES
15
15
  #endif // __has_include(<reacthermes/HermesExecutorFactory.h>)
16
16
 
17
+ #if __has_include(<React_RCTAppDelegate/React-RCTAppDelegate-umbrella.h>)
17
18
  #import <React_RCTAppDelegate/React-RCTAppDelegate-umbrella.h>
19
+ #else
20
+ #import <React_RCTAppDelegate/React_RCTAppDelegate-umbrella.h>
21
+ #endif
22
+
18
23
 
19
24
  #if INLINE_USE_HERMES
20
25