mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2025-03-28 01:58:56 +00:00
v4.24.0 (#2102)
* - Add Decred Wallet - Remove Haven Wallet - Fix and Improve Solana Wallet - Improve app usability and user experience - User interface enhancements - Bug fixes * Release candidate feedback fixes * Release candidate feedback fixes * update release notes [skip ci] * fix iOS stupidity [skip ci] * minor fix * decred: Do not create log file. (#2106) (#2107) Co-authored-by: JoeGruffins <34998433+JoeGruffins@users.noreply.github.com> * fix Monero HWW * fix Monero view only wallet * fix background sync for hardware and viewonly wallets * check for status on correct wptr * minor fixes [skip ci] --------- Co-authored-by: JoeGruffins <34998433+JoeGruffins@users.noreply.github.com> Co-authored-by: Czarek Nakamoto <cyjan@mrcyjanek.net>
This commit is contained in:
parent
13dc6de8dd
commit
0aa563ead7
60 changed files with 304 additions and 290 deletions
assets/text
cw_bitcoin
cw_core
cw_decred
cw_monero
cw_nano
cw_wownero
cw_zano
ios
lib
monero
src/screens
view_model
macos
res/values
strings_ar.arbstrings_bg.arbstrings_cs.arbstrings_de.arbstrings_en.arbstrings_es.arbstrings_fr.arbstrings_ha.arbstrings_hi.arbstrings_hr.arbstrings_hy.arbstrings_id.arbstrings_it.arbstrings_ja.arbstrings_ko.arbstrings_my.arbstrings_nl.arbstrings_pl.arbstrings_pt.arbstrings_ru.arbstrings_th.arbstrings_tl.arbstrings_tr.arbstrings_uk.arbstrings_ur.arbstrings_vi.arbstrings_yo.arbstrings_zh.arb
scripts
|
@ -1,3 +1,5 @@
|
|||
UI/UX enhancements
|
||||
Stability improvements
|
||||
Add background sync to Monero
|
||||
Enhance Backup files
|
||||
Improve app usability and user experience
|
||||
User interface enhancements
|
||||
Bug fixes
|
|
@ -1 +1,8 @@
|
|||
Update for Zano's Hard fork
|
||||
Add background sync to Monero
|
||||
Add Decred Wallet
|
||||
Remove Haven Wallet
|
||||
Fix and Improve Solana Wallet
|
||||
Enhance Backup files
|
||||
Improve app usability and user experience
|
||||
User interface enhancements
|
||||
Bug fixes
|
|
@ -29,10 +29,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: asn1lib
|
||||
sha256: "1c296cd268f486cabcc3930e9b93a8133169305f18d722916e675959a88f6d2c"
|
||||
sha256: "4bae5ae63e6d6dd17c4aac8086f3dec26c0236f6a0f03416c6c19d830c367cf5"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.5.9"
|
||||
version: "1.5.8"
|
||||
async:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -129,18 +129,18 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: build_config
|
||||
sha256: "4ae2de3e1e67ea270081eaee972e1bd8f027d459f249e0f1186730784c2e7e33"
|
||||
sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.1.2"
|
||||
version: "1.1.1"
|
||||
build_daemon:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: build_daemon
|
||||
sha256: "8e928697a82be082206edb0b9c99c5a4ad6bc31c9e9b8b2f291ae65cd4a25daa"
|
||||
sha256: "79b2aef6ac2ed00046867ed354c88778c9c0f029df8a20fe10b5436826721ef9"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.0.4"
|
||||
version: "4.0.2"
|
||||
build_resolvers:
|
||||
dependency: "direct dev"
|
||||
description:
|
||||
|
@ -495,10 +495,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: http_parser
|
||||
sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571"
|
||||
sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.1.2"
|
||||
version: "4.0.2"
|
||||
intl:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
@ -794,10 +794,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: pubspec_parse
|
||||
sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082"
|
||||
sha256: "81876843eb50dc2e1e5b151792c9a985c5ed2536914115ed04e9c8528f6647b0"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.5.0"
|
||||
version: "1.4.0"
|
||||
quiver:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -882,10 +882,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: shelf
|
||||
sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12
|
||||
sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.4.2"
|
||||
version: "1.4.1"
|
||||
shelf_web_socket:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -1117,5 +1117,5 @@ packages:
|
|||
source: hosted
|
||||
version: "2.2.2"
|
||||
sdks:
|
||||
dart: ">=3.6.0 <4.0.0"
|
||||
dart: ">=3.5.0 <4.0.0"
|
||||
flutter: ">=3.24.0"
|
||||
|
|
|
@ -34,10 +34,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: asn1lib
|
||||
sha256: "1c296cd268f486cabcc3930e9b93a8133169305f18d722916e675959a88f6d2c"
|
||||
sha256: "4bae5ae63e6d6dd17c4aac8086f3dec26c0236f6a0f03416c6c19d830c367cf5"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.5.9"
|
||||
version: "1.5.8"
|
||||
async:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -67,50 +67,50 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: build
|
||||
sha256: cef23f1eda9b57566c81e2133d196f8e3df48f244b317368d65c5943d91148f0
|
||||
sha256: "80184af8b6cb3e5c1c4ec6d8544d27711700bc3e6d2efad04238c7b5290889f0"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.4.2"
|
||||
version: "2.4.1"
|
||||
build_config:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: build_config
|
||||
sha256: "4ae2de3e1e67ea270081eaee972e1bd8f027d459f249e0f1186730784c2e7e33"
|
||||
sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.1.2"
|
||||
version: "1.1.1"
|
||||
build_daemon:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: build_daemon
|
||||
sha256: "8e928697a82be082206edb0b9c99c5a4ad6bc31c9e9b8b2f291ae65cd4a25daa"
|
||||
sha256: "79b2aef6ac2ed00046867ed354c88778c9c0f029df8a20fe10b5436826721ef9"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.0.4"
|
||||
version: "4.0.2"
|
||||
build_resolvers:
|
||||
dependency: "direct dev"
|
||||
description:
|
||||
name: build_resolvers
|
||||
sha256: b9e4fda21d846e192628e7a4f6deda6888c36b5b69ba02ff291a01fd529140f0
|
||||
sha256: "339086358431fa15d7eca8b6a36e5d783728cf025e559b834f4609a1fcfb7b0a"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.4.4"
|
||||
version: "2.4.2"
|
||||
build_runner:
|
||||
dependency: "direct dev"
|
||||
description:
|
||||
name: build_runner
|
||||
sha256: "058fe9dce1de7d69c4b84fada934df3e0153dd000758c4d65964d0166779aa99"
|
||||
sha256: "028819cfb90051c6b5440c7e574d1896f8037e3c96cf17aaeb054c9311cfbf4d"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.4.15"
|
||||
version: "2.4.13"
|
||||
build_runner_core:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: build_runner_core
|
||||
sha256: "22e3aa1c80e0ada3722fe5b63fd43d9c8990759d0a2cf489c8c5d7b2bdebc021"
|
||||
sha256: f8126682b87a7282a339b871298cc12009cb67109cfa1614d6436fb0289193e0
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "8.0.0"
|
||||
version: "7.3.2"
|
||||
built_collection:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -212,10 +212,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: dart_style
|
||||
sha256: "7306ab8a2359a48d22310ad823521d723acfed60ee1f7e37388e8986853b6820"
|
||||
sha256: "7856d364b589d1f08986e140938578ed36ed948581fbc3bc9aef1805039ac5ab"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.3.8"
|
||||
version: "2.3.7"
|
||||
decimal:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
@ -342,10 +342,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: http_parser
|
||||
sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571"
|
||||
sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.1.2"
|
||||
version: "4.0.2"
|
||||
intl:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
@ -599,10 +599,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: pubspec_parse
|
||||
sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082"
|
||||
sha256: "81876843eb50dc2e1e5b151792c9a985c5ed2536914115ed04e9c8528f6647b0"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.5.0"
|
||||
version: "1.4.0"
|
||||
rational:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -615,18 +615,18 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: shelf
|
||||
sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12
|
||||
sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.4.2"
|
||||
version: "1.4.1"
|
||||
shelf_web_socket:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: shelf_web_socket
|
||||
sha256: "3632775c8e90d6c9712f883e633716432a27758216dfb61bd86a8321c0580925"
|
||||
sha256: cc36c297b52866d203dbf9332263c94becc2fe0ceaa9681d07b6ef9807023b67
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.0.0"
|
||||
version: "2.0.1"
|
||||
sky_engine:
|
||||
dependency: transitive
|
||||
description: flutter
|
||||
|
@ -809,5 +809,5 @@ packages:
|
|||
source: hosted
|
||||
version: "3.1.3"
|
||||
sdks:
|
||||
dart: ">=3.6.0 <4.0.0"
|
||||
dart: ">=3.5.0 <4.0.0"
|
||||
flutter: ">=3.24.0"
|
||||
|
|
|
@ -3,7 +3,6 @@ import 'dart:ffi';
|
|||
import 'dart:io';
|
||||
import 'dart:async';
|
||||
import 'dart:isolate';
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:cw_core/utils/print_verbose.dart';
|
||||
import 'package:cw_decred/api/libdcrwallet_bindings.dart';
|
||||
import 'package:cw_decred/api/util.dart';
|
||||
|
@ -79,10 +78,12 @@ class Libwallet {
|
|||
switch (method) {
|
||||
case "initlibdcrwallet":
|
||||
final logDir = args["logdir"] ?? "";
|
||||
final level = args["level"] ?? "";
|
||||
final cLogDir = logDir.toCString();
|
||||
final cLevel = level.toCString();
|
||||
executePayloadFn(
|
||||
fn: () => dcrwalletApi.initialize(cLogDir),
|
||||
ptrsToFree: [cLogDir],
|
||||
fn: () => dcrwalletApi.initialize(cLogDir, cLevel),
|
||||
ptrsToFree: [cLogDir, cLevel],
|
||||
);
|
||||
break;
|
||||
case "createwallet":
|
||||
|
@ -300,7 +301,7 @@ class Libwallet {
|
|||
break;
|
||||
case "shutdown":
|
||||
final name = args["name"] ?? "";
|
||||
final cName = name.toCString();
|
||||
// final cName = name.toCString();
|
||||
executePayloadFn(
|
||||
fn: () => dcrwalletApi.shutdown(),
|
||||
ptrsToFree: [],
|
||||
|
@ -326,8 +327,8 @@ class Libwallet {
|
|||
|
||||
// initLibdcrwallet initializes libdcrwallet using the provided logDir and gets
|
||||
// it ready for use. This must be done before attempting to create, load or use
|
||||
// a wallet.
|
||||
Future<void> initLibdcrwallet(String logDir) async {
|
||||
// a wallet. An empty string can be used to log to stdout and create no log files.
|
||||
Future<void> initLibdcrwallet(String logDir, String level) async {
|
||||
if (_closed) throw StateError('Closed');
|
||||
final completer = Completer<Object?>.sync();
|
||||
final id = _idCounter++;
|
||||
|
@ -335,6 +336,7 @@ class Libwallet {
|
|||
final req = {
|
||||
"method": "initlibdcrwallet",
|
||||
"logdir": logDir,
|
||||
"level": level,
|
||||
};
|
||||
_commands.send((id, req));
|
||||
await completer.future;
|
||||
|
@ -463,7 +465,11 @@ class Libwallet {
|
|||
};
|
||||
_commands.send((id, req));
|
||||
final res = await completer.future as PayloadResult;
|
||||
return jsonDecode(res.payload);
|
||||
try {
|
||||
return jsonDecode(res.payload);
|
||||
} catch (_) {
|
||||
return {};
|
||||
}
|
||||
}
|
||||
|
||||
Future<String> estimateFee(String walletName, int numBlocks) async {
|
||||
|
|
|
@ -380,7 +380,7 @@ abstract class DecredWalletBase
|
|||
totalAmt = totalIn;
|
||||
} else if (out.cryptoAmount != null) {
|
||||
final coins = double.parse(out.cryptoAmount!);
|
||||
amt = (coins * 1e8).toInt();
|
||||
amt = (coins * 1e8).round();
|
||||
}
|
||||
totalAmt += amt;
|
||||
final o = {
|
||||
|
@ -415,7 +415,7 @@ abstract class DecredWalletBase
|
|||
};
|
||||
final fee = decoded["fee"] ?? 0;
|
||||
if (sendAll) {
|
||||
totalAmt = (totalAmt - fee).toInt();
|
||||
totalAmt = (totalAmt - fee).round();
|
||||
}
|
||||
return DecredPendingTransaction(
|
||||
txid: decoded["txid"] ?? "", amount: totalAmt, fee: fee, rawHex: signedHex, send: send);
|
||||
|
@ -475,36 +475,41 @@ abstract class DecredWalletBase
|
|||
}
|
||||
|
||||
Future<Map<String, DecredTransactionInfo>> fetchFiveTransactions(int from) async {
|
||||
final res = await _libwallet.listTransactions(walletInfo.name, from.toString(), "5");
|
||||
final decoded = json.decode(res);
|
||||
var txs = <String, DecredTransactionInfo>{};
|
||||
for (final d in decoded) {
|
||||
final txid = uniqueTxID(d["txid"] ?? "", d["vout"] ?? 0);
|
||||
var direction = TransactionDirection.outgoing;
|
||||
if (d["category"] == "receive") {
|
||||
direction = TransactionDirection.incoming;
|
||||
try {
|
||||
final res = await _libwallet.listTransactions(walletInfo.name, from.toString(), "5");
|
||||
final decoded = json.decode(res);
|
||||
var txs = <String, DecredTransactionInfo>{};
|
||||
for (final d in decoded) {
|
||||
final txid = uniqueTxID(d["txid"] ?? "", d["vout"] ?? 0);
|
||||
var direction = TransactionDirection.outgoing;
|
||||
if (d["category"] == "receive") {
|
||||
direction = TransactionDirection.incoming;
|
||||
}
|
||||
final amountDouble = d["amount"] ?? 0.0;
|
||||
final amount = (amountDouble * 1e8).round().abs();
|
||||
final feeDouble = d["fee"] ?? 0.0;
|
||||
final fee = (feeDouble * 1e8).round().abs();
|
||||
final confs = d["confirmations"] ?? 0;
|
||||
final sendTime = d["time"] ?? 0;
|
||||
final height = d["height"] ?? 0;
|
||||
final txInfo = DecredTransactionInfo(
|
||||
id: txid,
|
||||
amount: amount,
|
||||
fee: fee,
|
||||
direction: direction,
|
||||
isPending: confs == 0,
|
||||
date: DateTime.fromMillisecondsSinceEpoch(sendTime * 1000, isUtc: false),
|
||||
height: height,
|
||||
confirmations: confs,
|
||||
to: d["address"] ?? "",
|
||||
);
|
||||
txs[txid] = txInfo;
|
||||
}
|
||||
final amountDouble = d["amount"] ?? 0.0;
|
||||
final amount = (amountDouble * 1e8).toInt().abs();
|
||||
final feeDouble = d["fee"] ?? 0.0;
|
||||
final fee = (feeDouble * 1e8).toInt().abs();
|
||||
final confs = d["confirmations"] ?? 0;
|
||||
final sendTime = d["time"] ?? 0;
|
||||
final height = d["height"] ?? 0;
|
||||
final txInfo = DecredTransactionInfo(
|
||||
id: txid,
|
||||
amount: amount,
|
||||
fee: fee,
|
||||
direction: direction,
|
||||
isPending: confs == 0,
|
||||
date: DateTime.fromMillisecondsSinceEpoch(sendTime * 1000, isUtc: false),
|
||||
height: height,
|
||||
confirmations: confs,
|
||||
to: d["address"] ?? "",
|
||||
);
|
||||
txs[txid] = txInfo;
|
||||
return txs;
|
||||
} catch (e) {
|
||||
printV(e);
|
||||
return {};
|
||||
}
|
||||
return txs;
|
||||
}
|
||||
|
||||
// uniqueTxID combines the tx id and vout to create a unique id.
|
||||
|
@ -612,21 +617,25 @@ abstract class DecredWalletBase
|
|||
}
|
||||
|
||||
Future<void> fetchUnspents() async {
|
||||
final res = await _libwallet.listUnspents(walletInfo.name);
|
||||
final decoded = json.decode(res);
|
||||
var unspents = <Unspent>[];
|
||||
for (final d in decoded) {
|
||||
final spendable = d["spendable"] ?? false;
|
||||
if (!spendable) {
|
||||
continue;
|
||||
try {
|
||||
final res = await _libwallet.listUnspents(walletInfo.name);
|
||||
final decoded = json.decode(res);
|
||||
var unspents = <Unspent>[];
|
||||
for (final d in decoded) {
|
||||
final spendable = d["spendable"] ?? false;
|
||||
if (!spendable) {
|
||||
continue;
|
||||
}
|
||||
final amountDouble = d["amount"] ?? 0.0;
|
||||
final amount = (amountDouble * 1e8).round().abs();
|
||||
final utxo = Unspent(d["address"] ?? "", d["txid"] ?? "", amount, d["vout"] ?? 0, null);
|
||||
utxo.isChange = d["ischange"] ?? false;
|
||||
unspents.add(utxo);
|
||||
}
|
||||
final amountDouble = d["amount"] ?? 0.0;
|
||||
final amount = (amountDouble * 1e8).toInt().abs();
|
||||
final utxo = Unspent(d["address"] ?? "", d["txid"] ?? "", amount, d["vout"] ?? 0, null);
|
||||
utxo.isChange = d["ischange"] ?? false;
|
||||
unspents.add(utxo);
|
||||
_unspents = unspents;
|
||||
} catch (e) {
|
||||
printV(e);
|
||||
}
|
||||
_unspents = unspents;
|
||||
}
|
||||
|
||||
List<Unspent> unspents() {
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
import 'dart:convert';
|
||||
import 'package:cw_core/utils/print_verbose.dart';
|
||||
import 'package:mobx/mobx.dart';
|
||||
|
||||
import 'package:cw_core/address_info.dart';
|
||||
|
@ -103,13 +104,18 @@ abstract class DecredWalletAddressesBase extends WalletAddresses with Store {
|
|||
if (this.isEnabledAutoGenerateSubaddress) {
|
||||
nUnused = "3";
|
||||
}
|
||||
final res = await _libwallet.addresses(walletInfo.name, nUsed, nUnused);
|
||||
final decoded = json.decode(res);
|
||||
final usedAddrs = List<String>.from(decoded["used"] ?? []);
|
||||
final unusedAddrs = List<String>.from(decoded["unused"] ?? []);
|
||||
// index is the index of the first unused address.
|
||||
final index = decoded["index"] ?? 0;
|
||||
return new LibAddresses(usedAddrs, unusedAddrs, index);
|
||||
try {
|
||||
final res = await _libwallet.addresses(walletInfo.name, nUsed, nUnused);
|
||||
final decoded = json.decode(res);
|
||||
final usedAddrs = List<String>.from(decoded["used"] ?? []);
|
||||
final unusedAddrs = List<String>.from(decoded["unused"] ?? []);
|
||||
// index is the index of the first unused address.
|
||||
final index = decoded["index"] ?? 0;
|
||||
return new LibAddresses(usedAddrs, unusedAddrs, index);
|
||||
} catch (e) {
|
||||
printV(e);
|
||||
return LibAddresses([], [], 0);
|
||||
}
|
||||
}
|
||||
|
||||
Future<void> generateNewAddress(String label) async {
|
||||
|
|
|
@ -27,17 +27,16 @@ class DecredWalletService extends WalletService<
|
|||
static final pubkeyRestorePathTestnet = "m/44'/1'/0'";
|
||||
final mainnet = "mainnet";
|
||||
final testnet = "testnet";
|
||||
Libwallet? libwallet;
|
||||
static Libwallet? libwallet;
|
||||
|
||||
Future<void> init() async {
|
||||
if (libwallet != null) {
|
||||
return;
|
||||
}
|
||||
libwallet = await Libwallet.spawn();
|
||||
// Use the general path for all dcr wallets as the general log directory.
|
||||
// Individual wallet paths may be removed if the wallet is deleted.
|
||||
final dcrLogDir = await pathForWalletDir(name: '', type: WalletType.decred);
|
||||
libwallet!.initLibdcrwallet(dcrLogDir);
|
||||
// Init logging with no directory to force printing to stdout and only
|
||||
// print ERROR level logs.
|
||||
libwallet!.initLibdcrwallet("", "err");
|
||||
}
|
||||
|
||||
void closeLibwallet() {
|
||||
|
|
|
@ -75,18 +75,18 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: build_config
|
||||
sha256: "4ae2de3e1e67ea270081eaee972e1bd8f027d459f249e0f1186730784c2e7e33"
|
||||
sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.1.2"
|
||||
version: "1.1.1"
|
||||
build_daemon:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: build_daemon
|
||||
sha256: "8e928697a82be082206edb0b9c99c5a4ad6bc31c9e9b8b2f291ae65cd4a25daa"
|
||||
sha256: "79b2aef6ac2ed00046867ed354c88778c9c0f029df8a20fe10b5436826721ef9"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.0.4"
|
||||
version: "4.0.2"
|
||||
build_resolvers:
|
||||
dependency: "direct dev"
|
||||
description:
|
||||
|
@ -365,10 +365,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: http_parser
|
||||
sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571"
|
||||
sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.1.2"
|
||||
version: "4.0.2"
|
||||
intl:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -646,10 +646,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: shelf
|
||||
sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12
|
||||
sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.4.2"
|
||||
version: "1.4.1"
|
||||
shelf_web_socket:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -848,5 +848,5 @@ packages:
|
|||
source: hosted
|
||||
version: "2.2.2"
|
||||
sdks:
|
||||
dart: ">=3.6.0 <4.0.0"
|
||||
dart: ">=3.5.0 <4.0.0"
|
||||
flutter: ">=3.24.0"
|
||||
|
|
|
@ -89,11 +89,7 @@ void createWalletSync(
|
|||
throw WalletCreationException(message: monero.Wallet_errorString(newWptr));
|
||||
}
|
||||
|
||||
monero.Wallet_setupBackgroundSync(newWptr, backgroundSyncType: 2, walletPassword: password, backgroundCachePassword: '');
|
||||
status = monero.Wallet_status(newWptr);
|
||||
if (status != 0) {
|
||||
throw WalletCreationException(message: monero.Wallet_errorString(newWptr));
|
||||
}
|
||||
setupBackgroundSync(password, newWptr);
|
||||
|
||||
wptr = newWptr;
|
||||
monero.Wallet_setCacheAttribute(wptr!, key: "cakewallet.passphrase", value: passphrase);
|
||||
|
@ -186,13 +182,6 @@ void restoreWalletFromKeysSync(
|
|||
message: monero.Wallet_errorString(newWptr));
|
||||
}
|
||||
|
||||
|
||||
monero.Wallet_setupBackgroundSync(newWptr, backgroundSyncType: 2, walletPassword: password, backgroundCachePassword: '');
|
||||
status = monero.Wallet_status(newWptr);
|
||||
if (status != 0) {
|
||||
throw WalletCreationException(message: monero.Wallet_errorString(newWptr));
|
||||
}
|
||||
|
||||
// CW-712 - Try to restore deterministic wallet first, if the view key doesn't
|
||||
// match the view key provided
|
||||
if (spendKey != "") {
|
||||
|
@ -216,12 +205,8 @@ void restoreWalletFromKeysSync(
|
|||
throw WalletRestoreFromKeysException(
|
||||
message: monero.Wallet_errorString(newWptr));
|
||||
}
|
||||
|
||||
monero.Wallet_setupBackgroundSync(newWptr, backgroundSyncType: 2, walletPassword: password, backgroundCachePassword: '');
|
||||
status = monero.Wallet_status(newWptr);
|
||||
if (status != 0) {
|
||||
throw WalletCreationException(message: monero.Wallet_errorString(newWptr));
|
||||
}
|
||||
|
||||
setupBackgroundSync(password, newWptr);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -267,12 +252,8 @@ void restoreWalletFromPolyseedWithOffset(
|
|||
monero.Wallet_setCacheAttribute(wptr!, key: "cakewallet.seed", value: seed);
|
||||
monero.Wallet_setCacheAttribute(wptr!, key: "cakewallet.passphrase", value: seedOffset);
|
||||
monero.Wallet_store(wptr!);
|
||||
|
||||
monero.Wallet_setupBackgroundSync(newWptr, backgroundSyncType: 2, walletPassword: password, backgroundCachePassword: '');
|
||||
status = monero.Wallet_status(newWptr);
|
||||
if (status != 0) {
|
||||
throw WalletCreationException(message: monero.Wallet_errorString(newWptr));
|
||||
}
|
||||
|
||||
setupBackgroundSync(password, newWptr);
|
||||
storeSync();
|
||||
|
||||
openedWalletsByPath[path] = wptr!;
|
||||
|
@ -323,12 +304,8 @@ void restoreWalletFromSpendKeySync(
|
|||
monero.Wallet_setCacheAttribute(wptr!, key: "cakewallet.seed", value: seed);
|
||||
|
||||
storeSync();
|
||||
|
||||
monero.Wallet_setupBackgroundSync(newWptr, backgroundSyncType: 2, walletPassword: password, backgroundCachePassword: '');
|
||||
status = monero.Wallet_status(newWptr);
|
||||
if (status != 0) {
|
||||
throw WalletCreationException(message: monero.Wallet_errorString(newWptr));
|
||||
}
|
||||
|
||||
setupBackgroundSync(password, newWptr);
|
||||
|
||||
openedWalletsByPath[path] = wptr!;
|
||||
_lastOpenedWallet = path;
|
||||
|
@ -361,13 +338,6 @@ Future<void> restoreWalletFromHardwareWallet(
|
|||
throw WalletRestoreFromSeedException(message: error);
|
||||
}
|
||||
|
||||
// TODO: Check with upstream if we can use background sync here
|
||||
// monero.Wallet_setupBackgroundSync(newWptr, backgroundSyncType: 2, walletPassword: password, backgroundCachePassword: '');
|
||||
// status = monero.Wallet_status(newWptr);
|
||||
// if (status != 0) {
|
||||
// throw WalletCreationException(message: monero.Wallet_errorString(newWptr));
|
||||
// }
|
||||
|
||||
wptr = newWptr;
|
||||
_lastOpenedWallet = path;
|
||||
openedWalletsByPath[path] = wptr!;
|
||||
|
@ -437,12 +407,8 @@ Future<void> loadWallet(
|
|||
printV("loadWallet:"+err);
|
||||
throw WalletOpeningException(message: err);
|
||||
}
|
||||
monero.Wallet_setupBackgroundSync(newWptr, backgroundSyncType: 2, walletPassword: password, backgroundCachePassword: '');
|
||||
status = monero.Wallet_status(newWptr);
|
||||
if (status != 0) {
|
||||
final err = monero.Wallet_errorString(newWptr);
|
||||
printV("loadWallet:"+err);
|
||||
throw WalletOpeningException(message: err);
|
||||
if (deviceType == 0) {
|
||||
setupBackgroundSync(password, newWptr);
|
||||
}
|
||||
|
||||
wptr = newWptr;
|
||||
|
@ -451,6 +417,17 @@ Future<void> loadWallet(
|
|||
}
|
||||
}
|
||||
|
||||
void setupBackgroundSync(String password, Pointer<Void>? wptrOverride) {
|
||||
if (isViewOnlyBySpendKey(wptrOverride)) {
|
||||
return;
|
||||
}
|
||||
monero.Wallet_setupBackgroundSync(wptrOverride ?? wptr!, backgroundSyncType: 2, walletPassword: password, backgroundCachePassword: '');
|
||||
if (monero.Wallet_status(wptrOverride ?? wptr!) != 0) {
|
||||
// We simply ignore the error.
|
||||
printV("setupBackgroundSync: ${monero.Wallet_errorString(wptrOverride ?? wptr!)}");
|
||||
}
|
||||
}
|
||||
|
||||
void _createWallet(Map<String, dynamic> args) {
|
||||
final path = args['path'] as String;
|
||||
final password = args['password'] as String;
|
||||
|
@ -591,4 +568,4 @@ Future<void> restoreFromSpendKey(
|
|||
|
||||
bool isWalletExist({required String path}) => _isWalletExist(path);
|
||||
|
||||
bool isViewOnlyBySpendKey() => int.tryParse(monero.Wallet_secretSpendKey(wptr!)) == 0;
|
||||
bool isViewOnlyBySpendKey(Pointer<Void>? wptrOverride) => int.tryParse(monero.Wallet_secretSpendKey(wptrOverride ?? wptr!)) == 0;
|
||||
|
|
|
@ -233,18 +233,14 @@ abstract class MoneroWalletBase extends WalletBase<MoneroBalance,
|
|||
return;
|
||||
}
|
||||
isBackgroundSyncRunning = true;
|
||||
int status = monero.Wallet_status(wptr!);
|
||||
if (status != 0) {
|
||||
final err = monero.Wallet_errorString(wptr!);
|
||||
throw Exception("unable to setup background sync: $err");
|
||||
}
|
||||
await save();
|
||||
|
||||
monero.Wallet_startBackgroundSync(wptr!);
|
||||
status = monero.Wallet_status(wptr!);
|
||||
final status = monero.Wallet_status(wptr!);
|
||||
if (status != 0) {
|
||||
final err = monero.Wallet_errorString(wptr!);
|
||||
throw Exception("unable to start background sync: $err");
|
||||
isBackgroundSyncRunning = false;
|
||||
printV("startBackgroundSync: $err");
|
||||
}
|
||||
await save();
|
||||
await init();
|
||||
|
@ -260,9 +256,9 @@ abstract class MoneroWalletBase extends WalletBase<MoneroBalance,
|
|||
printV("Stopping background sync");
|
||||
await save();
|
||||
monero.Wallet_stopBackgroundSync(wptr!, '');
|
||||
await save();
|
||||
isBackgroundSyncRunning = false;
|
||||
}
|
||||
await save();
|
||||
}
|
||||
|
||||
@action
|
||||
|
|
|
@ -29,10 +29,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: asn1lib
|
||||
sha256: "1c296cd268f486cabcc3930e9b93a8133169305f18d722916e675959a88f6d2c"
|
||||
sha256: "4bae5ae63e6d6dd17c4aac8086f3dec26c0236f6a0f03416c6c19d830c367cf5"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.5.9"
|
||||
version: "1.5.8"
|
||||
async:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -78,18 +78,18 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: build_config
|
||||
sha256: "4ae2de3e1e67ea270081eaee972e1bd8f027d459f249e0f1186730784c2e7e33"
|
||||
sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.1.2"
|
||||
version: "1.1.1"
|
||||
build_daemon:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: build_daemon
|
||||
sha256: "8e928697a82be082206edb0b9c99c5a4ad6bc31c9e9b8b2f291ae65cd4a25daa"
|
||||
sha256: "79b2aef6ac2ed00046867ed354c88778c9c0f029df8a20fe10b5436826721ef9"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.0.4"
|
||||
version: "4.0.2"
|
||||
build_resolvers:
|
||||
dependency: "direct dev"
|
||||
description:
|
||||
|
@ -384,10 +384,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: http_parser
|
||||
sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571"
|
||||
sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.1.2"
|
||||
version: "4.0.2"
|
||||
intl:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
@ -682,10 +682,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: pubspec_parse
|
||||
sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082"
|
||||
sha256: "81876843eb50dc2e1e5b151792c9a985c5ed2536914115ed04e9c8528f6647b0"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.5.0"
|
||||
version: "1.4.0"
|
||||
rational:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -706,10 +706,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: shelf
|
||||
sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12
|
||||
sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.4.2"
|
||||
version: "1.4.1"
|
||||
shelf_web_socket:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -924,5 +924,5 @@ packages:
|
|||
source: hosted
|
||||
version: "3.1.3"
|
||||
sdks:
|
||||
dart: ">=3.6.0 <4.0.0"
|
||||
dart: ">=3.5.0 <4.0.0"
|
||||
flutter: ">=3.24.0"
|
||||
|
|
|
@ -29,10 +29,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: asn1lib
|
||||
sha256: "1c296cd268f486cabcc3930e9b93a8133169305f18d722916e675959a88f6d2c"
|
||||
sha256: "4bae5ae63e6d6dd17c4aac8086f3dec26c0236f6a0f03416c6c19d830c367cf5"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.5.9"
|
||||
version: "1.5.8"
|
||||
async:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -94,18 +94,18 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: build_config
|
||||
sha256: "4ae2de3e1e67ea270081eaee972e1bd8f027d459f249e0f1186730784c2e7e33"
|
||||
sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.1.2"
|
||||
version: "1.1.1"
|
||||
build_daemon:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: build_daemon
|
||||
sha256: "8e928697a82be082206edb0b9c99c5a4ad6bc31c9e9b8b2f291ae65cd4a25daa"
|
||||
sha256: "79b2aef6ac2ed00046867ed354c88778c9c0f029df8a20fe10b5436826721ef9"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.0.4"
|
||||
version: "4.0.2"
|
||||
build_resolvers:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -397,10 +397,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: http_parser
|
||||
sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571"
|
||||
sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.1.2"
|
||||
version: "4.0.2"
|
||||
intl:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -679,10 +679,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: pubspec_parse
|
||||
sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082"
|
||||
sha256: "81876843eb50dc2e1e5b151792c9a985c5ed2536914115ed04e9c8528f6647b0"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.5.0"
|
||||
version: "1.4.0"
|
||||
rational:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -751,10 +751,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: shelf
|
||||
sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12
|
||||
sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.4.2"
|
||||
version: "1.4.1"
|
||||
shelf_web_socket:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -945,5 +945,5 @@ packages:
|
|||
source: hosted
|
||||
version: "3.1.3"
|
||||
sdks:
|
||||
dart: ">=3.6.0 <4.0.0"
|
||||
dart: ">=3.5.0 <4.0.0"
|
||||
flutter: ">=3.24.0"
|
||||
|
|
|
@ -29,10 +29,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: asn1lib
|
||||
sha256: "1c296cd268f486cabcc3930e9b93a8133169305f18d722916e675959a88f6d2c"
|
||||
sha256: "4bae5ae63e6d6dd17c4aac8086f3dec26c0236f6a0f03416c6c19d830c367cf5"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.5.9"
|
||||
version: "1.5.8"
|
||||
async:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -70,18 +70,18 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: build_config
|
||||
sha256: "4ae2de3e1e67ea270081eaee972e1bd8f027d459f249e0f1186730784c2e7e33"
|
||||
sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.1.2"
|
||||
version: "1.1.1"
|
||||
build_daemon:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: build_daemon
|
||||
sha256: "8e928697a82be082206edb0b9c99c5a4ad6bc31c9e9b8b2f291ae65cd4a25daa"
|
||||
sha256: "79b2aef6ac2ed00046867ed354c88778c9c0f029df8a20fe10b5436826721ef9"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.0.4"
|
||||
version: "4.0.2"
|
||||
build_resolvers:
|
||||
dependency: "direct dev"
|
||||
description:
|
||||
|
@ -360,10 +360,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: http_parser
|
||||
sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571"
|
||||
sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.1.2"
|
||||
version: "4.0.2"
|
||||
intl:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
@ -634,10 +634,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: pubspec_parse
|
||||
sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082"
|
||||
sha256: "81876843eb50dc2e1e5b151792c9a985c5ed2536914115ed04e9c8528f6647b0"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.5.0"
|
||||
version: "1.4.0"
|
||||
rational:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -650,10 +650,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: shelf
|
||||
sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12
|
||||
sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.4.2"
|
||||
version: "1.4.1"
|
||||
shelf_web_socket:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -844,5 +844,5 @@ packages:
|
|||
source: hosted
|
||||
version: "3.1.3"
|
||||
sdks:
|
||||
dart: ">=3.6.0 <4.0.0"
|
||||
dart: ">=3.5.0 <4.0.0"
|
||||
flutter: ">=3.24.0"
|
||||
|
|
|
@ -29,10 +29,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: asn1lib
|
||||
sha256: "1c296cd268f486cabcc3930e9b93a8133169305f18d722916e675959a88f6d2c"
|
||||
sha256: "4bae5ae63e6d6dd17c4aac8086f3dec26c0236f6a0f03416c6c19d830c367cf5"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.5.9"
|
||||
version: "1.5.8"
|
||||
async:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -70,18 +70,18 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: build_config
|
||||
sha256: "4ae2de3e1e67ea270081eaee972e1bd8f027d459f249e0f1186730784c2e7e33"
|
||||
sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.1.2"
|
||||
version: "1.1.1"
|
||||
build_daemon:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: build_daemon
|
||||
sha256: "8e928697a82be082206edb0b9c99c5a4ad6bc31c9e9b8b2f291ae65cd4a25daa"
|
||||
sha256: "79b2aef6ac2ed00046867ed354c88778c9c0f029df8a20fe10b5436826721ef9"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.0.4"
|
||||
version: "4.0.2"
|
||||
build_resolvers:
|
||||
dependency: "direct dev"
|
||||
description:
|
||||
|
@ -357,10 +357,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: http_parser
|
||||
sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571"
|
||||
sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.1.2"
|
||||
version: "4.0.2"
|
||||
intl:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
@ -631,10 +631,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: pubspec_parse
|
||||
sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082"
|
||||
sha256: "81876843eb50dc2e1e5b151792c9a985c5ed2536914115ed04e9c8528f6647b0"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.5.0"
|
||||
version: "1.4.0"
|
||||
rational:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -647,10 +647,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: shelf
|
||||
sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12
|
||||
sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.4.2"
|
||||
version: "1.4.1"
|
||||
shelf_web_socket:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -841,5 +841,5 @@ packages:
|
|||
source: hosted
|
||||
version: "3.1.3"
|
||||
sdks:
|
||||
dart: ">=3.6.0 <4.0.0"
|
||||
dart: ">=3.5.0 <4.0.0"
|
||||
flutter: ">=3.24.0"
|
||||
|
|
|
@ -2,9 +2,7 @@ PODS:
|
|||
- connectivity_plus (0.0.1):
|
||||
- Flutter
|
||||
- ReachabilitySwift
|
||||
- CryptoSwift (1.8.3)
|
||||
- cw_mweb (0.0.1):
|
||||
- Flutter
|
||||
- CryptoSwift (1.8.4)
|
||||
- cw_decred (0.0.1):
|
||||
- Flutter
|
||||
- cw_mweb (0.0.1):
|
||||
|
@ -80,9 +78,9 @@ PODS:
|
|||
- permission_handler_apple (9.3.0):
|
||||
- Flutter
|
||||
- ReachabilitySwift (5.2.4)
|
||||
- SDWebImage (5.19.7):
|
||||
- SDWebImage/Core (= 5.19.7)
|
||||
- SDWebImage/Core (5.19.7)
|
||||
- SDWebImage (5.20.0):
|
||||
- SDWebImage/Core (= 5.20.0)
|
||||
- SDWebImage/Core (5.20.0)
|
||||
- sensitive_clipboard (0.0.1):
|
||||
- Flutter
|
||||
- share_plus (0.0.1):
|
||||
|
@ -106,7 +104,6 @@ PODS:
|
|||
DEPENDENCIES:
|
||||
- connectivity_plus (from `.symlinks/plugins/connectivity_plus/ios`)
|
||||
- CryptoSwift
|
||||
- cw_mweb (from `.symlinks/plugins/cw_mweb/ios`)
|
||||
- cw_decred (from `.symlinks/plugins/cw_decred/ios`)
|
||||
- cw_mweb (from `.symlinks/plugins/cw_mweb/ios`)
|
||||
- device_display_brightness (from `.symlinks/plugins/device_display_brightness/ios`)
|
||||
|
@ -147,8 +144,6 @@ SPEC REPOS:
|
|||
EXTERNAL SOURCES:
|
||||
connectivity_plus:
|
||||
:path: ".symlinks/plugins/connectivity_plus/ios"
|
||||
cw_mweb:
|
||||
:path: ".symlinks/plugins/cw_mweb/ios"
|
||||
cw_decred:
|
||||
:path: ".symlinks/plugins/cw_decred/ios"
|
||||
cw_mweb:
|
||||
|
@ -203,41 +198,40 @@ EXTERNAL SOURCES:
|
|||
:path: ".symlinks/plugins/wakelock_plus/ios"
|
||||
|
||||
SPEC CHECKSUMS:
|
||||
connectivity_plus: 481668c94744c30c53b8895afb39159d1e619bdf
|
||||
CryptoSwift: 967f37cea5a3294d9cce358f78861652155be483
|
||||
cw_decred: a02cf30175a46971c1e2fa22c48407534541edc6
|
||||
cw_mweb: 3aea2fb35b2bd04d8b2d21b83216f3b8fb768d85
|
||||
device_display_brightness: 04374ebd653619292c1d996f00f42877ea19f17f
|
||||
device_info_plus: 335f3ce08d2e174b9fdc3db3db0f4e3b1f66bd89
|
||||
devicelocale: bd64aa714485a8afdaded0892c1e7d5b7f680cf8
|
||||
connectivity_plus: bf0076dd84a130856aa636df1c71ccaff908fa1d
|
||||
CryptoSwift: e64e11850ede528a02a0f3e768cec8e9d92ecb90
|
||||
cw_decred: 9c0e1df74745b51a1289ec5e91fb9e24b68fa14a
|
||||
cw_mweb: 22cd01dfb8ad2d39b15332006f22046aaa8352a3
|
||||
device_display_brightness: 1510e72c567a1f6ce6ffe393dcd9afd1426034f7
|
||||
device_info_plus: c6fb39579d0f423935b0c9ce7ee2f44b71b9fce6
|
||||
devicelocale: 35ba84dc7f45f527c3001535d8c8d104edd5d926
|
||||
DKImagePickerController: 946cec48c7873164274ecc4624d19e3da4c1ef3c
|
||||
DKPhotoGallery: b3834fecb755ee09a593d7c9e389d8b5d6deed60
|
||||
fast_scanner: 2cb1ad3e69e645e9980fb4961396ce5804caa3e3
|
||||
file_picker: 9b3292d7c8bc68c8a7bf8eb78f730e49c8efc517
|
||||
fast_scanner: 44c00940355a51258cd6c2085734193cd23d95bc
|
||||
file_picker: 09aa5ec1ab24135ccd7a1621c46c84134bfd6655
|
||||
Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7
|
||||
flutter_inappwebview_ios: b89ba3482b96fb25e00c967aae065701b66e9b99
|
||||
flutter_local_authentication: 989278c681612f1ee0e36019e149137f114b9d7f
|
||||
flutter_mailer: 3a8cd4f36c960fb04528d5471097270c19fec1c4
|
||||
flutter_secure_storage: 2c2ff13db9e0a5647389bff88b0ecac56e3f3418
|
||||
fluttertoast: 2c67e14dce98bbdb200df9e1acf610d7a6264ea1
|
||||
in_app_review: 5596fe56fab799e8edb3561c03d053363ab13457
|
||||
integration_test: 4a889634ef21a45d28d50d622cf412dc6d9f586e
|
||||
flutter_inappwebview_ios: 6f63631e2c62a7c350263b13fa5427aedefe81d4
|
||||
flutter_local_authentication: 1172a4dd88f6306dadce067454e2c4caf07977bb
|
||||
flutter_mailer: 2ef5a67087bc8c6c4cefd04a178bf1ae2c94cd83
|
||||
flutter_secure_storage: 23fc622d89d073675f2eaa109381aefbcf5a49be
|
||||
fluttertoast: 21eecd6935e7064cc1fcb733a4c5a428f3f24f0f
|
||||
in_app_review: a31b5257259646ea78e0e35fc914979b0031d011
|
||||
integration_test: 252f60fa39af5e17c3aa9899d35d908a0721b573
|
||||
OrderedSet: e539b66b644ff081c73a262d24ad552a69be3a94
|
||||
package_info_plus: af8e2ca6888548050f16fa2f1938db7b5a5df499
|
||||
path_provider_foundation: 080d55be775b7414fd5a5ef3ac137b97b097e564
|
||||
permission_handler_apple: 4ed2196e43d0651e8ff7ca3483a069d469701f2d
|
||||
package_info_plus: c0502532a26c7662a62a356cebe2692ec5fe4ec4
|
||||
path_provider_foundation: 2b6b4c569c0fb62ec74538f866245ac84301af46
|
||||
permission_handler_apple: 9878588469a2b0d0fc1e048d9f43605f92e6cec2
|
||||
ReachabilitySwift: 32793e867593cfc1177f5d16491e3a197d2fccda
|
||||
SDWebImage: 8a6b7b160b4d710e2a22b6900e25301075c34cb3
|
||||
sensitive_clipboard: 161e9abc3d56b3131309d8a321eb4690a803c16b
|
||||
share_plus: 50da8cb520a8f0f65671c6c6a99b3617ed10a58a
|
||||
shared_preferences_foundation: 9e1978ff2562383bd5676f64ec4e9aa8fa06a6f7
|
||||
sp_scanner: b1bc9321690980bdb44bba7ec85d5543e716d1b5
|
||||
SDWebImage: 73c6079366fea25fa4bb9640d5fb58f0893facd8
|
||||
sensitive_clipboard: d4866e5d176581536c27bb1618642ee83adca986
|
||||
share_plus: 8b6f8b3447e494cca5317c8c3073de39b3600d1f
|
||||
shared_preferences_foundation: fcdcbc04712aee1108ac7fda236f363274528f78
|
||||
sp_scanner: eaa617fa827396b967116b7f1f43549ca62e9a12
|
||||
SwiftyGif: 706c60cf65fa2bc5ee0313beece843c8eb8194d4
|
||||
Toast: 1f5ea13423a1e6674c4abdac5be53587ae481c4e
|
||||
uni_links: ed8c961e47ed9ce42b6d91e1de8049e38a4b3152
|
||||
universal_ble: ff19787898040d721109c6324472e5dd4bc86adc
|
||||
url_launcher_ios: 694010445543906933d732453a59da0a173ae33d
|
||||
wakelock_plus: 04623e3f525556020ebd4034310f20fe7fda8b49
|
||||
uni_links: d97da20c7701486ba192624d99bffaaffcfc298a
|
||||
universal_ble: cf52a7b3fd2e7c14d6d7262e9fdadb72ab6b88a6
|
||||
url_launcher_ios: 5334b05cef931de560670eeae103fd3e431ac3fe
|
||||
wakelock_plus: 373cfe59b235a6dd5837d0fb88791d2f13a90d56
|
||||
|
||||
PODFILE CHECKSUM: e448f662d4c41f0c0b1ccbb78afd57dbf895a597
|
||||
|
||||
|
|
|
@ -422,6 +422,6 @@ class CWMonero extends Monero {
|
|||
}
|
||||
|
||||
bool isViewOnly() {
|
||||
return isViewOnlyBySpendKey();
|
||||
return isViewOnlyBySpendKey(null);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -315,7 +315,7 @@ class CryptoBalanceWidget extends StatelessWidget {
|
|||
Padding(
|
||||
padding: const EdgeInsets.fromLTRB(16, 0, 16, 8),
|
||||
child: InfoCard(
|
||||
title: S.of(context).decred_info_title,
|
||||
title: S.of(context).synchronizing,
|
||||
description: S.of(context).decred_info_card_details,
|
||||
image: 'assets/images/dcr_icon.png',
|
||||
leftButtonTitle: S.of(context).litecoin_mweb_dismiss,
|
||||
|
|
|
@ -36,7 +36,6 @@ import 'package:cake_wallet/utils/responsive_layout_util.dart';
|
|||
import 'package:cake_wallet/utils/show_pop_up.dart';
|
||||
import 'package:cake_wallet/view_model/send/output.dart';
|
||||
import 'package:cw_core/utils/print_verbose.dart';
|
||||
import 'package:cw_core/unspent_coin_type.dart';
|
||||
import 'package:cw_core/wallet_type.dart';
|
||||
import 'package:cake_wallet/view_model/send/send_view_model.dart';
|
||||
import 'package:cake_wallet/view_model/send/send_view_model_state.dart';
|
||||
|
@ -164,8 +163,6 @@ class SendPage extends BasePage {
|
|||
});
|
||||
});
|
||||
|
||||
bool _bottomSheetOpened = false;
|
||||
|
||||
@override
|
||||
Widget body(BuildContext context) {
|
||||
_setEffects(context);
|
||||
|
@ -400,6 +397,7 @@ class SendPage extends BasePage {
|
|||
return LoadingPrimaryButton(
|
||||
key: ValueKey('send_page_send_button_key'),
|
||||
onPressed: () async {
|
||||
FocusManager.instance.primaryFocus?.unfocus();
|
||||
if (sendViewModel.state is IsExecutingState) return;
|
||||
if (_formKey.currentState != null &&
|
||||
!_formKey.currentState!.validate()) {
|
||||
|
|
|
@ -42,7 +42,7 @@ class PrivacyPage extends BasePage {
|
|||
),
|
||||
SettingsChoicesCell(
|
||||
ChoicesListItem<ExchangeApiMode>(
|
||||
title: S.current.exchange,
|
||||
title: S.current.swap,
|
||||
items: ExchangeApiMode.all,
|
||||
selectedItem: _privacySettingsViewModel.exchangeStatus,
|
||||
onItemSelected: (ExchangeApiMode mode) =>
|
||||
|
|
|
@ -266,7 +266,8 @@ abstract class DashboardViewModelBase with Store {
|
|||
reaction((_) => appStore.wallet, (wallet) {
|
||||
_onWalletChange(wallet);
|
||||
_checkMweb();
|
||||
showDecredInfoCard = wallet?.type == WalletType.decred;
|
||||
showDecredInfoCard = wallet?.type == WalletType.decred &&
|
||||
sharedPreferences.getBool(PreferencesKey.showDecredInfoCard) != false;
|
||||
});
|
||||
|
||||
_transactionDisposer?.reaction.dispose();
|
||||
|
@ -792,7 +793,7 @@ abstract class DashboardViewModelBase with Store {
|
|||
(List<TransactionInfo> txs) {
|
||||
|
||||
transactions.clear();
|
||||
|
||||
|
||||
transactions.addAll(
|
||||
txs.where((tx) {
|
||||
if (wallet.type == WalletType.monero) {
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
import 'package:cake_wallet/core/execution_state.dart';
|
||||
import 'package:cake_wallet/entities/qr_scanner.dart';
|
||||
import 'package:cake_wallet/store/settings_store.dart';
|
||||
import 'package:cw_core/utils/print_verbose.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:hive/hive.dart';
|
||||
import 'package:mobx/mobx.dart';
|
||||
|
|
|
@ -3,7 +3,6 @@ PODS:
|
|||
- FlutterMacOS
|
||||
- ReachabilitySwift
|
||||
- cw_mweb (0.0.1):
|
||||
- cw_decred (0.0.1):
|
||||
- FlutterMacOS
|
||||
- device_info_plus (0.0.1):
|
||||
- FlutterMacOS
|
||||
|
@ -46,7 +45,6 @@ PODS:
|
|||
DEPENDENCIES:
|
||||
- connectivity_plus (from `Flutter/ephemeral/.symlinks/plugins/connectivity_plus/macos`)
|
||||
- cw_mweb (from `Flutter/ephemeral/.symlinks/plugins/cw_mweb/macos`)
|
||||
- cw_decred (from `Flutter/ephemeral/.symlinks/plugins/cw_decred/macos`)
|
||||
- device_info_plus (from `Flutter/ephemeral/.symlinks/plugins/device_info_plus/macos`)
|
||||
- devicelocale (from `Flutter/ephemeral/.symlinks/plugins/devicelocale/macos`)
|
||||
- fast_scanner (from `Flutter/ephemeral/.symlinks/plugins/fast_scanner/macos`)
|
||||
|
@ -74,10 +72,6 @@ EXTERNAL SOURCES:
|
|||
:path: Flutter/ephemeral/.symlinks/plugins/connectivity_plus/macos
|
||||
cw_mweb:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/cw_mweb/macos
|
||||
cw_decred:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/cw_decred/macos
|
||||
cw_monero:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/cw_monero/macos
|
||||
device_info_plus:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/device_info_plus/macos
|
||||
devicelocale:
|
||||
|
@ -114,8 +108,6 @@ EXTERNAL SOURCES:
|
|||
SPEC CHECKSUMS:
|
||||
connectivity_plus: 18d3c32514c886e046de60e9c13895109866c747
|
||||
cw_mweb: 7440b12ead811dda972a9918442ea2a458e8742c
|
||||
cw_monero: ec03de55a19c4a2b174ea687e0f4202edc716fa4
|
||||
cw_decred: 0c93fbeb31bd97a6ad4ec5680960af0943bfca78
|
||||
device_info_plus: 5401765fde0b8d062a2f8eb65510fb17e77cf07f
|
||||
devicelocale: 9f0f36ac651cabae2c33f32dcff4f32b61c38225
|
||||
fast_scanner: d31bae07e2653403a69dac99fb710c1722b16a97
|
||||
|
|
|
@ -822,6 +822,7 @@
|
|||
"sync_status_syncronizing": "يتم المزامنة",
|
||||
"sync_status_timed_out": "نفد وقته",
|
||||
"sync_status_unsupported": "عقدة غير مدعومة",
|
||||
"synchronizing": "المزامنة",
|
||||
"syncing_wallet_alert_content": "قد لا يكتمل رصيدك وقائمة المعاملات الخاصة بك حتى تظهر عبارة “SYNCHRONIZED“ في الأعلى. انقر / اضغط لمعرفة المزيد.",
|
||||
"syncing_wallet_alert_title": "محفظتك تتم مزامنتها",
|
||||
"template": "قالب",
|
||||
|
|
|
@ -822,6 +822,7 @@
|
|||
"sync_status_syncronizing": "СИНХРОНИЗИРАНЕ",
|
||||
"sync_status_timed_out": "ВРЕМЕТО ИЗТЕЧЕ",
|
||||
"sync_status_unsupported": "Неподдържан възел",
|
||||
"synchronizing": "Синхронизиране",
|
||||
"syncing_wallet_alert_content": "Списъкът ви с баланс и транзакции може да не е пълен, докато в горната част не пише „СИНХРОНИЗИРАН“. Кликнете/докоснете, за да научите повече.",
|
||||
"syncing_wallet_alert_title": "Вашият портфейл се синхронизира",
|
||||
"template": "Шаблон",
|
||||
|
|
|
@ -822,6 +822,7 @@
|
|||
"sync_status_syncronizing": "SYNCHRONIZUJI",
|
||||
"sync_status_timed_out": "ČAS VYPRŠEL",
|
||||
"sync_status_unsupported": "Nepodporovaný uzel",
|
||||
"synchronizing": "Synchronizace",
|
||||
"syncing_wallet_alert_content": "Váš seznam zůstatků a transakcí nemusí být úplný, dokud nebude nahoře uvedeno „SYNCHRONIZOVANÉ“. Kliknutím/klepnutím se dozvíte více.",
|
||||
"syncing_wallet_alert_title": "Vaše peněženka se synchronizuje",
|
||||
"template": "Šablona",
|
||||
|
|
|
@ -823,6 +823,7 @@
|
|||
"sync_status_syncronizing": "SYNCHRONISIERE",
|
||||
"sync_status_timed_out": "Zeitlich abgestimmt",
|
||||
"sync_status_unsupported": "Nicht unterstützter Knoten",
|
||||
"synchronizing": "Synchronisierung",
|
||||
"syncing_wallet_alert_content": "Ihr Kontostand und Ihre Transaktionsliste sind möglicherweise erst vollständig, wenn oben „SYNCHRONISIERT“ steht. Klicken/tippen Sie, um mehr zu erfahren.",
|
||||
"syncing_wallet_alert_title": "Ihr Wallet wird synchronisiert",
|
||||
"template": "Vorlage",
|
||||
|
|
|
@ -823,6 +823,7 @@
|
|||
"sync_status_syncronizing": "SYNCHRONIZING",
|
||||
"sync_status_timed_out": "TIMED OUT",
|
||||
"sync_status_unsupported": "UNSUPPORTED NODE",
|
||||
"synchronizing": "Synchronizing",
|
||||
"syncing_wallet_alert_content": "Your balance and transaction list may not be complete until it says “SYNCHRONIZED” at the top. Click/tap to learn more.",
|
||||
"syncing_wallet_alert_title": "Your wallet is syncing",
|
||||
"template": "Template",
|
||||
|
|
|
@ -823,6 +823,7 @@
|
|||
"sync_status_syncronizing": "SINCRONIZANDO",
|
||||
"sync_status_timed_out": "CADUCADO",
|
||||
"sync_status_unsupported": "Nodo no compatible",
|
||||
"synchronizing": "Sincronización",
|
||||
"syncing_wallet_alert_content": "Es posible que su lista de saldo y transacciones no esté completa hasta que diga \"SINCRONIZADO\" en la parte superior. Haga clic/toque para obtener más información.",
|
||||
"syncing_wallet_alert_title": "Tu billetera se está sincronizando",
|
||||
"template": "Plantilla",
|
||||
|
|
|
@ -822,6 +822,7 @@
|
|||
"sync_status_syncronizing": "SYNCHRONISATION EN COURS",
|
||||
"sync_status_timed_out": "FIN DU TEMPS",
|
||||
"sync_status_unsupported": "Nœud non pris en charge",
|
||||
"synchronizing": "Synchronisation",
|
||||
"syncing_wallet_alert_content": "Votre solde et votre liste de transactions peuvent ne pas être à jour tant que la mention « SYNCHRONISÉ » n'apparaît en haut de l'écran. Cliquez/appuyez pour en savoir plus.",
|
||||
"syncing_wallet_alert_title": "Votre portefeuille (wallet) est en cours de synchronisation",
|
||||
"template": "Modèle",
|
||||
|
|
|
@ -824,6 +824,7 @@
|
|||
"sync_status_syncronizing": "KWAFI",
|
||||
"sync_status_timed_out": "ATED Out",
|
||||
"sync_status_unsupported": "Ba a Taimako ba",
|
||||
"synchronizing": "Aikiɓaɓaƙe",
|
||||
"syncing_wallet_alert_content": "Ma'aunin ku da lissafin ma'amala bazai cika ba har sai an ce \"SYNCHRONIZED\" a saman. Danna/matsa don ƙarin koyo.",
|
||||
"syncing_wallet_alert_title": "Walat ɗin ku yana aiki tare",
|
||||
"template": "Samfura",
|
||||
|
|
|
@ -824,6 +824,7 @@
|
|||
"sync_status_syncronizing": "सिंक्रनाइज़ करने",
|
||||
"sync_status_timed_out": "समय समााप्त",
|
||||
"sync_status_unsupported": "असमर्थित नोड",
|
||||
"synchronizing": "सिंक्रनाइज़ करना",
|
||||
"syncing_wallet_alert_content": "आपकी शेष राशि और लेनदेन सूची तब तक पूरी नहीं हो सकती जब तक कि शीर्ष पर \"सिंक्रनाइज़्ड\" न लिखा हो। अधिक जानने के लिए क्लिक/टैप करें।",
|
||||
"syncing_wallet_alert_title": "आपका वॉलेट सिंक हो रहा है",
|
||||
"template": "खाका",
|
||||
|
|
|
@ -822,6 +822,7 @@
|
|||
"sync_status_syncronizing": "SINKRONIZIRANJE",
|
||||
"sync_status_timed_out": "ISTEKLO",
|
||||
"sync_status_unsupported": "Nepodržani čvor",
|
||||
"synchronizing": "Sinkronizirajući",
|
||||
"syncing_wallet_alert_content": "Vaš saldo i popis transakcija možda neće biti potpuni sve dok na vrhu ne piše \"SINKRONIZIRANO\". Kliknite/dodirnite da biste saznali više.",
|
||||
"syncing_wallet_alert_title": "Vaš novčanik se sinkronizira",
|
||||
"template": "Predložak",
|
||||
|
|
|
@ -820,6 +820,7 @@
|
|||
"sync_status_syncronizing": "ՀԱՄԱԺԱՄԵՑՎՈՒՄ Է",
|
||||
"sync_status_timed_out": "Ժամանակը սպառվեց",
|
||||
"sync_status_unsupported": "ՉԱՋԱԿՑՎՈՂ ՀԱՆԳՈՒՅՑ,",
|
||||
"synchronizing": "Համաժամանակող",
|
||||
"syncing_wallet_alert_content": "Ձեր հաշիվը և գործարքների ցանկը կարող են լինել անավարտ մինչև վերին մասում գրված լինի “ՀԱՂՈՒՄ”։ Սեղմեք/դիպեք ուսումնասիրելու համար։",
|
||||
"syncing_wallet_alert_title": "Ձեր դրամապանակը համաժամացվում է",
|
||||
"template": "Տարբերակ",
|
||||
|
|
|
@ -825,6 +825,7 @@
|
|||
"sync_status_syncronizing": "SEDANG SINKRONISASI",
|
||||
"sync_status_timed_out": "WAKTU HABIS",
|
||||
"sync_status_unsupported": "Node yang tidak didukung",
|
||||
"synchronizing": "Sinkronisasi",
|
||||
"syncing_wallet_alert_content": "Saldo dan daftar transaksi Anda mungkin belum lengkap sampai tertulis “SYNCHRONIZED” di bagian atas. Klik/ketuk untuk mempelajari lebih lanjut.",
|
||||
"syncing_wallet_alert_title": "Dompet Anda sedang disinkronkan",
|
||||
"template": "Template",
|
||||
|
|
|
@ -823,6 +823,7 @@
|
|||
"sync_status_syncronizing": "SINCRONIZZAZIONE",
|
||||
"sync_status_timed_out": "TIMED OUT",
|
||||
"sync_status_unsupported": "NODO NON SUPPORTATO",
|
||||
"synchronizing": "Sincronizzazione",
|
||||
"syncing_wallet_alert_content": "Il saldo e l'elenco delle transazioni potrebbero non essere completi fin quando non viene visualizzato \"SINCRONIZZATO\" in alto. Clicca/tocca per saperne di più.",
|
||||
"syncing_wallet_alert_title": "Il tuo portafoglio si sta sincronizzando",
|
||||
"template": "Modello",
|
||||
|
|
|
@ -823,6 +823,7 @@
|
|||
"sync_status_syncronizing": "同期",
|
||||
"sync_status_timed_out": "タイムアウトしました",
|
||||
"sync_status_unsupported": "サポートされていないノード",
|
||||
"synchronizing": "同期",
|
||||
"syncing_wallet_alert_content": "上部に「同期済み」と表示されるまで、残高と取引リストが完了していない可能性があります。詳細については、クリック/タップしてください。",
|
||||
"syncing_wallet_alert_title": "ウォレットは同期中です",
|
||||
"template": "テンプレート",
|
||||
|
|
|
@ -822,6 +822,7 @@
|
|||
"sync_status_syncronizing": "동기화",
|
||||
"sync_status_timed_out": "시간 초과",
|
||||
"sync_status_unsupported": "지원되지 않은 노드",
|
||||
"synchronizing": "동기화",
|
||||
"syncing_wallet_alert_content": "상단에 \"동기화됨\"이라고 표시될 때까지 잔액 및 거래 목록이 완전하지 않을 수 있습니다. 자세히 알아보려면 클릭/탭하세요.",
|
||||
"syncing_wallet_alert_title": "지갑 동기화 중",
|
||||
"template": "주형",
|
||||
|
|
|
@ -822,6 +822,7 @@
|
|||
"sync_status_syncronizing": "ထပ်တူပြုခြင်း။",
|
||||
"sync_status_timed_out": "ထွက်အချိန်ကုန်",
|
||||
"sync_status_unsupported": "node မထောက်ပံ့ node ကို",
|
||||
"synchronizing": "ထပ်တူပြုခြင်း",
|
||||
"syncing_wallet_alert_content": "သင်၏လက်ကျန်နှင့် ငွေပေးငွေယူစာရင်းသည် ထိပ်တွင် \"Synchronizeed\" ဟုပြောသည်အထိ မပြီးမြောက်နိုင်ပါ။ ပိုမိုလေ့လာရန် နှိပ်/နှိပ်ပါ။",
|
||||
"syncing_wallet_alert_title": "သင့်ပိုက်ဆံအိတ်ကို စင့်ခ်လုပ်နေပါသည်။",
|
||||
"template": "ပုံစံခွက်",
|
||||
|
|
|
@ -822,6 +822,7 @@
|
|||
"sync_status_syncronizing": "SYNCHRONISEREN",
|
||||
"sync_status_timed_out": "Uitgeput",
|
||||
"sync_status_unsupported": "Niet ondersteund knooppunt",
|
||||
"synchronizing": "Synchronisatie",
|
||||
"syncing_wallet_alert_content": "Uw saldo- en transactielijst is mogelijk pas compleet als er bovenaan 'GESYNCHRONISEERD' staat. Klik/tik voor meer informatie.",
|
||||
"syncing_wallet_alert_title": "Uw portemonnee wordt gesynchroniseerd",
|
||||
"template": "Sjabloon",
|
||||
|
|
|
@ -822,6 +822,7 @@
|
|||
"sync_status_syncronizing": "SYNCHRONIZACJA",
|
||||
"sync_status_timed_out": "PRZEKROCZONO LIMIT CZASU",
|
||||
"sync_status_unsupported": "Nieobsługiwany węzeł",
|
||||
"synchronizing": "Synchronizacja",
|
||||
"syncing_wallet_alert_content": "Twoje saldo i lista transakcji mogą nie być kompletne, dopóki u góry nie pojawi się napis „SYNCHRONIZOWANY”. Kliknij/stuknij, aby dowiedzieć się więcej.",
|
||||
"syncing_wallet_alert_title": "Twój portfel się synchronizuje",
|
||||
"template": "Szablon",
|
||||
|
|
|
@ -824,6 +824,7 @@
|
|||
"sync_status_syncronizing": "SINCRONIZANDO",
|
||||
"sync_status_timed_out": "TEMPO ESGOTADO",
|
||||
"sync_status_unsupported": "Nó não suportado",
|
||||
"synchronizing": "Sincronizando",
|
||||
"syncing_wallet_alert_content": "Seu saldo e lista de transações podem não estar completos até que diga “SYNCHRONIZED” no topo. Clique/toque para saber mais.",
|
||||
"syncing_wallet_alert_title": "Sua carteira está sincronizando",
|
||||
"template": "Modelo",
|
||||
|
|
|
@ -823,6 +823,7 @@
|
|||
"sync_status_syncronizing": "СИНХРОНИЗАЦИЯ",
|
||||
"sync_status_timed_out": "ВРЕМЯ ВЫШЛО",
|
||||
"sync_status_unsupported": "Неподдерживаемый узел",
|
||||
"synchronizing": "Синхронизация",
|
||||
"syncing_wallet_alert_content": "Ваш баланс и список транзакций могут быть неполными, пока вверху не будет написано «СИНХРОНИЗИРОВАНО». Щелкните/коснитесь, чтобы узнать больше.",
|
||||
"syncing_wallet_alert_title": "Ваш кошелек синхронизируется",
|
||||
"template": "Шаблон",
|
||||
|
|
|
@ -822,6 +822,7 @@
|
|||
"sync_status_syncronizing": "กำลังซิงโครไนซ์",
|
||||
"sync_status_timed_out": "หมดเวลา",
|
||||
"sync_status_unsupported": "โหนดที่ไม่ได้รับการสนับสนุน",
|
||||
"synchronizing": "การซิงโครไนซ์",
|
||||
"syncing_wallet_alert_content": "รายการยอดเงินและธุรกรรมของคุณอาจไม่สมบูรณ์จนกว่าจะมีข้อความว่า “ซิงโครไนซ์” ที่ด้านบน คลิก/แตะเพื่อเรียนรู้เพิ่มเติม่",
|
||||
"syncing_wallet_alert_title": "กระเป๋าสตางค์ของคุณกำลังซิงค์",
|
||||
"template": "แบบฟอร์ม",
|
||||
|
|
|
@ -822,6 +822,7 @@
|
|||
"sync_status_syncronizing": "PAG-SYNCHRONIZE",
|
||||
"sync_status_timed_out": "NAG-TIME OUT",
|
||||
"sync_status_unsupported": "HINDI SUPORTADONG NODE",
|
||||
"synchronizing": "Pag -synchronize",
|
||||
"syncing_wallet_alert_content": "Ang iyong balanse at listahan ng transaksyon ay maaaring hindi kumpleto hanggang sa sabihin nito na \"NAKA-SYNCHRONIZE\" sa tuktok. Mag-click/tap upang malaman ang higit pa.",
|
||||
"syncing_wallet_alert_title": "Ang iyong wallet ay nag-sync",
|
||||
"template": "Template",
|
||||
|
|
|
@ -822,6 +822,7 @@
|
|||
"sync_status_syncronizing": "SENKRONİZE EDİLİYOR",
|
||||
"sync_status_timed_out": "ZAMAN AŞIMINA UĞRADI",
|
||||
"sync_status_unsupported": "Desteklenmeyen düğüm",
|
||||
"synchronizing": "Senkronize etme",
|
||||
"syncing_wallet_alert_content": "Bakiyeniz ve işlem listeniz, en üstte \"SENKRONİZE EDİLDİ\" yazana kadar tamamlanmamış olabilir. Daha fazla bilgi edinmek için tıklayın/dokunun.",
|
||||
"syncing_wallet_alert_title": "Cüzdanınız senkronize ediliyor",
|
||||
"template": "Şablon",
|
||||
|
|
|
@ -823,6 +823,7 @@
|
|||
"sync_status_syncronizing": "СИНХРОНІЗАЦІЯ",
|
||||
"sync_status_timed_out": "ТАЙМ-АУТ",
|
||||
"sync_status_unsupported": "Непідтримуваний вузол",
|
||||
"synchronizing": "Синхронізація",
|
||||
"syncing_wallet_alert_content": "Ваш баланс та список транзакцій може бути неповним, доки вгорі не буде написано «СИНХРОНІЗОВАНО». Натисніть/торкніться, щоб дізнатися більше.",
|
||||
"syncing_wallet_alert_title": "Ваш гаманець синхронізується",
|
||||
"template": "Шаблон",
|
||||
|
|
|
@ -824,6 +824,7 @@
|
|||
"sync_status_syncronizing": "مطابقت پذیری",
|
||||
"sync_status_timed_out": "وقت ختم",
|
||||
"sync_status_unsupported": "غیر تعاون یافتہ نوڈ",
|
||||
"synchronizing": "ہم آہنگی",
|
||||
"syncing_wallet_alert_content": "آپ کے بیلنس اور لین دین کی فہرست اس وقت تک مکمل نہیں ہو سکتی جب تک کہ یہ سب سے اوپر \"SYNCRONIZED\" نہ کہے۔ مزید جاننے کے لیے کلک/تھپتھپائیں۔",
|
||||
"syncing_wallet_alert_title": "آپ کا بٹوہ مطابقت پذیر ہو رہا ہے۔",
|
||||
"template": "سانچے",
|
||||
|
|
|
@ -819,6 +819,7 @@
|
|||
"sync_status_syncronizing": "ĐANG ĐỒNG BỘ",
|
||||
"sync_status_timed_out": "HẾT THỜI GIAN",
|
||||
"sync_status_unsupported": "NÓT KHÔNG ĐƯỢC HỖ TRỢ",
|
||||
"synchronizing": "Đồng bộ hóa",
|
||||
"syncing_wallet_alert_content": "Số dư và danh sách giao dịch của bạn có thể không đầy đủ cho đến khi nó hiển thị “ĐÃ ĐỒNG BỘ” ở trên cùng. Nhấn vào đây để tìm hiểu thêm.",
|
||||
"syncing_wallet_alert_title": "Ví của bạn đang đồng bộ",
|
||||
"template": "Mẫu",
|
||||
|
|
|
@ -823,6 +823,7 @@
|
|||
"sync_status_syncronizing": "Ń MÚDỌ́GBA",
|
||||
"sync_status_timed_out": "Ti akoko jade",
|
||||
"sync_status_unsupported": "Ile-igbimọ ti ko ni atilẹyin",
|
||||
"synchronizing": "Mimuuṣiṣẹpọ",
|
||||
"syncing_wallet_alert_content": "Iwontunws.funfun rẹ ati atokọ idunadura le ma pari titi ti yoo fi sọ “SYNCHRONIZED” ni oke. Tẹ/tẹ ni kia kia lati ni imọ siwaju sii.",
|
||||
"syncing_wallet_alert_title": "Apamọwọ rẹ n muṣiṣẹpọ",
|
||||
"template": "Àwòṣe",
|
||||
|
|
|
@ -822,6 +822,7 @@
|
|||
"sync_status_syncronizing": "正在同步",
|
||||
"sync_status_timed_out": "时间到",
|
||||
"sync_status_unsupported": "不支持的节点",
|
||||
"synchronizing": "同步",
|
||||
"syncing_wallet_alert_content": "您的余额和交易列表可能不完整,直到顶部显示“已同步”。单击/点击以了解更多信息。",
|
||||
"syncing_wallet_alert_title": "您的钱包正在同步",
|
||||
"template": "模板",
|
||||
|
|
|
@ -14,15 +14,15 @@ TYPES=($MONERO_COM $CAKEWALLET)
|
|||
APP_ANDROID_TYPE=$1
|
||||
|
||||
MONERO_COM_NAME="Monero.com"
|
||||
MONERO_COM_VERSION="1.20.3"
|
||||
MONERO_COM_BUILD_NUMBER=115
|
||||
MONERO_COM_VERSION="1.21.0"
|
||||
MONERO_COM_BUILD_NUMBER=116
|
||||
MONERO_COM_BUNDLE_ID="com.monero.app"
|
||||
MONERO_COM_PACKAGE="com.monero.app"
|
||||
MONERO_COM_SCHEME="monero.com"
|
||||
|
||||
CAKEWALLET_NAME="Cake Wallet"
|
||||
CAKEWALLET_VERSION="4.23.4"
|
||||
CAKEWALLET_BUILD_NUMBER=249
|
||||
CAKEWALLET_VERSION="4.24.0"
|
||||
CAKEWALLET_BUILD_NUMBER=252
|
||||
CAKEWALLET_BUNDLE_ID="com.cakewallet.cake_wallet"
|
||||
CAKEWALLET_PACKAGE="com.cakewallet.cake_wallet"
|
||||
CAKEWALLET_SCHEME="cakewallet"
|
||||
|
|
|
@ -7,7 +7,7 @@ cd "$(dirname "$0")"
|
|||
CW_DECRED_DIR=$(realpath ../..)/cw_decred
|
||||
LIBWALLET_PATH="${PWD}/decred/libwallet"
|
||||
LIBWALLET_URL="https://github.com/decred/libwallet.git"
|
||||
LIBWALLET_VERSION="87b2769538db3065b334d247b25774593fc6443d"
|
||||
LIBWALLET_VERSION="dba5327d35cb5d5d1ff113b780869deee154511f"
|
||||
|
||||
if [ -e $LIBWALLET_PATH ]; then
|
||||
rm -fr $LIBWALLET_PATH/{*,.*} || true
|
||||
|
|
|
@ -12,13 +12,13 @@ TYPES=($MONERO_COM $CAKEWALLET)
|
|||
APP_IOS_TYPE=$1
|
||||
|
||||
MONERO_COM_NAME="Monero.com"
|
||||
MONERO_COM_VERSION="1.20.3"
|
||||
MONERO_COM_BUILD_NUMBER=113
|
||||
MONERO_COM_VERSION="1.21.0"
|
||||
MONERO_COM_BUILD_NUMBER=114
|
||||
MONERO_COM_BUNDLE_ID="com.cakewallet.monero"
|
||||
|
||||
CAKEWALLET_NAME="Cake Wallet"
|
||||
CAKEWALLET_VERSION="4.23.4"
|
||||
CAKEWALLET_BUILD_NUMBER=302
|
||||
CAKEWALLET_VERSION="4.24.0"
|
||||
CAKEWALLET_BUILD_NUMBER=305
|
||||
CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet"
|
||||
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ set -e
|
|||
. ./config.sh
|
||||
LIBWALLET_PATH="${EXTERNAL_IOS_SOURCE_DIR}/libwallet"
|
||||
LIBWALLET_URL="https://github.com/decred/libwallet.git"
|
||||
LIBWALLET_VERSION="87b2769538db3065b334d247b25774593fc6443d"
|
||||
LIBWALLET_VERSION="dba5327d35cb5d5d1ff113b780869deee154511f"
|
||||
|
||||
if [ -e $LIBWALLET_PATH ]; then
|
||||
rm -fr $LIBWALLET_PATH
|
||||
|
|
|
@ -14,8 +14,8 @@ if [ -n "$1" ]; then
|
|||
fi
|
||||
|
||||
CAKEWALLET_NAME="Cake Wallet"
|
||||
CAKEWALLET_VERSION="1.13.4"
|
||||
CAKEWALLET_BUILD_NUMBER=49
|
||||
CAKEWALLET_VERSION="1.14.0"
|
||||
CAKEWALLET_BUILD_NUMBER=50
|
||||
|
||||
if ! [[ " ${TYPES[*]} " =~ " ${APP_LINUX_TYPE} " ]]; then
|
||||
echo "Wrong app type."
|
||||
|
|
|
@ -36,7 +36,7 @@ case $APP_MACOS_TYPE in
|
|||
$MONERO_COM)
|
||||
CONFIG_ARGS="--monero";;
|
||||
$CAKEWALLET)
|
||||
CONFIG_ARGS="--monero --bitcoin --ethereum --polygon --nano --bitcoinCash --solana --tron --wownero --decred";;
|
||||
CONFIG_ARGS="--monero --bitcoin --ethereum --polygon --nano --bitcoinCash --solana --tron --wownero";;
|
||||
esac
|
||||
|
||||
cp -rf pubspec_description.yaml pubspec.yaml
|
||||
|
|
|
@ -16,13 +16,13 @@ if [ -n "$1" ]; then
|
|||
fi
|
||||
|
||||
MONERO_COM_NAME="Monero.com"
|
||||
MONERO_COM_VERSION="1.10.3"
|
||||
MONERO_COM_BUILD_NUMBER=45
|
||||
MONERO_COM_VERSION="1.11.0"
|
||||
MONERO_COM_BUILD_NUMBER=46
|
||||
MONERO_COM_BUNDLE_ID="com.cakewallet.monero"
|
||||
|
||||
CAKEWALLET_NAME="Cake Wallet"
|
||||
CAKEWALLET_VERSION="1.16.4"
|
||||
CAKEWALLET_BUILD_NUMBER=107
|
||||
CAKEWALLET_VERSION="1.17.0"
|
||||
CAKEWALLET_BUILD_NUMBER=108
|
||||
CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet"
|
||||
|
||||
if ! [[ " ${TYPES[*]} " =~ " ${APP_MACOS_TYPE} " ]]; then
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
LIBWALLET_PATH="${EXTERNAL_MACOS_SOURCE_DIR}/libwallet"
|
||||
LIBWALLET_URL="https://github.com/decred/libwallet.git"
|
||||
LIBWALLET_VERSION="87b2769538db3065b334d247b25774593fc6443d"
|
||||
LIBWALLET_VERSION="dba5327d35cb5d5d1ff113b780869deee154511f"
|
||||
|
||||
echo "======================= DECRED LIBWALLET ========================="
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#define MyAppName "Cake Wallet"
|
||||
#define MyAppVersion "0.4.4"
|
||||
#define MyAppVersion "0.5.0"
|
||||
#define MyAppPublisher "Cake Labs LLC"
|
||||
#define MyAppURL "https://cakewallet.com/"
|
||||
#define MyAppExeName "CakeWallet.exe"
|
||||
|
|
Loading…
Reference in a new issue