aboutsummaryrefslogtreecommitdiff
path: root/packages/taler-wallet-core/src/operations/backup
diff options
context:
space:
mode:
authorSebastian <sebasjm@gmail.com>2023-07-03 12:42:44 -0300
committerSebastian <sebasjm@gmail.com>2023-07-03 12:42:44 -0300
commit5d76573ac054c4204e95a26dc286eb0af1f2d10d (patch)
tree602e90b51b1f5989776bc0b727b7956a3432c676 /packages/taler-wallet-core/src/operations/backup
parentf47b5bd783def7481233f94275e333365d50b08b (diff)
downloadwallet-core-5d76573ac054c4204e95a26dc286eb0af1f2d10d.tar.xz
#7741 share payment
save shared state in backup if purchase is shared check before making the payment of before claim the order already confirmed order can return without effective if coin selection was not made sharePayment operation
Diffstat (limited to 'packages/taler-wallet-core/src/operations/backup')
-rw-r--r--packages/taler-wallet-core/src/operations/backup/export.ts4
-rw-r--r--packages/taler-wallet-core/src/operations/backup/import.ts10
2 files changed, 13 insertions, 1 deletions
diff --git a/packages/taler-wallet-core/src/operations/backup/export.ts b/packages/taler-wallet-core/src/operations/backup/export.ts
index 23c6e787a..21ba5dc37 100644
--- a/packages/taler-wallet-core/src/operations/backup/export.ts
+++ b/packages/taler-wallet-core/src/operations/backup/export.ts
@@ -422,6 +422,9 @@ export async function exportBackup(
case PurchaseStatus.PendingPaying:
propStatus = BackupProposalStatus.Proposed;
break;
+ case PurchaseStatus.DialogShared:
+ propStatus = BackupProposalStatus.Shared;
+ break;
case PurchaseStatus.FailedClaim:
case PurchaseStatus.AbortedIncompletePayment:
propStatus = BackupProposalStatus.PermanentlyFailed;
@@ -483,6 +486,7 @@ export async function exportBackup(
repurchase_proposal_id: purch.repurchaseProposalId,
download_session_id: purch.downloadSessionId,
timestamp_proposed: purch.timestamp,
+ shared: purch.shared,
});
});
diff --git a/packages/taler-wallet-core/src/operations/backup/import.ts b/packages/taler-wallet-core/src/operations/backup/import.ts
index 7f73a14b0..b161aa8f2 100644
--- a/packages/taler-wallet-core/src/operations/backup/import.ts
+++ b/packages/taler-wallet-core/src/operations/backup/import.ts
@@ -62,7 +62,11 @@ import { InternalWalletState } from "../../internal-wallet-state.js";
import { assertUnreachable } from "../../util/assertUnreachable.js";
import { checkLogicInvariant } from "../../util/invariants.js";
import { GetReadOnlyAccess, GetReadWriteAccess } from "../../util/query.js";
-import { constructTombstone, makeCoinAvailable, TombstoneTag } from "../common.js";
+import {
+ constructTombstone,
+ makeCoinAvailable,
+ TombstoneTag,
+} from "../common.js";
import { getExchangeDetails } from "../exchanges.js";
import { extractContractData } from "../pay-merchant.js";
import { provideBackupState } from "./state.js";
@@ -576,6 +580,9 @@ export async function importBackup(
case BackupProposalStatus.Paid:
proposalStatus = PurchaseStatus.Done;
break;
+ case BackupProposalStatus.Shared:
+ proposalStatus = PurchaseStatus.DialogShared;
+ break;
case BackupProposalStatus.Proposed:
proposalStatus = PurchaseStatus.DialogProposed;
break;
@@ -702,6 +709,7 @@ export async function importBackup(
repurchaseProposalId: backupPurchase.repurchase_proposal_id,
purchaseStatus: proposalStatus,
timestamp: backupPurchase.timestamp_proposed,
+ shared: backupPurchase.shared,
});
}
}