From cc27750a79d8d4dbbedaa0dfcf21fe21a7464936 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Mon, 11 Sep 2023 18:19:45 +0200 Subject: -WalletContractData doesn't belong to the DB --- packages/taler-wallet-core/src/db.ts | 46 ---------------------- .../taler-wallet-core/src/operations/balance.ts | 6 +-- .../src/operations/pay-merchant.ts | 16 +++----- .../src/operations/transactions.ts | 2 +- .../taler-wallet-core/src/util/coinSelection.ts | 18 ++------- packages/taler-wallet-core/src/wallet-api-types.ts | 24 +++++------ 6 files changed, 24 insertions(+), 88 deletions(-) (limited to 'packages/taler-wallet-core') diff --git a/packages/taler-wallet-core/src/db.ts b/packages/taler-wallet-core/src/db.ts index 3a8109320..ba1f5b8c0 100644 --- a/packages/taler-wallet-core/src/db.ts +++ b/packages/taler-wallet-core/src/db.ts @@ -1035,52 +1035,6 @@ export enum RefundReason { AbortRefund = "abort-pay-refund", } -export interface AllowedAuditorInfo { - auditorBaseUrl: string; - auditorPub: string; -} - -export interface AllowedExchangeInfo { - exchangeBaseUrl: string; - exchangePub: string; -} - -/** - * Data extracted from the contract terms that is relevant for payment - * processing in the wallet. - */ -export interface WalletContractData { - /** - * Fulfillment URL, or the empty string if the order has no fulfillment URL. - * - * Stored as a non-nullable string as we use this field for IndexedDB indexing. - */ - fulfillmentUrl: string; - - contractTermsHash: string; - fulfillmentMessage?: string; - fulfillmentMessageI18n?: InternationalizedString; - merchantSig: string; - merchantPub: string; - merchant: MerchantInfo; - amount: AmountString; - orderId: string; - merchantBaseUrl: string; - summary: string; - summaryI18n: { [lang_tag: string]: string } | undefined; - autoRefund: TalerProtocolDuration | undefined; - maxWireFee: AmountString; - wireFeeAmortization: number; - payDeadline: TalerProtocolTimestamp; - refundDeadline: TalerProtocolTimestamp; - allowedExchanges: AllowedExchangeInfo[]; - timestamp: TalerProtocolTimestamp; - wireMethod: string; - wireInfoHash: string; - maxDepositFee: AmountString; - minimumAge?: number; -} - export enum PurchaseStatus { /** * Not downloaded yet. diff --git a/packages/taler-wallet-core/src/operations/balance.ts b/packages/taler-wallet-core/src/operations/balance.ts index a20ded2af..8034f78ea 100644 --- a/packages/taler-wallet-core/src/operations/balance.ts +++ b/packages/taler-wallet-core/src/operations/balance.ts @@ -50,6 +50,8 @@ * Imports. */ import { + AllowedAuditorInfo, + AllowedExchangeInfo, AmountJson, Amounts, BalancesResponse, @@ -60,17 +62,15 @@ import { ScopeType, } from "@gnu-taler/taler-util"; import { - AllowedAuditorInfo, - AllowedExchangeInfo, RefreshGroupRecord, WalletStoresV1, WithdrawalGroupStatus, } from "../db.js"; import { InternalWalletState } from "../internal-wallet-state.js"; +import { assertUnreachable } from "../util/assertUnreachable.js"; import { checkLogicInvariant } from "../util/invariants.js"; import { GetReadOnlyAccess } from "../util/query.js"; import { getExchangeDetails } from "./exchanges.js"; -import { assertUnreachable } from "../util/assertUnreachable.js"; /** * Logger. diff --git a/packages/taler-wallet-core/src/operations/pay-merchant.ts b/packages/taler-wallet-core/src/operations/pay-merchant.ts index 57367bb20..fe0cbeda0 100644 --- a/packages/taler-wallet-core/src/operations/pay-merchant.ts +++ b/packages/taler-wallet-core/src/operations/pay-merchant.ts @@ -63,7 +63,6 @@ import { RefreshReason, SharePaymentResult, StartRefundQueryForUriResponse, - stringifyPaytoUri, stringifyPayUri, stringifyTalerUri, TalerError, @@ -78,6 +77,7 @@ import { TransactionState, TransactionType, URL, + WalletContractData, } from "@gnu-taler/taler-util"; import { getHttpResponseErrorDetails, @@ -95,7 +95,6 @@ import { PurchaseRecord, PurchaseStatus, RefundReason, - WalletContractData, WalletStoresV1, } from "../db.js"; import { @@ -115,15 +114,13 @@ import { checkDbInvariant } from "../util/invariants.js"; import { GetReadOnlyAccess } from "../util/query.js"; import { constructTaskIdentifier, - TaskRunResult, - TaskRunResultType, RetryInfo, - TaskIdentifiers, -} from "./common.js"; -import { runLongpollAsync, runTaskWithErrorReporting, spendCoins, + TaskIdentifiers, + TaskRunResult, + TaskRunResultType, } from "./common.js"; import { calculateRefreshOutput, @@ -173,10 +170,7 @@ export async function getTotalPaymentCost( const allDenoms = await tx.denominations.indexes.byExchangeBaseUrl .iter(coin.exchangeBaseUrl) .filter((x) => - Amounts.isSameCurrency( - x.value, - pcs.coinContributions[i], - ), + Amounts.isSameCurrency(x.value, pcs.coinContributions[i]), ); const amountLeft = Amounts.sub( denom.value, diff --git a/packages/taler-wallet-core/src/operations/transactions.ts b/packages/taler-wallet-core/src/operations/transactions.ts index 7bdb9af5b..31655ad71 100644 --- a/packages/taler-wallet-core/src/operations/transactions.ts +++ b/packages/taler-wallet-core/src/operations/transactions.ts @@ -41,6 +41,7 @@ import { TransactionsResponse, TransactionState, TransactionType, + WalletContractData, WithdrawalType, } from "@gnu-taler/taler-util"; import { @@ -60,7 +61,6 @@ import { RefreshOperationStatus, RefundGroupRecord, RewardRecord, - WalletContractData, WithdrawalGroupRecord, WithdrawalGroupStatus, WithdrawalRecordType, diff --git a/packages/taler-wallet-core/src/util/coinSelection.ts b/packages/taler-wallet-core/src/util/coinSelection.ts index ef2f85789..6fd0f1b86 100644 --- a/packages/taler-wallet-core/src/util/coinSelection.ts +++ b/packages/taler-wallet-core/src/util/coinSelection.ts @@ -28,21 +28,20 @@ import { AbsoluteTime, AgeCommitmentProof, AgeRestriction, + AllowedAuditorInfo, + AllowedExchangeInfo, AmountJson, AmountLike, - AmountResponse, Amounts, AmountString, CoinPublicKeyString, CoinStatus, - ConvertAmountRequest, DenominationInfo, DenominationPubKey, DenomSelectionState, Duration, ForcedCoinSel, ForcedDenomSel, - GetAmountRequest, j2s, Logger, parsePaytoUri, @@ -50,24 +49,13 @@ import { PayMerchantInsufficientBalanceDetails, PayPeerInsufficientBalanceDetails, strcmp, - TransactionAmountMode, - TransactionType, UnblindedSignature, } from "@gnu-taler/taler-util"; +import { DenominationRecord } from "../db.js"; import { - AllowedAuditorInfo, - AllowedExchangeInfo, - DenominationRecord, -} from "../db.js"; -import { - DbReadOnlyTransaction, getExchangeDetails, - GetReadOnlyAccess, - GetReadWriteAccess, isWithdrawableDenom, - StoreNames, WalletDbReadOnlyTransaction, - WalletStoresV1, } from "../index.js"; import { InternalWalletState } from "../internal-wallet-state.js"; import { diff --git a/packages/taler-wallet-core/src/wallet-api-types.ts b/packages/taler-wallet-core/src/wallet-api-types.ts index d89ad257a..67c05a42f 100644 --- a/packages/taler-wallet-core/src/wallet-api-types.ts +++ b/packages/taler-wallet-core/src/wallet-api-types.ts @@ -38,7 +38,6 @@ import { ApplyDevExperimentRequest, BackupRecovery, BalancesResponse, - FailTransactionRequest, CheckPeerPullCreditRequest, CheckPeerPullCreditResponse, CheckPeerPushDebitRequest, @@ -51,14 +50,19 @@ import { ConvertAmountRequest, CreateDepositGroupRequest, CreateDepositGroupResponse, + CreateStoredBackupResponse, + DeleteStoredBackupRequest, DeleteTransactionRequest, ExchangeDetailedResponse, ExchangesListResponse, + FailTransactionRequest, ForceRefreshRequest, ForgetKnownBankAccountsRequest, GetAmountRequest, GetBalanceDetailRequest, GetContractTermsDetailsRequest, + GetCurrencyInfoRequest, + GetCurrencyInfoResponse, GetExchangeTosRequest, GetExchangeTosResult, GetPlanForOperationRequest, @@ -85,16 +89,21 @@ import { PreparePeerPushCreditRequest, PreparePeerPushCreditResponse, PrepareRefundRequest, - PrepareRewardRequest as PrepareRewardRequest, + PrepareRewardRequest, PrepareTipResult as PrepareRewardResult, + RecoverStoredBackupRequest, RecoveryLoadRequest, RetryTransactionRequest, SetCoinSuspendedRequest, SetWalletDeviceIdRequest, + SharePaymentRequest, + SharePaymentResult, StartRefundQueryForUriResponse, StartRefundQueryRequest, + StoredBackupList, TestPayArgs, TestPayResult, + TestingSetTimetravelRequest, Transaction, TransactionByIdRequest, TransactionsRequest, @@ -106,22 +115,13 @@ import { UserAttentionsResponse, ValidateIbanRequest, ValidateIbanResponse, + WalletContractData, WalletCoreVersion, WalletCurrencyInfo, WithdrawFakebankRequest, WithdrawTestBalanceRequest, WithdrawUriInfoResponse, - SharePaymentRequest, - SharePaymentResult, - GetCurrencyInfoRequest, - GetCurrencyInfoResponse, - StoredBackupList, - CreateStoredBackupResponse, - RecoverStoredBackupRequest, - DeleteStoredBackupRequest, - TestingSetTimetravelRequest, } from "@gnu-taler/taler-util"; -import { WalletContractData } from "./db.js"; import { AddBackupProviderRequest, AddBackupProviderResponse, -- cgit v1.2.3