b0VIM 8.2@a6ojoshholtzJoshs-MacBook-Air.local~joshholtz/Developer/fastlane/fastlane/spaceship/lib/spaceship/connect_api/models/app.rbutf-8 3210#"! Utp[ SWrQg`ad[~pED* iM | U * )  w m l N .  p f e K 1  ] = h g # " }kjV@65- %)aWwRH>=wv4*)! # # App Info # end return client.patch_app(app_id: id, attributes: attributes, app_price_tier_id: app_price_tier_id, territory_ids: territory_ids) attributes = reverse_attr_mapping(attributes) client ||= Spaceship::ConnectAPI def update(client: nil, attributes: nil, app_price_tier_id: nil, territory_ids: nil) end return client.get_app(app_id: app_id, includes: includes).first client ||= Spaceship::ConnectAPI def self.get(client: nil, app_id: nil, includes: "appStoreVersions") end ) company_name: company_name platforms: platforms, return all(client: client).find do |app| # end # app.bundle_id == bundle_id # return all(client: client, filter: { bundleId: bundle_id }).find do |app| # # Also go uncomment the tests in spaceship/spec/connectapi/models/app_spec.rb when this is fixed # # Temporarily removing this filter and filtering locally until this is fixed # On 2022/2/2, filtering by bundle identifier started to fail for identifiers longer than 25 characters client ||= Spaceship::ConnectAPI def self.find(bundle_id, client: nil) end return resps.flat_map(&:to_models) resps = client.get_apps(filter: filter, includes: includes, limit: limit, sort: sort).all_pages client ||= Spaceship::ConnectAPI def self.all(client: nil, filter: {}, includes: ESSENTIAL_INCLUDES, limit: nil, sort: nil) # # Apps # end return "apps" def self.type ].join(",") "prices" "appStoreVersions", ESSENTIAL_INCLUDES = [ }) "prices" => "prices" "appStoreVersions" => "app_store_versions", "contentRightsDeclaration" => "content_rights_declaration", "educationDiscountType" => "education_discount_type", "distributionType" => "distribution_type", "availableInNewTerritories" => "available_in_new_territories", "isAAG" => "is_aag", "removed" => "removed", "isOptedInToDistributeIosAppOnMacAppStore" => "is_opted_in_to_distribute_ios_app_on_mac_app_store", "primaryLocale" => "primary_locale", "sku" => "sku", "bundleId" => "bundle_id", "name" => "name", self.attr_mapping({ end NOT_DISCOUNTED = "NOT_DISCOUNTED" NOT_APPLICABLE = "NOT_APPLICABLE" DISCOUNTED = "DISCOUNTED" module EducationDiscountType end CUSTOM = "CUSTOM" APP_STORE = "APP_STORE" module DistributionType end DOES_NOT_USE_THIRD_PARTY_CONTENT = "DOES_NOT_USE_THIRD_PARTY_CONTENT" USES_THIRD_PARTY_CONTENT = "USES_THIRD_PARTY_CONTENT" module ContentRightsDeclaration attr_accessor :educationDiscountType attr_accessor :distribution_type # Only available with Apple ID auth attr_accessor :prices attr_accessor :app_store_versions attr_accessor :content_rights_declaration attr_accessor :available_in_new_territories attr_accessor :is_aag attr_accessor :removed attr_accessor :is_opted_in_to_distribute_ios_app_on_mac_app_store attr_accessor :primary_locale attr_accessor :sku attr_accessor :bundle_id attr_accessor :name include Spaceship::ConnectAPI::Model class App class ConnectAPImodule Spaceship# rubocop:disable Metrics/ClassLengthrequire_relative './build'require_relative '../model'adr`f\[[E# P <  P E ; :  y q p # w ` C 9 8 z Q > + u^A76Dndc({med4 V- rq# rubocop:enable Metrics/ClassLengthend end end end end client.delete_user_visible_apps(user_id: user_id, app_ids: [id]) user_ids.each do |user_id| client ||= Spaceship::ConnectAPI def remove_users(client: nil, user_ids: nil) end end client.add_user_visible_apps(user_id: user_id, app_ids: [id]) user_ids.each do |user_id| client ||= Spaceship::ConnectAPI def add_users(client: nil, user_ids: nil) # # Users # end return resp.to_models.first resp = client.post_review_submission(app_id: id, platform: platform) client ||= Spaceship::ConnectAPI def create_review_submission(client: nil, platform:) end return resps.flat_map(&:to_models) resps = client.get_review_submissions(app_id: id, filter: filter, includes: includes, limit: limit, sort: sort).all_pages client ||= Spaceship::ConnectAPI def get_review_submissions(client: nil, filter: {}, includes: nil, limit: nil, sort: nil) # appStoreVersionForReview,items end return get_review_submissions(client: client, filter: filter, includes: includes).first } platform: platform ].join(","), Spaceship::ConnectAPI::ReviewSubmission::ReviewSubmissionState::IN_REVIEW Spaceship::ConnectAPI::ReviewSubmission::ReviewSubmissionState::WAITING_FOR_REVIEW, state: [ filter = { client ||= Spaceship::ConnectAPI def get_in_progress_review_submission(client: nil, platform:, includes: nil) end return get_review_submissions(client: client, filter: filter, includes: includes).first } platform: platform ].join(","), Spaceship::ConnectAPI::ReviewSubmission::ReviewSubmissionState::READY_FOR_REVIEW state: [ filter = { client ||= Spaceship::ConnectAPI def get_ready_review_submission(client: nil, platform:, includes: nil) # # Review Submissions # end }) education_discount_type: EducationDiscountType::DISCOUNTED update(attributes: { def enable_educational_discount end }) education_discount_type: EducationDiscountType::NOT_DISCOUNTED update(attributes: { def disable_educational_discount # # Education # end return resps.flat_map(&:to_models).first ).all_pages public_link_limit_enabled: public_link_limit_enabled public_link_limit: public_link_limit, public_link_enabled: public_link_enabled, is_internal_group: is_internal_group, group_name: group_name, app_id: id, resps = client.create_beta_group( client ||= Spaceship::ConnectAPI def create_beta_group(client: nil, group_name: nil, is_internal_group: false, public_link_enabled: false, public_link_limit: 10_000, public_link_limit_enabled: false) end return resps.flat_map(&:to_models) resps = client.get_beta_groups(filter: filter, includes: includes, limit: limit, sort: sort).all_pagesad#  /oO/  9 / . t # # App Info # end return client.patch_app(app_id: id, attributes: attributes, app_price_tier_id: app_price_tier_id, territory_ids: territory_ids) attributes = reverse_attr_mapping(attributes) client ||= Spaceship::ConnectAPI def update(client: nil, attributes: nil, app_price_tier_id: nil, territory_ids: nil) end return client.get_app(app_id: app_id, includes: includes).first client ||= Spaceship::ConnectAPI def self.get(client: nil, app_id: nil, includes: "appStoreVersions") end ) company_name: company_name platforms: platforms, bundle_id: bundle_id, primary_locale: primary_locale, sku: sku, version_string: version_string, name: name, client.post_app( client ||= Spaceship::ConnectAPI def self.create(client: nil, name: nil, version_string: nil, sku: nil, primary_locale: nil, bundle_id: nil, platforms: nil, company_name: nil) end end app.bundle_id == bundle_idadSWn[n x w 3  L #  r / N D C  {zrTLK"e<yx6 KI2  y3 end return version.reject! return false if version.nil? .last .sort_by { |v| Gem::Version.new(v.version_string) } version = get_app_store_versions(client: client, filter: filter, includes: "appStoreVersionSubmission") # Get the latest version } platform: platform ].join(","), Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::WAITING_FOR_REVIEW Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::IN_REVIEW, Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::PENDING_DEVELOPER_RELEASE, Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::PENDING_APPLE_RELEASE, appStoreState: [ filter = { platform ||= Spaceship::ConnectAPI::Platform::IOS client ||= Spaceship::ConnectAPI def reject_version_if_possible!(client: nil, platform: nil) # # App Store Versions # end return resp.to_models resp = client.get_app_prices(app_id: id, filter: filter, includes: includes, limit: limit, sort: sort) client ||= Spaceship::ConnectAPI def fetch_app_prices(client: nil, filter: {}, includes: "priceTier", limit: nil, sort: nil) # # App Pricing # end return resps.flat_map(&:to_models) resps = client.get_available_territories(app_id: id, filter: filter, includes: includes, limit: limit, sort: sort).all_pages filter ||= {} client ||= Spaceship::ConnectAPI def fetch_available_territories(client: nil, filter: {}, includes: nil, limit: nil, sort: nil) # # Available Territories # end return resp.to_models.first resp = client.get_app_infos(app_id: id, includes: includes) client ||= Spaceship::ConnectAPI def fetch_latest_app_info(client: nil, includes: Spaceship::ConnectAPI::AppInfo::ESSENTIAL_INCLUDES) end end.first states.include?(model.app_store_state) return resp.to_models.select do |model| resp = client.get_app_infos(app_id: id, includes: includes) ] Spaceship::ConnectAPI::AppInfo::AppStoreState::INVALID_BINARY Spaceship::ConnectAPI::AppInfo::AppStoreState::WAITING_FOR_REVIEW, Spaceship::ConnectAPI::AppInfo::AppStoreState::METADATA_REJECTED, Spaceship::ConnectAPI::AppInfo::AppStoreState::REJECTED, Spaceship::ConnectAPI::AppInfo::AppStoreState::DEVELOPER_REJECTED, Spaceship::ConnectAPI::AppInfo::AppStoreState::PREPARE_FOR_SUBMISSION, states = [ client ||= Spaceship::ConnectAPI def fetch_edit_app_info(client: nil, includes: Spaceship::ConnectAPI::AppInfo::ESSENTIAL_INCLUDES) end end.first states.include?(model.app_store_state) return resp.to_models.select do |model| resp = client.get_app_infos(app_id: id, includes: includes) ] Spaceship::ConnectAPI::AppInfo::AppStoreState::DEVELOPER_REMOVED_FROM_SALE Spaceship::ConnectAPI::AppInfo::AppStoreState::IN_REVIEW, Spaceship::ConnectAPI::AppInfo::AppStoreState::PROCESSING_FOR_APP_STORE, Spaceship::ConnectAPI::AppInfo::AppStoreState::PENDING_DEVELOPER_RELEASE, Spaceship::ConnectAPI::AppInfo::AppStoreState::PENDING_APPLE_RELEASE, Spaceship::ConnectAPI::AppInfo::AppStoreState::READY_FOR_SALE, states = [ client ||= Spaceship::ConnectAPI def fetch_live_app_info(client: nil, includes: Spaceship::ConnectAPI::AppInfo::ESSENTIAL_INCLUDES)adgQdCKJ- e M ? (  k _ U T  o e d C  v # &k1QWK\3ndgf def get_pending_release_app_store_version(client: nil, platform: nil, includes: Spaceship::ConnectAPI::AppStoreVersion::ESSENTIAL_INCLUDES) end return get_app_store_versions(client: client, filter: filter, includes: includes).first } platform: platform appStoreState: Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::IN_REVIEW, filter = { platform ||= Spaceship::ConnectAPI::Platform::IOS client ||= Spaceship::ConnectAPI def get_in_review_app_store_version(client: nil, platform: nil, includes: Spaceship::ConnectAPI::AppStoreVersion::ESSENTIAL_INCLUDES) end .last .sort_by { |v| Gem::Version.new(v.version_string) } return get_app_store_versions(client: client, filter: filter, includes: includes) # Get the latest version } platform: platform ].join(","), Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::INVALID_BINARY Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::WAITING_FOR_REVIEW, Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::METADATA_REJECTED, Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::REJECTED, Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::DEVELOPER_REJECTED, Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::PREPARE_FOR_SUBMISSION, appStoreState: [ filter = { platform ||= Spaceship::ConnectAPI::Platform::IOS client ||= Spaceship::ConnectAPI def get_edit_app_store_version(client: nil, platform: nil, includes: Spaceship::ConnectAPI::AppStoreVersion::ESSENTIAL_INCLUDES) end return get_app_store_versions(client: client, filter: filter, includes: includes).first } platform: platform ].join(","), Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::DEVELOPER_REMOVED_FROM_SALE Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::READY_FOR_SALE, appStoreState: [ filter = { platform ||= Spaceship::ConnectAPI::Platform::IOS client ||= Spaceship::ConnectAPI def get_live_app_store_version(client: nil, platform: nil, includes: Spaceship::ConnectAPI::AppStoreVersion::ESSENTIAL_INCLUDES) end .last .sort_by { |v| Date.parse(v.created_date) } return get_app_store_versions(client: client, filter: filter, includes: includes) # Get the latest version } platform: platform filter = { platform ||= Spaceship::ConnectAPI::Platform::IOS client ||= Spaceship::ConnectAPI def get_latest_app_store_version(client: nil, platform: nil, includes: nil) end end return true client.post_app_store_version(app_id: id, attributes: attributes) attributes = { versionString: version_string, platform: platform } else return false end return true app_store_version.update(client: client, attributes: attributes) attributes = { versionString: version_string } if version_string != app_store_version.version_string if app_store_version app_store_version = get_edit_app_store_version(client: client, platform: platform) client ||= Spaceship::ConnectAPI def ensure_version!(version_string, platform: nil, client: nil) # @return (Bool) Was something changed? # from an existing version # This will either create a new version or change the version number # Will make sure the current edit_version matches the given version numberadLgozx O 9 {  { B v - "    ~ U ?   wvnYQP+XB(')[0&%hg^5 filter[:app] = id filter ||= {} client ||= Spaceship::ConnectAPI def get_beta_groups(client: nil, filter: {}, includes: nil, limit: nil, sort: nil) end return resps.flat_map(&:to_models) resps = client.get_beta_app_localizations(filter: filter, includes: includes, limit: limit, sort: sort).all_pages filter[:app] = id filter ||= {} client ||= Spaceship::ConnectAPI def get_beta_app_localizations(client: nil, filter: {}, includes: nil, limit: nil, sort: nil) end return resps.flat_map(&:to_models) resps = client.get_build_deliveries(filter: filter, includes: includes, limit: limit, sort: sort).all_pages filter[:app] = id filter ||= {} client ||= Spaceship::ConnectAPI def get_build_deliveries(client: nil, filter: {}, includes: nil, limit: nil, sort: nil) end return resps.flat_map(&:to_models) resps = client.get_builds(filter: filter, includes: includes, limit: limit, sort: sort).all_pages filter[:app] = id filter ||= {} client ||= Spaceship::ConnectAPI def get_builds(client: nil, filter: {}, includes: nil, limit: nil, sort: nil) # # Builds # end return resps.flat_map(&:to_models) resps = client.get_beta_testers(filter: filter, includes: includes, limit: limit, sort: sort).all_pages filter[:apps] = id filter ||= {} client ||= Spaceship::ConnectAPI def get_beta_testers(client: nil, filter: {}, includes: nil, limit: nil, sort: nil) # # Beta Testers # end return resps.flat_map(&:to_models) resps = client.get_beta_feedback(filter: filter, includes: includes, limit: limit, sort: sort).all_pages filter["build.app"] = id filter ||= {} client ||= Spaceship::ConnectAPI def get_beta_feedback(client: nil, filter: {}, includes: "tester,build,screenshots", limit: nil, sort: nil) # # Beta Feedback # end }) education_discount_type: EducationDiscountType::NOT_APPLICABLE distributionType: App::DistributionType::CUSTOM, update(attributes: { def enable_b2b end }) education_discount_type: EducationDiscountType::NOT_DISCOUNTED distributionType: DistributionType::APP_STORE, update(attributes: { def disable_b2b # # B2B # end end return resp.to_models resp = client.get_app_store_versions(app_id: id, filter: filter, includes: includes, limit: limit, sort: sort) else return resps.flat_map(&:to_models) resps = client.get_app_store_versions(app_id: id, filter: filter, includes: includes, limit: limit, sort: sort).all_pages if limit.nil? client ||= Spaceship::ConnectAPI def get_app_store_versions(client: nil, filter: {}, includes: Spaceship::ConnectAPI::AppStoreVersion::ESSENTIAL_INCLUDES, limit: nil, sort: nil) end return get_app_store_versions(client: client, filter: filter, includes: includes).first } platform: platform ].join(','), Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::PENDING_DEVELOPER_RELEASE Spaceship::ConnectAPI::AppStoreVersion::AppStoreState::PENDING_APPLE_RELEASE, appStoreState: [ filter = { platform ||= Spaceship::ConnectAPI::Platform::IOS client ||= Spaceship::ConnectAPI