aboutsummaryrefslogtreecommitdiff
path: root/packages/taler-wallet-core/src/operations/transactions.ts
diff options
context:
space:
mode:
authorSebastian <sebasjm@gmail.com>2022-10-21 10:11:41 -0300
committerSebastian <sebasjm@gmail.com>2022-10-21 10:11:41 -0300
commite63f202e369c9dd84bfcdb273a7219e936d1f699 (patch)
treef59afba3985a53ba23d5df022d872b2569221c53 /packages/taler-wallet-core/src/operations/transactions.ts
parent683c89ab71a71fbd26bda58457ba5792e79d577f (diff)
downloadwallet-core-e63f202e369c9dd84bfcdb273a7219e936d1f699.tar.xz
better workaround with duplication
Diffstat (limited to 'packages/taler-wallet-core/src/operations/transactions.ts')
-rw-r--r--packages/taler-wallet-core/src/operations/transactions.ts38
1 files changed, 4 insertions, 34 deletions
diff --git a/packages/taler-wallet-core/src/operations/transactions.ts b/packages/taler-wallet-core/src/operations/transactions.ts
index fea165588..3f1d0a224 100644
--- a/packages/taler-wallet-core/src/operations/transactions.ts
+++ b/packages/taler-wallet-core/src/operations/transactions.ts
@@ -212,28 +212,13 @@ export async function getTransactionById(
}),
);
- // const download = await expectProposalDownload(ws, purchase);
+ const download = await expectProposalDownload(ws, purchase, tx);
- // FIXME: this is what expectProposalDownload, but nested tx is not supported
- if (!purchase.download) {
- throw Error("expected proposal to be downloaded");
- }
- const contractTerms = await tx.contractTerms.get(
- purchase.download.contractTermsHash,
- );
- if (!contractTerms) {
- throw Error("contract terms not found");
- }
- const contractData = extractContractData(
- contractTerms.contractTermsRaw,
- purchase.download.contractTermsHash,
- purchase.download.contractTermsMerchantSig,
- );
const cleanRefunds = filteredRefunds.filter(
(x): x is WalletRefundItem => !!x,
);
- // const contractData = download.contractData;
+ const contractData = download.contractData;
const refunds = mergeRefundByExecutionTime(
cleanRefunds,
Amounts.getZero(contractData.amount.currency),
@@ -306,23 +291,8 @@ export async function getTransactionById(
),
);
if (t) throw Error("deleted");
- // const download = await expectProposalDownload(ws, purchase);
- // const contractData = download.contractData;
- // FIXME: this is what expectProposalDownload, but nested tx is not supported
- if (!purchase.download) {
- throw Error("expected proposal to be downloaded");
- }
- const contractTerms = await tx.contractTerms.get(
- purchase.download.contractTermsHash,
- );
- if (!contractTerms) {
- throw Error("contract terms not found");
- }
- const contractData = extractContractData(
- contractTerms.contractTermsRaw,
- purchase.download.contractTermsHash,
- purchase.download.contractTermsMerchantSig,
- );
+ const download = await expectProposalDownload(ws, purchase, tx);
+ const contractData = download.contractData;
const refunds = mergeRefundByExecutionTime(
[theRefund],
Amounts.getZero(contractData.amount.currency),