Merge pull request #69 from cypherstack/staging

Staging
This commit is contained in:
Rylee Davis 2022-09-19 13:40:09 -06:00 committed by GitHub
commit 41ade117a2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 78 additions and 51 deletions

View file

@ -6,22 +6,26 @@ class ContactAddressEntry {
final Coin coin;
final String address;
final String label;
final String? other;
const ContactAddressEntry({
required this.coin,
required this.address,
required this.label,
this.other,
});
ContactAddressEntry copyWith({
Coin? coin,
String? address,
String? label,
String? other,
}) {
return ContactAddressEntry(
coin: coin ?? this.coin,
address: address ?? this.address,
label: label ?? this.label,
other: other ?? this.other,
);
}
@ -30,6 +34,7 @@ class ContactAddressEntry {
coin: Coin.values.byName(jsonObject["coin"] as String),
address: jsonObject["address"] as String,
label: jsonObject["label"] as String,
other: jsonObject["other"] as String?,
);
}
@ -38,6 +43,7 @@ class ContactAddressEntry {
"label": label,
"address": address,
"coin": coin.name,
"other": other ?? "",
};
}

View file

@ -73,6 +73,7 @@ class _AddressBookViewState extends ConsumerState<AddressBookView> {
coin: manager.coin,
address: await manager.currentReceivingAddress,
label: "Current Receiving",
other: manager.walletName,
),
);
}

View file

@ -208,10 +208,18 @@ class ContactPopUp extends ConsumerWidget {
crossAxisAlignment:
CrossAxisAlignment.start,
children: [
Text(
"${e.label} (${e.coin.ticker})",
style: STextStyles.itemSubtitle12,
),
if (contact.id == "default")
Text(
e.other!,
style:
STextStyles.itemSubtitle12,
),
if (contact.id != "default")
Text(
"${e.label} (${e.coin.ticker})",
style:
STextStyles.itemSubtitle12,
),
const SizedBox(
height: 2,
),

View file

@ -189,7 +189,7 @@ class _WalletViewState extends ConsumerState<WalletView> {
return false;
}
void _logout() {
void _logout() async {
if (_shouldDisableAutoSyncOnLogOut) {
// disable auto sync if it was enabled only when loading wallet
ref.read(managerProvider).shouldAutoSync = false;
@ -199,7 +199,7 @@ class _WalletViewState extends ConsumerState<WalletView> {
if (ref.read(prefsChangeNotifierProvider).isAutoBackupEnabled &&
ref.read(prefsChangeNotifierProvider).backupFrequencyType ==
BackupFrequencyType.afterClosingAWallet) {
ref.read(autoSWBServiceProvider).doBackup();
unawaited(ref.read(autoSWBServiceProvider).doBackup());
}
}
@ -364,7 +364,13 @@ class _WalletViewState extends ConsumerState<WalletView> {
onWillPop: _onWillPop,
child: Scaffold(
appBar: AppBar(
automaticallyImplyLeading: false,
leading: AppBarBackButton(
onPressed: () {
_logout();
Navigator.of(context).pop();
},
),
titleSpacing: 0,
title: Row(
children: [
SvgPicture.asset(
@ -376,9 +382,13 @@ class _WalletViewState extends ConsumerState<WalletView> {
const SizedBox(
width: 16,
),
Text(
ref.watch(managerProvider.select((value) => value.walletName)),
style: STextStyles.navBarTitle,
Expanded(
child: Text(
ref.watch(
managerProvider.select((value) => value.walletName)),
style: STextStyles.navBarTitle,
overflow: TextOverflow.ellipsis,
),
)
],
),

View file

@ -42,7 +42,7 @@ import 'package:stackwallet/utilities/prefs.dart';
import 'package:tuple/tuple.dart';
import 'package:uuid/uuid.dart';
const int MINIMUM_CONFIRMATIONS = 2;
const int MINIMUM_CONFIRMATIONS = 1;
const int DUST_LIMIT = 294;
const String GENESIS_HASH_MAINNET =

View file

@ -79,44 +79,46 @@ class WalletSheetCard extends ConsumerWidget {
const SizedBox(
width: 12,
),
Column(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
manager.walletName,
style: STextStyles.titleBold12,
),
const SizedBox(
height: 2,
),
FutureBuilder(
future: manager.totalBalance,
builder: (builderContext, AsyncSnapshot<Decimal> snapshot) {
if (snapshot.connectionState == ConnectionState.done &&
snapshot.hasData) {
return Text(
"${Format.localizedStringAsFixed(
value: snapshot.data!,
locale: locale,
decimalPlaces: 8,
)} ${coin.ticker}",
style: STextStyles.itemSubtitle,
);
} else {
return AnimatedText(
stringsToLoopThrough: const [
"Loading balance",
"Loading balance.",
"Loading balance..",
"Loading balance..."
],
style: STextStyles.itemSubtitle,
);
}
},
),
],
Expanded(
child: Column(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
manager.walletName,
style: STextStyles.titleBold12,
),
const SizedBox(
height: 2,
),
FutureBuilder(
future: manager.totalBalance,
builder: (builderContext, AsyncSnapshot<Decimal> snapshot) {
if (snapshot.connectionState == ConnectionState.done &&
snapshot.hasData) {
return Text(
"${Format.localizedStringAsFixed(
value: snapshot.data!,
locale: locale,
decimalPlaces: 8,
)} ${coin.ticker}",
style: STextStyles.itemSubtitle,
);
} else {
return AnimatedText(
stringsToLoopThrough: const [
"Loading balance",
"Loading balance.",
"Loading balance..",
"Loading balance..."
],
style: STextStyles.itemSubtitle,
);
}
},
),
],
),
),
],
),

View file

@ -11,7 +11,7 @@ description: Stack Wallet
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 1.4.43+58
version: 1.4.45+60
environment:
sdk: ">=2.17.0 <3.0.0"

View file

@ -28,7 +28,7 @@ import 'bitcoin_wallet_test_parameters.dart';
void main() {
group("bitcoin constants", () {
test("bitcoin minimum confirmations", () async {
expect(MINIMUM_CONFIRMATIONS, 2);
expect(MINIMUM_CONFIRMATIONS, 1);
});
test("bitcoin dust limit", () async {
expect(DUST_LIMIT, 294);