@khelaia/react-ens-address
Version:
React ENS address component
44 lines (35 loc) • 816 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.ETH_ADDRESS_TYPE = void 0;
exports.getEthAddressType = getEthAddressType;
exports.isAddress = isAddress;
var _ui = require("@khelaia/ui");
var _ethers = require("ethers");
var ETH_ADDRESS_TYPE = {
name: 'name',
address: 'address',
error: 'error'
};
exports.ETH_ADDRESS_TYPE = ETH_ADDRESS_TYPE;
function isAddress(address) {
try {
_ethers.utils.getAddress(address);
} catch (e) {
return false;
}
return true;
}
function getEthAddressType(address) {
if (!address) return ETH_ADDRESS_TYPE.error;
if (isAddress(address)) {
return ETH_ADDRESS_TYPE.address;
}
try {
(0, _ui.validateName)(address);
return ETH_ADDRESS_TYPE.name;
} catch (e) {
return ETH_ADDRESS_TYPE.error;
}
}