diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml
index 09e05324..65e0a6ee 100644
--- a/.github/workflows/publish.yml
+++ b/.github/workflows/publish.yml
@@ -1,7 +1,6 @@
name: Publish to pub.dev
on:
- workflow_dispatch:
push:
tags:
- 'v[0-9]+.[0-9]+.[0-9]+*'
@@ -12,7 +11,6 @@ jobs:
permissions:
id-token: write
runs-on: ubuntu-latest
-
steps:
# Checkout the repo
- uses: actions/checkout@v3
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 62ae1e1b..ea4fc829 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,8 +1,8 @@
-## 3.3.0-beta06
+## 3.3.0
- One-Click Auth + SIWE implementation
- Coinbase Wallet dependency update
-- Bug fixes
+- Bug fixes and improvements
## 3.2.2
diff --git a/example/android/app/src/main/AndroidManifest.xml b/example/android/app/src/main/AndroidManifest.xml
index 4c036309..6dc4758b 100644
--- a/example/android/app/src/main/AndroidManifest.xml
+++ b/example/android/app/src/main/AndroidManifest.xml
@@ -49,6 +49,7 @@
+
diff --git a/example/android/gradle.properties b/example/android/gradle.properties
index 3f04ec0e..8745d21a 100644
--- a/example/android/gradle.properties
+++ b/example/android/gradle.properties
@@ -2,4 +2,4 @@ org.gradle.jvmargs=-Xmx1536M
android.useAndroidX=true
android.enableJetifier=true
versionName=3.3.0
-versionCode=67
+versionCode=71
diff --git a/example/ios/Podfile.lock b/example/ios/Podfile.lock
index e75e6ff7..94bf2d7c 100644
--- a/example/ios/Podfile.lock
+++ b/example/ios/Podfile.lock
@@ -78,4 +78,4 @@ SPEC CHECKSUMS:
PODFILE CHECKSUM: a57f30d18f102dd3ce366b1d62a55ecbef2158e5
-COCOAPODS: 1.13.0
+COCOAPODS: 1.15.2
diff --git a/example/ios/Runner.xcodeproj/project.pbxproj b/example/ios/Runner.xcodeproj/project.pbxproj
index 58328b9b..340b0b88 100644
--- a/example/ios/Runner.xcodeproj/project.pbxproj
+++ b/example/ios/Runner.xcodeproj/project.pbxproj
@@ -470,7 +470,7 @@
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
CODE_SIGN_STYLE = Manual;
- CURRENT_PROJECT_VERSION = 67;
+ CURRENT_PROJECT_VERSION = 70;
DEVELOPMENT_TEAM = "";
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = W5R8AG9K22;
ENABLE_BITCODE = NO;
@@ -496,7 +496,7 @@
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_STYLE = Automatic;
- CURRENT_PROJECT_VERSION = 67;
+ CURRENT_PROJECT_VERSION = 70;
GENERATE_INFOPLIST_FILE = YES;
MARKETING_VERSION = 1.0;
PRODUCT_BUNDLE_IDENTIFIER = com.web3modal.flutterExample.RunnerTests;
@@ -514,7 +514,7 @@
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_STYLE = Automatic;
- CURRENT_PROJECT_VERSION = 67;
+ CURRENT_PROJECT_VERSION = 70;
GENERATE_INFOPLIST_FILE = YES;
MARKETING_VERSION = 1.0;
PRODUCT_BUNDLE_IDENTIFIER = com.web3modal.flutterExample.RunnerTests;
@@ -530,7 +530,7 @@
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_STYLE = Automatic;
- CURRENT_PROJECT_VERSION = 67;
+ CURRENT_PROJECT_VERSION = 70;
GENERATE_INFOPLIST_FILE = YES;
MARKETING_VERSION = 1.0;
PRODUCT_BUNDLE_IDENTIFIER = com.web3modal.flutterExample.RunnerTests;
@@ -655,7 +655,7 @@
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
CODE_SIGN_STYLE = Manual;
- CURRENT_PROJECT_VERSION = 67;
+ CURRENT_PROJECT_VERSION = 70;
DEVELOPMENT_TEAM = "";
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = W5R8AG9K22;
ENABLE_BITCODE = NO;
@@ -686,7 +686,7 @@
CODE_SIGN_IDENTITY = "Apple Development";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
CODE_SIGN_STYLE = Manual;
- CURRENT_PROJECT_VERSION = 67;
+ CURRENT_PROJECT_VERSION = 70;
DEVELOPMENT_TEAM = "";
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = W5R8AG9K22;
ENABLE_BITCODE = NO;
diff --git a/example/ios/Runner/Info.plist b/example/ios/Runner/Info.plist
index 1a2a788d..0050911f 100644
--- a/example/ios/Runner/Info.plist
+++ b/example/ios/Runner/Info.plist
@@ -36,7 +36,7 @@
CFBundleVersion
- 67
+ 70
ITSAppUsesNonExemptEncryption
LSApplicationQueriesSchemes
@@ -82,14 +82,13 @@
trust
thorwallet
krakenwallet
- cosmostation
coinwallet
mewwallet
metamask
avacus
- argent
walletapp
- wcflutterwallet
+ wcflutterwallet-production
+ wcflutterwallet-internal
rn-web3wallet
LSRequiresIPhoneOS
diff --git a/example/lib/home_page.dart b/example/lib/home_page.dart
index 29135810..49b5d843 100644
--- a/example/lib/home_page.dart
+++ b/example/lib/home_page.dart
@@ -54,7 +54,7 @@ class _MyHomePageState extends State {
],
redirect: Redirect(
native: 'web3modalflutter://',
- universal: 'https://walletconnect.com/appkit',
+ // universal: 'https://walletconnect.com/appkit',
),
);
@@ -74,7 +74,7 @@ class _MyHomePageState extends State {
getMessageParams: () async {
// Provide everything that is needed to construct the SIWE message
debugPrint('[SIWEConfig] getMessageParams()');
- final uri = Uri.parse(_pairingMetadata.redirect!.universal!);
+ final uri = Uri.parse(_pairingMetadata.redirect!.native!);
return SIWEMessageArgs(
domain: uri.authority,
uri: 'https://walletconnect.com/login',
@@ -93,7 +93,7 @@ class _MyHomePageState extends State {
try {
debugPrint('[SIWEConfig] verifyMessage()');
final payload = args.toJson();
- final uri = Uri.parse(_pairingMetadata.redirect!.universal!);
+ final uri = Uri.parse(_pairingMetadata.redirect!.native!);
final result = await _siweTestService.verifyMessage(
payload,
domain: uri.authority,
@@ -253,9 +253,9 @@ class _MyHomePageState extends State {
super.dispose();
}
- void _onModalConnect(ModalConnect? event) {
- debugPrint('[ExampleApp] _onModalConnect ${event?.toString()}');
+ void _onModalConnect(ModalConnect? event) async {
setState(() {});
+ debugPrint('[ExampleApp] _onModalConnect ${event?.session.toJson()}');
}
void _onModalUpdate(ModalConnect? event) {
@@ -304,8 +304,8 @@ class _MyHomePageState extends State {
}
void _onRelayClientError(EventArgs? event) {
- debugPrint('[ExampleApp] _onRelayClientError ${event?.toString()}');
setState(() {});
+ showTextToast(text: 'Relay disconnected', context: context);
}
void _onRelayClientDisconnect(EventArgs? event) {
@@ -364,13 +364,20 @@ class _MyHomePageState extends State {
},
);
},
+ floatingActionButton: CircleAvatar(
+ radius: 6.0,
+ backgroundColor: _initialized &&
+ _w3mService.web3App?.core.relayClient.isConnected == true
+ ? Colors.green
+ : Colors.red,
+ ),
);
}
Future _refreshData() async {
+ await _w3mService.reconnectRelay();
await _w3mService.loadAccountData();
setState(() {});
- return;
}
}
diff --git a/example/lib/widgets/debug_drawer.dart b/example/lib/widgets/debug_drawer.dart
index a2cf2708..a8cdaf62 100644
--- a/example/lib/widgets/debug_drawer.dart
+++ b/example/lib/widgets/debug_drawer.dart
@@ -249,7 +249,6 @@ class _DebugDrawerState extends State with WidgetsBindingObserver {
),
onTap: () {
if (_hasUpdates) {
- // TODO warn and crash!
showDialog(
context: context,
builder: (BuildContext context) {
diff --git a/example/lib/widgets/session_widget.dart b/example/lib/widgets/session_widget.dart
index f18a1493..30af5058 100644
--- a/example/lib/widgets/session_widget.dart
+++ b/example/lib/widgets/session_widget.dart
@@ -375,7 +375,7 @@ class SessionWidgetState extends State {
[
const SizedBox(height: StyleConstants.linear8),
Text(
- 'Supported chains:',
+ 'Session chains:',
style: Web3ModalTheme.getDataOf(context).textStyles.small600.copyWith(
color: Web3ModalTheme.colorsOf(context).foreground100,
),
diff --git a/example/pubspec.lock b/example/pubspec.lock
index b76fd0b0..5d2f9c40 100644
--- a/example/pubspec.lock
+++ b/example/pubspec.lock
@@ -29,10 +29,10 @@ packages:
dependency: transitive
description:
name: appcheck
- sha256: a9e5852e8c9d14342cfa3569fc464a1d49a49eac41e3d006f5825ce54663678f
+ sha256: "0214f27148610690a14c0d85b414274a740955a8c352a4c719ba01d9b0f50bde"
url: "https://pub.dev"
source: hosted
- version: "1.0.6"
+ version: "1.5.1"
archive:
dependency: transitive
description:
@@ -1097,10 +1097,10 @@ packages:
dependency: transitive
description:
name: walletconnect_flutter_v2
- sha256: "67582d34a3ceaf8253870d624112562e6e0af730bedc7954bd4df0099c277ee4"
+ sha256: "4a77de8d33f5d1f6b6ae07d4d2f7bf591ddb6c4cd671bf7493100798d92fa4d3"
url: "https://pub.dev"
source: hosted
- version: "2.3.0-beta04"
+ version: "2.3.0"
watcher:
dependency: transitive
description:
@@ -1131,7 +1131,7 @@ packages:
path: ".."
relative: true
source: path
- version: "3.3.0-beta06"
+ version: "3.3.0"
web_socket_channel:
dependency: transitive
description:
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index e75e6ff7..98b8a132 100644
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -8,9 +8,6 @@ PODS:
- CoinbaseWalletSDK/CrossPlatform (1.0.4):
- CoinbaseWalletSDK/Client
- Flutter (1.0.0)
- - FMDB (2.7.5):
- - FMDB/standard (= 2.7.5)
- - FMDB/standard (2.7.5)
- package_info_plus (0.4.5):
- Flutter
- path_provider_foundation (0.0.1):
@@ -21,7 +18,7 @@ PODS:
- FlutterMacOS
- sqflite (0.0.3):
- Flutter
- - FMDB (>= 2.7.5)
+ - FlutterMacOS
- url_launcher_ios (0.0.1):
- Flutter
- webview_flutter_wkwebview (0.0.1):
@@ -34,14 +31,13 @@ DEPENDENCIES:
- package_info_plus (from `.symlinks/plugins/package_info_plus/ios`)
- path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`)
- shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/darwin`)
- - sqflite (from `.symlinks/plugins/sqflite/ios`)
+ - sqflite (from `.symlinks/plugins/sqflite/darwin`)
- url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`)
- webview_flutter_wkwebview (from `.symlinks/plugins/webview_flutter_wkwebview/ios`)
SPEC REPOS:
trunk:
- CoinbaseWalletSDK
- - FMDB
EXTERNAL SOURCES:
appcheck:
@@ -57,7 +53,7 @@ EXTERNAL SOURCES:
shared_preferences_foundation:
:path: ".symlinks/plugins/shared_preferences_foundation/darwin"
sqflite:
- :path: ".symlinks/plugins/sqflite/ios"
+ :path: ".symlinks/plugins/sqflite/darwin"
url_launcher_ios:
:path: ".symlinks/plugins/url_launcher_ios/ios"
webview_flutter_wkwebview:
@@ -68,14 +64,13 @@ SPEC CHECKSUMS:
coinbase_wallet_sdk: 7ccd4e1a7940deba6ba9bd81beece999a2268c15
CoinbaseWalletSDK: ea1f37512bbc69ebe07416e3b29bf840f5cc3152
Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7
- FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a
package_info_plus: 58f0028419748fad15bf008b270aaa8e54380b1c
- path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943
- shared_preferences_foundation: 5b919d13b803cadd15ed2dc053125c68730e5126
- sqflite: 31f7eba61e3074736dff8807a9b41581e4f7f15a
- url_launcher_ios: bf5ce03e0e2088bad9cc378ea97fa0ed5b49673b
- webview_flutter_wkwebview: be0f0d33777f1bfd0c9fdcb594786704dbf65f36
+ path_provider_foundation: 2b6b4c569c0fb62ec74538f866245ac84301af46
+ shared_preferences_foundation: fcdcbc04712aee1108ac7fda236f363274528f78
+ sqflite: 673a0e54cc04b7d6dba8d24fb8095b31c3a99eec
+ url_launcher_ios: 5334b05cef931de560670eeae103fd3e431ac3fe
+ webview_flutter_wkwebview: 2a23822e9039b7b1bc52e5add778e5d89ad488d1
PODFILE CHECKSUM: a57f30d18f102dd3ce366b1d62a55ecbef2158e5
-COCOAPODS: 1.13.0
+COCOAPODS: 1.15.2
diff --git a/lib/pages/account_page.dart b/lib/pages/account_page.dart
index 8735738c..53d31be8 100644
--- a/lib/pages/account_page.dart
+++ b/lib/pages/account_page.dart
@@ -234,7 +234,7 @@ class _SelectNetworkButton extends StatelessWidget {
assetColor: themeColors.background100,
),
),
- title: service.selectedChain?.chainName ?? '',
+ title: service.selectedChain?.chainName ?? 'Unsupported network',
titleStyle: themeData.textStyles.paragraph500.copyWith(
color: themeColors.foreground100,
),
diff --git a/lib/services/blockchain_service/blockchain_service.dart b/lib/services/blockchain_service/blockchain_service.dart
index b46321f0..6ec93911 100644
--- a/lib/services/blockchain_service/blockchain_service.dart
+++ b/lib/services/blockchain_service/blockchain_service.dart
@@ -88,7 +88,12 @@ class BlockChainService implements IBlockChainService {
rethrow;
}
} else {
- throw Exception('Failed to get request $method');
+ final result = jsonDecode(response.body) as Map;
+ final reasons = result['reasons'] as List;
+ final reason = reasons.first as Map;
+ loggerService.instance.i(
+ '[$runtimeType] Failed to get request $method. ${reason['description']}',
+ );
}
}
@@ -104,7 +109,6 @@ class BlockChainService implements IBlockChainService {
throw jsonResponse.error!;
}
- // TODO to be implemented
// @override
// Future getBalance(
// String address,
diff --git a/lib/services/coinbase_service/coinbase_service.dart b/lib/services/coinbase_service/coinbase_service.dart
index 1322d4b2..d8fd38cb 100644
--- a/lib/services/coinbase_service/coinbase_service.dart
+++ b/lib/services/coinbase_service/coinbase_service.dart
@@ -99,19 +99,18 @@ class CoinbaseService implements ICoinbaseService {
final imageId = defaultWalletData.listing.imageId;
_iconImage = explorerService.instance.getWalletImageUrl(imageId);
- final universal = _metadata.redirect?.universal ?? '';
- final nativeLink = _metadata.redirect?.native ?? '';
final walletLink = _walletData.listing.mobileLink ?? '';
- if ((universal.isNotEmpty && nativeLink.isNotEmpty) ||
- walletLink.isNotEmpty) {
+ final redirect = _metadata.redirect;
+ final callback = redirect?.universal ?? redirect?.native ?? '';
+ if (callback.isNotEmpty || walletLink.isNotEmpty) {
try {
final config = Configuration(
ios: IOSConfiguration(
host: Uri.parse(walletLink),
- callback: Uri.parse(nativeLink),
+ callback: Uri.parse(callback),
),
android: AndroidConfiguration(
- domain: Uri.parse(universal),
+ domain: Uri.parse(callback),
),
);
await CoinbaseWalletSDK.shared.configure(config);
@@ -272,16 +271,16 @@ extension on SessionRequestParams {
Action toCoinbaseRequest(String? chainId) {
switch (method) {
case 'personal_sign':
- final address = _getAddressFromParamsList(params);
- final message = _getDataFromParamsList(params);
+ final address = _getAddressFromParamsList(method, params);
+ final message = _getDataFromParamsList(method, params);
return PersonalSign(address: address, message: message);
case 'eth_signTypedData_v3':
- final address = _getAddressFromParamsList(params);
- final jsonData = _getDataFromParamsList(params);
+ final address = _getAddressFromParamsList(method, params);
+ final jsonData = _getDataFromParamsList(method, params);
return SignTypedDataV3(address: address, typedDataJson: jsonData);
case 'eth_signTypedData_v4':
- final address = _getAddressFromParamsList(params);
- final jsonData = _getDataFromParamsList(params);
+ final address = _getAddressFromParamsList(method, params);
+ final jsonData = _getDataFromParamsList(method, params);
return SignTypedDataV4(address: address, typedDataJson: jsonData);
case 'eth_requestAccounts':
return RequestAccounts();
@@ -336,8 +335,8 @@ extension on SessionRequestParams {
throw W3MCoinbaseException('Unrecognized chainId $chainId', e, s);
}
case 'wallet_watchAsset':
- final address = _getAddressFromParamsList(params);
- final symbol = _getDataFromParamsList(params);
+ final address = _getAddressFromParamsList(method, params);
+ final symbol = _getDataFromParamsList(method, params);
return WatchAsset(
address: address,
symbol: symbol,
@@ -347,23 +346,40 @@ extension on SessionRequestParams {
}
}
- // TODO [CoinbaseService] this should be an utils on WCFV2
- String _getAddressFromParamsList(dynamic params) {
- return (params as List).firstWhere((p) {
- try {
- EthereumAddress.fromHex(p);
- return true;
- } catch (e) {
- return false;
+ String _getAddressFromParamsList(String method, dynamic params) {
+ try {
+ final paramsList = List.from((params as List));
+ if (method == 'personal_sign') {
+ // for `personal_sign` first value in params has to be always the message
+ paramsList.removeAt(0);
}
- });
+
+ return paramsList.firstWhere((p) {
+ try {
+ EthereumAddress.fromHex(p);
+ return true;
+ } catch (e) {
+ return false;
+ }
+ });
+ } catch (e) {
+ rethrow;
+ }
}
- dynamic _getDataFromParamsList(dynamic params) {
- return (params as List).firstWhere((p) {
- final address = _getAddressFromParamsList(params);
- return p != address;
- });
+ dynamic _getDataFromParamsList(String method, dynamic params) {
+ try {
+ final paramsList = List.from((params as List));
+ if (method == 'personal_sign') {
+ return paramsList.first;
+ }
+ return paramsList.firstWhere((p) {
+ final address = _getAddressFromParamsList(method, params);
+ return p != address;
+ });
+ } catch (e) {
+ rethrow;
+ }
}
Map _getTransactionFromParams(dynamic params) {
diff --git a/lib/services/explorer_service/explorer_service.dart b/lib/services/explorer_service/explorer_service.dart
index ed41d3ea..e1b1355b 100644
--- a/lib/services/explorer_service/explorer_service.dart
+++ b/lib/services/explorer_service/explorer_service.dart
@@ -107,16 +107,14 @@ class ExplorerService implements IExplorerService {
return;
}
- await _setInstalledWalletIdsParam();
- await _fetchInitialWallets();
-
- initialized.value = true;
- }
-
- Future _setInstalledWalletIdsParam() async {
+ // TODO ideally we should call this at every opening to be able to detect newly installed wallets.
final nativeData = await _fetchNativeAppData();
final installed = await nativeData.getInstalledApps();
_installedWalletIds = Set.from(installed.map((e) => e.id));
+
+ await _fetchInitialWallets();
+
+ initialized.value = true;
}
Future _fetchInitialWallets() async {
diff --git a/lib/services/explorer_service/models/wc_sample_wallets.dart b/lib/services/explorer_service/models/wc_sample_wallets.dart
index ddc99d9b..bd5662e8 100644
--- a/lib/services/explorer_service/models/wc_sample_wallets.dart
+++ b/lib/services/explorer_service/models/wc_sample_wallets.dart
@@ -1,4 +1,3 @@
-import 'package:web3modal_flutter/constants/url_constants.dart';
import 'package:web3modal_flutter/models/listing.dart';
import 'package:web3modal_flutter/services/explorer_service/models/native_app_data.dart';
import 'package:web3modal_flutter/web3modal_flutter.dart';
@@ -7,7 +6,7 @@ class WCSampleWallets {
static final nativeData = {
// Swift Wallet
'123456789012345678901234567890': {
- 'name': 'Wallet (Swift)',
+ 'name': 'SW Wallet',
'platform': ['ios'],
'ios': NativeAppData(
id: '123456789012345678901234567890',
@@ -20,20 +19,33 @@ class WCSampleWallets {
},
// Flutter Wallet
'123456789012345678901234567891': {
- 'name': 'Wallet (Flutter)',
+ 'name': 'FL Wallet',
'platform': ['ios', 'android'],
'ios': NativeAppData(
id: '123456789012345678901234567891',
- schema: 'wcflutterwallet://',
+ schema: 'wcflutterwallet-production://',
),
'android': NativeAppData(
id: '123456789012345678901234567891',
schema: 'com.walletconnect.flutterwallet',
),
},
+ // Flutter Wallet internal
+ '123456789012345678901234567895': {
+ 'name': 'FL Wallet (internal)',
+ 'platform': ['ios', 'android'],
+ 'ios': NativeAppData(
+ id: '123456789012345678901234567895',
+ schema: 'wcflutterwallet-internal://',
+ ),
+ 'android': NativeAppData(
+ id: '123456789012345678901234567895',
+ schema: 'com.walletconnect.flutterwallet.internal',
+ ),
+ },
// React Native Wallet
'123456789012345678901234567892': {
- 'name': 'Wallet (RN)',
+ 'name': 'RN Wallet (internal)',
'platform': ['ios', 'android'],
'ios': NativeAppData(
id: '123456789012345678901234567892',
@@ -44,9 +56,22 @@ class WCSampleWallets {
schema: 'com.walletconnect.web3wallet.rnsample',
),
},
+ // React Native Wallet internal
+ '1234567890123456789012345678922': {
+ 'name': 'RN Wallet (internal)',
+ 'platform': ['ios', 'android'],
+ 'ios': NativeAppData(
+ id: '1234567890123456789012345678922',
+ schema: 'rn-web3wallet://',
+ ),
+ 'android': NativeAppData(
+ id: '1234567890123456789012345678922',
+ schema: 'com.walletconnect.web3wallet.rnsample.internal',
+ ),
+ },
// Kotlin Wallet
'123456789012345678901234567893': {
- 'name': 'Wallet (Kotlin)',
+ 'name': 'KT Wallet',
'platform': ['android'],
'ios': NativeAppData(
id: '123456789012345678901234567893',
@@ -59,7 +84,7 @@ class WCSampleWallets {
},
// Kotlin Wallet Internal
'123456789012345678901234567894': {
- 'name': 'Wallet (Kotlin Internal)',
+ 'name': 'KT Wallet (Internal)',
'platform': ['android'],
'ios': NativeAppData(
id: '123456789012345678901234567894',
@@ -78,13 +103,15 @@ class WCSampleWallets {
final schema = (entry.value['ios']! as NativeAppData).schema;
final platforms = entry.value['platform']! as List;
final name = entry.value['name']! as String;
+ final icon =
+ 'https://thegraph.academy/wp-content/uploads/2021/04/WalletConnect-logo.png';
if (platforms.contains(platform)) {
return W3MWalletInfo(
listing: Listing.fromJson({
'id': entry.key,
'name': name,
'homepage': 'https://walletconnect.com',
- 'image_id': _walletImage,
+ 'image_id': icon,
'order': 10,
'mobile_link': schema,
'app_store':
@@ -99,7 +126,4 @@ class WCSampleWallets {
}).toList();
return wallets.whereType().toList();
}
-
- static const _walletImage =
- '${UrlConstants.docsUrl}/assets/images/web3walletLogo-54d3b546146931ceaf47a3500868a73a.png';
}
diff --git a/lib/services/magic_service/magic_service.dart b/lib/services/magic_service/magic_service.dart
index 94cfcf72..2acea3ee 100644
--- a/lib/services/magic_service/magic_service.dart
+++ b/lib/services/magic_service/magic_service.dart
@@ -579,6 +579,9 @@ class MagicService implements IMagicService {
''');
}
+ // sendW3Message({type:"@w3m-app/GET_SOCIAL_REDIRECT_URI",payload:{provider:"x"}});
+ // sendW3Message({type:"@w3m-app/CONNECT_SOCIAL",payload:{uri:"https://auth.magic.link/v1/oauth2/twitter/start?magic_api_key=pk_live_B080E9DC31E5875E&magic_challenge=9HbSG6KYL3r2b7LqzhD7-EcjoHLj-a7wt7npmSBR2fw&state=FfR0W7idPzp81HM2KE~zBPR7bbSQM97CL5zZZMHd_2_ZHZ~rLvnO63MO3fd6eB4LMymif9pQupdhVL11l4NsQk4D-zQDfPGB17PpiWjPobCemCZwP.HdkH4dQeSDgkiH&platform=web&redirect_uri=https%3A%2F%2Fsecure.walletconnect.com%2Fsdk%2Foauth%3FprojectId%3Dcad4956f31a5e40a00b62865b030c6f8"}});
+
void _onDebugConsoleReceived(JavaScriptConsoleMessage message) {
loggerService.instance.d('[$runtimeType] JS Console ${message.message}');
}
diff --git a/lib/services/siwe_service/models/w3m_siwe.g.dart b/lib/services/siwe_service/models/w3m_siwe.g.dart
index a3b33b11..ae9dee21 100644
--- a/lib/services/siwe_service/models/w3m_siwe.g.dart
+++ b/lib/services/siwe_service/models/w3m_siwe.g.dart
@@ -27,7 +27,7 @@ _$SIWECreateMessageArgsImpl _$$SIWECreateMessageArgsImplFromJson(
resources: (json['resources'] as List?)
?.map((e) => e as String)
.toList(),
- expiry: json['expiry'] as int?,
+ expiry: (json['expiry'] as num?)?.toInt(),
iat: json['iat'] as String?,
);
@@ -65,7 +65,7 @@ _$SIWEMessageArgsImpl _$$SIWEMessageArgsImplFromJson(
resources: (json['resources'] as List?)
?.map((e) => e as String)
.toList(),
- expiry: json['expiry'] as int?,
+ expiry: (json['expiry'] as num?)?.toInt(),
iat: json['iat'] as String?,
methods:
(json['methods'] as List?)?.map((e) => e as String).toList(),
diff --git a/lib/services/w3m_service/i_w3m_service.dart b/lib/services/w3m_service/i_w3m_service.dart
index c49d16bb..190985a2 100644
--- a/lib/services/w3m_service/i_w3m_service.dart
+++ b/lib/services/w3m_service/i_w3m_service.dart
@@ -11,6 +11,7 @@ enum W3MServiceStatus {
bool get isInitialized => this == initialized;
bool get isLoading => this == initializing;
+ bool get isError => this == error;
}
/// Either a [projectId] and [metadata] must be provided or an already created [web3App].
diff --git a/lib/services/w3m_service/models/w3m_session.dart b/lib/services/w3m_service/models/w3m_session.dart
index 917ce11e..897ee4bc 100644
--- a/lib/services/w3m_service/models/w3m_session.dart
+++ b/lib/services/w3m_service/models/w3m_session.dart
@@ -248,11 +248,7 @@ extension W3MSessionExtension on W3MSession {
namespaces: namespaces ?? {},
);
if (chainIds.isNotEmpty) {
- final chainId = (chainIds..sort()).first.split(':')[1];
- // If we have the chain in our presets, set it as the selected chain
- if (W3MChainPresets.chains.containsKey(chainId)) {
- return chainId;
- }
+ return (chainIds..sort()).first.split(':')[1];
}
}
if (sessionService.isCoinbase) {
diff --git a/lib/services/w3m_service/w3m_service.dart b/lib/services/w3m_service/w3m_service.dart
index ed0c456c..a4a963ab 100644
--- a/lib/services/w3m_service/w3m_service.dart
+++ b/lib/services/w3m_service/w3m_service.dart
@@ -65,9 +65,10 @@ class W3MService with ChangeNotifier implements IW3MService {
@override
W3MServiceStatus get status => _status;
- W3MChainInfo? _currentSelectedChain;
+ String? _currentSelectedChainId;
@override
- W3MChainInfo? get selectedChain => _currentSelectedChain;
+ W3MChainInfo? get selectedChain =>
+ W3MChainPresets.chains[_currentSelectedChainId];
W3MWalletInfo? _selectedWallet;
@override
@@ -116,7 +117,12 @@ class W3MService with ChangeNotifier implements IW3MService {
BuildContext? _context;
@override
- BuildContext? get modalContext => _context;
+ BuildContext? get modalContext {
+ if (_context?.mounted == true) {
+ return _context;
+ }
+ return null;
+ }
/// `context` is required if SIWEConfig is passed.
W3MService({
@@ -238,8 +244,7 @@ class W3MService with ChangeNotifier implements IW3MService {
final isMagic = _currentSession?.sessionService.isMagic == true;
final isCoinbase = _currentSession?.sessionService.isCoinbase == true;
if (isMagic || isCoinbase) {
- final chainId = _currentSession!.chainId;
- _currentSelectedChain = W3MChainPresets.chains[chainId];
+ _currentSelectedChainId = _currentSession!.chainId;
await _setSesionAndChainData(_currentSession!);
if (isMagic) {
await magicService.instance.init();
@@ -296,8 +301,9 @@ class W3MService with ChangeNotifier implements IW3MService {
onModalNetworkChange.subscribe(_onNetworkChainRequireSIWE);
- _serviceInitialized = true;
- _status = W3MServiceStatus.initialized;
+ final connected = _web3App.core.relayClient.isConnected;
+ _serviceInitialized = connected;
+ _status = connected ? W3MServiceStatus.initialized : W3MServiceStatus.error;
_logger.i('[$runtimeType] initialized');
_notify();
}
@@ -324,9 +330,8 @@ class W3MService with ChangeNotifier implements IW3MService {
Future _setSesionAndChainData(W3MSession w3mSession) async {
try {
await _storeSession(w3mSession);
- final chainId = _currentSelectedChain?.chainId ?? w3mSession.chainId;
- final chainInfo = W3MChainPresets.chains[chainId]!;
- await _setLocalEthChain(chainInfo, logEvent: false);
+ final chainId = _currentSelectedChainId ?? w3mSession.chainId;
+ await _setLocalEthChain(chainId, logEvent: false);
} catch (e, s) {
_logger.e(
'[$runtimeType] _setSesionAndChainData error $e',
@@ -362,12 +367,11 @@ class W3MService with ChangeNotifier implements IW3MService {
Future _selectChainFromStoredId() async {
if (_currentSession != null) {
- final chainId = _savedChainId('')!;
- if (chainId.isNotEmpty && W3MChainPresets.chains.containsKey(chainId)) {
+ final chainId = _savedChainId(null);
+ if (chainId != null && W3MChainPresets.chains.containsKey(chainId)) {
await selectChain(W3MChainPresets.chains[chainId]!, logEvent: false);
} else {
- final chainId = _currentSession!.chainId;
- await selectChain(W3MChainPresets.chains[chainId]!, logEvent: false);
+ _currentSelectedChainId = chainId;
}
}
}
@@ -380,7 +384,7 @@ class W3MService with ChangeNotifier implements IW3MService {
}) async {
_checkInitialized();
- if (chainInfo?.chainId == _currentSelectedChain?.chainId) {
+ if (chainInfo?.chainId == _currentSelectedChainId) {
return;
}
@@ -399,7 +403,7 @@ class W3MService with ChangeNotifier implements IW3MService {
// ));
} else {
final hasValidSession = _isConnected && _currentSession != null;
- if (switchChain && hasValidSession && _currentSelectedChain != null) {
+ if (switchChain && hasValidSession && _currentSelectedChainId != null) {
final approvedChains = _currentSession!.getApprovedChains() ?? [];
final hasChainAlready = approvedChains.contains(chainInfo.namespace);
if (!hasChainAlready) {
@@ -409,10 +413,10 @@ class W3MService with ChangeNotifier implements IW3MService {
launchConnectedWallet();
}
} else {
- await _setLocalEthChain(chainInfo, logEvent: logEvent);
+ await _setLocalEthChain(chainInfo.chainId, logEvent: logEvent);
}
} else {
- await _setLocalEthChain(chainInfo, logEvent: logEvent);
+ await _setLocalEthChain(chainInfo.chainId, logEvent: logEvent);
}
}
}
@@ -452,30 +456,29 @@ class W3MService with ChangeNotifier implements IW3MService {
return _currentSession!.getApprovedEvents();
}
- Future _setLocalEthChain(
- W3MChainInfo chainInfo, {
- bool logEvent = false,
- }) async {
- _logger.i('[$runtimeType] set local chain ${chainInfo.namespace}');
- _currentSelectedChain = chainInfo;
+ Future _setLocalEthChain(String chainId, {bool? logEvent}) async {
+ final caip2Chain = 'eip155:$_currentSelectedChainId';
+ _logger.i('[$runtimeType] set local chain $caip2Chain');
+ _currentSelectedChainId = chainId;
_notify();
// Store the chain for when we reload the app.
// If switchChain is true the store is on [_switchEthChain]
await storageService.instance.setString(
StringConstants.selectedChainId,
- _currentSelectedChain!.chainId,
+ _currentSelectedChainId!,
);
- if (_isConnected && logEvent) {
- final network = chainInfo.chainId;
- analyticsService.instance.sendEvent(SwitchNetworkEvent(network: network));
+ if (_isConnected && logEvent == true) {
+ analyticsService.instance.sendEvent(SwitchNetworkEvent(
+ network: _currentSelectedChainId!,
+ ));
}
- if (_lastChainEmitted != chainInfo.namespace && _isConnected) {
+ if (_lastChainEmitted != caip2Chain && _isConnected) {
if (_lastChainEmitted != null) {
onModalNetworkChange.broadcast(ModalNetworkChange(
- chainId: chainInfo.namespace,
+ chainId: caip2Chain,
));
}
- _lastChainEmitted = chainInfo.namespace;
+ _lastChainEmitted = caip2Chain;
}
loadAccountData();
}
@@ -520,6 +523,25 @@ class W3MService with ChangeNotifier implements IW3MService {
return _showModalView(startWidget: startWidget);
}
+ // if connected can open
+ // KeyConstants.approveTransactionPage
+ // KeyConstants.confirmEmailPage
+ // KeyConstants.selectNetworkPage
+
+ // otherwise
+ // KeyConstants.selectNetworkPage
+ // null
+ // Map> get _allowedWidgets => {
+ // true: [
+ // KeyConstants.approveTransactionPage,
+ // KeyConstants.confirmEmailPage,
+ // KeyConstants.selectNetworkPage,
+ // ],
+ // false: [
+ // KeyConstants.selectNetworkPage,
+ // ]
+ // };
+
Future _showModalView({
BuildContext? context,
Widget? startWidget,
@@ -535,7 +557,9 @@ class W3MService with ChangeNotifier implements IW3MService {
if (_context == null) {
loggerService.instance.e(
- 'No context was found. Try adding `context:` parameter in W3MService class');
+ 'No context was found. '
+ 'Try adding `context:` parameter in W3MService class',
+ );
return;
}
@@ -873,7 +897,9 @@ class W3MService with ChangeNotifier implements IW3MService {
@override
Future reconnectRelay() async {
- await _web3App.core.relayClient.connect();
+ if (!_web3App.core.relayClient.isConnected) {
+ await _web3App.core.relayClient.connect();
+ }
}
@override
@@ -957,8 +983,9 @@ class W3MService with ChangeNotifier implements IW3MService {
_disconnectOnClose = false;
final currentKey = widgetStack.instance.getCurrent().key;
if (currentKey == KeyConstants.approveSiwePageKey) {
- final chainId = _currentSelectedChain?.chainId ?? '1';
- analyticsService.instance.sendEvent(ClickCancelSiwe(network: chainId));
+ analyticsService.instance.sendEvent(ClickCancelSiwe(
+ network: _currentSelectedChainId ?? '',
+ ));
}
await disconnect();
selectWallet(null);
@@ -976,8 +1003,8 @@ class W3MService with ChangeNotifier implements IW3MService {
@override
void launchBlockExplorer() async {
- if (_currentSelectedChain?.blockExplorer != null) {
- final blockExplorer = _currentSelectedChain!.blockExplorer!.url;
+ if (selectedChain?.blockExplorer != null) {
+ final blockExplorer = selectedChain!.blockExplorer!.url;
final address = _currentSession?.address ?? '';
final explorerUrl = '$blockExplorer/address/$address';
await urlUtils.instance.launchUrl(
@@ -1216,7 +1243,7 @@ class W3MService with ChangeNotifier implements IW3MService {
@override
Future loadAccountData() async {
// If there is no selected chain or session, stop. No account to load in.
- if (_currentSelectedChain == null ||
+ if (_currentSelectedChainId == null ||
_currentSession == null ||
_currentSession?.address == null) {
return;
@@ -1226,9 +1253,9 @@ class W3MService with ChangeNotifier implements IW3MService {
_chainBalance = await blockchainService.instance.getRpcRequest(
method: 'eth_getBalance',
params: [_currentSession!.address!, 'latest'],
- chain: _currentSelectedChain!.namespace,
+ chain: 'eip155:$_currentSelectedChainId',
);
- final tokenName = _currentSelectedChain?.tokenName ?? '';
+ final tokenName = selectedChain?.tokenName ?? '';
balanceNotifier.value = '$_chainBalance $tokenName';
// Get the avatar, each chainId is just a number in string form.
@@ -1250,13 +1277,13 @@ class W3MService with ChangeNotifier implements IW3MService {
await selectChain(newChain);
return;
}
- final currentChainId = _currentSelectedChain!.namespace;
+ final currentChain = 'eip155:$_currentSelectedChainId';
final newChainId = newChain.namespace;
_logger.i('[$runtimeType] requesting switch to chain $newChainId');
try {
await request(
topic: _currentSession?.topic ?? '',
- chainId: currentChainId,
+ chainId: currentChain,
switchToChainId: newChainId,
request: SessionRequestParams(
method: MethodsConstants.walletSwitchEthChain,
@@ -1265,14 +1292,14 @@ class W3MService with ChangeNotifier implements IW3MService {
],
),
);
- _currentSelectedChain = newChain;
+ _currentSelectedChainId = newChain.chainId;
await _setSesionAndChainData(_currentSession!);
return;
} catch (e) {
_logger.i('[$runtimeType] requestSwitchToChain error $e');
// if request errors due to user rejection then set the previous chain
if (_isUserRejectedError(e)) {
- await _setLocalEthChain(_currentSelectedChain!);
+ await _setLocalEthChain(_currentSelectedChainId!);
throw JsonRpcError(code: 5002, message: 'User rejected methods.');
} else {
try {
@@ -1288,7 +1315,7 @@ class W3MService with ChangeNotifier implements IW3MService {
@override
Future requestAddChain(W3MChainInfo newChain) async {
final topic = _currentSession?.topic ?? '';
- final currentChainId = _currentSelectedChain!.namespace;
+ final currentChainId = 'eip155:$_currentSelectedChainId';
final newChainId = newChain.namespace;
_logger.i('[$runtimeType] requesting switch to add chain $newChainId');
try {
@@ -1301,12 +1328,12 @@ class W3MService with ChangeNotifier implements IW3MService {
params: [newChain.toJson()],
),
);
- _currentSelectedChain = newChain;
+ _currentSelectedChainId = newChain.chainId;
await _setSesionAndChainData(_currentSession!);
return;
} catch (e) {
_logger.i('[$runtimeType] requestAddChain error $e');
- await _setLocalEthChain(_currentSelectedChain!);
+ await _setLocalEthChain(_currentSelectedChainId!);
throw JsonRpcError(code: 5002, message: 'User rejected methods.');
}
}
@@ -1354,7 +1381,7 @@ class W3MService with ChangeNotifier implements IW3MService {
id: args?.id,
));
}
- _currentSelectedChain = null;
+ _currentSelectedChainId = null;
_isConnected = false;
_currentSession = null;
_lastChainEmitted = null;
@@ -1456,7 +1483,7 @@ class W3MService with ChangeNotifier implements IW3MService {
);
}
- String? _savedChainId(String defaultValue) {
+ String? _savedChainId(String? defaultValue) {
return storageService.instance.getString(
StringConstants.selectedChainId,
defaultValue: defaultValue,
@@ -1465,13 +1492,13 @@ class W3MService with ChangeNotifier implements IW3MService {
}
extension _W3MMagicExtension on W3MService {
+ // Login event should be treated like Connect event for regular wallets
Future _onMagicLoginEvent(MagicLoginEvent? args) async {
final debugString = jsonEncode(args?.data?.toJson());
_logger.i('[$runtimeType] _onMagicLoginEvent: $debugString');
if (args!.data != null) {
final newChainId = _savedChainId('${args.data!.chainId}')!;
- final newChain = W3MChainPresets.chains[newChainId]!;
- _currentSelectedChain = newChain;
+ _currentSelectedChainId = newChainId;
//
final magicData = args.data?.copytWith(chainId: int.tryParse(newChainId));
final session = W3MSession(magicData: magicData);
@@ -1509,8 +1536,7 @@ extension _W3MMagicExtension on W3MService {
final newEmail = args.email ?? _currentSession!.email;
final address = args.address ?? _currentSession!.address!;
final chainId = args.chainId?.toString() ?? _currentSession!.chainId;
- final newChain = W3MChainPresets.chains[chainId]!;
- _currentSelectedChain = newChain;
+ _currentSelectedChainId = chainId;
//
final session = _currentSession!.copyWith(
magicData: MagicData(
@@ -1525,6 +1551,7 @@ extension _W3MMagicExtension on W3MService {
),
);
await _setSesionAndChainData(session);
+ onModalUpdate.broadcast(ModalConnect(session));
} catch (e, s) {
_logger.d(
'[$runtimeType] _onMagicUpdateEvent: $e',
@@ -1569,8 +1596,7 @@ extension _W3MCoinbaseExtension on W3MService {
_logger.i('[$runtimeType] _onCoinbaseConnectEvent: $debugString');
if (args?.data != null) {
final newChainId = _savedChainId('${args!.data!.chainId}')!;
- final newChain = W3MChainPresets.chains[newChainId]!;
- _currentSelectedChain = newChain;
+ _currentSelectedChainId = newChainId;
//
final session = W3MSession(coinbaseData: args.data!);
await _setSesionAndChainData(session);
@@ -1590,18 +1616,17 @@ extension _W3MCoinbaseExtension on W3MService {
}
void _onCoinbaseSessionUpdateEvent(CoinbaseSessionEvent? args) async {
- _logger.d('[$runtimeType] _onCoinbaseSessionUpdateEvent $args');
+ _logger.i('[$runtimeType] _onCoinbaseSessionUpdateEvent $args');
if (args != null) {
try {
final address = args.address ?? _currentSession!.address!;
final chainId = args.chainId ?? _currentSession!.chainId;
- final newChain = W3MChainPresets.chains[chainId]!;
- _currentSelectedChain = newChain;
+ _currentSelectedChainId = chainId;
//
final session = _currentSession!.copyWith(
coinbaseData: CoinbaseData(
address: address,
- chainName: newChain.chainName,
+ chainName: W3MChainPresets.chains[chainId]?.chainName ?? '',
chainId: int.parse(chainId),
peer: coinbaseService.instance.metadata,
self: ConnectionMetadata(
@@ -1611,6 +1636,7 @@ extension _W3MCoinbaseExtension on W3MService {
),
);
await _setSesionAndChainData(session);
+ onModalUpdate.broadcast(ModalConnect(session));
} catch (e, s) {
_logger.d(
'[$runtimeType] _onCoinbaseSessionUpdateEvent: $e',
@@ -1636,11 +1662,6 @@ extension _W3MServiceExtension on W3MService {
if (args?.session != null) {
// IF 1-CA SUPPORTED WE SHOULD CALL SIWECONGIF METHODS HERE
final session = await _settleSession(args!.session!);
- final namespace = args.session!.namespaces[StringConstants.namespace]!;
- final chains = namespace.chains!.map((c) => c.split(':').last).toList()
- ..sort();
- String chainId = _currentSelectedChain?.chainId ?? chains.first;
- chainId = W3MChainPresets.chains[chainId]!.namespace;
//
try {
// Verify message with just the first cacao
@@ -1698,12 +1719,12 @@ extension _W3MServiceExtension on W3MService {
// HAS TO BE CALLED JUST ONCE ON CONNECTION
Future _settleSession(SessionData sessionData) async {
- if (_currentSelectedChain == null) {
+ if (_currentSelectedChainId == null) {
final chains = NamespaceUtils.getChainIdsFromNamespaces(
namespaces: sessionData.namespaces,
)..sort((a, b) => a.compareTo(b));
final chainId = chains.first.split(':').last.toString();
- _currentSelectedChain = W3MChainPresets.chains[chainId];
+ _currentSelectedChainId = chainId;
}
final session = W3MSession(sessionData: sessionData);
await _setSesionAndChainData(session);
@@ -1738,21 +1759,16 @@ extension _W3MServiceExtension on W3MService {
_logger.i('[$runtimeType] session event $args');
onSessionEventEvent.broadcast(args);
if (args?.name == EventsConstants.chainChanged) {
- final chainId = args?.data.toString() ?? '';
- if (W3MChainPresets.chains.containsKey(chainId)) {
- final newChain = W3MChainPresets.chains[chainId];
- await selectChain(newChain);
- } else {
- _currentSelectedChain = null;
- _notify();
- }
+ _currentSelectedChainId = args?.data?.toString();
} else if (args?.name == EventsConstants.accountsChanged) {
try {
+ // TODO implement account change
if (siweService.instance!.signOutOnAccountChange) {
await siweService.instance!.signOut();
}
} catch (_) {}
}
+ _notify();
}
void _onSessionUpdate(SessionUpdate? args) async {
@@ -1760,9 +1776,16 @@ extension _W3MServiceExtension on W3MService {
if (args != null) {
final wcSessions = _web3App.sessions.getAll();
if (wcSessions.isEmpty) return;
+ //
+ final session = _web3App.sessions.get(args.topic);
+ final updatedSession = W3MSession(
+ sessionData: session!.copyWith(
+ namespaces: args.namespaces,
+ ),
+ );
+ await _setSesionAndChainData(updatedSession);
onSessionUpdateEvent.broadcast(args);
- final session = W3MSession(sessionData: wcSessions.first);
- await _setSesionAndChainData(session);
+ onModalUpdate.broadcast(ModalConnect(updatedSession));
}
}
diff --git a/lib/utils/url/url_utils.dart b/lib/utils/url/url_utils.dart
index b478dea8..53c524fd 100644
--- a/lib/utils/url/url_utils.dart
+++ b/lib/utils/url/url_utils.dart
@@ -25,7 +25,7 @@ Future _launchUrlFunc(Uri url, {launcher.LaunchMode? mode}) async {
Future _androidAppCheck(String uri) async {
try {
- return await AppCheck.isAppEnabled(uri);
+ return await AppCheck().isAppEnabled(uri);
} catch (e) {
return false;
}
diff --git a/lib/version.dart b/lib/version.dart
index 04717b4a..f611ec25 100644
--- a/lib/version.dart
+++ b/lib/version.dart
@@ -1,2 +1,2 @@
// Generated code. Do not modify.
-const packageVersion = '3.3.0-beta06';
+const packageVersion = '3.3.0';
diff --git a/lib/widgets/w3m_account_button.dart b/lib/widgets/w3m_account_button.dart
index 7957ed31..f7f8ab81 100644
--- a/lib/widgets/w3m_account_button.dart
+++ b/lib/widgets/w3m_account_button.dart
@@ -108,7 +108,10 @@ class _W3MAccountButtonState extends State {
} else {
// TODO remove this once context parameter is enforced
// ignore: deprecated_member_use_from_same_package
- widget.service.openModal(widget.context ?? context, ConfirmEmailPage());
+ widget.service.openModal(
+ widget.context ?? context,
+ ConfirmEmailPage(),
+ );
}
}
}
diff --git a/pubspec.lock b/pubspec.lock
index 8a447eef..9deebcdc 100644
--- a/pubspec.lock
+++ b/pubspec.lock
@@ -5,10 +5,10 @@ packages:
dependency: transitive
description:
name: _fe_analyzer_shared
- sha256: ae92f5d747aee634b87f89d9946000c2de774be1d6ac3e58268224348cd0101a
+ sha256: "0b2f2bd91ba804e53a61d757b986f89f1f9eaed5b11e4b2f5a2468d86d6c9fc7"
url: "https://pub.dev"
source: hosted
- version: "61.0.0"
+ version: "67.0.0"
adaptive_number:
dependency: transitive
description:
@@ -21,26 +21,26 @@ packages:
dependency: transitive
description:
name: analyzer
- sha256: ea3d8652bda62982addfd92fdc2d0214e5f82e43325104990d4f4c4a2a313562
+ sha256: "37577842a27e4338429a1cbc32679d508836510b056f1eedf0c8d20e39c1383d"
url: "https://pub.dev"
source: hosted
- version: "5.13.0"
+ version: "6.4.1"
appcheck:
dependency: "direct main"
description:
name: appcheck
- sha256: a9e5852e8c9d14342cfa3569fc464a1d49a49eac41e3d006f5825ce54663678f
+ sha256: "0214f27148610690a14c0d85b414274a740955a8c352a4c719ba01d9b0f50bde"
url: "https://pub.dev"
source: hosted
- version: "1.0.6"
+ version: "1.5.1"
args:
dependency: transitive
description:
name: args
- sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596
+ sha256: "7cf60b9f0cc88203c5a190b4cd62a99feea42759a7fa695010eb5de1c0b2252a"
url: "https://pub.dev"
source: hosted
- version: "2.4.2"
+ version: "2.5.0"
async:
dependency: transitive
description:
@@ -93,34 +93,34 @@ packages:
dependency: transitive
description:
name: build_daemon
- sha256: "5f02d73eb2ba16483e693f80bee4f088563a820e47d1027d4cdfe62b5bb43e65"
+ sha256: "0343061a33da9c5810b2d6cee51945127d8f4c060b7fbdd9d54917f0a3feaaa1"
url: "https://pub.dev"
source: hosted
- version: "4.0.0"
+ version: "4.0.1"
build_resolvers:
dependency: transitive
description:
name: build_resolvers
- sha256: a7417cc44d9edb3f2c8760000270c99dba8c72ff66d0146772b8326565780745
+ sha256: "339086358431fa15d7eca8b6a36e5d783728cf025e559b834f4609a1fcfb7b0a"
url: "https://pub.dev"
source: hosted
- version: "2.3.1"
+ version: "2.4.2"
build_runner:
dependency: "direct dev"
description:
name: build_runner
- sha256: "67d591d602906ef9201caf93452495ad1812bea2074f04e25dbd7c133785821b"
+ sha256: "3ac61a79bfb6f6cc11f693591063a7f19a7af628dc52f141743edac5c16e8c22"
url: "https://pub.dev"
source: hosted
- version: "2.4.7"
+ version: "2.4.9"
build_runner_core:
dependency: transitive
description:
name: build_runner_core
- sha256: "6d6ee4276b1c5f34f21fdf39425202712d2be82019983d52f351c94aafbc2c41"
+ sha256: "4ae8ffe5ac758da294ecf1802f2aff01558d8b1b00616aa7538ea9a8a5d50799"
url: "https://pub.dev"
source: hosted
- version: "7.2.10"
+ version: "7.3.0"
build_version:
dependency: "direct dev"
description:
@@ -141,10 +141,10 @@ packages:
dependency: transitive
description:
name: built_value
- sha256: ff627b645b28fb8bdb69e645f910c2458fd6b65f6585c3a53e0626024897dedf
+ sha256: c7913a9737ee4007efedaffc968c049fd0f3d0e49109e778edc10de9426005cb
url: "https://pub.dev"
source: hosted
- version: "8.6.2"
+ version: "8.9.2"
cached_network_image:
dependency: "direct main"
description:
@@ -165,10 +165,10 @@ packages:
dependency: transitive
description:
name: cached_network_image_web
- sha256: "42a835caa27c220d1294311ac409a43361088625a4f23c820b006dd9bffb3316"
+ sha256: "205d6a9f1862de34b93184f22b9d2d94586b2f05c581d546695e3d8f6a805cd7"
url: "https://pub.dev"
source: hosted
- version: "1.1.1"
+ version: "1.2.0"
characters:
dependency: transitive
description:
@@ -197,10 +197,10 @@ packages:
dependency: transitive
description:
name: code_builder
- sha256: "315a598c7fbe77f22de1c9da7cfd6fd21816312f16ffa124453b4fc679e540f1"
+ sha256: f692079e25e7869c14132d39f223f8eec9830eb76131925143b2129c4bb01b37
url: "https://pub.dev"
source: hosted
- version: "4.6.0"
+ version: "4.10.0"
coinbase_wallet_sdk:
dependency: "direct main"
description:
@@ -237,34 +237,34 @@ packages:
dependency: transitive
description:
name: cryptography
- sha256: df156c5109286340817d21fa7b62f9140f17915077127dd70f8bd7a2a0997a35
+ sha256: d146b76d33d94548cf035233fbc2f4338c1242fa119013bead807d033fc4ae05
url: "https://pub.dev"
source: hosted
- version: "2.5.0"
+ version: "2.7.0"
cupertino_icons:
dependency: "direct main"
description:
name: cupertino_icons
- sha256: d57953e10f9f8327ce64a508a355f0b1ec902193f66288e8cb5070e7c47eeb2d
+ sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6
url: "https://pub.dev"
source: hosted
- version: "1.0.6"
+ version: "1.0.8"
custom_sliding_segmented_control:
dependency: "direct main"
description:
name: custom_sliding_segmented_control
- sha256: "05b73fa48d57218bfdf806bad68a859812b216cd81fe81c6cbefde89f39eb257"
+ sha256: "53c3e931c3ae1f696085d1ec70ac8e934da836595a9b7d9b88fdd0fcbf2a5574"
url: "https://pub.dev"
source: hosted
- version: "1.8.1"
+ version: "1.8.3"
dart_style:
dependency: transitive
description:
name: dart_style
- sha256: "1efa911ca7086affd35f463ca2fc1799584fb6aa89883cf0af8e3664d6a02d55"
+ sha256: "99e066ce75c89d6b29903d788a7bb9369cf754f7b24bf70bf4b6d6d6b26853b9"
url: "https://pub.dev"
source: hosted
- version: "2.3.2"
+ version: "2.3.6"
ed25519_edwards:
dependency: transitive
description:
@@ -309,18 +309,18 @@ packages:
dependency: transitive
description:
name: ffi
- sha256: "7bf0adc28a23d395f19f3f1eb21dd7cfd1dd9f8e1c50051c069122e6853bc878"
+ sha256: "493f37e7df1804778ff3a53bd691d8692ddf69702cf4c1c1096a2e41b4779e21"
url: "https://pub.dev"
source: hosted
- version: "2.1.0"
+ version: "2.1.2"
file:
dependency: transitive
description:
name: file
- sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d"
+ sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c"
url: "https://pub.dev"
source: hosted
- version: "6.1.4"
+ version: "7.0.0"
fixnum:
dependency: transitive
description:
@@ -338,10 +338,10 @@ packages:
dependency: transitive
description:
name: flutter_cache_manager
- sha256: "8207f27539deb83732fdda03e259349046a39a4c767269285f449ade355d54ba"
+ sha256: ceff65d74d907b1b772e22cf04daad60fb472461638977d9fae8b00a63e01e3d
url: "https://pub.dev"
source: hosted
- version: "3.3.1"
+ version: "3.3.3"
flutter_svg:
dependency: "direct main"
description:
@@ -364,26 +364,26 @@ packages:
dependency: "direct dev"
description:
name: freezed
- sha256: "57247f692f35f068cae297549a46a9a097100685c6780fe67177503eea5ed4e5"
+ sha256: a434911f643466d78462625df76fd9eb13e57348ff43fe1f77bbe909522c67a1
url: "https://pub.dev"
source: hosted
- version: "2.4.7"
+ version: "2.5.2"
freezed_annotation:
dependency: "direct main"
description:
name: freezed_annotation
- sha256: c3fd9336eb55a38cc1bbd79ab17573113a8deccd0ecbbf926cca3c62803b5c2d
+ sha256: c2e2d632dd9b8a2b7751117abcfc2b4888ecfe181bd9fca7170d9ef02e595fe2
url: "https://pub.dev"
source: hosted
- version: "2.4.1"
+ version: "2.4.4"
frontend_server_client:
dependency: transitive
description:
name: frontend_server_client
- sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612"
+ sha256: f64a0333a82f30b0cca061bc3d143813a486dc086b574bfb233b7c1372427694
url: "https://pub.dev"
source: hosted
- version: "3.2.0"
+ version: "4.0.0"
glob:
dependency: transitive
description:
@@ -404,10 +404,10 @@ packages:
dependency: "direct main"
description:
name: http
- sha256: "761a297c042deedc1ffbb156d6e2af13886bb305c2a343a4d972504cd67dd938"
+ sha256: b9c29a161230ee03d3ccf545097fccd9b87a5264228c5d348202e0f0c28f9010
url: "https://pub.dev"
source: hosted
- version: "1.2.1"
+ version: "1.2.2"
http_multi_server:
dependency: transitive
description:
@@ -444,10 +444,10 @@ packages:
dependency: "direct main"
description:
name: json_annotation
- sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467
+ sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1"
url: "https://pub.dev"
source: hosted
- version: "4.8.1"
+ version: "4.9.0"
json_rpc_2:
dependency: transitive
description:
@@ -460,10 +460,10 @@ packages:
dependency: "direct dev"
description:
name: json_serializable
- sha256: aa1f5a8912615733e0fdc7a02af03308933c93235bdc8d50d0b0c8a8ccb0b969
+ sha256: ea1432d167339ea9b5bb153f0571d0039607a873d6e04e0117af043f14a1fd4b
url: "https://pub.dev"
source: hosted
- version: "6.7.1"
+ version: "6.8.0"
leak_tracker:
dependency: transitive
description:
@@ -500,10 +500,10 @@ packages:
dependency: transitive
description:
name: logger
- sha256: "8c94b8c219e7e50194efc8771cd0e9f10807d8d3e219af473d89b06cc2ee4e04"
+ sha256: "697d067c60c20999686a0add96cf6aba723b3aa1f83ecf806a8097231529ec32"
url: "https://pub.dev"
source: hosted
- version: "2.2.0"
+ version: "2.4.0"
logging:
dependency: transitive
description:
@@ -540,18 +540,18 @@ packages:
dependency: transitive
description:
name: mime
- sha256: e4ff8e8564c03f255408decd16e7899da1733852a9110a58fe6d1b817684a63e
+ sha256: "2e123074287cc9fd6c09de8336dae606d1ddb88d9ac47358826db698c176a1f2"
url: "https://pub.dev"
source: hosted
- version: "1.0.4"
+ version: "1.0.5"
mockito:
dependency: "direct dev"
description:
name: mockito
- sha256: "4b693867cee1853c9d1d7ecc1871f27f39b2ef2c13c0d8d8507dfe5bebd8aaf1"
+ sha256: "6841eed20a7befac0ce07df8116c8b8233ed1f4486a7647c7fc5a02ae6163917"
url: "https://pub.dev"
source: hosted
- version: "5.4.3"
+ version: "5.4.4"
network_image_mock:
dependency: "direct dev"
description:
@@ -612,26 +612,26 @@ packages:
dependency: transitive
description:
name: path_provider
- sha256: a1aa8aaa2542a6bc57e381f132af822420216c80d4781f7aa085ca3229208aaa
+ sha256: c9e7d3a4cd1410877472158bee69963a4579f78b68c65a2b7d40d1a7a88bb161
url: "https://pub.dev"
source: hosted
- version: "2.1.1"
+ version: "2.1.3"
path_provider_android:
dependency: transitive
description:
name: path_provider_android
- sha256: "6b8b19bd80da4f11ce91b2d1fb931f3006911477cec227cce23d3253d80df3f1"
+ sha256: a248d8146ee5983446bf03ed5ea8f6533129a12b11f12057ad1b4a67a2b3b41d
url: "https://pub.dev"
source: hosted
- version: "2.2.0"
+ version: "2.2.4"
path_provider_foundation:
dependency: transitive
description:
name: path_provider_foundation
- sha256: "19314d595120f82aca0ba62787d58dde2cc6b5df7d2f0daf72489e38d1b57f2d"
+ sha256: f234384a3fdd67f989b4d54a5d73ca2a6c422fa55ae694381ae0f4375cd1ea16
url: "https://pub.dev"
source: hosted
- version: "2.3.1"
+ version: "2.4.0"
path_provider_linux:
dependency: transitive
description:
@@ -644,34 +644,34 @@ packages:
dependency: transitive
description:
name: path_provider_platform_interface
- sha256: "94b1e0dd80970c1ce43d5d4e050a9918fce4f4a775e6142424c30a29a363265c"
+ sha256: "88f5779f72ba699763fa3a3b06aa4bf6de76c8e5de842cf6f29e2e06476c2334"
url: "https://pub.dev"
source: hosted
- version: "2.1.1"
+ version: "2.1.2"
path_provider_windows:
dependency: transitive
description:
name: path_provider_windows
- sha256: "8bc9f22eee8690981c22aa7fc602f5c85b497a6fb2ceb35ee5a5e5ed85ad8170"
+ sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7
url: "https://pub.dev"
source: hosted
- version: "2.2.1"
+ version: "2.3.0"
petitparser:
dependency: transitive
description:
name: petitparser
- sha256: cb3798bef7fc021ac45b308f4b51208a152792445cce0448c9a4ba5879dd8750
+ sha256: c15605cd28af66339f8eb6fbe0e541bfe2d1b72d5825efc6598f3e0a31b9ad27
url: "https://pub.dev"
source: hosted
- version: "5.4.0"
+ version: "6.0.2"
platform:
dependency: transitive
description:
name: platform
- sha256: ae68c7bfcd7383af3629daafb32fb4e8681c7154428da4febcff06200585f102
+ sha256: "9b71283fc13df574056616011fb138fd3b793ea47cc509c189a6c3fa5f8a1a65"
url: "https://pub.dev"
source: hosted
- version: "3.1.2"
+ version: "3.1.5"
plugin_platform_interface:
dependency: transitive
description:
@@ -684,10 +684,10 @@ packages:
dependency: transitive
description:
name: pointycastle
- sha256: "43ac87de6e10afabc85c445745a7b799e04de84cebaa4fd7bf55a5e1e9604d29"
+ sha256: "4be0097fcf3fd3e8449e53730c631200ebc7b88016acecab2b0da2f0149222fe"
url: "https://pub.dev"
source: hosted
- version: "3.7.4"
+ version: "3.9.1"
pool:
dependency: transitive
description:
@@ -708,10 +708,10 @@ packages:
dependency: transitive
description:
name: pubspec_parse
- sha256: c63b2876e58e194e4b0828fcb080ad0e06d051cb607a6be51a9e084f47cb9367
+ sha256: c799b721d79eb6ee6fa56f00c04b472dcd44a30d258fac2174a6ec57302678f8
url: "https://pub.dev"
source: hosted
- version: "1.2.3"
+ version: "1.3.0"
qr:
dependency: transitive
description:
@@ -732,10 +732,10 @@ packages:
dependency: transitive
description:
name: rxdart
- sha256: "0c7c0cedd93788d996e33041ffecda924cc54389199cde4e6a34b440f50044cb"
+ sha256: "5c3004a4a8dbb94bd4bf5412a4def4acdaa12e12f269737a5751369e12d1a962"
url: "https://pub.dev"
source: hosted
- version: "0.27.7"
+ version: "0.28.0"
sec:
dependency: transitive
description:
@@ -748,58 +748,58 @@ packages:
dependency: transitive
description:
name: shared_preferences
- sha256: "81429e4481e1ccfb51ede496e916348668fd0921627779233bd24cc3ff6abd02"
+ sha256: d3bbe5553a986e83980916ded2f0b435ef2e1893dfaa29d5a7a790d0eca12180
url: "https://pub.dev"
source: hosted
- version: "2.2.2"
+ version: "2.2.3"
shared_preferences_android:
dependency: transitive
description:
name: shared_preferences_android
- sha256: "8568a389334b6e83415b6aae55378e158fbc2314e074983362d20c562780fb06"
+ sha256: "1ee8bf911094a1b592de7ab29add6f826a7331fb854273d55918693d5364a1f2"
url: "https://pub.dev"
source: hosted
- version: "2.2.1"
+ version: "2.2.2"
shared_preferences_foundation:
dependency: transitive
description:
name: shared_preferences_foundation
- sha256: "7bf53a9f2d007329ee6f3df7268fd498f8373602f943c975598bbb34649b62a7"
+ sha256: "0a8a893bf4fd1152f93fec03a415d11c27c74454d96e2318a7ac38dd18683ab7"
url: "https://pub.dev"
source: hosted
- version: "2.3.4"
+ version: "2.4.0"
shared_preferences_linux:
dependency: transitive
description:
name: shared_preferences_linux
- sha256: c2eb5bf57a2fe9ad6988121609e47d3e07bb3bdca5b6f8444e4cf302428a128a
+ sha256: "9f2cbcf46d4270ea8be39fa156d86379077c8a5228d9dfdb1164ae0bb93f1faa"
url: "https://pub.dev"
source: hosted
- version: "2.3.1"
+ version: "2.3.2"
shared_preferences_platform_interface:
dependency: transitive
description:
name: shared_preferences_platform_interface
- sha256: d4ec5fc9ebb2f2e056c617112aa75dcf92fc2e4faaf2ae999caa297473f75d8a
+ sha256: "034650b71e73629ca08a0bd789fd1d83cc63c2d1e405946f7cef7bc37432f93a"
url: "https://pub.dev"
source: hosted
- version: "2.3.1"
+ version: "2.4.0"
shared_preferences_web:
dependency: transitive
description:
name: shared_preferences_web
- sha256: d762709c2bbe80626ecc819143013cc820fa49ca5e363620ee20a8b15a3e3daf
+ sha256: "9aee1089b36bd2aafe06582b7d7817fd317ef05fc30e6ba14bff247d0933042a"
url: "https://pub.dev"
source: hosted
- version: "2.2.1"
+ version: "2.3.0"
shared_preferences_windows:
dependency: transitive
description:
name: shared_preferences_windows
- sha256: f763a101313bd3be87edffe0560037500967de9c394a714cd598d945517f694f
+ sha256: "841ad54f3c8381c480d0c9b508b89a34036f512482c407e6df7a9c4aa2ef8f59"
url: "https://pub.dev"
source: hosted
- version: "2.3.1"
+ version: "2.3.2"
shelf:
dependency: transitive
description:
@@ -833,10 +833,10 @@ packages:
dependency: transitive
description:
name: source_gen
- sha256: fc0da689e5302edb6177fdd964efcb7f58912f43c28c2047a808f5bfff643d16
+ sha256: "14658ba5f669685cd3d63701d01b31ea748310f7ab854e471962670abcf57832"
url: "https://pub.dev"
source: hosted
- version: "1.4.0"
+ version: "1.5.0"
source_helper:
dependency: transitive
description:
@@ -865,18 +865,18 @@ packages:
dependency: transitive
description:
name: sqflite
- sha256: "591f1602816e9c31377d5f008c2d9ef7b8aca8941c3f89cc5fd9d84da0c38a9a"
+ sha256: a43e5a27235518c03ca238e7b4732cf35eabe863a369ceba6cbefa537a66f16d
url: "https://pub.dev"
source: hosted
- version: "2.3.0"
+ version: "2.3.3+1"
sqflite_common:
dependency: transitive
description:
name: sqflite_common
- sha256: "1b92f368f44b0dee2425bb861cfa17b6f6cf3961f762ff6f941d20b33355660a"
+ sha256: "3da423ce7baf868be70e2c0976c28a1bb2f73644268b7ffa7d2e08eab71f16a4"
url: "https://pub.dev"
source: hosted
- version: "2.5.0"
+ version: "2.5.4"
stack_trace:
dependency: transitive
description:
@@ -913,10 +913,10 @@ packages:
dependency: transitive
description:
name: synchronized
- sha256: "5fcbd27688af6082f5abd611af56ee575342c30e87541d0245f7ff99faa02c60"
+ sha256: "539ef412b170d65ecdafd780f924e5be3f60032a1128df156adad6c5b373d558"
url: "https://pub.dev"
source: hosted
- version: "3.1.0"
+ version: "3.1.0+1"
term_glyph:
dependency: transitive
description:
@@ -953,74 +953,74 @@ packages:
dependency: "direct main"
description:
name: url_launcher
- sha256: "0ecc004c62fd3ed36a2ffcbe0dd9700aee63bd7532d0b642a488b1ec310f492e"
+ sha256: "21b704ce5fa560ea9f3b525b43601c678728ba46725bab9b01187b4831377ed3"
url: "https://pub.dev"
source: hosted
- version: "6.2.5"
+ version: "6.3.0"
url_launcher_android:
dependency: transitive
description:
name: url_launcher_android
- sha256: "31222ffb0063171b526d3e569079cf1f8b294075ba323443fdc690842bfd4def"
+ sha256: "17cd5e205ea615e2c6ea7a77323a11712dffa0720a8a90540db57a01347f9ad9"
url: "https://pub.dev"
source: hosted
- version: "6.2.0"
+ version: "6.3.2"
url_launcher_ios:
dependency: transitive
description:
name: url_launcher_ios
- sha256: bba3373219b7abb6b5e0d071b0fe66dfbe005d07517a68e38d4fc3638f35c6d3
+ sha256: e43b677296fadce447e987a2f519dcf5f6d1e527dc35d01ffab4fff5b8a7063e
url: "https://pub.dev"
source: hosted
- version: "6.2.1"
+ version: "6.3.1"
url_launcher_linux:
dependency: transitive
description:
name: url_launcher_linux
- sha256: "9f2d390e096fdbe1e6e6256f97851e51afc2d9c423d3432f1d6a02a8a9a8b9fd"
+ sha256: ab360eb661f8879369acac07b6bb3ff09d9471155357da8443fd5d3cf7363811
url: "https://pub.dev"
source: hosted
- version: "3.1.0"
+ version: "3.1.1"
url_launcher_macos:
dependency: transitive
description:
name: url_launcher_macos
- sha256: b7244901ea3cf489c5335bdacda07264a6e960b1c1b1a9f91e4bc371d9e68234
+ sha256: "9a1a42d5d2d95400c795b2914c36fdcb525870c752569438e4ebb09a2b5d90de"
url: "https://pub.dev"
source: hosted
- version: "3.1.0"
+ version: "3.2.0"
url_launcher_platform_interface:
dependency: transitive
description:
name: url_launcher_platform_interface
- sha256: "980e8d9af422f477be6948bdfb68df8433be71f5743a188968b0c1b887807e50"
+ sha256: "552f8a1e663569be95a8190206a38187b531910283c3e982193e4f2733f01029"
url: "https://pub.dev"
source: hosted
- version: "2.2.0"
+ version: "2.3.2"
url_launcher_web:
dependency: transitive
description:
name: url_launcher_web
- sha256: "3692a459204a33e04bc94f5fb91158faf4f2c8903281ddd82915adecdb1a901d"
+ sha256: "8d9e750d8c9338601e709cd0885f95825086bd8b642547f26bda435aade95d8a"
url: "https://pub.dev"
source: hosted
- version: "2.3.0"
+ version: "2.3.1"
url_launcher_windows:
dependency: transitive
description:
name: url_launcher_windows
- sha256: "7754a1ad30ee896b265f8d14078b0513a4dba28d358eabb9d5f339886f4a1adc"
+ sha256: "49c10f879746271804767cb45551ec5592cdab00ee105c06dddde1a98f73b185"
url: "https://pub.dev"
source: hosted
- version: "3.1.0"
+ version: "3.1.2"
uuid:
dependency: "direct main"
description:
name: uuid
- sha256: cd210a09f7c18cbe5a02511718e0334de6559871052c90a90c0cca46a4aa81c8
+ sha256: "83d37c7ad7aaf9aa8e275490669535c8080377cfa7a7004c24dfac53afffaa90"
url: "https://pub.dev"
source: hosted
- version: "4.3.3"
+ version: "4.4.2"
vector_graphics:
dependency: transitive
description:
@@ -1073,10 +1073,10 @@ packages:
dependency: "direct main"
description:
name: walletconnect_flutter_v2
- sha256: "67582d34a3ceaf8253870d624112562e6e0af730bedc7954bd4df0099c277ee4"
+ sha256: "4a77de8d33f5d1f6b6ae07d4d2f7bf591ddb6c4cd671bf7493100798d92fa4d3"
url: "https://pub.dev"
source: hosted
- version: "2.3.0-beta04"
+ version: "2.3.0"
watcher:
dependency: transitive
description:
@@ -1105,26 +1105,26 @@ packages:
dependency: transitive
description:
name: web_socket_channel
- sha256: "1d8e795e2a8b3730c41b8a98a2dff2e0fb57ae6f0764a1c46ec5915387d257b2"
+ sha256: "58c6666b342a38816b2e7e50ed0f1e261959630becd4c879c4f26bfa14aa5a42"
url: "https://pub.dev"
source: hosted
- version: "2.4.4"
+ version: "2.4.5"
webview_flutter:
dependency: "direct main"
description:
name: webview_flutter
- sha256: "25e1b6e839e8cbfbd708abc6f85ed09d1727e24e08e08c6b8590d7c65c9a8932"
+ sha256: "6869c8786d179f929144b4a1f86e09ac0eddfe475984951ea6c634774c16b522"
url: "https://pub.dev"
source: hosted
- version: "4.7.0"
+ version: "4.8.0"
webview_flutter_android:
dependency: "direct main"
description:
name: webview_flutter_android
- sha256: f038ee2fae73b509dde1bc9d2c5a50ca92054282de17631a9a3d515883740934
+ sha256: "0d21cfc3bfdd2e30ab2ebeced66512b91134b39e72e97b43db2d47dda1c4e53a"
url: "https://pub.dev"
source: hosted
- version: "3.16.0"
+ version: "3.16.3"
webview_flutter_platform_interface:
dependency: transitive
description:
@@ -1137,18 +1137,18 @@ packages:
dependency: "direct main"
description:
name: webview_flutter_wkwebview
- sha256: f12f8d8a99784b863e8b85e4a9a5e3cf1839d6803d2c0c3e0533a8f3c5a992a7
+ sha256: "9c62cc46fa4f2d41e10ab81014c1de470a6c6f26051a2de32111b2ee55287feb"
url: "https://pub.dev"
source: hosted
- version: "3.13.0"
+ version: "3.14.0"
win32:
dependency: transitive
description:
name: win32
- sha256: "9e82a402b7f3d518fb9c02d0e9ae45952df31b9bf34d77baf19da2de03fc2aaa"
+ sha256: "0eaf06e3446824099858367950a813472af675116bf63f008a4c2a75ae13e9cb"
url: "https://pub.dev"
source: hosted
- version: "5.0.7"
+ version: "5.5.0"
x25519:
dependency: transitive
description:
@@ -1161,18 +1161,18 @@ packages:
dependency: transitive
description:
name: xdg_directories
- sha256: "589ada45ba9e39405c198fe34eb0f607cddb2108527e658136120892beac46d2"
+ sha256: faea9dee56b520b55a566385b84f2e8de55e7496104adada9962e0bd11bcff1d
url: "https://pub.dev"
source: hosted
- version: "1.0.3"
+ version: "1.0.4"
xml:
dependency: transitive
description:
name: xml
- sha256: "5bc72e1e45e941d825fd7468b9b4cc3b9327942649aeb6fc5cdbf135f0a86e84"
+ sha256: b015a8ad1c488f66851d762d3090a21c600e479dc75e68328c52774040cf9226
url: "https://pub.dev"
source: hosted
- version: "6.3.0"
+ version: "6.5.0"
yaml:
dependency: transitive
description:
diff --git a/pubspec.yaml b/pubspec.yaml
index 20e1454f..69b685d6 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,13 +1,13 @@
name: web3modal_flutter
description: "WalletConnect Web3Modal: Simple, intuitive wallet login. With this drop-in UI SDK, enable any wallet's users to seamlessly log in to your app and enjoy a unified experience"
-version: 3.3.0-beta06
+version: 3.3.0
repository: https://github.com/WalletConnect/Web3ModalFlutter
environment:
sdk: '>=2.19.0 <4.0.0'
dependencies:
- appcheck: ^1.0.6
+ appcheck: ^1.5.1
cached_network_image: ^3.3.1
coinbase_wallet_sdk: ^1.0.9
collection: ^1.17.2
@@ -24,7 +24,7 @@ dependencies:
shimmer: ^3.0.0
url_launcher: ^6.2.5
uuid: ^4.3.3
- walletconnect_flutter_v2: ^2.3.0-beta04
+ walletconnect_flutter_v2: ^2.3.0
webview_flutter: ^4.7.0
webview_flutter_android: ^3.16.0
webview_flutter_wkwebview: ^3.13.0
diff --git a/test/mock_classes.mocks.dart b/test/mock_classes.mocks.dart
index 20569bfd..b1028d95 100644
--- a/test/mock_classes.mocks.dart
+++ b/test/mock_classes.mocks.dart
@@ -1,4 +1,4 @@
-// Mocks generated by Mockito 5.4.3 from annotations
+// Mocks generated by Mockito 5.4.4 from annotations
// in web3modal_flutter/test/mock_classes.dart.
// Do not manually edit this file.
@@ -296,6 +296,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
Invocation.getter(#initialized),
),
) as _i2.ValueNotifier);
+
@override
set initialized(_i2.ValueNotifier? _initialized) => super.noSuchMethod(
Invocation.setter(
@@ -304,6 +305,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
),
returnValueForMissingStub: null,
);
+
@override
_i2.ValueNotifier get totalListings => (super.noSuchMethod(
Invocation.getter(#totalListings),
@@ -312,6 +314,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
Invocation.getter(#totalListings),
),
) as _i2.ValueNotifier);
+
@override
set totalListings(_i2.ValueNotifier? _totalListings) =>
super.noSuchMethod(
@@ -321,6 +324,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
),
returnValueForMissingStub: null,
);
+
@override
_i2.ValueNotifier> get listings =>
(super.noSuchMethod(
@@ -330,6 +334,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
Invocation.getter(#listings),
),
) as _i2.ValueNotifier>);
+
@override
set listings(_i2.ValueNotifier>? _listings) =>
super.noSuchMethod(
@@ -339,6 +344,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
),
returnValueForMissingStub: null,
);
+
@override
_i2.ValueNotifier get isSearching => (super.noSuchMethod(
Invocation.getter(#isSearching),
@@ -347,6 +353,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
Invocation.getter(#isSearching),
),
) as _i2.ValueNotifier);
+
@override
set isSearching(_i2.ValueNotifier? _isSearching) => super.noSuchMethod(
Invocation.setter(
@@ -355,6 +362,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
),
returnValueForMissingStub: null,
);
+
@override
set includedWalletIds(Set? _includedWalletIds) => super.noSuchMethod(
Invocation.setter(
@@ -363,6 +371,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
),
returnValueForMissingStub: null,
);
+
@override
set excludedWalletIds(Set? _excludedWalletIds) => super.noSuchMethod(
Invocation.setter(
@@ -371,6 +380,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
),
returnValueForMissingStub: null,
);
+
@override
set featuredWalletIds(Set? _featuredWalletIds) => super.noSuchMethod(
Invocation.setter(
@@ -379,6 +389,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
),
returnValueForMissingStub: null,
);
+
@override
String get projectId => (super.noSuchMethod(
Invocation.getter(#projectId),
@@ -387,6 +398,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
Invocation.getter(#projectId),
),
) as String);
+
@override
String get searchValue => (super.noSuchMethod(
Invocation.getter(#searchValue),
@@ -395,11 +407,13 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
Invocation.getter(#searchValue),
),
) as String);
+
@override
bool get canPaginate => (super.noSuchMethod(
Invocation.getter(#canPaginate),
returnValue: false,
) as bool);
+
@override
_i14.Future init() => (super.noSuchMethod(
Invocation.method(
@@ -409,6 +423,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future paginate() => (super.noSuchMethod(
Invocation.method(
@@ -418,6 +433,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future storeConnectedWallet(_i3.W3MWalletInfo? walletInfo) =>
(super.noSuchMethod(
@@ -428,6 +444,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future storeRecentWalletId(String? walletId) =>
(super.noSuchMethod(
@@ -438,6 +455,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
void search({String? query}) => super.noSuchMethod(
Invocation.method(
@@ -447,6 +465,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
),
returnValueForMissingStub: null,
);
+
@override
_i14.Future<_i3.W3MWalletInfo?> getCoinbaseWalletObject() =>
(super.noSuchMethod(
@@ -456,6 +475,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
),
returnValue: _i14.Future<_i3.W3MWalletInfo?>.value(),
) as _i14.Future<_i3.W3MWalletInfo?>);
+
@override
String getWalletImageUrl(String? imageId) => (super.noSuchMethod(
Invocation.method(
@@ -470,6 +490,7 @@ class MockExplorerService extends _i1.Mock implements _i12.ExplorerService {
),
),
) as String);
+
@override
String getAssetImageUrl(String? imageId) => (super.noSuchMethod(
Invocation.method(
@@ -502,6 +523,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
Invocation.getter(#balanceNotifier),
),
) as _i2.ValueNotifier);
+
@override
_i3.Event<_i3.ModalConnect> get onModalConnect => (super.noSuchMethod(
Invocation.getter(#onModalConnect),
@@ -510,6 +532,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
Invocation.getter(#onModalConnect),
),
) as _i3.Event<_i3.ModalConnect>);
+
@override
_i3.Event<_i3.ModalConnect> get onModalUpdate => (super.noSuchMethod(
Invocation.getter(#onModalUpdate),
@@ -518,6 +541,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
Invocation.getter(#onModalUpdate),
),
) as _i3.Event<_i3.ModalConnect>);
+
@override
_i3.Event<_i3.ModalNetworkChange> get onModalNetworkChange =>
(super.noSuchMethod(
@@ -527,6 +551,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
Invocation.getter(#onModalNetworkChange),
),
) as _i3.Event<_i3.ModalNetworkChange>);
+
@override
_i3.Event<_i3.ModalDisconnect> get onModalDisconnect => (super.noSuchMethod(
Invocation.getter(#onModalDisconnect),
@@ -535,6 +560,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
Invocation.getter(#onModalDisconnect),
),
) as _i3.Event<_i3.ModalDisconnect>);
+
@override
_i3.Event<_i3.ModalError> get onModalError => (super.noSuchMethod(
Invocation.getter(#onModalError),
@@ -543,6 +569,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
Invocation.getter(#onModalError),
),
) as _i3.Event<_i3.ModalError>);
+
@override
_i3.Event<_i3.SessionExpire> get onSessionExpireEvent => (super.noSuchMethod(
Invocation.getter(#onSessionExpireEvent),
@@ -551,6 +578,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
Invocation.getter(#onSessionExpireEvent),
),
) as _i3.Event<_i3.SessionExpire>);
+
@override
_i3.Event<_i3.SessionUpdate> get onSessionUpdateEvent => (super.noSuchMethod(
Invocation.getter(#onSessionUpdateEvent),
@@ -559,6 +587,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
Invocation.getter(#onSessionUpdateEvent),
),
) as _i3.Event<_i3.SessionUpdate>);
+
@override
_i3.Event<_i3.SessionEvent> get onSessionEventEvent => (super.noSuchMethod(
Invocation.getter(#onSessionEventEvent),
@@ -567,16 +596,19 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
Invocation.getter(#onSessionEventEvent),
),
) as _i3.Event<_i3.SessionEvent>);
+
@override
_i15.W3MServiceStatus get status => (super.noSuchMethod(
Invocation.getter(#status),
returnValue: _i15.W3MServiceStatus.idle,
) as _i15.W3MServiceStatus);
+
@override
bool get hasNamespaces => (super.noSuchMethod(
Invocation.getter(#hasNamespaces),
returnValue: false,
) as bool);
+
@override
String get chainBalance => (super.noSuchMethod(
Invocation.getter(#chainBalance),
@@ -585,21 +617,25 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
Invocation.getter(#chainBalance),
),
) as String);
+
@override
bool get isOpen => (super.noSuchMethod(
Invocation.getter(#isOpen),
returnValue: false,
) as bool);
+
@override
bool get isConnected => (super.noSuchMethod(
Invocation.getter(#isConnected),
returnValue: false,
) as bool);
+
@override
bool get hasListeners => (super.noSuchMethod(
Invocation.getter(#hasListeners),
returnValue: false,
) as bool);
+
@override
_i14.Future init() => (super.noSuchMethod(
Invocation.method(
@@ -609,6 +645,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future selectChain(
_i3.W3MChainInfo? chainInfo, {
@@ -627,6 +664,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future openNetworks(_i11.BuildContext? context) =>
(super.noSuchMethod(
@@ -637,6 +675,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future openNetworksView() => (super.noSuchMethod(
Invocation.method(
@@ -646,6 +685,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future openModal(
_i11.BuildContext? context, [
@@ -662,6 +702,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future openModalView([_i11.Widget? startWidget]) =>
(super.noSuchMethod(
@@ -672,6 +713,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future expirePreviousInactivePairings() => (super.noSuchMethod(
Invocation.method(
@@ -681,6 +723,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future connectSelectedWallet({bool? inBrowser = false}) =>
(super.noSuchMethod(
@@ -692,6 +735,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future buildConnectionUri() => (super.noSuchMethod(
Invocation.method(
@@ -701,6 +745,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
void launchConnectedWallet() => super.noSuchMethod(
Invocation.method(
@@ -709,6 +754,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
),
returnValueForMissingStub: null,
);
+
@override
_i14.Future reconnectRelay() => (super.noSuchMethod(
Invocation.method(
@@ -718,6 +764,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future disconnect({bool? disconnectAllSessions = true}) =>
(super.noSuchMethod(
@@ -729,6 +776,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
void closeModal({bool? disconnectSession = false}) => super.noSuchMethod(
Invocation.method(
@@ -738,6 +786,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
),
returnValueForMissingStub: null,
);
+
@override
void selectWallet(_i3.W3MWalletInfo? walletInfo) => super.noSuchMethod(
Invocation.method(
@@ -746,6 +795,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
),
returnValueForMissingStub: null,
);
+
@override
void launchBlockExplorer() => super.noSuchMethod(
Invocation.method(
@@ -754,6 +804,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
),
returnValueForMissingStub: null,
);
+
@override
_i14.Future> requestReadContract({
required _i3.DeployedContract? deployedContract,
@@ -772,6 +823,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
),
returnValue: _i14.Future>.value([]),
) as _i14.Future>);
+
@override
_i14.Future requestWriteContract({
required String? topic,
@@ -798,6 +850,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
),
returnValue: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future request({
required String? topic,
@@ -818,6 +871,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
),
returnValue: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future dispose() => (super.noSuchMethod(
Invocation.method(
@@ -827,6 +881,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future loadAccountData() => (super.noSuchMethod(
Invocation.method(
@@ -836,6 +891,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future requestSwitchToChain(_i3.W3MChainInfo? newChain) =>
(super.noSuchMethod(
@@ -846,6 +902,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future requestAddChain(_i3.W3MChainInfo? newChain) =>
(super.noSuchMethod(
@@ -856,6 +913,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
void addListener(_i16.VoidCallback? listener) => super.noSuchMethod(
Invocation.method(
@@ -864,6 +922,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
),
returnValueForMissingStub: null,
);
+
@override
void removeListener(_i16.VoidCallback? listener) => super.noSuchMethod(
Invocation.method(
@@ -872,6 +931,7 @@ class MockW3MService extends _i1.Mock implements _i3.W3MService {
),
returnValueForMissingStub: null,
);
+
@override
void notifyListeners() => super.noSuchMethod(
Invocation.method(
@@ -895,6 +955,7 @@ class MockUrlUtils extends _i1.Mock implements _i17.UrlUtils {
Invocation.getter(#androidAppCheck),
returnValue: (String uri) => _i14.Future.value(false),
) as _i14.Future Function(String));
+
@override
_i14.Future Function(
Uri, {
@@ -910,11 +971,13 @@ class MockUrlUtils extends _i1.Mock implements _i17.UrlUtils {
Uri, {
_i18.LaunchMode? mode,
}));
+
@override
_i14.Future Function(Uri) get canLaunchUrlFunc => (super.noSuchMethod(
Invocation.getter(#canLaunchUrlFunc),
returnValue: (Uri url) => _i14.Future.value(false),
) as _i14.Future Function(Uri));
+
@override
_i14.Future isInstalled(
String? uri, {
@@ -928,6 +991,7 @@ class MockUrlUtils extends _i1.Mock implements _i17.UrlUtils {
),
returnValue: _i14.Future.value(false),
) as _i14.Future);
+
@override
_i14.Future launchUrl(
Uri? url, {
@@ -941,6 +1005,7 @@ class MockUrlUtils extends _i1.Mock implements _i17.UrlUtils {
),
returnValue: _i14.Future.value(false),
) as _i14.Future);
+
@override
_i14.Future openRedirect(
_i19.WalletRedirect? redirect, {
@@ -976,6 +1041,7 @@ class MockPlatformUtils extends _i1.Mock implements _i21.PlatformUtils {
),
returnValue: _i20.PlatformExact.iOS,
) as _i20.PlatformExact);
+
@override
_i20.PlatformType getPlatformType() => (super.noSuchMethod(
Invocation.method(
@@ -984,6 +1050,7 @@ class MockPlatformUtils extends _i1.Mock implements _i21.PlatformUtils {
),
returnValue: _i20.PlatformType.mobile,
) as _i20.PlatformType);
+
@override
bool canDetectInstalledApps() => (super.noSuchMethod(
Invocation.method(
@@ -992,6 +1059,7 @@ class MockPlatformUtils extends _i1.Mock implements _i21.PlatformUtils {
),
returnValue: false,
) as bool);
+
@override
bool isBottomSheet() => (super.noSuchMethod(
Invocation.method(
@@ -1000,6 +1068,7 @@ class MockPlatformUtils extends _i1.Mock implements _i21.PlatformUtils {
),
returnValue: false,
) as bool);
+
@override
bool isLongBottomSheet(_i11.Orientation? orientation) => (super.noSuchMethod(
Invocation.method(
@@ -1008,6 +1077,7 @@ class MockPlatformUtils extends _i1.Mock implements _i21.PlatformUtils {
),
returnValue: false,
) as bool);
+
@override
bool isMobileWidth(double? width) => (super.noSuchMethod(
Invocation.method(
@@ -1016,6 +1086,7 @@ class MockPlatformUtils extends _i1.Mock implements _i21.PlatformUtils {
),
returnValue: false,
) as bool);
+
@override
bool isTablet(_i11.BuildContext? context) => (super.noSuchMethod(
Invocation.method(
@@ -1039,6 +1110,7 @@ class MockToastUtils extends _i1.Mock implements _i22.ToastUtils {
Invocation.getter(#toasts),
returnValue: _i14.Stream<_i23.ToastMessage?>.empty(),
) as _i14.Stream<_i23.ToastMessage?>);
+
@override
void show(_i23.ToastMessage? message) => super.noSuchMethod(
Invocation.method(
@@ -1047,6 +1119,7 @@ class MockToastUtils extends _i1.Mock implements _i22.ToastUtils {
),
returnValueForMissingStub: null,
);
+
@override
void clear() => super.noSuchMethod(
Invocation.method(
@@ -1073,11 +1146,13 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#protocol),
),
) as String);
+
@override
int get version => (super.noSuchMethod(
Invocation.getter(#version),
returnValue: 0,
) as int);
+
@override
_i3.ICore get core => (super.noSuchMethod(
Invocation.getter(#core),
@@ -1086,6 +1161,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#core),
),
) as _i3.ICore);
+
@override
_i3.PairingMetadata get metadata => (super.noSuchMethod(
Invocation.getter(#metadata),
@@ -1094,6 +1170,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#metadata),
),
) as _i3.PairingMetadata);
+
@override
_i3.ISignEngine get signEngine => (super.noSuchMethod(
Invocation.getter(#signEngine),
@@ -1102,6 +1179,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#signEngine),
),
) as _i3.ISignEngine);
+
@override
set signEngine(_i3.ISignEngine? _signEngine) => super.noSuchMethod(
Invocation.setter(
@@ -1110,6 +1188,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
),
returnValueForMissingStub: null,
);
+
@override
_i3.IAuthEngine get authEngine => (super.noSuchMethod(
Invocation.getter(#authEngine),
@@ -1118,6 +1197,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#authEngine),
),
) as _i3.IAuthEngine);
+
@override
set authEngine(_i3.IAuthEngine? _authEngine) => super.noSuchMethod(
Invocation.setter(
@@ -1126,6 +1206,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
),
returnValueForMissingStub: null,
);
+
@override
_i3.Event<_i3.SessionConnect> get onSessionConnect => (super.noSuchMethod(
Invocation.getter(#onSessionConnect),
@@ -1134,6 +1215,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#onSessionConnect),
),
) as _i3.Event<_i3.SessionConnect>);
+
@override
_i3.Event<_i3.SessionEvent> get onSessionEvent => (super.noSuchMethod(
Invocation.getter(#onSessionEvent),
@@ -1142,6 +1224,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#onSessionEvent),
),
) as _i3.Event<_i3.SessionEvent>);
+
@override
_i3.Event<_i3.SessionExpire> get onSessionExpire => (super.noSuchMethod(
Invocation.getter(#onSessionExpire),
@@ -1150,6 +1233,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#onSessionExpire),
),
) as _i3.Event<_i3.SessionExpire>);
+
@override
_i3.Event<_i3.SessionProposalEvent> get onProposalExpire =>
(super.noSuchMethod(
@@ -1159,6 +1243,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#onProposalExpire),
),
) as _i3.Event<_i3.SessionProposalEvent>);
+
@override
_i3.Event<_i3.SessionExtend> get onSessionExtend => (super.noSuchMethod(
Invocation.getter(#onSessionExtend),
@@ -1167,6 +1252,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#onSessionExtend),
),
) as _i3.Event<_i3.SessionExtend>);
+
@override
_i3.Event<_i3.SessionPing> get onSessionPing => (super.noSuchMethod(
Invocation.getter(#onSessionPing),
@@ -1175,6 +1261,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#onSessionPing),
),
) as _i3.Event<_i3.SessionPing>);
+
@override
_i3.Event<_i3.SessionUpdate> get onSessionUpdate => (super.noSuchMethod(
Invocation.getter(#onSessionUpdate),
@@ -1183,6 +1270,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#onSessionUpdate),
),
) as _i3.Event<_i3.SessionUpdate>);
+
@override
_i3.Event<_i3.SessionDelete> get onSessionDelete => (super.noSuchMethod(
Invocation.getter(#onSessionDelete),
@@ -1191,6 +1279,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#onSessionDelete),
),
) as _i3.Event<_i3.SessionDelete>);
+
@override
_i4.IGenericStore<_i3.ProposalData> get proposals => (super.noSuchMethod(
Invocation.getter(#proposals),
@@ -1199,6 +1288,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#proposals),
),
) as _i4.IGenericStore<_i3.ProposalData>);
+
@override
_i5.ISessions get sessions => (super.noSuchMethod(
Invocation.getter(#sessions),
@@ -1207,6 +1297,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#sessions),
),
) as _i5.ISessions);
+
@override
_i4.IGenericStore<_i3.SessionRequest> get pendingRequests =>
(super.noSuchMethod(
@@ -1216,6 +1307,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#pendingRequests),
),
) as _i4.IGenericStore<_i3.SessionRequest>);
+
@override
_i3.IPairingStore get pairings => (super.noSuchMethod(
Invocation.getter(#pairings),
@@ -1224,6 +1316,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#pairings),
),
) as _i3.IPairingStore);
+
@override
_i3.Event<_i3.AuthResponse> get onAuthResponse => (super.noSuchMethod(
Invocation.getter(#onAuthResponse),
@@ -1232,6 +1325,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#onAuthResponse),
),
) as _i3.Event<_i3.AuthResponse>);
+
@override
_i4.IGenericStore<_i3.AuthPublicKey> get authKeys => (super.noSuchMethod(
Invocation.getter(#authKeys),
@@ -1240,6 +1334,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#authKeys),
),
) as _i4.IGenericStore<_i3.AuthPublicKey>);
+
@override
_i4.IGenericStore get pairingTopics => (super.noSuchMethod(
Invocation.getter(#pairingTopics),
@@ -1248,6 +1343,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#pairingTopics),
),
) as _i4.IGenericStore);
+
@override
_i4.IGenericStore<_i3.StoredCacao> get completeRequests =>
(super.noSuchMethod(
@@ -1257,6 +1353,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#completeRequests),
),
) as _i4.IGenericStore<_i3.StoredCacao>);
+
@override
_i3.Event<_i3.SessionAuthResponse> get onSessionAuthResponse =>
(super.noSuchMethod(
@@ -1266,6 +1363,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
Invocation.getter(#onSessionAuthResponse),
),
) as _i3.Event<_i3.SessionAuthResponse>);
+
@override
_i14.Future init() => (super.noSuchMethod(
Invocation.method(
@@ -1275,6 +1373,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future<_i3.ConnectResponse> connect({
Map? requiredNamespaces,
@@ -1320,6 +1419,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
),
)),
) as _i14.Future<_i3.ConnectResponse>);
+
@override
_i14.Future request({
required String? topic,
@@ -1338,6 +1438,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
),
returnValue: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future> requestReadContract({
required _i3.DeployedContract? deployedContract,
@@ -1360,6 +1461,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
),
returnValue: _i14.Future>.value([]),
) as _i14.Future>);
+
@override
_i14.Future requestWriteContract({
required String? topic,
@@ -1388,6 +1490,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
),
returnValue: _i14.Future.value(),
) as _i14.Future);
+
@override
void registerEventHandler({
required String? chainId,
@@ -1409,6 +1512,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
),
returnValueForMissingStub: null,
);
+
@override
_i14.Future ping({required String? topic}) => (super.noSuchMethod(
Invocation.method(
@@ -1419,6 +1523,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future disconnectSession({
required String? topic,
@@ -1436,6 +1541,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
Map getActiveSessions() => (super.noSuchMethod(
Invocation.method(
@@ -1444,6 +1550,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
),
returnValue: {},
) as Map);
+
@override
Map getSessionsForPairing(
{required String? pairingTopic}) =>
@@ -1455,6 +1562,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
),
returnValue: {},
) as Map);
+
@override
Map getPendingSessionProposals() =>
(super.noSuchMethod(
@@ -1464,6 +1572,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
),
returnValue: {},
) as Map);
+
@override
_i14.Future<_i3.AuthRequestResponse> requestAuth({
required _i3.AuthRequestParams? params,
@@ -1500,6 +1609,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
),
)),
) as _i14.Future<_i3.AuthRequestResponse>);
+
@override
Map getCompletedRequestsForPairing(
{required String? pairingTopic}) =>
@@ -1511,6 +1621,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
),
returnValue: {},
) as Map);
+
@override
_i14.Future<_i3.SessionAuthRequestResponse> authenticate({
required _i3.SessionAuthRequestParams? params,
@@ -1543,6 +1654,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
),
)),
) as _i14.Future<_i3.SessionAuthRequestResponse>);
+
@override
_i14.Future validateSignedCacao({
required _i3.Cacao? cacao,
@@ -1559,6 +1671,7 @@ class MockWeb3App extends _i1.Mock implements _i3.Web3App {
),
returnValue: _i14.Future.value(false),
) as _i14.Future);
+
@override
String formatAuthMessage({
required String? iss,
@@ -1603,6 +1716,7 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
Invocation.getter(#context),
),
) as String);
+
@override
String get version => (super.noSuchMethod(
Invocation.getter(#version),
@@ -1611,6 +1725,7 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
Invocation.getter(#version),
),
) as String);
+
@override
_i6.IStore get storage => (super.noSuchMethod(
Invocation.getter(#storage),
@@ -1619,6 +1734,7 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
Invocation.getter(#storage),
),
) as _i6.IStore);
+
@override
_i3.Event<_i3.StoreCreateEvent<_i3.SessionData>> get onCreate =>
(super.noSuchMethod(
@@ -1628,6 +1744,7 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
Invocation.getter(#onCreate),
),
) as _i3.Event<_i3.StoreCreateEvent<_i3.SessionData>>);
+
@override
_i3.Event<_i3.StoreUpdateEvent<_i3.SessionData>> get onUpdate =>
(super.noSuchMethod(
@@ -1637,6 +1754,7 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
Invocation.getter(#onUpdate),
),
) as _i3.Event<_i3.StoreUpdateEvent<_i3.SessionData>>);
+
@override
_i3.Event<_i3.StoreDeleteEvent<_i3.SessionData>> get onDelete =>
(super.noSuchMethod(
@@ -1646,6 +1764,7 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
Invocation.getter(#onDelete),
),
) as _i3.Event<_i3.StoreDeleteEvent<_i3.SessionData>>);
+
@override
_i3.Event<_i3.StoreSyncEvent> get onSync => (super.noSuchMethod(
Invocation.getter(#onSync),
@@ -1654,11 +1773,13 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
Invocation.getter(#onSync),
),
) as _i3.Event<_i3.StoreSyncEvent>);
+
@override
Map get data => (super.noSuchMethod(
Invocation.getter(#data),
returnValue: {},
) as Map);
+
@override
set data(Map? _data) => super.noSuchMethod(
Invocation.setter(
@@ -1667,6 +1788,7 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
),
returnValueForMissingStub: null,
);
+
@override
_i3.SessionData Function(dynamic) get fromJson => (super.noSuchMethod(
Invocation.getter(#fromJson),
@@ -1675,6 +1797,7 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
Invocation.getter(#fromJson),
),
) as _i3.SessionData Function(dynamic));
+
@override
String get storageKey => (super.noSuchMethod(
Invocation.getter(#storageKey),
@@ -1683,6 +1806,7 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
Invocation.getter(#storageKey),
),
) as String);
+
@override
_i14.Future update(
String? topic, {
@@ -1701,6 +1825,7 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future init() => (super.noSuchMethod(
Invocation.method(
@@ -1710,6 +1835,7 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
bool has(String? key) => (super.noSuchMethod(
Invocation.method(
@@ -1718,11 +1844,13 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
),
returnValue: false,
) as bool);
+
@override
_i3.SessionData? get(String? key) => (super.noSuchMethod(Invocation.method(
#get,
[key],
)) as _i3.SessionData?);
+
@override
List<_i3.SessionData> getAll() => (super.noSuchMethod(
Invocation.method(
@@ -1731,6 +1859,7 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
),
returnValue: <_i3.SessionData>[],
) as List<_i3.SessionData>);
+
@override
_i14.Future set(
String? key,
@@ -1747,6 +1876,7 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future delete(String? key) => (super.noSuchMethod(
Invocation.method(
@@ -1756,6 +1886,7 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future persist() => (super.noSuchMethod(
Invocation.method(
@@ -1765,6 +1896,7 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future restore() => (super.noSuchMethod(
Invocation.method(
@@ -1774,6 +1906,7 @@ class MockSessions extends _i1.Mock implements _i3.Sessions {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
void checkInitialized() => super.noSuchMethod(
Invocation.method(
@@ -1800,6 +1933,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
Invocation.getter(#onRelayClientConnect),
),
) as _i3.Event<_i3.EventArgs>);
+
@override
_i3.Event<_i3.EventArgs> get onRelayClientDisconnect => (super.noSuchMethod(
Invocation.getter(#onRelayClientDisconnect),
@@ -1808,6 +1942,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
Invocation.getter(#onRelayClientDisconnect),
),
) as _i3.Event<_i3.EventArgs>);
+
@override
_i3.Event<_i3.ErrorEvent> get onRelayClientError => (super.noSuchMethod(
Invocation.getter(#onRelayClientError),
@@ -1816,6 +1951,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
Invocation.getter(#onRelayClientError),
),
) as _i3.Event<_i3.ErrorEvent>);
+
@override
_i3.Event<_i3.MessageEvent> get onRelayClientMessage => (super.noSuchMethod(
Invocation.getter(#onRelayClientMessage),
@@ -1824,6 +1960,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
Invocation.getter(#onRelayClientMessage),
),
) as _i3.Event<_i3.MessageEvent>);
+
@override
_i3.Event<_i3.SubscriptionEvent> get onSubscriptionCreated =>
(super.noSuchMethod(
@@ -1833,6 +1970,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
Invocation.getter(#onSubscriptionCreated),
),
) as _i3.Event<_i3.SubscriptionEvent>);
+
@override
_i3.Event<_i3.SubscriptionDeletionEvent> get onSubscriptionDeleted =>
(super.noSuchMethod(
@@ -1842,6 +1980,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
Invocation.getter(#onSubscriptionDeleted),
),
) as _i3.Event<_i3.SubscriptionDeletionEvent>);
+
@override
_i3.Event<_i3.EventArgs> get onSubscriptionResubscribed =>
(super.noSuchMethod(
@@ -1851,6 +1990,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
Invocation.getter(#onSubscriptionResubscribed),
),
) as _i3.Event<_i3.EventArgs>);
+
@override
_i3.Event<_i3.EventArgs> get onSubscriptionSync => (super.noSuchMethod(
Invocation.getter(#onSubscriptionSync),
@@ -1859,6 +1999,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
Invocation.getter(#onSubscriptionSync),
),
) as _i3.Event<_i3.EventArgs>);
+
@override
set jsonRPC(_i25.Peer? _jsonRPC) => super.noSuchMethod(
Invocation.setter(
@@ -1867,12 +2008,14 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
),
returnValueForMissingStub: null,
);
+
@override
Map> get pendingSubscriptions =>
(super.noSuchMethod(
Invocation.getter(#pendingSubscriptions),
returnValue: >{},
) as Map>);
+
@override
set pendingSubscriptions(
Map>? _pendingSubscriptions) =>
@@ -1883,6 +2026,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
),
returnValueForMissingStub: null,
);
+
@override
_i7.IMessageTracker get messageTracker => (super.noSuchMethod(
Invocation.getter(#messageTracker),
@@ -1891,6 +2035,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
Invocation.getter(#messageTracker),
),
) as _i7.IMessageTracker);
+
@override
set messageTracker(_i7.IMessageTracker? _messageTracker) =>
super.noSuchMethod(
@@ -1900,6 +2045,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
),
returnValueForMissingStub: null,
);
+
@override
_i4.IGenericStore get topicMap => (super.noSuchMethod(
Invocation.getter(#topicMap),
@@ -1908,6 +2054,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
Invocation.getter(#topicMap),
),
) as _i4.IGenericStore);
+
@override
set topicMap(_i4.IGenericStore? _topicMap) => super.noSuchMethod(
Invocation.setter(
@@ -1916,6 +2063,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
),
returnValueForMissingStub: null,
);
+
@override
_i8.IWebSocketHandler get socketHandler => (super.noSuchMethod(
Invocation.getter(#socketHandler),
@@ -1924,6 +2072,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
Invocation.getter(#socketHandler),
),
) as _i8.IWebSocketHandler);
+
@override
_i3.ICore get core => (super.noSuchMethod(
Invocation.getter(#core),
@@ -1932,6 +2081,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
Invocation.getter(#core),
),
) as _i3.ICore);
+
@override
set core(_i3.ICore? _core) => super.noSuchMethod(
Invocation.setter(
@@ -1940,11 +2090,13 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
),
returnValueForMissingStub: null,
);
+
@override
bool get isConnected => (super.noSuchMethod(
Invocation.getter(#isConnected),
returnValue: false,
) as bool);
+
@override
_i14.Future init() => (super.noSuchMethod(
Invocation.method(
@@ -1954,6 +2106,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future publish({
required String? topic,
@@ -1975,6 +2128,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future subscribe({required String? topic}) =>
(super.noSuchMethod(
@@ -1992,6 +2146,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
),
)),
) as _i14.Future);
+
@override
_i14.Future unsubscribe({required String? topic}) =>
(super.noSuchMethod(
@@ -2003,6 +2158,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future connect({String? relayUrl}) => (super.noSuchMethod(
Invocation.method(
@@ -2013,6 +2169,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future disconnect() => (super.noSuchMethod(
Invocation.method(
@@ -2022,6 +2179,7 @@ class MockRelayClient extends _i1.Mock implements _i24.RelayClient {
returnValue: _i14.Future.value(),
returnValueForMissingStub: _i14.Future.value(),
) as _i14.Future);
+
@override
_i14.Future handlePublish(
String? topic,
@@ -2067,6 +2225,7 @@ class MockClient extends _i1.Mock implements _i9.Client {
),
)),
) as _i14.Future<_i9.Response>);
+
@override
_i14.Future<_i9.Response> get(
Uri? url, {
@@ -2087,6 +2246,7 @@ class MockClient extends _i1.Mock implements _i9.Client {
),
)),
) as _i14.Future<_i9.Response>);
+
@override
_i14.Future<_i9.Response> post(
Uri? url, {
@@ -2117,6 +2277,7 @@ class MockClient extends _i1.Mock implements _i9.Client {
),
)),
) as _i14.Future<_i9.Response>);
+
@override
_i14.Future<_i9.Response> put(
Uri? url, {
@@ -2147,6 +2308,7 @@ class MockClient extends _i1.Mock implements _i9.Client {
),
)),
) as _i14.Future<_i9.Response>);
+
@override
_i14.Future<_i9.Response> patch(
Uri? url, {
@@ -2177,6 +2339,7 @@ class MockClient extends _i1.Mock implements _i9.Client {
),
)),
) as _i14.Future<_i9.Response>);
+
@override
_i14.Future<_i9.Response> delete(
Uri? url, {
@@ -2207,6 +2370,7 @@ class MockClient extends _i1.Mock implements _i9.Client {
),
)),
) as _i14.Future<_i9.Response>);
+
@override
_i14.Future read(
Uri? url, {
@@ -2227,6 +2391,7 @@ class MockClient extends _i1.Mock implements _i9.Client {
),
)),
) as _i14.Future);
+
@override
_i14.Future<_i27.Uint8List> readBytes(
Uri? url, {
@@ -2240,6 +2405,7 @@ class MockClient extends _i1.Mock implements _i9.Client {
),
returnValue: _i14.Future<_i27.Uint8List>.value(_i27.Uint8List(0)),
) as _i14.Future<_i27.Uint8List>);
+
@override
_i14.Future<_i9.StreamedResponse> send(_i9.BaseRequest? request) =>
(super.noSuchMethod(
@@ -2256,6 +2422,7 @@ class MockClient extends _i1.Mock implements _i9.Client {
),
)),
) as _i14.Future<_i9.StreamedResponse>);
+
@override
void close() => super.noSuchMethod(
Invocation.method(
@@ -2282,6 +2449,7 @@ class MockNetworkService extends _i1.Mock implements _i28.NetworkService {
Invocation.getter(#initialized),
),
) as _i2.ValueNotifier);
+
@override
set initialized(_i2.ValueNotifier? _initialized) => super.noSuchMethod(
Invocation.setter(
@@ -2290,12 +2458,14 @@ class MockNetworkService extends _i1.Mock implements _i28.NetworkService {
),
returnValueForMissingStub: null,
);
+
@override
List<_i29.GridItem<_i3.W3MChainInfo>> get itemListComplete =>
(super.noSuchMethod(
Invocation.getter(#itemListComplete),
returnValue: <_i29.GridItem<_i3.W3MChainInfo>>[],
) as List<_i29.GridItem<_i3.W3MChainInfo>>);
+
@override
set itemListComplete(
List<_i29.GridItem<_i3.W3MChainInfo>>? _itemListComplete) =>
@@ -2306,6 +2476,7 @@ class MockNetworkService extends _i1.Mock implements _i28.NetworkService {
),
returnValueForMissingStub: null,
);
+
@override
_i2.ValueNotifier>> get itemList =>
(super.noSuchMethod(
@@ -2316,6 +2487,7 @@ class MockNetworkService extends _i1.Mock implements _i28.NetworkService {
Invocation.getter(#itemList),
),
) as _i2.ValueNotifier