Skip to content
This repository has been archived by the owner on Mar 1, 2023. It is now read-only.

Commit

Permalink
init idena plugin for flutter/dart
Browse files Browse the repository at this point in the history
  • Loading branch information
redDwarf03 committed Jun 14, 2021
1 parent be383c8 commit 5686852
Show file tree
Hide file tree
Showing 377 changed files with 3,860 additions and 49,032 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -68,3 +68,4 @@ ios/Flutter/.last_build_id
pubspec.lock
ios/fastlane/report.xml
ios/Flutter/.last_build_id
preparePackage.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
- Fix connection issue to public node
139 changes: 93 additions & 46 deletions lib/app_icons.dart
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,10 @@
/// fonts:
/// - asset: fonts/AppIcons.ttf
///
///
///
///
// Flutter imports:
import 'package:flutter/widgets.dart';

class AppIcons {
Expand All @@ -21,49 +23,94 @@ class AppIcons {
static const _kFontFam = 'AppIcons';
static const _kFontPkg = null;

static const IconData accountswitcher = IconData(0xe800, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData accountwallet = IconData(0xe801, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData addcontact = IconData(0xe802, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData appia = IconData(0xe803, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData at = IconData(0xe804, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData back = IconData(0xe805, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData backupseed = IconData(0xe806, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData btc = IconData(0xe80a, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData changerepresentative = IconData(0xe80b, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData close = IconData(0xe80c, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData contact = IconData(0xe80d, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData currency = IconData(0xe80e, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData dotemtpy = IconData(0xe80f, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData dotfilled = IconData(0xe810, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData export_icon = IconData(0xe811, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData fingerprint = IconData(0xe812, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData forward = IconData(0xe813, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData import_icon = IconData(0xe814, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData importwallet = IconData(0xe815, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData info = IconData(0xe816, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData language = IconData(0xe817, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData lock = IconData(0xe818, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData logout = IconData(0xe819, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData max = IconData(0xe81a, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData newwallet = IconData(0xe820, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData notifications = IconData(0xe821, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData paste = IconData(0xe822, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData received = IconData(0xe823, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData scan = IconData(0xe824, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData score = IconData(0xe825, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData search = IconData(0xe826, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData seed = IconData(0xe827, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData sent = IconData(0xe828, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData settings = IconData(0xe829, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData share = IconData(0xe82a, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData success = IconData(0xe82b, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData swapcurrency = IconData(0xe82c, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData theme = IconData(0xe82d, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData timer = IconData(0xe82e, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData transferfunds = IconData(0xe82f, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData trashcan = IconData(0xe830, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData walletpassword = IconData(0xe831, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData warning = IconData(0xe832, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData walletpassworddisabled = IconData(0xe833, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData security = IconData(0xe834, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData accountswitcher =
IconData(0xe800, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData accountwallet =
IconData(0xe801, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData addcontact =
IconData(0xe802, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData appia =
IconData(0xe803, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData at =
IconData(0xe804, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData back =
IconData(0xe805, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData backupseed =
IconData(0xe806, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData btc =
IconData(0xe80a, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData changerepresentative =
IconData(0xe80b, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData close =
IconData(0xe80c, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData contact =
IconData(0xe80d, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData currency =
IconData(0xe80e, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData dotemtpy =
IconData(0xe80f, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData dotfilled =
IconData(0xe810, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData export_icon =
IconData(0xe811, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData fingerprint =
IconData(0xe812, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData forward =
IconData(0xe813, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData import_icon =
IconData(0xe814, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData importwallet =
IconData(0xe815, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData info =
IconData(0xe816, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData language =
IconData(0xe817, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData lock =
IconData(0xe818, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData logout =
IconData(0xe819, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData max =
IconData(0xe81a, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData newwallet =
IconData(0xe820, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData notifications =
IconData(0xe821, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData paste =
IconData(0xe822, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData received =
IconData(0xe823, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData scan =
IconData(0xe824, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData score =
IconData(0xe825, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData search =
IconData(0xe826, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData seed =
IconData(0xe827, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData sent =
IconData(0xe828, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData settings =
IconData(0xe829, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData share =
IconData(0xe82a, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData success =
IconData(0xe82b, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData swapcurrency =
IconData(0xe82c, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData theme =
IconData(0xe82d, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData timer =
IconData(0xe82e, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData transferfunds =
IconData(0xe82f, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData trashcan =
IconData(0xe830, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData walletpassword =
IconData(0xe831, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData warning =
IconData(0xe832, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData walletpassworddisabled =
IconData(0xe833, fontFamily: _kFontFam, fontPackage: _kFontPkg);
static const IconData security =
IconData(0xe834, fontFamily: _kFontFam, fontPackage: _kFontPkg);
}
75 changes: 47 additions & 28 deletions lib/appstate_container.dart
Original file line number Diff line number Diff line change
@@ -1,35 +1,43 @@
// @dart=2.9

// Dart imports:
import 'dart:async';
import 'package:hex/hex.dart';
import 'package:logger/logger.dart';
import 'package:my_idena/model/smartContractMultiSig.dart';
import 'package:my_idena/model/vault.dart';
import 'package:my_idena/model/wallet.dart';
import 'package:event_taxi/event_taxi.dart';

// Flutter imports:
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:my_idena/network/model/dictWords.dart';
import 'package:my_idena/network/model/request/contract/api_contract_balance_updates_response.dart';
import 'package:my_idena/network/model/request/contract/api_contract_response.dart';
import 'package:my_idena/network/model/response/bcn_transactions_response.dart';
import 'package:my_idena/network/model/response/contract/contract_get_stake_response.dart';
import 'package:my_idena/network/model/response/dna_getBalance_response.dart';
import 'package:my_idena/network/model/response/dna_identity_response.dart';
import 'package:my_idena/factory/app_service.dart';
import 'package:my_idena/factory/smart_contract_service.dart';
import 'package:my_idena/util/app_ffi/encrypt/crypter.dart';
import 'package:my_idena/util/helpers.dart';

// Package imports:
import 'package:event_taxi/event_taxi.dart';
import 'package:hex/hex.dart';
import 'package:idena_lib_dart/factory/app_service.dart';
import 'package:idena_lib_dart/factory/smart_contract_service.dart';
import 'package:idena_lib_dart/model/dictWords.dart';
import 'package:idena_lib_dart/model/request/contract/api_contract_balance_updates_response.dart';
import 'package:idena_lib_dart/model/request/contract/api_contract_response.dart';
import 'package:idena_lib_dart/model/response/bcn_transactions_response.dart';
import 'package:idena_lib_dart/model/response/contract/contract_get_stake_response.dart';
import 'package:idena_lib_dart/model/response/dna_getBalance_response.dart';
import 'package:idena_lib_dart/model/response/dna_identity_response.dart';
import 'package:idena_lib_dart/model/response/simplePrice/simple_price_response.dart';
import 'package:idena_lib_dart/model/smartContractMultiSig.dart';
import 'package:idena_lib_dart/util/encrypt/crypter.dart';
import 'package:idena_lib_dart/util/helpers.dart';
import 'package:logger/logger.dart';
import 'package:uni_links/uni_links.dart';
import 'package:my_idena/themes.dart';
import 'package:my_idena/service_locator.dart';

// Project imports:
import 'package:my_idena/bus/events.dart';
import 'package:my_idena/model/available_currency.dart';
import 'package:my_idena/model/available_language.dart';
import 'package:my_idena/model/db/appdb.dart';
import 'package:my_idena/model/db/account.dart';
import 'package:my_idena/util/sharedprefsutil.dart';
import 'package:my_idena/model/db/appdb.dart';
import 'package:my_idena/model/vault.dart';
import 'package:my_idena/model/wallet.dart';
import 'package:my_idena/service_locator.dart';
import 'package:my_idena/themes.dart';
import 'package:my_idena/util/app_ffi/apputil.dart';
import 'package:my_idena/bus/events.dart';

import 'package:my_idena/util/sharedprefsutil.dart';
import 'util/sharedprefsutil.dart';

class _InheritedStateContainer extends InheritedWidget {
Expand Down Expand Up @@ -275,7 +283,10 @@ class StateContainerState extends State<StateContainer> {

// Change curency
void updateCurrency(AvailableCurrency currency) async {
await sl.get<AppService>().getSimplePrice(currency.getIso4217Code());
SimplePriceResponse simplePriceResponse =
await sl.get<AppService>().getSimplePrice(currency.getIso4217Code());
// Post to callbacks
EventTaxiImpl.singleton().fire(PriceEvent(response: simplePriceResponse));
setState(() {
curCurrency = currency;
});
Expand Down Expand Up @@ -322,10 +333,18 @@ class StateContainerState extends State<StateContainer> {
// Request account history
int count = 40;
try {
await sl
DnaGetBalanceResponse dnaGetBalanceResponse = await sl
.get<AppService>()
.getBalanceGetResponse(wallet.address.toString(), true);
await sl.get<AppService>().getSimplePrice(curCurrency.getIso4217Code());
.getBalanceGetResponse(wallet.address.toString());
EventTaxiImpl.singleton()
.fire(SubscribeEvent(response: dnaGetBalanceResponse));

SimplePriceResponse simplePriceResponse = await sl
.get<AppService>()
.getSimplePrice(curCurrency.getIso4217Code());
// Post to callbacks
EventTaxiImpl.singleton()
.fire(PriceEvent(response: simplePriceResponse));

BcnTransactionsResponse addressTxsResponse = await sl
.get<AppService>()
Expand Down Expand Up @@ -406,7 +425,7 @@ class StateContainerState extends State<StateContainer> {
DnaGetBalanceResponse dnaGetBalanceResponse = await sl
.get<AppService>()
.getBalanceGetResponse(
smartContractMultiSig.contractAddress, false);
smartContractMultiSig.contractAddress);
if (dnaGetBalanceResponse != null &&
dnaGetBalanceResponse.result != null) {
smartContractMultiSig.balance =
Expand Down
8 changes: 6 additions & 2 deletions lib/bus/account_changed_event.dart
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
// Package imports:
import 'package:event_taxi/event_taxi.dart';

// Project imports:
import 'package:my_idena/model/db/account.dart';

class AccountChangedEvent implements Event {
final Account? account;
final bool delayPop;
final bool noPop;

AccountChangedEvent({this.account, this.delayPop = false, this.noPop = false});
}
AccountChangedEvent(
{this.account, this.delayPop = false, this.noPop = false});
}
5 changes: 4 additions & 1 deletion lib/bus/account_modified_event.dart
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
// Package imports:
import 'package:event_taxi/event_taxi.dart';

// Project imports:
import 'package:my_idena/model/db/account.dart';

class AccountModifiedEvent implements Event {
final Account? account;
final bool deleted;

AccountModifiedEvent({this.account, this.deleted = false});
}
}
3 changes: 2 additions & 1 deletion lib/bus/authenticated_event.dart
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
// Package imports:
import 'package:event_taxi/event_taxi.dart';

enum AUTH_EVENT_TYPE { SEND, CHANGE_MANUAL, CHANGE }
Expand All @@ -6,4 +7,4 @@ class AuthenticatedEvent implements Event {
final AUTH_EVENT_TYPE authType;

AuthenticatedEvent(this.authType);
}
}
3 changes: 2 additions & 1 deletion lib/bus/conn_status_event.dart
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
// Package imports:
import 'package:event_taxi/event_taxi.dart';

// Bus event for connection status changing
Expand All @@ -7,4 +8,4 @@ class ConnStatusEvent implements Event {
final ConnectionStatus? status;

ConnStatusEvent({this.status});
}
}
5 changes: 4 additions & 1 deletion lib/bus/contact_added_event.dart
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
// Package imports:
import 'package:event_taxi/event_taxi.dart';

// Project imports:
import 'package:my_idena/model/db/contact.dart';

class ContactAddedEvent implements Event {
final Contact? contact;

ContactAddedEvent({this.contact});
}
}
5 changes: 4 additions & 1 deletion lib/bus/contact_modified_event.dart
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
// Package imports:
import 'package:event_taxi/event_taxi.dart';

// Project imports:
import 'package:my_idena/model/db/contact.dart';

class ContactModifiedEvent implements Event {
final Contact? contact;

ContactModifiedEvent({this.contact});
}
}
5 changes: 4 additions & 1 deletion lib/bus/contact_removed_event.dart
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
// Package imports:
import 'package:event_taxi/event_taxi.dart';

// Project imports:
import 'package:my_idena/model/db/contact.dart';

class ContactRemovedEvent implements Event {
final Contact? contact;

ContactRemovedEvent({this.contact});
}
}
4 changes: 2 additions & 2 deletions lib/bus/contract_deploy_event.dart
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
// Package imports:
import 'package:event_taxi/event_taxi.dart';

class ContractDeployEvent implements Event {

final String? response;

ContractDeployEvent({this.response});
}
}
3 changes: 2 additions & 1 deletion lib/bus/disable_lock_timeout_event.dart
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
// Package imports:
import 'package:event_taxi/event_taxi.dart';

class DisableLockTimeoutEvent implements Event {
final bool? disable;

DisableLockTimeoutEvent({this.disable});
}
}
2 changes: 1 addition & 1 deletion lib/bus/events.dart
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ export 'account_modified_event.dart';
export 'authenticated_event.dart';
export 'transaction_send_event.dart';
export 'conn_status_event.dart';
export 'contract_deploy_event.dart';
export 'contract_deploy_event.dart';
Loading

0 comments on commit 5686852

Please sign in to comment.