one 2.0.0-beta.114.1 → 2.0.0-beta.115.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.
package/One.podspec CHANGED
@@ -33,9 +33,9 @@ Pod::Spec.new do |s|
33
33
 
34
34
  s.exclude_files = 'ios/Tests/**/*'
35
35
  s.source_files = 'ios/**/*.{h,m,swift,mm,cpp}', 'cpp/**/*.{h,cpp}'
36
- # the updates launcher entry the app's bridging header imports. nitrogen
37
- # appends its own public headers after this.
38
- s.public_header_files = 'ios/Nitro/OneUpdatesLauncherBridge.h'
36
+ # the updates launcher and launch screen entries the app's bridging header
37
+ # imports. nitrogen appends its own public headers after these.
38
+ s.public_header_files = 'ios/Nitro/OneUpdatesLauncherBridge.h', 'ios/Nitro/OneLaunchScreen.h'
39
39
 
40
40
  # nitro hybrid objects: nitrogen generates the specs and bridges from
41
41
  # src/specs/*.nitro.ts into nitrogen/generated (see README).
@@ -0,0 +1,11 @@
1
+ #import <UIKit/UIKit.h>
2
+
3
+ NS_ASSUME_NONNULL_BEGIN
4
+
5
+ // the prebuilt app delegate calls this from customizeRootView through the
6
+ // app's bridging header. it keeps the app's launch storyboard as the react
7
+ // native root view's loading view until the first content appears, so the
8
+ // launch screen never gives way to an empty root.
9
+ FOUNDATION_EXPORT void OneHoldLaunchScreen(UIView *rootView);
10
+
11
+ NS_ASSUME_NONNULL_END
@@ -0,0 +1,29 @@
1
+ #import "OneLaunchScreen.h"
2
+ #import <React/RCTRootView.h>
3
+ #import <React/RCTSurfaceHostingProxyRootView.h>
4
+
5
+ void OneHoldLaunchScreen(UIView *rootView) {
6
+ // the new architecture's factory always hands customizeRootView this class.
7
+ NSCAssert([rootView isKindOfClass:[RCTSurfaceHostingProxyRootView class]],
8
+ @"OneHoldLaunchScreen expects the react native root view, got %@", rootView.class);
9
+ RCTSurfaceHostingProxyRootView *hostView = (RCTSurfaceHostingProxyRootView *)rootView;
10
+ // the storyboard the system showed at launch, named by the app's plist.
11
+ NSString *storyboardName = [NSBundle.mainBundle objectForInfoDictionaryKey:@"UILaunchStoryboardName"];
12
+ NSCAssert(storyboardName != nil, @"OneHoldLaunchScreen needs UILaunchStoryboardName in Info.plist");
13
+ UIView *launchView =
14
+ [[UIStoryboard storyboardWithName:storyboardName bundle:NSBundle.mainBundle] instantiateInitialViewController]
15
+ .view;
16
+ // a fabric surface reports running as soon as it starts, before js draws
17
+ // anything, so the loading view's auto hide would drop it at once. it stays
18
+ // until the root component view posts its first content instead.
19
+ [hostView disableActivityIndicatorAutoHide:YES];
20
+ hostView.loadingView = launchView;
21
+ __block id observer = [NSNotificationCenter.defaultCenter
22
+ addObserverForName:RCTContentDidAppearNotification
23
+ object:nil
24
+ queue:NSOperationQueue.mainQueue
25
+ usingBlock:^(NSNotification *notification) {
26
+ [NSNotificationCenter.defaultCenter removeObserver:observer];
27
+ [launchView removeFromSuperview];
28
+ }];
29
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "one",
3
- "version": "2.0.0-beta.114.1",
3
+ "version": "2.0.0-beta.115.1",
4
4
  "description": "One is a React framework for web, iOS, and Android apps.",
5
5
  "license": "BSD-3-Clause",
6
6
  "sideEffects": [
@@ -207,18 +207,18 @@
207
207
  "@react-navigation/native-stack": "~8.0.0-alpha.52",
208
208
  "@react-navigation/routers": "~8.0.0-alpha.17",
209
209
  "@ungap/structured-clone": "^1.2.0",
210
- "@vxrn/color-scheme": "2.0.0-beta.114.1",
211
- "@vxrn/compiler": "2.0.0-beta.114.1",
212
- "@vxrn/resolve": "2.0.0-beta.114.1",
213
- "@vxrn/tslib-lite": "2.0.0-beta.114.1",
214
- "@vxrn/use-isomorphic-layout-effect": "2.0.0-beta.114.1",
215
- "@vxrn/utils": "2.0.0-beta.114.1",
216
- "@vxrn/vite-plugin-metro": "2.0.0-beta.114.1",
210
+ "@vxrn/color-scheme": "2.0.0-beta.115.1",
211
+ "@vxrn/compiler": "2.0.0-beta.115.1",
212
+ "@vxrn/resolve": "2.0.0-beta.115.1",
213
+ "@vxrn/tslib-lite": "2.0.0-beta.115.1",
214
+ "@vxrn/use-isomorphic-layout-effect": "2.0.0-beta.115.1",
215
+ "@vxrn/utils": "2.0.0-beta.115.1",
216
+ "@vxrn/vite-plugin-metro": "2.0.0-beta.115.1",
217
217
  "babel-dead-code-elimination": "1.0.10",
218
218
  "babel-plugin-module-resolver": "^5.0.2",
219
219
  "citty": "^0.1.6",
220
220
  "core-js": "^3.38.1",
221
- "create-vxrn": "2.0.0-beta.114.1",
221
+ "create-vxrn": "2.0.0-beta.115.1",
222
222
  "escape-string-regexp": "^5.0.0",
223
223
  "fast-deep-equal": "^3.1.3",
224
224
  "fast-glob": "^3.3.3",
@@ -240,7 +240,7 @@
240
240
  "tsconfig-paths": "^4",
241
241
  "use-latest-callback": "^0.2.3",
242
242
  "vite": "^8.2.2",
243
- "vxrn": "2.0.0-beta.114.1",
243
+ "vxrn": "2.0.0-beta.115.1",
244
244
  "web-streams-polyfill": "^4.3.0",
245
245
  "ws": "^8.21.0",
246
246
  "xxhashjs": "^0.2.2"