diff --git a/keyserver/src/utils/ens-cache.js b/keyserver/src/utils/ens-cache.js new file mode 100644 index 000000000..3e107fc01 --- /dev/null +++ b/keyserver/src/utils/ens-cache.js @@ -0,0 +1,28 @@ +// @flow + +import { ethers } from 'ethers'; + +import { ENSCache, type EthersProvider } from 'lib/utils/ens-cache'; +import { + getENSNames as baseGetENSNames, + type GetENSNames, +} from 'lib/utils/ens-helpers'; + +const alchemyKey = process.env.COMM_ALCHEMY_KEY; + +let provider: ?EthersProvider; +if (alchemyKey) { + provider = new ethers.providers.AlchemyProvider('mainnet', alchemyKey); +} + +let ensCache: ?ENSCache; +if (provider) { + ensCache = new ENSCache(provider); +} + +let getENSNames: ?GetENSNames; +if (ensCache) { + getENSNames = baseGetENSNames.bind(null, ensCache); +} + +export { provider, ensCache, getENSNames };