Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion ReactNativeNavigation.podspec
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Find.find(start_dir) do |path|
end
end

swift_project = File.exist?(swift_delegate_path)
swift_project = swift_delegate_path && File.exist?(swift_delegate_path)

# Debug output
if swift_project
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,18 +8,18 @@ import com.facebook.react.PackageList
import com.reactnativenavigation.NavigationApplication
import com.facebook.react.ReactHost
import com.facebook.react.ReactNativeHost
import com.reactnativenavigation.react.NavigationReactNativeHost
import com.facebook.react.ReactPackage
import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.load
import com.facebook.react.defaults.DefaultReactHost.getDefaultReactHost
import com.facebook.react.defaults.DefaultReactNativeHost
import com.reactnativenavigation.react.NavigationReactNativeHost
import com.facebook.react.soloader.OpenSourceMergedSoMapping
import com.facebook.soloader.SoLoader

class MainApplication : NavigationApplication() {

override val reactNativeHost: ReactNativeHost =
object : DefaultNavigationReactNativeHost(this) {
object : NavigationReactNativeHost(this) {
override fun getPackages(): List<ReactPackage> =
PackageList(this).packages.apply {
// Packages that cannot be autolinked yet can be added manually here, for example:
Expand Down
33 changes: 17 additions & 16 deletions autolink/postlink/applicationLinker.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ class ApplicationLinker {
if (!this.applicationPath) {
errorn(
'MainApplication.kt not found! Does the file exist in the correct folder?\n' +
' Please check the manual installation docs:\n' +
' https://wix.github.io/react-native-navigation/docs/installing#3-update-mainapplicationjava'
' Please check the manual installation docs:\n' +
' https://wix.github.io/react-native-navigation/docs/installing#3-update-mainapplicationjava'
);
}

Expand Down Expand Up @@ -78,10 +78,7 @@ class ApplicationLinker {
if (this._doesExtendApplication(applicationContent)) {
debugn(' Extending NavigationApplication');
return applicationContent
.replace(
/:\s*Application\(\)\s*,\s*ReactApplication/gi,
': NavigationApplication()'
)
.replace(/:\s*Application\(\)\s*,\s*ReactApplication/gi, ': NavigationApplication()')
.replace(
'import com.facebook.react.ReactApplication',
'import com.reactnativenavigation.NavigationApplication'
Expand Down Expand Up @@ -114,21 +111,21 @@ class ApplicationLinker {
return applicationContent;
}

if (this._doesExtendReactNativeHost(applicationContent)) {
if (this._doesExtendDefaultReactNativeHost(applicationContent)) {
debugn(' Changing host implementation to NavigationReactNativeHost');
return applicationContent
.replace('ReactNativeHost(this)', 'NavigationReactNativeHost(this)')
.replace('DefaultReactNativeHost(this)', 'NavigationReactNativeHost(this)')
.replace(
'import com.facebook.react.ReactNativeHost',
'import com.facebook.react.ReactNativeHost\nimport com.reactnativenavigation.react.NavigationReactNativeHost'
'import com.facebook.react.defaults.DefaultReactNativeHost',
'import com.facebook.react.defaults.DefaultReactNativeHost\nimport com.reactnativenavigation.react.NavigationReactNativeHost'
);
} else if (this._doesExtendDefaultReactNativeHost(applicationContent)) {
} else if (this._doesExtendReactNativeHost(applicationContent)) {
debugn(' Changing host implementation to NavigationReactNativeHost');
return applicationContent
.replace('DefaultReactNativeHost(this)', 'NavigationReactNativeHost(this)')
.replace('ReactNativeHost(this)', 'NavigationReactNativeHost(this)')
.replace(
'import com.facebook.react.defaults.DefaultReactNativeHost',
'import com.facebook.react.defaults.DefaultReactNativeHost\nimport com.reactnativenavigation.react.NavigationReactNativeHost'
'import com.facebook.react.ReactNativeHost',
'import com.facebook.react.ReactNativeHost\nimport com.reactnativenavigation.react.NavigationReactNativeHost'
);
}

Expand Down Expand Up @@ -160,7 +157,9 @@ class ApplicationLinker {
}

_isSOLoaderInitCalled(applicationContent) {
return /SoLoader\.init\(\s*this\s*,\s*OpenSourceMergedSoMapping\s*\);?/.test(applicationContent);
return /SoLoader\.init\(\s*this\s*,\s*OpenSourceMergedSoMapping\s*\);?/.test(
applicationContent
);
}

_removeNewArchEntryPointLoad(applicationContent) {
Expand All @@ -176,7 +175,9 @@ class ApplicationLinker {
}

_isNewArchEntryPointLoadCalled(applicationContent) {
return /if\s*\(\s*BuildConfig\.IS_NEW_ARCHITECTURE_ENABLED\s*\)\s*\{[\s\S]*?load\(\)\s*[\s}]*?\}/.test(applicationContent);
return /if\s*\(\s*BuildConfig\.IS_NEW_ARCHITECTURE_ENABLED\s*\)\s*\{[\s\S]*?load\(\)\s*[\s}]*?\}/.test(
applicationContent
);
}
}

Expand Down
2 changes: 2 additions & 0 deletions playground/ios/playground/AppDelegate.mm
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ - (BOOL)application:(UIApplication *)application
[super application:application didFinishLaunchingWithOptions:launchOptions];
self.dependencyProvider = [RCTAppDependencyProvider new];



if (self.bridgelessEnabled) {
#ifdef RCT_NEW_ARCH_ENABLED
[ReactNativeNavigation
Expand Down
Loading