create-crossbind 2.0.0-beta.57 → 2.0.0-beta.59

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-crossbind",
3
- "version": "2.0.0-beta.57",
3
+ "version": "2.0.0-beta.59",
4
4
  "description": "Create crossbind Applications",
5
5
  "homepage": "https://github.com/crossbind/crossbind/tree/main/tooling/create-app#readme",
6
6
  "repository": {
@@ -10,10 +10,10 @@
10
10
  "build": "crossbind build -p wasm -a wasm32 -r st -e node -b release"
11
11
  },
12
12
  "dependencies": {
13
- "@crossbind/example-lib-prebuilt-matrix": "^2.0.0-beta.56"
13
+ "@crossbind/example-lib-prebuilt-matrix": "^2.0.0-beta.58"
14
14
  },
15
15
  "devDependencies": {
16
- "crossbind": "^2.0.0-beta.56"
16
+ "crossbind": "^2.0.0-beta.58"
17
17
  },
18
18
  "keywords": [
19
19
  "crossbind-sample",
@@ -23,7 +23,7 @@
23
23
  ],
24
24
  "dependencies": {},
25
25
  "devDependencies": {
26
- "crossbind": "^2.0.0-beta.56",
26
+ "crossbind": "^2.0.0-beta.58",
27
27
  "wrangler": "^4.120.0",
28
28
  "@playwright/test": "^1.62.1"
29
29
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@crossbind/example-lib-cmake",
3
- "version": "2.0.0-beta.56",
3
+ "version": "2.0.0-beta.58",
4
4
  "description": "crossbind sample library: simple cmake library",
5
5
  "homepage": "https://github.com/crossbind/crossbind/tree/main/examples/lib-cmake#readme",
6
6
  "repository": "https://github.com/crossbind/crossbind.git",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@crossbind/example-lib-prebuilt-matrix",
3
- "version": "2.0.0-beta.56",
3
+ "version": "2.0.0-beta.58",
4
4
  "description": "crossbind sample prebuilt library: matrix multiplier",
5
5
  "homepage": "https://github.com/crossbind/crossbind/tree/main/examples/lib-prebuilt-matrix#readme",
6
6
  "repository": "https://github.com/crossbind/crossbind.git",
@@ -16,7 +16,7 @@
16
16
  "prepublishOnly": "crossbind build"
17
17
  },
18
18
  "devDependencies": {
19
- "crossbind": "^2.0.0-beta.56"
19
+ "crossbind": "^2.0.0-beta.58"
20
20
  },
21
21
  "keywords": [
22
22
  "crossbind-sample",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@crossbind/example-lib-source",
3
- "version": "2.0.0-beta.56",
3
+ "version": "2.0.0-beta.58",
4
4
  "description": "crossbind sample library: simple source library",
5
5
  "homepage": "https://github.com/crossbind/crossbind/tree/main/examples/lib-source#readme",
6
6
  "repository": "https://github.com/crossbind/crossbind.git",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "hashes": {
3
- "/Users/runner/work/crossbind/crossbind/examples/mobile-reactnative-cli/src/native/native.h": "d105082c6e8c8652ea461e161c501e824b6b625f7b819490102c5c0699744249",
4
- "/Users/runner/work/crossbind/crossbind/examples/mobile-reactnative-cli/.crossbind/build/interface/native.i": "eab7d231467438ee3e5f5af1c3ae64919c0514393461653981fb40f26b5edad3"
3
+ "/Users/runner/work/crossbind/crossbind/examples/mobile-reactnative-cli/src/native/native.h": "swig-macros-1\nd105082c6e8c8652ea461e161c501e824b6b625f7b819490102c5c0699744249",
4
+ "/Users/runner/work/crossbind/crossbind/examples/mobile-reactnative-cli/.crossbind/build/interface/native.i": "eab7d231467438ee3e5f5af1c3ae64919c0514393461653981fb40f26b5edad3\nd105082c6e8c8652ea461e161c501e824b6b625f7b819490102c5c0699744249"
5
5
  },
6
6
  "interfaces": {
7
7
  "/Users/runner/work/crossbind/crossbind/examples/mobile-reactnative-cli/src/native/native.h": "/Users/runner/work/crossbind/crossbind/examples/mobile-reactnative-cli/.crossbind/build/interface/native.i"
@@ -2,42 +2,41 @@ import UIKit
2
2
  import React
3
3
  import React_RCTAppDelegate
4
4
  import ReactAppDependencyProvider
5
-
5
+
6
6
  @main
7
7
  class AppDelegate: UIResponder, UIApplicationDelegate {
8
8
  var window: UIWindow?
9
-
10
9
  var reactNativeDelegate: ReactNativeDelegate?
11
10
  var reactNativeFactory: RCTReactNativeFactory?
12
-
11
+ var launchOptions: [UIApplication.LaunchOptionsKey: Any]?
12
+
13
13
  func application(
14
14
  _ application: UIApplication,
15
15
  didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? = nil
16
16
  ) -> Bool {
17
- let delegate = ReactNativeDelegate()
18
- let factory = RCTReactNativeFactory(delegate: delegate)
19
- delegate.dependencyProvider = RCTAppDependencyProvider()
20
-
21
- reactNativeDelegate = delegate
22
- reactNativeFactory = factory
23
-
24
- window = UIWindow(frame: UIScreen.main.bounds)
25
-
26
- factory.startReactNative(
27
- withModuleName: "crossbindSampleReactNativeCLI",
28
- in: window,
29
- launchOptions: launchOptions
30
- )
31
-
17
+ self.launchOptions = launchOptions
32
18
  return true
33
19
  }
20
+
21
+ func application(
22
+ _ application: UIApplication,
23
+ configurationForConnecting connectingSceneSession: UISceneSession,
24
+ options: UIScene.ConnectionOptions
25
+ ) -> UISceneConfiguration {
26
+ let configuration = UISceneConfiguration(
27
+ name: "Default Configuration",
28
+ sessionRole: connectingSceneSession.role
29
+ )
30
+ configuration.delegateClass = SceneDelegate.self
31
+ return configuration
32
+ }
34
33
  }
35
-
34
+
36
35
  class ReactNativeDelegate: RCTDefaultReactNativeFactoryDelegate {
37
36
  override func sourceURL(for bridge: RCTBridge) -> URL? {
38
37
  self.bundleURL()
39
38
  }
40
-
39
+
41
40
  override func bundleURL() -> URL? {
42
41
  #if DEBUG
43
42
  RCTBundleURLProvider.sharedSettings().jsBundleURL(forBundleRoot: "index")
@@ -45,4 +44,4 @@ class ReactNativeDelegate: RCTDefaultReactNativeFactoryDelegate {
45
44
  Bundle.main.url(forResource: "main", withExtension: "jsbundle")
46
45
  #endif
47
46
  }
48
- }
47
+ }
@@ -37,6 +37,23 @@
37
37
  <string></string>
38
38
  <key>RCTNewArchEnabled</key>
39
39
  <true/>
40
+ <key>UIApplicationSceneManifest</key>
41
+ <dict>
42
+ <key>UIApplicationSupportsMultipleScenes</key>
43
+ <false/>
44
+ <key>UISceneConfigurations</key>
45
+ <dict>
46
+ <key>UIWindowSceneSessionRoleApplication</key>
47
+ <array>
48
+ <dict>
49
+ <key>UISceneConfigurationName</key>
50
+ <string>Default Configuration</string>
51
+ <key>UISceneDelegateClassName</key>
52
+ <string>$(PRODUCT_MODULE_NAME).SceneDelegate</string>
53
+ </dict>
54
+ </array>
55
+ </dict>
56
+ </dict>
40
57
  <key>UILaunchStoryboardName</key>
41
58
  <string>LaunchScreen</string>
42
59
  <key>UIRequiredDeviceCapabilities</key>
@@ -0,0 +1,39 @@
1
+ import UIKit
2
+ import React
3
+ import React_RCTAppDelegate
4
+ import ReactAppDependencyProvider
5
+
6
+ class SceneDelegate: UIResponder, UIWindowSceneDelegate {
7
+ var window: UIWindow?
8
+ var reactNativeDelegate: ReactNativeDelegate?
9
+ var reactNativeFactory: RCTReactNativeFactory?
10
+
11
+ func scene(
12
+ _ scene: UIScene,
13
+ willConnectTo session: UISceneSession,
14
+ options connectionOptions: UIScene.ConnectionOptions
15
+ ) {
16
+ guard let windowScene = scene as? UIWindowScene else {
17
+ return
18
+ }
19
+
20
+ let appDelegate = UIApplication.shared.delegate as? AppDelegate
21
+ let rnDelegate = appDelegate?.reactNativeDelegate ?? ReactNativeDelegate()
22
+ rnDelegate.dependencyProvider = RCTAppDependencyProvider()
23
+ let factory = appDelegate?.reactNativeFactory ?? RCTReactNativeFactory(delegate: rnDelegate)
24
+
25
+ reactNativeDelegate = rnDelegate
26
+ reactNativeFactory = factory
27
+ appDelegate?.reactNativeDelegate = rnDelegate
28
+ appDelegate?.reactNativeFactory = factory
29
+
30
+ let window = UIWindow(windowScene: windowScene)
31
+ factory.startReactNative(
32
+ withModuleName: "crossbindSampleReactNativeCLI",
33
+ in: window,
34
+ launchOptions: appDelegate?.launchOptions
35
+ )
36
+ self.window = window
37
+ appDelegate?.window = window
38
+ }
39
+ }
@@ -11,6 +11,7 @@
11
11
  13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; };
12
12
  1A36F558F6D0202E72A8DDE4 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB81A68108700A75B9A /* PrivacyInfo.xcprivacy */; };
13
13
  761780ED2CA45674006654EE /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 761780EC2CA45674006654EE /* AppDelegate.swift */; };
14
+ 761780EF2CA45674006654EF /* SceneDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 761780EE2CA45674006654EF /* SceneDelegate.swift */; };
14
15
  81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; };
15
16
  /* End PBXBuildFile section */
16
17
 
@@ -23,6 +24,7 @@
23
24
  5709B34CF0A7D63546082F79 /* Pods-crossbindSampleReactNativeCLI.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-crossbindSampleReactNativeCLI.release.xcconfig"; path = "Target Support Files/Pods-crossbindSampleReactNativeCLI/Pods-crossbindSampleReactNativeCLI.release.xcconfig"; sourceTree = "<group>"; };
24
25
  5DCACB8F33CDC322A6C60F78 /* libPods-crossbindSampleReactNativeCLI.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-crossbindSampleReactNativeCLI.a"; sourceTree = BUILT_PRODUCTS_DIR; };
25
26
  761780EC2CA45674006654EE /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = AppDelegate.swift; path = crossbindSampleReactNativeCLI/AppDelegate.swift; sourceTree = "<group>"; };
27
+ 761780EE2CA45674006654EF /* SceneDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = SceneDelegate.swift; path = crossbindSampleReactNativeCLI/SceneDelegate.swift; sourceTree = "<group>"; };
26
28
  81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = crossbindSampleReactNativeCLI/LaunchScreen.storyboard; sourceTree = "<group>"; };
27
29
  ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
28
30
  /* End PBXFileReference section */
@@ -44,6 +46,7 @@
44
46
  children = (
45
47
  13B07FB51A68108700A75B9A /* Images.xcassets */,
46
48
  761780EC2CA45674006654EE /* AppDelegate.swift */,
49
+ 761780EE2CA45674006654EF /* SceneDelegate.swift */,
47
50
  13B07FB61A68108700A75B9A /* Info.plist */,
48
51
  81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */,
49
52
  13B07FB81A68108700A75B9A /* PrivacyInfo.xcprivacy */,
@@ -247,6 +250,7 @@
247
250
  buildActionMask = 2147483647;
248
251
  files = (
249
252
  761780ED2CA45674006654EE /* AppDelegate.swift in Sources */,
253
+ 761780EF2CA45674006654EF /* SceneDelegate.swift in Sources */,
250
254
  );
251
255
  runOnlyForDeploymentPostprocessing = 0;
252
256
  };
@@ -20,10 +20,10 @@
20
20
  "e2e:android": "pnpm run run:android && pnpm run maestro:android"
21
21
  },
22
22
  "dependencies": {
23
- "@crossbind/core-embind-jsi": "^2.0.0-beta.56",
24
- "@crossbind/plugin-react-native": "^2.0.0-beta.56",
25
- "@crossbind/plugin-react-native-ios-helper": "^2.0.0-beta.56",
26
- "@crossbind/example-lib-prebuilt-matrix": "^2.0.0-beta.56",
23
+ "@crossbind/core-embind-jsi": "^2.0.0-beta.58",
24
+ "@crossbind/plugin-react-native": "^2.0.0-beta.59",
25
+ "@crossbind/plugin-react-native-ios-helper": "^2.0.0-beta.58",
26
+ "@crossbind/example-lib-prebuilt-matrix": "^2.0.0-beta.58",
27
27
  "react": "19.2.3",
28
28
  "react-native": "0.85.3",
29
29
  "react-native-safe-area-context": "^5.8.0",
@@ -51,7 +51,7 @@
51
51
  "prettier": "3.9.6",
52
52
  "react-test-renderer": "19.2.3",
53
53
  "typescript": "^5.8.3",
54
- "@crossbind/plugin-metro": "^2.0.0-beta.56"
54
+ "@crossbind/plugin-metro": "^2.0.0-beta.58"
55
55
  },
56
56
  "engines": {
57
57
  "node": ">=24"