# frozen_string_literal: true

# Uncomment this line to define a global platform for your project
platform :ios, "16.0"

# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV["COCOAPODS_DISABLE_STATS"] = "true"

project "Runner", {
  "Debug" => :debug,
  "Profile" => :release,
  "Release" => :release
}

def flutter_root
  generated_xcode_build_settings_path = File.expand_path(File.join("..", "Flutter", "Generated.xcconfig"), __FILE__)
  unless File.exist?(generated_xcode_build_settings_path)
    raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first"
  end

  File.foreach(generated_xcode_build_settings_path) do |line|
    matches = line.match(/FLUTTER_ROOT=(.*)/)
    return matches[1].strip if matches
  end
  raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get"
end

require File.expand_path(File.join("packages", "flutter_tools", "bin", "podhelper"), flutter_root)

flutter_ios_podfile_setup
host_cpu = RbConfig::CONFIG["host_cpu"]

target "Runner" do
  flutter_install_all_ios_pods __dir__
  # Nutrient iOS SDK version specified by Nutrient Flutter Plugin. Do not remove this line.
  # Instant iOS SDK version specified by Nutrient Flutter Plugin. Do not remove this line.
  use_modular_headers!
end

post_install do |installer|
  installer.pods_project.targets.each do |target|
    flutter_additional_ios_build_settings(target)
    target.build_configurations.each do |target_config|
      if host_cpu.eql?("x86_64")
        target_config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
      end
    end
  end
end
