summaryrefslogtreecommitdiff
path: root/impls/monero.ts/src/transaction_history.ts
diff options
context:
space:
mode:
authorKonstantin Ullrich <konstantinullrich12@gmail.com>2024-10-07 12:37:30 +0200
committerKonstantin Ullrich <konstantinullrich12@gmail.com>2024-10-07 12:37:30 +0200
commit98272ee381bd07081502dd426226f58c879300a6 (patch)
tree672f6f06727dbc1c84270973ce13e9403913e481 /impls/monero.ts/src/transaction_history.ts
parent04b29d84a2c368c677cf5ec946269203622ca170 (diff)
parent67f4baa015a4407d096e35b6e5a81d72932fb55f (diff)
Merge branch 'master' into ledger
# Conflicts: # .github/workflows/full_check.yaml # impls/monero.dart/lib/monero.dart # impls/monero.dart/pubspec.yaml # patches/monero/0016-add-dummy-device-for-ledger.patch
Diffstat (limited to 'impls/monero.ts/src/transaction_history.ts')
-rw-r--r--impls/monero.ts/src/transaction_history.ts38
1 files changed, 38 insertions, 0 deletions
diff --git a/impls/monero.ts/src/transaction_history.ts b/impls/monero.ts/src/transaction_history.ts
new file mode 100644
index 0000000..cc76fc2
--- /dev/null
+++ b/impls/monero.ts/src/transaction_history.ts
@@ -0,0 +1,38 @@
+import { dylib } from "./bindings.ts";
+import { TransactionInfo, TransactionInfoPtr } from "./transaction_info.ts";
+import { CString } from "./utils.ts";
+
+export type TransactionHistoryPtr = Deno.PointerObject<"transactionHistory">;
+
+export class TransactionHistory {
+ #txHistoryPtr: TransactionHistoryPtr;
+
+ constructor(txHistoryPtr: TransactionHistoryPtr) {
+ this.#txHistoryPtr = txHistoryPtr;
+ }
+
+ async count(): Promise<number> {
+ return await dylib.symbols.MONERO_TransactionHistory_count(this.#txHistoryPtr);
+ }
+
+ async transaction(index: number): Promise<TransactionInfo> {
+ return new TransactionInfo(
+ (await dylib.symbols.MONERO_TransactionHistory_transaction(
+ this.#txHistoryPtr,
+ index,
+ )) as TransactionInfoPtr,
+ );
+ }
+
+ async refresh(): Promise<void> {
+ await dylib.symbols.MONERO_TransactionHistory_refresh(this.#txHistoryPtr);
+ }
+
+ async setTxNote(transactionId: string, note: string): Promise<void> {
+ await dylib.symbols.MONERO_TransactionHistory_setTxNote(
+ this.#txHistoryPtr,
+ CString(transactionId),
+ CString(note),
+ );
+ }
+}