diff --git a/.bundle/config b/.bundle/config deleted file mode 100644 index 0520c0e..0000000 --- a/.bundle/config +++ /dev/null @@ -1,2 +0,0 @@ ---- -BUNDLE_PATH: "Temp/vendor/bundle" diff --git a/Package.resolved b/Package.resolved new file mode 100644 index 0000000..a7d83cb --- /dev/null +++ b/Package.resolved @@ -0,0 +1,68 @@ +{ + "pins" : [ + { + "identity" : "alamofire", + "kind" : "remoteSourceControl", + "location" : "https://github.com/Alamofire/Alamofire.git", + "state" : { + "revision" : "78424be314842833c04bc3bef5b72e85fff99204", + "version" : "5.6.4" + } + }, + { + "identity" : "cwlcatchexception", + "kind" : "remoteSourceControl", + "location" : "https://github.com/mattgallagher/CwlCatchException.git", + "state" : { + "revision" : "35f9e770f54ce62dd8526470f14c6e137cef3eea", + "version" : "2.1.1" + } + }, + { + "identity" : "cwlpreconditiontesting", + "kind" : "remoteSourceControl", + "location" : "https://github.com/mattgallagher/CwlPreconditionTesting.git", + "state" : { + "revision" : "c21f7bab5ca8eee0a9998bbd17ca1d0eb45d4688", + "version" : "2.1.0" + } + }, + { + "identity" : "cwlutils", + "kind" : "remoteSourceControl", + "location" : "https://github.com/mattgallagher/CwlUtils.git", + "state" : { + "revision" : "0bfc4587d01cfc796b6c7e118fc631333dd8ab33", + "version" : "3.0.0" + } + }, + { + "identity" : "moya", + "kind" : "remoteSourceControl", + "location" : "https://github.com/Moya/Moya.git", + "state" : { + "revision" : "c263811c1f3dbf002be9bd83107f7cdc38992b26", + "version" : "15.0.3" + } + }, + { + "identity" : "reactiveswift", + "kind" : "remoteSourceControl", + "location" : "https://github.com/ReactiveCocoa/ReactiveSwift.git", + "state" : { + "revision" : "c43bae3dac73fdd3cb906bd5a1914686ca71ed3c", + "version" : "6.7.0" + } + }, + { + "identity" : "rxswift", + "kind" : "remoteSourceControl", + "location" : "https://github.com/ReactiveX/RxSwift.git", + "state" : { + "revision" : "b4307ba0b6425c0ba4178e138799946c3da594f8", + "version" : "6.5.0" + } + } + ], + "version" : 2 +} diff --git a/Package.swift b/Package.swift new file mode 100644 index 0000000..8fedb9b --- /dev/null +++ b/Package.swift @@ -0,0 +1,92 @@ +// swift-tools-version: 5.6 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "WavesSDK", + platforms: [.macOS(.v10_15), .iOS(.v13)], + products: [ + // Products define the executables and libraries a package produces, and make them visible to other packages. +// .library( +// name: "Base58Encoder", +// targets: ["Base58Encoder"]), +// .library( +// name: "Blake2", +// targets: ["Blake2"]), +// .library( +// name: "Keccak", +// targets: ["Keccak"]), +// .library( +// name: "Curve25519", +// targets: ["Curve25519"]), +// .library( +// name: "WavesSDKCrypto", +// targets: ["WavesSDKCrypto"]), + .library( + name: "WavesSDK", + targets: ["WavesSDK"]), + ], + dependencies: [ + .package(url: "https://github.com/mattgallagher/CwlUtils.git", from: Version(3, 0, 0)), + .package(url: "https://github.com/ReactiveX/RxSwift.git", .upToNextMajor(from: "6.5.0")), + .package(url: "https://github.com/Moya/Moya.git", .upToNextMajor(from: "15.0.0")) + ], + targets: [ + /// + /// Base 58 Encoder library + /// + .target( + name: "Base58Encoder", + dependencies: []), + /// + /// Blake 2 library + /// + .target( + name: "Blake2", + dependencies: []), + /// + /// Keccak library + /// + .target( + name: "Keccak", + dependencies: []), + /// + /// Curve 25519 library + /// + .target( + name: "ed25519", + dependencies: []), + .target( + name: "Curve25519", + dependencies: ["ed25519"]), + + /// + /// WavesSDK Crypto library + /// + .target( + name: "WavesSDKCrypto", + dependencies: ["Keccak", + "Curve25519", + "Blake2", + "Base58Encoder"]), + /// + /// WavesSDK library + /// + .target( + name: "WavesSDK", + dependencies: [ + "WavesSDKCrypto", + "Moya", + "RxSwift", + "CwlUtils", + .product(name: "RxMoya", package: "Moya") + ]), + .testTarget( + name: "WavesSDKCryptoTests", + dependencies: ["WavesSDKCrypto"]), + .testTarget( + name: "WavesSDKTests", + dependencies: ["WavesSDK"]), + ] +) diff --git a/Podfile b/Podfile deleted file mode 100644 index 74d40bb..0000000 --- a/Podfile +++ /dev/null @@ -1,38 +0,0 @@ -platform :ios, '11.0' - -use_frameworks!(true) - - -target 'WavesSDKTests' do - - inherit! :search_paths - pod 'Fakery' - pod 'Nimble' - # pod 'RxTest' - - #TODO: How it fix? - pod 'RxSwift' - pod 'Moya' - pod 'Moya/RxSwift' -end - -# Pods for WavesSDK -target 'StubTest' do - inherit! :search_paths -end - -# Pods for InternalWavesSDKExtensionsK -target 'WavesSDKExtensions' do - inherit! :search_paths - pod 'RxSwift' -end - -# Pods for InternalWavesSDK -target 'WavesSDK' do - - inherit! :search_paths - pod 'RxSwift' - pod 'Moya' - pod 'Moya/RxSwift' -end - diff --git a/Podfile.lock b/Podfile.lock deleted file mode 100644 index 5fb90df..0000000 --- a/Podfile.lock +++ /dev/null @@ -1,42 +0,0 @@ -PODS: - - Alamofire (4.8.2) - - Fakery (4.0.0) - - Moya (12.0.1): - - Moya/Core (= 12.0.1) - - Moya/Core (12.0.1): - - Alamofire (~> 4.1) - - Result (~> 4.0) - - Moya/RxSwift (12.0.1): - - Moya/Core - - RxSwift (~> 4.0) - - Nimble (8.0.2) - - Result (4.1.0) - - RxSwift (4.5.0) - -DEPENDENCIES: - - Fakery - - Moya - - Moya/RxSwift - - Nimble - - RxSwift - -SPEC REPOS: - https://github.com/cocoapods/specs.git: - - Alamofire - - Fakery - - Moya - - Nimble - - Result - - RxSwift - -SPEC CHECKSUMS: - Alamofire: ae5c501addb7afdbb13687d7f2f722c78734c2d3 - Fakery: 476f6d947de432f84703acc830a1e7166330299b - Moya: cf730b3cd9e005401ef37a85143aa141a12fd38f - Nimble: 622629381bda1dd5678162f21f1368cec7cbba60 - Result: bd966fac789cc6c1563440b348ab2598cc24d5c7 - RxSwift: f172070dfd1a93d70a9ab97a5a01166206e1c575 - -PODFILE CHECKSUM: e63fbc46526e9f529679af7668827c4f512f9df4 - -COCOAPODS: 1.7.4 diff --git a/WavesSDKCrypto/Vendors/Base58Encoder/Sources/base58.c b/Sources/Base58Encoder/Base58Encoder.c similarity index 99% rename from WavesSDKCrypto/Vendors/Base58Encoder/Sources/base58.c rename to Sources/Base58Encoder/Base58Encoder.c index 1f0484c..53abfd5 100644 --- a/WavesSDKCrypto/Vendors/Base58Encoder/Sources/base58.c +++ b/Sources/Base58Encoder/Base58Encoder.c @@ -17,7 +17,7 @@ #include #include -#include "base58.h" +#include "Base58Encoder.h" bool (*b58_sha256_impl)(void *, const void *, size_t) = NULL; diff --git a/WavesSDKCrypto/Vendors/Base58Encoder/Sources/base58.h b/Sources/Base58Encoder/include/Base58Encoder.h similarity index 100% rename from WavesSDKCrypto/Vendors/Base58Encoder/Sources/base58.h rename to Sources/Base58Encoder/include/Base58Encoder.h diff --git a/Sources/Base58Encoder/include/module.modulemap b/Sources/Base58Encoder/include/module.modulemap new file mode 100644 index 0000000..8b7c402 --- /dev/null +++ b/Sources/Base58Encoder/include/module.modulemap @@ -0,0 +1,3 @@ +module Base58Encoder { + header "Base58Encoder.h" +} diff --git a/WavesSDKCrypto/Vendors/Blake2/Sources/blake2b-ref.c b/Sources/Blake2/blake2b-ref.c similarity index 100% rename from WavesSDKCrypto/Vendors/Blake2/Sources/blake2b-ref.c rename to Sources/Blake2/blake2b-ref.c diff --git a/WavesSDKCrypto/Vendors/Blake2/Sources/crypto_generichash.c b/Sources/Blake2/crypto_generichash.c similarity index 100% rename from WavesSDKCrypto/Vendors/Blake2/Sources/crypto_generichash.c rename to Sources/Blake2/crypto_generichash.c diff --git a/WavesSDKCrypto/Vendors/Blake2/Sources/generichash_blake2_api.c b/Sources/Blake2/generichash_blake2_api.c similarity index 100% rename from WavesSDKCrypto/Vendors/Blake2/Sources/generichash_blake2_api.c rename to Sources/Blake2/generichash_blake2_api.c diff --git a/WavesSDKCrypto/Vendors/Blake2/Sources/generichash_blake2b.c b/Sources/Blake2/generichash_blake2b.c similarity index 100% rename from WavesSDKCrypto/Vendors/Blake2/Sources/generichash_blake2b.c rename to Sources/Blake2/generichash_blake2b.c diff --git a/WavesSDKCrypto/Vendors/Blake2/Sources/api.h b/Sources/Blake2/include/api.h similarity index 100% rename from WavesSDKCrypto/Vendors/Blake2/Sources/api.h rename to Sources/Blake2/include/api.h diff --git a/WavesSDKCrypto/Vendors/Blake2/Sources/blake2-impl.h b/Sources/Blake2/include/blake2-impl.h similarity index 100% rename from WavesSDKCrypto/Vendors/Blake2/Sources/blake2-impl.h rename to Sources/Blake2/include/blake2-impl.h diff --git a/WavesSDKCrypto/Vendors/Blake2/Sources/blake2.h b/Sources/Blake2/include/blake2.h similarity index 100% rename from WavesSDKCrypto/Vendors/Blake2/Sources/blake2.h rename to Sources/Blake2/include/blake2.h diff --git a/WavesSDKCrypto/Vendors/Blake2/Sources/crypto_generichash.h b/Sources/Blake2/include/crypto_generichash.h similarity index 100% rename from WavesSDKCrypto/Vendors/Blake2/Sources/crypto_generichash.h rename to Sources/Blake2/include/crypto_generichash.h diff --git a/WavesSDKCrypto/Vendors/Blake2/Sources/crypto_generichash_blake2b.h b/Sources/Blake2/include/crypto_generichash_blake2b.h similarity index 100% rename from WavesSDKCrypto/Vendors/Blake2/Sources/crypto_generichash_blake2b.h rename to Sources/Blake2/include/crypto_generichash_blake2b.h diff --git a/WavesSDKCrypto/Vendors/Blake2/Sources/export.h b/Sources/Blake2/include/export.h similarity index 100% rename from WavesSDKCrypto/Vendors/Blake2/Sources/export.h rename to Sources/Blake2/include/export.h diff --git a/Sources/Blake2/include/module.modulemap b/Sources/Blake2/include/module.modulemap new file mode 100644 index 0000000..1e55872 --- /dev/null +++ b/Sources/Blake2/include/module.modulemap @@ -0,0 +1,10 @@ +module Blake2 { + header "api.h" + header "blake2-impl.h" + header "blake2.h" + header "crypto_generichash_blake2b.h" + header "crypto_generichash.h" + header "export.h" + header "randombytes.h" + header "utils.h" +} diff --git a/WavesSDKCrypto/Vendors/Blake2/Sources/randombytes.h b/Sources/Blake2/include/randombytes.h similarity index 100% rename from WavesSDKCrypto/Vendors/Blake2/Sources/randombytes.h rename to Sources/Blake2/include/randombytes.h diff --git a/WavesSDKCrypto/Vendors/Blake2/Sources/utils.h b/Sources/Blake2/include/utils.h similarity index 100% rename from WavesSDKCrypto/Vendors/Blake2/Sources/utils.h rename to Sources/Blake2/include/utils.h diff --git a/WavesSDKCrypto/Vendors/Blake2/Sources/utils.c b/Sources/Blake2/utils.c similarity index 100% rename from WavesSDKCrypto/Vendors/Blake2/Sources/utils.c rename to Sources/Blake2/utils.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/Objc/Curve25519.m b/Sources/Curve25519/Curve25519.m similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/Objc/Curve25519.m rename to Sources/Curve25519/Curve25519.m diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/Objc/Ed25519.m b/Sources/Curve25519/Ed25519.m similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/Objc/Ed25519.m rename to Sources/Curve25519/Ed25519.m diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/Objc/Randomness.m b/Sources/Curve25519/Randomness.m similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/Objc/Randomness.m rename to Sources/Curve25519/Randomness.m diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/Curve25519/curve25519-donna.c b/Sources/Curve25519/curve25519-donna.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/Curve25519/curve25519-donna.c rename to Sources/Curve25519/curve25519-donna.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/Objc/Curve25519.h b/Sources/Curve25519/include/Curve25519.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/Objc/Curve25519.h rename to Sources/Curve25519/include/Curve25519.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/Objc/Ed25519.h b/Sources/Curve25519/include/Ed25519.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/Objc/Ed25519.h rename to Sources/Curve25519/include/Ed25519.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/Objc/Randomness.h b/Sources/Curve25519/include/Randomness.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/Objc/Randomness.h rename to Sources/Curve25519/include/Randomness.h diff --git a/Sources/Curve25519/include/module.modulemap b/Sources/Curve25519/include/module.modulemap new file mode 100644 index 0000000..eee7697 --- /dev/null +++ b/Sources/Curve25519/include/module.modulemap @@ -0,0 +1,5 @@ +module Curve25519 { + header "Ed25519.h" + header "Randomness.h" + header "Curve25519.h" +} diff --git a/WavesSDKCrypto/Vendors/Keccak/Sources/keccak.h b/Sources/Keccak/include/keccak.h similarity index 100% rename from WavesSDKCrypto/Vendors/Keccak/Sources/keccak.h rename to Sources/Keccak/include/keccak.h diff --git a/Sources/Keccak/include/module.modulemap b/Sources/Keccak/include/module.modulemap new file mode 100644 index 0000000..40157e6 --- /dev/null +++ b/Sources/Keccak/include/module.modulemap @@ -0,0 +1,4 @@ + +module Keccak { + header "keccak.h" +} diff --git a/WavesSDKCrypto/Vendors/Keccak/Sources/keccak.c b/Sources/Keccak/keccak.c similarity index 100% rename from WavesSDKCrypto/Vendors/Keccak/Sources/keccak.c rename to Sources/Keccak/keccak.c diff --git a/WavesSDK/Sources/Assisstants/CachePolicyPlugin.swift b/Sources/WavesSDK/Assisstants/CachePolicyPlugin.swift similarity index 100% rename from WavesSDK/Sources/Assisstants/CachePolicyPlugin.swift rename to Sources/WavesSDK/Assisstants/CachePolicyPlugin.swift diff --git a/WavesSDK/Sources/Assisstants/ContentType.swift b/Sources/WavesSDK/Assisstants/ContentType.swift similarity index 100% rename from WavesSDK/Sources/Assisstants/ContentType.swift rename to Sources/WavesSDK/Assisstants/ContentType.swift diff --git a/WavesSDK/Sources/Assisstants/DictionaryEncoder.swift b/Sources/WavesSDK/Assisstants/DictionaryEncoder.swift similarity index 100% rename from WavesSDK/Sources/Assisstants/DictionaryEncoder.swift rename to Sources/WavesSDK/Assisstants/DictionaryEncoder.swift diff --git a/WavesSDK/Sources/Assisstants/DispatchQueuePool.swift b/Sources/WavesSDK/Assisstants/DispatchQueuePool.swift similarity index 100% rename from WavesSDK/Sources/Assisstants/DispatchQueuePool.swift rename to Sources/WavesSDK/Assisstants/DispatchQueuePool.swift diff --git a/WavesSDK/Sources/Assisstants/Encodable+Base64.swift b/Sources/WavesSDK/Assisstants/Encodable+Base64.swift similarity index 100% rename from WavesSDK/Sources/Assisstants/Encodable+Base64.swift rename to Sources/WavesSDK/Assisstants/Encodable+Base64.swift diff --git a/WavesSDK/Sources/Assisstants/NetworkError.swift b/Sources/WavesSDK/Assisstants/NetworkError.swift similarity index 95% rename from WavesSDK/Sources/Assisstants/NetworkError.swift rename to Sources/WavesSDK/Assisstants/NetworkError.swift index 376a266..ed349d5 100644 --- a/WavesSDK/Sources/Assisstants/NetworkError.swift +++ b/Sources/WavesSDK/Assisstants/NetworkError.swift @@ -102,26 +102,37 @@ public extension NetworkError { case let .createURLRequestFailed(error: error): return NetworkError.error(by: error) case let .downloadedFileMoveFailed(error: error, source: source, destination: destination): + (_, _) = (source, destination) return NetworkError.error(by: error) case .explicitlyCancelled: return NetworkError.canceled case let .invalidURL(url: url): + _ = url return NetworkError.message(code: 9001) case let .multipartEncodingFailed(reason: reason): + _ = reason return NetworkError.message(code: 9002) case let .parameterEncodingFailed(reason: reason): + _ = reason return NetworkError.message(code: 9003) case let .parameterEncoderFailed(reason: reason): + _ = reason return NetworkError.message(code: 9004) case let .requestAdaptationFailed(error: error): + _ = error return NetworkError.message(code: 9005) case let .requestRetryFailed(retryError: retryError, originalError: originalError): + _ = retryError + _ = originalError return NetworkError.message(code: 9006) case let .responseValidationFailed(reason: reason): + _ = reason return NetworkError.message(code: 9007) case let .responseSerializationFailed(reason: reason): + _ = reason return NetworkError.message(code: 9008) case let .serverTrustEvaluationFailed(reason: reason): + _ = reason return NetworkError.message(code: 9009) case .sessionDeinitialized: return NetworkError.internetNotWorking @@ -134,9 +145,8 @@ public extension NetworkError { case let .sessionTaskFailed(error: error): return NetworkError.error(by: error) case let .urlRequestValidationFailed(reason: reason): + _ = reason return NetworkError.message(code: 9010) - @unknown default: - return NetworkError.message(code: 9011) } case let urlError as NSError where urlError.domain == NSURLErrorDomain: diff --git a/WavesSDK/Sources/Assisstants/Protocols/DataServicesProtocol.swift b/Sources/WavesSDK/Assisstants/Protocols/DataServicesProtocol.swift similarity index 88% rename from WavesSDK/Sources/Assisstants/Protocols/DataServicesProtocol.swift rename to Sources/WavesSDK/Assisstants/Protocols/DataServicesProtocol.swift index 8a1583c..15eaa17 100644 --- a/WavesSDK/Sources/Assisstants/Protocols/DataServicesProtocol.swift +++ b/Sources/WavesSDK/Assisstants/Protocols/DataServicesProtocol.swift @@ -10,6 +10,7 @@ import Foundation public protocol DataServicesProtocol { var aliasDataService: AliasDataServiceProtocol { get } + //var matcherDataService: MatcherDataServiceProtocol { get } var assetsDataService: AssetsDataServiceProtocol { get } var candlesDataService: CandlesDataServiceProtocol { get } var pairsPriceDataService: PairsPriceDataServiceProtocol { get } diff --git a/WavesSDK/Sources/Assisstants/Protocols/MatcherServicesProtocol.swift b/Sources/WavesSDK/Assisstants/Protocols/MatcherServicesProtocol.swift similarity index 100% rename from WavesSDK/Sources/Assisstants/Protocols/MatcherServicesProtocol.swift rename to Sources/WavesSDK/Assisstants/Protocols/MatcherServicesProtocol.swift diff --git a/WavesSDK/Sources/Assisstants/Protocols/NodeServicesProtocol.swift b/Sources/WavesSDK/Assisstants/Protocols/NodeServicesProtocol.swift similarity index 100% rename from WavesSDK/Sources/Assisstants/Protocols/NodeServicesProtocol.swift rename to Sources/WavesSDK/Assisstants/Protocols/NodeServicesProtocol.swift diff --git a/WavesSDK/Sources/Assisstants/Protocols/ServicesProtocol.swift b/Sources/WavesSDK/Assisstants/Protocols/ServicesProtocol.swift similarity index 100% rename from WavesSDK/Sources/Assisstants/Protocols/ServicesProtocol.swift rename to Sources/WavesSDK/Assisstants/Protocols/ServicesProtocol.swift diff --git a/WavesSDK/Sources/Assisstants/Protocols/WavesServicesProtocol.swift b/Sources/WavesSDK/Assisstants/Protocols/WavesServicesProtocol.swift similarity index 100% rename from WavesSDK/Sources/Assisstants/Protocols/WavesServicesProtocol.swift rename to Sources/WavesSDK/Assisstants/Protocols/WavesServicesProtocol.swift diff --git a/WavesSDK/Sources/Assisstants/String+Waves.swift b/Sources/WavesSDK/Assisstants/String+Waves.swift similarity index 95% rename from WavesSDK/Sources/Assisstants/String+Waves.swift rename to Sources/WavesSDK/Assisstants/String+Waves.swift index d23df89..fa17346 100644 --- a/WavesSDK/Sources/Assisstants/String+Waves.swift +++ b/Sources/WavesSDK/Assisstants/String+Waves.swift @@ -6,7 +6,7 @@ // import Foundation -import WavesSDKExtensions + public extension String { diff --git a/WavesSDK/Sources/Assisstants/Type/DataServices.swift b/Sources/WavesSDK/Assisstants/Type/DataServices.swift similarity index 100% rename from WavesSDK/Sources/Assisstants/Type/DataServices.swift rename to Sources/WavesSDK/Assisstants/Type/DataServices.swift diff --git a/WavesSDK/Sources/Assisstants/Type/InternalWavesService.swift b/Sources/WavesSDK/Assisstants/Type/InternalWavesService.swift similarity index 100% rename from WavesSDK/Sources/Assisstants/Type/InternalWavesService.swift rename to Sources/WavesSDK/Assisstants/Type/InternalWavesService.swift diff --git a/WavesSDK/Sources/Assisstants/Type/MatcherServices.swift b/Sources/WavesSDK/Assisstants/Type/MatcherServices.swift similarity index 100% rename from WavesSDK/Sources/Assisstants/Type/MatcherServices.swift rename to Sources/WavesSDK/Assisstants/Type/MatcherServices.swift diff --git a/WavesSDK/Sources/Assisstants/Type/NodeServices.swift b/Sources/WavesSDK/Assisstants/Type/NodeServices.swift similarity index 100% rename from WavesSDK/Sources/Assisstants/Type/NodeServices.swift rename to Sources/WavesSDK/Assisstants/Type/NodeServices.swift diff --git a/WavesSDK/Sources/Assisstants/Type/WavesServices.swift b/Sources/WavesSDK/Assisstants/Type/WavesServices.swift similarity index 100% rename from WavesSDK/Sources/Assisstants/Type/WavesServices.swift rename to Sources/WavesSDK/Assisstants/Type/WavesServices.swift diff --git a/WavesSDK/Sources/Assisstants/WavesEnvironment.swift b/Sources/WavesSDK/Assisstants/WavesEnvironment.swift similarity index 93% rename from WavesSDK/Sources/Assisstants/WavesEnvironment.swift rename to Sources/WavesSDK/Assisstants/WavesEnvironment.swift index d1306a8..7258edf 100644 --- a/WavesSDK/Sources/Assisstants/WavesEnvironment.swift +++ b/Sources/WavesSDK/Assisstants/WavesEnvironment.swift @@ -11,12 +11,12 @@ private struct Constants { static let dataUrlMainnet: URL = URL(string: "https://api.wavesplatform.com")! static let nodeUrlMainnet: URL = URL(string: "https://nodes.wavesnodes.com")! - static let matcherUrlMainnet: URL = URL(string: "https://matcher.wavesplatform.com")! + static let matcherUrlMainnet: URL = URL(string: "https://matcher.waves.exchange")! static let schemeMainnet: UInt8 = "W".utf8.first ?? 0 - static let dataUrlTestnet: URL = URL(string: "https://api.testnet.wavesplatform.com")! + static let dataUrlTestnet: URL = URL(string: "https://api-testnet.wavesplatform.com")! static let nodeUrlTestnet: URL = URL(string: "https://nodes-testnet.wavesnodes.com")! - static let matcherUrlTestnet: URL = URL(string: "https://matcher-testnet.wavesnodes.com")! + static let matcherUrlTestnet: URL = URL(string: "https://matcher-testnet.waves.exchange")! static let schemeTestnet: UInt8 = "T".utf8.first ?? 0 } @@ -60,7 +60,7 @@ public struct WavesEnvironment { public var matcherUrl: URL public var dataUrl: URL - public init(server: Server, timestampServerDiff: Int64) { + public init(server: Server = .testNet, timestampServerDiff: Int64 = 0) { self.server = server self.timestampServerDiff = timestampServerDiff diff --git a/WavesSDK/Sources/Assisstants/WavesKeeper+Decodable.swift b/Sources/WavesSDK/Assisstants/WavesKeeper+Decodable.swift similarity index 100% rename from WavesSDK/Sources/Assisstants/WavesKeeper+Decodable.swift rename to Sources/WavesSDK/Assisstants/WavesKeeper+Decodable.swift diff --git a/WavesSDK/Sources/Assisstants/WavesKeeper.swift b/Sources/WavesSDK/Assisstants/WavesKeeper.swift similarity index 99% rename from WavesSDK/Sources/Assisstants/WavesKeeper.swift rename to Sources/WavesSDK/Assisstants/WavesKeeper.swift index b05e802..a41b511 100644 --- a/WavesSDK/Sources/Assisstants/WavesKeeper.swift +++ b/Sources/WavesSDK/Assisstants/WavesKeeper.swift @@ -95,7 +95,9 @@ private extension WavesKeeper { response: replaySubject) self.operations[request.id] = operation - + + print("πŸ”Ή Open URL:\(url)") + /* UIApplication.shared.open(url, options: .init(), completionHandler: { [weak self] result in if result == false { @@ -106,6 +108,7 @@ private extension WavesKeeper { self?.removeOperation(request.id) } }) + */ return replaySubject.asObserver() } diff --git a/WavesSDK/Sources/Services/Data/DataServiceTypes.swift b/Sources/WavesSDK/Services/Data/DataServiceTypes.swift similarity index 100% rename from WavesSDK/Sources/Services/Data/DataServiceTypes.swift rename to Sources/WavesSDK/Services/Data/DataServiceTypes.swift diff --git a/WavesSDK/Sources/Services/Data/Models/AliasData.swift b/Sources/WavesSDK/Services/Data/Models/AliasData.swift similarity index 100% rename from WavesSDK/Sources/Services/Data/Models/AliasData.swift rename to Sources/WavesSDK/Services/Data/Models/AliasData.swift diff --git a/WavesSDK/Sources/Services/Data/Models/AssetData.swift b/Sources/WavesSDK/Services/Data/Models/AssetData.swift similarity index 78% rename from WavesSDK/Sources/Services/Data/Models/AssetData.swift rename to Sources/WavesSDK/Services/Data/Models/AssetData.swift index 94a711c..638c084 100644 --- a/WavesSDK/Sources/Services/Data/Models/AssetData.swift +++ b/Sources/WavesSDK/Services/Data/Models/AssetData.swift @@ -9,7 +9,7 @@ import Foundation public extension DataService.DTO { - struct Asset: Decodable { + struct Asset: Decodable, Identifiable { public let ticker: String? public let id: String public let name: String @@ -23,4 +23,11 @@ public extension DataService.DTO { public let hasScript: Bool public let minSponsoredFee: Int64? } + +} + +extension DataService.DTO.Asset: Hashable { + public func hash(into hasher: inout Hasher) { + hasher.combine(id) + } } diff --git a/WavesSDK/Sources/Services/Data/Models/CandleData.swift b/Sources/WavesSDK/Services/Data/Models/CandleData.swift similarity index 100% rename from WavesSDK/Sources/Services/Data/Models/CandleData.swift rename to Sources/WavesSDK/Services/Data/Models/CandleData.swift diff --git a/WavesSDK/Sources/Services/Data/Models/MassTransferTransaction.swift b/Sources/WavesSDK/Services/Data/Models/MassTransferTransaction.swift similarity index 91% rename from WavesSDK/Sources/Services/Data/Models/MassTransferTransaction.swift rename to Sources/WavesSDK/Services/Data/Models/MassTransferTransaction.swift index 2936e08..0368d98 100644 --- a/WavesSDK/Sources/Services/Data/Models/MassTransferTransaction.swift +++ b/Sources/WavesSDK/Services/Data/Models/MassTransferTransaction.swift @@ -8,8 +8,8 @@ import Foundation -// Бкопированаая DTO ΠΈΠ· extension NodeService.DTO { -// Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ Π² fee (int64 ΠΈ double) +// Copied DTO from extension NodeService.DTO { +// difference between them in fee (int64 and double) extension DataService.DTO { /** @@ -26,7 +26,7 @@ extension DataService.DTO { Fee depends of mass transactions count 0.001 + 0.0005 Γ— N, N is the number of transfers inside of a transaction */ - public struct MassTransferTransaction: Codable { + public struct MassTransferTransaction: Codable, Identifiable { /** * The item of the Mass-transfer transaction diff --git a/WavesSDK/Sources/Services/Data/Models/PairPriceData.swift b/Sources/WavesSDK/Services/Data/Models/PairPriceData.swift similarity index 100% rename from WavesSDK/Sources/Services/Data/Models/PairPriceData.swift rename to Sources/WavesSDK/Services/Data/Models/PairPriceData.swift diff --git a/WavesSDK/Sources/Services/Data/Models/PairsRateData.swift b/Sources/WavesSDK/Services/Data/Models/PairsRateData.swift similarity index 100% rename from WavesSDK/Sources/Services/Data/Models/PairsRateData.swift rename to Sources/WavesSDK/Services/Data/Models/PairsRateData.swift diff --git a/WavesSDK/Sources/Services/Data/Models/ResponseData.swift b/Sources/WavesSDK/Services/Data/Models/ResponseData.swift similarity index 100% rename from WavesSDK/Sources/Services/Data/Models/ResponseData.swift rename to Sources/WavesSDK/Services/Data/Models/ResponseData.swift diff --git a/WavesSDK/Sources/Services/Data/Models/TransactionData.swift b/Sources/WavesSDK/Services/Data/Models/TransactionData.swift similarity index 100% rename from WavesSDK/Sources/Services/Data/Models/TransactionData.swift rename to Sources/WavesSDK/Services/Data/Models/TransactionData.swift diff --git a/WavesSDK/Sources/Services/Data/Queries/CandleFiltersDataQuery.swift b/Sources/WavesSDK/Services/Data/Queries/CandleFiltersDataQuery.swift similarity index 100% rename from WavesSDK/Sources/Services/Data/Queries/CandleFiltersDataQuery.swift rename to Sources/WavesSDK/Services/Data/Queries/CandleFiltersDataQuery.swift diff --git a/Sources/WavesSDK/Services/Data/Queries/ExchangeFiltersDataQuery.swift b/Sources/WavesSDK/Services/Data/Queries/ExchangeFiltersDataQuery.swift new file mode 100644 index 0000000..5780c8b --- /dev/null +++ b/Sources/WavesSDK/Services/Data/Queries/ExchangeFiltersDataQuery.swift @@ -0,0 +1,47 @@ +// +// ExchangeFilters.swift +// WavesWallet-iOS +// +// Created by mefilt on 09.07.2018. +// Copyright Β© 2018 Waves Platform. All rights reserved. +// + +import Foundation + +public extension DataService.Query { + struct ExchangeFilters: Codable { + // Address of a matcher which sent the transaction + public let matcher: String? + // Address of a trader-participant in a transaction β€” an ORDER sender + public let sender: String? + // Id of order related to the transaction + public let orderId: String? + // Time range filter, start. Defaults to first transaction's time_stamp in db. + public let timeStart: String? + // Time range filter, end. Defaults to now. + public let timeEnd: String? + // Asset ID of the amount asset. + public let amountAsset: String? + // Asset ID of the price asset. + public let priceAsset: String? + // Cursor in base64 encoding. Holds information about timestamp, id, sort. + public let after: String? + // Sort order. Gonna be rewritten by cursor's sort if present. + public var sort: String = "desc" + // How many transactions to await in response. + public let limit: Int + + public init(matcher: String?, sender: String?, orderId:String?,timeStart: String?, timeEnd: String?, amountAsset: String?, priceAsset: String?, after: String?, sort: String = "desc", limit: Int) { + self.matcher = matcher + self.sender = sender + self.orderId = orderId + self.timeStart = timeStart + self.timeEnd = timeEnd + self.amountAsset = amountAsset + self.priceAsset = priceAsset + self.after = after + self.sort = sort + self.limit = limit + } + } +} diff --git a/WavesSDK/Sources/Services/Data/Queries/MassTransferDataQuery.swift b/Sources/WavesSDK/Services/Data/Queries/MassTransferDataQuery.swift similarity index 70% rename from WavesSDK/Sources/Services/Data/Queries/MassTransferDataQuery.swift rename to Sources/WavesSDK/Services/Data/Queries/MassTransferDataQuery.swift index 9935d78..28e0277 100644 --- a/WavesSDK/Sources/Services/Data/Queries/MassTransferDataQuery.swift +++ b/Sources/WavesSDK/Services/Data/Queries/MassTransferDataQuery.swift @@ -10,12 +10,12 @@ import Foundation extension DataService.Query { - /// Бпособы сортировок + /// Sorting methods public enum SortOrder: String, Encodable, Hashable { - /// ΠΏΠΎ Π²ΠΎΠ·Ρ€ΠΎΡΡ‚Π°Π½ΠΈΡŽ + /// ascending case asc - /// ΠΏΠΎ ΡƒΠ±Ρ‹Π²Π°Π½ΠΈΡŽ + /// descending case desc } @@ -31,24 +31,24 @@ extension DataService.Query { public let timeEnd: String? /// - public let recipient: String + public let recipient: String? - /// Π€ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ ΠΏΠΎ asset id + /// Filtering transactions by asset id public let assetId: String? - /// ΠšΡƒΡ€ΡΠΎΡ€ послСднСй записи Π² спискС (base64 строчка которая Π΄Π΅Ρ€ΠΆΠΈΡ‚ Π² сСбС ΠΈΠ½Ρ„Ρƒ ΠΏΠΎ оффсСту, таймстампа ΠΈ Ρ‚Π΄) + /// Cursor of the last entry in the list (base64 line that contains info on offset, timestamp, etc.) public let after: String? - /// ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ сортировки + /// sort sign public let sort: SortOrder - /// ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ ΠΏΡ€Π΅Π΄Π΅Π»Π° Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π·Π° ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· + /// download limit at one time public let limit: UInt? public init(senders: [String]?, timeStart: String?, timeEnd: String?, - recipient: String, + recipient: String?, assetId: String?, after: String?, sort: SortOrder = .desc, diff --git a/WavesSDK/Sources/Services/Data/Services/AliasDataService.swift b/Sources/WavesSDK/Services/Data/Services/AliasDataService.swift similarity index 93% rename from WavesSDK/Sources/Services/Data/Services/AliasDataService.swift rename to Sources/WavesSDK/Services/Data/Services/AliasDataService.swift index 0594d3f..bfa6e04 100644 --- a/WavesSDK/Sources/Services/Data/Services/AliasDataService.swift +++ b/Sources/WavesSDK/Services/Data/Services/AliasDataService.swift @@ -26,7 +26,7 @@ final class AliasDataService: InternalWavesService, AliasDataServiceProtocol { .request(DataService.Target.Alias(dataUrl: enviroment.dataUrl, kind: .alias(name: name))) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map(DataService.Response.self) @@ -42,7 +42,7 @@ final class AliasDataService: InternalWavesService, AliasDataServiceProtocol { .request(DataService.Target.Alias(dataUrl: enviroment.dataUrl, kind: .list(address: address))) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map(DataService.Response<[DataService.Response]>.self) diff --git a/WavesSDK/Sources/Services/Data/Services/AssetsDataService.swift b/Sources/WavesSDK/Services/Data/Services/AssetsDataService.swift similarity index 94% rename from WavesSDK/Sources/Services/Data/Services/AssetsDataService.swift rename to Sources/WavesSDK/Services/Data/Services/AssetsDataService.swift index 1dae55f..69bfb6a 100644 --- a/WavesSDK/Sources/Services/Data/Services/AssetsDataService.swift +++ b/Sources/WavesSDK/Services/Data/Services/AssetsDataService.swift @@ -26,7 +26,7 @@ final class AssetsDataService: InternalWavesService, AssetsDataServiceProtocol { .request(.init(kind: .getAssets(ids: ids), dataUrl: enviroment.dataUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map(DataService.Response<[DataService.Response]>.self, @@ -45,7 +45,7 @@ final class AssetsDataService: InternalWavesService, AssetsDataServiceProtocol { .request(.init(kind: .getAsset(id: id), dataUrl: enviroment.dataUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map(DataService.Response.self, @@ -64,7 +64,7 @@ final class AssetsDataService: InternalWavesService, AssetsDataServiceProtocol { .request(.init(kind: .search(text: search, limit: limit), dataUrl: enviroment.dataUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map(DataService.Response<[DataService.Response]>.self, diff --git a/WavesSDK/Sources/Services/Data/Services/CandlesDataService.swift b/Sources/WavesSDK/Services/Data/Services/CandlesDataService.swift similarity index 96% rename from WavesSDK/Sources/Services/Data/Services/CandlesDataService.swift rename to Sources/WavesSDK/Services/Data/Services/CandlesDataService.swift index c9ee6bc..f512ff0 100644 --- a/WavesSDK/Sources/Services/Data/Services/CandlesDataService.swift +++ b/Sources/WavesSDK/Services/Data/Services/CandlesDataService.swift @@ -26,7 +26,7 @@ final class CandlesDataService: InternalWavesService, CandlesDataServiceProtocol .request(.init(query: query, dataUrl: enviroment.dataUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map(DataService.Response<[DataService.Response]>.self, diff --git a/WavesSDK/Sources/Services/Data/Services/PairsPriceDataService.swift b/Sources/WavesSDK/Services/Data/Services/PairsPriceDataService.swift similarity index 94% rename from WavesSDK/Sources/Services/Data/Services/PairsPriceDataService.swift rename to Sources/WavesSDK/Services/Data/Services/PairsPriceDataService.swift index 06e74b8..969bc1a 100644 --- a/WavesSDK/Sources/Services/Data/Services/PairsPriceDataService.swift +++ b/Sources/WavesSDK/Services/Data/Services/PairsPriceDataService.swift @@ -46,7 +46,7 @@ final class PairsPriceDataService: InternalWavesService, PairsPriceDataServicePr .request(.init(query: query, dataUrl: enviroment.dataUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map(DataService.Response<[DataService.OptionalResponse]>.self) @@ -60,7 +60,7 @@ final class PairsPriceDataService: InternalWavesService, PairsPriceDataServicePr .rx .request(DataService.Target.PairsRate(query: query, dataUrl: enviroment.dataUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map(DataService.Response<[Rate]>.self) @@ -78,7 +78,7 @@ final class PairsPriceDataService: InternalWavesService, PairsPriceDataServicePr .request(DataService.Target.PairsPriceSearch(query: query, dataUrl: enviroment.dataUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map(DataService.Response<[DataService.DTO.PairPriceSearch]>.self) diff --git a/WavesSDK/Sources/Services/Data/Services/Protocols/AliasDataServiceProtocol.swift b/Sources/WavesSDK/Services/Data/Services/Protocols/AliasDataServiceProtocol.swift similarity index 100% rename from WavesSDK/Sources/Services/Data/Services/Protocols/AliasDataServiceProtocol.swift rename to Sources/WavesSDK/Services/Data/Services/Protocols/AliasDataServiceProtocol.swift diff --git a/WavesSDK/Sources/Services/Data/Services/Protocols/AssetsDataServiceProtocol.swift b/Sources/WavesSDK/Services/Data/Services/Protocols/AssetsDataServiceProtocol.swift similarity index 100% rename from WavesSDK/Sources/Services/Data/Services/Protocols/AssetsDataServiceProtocol.swift rename to Sources/WavesSDK/Services/Data/Services/Protocols/AssetsDataServiceProtocol.swift diff --git a/WavesSDK/Sources/Services/Data/Services/Protocols/CandlesDataServiceProtocol.swift b/Sources/WavesSDK/Services/Data/Services/Protocols/CandlesDataServiceProtocol.swift similarity index 100% rename from WavesSDK/Sources/Services/Data/Services/Protocols/CandlesDataServiceProtocol.swift rename to Sources/WavesSDK/Services/Data/Services/Protocols/CandlesDataServiceProtocol.swift diff --git a/WavesSDK/Sources/Services/Data/Services/Protocols/PairsPriceDataServiceProtocol.swift b/Sources/WavesSDK/Services/Data/Services/Protocols/PairsPriceDataServiceProtocol.swift similarity index 100% rename from WavesSDK/Sources/Services/Data/Services/Protocols/PairsPriceDataServiceProtocol.swift rename to Sources/WavesSDK/Services/Data/Services/Protocols/PairsPriceDataServiceProtocol.swift diff --git a/Sources/WavesSDK/Services/Data/Services/Protocols/TransactionsDataServiceProtocol.swift b/Sources/WavesSDK/Services/Data/Services/Protocols/TransactionsDataServiceProtocol.swift new file mode 100644 index 0000000..8fb642f --- /dev/null +++ b/Sources/WavesSDK/Services/Data/Services/Protocols/TransactionsDataServiceProtocol.swift @@ -0,0 +1,27 @@ +// +// TransactionsDataServiceProtocol.swift +// Alamofire +// +// Created by rprokofev on 22/05/2019. +// + +import Foundation +import RxSwift + +public protocol TransactionsDataServiceProtocol { + + /** + Get a list of exchange transactions by applying filters + */ + func transactionsExchange(txId: String) -> Observable + + func transactionsExchange(query: DataService.Query.ExchangeFilters) -> Observable<[DataService.DTO.ExchangeTransaction]> + + func getMassTransfer(txId: String) + -> Observable + + func getMassTransferTransactions(query: DataService.Query.MassTransferDataQuery) + -> Observable> + + // TODO: All, Genesis, Payment, Issue, Transfer, ReIssue, Burn, Lease, LeaseCancel, Alias, Data, Sponsorship, SetScript, SetAssetScript, InvokeScript +} diff --git a/Sources/WavesSDK/Services/Data/Services/TransactionsDataService.swift b/Sources/WavesSDK/Services/Data/Services/TransactionsDataService.swift new file mode 100644 index 0000000..868a18a --- /dev/null +++ b/Sources/WavesSDK/Services/Data/Services/TransactionsDataService.swift @@ -0,0 +1,125 @@ +// +// TransactionsDataService.swift +// Alamofire +// +// Created by rprokofev on 06/05/2019. +// + +import Foundation +import RxSwift +import Moya + +final class TransactionsDataService: InternalWavesService, TransactionsDataServiceProtocol { + + + private let transactionsProvider: MoyaProvider + + init(transactionsProvider: MoyaProvider, enviroment: WavesEnvironment) { + self.transactionsProvider = transactionsProvider + super.init(enviroment: enviroment) + } + + public func transactionsExchange(query: DataService.Query.ExchangeFilters) + -> Observable<[DataService.DTO.ExchangeTransaction]> { + + transactionsProvider.rx + .request(.init(kind: .getExchangeWithFilters(query), + dataUrl: enviroment.dataUrl)) + .filterSuccessfulStatusAndRedirectCodes() + .catch { error -> Single in + Single.error(NetworkError.error(by: error)) + } + .map(DataService.Response<[DataService.Response]>.self, + atKeyPath: nil, + using: JSONDecoder.isoDecoderBySyncingTimestamp(enviroment.timestampServerDiff), + failsOnEmptyData: false) + .map { $0.data.map { $0.data } } + .asObservable() + } + + public func transactionsExchange(txId: String) + -> Observable { + + transactionsProvider.rx + .request(.init(kind: .getExchange(id: txId), + dataUrl: enviroment.dataUrl)) + .filterSuccessfulStatusAndRedirectCodes() + .catch { error -> Single in + Single.error(NetworkError.error(by: error)) + } + .map(DataService.Response.self, + atKeyPath: nil, + using: JSONDecoder.isoDecoderBySyncingTimestamp(enviroment.timestampServerDiff), + failsOnEmptyData: false) + .map { + $0.data + } + .asObservable() + } + + func getMassTransfer(txId: String) -> Observable { + let target = DataService.Target.Transactions(kind: .getMassTransfer(id: txId), dataUrl: enviroment.dataUrl) + + return transactionsProvider + .rx + .request(target) + .catch { error -> Single in + Single.error(NetworkError.error(by: error)) + } + .map(MassTransferResponseAdapter.self, + atKeyPath: nil, + using: JSONDecoder.isoDecoderBySyncingTimestamp(enviroment.timestampServerDiff), + failsOnEmptyData: false) + .map { + $0.data + } + .catch { error -> Single in + Single.error(NetworkError.error(by: error)) + } + .asObservable() + } + + public func getMassTransferTransactions(query: DataService.Query.MassTransferDataQuery) + -> Observable> { + + let target = DataService.Target.Transactions(kind: .getMassTransferTransactions(query), dataUrl: enviroment.dataUrl) + + return transactionsProvider + .rx + .request(target) + .catch { error -> Single in + Single.error(NetworkError.error(by: error)) + } + .map(DataService.Response<[MassTransferResponseAdapter]>.self, + atKeyPath: nil, + using: JSONDecoder.isoDecoderBySyncingTimestamp(enviroment.timestampServerDiff), + failsOnEmptyData: false) + .map { adapteeMassTransferResponse -> DataService.Response<[DataService.DTO.MassTransferTransaction]> in + // adaptable response is convertible to what is convenient for us + let data = adapteeMassTransferResponse.data.map { $0.data } + return DataService.Response<[DataService.DTO.MassTransferTransaction]>(type: adapteeMassTransferResponse.type, + data: data, + isLastPage: adapteeMassTransferResponse.isLastPage, + lastCursor: adapteeMassTransferResponse.lastCursor) + } + .catch { error -> Single> in + Single>.error(NetworkError.error(by: error)) + } + .asObservable() + } +} + +extension TransactionsDataService { + /// This structure helps us to pick up the answer that we need and not clog the external Namespace with unnecessary wrappers due to the imperfection of the back-end system + + fileprivate struct MassTransferResponseAdapter: Decodable { + + let type: String + let data: DataService.DTO.MassTransferTransaction + + enum CodingKeys: String, CodingKey { + case type = "__type" + case data + } + } +} diff --git a/WavesSDK/Sources/Services/Data/Targets/AliasDataTarget.swift b/Sources/WavesSDK/Services/Data/Targets/AliasDataTarget.swift similarity index 100% rename from WavesSDK/Sources/Services/Data/Targets/AliasDataTarget.swift rename to Sources/WavesSDK/Services/Data/Targets/AliasDataTarget.swift diff --git a/WavesSDK/Sources/Services/Data/Targets/AssetsDataTarget.swift b/Sources/WavesSDK/Services/Data/Targets/AssetsDataTarget.swift similarity index 98% rename from WavesSDK/Sources/Services/Data/Targets/AssetsDataTarget.swift rename to Sources/WavesSDK/Services/Data/Targets/AssetsDataTarget.swift index 9a6ea16..236a320 100644 --- a/WavesSDK/Sources/Services/Data/Targets/AssetsDataTarget.swift +++ b/Sources/WavesSDK/Services/Data/Targets/AssetsDataTarget.swift @@ -8,7 +8,7 @@ import Foundation import Moya -import WavesSDKExtensions + extension DataService.Target { diff --git a/WavesSDK/Sources/Services/Data/Targets/CandlesDataTarget.swift b/Sources/WavesSDK/Services/Data/Targets/CandlesDataTarget.swift similarity index 96% rename from WavesSDK/Sources/Services/Data/Targets/CandlesDataTarget.swift rename to Sources/WavesSDK/Services/Data/Targets/CandlesDataTarget.swift index 00fe845..1119282 100644 --- a/WavesSDK/Sources/Services/Data/Targets/CandlesDataTarget.swift +++ b/Sources/WavesSDK/Services/Data/Targets/CandlesDataTarget.swift @@ -8,7 +8,7 @@ import Foundation import Moya -import WavesSDKExtensions + extension DataService.Target { diff --git a/Sources/WavesSDK/Services/Data/Targets/MatcherDataTarget.swift b/Sources/WavesSDK/Services/Data/Targets/MatcherDataTarget.swift new file mode 100644 index 0000000..28b4521 --- /dev/null +++ b/Sources/WavesSDK/Services/Data/Targets/MatcherDataTarget.swift @@ -0,0 +1,32 @@ +// +// File.swift +// +// +// Created by Leonardo Marques on 31/7/22. +// + +import Foundation +import Moya + +extension DataService.Target { + + struct Matcher { + enum Kind { + /** + Response: + - API.Response<[API.Response]>.self + */ + case getAssets(ids: [String]) + /** + Response: + - API.Response.self + */ + case getAsset(id: String) + + case search(text: String, limit: Int) + } + + let kind: Kind + let dataUrl: URL + } +} diff --git a/WavesSDK/Sources/Services/Data/Targets/PairsPriceDataTarget.swift b/Sources/WavesSDK/Services/Data/Targets/PairsPriceDataTarget.swift similarity index 95% rename from WavesSDK/Sources/Services/Data/Targets/PairsPriceDataTarget.swift rename to Sources/WavesSDK/Services/Data/Targets/PairsPriceDataTarget.swift index 52041e9..7763fd2 100644 --- a/WavesSDK/Sources/Services/Data/Targets/PairsPriceDataTarget.swift +++ b/Sources/WavesSDK/Services/Data/Targets/PairsPriceDataTarget.swift @@ -74,7 +74,7 @@ extension DataService.Target.PairsPrice: DataTargetType { } var method: Moya.Method { - return .post + return .get } var task: Task { @@ -90,7 +90,7 @@ extension DataService.Target.PairsPrice: DataTargetType { }() return .requestParameters(parameters: dictionary, - encoding: JSONEncoding.default) + encoding: URLEncoding.queryString) } } @@ -126,7 +126,7 @@ extension DataService.Target.PairsPriceSearch: DataTargetType { } }() - return .requestParameters(parameters: dictionary, encoding: URLEncoding.default) + return .requestParameters(parameters: dictionary, encoding: URLEncoding.queryString) case .byAssets(let firstName, let secondName): @@ -141,7 +141,7 @@ extension DataService.Target.PairsPriceSearch: DataTargetType { }() return .requestParameters(parameters: dictionary, - encoding: URLEncoding.default) + encoding: URLEncoding.queryString) } } } diff --git a/WavesSDK/Sources/Services/Data/Targets/PairsRateDataTarget.swift b/Sources/WavesSDK/Services/Data/Targets/PairsRateDataTarget.swift similarity index 100% rename from WavesSDK/Sources/Services/Data/Targets/PairsRateDataTarget.swift rename to Sources/WavesSDK/Services/Data/Targets/PairsRateDataTarget.swift diff --git a/Sources/WavesSDK/Services/Data/Targets/TransactionsDataTarget.swift b/Sources/WavesSDK/Services/Data/Targets/TransactionsDataTarget.swift new file mode 100644 index 0000000..5121bc6 --- /dev/null +++ b/Sources/WavesSDK/Services/Data/Targets/TransactionsDataTarget.swift @@ -0,0 +1,71 @@ +// +// TransactionsService.swift +// WavesWallet-iOS +// +// Created by mefilt on 09.07.2018. +// Copyright Β© 2018 Waves Platform. All rights reserved. +// + +import Foundation +import Moya + +extension DataService.Target { + + struct Transactions { + enum Kind { + + /** + Response: + - API.Response<[API.Response.self + */ + case getExchange(id: String) + case getExchangeWithFilters(DataService.Query.ExchangeFilters) + + case getMassTransfer(id: String) + case getMassTransferTransactions(DataService.Query.MassTransferDataQuery) + + } + + let kind: Kind + let dataUrl: URL + } +} + +extension DataService.Target.Transactions: DataTargetType { + + private enum Constants { + static let exchange = "transactions/exchange" + static let massTransfer = "transactions/mass-transfer" + } + + var path: String { + switch kind { + case .getExchange(let id): return Constants.exchange + "/\(id.urlEscaped)" + + case .getExchangeWithFilters: return Constants.exchange + + case .getMassTransferTransactions: return Constants.massTransfer + case .getMassTransfer(let id): return Constants.massTransfer + "/\(id.urlEscaped)" + } + } + + var method: Moya.Method { + switch kind { + case .getExchange, .getExchangeWithFilters, .getMassTransferTransactions, .getMassTransfer: + return .get + } + } + + var task: Task { + switch kind { + case .getExchange, .getMassTransfer: + return .requestPlain + + case .getExchangeWithFilters(let filter): + return .requestParameters(parameters: filter.dictionary, encoding: URLEncoding.default) + + case .getMassTransferTransactions(let query): + return .requestParameters(parameters: query.dictionary, encoding: URLEncoding.default) + } + } +} diff --git a/WavesSDK/Sources/Services/Matcher/MatcherServiceTypes.swift b/Sources/WavesSDK/Services/Matcher/MatcherServiceTypes.swift similarity index 100% rename from WavesSDK/Sources/Services/Matcher/MatcherServiceTypes.swift rename to Sources/WavesSDK/Services/Matcher/MatcherServiceTypes.swift diff --git a/WavesSDK/Sources/Services/Matcher/Models/MarketMatcher.swift b/Sources/WavesSDK/Services/Matcher/Models/MarketMatcher.swift similarity index 100% rename from WavesSDK/Sources/Services/Matcher/Models/MarketMatcher.swift rename to Sources/WavesSDK/Services/Matcher/Models/MarketMatcher.swift diff --git a/WavesSDK/Sources/Services/Matcher/Models/OrderBookMatcher.swift b/Sources/WavesSDK/Services/Matcher/Models/OrderBookMatcher.swift similarity index 100% rename from WavesSDK/Sources/Services/Matcher/Models/OrderBookMatcher.swift rename to Sources/WavesSDK/Services/Matcher/Models/OrderBookMatcher.swift diff --git a/WavesSDK/Sources/Services/Matcher/Models/OrderMatcher.swift b/Sources/WavesSDK/Services/Matcher/Models/OrderMatcher.swift similarity index 100% rename from WavesSDK/Sources/Services/Matcher/Models/OrderMatcher.swift rename to Sources/WavesSDK/Services/Matcher/Models/OrderMatcher.swift diff --git a/WavesSDK/Sources/Services/Matcher/Queries/BalanceMatcherQuery.swift b/Sources/WavesSDK/Services/Matcher/Queries/BalanceMatcherQuery.swift similarity index 99% rename from WavesSDK/Sources/Services/Matcher/Queries/BalanceMatcherQuery.swift rename to Sources/WavesSDK/Services/Matcher/Queries/BalanceMatcherQuery.swift index 5108aa7..7eadb10 100644 --- a/WavesSDK/Sources/Services/Matcher/Queries/BalanceMatcherQuery.swift +++ b/Sources/WavesSDK/Services/Matcher/Queries/BalanceMatcherQuery.swift @@ -6,7 +6,7 @@ // import Foundation -import WavesSDKExtensions + public extension MatcherService.Query { diff --git a/WavesSDK/Sources/Services/Matcher/Services/BalanceMatcherService.swift b/Sources/WavesSDK/Services/Matcher/Services/BalanceMatcherService.swift similarity index 94% rename from WavesSDK/Sources/Services/Matcher/Services/BalanceMatcherService.swift rename to Sources/WavesSDK/Services/Matcher/Services/BalanceMatcherService.swift index 499c695..cbd1c6a 100644 --- a/WavesSDK/Sources/Services/Matcher/Services/BalanceMatcherService.swift +++ b/Sources/WavesSDK/Services/Matcher/Services/BalanceMatcherService.swift @@ -26,7 +26,7 @@ final class BalanceMatcherService: InternalWavesService, BalanceMatcherServicePr .request(.init(kind: .getReservedBalances(query), matcherUrl: enviroment.matcherUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map([String: Int64].self) diff --git a/WavesSDK/Sources/Services/Matcher/Services/OrderBookMatcherService.swift b/Sources/WavesSDK/Services/Matcher/Services/OrderBookMatcherService.swift similarity index 92% rename from WavesSDK/Sources/Services/Matcher/Services/OrderBookMatcherService.swift rename to Sources/WavesSDK/Services/Matcher/Services/OrderBookMatcherService.swift index ea189b9..65f10c0 100644 --- a/WavesSDK/Sources/Services/Matcher/Services/OrderBookMatcherService.swift +++ b/Sources/WavesSDK/Services/Matcher/Services/OrderBookMatcherService.swift @@ -28,7 +28,7 @@ final class OrderBookMatcherService: InternalWavesService, OrderBookMatcherServi priceAsset: priceAsset), matcherUrl: enviroment.matcherUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map(MatcherService.DTO.OrderBook.self, @@ -46,7 +46,7 @@ final class OrderBookMatcherService: InternalWavesService, OrderBookMatcherServi .request(.init(kind: .getMarket, matcherUrl: enviroment.matcherUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map(MatcherService.DTO.MarketResponse.self) @@ -61,7 +61,7 @@ final class OrderBookMatcherService: InternalWavesService, OrderBookMatcherServi .request(.init(kind: .getMyOrders(query), matcherUrl: enviroment.matcherUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map([MatcherService.DTO.Order].self, @@ -78,7 +78,7 @@ final class OrderBookMatcherService: InternalWavesService, OrderBookMatcherServi .request(.init(kind: .getAllMyOrders(query), matcherUrl: enviroment.matcherUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map([MatcherService.DTO.Order].self, @@ -96,7 +96,7 @@ final class OrderBookMatcherService: InternalWavesService, OrderBookMatcherServi .request(.init(kind: .cancelOrder(query), matcherUrl: enviroment.matcherUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map { _ in true } @@ -110,7 +110,7 @@ final class OrderBookMatcherService: InternalWavesService, OrderBookMatcherServi .request(.init(kind: .cancelAllOrders(query), matcherUrl: enviroment.matcherUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map { _ in true } @@ -125,7 +125,7 @@ final class OrderBookMatcherService: InternalWavesService, OrderBookMatcherServi .request(.init(kind: .createOrder(.limit(query)), matcherUrl: enviroment.matcherUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map { _ in true } @@ -140,7 +140,7 @@ final class OrderBookMatcherService: InternalWavesService, OrderBookMatcherServi .request(.init(kind: .createOrder(.market(query)), matcherUrl: enviroment.matcherUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map { _ in true } @@ -155,7 +155,7 @@ final class OrderBookMatcherService: InternalWavesService, OrderBookMatcherServi .request(.init(kind: .settingsFee, matcherUrl: enviroment.matcherUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .asObservable() @@ -186,7 +186,7 @@ final class OrderBookMatcherService: InternalWavesService, OrderBookMatcherServi .request(.init(kind: .settings, matcherUrl: enviroment.matcherUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .asObservable() diff --git a/WavesSDK/Sources/Services/Matcher/Services/Protocols/BalanceMatcherServiceProtocol.swift b/Sources/WavesSDK/Services/Matcher/Services/Protocols/BalanceMatcherServiceProtocol.swift similarity index 100% rename from WavesSDK/Sources/Services/Matcher/Services/Protocols/BalanceMatcherServiceProtocol.swift rename to Sources/WavesSDK/Services/Matcher/Services/Protocols/BalanceMatcherServiceProtocol.swift diff --git a/WavesSDK/Sources/Services/Matcher/Services/Protocols/OrderBookMatcherServiceProtocol.swift b/Sources/WavesSDK/Services/Matcher/Services/Protocols/OrderBookMatcherServiceProtocol.swift similarity index 100% rename from WavesSDK/Sources/Services/Matcher/Services/Protocols/OrderBookMatcherServiceProtocol.swift rename to Sources/WavesSDK/Services/Matcher/Services/Protocols/OrderBookMatcherServiceProtocol.swift diff --git a/WavesSDK/Sources/Services/Matcher/Services/Protocols/PublicKeyMatcherServiceProtocol.swift b/Sources/WavesSDK/Services/Matcher/Services/Protocols/PublicKeyMatcherServiceProtocol.swift similarity index 100% rename from WavesSDK/Sources/Services/Matcher/Services/Protocols/PublicKeyMatcherServiceProtocol.swift rename to Sources/WavesSDK/Services/Matcher/Services/Protocols/PublicKeyMatcherServiceProtocol.swift diff --git a/WavesSDK/Sources/Services/Matcher/Services/PublicKeyMatcherService.swift b/Sources/WavesSDK/Services/Matcher/Services/PublicKeyMatcherService.swift similarity index 95% rename from WavesSDK/Sources/Services/Matcher/Services/PublicKeyMatcherService.swift rename to Sources/WavesSDK/Services/Matcher/Services/PublicKeyMatcherService.swift index ec06a1f..afb703d 100644 --- a/WavesSDK/Sources/Services/Matcher/Services/PublicKeyMatcherService.swift +++ b/Sources/WavesSDK/Services/Matcher/Services/PublicKeyMatcherService.swift @@ -8,6 +8,7 @@ import Foundation import RxSwift import Moya +import RxMoya final class PublicKeyMatcherService: InternalWavesService, PublicKeyMatcherServiceProtocol { @@ -25,7 +26,7 @@ final class PublicKeyMatcherService: InternalWavesService, PublicKeyMatcherServi .rx .request(.init(matcherUrl: enviroment.matcherUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .flatMap({ (response) -> Single in diff --git a/WavesSDK/Sources/Services/Matcher/Targets/BalanceMatcherTarget.swift b/Sources/WavesSDK/Services/Matcher/Targets/BalanceMatcherTarget.swift similarity index 98% rename from WavesSDK/Sources/Services/Matcher/Targets/BalanceMatcherTarget.swift rename to Sources/WavesSDK/Services/Matcher/Targets/BalanceMatcherTarget.swift index 2c4982a..58848ee 100644 --- a/WavesSDK/Sources/Services/Matcher/Targets/BalanceMatcherTarget.swift +++ b/Sources/WavesSDK/Services/Matcher/Targets/BalanceMatcherTarget.swift @@ -8,7 +8,7 @@ import Foundation import Moya -import WavesSDKExtensions + public extension MatcherService.Query { diff --git a/WavesSDK/Sources/Services/Matcher/Targets/OrderBookMatcherTarget.swift b/Sources/WavesSDK/Services/Matcher/Targets/OrderBookMatcherTarget.swift similarity index 99% rename from WavesSDK/Sources/Services/Matcher/Targets/OrderBookMatcherTarget.swift rename to Sources/WavesSDK/Services/Matcher/Targets/OrderBookMatcherTarget.swift index 056e7bd..4f36bb0 100644 --- a/WavesSDK/Sources/Services/Matcher/Targets/OrderBookMatcherTarget.swift +++ b/Sources/WavesSDK/Services/Matcher/Targets/OrderBookMatcherTarget.swift @@ -8,7 +8,7 @@ import Foundation import Moya -import WavesSDKExtensions + extension MatcherService.Target { diff --git a/WavesSDK/Sources/Services/Matcher/Targets/PublicKeyMatcherTarget.swift b/Sources/WavesSDK/Services/Matcher/Targets/PublicKeyMatcherTarget.swift similarity index 100% rename from WavesSDK/Sources/Services/Matcher/Targets/PublicKeyMatcherTarget.swift rename to Sources/WavesSDK/Services/Matcher/Targets/PublicKeyMatcherTarget.swift diff --git a/WavesSDK/Sources/Services/Node/Models/AccountAssetsBalanceNode.swift b/Sources/WavesSDK/Services/Node/Models/AccountAssetsBalanceNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/AccountAssetsBalanceNode.swift rename to Sources/WavesSDK/Services/Node/Models/AccountAssetsBalanceNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/AccountBalanceNode.swift b/Sources/WavesSDK/Services/Node/Models/AccountBalanceNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/AccountBalanceNode.swift rename to Sources/WavesSDK/Services/Node/Models/AccountBalanceNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/AddressData.swift b/Sources/WavesSDK/Services/Node/Models/AddressData.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/AddressData.swift rename to Sources/WavesSDK/Services/Node/Models/AddressData.swift diff --git a/WavesSDK/Sources/Services/Node/Models/AddressScriptInfoNode.swift b/Sources/WavesSDK/Services/Node/Models/AddressScriptInfoNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/AddressScriptInfoNode.swift rename to Sources/WavesSDK/Services/Node/Models/AddressScriptInfoNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/AssetDetailNode.swift b/Sources/WavesSDK/Services/Node/Models/AssetDetailNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/AssetDetailNode.swift rename to Sources/WavesSDK/Services/Node/Models/AssetDetailNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/BlockNode.swift b/Sources/WavesSDK/Services/Node/Models/BlockNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/BlockNode.swift rename to Sources/WavesSDK/Services/Node/Models/BlockNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/Transactions/AliasTransactionNode.swift b/Sources/WavesSDK/Services/Node/Models/Transactions/AliasTransactionNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/Transactions/AliasTransactionNode.swift rename to Sources/WavesSDK/Services/Node/Models/Transactions/AliasTransactionNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/Transactions/BurnTransactionNode.swift b/Sources/WavesSDK/Services/Node/Models/Transactions/BurnTransactionNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/Transactions/BurnTransactionNode.swift rename to Sources/WavesSDK/Services/Node/Models/Transactions/BurnTransactionNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/Transactions/DataTransactionNode.swift b/Sources/WavesSDK/Services/Node/Models/Transactions/DataTransactionNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/Transactions/DataTransactionNode.swift rename to Sources/WavesSDK/Services/Node/Models/Transactions/DataTransactionNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/Transactions/ExchangeTransactionNode.swift b/Sources/WavesSDK/Services/Node/Models/Transactions/ExchangeTransactionNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/Transactions/ExchangeTransactionNode.swift rename to Sources/WavesSDK/Services/Node/Models/Transactions/ExchangeTransactionNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/Transactions/InvokeScriptTransactionNode.swift b/Sources/WavesSDK/Services/Node/Models/Transactions/InvokeScriptTransactionNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/Transactions/InvokeScriptTransactionNode.swift rename to Sources/WavesSDK/Services/Node/Models/Transactions/InvokeScriptTransactionNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/Transactions/IssueTransactionNode.swift b/Sources/WavesSDK/Services/Node/Models/Transactions/IssueTransactionNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/Transactions/IssueTransactionNode.swift rename to Sources/WavesSDK/Services/Node/Models/Transactions/IssueTransactionNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/Transactions/LeaseCancelTransactionNode.swift b/Sources/WavesSDK/Services/Node/Models/Transactions/LeaseCancelTransactionNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/Transactions/LeaseCancelTransactionNode.swift rename to Sources/WavesSDK/Services/Node/Models/Transactions/LeaseCancelTransactionNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/Transactions/LeaseTransactionNode.swift b/Sources/WavesSDK/Services/Node/Models/Transactions/LeaseTransactionNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/Transactions/LeaseTransactionNode.swift rename to Sources/WavesSDK/Services/Node/Models/Transactions/LeaseTransactionNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/Transactions/MassTransferTransactionNode.swift b/Sources/WavesSDK/Services/Node/Models/Transactions/MassTransferTransactionNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/Transactions/MassTransferTransactionNode.swift rename to Sources/WavesSDK/Services/Node/Models/Transactions/MassTransferTransactionNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/Transactions/ReissueTransactionNode.swift b/Sources/WavesSDK/Services/Node/Models/Transactions/ReissueTransactionNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/Transactions/ReissueTransactionNode.swift rename to Sources/WavesSDK/Services/Node/Models/Transactions/ReissueTransactionNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/Transactions/SetAssetScriptTransactionNode.swift b/Sources/WavesSDK/Services/Node/Models/Transactions/SetAssetScriptTransactionNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/Transactions/SetAssetScriptTransactionNode.swift rename to Sources/WavesSDK/Services/Node/Models/Transactions/SetAssetScriptTransactionNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/Transactions/SetScriptTransactionNode.swift b/Sources/WavesSDK/Services/Node/Models/Transactions/SetScriptTransactionNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/Transactions/SetScriptTransactionNode.swift rename to Sources/WavesSDK/Services/Node/Models/Transactions/SetScriptTransactionNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/Transactions/SponsorshipTransactionNode.swift b/Sources/WavesSDK/Services/Node/Models/Transactions/SponsorshipTransactionNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/Transactions/SponsorshipTransactionNode.swift rename to Sources/WavesSDK/Services/Node/Models/Transactions/SponsorshipTransactionNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/Transactions/TransactionContainersNode.swift b/Sources/WavesSDK/Services/Node/Models/Transactions/TransactionContainersNode.swift similarity index 98% rename from WavesSDK/Sources/Services/Node/Models/Transactions/TransactionContainersNode.swift rename to Sources/WavesSDK/Services/Node/Models/Transactions/TransactionContainersNode.swift index ede361d..1823a2f 100644 --- a/WavesSDK/Sources/Services/Node/Models/Transactions/TransactionContainersNode.swift +++ b/Sources/WavesSDK/Services/Node/Models/Transactions/TransactionContainersNode.swift @@ -7,7 +7,7 @@ // import Foundation -import WavesSDKExtensions + extension NodeService.DTO { enum TransactionType: Int, Decodable { @@ -272,3 +272,10 @@ extension NodeService.DTO { } } } + +extension NodeService.DTO { + public struct TransactionFee: Decodable { + public let feeAssetId: String? + public let feeAmount: Int64 + } +} diff --git a/WavesSDK/Sources/Services/Node/Models/Transactions/TransferTransactionNode.swift b/Sources/WavesSDK/Services/Node/Models/Transactions/TransferTransactionNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/Transactions/TransferTransactionNode.swift rename to Sources/WavesSDK/Services/Node/Models/Transactions/TransferTransactionNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/Transactions/UnrecognisedTransactionNode.swift b/Sources/WavesSDK/Services/Node/Models/Transactions/UnrecognisedTransactionNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/Transactions/UnrecognisedTransactionNode.swift rename to Sources/WavesSDK/Services/Node/Models/Transactions/UnrecognisedTransactionNode.swift diff --git a/WavesSDK/Sources/Services/Node/Models/Transactions/UpdateAssetInfoTransactionNode.swift b/Sources/WavesSDK/Services/Node/Models/Transactions/UpdateAssetInfoTransactionNode.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Models/Transactions/UpdateAssetInfoTransactionNode.swift rename to Sources/WavesSDK/Services/Node/Models/Transactions/UpdateAssetInfoTransactionNode.swift diff --git a/Sources/WavesSDK/Services/Node/Models/UtilsNode.swift b/Sources/WavesSDK/Services/Node/Models/UtilsNode.swift new file mode 100644 index 0000000..f0a7e30 --- /dev/null +++ b/Sources/WavesSDK/Services/Node/Models/UtilsNode.swift @@ -0,0 +1,39 @@ +// +// UtilsNode.swift +// WavesWallet-iOS +// +// Created by Pavel Gubin on 3/12/19. +// Copyright Β© 2019 Waves Platform. All rights reserved. +// + +import Foundation + +public extension NodeService.DTO { + enum Utils {} +} + +public extension NodeService.DTO.Utils { + + struct Time: Decodable { + public let system: Int64 + public let NTP: Int64 + } +} + +public extension NodeService.DTO.Utils { + + struct ScriptEvaluation: Decodable{ + public struct Result: Decodable{ + public let type: String + public let value: AnyCodable + } + public let address: String + public let expr: String + public let result: Result + public let complexity: Int64? + } +} + + + + diff --git a/WavesSDK/Sources/Services/Node/NodeTargetTypes.swift b/Sources/WavesSDK/Services/Node/NodeTargetTypes.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/NodeTargetTypes.swift rename to Sources/WavesSDK/Services/Node/NodeTargetTypes.swift diff --git a/WavesSDK/Sources/Services/Node/Queries/BaseTransactionQueryProtocol.swift b/Sources/WavesSDK/Services/Node/Queries/BaseTransactionQueryProtocol.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Queries/BaseTransactionQueryProtocol.swift rename to Sources/WavesSDK/Services/Node/Queries/BaseTransactionQueryProtocol.swift diff --git a/WavesSDK/Sources/Services/Node/Queries/TransactionNodeQuery.swift b/Sources/WavesSDK/Services/Node/Queries/TransactionNodeQuery.swift similarity index 99% rename from WavesSDK/Sources/Services/Node/Queries/TransactionNodeQuery.swift rename to Sources/WavesSDK/Services/Node/Queries/TransactionNodeQuery.swift index 310b109..b398b14 100644 --- a/WavesSDK/Sources/Services/Node/Queries/TransactionNodeQuery.swift +++ b/Sources/WavesSDK/Services/Node/Queries/TransactionNodeQuery.swift @@ -6,7 +6,7 @@ // import Foundation -import WavesSDKExtensions + public enum TransactionVersion: Int { case version_1 = 1 @@ -499,10 +499,10 @@ public extension NodeService.Query.Transaction { public let dApp: String public let call: Call? public let payment: [Payment] - public let feeAssetId: String + public let feeAssetId: String? - public init(version: Int = TransactionVersion.version_1.rawValue, chainId: UInt8, fee: Int64, timestamp: Int64 = 0, - senderPublicKey: String = "", feeAssetId: String, proofs: [String] = [], dApp: String, call: Call?, payment: [Payment]) { + public init(version: Int = TransactionVersion.version_1.rawValue, chainId: UInt8, fee: Int64, timestamp: Int64 = Date().millisecondsSince1970, + senderPublicKey: String = "", feeAssetId: String?, proofs: [String] = [], dApp: String, call: Call?, payment: [Payment]) { self.version = version self.feeAssetId = feeAssetId diff --git a/WavesSDK/Sources/Services/Node/Services/AddressesNodeService.swift b/Sources/WavesSDK/Services/Node/Services/AddressesNodeService.swift similarity index 86% rename from WavesSDK/Sources/Services/Node/Services/AddressesNodeService.swift rename to Sources/WavesSDK/Services/Node/Services/AddressesNodeService.swift index 548d750..374e5ac 100644 --- a/WavesSDK/Sources/Services/Node/Services/AddressesNodeService.swift +++ b/Sources/WavesSDK/Services/Node/Services/AddressesNodeService.swift @@ -23,7 +23,7 @@ final class AddressesNodeService: InternalWavesService, AddressesNodeServiceProt .rx .request(target) .filterSuccessfulStatusAndRedirectCodes() - .catchError { (error) -> Single in Single.error(NetworkError.error(by: error)) } + .catch { (error) -> Single in Single.error(NetworkError.error(by: error)) } .map(NodeService.DTO.AddressBalance.self) .asObservable() } @@ -35,7 +35,7 @@ final class AddressesNodeService: InternalWavesService, AddressesNodeServiceProt .rx .request(target) .filterSuccessfulStatusAndRedirectCodes() - .catchError { error -> Single in Single.error(NetworkError.error(by: error)) } + .catch { error -> Single in Single.error(NetworkError.error(by: error)) } .map(NodeService.DTO.AddressScriptInfo.self) .asObservable() } @@ -48,7 +48,7 @@ final class AddressesNodeService: InternalWavesService, AddressesNodeServiceProt .rx .request(target) .filterSuccessfulStatusAndRedirectCodes() - .catchError { error -> Single in Single.error(error) } + .catch { error -> Single in Single.error(error) } .map(NodeService.DTO.AddressesData.self) .asObservable() } @@ -62,7 +62,7 @@ final class AddressesNodeService: InternalWavesService, AddressesNodeServiceProt .rx .request(target) .filterSuccessfulStatusAndRedirectCodes() - .catchError { (error) -> Single in Single.error(NetworkError.error(by: error)) } + .catch { (error) -> Single in Single.error(NetworkError.error(by: error)) } .map([NodeService.DTO.WavesBalance].self) .asObservable() } diff --git a/WavesSDK/Sources/Services/Node/Services/AssetsNodeService.swift b/Sources/WavesSDK/Services/Node/Services/AssetsNodeService.swift similarity index 89% rename from WavesSDK/Sources/Services/Node/Services/AssetsNodeService.swift rename to Sources/WavesSDK/Services/Node/Services/AssetsNodeService.swift index ee7a0c4..a4541bb 100644 --- a/WavesSDK/Sources/Services/Node/Services/AssetsNodeService.swift +++ b/Sources/WavesSDK/Services/Node/Services/AssetsNodeService.swift @@ -27,11 +27,11 @@ final class AssetsNodeService: InternalWavesService, AssetsNodeServiceProtocol { nodeUrl: enviroment.nodeUrl)) .filterSuccessfulStatusAndRedirectCodes() .asObservable() - .catchError({ (error) -> Observable in + .catch({ (error) -> Observable in return Observable.error(NetworkError.error(by: error)) }) .map(NodeService.DTO.AddressAssetsBalance.self, atKeyPath: nil, using: JSONDecoder.decoderBySyncingTimestamp(enviroment.timestampServerDiff), failsOnEmptyData: false) - .catchError({ (error) -> Observable in + .catch({ (error) -> Observable in return Observable.error(NetworkError.error(by: error)) }) .asObservable() @@ -45,7 +45,7 @@ final class AssetsNodeService: InternalWavesService, AssetsNodeServiceProtocol { .request(.init(kind: .getAssetsBalance(address: address, assetId: assetId), nodeUrl: enviroment.nodeUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map(NodeService.DTO.AddressAssetBalance.self) @@ -59,7 +59,7 @@ final class AssetsNodeService: InternalWavesService, AssetsNodeServiceProtocol { .request(.init(kind: .details(assetId: assetId), nodeUrl: enviroment.nodeUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map(NodeService.DTO.AssetDetail.self) diff --git a/WavesSDK/Sources/Services/Node/Services/BlocksNodeService.swift b/Sources/WavesSDK/Services/Node/Services/BlocksNodeService.swift similarity index 94% rename from WavesSDK/Sources/Services/Node/Services/BlocksNodeService.swift rename to Sources/WavesSDK/Services/Node/Services/BlocksNodeService.swift index 0ea9e5e..e585d8c 100644 --- a/WavesSDK/Sources/Services/Node/Services/BlocksNodeService.swift +++ b/Sources/WavesSDK/Services/Node/Services/BlocksNodeService.swift @@ -26,7 +26,7 @@ final class BlocksNodeService: InternalWavesService, BlocksNodeServiceProtocol { .request(NodeService.Target.Blocks(nodeUrl: enviroment.nodeUrl, kind: .height)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map(NodeService.DTO.Block.self) diff --git a/WavesSDK/Sources/Services/Node/Services/LeasingNodeService.swift b/Sources/WavesSDK/Services/Node/Services/LeasingNodeService.swift similarity index 95% rename from WavesSDK/Sources/Services/Node/Services/LeasingNodeService.swift rename to Sources/WavesSDK/Services/Node/Services/LeasingNodeService.swift index 2efeaaa..8b7b60a 100644 --- a/WavesSDK/Sources/Services/Node/Services/LeasingNodeService.swift +++ b/Sources/WavesSDK/Services/Node/Services/LeasingNodeService.swift @@ -27,7 +27,7 @@ final class LeasingNodeService: InternalWavesService, LeasingNodeServiceProtocol .request(.init(kind: .getActive(address: address), nodeUrl: enviroment.nodeUrl)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map([NodeService.DTO.LeaseResponse].self, atKeyPath: nil, using: JSONDecoder.decoderBySyncingTimestamp(enviroment.timestampServerDiff), failsOnEmptyData: false) diff --git a/WavesSDK/Sources/Services/Node/Services/Protocols/AddressesNodeServiceProtocol.swift b/Sources/WavesSDK/Services/Node/Services/Protocols/AddressesNodeServiceProtocol.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Services/Protocols/AddressesNodeServiceProtocol.swift rename to Sources/WavesSDK/Services/Node/Services/Protocols/AddressesNodeServiceProtocol.swift diff --git a/WavesSDK/Sources/Services/Node/Services/Protocols/AssetsNodeServiceProtocol.swift b/Sources/WavesSDK/Services/Node/Services/Protocols/AssetsNodeServiceProtocol.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Services/Protocols/AssetsNodeServiceProtocol.swift rename to Sources/WavesSDK/Services/Node/Services/Protocols/AssetsNodeServiceProtocol.swift diff --git a/WavesSDK/Sources/Services/Node/Services/Protocols/BlocksNodeServiceProtocol.swift b/Sources/WavesSDK/Services/Node/Services/Protocols/BlocksNodeServiceProtocol.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Services/Protocols/BlocksNodeServiceProtocol.swift rename to Sources/WavesSDK/Services/Node/Services/Protocols/BlocksNodeServiceProtocol.swift diff --git a/WavesSDK/Sources/Services/Node/Services/Protocols/LeasingNodeServiceProtocol.swift b/Sources/WavesSDK/Services/Node/Services/Protocols/LeasingNodeServiceProtocol.swift similarity index 100% rename from WavesSDK/Sources/Services/Node/Services/Protocols/LeasingNodeServiceProtocol.swift rename to Sources/WavesSDK/Services/Node/Services/Protocols/LeasingNodeServiceProtocol.swift diff --git a/Sources/WavesSDK/Services/Node/Services/Protocols/TransactionNodeServiceProtocol.swift b/Sources/WavesSDK/Services/Node/Services/Protocols/TransactionNodeServiceProtocol.swift new file mode 100644 index 0000000..1f1856e --- /dev/null +++ b/Sources/WavesSDK/Services/Node/Services/Protocols/TransactionNodeServiceProtocol.swift @@ -0,0 +1,28 @@ +// +// TransactionNodeServiceProtocol.swift +// Alamofire +// +// Created by rprokofev on 22/05/2019. +// + +import Foundation +import RxSwift + +public protocol TransactionNodeServiceProtocol { + + /** + Broadcast transaction one of type = [0; 16] + */ + + func transactions(query: NodeService.Query.Transaction) -> Observable + + /** + Get list of transactions where specified address has been involved + - Parameter: address Address + - Parameter: limit Number of transactions to be returned. Max is last 1000. + */ + + func transactions(by address: String, offset: Int, limit: Int) -> Observable + + func calculateFee(for tx: NodeService.Query.Transaction) -> Observable +} diff --git a/Sources/WavesSDK/Services/Node/Services/Protocols/UtilsNodeServiceProtocol.swift b/Sources/WavesSDK/Services/Node/Services/Protocols/UtilsNodeServiceProtocol.swift new file mode 100644 index 0000000..fd6c940 --- /dev/null +++ b/Sources/WavesSDK/Services/Node/Services/Protocols/UtilsNodeServiceProtocol.swift @@ -0,0 +1,21 @@ +// +// UtilsNodeServiceProtocol.swift +// Alamofire +// +// Created by rprokofev on 22/05/2019. +// + +import Foundation +import RxSwift + +public protocol UtilsNodeServiceProtocol { + + /** + Current Node time (UTC) + */ + func time() -> Observable + + func transactionSerialize(query: NodeService.Query.Transaction)-> Observable<[Int]> + + func scriptEvaluate(address: String, expr: String) -> Observable +} diff --git a/Sources/WavesSDK/Services/Node/Services/TransactionNodeService.swift b/Sources/WavesSDK/Services/Node/Services/TransactionNodeService.swift new file mode 100644 index 0000000..20dd583 --- /dev/null +++ b/Sources/WavesSDK/Services/Node/Services/TransactionNodeService.swift @@ -0,0 +1,64 @@ +// +// TransactionNodeService.swift +// Alamofire +// +// Created by rprokofev on 26/04/2019. +// + +import Foundation +import RxSwift +import Moya + +final class TransactionNodeService: InternalWavesService, TransactionNodeServiceProtocol { + + private let transactionsProvider: MoyaProvider + + init(transactionsProvider: MoyaProvider, enviroment: WavesEnvironment) { + self.transactionsProvider = transactionsProvider + super.init(enviroment: enviroment) + } + + public func transactions(query: NodeService.Query.Transaction) -> Observable { + + return self + .transactionsProvider + .rx + .request(.init(kind: .broadcast(query), + nodeUrl: enviroment.nodeUrl)) + .filterSuccessfulStatusAndRedirectCodes() + .catch({ (error) -> Single in + return Single.error(NetworkError.error(by: error)) + }) + .map(NodeService.DTO.Transaction.self, atKeyPath: nil, using: JSONDecoder.decoderBySyncingTimestamp(enviroment.timestampServerDiff), failsOnEmptyData: false) + .asObservable() + } + + public func transactions(by address: String, offset: Int, limit: Int) -> Observable { + + return self + .transactionsProvider + .rx + .request(.init(kind: .list(address: address, + limit: limit), + nodeUrl: enviroment.nodeUrl)) + .filterSuccessfulStatusAndRedirectCodes() + .catch({ (error) -> Single in + return Single.error(NetworkError.error(by: error)) + }) + .map(NodeService.DTO.TransactionContainers.self, atKeyPath: nil, using: JSONDecoder.decoderBySyncingTimestamp(enviroment.timestampServerDiff), failsOnEmptyData: false) + .asObservable() + } + + public func calculateFee(for tx: NodeService.Query.Transaction) -> Observable { + return self.transactionsProvider + .rx + .request(.init(kind: .calculateFee(tx), nodeUrl: enviroment.nodeUrl)) + .filterSuccessfulStatusAndRedirectCodes() + .catch({ (error) -> Single in + return Single.error(NetworkError.error(by: error)) + }) + .map(NodeService.DTO.TransactionFee.self, atKeyPath: nil, using: JSONDecoder.decoderBySyncingTimestamp(enviroment.timestampServerDiff), failsOnEmptyData: false) + .asObservable() + } +} + diff --git a/WavesSDK/Sources/Services/Node/Services/UtilsNodeService.swift b/Sources/WavesSDK/Services/Node/Services/UtilsNodeService.swift similarity index 73% rename from WavesSDK/Sources/Services/Node/Services/UtilsNodeService.swift rename to Sources/WavesSDK/Services/Node/Services/UtilsNodeService.swift index 42f2c8f..ff07f05 100644 --- a/WavesSDK/Sources/Services/Node/Services/UtilsNodeService.swift +++ b/Sources/WavesSDK/Services/Node/Services/UtilsNodeService.swift @@ -31,7 +31,7 @@ final class UtilsNodeService: InternalWavesService, UtilsNodeServiceProtocol { .request(.init(nodeUrl: enviroment.nodeUrl, kind: .transactionSerialize(query))) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map(Utils.self, atKeyPath: nil, using: JSONDecoder.decoderBySyncingTimestamp(enviroment.timestampServerDiff), failsOnEmptyData: false) @@ -46,10 +46,22 @@ final class UtilsNodeService: InternalWavesService, UtilsNodeServiceProtocol { .rx .request(.init(nodeUrl: enviroment.nodeUrl, kind: .time)) .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in + .catch({ (error) -> Single in return Single.error(NetworkError.error(by: error)) }) .map(NodeService.DTO.Utils.Time.self) .asObservable() } + + public func scriptEvaluate(address: String, expr: String) -> Observable { + return utilsProvider + .rx + .request(.init(nodeUrl: enviroment.nodeUrl, kind: .scriptEvaluate(address, expr))) + .filterSuccessfulStatusAndRedirectCodes() + .catch({ (error) -> Single in + return Single.error(NetworkError.error(by: error)) + }) + .map(NodeService.DTO.Utils.ScriptEvaluation.self) + .asObservable() + } } diff --git a/WavesSDK/Sources/Services/Node/Targets/AddressesNodeTarget.swift b/Sources/WavesSDK/Services/Node/Targets/AddressesNodeTarget.swift similarity index 98% rename from WavesSDK/Sources/Services/Node/Targets/AddressesNodeTarget.swift rename to Sources/WavesSDK/Services/Node/Targets/AddressesNodeTarget.swift index a736d60..fbf2df6 100644 --- a/WavesSDK/Sources/Services/Node/Targets/AddressesNodeTarget.swift +++ b/Sources/WavesSDK/Services/Node/Targets/AddressesNodeTarget.swift @@ -8,7 +8,7 @@ import Foundation import Moya -import WavesSDKExtensions + extension NodeService.Target { struct Addresses { diff --git a/WavesSDK/Sources/Services/Node/Targets/AssetsNodeTarget.swift b/Sources/WavesSDK/Services/Node/Targets/AssetsNodeTarget.swift similarity index 98% rename from WavesSDK/Sources/Services/Node/Targets/AssetsNodeTarget.swift rename to Sources/WavesSDK/Services/Node/Targets/AssetsNodeTarget.swift index 288f93d..1976d18 100644 --- a/WavesSDK/Sources/Services/Node/Targets/AssetsNodeTarget.swift +++ b/Sources/WavesSDK/Services/Node/Targets/AssetsNodeTarget.swift @@ -7,7 +7,7 @@ // import Foundation -import WavesSDKExtensions + import Moya extension NodeService.Target { diff --git a/WavesSDK/Sources/Services/Node/Targets/BlocksNodeTarget.swift b/Sources/WavesSDK/Services/Node/Targets/BlocksNodeTarget.swift similarity index 97% rename from WavesSDK/Sources/Services/Node/Targets/BlocksNodeTarget.swift rename to Sources/WavesSDK/Services/Node/Targets/BlocksNodeTarget.swift index 31c1d68..4714666 100644 --- a/WavesSDK/Sources/Services/Node/Targets/BlocksNodeTarget.swift +++ b/Sources/WavesSDK/Services/Node/Targets/BlocksNodeTarget.swift @@ -7,7 +7,7 @@ // import Foundation -import WavesSDKExtensions + import Moya extension NodeService.Target { @@ -57,3 +57,4 @@ extension NodeService.Target.Blocks: NodeTargetType { } } } + diff --git a/WavesSDK/Sources/Services/Node/Targets/LeasingNodeTarget.swift b/Sources/WavesSDK/Services/Node/Targets/LeasingNodeTarget.swift similarity index 97% rename from WavesSDK/Sources/Services/Node/Targets/LeasingNodeTarget.swift rename to Sources/WavesSDK/Services/Node/Targets/LeasingNodeTarget.swift index 7a87940..feae0ba 100644 --- a/WavesSDK/Sources/Services/Node/Targets/LeasingNodeTarget.swift +++ b/Sources/WavesSDK/Services/Node/Targets/LeasingNodeTarget.swift @@ -6,7 +6,7 @@ // import Foundation -import WavesSDKExtensions + import Moya extension NodeService.Target { diff --git a/Sources/WavesSDK/Services/Node/Targets/TransactionNodeTarget.swift b/Sources/WavesSDK/Services/Node/Targets/TransactionNodeTarget.swift new file mode 100644 index 0000000..8f24619 --- /dev/null +++ b/Sources/WavesSDK/Services/Node/Targets/TransactionNodeTarget.swift @@ -0,0 +1,391 @@ +// +// TransactionsService.swift +// WavesWallet-iOS +// +// Created by Prokofev Ruslan on 07/08/2018. +// Copyright Β© 2018 Waves Platform. All rights reserved. +// + +import Foundation + +import Moya + +fileprivate enum Constants { + static let transactions = "transactions" + static let limit = "limit" + static let address = "address" + static let info = "info" + static let broadcast = "broadcast" + static let calculateFee = "calculateFee" + + static let version: String = "version" + static let alias: String = "alias" + static let fee: String = "fee" + static let timestamp: String = "timestamp" + static let type: String = "type" + static let senderPublicKey: String = "senderPublicKey" + static let proofs: String = "proofs" + static let chainId: String = "chainId" + static let recipient: String = "recipient" + static let amount: String = "amount" + static let quantity: String = "quantity" + static let assetId: String = "assetId" + static let leaseId: String = "leaseId" + static let data: String = "data" + static let feeAssetId: String = "feeAssetId" + static let feeAsset: String = "feeAsset" + static let attachment: String = "attachment" +} + +//TODO: - need take parameter name from Constants + +public extension NodeService.Query.Transaction { + + var params: [String: Any] { + switch self { + case .burn(let burn): + return [Constants.version: burn.version, + Constants.chainId: burn.chainId, + Constants.senderPublicKey: burn.senderPublicKey, + Constants.quantity: burn.quantity, + Constants.fee: burn.fee, + Constants.timestamp: burn.timestamp, + Constants.proofs: burn.proofs, + Constants.type: burn.type, + Constants.assetId: burn.assetId.normalizeWavesAssetId] + + case .createAlias(let alias): + return [Constants.version: alias.version, + Constants.alias: alias.name, + Constants.fee: alias.fee, + Constants.timestamp: alias.timestamp, + Constants.type: alias.type, + Constants.senderPublicKey: alias.senderPublicKey, + Constants.proofs: alias.proofs] + + case .startLease(let lease): + let chainId: UInt8 = lease.chainId + return [Constants.version: lease.version, + Constants.chainId: chainId, + Constants.senderPublicKey: lease.senderPublicKey, + Constants.recipient: lease.recipient, + Constants.amount: lease.amount, + Constants.fee: lease.fee, + Constants.timestamp: lease.timestamp, + Constants.proofs: lease.proofs, + Constants.type: lease.type] + + case .cancelLease(let lease): + let scheme: UInt8 = lease.chainId + return [Constants.version: lease.version, + Constants.chainId: scheme, + Constants.senderPublicKey: lease.senderPublicKey, + Constants.fee: lease.fee, + Constants.timestamp: lease.timestamp, + Constants.proofs: lease.proofs, + Constants.type: lease.type, + Constants.leaseId: lease.leaseId] + + case .data(let data): + + return [Constants.version: data.version, + Constants.senderPublicKey: data.senderPublicKey, + Constants.fee: data.fee, + Constants.timestamp: data.timestamp, + Constants.proofs: data.proofs, + Constants.type: data.type, + Constants.data: data.data.dataByParams] + + case .transfer(let model): + + return [Constants.type: model.type, + Constants.senderPublicKey : model.senderPublicKey, + Constants.fee: model.fee, + Constants.timestamp: model.timestamp, + Constants.proofs: model.proofs, + Constants.version: model.version, + Constants.recipient: model.recipient, + Constants.assetId: model.assetId.normalizeWavesAssetId, + Constants.feeAssetId: model.feeAssetId.normalizeWavesAssetId, + Constants.amount: model.amount, + Constants.attachment: model.attachment] + case .invokeScript(let model): + + var params = [Constants.version: model.version, + Constants.senderPublicKey: model.senderPublicKey, + Constants.fee: model.fee, + Constants.timestamp: model.timestamp, + Constants.proofs: model.proofs, + Constants.type: model.type] as [String : Any] + + params["feeAssetId"] = model.feeAssetId?.normalizeToNullWavesAssetId + params["dApp"] = model.dApp + + if let call = model.call { + params["call"] = call.params() + } + + params["payment"] = model.payment.map { $0.params() } + + return params + + case .reissue(let model): + + var params = [Constants.version: model.version, + Constants.senderPublicKey: model.senderPublicKey, + Constants.fee: model.fee, + Constants.timestamp: model.timestamp, + Constants.proofs: model.proofs, + Constants.type: model.type] as [String : Any] + + params["assetId"] = model.assetId.normalizeWavesAssetId + params["quantity"] = model.quantity + params["reissuable"] = model.isReissuable + + return params + + case .issue(let model): + + var params = [Constants.version: model.version, + Constants.senderPublicKey: model.senderPublicKey, + Constants.fee: model.fee, + Constants.timestamp: model.timestamp, + Constants.proofs: model.proofs, + Constants.type: model.type] as [String : Any] + + params["name"] = model.name + params["description"] = model.description + params["quantity"] = model.quantity + params["decimals"] = model.decimals + params["reissuable"] = model.isReissuable + params["script"] = model.script + + return params + + case .massTransfer(let model): + + var params = [Constants.type: model.type, + Constants.senderPublicKey : model.senderPublicKey, + Constants.fee: model.fee, + Constants.timestamp: model.timestamp, + Constants.proofs: model.proofs, + Constants.version: model.version] as [String : Any] + + params[Constants.attachment] = model.attachment + + params["assetId"] = model.assetId.normalizeWavesAssetId + params["transfers"] = model.transfers.map { + return ["recipient": $0.recipient, "amount": $0.amount] + } + + return params + + case .setScript(let model): + + var params = [Constants.type: model.type, + Constants.senderPublicKey : model.senderPublicKey, + Constants.fee: model.fee, + Constants.timestamp: model.timestamp, + Constants.proofs: model.proofs, + Constants.version: model.version] as [String : Any] + + params["script"] = model.script + + return params + + case .setAssetScript(let model): + + var params = [Constants.type: model.type, + Constants.senderPublicKey : model.senderPublicKey, + Constants.fee: model.fee, + Constants.timestamp: model.timestamp, + Constants.proofs: model.proofs, + Constants.version: model.version] as [String : Any] + + params["script"] = model.script + params["assetId"] = model.assetId.normalizeWavesAssetId + + return params + + case .sponsorship(let model): + + var params = [Constants.type: model.type, + Constants.senderPublicKey : model.senderPublicKey, + Constants.fee: model.fee, + Constants.timestamp: model.timestamp, + Constants.proofs: model.proofs, + Constants.version: model.version] as [String : Any] + + params["minSponsoredAssetFee"] = model.minSponsoredAssetFee + params["assetId"] = model.assetId.normalizeWavesAssetId + + return params + } + } + +} + +extension NodeService.Target { + + struct Transaction { + + public enum Kind { + + case list(address: String, limit: Int) + + case info(id: String) + + case broadcast(NodeService.Query.Transaction) + + case calculateFee(NodeService.Query.Transaction) + } + + var kind: Kind + var nodeUrl: URL + } +} + +extension NodeService.Target.Transaction: NodeTargetType { + var modelType: Encodable.Type { + return String.self + } + + var path: String { + switch kind { + case .list(let address, let limit): + return Constants.transactions + "/" + Constants.address + "/" + "\(address)".urlEscaped + "/" + Constants.limit + "/" + "\(limit)".urlEscaped + + case .info(let id): + return Constants.transactions + "/" + Constants.info + "/" + "\(id)".urlEscaped + + case .broadcast: + return Constants.transactions + "/" + Constants.broadcast + + case .calculateFee: + return Constants.transactions + "/" + Constants.calculateFee + + } + } + + var method: Moya.Method { + switch kind { + case .list, .info: + return .get + case .broadcast, .calculateFee: + return .post + } + } + + var task: Task { + switch kind { + case .list, .info: + return .requestPlain + + case .broadcast(let specification): + return .requestParameters(parameters: specification.params, encoding: JSONEncoding.default) + + case .calculateFee(let specification): + return .requestParameters(parameters: specification.params, encoding: JSONEncoding.default) + } + } +} + +fileprivate extension Array where Element == NodeService.Query.Transaction.Data.Value { + + var dataByParams: [[String: Any]] { + + var list: [[String: Any]] = .init() + + for value in self { + list.append(value.params()) + } + + return list + } +} + +fileprivate extension NodeService.Query.Transaction.Data.Value { + + func params() -> [String: Any] { + + var params: [String: Any] = .init() + + params["key"] = self.key + + guard let value = self.value else { return params } + + switch value { + case .integer(let number): + params["type"] = "integer" + params["value"] = number + + case .boolean(let flag): + params["type"] = "boolean" + params["value"] = flag + + case .string(let txt): + params["type"] = "string" + params["value"] = txt + + case .binary(let binary): + params["type"] = "binary" + params["value"] = binary + } + + return params + } +} + +fileprivate extension NodeService.Query.Transaction.InvokeScript.Call { + + func params() -> [String: Any] { + + var params: [String: Any] = .init() + + params["function"] = self.function + params["args"] = self.args.map { $0.params() } + + return params + } +} + +fileprivate extension NodeService.Query.Transaction.InvokeScript.Arg { + + func params() -> [String: Any] { + + var params: [String: Any] = .init() + + switch self.value { + case .binary(let value): + params["type"] = "binary" + params["value"] = value + + case .bool(let value): + params["type"] = "boolean" + params["value"] = value + + case .integer(let value): + params["type"] = "integer" + params["value"] = value + + case .string(let value): + params["type"] = "string" + params["value"] = value + } + + return params + } +} + +fileprivate extension NodeService.Query.Transaction.InvokeScript.Payment { + + func params() -> [String: Any] { + + var params: [String: Any] = .init() + + params["amount"] = self.amount + params["assetId"] = self.assetId.isEmpty == true ? NSNull() : self.assetId.normalizeToNullWavesAssetId + + return params + } +} diff --git a/Sources/WavesSDK/Services/Node/Targets/UtilsNodeTarget.swift b/Sources/WavesSDK/Services/Node/Targets/UtilsNodeTarget.swift new file mode 100644 index 0000000..cb9c011 --- /dev/null +++ b/Sources/WavesSDK/Services/Node/Targets/UtilsNodeTarget.swift @@ -0,0 +1,70 @@ +// +// UtilsNodeTarget.swift +// Alamofire +// +// Created by rprokofev on 30/04/2019. +// + +import Foundation + +import Moya + +extension NodeService.Target { + + struct Utils { + enum Kind { + case time + + case transactionSerialize(NodeService.Query.Transaction) + + case scriptEvaluate(String, String) + } + + var nodeUrl: URL + let kind: Kind + } +} + +extension NodeService.Target.Utils: NodeTargetType { + + private enum Constants { + static let utils = "utils" + static let time = "time" + } + + var path: String { + switch kind { + case .time: + return Constants.utils + "/" + Constants.time + + case .transactionSerialize: + + return "/utils/transactionSerialize" + + case .scriptEvaluate(let address, _): + return Constants.utils + "/script/evaluate/" + address + } + } + + var method: Moya.Method { + switch kind { + case .time: + return .get + case .transactionSerialize, .scriptEvaluate: + return .post + } + } + + var task: Task { + switch kind { + case .time: + return .requestPlain + + case .transactionSerialize(let specification): + return .requestParameters(parameters: specification.params, encoding: JSONEncoding.default) + case .scriptEvaluate(_, let expr): + return .requestParameters(parameters: ["expr": expr], encoding: JSONEncoding.default) + } + } +} + diff --git a/Sources/WavesSDK/Services/ServicePlugIns/DebugServicePlugin.swift b/Sources/WavesSDK/Services/ServicePlugIns/DebugServicePlugin.swift new file mode 100644 index 0000000..fd8428c --- /dev/null +++ b/Sources/WavesSDK/Services/ServicePlugIns/DebugServicePlugin.swift @@ -0,0 +1,69 @@ +// +// DebugServicePlugin.swift +// +// +// Created by Leonardo Marques on 27/7/22. +// + +import Foundation +import Moya +import WebKit + +/** + * + * Plugin to debug network requests. It is added to all services if the library is initialized with debug = true + * + */ + +final class DebugServicePlugin: PluginType { + private var userAgent: String = "" + + private var webView: WKWebView? + + static let serialQueue = DispatchQueue(label: "DebugServicePlugin") + static let serialQueueWebView = DispatchQueue(label: "DebugServicePlugin.webView") + + init() { + DispatchQueue.main.async { [weak self] in + self?.webView = WKWebView(frame: CGRect.zero) + self?.webView?.evaluateJavaScript("navigator.userAgent", completionHandler: { [weak self] result, _ in + if let userAgent = result as? String { + self?.userAgent = userAgent + } else { + self?.userAgent = "" + } + }) + } + } + + func prepare(_ request: URLRequest, target _: TargetType) -> URLRequest { + var mRq = request + + let bundle = Bundle.main.bundleIdentifier ?? "" + + // 0 -> WavesSDKVersionNumber + let requestUserAgent = "\(userAgent) WavesSDK/\(0) DeviceId/\(WavesDevice.uuid) AppId/\(bundle)" + + mRq.setValue(requestUserAgent, forHTTPHeaderField: "User-Agent") + + print(mRq) + + return mRq + } + + /// Called immediately before a request is sent over the network (or stubbed). + func willSend(_: RequestType, target _: TargetType) { + + } + + /// Called after a response has been received, but before the MoyaProvider has invoked its completion handler. + func didReceive(_: Result, target _: TargetType) { + + } + + /// Called to modify a result before completion. + func process(_ result: Result, target _: TargetType) -> Result { + + return result + } +} diff --git a/Sources/WavesSDK/Services/ServicePlugIns/ServicesPlugins.swift b/Sources/WavesSDK/Services/ServicePlugIns/ServicesPlugins.swift new file mode 100644 index 0000000..52322a3 --- /dev/null +++ b/Sources/WavesSDK/Services/ServicePlugIns/ServicesPlugins.swift @@ -0,0 +1,23 @@ +// +// ServicesPlugins.swift +// +// +// Created by Leonardo Marques on 27/7/22. +// + +import Foundation +import Moya + +public struct ServicesPlugins { + public let data: [PluginType] + public let node: [PluginType] + public let matcher: [PluginType] + + public init(data: [PluginType] = [], + node: [PluginType] = [], + matcher: [PluginType] = []) { + self.data = data + self.node = node + self.matcher = matcher + } +} diff --git a/WavesSDK/Sources/Signature/SignatureProtocol.swift b/Sources/WavesSDK/Signature/SignatureProtocol.swift similarity index 98% rename from WavesSDK/Sources/Signature/SignatureProtocol.swift rename to Sources/WavesSDK/Signature/SignatureProtocol.swift index 33ba261..61b904f 100644 --- a/WavesSDK/Sources/Signature/SignatureProtocol.swift +++ b/Sources/WavesSDK/Signature/SignatureProtocol.swift @@ -8,7 +8,7 @@ import Foundation import WavesSDKCrypto -import WavesSDKExtensions + public protocol SignatureProtocol { diff --git a/Sources/WavesSDK/Signature/TransactionSign.swift b/Sources/WavesSDK/Signature/TransactionSign.swift new file mode 100644 index 0000000..a055c14 --- /dev/null +++ b/Sources/WavesSDK/Signature/TransactionSign.swift @@ -0,0 +1,354 @@ +// +// TransactionSigning.swift +// WavesSDKExample +// +// Created by rprokofev on 28.06.2019. +// Copyright Β© 2019 Waves. All rights reserved. +// + +import Foundation +import WavesSDKCrypto + + +public protocol TransactionSign { + mutating func sign(seed: WavesSDKCrypto.Seed) + + mutating func sign(privateKey: WavesSDKCrypto.PrivateKey) + + mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) +} + +extension TransactionSign { + public mutating func sign(seed: WavesSDKCrypto.Seed) { + sign(privateKey: nil, seed: seed) + } + + public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey) { + sign(privateKey: privateKey, seed: nil) + } +} + +// MARK: Transfer + +extension NodeService.Query.Transaction.Transfer: TransactionSign { + public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { + let signature = TransactionSignatureV2.transfer(.init(senderPublicKey: senderPublicKey, + recipient: recipient, + assetId: assetId, + amount: amount, + fee: fee, + attachment: attachment, + feeAssetID: feeAssetId, + chainId: chainId, + timestamp: timestamp)) + + if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { + proofs = [proof] + } + + if let seed = seed, let proof: String = signature.signature(seed: seed) { + proofs = [proof] + } + } +} + +// MARK: Data + +extension NodeService.Query.Transaction.Data: TransactionSign { + private static var DATA_TX_SIZE_WITHOUT_ENTRIES: Int = 52 + private static var DATA_ENTRIES_BYTE_LIMIT = 100 * 1024 - DATA_TX_SIZE_WITHOUT_ENTRIES + + public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { + let signature = TransactionSignatureV1.data(.init(fee: fee, + data: data + .map { TransactionSignatureV1.Structure.Data.Value(key: $0.key, + value: $0 + .kindForSignatureV1Value) + }, + chainId: chainId, + senderPublicKey: senderPublicKey, + timestamp: timestamp)) + + if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { + proofs = [proof] + } + + if let seed = seed, let proof: String = signature.signature(seed: seed) { + proofs = [proof] + } + } +} + +extension NodeService.Query.Transaction.Data.Value { + var kindForSignatureV1Value: TransactionSignatureV1.Structure.Data.Value.Kind? { + guard let value = self.value else { return nil } + + switch value { + case let .binary(value): + return .binary(value) + + case let .boolean(value): + return .boolean(value) + + case let .integer(value): + return .integer(value) + + case let .string(value): + return .string(value) + } + } +} + +// MARK: InvokeScript + +extension NodeService.Query.Transaction.InvokeScript: TransactionSign { + public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { + let signature = TransactionSignatureV1 + .invokeScript(TransactionSignatureV1.Structure.InvokeScript(senderPublicKey: senderPublicKey, + fee: fee, + chainId: chainId, + timestamp: timestamp, + feeAssetId: feeAssetId, + dApp: dApp, + call: call? + .callSignature, + payment: payment + .map { + TransactionSignatureV1 + .Structure.InvokeScript + .Payment(amount: $0 + .amount, + assetId: $0 + .assetId) + })) + if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { + proofs = [proof] + } + + if let seed = seed, let proof: String = signature.signature(seed: seed) { + proofs = [proof] + } + } +} + +extension NodeService.Query.Transaction.InvokeScript.Call { + var callSignature: TransactionSignatureV1.Structure.InvokeScript.Call { + return TransactionSignatureV1.Structure.InvokeScript + .Call(function: function, args: args.map { (arg) -> TransactionSignatureV1.Structure.InvokeScript.Arg in + switch arg.value { + case let .binary(value): + return TransactionSignatureV1.Structure.InvokeScript.Arg(value: .binary(value)) + + case let .bool(value): + return TransactionSignatureV1.Structure.InvokeScript.Arg(value: .bool(value)) + + case let .integer(value): + return TransactionSignatureV1.Structure.InvokeScript.Arg(value: .integer(value)) + + case let .string(value): + return TransactionSignatureV1.Structure.InvokeScript.Arg(value: .string(value)) + } + }) + } +} + +// MARK: Burn + +extension NodeService.Query.Transaction.Burn: TransactionSign { + public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { + let signature = TransactionSignatureV2 + .burn(.init(assetID: assetId, quantity: quantity, fee: fee, chainId: chainId, senderPublicKey: senderPublicKey, + timestamp: timestamp)) + + if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { + proofs = [proof] + } + + if let seed = seed, let proof: String = signature.signature(seed: seed) { + proofs = [proof] + } + } +} + +// MARK: Reissue + +extension NodeService.Query.Transaction.Reissue: TransactionSign { + public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { + let signature = TransactionSignatureV2 + .reissue(.init(assetId: assetId, fee: fee, chainId: chainId, senderPublicKey: senderPublicKey, timestamp: timestamp, + quantity: quantity, isReissuable: isReissuable)) + + if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { + proofs = [proof] + } + + if let seed = seed, let proof: String = signature.signature(seed: seed) { + proofs = [proof] + } + } +} + +// MARK: Issue + +extension NodeService.Query.Transaction.Issue: TransactionSign { + public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { + let signature = TransactionSignatureV2 + .issue(.init(script: script, fee: fee, chainId: chainId, senderPublicKey: senderPublicKey, timestamp: timestamp, + quantity: quantity, isReissuable: isReissuable, name: name, description: description, + decimals: decimals)) + + if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { + proofs = [proof] + } + + if let seed = seed, let proof: String = signature.signature(seed: seed) { + proofs = [proof] + } + } +} + +// MARK: MassTransfer + +extension NodeService.Query.Transaction.MassTransfer: TransactionSign { + public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { + let signature = TransactionSignatureV1.massTransfer(.init(fee: fee, + chainId: chainId, + senderPublicKey: senderPublicKey, + timestamp: timestamp, + assetId: assetId, + attachment: attachment, + transfers: transfers + .map { .init(recipient: $0.recipient, amount: $0.amount) })) + + if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { + proofs = [proof] + } + + if let seed = seed, let proof: String = signature.signature(seed: seed) { + proofs = [proof] + } + } +} + +// MARK: Lease + +extension NodeService.Query.Transaction.Lease: TransactionSign { + public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { + let signature = TransactionSignatureV2.startLease(.init(recipient: recipient, + amount: amount, + fee: fee, + chainId: chainId, + senderPublicKey: senderPublicKey, + timestamp: timestamp)) + + if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { + proofs = [proof] + } + + if let seed = seed, let proof: String = signature.signature(seed: seed) { + proofs = [proof] + } + } +} + +// MARK: LeaseCancel + +extension NodeService.Query.Transaction.LeaseCancel: TransactionSign { + public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { + let signature = TransactionSignatureV2.cancelLease(.init(leaseId: leaseId, + fee: fee, + chainId: chainId, + senderPublicKey: senderPublicKey, + timestamp: timestamp)) + + if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { + proofs = [proof] + } + + if let seed = seed, let proof: String = signature.signature(seed: seed) { + proofs = [proof] + } + } +} + +// MARK: Alias + +extension NodeService.Query.Transaction.Alias: TransactionSign { + public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { + let signature = TransactionSignatureV2.createAlias(.init(alias: name, + fee: fee, + chainId: chainId, + senderPublicKey: senderPublicKey, + timestamp: timestamp)) + + if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { + proofs = [proof] + } + + if let seed = seed, let proof: String = signature.signature(seed: seed) { + proofs = [proof] + } + } +} + +// MARK: SetScript + +extension NodeService.Query.Transaction.SetScript: TransactionSign { + public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { + let signature = TransactionSignatureV1.setScript(.init(fee: fee, + chainId: chainId, + senderPublicKey: senderPublicKey, + timestamp: timestamp, + script: script)) + + if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { + proofs = [proof] + } + + if let seed = seed, let proof: String = signature.signature(seed: seed) { + proofs = [proof] + } + } +} + +// MARK: SetScript + +extension NodeService.Query.Transaction.SetAssetScript: TransactionSign { + public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { + let signature = TransactionSignatureV1.setAssetScript(.init(fee: fee, + chainId: chainId, + senderPublicKey: senderPublicKey, + timestamp: timestamp, + assetId: assetId, + script: script)) + + if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { + proofs = [proof] + } + + if let seed = seed, let proof: String = signature.signature(seed: seed) { + proofs = [proof] + } + } +} + +// MARK: Sponsorship + +extension NodeService.Query.Transaction.Sponsorship: TransactionSign { + public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { + let signature = TransactionSignatureV1.sponsorship(.init(fee: fee, + chainId: chainId, + senderPublicKey: senderPublicKey, + timestamp: timestamp, + assetId: assetId, + minSponsoredAssetFee: minSponsoredAssetFee)) + + if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { + proofs = [proof] + } + + if let seed = seed, let proof: String = signature.signature(seed: seed) { + proofs = [proof] + } + } +} diff --git a/WavesSDK/Sources/Signature/TransactionSignatureProtocol.swift b/Sources/WavesSDK/Signature/TransactionSignatureProtocol.swift similarity index 100% rename from WavesSDK/Sources/Signature/TransactionSignatureProtocol.swift rename to Sources/WavesSDK/Signature/TransactionSignatureProtocol.swift diff --git a/WavesSDK/Sources/Signature/TransactionSignatureV1.swift b/Sources/WavesSDK/Signature/TransactionSignatureV1.swift similarity index 97% rename from WavesSDK/Sources/Signature/TransactionSignatureV1.swift rename to Sources/WavesSDK/Signature/TransactionSignatureV1.swift index 4a26269..80966c5 100644 --- a/WavesSDK/Sources/Signature/TransactionSignatureV1.swift +++ b/Sources/WavesSDK/Signature/TransactionSignatureV1.swift @@ -8,7 +8,7 @@ import Foundation import WavesSDKCrypto -import WavesSDKExtensions + public extension TransactionSignatureV1 { @@ -176,12 +176,12 @@ public extension TransactionSignatureV1 { public let fee: Int64 public let chainId: UInt8 public let timestamp: Int64 - public let feeAssetId: String + public let feeAssetId: String? public let dApp: String public let call: Call? public let payment: [Payment] - public init(senderPublicKey: WavesSDKCrypto.PublicKey, fee: Int64, chainId: UInt8, timestamp: Int64, feeAssetId: String, dApp: String, call: Call?, payment: [Payment]) { + public init(senderPublicKey: WavesSDKCrypto.PublicKey, fee: Int64, chainId: UInt8, timestamp: Int64, feeAssetId: String?, dApp: String, call: Call?, payment: [Payment]) { self.senderPublicKey = senderPublicKey self.fee = fee self.chainId = chainId @@ -260,7 +260,7 @@ public extension TransactionSignatureV1 { dApp += WavesCrypto.shared.base58decode(input: model.dApp) ?? [] } - let feeAssetId = model.feeAssetId.normalizeWavesAssetId + let feeAssetId = model.feeAssetId?.normalizeToNullWavesAssetId var signature: [UInt8] = [] signature += toByteArray(self.typeByte) @@ -271,7 +271,11 @@ public extension TransactionSignatureV1 { signature += model.callBytes signature += model.paymentBytes signature += toByteArray(model.fee) - signature += feeAssetId.isEmpty ? [UInt8(0)] : ([UInt8(1)] + (WavesCrypto.shared.base58decode(input: feeAssetId) ?? [])) + if let feeAssetId=feeAssetId as? String, !feeAssetId.isEmpty{ + signature += ([UInt8(1)] + (WavesCrypto.shared.base58decode(input: feeAssetId) ?? [])) + }else{ + signature += [UInt8(0)] + } signature += toByteArray(model.timestamp) return signature diff --git a/WavesSDK/Sources/Signature/TransactionSignatureV2.swift b/Sources/WavesSDK/Signature/TransactionSignatureV2.swift similarity index 99% rename from WavesSDK/Sources/Signature/TransactionSignatureV2.swift rename to Sources/WavesSDK/Signature/TransactionSignatureV2.swift index 3833d22..16fa444 100644 --- a/WavesSDK/Sources/Signature/TransactionSignatureV2.swift +++ b/Sources/WavesSDK/Signature/TransactionSignatureV2.swift @@ -8,7 +8,7 @@ import Foundation import WavesSDKCrypto -import WavesSDKExtensions + public extension TransactionSignatureV2 { diff --git a/WavesSDK/Sources/Signature/TransactionType.swift b/Sources/WavesSDK/Signature/TransactionType.swift similarity index 100% rename from WavesSDK/Sources/Signature/TransactionType.swift rename to Sources/WavesSDK/Signature/TransactionType.swift diff --git a/WavesSDKExtensions/Sources/Extensions/Any+Name.swift b/Sources/WavesSDK/Utils/Extensions/Any+Name.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/Any+Name.swift rename to Sources/WavesSDK/Utils/Extensions/Any+Name.swift diff --git a/WavesSDKExtensions/Sources/Extensions/Array/Array+Extension.swift b/Sources/WavesSDK/Utils/Extensions/Array/Array+Extension.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/Array/Array+Extension.swift rename to Sources/WavesSDK/Utils/Extensions/Array/Array+Extension.swift diff --git a/WavesSDKExtensions/Sources/Extensions/Array/Array+Sort.swift b/Sources/WavesSDK/Utils/Extensions/Array/Array+Sort.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/Array/Array+Sort.swift rename to Sources/WavesSDK/Utils/Extensions/Array/Array+Sort.swift diff --git a/WavesSDKExtensions/Sources/Extensions/Assert+Message.swift b/Sources/WavesSDK/Utils/Extensions/Assert+Message.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/Assert+Message.swift rename to Sources/WavesSDK/Utils/Extensions/Assert+Message.swift diff --git a/WavesSDKExtensions/Sources/Extensions/Bundle+Version.swift b/Sources/WavesSDK/Utils/Extensions/Bundle+Version.swift similarity index 65% rename from WavesSDKExtensions/Sources/Extensions/Bundle+Version.swift rename to Sources/WavesSDK/Utils/Extensions/Bundle+Version.swift index 7314fe0..37e7813 100644 --- a/WavesSDKExtensions/Sources/Extensions/Bundle+Version.swift +++ b/Sources/WavesSDK/Utils/Extensions/Bundle+Version.swift @@ -6,7 +6,8 @@ // Copyright Β© 2018 Waves Platform. All rights reserved. // -import UIKit +import CwlUtils +import Foundation import CoreTelephony private struct DeviceIdStorage: TSUD { @@ -22,11 +23,11 @@ private struct DeviceIdStorage: TSUD { } } -public extension UIDevice { +public struct WavesDevice { var osVersion: String { get { - return UIDevice.current.systemVersion + Sysctl.version } } @@ -38,7 +39,7 @@ public extension UIDevice { var deviceModel: String { get { - return UIDevice.current.modelName + Sysctl.model } } @@ -47,16 +48,8 @@ public extension UIDevice { return NSLocale.preferredLanguages.first ?? "" } } - - var carrierName: String { - get { - let info = CTTelephonyNetworkInfo() - guard let carrier = info.subscriberCellularProvider else { return "" } - return carrier.carrierName ?? "" - } - } - static var uuid: String { + public static var uuid: String { if let id = DeviceIdStorage.value { return id @@ -72,9 +65,7 @@ public extension UIDevice { "\nOS Version: \(osVersion)" + "\nApp Version: \(appVersion)" + "\nDevice Model: \(deviceModel)" + - "\nLanguage: \(language)" + - "\nCarrier: \(carrierName)" + - "\nDevice ID: \(UIDevice.uuid)" + "\nLanguage: \(language)" } } @@ -103,15 +94,4 @@ public extension Bundle { } } -fileprivate extension UIDevice { - var modelName: String { - var systemInfo = utsname() - uname(&systemInfo) - let machineMirror = Mirror(reflecting: systemInfo.machine) - let identifier = machineMirror.children.reduce("") { identifier, element in - guard let value = element.value as? Int8, value != 0 else { return identifier } - return identifier + String(UnicodeScalar(UInt8(value))) - } - return identifier - } -} + diff --git a/WavesSDKExtensions/Sources/Extensions/Date/DateExtension+Sync.swift b/Sources/WavesSDK/Utils/Extensions/Date/DateExtension+Sync.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/Date/DateExtension+Sync.swift rename to Sources/WavesSDK/Utils/Extensions/Date/DateExtension+Sync.swift diff --git a/WavesSDKExtensions/Sources/Extensions/Date/DateFormatter+ISO.swift b/Sources/WavesSDK/Utils/Extensions/Date/DateFormatter+ISO.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/Date/DateFormatter+ISO.swift rename to Sources/WavesSDK/Utils/Extensions/Date/DateFormatter+ISO.swift diff --git a/WavesSDKExtensions/Sources/Extensions/Date/DateFormatter+Once.swift b/Sources/WavesSDK/Utils/Extensions/Date/DateFormatter+Once.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/Date/DateFormatter+Once.swift rename to Sources/WavesSDK/Utils/Extensions/Date/DateFormatter+Once.swift diff --git a/WavesSDKExtensions/Sources/Extensions/Dictionary+Json.swift b/Sources/WavesSDK/Utils/Extensions/Dictionary+Json.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/Dictionary+Json.swift rename to Sources/WavesSDK/Utils/Extensions/Dictionary+Json.swift diff --git a/WavesSDKExtensions/Sources/Extensions/DispatchTimeInterval.swift b/Sources/WavesSDK/Utils/Extensions/DispatchTimeInterval.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/DispatchTimeInterval.swift rename to Sources/WavesSDK/Utils/Extensions/DispatchTimeInterval.swift diff --git a/WavesSDKExtensions/Sources/Extensions/Encodable+Dictionary.swift b/Sources/WavesSDK/Utils/Extensions/Encodable+Dictionary.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/Encodable+Dictionary.swift rename to Sources/WavesSDK/Utils/Extensions/Encodable+Dictionary.swift diff --git a/WavesSDKExtensions/Sources/Extensions/JSONDecoder+TimestampDiff.swift b/Sources/WavesSDK/Utils/Extensions/JSONDecoder+TimestampDiff.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/JSONDecoder+TimestampDiff.swift rename to Sources/WavesSDK/Utils/Extensions/JSONDecoder+TimestampDiff.swift diff --git a/WavesSDKExtensions/Sources/Extensions/JSONDecoder/JSONDecoder+JSON.swift b/Sources/WavesSDK/Utils/Extensions/JSONDecoder/JSONDecoder+JSON.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/JSONDecoder/JSONDecoder+JSON.swift rename to Sources/WavesSDK/Utils/Extensions/JSONDecoder/JSONDecoder+JSON.swift diff --git a/WavesSDKExtensions/Sources/Extensions/JSONDecoder/JSONDecoder+Rx.swift b/Sources/WavesSDK/Utils/Extensions/JSONDecoder/JSONDecoder+Rx.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/JSONDecoder/JSONDecoder+Rx.swift rename to Sources/WavesSDK/Utils/Extensions/JSONDecoder/JSONDecoder+Rx.swift diff --git a/WavesSDKExtensions/Sources/Extensions/NSObject+AssociatedObject.swift b/Sources/WavesSDK/Utils/Extensions/NSObject+AssociatedObject.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/NSObject+AssociatedObject.swift rename to Sources/WavesSDK/Utils/Extensions/NSObject+AssociatedObject.swift diff --git a/WavesSDKExtensions/Sources/Extensions/NumberFormatter+Once.swift b/Sources/WavesSDK/Utils/Extensions/NumberFormatter+Once.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/NumberFormatter+Once.swift rename to Sources/WavesSDK/Utils/Extensions/NumberFormatter+Once.swift diff --git a/WavesSDKExtensions/Sources/Extensions/ObjectDestructor.swift b/Sources/WavesSDK/Utils/Extensions/ObjectDestructor.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/ObjectDestructor.swift rename to Sources/WavesSDK/Utils/Extensions/ObjectDestructor.swift diff --git a/Sources/WavesSDK/Utils/Extensions/ObservableType+Weak.swift b/Sources/WavesSDK/Utils/Extensions/ObservableType+Weak.swift new file mode 100644 index 0000000..63552f4 --- /dev/null +++ b/Sources/WavesSDK/Utils/Extensions/ObservableType+Weak.swift @@ -0,0 +1,127 @@ +// +// ObservableType+Wea.swift +// WavesWallet-iOS +// +// Created by mefilt on 10.07.2018. +// Copyright Β© 2018 Waves Platform. All rights reserved. +// + +import Foundation +import RxSwift + +public extension ObservableType { + func `do`(weak obj: WeakObject, + onNext: ((WeakObject, Element) throws -> Swift.Void)? = nil, + onError: ((WeakObject, Error) throws -> Swift.Void)? = nil, + onCompleted: ((WeakObject) throws -> Swift.Void)? = nil, + onSubscribe: ((WeakObject) -> Void)? = nil, + onSubscribed: ((WeakObject) -> Void)? = nil, + onDispose: ((WeakObject) -> Void)? = nil) -> RxSwift.Observable { + return `do`(onNext: { [weak obj] element in + + guard let obj = obj else { return } + try onNext?(obj, element) + }, onError: { [weak obj] error in + + guard let obj = obj else { return } + try onError?(obj, error) + }, onCompleted: { [weak obj] () in + + guard let obj = obj else { return } + try onCompleted?(obj) + }, onSubscribe: { [weak obj] () in + + guard let obj = obj else { return } + onSubscribe?(obj) + }, onSubscribed: { [weak obj] () in + + guard let obj = obj else { return } + onSubscribed?(obj) + }, onDispose: { [weak obj] () in + + guard let obj = obj else { return } + onDispose?(obj) + }) + } + + func catchError(weak obj: WeakObject, handler: @escaping (WeakObject, Error) throws -> RxSwift.Observable) -> RxSwift.Observable { + return self.catch { [weak obj] (error) -> Observable in + + guard let obj = obj else { return Observable.never() } + + return try handler(obj, error) + } + } + + func flatMap(weak obj: WeakObject, + selector: @escaping (_ weak: WeakObject, Element) throws -> O) -> Observable { + return flatMap { [weak obj] (element) -> Observable in + + guard let obj = obj else { return Observable.never() } + + return try selector(obj, element).asObservable() + } + } + + func flatMap(weak obj: WeakObject, + selector: @escaping (WeakObject) -> (Self.Element) -> O) -> Observable { + return flatMap { [weak obj] (element) -> Observable in + + guard let obj = obj else { return Observable.never() } + + return selector(obj)(element).asObservable() + } + } + + func subscribe(weak obj: WeakObject, + onError: ((WeakObject, Error) -> Void)? = nil) -> Disposable { + return subscribe(weak: obj, onNext: nil, onError: onError, onCompleted: nil, onDisposed: nil) + } + + func subscribe(weak obj: WeakObject, + onCompleted: ((WeakObject) -> Void)? = nil) -> Disposable { + return subscribe(weak: obj, onNext: nil, onError: nil, onCompleted: onCompleted, onDisposed: nil) + } + + func subscribe(weak obj: WeakObject, _ on: @escaping (WeakObject, RxSwift.Event) -> Void) -> Disposable { + return subscribe { [weak obj] event in + + guard let obj = obj else { return } + on(obj, event) + } + } + + func subscribe(weak obj: WeakObject, + onNext: ((WeakObject, Self.Element) -> Void)? = nil, + onError: ((WeakObject, Error) -> Void)? = nil, + onCompleted: ((WeakObject) -> Void)? = nil, + onDisposed: ((WeakObject) -> Void)? = nil) -> Disposable { + let disposable: Disposable + + if let disposed = onDisposed { + disposable = Disposables.create { [weak obj] in + guard let obj = obj else { return } + disposed(obj) + } + } else { + disposable = Disposables.create() + } + + let observer = AnyObserver { [weak obj] (event: RxSwift.Event) in + guard let obj = obj else { return } + switch event { + case .next(let value): + onNext?(obj, value) + case .error(let error): + onError?(obj, error) + disposable.dispose() + case .completed: + onCompleted?(obj) + disposable.dispose() + } + } + + return Disposables.create(asObservable().subscribe(observer), disposable) + } +} diff --git a/WavesSDKExtensions/Sources/Extensions/Optional+Hashable.swift b/Sources/WavesSDK/Utils/Extensions/Optional+Hashable.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/Optional+Hashable.swift rename to Sources/WavesSDK/Utils/Extensions/Optional+Hashable.swift diff --git a/WavesSDKExtensions/Sources/Extensions/RxSwift+Scheduler.swift b/Sources/WavesSDK/Utils/Extensions/RxSwift+Scheduler.swift similarity index 85% rename from WavesSDKExtensions/Sources/Extensions/RxSwift+Scheduler.swift rename to Sources/WavesSDK/Utils/Extensions/RxSwift+Scheduler.swift index 0c832eb..8e80398 100644 --- a/WavesSDKExtensions/Sources/Extensions/RxSwift+Scheduler.swift +++ b/Sources/WavesSDK/Utils/Extensions/RxSwift+Scheduler.swift @@ -18,8 +18,8 @@ public extension ObservableType { Makes the observable Subscribe to io thread and Observe on main thread */ func composeIoToMainThreads() -> Observable { - return self.subscribeOn(myWorkScheduler) - .observeOn(myDefaultScheduler) + return self.subscribe(on: myWorkScheduler) + .observe(on: myDefaultScheduler) } } diff --git a/WavesSDKExtensions/Sources/Extensions/String/String+Bytes.swift b/Sources/WavesSDK/Utils/Extensions/String/String+Bytes.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/String/String+Bytes.swift rename to Sources/WavesSDK/Utils/Extensions/String/String+Bytes.swift diff --git a/WavesSDKExtensions/Sources/Extensions/String/String+Escaped.swift b/Sources/WavesSDK/Utils/Extensions/String/String+Escaped.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/String/String+Escaped.swift rename to Sources/WavesSDK/Utils/Extensions/String/String+Escaped.swift diff --git a/WavesSDKExtensions/Sources/Extensions/String/String+UInt.swift b/Sources/WavesSDK/Utils/Extensions/String/String+UInt.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/String/String+UInt.swift rename to Sources/WavesSDK/Utils/Extensions/String/String+UInt.swift diff --git a/WavesSDKExtensions/Sources/Extensions/String/String+URL.swift b/Sources/WavesSDK/Utils/Extensions/String/String+URL.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/String/String+URL.swift rename to Sources/WavesSDK/Utils/Extensions/String/String+URL.swift diff --git a/WavesSDKExtensions/Sources/Extensions/String/String+Utils.swift b/Sources/WavesSDK/Utils/Extensions/String/String+Utils.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/String/String+Utils.swift rename to Sources/WavesSDK/Utils/Extensions/String/String+Utils.swift diff --git a/WavesSDKExtensions/Sources/Extensions/Thread+Assisstants.swift b/Sources/WavesSDK/Utils/Extensions/Thread+Assisstants.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/Thread+Assisstants.swift rename to Sources/WavesSDK/Utils/Extensions/Thread+Assisstants.swift diff --git a/WavesSDKExtensions/Sources/Extensions/UInt8+Assisstants.swift b/Sources/WavesSDK/Utils/Extensions/UInt8+Assisstants.swift similarity index 100% rename from WavesSDKExtensions/Sources/Extensions/UInt8+Assisstants.swift rename to Sources/WavesSDK/Utils/Extensions/UInt8+Assisstants.swift diff --git a/Sources/WavesSDK/Utils/Type/AnyCodable.swift b/Sources/WavesSDK/Utils/Type/AnyCodable.swift new file mode 100644 index 0000000..070b914 --- /dev/null +++ b/Sources/WavesSDK/Utils/Type/AnyCodable.swift @@ -0,0 +1,89 @@ +// +// AnyCodable.swift +// +// +// Created by Leonardo Marques on 3/8/22. +// + +import Foundation + +public struct AnyCodable: Decodable { + public var value: Any + + struct CodingKeys: CodingKey { + var stringValue: String + var intValue: Int? + init?(intValue: Int) { + self.stringValue = "\(intValue)" + self.intValue = intValue + } + init?(stringValue: String) { self.stringValue = stringValue } + } + + public init(value: Any) { + self.value = value + } + + public init(from decoder: Decoder) throws { + if let container = try? decoder.container(keyedBy: CodingKeys.self) { + var result = [String: Any]() + try container.allKeys.forEach { (key) throws in + result[key.stringValue] = try container.decode(AnyCodable.self, forKey: key).value + } + value = result + } else if var container = try? decoder.unkeyedContainer() { + var result = [Any]() + while !container.isAtEnd { + result.append(try container.decode(AnyCodable.self).value) + } + value = result + } else if let container = try? decoder.singleValueContainer() { + if let intVal = try? container.decode(Int.self) { + value = intVal + } else if let doubleVal = try? container.decode(Double.self) { + value = doubleVal + } else if let boolVal = try? container.decode(Bool.self) { + value = boolVal + } else if let stringVal = try? container.decode(String.self) { + value = stringVal + } else { + throw DecodingError.dataCorruptedError(in: container, debugDescription: "the container contains nothing serialisable") + } + } else { + throw DecodingError.dataCorrupted(DecodingError.Context(codingPath: decoder.codingPath, debugDescription: "Could not serialise")) + } + } +} + +extension AnyCodable: Encodable { + public func encode(to encoder: Encoder) throws { + if let array = value as? [Any] { + var container = encoder.unkeyedContainer() + for value in array { + let decodable = AnyCodable(value: value) + try container.encode(decodable) + } + } else if let dictionary = value as? [String: Any] { + var container = encoder.container(keyedBy: CodingKeys.self) + for (key, value) in dictionary { + let codingKey = CodingKeys(stringValue: key)! + let decodable = AnyCodable(value: value) + try container.encode(decodable, forKey: codingKey) + } + } else { + var container = encoder.singleValueContainer() + if let intVal = value as? Int { + try container.encode(intVal) + } else if let doubleVal = value as? Double { + try container.encode(doubleVal) + } else if let boolVal = value as? Bool { + try container.encode(boolVal) + } else if let stringVal = value as? String { + try container.encode(stringVal) + } else { + throw EncodingError.invalidValue(value, EncodingError.Context.init(codingPath: [], debugDescription: "The value is not encodable")) + } + + } + } +} diff --git a/WavesSDKExtensions/Sources/Type/SweetLogger/ObservableType+SweetLogger.swift b/Sources/WavesSDK/Utils/Type/SweetLogger/ObservableType+SweetLogger.swift similarity index 100% rename from WavesSDKExtensions/Sources/Type/SweetLogger/ObservableType+SweetLogger.swift rename to Sources/WavesSDK/Utils/Type/SweetLogger/ObservableType+SweetLogger.swift diff --git a/WavesSDKExtensions/Sources/Type/SweetLogger/SweetLogger.swift b/Sources/WavesSDK/Utils/Type/SweetLogger/SweetLogger.swift similarity index 100% rename from WavesSDKExtensions/Sources/Type/SweetLogger/SweetLogger.swift rename to Sources/WavesSDK/Utils/Type/SweetLogger/SweetLogger.swift diff --git a/WavesSDKExtensions/Sources/Type/SweetLogger/SweetLoggerConsole.swift b/Sources/WavesSDK/Utils/Type/SweetLogger/SweetLoggerConsole.swift similarity index 100% rename from WavesSDKExtensions/Sources/Type/SweetLogger/SweetLoggerConsole.swift rename to Sources/WavesSDK/Utils/Type/SweetLogger/SweetLoggerConsole.swift diff --git a/WavesSDKExtensions/Sources/Type/SweetLogger/SweetLoggerProtocol.swift b/Sources/WavesSDK/Utils/Type/SweetLogger/SweetLoggerProtocol.swift similarity index 100% rename from WavesSDKExtensions/Sources/Type/SweetLogger/SweetLoggerProtocol.swift rename to Sources/WavesSDK/Utils/Type/SweetLogger/SweetLoggerProtocol.swift diff --git a/WavesSDKExtensions/Sources/Type/TSUD.swift b/Sources/WavesSDK/Utils/Type/TSUD.swift similarity index 100% rename from WavesSDKExtensions/Sources/Type/TSUD.swift rename to Sources/WavesSDK/Utils/Type/TSUD.swift diff --git a/Sources/WavesSDK/WavesSDK.swift b/Sources/WavesSDK/WavesSDK.swift new file mode 100644 index 0000000..7aecfb6 --- /dev/null +++ b/Sources/WavesSDK/WavesSDK.swift @@ -0,0 +1,99 @@ +/* + * β–ˆβ–ˆβ•— β–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•— β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— + * β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•”β•β•β•β•β• + * β–ˆβ–ˆβ•‘ β–ˆβ•— β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— + * β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•”β•β•β• β•šβ•β•β•β•β–ˆβ–ˆβ•‘ + * β•šβ–ˆβ–ˆβ–ˆβ•”β–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β•šβ–ˆβ–ˆβ–ˆβ–ˆβ•”β• β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘ + * β•šβ•β•β•β•šβ•β•β• β•šβ•β• β•šβ•β• β•šβ•β•β•β• β•šβ•β•β•β•β•β•β•β•šβ•β•β•β•β•β•β• + * + * β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ•— + * β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β•šβ•β•β–ˆβ–ˆβ•”β•β•β•β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•”β•β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ•‘ + * β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•”β–ˆβ–ˆβ–ˆβ–ˆβ•”β–ˆβ–ˆβ•‘ + * β–ˆβ–ˆβ•”β•β•β•β• β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•”β•β•β• β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘ + * β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β•šβ•β• β–ˆβ–ˆβ•‘ + * β•šβ•β• β•šβ•β•β•β•β•β•β•β•šβ•β• β•šβ•β• β•šβ•β• β•šβ•β• β•šβ•β•β•β•β•β• β•šβ•β• β•šβ•β•β•šβ•β• β•šβ•β• + * + */ + +import Foundation +import Moya +import WavesSDKCrypto + + + +/** + * + * WavesSDK is library for easy and simple co-working Waves blockchain platform and app based on the + * reactive paradigm + * + * Library contains 3 parts: + * + * Waves Crypto – collection of functions to work with Waves basic types + * and crypto primitives used by Waves. + * + * Waves Models – data transfer objects collection of transactions and other models + * for work with Waves net services. + * The models release signification with private key + * + * Waves Services – net-services for sending transactions and getting data from blockchain + * and other Waves services + */ + +public final class WavesSDK { + + public private(set) var services: WavesServicesProtocol + + private var internalEnviroment: WavesEnvironment + + public var enviroment: WavesEnvironment { + get { + objc_sync_enter(self) + defer { objc_sync_exit(self) } + return internalEnviroment + } + + set { + objc_sync_enter(self) + defer { objc_sync_exit(self) } + internalEnviroment = newValue + + if var internalServices = services as? InternalWavesServiceProtocol { + internalServices.enviroment = newValue + } + } + } + + public private(set) static var shared: WavesSDK! + + + init(services: WavesServicesProtocol, enviroment: WavesEnvironment) { + self.services = services + internalEnviroment = enviroment + } + + public class func isInitialized() -> Bool { + return WavesSDK.shared != nil + } + + public class func initialization( servicesPlugins: ServicesPlugins = ServicesPlugins(), + enviroment: WavesEnvironment = WavesEnvironment(), + debug: Bool = true) { + + var dataPlugins = servicesPlugins.data + var nodePlugins = servicesPlugins.node + var matcherPlugins = servicesPlugins.matcher + + if debug { + dataPlugins.append(DebugServicePlugin()) + nodePlugins.append(DebugServicePlugin()) + matcherPlugins.append(DebugServicePlugin()) + } + + let services = WavesServices(enviroment: enviroment, + dataServicePlugins: dataPlugins, + nodeServicePlugins: nodePlugins, + matcherServicePlugins: matcherPlugins) + + WavesSDK.shared = WavesSDK(services: services, enviroment: enviroment) + } +} diff --git a/WavesSDK/Sources/WavesSDKConstants.swift b/Sources/WavesSDK/WavesSDKConstants.swift similarity index 90% rename from WavesSDK/Sources/WavesSDKConstants.swift rename to Sources/WavesSDK/WavesSDKConstants.swift index 9174780..36d33b0 100644 --- a/WavesSDK/Sources/WavesSDKConstants.swift +++ b/Sources/WavesSDK/WavesSDKConstants.swift @@ -7,7 +7,7 @@ // import Foundation -import WavesSDKExtensions + public enum WavesSDKConstants { public static let aliasNameMinLimitSymbols: Int = 4 @@ -16,7 +16,7 @@ public enum WavesSDKConstants { public static let WavesTransactionFeeAmount: Int64 = 100000 public static let WavesDecimals: Int = 8 public static let FiatDecimals: Int = 2 - public static let appstoreURL: URL = URL(string: "https://apps.apple.com/ua/app/id1233158971")! + //public static let appstoreURL: URL = URL(string: "https://apps.apple.com/ua/app/id1233158971")! public enum UrlScheme { #if DEBUG diff --git a/Sources/WavesSDKCrypto/Base58Encoder.swift b/Sources/WavesSDKCrypto/Base58Encoder.swift new file mode 100644 index 0000000..b0a4cd9 --- /dev/null +++ b/Sources/WavesSDKCrypto/Base58Encoder.swift @@ -0,0 +1,63 @@ +// +// Base58.swift +// WavesWallet-iOS +// +// Created by Alexey Koloskov on 04/05/2017. +// Copyright Β© 2017 Waves Platform. All rights reserved. +// + +import Foundation +import Base58Encoder + +public class Base58Encoder { + public class func encode(_ input: [UInt8]) -> String { + var size = Int(ceil(log(256.0) / log(58) * Double(input.count))) + 1 + var data = Data(count: size) + data.withUnsafeMutableBytes { (pointer: UnsafeMutableRawBufferPointer) -> Void in + let bind = pointer.bindMemory(to: Int8.self) + if let bytes = bind.baseAddress { + b58enc(bytes, &size, input, input.count) + } + } + + let r = data.subdata(in: 0 ..< (size - 1)) + + return String(data: r, encoding: .utf8) ?? "" + } + + public class func decode(_ str: String) -> [UInt8] { + guard validate(str) else { return [] } + + let c = Array(str.utf8).map { Int8($0) } + let csize = Int(ceil(Double(c.count) * log(58.0) / log(256.0))) + var data = Data(count: csize) + var size = csize + + data.withUnsafeMutableBytes { (pointer: UnsafeMutableRawBufferPointer) -> Void in + let bind = pointer.bindMemory(to: Int8.self) + if let bytes = bind.baseAddress { + b58tobin(bytes, &size, c, c.count) + } + } + + let beginIndex = (csize - size) + + if beginIndex < 0 || csize > data.count { + return [] + } + + let r = data.subdata(in: beginIndex ..< csize) + return Array(r) + } + + public class func decodeToStr(_ str: String) -> String { + return String(data: Data(decode(str)), encoding: .utf8) ?? "" + } + + static let Alphabet = CharacterSet(charactersIn: "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz") + static let WrongAlphabet = Alphabet.inverted + + public class func validate(_ str: String) -> Bool { + return str.rangeOfCharacter(from: WrongAlphabet) == nil + } +} diff --git a/WavesSDKCrypto/Sources/WavesCrypto.swift b/Sources/WavesSDKCrypto/WavesCrypto.swift similarity index 99% rename from WavesSDKCrypto/Sources/WavesCrypto.swift rename to Sources/WavesSDKCrypto/WavesCrypto.swift index 33dd79f..40da383 100644 --- a/WavesSDKCrypto/Sources/WavesCrypto.swift +++ b/Sources/WavesSDKCrypto/WavesCrypto.swift @@ -17,6 +17,9 @@ import Foundation import CommonCrypto +import Curve25519 +import Keccak +import Blake2 public typealias Base58 = String public typealias Base64 = String diff --git a/WavesSDKCrypto/Sources/Words.swift b/Sources/WavesSDKCrypto/Words.swift similarity index 100% rename from WavesSDKCrypto/Sources/Words.swift rename to Sources/WavesSDKCrypto/Words.swift diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/additions/compare.c b/Sources/ed25519/additions/compare.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/additions/compare.c rename to Sources/ed25519/additions/compare.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/additions/curve_sigs.c b/Sources/ed25519/additions/curve_sigs.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/additions/curve_sigs.c rename to Sources/ed25519/additions/curve_sigs.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/additions/sign_modified.c b/Sources/ed25519/additions/sign_modified.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/additions/sign_modified.c rename to Sources/ed25519/additions/sign_modified.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/additions/zeroize.c b/Sources/ed25519/additions/zeroize.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/additions/zeroize.c rename to Sources/ed25519/additions/zeroize.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_0.c b/Sources/ed25519/fe_0.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_0.c rename to Sources/ed25519/fe_0.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_1.c b/Sources/ed25519/fe_1.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_1.c rename to Sources/ed25519/fe_1.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_add.c b/Sources/ed25519/fe_add.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_add.c rename to Sources/ed25519/fe_add.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_cmov.c b/Sources/ed25519/fe_cmov.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_cmov.c rename to Sources/ed25519/fe_cmov.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_copy.c b/Sources/ed25519/fe_copy.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_copy.c rename to Sources/ed25519/fe_copy.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_frombytes.c b/Sources/ed25519/fe_frombytes.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_frombytes.c rename to Sources/ed25519/fe_frombytes.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_invert.c b/Sources/ed25519/fe_invert.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_invert.c rename to Sources/ed25519/fe_invert.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_isnegative.c b/Sources/ed25519/fe_isnegative.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_isnegative.c rename to Sources/ed25519/fe_isnegative.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_isnonzero.c b/Sources/ed25519/fe_isnonzero.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_isnonzero.c rename to Sources/ed25519/fe_isnonzero.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_mul.c b/Sources/ed25519/fe_mul.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_mul.c rename to Sources/ed25519/fe_mul.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_neg.c b/Sources/ed25519/fe_neg.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_neg.c rename to Sources/ed25519/fe_neg.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_pow22523.c b/Sources/ed25519/fe_pow22523.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_pow22523.c rename to Sources/ed25519/fe_pow22523.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_sq.c b/Sources/ed25519/fe_sq.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_sq.c rename to Sources/ed25519/fe_sq.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_sq2.c b/Sources/ed25519/fe_sq2.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_sq2.c rename to Sources/ed25519/fe_sq2.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_sub.c b/Sources/ed25519/fe_sub.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_sub.c rename to Sources/ed25519/fe_sub.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_tobytes.c b/Sources/ed25519/fe_tobytes.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe_tobytes.c rename to Sources/ed25519/fe_tobytes.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_add.c b/Sources/ed25519/ge_add.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_add.c rename to Sources/ed25519/ge_add.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_double_scalarmult.c b/Sources/ed25519/ge_double_scalarmult.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_double_scalarmult.c rename to Sources/ed25519/ge_double_scalarmult.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_frombytes.c b/Sources/ed25519/ge_frombytes.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_frombytes.c rename to Sources/ed25519/ge_frombytes.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_madd.c b/Sources/ed25519/ge_madd.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_madd.c rename to Sources/ed25519/ge_madd.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_msub.c b/Sources/ed25519/ge_msub.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_msub.c rename to Sources/ed25519/ge_msub.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p1p1_to_p2.c b/Sources/ed25519/ge_p1p1_to_p2.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p1p1_to_p2.c rename to Sources/ed25519/ge_p1p1_to_p2.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p1p1_to_p3.c b/Sources/ed25519/ge_p1p1_to_p3.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p1p1_to_p3.c rename to Sources/ed25519/ge_p1p1_to_p3.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p2_0.c b/Sources/ed25519/ge_p2_0.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p2_0.c rename to Sources/ed25519/ge_p2_0.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p2_dbl.c b/Sources/ed25519/ge_p2_dbl.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p2_dbl.c rename to Sources/ed25519/ge_p2_dbl.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p3_0.c b/Sources/ed25519/ge_p3_0.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p3_0.c rename to Sources/ed25519/ge_p3_0.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p3_dbl.c b/Sources/ed25519/ge_p3_dbl.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p3_dbl.c rename to Sources/ed25519/ge_p3_dbl.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p3_to_cached.c b/Sources/ed25519/ge_p3_to_cached.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p3_to_cached.c rename to Sources/ed25519/ge_p3_to_cached.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p3_to_p2.c b/Sources/ed25519/ge_p3_to_p2.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p3_to_p2.c rename to Sources/ed25519/ge_p3_to_p2.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p3_tobytes.c b/Sources/ed25519/ge_p3_tobytes.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p3_tobytes.c rename to Sources/ed25519/ge_p3_tobytes.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_precomp_0.c b/Sources/ed25519/ge_precomp_0.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_precomp_0.c rename to Sources/ed25519/ge_precomp_0.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_scalarmult_base.c b/Sources/ed25519/ge_scalarmult_base.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_scalarmult_base.c rename to Sources/ed25519/ge_scalarmult_base.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_sub.c b/Sources/ed25519/ge_sub.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_sub.c rename to Sources/ed25519/ge_sub.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_tobytes.c b/Sources/ed25519/ge_tobytes.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_tobytes.c rename to Sources/ed25519/ge_tobytes.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/api.h b/Sources/ed25519/include/api.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/api.h rename to Sources/ed25519/include/api.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/base.h b/Sources/ed25519/include/base.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/base.h rename to Sources/ed25519/include/base.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/base2.h b/Sources/ed25519/include/base2.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/base2.h rename to Sources/ed25519/include/base2.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/additions/compare.h b/Sources/ed25519/include/compare.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/additions/compare.h rename to Sources/ed25519/include/compare.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/additions/crypto_hash_sha512.h b/Sources/ed25519/include/crypto_hash_sha512.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/additions/crypto_hash_sha512.h rename to Sources/ed25519/include/crypto_hash_sha512.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_includes/crypto_int32.h b/Sources/ed25519/include/crypto_int32.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_includes/crypto_int32.h rename to Sources/ed25519/include/crypto_int32.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_includes/crypto_int64.h b/Sources/ed25519/include/crypto_int64.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_includes/crypto_int64.h rename to Sources/ed25519/include/crypto_int64.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_includes/crypto_sign.h b/Sources/ed25519/include/crypto_sign.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_includes/crypto_sign.h rename to Sources/ed25519/include/crypto_sign.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_includes/crypto_sign_edwards25519sha512batch.h b/Sources/ed25519/include/crypto_sign_edwards25519sha512batch.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_includes/crypto_sign_edwards25519sha512batch.h rename to Sources/ed25519/include/crypto_sign_edwards25519sha512batch.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_includes/crypto_uint32.h b/Sources/ed25519/include/crypto_uint32.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_includes/crypto_uint32.h rename to Sources/ed25519/include/crypto_uint32.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_includes/crypto_uint64.h b/Sources/ed25519/include/crypto_uint64.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_includes/crypto_uint64.h rename to Sources/ed25519/include/crypto_uint64.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_includes/crypto_verify_32.h b/Sources/ed25519/include/crypto_verify_32.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_includes/crypto_verify_32.h rename to Sources/ed25519/include/crypto_verify_32.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/additions/curve_sigs.h b/Sources/ed25519/include/curve_sigs.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/additions/curve_sigs.h rename to Sources/ed25519/include/curve_sigs.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/d.h b/Sources/ed25519/include/d.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/d.h rename to Sources/ed25519/include/d.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/d2.h b/Sources/ed25519/include/d2.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/d2.h rename to Sources/ed25519/include/d2.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe.h b/Sources/ed25519/include/fe.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/fe.h rename to Sources/ed25519/include/fe.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge.h b/Sources/ed25519/include/ge.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge.h rename to Sources/ed25519/include/ge.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_add.h b/Sources/ed25519/include/ge_add.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_add.h rename to Sources/ed25519/include/ge_add.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_madd.h b/Sources/ed25519/include/ge_madd.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_madd.h rename to Sources/ed25519/include/ge_madd.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_msub.h b/Sources/ed25519/include/ge_msub.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_msub.h rename to Sources/ed25519/include/ge_msub.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p2_dbl.h b/Sources/ed25519/include/ge_p2_dbl.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_p2_dbl.h rename to Sources/ed25519/include/ge_p2_dbl.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_sub.h b/Sources/ed25519/include/ge_sub.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/ge_sub.h rename to Sources/ed25519/include/ge_sub.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/pow22523.h b/Sources/ed25519/include/pow22523.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/pow22523.h rename to Sources/ed25519/include/pow22523.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/pow225521.h b/Sources/ed25519/include/pow225521.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/pow225521.h rename to Sources/ed25519/include/pow225521.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/sc.h b/Sources/ed25519/include/sc.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/sc.h rename to Sources/ed25519/include/sc.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/sqrtm1.h b/Sources/ed25519/include/sqrtm1.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/sqrtm1.h rename to Sources/ed25519/include/sqrtm1.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/additions/zeroize.h b/Sources/ed25519/include/zeroize.h similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/additions/zeroize.h rename to Sources/ed25519/include/zeroize.h diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_sha512/blocks.c b/Sources/ed25519/nacl_sha512/blocks.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_sha512/blocks.c rename to Sources/ed25519/nacl_sha512/blocks.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_sha512/hash.c b/Sources/ed25519/nacl_sha512/hash.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_sha512/hash.c rename to Sources/ed25519/nacl_sha512/hash.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/open.c b/Sources/ed25519/open.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/open.c rename to Sources/ed25519/open.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/sc_muladd.c b/Sources/ed25519/sc_muladd.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/sc_muladd.c rename to Sources/ed25519/sc_muladd.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/sc_reduce.c b/Sources/ed25519/sc_reduce.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/sc_reduce.c rename to Sources/ed25519/sc_reduce.c diff --git a/WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/sign.c b/Sources/ed25519/sign.c similarity index 100% rename from WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/sign.c rename to Sources/ed25519/sign.c diff --git a/WavesSDKTests/WavesCryptoTest.swift b/Tests/WavesSDKCryptoTests/WavesCryptoTests.swift similarity index 99% rename from WavesSDKTests/WavesCryptoTest.swift rename to Tests/WavesSDKCryptoTests/WavesCryptoTests.swift index bc0fb77..1354bf7 100644 --- a/WavesSDKTests/WavesCryptoTest.swift +++ b/Tests/WavesSDKCryptoTests/WavesCryptoTests.swift @@ -38,7 +38,7 @@ private enum Constants { static let randomBytes: [UInt8] = [0, 3, 4, 5] } -final class WavesCryptoTest: XCTestCase { +final class WavesCryptoTests: XCTestCase { private let wavesCrypto: WavesCrypto = WavesCrypto() override func setUp() {} diff --git a/Tests/WavesSDKTests/WavesSDKTests.swift b/Tests/WavesSDKTests/WavesSDKTests.swift new file mode 100644 index 0000000..2b47a31 --- /dev/null +++ b/Tests/WavesSDKTests/WavesSDKTests.swift @@ -0,0 +1,35 @@ +// +// WavesSDKTests.swift +// +// +// Created by Leonardo Marques on 28/11/22. +// + +import XCTest + +final class WavesSDKTests: XCTestCase { + + override func setUpWithError() throws { + // Put setup code here. This method is called before the invocation of each test method in the class. + } + + override func tearDownWithError() throws { + // Put teardown code here. This method is called after the invocation of each test method in the class. + } + + func testExample() throws { + // This is an example of a functional test case. + // Use XCTAssert and related functions to verify your tests produce the correct results. + // Any test you write for XCTest can be annotated as throws and async. + // Mark your test throws to produce an unexpected failure when your test encounters an uncaught error. + // Mark your test async to allow awaiting for asynchronous code to complete. Check the results with assertions afterwards. + } + + func testPerformanceExample() throws { + // This is an example of a performance test case. + self.measure { + // Put the code you want to measure the time of here. + } + } + +} diff --git a/WavesSDKTests/WavesServicesBroadcastTransactionsTest.swift b/Tests/WavesSDKTests/WavesServicesBroadcastTransactionsTest.swift similarity index 99% rename from WavesSDKTests/WavesServicesBroadcastTransactionsTest.swift rename to Tests/WavesSDKTests/WavesServicesBroadcastTransactionsTest.swift index 4cae0d4..aecba2d 100644 --- a/WavesSDKTests/WavesServicesBroadcastTransactionsTest.swift +++ b/Tests/WavesSDKTests/WavesServicesBroadcastTransactionsTest.swift @@ -13,10 +13,6 @@ import RxSwift import WavesSDK import WavesSDKCrypto -import WavesSDKExtensions - -import Nimble -import Fakery public class XCTestExpectationReactive: XCTestExpectation { diff --git a/WavesSDKTests/WavesServicesTest.swift b/Tests/WavesSDKTests/WavesServicesTest.swift similarity index 98% rename from WavesSDKTests/WavesServicesTest.swift rename to Tests/WavesSDKTests/WavesServicesTest.swift index beb944b..c914279 100644 --- a/WavesSDKTests/WavesServicesTest.swift +++ b/Tests/WavesSDKTests/WavesServicesTest.swift @@ -10,7 +10,6 @@ import Foundation import XCTest import WavesSDK import WavesSDKCrypto -import WavesSDKExtensions class WavesServicesTest: XCTestCase { diff --git a/WavesKeeperExample/KeeperExample.xcodeproj/project.pbxproj b/WavesKeeperExample/KeeperExample.xcodeproj/project.pbxproj index e630037..723afda 100644 --- a/WavesKeeperExample/KeeperExample.xcodeproj/project.pbxproj +++ b/WavesKeeperExample/KeeperExample.xcodeproj/project.pbxproj @@ -3,10 +3,13 @@ archiveVersion = 1; classes = { }; - objectVersion = 51; + objectVersion = 52; objects = { /* Begin PBXBuildFile section */ + 225D88272935424B00B9B419 /* TextFieldEffects in Frameworks */ = {isa = PBXBuildFile; productRef = 225D88262935424B00B9B419 /* TextFieldEffects */; }; + 225D882A293543B000B9B419 /* CryptoSwift in Frameworks */ = {isa = PBXBuildFile; productRef = 225D8829293543B000B9B419 /* CryptoSwift */; }; + 225D882F2935577100B9B419 /* WavesSDK in Frameworks */ = {isa = PBXBuildFile; productRef = 225D882E2935577100B9B419 /* WavesSDK */; }; 321D36EE23312F0000D81E8E /* SDKViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 321D36ED23312F0000D81E8E /* SDKViewController.swift */; }; 321D36F023312F0F00D81E8E /* KeeperViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 321D36EF23312F0F00D81E8E /* KeeperViewController.swift */; }; 321D36F22331345800D81E8E /* Constants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 321D36F12331345800D81E8E /* Constants.swift */; }; @@ -15,18 +18,15 @@ 7B0B6FAE231FE7D200CC5DCB /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 7B0B6FAC231FE7D200CC5DCB /* Main.storyboard */; }; 7B0B6FB0231FE7D500CC5DCB /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 7B0B6FAF231FE7D500CC5DCB /* Assets.xcassets */; }; 7B0B6FB3231FE7D500CC5DCB /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 7B0B6FB1231FE7D500CC5DCB /* LaunchScreen.storyboard */; }; - 812A0E129CE2957D25792974 /* Pods_KeeperExample.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 27B95FEAA32BFDCCA2146064 /* Pods_KeeperExample.framework */; }; E9BFFA3B23215949000F59FC /* Transactions.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9BFFA3A23215949000F59FC /* Transactions.swift */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ - 1617F8A74DB2172DB83913FF /* Pods-KeeperExample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-KeeperExample.release.xcconfig"; path = "Target Support Files/Pods-KeeperExample/Pods-KeeperExample.release.xcconfig"; sourceTree = ""; }; - 27B95FEAA32BFDCCA2146064 /* Pods_KeeperExample.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_KeeperExample.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 225D882C293543C000B9B419 /* WavesSDK-iOS */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = "WavesSDK-iOS"; path = ..; sourceTree = ""; }; 321D36ED23312F0000D81E8E /* SDKViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SDKViewController.swift; sourceTree = ""; }; 321D36EF23312F0F00D81E8E /* KeeperViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KeeperViewController.swift; sourceTree = ""; }; 321D36F12331345800D81E8E /* Constants.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Constants.swift; sourceTree = ""; }; 323B8DE02331418200034343 /* CustomNavigationViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CustomNavigationViewController.swift; sourceTree = ""; }; - 66AA2D092A1DAAA641D55F44 /* Pods-KeeperExample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-KeeperExample.debug.xcconfig"; path = "Target Support Files/Pods-KeeperExample/Pods-KeeperExample.debug.xcconfig"; sourceTree = ""; }; 7B0B6FA5231FE7D200CC5DCB /* KeeperExample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = KeeperExample.app; sourceTree = BUILT_PRODUCTS_DIR; }; 7B0B6FA8231FE7D200CC5DCB /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; 7B0B6FAD231FE7D200CC5DCB /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; @@ -41,26 +41,26 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 812A0E129CE2957D25792974 /* Pods_KeeperExample.framework in Frameworks */, + 225D882F2935577100B9B419 /* WavesSDK in Frameworks */, + 225D88272935424B00B9B419 /* TextFieldEffects in Frameworks */, + 225D882A293543B000B9B419 /* CryptoSwift in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 186FC67489E6D85D026B69F6 /* Pods */ = { + 225D882B293543C000B9B419 /* Packages */ = { isa = PBXGroup; children = ( - 66AA2D092A1DAAA641D55F44 /* Pods-KeeperExample.debug.xcconfig */, - 1617F8A74DB2172DB83913FF /* Pods-KeeperExample.release.xcconfig */, + 225D882C293543C000B9B419 /* WavesSDK-iOS */, ); - path = Pods; + name = Packages; sourceTree = ""; }; - 433BEB3BD50D8B41E21ACDC3 /* Frameworks */ = { + 225D882D2935577100B9B419 /* Frameworks */ = { isa = PBXGroup; children = ( - 27B95FEAA32BFDCCA2146064 /* Pods_KeeperExample.framework */, ); name = Frameworks; sourceTree = ""; @@ -68,10 +68,10 @@ 7B0B6F9C231FE7D200CC5DCB = { isa = PBXGroup; children = ( + 225D882B293543C000B9B419 /* Packages */, 7B0B6FA7231FE7D200CC5DCB /* KeeperExample */, 7B0B6FA6231FE7D200CC5DCB /* Products */, - 186FC67489E6D85D026B69F6 /* Pods */, - 433BEB3BD50D8B41E21ACDC3 /* Frameworks */, + 225D882D2935577100B9B419 /* Frameworks */, ); sourceTree = ""; }; @@ -107,17 +107,20 @@ isa = PBXNativeTarget; buildConfigurationList = 7B0B6FB7231FE7D500CC5DCB /* Build configuration list for PBXNativeTarget "KeeperExample" */; buildPhases = ( - 564BCC1E38339ADD3E6597E0 /* [CP] Check Pods Manifest.lock */, 7B0B6FA1231FE7D200CC5DCB /* Sources */, 7B0B6FA2231FE7D200CC5DCB /* Frameworks */, 7B0B6FA3231FE7D200CC5DCB /* Resources */, - A06B845665CDE7E661094008 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); dependencies = ( ); name = KeeperExample; + packageProductDependencies = ( + 225D88262935424B00B9B419 /* TextFieldEffects */, + 225D8829293543B000B9B419 /* CryptoSwift */, + 225D882E2935577100B9B419 /* WavesSDK */, + ); productName = KeeperExample; productReference = 7B0B6FA5231FE7D200CC5DCB /* KeeperExample.app */; productType = "com.apple.product-type.application"; @@ -129,7 +132,7 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 1030; - LastUpgradeCheck = 1030; + LastUpgradeCheck = 1410; ORGANIZATIONNAME = Waves; TargetAttributes = { 7B0B6FA4231FE7D200CC5DCB = { @@ -146,6 +149,10 @@ Base, ); mainGroup = 7B0B6F9C231FE7D200CC5DCB; + packageReferences = ( + 225D88252935424B00B9B419 /* XCRemoteSwiftPackageReference "TextFieldEffects" */, + 225D8828293543B000B9B419 /* XCRemoteSwiftPackageReference "CryptoSwift" */, + ); productRefGroup = 7B0B6FA6231FE7D200CC5DCB /* Products */; projectDirPath = ""; projectRoot = ""; @@ -168,48 +175,6 @@ }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - 564BCC1E38339ADD3E6597E0 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-KeeperExample-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - A06B845665CDE7E661094008 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-KeeperExample/Pods-KeeperExample-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-KeeperExample/Pods-KeeperExample-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-KeeperExample/Pods-KeeperExample-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ 7B0B6FA1231FE7D200CC5DCB /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -272,6 +237,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -297,7 +263,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.4; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; ONLY_ACTIVE_ARCH = YES; @@ -333,6 +299,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -352,7 +319,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.4; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; SDKROOT = iphoneos; @@ -364,14 +331,13 @@ }; 7B0B6FB8231FE7D500CC5DCB /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 66AA2D092A1DAAA641D55F44 /* Pods-KeeperExample.debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CODE_SIGN_IDENTITY = "iPhone Developer"; CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = 96SW78M3KJ; INFOPLIST_FILE = KeeperExample/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 11; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -386,14 +352,13 @@ }; 7B0B6FB9231FE7D500CC5DCB /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 1617F8A74DB2172DB83913FF /* Pods-KeeperExample.release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CODE_SIGN_IDENTITY = "iPhone Developer"; CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = 96SW78M3KJ; INFOPLIST_FILE = KeeperExample/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 11; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -428,6 +393,42 @@ defaultConfigurationName = Release; }; /* End XCConfigurationList section */ + +/* Begin XCRemoteSwiftPackageReference section */ + 225D88252935424B00B9B419 /* XCRemoteSwiftPackageReference "TextFieldEffects" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/raulriera/TextFieldEffects"; + requirement = { + kind = upToNextMajorVersion; + minimumVersion = 1.7.0; + }; + }; + 225D8828293543B000B9B419 /* XCRemoteSwiftPackageReference "CryptoSwift" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/krzyzanowskim/CryptoSwift"; + requirement = { + kind = upToNextMajorVersion; + minimumVersion = 1.0.0; + }; + }; +/* End XCRemoteSwiftPackageReference section */ + +/* Begin XCSwiftPackageProductDependency section */ + 225D88262935424B00B9B419 /* TextFieldEffects */ = { + isa = XCSwiftPackageProductDependency; + package = 225D88252935424B00B9B419 /* XCRemoteSwiftPackageReference "TextFieldEffects" */; + productName = TextFieldEffects; + }; + 225D8829293543B000B9B419 /* CryptoSwift */ = { + isa = XCSwiftPackageProductDependency; + package = 225D8828293543B000B9B419 /* XCRemoteSwiftPackageReference "CryptoSwift" */; + productName = CryptoSwift; + }; + 225D882E2935577100B9B419 /* WavesSDK */ = { + isa = XCSwiftPackageProductDependency; + productName = WavesSDK; + }; +/* End XCSwiftPackageProductDependency section */ }; rootObject = 7B0B6F9D231FE7D200CC5DCB /* Project object */; } diff --git a/WavesKeeperExample/KeeperExample/Base.lproj/Main.storyboard b/WavesKeeperExample/KeeperExample/Base.lproj/Main.storyboard index cd3bfc5..00c95be 100644 --- a/WavesKeeperExample/KeeperExample/Base.lproj/Main.storyboard +++ b/WavesKeeperExample/KeeperExample/Base.lproj/Main.storyboard @@ -1,11 +1,9 @@ - - - - + + - + @@ -16,7 +14,7 @@ - + @@ -35,7 +33,7 @@ - - - + @@ -242,7 +240,6 @@ - @@ -262,7 +259,7 @@ - + @@ -293,6 +290,11 @@ + + + + + diff --git a/WavesKeeperExample/KeeperExample/KeeperViewController.swift b/WavesKeeperExample/KeeperExample/KeeperViewController.swift index 1d979cb..d018f99 100644 --- a/WavesKeeperExample/KeeperExample/KeeperViewController.swift +++ b/WavesKeeperExample/KeeperExample/KeeperViewController.swift @@ -13,7 +13,7 @@ class KeeperViewController: UIViewController { @IBOutlet var toolBar: UIToolbar! @IBOutlet private weak var labelInfo: UILabel! - private var currentServer: Enviroment.Server! + private var currentServer: WavesEnvironment.Server! private var transaction: NodeService.Query.Transaction? private let disposeBag = DisposeBag() diff --git a/WavesKeeperExample/KeeperExample/SDKViewController.swift b/WavesKeeperExample/KeeperExample/SDKViewController.swift index fe3931e..4880f9a 100644 --- a/WavesKeeperExample/KeeperExample/SDKViewController.swift +++ b/WavesKeeperExample/KeeperExample/SDKViewController.swift @@ -8,7 +8,7 @@ import WavesSDKCrypto final class SDKViewController: UIViewController { - private var currentServer: Enviroment.Server! + private var currentServer: WavesEnvironment.Server! private let disposeBag = DisposeBag() @IBOutlet private weak var labelInfo: UILabel! @@ -104,7 +104,7 @@ private extension SDKViewController { } } -extension Enviroment.Server { +extension WavesEnvironment.Server { var isMainNet: Bool { switch self { case .mainNet: diff --git a/WavesKeeperExample/KeeperExample/Transactions.swift b/WavesKeeperExample/KeeperExample/Transactions.swift index 2f32557..65a554b 100644 --- a/WavesKeeperExample/KeeperExample/Transactions.swift +++ b/WavesKeeperExample/KeeperExample/Transactions.swift @@ -29,7 +29,7 @@ final class Transactions { .init(name: "Burn", type: .burn(txBurn))] } - private static var chainId: String { + private static var chainId: UInt8 { return WavesSDK.shared.enviroment.chainId } } diff --git a/WavesKeeperExample/Podfile b/WavesKeeperExample/Podfile deleted file mode 100644 index 17001a5..0000000 --- a/WavesKeeperExample/Podfile +++ /dev/null @@ -1,16 +0,0 @@ -platform :ios, '11.0' - -# Ignore all warnings from all pods -inhibit_all_warnings! - -use_frameworks!(true) - -# Pods for WavesWallet-iOS -target 'KeeperExample' do - project 'KeeperExample.xcodeproj' - - pod "WavesSDK", :git => "git@github.com:wavesplatform/WavesSDK-iOS.git", :branch => "develop" - pod 'CryptoSwift' - pod 'TextFieldEffects' - -end diff --git a/WavesKeeperExample/Podfile.lock b/WavesKeeperExample/Podfile.lock deleted file mode 100644 index 4f1bd25..0000000 --- a/WavesKeeperExample/Podfile.lock +++ /dev/null @@ -1,65 +0,0 @@ -PODS: - - Alamofire (4.9.0) - - CryptoSwift (1.0.0) - - Moya (12.0.1): - - Moya/Core (= 12.0.1) - - Moya/Core (12.0.1): - - Alamofire (~> 4.1) - - Result (~> 4.0) - - Moya/RxSwift (12.0.1): - - Moya/Core - - RxSwift (~> 4.0) - - Result (4.1.0) - - RxSwift (4.5.0) - - TextFieldEffects (1.6.0) - - WavesSDK (0.1.9): - - Moya (~> 12.0.1) - - Moya/RxSwift (~> 12.0.1) - - RxSwift (~> 4.0) - - WavesSDKCrypto - - WavesSDKExtensions - - WavesSDKCrypto (0.1.9): - - WavesSDKExtensions - - WavesSDKExtensions (0.1.9): - - RxSwift (~> 4.0) - -DEPENDENCIES: - - CryptoSwift - - TextFieldEffects - - "WavesSDK (from `git@github.com:wavesplatform/WavesSDK-iOS.git`, branch `develop`)" - -SPEC REPOS: - https://github.com/cocoapods/specs.git: - - Alamofire - - CryptoSwift - - Moya - - Result - - RxSwift - - TextFieldEffects - - WavesSDKCrypto - - WavesSDKExtensions - -EXTERNAL SOURCES: - WavesSDK: - :branch: develop - :git: "git@github.com:wavesplatform/WavesSDK-iOS.git" - -CHECKOUT OPTIONS: - WavesSDK: - :commit: cc135790205e7a13ba4ebdf67a1c7e4268c2091d - :git: "git@github.com:wavesplatform/WavesSDK-iOS.git" - -SPEC CHECKSUMS: - Alamofire: afc3e7c6db61476cb45cdd23fed06bad03bbc321 - CryptoSwift: d81eeaa59dc5a8d03720fe919a6fd07b51f7439f - Moya: cf730b3cd9e005401ef37a85143aa141a12fd38f - Result: bd966fac789cc6c1563440b348ab2598cc24d5c7 - RxSwift: f172070dfd1a93d70a9ab97a5a01166206e1c575 - TextFieldEffects: 529b8aff706fb40f82c41c780c0777941a893796 - WavesSDK: f0513d8e00c4b0d8e0bfc1a05678a886e8d0c927 - WavesSDKCrypto: 1a9205f4ac4a2a17fb6fd981d3b518f81487b379 - WavesSDKExtensions: 040099258b4d793ef8eb08fda45ba8cd66ea04d8 - -PODFILE CHECKSUM: 3f9383a1fc178113cf358039b20745a9b197cf84 - -COCOAPODS: 1.7.5 diff --git a/WavesSDK.podspec b/WavesSDK.podspec deleted file mode 100644 index b04e0fe..0000000 --- a/WavesSDK.podspec +++ /dev/null @@ -1,26 +0,0 @@ -Pod::Spec.new do |spec| - - spec.name = 'WavesSDK' - spec.version = '0.1.9' - spec.ios.deployment_target = '11.0' - spec.requires_arc = true - spec.swift_version = '5.0' - - spec.license = { :type => 'MIT License', :file => 'LICENSE' } - spec.homepage = 'https://wavesplatform.com' - spec.authors = { 'Mefilt' => 'mefilt@gmail.com', } - spec.summary = 'Extensions are helping for developer fast write code' - - spec.source_files = 'WavesSDK/Sources/**/*.{swift}' - spec.source = { :git => 'https://github.com/wavesplatform/WavesSDK-iOS.git', :tag => 'v' + spec.version.to_s} - - spec.ios.framework = 'Foundation' - spec.ios.framework = 'UIKit' - - spec.dependency 'RxSwift', '~> 4.0' - spec.dependency 'Moya', '~> 12.0.1' - spec.dependency 'Moya/RxSwift', '~> 12.0.1' - spec.dependency 'WavesSDKExtensions' - spec.dependency 'WavesSDKCrypto' - -end diff --git a/WavesSDK.xcodeproj/project.pbxproj b/WavesSDK.xcodeproj/project.pbxproj deleted file mode 100644 index 2fe3747..0000000 --- a/WavesSDK.xcodeproj/project.pbxproj +++ /dev/null @@ -1,3994 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 50; - objects = { - -/* Begin PBXBuildFile section */ - 1AB37B7C3C1EB90AC19BAA6D /* Pods_Waves_Exchange_SDK_WavesSDKCrypto.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8625E48FA90E048D091F4B9E /* Pods_Waves_Exchange_SDK_WavesSDKCrypto.framework */; }; - 3B0E8FCF7759CD4F8A4FF27C /* Pods_Waves_Exchange_SDK_WavesSDKExtensions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6E7AA1F5018E52FD7CFB2112 /* Pods_Waves_Exchange_SDK_WavesSDKExtensions.framework */; }; - 42BB3EF72594C60C00A0142A /* NumberFormatter+Once.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42BB3EF62594C60C00A0142A /* NumberFormatter+Once.swift */; }; - 4AF1EEBA1DC2288A5799015A /* Pods_WavesSDKTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8EBC6763F0CBF8C4EB1DA4C1 /* Pods_WavesSDKTests.framework */; }; - 7B0B6F9B231E6DC800CC5DCB /* DictionaryEncoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B0B6F9A231E6DC800CC5DCB /* DictionaryEncoder.swift */; }; - 7B3681A323152E13000D5592 /* WavesKeeper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B3681A223152E13000D5592 /* WavesKeeper.swift */; }; - 7B3DCA2922CFC37600FC973D /* keccak.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DC9B622CFC37500FC973D /* keccak.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCA8122CFC37600FC973D /* Words.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCA1A22CFC37500FC973D /* Words.swift */; }; - 7B3DCA8222CFC37600FC973D /* WavesCrypto.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCA1B22CFC37500FC973D /* WavesCrypto.swift */; }; - 7B3DCA8322CFC68C00FC973D /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7B42335622563A3200E82730 /* Security.framework */; }; - 7B3DCA8522CFC9C700FC973D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7B3DCA8422CFC9C700FC973D /* Foundation.framework */; }; - 7B3DCAB922D3421F00FC973D /* base58.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCAB622D3421E00FC973D /* base58.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7B3DCABA22D3421F00FC973D /* Base58Encoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAB722D3421E00FC973D /* Base58Encoder.swift */; }; - 7B3DCABB22D3421F00FC973D /* base58.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAB822D3421E00FC973D /* base58.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCACF22D3472C00FC973D /* utils.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCAC222D3472C00FC973D /* utils.h */; }; - 7B3DCAD022D3472C00FC973D /* export.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCAC322D3472C00FC973D /* export.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7B3DCAD122D3472C00FC973D /* randombytes.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCAC422D3472C00FC973D /* randombytes.h */; }; - 7B3DCAD222D3472C00FC973D /* crypto_generichash.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAC522D3472C00FC973D /* crypto_generichash.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCAD322D3472C00FC973D /* api.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCAC622D3472C00FC973D /* api.h */; }; - 7B3DCAD422D3472C00FC973D /* generichash_blake2_api.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAC722D3472C00FC973D /* generichash_blake2_api.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCAD522D3472C00FC973D /* utils.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAC822D3472C00FC973D /* utils.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCAD622D3472C00FC973D /* blake2.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCAC922D3472C00FC973D /* blake2.h */; }; - 7B3DCAD722D3472C00FC973D /* generichash_blake2b.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCACA22D3472C00FC973D /* generichash_blake2b.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCAD822D3472C00FC973D /* blake2b-ref.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCACB22D3472C00FC973D /* blake2b-ref.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCAD922D3472C00FC973D /* blake2-impl.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCACC22D3472C00FC973D /* blake2-impl.h */; }; - 7B3DCADA22D3472C00FC973D /* crypto_generichash.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCACD22D3472C00FC973D /* crypto_generichash.h */; }; - 7B3DCADB22D3472C00FC973D /* crypto_generichash_blake2b.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCACE22D3472C00FC973D /* crypto_generichash_blake2b.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7B3DCB8C22D34D4000FC973D /* keccak.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DC9B722CFC37500FC973D /* keccak.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7B3DCBA822D3617D00FC973D /* fe_0.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB0822D3478300FC973D /* fe_0.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBA922D3617D00FC973D /* fe_1.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB0322D3478300FC973D /* fe_1.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBAA22D3617D00FC973D /* fe_add.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAF122D3478300FC973D /* fe_add.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBAB22D3617D00FC973D /* fe_cmov.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB0122D3478300FC973D /* fe_cmov.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBAC22D3617D00FC973D /* fe_copy.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB0422D3478300FC973D /* fe_copy.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBAD22D3617D00FC973D /* fe_frombytes.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB1422D3478300FC973D /* fe_frombytes.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBAE22D3617D00FC973D /* fe_invert.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAF422D3478300FC973D /* fe_invert.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBAF22D3617D00FC973D /* fe_isnegative.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB1622D3478300FC973D /* fe_isnegative.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBB022D3617D00FC973D /* fe_isnonzero.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAEF22D3478300FC973D /* fe_isnonzero.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBB122D3617D00FC973D /* fe_mul.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB2822D3478300FC973D /* fe_mul.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBB222D3617D00FC973D /* fe_neg.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB0E22D3478300FC973D /* fe_neg.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBB322D3617D00FC973D /* fe_pow22523.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAE822D3478300FC973D /* fe_pow22523.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBB422D3617D00FC973D /* fe_sq.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB1A22D3478300FC973D /* fe_sq.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBB522D3617D00FC973D /* fe_sq2.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAE022D3478300FC973D /* fe_sq2.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBB622D3617D00FC973D /* fe_sub.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAED22D3478300FC973D /* fe_sub.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBB722D3617D00FC973D /* fe_tobytes.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB0B22D3478300FC973D /* fe_tobytes.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBB822D3617D00FC973D /* ge_add.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB0D22D3478300FC973D /* ge_add.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBB922D3617D00FC973D /* ge_double_scalarmult.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB1222D3478300FC973D /* ge_double_scalarmult.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBBA22D3617D00FC973D /* ge_frombytes.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB1922D3478300FC973D /* ge_frombytes.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBBB22D3617D00FC973D /* ge_madd.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAE922D3478300FC973D /* ge_madd.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBBC22D3617D00FC973D /* ge_msub.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCADF22D3478300FC973D /* ge_msub.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBBD22D3617D00FC973D /* ge_p1p1_to_p2.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAF322D3478300FC973D /* ge_p1p1_to_p2.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBBE22D3617D00FC973D /* ge_p1p1_to_p3.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB2722D3478300FC973D /* ge_p1p1_to_p3.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBBF22D3617D00FC973D /* ge_p2_0.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAFF22D3478300FC973D /* ge_p2_0.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBC022D3617D00FC973D /* ge_p2_dbl.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB0222D3478300FC973D /* ge_p2_dbl.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBC122D3617D00FC973D /* ge_p3_0.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB0022D3478300FC973D /* ge_p3_0.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBC222D3617D00FC973D /* ge_p3_dbl.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAEB22D3478300FC973D /* ge_p3_dbl.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBC322D3617D00FC973D /* ge_p3_to_cached.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB0C22D3478300FC973D /* ge_p3_to_cached.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBC422D3617D00FC973D /* ge_p3_to_p2.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB2B22D3478300FC973D /* ge_p3_to_p2.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBC522D3617D00FC973D /* ge_p3_tobytes.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAEA22D3478300FC973D /* ge_p3_tobytes.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBC622D3617D00FC973D /* ge_precomp_0.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB1322D3478300FC973D /* ge_precomp_0.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBC722D3617D00FC973D /* ge_scalarmult_base.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB1022D3478300FC973D /* ge_scalarmult_base.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBC822D3617D00FC973D /* ge_sub.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB0F22D3478300FC973D /* ge_sub.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBC922D3617D00FC973D /* ge_tobytes.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAF522D3478300FC973D /* ge_tobytes.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBCA22D3617D00FC973D /* open.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB2522D3478300FC973D /* open.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBCB22D3617D00FC973D /* sc_muladd.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAEC22D3478300FC973D /* sc_muladd.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBCC22D3617D00FC973D /* sc_reduce.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB2622D3478300FC973D /* sc_reduce.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBCD22D3617D00FC973D /* sign.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB0522D3478300FC973D /* sign.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBCE22D3617D00FC973D /* api.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB0722D3478300FC973D /* api.h */; }; - 7B3DCBCF22D3617D00FC973D /* base.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB2A22D3478300FC973D /* base.h */; }; - 7B3DCBD022D3617D00FC973D /* base2.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB2922D3478300FC973D /* base2.h */; }; - 7B3DCBD122D3617D00FC973D /* d.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB1822D3478300FC973D /* d.h */; }; - 7B3DCBD222D3617D00FC973D /* d2.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB0622D3478300FC973D /* d2.h */; }; - 7B3DCBD322D3617D00FC973D /* fe.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB1122D3478300FC973D /* fe.h */; }; - 7B3DCBD422D3617D00FC973D /* ge_add.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCAF222D3478300FC973D /* ge_add.h */; }; - 7B3DCBD522D3617D00FC973D /* ge_madd.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB0922D3478300FC973D /* ge_madd.h */; }; - 7B3DCBD622D3617D00FC973D /* ge_msub.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB0A22D3478300FC973D /* ge_msub.h */; }; - 7B3DCBD722D3617D00FC973D /* ge_p2_dbl.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB1722D3478300FC973D /* ge_p2_dbl.h */; }; - 7B3DCBD822D3617D00FC973D /* ge_sub.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCAEE22D3478300FC973D /* ge_sub.h */; }; - 7B3DCBD922D3617D00FC973D /* ge.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB1C22D3478300FC973D /* ge.h */; }; - 7B3DCBDA22D3617D00FC973D /* pow22523.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB1522D3478300FC973D /* pow22523.h */; }; - 7B3DCBDB22D3617D00FC973D /* pow225521.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCAF022D3478300FC973D /* pow225521.h */; }; - 7B3DCBDC22D3617D00FC973D /* sc.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB1B22D3478300FC973D /* sc.h */; }; - 7B3DCBDD22D3617D00FC973D /* sqrtm1.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCAE122D3478300FC973D /* sqrtm1.h */; }; - 7B3DCBDE22D3618A00FC973D /* zeroize.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCAF722D3478300FC973D /* zeroize.h */; }; - 7B3DCBDF22D3618A00FC973D /* compare.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAF822D3478300FC973D /* compare.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBE022D3618A00FC973D /* crypto_hash_sha512.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCAF922D3478300FC973D /* crypto_hash_sha512.h */; }; - 7B3DCBE122D3618A00FC973D /* curve_sigs.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAFA22D3478300FC973D /* curve_sigs.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBE222D3618A00FC973D /* sign_modified.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAFB22D3478300FC973D /* sign_modified.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBE322D3618A00FC973D /* compare.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCAFC22D3478300FC973D /* compare.h */; }; - 7B3DCBE422D3618A00FC973D /* zeroize.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCAFD22D3478300FC973D /* zeroize.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBE522D3618A00FC973D /* curve_sigs.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCAFE22D3478300FC973D /* curve_sigs.h */; }; - 7B3DCBE622D3618A00FC973D /* crypto_uint32.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB1E22D3478300FC973D /* crypto_uint32.h */; }; - 7B3DCBE722D3618A00FC973D /* crypto_int32.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB1F22D3478300FC973D /* crypto_int32.h */; }; - 7B3DCBE822D3618A00FC973D /* crypto_sign.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB2022D3478300FC973D /* crypto_sign.h */; }; - 7B3DCBE922D3618A00FC973D /* crypto_verify_32.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB2122D3478300FC973D /* crypto_verify_32.h */; }; - 7B3DCBEA22D3618A00FC973D /* crypto_int64.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB2222D3478300FC973D /* crypto_int64.h */; }; - 7B3DCBEB22D3618A00FC973D /* crypto_uint64.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB2322D3478300FC973D /* crypto_uint64.h */; }; - 7B3DCBEC22D3618A00FC973D /* crypto_sign_edwards25519sha512batch.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB2422D3478300FC973D /* crypto_sign_edwards25519sha512batch.h */; }; - 7B3DCBED22D3618A00FC973D /* blocks.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB2D22D3478300FC973D /* blocks.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBEE22D3618A00FC973D /* hash.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB2E22D3478300FC973D /* hash.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBEF22D3619600FC973D /* curve25519-donna.c in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB3022D3478300FC973D /* curve25519-donna.c */; settings = {COMPILER_FLAGS = " -w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7B3DCBF022D3619A00FC973D /* Randomness.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB3222D3478300FC973D /* Randomness.m */; }; - 7B3DCBF122D3619A00FC973D /* Ed25519.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB3322D3478300FC973D /* Ed25519.m */; }; - 7B3DCBF222D3619A00FC973D /* Curve25519.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B3DCB3422D3478300FC973D /* Curve25519.m */; }; - 7B3DCBF322D3619A00FC973D /* Randomness.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB3522D3478300FC973D /* Randomness.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7B3DCBF422D3619A00FC973D /* Ed25519.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB3622D3478300FC973D /* Ed25519.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7B3DCBF522D3619A00FC973D /* Curve25519.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3DCB3722D3478300FC973D /* Curve25519.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7B3DCBF922D3647D00FC973D /* WavesSDKExtensions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7B4E1E0622C4DC3400854BAB /* WavesSDKExtensions.framework */; }; - 7B3DCBFA22D366AB00FC973D /* WavesSDKCrypto.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7B4E1DF522C4DC2800854BAB /* WavesSDKCrypto.framework */; }; - 7B3DCBFB22D366AB00FC973D /* WavesSDKExtensions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7B4E1E0622C4DC3400854BAB /* WavesSDKExtensions.framework */; }; - 7B42C0212320415C00B3E5DC /* Encodable+Base64.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B42C0202320415C00B3E5DC /* Encodable+Base64.swift */; }; - 7B4E1DE722C4DBDA00854BAB /* WavesSDK.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B4E1DE522C4DBDA00854BAB /* WavesSDK.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7B4E1DEA22C4DBDA00854BAB /* WavesSDK.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7B4E1DE322C4DBD900854BAB /* WavesSDK.framework */; }; - 7B4E1DEB22C4DBDA00854BAB /* WavesSDK.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 7B4E1DE322C4DBD900854BAB /* WavesSDK.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 7B4E1DF922C4DC2800854BAB /* WavesSDKCrypto.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B4E1DF722C4DC2800854BAB /* WavesSDKCrypto.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7B4E1DFC22C4DC2800854BAB /* WavesSDKCrypto.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7B4E1DF522C4DC2800854BAB /* WavesSDKCrypto.framework */; }; - 7B4E1DFD22C4DC2800854BAB /* WavesSDKCrypto.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 7B4E1DF522C4DC2800854BAB /* WavesSDKCrypto.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 7B4E1E0A22C4DC3400854BAB /* InternalWavesSDKExtensions.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B4E1E0822C4DC3400854BAB /* InternalWavesSDKExtensions.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7B4E1E0D22C4DC3400854BAB /* WavesSDKExtensions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7B4E1E0622C4DC3400854BAB /* WavesSDKExtensions.framework */; }; - 7B4E1E0E22C4DC3400854BAB /* WavesSDKExtensions.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 7B4E1E0622C4DC3400854BAB /* WavesSDKExtensions.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 7B4E1E4122C4DD0100854BAB /* Bundle+Version.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E1D22C4DD0100854BAB /* Bundle+Version.swift */; }; - 7B4E1E4222C4DD0100854BAB /* Assert+Message.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E1E22C4DD0100854BAB /* Assert+Message.swift */; }; - 7B4E1E4322C4DD0100854BAB /* Array+Sort.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E2022C4DD0100854BAB /* Array+Sort.swift */; }; - 7B4E1E4422C4DD0100854BAB /* Array+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E2122C4DD0100854BAB /* Array+Extension.swift */; }; - 7B4E1E4522C4DD0100854BAB /* ObjectDestructor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E2222C4DD0100854BAB /* ObjectDestructor.swift */; }; - 7B4E1E4622C4DD0100854BAB /* Dictionary+Json.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E2322C4DD0100854BAB /* Dictionary+Json.swift */; }; - 7B4E1E4722C4DD0100854BAB /* DateFormatter+ISO.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E2522C4DD0100854BAB /* DateFormatter+ISO.swift */; }; - 7B4E1E4822C4DD0100854BAB /* DateExtension+Sync.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E2622C4DD0100854BAB /* DateExtension+Sync.swift */; }; - 7B4E1E4922C4DD0100854BAB /* DateFormatter+Once.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E2722C4DD0100854BAB /* DateFormatter+Once.swift */; }; - 7B4E1E4A22C4DD0100854BAB /* Thread+Assisstants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E2822C4DD0100854BAB /* Thread+Assisstants.swift */; }; - 7B4E1E4B22C4DD0100854BAB /* JSONDecoder+JSON.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E2A22C4DD0100854BAB /* JSONDecoder+JSON.swift */; }; - 7B4E1E4C22C4DD0100854BAB /* JSONDecoder+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E2B22C4DD0100854BAB /* JSONDecoder+Rx.swift */; }; - 7B4E1E4D22C4DD0100854BAB /* RxSwift+Scheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E2C22C4DD0100854BAB /* RxSwift+Scheduler.swift */; }; - 7B4E1E4E22C4DD0100854BAB /* DispatchTimeInterval.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E2D22C4DD0100854BAB /* DispatchTimeInterval.swift */; }; - 7B4E1E4F22C4DD0100854BAB /* UInt8+Assisstants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E2E22C4DD0100854BAB /* UInt8+Assisstants.swift */; }; - 7B4E1E5022C4DD0100854BAB /* NSObject+AssociatedObject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E2F22C4DD0100854BAB /* NSObject+AssociatedObject.swift */; }; - 7B4E1E5122C4DD0100854BAB /* Encodable+Dictionary.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E3022C4DD0100854BAB /* Encodable+Dictionary.swift */; }; - 7B4E1E5222C4DD0100854BAB /* Optional+Hashable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E3122C4DD0100854BAB /* Optional+Hashable.swift */; }; - 7B4E1E5322C4DD0100854BAB /* String+URL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E3322C4DD0100854BAB /* String+URL.swift */; }; - 7B4E1E5422C4DD0100854BAB /* String+Escaped.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E3422C4DD0100854BAB /* String+Escaped.swift */; }; - 7B4E1E5522C4DD0100854BAB /* String+Utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E3522C4DD0100854BAB /* String+Utils.swift */; }; - 7B4E1E5622C4DD0100854BAB /* String+UInt.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E3622C4DD0100854BAB /* String+UInt.swift */; }; - 7B4E1E5722C4DD0100854BAB /* ObservableType+Weak.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E3722C4DD0100854BAB /* ObservableType+Weak.swift */; }; - 7B4E1E5822C4DD0100854BAB /* Any+Name.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E3822C4DD0100854BAB /* Any+Name.swift */; }; - 7B4E1E5922C4DD0100854BAB /* Runtime.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E3A22C4DD0100854BAB /* Runtime.swift */; }; - 7B4E1E5A22C4DD0100854BAB /* ObservableType+SweetLogger.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E3C22C4DD0100854BAB /* ObservableType+SweetLogger.swift */; }; - 7B4E1E5B22C4DD0100854BAB /* SweetLoggerConsole.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E3D22C4DD0100854BAB /* SweetLoggerConsole.swift */; }; - 7B4E1E5C22C4DD0100854BAB /* SweetLoggerProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E3E22C4DD0100854BAB /* SweetLoggerProtocol.swift */; }; - 7B4E1E5D22C4DD0100854BAB /* SweetLogger.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E3F22C4DD0100854BAB /* SweetLogger.swift */; }; - 7B4E1E5E22C4DD0100854BAB /* TSUD.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1E4022C4DD0100854BAB /* TSUD.swift */; }; - 7B4E1F5F22C4DD2D00854BAB /* SignatureProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EE422C4DD2D00854BAB /* SignatureProtocol.swift */; }; - 7B4E1F6022C4DD2D00854BAB /* TransactionSignatureProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EE522C4DD2D00854BAB /* TransactionSignatureProtocol.swift */; }; - 7B4E1F6122C4DD2D00854BAB /* TransactionSignatureV2.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EE622C4DD2D00854BAB /* TransactionSignatureV2.swift */; }; - 7B4E1F6322C4DD2D00854BAB /* WavesSDK.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EE922C4DD2D00854BAB /* WavesSDK.swift */; }; - 7B4E1F6422C4DD2D00854BAB /* WavesEnvironment.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EEA22C4DD2D00854BAB /* WavesEnvironment.swift */; }; - 7B4E1F6522C4DD2D00854BAB /* DataServices.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EEC22C4DD2D00854BAB /* DataServices.swift */; }; - 7B4E1F6622C4DD2D00854BAB /* InternalWavesService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EED22C4DD2D00854BAB /* InternalWavesService.swift */; }; - 7B4E1F6722C4DD2D00854BAB /* WavesServices.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EEE22C4DD2D00854BAB /* WavesServices.swift */; }; - 7B4E1F6822C4DD2D00854BAB /* MatcherServices.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EEF22C4DD2D00854BAB /* MatcherServices.swift */; }; - 7B4E1F6922C4DD2D00854BAB /* NodeServices.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EF022C4DD2D00854BAB /* NodeServices.swift */; }; - 7B4E1F6A22C4DD2D00854BAB /* ContentType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EF122C4DD2D00854BAB /* ContentType.swift */; }; - 7B4E1F6B22C4DD2D00854BAB /* NetworkError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EF222C4DD2D00854BAB /* NetworkError.swift */; }; - 7B4E1F6C22C4DD2D00854BAB /* ServicesProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EF422C4DD2D00854BAB /* ServicesProtocol.swift */; }; - 7B4E1F6D22C4DD2D00854BAB /* DataServicesProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EF522C4DD2D00854BAB /* DataServicesProtocol.swift */; }; - 7B4E1F6E22C4DD2D00854BAB /* MatcherServicesProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EF622C4DD2D00854BAB /* MatcherServicesProtocol.swift */; }; - 7B4E1F6F22C4DD2D00854BAB /* WavesServicesProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EF722C4DD2D00854BAB /* WavesServicesProtocol.swift */; }; - 7B4E1F7022C4DD2D00854BAB /* NodeServicesProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EF822C4DD2D00854BAB /* NodeServicesProtocol.swift */; }; - 7B4E1F7122C4DD2D00854BAB /* String+Waves.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EF922C4DD2D00854BAB /* String+Waves.swift */; }; - 7B4E1F7222C4DD2D00854BAB /* OrderBookMatcherTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EFD22C4DD2D00854BAB /* OrderBookMatcherTarget.swift */; }; - 7B4E1F7322C4DD2D00854BAB /* PublicKeyMatcherTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EFE22C4DD2D00854BAB /* PublicKeyMatcherTarget.swift */; }; - 7B4E1F7422C4DD2D00854BAB /* BalanceMatcherTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1EFF22C4DD2D00854BAB /* BalanceMatcherTarget.swift */; }; - 7B4E1F7522C4DD2D00854BAB /* BalanceMatcherQuery.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F0122C4DD2D00854BAB /* BalanceMatcherQuery.swift */; }; - 7B4E1F7622C4DD2D00854BAB /* MarketMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F0322C4DD2D00854BAB /* MarketMatcher.swift */; }; - 7B4E1F7722C4DD2D00854BAB /* OrderMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F0422C4DD2D00854BAB /* OrderMatcher.swift */; }; - 7B4E1F7822C4DD2D00854BAB /* OrderBookMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F0522C4DD2D00854BAB /* OrderBookMatcher.swift */; }; - 7B4E1F7922C4DD2D00854BAB /* MatcherServiceTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F0622C4DD2D00854BAB /* MatcherServiceTypes.swift */; }; - 7B4E1F7A22C4DD2D00854BAB /* PublicKeyMatcherService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F0822C4DD2D00854BAB /* PublicKeyMatcherService.swift */; }; - 7B4E1F7B22C4DD2D00854BAB /* OrderBookMatcherService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F0922C4DD2D00854BAB /* OrderBookMatcherService.swift */; }; - 7B4E1F7C22C4DD2D00854BAB /* BalanceMatcherService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F0A22C4DD2D00854BAB /* BalanceMatcherService.swift */; }; - 7B4E1F7D22C4DD2D00854BAB /* OrderBookMatcherServiceProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F0C22C4DD2D00854BAB /* OrderBookMatcherServiceProtocol.swift */; }; - 7B4E1F7E22C4DD2D00854BAB /* PublicKeyMatcherServiceProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F0D22C4DD2D00854BAB /* PublicKeyMatcherServiceProtocol.swift */; }; - 7B4E1F7F22C4DD2D00854BAB /* BalanceMatcherServiceProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F0E22C4DD2D00854BAB /* BalanceMatcherServiceProtocol.swift */; }; - 7B4E1F8022C4DD2D00854BAB /* NodeTargetTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F1022C4DD2D00854BAB /* NodeTargetTypes.swift */; }; - 7B4E1F8122C4DD2D00854BAB /* AssetsNodeTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F1222C4DD2D00854BAB /* AssetsNodeTarget.swift */; }; - 7B4E1F8222C4DD2D00854BAB /* TransactionNodeTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F1322C4DD2D00854BAB /* TransactionNodeTarget.swift */; }; - 7B4E1F8322C4DD2D00854BAB /* BlocksNodeTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F1422C4DD2D00854BAB /* BlocksNodeTarget.swift */; }; - 7B4E1F8422C4DD2D00854BAB /* UtilsNodeTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F1522C4DD2D00854BAB /* UtilsNodeTarget.swift */; }; - 7B4E1F8522C4DD2D00854BAB /* LeasingNodeTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F1622C4DD2D00854BAB /* LeasingNodeTarget.swift */; }; - 7B4E1F8622C4DD2D00854BAB /* AddressesNodeTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F1722C4DD2D00854BAB /* AddressesNodeTarget.swift */; }; - 7B4E1F8722C4DD2D00854BAB /* TransactionNodeQuery.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F1922C4DD2D00854BAB /* TransactionNodeQuery.swift */; }; - 7B4E1F8822C4DD2D00854BAB /* BlockNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F1B22C4DD2D00854BAB /* BlockNode.swift */; }; - 7B4E1F8922C4DD2D00854BAB /* AddressScriptInfoNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F1C22C4DD2D00854BAB /* AddressScriptInfoNode.swift */; }; - 7B4E1F8A22C4DD2D00854BAB /* AccountBalanceNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F1D22C4DD2D00854BAB /* AccountBalanceNode.swift */; }; - 7B4E1F8B22C4DD2D00854BAB /* MassTransferTransactionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F1F22C4DD2D00854BAB /* MassTransferTransactionNode.swift */; }; - 7B4E1F8C22C4DD2D00854BAB /* IssueTransactionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F2022C4DD2D00854BAB /* IssueTransactionNode.swift */; }; - 7B4E1F8D22C4DD2D00854BAB /* SetAssetScriptTransactionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F2122C4DD2D00854BAB /* SetAssetScriptTransactionNode.swift */; }; - 7B4E1F8E22C4DD2D00854BAB /* DataTransactionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F2222C4DD2D00854BAB /* DataTransactionNode.swift */; }; - 7B4E1F8F22C4DD2D00854BAB /* AliasTransactionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F2322C4DD2D00854BAB /* AliasTransactionNode.swift */; }; - 7B4E1F9022C4DD2D00854BAB /* TransferTransactionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F2422C4DD2D00854BAB /* TransferTransactionNode.swift */; }; - 7B4E1F9122C4DD2D00854BAB /* BurnTransactionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F2522C4DD2D00854BAB /* BurnTransactionNode.swift */; }; - 7B4E1F9222C4DD2D00854BAB /* SponsorshipTransactionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F2622C4DD2D00854BAB /* SponsorshipTransactionNode.swift */; }; - 7B4E1F9322C4DD2D00854BAB /* ExchangeTransactionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F2722C4DD2D00854BAB /* ExchangeTransactionNode.swift */; }; - 7B4E1F9422C4DD2D00854BAB /* LeaseCancelTransactionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F2822C4DD2D00854BAB /* LeaseCancelTransactionNode.swift */; }; - 7B4E1F9522C4DD2D00854BAB /* ReissueTransactionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F2922C4DD2D00854BAB /* ReissueTransactionNode.swift */; }; - 7B4E1F9622C4DD2D00854BAB /* LeaseTransactionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F2A22C4DD2D00854BAB /* LeaseTransactionNode.swift */; }; - 7B4E1F9722C4DD2D00854BAB /* UnrecognisedTransactionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F2B22C4DD2D00854BAB /* UnrecognisedTransactionNode.swift */; }; - 7B4E1F9822C4DD2D00854BAB /* InvokeScriptTransactionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F2C22C4DD2D00854BAB /* InvokeScriptTransactionNode.swift */; }; - 7B4E1F9922C4DD2D00854BAB /* TransactionContainersNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F2D22C4DD2D00854BAB /* TransactionContainersNode.swift */; }; - 7B4E1F9A22C4DD2D00854BAB /* SetScriptTransactionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F2E22C4DD2D00854BAB /* SetScriptTransactionNode.swift */; }; - 7B4E1F9B22C4DD2D00854BAB /* AssetDetailNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F2F22C4DD2D00854BAB /* AssetDetailNode.swift */; }; - 7B4E1F9C22C4DD2D00854BAB /* AccountAssetsBalanceNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F3022C4DD2D00854BAB /* AccountAssetsBalanceNode.swift */; }; - 7B4E1F9D22C4DD2D00854BAB /* UtilsNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F3122C4DD2D00854BAB /* UtilsNode.swift */; }; - 7B4E1F9E22C4DD2D00854BAB /* TransactionNodeService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F3322C4DD2D00854BAB /* TransactionNodeService.swift */; }; - 7B4E1F9F22C4DD2D00854BAB /* UtilsNodeService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F3422C4DD2D00854BAB /* UtilsNodeService.swift */; }; - 7B4E1FA022C4DD2D00854BAB /* LeasingNodeService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F3522C4DD2D00854BAB /* LeasingNodeService.swift */; }; - 7B4E1FA122C4DD2D00854BAB /* BlocksNodeService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F3622C4DD2D00854BAB /* BlocksNodeService.swift */; }; - 7B4E1FA222C4DD2D00854BAB /* AssetsNodeService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F3722C4DD2D00854BAB /* AssetsNodeService.swift */; }; - 7B4E1FA322C4DD2D00854BAB /* AddressesNodeService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F3822C4DD2D00854BAB /* AddressesNodeService.swift */; }; - 7B4E1FA422C4DD2D00854BAB /* AddressesNodeServiceProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F3A22C4DD2D00854BAB /* AddressesNodeServiceProtocol.swift */; }; - 7B4E1FA522C4DD2D00854BAB /* TransactionNodeServiceProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F3B22C4DD2D00854BAB /* TransactionNodeServiceProtocol.swift */; }; - 7B4E1FA622C4DD2D00854BAB /* AssetsNodeServiceProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F3C22C4DD2D00854BAB /* AssetsNodeServiceProtocol.swift */; }; - 7B4E1FA722C4DD2D00854BAB /* UtilsNodeServiceProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F3D22C4DD2D00854BAB /* UtilsNodeServiceProtocol.swift */; }; - 7B4E1FA822C4DD2D00854BAB /* BlocksNodeServiceProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F3E22C4DD2D00854BAB /* BlocksNodeServiceProtocol.swift */; }; - 7B4E1FA922C4DD2D00854BAB /* LeasingNodeServiceProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F3F22C4DD2D00854BAB /* LeasingNodeServiceProtocol.swift */; }; - 7B4E1FAA22C4DD2D00854BAB /* TransactionsDataTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F4222C4DD2D00854BAB /* TransactionsDataTarget.swift */; }; - 7B4E1FAB22C4DD2D00854BAB /* AssetsDataTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F4322C4DD2D00854BAB /* AssetsDataTarget.swift */; }; - 7B4E1FAC22C4DD2D00854BAB /* CandlesDataTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F4422C4DD2D00854BAB /* CandlesDataTarget.swift */; }; - 7B4E1FAD22C4DD2D00854BAB /* PairsPriceDataTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F4522C4DD2D00854BAB /* PairsPriceDataTarget.swift */; }; - 7B4E1FAE22C4DD2D00854BAB /* AliasDataTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F4622C4DD2D00854BAB /* AliasDataTarget.swift */; }; - 7B4E1FAF22C4DD2D00854BAB /* ExchangeFiltersDataQuery.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F4822C4DD2D00854BAB /* ExchangeFiltersDataQuery.swift */; }; - 7B4E1FB022C4DD2D00854BAB /* CandleFiltersDataQuery.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F4922C4DD2D00854BAB /* CandleFiltersDataQuery.swift */; }; - 7B4E1FB122C4DD2D00854BAB /* PairPriceData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F4B22C4DD2D00854BAB /* PairPriceData.swift */; }; - 7B4E1FB222C4DD2D00854BAB /* AssetData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F4C22C4DD2D00854BAB /* AssetData.swift */; }; - 7B4E1FB322C4DD2D00854BAB /* TransactionData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F4D22C4DD2D00854BAB /* TransactionData.swift */; }; - 7B4E1FB422C4DD2D00854BAB /* CandleData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F4E22C4DD2D00854BAB /* CandleData.swift */; }; - 7B4E1FB522C4DD2D00854BAB /* AliasData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F4F22C4DD2D00854BAB /* AliasData.swift */; }; - 7B4E1FB622C4DD2D00854BAB /* ResponseData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F5022C4DD2D00854BAB /* ResponseData.swift */; }; - 7B4E1FB722C4DD2D00854BAB /* DataServiceTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F5122C4DD2D00854BAB /* DataServiceTypes.swift */; }; - 7B4E1FB822C4DD2D00854BAB /* CandlesDataService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F5322C4DD2D00854BAB /* CandlesDataService.swift */; }; - 7B4E1FB922C4DD2D00854BAB /* PairsPriceDataService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F5422C4DD2D00854BAB /* PairsPriceDataService.swift */; }; - 7B4E1FBA22C4DD2D00854BAB /* AliasDataService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F5522C4DD2D00854BAB /* AliasDataService.swift */; }; - 7B4E1FBB22C4DD2D00854BAB /* AssetsDataService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F5622C4DD2D00854BAB /* AssetsDataService.swift */; }; - 7B4E1FBC22C4DD2D00854BAB /* TransactionsDataService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F5722C4DD2D00854BAB /* TransactionsDataService.swift */; }; - 7B4E1FBD22C4DD2D00854BAB /* CandlesDataServiceProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F5922C4DD2D00854BAB /* CandlesDataServiceProtocol.swift */; }; - 7B4E1FBE22C4DD2D00854BAB /* AliasDataServiceProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F5A22C4DD2D00854BAB /* AliasDataServiceProtocol.swift */; }; - 7B4E1FBF22C4DD2D00854BAB /* PairsPriceDataServiceProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F5B22C4DD2D00854BAB /* PairsPriceDataServiceProtocol.swift */; }; - 7B4E1FC022C4DD2D00854BAB /* AssetsDataServiceProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F5C22C4DD2D00854BAB /* AssetsDataServiceProtocol.swift */; }; - 7B4E1FC122C4DD2D00854BAB /* TransactionsDataServiceProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F5D22C4DD2D00854BAB /* TransactionsDataServiceProtocol.swift */; }; - 7B4E1FC222C4DD2D00854BAB /* WavesSDKConstants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4E1F5E22C4DD2D00854BAB /* WavesSDKConstants.swift */; }; - 7B72BBAE22550493004A047F /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B72BBAD22550493004A047F /* AppDelegate.swift */; }; - 7B72BBB322550493004A047F /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 7B72BBB122550493004A047F /* Main.storyboard */; }; - 7B72BBB522550495004A047F /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 7B72BBB422550495004A047F /* Assets.xcassets */; }; - 7B72BBB822550495004A047F /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 7B72BBB622550495004A047F /* LaunchScreen.storyboard */; }; - 7B74597622C64EDF0047A005 /* WavesServicesTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B74597522C64EDF0047A005 /* WavesServicesTest.swift */; }; - 7B74597822C64F840047A005 /* WavesServicesBroadcastTransactionsTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B74597722C64F840047A005 /* WavesServicesBroadcastTransactionsTest.swift */; }; - 7B74597922C653FB0047A005 /* TransactionSign.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B74597322C637A50047A005 /* TransactionSign.swift */; }; - 7B7A4B7722D3757500E0A8CD /* WavesSDK.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7B4E1DE322C4DBD900854BAB /* WavesSDK.framework */; }; - 7B7A4B7822D3757500E0A8CD /* WavesSDKCrypto.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7B4E1DF522C4DC2800854BAB /* WavesSDKCrypto.framework */; }; - 7B7A4B7922D3757500E0A8CD /* WavesSDKExtensions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7B4E1E0622C4DC3400854BAB /* WavesSDKExtensions.framework */; }; - 7B95114B225E16370030390C /* WavesCryptoTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B95114A225E16370030390C /* WavesCryptoTest.swift */; }; - 7BB6759B24D19C43004AA4FF /* UpdateAssetInfoTransactionNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7BB6759A24D19C43004AA4FF /* UpdateAssetInfoTransactionNode.swift */; }; - 7BB6EF82258B7F5600CC5164 /* DispatchQueuePool.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7BB6EF81258B7F5600CC5164 /* DispatchQueuePool.swift */; }; - 7BBB233022CA2B8D0057095D /* TransactionSignatureV1.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7BBB232E22CA2A940057095D /* TransactionSignatureV1.swift */; }; - 7BBB233322CA2C990057095D /* TransactionType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7BBB233122CA2C600057095D /* TransactionType.swift */; }; - 7BBB233622CE13140057095D /* BaseTransactionQueryProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7BBB233422CE13080057095D /* BaseTransactionQueryProtocol.swift */; }; - 7BE1930F243CFD5B00916E15 /* CachePolicyPlugin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7BE1930E243CFD5B00916E15 /* CachePolicyPlugin.swift */; }; - 872C36A8241A38100050250B /* MassTransferTransaction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 872C36A7241A38100050250B /* MassTransferTransaction.swift */; }; - 87409DB02417B06000726C12 /* MassTransferDataQuery.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87409DAF2417B06000726C12 /* MassTransferDataQuery.swift */; }; - 8756669B242BBDD200E9F177 /* AddressData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8756669A242BBDD200E9F177 /* AddressData.swift */; }; - A75CDC2E7D018C77F6038A77 /* Pods_Waves_Exchange_SDK_StubTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A604E380777BE7E3B63B49F5 /* Pods_Waves_Exchange_SDK_StubTest.framework */; }; - D0DFEC95196ECE27B7B0A8A0 /* Pods_Waves_Exchange_SDK_WavesSDK.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 781290C6655578036CDA2D08 /* Pods_Waves_Exchange_SDK_WavesSDK.framework */; }; - E9399076231FD41D00302490 /* WavesKeeper+Decodable.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9399075231FD41D00302490 /* WavesKeeper+Decodable.swift */; }; - E9496F5923D7D93500FBF78F /* PairsRateDataTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9496F5823D7D93500FBF78F /* PairsRateDataTarget.swift */; }; - E9496F5B23D7DBF300FBF78F /* PairsRateData.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9496F5A23D7DBF300FBF78F /* PairsRateData.swift */; }; - E96DE18F231805A7005E1FD9 /* JSONDecoder+TimestampDiff.swift in Sources */ = {isa = PBXBuildFile; fileRef = E96DE18E231805A7005E1FD9 /* JSONDecoder+TimestampDiff.swift */; }; - E97A74A922D4B26200777C39 /* String+Bytes.swift in Sources */ = {isa = PBXBuildFile; fileRef = E97A74A822D4B26200777C39 /* String+Bytes.swift */; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - 7B4E1DE822C4DBDA00854BAB /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 7B72BBA222550493004A047F /* Project object */; - proxyType = 1; - remoteGlobalIDString = 7B4E1DE222C4DBD900854BAB; - remoteInfo = InternalWavesSDK; - }; - 7B4E1DFA22C4DC2800854BAB /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 7B72BBA222550493004A047F /* Project object */; - proxyType = 1; - remoteGlobalIDString = 7B4E1DF422C4DC2800854BAB; - remoteInfo = InternalWavesSDKCrypto; - }; - 7B4E1E0B22C4DC3400854BAB /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 7B72BBA222550493004A047F /* Project object */; - proxyType = 1; - remoteGlobalIDString = 7B4E1E0522C4DC3400854BAB; - remoteInfo = InternalWavesSDKExtensions; - }; - 7B7A4B6F22D3723F00E0A8CD /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 7B72BBA222550493004A047F /* Project object */; - proxyType = 1; - remoteGlobalIDString = 7B72BBA922550493004A047F; - remoteInfo = WavesSDKExample; - }; - 7B7A4B7122D3755900E0A8CD /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 7B72BBA222550493004A047F /* Project object */; - proxyType = 1; - remoteGlobalIDString = 7B4E1DE222C4DBD900854BAB; - remoteInfo = WavesSDK; - }; - 7B7A4B7322D3755900E0A8CD /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 7B72BBA222550493004A047F /* Project object */; - proxyType = 1; - remoteGlobalIDString = 7B4E1DF422C4DC2800854BAB; - remoteInfo = WavesSDKCrypto; - }; - 7B7A4B7522D3755900E0A8CD /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 7B72BBA222550493004A047F /* Project object */; - proxyType = 1; - remoteGlobalIDString = 7B4E1E0522C4DC3400854BAB; - remoteInfo = WavesSDKExtensions; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 7B4E1DEF22C4DBDA00854BAB /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - 7B4E1DFD22C4DC2800854BAB /* WavesSDKCrypto.framework in Embed Frameworks */, - 7B4E1DEB22C4DBDA00854BAB /* WavesSDK.framework in Embed Frameworks */, - 7B4E1E0E22C4DC3400854BAB /* WavesSDKExtensions.framework in Embed Frameworks */, - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 0508072621377B4536DE03E7 /* Pods-Waves-Exchange-SDK-StubTest.release-adhoc.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-StubTest.release-adhoc.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-StubTest/Pods-Waves-Exchange-SDK-StubTest.release-adhoc.xcconfig"; sourceTree = ""; }; - 119CE632AC148FBB7B881235 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.release-prod.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDKExtensions.release-prod.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDKExtensions/Pods-Waves-Exchange-SDK-WavesSDKExtensions.release-prod.xcconfig"; sourceTree = ""; }; - 14C7D0D8FC695A614F1600AA /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.test-prod.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDKCrypto.test-prod.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDKCrypto/Pods-Waves-Exchange-SDK-WavesSDKCrypto.test-prod.xcconfig"; sourceTree = ""; }; - 1E76639DE833759D4302531C /* Pods-WavesSDKTests.release-prod.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WavesSDKTests.release-prod.xcconfig"; path = "Target Support Files/Pods-WavesSDKTests/Pods-WavesSDKTests.release-prod.xcconfig"; sourceTree = ""; }; - 21786F8FC9A0EB30759912E3 /* Pods-Waves-Exchange-SDK-WavesSDK.dev-debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDK.dev-debug.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDK/Pods-Waves-Exchange-SDK-WavesSDK.dev-debug.xcconfig"; sourceTree = ""; }; - 224CA0C24794921AB03072FE /* Pods-Waves-Exchange-SDK-WavesSDK.release-adhoc.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDK.release-adhoc.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDK/Pods-Waves-Exchange-SDK-WavesSDK.release-adhoc.xcconfig"; sourceTree = ""; }; - 28D3C243802CEFE0ED716031 /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.release-dev.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDKCrypto.release-dev.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDKCrypto/Pods-Waves-Exchange-SDK-WavesSDKCrypto.release-dev.xcconfig"; sourceTree = ""; }; - 2947576B28F5E4E8904B5301 /* Pods-WavesSDKTests.release-adhoc.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WavesSDKTests.release-adhoc.xcconfig"; path = "Target Support Files/Pods-WavesSDKTests/Pods-WavesSDKTests.release-adhoc.xcconfig"; sourceTree = ""; }; - 36FCA4E83FFD9076A9C08FE7 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.test-prod.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDKExtensions.test-prod.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDKExtensions/Pods-Waves-Exchange-SDK-WavesSDKExtensions.test-prod.xcconfig"; sourceTree = ""; }; - 400C8FCA907BB961EF91A346 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.dev-debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDKExtensions.dev-debug.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDKExtensions/Pods-Waves-Exchange-SDK-WavesSDKExtensions.dev-debug.xcconfig"; sourceTree = ""; }; - 42BB3EF62594C60C00A0142A /* NumberFormatter+Once.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "NumberFormatter+Once.swift"; sourceTree = ""; }; - 42D7DDC3AFBDDE9DEF887387 /* Pods-Waves-Exchange-SDK-WavesSDK.release-prod.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDK.release-prod.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDK/Pods-Waves-Exchange-SDK-WavesSDK.release-prod.xcconfig"; sourceTree = ""; }; - 47D4ADFC1CA7318E60FB0AC4 /* Pods-WavesSDKTests.dev-debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WavesSDKTests.dev-debug.xcconfig"; path = "Target Support Files/Pods-WavesSDKTests/Pods-WavesSDKTests.dev-debug.xcconfig"; sourceTree = ""; }; - 4D9AFCBE2E229B7214B2B634 /* Pods-Waves-Exchange-SDK-StubTest.dev-adhoc.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-StubTest.dev-adhoc.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-StubTest/Pods-Waves-Exchange-SDK-StubTest.dev-adhoc.xcconfig"; sourceTree = ""; }; - 4E1426FAF92B2F37F92E43F1 /* Pods-Waves-Exchange-SDK-StubTest.test-dev.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-StubTest.test-dev.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-StubTest/Pods-Waves-Exchange-SDK-StubTest.test-dev.xcconfig"; sourceTree = ""; }; - 4E84F7D094272DFDB954D1ED /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.dev-debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDKCrypto.dev-debug.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDKCrypto/Pods-Waves-Exchange-SDK-WavesSDKCrypto.dev-debug.xcconfig"; sourceTree = ""; }; - 5DE775DBF7C3635CD644B77D /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.test-dev.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDKCrypto.test-dev.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDKCrypto/Pods-Waves-Exchange-SDK-WavesSDKCrypto.test-dev.xcconfig"; sourceTree = ""; }; - 639D0A1922E6D1A28107B0C3 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.dev-adhoc.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDKExtensions.dev-adhoc.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDKExtensions/Pods-Waves-Exchange-SDK-WavesSDKExtensions.dev-adhoc.xcconfig"; sourceTree = ""; }; - 653FBBA552926C9DAA70984C /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.release-adhoc.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDKExtensions.release-adhoc.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDKExtensions/Pods-Waves-Exchange-SDK-WavesSDKExtensions.release-adhoc.xcconfig"; sourceTree = ""; }; - 6E7AA1F5018E52FD7CFB2112 /* Pods_Waves_Exchange_SDK_WavesSDKExtensions.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Waves_Exchange_SDK_WavesSDKExtensions.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 71CEB8FB7CB35D81DC095886 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.test-dev.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDKExtensions.test-dev.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDKExtensions/Pods-Waves-Exchange-SDK-WavesSDKExtensions.test-dev.xcconfig"; sourceTree = ""; }; - 731BD0FC3F3C3FC1AC9B5D8C /* Pods-Waves-Exchange-SDK-WavesSDK.test-dev.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDK.test-dev.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDK/Pods-Waves-Exchange-SDK-WavesSDK.test-dev.xcconfig"; sourceTree = ""; }; - 781290C6655578036CDA2D08 /* Pods_Waves_Exchange_SDK_WavesSDK.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Waves_Exchange_SDK_WavesSDK.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 7B0B6F9A231E6DC800CC5DCB /* DictionaryEncoder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DictionaryEncoder.swift; sourceTree = ""; }; - 7B3681A223152E13000D5592 /* WavesKeeper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WavesKeeper.swift; sourceTree = ""; }; - 7B3DC9B622CFC37500FC973D /* keccak.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = keccak.c; sourceTree = ""; }; - 7B3DC9B722CFC37500FC973D /* keccak.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = keccak.h; sourceTree = ""; }; - 7B3DCA1A22CFC37500FC973D /* Words.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Words.swift; sourceTree = ""; }; - 7B3DCA1B22CFC37500FC973D /* WavesCrypto.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WavesCrypto.swift; sourceTree = ""; }; - 7B3DCA8422CFC9C700FC973D /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; - 7B3DCAB622D3421E00FC973D /* base58.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = base58.h; sourceTree = ""; }; - 7B3DCAB722D3421E00FC973D /* Base58Encoder.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Base58Encoder.swift; sourceTree = ""; }; - 7B3DCAB822D3421E00FC973D /* base58.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = base58.c; sourceTree = ""; }; - 7B3DCAC222D3472C00FC973D /* utils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = utils.h; sourceTree = ""; }; - 7B3DCAC322D3472C00FC973D /* export.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = export.h; sourceTree = ""; }; - 7B3DCAC422D3472C00FC973D /* randombytes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = randombytes.h; sourceTree = ""; }; - 7B3DCAC522D3472C00FC973D /* crypto_generichash.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = crypto_generichash.c; sourceTree = ""; }; - 7B3DCAC622D3472C00FC973D /* api.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = api.h; sourceTree = ""; }; - 7B3DCAC722D3472C00FC973D /* generichash_blake2_api.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = generichash_blake2_api.c; sourceTree = ""; }; - 7B3DCAC822D3472C00FC973D /* utils.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = utils.c; sourceTree = ""; }; - 7B3DCAC922D3472C00FC973D /* blake2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = blake2.h; sourceTree = ""; }; - 7B3DCACA22D3472C00FC973D /* generichash_blake2b.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = generichash_blake2b.c; sourceTree = ""; }; - 7B3DCACB22D3472C00FC973D /* blake2b-ref.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "blake2b-ref.c"; sourceTree = ""; }; - 7B3DCACC22D3472C00FC973D /* blake2-impl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "blake2-impl.h"; sourceTree = ""; }; - 7B3DCACD22D3472C00FC973D /* crypto_generichash.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = crypto_generichash.h; sourceTree = ""; }; - 7B3DCACE22D3472C00FC973D /* crypto_generichash_blake2b.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = crypto_generichash_blake2b.h; sourceTree = ""; }; - 7B3DCADF22D3478300FC973D /* ge_msub.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_msub.c; sourceTree = ""; }; - 7B3DCAE022D3478300FC973D /* fe_sq2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fe_sq2.c; sourceTree = ""; }; - 7B3DCAE122D3478300FC973D /* sqrtm1.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sqrtm1.h; sourceTree = ""; }; - 7B3DCAE822D3478300FC973D /* fe_pow22523.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fe_pow22523.c; sourceTree = ""; }; - 7B3DCAE922D3478300FC973D /* ge_madd.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_madd.c; sourceTree = ""; }; - 7B3DCAEA22D3478300FC973D /* ge_p3_tobytes.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_p3_tobytes.c; sourceTree = ""; }; - 7B3DCAEB22D3478300FC973D /* ge_p3_dbl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_p3_dbl.c; sourceTree = ""; }; - 7B3DCAEC22D3478300FC973D /* sc_muladd.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sc_muladd.c; sourceTree = ""; }; - 7B3DCAED22D3478300FC973D /* fe_sub.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fe_sub.c; sourceTree = ""; }; - 7B3DCAEE22D3478300FC973D /* ge_sub.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ge_sub.h; sourceTree = ""; }; - 7B3DCAEF22D3478300FC973D /* fe_isnonzero.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fe_isnonzero.c; sourceTree = ""; }; - 7B3DCAF022D3478300FC973D /* pow225521.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = pow225521.h; sourceTree = ""; }; - 7B3DCAF122D3478300FC973D /* fe_add.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fe_add.c; sourceTree = ""; }; - 7B3DCAF222D3478300FC973D /* ge_add.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ge_add.h; sourceTree = ""; }; - 7B3DCAF322D3478300FC973D /* ge_p1p1_to_p2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_p1p1_to_p2.c; sourceTree = ""; }; - 7B3DCAF422D3478300FC973D /* fe_invert.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fe_invert.c; sourceTree = ""; }; - 7B3DCAF522D3478300FC973D /* ge_tobytes.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_tobytes.c; sourceTree = ""; }; - 7B3DCAF722D3478300FC973D /* zeroize.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = zeroize.h; sourceTree = ""; }; - 7B3DCAF822D3478300FC973D /* compare.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = compare.c; sourceTree = ""; }; - 7B3DCAF922D3478300FC973D /* crypto_hash_sha512.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = crypto_hash_sha512.h; sourceTree = ""; }; - 7B3DCAFA22D3478300FC973D /* curve_sigs.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = curve_sigs.c; sourceTree = ""; }; - 7B3DCAFB22D3478300FC973D /* sign_modified.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sign_modified.c; sourceTree = ""; }; - 7B3DCAFC22D3478300FC973D /* compare.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = compare.h; sourceTree = ""; }; - 7B3DCAFD22D3478300FC973D /* zeroize.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = zeroize.c; sourceTree = ""; }; - 7B3DCAFE22D3478300FC973D /* curve_sigs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = curve_sigs.h; sourceTree = ""; }; - 7B3DCAFF22D3478300FC973D /* ge_p2_0.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_p2_0.c; sourceTree = ""; }; - 7B3DCB0022D3478300FC973D /* ge_p3_0.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_p3_0.c; sourceTree = ""; }; - 7B3DCB0122D3478300FC973D /* fe_cmov.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fe_cmov.c; sourceTree = ""; }; - 7B3DCB0222D3478300FC973D /* ge_p2_dbl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_p2_dbl.c; sourceTree = ""; }; - 7B3DCB0322D3478300FC973D /* fe_1.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fe_1.c; sourceTree = ""; }; - 7B3DCB0422D3478300FC973D /* fe_copy.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fe_copy.c; sourceTree = ""; }; - 7B3DCB0522D3478300FC973D /* sign.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sign.c; sourceTree = ""; }; - 7B3DCB0622D3478300FC973D /* d2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = d2.h; sourceTree = ""; }; - 7B3DCB0722D3478300FC973D /* api.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = api.h; sourceTree = ""; }; - 7B3DCB0822D3478300FC973D /* fe_0.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fe_0.c; sourceTree = ""; }; - 7B3DCB0922D3478300FC973D /* ge_madd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ge_madd.h; sourceTree = ""; }; - 7B3DCB0A22D3478300FC973D /* ge_msub.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ge_msub.h; sourceTree = ""; }; - 7B3DCB0B22D3478300FC973D /* fe_tobytes.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fe_tobytes.c; sourceTree = ""; }; - 7B3DCB0C22D3478300FC973D /* ge_p3_to_cached.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_p3_to_cached.c; sourceTree = ""; }; - 7B3DCB0D22D3478300FC973D /* ge_add.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_add.c; sourceTree = ""; }; - 7B3DCB0E22D3478300FC973D /* fe_neg.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fe_neg.c; sourceTree = ""; }; - 7B3DCB0F22D3478300FC973D /* ge_sub.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_sub.c; sourceTree = ""; }; - 7B3DCB1022D3478300FC973D /* ge_scalarmult_base.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_scalarmult_base.c; sourceTree = ""; }; - 7B3DCB1122D3478300FC973D /* fe.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fe.h; sourceTree = ""; }; - 7B3DCB1222D3478300FC973D /* ge_double_scalarmult.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_double_scalarmult.c; sourceTree = ""; }; - 7B3DCB1322D3478300FC973D /* ge_precomp_0.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_precomp_0.c; sourceTree = ""; }; - 7B3DCB1422D3478300FC973D /* fe_frombytes.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fe_frombytes.c; sourceTree = ""; }; - 7B3DCB1522D3478300FC973D /* pow22523.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = pow22523.h; sourceTree = ""; }; - 7B3DCB1622D3478300FC973D /* fe_isnegative.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fe_isnegative.c; sourceTree = ""; }; - 7B3DCB1722D3478300FC973D /* ge_p2_dbl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ge_p2_dbl.h; sourceTree = ""; }; - 7B3DCB1822D3478300FC973D /* d.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = d.h; sourceTree = ""; }; - 7B3DCB1922D3478300FC973D /* ge_frombytes.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_frombytes.c; sourceTree = ""; }; - 7B3DCB1A22D3478300FC973D /* fe_sq.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fe_sq.c; sourceTree = ""; }; - 7B3DCB1B22D3478300FC973D /* sc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sc.h; sourceTree = ""; }; - 7B3DCB1C22D3478300FC973D /* ge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ge.h; sourceTree = ""; }; - 7B3DCB1E22D3478300FC973D /* crypto_uint32.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = crypto_uint32.h; sourceTree = ""; }; - 7B3DCB1F22D3478300FC973D /* crypto_int32.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = crypto_int32.h; sourceTree = ""; }; - 7B3DCB2022D3478300FC973D /* crypto_sign.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = crypto_sign.h; sourceTree = ""; }; - 7B3DCB2122D3478300FC973D /* crypto_verify_32.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = crypto_verify_32.h; sourceTree = ""; }; - 7B3DCB2222D3478300FC973D /* crypto_int64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = crypto_int64.h; sourceTree = ""; }; - 7B3DCB2322D3478300FC973D /* crypto_uint64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = crypto_uint64.h; sourceTree = ""; }; - 7B3DCB2422D3478300FC973D /* crypto_sign_edwards25519sha512batch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = crypto_sign_edwards25519sha512batch.h; sourceTree = ""; }; - 7B3DCB2522D3478300FC973D /* open.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = open.c; sourceTree = ""; }; - 7B3DCB2622D3478300FC973D /* sc_reduce.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sc_reduce.c; sourceTree = ""; }; - 7B3DCB2722D3478300FC973D /* ge_p1p1_to_p3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_p1p1_to_p3.c; sourceTree = ""; }; - 7B3DCB2822D3478300FC973D /* fe_mul.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fe_mul.c; sourceTree = ""; }; - 7B3DCB2922D3478300FC973D /* base2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = base2.h; sourceTree = ""; }; - 7B3DCB2A22D3478300FC973D /* base.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = base.h; sourceTree = ""; }; - 7B3DCB2B22D3478300FC973D /* ge_p3_to_p2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ge_p3_to_p2.c; sourceTree = ""; }; - 7B3DCB2D22D3478300FC973D /* blocks.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = blocks.c; sourceTree = ""; }; - 7B3DCB2E22D3478300FC973D /* hash.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = hash.c; sourceTree = ""; }; - 7B3DCB3022D3478300FC973D /* curve25519-donna.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "curve25519-donna.c"; sourceTree = ""; }; - 7B3DCB3222D3478300FC973D /* Randomness.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Randomness.m; sourceTree = ""; }; - 7B3DCB3322D3478300FC973D /* Ed25519.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Ed25519.m; sourceTree = ""; }; - 7B3DCB3422D3478300FC973D /* Curve25519.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Curve25519.m; sourceTree = ""; }; - 7B3DCB3522D3478300FC973D /* Randomness.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Randomness.h; sourceTree = ""; }; - 7B3DCB3622D3478300FC973D /* Ed25519.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Ed25519.h; sourceTree = ""; }; - 7B3DCB3722D3478300FC973D /* Curve25519.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Curve25519.h; sourceTree = ""; }; - 7B42335422563A2100E82730 /* CoreTelephony.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreTelephony.framework; path = System/Library/Frameworks/CoreTelephony.framework; sourceTree = SDKROOT; }; - 7B42335622563A3200E82730 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = System/Library/Frameworks/Security.framework; sourceTree = SDKROOT; }; - 7B42C0202320415C00B3E5DC /* Encodable+Base64.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Encodable+Base64.swift"; sourceTree = ""; }; - 7B4E1DE322C4DBD900854BAB /* WavesSDK.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = WavesSDK.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 7B4E1DE522C4DBDA00854BAB /* WavesSDK.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WavesSDK.h; sourceTree = ""; }; - 7B4E1DE622C4DBDA00854BAB /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 7B4E1DF522C4DC2800854BAB /* WavesSDKCrypto.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = WavesSDKCrypto.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 7B4E1DF722C4DC2800854BAB /* WavesSDKCrypto.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WavesSDKCrypto.h; sourceTree = ""; }; - 7B4E1DF822C4DC2800854BAB /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 7B4E1E0622C4DC3400854BAB /* WavesSDKExtensions.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = WavesSDKExtensions.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 7B4E1E0822C4DC3400854BAB /* InternalWavesSDKExtensions.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = InternalWavesSDKExtensions.h; sourceTree = ""; }; - 7B4E1E0922C4DC3400854BAB /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 7B4E1E1D22C4DD0100854BAB /* Bundle+Version.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Bundle+Version.swift"; sourceTree = ""; }; - 7B4E1E1E22C4DD0100854BAB /* Assert+Message.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Assert+Message.swift"; sourceTree = ""; }; - 7B4E1E2022C4DD0100854BAB /* Array+Sort.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Array+Sort.swift"; sourceTree = ""; }; - 7B4E1E2122C4DD0100854BAB /* Array+Extension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Array+Extension.swift"; sourceTree = ""; }; - 7B4E1E2222C4DD0100854BAB /* ObjectDestructor.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ObjectDestructor.swift; sourceTree = ""; }; - 7B4E1E2322C4DD0100854BAB /* Dictionary+Json.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Dictionary+Json.swift"; sourceTree = ""; }; - 7B4E1E2522C4DD0100854BAB /* DateFormatter+ISO.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "DateFormatter+ISO.swift"; sourceTree = ""; }; - 7B4E1E2622C4DD0100854BAB /* DateExtension+Sync.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "DateExtension+Sync.swift"; sourceTree = ""; }; - 7B4E1E2722C4DD0100854BAB /* DateFormatter+Once.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "DateFormatter+Once.swift"; sourceTree = ""; }; - 7B4E1E2822C4DD0100854BAB /* Thread+Assisstants.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Thread+Assisstants.swift"; sourceTree = ""; }; - 7B4E1E2A22C4DD0100854BAB /* JSONDecoder+JSON.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "JSONDecoder+JSON.swift"; sourceTree = ""; }; - 7B4E1E2B22C4DD0100854BAB /* JSONDecoder+Rx.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "JSONDecoder+Rx.swift"; sourceTree = ""; }; - 7B4E1E2C22C4DD0100854BAB /* RxSwift+Scheduler.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "RxSwift+Scheduler.swift"; sourceTree = ""; }; - 7B4E1E2D22C4DD0100854BAB /* DispatchTimeInterval.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DispatchTimeInterval.swift; sourceTree = ""; }; - 7B4E1E2E22C4DD0100854BAB /* UInt8+Assisstants.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UInt8+Assisstants.swift"; sourceTree = ""; }; - 7B4E1E2F22C4DD0100854BAB /* NSObject+AssociatedObject.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "NSObject+AssociatedObject.swift"; sourceTree = ""; }; - 7B4E1E3022C4DD0100854BAB /* Encodable+Dictionary.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Encodable+Dictionary.swift"; sourceTree = ""; }; - 7B4E1E3122C4DD0100854BAB /* Optional+Hashable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Optional+Hashable.swift"; sourceTree = ""; }; - 7B4E1E3322C4DD0100854BAB /* String+URL.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "String+URL.swift"; sourceTree = ""; }; - 7B4E1E3422C4DD0100854BAB /* String+Escaped.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "String+Escaped.swift"; sourceTree = ""; }; - 7B4E1E3522C4DD0100854BAB /* String+Utils.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "String+Utils.swift"; sourceTree = ""; }; - 7B4E1E3622C4DD0100854BAB /* String+UInt.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "String+UInt.swift"; sourceTree = ""; }; - 7B4E1E3722C4DD0100854BAB /* ObservableType+Weak.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "ObservableType+Weak.swift"; sourceTree = ""; }; - 7B4E1E3822C4DD0100854BAB /* Any+Name.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Any+Name.swift"; sourceTree = ""; }; - 7B4E1E3A22C4DD0100854BAB /* Runtime.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Runtime.swift; sourceTree = ""; }; - 7B4E1E3C22C4DD0100854BAB /* ObservableType+SweetLogger.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "ObservableType+SweetLogger.swift"; sourceTree = ""; }; - 7B4E1E3D22C4DD0100854BAB /* SweetLoggerConsole.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SweetLoggerConsole.swift; sourceTree = ""; }; - 7B4E1E3E22C4DD0100854BAB /* SweetLoggerProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SweetLoggerProtocol.swift; sourceTree = ""; }; - 7B4E1E3F22C4DD0100854BAB /* SweetLogger.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SweetLogger.swift; sourceTree = ""; }; - 7B4E1E4022C4DD0100854BAB /* TSUD.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TSUD.swift; sourceTree = ""; }; - 7B4E1EE422C4DD2D00854BAB /* SignatureProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SignatureProtocol.swift; sourceTree = ""; }; - 7B4E1EE522C4DD2D00854BAB /* TransactionSignatureProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TransactionSignatureProtocol.swift; sourceTree = ""; }; - 7B4E1EE622C4DD2D00854BAB /* TransactionSignatureV2.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TransactionSignatureV2.swift; sourceTree = ""; }; - 7B4E1EE922C4DD2D00854BAB /* WavesSDK.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WavesSDK.swift; sourceTree = ""; }; - 7B4E1EEA22C4DD2D00854BAB /* WavesEnvironment.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WavesEnvironment.swift; sourceTree = ""; }; - 7B4E1EEC22C4DD2D00854BAB /* DataServices.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DataServices.swift; sourceTree = ""; }; - 7B4E1EED22C4DD2D00854BAB /* InternalWavesService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = InternalWavesService.swift; sourceTree = ""; }; - 7B4E1EEE22C4DD2D00854BAB /* WavesServices.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WavesServices.swift; sourceTree = ""; }; - 7B4E1EEF22C4DD2D00854BAB /* MatcherServices.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatcherServices.swift; sourceTree = ""; }; - 7B4E1EF022C4DD2D00854BAB /* NodeServices.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NodeServices.swift; sourceTree = ""; }; - 7B4E1EF122C4DD2D00854BAB /* ContentType.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ContentType.swift; sourceTree = ""; }; - 7B4E1EF222C4DD2D00854BAB /* NetworkError.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NetworkError.swift; sourceTree = ""; }; - 7B4E1EF422C4DD2D00854BAB /* ServicesProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ServicesProtocol.swift; sourceTree = ""; }; - 7B4E1EF522C4DD2D00854BAB /* DataServicesProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DataServicesProtocol.swift; sourceTree = ""; }; - 7B4E1EF622C4DD2D00854BAB /* MatcherServicesProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatcherServicesProtocol.swift; sourceTree = ""; }; - 7B4E1EF722C4DD2D00854BAB /* WavesServicesProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WavesServicesProtocol.swift; sourceTree = ""; }; - 7B4E1EF822C4DD2D00854BAB /* NodeServicesProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NodeServicesProtocol.swift; sourceTree = ""; }; - 7B4E1EF922C4DD2D00854BAB /* String+Waves.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "String+Waves.swift"; sourceTree = ""; }; - 7B4E1EFD22C4DD2D00854BAB /* OrderBookMatcherTarget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OrderBookMatcherTarget.swift; sourceTree = ""; }; - 7B4E1EFE22C4DD2D00854BAB /* PublicKeyMatcherTarget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PublicKeyMatcherTarget.swift; sourceTree = ""; }; - 7B4E1EFF22C4DD2D00854BAB /* BalanceMatcherTarget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BalanceMatcherTarget.swift; sourceTree = ""; }; - 7B4E1F0122C4DD2D00854BAB /* BalanceMatcherQuery.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BalanceMatcherQuery.swift; sourceTree = ""; }; - 7B4E1F0322C4DD2D00854BAB /* MarketMatcher.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MarketMatcher.swift; sourceTree = ""; }; - 7B4E1F0422C4DD2D00854BAB /* OrderMatcher.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OrderMatcher.swift; sourceTree = ""; }; - 7B4E1F0522C4DD2D00854BAB /* OrderBookMatcher.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OrderBookMatcher.swift; sourceTree = ""; }; - 7B4E1F0622C4DD2D00854BAB /* MatcherServiceTypes.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MatcherServiceTypes.swift; sourceTree = ""; }; - 7B4E1F0822C4DD2D00854BAB /* PublicKeyMatcherService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PublicKeyMatcherService.swift; sourceTree = ""; }; - 7B4E1F0922C4DD2D00854BAB /* OrderBookMatcherService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OrderBookMatcherService.swift; sourceTree = ""; }; - 7B4E1F0A22C4DD2D00854BAB /* BalanceMatcherService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BalanceMatcherService.swift; sourceTree = ""; }; - 7B4E1F0C22C4DD2D00854BAB /* OrderBookMatcherServiceProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OrderBookMatcherServiceProtocol.swift; sourceTree = ""; }; - 7B4E1F0D22C4DD2D00854BAB /* PublicKeyMatcherServiceProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PublicKeyMatcherServiceProtocol.swift; sourceTree = ""; }; - 7B4E1F0E22C4DD2D00854BAB /* BalanceMatcherServiceProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BalanceMatcherServiceProtocol.swift; sourceTree = ""; }; - 7B4E1F1022C4DD2D00854BAB /* NodeTargetTypes.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NodeTargetTypes.swift; sourceTree = ""; }; - 7B4E1F1222C4DD2D00854BAB /* AssetsNodeTarget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AssetsNodeTarget.swift; sourceTree = ""; }; - 7B4E1F1322C4DD2D00854BAB /* TransactionNodeTarget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TransactionNodeTarget.swift; sourceTree = ""; }; - 7B4E1F1422C4DD2D00854BAB /* BlocksNodeTarget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BlocksNodeTarget.swift; sourceTree = ""; }; - 7B4E1F1522C4DD2D00854BAB /* UtilsNodeTarget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UtilsNodeTarget.swift; sourceTree = ""; }; - 7B4E1F1622C4DD2D00854BAB /* LeasingNodeTarget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LeasingNodeTarget.swift; sourceTree = ""; }; - 7B4E1F1722C4DD2D00854BAB /* AddressesNodeTarget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AddressesNodeTarget.swift; sourceTree = ""; }; - 7B4E1F1922C4DD2D00854BAB /* TransactionNodeQuery.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TransactionNodeQuery.swift; sourceTree = ""; }; - 7B4E1F1B22C4DD2D00854BAB /* BlockNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BlockNode.swift; sourceTree = ""; }; - 7B4E1F1C22C4DD2D00854BAB /* AddressScriptInfoNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AddressScriptInfoNode.swift; sourceTree = ""; }; - 7B4E1F1D22C4DD2D00854BAB /* AccountBalanceNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AccountBalanceNode.swift; sourceTree = ""; }; - 7B4E1F1F22C4DD2D00854BAB /* MassTransferTransactionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MassTransferTransactionNode.swift; sourceTree = ""; }; - 7B4E1F2022C4DD2D00854BAB /* IssueTransactionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = IssueTransactionNode.swift; sourceTree = ""; }; - 7B4E1F2122C4DD2D00854BAB /* SetAssetScriptTransactionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SetAssetScriptTransactionNode.swift; sourceTree = ""; }; - 7B4E1F2222C4DD2D00854BAB /* DataTransactionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DataTransactionNode.swift; sourceTree = ""; }; - 7B4E1F2322C4DD2D00854BAB /* AliasTransactionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AliasTransactionNode.swift; sourceTree = ""; }; - 7B4E1F2422C4DD2D00854BAB /* TransferTransactionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TransferTransactionNode.swift; sourceTree = ""; }; - 7B4E1F2522C4DD2D00854BAB /* BurnTransactionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BurnTransactionNode.swift; sourceTree = ""; }; - 7B4E1F2622C4DD2D00854BAB /* SponsorshipTransactionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SponsorshipTransactionNode.swift; sourceTree = ""; }; - 7B4E1F2722C4DD2D00854BAB /* ExchangeTransactionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ExchangeTransactionNode.swift; sourceTree = ""; }; - 7B4E1F2822C4DD2D00854BAB /* LeaseCancelTransactionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LeaseCancelTransactionNode.swift; sourceTree = ""; }; - 7B4E1F2922C4DD2D00854BAB /* ReissueTransactionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ReissueTransactionNode.swift; sourceTree = ""; }; - 7B4E1F2A22C4DD2D00854BAB /* LeaseTransactionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LeaseTransactionNode.swift; sourceTree = ""; }; - 7B4E1F2B22C4DD2D00854BAB /* UnrecognisedTransactionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UnrecognisedTransactionNode.swift; sourceTree = ""; }; - 7B4E1F2C22C4DD2D00854BAB /* InvokeScriptTransactionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = InvokeScriptTransactionNode.swift; sourceTree = ""; }; - 7B4E1F2D22C4DD2D00854BAB /* TransactionContainersNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TransactionContainersNode.swift; sourceTree = ""; }; - 7B4E1F2E22C4DD2D00854BAB /* SetScriptTransactionNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SetScriptTransactionNode.swift; sourceTree = ""; }; - 7B4E1F2F22C4DD2D00854BAB /* AssetDetailNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AssetDetailNode.swift; sourceTree = ""; }; - 7B4E1F3022C4DD2D00854BAB /* AccountAssetsBalanceNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AccountAssetsBalanceNode.swift; sourceTree = ""; }; - 7B4E1F3122C4DD2D00854BAB /* UtilsNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UtilsNode.swift; sourceTree = ""; }; - 7B4E1F3322C4DD2D00854BAB /* TransactionNodeService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TransactionNodeService.swift; sourceTree = ""; }; - 7B4E1F3422C4DD2D00854BAB /* UtilsNodeService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UtilsNodeService.swift; sourceTree = ""; }; - 7B4E1F3522C4DD2D00854BAB /* LeasingNodeService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LeasingNodeService.swift; sourceTree = ""; }; - 7B4E1F3622C4DD2D00854BAB /* BlocksNodeService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BlocksNodeService.swift; sourceTree = ""; }; - 7B4E1F3722C4DD2D00854BAB /* AssetsNodeService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AssetsNodeService.swift; sourceTree = ""; }; - 7B4E1F3822C4DD2D00854BAB /* AddressesNodeService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AddressesNodeService.swift; sourceTree = ""; }; - 7B4E1F3A22C4DD2D00854BAB /* AddressesNodeServiceProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AddressesNodeServiceProtocol.swift; sourceTree = ""; }; - 7B4E1F3B22C4DD2D00854BAB /* TransactionNodeServiceProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TransactionNodeServiceProtocol.swift; sourceTree = ""; }; - 7B4E1F3C22C4DD2D00854BAB /* AssetsNodeServiceProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AssetsNodeServiceProtocol.swift; sourceTree = ""; }; - 7B4E1F3D22C4DD2D00854BAB /* UtilsNodeServiceProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UtilsNodeServiceProtocol.swift; sourceTree = ""; }; - 7B4E1F3E22C4DD2D00854BAB /* BlocksNodeServiceProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BlocksNodeServiceProtocol.swift; sourceTree = ""; }; - 7B4E1F3F22C4DD2D00854BAB /* LeasingNodeServiceProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LeasingNodeServiceProtocol.swift; sourceTree = ""; }; - 7B4E1F4222C4DD2D00854BAB /* TransactionsDataTarget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TransactionsDataTarget.swift; sourceTree = ""; }; - 7B4E1F4322C4DD2D00854BAB /* AssetsDataTarget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AssetsDataTarget.swift; sourceTree = ""; }; - 7B4E1F4422C4DD2D00854BAB /* CandlesDataTarget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CandlesDataTarget.swift; sourceTree = ""; }; - 7B4E1F4522C4DD2D00854BAB /* PairsPriceDataTarget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PairsPriceDataTarget.swift; sourceTree = ""; }; - 7B4E1F4622C4DD2D00854BAB /* AliasDataTarget.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AliasDataTarget.swift; sourceTree = ""; }; - 7B4E1F4822C4DD2D00854BAB /* ExchangeFiltersDataQuery.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ExchangeFiltersDataQuery.swift; sourceTree = ""; }; - 7B4E1F4922C4DD2D00854BAB /* CandleFiltersDataQuery.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CandleFiltersDataQuery.swift; sourceTree = ""; }; - 7B4E1F4B22C4DD2D00854BAB /* PairPriceData.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PairPriceData.swift; sourceTree = ""; }; - 7B4E1F4C22C4DD2D00854BAB /* AssetData.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AssetData.swift; sourceTree = ""; }; - 7B4E1F4D22C4DD2D00854BAB /* TransactionData.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TransactionData.swift; sourceTree = ""; }; - 7B4E1F4E22C4DD2D00854BAB /* CandleData.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CandleData.swift; sourceTree = ""; }; - 7B4E1F4F22C4DD2D00854BAB /* AliasData.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AliasData.swift; sourceTree = ""; }; - 7B4E1F5022C4DD2D00854BAB /* ResponseData.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ResponseData.swift; sourceTree = ""; }; - 7B4E1F5122C4DD2D00854BAB /* DataServiceTypes.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DataServiceTypes.swift; sourceTree = ""; }; - 7B4E1F5322C4DD2D00854BAB /* CandlesDataService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CandlesDataService.swift; sourceTree = ""; }; - 7B4E1F5422C4DD2D00854BAB /* PairsPriceDataService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PairsPriceDataService.swift; sourceTree = ""; }; - 7B4E1F5522C4DD2D00854BAB /* AliasDataService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AliasDataService.swift; sourceTree = ""; }; - 7B4E1F5622C4DD2D00854BAB /* AssetsDataService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AssetsDataService.swift; sourceTree = ""; }; - 7B4E1F5722C4DD2D00854BAB /* TransactionsDataService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TransactionsDataService.swift; sourceTree = ""; }; - 7B4E1F5922C4DD2D00854BAB /* CandlesDataServiceProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CandlesDataServiceProtocol.swift; sourceTree = ""; }; - 7B4E1F5A22C4DD2D00854BAB /* AliasDataServiceProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AliasDataServiceProtocol.swift; sourceTree = ""; }; - 7B4E1F5B22C4DD2D00854BAB /* PairsPriceDataServiceProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PairsPriceDataServiceProtocol.swift; sourceTree = ""; }; - 7B4E1F5C22C4DD2D00854BAB /* AssetsDataServiceProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AssetsDataServiceProtocol.swift; sourceTree = ""; }; - 7B4E1F5D22C4DD2D00854BAB /* TransactionsDataServiceProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TransactionsDataServiceProtocol.swift; sourceTree = ""; }; - 7B4E1F5E22C4DD2D00854BAB /* WavesSDKConstants.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WavesSDKConstants.swift; sourceTree = ""; }; - 7B72BBAA22550493004A047F /* StubTest.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = StubTest.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 7B72BBAD22550493004A047F /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - 7B72BBB222550493004A047F /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; - 7B72BBB422550495004A047F /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - 7B72BBB722550495004A047F /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; - 7B72BBB922550495004A047F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 7B74597322C637A50047A005 /* TransactionSign.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TransactionSign.swift; sourceTree = ""; }; - 7B74597522C64EDF0047A005 /* WavesServicesTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WavesServicesTest.swift; sourceTree = ""; }; - 7B74597722C64F840047A005 /* WavesServicesBroadcastTransactionsTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WavesServicesBroadcastTransactionsTest.swift; sourceTree = ""; }; - 7B951148225E16370030390C /* WavesSDKTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = WavesSDKTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 7B95114A225E16370030390C /* WavesCryptoTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WavesCryptoTest.swift; sourceTree = ""; }; - 7B95114C225E16370030390C /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 7BB6759A24D19C43004AA4FF /* UpdateAssetInfoTransactionNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UpdateAssetInfoTransactionNode.swift; sourceTree = ""; }; - 7BB6EF81258B7F5600CC5164 /* DispatchQueuePool.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DispatchQueuePool.swift; sourceTree = ""; }; - 7BBB232E22CA2A940057095D /* TransactionSignatureV1.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TransactionSignatureV1.swift; sourceTree = ""; }; - 7BBB233122CA2C600057095D /* TransactionType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TransactionType.swift; sourceTree = ""; }; - 7BBB233422CE13080057095D /* BaseTransactionQueryProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseTransactionQueryProtocol.swift; sourceTree = ""; }; - 7BE1930E243CFD5B00916E15 /* CachePolicyPlugin.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CachePolicyPlugin.swift; sourceTree = ""; }; - 8039432D4DA5FFEF3B2FC429 /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.dev-adhoc.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDKCrypto.dev-adhoc.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDKCrypto/Pods-Waves-Exchange-SDK-WavesSDKCrypto.dev-adhoc.xcconfig"; sourceTree = ""; }; - 83C71800404F1CBBB4010A27 /* Pods-Waves-Exchange-SDK-StubTest.dev-debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-StubTest.dev-debug.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-StubTest/Pods-Waves-Exchange-SDK-StubTest.dev-debug.xcconfig"; sourceTree = ""; }; - 8625E48FA90E048D091F4B9E /* Pods_Waves_Exchange_SDK_WavesSDKCrypto.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Waves_Exchange_SDK_WavesSDKCrypto.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 872C36A7241A38100050250B /* MassTransferTransaction.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MassTransferTransaction.swift; sourceTree = ""; }; - 87409DAF2417B06000726C12 /* MassTransferDataQuery.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MassTransferDataQuery.swift; sourceTree = ""; }; - 8756669A242BBDD200E9F177 /* AddressData.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AddressData.swift; sourceTree = ""; }; - 8CF99F81F79EE66857AB9578 /* Pods-Waves-Exchange-SDK-StubTest.release-dev.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-StubTest.release-dev.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-StubTest/Pods-Waves-Exchange-SDK-StubTest.release-dev.xcconfig"; sourceTree = ""; }; - 8EBC6763F0CBF8C4EB1DA4C1 /* Pods_WavesSDKTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_WavesSDKTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 93D148640FCEF1307E11D19A /* Pods-Waves-Exchange-SDK-WavesSDK.test-prod.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDK.test-prod.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDK/Pods-Waves-Exchange-SDK-WavesSDK.test-prod.xcconfig"; sourceTree = ""; }; - 94DE5383B7B45D8F3E3939ED /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.release-adhoc.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDKCrypto.release-adhoc.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDKCrypto/Pods-Waves-Exchange-SDK-WavesSDKCrypto.release-adhoc.xcconfig"; sourceTree = ""; }; - 9549BBF2CCBEFDC7B473053F /* Pods-WavesSDKTests.test-dev.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WavesSDKTests.test-dev.xcconfig"; path = "Target Support Files/Pods-WavesSDKTests/Pods-WavesSDKTests.test-dev.xcconfig"; sourceTree = ""; }; - A604E380777BE7E3B63B49F5 /* Pods_Waves_Exchange_SDK_StubTest.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Waves_Exchange_SDK_StubTest.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - A708203E910852CDAFD7324F /* Pods-Waves-Exchange-SDK-StubTest.release-prod.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-StubTest.release-prod.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-StubTest/Pods-Waves-Exchange-SDK-StubTest.release-prod.xcconfig"; sourceTree = ""; }; - CBDF4DE45C519904E9D9AE9D /* Pods-WavesSDKTests.test-prod.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WavesSDKTests.test-prod.xcconfig"; path = "Target Support Files/Pods-WavesSDKTests/Pods-WavesSDKTests.test-prod.xcconfig"; sourceTree = ""; }; - D1A31A1CEF4CC917A52A381B /* Pods-Waves-Exchange-SDK-WavesSDK.dev-adhoc.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDK.dev-adhoc.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDK/Pods-Waves-Exchange-SDK-WavesSDK.dev-adhoc.xcconfig"; sourceTree = ""; }; - E168F5E712310F8810B0DBF8 /* Pods-WavesSDKTests.release-dev.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WavesSDKTests.release-dev.xcconfig"; path = "Target Support Files/Pods-WavesSDKTests/Pods-WavesSDKTests.release-dev.xcconfig"; sourceTree = ""; }; - E9399075231FD41D00302490 /* WavesKeeper+Decodable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "WavesKeeper+Decodable.swift"; sourceTree = ""; }; - E9496F5823D7D93500FBF78F /* PairsRateDataTarget.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PairsRateDataTarget.swift; sourceTree = ""; }; - E9496F5A23D7DBF300FBF78F /* PairsRateData.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PairsRateData.swift; sourceTree = ""; }; - E96DE18E231805A7005E1FD9 /* JSONDecoder+TimestampDiff.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "JSONDecoder+TimestampDiff.swift"; sourceTree = ""; }; - E97A74A822D4B26200777C39 /* String+Bytes.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "String+Bytes.swift"; sourceTree = ""; }; - E9D96B0052641822892343E1 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.release-dev.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDKExtensions.release-dev.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDKExtensions/Pods-Waves-Exchange-SDK-WavesSDKExtensions.release-dev.xcconfig"; sourceTree = ""; }; - ED59D88E378730ED09B48754 /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.release-prod.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDKCrypto.release-prod.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDKCrypto/Pods-Waves-Exchange-SDK-WavesSDKCrypto.release-prod.xcconfig"; sourceTree = ""; }; - EF4D580D88C328814A241A46 /* Pods-WavesSDKTests.dev-adhoc.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WavesSDKTests.dev-adhoc.xcconfig"; path = "Target Support Files/Pods-WavesSDKTests/Pods-WavesSDKTests.dev-adhoc.xcconfig"; sourceTree = ""; }; - F0C46FA173C628278F23AF16 /* Pods-Waves-Exchange-SDK-WavesSDK.release-dev.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-WavesSDK.release-dev.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-WavesSDK/Pods-Waves-Exchange-SDK-WavesSDK.release-dev.xcconfig"; sourceTree = ""; }; - F0CDA7D4E7228A436EF42B7B /* Pods-Waves-Exchange-SDK-StubTest.test-prod.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Waves-Exchange-SDK-StubTest.test-prod.xcconfig"; path = "Target Support Files/Pods-Waves-Exchange-SDK-StubTest/Pods-Waves-Exchange-SDK-StubTest.test-prod.xcconfig"; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 7B4E1DE022C4DBD900854BAB /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 7B3DCBFA22D366AB00FC973D /* WavesSDKCrypto.framework in Frameworks */, - 7B3DCBFB22D366AB00FC973D /* WavesSDKExtensions.framework in Frameworks */, - D0DFEC95196ECE27B7B0A8A0 /* Pods_Waves_Exchange_SDK_WavesSDK.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7B4E1DF222C4DC2800854BAB /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 7B3DCBF922D3647D00FC973D /* WavesSDKExtensions.framework in Frameworks */, - 7B3DCA8522CFC9C700FC973D /* Foundation.framework in Frameworks */, - 7B3DCA8322CFC68C00FC973D /* Security.framework in Frameworks */, - 1AB37B7C3C1EB90AC19BAA6D /* Pods_Waves_Exchange_SDK_WavesSDKCrypto.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7B4E1E0322C4DC3400854BAB /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 3B0E8FCF7759CD4F8A4FF27C /* Pods_Waves_Exchange_SDK_WavesSDKExtensions.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7B72BBA722550493004A047F /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 7B4E1DFC22C4DC2800854BAB /* WavesSDKCrypto.framework in Frameworks */, - 7B4E1E0D22C4DC3400854BAB /* WavesSDKExtensions.framework in Frameworks */, - 7B4E1DEA22C4DBDA00854BAB /* WavesSDK.framework in Frameworks */, - A75CDC2E7D018C77F6038A77 /* Pods_Waves_Exchange_SDK_StubTest.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7B951145225E16370030390C /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 7B7A4B7722D3757500E0A8CD /* WavesSDK.framework in Frameworks */, - 7B7A4B7822D3757500E0A8CD /* WavesSDKCrypto.framework in Frameworks */, - 7B7A4B7922D3757500E0A8CD /* WavesSDKExtensions.framework in Frameworks */, - 4AF1EEBA1DC2288A5799015A /* Pods_WavesSDKTests.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 7B3DC9A422CFC37500FC973D /* Vendors */ = { - isa = PBXGroup; - children = ( - 7B3DCADC22D3478300FC973D /* Curve25519 */, - 7B3DCAC022D3472C00FC973D /* Blake2 */, - 7B3DCAB422D3421E00FC973D /* Base58Encoder */, - 7B3DC9B422CFC37500FC973D /* Keccak */, - ); - path = Vendors; - sourceTree = ""; - }; - 7B3DC9B422CFC37500FC973D /* Keccak */ = { - isa = PBXGroup; - children = ( - 7B3DC9B522CFC37500FC973D /* Sources */, - ); - path = Keccak; - sourceTree = ""; - }; - 7B3DC9B522CFC37500FC973D /* Sources */ = { - isa = PBXGroup; - children = ( - 7B3DC9B622CFC37500FC973D /* keccak.c */, - 7B3DC9B722CFC37500FC973D /* keccak.h */, - ); - path = Sources; - sourceTree = ""; - }; - 7B3DCA1922CFC37500FC973D /* Sources */ = { - isa = PBXGroup; - children = ( - 7B3DCA1A22CFC37500FC973D /* Words.swift */, - 7B3DCA1B22CFC37500FC973D /* WavesCrypto.swift */, - ); - path = Sources; - sourceTree = ""; - }; - 7B3DCAB422D3421E00FC973D /* Base58Encoder */ = { - isa = PBXGroup; - children = ( - 7B3DCAB522D3421E00FC973D /* Sources */, - ); - path = Base58Encoder; - sourceTree = ""; - }; - 7B3DCAB522D3421E00FC973D /* Sources */ = { - isa = PBXGroup; - children = ( - 7B3DCAB622D3421E00FC973D /* base58.h */, - 7B3DCAB822D3421E00FC973D /* base58.c */, - 7B3DCAB722D3421E00FC973D /* Base58Encoder.swift */, - ); - path = Sources; - sourceTree = ""; - }; - 7B3DCAC022D3472C00FC973D /* Blake2 */ = { - isa = PBXGroup; - children = ( - 7B3DCAC122D3472C00FC973D /* Sources */, - ); - path = Blake2; - sourceTree = ""; - }; - 7B3DCAC122D3472C00FC973D /* Sources */ = { - isa = PBXGroup; - children = ( - 7B3DCAC222D3472C00FC973D /* utils.h */, - 7B3DCAC322D3472C00FC973D /* export.h */, - 7B3DCAC422D3472C00FC973D /* randombytes.h */, - 7B3DCAC522D3472C00FC973D /* crypto_generichash.c */, - 7B3DCAC622D3472C00FC973D /* api.h */, - 7B3DCAC722D3472C00FC973D /* generichash_blake2_api.c */, - 7B3DCAC822D3472C00FC973D /* utils.c */, - 7B3DCAC922D3472C00FC973D /* blake2.h */, - 7B3DCACA22D3472C00FC973D /* generichash_blake2b.c */, - 7B3DCACB22D3472C00FC973D /* blake2b-ref.c */, - 7B3DCACC22D3472C00FC973D /* blake2-impl.h */, - 7B3DCACD22D3472C00FC973D /* crypto_generichash.h */, - 7B3DCACE22D3472C00FC973D /* crypto_generichash_blake2b.h */, - ); - path = Sources; - sourceTree = ""; - }; - 7B3DCADC22D3478300FC973D /* Curve25519 */ = { - isa = PBXGroup; - children = ( - 7B3DCADD22D3478300FC973D /* Sources */, - ); - path = Curve25519; - sourceTree = ""; - }; - 7B3DCADD22D3478300FC973D /* Sources */ = { - isa = PBXGroup; - children = ( - 7B3DCADE22D3478300FC973D /* ed25519 */, - 7B3DCB2F22D3478300FC973D /* Curve25519 */, - 7B3DCB3122D3478300FC973D /* Objc */, - ); - path = Sources; - sourceTree = ""; - }; - 7B3DCADE22D3478300FC973D /* ed25519 */ = { - isa = PBXGroup; - children = ( - 7B3DCB0822D3478300FC973D /* fe_0.c */, - 7B3DCB0322D3478300FC973D /* fe_1.c */, - 7B3DCAF122D3478300FC973D /* fe_add.c */, - 7B3DCB0122D3478300FC973D /* fe_cmov.c */, - 7B3DCB0422D3478300FC973D /* fe_copy.c */, - 7B3DCB1422D3478300FC973D /* fe_frombytes.c */, - 7B3DCAF422D3478300FC973D /* fe_invert.c */, - 7B3DCB1622D3478300FC973D /* fe_isnegative.c */, - 7B3DCAEF22D3478300FC973D /* fe_isnonzero.c */, - 7B3DCB2822D3478300FC973D /* fe_mul.c */, - 7B3DCB0E22D3478300FC973D /* fe_neg.c */, - 7B3DCAE822D3478300FC973D /* fe_pow22523.c */, - 7B3DCB1A22D3478300FC973D /* fe_sq.c */, - 7B3DCAE022D3478300FC973D /* fe_sq2.c */, - 7B3DCAED22D3478300FC973D /* fe_sub.c */, - 7B3DCB0B22D3478300FC973D /* fe_tobytes.c */, - 7B3DCB0D22D3478300FC973D /* ge_add.c */, - 7B3DCB1222D3478300FC973D /* ge_double_scalarmult.c */, - 7B3DCB1922D3478300FC973D /* ge_frombytes.c */, - 7B3DCAE922D3478300FC973D /* ge_madd.c */, - 7B3DCADF22D3478300FC973D /* ge_msub.c */, - 7B3DCAF322D3478300FC973D /* ge_p1p1_to_p2.c */, - 7B3DCB2722D3478300FC973D /* ge_p1p1_to_p3.c */, - 7B3DCAFF22D3478300FC973D /* ge_p2_0.c */, - 7B3DCB0222D3478300FC973D /* ge_p2_dbl.c */, - 7B3DCB0022D3478300FC973D /* ge_p3_0.c */, - 7B3DCAEB22D3478300FC973D /* ge_p3_dbl.c */, - 7B3DCB0C22D3478300FC973D /* ge_p3_to_cached.c */, - 7B3DCB2B22D3478300FC973D /* ge_p3_to_p2.c */, - 7B3DCAEA22D3478300FC973D /* ge_p3_tobytes.c */, - 7B3DCB1322D3478300FC973D /* ge_precomp_0.c */, - 7B3DCB1022D3478300FC973D /* ge_scalarmult_base.c */, - 7B3DCB0F22D3478300FC973D /* ge_sub.c */, - 7B3DCAF522D3478300FC973D /* ge_tobytes.c */, - 7B3DCB2522D3478300FC973D /* open.c */, - 7B3DCAEC22D3478300FC973D /* sc_muladd.c */, - 7B3DCB2622D3478300FC973D /* sc_reduce.c */, - 7B3DCB0522D3478300FC973D /* sign.c */, - 7B3DCB0722D3478300FC973D /* api.h */, - 7B3DCB2A22D3478300FC973D /* base.h */, - 7B3DCB2922D3478300FC973D /* base2.h */, - 7B3DCB1822D3478300FC973D /* d.h */, - 7B3DCB0622D3478300FC973D /* d2.h */, - 7B3DCB1122D3478300FC973D /* fe.h */, - 7B3DCAF222D3478300FC973D /* ge_add.h */, - 7B3DCB0922D3478300FC973D /* ge_madd.h */, - 7B3DCB0A22D3478300FC973D /* ge_msub.h */, - 7B3DCB1722D3478300FC973D /* ge_p2_dbl.h */, - 7B3DCAEE22D3478300FC973D /* ge_sub.h */, - 7B3DCB1C22D3478300FC973D /* ge.h */, - 7B3DCB1522D3478300FC973D /* pow22523.h */, - 7B3DCAF022D3478300FC973D /* pow225521.h */, - 7B3DCB1B22D3478300FC973D /* sc.h */, - 7B3DCAE122D3478300FC973D /* sqrtm1.h */, - 7B3DCAF622D3478300FC973D /* additions */, - 7B3DCB1D22D3478300FC973D /* nacl_includes */, - 7B3DCB2C22D3478300FC973D /* nacl_sha512 */, - 7B3DCAE222D3478300FC973D /* sha512 */, - ); - path = ed25519; - sourceTree = ""; - }; - 7B3DCAE222D3478300FC973D /* sha512 */ = { - isa = PBXGroup; - children = ( - ); - path = sha512; - sourceTree = ""; - }; - 7B3DCAF622D3478300FC973D /* additions */ = { - isa = PBXGroup; - children = ( - 7B3DCAF722D3478300FC973D /* zeroize.h */, - 7B3DCAF822D3478300FC973D /* compare.c */, - 7B3DCAF922D3478300FC973D /* crypto_hash_sha512.h */, - 7B3DCAFA22D3478300FC973D /* curve_sigs.c */, - 7B3DCAFB22D3478300FC973D /* sign_modified.c */, - 7B3DCAFC22D3478300FC973D /* compare.h */, - 7B3DCAFD22D3478300FC973D /* zeroize.c */, - 7B3DCAFE22D3478300FC973D /* curve_sigs.h */, - ); - path = additions; - sourceTree = ""; - }; - 7B3DCB1D22D3478300FC973D /* nacl_includes */ = { - isa = PBXGroup; - children = ( - 7B3DCB1E22D3478300FC973D /* crypto_uint32.h */, - 7B3DCB1F22D3478300FC973D /* crypto_int32.h */, - 7B3DCB2022D3478300FC973D /* crypto_sign.h */, - 7B3DCB2122D3478300FC973D /* crypto_verify_32.h */, - 7B3DCB2222D3478300FC973D /* crypto_int64.h */, - 7B3DCB2322D3478300FC973D /* crypto_uint64.h */, - 7B3DCB2422D3478300FC973D /* crypto_sign_edwards25519sha512batch.h */, - ); - path = nacl_includes; - sourceTree = ""; - }; - 7B3DCB2C22D3478300FC973D /* nacl_sha512 */ = { - isa = PBXGroup; - children = ( - 7B3DCB2D22D3478300FC973D /* blocks.c */, - 7B3DCB2E22D3478300FC973D /* hash.c */, - ); - path = nacl_sha512; - sourceTree = ""; - }; - 7B3DCB2F22D3478300FC973D /* Curve25519 */ = { - isa = PBXGroup; - children = ( - 7B3DCB3022D3478300FC973D /* curve25519-donna.c */, - ); - path = Curve25519; - sourceTree = ""; - }; - 7B3DCB3122D3478300FC973D /* Objc */ = { - isa = PBXGroup; - children = ( - 7B3DCB3222D3478300FC973D /* Randomness.m */, - 7B3DCB3322D3478300FC973D /* Ed25519.m */, - 7B3DCB3422D3478300FC973D /* Curve25519.m */, - 7B3DCB3522D3478300FC973D /* Randomness.h */, - 7B3DCB3622D3478300FC973D /* Ed25519.h */, - 7B3DCB3722D3478300FC973D /* Curve25519.h */, - ); - path = Objc; - sourceTree = ""; - }; - 7B4E1DE422C4DBDA00854BAB /* WavesSDK */ = { - isa = PBXGroup; - children = ( - 7B4E1EE222C4DD2D00854BAB /* Sources */, - 7B4E1DE522C4DBDA00854BAB /* WavesSDK.h */, - 7B4E1DE622C4DBDA00854BAB /* Info.plist */, - ); - path = WavesSDK; - sourceTree = ""; - }; - 7B4E1DF622C4DC2800854BAB /* WavesSDKCrypto */ = { - isa = PBXGroup; - children = ( - 7B3DCA1922CFC37500FC973D /* Sources */, - 7B3DC9A422CFC37500FC973D /* Vendors */, - 7B4E1DF722C4DC2800854BAB /* WavesSDKCrypto.h */, - 7B4E1DF822C4DC2800854BAB /* Info.plist */, - ); - path = WavesSDKCrypto; - sourceTree = ""; - }; - 7B4E1E0722C4DC3400854BAB /* WavesSDKExtensions */ = { - isa = PBXGroup; - children = ( - 7B4E1E1B22C4DD0100854BAB /* Sources */, - 7B4E1E0822C4DC3400854BAB /* InternalWavesSDKExtensions.h */, - 7B4E1E0922C4DC3400854BAB /* Info.plist */, - ); - path = WavesSDKExtensions; - sourceTree = ""; - }; - 7B4E1E1B22C4DD0100854BAB /* Sources */ = { - isa = PBXGroup; - children = ( - 7B4E1E1C22C4DD0100854BAB /* Extensions */, - 7B4E1E3922C4DD0100854BAB /* Type */, - ); - path = Sources; - sourceTree = ""; - }; - 7B4E1E1C22C4DD0100854BAB /* Extensions */ = { - isa = PBXGroup; - children = ( - E96DE18E231805A7005E1FD9 /* JSONDecoder+TimestampDiff.swift */, - 7B4E1E3822C4DD0100854BAB /* Any+Name.swift */, - 7B4E1E1E22C4DD0100854BAB /* Assert+Message.swift */, - 7B4E1E1D22C4DD0100854BAB /* Bundle+Version.swift */, - 7B4E1E2322C4DD0100854BAB /* Dictionary+Json.swift */, - 7B4E1E2D22C4DD0100854BAB /* DispatchTimeInterval.swift */, - 7B4E1E3022C4DD0100854BAB /* Encodable+Dictionary.swift */, - 7B4E1E2F22C4DD0100854BAB /* NSObject+AssociatedObject.swift */, - 7B4E1E2222C4DD0100854BAB /* ObjectDestructor.swift */, - 7B4E1E3722C4DD0100854BAB /* ObservableType+Weak.swift */, - 7B4E1E3122C4DD0100854BAB /* Optional+Hashable.swift */, - 7B4E1E2C22C4DD0100854BAB /* RxSwift+Scheduler.swift */, - 7B4E1E2822C4DD0100854BAB /* Thread+Assisstants.swift */, - 42BB3EF62594C60C00A0142A /* NumberFormatter+Once.swift */, - 7B4E1E2E22C4DD0100854BAB /* UInt8+Assisstants.swift */, - 7B4E1E1F22C4DD0100854BAB /* Array */, - 7B4E1E2422C4DD0100854BAB /* Date */, - 7B4E1E2922C4DD0100854BAB /* JSONDecoder */, - 7B4E1E3222C4DD0100854BAB /* String */, - ); - path = Extensions; - sourceTree = ""; - }; - 7B4E1E1F22C4DD0100854BAB /* Array */ = { - isa = PBXGroup; - children = ( - 7B4E1E2022C4DD0100854BAB /* Array+Sort.swift */, - 7B4E1E2122C4DD0100854BAB /* Array+Extension.swift */, - ); - path = Array; - sourceTree = ""; - }; - 7B4E1E2422C4DD0100854BAB /* Date */ = { - isa = PBXGroup; - children = ( - 7B4E1E2522C4DD0100854BAB /* DateFormatter+ISO.swift */, - 7B4E1E2622C4DD0100854BAB /* DateExtension+Sync.swift */, - 7B4E1E2722C4DD0100854BAB /* DateFormatter+Once.swift */, - ); - path = Date; - sourceTree = ""; - }; - 7B4E1E2922C4DD0100854BAB /* JSONDecoder */ = { - isa = PBXGroup; - children = ( - 7B4E1E2A22C4DD0100854BAB /* JSONDecoder+JSON.swift */, - 7B4E1E2B22C4DD0100854BAB /* JSONDecoder+Rx.swift */, - ); - path = JSONDecoder; - sourceTree = ""; - }; - 7B4E1E3222C4DD0100854BAB /* String */ = { - isa = PBXGroup; - children = ( - 7B4E1E3322C4DD0100854BAB /* String+URL.swift */, - 7B4E1E3422C4DD0100854BAB /* String+Escaped.swift */, - 7B4E1E3522C4DD0100854BAB /* String+Utils.swift */, - 7B4E1E3622C4DD0100854BAB /* String+UInt.swift */, - E97A74A822D4B26200777C39 /* String+Bytes.swift */, - ); - path = String; - sourceTree = ""; - }; - 7B4E1E3922C4DD0100854BAB /* Type */ = { - isa = PBXGroup; - children = ( - 7B4E1E3A22C4DD0100854BAB /* Runtime.swift */, - 7B4E1E4022C4DD0100854BAB /* TSUD.swift */, - 7B4E1E3B22C4DD0100854BAB /* SweetLogger */, - ); - path = Type; - sourceTree = ""; - }; - 7B4E1E3B22C4DD0100854BAB /* SweetLogger */ = { - isa = PBXGroup; - children = ( - 7B4E1E3C22C4DD0100854BAB /* ObservableType+SweetLogger.swift */, - 7B4E1E3D22C4DD0100854BAB /* SweetLoggerConsole.swift */, - 7B4E1E3E22C4DD0100854BAB /* SweetLoggerProtocol.swift */, - 7B4E1E3F22C4DD0100854BAB /* SweetLogger.swift */, - ); - path = SweetLogger; - sourceTree = ""; - }; - 7B4E1EE222C4DD2D00854BAB /* Sources */ = { - isa = PBXGroup; - children = ( - 7B4E1EE322C4DD2D00854BAB /* Signature */, - 7B4E1EE722C4DD2D00854BAB /* Assisstants */, - 7B4E1EFA22C4DD2D00854BAB /* Services */, - 7B4E1F5E22C4DD2D00854BAB /* WavesSDKConstants.swift */, - ); - path = Sources; - sourceTree = ""; - }; - 7B4E1EE322C4DD2D00854BAB /* Signature */ = { - isa = PBXGroup; - children = ( - 7B4E1EE422C4DD2D00854BAB /* SignatureProtocol.swift */, - 7B4E1EE522C4DD2D00854BAB /* TransactionSignatureProtocol.swift */, - 7BBB232E22CA2A940057095D /* TransactionSignatureV1.swift */, - 7B4E1EE622C4DD2D00854BAB /* TransactionSignatureV2.swift */, - 7B74597322C637A50047A005 /* TransactionSign.swift */, - 7BBB233122CA2C600057095D /* TransactionType.swift */, - ); - path = Signature; - sourceTree = ""; - }; - 7B4E1EE722C4DD2D00854BAB /* Assisstants */ = { - isa = PBXGroup; - children = ( - 7B4E1EE922C4DD2D00854BAB /* WavesSDK.swift */, - 7B4E1EEA22C4DD2D00854BAB /* WavesEnvironment.swift */, - 7B4E1EEB22C4DD2D00854BAB /* Type */, - 7B4E1EF122C4DD2D00854BAB /* ContentType.swift */, - 7B4E1EF222C4DD2D00854BAB /* NetworkError.swift */, - 7B4E1EF322C4DD2D00854BAB /* Protocols */, - 7B4E1EF922C4DD2D00854BAB /* String+Waves.swift */, - 7B3681A223152E13000D5592 /* WavesKeeper.swift */, - E9399075231FD41D00302490 /* WavesKeeper+Decodable.swift */, - 7B0B6F9A231E6DC800CC5DCB /* DictionaryEncoder.swift */, - 7B42C0202320415C00B3E5DC /* Encodable+Base64.swift */, - 7BE1930E243CFD5B00916E15 /* CachePolicyPlugin.swift */, - 7BB6EF81258B7F5600CC5164 /* DispatchQueuePool.swift */, - ); - path = Assisstants; - sourceTree = ""; - }; - 7B4E1EEB22C4DD2D00854BAB /* Type */ = { - isa = PBXGroup; - children = ( - 7B4E1EEC22C4DD2D00854BAB /* DataServices.swift */, - 7B4E1EED22C4DD2D00854BAB /* InternalWavesService.swift */, - 7B4E1EEE22C4DD2D00854BAB /* WavesServices.swift */, - 7B4E1EEF22C4DD2D00854BAB /* MatcherServices.swift */, - 7B4E1EF022C4DD2D00854BAB /* NodeServices.swift */, - ); - path = Type; - sourceTree = ""; - }; - 7B4E1EF322C4DD2D00854BAB /* Protocols */ = { - isa = PBXGroup; - children = ( - 7B4E1EF422C4DD2D00854BAB /* ServicesProtocol.swift */, - 7B4E1EF522C4DD2D00854BAB /* DataServicesProtocol.swift */, - 7B4E1EF622C4DD2D00854BAB /* MatcherServicesProtocol.swift */, - 7B4E1EF722C4DD2D00854BAB /* WavesServicesProtocol.swift */, - 7B4E1EF822C4DD2D00854BAB /* NodeServicesProtocol.swift */, - ); - path = Protocols; - sourceTree = ""; - }; - 7B4E1EFA22C4DD2D00854BAB /* Services */ = { - isa = PBXGroup; - children = ( - 7B4E1EFB22C4DD2D00854BAB /* Matcher */, - 7B4E1F0F22C4DD2D00854BAB /* Node */, - 7B4E1F4022C4DD2D00854BAB /* Data */, - ); - path = Services; - sourceTree = ""; - }; - 7B4E1EFB22C4DD2D00854BAB /* Matcher */ = { - isa = PBXGroup; - children = ( - 7B4E1EFC22C4DD2D00854BAB /* Targets */, - 7B4E1F0022C4DD2D00854BAB /* Queries */, - 7B4E1F0222C4DD2D00854BAB /* Models */, - 7B4E1F0622C4DD2D00854BAB /* MatcherServiceTypes.swift */, - 7B4E1F0722C4DD2D00854BAB /* Services */, - ); - path = Matcher; - sourceTree = ""; - }; - 7B4E1EFC22C4DD2D00854BAB /* Targets */ = { - isa = PBXGroup; - children = ( - 7B4E1EFD22C4DD2D00854BAB /* OrderBookMatcherTarget.swift */, - 7B4E1EFE22C4DD2D00854BAB /* PublicKeyMatcherTarget.swift */, - 7B4E1EFF22C4DD2D00854BAB /* BalanceMatcherTarget.swift */, - ); - path = Targets; - sourceTree = ""; - }; - 7B4E1F0022C4DD2D00854BAB /* Queries */ = { - isa = PBXGroup; - children = ( - 7B4E1F0122C4DD2D00854BAB /* BalanceMatcherQuery.swift */, - ); - path = Queries; - sourceTree = ""; - }; - 7B4E1F0222C4DD2D00854BAB /* Models */ = { - isa = PBXGroup; - children = ( - 7B4E1F0322C4DD2D00854BAB /* MarketMatcher.swift */, - 7B4E1F0422C4DD2D00854BAB /* OrderMatcher.swift */, - 7B4E1F0522C4DD2D00854BAB /* OrderBookMatcher.swift */, - ); - path = Models; - sourceTree = ""; - }; - 7B4E1F0722C4DD2D00854BAB /* Services */ = { - isa = PBXGroup; - children = ( - 7B4E1F0822C4DD2D00854BAB /* PublicKeyMatcherService.swift */, - 7B4E1F0922C4DD2D00854BAB /* OrderBookMatcherService.swift */, - 7B4E1F0A22C4DD2D00854BAB /* BalanceMatcherService.swift */, - 7B4E1F0B22C4DD2D00854BAB /* Protocols */, - ); - path = Services; - sourceTree = ""; - }; - 7B4E1F0B22C4DD2D00854BAB /* Protocols */ = { - isa = PBXGroup; - children = ( - 7B4E1F0C22C4DD2D00854BAB /* OrderBookMatcherServiceProtocol.swift */, - 7B4E1F0D22C4DD2D00854BAB /* PublicKeyMatcherServiceProtocol.swift */, - 7B4E1F0E22C4DD2D00854BAB /* BalanceMatcherServiceProtocol.swift */, - ); - path = Protocols; - sourceTree = ""; - }; - 7B4E1F0F22C4DD2D00854BAB /* Node */ = { - isa = PBXGroup; - children = ( - 7B4E1F1022C4DD2D00854BAB /* NodeTargetTypes.swift */, - 7B4E1F1122C4DD2D00854BAB /* Targets */, - 7B4E1F1822C4DD2D00854BAB /* Queries */, - 7B4E1F1A22C4DD2D00854BAB /* Models */, - 7B4E1F3222C4DD2D00854BAB /* Services */, - ); - path = Node; - sourceTree = ""; - }; - 7B4E1F1122C4DD2D00854BAB /* Targets */ = { - isa = PBXGroup; - children = ( - 7B4E1F1222C4DD2D00854BAB /* AssetsNodeTarget.swift */, - 7B4E1F1322C4DD2D00854BAB /* TransactionNodeTarget.swift */, - 7B4E1F1422C4DD2D00854BAB /* BlocksNodeTarget.swift */, - 7B4E1F1522C4DD2D00854BAB /* UtilsNodeTarget.swift */, - 7B4E1F1622C4DD2D00854BAB /* LeasingNodeTarget.swift */, - 7B4E1F1722C4DD2D00854BAB /* AddressesNodeTarget.swift */, - ); - path = Targets; - sourceTree = ""; - }; - 7B4E1F1822C4DD2D00854BAB /* Queries */ = { - isa = PBXGroup; - children = ( - 7B4E1F1922C4DD2D00854BAB /* TransactionNodeQuery.swift */, - 7BBB233422CE13080057095D /* BaseTransactionQueryProtocol.swift */, - ); - path = Queries; - sourceTree = ""; - }; - 7B4E1F1A22C4DD2D00854BAB /* Models */ = { - isa = PBXGroup; - children = ( - 7B4E1F1B22C4DD2D00854BAB /* BlockNode.swift */, - 7B4E1F1C22C4DD2D00854BAB /* AddressScriptInfoNode.swift */, - 7B4E1F1D22C4DD2D00854BAB /* AccountBalanceNode.swift */, - 7B4E1F1E22C4DD2D00854BAB /* Transactions */, - 7B4E1F2F22C4DD2D00854BAB /* AssetDetailNode.swift */, - 7B4E1F3022C4DD2D00854BAB /* AccountAssetsBalanceNode.swift */, - 7B4E1F3122C4DD2D00854BAB /* UtilsNode.swift */, - 8756669A242BBDD200E9F177 /* AddressData.swift */, - ); - path = Models; - sourceTree = ""; - }; - 7B4E1F1E22C4DD2D00854BAB /* Transactions */ = { - isa = PBXGroup; - children = ( - 7B4E1F1F22C4DD2D00854BAB /* MassTransferTransactionNode.swift */, - 7B4E1F2022C4DD2D00854BAB /* IssueTransactionNode.swift */, - 7B4E1F2122C4DD2D00854BAB /* SetAssetScriptTransactionNode.swift */, - 7B4E1F2222C4DD2D00854BAB /* DataTransactionNode.swift */, - 7B4E1F2322C4DD2D00854BAB /* AliasTransactionNode.swift */, - 7B4E1F2422C4DD2D00854BAB /* TransferTransactionNode.swift */, - 7B4E1F2522C4DD2D00854BAB /* BurnTransactionNode.swift */, - 7B4E1F2622C4DD2D00854BAB /* SponsorshipTransactionNode.swift */, - 7B4E1F2722C4DD2D00854BAB /* ExchangeTransactionNode.swift */, - 7B4E1F2822C4DD2D00854BAB /* LeaseCancelTransactionNode.swift */, - 7B4E1F2922C4DD2D00854BAB /* ReissueTransactionNode.swift */, - 7B4E1F2A22C4DD2D00854BAB /* LeaseTransactionNode.swift */, - 7B4E1F2B22C4DD2D00854BAB /* UnrecognisedTransactionNode.swift */, - 7B4E1F2C22C4DD2D00854BAB /* InvokeScriptTransactionNode.swift */, - 7B4E1F2D22C4DD2D00854BAB /* TransactionContainersNode.swift */, - 7B4E1F2E22C4DD2D00854BAB /* SetScriptTransactionNode.swift */, - 7BB6759A24D19C43004AA4FF /* UpdateAssetInfoTransactionNode.swift */, - ); - path = Transactions; - sourceTree = ""; - }; - 7B4E1F3222C4DD2D00854BAB /* Services */ = { - isa = PBXGroup; - children = ( - 7B4E1F3322C4DD2D00854BAB /* TransactionNodeService.swift */, - 7B4E1F3422C4DD2D00854BAB /* UtilsNodeService.swift */, - 7B4E1F3522C4DD2D00854BAB /* LeasingNodeService.swift */, - 7B4E1F3622C4DD2D00854BAB /* BlocksNodeService.swift */, - 7B4E1F3722C4DD2D00854BAB /* AssetsNodeService.swift */, - 7B4E1F3822C4DD2D00854BAB /* AddressesNodeService.swift */, - 7B4E1F3922C4DD2D00854BAB /* Protocols */, - ); - path = Services; - sourceTree = ""; - }; - 7B4E1F3922C4DD2D00854BAB /* Protocols */ = { - isa = PBXGroup; - children = ( - 7B4E1F3A22C4DD2D00854BAB /* AddressesNodeServiceProtocol.swift */, - 7B4E1F3B22C4DD2D00854BAB /* TransactionNodeServiceProtocol.swift */, - 7B4E1F3C22C4DD2D00854BAB /* AssetsNodeServiceProtocol.swift */, - 7B4E1F3D22C4DD2D00854BAB /* UtilsNodeServiceProtocol.swift */, - 7B4E1F3E22C4DD2D00854BAB /* BlocksNodeServiceProtocol.swift */, - 7B4E1F3F22C4DD2D00854BAB /* LeasingNodeServiceProtocol.swift */, - ); - path = Protocols; - sourceTree = ""; - }; - 7B4E1F4022C4DD2D00854BAB /* Data */ = { - isa = PBXGroup; - children = ( - 7B4E1F4122C4DD2D00854BAB /* Targets */, - 7B4E1F4722C4DD2D00854BAB /* Queries */, - 7B4E1F4A22C4DD2D00854BAB /* Models */, - 7B4E1F5122C4DD2D00854BAB /* DataServiceTypes.swift */, - 7B4E1F5222C4DD2D00854BAB /* Services */, - ); - path = Data; - sourceTree = ""; - }; - 7B4E1F4122C4DD2D00854BAB /* Targets */ = { - isa = PBXGroup; - children = ( - 7B4E1F4222C4DD2D00854BAB /* TransactionsDataTarget.swift */, - 7B4E1F4322C4DD2D00854BAB /* AssetsDataTarget.swift */, - 7B4E1F4422C4DD2D00854BAB /* CandlesDataTarget.swift */, - 7B4E1F4522C4DD2D00854BAB /* PairsPriceDataTarget.swift */, - 7B4E1F4622C4DD2D00854BAB /* AliasDataTarget.swift */, - E9496F5823D7D93500FBF78F /* PairsRateDataTarget.swift */, - ); - path = Targets; - sourceTree = ""; - }; - 7B4E1F4722C4DD2D00854BAB /* Queries */ = { - isa = PBXGroup; - children = ( - 7B4E1F4822C4DD2D00854BAB /* ExchangeFiltersDataQuery.swift */, - 7B4E1F4922C4DD2D00854BAB /* CandleFiltersDataQuery.swift */, - 87409DAF2417B06000726C12 /* MassTransferDataQuery.swift */, - ); - path = Queries; - sourceTree = ""; - }; - 7B4E1F4A22C4DD2D00854BAB /* Models */ = { - isa = PBXGroup; - children = ( - 7B4E1F4B22C4DD2D00854BAB /* PairPriceData.swift */, - E9496F5A23D7DBF300FBF78F /* PairsRateData.swift */, - 7B4E1F4C22C4DD2D00854BAB /* AssetData.swift */, - 7B4E1F4D22C4DD2D00854BAB /* TransactionData.swift */, - 7B4E1F4E22C4DD2D00854BAB /* CandleData.swift */, - 7B4E1F4F22C4DD2D00854BAB /* AliasData.swift */, - 7B4E1F5022C4DD2D00854BAB /* ResponseData.swift */, - 872C36A7241A38100050250B /* MassTransferTransaction.swift */, - ); - path = Models; - sourceTree = ""; - }; - 7B4E1F5222C4DD2D00854BAB /* Services */ = { - isa = PBXGroup; - children = ( - 7B4E1F5322C4DD2D00854BAB /* CandlesDataService.swift */, - 7B4E1F5422C4DD2D00854BAB /* PairsPriceDataService.swift */, - 7B4E1F5522C4DD2D00854BAB /* AliasDataService.swift */, - 7B4E1F5622C4DD2D00854BAB /* AssetsDataService.swift */, - 7B4E1F5722C4DD2D00854BAB /* TransactionsDataService.swift */, - 7B4E1F5822C4DD2D00854BAB /* Protocols */, - ); - path = Services; - sourceTree = ""; - }; - 7B4E1F5822C4DD2D00854BAB /* Protocols */ = { - isa = PBXGroup; - children = ( - 7B4E1F5922C4DD2D00854BAB /* CandlesDataServiceProtocol.swift */, - 7B4E1F5A22C4DD2D00854BAB /* AliasDataServiceProtocol.swift */, - 7B4E1F5B22C4DD2D00854BAB /* PairsPriceDataServiceProtocol.swift */, - 7B4E1F5C22C4DD2D00854BAB /* AssetsDataServiceProtocol.swift */, - 7B4E1F5D22C4DD2D00854BAB /* TransactionsDataServiceProtocol.swift */, - ); - path = Protocols; - sourceTree = ""; - }; - 7B72BBA122550493004A047F = { - isa = PBXGroup; - children = ( - 7B72BBAC22550493004A047F /* StubTest */, - 7B951149225E16370030390C /* WavesSDKTests */, - 7B4E1DE422C4DBDA00854BAB /* WavesSDK */, - 7B4E1DF622C4DC2800854BAB /* WavesSDKCrypto */, - 7B4E1E0722C4DC3400854BAB /* WavesSDKExtensions */, - 7B72BBAB22550493004A047F /* Products */, - AC99ABEB4BBE336881203739 /* Frameworks */, - DC66246A33E0487EBEE5F5E1 /* Pods */, - ); - sourceTree = ""; - }; - 7B72BBAB22550493004A047F /* Products */ = { - isa = PBXGroup; - children = ( - 7B72BBAA22550493004A047F /* StubTest.app */, - 7B951148225E16370030390C /* WavesSDKTests.xctest */, - 7B4E1DE322C4DBD900854BAB /* WavesSDK.framework */, - 7B4E1DF522C4DC2800854BAB /* WavesSDKCrypto.framework */, - 7B4E1E0622C4DC3400854BAB /* WavesSDKExtensions.framework */, - ); - name = Products; - sourceTree = ""; - }; - 7B72BBAC22550493004A047F /* StubTest */ = { - isa = PBXGroup; - children = ( - 7B951154225E18B80030390C /* Resources */, - 7B951153225E18B30030390C /* Sources */, - ); - path = StubTest; - sourceTree = ""; - }; - 7B951149225E16370030390C /* WavesSDKTests */ = { - isa = PBXGroup; - children = ( - 7B95114C225E16370030390C /* Info.plist */, - 7B74597522C64EDF0047A005 /* WavesServicesTest.swift */, - 7B95114A225E16370030390C /* WavesCryptoTest.swift */, - 7B74597722C64F840047A005 /* WavesServicesBroadcastTransactionsTest.swift */, - ); - path = WavesSDKTests; - sourceTree = ""; - }; - 7B951153225E18B30030390C /* Sources */ = { - isa = PBXGroup; - children = ( - 7B72BBAD22550493004A047F /* AppDelegate.swift */, - 7B72BBB122550493004A047F /* Main.storyboard */, - ); - path = Sources; - sourceTree = ""; - }; - 7B951154225E18B80030390C /* Resources */ = { - isa = PBXGroup; - children = ( - 7B72BBB422550495004A047F /* Assets.xcassets */, - 7B72BBB622550495004A047F /* LaunchScreen.storyboard */, - 7B72BBB922550495004A047F /* Info.plist */, - ); - path = Resources; - sourceTree = ""; - }; - AC99ABEB4BBE336881203739 /* Frameworks */ = { - isa = PBXGroup; - children = ( - 7B3DCA8422CFC9C700FC973D /* Foundation.framework */, - 7B42335622563A3200E82730 /* Security.framework */, - 7B42335422563A2100E82730 /* CoreTelephony.framework */, - 8EBC6763F0CBF8C4EB1DA4C1 /* Pods_WavesSDKTests.framework */, - A604E380777BE7E3B63B49F5 /* Pods_Waves_Exchange_SDK_StubTest.framework */, - 781290C6655578036CDA2D08 /* Pods_Waves_Exchange_SDK_WavesSDK.framework */, - 8625E48FA90E048D091F4B9E /* Pods_Waves_Exchange_SDK_WavesSDKCrypto.framework */, - 6E7AA1F5018E52FD7CFB2112 /* Pods_Waves_Exchange_SDK_WavesSDKExtensions.framework */, - ); - name = Frameworks; - sourceTree = ""; - }; - DC66246A33E0487EBEE5F5E1 /* Pods */ = { - isa = PBXGroup; - children = ( - 83C71800404F1CBBB4010A27 /* Pods-Waves-Exchange-SDK-StubTest.dev-debug.xcconfig */, - 4E1426FAF92B2F37F92E43F1 /* Pods-Waves-Exchange-SDK-StubTest.test-dev.xcconfig */, - 8CF99F81F79EE66857AB9578 /* Pods-Waves-Exchange-SDK-StubTest.release-dev.xcconfig */, - 4D9AFCBE2E229B7214B2B634 /* Pods-Waves-Exchange-SDK-StubTest.dev-adhoc.xcconfig */, - A708203E910852CDAFD7324F /* Pods-Waves-Exchange-SDK-StubTest.release-prod.xcconfig */, - 0508072621377B4536DE03E7 /* Pods-Waves-Exchange-SDK-StubTest.release-adhoc.xcconfig */, - F0CDA7D4E7228A436EF42B7B /* Pods-Waves-Exchange-SDK-StubTest.test-prod.xcconfig */, - 21786F8FC9A0EB30759912E3 /* Pods-Waves-Exchange-SDK-WavesSDK.dev-debug.xcconfig */, - 731BD0FC3F3C3FC1AC9B5D8C /* Pods-Waves-Exchange-SDK-WavesSDK.test-dev.xcconfig */, - F0C46FA173C628278F23AF16 /* Pods-Waves-Exchange-SDK-WavesSDK.release-dev.xcconfig */, - D1A31A1CEF4CC917A52A381B /* Pods-Waves-Exchange-SDK-WavesSDK.dev-adhoc.xcconfig */, - 42D7DDC3AFBDDE9DEF887387 /* Pods-Waves-Exchange-SDK-WavesSDK.release-prod.xcconfig */, - 224CA0C24794921AB03072FE /* Pods-Waves-Exchange-SDK-WavesSDK.release-adhoc.xcconfig */, - 93D148640FCEF1307E11D19A /* Pods-Waves-Exchange-SDK-WavesSDK.test-prod.xcconfig */, - 4E84F7D094272DFDB954D1ED /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.dev-debug.xcconfig */, - 5DE775DBF7C3635CD644B77D /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.test-dev.xcconfig */, - 28D3C243802CEFE0ED716031 /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.release-dev.xcconfig */, - 8039432D4DA5FFEF3B2FC429 /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.dev-adhoc.xcconfig */, - ED59D88E378730ED09B48754 /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.release-prod.xcconfig */, - 94DE5383B7B45D8F3E3939ED /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.release-adhoc.xcconfig */, - 14C7D0D8FC695A614F1600AA /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.test-prod.xcconfig */, - 400C8FCA907BB961EF91A346 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.dev-debug.xcconfig */, - 71CEB8FB7CB35D81DC095886 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.test-dev.xcconfig */, - E9D96B0052641822892343E1 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.release-dev.xcconfig */, - 639D0A1922E6D1A28107B0C3 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.dev-adhoc.xcconfig */, - 119CE632AC148FBB7B881235 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.release-prod.xcconfig */, - 653FBBA552926C9DAA70984C /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.release-adhoc.xcconfig */, - 36FCA4E83FFD9076A9C08FE7 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.test-prod.xcconfig */, - 47D4ADFC1CA7318E60FB0AC4 /* Pods-WavesSDKTests.dev-debug.xcconfig */, - 9549BBF2CCBEFDC7B473053F /* Pods-WavesSDKTests.test-dev.xcconfig */, - E168F5E712310F8810B0DBF8 /* Pods-WavesSDKTests.release-dev.xcconfig */, - EF4D580D88C328814A241A46 /* Pods-WavesSDKTests.dev-adhoc.xcconfig */, - 1E76639DE833759D4302531C /* Pods-WavesSDKTests.release-prod.xcconfig */, - 2947576B28F5E4E8904B5301 /* Pods-WavesSDKTests.release-adhoc.xcconfig */, - CBDF4DE45C519904E9D9AE9D /* Pods-WavesSDKTests.test-prod.xcconfig */, - ); - name = Pods; - path = ../../Pods; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXHeadersBuildPhase section */ - 7B4E1DDE22C4DBD900854BAB /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - 7B4E1DE722C4DBDA00854BAB /* WavesSDK.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7B4E1DF022C4DC2800854BAB /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - 7B3DCBE822D3618A00FC973D /* crypto_sign.h in Headers */, - 7B3DCBEC22D3618A00FC973D /* crypto_sign_edwards25519sha512batch.h in Headers */, - 7B3DCBE322D3618A00FC973D /* compare.h in Headers */, - 7B3DCBD322D3617D00FC973D /* fe.h in Headers */, - 7B3DCBD922D3617D00FC973D /* ge.h in Headers */, - 7B3DCBD822D3617D00FC973D /* ge_sub.h in Headers */, - 7B3DCBF422D3619A00FC973D /* Ed25519.h in Headers */, - 7B3DCBD222D3617D00FC973D /* d2.h in Headers */, - 7B3DCBD122D3617D00FC973D /* d.h in Headers */, - 7B3DCBCF22D3617D00FC973D /* base.h in Headers */, - 7B3DCAB922D3421F00FC973D /* base58.h in Headers */, - 7B3DCBF322D3619A00FC973D /* Randomness.h in Headers */, - 7B3DCBDE22D3618A00FC973D /* zeroize.h in Headers */, - 7B3DCB8C22D34D4000FC973D /* keccak.h in Headers */, - 7B3DCBE622D3618A00FC973D /* crypto_uint32.h in Headers */, - 7B3DCBE522D3618A00FC973D /* curve_sigs.h in Headers */, - 7B3DCBEA22D3618A00FC973D /* crypto_int64.h in Headers */, - 7B3DCADA22D3472C00FC973D /* crypto_generichash.h in Headers */, - 7B3DCBDB22D3617D00FC973D /* pow225521.h in Headers */, - 7B4E1DF922C4DC2800854BAB /* WavesSDKCrypto.h in Headers */, - 7B3DCADB22D3472C00FC973D /* crypto_generichash_blake2b.h in Headers */, - 7B3DCBDC22D3617D00FC973D /* sc.h in Headers */, - 7B3DCBF522D3619A00FC973D /* Curve25519.h in Headers */, - 7B3DCBD022D3617D00FC973D /* base2.h in Headers */, - 7B3DCBDA22D3617D00FC973D /* pow22523.h in Headers */, - 7B3DCAD022D3472C00FC973D /* export.h in Headers */, - 7B3DCAD322D3472C00FC973D /* api.h in Headers */, - 7B3DCBD422D3617D00FC973D /* ge_add.h in Headers */, - 7B3DCBEB22D3618A00FC973D /* crypto_uint64.h in Headers */, - 7B3DCBDD22D3617D00FC973D /* sqrtm1.h in Headers */, - 7B3DCBD622D3617D00FC973D /* ge_msub.h in Headers */, - 7B3DCAD122D3472C00FC973D /* randombytes.h in Headers */, - 7B3DCACF22D3472C00FC973D /* utils.h in Headers */, - 7B3DCBD722D3617D00FC973D /* ge_p2_dbl.h in Headers */, - 7B3DCBE722D3618A00FC973D /* crypto_int32.h in Headers */, - 7B3DCBCE22D3617D00FC973D /* api.h in Headers */, - 7B3DCBE022D3618A00FC973D /* crypto_hash_sha512.h in Headers */, - 7B3DCAD622D3472C00FC973D /* blake2.h in Headers */, - 7B3DCBD522D3617D00FC973D /* ge_madd.h in Headers */, - 7B3DCBE922D3618A00FC973D /* crypto_verify_32.h in Headers */, - 7B3DCAD922D3472C00FC973D /* blake2-impl.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7B4E1E0122C4DC3400854BAB /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - 7B4E1E0A22C4DC3400854BAB /* InternalWavesSDKExtensions.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXHeadersBuildPhase section */ - -/* Begin PBXNativeTarget section */ - 7B4E1DE222C4DBD900854BAB /* WavesSDK */ = { - isa = PBXNativeTarget; - buildConfigurationList = 7B4E1DEE22C4DBDA00854BAB /* Build configuration list for PBXNativeTarget "WavesSDK" */; - buildPhases = ( - 29815EBB5B5D0EE73841C1ED /* [CP] Check Pods Manifest.lock */, - 7B4E1DDE22C4DBD900854BAB /* Headers */, - 7B4E1DDF22C4DBD900854BAB /* Sources */, - 7B4E1DE022C4DBD900854BAB /* Frameworks */, - 7B4E1DE122C4DBD900854BAB /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = WavesSDK; - productName = InternalWavesSDK; - productReference = 7B4E1DE322C4DBD900854BAB /* WavesSDK.framework */; - productType = "com.apple.product-type.framework"; - }; - 7B4E1DF422C4DC2800854BAB /* WavesSDKCrypto */ = { - isa = PBXNativeTarget; - buildConfigurationList = 7B4E1DFE22C4DC2800854BAB /* Build configuration list for PBXNativeTarget "WavesSDKCrypto" */; - buildPhases = ( - B4461CC8C6B975F2BE55041B /* [CP] Check Pods Manifest.lock */, - 7B4E1DF022C4DC2800854BAB /* Headers */, - 7B4E1DF122C4DC2800854BAB /* Sources */, - 7B4E1DF222C4DC2800854BAB /* Frameworks */, - 7B4E1DF322C4DC2800854BAB /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = WavesSDKCrypto; - productName = InternalWavesSDKCrypto; - productReference = 7B4E1DF522C4DC2800854BAB /* WavesSDKCrypto.framework */; - productType = "com.apple.product-type.framework"; - }; - 7B4E1E0522C4DC3400854BAB /* WavesSDKExtensions */ = { - isa = PBXNativeTarget; - buildConfigurationList = 7B4E1E0F22C4DC3400854BAB /* Build configuration list for PBXNativeTarget "WavesSDKExtensions" */; - buildPhases = ( - BED4FFA8B9CD908AFCB612F2 /* [CP] Check Pods Manifest.lock */, - 7B4E1E0122C4DC3400854BAB /* Headers */, - 7B4E1E0222C4DC3400854BAB /* Sources */, - 7B4E1E0322C4DC3400854BAB /* Frameworks */, - 7B4E1E0422C4DC3400854BAB /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = WavesSDKExtensions; - productName = InternalWavesSDKExtensions; - productReference = 7B4E1E0622C4DC3400854BAB /* WavesSDKExtensions.framework */; - productType = "com.apple.product-type.framework"; - }; - 7B72BBA922550493004A047F /* StubTest */ = { - isa = PBXNativeTarget; - buildConfigurationList = 7B72BBBC22550495004A047F /* Build configuration list for PBXNativeTarget "StubTest" */; - buildPhases = ( - 2F0DED87FF7DDDBBC28BBD77 /* [CP] Check Pods Manifest.lock */, - 7B72BBA622550493004A047F /* Sources */, - 7B72BBA722550493004A047F /* Frameworks */, - 7B72BBA822550493004A047F /* Resources */, - 7B4E1DEF22C4DBDA00854BAB /* Embed Frameworks */, - E013CA2E83A410D65F9A7D2C /* [CP] Embed Pods Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - 7B4E1DE922C4DBDA00854BAB /* PBXTargetDependency */, - 7B4E1DFB22C4DC2800854BAB /* PBXTargetDependency */, - 7B4E1E0C22C4DC3400854BAB /* PBXTargetDependency */, - ); - name = StubTest; - productName = WavesSDK; - productReference = 7B72BBAA22550493004A047F /* StubTest.app */; - productType = "com.apple.product-type.application"; - }; - 7B951147225E16370030390C /* WavesSDKTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 7B95114F225E16370030390C /* Build configuration list for PBXNativeTarget "WavesSDKTests" */; - buildPhases = ( - 1372A21FEDD630E166F9E647 /* [CP] Check Pods Manifest.lock */, - 7B951144225E16370030390C /* Sources */, - 7B951145225E16370030390C /* Frameworks */, - 7B951146225E16370030390C /* Resources */, - 48E9FE44485C21C1A3094268 /* [CP] Embed Pods Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - 7B7A4B7222D3755900E0A8CD /* PBXTargetDependency */, - 7B7A4B7422D3755900E0A8CD /* PBXTargetDependency */, - 7B7A4B7622D3755900E0A8CD /* PBXTargetDependency */, - 7B7A4B7022D3723F00E0A8CD /* PBXTargetDependency */, - ); - name = WavesSDKTests; - productName = WavesSDKTests; - productReference = 7B951148225E16370030390C /* WavesSDKTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 7B72BBA222550493004A047F /* Project object */ = { - isa = PBXProject; - attributes = { - DefaultBuildSystemTypeForWorkspace = Original; - LastSwiftUpdateCheck = 1010; - LastUpgradeCheck = 1230; - ORGANIZATIONNAME = Waves; - TargetAttributes = { - 7B4E1DE222C4DBD900854BAB = { - CreatedOnToolsVersion = 10.2.1; - }; - 7B4E1DF422C4DC2800854BAB = { - CreatedOnToolsVersion = 10.2.1; - }; - 7B4E1E0522C4DC3400854BAB = { - CreatedOnToolsVersion = 10.2.1; - }; - 7B72BBA922550493004A047F = { - CreatedOnToolsVersion = 10.1; - }; - 7B951147225E16370030390C = { - CreatedOnToolsVersion = 10.1; - TestTargetID = 7B72BBA922550493004A047F; - }; - }; - }; - buildConfigurationList = 7B72BBA522550493004A047F /* Build configuration list for PBXProject "WavesSDK" */; - compatibilityVersion = "Xcode 9.3"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = 7B72BBA122550493004A047F; - productRefGroup = 7B72BBAB22550493004A047F /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 7B72BBA922550493004A047F /* StubTest */, - 7B951147225E16370030390C /* WavesSDKTests */, - 7B4E1DE222C4DBD900854BAB /* WavesSDK */, - 7B4E1DF422C4DC2800854BAB /* WavesSDKCrypto */, - 7B4E1E0522C4DC3400854BAB /* WavesSDKExtensions */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 7B4E1DE122C4DBD900854BAB /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7B4E1DF322C4DC2800854BAB /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7B4E1E0422C4DC3400854BAB /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7B72BBA822550493004A047F /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 7B72BBB822550495004A047F /* LaunchScreen.storyboard in Resources */, - 7B72BBB522550495004A047F /* Assets.xcassets in Resources */, - 7B72BBB322550493004A047F /* Main.storyboard in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7B951146225E16370030390C /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXShellScriptBuildPhase section */ - 1372A21FEDD630E166F9E647 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-WavesSDKTests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - 29815EBB5B5D0EE73841C1ED /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Waves-Exchange-SDK-WavesSDK-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - 2F0DED87FF7DDDBBC28BBD77 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Waves-Exchange-SDK-StubTest-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - 48E9FE44485C21C1A3094268 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-WavesSDKTests/Pods-WavesSDKTests-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - B4461CC8C6B975F2BE55041B /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Waves-Exchange-SDK-WavesSDKCrypto-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - BED4FFA8B9CD908AFCB612F2 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Waves-Exchange-SDK-WavesSDKExtensions-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - E013CA2E83A410D65F9A7D2C /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Waves-Exchange-SDK-StubTest/Pods-Waves-Exchange-SDK-StubTest-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; -/* End PBXShellScriptBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 7B4E1DDF22C4DBD900854BAB /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 7B4E1F7922C4DD2D00854BAB /* MatcherServiceTypes.swift in Sources */, - 7B4E1F7A22C4DD2D00854BAB /* PublicKeyMatcherService.swift in Sources */, - 7B4E1FA422C4DD2D00854BAB /* AddressesNodeServiceProtocol.swift in Sources */, - 7B4E1F9122C4DD2D00854BAB /* BurnTransactionNode.swift in Sources */, - 7B4E1F7822C4DD2D00854BAB /* OrderBookMatcher.swift in Sources */, - 7B4E1F9922C4DD2D00854BAB /* TransactionContainersNode.swift in Sources */, - 7B42C0212320415C00B3E5DC /* Encodable+Base64.swift in Sources */, - 7BB6EF82258B7F5600CC5164 /* DispatchQueuePool.swift in Sources */, - 7B4E1FBF22C4DD2D00854BAB /* PairsPriceDataServiceProtocol.swift in Sources */, - 7B4E1FB322C4DD2D00854BAB /* TransactionData.swift in Sources */, - 7B4E1F6322C4DD2D00854BAB /* WavesSDK.swift in Sources */, - 7B4E1F6622C4DD2D00854BAB /* InternalWavesService.swift in Sources */, - 7B4E1F7522C4DD2D00854BAB /* BalanceMatcherQuery.swift in Sources */, - 7B4E1F6E22C4DD2D00854BAB /* MatcherServicesProtocol.swift in Sources */, - 7B4E1F9422C4DD2D00854BAB /* LeaseCancelTransactionNode.swift in Sources */, - 7B4E1FB022C4DD2D00854BAB /* CandleFiltersDataQuery.swift in Sources */, - 7B4E1FA922C4DD2D00854BAB /* LeasingNodeServiceProtocol.swift in Sources */, - 7B4E1F6522C4DD2D00854BAB /* DataServices.swift in Sources */, - 7B4E1F5F22C4DD2D00854BAB /* SignatureProtocol.swift in Sources */, - 7B4E1F9622C4DD2D00854BAB /* LeaseTransactionNode.swift in Sources */, - 7B3681A323152E13000D5592 /* WavesKeeper.swift in Sources */, - 7B4E1F9222C4DD2D00854BAB /* SponsorshipTransactionNode.swift in Sources */, - 87409DB02417B06000726C12 /* MassTransferDataQuery.swift in Sources */, - 7B4E1F6822C4DD2D00854BAB /* MatcherServices.swift in Sources */, - 7B4E1F6A22C4DD2D00854BAB /* ContentType.swift in Sources */, - 7B4E1FA222C4DD2D00854BAB /* AssetsNodeService.swift in Sources */, - 7B4E1F6722C4DD2D00854BAB /* WavesServices.swift in Sources */, - 7B4E1F8022C4DD2D00854BAB /* NodeTargetTypes.swift in Sources */, - 7B4E1F8222C4DD2D00854BAB /* TransactionNodeTarget.swift in Sources */, - 7B4E1F9B22C4DD2D00854BAB /* AssetDetailNode.swift in Sources */, - 7B4E1F9E22C4DD2D00854BAB /* TransactionNodeService.swift in Sources */, - 7B4E1FC222C4DD2D00854BAB /* WavesSDKConstants.swift in Sources */, - 7B4E1FA022C4DD2D00854BAB /* LeasingNodeService.swift in Sources */, - 7B4E1FAD22C4DD2D00854BAB /* PairsPriceDataTarget.swift in Sources */, - 7BBB233622CE13140057095D /* BaseTransactionQueryProtocol.swift in Sources */, - 7B0B6F9B231E6DC800CC5DCB /* DictionaryEncoder.swift in Sources */, - 7B4E1F6D22C4DD2D00854BAB /* DataServicesProtocol.swift in Sources */, - 7B4E1FA322C4DD2D00854BAB /* AddressesNodeService.swift in Sources */, - 7B4E1FAF22C4DD2D00854BAB /* ExchangeFiltersDataQuery.swift in Sources */, - 7B4E1FAC22C4DD2D00854BAB /* CandlesDataTarget.swift in Sources */, - 7B4E1FBE22C4DD2D00854BAB /* AliasDataServiceProtocol.swift in Sources */, - E9496F5923D7D93500FBF78F /* PairsRateDataTarget.swift in Sources */, - 7B4E1F6C22C4DD2D00854BAB /* ServicesProtocol.swift in Sources */, - 7B4E1F8D22C4DD2D00854BAB /* SetAssetScriptTransactionNode.swift in Sources */, - 7B4E1FB922C4DD2D00854BAB /* PairsPriceDataService.swift in Sources */, - 7B4E1FB822C4DD2D00854BAB /* CandlesDataService.swift in Sources */, - 7B4E1F7422C4DD2D00854BAB /* BalanceMatcherTarget.swift in Sources */, - 7B4E1F7E22C4DD2D00854BAB /* PublicKeyMatcherServiceProtocol.swift in Sources */, - 7B4E1F6422C4DD2D00854BAB /* WavesEnvironment.swift in Sources */, - 7B4E1F7022C4DD2D00854BAB /* NodeServicesProtocol.swift in Sources */, - 7B74597922C653FB0047A005 /* TransactionSign.swift in Sources */, - 7B4E1F9522C4DD2D00854BAB /* ReissueTransactionNode.swift in Sources */, - 7B4E1FA822C4DD2D00854BAB /* BlocksNodeServiceProtocol.swift in Sources */, - 7B4E1F6122C4DD2D00854BAB /* TransactionSignatureV2.swift in Sources */, - 7B4E1FB722C4DD2D00854BAB /* DataServiceTypes.swift in Sources */, - E9496F5B23D7DBF300FBF78F /* PairsRateData.swift in Sources */, - 7B4E1F6922C4DD2D00854BAB /* NodeServices.swift in Sources */, - 7BB6759B24D19C43004AA4FF /* UpdateAssetInfoTransactionNode.swift in Sources */, - 7B4E1F8122C4DD2D00854BAB /* AssetsNodeTarget.swift in Sources */, - 7B4E1F8622C4DD2D00854BAB /* AddressesNodeTarget.swift in Sources */, - 7B4E1F9A22C4DD2D00854BAB /* SetScriptTransactionNode.swift in Sources */, - 7B4E1F9D22C4DD2D00854BAB /* UtilsNode.swift in Sources */, - 8756669B242BBDD200E9F177 /* AddressData.swift in Sources */, - 7B4E1FB422C4DD2D00854BAB /* CandleData.swift in Sources */, - 7BBB233022CA2B8D0057095D /* TransactionSignatureV1.swift in Sources */, - 7B4E1FBD22C4DD2D00854BAB /* CandlesDataServiceProtocol.swift in Sources */, - E9399076231FD41D00302490 /* WavesKeeper+Decodable.swift in Sources */, - 7B4E1FAE22C4DD2D00854BAB /* AliasDataTarget.swift in Sources */, - 7B4E1FA722C4DD2D00854BAB /* UtilsNodeServiceProtocol.swift in Sources */, - 7B4E1F9322C4DD2D00854BAB /* ExchangeTransactionNode.swift in Sources */, - 7B4E1F9822C4DD2D00854BAB /* InvokeScriptTransactionNode.swift in Sources */, - 7B4E1F8A22C4DD2D00854BAB /* AccountBalanceNode.swift in Sources */, - 7B4E1F7C22C4DD2D00854BAB /* BalanceMatcherService.swift in Sources */, - 7BE1930F243CFD5B00916E15 /* CachePolicyPlugin.swift in Sources */, - 7B4E1FBB22C4DD2D00854BAB /* AssetsDataService.swift in Sources */, - 7B4E1F8F22C4DD2D00854BAB /* AliasTransactionNode.swift in Sources */, - 7B4E1FB222C4DD2D00854BAB /* AssetData.swift in Sources */, - 7B4E1FC122C4DD2D00854BAB /* TransactionsDataServiceProtocol.swift in Sources */, - 7B4E1FB522C4DD2D00854BAB /* AliasData.swift in Sources */, - 7BBB233322CA2C990057095D /* TransactionType.swift in Sources */, - 7B4E1FB122C4DD2D00854BAB /* PairPriceData.swift in Sources */, - 7B4E1F8522C4DD2D00854BAB /* LeasingNodeTarget.swift in Sources */, - 7B4E1F9C22C4DD2D00854BAB /* AccountAssetsBalanceNode.swift in Sources */, - 7B4E1FA122C4DD2D00854BAB /* BlocksNodeService.swift in Sources */, - 7B4E1F8422C4DD2D00854BAB /* UtilsNodeTarget.swift in Sources */, - 7B4E1F7122C4DD2D00854BAB /* String+Waves.swift in Sources */, - 7B4E1F6B22C4DD2D00854BAB /* NetworkError.swift in Sources */, - 7B4E1F9722C4DD2D00854BAB /* UnrecognisedTransactionNode.swift in Sources */, - 7B4E1F9F22C4DD2D00854BAB /* UtilsNodeService.swift in Sources */, - 7B4E1F8922C4DD2D00854BAB /* AddressScriptInfoNode.swift in Sources */, - 7B4E1F7322C4DD2D00854BAB /* PublicKeyMatcherTarget.swift in Sources */, - 7B4E1F7222C4DD2D00854BAB /* OrderBookMatcherTarget.swift in Sources */, - 7B4E1F7722C4DD2D00854BAB /* OrderMatcher.swift in Sources */, - 7B4E1FB622C4DD2D00854BAB /* ResponseData.swift in Sources */, - 7B4E1F6F22C4DD2D00854BAB /* WavesServicesProtocol.swift in Sources */, - 7B4E1FBC22C4DD2D00854BAB /* TransactionsDataService.swift in Sources */, - 7B4E1FAB22C4DD2D00854BAB /* AssetsDataTarget.swift in Sources */, - 7B4E1FA522C4DD2D00854BAB /* TransactionNodeServiceProtocol.swift in Sources */, - 7B4E1F7F22C4DD2D00854BAB /* BalanceMatcherServiceProtocol.swift in Sources */, - 7B4E1F7622C4DD2D00854BAB /* MarketMatcher.swift in Sources */, - 7B4E1FC022C4DD2D00854BAB /* AssetsDataServiceProtocol.swift in Sources */, - 7B4E1F8322C4DD2D00854BAB /* BlocksNodeTarget.swift in Sources */, - 7B4E1F7B22C4DD2D00854BAB /* OrderBookMatcherService.swift in Sources */, - 7B4E1F8B22C4DD2D00854BAB /* MassTransferTransactionNode.swift in Sources */, - 7B4E1FBA22C4DD2D00854BAB /* AliasDataService.swift in Sources */, - 7B4E1F9022C4DD2D00854BAB /* TransferTransactionNode.swift in Sources */, - 7B4E1F8E22C4DD2D00854BAB /* DataTransactionNode.swift in Sources */, - 7B4E1FAA22C4DD2D00854BAB /* TransactionsDataTarget.swift in Sources */, - 7B4E1F7D22C4DD2D00854BAB /* OrderBookMatcherServiceProtocol.swift in Sources */, - 872C36A8241A38100050250B /* MassTransferTransaction.swift in Sources */, - 7B4E1F8C22C4DD2D00854BAB /* IssueTransactionNode.swift in Sources */, - 7B4E1F8822C4DD2D00854BAB /* BlockNode.swift in Sources */, - 7B4E1F8722C4DD2D00854BAB /* TransactionNodeQuery.swift in Sources */, - 7B4E1FA622C4DD2D00854BAB /* AssetsNodeServiceProtocol.swift in Sources */, - 7B4E1F6022C4DD2D00854BAB /* TransactionSignatureProtocol.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7B4E1DF122C4DC2800854BAB /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 7B3DCBBA22D3617D00FC973D /* ge_frombytes.c in Sources */, - 7B3DCBB922D3617D00FC973D /* ge_double_scalarmult.c in Sources */, - 7B3DCBAC22D3617D00FC973D /* fe_copy.c in Sources */, - 7B3DCBB122D3617D00FC973D /* fe_mul.c in Sources */, - 7B3DCA8122CFC37600FC973D /* Words.swift in Sources */, - 7B3DCAD522D3472C00FC973D /* utils.c in Sources */, - 7B3DCABB22D3421F00FC973D /* base58.c in Sources */, - 7B3DCBEE22D3618A00FC973D /* hash.c in Sources */, - 7B3DCBE222D3618A00FC973D /* sign_modified.c in Sources */, - 7B3DCBAD22D3617D00FC973D /* fe_frombytes.c in Sources */, - 7B3DCBCC22D3617D00FC973D /* sc_reduce.c in Sources */, - 7B3DCBAF22D3617D00FC973D /* fe_isnegative.c in Sources */, - 7B3DCBF122D3619A00FC973D /* Ed25519.m in Sources */, - 7B3DCAD822D3472C00FC973D /* blake2b-ref.c in Sources */, - 7B3DCBE122D3618A00FC973D /* curve_sigs.c in Sources */, - 7B3DCBBF22D3617D00FC973D /* ge_p2_0.c in Sources */, - 7B3DCAD422D3472C00FC973D /* generichash_blake2_api.c in Sources */, - 7B3DCBC022D3617D00FC973D /* ge_p2_dbl.c in Sources */, - 7B3DCBB222D3617D00FC973D /* fe_neg.c in Sources */, - 7B3DCBED22D3618A00FC973D /* blocks.c in Sources */, - 7B3DCBC622D3617D00FC973D /* ge_precomp_0.c in Sources */, - 7B3DCBCA22D3617D00FC973D /* open.c in Sources */, - 7B3DCBAE22D3617D00FC973D /* fe_invert.c in Sources */, - 7B3DCAD722D3472C00FC973D /* generichash_blake2b.c in Sources */, - 7B3DCBA922D3617D00FC973D /* fe_1.c in Sources */, - 7B3DCBAA22D3617D00FC973D /* fe_add.c in Sources */, - 7B3DCBF022D3619A00FC973D /* Randomness.m in Sources */, - 7B3DCBC422D3617D00FC973D /* ge_p3_to_p2.c in Sources */, - 7B3DCBBD22D3617D00FC973D /* ge_p1p1_to_p2.c in Sources */, - 7B3DCBC322D3617D00FC973D /* ge_p3_to_cached.c in Sources */, - 7B3DCBC122D3617D00FC973D /* ge_p3_0.c in Sources */, - 7B3DCBDF22D3618A00FC973D /* compare.c in Sources */, - 7B3DCBB022D3617D00FC973D /* fe_isnonzero.c in Sources */, - 7B3DCA8222CFC37600FC973D /* WavesCrypto.swift in Sources */, - 7B3DCBC222D3617D00FC973D /* ge_p3_dbl.c in Sources */, - 7B3DCBB322D3617D00FC973D /* fe_pow22523.c in Sources */, - 7B3DCBCB22D3617D00FC973D /* sc_muladd.c in Sources */, - 7B3DCBBC22D3617D00FC973D /* ge_msub.c in Sources */, - 7B3DCBB522D3617D00FC973D /* fe_sq2.c in Sources */, - 7B3DCBA822D3617D00FC973D /* fe_0.c in Sources */, - 7B3DCBC922D3617D00FC973D /* ge_tobytes.c in Sources */, - 7B3DCABA22D3421F00FC973D /* Base58Encoder.swift in Sources */, - 7B3DCBC822D3617D00FC973D /* ge_sub.c in Sources */, - 7B3DCBBE22D3617D00FC973D /* ge_p1p1_to_p3.c in Sources */, - 7B3DCAD222D3472C00FC973D /* crypto_generichash.c in Sources */, - 7B3DCBB722D3617D00FC973D /* fe_tobytes.c in Sources */, - 7B3DCBE422D3618A00FC973D /* zeroize.c in Sources */, - 7B3DCBC722D3617D00FC973D /* ge_scalarmult_base.c in Sources */, - 7B3DCBCD22D3617D00FC973D /* sign.c in Sources */, - 7B3DCBB622D3617D00FC973D /* fe_sub.c in Sources */, - 7B3DCBBB22D3617D00FC973D /* ge_madd.c in Sources */, - 7B3DCBEF22D3619600FC973D /* curve25519-donna.c in Sources */, - 7B3DCBB822D3617D00FC973D /* ge_add.c in Sources */, - 7B3DCA2922CFC37600FC973D /* keccak.c in Sources */, - 7B3DCBB422D3617D00FC973D /* fe_sq.c in Sources */, - 7B3DCBAB22D3617D00FC973D /* fe_cmov.c in Sources */, - 7B3DCBF222D3619A00FC973D /* Curve25519.m in Sources */, - 7B3DCBC522D3617D00FC973D /* ge_p3_tobytes.c in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7B4E1E0222C4DC3400854BAB /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 7B4E1E4A22C4DD0100854BAB /* Thread+Assisstants.swift in Sources */, - E97A74A922D4B26200777C39 /* String+Bytes.swift in Sources */, - E96DE18F231805A7005E1FD9 /* JSONDecoder+TimestampDiff.swift in Sources */, - 7B4E1E5222C4DD0100854BAB /* Optional+Hashable.swift in Sources */, - 7B4E1E4322C4DD0100854BAB /* Array+Sort.swift in Sources */, - 7B4E1E4922C4DD0100854BAB /* DateFormatter+Once.swift in Sources */, - 7B4E1E5A22C4DD0100854BAB /* ObservableType+SweetLogger.swift in Sources */, - 7B4E1E4D22C4DD0100854BAB /* RxSwift+Scheduler.swift in Sources */, - 7B4E1E5522C4DD0100854BAB /* String+Utils.swift in Sources */, - 7B4E1E5022C4DD0100854BAB /* NSObject+AssociatedObject.swift in Sources */, - 7B4E1E4522C4DD0100854BAB /* ObjectDestructor.swift in Sources */, - 7B4E1E5D22C4DD0100854BAB /* SweetLogger.swift in Sources */, - 7B4E1E5B22C4DD0100854BAB /* SweetLoggerConsole.swift in Sources */, - 7B4E1E5C22C4DD0100854BAB /* SweetLoggerProtocol.swift in Sources */, - 7B4E1E4C22C4DD0100854BAB /* JSONDecoder+Rx.swift in Sources */, - 7B4E1E5E22C4DD0100854BAB /* TSUD.swift in Sources */, - 7B4E1E4122C4DD0100854BAB /* Bundle+Version.swift in Sources */, - 7B4E1E4222C4DD0100854BAB /* Assert+Message.swift in Sources */, - 7B4E1E5422C4DD0100854BAB /* String+Escaped.swift in Sources */, - 7B4E1E5322C4DD0100854BAB /* String+URL.swift in Sources */, - 7B4E1E4722C4DD0100854BAB /* DateFormatter+ISO.swift in Sources */, - 7B4E1E4E22C4DD0100854BAB /* DispatchTimeInterval.swift in Sources */, - 7B4E1E4422C4DD0100854BAB /* Array+Extension.swift in Sources */, - 7B4E1E5622C4DD0100854BAB /* String+UInt.swift in Sources */, - 7B4E1E5722C4DD0100854BAB /* ObservableType+Weak.swift in Sources */, - 7B4E1E5122C4DD0100854BAB /* Encodable+Dictionary.swift in Sources */, - 7B4E1E5922C4DD0100854BAB /* Runtime.swift in Sources */, - 7B4E1E4822C4DD0100854BAB /* DateExtension+Sync.swift in Sources */, - 7B4E1E4F22C4DD0100854BAB /* UInt8+Assisstants.swift in Sources */, - 42BB3EF72594C60C00A0142A /* NumberFormatter+Once.swift in Sources */, - 7B4E1E5822C4DD0100854BAB /* Any+Name.swift in Sources */, - 7B4E1E4622C4DD0100854BAB /* Dictionary+Json.swift in Sources */, - 7B4E1E4B22C4DD0100854BAB /* JSONDecoder+JSON.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7B72BBA622550493004A047F /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 7B72BBAE22550493004A047F /* AppDelegate.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 7B951144225E16370030390C /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 7B74597822C64F840047A005 /* WavesServicesBroadcastTransactionsTest.swift in Sources */, - 7B74597622C64EDF0047A005 /* WavesServicesTest.swift in Sources */, - 7B95114B225E16370030390C /* WavesCryptoTest.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - 7B4E1DE922C4DBDA00854BAB /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 7B4E1DE222C4DBD900854BAB /* WavesSDK */; - targetProxy = 7B4E1DE822C4DBDA00854BAB /* PBXContainerItemProxy */; - }; - 7B4E1DFB22C4DC2800854BAB /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 7B4E1DF422C4DC2800854BAB /* WavesSDKCrypto */; - targetProxy = 7B4E1DFA22C4DC2800854BAB /* PBXContainerItemProxy */; - }; - 7B4E1E0C22C4DC3400854BAB /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 7B4E1E0522C4DC3400854BAB /* WavesSDKExtensions */; - targetProxy = 7B4E1E0B22C4DC3400854BAB /* PBXContainerItemProxy */; - }; - 7B7A4B7022D3723F00E0A8CD /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 7B72BBA922550493004A047F /* StubTest */; - targetProxy = 7B7A4B6F22D3723F00E0A8CD /* PBXContainerItemProxy */; - }; - 7B7A4B7222D3755900E0A8CD /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 7B4E1DE222C4DBD900854BAB /* WavesSDK */; - targetProxy = 7B7A4B7122D3755900E0A8CD /* PBXContainerItemProxy */; - }; - 7B7A4B7422D3755900E0A8CD /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 7B4E1DF422C4DC2800854BAB /* WavesSDKCrypto */; - targetProxy = 7B7A4B7322D3755900E0A8CD /* PBXContainerItemProxy */; - }; - 7B7A4B7622D3755900E0A8CD /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 7B4E1E0522C4DC3400854BAB /* WavesSDKExtensions */; - targetProxy = 7B7A4B7522D3755900E0A8CD /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin PBXVariantGroup section */ - 7B72BBB122550493004A047F /* Main.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 7B72BBB222550493004A047F /* Base */, - ); - name = Main.storyboard; - sourceTree = ""; - }; - 7B72BBB622550495004A047F /* LaunchScreen.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 7B72BBB722550495004A047F /* Base */, - ); - name = LaunchScreen.storyboard; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 7B4E1DEC22C4DBDA00854BAB /* Dev-Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 21786F8FC9A0EB30759912E3 /* Pods-Waves-Exchange-SDK-WavesSDK.dev-debug.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = WavesSDK/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.main; - "PRODUCT_BUNDLE_IDENTIFIER[sdk=macosx*]" = ""; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Dev-Debug"; - }; - 7B4E1DED22C4DBDA00854BAB /* Release-Prod */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 42D7DDC3AFBDDE9DEF887387 /* Pods-Waves-Exchange-SDK-WavesSDK.release-prod.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = WavesSDK/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.main; - "PRODUCT_BUNDLE_IDENTIFIER[sdk=macosx*]" = ""; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Release-Prod"; - }; - 7B4E1DFF22C4DC2800854BAB /* Dev-Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 4E84F7D094272DFDB954D1ED /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.dev-debug.xcconfig */; - buildSettings = { - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - GCC_C_LANGUAGE_STANDARD = gnu11; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers\"", - ); - INFOPLIST_FILE = WavesSDKCrypto/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MACH_O_TYPE = mh_dylib; - ONLY_ACTIVE_ARCH = YES; - OTHER_CPLUSPLUSFLAGS = "$(OTHER_CFLAGS)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.crypto; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - USER_HEADER_SEARCH_PATHS = ""; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Dev-Debug"; - }; - 7B4E1E0022C4DC2800854BAB /* Release-Prod */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = ED59D88E378730ED09B48754 /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.release-prod.xcconfig */; - buildSettings = { - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - GCC_C_LANGUAGE_STANDARD = gnu11; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers\"", - ); - INFOPLIST_FILE = WavesSDKCrypto/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MACH_O_TYPE = mh_dylib; - ONLY_ACTIVE_ARCH = YES; - OTHER_CPLUSPLUSFLAGS = "$(OTHER_CFLAGS)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.crypto; - PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - USER_HEADER_SEARCH_PATHS = ""; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Release-Prod"; - }; - 7B4E1E1022C4DC3400854BAB /* Dev-Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 400C8FCA907BB961EF91A346 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.dev-debug.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = WavesSDKExtensions/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_CFLAGS = "$(inherited)"; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.extensions; - PRODUCT_MODULE_NAME = "$(PRODUCT_NAME:c99extidentifier)"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Dev-Debug"; - }; - 7B4E1E1122C4DC3400854BAB /* Release-Prod */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 119CE632AC148FBB7B881235 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.release-prod.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = WavesSDKExtensions/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_CFLAGS = "$(inherited)"; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.extensions; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Release-Prod"; - }; - 7B72BBBA22550495004A047F /* Dev-Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - BUILD_LIBRARY_FOR_DISTRIBUTION = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - }; - name = "Dev-Debug"; - }; - 7B72BBBB22550495004A047F /* Release-Prod */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - BUILD_LIBRARY_FOR_DISTRIBUTION = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - SWIFT_VERSION = 5.0; - VALIDATE_PRODUCT = YES; - }; - name = "Release-Prod"; - }; - 7B72BBBD22550495004A047F /* Dev-Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 83C71800404F1CBBB4010A27 /* Pods-Waves-Exchange-SDK-StubTest.dev-debug.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)"; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = 96SW78M3KJ; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = StubTest/Resources/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.example; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Dev-Debug"; - }; - 7B72BBBE22550495004A047F /* Release-Prod */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = A708203E910852CDAFD7324F /* Pods-Waves-Exchange-SDK-StubTest.release-prod.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)"; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = 96SW78M3KJ; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = StubTest/Resources/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.example; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Release-Prod"; - }; - 7B9393DF22DF7CC7006634A6 /* Test-Prod */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - BUILD_LIBRARY_FOR_DISTRIBUTION = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_PREPROCESSOR_DEFINITIONS = "TEST=1"; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = TEST; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - SWIFT_VERSION = 5.0; - VALIDATE_PRODUCT = YES; - }; - name = "Test-Prod"; - }; - 7B9393E022DF7CC7006634A6 /* Test-Prod */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = F0CDA7D4E7228A436EF42B7B /* Pods-Waves-Exchange-SDK-StubTest.test-prod.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)"; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = 96SW78M3KJ; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = StubTest/Resources/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.example; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Test-Prod"; - }; - 7B9393E122DF7CC7006634A6 /* Test-Prod */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = CBDF4DE45C519904E9D9AE9D /* Pods-WavesSDKTests.test-prod.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - DEVELOPMENT_TEAM = ""; - GCC_OPTIMIZATION_LEVEL = 0; - INFOPLIST_FILE = WavesSDKTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = WV.WavesSDKTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = TEST; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/StubTest.app/StubTest"; - }; - name = "Test-Prod"; - }; - 7B9393E222DF7CC7006634A6 /* Test-Prod */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 93D148640FCEF1307E11D19A /* Pods-Waves-Exchange-SDK-WavesSDK.test-prod.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = WavesSDK/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.main; - "PRODUCT_BUNDLE_IDENTIFIER[sdk=macosx*]" = ""; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Test-Prod"; - }; - 7B9393E322DF7CC7006634A6 /* Test-Prod */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 14C7D0D8FC695A614F1600AA /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.test-prod.xcconfig */; - buildSettings = { - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - GCC_C_LANGUAGE_STANDARD = gnu11; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers\"", - ); - INFOPLIST_FILE = WavesSDKCrypto/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MACH_O_TYPE = mh_dylib; - ONLY_ACTIVE_ARCH = YES; - OTHER_CPLUSPLUSFLAGS = "$(OTHER_CFLAGS)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.crypto; - PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - USER_HEADER_SEARCH_PATHS = ""; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Test-Prod"; - }; - 7B9393E422DF7CC7006634A6 /* Test-Prod */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 36FCA4E83FFD9076A9C08FE7 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.test-prod.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = WavesSDKExtensions/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_CFLAGS = "$(inherited)"; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.extensions; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Test-Prod"; - }; - 7B9393E522DF7CD1006634A6 /* Dev-Adhoc */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - BUILD_LIBRARY_FOR_DISTRIBUTION = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - }; - name = "Dev-Adhoc"; - }; - 7B9393E622DF7CD1006634A6 /* Dev-Adhoc */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 4D9AFCBE2E229B7214B2B634 /* Pods-Waves-Exchange-SDK-StubTest.dev-adhoc.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)"; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = 96SW78M3KJ; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = StubTest/Resources/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.example; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Dev-Adhoc"; - }; - 7B9393E722DF7CD1006634A6 /* Dev-Adhoc */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = EF4D580D88C328814A241A46 /* Pods-WavesSDKTests.dev-adhoc.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_TEAM = ""; - GCC_OPTIMIZATION_LEVEL = 0; - INFOPLIST_FILE = WavesSDKTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = WV.WavesSDKTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/StubTest.app/StubTest"; - }; - name = "Dev-Adhoc"; - }; - 7B9393E822DF7CD1006634A6 /* Dev-Adhoc */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = D1A31A1CEF4CC917A52A381B /* Pods-Waves-Exchange-SDK-WavesSDK.dev-adhoc.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = WavesSDK/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.main; - "PRODUCT_BUNDLE_IDENTIFIER[sdk=macosx*]" = ""; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Dev-Adhoc"; - }; - 7B9393E922DF7CD1006634A6 /* Dev-Adhoc */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 8039432D4DA5FFEF3B2FC429 /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.dev-adhoc.xcconfig */; - buildSettings = { - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - GCC_C_LANGUAGE_STANDARD = gnu11; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers\"", - ); - INFOPLIST_FILE = WavesSDKCrypto/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MACH_O_TYPE = mh_dylib; - ONLY_ACTIVE_ARCH = YES; - OTHER_CPLUSPLUSFLAGS = "$(OTHER_CFLAGS)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.crypto; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - USER_HEADER_SEARCH_PATHS = ""; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Dev-Adhoc"; - }; - 7B9393EA22DF7CD1006634A6 /* Dev-Adhoc */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 639D0A1922E6D1A28107B0C3 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.dev-adhoc.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = WavesSDKExtensions/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_CFLAGS = "$(inherited)"; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.extensions; - PRODUCT_MODULE_NAME = "$(PRODUCT_NAME:c99extidentifier)"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Dev-Adhoc"; - }; - 7B9393EB22DF7D74006634A6 /* Release-Dev */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - BUILD_LIBRARY_FOR_DISTRIBUTION = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_BITCODE = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)"; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = ""; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - }; - name = "Release-Dev"; - }; - 7B9393EC22DF7D74006634A6 /* Release-Dev */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 8CF99F81F79EE66857AB9578 /* Pods-Waves-Exchange-SDK-StubTest.release-dev.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)"; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = 96SW78M3KJ; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = StubTest/Resources/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.example; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Release-Dev"; - }; - 7B9393ED22DF7D74006634A6 /* Release-Dev */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = E168F5E712310F8810B0DBF8 /* Pods-WavesSDKTests.release-dev.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_TEAM = ""; - GCC_OPTIMIZATION_LEVEL = 0; - INFOPLIST_FILE = WavesSDKTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = WV.WavesSDKTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/StubTest.app/StubTest"; - }; - name = "Release-Dev"; - }; - 7B9393EE22DF7D74006634A6 /* Release-Dev */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = F0C46FA173C628278F23AF16 /* Pods-Waves-Exchange-SDK-WavesSDK.release-dev.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = WavesSDK/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.main; - "PRODUCT_BUNDLE_IDENTIFIER[sdk=macosx*]" = ""; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Release-Dev"; - }; - 7B9393EF22DF7D74006634A6 /* Release-Dev */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 28D3C243802CEFE0ED716031 /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.release-dev.xcconfig */; - buildSettings = { - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - GCC_C_LANGUAGE_STANDARD = gnu11; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers\"", - ); - INFOPLIST_FILE = WavesSDKCrypto/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MACH_O_TYPE = mh_dylib; - ONLY_ACTIVE_ARCH = YES; - OTHER_CPLUSPLUSFLAGS = "$(OTHER_CFLAGS)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.crypto; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - USER_HEADER_SEARCH_PATHS = ""; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Release-Dev"; - }; - 7B9393F022DF7D74006634A6 /* Release-Dev */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = E9D96B0052641822892343E1 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.release-dev.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = WavesSDKExtensions/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_CFLAGS = "$(inherited)"; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.extensions; - PRODUCT_MODULE_NAME = "$(PRODUCT_NAME:c99extidentifier)"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Release-Dev"; - }; - 7B9393F122DF7D8A006634A6 /* Test-Dev */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - BUILD_LIBRARY_FOR_DISTRIBUTION = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "TEST=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = TEST; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - }; - name = "Test-Dev"; - }; - 7B9393F222DF7D8A006634A6 /* Test-Dev */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 4E1426FAF92B2F37F92E43F1 /* Pods-Waves-Exchange-SDK-StubTest.test-dev.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)"; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = 96SW78M3KJ; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = StubTest/Resources/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.example; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Test-Dev"; - }; - 7B9393F322DF7D8A006634A6 /* Test-Dev */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 9549BBF2CCBEFDC7B473053F /* Pods-WavesSDKTests.test-dev.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_TEAM = ""; - GCC_OPTIMIZATION_LEVEL = 0; - INFOPLIST_FILE = WavesSDKTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = WV.WavesSDKTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = TEST; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/StubTest.app/StubTest"; - }; - name = "Test-Dev"; - }; - 7B9393F422DF7D8A006634A6 /* Test-Dev */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 731BD0FC3F3C3FC1AC9B5D8C /* Pods-Waves-Exchange-SDK-WavesSDK.test-dev.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = WavesSDK/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.main; - "PRODUCT_BUNDLE_IDENTIFIER[sdk=macosx*]" = ""; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Test-Dev"; - }; - 7B9393F522DF7D8A006634A6 /* Test-Dev */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 5DE775DBF7C3635CD644B77D /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.test-dev.xcconfig */; - buildSettings = { - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - GCC_C_LANGUAGE_STANDARD = gnu11; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers\"", - ); - INFOPLIST_FILE = WavesSDKCrypto/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MACH_O_TYPE = mh_dylib; - ONLY_ACTIVE_ARCH = YES; - OTHER_CPLUSPLUSFLAGS = "$(OTHER_CFLAGS)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.crypto; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - USER_HEADER_SEARCH_PATHS = ""; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Test-Dev"; - }; - 7B9393F622DF7D8A006634A6 /* Test-Dev */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 71CEB8FB7CB35D81DC095886 /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.test-dev.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = WavesSDKExtensions/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_CFLAGS = "$(inherited)"; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.extensions; - PRODUCT_MODULE_NAME = "$(PRODUCT_NAME:c99extidentifier)"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Test-Dev"; - }; - 7B951150225E16370030390C /* Dev-Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 47D4ADFC1CA7318E60FB0AC4 /* Pods-WavesSDKTests.dev-debug.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_TEAM = ""; - GCC_OPTIMIZATION_LEVEL = 0; - INFOPLIST_FILE = WavesSDKTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = WV.WavesSDKTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/StubTest.app/StubTest"; - }; - name = "Dev-Debug"; - }; - 7B951151225E16370030390C /* Release-Prod */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 1E76639DE833759D4302531C /* Pods-WavesSDKTests.release-prod.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - DEVELOPMENT_TEAM = ""; - GCC_OPTIMIZATION_LEVEL = 0; - INFOPLIST_FILE = WavesSDKTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = WV.WavesSDKTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/StubTest.app/StubTest"; - }; - name = "Release-Prod"; - }; - 7BF3376D2436202100F88306 /* Release-Adhoc */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - BUILD_LIBRARY_FOR_DISTRIBUTION = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - SWIFT_VERSION = 5.0; - VALIDATE_PRODUCT = YES; - }; - name = "Release-Adhoc"; - }; - 7BF3376E2436202100F88306 /* Release-Adhoc */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 0508072621377B4536DE03E7 /* Pods-Waves-Exchange-SDK-StubTest.release-adhoc.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)"; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = 96SW78M3KJ; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = StubTest/Resources/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.example; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Release-Adhoc"; - }; - 7BF3376F2436202100F88306 /* Release-Adhoc */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 2947576B28F5E4E8904B5301 /* Pods-WavesSDKTests.release-adhoc.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - DEVELOPMENT_TEAM = ""; - GCC_OPTIMIZATION_LEVEL = 0; - INFOPLIST_FILE = WavesSDKTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = WV.WavesSDKTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/StubTest.app/StubTest"; - }; - name = "Release-Adhoc"; - }; - 7BF337702436202100F88306 /* Release-Adhoc */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 224CA0C24794921AB03072FE /* Pods-Waves-Exchange-SDK-WavesSDK.release-adhoc.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = WavesSDK/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.main; - "PRODUCT_BUNDLE_IDENTIFIER[sdk=macosx*]" = ""; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Release-Adhoc"; - }; - 7BF337712436202100F88306 /* Release-Adhoc */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 94DE5383B7B45D8F3E3939ED /* Pods-Waves-Exchange-SDK-WavesSDKCrypto.release-adhoc.xcconfig */; - buildSettings = { - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - GCC_C_LANGUAGE_STANDARD = gnu11; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers\"", - ); - INFOPLIST_FILE = WavesSDKCrypto/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - MACH_O_TYPE = mh_dylib; - ONLY_ACTIVE_ARCH = YES; - OTHER_CPLUSPLUSFLAGS = "$(OTHER_CFLAGS)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.crypto; - PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - USER_HEADER_SEARCH_PATHS = ""; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Release-Adhoc"; - }; - 7BF337722436202100F88306 /* Release-Adhoc */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 653FBBA552926C9DAA70984C /* Pods-Waves-Exchange-SDK-WavesSDKExtensions.release-adhoc.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_BITCODE = NO; - EXCLUDED_ARCHS = ""; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - FRAMEWORK_SEARCH_PATHS = "$(inherited)"; - HEADER_SEARCH_PATHS = "$(inherited)"; - INFOPLIST_FILE = WavesSDKExtensions/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 11; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - ONLY_ACTIVE_ARCH = YES; - OTHER_CFLAGS = "$(inherited)"; - OTHER_LDFLAGS = "$(inherited)"; - PRODUCT_BUNDLE_IDENTIFIER = com.wavesplatform.sdk.extensions; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - SKIP_INSTALL = YES; - SUPPORTS_MACCATALYST = NO; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = "Release-Adhoc"; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 7B4E1DEE22C4DBDA00854BAB /* Build configuration list for PBXNativeTarget "WavesSDK" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 7B4E1DEC22C4DBDA00854BAB /* Dev-Debug */, - 7B9393F422DF7D8A006634A6 /* Test-Dev */, - 7B9393EE22DF7D74006634A6 /* Release-Dev */, - 7B9393E822DF7CD1006634A6 /* Dev-Adhoc */, - 7B4E1DED22C4DBDA00854BAB /* Release-Prod */, - 7BF337702436202100F88306 /* Release-Adhoc */, - 7B9393E222DF7CC7006634A6 /* Test-Prod */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = "Release-Prod"; - }; - 7B4E1DFE22C4DC2800854BAB /* Build configuration list for PBXNativeTarget "WavesSDKCrypto" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 7B4E1DFF22C4DC2800854BAB /* Dev-Debug */, - 7B9393F522DF7D8A006634A6 /* Test-Dev */, - 7B9393EF22DF7D74006634A6 /* Release-Dev */, - 7B9393E922DF7CD1006634A6 /* Dev-Adhoc */, - 7B4E1E0022C4DC2800854BAB /* Release-Prod */, - 7BF337712436202100F88306 /* Release-Adhoc */, - 7B9393E322DF7CC7006634A6 /* Test-Prod */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = "Release-Prod"; - }; - 7B4E1E0F22C4DC3400854BAB /* Build configuration list for PBXNativeTarget "WavesSDKExtensions" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 7B4E1E1022C4DC3400854BAB /* Dev-Debug */, - 7B9393F622DF7D8A006634A6 /* Test-Dev */, - 7B9393F022DF7D74006634A6 /* Release-Dev */, - 7B9393EA22DF7CD1006634A6 /* Dev-Adhoc */, - 7B4E1E1122C4DC3400854BAB /* Release-Prod */, - 7BF337722436202100F88306 /* Release-Adhoc */, - 7B9393E422DF7CC7006634A6 /* Test-Prod */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = "Release-Prod"; - }; - 7B72BBA522550493004A047F /* Build configuration list for PBXProject "WavesSDK" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 7B72BBBA22550495004A047F /* Dev-Debug */, - 7B9393F122DF7D8A006634A6 /* Test-Dev */, - 7B9393EB22DF7D74006634A6 /* Release-Dev */, - 7B9393E522DF7CD1006634A6 /* Dev-Adhoc */, - 7B72BBBB22550495004A047F /* Release-Prod */, - 7BF3376D2436202100F88306 /* Release-Adhoc */, - 7B9393DF22DF7CC7006634A6 /* Test-Prod */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = "Release-Prod"; - }; - 7B72BBBC22550495004A047F /* Build configuration list for PBXNativeTarget "StubTest" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 7B72BBBD22550495004A047F /* Dev-Debug */, - 7B9393F222DF7D8A006634A6 /* Test-Dev */, - 7B9393EC22DF7D74006634A6 /* Release-Dev */, - 7B9393E622DF7CD1006634A6 /* Dev-Adhoc */, - 7B72BBBE22550495004A047F /* Release-Prod */, - 7BF3376E2436202100F88306 /* Release-Adhoc */, - 7B9393E022DF7CC7006634A6 /* Test-Prod */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = "Release-Prod"; - }; - 7B95114F225E16370030390C /* Build configuration list for PBXNativeTarget "WavesSDKTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 7B951150225E16370030390C /* Dev-Debug */, - 7B9393F322DF7D8A006634A6 /* Test-Dev */, - 7B9393ED22DF7D74006634A6 /* Release-Dev */, - 7B9393E722DF7CD1006634A6 /* Dev-Adhoc */, - 7B951151225E16370030390C /* Release-Prod */, - 7BF3376F2436202100F88306 /* Release-Adhoc */, - 7B9393E122DF7CC7006634A6 /* Test-Prod */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = "Release-Prod"; - }; -/* End XCConfigurationList section */ - }; - rootObject = 7B72BBA222550493004A047F /* Project object */; -} diff --git a/WavesSDK.xcodeproj/xcshareddata/xcschemes/WavesSDKTests.xcscheme b/WavesSDK.xcodeproj/xcshareddata/xcschemes/WavesSDKTests.xcscheme deleted file mode 100644 index 8877d23..0000000 --- a/WavesSDK.xcodeproj/xcshareddata/xcschemes/WavesSDKTests.xcscheme +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/WavesSDK/Info.plist b/WavesSDK/Info.plist deleted file mode 100644 index a763074..0000000 --- a/WavesSDK/Info.plist +++ /dev/null @@ -1,22 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - FMWK - CFBundleShortVersionString - 0.1.7 - CFBundleVersion - $(CURRENT_PROJECT_VERSION) - - diff --git a/WavesSDK/Sources/Assisstants/WavesSDK.swift b/WavesSDK/Sources/Assisstants/WavesSDK.swift deleted file mode 100644 index 4b0a626..0000000 --- a/WavesSDK/Sources/Assisstants/WavesSDK.swift +++ /dev/null @@ -1,149 +0,0 @@ -/* - * β–ˆβ–ˆβ•— β–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•— β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— - * β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•”β•β•β•β•β• - * β–ˆβ–ˆβ•‘ β–ˆβ•— β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— - * β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•”β•β•β• β•šβ•β•β•β•β–ˆβ–ˆβ•‘ - * β•šβ–ˆβ–ˆβ–ˆβ•”β–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β•šβ–ˆβ–ˆβ–ˆβ–ˆβ•”β• β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘ - * β•šβ•β•β•β•šβ•β•β• β•šβ•β• β•šβ•β• β•šβ•β•β•β• β•šβ•β•β•β•β•β•β•β•šβ•β•β•β•β•β•β• - * - * β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ•— - * β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β•šβ•β•β–ˆβ–ˆβ•”β•β•β•β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•”β•β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ•‘ - * β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•”β–ˆβ–ˆβ–ˆβ–ˆβ•”β–ˆβ–ˆβ•‘ - * β–ˆβ–ˆβ•”β•β•β•β• β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•”β•β•β• β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘ - * β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β•šβ•β• β–ˆβ–ˆβ•‘ - * β•šβ•β• β•šβ•β•β•β•β•β•β•β•šβ•β• β•šβ•β• β•šβ•β• β•šβ•β• β•šβ•β•β•β•β•β• β•šβ•β• β•šβ•β•β•šβ•β• β•šβ•β• - * - */ - -import Foundation -import Moya -import WavesSDKCrypto -import WavesSDKExtensions -import WebKit - -/** - * - * WavesSDK is library for easy and simple co-working Waves blockchain platform and app based on Rx. - * - * Library contains 3 parts: - * - * Waves Crypto – collection of functions to work with Waves basic types - * and crypto primitives used by Waves. - * - * Waves Models – data transfer objects collection of transactions and other models - * for work with Waves net services. - * The models release signification with private key - * - * Waves Services – net-services for sending transactions and getting data from blockchain - * and other Waves services - */ - -public final class WavesSDK { - public struct ServicesPlugins { - public let data: [PluginType] - public let node: [PluginType] - public let matcher: [PluginType] - - public init(data: [PluginType], node: [PluginType], matcher: [PluginType]) { - self.data = data - self.node = node - self.matcher = matcher - } - } - - public private(set) var services: WavesServicesProtocol - - private var internalEnviroment: WavesEnvironment - - public var enviroment: WavesEnvironment { - get { - objc_sync_enter(self) - defer { objc_sync_exit(self) } - return internalEnviroment - } - - set { - objc_sync_enter(self) - defer { objc_sync_exit(self) } - internalEnviroment = newValue - - if var internalServices = services as? InternalWavesServiceProtocol { - internalServices.enviroment = newValue - } - } - } - - public private(set) static var shared: WavesSDK! - - init(services: WavesServicesProtocol, enviroment: WavesEnvironment) { - self.services = services - internalEnviroment = enviroment - } - - public class func isInitialized() -> Bool { - return WavesSDK.shared != nil - } - - public class func initialization(servicesPlugins: ServicesPlugins, - enviroment: WavesEnvironment) { - var dataPlugins = servicesPlugins.data - var nodePlugins = servicesPlugins.node - var matcherPlugins = servicesPlugins.matcher - - dataPlugins.append(DebugServicePlugin()) - nodePlugins.append(DebugServicePlugin()) - matcherPlugins.append(DebugServicePlugin()) - - let services = WavesServices(enviroment: enviroment, - dataServicePlugins: dataPlugins, - nodeServicePlugins: nodePlugins, - matcherServicePlugins: matcherPlugins) - - WavesSDK.shared = WavesSDK(services: services, enviroment: enviroment) - } -} - -private final class DebugServicePlugin: PluginType { - private var userAgent: String = "" - - private var webView: WKWebView? - - static let serialQueue = DispatchQueue(label: "DebugServicePlugin") - static let serialQueueWebView = DispatchQueue(label: "DebugServicePlugin.webView") - - init() { - DispatchQueue.main.async { [weak self] in - self?.webView = WKWebView(frame: CGRect.zero) - self?.webView?.evaluateJavaScript("navigator.userAgent", completionHandler: { [weak self] result, _ in - if let userAgent = result as? String { - self?.userAgent = userAgent - } else { - self?.userAgent = "" - } - }) - } - } - - func prepare(_ request: URLRequest, target _: TargetType) -> URLRequest { - var mRq = request - - let bundle = Bundle.main.bundleIdentifier ?? "" - - let requestUserAgent = "\(userAgent) WavesSDK/\(WavesSDKVersionNumber) DeviceId/\(UIDevice.uuid) AppId/\(bundle)" - - mRq.setValue(requestUserAgent, forHTTPHeaderField: "User-Agent") - - return mRq - } - - /// Called immediately before a request is sent over the network (or stubbed). - func willSend(_: RequestType, target _: TargetType) {} - - /// Called after a response has been received, but before the MoyaProvider has invoked its completion handler. - func didReceive(_: Result, target _: TargetType) {} - - /// Called to modify a result before completion. - func process(_ result: Result, target _: TargetType) -> Result { - return result - } -} diff --git a/WavesSDK/Sources/Services/Data/Queries/ExchangeFiltersDataQuery.swift b/WavesSDK/Sources/Services/Data/Queries/ExchangeFiltersDataQuery.swift deleted file mode 100644 index e9cadbc..0000000 --- a/WavesSDK/Sources/Services/Data/Queries/ExchangeFiltersDataQuery.swift +++ /dev/null @@ -1,44 +0,0 @@ -// -// ExchangeFilters.swift -// WavesWallet-iOS -// -// Created by mefilt on 09.07.2018. -// Copyright Β© 2018 Waves Platform. All rights reserved. -// - -import Foundation - -public extension DataService.Query { - struct ExchangeFilters: Codable { - // Address of a matcher which sent the transaction - public let matcher: String? - // Address of a trader-participant in a transaction β€” an ORDER sender - public let sender: String? - // Time range filter, start. Defaults to first transaction's time_stamp in db. - public let timeStart: String? - // Time range filter, end. Defaults to now. - public let timeEnd: String? - // Asset ID of the amount asset. - public let amountAsset: String? - // Asset ID of the price asset. - public let priceAsset: String? - // Cursor in base64 encoding. Holds information about timestamp, id, sort. - public let after: String? - // Sort order. Gonna be rewritten by cursor's sort if present. - public var sort: String = "desc" - // How many transactions to await in response. - public let limit: Int - - public init(matcher: String?, sender: String?, timeStart: String?, timeEnd: String?, amountAsset: String?, priceAsset: String?, after: String?, sort: String = "desc", limit: Int) { - self.matcher = matcher - self.sender = sender - self.timeStart = timeStart - self.timeEnd = timeEnd - self.amountAsset = amountAsset - self.priceAsset = priceAsset - self.after = after - self.sort = sort - self.limit = limit - } - } -} diff --git a/WavesSDK/Sources/Services/Data/Services/Protocols/TransactionsDataServiceProtocol.swift b/WavesSDK/Sources/Services/Data/Services/Protocols/TransactionsDataServiceProtocol.swift deleted file mode 100644 index d31672b..0000000 --- a/WavesSDK/Sources/Services/Data/Services/Protocols/TransactionsDataServiceProtocol.swift +++ /dev/null @@ -1,20 +0,0 @@ -// -// TransactionsDataServiceProtocol.swift -// Alamofire -// -// Created by rprokofev on 22/05/2019. -// - -import Foundation -import RxSwift - -public protocol TransactionsDataServiceProtocol { - - /** - Get a list of exchange transactions by applying filters - */ - func transactionsExchange(query: DataService.Query.ExchangeFilters) -> Observable<[DataService.DTO.ExchangeTransaction]> - - func getMassTransferTransactions(query: DataService.Query.MassTransferDataQuery) - -> Observable> -} diff --git a/WavesSDK/Sources/Services/Data/Services/TransactionsDataService.swift b/WavesSDK/Sources/Services/Data/Services/TransactionsDataService.swift deleted file mode 100644 index 36d7a50..0000000 --- a/WavesSDK/Sources/Services/Data/Services/TransactionsDataService.swift +++ /dev/null @@ -1,81 +0,0 @@ -// -// TransactionsDataService.swift -// Alamofire -// -// Created by rprokofev on 06/05/2019. -// - -import Foundation -import RxSwift -import Moya - -final class TransactionsDataService: InternalWavesService, TransactionsDataServiceProtocol { - - private let transactionsProvider: MoyaProvider - - init(transactionsProvider: MoyaProvider, enviroment: WavesEnvironment) { - self.transactionsProvider = transactionsProvider - super.init(enviroment: enviroment) - } - - public func transactionsExchange(query: DataService.Query.ExchangeFilters) - -> Observable<[DataService.DTO.ExchangeTransaction]> { - - transactionsProvider.rx - .request(.init(kind: .getExchangeWithFilters(query), - dataUrl: enviroment.dataUrl)) - .filterSuccessfulStatusAndRedirectCodes() - .catchError { error -> Single in - Single.error(NetworkError.error(by: error)) - } - .map(DataService.Response<[DataService.Response]>.self, - atKeyPath: nil, - using: JSONDecoder.isoDecoderBySyncingTimestamp(enviroment.timestampServerDiff), - failsOnEmptyData: false) - .map { $0.data.map { $0.data } } - .asObservable() - } - - public func getMassTransferTransactions(query: DataService.Query.MassTransferDataQuery) - -> Observable> { - - let target = DataService.Target.Transactions(kind: .getMassTransferTransactions(query), dataUrl: enviroment.dataUrl) - - return transactionsProvider - .rx - .request(target) - .catchError { error -> Single in - Single.error(NetworkError.error(by: error)) - } - .map(DataService.Response<[MassTransferResponseAdapter]>.self, - atKeyPath: nil, - using: JSONDecoder.isoDecoderBySyncingTimestamp(enviroment.timestampServerDiff), - failsOnEmptyData: false) - .map { adapteeMassTransferResponse -> DataService.Response<[DataService.DTO.MassTransferTransaction]> in - // Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΠΌ Π² Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ ΡƒΠ΄ΠΎΠ±Π½ΠΎ - let data = adapteeMassTransferResponse.data.map { $0.data } - return DataService.Response<[DataService.DTO.MassTransferTransaction]>(type: adapteeMassTransferResponse.type, - data: data, - isLastPage: adapteeMassTransferResponse.isLastPage, - lastCursor: adapteeMassTransferResponse.lastCursor) - } - .catchError { error -> Single> in - Single>.error(NetworkError.error(by: error)) - } - .asObservable() - } -} - -extension TransactionsDataService { - /// Данная структура ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π½Π°ΠΌ Π·Π°Π±Ρ€Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ ΠΈ Π½Π΅ Π·Π°ΡΠΎΡ€ΡΡ‚ΡŒ внСшний Namespace Π½Π΅Π½ΡƒΠΆΠ½Ρ‹ΠΌΠΈ ΠΎΠ±Π΅Ρ€Ρ‚ΠΊΠ°ΠΌΠΈ ΠΈΠ·-Π·Π° Π½Π΅ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²Π° back-end систСмы - fileprivate struct MassTransferResponseAdapter: Decodable { - - let type: String - let data: DataService.DTO.MassTransferTransaction - - enum CodingKeys: String, CodingKey { - case type = "__type" - case data - } - } -} diff --git a/WavesSDK/Sources/Services/Data/Targets/TransactionsDataTarget.swift b/WavesSDK/Sources/Services/Data/Targets/TransactionsDataTarget.swift deleted file mode 100644 index d00add7..0000000 --- a/WavesSDK/Sources/Services/Data/Targets/TransactionsDataTarget.swift +++ /dev/null @@ -1,68 +0,0 @@ -// -// TransactionsService.swift -// WavesWallet-iOS -// -// Created by mefilt on 09.07.2018. -// Copyright Β© 2018 Waves Platform. All rights reserved. -// - -import Foundation -import Moya - -extension DataService.Target { - - struct Transactions { - enum Kind { - - /** - Response: - - API.Response<[API.Response.self - */ - case getExchange(id: String) - case getExchangeWithFilters(DataService.Query.ExchangeFilters) - - case getMassTransferTransactions(DataService.Query.MassTransferDataQuery) - } - - let kind: Kind - let dataUrl: URL - } -} - -extension DataService.Target.Transactions: DataTargetType { - - private enum Constants { - static let exchange = "transactions/exchange" - static let massTransfer = "transactions/mass-transfer" - } - - var path: String { - switch kind { - case .getExchange(let id): return Constants.exchange + "/\(id)".urlEscaped - - case .getExchangeWithFilters: return Constants.exchange - - case .getMassTransferTransactions: return Constants.massTransfer - } - } - - var method: Moya.Method { - switch kind { - case .getExchange, .getExchangeWithFilters, .getMassTransferTransactions: - return .get - } - } - - var task: Task { - switch kind { - case .getExchange: - return .requestPlain - - case .getExchangeWithFilters(let filter): - return .requestParameters(parameters: filter.dictionary, encoding: URLEncoding.default) - - case .getMassTransferTransactions(let query): - return .requestParameters(parameters: query.dictionary, encoding: URLEncoding.default) - } - } -} diff --git a/WavesSDK/Sources/Services/Node/Models/UtilsNode.swift b/WavesSDK/Sources/Services/Node/Models/UtilsNode.swift deleted file mode 100644 index 8b234d7..0000000 --- a/WavesSDK/Sources/Services/Node/Models/UtilsNode.swift +++ /dev/null @@ -1,21 +0,0 @@ -// -// UtilsNode.swift -// WavesWallet-iOS -// -// Created by Pavel Gubin on 3/12/19. -// Copyright Β© 2019 Waves Platform. All rights reserved. -// - -import Foundation - -public extension NodeService.DTO { - enum Utils {} -} - -public extension NodeService.DTO.Utils { - - struct Time: Decodable { - public let system: Int64 - public let NTP: Int64 - } -} diff --git a/WavesSDK/Sources/Services/Node/Services/Protocols/TransactionNodeServiceProtocol.swift b/WavesSDK/Sources/Services/Node/Services/Protocols/TransactionNodeServiceProtocol.swift deleted file mode 100644 index 9f5b58e..0000000 --- a/WavesSDK/Sources/Services/Node/Services/Protocols/TransactionNodeServiceProtocol.swift +++ /dev/null @@ -1,26 +0,0 @@ -// -// TransactionNodeServiceProtocol.swift -// Alamofire -// -// Created by rprokofev on 22/05/2019. -// - -import Foundation -import RxSwift - -public protocol TransactionNodeServiceProtocol { - - /** - Broadcast transaction one of type = [0; 16] - */ - - func transactions(query: NodeService.Query.Transaction) -> Observable - - /** - Get list of transactions where specified address has been involved - - Parameter: address Address - - Parameter: limit Number of transactions to be returned. Max is last 1000. - */ - - func transactions(by address: String, offset: Int, limit: Int) -> Observable -} diff --git a/WavesSDK/Sources/Services/Node/Services/Protocols/UtilsNodeServiceProtocol.swift b/WavesSDK/Sources/Services/Node/Services/Protocols/UtilsNodeServiceProtocol.swift deleted file mode 100644 index d0b876c..0000000 --- a/WavesSDK/Sources/Services/Node/Services/Protocols/UtilsNodeServiceProtocol.swift +++ /dev/null @@ -1,19 +0,0 @@ -// -// UtilsNodeServiceProtocol.swift -// Alamofire -// -// Created by rprokofev on 22/05/2019. -// - -import Foundation -import RxSwift - -public protocol UtilsNodeServiceProtocol { - - /** - Current Node time (UTC) - */ - func time() -> Observable - - func transactionSerialize(query: NodeService.Query.Transaction)-> Observable<[Int]> -} diff --git a/WavesSDK/Sources/Services/Node/Services/TransactionNodeService.swift b/WavesSDK/Sources/Services/Node/Services/TransactionNodeService.swift deleted file mode 100644 index e082897..0000000 --- a/WavesSDK/Sources/Services/Node/Services/TransactionNodeService.swift +++ /dev/null @@ -1,52 +0,0 @@ -// -// TransactionNodeService.swift -// Alamofire -// -// Created by rprokofev on 26/04/2019. -// - -import Foundation -import RxSwift -import Moya - -final class TransactionNodeService: InternalWavesService, TransactionNodeServiceProtocol { - - private let transactionsProvider: MoyaProvider - - init(transactionsProvider: MoyaProvider, enviroment: WavesEnvironment) { - self.transactionsProvider = transactionsProvider - super.init(enviroment: enviroment) - } - - public func transactions(query: NodeService.Query.Transaction) -> Observable { - - return self - .transactionsProvider - .rx - .request(.init(kind: .broadcast(query), - nodeUrl: enviroment.nodeUrl)) - .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in - return Single.error(NetworkError.error(by: error)) - }) - .map(NodeService.DTO.Transaction.self, atKeyPath: nil, using: JSONDecoder.decoderBySyncingTimestamp(enviroment.timestampServerDiff), failsOnEmptyData: false) - .asObservable() - } - - public func transactions(by address: String, offset: Int, limit: Int) -> Observable { - - return self - .transactionsProvider - .rx - .request(.init(kind: .list(address: address, - limit: limit), - nodeUrl: enviroment.nodeUrl)) - .filterSuccessfulStatusAndRedirectCodes() - .catchError({ (error) -> Single in - return Single.error(NetworkError.error(by: error)) - }) - .map(NodeService.DTO.TransactionContainers.self, atKeyPath: nil, using: JSONDecoder.decoderBySyncingTimestamp(enviroment.timestampServerDiff), failsOnEmptyData: false) - .asObservable() - } -} - diff --git a/WavesSDK/Sources/Services/Node/Targets/TransactionNodeTarget.swift b/WavesSDK/Sources/Services/Node/Targets/TransactionNodeTarget.swift deleted file mode 100644 index 28d9456..0000000 --- a/WavesSDK/Sources/Services/Node/Targets/TransactionNodeTarget.swift +++ /dev/null @@ -1,382 +0,0 @@ -// -// TransactionsService.swift -// WavesWallet-iOS -// -// Created by Prokofev Ruslan on 07/08/2018. -// Copyright Β© 2018 Waves Platform. All rights reserved. -// - -import Foundation -import WavesSDKExtensions -import Moya - -fileprivate enum Constants { - static let transactions = "transactions" - static let limit = "limit" - static let address = "address" - static let info = "info" - static let broadcast = "broadcast" - - static let version: String = "version" - static let alias: String = "alias" - static let fee: String = "fee" - static let timestamp: String = "timestamp" - static let type: String = "type" - static let senderPublicKey: String = "senderPublicKey" - static let proofs: String = "proofs" - static let chainId: String = "chainId" - static let recipient: String = "recipient" - static let amount: String = "amount" - static let quantity: String = "quantity" - static let assetId: String = "assetId" - static let leaseId: String = "leaseId" - static let data: String = "data" - static let feeAssetId: String = "feeAssetId" - static let feeAsset: String = "feeAsset" - static let attachment: String = "attachment" -} - -//TODO: - need take parameter name from Constants - -public extension NodeService.Query.Transaction { - - var params: [String: Any] { - switch self { - case .burn(let burn): - return [Constants.version: burn.version, - Constants.chainId: burn.chainId, - Constants.senderPublicKey: burn.senderPublicKey, - Constants.quantity: burn.quantity, - Constants.fee: burn.fee, - Constants.timestamp: burn.timestamp, - Constants.proofs: burn.proofs, - Constants.type: burn.type, - Constants.assetId: burn.assetId.normalizeWavesAssetId] - - case .createAlias(let alias): - return [Constants.version: alias.version, - Constants.alias: alias.name, - Constants.fee: alias.fee, - Constants.timestamp: alias.timestamp, - Constants.type: alias.type, - Constants.senderPublicKey: alias.senderPublicKey, - Constants.proofs: alias.proofs] - - case .startLease(let lease): - let chainId: UInt8 = lease.chainId - return [Constants.version: lease.version, - Constants.chainId: chainId, - Constants.senderPublicKey: lease.senderPublicKey, - Constants.recipient: lease.recipient, - Constants.amount: lease.amount, - Constants.fee: lease.fee, - Constants.timestamp: lease.timestamp, - Constants.proofs: lease.proofs, - Constants.type: lease.type] - - case .cancelLease(let lease): - let scheme: UInt8 = lease.chainId - return [Constants.version: lease.version, - Constants.chainId: scheme, - Constants.senderPublicKey: lease.senderPublicKey, - Constants.fee: lease.fee, - Constants.timestamp: lease.timestamp, - Constants.proofs: lease.proofs, - Constants.type: lease.type, - Constants.leaseId: lease.leaseId] - - case .data(let data): - - return [Constants.version: data.version, - Constants.senderPublicKey: data.senderPublicKey, - Constants.fee: data.fee, - Constants.timestamp: data.timestamp, - Constants.proofs: data.proofs, - Constants.type: data.type, - Constants.data: data.data.dataByParams] - - case .transfer(let model): - - return [Constants.type: model.type, - Constants.senderPublicKey : model.senderPublicKey, - Constants.fee: model.fee, - Constants.timestamp: model.timestamp, - Constants.proofs: model.proofs, - Constants.version: model.version, - Constants.recipient: model.recipient, - Constants.assetId: model.assetId.normalizeWavesAssetId, - Constants.feeAssetId: model.feeAssetId.normalizeWavesAssetId, - Constants.amount: model.amount, - Constants.attachment: model.attachment] - case .invokeScript(let model): - - var params = [Constants.version: model.version, - Constants.senderPublicKey: model.senderPublicKey, - Constants.fee: model.fee, - Constants.timestamp: model.timestamp, - Constants.proofs: model.proofs, - Constants.type: model.type] as [String : Any] - - params["feeAssetId"] = model.feeAssetId.normalizeWavesAssetId - params["dApp"] = model.dApp - - if let call = model.call { - params["call"] = call.params() - } - - params["payment"] = model.payment.map { $0.params() } - - return params - - case .reissue(let model): - - var params = [Constants.version: model.version, - Constants.senderPublicKey: model.senderPublicKey, - Constants.fee: model.fee, - Constants.timestamp: model.timestamp, - Constants.proofs: model.proofs, - Constants.type: model.type] as [String : Any] - - params["assetId"] = model.assetId.normalizeWavesAssetId - params["quantity"] = model.quantity - params["reissuable"] = model.isReissuable - - return params - - case .issue(let model): - - var params = [Constants.version: model.version, - Constants.senderPublicKey: model.senderPublicKey, - Constants.fee: model.fee, - Constants.timestamp: model.timestamp, - Constants.proofs: model.proofs, - Constants.type: model.type] as [String : Any] - - params["name"] = model.name - params["description"] = model.description - params["quantity"] = model.quantity - params["decimals"] = model.decimals - params["reissuable"] = model.isReissuable - params["script"] = model.script - - return params - - case .massTransfer(let model): - - var params = [Constants.type: model.type, - Constants.senderPublicKey : model.senderPublicKey, - Constants.fee: model.fee, - Constants.timestamp: model.timestamp, - Constants.proofs: model.proofs, - Constants.version: model.version] as [String : Any] - - params[Constants.attachment] = model.attachment - - params["assetId"] = model.assetId.normalizeWavesAssetId - params["transfers"] = model.transfers.map { - return ["recipient": $0.recipient, "amount": $0.amount] - } - - return params - - case .setScript(let model): - - var params = [Constants.type: model.type, - Constants.senderPublicKey : model.senderPublicKey, - Constants.fee: model.fee, - Constants.timestamp: model.timestamp, - Constants.proofs: model.proofs, - Constants.version: model.version] as [String : Any] - - params["script"] = model.script - - return params - - case .setAssetScript(let model): - - var params = [Constants.type: model.type, - Constants.senderPublicKey : model.senderPublicKey, - Constants.fee: model.fee, - Constants.timestamp: model.timestamp, - Constants.proofs: model.proofs, - Constants.version: model.version] as [String : Any] - - params["script"] = model.script - params["assetId"] = model.assetId.normalizeWavesAssetId - - return params - - case .sponsorship(let model): - - var params = [Constants.type: model.type, - Constants.senderPublicKey : model.senderPublicKey, - Constants.fee: model.fee, - Constants.timestamp: model.timestamp, - Constants.proofs: model.proofs, - Constants.version: model.version] as [String : Any] - - params["minSponsoredAssetFee"] = model.minSponsoredAssetFee - params["assetId"] = model.assetId.normalizeWavesAssetId - - return params - } - } - -} - -extension NodeService.Target { - - struct Transaction { - - public enum Kind { - - case list(address: String, limit: Int) - - case info(id: String) - - case broadcast(NodeService.Query.Transaction) - } - - var kind: Kind - var nodeUrl: URL - } -} - -extension NodeService.Target.Transaction: NodeTargetType { - var modelType: Encodable.Type { - return String.self - } - - var path: String { - switch kind { - case .list(let address, let limit): - return Constants.transactions + "/" + Constants.address + "/" + "\(address)".urlEscaped + "/" + Constants.limit + "/" + "\(limit)".urlEscaped - - case .info(let id): - return Constants.transactions + "/" + Constants.info + "/" + "\(id)".urlEscaped - - case .broadcast: - return Constants.transactions + "/" + Constants.broadcast - - } - } - - var method: Moya.Method { - switch kind { - case .list, .info: - return .get - case .broadcast: - return .post - } - } - - var task: Task { - switch kind { - case .list, .info: - return .requestPlain - - case .broadcast(let specification): - return .requestParameters(parameters: specification.params, encoding: JSONEncoding.default) - } - } -} - -fileprivate extension Array where Element == NodeService.Query.Transaction.Data.Value { - - var dataByParams: [[String: Any]] { - - var list: [[String: Any]] = .init() - - for value in self { - list.append(value.params()) - } - - return list - } -} - -fileprivate extension NodeService.Query.Transaction.Data.Value { - - func params() -> [String: Any] { - - var params: [String: Any] = .init() - - params["key"] = self.key - - guard let value = self.value else { return params } - - switch value { - case .integer(let number): - params["type"] = "integer" - params["value"] = number - - case .boolean(let flag): - params["type"] = "boolean" - params["value"] = flag - - case .string(let txt): - params["type"] = "string" - params["value"] = txt - - case .binary(let binary): - params["type"] = "binary" - params["value"] = binary - } - - return params - } -} - -fileprivate extension NodeService.Query.Transaction.InvokeScript.Call { - - func params() -> [String: Any] { - - var params: [String: Any] = .init() - - params["function"] = self.function - params["args"] = self.args.map { $0.params() } - - return params - } -} - -fileprivate extension NodeService.Query.Transaction.InvokeScript.Arg { - - func params() -> [String: Any] { - - var params: [String: Any] = .init() - - switch self.value { - case .binary(let value): - params["type"] = "binary" - params["value"] = value - - case .bool(let value): - params["type"] = "boolean" - params["value"] = value - - case .integer(let value): - params["type"] = "integer" - params["value"] = value - - case .string(let value): - params["type"] = "string" - params["value"] = value - } - - return params - } -} - -fileprivate extension NodeService.Query.Transaction.InvokeScript.Payment { - - func params() -> [String: Any] { - - var params: [String: Any] = .init() - - params["amount"] = self.amount - params["assetId"] = self.assetId.isEmpty == true ? NSNull() : self.assetId.normalizeToNullWavesAssetId - - return params - } -} diff --git a/WavesSDK/Sources/Services/Node/Targets/UtilsNodeTarget.swift b/WavesSDK/Sources/Services/Node/Targets/UtilsNodeTarget.swift deleted file mode 100644 index 11b2d18..0000000 --- a/WavesSDK/Sources/Services/Node/Targets/UtilsNodeTarget.swift +++ /dev/null @@ -1,62 +0,0 @@ -// -// UtilsNodeTarget.swift -// Alamofire -// -// Created by rprokofev on 30/04/2019. -// - -import Foundation -import WavesSDKExtensions -import Moya - -extension NodeService.Target { - - struct Utils { - enum Kind { - case time - - case transactionSerialize(NodeService.Query.Transaction) - } - - var nodeUrl: URL - let kind: Kind - } -} - -extension NodeService.Target.Utils: NodeTargetType { - - private enum Constants { - static let utils = "utils" - static let time = "time" - } - - var path: String { - switch kind { - case .time: - return Constants.utils + "/" + Constants.time - - case .transactionSerialize: - return "/utils/transactionSerialize" - } - } - - var method: Moya.Method { - switch kind { - case .time: - return .get - case .transactionSerialize: - return .post - } - } - - var task: Task { - switch kind { - case .time: - return .requestPlain - - case .transactionSerialize(let specification): - return .requestParameters(parameters: specification.params, encoding: JSONEncoding.default) - } - } -} - diff --git a/WavesSDK/Sources/Signature/TransactionSign.swift b/WavesSDK/Sources/Signature/TransactionSign.swift deleted file mode 100644 index 50527bd..0000000 --- a/WavesSDK/Sources/Signature/TransactionSign.swift +++ /dev/null @@ -1,354 +0,0 @@ -// -// TransactionSigning.swift -// WavesSDKExample -// -// Created by rprokofev on 28.06.2019. -// Copyright Β© 2019 Waves. All rights reserved. -// - -import Foundation -import WavesSDKCrypto -import WavesSDKExtensions - -public protocol TransactionSign { - mutating func sign(seed: WavesSDKCrypto.Seed) - - mutating func sign(privateKey: WavesSDKCrypto.PrivateKey) - - mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) -} - -extension TransactionSign { - public mutating func sign(seed: WavesSDKCrypto.Seed) { - sign(privateKey: nil, seed: seed) - } - - public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey) { - sign(privateKey: privateKey, seed: nil) - } -} - -// MARK: Transfer - -extension NodeService.Query.Transaction.Transfer: TransactionSign { - public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { - let signature = TransactionSignatureV2.transfer(.init(senderPublicKey: senderPublicKey, - recipient: recipient, - assetId: assetId, - amount: amount, - fee: fee, - attachment: attachment, - feeAssetID: feeAssetId, - chainId: chainId, - timestamp: timestamp)) - - if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { - proofs = [proof] - } - - if let seed = seed, let proof: String = signature.signature(seed: seed) { - proofs = [proof] - } - } -} - -// MARK: Data - -extension NodeService.Query.Transaction.Data: TransactionSign { - private static var DATA_TX_SIZE_WITHOUT_ENTRIES: Int = 52 - private static var DATA_ENTRIES_BYTE_LIMIT = 100 * 1024 - DATA_TX_SIZE_WITHOUT_ENTRIES - - public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { - let signature = TransactionSignatureV1.data(.init(fee: fee, - data: data - .map { TransactionSignatureV1.Structure.Data.Value(key: $0.key, - value: $0 - .kindForSignatureV1Value) - }, - chainId: chainId, - senderPublicKey: senderPublicKey, - timestamp: timestamp)) - - if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { - proofs = [proof] - } - - if let seed = seed, let proof: String = signature.signature(seed: seed) { - proofs = [proof] - } - } -} - -extension NodeService.Query.Transaction.Data.Value { - var kindForSignatureV1Value: TransactionSignatureV1.Structure.Data.Value.Kind? { - guard let value = self.value else { return nil } - - switch value { - case let .binary(value): - return .binary(value) - - case let .boolean(value): - return .boolean(value) - - case let .integer(value): - return .integer(value) - - case let .string(value): - return .string(value) - } - } -} - -// MARK: InvokeScript - -extension NodeService.Query.Transaction.InvokeScript: TransactionSign { - public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { - let signature = TransactionSignatureV1 - .invokeScript(TransactionSignatureV1.Structure.InvokeScript(senderPublicKey: senderPublicKey, - fee: fee, - chainId: chainId, - timestamp: timestamp, - feeAssetId: feeAssetId, - dApp: dApp, - call: call? - .callSignature, - payment: payment - .map { - TransactionSignatureV1 - .Structure.InvokeScript - .Payment(amount: $0 - .amount, - assetId: $0 - .assetId) - })) - if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { - proofs = [proof] - } - - if let seed = seed, let proof: String = signature.signature(seed: seed) { - proofs = [proof] - } - } -} - -extension NodeService.Query.Transaction.InvokeScript.Call { - var callSignature: TransactionSignatureV1.Structure.InvokeScript.Call { - return TransactionSignatureV1.Structure.InvokeScript - .Call(function: function, args: args.map { (arg) -> TransactionSignatureV1.Structure.InvokeScript.Arg in - switch arg.value { - case let .binary(value): - return TransactionSignatureV1.Structure.InvokeScript.Arg(value: .binary(value)) - - case let .bool(value): - return TransactionSignatureV1.Structure.InvokeScript.Arg(value: .bool(value)) - - case let .integer(value): - return TransactionSignatureV1.Structure.InvokeScript.Arg(value: .integer(value)) - - case let .string(value): - return TransactionSignatureV1.Structure.InvokeScript.Arg(value: .string(value)) - } - }) - } -} - -// MARK: Burn - -extension NodeService.Query.Transaction.Burn: TransactionSign { - public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { - let signature = TransactionSignatureV2 - .burn(.init(assetID: assetId, quantity: quantity, fee: fee, chainId: chainId, senderPublicKey: senderPublicKey, - timestamp: timestamp)) - - if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { - proofs = [proof] - } - - if let seed = seed, let proof: String = signature.signature(seed: seed) { - proofs = [proof] - } - } -} - -// MARK: Reissue - -extension NodeService.Query.Transaction.Reissue: TransactionSign { - public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { - let signature = TransactionSignatureV2 - .reissue(.init(assetId: assetId, fee: fee, chainId: chainId, senderPublicKey: senderPublicKey, timestamp: timestamp, - quantity: quantity, isReissuable: isReissuable)) - - if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { - proofs = [proof] - } - - if let seed = seed, let proof: String = signature.signature(seed: seed) { - proofs = [proof] - } - } -} - -// MARK: Issue - -extension NodeService.Query.Transaction.Issue: TransactionSign { - public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { - let signature = TransactionSignatureV2 - .issue(.init(script: script, fee: fee, chainId: chainId, senderPublicKey: senderPublicKey, timestamp: timestamp, - quantity: quantity, isReissuable: isReissuable, name: name, description: description, - decimals: decimals)) - - if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { - proofs = [proof] - } - - if let seed = seed, let proof: String = signature.signature(seed: seed) { - proofs = [proof] - } - } -} - -// MARK: MassTransfer - -extension NodeService.Query.Transaction.MassTransfer: TransactionSign { - public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { - let signature = TransactionSignatureV1.massTransfer(.init(fee: fee, - chainId: chainId, - senderPublicKey: senderPublicKey, - timestamp: timestamp, - assetId: assetId, - attachment: attachment, - transfers: transfers - .map { .init(recipient: $0.recipient, amount: $0.amount) })) - - if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { - proofs = [proof] - } - - if let seed = seed, let proof: String = signature.signature(seed: seed) { - proofs = [proof] - } - } -} - -// MARK: Lease - -extension NodeService.Query.Transaction.Lease: TransactionSign { - public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { - let signature = TransactionSignatureV2.startLease(.init(recipient: recipient, - amount: amount, - fee: fee, - chainId: chainId, - senderPublicKey: senderPublicKey, - timestamp: timestamp)) - - if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { - proofs = [proof] - } - - if let seed = seed, let proof: String = signature.signature(seed: seed) { - proofs = [proof] - } - } -} - -// MARK: LeaseCancel - -extension NodeService.Query.Transaction.LeaseCancel: TransactionSign { - public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { - let signature = TransactionSignatureV2.cancelLease(.init(leaseId: leaseId, - fee: fee, - chainId: chainId, - senderPublicKey: senderPublicKey, - timestamp: timestamp)) - - if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { - proofs = [proof] - } - - if let seed = seed, let proof: String = signature.signature(seed: seed) { - proofs = [proof] - } - } -} - -// MARK: Alias - -extension NodeService.Query.Transaction.Alias: TransactionSign { - public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { - let signature = TransactionSignatureV2.createAlias(.init(alias: name, - fee: fee, - chainId: chainId, - senderPublicKey: senderPublicKey, - timestamp: timestamp)) - - if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { - proofs = [proof] - } - - if let seed = seed, let proof: String = signature.signature(seed: seed) { - proofs = [proof] - } - } -} - -// MARK: SetScript - -extension NodeService.Query.Transaction.SetScript: TransactionSign { - public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { - let signature = TransactionSignatureV1.setScript(.init(fee: fee, - chainId: chainId, - senderPublicKey: senderPublicKey, - timestamp: timestamp, - script: script)) - - if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { - proofs = [proof] - } - - if let seed = seed, let proof: String = signature.signature(seed: seed) { - proofs = [proof] - } - } -} - -// MARK: SetScript - -extension NodeService.Query.Transaction.SetAssetScript: TransactionSign { - public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { - let signature = TransactionSignatureV1.setAssetScript(.init(fee: fee, - chainId: chainId, - senderPublicKey: senderPublicKey, - timestamp: timestamp, - assetId: assetId, - script: script)) - - if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { - proofs = [proof] - } - - if let seed = seed, let proof: String = signature.signature(seed: seed) { - proofs = [proof] - } - } -} - -// MARK: Sponsorship - -extension NodeService.Query.Transaction.Sponsorship: TransactionSign { - public mutating func sign(privateKey: WavesSDKCrypto.PrivateKey?, seed: WavesSDKCrypto.Seed?) { - let signature = TransactionSignatureV1.sponsorship(.init(fee: fee, - chainId: chainId, - senderPublicKey: senderPublicKey, - timestamp: timestamp, - assetId: assetId, - minSponsoredAssetFee: minSponsoredAssetFee)) - - if let privateKey = privateKey, let proof: String = signature.signature(privateKey: privateKey) { - proofs = [proof] - } - - if let seed = seed, let proof: String = signature.signature(seed: seed) { - proofs = [proof] - } - } -} diff --git a/WavesSDK/WavesSDK.h b/WavesSDK/WavesSDK.h deleted file mode 100644 index 24acb11..0000000 --- a/WavesSDK/WavesSDK.h +++ /dev/null @@ -1,19 +0,0 @@ -// -// InternalWavesSDK.h -// InternalWavesSDK -// -// Created by rprokofev on 27.06.2019. -// Copyright Β© 2019 Waves. All rights reserved. -// - -#import - -//! Project version number for InternalWavesSDK. -FOUNDATION_EXPORT double WavesSDKVersionNumber; - -//! Project version string for InternalWavesSDK. -FOUNDATION_EXPORT const unsigned char WavesSDKVersionString[]; - -// In this header, you should import all the public headers of your framework using statements like #import - - diff --git a/WavesSDKCrypto.podspec b/WavesSDKCrypto.podspec deleted file mode 100644 index d12fb79..0000000 --- a/WavesSDKCrypto.podspec +++ /dev/null @@ -1,44 +0,0 @@ -Pod::Spec.new do |spec| - - spec.name = 'WavesSDKCrypto' - spec.version = '0.1.9' - spec.ios.deployment_target = '11.0' - spec.requires_arc = true - spec.swift_version = '5.0' - - spec.license = { :type => 'MIT License', :file => 'LICENSE' } - spec.homepage = 'https://wavesplatform.com' - spec.authors = { 'Mefilt' => 'mefilt@gmail.com', } - - spec.summary = 'WavesSDK – it is mobile libraries for easy and simple co-working Waves blockchain platform and any mobile app' - - spec.source = { 'git' => 'https://github.com/wavesplatform/WavesSDK-iOS.git', :tag => 'v' + spec.version.to_s } - - - - spec.source_files = - 'WavesSDKCrypto/Sources/*.{swift}', - 'WavesSDKCrypto/Vendors/Curve25519/Sources/Curve25519/curve25519-donna.c', - 'WavesSDKCrypto/Vendors/Curve25519/Sources/Objc/*.{h,m}', - 'WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/*.{c,h}', - 'WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/additions/*.{c,h}', - 'WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_sha512/*.{c,h}', - 'WavesSDKCrypto/Vendors/Curve25519/Sources/ed25519/nacl_includes/*.{c,h}', - 'WavesSDKCrypto/Vendors/Blake2/Sources/*.{h,c}', - 'WavesSDKCrypto/Vendors/Base58Encoder/Sources/*.{h,c,swift}', - 'WavesSDKCrypto/Vendors/Keccak/Sources/*{h,c}' - - spec.public_header_files = - 'WavesSDKCrypto/Vendors/Curve25519/Sources/Objc/*.{h}', - 'WavesSDKCrypto/Vendors/Blake2/Sources/blake2.h', - 'WavesSDKCrypto/Vendors/Blake2/Sources/crypto_generichash_blake2b.h', - 'WavesSDKCrypto/Vendors/Blake2/Sources/export.h', - 'WavesSDKCrypto/Vendors/Base58Encoder/Sources/*.{h}', - 'WavesSDKCrypto/Vendors/Keccak/Sources/*{h}' - - spec.ios.framework = 'Foundation' - spec.ios.framework = 'UIKit' - spec.ios.framework = 'Security' - spec.dependency 'WavesSDKExtensions' - -end diff --git a/WavesSDKCrypto/Info.plist b/WavesSDKCrypto/Info.plist deleted file mode 100644 index a763074..0000000 --- a/WavesSDKCrypto/Info.plist +++ /dev/null @@ -1,22 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - FMWK - CFBundleShortVersionString - 0.1.7 - CFBundleVersion - $(CURRENT_PROJECT_VERSION) - - diff --git a/WavesSDKCrypto/Vendors/Base58Encoder/Sources/Base58Encoder.swift b/WavesSDKCrypto/Vendors/Base58Encoder/Sources/Base58Encoder.swift deleted file mode 100644 index fb67481..0000000 --- a/WavesSDKCrypto/Vendors/Base58Encoder/Sources/Base58Encoder.swift +++ /dev/null @@ -1,62 +0,0 @@ -// -// Base58.swift -// WavesWallet-iOS -// -// Created by Alexey Koloskov on 04/05/2017. -// Copyright Β© 2017 Waves Platform. All rights reserved. -// - -import Foundation - -public class Base58Encoder { - public class func encode(_ input: [UInt8]) -> String { - var size = Int(ceil(log(256.0) / log(58) * Double(input.count))) + 1 - var data = Data(count: size) - data.withUnsafeMutableBytes { (pointer: UnsafeMutableRawBufferPointer) -> Void in - let bind = pointer.bindMemory(to: Int8.self) - if let bytes = bind.baseAddress { - b58enc(bytes, &size, input, input.count) - } - } - - let r = data.subdata(in: 0 ..< (size - 1)) - - return String(data: r, encoding: .utf8) ?? "" - } - - public class func decode(_ str: String) -> [UInt8] { - guard validate(str) else { return [] } - - let c = Array(str.utf8).map { Int8($0) } - let csize = Int(ceil(Double(c.count) * log(58.0) / log(256.0))) - var data = Data(count: csize) - var size = csize - - data.withUnsafeMutableBytes { (pointer: UnsafeMutableRawBufferPointer) -> Void in - let bind = pointer.bindMemory(to: Int8.self) - if let bytes = bind.baseAddress { - b58tobin(bytes, &size, c, c.count) - } - } - - let beginIndex = (csize - size) - - if beginIndex < 0 || csize > data.count { - return [] - } - - let r = data.subdata(in: beginIndex ..< csize) - return Array(r) - } - - public class func decodeToStr(_ str: String) -> String { - return String(data: Data(decode(str)), encoding: .utf8) ?? "" - } - - static let Alphabet = CharacterSet(charactersIn: "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz") - static let WrongAlphabet = Alphabet.inverted - - public class func validate(_ str: String) -> Bool { - return str.rangeOfCharacter(from: WrongAlphabet) == nil - } -} diff --git a/WavesSDKCrypto/WavesSDKCrypto.h b/WavesSDKCrypto/WavesSDKCrypto.h deleted file mode 100644 index 24836d6..0000000 --- a/WavesSDKCrypto/WavesSDKCrypto.h +++ /dev/null @@ -1,37 +0,0 @@ -// -// InternalWavesSDKCrypto.h -// InternalWavesSDKCrypto -// -// Created by rprokofev on 27.06.2019. -// Copyright Β© 2019 Waves. All rights reserved. -// - -#ifdef __OBJC__ -#import -#else -#ifndef FOUNDATION_EXPORT -#if defined(__cplusplus) -#define FOUNDATION_EXPORT extern "C" -#else -#define FOUNDATION_EXPORT extern -#endif -#endif -#endif - - -#import "Curve25519.h" -#import "Ed25519.h" -#import "Randomness.h" -#import "crypto_generichash_blake2b.h" -#import "base58.h" -#import "keccak.h" - -//! Project version number for InternalWavesSDKCrypto. -FOUNDATION_EXPORT double WavesSDKCryptoVersionNumber; - -//! Project version string for InternalWavesSDKCrypto. -FOUNDATION_EXPORT const unsigned char WavesSDKCryptoVersionString[]; - -// In this header, you should import all the public headers of your framework using statements like #import - - diff --git a/WavesSDKExamples/Podfile b/WavesSDKExamples/Podfile deleted file mode 100644 index 46e6653..0000000 --- a/WavesSDKExamples/Podfile +++ /dev/null @@ -1,10 +0,0 @@ -platform :ios, '11.0' - -use_frameworks!(true) - - -target 'WavesSDKExamples' do - inherit! :search_paths - pod 'WavesSDK' -end - diff --git a/WavesSDKExamples/Podfile.lock b/WavesSDKExamples/Podfile.lock deleted file mode 100644 index f4baca9..0000000 --- a/WavesSDKExamples/Podfile.lock +++ /dev/null @@ -1,48 +0,0 @@ -PODS: - - Alamofire (4.8.2) - - Moya (12.0.1): - - Moya/Core (= 12.0.1) - - Moya/Core (12.0.1): - - Alamofire (~> 4.1) - - Result (~> 4.0) - - Moya/RxSwift (12.0.1): - - Moya/Core - - RxSwift (~> 4.0) - - Result (4.1.0) - - RxSwift (4.5.0) - - WavesSDK (0.1.7): - - Moya (~> 12.0.1) - - Moya/RxSwift (~> 12.0.1) - - RxSwift (~> 4.0) - - WavesSDKCrypto - - WavesSDKExtensions - - WavesSDKCrypto (0.1.7): - - WavesSDKExtensions - - WavesSDKExtensions (0.1.7): - - RxSwift (~> 4.0) - -DEPENDENCIES: - - WavesSDK - -SPEC REPOS: - https://github.com/cocoapods/specs.git: - - Alamofire - - Moya - - Result - - RxSwift - - WavesSDK - - WavesSDKCrypto - - WavesSDKExtensions - -SPEC CHECKSUMS: - Alamofire: ae5c501addb7afdbb13687d7f2f722c78734c2d3 - Moya: cf730b3cd9e005401ef37a85143aa141a12fd38f - Result: bd966fac789cc6c1563440b348ab2598cc24d5c7 - RxSwift: f172070dfd1a93d70a9ab97a5a01166206e1c575 - WavesSDK: 4212f8b34a3e732cac52facb216466122f94b12d - WavesSDKCrypto: 05aab03ff2c6a8b5c98d6d1b38e557f4799756e3 - WavesSDKExtensions: b0b46dd85aed81fd14e184da35582fda66da29d8 - -PODFILE CHECKSUM: 0c51b5e2a57fe87859a8f4018538d3545907b878 - -COCOAPODS: 1.7.4 diff --git a/WavesSDKExamples/WavesSDKExamples.xcodeproj/project.pbxproj b/WavesSDKExamples/WavesSDKExamples.xcodeproj/project.pbxproj index ffc8808..a93b6bc 100644 --- a/WavesSDKExamples/WavesSDKExamples.xcodeproj/project.pbxproj +++ b/WavesSDKExamples/WavesSDKExamples.xcodeproj/project.pbxproj @@ -3,11 +3,11 @@ archiveVersion = 1; classes = { }; - objectVersion = 51; + objectVersion = 52; objects = { /* Begin PBXBuildFile section */ - 58B3E01500A57D9CC55790A8 /* Pods_WavesSDKExamples.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1C1B4723B95E8C24C6D311F7 /* Pods_WavesSDKExamples.framework */; }; + 225D883429355D3D00B9B419 /* WavesSDK in Frameworks */ = {isa = PBXBuildFile; productRef = 225D883329355D3D00B9B419 /* WavesSDK */; }; 7B96E8B922E9AD53005DB5CC /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 7B96E8B022E9AD52005DB5CC /* Assets.xcassets */; }; 7B96E8BA22E9AD53005DB5CC /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 7B96E8B122E9AD52005DB5CC /* LaunchScreen.storyboard */; }; 7B96E8BC22E9AD53005DB5CC /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 7B96E8B522E9AD52005DB5CC /* Main.storyboard */; }; @@ -16,15 +16,13 @@ /* End PBXBuildFile section */ /* Begin PBXFileReference section */ - 1C1B4723B95E8C24C6D311F7 /* Pods_WavesSDKExamples.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_WavesSDKExamples.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 225D883129355A6900B9B419 /* WavesSDK-iOS */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = "WavesSDK-iOS"; path = ..; sourceTree = ""; }; 7B96E89522E9AC6B005DB5CC /* WavesSDKExamples.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = WavesSDKExamples.app; sourceTree = BUILT_PRODUCTS_DIR; }; 7B96E8B022E9AD52005DB5CC /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 7B96E8B222E9AD52005DB5CC /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 7B96E8B622E9AD52005DB5CC /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; 7B96E8B722E9AD52005DB5CC /* AssetListViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AssetListViewController.swift; sourceTree = ""; }; 7B96E8B822E9AD52005DB5CC /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - 899A79B4641D15194BF855E4 /* Pods-WavesSDKExamples.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WavesSDKExamples.release.xcconfig"; path = "Target Support Files/Pods-WavesSDKExamples/Pods-WavesSDKExamples.release.xcconfig"; sourceTree = ""; }; - DCC2BC418DD9DE1D780D68B0 /* Pods-WavesSDKExamples.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WavesSDKExamples.debug.xcconfig"; path = "Target Support Files/Pods-WavesSDKExamples/Pods-WavesSDKExamples.debug.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -32,17 +30,24 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 58B3E01500A57D9CC55790A8 /* Pods_WavesSDKExamples.framework in Frameworks */, + 225D883429355D3D00B9B419 /* WavesSDK in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 571BCAFF0FC18764A43CE32E /* Frameworks */ = { + 225D883029355A6900B9B419 /* Packages */ = { + isa = PBXGroup; + children = ( + 225D883129355A6900B9B419 /* WavesSDK-iOS */, + ); + name = Packages; + sourceTree = ""; + }; + 225D883229355D3D00B9B419 /* Frameworks */ = { isa = PBXGroup; children = ( - 1C1B4723B95E8C24C6D311F7 /* Pods_WavesSDKExamples.framework */, ); name = Frameworks; sourceTree = ""; @@ -50,10 +55,10 @@ 7B96E88C22E9AC6B005DB5CC = { isa = PBXGroup; children = ( + 225D883029355A6900B9B419 /* Packages */, 7B96E89722E9AC6B005DB5CC /* WavesSDKExamples */, 7B96E89622E9AC6B005DB5CC /* Products */, - 84643D4D2464F61ECDD56A02 /* Pods */, - 571BCAFF0FC18764A43CE32E /* Frameworks */, + 225D883229355D3D00B9B419 /* Frameworks */, ); sourceTree = ""; }; @@ -93,15 +98,6 @@ path = Sources; sourceTree = ""; }; - 84643D4D2464F61ECDD56A02 /* Pods */ = { - isa = PBXGroup; - children = ( - DCC2BC418DD9DE1D780D68B0 /* Pods-WavesSDKExamples.debug.xcconfig */, - 899A79B4641D15194BF855E4 /* Pods-WavesSDKExamples.release.xcconfig */, - ); - path = Pods; - sourceTree = ""; - }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ @@ -109,17 +105,18 @@ isa = PBXNativeTarget; buildConfigurationList = 7B96E8A722E9AC6C005DB5CC /* Build configuration list for PBXNativeTarget "WavesSDKExamples" */; buildPhases = ( - 86826A3DA5B968E2986EF57B /* [CP] Check Pods Manifest.lock */, 7B96E89122E9AC6B005DB5CC /* Sources */, 7B96E89222E9AC6B005DB5CC /* Frameworks */, 7B96E89322E9AC6B005DB5CC /* Resources */, - 744133AB4EFBE20FC9D7A007 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); dependencies = ( ); name = WavesSDKExamples; + packageProductDependencies = ( + 225D883329355D3D00B9B419 /* WavesSDK */, + ); productName = WavesSDKExamples; productReference = 7B96E89522E9AC6B005DB5CC /* WavesSDKExamples.app */; productType = "com.apple.product-type.application"; @@ -170,48 +167,6 @@ }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - 744133AB4EFBE20FC9D7A007 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-WavesSDKExamples/Pods-WavesSDKExamples-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-WavesSDKExamples/Pods-WavesSDKExamples-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-WavesSDKExamples/Pods-WavesSDKExamples-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - 86826A3DA5B968E2986EF57B /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-WavesSDKExamples-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ 7B96E89122E9AC6B005DB5CC /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -295,7 +250,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.2; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; ONLY_ACTIVE_ARCH = YES; @@ -350,7 +305,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.2; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; SDKROOT = iphoneos; @@ -362,13 +317,12 @@ }; 7B96E8A822E9AC6C005DB5CC /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = DCC2BC418DD9DE1D780D68B0 /* Pods-WavesSDKExamples.debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = 96SW78M3KJ; INFOPLIST_FILE = WavesSDKExamples/Resources/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 11; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -382,13 +336,12 @@ }; 7B96E8A922E9AC6C005DB5CC /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 899A79B4641D15194BF855E4 /* Pods-WavesSDKExamples.release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CODE_SIGN_STYLE = Automatic; DEVELOPMENT_TEAM = 96SW78M3KJ; INFOPLIST_FILE = WavesSDKExamples/Resources/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 11; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -422,6 +375,13 @@ defaultConfigurationName = Release; }; /* End XCConfigurationList section */ + +/* Begin XCSwiftPackageProductDependency section */ + 225D883329355D3D00B9B419 /* WavesSDK */ = { + isa = XCSwiftPackageProductDependency; + productName = WavesSDK; + }; +/* End XCSwiftPackageProductDependency section */ }; rootObject = 7B96E88D22E9AC6B005DB5CC /* Project object */; } diff --git a/WavesSDKExamples/WavesSDKExamples/Sources/AppDelegate.swift b/WavesSDKExamples/WavesSDKExamples/Sources/AppDelegate.swift index d06685a..b568fbd 100644 --- a/WavesSDKExamples/WavesSDKExamples/Sources/AppDelegate.swift +++ b/WavesSDKExamples/WavesSDKExamples/Sources/AppDelegate.swift @@ -8,7 +8,6 @@ import UIKit import WavesSDK -import WavesSDKExtensions @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { diff --git a/WavesSDKExamples/WavesSDKExamples/Sources/AssetListViewController.swift b/WavesSDKExamples/WavesSDKExamples/Sources/AssetListViewController.swift index c2366b4..14f177a 100644 --- a/WavesSDKExamples/WavesSDKExamples/Sources/AssetListViewController.swift +++ b/WavesSDKExamples/WavesSDKExamples/Sources/AssetListViewController.swift @@ -101,10 +101,10 @@ extension AssetListViewController: UITableViewDataSource { let balance = self.balances?.balances[indexPath.row] - cell.nameLabel.text = balance?.issueTransaction.name + cell.nameLabel.text = balance?.issueTransaction?.name let balanceValue = balance?.balance ?? 0 - let decimals = Int(balance?.issueTransaction.decimals ?? 0) + let decimals = Int(balance?.issueTransaction?.decimals ?? 0) let value = Decimal(balanceValue) / pow(10, decimals) diff --git a/WavesSDKExtensions.podspec b/WavesSDKExtensions.podspec deleted file mode 100644 index 29d0625..0000000 --- a/WavesSDKExtensions.podspec +++ /dev/null @@ -1,22 +0,0 @@ -Pod::Spec.new do |spec| - - spec.name = 'WavesSDKExtensions' - spec.version = '0.1.9' - spec.ios.deployment_target = '11.0' - spec.requires_arc = true - spec.swift_version = '5.0' - - spec.license = { :type => 'MIT License', :file => 'LICENSE' } - spec.homepage = 'https://wavesplatform.com' - spec.authors = { 'Mefilt' => 'mefilt@gmail.com', } - spec.summary = 'WavesSDK – it is mobile libraries for easy and simple co-working Waves blockchain platform and any mobile app' - - spec.source_files = 'WavesSDKExtensions/Sources/**/*.{swift}' - spec.source = { :git => 'https://github.com/wavesplatform/WavesSDK-iOS.git', :tag => 'v' + spec.version.to_s} - - spec.ios.framework = 'Foundation' - spec.ios.framework = 'UIKit' - - spec.dependency 'RxSwift', '~> 4.0' - -end diff --git a/WavesSDKExtensions/Info.plist b/WavesSDKExtensions/Info.plist deleted file mode 100644 index a763074..0000000 --- a/WavesSDKExtensions/Info.plist +++ /dev/null @@ -1,22 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - FMWK - CFBundleShortVersionString - 0.1.7 - CFBundleVersion - $(CURRENT_PROJECT_VERSION) - - diff --git a/WavesSDKExtensions/InternalWavesSDKExtensions.h b/WavesSDKExtensions/InternalWavesSDKExtensions.h deleted file mode 100644 index 58a55f5..0000000 --- a/WavesSDKExtensions/InternalWavesSDKExtensions.h +++ /dev/null @@ -1,19 +0,0 @@ -// -// InternalWavesSDKExtensions.h -// InternalWavesSDKExtensions -// -// Created by rprokofev on 27.06.2019. -// Copyright Β© 2019 Waves. All rights reserved. -// - -#import - -//! Project version number for InternalWavesSDKExtensions. -FOUNDATION_EXPORT double InternalWavesSDKExtensionsVersionNumber; - -//! Project version string for InternalWavesSDKExtensions. -FOUNDATION_EXPORT const unsigned char InternalWavesSDKExtensionsVersionString[]; - -// In this header, you should import all the public headers of your framework using statements like #import - - diff --git a/WavesSDKExtensions/Sources/Extensions/ObservableType+Weak.swift b/WavesSDKExtensions/Sources/Extensions/ObservableType+Weak.swift deleted file mode 100644 index c014e1c..0000000 --- a/WavesSDKExtensions/Sources/Extensions/ObservableType+Weak.swift +++ /dev/null @@ -1,129 +0,0 @@ -// -// ObservableType+Wea.swift -// WavesWallet-iOS -// -// Created by mefilt on 10.07.2018. -// Copyright Β© 2018 Waves Platform. All rights reserved. -// - -import Foundation -import RxSwift - -public extension ObservableType { - func `do`(weak obj: WeakObject, - onNext: ((WeakObject, Element) throws -> Swift.Void)? = nil, - onError: ((WeakObject, Error) throws -> Swift.Void)? = nil, - onCompleted: ((WeakObject) throws -> Swift.Void)? = nil, - onSubscribe: ((WeakObject) -> Void)? = nil, - onSubscribed: ((WeakObject) -> Void)? = nil, - onDispose: ((WeakObject) -> Void)? = nil) -> RxSwift.Observable { - return `do`(onNext: { [weak obj] element in - - guard let obj = obj else { return } - try onNext?(obj, element) - }, onError: { [weak obj] error in - - guard let obj = obj else { return } - try onError?(obj, error) - }, onCompleted: { [weak obj] () in - - guard let obj = obj else { return } - try onCompleted?(obj) - }, onSubscribe: { [weak obj] () in - - guard let obj = obj else { return } - onSubscribe?(obj) - }, onSubscribed: { [weak obj] () in - - guard let obj = obj else { return } - onSubscribed?(obj) - }, onDispose: { [weak obj] () in - - guard let obj = obj else { return } - onDispose?(obj) - }) - } - - func catchError(weak obj: WeakObject, handler: @escaping (WeakObject, Error) throws -> RxSwift.Observable) -> RxSwift.Observable { - return catchError { [weak obj] (error) -> Observable in - - guard let obj = obj else { return Observable.never() } - - return try handler(obj, error) - } - } - - func flatMap(weak obj: WeakObject, - selector: @escaping (_ weak: WeakObject, Element) throws -> O) -> Observable { - return flatMap { [weak obj] (element) -> Observable in - - guard let obj = obj else { return Observable.never() } - - return try selector(obj, element).asObservable() - } - } - - func flatMap(weak obj: WeakObject, - selector: @escaping (WeakObject) -> (Self.Element) -> O) -> Observable { - return flatMap { [weak obj] (element) -> Observable in - - guard let obj = obj else { return Observable.never() } - - return selector(obj)(element).asObservable() - } - } - - func subscribe(weak obj: WeakObject, - onError: ((WeakObject, Error) -> Void)? = nil) -> Disposable { - return subscribe(weak: obj, onNext: nil, onError: onError, onCompleted: nil, onDisposed: nil) - } - - func subscribe(weak obj: WeakObject, - onCompleted: ((WeakObject) -> Void)? = nil) -> Disposable { - return subscribe(weak: obj, onNext: nil, onError: nil, onCompleted: onCompleted, onDisposed: nil) - } - - func subscribe(weak obj: WeakObject, _ on: @escaping (WeakObject, RxSwift.Event) -> Void) -> Disposable { - return subscribe { [weak obj] event in - - guard let obj = obj else { return } - on(obj, event) - } - } - - func subscribe(weak obj: WeakObject, - onNext: ((WeakObject, Self.Element) -> Void)? = nil, - onError: ((WeakObject, Error) -> Void)? = nil, - onCompleted: ((WeakObject) -> Void)? = nil, - onDisposed: ((WeakObject) -> Void)? = nil) -> Disposable { - let disposable: Disposable - - if let disposed = onDisposed { - disposable = Disposables.create { [weak obj] in - guard let obj = obj else { return } - disposed(obj) - } - } else { - disposable = Disposables.create() - } - - let observer = AnyObserver { [weak obj] (event: RxSwift.Event) in - guard let obj = obj else { return } - switch event { - case .next(let value): - onNext?(obj, value) - case .error(let error): - onError?(obj, error) - disposable.dispose() - case .completed: - onCompleted?(obj) - disposable.dispose() - @unknown default: - disposable.dispose() - } - } - - return Disposables.create(asObservable().subscribe(observer), disposable) - } -} diff --git a/WavesSDKExtensions/Sources/Type/Runtime.swift b/WavesSDKExtensions/Sources/Type/Runtime.swift deleted file mode 100644 index 8b3ba35..0000000 --- a/WavesSDKExtensions/Sources/Type/Runtime.swift +++ /dev/null @@ -1,39 +0,0 @@ -// -// Runtime.swift -// WavesWallet-iOS -// -// Created by Prokofev Ruslan on 10/08/2018. -// Copyright Β© 2018 Waves Platform. All rights reserved. -// - -import Foundation - -public enum Runtime { - public static func swizzle(for forClass: AnyClass, original: Selector, swizzled: Selector) { - let originalMethod = class_getInstanceMethod(forClass, original)! - let swizzledMethod = class_getInstanceMethod(forClass, swizzled)! - method_exchangeImplementations(originalMethod, swizzledMethod) - } - - public static func swizzleClass(for forClass: AnyClass, original: Selector, swizzled: Selector) { - let originalMethod = class_getClassMethod(forClass, original)! - let swizzledMethod = class_getClassMethod(forClass, swizzled)! - method_exchangeImplementations(originalMethod, swizzledMethod) - } -} - -public struct Swizzle { - - public typealias Initializer = (() -> Void) - public let initializers: [Initializer] - - public init(initializers: [Initializer]) { - self.initializers = initializers - } - - public func start() { - initializers.forEach { call in - call() - } - } -} diff --git a/WavesSDKTests/Info.plist b/WavesSDKTests/Info.plist deleted file mode 100644 index 6c40a6c..0000000 --- a/WavesSDKTests/Info.plist +++ /dev/null @@ -1,22 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - BNDL - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - -