diff options
Diffstat (limited to 'packages/taler-wallet-core/src')
-rw-r--r-- | packages/taler-wallet-core/src/db.ts | 2 | ||||
-rw-r--r-- | packages/taler-wallet-core/src/operations/pay.ts | 2 | ||||
-rw-r--r-- | packages/taler-wallet-core/src/operations/transactions.ts | 4 | ||||
-rw-r--r-- | packages/taler-wallet-core/src/types/dbTypes.ts | 9 |
4 files changed, 13 insertions, 4 deletions
diff --git a/packages/taler-wallet-core/src/db.ts b/packages/taler-wallet-core/src/db.ts index f4d0b911e..a55d9bb16 100644 --- a/packages/taler-wallet-core/src/db.ts +++ b/packages/taler-wallet-core/src/db.ts @@ -8,7 +8,7 @@ import { IDBFactory, IDBDatabase } from "idb-bridge"; * with each major change. When incrementing the major version, * the wallet should import data from the previous version. */ -const TALER_DB_NAME = "taler-walletdb-v7"; +const TALER_DB_NAME = "taler-walletdb-v8"; /** * Current database minor version, should be incremented diff --git a/packages/taler-wallet-core/src/operations/pay.ts b/packages/taler-wallet-core/src/operations/pay.ts index 6b45e3da2..7b8a1efac 100644 --- a/packages/taler-wallet-core/src/operations/pay.ts +++ b/packages/taler-wallet-core/src/operations/pay.ts @@ -686,7 +686,7 @@ async function processDownloadProposalImpl( contractData: { amount, contractTermsHash: contractTermsHash, - fulfillmentUrl: parsedContractTerms.fulfillment_url, + fulfillmentUrl: parsedContractTerms.fulfillment_url ?? "", merchantBaseUrl: parsedContractTerms.merchant_base_url, merchantPub: parsedContractTerms.merchant_pub, merchantSig: proposalResp.sig, diff --git a/packages/taler-wallet-core/src/operations/transactions.ts b/packages/taler-wallet-core/src/operations/transactions.ts index 7b42b9a5f..d869ed770 100644 --- a/packages/taler-wallet-core/src/operations/transactions.ts +++ b/packages/taler-wallet-core/src/operations/transactions.ts @@ -235,7 +235,6 @@ export async function getTransactions( return; } const info: OrderShortInfo = { - fulfillmentUrl: pr.contractData.fulfillmentUrl, merchant: pr.contractData.merchant, orderId: pr.contractData.orderId, products: pr.contractData.products, @@ -243,6 +242,9 @@ export async function getTransactions( summary_i18n: pr.contractData.summaryI18n, contractTermsHash: pr.contractData.contractTermsHash, }; + if (pr.contractData.fulfillmentUrl !== "") { + info.fulfillmentUrl = pr.contractData.fulfillmentUrl; + } const paymentTransactionId = makeEventId( TransactionType.Payment, pr.proposalId, diff --git a/packages/taler-wallet-core/src/types/dbTypes.ts b/packages/taler-wallet-core/src/types/dbTypes.ts index 79100b69f..0b2de8b0c 100644 --- a/packages/taler-wallet-core/src/types/dbTypes.ts +++ b/packages/taler-wallet-core/src/types/dbTypes.ts @@ -1271,7 +1271,14 @@ export interface AllowedExchangeInfo { export interface WalletContractData { products?: Product[]; summaryI18n: { [lang_tag: string]: string } | undefined; - fulfillmentUrl?: string; + + /** + * 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; |