diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.pbxproj b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.pbxproj index b08573c8..526b9c70 100644 --- a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.pbxproj +++ b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.pbxproj @@ -15,17 +15,19 @@ 281ED7222BE0DFBB002E990C /* mpc_core_kit_ios_auth0UITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 281ED7212BE0DFBB002E990C /* mpc_core_kit_ios_auth0UITests.swift */; }; 281ED7242BE0DFBB002E990C /* mpc_core_kit_ios_auth0UITestsLaunchTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 281ED7232BE0DFBB002E990C /* mpc_core_kit_ios_auth0UITestsLaunchTests.swift */; }; 281ED7342BE0E00A002E990C /* MainViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 281ED7332BE0E00A002E990C /* MainViewModel.swift */; }; - 281ED7372BE0E106002E990C /* mpc-core-kit-swift in Frameworks */ = {isa = PBXBuildFile; productRef = 281ED7362BE0E106002E990C /* mpc-core-kit-swift */; }; - 281ED73A2BE0E227002E990C /* MPCEthereumProvider in Frameworks */ = {isa = PBXBuildFile; productRef = 281ED7392BE0E227002E990C /* MPCEthereumProvider */; }; - 281ED73D2BE0E5AF002E990C /* Auth0 in Frameworks */ = {isa = PBXBuildFile; productRef = 281ED73C2BE0E5AF002E990C /* Auth0 */; }; - 281ED7402BE0E5DD002E990C /* web3.swift in Frameworks */ = {isa = PBXBuildFile; productRef = 281ED73F2BE0E5DD002E990C /* web3.swift */; }; 281ED7422BE0E77B002E990C /* EthereumClient.swift in Sources */ = {isa = PBXBuildFile; fileRef = 281ED7412BE0E77B002E990C /* EthereumClient.swift */; }; 281ED7442BE0E795002E990C /* UserStorage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 281ED7432BE0E795002E990C /* UserStorage.swift */; }; - 281ED7482BE0EAE1002E990C /* JWTDecode in Frameworks */ = {isa = PBXBuildFile; productRef = 281ED7472BE0EAE1002E990C /* JWTDecode */; }; 281ED74A2BE0EC3B002E990C /* LoginView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 281ED7492BE0EC3B002E990C /* LoginView.swift */; }; 281ED74C2BE0EC77002E990C /* RecoveryView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 281ED74B2BE0EC77002E990C /* RecoveryView.swift */; }; 281ED74E2BE0EC8F002E990C /* HomeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 281ED74D2BE0EC8F002E990C /* HomeView.swift */; }; 282411192BE0F5590097006B /* LoadingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 282411182BE0F5590097006B /* LoadingView.swift */; }; + 2847121F2BFB83250088411D /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2847121E2BFB83250088411D /* Extensions.swift */; }; + 2859C2E62C889672005418F7 /* Auth0 in Frameworks */ = {isa = PBXBuildFile; productRef = 2859C2E52C889672005418F7 /* Auth0 */; }; + 2859C2E92C889681005418F7 /* JWTDecode in Frameworks */ = {isa = PBXBuildFile; productRef = 2859C2E82C889681005418F7 /* JWTDecode */; }; + 2859C2EC2C889692005418F7 /* web3.swift in Frameworks */ = {isa = PBXBuildFile; productRef = 2859C2EB2C889692005418F7 /* web3.swift */; }; + 2859C2EF2C8896A6005418F7 /* MpcProviderSwift in Frameworks */ = {isa = PBXBuildFile; productRef = 2859C2EE2C8896A6005418F7 /* MpcProviderSwift */; }; + 2859C2F22C8896BF005418F7 /* mpc-core-kit-swift in Frameworks */ = {isa = PBXBuildFile; productRef = 2859C2F12C8896BF005418F7 /* mpc-core-kit-swift */; }; + 2859C2F52C889732005418F7 /* BigInt in Frameworks */ = {isa = PBXBuildFile; productRef = 2859C2F42C889732005418F7 /* BigInt */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -64,6 +66,7 @@ 281ED74B2BE0EC77002E990C /* RecoveryView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RecoveryView.swift; sourceTree = ""; }; 281ED74D2BE0EC8F002E990C /* HomeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeView.swift; sourceTree = ""; }; 282411182BE0F5590097006B /* LoadingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoadingView.swift; sourceTree = ""; }; + 2847121E2BFB83250088411D /* Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Extensions.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -71,11 +74,12 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 281ED73D2BE0E5AF002E990C /* Auth0 in Frameworks */, - 281ED7372BE0E106002E990C /* mpc-core-kit-swift in Frameworks */, - 281ED7402BE0E5DD002E990C /* web3.swift in Frameworks */, - 281ED7482BE0EAE1002E990C /* JWTDecode in Frameworks */, - 281ED73A2BE0E227002E990C /* MPCEthereumProvider in Frameworks */, + 2859C2E62C889672005418F7 /* Auth0 in Frameworks */, + 2859C2E92C889681005418F7 /* JWTDecode in Frameworks */, + 2859C2EC2C889692005418F7 /* web3.swift in Frameworks */, + 2859C2F52C889732005418F7 /* BigInt in Frameworks */, + 2859C2F22C8896BF005418F7 /* mpc-core-kit-swift in Frameworks */, + 2859C2EF2C8896A6005418F7 /* MpcProviderSwift in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -168,6 +172,7 @@ children = ( 281ED7412BE0E77B002E990C /* EthereumClient.swift */, 281ED7432BE0E795002E990C /* UserStorage.swift */, + 2847121E2BFB83250088411D /* Extensions.swift */, ); path = Helpers; sourceTree = ""; @@ -201,11 +206,12 @@ ); name = "mpc-core-kit-ios-auth0"; packageProductDependencies = ( - 281ED7362BE0E106002E990C /* mpc-core-kit-swift */, - 281ED7392BE0E227002E990C /* MPCEthereumProvider */, - 281ED73C2BE0E5AF002E990C /* Auth0 */, - 281ED73F2BE0E5DD002E990C /* web3.swift */, - 281ED7472BE0EAE1002E990C /* JWTDecode */, + 2859C2E52C889672005418F7 /* Auth0 */, + 2859C2E82C889681005418F7 /* JWTDecode */, + 2859C2EB2C889692005418F7 /* web3.swift */, + 2859C2EE2C8896A6005418F7 /* MpcProviderSwift */, + 2859C2F12C8896BF005418F7 /* mpc-core-kit-swift */, + 2859C2F42C889732005418F7 /* BigInt */, ); productName = "mpc-core-kit-ios-auth0"; productReference = 281ED7032BE0DFB9002E990C /* mpc-core-kit-ios-auth0.app */; @@ -280,11 +286,12 @@ ); mainGroup = 281ED6FA2BE0DFB9002E990C; packageReferences = ( - 281ED7352BE0E106002E990C /* XCRemoteSwiftPackageReference "mpc-core-kit-swift" */, - 281ED7382BE0E227002E990C /* XCRemoteSwiftPackageReference "web3-swift-mpc-provider" */, - 281ED73B2BE0E5AF002E990C /* XCRemoteSwiftPackageReference "Auth0" */, - 281ED73E2BE0E5DD002E990C /* XCRemoteSwiftPackageReference "web3" */, - 281ED7462BE0EAE1002E990C /* XCRemoteSwiftPackageReference "JWTDecode" */, + 2859C2E42C889672005418F7 /* XCRemoteSwiftPackageReference "Auth0" */, + 2859C2E72C889681005418F7 /* XCRemoteSwiftPackageReference "JWTDecode" */, + 2859C2EA2C889692005418F7 /* XCRemoteSwiftPackageReference "web3" */, + 2859C2ED2C8896A6005418F7 /* XCRemoteSwiftPackageReference "MpcProviderSwift" */, + 2859C2F02C8896BF005418F7 /* XCRemoteSwiftPackageReference "mpc-core-kit-swift" */, + 2859C2F32C889732005418F7 /* XCRemoteSwiftPackageReference "BigInt" */, ); productRefGroup = 281ED7042BE0DFB9002E990C /* Products */; projectDirPath = ""; @@ -333,6 +340,7 @@ 281ED74C2BE0EC77002E990C /* RecoveryView.swift in Sources */, 281ED7422BE0E77B002E990C /* EthereumClient.swift in Sources */, 281ED7072BE0DFB9002E990C /* mpc_core_kit_ios_auth0App.swift in Sources */, + 2847121F2BFB83250088411D /* Extensions.swift in Sources */, 281ED74E2BE0EC8F002E990C /* HomeView.swift in Sources */, 281ED7342BE0E00A002E990C /* MainViewModel.swift in Sources */, 281ED7442BE0E795002E990C /* UserStorage.swift in Sources */, @@ -670,73 +678,86 @@ /* End XCConfigurationList section */ /* Begin XCRemoteSwiftPackageReference section */ - 281ED7352BE0E106002E990C /* XCRemoteSwiftPackageReference "mpc-core-kit-swift" */ = { + 2859C2E42C889672005418F7 /* XCRemoteSwiftPackageReference "Auth0" */ = { isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/tkey/mpc-core-kit-swift"; + repositoryURL = "https://github.com/auth0/Auth0.swift"; requirement = { - branch = "fix/get-tss-pub"; - kind = branch; + kind = upToNextMajorVersion; + minimumVersion = 2.8.0; }; }; - 281ED7382BE0E227002E990C /* XCRemoteSwiftPackageReference "web3-swift-mpc-provider" */ = { + 2859C2E72C889681005418F7 /* XCRemoteSwiftPackageReference "JWTDecode" */ = { isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/tkey/web3-swift-mpc-provider"; + repositoryURL = "https://github.com/auth0/JWTDecode.swift"; requirement = { - branch = "address-fix"; - kind = branch; + kind = upToNextMajorVersion; + minimumVersion = 3.1.0; }; }; - 281ED73B2BE0E5AF002E990C /* XCRemoteSwiftPackageReference "Auth0" */ = { + 2859C2EA2C889692005418F7 /* XCRemoteSwiftPackageReference "web3" */ = { isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/auth0/Auth0.swift"; + repositoryURL = "https://github.com/argentlabs/web3.swift"; requirement = { kind = upToNextMajorVersion; - minimumVersion = 2.7.0; + minimumVersion = 1.6.1; }; }; - 281ED73E2BE0E5DD002E990C /* XCRemoteSwiftPackageReference "web3" */ = { + 2859C2ED2C8896A6005418F7 /* XCRemoteSwiftPackageReference "MpcProviderSwift" */ = { isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/argentlabs/web3.swift"; + repositoryURL = "https://github.com/tkey/MpcProviderSwift"; requirement = { - kind = upToNextMajorVersion; - minimumVersion = 1.6.1; + branch = main; + kind = branch; }; }; - 281ED7462BE0EAE1002E990C /* XCRemoteSwiftPackageReference "JWTDecode" */ = { + 2859C2F02C8896BF005418F7 /* XCRemoteSwiftPackageReference "mpc-core-kit-swift" */ = { isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/auth0/JWTDecode.swift"; + repositoryURL = "https://github.com/tkey/mpc-core-kit-swift"; + requirement = { + branch = fix/racing; + kind = branch; + }; + }; + 2859C2F32C889732005418F7 /* XCRemoteSwiftPackageReference "BigInt" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/attaswift/BigInt"; requirement = { kind = upToNextMajorVersion; - minimumVersion = 3.1.0; + minimumVersion = 5.1.0; }; }; /* End XCRemoteSwiftPackageReference section */ /* Begin XCSwiftPackageProductDependency section */ - 281ED7362BE0E106002E990C /* mpc-core-kit-swift */ = { + 2859C2E52C889672005418F7 /* Auth0 */ = { isa = XCSwiftPackageProductDependency; - package = 281ED7352BE0E106002E990C /* XCRemoteSwiftPackageReference "mpc-core-kit-swift" */; - productName = "mpc-core-kit-swift"; + package = 2859C2E42C889672005418F7 /* XCRemoteSwiftPackageReference "Auth0" */; + productName = Auth0; }; - 281ED7392BE0E227002E990C /* MPCEthereumProvider */ = { + 2859C2E82C889681005418F7 /* JWTDecode */ = { isa = XCSwiftPackageProductDependency; - package = 281ED7382BE0E227002E990C /* XCRemoteSwiftPackageReference "web3-swift-mpc-provider" */; - productName = MPCEthereumProvider; + package = 2859C2E72C889681005418F7 /* XCRemoteSwiftPackageReference "JWTDecode" */; + productName = JWTDecode; }; - 281ED73C2BE0E5AF002E990C /* Auth0 */ = { + 2859C2EB2C889692005418F7 /* web3.swift */ = { isa = XCSwiftPackageProductDependency; - package = 281ED73B2BE0E5AF002E990C /* XCRemoteSwiftPackageReference "Auth0" */; - productName = Auth0; + package = 2859C2EA2C889692005418F7 /* XCRemoteSwiftPackageReference "web3" */; + productName = web3.swift; }; - 281ED73F2BE0E5DD002E990C /* web3.swift */ = { + 2859C2EE2C8896A6005418F7 /* MpcProviderSwift */ = { isa = XCSwiftPackageProductDependency; - package = 281ED73E2BE0E5DD002E990C /* XCRemoteSwiftPackageReference "web3" */; - productName = web3.swift; + package = 2859C2ED2C8896A6005418F7 /* XCRemoteSwiftPackageReference "MpcProviderSwift" */; + productName = MpcProviderSwift; }; - 281ED7472BE0EAE1002E990C /* JWTDecode */ = { + 2859C2F12C8896BF005418F7 /* mpc-core-kit-swift */ = { isa = XCSwiftPackageProductDependency; - package = 281ED7462BE0EAE1002E990C /* XCRemoteSwiftPackageReference "JWTDecode" */; - productName = JWTDecode; + package = 2859C2F02C8896BF005418F7 /* XCRemoteSwiftPackageReference "mpc-core-kit-swift" */; + productName = "mpc-core-kit-swift"; + }; + 2859C2F42C889732005418F7 /* BigInt */ = { + isa = XCSwiftPackageProductDependency; + package = 2859C2F32C889732005418F7 /* XCRemoteSwiftPackageReference "BigInt" */; + productName = BigInt; }; /* End XCSwiftPackageProductDependency section */ }; diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 00000000..0c67376e --- /dev/null +++ b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,5 @@ + + + + + diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved index 29061683..7bae71bb 100644 --- a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -1,4 +1,5 @@ { + "originHash" : "6687faa95cc8d358b03c398d578884604696557e11f02749fc2690467b0e2c9c", "pins" : [ { "identity" : "anycodable", @@ -14,8 +15,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/auth0/Auth0.swift", "state" : { - "revision" : "ecd6fbd0c00d2144d9275a6dbceb213afc7f2a2d", - "version" : "2.7.0" + "revision" : "024503207ea5e8b4a0edb38125723f4a1c386139", + "version" : "2.8.0" } }, { @@ -27,22 +28,13 @@ "version" : "5.3.0" } }, - { - "identity" : "cryptoswift", - "kind" : "remoteSourceControl", - "location" : "https://github.com/krzyzanowskim/CryptoSwift.git", - "state" : { - "revision" : "c9c3df6ab812de32bae61fc0cd1bf6d45170ebf0", - "version" : "1.8.2" - } - }, { "identity" : "curvelib.swift", "kind" : "remoteSourceControl", "location" : "https://github.com/tkey/curvelib.swift", "state" : { - "revision" : "7dad3bf1793de263f83406c08c18c9316abf082f", - "version" : "0.1.2" + "revision" : "9f88bd5e56d1df443a908f7a7e81ae4f4d9170ea", + "version" : "1.0.1" } }, { @@ -50,8 +42,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/torusresearch/customauth-swift-sdk", "state" : { - "revision" : "bb0c8249b6f0e2866e51e47bebdc801848fae45a", - "version" : "9.0.0" + "branch" : "fix/racing", + "revision" : "c4b63f291907bc81adb72a9d74ccb98e45d43b6e" } }, { @@ -59,8 +51,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/torusresearch/fetch-node-details-swift.git", "state" : { - "revision" : "bf2f0759da5c5c80765773b08c2756045edf608f", - "version" : "5.2.0" + "revision" : "22bfadf7491d77a0bc1953af002cadbd61383e7d", + "version" : "6.0.2" } }, { @@ -95,8 +87,17 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/tkey/mpc-core-kit-swift", "state" : { - "branch" : "fix/get-tss-pub", - "revision" : "983109f49fad21438eed5942ff2fd1976362f7f4" + "branch" : "fix/racing", + "revision" : "ac04076038264ae5905079fa232c8210a605a1a2" + } + }, + { + "identity" : "mpcproviderswift", + "kind" : "remoteSourceControl", + "location" : "https://github.com/tkey/MpcProviderSwift", + "state" : { + "branch" : "main", + "revision" : "f087b89ee543710fc23b35dc05fa233b1d16b7e1" } }, { @@ -113,8 +114,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/Web3Auth/session-manager-swift.git", "state" : { - "revision" : "c89d9205a1ce38cd6c6374b906a9039d9cc03f05", - "version" : "3.1.1" + "revision" : "20cc7bff065d7fe53164d17e7714a3f17d4cea2a", + "version" : "4.0.2" } }, { @@ -131,8 +132,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/Web3Auth/single-factor-auth-swift", "state" : { - "revision" : "8baa2b8cf55b0a38cb98c412bea1c6597adb78ba", - "version" : "4.0.0" + "branch" : "fix/racing", + "revision" : "88bd1da964cf9561997bd667ace9109ef88f25b7" } }, { @@ -248,17 +249,17 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/tkey/tkey-mpc-swift", "state" : { - "revision" : "0b1020f2fe0c3790bc50aa133bb613ff1b55172f", - "version" : "2.1.0" + "branch" : "fix/racing", + "revision" : "9f65ae2e8ba4d8d8773236b7bb3d299bb7ce4a76" } }, { "identity" : "torus-utils-swift", "kind" : "remoteSourceControl", - "location" : "https://github.com/torusresearch/torus-utils-swift.git", + "location" : "https://github.com/torusresearch/torus-utils-swift", "state" : { - "revision" : "4c17ef5166c162455d0a37115c033eeff8cb282d", - "version" : "8.0.1" + "branch" : "fix/racing", + "revision" : "141216c5aaa0dc695ce3816018495c8224bfc841" } }, { @@ -266,17 +267,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/torusresearch/tss-client-swift.git", "state" : { - "revision" : "9590a1d784177d4679eca62d4dbfe781e9870c40", - "version" : "2.0.2" - } - }, - { - "identity" : "web3-swift-mpc-provider", - "kind" : "remoteSourceControl", - "location" : "https://github.com/tkey/web3-swift-mpc-provider", - "state" : { - "branch" : "address-fix", - "revision" : "d54f177b934b3190cb310d0c23a34b6cbbbc9910" + "revision" : "40246d5e3ff1d2c97d41846576f7a81d58858981", + "version" : "4.0.0" } }, { @@ -298,5 +290,5 @@ } } ], - "version" : 2 + "version" : 3 } diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.xcworkspace/xcuserdata/ayushb.xcuserdatad/UserInterfaceState.xcuserstate b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.xcworkspace/xcuserdata/ayushb.xcuserdatad/UserInterfaceState.xcuserstate index 4c8dea80..40923cfc 100644 Binary files a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.xcworkspace/xcuserdata/ayushb.xcuserdatad/UserInterfaceState.xcuserstate and b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.xcworkspace/xcuserdata/ayushb.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.xcworkspace/xcuserdata/ayushb.xcuserdatad/WorkspaceSettings.xcsettings b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.xcworkspace/xcuserdata/ayushb.xcuserdatad/WorkspaceSettings.xcsettings new file mode 100644 index 00000000..bbfef027 --- /dev/null +++ b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/project.xcworkspace/xcuserdata/ayushb.xcuserdatad/WorkspaceSettings.xcsettings @@ -0,0 +1,14 @@ + + + + + BuildLocationStyle + UseAppPreferences + CustomBuildLocationType + RelativeToDerivedData + DerivedDataLocationStyle + Default + ShowSharedSchemesAutomaticallyEnabled + + + diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/xcshareddata/xcschemes/mpc-core-kit-ios-auth0.xcscheme b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/xcshareddata/xcschemes/mpc-core-kit-ios-auth0.xcscheme new file mode 100644 index 00000000..99e0a386 --- /dev/null +++ b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/xcshareddata/xcschemes/mpc-core-kit-ios-auth0.xcscheme @@ -0,0 +1,102 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/xcuserdata/ayushb.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/xcuserdata/ayushb.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist index 023f2cb8..a0e82f6b 100644 --- a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/xcuserdata/ayushb.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +++ b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/xcuserdata/ayushb.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -16,7 +16,7 @@ endingColumnNumber = "9223372036854775807" startingLineNumber = "345" endingLineNumber = "345" - landmarkName = "inputFactor(factorKey:)" + landmarkName = "newUser()" landmarkType = "7"> @@ -50,53 +50,6 @@ endingLineNumber = "57" landmarkName = "tssSign(message:)" landmarkType = "7"> - - - - - - - - - - - - - - @@ -319,15 +240,15 @@ endingColumnNumber = "9223372036854775807" startingLineNumber = "34" endingLineNumber = "34" - landmarkName = "initialize()" - landmarkType = "7"> + landmarkName = "MainViewModel" + landmarkType = "3"> - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/xcuserdata/ayushb.xcuserdatad/xcschemes/xcschememanagement.plist b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/xcuserdata/ayushb.xcuserdatad/xcschemes/xcschememanagement.plist index 231e1996..69cce591 100644 --- a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/xcuserdata/ayushb.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0.xcodeproj/xcuserdata/ayushb.xcuserdatad/xcschemes/xcschememanagement.plist @@ -9,84 +9,252 @@ isShown orderHint - 10 + 5 AnyCodable (Playground) 2.xcscheme isShown orderHint - 11 + 6 + + AnyCodable (Playground) 3.xcscheme + + isShown + + orderHint + 16 + + AnyCodable (Playground) 4.xcscheme + + isShown + + orderHint + 17 + + AnyCodable (Playground) 5.xcscheme + + isShown + + orderHint + 18 + + AnyCodable (Playground) 6.xcscheme + + isShown + + orderHint + 37 + + AnyCodable (Playground) 7.xcscheme + + isShown + + orderHint + 38 + + AnyCodable (Playground) 8.xcscheme + + isShown + + orderHint + 39 AnyCodable (Playground).xcscheme isShown orderHint - 9 + 4 Demo (Playground) 1.xcscheme isShown orderHint - 7 + 11 Demo (Playground) 2.xcscheme isShown orderHint - 8 + 12 + + Demo (Playground) 3.xcscheme + + isShown + + orderHint + 22 + + Demo (Playground) 4.xcscheme + + isShown + + orderHint + 23 + + Demo (Playground) 5.xcscheme + + isShown + + orderHint + 24 + + Demo (Playground) 6.xcscheme + + isShown + + orderHint + 34 + + Demo (Playground) 7.xcscheme + + isShown + + orderHint + 35 + + Demo (Playground) 8.xcscheme + + isShown + + orderHint + 36 Demo (Playground).xcscheme isShown orderHint - 6 + 10 JWTDecode (Playground) 1.xcscheme isShown orderHint - 13 + 2 JWTDecode (Playground) 2.xcscheme isShown orderHint - 14 + 3 + + JWTDecode (Playground) 3.xcscheme + + isShown + + orderHint + 19 + + JWTDecode (Playground) 4.xcscheme + + isShown + + orderHint + 20 + + JWTDecode (Playground) 5.xcscheme + + isShown + + orderHint + 21 + + JWTDecode (Playground) 6.xcscheme + + isShown + + orderHint + 40 + + JWTDecode (Playground) 7.xcscheme + + isShown + + orderHint + 41 + + JWTDecode (Playground) 8.xcscheme + + isShown + + orderHint + 42 JWTDecode (Playground).xcscheme isShown orderHint - 12 + 1 Playground (Playground) 1.xcscheme isShown orderHint - 17 + 8 Playground (Playground) 2.xcscheme isShown orderHint - 18 + 9 + + Playground (Playground) 3.xcscheme + + isShown + + orderHint + 13 + + Playground (Playground) 4.xcscheme + + isShown + + orderHint + 14 + + Playground (Playground) 5.xcscheme + + isShown + + orderHint + 15 + + Playground (Playground) 6.xcscheme + + isShown + + orderHint + 31 + + Playground (Playground) 7.xcscheme + + isShown + + orderHint + 32 + + Playground (Playground) 8.xcscheme + + isShown + + orderHint + 33 Playground (Playground).xcscheme isShown orderHint - 16 + 7 mpc-core-kit-ios-auth0.xcscheme_^#shared#^_ @@ -94,5 +262,23 @@ 0 + SuppressBuildableAutocreation + + 281ED7022BE0DFB9002E990C + + primary + + + 281ED7122BE0DFBB002E990C + + primary + + + 281ED71C2BE0DFBB002E990C + + primary + + + diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0/Helpers/EthereumClient.swift b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0/Helpers/EthereumClient.swift index 0f2b0236..0836efc8 100644 --- a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0/Helpers/EthereumClient.swift +++ b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0/Helpers/EthereumClient.swift @@ -26,7 +26,7 @@ struct EthereumClient { let nonce = try await web3Client.eth_getTransactionCount( address: address, block: .Latest ) - return nonce + 1 + return nonce } catch let error { throw error } diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0/Helpers/Extensions.swift b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0/Helpers/Extensions.swift new file mode 100644 index 00000000..2baf860b --- /dev/null +++ b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0/Helpers/Extensions.swift @@ -0,0 +1,29 @@ +// +// Extensions.swift +// mpc-core-kit-ios-auth0 +// +// Created by Ayush B on 20/05/24. +// + +import Foundation +import mpc_core_kit_swift +import tkey +import MpcProviderSwift +import web3 + +extension MpcCoreKit : EvmSigner { + public func sign(message: Data) throws -> Data { + let data = try self.tssSign(message: message) + return data + } + + public var publicKey: Data { + let fullAddress = try! KeyPoint( + address: self.getTssPubKey().hexString + ).getPublicKey(format: .FullAddress) + + return Data(hex: fullAddress).suffix(64) + } + +} + diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0/Models/MainViewModel.swift b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0/Models/MainViewModel.swift index 989748e6..5dc3acf1 100644 --- a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0/Models/MainViewModel.swift +++ b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0/Models/MainViewModel.swift @@ -7,10 +7,10 @@ import Foundation import mpc_core_kit_swift -import MPCEthereumProvider +import MpcProviderSwift import web3 import UIKit -import tkey_mpc_swift +import tkey import Auth0 import JWTDecode @@ -26,7 +26,9 @@ class MainViewModel: ObservableObject { private var mpcCoreKit: MpcCoreKit! private var ethereumClient: EthereumClient! + private var mpcEthereumProvider: MPCEthereumProvider! private var webAuth: WebAuth! + var userInfo: [String: Any]! var alertContent: String = "" var loaderContent: String = "" @@ -52,16 +54,18 @@ class MainViewModel: ObservableObject { let auth0Creds = try await webAuth.connection("apple").start() let jwt = try decode(jwt: auth0Creds.idToken) - guard let email = jwt.body["email"] as? String else { - throw "Email not found in JWT" + guard let sub = jwt.body["sub"] as? String else { + throw "SUB not found in JWT" } let result = try await mpcCoreKit.loginWithJwt( - verifier: "w3a-auth0-demo", - verifierId: email, + verifier: "core-kit-swift", + verifierId: sub, idToken: auth0Creds.idToken ) + userInfo = try mpcCoreKit.getUserInfo() + DispatchQueue.main.async { self.isRecoveryRequired = result.requiredFactors > 0 } @@ -98,7 +102,7 @@ class MainViewModel: ObservableObject { showLoader("Resetting Account") try await mpcCoreKit.resetAccount() DispatchQueue.main.async { - self.isRecoveryRequired.toggle() + self.isLoggedIn.toggle() } hideLoader() } catch let error { @@ -128,7 +132,7 @@ class MainViewModel: ObservableObject { Task { do { showLoader("Signing Message") - let signature = try mpcCoreKit.signMessage( + let signature = try mpcEthereumProvider.signMessage( message: "Welcome to Web3Auth".data(using: .ascii)! ) hideLoader() @@ -162,7 +166,7 @@ class MainViewModel: ObservableObject { let finalTransaction = EthereumTransaction( from: address, to: address, - value: TorusWeb3Utils.toWei(ether: 0.001), + value: 1000000000000000, data: transaction.data, nonce: nonce, gasPrice: gasPrice, @@ -170,7 +174,7 @@ class MainViewModel: ObservableObject { chainId: Int(self.ethereumClient.getChainId()) ) - let signedTransaction = try mpcCoreKit.sign( + let signedTransaction = try mpcEthereumProvider.sign( transaction: finalTransaction ) @@ -279,6 +283,10 @@ class MainViewModel: ObservableObject { private func login() async throws { let pubKey = try await mpcCoreKit.getTssPubKey() + let keyDetails = try await mpcCoreKit.getKeyDetails() + print(keyDetails.requiredFactors) + + mpcEthereumProvider = MPCEthereumProvider(evmSigner: mpcCoreKit) let fullAddress = try KeyPoint( address: pubKey.hexString @@ -288,8 +296,9 @@ class MainViewModel: ObservableObject { let address = KeyUtil.generateAddress( from: Data(hex: fullAddress).suffix(64) ) + print(address) - publicAddress = address.asString() + publicAddress = mpcEthereumProvider.address.toChecksumAddress() await refreshFactorPubs() toggleIsLoggedIn() } diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0/Views/HomeView.swift b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0/Views/HomeView.swift index 89545450..f1b4c796 100644 --- a/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0/Views/HomeView.swift +++ b/mpc-core-kit-ios/mpc-core-kit-ios-auth0/mpc-core-kit-ios-auth0/Views/HomeView.swift @@ -19,7 +19,7 @@ struct HomeView: View { NavigationView { LoadingView(viewModel: viewModel, content: { Form { - Section(header: Text("Public Address")) { + Section(header: Text("User Info")) { Button( action: { viewModel.showAlert(message: "Address is copied to clipboard") @@ -28,8 +28,16 @@ struct HomeView: View { Text(viewModel.publicAddress) }) + Button( + action: { + viewModel.showAlert(message: viewModel.userInfo.debugDescription) + }, label: { + Text("View User info") + }) + } + Section(header: Text("Chain Interactions")) { Button( action: { @@ -104,10 +112,10 @@ struct HomeView: View { ) { Button( action: { - viewModel.enableMFA() + viewModel.resetAccount() }, label: { - Text("Enable MFA") + Text("Reset Account") } ) Button( @@ -119,6 +127,19 @@ struct HomeView: View { } ) } + + Section( + header: Text("Account Operations") + ) { + Button( + action: { + viewModel.toggleIsLoggedIn() + }, + label: { + Text("Log out") + } + ) + } } }) }.alert(isPresented: $viewModel.showAlert, content: { diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start.xcodeproj/project.pbxproj b/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start.xcodeproj/project.pbxproj index 132f1b82..a969b713 100644 --- a/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start.xcodeproj/project.pbxproj +++ b/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start.xcodeproj/project.pbxproj @@ -7,6 +7,9 @@ objects = { /* Begin PBXBuildFile section */ + 284712222BFB94220088411D /* MpcProviderSwift in Frameworks */ = {isa = PBXBuildFile; productRef = 284712212BFB94220088411D /* MpcProviderSwift */; }; + 284712242BFB94450088411D /* Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 284712232BFB94450088411D /* Extension.swift */; }; + 284712272BFB97FE0088411D /* mpc-core-kit-swift in Frameworks */ = {isa = PBXBuildFile; productRef = 284712262BFB97FE0088411D /* mpc-core-kit-swift */; }; 284BE5FE2BC509500049C203 /* mpc_core_kit_ios_quick_startApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 284BE5FD2BC509500049C203 /* mpc_core_kit_ios_quick_startApp.swift */; }; 284BE6002BC509500049C203 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 284BE5FF2BC509500049C203 /* ContentView.swift */; }; 284BE6022BC509520049C203 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 284BE6012BC509520049C203 /* Assets.xcassets */; }; @@ -20,8 +23,6 @@ 284BE6342BC512A80049C203 /* RecoveryView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 284BE6332BC512A80049C203 /* RecoveryView.swift */; }; 284BE6362BC512B20049C203 /* HomeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 284BE6352BC512B20049C203 /* HomeView.swift */; }; 284BE63E2BC55A080049C203 /* EthereumHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 284BE63D2BC55A080049C203 /* EthereumHelper.swift */; }; - 284BE6592BC672EC0049C203 /* mpc-core-kit-swift in Frameworks */ = {isa = PBXBuildFile; productRef = 284BE6582BC672EC0049C203 /* mpc-core-kit-swift */; }; - 28C2DAFE2BC7B6DE0096710A /* MPCEthereumProvider in Frameworks */ = {isa = PBXBuildFile; productRef = 28C2DAFD2BC7B6DE0096710A /* MPCEthereumProvider */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -42,6 +43,7 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + 284712232BFB94450088411D /* Extension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Extension.swift; sourceTree = ""; }; 284BE5FA2BC509500049C203 /* mpc-core-kit-ios-quick-start.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "mpc-core-kit-ios-quick-start.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 284BE5FD2BC509500049C203 /* mpc_core_kit_ios_quick_startApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = mpc_core_kit_ios_quick_startApp.swift; sourceTree = ""; }; 284BE5FF2BC509500049C203 /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = ""; }; @@ -65,8 +67,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 284BE6592BC672EC0049C203 /* mpc-core-kit-swift in Frameworks */, - 28C2DAFE2BC7B6DE0096710A /* MPCEthereumProvider in Frameworks */, + 284712222BFB94220088411D /* MpcProviderSwift in Frameworks */, + 284712272BFB97FE0088411D /* mpc-core-kit-swift in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -169,6 +171,7 @@ children = ( 284BE6312BC50C4A0049C203 /* UserStorage.swift */, 284BE63D2BC55A080049C203 /* EthereumHelper.swift */, + 284712232BFB94450088411D /* Extension.swift */, ); path = Helpers; sourceTree = ""; @@ -190,8 +193,8 @@ ); name = "mpc-core-kit-ios-quick-start"; packageProductDependencies = ( - 284BE6582BC672EC0049C203 /* mpc-core-kit-swift */, - 28C2DAFD2BC7B6DE0096710A /* MPCEthereumProvider */, + 284712212BFB94220088411D /* MpcProviderSwift */, + 284712262BFB97FE0088411D /* mpc-core-kit-swift */, ); productName = "mpc-core-kit-ios-quick-start"; productReference = 284BE5FA2BC509500049C203 /* mpc-core-kit-ios-quick-start.app */; @@ -266,8 +269,8 @@ ); mainGroup = 284BE5F12BC509500049C203; packageReferences = ( - 284BE6572BC672EC0049C203 /* XCRemoteSwiftPackageReference "mpc-core-kit-swift" */, - 28C2DAFC2BC7B6DE0096710A /* XCRemoteSwiftPackageReference "web3-swift-mpc-provider" */, + 284712202BFB94220088411D /* XCRemoteSwiftPackageReference "MpcProviderSwift" */, + 284712252BFB97FE0088411D /* XCRemoteSwiftPackageReference "mpc-core-kit-swift" */, ); productRefGroup = 284BE5FB2BC509500049C203 /* Products */; projectDirPath = ""; @@ -311,6 +314,7 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 284712242BFB94450088411D /* Extension.swift in Sources */, 284BE62D2BC50A1F0049C203 /* LoginView.swift in Sources */, 284BE6362BC512B20049C203 /* HomeView.swift in Sources */, 284BE6002BC509500049C203 /* ContentView.swift in Sources */, @@ -650,34 +654,34 @@ /* End XCConfigurationList section */ /* Begin XCRemoteSwiftPackageReference section */ - 284BE6572BC672EC0049C203 /* XCRemoteSwiftPackageReference "mpc-core-kit-swift" */ = { + 284712202BFB94220088411D /* XCRemoteSwiftPackageReference "MpcProviderSwift" */ = { isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/tkey/mpc-core-kit-swift"; + repositoryURL = "https://github.com/tkey/MpcProviderSwift"; requirement = { - branch = fixes; + branch = main; kind = branch; }; }; - 28C2DAFC2BC7B6DE0096710A /* XCRemoteSwiftPackageReference "web3-swift-mpc-provider" */ = { + 284712252BFB97FE0088411D /* XCRemoteSwiftPackageReference "mpc-core-kit-swift" */ = { isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/tkey/web3-swift-mpc-provider"; + repositoryURL = "https://github.com/tkey/mpc-core-kit-swift"; requirement = { - branch = "feat/mpc-signing-kit"; + branch = fix/base64; kind = branch; }; }; /* End XCRemoteSwiftPackageReference section */ /* Begin XCSwiftPackageProductDependency section */ - 284BE6582BC672EC0049C203 /* mpc-core-kit-swift */ = { + 284712212BFB94220088411D /* MpcProviderSwift */ = { isa = XCSwiftPackageProductDependency; - package = 284BE6572BC672EC0049C203 /* XCRemoteSwiftPackageReference "mpc-core-kit-swift" */; - productName = "mpc-core-kit-swift"; + package = 284712202BFB94220088411D /* XCRemoteSwiftPackageReference "MpcProviderSwift" */; + productName = MpcProviderSwift; }; - 28C2DAFD2BC7B6DE0096710A /* MPCEthereumProvider */ = { + 284712262BFB97FE0088411D /* mpc-core-kit-swift */ = { isa = XCSwiftPackageProductDependency; - package = 28C2DAFC2BC7B6DE0096710A /* XCRemoteSwiftPackageReference "web3-swift-mpc-provider" */; - productName = MPCEthereumProvider; + package = 284712252BFB97FE0088411D /* XCRemoteSwiftPackageReference "mpc-core-kit-swift" */; + productName = "mpc-core-kit-swift"; }; /* End XCSwiftPackageProductDependency section */ }; diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved index e8aae20d..b70d5b70 100644 --- a/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -1,4 +1,5 @@ { + "originHash" : "85823ce731e504f26e228ca4424bd5103974c9a0e33aa647daf561a6cc5a403d", "pins" : [ { "identity" : "anycodable", @@ -18,22 +19,13 @@ "version" : "5.3.0" } }, - { - "identity" : "cryptoswift", - "kind" : "remoteSourceControl", - "location" : "https://github.com/krzyzanowskim/CryptoSwift.git", - "state" : { - "revision" : "7892a123f7e8d0fe62f9f03728b17bbd4f94df5c", - "version" : "1.8.1" - } - }, { "identity" : "curvelib.swift", "kind" : "remoteSourceControl", "location" : "https://github.com/tkey/curvelib.swift", "state" : { - "revision" : "7dad3bf1793de263f83406c08c18c9316abf082f", - "version" : "0.1.2" + "revision" : "9f88bd5e56d1df443a908f7a7e81ae4f4d9170ea", + "version" : "1.0.1" } }, { @@ -41,8 +33,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/torusresearch/customauth-swift-sdk", "state" : { - "revision" : "bb0c8249b6f0e2866e51e47bebdc801848fae45a", - "version" : "9.0.0" + "revision" : "60b48acb161fb4341c353c27bc6dd96af76887ff", + "version" : "10.0.1" } }, { @@ -50,8 +42,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/torusresearch/fetch-node-details-swift.git", "state" : { - "revision" : "d591af500f32ce3c88d04af9bb74d746585acfea", - "version" : "5.1.0" + "revision" : "22bfadf7491d77a0bc1953af002cadbd61383e7d", + "version" : "6.0.2" } }, { @@ -86,8 +78,17 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/tkey/mpc-core-kit-swift", "state" : { - "branch" : "fixes", - "revision" : "d13acaaf1761e0f8f89a7e03d01e9f06ed18bd35" + "branch" : "fix/base64", + "revision" : "f9589805cc30adaf3af92015e60ea51ba0279aca" + } + }, + { + "identity" : "mpcproviderswift", + "kind" : "remoteSourceControl", + "location" : "https://github.com/tkey/MpcProviderSwift", + "state" : { + "branch" : "main", + "revision" : "f087b89ee543710fc23b35dc05fa233b1d16b7e1" } }, { @@ -95,8 +96,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/GigaBitcoin/secp256k1.swift.git", "state" : { - "revision" : "347b84ed2aad2305a7233f2a48d76f41e52062a1", - "version" : "0.16.0" + "revision" : "9683e8e311c76d8114cd308b697dad2f9fc58fed", + "version" : "0.17.0" } }, { @@ -104,8 +105,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/Web3Auth/session-manager-swift.git", "state" : { - "revision" : "c89d9205a1ce38cd6c6374b906a9039d9cc03f05", - "version" : "3.1.1" + "revision" : "20cc7bff065d7fe53164d17e7714a3f17d4cea2a", + "version" : "4.0.2" } }, { @@ -113,8 +114,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/Web3Auth/single-factor-auth-swift", "state" : { - "revision" : "8baa2b8cf55b0a38cb98c412bea1c6597adb78ba", - "version" : "4.0.0" + "revision" : "4caaaa858950b25ea420dbba79de6b4c58801db4", + "version" : "6.0.0" } }, { @@ -158,8 +159,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/apple/swift-http-types", "state" : { - "revision" : "12358d55a3824bd5fed310b999ea8cf83a9a1a65", - "version" : "1.0.3" + "revision" : "9bee2fdb79cc740081abd8ebd80738063d632286", + "version" : "1.1.0" } }, { @@ -176,8 +177,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/apple/swift-nio.git", "state" : { - "revision" : "fc63f0cf4e55a4597407a9fc95b16a2bc44b4982", - "version" : "2.64.0" + "revision" : "359c461e5561d22c6334828806cc25d759ca7aa6", + "version" : "2.65.0" } }, { @@ -194,8 +195,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/apple/swift-nio-http2.git", "state" : { - "revision" : "0904bf0feb5122b7e5c3f15db7df0eabe623dd87", - "version" : "1.30.0" + "revision" : "c6afe04165c865faaa687b42c32ed76dfcc91076", + "version" : "1.31.0" } }, { @@ -212,8 +213,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/apple/swift-nio-transport-services.git", "state" : { - "revision" : "6cbe0ed2b394f21ab0d46b9f0c50c6be964968ce", - "version" : "1.20.1" + "revision" : "38ac8221dd20674682148d6451367f89c2652980", + "version" : "1.21.0" } }, { @@ -221,8 +222,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/apple/swift-system.git", "state" : { - "revision" : "025bcb1165deab2e20d4eaba79967ce73013f496", - "version" : "1.2.1" + "revision" : "f9266c85189c2751589a50ea5aec72799797e471", + "version" : "1.3.0" } }, { @@ -230,8 +231,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/tkey/tkey-mpc-swift", "state" : { - "revision" : "0b1020f2fe0c3790bc50aa133bb613ff1b55172f", - "version" : "2.1.0" + "branch" : "fix/base64-Sep", + "revision" : "2ee8d557a19b8bc3771f248c431172be2985ef98" } }, { @@ -239,8 +240,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/torusresearch/torus-utils-swift.git", "state" : { - "revision" : "4c17ef5166c162455d0a37115c033eeff8cb282d", - "version" : "8.0.1" + "revision" : "ff85c3e96bfa29013309b487875c4d9383e4ac80", + "version" : "8.1.1" } }, { @@ -248,17 +249,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/torusresearch/tss-client-swift.git", "state" : { - "revision" : "9590a1d784177d4679eca62d4dbfe781e9870c40", - "version" : "2.0.2" - } - }, - { - "identity" : "web3-swift-mpc-provider", - "kind" : "remoteSourceControl", - "location" : "https://github.com/tkey/web3-swift-mpc-provider", - "state" : { - "branch" : "feat/mpc-signing-kit", - "revision" : "04367e95fe81f490607cf5613872e08c1316a0e5" + "revision" : "40246d5e3ff1d2c97d41846576f7a81d58858981", + "version" : "4.0.0" } }, { @@ -280,5 +272,5 @@ } } ], - "version" : 2 + "version" : 3 } diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start.xcodeproj/project.xcworkspace/xcuserdata/ayushb.xcuserdatad/UserInterfaceState.xcuserstate b/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start.xcodeproj/project.xcworkspace/xcuserdata/ayushb.xcuserdatad/UserInterfaceState.xcuserstate index 7d9ef4ca..fd267489 100644 Binary files a/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start.xcodeproj/project.xcworkspace/xcuserdata/ayushb.xcuserdatad/UserInterfaceState.xcuserstate and b/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start.xcodeproj/project.xcworkspace/xcuserdata/ayushb.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start.xcodeproj/xcuserdata/ayushb.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start.xcodeproj/xcuserdata/ayushb.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist index f030eaee..042804db 100644 --- a/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start.xcodeproj/xcuserdata/ayushb.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +++ b/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start.xcodeproj/xcuserdata/ayushb.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -31,8 +31,7 @@ startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" startingLineNumber = "73" - endingLineNumber = "73" - offsetFromSymbolStart = "364"> + endingLineNumber = "73"> + endingLineNumber = "73"> + endingLineNumber = "73"> + endingLineNumber = "73"> + endingLineNumber = "73"> @@ -124,8 +119,7 @@ startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" startingLineNumber = "57" - endingLineNumber = "57" - offsetFromSymbolStart = "236"> + endingLineNumber = "57"> + endingLineNumber = "57"> + endingLineNumber = "57"> @@ -187,8 +179,7 @@ startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" startingLineNumber = "53" - endingLineNumber = "53" - offsetFromSymbolStart = "148"> + endingLineNumber = "53"> + endingLineNumber = "53"> diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start/Helpers/EthereumHelper.swift b/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start/Helpers/EthereumHelper.swift index 639b68a1..70ee0b83 100644 --- a/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start/Helpers/EthereumHelper.swift +++ b/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start/Helpers/EthereumHelper.swift @@ -26,7 +26,7 @@ struct EthereumClient { let nonce = try await web3Client.eth_getTransactionCount( address: address, block: .Latest ) - return nonce + 1 + return nonce } catch let error { throw error } diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start/Helpers/Extension.swift b/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start/Helpers/Extension.swift new file mode 100644 index 00000000..2f100462 --- /dev/null +++ b/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start/Helpers/Extension.swift @@ -0,0 +1,28 @@ +// +// Extension.swift +// mpc-core-kit-ios-quick-start +// +// Created by Ayush B on 20/05/24. +// + +import Foundation +import mpc_core_kit_swift +import tkey +import MpcProviderSwift +import web3 + +extension MpcCoreKit : EvmSigner { + public func sign(message: Data) throws -> Data { + let data = try self.tssSign(message: message) + return data + } + + public var publicKey: Data { + let fullAddress = try! KeyPoint( + address: self.getTssPubKey().hexString + ).getPublicKey(format: .FullAddress) + + return Data(hex: fullAddress).suffix(64) + } + +} diff --git a/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start/Models/MainViewModel.swift b/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start/Models/MainViewModel.swift index 64fd9315..291c5fee 100644 --- a/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start/Models/MainViewModel.swift +++ b/mpc-core-kit-ios/mpc-core-kit-ios-quick-start/mpc-core-kit-ios-quick-start/Models/MainViewModel.swift @@ -7,10 +7,9 @@ import Foundation import mpc_core_kit_swift -import MPCEthereumProvider +import MpcProviderSwift import web3 import UIKit -import tkey_mpc_swift class MainViewModel: ObservableObject { @Published var isLoggedIn: Bool = false @@ -22,6 +21,7 @@ class MainViewModel: ObservableObject { private var mpcCoreKit: MpcCoreKit! private var ethereumClient: EthereumClient! + private var mpcEthereumProvider: MPCEthereumProvider! func initialize() { mpcCoreKit = MpcCoreKit( @@ -70,9 +70,6 @@ class MainViewModel: ObservableObject { try await login() } catch let error { - DispatchQueue.main.async { - self.isRecoveryRequired.toggle() - } print(error.localizedDescription) } } @@ -108,7 +105,7 @@ class MainViewModel: ObservableObject { Task { do { print(mpcCoreKit.debugDescription) - let signature = try mpcCoreKit.signMessage(message: "YOUR_MESSAGE".data(using: .ascii)!) + let signature = try mpcEthereumProvider.signMessage(message: "YOUR_MESSAGE".data(using: .ascii)!) onSigned(signature, nil) } catch let error { onSigned(nil, error.localizedDescription) @@ -137,7 +134,7 @@ class MainViewModel: ObservableObject { let finalTransaction = EthereumTransaction( from: address, to: address, - value: TorusWeb3Utils.toWei(ether: 0.001), + value: 1000000000000000, data: transaction.data, nonce: nonce, gasPrice: gasPrice, @@ -145,7 +142,7 @@ class MainViewModel: ObservableObject { chainId: Int(self.ethereumClient.getChainId()) ) - let signedTransaction = try mpcCoreKit.sign( + let signedTransaction = try mpcEthereumProvider.sign( transaction: finalTransaction ) @@ -197,6 +194,8 @@ class MainViewModel: ObservableObject { return } + print(factorKey.count) + try await mpcCoreKit.inputFactor( factorKey: factorKey ) @@ -224,18 +223,8 @@ class MainViewModel: ObservableObject { } private func login() async throws { - let pubKey = try await mpcCoreKit.getTssPubKey() - - let fullAddress = try KeyPoint( - address: pubKey.hexString - ).getPublicKey(format: .FullAddress) - - - let address = KeyUtil.generateAddress( - from: Data(hex: fullAddress).suffix(64) - ) - - publicAddress = address.asString() + mpcEthereumProvider = MPCEthereumProvider(evmSigner: mpcCoreKit) + publicAddress = mpcEthereumProvider.address.toChecksumAddress() try await refreshFactorPubs() toggleIsLoggedIn() }