UNPKG

@reown/appkit-siwe-react-native

Version:

#### 🔎 [Examples](https://github.com/reown-com/react-native-examples)

31 lines (30 loc) • 978 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getAddressFromMessage = getAddressFromMessage; exports.getChainIdFromMessage = getChainIdFromMessage; exports.verifySignature = verifySignature; var _utils = require("@walletconnect/utils"); const ETH_ADDRESS_PATTERN = /0x[a-fA-F0-9]{40}/u; const ETH_CHAIN_ID_IN_SIWE_PATTERN = /Chain ID: (?<temp1>\d+)/u; function getAddressFromMessage(message) { return message.match(ETH_ADDRESS_PATTERN)?.[0] || ''; } function getChainIdFromMessage(message) { return `eip155:${message.match(ETH_CHAIN_ID_IN_SIWE_PATTERN)?.[1] || 1}`; } async function verifySignature({ address, message, signature, chainId, projectId }) { let isValid = await (0, _utils.isValidEip191Signature)(address, message, signature); if (!isValid) { isValid = await (0, _utils.isValidEip1271Signature)(address, message, signature, chainId, projectId); } return isValid; } //# sourceMappingURL=index.js.map