Socket
Socket
Sign inDemoInstall

@ethereum-waffle/ens

Package Overview
Dependencies
110
Maintainers
1
Versions
145
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 4.0.3-dev.9bdd800 to 4.0.3-dev.a1d89d0

16

dist/cjs/src/contracts.js

@@ -25,8 +25,14 @@ "use strict";

}
catch (error) {
module.exports = {
...require('@ensdomains/ens'),
...require('@ensdomains/resolver')
};
catch (contractsRequireError) {
try {
module.exports = {
...require('@ensdomains/ens'),
...require('@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 = {

@@ -25,8 +25,14 @@ "use strict";

}
catch (error) {
module.exports = {
...require('@ensdomains/ens'),
...require('@ensdomains/resolver')
};
catch (contractsRequireError) {
try {
module.exports = {
...require('@ensdomains/ens'),
...require('@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.9bdd800",
"version": "4.0.3-dev.a1d89d0",
"description": "A mock ens implementation for testing.",

@@ -48,3 +48,5 @@ "repository": "git@github.com:EthWorks/Waffle.git",

"peerDependencies": {
"ethers": "*"
"ethers": "*",
"@ensdomains/ens": "^0.4.4",
"@ensdomains/resolver": "^0.2.4"
},

@@ -51,0 +53,0 @@ "scripts": {

@@ -25,7 +25,12 @@ /* eslint-disable import/no-extraneous-dependencies */

}
} catch (error) {
module.exports = {
...require('@ensdomains/ens'),
...require('@ensdomains/resolver')
};
} catch (contractsRequireError) {
try {
module.exports = {
...require('@ensdomains/ens'),
...require('@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

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc