mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2025-06-28 20:39:51 +00:00
v4.26.0 Release Candidate (#2191)
* v4.26.0 Release Candidate * Fix Wownero Creation issue * Add KES fiat currency
This commit is contained in:
parent
a7376c3225
commit
ce12f517f4
10 changed files with 84 additions and 31 deletions
|
@ -1,3 +1,6 @@
|
||||||
UI/UX enhancements
|
Monero 12-word seed support (Wallet Groups support as well)
|
||||||
Performance improvements
|
Integrate DFX's OpenCryptoPay
|
||||||
|
Exchange flow enhancements
|
||||||
|
Hardware Wallets flow enhancements
|
||||||
|
Minor UI enhancements
|
||||||
Bug fixes
|
Bug fixes
|
|
@ -1,4 +1,6 @@
|
||||||
New App Logo
|
Monero 12-word seed support (Wallet Groups support as well)
|
||||||
UI/UX enhancements
|
Integrate DFX's OpenCryptoPay
|
||||||
Performance improvements
|
Exchange flow enhancements
|
||||||
|
Hardware Wallets flow enhancements
|
||||||
|
Minor UI enhancements
|
||||||
Bug fixes
|
Bug fixes
|
|
@ -9,8 +9,50 @@ class FiatCurrency extends EnumerableItem<String> with Serializable<String> impl
|
||||||
|
|
||||||
static List<FiatCurrency> get all => _all.values.toList();
|
static List<FiatCurrency> get all => _all.values.toList();
|
||||||
|
|
||||||
static List<FiatCurrency> get currenciesAvailableToBuyWith =>
|
static List<FiatCurrency> get currenciesAvailableToBuyWith => [
|
||||||
[amd, aud, bgn, brl, cad, chf, clp, cop, czk, dkk, egp, eur, gbp, gtq, hkd, hrk, huf, idr, ils, inr, isk, jpy, krw, mad, mxn, myr, ngn, nok, nzd, php, pkr, pln, ron, sek, sgd, thb, twd, usd, vnd, zar, tur,];
|
amd,
|
||||||
|
aud,
|
||||||
|
bgn,
|
||||||
|
brl,
|
||||||
|
cad,
|
||||||
|
chf,
|
||||||
|
clp,
|
||||||
|
cop,
|
||||||
|
czk,
|
||||||
|
dkk,
|
||||||
|
egp,
|
||||||
|
eur,
|
||||||
|
gbp,
|
||||||
|
gtq,
|
||||||
|
hkd,
|
||||||
|
hrk,
|
||||||
|
huf,
|
||||||
|
idr,
|
||||||
|
ils,
|
||||||
|
inr,
|
||||||
|
isk,
|
||||||
|
jpy,
|
||||||
|
krw,
|
||||||
|
mad,
|
||||||
|
mxn,
|
||||||
|
myr,
|
||||||
|
ngn,
|
||||||
|
nok,
|
||||||
|
nzd,
|
||||||
|
php,
|
||||||
|
pkr,
|
||||||
|
pln,
|
||||||
|
ron,
|
||||||
|
sek,
|
||||||
|
sgd,
|
||||||
|
thb,
|
||||||
|
twd,
|
||||||
|
usd,
|
||||||
|
vnd,
|
||||||
|
zar,
|
||||||
|
tur,
|
||||||
|
kes,
|
||||||
|
];
|
||||||
|
|
||||||
static const amd = FiatCurrency(symbol: 'AMD', countryCode: "arm", fullName: "Armenian Dram");
|
static const amd = FiatCurrency(symbol: 'AMD', countryCode: "arm", fullName: "Armenian Dram");
|
||||||
static const ars = FiatCurrency(symbol: 'ARS', countryCode: "arg", fullName: "Argentine Peso");
|
static const ars = FiatCurrency(symbol: 'ARS', countryCode: "arg", fullName: "Argentine Peso");
|
||||||
|
@ -62,6 +104,7 @@ class FiatCurrency extends EnumerableItem<String> with Serializable<String> impl
|
||||||
static const vnd = FiatCurrency(symbol: 'VND', countryCode: "vnm", fullName: "Vietnamese Dong đồng");
|
static const vnd = FiatCurrency(symbol: 'VND', countryCode: "vnm", fullName: "Vietnamese Dong đồng");
|
||||||
static const zar = FiatCurrency(symbol: 'ZAR', countryCode: "saf", fullName: "South African Rand");
|
static const zar = FiatCurrency(symbol: 'ZAR', countryCode: "saf", fullName: "South African Rand");
|
||||||
static const tur = FiatCurrency(symbol: 'TRY', countryCode: "tur", fullName: "Turkish Lira");
|
static const tur = FiatCurrency(symbol: 'TRY', countryCode: "tur", fullName: "Turkish Lira");
|
||||||
|
static const kes = FiatCurrency(symbol: 'KES', countryCode: "ken", fullName: "Kenyan Shillings");
|
||||||
|
|
||||||
static final _all = {
|
static final _all = {
|
||||||
FiatCurrency.amd.raw: FiatCurrency.amd,
|
FiatCurrency.amd.raw: FiatCurrency.amd,
|
||||||
|
@ -114,6 +157,7 @@ class FiatCurrency extends EnumerableItem<String> with Serializable<String> impl
|
||||||
FiatCurrency.vnd.raw: FiatCurrency.vnd,
|
FiatCurrency.vnd.raw: FiatCurrency.vnd,
|
||||||
FiatCurrency.zar.raw: FiatCurrency.zar,
|
FiatCurrency.zar.raw: FiatCurrency.zar,
|
||||||
FiatCurrency.tur.raw: FiatCurrency.tur,
|
FiatCurrency.tur.raw: FiatCurrency.tur,
|
||||||
|
FiatCurrency.kes.raw: FiatCurrency.kes,
|
||||||
};
|
};
|
||||||
|
|
||||||
static FiatCurrency deserialize({required String raw}) => _all[raw] ?? FiatCurrency.usd;
|
static FiatCurrency deserialize({required String raw}) => _all[raw] ?? FiatCurrency.usd;
|
||||||
|
@ -123,13 +167,13 @@ class FiatCurrency extends EnumerableItem<String> with Serializable<String> impl
|
||||||
|
|
||||||
@override
|
@override
|
||||||
int get hashCode => raw.hashCode ^ title.hashCode;
|
int get hashCode => raw.hashCode ^ title.hashCode;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get name => raw;
|
String get name => raw;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String? get tag => null;
|
String? get tag => null;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get iconPath => "assets/images/flags/$countryCode.png";
|
String get iconPath => "assets/images/flags/$countryCode.png";
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,6 +21,7 @@ import 'package:cake_wallet/utils/responsive_layout_util.dart';
|
||||||
import 'package:cake_wallet/utils/show_pop_up.dart';
|
import 'package:cake_wallet/utils/show_pop_up.dart';
|
||||||
import 'package:cake_wallet/view_model/seed_settings_view_model.dart';
|
import 'package:cake_wallet/view_model/seed_settings_view_model.dart';
|
||||||
import 'package:cake_wallet/view_model/wallet_new_vm.dart';
|
import 'package:cake_wallet/view_model/wallet_new_vm.dart';
|
||||||
|
import 'package:cw_core/wallet_type.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_mobx/flutter_mobx.dart';
|
import 'package:flutter_mobx/flutter_mobx.dart';
|
||||||
import 'package:mobx/mobx.dart';
|
import 'package:mobx/mobx.dart';
|
||||||
|
@ -102,8 +103,8 @@ class _WalletNameFormState extends State<WalletNameForm> {
|
||||||
_stateReaction ??= reaction((_) => _walletNewVM.state, (ExecutionState state) async {
|
_stateReaction ??= reaction((_) => _walletNewVM.state, (ExecutionState state) async {
|
||||||
if (state is ExecutedSuccessfullyState) {
|
if (state is ExecutedSuccessfullyState) {
|
||||||
if (widget.isChildWallet) {
|
if (widget.isChildWallet) {
|
||||||
Navigator.of(navigatorKey.currentContext ?? context)
|
Navigator.of(navigatorKey.currentContext ?? context).pushNamed(
|
||||||
.pushNamed(Routes.walletGroupExistingSeedDescriptionPage,
|
Routes.walletGroupExistingSeedDescriptionPage,
|
||||||
arguments: _walletNewVM.seedPhraseWordsLength);
|
arguments: _walletNewVM.seedPhraseWordsLength);
|
||||||
} else {
|
} else {
|
||||||
Navigator.of(navigatorKey.currentContext ?? context)
|
Navigator.of(navigatorKey.currentContext ?? context)
|
||||||
|
@ -317,7 +318,11 @@ class _WalletNameFormState extends State<WalletNameForm> {
|
||||||
await showPopUp<void>(
|
await showPopUp<void>(
|
||||||
context: context,
|
context: context,
|
||||||
builder: (_) => Picker(
|
builder: (_) => Picker(
|
||||||
items: MoneroSeedType.all,
|
items: MoneroSeedType.all
|
||||||
|
.where((e) => // exclude bip39 in case of Wownero
|
||||||
|
widget._walletNewVM.type != WalletType.wownero ||
|
||||||
|
e.raw != MoneroSeedType.bip39.raw)
|
||||||
|
.toList(),
|
||||||
selectedAtIndex: isPolyseed ? 1 : 0,
|
selectedAtIndex: isPolyseed ? 1 : 0,
|
||||||
onItemSelected: _setSeedType,
|
onItemSelected: _setSeedType,
|
||||||
isSeparated: false,
|
isSeparated: false,
|
||||||
|
@ -402,8 +407,7 @@ class _WalletNameFormState extends State<WalletNameForm> {
|
||||||
await _walletNewVM.create(
|
await _walletNewVM.create(
|
||||||
options: _walletNewVM.hasLanguageSelector
|
options: _walletNewVM.hasLanguageSelector
|
||||||
? [
|
? [
|
||||||
_languageSelectorKey.currentState?.selected ??
|
_languageSelectorKey.currentState?.selected ?? defaultSeedLanguage,
|
||||||
defaultSeedLanguage,
|
|
||||||
widget._seedSettingsViewModel.moneroSeedType
|
widget._seedSettingsViewModel.moneroSeedType
|
||||||
]
|
]
|
||||||
: null);
|
: null);
|
||||||
|
|
|
@ -161,7 +161,7 @@ abstract class WalletNewVMBase extends WalletCreationVM with Store {
|
||||||
return wownero!.createWowneroNewWalletCredentials(
|
return wownero!.createWowneroNewWalletCredentials(
|
||||||
name: name,
|
name: name,
|
||||||
language: options!.first as String,
|
language: options!.first as String,
|
||||||
isPolyseed: options.last as bool,
|
isPolyseed: (options.last as MoneroSeedType).raw == 1,
|
||||||
password: walletPassword,
|
password: walletPassword,
|
||||||
passphrase: passphrase,
|
passphrase: passphrase,
|
||||||
);
|
);
|
||||||
|
|
|
@ -14,15 +14,15 @@ TYPES=($MONERO_COM $CAKEWALLET)
|
||||||
APP_ANDROID_TYPE=$1
|
APP_ANDROID_TYPE=$1
|
||||||
|
|
||||||
MONERO_COM_NAME="Monero.com"
|
MONERO_COM_NAME="Monero.com"
|
||||||
MONERO_COM_VERSION="4.25.0"
|
MONERO_COM_VERSION="4.26.0"
|
||||||
MONERO_COM_BUILD_NUMBER=118
|
MONERO_COM_BUILD_NUMBER=119
|
||||||
MONERO_COM_BUNDLE_ID="com.monero.app"
|
MONERO_COM_BUNDLE_ID="com.monero.app"
|
||||||
MONERO_COM_PACKAGE="com.monero.app"
|
MONERO_COM_PACKAGE="com.monero.app"
|
||||||
MONERO_COM_SCHEME="monero.com"
|
MONERO_COM_SCHEME="monero.com"
|
||||||
|
|
||||||
CAKEWALLET_NAME="Cake Wallet"
|
CAKEWALLET_NAME="Cake Wallet"
|
||||||
CAKEWALLET_VERSION="4.25.0"
|
CAKEWALLET_VERSION="4.26.0"
|
||||||
CAKEWALLET_BUILD_NUMBER=256
|
CAKEWALLET_BUILD_NUMBER=257
|
||||||
CAKEWALLET_BUNDLE_ID="com.cakewallet.cake_wallet"
|
CAKEWALLET_BUNDLE_ID="com.cakewallet.cake_wallet"
|
||||||
CAKEWALLET_PACKAGE="com.cakewallet.cake_wallet"
|
CAKEWALLET_PACKAGE="com.cakewallet.cake_wallet"
|
||||||
CAKEWALLET_SCHEME="cakewallet"
|
CAKEWALLET_SCHEME="cakewallet"
|
||||||
|
|
|
@ -12,13 +12,13 @@ TYPES=($MONERO_COM $CAKEWALLET)
|
||||||
APP_IOS_TYPE=$1
|
APP_IOS_TYPE=$1
|
||||||
|
|
||||||
MONERO_COM_NAME="Monero.com"
|
MONERO_COM_NAME="Monero.com"
|
||||||
MONERO_COM_VERSION="4.25.0"
|
MONERO_COM_VERSION="4.26.0"
|
||||||
MONERO_COM_BUILD_NUMBER=115
|
MONERO_COM_BUILD_NUMBER=116
|
||||||
MONERO_COM_BUNDLE_ID="com.cakewallet.monero"
|
MONERO_COM_BUNDLE_ID="com.cakewallet.monero"
|
||||||
|
|
||||||
CAKEWALLET_NAME="Cake Wallet"
|
CAKEWALLET_NAME="Cake Wallet"
|
||||||
CAKEWALLET_VERSION="4.25.0"
|
CAKEWALLET_VERSION="4.26.0"
|
||||||
CAKEWALLET_BUILD_NUMBER=310
|
CAKEWALLET_BUILD_NUMBER=311
|
||||||
CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet"
|
CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet"
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -14,8 +14,8 @@ if [ -n "$1" ]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
CAKEWALLET_NAME="Cake Wallet"
|
CAKEWALLET_NAME="Cake Wallet"
|
||||||
CAKEWALLET_VERSION="4.25.0"
|
CAKEWALLET_VERSION="4.26.0"
|
||||||
CAKEWALLET_BUILD_NUMBER=51
|
CAKEWALLET_BUILD_NUMBER=52
|
||||||
|
|
||||||
if ! [[ " ${TYPES[*]} " =~ " ${APP_LINUX_TYPE} " ]]; then
|
if ! [[ " ${TYPES[*]} " =~ " ${APP_LINUX_TYPE} " ]]; then
|
||||||
echo "Wrong app type."
|
echo "Wrong app type."
|
||||||
|
|
|
@ -16,13 +16,13 @@ if [ -n "$1" ]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
MONERO_COM_NAME="Monero.com"
|
MONERO_COM_NAME="Monero.com"
|
||||||
MONERO_COM_VERSION="4.25.0"
|
MONERO_COM_VERSION="4.26.0"
|
||||||
MONERO_COM_BUILD_NUMBER=47
|
MONERO_COM_BUILD_NUMBER=48
|
||||||
MONERO_COM_BUNDLE_ID="com.cakewallet.monero"
|
MONERO_COM_BUNDLE_ID="com.cakewallet.monero"
|
||||||
|
|
||||||
CAKEWALLET_NAME="Cake Wallet"
|
CAKEWALLET_NAME="Cake Wallet"
|
||||||
CAKEWALLET_VERSION="4.25.0"
|
CAKEWALLET_VERSION="4.26.0"
|
||||||
CAKEWALLET_BUILD_NUMBER=109
|
CAKEWALLET_BUILD_NUMBER=110
|
||||||
CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet"
|
CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet"
|
||||||
|
|
||||||
if ! [[ " ${TYPES[*]} " =~ " ${APP_MACOS_TYPE} " ]]; then
|
if ! [[ " ${TYPES[*]} " =~ " ${APP_MACOS_TYPE} " ]]; then
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
#define MyAppName "Cake Wallet"
|
#define MyAppName "Cake Wallet"
|
||||||
#define MyAppVersion "4.25.0"
|
#define MyAppVersion "4.26.0"
|
||||||
#define MyAppPublisher "Cake Labs LLC"
|
#define MyAppPublisher "Cake Labs LLC"
|
||||||
#define MyAppURL "https://cakewallet.com/"
|
#define MyAppURL "https://cakewallet.com/"
|
||||||
#define MyAppExeName "CakeWallet.exe"
|
#define MyAppExeName "CakeWallet.exe"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue