# Uncomment the next line to define a global platform for your project

use_frameworks!
platform :ios, '10.0'

source 'https://github.com/CocoaPods/Specs.git'
source 'https://git.yishihui.com/iOS/BFSpecs.git'

target 'Introduce' do
## Pods-for-AppStore
#  pod 'BFCommonKit',           '1.4.9'
#  pod 'BFNetRequestKit',       '0.2.3'
#  pod 'BFUIKit',               '0.1.1'
#  pod 'BFMaterialKit',         '0.1.6'
#  pod 'BFLogger',              '0.1.0'
#  pod 'BFMediaKit',            '0.1.0'
#  pod 'BFRecordScreenKit',     '0.1.0'

## Pods-for-Archive(Jenkins)
  pod 'BFCommonKit',           :git => 'https://git.yishihui.com/iOS/BFCommonKit.git'
  pod 'BFNetRequestKit',       :git => 'https://git.yishihui.com/iOS/BFNetRequestKit.git'
  pod 'BFUIKit',               :git => 'https://git.yishihui.com/iOS/BFUIKit.git'
  pod 'BFMaterialKit',         :git => 'https://git.yishihui.com/iOS/BFMaterialKit.git'
  pod 'BFLogger',              :git => 'https://git.yishihui.com/iOS/BFLogger.git'
  pod 'BFMediaKit',            :git => 'https://git.yishihui.com/iOS/BFMediaKit.git'
  pod 'BFRecordScreenKit',     :git => 'https://git.yishihui.com/iOS/BFRecordScreenKit.git'

## ak:Pods-for-testing
#  pod 'BFCommonKit',           :path => '/Users/ak/Desktop/TZFrameworks/BFCommonKit/'
#  pod 'BFNetRequestKit',       :path => '/Users/ak/Desktop/TZFrameworks/BFNetRequestKit/'
#  pod 'BFUIKit',               :path => '/Users/ak/Desktop/TZFrameworks/BFUIKit/'
#  pod 'BFMaterialKit',         :path => '/Users/ak/Desktop/TZFrameworks/BFMaterialKit/'
#  pod 'BFLogger',              :path => '/Users/ak/Desktop/TZFrameworks/BFLogger/'
#  pod 'BFMediaKit',            :path => '/Users/ak/Desktop/TZFrameworks/BFMediaKit/'
#  pod 'BFRecordScreenKit',     :path => '/Users/ak/Desktop/TZFrameworks/BFRecordScreenKit/'

## zq:Pods-for-testing
#  pod 'BFCommonKit',           :path => '../BFCommonKit/'
#  pod 'BFNetRequestKit',       :path => '../BFNetRequestKit/'
#  pod 'BFUIKit',               :path => '../BFUIKit/'
#  pod 'BFMaterialKit',         :path => '../BFMaterialKit/'
#  pod 'BFLogger',              :path => '../BFLogger/'
#  pod 'BFMediaKit',            :path => '../BFMediaKit/'
#  pod 'BFRecordScreenKit',     :path => '../BFRecordScreenKit/'

## ww:Pods-for-testing
#  pod 'BFCommonKit',           :path => '../../BFCommonKit/Trunk'
#  pod 'BFNetRequestKit',       :path => '../../BFNetRequestKit/Trunk'
#  pod 'BFUIKit',               :path => '../../BFUIKit/Trunk'
#  pod 'BFMaterialKit',         :path => '../../BFMaterialKit/Trunk'
#  pod 'BFLogger',              :path => '../../BFLogger/Trunk'
#  pod 'BFMediaKit',            :path => '../../BFMediaKit/Trunk'
#  pod 'BFRecordScreenKit',     :path => '../../BFRecordScreenKit/Trunk'

  
  post_install do |installer|
    
    remove_swift_ui("./Pods/Kingfisher/Sources/General/KFOptionsSetter.swift")
    remove_swift_ui("./Pods/Kingfisher/Sources/SwiftUI/KFImage.swift")
    remove_swift_ui("./Pods/Kingfisher/Sources/SwiftUI/ImageBinder.swift")
    remove_swift_ui("./Pods/Kingfisher/Sources/SwiftUI/KFImageOptions.swift")
    remove_swift_ui_realm("./Pods/RealmSwift/RealmSwift/SwiftUI.swift")
#    remove_RealmSwift_swift_ui
    installer.pods_project.targets.each do |target|
      target.build_configurations.each do |config|
        config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '10.0'
      end
    end
  end
  
  def remove_swift_ui(code_file)
    code_text = File.read(code_file)
    code_text.gsub!(/#if canImport\(SwiftUI\) && canImport\(Combine\)(\n)/,"#if canImport(SwiftUI) && canImport(Combine) && (arch(arm64) || arch(x86_64))\n")
    system("rm -rf " + code_file)
    aFile = File.new(code_file, 'w+')
    aFile.syswrite(code_text)
    aFile.close()
  end

  def remove_swift_ui_realm (code_file)
    code_text = File.read(code_file)
    code_text.gsub!(/#if canImport\(SwiftUI\) && canImport\(Combine\) && swif/,'#if canImport(SwiftUI) && canImport(Combine) && (arch(arm64) || arch(x86_64)) && swif')
    system("rm -rf " + code_file)
    aFile = File.new(code_file, 'w+')
    aFile.syswrite(code_text)
    aFile.close()
  end

end
