getAccounts method
Implementation
List<String>? getAccounts({String? namespace}) {
final accountList = <String>[];
if (sessionService.noSession) {
return null;
}
if (sessionService.isCoinbase) {
final ns = NetworkUtils.eip155;
return ReownAppKitModalNetworks.getAllSupportedNetworks(
namespace: ns,
).map((e) => '${e.chainId}:${getAddress(ns)}').toList();
}
if (sessionService.isPhantom) {
final ns = namespace ?? NetworkUtils.solana;
return ReownAppKitModalNetworks.getAllSupportedNetworks(
namespace: ns,
).map((e) => '${e.chainId}:${getAddress(ns)}').toList();
}
if (sessionService.isSolflare) {
final ns = namespace ?? NetworkUtils.solana;
return ReownAppKitModalNetworks.getAllSupportedNetworks(
namespace: ns,
).map((e) => '${e.chainId}:${getAddress(ns)}').toList();
}
if (sessionService.isMagic) {
final ns = namespace ?? NetworkUtils.eip155;
return ReownAppKitModalNetworks.getAllSupportedNetworks(
namespace: ns,
).map((e) => '${e.chainId}:${getAddress(ns)}').toList();
}
if (_isSmartAccount) {
return sessionSmartAccounts;
}
final sessionNamespaces = _sessionData!.namespaces;
if ((namespace ?? '').isEmpty) {
for (var namespace in sessionNamespaces.keys) {
final accounts = sessionNamespaces[namespace]?.accounts ?? [];
accountList.addAll(accounts);
}
return accountList;
}
return sessionNamespaces[namespace]?.accounts ?? [];
}