diff --git a/.version b/.version index cd802a1e..07a7b03c 100644 --- a/.version +++ b/.version @@ -1 +1 @@ -6.6.0 \ No newline at end of file +6.7.0 \ No newline at end of file diff --git a/.version_code b/.version_code index 2497dbba..01d8dff7 100644 --- a/.version_code +++ b/.version_code @@ -1 +1 @@ -6060000 \ No newline at end of file +6070000 \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 82075f0e..69a2495f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,10 @@ ### NEXT_VERSION_DESCRIPTION_BEGIN ### NEXT_VERSION_DESCRIPTION_END +## [6.7.0] (17-03-2022) + +* TMX библиотеки теперь подключены через cocoapods. Обновлена документация. Обновлены правила валидации карт. Исправлен интерфейс BankCardRepeatModuleInputData. Исправлена и дополнена документация. Исправлено несколько визуальных багов. + ## [6.6.2] (04-03-2022) * Исправлен потенциальный крэш diff --git a/CardIO/CardIO.podspec b/CardIO/CardIO.podspec index c4904803..3283f8f4 100644 --- a/CardIO/CardIO.podspec +++ b/CardIO/CardIO.podspec @@ -1,7 +1,7 @@ Pod::Spec.new do |spec| spec.name = 'CardIO' spec.version = '5.4.1' - spec.license = { type: 'MIT', file: 'CardIO/LICENSE.md' } + spec.license = { type: 'MIT', file: 'LICENSE.md' } spec.homepage = 'https://www.card.io' spec.authors = { 'CardIO' => 'support@paypal.com' } spec.summary = 'Credit card scanning for mobile apps' @@ -11,7 +11,7 @@ Pod::Spec.new do |spec| spec.ios.deployment_target = '6.1' spec.requires_arc = true spec.source_files = 'CardIO/*.{h,m}' - spec.frameworks = 'Accelerate', 'AVFoundation', 'AudioToolbox', 'CoreGraphics', 'CoreMedia', 'CoreVideo', 'CoreServices', 'OpenGLES', 'QuartzCore', 'Security', 'UIKit' + spec.frameworks = 'Accelerate', 'AVFoundation', 'AudioToolbox', 'CoreMedia', 'CoreVideo', 'MobileCoreServices', 'OpenGLES', 'QuartzCore', 'Security', 'UIKit' spec.libraries = 'c++' spec.vendored_libraries = 'CardIO/libCardIOCore.a', 'CardIO/libopencv_core.a', 'CardIO/libopencv_imgproc.a' spec.pod_target_xcconfig = { 'OTHER_LDFLAGS' => '-ObjC' } diff --git a/CardIO/CardIO/LICENSE.md b/CardIO/LICENSE.md similarity index 100% rename from CardIO/CardIO/LICENSE.md rename to CardIO/LICENSE.md diff --git a/Podfile.lock b/Podfile.lock index d49a004a..4f1a4b9d 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -8,15 +8,19 @@ PODS: - Reveal-SDK (33) - SwiftLint (0.45.1) - ThreatMetrixAdapter (3.3.3) + - TMXProfiling (1.0.1) + - TMXProfilingConnections (1.0.1) - YandexMobileMetrica/Dynamic (3.17.0): - YandexMobileMetrica/Dynamic/Core (= 3.17.0) - YandexMobileMetrica/Dynamic/Crashes (= 3.17.0) - YandexMobileMetrica/Dynamic/Core (3.17.0) - YandexMobileMetrica/Dynamic/Crashes (3.17.0): - YandexMobileMetrica/Dynamic/Core - - YooKassaPayments (6.6.2): + - YooKassaPayments (6.7.0): - MoneyAuth (~> 3.3.0) - ThreatMetrixAdapter (~> 3.3.3) + - TMXProfiling (= 1.0.1) + - TMXProfilingConnections (= 1.0.1) - YandexMobileMetrica/Dynamic (~> 3.0) - YooKassaPaymentsApi (~> 2.11.0) - YooKassaWalletApi (~> 2.3.1) @@ -42,6 +46,8 @@ SPEC REPOS: - FunctionalSwift - MoneyAuth - ThreatMetrixAdapter + - TMXProfiling + - TMXProfilingConnections - YooKassaPaymentsApi - YooKassaWalletApi - YooMoneyCoreApi @@ -57,14 +63,16 @@ EXTERNAL SOURCES: :path: "./" SPEC CHECKSUMS: - CardIO: 3d68b6cf6f821a63c3a08cb08083c1a6702ce67d + CardIO: 69b4821c414157debbf1e3dc30e20c9507757a44 FunctionalSwift: 856da67cf3fb812341445d4e28f05875904d8da0 MoneyAuth: 74ba8e8fadbdabe2be706dcad1d0b9de96152897 Reveal-SDK: effba1c940b8337195563c425a6b5862ec875caa SwiftLint: 06ac37e4d38c7068e0935bb30cda95f093bec761 ThreatMetrixAdapter: 1b31f0afe02eb68be52945e160cc9c0fd117b06c + TMXProfiling: feb7377f8053983ffca628ad6648a3c319629ae5 + TMXProfilingConnections: ab80677b078b86560457b6bc60546bced75d2ddd YandexMobileMetrica: 9e713c16bb6aca0ba63b84c8d7b8b86d32f4ecc4 - YooKassaPayments: 93039e3a4b08a44ac8c901d20fbb9151673ffa47 + YooKassaPayments: 606ed4b70d4ebf7682963018f2cb2a0eb3e567b8 YooKassaPaymentsApi: f76c84ec94ace98e8babc6996cf804840d93f8d8 YooKassaWalletApi: 817d511330332aaec84490f8335ab8c94285d9be YooMoneyCoreApi: d16cbc3e816c89b7cca957090d7c290b9eb6ddf1 diff --git a/README.md b/README.md index 88f19ec1..2fe1d749 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,6 @@ Using the SDK, you can receive tokens for processing payments via bank cards, Ap - [Adding dependencies](#adding-dependencies) - [CocoaPods](#cocoapods) - [Carthage](#carthage) - - [Implementing TMXProfiling and TMXProfilingConnections](#implementing-tmxprofiling-and-tmxprofilingconnections) - [Quick integration](#quick-integration) - [Available payment methods](#available-payment-methods) - [Setting up payment methods](#setting-up-payment-methods) @@ -122,17 +121,6 @@ end At the moment, Carthage is not supported. -## Implementing TMXProfiling and TMXProfilingConnections - -To get the `.xcframework` file, [sign up for YooMoney](https://yookassa.ru/joinups) -and tell your manager that you'd like to implement the mobile SDK. - -1. Using Finder or a different file manager, add the `TMXProfiling.xcframework` and `TMXProfilingConnections.xcframework` libraries to the project folder. - -2. Add `TMXProfiling.xcframework` and `TMXProfilingConnections.xcframework` in `Frameworks, Libraries, and Embedded Content` for the main target of the project under the `General` section. - -3. `TMXProfiling.xcframework` and `TMXProfilingConnections.xcframework` must be added with `Embed & Sign` - ## Quick integration 1. Create `TokenizationModuleInputData` (you'll need a [key for client apps](https://yookassa.ru/my/tunes) from the YooMoney Merchant Profile). Payment parameters (currency and amount) and payment form parameters which users will see during the payment (payment methods, store name, and order description) are specified in this model. @@ -745,8 +733,6 @@ To launch the Example app, you need to: git clone https://github.com/yoomoney/yookassa-payments-swift.git ``` -2. Create a `Frameworks` folder in the project root directory. -3. Add `TMXProfiling.xcframework` and `TMXProfilingConnections.xcframework` to the `Frameworks` folder 4. Go to the project folder and run the following commands in console: ```shell @@ -756,7 +742,7 @@ pod install ``` 4. Open `YooKassaPayments.xcworkspace`. -5. Select and launch the `ExamplePods` scheme. +5. Select and launch the `YooKassaPaymentsDemoApp` scheme. ## Interface customization diff --git a/README_RU.md b/README_RU.md index 084c90b3..3e0cd0fa 100644 --- a/README_RU.md +++ b/README_RU.md @@ -21,7 +21,6 @@ - [Подключение зависимостей](#подключение-зависимостей) - [CocoaPods](#cocoapods) - [Carthage](#carthage) - - [Подключение TMXProfiling и TMXProfilingConnections](#подключение-tmxprofiling-и-tmxprofilingconnections) - [Быстрая интеграция](#быстрая-интеграция) - [Доступные способы оплаты](#доступные-способы-оплаты) - [Настройка способов оплаты](#настройка-способов-оплаты) @@ -122,17 +121,6 @@ end На текущий момент Carthage не поддерживается. -## Подключение TMXProfiling и TMXProfilingConnections - -Чтобы получить файл `.xcframework`, [зарегистрируйтесь в ЮKassa](https://yookassa.ru/joinups) -и сообщите вашему менеджеру, что хотите подключить мобильный SDK. - -1. Используя Finder или другой файловый менеджер добавьте библиотеки `TMXProfiling.xcframework` и `TMXProfilingConnections.xcframework` в папку c вашим проектом. - -2. В разделе `General` у основного таргета проекта добавьте `TMXProfiling.xcframework` и `TMXProfilingConnections.xcframework` в `Frameworks, Libraries, and Embedded Content`. - -3. `TMXProfiling.xcframework` и `TMXProfilingConnections.xcframework` должны быть добавлены как `Embed & Sign` - ## Быстрая интеграция 1. Создайте `TokenizationModuleInputData` (понадобится [ключ для клиентских приложений](https://yookassa.ru/my/tunes) из личного кабинета ЮKassa). В этой модели передаются параметры платежа (валюта и сумма) и параметры платежной формы, которые увидит пользователь при оплате (способы оплаты, название магазина и описание заказа). @@ -744,10 +732,7 @@ let moduleData = TokenizationModuleInputData( ```shell git clone https://github.com/yoomoney/yookassa-payments-swift.git ``` - -2. Создайте папку `Frameworks` в корне проекта. -3. Добавьте `TMXProfiling.xcframework` и `TMXProfilingConnections.xcframework` в папку `Frameworks` -4. В консоли перейти в папку с проектом и выполнить следующие команды: +2. В консоли перейти в папку с проектом и выполнить следующие команды: ```shell gem install bundler @@ -756,7 +741,7 @@ pod install ``` 4. Открыть `YooKassaPayments.xcworkspace`. -5. Выбрать и запустить схему `ExamplePods`. +5. Выбрать и запустить схему `YooKassaPaymentsDemoApp`. ## Кастомизация интерфейса diff --git a/YooKassaPayments.podspec b/YooKassaPayments.podspec index 5e1be4b8..4d23ab18 100644 --- a/YooKassaPayments.podspec +++ b/YooKassaPayments.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'YooKassaPayments' - s.version = '6.6.2' + s.version = '6.7.0' s.homepage = 'https://github.com/yoomoney/yookassa-payments-swift' s.license = { :type => "MIT", @@ -29,6 +29,8 @@ Pod::Spec.new do |s| s.ios.framework = 'PassKit' s.ios.library = 'z' + s.ios.dependency 'TMXProfiling', '= 1.0.1' + s.ios.dependency 'TMXProfilingConnections', '= 1.0.1' s.ios.dependency 'YooMoneyCoreApi', '~> 2.0.1' s.ios.dependency 'YooKassaPaymentsApi', '~> 2.11.0' s.ios.dependency 'YooKassaWalletApi', '~> 2.3.1' diff --git a/YooKassaPayments.xcodeproj/project.pbxproj b/YooKassaPayments.xcodeproj/project.pbxproj index a4da7b76..8b9d1edf 100644 --- a/YooKassaPayments.xcodeproj/project.pbxproj +++ b/YooKassaPayments.xcodeproj/project.pbxproj @@ -11,17 +11,7 @@ 2519BACC26F878520013DEFD /* defaultConfig_ru.json in Resources */ = {isa = PBXBuildFile; fileRef = 2519BACB26F878520013DEFD /* defaultConfig_ru.json */; }; 2519BAD226FAF7630013DEFD /* ConfigMediator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2519BAD126FAF7630013DEFD /* ConfigMediator.swift */; }; 2519BAD426FAF78A0013DEFD /* ConfigService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2519BAD326FAF78A0013DEFD /* ConfigService.swift */; }; - 252982A426AC38B300174692 /* TMXProfiling.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 30D7527E261C6D3C00EF3231 /* TMXProfiling.xcframework */; }; - 252982A626AC38B300174692 /* TMXProfilingConnections.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 30D7527D261C6D3C00EF3231 /* TMXProfilingConnections.xcframework */; }; 252982B026AE928C00174692 /* Cartfile in Resources */ = {isa = PBXBuildFile; fileRef = 252982AF26AE928C00174692 /* Cartfile */; }; - 252982BD26AEB01200174692 /* YooKassaWalletApi.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 252982B826AEB01200174692 /* YooKassaWalletApi.xcframework */; }; - 252982BE26AEB01200174692 /* FunctionalSwift.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 252982B926AEB01200174692 /* FunctionalSwift.xcframework */; }; - 252982BF26AEB01200174692 /* MoneyAuth.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 252982BA26AEB01200174692 /* MoneyAuth.xcframework */; }; - 252982C026AEB01200174692 /* YooKassaPaymentsApi.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 252982BB26AEB01200174692 /* YooKassaPaymentsApi.xcframework */; }; - 252982C126AEB01200174692 /* YooMoneyCoreApi.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 252982BC26AEB01200174692 /* YooMoneyCoreApi.xcframework */; }; - 252982C426AEB3B500174692 /* YandexMobileMetrica.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 252982C226AEB3B500174692 /* YandexMobileMetrica.xcframework */; }; - 252982C526AEB3B500174692 /* YandexMobileMetricaCrashes.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 252982C326AEB3B500174692 /* YandexMobileMetricaCrashes.xcframework */; }; - 252982C726AEB6A800174692 /* ThreatMetrixAdapter.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 252982C626AEB6A800174692 /* ThreatMetrixAdapter.xcframework */; }; 252ED94A2773B9F800547007 /* AnalyticsTracking.swift in Sources */ = {isa = PBXBuildFile; fileRef = 252ED9492773B9F700547007 /* AnalyticsTracking.swift */; }; 25347BE126BADBE800FDD1DA /* CardSettingsRouter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 25347BD626BADBE800FDD1DA /* CardSettingsRouter.swift */; }; 25347BE226BADBE800FDD1DA /* CardSettingsPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 25347BD726BADBE800FDD1DA /* CardSettingsPresenter.swift */; }; @@ -47,6 +37,22 @@ 25911AB6270EB8A30033F0B1 /* LoadingViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 25911AB5270EB8A30033F0B1 /* LoadingViewController.swift */; }; 2596771A275A67FE0043D10A /* HTMLUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 25967719275A67FE0043D10A /* HTMLUtils.swift */; }; 25CA4F8F27635D71006C257E /* Hosts.plist in Resources */ = {isa = PBXBuildFile; fileRef = 25CA4F8E27635D70006C257E /* Hosts.plist */; }; + 25DFA44327DA24C80031CA59 /* FunctionalSwift.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 252982B926AEB01200174692 /* FunctionalSwift.xcframework */; }; + 25DFA44427DA24C80031CA59 /* FunctionalSwift.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 252982B926AEB01200174692 /* FunctionalSwift.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + 25DFA44627DA24C90031CA59 /* MoneyAuth.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 252982BA26AEB01200174692 /* MoneyAuth.xcframework */; }; + 25DFA44727DA24C90031CA59 /* MoneyAuth.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 252982BA26AEB01200174692 /* MoneyAuth.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + 25DFA44827DA24CA0031CA59 /* ThreatMetrixAdapter.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 252982C626AEB6A800174692 /* ThreatMetrixAdapter.xcframework */; }; + 25DFA44927DA24CA0031CA59 /* ThreatMetrixAdapter.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 252982C626AEB6A800174692 /* ThreatMetrixAdapter.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + 25DFA44E27DA24CE0031CA59 /* YandexMobileMetrica.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 252982C226AEB3B500174692 /* YandexMobileMetrica.xcframework */; }; + 25DFA44F27DA24CE0031CA59 /* YandexMobileMetrica.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 252982C226AEB3B500174692 /* YandexMobileMetrica.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + 25DFA45027DA24CF0031CA59 /* YandexMobileMetricaCrashes.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 252982C326AEB3B500174692 /* YandexMobileMetricaCrashes.xcframework */; }; + 25DFA45127DA24CF0031CA59 /* YandexMobileMetricaCrashes.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 252982C326AEB3B500174692 /* YandexMobileMetricaCrashes.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + 25DFA45227DA24D00031CA59 /* YooKassaPaymentsApi.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 252982BB26AEB01200174692 /* YooKassaPaymentsApi.xcframework */; }; + 25DFA45327DA24D00031CA59 /* YooKassaPaymentsApi.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 252982BB26AEB01200174692 /* YooKassaPaymentsApi.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + 25DFA45427DA24D10031CA59 /* YooKassaWalletApi.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 252982B826AEB01200174692 /* YooKassaWalletApi.xcframework */; }; + 25DFA45527DA24D10031CA59 /* YooKassaWalletApi.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 252982B826AEB01200174692 /* YooKassaWalletApi.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + 25DFA45627DA24D20031CA59 /* YooMoneyCoreApi.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 252982BC26AEB01200174692 /* YooMoneyCoreApi.xcframework */; }; + 25DFA45727DA24D20031CA59 /* YooMoneyCoreApi.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 252982BC26AEB01200174692 /* YooMoneyCoreApi.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 25FD881326CD4AD70032B5FD /* PaymentRecurrencyAndDataSavingSection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 25FD881226CD4AD70032B5FD /* PaymentRecurrencyAndDataSavingSection.swift */; }; 25FD881526CD4B820032B5FD /* PaymentRecurrencyAndDataSavingSectionFactory.swift in Sources */ = {isa = PBXBuildFile; fileRef = 25FD881426CD4B820032B5FD /* PaymentRecurrencyAndDataSavingSectionFactory.swift */; }; 3089EF4923846F6300CB7319 /* SwitcherSavePaymentMethodViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3089EF4823846F6300CB7319 /* SwitcherSavePaymentMethodViewModel.swift */; }; @@ -409,6 +415,27 @@ 78CF11E025D438AC00F7154E /* ApplePayContractViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78CF11DF25D438AC00F7154E /* ApplePayContractViewModel.swift */; }; /* End PBXBuildFile section */ +/* Begin PBXCopyFilesBuildPhase section */ + 25DFA44527DA24C80031CA59 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 25DFA44927DA24CA0031CA59 /* ThreatMetrixAdapter.xcframework in Embed Frameworks */, + 25DFA44727DA24C90031CA59 /* MoneyAuth.xcframework in Embed Frameworks */, + 25DFA45327DA24D00031CA59 /* YooKassaPaymentsApi.xcframework in Embed Frameworks */, + 25DFA44F27DA24CE0031CA59 /* YandexMobileMetrica.xcframework in Embed Frameworks */, + 25DFA45727DA24D20031CA59 /* YooMoneyCoreApi.xcframework in Embed Frameworks */, + 25DFA45527DA24D10031CA59 /* YooKassaWalletApi.xcframework in Embed Frameworks */, + 25DFA44427DA24C80031CA59 /* FunctionalSwift.xcframework in Embed Frameworks */, + 25DFA45127DA24CF0031CA59 /* YandexMobileMetricaCrashes.xcframework in Embed Frameworks */, + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + /* Begin PBXFileReference section */ 244F7901F30CDE5EFC8637D7 /* Podfile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Podfile; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; 244F7D88849ACD598FFD45ED /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.info; path = Info.plist; sourceTree = ""; }; @@ -448,6 +475,8 @@ 255F2A962701D99F00BF4354 /* ConfigServiceAssembly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConfigServiceAssembly.swift; sourceTree = ""; }; 255F2A9827032ED700BF4354 /* ConfigMediatorImpl.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConfigMediatorImpl.swift; sourceTree = ""; }; 255F2A9A27032EE500BF4354 /* ConfigServiceImpl.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConfigServiceImpl.swift; sourceTree = ""; }; + 257D6BA527E1F18A005F5488 /* README_RU.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README_RU.md; sourceTree = ""; }; + 257D6BA627E1F18A005F5488 /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; }; 25911A9A27073B930033F0B1 /* PlistStorage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlistStorage.swift; sourceTree = ""; }; 25911A9C270B512C0033F0B1 /* DataLoader.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DataLoader.swift; sourceTree = ""; }; 25911AB5270EB8A30033F0B1 /* LoadingViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoadingViewController.swift; sourceTree = ""; }; @@ -473,8 +502,6 @@ 30C22EFA251A076400460CC0 /* MoneyAuthAssembly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoneyAuthAssembly.swift; sourceTree = ""; }; 30C22EFD251A0C1100460CC0 /* GlobalConstants.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GlobalConstants.swift; sourceTree = ""; }; 30C669DE262042390027C027 /* ThreatMetrixServiceFactory.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ThreatMetrixServiceFactory.swift; sourceTree = ""; }; - 30D7527D261C6D3C00EF3231 /* TMXProfilingConnections.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = TMXProfilingConnections.xcframework; path = Frameworks/TMXProfilingConnections.xcframework; sourceTree = ""; }; - 30D7527E261C6D3C00EF3231 /* TMXProfiling.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = TMXProfiling.xcframework; path = Frameworks/TMXProfiling.xcframework; sourceTree = ""; }; 30EDA3C926398E6D00FAD14D /* AmountNumberFormatter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AmountNumberFormatter.swift; sourceTree = ""; }; 402EB009CEDEC5DB870537E1 /* KeyValueStoring.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = KeyValueStoring.swift; sourceTree = ""; }; 402EB014F96F71429404DC96 /* WebBrowserPresenter.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WebBrowserPresenter.swift; sourceTree = ""; }; @@ -833,16 +860,14 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 252982BD26AEB01200174692 /* YooKassaWalletApi.xcframework in Frameworks */, - 252982C026AEB01200174692 /* YooKassaPaymentsApi.xcframework in Frameworks */, - 252982C526AEB3B500174692 /* YandexMobileMetricaCrashes.xcframework in Frameworks */, - 252982A626AC38B300174692 /* TMXProfilingConnections.xcframework in Frameworks */, - 252982C726AEB6A800174692 /* ThreatMetrixAdapter.xcframework in Frameworks */, - 252982BE26AEB01200174692 /* FunctionalSwift.xcframework in Frameworks */, - 252982C426AEB3B500174692 /* YandexMobileMetrica.xcframework in Frameworks */, - 252982A426AC38B300174692 /* TMXProfiling.xcframework in Frameworks */, - 252982C126AEB01200174692 /* YooMoneyCoreApi.xcframework in Frameworks */, - 252982BF26AEB01200174692 /* MoneyAuth.xcframework in Frameworks */, + 25DFA44327DA24C80031CA59 /* FunctionalSwift.xcframework in Frameworks */, + 25DFA45027DA24CF0031CA59 /* YandexMobileMetricaCrashes.xcframework in Frameworks */, + 25DFA44827DA24CA0031CA59 /* ThreatMetrixAdapter.xcframework in Frameworks */, + 25DFA44627DA24C90031CA59 /* MoneyAuth.xcframework in Frameworks */, + 25DFA45627DA24D20031CA59 /* YooMoneyCoreApi.xcframework in Frameworks */, + 25DFA44E27DA24CE0031CA59 /* YandexMobileMetrica.xcframework in Frameworks */, + 25DFA45227DA24D00031CA59 /* YooKassaPaymentsApi.xcframework in Frameworks */, + 25DFA45427DA24D10031CA59 /* YooKassaWalletApi.xcframework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -872,6 +897,8 @@ isa = PBXGroup; children = ( 25CD87AF26B90641002F4769 /* CHANGELOG.md */, + 257D6BA527E1F18A005F5488 /* README_RU.md */, + 257D6BA627E1F18A005F5488 /* README.md */, 252982AF26AE928C00174692 /* Cartfile */, 559073AD1FF3CE910094AE5D /* Gemfile */, 244F7901F30CDE5EFC8637D7 /* Podfile */, @@ -2628,8 +2655,6 @@ 252982BB26AEB01200174692 /* YooKassaPaymentsApi.xcframework */, 252982B826AEB01200174692 /* YooKassaWalletApi.xcframework */, 252982BC26AEB01200174692 /* YooMoneyCoreApi.xcframework */, - 30D7527E261C6D3C00EF3231 /* TMXProfiling.xcframework */, - 30D7527D261C6D3C00EF3231 /* TMXProfilingConnections.xcframework */, 8BCB318DC03111CB9C1FFD14 /* Pods_YooKassaPaymentsExamplePods.framework */, ); name = Frameworks; @@ -2667,6 +2692,7 @@ 244F7F2F3BB2B1839FEAD67F /* Frameworks */, 244F7F0D1C70A3C37A8190B1 /* Headers */, 244F7B427956461A69AAA7BD /* Resources */, + 25DFA44527DA24C80031CA59 /* Embed Frameworks */, ); buildRules = ( ); diff --git a/YooKassaPayments/Info.plist b/YooKassaPayments/Info.plist index 953eaa38..8c53447a 100644 --- a/YooKassaPayments/Info.plist +++ b/YooKassaPayments/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 6.6.2 + 6.7.0 CFBundleVersion $(CURRENT_PROJECT_VERSION) NSPrincipalClass diff --git a/YooKassaPayments/Private/Modules/BankCardRepeat/Assembly/BankCardRepeatAssembly.swift b/YooKassaPayments/Private/Modules/BankCardRepeat/Assembly/BankCardRepeatAssembly.swift index 68c03d0a..56a84e63 100644 --- a/YooKassaPayments/Private/Modules/BankCardRepeat/Assembly/BankCardRepeatAssembly.swift +++ b/YooKassaPayments/Private/Modules/BankCardRepeat/Assembly/BankCardRepeatAssembly.swift @@ -20,7 +20,7 @@ enum BankCardRepeatAssembly { let initialSavePaymentMethod = makeInitialSavePaymentMethod(inputData.savePaymentMethod) let savePaymentMethodViewModel = SavePaymentMethodViewModelFactory.makeSavePaymentMethodViewModel( inputData.savePaymentMethod, - initialState: initialSavePaymentMethod + initialState: true ) let presenter = BankCardRepeatPresenter( cardService: cardService, @@ -33,8 +33,7 @@ enum BankCardRepeatAssembly { purchaseDescription: inputData.purchaseDescription, termsOfService: termsOfService, savePaymentMethodViewModel: savePaymentMethodViewModel, - initialSavePaymentMethod: initialSavePaymentMethod, - isSafeDeal: inputData.isSafeDeal + initialSavePaymentMethod: initialSavePaymentMethod ) let analyticsService = AnalyticsTrackingAssembly.make(isLoggingEnabled: inputData.isLoggingEnabled) @@ -59,8 +58,7 @@ enum BankCardRepeatAssembly { amountNumberFormatter: amountNumberFormatter, clientApplicationKey: inputData.clientApplicationKey, gatewayId: inputData.gatewayId, - amount: inputData.amount, - customerId: inputData.customerId + amount: inputData.amount ) let router = BankCardRepeatRouter() diff --git a/YooKassaPayments/Private/Modules/BankCardRepeat/Interactor/BankCardRepeatInteractor.swift b/YooKassaPayments/Private/Modules/BankCardRepeat/Interactor/BankCardRepeatInteractor.swift index 138946c9..917da2ce 100644 --- a/YooKassaPayments/Private/Modules/BankCardRepeat/Interactor/BankCardRepeatInteractor.swift +++ b/YooKassaPayments/Private/Modules/BankCardRepeat/Interactor/BankCardRepeatInteractor.swift @@ -17,7 +17,6 @@ final class BankCardRepeatInteractor { private let clientApplicationKey: String private let gatewayId: String? private let amount: Amount - private let customerId: String? // MARK: - Init @@ -29,8 +28,7 @@ final class BankCardRepeatInteractor { amountNumberFormatter: AmountNumberFormatter, clientApplicationKey: String, gatewayId: String?, - amount: Amount, - customerId: String? + amount: Amount ) { self.authService = authService self.analyticsService = analyticsService @@ -41,7 +39,6 @@ final class BankCardRepeatInteractor { self.clientApplicationKey = clientApplicationKey self.gatewayId = gatewayId self.amount = amount - self.customerId = customerId } } @@ -111,7 +108,7 @@ extension BankCardRepeatInteractor: BankCardRepeatInteractorInput { amount: amountNumberFormatter.string(from: amount.value), currency: amount.currency.rawValue, getSavePaymentMethod: false, - customerId: customerId + customerId: nil ) { [weak self] result in guard let output = self?.output else { return } switch result { diff --git a/YooKassaPayments/Private/Modules/BankCardRepeat/Presenter/BankCardRepeatPresenter.swift b/YooKassaPayments/Private/Modules/BankCardRepeat/Presenter/BankCardRepeatPresenter.swift index b27bb2bf..26bc46da 100644 --- a/YooKassaPayments/Private/Modules/BankCardRepeat/Presenter/BankCardRepeatPresenter.swift +++ b/YooKassaPayments/Private/Modules/BankCardRepeat/Presenter/BankCardRepeatPresenter.swift @@ -25,7 +25,6 @@ final class BankCardRepeatPresenter { private let termsOfService: NSAttributedString private let savePaymentMethodViewModel: SavePaymentMethodViewModel? private var initialSavePaymentMethod: Bool - private let isSafeDeal: Bool // MARK: - Init @@ -40,8 +39,7 @@ final class BankCardRepeatPresenter { purchaseDescription: String, termsOfService: NSAttributedString, savePaymentMethodViewModel: SavePaymentMethodViewModel?, - initialSavePaymentMethod: Bool, - isSafeDeal: Bool + initialSavePaymentMethod: Bool ) { self.cardService = cardService self.paymentMethodViewModelFactory = paymentMethodViewModelFactory @@ -56,7 +54,6 @@ final class BankCardRepeatPresenter { self.termsOfService = termsOfService self.savePaymentMethodViewModel = savePaymentMethodViewModel self.initialSavePaymentMethod = initialSavePaymentMethod - self.isSafeDeal = isSafeDeal } // MARK: - Stored Data @@ -215,7 +212,7 @@ extension BankCardRepeatPresenter: BankCardRepeatInteractorOutput { cardMask: formattingCardMask(cardMask), cardLogo: cardLogo, terms: termsOfService, - safeDealText: isSafeDeal ? PaymentMethodResources.Localized.safeDealInfoLink : nil + safeDealText: nil ) DispatchQueue.main.async { [weak self] in diff --git a/YooKassaPayments/Private/Services/Analytics/CommonTracker.swift b/YooKassaPayments/Private/Services/Analytics/CommonTracker.swift index 3e29ea47..1adf0baf 100644 --- a/YooKassaPayments/Private/Services/Analytics/CommonTracker.swift +++ b/YooKassaPayments/Private/Services/Analytics/CommonTracker.swift @@ -1,3 +1,4 @@ +import Foundation import YandexMobileMetrica class CommonTracker: AnalyticsTracking { // MARK: - Properties diff --git a/YooKassaPayments/Private/Services/CardService.swift b/YooKassaPayments/Private/Services/CardService.swift index f3febbf0..f13bb6ad 100644 --- a/YooKassaPayments/Private/Services/CardService.swift +++ b/YooKassaPayments/Private/Services/CardService.swift @@ -92,9 +92,21 @@ extension CardService { guard let month = components.month, month <= 12, month > 0 else { throw ValidationError.invalidMonth } guard let expiryDate = components.date else { throw ValidationError.expiryDateEmpty } - let currentDateComponents: DateComponents = Calendar.current.dateComponents([.year, .month], from: Date()) - guard let currentDate = Calendar(identifier: .gregorian).date(from: currentDateComponents) else { - throw ValidationError.expirationDateIsExpired + /// Temporarily restrict card expiry date to 01.2022 + /// https://jira.yooteam.ru/browse/MOC-2725 + /// +// let currentDateComponents: DateComponents = Calendar.current.dateComponents([.year, .month], from: Date()) +// guard let currentDate = Calendar(identifier: .gregorian).date(from: currentDateComponents) else { +// throw ValidationError.expirationDateIsExpired +// } + + guard let currentDate = DateComponents( + calendar: .current, + timeZone: .current, + year: 2022, + month: 1 + ).date else { + throw ValidationError.expiryDateEmpty } if currentDate > expiryDate { diff --git a/YooKassaPayments/Public/InputData/BankCardRepeatModuleInputData.swift b/YooKassaPayments/Public/InputData/BankCardRepeatModuleInputData.swift index 9c7819e2..eb6cb1c3 100644 --- a/YooKassaPayments/Public/InputData/BankCardRepeatModuleInputData.swift +++ b/YooKassaPayments/Public/InputData/BankCardRepeatModuleInputData.swift @@ -35,13 +35,6 @@ public struct BankCardRepeatModuleInputData { /// The cashier at the division of payment flows within a single account. let gatewayId: String? - /// Unique customer identifier by which you exclusively identify the custormer. - /// Can be represented by phone, email or any other id which uniquely identifies the customer. - let customerId: String? - - /// Is this shop a safe deal shop - let isSafeDeal: Bool - /// Creates instance of `BankCardRepeatModuleInputData`. /// /// - Parameters: @@ -70,9 +63,7 @@ public struct BankCardRepeatModuleInputData { isLoggingEnabled: Bool = false, customizationSettings: CustomizationSettings = CustomizationSettings(), savePaymentMethod: SavePaymentMethod, - gatewayId: String? = nil, - customerId: String?, - isSafeDeal: Bool + gatewayId: String? = nil ) { self.clientApplicationKey = (clientApplicationKey + ":").base64Encoded() self.shopName = shopName @@ -85,7 +76,5 @@ public struct BankCardRepeatModuleInputData { self.customizationSettings = customizationSettings self.savePaymentMethod = savePaymentMethod self.gatewayId = gatewayId - self.customerId = customerId - self.isSafeDeal = isSafeDeal } } diff --git a/YooKassaPayments/Public/Resources/Configurations/Hosts.plist b/YooKassaPayments/Public/Resources/Configurations/Hosts.plist index 6631ffa6..e6ada443 100644 --- a/YooKassaPayments/Public/Resources/Configurations/Hosts.plist +++ b/YooKassaPayments/Public/Resources/Configurations/Hosts.plist @@ -2,5 +2,13 @@ + wallet + //front-main.appb2b1.cloud.yoomoney.ru + payments + //sdk.front-pcidss.appb2b1.cloud.yookassa.ru:9491/ + moneyAuth + //front-main.appb2b1.cloud.yoomoney.ru/ + config + //front-main.appb2b1.cloud.yookassa.ru/ diff --git a/YooKassaPaymentsDemoApp.xcodeproj/project.pbxproj b/YooKassaPaymentsDemoApp.xcodeproj/project.pbxproj index e7cb3b78..d38a68f3 100644 --- a/YooKassaPaymentsDemoApp.xcodeproj/project.pbxproj +++ b/YooKassaPaymentsDemoApp.xcodeproj/project.pbxproj @@ -100,13 +100,8 @@ 309BD4FE265CF55D00D4804D /* UITableView+Identifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = 309BD4FB265CF55D00D4804D /* UITableView+Identifier.swift */; }; 309BD4FF265CF55D00D4804D /* UITableViewCell+Identifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = 309BD4FC265CF55D00D4804D /* UITableViewCell+Identifier.swift */; }; 309BD501265CF5A200D4804D /* UIImage+Tools.swift in Sources */ = {isa = PBXBuildFile; fileRef = 309BD500265CF5A200D4804D /* UIImage+Tools.swift */; }; - 309BD504265CF67500D4804D /* TMXProfilingConnections.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 309BD502265CF67500D4804D /* TMXProfilingConnections.xcframework */; }; - 309BD505265CF67500D4804D /* TMXProfilingConnections.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 309BD502265CF67500D4804D /* TMXProfilingConnections.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 309BD506265CF67500D4804D /* TMXProfiling.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 309BD503265CF67500D4804D /* TMXProfiling.xcframework */; }; - 309BD507265CF67500D4804D /* TMXProfiling.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 309BD503265CF67500D4804D /* TMXProfiling.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 309BD509265CF7EA00D4804D /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 309BD4B1265CEED300D4804D /* Localizable.strings */; }; 309BD50A265CF7ED00D4804D /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 309BD4AE265CEED300D4804D /* InfoPlist.strings */; }; - 309BD50E265CF8F900D4804D /* Settings.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 309BD50D265CF8F900D4804D /* Settings.bundle */; }; 5BE893CD9ED1FE41EFF5E4D0 /* Pods_YooKassaPaymentsDemoApp.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7572A89120D8E94C7AA3C387 /* Pods_YooKassaPaymentsDemoApp.framework */; }; /* End PBXBuildFile section */ @@ -117,8 +112,6 @@ dstPath = ""; dstSubfolderSpec = 10; files = ( - 309BD507265CF67500D4804D /* TMXProfiling.xcframework in Embed Frameworks */, - 309BD505265CF67500D4804D /* TMXProfilingConnections.xcframework in Embed Frameworks */, 25513835279F376A00BDE805 /* SuperLibrary in Embed Frameworks */, ); name = "Embed Frameworks"; @@ -227,8 +220,6 @@ 309BD4FB265CF55D00D4804D /* UITableView+Identifier.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UITableView+Identifier.swift"; sourceTree = ""; }; 309BD4FC265CF55D00D4804D /* UITableViewCell+Identifier.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UITableViewCell+Identifier.swift"; sourceTree = ""; }; 309BD500265CF5A200D4804D /* UIImage+Tools.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UIImage+Tools.swift"; sourceTree = ""; }; - 309BD502265CF67500D4804D /* TMXProfilingConnections.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = TMXProfilingConnections.xcframework; path = Frameworks/TMXProfilingConnections.xcframework; sourceTree = ""; }; - 309BD503265CF67500D4804D /* TMXProfiling.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = TMXProfiling.xcframework; path = Frameworks/TMXProfiling.xcframework; sourceTree = ""; }; 309BD50D265CF8F900D4804D /* Settings.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = Settings.bundle; sourceTree = ""; }; 7572A89120D8E94C7AA3C387 /* Pods_YooKassaPaymentsDemoApp.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_YooKassaPaymentsDemoApp.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 8F8158AE15EC622D52168F1B /* Pods-YooKassaPaymentsDemoApp.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-YooKassaPaymentsDemoApp.debug.xcconfig"; path = "Target Support Files/Pods-YooKassaPaymentsDemoApp/Pods-YooKassaPaymentsDemoApp.debug.xcconfig"; sourceTree = ""; }; @@ -242,12 +233,10 @@ buildActionMask = 2147483647; files = ( 25E11B38278CAB4A00B35ED6 /* AVFoundation.framework in Frameworks */, - 309BD504265CF67500D4804D /* TMXProfilingConnections.xcframework in Frameworks */, 25513834279F376A00BDE805 /* SuperLibrary in Frameworks */, 25E11B36278CAB4300B35ED6 /* Accelerate.framework in Frameworks */, 25E11B3C278CAB8900B35ED6 /* CoreMedia.framework in Frameworks */, 25E11B3A278CAB7E00B35ED6 /* AudioToolbox.framework in Frameworks */, - 309BD506265CF67500D4804D /* TMXProfiling.xcframework in Frameworks */, 25E11B3E278CAB8E00B35ED6 /* MobileCoreServices.framework in Frameworks */, 5BE893CD9ED1FE41EFF5E4D0 /* Pods_YooKassaPaymentsDemoApp.framework in Frameworks */, ); @@ -605,8 +594,6 @@ 25E11B39278CAB7E00B35ED6 /* AudioToolbox.framework */, 25E11B37278CAB4A00B35ED6 /* AVFoundation.framework */, 25E11B35278CAB4300B35ED6 /* Accelerate.framework */, - 309BD503265CF67500D4804D /* TMXProfiling.xcframework */, - 309BD502265CF67500D4804D /* TMXProfilingConnections.xcframework */, 7572A89120D8E94C7AA3C387 /* Pods_YooKassaPaymentsDemoApp.framework */, ); name = Frameworks; @@ -636,6 +623,7 @@ 309BD414265CE9FA00D4804D /* Resources */, D3C0E205AD648DF915E718BE /* [CP] Embed Pods Frameworks */, 309BD508265CF67500D4804D /* Embed Frameworks */, + E60EF5C727D1081800E7EE82 /* Exclude private part from build */, ); buildRules = ( ); @@ -660,6 +648,8 @@ TargetAttributes = { 309BD415265CE9FA00D4804D = { CreatedOnToolsVersion = 12.5; + DevelopmentTeam = 2752592HU5; + ProvisioningStyle = Manual; }; }; }; @@ -690,7 +680,6 @@ 309BD426265CE9FC00D4804D /* LaunchScreen.storyboard in Resources */, 25E11BE2278F519D00B35ED6 /* CardIO Integration as Development Pod.md in Resources */, 309BD509265CF7EA00D4804D /* Localizable.strings in Resources */, - 309BD50E265CF8F900D4804D /* Settings.bundle in Resources */, 309BD423265CE9FC00D4804D /* Assets.xcassets in Resources */, 309BD50A265CF7ED00D4804D /* InfoPlist.strings in Resources */, ); @@ -734,6 +723,24 @@ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-YooKassaPaymentsDemoApp/Pods-YooKassaPaymentsDemoApp-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; + E60EF5C727D1081800E7EE82 /* Exclude private part from build */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + name = "Exclude private part from build"; + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "HOSTS_FILENAME=\"Hosts.plist\"\n\nif [ ${CONFIGURATION} != \"AppStore\" ]; then\n cp -r ${PROJECT_DIR}/YooKassaPaymentsDemoApp/Resources/Settings.bundle ${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app\n cp ${PROJECT_DIR}/YooKassaPayments/Public/Resources/Configurations/${HOSTS_FILENAME} ${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app/${HOSTS_FILENAME}\nfi\n"; + }; F3D25A615B818B4BE7FC6DF7 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -1032,8 +1039,9 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_ENTITLEMENTS = YooKassaPaymentsDemoApp/Resources/YooKassaPaymentsDemoApp.entitlements; + CODE_SIGN_IDENTITY = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - DEVELOPMENT_TEAM = ""; + DEVELOPMENT_TEAM = 2752592HU5; INFOPLIST_FILE = YooKassaPaymentsDemoApp/Resources/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( diff --git a/YooKassaPaymentsDemoApp/Source/UserStories/Root/RootViewController.swift b/YooKassaPaymentsDemoApp/Source/UserStories/Root/RootViewController.swift index 67b3fda6..4b715557 100644 --- a/YooKassaPaymentsDemoApp/Source/UserStories/Root/RootViewController.swift +++ b/YooKassaPaymentsDemoApp/Source/UserStories/Root/RootViewController.swift @@ -3,6 +3,7 @@ import MessageUI import SafariServices import UIKit import WebKit +import YandexMobileMetrica import YooKassaPayments final class RootViewController: UIViewController {