fix: load usernames when opening the safe

This commit is contained in:
poka 2023-03-31 22:53:28 +02:00
parent f7fd90ed78
commit ea94b4570b
8 changed files with 177 additions and 182 deletions

View File

@ -35,7 +35,7 @@ void main() async {
await waitFor('memberValidated'.tr(), exactMatch: true);
// Revoke test5
await tapKey(keyManageMembership, duration: 1000);
await tapKey(keyManageMembership, duration: 5000);
await tapKey(keyRevokeIdty);
await tapKey(keyConfirm);
spawnBlock(duration: 2000);
@ -49,8 +49,7 @@ void main() async {
await goBack();
await tapKey(keyAddDerivation);
await tapKey(keyOpenWallet(test1.address), duration: 500);
await tapKey(keyManageMembership, duration: 1000);
await tapKey(keyManageMembership, duration: 3000);
await waitFor('youCannotRevokeThisIdentity'.tr().substring(0, 15));
}, timeout: testTimeout());
}

View File

@ -13,10 +13,10 @@ import 'package:gecko/providers/wallet_options.dart';
import 'package:gecko/providers/wallets_profiles.dart';
import 'package:gecko/screens/certifications.dart';
import 'package:gecko/screens/activity.dart';
import 'package:gecko/screens/myWallets/manage_membership.dart';
import 'package:gecko/screens/qrcode_fullscreen.dart';
import 'package:gecko/widgets/balance.dart';
import 'package:gecko/widgets/bottom_app_bar.dart';
import 'package:gecko/widgets/buttons/manage_membership_button.dart';
import 'package:gecko/widgets/certifications.dart';
import 'package:gecko/widgets/commons/offline_info.dart';
import 'package:gecko/widgets/idty_status.dart';
@ -40,7 +40,6 @@ class WalletOptions extends StatelessWidget {
final myWalletProvider =
Provider.of<MyWalletsProvider>(context, listen: false);
final duniterIndexer = Provider.of<DuniterIndexer>(context, listen: false);
final sub = Provider.of<SubstrateSdk>(context, listen: false);
// final sub = Provider.of<SubstrateSdk>(context, listen: false);
// sub.spawnBlock();
@ -245,6 +244,14 @@ class WalletOptions extends StatelessWidget {
SizedBox(height: 30 * ratio),
Consumer<WalletOptionsProvider>(
builder: (context, walletProvider, _) {
final defaultWallet =
myWalletProvider.getDefaultWallet();
walletProvider.isDefaultWallet =
walletOptions.address.text ==
defaultWallet.address;
final walletData = walletBox
.get(walletOptions.address.text) ??
WalletData(address: walletOptions.address.text);
return Column(children: [
confirmIdentityButton(walletProvider),
pubkeyWidget(walletProvider, ctx),
@ -260,27 +267,16 @@ class WalletOptions extends StatelessWidget {
currentChest),
SizedBox(height: 17 * ratio),
// walletProvider.isMember(context, _walletOptions.address.text)
FutureBuilder(
future:
sub.isMember(walletOptions.address.text),
builder: (BuildContext context,
AsyncSnapshot<bool> isMember) {
if (isMember.connectionState !=
ConnectionState.done ||
isMember.hasError) {
return const Text('');
}
return Column(children: [
if (!walletProvider.isDefaultWallet &&
!isMember.data!)
deleteWallet(context, walletProvider,
currentChest)
else
const SizedBox(),
if (isMember.data!)
manageMembership(context)
]);
}),
Column(children: [
if (!walletProvider.isDefaultWallet &&
!walletData.isMember)
deleteWallet(
context, walletProvider, currentChest)
else
const SizedBox(),
if (walletData.isMember)
const ManageMembershipButton()
])
]);
}),
]),
@ -496,36 +492,6 @@ class WalletOptions extends StatelessWidget {
);
}
Widget manageMembership(BuildContext context) {
final walletOptions =
Provider.of<WalletOptionsProvider>(context, listen: false);
return InkWell(
key: keyManageMembership,
onTap: () {
Navigator.push(
context,
MaterialPageRoute(builder: (context) {
return ManageMembership(
address: walletOptions.address.text,
);
}),
);
},
child: SizedBox(
height: 40,
child: Row(children: <Widget>[
const SizedBox(width: 32),
Image.asset(
'assets/medal.png',
height: 45,
),
const SizedBox(width: 22),
Text('manageMembership'.tr(), style: const TextStyle(fontSize: 20)),
]),
),
);
}
Widget setDefaultWalletWidget(
BuildContext context,
WalletOptionsProvider walletProvider,

View File

@ -22,6 +22,7 @@ import 'package:gecko/widgets/balance.dart';
import 'package:gecko/widgets/bottom_app_bar.dart';
import 'package:gecko/widgets/commons/offline_info.dart';
import 'package:gecko/widgets/commons/smooth_transition.dart';
import 'package:gecko/widgets/name_by_address.dart';
import 'package:provider/provider.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:truncate/truncate.dart';
@ -40,31 +41,6 @@ class _WalletsHomeState extends State<WalletsHome> {
@override
void initState() {
// targets
// .add(TargetFocus(identify: "Target 1", keyTarget: safeKey, contents: [
// TargetContent(
// align: ContentAlign.right,
// child: Column(
// mainAxisSize: MainAxisSize.min,
// crossAxisAlignment: CrossAxisAlignment.start,
// children: const <Widget>[
// Text(
// "Titulo lorem ipsum",
// style: TextStyle(
// fontWeight: FontWeight.bold,
// color: Colors.white,
// fontSize: 20.0),
// ),
// Padding(
// padding: EdgeInsets.only(top: 10.0),
// child: Text(
// "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin pulvinar tortor eget maximus iaculis.",
// style: TextStyle(color: Colors.white),
// ),
// )
// ],
// ))
// ]));
super.initState();
}
@ -430,31 +406,17 @@ class _WalletsHomeState extends State<WalletsHome> {
children: [
const SizedBox(height: 7),
Opacity(
opacity: 0.7,
child: Text(
duniterIndexer.walletNameIndexer[
repository.address] ??
truncate(
repository.name!, 20),
style: TextStyle(
fontSize: 20,
color:
defaultWallet.address ==
repository.address
? Colors.white
: Colors.black,
fontWeight: FontWeight.w500),
),
)
// NameByAddress(
// wallet: repository,
// address: repository.address,
// size: 20,
// color: defaultWallet.address ==
// repository.address
// ? Colors.white
// : Colors.black,
// ),
opacity: 0.7,
child: NameByAddress(
wallet: repository,
size: 20,
color: defaultWallet.address ==
repository.address
? Colors.white
: Colors.black,
fontWeight: FontWeight.w600,
fontStyle: FontStyle.normal,
))
],
),
],

View File

@ -16,7 +16,7 @@ class OnboardingStepEleven extends StatelessWidget {
@override
Widget build(BuildContext context) {
final conffetiController =
ConfettiController(duration: const Duration(milliseconds: 300));
ConfettiController(duration: const Duration(milliseconds: 500));
conffetiController.play();
return WillPopScope(
onWillPop: () {
@ -55,16 +55,29 @@ class OnboardingStepEleven extends StatelessWidget {
const SizedBox(height: 40),
]),
Align(
alignment: Alignment.topCenter,
alignment: Alignment.topLeft,
child: ConfettiWidget(
confettiController: conffetiController,
blastDirection: pi / 2,
maxBlastForce: 5,
blastDirection: pi * 0.1,
maxBlastForce: 10,
minBlastForce: 1,
emissionFrequency: 0.01,
numberOfParticles: 10,
numberOfParticles: 7,
shouldLoop: false,
gravity: 0.1,
gravity: 0.2,
),
),
Align(
alignment: Alignment.topRight,
child: ConfettiWidget(
confettiController: conffetiController,
blastDirection: pi * 0.9,
maxBlastForce: 10,
minBlastForce: 1,
emissionFrequency: 0.01,
numberOfParticles: 7,
shouldLoop: false,
gravity: 0.2,
),
),
]),

View File

@ -0,0 +1,43 @@
import 'package:easy_localization/easy_localization.dart';
import 'package:flutter/material.dart';
import 'package:gecko/models/widgets_keys.dart';
import 'package:gecko/providers/wallet_options.dart';
import 'package:gecko/screens/myWallets/manage_membership.dart';
import 'package:provider/provider.dart';
class ManageMembershipButton extends StatelessWidget {
const ManageMembershipButton({
Key? key,
}) : super(key: key);
@override
Widget build(BuildContext context) {
final walletOptions =
Provider.of<WalletOptionsProvider>(context, listen: false);
return InkWell(
key: keyManageMembership,
onTap: () {
Navigator.push(
context,
MaterialPageRoute(builder: (context) {
return ManageMembership(
address: walletOptions.address.text,
);
}),
);
},
child: SizedBox(
height: 40,
child: Row(children: <Widget>[
const SizedBox(width: 32),
Image.asset(
'assets/medal.png',
height: 45,
),
const SizedBox(width: 22),
Text('manageMembership'.tr(), style: const TextStyle(fontSize: 20)),
]),
),
);
}
}

View File

@ -60,10 +60,9 @@ class CertTile extends StatelessWidget {
TextSpan(
text: getShortPubkey(repository['address']),
style: TextStyle(
fontStyle: FontStyle.italic,
color: Colors.grey[600],
fontSize: 18
),
fontStyle: FontStyle.italic,
color: Colors.grey[600],
fontSize: 18),
),
],
),

View File

@ -1,5 +1,6 @@
import 'package:easy_localization/easy_localization.dart';
import 'package:flutter/material.dart';
import 'package:gecko/globals.dart';
import 'package:gecko/models/wallet_data.dart';
import 'package:gecko/providers/duniter_indexer.dart';
import 'package:gecko/providers/substrate_sdk.dart';
@ -22,6 +23,8 @@ class IdentityStatus extends StatelessWidget {
Widget build(BuildContext context) {
final duniterIndexer = Provider.of<DuniterIndexer>(context, listen: false);
final walletData = walletBox.get(address) ?? WalletData(address: address);
return Consumer<SubstrateSdk>(builder: (context, sub, _) {
return FutureBuilder(
future: sub.idtyStatus(address),
@ -30,14 +33,20 @@ class IdentityStatus extends StatelessWidget {
duniterIndexer.idtyStatusCache[address] = snapshot.data.toString();
switch (snapshot.data.toString()) {
case 'noid':
walletData.isMember = false;
walletBox.put(address, walletData);
{
return showText('noIdentity'.tr());
}
case 'Created':
walletData.isMember = false;
walletBox.put(address, walletData);
{
return showText('identityCreated'.tr());
}
case 'ConfirmedByOwner':
walletData.isMember = false;
walletBox.put(address, walletData);
{
return isOwner
? showText('identityConfirmed'.tr())
@ -49,6 +58,8 @@ class IdentityStatus extends StatelessWidget {
fontStyle: FontStyle.italic);
}
case 'Validated':
walletData.isMember = true;
walletBox.put(address, walletData);
{
return isOwner
? showText('memberValidated'.tr(), 18, true)
@ -60,6 +71,8 @@ class IdentityStatus extends StatelessWidget {
fontStyle: FontStyle.normal);
}
case 'expired':
walletData.isMember = false;
walletBox.put(address, walletData);
{
return showText('identityExpired'.tr());
}

View File

@ -5,10 +5,10 @@ packages:
dependency: transitive
description:
name: _fe_analyzer_shared
sha256: "0c80aeab9bc807ab10022cd3b2f4cf2ecdf231949dc1ddd9442406a003f19201"
sha256: "503361166f4a100e0d7eb7fb5a62c6f0322512f2bcb48d6922caf98f24b0ab90"
url: "https://pub.dev"
source: hosted
version: "52.0.0"
version: "56.0.0"
accordion:
dependency: "direct main"
description:
@ -21,10 +21,10 @@ packages:
dependency: transitive
description:
name: analyzer
sha256: cd8ee83568a77f3ae6b913a36093a1c9b1264e7cb7f834d9ddd2311dade9c1f4
sha256: "93fcd81a6716e69864516750590cf1e699420615046bda19100238aa7b429785"
url: "https://pub.dev"
source: hosted
version: "5.4.0"
version: "5.8.0"
analyzer_plugin:
dependency: transitive
description:
@ -325,26 +325,26 @@ packages:
dependency: "direct dev"
description:
name: dart_code_metrics
sha256: "026e28da197a03caeccccc0b174ec98ef03da3c81c4543314d7add121aab4375"
sha256: "728b1835a8c5b994ae8111148b427236f2f89954eebcb62baf4c476909b3d02d"
url: "https://pub.dev"
source: hosted
version: "5.6.0"
version: "5.7.0"
dart_code_metrics_presets:
dependency: transitive
description:
name: dart_code_metrics_presets
sha256: d3c36f97470f478c8432cee163058750db3d167c0a7af9bf291f48dd86c75086
sha256: "1b841b3ab3e7b942683a706cfbcef55fe9f38e7d01b690dbcd2e9f3c8e268525"
url: "https://pub.dev"
source: hosted
version: "1.4.1"
version: "1.5.0"
dart_style:
dependency: transitive
description:
name: dart_style
sha256: "5be16bf1707658e4c03078d4a9b90208ded217fb02c163e207d334082412f2fb"
sha256: "6d691edde054969f0e0f26abb1b30834b5138b963793e56f69d3a9a4435e6352"
url: "https://pub.dev"
source: hosted
version: "2.2.5"
version: "2.3.0"
dbus:
dependency: transitive
description:
@ -365,10 +365,10 @@ packages:
dependency: "direct main"
description:
name: dio
sha256: "2644a9e0965a7aa3deb09cb8ce4081db4450c178f472818c8cd34216a3070d7b"
sha256: "0894a098594263fe1caaba3520e3016d8a855caeb010a882273189cca10f11e9"
url: "https://pub.dev"
source: hosted
version: "5.0.2"
version: "5.1.1"
dots_indicator:
dependency: "direct main"
description:
@ -548,10 +548,10 @@ packages:
dependency: "direct main"
description:
name: flutter_svg
sha256: "017cb37b3e9bee44cc800e35469f295d537484602f02ce6ceb5876236cc7e1fe"
sha256: "12006889e2987c549c4c1ec1a5ba4ec4b24d34d2469ee5f9476c926dcecff266"
url: "https://pub.dev"
source: hosted
version: "2.0.3"
version: "2.0.4"
flutter_test:
dependency: "direct dev"
description: flutter
@ -763,10 +763,10 @@ packages:
dependency: "direct main"
description:
name: image_cropper
sha256: "85324928ee8a8be35a529446435ca53067865b9353c8681983472eeec66d780f"
sha256: e08311fcf0cdba367715a5036aec8d8e9b3ab84479909dc2156dd5bf872edefb
url: "https://pub.dev"
source: hosted
version: "3.0.1"
version: "3.0.2"
image_cropper_for_web:
dependency: transitive
description:
@ -787,18 +787,18 @@ packages:
dependency: "direct main"
description:
name: image_picker
sha256: "64b21d9f0e065f9ab0e4dde458076226c97382cc0c6949144cb874c62bf8e9f8"
sha256: cb25f04595a88450970dbe727243ba8cd21b6f7e0d7d1fc5b789fc6f52e95494
url: "https://pub.dev"
source: hosted
version: "0.8.7"
version: "0.8.7+1"
image_picker_android:
dependency: transitive
description:
name: image_picker_android
sha256: "1f5a4b38eb742422d89c1a01d9db6077c3c9496f551bc9da74649e338a2b5101"
sha256: dfb5b0f28b8786fcc662b7ed42bfb4b82a6cbbd74da1958384b10d40bdf212a7
url: "https://pub.dev"
source: hosted
version: "0.8.6"
version: "0.8.6+6"
image_picker_for_web:
dependency: transitive
description:
@ -811,10 +811,10 @@ packages:
dependency: transitive
description:
name: image_picker_ios
sha256: "50e882fe0a06bf0c8f7f5bce78d30975f279213293afc9471dc35f05617c50ff"
sha256: d4cb8ab04f770dab9d04c7959e5f6d22e8c5280343d425f9344f93832cf58445
url: "https://pub.dev"
source: hosted
version: "0.8.7+1"
version: "0.8.7+2"
image_picker_platform_interface:
dependency: transitive
description:
@ -888,10 +888,10 @@ packages:
dependency: "direct main"
description:
name: logger
sha256: c40f9ef51e5bffb4ce69ad2d8c8aad7bd47ec109c090521109b63a4e2bc27191
sha256: db2ff852ed77090ba9f62d3611e4208a3d11dfa35991a81ae724c113fcb3e3f7
url: "https://pub.dev"
source: hosted
version: "1.2.2"
version: "1.3.0"
logging:
dependency: transitive
description:
@ -904,10 +904,10 @@ packages:
dependency: transitive
description:
name: markdown
sha256: b3c60dee8c2af50ad0e6e90cceba98e47718a6ee0a7a6772c77846a0cc21f78b
sha256: d95a9d12954aafc97f984ca29baaa7690ed4d9ec4140a23ad40580bcdb6c87f5
url: "https://pub.dev"
source: hosted
version: "7.0.1"
version: "7.0.2"
matcher:
dependency: transitive
description:
@ -1016,10 +1016,10 @@ packages:
dependency: "direct main"
description:
name: path_provider
sha256: "04890b994ee89bfa80bf3080bfec40d5a92c5c7a785ebb02c13084a099d2b6f9"
sha256: c7edf82217d4b2952b2129a61d3ad60f1075b9299e629e149a8d2e39c2e6aad4
url: "https://pub.dev"
source: hosted
version: "2.0.13"
version: "2.0.14"
path_provider_android:
dependency: transitive
description:
@ -1032,10 +1032,10 @@ packages:
dependency: transitive
description:
name: path_provider_foundation
sha256: "026b97a6c29da75181a37aae2eba9227f5fe13cb2838c6b975ce209328b8ab4e"
sha256: "818b2dc38b0f178e0ea3f7cf3b28146faab11375985d815942a68eee11c2d0f7"
url: "https://pub.dev"
source: hosted
version: "2.1.3"
version: "2.2.1"
path_provider_linux:
dependency: transitive
description:
@ -1064,10 +1064,10 @@ packages:
dependency: "direct main"
description:
name: pdf
sha256: "6cd57e8e6d052bd1078f18e0dc7cd6701fad6288231c1ce99d66ef5034d14e61"
sha256: "586d3debf5432e5377044754032cfa53ab45e9abf371d4865e9ad5019570e246"
url: "https://pub.dev"
source: hosted
version: "3.9.0"
version: "3.10.1"
permission_handler:
dependency: "direct main"
description:
@ -1088,10 +1088,10 @@ packages:
dependency: transitive
description:
name: permission_handler_apple
sha256: "9c370ef6a18b1c4b2f7f35944d644a56aa23576f23abee654cf73968de93f163"
sha256: ee96ac32f5a8e6f80756e25b25b9f8e535816c8e6665a96b6d70681f8c4f7e85
url: "https://pub.dev"
source: hosted
version: "9.0.7"
version: "9.0.8"
permission_handler_platform_interface:
dependency: transitive
description:
@ -1152,10 +1152,10 @@ packages:
dependency: "direct main"
description:
name: pointycastle
sha256: db7306cf0249f838d1a24af52b5a5887c5bf7f31d8bb4e827d071dc0939ad346
sha256: c3120a968135aead39699267f4c74bc9a08e4e909e86bc1b0af5bfd78691123c
url: "https://pub.dev"
source: hosted
version: "3.6.2"
version: "3.7.2"
polkawallet_sdk:
dependency: "direct main"
description:
@ -1177,10 +1177,10 @@ packages:
dependency: "direct main"
description:
name: printing
sha256: fe654363cd0114b50a0815b24e96957c7e9a60eb4e3b7ccfe71cf3f2b7114cb2
sha256: c5c19dd852e95aa140141df13fa304f079a20c4a14a66de5275a0f811240aeec
url: "https://pub.dev"
source: hosted
version: "5.10.1"
version: "5.10.3"
process:
dependency: transitive
description:
@ -1266,10 +1266,10 @@ packages:
dependency: "direct main"
description:
name: riverpod
sha256: "7da5a0febdb7fd0e4340f7b7023cb8f17cf7acd405b1e67a0e98bf574085bfa5"
sha256: b0fbf7927333c5c318f7e2c22c8b4fd2542ba294de0373e80ecdb34e0dcd8dc4
url: "https://pub.dev"
source: hosted
version: "2.3.1"
version: "2.3.2"
rxdart:
dependency: transitive
description:
@ -1314,58 +1314,58 @@ packages:
dependency: "direct main"
description:
name: shared_preferences
sha256: ee6257848f822b8481691f20c3e6d2bfee2e9eccb2a3d249907fcfb198c55b41
sha256: "78528fd87d0d08ffd3e69551173c026e8eacc7b7079c82eb6a77413957b7e394"
url: "https://pub.dev"
source: hosted
version: "2.0.18"
version: "2.0.20"
shared_preferences_android:
dependency: transitive
description:
name: shared_preferences_android
sha256: ad423a80fe7b4e48b50d6111b3ea1027af0e959e49d485712e134863d9c1c521
sha256: "8304d8a1f7d21a429f91dee552792249362b68a331ac5c3c1caf370f658873f6"
url: "https://pub.dev"
source: hosted
version: "2.0.17"
version: "2.1.0"
shared_preferences_foundation:
dependency: transitive
description:
name: shared_preferences_foundation
sha256: "1e755f8583229f185cfca61b1d80fb2344c9d660e1c69ede5450d8f478fa5310"
sha256: cf2a42fb20148502022861f71698db12d937c7459345a1bdaa88fc91a91b3603
url: "https://pub.dev"
source: hosted
version: "2.1.5"
version: "2.2.0"
shared_preferences_linux:
dependency: transitive
description:
name: shared_preferences_linux
sha256: "3a59ed10890a8409ad0faad7bb2957dab4b92b8fbe553257b05d30ed8af2c707"
sha256: "9d387433ca65717bbf1be88f4d5bb18f10508917a8fa2fb02e0fd0d7479a9afa"
url: "https://pub.dev"
source: hosted
version: "2.1.5"
version: "2.2.0"
shared_preferences_platform_interface:
dependency: transitive
description:
name: shared_preferences_platform_interface
sha256: "824bfd02713e37603b2bdade0842e47d56e7db32b1dcdd1cae533fb88e2913fc"
sha256: fb5cf25c0235df2d0640ac1b1174f6466bd311f621574997ac59018a6664548d
url: "https://pub.dev"
source: hosted
version: "2.1.1"
version: "2.2.0"
shared_preferences_web:
dependency: transitive
description:
name: shared_preferences_web
sha256: "0dc2633f215a3d4aa3184c9b2c5766f4711e4e5a6b256e62aafee41f89f1bfb8"
sha256: "74083203a8eae241e0de4a0d597dbedab3b8fef5563f33cf3c12d7e93c655ca5"
url: "https://pub.dev"
source: hosted
version: "2.0.6"
version: "2.1.0"
shared_preferences_windows:
dependency: transitive
description:
name: shared_preferences_windows
sha256: "71bcd669bb9cdb6b39f22c4a7728b6d49e934f6cba73157ffa5a54f1eed67436"
sha256: "5e588e2efef56916a3b229c3bfe81e6a525665a454519ca51dbcc4236a274173"
url: "https://pub.dev"
source: hosted
version: "2.1.5"
version: "2.2.0"
shelf:
dependency: transitive
description:
@ -1495,10 +1495,10 @@ packages:
dependency: "direct main"
description:
name: tutorial_coach_mark
sha256: "7cc5364d1df475cdcd759c1b97bde5092ba53e80c1db848684e601fde38c0337"
sha256: "669d4bd517d22e14671f3ddee0e7442d976ab71f94bb6eec6ad057ca3944fd73"
url: "https://pub.dev"
source: hosted
version: "1.2.6"
version: "1.2.8"
typed_data:
dependency: transitive
description:
@ -1535,18 +1535,18 @@ packages:
dependency: transitive
description:
name: url_launcher_android
sha256: "845530e5e05db5500c1a4c1446785d60cbd8f9bd45e21e7dd643a3273bb4bbd1"
sha256: dd729390aa936bf1bdf5cd1bc7468ff340263f80a2c4f569416507667de8e3c8
url: "https://pub.dev"
source: hosted
version: "6.0.25"
version: "6.0.26"
url_launcher_ios:
dependency: transitive
description:
name: url_launcher_ios
sha256: "7ab1e5b646623d6a2537aa59d5d039f90eebef75a7c25e105f6f75de1f7750c3"
sha256: "3dedc66ca3c0bef9e6a93c0999aee102556a450afcc1b7bcfeace7a424927d92"
url: "https://pub.dev"
source: hosted
version: "6.1.2"
version: "6.1.3"
url_launcher_linux:
dependency: transitive
description:
@ -1599,26 +1599,26 @@ packages:
dependency: transitive
description:
name: vector_graphics
sha256: "2f317d969a9f1eb59d1890643107da749698b7c08c4b0532fc95c8a7130d2803"
sha256: "4cf8e60dbe4d3a693d37dff11255a172594c0793da542183cbfe7fe978ae4aaa"
url: "https://pub.dev"
source: hosted
version: "1.1.3"
version: "1.1.4"
vector_graphics_codec:
dependency: transitive
description:
name: vector_graphics_codec
sha256: "13cccfda2dd61232a19dfb769b7a907e2ab23aabfebb9053c81e29c6c11b1766"
sha256: "278ad5f816f58b1967396d1f78ced470e3e58c9fe4b27010102c0a595c764468"
url: "https://pub.dev"
source: hosted
version: "1.1.3"
version: "1.1.4"
vector_graphics_compiler:
dependency: transitive
description:
name: vector_graphics_compiler
sha256: "524c9889a1327401124fe068840a8867f0d57987c1219a2a696ade629ec2bec3"
sha256: "0bf61ad56e6fd6688a2865d3ceaea396bc6a0a90ea0d7ad5049b1b76c09d6163"
url: "https://pub.dev"
source: hosted
version: "1.1.3"
version: "1.1.4"
vector_math:
dependency: transitive
description: