From e5c08f3268a27bd6bc31db02db989e97b881dffe Mon Sep 17 00:00:00 2001 From: Matthew Date: Thu, 2 Oct 2025 09:29:57 -0500 Subject: [PATCH 1/2] xcode: app icon --- .../project.pbxproj | 4 ++ .../AppIcon.appiconset/Contents.json | 14 ---- .../Icon-Light-1024x1024.png | Bin 8841 -> 0 bytes .../AppIcon.icon/Assets/box-rotated.png | Bin 0 -> 1305 bytes .../Resources/AppIcon.icon/icon.json | 66 ++++++++++++++++++ .../Resources/Localizable.xcstrings | 6 +- 6 files changed, 75 insertions(+), 15 deletions(-) delete mode 100644 BDKSwiftExampleWallet/Assets.xcassets/AppIcon.appiconset/Contents.json delete mode 100644 BDKSwiftExampleWallet/Assets.xcassets/AppIcon.appiconset/Icon-Light-1024x1024.png create mode 100644 BDKSwiftExampleWallet/Resources/AppIcon.icon/Assets/box-rotated.png create mode 100644 BDKSwiftExampleWallet/Resources/AppIcon.icon/icon.json diff --git a/BDKSwiftExampleWallet.xcodeproj/project.pbxproj b/BDKSwiftExampleWallet.xcodeproj/project.pbxproj index 969404d4..88d5ffbd 100644 --- a/BDKSwiftExampleWallet.xcodeproj/project.pbxproj +++ b/BDKSwiftExampleWallet.xcodeproj/project.pbxproj @@ -108,6 +108,7 @@ AEE6C74F2ABCBA4600442ADD /* WalletSyncState.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEE6C74E2ABCBA4600442ADD /* WalletSyncState.swift */; }; AEE83A492C07F54B00834468 /* BitcoinDevKit in Frameworks */ = {isa = PBXBuildFile; productRef = AEE83A482C07F54B00834468 /* BitcoinDevKit */; }; AEEA0E402DEF80B600C83255 /* Outpoint+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEEA0E3F2DEF80B600C83255 /* Outpoint+Extensions.swift */; }; + AEEC65532E8EC260003B55E8 /* AppIcon.icon in Resources */ = {isa = PBXBuildFile; fileRef = AEEC65522E8EC25F003B55E8 /* AppIcon.icon */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -213,6 +214,7 @@ AEE6C74B2ABCB3E200442ADD /* Transaction+Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Transaction+Extensions.swift"; sourceTree = ""; }; AEE6C74E2ABCBA4600442ADD /* WalletSyncState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WalletSyncState.swift; sourceTree = ""; }; AEEA0E3F2DEF80B600C83255 /* Outpoint+Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Outpoint+Extensions.swift"; sourceTree = ""; }; + AEEC65522E8EC25F003B55E8 /* AppIcon.icon */ = {isa = PBXFileReference; lastKnownFileType = folder.iconcomposer.icon; path = AppIcon.icon; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -267,6 +269,7 @@ A7FBCE392A72944C007C960E /* Resources */ = { isa = PBXGroup; children = ( + AEEC65522E8EC25F003B55E8 /* AppIcon.icon */, A733D6CF2A81113000F333B4 /* Localizable.xcstrings */, ); path = Resources; @@ -697,6 +700,7 @@ buildActionMask = 2147483647; files = ( AE4984A62A1BBCB8009951E2 /* README.md in Resources */, + AEEC65532E8EC260003B55E8 /* AppIcon.icon in Resources */, A733D6D02A81113000F333B4 /* Localizable.xcstrings in Resources */, AE4984832A1BBBD7009951E2 /* Preview Assets.xcassets in Resources */, AE4984802A1BBBD7009951E2 /* Assets.xcassets in Resources */, diff --git a/BDKSwiftExampleWallet/Assets.xcassets/AppIcon.appiconset/Contents.json b/BDKSwiftExampleWallet/Assets.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index e879b7f2..00000000 --- a/BDKSwiftExampleWallet/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "images" : [ - { - "filename" : "Icon-Light-1024x1024.png", - "idiom" : "universal", - "platform" : "ios", - "size" : "1024x1024" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/BDKSwiftExampleWallet/Assets.xcassets/AppIcon.appiconset/Icon-Light-1024x1024.png b/BDKSwiftExampleWallet/Assets.xcassets/AppIcon.appiconset/Icon-Light-1024x1024.png deleted file mode 100644 index 57aa922a2084456768cfe9f88210a295e02ba7aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8841 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 diff --git a/BDKSwiftExampleWallet/Resources/AppIcon.icon/Assets/box-rotated.png b/BDKSwiftExampleWallet/Resources/AppIcon.icon/Assets/box-rotated.png new file mode 100644 index 0000000000000000000000000000000000000000..7560ea3edb623f71b648d39c268f26542bbd7370 GIT binary patch literal 1305 zcmXApc~DbV6vkgjgala@UR{ z#Ks~bID$(lTZmeU1=>IhR_TDYvWTXEpfXKBWroH{f!=HXxWD)A`M&R*^Zt2?#P}F{ zTMt_VLF{9Boc-Wg2@XcI1{_hFb>Kk~^Mu(5;`$LhxY+&7H=u~i-X9Z%wEs?<2N%N0 z$bFFrqE@c|H)S2Tw#RZJ51hrBrXsVR2%O9H)Gql6n^PoViR@{Rlyo>M_nM}3!K*uO zM)WjjBJ$BW_dpS$M}Qj|?h@@ySbUMU+EUtbu72B`W4PLiCAsc-=*8bB_?r96<`~(P zgME%85uq|&>Uet2vCP)G-ZW)i;^C=a*{S6TTYp(85|b$?FuPaRS9Zci;X ztRepPHNjG8`O>_}8+6*IDH3xlW~l`$9izXRyxPqvQM+d{N`v?lMViMd`Jis6R65>p zpwTSDDR#=zH|N}m*shMwvvQJo=G-x{|9=hW3u}|cw~k$v4|-*eu3WzOMUD@B>px|s z_wWmeP2o7j4~-fAdm5)bo|AY#wjH^fU>r>t!qVxvr_Bk*0P1%e_!Y;DLpRIhUyphY zB&8IT$vGW8&Xrsu&(Om7#%Mta%+&FjP9lyp>CE$UH~(T#V_Gh0Qz%w7lD%-q zgL^liLnL&74ZAkG!LU$8g(FjcvxjTB&S4-XdYknNh;^L`gHwd9(=g^&V*~vUmP%mb z(+y%!V?OkRVP^gyuy2zchQ3F2C!tR>=LH%L`*DAQQhpM&#~oxs>7omqHO%C~RF)(O zrVjB%P;ztokm9Q3aE+WBe}Vb#{8+fJb+QMX6{&(78d7h-FPd-rkn-6KQ@oQ}wUS(| zb2@*7V)YKypLJ)@cTvylya|RF?U)yXt{tN$vB~<^O4bHUT(4v~V`95178y{$m)4i8=TY^be{+@Cn!|n^&9*{m^WOCc<@|A!1~`Xqvq5POqeXTc_9f*o*vCM* zz#!{~eb6Af_ChizdUu(3KNcq^#xzjeL7>3f)f%Pc$M_LB>~~55Sl5gR5I_YFv?$;* z2`Ft9b;3~`8Yv_>u~LU!E+$qkV(x%zSiZak-X?c3B= Date: Thu, 2 Oct 2025 09:31:18 -0500 Subject: [PATCH 2/2] format --- .../Extensions/BDK+Extensions/CbfClient+Extensions.swift | 4 ++-- BDKSwiftExampleWallet/Model/BalanceDisplayFormat.swift | 6 +++--- .../View/Activity/LocalOutputItemView.swift | 2 +- .../View/Activity/TransactionItemView.swift | 2 +- .../View/Activity/TransactionListView.swift | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/BDKSwiftExampleWallet/Extensions/BDK+Extensions/CbfClient+Extensions.swift b/BDKSwiftExampleWallet/Extensions/BDK+Extensions/CbfClient+Extensions.swift index 062b2a2b..dd559ecf 100644 --- a/BDKSwiftExampleWallet/Extensions/BDK+Extensions/CbfClient+Extensions.swift +++ b/BDKSwiftExampleWallet/Extensions/BDK+Extensions/CbfClient+Extensions.swift @@ -48,7 +48,7 @@ extension CbfClient { let info = try await self.nextInfo() CbfClient.monitoringTasksQueue.sync { Self.lastInfoAt[id] = Date() } switch info { - case let .progress(progress): + case .progress(let progress): await MainActor.run { NotificationCenter.default.post( name: NSNotification.Name("KyotoProgressUpdate"), @@ -56,7 +56,7 @@ extension CbfClient { userInfo: ["progress": progress] ) } - case let .newChainHeight(height): + case .newChainHeight(let height): await MainActor.run { NotificationCenter.default.post( name: NSNotification.Name("KyotoChainHeightUpdate"), diff --git a/BDKSwiftExampleWallet/Model/BalanceDisplayFormat.swift b/BDKSwiftExampleWallet/Model/BalanceDisplayFormat.swift index 56b8493a..8b50eedd 100644 --- a/BDKSwiftExampleWallet/Model/BalanceDisplayFormat.swift +++ b/BDKSwiftExampleWallet/Model/BalanceDisplayFormat.swift @@ -19,10 +19,10 @@ enum BalanceDisplayFormat: String, CaseIterable, Codable { switch self { case .bitcoinSats, .bitcoin, .bip177: return "₿" case .fiat: return "$" - default : return "" + default: return "" } } - + var displayText: String { switch self { case .sats, .bitcoinSats: return "sats" @@ -31,7 +31,7 @@ enum BalanceDisplayFormat: String, CaseIterable, Codable { case .fiat: return "USD" } } - + func formatted(_ btcAmount: UInt64, fiatPrice: Double) -> String { switch self { case .sats: diff --git a/BDKSwiftExampleWallet/View/Activity/LocalOutputItemView.swift b/BDKSwiftExampleWallet/View/Activity/LocalOutputItemView.swift index 886c640a..e24afacb 100644 --- a/BDKSwiftExampleWallet/View/Activity/LocalOutputItemView.swift +++ b/BDKSwiftExampleWallet/View/Activity/LocalOutputItemView.swift @@ -56,7 +56,7 @@ struct LocalOutputItemView: View { .redacted(reason: isRedacted ? .placeholder : []) Spacer() - + Group { HStack { Text(balanceFormat.displayPrefix) diff --git a/BDKSwiftExampleWallet/View/Activity/TransactionItemView.swift b/BDKSwiftExampleWallet/View/Activity/TransactionItemView.swift index a83fee20..b268faa3 100644 --- a/BDKSwiftExampleWallet/View/Activity/TransactionItemView.swift +++ b/BDKSwiftExampleWallet/View/Activity/TransactionItemView.swift @@ -15,7 +15,7 @@ struct TransactionItemView: View { let isRedacted: Bool private let format: BalanceDisplayFormat private var fiatPrice: Double - + init( txDetails: TxDetails, isRedacted: Bool, diff --git a/BDKSwiftExampleWallet/View/Activity/TransactionListView.swift b/BDKSwiftExampleWallet/View/Activity/TransactionListView.swift index a28aa229..02f63f9b 100644 --- a/BDKSwiftExampleWallet/View/Activity/TransactionListView.swift +++ b/BDKSwiftExampleWallet/View/Activity/TransactionListView.swift @@ -29,7 +29,7 @@ struct TransactionListView: View { self.format = format self.fiatPrice = fiatPrice } - + var body: some View { List {