# platform :ios, '9.0' # require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules' # def add_flipper_pods!(versions = {}) # versions['Flipper'] ||= '~> 0.33.1' # versions['DoubleConversion'] ||= '1.1.7' # versions['Flipper-Folly'] ||= '~> 2.1' # versions['Flipper-Glog'] ||= '0.3.6' # versions['Flipper-PeerTalk'] ||= '~> 0.0.4' # versions['Flipper-RSocket'] ||= '~> 1.0' # pod 'FlipperKit', versions['Flipper'], :configuration => 'Debug' # pod 'FlipperKit/FlipperKitLayoutPlugin', versions['Flipper'], :configuration => 'Debug' # pod 'FlipperKit/SKIOSNetworkPlugin', versions['Flipper'], :configuration => 'Debug' # pod 'FlipperKit/FlipperKitUserDefaultsPlugin', versions['Flipper'], :configuration => 'Debug' # pod 'FlipperKit/FlipperKitReactPlugin', versions['Flipper'], :configuration => 'Debug' # # List all transitive dependencies for FlipperKit pods # # to avoid them being linked in Release builds # pod 'Flipper', versions['Flipper'], :configuration => 'Debug' # pod 'Flipper-DoubleConversion', versions['DoubleConversion'], :configuration => 'Debug' # pod 'Flipper-Folly', versions['Flipper-Folly'], :configuration => 'Debug' # pod 'Flipper-Glog', versions['Flipper-Glog'], :configuration => 'Debug' # pod 'Flipper-PeerTalk', versions['Flipper-PeerTalk'], :configuration => 'Debug' # pod 'Flipper-RSocket', versions['Flipper-RSocket'], :configuration => 'Debug' # pod 'FlipperKit/Core', versions['Flipper'], :configuration => 'Debug' # pod 'FlipperKit/CppBridge', versions['Flipper'], :configuration => 'Debug' # pod 'FlipperKit/FBCxxFollyDynamicConvert', versions['Flipper'], :configuration => 'Debug' # pod 'FlipperKit/FBDefines', versions['Flipper'], :configuration => 'Debug' # pod 'FlipperKit/FKPortForwarding', versions['Flipper'], :configuration => 'Debug' # pod 'FlipperKit/FlipperKitHighlightOverlay', versions['Flipper'], :configuration => 'Debug' # pod 'FlipperKit/FlipperKitLayoutTextSearchable', versions['Flipper'], :configuration => 'Debug' # pod 'FlipperKit/FlipperKitNetworkPlugin', versions['Flipper'], :configuration => 'Debug' # end # # Post Install processing for Flipper # #def flipper_post_install(installer) # # installer.pods_project.targets.each do |target| # # if target.name == 'YogaKit' # # target.build_configurations.each do |config| # # config.build_settings['SWIFT_VERSION'] = '4.1' # # end # # end # # end # #end # # Post Install processing for Flipper # def flipper_post_install(installer) # installer.pods_project.targets.each do |target| # if target.name == 'YogaKit' # target.build_configurations.each do |config| # config.build_settings['SWIFT_VERSION'] = '4.1' # end # end # # Enable Flipper for simulators only # if target.name.start_with?('Flipper') || target.name == 'Flipper' # target.build_configurations.each do |config| # config.build_settings['VALID_ARCHS'] = 'arm64 arm64e x86_64' # config.build_settings['ARCHS'] = '${ARCHS_STANDARD_64_BIT}' # end # end # end # installer.pods_project.save # end # target 'RNUnioilLoyaltyApp' do # # Pods for RNUnioilLoyaltyApp # # pod 'FBLazyVector', :path => "../node_modules/react-native/Libraries/FBLazyVector" # # pod 'FBReactNativeSpec', :path => "../node_modules/react-native/React/FBReactNativeSpec" # # pod 'RCTRequired', :path => "../node_modules/react-native/Libraries/RCTRequired" # # pod 'RCTTypeSafety', :path => "../node_modules/react-native/Libraries/TypeSafety" # pod 'React', :path => '../node_modules/react-native/' # pod 'React-Core', :path => '../node_modules/react-native/' # # pod 'React-CoreModules', :path => '../node_modules/react-native/React/CoreModules' # # pod 'React-Core/DevSupport', :path => '../node_modules/react-native/' # # pod 'React-RCTActionSheet', :path => '../node_modules/react-native/Libraries/ActionSheetIOS' # # pod 'React-RCTAnimation', :path => '../node_modules/react-native/Libraries/NativeAnimation' # # pod 'React-RCTBlob', :path => '../node_modules/react-native/Libraries/Blob' # # pod 'React-RCTImage', :path => '../node_modules/react-native/Libraries/Image' # # pod 'React-RCTLinking', :path => '../node_modules/react-native/Libraries/LinkingIOS' # # pod 'React-RCTNetwork', :path => '../node_modules/react-native/Libraries/Network' # # pod 'React-RCTSettings', :path => '../node_modules/react-native/Libraries/Settings' # # pod 'React-RCTText', :path => '../node_modules/react-native/Libraries/Text' # # pod 'React-RCTVibration', :path => '../node_modules/react-native/Libraries/Vibration' # # pod 'React-Core/RCTWebSocket', :path => '../node_modules/react-native/' # # pod 'React-cxxreact', :path => '../node_modules/react-native/ReactCommon/cxxreact' # # pod 'React-jsi', :path => '../node_modules/react-native/ReactCommon/jsi' # # pod 'React-jsiexecutor', :path => '../node_modules/react-native/ReactCommon/jsiexecutor' # # pod 'React-jsinspector', :path => '../node_modules/react-native/ReactCommon/jsinspector' # # pod 'ReactCommon/callinvoker', :path => "../node_modules/react-native/ReactCommon/callinvoker" # # pod 'ReactCommon/turbomodule/core', :path => "../node_modules/react-native/ReactCommon" # # pod 'Yoga', :path => '../node_modules/react-native/ReactCommon/yoga', :modular_headers => true # # pod 'DoubleConversion', :podspec => '../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec' # # pod 'glog', :podspec => '../node_modules/react-native/third-party-podspecs/glog.podspec' # # pod 'Folly', :podspec => '../node_modules/react-native/third-party-podspecs/Folly.podspec' # pod 'RCT-Folly', :podspec => "../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec" # pod 'RNVectorIcons', :path => '../node_modules/react-native-vector-icons' # pod 'RNCAsyncStorage', :path => '../node_modules/@react-native-community/async-storage' # # pod 'RNDeviceInfo', :path => '../node_modules/react-native-device-info' # # pod 'RNSVG', :path => '../node_modules/react-native-svg' # # pod 'react-native-webview', :path => '../node_modules/react-native-webview' # pod 'Firebase/Crashlytics' # pod 'Firebase/Analytics' # pod 'RNCPushNotificationIOS', :path => '../node_modules/@react-native-community/push-notification-ios' # # pod 'React-ART', :path => '../node_modules/react-native/Libraries/ART' # # pod 'rn-fetch-blob', :path => '../node_modules/rn-fetch-blob' # rn_path = '../node_modules/react-native' # rn_maps_path = '../node_modules/react-native-maps' # # See http://facebook.github.io/react-native/docs/integration-with-existing-apps.html#configuring-cocoapods-dependencies # # pod 'yoga', path: "#{rn_path}/ReactCommon/yoga/yoga.podspec" # # pod 'React', path: rn_path, subspecs: [ # # 'Core', # # 'CxxBridge', # # 'DevSupport', # # 'RCTActionSheet', # # 'RCTAnimation', # # 'RCTGeolocation', # # 'RCTImage', # # 'RCTLinkingIOS', # # 'RCTNetwork', # # 'RCTSettings', # # 'RCTText', # # 'RCTVibration', # # 'RCTWebSocket', # # ] # # React Native third party dependencies podspecs # # pod 'DoubleConversion', :podspec => "#{rn_path}/third-party-podspecs/DoubleConversion.podspec" # # pod 'glog', :podspec => "#{rn_path}/third-party-podspecs/glog.podspec" # # If you are using React Native <0.54, you will get the following error: # # "The name of the given podspec `GLog` doesn't match the expected one `glog`" # # Use the following line instead: # #pod 'GLog', :podspec => "#{rn_path}/third-party-podspecs/GLog.podspec" # # pod 'Folly', :podspec => "#{rn_path}/third-party-podspecs/Folly.podspec" # pod 'RCT-Folly', :podspec => "../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec" # # react-native-maps dependencies # pod 'react-native-maps', path: rn_maps_path # # pod 'react-native-google-maps', path: rn_maps_path # Uncomment this line if you want to support GoogleMaps on iOS # # pod 'GoogleMaps' # Uncomment this line if you want to support GoogleMaps on iOS # # pod 'Google-Maps-iOS-Utils' # Uncomment this line if you want to support GoogleMaps on iOS # # pod 'react-native-date-picker', :path => '../node_modules/react-native-date-picker' # pod 'react-native-location', :path => '../node_modules/react-native-location' # pod 'RNFBAnalytics', :path => '../node_modules/@react-native-firebase/analytics' # pod 'ReactNativeART', :path => '../node_modules/@react-native-community/art' # target 'RNUnioilLoyaltyAppTests' do # inherit! :complete # # Pods for testing # end # rn_maps_path = '../node_modules/react-native-maps' # pod 'react-native-google-maps', :path => rn_maps_path # pod 'GoogleMaps' # pod 'Google-Maps-iOS-Utils' # use_native_modules! # # Enables Flipper. # # # # Note that if you have use_frameworks! enabled, Flipper will not work and # # you should disable these next few lines. # add_flipper_pods! # post_install do |installer| # flipper_post_install(installer) # ## Fix for XCode 12.5 & RN 0.62.2 - See https://github.com/facebook/react-native/issues/28405 # find_and_replace("../node_modules/react-native/React/CxxBridge/RCTCxxBridge.mm", # "_initializeModules:(NSArray> *)modules", "_initializeModules:(NSArray *)modules") # find_and_replace("../node_modules/react-native/ReactCommon/turbomodule/core/platform/ios/RCTTurboModuleManager.mm", # "RCTBridgeModuleNameForClass(strongModule))", "RCTBridgeModuleNameForClass(Class(strongModule)))") # ## Fix for Flipper-Folly on iOS 14.5 # find_and_replace("Pods/Flipper-Folly/folly/synchronization/DistributedMutex-inl.h", # "atomic_notify_one(state)", "folly::atomic_notify_one(state)") # find_and_replace("Pods/Headers/Private/RCT-Folly/folly/synchronization/DistributedMutex-inl.h", # "atomic_notify_one(state)", "folly::atomic_notify_one(state)") # find_and_replace("Pods/Flipper-Folly/folly/synchronization/DistributedMutex-inl.h", # "atomic_wait_until(&state, previous | data, deadline)", "folly::atomic_wait_until(&state, previous | data, deadline)") # find_and_replace("../node_modules/react-native/Libraries/Image/RCTUIImageViewAnimated.m", # "_currentFrame.CGImage;","_currentFrame.CGImage ;} else { [super displayLayer:layer];") # find_and_replace("../node_modules/react-native-snap-carousel/src/carousel/Carousel.js", # "Animated.createAnimatedComponent(FlatList)","Animated.FlatList") # find_and_replace("../node_modules/react-native-snap-carousel/src/carousel/Carousel.js", # "Animated.createAnimatedComponent(ScrollView)","Animated.ScrollView") # find_and_replace("../node_modules/react-native-snap-carousel/src/carousel/Carousel.js", # "return this._carouselRef && this._carouselRef.getNode && this._carouselRef.getNode();","return this._carouselRef;") # installer.pods_project.targets.each do |target| # if target.name == 'react-native-google-maps' # target.build_configurations.each do |config| # config.build_settings['CLANG_ENABLE_MODULES'] = 'No' # end # end # target.build_configurations.each do |config| # config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '9.0' # end # end # end # # Temporary fix for not display image in react native # # react-native >= v0.62.2 # def find_and_replace(dir, findstr, replacestr) # Dir[dir].each do |name| # text = File.read(name) # replace = text.gsub(findstr,replacestr) # if text != replace # puts "Fix: " + name # File.open(name, "w") { |file| file.puts replace } # STDOUT.flush # end # end # Dir[dir + '*/'].each(&method(:find_and_replace)) # end # end # target 'RNUnioilLoyaltyApp-tvOS' do # # Pods for RNUnioilLoyaltyApp-tvOS # target 'RNUnioilLoyaltyApp-tvOSTests' do # inherit! :search_paths # # Pods for testing # end # end require_relative '../node_modules/react-native/scripts/react_native_pods' require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules' platform :ios, '13.0' install! 'cocoapods', :deterministic_uuids => false target 'RNUnioilLoyaltyApp' do rn_path = '../node_modules/react-native' rn_maps_path = '../node_modules/react-native-maps' config = use_native_modules! # Flags change depending on the env values. flags = get_default_flags() use_react_native!( :path => config[:reactNativePath], # to enable hermes on iOS, change `false` to `true` and then install pods :hermes_enabled => flags[:hermes_enabled], :fabric_enabled => flags[:fabric_enabled], # An absolute path to your application root. :app_path => "#{Pod::Config.instance.installation_root}/.." ) pod 'react-native-google-maps', :path => rn_maps_path pod 'GoogleMaps' pod 'Google-Maps-iOS-Utils' # pod 'Firebase/Analytics' pod 'RNCPushNotificationIOS', :path => '../node_modules/@react-native-community/push-notification-ios' target 'RNUnioilLoyaltyAppTests' do inherit! :complete # Pods for testing end # Enables Flipper. # # Note that if you have use_frameworks! enabled, Flipper will not work and # you should disable the next line. use_flipper!() post_install do |installer| react_native_post_install(installer) __apply_Xcode_12_5_M1_post_install_workaround(installer) end end