From b2d0ad57ddf251a109d536cdc49fb6505dbdc50c Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Tue, 11 Jul 2023 15:41:48 +0200 Subject: sqlite3 backend for idb-bridge / wallet-core --- packages/taler-util/src/index.qtart.ts | 27 +++++++++++++++++++++++++++ packages/taler-util/src/transactions-types.ts | 3 +++ packages/taler-util/src/wallet-types.ts | 7 +++++++ 3 files changed, 37 insertions(+) create mode 100644 packages/taler-util/src/index.qtart.ts (limited to 'packages/taler-util/src') diff --git a/packages/taler-util/src/index.qtart.ts b/packages/taler-util/src/index.qtart.ts new file mode 100644 index 000000000..ddb9bcfd4 --- /dev/null +++ b/packages/taler-util/src/index.qtart.ts @@ -0,0 +1,27 @@ +/* + This file is part of GNU Taler + (C) 2021 Taler Systems S.A. + + GNU Taler is free software; you can redistribute it and/or modify it under the + terms of the GNU General Public License as published by the Free Software + Foundation; either version 3, or (at your option) any later version. + + GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with + GNU Taler; see the file COPYING. If not, see + */ + +import { setPRNG } from "./nacl-fast.js"; + +setPRNG(function (x: Uint8Array, n: number) { + // @ts-ignore + const va = globalThis._tart.randomBytes(n); + const v = new Uint8Array(va); + for (let i = 0; i < n; i++) x[i] = v[i]; + for (let i = 0; i < v.length; i++) v[i] = 0; +}); + +export * from "./index.js"; diff --git a/packages/taler-util/src/transactions-types.ts b/packages/taler-util/src/transactions-types.ts index 2d278e3e8..6331bc731 100644 --- a/packages/taler-util/src/transactions-types.ts +++ b/packages/taler-util/src/transactions-types.ts @@ -48,6 +48,7 @@ import { RefreshReason, TalerErrorDetail, TransactionIdStr, + TransactionStateFilter, } from "./wallet-types.js"; export interface TransactionsRequest { @@ -65,6 +66,8 @@ export interface TransactionsRequest { * If true, include all refreshes in the transactions list. */ includeRefreshes?: boolean; + + filterByState?: TransactionStateFilter } export interface TransactionState { diff --git a/packages/taler-util/src/wallet-types.ts b/packages/taler-util/src/wallet-types.ts index 3179cd6f3..04fb43ec6 100644 --- a/packages/taler-util/src/wallet-types.ts +++ b/packages/taler-util/src/wallet-types.ts @@ -2644,3 +2644,10 @@ export const codecForValidateIbanResponse = (): Codec => buildCodecForObject() .property("valid", codecForBoolean()) .build("ValidateIbanResponse"); + +export type TransactionStateFilter = "nonfinal"; + +export interface TransactionRecordFilter { + onlyState?: TransactionStateFilter; + onlyCurrency?: string; +} -- cgit v1.2.3