Skip to content

Commit a82b1da

Browse files
committed
chore(template): dynamically resolve node modules root
1 parent b167e81 commit a82b1da

File tree

1 file changed

+16
-7
lines changed
  • packages/react-native/local-cli/generator-macos/templates/macos

1 file changed

+16
-7
lines changed

packages/react-native/local-cli/generator-macos/templates/macos/Podfile

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,19 @@
1-
autolinking_script = File.expand_path('../node_modules/react-native-macos/scripts/cocoapods/autolinking.rb', __dir__)
2-
if File.exist?(autolinking_script)
3-
require_relative '../node_modules/react-native-macos/scripts/cocoapods/autolinking'
4-
else
5-
require_relative '../node_modules/react-native-macos/scripts/react_native_pods'
6-
require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
7-
end
1+
require 'pathname'
2+
3+
modules_root = Pathname.new(__dir__).parent
4+
modules_root = modules_root.parent until modules_root.join('node_modules').directory? || modules_root.root?
5+
node_modules = modules_root.join('node_modules')
6+
7+
autolinking_script = node_modules.join('react-native-macos/scripts/cocoapods/autolinking.rb')
8+
legacy_script = node_modules.join('react-native-macos/scripts/react_native_pods.rb')
9+
native_modules_script = node_modules.join('@react-native-community/cli-platform-ios/native_modules.rb')
10+
11+
# @react-native-community/cli v14+ (React Native 0.75+) moved the autolinking script into react-native itself.
12+
if autolinking_script.file?
13+
require autolinking_script.to_s
14+
elsif legacy_script.file? && native_modules_script.file?
15+
require legacy_script.to_s
16+
require native_modules_script.to_s
817

918
prepare_react_native_project!
1019

0 commit comments

Comments
 (0)