expo 53.0.0 → 53.0.2

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.
@@ -32,7 +32,7 @@ buildscript {
32
32
  def reactNativeVersion = project.extensions.getByType(ExpoModuleExtension).reactNativeVersion
33
33
 
34
34
  group = 'host.exp.exponent'
35
- version = '53.0.0'
35
+ version = '53.0.2'
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 "53.0.0"
46
+ versionName "53.0.2"
47
47
  consumerProguardFiles("proguard-rules.pro")
48
48
  }
49
49
  testOptions {
@@ -1,3 +1,4 @@
1
1
  import './winter';
2
2
  import 'expo-asset';
3
+ import 'expo/virtual/rsc';
3
4
  //# sourceMappingURL=Expo.fx.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Expo.fx.d.ts","sourceRoot":"","sources":["../src/Expo.fx.tsx"],"names":[],"mappings":"AACA,OAAO,UAAU,CAAC;AAClB,OAAO,YAAY,CAAC"}
1
+ {"version":3,"file":"Expo.fx.d.ts","sourceRoot":"","sources":["../src/Expo.fx.tsx"],"names":[],"mappings":"AACA,OAAO,UAAU,CAAC;AAClB,OAAO,YAAY,CAAC;AACpB,OAAO,kBAAkB,CAAC"}
@@ -1,2 +1,3 @@
1
1
  import './winter';
2
+ import 'expo/virtual/rsc';
2
3
  //# sourceMappingURL=Expo.fx.web.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Expo.fx.web.d.ts","sourceRoot":"","sources":["../src/Expo.fx.web.tsx"],"names":[],"mappings":"AAAA,OAAO,UAAU,CAAC"}
1
+ {"version":3,"file":"Expo.fx.web.d.ts","sourceRoot":"","sources":["../src/Expo.fx.web.tsx"],"names":[],"mappings":"AAAA,OAAO,UAAU,CAAC;AAClB,OAAO,kBAAkB,CAAC"}
@@ -23,6 +23,7 @@ type InitialProps = {
23
23
  * - Asserts if the `expo-updates` package is misconfigured.
24
24
  * - Asserts if `react-native` is not aliased to `react-native-web` when running in the browser.
25
25
  * @param component The React component class that renders the rest of your app.
26
+ * @see For information on how to setup `registerRootComponent` in an existing (bare) React Native app, see [Common questions](#rootregistercomponent-setup-for-existing-react-native-projects) below.
26
27
  */
27
28
  export default function registerRootComponent<P extends InitialProps>(component: ComponentType<P>): void;
28
29
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"registerRootComponent.d.ts","sourceRoot":"","sources":["../../src/launch/registerRootComponent.tsx"],"names":[],"mappings":"AAAA,OAAO,YAAY,CAAC;AAEpB,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAQ3C,KAAK,YAAY,GAAG;IAClB,GAAG,CAAC,EAAE;QACJ,YAAY,CAAC,EAAE,GAAG,CAAC;QACnB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;IACF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB,CAAC;AAGF;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,CAAC,SAAS,YAAY,EAClE,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC,GAC1B,IAAI,CAwBN"}
1
+ {"version":3,"file":"registerRootComponent.d.ts","sourceRoot":"","sources":["../../src/launch/registerRootComponent.tsx"],"names":[],"mappings":"AAAA,OAAO,YAAY,CAAC;AAEpB,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAQ3C,KAAK,YAAY,GAAG;IAClB,GAAG,CAAC,EAAE;QACJ,YAAY,CAAC,EAAE,GAAG,CAAC;QACnB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;IACF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB,CAAC;AAGF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,CAAC,SAAS,YAAY,EAClE,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC,GAC1B,IAAI,CAwBN"}
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "@expo/fingerprint": "~0.12.3",
3
- "@expo/metro-runtime": "~5.0.3",
3
+ "@expo/metro-runtime": "~5.0.4",
4
4
  "@expo/vector-icons": "^14.1.0",
5
- "@expo/ui": "~0.1.1-alpha.5",
5
+ "@expo/ui": "~0.1.1-alpha.6",
6
6
  "@react-native-async-storage/async-storage": "2.1.2",
7
7
  "@react-native-community/datetimepicker": "8.3.0",
8
8
  "@react-native-masked-view/masked-view": "0.3.2",
@@ -11,7 +11,7 @@
11
11
  "@react-native-community/viewpager": "5.0.11",
12
12
  "@react-native-picker/picker": "2.11.0",
13
13
  "@react-native-segmented-control/segmented-control": "2.5.7",
14
- "@stripe/stripe-react-native": "0.43.0",
14
+ "@stripe/stripe-react-native": "0.45.0",
15
15
  "eslint-config-expo": "~9.1.1",
16
16
  "expo-analytics-amplitude": "~11.3.0",
17
17
  "expo-app-auth": "~11.1.0",
@@ -36,7 +36,7 @@
36
36
  "expo-constants": "~17.1.3",
37
37
  "expo-contacts": "~14.2.2",
38
38
  "expo-crypto": "~14.1.3",
39
- "expo-dev-client": "~5.1.4",
39
+ "expo-dev-client": "~5.1.5",
40
40
  "expo-device": "~7.1.3",
41
41
  "expo-document-picker": "~13.1.4",
42
42
  "expo-file-system": "~18.1.7",
@@ -54,21 +54,21 @@
54
54
  "expo-linear-gradient": "~14.1.3",
55
55
  "expo-linking": "~7.1.3",
56
56
  "expo-local-authentication": "~16.0.3",
57
- "expo-localization": "~16.1.3",
57
+ "expo-localization": "~16.1.4",
58
58
  "expo-location": "~18.1.3",
59
59
  "expo-mail-composer": "~14.1.3",
60
60
  "expo-manifests": "~0.16.3",
61
61
  "expo-maps": "~0.9.7",
62
- "expo-media-library": "~17.1.4",
62
+ "expo-media-library": "~17.1.5",
63
63
  "expo-mesh-gradient": "~0.3.3",
64
- "expo-module-template": "~10.16.4",
65
- "expo-modules-core": "~2.3.10",
64
+ "expo-module-template": "~10.16.5",
65
+ "expo-modules-core": "~2.3.11",
66
66
  "expo-navigation-bar": "~4.2.2",
67
67
  "expo-network": "~7.1.4",
68
68
  "expo-notifications": "~0.31.0",
69
69
  "expo-print": "~14.1.3",
70
70
  "expo-live-photo": "~0.1.3",
71
- "expo-router": "~5.0.2",
71
+ "expo-router": "~5.0.3",
72
72
  "expo-screen-capture": "~7.1.3",
73
73
  "expo-screen-orientation": "~8.1.4",
74
74
  "expo-secure-store": "~14.2.2",
@@ -77,14 +77,14 @@
77
77
  "expo-sms": "~13.1.3",
78
78
  "expo-speech": "~13.1.5",
79
79
  "expo-splash-screen": "~0.30.6",
80
- "expo-sqlite": "~15.2.7",
80
+ "expo-sqlite": "~15.2.8",
81
81
  "expo-status-bar": "~2.2.2",
82
82
  "expo-store-review": "~8.1.4",
83
83
  "expo-symbols": "~0.4.3",
84
84
  "expo-system-ui": "~5.0.5",
85
85
  "expo-task-manager": "~13.1.4",
86
86
  "expo-tracking-transparency": "~5.2.3",
87
- "expo-updates": "~0.28.8",
87
+ "expo-updates": "~0.28.10",
88
88
  "expo-video-thumbnails": "~9.1.2",
89
89
  "expo-video": "~2.1.7",
90
90
  "expo-web-browser": "~14.1.5",
@@ -63,12 +63,12 @@
63
63
 
64
64
  - (UIViewController *)createRootViewController
65
65
  {
66
- return [_expoAppDelegate.reactNativeFactoryDelegate createRootViewController];
66
+ return [_expoAppDelegate.factory.delegate createRootViewController];
67
67
  }
68
68
 
69
69
  - (void)customizeRootView:(UIView *)rootView
70
70
  {
71
- [_expoAppDelegate.reactNativeFactoryDelegate customizeRootView:rootView];
71
+ [_expoAppDelegate.factory.delegate customizeRootView:rootView];
72
72
  }
73
73
 
74
74
  #pragma mark - RCTComponentViewFactoryComponentProvider
@@ -94,11 +94,11 @@
94
94
 
95
95
  - (id<RCTTurboModule>)getModuleInstanceFromClass:(Class)moduleClass
96
96
  {
97
- return [_expoAppDelegate.reactNativeFactoryDelegate getModuleInstanceFromClass:moduleClass];
97
+ return [_expoAppDelegate.factory.delegate getModuleInstanceFromClass:moduleClass];
98
98
  }
99
99
 
100
100
  - (Class)getModuleClassFromName:(const char *)name {
101
- return [_expoAppDelegate.reactNativeFactoryDelegate getModuleClassFromName:name];
101
+ return [_expoAppDelegate.factory.delegate getModuleClassFromName:name];
102
102
  }
103
103
 
104
104
 
@@ -14,17 +14,13 @@ import ReactAppDependencyProvider
14
14
  */
15
15
  @objc(EXExpoAppDelegate)
16
16
  open class ExpoAppDelegate: NSObject, ReactNativeFactoryProvider, UIApplicationDelegate {
17
- @objc public var reactNativeFactory: RCTReactNativeFactory?
18
- @objc public var reactNativeFactoryDelegate: ExpoReactNativeFactoryDelegate?
17
+ @objc public var factory: RCTReactNativeFactory?
19
18
  private let defaultModuleName = "main"
20
19
  private let defaultInitialProps = [AnyHashable: Any]()
21
20
 
22
- /// The window object, used to render the UIViewControllers
23
- public var window: UIWindow?
24
-
25
21
  func loadMacOSWindow(launchOptions: [UIApplication.LaunchOptionsKey: Any]?) {
26
22
  #if os(macOS)
27
- if let rootView = reactNativeFactory?.rootViewFactory.view(
23
+ if let rootView = factory?.rootViewFactory.view(
28
24
  withModuleName: defaultModuleName,
29
25
  initialProperties: defaultInitialProps,
30
26
  launchOptions: launchOptions
@@ -50,15 +46,19 @@ open class ExpoAppDelegate: NSObject, ReactNativeFactoryProvider, UIApplicationD
50
46
  #endif
51
47
  }
52
48
 
49
+ public func bindReactNativeFactory(_ factory: RCTReactNativeFactory) {
50
+ self.factory = factory
51
+ }
52
+
53
53
  public func recreateRootView(
54
54
  withBundleURL: URL?,
55
55
  moduleName: String?,
56
56
  initialProps: [AnyHashable: Any]?,
57
57
  launchOptions: [AnyHashable: Any]?
58
58
  ) -> UIView {
59
- guard let delegate = self.reactNativeFactoryDelegate,
60
- let rootViewFactory = self.reactNativeFactory?.rootViewFactory else {
61
- fatalError("recreateRootView: Missing reactNativeFactory in ExpoAppDelegate")
59
+ guard let delegate = self.factory?.delegate,
60
+ let rootViewFactory = self.factory?.rootViewFactory else {
61
+ fatalError("recreateRootView: Missing factory in ExpoAppDelegate")
62
62
  }
63
63
 
64
64
  if delegate.newArchEnabled() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo",
3
- "version": "53.0.0",
3
+ "version": "53.0.2",
4
4
  "description": "The Expo SDK",
5
5
  "main": "src/Expo.ts",
6
6
  "module": "src/Expo.ts",
@@ -73,20 +73,20 @@
73
73
  "homepage": "https://github.com/expo/expo/tree/main/packages/expo",
74
74
  "dependencies": {
75
75
  "@babel/runtime": "^7.20.0",
76
- "@expo/cli": "0.24.6",
77
- "@expo/config": "~11.0.5",
78
- "@expo/config-plugins": "~9.1.7",
76
+ "@expo/cli": "0.24.8",
77
+ "@expo/config": "~11.0.6",
78
+ "@expo/config-plugins": "~10.0.0",
79
79
  "@expo/fingerprint": "0.12.3",
80
- "@expo/metro-config": "0.20.8",
80
+ "@expo/metro-config": "0.20.10",
81
81
  "@expo/vector-icons": "^14.0.0",
82
- "babel-preset-expo": "~13.1.8",
82
+ "babel-preset-expo": "~13.1.9",
83
83
  "expo-asset": "~11.1.3",
84
84
  "expo-constants": "~17.1.3",
85
85
  "expo-file-system": "~18.1.7",
86
86
  "expo-font": "~13.2.2",
87
87
  "expo-keep-awake": "~14.1.3",
88
88
  "expo-modules-autolinking": "2.1.8",
89
- "expo-modules-core": "2.3.10",
89
+ "expo-modules-core": "2.3.11",
90
90
  "react-native-edge-to-edge": "1.6.0",
91
91
  "whatwg-url-without-unicode": "8.0.0-3"
92
92
  },
@@ -119,5 +119,5 @@
119
119
  "optional": true
120
120
  }
121
121
  },
122
- "gitHead": "a639a661a5329e58f916cf69b8f1a7718bbdd26e"
122
+ "gitHead": "bb2cf89d99a9d7f70b07419cc36cdf80c2764217"
123
123
  }
package/src/Expo.fx.tsx CHANGED
@@ -1,6 +1,7 @@
1
1
  // load expo-asset immediately to set a custom `source` transformer in React Native
2
2
  import './winter';
3
3
  import 'expo-asset';
4
+ import 'expo/virtual/rsc';
4
5
 
5
6
  import Constants from 'expo-constants';
6
7
  import { AppRegistry, NativeModules, LogBox, Platform } from 'react-native';
@@ -1,4 +1,5 @@
1
1
  import './winter';
2
+ import 'expo/virtual/rsc';
2
3
 
3
4
  // When users dangerously import a file inside of react-native, it breaks the web alias.
4
5
  // This is one of the most common, and cryptic web errors that users encounter.
@@ -33,6 +33,7 @@ type InitialProps = {
33
33
  * - Asserts if the `expo-updates` package is misconfigured.
34
34
  * - Asserts if `react-native` is not aliased to `react-native-web` when running in the browser.
35
35
  * @param component The React component class that renders the rest of your app.
36
+ * @see For information on how to setup `registerRootComponent` in an existing (bare) React Native app, see [Common questions](#rootregistercomponent-setup-for-existing-react-native-projects) below.
36
37
  */
37
38
  export default function registerRootComponent<P extends InitialProps>(
38
39
  component: ComponentType<P>
@@ -7,7 +7,9 @@
7
7
  "esModuleInterop": true,
8
8
  "jsx": "react-native",
9
9
  "lib": ["DOM", "ESNext"],
10
- "moduleResolution": "node",
10
+ "module": "preserve",
11
+ "moduleDetection": "force",
12
+ "moduleResolution": "bundler",
11
13
  "noEmit": true,
12
14
  "resolveJsonModule": true,
13
15
  "skipLibCheck": true,
package/virtual/rsc.js ADDED
@@ -0,0 +1 @@
1
+ // The contents of this file are added in Metro.