mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2025-03-25 08:39:06 +00:00
fix getting correct currency from template (#898)
This commit is contained in:
parent
0a35e5c3e1
commit
f47f690803
5 changed files with 51 additions and 28 deletions
|
@ -4,14 +4,15 @@ part 'exchange_template.g.dart';
|
||||||
|
|
||||||
@HiveType(typeId: ExchangeTemplate.typeId)
|
@HiveType(typeId: ExchangeTemplate.typeId)
|
||||||
class ExchangeTemplate extends HiveObject {
|
class ExchangeTemplate extends HiveObject {
|
||||||
ExchangeTemplate({
|
ExchangeTemplate(
|
||||||
required this.amountRaw,
|
{required this.amountRaw,
|
||||||
required this.depositCurrencyRaw,
|
required this.depositCurrencyRaw,
|
||||||
required this.receiveCurrencyRaw,
|
required this.receiveCurrencyRaw,
|
||||||
required this.providerRaw,
|
required this.providerRaw,
|
||||||
required this.depositAddressRaw,
|
required this.depositAddressRaw,
|
||||||
required this.receiveAddressRaw
|
required this.receiveAddressRaw,
|
||||||
});
|
required this.depositCurrencyTitleRaw,
|
||||||
|
required this.receiveCurrencyTitleRaw});
|
||||||
|
|
||||||
static const typeId = 7;
|
static const typeId = 7;
|
||||||
static const boxName = 'ExchangeTemplate';
|
static const boxName = 'ExchangeTemplate';
|
||||||
|
@ -34,6 +35,12 @@ class ExchangeTemplate extends HiveObject {
|
||||||
@HiveField(5)
|
@HiveField(5)
|
||||||
String? receiveAddressRaw;
|
String? receiveAddressRaw;
|
||||||
|
|
||||||
|
@HiveField(6)
|
||||||
|
String? depositCurrencyTitleRaw;
|
||||||
|
|
||||||
|
@HiveField(7)
|
||||||
|
String? receiveCurrencyTitleRaw;
|
||||||
|
|
||||||
String get amount => amountRaw ?? '';
|
String get amount => amountRaw ?? '';
|
||||||
|
|
||||||
String get depositCurrency => depositCurrencyRaw ?? '';
|
String get depositCurrency => depositCurrencyRaw ?? '';
|
||||||
|
@ -45,4 +52,8 @@ class ExchangeTemplate extends HiveObject {
|
||||||
String get depositAddress => depositAddressRaw ?? '';
|
String get depositAddress => depositAddressRaw ?? '';
|
||||||
|
|
||||||
String get receiveAddress => receiveAddressRaw ?? '';
|
String get receiveAddress => receiveAddressRaw ?? '';
|
||||||
}
|
|
||||||
|
String get depositCurrencyTitle => depositCurrencyTitleRaw ?? '';
|
||||||
|
|
||||||
|
String get receiveCurrencyTitle => receiveCurrencyTitleRaw ?? '';
|
||||||
|
}
|
||||||
|
|
|
@ -280,8 +280,8 @@ class ExchangePage extends BasePage {
|
||||||
return TemplateTile(
|
return TemplateTile(
|
||||||
key: UniqueKey(),
|
key: UniqueKey(),
|
||||||
amount: template.amount,
|
amount: template.amount,
|
||||||
from: template.depositCurrency,
|
from: template.depositCurrencyTitle,
|
||||||
to: template.receiveCurrency,
|
to: template.receiveCurrencyTitle,
|
||||||
onTap: () {
|
onTap: () {
|
||||||
applyTemplate(context, exchangeViewModel, template);
|
applyTemplate(context, exchangeViewModel, template);
|
||||||
},
|
},
|
||||||
|
|
|
@ -239,9 +239,13 @@ class ExchangeTemplatePage extends BasePage {
|
||||||
exchangeViewModel.addTemplate(
|
exchangeViewModel.addTemplate(
|
||||||
amount: exchangeViewModel.depositAmount,
|
amount: exchangeViewModel.depositAmount,
|
||||||
depositCurrency:
|
depositCurrency:
|
||||||
exchangeViewModel.depositCurrency.toString(),
|
exchangeViewModel.depositCurrency.name,
|
||||||
|
depositCurrencyTitle: exchangeViewModel
|
||||||
|
.depositCurrency.title + ' ${exchangeViewModel.depositCurrency.tag ?? ''}',
|
||||||
receiveCurrency:
|
receiveCurrency:
|
||||||
exchangeViewModel.receiveCurrency.toString(),
|
exchangeViewModel.receiveCurrency.name,
|
||||||
|
receiveCurrencyTitle: exchangeViewModel
|
||||||
|
.receiveCurrency.title + ' ${exchangeViewModel.receiveCurrency.tag ?? ''}',
|
||||||
provider: exchangeViewModel.provider.toString(),
|
provider: exchangeViewModel.provider.toString(),
|
||||||
depositAddress: exchangeViewModel.depositAddress,
|
depositAddress: exchangeViewModel.depositAddress,
|
||||||
receiveAddress: exchangeViewModel.receiveAddress);
|
receiveAddress: exchangeViewModel.receiveAddress);
|
||||||
|
|
|
@ -8,8 +8,8 @@ part 'exchange_template_store.g.dart';
|
||||||
class ExchangeTemplateStore = ExchangeTemplateBase with _$ExchangeTemplateStore;
|
class ExchangeTemplateStore = ExchangeTemplateBase with _$ExchangeTemplateStore;
|
||||||
|
|
||||||
abstract class ExchangeTemplateBase with Store {
|
abstract class ExchangeTemplateBase with Store {
|
||||||
ExchangeTemplateBase({required this.templateSource})
|
ExchangeTemplateBase({required this.templateSource})
|
||||||
: templates = ObservableList<ExchangeTemplate>() {
|
: templates = ObservableList<ExchangeTemplate>() {
|
||||||
templates = ObservableList<ExchangeTemplate>();
|
templates = ObservableList<ExchangeTemplate>();
|
||||||
update();
|
update();
|
||||||
}
|
}
|
||||||
|
@ -20,27 +20,31 @@ abstract class ExchangeTemplateBase with Store {
|
||||||
Box<ExchangeTemplate> templateSource;
|
Box<ExchangeTemplate> templateSource;
|
||||||
|
|
||||||
@action
|
@action
|
||||||
void update() =>
|
void update() => templates.replaceRange(0, templates.length, templateSource.values.toList());
|
||||||
templates.replaceRange(0, templates.length, templateSource.values.toList());
|
|
||||||
|
|
||||||
@action
|
@action
|
||||||
Future<void> addTemplate({
|
Future<void> addTemplate({
|
||||||
required String amount,
|
required String amount,
|
||||||
required String depositCurrency,
|
required String depositCurrency,
|
||||||
required String receiveCurrency,
|
required String receiveCurrency,
|
||||||
required String provider,
|
required String provider,
|
||||||
required String depositAddress,
|
required String depositAddress,
|
||||||
required String receiveAddress}) async {
|
required String receiveAddress,
|
||||||
|
required String depositCurrencyTitle,
|
||||||
|
required String receiveCurrencyTitle,
|
||||||
|
}) async {
|
||||||
final template = ExchangeTemplate(
|
final template = ExchangeTemplate(
|
||||||
amountRaw: amount,
|
amountRaw: amount,
|
||||||
depositCurrencyRaw: depositCurrency,
|
depositCurrencyRaw: depositCurrency,
|
||||||
receiveCurrencyRaw: receiveCurrency,
|
receiveCurrencyRaw: receiveCurrency,
|
||||||
providerRaw: provider,
|
providerRaw: provider,
|
||||||
depositAddressRaw: depositAddress,
|
depositAddressRaw: depositAddress,
|
||||||
receiveAddressRaw: receiveAddress);
|
receiveAddressRaw: receiveAddress,
|
||||||
|
depositCurrencyTitleRaw: depositCurrencyTitle,
|
||||||
|
receiveCurrencyTitleRaw: receiveCurrencyTitle);
|
||||||
await templateSource.add(template);
|
await templateSource.add(template);
|
||||||
}
|
}
|
||||||
|
|
||||||
@action
|
@action
|
||||||
Future<void> remove({required ExchangeTemplate template}) async => await template.delete();
|
Future<void> remove({required ExchangeTemplate template}) async => await template.delete();
|
||||||
}
|
}
|
||||||
|
|
|
@ -578,14 +578,18 @@ abstract class ExchangeViewModelBase with Store {
|
||||||
required String receiveCurrency,
|
required String receiveCurrency,
|
||||||
required String provider,
|
required String provider,
|
||||||
required String depositAddress,
|
required String depositAddress,
|
||||||
required String receiveAddress}) =>
|
required String receiveAddress,
|
||||||
|
required String depositCurrencyTitle,
|
||||||
|
required String receiveCurrencyTitle}) =>
|
||||||
_exchangeTemplateStore.addTemplate(
|
_exchangeTemplateStore.addTemplate(
|
||||||
amount: amount,
|
amount: amount,
|
||||||
depositCurrency: depositCurrency,
|
depositCurrency: depositCurrency,
|
||||||
receiveCurrency: receiveCurrency,
|
receiveCurrency: receiveCurrency,
|
||||||
provider: provider,
|
provider: provider,
|
||||||
depositAddress: depositAddress,
|
depositAddress: depositAddress,
|
||||||
receiveAddress: receiveAddress);
|
receiveAddress: receiveAddress,
|
||||||
|
depositCurrencyTitle: depositCurrencyTitle,
|
||||||
|
receiveCurrencyTitle: receiveCurrencyTitle);
|
||||||
|
|
||||||
void removeTemplate({required ExchangeTemplate template}) =>
|
void removeTemplate({required ExchangeTemplate template}) =>
|
||||||
_exchangeTemplateStore.remove(template: template);
|
_exchangeTemplateStore.remove(template: template);
|
||||||
|
|
Loading…
Reference in a new issue