@ensdomains/ensjs 3.0.0-alpha.36 → 3.0.0-alpha.38
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +7 -0
- package/dist/cjs/GqlManager.js +22 -20
- package/dist/cjs/contracts/getContractAddress.js +1 -1
- package/dist/cjs/contracts/index.js +44 -46
- package/dist/cjs/functions/batchWrappers.js +6 -6
- package/dist/cjs/functions/createSubname.js +1 -1
- package/dist/cjs/functions/getAvailable.js +2 -2
- package/dist/cjs/functions/getDNSOwner.js +4 -2
- package/dist/cjs/functions/getExpiry.js +4 -4
- package/dist/cjs/functions/getName.js +2 -2
- package/dist/cjs/functions/getNames.js +6 -6
- package/dist/cjs/functions/getOwner.js +10 -9
- package/dist/cjs/functions/getPrice.js +4 -4
- package/dist/cjs/functions/getProfile.js +10 -10
- package/dist/cjs/functions/getResolver.js +2 -2
- package/dist/cjs/functions/getSpecificRecord.js +6 -6
- package/dist/cjs/functions/getSubnames.js +4 -4
- package/dist/cjs/functions/getWrapperData.js +2 -2
- package/dist/cjs/functions/importDNSSECName.js +5 -5
- package/dist/cjs/functions/initialGetters.js +3 -1
- package/dist/cjs/functions/setName.js +3 -2
- package/dist/cjs/functions/setRecord.js +2 -1
- package/dist/cjs/functions/setRecords.js +2 -1
- package/dist/cjs/functions/setResolver.js +2 -2
- package/dist/cjs/functions/supportsTLD.js +48 -0
- package/dist/cjs/functions/transferController.js +2 -2
- package/dist/cjs/functions/transferName.js +3 -3
- package/dist/cjs/functions/wrapName.js +3 -3
- package/dist/cjs/generated/factories/BaseRegistrarImplementation__factory.js +1 -1
- package/dist/cjs/generated/factories/BulkRenewal__factory.js +1 -1
- package/dist/cjs/generated/factories/DNSRegistrar__factory.js +1 -1
- package/dist/cjs/generated/factories/DNSSECImpl__factory.js +1 -1
- package/dist/cjs/generated/factories/DefaultReverseResolver__factory.js +1 -1
- package/dist/cjs/generated/factories/ENSRegistry__factory.js +1 -1
- package/dist/cjs/generated/factories/ETHRegistrarController__factory.js +1 -1
- package/dist/cjs/generated/factories/Multicall__factory.js +1 -1
- package/dist/cjs/generated/factories/NameWrapper__factory.js +1 -1
- package/dist/cjs/generated/factories/P256SHA256Algorithm__factory.js +1 -1
- package/dist/cjs/generated/factories/PublicResolver__factory.js +1 -1
- package/dist/cjs/generated/factories/RSASHA1Algorithm__factory.js +1 -1
- package/dist/cjs/generated/factories/RSASHA256Algorithm__factory.js +1 -1
- package/dist/cjs/generated/factories/ReverseRegistrar__factory.js +1 -1
- package/dist/cjs/generated/factories/Root__factory.js +1 -1
- package/dist/cjs/generated/factories/SHA1Digest__factory.js +1 -1
- package/dist/cjs/generated/factories/SHA1NSEC3Digest__factory.js +1 -1
- package/dist/cjs/generated/factories/SHA256Digest__factory.js +1 -1
- package/dist/cjs/generated/factories/StaticMetadataService__factory.js +1 -1
- package/dist/cjs/generated/factories/TLDPublicSuffixList__factory.js +1 -1
- package/dist/cjs/generated/factories/UniversalResolver__factory.js +1 -1
- package/dist/cjs/index.js +295 -291
- package/dist/cjs/utils/labels.js +1 -1
- package/dist/cjs/utils/recordHelpers.js +1 -1
- package/dist/cjs/utils/registerHelpers.js +2 -1
- package/dist/cjs/utils/wrapper.js +1 -1
- package/dist/esm/contracts/getContractAddress.mjs +1 -1
- package/dist/esm/functions/initialGetters.mjs +3 -1
- package/dist/esm/functions/supportsTLD.mjs +29 -0
- package/dist/esm/index.mjs +9 -1
- package/dist/types/functions/initialGetters.d.ts +1 -0
- package/dist/types/functions/supportsTLD.d.ts +2 -0
- package/dist/types/index.d.ts +6 -1
- package/package.json +1 -1
- package/src/contracts/getContractAddress.ts +1 -1
- package/src/functions/initialGetters.ts +1 -0
- package/src/functions/supportsTLD.test.ts +45 -0
- package/src/functions/supportsTLD.ts +38 -0
- package/src/index.ts +12 -1
package/LICENSE
CHANGED
package/README.md
CHANGED
|
@@ -43,6 +43,13 @@ const ENSInstance = new ENS()
|
|
|
43
43
|
await ENSInstance.setProvider(provider)
|
|
44
44
|
```
|
|
45
45
|
|
|
46
|
+
**NOTE:**
|
|
47
|
+
If using ENSjs with Node, you may need to pass the `--experimental-specifier-resolution=node` flag.
|
|
48
|
+
|
|
49
|
+
```sh
|
|
50
|
+
node --experimental-specifier-resolution=node ./index.js
|
|
51
|
+
```
|
|
52
|
+
|
|
46
53
|
## Batching Calls
|
|
47
54
|
|
|
48
55
|
The batch function is a large part of this library, and there are plenty of situations where you might want to use it.
|
package/dist/cjs/GqlManager.js
CHANGED
|
@@ -87,24 +87,26 @@ const responseMiddleware = (traverse) => (response) => {
|
|
|
87
87
|
return response;
|
|
88
88
|
};
|
|
89
89
|
class GqlManager {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
90
|
+
constructor() {
|
|
91
|
+
this.gql = () => null;
|
|
92
|
+
this.client = null;
|
|
93
|
+
this.setUrl = async (url) => {
|
|
94
|
+
if (url) {
|
|
95
|
+
const [imported, traverse, { visit, parse, print }] = await Promise.all([
|
|
96
|
+
import("graphql-request"),
|
|
97
|
+
import("traverse"),
|
|
98
|
+
import("graphql/language")
|
|
99
|
+
]);
|
|
100
|
+
this.client = new imported.GraphQLClient(url, {
|
|
101
|
+
requestMiddleware: requestMiddleware(visit, parse, print),
|
|
102
|
+
responseMiddleware: responseMiddleware(traverse.default)
|
|
103
|
+
});
|
|
104
|
+
this.gql = imported.gql;
|
|
105
|
+
} else {
|
|
106
|
+
this.client = null;
|
|
107
|
+
this.gql = () => null;
|
|
108
|
+
}
|
|
109
|
+
};
|
|
110
|
+
this.request = (...arg) => this.client ? this.client.request(...arg) : null;
|
|
111
|
+
}
|
|
110
112
|
}
|
|
@@ -63,7 +63,7 @@ const addresses = {
|
|
|
63
63
|
"5": "0xD5610A08E370051a01fdfe4bB3ddf5270af1aA48"
|
|
64
64
|
},
|
|
65
65
|
UniversalResolver: {
|
|
66
|
-
"1": "
|
|
66
|
+
"1": "0x74E20Bd2A1fE0cdbe45b9A1d89cb7e0a45b36376",
|
|
67
67
|
"3": "0x74e20bd2a1fe0cdbe45b9a1d89cb7e0a45b36376",
|
|
68
68
|
"4": "0x74e20bd2a1fe0cdbe45b9a1d89cb7e0a45b36376",
|
|
69
69
|
"5": "0x687c30Cc44bFA39A1449e86E172BF002E7b3f0b0"
|
|
@@ -38,54 +38,52 @@ var import_reverseRegistrar = __toESM(require("./reverseRegistrar"));
|
|
|
38
38
|
var import_universalResolver = __toESM(require("./universalResolver"));
|
|
39
39
|
var import_bulkRenewal = __toESM(require("./bulkRenewal"));
|
|
40
40
|
class ContractManager {
|
|
41
|
-
provider;
|
|
42
|
-
fetchAddress;
|
|
43
41
|
constructor(provider, fetchAddress) {
|
|
42
|
+
this.generateContractGetter = (name, func) => {
|
|
43
|
+
return async (passedProvider, address) => {
|
|
44
|
+
const inputAddress = address || this.fetchAddress(name);
|
|
45
|
+
const provider = passedProvider || this.provider;
|
|
46
|
+
return func(provider, inputAddress);
|
|
47
|
+
};
|
|
48
|
+
};
|
|
49
|
+
this.getPublicResolver = this.generateContractGetter(
|
|
50
|
+
"PublicResolver",
|
|
51
|
+
import_publicResolver.default
|
|
52
|
+
);
|
|
53
|
+
this.getUniversalResolver = this.generateContractGetter(
|
|
54
|
+
"UniversalResolver",
|
|
55
|
+
import_universalResolver.default
|
|
56
|
+
);
|
|
57
|
+
this.getRegistry = this.generateContractGetter(
|
|
58
|
+
"ENSRegistryWithFallback",
|
|
59
|
+
import_registry.default
|
|
60
|
+
);
|
|
61
|
+
this.getReverseRegistrar = this.generateContractGetter(
|
|
62
|
+
"ReverseRegistrar",
|
|
63
|
+
import_reverseRegistrar.default
|
|
64
|
+
);
|
|
65
|
+
this.getNameWrapper = this.generateContractGetter(
|
|
66
|
+
"NameWrapper",
|
|
67
|
+
import_nameWrapper.default
|
|
68
|
+
);
|
|
69
|
+
this.getDNSRegistrar = this.generateContractGetter(
|
|
70
|
+
"DNSRegistrar",
|
|
71
|
+
import_dnsRegistrar.default
|
|
72
|
+
);
|
|
73
|
+
this.getBaseRegistrar = this.generateContractGetter(
|
|
74
|
+
"BaseRegistrarImplementation",
|
|
75
|
+
import_baseRegistrar.default
|
|
76
|
+
);
|
|
77
|
+
this.getEthRegistrarController = this.generateContractGetter(
|
|
78
|
+
"ETHRegistrarController",
|
|
79
|
+
import_ethRegistrarController.default
|
|
80
|
+
);
|
|
81
|
+
this.getMulticall = this.generateContractGetter("Multicall", import_multicall.default);
|
|
82
|
+
this.getBulkRenewal = this.generateContractGetter(
|
|
83
|
+
"BulkRenewal",
|
|
84
|
+
import_bulkRenewal.default
|
|
85
|
+
);
|
|
44
86
|
this.provider = provider;
|
|
45
87
|
this.fetchAddress = fetchAddress;
|
|
46
88
|
}
|
|
47
|
-
generateContractGetter = (name, func) => {
|
|
48
|
-
return async (passedProvider, address) => {
|
|
49
|
-
const inputAddress = address || this.fetchAddress(name);
|
|
50
|
-
const provider = passedProvider || this.provider;
|
|
51
|
-
return func(provider, inputAddress);
|
|
52
|
-
};
|
|
53
|
-
};
|
|
54
|
-
getPublicResolver = this.generateContractGetter(
|
|
55
|
-
"PublicResolver",
|
|
56
|
-
import_publicResolver.default
|
|
57
|
-
);
|
|
58
|
-
getUniversalResolver = this.generateContractGetter(
|
|
59
|
-
"UniversalResolver",
|
|
60
|
-
import_universalResolver.default
|
|
61
|
-
);
|
|
62
|
-
getRegistry = this.generateContractGetter(
|
|
63
|
-
"ENSRegistryWithFallback",
|
|
64
|
-
import_registry.default
|
|
65
|
-
);
|
|
66
|
-
getReverseRegistrar = this.generateContractGetter(
|
|
67
|
-
"ReverseRegistrar",
|
|
68
|
-
import_reverseRegistrar.default
|
|
69
|
-
);
|
|
70
|
-
getNameWrapper = this.generateContractGetter(
|
|
71
|
-
"NameWrapper",
|
|
72
|
-
import_nameWrapper.default
|
|
73
|
-
);
|
|
74
|
-
getDNSRegistrar = this.generateContractGetter(
|
|
75
|
-
"DNSRegistrar",
|
|
76
|
-
import_dnsRegistrar.default
|
|
77
|
-
);
|
|
78
|
-
getBaseRegistrar = this.generateContractGetter(
|
|
79
|
-
"BaseRegistrarImplementation",
|
|
80
|
-
import_baseRegistrar.default
|
|
81
|
-
);
|
|
82
|
-
getEthRegistrarController = this.generateContractGetter(
|
|
83
|
-
"ETHRegistrarController",
|
|
84
|
-
import_ethRegistrarController.default
|
|
85
|
-
);
|
|
86
|
-
getMulticall = this.generateContractGetter("Multicall", import_multicall.default);
|
|
87
|
-
getBulkRenewal = this.generateContractGetter(
|
|
88
|
-
"BulkRenewal",
|
|
89
|
-
import_bulkRenewal.default
|
|
90
|
-
);
|
|
91
89
|
}
|
|
@@ -33,7 +33,7 @@ var import_ccip = __toESM(require("../utils/ccip"));
|
|
|
33
33
|
var import_hexEncodedName = require("../utils/hexEncodedName");
|
|
34
34
|
const universalWrapper = {
|
|
35
35
|
raw: async ({ contracts }, name, data) => {
|
|
36
|
-
const universalResolver = await contracts
|
|
36
|
+
const universalResolver = await (contracts == null ? void 0 : contracts.getUniversalResolver());
|
|
37
37
|
return {
|
|
38
38
|
to: universalResolver.address,
|
|
39
39
|
data: universalResolver.interface.encodeFunctionData(
|
|
@@ -43,7 +43,7 @@ const universalWrapper = {
|
|
|
43
43
|
};
|
|
44
44
|
},
|
|
45
45
|
decode: async ({ contracts }, data) => {
|
|
46
|
-
const universalResolver = await contracts
|
|
46
|
+
const universalResolver = await (contracts == null ? void 0 : contracts.getUniversalResolver());
|
|
47
47
|
const response = universalResolver.interface.decodeFunctionResult(
|
|
48
48
|
"resolve(bytes,bytes)",
|
|
49
49
|
data
|
|
@@ -56,7 +56,7 @@ const universalWrapper = {
|
|
|
56
56
|
};
|
|
57
57
|
const resolverMulticallWrapper = {
|
|
58
58
|
raw: async ({ contracts }, data) => {
|
|
59
|
-
const publicResolver = await contracts
|
|
59
|
+
const publicResolver = await (contracts == null ? void 0 : contracts.getPublicResolver());
|
|
60
60
|
const formattedDataArr = data.map((item) => item.data);
|
|
61
61
|
return {
|
|
62
62
|
to: publicResolver.address,
|
|
@@ -66,7 +66,7 @@ const resolverMulticallWrapper = {
|
|
|
66
66
|
};
|
|
67
67
|
},
|
|
68
68
|
decode: async ({ contracts }, data) => {
|
|
69
|
-
const publicResolver = await contracts
|
|
69
|
+
const publicResolver = await (contracts == null ? void 0 : contracts.getPublicResolver());
|
|
70
70
|
const response = publicResolver.interface.decodeFunctionResult(
|
|
71
71
|
"multicall",
|
|
72
72
|
data
|
|
@@ -79,7 +79,7 @@ const resolverMulticallWrapper = {
|
|
|
79
79
|
};
|
|
80
80
|
const multicallWrapper = {
|
|
81
81
|
async raw({ contracts }, transactions, requireSuccess = false) {
|
|
82
|
-
const multicall = await contracts
|
|
82
|
+
const multicall = await (contracts == null ? void 0 : contracts.getMulticall());
|
|
83
83
|
return {
|
|
84
84
|
to: multicall.address,
|
|
85
85
|
data: multicall.interface.encodeFunctionData("tryAggregate", [
|
|
@@ -94,7 +94,7 @@ const multicallWrapper = {
|
|
|
94
94
|
async decode({ contracts, provider }, data, transactions) {
|
|
95
95
|
if (!data)
|
|
96
96
|
return;
|
|
97
|
-
const multicall = await contracts
|
|
97
|
+
const multicall = await (contracts == null ? void 0 : contracts.getMulticall());
|
|
98
98
|
try {
|
|
99
99
|
const [result] = multicall.interface.decodeFunctionResult(
|
|
100
100
|
"tryAggregate",
|
|
@@ -44,7 +44,7 @@ async function createSubname_default({
|
|
|
44
44
|
throw new Error("Fuses can only be set on a wrapped name");
|
|
45
45
|
}
|
|
46
46
|
if (!resolverAddress) {
|
|
47
|
-
resolverAddress = (await contracts
|
|
47
|
+
resolverAddress = (await (contracts == null ? void 0 : contracts.getPublicResolver())).address;
|
|
48
48
|
}
|
|
49
49
|
const label = labels.shift();
|
|
50
50
|
const labelhash = import_ethers.ethers.utils.solidityKeccak256(["string"], [label]);
|
|
@@ -23,7 +23,7 @@ __export(getAvailable_exports, {
|
|
|
23
23
|
module.exports = __toCommonJS(getAvailable_exports);
|
|
24
24
|
var import_labels = require("../utils/labels");
|
|
25
25
|
const raw = async ({ contracts }, name) => {
|
|
26
|
-
const baseRegistrar = await contracts
|
|
26
|
+
const baseRegistrar = await (contracts == null ? void 0 : contracts.getBaseRegistrar());
|
|
27
27
|
const labels = name.split(".");
|
|
28
28
|
if (labels.length !== 2 || labels[1] !== "eth") {
|
|
29
29
|
throw new Error("Currently only .eth names can be checked for availability");
|
|
@@ -38,7 +38,7 @@ const raw = async ({ contracts }, name) => {
|
|
|
38
38
|
const decode = async ({ contracts }, data) => {
|
|
39
39
|
if (data === null)
|
|
40
40
|
return;
|
|
41
|
-
const baseRegistrar = await contracts
|
|
41
|
+
const baseRegistrar = await (contracts == null ? void 0 : contracts.getBaseRegistrar());
|
|
42
42
|
try {
|
|
43
43
|
const result = baseRegistrar.interface.decodeFunctionResult(
|
|
44
44
|
"available",
|
|
@@ -36,9 +36,10 @@ function encodeURLParams(p) {
|
|
|
36
36
|
return Object.entries(p).map((kv) => kv.map(encodeURIComponent).join("=")).join("&");
|
|
37
37
|
}
|
|
38
38
|
const getDNS = async (q) => {
|
|
39
|
+
var _a;
|
|
39
40
|
const url = `https://cloudflare-dns.com/dns-query?${encodeURLParams({
|
|
40
41
|
ct: "application/dns-udpwireformat",
|
|
41
|
-
dns: packet.encode(q)
|
|
42
|
+
dns: (_a = packet.encode(q)) == null ? void 0 : _a.toString("base64"),
|
|
42
43
|
ts: Date.now().toString()
|
|
43
44
|
})}`;
|
|
44
45
|
const response = await (0, import_utils._fetchData)(url, void 0);
|
|
@@ -79,7 +80,8 @@ const dnsQuery = async (qtype, qname) => {
|
|
|
79
80
|
return response;
|
|
80
81
|
};
|
|
81
82
|
async function getDNSOwner_default(_, dnsName) {
|
|
83
|
+
var _a, _b, _c, _d, _e, _f;
|
|
82
84
|
const result = await dnsQuery("TXT", `_ens.${dnsName}`);
|
|
83
|
-
const address = result
|
|
85
|
+
const address = (_f = (_e = (_d = (_c = (_b = (_a = result == null ? void 0 : result.answers) == null ? void 0 : _a[0]) == null ? void 0 : _b.data) == null ? void 0 : _c[0]) == null ? void 0 : _d.toString()) == null ? void 0 : _e.split("=")) == null ? void 0 : _f[1];
|
|
84
86
|
return address;
|
|
85
87
|
}
|
|
@@ -27,7 +27,7 @@ const getRegistrarExpiry = async ({ contracts, multicallWrapper }, labels) => {
|
|
|
27
27
|
if (labels.length > 2 || labels[1] !== "eth") {
|
|
28
28
|
throw new Error("Only .eth names have expiry dates on the registrar");
|
|
29
29
|
}
|
|
30
|
-
const baseRegistrar = await contracts
|
|
30
|
+
const baseRegistrar = await (contracts == null ? void 0 : contracts.getBaseRegistrar());
|
|
31
31
|
const expiryCall = baseRegistrar.interface.encodeFunctionData("nameExpires", [
|
|
32
32
|
(0, import_utils.solidityKeccak256)(["string"], [labels[0]])
|
|
33
33
|
]);
|
|
@@ -44,7 +44,7 @@ const getRegistrarExpiry = async ({ contracts, multicallWrapper }, labels) => {
|
|
|
44
44
|
]);
|
|
45
45
|
};
|
|
46
46
|
const getWrapperExpiry = async ({ contracts }, labels) => {
|
|
47
|
-
const nameWrapper = await contracts
|
|
47
|
+
const nameWrapper = await (contracts == null ? void 0 : contracts.getNameWrapper());
|
|
48
48
|
const expiryCall = nameWrapper.interface.encodeFunctionData("getData", [
|
|
49
49
|
(0, import_normalise.namehash)(labels.join("."))
|
|
50
50
|
]);
|
|
@@ -68,7 +68,7 @@ const raw = async (ensArgs, name, { contract } = {}) => {
|
|
|
68
68
|
};
|
|
69
69
|
const decodeRegistrarExpiry = async ({ contracts, multicallWrapper }, data) => {
|
|
70
70
|
const result = await multicallWrapper.decode(data);
|
|
71
|
-
const baseRegistrar = await contracts
|
|
71
|
+
const baseRegistrar = await (contracts == null ? void 0 : contracts.getBaseRegistrar());
|
|
72
72
|
try {
|
|
73
73
|
const [nameExpires] = baseRegistrar.interface.decodeFunctionResult(
|
|
74
74
|
"nameExpires",
|
|
@@ -87,7 +87,7 @@ const decodeRegistrarExpiry = async ({ contracts, multicallWrapper }, data) => {
|
|
|
87
87
|
}
|
|
88
88
|
};
|
|
89
89
|
const decodeWrapperExpiry = async ({ contracts }, data) => {
|
|
90
|
-
const nameWrapper = await contracts
|
|
90
|
+
const nameWrapper = await (contracts == null ? void 0 : contracts.getNameWrapper());
|
|
91
91
|
try {
|
|
92
92
|
const [, , expiry] = nameWrapper.interface.decodeFunctionResult(
|
|
93
93
|
"getData",
|
|
@@ -23,7 +23,7 @@ __export(getName_exports, {
|
|
|
23
23
|
module.exports = __toCommonJS(getName_exports);
|
|
24
24
|
var import_hexEncodedName = require("../utils/hexEncodedName");
|
|
25
25
|
const raw = async ({ contracts }, address) => {
|
|
26
|
-
const universalResolver = await contracts
|
|
26
|
+
const universalResolver = await (contracts == null ? void 0 : contracts.getUniversalResolver());
|
|
27
27
|
const reverseNode = `${address.toLowerCase().substring(2)}.addr.reverse`;
|
|
28
28
|
return {
|
|
29
29
|
to: universalResolver.address,
|
|
@@ -35,7 +35,7 @@ const raw = async ({ contracts }, address) => {
|
|
|
35
35
|
const decode = async ({ contracts }, data, address) => {
|
|
36
36
|
if (data === null)
|
|
37
37
|
return;
|
|
38
|
-
const universalResolver = await contracts
|
|
38
|
+
const universalResolver = await (contracts == null ? void 0 : contracts.getUniversalResolver());
|
|
39
39
|
try {
|
|
40
40
|
const result = universalResolver.interface.decodeFunctionResult(
|
|
41
41
|
"reverse(bytes)",
|
|
@@ -303,9 +303,9 @@ const getNames = async ({ gqlInstance }, {
|
|
|
303
303
|
const { account } = await client.request(finalQuery, queryVars);
|
|
304
304
|
if (type === "all") {
|
|
305
305
|
return [
|
|
306
|
-
...account
|
|
307
|
-
...account
|
|
308
|
-
...account
|
|
306
|
+
...(account == null ? void 0 : account.domains.map(mapDomain)) || [],
|
|
307
|
+
...(account == null ? void 0 : account.registrations.map(mapRegistration)) || [],
|
|
308
|
+
...(account == null ? void 0 : account.wrappedDomains.map(mapWrappedDomain)) || []
|
|
309
309
|
].sort((a, b) => {
|
|
310
310
|
if (orderDirection === "desc") {
|
|
311
311
|
if (orderBy === "labelName") {
|
|
@@ -320,11 +320,11 @@ const getNames = async ({ gqlInstance }, {
|
|
|
320
320
|
});
|
|
321
321
|
}
|
|
322
322
|
if (type === "owner") {
|
|
323
|
-
return account
|
|
323
|
+
return (account == null ? void 0 : account.domains.map(mapDomain)) || [];
|
|
324
324
|
}
|
|
325
325
|
if (type === "wrappedOwner") {
|
|
326
|
-
return account
|
|
326
|
+
return (account == null ? void 0 : account.wrappedDomains.map(mapWrappedDomain)) || [];
|
|
327
327
|
}
|
|
328
|
-
return account
|
|
328
|
+
return (account == null ? void 0 : account.registrations.map(mapRegistration)) || [];
|
|
329
329
|
};
|
|
330
330
|
var getNames_default = getNames;
|
|
@@ -27,21 +27,21 @@ var import_normalise = require("../utils/normalise");
|
|
|
27
27
|
const singleContractOwnerRaw = async ({ contracts }, contract, namehash, labels) => {
|
|
28
28
|
switch (contract) {
|
|
29
29
|
case "nameWrapper": {
|
|
30
|
-
const nameWrapper = await contracts
|
|
30
|
+
const nameWrapper = await (contracts == null ? void 0 : contracts.getNameWrapper());
|
|
31
31
|
return {
|
|
32
32
|
to: nameWrapper.address,
|
|
33
33
|
data: nameWrapper.interface.encodeFunctionData("ownerOf", [namehash])
|
|
34
34
|
};
|
|
35
35
|
}
|
|
36
36
|
case "registry": {
|
|
37
|
-
const registry = await contracts
|
|
37
|
+
const registry = await (contracts == null ? void 0 : contracts.getRegistry());
|
|
38
38
|
return {
|
|
39
39
|
to: registry.address,
|
|
40
40
|
data: registry.interface.encodeFunctionData("owner", [namehash])
|
|
41
41
|
};
|
|
42
42
|
}
|
|
43
43
|
case "registrar": {
|
|
44
|
-
const registrar = await contracts
|
|
44
|
+
const registrar = await (contracts == null ? void 0 : contracts.getBaseRegistrar());
|
|
45
45
|
return {
|
|
46
46
|
to: registrar.address,
|
|
47
47
|
data: registrar.interface.encodeFunctionData("ownerOf", [
|
|
@@ -103,6 +103,7 @@ const decode = async ({
|
|
|
103
103
|
multicallWrapper,
|
|
104
104
|
gqlInstance
|
|
105
105
|
}, data, name, contract) => {
|
|
106
|
+
var _a, _b, _c, _d, _e;
|
|
106
107
|
if (!data)
|
|
107
108
|
return;
|
|
108
109
|
const labels = name.split(".");
|
|
@@ -125,22 +126,22 @@ const decode = async ({
|
|
|
125
126
|
const result = await multicallWrapper.decode(data);
|
|
126
127
|
if (!result)
|
|
127
128
|
return;
|
|
128
|
-
const nameWrapper = await contracts
|
|
129
|
-
const decodedData = [result[0][1], result[1][1], result[2]
|
|
129
|
+
const nameWrapper = await (contracts == null ? void 0 : contracts.getNameWrapper());
|
|
130
|
+
const decodedData = [result[0][1], result[1][1], (_a = result[2]) == null ? void 0 : _a[1]].map(
|
|
130
131
|
(ret) => ret && ret !== "0x" && import_ethers.ethers.utils.defaultAbiCoder.decode(["address"], ret)
|
|
131
132
|
);
|
|
132
133
|
const registryOwner = decodedData[0][0];
|
|
133
134
|
const nameWrapperOwner = decodedData[1][0];
|
|
134
|
-
let registrarOwner = decodedData[2]
|
|
135
|
+
let registrarOwner = (_b = decodedData[2]) == null ? void 0 : _b[0];
|
|
135
136
|
if (labels[labels.length - 1] === "eth") {
|
|
136
137
|
if (!registrarOwner && labels.length === 2) {
|
|
137
|
-
const graphRegistrantResult = await gqlInstance
|
|
138
|
+
const graphRegistrantResult = await (gqlInstance == null ? void 0 : gqlInstance.request(
|
|
138
139
|
registrantQuery,
|
|
139
140
|
{
|
|
140
141
|
namehash: (0, import_normalise.namehash)(name)
|
|
141
142
|
}
|
|
142
|
-
);
|
|
143
|
-
registrarOwner = graphRegistrantResult.domain
|
|
143
|
+
));
|
|
144
|
+
registrarOwner = (_e = (_d = (_c = graphRegistrantResult.domain) == null ? void 0 : _c.registration) == null ? void 0 : _d.registrant) == null ? void 0 : _e.id;
|
|
144
145
|
}
|
|
145
146
|
if (registrarOwner === nameWrapper.address) {
|
|
146
147
|
return {
|
|
@@ -25,7 +25,7 @@ var import_ethers = require("ethers");
|
|
|
25
25
|
const raw = async ({ contracts, multicallWrapper }, nameOrNames, duration, legacy) => {
|
|
26
26
|
const names = Array.isArray(nameOrNames) ? nameOrNames : [nameOrNames];
|
|
27
27
|
if (names.length > 1) {
|
|
28
|
-
const bulkRenewal = await contracts
|
|
28
|
+
const bulkRenewal = await (contracts == null ? void 0 : contracts.getBulkRenewal());
|
|
29
29
|
const baseCall2 = {
|
|
30
30
|
to: bulkRenewal.address,
|
|
31
31
|
data: bulkRenewal.interface.encodeFunctionData("rentPrice", [
|
|
@@ -47,7 +47,7 @@ const raw = async ({ contracts, multicallWrapper }, nameOrNames, duration, legac
|
|
|
47
47
|
}
|
|
48
48
|
return baseCall2;
|
|
49
49
|
}
|
|
50
|
-
const controller = await contracts
|
|
50
|
+
const controller = await (contracts == null ? void 0 : contracts.getEthRegistrarController());
|
|
51
51
|
const baseCall = {
|
|
52
52
|
to: controller.address,
|
|
53
53
|
data: controller.interface.encodeFunctionData("rentPrice", [
|
|
@@ -88,7 +88,7 @@ const decode = async ({ contracts, multicallWrapper }, data, _nameOrNames, _dura
|
|
|
88
88
|
);
|
|
89
89
|
base = price.sub(premium);
|
|
90
90
|
} else if (isBulkRenewal) {
|
|
91
|
-
const bulkRenewal = await contracts
|
|
91
|
+
const bulkRenewal = await (contracts == null ? void 0 : contracts.getBulkRenewal());
|
|
92
92
|
const result = bulkRenewal.interface.decodeFunctionResult(
|
|
93
93
|
"rentPrice",
|
|
94
94
|
data
|
|
@@ -107,7 +107,7 @@ const decode = async ({ contracts, multicallWrapper }, data, _nameOrNames, _dura
|
|
|
107
107
|
);
|
|
108
108
|
base = price.sub(premium);
|
|
109
109
|
} else {
|
|
110
|
-
const controller = await contracts
|
|
110
|
+
const controller = await (contracts == null ? void 0 : contracts.getEthRegistrarController());
|
|
111
111
|
const result = controller.interface.decodeFunctionResult(
|
|
112
112
|
"rentPrice",
|
|
113
113
|
data
|
|
@@ -178,7 +178,7 @@ const getDataForName = async ({
|
|
|
178
178
|
_getText,
|
|
179
179
|
multicallWrapper
|
|
180
180
|
}, name, options, specificResolver) => {
|
|
181
|
-
const universalResolver = await contracts
|
|
181
|
+
const universalResolver = await (contracts == null ? void 0 : contracts.getUniversalResolver());
|
|
182
182
|
const { data, calls } = await makeMulticallData(
|
|
183
183
|
{ _getAddr, _getContentHash, _getText },
|
|
184
184
|
name,
|
|
@@ -188,11 +188,11 @@ const getDataForName = async ({
|
|
|
188
188
|
let resolverAddress = specificResolver;
|
|
189
189
|
if (specificResolver) {
|
|
190
190
|
try {
|
|
191
|
-
const publicResolver = await contracts
|
|
191
|
+
const publicResolver = await (contracts == null ? void 0 : contracts.getPublicResolver(
|
|
192
192
|
void 0,
|
|
193
193
|
specificResolver
|
|
194
|
-
);
|
|
195
|
-
recordData = await publicResolver
|
|
194
|
+
));
|
|
195
|
+
recordData = await (publicResolver == null ? void 0 : publicResolver.callStatic.multicall(data));
|
|
196
196
|
} catch (e) {
|
|
197
197
|
console.error("getProfile error:", e);
|
|
198
198
|
recordData = await fetchWithoutResolverMulticall(
|
|
@@ -219,8 +219,8 @@ const getDataForName = async ({
|
|
|
219
219
|
}
|
|
220
220
|
}
|
|
221
221
|
} catch {
|
|
222
|
-
const registryContract = await contracts
|
|
223
|
-
resolverAddress = await registryContract
|
|
222
|
+
const registryContract = await (contracts == null ? void 0 : contracts.getRegistry());
|
|
223
|
+
resolverAddress = await (registryContract == null ? void 0 : registryContract.resolver((0, import_normalise.namehash)(name)));
|
|
224
224
|
return {
|
|
225
225
|
address: void 0,
|
|
226
226
|
records: {},
|
|
@@ -290,7 +290,7 @@ const graphFetch = async ({ gqlInstance }, name, wantedRecords, resolverAddress)
|
|
|
290
290
|
if (!resolverAddress) {
|
|
291
291
|
;
|
|
292
292
|
({ domain } = await client.request(query, { id }));
|
|
293
|
-
resolverResponse = domain
|
|
293
|
+
resolverResponse = domain == null ? void 0 : domain.resolver;
|
|
294
294
|
} else {
|
|
295
295
|
const resolverId = `${resolverAddress.toLowerCase()}-${id}`;
|
|
296
296
|
({ resolver: resolverResponse, domain } = await client.request(
|
|
@@ -332,7 +332,7 @@ const getProfileFromName = async ({
|
|
|
332
332
|
const { resolverAddress, fallback, ..._options } = options || {};
|
|
333
333
|
const optsLength = Object.keys(_options).length;
|
|
334
334
|
let usingOptions;
|
|
335
|
-
if (!optsLength || _options
|
|
335
|
+
if (!optsLength || (_options == null ? void 0 : _options.texts) === true || (_options == null ? void 0 : _options.coinTypes) === true) {
|
|
336
336
|
if (optsLength)
|
|
337
337
|
usingOptions = _options;
|
|
338
338
|
else
|
|
@@ -386,10 +386,10 @@ const getProfileFromName = async ({
|
|
|
386
386
|
},
|
|
387
387
|
name,
|
|
388
388
|
recordsWithFallback,
|
|
389
|
-
options
|
|
389
|
+
options == null ? void 0 : options.resolverAddress
|
|
390
390
|
);
|
|
391
391
|
}
|
|
392
|
-
if (!result
|
|
392
|
+
if (!(result == null ? void 0 : result.resolverAddress))
|
|
393
393
|
return {
|
|
394
394
|
isMigrated,
|
|
395
395
|
createdAt,
|
|
@@ -24,7 +24,7 @@ module.exports = __toCommonJS(getResolver_exports);
|
|
|
24
24
|
var import_ethers = require("ethers");
|
|
25
25
|
var import_hexEncodedName = require("../utils/hexEncodedName");
|
|
26
26
|
const raw = async ({ contracts }, name) => {
|
|
27
|
-
const universalResolver = await contracts
|
|
27
|
+
const universalResolver = await (contracts == null ? void 0 : contracts.getUniversalResolver());
|
|
28
28
|
return {
|
|
29
29
|
to: universalResolver.address,
|
|
30
30
|
data: universalResolver.interface.encodeFunctionData("findResolver", [
|
|
@@ -33,7 +33,7 @@ const raw = async ({ contracts }, name) => {
|
|
|
33
33
|
};
|
|
34
34
|
};
|
|
35
35
|
const decode = async ({ contracts }, data) => {
|
|
36
|
-
const universalResolver = await contracts
|
|
36
|
+
const universalResolver = await (contracts == null ? void 0 : contracts.getUniversalResolver());
|
|
37
37
|
const response = universalResolver.interface.decodeFunctionResult(
|
|
38
38
|
"findResolver",
|
|
39
39
|
data
|
|
@@ -32,7 +32,7 @@ var import_contentHash = require("../utils/contentHash");
|
|
|
32
32
|
var import_normalise = require("../utils/normalise");
|
|
33
33
|
const _getContentHash = {
|
|
34
34
|
raw: async ({ contracts }, name) => {
|
|
35
|
-
const publicResolver = await contracts
|
|
35
|
+
const publicResolver = await (contracts == null ? void 0 : contracts.getPublicResolver());
|
|
36
36
|
return {
|
|
37
37
|
to: "0x0000000000000000000000000000000000000000",
|
|
38
38
|
data: publicResolver.interface.encodeFunctionData("contenthash", [
|
|
@@ -42,7 +42,7 @@ const _getContentHash = {
|
|
|
42
42
|
},
|
|
43
43
|
decode: async ({ contracts }, data) => {
|
|
44
44
|
let response;
|
|
45
|
-
const publicResolver = await contracts
|
|
45
|
+
const publicResolver = await (contracts == null ? void 0 : contracts.getPublicResolver());
|
|
46
46
|
try {
|
|
47
47
|
;
|
|
48
48
|
[response] = publicResolver.interface.decodeFunctionResult(
|
|
@@ -76,7 +76,7 @@ const getContentHash = {
|
|
|
76
76
|
};
|
|
77
77
|
const _getText = {
|
|
78
78
|
raw: async ({ contracts }, name, key) => {
|
|
79
|
-
const publicResolver = await contracts
|
|
79
|
+
const publicResolver = await (contracts == null ? void 0 : contracts.getPublicResolver());
|
|
80
80
|
return {
|
|
81
81
|
to: "0x0000000000000000000000000000000000000000",
|
|
82
82
|
data: publicResolver.interface.encodeFunctionData("text", [
|
|
@@ -86,7 +86,7 @@ const _getText = {
|
|
|
86
86
|
};
|
|
87
87
|
},
|
|
88
88
|
decode: async ({ contracts }, data) => {
|
|
89
|
-
const publicResolver = await contracts
|
|
89
|
+
const publicResolver = await (contracts == null ? void 0 : contracts.getPublicResolver());
|
|
90
90
|
const [response] = publicResolver.interface.decodeFunctionResult(
|
|
91
91
|
"text",
|
|
92
92
|
data
|
|
@@ -114,7 +114,7 @@ const _getAddr = {
|
|
|
114
114
|
if (!coinType) {
|
|
115
115
|
coinType = 60;
|
|
116
116
|
}
|
|
117
|
-
const publicResolver = await contracts
|
|
117
|
+
const publicResolver = await (contracts == null ? void 0 : contracts.getPublicResolver());
|
|
118
118
|
if (coinType === 60 || coinType === "60") {
|
|
119
119
|
return {
|
|
120
120
|
to: "0x0000000000000000000000000000000000000000",
|
|
@@ -150,7 +150,7 @@ const _getAddr = {
|
|
|
150
150
|
coinType = 60;
|
|
151
151
|
returnCoinType = false;
|
|
152
152
|
}
|
|
153
|
-
const publicResolver = await contracts
|
|
153
|
+
const publicResolver = await (contracts == null ? void 0 : contracts.getPublicResolver());
|
|
154
154
|
const formatter = typeof coinType === "string" && Number.isNaN(parseInt(coinType)) ? import_address_encoder.formatsByName[coinType] : import_address_encoder.formatsByCoinType[typeof coinType === "number" ? coinType : parseInt(coinType)];
|
|
155
155
|
let response;
|
|
156
156
|
if (coinType === 60 || coinType === "60") {
|
|
@@ -33,9 +33,9 @@ const largeQuery = async ({ gqlInstance }, {
|
|
|
33
33
|
search = ""
|
|
34
34
|
}) => {
|
|
35
35
|
const { client } = gqlInstance;
|
|
36
|
-
const lastSubname = lastSubnames
|
|
37
|
-
const lastCreatedAt = lastSubname
|
|
38
|
-
const lastLabelName = lastSubname
|
|
36
|
+
const lastSubname = lastSubnames == null ? void 0 : lastSubnames[lastSubnames.length - 1];
|
|
37
|
+
const lastCreatedAt = lastSubname == null ? void 0 : lastSubname.createdAt;
|
|
38
|
+
const lastLabelName = lastSubname == null ? void 0 : lastSubname.labelName;
|
|
39
39
|
let whereFilter = "";
|
|
40
40
|
if (orderBy === "createdAt" && lastCreatedAt) {
|
|
41
41
|
whereFilter += orderDirection === "asc" ? "createdAt_gt: $lastCreatedAt" : "createdAt_lt: $lastCreatedAt";
|
|
@@ -88,7 +88,7 @@ const largeQuery = async ({ gqlInstance }, {
|
|
|
88
88
|
lastLabelName,
|
|
89
89
|
orderBy,
|
|
90
90
|
orderDirection,
|
|
91
|
-
search: search
|
|
91
|
+
search: search == null ? void 0 : search.toLowerCase()
|
|
92
92
|
};
|
|
93
93
|
const { domain } = await client.request(finalQuery, queryVars);
|
|
94
94
|
const subdomains = domain.subdomains.map((subname) => {
|
|
@@ -25,14 +25,14 @@ var import_ethers = require("ethers");
|
|
|
25
25
|
var import_fuses = require("../utils/fuses");
|
|
26
26
|
var import_normalise = require("../utils/normalise");
|
|
27
27
|
const raw = async ({ contracts }, name) => {
|
|
28
|
-
const nameWrapper = await contracts
|
|
28
|
+
const nameWrapper = await (contracts == null ? void 0 : contracts.getNameWrapper());
|
|
29
29
|
return {
|
|
30
30
|
to: nameWrapper.address,
|
|
31
31
|
data: nameWrapper.interface.encodeFunctionData("getData", [(0, import_normalise.namehash)(name)])
|
|
32
32
|
};
|
|
33
33
|
};
|
|
34
34
|
const decode = async ({ contracts }, data) => {
|
|
35
|
-
const nameWrapper = await contracts
|
|
35
|
+
const nameWrapper = await (contracts == null ? void 0 : contracts.getNameWrapper());
|
|
36
36
|
try {
|
|
37
37
|
const [owner, _fuses, expiry] = nameWrapper.interface.decodeFunctionResult(
|
|
38
38
|
"getData",
|