source 'https://github.com/react-native-tvos/react-native-tvos-podspecs.git'
source 'https://cdn.cocoapods.org/'

# Resolve react_native_pods.rb with node to allow for hoisting
require Pod::Executable.execute_command('node', ['-p',
  'require.resolve(
    "react-native/scripts/react_native_pods.rb",
    {paths: [process.argv[1]]},
  )', __dir__]).strip

prepare_react_native_project!

flipper_config = FlipperConfiguration.disabled

linkage = ENV['USE_FRAMEWORKS']
if linkage != nil
  Pod::UI.puts "Configuring Pod with #{linkage}ally linked Frameworks".green
  use_frameworks! :linkage => linkage.to_sym
end

####### For now, only one target at a time can be used in a React Native podfile ########
####### https://github.com/react-native-tvos/react-native-tvos/issues/619        ########

# target 'HelloWorld' do
#   config = use_native_modules!
#   platform :ios, min_ios_version_supported
# 
#   use_react_native!(
#     :path => config[:reactNativePath],
#     # Enables Flipper.
#     #
#     # Note that if you have use_frameworks! enabled, Flipper will not work and
#     # you should disable the next line.
#     :flipper_configuration => flipper_config,
#     # An absolute path to your application root.
#     :app_path => "#{Pod::Config.instance.installation_root}/.."
#   )
# 
#   target 'HelloWorldTests' do
#     inherit! :complete
#     # Pods for testing
#   end
# 
# end

target 'HelloWorld-tvOS' do
  config = use_native_modules!
  platform :tvos, min_ios_version_supported

  use_react_native!(
    :path => config[:reactNativePath],
    # Enables Flipper.
    #
    # Note that if you have use_frameworks! enabled, Flipper will not work and
    # you should disable the next line.
    :flipper_configuration => flipper_config,
    # An absolute path to your application root.
    :app_path => "#{Pod::Config.instance.installation_root}/.."
  )

  target 'HelloWorld-tvOSTests' do
    inherit! :complete
    # Pods for testing
  end

end

post_install do |installer|
  # https://github.com/facebook/react-native/blob/main/packages/react-native/scripts/react_native_pods.rb#L197-L202
  config = use_native_modules!
  react_native_post_install(
    installer,
    config[:reactNativePath],
    :mac_catalyst_enabled => false
  )
end
