commit b05bc7bb8f95d456e94e523bfc1b95794cd55bc5
parent 6faeced11b730f5ad3b618cffdc1e851accaecb8
Author: Marc Stibane <marc@taler.net>
Date: Tue, 21 Nov 2023 21:20:20 +0100
Omit "incomplete"
Diffstat:
5 files changed, 1 insertion(+), 84 deletions(-)
diff --git a/TalerWallet.xcodeproj/project.pbxproj b/TalerWallet.xcodeproj/project.pbxproj
@@ -42,7 +42,6 @@
4E3EAE2D2A990778009F1BE8 /* Model+Exchange.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E3B4BC82A42BC4800CC88B8 /* Model+Exchange.swift */; };
4E3EAE2E2A990778009F1BE8 /* QRCodeDetailView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E5A88F42A38A4FD00072618 /* QRCodeDetailView.swift */; };
4E3EAE2F2A990778009F1BE8 /* TransactionsEmptyView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E87C8722A31CB7F001C6406 /* TransactionsEmptyView.swift */; };
- 4E3EAE302A990778009F1BE8 /* IncompleteRowV.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E87C8742A34B411001C6406 /* IncompleteRowV.swift */; };
4E3EAE312A990778009F1BE8 /* SendAmount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E40E0BD29F25ABB00B85369 /* SendAmount.swift */; };
4E3EAE332A990778009F1BE8 /* EqualIconWidthDomain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E8E25322A1CD39700A27BFA /* EqualIconWidthDomain.swift */; };
4E3EAE342A990778009F1BE8 /* SuperScriptDigits.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EBA563E2A7FD9390084948B /* SuperScriptDigits.swift */; };
@@ -156,7 +155,6 @@
4E753A082A0B6A5F002D9328 /* ShareSheet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E753A072A0B6A5F002D9328 /* ShareSheet.swift */; };
4E7940DE29FC307C00A9AEA1 /* P2PSubjectV.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E7940DD29FC307C00A9AEA1 /* P2PSubjectV.swift */; };
4E87C8732A31CB7F001C6406 /* TransactionsEmptyView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E87C8722A31CB7F001C6406 /* TransactionsEmptyView.swift */; };
- 4E87C8752A34B411001C6406 /* IncompleteRowV.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E87C8742A34B411001C6406 /* IncompleteRowV.swift */; };
4E8C17202A6509BB005B2392 /* Atkinson-Hyperlegible-Regular-102.otf in Resources */ = {isa = PBXBuildFile; fileRef = 4E8C171C2A6509BB005B2392 /* Atkinson-Hyperlegible-Regular-102.otf */; };
4E8C17212A6509BB005B2392 /* Atkinson-Hyperlegible-Italic-102.otf in Resources */ = {isa = PBXBuildFile; fileRef = 4E8C171D2A6509BB005B2392 /* Atkinson-Hyperlegible-Italic-102.otf */; };
4E8C17222A6509BB005B2392 /* Atkinson-Hyperlegible-Bold-102.otf in Resources */ = {isa = PBXBuildFile; fileRef = 4E8C171E2A6509BB005B2392 /* Atkinson-Hyperlegible-Bold-102.otf */; };
@@ -330,7 +328,6 @@
4E7940DD29FC307C00A9AEA1 /* P2PSubjectV.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = P2PSubjectV.swift; sourceTree = "<group>"; };
4E7CFD372A532CE100CBAFF3 /* WhatToTest.en-US.txt */ = {isa = PBXFileReference; lastKnownFileType = text; path = "WhatToTest.en-US.txt"; sourceTree = "<group>"; };
4E87C8722A31CB7F001C6406 /* TransactionsEmptyView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TransactionsEmptyView.swift; sourceTree = "<group>"; };
- 4E87C8742A34B411001C6406 /* IncompleteRowV.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = IncompleteRowV.swift; sourceTree = "<group>"; };
4E8C171C2A6509BB005B2392 /* Atkinson-Hyperlegible-Regular-102.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Atkinson-Hyperlegible-Regular-102.otf"; sourceTree = "<group>"; };
4E8C171D2A6509BB005B2392 /* Atkinson-Hyperlegible-Italic-102.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Atkinson-Hyperlegible-Italic-102.otf"; sourceTree = "<group>"; };
4E8C171E2A6509BB005B2392 /* Atkinson-Hyperlegible-Bold-102.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Atkinson-Hyperlegible-Bold-102.otf"; sourceTree = "<group>"; };
@@ -696,7 +693,6 @@
4EB095362989CBFE0043A8A1 /* BalanceRowView.swift */,
4EB065432A4CD1A80039B91D /* TwoRowButtons.swift */,
4EB095382989CBFE0043A8A1 /* PendingRowView.swift */,
- 4E87C8742A34B411001C6406 /* IncompleteRowV.swift */,
);
path = Balances;
sourceTree = "<group>";
@@ -1044,7 +1040,6 @@
4E3EAE2D2A990778009F1BE8 /* Model+Exchange.swift in Sources */,
4E3EAE2E2A990778009F1BE8 /* QRCodeDetailView.swift in Sources */,
4E3EAE2F2A990778009F1BE8 /* TransactionsEmptyView.swift in Sources */,
- 4E3EAE302A990778009F1BE8 /* IncompleteRowV.swift in Sources */,
4E605DAF2AADDD13002FB9A7 /* UIScreen+screenSize.swift in Sources */,
4E3EAE312A990778009F1BE8 /* SendAmount.swift in Sources */,
4E3EAE332A990778009F1BE8 /* EqualIconWidthDomain.swift in Sources */,
@@ -1150,7 +1145,6 @@
4E3B4BC92A42BC4800CC88B8 /* Model+Exchange.swift in Sources */,
4E5A88F52A38A4FD00072618 /* QRCodeDetailView.swift in Sources */,
4E87C8732A31CB7F001C6406 /* TransactionsEmptyView.swift in Sources */,
- 4E87C8752A34B411001C6406 /* IncompleteRowV.swift in Sources */,
4E605DB02AADDD13002FB9A7 /* UIScreen+screenSize.swift in Sources */,
4E40E0BE29F25ABB00B85369 /* SendAmount.swift in Sources */,
4E8E25332A1CD39700A27BFA /* EqualIconWidthDomain.swift in Sources */,
diff --git a/TalerWallet1/Model/Model+Transactions.swift b/TalerWallet1/Model/Model+Transactions.swift
@@ -9,15 +9,9 @@ fileprivate let ASYNCDELAY: UInt = 0 //set e.g to 6 or 9 seconds for debugging
// MARK: -
extension WalletModel {
- static func specialTransactions(_ transactions: [Transaction]) -> [Transaction] {
- transactions.filter { transaction in
- transaction.isSpecial
- }
- }
-
static func completedTransactions(_ transactions: [Transaction]) -> [Transaction] {
transactions.filter { transaction in
- transaction.isDone
+ !transaction.isPending
}
}
static func pendingTransactions(_ transactions: [Transaction]) -> [Transaction] {
@@ -25,11 +19,6 @@ extension WalletModel {
transaction.isPending
}
}
- static func incompleteTransactions(_ transactions: [Transaction]) -> [Transaction] {
- transactions.filter { transaction in
- !transaction.isDone && !transaction.isPending
- }
- }
}
// MARK: -
diff --git a/TalerWallet1/Model/Transaction.swift b/TalerWallet1/Model/Transaction.swift
@@ -447,7 +447,6 @@ enum Transaction: Decodable, Hashable, Identifiable, Sendable {
var isAbSuspended: Bool { common.txState.major == .suspendedAborting }
var isFailed : Bool { common.txState.major == .failed }
var isExpired : Bool { common.txState.major == .expired }
- var isSpecial : Bool { !(isDone || isPending) }
var isAbortable : Bool { common.txActions.contains(.abort) }
var isFailable : Bool { common.txActions.contains(.fail) }
diff --git a/TalerWallet1/Views/Balances/BalancesSectionView.swift b/TalerWallet1/Views/Balances/BalancesSectionView.swift
@@ -25,13 +25,11 @@ struct BalancesSectionView {
@EnvironmentObject private var model: WalletModel
@EnvironmentObject private var controller: Controller
@AppStorage("iconOnly") var iconOnly: Bool = false
-// @AppStorage("moreContrast") var moreContrast: Bool = false
@State private var isShowingDetailView = false
@State private var transactions: [Transaction] = []
@State private var completedTransactions: [Transaction] = []
@State private var pendingTransactions: [Transaction] = []
- @State private var incompleteTransactions: [Transaction] = []
func reloadOneAction(_ transactionId: String) async throws -> Transaction {
return try await model.getTransactionByIdT(transactionId)
@@ -51,12 +49,6 @@ struct BalancesSectionView {
transactions = await model.transactionsT(stack.push(), currency: currency)
pendingTransactions = WalletModel.pendingTransactions(transactions)
}
-
- func reloadIncomplete(_ stack: CallStack) async -> () {
- let currency = balance.scopeInfo.currency
- transactions = await model.transactionsT(stack.push(), currency: currency)
- incompleteTransactions = WalletModel.incompleteTransactions(transactions)
- }
}
extension BalancesSectionView: View {
@@ -91,23 +83,6 @@ extension BalancesSectionView: View {
reloadPending: reloadPending,
reloadOneAction: reloadOneAction)
}
- if incompleteTransactions.count > 0 {
- NavigationLink {
-//let _ = print("button: Incomplete Transactions: \(currency)")
- LazyView {
- TransactionsListView(stack: stack.push(),
- navTitle: String(localized: "Incomplete", comment: "ViewTitle of TransactionList"),
- currency: currency,
- transactions: incompleteTransactions,
- showUpDown: false,
- reloadAllAction: reloadIncomplete,
- reloadOneAction: reloadOneAction)
- }
- } label: {
- IncompleteRowV(incompleteTransactions: $incompleteTransactions)
- }
-
- }
} header: {
BarGraphHeader(stack: stack.push(), currency: currency)
}.id(sectionID)
@@ -117,7 +92,6 @@ extension BalancesSectionView: View {
let response = await model.transactionsT(stack.push(".task - reload Transactions"), currency: currency)
transactions = response
pendingTransactions = WalletModel.pendingTransactions(response)
- incompleteTransactions = WalletModel.incompleteTransactions(response)
completedTransactions = WalletModel.completedTransactions(response)
shownSectionID = sectionID
// } else {
diff --git a/TalerWallet1/Views/Balances/IncompleteRowV.swift b/TalerWallet1/Views/Balances/IncompleteRowV.swift
@@ -1,39 +0,0 @@
-/*
- * This file is part of GNU Taler, ©2022-23 Taler Systems S.A.
- * See LICENSE.md
- */
-import SwiftUI
-import taler_swift
-
-/// This view shows an incompleteTransactions row in a currency section, below the balance
-struct IncompleteRowV: View {
- @Binding var incompleteTransactions: [Transaction]
-
- var body: some View {
- let count = incompleteTransactions.count
- HStack {
- Spacer()
- Text("\(count) incomplete transactions")
- .accessibilityFont(.title2)
- .foregroundColor(WalletColors().incompleteColor)
- Spacer()
- }
- }
-}
-// MARK: - Preview
-#if DEBUG
-fileprivate struct IncompleteRowContainer: View {
- @State var incompleteTransactions: [Transaction] = []
-
- var body: some View {
- IncompleteRowV(incompleteTransactions: $incompleteTransactions)
- }
-}
-struct IncompleteRowV_Previews: PreviewProvider {
- static var previews: some View {
- List {
- IncompleteRowContainer()
- }
- }
-}
-#endif