expo 55.0.0-canary-20251008-6acbc1c → 55.0.0-canary-20251009-9919e08
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.
- package/Expo.podspec +0 -1
- package/android/build.gradle +2 -2
- package/android/src/main/java/expo/modules/ExpoReactHostFactory.kt +21 -74
- package/android/src/main/java/expo/modules/ReactActivityDelegateWrapper.kt +0 -33
- package/build/async-require/hmr.d.ts +7 -7
- package/build/async-require/hmr.d.ts.map +1 -1
- package/build/dom/internal.d.ts +0 -1
- package/build/dom/internal.d.ts.map +1 -1
- package/build/dom/webview-wrapper.d.ts +2 -2
- package/build/dom/webview-wrapper.d.ts.map +1 -1
- package/bundledNativeModules.json +80 -80
- package/package.json +19 -20
- package/src/async-require/hmr.ts +59 -55
- package/src/dom/dom-entry.tsx +8 -8
- package/src/dom/internal.ts +0 -2
- package/src/dom/webview-wrapper.tsx +4 -7
- package/template.tgz +0 -0
- package/android/src/main/java/expo/modules/ExpoBridgelessDevSupportManager.kt +0 -135
- package/android/src/main/java/expo/modules/ExpoDevSupportManagerFactory.kt +0 -145
- package/android/src/main/java/expo/modules/ReactNativeHostWrapper.kt +0 -51
- package/android/src/main/java/expo/modules/ReactNativeHostWrapperBase.kt +0 -107
- package/build/dom/dom-internal.types.d.ts +0 -11
- package/build/dom/dom-internal.types.d.ts.map +0 -1
- package/src/dom/dom-internal.types.ts +0 -9
package/Expo.podspec
CHANGED
package/android/build.gradle
CHANGED
|
@@ -32,7 +32,7 @@ buildscript {
|
|
|
32
32
|
def reactNativeVersion = project.extensions.getByType(ExpoModuleExtension).reactNativeVersion
|
|
33
33
|
|
|
34
34
|
group = 'host.exp.exponent'
|
|
35
|
-
version = '55.0.0-canary-
|
|
35
|
+
version = '55.0.0-canary-20251009-9919e08'
|
|
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 "55.0.0-canary-
|
|
46
|
+
versionName "55.0.0-canary-20251009-9919e08"
|
|
47
47
|
consumerProguardFiles("proguard-rules.pro")
|
|
48
48
|
}
|
|
49
49
|
testOptions {
|
|
@@ -5,7 +5,6 @@ package expo.modules
|
|
|
5
5
|
import android.content.Context
|
|
6
6
|
import com.facebook.react.ReactHost
|
|
7
7
|
import com.facebook.react.ReactInstanceEventListener
|
|
8
|
-
import com.facebook.react.ReactNativeHost
|
|
9
8
|
import com.facebook.react.ReactPackage
|
|
10
9
|
import com.facebook.react.ReactPackageTurboModuleManagerDelegate
|
|
11
10
|
import com.facebook.react.bridge.JSBundleLoader
|
|
@@ -21,10 +20,7 @@ import com.facebook.react.runtime.ReactHostDelegate
|
|
|
21
20
|
import com.facebook.react.runtime.ReactHostImpl
|
|
22
21
|
import com.facebook.react.runtime.hermes.HermesInstance
|
|
23
22
|
import expo.modules.core.interfaces.ReactNativeHostHandler
|
|
24
|
-
import com.facebook.react.runtime.internal.bolts.Task
|
|
25
23
|
import java.lang.ref.WeakReference
|
|
26
|
-
import java.util.concurrent.Executors
|
|
27
|
-
import expo.modules.logbox.ExpoLogBoxBuildConfig
|
|
28
24
|
|
|
29
25
|
object ExpoReactHostFactory {
|
|
30
26
|
private var reactHost: ReactHost? = null
|
|
@@ -43,6 +39,24 @@ object ExpoReactHostFactory {
|
|
|
43
39
|
private val hostHandlers: List<ReactNativeHostHandler>
|
|
44
40
|
) : ReactHostDelegate {
|
|
45
41
|
|
|
42
|
+
val hostDelegateJsBundleFilePath: String? by lazy {
|
|
43
|
+
hostHandlers.asSequence()
|
|
44
|
+
.mapNotNull { it.getJSBundleFile(useDevSupport) }
|
|
45
|
+
.firstOrNull() ?: jsBundleFilePath
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
val hostDelegateJSBundleAssetPath: String? by lazy {
|
|
49
|
+
hostHandlers.asSequence()
|
|
50
|
+
.mapNotNull { it.getBundleAssetName(useDevSupport) }
|
|
51
|
+
.firstOrNull() ?: jsBundleAssetPath
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
val hostDelegateUseDeveloperSupport: Boolean by lazy {
|
|
55
|
+
hostHandlers.asSequence()
|
|
56
|
+
.mapNotNull { it.useDeveloperSupport }
|
|
57
|
+
.firstOrNull() ?: useDevSupport
|
|
58
|
+
}
|
|
59
|
+
|
|
46
60
|
// Keeps this `_jsBundleLoader` backing property for DevLauncher to replace its internal value
|
|
47
61
|
private var _jsBundleLoader: JSBundleLoader? = null
|
|
48
62
|
override val jsBundleLoader: JSBundleLoader
|
|
@@ -52,14 +66,14 @@ object ExpoReactHostFactory {
|
|
|
52
66
|
return backingJSBundleLoader
|
|
53
67
|
}
|
|
54
68
|
val context = weakContext.get() ?: throw IllegalStateException("Unable to get concrete Context")
|
|
55
|
-
|
|
69
|
+
hostDelegateJsBundleFilePath?.let { jsBundleFile ->
|
|
56
70
|
if (jsBundleFile.startsWith("assets://")) {
|
|
57
71
|
return JSBundleLoader.createAssetLoader(context, jsBundleFile, true)
|
|
58
72
|
}
|
|
59
73
|
return JSBundleLoader.createFileLoader(jsBundleFile)
|
|
60
74
|
}
|
|
61
75
|
|
|
62
|
-
return JSBundleLoader.createAssetLoader(context, "assets://$
|
|
76
|
+
return JSBundleLoader.createAssetLoader(context, "assets://$hostDelegateJSBundleAssetPath", true)
|
|
63
77
|
}
|
|
64
78
|
|
|
65
79
|
override val jsRuntimeFactory: JSRuntimeFactory
|
|
@@ -73,78 +87,11 @@ object ExpoReactHostFactory {
|
|
|
73
87
|
throw error
|
|
74
88
|
}
|
|
75
89
|
hostHandlers.forEach { handler ->
|
|
76
|
-
handler.onReactInstanceException(
|
|
90
|
+
handler.onReactInstanceException(hostDelegateUseDeveloperSupport, error)
|
|
77
91
|
}
|
|
78
92
|
}
|
|
79
93
|
}
|
|
80
94
|
|
|
81
|
-
@OptIn(UnstableReactNativeAPI::class)
|
|
82
|
-
@JvmStatic
|
|
83
|
-
fun createFromReactNativeHost(
|
|
84
|
-
context: Context,
|
|
85
|
-
reactNativeHost: ReactNativeHost
|
|
86
|
-
): ReactHost {
|
|
87
|
-
require(reactNativeHost is ReactNativeHostWrapper) {
|
|
88
|
-
"You can call createFromReactNativeHost only with instances of ReactNativeHostWrapper"
|
|
89
|
-
}
|
|
90
|
-
if (reactHost == null) {
|
|
91
|
-
val useDeveloperSupport = reactNativeHost.useDeveloperSupport
|
|
92
|
-
val componentFactory = ComponentFactory()
|
|
93
|
-
DefaultComponentsRegistry.register(componentFactory)
|
|
94
|
-
|
|
95
|
-
reactNativeHost.reactNativeHostHandlers.forEach { handler ->
|
|
96
|
-
handler.onWillCreateReactInstance(useDeveloperSupport)
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
val reactHostDelegate = ExpoReactHostDelegate(
|
|
100
|
-
WeakReference(context),
|
|
101
|
-
reactNativeHost.packages,
|
|
102
|
-
reactNativeHost.jsMainModuleName,
|
|
103
|
-
reactNativeHost.bundleAssetName,
|
|
104
|
-
reactNativeHost.jsBundleFile,
|
|
105
|
-
reactNativeHost.useDeveloperSupport,
|
|
106
|
-
hostHandlers = reactNativeHost.reactNativeHostHandlers
|
|
107
|
-
)
|
|
108
|
-
|
|
109
|
-
val reactHostImpl = when {
|
|
110
|
-
ExpoLogBoxBuildConfig.UNSTABLE_IS_ENABLED && useDeveloperSupport -> ReactHostImpl(
|
|
111
|
-
context,
|
|
112
|
-
reactHostDelegate,
|
|
113
|
-
componentFactory,
|
|
114
|
-
Executors.newSingleThreadExecutor(),
|
|
115
|
-
Task.UI_THREAD_EXECUTOR,
|
|
116
|
-
allowPackagerServerAccess = true,
|
|
117
|
-
useDevSupport = true,
|
|
118
|
-
devSupportManagerFactory = ExpoDefaultDevSupportManagerFactory(),
|
|
119
|
-
)
|
|
120
|
-
else -> ReactHostImpl(
|
|
121
|
-
context,
|
|
122
|
-
reactHostDelegate,
|
|
123
|
-
componentFactory,
|
|
124
|
-
true,
|
|
125
|
-
useDeveloperSupport
|
|
126
|
-
)
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
reactNativeHost.reactNativeHostHandlers.forEach { handler ->
|
|
130
|
-
handler.onDidCreateDevSupportManager(reactHostImpl.devSupportManager)
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
reactHostImpl.addReactInstanceEventListener(object : ReactInstanceEventListener {
|
|
136
|
-
override fun onReactContextInitialized(context: ReactContext) {
|
|
137
|
-
reactNativeHost.reactNativeHostHandlers.forEach { handler ->
|
|
138
|
-
handler.onDidCreateReactInstance(useDeveloperSupport, context)
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
})
|
|
142
|
-
|
|
143
|
-
reactHost = reactHostImpl
|
|
144
|
-
}
|
|
145
|
-
return reactHost as ReactHost
|
|
146
|
-
}
|
|
147
|
-
|
|
148
95
|
@OptIn(UnstableReactNativeAPI::class)
|
|
149
96
|
@JvmStatic
|
|
150
97
|
fun getDefaultReactHost(
|
|
@@ -12,7 +12,6 @@ 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
|
|
16
15
|
import androidx.annotation.VisibleForTesting
|
|
17
16
|
import androidx.collection.ArrayMap
|
|
18
17
|
import androidx.lifecycle.lifecycleScope
|
|
@@ -22,7 +21,6 @@ import com.facebook.react.ReactDelegate
|
|
|
22
21
|
import com.facebook.react.ReactHost
|
|
23
22
|
import com.facebook.react.ReactInstanceEventListener
|
|
24
23
|
import com.facebook.react.ReactInstanceManager
|
|
25
|
-
import com.facebook.react.ReactNativeHost
|
|
26
24
|
import com.facebook.react.ReactRootView
|
|
27
25
|
import com.facebook.react.bridge.ReactContext
|
|
28
26
|
import com.facebook.react.modules.core.PermissionListener
|
|
@@ -56,9 +54,6 @@ class ReactActivityDelegateWrapper(
|
|
|
56
54
|
private val reactActivityHandlers = ExpoModulesPackage.packageList
|
|
57
55
|
.flatMap { it.createReactActivityHandlers(activity) }
|
|
58
56
|
private val methodMap: ArrayMap<String, Method> = ArrayMap()
|
|
59
|
-
private val _reactNativeHost: ReactNativeHost by lazy {
|
|
60
|
-
invokeDelegateMethod("getReactNativeHost")
|
|
61
|
-
}
|
|
62
57
|
private val _reactHost: ReactHost? by lazy {
|
|
63
58
|
delegate.reactHost
|
|
64
59
|
}
|
|
@@ -103,10 +98,6 @@ class ReactActivityDelegateWrapper(
|
|
|
103
98
|
return invokeDelegateMethod("getReactDelegate")
|
|
104
99
|
}
|
|
105
100
|
|
|
106
|
-
override fun getReactNativeHost(): ReactNativeHost {
|
|
107
|
-
return _reactNativeHost
|
|
108
|
-
}
|
|
109
|
-
|
|
110
101
|
override fun getReactHost(): ReactHost? {
|
|
111
102
|
return _reactHost
|
|
112
103
|
}
|
|
@@ -156,11 +147,6 @@ class ReactActivityDelegateWrapper(
|
|
|
156
147
|
activity.window.colorMode = ActivityInfo.COLOR_MODE_WIDE_COLOR_GAMUT
|
|
157
148
|
}
|
|
158
149
|
|
|
159
|
-
val edgeToEdgeEnabled = invokeWindowUtilKtMethod<Boolean>("isEdgeToEdgeFeatureFlagOn") ?: true
|
|
160
|
-
if (edgeToEdgeEnabled) {
|
|
161
|
-
invokeWindowUtilKtMethod<Unit>("enableEdgeToEdge", Pair(Window::class.java, plainActivity.window))
|
|
162
|
-
}
|
|
163
|
-
|
|
164
150
|
val launchOptions = composeLaunchOptions()
|
|
165
151
|
val reactDelegate: ReactDelegate
|
|
166
152
|
if (ReactNativeFeatureFlags.enableBridgelessArchitecture) {
|
|
@@ -432,25 +418,6 @@ class ReactActivityDelegateWrapper(
|
|
|
432
418
|
return method!!.invoke(delegate, *args) as T
|
|
433
419
|
}
|
|
434
420
|
|
|
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
|
-
|
|
454
421
|
private suspend fun loadAppImpl(appKey: String?, supportsDelayLoad: Boolean) {
|
|
455
422
|
// Give modules a chance to wrap the ReactRootView in a container ViewGroup. If some module
|
|
456
423
|
// wants to do this, we override the functionality of `loadApp` and call `setContentView` with
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
type LogLevel = 'trace' | 'info' | 'warn' | 'error' | 'log' | 'group' | 'groupCollapsed' | 'groupEnd' | 'debug';
|
|
2
|
-
|
|
3
|
-
* HMR Client that receives from the server HMR updates and propagates them
|
|
4
|
-
* runtime to reflects those changes.
|
|
5
|
-
*/
|
|
6
|
-
declare const HMRClient: {
|
|
2
|
+
export type HMRClientNativeInterface = {
|
|
7
3
|
enable(): void;
|
|
8
4
|
disable(): void;
|
|
9
5
|
registerBundle(requestUrl: string): void;
|
|
10
6
|
log(level: LogLevel, data: any[]): void;
|
|
11
|
-
setup(
|
|
7
|
+
setup(props: {
|
|
12
8
|
isEnabled: boolean;
|
|
13
9
|
}): void;
|
|
14
|
-
_onMetroError(data: unknown): void;
|
|
15
10
|
};
|
|
11
|
+
/**
|
|
12
|
+
* HMR Client that receives from the server HMR updates and propagates them
|
|
13
|
+
* runtime to reflects those changes.
|
|
14
|
+
*/
|
|
15
|
+
declare const HMRClient: HMRClientNativeInterface;
|
|
16
16
|
export default HMRClient;
|
|
17
17
|
//# sourceMappingURL=hmr.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hmr.d.ts","sourceRoot":"","sources":["../../src/async-require/hmr.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hmr.d.ts","sourceRoot":"","sources":["../../src/async-require/hmr.ts"],"names":[],"mappings":"AA4CA,KAAK,QAAQ,GACT,OAAO,GACP,MAAM,GACN,MAAM,GACN,OAAO,GACP,KAAK,GACL,OAAO,GACP,gBAAgB,GAChB,UAAU,GACV,OAAO,CAAC;AAEZ,MAAM,MAAM,wBAAwB,GAAG;IACrC,MAAM,IAAI,IAAI,CAAC;IACf,OAAO,IAAI,IAAI,CAAC;IAChB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IACxC,KAAK,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;CAC5C,CAAC;AAMF;;;GAGG;AACH,QAAA,MAAM,SAAS,EAAE,wBAsMhB,CAAC;AAuEF,eAAe,SAAS,CAAC"}
|
package/build/dom/internal.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/dom/internal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/dom/internal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAGvD,eAAO,MAAM,oBAAoB,EAAE,SAAS,GAAG,cAAc,aAAa,EAAE,oBACjE,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import type { DOMProps } from './dom.types';
|
|
2
3
|
import ExpoDomWebView from './webview/ExpoDOMWebView';
|
|
3
4
|
import RNWebView from './webview/RNWebView';
|
|
4
|
-
import { DOMPropsInternal } from './dom-internal.types';
|
|
5
5
|
type RawWebViewProps = React.ComponentProps<Exclude<typeof ExpoDomWebView, undefined>> & React.ComponentProps<Exclude<typeof RNWebView, undefined>>;
|
|
6
6
|
interface Props {
|
|
7
7
|
children?: any;
|
|
8
|
-
dom?:
|
|
8
|
+
dom?: DOMProps;
|
|
9
9
|
filePath: string;
|
|
10
10
|
ref: React.Ref<object>;
|
|
11
11
|
[propName: string]: unknown;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webview-wrapper.d.ts","sourceRoot":"","sources":["../../src/dom/webview-wrapper.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"webview-wrapper.d.ts","sourceRoot":"","sources":["../../src/dom/webview-wrapper.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAiB,QAAQ,EAA4B,MAAM,aAAa,CAAC;AAUrF,OAAO,cAAc,MAAM,0BAA0B,CAAC;AACtD,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAG5C,KAAK,eAAe,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,cAAc,EAAE,SAAS,CAAC,CAAC,GACpF,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;AAE7D,UAAU,KAAK;IACb,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC7B;AAED,QAAA,MAAM,UAAU,mFAgMd,CAAC;AAiBH,wBAAgB,cAAc,CAC5B,iBAAiB,EAAE,OAAO,GACzB,KAAK,CAAC,yBAAyB,CAAC,eAAe,CAAC,CASlD;AAED,eAAe,UAAU,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
"@expo/fingerprint": "0.15.2-canary-
|
|
3
|
-
"@expo/metro-runtime": "6.1.3-canary-
|
|
2
|
+
"@expo/fingerprint": "0.15.2-canary-20251009-9919e08",
|
|
3
|
+
"@expo/metro-runtime": "6.1.3-canary-20251009-9919e08",
|
|
4
4
|
"@expo/vector-icons": "^15.0.2",
|
|
5
|
-
"@expo/ui": "0.2.0-canary-
|
|
5
|
+
"@expo/ui": "0.2.0-canary-20251009-9919e08",
|
|
6
6
|
"@react-native-async-storage/async-storage": "2.2.0",
|
|
7
7
|
"@react-native-community/datetimepicker": "8.4.4",
|
|
8
8
|
"@react-native-masked-view/masked-view": "0.3.2",
|
|
@@ -12,88 +12,88 @@
|
|
|
12
12
|
"@react-native-picker/picker": "2.11.2",
|
|
13
13
|
"@react-native-segmented-control/segmented-control": "2.5.7",
|
|
14
14
|
"@stripe/stripe-react-native": "0.50.3",
|
|
15
|
-
"eslint-config-expo": "10.0.1-canary-
|
|
15
|
+
"eslint-config-expo": "10.0.1-canary-20251009-9919e08",
|
|
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": "8.0.8-canary-
|
|
20
|
-
"expo-application": "7.0.8-canary-
|
|
21
|
-
"expo-asset": "12.0.10-canary-
|
|
22
|
-
"expo-audio": "1.1.0-canary-
|
|
23
|
-
"expo-auth-session": "7.0.9-canary-
|
|
24
|
-
"expo-av": "16.0.8-canary-
|
|
25
|
-
"expo-background-fetch": "14.0.8-canary-
|
|
26
|
-
"expo-background-task": "1.0.9-canary-
|
|
27
|
-
"expo-battery": "10.0.8-canary-
|
|
28
|
-
"expo-blur": "15.0.8-canary-
|
|
29
|
-
"expo-brightness": "
|
|
30
|
-
"expo-build-properties": "1.0.10-canary-
|
|
31
|
-
"expo-calendar": "15.0.8-canary-
|
|
32
|
-
"expo-camera": "17.0.9-canary-
|
|
33
|
-
"expo-cellular": "8.0.8-canary-
|
|
34
|
-
"expo-checkbox": "5.0.8-canary-
|
|
35
|
-
"expo-clipboard": "8.0.8-canary-
|
|
36
|
-
"expo-constants": "18.0.10-canary-
|
|
37
|
-
"expo-contacts": "15.0.10-canary-
|
|
38
|
-
"expo-crypto": "15.0.8-canary-
|
|
39
|
-
"expo-dev-client": "6.0.14-canary-
|
|
40
|
-
"expo-device": "8.0.10-canary-
|
|
41
|
-
"expo-document-picker": "14.0.8-canary-
|
|
42
|
-
"expo-file-system": "19.0.17-canary-
|
|
43
|
-
"expo-font": "14.0.9-canary-
|
|
44
|
-
"expo-gl": "16.0.8-canary-
|
|
45
|
-
"expo-glass-effect": "0.1.5-canary-
|
|
19
|
+
"expo-apple-authentication": "8.0.8-canary-20251009-9919e08",
|
|
20
|
+
"expo-application": "7.0.8-canary-20251009-9919e08",
|
|
21
|
+
"expo-asset": "12.0.10-canary-20251009-9919e08",
|
|
22
|
+
"expo-audio": "1.1.0-canary-20251009-9919e08",
|
|
23
|
+
"expo-auth-session": "7.0.9-canary-20251009-9919e08",
|
|
24
|
+
"expo-av": "16.0.8-canary-20251009-9919e08",
|
|
25
|
+
"expo-background-fetch": "14.0.8-canary-20251009-9919e08",
|
|
26
|
+
"expo-background-task": "1.0.9-canary-20251009-9919e08",
|
|
27
|
+
"expo-battery": "10.0.8-canary-20251009-9919e08",
|
|
28
|
+
"expo-blur": "15.0.8-canary-20251009-9919e08",
|
|
29
|
+
"expo-brightness": "15.0.0-canary-20251009-9919e08",
|
|
30
|
+
"expo-build-properties": "1.0.10-canary-20251009-9919e08",
|
|
31
|
+
"expo-calendar": "15.0.8-canary-20251009-9919e08",
|
|
32
|
+
"expo-camera": "17.0.9-canary-20251009-9919e08",
|
|
33
|
+
"expo-cellular": "8.0.8-canary-20251009-9919e08",
|
|
34
|
+
"expo-checkbox": "5.0.8-canary-20251009-9919e08",
|
|
35
|
+
"expo-clipboard": "8.0.8-canary-20251009-9919e08",
|
|
36
|
+
"expo-constants": "18.0.10-canary-20251009-9919e08",
|
|
37
|
+
"expo-contacts": "15.0.10-canary-20251009-9919e08",
|
|
38
|
+
"expo-crypto": "15.0.8-canary-20251009-9919e08",
|
|
39
|
+
"expo-dev-client": "6.0.14-canary-20251009-9919e08",
|
|
40
|
+
"expo-device": "8.0.10-canary-20251009-9919e08",
|
|
41
|
+
"expo-document-picker": "14.0.8-canary-20251009-9919e08",
|
|
42
|
+
"expo-file-system": "19.0.17-canary-20251009-9919e08",
|
|
43
|
+
"expo-font": "14.0.9-canary-20251009-9919e08",
|
|
44
|
+
"expo-gl": "16.0.8-canary-20251009-9919e08",
|
|
45
|
+
"expo-glass-effect": "0.1.5-canary-20251009-9919e08",
|
|
46
46
|
"expo-google-app-auth": "~8.3.0",
|
|
47
|
-
"expo-haptics": "15.0.8-canary-
|
|
48
|
-
"expo-image": "3.1.0-canary-
|
|
49
|
-
"expo-image-loader": "6.0.1-canary-
|
|
50
|
-
"expo-image-manipulator": "14.0.8-canary-
|
|
51
|
-
"expo-image-picker": "17.0.9-canary-
|
|
52
|
-
"expo-intent-launcher": "13.0.8-canary-
|
|
53
|
-
"expo-insights": "0.10.8-canary-
|
|
54
|
-
"expo-keep-awake": "15.0.8-canary-
|
|
55
|
-
"expo-linear-gradient": "15.0.8-canary-
|
|
56
|
-
"expo-linking": "8.0.9-canary-
|
|
57
|
-
"expo-local-authentication": "17.0.8-canary-
|
|
58
|
-
"expo-localization": "17.0.8-canary-
|
|
59
|
-
"expo-location": "19.0.8-canary-
|
|
60
|
-
"expo-mail-composer": "15.0.8-canary-
|
|
61
|
-
"expo-manifests": "1.0.9-canary-
|
|
62
|
-
"expo-maps": "0.12.9-canary-
|
|
63
|
-
"expo-media-library": "18.3.0-canary-
|
|
64
|
-
"expo-mesh-gradient": "0.4.8-canary-
|
|
65
|
-
"expo-module-template": "11.0.16-canary-
|
|
66
|
-
"expo-modules-core": "3.1.0-canary-
|
|
67
|
-
"expo-navigation-bar": "5.0.9-canary-
|
|
68
|
-
"expo-network": "8.0.8-canary-
|
|
69
|
-
"expo-notifications": "1.0.0-canary-
|
|
70
|
-
"expo-print": "15.0.8-canary-
|
|
71
|
-
"expo-live-photo": "1.0.8-canary-
|
|
72
|
-
"expo-router": "6.1.0-canary-
|
|
73
|
-
"expo-screen-capture": "8.0.9-canary-
|
|
74
|
-
"expo-screen-orientation": "9.0.8-canary-
|
|
75
|
-
"expo-secure-store": "15.0.8-canary-
|
|
76
|
-
"expo-sensors": "15.0.8-canary-
|
|
77
|
-
"expo-sharing": "14.0.8-canary-
|
|
78
|
-
"expo-sms": "14.0.8-canary-
|
|
79
|
-
"expo-speech": "14.0.8-canary-
|
|
80
|
-
"expo-splash-screen": "31.0.11-canary-
|
|
81
|
-
"expo-sqlite": "16.0.9-canary-
|
|
82
|
-
"expo-status-bar": "3.0.9-canary-
|
|
83
|
-
"expo-store-review": "9.0.9-canary-
|
|
84
|
-
"expo-symbols": "1.1.0-canary-
|
|
85
|
-
"expo-system-ui": "6.0.8-canary-
|
|
86
|
-
"expo-task-manager": "14.0.8-canary-
|
|
87
|
-
"expo-tracking-transparency": "6.0.8-canary-
|
|
88
|
-
"expo-updates": "29.1.0-canary-
|
|
89
|
-
"expo-video-thumbnails": "10.0.8-canary-
|
|
90
|
-
"expo-video": "3.0.12-canary-
|
|
91
|
-
"expo-web-browser": "15.0.9-canary-
|
|
92
|
-
"jest-expo": "55.0.0-canary-
|
|
47
|
+
"expo-haptics": "15.0.8-canary-20251009-9919e08",
|
|
48
|
+
"expo-image": "3.1.0-canary-20251009-9919e08",
|
|
49
|
+
"expo-image-loader": "6.0.1-canary-20251009-9919e08",
|
|
50
|
+
"expo-image-manipulator": "14.0.8-canary-20251009-9919e08",
|
|
51
|
+
"expo-image-picker": "17.0.9-canary-20251009-9919e08",
|
|
52
|
+
"expo-intent-launcher": "13.0.8-canary-20251009-9919e08",
|
|
53
|
+
"expo-insights": "0.10.8-canary-20251009-9919e08",
|
|
54
|
+
"expo-keep-awake": "15.0.8-canary-20251009-9919e08",
|
|
55
|
+
"expo-linear-gradient": "15.0.8-canary-20251009-9919e08",
|
|
56
|
+
"expo-linking": "8.0.9-canary-20251009-9919e08",
|
|
57
|
+
"expo-local-authentication": "17.0.8-canary-20251009-9919e08",
|
|
58
|
+
"expo-localization": "17.0.8-canary-20251009-9919e08",
|
|
59
|
+
"expo-location": "19.0.8-canary-20251009-9919e08",
|
|
60
|
+
"expo-mail-composer": "15.0.8-canary-20251009-9919e08",
|
|
61
|
+
"expo-manifests": "1.0.9-canary-20251009-9919e08",
|
|
62
|
+
"expo-maps": "0.12.9-canary-20251009-9919e08",
|
|
63
|
+
"expo-media-library": "18.3.0-canary-20251009-9919e08",
|
|
64
|
+
"expo-mesh-gradient": "0.4.8-canary-20251009-9919e08",
|
|
65
|
+
"expo-module-template": "11.0.16-canary-20251009-9919e08",
|
|
66
|
+
"expo-modules-core": "3.1.0-canary-20251009-9919e08",
|
|
67
|
+
"expo-navigation-bar": "5.0.9-canary-20251009-9919e08",
|
|
68
|
+
"expo-network": "8.0.8-canary-20251009-9919e08",
|
|
69
|
+
"expo-notifications": "1.0.0-canary-20251009-9919e08",
|
|
70
|
+
"expo-print": "15.0.8-canary-20251009-9919e08",
|
|
71
|
+
"expo-live-photo": "1.0.8-canary-20251009-9919e08",
|
|
72
|
+
"expo-router": "6.1.0-canary-20251009-9919e08",
|
|
73
|
+
"expo-screen-capture": "8.0.9-canary-20251009-9919e08",
|
|
74
|
+
"expo-screen-orientation": "9.0.8-canary-20251009-9919e08",
|
|
75
|
+
"expo-secure-store": "15.0.8-canary-20251009-9919e08",
|
|
76
|
+
"expo-sensors": "15.0.8-canary-20251009-9919e08",
|
|
77
|
+
"expo-sharing": "14.0.8-canary-20251009-9919e08",
|
|
78
|
+
"expo-sms": "14.0.8-canary-20251009-9919e08",
|
|
79
|
+
"expo-speech": "14.0.8-canary-20251009-9919e08",
|
|
80
|
+
"expo-splash-screen": "31.0.11-canary-20251009-9919e08",
|
|
81
|
+
"expo-sqlite": "16.0.9-canary-20251009-9919e08",
|
|
82
|
+
"expo-status-bar": "3.0.9-canary-20251009-9919e08",
|
|
83
|
+
"expo-store-review": "9.0.9-canary-20251009-9919e08",
|
|
84
|
+
"expo-symbols": "1.1.0-canary-20251009-9919e08",
|
|
85
|
+
"expo-system-ui": "6.0.8-canary-20251009-9919e08",
|
|
86
|
+
"expo-task-manager": "14.0.8-canary-20251009-9919e08",
|
|
87
|
+
"expo-tracking-transparency": "6.0.8-canary-20251009-9919e08",
|
|
88
|
+
"expo-updates": "29.1.0-canary-20251009-9919e08",
|
|
89
|
+
"expo-video-thumbnails": "10.0.8-canary-20251009-9919e08",
|
|
90
|
+
"expo-video": "3.0.12-canary-20251009-9919e08",
|
|
91
|
+
"expo-web-browser": "15.0.9-canary-20251009-9919e08",
|
|
92
|
+
"jest-expo": "55.0.0-canary-20251009-9919e08",
|
|
93
93
|
"lottie-react-native": "~7.3.1",
|
|
94
94
|
"react": "19.1.1",
|
|
95
95
|
"react-dom": "19.1.1",
|
|
96
|
-
"react-native": "0.82.0
|
|
96
|
+
"react-native": "0.82.0",
|
|
97
97
|
"react-native-web": "~0.21.0",
|
|
98
98
|
"react-native-gesture-handler": "~2.28.0",
|
|
99
99
|
"react-native-get-random-values": "~1.11.0",
|
|
@@ -108,10 +108,10 @@
|
|
|
108
108
|
"react-native-view-shot": "4.0.3",
|
|
109
109
|
"react-native-webview": "13.15.0",
|
|
110
110
|
"sentry-expo": "~7.0.0",
|
|
111
|
-
"unimodules-app-loader": "6.0.8-canary-
|
|
111
|
+
"unimodules-app-loader": "6.0.8-canary-20251009-9919e08",
|
|
112
112
|
"unimodules-image-loader-interface": "~6.1.0",
|
|
113
113
|
"@shopify/react-native-skia": "2.2.12",
|
|
114
114
|
"@shopify/flash-list": "2.0.2",
|
|
115
|
-
"@sentry/react-native": "~7.
|
|
115
|
+
"@sentry/react-native": "~7.2.0",
|
|
116
116
|
"react-native-bootsplash": "^6.3.10"
|
|
117
117
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "expo",
|
|
3
|
-
"version": "55.0.0-canary-
|
|
3
|
+
"version": "55.0.0-canary-20251009-9919e08",
|
|
4
4
|
"description": "The Expo SDK",
|
|
5
5
|
"main": "src/Expo.ts",
|
|
6
6
|
"module": "src/Expo.ts",
|
|
@@ -75,24 +75,23 @@
|
|
|
75
75
|
"homepage": "https://github.com/expo/expo/tree/main/packages/expo",
|
|
76
76
|
"dependencies": {
|
|
77
77
|
"@babel/runtime": "^7.20.0",
|
|
78
|
-
"@expo/cli": "54.1.0-canary-
|
|
79
|
-
"@expo/config": "12.0.11-canary-
|
|
80
|
-
"@expo/config-plugins": "54.0.3-canary-
|
|
81
|
-
"@expo/devtools": "0.1.8-canary-
|
|
82
|
-
"@expo/fingerprint": "0.15.2-canary-
|
|
78
|
+
"@expo/cli": "54.1.0-canary-20251009-9919e08",
|
|
79
|
+
"@expo/config": "12.0.11-canary-20251009-9919e08",
|
|
80
|
+
"@expo/config-plugins": "54.0.3-canary-20251009-9919e08",
|
|
81
|
+
"@expo/devtools": "0.1.8-canary-20251009-9919e08",
|
|
82
|
+
"@expo/fingerprint": "0.15.2-canary-20251009-9919e08",
|
|
83
83
|
"@expo/metro": "~54.0.0",
|
|
84
|
-
"@expo/metro-config": "54.0.7-canary-
|
|
84
|
+
"@expo/metro-config": "54.0.7-canary-20251009-9919e08",
|
|
85
85
|
"@expo/vector-icons": "^15.0.2",
|
|
86
|
-
"@expo/log-box": "0.0.13-canary-20251008-6acbc1c",
|
|
87
86
|
"@ungap/structured-clone": "^1.3.0",
|
|
88
|
-
"babel-preset-expo": "54.0.4-canary-
|
|
89
|
-
"expo-asset": "12.0.10-canary-
|
|
90
|
-
"expo-constants": "18.0.10-canary-
|
|
91
|
-
"expo-file-system": "19.0.17-canary-
|
|
92
|
-
"expo-font": "14.0.9-canary-
|
|
93
|
-
"expo-keep-awake": "15.0.8-canary-
|
|
94
|
-
"expo-modules-autolinking": "3.1.0-canary-
|
|
95
|
-
"expo-modules-core": "3.1.0-canary-
|
|
87
|
+
"babel-preset-expo": "54.0.4-canary-20251009-9919e08",
|
|
88
|
+
"expo-asset": "12.0.10-canary-20251009-9919e08",
|
|
89
|
+
"expo-constants": "18.0.10-canary-20251009-9919e08",
|
|
90
|
+
"expo-file-system": "19.0.17-canary-20251009-9919e08",
|
|
91
|
+
"expo-font": "14.0.9-canary-20251009-9919e08",
|
|
92
|
+
"expo-keep-awake": "15.0.8-canary-20251009-9919e08",
|
|
93
|
+
"expo-modules-autolinking": "3.1.0-canary-20251009-9919e08",
|
|
94
|
+
"expo-modules-core": "3.1.0-canary-20251009-9919e08",
|
|
96
95
|
"pretty-format": "^29.7.0",
|
|
97
96
|
"react-refresh": "^0.14.2",
|
|
98
97
|
"whatwg-url-without-unicode": "8.0.0-3"
|
|
@@ -101,15 +100,15 @@
|
|
|
101
100
|
"@types/node": "^22.14.0",
|
|
102
101
|
"@types/react": "~19.1.10",
|
|
103
102
|
"@types/react-test-renderer": "~19.1.0",
|
|
104
|
-
"expo-module-scripts": "5.0.8-canary-
|
|
103
|
+
"expo-module-scripts": "5.0.8-canary-20251009-9919e08",
|
|
105
104
|
"react": "19.1.1",
|
|
106
105
|
"react-dom": "19.1.1",
|
|
107
|
-
"react-native": "0.82.0
|
|
106
|
+
"react-native": "0.82.0",
|
|
108
107
|
"web-streams-polyfill": "^3.3.2"
|
|
109
108
|
},
|
|
110
109
|
"peerDependencies": {
|
|
111
|
-
"@expo/dom-webview": "0.2.8-canary-
|
|
112
|
-
"@expo/metro-runtime": "6.1.3-canary-
|
|
110
|
+
"@expo/dom-webview": "0.2.8-canary-20251009-9919e08",
|
|
111
|
+
"@expo/metro-runtime": "6.1.3-canary-20251009-9919e08",
|
|
113
112
|
"react": "*",
|
|
114
113
|
"react-native": "*",
|
|
115
114
|
"react-native-webview": "*"
|