diff --git a/RadixWallet.xcodeproj/project.pbxproj b/RadixWallet.xcodeproj/project.pbxproj index 6dc94489dd..d652a7775f 100644 --- a/RadixWallet.xcodeproj/project.pbxproj +++ b/RadixWallet.xcodeproj/project.pbxproj @@ -363,7 +363,6 @@ 48CFC4172ADC10DA00E77A5C /* PasteboardClient+Live.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48CFBF262ADC10D900E77A5C /* PasteboardClient+Live.swift */; }; 48CFC4182ADC10DA00E77A5C /* IdentifiedArrayOf+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48CFBF282ADC10D900E77A5C /* IdentifiedArrayOf+Extensions.swift */; }; 48CFC4192ADC10DA00E77A5C /* Tuple+Extra.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48CFBF292ADC10D900E77A5C /* Tuple+Extra.swift */; }; - 48CFC41A2ADC10DA00E77A5C /* BigUInt+Extra.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48CFBF2A2ADC10D900E77A5C /* BigUInt+Extra.swift */; }; 48CFC41B2ADC10DA00E77A5C /* OrderedSet+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48CFBF2B2ADC10D900E77A5C /* OrderedSet+Extensions.swift */; }; 48CFC41C2ADC10DA00E77A5C /* Data+Hex.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48CFBF2C2ADC10D900E77A5C /* Data+Hex.swift */; }; 48CFC41D2ADC10DA00E77A5C /* Date+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48CFBF2D2ADC10D900E77A5C /* Date+Extension.swift */; }; @@ -675,7 +674,6 @@ 48FFFAA82ADC1FBE00B2B213 /* Atomics in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFAA72ADC1FBE00B2B213 /* Atomics */; }; 48FFFAAB2ADC1FE900B2B213 /* DependenciesAdditions in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFAAA2ADC1FE900B2B213 /* DependenciesAdditions */; }; 48FFFAB12ADC203700B2B213 /* WebRTC in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFAB02ADC203700B2B213 /* WebRTC */; }; - 48FFFAB72ADC207B00B2B213 /* NavigationTransitions in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFAB62ADC207B00B2B213 /* NavigationTransitions */; }; 48FFFABA2ADC209100B2B213 /* Nuke in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFAB92ADC209100B2B213 /* Nuke */; }; 48FFFABC2ADC209100B2B213 /* NukeExtensions in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFABB2ADC209100B2B213 /* NukeExtensions */; }; 48FFFABE2ADC209100B2B213 /* NukeUI in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFABD2ADC209100B2B213 /* NukeUI */; }; @@ -689,7 +687,6 @@ 48FFFADE2ADC21F500B2B213 /* FileLogging in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFADD2ADC21F500B2B213 /* FileLogging */; }; 48FFFAE12ADC220F00B2B213 /* Tagged in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFAE02ADC220F00B2B213 /* Tagged */; }; 48FFFAE42ADC222100B2B213 /* Validated in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFAE32ADC222100B2B213 /* Validated */; }; - 48FFFAE72ADC223300B2B213 /* Overture in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFAE62ADC223300B2B213 /* Overture */; }; 48FFFAED2ADC226B00B2B213 /* CodeScanner in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFAEC2ADC226B00B2B213 /* CodeScanner */; }; 48FFFAF02ADC229900B2B213 /* AnyCodable in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFAEF2ADC229900B2B213 /* AnyCodable */; }; 48FFFAF22ADC23AC00B2B213 /* Exports.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48FFFAF12ADC23AC00B2B213 /* Exports.swift */; }; @@ -698,12 +695,7 @@ 48FFFAF92ADC241A00B2B213 /* DequeModule in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFAF82ADC241A00B2B213 /* DequeModule */; }; 48FFFAFB2ADC241A00B2B213 /* HashTreeCollections in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFAFA2ADC241A00B2B213 /* HashTreeCollections */; }; 48FFFAFD2ADC241A00B2B213 /* HeapModule in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFAFC2ADC241A00B2B213 /* HeapModule */; }; - 48FFFB002ADC25A200B2B213 /* BigInt in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFAFF2ADC25A200B2B213 /* BigInt */; }; - 48FFFB032ADC6F8100B2B213 /* Builders in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFB022ADC6F8100B2B213 /* Builders */; }; - 48FFFB062ADC6FD300B2B213 /* SwiftUINavigation in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFB052ADC6FD300B2B213 /* SwiftUINavigation */; }; - 48FFFB082ADC6FD300B2B213 /* SwiftUINavigationCore in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFB072ADC6FD300B2B213 /* SwiftUINavigationCore */; }; 48FFFB0A2ADC721800B2B213 /* Atomics in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFB092ADC721800B2B213 /* Atomics */; }; - 48FFFB0D2ADC744700B2B213 /* TextBuilder in Frameworks */ = {isa = PBXBuildFile; productRef = 48FFFB0C2ADC744700B2B213 /* TextBuilder */; }; 5B03E3CF2CC1223000E10A64 /* DisplayMode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B03E3CE2CC1222D00E10A64 /* DisplayMode.swift */; }; 5B03E3D12CC127B100E10A64 /* RawManifestView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B03E3D02CC127B100E10A64 /* RawManifestView.swift */; }; 5B03E3D32CC141D100E10A64 /* InteractionReview+Extra.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B03E3D22CC141C200E10A64 /* InteractionReview+Extra.swift */; }; @@ -1227,7 +1219,6 @@ E66EEB9C2B06694E007624BC /* RecoverWalletWithoutProfileStart.swift in Sources */ = {isa = PBXBuildFile; fileRef = E66EEB9A2B06694E007624BC /* RecoverWalletWithoutProfileStart.swift */; }; E67F14452AE029BA00738BE1 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = E67F14442AE029BA00738BE1 /* Assets.xcassets */; }; E68878592BDBFD42003F3393 /* Stage2MigrateToSargon+LedgerHardwareWalletFactorSource+New.swift in Sources */ = {isa = PBXBuildFile; fileRef = E68878582BDBFD42003F3393 /* Stage2MigrateToSargon+LedgerHardwareWalletFactorSource+New.swift */; }; - E6A0B04B2BF23C7000617DAC /* IdentifiedCollections in Frameworks */ = {isa = PBXBuildFile; productRef = E6A0B04A2BF23C7000617DAC /* IdentifiedCollections */; }; E6A0B04D2BF23D6E00617DAC /* IdentifiedArrayOf+Mutation+Position.swift in Sources */ = {isa = PBXBuildFile; fileRef = E6A0B04C2BF23D6E00617DAC /* IdentifiedArrayOf+Mutation+Position.swift */; }; E6A2D9E32AFA6C0D001857EC /* AccountWithInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = E6A2D9E22AFA6C0D001857EC /* AccountWithInfo.swift */; }; E6A2D9E52AFA6C1E001857EC /* AccountWithInfoHolder.swift in Sources */ = {isa = PBXBuildFile; fileRef = E6A2D9E42AFA6C1E001857EC /* AccountWithInfoHolder.swift */; }; @@ -1665,7 +1656,6 @@ 48CFBF262ADC10D900E77A5C /* PasteboardClient+Live.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "PasteboardClient+Live.swift"; sourceTree = ""; }; 48CFBF282ADC10D900E77A5C /* IdentifiedArrayOf+Extensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "IdentifiedArrayOf+Extensions.swift"; sourceTree = ""; }; 48CFBF292ADC10D900E77A5C /* Tuple+Extra.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Tuple+Extra.swift"; sourceTree = ""; }; - 48CFBF2A2ADC10D900E77A5C /* BigUInt+Extra.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "BigUInt+Extra.swift"; sourceTree = ""; }; 48CFBF2B2ADC10D900E77A5C /* OrderedSet+Extensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "OrderedSet+Extensions.swift"; sourceTree = ""; }; 48CFBF2C2ADC10D900E77A5C /* Data+Hex.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Data+Hex.swift"; sourceTree = ""; }; 48CFBF2D2ADC10D900E77A5C /* Date+Extension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Date+Extension.swift"; sourceTree = ""; }; @@ -2594,7 +2584,6 @@ files = ( E7AE2D052BF7844300830BAA /* Sargon in Frameworks */, 48FFFABE2ADC209100B2B213 /* NukeUI in Frameworks */, - 48FFFAE72ADC223300B2B213 /* Overture in Frameworks */, 48FFFA9F2ADC1F2700B2B213 /* KeychainAccess in Frameworks */, 48FFFAF72ADC241A00B2B213 /* Collections in Frameworks */, 48FFFAF92ADC241A00B2B213 /* DequeModule in Frameworks */, @@ -2609,30 +2598,23 @@ 48FFFAB12ADC203700B2B213 /* WebRTC in Frameworks */, 5B4E1D1F2CB7FE8E002FAC2E /* Sargon in Frameworks */, 831F0CED2C21819000D6F5BF /* Sargon in Frameworks */, - 48FFFB0D2ADC744700B2B213 /* TextBuilder in Frameworks */, 5B447E0B2CAAFC2D0063AE39 /* Sargon in Frameworks */, 48FFFB0A2ADC721800B2B213 /* Atomics in Frameworks */, - 48FFFB002ADC25A200B2B213 /* BigInt in Frameworks */, A47571FF2B29B0860059A95D /* IOSSecuritySuite in Frameworks */, 48FFFAFB2ADC241A00B2B213 /* HashTreeCollections in Frameworks */, 48FFFAC52ADC211700B2B213 /* JSONTesting in Frameworks */, - 48FFFB062ADC6FD300B2B213 /* SwiftUINavigation in Frameworks */, 5B1C4FD52BBB0B0C00B9436F /* AppsFlyerLib-Strict in Frameworks */, - 48FFFB032ADC6F8100B2B213 /* Builders in Frameworks */, - 48FFFAB72ADC207B00B2B213 /* NavigationTransitions in Frameworks */, 5B1BE3912D09E62A00201E30 /* Sargon in Frameworks */, 5B634A942C91D2A0004B2FBC /* ScreenshotPreventing in Frameworks */, 48FFFA992ADC1EEC00B2B213 /* AsyncExtensions in Frameworks */, 83B783562C1764AE00AA7930 /* Sargon in Frameworks */, E63D123D2ADD1FC00001CBB1 /* SwiftUIIntrospect in Frameworks */, - E6A0B04B2BF23C7000617DAC /* IdentifiedCollections in Frameworks */, 48FFFABC2ADC209100B2B213 /* NukeExtensions in Frameworks */, A41557502B757C5E0040AD4E /* ComposableArchitecture in Frameworks */, 48FFFAFD2ADC241A00B2B213 /* HeapModule in Frameworks */, 48C845C72BEA6DC600F74DA7 /* Sargon in Frameworks */, 48FFFAD52ADC21B900B2B213 /* LegibleError in Frameworks */, E60D5E1F2C2EFAA2008BCF1F /* Sargon in Frameworks */, - 48FFFB082ADC6FD300B2B213 /* SwiftUINavigationCore in Frameworks */, 48FFFAD82ADC21D200B2B213 /* NonEmpty in Frameworks */, 48FFFAE12ADC220F00B2B213 /* Tagged in Frameworks */, 48FFFAD22ADC218400B2B213 /* Either in Frameworks */, @@ -4386,7 +4368,6 @@ children = ( 48CFBF282ADC10D900E77A5C /* IdentifiedArrayOf+Extensions.swift */, 48CFBF292ADC10D900E77A5C /* Tuple+Extra.swift */, - 48CFBF2A2ADC10D900E77A5C /* BigUInt+Extra.swift */, 48CFBF2B2ADC10D900E77A5C /* OrderedSet+Extensions.swift */, 48CFBF2C2ADC10D900E77A5C /* Data+Hex.swift */, 48CFBF2D2ADC10D900E77A5C /* Date+Extension.swift */, @@ -7143,7 +7124,6 @@ 48FFFAA72ADC1FBE00B2B213 /* Atomics */, 48FFFAAA2ADC1FE900B2B213 /* DependenciesAdditions */, 48FFFAB02ADC203700B2B213 /* WebRTC */, - 48FFFAB62ADC207B00B2B213 /* NavigationTransitions */, 48FFFAB92ADC209100B2B213 /* Nuke */, 48FFFABB2ADC209100B2B213 /* NukeExtensions */, 48FFFABD2ADC209100B2B213 /* NukeUI */, @@ -7157,7 +7137,6 @@ 48FFFADD2ADC21F500B2B213 /* FileLogging */, 48FFFAE02ADC220F00B2B213 /* Tagged */, 48FFFAE32ADC222100B2B213 /* Validated */, - 48FFFAE62ADC223300B2B213 /* Overture */, 48FFFAEC2ADC226B00B2B213 /* CodeScanner */, 48FFFAEF2ADC229900B2B213 /* AnyCodable */, 48FFFAF42ADC241A00B2B213 /* BitCollections */, @@ -7165,18 +7144,12 @@ 48FFFAF82ADC241A00B2B213 /* DequeModule */, 48FFFAFA2ADC241A00B2B213 /* HashTreeCollections */, 48FFFAFC2ADC241A00B2B213 /* HeapModule */, - 48FFFAFF2ADC25A200B2B213 /* BigInt */, - 48FFFB022ADC6F8100B2B213 /* Builders */, - 48FFFB052ADC6FD300B2B213 /* SwiftUINavigation */, - 48FFFB072ADC6FD300B2B213 /* SwiftUINavigationCore */, 48FFFB092ADC721800B2B213 /* Atomics */, - 48FFFB0C2ADC744700B2B213 /* TextBuilder */, E63D123C2ADD1FC00001CBB1 /* SwiftUIIntrospect */, A47571FE2B29B0860059A95D /* IOSSecuritySuite */, A415574F2B757C5E0040AD4E /* ComposableArchitecture */, 5B1C4FD42BBB0B0C00B9436F /* AppsFlyerLib-Strict */, E695F2DD2BECDD7C00761ACE /* Sargon */, - E6A0B04A2BF23C7000617DAC /* IdentifiedCollections */, 83B783552C1764AE00AA7930 /* Sargon */, 831F0CEC2C21819000D6F5BF /* Sargon */, E60D5E1E2C2EFAA2008BCF1F /* Sargon */, @@ -7229,7 +7202,6 @@ 48FFFAA92ADC1FE900B2B213 /* XCRemoteSwiftPackageReference "swift-dependencies-additions" */, 48FFFAAF2ADC203700B2B213 /* XCRemoteSwiftPackageReference "WebRTC" */, 48FFFAB22ADC206300B2B213 /* XCRemoteSwiftPackageReference "SwiftUI-Introspect" */, - 48FFFAB52ADC207B00B2B213 /* XCRemoteSwiftPackageReference "swiftui-navigation-transitions" */, 48FFFAB82ADC209100B2B213 /* XCRemoteSwiftPackageReference "Nuke" */, 48FFFABF2ADC20C400B2B213 /* XCRemoteSwiftPackageReference "JSONPreview" */, 48FFFAC32ADC211700B2B213 /* XCRemoteSwiftPackageReference "swift-json-testing" */, @@ -7241,19 +7213,13 @@ 48FFFADC2ADC21F500B2B213 /* XCRemoteSwiftPackageReference "swift-log-file" */, 48FFFADF2ADC220F00B2B213 /* XCRemoteSwiftPackageReference "swift-tagged" */, 48FFFAE22ADC222100B2B213 /* XCRemoteSwiftPackageReference "swift-validated" */, - 48FFFAE52ADC223300B2B213 /* XCRemoteSwiftPackageReference "swift-overture" */, 48FFFAEB2ADC226B00B2B213 /* XCRemoteSwiftPackageReference "CodeScanner" */, 48FFFAEE2ADC229900B2B213 /* XCRemoteSwiftPackageReference "AnyCodable" */, 48FFFAF32ADC241A00B2B213 /* XCRemoteSwiftPackageReference "swift-collections" */, - 48FFFAFE2ADC25A200B2B213 /* XCRemoteSwiftPackageReference "BigInt" */, - 48FFFB012ADC6F8100B2B213 /* XCRemoteSwiftPackageReference "swift-builders" */, - 48FFFB042ADC6FD300B2B213 /* XCRemoteSwiftPackageReference "swiftui-navigation" */, - 48FFFB0B2ADC744700B2B213 /* XCRemoteSwiftPackageReference "TextBuilder" */, A47571FD2B29B0860059A95D /* XCRemoteSwiftPackageReference "IOSSecuritySuite" */, A415574E2B757C5E0040AD4E /* XCRemoteSwiftPackageReference "swift-composable-architecture" */, 5B1C4FD32BBB0B0C00B9436F /* XCRemoteSwiftPackageReference "AppsFlyerFramework-Strict" */, 8318BB172BC8403800057BCB /* XCRemoteSwiftPackageReference "swift-custom-dump" */, - E6A0B0492BF23C7000617DAC /* XCRemoteSwiftPackageReference "swift-identified-collections" */, 5B634A922C91D2A0004B2FBC /* XCRemoteSwiftPackageReference "ScreenshotPreventing-iOS" */, 5B725D472D0C7F370040BA22 /* XCRemoteSwiftPackageReference "sargon" */, ); @@ -8082,7 +8048,6 @@ E7A5AC982C09F44C006CB6EC /* ResetWalletClient+Live.swift in Sources */, A40815E22C7E0D08005E65B9 /* ProgrammaticScryptoSborValueTuple.swift in Sources */, 48CFC3042ADC10D900E77A5C /* DebugKeychainTest.swift in Sources */, - 48CFC41A2ADC10DA00E77A5C /* BigUInt+Extra.swift in Sources */, A40815872C7E0D08005E65B9 /* LedgerStateSelector.swift in Sources */, A40815B92C7E0D08005E65B9 /* NativeResourceSystemExecutionResourceValue.swift in Sources */, A462B5952B837CA800C26D20 /* CoreAPI.swift in Sources */, @@ -9157,7 +9122,7 @@ repositoryURL = "https://github.com/tgrapperon/swift-dependencies-additions"; requirement = { kind = exactVersion; - version = 1.0.1; + version = 1.1.1; }; }; 48FFFAAF2ADC203700B2B213 /* XCRemoteSwiftPackageReference "WebRTC" */ = { @@ -9176,14 +9141,6 @@ version = 1.0.0; }; }; - 48FFFAB52ADC207B00B2B213 /* XCRemoteSwiftPackageReference "swiftui-navigation-transitions" */ = { - isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/davdroman/swiftui-navigation-transitions"; - requirement = { - kind = exactVersion; - version = 0.13.3; - }; - }; 48FFFAB82ADC209100B2B213 /* XCRemoteSwiftPackageReference "Nuke" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/kean/Nuke"; @@ -9272,14 +9229,6 @@ version = 0.2.1; }; }; - 48FFFAE52ADC223300B2B213 /* XCRemoteSwiftPackageReference "swift-overture" */ = { - isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/pointfreeco/swift-overture.git"; - requirement = { - kind = exactVersion; - version = 0.5.0; - }; - }; 48FFFAEB2ADC226B00B2B213 /* XCRemoteSwiftPackageReference "CodeScanner" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/twostraws/CodeScanner"; @@ -9304,38 +9253,6 @@ version = 1.1.0; }; }; - 48FFFAFE2ADC25A200B2B213 /* XCRemoteSwiftPackageReference "BigInt" */ = { - isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/attaswift/BigInt"; - requirement = { - kind = exactVersion; - version = 5.3.0; - }; - }; - 48FFFB012ADC6F8100B2B213 /* XCRemoteSwiftPackageReference "swift-builders" */ = { - isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/davdroman/swift-builders"; - requirement = { - kind = exactVersion; - version = 0.6.0; - }; - }; - 48FFFB042ADC6FD300B2B213 /* XCRemoteSwiftPackageReference "swiftui-navigation" */ = { - isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/pointfreeco/swiftui-navigation.git"; - requirement = { - kind = exactVersion; - version = 1.2.1; - }; - }; - 48FFFB0B2ADC744700B2B213 /* XCRemoteSwiftPackageReference "TextBuilder" */ = { - isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/davdroman/TextBuilder"; - requirement = { - kind = exactVersion; - version = 3.0.1; - }; - }; 5B1C4FD32BBB0B0C00B9436F /* XCRemoteSwiftPackageReference "AppsFlyerFramework-Strict" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/AppsFlyerSDK/AppsFlyerFramework-Strict"; @@ -9365,7 +9282,7 @@ repositoryURL = "https://github.com/pointfreeco/swift-custom-dump"; requirement = { kind = exactVersion; - version = 1.3.0; + version = 1.3.2; }; }; A415574E2B757C5E0040AD4E /* XCRemoteSwiftPackageReference "swift-composable-architecture" */ = { @@ -9373,7 +9290,7 @@ repositoryURL = "https://github.com/pointfreeco/swift-composable-architecture"; requirement = { kind = exactVersion; - version = 1.8.0; + version = 1.17.0; }; }; A47571FD2B29B0860059A95D /* XCRemoteSwiftPackageReference "IOSSecuritySuite" */ = { @@ -9384,14 +9301,6 @@ version = 1.9.11; }; }; - E6A0B0492BF23C7000617DAC /* XCRemoteSwiftPackageReference "swift-identified-collections" */ = { - isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/pointfreeco/swift-identified-collections"; - requirement = { - kind = exactVersion; - version = 1.0.2; - }; - }; /* End XCRemoteSwiftPackageReference section */ /* Begin XCSwiftPackageProductDependency section */ @@ -9438,11 +9347,6 @@ package = 48FFFAAF2ADC203700B2B213 /* XCRemoteSwiftPackageReference "WebRTC" */; productName = WebRTC; }; - 48FFFAB62ADC207B00B2B213 /* NavigationTransitions */ = { - isa = XCSwiftPackageProductDependency; - package = 48FFFAB52ADC207B00B2B213 /* XCRemoteSwiftPackageReference "swiftui-navigation-transitions" */; - productName = NavigationTransitions; - }; 48FFFAB92ADC209100B2B213 /* Nuke */ = { isa = XCSwiftPackageProductDependency; package = 48FFFAB82ADC209100B2B213 /* XCRemoteSwiftPackageReference "Nuke" */; @@ -9508,11 +9412,6 @@ package = 48FFFAE22ADC222100B2B213 /* XCRemoteSwiftPackageReference "swift-validated" */; productName = Validated; }; - 48FFFAE62ADC223300B2B213 /* Overture */ = { - isa = XCSwiftPackageProductDependency; - package = 48FFFAE52ADC223300B2B213 /* XCRemoteSwiftPackageReference "swift-overture" */; - productName = Overture; - }; 48FFFAEC2ADC226B00B2B213 /* CodeScanner */ = { isa = XCSwiftPackageProductDependency; package = 48FFFAEB2ADC226B00B2B213 /* XCRemoteSwiftPackageReference "CodeScanner" */; @@ -9548,36 +9447,11 @@ package = 48FFFAF32ADC241A00B2B213 /* XCRemoteSwiftPackageReference "swift-collections" */; productName = HeapModule; }; - 48FFFAFF2ADC25A200B2B213 /* BigInt */ = { - isa = XCSwiftPackageProductDependency; - package = 48FFFAFE2ADC25A200B2B213 /* XCRemoteSwiftPackageReference "BigInt" */; - productName = BigInt; - }; - 48FFFB022ADC6F8100B2B213 /* Builders */ = { - isa = XCSwiftPackageProductDependency; - package = 48FFFB012ADC6F8100B2B213 /* XCRemoteSwiftPackageReference "swift-builders" */; - productName = Builders; - }; - 48FFFB052ADC6FD300B2B213 /* SwiftUINavigation */ = { - isa = XCSwiftPackageProductDependency; - package = 48FFFB042ADC6FD300B2B213 /* XCRemoteSwiftPackageReference "swiftui-navigation" */; - productName = SwiftUINavigation; - }; - 48FFFB072ADC6FD300B2B213 /* SwiftUINavigationCore */ = { - isa = XCSwiftPackageProductDependency; - package = 48FFFB042ADC6FD300B2B213 /* XCRemoteSwiftPackageReference "swiftui-navigation" */; - productName = SwiftUINavigationCore; - }; 48FFFB092ADC721800B2B213 /* Atomics */ = { isa = XCSwiftPackageProductDependency; package = 48FFFAA62ADC1FBE00B2B213 /* XCRemoteSwiftPackageReference "swift-atomics" */; productName = Atomics; }; - 48FFFB0C2ADC744700B2B213 /* TextBuilder */ = { - isa = XCSwiftPackageProductDependency; - package = 48FFFB0B2ADC744700B2B213 /* XCRemoteSwiftPackageReference "TextBuilder" */; - productName = TextBuilder; - }; 5B1BE3902D09E62A00201E30 /* Sargon */ = { isa = XCSwiftPackageProductDependency; productName = Sargon; @@ -9635,11 +9509,6 @@ isa = XCSwiftPackageProductDependency; productName = Sargon; }; - E6A0B04A2BF23C7000617DAC /* IdentifiedCollections */ = { - isa = XCSwiftPackageProductDependency; - package = E6A0B0492BF23C7000617DAC /* XCRemoteSwiftPackageReference "swift-identified-collections" */; - productName = IdentifiedCollections; - }; /* End XCSwiftPackageProductDependency section */ }; rootObject = 48CFBC472ADC106300E77A5C /* Project object */; diff --git a/RadixWallet.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/RadixWallet.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved index e276e6de97..1ecb67ccce 100644 --- a/RadixWallet.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/RadixWallet.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -1,5 +1,5 @@ { - "originHash" : "7f25d08c2d5bfce10ead9a90a371e548d360b6e5e8779b8ad654bfac475f1dc8", + "originHash" : "fa0ccc46105ce4506ee426a54025794ee1322cffb38f54c107e48179e492ab78", "pins" : [ { "identity" : "anycodable", @@ -28,15 +28,6 @@ "version" : "0.5.3" } }, - { - "identity" : "bigint", - "kind" : "remoteSourceControl", - "location" : "https://github.com/attaswift/BigInt", - "state" : { - "revision" : "0ed110f7555c34ff468e72e1686e59721f2b0da6", - "version" : "5.3.0" - } - }, { "identity" : "codescanner", "kind" : "remoteSourceControl", @@ -60,8 +51,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/pointfreeco/combine-schedulers", "state" : { - "revision" : "9dc9cbe4bc45c65164fa653a563d8d8db61b09bb", - "version" : "1.0.0" + "revision" : "9fa31f4403da54855f1e2aeaeff478f4f0e40b13", + "version" : "1.0.2" } }, { @@ -112,7 +103,7 @@ { "identity" : "sargon", "kind" : "remoteSourceControl", - "location" : "https://github.com/radixdlt/sargon/", + "location" : "https://github.com/radixdlt/sargon", "state" : { "revision" : "9dced921809b0d6e9d417fb12025172eb69fc6d7", "version" : "1.1.88" @@ -153,22 +144,13 @@ "version" : "1.1.0" } }, - { - "identity" : "swift-builders", - "kind" : "remoteSourceControl", - "location" : "https://github.com/davdroman/swift-builders", - "state" : { - "revision" : "c2f1dc3ac3596732359926a5ef5e3ba7009aac21", - "version" : "0.6.0" - } - }, { "identity" : "swift-case-paths", "kind" : "remoteSourceControl", "location" : "https://github.com/pointfreeco/swift-case-paths", "state" : { - "revision" : "e072139e13f2f3e582251b49835abcf3421ac69a", - "version" : "1.2.3" + "revision" : "bc92c4b27f9a84bfb498cdbfdf35d5a357e9161f", + "version" : "1.5.6" } }, { @@ -176,8 +158,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/pointfreeco/swift-clocks", "state" : { - "revision" : "a8421d68068d8f45fbceb418fbf22c5dad4afd33", - "version" : "1.0.2" + "revision" : "b9b24b69e2adda099a1fa381cda1eeec272d5b53", + "version" : "1.0.5" } }, { @@ -194,8 +176,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/pointfreeco/swift-composable-architecture", "state" : { - "revision" : "cf967a28a8605629559533320d604168d733fc9c", - "version" : "1.8.0" + "revision" : "d602618c628e5123f66643437151079d3664970d", + "version" : "1.17.0" } }, { @@ -203,8 +185,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/pointfreeco/swift-concurrency-extras", "state" : { - "revision" : "bb5059bde9022d69ac516803f4f227d8ac967f71", - "version" : "1.1.0" + "revision" : "163409ef7dae9d960b87f34b51587b6609a76c1f", + "version" : "1.3.0" } }, { @@ -212,8 +194,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/pointfreeco/swift-custom-dump", "state" : { - "revision" : "f01efb26f3a192a0e88dcdb7c3c391ec2fc25d9c", - "version" : "1.3.0" + "revision" : "aec6a73f5c1dc1f1be4f61888094b95cf995d973", + "version" : "1.3.2" } }, { @@ -221,8 +203,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/pointfreeco/swift-dependencies", "state" : { - "revision" : "09e49dd46932adfe80ce672b4b3772d79ee6c21a", - "version" : "1.2.1" + "revision" : "5526c8a27675dc7b18d6fa643abfb64bcb200b77", + "version" : "1.6.2" } }, { @@ -230,8 +212,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/tgrapperon/swift-dependencies-additions", "state" : { - "revision" : "02e7b1801a96828049fe4d3e8bdc5e608ef5ffbc", - "version" : "1.0.1" + "revision" : "7b1d88ec23f80b0b5d4832d51af7647fa5062d8e", + "version" : "1.1.1" } }, { @@ -248,8 +230,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/pointfreeco/swift-identified-collections", "state" : { - "revision" : "d533cd18b0b456b106694a9899f917ee595f2666", - "version" : "1.0.2" + "revision" : "2f5ab6e091dd032b63dacbda052405756010dc3b", + "version" : "1.1.0" } }, { @@ -288,6 +270,15 @@ "version" : "0.1.0" } }, + { + "identity" : "swift-navigation", + "kind" : "remoteSourceControl", + "location" : "https://github.com/pointfreeco/swift-navigation", + "state" : { + "revision" : "16a27ab7ae0abfefbbcba73581b3e2380b47a579", + "version" : "2.2.2" + } + }, { "identity" : "swift-nonempty", "kind" : "remoteSourceControl", @@ -307,27 +298,27 @@ } }, { - "identity" : "swift-overture", + "identity" : "swift-perception", "kind" : "remoteSourceControl", - "location" : "https://github.com/pointfreeco/swift-overture.git", + "location" : "https://github.com/pointfreeco/swift-perception", "state" : { - "revision" : "7977acd7597f413717058acc1e080731249a1d7e", - "version" : "0.5.0" + "revision" : "8d52279b9809ef27eabe7d5420f03734528f19da", + "version" : "1.4.1" } }, { - "identity" : "swift-perception", + "identity" : "swift-sharing", "kind" : "remoteSourceControl", - "location" : "https://github.com/pointfreeco/swift-perception", + "location" : "https://github.com/pointfreeco/swift-sharing", "state" : { - "revision" : "42240120b2a8797595433288ab4118f8042214c3", - "version" : "1.1.1" + "revision" : "b68bf99b05cb974392f6ffa380351e9b7391e233", + "version" : "1.1.0" } }, { "identity" : "swift-syntax", "kind" : "remoteSourceControl", - "location" : "https://github.com/apple/swift-syntax", + "location" : "https://github.com/swiftlang/swift-syntax", "state" : { "revision" : "64889f0c732f210a935a0ad7cda38f77f876262d", "version" : "509.1.1" @@ -360,24 +351,6 @@ "version" : "1.0.0" } }, - { - "identity" : "swiftui-navigation", - "kind" : "remoteSourceControl", - "location" : "https://github.com/pointfreeco/swiftui-navigation.git", - "state" : { - "revision" : "d9e72f3083c08375794afa216fb2f89c0114f303", - "version" : "1.2.1" - } - }, - { - "identity" : "swiftui-navigation-transitions", - "kind" : "remoteSourceControl", - "location" : "https://github.com/davdroman/swiftui-navigation-transitions", - "state" : { - "revision" : "a6a3c70ad5d771bd1e927fb55897231cd9592024", - "version" : "0.13.3" - } - }, { "identity" : "swiftyjson", "kind" : "remoteSourceControl", @@ -387,15 +360,6 @@ "version" : "5.0.2" } }, - { - "identity" : "textbuilder", - "kind" : "remoteSourceControl", - "location" : "https://github.com/davdroman/TextBuilder", - "state" : { - "revision" : "65b7c7bb9b163f4fc2d755c52a89a6f3040300df", - "version" : "3.0.1" - } - }, { "identity" : "webrtc", "kind" : "remoteSourceControl", @@ -419,8 +383,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/pointfreeco/xctest-dynamic-overlay", "state" : { - "revision" : "6f30bdba373bbd7fbfe241dddd732651f2fbd1e2", - "version" : "1.1.2" + "revision" : "a3f634d1a409c7979cabc0a71b3f26ffa9fc8af1", + "version" : "1.4.3" } } ], diff --git a/RadixWallet/Clients/AccountLockersClient/AccountLockersClient+Test.swift b/RadixWallet/Clients/AccountLockersClient/AccountLockersClient+Test.swift index 0d34d6917e..3f11c5c112 100644 --- a/RadixWallet/Clients/AccountLockersClient/AccountLockersClient+Test.swift +++ b/RadixWallet/Clients/AccountLockersClient/AccountLockersClient+Test.swift @@ -21,8 +21,8 @@ extension AccountLockersClient: TestDependencyKey { static let testValue = Self( startMonitoring: unimplemented("\(Self.self).startMonitoring"), - claims: unimplemented("\(Self.self).claims"), - dappsWithClaims: unimplemented("\(Self.self).dappsWithClaims"), + claims: noop.claims, + dappsWithClaims: noop.dappsWithClaims, claimContent: unimplemented("\(Self.self).claimContent"), forceRefresh: unimplemented("\(Self.self).forceRefresh") ) diff --git a/RadixWallet/Clients/AccountPortfoliosClient/AccountPortfoliosClient+Mock.swift b/RadixWallet/Clients/AccountPortfoliosClient/AccountPortfoliosClient+Mock.swift index 57822b1cdf..7e4c1a5040 100644 --- a/RadixWallet/Clients/AccountPortfoliosClient/AccountPortfoliosClient+Mock.swift +++ b/RadixWallet/Clients/AccountPortfoliosClient/AccountPortfoliosClient+Mock.swift @@ -5,9 +5,9 @@ extension AccountPortfoliosClient: TestDependencyKey { static let testValue = AccountPortfoliosClient( fetchAccountPortfolios: unimplemented("\(AccountPortfoliosClient.self).fetchAccountPortfolios"), fetchAccountPortfolio: unimplemented("\(AccountPortfoliosClient.self).fetchAccountPortfolio"), - portfolioUpdates: unimplemented("\(AccountPortfoliosClient.self).fetchAccountPortfolio"), - portfolioForAccount: unimplemented("\(AccountPortfoliosClient.self).portfolioForAccount"), - portfolios: unimplemented("\(AccountPortfoliosClient.self).portfolios"), + portfolioUpdates: unimplemented("\(AccountPortfoliosClient.self).portfolioUpdates", placeholder: noop.portfolioUpdates), + portfolioForAccount: unimplemented("\(AccountPortfoliosClient.self).portfolioForAccount", placeholder: noop.portfolioForAccount), + portfolios: unimplemented("\(AccountPortfoliosClient.self).portfolios", placeholder: noop.portfolios), syncAccountsDeletedOnLedger: unimplemented("\(AccountPortfoliosClient.self).syncAccountsDeletedOnLedger") ) diff --git a/RadixWallet/Clients/AccountsClient/AccountsClient+Test.swift b/RadixWallet/Clients/AccountsClient/AccountsClient+Test.swift index f9ca3a0bf9..6a80fe5e68 100644 --- a/RadixWallet/Clients/AccountsClient/AccountsClient+Test.swift +++ b/RadixWallet/Clients/AccountsClient/AccountsClient+Test.swift @@ -26,12 +26,12 @@ extension AccountsClient: TestDependencyKey { ) static let testValue = Self( - getCurrentNetworkID: unimplemented("\(Self.self).getCurrentNetworkID"), - nextAppearanceID: unimplemented("\(Self.self).nextAppearanceID"), + getCurrentNetworkID: unimplemented("\(Self.self).getCurrentNetworkID", placeholder: noop.getCurrentNetworkID), + nextAppearanceID: unimplemented("\(Self.self).nextAppearanceID", placeholder: noop.nextAppearanceID), getAccountsOnCurrentNetwork: unimplemented("\(Self.self).getAccountsOnCurrentNetwork"), getHiddenAccountsOnCurrentNetwork: unimplemented("\(Self.self).getHiddenAccountsOnCurrentNetwork"), - accountsOnCurrentNetwork: unimplemented("\(Self.self).accountsOnCurrentNetwork"), - accountUpdates: unimplemented("\(Self.self).accountUpdates"), + accountsOnCurrentNetwork: unimplemented("\(Self.self).accountsOnCurrentNetwork", placeholder: noop.accountsOnCurrentNetwork), + accountUpdates: unimplemented("\(Self.self).accountUpdates", placeholder: noop.accountUpdates), newVirtualAccount: unimplemented("\(Self.self).newVirtualAccount"), saveVirtualAccounts: unimplemented("\(Self.self).saveVirtualAccounts"), getAccountByAddress: unimplemented("\(Self.self).getAccountByAddress"), diff --git a/RadixWallet/Clients/AppEventsClient/AppEventsClient+Test.swift b/RadixWallet/Clients/AppEventsClient/AppEventsClient+Test.swift index e3e802aac9..5ca6d74b8c 100644 --- a/RadixWallet/Clients/AppEventsClient/AppEventsClient+Test.swift +++ b/RadixWallet/Clients/AppEventsClient/AppEventsClient+Test.swift @@ -4,7 +4,7 @@ extension AppEventsClient: TestDependencyKey { static let testValue = Self( handleEvent: unimplemented("\(Self.self).handleEvent"), - events: unimplemented("\(Self.self).events") + events: unimplemented("\(Self.self).events", placeholder: noop.events) ) } diff --git a/RadixWallet/Clients/AppPreferencesClient/AppPreferencesClient+Test.swift b/RadixWallet/Clients/AppPreferencesClient/AppPreferencesClient+Test.swift index 1d6111b8de..1511a2f506 100644 --- a/RadixWallet/Clients/AppPreferencesClient/AppPreferencesClient+Test.swift +++ b/RadixWallet/Clients/AppPreferencesClient/AppPreferencesClient+Test.swift @@ -3,10 +3,10 @@ extension AppPreferencesClient: TestDependencyKey { static let previewValue = Self.noop static let testValue = Self( - appPreferenceUpdates: unimplemented("\(Self.self).appPreferenceUpdates"), - getPreferences: unimplemented("\(Self.self).getPreferences"), + appPreferenceUpdates: unimplemented("\(Self.self).appPreferenceUpdates", placeholder: noop.appPreferenceUpdates), + getPreferences: unimplemented("\(Self.self).getPreferences", placeholder: noop.getPreferences), updatePreferences: unimplemented("\(Self.self).updatePreferences"), - extractProfile: unimplemented("\(Self.self).extractProfile"), + extractProfile: unimplemented("\(Self.self).extractProfile", placeholder: noop.extractProfile), deleteProfileAndFactorSources: unimplemented("\(Self.self).deleteProfileAndFactorSources"), setIsCloudBackupEnabled: unimplemented("\(Self.self).setIsCloudBackupEnabled") ) diff --git a/RadixWallet/Clients/AuthorizedDappsClient/AuthorizedDappsClient+Test.swift b/RadixWallet/Clients/AuthorizedDappsClient/AuthorizedDappsClient+Test.swift index 94818e95d5..86d255b497 100644 --- a/RadixWallet/Clients/AuthorizedDappsClient/AuthorizedDappsClient+Test.swift +++ b/RadixWallet/Clients/AuthorizedDappsClient/AuthorizedDappsClient+Test.swift @@ -12,7 +12,7 @@ extension AuthorizedDappsClient: TestDependencyKey { static let testValue = Self( getAuthorizedDapps: unimplemented("\(Self.self).getAuthorizedDapps"), - authorizedDappValues: unimplemented("\(Self.self).authorizedDappValues"), + authorizedDappValues: unimplemented("\(Self.self).authorizedDappValues", placeholder: noop.authorizedDappValues), addAuthorizedDapp: unimplemented("\(Self.self).addAuthorizedDapp"), forgetAuthorizedDapp: unimplemented("\(Self.self).forgetAuthorizedDapp"), updateAuthorizedDapp: unimplemented("\(Self.self).updateAuthorizedDapp"), diff --git a/RadixWallet/Clients/CameraPermissionClient/CameraPermissionClient+Test.swift b/RadixWallet/Clients/CameraPermissionClient/CameraPermissionClient+Test.swift index 194cb83a5a..c92d43bbba 100644 --- a/RadixWallet/Clients/CameraPermissionClient/CameraPermissionClient+Test.swift +++ b/RadixWallet/Clients/CameraPermissionClient/CameraPermissionClient+Test.swift @@ -11,7 +11,7 @@ extension CameraPermissionClient: TestDependencyKey { static let previewValue = Self.noop static let testValue = Self( - getCameraAccess: unimplemented("\(Self.self).getCameraAccess") + getCameraAccess: unimplemented("\(Self.self).getCameraAccess", placeholder: noop.getCameraAccess) ) } diff --git a/RadixWallet/Clients/CloudBackupClient/CloudBackupClient+Test.swift b/RadixWallet/Clients/CloudBackupClient/CloudBackupClient+Test.swift index e3b8ce0b26..3b0c9ffa7c 100644 --- a/RadixWallet/Clients/CloudBackupClient/CloudBackupClient+Test.swift +++ b/RadixWallet/Clients/CloudBackupClient/CloudBackupClient+Test.swift @@ -27,12 +27,12 @@ extension CloudBackupClient: TestDependencyKey { ) static let testValue = Self( - isCloudProfileSyncEnabled: unimplemented("\(Self.self).isCloudProfileSyncEnabled"), + isCloudProfileSyncEnabled: noop.isCloudProfileSyncEnabled, startAutomaticBackups: unimplemented("\(Self.self).startAutomaticBackups"), migrateProfilesFromKeychain: unimplemented("\(Self.self).migrateProfilesFromKeychain"), deleteProfileBackup: unimplemented("\(Self.self).deleteProfileBackup"), checkAccountStatus: unimplemented("\(Self.self).checkAccountStatus"), - lastBackup: unimplemented("\(Self.self).lastBackup"), + lastBackup: noop.lastBackup, loadProfile: unimplemented("\(Self.self).loadProfile"), loadProfileHeaders: unimplemented("\(Self.self).loadProfileHeaders"), claimProfileOnICloud: unimplemented("\(Self.self).claimProfileOnICloud") diff --git a/RadixWallet/Clients/DappInteractionClient/DappInteractionClient+Test.swift b/RadixWallet/Clients/DappInteractionClient/DappInteractionClient+Test.swift index 63c0206475..1ac5e3e209 100644 --- a/RadixWallet/Clients/DappInteractionClient/DappInteractionClient+Test.swift +++ b/RadixWallet/Clients/DappInteractionClient/DappInteractionClient+Test.swift @@ -11,8 +11,8 @@ extension DappInteractionClient: TestDependencyKey { static let previewValue = Self.noop static let testValue = Self( - interactions: unimplemented("\(Self.self).requests"), - addWalletInteraction: unimplemented("\(Self.self).addWalletRequest"), + interactions: unimplemented("\(Self.self).requests", placeholder: noop.interactions), + addWalletInteraction: unimplemented("\(Self.self).addWalletRequest", placeholder: noop.addWalletInteraction), completeInteraction: unimplemented("\(Self.self).sendResponse") ) diff --git a/RadixWallet/Clients/DeepLinkHandlerClient/DeepLinkHandlerClient+Test.swift b/RadixWallet/Clients/DeepLinkHandlerClient/DeepLinkHandlerClient+Test.swift index 4a40d457ef..9a3af9cf25 100644 --- a/RadixWallet/Clients/DeepLinkHandlerClient/DeepLinkHandlerClient+Test.swift +++ b/RadixWallet/Clients/DeepLinkHandlerClient/DeepLinkHandlerClient+Test.swift @@ -5,7 +5,7 @@ extension DeepLinkHandlerClient: TestDependencyKey { static let testValue = Self( handleDeepLink: unimplemented("\(Self.self).handleDeepLink"), setDeepLink: unimplemented("\(Self.self).setDeepLink"), - hasDeepLink: unimplemented("\(Self.self).hasDeepLink") + hasDeepLink: noop.hasDeepLink ) } diff --git a/RadixWallet/Clients/FactorSourcesClient/FactorSourcesClient+Test.swift b/RadixWallet/Clients/FactorSourcesClient/FactorSourcesClient+Test.swift index 328a886c4f..66837204fc 100644 --- a/RadixWallet/Clients/FactorSourcesClient/FactorSourcesClient+Test.swift +++ b/RadixWallet/Clients/FactorSourcesClient/FactorSourcesClient+Test.swift @@ -12,14 +12,14 @@ extension FactorSourcesClient: TestDependencyKey { static let testValue = Self( indicesOfEntitiesControlledByFactorSource: unimplemented("\(Self.self).indicesOfEntitiesControlledByFactorSource"), - getCurrentNetworkID: unimplemented("\(Self.self).getCurrentNetworkID"), + getCurrentNetworkID: noop.getCurrentNetworkID, getMainDeviceFactorSource: unimplemented("\(Self.self).getMainDeviceFactorSource"), createNewMainDeviceFactorSource: unimplemented("\(Self.self).createNewMainDeviceFactorSource"), getFactorSources: unimplemented("\(Self.self).getFactorSources"), - factorSourcesAsyncSequence: unimplemented("\(Self.self).factorSourcesAsyncSequence"), + factorSourcesAsyncSequence: noop.factorSourcesAsyncSequence, nextEntityIndexForFactorSource: unimplemented("\(Self.self).nextEntityIndexForFactorSource"), addPrivateHDFactorSource: unimplemented("\(Self.self).addPrivateHDFactorSource"), - checkIfHasOlympiaFactorSourceForAccounts: unimplemented("\(Self.self).checkIfHasOlympiaFactorSourceForAccounts"), + checkIfHasOlympiaFactorSourceForAccounts: noop.checkIfHasOlympiaFactorSourceForAccounts, saveFactorSource: unimplemented("\(Self.self).saveFactorSource"), updateFactorSource: unimplemented("\(Self.self).updateFactorSource"), getSigningFactors: unimplemented("\(Self.self).getSigningFactors"), diff --git a/RadixWallet/Clients/FaucetClient/FaucetClient+Test.swift b/RadixWallet/Clients/FaucetClient/FaucetClient+Test.swift index 116142d02e..ddb2818c19 100644 --- a/RadixWallet/Clients/FaucetClient/FaucetClient+Test.swift +++ b/RadixWallet/Clients/FaucetClient/FaucetClient+Test.swift @@ -4,7 +4,7 @@ extension FaucetClient: TestDependencyKey { static let testValue: FaucetClient = Self( getFreeXRD: unimplemented("\(Self.self).getFreeXRD"), - isAllowedToUseFaucet: unimplemented("\(Self.self).isAllowedToUseFaucet") + isAllowedToUseFaucet: unimplemented("\(Self.self).isAllowedToUseFaucet", placeholder: noop.isAllowedToUseFaucet) ) } diff --git a/RadixWallet/Clients/GatewaysClient/GatewaysClient+Test.swift b/RadixWallet/Clients/GatewaysClient/GatewaysClient+Test.swift index b8dff73661..07630761ed 100644 --- a/RadixWallet/Clients/GatewaysClient/GatewaysClient+Test.swift +++ b/RadixWallet/Clients/GatewaysClient/GatewaysClient+Test.swift @@ -11,14 +11,14 @@ extension GatewaysClient: TestDependencyKey { static let previewValue = Self.noop static let testValue = Self( - currentGatewayValues: unimplemented("\(Self.self).currentGatewayValues"), - gatewaysValues: unimplemented("\(Self.self).gatewaysValues"), - getAllGateways: unimplemented("\(Self.self).getAllGateways"), - getCurrentGateway: unimplemented("\(Self.self).getCurrentGateway"), + currentGatewayValues: noop.currentGatewayValues, + gatewaysValues: noop.gatewaysValues, + getAllGateways: noop.getAllGateways, + getCurrentGateway: noop.getCurrentGateway, addGateway: unimplemented("\(Self.self).addGateway"), removeGateway: unimplemented("\(Self.self).removeGateway"), changeGateway: unimplemented("\(Self.self).changeGateway"), - hasGateway: unimplemented("\(Self.self).hasGateway") + hasGateway: noop.hasGateway ) static let noop = Self( diff --git a/RadixWallet/Clients/HomeCardsClient/HomeCardsClient+Test.swift b/RadixWallet/Clients/HomeCardsClient/HomeCardsClient+Test.swift index c80ee5f4e2..3ac25ebfb0 100644 --- a/RadixWallet/Clients/HomeCardsClient/HomeCardsClient+Test.swift +++ b/RadixWallet/Clients/HomeCardsClient/HomeCardsClient+Test.swift @@ -3,7 +3,7 @@ extension HomeCardsClient: TestDependencyKey { static let previewValue = Self.noop static let testValue = Self( - cards: unimplemented("\(Self.self).cards"), + cards: unimplemented("\(Self.self).cards", placeholder: noop.cards), removeCard: unimplemented("\(Self.self).removeCard") ) } diff --git a/RadixWallet/Clients/IOSSecurityClient/IOSSecurityClient+Test.swift b/RadixWallet/Clients/IOSSecurityClient/IOSSecurityClient+Test.swift index 67036e8454..d602d6fa32 100644 --- a/RadixWallet/Clients/IOSSecurityClient/IOSSecurityClient+Test.swift +++ b/RadixWallet/Clients/IOSSecurityClient/IOSSecurityClient+Test.swift @@ -3,7 +3,7 @@ extension IOSSecurityClient: TestDependencyKey { static let previewValue = Self.noop static let testValue = Self( - isJailbroken: unimplemented("\(Self.self).isJailbroken") + isJailbroken: unimplemented("\(Self.self).isJailbroken", placeholder: noop.isJailbroken) ) } diff --git a/RadixWallet/Clients/ImportLegacyWalletClient/ImportLegacyWalletClient+Test.swift b/RadixWallet/Clients/ImportLegacyWalletClient/ImportLegacyWalletClient+Test.swift index 922470dc53..cdba2783fe 100644 --- a/RadixWallet/Clients/ImportLegacyWalletClient/ImportLegacyWalletClient+Test.swift +++ b/RadixWallet/Clients/ImportLegacyWalletClient/ImportLegacyWalletClient+Test.swift @@ -8,22 +8,24 @@ extension DependencyValues { // MARK: - ImportLegacyWalletClient + TestDependencyKey extension ImportLegacyWalletClient: TestDependencyKey { - static let previewValue = Self( - shouldShowImportWalletShortcutInSettings: { false }, - parseHeaderFromQRCode: { _ in throw NoopError() }, - parseLegacyWalletFromQRCodes: { _ in throw NoopError() }, - migrateOlympiaSoftwareAccountsToBabylon: { _ in throw NoopError() }, - migrateOlympiaHardwareAccountsToBabylon: { _ in throw NoopError() }, - findAlreadyImportedIfAny: { _ in [] } - ) + static let previewValue = Self.noop static let testValue = Self( - shouldShowImportWalletShortcutInSettings: unimplemented("\(Self.self).shouldShowImportWalletShortcutInSettings"), + shouldShowImportWalletShortcutInSettings: unimplemented("\(Self.self).shouldShowImportWalletShortcutInSettings", placeholder: noop.shouldShowImportWalletShortcutInSettings), parseHeaderFromQRCode: unimplemented("\(Self.self).parseHeaderFromQRCode"), parseLegacyWalletFromQRCodes: unimplemented("\(Self.self).parseLegacyWalletFromQRCodes"), migrateOlympiaSoftwareAccountsToBabylon: unimplemented("\(Self.self).migrateOlympiaSoftwareAccountsToBabylon"), migrateOlympiaHardwareAccountsToBabylon: unimplemented("\(Self.self).migrateOlympiaHardwareAccountsToBabylon"), - findAlreadyImportedIfAny: unimplemented("\(Self.self).findAlreadyImportedIfAny") + findAlreadyImportedIfAny: unimplemented("\(Self.self).findAlreadyImportedIfAny", placeholder: noop.findAlreadyImportedIfAny) + ) + + static let noop = Self( + shouldShowImportWalletShortcutInSettings: { false }, + parseHeaderFromQRCode: { _ in throw NoopError() }, + parseLegacyWalletFromQRCodes: { _ in throw NoopError() }, + migrateOlympiaSoftwareAccountsToBabylon: { _ in throw NoopError() }, + migrateOlympiaHardwareAccountsToBabylon: { _ in throw NoopError() }, + findAlreadyImportedIfAny: { _ in [] } ) } diff --git a/RadixWallet/Clients/KeychainClient/KeychainClient+Mocked.swift b/RadixWallet/Clients/KeychainClient/KeychainClient+Mocked.swift index a3113b0294..6e59cb12c6 100644 --- a/RadixWallet/Clients/KeychainClient/KeychainClient+Mocked.swift +++ b/RadixWallet/Clients/KeychainClient/KeychainClient+Mocked.swift @@ -11,7 +11,7 @@ extension KeychainClient: TestDependencyKey { static let previewValue = Self.noop static var testValue = Self( - getServiceAndAccessGroup: unimplemented("\(Self.self).getServiceAndAccessGroup"), + getServiceAndAccessGroup: noop._getServiceAndAccessGroup, containsDataForKey: unimplemented("\(Self.self).containsDataForKey"), setDataWithoutAuthForKey: unimplemented("\(Self.self).setDataWithoutAuthForKey"), setDataWithAuthForKey: unimplemented("\(Self.self).setDataWithAuthForKey"), @@ -21,8 +21,8 @@ extension KeychainClient: TestDependencyKey { getDataWithAuthForKey: unimplemented("\(Self.self).getDataWithAuthForKey"), removeDataForKey: unimplemented("\(Self.self).removeDataForKey"), removeAllItems: unimplemented("\(Self.self).removeAllItems"), - getAllKeysMatchingAttributes: unimplemented("\(Self.self).getAllKeysMatchingAttributes"), - keychainChanged: unimplemented("\(Self.self).keychainChanged") + getAllKeysMatchingAttributes: noop.getAllKeysMatchingAttributes, + keychainChanged: noop._keychainChanged ) static let noop: Self = .init( diff --git a/RadixWallet/Clients/LedgerHardwareWalletClient/LedgerHardwareWalletClient+Test.swift b/RadixWallet/Clients/LedgerHardwareWalletClient/LedgerHardwareWalletClient+Test.swift index 7f254287b1..d45ae855f3 100644 --- a/RadixWallet/Clients/LedgerHardwareWalletClient/LedgerHardwareWalletClient+Test.swift +++ b/RadixWallet/Clients/LedgerHardwareWalletClient/LedgerHardwareWalletClient+Test.swift @@ -11,7 +11,7 @@ extension LedgerHardwareWalletClient: TestDependencyKey { static let previewValue = Self.noop static let testValue = Self( - isConnectedToAnyConnectorExtension: unimplemented("\(Self.self).isConnectedToAnyConnectorExtension"), + isConnectedToAnyConnectorExtension: unimplemented("\(Self.self).isConnectedToAnyConnectorExtension", placeholder: noop.isConnectedToAnyConnectorExtension), getDeviceInfo: unimplemented("\(Self.self).getDeviceInfo"), derivePublicKeys: unimplemented("\(Self.self).derivePublicKeys"), signTransaction: unimplemented("\(Self.self).signTransaction"), diff --git a/RadixWallet/Clients/LocalAuthenticationClient/LocalAuthenticationClient+Test.swift b/RadixWallet/Clients/LocalAuthenticationClient/LocalAuthenticationClient+Test.swift index d8b355da50..f05accd66c 100644 --- a/RadixWallet/Clients/LocalAuthenticationClient/LocalAuthenticationClient+Test.swift +++ b/RadixWallet/Clients/LocalAuthenticationClient/LocalAuthenticationClient+Test.swift @@ -12,6 +12,13 @@ extension LocalAuthenticationClient: TestDependencyKey { queryConfig: { .biometricsAndPasscodeSetUp }, authenticateWithBiometrics: { true }, setAuthenticatedSuccessfully: unimplemented("\(Self.self).setAuthenticatedSuccessfully"), - authenticatedSuccessfully: unimplemented("\(Self.self).authenticatedSuccessfully") + authenticatedSuccessfully: noop.authenticatedSuccessfully + ) + + static let noop = Self( + queryConfig: { throw NoopError() }, + authenticateWithBiometrics: { throw NoopError() }, + setAuthenticatedSuccessfully: {}, + authenticatedSuccessfully: { AsyncLazySequence([]).eraseToAnyAsyncSequence() } ) } diff --git a/RadixWallet/Clients/MnemonicClient/MnemonicClient+Test.swift b/RadixWallet/Clients/MnemonicClient/MnemonicClient+Test.swift index 723f70f422..3716d40ec9 100644 --- a/RadixWallet/Clients/MnemonicClient/MnemonicClient+Test.swift +++ b/RadixWallet/Clients/MnemonicClient/MnemonicClient+Test.swift @@ -8,18 +8,17 @@ extension DependencyValues { // MARK: - MnemonicClient + TestDependencyKey extension MnemonicClient: TestDependencyKey { + static let previewValue = Self.noop + static let testValue = Self( - generate: unimplemented("\(Self.self).generate"), + generate: noop.generate, import: unimplemented("\(Self.self).import"), - lookup: unimplemented("\(Self.self).lookup") + lookup: noop.lookup ) - #if DEBUG - static let previewValue = Self.noop static let noop = Self( generate: { _, _ in Mnemonic.sample }, import: { _, _ in throw NoopError() }, lookup: { _ in .unknown(.tooShort) } ) - #endif // DEBUG } diff --git a/RadixWallet/Clients/OnLedgerEntitiesClient/OnLedgerEntitiesClient+Live.swift b/RadixWallet/Clients/OnLedgerEntitiesClient/OnLedgerEntitiesClient+Live.swift index bbc99874f6..6ed7cb0e20 100644 --- a/RadixWallet/Clients/OnLedgerEntitiesClient/OnLedgerEntitiesClient+Live.swift +++ b/RadixWallet/Clients/OnLedgerEntitiesClient/OnLedgerEntitiesClient+Live.swift @@ -270,7 +270,7 @@ extension OnLedgerEntitiesClient { if fetchMetadata, let nextCursor = item.metadata.nextCursor { // Only fetch metadata if explicitly requested and there is more after the first page returned. let remaining = try await gatewayAPIClient.fetchEntityMetadata(item.address, ledgerState: response.ledgerState, nextCursor: nextCursor) - allMetadataItems.append(contentsOf: remaining) + allMetadataItems.formUnion(remaining) } let updatedItem = GatewayAPI.StateEntityDetailsResponseItem( diff --git a/RadixWallet/Clients/OverlayWindowClient/OverlayWindowClient+Test.swift b/RadixWallet/Clients/OverlayWindowClient/OverlayWindowClient+Test.swift index e5e6b325d4..2b97ed9e8d 100644 --- a/RadixWallet/Clients/OverlayWindowClient/OverlayWindowClient+Test.swift +++ b/RadixWallet/Clients/OverlayWindowClient/OverlayWindowClient+Test.swift @@ -2,15 +2,28 @@ // MARK: - BannerClient + TestDependencyKey extension OverlayWindowClient: TestDependencyKey { static let testValue = Self( - scheduledItems: unimplemented("\(Self.self).scheduledItems"), - scheduleAlert: unimplemented("\(Self.self).scheduleAlert"), + scheduledItems: noop.scheduledItems, + scheduleAlert: noop.scheduleAlert, scheduleAlertAndIgnoreAction: unimplemented("\(Self.self).scheduleAlertAndIgnoreAction"), scheduleHUD: unimplemented("\(Self.self).scheduleHUD"), scheduleSheet: unimplemented("\(Self.self).scheduleSheet"), - scheduleFullScreen: unimplemented("\(Self.self).scheduleFullScreen"), + scheduleFullScreen: noop.scheduleFullScreen, sendAlertAction: unimplemented("\(Self.self).sendAlertAction"), sendFullScreenAction: unimplemented("\(Self.self).sendFullScreenAction"), setIsUserIteractionEnabled: unimplemented("\(Self.self).setIsUserIteractionEnabled"), - isUserInteractionEnabled: unimplemented("\(Self.self).isUserInteractionEnabled") + isUserInteractionEnabled: noop.isUserInteractionEnabled + ) + + static let noop = Self( + scheduledItems: { AsyncLazySequence([]).eraseToAnyAsyncSequence() }, + scheduleAlert: { _ in .dismissed }, + scheduleAlertAndIgnoreAction: { _ in }, + scheduleHUD: { _ in }, + scheduleSheet: { _ in }, + scheduleFullScreen: { _ in .dismiss }, + sendAlertAction: { _, _ in }, + sendFullScreenAction: { _, _ in }, + setIsUserIteractionEnabled: { _ in }, + isUserInteractionEnabled: { AsyncLazySequence([]).eraseToAnyAsyncSequence() } ) } diff --git a/RadixWallet/Clients/P2PLinksClient/P2PLinksClient+Test.swift b/RadixWallet/Clients/P2PLinksClient/P2PLinksClient+Test.swift index e6e284176a..fad658c57d 100644 --- a/RadixWallet/Clients/P2PLinksClient/P2PLinksClient+Test.swift +++ b/RadixWallet/Clients/P2PLinksClient/P2PLinksClient+Test.swift @@ -19,7 +19,7 @@ extension P2PLinksClient: TestDependencyKey { storeP2PLinkPrivateKey: { _ in } ) static let testValue = Self( - getP2PLinks: unimplemented("\(Self.self).getP2PLinks"), + getP2PLinks: unimplemented("\(Self.self).getP2PLinks", placeholder: noop.getP2PLinks), updateOrAddP2PLink: unimplemented("\(Self.self).updateOrAddP2PLink"), updateP2PLink: unimplemented("\(Self.self).updateP2PLink"), deleteP2PLinkByPassword: unimplemented("\(Self.self).deleteP2PLinkByPassword"), diff --git a/RadixWallet/Clients/PasteboardClient/PasteboardClient+Test.swift b/RadixWallet/Clients/PasteboardClient/PasteboardClient+Test.swift index 35bf35f361..b79c7bea40 100644 --- a/RadixWallet/Clients/PasteboardClient/PasteboardClient+Test.swift +++ b/RadixWallet/Clients/PasteboardClient/PasteboardClient+Test.swift @@ -1,15 +1,17 @@ // MARK: - PasteboardClient + TestDependencyKey extension PasteboardClient: TestDependencyKey { - static let previewValue = Self( - copyEvents: { AsyncPassthroughSubject().eraseToAnyAsyncSequence() }, - copyString: { _ in }, - getString: { nil } - ) + static let previewValue = Self.noop static let testValue = Self( - copyEvents: unimplemented("\(Self.self).copyEvents"), + copyEvents: unimplemented("\(Self.self).copyEvents", placeholder: noop.copyEvents), copyString: unimplemented("\(Self.self).copyString"), - getString: unimplemented("\(Self.self).getString") + getString: unimplemented("\(Self.self).getString", placeholder: noop.getString) + ) + + static let noop = Self( + copyEvents: { AsyncPassthroughSubject().eraseToAnyAsyncSequence() }, + copyString: { _ in }, + getString: { nil } ) } diff --git a/RadixWallet/Clients/PersonasClient/PersonasClient+Test.swift b/RadixWallet/Clients/PersonasClient/PersonasClient+Test.swift index 625c7307a4..7cb0f0a62b 100644 --- a/RadixWallet/Clients/PersonasClient/PersonasClient+Test.swift +++ b/RadixWallet/Clients/PersonasClient/PersonasClient+Test.swift @@ -10,14 +10,14 @@ extension DependencyValues { extension PersonasClient: TestDependencyKey { static let previewValue = Self.noop static let testValue = Self( - personas: unimplemented("\(Self.self).personas"), + personas: unimplemented("\(Self.self).personas", placeholder: noop.personas), getPersonas: unimplemented("\(Self.self).getPersonas"), - getPersonasOnNetwork: unimplemented("\(Self.self).getPersonasOnNetwork"), + getPersonasOnNetwork: unimplemented("\(Self.self).getPersonasOnNetwork", placeholder: noop.getPersonasOnNetwork), getHiddenPersonasOnCurrentNetwork: unimplemented("\(Self.self).getHiddenPersonasOnCurrentNetwork"), updatePersona: unimplemented("\(Self.self).updatePersona"), saveVirtualPersona: unimplemented("\(Self.self).saveVirtualPersona"), - hasSomePersonaOnAnyNetwork: unimplemented("\(Self.self).hasAnyPersonaOnAnyNetwork"), - hasSomePersonaOnCurrentNetwork: unimplemented("\(Self.self).hasAnyPersonaOnCurrentNetwork") + hasSomePersonaOnAnyNetwork: unimplemented("\(Self.self).hasSomePersonaOnAnyNetwork", placeholder: noop.hasSomePersonaOnAnyNetwork), + hasSomePersonaOnCurrentNetwork: unimplemented("\(Self.self).hasSomePersonaOnCurrentNetwork", placeholder: noop.hasSomePersonaOnCurrentNetwork) ) static let noop = Self( personas: { AsyncLazySequence([]).eraseToAnyAsyncSequence() }, diff --git a/RadixWallet/Clients/RadixConnectClient/RadixConnectClient+Test.swift b/RadixWallet/Clients/RadixConnectClient/RadixConnectClient+Test.swift index f092bf2fca..2858c206f7 100644 --- a/RadixWallet/Clients/RadixConnectClient/RadixConnectClient+Test.swift +++ b/RadixWallet/Clients/RadixConnectClient/RadixConnectClient+Test.swift @@ -5,17 +5,17 @@ extension RadixConnectClient: TestDependencyKey { static let previewValue = Self.noop static let testValue = Self( - loadP2PLinksAndConnectAll: unimplemented("\(Self.self).loadFromProfileAndConnectAll"), + loadP2PLinksAndConnectAll: noop.loadP2PLinksAndConnectAll, disconnectAll: unimplemented("\(Self.self).disconnectAll"), connectToP2PLinks: unimplemented("\(Self.self).connectToP2PLinks"), - getLocalNetworkAccess: unimplemented("\(Self.self).getLocalNetworkAccess"), + getLocalNetworkAccess: noop.getLocalNetworkAccess, getP2PLinks: unimplemented("\(Self.self).getP2PLinks"), - getP2PLinksWithConnectionStatusUpdates: unimplemented("\(Self.self).getP2PLinksWithConnectionStatusUpdates"), - idsOfConnectedPeerConnections: unimplemented("\(Self.self).idsOfConnectedPeerConnections"), + getP2PLinksWithConnectionStatusUpdates: noop.getP2PLinksWithConnectionStatusUpdates, + idsOfConnectedPeerConnections: noop.idsOfConnectedPeerConnections, updateOrAddP2PLink: unimplemented("\(Self.self).updateOrAddP2PLink"), deleteP2PLinkByPassword: unimplemented("\(Self.self).deleteP2PLinkByPassword"), connectP2PLink: unimplemented("\(Self.self).connectP2PLink"), - receiveMessages: unimplemented("\(Self.self).receiveMessages"), + receiveMessages: noop.receiveMessages, sendResponse: unimplemented("\(Self.self).sendResponse"), sendRequest: unimplemented("\(Self.self).sendRequest"), handleDappDeepLink: unimplemented("\(Self.self).sendRequest"), diff --git a/RadixWallet/Clients/ResourcesVisibilityClient/ResourcesVisibilityClient+Test.swift b/RadixWallet/Clients/ResourcesVisibilityClient/ResourcesVisibilityClient+Test.swift index 9abb6e908f..748682e081 100644 --- a/RadixWallet/Clients/ResourcesVisibilityClient/ResourcesVisibilityClient+Test.swift +++ b/RadixWallet/Clients/ResourcesVisibilityClient/ResourcesVisibilityClient+Test.swift @@ -18,6 +18,6 @@ extension ResourcesVisibilityClient: TestDependencyKey { static let testValue = Self( hide: unimplemented("\(Self.self).hide"), getHidden: unimplemented("\(Self.self).getHidden"), - hiddenValues: unimplemented("\(Self.self).hiddenValues") + hiddenValues: unimplemented("\(Self.self).hiddenValues", placeholder: noop.hiddenValues) ) } diff --git a/RadixWallet/Clients/SecureStorageClient/SecureStorageClient+Test.swift b/RadixWallet/Clients/SecureStorageClient/SecureStorageClient+Test.swift index fc35cb3b32..20fde9b84d 100644 --- a/RadixWallet/Clients/SecureStorageClient/SecureStorageClient+Test.swift +++ b/RadixWallet/Clients/SecureStorageClient/SecureStorageClient+Test.swift @@ -77,7 +77,7 @@ extension SecureStorageClient: TestDependencyKey { saveProfileSnapshotData: unimplemented("\(Self.self).keychainChanged"), saveMnemonicForFactorSource: unimplemented("\(Self.self).saveMnemonicForFactorSource"), loadMnemonicByFactorSourceID: unimplemented("\(Self.self).loadMnemonicByFactorSourceID"), - containsMnemonicIdentifiedByFactorSourceID: unimplemented("\(Self.self).containsMnemonicIdentifiedByFactorSourceID"), + containsMnemonicIdentifiedByFactorSourceID: noop.containsMnemonicIdentifiedByFactorSourceID, deleteMnemonicByFactorSourceID: unimplemented("\(Self.self).deleteMnemonicByFactorSourceID"), deleteProfileAndMnemonicsByFactorSourceIDs: unimplemented("\(Self.self).deleteProfileMnemonicsByFactorSourceIDs"), disableCloudProfileSync: unimplemented("\(Self.self).disableCloudProfileSync"), @@ -95,8 +95,8 @@ extension SecureStorageClient: TestDependencyKey { saveP2PLinks: unimplemented("\(Self.self).saveP2PLinks"), loadP2PLinksPrivateKey: unimplemented("\(Self.self).loadP2PLinksPrivateKey"), saveP2PLinksPrivateKey: unimplemented("\(Self.self).saveP2PLinksPrivateKey"), - keychainChanged: unimplemented("\(Self.self).keychainChanged"), - getAllMnemonics: unimplemented("\(Self.self).getAllMnemonics"), + keychainChanged: noop.keychainChanged, + getAllMnemonics: noop.getAllMnemonics, loadMnemonicDataByFactorSourceID: unimplemented("\(Self.self).keychainChanged"), saveMnemonicForFactorSourceData: unimplemented("\(Self.self).saveMnemonicForFactorSourceData"), containsDataForKey: unimplemented("\(Self.self).containsDataForKey") @@ -107,7 +107,7 @@ extension SecureStorageClient: TestDependencyKey { saveProfileSnapshotData: unimplemented("\(Self.self).keychainChanged"), saveMnemonicForFactorSource: unimplemented("\(Self.self).saveMnemonicForFactorSource"), loadMnemonicByFactorSourceID: unimplemented("\(Self.self).loadMnemonicByFactorSourceID"), - containsMnemonicIdentifiedByFactorSourceID: unimplemented("\(Self.self).containsMnemonicIdentifiedByFactorSourceID"), + containsMnemonicIdentifiedByFactorSourceID: noop.containsMnemonicIdentifiedByFactorSourceID, deleteMnemonicByFactorSourceID: unimplemented("\(Self.self).deleteMnemonicByFactorSourceID"), deleteProfileAndMnemonicsByFactorSourceIDs: unimplemented("\(Self.self).deleteProfileMnemonicsByFactorSourceIDs"), disableCloudProfileSync: unimplemented("\(Self.self).disableCloudProfileSync"), @@ -125,7 +125,7 @@ extension SecureStorageClient: TestDependencyKey { saveP2PLinks: unimplemented("\(Self.self).saveP2PLinks"), loadP2PLinksPrivateKey: unimplemented("\(Self.self).loadP2PLinksPrivateKey"), saveP2PLinksPrivateKey: unimplemented("\(Self.self).saveP2PLinksPrivateKey"), - keychainChanged: unimplemented("\(Self.self).keychainChanged"), + keychainChanged: noop.keychainChanged, loadMnemonicDataByFactorSourceID: unimplemented("\(Self.self).keychainChanged"), saveMnemonicForFactorSourceData: unimplemented("\(Self.self).saveMnemonicForFactorSourceData"), containsDataForKey: unimplemented("\(Self.self).containsDataForKey") diff --git a/RadixWallet/Clients/SecurityCenterClient/SecurityCenterClient+Test.swift b/RadixWallet/Clients/SecurityCenterClient/SecurityCenterClient+Test.swift index fbf265a79d..bc8e781a6e 100644 --- a/RadixWallet/Clients/SecurityCenterClient/SecurityCenterClient+Test.swift +++ b/RadixWallet/Clients/SecurityCenterClient/SecurityCenterClient+Test.swift @@ -23,8 +23,8 @@ extension SecurityCenterClient: TestDependencyKey { static let testValue = Self( startMonitoring: unimplemented("\(Self.self).startMonitoring"), - problems: unimplemented("\(Self.self).problems"), - lastManualBackup: unimplemented("\(Self.self).lastManualBackup"), - lastCloudBackup: unimplemented("\(Self.self).lastCloudBackup") + problems: noop.problems, + lastManualBackup: noop.lastManualBackup, + lastCloudBackup: noop.lastCloudBackup ) } diff --git a/RadixWallet/Clients/URLFormatterClient/URLFormatterClient+Test.swift b/RadixWallet/Clients/URLFormatterClient/URLFormatterClient+Test.swift index 7cfeb0b469..460eb88371 100644 --- a/RadixWallet/Clients/URLFormatterClient/URLFormatterClient+Test.swift +++ b/RadixWallet/Clients/URLFormatterClient/URLFormatterClient+Test.swift @@ -11,8 +11,8 @@ extension URLFormatterClient: TestDependencyKey { static let previewValue = Self.noop static let testValue = Self( - fixedSizeImage: unimplemented("\(Self.self).fixedSize"), - generalImage: unimplemented("\(Self.self).general") + fixedSizeImage: unimplemented("\(Self.self).fixedSize", placeholder: noop.fixedSizeImage), + generalImage: unimplemented("\(Self.self).general", placeholder: noop.generalImage) ) static let noop = Self( diff --git a/RadixWallet/Clients/UserDefaults+Dependency+Extension/UserDefaults+Dependency+Extension.swift b/RadixWallet/Clients/UserDefaults+Dependency+Extension/UserDefaults+Dependency+Extension.swift index 9f802610e0..32bfbc7693 100644 --- a/RadixWallet/Clients/UserDefaults+Dependency+Extension/UserDefaults+Dependency+Extension.swift +++ b/RadixWallet/Clients/UserDefaults+Dependency+Extension/UserDefaults+Dependency+Extension.swift @@ -153,7 +153,7 @@ extension UserDefaults.Dependency { func appendMigratedKeychainProfiles(_ value: some Collection) throws { var migrated = getMigratedKeychainProfiles - migrated.append(contentsOf: value) + migrated.formUnion(value) try save(codable: migrated, forKey: .migratedKeychainProfiles) } diff --git a/RadixWallet/Exports.swift b/RadixWallet/Exports.swift index 75d5d61775..9fb735c6e7 100644 --- a/RadixWallet/Exports.swift +++ b/RadixWallet/Exports.swift @@ -1,27 +1,19 @@ @_exported import Algorithms @_exported import AsyncAlgorithms @_exported import AsyncExtensions -@_exported import BigInt -@_exported import BitCollections -@_exported import Builders @_exported import CasePaths @_exported import CollectionConcurrencyKit @_exported import Collections @_exported import ComposableArchitecture @_exported import CryptoKit @_exported import CustomDump -@_exported import Dependencies @_exported import DependenciesAdditions @_exported import Either @_exported import Foundation -@_exported import IdentifiedCollections @_exported import KeychainAccess @_exported import LegibleError @_exported import Logging -@_exported import NavigationTransitions @_exported import NonEmpty -@_exported import Overture @_exported import Sargon @_exported import Tagged -@_exported import TextBuilder @_exported import Validated diff --git a/RadixWallet/Features/CreateAccount/Coordinator/CreateAccountCoordinator+View.swift b/RadixWallet/Features/CreateAccount/Coordinator/CreateAccountCoordinator+View.swift index 2720a8e0fa..7fb256faf3 100644 --- a/RadixWallet/Features/CreateAccount/Coordinator/CreateAccountCoordinator+View.swift +++ b/RadixWallet/Features/CreateAccount/Coordinator/CreateAccountCoordinator+View.swift @@ -1,5 +1,4 @@ import ComposableArchitecture -import NavigationTransitions import SwiftUI extension CreateAccountCoordinator.State { @@ -45,7 +44,6 @@ extension CreateAccountCoordinator { } destination: { destinations(for: $0, shouldDisplayNavBar: viewStore.shouldDisplayNavBar) } - .navigationTransition(.slide, interactivity: .disabled) .destinations(with: store) } } diff --git a/RadixWallet/Features/CreatePersona/Coordinator/CreatePersonaCoordinator+View.swift b/RadixWallet/Features/CreatePersona/Coordinator/CreatePersonaCoordinator+View.swift index 4fe84b8926..24dc27d417 100644 --- a/RadixWallet/Features/CreatePersona/Coordinator/CreatePersonaCoordinator+View.swift +++ b/RadixWallet/Features/CreatePersona/Coordinator/CreatePersonaCoordinator+View.swift @@ -45,7 +45,6 @@ extension CreatePersonaCoordinator { } destination: { destination(for: $0, shouldDisplayNavBar: viewStore.shouldDisplayNavBar) } - .navigationTransition(.slide, interactivity: .disabled) .destinations(with: store) } } diff --git a/RadixWallet/Features/DappInteractionFeature/Coordinator/DappInteractionFlow+View.swift b/RadixWallet/Features/DappInteractionFeature/Coordinator/DappInteractionFlow+View.swift index 382d59613c..e88222488e 100644 --- a/RadixWallet/Features/DappInteractionFeature/Coordinator/DappInteractionFlow+View.swift +++ b/RadixWallet/Features/DappInteractionFeature/Coordinator/DappInteractionFlow+View.swift @@ -1,5 +1,4 @@ import ComposableArchitecture -import NavigationTransition import SwiftUI // MARK: - DappInteractionFlow.View diff --git a/RadixWallet/Features/ImportOlympiaLedgerAccountsAndFactorSources/ImportOlympiaLedgerAccountsAndFactorSources.swift b/RadixWallet/Features/ImportOlympiaLedgerAccountsAndFactorSources/ImportOlympiaLedgerAccountsAndFactorSources.swift index b5b44786a4..fb063b75ca 100644 --- a/RadixWallet/Features/ImportOlympiaLedgerAccountsAndFactorSources/ImportOlympiaLedgerAccountsAndFactorSources.swift +++ b/RadixWallet/Features/ImportOlympiaLedgerAccountsAndFactorSources/ImportOlympiaLedgerAccountsAndFactorSources.swift @@ -160,7 +160,7 @@ struct ImportOlympiaLedgerAccountsAndFactorSources: Sendable, FeatureReducer { case let .processedOlympiaHardwareAccounts(validatedAccounts, migratedAccounts): for validatedAccount in validatedAccounts { state.olympiaAccounts.unvalidated.remove(validatedAccount) - state.olympiaAccounts.validated.append(contentsOf: validatedAccounts) + state.olympiaAccounts.validated.formUnion(validatedAccounts) } loggerGlobal.notice("Adding migrated accounts...") diff --git a/RadixWallet/Features/InteractionReview/Sections/Sections+ExecutionSummary.swift b/RadixWallet/Features/InteractionReview/Sections/Sections+ExecutionSummary.swift index 49de0d814c..7325c2e8d3 100644 --- a/RadixWallet/Features/InteractionReview/Sections/Sections+ExecutionSummary.swift +++ b/RadixWallet/Features/InteractionReview/Sections/Sections+ExecutionSummary.swift @@ -34,7 +34,7 @@ extension InteractionReview.Sections { partialResult[next.resourceAddress] = .left(next) } - newlyCreatedMetadata.append(contentsOf: existingResourceDetails) + newlyCreatedMetadata.merge(existingResourceDetails) { $1 } return newlyCreatedMetadata } diff --git a/RadixWallet/Features/SettingsFeature/Troubleshooting/ImportFromOlympiaLegacyWallet/Coordinator/ImportOlympiaWalletCoordinator+View.swift b/RadixWallet/Features/SettingsFeature/Troubleshooting/ImportFromOlympiaLegacyWallet/Coordinator/ImportOlympiaWalletCoordinator+View.swift index 1c640a98ec..58e46fb210 100644 --- a/RadixWallet/Features/SettingsFeature/Troubleshooting/ImportFromOlympiaLegacyWallet/Coordinator/ImportOlympiaWalletCoordinator+View.swift +++ b/RadixWallet/Features/SettingsFeature/Troubleshooting/ImportFromOlympiaLegacyWallet/Coordinator/ImportOlympiaWalletCoordinator+View.swift @@ -27,7 +27,6 @@ extension ImportOlympiaWalletCoordinator { } destination: { Path.View(store: $0) } - .navigationTransition(.slide, interactivity: .disabled) } } } diff --git a/RadixWallet/Features/Signing/Children/SignWithFactorSource.swift b/RadixWallet/Features/Signing/Children/SignWithFactorSource.swift index ee91e46a6f..ef07872b8b 100644 --- a/RadixWallet/Features/Signing/Children/SignWithFactorSource.swift +++ b/RadixWallet/Features/Signing/Children/SignWithFactorSource.swift @@ -98,7 +98,7 @@ struct SignWithFactorSource: Sendable, FeatureReducer { case .ledger: try await sign(signers: signingFactor.signers, factor: signingFactor.factorSource.extract(as: LedgerHardwareWalletFactorSource.self), state: state) } - allSignatures.append(contentsOf: signatures) + allSignatures.formUnion(signatures) } catch let error as P2P.ConnectorExtension.Response.LedgerHardwareWallet.Failure where error.code == .userRejectedSigningOfTransaction { // If user rejected transaction on ledger device, we will inform the delegate to dismiss the signing sheet. await send(.delegate(.failedToSign(signingFactor))) diff --git a/RadixWallet/Prelude/ErrorQueue/ErrorQueue+Test.swift b/RadixWallet/Prelude/ErrorQueue/ErrorQueue+Test.swift index 2d303d6d23..ef1ed98461 100644 --- a/RadixWallet/Prelude/ErrorQueue/ErrorQueue+Test.swift +++ b/RadixWallet/Prelude/ErrorQueue/ErrorQueue+Test.swift @@ -11,7 +11,12 @@ extension ErrorQueue: TestDependencyKey { static let previewValue = liveValue static let testValue = Self( - errors: unimplemented("\(Self.self).errors"), + errors: noop.errors, schedule: unimplemented("\(Self.self).schedule") ) + + static let noop = Self( + errors: { AsyncLazySequence([]).eraseToAnyAsyncSequence() }, + schedule: { _ in } + ) } diff --git a/RadixWallet/Prelude/Extensions/BigUInt+Extra.swift b/RadixWallet/Prelude/Extensions/BigUInt+Extra.swift deleted file mode 100644 index f6cc88befe..0000000000 --- a/RadixWallet/Prelude/Extensions/BigUInt+Extra.swift +++ /dev/null @@ -1,24 +0,0 @@ -// MARK: - BigUInt + @unchecked Sendable -extension BigUInt: @unchecked Sendable {} - -// MARK: - BigUInt.Error -extension BigUInt { - enum Error: Swift.Error { - case initFromDecimalStringFailed - } -} - -extension BigUInt { - init(decimalString: String) throws { - guard let value = Self(decimalString, radix: 10) else { - throw Error.initFromDecimalStringFailed - } - self = value - } -} - -extension BigUInt { - var inAttos: Self { - self * BigUInt(2).power(18) - } -} diff --git a/RadixWalletTests/TestExtensions/TestUtils.swift b/RadixWalletTests/TestExtensions/TestUtils.swift index 5c9cca2511..d111e0fa65 100644 --- a/RadixWalletTests/TestExtensions/TestUtils.swift +++ b/RadixWalletTests/TestExtensions/TestUtils.swift @@ -129,7 +129,6 @@ func withTestClients( }, operation: operation) } -@_unsafeInheritExecutor @discardableResult func withTestClients( userDefaults: UserDefaults.Dependency = .ephemeral(),