UNPKG

@1hive/connect-core

Version:

Access and interact with Aragon Organizations and their apps.

32 lines 1.36 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.resolveAddress = exports.includesAddress = exports.addressesEqual = exports.ANY_ENTITY = void 0; const address_1 = require("@ethersproject/address"); const errors_1 = require("../errors"); exports.ANY_ENTITY = '0xFFfFfFffFFfffFFfFFfFFFFFffFFFffffFfFFFfF'; // Check address equality without checksums function addressesEqual(first, second) { first = first && first.toLowerCase(); second = second && second.toLowerCase(); return first === second; } exports.addressesEqual = addressesEqual; // "Safer" version of [].includes() for addresses function includesAddress(arr, address) { return arr.some((a) => addressesEqual(a, address)); } exports.includesAddress = includesAddress; async function resolveAddress(ethersProvider, location) { const isLocationAddress = address_1.isAddress(location); const address = isLocationAddress ? location : await ethersProvider.resolveName(location); if (address && address_1.isAddress(address)) { return address; } throw new errors_1.ErrorInvalidLocation(isLocationAddress ? `The address (${address}) is not valid.` : `The ENS domain (${location}) doesn’t seem to resolve to an address.`); } exports.resolveAddress = resolveAddress; //# sourceMappingURL=address.js.map