@ethereum-waffle/ens
Advanced tools
Comparing version 4.0.3-dev.06c4b26 to 4.0.3-dev.0bc9af4
@@ -32,6 +32,7 @@ "use strict"; | ||
} | ||
catch (ensRequireError) { | ||
console.error('Failed to import ens dependencies. Have you installed peer dependencies "@ensdomains/ens" and "@ensdomains/resolver"?'); | ||
catch (_a) { | ||
// If the dependencies are missing, a descriptive error is thrown | ||
// when trying to use one of the ENS functions. | ||
} | ||
} | ||
//# sourceMappingURL=contracts.js.map |
@@ -31,7 +31,17 @@ "use strict"; | ||
const errors_1 = require("./errors"); | ||
const { ENSRegistry, FIFSRegistrar, ReverseRegistrar, PublicResolver } = contracts; | ||
const getContracts = () => { | ||
const { ENSRegistry, FIFSRegistrar, ReverseRegistrar, PublicResolver } = contracts; | ||
const result = { ENSRegistry, FIFSRegistrar, ReverseRegistrar, PublicResolver }; | ||
for (const key of Object.keys(result)) { | ||
if (!contracts[key]) { | ||
throw new Error(`Contract ${key} is missing from ENS dependencies.` + | ||
'Have you installed peer dependencies "@ensdomains/ens" and "@ensdomains/resolver"?'); | ||
} | ||
} | ||
return result; | ||
}; | ||
const { namehash } = ethers_1.utils; | ||
const { HashZero } = ethers_1.constants; | ||
async function createResolver(signer, ens) { | ||
const resolver = await (0, utils_1.deployContract)(signer, PublicResolver, [ens.address]); | ||
const resolver = await (0, utils_1.deployContract)(signer, getContracts().PublicResolver, [ens.address]); | ||
const resolverNode = namehash('resolver'); | ||
@@ -46,3 +56,3 @@ const resolverLabel = ethers_1.utils.id('resolver'); | ||
async function createReverseRegistrar(signer, ens, resolver) { | ||
const reverseRegistrar = await (0, utils_1.deployContract)(signer, ReverseRegistrar, [ens.address, resolver.address]); | ||
const reverseRegistrar = await (0, utils_1.deployContract)(signer, getContracts().ReverseRegistrar, [ens.address, resolver.address]); | ||
await ens.setSubnodeOwner(HashZero, ethers_1.utils.id('reverse'), await signer.getAddress()); | ||
@@ -54,3 +64,3 @@ await ens.setSubnodeOwner(namehash('reverse'), ethers_1.utils.id('addr'), reverseRegistrar.address); | ||
async function deployENS(signer) { | ||
const ens = await (0, utils_1.deployContract)(signer, ENSRegistry, []); | ||
const ens = await (0, utils_1.deployContract)(signer, getContracts().ENSRegistry, []); | ||
const resolver = await createResolver(signer, ens); | ||
@@ -73,3 +83,3 @@ const reverseRegistrar = await createReverseRegistrar(signer, ens, resolver); | ||
...this.registrars, | ||
[domain]: await (0, utils_1.deployContract)(this.signer, FIFSRegistrar, [this.ens.address, node]) | ||
[domain]: await (0, utils_1.deployContract)(this.signer, getContracts().FIFSRegistrar, [this.ens.address, node]) | ||
}; | ||
@@ -82,3 +92,3 @@ await this.ens.setSubnodeOwner(HashZero, ethers_1.utils.id(domain), this.registrars[domain].address); | ||
await this.ens.setResolver(node, this.resolver.address); | ||
const registrar = await (0, utils_1.deployContract)(this.signer, FIFSRegistrar, [this.ens.address, node]); | ||
const registrar = await (0, utils_1.deployContract)(this.signer, getContracts().FIFSRegistrar, [this.ens.address, node]); | ||
await this.ens.setOwner(node, registrar.address); | ||
@@ -85,0 +95,0 @@ this.registrars = { |
@@ -32,6 +32,7 @@ "use strict"; | ||
} | ||
catch (ensRequireError) { | ||
console.error('Failed to import ens dependencies. Have you installed peer dependencies "@ensdomains/ens" and "@ensdomains/resolver"?'); | ||
catch (_a) { | ||
// If the dependencies are missing, a descriptive error is thrown | ||
// when trying to use one of the ENS functions. | ||
} | ||
} | ||
//# sourceMappingURL=contracts.js.map |
@@ -5,7 +5,17 @@ import * as contracts from './contracts.js'; | ||
import { ExpectedTopLevelDomain, MissingDomain } from './errors'; | ||
const { ENSRegistry, FIFSRegistrar, ReverseRegistrar, PublicResolver } = contracts; | ||
const getContracts = () => { | ||
const { ENSRegistry, FIFSRegistrar, ReverseRegistrar, PublicResolver } = contracts; | ||
const result = { ENSRegistry, FIFSRegistrar, ReverseRegistrar, PublicResolver }; | ||
for (const key of Object.keys(result)) { | ||
if (!contracts[key]) { | ||
throw new Error(`Contract ${key} is missing from ENS dependencies.` + | ||
'Have you installed peer dependencies "@ensdomains/ens" and "@ensdomains/resolver"?'); | ||
} | ||
} | ||
return result; | ||
}; | ||
const { namehash } = utils; | ||
const { HashZero } = constants; | ||
export async function createResolver(signer, ens) { | ||
const resolver = await deployContract(signer, PublicResolver, [ens.address]); | ||
const resolver = await deployContract(signer, getContracts().PublicResolver, [ens.address]); | ||
const resolverNode = namehash('resolver'); | ||
@@ -19,3 +29,3 @@ const resolverLabel = utils.id('resolver'); | ||
export async function createReverseRegistrar(signer, ens, resolver) { | ||
const reverseRegistrar = await deployContract(signer, ReverseRegistrar, [ens.address, resolver.address]); | ||
const reverseRegistrar = await deployContract(signer, getContracts().ReverseRegistrar, [ens.address, resolver.address]); | ||
await ens.setSubnodeOwner(HashZero, utils.id('reverse'), await signer.getAddress()); | ||
@@ -26,3 +36,3 @@ await ens.setSubnodeOwner(namehash('reverse'), utils.id('addr'), reverseRegistrar.address); | ||
export async function deployENS(signer) { | ||
const ens = await deployContract(signer, ENSRegistry, []); | ||
const ens = await deployContract(signer, getContracts().ENSRegistry, []); | ||
const resolver = await createResolver(signer, ens); | ||
@@ -44,3 +54,3 @@ const reverseRegistrar = await createReverseRegistrar(signer, ens, resolver); | ||
...this.registrars, | ||
[domain]: await deployContract(this.signer, FIFSRegistrar, [this.ens.address, node]) | ||
[domain]: await deployContract(this.signer, getContracts().FIFSRegistrar, [this.ens.address, node]) | ||
}; | ||
@@ -53,3 +63,3 @@ await this.ens.setSubnodeOwner(HashZero, utils.id(domain), this.registrars[domain].address); | ||
await this.ens.setResolver(node, this.resolver.address); | ||
const registrar = await deployContract(this.signer, FIFSRegistrar, [this.ens.address, node]); | ||
const registrar = await deployContract(this.signer, getContracts().FIFSRegistrar, [this.ens.address, node]); | ||
await this.ens.setOwner(node, registrar.address); | ||
@@ -56,0 +66,0 @@ this.registrars = { |
{ | ||
"name": "@ethereum-waffle/ens", | ||
"version": "4.0.3-dev.06c4b26", | ||
"version": "4.0.3-dev.0bc9af4", | ||
"description": "A mock ens implementation for testing.", | ||
@@ -5,0 +5,0 @@ "repository": "git@github.com:EthWorks/Waffle.git", |
@@ -31,6 +31,6 @@ /* eslint-disable import/no-extraneous-dependencies */ | ||
}; | ||
} catch (ensRequireError) { | ||
console.error('Failed to import ens dependencies. Have you installed peer dependencies "@ensdomains/ens" and "@ensdomains/resolver"?') | ||
} catch { | ||
// If the dependencies are missing, a descriptive error is thrown | ||
// when trying to use one of the ENS functions. | ||
} | ||
} |
@@ -6,3 +6,15 @@ import * as contracts from './contracts.js'; | ||
const {ENSRegistry, FIFSRegistrar, ReverseRegistrar, PublicResolver} = contracts; | ||
const getContracts = () => { | ||
const {ENSRegistry, FIFSRegistrar, ReverseRegistrar, PublicResolver} = contracts; | ||
const result = {ENSRegistry, FIFSRegistrar, ReverseRegistrar, PublicResolver}; | ||
for (const key of Object.keys(result)) { | ||
if (!contracts[key]) { | ||
throw new Error( | ||
`Contract ${key} is missing from ENS dependencies.` + | ||
'Have you installed peer dependencies "@ensdomains/ens" and "@ensdomains/resolver"?' | ||
); | ||
} | ||
} | ||
return result; | ||
}; | ||
@@ -17,3 +29,3 @@ const {namehash} = utils; | ||
export async function createResolver(signer: Signer, ens: Contract) { | ||
const resolver = await deployContract(signer, PublicResolver, [ens.address]); | ||
const resolver = await deployContract(signer, getContracts().PublicResolver, [ens.address]); | ||
const resolverNode = namehash('resolver'); | ||
@@ -28,3 +40,7 @@ const resolverLabel = utils.id('resolver'); | ||
export async function createReverseRegistrar(signer: Signer, ens: Contract, resolver: Contract) { | ||
const reverseRegistrar = await deployContract(signer, ReverseRegistrar, [ens.address, resolver.address]); | ||
const reverseRegistrar = await deployContract( | ||
signer, | ||
getContracts().ReverseRegistrar, | ||
[ens.address, resolver.address] | ||
); | ||
await ens.setSubnodeOwner(HashZero, utils.id('reverse'), await signer.getAddress()); | ||
@@ -36,3 +52,3 @@ await ens.setSubnodeOwner(namehash('reverse'), utils.id('addr'), reverseRegistrar.address); | ||
export async function deployENS(signer: Signer) { | ||
const ens = await deployContract(signer, ENSRegistry, []); | ||
const ens = await deployContract(signer, getContracts().ENSRegistry, []); | ||
const resolver = await createResolver(signer, ens); | ||
@@ -61,3 +77,3 @@ const reverseRegistrar = await createReverseRegistrar(signer, ens, resolver); | ||
...this.registrars, | ||
[domain]: await deployContract(this.signer, FIFSRegistrar, [this.ens.address, node]) | ||
[domain]: await deployContract(this.signer, getContracts().FIFSRegistrar, [this.ens.address, node]) | ||
}; | ||
@@ -71,3 +87,7 @@ await this.ens.setSubnodeOwner(HashZero, utils.id(domain), this.registrars[domain].address); | ||
await this.ens.setResolver(node, this.resolver.address); | ||
const registrar: Contract = await deployContract(this.signer, FIFSRegistrar, [this.ens.address, node]); | ||
const registrar: Contract = await deployContract( | ||
this.signer, | ||
getContracts().FIFSRegistrar, | ||
[this.ens.address, node] | ||
); | ||
await this.ens.setOwner(node, registrar.address); | ||
@@ -74,0 +94,0 @@ this.registrars = { |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
2405933
773
0