cocoapods-playon-network 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/lib/Flutter/Flutter.podspec +18 -0
- data/lib/cocoapods-playon-network/deintegrate.rb +33 -0
- data/lib/cocoapods-playon-network/gem_version.rb +3 -0
- data/lib/cocoapods-playon-network/helpers.rb +102 -0
- data/lib/cocoapods-playon-network.rb +1 -0
- data/lib/cocoapods_plugin.rb +161 -0
- metadata +119 -0
    
        checksums.yaml
    ADDED
    
    | @@ -0,0 +1,7 @@ | |
| 1 | 
            +
            ---
         | 
| 2 | 
            +
            SHA256:
         | 
| 3 | 
            +
              metadata.gz: 3c1e3b40ce6b4bf1ac2aad4530e2498e04337864f049a4d5fe7ff82e5033bfd8
         | 
| 4 | 
            +
              data.tar.gz: 146c2b2e38a6f4c6c01f93cfced26877f7fb56a0cbf28a8b398fc82d48dd2ca9
         | 
| 5 | 
            +
            SHA512:
         | 
| 6 | 
            +
              metadata.gz: c920be13895bfe6401dbe566821b4f7e19a94b59e9bba6134057ebeff390f94bf93323d466460bbf617c53e95e0ac6e9bf0032d298bb18130b29c4c7e07cfdf8
         | 
| 7 | 
            +
              data.tar.gz: 4f0c5f24be82b23d4176b1ca1f5cd2a2f1d3cb056022f6be8d432c3116d7d0f86c249929b6116d849cb8b37696a7f67ffc4a7fff29edcb7e243049286e04f451
         | 
| @@ -0,0 +1,18 @@ | |
| 1 | 
            +
            #
         | 
| 2 | 
            +
            # This podspec is NOT to be published. It is only used as a local source!
         | 
| 3 | 
            +
            # This is a generated file; do not edit or check into version control.
         | 
| 4 | 
            +
            #
         | 
| 5 | 
            +
             | 
| 6 | 
            +
            Pod::Spec.new do |s|
         | 
| 7 | 
            +
              s.name             = 'Flutter'
         | 
| 8 | 
            +
              s.version          = '1.0.0'
         | 
| 9 | 
            +
              s.summary          = 'A UI toolkit for beautiful and fast apps.'
         | 
| 10 | 
            +
              s.homepage         = 'https://flutter.dev'
         | 
| 11 | 
            +
              s.license          = { :type => 'BSD' }
         | 
| 12 | 
            +
              s.author           = { 'Flutter Dev Team' => 'flutter-dev@googlegroups.com' }
         | 
| 13 | 
            +
              s.source           = { :git => 'https://github.com/flutter/engine', :tag => s.version.to_s }
         | 
| 14 | 
            +
              s.ios.deployment_target = '12.0'
         | 
| 15 | 
            +
              # Framework linking is handled by Flutter tooling, not CocoaPods.
         | 
| 16 | 
            +
              # Add a placeholder to satisfy `s.dependency 'Flutter'` plugin podspecs.
         | 
| 17 | 
            +
              s.vendored_frameworks = 'path/to/nothing'
         | 
| 18 | 
            +
            end
         | 
| @@ -0,0 +1,33 @@ | |
| 1 | 
            +
            module Pod
         | 
| 2 | 
            +
              class Deintegrator
         | 
| 3 | 
            +
                alias parent_delete_pods_file_references delete_pods_file_references
         | 
| 4 | 
            +
             | 
| 5 | 
            +
                def delete_pods_file_references(project)
         | 
| 6 | 
            +
                  puts "Removing PLAYON Network."
         | 
| 7 | 
            +
             | 
| 8 | 
            +
                  frameworks_group = project.groups.find { |group| group.name == 'Frameworks' }
         | 
| 9 | 
            +
             | 
| 10 | 
            +
                  # Remove the framework references in the Xcode project.
         | 
| 11 | 
            +
                  unless frameworks_group.nil?
         | 
| 12 | 
            +
                    _remove_from_project frameworks_group, 'Flutter'
         | 
| 13 | 
            +
                    _remove_from_project frameworks_group, 'App', :needs_env => true
         | 
| 14 | 
            +
                  end
         | 
| 15 | 
            +
             | 
| 16 | 
            +
                  # Remove the PLAYON Network SDK from the filesystem.
         | 
| 17 | 
            +
                  path = "Frameworks/PLAYON-Network-SDK"
         | 
| 18 | 
            +
                  FileUtils.remove_dir path if Dir.exist? path
         | 
| 19 | 
            +
             | 
| 20 | 
            +
                  parent_delete_pods_file_references project
         | 
| 21 | 
            +
                end
         | 
| 22 | 
            +
             | 
| 23 | 
            +
                def _remove_from_project(frameworks_group, name, needs_env: false)
         | 
| 24 | 
            +
                  path = "#{frameworks_path "$(CONFIGURATION)", "$(PLAYON_NETWORK_ENV)", :needs_env => needs_env}/#{name}.xcframework"
         | 
| 25 | 
            +
             | 
| 26 | 
            +
                  file = frameworks_group.children.find do
         | 
| 27 | 
            +
                    |child| child.path == path
         | 
| 28 | 
            +
                  end
         | 
| 29 | 
            +
             | 
| 30 | 
            +
                  file.remove_from_project unless file.nil?
         | 
| 31 | 
            +
                end
         | 
| 32 | 
            +
              end
         | 
| 33 | 
            +
            end
         | 
| @@ -0,0 +1,102 @@ | |
| 1 | 
            +
            require 'xcodeproj'
         | 
| 2 | 
            +
            require 'zip'
         | 
| 3 | 
            +
             | 
| 4 | 
            +
            def unzip_file (file, destination)
         | 
| 5 | 
            +
              Zip::File.open(file) { |zip_file|
         | 
| 6 | 
            +
                zip_file.each { |f|
         | 
| 7 | 
            +
                  f_path=File.join(destination, f.name)
         | 
| 8 | 
            +
                  FileUtils.mkdir_p(File.dirname(f_path))
         | 
| 9 | 
            +
                  zip_file.extract(f, f_path) unless File.exist?(f_path)
         | 
| 10 | 
            +
                }
         | 
| 11 | 
            +
              }
         | 
| 12 | 
            +
            end
         | 
| 13 | 
            +
             | 
| 14 | 
            +
            def open_xcode_project
         | 
| 15 | 
            +
              paths = Pathname.glob('*.xcodeproj')
         | 
| 16 | 
            +
              project_path = paths.first if paths.size == 1
         | 
| 17 | 
            +
             | 
| 18 | 
            +
              help! 'A valid Xcode project file is required.' unless project_path
         | 
| 19 | 
            +
              help! "#{project_path} does not exist." unless project_path.exist?
         | 
| 20 | 
            +
              unless project_path.directory? && (project_path + 'project.pbxproj').exist?
         | 
| 21 | 
            +
                help! "#{project_path} is not a valid Xcode project."
         | 
| 22 | 
            +
              end
         | 
| 23 | 
            +
             | 
| 24 | 
            +
              Xcodeproj::Project.open(project_path)
         | 
| 25 | 
            +
            end
         | 
| 26 | 
            +
             | 
| 27 | 
            +
            def framework_exist?(frameworks_group, path)
         | 
| 28 | 
            +
              frameworks_group.children.find { |child| child.path == path }
         | 
| 29 | 
            +
            end
         | 
| 30 | 
            +
             | 
| 31 | 
            +
            def get_frameworks_build_phase(target)
         | 
| 32 | 
            +
              name = "Embed Frameworks"
         | 
| 33 | 
            +
              embed_frameworks_build_phase = target.copy_files_build_phases.find { |phase| phase.name == name and phase.symbol_dst_subfolder_spec == :frameworks }
         | 
| 34 | 
            +
             | 
| 35 | 
            +
              if embed_frameworks_build_phase.nil?
         | 
| 36 | 
            +
                embed_frameworks_build_phase = target.new_copy_files_build_phase 'Embed Frameworks'
         | 
| 37 | 
            +
                embed_frameworks_build_phase.symbol_dst_subfolder_spec = :frameworks
         | 
| 38 | 
            +
              end
         | 
| 39 | 
            +
             | 
| 40 | 
            +
              embed_frameworks_build_phase
         | 
| 41 | 
            +
            end
         | 
| 42 | 
            +
             | 
| 43 | 
            +
            def _embed_and_sign(framework:, in_target:)
         | 
| 44 | 
            +
              target = in_target
         | 
| 45 | 
            +
              target.add_resources([framework])
         | 
| 46 | 
            +
              target.frameworks_build_phase.add_file_reference framework, true
         | 
| 47 | 
            +
              target.resources_build_phase.add_file_reference framework, true
         | 
| 48 | 
            +
              embed_frameworks_build_phase = get_frameworks_build_phase target
         | 
| 49 | 
            +
              build_file = embed_frameworks_build_phase.add_file_reference framework, true
         | 
| 50 | 
            +
              build_file.settings = { 'ATTRIBUTES' => ['CodeSignOnCopy'] }
         | 
| 51 | 
            +
            end
         | 
| 52 | 
            +
             | 
| 53 | 
            +
            def add_config_value(key, debug_value, release_value = nil, in_project:, in_target: nil)
         | 
| 54 | 
            +
              if release_value.nil?
         | 
| 55 | 
            +
                release_value = debug_value
         | 
| 56 | 
            +
              end
         | 
| 57 | 
            +
             | 
| 58 | 
            +
              target = target_for_project in_project, in_target
         | 
| 59 | 
            +
             | 
| 60 | 
            +
              _set_config_value _xcconfig_path(:debug, target.name), key, debug_value
         | 
| 61 | 
            +
              _set_config_value _xcconfig_path(:release, target.name), key, release_value
         | 
| 62 | 
            +
            end
         | 
| 63 | 
            +
             | 
| 64 | 
            +
            def _set_config_value(path, key, value)
         | 
| 65 | 
            +
              config = Xcodeproj::Config.new path
         | 
| 66 | 
            +
              config.merge! key => value
         | 
| 67 | 
            +
              config.save_as Pathname.new path
         | 
| 68 | 
            +
            end
         | 
| 69 | 
            +
             | 
| 70 | 
            +
            def _xcconfig_path(config, target_name)
         | 
| 71 | 
            +
              "Pods/Target Support Files/Pods-#{target_name}/Pods-#{target_name}.#{config}.xcconfig"
         | 
| 72 | 
            +
            end
         | 
| 73 | 
            +
             | 
| 74 | 
            +
            def target_for_project(project, target)
         | 
| 75 | 
            +
              if target.nil?
         | 
| 76 | 
            +
                project.targets.first
         | 
| 77 | 
            +
              else
         | 
| 78 | 
            +
                project.targets.find { |t| t.name == target }
         | 
| 79 | 
            +
              end
         | 
| 80 | 
            +
            end
         | 
| 81 | 
            +
             | 
| 82 | 
            +
            def add_framework(name, print_name, in_project:, in_target: nil, needs_env: false)
         | 
| 83 | 
            +
              frameworks_group = in_project.groups.find { |group| group.name == 'Frameworks' }
         | 
| 84 | 
            +
              path = "#{frameworks_path "$(CONFIGURATION)", "$(PLAYON_NETWORK_ENV)", :needs_env => needs_env}/#{name}.xcframework"
         | 
| 85 | 
            +
             | 
| 86 | 
            +
              unless frameworks_group.nil? or framework_exist? frameworks_group, path
         | 
| 87 | 
            +
                puts "Configuring project to use #{print_name} framework."
         | 
| 88 | 
            +
             | 
| 89 | 
            +
                framework = frameworks_group.new_reference path
         | 
| 90 | 
            +
                target = target_for_project in_project, in_target
         | 
| 91 | 
            +
             | 
| 92 | 
            +
                _embed_and_sign :framework => framework, :in_target => target
         | 
| 93 | 
            +
              end
         | 
| 94 | 
            +
            end
         | 
| 95 | 
            +
             | 
| 96 | 
            +
            def frameworks_path(config, env = nil, needs_env: nil)
         | 
| 97 | 
            +
              if env.nil? or needs_env == false
         | 
| 98 | 
            +
                return "Frameworks/PLAYON-Network-SDK/#{config}"
         | 
| 99 | 
            +
              end
         | 
| 100 | 
            +
             | 
| 101 | 
            +
              "Frameworks/PLAYON-Network-SDK/#{config}/#{env}"
         | 
| 102 | 
            +
            end
         | 
| @@ -0,0 +1 @@ | |
| 1 | 
            +
            require 'cocoapods-playon-network/gem_version'
         | 
| @@ -0,0 +1,161 @@ | |
| 1 | 
            +
            require 'yaml'
         | 
| 2 | 
            +
            require 'xcodeproj'
         | 
| 3 | 
            +
            require 'open-uri'
         | 
| 4 | 
            +
            require 'cocoapods-playon-network/deintegrate'
         | 
| 5 | 
            +
            require 'cocoapods-playon-network/helpers'
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            # TODO - Waiting this fix https://github.com/CocoaPods/CocoaPods/issues/11277
         | 
| 8 | 
            +
            #Pod::HooksManager.register('cocoapods-playon-network', :post_integrate) do |context|
         | 
| 9 | 
            +
            #  puts "cocoapods-playon-network post_integrate!!!!"
         | 
| 10 | 
            +
            #end
         | 
| 11 | 
            +
             | 
| 12 | 
            +
            # Install all the pods needed to use the PLAYON Network games.
         | 
| 13 | 
            +
            def use_playon_network
         | 
| 14 | 
            +
              #plugin "cocoapods-playon-network", :target => target
         | 
| 15 | 
            +
              puts "Installing PLAYON Network Pods"
         | 
| 16 | 
            +
             | 
| 17 | 
            +
              url = _configure_aws_credentials
         | 
| 18 | 
            +
             | 
| 19 | 
            +
              # Framework linking is handled by the plugin, not CocoaPods.
         | 
| 20 | 
            +
              # Add a dummy pod to satisfy `s.dependency 'Flutter'` plugin podspecs.
         | 
| 21 | 
            +
              pod 'Flutter', :path => File.join(File.dirname(__FILE__), 'Flutter'), :inhibit_warnings => true
         | 
| 22 | 
            +
             | 
| 23 | 
            +
              _download_framework 'App.xcframework.zip', url
         | 
| 24 | 
            +
              _download_flutter_framework url
         | 
| 25 | 
            +
             | 
| 26 | 
            +
              _get_all_plugins(url).each do |plugin|
         | 
| 27 | 
            +
                _pod_plugin plugin, url
         | 
| 28 | 
            +
              end
         | 
| 29 | 
            +
             | 
| 30 | 
            +
              pod 'PlayonNetworkSdk', :git => 'https://github.com/PlayON-Network/ios-sdk.git'
         | 
| 31 | 
            +
            end
         | 
| 32 | 
            +
             | 
| 33 | 
            +
            def post_install_playon_network(installer, version: "12.0")
         | 
| 34 | 
            +
              %w[Debug Profile Release].each do |config|
         | 
| 35 | 
            +
                _unzip_framework 'Flutter', 'Engine', config
         | 
| 36 | 
            +
             | 
| 37 | 
            +
                %w[Staging Production].each do |env|
         | 
| 38 | 
            +
                  _unzip_framework 'App', 'Fantasy Game', config, env
         | 
| 39 | 
            +
                end
         | 
| 40 | 
            +
              end
         | 
| 41 | 
            +
             | 
| 42 | 
            +
              _configure_pods installer, version
         | 
| 43 | 
            +
            end
         | 
| 44 | 
            +
             | 
| 45 | 
            +
            # https://www.rubydoc.info/gems/xcodeproj
         | 
| 46 | 
            +
            def post_integrate_playon_network(target: nil, debug: :staging, release: :production)
         | 
| 47 | 
            +
              project = open_xcode_project
         | 
| 48 | 
            +
             | 
| 49 | 
            +
              add_config_value 'PLAYON_NETWORK_ENV', debug.capitalize, release.capitalize, :in_project => project, :in_target => target
         | 
| 50 | 
            +
             | 
| 51 | 
            +
              add_framework 'Flutter', 'Engine', :in_project => project, :in_target => target
         | 
| 52 | 
            +
              add_framework 'App', 'Fantasy Game', :in_project => project, :in_target => target, :needs_env => true
         | 
| 53 | 
            +
             | 
| 54 | 
            +
              project.save
         | 
| 55 | 
            +
            end
         | 
| 56 | 
            +
             | 
| 57 | 
            +
            def _get_all_plugins(url)
         | 
| 58 | 
            +
              response = list_s3_objects :url => "#{url}/plugins"
         | 
| 59 | 
            +
              response.common_prefixes.map { |item| item[:prefix].split('/').last }
         | 
| 60 | 
            +
            end
         | 
| 61 | 
            +
             | 
| 62 | 
            +
            def _pod(name, url, configuration)
         | 
| 63 | 
            +
              pod name, :podspec => "#{url}/#{configuration}", :configuration => configuration
         | 
| 64 | 
            +
            end
         | 
| 65 | 
            +
             | 
| 66 | 
            +
            def _pod_plugin(plugin, url)
         | 
| 67 | 
            +
              pod plugin, :podspec => "#{url}/plugins/#{plugin}/#{plugin}.podspec"
         | 
| 68 | 
            +
            end
         | 
| 69 | 
            +
             | 
| 70 | 
            +
            def _configure_aws_credentials
         | 
| 71 | 
            +
              playon_network_params = YAML.load_file('playon-network.yaml')
         | 
| 72 | 
            +
              username = playon_network_params['username']
         | 
| 73 | 
            +
              access_key = playon_network_params["sdk"]["accessKey"]
         | 
| 74 | 
            +
              secret_key = playon_network_params["sdk"]["secretKey"]
         | 
| 75 | 
            +
             | 
| 76 | 
            +
              set_aws_credentials :region => 'eu-west-1', :access_key => access_key, :secret_key => secret_key
         | 
| 77 | 
            +
             | 
| 78 | 
            +
              "s3://playon-network-sdk/ios/#{username}"
         | 
| 79 | 
            +
            end
         | 
| 80 | 
            +
             | 
| 81 | 
            +
            def _download_flutter_framework(url)
         | 
| 82 | 
            +
              response = YAML.load get_s3_object :url => "#{url}/Flutter.yaml"
         | 
| 83 | 
            +
             | 
| 84 | 
            +
              %w[Debug Profile Release].each do |config|
         | 
| 85 | 
            +
                path = frameworks_path config
         | 
| 86 | 
            +
                FileUtils.mkdir_p path unless Dir.exist? path
         | 
| 87 | 
            +
             | 
| 88 | 
            +
                url = response[config]
         | 
| 89 | 
            +
                download = URI.open(url)
         | 
| 90 | 
            +
                IO.copy_stream(download, "#{path}/Flutter.xcframework.zip")
         | 
| 91 | 
            +
              end
         | 
| 92 | 
            +
            end
         | 
| 93 | 
            +
             | 
| 94 | 
            +
            def _download_framework(name, url)
         | 
| 95 | 
            +
              %w[Debug Profile Release].each do |config|
         | 
| 96 | 
            +
                %w[Staging Production].each do |env|
         | 
| 97 | 
            +
                  path = frameworks_path config, env
         | 
| 98 | 
            +
                  FileUtils.mkdir_p path unless Dir.exist? path
         | 
| 99 | 
            +
             | 
| 100 | 
            +
                  get_s3_object :url => "#{url}/#{env.downcase}/#{config}-#{name}", :target => "#{path}/#{name}"
         | 
| 101 | 
            +
                end
         | 
| 102 | 
            +
              end
         | 
| 103 | 
            +
            end
         | 
| 104 | 
            +
             | 
| 105 | 
            +
            def _unzip_framework(name, print_name, config, env = nil)
         | 
| 106 | 
            +
              framework_name = "#{name}.xcframework"
         | 
| 107 | 
            +
              path = "#{frameworks_path config, env}"
         | 
| 108 | 
            +
              framework_zip = "#{path}/#{framework_name}.zip"
         | 
| 109 | 
            +
             | 
| 110 | 
            +
              unless env.nil?
         | 
| 111 | 
            +
                path = "#{path}/#{framework_name}"
         | 
| 112 | 
            +
              end
         | 
| 113 | 
            +
             | 
| 114 | 
            +
              if File.exist? framework_zip
         | 
| 115 | 
            +
                unless File.exist? path
         | 
| 116 | 
            +
                  Dir.mkdir path
         | 
| 117 | 
            +
                end
         | 
| 118 | 
            +
             | 
| 119 | 
            +
                if env.nil?
         | 
| 120 | 
            +
                  puts "Adding PLAYON Network #{print_name} Framework for #{config}"
         | 
| 121 | 
            +
                else
         | 
| 122 | 
            +
                  puts "Adding PLAYON Network #{print_name} Framework for #{env}:#{config}"
         | 
| 123 | 
            +
                end
         | 
| 124 | 
            +
             | 
| 125 | 
            +
                unzip_file framework_zip, path
         | 
| 126 | 
            +
                FileUtils.rm_f framework_zip
         | 
| 127 | 
            +
              end
         | 
| 128 | 
            +
            end
         | 
| 129 | 
            +
             | 
| 130 | 
            +
            def _configure_pods(installer, version)
         | 
| 131 | 
            +
              puts "Configuring PLAYON Network Pods"
         | 
| 132 | 
            +
             | 
| 133 | 
            +
              installer.pods_project.targets.each do |target|
         | 
| 134 | 
            +
                target.build_configurations.each do |config|
         | 
| 135 | 
            +
                  config.build_settings['CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER'] = 'NO'
         | 
| 136 | 
            +
                  config.build_settings['CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES'] = 'YES'
         | 
| 137 | 
            +
             | 
| 138 | 
            +
                  # https://stackoverflow.com/q/76590131
         | 
| 139 | 
            +
                  config.build_settings['ENABLE_USER_SCRIPT_SANDBOXING'] = 'NO'
         | 
| 140 | 
            +
             | 
| 141 | 
            +
                  # https://stackoverflow.com/a/77513296
         | 
| 142 | 
            +
                  if config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'].to_f < version.to_f
         | 
| 143 | 
            +
                    config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = version
         | 
| 144 | 
            +
                  end
         | 
| 145 | 
            +
             | 
| 146 | 
            +
                  config.build_settings['OTHER_LDFLAGS'] = '$(inherited) "-framework Flutter"'
         | 
| 147 | 
            +
             | 
| 148 | 
            +
                  path = "#{Dir.pwd}/#{frameworks_path config.type}/Flutter.xcframework"
         | 
| 149 | 
            +
             | 
| 150 | 
            +
                  Dir.new(path).each_child do |xcframework_file|
         | 
| 151 | 
            +
                    next if xcframework_file.start_with?('.') # Hidden file, possibly on external disk.
         | 
| 152 | 
            +
                    if xcframework_file.end_with?('-simulator') # ios-arm64_x86_64-simulator
         | 
| 153 | 
            +
                      config.build_settings['FRAMEWORK_SEARCH_PATHS[sdk=iphonesimulator*]'] = "\"#{path}/#{xcframework_file}\" $(inherited)"
         | 
| 154 | 
            +
                    elsif xcframework_file.start_with?('ios-') # ios-arm64
         | 
| 155 | 
            +
                      config.build_settings['FRAMEWORK_SEARCH_PATHS[sdk=iphoneos*]'] = "\"#{path}/#{xcframework_file}\" $(inherited)"
         | 
| 156 | 
            +
                      # else Info.plist or another platform.
         | 
| 157 | 
            +
                    end
         | 
| 158 | 
            +
                  end
         | 
| 159 | 
            +
                end
         | 
| 160 | 
            +
              end
         | 
| 161 | 
            +
            end
         | 
    
        metadata
    ADDED
    
    | @@ -0,0 +1,119 @@ | |
| 1 | 
            +
            --- !ruby/object:Gem::Specification
         | 
| 2 | 
            +
            name: cocoapods-playon-network
         | 
| 3 | 
            +
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            +
              version: 1.0.0
         | 
| 5 | 
            +
            platform: ruby
         | 
| 6 | 
            +
            authors:
         | 
| 7 | 
            +
            - PlayON Network
         | 
| 8 | 
            +
            autorequire:
         | 
| 9 | 
            +
            bindir: bin
         | 
| 10 | 
            +
            cert_chain: []
         | 
| 11 | 
            +
            date: 2024-06-26 00:00:00.000000000 Z
         | 
| 12 | 
            +
            dependencies:
         | 
| 13 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 14 | 
            +
              name: rubyzip
         | 
| 15 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 16 | 
            +
                requirements:
         | 
| 17 | 
            +
                - - "~>"
         | 
| 18 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 19 | 
            +
                    version: '1'
         | 
| 20 | 
            +
              type: :runtime
         | 
| 21 | 
            +
              prerelease: false
         | 
| 22 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 23 | 
            +
                requirements:
         | 
| 24 | 
            +
                - - "~>"
         | 
| 25 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 26 | 
            +
                    version: '1'
         | 
| 27 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 28 | 
            +
              name: xcodeproj
         | 
| 29 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 30 | 
            +
                requirements:
         | 
| 31 | 
            +
                - - "~>"
         | 
| 32 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 33 | 
            +
                    version: '1'
         | 
| 34 | 
            +
              type: :runtime
         | 
| 35 | 
            +
              prerelease: false
         | 
| 36 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 37 | 
            +
                requirements:
         | 
| 38 | 
            +
                - - "~>"
         | 
| 39 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 40 | 
            +
                    version: '1'
         | 
| 41 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 42 | 
            +
              name: cocoapods-s3
         | 
| 43 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 44 | 
            +
                requirements:
         | 
| 45 | 
            +
                - - "~>"
         | 
| 46 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 47 | 
            +
                    version: '1'
         | 
| 48 | 
            +
              type: :runtime
         | 
| 49 | 
            +
              prerelease: false
         | 
| 50 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 51 | 
            +
                requirements:
         | 
| 52 | 
            +
                - - "~>"
         | 
| 53 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 54 | 
            +
                    version: '1'
         | 
| 55 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 56 | 
            +
              name: bundler
         | 
| 57 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 58 | 
            +
                requirements:
         | 
| 59 | 
            +
                - - "~>"
         | 
| 60 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 61 | 
            +
                    version: '1.3'
         | 
| 62 | 
            +
              type: :development
         | 
| 63 | 
            +
              prerelease: false
         | 
| 64 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 65 | 
            +
                requirements:
         | 
| 66 | 
            +
                - - "~>"
         | 
| 67 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 68 | 
            +
                    version: '1.3'
         | 
| 69 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 70 | 
            +
              name: rake
         | 
| 71 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 72 | 
            +
                requirements:
         | 
| 73 | 
            +
                - - "~>"
         | 
| 74 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 75 | 
            +
                    version: '1'
         | 
| 76 | 
            +
              type: :development
         | 
| 77 | 
            +
              prerelease: false
         | 
| 78 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 79 | 
            +
                requirements:
         | 
| 80 | 
            +
                - - "~>"
         | 
| 81 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 82 | 
            +
                    version: '1'
         | 
| 83 | 
            +
            description: Cocoapods plugin used to setup the PLAYON Network SDK for iOS
         | 
| 84 | 
            +
            email:
         | 
| 85 | 
            +
            - devs@playon.network
         | 
| 86 | 
            +
            executables: []
         | 
| 87 | 
            +
            extensions: []
         | 
| 88 | 
            +
            extra_rdoc_files: []
         | 
| 89 | 
            +
            files:
         | 
| 90 | 
            +
            - lib/Flutter/Flutter.podspec
         | 
| 91 | 
            +
            - lib/cocoapods-playon-network.rb
         | 
| 92 | 
            +
            - lib/cocoapods-playon-network/deintegrate.rb
         | 
| 93 | 
            +
            - lib/cocoapods-playon-network/gem_version.rb
         | 
| 94 | 
            +
            - lib/cocoapods-playon-network/helpers.rb
         | 
| 95 | 
            +
            - lib/cocoapods_plugin.rb
         | 
| 96 | 
            +
            homepage: https://playon.network
         | 
| 97 | 
            +
            licenses:
         | 
| 98 | 
            +
            - Apache-2.0
         | 
| 99 | 
            +
            metadata: {}
         | 
| 100 | 
            +
            post_install_message:
         | 
| 101 | 
            +
            rdoc_options: []
         | 
| 102 | 
            +
            require_paths:
         | 
| 103 | 
            +
            - lib
         | 
| 104 | 
            +
            required_ruby_version: !ruby/object:Gem::Requirement
         | 
| 105 | 
            +
              requirements:
         | 
| 106 | 
            +
              - - ">="
         | 
| 107 | 
            +
                - !ruby/object:Gem::Version
         | 
| 108 | 
            +
                  version: '0'
         | 
| 109 | 
            +
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 110 | 
            +
              requirements:
         | 
| 111 | 
            +
              - - ">="
         | 
| 112 | 
            +
                - !ruby/object:Gem::Version
         | 
| 113 | 
            +
                  version: '0'
         | 
| 114 | 
            +
            requirements: []
         | 
| 115 | 
            +
            rubygems_version: 3.0.9
         | 
| 116 | 
            +
            signing_key:
         | 
| 117 | 
            +
            specification_version: 4
         | 
| 118 | 
            +
            summary: Setup the PLAYON Network SDK for iOS easily
         | 
| 119 | 
            +
            test_files: []
         |