expo-template-bare-minimum 53.0.0-canary-20250407-10a9b42 → 53.0.0-preview.12
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/android/app/build.gradle +1 -0
- package/android/gradle.properties +1 -1
- package/ios/HelloWorld/AppDelegate.swift +32 -10
- package/ios/Podfile +1 -1
- package/package.json +4 -7
package/android/app/build.gradle
CHANGED
|
@@ -14,6 +14,7 @@ react {
|
|
|
14
14
|
hermesCommand = new File(["node", "--print", "require.resolve('react-native/package.json')"].execute(null, rootDir).text.trim()).getParentFile().getAbsolutePath() + "/sdks/hermesc/%OS-BIN%/hermesc"
|
|
15
15
|
codegenDir = new File(["node", "--print", "require.resolve('@react-native/codegen/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim()).getParentFile().getAbsoluteFile()
|
|
16
16
|
|
|
17
|
+
enableBundleCompression = (findProperty('android.enableBundleCompression') ?: false).toBoolean()
|
|
17
18
|
// Use Expo CLI to bundle the app, this ensures the Metro config
|
|
18
19
|
// works correctly with Expo projects.
|
|
19
20
|
cliFile = new File(["node", "--print", "require.resolve('@expo/cli', { paths: [require.resolve('expo/package.json')] })"].execute(null, rootDir).text.trim())
|
|
@@ -35,7 +35,7 @@ reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64
|
|
|
35
35
|
# your application. You should enable this flag either if you want
|
|
36
36
|
# to write custom TurboModules/Fabric components OR use libraries that
|
|
37
37
|
# are providing them.
|
|
38
|
-
newArchEnabled=
|
|
38
|
+
newArchEnabled=true
|
|
39
39
|
|
|
40
40
|
# Use this property to enable or disable the Hermes JS engine.
|
|
41
41
|
# If set to false, you will be using JSC instead.
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import React
|
|
2
1
|
import Expo
|
|
2
|
+
import React
|
|
3
|
+
import ReactAppDependencyProvider
|
|
3
4
|
|
|
4
5
|
@UIApplicationMain
|
|
5
6
|
public class AppDelegate: ExpoAppDelegate {
|
|
@@ -7,18 +8,22 @@ public class AppDelegate: ExpoAppDelegate {
|
|
|
7
8
|
_ application: UIApplication,
|
|
8
9
|
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? = nil
|
|
9
10
|
) -> Bool {
|
|
10
|
-
|
|
11
|
-
|
|
11
|
+
let delegate = ReactNativeDelegate()
|
|
12
|
+
let factory = ExpoReactNativeFactory(delegate: delegate)
|
|
13
|
+
delegate.dependencyProvider = RCTAppDependencyProvider()
|
|
12
14
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
+
reactNativeFactoryDelegate = delegate
|
|
16
|
+
reactNativeFactory = factory
|
|
15
17
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
#if os(iOS) || os(tvOS)
|
|
19
|
+
window = UIWindow(frame: UIScreen.main.bounds)
|
|
20
|
+
reactNativeFactory?.startReactNative(
|
|
21
|
+
withModuleName: "main",
|
|
22
|
+
in: window,
|
|
23
|
+
launchOptions: launchOptions)
|
|
21
24
|
#endif
|
|
25
|
+
|
|
26
|
+
return super.application(application, didFinishLaunchingWithOptions: launchOptions)
|
|
22
27
|
}
|
|
23
28
|
|
|
24
29
|
// Linking API
|
|
@@ -40,3 +45,20 @@ public class AppDelegate: ExpoAppDelegate {
|
|
|
40
45
|
return super.application(application, continue: userActivity, restorationHandler: restorationHandler) || result
|
|
41
46
|
}
|
|
42
47
|
}
|
|
48
|
+
|
|
49
|
+
class ReactNativeDelegate: ExpoReactNativeFactoryDelegate {
|
|
50
|
+
// Extension point for config-plugins
|
|
51
|
+
|
|
52
|
+
override func sourceURL(for bridge: RCTBridge) -> URL? {
|
|
53
|
+
// needed to return the correct URL for expo-dev-client.
|
|
54
|
+
bridge.bundleURL ?? bundleURL()
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
override func bundleURL() -> URL? {
|
|
58
|
+
#if DEBUG
|
|
59
|
+
return RCTBundleURLProvider.sharedSettings().jsBundleURL(forBundleRoot: ".expo/.virtual-metro-entry")
|
|
60
|
+
#else
|
|
61
|
+
return Bundle.main.url(forResource: "main", withExtension: "jsbundle")
|
|
62
|
+
#endif
|
|
63
|
+
}
|
|
64
|
+
}
|
package/ios/Podfile
CHANGED
|
@@ -4,7 +4,7 @@ require File.join(File.dirname(`node --print "require.resolve('react-native/pack
|
|
|
4
4
|
require 'json'
|
|
5
5
|
podfile_properties = JSON.parse(File.read(File.join(__dir__, 'Podfile.properties.json'))) rescue {}
|
|
6
6
|
|
|
7
|
-
ENV['RCT_NEW_ARCH_ENABLED'] = podfile_properties['newArchEnabled'] == '
|
|
7
|
+
ENV['RCT_NEW_ARCH_ENABLED'] = '0' if podfile_properties['newArchEnabled'] == 'false'
|
|
8
8
|
ENV['EX_DEV_CLIENT_NETWORK_INSPECTOR'] = podfile_properties['EX_DEV_CLIENT_NETWORK_INSPECTOR']
|
|
9
9
|
|
|
10
10
|
platform :ios, podfile_properties['ios.deploymentTarget'] || '15.1'
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "expo-template-bare-minimum",
|
|
3
3
|
"description": "This bare project template includes a minimal setup for using unimodules with React Native.",
|
|
4
4
|
"license": "0BSD",
|
|
5
|
-
"version": "53.0.0-
|
|
5
|
+
"version": "53.0.0-preview.12",
|
|
6
6
|
"main": "index.js",
|
|
7
7
|
"scripts": {
|
|
8
8
|
"start": "expo start --dev-client",
|
|
@@ -11,13 +11,10 @@
|
|
|
11
11
|
"web": "expo start --web"
|
|
12
12
|
},
|
|
13
13
|
"dependencies": {
|
|
14
|
-
"expo": "53.0.0-
|
|
15
|
-
"expo-status-bar": "2.
|
|
14
|
+
"expo": "53.0.0-preview.12",
|
|
15
|
+
"expo-status-bar": "~2.2.2",
|
|
16
16
|
"react": "19.0.0",
|
|
17
|
-
"react-native": "0.79.
|
|
18
|
-
},
|
|
19
|
-
"overrides": {
|
|
20
|
-
"react": "19.0.0"
|
|
17
|
+
"react-native": "0.79.1"
|
|
21
18
|
},
|
|
22
19
|
"devDependencies": {
|
|
23
20
|
"@babel/core": "^7.20.0"
|