From 48540f62644b4c2e4e96095b11e202cb62e3e93d Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Tue, 13 Sep 2022 13:25:41 +0200 Subject: wallet-core: introduce easier syntax for transactions --- .../taler-wallet-core/src/operations/exchanges.ts | 50 ++++++++-------------- 1 file changed, 19 insertions(+), 31 deletions(-) (limited to 'packages/taler-wallet-core/src/operations/exchanges.ts') diff --git a/packages/taler-wallet-core/src/operations/exchanges.ts b/packages/taler-wallet-core/src/operations/exchanges.ts index 1021da6b6..504978441 100644 --- a/packages/taler-wallet-core/src/operations/exchanges.ts +++ b/packages/taler-wallet-core/src/operations/exchanges.ts @@ -161,10 +161,7 @@ export async function getExchangeDetails( } getExchangeDetails.makeContext = (db: DbAccess) => - db.mktx((x) => ({ - exchanges: x.exchanges, - exchangeDetails: x.exchangeDetails, - })); + db.mktx((x) => [x.exchanges, x.exchangeDetails]); export async function updateExchangeTermsOfService( ws: InternalWalletState, @@ -172,10 +169,7 @@ export async function updateExchangeTermsOfService( tos: ExchangeTosDownloadResult, ): Promise { await ws.db - .mktx((x) => ({ - exchanges: x.exchanges, - exchangeDetails: x.exchangeDetails, - })) + .mktx((x) => [x.exchanges, x.exchangeDetails]) .runReadWrite(async (tx) => { const d = await getExchangeDetails(tx, exchangeBaseUrl); if (d) { @@ -193,10 +187,7 @@ export async function acceptExchangeTermsOfService( etag: string | undefined, ): Promise { await ws.db - .mktx((x) => ({ - exchanges: x.exchanges, - exchangeDetails: x.exchangeDetails, - })) + .mktx((x) => [x.exchanges, x.exchangeDetails]) .runReadWrite(async (tx) => { const d = await getExchangeDetails(tx, exchangeBaseUrl); if (d) { @@ -326,10 +317,7 @@ async function provideExchangeRecord( exchangeDetails: ExchangeDetailsRecord | undefined; }> { return await ws.db - .mktx((x) => ({ - exchanges: x.exchanges, - exchangeDetails: x.exchangeDetails, - })) + .mktx((x) => [x.exchanges, x.exchangeDetails]) .runReadWrite(async (tx) => { let exchange = await tx.exchanges.get(baseUrl); if (!exchange) { @@ -569,14 +557,14 @@ export async function updateExchangeFromUrlHandler( logger.trace("updating exchange info in database"); const updated = await ws.db - .mktx((x) => ({ - exchanges: x.exchanges, - exchangeDetails: x.exchangeDetails, - denominations: x.denominations, - coins: x.coins, - refreshGroups: x.refreshGroups, - recoupGroups: x.recoupGroups, - })) + .mktx((x) => [ + x.exchanges, + x.exchangeDetails, + x.denominations, + x.coins, + x.refreshGroups, + x.recoupGroups, + ]) .runReadWrite(async (tx) => { const r = await tx.exchanges.get(baseUrl); if (!r) { @@ -770,12 +758,12 @@ export async function getExchangeTrust( let isAudited = false; return await ws.db - .mktx((x) => ({ - exchanges: x.exchanges, - exchangeDetails: x.exchangeDetails, - exchangesTrustStore: x.exchangeTrust, - auditorTrust: x.auditorTrust, - })) + .mktx((x) => [ + x.exchanges, + x.exchangeDetails, + x.exchangeTrust, + x.auditorTrust, + ]) .runReadOnly(async (tx) => { const exchangeDetails = await getExchangeDetails( tx, @@ -786,7 +774,7 @@ export async function getExchangeTrust( throw Error(`exchange ${exchangeInfo.baseUrl} details not available`); } const exchangeTrustRecord = - await tx.exchangesTrustStore.indexes.byExchangeMasterPub.get( + await tx.exchangeTrust.indexes.byExchangeMasterPub.get( exchangeDetails.masterPublicKey, ); if ( -- cgit v1.2.3