diff --git a/Example/WalletApp/PresentationLayer/Wallet/SessionProposal/SessionProposalInteractor.swift b/Example/WalletApp/PresentationLayer/Wallet/SessionProposal/SessionProposalInteractor.swift index 477c6f3fa..17d74da18 100644 --- a/Example/WalletApp/PresentationLayer/Wallet/SessionProposal/SessionProposalInteractor.swift +++ b/Example/WalletApp/PresentationLayer/Wallet/SessionProposal/SessionProposalInteractor.swift @@ -31,7 +31,7 @@ extension SessionProposalInteractor { if let chains = proposalNamespace.chains { accounts = Set( chains.compactMap { - Account($0.absoluteString + ":\(self.accounts[$0.namespace]!)") + Account($0.absoluteString + ":\(self.accounts[$0.namespace] ?? "\($0.namespace)")") } ) let sessionNamespace = SessionNamespace(chains: chains, accounts: accounts, methods: proposalNamespace.methods, events: proposalNamespace.events) diff --git a/Sources/WalletConnectUtils/Extensions/String+CAIPs.swift b/Sources/WalletConnectUtils/Extensions/String+CAIPs.swift index 433a7e537..2f51d8b4e 100644 --- a/Sources/WalletConnectUtils/Extensions/String+CAIPs.swift +++ b/Sources/WalletConnectUtils/Extensions/String+CAIPs.swift @@ -3,7 +3,7 @@ import Foundation extension String { static let chainNamespaceRegex = "^[-a-z0-9]{3,8}$" - static let chainReferenceRegex = "^[-a-zA-Z0-9]{1,32}$" + static let chainReferenceRegex = "^[-a-zA-Z0-9_]{1,32}$" static let accountAddressRegex = "^[a-zA-Z0-9]{1,64}$" static func conformsToCAIP2(_ string: String) -> Bool {