rename and refactor wallets.dart provider

This commit is contained in:
julian 2023-10-31 11:15:59 -06:00
parent 568a0cab1a
commit ce7d10ef16
134 changed files with 437 additions and 666 deletions

View file

@ -44,6 +44,7 @@ import 'package:stackwallet/pages/pinpad_views/create_pin_view.dart';
import 'package:stackwallet/pages/pinpad_views/lock_screen_view.dart';
import 'package:stackwallet/pages/settings_views/global_settings_view/stack_backup_views/restore_from_encrypted_string_view.dart';
import 'package:stackwallet/pages_desktop_specific/password/desktop_login_view.dart';
import 'package:stackwallet/providers/db/main_db_provider.dart';
import 'package:stackwallet/providers/desktop/storage_crypto_handler_provider.dart';
import 'package:stackwallet/providers/global/auto_swb_service_provider.dart';
import 'package:stackwallet/providers/global/base_currencies_provider.dart';
@ -344,9 +345,10 @@ class _MaterialAppWithThemeState extends ConsumerState<MaterialAppWithTheme>
prefs: ref.read(prefsChangeNotifierProvider),
);
ref.read(priceAnd24hChangeNotifierProvider).start(true);
await ref
.read(walletsChangeNotifierProvider)
.load(ref.read(prefsChangeNotifierProvider));
await ref.read(pWallets).load(
ref.read(prefsChangeNotifierProvider),
ref.read(mainDBProvider),
);
loadingCompleter.complete();
// TODO: this should probably run unawaited. Keep commented out for now as proper community nodes ui hasn't been implemented yet
// unawaited(_nodeService.updateCommunityNodes());
@ -735,7 +737,7 @@ class _MaterialAppWithThemeState extends ConsumerState<MaterialAppWithTheme>
builder: (BuildContext context, AsyncSnapshot<void> snapshot) {
if (snapshot.connectionState == ConnectionState.done) {
// FlutterNativeSplash.remove();
if (ref.read(walletsChangeNotifierProvider).hasWallets ||
if (ref.read(pWallets).hasWallets ||
ref.read(prefsChangeNotifierProvider).hasPin) {
// return HomeView();

View file

@ -98,10 +98,8 @@ class _EditWalletTokensViewState extends ConsumerState<EditWalletTokensView> {
.map((e) => e.token.address)
.toList();
final ethWallet = ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.wallet as EthereumWallet;
final ethWallet =
ref.read(pWallets).getManager(widget.walletId).wallet as EthereumWallet;
await ethWallet.updateTokenContracts(selectedTokens);
if (mounted) {
@ -182,7 +180,7 @@ class _EditWalletTokensViewState extends ConsumerState<EditWalletTokensView> {
tokenEntities.addAll(contracts.map((e) => AddTokenListElementData(e)));
final walletContracts = (ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(widget.walletId)
.wallet as EthereumWallet)
.getWalletTokenContractAddresses();
@ -209,7 +207,7 @@ class _EditWalletTokensViewState extends ConsumerState<EditWalletTokensView> {
@override
Widget build(BuildContext context) {
debugPrint("BUILD: $runtimeType");
final walletName = ref.watch(walletsChangeNotifierProvider
final walletName = ref.watch(pWallets
.select((value) => value.getManager(widget.walletId).walletName));
if (isDesktop) {

View file

@ -256,9 +256,7 @@ class _RestoreWalletViewState extends ConsumerState<RestoreWalletView> {
return RestoringDialog(
onCancel: () async {
isRestoring = false;
ref
.read(walletsChangeNotifierProvider.notifier)
.removeWallet(walletId: walletId!);
ref.read(pWallets.notifier).removeWallet(walletId: walletId!);
await walletsService.deleteWallet(
widget.walletName,
@ -322,7 +320,7 @@ class _RestoreWalletViewState extends ConsumerState<RestoreWalletView> {
);
ref
.read(walletsChangeNotifierProvider.notifier)
.read(pWallets.notifier)
.addWallet(walletId: manager.walletId, manager: manager);
final isCreateSpecialEthWallet =

View file

@ -63,9 +63,7 @@ class _RestoreFailedDialogState extends ConsumerState<RestoreFailedDialog> {
style: STextStyles.itemSubtitle12(context),
),
onPressed: () async {
ref
.read(walletsChangeNotifierProvider.notifier)
.removeWallet(walletId: walletId);
ref.read(pWallets.notifier).removeWallet(walletId: walletId);
await ref.read(walletsServiceChangeNotifierProvider).deleteWallet(
walletName,

View file

@ -124,7 +124,7 @@ class _VerifyRecoveryPhraseViewState
);
ref
.read(walletsChangeNotifierProvider.notifier)
.read(pWallets.notifier)
.addWallet(walletId: _manager.walletId, manager: _manager);
final isCreateSpecialEthWallet =

View file

@ -79,7 +79,7 @@ class _AddressBookViewState extends ConsumerState<AddressBookView> {
WidgetsBinding.instance.addPostFrameCallback((_) async {
List<ContactAddressEntry> addresses = [];
final managers = ref.read(walletsChangeNotifierProvider).managers;
final managers = ref.read(pWallets).managers;
for (final manager in managers) {
addresses.add(
ContactAddressEntry()

View file

@ -462,7 +462,7 @@ class _ContactDetailsViewState extends ConsumerState<ContactDetailsView> {
),
FutureBuilder(
future: _filteredTransactionsByContact(
ref.watch(walletsChangeNotifierProvider).managers),
ref.watch(pWallets).managers),
builder: (_,
AsyncSnapshot<List<Tuple2<String, Transaction>>>
snapshot) {

View file

@ -52,7 +52,7 @@ class ContactPopUp extends ConsumerWidget {
.select((value) => value.getContactById(contactId)));
final active = ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.managers
.where((e) => e.isActiveWallet)
.toList(growable: false);

View file

@ -1160,9 +1160,8 @@ class _BuyFormState extends ConsumerState<BuyForm> {
)
.then((value) async {
if (value is String) {
final manager = ref
.read(walletsChangeNotifierProvider)
.getManager(value);
final manager =
ref.read(pWallets).getManager(value);
// _toController.text = manager.walletName;
// model.recipientAddress =

View file

@ -61,10 +61,8 @@ class _CashFusionViewState extends ConsumerState<CashFusionView> {
FusionOption _option = FusionOption.continuous;
Future<void> _startFusion() async {
final fusionWallet = ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.wallet as FusionWalletInterface;
final fusionWallet = ref.read(pWallets).getManager(widget.walletId).wallet
as FusionWalletInterface;
try {
fusionWallet.uiState = ref.read(

View file

@ -67,10 +67,8 @@ class _FusionProgressViewState extends ConsumerState<FusionProgressView> {
);
if (shouldCancel == true && mounted) {
final fusionWallet = ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.wallet as FusionWalletInterface;
final fusionWallet = ref.read(pWallets).getManager(widget.walletId).wallet
as FusionWalletInterface;
await showLoading(
whileFuture: Future.wait([
@ -225,10 +223,8 @@ class _FusionProgressViewState extends ConsumerState<FusionProgressView> {
/// Fuse again.
void _fuseAgain() async {
final fusionWallet = ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.wallet as FusionWalletInterface;
final fusionWallet = ref.read(pWallets).getManager(widget.walletId).wallet
as FusionWalletInterface;
final fusionInfo = ref.read(prefsChangeNotifierProvider).fusionServerInfo;

View file

@ -83,7 +83,7 @@ class _CoinControlViewState extends ConsumerState<CoinControlView> {
Future<void> _refreshBalance() async {
final coinControlInterface = ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(widget.walletId)
.wallet as CoinControlInterface;
await coinControlInterface.refreshBalance(notify: true);
@ -114,7 +114,7 @@ class _CoinControlViewState extends ConsumerState<CoinControlView> {
debugPrint("BUILD: $runtimeType");
final coin = ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) => value
.getManager(
widget.walletId,
@ -124,7 +124,7 @@ class _CoinControlViewState extends ConsumerState<CoinControlView> {
);
final currentChainHeight = ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) => value
.getManager(
widget.walletId,

View file

@ -17,7 +17,6 @@ import 'package:stackwallet/themes/stack_colors.dart';
import 'package:stackwallet/utilities/amount/amount.dart';
import 'package:stackwallet/utilities/amount/amount_formatter.dart';
import 'package:stackwallet/utilities/constants.dart';
import 'package:stackwallet/utilities/enums/coin_enum.dart';
import 'package:stackwallet/utilities/text_styles.dart';
import 'package:stackwallet/widgets/conditional_parent.dart';
import 'package:stackwallet/widgets/icon_widgets/utxo_status_icon.dart';
@ -64,10 +63,10 @@ class _UtxoCardState extends ConsumerState<UtxoCard> {
Widget build(BuildContext context) {
debugPrint("BUILD: $runtimeType");
final coin = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(widget.walletId).coin));
final coin = ref.watch(
pWallets.select((value) => value.getManager(widget.walletId).coin));
final currentChainHeight = ref.watch(walletsChangeNotifierProvider
final currentChainHeight = ref.watch(pWallets
.select((value) => value.getManager(widget.walletId).currentHeight));
return ConditionalParent(

View file

@ -20,7 +20,6 @@ import 'package:stackwallet/providers/global/wallets_provider.dart';
import 'package:stackwallet/themes/stack_colors.dart';
import 'package:stackwallet/utilities/amount/amount.dart';
import 'package:stackwallet/utilities/amount/amount_formatter.dart';
import 'package:stackwallet/utilities/enums/coin_enum.dart';
import 'package:stackwallet/utilities/text_styles.dart';
import 'package:stackwallet/utilities/util.dart';
import 'package:stackwallet/widgets/background.dart';
@ -92,13 +91,13 @@ class _UtxoDetailsViewState extends ConsumerState<UtxoDetailsView> {
@override
Widget build(BuildContext context) {
final coin = ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) => value.getManager(widget.walletId).coin,
),
);
final currentHeight = ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) => value.getManager(widget.walletId).currentHeight,
),
);

View file

@ -47,8 +47,8 @@ class _ChooseFromStackViewState extends ConsumerState<ChooseFromStackView> {
@override
Widget build(BuildContext context) {
final walletIds = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getWalletIdsFor(coin: coin)));
final walletIds = ref
.watch(pWallets.select((value) => value.getWalletIdsFor(coin: coin)));
return Background(
child: Scaffold(
@ -78,7 +78,7 @@ class _ChooseFromStackViewState extends ConsumerState<ChooseFromStackView> {
: ListView.builder(
itemCount: walletIds.length,
itemBuilder: (context, index) {
final manager = ref.watch(walletsChangeNotifierProvider
final manager = ref.watch(pWallets
.select((value) => value.getManager(walletIds[index])));
return Padding(

View file

@ -25,7 +25,6 @@ import 'package:stackwallet/themes/stack_colors.dart';
import 'package:stackwallet/utilities/amount/amount.dart';
import 'package:stackwallet/utilities/amount/amount_formatter.dart';
import 'package:stackwallet/utilities/constants.dart';
import 'package:stackwallet/utilities/enums/coin_enum.dart';
import 'package:stackwallet/utilities/logger.dart';
import 'package:stackwallet/utilities/text_styles.dart';
import 'package:stackwallet/utilities/util.dart';
@ -76,8 +75,7 @@ class _ConfirmChangeNowSendViewState
final isDesktop = Util.isDesktop;
Future<void> _attemptSend(BuildContext context) async {
final manager =
ref.read(walletsChangeNotifierProvider).getManager(walletId);
final manager = ref.read(pWallets).getManager(walletId);
final sendProgressController = ProgressAndSuccessController();
@ -199,8 +197,7 @@ class _ConfirmChangeNowSendViewState
Future<void> _confirmSend() async {
final dynamic unlocked;
final coin =
ref.read(walletsChangeNotifierProvider).getManager(walletId).coin;
final coin = ref.read(pWallets).getManager(walletId).coin;
if (Util.isDesktop) {
unlocked = await showDialog<bool?>(
@ -266,8 +263,8 @@ class _ConfirmChangeNowSendViewState
@override
Widget build(BuildContext context) {
final managerProvider = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManagerProvider(walletId)));
final managerProvider = ref
.watch(pWallets.select((value) => value.getManagerProvider(walletId)));
return ConditionalParent(
condition: !isDesktop,
@ -536,10 +533,7 @@ class _ConfirmChangeNowSendViewState
height: 4,
),
Text(
ref
.watch(walletsChangeNotifierProvider)
.getManager(walletId)
.walletName,
ref.watch(pWallets).getManager(walletId).walletName,
style: STextStyles.itemSubtitle12(context),
),
],
@ -595,9 +589,8 @@ class _ConfirmChangeNowSendViewState
children: [
child,
Builder(builder: (context) {
final coin = ref.watch(
walletsChangeNotifierProvider.select(
(value) => value.getManager(walletId).coin));
final coin = ref.watch(pWallets.select(
(value) => value.getManager(walletId).coin));
final price = ref.watch(
priceAnd24hChangeNotifierProvider
.select((value) => value.getPrice(coin)));
@ -628,9 +621,8 @@ class _ConfirmChangeNowSendViewState
),
child: Text(
ref
.watch(pAmountFormatter(ref.watch(
walletsChangeNotifierProvider.select(
(value) => value.getManager(walletId).coin))))
.watch(pAmountFormatter(ref.watch(pWallets.select(
(value) => value.getManager(walletId).coin))))
.format((transactionInfo["recipientAmt"] as Amount)),
style: STextStyles.itemSubtitle12(context),
textAlign: TextAlign.right,

View file

@ -96,7 +96,7 @@ class _Step2ViewState extends ConsumerState<Step2View> {
if (model.receiveTicker.toLowerCase() ==
tuple.item2.ticker.toLowerCase()) {
ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(tuple.item1)
.currentReceivingAddress
.then((value) {
@ -107,7 +107,7 @@ class _Step2ViewState extends ConsumerState<Step2View> {
if (model.sendTicker.toUpperCase() ==
tuple.item2.ticker.toUpperCase()) {
ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(tuple.item1)
.currentReceivingAddress
.then((value) {
@ -219,8 +219,7 @@ class _Step2ViewState extends ConsumerState<Step2View> {
.then((value) async {
if (value is String) {
final manager = ref
.read(
walletsChangeNotifierProvider)
.read(pWallets)
.getManager(value);
_toController.text =
@ -491,8 +490,7 @@ class _Step2ViewState extends ConsumerState<Step2View> {
.then((value) async {
if (value is String) {
final manager = ref
.read(
walletsChangeNotifierProvider)
.read(pWallets)
.getManager(value);
_refundController.text =

View file

@ -71,7 +71,7 @@ class _Step4ViewState extends ConsumerState<Step4View> {
try {
final coin = coinFromTickerCaseInsensitive(ticker);
return ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.managers
.where((element) => element.coin == coin)
.isNotEmpty;
@ -134,10 +134,8 @@ class _Step4ViewState extends ConsumerState<Step4View> {
}
Future<bool?> _showSendFromFiroBalanceSelectSheet(String walletId) async {
final firoWallet = ref
.read(walletsChangeNotifierProvider)
.getManager(walletId)
.wallet as FiroWallet;
final firoWallet =
ref.read(pWallets).getManager(walletId).wallet as FiroWallet;
final locale = ref.read(localeServiceChangeNotifierProvider).locale;
return await showModalBottomSheet<bool?>(
@ -206,8 +204,7 @@ class _Step4ViewState extends ConsumerState<Step4View> {
firoPublicSend = false;
}
final manager =
ref.read(walletsChangeNotifierProvider).getManager(tuple.item1);
final manager = ref.read(pWallets).getManager(tuple.item1);
final Amount amount = model.sendAmount.toAmount(
fractionDigits: manager.coin.decimals,
@ -815,7 +812,7 @@ class _Step4ViewState extends ConsumerState<Step4View> {
model.sendTicker.toLowerCase() ==
tuple.item2.ticker.toLowerCase()) {
final walletName = ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(tuple.item1)
.walletName;
buttonTitle = "Send from $walletName";

View file

@ -196,7 +196,7 @@ class _ExchangeViewState extends ConsumerState<ExchangeView> {
walletIds != null &&
walletIds.isNotEmpty) {
final manager = ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(walletIds.first);
//todo: check if print needed

View file

@ -85,8 +85,8 @@ class _SendFromViewState extends ConsumerState<SendFromView> {
Widget build(BuildContext context) {
debugPrint("BUILD: $runtimeType");
final walletIds = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getWalletIdsFor(coin: coin)));
final walletIds = ref
.watch(pWallets.select((value) => value.getWalletIdsFor(coin: coin)));
final isDesktop = Util.isDesktop;
@ -396,9 +396,8 @@ class _SendFromCardState extends ConsumerState<SendFromCard> {
@override
Widget build(BuildContext context) {
final manager = ref.watch(ref
.watch(walletsChangeNotifierProvider.notifier)
.getManagerProvider(walletId));
final manager =
ref.watch(ref.watch(pWallets.notifier).getManagerProvider(walletId));
final locale = ref.watch(
localeServiceChangeNotifierProvider.select((value) => value.locale));

View file

@ -48,8 +48,7 @@ class _MonkeyViewState extends ConsumerState<MonkeyView> {
List<int>? imageBytes;
Future<void> _updateWalletMonKey(Uint8List monKeyBytes) async {
final manager =
ref.read(walletsChangeNotifierProvider).getManager(walletId);
final manager = ref.read(pWallets).getManager(walletId);
await (manager.wallet as BananoWallet)
.updateMonkeyImageBytes(monKeyBytes.toList());
}
@ -82,10 +81,8 @@ class _MonkeyViewState extends ConsumerState<MonkeyView> {
throw Exception("Failed to get documents directory to save monKey image");
}
final address = await ref
.read(walletsChangeNotifierProvider)
.getManager(walletId)
.currentReceivingAddress;
final address =
await ref.read(pWallets).getManager(walletId).currentReceivingAddress;
final docPath = dir.path;
String filePath = "$docPath/monkey_$address";
@ -110,8 +107,8 @@ class _MonkeyViewState extends ConsumerState<MonkeyView> {
@override
Widget build(BuildContext context) {
final manager = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(widget.walletId)));
final manager = ref
.watch(pWallets.select((value) => value.getManager(widget.walletId)));
final Coin coin = manager.coin;
final bool isDesktop = Util.isDesktop;

View file

@ -20,7 +20,6 @@ import 'package:stackwallet/utilities/amount/amount.dart';
import 'package:stackwallet/utilities/amount/amount_formatter.dart';
import 'package:stackwallet/utilities/assets.dart';
import 'package:stackwallet/utilities/constants.dart';
import 'package:stackwallet/utilities/enums/coin_enum.dart';
import 'package:stackwallet/utilities/show_loading.dart';
import 'package:stackwallet/utilities/text_styles.dart';
import 'package:stackwallet/widgets/background.dart';
@ -57,8 +56,8 @@ class _OrdinalDetailsViewState extends ConsumerState<OrdinalDetailsView> {
@override
Widget build(BuildContext context) {
final coin = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(widget.walletId).coin));
final coin = ref.watch(
pWallets.select((value) => value.getManager(widget.walletId).coin));
return Background(
child: SafeArea(

View file

@ -89,10 +89,8 @@ class _OrdinalsViewState extends ConsumerState<OrdinalsView> {
await showLoading(
whileFuture: Future.wait<void>([
Future.delayed(const Duration(seconds: 2)),
(ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.wallet as OrdinalsInterface)
(ref.read(pWallets).getManager(widget.walletId).wallet
as OrdinalsInterface)
.refreshInscriptions()
]),
context: context,

View file

@ -30,7 +30,6 @@ import 'package:stackwallet/services/mixins/paynym_wallet_interface.dart';
import 'package:stackwallet/themes/stack_colors.dart';
import 'package:stackwallet/utilities/amount/amount.dart';
import 'package:stackwallet/utilities/assets.dart';
import 'package:stackwallet/utilities/enums/coin_enum.dart';
import 'package:stackwallet/utilities/text_styles.dart';
import 'package:stackwallet/widgets/custom_buttons/paynym_follow_toggle_button.dart';
import 'package:stackwallet/widgets/desktop/desktop_dialog.dart';
@ -59,8 +58,7 @@ class _PaynymDetailsPopupState extends ConsumerState<PaynymDetailsPopup> {
bool _showInsufficientFundsInfo = false;
Future<void> _onSend() async {
final manager =
ref.read(walletsChangeNotifierProvider).getManager(widget.walletId);
final manager = ref.read(pWallets).getManager(widget.walletId);
await Navigator.of(context).pushNamed(
SendView.routeName,
arguments: Tuple3(
@ -85,8 +83,7 @@ class _PaynymDetailsPopupState extends ConsumerState<PaynymDetailsPopup> {
),
);
final manager =
ref.read(walletsChangeNotifierProvider).getManager(widget.walletId);
final manager = ref.read(pWallets).getManager(widget.walletId);
final wallet = manager.wallet as PaynymWalletInterface;
@ -181,8 +178,8 @@ class _PaynymDetailsPopupState extends ConsumerState<PaynymDetailsPopup> {
@override
Widget build(BuildContext context) {
final manager = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(widget.walletId)));
final manager = ref
.watch(pWallets.select((value) => value.getManager(widget.walletId)));
final wallet = manager.wallet as PaynymWalletInterface;
@ -316,7 +313,7 @@ class _PaynymDetailsPopupState extends ConsumerState<PaynymDetailsPopup> {
"Adding a PayNym to your contacts requires a one-time "
"transaction fee for creating the record on the "
"blockchain. Please deposit more "
"${ref.read(walletsChangeNotifierProvider).getManager(widget.walletId).wallet.coin.ticker} "
"${ref.read(pWallets).getManager(widget.walletId).wallet.coin.ticker} "
"into your wallet and try again.",
style: STextStyles.infoSmall(context).copyWith(
color: Theme.of(context)

View file

@ -47,8 +47,7 @@ class PaynymClaimView extends ConsumerStatefulWidget {
class _PaynymClaimViewState extends ConsumerState<PaynymClaimView> {
Future<bool> _addSegwitCode(PaynymAccount myAccount) async {
final manager =
ref.read(walletsChangeNotifierProvider).getManager(widget.walletId);
final manager = ref.read(pWallets).getManager(widget.walletId);
// get wallet to access paynym calls
final wallet = manager.wallet as PaynymWalletInterface;
@ -190,9 +189,8 @@ class _PaynymClaimViewState extends ConsumerState<PaynymClaimView> {
).then((value) => shouldCancel = value == true),
);
final manager = ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId);
final manager =
ref.read(pWallets).getManager(widget.walletId);
// get wallet to access paynym calls
final wallet = manager.wallet as PaynymWalletInterface;

View file

@ -28,7 +28,6 @@ import 'package:stackwallet/services/mixins/paynym_wallet_interface.dart';
import 'package:stackwallet/themes/stack_colors.dart';
import 'package:stackwallet/utilities/amount/amount.dart';
import 'package:stackwallet/utilities/assets.dart';
import 'package:stackwallet/utilities/enums/coin_enum.dart';
import 'package:stackwallet/utilities/text_styles.dart';
import 'package:stackwallet/widgets/custom_buttons/blue_text_button.dart';
import 'package:stackwallet/widgets/custom_buttons/paynym_follow_toggle_button.dart';
@ -70,8 +69,7 @@ class _PaynymDetailsPopupState extends ConsumerState<DesktopPaynymDetails> {
),
);
final manager =
ref.read(walletsChangeNotifierProvider).getManager(widget.walletId);
final manager = ref.read(pWallets).getManager(widget.walletId);
final wallet = manager.wallet as PaynymWalletInterface;
@ -174,8 +172,8 @@ class _PaynymDetailsPopupState extends ConsumerState<DesktopPaynymDetails> {
@override
Widget build(BuildContext context) {
final manager = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(widget.walletId)));
final manager = ref
.watch(pWallets.select((value) => value.getManager(widget.walletId)));
final wallet = manager.wallet as PaynymWalletInterface;
@ -315,7 +313,7 @@ class _PaynymDetailsPopupState extends ConsumerState<DesktopPaynymDetails> {
"Adding a PayNym to your contacts requires a one-time "
"transaction fee for creating the record on the "
"blockchain. Please deposit more "
"${ref.read(walletsChangeNotifierProvider).getManager(widget.walletId).wallet.coin.ticker} "
"${ref.read(pWallets).getManager(widget.walletId).wallet.coin.ticker} "
"into your wallet and try again.",
style: STextStyles.desktopTextExtraExtraSmall(context)
.copyWith(

View file

@ -75,9 +75,7 @@ class _PaynymFollowersListState extends ConsumerState<PaynymFollowersList> {
child: child,
onRefresh: () async {
try {
final manager = ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId);
final manager = ref.read(pWallets).getManager(widget.walletId);
// get wallet to access paynym calls
final wallet = manager.wallet as PaynymWalletInterface;

View file

@ -75,9 +75,7 @@ class _PaynymFollowingListState extends ConsumerState<PaynymFollowingList> {
child: child,
onRefresh: () async {
try {
final manager = ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId);
final manager = ref.read(pWallets).getManager(widget.walletId);
// get wallet to access paynym calls
final wallet = manager.wallet as PaynymWalletInterface;

View file

@ -98,8 +98,7 @@ class _LockscreenViewState extends ConsumerState<LockscreenView> {
if (loadIntoWallet) {
final walletId = widget.routeOnSuccessArguments as String;
final manager =
ref.read(walletsChangeNotifierProvider).getManager(walletId);
final manager = ref.read(pWallets).getManager(walletId);
if (manager.coin == Coin.monero) {
await showLoading(
opaqueBG: true,
@ -126,9 +125,7 @@ class _LockscreenViewState extends ConsumerState<LockscreenView> {
WalletView.routeName,
arguments: Tuple2(
walletId,
ref
.read(walletsChangeNotifierProvider)
.getManagerProvider(walletId),
ref.read(pWallets).getManagerProvider(walletId),
),
),
);

View file

@ -95,9 +95,8 @@ class _AddressDetailsViewState extends ConsumerState<AddressDetailsView> {
key: _qrKey,
child: QrImageView(
data: AddressUtils.buildUriString(
ref.watch(walletsChangeNotifierProvider.select(
(value) =>
value.getManager(widget.walletId).coin)),
ref.watch(pWallets.select((value) =>
value.getManager(widget.walletId).coin)),
address.value,
{},
),
@ -151,8 +150,8 @@ class _AddressDetailsViewState extends ConsumerState<AddressDetailsView> {
@override
Widget build(BuildContext context) {
final coin = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(widget.walletId).coin));
final coin = ref.watch(
pWallets.select((value) => value.getManager(widget.walletId).coin));
return ConditionalParent(
condition: !isDesktop,
builder: (child) => Background(
@ -292,9 +291,8 @@ class _AddressDetailsViewState extends ConsumerState<AddressDetailsView> {
key: _qrKey,
child: QrImageView(
data: AddressUtils.buildUriString(
ref.watch(walletsChangeNotifierProvider.select(
(value) =>
value.getManager(widget.walletId).coin)),
ref.watch(pWallets.select((value) =>
value.getManager(widget.walletId).coin)),
address.value,
{},
),

View file

@ -135,8 +135,8 @@ class _WalletAddressesViewState extends ConsumerState<WalletAddressesView> {
@override
Widget build(BuildContext context) {
final coin = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(widget.walletId).coin));
final coin = ref.watch(
pWallets.select((value) => value.getManager(widget.walletId).coin));
return ConditionalParent(
condition: !isDesktop,
builder: (child) => Background(

View file

@ -80,10 +80,7 @@ class _ReceiveViewState extends ConsumerState<ReceiveView> {
),
);
await ref
.read(walletsChangeNotifierProvider)
.getManager(walletId)
.generateNewAddress();
await ref.read(pWallets).getManager(walletId).generateNewAddress();
shouldPop = true;
@ -98,14 +95,12 @@ class _ReceiveViewState extends ConsumerState<ReceiveView> {
@override
void initState() {
walletId = widget.walletId;
coin = ref.read(walletsChangeNotifierProvider).getManager(walletId).coin;
coin = ref.read(pWallets).getManager(walletId).coin;
clipboard = widget.clipboard;
WidgetsBinding.instance.addPostFrameCallback((timeStamp) async {
final address = await ref
.read(walletsChangeNotifierProvider)
.getManager(walletId)
.currentReceivingAddress;
final address =
await ref.read(pWallets).getManager(walletId).currentReceivingAddress;
setState(() {
receivingAddress = address;
});
@ -120,7 +115,7 @@ class _ReceiveViewState extends ConsumerState<ReceiveView> {
ref.listen(
ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManagerProvider(walletId)
.select((value) => value.currentReceivingAddress),
(previous, next) {

View file

@ -94,8 +94,7 @@ class _ConfirmTransactionViewState
late final TextEditingController onChainNoteController;
Future<void> _attemptSend(BuildContext context) async {
final manager =
ref.read(walletsChangeNotifierProvider).getManager(walletId);
pWalletsf.read(walletsChangeNotifierProvider).getManager(walletId);
final sendProgressController = ProgressAndSuccessController();
@ -299,11 +298,8 @@ class _ConfirmTransactionViewState
}
@override
Widget build(BuildContext context) {
final managerProvider = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManagerProvider(walletId)));
final coin = ref.watch(walletsChangeNotifierProvider
Widget build(BuildContext contepWalletser = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManagerProvidpWalletsin = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId).coin));
final String unit;
@ -778,7 +774,7 @@ class _ConfirmTransactionViewState
Builder(
builder: (context) {
final coin = ref
.watch(walletsChangeNotifierProvider
pWallets .watch(walletsChangeNotifierProvider
.select((value) =>
value.getManager(walletId)))
.coin;
@ -1008,8 +1004,7 @@ class _ConfirmTransactionViewState
color: Theme.of(context)
.extension<StackColors>()!
.textFieldDefaultBG,
child: Builder(
builder: (context) {
pWallets builder: (context) {
final coin = ref
.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId)))
@ -1104,8 +1099,7 @@ class _ConfirmTransactionViewState
.extension<StackColors>()!
.textConfirmTotalAmount,
),
),
Builder(builder: (context) {
pWallets Builder(builder: (context) {
final coin = ref.watch(
walletsChangeNotifierProvider.select(
(value) => value.getManager(walletId).coin));
@ -1151,7 +1145,7 @@ class _ConfirmTransactionViewState
child: PrimaryButton(
label: "Send",
buttonHeight: isDesktop ? ButtonHeight.l : null,
onPressed: () async {
pWallets
final dynamic unlocked;
final coin = ref

View file

@ -241,7 +241,7 @@ class _SendViewState extends ConsumerState<SendView> {
(amount != null && amount > Amount.zero);
} else {
final isValidAddress = ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(walletId)
.validateAddress(address ?? "");
ref.read(previewTxButtonStateProvider.state).state =
@ -276,7 +276,7 @@ class _SendViewState extends ConsumerState<SendView> {
}
final manager =
ref.read(walletsChangeNotifierProvider).getManager(walletId);
ref.read(pWallets).getManager(walletId);
final feeObject = await manager.fees;
late final int feeRate;
@ -384,7 +384,7 @@ class _SendViewState extends ConsumerState<SendView> {
const Duration(milliseconds: 100),
);
final manager =
ref.read(walletsChangeNotifierProvider).getManager(walletId);
ref.read(pWallets).getManager(walletId);
final Amount amount = _amountToSend!;
final Amount availableBalance;
@ -729,13 +729,13 @@ class _SendViewState extends ConsumerState<SendView> {
@override
Widget build(BuildContext context) {
debugPrint("BUILD: $runtimeType");
final provider = ref.watch(walletsChangeNotifierProvider
final provider = ref.watch(pWallets
.select((value) => value.getManagerProvider(walletId)));
final String locale = ref.watch(
localeServiceChangeNotifierProvider.select((value) => value.locale));
final showCoinControl = ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) => value.getManager(walletId).hasCoinControlSupport,
),
) &&
@ -1270,7 +1270,7 @@ class _SendViewState extends ConsumerState<SendView> {
// now check for non standard encoded basic address
} else if (ref
.read(
walletsChangeNotifierProvider)
pWallets)
.getManager(walletId)
.validateAddress(qrResult
.rawContent)) {
@ -1398,7 +1398,7 @@ class _SendViewState extends ConsumerState<SendView> {
final error = _updateInvalidAddressText(
_address ?? "",
ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(walletId),
);
@ -1853,7 +1853,7 @@ class _SendViewState extends ConsumerState<SendView> {
if (mounted) {
final spendable = ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(widget.walletId)
.balance
.spendable;

View file

@ -52,8 +52,8 @@ class _FiroBalanceSelectionSheetState
Widget build(BuildContext context) {
debugPrint("BUILD: $runtimeType");
final manager = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId)));
final manager =
ref.watch(pWallets.select((value) => value.getManager(walletId)));
final firoWallet = manager.wallet as FiroWallet;
return Container(

View file

@ -83,8 +83,7 @@ class _TransactionFeeSelectionSheetState
case FeeRateType.fast:
if (ref.read(feeSheetSessionCacheProvider).fast[amount] == null) {
if (widget.isToken == false) {
final manager =
ref.read(walletsChangeNotifierProvider).getManager(walletId);
final manager = ref.read(pWallets).getManager(walletId);
if (coin == Coin.monero || coin == Coin.wownero) {
final fee = await manager.estimateFeeFor(
@ -111,8 +110,7 @@ class _TransactionFeeSelectionSheetState
case FeeRateType.average:
if (ref.read(feeSheetSessionCacheProvider).average[amount] == null) {
if (widget.isToken == false) {
final manager =
ref.read(walletsChangeNotifierProvider).getManager(walletId);
final manager = ref.read(pWallets).getManager(walletId);
if (coin == Coin.monero || coin == Coin.wownero) {
final fee = await manager.estimateFeeFor(
amount, MoneroTransactionPriority.regular.raw!);
@ -138,8 +136,7 @@ class _TransactionFeeSelectionSheetState
case FeeRateType.slow:
if (ref.read(feeSheetSessionCacheProvider).slow[amount] == null) {
if (widget.isToken == false) {
final manager =
ref.read(walletsChangeNotifierProvider).getManager(walletId);
final manager = ref.read(pWallets).getManager(walletId);
if (coin == Coin.monero || coin == Coin.wownero) {
final fee = await manager.estimateFeeFor(
amount, MoneroTransactionPriority.slow.raw!);
@ -203,8 +200,8 @@ class _TransactionFeeSelectionSheetState
Widget build(BuildContext context) {
debugPrint("BUILD: $runtimeType");
final manager = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId)));
final manager =
ref.watch(pWallets.select((value) => value.getManager(walletId)));
return Container(
decoration: BoxDecoration(

View file

@ -193,7 +193,7 @@ class _TokenSendViewState extends ConsumerState<TokenSendView> {
// now check for non standard encoded basic address
} else if (ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(walletId)
.validateAddress(qrResult.rawContent)) {
_address = qrResult.rawContent.trim();
@ -336,10 +336,8 @@ class _TokenSendViewState extends ConsumerState<TokenSendView> {
}
void _updatePreviewButtonState(String? address, Amount? amount) {
final isValidAddress = ref
.read(walletsChangeNotifierProvider)
.getManager(walletId)
.validateAddress(address ?? "");
final isValidAddress =
ref.read(pWallets).getManager(walletId).validateAddress(address ?? "");
ref.read(previewTxButtonStateProvider.state).state =
(isValidAddress && amount != null && amount > Amount.zero);
}
@ -380,8 +378,7 @@ class _TokenSendViewState extends ConsumerState<TokenSendView> {
await Future<void>.delayed(
const Duration(milliseconds: 100),
);
final manager =
ref.read(walletsChangeNotifierProvider).getManager(walletId);
final manager = ref.read(pWallets).getManager(walletId);
final tokenWallet = ref.read(tokenServiceProvider)!;
final Amount amount = _amountToSend!;
@ -598,8 +595,8 @@ class _TokenSendViewState extends ConsumerState<TokenSendView> {
@override
Widget build(BuildContext context) {
debugPrint("BUILD: $runtimeType");
final provider = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManagerProvider(walletId)));
final provider = ref
.watch(pWallets.select((value) => value.getManagerProvider(walletId)));
final String locale = ref.watch(
localeServiceChangeNotifierProvider.select((value) => value.locale));
@ -860,9 +857,7 @@ class _TokenSendViewState extends ConsumerState<TokenSendView> {
builder: (_) {
final error = _updateInvalidAddressText(
_address ?? "",
ref
.read(walletsChangeNotifierProvider)
.getManager(walletId),
ref.read(pWallets).getManager(walletId),
);
if (error == null || error.isEmpty) {

View file

@ -215,7 +215,7 @@ class _StackRestoreProgressViewState
}
void _addWalletsToHomeView() {
ref.read(walletsChangeNotifierProvider).loadAfterStackRestore(
ref.read(pWallets).loadAfterStackRestore(
ref.read(prefsChangeNotifierProvider),
ref.read(stackRestoringUIStateProvider).managers,
);

View file

@ -45,7 +45,7 @@ class _StartupPreferencesViewState
// check if wallet exists (hasn't been deleted or otherwise missing)
if (possibleWalletId != null) {
try {
ref.read(walletsChangeNotifierProvider).getManager(possibleWalletId);
ref.read(pWallets).getManager(possibleWalletId);
} catch (_) {
safe = false;
WidgetsBinding.instance.addPostFrameCallback((timeStamp) {
@ -254,7 +254,7 @@ class _StartupPreferencesViewState
coinIconProvider(
ref
.watch(
walletsChangeNotifierProvider
pWallets
.select(
(value) =>
value.getManager(
@ -275,7 +275,7 @@ class _StartupPreferencesViewState
Text(
ref
.watch(
walletsChangeNotifierProvider
pWallets
.select(
(value) =>
value

View file

@ -38,8 +38,7 @@ class _StartupWalletSelectionViewState
@override
Widget build(BuildContext context) {
final managers = ref
.watch(walletsChangeNotifierProvider.select((value) => value.managers));
final managers = ref.watch(pWallets.select((value) => value.managers));
_controllers.clear();
for (final manager in managers) {

View file

@ -95,10 +95,7 @@ class SyncingOptionsView extends ConsumerWidget {
SyncingType.currentWalletOnly;
// disable auto sync on all wallets that aren't active/current
ref
.read(walletsChangeNotifierProvider)
.managers
.forEach((e) {
ref.read(pWallets).managers.forEach((e) {
if (!e.isActiveWallet) {
e.shouldAutoSync = false;
}
@ -178,7 +175,7 @@ class SyncingOptionsView extends ConsumerWidget {
// enable auto sync on all wallets
ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.managers
.forEach((e) => e.shouldAutoSync = true);
}
@ -259,11 +256,8 @@ class SyncingOptionsView extends ConsumerWidget {
.walletIdsSyncOnStartup;
// enable auto sync on selected wallets only
ref
.read(walletsChangeNotifierProvider)
.managers
.forEach((e) =>
e.shouldAutoSync = ids.contains(e.walletId));
ref.read(pWallets).managers.forEach(
(e) => e.shouldAutoSync = ids.contains(e.walletId));
}
},
child: Container(

View file

@ -34,8 +34,7 @@ class WalletSyncingOptionsView extends ConsumerWidget {
@override
Widget build(BuildContext context, WidgetRef ref) {
final managers = ref
.watch(walletsChangeNotifierProvider.select((value) => value.managers));
final managers = ref.watch(pWallets.select((value) => value.managers));
final isDesktop = Util.isDesktop;
return ConditionalParent(
@ -197,9 +196,9 @@ class WalletSyncingOptionsView extends ConsumerWidget {
}
break;
case SyncingType
.selectedWalletsAtStartup:
.selectedWalletsAtStartup:
case SyncingType
.allWalletsOnStartup:
.allWalletsOnStartup:
manager.shouldAutoSync = value;
break;
}

View file

@ -99,8 +99,8 @@ class WalletBackupView extends ConsumerWidget {
),
Text(
ref
.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId)))
.watch(
pWallets.select((value) => value.getManager(walletId)))
.walletName,
textAlign: TextAlign.center,
style: STextStyles.label(context).copyWith(

View file

@ -136,17 +136,10 @@ class _WalletNetworkSettingsViewState
);
try {
if (ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.coin ==
Coin.firo) {
if (ref.read(pWallets).getManager(widget.walletId).coin == Coin.firo) {
maxUnusedAddressGap = 50;
}
await ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.fullRescan(
await ref.read(pWallets).getManager(widget.walletId).fullRescan(
maxUnusedAddressGap,
maxNumberOfIndexesToCheck,
);
@ -257,10 +250,7 @@ class _WalletNetworkSettingsViewState
},
);
final coin = ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.coin;
final coin = ref.read(pWallets).getManager(widget.walletId).coin;
if (coin == Coin.monero || coin == Coin.wownero || coin == Coin.epicCash) {
_blocksRemainingSubscription = eventBus.on<BlocksRemainingEvent>().listen(
@ -319,14 +309,11 @@ class _WalletNetworkSettingsViewState
? 430.0
: screenWidth - (_padding * 2) - (_boxPadding * 3) - _iconSize;
final coin = ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.coin;
final coin = ref.read(pWallets).getManager(widget.walletId).coin;
if (coin == Coin.monero) {
double highestPercent = (ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(widget.walletId)
.wallet as MoneroWallet)
.highestPercentCached;
@ -335,7 +322,7 @@ class _WalletNetworkSettingsViewState
}
} else if (coin == Coin.wownero) {
double highestPercent = (ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(widget.walletId)
.wallet as WowneroWallet)
.highestPercentCached;
@ -344,7 +331,7 @@ class _WalletNetworkSettingsViewState
}
} else if (coin == Coin.epicCash) {
double highestPercent = (ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(widget.walletId)
.wallet as EpicCashWallet)
.highestPercent;
@ -371,10 +358,7 @@ class _WalletNetworkSettingsViewState
style: STextStyles.navBarTitle(context),
),
actions: [
if (ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.coin !=
if (ref.read(pWallets).getManager(widget.walletId).coin !=
Coin.epicCash)
Padding(
padding: const EdgeInsets.only(
@ -499,10 +483,7 @@ class _WalletNetworkSettingsViewState
CustomTextButton(
text: "Resync",
onTap: () {
ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.refresh();
ref.read(pWallets).getManager(widget.walletId).refresh();
},
),
],
@ -905,7 +886,7 @@ class _WalletNetworkSettingsViewState
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text(
"${ref.watch(walletsChangeNotifierProvider.select((value) => value.getManager(widget.walletId).coin)).prettyName} nodes",
"${ref.watch(pWallets.select((value) => value.getManager(widget.walletId).coin)).prettyName} nodes",
textAlign: TextAlign.left,
style: isDesktop
? STextStyles.desktopTextExtraExtraSmall(context)
@ -918,10 +899,7 @@ class _WalletNetworkSettingsViewState
AddEditNodeView.routeName,
arguments: Tuple4(
AddEditNodeViewType.add,
ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.coin,
ref.read(pWallets).getManager(widget.walletId).coin,
null,
WalletNetworkSettingsView.routeName,
),
@ -934,24 +912,18 @@ class _WalletNetworkSettingsViewState
height: isDesktop ? 12 : 8,
),
NodesList(
coin: ref.watch(walletsChangeNotifierProvider
coin: ref.watch(pWallets
.select((value) => value.getManager(widget.walletId).coin)),
popBackToRoute: WalletNetworkSettingsView.routeName,
),
if (isDesktop &&
ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.coin !=
ref.read(pWallets).getManager(widget.walletId).coin !=
Coin.epicCash)
const SizedBox(
height: 32,
),
if (isDesktop &&
ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.coin !=
ref.read(pWallets).getManager(widget.walletId).coin !=
Coin.epicCash)
Padding(
padding: const EdgeInsets.only(
@ -969,10 +941,7 @@ class _WalletNetworkSettingsViewState
),
),
if (isDesktop &&
ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.coin !=
ref.read(pWallets).getManager(widget.walletId).coin !=
Coin.epicCash)
RoundedWhiteContainer(
borderColor: isDesktop

View file

@ -88,8 +88,7 @@ class _WalletSettingsViewState extends ConsumerState<WalletSettingsView> {
void initState() {
walletId = widget.walletId;
coin = widget.coin;
xPubEnabled =
ref.read(walletsChangeNotifierProvider).getManager(walletId).hasXPub;
xPubEnabled = ref.read(pWallets).getManager(walletId).hasXPub;
xpub = "";
_currentSyncStatus = widget.initialSyncStatus;
@ -231,7 +230,7 @@ class _WalletSettingsViewState extends ConsumerState<WalletSettingsView> {
title: "Wallet backup",
onPressed: () async {
final mnemonic = await ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(walletId)
.mnemonic;
@ -407,7 +406,7 @@ class _WalletSettingsViewState extends ConsumerState<WalletSettingsView> {
return TextButton(
onPressed: () {
ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(walletId)
.isActiveWallet = false;
ref
@ -465,10 +464,8 @@ class _EpiBoxInfoFormState extends ConsumerState<EpicBoxInfoForm> {
@override
void initState() {
wallet = ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.wallet as EpicCashWallet;
wallet =
ref.read(pWallets).getManager(widget.walletId).wallet as EpicCashWallet;
wallet.getEpicBoxConfig().then((EpicBoxConfigModel epicBoxConfig) {
hostController.text = epicBoxConfig.host;

View file

@ -64,8 +64,7 @@ class _XPubViewState extends ConsumerState<ChangeRepresentativeView> {
String? representative;
Future<String> loadRepresentative() async {
final manager =
ref.read(walletsChangeNotifierProvider).getManager(widget.walletId);
final manager = ref.read(pWallets).getManager(widget.walletId);
if (manager.coin == Coin.nano) {
return (manager.wallet as NanoWallet).getCurrentRepresentative();
@ -76,8 +75,7 @@ class _XPubViewState extends ConsumerState<ChangeRepresentativeView> {
}
Future<void> _save() async {
final manager =
ref.read(walletsChangeNotifierProvider).getManager(widget.walletId);
final manager = ref.read(pWallets).getManager(widget.walletId);
final changeFuture = manager.coin == Coin.nano
? (manager.wallet as NanoWallet).changeRepresentative

View file

@ -194,7 +194,7 @@ class _DeleteWalletRecoveryPhraseViewState
onPressed: () async {
final walletId = _manager.walletId;
final walletsInstance =
ref.read(walletsChangeNotifierProvider);
ref.read(pWallets);
await ref
.read(walletsServiceChangeNotifierProvider)
.deleteWallet(_manager.walletName, true);

View file

@ -99,9 +99,7 @@ class DeleteWalletWarningView extends ConsumerWidget {
.extension<StackColors>()!
.getPrimaryEnabledButtonStyle(context),
onPressed: () async {
final manager = ref
.read(walletsChangeNotifierProvider)
.getManager(walletId);
final manager = ref.read(pWallets).getManager(walletId);
final mnemonic = await manager.mnemonic;
Navigator.of(context).pushNamed(
DeleteWalletRecoveryPhraseView.routeName,

View file

@ -47,8 +47,7 @@ class _RenameWalletViewState extends ConsumerState<RenameWalletView> {
void initState() {
_controller = TextEditingController();
walletId = widget.walletId;
originalName =
ref.read(walletsChangeNotifierProvider).getManager(walletId).walletName;
originalName = ref.read(pWallets).getManager(walletId).walletName;
_controller.text = originalName;
super.initState();
}
@ -135,10 +134,8 @@ class _RenameWalletViewState extends ConsumerState<RenameWalletView> {
);
if (success) {
ref
.read(walletsChangeNotifierProvider)
.getManager(walletId)
.walletName = newName;
ref.read(pWallets).getManager(walletId).walletName =
newName;
Navigator.of(context).pop();
showFloatingFlushBar(
type: FlushBarType.success,

View file

@ -111,7 +111,7 @@ class WalletSettingsWalletSettingsView extends ConsumerWidget {
context: context,
builder: (_) => StackDialog(
title:
"Do you want to delete ${ref.read(walletsChangeNotifierProvider).getManager(walletId).walletName}?",
"Do you want to delete ${ref.read(pWallets).getManager(walletId).walletName}?",
leftButton: TextButton(
style: Theme.of(context)
.extension<StackColors>()!

View file

@ -60,8 +60,7 @@ class _XPubViewState extends ConsumerState<XPubView> {
@override
void initState() {
_clipboardInterface = widget.clipboardInterface;
manager =
ref.read(walletsChangeNotifierProvider).getManager(widget.walletId);
manager = ref.read(pWallets).getManager(widget.walletId);
super.initState();
}

View file

@ -136,7 +136,7 @@ class _FiroRescanRecoveryErrorViewState
context: context,
builder: (_) => StackDialog(
title:
"Do you want to delete ${ref.read(walletsChangeNotifierProvider).getManager(widget.walletId).walletName}?",
"Do you want to delete ${ref.read(pWallets).getManager(widget.walletId).walletName}?",
leftButton: TextButton(
style: Theme.of(context)
.extension<StackColors>()!
@ -254,7 +254,7 @@ class _FiroRescanRecoveryErrorViewState
);
} else {
final mnemonic = await ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(widget.walletId)
.mnemonic;

View file

@ -89,7 +89,7 @@ class _MyTokensViewState extends ConsumerState<MyTokensView> {
),
title: Text(
"${ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) => value.getManager(widget.walletId).walletName),
)} Tokens",
style: STextStyles.navBarTitle(context),
@ -234,7 +234,7 @@ class _MyTokensViewState extends ConsumerState<MyTokensView> {
walletId: widget.walletId,
searchTerm: _searchString,
tokenContracts: ref
.watch(walletsChangeNotifierProvider.select((value) => value
.watch(pWallets.select((value) => value
.getManager(widget.walletId)
.wallet as EthereumWallet))
.getWalletTokenContractAddresses(),

View file

@ -85,7 +85,7 @@ class _MyTokenSelectItemState extends ConsumerState<MyTokenSelectItem> {
token: widget.token,
secureStore: ref.read(secureStoreProvider),
ethWallet: ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(widget.walletId)
.wallet as EthereumWallet,
tracker: TransactionNotificationTracker(
@ -118,7 +118,7 @@ class _MyTokenSelectItemState extends ConsumerState<MyTokenSelectItem> {
WidgetsBinding.instance.addPostFrameCallback((_) async {
final address = await ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(widget.walletId)
.currentReceivingAddress;
await cachedBalance.fetchAndUpdateCachedBalance(address);

View file

@ -78,7 +78,7 @@ class TokenSummary extends ConsumerWidget {
),
Text(
ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) => value.getManager(walletId).walletName,
),
),
@ -367,8 +367,7 @@ class CoinTickerTag extends ConsumerWidget {
color: Theme.of(context).extension<StackColors>()!.ethTagBG,
child: Text(
ref.watch(
walletsChangeNotifierProvider
.select((value) => value.getManager(walletId).coin.ticker),
pWallets.select((value) => value.getManager(walletId).coin.ticker),
),
style: STextStyles.w600_12(context).copyWith(
color: Theme.of(context).extension<StackColors>()!.ethTagText,

View file

@ -95,7 +95,7 @@ class _TransactionsListState extends ConsumerState<TokenTransactionsList> {
TransactionCard(
// this may mess with combined firo transactions
key: tx.isConfirmed(
ref.watch(walletsChangeNotifierProvider.select((value) =>
ref.watch(pWallets.select((value) =>
value.getManager(widget.walletId).currentHeight)),
coin.requiredConfirmations)
? Key(tx.txid + tx.type.name + tx.address.value.toString())
@ -111,10 +111,8 @@ class _TransactionsListState extends ConsumerState<TokenTransactionsList> {
trade.uuid), //
trade: trade,
onTap: () async {
final walletName = ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.walletName;
final walletName =
ref.read(pWallets).getManager(widget.walletId).walletName;
if (Util.isDesktop) {
await showDialog<void>(
context: context,
@ -198,7 +196,7 @@ class _TransactionsListState extends ConsumerState<TokenTransactionsList> {
child: TransactionCard(
// this may mess with combined firo transactions
key: tx.isConfirmed(
ref.watch(walletsChangeNotifierProvider.select((value) =>
ref.watch(pWallets.select((value) =>
value.getManager(widget.walletId).currentHeight)),
coin.requiredConfirmations)
? Key(tx.txid + tx.type.name + tx.address.value.toString())
@ -212,8 +210,8 @@ class _TransactionsListState extends ConsumerState<TokenTransactionsList> {
@override
Widget build(BuildContext context) {
final manager = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(widget.walletId)));
final manager = ref
.watch(pWallets.select((value) => value.getManager(widget.walletId)));
return FutureBuilder(
future: ref

View file

@ -214,8 +214,8 @@ class _TransactionsListState extends ConsumerState<TransactionsList> {
@override
Widget build(BuildContext context) {
final manager = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(widget.walletId)));
final manager = ref
.watch(pWallets.select((value) => value.getManager(widget.walletId)));
return FutureBuilder(
future: manager.transactions,
@ -249,9 +249,8 @@ class _TransactionsListState extends ConsumerState<TransactionsList> {
onRefresh: () async {
//todo: check if print needed
// debugPrint("pulled down to refresh on transaction list");
final managerProvider = ref
.read(walletsChangeNotifierProvider)
.getManagerProvider(widget.walletId);
final managerProvider =
ref.read(pWallets).getManagerProvider(widget.walletId);
if (!ref.read(managerProvider).isRefreshing) {
unawaited(ref.read(managerProvider).refresh());
}

View file

@ -42,11 +42,11 @@ class WalletBalanceToggleSheet extends ConsumerWidget {
Widget build(BuildContext context, WidgetRef ref) {
final maxHeight = MediaQuery.of(context).size.height * 0.60;
final coin = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId).coin));
final coin =
ref.watch(pWallets.select((value) => value.getManager(walletId).coin));
final balance = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId).balance));
final balance = ref
.watch(pWallets.select((value) => value.getManager(walletId).balance));
_BalanceType _bal =
ref.watch(walletBalanceToggleStateProvider.state).state ==
@ -58,7 +58,7 @@ class WalletBalanceToggleSheet extends ConsumerWidget {
if (coin == Coin.firo || coin == Coin.firoTestNet) {
balanceSecondary = ref
.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) => value.getManager(walletId).wallet as FiroWallet?,
),
)

View file

@ -133,9 +133,8 @@ class _RefreshButtonState extends ConsumerState<WalletRefreshButton> {
splashColor: Theme.of(context).extension<StackColors>()!.highlight,
onPressed: () {
if (widget.tokenContractAddress == null) {
final managerProvider = ref
.read(walletsChangeNotifierProvider)
.getManagerProvider(widget.walletId);
final managerProvider =
ref.read(pWallets).getManagerProvider(widget.walletId);
final isRefreshing = ref.read(managerProvider).isRefreshing;
if (!isRefreshing) {
_spinController.repeat?.call();

View file

@ -81,7 +81,7 @@ class _WalletSummaryInfoState extends ConsumerState<WalletSummaryInfo> {
// managerProvider = widget.managerProvider;
WidgetsBinding.instance.addPostFrameCallback((timeStamp) async {
final address = await ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(widget.walletId)
.currentReceivingAddress;
setState(() {
@ -103,14 +103,14 @@ class _WalletSummaryInfoState extends ConsumerState<WalletSummaryInfo> {
bool isMonkey = true;
final manager = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(widget.walletId)));
final manager = ref
.watch(pWallets.select((value) => value.getManager(widget.walletId)));
final externalCalls = ref.watch(
prefsChangeNotifierProvider.select((value) => value.externalCalls));
final coin = manager.coin;
final balance = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(widget.walletId).balance));
final balance = ref.watch(
pWallets.select((value) => value.getManager(widget.walletId).balance));
final locale = ref.watch(
localeServiceChangeNotifierProvider.select((value) => value.locale));
@ -132,7 +132,7 @@ class _WalletSummaryInfoState extends ConsumerState<WalletSummaryInfo> {
final _showPrivate =
ref.watch(publicPrivateBalanceStateProvider.state).state == "Private";
final firoWallet = ref.watch(walletsChangeNotifierProvider.select(
final firoWallet = ref.watch(pWallets.select(
(value) => value.getManager(widget.walletId).wallet)) as FiroWallet;
final bal = _showPrivate ? firoWallet.balancePrivate : firoWallet.balance;

View file

@ -306,10 +306,8 @@ class _TransactionDetailsViewState extends ConsumerState<AllTransactionsView> {
onPressed: () {
Navigator.of(context).pushNamed(
TransactionSearchFilterView.routeName,
arguments: ref
.read(walletsChangeNotifierProvider)
.getManager(walletId)
.coin,
arguments:
ref.read(pWallets).getManager(walletId).coin,
);
},
),
@ -423,10 +421,8 @@ class _TransactionDetailsViewState extends ConsumerState<AllTransactionsView> {
height: 20,
),
onPressed: () {
final coin = ref
.read(walletsChangeNotifierProvider)
.getManager(walletId)
.coin;
final coin =
ref.read(pWallets).getManager(walletId).coin;
if (isDesktop) {
showDialog<void>(
context: context,
@ -469,9 +465,8 @@ class _TransactionDetailsViewState extends ConsumerState<AllTransactionsView> {
Expanded(
child: Consumer(
builder: (_, ref, __) {
final managerProvider = ref.watch(
walletsChangeNotifierProvider.select(
(value) => value.getManagerProvider(walletId)));
final managerProvider = ref.watch(pWallets
.select((value) => value.getManagerProvider(walletId)));
final criteria =
ref.watch(transactionFilterProvider.state).state;
@ -856,8 +851,8 @@ class _DesktopTransactionCardRowState
Widget build(BuildContext context) {
final locale = ref.watch(
localeServiceChangeNotifierProvider.select((value) => value.locale));
final manager = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId)));
final manager =
ref.watch(pWallets.select((value) => value.getManager(walletId)));
final baseCurrency = ref
.watch(prefsChangeNotifierProvider.select((value) => value.currency));
@ -882,8 +877,8 @@ class _DesktopTransactionCardRowState
prefix = "";
}
final currentHeight = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId).currentHeight));
final currentHeight = ref.watch(
pWallets.select((value) => value.getManager(walletId).currentHeight));
return Material(
color: Theme.of(context).extension<StackColors>()!.popupBG,

View file

@ -355,8 +355,8 @@ class _TransactionDetailsViewState
@override
Widget build(BuildContext context) {
final currentHeight = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId).currentHeight));
final currentHeight = ref.watch(
pWallets.select((value) => value.getManager(walletId).currentHeight));
return ConditionalParent(
condition: !isDesktop,
@ -1597,9 +1597,8 @@ class _TransactionDetailsViewState
),
),
onPressed: () async {
final Manager manager = ref
.read(walletsChangeNotifierProvider)
.getManager(walletId);
final Manager manager =
ref.read(pWallets).getManager(walletId);
if (manager.wallet is EpicCashWallet) {
final String? id = _transaction.slateId;

View file

@ -308,10 +308,8 @@ class _AllTransactionsV2ViewState extends ConsumerState<AllTransactionsV2View> {
onPressed: () {
Navigator.of(context).pushNamed(
TransactionSearchFilterView.routeName,
arguments: ref
.read(walletsChangeNotifierProvider)
.getManager(walletId)
.coin,
arguments:
ref.read(pWallets).getManager(walletId).coin,
);
},
),
@ -425,10 +423,8 @@ class _AllTransactionsV2ViewState extends ConsumerState<AllTransactionsV2View> {
height: 20,
),
onPressed: () {
final coin = ref
.read(walletsChangeNotifierProvider)
.getManager(walletId)
.coin;
final coin =
ref.read(pWallets).getManager(walletId).coin;
if (isDesktop) {
showDialog<void>(
context: context,
@ -471,9 +467,8 @@ class _AllTransactionsV2ViewState extends ConsumerState<AllTransactionsV2View> {
Expanded(
child: Consumer(
builder: (_, ref, __) {
final managerProvider = ref.watch(
walletsChangeNotifierProvider.select(
(value) => value.getManagerProvider(walletId)));
final managerProvider = ref.watch(pWallets
.select((value) => value.getManagerProvider(walletId)));
final criteria =
ref.watch(transactionFilterProvider.state).state;
@ -857,8 +852,8 @@ class _DesktopTransactionCardRowState
Widget build(BuildContext context) {
final locale = ref.watch(
localeServiceChangeNotifierProvider.select((value) => value.locale));
final manager = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId)));
final manager =
ref.watch(pWallets.select((value) => value.getManager(walletId)));
final baseCurrency = ref
.watch(prefsChangeNotifierProvider.select((value) => value.currency));
@ -883,8 +878,8 @@ class _DesktopTransactionCardRowState
prefix = "";
}
final currentHeight = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId).currentHeight));
final currentHeight = ref.watch(
pWallets.select((value) => value.getManager(walletId).currentHeight));
final Amount amount;

View file

@ -27,11 +27,11 @@ class FusionTxGroupCard extends ConsumerWidget {
Widget build(BuildContext context, WidgetRef ref) {
final walletId = group.transactions.first.walletId;
final coin = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId).coin));
final coin =
ref.watch(pWallets.select((value) => value.getManager(walletId).coin));
final currentHeight = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId).currentHeight));
final currentHeight = ref.watch(
pWallets.select((value) => value.getManager(walletId).currentHeight));
return Material(
color: Theme.of(context).extension<StackColors>()!.popupBG,

View file

@ -96,7 +96,7 @@ class _TransactionCardStateV2 extends ConsumerState<TransactionCardV2> {
} else {
prefix = "";
}
coin = ref.read(walletsChangeNotifierProvider).getManager(walletId).coin;
coin = ref.read(pWallets).getManager(walletId).coin;
unit = coin.ticker;
super.initState();
@ -115,8 +115,8 @@ class _TransactionCardStateV2 extends ConsumerState<TransactionCardV2> {
.select((value) => value.getPrice(coin)))
.item1;
final currentHeight = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId).currentHeight));
final currentHeight = ref.watch(
pWallets.select((value) => value.getManager(walletId).currentHeight));
final Amount amount;

View file

@ -397,8 +397,8 @@ class _TransactionV2DetailsViewState
@override
Widget build(BuildContext context) {
final currentHeight = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId).currentHeight));
final currentHeight = ref.watch(
pWallets.select((value) => value.getManager(walletId).currentHeight));
final String outputLabel;

View file

@ -66,8 +66,8 @@ class _TransactionsV2ListState extends ConsumerState<TransactionsV2List> {
@override
Widget build(BuildContext context) {
final manager = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(widget.walletId)));
final manager = ref
.watch(pWallets.select((value) => value.getManager(widget.walletId)));
return FutureBuilder(
future: ref
@ -145,9 +145,8 @@ class _TransactionsV2ListState extends ConsumerState<TransactionsV2List> {
return RefreshIndicator(
onRefresh: () async {
final managerProvider = ref
.read(walletsChangeNotifierProvider)
.getManagerProvider(widget.walletId);
final managerProvider =
ref.read(pWallets).getManagerProvider(widget.walletId);
if (!ref.read(managerProvider).isRefreshing) {
unawaited(ref.read(managerProvider).refresh());
}

View file

@ -107,7 +107,7 @@ class TxListItem extends ConsumerWidget {
// transactionIfSentFromStack: tx,
transactionIfSentFromStack: null,
walletName: ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) => value
.getManager(_tx.walletId)
.walletName,
@ -136,7 +136,7 @@ class TxListItem extends ConsumerWidget {
_tx,
_tx.walletId,
ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(_tx.walletId)
.walletName,
),

View file

@ -984,7 +984,7 @@ class _WalletViewState extends ConsumerState<WalletView> {
],
moreItems: [
if (ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) =>
value.getManager(widget.walletId).hasTokenSupport,
),
@ -1017,7 +1017,7 @@ class _WalletViewState extends ConsumerState<WalletView> {
);
}),
if (ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) => value
.getManager(widget.walletId)
.hasCoinControlSupport,
@ -1041,7 +1041,7 @@ class _WalletViewState extends ConsumerState<WalletView> {
);
},
),
if (ref.watch(walletsChangeNotifierProvider.select((value) =>
if (ref.watch(pWallets.select((value) =>
value.getManager(widget.walletId).hasPaynymSupport)))
WalletNavigationBarItemData(
label: "PayNym",
@ -1057,7 +1057,7 @@ class _WalletViewState extends ConsumerState<WalletView> {
);
final manager = ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(widget.walletId);
final paynymInterface =
@ -1100,7 +1100,7 @@ class _WalletViewState extends ConsumerState<WalletView> {
},
),
if (ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) =>
value.getManager(widget.walletId).hasOrdinalsSupport,
),
@ -1116,7 +1116,7 @@ class _WalletViewState extends ConsumerState<WalletView> {
},
),
if (ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) =>
value.getManager(widget.walletId).hasFusionSupport,
),

View file

@ -48,7 +48,7 @@ class AllWallets extends StatelessWidget {
Expanded(
child: Consumer(
builder: (_, ref, __) {
final providersByCoin = ref.watch(walletsChangeNotifierProvider
final providersByCoin = ref.watch(pWallets
.select((value) => value.getManagerProvidersByCoin()));
return ListView.builder(

View file

@ -60,8 +60,7 @@ class _FavoriteCardState extends ConsumerState<FavoriteCard> {
@override
Widget build(BuildContext context) {
final coin = ref.watch(
walletsChangeNotifierProvider
.select((value) => value.getManager(walletId).coin),
pWallets.select((value) => value.getManager(walletId).coin),
);
final externalCalls = ref.watch(
prefsChangeNotifierProvider.select((value) => value.externalCalls),
@ -117,10 +116,7 @@ class _FavoriteCardState extends ConsumerState<FavoriteCard> {
child: GestureDetector(
onTap: () async {
if (coin == Coin.monero || coin == Coin.wownero) {
await ref
.read(walletsChangeNotifierProvider)
.getManager(walletId)
.initializeExisting();
await ref.read(pWallets).getManager(walletId).initializeExisting();
}
if (mounted) {
if (Util.isDesktop) {
@ -133,9 +129,7 @@ class _FavoriteCardState extends ConsumerState<FavoriteCard> {
WalletView.routeName,
arguments: Tuple2(
walletId,
ref
.read(walletsChangeNotifierProvider)
.getManagerProvider(walletId),
ref.read(pWallets).getManagerProvider(walletId),
),
);
}
@ -164,7 +158,7 @@ class _FavoriteCardState extends ConsumerState<FavoriteCard> {
Expanded(
child: Text(
ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) =>
value.getManager(walletId).walletName,
),
@ -190,7 +184,7 @@ class _FavoriteCardState extends ConsumerState<FavoriteCard> {
Builder(
builder: (context) {
final balance = ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) => value.getManager(walletId).balance,
),
);
@ -198,7 +192,7 @@ class _FavoriteCardState extends ConsumerState<FavoriteCard> {
Amount total = balance.total;
if (coin == Coin.firo || coin == Coin.firoTestNet) {
final balancePrivate = ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) => (value.getManager(walletId).wallet
as FiroWallet)
.balancePrivate,

View file

@ -196,9 +196,8 @@ class _FavoriteWalletsState extends ConsumerState<FavoriteWallets> {
if (index < favorites.length) {
walletId = ref.read(favorites[index]).walletId;
managerProvider = ref
.read(walletsChangeNotifierProvider)
.getManagerProvider(walletId);
managerProvider =
ref.read(pWallets).getManagerProvider(walletId);
}
const double scaleDown = 0.95;

View file

@ -58,7 +58,7 @@ class WalletListItem extends ConsumerWidget {
onPressed: () async {
if (walletCount == 1 && coin != Coin.ethereum) {
final providersByCoin = ref
.watch(walletsChangeNotifierProvider
.watch(pWallets
.select((value) => value.getManagerProvidersByCoin()))
.where((e) => e.item1 == coin)
.map((e) => e.item2)

View file

@ -117,8 +117,7 @@ class _EthWalletsOverviewState extends ConsumerState<WalletsOverview> {
if (widget.coin == Coin.ethereum) {
for (final data in walletsData.values) {
final List<EthContract> contracts = [];
final manager =
ref.read(walletsChangeNotifierProvider).getManager(data.walletId);
final manager = ref.read(pWallets).getManager(data.walletId);
final contractAddresses = (manager.wallet as EthereumWallet)
.getWalletTokenContractAddresses();
@ -141,7 +140,7 @@ class _EthWalletsOverviewState extends ConsumerState<WalletsOverview> {
// add tuple to list
wallets.add(
Tuple2(
ref.read(walletsChangeNotifierProvider).getManager(
ref.read(pWallets).getManager(
data.walletId,
),
contracts,
@ -153,7 +152,7 @@ class _EthWalletsOverviewState extends ConsumerState<WalletsOverview> {
for (final data in walletsData.values) {
wallets.add(
Tuple2(
ref.read(walletsChangeNotifierProvider).getManager(
ref.read(pWallets).getManager(
data.walletId,
),
[],

View file

@ -25,7 +25,7 @@ class WalletsView extends ConsumerWidget {
@override
Widget build(BuildContext context, WidgetRef ref) {
debugPrint("BUILD: $runtimeType");
final hasWallets = ref.watch(walletsChangeNotifierProvider).hasWallets;
final hasWallets = ref.watch(pWallets).hasWallets;
final showFavorites = ref.watch(prefsChangeNotifierProvider
.select((value) => value.showFavoriteWallets));

View file

@ -111,7 +111,7 @@ class _DesktopAddressBook extends ConsumerState<DesktopAddressBook> {
WidgetsBinding.instance.addPostFrameCallback((_) async {
List<ContactAddressEntry> addresses = [];
final managers = ref.read(walletsChangeNotifierProvider).managers;
final managers = ref.read(pWallets).managers;
for (final manager in managers) {
addresses.add(
ContactAddressEntry()

View file

@ -288,7 +288,7 @@ class _DesktopContactDetailsState extends ConsumerState<DesktopContactDetails> {
),
FutureBuilder(
future: _filteredTransactionsByContact(
ref.watch(walletsChangeNotifierProvider).managers),
ref.watch(pWallets).managers),
builder: (_,
AsyncSnapshot<List<Tuple2<String, Transaction>>>
snapshot) {

View file

@ -132,8 +132,8 @@ class _DesktopAddressListState extends ConsumerState<DesktopAddressList> {
@override
Widget build(BuildContext context) {
final coin = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(widget.walletId).coin));
final coin = ref.watch(
pWallets.select((value) => value.getManager(widget.walletId).coin));
final ids = _search(_searchString);

View file

@ -65,10 +65,8 @@ class _DesktopCashFusion extends ConsumerState<DesktopCashFusionView> {
FusionOption _roundType = FusionOption.continuous;
Future<void> _startFusion() async {
final fusionWallet = ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.wallet as FusionWalletInterface;
final fusionWallet = ref.read(pWallets).getManager(widget.walletId).wallet
as FusionWalletInterface;
try {
fusionWallet.uiState = ref.read(

View file

@ -120,7 +120,7 @@ class _FusionDialogViewState extends ConsumerState<FusionDialogView> {
if (shouldCancel == true && mounted) {
final fusionWallet = ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(widget.walletId)
.wallet as FusionWalletInterface;
@ -283,10 +283,8 @@ class _FusionDialogViewState extends ConsumerState<FusionDialogView> {
/// Fuse again.
void _fuseAgain() async {
final fusionWallet = ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.wallet as FusionWalletInterface;
final fusionWallet = ref.read(pWallets).getManager(widget.walletId).wallet
as FusionWalletInterface;
final fusionInfo = ref.read(prefsChangeNotifierProvider).fusionServerInfo;

View file

@ -81,10 +81,7 @@ class _DesktopCoinControlUseDialogState
@override
void initState() {
_searchController = TextEditingController();
coin = ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.coin;
coin = ref.read(pWallets).getManager(widget.walletId).coin;
for (final utxo in ref.read(desktopUseUTXOs)) {
final data = UtxoRowData(utxo.id, true);

View file

@ -71,10 +71,7 @@ class _DesktopCoinControlViewState
@override
void initState() {
_searchController = TextEditingController();
coin = ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.coin;
coin = ref.read(pWallets).getManager(widget.walletId).coin;
super.initState();
}

View file

@ -18,7 +18,6 @@ import 'package:stackwallet/providers/global/wallets_provider.dart';
import 'package:stackwallet/themes/stack_colors.dart';
import 'package:stackwallet/utilities/amount/amount.dart';
import 'package:stackwallet/utilities/amount/amount_formatter.dart';
import 'package:stackwallet/utilities/enums/coin_enum.dart';
import 'package:stackwallet/utilities/text_styles.dart';
import 'package:stackwallet/widgets/conditional_parent.dart';
import 'package:stackwallet/widgets/custom_buttons/blue_text_button.dart';
@ -97,10 +96,10 @@ class _UtxoRowState extends ConsumerState<UtxoRow> {
Widget build(BuildContext context) {
debugPrint("BUILD: $runtimeType");
final coin = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(widget.walletId).coin));
final coin = ref.watch(
pWallets.select((value) => value.getManager(widget.walletId).coin));
final currentChainHeight = ref.watch(walletsChangeNotifierProvider
final currentChainHeight = ref.watch(pWallets
.select((value) => value.getManager(widget.walletId).currentHeight));
return StreamBuilder<UTXO?>(

View file

@ -367,9 +367,7 @@ class _DesktopTradeRowCardState extends ConsumerState<DesktopTradeRowCard> {
),
onPressed: () async {
if (txid != null && walletIds != null && walletIds.isNotEmpty) {
final manager = ref
.read(walletsChangeNotifierProvider)
.getManager(walletIds.first);
final manager = ref.read(pWallets).getManager(walletIds.first);
//todo: check if print needed
// debugPrint("name: ${manager.walletName}");

View file

@ -239,7 +239,7 @@ class _DesktopStep2State extends ConsumerState<DesktopStep2> {
if (ref.read(desktopExchangeModelProvider)!.receiveTicker.toLowerCase() ==
tuple.item2.ticker.toLowerCase()) {
ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(tuple.item1)
.currentReceivingAddress
.then((value) {
@ -251,7 +251,7 @@ class _DesktopStep2State extends ConsumerState<DesktopStep2> {
if (ref.read(desktopExchangeModelProvider)!.sendTicker.toUpperCase() ==
tuple.item2.ticker.toUpperCase()) {
ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(tuple.item1)
.currentReceivingAddress
.then((value) {

View file

@ -39,7 +39,7 @@ class _DesktopStep4State extends ConsumerState<DesktopStep4> {
try {
final coin = coinFromTickerCaseInsensitive(ticker);
return ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.managers
.where((element) => element.coin == coin)
.isNotEmpty;

View file

@ -56,8 +56,7 @@ class _DesktopChooseFromStackState
final List<String> result = [];
for (final walletId in walletIds) {
final manager =
ref.read(walletsChangeNotifierProvider).getManager(walletId);
final manager = ref.read(pWallets).getManager(walletId);
if (manager.walletName.toLowerCase().contains(searchTerm.toLowerCase())) {
result.add(walletId);
@ -160,7 +159,7 @@ class _DesktopChooseFromStackState
child: Builder(
builder: (context) {
List<String> walletIds = ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) => value.getWalletIdsFor(coin: widget.coin),
),
);
@ -193,7 +192,7 @@ class _DesktopChooseFromStackState
height: 5,
),
itemBuilder: (context, index) {
final manager = ref.watch(walletsChangeNotifierProvider
final manager = ref.watch(pWallets
.select((value) => value.getManager(walletIds[index])));
return RoundedWhiteContainer(
@ -288,8 +287,8 @@ class _BalanceDisplay extends ConsumerWidget {
@override
Widget build(BuildContext context, WidgetRef ref) {
final manager = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId)));
final manager =
ref.watch(pWallets.select((value) => value.getManager(walletId)));
Amount total = manager.balance.total;
if (manager.coin == Coin.firo || manager.coin == Coin.firoTestNet) {

View file

@ -117,9 +117,8 @@ class _DesktopTradeHistoryState extends ConsumerState<DesktopTradeHistory> {
if (txid != null &&
walletIds != null &&
walletIds.isNotEmpty) {
final manager = ref
.read(walletsChangeNotifierProvider)
.getManager(walletIds.first);
final manager =
ref.read(pWallets).getManager(walletIds.first);
//todo: check if print needed
// debugPrint("name: ${manager.walletName}");

View file

@ -114,7 +114,7 @@ class _DesktopHomeViewState extends ConsumerState<DesktopHomeView> {
.popUntil(ModalRoute.withName(MyStackView.routeName));
if (ref.read(currentWalletIdProvider.state).state != null) {
final managerProvider = ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManagerProvider(ref.read(currentWalletIdProvider.state).state!);
if (ref.read(managerProvider).shouldAutoSync) {
ref.read(managerProvider).shouldAutoSync = false;

View file

@ -29,8 +29,8 @@ class CoinWalletsTable extends ConsumerWidget {
@override
Widget build(BuildContext context, WidgetRef ref) {
final walletIds = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getWalletIdsFor(coin: coin)));
final walletIds = ref
.watch(pWallets.select((value) => value.getWalletIdsFor(coin: coin)));
return Container(
decoration: BoxDecoration(
@ -71,9 +71,8 @@ class CoinWalletsTable extends ConsumerWidget {
ref.read(currentWalletIdProvider.state).state =
walletIds[i];
final manager = ref
.read(walletsChangeNotifierProvider)
.getManager(walletIds[i]);
final manager =
ref.read(pWallets).getManager(walletIds[i]);
if (manager.coin == Coin.monero ||
manager.coin == Coin.wownero) {
await manager.initializeExisting();

View file

@ -75,9 +75,8 @@ class DesktopFavoriteWallets extends ConsumerWidget {
...favorites.map((p0) {
final walletId = ref.read(p0).walletId;
final walletName = ref.read(p0).walletName;
final managerProvider = ref
.read(walletsChangeNotifierProvider)
.getManagerProvider(walletId);
final managerProvider =
ref.read(pWallets).getManagerProvider(walletId);
return FavoriteCard(
walletId: walletId,

View file

@ -36,7 +36,7 @@ class _MyStackViewState extends ConsumerState<MyStackView> {
@override
Widget build(BuildContext context) {
debugPrint("BUILD: $runtimeType");
final hasWallets = ref.watch(walletsChangeNotifierProvider).hasWallets;
final hasWallets = ref.watch(pWallets).hasWallets;
return Background(
child: Column(

View file

@ -24,7 +24,6 @@ import 'package:stackwallet/providers/wallet/public_private_balance_state_provid
import 'package:stackwallet/services/coins/firo/firo_wallet.dart';
import 'package:stackwallet/themes/coin_icon_provider.dart';
import 'package:stackwallet/themes/stack_colors.dart';
import 'package:stackwallet/utilities/amount/amount.dart';
import 'package:stackwallet/utilities/amount/amount_formatter.dart';
import 'package:stackwallet/utilities/barcode_scanner_interface.dart';
import 'package:stackwallet/utilities/clipboard_interface.dart';
@ -59,8 +58,8 @@ class _DesktopPaynymSendDialogState
extends ConsumerState<DesktopPaynymSendDialog> {
@override
Widget build(BuildContext context) {
final manager = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(widget.walletId)));
final manager = ref
.watch(pWallets.select((value) => value.getManager(widget.walletId)));
final String locale = ref.watch(
localeServiceChangeNotifierProvider.select((value) => value.locale));

View file

@ -37,7 +37,7 @@ class _WalletTableState extends ConsumerState<WalletSummaryTable> {
Widget build(BuildContext context) {
debugPrint("BUILD: $runtimeType");
final providersByCoin = ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) => value.getManagerProvidersByCoin(),
),
);

View file

@ -88,7 +88,7 @@ class _DesktopTokenViewState extends ConsumerState<DesktopTokenView> {
),
buttonHeight: ButtonHeight.s,
label: ref.watch(
walletsChangeNotifierProvider.select(
pWallets.select(
(value) => value.getManager(widget.walletId).walletName,
),
),
@ -168,9 +168,8 @@ class _DesktopTokenViewState extends ConsumerState<DesktopTokenView> {
DesktopWalletSummary(
walletId: widget.walletId,
isToken: true,
initialSyncStatus: ref.watch(
walletsChangeNotifierProvider.select((value) =>
value.getManager(widget.walletId).isRefreshing))
initialSyncStatus: ref.watch(pWallets.select((value) =>
value.getManager(widget.walletId).isRefreshing))
? WalletSyncStatus.syncing
: WalletSyncStatus.synced,
),

View file

@ -92,9 +92,8 @@ class _DesktopWalletViewState extends ConsumerState<DesktopWalletView> {
}
Future<void> _logout() async {
final managerProvider = ref
.read(walletsChangeNotifierProvider)
.getManagerProvider(widget.walletId);
final managerProvider =
ref.read(pWallets).getManagerProvider(widget.walletId);
if (_shouldDisableAutoSyncOnLogOut) {
// disable auto sync if it was enabled only when loading wallet
ref.read(managerProvider).shouldAutoSync = false;
@ -109,10 +108,8 @@ class _DesktopWalletViewState extends ConsumerState<DesktopWalletView> {
}
Future<void> _firoRescanRecovery() async {
final success = await (ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.wallet as FiroWallet)
final success = await (ref.read(pWallets).getManager(widget.walletId).wallet
as FiroWallet)
.firoRescanRecovery();
if (success) {
@ -143,9 +140,8 @@ class _DesktopWalletViewState extends ConsumerState<DesktopWalletView> {
@override
void initState() {
controller = TextEditingController();
final managerProvider = ref
.read(walletsChangeNotifierProvider)
.getManagerProvider(widget.walletId);
final managerProvider =
ref.read(pWallets).getManagerProvider(widget.walletId);
controller.text = ref.read(managerProvider).walletName;
@ -192,11 +188,11 @@ class _DesktopWalletViewState extends ConsumerState<DesktopWalletView> {
@override
Widget build(BuildContext context) {
final manager = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(widget.walletId)));
final manager = ref
.watch(pWallets.select((value) => value.getManager(widget.walletId)));
final coin = manager.coin;
final managerProvider = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManagerProvider(widget.walletId)));
final managerProvider = ref.watch(
pWallets.select((value) => value.getManagerProvider(widget.walletId)));
final monke = coin == Coin.banano
? (manager.wallet as BananoWallet).getMonkeyImageBytes()
@ -442,10 +438,9 @@ class _DesktopWalletViewState extends ConsumerState<DesktopWalletView> {
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text(
ref.watch(walletsChangeNotifierProvider.select(
(value) => value
.getManager(widget.walletId)
.hasTokenSupport))
ref.watch(pWallets.select((value) => value
.getManager(widget.walletId)
.hasTokenSupport))
? "Tokens"
: "Recent activity",
style: STextStyles.desktopTextExtraSmall(context)
@ -456,15 +451,14 @@ class _DesktopWalletViewState extends ConsumerState<DesktopWalletView> {
),
),
CustomTextButton(
text: ref.watch(walletsChangeNotifierProvider.select(
(value) => value
.getManager(widget.walletId)
.hasTokenSupport))
text: ref.watch(pWallets.select((value) => value
.getManager(widget.walletId)
.hasTokenSupport))
? "Edit"
: "See all",
onTap: () async {
if (ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(widget.walletId)
.hasTokenSupport) {
final result = await showDialog<int?>(
@ -512,10 +506,9 @@ class _DesktopWalletViewState extends ConsumerState<DesktopWalletView> {
width: 16,
),
Expanded(
child: ref.watch(walletsChangeNotifierProvider.select(
(value) => value
.getManager(widget.walletId)
.hasTokenSupport))
child: ref.watch(pWallets.select((value) => value
.getManager(widget.walletId)
.hasTokenSupport))
? MyTokensView(
walletId: widget.walletId,
)
@ -525,10 +518,9 @@ class _DesktopWalletViewState extends ConsumerState<DesktopWalletView> {
walletId: widget.walletId,
)
: TransactionsList(
managerProvider: ref.watch(
walletsChangeNotifierProvider.select(
(value) => value.getManagerProvider(
widget.walletId))),
managerProvider: ref.watch(pWallets.select(
(value) => value.getManagerProvider(
widget.walletId))),
walletId: widget.walletId,
),
),

View file

@ -235,11 +235,9 @@ class _ConfirmDeleteState extends ConsumerState<ConfirmDelete> {
buttonHeight: ButtonHeight.xl,
label: "Continue",
onPressed: () async {
final walletsInstance =
ref.read(walletsChangeNotifierProvider);
final manager = ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId);
final walletsInstance = ref.read(pWallets);
final manager =
ref.read(pWallets).getManager(widget.walletId);
final _managerWalletId = manager.walletId;
//

View file

@ -111,7 +111,7 @@ class _DesktopAttentionDeleteWallet
label: "View Backup Key",
onPressed: () async {
final words = await ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManager(widget.walletId)
.mnemonic;

View file

@ -77,8 +77,7 @@ class _DesktopFeeDropDownState extends ConsumerState<DesktopFeeDropDown> {
.fast[amount] ==
null) {
if (widget.isToken == false) {
final manager =
ref.read(walletsChangeNotifierProvider).getManager(walletId);
final manager = ref.read(pWallets).getManager(walletId);
if (coin == Coin.monero || coin == Coin.wownero) {
final fee = await manager.estimateFeeFor(
@ -114,8 +113,7 @@ class _DesktopFeeDropDownState extends ConsumerState<DesktopFeeDropDown> {
.average[amount] ==
null) {
if (widget.isToken == false) {
final manager =
ref.read(walletsChangeNotifierProvider).getManager(walletId);
final manager = ref.read(pWallets).getManager(walletId);
if (coin == Coin.monero || coin == Coin.wownero) {
final fee = await manager.estimateFeeFor(
@ -151,8 +149,7 @@ class _DesktopFeeDropDownState extends ConsumerState<DesktopFeeDropDown> {
.slow[amount] ==
null) {
if (widget.isToken == false) {
final manager =
ref.read(walletsChangeNotifierProvider).getManager(walletId);
final manager = ref.read(pWallets).getManager(walletId);
if (coin == Coin.monero || coin == Coin.wownero) {
final fee = await manager.estimateFeeFor(
@ -198,8 +195,8 @@ class _DesktopFeeDropDownState extends ConsumerState<DesktopFeeDropDown> {
Widget build(BuildContext context) {
debugPrint("BUILD: $runtimeType");
final manager = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId)));
final manager =
ref.watch(pWallets.select((value) => value.getManager(walletId)));
return FutureBuilder(
future: manager.fees,
@ -324,8 +321,8 @@ class FeeDropDownChild extends ConsumerWidget {
Widget build(BuildContext context, WidgetRef ref) {
debugPrint("BUILD: $runtimeType : $feeRateType");
final manager = ref.watch(walletsChangeNotifierProvider
.select((value) => value.getManager(walletId)));
final manager =
ref.watch(pWallets.select((value) => value.getManager(walletId)));
if (feeObject == null) {
return AnimatedText(

View file

@ -79,10 +79,7 @@ class _DesktopReceiveState extends ConsumerState<DesktopReceive> {
),
);
await ref
.read(walletsChangeNotifierProvider)
.getManager(walletId)
.generateNewAddress();
await ref.read(pWallets).getManager(walletId).generateNewAddress();
shouldPop = true;
@ -96,14 +93,12 @@ class _DesktopReceiveState extends ConsumerState<DesktopReceive> {
@override
void initState() {
walletId = widget.walletId;
coin = ref.read(walletsChangeNotifierProvider).getManager(walletId).coin;
coin = ref.read(pWallets).getManager(walletId).coin;
clipboard = widget.clipboard;
WidgetsBinding.instance.addPostFrameCallback((timeStamp) async {
final address = await ref
.read(walletsChangeNotifierProvider)
.getManager(walletId)
.currentReceivingAddress;
final address =
await ref.read(pWallets).getManager(walletId).currentReceivingAddress;
setState(() {
receivingAddress = address;
});
@ -118,7 +113,7 @@ class _DesktopReceiveState extends ConsumerState<DesktopReceive> {
ref.listen(
ref
.read(walletsChangeNotifierProvider)
.read(pWallets)
.getManagerProvider(walletId)
.select((value) => value.currentReceivingAddress),
(previous, next) {

Some files were not shown because too many files have changed in this diff Show more